From 3f2388004d55b3e9f82efd032c62fbf656ae08f8 Mon Sep 17 00:00:00 2001 From: fr4nz Date: Thu, 20 Nov 2025 21:30:08 +0100 Subject: [PATCH] Updated main branch --- LICENSE | 674 +++++ SECURITY.md | 7 + crowdin.yml | 6 + docs/README.md | 101 + docs/SukiSU-mini.svg | 183 ++ docs/SukiSU.svg | 188 ++ docs/guide/how-to-integrate.md | 97 + docs/guide/installation.md | 34 + docs/guide/tracepoint-hook.md | 239 ++ docs/ja/README.md | 153 ++ docs/ja/SukiSU-mini.svg | 183 ++ docs/tr/README.md | 151 ++ docs/tr/SukiSU-mini.svg | 183 ++ docs/zakomonochrome-128.svg | 65 + docs/zh/README.md | 101 + docs/zh/SukiSU-mini.svg | 183 ++ docs/zh/SukiSU.svg | 188 ++ docs/zh/guide/how-to-integrate.md | 97 + docs/zh/guide/installation.md | 34 + docs/zh/guide/tracepoint-hook.md | 239 ++ js/README.md | 121 + js/index.d.ts | 48 + js/index.js | 119 + js/package.json | 26 + justfile | 14 + kernel/.clang-format | 548 ++++ kernel/.clangd | 4 + kernel/.gitignore | 22 + kernel/.vscode/c_cpp_properties.json | 11 + kernel/.vscode/generate_compdb.py | 92 + kernel/.vscode/tasks.json | 16 + kernel/Kconfig | 42 + kernel/LICENSE | 339 +++ kernel/Makefile | 172 ++ kernel/allowlist.c | 631 +++++ kernel/allowlist.h | 49 + kernel/apk_sign.c | 421 ++++ kernel/apk_sign.h | 11 + kernel/app_profile.c | 303 +++ kernel/app_profile.h | 70 + kernel/arch.h | 68 + kernel/dynamic_manager.c | 504 ++++ kernel/dynamic_manager.h | 51 + kernel/embed_ksud.c | 5 + kernel/export_symbol.txt | 2 + kernel/feature.c | 173 ++ kernel/feature.h | 37 + kernel/file_wrapper.c | 341 +++ kernel/file_wrapper.h | 14 + kernel/kernel_compat.h | 24 + kernel/kernel_umount.c | 175 ++ kernel/kernel_umount.h | 25 + kernel/klog.h | 11 + kernel/kpm/Makefile | 6 + kernel/kpm/compact.c | 100 + kernel/kpm/compact.h | 6 + kernel/kpm/kpm.c | 282 +++ kernel/kpm/kpm.h | 70 + kernel/kpm/super_access.c | 278 +++ kernel/kpm/super_access.h | 15 + kernel/ksu.c | 116 + kernel/ksu.h | 62 + kernel/ksud.c | 660 +++++ kernel/ksud.h | 21 + kernel/manager.h | 43 + kernel/manager_sign.h | 17 + kernel/manual_su.c | 357 +++ kernel/manual_su.h | 49 + kernel/pkg_observer.c | 133 + kernel/seccomp_cache.c | 69 + kernel/seccomp_cache.h | 12 + kernel/selinux/Makefile | 8 + kernel/selinux/rules.c | 477 ++++ kernel/selinux/selinux.c | 154 ++ kernel/selinux/selinux.h | 28 + kernel/selinux/sepolicy.c | 852 +++++++ kernel/selinux/sepolicy.h | 46 + kernel/setuid_hook.c | 171 ++ kernel/setuid_hook.h | 14 + kernel/setup.sh | 79 + kernel/sucompat.c | 187 ++ kernel/sucompat.h | 18 + kernel/sulog.c | 369 +++ kernel/sulog.h | 93 + kernel/supercalls.c | 1072 ++++++++ kernel/supercalls.h | 197 ++ kernel/syscall_hook_manager.c | 374 +++ kernel/syscall_hook_manager.h | 47 + kernel/throne_comm.c | 214 ++ kernel/throne_comm.h | 22 + kernel/throne_tracker.c | 567 +++++ kernel/throne_tracker.h | 10 + kernel/umount_manager.c | 242 ++ kernel/umount_manager.h | 63 + manager/.gitignore | 10 + manager/app/.gitignore | 2 + manager/app/build.gradle.kts | 168 ++ manager/app/proguard-rules.pro | 48 + manager/app/src/main/AndroidManifest.xml | 124 + .../aidl/com/sukisu/zako/IKsuInterface.aidl | 10 + manager/app/src/main/assets/5_10-mkbootfs | Bin 0 -> 12112 bytes manager/app/src/main/assets/5_15+-mkbootfs | Bin 0 -> 323320 bytes manager/app/src/main/assets/kpimg | Bin 0 -> 179808 bytes manager/app/src/main/assets/kptools | Bin 0 -> 310112 bytes manager/app/src/main/assets/ksu_susfs_2.0.0 | Bin 0 -> 21688 bytes manager/app/src/main/cpp/CMakeLists.txt | 28 + manager/app/src/main/cpp/jni.c | 452 ++++ manager/app/src/main/cpp/ksu.c | 406 +++ manager/app/src/main/cpp/ksu.h | 300 +++ manager/app/src/main/cpp/legacy.c | 163 ++ manager/app/src/main/cpp/prelude.h | 70 + .../app/src/main/ic_launcher-playstore.png | Bin 0 -> 88805 bytes .../com/sukisu/ultra/KernelSUApplication.kt | 72 + .../src/main/java/com/sukisu/ultra/Kernels.kt | 32 + .../src/main/java/com/sukisu/ultra/Natives.kt | 281 +++ .../ultra/network/RemoteToolsDownloader.kt | 364 +++ .../com/sukisu/ultra/profile/Capabilities.kt | 49 + .../java/com/sukisu/ultra/profile/Groups.kt | 130 + .../java/com/sukisu/ultra/ui/KsuService.kt | 75 + .../java/com/sukisu/ultra/ui/MainActivity.kt | 307 +++ .../ultra/ui/activity/component/BottomBar.kt | 219 ++ .../ultra/ui/activity/util/ThemeUtils.kt | 97 + .../ui/activity/util/UltraActivityUtils.kt | 236 ++ .../sukisu/ultra/ui/component/AboutCard.kt | 117 + .../com/sukisu/ultra/ui/component/Dialog.kt | 468 ++++ .../ultra/ui/component/FabVisibilityState.kt | 75 + .../ui/component/InstallConfirmationDialog.kt | 441 ++++ .../ultra/ui/component/KeyEventBlocker.kt | 28 + .../ultra/ui/component/KsuIsValidCheck.kt | 17 + .../sukisu/ultra/ui/component/SearchBar.kt | 154 ++ .../sukisu/ultra/ui/component/SettingsItem.kt | 106 + .../ultra/ui/component/SuperDropdown.kt | 250 ++ .../ui/component/VerticalExpandableFab.kt | 257 ++ .../ui/component/profile/AppProfileConfig.kt | 58 + .../ui/component/profile/RootProfileConfig.kt | 481 ++++ .../ui/component/profile/TemplateConfig.kt | 105 + .../com/sukisu/ultra/ui/screen/AppProfile.kt | 586 +++++ .../ultra/ui/screen/BottomBarDestination.kt | 24 + .../ultra/ui/screen/ExecuteModuleAction.kt | 147 ++ .../java/com/sukisu/ultra/ui/screen/Flash.kt | 768 ++++++ .../java/com/sukisu/ultra/ui/screen/Home.kt | 925 +++++++ .../com/sukisu/ultra/ui/screen/Install.kt | 1102 ++++++++ .../java/com/sukisu/ultra/ui/screen/Kpm.kt | 742 ++++++ .../sukisu/ultra/ui/screen/LogViewerScreen.kt | 941 +++++++ .../java/com/sukisu/ultra/ui/screen/Module.kt | 1340 ++++++++++ .../com/sukisu/ultra/ui/screen/Settings.kt | 1051 ++++++++ .../com/sukisu/ultra/ui/screen/SuperUser.kt | 961 +++++++ .../com/sukisu/ultra/ui/screen/Template.kt | 282 +++ .../sukisu/ultra/ui/screen/TemplateEditor.kt | 319 +++ .../ultra/ui/screen/UmountManagerScreen.kt | 410 +++ .../com/sukisu/ultra/ui/susfs/SuSFSConfig.kt | 2211 +++++++++++++++++ .../ui/susfs/component/SuSFSConfigDialogs.kt | 1733 +++++++++++++ .../ui/susfs/component/SuSFSConfigTabs.kt | 928 +++++++ .../ultra/ui/susfs/util/SuSFSManager.kt | 1520 +++++++++++ .../ultra/ui/susfs/util/SuSFSModuleScripts.kt | 555 +++++ .../com/sukisu/ultra/ui/theme/CardManage.kt | 192 ++ .../java/com/sukisu/ultra/ui/theme/Color.kt | 615 +++++ .../java/com/sukisu/ultra/ui/theme/Theme.kt | 593 +++++ .../java/com/sukisu/ultra/ui/theme/Type.kt | 108 + .../ui/theme/component/ImageEditorDialog.kt | 411 +++ .../ultra/ui/theme/util/BackgroundUtils.kt | 110 + .../ultra/ui/util/CompositionProvider.kt | 8 + .../com/sukisu/ultra/ui/util/Downloader.kt | 319 +++ .../com/sukisu/ultra/ui/util/HanziToPinyin.kt | 522 ++++ .../com/sukisu/ultra/ui/util/HyperlinkText.kt | 88 + .../java/com/sukisu/ultra/ui/util/KsuCli.kt | 738 ++++++ .../java/com/sukisu/ultra/ui/util/LogEvent.kt | 111 + .../sukisu/ultra/ui/util/SELinuxChecker.kt | 19 + .../ultra/ui/util/module/LatestVersionInfo.kt | 8 + .../ultra/ui/util/module/ModuleModify.kt | 457 ++++ .../ultra/ui/util/module/ModuleUtils.kt | 139 ++ .../util/module/ModuleVerificationManager.kt | 233 ++ .../ultra/ui/viewmodel/HomeViewModel.kt | 590 +++++ .../sukisu/ultra/ui/viewmodel/KpmViewModel.kt | 160 ++ .../ultra/ui/viewmodel/ModuleViewModel.kt | 504 ++++ .../ultra/ui/viewmodel/SuperUserViewModel.kt | 401 +++ .../ultra/ui/viewmodel/TemplateViewModel.kt | 328 +++ .../com/sukisu/ultra/ui/webui/AppIconUtil.kt | 46 + .../java/com/sukisu/ultra/ui/webui/Insets.kt | 40 + .../sukisu/ultra/ui/webui/KsuLibSuProvider.kt | 56 + .../com/sukisu/ultra/ui/webui/MimeUtil.kt | 77 + .../ultra/ui/webui/SuFilePathHandler.kt | 192 ++ .../com/sukisu/ultra/ui/webui/SuService.kt | 14 + .../sukisu/ultra/ui/webui/WebUIActivity.kt | 149 ++ .../sukisu/ultra/ui/webui/WebUIXActivity.kt | 116 + .../sukisu/ultra/ui/webui/WebViewInterface.kt | 279 +++ .../java/com/sukisu/ultra/utils/AssetsUtil.kt | 26 + .../zakoui/screen/kernelFlash/KernelFlash.kt | 475 ++++ .../component/SlotSelectionDialog.kt | 258 ++ .../kernelFlash/state/KernelFlashState.kt | 524 ++++ .../screen/moreSettings/MoreSettings.kt | 757 ++++++ .../moreSettings/MoreSettingsHandlers.kt | 459 ++++ .../component/MoreSettingsComponents.kt | 201 ++ .../component/MoreSettingsDialogs.kt | 620 +++++ .../moreSettings/state/MoreSettingsState.kt | 101 + .../screen/moreSettings/util/LocaleHelper.kt | 154 ++ .../moreSettings/util/RestartActivityUtils.kt | 27 + manager/app/src/main/jniLibs/.gitignore | 8 + .../main/jniLibs/arm64-v8a/libksu_susfs.so | Bin 0 -> 21688 bytes .../main/jniLibs/arm64-v8a/libmagiskboot.so | Bin 0 -> 769600 bytes .../main/jniLibs/armeabi-v7a/libmagiskboot.so | Bin 0 -> 704856 bytes .../src/main/jniLibs/x86_64/libmagiskboot.so | Bin 0 -> 918832 bytes .../res/drawable/ic_launcher_foreground.xml | 773 ++++++ .../drawable/ic_launcher_foreground_alt.xml | 22 + .../res/drawable/ic_launcher_monochrome.xml | 27 + .../drawable/ic_launcher_monochrome_alt.xml | 22 + .../src/main/res/drawable/package_import.xml | 42 + .../res/mipmap-anydpi-v26/ic_launcher.xml | 6 + .../res/mipmap-anydpi-v26/ic_launcher_alt.xml | 6 + .../ic_launcher_alt_round.xml | 6 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + .../src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 0 -> 3042 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 0 -> 5042 bytes .../src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 0 -> 1644 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 0 -> 2798 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 0 -> 4774 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 0 -> 7658 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 0 -> 8578 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 0 -> 12572 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 0 -> 13086 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 0 -> 18348 bytes manager/app/src/main/res/resources.properties | 1 + .../app/src/main/res/values-ar/strings.xml | 364 +++ .../app/src/main/res/values-az/strings.xml | 362 +++ .../src/main/res/values-bn-rBD/strings.xml | 45 + .../app/src/main/res/values-bn/strings.xml | 59 + .../app/src/main/res/values-bs/strings.xml | 362 +++ .../app/src/main/res/values-da/strings.xml | 362 +++ .../app/src/main/res/values-de/strings.xml | 364 +++ .../app/src/main/res/values-es/strings.xml | 362 +++ .../app/src/main/res/values-et/strings.xml | 362 +++ .../app/src/main/res/values-fa/strings.xml | 362 +++ .../app/src/main/res/values-fil/strings.xml | 362 +++ .../app/src/main/res/values-fr/strings.xml | 364 +++ .../app/src/main/res/values-gl/strings.xml | 4 + .../app/src/main/res/values-hi/strings.xml | 362 +++ .../app/src/main/res/values-hr/strings.xml | 362 +++ .../app/src/main/res/values-hu/strings.xml | 362 +++ .../app/src/main/res/values-idn/strings.xml | 537 ++++ .../app/src/main/res/values-in/strings.xml | 697 ++++++ .../app/src/main/res/values-it/strings.xml | 364 +++ .../app/src/main/res/values-iw/strings.xml | 74 + .../app/src/main/res/values-ja/strings.xml | 615 +++++ .../app/src/main/res/values-kn/strings.xml | 362 +++ .../app/src/main/res/values-ko/strings.xml | 362 +++ .../app/src/main/res/values-lt/strings.xml | 362 +++ .../app/src/main/res/values-lv/strings.xml | 364 +++ .../app/src/main/res/values-mr/strings.xml | 362 +++ .../app/src/main/res/values-ms/strings.xml | 362 +++ .../app/src/main/res/values-night/themes.xml | 10 + .../app/src/main/res/values-nl/strings.xml | 364 +++ .../app/src/main/res/values-pl/strings.xml | 364 +++ .../src/main/res/values-pt-rBR/strings.xml | 125 + .../app/src/main/res/values-pt/strings.xml | 362 +++ .../app/src/main/res/values-ro/strings.xml | 364 +++ .../app/src/main/res/values-ru/strings.xml | 743 ++++++ .../app/src/main/res/values-sl/strings.xml | 362 +++ .../app/src/main/res/values-sr/strings.xml | 9 + .../app/src/main/res/values-te/strings.xml | 19 + .../app/src/main/res/values-th/strings.xml | 364 +++ .../app/src/main/res/values-tr/strings.xml | 721 ++++++ .../app/src/main/res/values-uk/strings.xml | 532 ++++ .../app/src/main/res/values-vi/strings.xml | 711 ++++++ .../src/main/res/values-zh-rCN/strings.xml | 747 ++++++ .../src/main/res/values-zh-rHK/strings.xml | 603 +++++ .../src/main/res/values-zh-rTW/strings.xml | 681 +++++ manager/app/src/main/res/values/colors.xml | 4 + manager/app/src/main/res/values/strings.xml | 757 ++++++ manager/app/src/main/res/values/themes.xml | 13 + manager/app/src/main/res/xml/backup_rules.xml | 13 + .../main/res/xml/data_extraction_rules.xml | 19 + manager/app/src/main/res/xml/filepaths.xml | 6 + .../main/res/xml/network_security_config.xml | 8 + manager/build.gradle.kts | 82 + manager/gradle.properties | 8 + manager/gradle/libs.versions.toml | 94 + manager/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 43764 bytes .../gradle/wrapper/gradle-wrapper.properties | 7 + manager/gradlew | 247 ++ manager/gradlew.bat | 92 + manager/randomizer | 31 + manager/settings.gradle.kts | 21 + manager/sign.example.properties | 4 + scripts/abi_gki_all.py | 10 + scripts/add_device_handler.py | 50 + scripts/allowlist.bt | 89 + scripts/bin2c.py | 51 + scripts/ksubot.py | 111 + userspace/ksud/.gitignore | 2 + userspace/ksud/Cargo.lock | 1835 ++++++++++++++ userspace/ksud/Cargo.toml | 66 + userspace/ksud/bin/.gitignore | 1 + userspace/ksud/bin/aarch64/bootctl | Bin 0 -> 154248 bytes userspace/ksud/bin/aarch64/busybox | Bin 0 -> 1710600 bytes userspace/ksud/bin/aarch64/ksuinit | Bin 0 -> 421792 bytes userspace/ksud/bin/aarch64/resetprop | Bin 0 -> 74720 bytes userspace/ksud/bin/arm/busybox | Bin 0 -> 1282828 bytes userspace/ksud/bin/arm/resetprop | Bin 0 -> 46940 bytes userspace/ksud/bin/x86_64/busybox | Bin 0 -> 1767048 bytes userspace/ksud/bin/x86_64/ksuinit | Bin 0 -> 483808 bytes userspace/ksud/bin/x86_64/resetprop | Bin 0 -> 75688 bytes userspace/ksud/build.rs | 47 + userspace/ksud/src/apk_sign.rs | 115 + userspace/ksud/src/assets.rs | 55 + userspace/ksud/src/banner | 10 + userspace/ksud/src/boot_patch.rs | 791 ++++++ userspace/ksud/src/cli.rs | 771 ++++++ userspace/ksud/src/debug.rs | 98 + userspace/ksud/src/defs.rs | 44 + userspace/ksud/src/feature.rs | 454 ++++ userspace/ksud/src/init_event.rs | 214 ++ userspace/ksud/src/installer.sh | 479 ++++ userspace/ksud/src/kpm.rs | 331 +++ userspace/ksud/src/ksucalls.rs | 361 +++ userspace/ksud/src/main.rs | 26 + userspace/ksud/src/metamodule.rs | 287 +++ userspace/ksud/src/module.rs | 855 +++++++ userspace/ksud/src/module_config.rs | 474 ++++ userspace/ksud/src/profile.rs | 80 + userspace/ksud/src/restorecon.rs | 81 + userspace/ksud/src/sepolicy.rs | 744 ++++++ userspace/ksud/src/su.rs | 320 +++ userspace/ksud/src/uid_scanner.rs | 88 + userspace/ksud/src/uid_scanner.sh | 5 + userspace/ksud/src/umount_manager.rs | 264 ++ userspace/ksud/src/utils.rs | 229 ++ userspace/meta-overlayfs/.gitignore | 4 + userspace/meta-overlayfs/Cargo.toml | 24 + userspace/meta-overlayfs/README.md | 58 + userspace/meta-overlayfs/build.sh | 92 + userspace/meta-overlayfs/metamodule/.gitkeep | 0 .../meta-overlayfs/metamodule/customize.sh | 67 + .../meta-overlayfs/metamodule/metainstall.sh | 99 + .../meta-overlayfs/metamodule/metamount.sh | 65 + .../metamodule/metauninstall.sh | 35 + .../meta-overlayfs/metamodule/module.prop | 8 + .../meta-overlayfs/metamodule/post-mount.sh | 3 + .../meta-overlayfs/metamodule/uninstall.sh | 24 + userspace/meta-overlayfs/src/defs.rs | 17 + userspace/meta-overlayfs/src/main.rs | 35 + userspace/meta-overlayfs/src/mount.rs | 376 +++ userspace/meta-overlayfs/src/xcp.rs | 90 + userspace/su/.gitignore | 2 + userspace/su/jni/Android.mk | 6 + userspace/su/jni/Application.mk | 3 + userspace/su/jni/su.c | 54 + userspace/user_scanner/.gitignore | 2 + userspace/user_scanner/jni/Android.mk | 8 + userspace/user_scanner/jni/Application.mk | 3 + userspace/user_scanner/jni/uid_scanner.c | 996 ++++++++ 350 files changed, 79360 insertions(+) create mode 100644 LICENSE create mode 100644 SECURITY.md create mode 100644 crowdin.yml create mode 100644 docs/README.md create mode 100644 docs/SukiSU-mini.svg create mode 100644 docs/SukiSU.svg create mode 100644 docs/guide/how-to-integrate.md create mode 100644 docs/guide/installation.md create mode 100644 docs/guide/tracepoint-hook.md create mode 100644 docs/ja/README.md create mode 100644 docs/ja/SukiSU-mini.svg create mode 100644 docs/tr/README.md create mode 100644 docs/tr/SukiSU-mini.svg create mode 100644 docs/zakomonochrome-128.svg create mode 100644 docs/zh/README.md create mode 100644 docs/zh/SukiSU-mini.svg create mode 100644 docs/zh/SukiSU.svg create mode 100644 docs/zh/guide/how-to-integrate.md create mode 100644 docs/zh/guide/installation.md create mode 100644 docs/zh/guide/tracepoint-hook.md create mode 100644 js/README.md create mode 100644 js/index.d.ts create mode 100644 js/index.js create mode 100644 js/package.json create mode 100644 justfile create mode 100644 kernel/.clang-format create mode 100644 kernel/.clangd create mode 100644 kernel/.gitignore create mode 100644 kernel/.vscode/c_cpp_properties.json create mode 100644 kernel/.vscode/generate_compdb.py create mode 100644 kernel/.vscode/tasks.json create mode 100644 kernel/Kconfig create mode 100644 kernel/LICENSE create mode 100644 kernel/Makefile create mode 100644 kernel/allowlist.c create mode 100644 kernel/allowlist.h create mode 100644 kernel/apk_sign.c create mode 100644 kernel/apk_sign.h create mode 100644 kernel/app_profile.c create mode 100644 kernel/app_profile.h create mode 100644 kernel/arch.h create mode 100644 kernel/dynamic_manager.c create mode 100644 kernel/dynamic_manager.h create mode 100644 kernel/embed_ksud.c create mode 100644 kernel/export_symbol.txt create mode 100644 kernel/feature.c create mode 100644 kernel/feature.h create mode 100644 kernel/file_wrapper.c create mode 100644 kernel/file_wrapper.h create mode 100644 kernel/kernel_compat.h create mode 100644 kernel/kernel_umount.c create mode 100644 kernel/kernel_umount.h create mode 100644 kernel/klog.h create mode 100644 kernel/kpm/Makefile create mode 100644 kernel/kpm/compact.c create mode 100644 kernel/kpm/compact.h create mode 100644 kernel/kpm/kpm.c create mode 100644 kernel/kpm/kpm.h create mode 100644 kernel/kpm/super_access.c create mode 100644 kernel/kpm/super_access.h create mode 100644 kernel/ksu.c create mode 100644 kernel/ksu.h create mode 100644 kernel/ksud.c create mode 100644 kernel/ksud.h create mode 100644 kernel/manager.h create mode 100644 kernel/manager_sign.h create mode 100644 kernel/manual_su.c create mode 100644 kernel/manual_su.h create mode 100644 kernel/pkg_observer.c create mode 100644 kernel/seccomp_cache.c create mode 100644 kernel/seccomp_cache.h create mode 100644 kernel/selinux/Makefile create mode 100644 kernel/selinux/rules.c create mode 100644 kernel/selinux/selinux.c create mode 100644 kernel/selinux/selinux.h create mode 100644 kernel/selinux/sepolicy.c create mode 100644 kernel/selinux/sepolicy.h create mode 100644 kernel/setuid_hook.c create mode 100644 kernel/setuid_hook.h create mode 100755 kernel/setup.sh create mode 100644 kernel/sucompat.c create mode 100644 kernel/sucompat.h create mode 100644 kernel/sulog.c create mode 100644 kernel/sulog.h create mode 100644 kernel/supercalls.c create mode 100644 kernel/supercalls.h create mode 100644 kernel/syscall_hook_manager.c create mode 100644 kernel/syscall_hook_manager.h create mode 100644 kernel/throne_comm.c create mode 100644 kernel/throne_comm.h create mode 100644 kernel/throne_tracker.c create mode 100644 kernel/throne_tracker.h create mode 100644 kernel/umount_manager.c create mode 100644 kernel/umount_manager.h create mode 100644 manager/.gitignore create mode 100644 manager/app/.gitignore create mode 100644 manager/app/build.gradle.kts create mode 100644 manager/app/proguard-rules.pro create mode 100644 manager/app/src/main/AndroidManifest.xml create mode 100644 manager/app/src/main/aidl/com/sukisu/zako/IKsuInterface.aidl create mode 100644 manager/app/src/main/assets/5_10-mkbootfs create mode 100644 manager/app/src/main/assets/5_15+-mkbootfs create mode 100644 manager/app/src/main/assets/kpimg create mode 100644 manager/app/src/main/assets/kptools create mode 100644 manager/app/src/main/assets/ksu_susfs_2.0.0 create mode 100644 manager/app/src/main/cpp/CMakeLists.txt create mode 100644 manager/app/src/main/cpp/jni.c create mode 100644 manager/app/src/main/cpp/ksu.c create mode 100644 manager/app/src/main/cpp/ksu.h create mode 100644 manager/app/src/main/cpp/legacy.c create mode 100644 manager/app/src/main/cpp/prelude.h create mode 100644 manager/app/src/main/ic_launcher-playstore.png create mode 100644 manager/app/src/main/java/com/sukisu/ultra/KernelSUApplication.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/Kernels.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/Natives.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/network/RemoteToolsDownloader.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/profile/Capabilities.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/profile/Groups.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/KsuService.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/MainActivity.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/activity/component/BottomBar.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/activity/util/ThemeUtils.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/activity/util/UltraActivityUtils.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/component/AboutCard.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/component/Dialog.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/component/FabVisibilityState.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/component/InstallConfirmationDialog.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/component/KeyEventBlocker.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/component/KsuIsValidCheck.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/component/SearchBar.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/component/SettingsItem.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/component/SuperDropdown.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/component/VerticalExpandableFab.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/component/profile/AppProfileConfig.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/component/profile/RootProfileConfig.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/component/profile/TemplateConfig.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/screen/AppProfile.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/screen/BottomBarDestination.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/screen/ExecuteModuleAction.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/screen/Flash.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/screen/Home.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/screen/Install.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/screen/Kpm.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/screen/LogViewerScreen.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/screen/Module.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/screen/Settings.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/screen/SuperUser.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/screen/Template.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/screen/TemplateEditor.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/screen/UmountManagerScreen.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/susfs/SuSFSConfig.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/susfs/component/SuSFSConfigDialogs.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/susfs/component/SuSFSConfigTabs.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/susfs/util/SuSFSManager.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/susfs/util/SuSFSModuleScripts.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/theme/CardManage.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/theme/Color.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/theme/Theme.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/theme/Type.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/theme/component/ImageEditorDialog.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/theme/util/BackgroundUtils.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/util/CompositionProvider.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/util/Downloader.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/util/HanziToPinyin.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/util/HyperlinkText.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/util/KsuCli.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/util/LogEvent.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/util/SELinuxChecker.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/util/module/LatestVersionInfo.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/util/module/ModuleModify.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/util/module/ModuleUtils.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/util/module/ModuleVerificationManager.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/HomeViewModel.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/KpmViewModel.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/ModuleViewModel.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/SuperUserViewModel.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/TemplateViewModel.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/webui/AppIconUtil.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/webui/Insets.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/webui/KsuLibSuProvider.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/webui/MimeUtil.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/webui/SuFilePathHandler.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/webui/SuService.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/webui/WebUIActivity.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/webui/WebUIXActivity.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/ui/webui/WebViewInterface.kt create mode 100644 manager/app/src/main/java/com/sukisu/ultra/utils/AssetsUtil.kt create mode 100644 manager/app/src/main/java/zako/zako/zako/zakoui/screen/kernelFlash/KernelFlash.kt create mode 100644 manager/app/src/main/java/zako/zako/zako/zakoui/screen/kernelFlash/component/SlotSelectionDialog.kt create mode 100644 manager/app/src/main/java/zako/zako/zako/zakoui/screen/kernelFlash/state/KernelFlashState.kt create mode 100644 manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/MoreSettings.kt create mode 100644 manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/MoreSettingsHandlers.kt create mode 100644 manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/component/MoreSettingsComponents.kt create mode 100644 manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/component/MoreSettingsDialogs.kt create mode 100644 manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/state/MoreSettingsState.kt create mode 100644 manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/util/LocaleHelper.kt create mode 100644 manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/util/RestartActivityUtils.kt create mode 100644 manager/app/src/main/jniLibs/.gitignore create mode 100644 manager/app/src/main/jniLibs/arm64-v8a/libksu_susfs.so create mode 100644 manager/app/src/main/jniLibs/arm64-v8a/libmagiskboot.so create mode 100644 manager/app/src/main/jniLibs/armeabi-v7a/libmagiskboot.so create mode 100644 manager/app/src/main/jniLibs/x86_64/libmagiskboot.so create mode 100644 manager/app/src/main/res/drawable/ic_launcher_foreground.xml create mode 100644 manager/app/src/main/res/drawable/ic_launcher_foreground_alt.xml create mode 100644 manager/app/src/main/res/drawable/ic_launcher_monochrome.xml create mode 100644 manager/app/src/main/res/drawable/ic_launcher_monochrome_alt.xml create mode 100644 manager/app/src/main/res/drawable/package_import.xml create mode 100644 manager/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 manager/app/src/main/res/mipmap-anydpi-v26/ic_launcher_alt.xml create mode 100644 manager/app/src/main/res/mipmap-anydpi-v26/ic_launcher_alt_round.xml create mode 100644 manager/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 manager/app/src/main/res/mipmap-hdpi/ic_launcher.webp create mode 100644 manager/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp create mode 100644 manager/app/src/main/res/mipmap-mdpi/ic_launcher.webp create mode 100644 manager/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp create mode 100644 manager/app/src/main/res/mipmap-xhdpi/ic_launcher.webp create mode 100644 manager/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp create mode 100644 manager/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp create mode 100644 manager/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp create mode 100644 manager/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp create mode 100644 manager/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp create mode 100644 manager/app/src/main/res/resources.properties create mode 100644 manager/app/src/main/res/values-ar/strings.xml create mode 100644 manager/app/src/main/res/values-az/strings.xml create mode 100644 manager/app/src/main/res/values-bn-rBD/strings.xml create mode 100644 manager/app/src/main/res/values-bn/strings.xml create mode 100644 manager/app/src/main/res/values-bs/strings.xml create mode 100644 manager/app/src/main/res/values-da/strings.xml create mode 100644 manager/app/src/main/res/values-de/strings.xml create mode 100644 manager/app/src/main/res/values-es/strings.xml create mode 100644 manager/app/src/main/res/values-et/strings.xml create mode 100644 manager/app/src/main/res/values-fa/strings.xml create mode 100644 manager/app/src/main/res/values-fil/strings.xml create mode 100644 manager/app/src/main/res/values-fr/strings.xml create mode 100644 manager/app/src/main/res/values-gl/strings.xml create mode 100644 manager/app/src/main/res/values-hi/strings.xml create mode 100644 manager/app/src/main/res/values-hr/strings.xml create mode 100644 manager/app/src/main/res/values-hu/strings.xml create mode 100644 manager/app/src/main/res/values-idn/strings.xml create mode 100644 manager/app/src/main/res/values-in/strings.xml create mode 100644 manager/app/src/main/res/values-it/strings.xml create mode 100644 manager/app/src/main/res/values-iw/strings.xml create mode 100644 manager/app/src/main/res/values-ja/strings.xml create mode 100644 manager/app/src/main/res/values-kn/strings.xml create mode 100644 manager/app/src/main/res/values-ko/strings.xml create mode 100644 manager/app/src/main/res/values-lt/strings.xml create mode 100644 manager/app/src/main/res/values-lv/strings.xml create mode 100644 manager/app/src/main/res/values-mr/strings.xml create mode 100644 manager/app/src/main/res/values-ms/strings.xml create mode 100644 manager/app/src/main/res/values-night/themes.xml create mode 100644 manager/app/src/main/res/values-nl/strings.xml create mode 100644 manager/app/src/main/res/values-pl/strings.xml create mode 100644 manager/app/src/main/res/values-pt-rBR/strings.xml create mode 100644 manager/app/src/main/res/values-pt/strings.xml create mode 100644 manager/app/src/main/res/values-ro/strings.xml create mode 100644 manager/app/src/main/res/values-ru/strings.xml create mode 100644 manager/app/src/main/res/values-sl/strings.xml create mode 100644 manager/app/src/main/res/values-sr/strings.xml create mode 100644 manager/app/src/main/res/values-te/strings.xml create mode 100644 manager/app/src/main/res/values-th/strings.xml create mode 100644 manager/app/src/main/res/values-tr/strings.xml create mode 100644 manager/app/src/main/res/values-uk/strings.xml create mode 100644 manager/app/src/main/res/values-vi/strings.xml create mode 100644 manager/app/src/main/res/values-zh-rCN/strings.xml create mode 100644 manager/app/src/main/res/values-zh-rHK/strings.xml create mode 100644 manager/app/src/main/res/values-zh-rTW/strings.xml create mode 100644 manager/app/src/main/res/values/colors.xml create mode 100644 manager/app/src/main/res/values/strings.xml create mode 100644 manager/app/src/main/res/values/themes.xml create mode 100644 manager/app/src/main/res/xml/backup_rules.xml create mode 100644 manager/app/src/main/res/xml/data_extraction_rules.xml create mode 100644 manager/app/src/main/res/xml/filepaths.xml create mode 100644 manager/app/src/main/res/xml/network_security_config.xml create mode 100644 manager/build.gradle.kts create mode 100644 manager/gradle.properties create mode 100644 manager/gradle/libs.versions.toml create mode 100644 manager/gradle/wrapper/gradle-wrapper.jar create mode 100644 manager/gradle/wrapper/gradle-wrapper.properties create mode 100755 manager/gradlew create mode 100644 manager/gradlew.bat create mode 100644 manager/randomizer create mode 100644 manager/settings.gradle.kts create mode 100644 manager/sign.example.properties create mode 100644 scripts/abi_gki_all.py create mode 100644 scripts/add_device_handler.py create mode 100644 scripts/allowlist.bt create mode 100644 scripts/bin2c.py create mode 100644 scripts/ksubot.py create mode 100644 userspace/ksud/.gitignore create mode 100644 userspace/ksud/Cargo.lock create mode 100644 userspace/ksud/Cargo.toml create mode 100644 userspace/ksud/bin/.gitignore create mode 100644 userspace/ksud/bin/aarch64/bootctl create mode 100755 userspace/ksud/bin/aarch64/busybox create mode 100755 userspace/ksud/bin/aarch64/ksuinit create mode 100644 userspace/ksud/bin/aarch64/resetprop create mode 100644 userspace/ksud/bin/arm/busybox create mode 100755 userspace/ksud/bin/arm/resetprop create mode 100755 userspace/ksud/bin/x86_64/busybox create mode 100755 userspace/ksud/bin/x86_64/ksuinit create mode 100644 userspace/ksud/bin/x86_64/resetprop create mode 100644 userspace/ksud/build.rs create mode 100644 userspace/ksud/src/apk_sign.rs create mode 100644 userspace/ksud/src/assets.rs create mode 100644 userspace/ksud/src/banner create mode 100644 userspace/ksud/src/boot_patch.rs create mode 100644 userspace/ksud/src/cli.rs create mode 100644 userspace/ksud/src/debug.rs create mode 100644 userspace/ksud/src/defs.rs create mode 100644 userspace/ksud/src/feature.rs create mode 100644 userspace/ksud/src/init_event.rs create mode 100644 userspace/ksud/src/installer.sh create mode 100644 userspace/ksud/src/kpm.rs create mode 100644 userspace/ksud/src/ksucalls.rs create mode 100644 userspace/ksud/src/main.rs create mode 100644 userspace/ksud/src/metamodule.rs create mode 100644 userspace/ksud/src/module.rs create mode 100644 userspace/ksud/src/module_config.rs create mode 100644 userspace/ksud/src/profile.rs create mode 100644 userspace/ksud/src/restorecon.rs create mode 100644 userspace/ksud/src/sepolicy.rs create mode 100644 userspace/ksud/src/su.rs create mode 100644 userspace/ksud/src/uid_scanner.rs create mode 100644 userspace/ksud/src/uid_scanner.sh create mode 100644 userspace/ksud/src/umount_manager.rs create mode 100644 userspace/ksud/src/utils.rs create mode 100644 userspace/meta-overlayfs/.gitignore create mode 100644 userspace/meta-overlayfs/Cargo.toml create mode 100644 userspace/meta-overlayfs/README.md create mode 100644 userspace/meta-overlayfs/build.sh create mode 100644 userspace/meta-overlayfs/metamodule/.gitkeep create mode 100644 userspace/meta-overlayfs/metamodule/customize.sh create mode 100644 userspace/meta-overlayfs/metamodule/metainstall.sh create mode 100644 userspace/meta-overlayfs/metamodule/metamount.sh create mode 100644 userspace/meta-overlayfs/metamodule/metauninstall.sh create mode 100644 userspace/meta-overlayfs/metamodule/module.prop create mode 100644 userspace/meta-overlayfs/metamodule/post-mount.sh create mode 100644 userspace/meta-overlayfs/metamodule/uninstall.sh create mode 100644 userspace/meta-overlayfs/src/defs.rs create mode 100644 userspace/meta-overlayfs/src/main.rs create mode 100644 userspace/meta-overlayfs/src/mount.rs create mode 100644 userspace/meta-overlayfs/src/xcp.rs create mode 100644 userspace/su/.gitignore create mode 100644 userspace/su/jni/Android.mk create mode 100644 userspace/su/jni/Application.mk create mode 100644 userspace/su/jni/su.c create mode 100644 userspace/user_scanner/.gitignore create mode 100644 userspace/user_scanner/jni/Android.mk create mode 100644 userspace/user_scanner/jni/Application.mk create mode 100644 userspace/user_scanner/jni/uid_scanner.c diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..f288702 --- /dev/null +++ b/LICENSE @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/SECURITY.md b/SECURITY.md new file mode 100644 index 0000000..83040d9 --- /dev/null +++ b/SECURITY.md @@ -0,0 +1,7 @@ +# Reporting Security Issues + +The KernelSU team and community take security bugs in KernelSU seriously. We appreciate your efforts to responsibly disclose your findings, and will make every effort to acknowledge your contributions. + +To report a security issue, please use the GitHub Security Advisory ["Report a Vulnerability"](https://github.com/tiann/KernelSU/security/advisories/new) tab, or you can mailto [weishu](mailto:twsxtd@gmail.com) directly. + +The KernelSU team will send a response indicating the next steps in handling your report. After the initial reply to your report, the security team will keep you informed of the progress towards a fix and full announcement, and may ask for additional information or guidance. diff --git a/crowdin.yml b/crowdin.yml new file mode 100644 index 0000000..ce0c41a --- /dev/null +++ b/crowdin.yml @@ -0,0 +1,6 @@ +project_id_env: CROWDIN_PROJECT_ID +api_token_env: CROWDIN_API_TOKEN +preserve_hierarchy: 1 +files: + - source: /manager/app/src/main/res/values/strings.xml + translation: /manager/app/src/main/res/values-%two_letters_code%/strings.xml diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 0000000..544d7a4 --- /dev/null +++ b/docs/README.md @@ -0,0 +1,101 @@ +# SukiSU Ultra +sukisu logo + + +**English** | [简体中文](./zh/README.md) | [日本語](./ja/README.md) | [Türkçe](./tr/README.md) + +A kernel-based root solution for Android devices, forked from [`tiann/KernelSU`](https://github.com/tiann/KernelSU), and added some interesting changes. + +[![Latest release](https://img.shields.io/github/v/release/SukiSU-Ultra/SukiSU-Ultra?label=Release&logo=github)](https://github.com/tiann/KernelSU/releases/latest) +[![Channel](https://img.shields.io/badge/Follow-Telegram-blue.svg?logo=telegram)](https://t.me/Sukiksu) +[![License: GPL v2](https://img.shields.io/badge/License-GPL%20v2-orange.svg?logo=gnu)](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html) +[![GitHub License](https://img.shields.io/github/license/tiann/KernelSU?logo=gnu)](/LICENSE) + +## Features + +1. Kernel-based `su` and root access management +2. Module system based on [Magic Mount](https://github.com/5ec1cff/KernelSU) +3. [App Profile](https://kernelsu.org/guide/app-profile.html): Lock up the root power in a cage +4. Support non-GKI and GKI 1.0 +5. KPM Support +6. Tweaks to the manager theme and the built-in susfs management tool. + +## Compatibility Status + +- KernelSU (before v1.0.0) officially supports Android GKI 2.0 devices (kernel 5.10+). + +- Older kernels (4.4+) are also compatible, but the kernel will have to be built manually. + +- With more backports, KernelSU can supports 3.x kernel (3.4-3.18). + +- Currently, only `arm64-v8a`, `armeabi-v7a (bare)` and `X86_64`(some) are supported. + +## Installation + +See [`guide/installation.md`](guide/installation.md) + +## Integration + +See [`guide/how-to-integrate.md`](guide/how-to-integrate.md) + +## Translation + +If you need to submit a translation for the manager, please go to [Crowdin](https://crowdin.com/project/SukiSU-Ultra). + +## KPM Support + +- Based on KernelPatch, we removed features redundant with KSU and retained only KPM support. +- Work in Progress: Expanding APatch compatibility by integrating additional functions to ensure compatibility across different implementations. + +**Open-source repository**: [https://github.com/ShirkNeko/SukiSU_KernelPatch_patch](https://github.com/ShirkNeko/SukiSU_KernelPatch_patch) + +**KPM template**: [https://github.com/udochina/KPM-Build-Anywhere](https://github.com/udochina/KPM-Build-Anywhere) + +> [!Note] +> +> 1. Requires `CONFIG_KPM=y` +> 2. Non-GKI devices requires `CONFIG_KALLSYMS=y` and `CONFIG_KALLSYMS_ALL=y` +> 3. For kernels below `4.19`, backporting from `set_memory.h` from `4.19` is required. + +## Troubleshooting + +1. Device stuck upon manager app uninstallation? + Uninstall _com.sony.playmemories.mobile_ + +## Sponsor + +- [ShirkNeko](https://afdian.com/a/shirkneko) (maintainer of SukiSU) +- [weishu](https://github.com/sponsors/tiann) (author of KernelSU) + +## ShirkNeko's sponsorship list + +- [Ktouls](https://github.com/Ktouls) Thanks so much for bringing me support. +- [zaoqi123](https://github.com/zaoqi123) Thanks for the milk tea. +- [wswzgdg](https://github.com/wswzgdg) Many thanks for supporting this project. +- [yspbwx2010](https://github.com/yspbwx2010) Many thanks. +- [DARKWWEE](https://github.com/DARKWWEE) 100 USDT +- [Saksham Singla](https://github.com/TypeFlu) Provide and maintain the website +- [OukaroMF](https://github.com/OukaroMF) Donation of website domain name + +## License + +- The file in the “kernel” directory is under [GPL-2.0-only](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html) license. +- The images of the files `ic_launcher(?!.*alt.*).*` with anime character sticker are copyrighted by [怡子曰曰](https://space.bilibili.com/10545509), the Brand Intellectual Property in the images is owned by [明风 OuO](https://space.bilibili.com/274939213), and the vectorization is done by @MiRinChan. Before using these files, in addition to complying with [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode.txt), you also need to comply with the authorization of the two authors to use these artistic contents. +- Except for the files or directories mentioned above, all other parts are under [GPL-3.0 or later](https://www.gnu.org/licenses/gpl-3.0.html) license. + +## Credit + +- [KernelSU](https://github.com/tiann/KernelSU): upstream +- [MKSU](https://github.com/5ec1cff/KernelSU): Magic Mount +- [RKSU](https://github.com/rsuntk/KernelsU): support non-GKI +- [susfs](https://gitlab.com/simonpunk/susfs4ksu): An addon root hiding kernel patches and userspace module for KernelSU. +- [KernelPatch](https://github.com/bmax121/KernelPatch): KernelPatch is a key part of the APatch implementation of the kernel module + +
+KernelSU's credit + +- [Kernel-Assisted Superuser](https://git.zx2c4.com/kernel-assisted-superuser/about/): The KernelSU idea. +- [Magisk](https://github.com/topjohnwu/Magisk): The powerful root tool. +- [genuine](https://github.com/brevent/genuine/): APK v2 signature validation. +- [Diamorphine](https://github.com/m0nad/Diamorphine): Some rootkit skills. +
diff --git a/docs/SukiSU-mini.svg b/docs/SukiSU-mini.svg new file mode 100644 index 0000000..1c7d20f --- /dev/null +++ b/docs/SukiSU-mini.svg @@ -0,0 +1,183 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/SukiSU.svg b/docs/SukiSU.svg new file mode 100644 index 0000000..559a5d5 --- /dev/null +++ b/docs/SukiSU.svg @@ -0,0 +1,188 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/guide/how-to-integrate.md b/docs/guide/how-to-integrate.md new file mode 100644 index 0000000..2f15480 --- /dev/null +++ b/docs/guide/how-to-integrate.md @@ -0,0 +1,97 @@ +# Integrate + +SukiSU can be integrated into both _GKI_ and _non-GKI_ kernels and has been backported to _4.14_. + + + +Some OEMs' customization could result in as much as 50% of kernel code being out-of-tree code and not from upstream Linux kernels or ACKs. Due to this, the custom nature of _non-GKI_ kernels resulted in significant kernel fragmentation, and we lacked a universal method for building them. Therefore, we cannot provide boot images of _non-GKI_ kernels. + +Prerequisites: open source bootable kernel. + +### Hook method + +1. **KPROBES hook:** + + - Default hook method on GKI kernels. + - Requires `# CONFIG_KSU_MANUAL_HOOK is not set` & `CONFIG_KPROBES=y` + - Used for Loadable Kernel Module (LKM). + +2. **Manual hook:** + + + + - Requires `CONFIG_KSU_MANUAL_HOOK=y` + - Requires [`guide/how-to-integrate.md`](guide/how-to-integrate.md) + - Requires [https://github.com/~](https://github.com/tiann/KernelSU/blob/main/website/docs/guide/how-to-integrate-for-non-gki.md#manually-modify-the-kernel-source) + +3. **Tracepoint Hook:** + + - Hook method introduced since SukiSU commit [49b01aad](https://github.com/SukiSU-Ultra/SukiSU-Ultra/commit/49b01aad74bcca6dba5a8a2e053bb54b648eb124) + - Requires `CONFIG_KSU_TRACEPOINT_HOOK=y` + - Requires [`guide/tracepoint-hook.md`](tracepoint-hook.md) + + + +If you're able to build a bootable kernel, there are two ways to integrate KernelSU into the kernel source code: + +1. Automatically with `kprobe` +2. Manually + +## Integrate with kprobe + +Applicable: + +- _GKI_ kernel + +Not applicable: + +- _non-GKI_ kernel + +KernelSU uses kprobe to do kernel hooks. If kprobe runs well in your kernel, it's recommended to use it this way. + +Please refer to this document [https://github.com/~](https://github.com/tiann/KernelSU/blob/main/website/docs/guide/how-to-integrate-for-non-gki.md#integrate-with-kprobe). Although it is titled “for _non-GKI_,” it only applies to _GKI_. + +The execution command for the step that adds KernelSU to your kernel source tree is replaced with: + +```sh +curl -LSs "https://raw.githubusercontent.com/SukiSU-Ultra/SukiSU-Ultra/main/kernel/setup.sh" | bash -s main +``` + +## Manually modify the kernel source + +Applicable: + +- GKI kernel +- non-GKI kernel + +Please refer to this document [https://github.com/~ (Integrate for non-GKI)](https://github.com/tiann/KernelSU/blob/main/website/docs/guide/how-to-integrate-for-non-gki.md#manually-modify-the-kernel-source) and [https://github.com/~ (Build for GKI)](https://kernelsu.org/zh_CN/guide/how-to-build.html) to integrate manually, although first link is titled “for non-GKI,” it also applies to GKI. It can work on them both. + +There is another way to integrate but still work in the process. + + + +Run command for the step that adds KernelSU(SukiSU) to your kernel source tree is replaced with: + +### GKI kernel + +```sh +curl -LSs "https://raw.githubusercontent.com/SukiSU-Ultra/SukiSU-Ultra/main/kernel/setup.sh" | bash -s main +``` + +### non-GKI kernel + +```sh +curl -LSs "https://raw.githubusercontent.com/SukiSU-Ultra/SukiSU-Ultra/main/kernel/setup.sh" | bash -s nongki +``` + +### GKI / non-GKI kernel with susfs (experiment) + +```sh +curl -LSs "https://raw.githubusercontent.com/SukiSU-Ultra/SukiSU-Ultra/main/kernel/setup.sh" | bash -s susfs-{{branch}} +``` + +Branch: + +- `main` (susfs-main) +- `test` (susfs-test) +- version (for example: susfs-1.5.7, you should check the [branches](https://github.com/SukiSU-Ultra/SukiSU-Ultra/branches)) diff --git a/docs/guide/installation.md b/docs/guide/installation.md new file mode 100644 index 0000000..dccbf9d --- /dev/null +++ b/docs/guide/installation.md @@ -0,0 +1,34 @@ +# Installation + +You can go to [KernelSU Documentation - Installation](https://kernelsu.org/guide/installation.html) for a reference on how to install it, here are just additional instructions. + +## Installation by loading the Loadable Kernel Module(LKM) + +See [KernelSU Documentation - LKM Installation](https://kernelsu.org/guide/installation.html#lkm-installation) + +Beginning with **Android™** (trademark meaning licensed Google Mobile Services) 12, devices shipping with kernel version 5.10 or higher must ship with the GKI kernel. You may be able to use LKM mode. + +## Installation by installing the kernel + +See [KernelSU Documentation - GKI mode Installation](https://kernelsu.org/guide/installation.html#gki-mode-installation) + +We provide pre-built kernels for you to use: + +- [ShirkNeko flavor kernel](https://github.com/ShirkNeko/GKI_KernelSU_SUSFS) (add ZRAM compression algorithm patch, susfs, KPM. Works on many devices.) +- [MiRinFork flavored kernel](https://github.com/MiRinFork/GKI_SukiSU_SUSFS) (adds susfs, KPM. Closest kernel to GKI, works on most devices.) + +Although some devices can be installed using LKM mode, they cannot be installed on the device by using the GKI kernel; therefore, the kernel needs to be modified manually to compile it. For example: + +- OPPO(OnePlus, REALME) +- Meizu + +Also, we provide pre-built kernels for your OnePlus device to use: + +- [ShirkNeko/Action_OnePlus_MKSU_SUSFS](https://github.com/ShirkNeko/Action_OnePlus_MKSU_SUSFS) (add ZRAM compression algorithm patch, susfs, KPM.) + +Using the link above, Fork into GitHub Action, fill in the build parameters, compile, and finally flush in the zip with the AnyKernel3 suffix. + +> [!Note] +> +> - You only need to fill in the first two parts of the version number, e.g. `5.10`, `6.1`... +> - Make sure you know the processor designation, kernel version, etc. before you use it. diff --git a/docs/guide/tracepoint-hook.md b/docs/guide/tracepoint-hook.md new file mode 100644 index 0000000..af5fa72 --- /dev/null +++ b/docs/guide/tracepoint-hook.md @@ -0,0 +1,239 @@ +# Tracepoint Hook Integration + +## Introduction + +Since commit [49b01aad](https://github.com/SukiSU-Ultra/SukiSU-Ultra/commit/49b01aad74bcca6dba5a8a2e053bb54b648eb124), SukiSU has introduced Tracepoint Hook + +This Hook theoretically has lower performance overhead compared to Kprobes Hook, but is inferior to Manual Hook / Syscall Hook + +> [!NOTE] +> This tutorial references the syscall hook v1.4 version from [backslashxx/KernelSU#5](https://github.com/backslashxx/KernelSU/issues/5), as well as the original KernelSU's [Manual Hook](https://kernelsu.org/guide/how-to-integrate-for-non-gki.html#manually-modify-the-kernel-source) + +## Guide + +### execve Hook (`exec.c`) + +Generally need to modify the `do_execve` and `compat_do_execve` methods in `fs/exec.c` + +```patch +--- a/fs/exec.c ++++ b/fs/exec.c +@@ -78,6 +78,10 @@ + #include + #endif + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++#include <../drivers/kernelsu/ksu_trace.h> ++#endif ++ + EXPORT_TRACEPOINT_SYMBOL_GPL(task_rename); + + static int bprm_creds_from_file(struct linux_binprm *bprm); +@@ -2037,6 +2041,9 @@ static int do_execve(struct filename *filename, + { + struct user_arg_ptr argv = { .ptr.native = __argv }; + struct user_arg_ptr envp = { .ptr.native = __envp }; ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++ trace_ksu_trace_execveat_hook((int *)AT_FDCWD, &filename, &argv, &envp, 0); ++#endif + return do_execveat_common(AT_FDCWD, filename, argv, envp, 0); + } + +@@ -2064,6 +2071,9 @@ static int compat_do_execve(struct filename *filename, + .is_compat = true, + .ptr.compat = __envp, + }; ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++ trace_ksu_trace_execveat_hook((int *)AT_FDCWD, &filename, &argv, &envp, 0); // 32-bit su and 32-on-64 support ++#endif + return do_execveat_common(AT_FDCWD, filename, argv, envp, 0); + } +``` + +### faccessat Hook (`open.c`) + +Generally need to modify the `do_faccessat` method in `/fs/open.c` + +```patch +--- a/fs/open.c ++++ b/fs/open.c +@@ -37,6 +37,10 @@ + #include "internal.h" + #include + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++#include <../drivers/kernelsu/ksu_trace.h> ++#endif ++ + int do_truncate(struct user_namespace *mnt_userns, struct dentry *dentry, + loff_t length, unsigned int time_attrs, struct file *filp) + { +@@ -468,6 +472,9 @@ static long do_faccessat(int dfd, const char __user *filename, int mode, int fla + + SYSCALL_DEFINE3(faccessat, int, dfd, const char __user *, filename, int, mode) + { ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++ trace_ksu_trace_faccessat_hook(&dfd, &filename, &mode, NULL); ++#endif + return do_faccessat(dfd, filename, mode, 0); + } +``` + +If there's no `do_faccessat` method, you can find the `faccessat` SYSCALL definition (for kernels earlier than 4.17) + +```patch +--- a/fs/open.c ++++ b/fs/open.c +@@ -31,6 +31,9 @@ + #include + #include + #include ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++#include <../drivers/kernelsu/ksu_trace.h> ++#endif + + #include "internal.h" + +@@ -369,6 +372,9 @@ SYSCALL_DEFINE3(faccessat, int, dfd, const char __user *, filename, int, mode) + int res; + unsigned int lookup_flags = LOOKUP_FOLLOW; + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++ trace_ksu_trace_faccessat_hook(&dfd, &filename, &mode, NULL); ++#endif + if (mode & ~S_IRWXO) /* where's F_OK, X_OK, W_OK, R_OK? */ + return -EINVAL; +``` + +### sys_read Hook (`read_write.c`) + +Need to modify the `sys_read` method in `fs/read_write.c` (4.19 and above) + +```patch +--- a/fs/read_write.c ++++ b/fs/read_write.c +@@ -25,6 +25,10 @@ + #include + #include + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++#include <../drivers/kernelsu/ksu_trace.h> ++#endif ++ + const struct file_operations generic_ro_fops = { + .llseek = generic_file_llseek, + .read_iter = generic_file_read_iter, +@@ -630,6 +634,9 @@ ssize_t ksys_read(unsigned int fd, char __user *buf, size_t count) + + SYSCALL_DEFINE3(read, unsigned int, fd, char __user *, buf, size_t, count) + { ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++ trace_ksu_trace_sys_read_hook(fd, &buf, &count); ++#endif + return ksys_read(fd, buf, count); + } +``` + +Or the `read` SYSCALL definition (4.14 and below) + +```patch +--- a/fs/read_write.c ++++ b/fs/read_write.c +@@ -25,6 +25,11 @@ + #include + #include + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++#include <../drivers/kernelsu/ksu_trace.h> ++#endif ++ ++ + const struct file_operations generic_ro_fops = { + .llseek = generic_file_llseek, + .read_iter = generic_file_read_iter, +@@ -575,6 +580,9 @@ SYSCALL_DEFINE3(read, unsigned int, fd, char __user *, buf, size_t, count) + + if (f.file) { + loff_t pos = file_pos_read(f.file); ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++ trace_ksu_trace_sys_read_hook(fd, &buf, &count); ++#endif + ret = vfs_read(f.file, buf, count, &pos); + if (ret >= 0) + file_pos_write(f.file, pos); +``` + +### fstatat Hook (`stat.c`) + +Need to modify the `newfstatat` SYSCALL definition in `stat.c` + +If 32-bit support is needed, also need to modify the `statat64` SYSCALL definition + +```patch +--- a/fs/stat.c ++++ b/fs/stat.c +@@ -24,6 +24,10 @@ + #include "internal.h" + #include "mount.h" + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++#include <../drivers/kernelsu/ksu_trace.h> ++#endif ++ + /** + * generic_fillattr - Fill in the basic attributes from the inode struct + * @mnt_userns: user namespace of the mount the inode was found from +@@ -408,6 +412,10 @@ SYSCALL_DEFINE4(newfstatat, int, dfd, const char __user *, filename, + struct kstat stat; + int error; + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++ trace_ksu_trace_stat_hook(&dfd, &filename, &flag); ++#endif ++ + error = vfs_fstatat(dfd, filename, &stat, flag); + if (error) + return error; +@@ -559,6 +567,10 @@ SYSCALL_DEFINE4(fstatat64, int, dfd, const char __user *, filename, + struct kstat stat; + int error; + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++ trace_ksu_trace_stat_hook(&dfd, &filename, &flag); /* 32-bit su support */ ++#endif ++ + error = vfs_fstatat(dfd, filename, &stat, flag); + if (error) + return error; +``` + +### input Hook (`input.c`, for entering KSU built-in security mode) + +Need to modify the `input_event` method in `drivers/input/input.c`, not `input_handle_event` + +```patch +--- a/drivers/input/input.c ++++ b/drivers/input/input.c +@@ -26,6 +26,10 @@ + #include "input-compat.h" + #include "input-poller.h" + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++#include <../../drivers/kernelsu/ksu_trace.h> ++#endif ++ + MODULE_AUTHOR("Vojtech Pavlik "); + MODULE_DESCRIPTION("Input core"); + MODULE_LICENSE("GPL"); +@@ -451,6 +455,10 @@ void input_event(struct input_dev *dev, + { + unsigned long flags; + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++ trace_ksu_trace_input_hook(&type, &code, &value); ++#endif ++ + if (is_event_supported(type, dev->evbit, EV_MAX)) { + + spin_lock_irqsave(&dev->event_lock, flags); +``` diff --git a/docs/ja/README.md b/docs/ja/README.md new file mode 100644 index 0000000..d70495d --- /dev/null +++ b/docs/ja/README.md @@ -0,0 +1,153 @@ +# SukiSU Ultra +sukisu logo + + +[English](../README.md) | [简体中文](../zh/README.md) | **日本語** | [Türkçe](../tr/README.md) + +[KernelSU](https://github.com/tiann/KernelSU) をベースとした Android デバイスの root ソリューション + +**試験中なビルドです!自己責任で使用してください!**
+このソリューションは [KernelSU](https://github.com/tiann/KernelSU) に基づいていますが、試験中なビルドです。 + +> これは非公式なフォークです。すべての権利は [@tiann](https://github.com/tiann) に帰属します。 +> +> ただし、将来的には KSU とは別に管理されるブランチとなる予定です。 + +## 追加する方法 + +メインブランチを使用 (非 GKI のデバイスのビルドは非対応) (susfs を手動で統合が必要) + +``` +curl -LSs "https://raw.githubusercontent.com/SukiSU-Ultra/SukiSU-Ultra/main/kernel/setup.sh" | bash -s main +``` + +非 GKI のデバイスに対応するブランチを使用 (susfs を手動で統合が必要) + +``` +curl -LSs "https://raw.githubusercontent.com/SukiSU-Ultra/SukiSU-Ultra/main/kernel/setup.sh" | bash -s nongki +``` + +## 統合された susfs の使い方 + +1. susfs-main または他の susfs-\* ブランチを直接で使用、susfs の統合は不要 (非 GKI デバイスのビルドに対応) + +``` +curl -LSs "https://raw.githubusercontent.com/SukiSU-Ultra/SukiSU-Ultra/main/kernel/setup.sh" | bash -s susfs-main +``` + +## フックの方式 + +- この方式は (https://github.com/rsuntk/KernelSU) のフック方式を参照してください。 + +1. **KPROBES でフック:** + + - 読み込み可能なカーネルモジュールの場合 (LKM) + - GKI カーネルのデフォルトとなるフック方式 + - `CONFIG_KPROBES=y` が必要です + +2. **手動でフック:** + - 標準の KernelSU フック: https://kernelsu.org/guide/how-to-integrate-for-non-gki.html#manually-modify-the-kernel-source + - backslashxx syscall フック: https://github.com/backslashxx/KernelSU/issues/5 + - 非 GKI カーネル用のデフォルトフック方式 + - `CONFIG_KSU_MANUAL_HOOK=y` が必要です + +## KPM に対応 + +- KernelPatch に基づいて重複した KSU の機能を削除、KPM の対応を維持させています。 +- KPM 機能の整合性を確保するために、APatch の互換機能を更に向上させる予定です。 + +オープンソースアドレス: https://github.com/ShirkNeko/SukiSU_KernelPatch_patch + +KPM テンプレートのアドレス: https://github.com/udochina/KPM-Build-Anywhere + +> [!Note] +> +> 1. `CONFIG_KPM=y` が必要です。 +> 2. 非 GKI デバイスには `CONFIG_KALLSYMS=y` と `CONFIG_KALLSYMS_ALL=y` も必要です。 +> 3. いくつかのカーネル `4.19` およびそれ以降のソースコードでは、 `4.19` からバックポートされた `set_memory.h` ヘッダーファイルも必要です。 + +## ROOT を保持した状態でのシステムアップデートの方法 + +- 始めに OTA 後すぐに再起動せずにマネージャーのカーネルのフラッシュ、パッチのインターフェースを開いて`GKI/非 GKI のインストール`を見つけます。フラッシュする AnyKernel3 の zip ファイルを選択し、フラッシュする実行中のスロットと逆のスロットを選択後に再起動をして GKI モードの更新が保持できます (この方法はすべての非 GKI のデバイスが対応している訳ではないので、自分でお試しください。これは非 GKI のデバイスで TWRP を使用する最も安全な方法です)。 +- または LKM モードを使用して未使用のスロットにインストールします (OTA 後)。 + +## 互換性の状態 + +- KernelSU (v1.0.0 より前) は Android GKI 2.0 のデバイス (カーネル 5.10 以降) を公式に対応しています。 + +- 古いカーネル (4.4 以降) も互換性がありますが、カーネルを手動で再ビルドする必要があります。 + +- KernelSU は追加のリバースポートを通じて 3.x カーネル (3.4-3.18) で対応可能です。 + +- 現在 `arm64-v8a`, `armeabi-v7a (bare)` および一部の `X86_64` に対応しています。 + +## その他のリンク + +**マネージャーの翻訳を行う場合** https://crowdin.com/project/SukiSU-Ultra + +- [その他パッチ済み GKI](https://github.com/ShirkNeko/GKI_KernelSU_SUSFS) ZRAM パッチ、KPM、susfs が含まれています... +- [パッチの少ない GKI](https://github.com/MiRinFork/GKI_SukiSU_SUSFS/releases) susfs のみ +- [OnePlus](https://github.com/ShirkNeko/Action_OnePlus_MKSU_SUSFS) + +## 使い方 + +### Universal GKI + +**すべて**参照してください https://kernelsu.org/ja_JP/guide/installation.html + +> [!Note] +> +> 1. Xiaomi、Redmi、Samsung などの GKI 2.0 を搭載したデバイス向け (Meizu、OnePlus、Zenith、Oppo などカーネルが変更されているメーカーを除く) +> 2. GKI のビルドは[その他のリンク](#その他のリンク)から入手できます。デバイスのカーネルバージョンを確認してください。ダウンロード後に TWRP またはカーネルフラッシュツールを使用して AnyKernel3 の接頭辞を持つ zip ファイルをフラッシュしてください。Pixel のユーザーは、パッチの少ない GKI を使用する必要があります。 +> 3. 接頭辞のない .zip アーカイブは圧縮されていません。.gz の接頭辞は Tenguet モデルで使用される圧縮になります。 + +### OnePlus + +1. `その他のリンク`の項目に記載されているリンクを開き、デバイス情報を使用してカスタマイズされたカーネルをビルドし、AnyKernel3 の接頭辞を持つ .zip ファイルをフラッシュします。 + +> [!Note] +> +> - 5.10、5.15、6.1、6.6 などのカーネルバージョンの最初の 2 文字のみを入力する必要があります。 +> - SoC のコードネームは自分で検索してください。通常は、数字がなく英語表記のみです。 +> - ブランチと構成ファイルは、OnePlus オープンソースカーネルリポジトリから見つけることができます。 + +## 機能 + +1. カーネルベースな `su` および root アクセスの管理。 +2. [OverlayFS](https://en.wikipedia.org/wiki/OverlayFS) モジュールシステムではなく、 5ec1cff 氏の [Magic Mount](https://github.com/5ec1cff/KernelSU) に基づいています。 +3. [アプリプロファイル](https://kernelsu.org/guide/app-profile.html): root 権限をケージ内にロックします。 +4. 非 GKI / GKI 1.0 の対応を復活 +5. その他のカスタマイズ +6. KPM カーネルモジュールに対応 + +## トラブルシューティング + +1. KernelSU Manager のアンインストールが停止してしまう → com.sony.playmemories.mobile のアプリをアンインストールしてください。 + +## ライセンス + +- 「kernel」のディレクトリ内のファイルは [GPL-2.0-only](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html) のライセンスに基づいています。 +- アニメキャラクター画像とスタンプを含むこれらのファイルの `ic_launcher(?!.*alt.*).*` は[怡子曰曰](https://space.bilibili.com/10545509)によって著作権保護されており、画像の Brand Intellectual Property は[明风 OuO](https://space.bilibili.com/274939213)によって所有され、ベクター化は @MiRinChan によって行われています。 これらのファイルを使用する前に、[Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode.txt)を遵守することに加えて、アートコンテンツを使用するために前の 2 人の作者から許可を得る必要があります。 +- 上記のファイルまたはディレクトリを除き、その他のすべての部分は[GPL-3.0 以降](https://www.gnu.org/licenses/gpl-3.0.html)です。 + +## スポンサーシップの一覧 + +- [Ktouls](https://github.com/Ktouls) 応援してくれてありがとう +- [zaoqi123](https://github.com/zaoqi123) ミルクティーを買ってあげるのも良い考えですね +- [wswzgdg](https://github.com/wswzgdg) このプロジェクトにご支援いただき、ありがとうございます +- [yspbwx2010](https://github.com/yspbwx2010) ありがとうございます +- [DARKWWEE](https://github.com/DARKWWEE) ラオスから 100 USDT の支援に感謝します +- [Saksham Singla](https://github.com/TypeFlu) ウェブサイトの提供とメンテナンス +- [OukaroMF](https://github.com/OukaroMF) ウェブサイトのドメインと寄付 + +## 貢献者 + +- [KernelSU](https://github.com/tiann/KernelSU): オリジナルのプロジェクト +- [MKSU](https://github.com/5ec1cff/KernelSU): 使用しているプロジェクト +- [RKSU](https://github.com/rsuntk/KernelsU): このプロジェクトのカーネルを使用した非 GKI デバイスのサポートの再導入 +- [susfs](https://gitlab.com/simonpunk/susfs4ksu): susfs ファイルシステムの使用 +- [KernelSU](https://git.zx2c4.com/kernel-assisted-superuser/about/): KernelSU の概念化 +- [Magisk](https://github.com/topjohnwu/Magisk): パワフルな root ユーティリティ +- [genuine](https://github.com/brevent/genuine/): APK v2 署名認証 +- [Diamorphine](https://github.com/m0nad/Diamorphine): いくつかの root キットユーティリティ +- [KernelPatch](https://github.com/bmax121/KernelPatch): KernelPatch はカーネルモジュールの APatch 実装の重要な部分での活用 diff --git a/docs/ja/SukiSU-mini.svg b/docs/ja/SukiSU-mini.svg new file mode 100644 index 0000000..1c7d20f --- /dev/null +++ b/docs/ja/SukiSU-mini.svg @@ -0,0 +1,183 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/tr/README.md b/docs/tr/README.md new file mode 100644 index 0000000..94b55a7 --- /dev/null +++ b/docs/tr/README.md @@ -0,0 +1,151 @@ +# SukiSU Ultra +sukisu logo + + +[English](../README.md) | [简体中文](../zh/README.md) | [日本語](../ja/README.md) | **Türkçe** + +[KernelSU](https://github.com/tiann/KernelSU) tabanlı Android cihaz root çözümü + +**Deneysel! Kullanım riski size aittir!** + +> Bu resmi olmayan bir daldır, tüm hakları saklıdır [@tiann](https://github.com/tiann) +> +> Ancak, gelecekte ayrı bir KSU dalı olarak devam edeceğiz + +## Nasıl Eklenir + +Çekirdek kaynak kodunun kök dizininde aşağıdaki komutları çalıştırın: + +Ana dalı kullanın (GKI olmayan cihazlar için desteklenmez) + +``` +curl -LSs "https://raw.githubusercontent.com/SukiSU-Ultra/SukiSU-Ultra/main/kernel/setup.sh" | bash -s main +``` + +GKI olmayan cihazları destekleyen dalı kullanın + +``` +curl -LSs "https://raw.githubusercontent.com/SukiSU-Ultra/SukiSU-Ultra/main/kernel/setup.sh" | bash -s nongki +``` + +## susfs Nasıl Entegre Edilir + +1. Doğrudan susfs-main veya susfs-\* dalını kullanın, susfs entegrasyonuna gerek yok + +``` +curl -LSs "https://raw.githubusercontent.com/SukiSU-Ultra/SukiSU-Ultra/main/kernel/setup.sh" | bash -s susfs-main +``` + +## Kanca Yöntemleri + +- Bu bölüm [rsuntk\'nin kanca yöntemlerinden](https://github.com/rsuntk/KernelSU) alıntılanmıştır + +1. **KPROBES Kancası:** + + - Yüklenebilir çekirdek modülleri (LKM) için kullanılır + - GKI 2.0 çekirdeğinin varsayılan kanca yöntemi + - `CONFIG_KPROBES=y` gerektirir + +2. **Manuel Kanca:** + - Standart KernelSU kancası: https://kernelsu.org/guide/how-to-integrate-for-non-gki.html#manually-modify-the-kernel-source + - backslashxx\'nin syscall manuel kancası: https://github.com/backslashxx/KernelSU/issues/5 + - GKI olmayan çekirdeğin varsayılan kanca yöntemi + - `CONFIG_KSU_MANUAL_HOOK=y` gerektirir + +## KPM Desteği + +- KernelPatch tabanlı olarak KSU ile çakışan işlevleri kaldırdık ve yalnızca KPM desteğini koruduk +- APatch ile daha fazla uyumlu fonksiyon ekleyerek KPM işlevlerinin bütünlüğünü sağlayacağız + +Kaynak kodu: https://github.com/ShirkNeko/SukiSU_KernelPatch_patch + +KPM şablonu: https://github.com/udochina/KPM-Build-Anywhere + +> [!Note] +> +> 1. `CONFIG_KPM=y` gerektirir +> 2. GKI olmayan cihazlar ayrıca `CONFIG_KALLSYMS=y` ve `CONFIG_KALLSYMS_ALL=y` gerektirir +> 3. Bazı çekirdek `4.19` altı kaynak kodları, `4.19`dan geri taşınan başlık dosyası `set_memory.h` gerektirir + +## Sistem Güncellemesini Yaparak ROOT\'u Koruma + +- OTA\'dan sonra hemen yeniden başlatmayın, yöneticiye girin ve çekirdek yazma/onarma arayüzüne gidin, `GKI/non_GKI yükleme` seçeneğini bulun ve Anykernel3 çekirdek sıkıştırma dosyasını seçin, şu anda sistemin çalıştığı yuva ile zıt yuvaya yazın ve yeniden başlatın, böylece GKI modu güncellemesini koruyabilirsiniz (şu anda tüm GKI olmayan cihazlar bu yöntemi desteklemiyor, lütfen kendiniz deneyin. GKI olmayan cihazlar için TWRP kullanmak en güvenlidir) +- Veya kullanılmayan yuvaya LKM modunu kullanarak yükleyin (OTA\'dan sonra) + +## Uyumluluk Durumu + +- KernelSU (v1.0.0 öncesi sürümler) resmi olarak Android GKI 2.0 cihazlarını destekler (çekirdek 5.10+) + +- Eski çekirdekler (4.4+) de uyumludur, ancak çekirdeği manuel olarak oluşturmanız gerekir + +- Daha fazla geri taşımayla KernelSU, 3.x çekirdeğini (3.4-3.18) destekleyebilir + +- Şu anda `arm64-v8a`, `armeabi-v7a (bare)` ve bazı `X86_64` desteklenmektedir + +## Daha Fazla Bağlantı + +SukiSU ve susfs tabanlı derlenen projeler + +- [GKI](https://github.com/ShirkNeko/GKI_KernelSU_SUSFS) +- [OnePlus](https://github.com/ShirkNeko/Action_OnePlus_MKSU_SUSFS) + +## Kullanım Yöntemi + +### Evrensel GKI + +Lütfen **tümünü** https://kernelsu.org/zh_CN/guide/installation.html adresinden inceleyin + +> [!Note] +> +> 1. Xiaomi, Redmi, Samsung gibi GKI 2.0 cihazlar için uygundur (Meizu, OnePlus, Realme ve Oppo gibi değiştirilmiş çekirdekli üreticiler hariç) +> 2. [Daha fazla bağlantı](#daha-fazla-bağlantı) bölümündeki GKI tabanlı projeleri bulun. Cihaz çekirdek sürümünü bulun. Ardından indirin ve TWRP veya çekirdek yazma aracı kullanarak AnyKernel3 soneki olan sıkıştırılmış paketi yazın +> 3. Genellikle sonek olmayan .zip sıkıştırılmış paketler sıkıştırılmamıştır, gz soneki olanlar ise Dimensity modelleri için kullanılan sıkıştırma yöntemidir + +### OnePlus + +1. Daha fazla bağlantı bölümündeki OnePlus projesini bulun ve kendiniz doldurun, ardından bulut derleme yapın ve AnyKernel3 soneki olan sıkıştırılmış paketi yazın + +> [!Note] +> +> - Çekirdek sürümü için yalnızca ilk iki haneyi doldurmanız yeterlidir, örneğin 5.10, 5.15, 6.1, 6.6 +> - İşlemci kod adını kendiniz arayın, genellikle tamamen İngilizce ve sayı içermeden oluşur +> - Dal ve yapılandırma dosyasını kendiniz OnePlus çekirdek kaynak kodundan doldurun + +## Özellikler + +1. Çekirdek tabanlı `su` ve root erişim yönetimi +2. 5ec1cff\'nin [Magic Mount](https://github.com/5ec1cff/KernelSU) tabanlı modül sistemi +3. [App Profile](https://kernelsu.org/guide/app-profile.html): root yetkilerini kafeste kilitleyin +4. GKI 2.0 olmayan çekirdekler için desteğin geri getirilmesi +5. Daha fazla özelleştirme özelliği +6. KPM çekirdek modülleri için destek + +## Lisans + +- `kernel` dizinindeki dosyalar [GPL-2.0-only](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html) lisansı altındadır. +- Anime karakter ifadeleri içeren `ic_launcher(?!.*alt.*).*` dosyalarının görüntüleri [怡子曰曰](https://space.bilibili.com/10545509) tarafından telif hakkıyla korunmaktadır, görüntülerdeki Marka Fikri Mülkiyeti [明风 OuO](https://space.bilibili.com/274939213)'ye aittir ve vektörleştirme @MiRinChan tarafından yapılmıştır. Bu dosyaları kullanmadan önce, [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode.txt) ile uyumlu olmanın yanı sıra, bu sanatsal içerikleri kullanmak için iki yazarın yetkilendirmesine de uymanız gerekir. +- Yukarıda belirtilen dosyalar veya dizinler hariç, diğer tüm parçalar [GPL-3.0 veya üzeri](https://www.gnu.org/licenses/gpl-3.0.html)'dir. + +## Afdian Bağlantısı + +- https://afdian.com/a/shirkneko + +## Sponsor Listesi + +- [Ktouls](https://github.com/Ktouls) Bana sağladığınız destek için çok teşekkür ederim +- [zaoqi123](https://github.com/zaoqi123) Bana sütlü çay ısmarlamanız da güzel +- [wswzgdg](https://github.com/wswzgdg) Bu projeye olan desteğiniz için çok teşekkür ederim +- [yspbwx2010](https://github.com/yspbwx2010) Çok teşekkür ederim +- [DARKWWEE](https://github.com/DARKWWEE) 100 USDT için teşekkürler + +## Katkıda Bulunanlar + +- [KernelSU](https://github.com/tiann/KernelSU): Orijinal proje +- [MKSU](https://github.com/5ec1cff/KernelSU): Kullanılan proje +- [RKSU](https://github.com/rsuntk/KernelsU): GKI olmayan cihazlar için destek sağlayan proje +- [susfs4ksu](https://gitlab.com/simonpunk/susfs4ksu): Kullanılan susfs dosya sistemi +- [kernel-assisted-superuser](https://git.zx2c4.com/kernel-assisted-superuser/about/): KernelSU fikri +- [Magisk](https://github.com/topjohnwu/Magisk): Güçlü root aracı +- [genuine](https://github.com/brevent/genuine/): APK v2 imza doğrulama +- [Diamorphine](https://github.com/m0nad/Diamorphine): Bazı rootkit becerileri +- [KernelPatch](https://github.com/bmax121/KernelPatch): KernelPatch, APatch\'in çekirdek modüllerini uygulamak için kritik bir parçadır diff --git a/docs/tr/SukiSU-mini.svg b/docs/tr/SukiSU-mini.svg new file mode 100644 index 0000000..1c7d20f --- /dev/null +++ b/docs/tr/SukiSU-mini.svg @@ -0,0 +1,183 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/zakomonochrome-128.svg b/docs/zakomonochrome-128.svg new file mode 100644 index 0000000..8d2cfc2 --- /dev/null +++ b/docs/zakomonochrome-128.svg @@ -0,0 +1,65 @@ + + + + + + + + + + + + + diff --git a/docs/zh/README.md b/docs/zh/README.md new file mode 100644 index 0000000..b82a863 --- /dev/null +++ b/docs/zh/README.md @@ -0,0 +1,101 @@ +# SukiSU Ultra +sukisu logo + + +[English](../README.md) | **简体中文** | [日本語](../ja/README.md) | [Türkçe](../tr/README.md) + +一个 Android 上基于内核的 root 方案,由 [`tiann/KernelSU`](https://github.com/tiann/KernelSU) 分叉而来,添加了一些有趣的变更。 + +[![最新发行](https://img.shields.io/github/v/release/SukiSU-Ultra/SukiSU-Ultra?label=Release&logo=github)](https://github.com/tiann/KernelSU/releases/latest) +[![频道](https://img.shields.io/badge/Follow-Telegram-blue.svg?logo=telegram)](https://t.me/Sukiksu) +[![协议: GPL v2](https://img.shields.io/badge/License-GPL%20v2-orange.svg?logo=gnu)](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html) +[![GitHub 协议](https://img.shields.io/github/license/tiann/KernelSU?logo=gnu)](/LICENSE) + +## 特性 + +1. 基于内核的 `su` 和权限管理。 +2. 基于 [Magic Mount](https://github.com/5ec1cff/KernelSU) 的模块系统。 +3. [App Profile](https://kernelsu.org/zh_CN/guide/app-profile.html): 把 Root 权限关进笼子里。 +4. 支持 non-GKI 与 GKI 1.0。 +5. KPM 支持 +6. 可调整管理器外观,可自定义 susfs 配置。 + +## 兼容状态 + +- KernelSU 官方支持 GKI 2.0 的设备(内核版本 5.10 以上)。 + +- 旧内核也是兼容的(最低 4.14+),不过需要自己编译内核。 + +- 通过更多的反向移植,KernelSU 可以支持 3.x 内核(3.4-3.18)。 + +- 目前支持架构 : `arm64-v8a`、`armeabi-v7a (bare)`、`X86_64`。 + +## 安装指导 + +查看 [`guide/installation.md`](guide/installation.md) + +## 集成指导 + +查看 [`guide/how-to-integrate.md`](guide/how-to-integrate.md) + +## 参与翻译 + +要将 SukiSU 翻译成您的语言,或完善现有的翻译,请使用 [Crowdin](https://crowdin.com/project/SukiSU-Ultra). + +## KPM 支持 + +- 基于 KernelPatch 开发,移除了与 KernelSU 重复的功能。 +- 正在进行(WIP):通过集成附加功能来扩展 APatch 兼容性,以确保跨不同实现的兼容性。 + +**开源仓库**: [https://github.com/ShirkNeko/SukiSU_KernelPatch_patch](https://github.com/ShirkNeko/SukiSU_KernelPatch_patch) + +**KPM 模板**: [https://github.com/udochina/KPM-Build-Anywhere](https://github.com/udochina/KPM-Build-Anywhere) + +> [!Note] +> +> 1. 需要 `CONFIG_KPM=y` +> 2. Non-GKI 设备需要 `CONFIG_KALLSYMS=y` and `CONFIG_KALLSYMS_ALL=y` +> 3. 对于低于 `4.19` 的内核,需要从 `4.19` 的 `set_memory.h` 进行反向移植。 + +## 故障排除 + +1. 卸载管理器后系统卡住? + 卸载 _com.sony.playmemories.mobile_ + +## 许可证 + +- 目录 `kernel` 下所有文件为 [GPL-2.0-only](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html)。 +- 有动漫人物图片表情包的这些文件 `ic_launcher(?!.*alt.*).*` 的图像版权为[怡子曰曰](https://space.bilibili.com/10545509)所有,图像中的知识产权由[明风 OuO](https://space.bilibili.com/274939213)所有,矢量化由 @MiRinChan 完成,在使用这些文件之前,除了必须遵守 [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode.txt) 以外,还需要遵守向前两者索要使用这些艺术内容的授权。 +- 除上述文件及目录的其他部分均为 [GPL-3.0-or-later](https://www.gnu.org/licenses/gpl-3.0.html)。 + +## 赞助 + +- [ShirkNeko](https://afdian.com/a/shirkneko) (SukiSU 主要维护者) +- [weishu](https://github.com/sponsors/tiann) (KernelSU 作者) + +## ShirkNeko 的赞助列表 + +- [Ktouls](https://github.com/Ktouls) 非常感谢你给我带来的支持 +- [zaoqi123](https://github.com/zaoqi123) 请我喝奶茶也不错 +- [wswzgdg](https://github.com/wswzgdg) 非常感谢对此项目的支持 +- [yspbwx2010](https://github.com/yspbwx2010) 非常感谢 +- [DARKWWEE](https://github.com/DARKWWEE) 感谢老哥的 100 USDT +- [Saksham Singla](https://github.com/TypeFlu) 网站的提供以及维护 +- [OukaroMF](https://github.com/OukaroMF) 网站域名捐赠 + +## 鸣谢 + +- [KernelSU](https://github.com/tiann/KernelSU): 上游 +- [MKSU](https://github.com/5ec1cff/KernelSU): 魔法坐骑支持 +- [RKSU](https://github.com/rsuntk/KernelsU): non-GKI 支持 +- [susfs](https://gitlab.com/simonpunk/susfs4ksu): 隐藏内核补丁以及用户空间模组的 KernelSU 附件 +- [KernelPatch](https://github.com/bmax121/KernelPatch): KernelPatch 是内核模块 APatch 实现的关键部分 + +
+KernelSU 的鸣谢 + +- [kernel-assisted-superuser](https://git.zx2c4.com/kernel-assisted-superuser/about/):KernelSU 的灵感。 +- [Magisk](https://github.com/topjohnwu/Magisk):强大的 root 工具箱。 +- [genuine](https://github.com/brevent/genuine/):apk v2 签名验证。 +- [Diamorphine](https://github.com/m0nad/Diamorphine):一些 rootkit 技巧。 +
diff --git a/docs/zh/SukiSU-mini.svg b/docs/zh/SukiSU-mini.svg new file mode 100644 index 0000000..1c7d20f --- /dev/null +++ b/docs/zh/SukiSU-mini.svg @@ -0,0 +1,183 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/zh/SukiSU.svg b/docs/zh/SukiSU.svg new file mode 100644 index 0000000..559a5d5 --- /dev/null +++ b/docs/zh/SukiSU.svg @@ -0,0 +1,188 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/zh/guide/how-to-integrate.md b/docs/zh/guide/how-to-integrate.md new file mode 100644 index 0000000..38d6f10 --- /dev/null +++ b/docs/zh/guide/how-to-integrate.md @@ -0,0 +1,97 @@ +# 集成指导 + +SukiSU 可以集成到 GKI 和 non-GKI 内核中,并且已反向移植到 4.14 版本。 + + + +有些 OEM 定制可能导致多达 50% 的内核代码超出内核树代码,而非来自上游 Linux 内核或 ACK。因此,non-GKI 内核的定制特性导致了严重的内核碎片化,而且我们缺乏构建它们的通用方法。因此,我们无法提供 non-GKI 内核的启动映像。 + +前提条件:开源的、可启动的内核。 + +## Hook 方法 + +1. **KPROBES hook:** + + - GKI kernels 的默认 hook 方法。 + - 需要 `# CONFIG_KSU_MANUAL_HOOK is not set`(未设定) & `CONFIG_KPROBES=y` + - 用作可加载的内核模块 (LKM). + +2. **Manual hook:** + + + + - 需要 `CONFIG_KSU_MANUAL_HOOK=y` + - 需要 [`guide/how-to-integrate.md`](how-to-integrate.md) + - 需要 [https://github.com/~](https://github.com/tiann/KernelSU/blob/main/website/docs/guide/how-to-integrate-for-non-gki.md#manually-modify-the-kernel-source) + +3. **Tracepoint Hook:** + + - 自 SukiSU commit [49b01aad](https://github.com/SukiSU-Ultra/SukiSU-Ultra/commit/49b01aad74bcca6dba5a8a2e053bb54b648eb124) 引入的 hook 方法 + - 需要 `CONFIG_KSU_TRACEPOINT_HOOK=y` + - 需要 [`guide/tracepoint-hook.md`](tracepoint-hook.md) + + + +如果您能够构建可启动内核,有两种方法可以将 KernelSU 集成到内核源代码中: + +1. 使用 `kprobe` 自动集成 +2. 手动集成 + +## 与 kprobe 集成 + +适用: + +- GKI 内核 + +不适用: + +- non-GKI 内核 + +KernelSU 使用 kprobe 机制来做内核的相关 hook,如果 _kprobe_ 可以在你编译的内核中正常运行,那么推荐用这个方法来集成。 + +请参阅此文档 [https://github.com/~](https://github.com/tiann/KernelSU/blob/main/website/docs/guide/how-to-integrate-for-non-gki.md#integrate-with-kprobe)。虽然标题为“适用于 non-GKI”,但仅适用于 GKI。 + +替换 KernelSU 添加到内核源代码树的步骤的执行命令为: + +```sh +curl -LSs "https://raw.githubusercontent.com/SukiSU-Ultra/SukiSU-Ultra/main/kernel/setup.sh" | bash -s main +``` + +## 手动修改内核源代码 + +适用: + +- GKI 内核 +- non-GKI 内核 + +请参考此文档 [https://github.com/~ (non-GKI 内核集成)](https://github.com/tiann/KernelSU/blob/main/website/docs/guide/how-to-integrate-for-non-gki.md#manually-modify-the-kernel-source) 和 [https://github.com/~ (GKI 内核构建)](https://kernelsu.org/zh_CN/guide/how-to-build.html) 进行手动集成。虽然第一个链接的标题是“适用于 non-GKI”,但它也适用于 GKI。两者都可以正常工作。 + +还有另一种集成方法,但是仍在开发中。 + + + +将 KernelSU(SukiSU)添加到内核源代码树的步骤的运行命令将被替换为: + +### GKI 内核 + +```sh +curl -LSs "https://raw.githubusercontent.com/SukiSU-Ultra/SukiSU-Ultra/main/kernel/setup.sh" | bash -s main +``` + +### non-GKI 内核 + +```sh +curl -LSs "https://raw.githubusercontent.com/SukiSU-Ultra/SukiSU-Ultra/main/kernel/setup.sh" | bash -s nongki +``` + +### 带有 susfs 的 GKI / non-GKI 内核(实验) + +```sh +curl -LSs "https://raw.githubusercontent.com/SukiSU-Ultra/SukiSU-Ultra/main/kernel/setup.sh" | bash -s susfs-{{branch}} +``` + +分支: + +- `main` (susfs-main) +- `test` (susfs-test) +- 版本号 (例如: susfs-1.5.7, 你需要在 [分支](https://github.com/SukiSU-Ultra/SukiSU-Ultra/branches) 里找到它) diff --git a/docs/zh/guide/installation.md b/docs/zh/guide/installation.md new file mode 100644 index 0000000..4de4bb6 --- /dev/null +++ b/docs/zh/guide/installation.md @@ -0,0 +1,34 @@ +# 安装指导 + +您可以前往 [KernelSU 文档 - 安装](https://kernelsu.org/guide/installation.html) 获取有关如何安装的参考,这里只是额外的说明。 + +## 通过加载可加载内核模块 (LKM) 进行安装 + +请参阅 [KernelSU 文档 - LKM 安装](https://kernelsu.org/guide/installation.html#lkm-installation) + +从 **Android™**(商标,意为获得 Google 移动服务的许可)12 开始,搭载内核版本 5.10 或更高版本的设备必须搭载 GKI 内核。因此你或许可以使用 LKM 模式。 + +## 通过安装内核进行安装 + +请参阅 [KernelSU 文档 - GKI 模式安装](https://kernelsu.org/guide/installation.html#gki-mode-installation) + +我们提供预编译的内核供您使用: + +- [ShirkNeko 内核](https://github.com/ShirkNeko/GKI_KernelSU_SUSFS)(添加了 ZRAM 压缩算法补丁、susfs 文件和 KPM 文件。适用于很多设备。) +- [MiRinFork 内核](https://github.com/MiRinFork/GKI_SukiSU_SUSFS)(添加了 susfs 文件和 KPM 文件。最接近 GKI 的内核,适用于大多数设备。) + +虽然某些设备可以使用 LKM 模式安装,但无法使用 GKI 内核将其安装到设备上;因此,需要手动修改内核进行编译。例如: + +- 欧珀(一加、真我) +- 魅族 + +此外,我们还为您的 OnePlus 设备提供预编译的内核: + +- [ShirkNeko/Action_OnePlus_MKSU_SUSFS](https://github.com/ShirkNeko/Action_OnePlus_MKSU_SUSFS)(添加 ZRAM 压缩算法补丁、susfs 和 KPM。) + +使用上面的链接,Fork 到 GitHub Action,填写构建参数,进行编译,最后将 zip 文件以 AnyKernel3 后缀上传到 GitHub Action。 + +> [!Note] +> +> - 使用时,您只需填写版本号的前两部分,例如 `5.10`、`6.1`... +> - 使用前请确保您了解处理器名称、内核版本等信息。 diff --git a/docs/zh/guide/tracepoint-hook.md b/docs/zh/guide/tracepoint-hook.md new file mode 100644 index 0000000..7dde784 --- /dev/null +++ b/docs/zh/guide/tracepoint-hook.md @@ -0,0 +1,239 @@ +# Tracepoint Hook 集成 + +## 介绍 + +自 commit [49b01aad](https://github.com/SukiSU-Ultra/SukiSU-Ultra/commit/49b01aad74bcca6dba5a8a2e053bb54b648eb124) 起,SukiSU 引入了 Tracepoint Hook + +该 Hook 理论上相比于 Kprobes Hook,性能开销更小,但次于 Manual Hook / Syscall Hook + +> [!NOTE] +> 本教程参考了 [backslashxx/KernelSU#5](https://github.com/backslashxx/KernelSU/issues/5) 的 syscall hook v1.4 版本钩子,以及原版 KernelSU 的 [Manual Hook](https://kernelsu.org/guide/how-to-integrate-for-non-gki.html#manually-modify-the-kernel-source) + +## Guide + +### execve 钩子(`exec.c`) + +一般需要修改 `fs/exec.c` 的 `do_execve` 和 `compat_do_execve` 方法 + +```patch +--- a/fs/exec.c ++++ b/fs/exec.c +@@ -78,6 +78,10 @@ + #include + #endif + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++#include <../drivers/kernelsu/ksu_trace.h> ++#endif ++ + EXPORT_TRACEPOINT_SYMBOL_GPL(task_rename); + + static int bprm_creds_from_file(struct linux_binprm *bprm); +@@ -2037,6 +2041,9 @@ static int do_execve(struct filename *filename, + { + struct user_arg_ptr argv = { .ptr.native = __argv }; + struct user_arg_ptr envp = { .ptr.native = __envp }; ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++ trace_ksu_trace_execveat_hook((int *)AT_FDCWD, &filename, &argv, &envp, 0); ++#endif + return do_execveat_common(AT_FDCWD, filename, argv, envp, 0); + } + +@@ -2064,6 +2071,9 @@ static int compat_do_execve(struct filename *filename, + .is_compat = true, + .ptr.compat = __envp, + }; ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++ trace_ksu_trace_execveat_hook((int *)AT_FDCWD, &filename, &argv, &envp, 0)); // 32-bit su and 32-on-64 support ++#endif + return do_execveat_common(AT_FDCWD, filename, argv, envp, 0); + } +``` + +### faccessat 钩子 (`open.c`) + +一般需要修改 `/fs/open.c` 的 `do_faccessat` 方法 + +```patch +--- a/fs/open.c ++++ b/fs/open.c +@@ -37,6 +37,10 @@ + #include "internal.h" + #include + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++#include <../drivers/kernelsu/ksu_trace.h> ++#endif ++ + int do_truncate(struct user_namespace *mnt_userns, struct dentry *dentry, + loff_t length, unsigned int time_attrs, struct file *filp) + { +@@ -468,6 +472,9 @@ static long do_faccessat(int dfd, const char __user *filename, int mode, int fla + + SYSCALL_DEFINE3(faccessat, int, dfd, const char __user *, filename, int, mode) + { ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++ trace_ksu_trace_faccessat_hook(&dfd, &filename, &mode, NULL); ++#endif + return do_faccessat(dfd, filename, mode, 0); + } +``` + +如果没有 `do_faccessat` 方法,可以找 `faccessat` 的 SYSCALL 定义(对于早于 4.17 的内核) + +```patch +--- a/fs/open.c ++++ b/fs/open.c +@@ -31,6 +31,9 @@ + #include + #include + #include ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++#include <../drivers/kernelsu/ksu_trace.h> ++#endif + + #include "internal.h" + +@@ -369,6 +372,9 @@ SYSCALL_DEFINE3(faccessat, int, dfd, const char __user *, filename, int, mode) + int res; + unsigned int lookup_flags = LOOKUP_FOLLOW; + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++ trace_ksu_trace_faccessat_hook(&dfd, &filename, &mode, NULL); ++#endif + if (mode & ~S_IRWXO) /* where's F_OK, X_OK, W_OK, R_OK? */ + return -EINVAL; +``` + +### sys_read 钩子 ( `read_write.c` ) + +需要修改 `fs/read_write.c` 的 `sys_read` 方法(4.19 及以上) + +```patch +--- a/fs/read_write.c ++++ b/fs/read_write.c +@@ -25,6 +25,10 @@ + #include + #include + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++#include <../drivers/kernelsu/ksu_trace.h> ++#endif ++ + const struct file_operations generic_ro_fops = { + .llseek = generic_file_llseek, + .read_iter = generic_file_read_iter, +@@ -630,6 +634,9 @@ ssize_t ksys_read(unsigned int fd, char __user *buf, size_t count) + + SYSCALL_DEFINE3(read, unsigned int, fd, char __user *, buf, size_t, count) + { ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++ trace_ksu_trace_sys_read_hook(fd, &buf, &count); ++#endif + return ksys_read(fd, buf, count); + } +``` + +或者是 `read` 的 SYSCALL 定义(4.14 及以下) + +```patch +--- a/fs/read_write.c ++++ b/fs/read_write.c +@@ -25,6 +25,11 @@ + #include + #include + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++#include <../drivers/kernelsu/ksu_trace.h> ++#endif ++ ++ + const struct file_operations generic_ro_fops = { + .llseek = generic_file_llseek, + .read_iter = generic_file_read_iter, +@@ -575,6 +580,9 @@ SYSCALL_DEFINE3(read, unsigned int, fd, char __user *, buf, size_t, count) + + if (f.file) { + loff_t pos = file_pos_read(f.file); ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++ trace_ksu_trace_sys_read_hook(fd, &buf, &count); ++#endif + ret = vfs_read(f.file, buf, count, &pos); + if (ret >= 0) + file_pos_write(f.file, pos); +``` + +### fstatat 钩子 ( `stat.c` ) + +需要修改 `stat.c` 的 `newfstatat` SYSCALL 定义 + +如果需要 32 位支持,还需要修改 `statat64` SYSCALL 定义 + +```patch +--- a/fs/stat.c ++++ b/fs/stat.c +@@ -24,6 +24,10 @@ + #include "internal.h" + #include "mount.h" + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++#include <../drivers/kernelsu/ksu_trace.h> ++#endif ++ + /** + * generic_fillattr - Fill in the basic attributes from the inode struct + * @mnt_userns: user namespace of the mount the inode was found from +@@ -408,6 +412,10 @@ SYSCALL_DEFINE4(newfstatat, int, dfd, const char __user *, filename, + struct kstat stat; + int error; + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++ trace_ksu_trace_stat_hook(&dfd, &filename, &flag); ++#endif ++ + error = vfs_fstatat(dfd, filename, &stat, flag); + if (error) + return error; +@@ -559,6 +567,10 @@ SYSCALL_DEFINE4(fstatat64, int, dfd, const char __user *, filename, + struct kstat stat; + int error; + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++ trace_ksu_trace_stat_hook(&dfd, &filename, &flag); /* 32-bit su support */ ++#endif ++ + error = vfs_fstatat(dfd, filename, &stat, flag); + if (error) + return error; +``` + +### input 钩子 (`input.c` ,用于进入KSU系的内置安全模式) + +需要修改 `drivers/input/input.c` 的 `input_event` 方法,而不是 `input_handle_event` + +```patch +--- a/drivers/input/input.c ++++ b/drivers/input/input.c +@@ -26,6 +26,10 @@ + #include "input-compat.h" + #include "input-poller.h" + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++#include <../../drivers/kernelsu/ksu_trace.h> ++#endif ++ + MODULE_AUTHOR("Vojtech Pavlik "); + MODULE_DESCRIPTION("Input core"); + MODULE_LICENSE("GPL"); +@@ -451,6 +455,10 @@ void input_event(struct input_dev *dev, + { + unsigned long flags; + ++#if defined(CONFIG_KSU) && defined(CONFIG_KSU_TRACEPOINT_HOOK) ++ trace_ksu_trace_input_hook(&type, &code, &value); ++#endif ++ + if (is_event_supported(type, dev->evbit, EV_MAX)) { + + spin_lock_irqsave(&dev->event_lock, flags); +``` \ No newline at end of file diff --git a/js/README.md b/js/README.md new file mode 100644 index 0000000..422377d --- /dev/null +++ b/js/README.md @@ -0,0 +1,121 @@ +# Library for KernelSU's module WebUI + +## Install + +```sh +yarn add kernelsu +``` + +## API + +### exec + +Spawns a **root** shell and runs a command within that shell, returning a Promise that resolves with the `stdout` and `stderr` outputs upon completion. + +- `command` `` The command to run, with space-separated arguments. +- `options` `` + - `cwd` - Current working directory of the child process. + - `env` - Environment key-value pairs. + +```javascript +import { exec } from 'kernelsu'; + +const { errno, stdout, stderr } = await exec('ls -l', { cwd: '/tmp' }); +if (errno === 0) { + // success + console.log(stdout); +} +``` + +### spawn + +Spawns a new process using the given `command` in **root** shell, with command-line arguments in `args`. If omitted, `args` defaults to an empty array. + +Returns a `ChildProcess` instance. Instances of `ChildProcess` represent spawned child processes. + +- `command` `` The command to run. +- `args` `` List of string arguments. +- `options` ``: + - `cwd` `` - Current working directory of the child process. + - `env` `` - Environment key-value pairs. + +Example of running `ls -lh /data`, capturing `stdout`, `stderr`, and the exit code: + +```javascript +import { spawn } from 'kernelsu'; + +const ls = spawn('ls', ['-lh', '/data']); + +ls.stdout.on('data', (data) => { + console.log(`stdout: ${data}`); +}); + +ls.stderr.on('data', (data) => { + console.log(`stderr: ${data}`); +}); + +ls.on('exit', (code) => { + console.log(`child process exited with code ${code}`); +}); +``` + +#### ChildProcess + +##### Event 'exit' + +- `code` `` The exit code if the child process exited on its own. + +The `'exit'` event is emitted when the child process ends. If the process exits, `code` contains the final exit code; otherwise, it is null. + +##### Event 'error' + +- `err` `` The error. + +The `'error'` event is emitted whenever: + +- The process could not be spawned. +- The process could not be killed. + +##### `stdout` + +A `Readable Stream` that represents the child process's `stdout`. + +```javascript +const subprocess = spawn('ls'); + +subprocess.stdout.on('data', (data) => { + console.log(`Received chunk ${data}`); +}); +``` + +#### `stderr` + +A `Readable Stream` that represents the child process's `stderr`. + +### fullScreen + +Request the WebView enter/exit full screen. + +```javascript +import { fullScreen } from 'kernelsu'; +fullScreen(true); +``` + +### toast + +Show a toast message. + +```javascript +import { toast } from 'kernelsu'; +toast('Hello, world!'); +``` + +### moduleInfo + +Get module info. + +```javascript +import { moduleInfo } from 'kernelsu'; +// print moduleId in console +console.log(moduleInfo()); +``` diff --git a/js/index.d.ts b/js/index.d.ts new file mode 100644 index 0000000..c927817 --- /dev/null +++ b/js/index.d.ts @@ -0,0 +1,48 @@ +interface ExecOptions { + cwd?: string, + env?: { [key: string]: string } +} + +interface ExecResults { + errno: number, + stdout: string, + stderr: string +} + +declare function exec(command: string): Promise; +declare function exec(command: string, options: ExecOptions): Promise; + +interface SpawnOptions { + cwd?: string, + env?: { [key: string]: string } +} + +interface Stdio { + on(event: 'data', callback: (data: string) => void) +} + +interface ChildProcess { + stdout: Stdio, + stderr: Stdio, + on(event: 'exit', callback: (code: number) => void) + on(event: 'error', callback: (err: any) => void) +} + +declare function spawn(command: string): ChildProcess; +declare function spawn(command: string, args: string[]): ChildProcess; +declare function spawn(command: string, options: SpawnOptions): ChildProcess; +declare function spawn(command: string, args: string[], options: SpawnOptions): ChildProcess; + +declare function fullScreen(isFullScreen: boolean); + +declare function toast(message: string); + +declare function moduleInfo(): string; + +export { + exec, + spawn, + fullScreen, + toast, + moduleInfo +} diff --git a/js/index.js b/js/index.js new file mode 100644 index 0000000..29b928a --- /dev/null +++ b/js/index.js @@ -0,0 +1,119 @@ +let callbackCounter = 0; +function getUniqueCallbackName(prefix) { + return `${prefix}_callback_${Date.now()}_${callbackCounter++}`; +} + +export function exec(command, options) { + if (typeof options === "undefined") { + options = {}; + } + + return new Promise((resolve, reject) => { + // Generate a unique callback function name + const callbackFuncName = getUniqueCallbackName("exec"); + + // Define the success callback function + window[callbackFuncName] = (errno, stdout, stderr) => { + resolve({ errno, stdout, stderr }); + cleanup(callbackFuncName); + }; + + function cleanup(successName) { + delete window[successName]; + } + + try { + ksu.exec(command, JSON.stringify(options), callbackFuncName); + } catch (error) { + reject(error); + cleanup(callbackFuncName); + } + }); +} + +function Stdio() { + this.listeners = {}; + } + + Stdio.prototype.on = function (event, listener) { + if (!this.listeners[event]) { + this.listeners[event] = []; + } + this.listeners[event].push(listener); + }; + + Stdio.prototype.emit = function (event, ...args) { + if (this.listeners[event]) { + this.listeners[event].forEach((listener) => listener(...args)); + } + }; + + function ChildProcess() { + this.listeners = {}; + this.stdin = new Stdio(); + this.stdout = new Stdio(); + this.stderr = new Stdio(); + } + + ChildProcess.prototype.on = function (event, listener) { + if (!this.listeners[event]) { + this.listeners[event] = []; + } + this.listeners[event].push(listener); + }; + + ChildProcess.prototype.emit = function (event, ...args) { + if (this.listeners[event]) { + this.listeners[event].forEach((listener) => listener(...args)); + } + }; + + export function spawn(command, args, options) { + if (typeof args === "undefined") { + args = []; + } else if (!(args instanceof Array)) { + // allow for (command, options) signature + options = args; + } + + if (typeof options === "undefined") { + options = {}; + } + + const child = new ChildProcess(); + const childCallbackName = getUniqueCallbackName("spawn"); + window[childCallbackName] = child; + + function cleanup(name) { + delete window[name]; + } + + child.on("exit", code => { + cleanup(childCallbackName); + }); + + try { + ksu.spawn( + command, + JSON.stringify(args), + JSON.stringify(options), + childCallbackName + ); + } catch (error) { + child.emit("error", error); + cleanup(childCallbackName); + } + return child; + } + +export function fullScreen(isFullScreen) { + ksu.fullScreen(isFullScreen); +} + +export function toast(message) { + ksu.toast(message); +} + +export function moduleInfo() { + return ksu.moduleInfo(); +} diff --git a/js/package.json b/js/package.json new file mode 100644 index 0000000..12002a0 --- /dev/null +++ b/js/package.json @@ -0,0 +1,26 @@ +{ + "name": "kernelsu", + "version": "1.0.7", + "description": "Library for KernelSU's module WebUI", + "main": "index.js", + "types": "index.d.ts", + "scripts": { + "test": "npm run test" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/tiann/KernelSU.git" + }, + "keywords": [ + "su", + "kernelsu", + "module", + "webui" + ], + "author": "weishu", + "license": "Apache-2.0", + "bugs": { + "url": "https://github.com/tiann/KernelSU/issues" + }, + "homepage": "https://github.com/tiann/KernelSU#readme" +} diff --git a/justfile b/justfile new file mode 100644 index 0000000..51bef76 --- /dev/null +++ b/justfile @@ -0,0 +1,14 @@ +alias bk := build_ksud +alias bm := build_manager + +build_ksud: + cross build --target aarch64-linux-android --release --manifest-path ./userspace/ksud/Cargo.toml + +build_manager: build_ksud + cp userspace/ksud/target/aarch64-linux-android/release/ksud manager/app/src/main/jniLibs/arm64-v8a/libksud.so + cd manager && ./gradlew aDebug + +clippy: + cargo fmt --manifest-path ./userspace/ksud/Cargo.toml + cross clippy --target x86_64-pc-windows-gnu --release --manifest-path ./userspace/ksud/Cargo.toml + cross clippy --target aarch64-linux-android --release --manifest-path ./userspace/ksud/Cargo.toml diff --git a/kernel/.clang-format b/kernel/.clang-format new file mode 100644 index 0000000..6453cf9 --- /dev/null +++ b/kernel/.clang-format @@ -0,0 +1,548 @@ +# SPDX-License-Identifier: GPL-2.0 +# +# clang-format configuration file. Intended for clang-format >= 4. +# +# For more information, see: +# +# Documentation/process/clang-format.rst +# https://clang.llvm.org/docs/ClangFormat.html +# https://clang.llvm.org/docs/ClangFormatStyleOptions.html +# +--- +AccessModifierOffset: -4 +AlignAfterOpenBracket: Align +AlignConsecutiveAssignments: false +AlignConsecutiveDeclarations: false +#AlignEscapedNewlines: Left # Unknown to clang-format-4.0 +AlignOperands: true +AlignTrailingComments: false +AllowAllParametersOfDeclarationOnNextLine: false +AllowShortBlocksOnASingleLine: false +AllowShortCaseLabelsOnASingleLine: false +AllowShortFunctionsOnASingleLine: None +AllowShortIfStatementsOnASingleLine: false +AllowShortLoopsOnASingleLine: false +AlwaysBreakAfterDefinitionReturnType: None +AlwaysBreakAfterReturnType: None +AlwaysBreakBeforeMultilineStrings: false +AlwaysBreakTemplateDeclarations: false +BinPackArguments: true +BinPackParameters: true +BraceWrapping: + AfterClass: false + AfterControlStatement: false + AfterEnum: false + AfterFunction: true + AfterNamespace: true + AfterObjCDeclaration: false + AfterStruct: false + AfterUnion: false + #AfterExternBlock: false # Unknown to clang-format-5.0 + BeforeCatch: false + BeforeElse: false + IndentBraces: false + #SplitEmptyFunction: true # Unknown to clang-format-4.0 + #SplitEmptyRecord: true # Unknown to clang-format-4.0 + #SplitEmptyNamespace: true # Unknown to clang-format-4.0 +BreakBeforeBinaryOperators: None +BreakBeforeBraces: Custom +#BreakBeforeInheritanceComma: false # Unknown to clang-format-4.0 +BreakBeforeTernaryOperators: false +BreakConstructorInitializersBeforeComma: false +#BreakConstructorInitializers: BeforeComma # Unknown to clang-format-4.0 +BreakAfterJavaFieldAnnotations: false +BreakStringLiterals: false +ColumnLimit: 80 +CommentPragmas: '^ IWYU pragma:' +#CompactNamespaces: false # Unknown to clang-format-4.0 +ConstructorInitializerAllOnOneLineOrOnePerLine: false +ConstructorInitializerIndentWidth: 4 +ContinuationIndentWidth: 4 +Cpp11BracedListStyle: false +DerivePointerAlignment: false +DisableFormat: false +ExperimentalAutoDetectBinPacking: false +#FixNamespaceComments: false # Unknown to clang-format-4.0 + +# Taken from: +# git grep -h '^#define [^[:space:]]*for_each[^[:space:]]*(' include/ \ +# | sed "s,^#define \([^[:space:]]*for_each[^[:space:]]*\)(.*$, - '\1'," \ +# | sort | uniq +ForEachMacros: + - 'apei_estatus_for_each_section' + - 'ata_for_each_dev' + - 'ata_for_each_link' + - '__ata_qc_for_each' + - 'ata_qc_for_each' + - 'ata_qc_for_each_raw' + - 'ata_qc_for_each_with_internal' + - 'ax25_for_each' + - 'ax25_uid_for_each' + - '__bio_for_each_bvec' + - 'bio_for_each_bvec' + - 'bio_for_each_bvec_all' + - 'bio_for_each_integrity_vec' + - '__bio_for_each_segment' + - 'bio_for_each_segment' + - 'bio_for_each_segment_all' + - 'bio_list_for_each' + - 'bip_for_each_vec' + - 'bitmap_for_each_clear_region' + - 'bitmap_for_each_set_region' + - 'blkg_for_each_descendant_post' + - 'blkg_for_each_descendant_pre' + - 'blk_queue_for_each_rl' + - 'bond_for_each_slave' + - 'bond_for_each_slave_rcu' + - 'bpf_for_each_spilled_reg' + - 'btree_for_each_safe128' + - 'btree_for_each_safe32' + - 'btree_for_each_safe64' + - 'btree_for_each_safel' + - 'card_for_each_dev' + - 'cgroup_taskset_for_each' + - 'cgroup_taskset_for_each_leader' + - 'cpufreq_for_each_entry' + - 'cpufreq_for_each_entry_idx' + - 'cpufreq_for_each_valid_entry' + - 'cpufreq_for_each_valid_entry_idx' + - 'css_for_each_child' + - 'css_for_each_descendant_post' + - 'css_for_each_descendant_pre' + - 'device_for_each_child_node' + - 'dma_fence_chain_for_each' + - 'do_for_each_ftrace_op' + - 'drm_atomic_crtc_for_each_plane' + - 'drm_atomic_crtc_state_for_each_plane' + - 'drm_atomic_crtc_state_for_each_plane_state' + - 'drm_atomic_for_each_plane_damage' + - 'drm_client_for_each_connector_iter' + - 'drm_client_for_each_modeset' + - 'drm_connector_for_each_possible_encoder' + - 'drm_for_each_bridge_in_chain' + - 'drm_for_each_connector_iter' + - 'drm_for_each_crtc' + - 'drm_for_each_encoder' + - 'drm_for_each_encoder_mask' + - 'drm_for_each_fb' + - 'drm_for_each_legacy_plane' + - 'drm_for_each_plane' + - 'drm_for_each_plane_mask' + - 'drm_for_each_privobj' + - 'drm_mm_for_each_hole' + - 'drm_mm_for_each_node' + - 'drm_mm_for_each_node_in_range' + - 'drm_mm_for_each_node_safe' + - 'flow_action_for_each' + - 'for_each_active_dev_scope' + - 'for_each_active_drhd_unit' + - 'for_each_active_iommu' + - 'for_each_aggr_pgid' + - 'for_each_available_child_of_node' + - 'for_each_bio' + - 'for_each_board_func_rsrc' + - 'for_each_bvec' + - 'for_each_card_auxs' + - 'for_each_card_auxs_safe' + - 'for_each_card_components' + - 'for_each_card_dapms' + - 'for_each_card_pre_auxs' + - 'for_each_card_prelinks' + - 'for_each_card_rtds' + - 'for_each_card_rtds_safe' + - 'for_each_card_widgets' + - 'for_each_card_widgets_safe' + - 'for_each_cgroup_storage_type' + - 'for_each_child_of_node' + - 'for_each_clear_bit' + - 'for_each_clear_bit_from' + - 'for_each_cmsghdr' + - 'for_each_compatible_node' + - 'for_each_component_dais' + - 'for_each_component_dais_safe' + - 'for_each_comp_order' + - 'for_each_console' + - 'for_each_cpu' + - 'for_each_cpu_and' + - 'for_each_cpu_not' + - 'for_each_cpu_wrap' + - 'for_each_dapm_widgets' + - 'for_each_dev_addr' + - 'for_each_dev_scope' + - 'for_each_displayid_db' + - 'for_each_dma_cap_mask' + - 'for_each_dpcm_be' + - 'for_each_dpcm_be_rollback' + - 'for_each_dpcm_be_safe' + - 'for_each_dpcm_fe' + - 'for_each_drhd_unit' + - 'for_each_dss_dev' + - 'for_each_efi_memory_desc' + - 'for_each_efi_memory_desc_in_map' + - 'for_each_element' + - 'for_each_element_extid' + - 'for_each_element_id' + - 'for_each_endpoint_of_node' + - 'for_each_evictable_lru' + - 'for_each_fib6_node_rt_rcu' + - 'for_each_fib6_walker_rt' + - 'for_each_free_mem_pfn_range_in_zone' + - 'for_each_free_mem_pfn_range_in_zone_from' + - 'for_each_free_mem_range' + - 'for_each_free_mem_range_reverse' + - 'for_each_func_rsrc' + - 'for_each_hstate' + - 'for_each_if' + - 'for_each_iommu' + - 'for_each_ip_tunnel_rcu' + - 'for_each_irq_nr' + - 'for_each_link_codecs' + - 'for_each_link_cpus' + - 'for_each_link_platforms' + - 'for_each_lru' + - 'for_each_matching_node' + - 'for_each_matching_node_and_match' + - 'for_each_member' + - 'for_each_mem_region' + - 'for_each_memblock_type' + - 'for_each_memcg_cache_index' + - 'for_each_mem_pfn_range' + - '__for_each_mem_range' + - 'for_each_mem_range' + - '__for_each_mem_range_rev' + - 'for_each_mem_range_rev' + - 'for_each_migratetype_order' + - 'for_each_msi_entry' + - 'for_each_msi_entry_safe' + - 'for_each_net' + - 'for_each_net_continue_reverse' + - 'for_each_netdev' + - 'for_each_netdev_continue' + - 'for_each_netdev_continue_rcu' + - 'for_each_netdev_continue_reverse' + - 'for_each_netdev_feature' + - 'for_each_netdev_in_bond_rcu' + - 'for_each_netdev_rcu' + - 'for_each_netdev_reverse' + - 'for_each_netdev_safe' + - 'for_each_net_rcu' + - 'for_each_new_connector_in_state' + - 'for_each_new_crtc_in_state' + - 'for_each_new_mst_mgr_in_state' + - 'for_each_new_plane_in_state' + - 'for_each_new_private_obj_in_state' + - 'for_each_node' + - 'for_each_node_by_name' + - 'for_each_node_by_type' + - 'for_each_node_mask' + - 'for_each_node_state' + - 'for_each_node_with_cpus' + - 'for_each_node_with_property' + - 'for_each_nonreserved_multicast_dest_pgid' + - 'for_each_of_allnodes' + - 'for_each_of_allnodes_from' + - 'for_each_of_cpu_node' + - 'for_each_of_pci_range' + - 'for_each_old_connector_in_state' + - 'for_each_old_crtc_in_state' + - 'for_each_old_mst_mgr_in_state' + - 'for_each_oldnew_connector_in_state' + - 'for_each_oldnew_crtc_in_state' + - 'for_each_oldnew_mst_mgr_in_state' + - 'for_each_oldnew_plane_in_state' + - 'for_each_oldnew_plane_in_state_reverse' + - 'for_each_oldnew_private_obj_in_state' + - 'for_each_old_plane_in_state' + - 'for_each_old_private_obj_in_state' + - 'for_each_online_cpu' + - 'for_each_online_node' + - 'for_each_online_pgdat' + - 'for_each_pci_bridge' + - 'for_each_pci_dev' + - 'for_each_pci_msi_entry' + - 'for_each_pcm_streams' + - 'for_each_physmem_range' + - 'for_each_populated_zone' + - 'for_each_possible_cpu' + - 'for_each_present_cpu' + - 'for_each_prime_number' + - 'for_each_prime_number_from' + - 'for_each_process' + - 'for_each_process_thread' + - 'for_each_property_of_node' + - 'for_each_registered_fb' + - 'for_each_requested_gpio' + - 'for_each_requested_gpio_in_range' + - 'for_each_reserved_mem_range' + - 'for_each_reserved_mem_region' + - 'for_each_rtd_codec_dais' + - 'for_each_rtd_codec_dais_rollback' + - 'for_each_rtd_components' + - 'for_each_rtd_cpu_dais' + - 'for_each_rtd_cpu_dais_rollback' + - 'for_each_rtd_dais' + - 'for_each_set_bit' + - 'for_each_set_bit_from' + - 'for_each_set_clump8' + - 'for_each_sg' + - 'for_each_sg_dma_page' + - 'for_each_sg_page' + - 'for_each_sgtable_dma_page' + - 'for_each_sgtable_dma_sg' + - 'for_each_sgtable_page' + - 'for_each_sgtable_sg' + - 'for_each_sibling_event' + - 'for_each_subelement' + - 'for_each_subelement_extid' + - 'for_each_subelement_id' + - '__for_each_thread' + - 'for_each_thread' + - 'for_each_unicast_dest_pgid' + - 'for_each_wakeup_source' + - 'for_each_zone' + - 'for_each_zone_zonelist' + - 'for_each_zone_zonelist_nodemask' + - 'fwnode_for_each_available_child_node' + - 'fwnode_for_each_child_node' + - 'fwnode_graph_for_each_endpoint' + - 'gadget_for_each_ep' + - 'genradix_for_each' + - 'genradix_for_each_from' + - 'hash_for_each' + - 'hash_for_each_possible' + - 'hash_for_each_possible_rcu' + - 'hash_for_each_possible_rcu_notrace' + - 'hash_for_each_possible_safe' + - 'hash_for_each_rcu' + - 'hash_for_each_safe' + - 'hctx_for_each_ctx' + - 'hlist_bl_for_each_entry' + - 'hlist_bl_for_each_entry_rcu' + - 'hlist_bl_for_each_entry_safe' + - 'hlist_for_each' + - 'hlist_for_each_entry' + - 'hlist_for_each_entry_continue' + - 'hlist_for_each_entry_continue_rcu' + - 'hlist_for_each_entry_continue_rcu_bh' + - 'hlist_for_each_entry_from' + - 'hlist_for_each_entry_from_rcu' + - 'hlist_for_each_entry_rcu' + - 'hlist_for_each_entry_rcu_bh' + - 'hlist_for_each_entry_rcu_notrace' + - 'hlist_for_each_entry_safe' + - '__hlist_for_each_rcu' + - 'hlist_for_each_safe' + - 'hlist_nulls_for_each_entry' + - 'hlist_nulls_for_each_entry_from' + - 'hlist_nulls_for_each_entry_rcu' + - 'hlist_nulls_for_each_entry_safe' + - 'i3c_bus_for_each_i2cdev' + - 'i3c_bus_for_each_i3cdev' + - 'ide_host_for_each_port' + - 'ide_port_for_each_dev' + - 'ide_port_for_each_present_dev' + - 'idr_for_each_entry' + - 'idr_for_each_entry_continue' + - 'idr_for_each_entry_continue_ul' + - 'idr_for_each_entry_ul' + - 'in_dev_for_each_ifa_rcu' + - 'in_dev_for_each_ifa_rtnl' + - 'inet_bind_bucket_for_each' + - 'inet_lhash2_for_each_icsk_rcu' + - 'key_for_each' + - 'key_for_each_safe' + - 'klp_for_each_func' + - 'klp_for_each_func_safe' + - 'klp_for_each_func_static' + - 'klp_for_each_object' + - 'klp_for_each_object_safe' + - 'klp_for_each_object_static' + - 'kunit_suite_for_each_test_case' + - 'kvm_for_each_memslot' + - 'kvm_for_each_vcpu' + - 'list_for_each' + - 'list_for_each_codec' + - 'list_for_each_codec_safe' + - 'list_for_each_continue' + - 'list_for_each_entry' + - 'list_for_each_entry_continue' + - 'list_for_each_entry_continue_rcu' + - 'list_for_each_entry_continue_reverse' + - 'list_for_each_entry_from' + - 'list_for_each_entry_from_rcu' + - 'list_for_each_entry_from_reverse' + - 'list_for_each_entry_lockless' + - 'list_for_each_entry_rcu' + - 'list_for_each_entry_reverse' + - 'list_for_each_entry_safe' + - 'list_for_each_entry_safe_continue' + - 'list_for_each_entry_safe_from' + - 'list_for_each_entry_safe_reverse' + - 'list_for_each_prev' + - 'list_for_each_prev_safe' + - 'list_for_each_safe' + - 'llist_for_each' + - 'llist_for_each_entry' + - 'llist_for_each_entry_safe' + - 'llist_for_each_safe' + - 'mci_for_each_dimm' + - 'media_device_for_each_entity' + - 'media_device_for_each_intf' + - 'media_device_for_each_link' + - 'media_device_for_each_pad' + - 'nanddev_io_for_each_page' + - 'netdev_for_each_lower_dev' + - 'netdev_for_each_lower_private' + - 'netdev_for_each_lower_private_rcu' + - 'netdev_for_each_mc_addr' + - 'netdev_for_each_uc_addr' + - 'netdev_for_each_upper_dev_rcu' + - 'netdev_hw_addr_list_for_each' + - 'nft_rule_for_each_expr' + - 'nla_for_each_attr' + - 'nla_for_each_nested' + - 'nlmsg_for_each_attr' + - 'nlmsg_for_each_msg' + - 'nr_neigh_for_each' + - 'nr_neigh_for_each_safe' + - 'nr_node_for_each' + - 'nr_node_for_each_safe' + - 'of_for_each_phandle' + - 'of_property_for_each_string' + - 'of_property_for_each_u32' + - 'pci_bus_for_each_resource' + - 'pcm_for_each_format' + - 'ping_portaddr_for_each_entry' + - 'plist_for_each' + - 'plist_for_each_continue' + - 'plist_for_each_entry' + - 'plist_for_each_entry_continue' + - 'plist_for_each_entry_safe' + - 'plist_for_each_safe' + - 'pnp_for_each_card' + - 'pnp_for_each_dev' + - 'protocol_for_each_card' + - 'protocol_for_each_dev' + - 'queue_for_each_hw_ctx' + - 'radix_tree_for_each_slot' + - 'radix_tree_for_each_tagged' + - 'rbtree_postorder_for_each_entry_safe' + - 'rdma_for_each_block' + - 'rdma_for_each_port' + - 'rdma_umem_for_each_dma_block' + - 'resource_list_for_each_entry' + - 'resource_list_for_each_entry_safe' + - 'rhl_for_each_entry_rcu' + - 'rhl_for_each_rcu' + - 'rht_for_each' + - 'rht_for_each_entry' + - 'rht_for_each_entry_from' + - 'rht_for_each_entry_rcu' + - 'rht_for_each_entry_rcu_from' + - 'rht_for_each_entry_safe' + - 'rht_for_each_from' + - 'rht_for_each_rcu' + - 'rht_for_each_rcu_from' + - '__rq_for_each_bio' + - 'rq_for_each_bvec' + - 'rq_for_each_segment' + - 'scsi_for_each_prot_sg' + - 'scsi_for_each_sg' + - 'sctp_for_each_hentry' + - 'sctp_skb_for_each' + - 'shdma_for_each_chan' + - '__shost_for_each_device' + - 'shost_for_each_device' + - 'sk_for_each' + - 'sk_for_each_bound' + - 'sk_for_each_entry_offset_rcu' + - 'sk_for_each_from' + - 'sk_for_each_rcu' + - 'sk_for_each_safe' + - 'sk_nulls_for_each' + - 'sk_nulls_for_each_from' + - 'sk_nulls_for_each_rcu' + - 'snd_array_for_each' + - 'snd_pcm_group_for_each_entry' + - 'snd_soc_dapm_widget_for_each_path' + - 'snd_soc_dapm_widget_for_each_path_safe' + - 'snd_soc_dapm_widget_for_each_sink_path' + - 'snd_soc_dapm_widget_for_each_source_path' + - 'tb_property_for_each' + - 'tcf_exts_for_each_action' + - 'udp_portaddr_for_each_entry' + - 'udp_portaddr_for_each_entry_rcu' + - 'usb_hub_for_each_child' + - 'v4l2_device_for_each_subdev' + - 'v4l2_m2m_for_each_dst_buf' + - 'v4l2_m2m_for_each_dst_buf_safe' + - 'v4l2_m2m_for_each_src_buf' + - 'v4l2_m2m_for_each_src_buf_safe' + - 'virtio_device_for_each_vq' + - 'while_for_each_ftrace_op' + - 'xa_for_each' + - 'xa_for_each_marked' + - 'xa_for_each_range' + - 'xa_for_each_start' + - 'xas_for_each' + - 'xas_for_each_conflict' + - 'xas_for_each_marked' + - 'xbc_array_for_each_value' + - 'xbc_for_each_key_value' + - 'xbc_node_for_each_array_value' + - 'xbc_node_for_each_child' + - 'xbc_node_for_each_key_value' + - 'zorro_for_each_dev' + +#IncludeBlocks: Preserve # Unknown to clang-format-5.0 +IncludeCategories: + - Regex: '.*' + Priority: 1 +IncludeIsMainRegex: '(Test)?$' +IndentCaseLabels: false +#IndentPPDirectives: None # Unknown to clang-format-5.0 +IndentWidth: 4 +IndentWrappedFunctionNames: false +JavaScriptQuotes: Leave +JavaScriptWrapImports: true +KeepEmptyLinesAtTheStartOfBlocks: false +MacroBlockBegin: '' +MacroBlockEnd: '' +MaxEmptyLinesToKeep: 1 +NamespaceIndentation: None +#ObjCBinPackProtocolList: Auto # Unknown to clang-format-5.0 +ObjCBlockIndentWidth: 4 +ObjCSpaceAfterProperty: true +ObjCSpaceBeforeProtocolList: true + +# Taken from git's rules +#PenaltyBreakAssignment: 10 # Unknown to clang-format-4.0 +PenaltyBreakBeforeFirstCallParameter: 30 +PenaltyBreakComment: 10 +PenaltyBreakFirstLessLess: 0 +PenaltyBreakString: 10 +PenaltyExcessCharacter: 100 +PenaltyReturnTypeOnItsOwnLine: 60 + +PointerAlignment: Right +ReflowComments: false +SortIncludes: false +#SortUsingDeclarations: false # Unknown to clang-format-4.0 +SpaceAfterCStyleCast: false +SpaceAfterTemplateKeyword: true +SpaceBeforeAssignmentOperators: true +#SpaceBeforeCtorInitializerColon: true # Unknown to clang-format-5.0 +#SpaceBeforeInheritanceColon: true # Unknown to clang-format-5.0 +SpaceBeforeParens: ControlStatements +#SpaceBeforeRangeBasedForLoopColon: true # Unknown to clang-format-5.0 +SpaceInEmptyParentheses: false +SpacesBeforeTrailingComments: 1 +SpacesInAngles: false +SpacesInContainerLiterals: false +SpacesInCStyleCastParentheses: false +SpacesInParentheses: false +SpacesInSquareBrackets: false +Standard: Cpp03 +TabWidth: 4 +UseTab: Never +... diff --git a/kernel/.clangd b/kernel/.clangd new file mode 100644 index 0000000..5efbb7e --- /dev/null +++ b/kernel/.clangd @@ -0,0 +1,4 @@ +Diagnostics: + UnusedIncludes: Strict + ClangTidy: + Remove: bugprone-sizeof-expression diff --git a/kernel/.gitignore b/kernel/.gitignore new file mode 100644 index 0000000..20d68ae --- /dev/null +++ b/kernel/.gitignore @@ -0,0 +1,22 @@ +.cache/ +.thinlto-cache/ +compile_commands.json +*.ko +*.o +*.mod +*.lds +*.mod.o +.*.o* +.*.mod* +*.ko* +*.mod.c +*.symvers* +*.order +.*.ko.cmd +.tmp_versions/ +libs/ +obj/ + +CLAUDE.md +.ddk-version +.vscode/settings.json \ No newline at end of file diff --git a/kernel/.vscode/c_cpp_properties.json b/kernel/.vscode/c_cpp_properties.json new file mode 100644 index 0000000..f661370 --- /dev/null +++ b/kernel/.vscode/c_cpp_properties.json @@ -0,0 +1,11 @@ +{ + "configurations": [ + { + "name": "Linux", + "cStandard": "c11", + "intelliSenseMode": "gcc-arm64", + "compileCommands": "${workspaceFolder}/compile_commands.json" + } + ], + "version": 4 +} \ No newline at end of file diff --git a/kernel/.vscode/generate_compdb.py b/kernel/.vscode/generate_compdb.py new file mode 100644 index 0000000..8866913 --- /dev/null +++ b/kernel/.vscode/generate_compdb.py @@ -0,0 +1,92 @@ +#!/usr/bin/env python3 + +from __future__ import print_function, division + +import argparse +import fnmatch +import functools +import json +import math +import multiprocessing +import os +import re +import sys + + +CMD_VAR_RE = re.compile(r'^\s*(?:saved)?cmd_(\S+)\s*:=\s*(.+)\s*$', re.MULTILINE) +SOURCE_VAR_RE = re.compile(r'^\s*source_(\S+)\s*:=\s*(.+)\s*$', re.MULTILINE) + + +def print_progress_bar(progress): + progress_bar = '[' + '|' * int(50 * progress) + '-' * int(50 * (1.0 - progress)) + ']' + print('\r', progress_bar, "{0:.1%}".format(progress), end='\r', file=sys.stderr) + + +def parse_cmd_file(out_dir, cmdfile_path): + with open(cmdfile_path, 'r') as cmdfile: + cmdfile_content = cmdfile.read() + + commands = { match.group(1): match.group(2) for match in CMD_VAR_RE.finditer(cmdfile_content) } + sources = { match.group(1): match.group(2) for match in SOURCE_VAR_RE.finditer(cmdfile_content) } + + return [{ + 'directory': out_dir, + 'command': commands[o_file_name], + 'file': source, + 'output': o_file_name + } for o_file_name, source in sources.items()] + + +def gen_compile_commands(cmd_file_search_path, out_dir): + print("Building *.o.cmd file list...", file=sys.stderr) + + out_dir = os.path.abspath(out_dir) + + if not cmd_file_search_path: + cmd_file_search_path = [out_dir] + + cmd_files = [] + for search_path in cmd_file_search_path: + if (os.path.isdir(search_path)): + for cur_dir, subdir, files in os.walk(search_path): + cmd_files.extend(os.path.join(cur_dir, cmdfile_name) for cmdfile_name in fnmatch.filter(files, '*.o.cmd')) + else: + cmd_files.extend(search_path) + + if not cmd_files: + print("No *.o.cmd files found in", ", ".join(cmd_file_search_path), file=sys.stderr) + return + + print("Parsing *.o.cmd files...", file=sys.stderr) + + n_processed = 0 + print_progress_bar(0) + + compdb = [] + pool = multiprocessing.Pool() + try: + for compdb_chunk in pool.imap_unordered(functools.partial(parse_cmd_file, out_dir), cmd_files, chunksize=int(math.sqrt(len(cmd_files)))): + compdb.extend(compdb_chunk) + n_processed += 1 + print_progress_bar(n_processed / len(cmd_files)) + + finally: + pool.terminate() + pool.join() + + print(file=sys.stderr) + print("Writing compile_commands.json...", file=sys.stderr) + + with open('compile_commands.json', 'w') as compdb_file: + json.dump(compdb, compdb_file, indent=1) + + +def main(): + cmd_parser = argparse.ArgumentParser() + cmd_parser.add_argument('-O', '--out-dir', type=str, default=os.getcwd(), help="Build output directory") + cmd_parser.add_argument('cmd_file_search_path', nargs='*', help="*.cmd file search path") + gen_compile_commands(**vars(cmd_parser.parse_args())) + + +if __name__ == '__main__': + main() diff --git a/kernel/.vscode/tasks.json b/kernel/.vscode/tasks.json new file mode 100644 index 0000000..4ed9adb --- /dev/null +++ b/kernel/.vscode/tasks.json @@ -0,0 +1,16 @@ +{ + // See https://go.microsoft.com/fwlink/?LinkId=733558 + // for the documentation about the tasks.json format + "version": "2.0.0", + "tasks": [ + { + "label": "Generate compile_commands.json", + "type": "process", + "command": "python", + "args": [ + "${workspaceRoot}/.vscode/generate_compdb.py" + ], + "problemMatcher": [] + } + ] +} \ No newline at end of file diff --git a/kernel/Kconfig b/kernel/Kconfig new file mode 100644 index 0000000..fd5e0c1 --- /dev/null +++ b/kernel/Kconfig @@ -0,0 +1,42 @@ +menu "KernelSU" + +config KSU + tristate "KernelSU function support" + default y + help + Enable kernel-level root privileges on Android System. + To compile as a module, choose M here: the + module will be called kernelsu. + +config KSU_DEBUG + bool "KernelSU debug mode" + depends on KSU + default n + help + Enable KernelSU debug mode. + +config KSU_MANUAL_SU + bool "Use manual su" + depends on KSU + default y + help + Use manual su and authorize the corresponding command line and application via prctl + +config KPM + bool "Enable SukiSU KPM" + depends on KSU && 64BIT + default n + help + Enabling this option will activate the KPM feature of SukiSU. + This option is suitable for scenarios where you need to force KPM to be enabled. + but it may affect system stability. + select KALLSYMS + select KALLSYMS_ALL + +config KSU_MANUAL_HOOK + bool "Hook KernelSU manually" + depends on KSU != m + help + If enabled, Hook required KernelSU syscalls with manually-patched function. + +endmenu diff --git a/kernel/LICENSE b/kernel/LICENSE new file mode 100644 index 0000000..d159169 --- /dev/null +++ b/kernel/LICENSE @@ -0,0 +1,339 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. diff --git a/kernel/Makefile b/kernel/Makefile new file mode 100644 index 0000000..8b246bd --- /dev/null +++ b/kernel/Makefile @@ -0,0 +1,172 @@ +kernelsu-objs := ksu.o +kernelsu-objs += allowlist.o +kernelsu-objs += app_profile.o +kernelsu-objs += dynamic_manager.o +kernelsu-objs += apk_sign.o +kernelsu-objs += sucompat.o +kernelsu-objs += syscall_hook_manager.o +kernelsu-objs += throne_tracker.o +kernelsu-objs += pkg_observer.o +kernelsu-objs += throne_tracker.o +kernelsu-objs += umount_manager.o +kernelsu-objs += setuid_hook.o +kernelsu-objs += kernel_umount.o +kernelsu-objs += supercalls.o +kernelsu-objs += feature.o +kernelsu-objs += ksud.o +kernelsu-objs += embed_ksud.o +kernelsu-objs += seccomp_cache.o +kernelsu-objs += file_wrapper.o +kernelsu-objs += throne_comm.o +kernelsu-objs += sulog.o + +ifeq ($(CONFIG_KSU_MANUAL_SU), y) +ccflags-y += -DCONFIG_KSU_MANUAL_SU +kernelsu-objs += manual_su.o +endif + +kernelsu-objs += selinux/selinux.o +kernelsu-objs += selinux/sepolicy.o +kernelsu-objs += selinux/rules.o +ccflags-y += -I$(srctree)/security/selinux -I$(srctree)/security/selinux/include +ccflags-y += -I$(objtree)/security/selinux -include $(srctree)/include/uapi/asm-generic/errno.h + +obj-$(CONFIG_KSU) += kernelsu.o + +obj-$(CONFIG_KPM) += kpm/ + +REPO_OWNER := SukiSU-Ultra +REPO_NAME := SukiSU-Ultra +REPO_BRANCH := main +KSU_VERSION_API := 4.0.0 + +GIT_BIN := /usr/bin/env PATH="$$PATH":/usr/bin:/usr/local/bin git +CURL_BIN := /usr/bin/env PATH="$$PATH":/usr/bin:/usr/local/bin curl + +KDIR := $(KDIR) +MDIR := $(realpath $(dir $(abspath $(lastword $(MAKEFILE_LIST))))) + +ifneq ($(KDIR),) +$(info -- KDIR: $(KDIR)) +$(info -- MDIR: $(MDIR)) +endif + +KSU_GITHUB_VERSION := $(shell $(CURL_BIN) -s "https://api.github.com/repos/$(REPO_OWNER)/$(REPO_NAME)/releases/latest" | grep '"tag_name":' | sed -E 's/.*"v([^"]+)".*/\1/') +KSU_GITHUB_VERSION_COMMIT := $(shell $(CURL_BIN) -sI "https://api.github.com/repos/$(REPO_OWNER)/$(REPO_NAME)/commits?sha=$(REPO_BRANCH)&per_page=1" | grep -i "link:" | sed -n 's/.*page=\([0-9]*\)>; rel="last".*/\1/p') + +ifeq ($(findstring $(srctree),$(src)),$(srctree)) + KSU_SRC := $(src) +else + KSU_SRC := $(srctree)/$(src) +endif + +ifneq ($(shell test -e $(KSU_SRC)/../.git && echo "in-tree"),in-tree) + KSU_SRC := $(MDIR) +endif + +LOCAL_GIT_EXISTS := $(shell test -e $(KSU_SRC)/../.git && echo 1 || echo 0) + +define get_ksu_version_full +v$1-$(shell cd $(KSU_SRC); $(GIT_BIN) rev-parse --short=8 HEAD)@$(shell cd $(KSU_SRC); $(GIT_BIN) rev-parse --abbrev-ref HEAD) +endef + +ifeq ($(KSU_GITHUB_VERSION_COMMIT),) + ifeq ($(LOCAL_GIT_EXISTS),1) + $(shell cd $(KSU_SRC); [ -f ../.git/shallow ] && $(GIT_BIN) fetch --unshallow) + KSU_LOCAL_VERSION := $(shell cd $(KSU_SRC); $(GIT_BIN) rev-list --count $(REPO_BRANCH)) + KSU_VERSION := $(shell expr 40000 + $(KSU_LOCAL_VERSION) - 2815) + $(info -- $(REPO_NAME) version (local .git): $(KSU_VERSION)) + else + KSU_VERSION := 13000 + $(warning -- Could not fetch version online or via local .git! Using fallback version: $(KSU_VERSION)) + endif +else + KSU_VERSION := $(shell expr 40000 + $(KSU_GITHUB_VERSION_COMMIT) - 2815) + $(info -- $(REPO_NAME) version (GitHub): $(KSU_VERSION)) +endif + +ifeq ($(KSU_GITHUB_VERSION),) + ifeq ($(LOCAL_GIT_EXISTS),1) + $(shell cd $(KSU_SRC); [ -f ../.git/shallow ] && $(GIT_BIN) fetch --unshallow) + KSU_VERSION_FULL := $(call get_ksu_version_full,$(KSU_VERSION_API)) + $(info -- $(REPO_NAME) version (local .git): $(KSU_VERSION_FULL)) + $(info -- $(REPO_NAME) Formatted version (local .git): $(KSU_VERSION)) + else + KSU_VERSION_FULL := v$(KSU_VERSION_API)-$(REPO_NAME)-unknown@unknown + $(warning -- $(REPO_NAME) version: $(KSU_VERSION_FULL)) + endif +else + $(shell cd $(KSU_SRC); [ -f ../.git/shallow ] && $(GIT_BIN) fetch --unshallow) + KSU_VERSION_FULL := $(call get_ksu_version_full,$(KSU_GITHUB_VERSION)) + $(info -- $(REPO_NAME) version (Github): $(KSU_VERSION_FULL)) +endif + +ccflags-y += -DKSU_VERSION=$(KSU_VERSION) +ccflags-y += -DKSU_VERSION_FULL=\"$(KSU_VERSION_FULL)\" + +# Custom Signs +ifdef KSU_EXPECTED_SIZE +ccflags-y += -DEXPECTED_SIZE=$(KSU_EXPECTED_SIZE) +$(info -- Custom KernelSU Manager signature size: $(KSU_EXPECTED_SIZE)) +endif + +ifdef KSU_EXPECTED_HASH +ccflags-y += -DEXPECTED_HASH=\"$(KSU_EXPECTED_HASH)\" +$(info -- Custom KernelSU Manager signature hash: $(KSU_EXPECTED_HASH)) +endif + +ifdef KSU_MANAGER_PACKAGE +ccflags-y += -DKSU_MANAGER_PACKAGE=\"$(KSU_MANAGER_PACKAGE)\" +$(info -- SukiSU Manager package name: $(KSU_MANAGER_PACKAGE)) +endif + +ifeq ($(CONFIG_KSU_MANUAL_HOOK), y) +ccflags-y += -DKSU_MANUAL_HOOK +$(info -- SukiSU: KSU_MANUAL_HOOK Temporarily discontinued)) +else +ccflags-y += -DKSU_KPROBES_HOOK +ccflags-y += -DKSU_TP_HOOK +$(info -- SukiSU: KSU_TRACEPOINT_HOOK) +endif + +KERNEL_VERSION := $(VERSION).$(PATCHLEVEL) +KERNEL_TYPE := Non-GKI +# Check for GKI 2.0 (5.10+ or 6.x+) +ifneq ($(shell test \( $(VERSION) -ge 5 -a $(PATCHLEVEL) -ge 10 \) -o $(VERSION) -ge 6; echo $$?),0) +# Check for GKI 1.0 (5.4) +ifeq ($(shell test $(VERSION)-$(PATCHLEVEL) = 5-4; echo $$?),0) +KERNEL_TYPE := GKI 1.0 +endif +else +KERNEL_TYPE := GKI 2.0 +endif +$(info -- KERNEL_VERSION: $(KERNEL_VERSION)) +$(info -- KERNEL_TYPE: $(KERNEL_TYPE)) + +ifeq ($(CONFIG_KPM), y) +$(info -- KPM is enabled) +else +$(info -- KPM is disabled) +endif + +# Check new vfs_getattr() +ifeq ($(shell grep -A1 "^int vfs_getattr" $(srctree)/fs/stat.c | grep -q "query_flags" ; echo $$?),0) +ccflags-y += -DKSU_HAS_NEW_VFS_GETATTR +endif + +# Function proc_ops check +ifeq ($(shell grep -q "struct proc_ops " $(srctree)/include/linux/proc_fs.h; echo $$?),0) +ccflags-y += -DKSU_COMPAT_HAS_PROC_OPS +endif + +ccflags-y += -Wno-strict-prototypes -Wno-int-conversion -Wno-gcc-compat -Wno-missing-prototypes +ccflags-y += -Wno-declaration-after-statement -Wno-unused-function -Wno-unused-variable + +all: + make -C $(KDIR) M=$(MDIR) modules +compdb: + python3 $(MDIR)/.vscode/generate_compdb.py -O $(KDIR) $(MDIR) +clean: + make -C $(KDIR) M=$(MDIR) clean + +# Keep a new line here!! Because someone may append config diff --git a/kernel/allowlist.c b/kernel/allowlist.c new file mode 100644 index 0000000..c3f7a5b --- /dev/null +++ b/kernel/allowlist.c @@ -0,0 +1,631 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 14, 0) +#include +#endif + +#include "klog.h" // IWYU pragma: keep +#include "ksud.h" +#include "selinux/selinux.h" +#include "allowlist.h" +#include "manager.h" +#include "syscall_hook_manager.h" + +#define FILE_MAGIC 0x7f4b5355 // ' KSU', u32 +#define FILE_FORMAT_VERSION 3 // u32 + +#define KSU_APP_PROFILE_PRESERVE_UID 9999 // NOBODY_UID +#define KSU_DEFAULT_SELINUX_DOMAIN "u:r:su:s0" + +static DEFINE_MUTEX(allowlist_mutex); + +// default profiles, these may be used frequently, so we cache it +static struct root_profile default_root_profile; +static struct non_root_profile default_non_root_profile; + +void persistent_allow_list(void); + +static int allow_list_arr[PAGE_SIZE / sizeof(int)] __read_mostly + __aligned(PAGE_SIZE); +static int allow_list_pointer __read_mostly = 0; + +static void remove_uid_from_arr(uid_t uid) +{ + int *temp_arr; + int i, j; + + if (allow_list_pointer == 0) + return; + + temp_arr = kzalloc(sizeof(allow_list_arr), GFP_KERNEL); + if (temp_arr == NULL) { + pr_err("%s: unable to allocate memory\n", __func__); + return; + } + + for (i = j = 0; i < allow_list_pointer; i++) { + if (allow_list_arr[i] == uid) + continue; + temp_arr[j++] = allow_list_arr[i]; + } + + allow_list_pointer = j; + + for (; j < ARRAY_SIZE(allow_list_arr); j++) + temp_arr[j] = -1; + + memcpy(&allow_list_arr, temp_arr, PAGE_SIZE); + kfree(temp_arr); +} + +static void init_default_profiles(void) +{ + kernel_cap_t full_cap = CAP_FULL_SET; + + default_root_profile.uid = 0; + default_root_profile.gid = 0; + default_root_profile.groups_count = 1; + default_root_profile.groups[0] = 0; + memcpy(&default_root_profile.capabilities.effective, &full_cap, + sizeof(default_root_profile.capabilities.effective)); + default_root_profile.namespaces = 0; + strcpy(default_root_profile.selinux_domain, KSU_DEFAULT_SELINUX_DOMAIN); + + // This means that we will umount modules by default! + default_non_root_profile.umount_modules = true; +} + +struct perm_data { + struct list_head list; + struct app_profile profile; +}; + +static struct list_head allow_list; + +static uint8_t allow_list_bitmap[PAGE_SIZE] __read_mostly __aligned(PAGE_SIZE); +#define BITMAP_UID_MAX ((sizeof(allow_list_bitmap) * BITS_PER_BYTE) - 1) + +#define KERNEL_SU_ALLOWLIST "/data/adb/ksu/.allowlist" + +void ksu_show_allow_list(void) +{ + struct perm_data *p = NULL; + struct list_head *pos = NULL; + pr_info("ksu_show_allow_list\n"); + list_for_each (pos, &allow_list) { + p = list_entry(pos, struct perm_data, list); + pr_info("uid :%d, allow: %d\n", p->profile.current_uid, + p->profile.allow_su); + } +} + +#ifdef CONFIG_KSU_DEBUG +static void ksu_grant_root_to_shell(void) +{ + struct app_profile profile = { + .version = KSU_APP_PROFILE_VER, + .allow_su = true, + .current_uid = 2000, + }; + strcpy(profile.key, "com.android.shell"); + strcpy(profile.rp_config.profile.selinux_domain, + KSU_DEFAULT_SELINUX_DOMAIN); + ksu_set_app_profile(&profile, false); +} +#endif + +bool ksu_get_app_profile(struct app_profile *profile) +{ + struct perm_data *p = NULL; + struct list_head *pos = NULL; + bool found = false; + + list_for_each (pos, &allow_list) { + p = list_entry(pos, struct perm_data, list); + bool uid_match = profile->current_uid == p->profile.current_uid; + if (uid_match) { + // found it, override it with ours + memcpy(profile, &p->profile, sizeof(*profile)); + found = true; + goto exit; + } + } + +exit: + return found; +} + +static inline bool forbid_system_uid(uid_t uid) +{ +#define SHELL_UID 2000 +#define SYSTEM_UID 1000 + return uid < SHELL_UID && uid != SYSTEM_UID; +} + +static bool profile_valid(struct app_profile *profile) +{ + if (!profile) { + return false; + } + + if (profile->version < KSU_APP_PROFILE_VER) { + pr_info("Unsupported profile version: %d\n", profile->version); + return false; + } + + if (profile->allow_su) { + if (profile->rp_config.profile.groups_count > KSU_MAX_GROUPS) { + return false; + } + + if (strlen(profile->rp_config.profile.selinux_domain) == 0) { + return false; + } + } + + return true; +} + +bool ksu_set_app_profile(struct app_profile *profile, bool persist) +{ + struct perm_data *p = NULL; + struct list_head *pos = NULL; + bool result = false; + + if (!profile_valid(profile)) { + pr_err("Failed to set app profile: invalid profile!\n"); + return false; + } + + list_for_each (pos, &allow_list) { + p = list_entry(pos, struct perm_data, list); + // both uid and package must match, otherwise it will break multiple package with different user id + if (profile->current_uid == p->profile.current_uid && + !strcmp(profile->key, p->profile.key)) { + // found it, just override it all! + memcpy(&p->profile, profile, sizeof(*profile)); + result = true; + goto out; + } + } + + // not found, alloc a new node! + p = (struct perm_data *)kzalloc(sizeof(struct perm_data), GFP_KERNEL); + if (!p) { + pr_err("ksu_set_app_profile alloc failed\n"); + return false; + } + + memcpy(&p->profile, profile, sizeof(*profile)); + if (profile->allow_su) { + pr_info("set root profile, key: %s, uid: %d, gid: %d, context: %s\n", + profile->key, profile->current_uid, + profile->rp_config.profile.gid, + profile->rp_config.profile.selinux_domain); + } else { + pr_info("set app profile, key: %s, uid: %d, umount modules: %d\n", + profile->key, profile->current_uid, + profile->nrp_config.profile.umount_modules); + } + list_add_tail(&p->list, &allow_list); + +out: + if (profile->current_uid <= BITMAP_UID_MAX) { + if (profile->allow_su) + allow_list_bitmap[profile->current_uid / BITS_PER_BYTE] |= + 1 << (profile->current_uid % BITS_PER_BYTE); + else + allow_list_bitmap[profile->current_uid / BITS_PER_BYTE] &= + ~(1 << (profile->current_uid % BITS_PER_BYTE)); + } else { + if (profile->allow_su) { + /* + * 1024 apps with uid higher than BITMAP_UID_MAX + * registered to request superuser? + */ + if (allow_list_pointer >= ARRAY_SIZE(allow_list_arr)) { + pr_err("too many apps registered\n"); + WARN_ON(1); + return false; + } + allow_list_arr[allow_list_pointer++] = profile->current_uid; + } else { + remove_uid_from_arr(profile->current_uid); + } + } + result = true; + + // check if the default profiles is changed, cache it to a single struct to accelerate access. + if (unlikely(!strcmp(profile->key, "$"))) { + // set default non root profile + memcpy(&default_non_root_profile, &profile->nrp_config.profile, + sizeof(default_non_root_profile)); + } + + if (unlikely(!strcmp(profile->key, "#"))) { + // set default root profile + memcpy(&default_root_profile, &profile->rp_config.profile, + sizeof(default_root_profile)); + } + + if (persist) { + persistent_allow_list(); + // FIXME: use a new flag + ksu_mark_running_process(); + } + + return result; +} + +bool __ksu_is_allow_uid(uid_t uid) +{ + int i; + + if (forbid_system_uid(uid)) { + // do not bother going through the list if it's system + return false; + } + + if (likely(ksu_is_manager_uid_valid()) && + unlikely(ksu_get_manager_uid() == uid)) { + // manager is always allowed! + return true; + } + + if (likely(uid <= BITMAP_UID_MAX)) { + return !!(allow_list_bitmap[uid / BITS_PER_BYTE] & + (1 << (uid % BITS_PER_BYTE))); + } else { + for (i = 0; i < allow_list_pointer; i++) { + if (allow_list_arr[i] == uid) + return true; + } + } + + return false; +} + +bool __ksu_is_allow_uid_for_current(uid_t uid) +{ + if (unlikely(uid == 0)) { + // already root, but only allow our domain. + return is_ksu_domain(); + } + return __ksu_is_allow_uid(uid); +} + +bool ksu_uid_should_umount(uid_t uid) +{ + struct app_profile profile = { .current_uid = uid }; + if (likely(ksu_is_manager_uid_valid()) && + unlikely(ksu_get_manager_uid() == uid)) { + // we should not umount on manager! + return false; + } + bool found = ksu_get_app_profile(&profile); + if (!found) { + // no app profile found, it must be non root app + return default_non_root_profile.umount_modules; + } + if (profile.allow_su) { + // if found and it is granted to su, we shouldn't umount for it + return false; + } else { + // found an app profile + if (profile.nrp_config.use_default) { + return default_non_root_profile.umount_modules; + } else { + return profile.nrp_config.profile.umount_modules; + } + } +} + +struct root_profile *ksu_get_root_profile(uid_t uid) +{ + struct perm_data *p = NULL; + struct list_head *pos = NULL; + + list_for_each (pos, &allow_list) { + p = list_entry(pos, struct perm_data, list); + if (uid == p->profile.current_uid && p->profile.allow_su) { + if (!p->profile.rp_config.use_default) { + return &p->profile.rp_config.profile; + } + } + } + + // use default profile + return &default_root_profile; +} + +bool ksu_get_allow_list(int *array, int *length, bool allow) +{ + struct perm_data *p = NULL; + struct list_head *pos = NULL; + int i = 0; + list_for_each (pos, &allow_list) { + p = list_entry(pos, struct perm_data, list); + // pr_info("get_allow_list uid: %d allow: %d\n", p->uid, p->allow); + if (p->profile.allow_su == allow) { + array[i++] = p->profile.current_uid; + } + } + *length = i; + + return true; +} + +static void do_persistent_allow_list(struct callback_head *_cb) +{ + u32 magic = FILE_MAGIC; + u32 version = FILE_FORMAT_VERSION; + struct perm_data *p = NULL; + struct list_head *pos = NULL; + loff_t off = 0; + + mutex_lock(&allowlist_mutex); + struct file *fp = + filp_open(KERNEL_SU_ALLOWLIST, O_WRONLY | O_CREAT | O_TRUNC, 0644); + if (IS_ERR(fp)) { + pr_err("save_allow_list create file failed: %ld\n", PTR_ERR(fp)); + goto unlock; + } + + // store magic and version + if (kernel_write(fp, &magic, sizeof(magic), &off) != sizeof(magic)) { + pr_err("save_allow_list write magic failed.\n"); + goto close_file; + } + + if (kernel_write(fp, &version, sizeof(version), &off) != sizeof(version)) { + pr_err("save_allow_list write version failed.\n"); + goto close_file; + } + + list_for_each (pos, &allow_list) { + p = list_entry(pos, struct perm_data, list); + pr_info("save allow list, name: %s uid :%d, allow: %d\n", + p->profile.key, p->profile.current_uid, p->profile.allow_su); + + kernel_write(fp, &p->profile, sizeof(p->profile), &off); + } + +close_file: + filp_close(fp, 0); +unlock: + mutex_unlock(&allowlist_mutex); + kfree(_cb); +} + +void persistent_allow_list() +{ + struct task_struct *tsk; + + tsk = get_pid_task(find_vpid(1), PIDTYPE_PID); + if (!tsk) { + pr_err("save_allow_list find init task err\n"); + return; + } + + struct callback_head *cb = + kzalloc(sizeof(struct callback_head), GFP_KERNEL); + if (!cb) { + pr_err("save_allow_list alloc cb err\b"); + goto put_task; + } + cb->func = do_persistent_allow_list; + task_work_add(tsk, cb, TWA_RESUME); + +put_task: + put_task_struct(tsk); +} + +void ksu_load_allow_list() +{ + loff_t off = 0; + ssize_t ret = 0; + struct file *fp = NULL; + u32 magic; + u32 version; + +#ifdef CONFIG_KSU_DEBUG + // always allow adb shell by default + ksu_grant_root_to_shell(); +#endif + + // load allowlist now! + fp = filp_open(KERNEL_SU_ALLOWLIST, O_RDONLY, 0); + if (IS_ERR(fp)) { + pr_err("load_allow_list open file failed: %ld\n", PTR_ERR(fp)); + return; + } + + // verify magic + if (kernel_read(fp, &magic, sizeof(magic), &off) != sizeof(magic) || + magic != FILE_MAGIC) { + pr_err("allowlist file invalid: %d!\n", magic); + goto exit; + } + + if (kernel_read(fp, &version, sizeof(version), &off) != sizeof(version)) { + pr_err("allowlist read version: %d failed\n", version); + goto exit; + } + + pr_info("allowlist version: %d\n", version); + + while (true) { + struct app_profile profile; + + ret = kernel_read(fp, &profile, sizeof(profile), &off); + + if (ret <= 0) { + pr_info("load_allow_list read err: %zd\n", ret); + break; + } + + pr_info("load_allow_uid, name: %s, uid: %d, allow: %d\n", profile.key, + profile.current_uid, profile.allow_su); + ksu_set_app_profile(&profile, false); + } + +exit: + ksu_show_allow_list(); + filp_close(fp, 0); +} + +void ksu_prune_allowlist(bool (*is_uid_valid)(uid_t, char *, void *), + void *data) +{ + struct perm_data *np = NULL; + struct perm_data *n = NULL; + + if (!ksu_boot_completed) { + pr_info("boot not completed, skip prune\n"); + return; + } + + bool modified = false; + // TODO: use RCU! + mutex_lock(&allowlist_mutex); + list_for_each_entry_safe (np, n, &allow_list, list) { + uid_t uid = np->profile.current_uid; + char *package = np->profile.key; + // we use this uid for special cases, don't prune it! + bool is_preserved_uid = uid == KSU_APP_PROFILE_PRESERVE_UID; + if (!is_preserved_uid && !is_uid_valid(uid, package, data)) { + modified = true; + pr_info("prune uid: %d, package: %s\n", uid, package); + list_del(&np->list); + if (likely(uid <= BITMAP_UID_MAX)) { + allow_list_bitmap[uid / BITS_PER_BYTE] &= + ~(1 << (uid % BITS_PER_BYTE)); + } + remove_uid_from_arr(uid); + smp_mb(); + kfree(np); + } + } + mutex_unlock(&allowlist_mutex); + + if (modified) { + persistent_allow_list(); + } +} + +void ksu_allowlist_init(void) +{ + int i; + + BUILD_BUG_ON(sizeof(allow_list_bitmap) != PAGE_SIZE); + BUILD_BUG_ON(sizeof(allow_list_arr) != PAGE_SIZE); + + for (i = 0; i < ARRAY_SIZE(allow_list_arr); i++) + allow_list_arr[i] = -1; + + INIT_LIST_HEAD(&allow_list); + + init_default_profiles(); +} + +void ksu_allowlist_exit(void) +{ + struct perm_data *np = NULL; + struct perm_data *n = NULL; + + // free allowlist + mutex_lock(&allowlist_mutex); + list_for_each_entry_safe (np, n, &allow_list, list) { + list_del(&np->list); + kfree(np); + } + mutex_unlock(&allowlist_mutex); +} + +#ifdef CONFIG_KSU_MANUAL_SU +bool ksu_temp_grant_root_once(uid_t uid) +{ + struct app_profile profile = { + .version = KSU_APP_PROFILE_VER, + .allow_su = true, + .current_uid = uid, + }; + + const char *default_key = "com.temp.once"; + + struct perm_data *p = NULL; + struct list_head *pos = NULL; + bool found = false; + + list_for_each (pos, &allow_list) { + p = list_entry(pos, struct perm_data, list); + if (p->profile.current_uid == uid) { + strcpy(profile.key, p->profile.key); + found = true; + break; + } + } + + if (!found) { + strcpy(profile.key, default_key); + } + + profile.rp_config.profile.uid = default_root_profile.uid; + profile.rp_config.profile.gid = default_root_profile.gid; + profile.rp_config.profile.groups_count = default_root_profile.groups_count; + memcpy(profile.rp_config.profile.groups, default_root_profile.groups, sizeof(default_root_profile.groups)); + memcpy(&profile.rp_config.profile.capabilities, &default_root_profile.capabilities, sizeof(default_root_profile.capabilities)); + profile.rp_config.profile.namespaces = default_root_profile.namespaces; + strcpy(profile.rp_config.profile.selinux_domain, default_root_profile.selinux_domain); + + bool ok = ksu_set_app_profile(&profile, false); + if (ok) + pr_info("pending_root: UID=%d granted and persisted\n", uid); + return ok; +} + +void ksu_temp_revoke_root_once(uid_t uid) +{ + struct app_profile profile = { + .version = KSU_APP_PROFILE_VER, + .allow_su = false, + .current_uid = uid, + }; + + const char *default_key = "com.temp.once"; + + struct perm_data *p = NULL; + struct list_head *pos = NULL; + bool found = false; + + list_for_each (pos, &allow_list) { + p = list_entry(pos, struct perm_data, list); + if (p->profile.current_uid == uid) { + strcpy(profile.key, p->profile.key); + found = true; + break; + } + } + + if (!found) { + strcpy(profile.key, default_key); + } + + profile.nrp_config.profile.umount_modules = default_non_root_profile.umount_modules; + strcpy(profile.rp_config.profile.selinux_domain, KSU_DEFAULT_SELINUX_DOMAIN); + + ksu_set_app_profile(&profile, false); + persistent_allow_list(); + pr_info("pending_root: UID=%d removed and persist updated\n", uid); +} +#endif \ No newline at end of file diff --git a/kernel/allowlist.h b/kernel/allowlist.h new file mode 100644 index 0000000..4bac8c3 --- /dev/null +++ b/kernel/allowlist.h @@ -0,0 +1,49 @@ +#ifndef __KSU_H_ALLOWLIST +#define __KSU_H_ALLOWLIST + +#include +#include +#include "app_profile.h" + +#define PER_USER_RANGE 100000 +#define FIRST_APPLICATION_UID 10000 +#define LAST_APPLICATION_UID 19999 + +void ksu_allowlist_init(void); + +void ksu_allowlist_exit(void); + +void ksu_load_allow_list(void); + +void ksu_show_allow_list(void); + +// Check if the uid is in allow list +bool __ksu_is_allow_uid(uid_t uid); +#define ksu_is_allow_uid(uid) unlikely(__ksu_is_allow_uid(uid)) + +// Check if the uid is in allow list, or current is ksu domain root +bool __ksu_is_allow_uid_for_current(uid_t uid); +#define ksu_is_allow_uid_for_current(uid) unlikely(__ksu_is_allow_uid_for_current(uid)) + +bool ksu_get_allow_list(int *array, int *length, bool allow); + +void ksu_prune_allowlist(bool (*is_uid_exist)(uid_t, char *, void *), void *data); + +bool ksu_get_app_profile(struct app_profile *); +bool ksu_set_app_profile(struct app_profile *, bool persist); + +bool ksu_uid_should_umount(uid_t uid); +struct root_profile *ksu_get_root_profile(uid_t uid); + +static inline bool is_appuid(uid_t uid) +{ + uid_t appid = uid % PER_USER_RANGE; + return appid >= FIRST_APPLICATION_UID && appid <= LAST_APPLICATION_UID; +} + +#ifdef CONFIG_KSU_MANUAL_SU +bool ksu_temp_grant_root_once(uid_t uid); +void ksu_temp_revoke_root_once(uid_t uid); +#endif + +#endif diff --git a/kernel/apk_sign.c b/kernel/apk_sign.c new file mode 100644 index 0000000..271e802 --- /dev/null +++ b/kernel/apk_sign.c @@ -0,0 +1,421 @@ +#include +#include +#include +#include +#include +#include +#ifdef CONFIG_KSU_DEBUG +#include +#endif +#include +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 11, 0) +#include +#else +#include +#endif + +#include "apk_sign.h" +#include "dynamic_manager.h" +#include "klog.h" // IWYU pragma: keep +#include "manager_sign.h" + +struct sdesc { + struct shash_desc shash; + char ctx[]; +}; + +static apk_sign_key_t apk_sign_keys[] = { + {EXPECTED_SIZE_SHIRKNEKO, EXPECTED_HASH_SHIRKNEKO}, // ShirkNeko/SukiSU +#ifdef EXPECTED_SIZE + {EXPECTED_SIZE, EXPECTED_HASH}, // Custom +#endif +}; + +static struct sdesc *init_sdesc(struct crypto_shash *alg) +{ + struct sdesc *sdesc; + int size; + + size = sizeof(struct shash_desc) + crypto_shash_descsize(alg); + sdesc = kzalloc(size, GFP_KERNEL); + if (!sdesc) + return ERR_PTR(-ENOMEM); + sdesc->shash.tfm = alg; + return sdesc; +} + +static int calc_hash(struct crypto_shash *alg, const unsigned char *data, + unsigned int datalen, unsigned char *digest) +{ + struct sdesc *sdesc; + int ret; + + sdesc = init_sdesc(alg); + if (IS_ERR(sdesc)) { + pr_info("can't alloc sdesc\n"); + return PTR_ERR(sdesc); + } + + ret = crypto_shash_digest(&sdesc->shash, data, datalen, digest); + kfree(sdesc); + return ret; +} + +static int ksu_sha256(const unsigned char *data, unsigned int datalen, + unsigned char *digest) +{ + struct crypto_shash *alg; + char *hash_alg_name = "sha256"; + int ret; + + alg = crypto_alloc_shash(hash_alg_name, 0, 0); + if (IS_ERR(alg)) { + pr_info("can't alloc alg %s\n", hash_alg_name); + return PTR_ERR(alg); + } + ret = calc_hash(alg, data, datalen, digest); + crypto_free_shash(alg); + return ret; +} + + +static struct dynamic_sign_key dynamic_sign = DYNAMIC_SIGN_DEFAULT_CONFIG; + +static bool check_dynamic_sign(struct file *fp, u32 size4, loff_t *pos, int *matched_index) +{ + struct dynamic_sign_key current_dynamic_key = dynamic_sign; + + if (ksu_get_dynamic_manager_config(¤t_dynamic_key.size, ¤t_dynamic_key.hash)) { + pr_debug("Using dynamic manager config: size=0x%x, hash=%.16s...\n", + current_dynamic_key.size, current_dynamic_key.hash); + } + + if (size4 != current_dynamic_key.size) { + return false; + } + +#define CERT_MAX_LENGTH 1024 + char cert[CERT_MAX_LENGTH]; + if (size4 > CERT_MAX_LENGTH) { + pr_info("cert length overlimit\n"); + return false; + } + + kernel_read(fp, cert, size4, pos); + + unsigned char digest[SHA256_DIGEST_SIZE]; + if (ksu_sha256(cert, size4, digest) < 0) { + pr_info("sha256 error\n"); + return false; + } + + char hash_str[SHA256_DIGEST_SIZE * 2 + 1]; + hash_str[SHA256_DIGEST_SIZE * 2] = '\0'; + bin2hex(hash_str, digest, SHA256_DIGEST_SIZE); + + pr_info("sha256: %s, expected: %s, index: dynamic\n", hash_str, current_dynamic_key.hash); + + if (strcmp(current_dynamic_key.hash, hash_str) == 0) { + if (matched_index) { + *matched_index = DYNAMIC_SIGN_INDEX; + } + return true; + } + + return false; +} + +static bool check_block(struct file *fp, u32 *size4, loff_t *pos, u32 *offset, int *matched_index) +{ + int i; + apk_sign_key_t sign_key; + bool signature_valid = false; + + kernel_read(fp, size4, 0x4, pos); // signer-sequence length + kernel_read(fp, size4, 0x4, pos); // signer length + kernel_read(fp, size4, 0x4, pos); // signed data length + + *offset += 0x4 * 3; + + kernel_read(fp, size4, 0x4, pos); // digests-sequence length + + *pos += *size4; + *offset += 0x4 + *size4; + + kernel_read(fp, size4, 0x4, pos); // certificates length + kernel_read(fp, size4, 0x4, pos); // certificate length + *offset += 0x4 * 2; + + if (ksu_is_dynamic_manager_enabled()) { + loff_t temp_pos = *pos; + if (check_dynamic_sign(fp, *size4, &temp_pos, matched_index)) { + *pos = temp_pos; + *offset += *size4; + return true; + } + } + + for (i = 0; i < ARRAY_SIZE(apk_sign_keys); i++) { + sign_key = apk_sign_keys[i]; + + if (*size4 != sign_key.size) + continue; + *offset += *size4; + +#define CERT_MAX_LENGTH 1024 + char cert[CERT_MAX_LENGTH]; + if (*size4 > CERT_MAX_LENGTH) { + pr_info("cert length overlimit\n"); + return false; + } + kernel_read(fp, cert, *size4, pos); + unsigned char digest[SHA256_DIGEST_SIZE]; + if (ksu_sha256(cert, *size4, digest) < 0 ) { + pr_info("sha256 error\n"); + return false; + } + + char hash_str[SHA256_DIGEST_SIZE * 2 + 1]; + hash_str[SHA256_DIGEST_SIZE * 2] = '\0'; + + bin2hex(hash_str, digest, SHA256_DIGEST_SIZE); + pr_info("sha256: %s, expected: %s, index: %d\n", hash_str, sign_key.sha256, i); + + if (strcmp(sign_key.sha256, hash_str) == 0) { + signature_valid = true; + if (matched_index) { + *matched_index = i; + } + break; + } + } + return signature_valid; +} + +struct zip_entry_header { + uint32_t signature; + uint16_t version; + uint16_t flags; + uint16_t compression; + uint16_t mod_time; + uint16_t mod_date; + uint32_t crc32; + uint32_t compressed_size; + uint32_t uncompressed_size; + uint16_t file_name_length; + uint16_t extra_field_length; +} __attribute__((packed)); + +// This is a necessary but not sufficient condition, but it is enough for us +static bool has_v1_signature_file(struct file *fp) +{ + struct zip_entry_header header; + const char MANIFEST[] = "META-INF/MANIFEST.MF"; + + loff_t pos = 0; + + while (kernel_read(fp, &header, + sizeof(struct zip_entry_header), &pos) == + sizeof(struct zip_entry_header)) { + if (header.signature != 0x04034b50) { + // ZIP magic: 'PK' + return false; + } + // Read the entry file name + if (header.file_name_length == sizeof(MANIFEST) - 1) { + char fileName[sizeof(MANIFEST)]; + kernel_read(fp, fileName, + header.file_name_length, &pos); + fileName[header.file_name_length] = '\0'; + + // Check if the entry matches META-INF/MANIFEST.MF + if (strncmp(MANIFEST, fileName, sizeof(MANIFEST) - 1) == + 0) { + return true; + } + } else { + // Skip the entry file name + pos += header.file_name_length; + } + + // Skip to the next entry + pos += header.extra_field_length + header.compressed_size; + } + + return false; +} + +static __always_inline bool check_v2_signature(char *path, bool check_multi_manager, int *signature_index) +{ + unsigned char buffer[0x11] = { 0 }; + u32 size4; + u64 size8, size_of_block; + + loff_t pos; + + bool v2_signing_valid = false; + int v2_signing_blocks = 0; + bool v3_signing_exist = false; + bool v3_1_signing_exist = false; + int matched_index = -1; + int i; + struct file *fp = filp_open(path, O_RDONLY, 0); + if (IS_ERR(fp)) { + pr_err("open %s error.\n", path); + return false; + } + + // If you want to check for multi-manager APK signing, but dynamic managering is not enabled, skip + if (check_multi_manager && !ksu_is_dynamic_manager_enabled()) { + filp_close(fp, 0); + return 0; + } + + // disable inotify for this file + fp->f_mode |= FMODE_NONOTIFY; + + // https://en.wikipedia.org/wiki/Zip_(file_format)#End_of_central_directory_record_(EOCD) + for (i = 0;; ++i) { + unsigned short n; + pos = generic_file_llseek(fp, -i - 2, SEEK_END); + kernel_read(fp, &n, 2, &pos); + if (n == i) { + pos -= 22; + kernel_read(fp, &size4, 4, &pos); + if ((size4 ^ 0xcafebabeu) == 0xccfbf1eeu) { + break; + } + } + if (i == 0xffff) { + pr_info("error: cannot find eocd\n"); + goto clean; + } + } + + pos += 12; + // offset + kernel_read(fp, &size4, 0x4, &pos); + pos = size4 - 0x18; + + kernel_read(fp, &size8, 0x8, &pos); + kernel_read(fp, buffer, 0x10, &pos); + if (strcmp((char *)buffer, "APK Sig Block 42")) { + goto clean; + } + + pos = size4 - (size8 + 0x8); + kernel_read(fp, &size_of_block, 0x8, &pos); + if (size_of_block != size8) { + goto clean; + } + + int loop_count = 0; + while (loop_count++ < 10) { + uint32_t id; + uint32_t offset; + kernel_read(fp, &size8, 0x8, + &pos); // sequence length + if (size8 == size_of_block) { + break; + } + kernel_read(fp, &id, 0x4, &pos); // id + offset = 4; + if (id == 0x7109871au) { + v2_signing_blocks++; + bool result = check_block(fp, &size4, &pos, &offset, &matched_index); + if (result) { + v2_signing_valid = true; + } + } else if (id == 0xf05368c0u) { + // http://aospxref.com/android-14.0.0_r2/xref/frameworks/base/core/java/android/util/apk/ApkSignatureSchemeV3Verifier.java#73 + v3_signing_exist = true; + } else if (id == 0x1b93ad61u) { + // http://aospxref.com/android-14.0.0_r2/xref/frameworks/base/core/java/android/util/apk/ApkSignatureSchemeV3Verifier.java#74 + v3_1_signing_exist = true; + } else { +#ifdef CONFIG_KSU_DEBUG + pr_info("Unknown id: 0x%08x\n", id); +#endif + } + pos += (size8 - offset); + } + + if (v2_signing_blocks != 1) { +#ifdef CONFIG_KSU_DEBUG + pr_err("Unexpected v2 signature count: %d\n", + v2_signing_blocks); +#endif + v2_signing_valid = false; + } + + if (v2_signing_valid) { + int has_v1_signing = has_v1_signature_file(fp); + if (has_v1_signing) { + pr_err("Unexpected v1 signature scheme found!\n"); + filp_close(fp, 0); + return false; + } + } +clean: + filp_close(fp, 0); + + if (v3_signing_exist || v3_1_signing_exist) { +#ifdef CONFIG_KSU_DEBUG + pr_err("Unexpected v3 signature scheme found!\n"); +#endif + return false; + } + + if (v2_signing_valid) { + if (signature_index) { + *signature_index = matched_index; + } + + if (check_multi_manager) { + // 0: ShirkNeko/SukiSU, DYNAMIC_SIGN_INDEX : Dynamic Sign + if (matched_index == 0 || matched_index == DYNAMIC_SIGN_INDEX) { + pr_info("Multi-manager APK detected (dynamic_manager enabled): signature_index=%d\n", matched_index); + return true; + } + return false; + } else { + // Common manager check: any valid signature will do + return true; + } + } + return false; +} + +#ifdef CONFIG_KSU_DEBUG + +int ksu_debug_manager_uid = -1; + +#include "manager.h" + +static int set_expected_size(const char *val, const struct kernel_param *kp) +{ + int rv = param_set_uint(val, kp); + ksu_set_manager_uid(ksu_debug_manager_uid); + pr_info("ksu_manager_uid set to %d\n", ksu_debug_manager_uid); + return rv; +} + +static struct kernel_param_ops expected_size_ops = { + .set = set_expected_size, + .get = param_get_uint, +}; + +module_param_cb(ksu_debug_manager_uid, &expected_size_ops, + &ksu_debug_manager_uid, S_IRUSR | S_IWUSR); + +#endif + +bool is_manager_apk(char *path) +{ + return check_v2_signature(path, false, NULL); +} + +bool is_dynamic_manager_apk(char *path, int *signature_index) +{ + return check_v2_signature(path, true, signature_index); +} \ No newline at end of file diff --git a/kernel/apk_sign.h b/kernel/apk_sign.h new file mode 100644 index 0000000..06c4461 --- /dev/null +++ b/kernel/apk_sign.h @@ -0,0 +1,11 @@ +#ifndef __KSU_H_APK_V2_SIGN +#define __KSU_H_APK_V2_SIGN + +#include +#include "ksu.h" + +bool is_manager_apk(char *path); + +bool is_dynamic_manager_apk(char *path, int *signature_index); + +#endif diff --git a/kernel/app_profile.c b/kernel/app_profile.c new file mode 100644 index 0000000..00cd9c5 --- /dev/null +++ b/kernel/app_profile.c @@ -0,0 +1,303 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include "objsec.h" + +#include "allowlist.h" +#include "app_profile.h" +#include "klog.h" // IWYU pragma: keep +#include "selinux/selinux.h" +#include "syscall_hook_manager.h" +#include "sucompat.h" + +#include "sulog.h" + +#if LINUX_VERSION_CODE >= KERNEL_VERSION (6, 7, 0) + static struct group_info root_groups = { .usage = REFCOUNT_INIT(2), }; +#else + static struct group_info root_groups = { .usage = ATOMIC_INIT(2) }; +#endif + +static void setup_groups(struct root_profile *profile, struct cred *cred) +{ + if (profile->groups_count > KSU_MAX_GROUPS) { + pr_warn("Failed to setgroups, too large group: %d!\n", + profile->uid); + return; + } + + if (profile->groups_count == 1 && profile->groups[0] == 0) { + // setgroup to root and return early. + if (cred->group_info) + put_group_info(cred->group_info); + cred->group_info = get_group_info(&root_groups); + return; + } + + u32 ngroups = profile->groups_count; + struct group_info *group_info = groups_alloc(ngroups); + if (!group_info) { + pr_warn("Failed to setgroups, ENOMEM for: %d\n", profile->uid); + return; + } + + int i; + for (i = 0; i < ngroups; i++) { + gid_t gid = profile->groups[i]; + kgid_t kgid = make_kgid(current_user_ns(), gid); + if (!gid_valid(kgid)) { + pr_warn("Failed to setgroups, invalid gid: %d\n", gid); + put_group_info(group_info); + return; + } + group_info->gid[i] = kgid; + } + + groups_sort(group_info); + set_groups(cred, group_info); + put_group_info(group_info); +} + +void disable_seccomp(void) +{ + assert_spin_locked(¤t->sighand->siglock); + // disable seccomp +#if defined(CONFIG_GENERIC_ENTRY) && \ + LINUX_VERSION_CODE >= KERNEL_VERSION(5, 11, 0) + clear_syscall_work(SECCOMP); +#else + clear_thread_flag(TIF_SECCOMP); +#endif + +#ifdef CONFIG_SECCOMP + current->seccomp.mode = 0; + current->seccomp.filter = NULL; + atomic_set(¤t->seccomp.filter_count, 0); +#else +#endif +} + +void escape_with_root_profile(void) +{ + struct cred *cred; + struct task_struct *p = current; + struct task_struct *t; + + cred = prepare_creds(); + if (!cred) { + pr_warn("prepare_creds failed!\n"); + return; + } + + if (cred->euid.val == 0) { + pr_warn("Already root, don't escape!\n"); +#if __SULOG_GATE + ksu_sulog_report_su_grant(current_euid().val, NULL, "escape_to_root_failed"); +#endif + abort_creds(cred); + return; + } + + struct root_profile *profile = ksu_get_root_profile(cred->uid.val); + + cred->uid.val = profile->uid; + cred->suid.val = profile->uid; + cred->euid.val = profile->uid; + cred->fsuid.val = profile->uid; + + cred->gid.val = profile->gid; + cred->fsgid.val = profile->gid; + cred->sgid.val = profile->gid; + cred->egid.val = profile->gid; + cred->securebits = 0; + + BUILD_BUG_ON(sizeof(profile->capabilities.effective) != + sizeof(kernel_cap_t)); + + // setup capabilities + // we need CAP_DAC_READ_SEARCH becuase `/data/adb/ksud` is not accessible for non root process + // we add it here but don't add it to cap_inhertiable, it would be dropped automaticly after exec! + u64 cap_for_ksud = + profile->capabilities.effective | CAP_DAC_READ_SEARCH; + memcpy(&cred->cap_effective, &cap_for_ksud, + sizeof(cred->cap_effective)); + memcpy(&cred->cap_permitted, &profile->capabilities.effective, + sizeof(cred->cap_permitted)); + memcpy(&cred->cap_bset, &profile->capabilities.effective, + sizeof(cred->cap_bset)); + + setup_groups(profile, cred); + + commit_creds(cred); + + // Refer to kernel/seccomp.c: seccomp_set_mode_strict + // When disabling Seccomp, ensure that current->sighand->siglock is held during the operation. + spin_lock_irq(¤t->sighand->siglock); + disable_seccomp(); + spin_unlock_irq(¤t->sighand->siglock); + + setup_selinux(profile->selinux_domain); +#if __SULOG_GATE + ksu_sulog_report_su_grant(current_euid().val, NULL, "escape_to_root"); +#endif + + for_each_thread (p, t) { + ksu_set_task_tracepoint_flag(t); + } +} + +#ifdef CONFIG_KSU_MANUAL_SU + +#include "ksud.h" + +#ifndef DEVPTS_SUPER_MAGIC +#define DEVPTS_SUPER_MAGIC 0x1cd1 +#endif + +static int __manual_su_handle_devpts(struct inode *inode) +{ + if (!current->mm) { + return 0; + } + + uid_t uid = current_uid().val; + if (uid % 100000 < 10000) { + // not untrusted_app, ignore it + return 0; + } + + if (likely(!ksu_is_allow_uid_for_current(uid))) + return 0; + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 1, 0) || defined(KSU_OPTIONAL_SELINUX_INODE) + struct inode_security_struct *sec = selinux_inode(inode); +#else + struct inode_security_struct *sec = + (struct inode_security_struct *)inode->i_security; +#endif + if (ksu_file_sid && sec) + sec->sid = ksu_file_sid; + + return 0; +} + +static void disable_seccomp_for_task(struct task_struct *tsk) +{ + assert_spin_locked(&tsk->sighand->siglock); +#ifdef CONFIG_SECCOMP + if (tsk->seccomp.mode == SECCOMP_MODE_DISABLED && !tsk->seccomp.filter) + return; +#endif + clear_tsk_thread_flag(tsk, TIF_SECCOMP); +#ifdef CONFIG_SECCOMP + tsk->seccomp.mode = SECCOMP_MODE_DISABLED; + if (tsk->seccomp.filter) { +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 10, 0) + seccomp_filter_release(tsk); +#else + put_seccomp_filter(tsk); + tsk->seccomp.filter = NULL; +#endif + } +#endif +} + +void escape_to_root_for_cmd_su(uid_t target_uid, pid_t target_pid) +{ + struct cred *newcreds; + struct task_struct *target_task; + unsigned long flags; + struct task_struct *p = current; + struct task_struct *t; + + pr_info("cmd_su: escape_to_root_for_cmd_su called for UID: %d, PID: %d\n", target_uid, target_pid); + + // Find target task by PID + rcu_read_lock(); + target_task = pid_task(find_vpid(target_pid), PIDTYPE_PID); + if (!target_task) { + rcu_read_unlock(); + pr_err("cmd_su: target task not found for PID: %d\n", target_pid); +#if __SULOG_GATE + ksu_sulog_report_su_grant(target_uid, "cmd_su", "target_not_found"); +#endif + return; + } + get_task_struct(target_task); + rcu_read_unlock(); + + if (task_uid(target_task).val == 0) { + pr_warn("cmd_su: target task is already root, PID: %d\n", target_pid); + put_task_struct(target_task); + return; + } + + newcreds = prepare_kernel_cred(target_task); + if (newcreds == NULL) { + pr_err("cmd_su: failed to allocate new cred for PID: %d\n", target_pid); +#if __SULOG_GATE + ksu_sulog_report_su_grant(target_uid, "cmd_su", "cred_alloc_failed"); +#endif + put_task_struct(target_task); + return; + } + + struct root_profile *profile = ksu_get_root_profile(target_uid); + + newcreds->uid.val = profile->uid; + newcreds->suid.val = profile->uid; + newcreds->euid.val = profile->uid; + newcreds->fsuid.val = profile->uid; + + newcreds->gid.val = profile->gid; + newcreds->fsgid.val = profile->gid; + newcreds->sgid.val = profile->gid; + newcreds->egid.val = profile->gid; + newcreds->securebits = 0; + + u64 cap_for_cmd_su = profile->capabilities.effective | CAP_DAC_READ_SEARCH | CAP_SETUID | CAP_SETGID; + memcpy(&newcreds->cap_effective, &cap_for_cmd_su, sizeof(newcreds->cap_effective)); + memcpy(&newcreds->cap_permitted, &profile->capabilities.effective, sizeof(newcreds->cap_permitted)); + memcpy(&newcreds->cap_bset, &profile->capabilities.effective, sizeof(newcreds->cap_bset)); + + setup_groups(profile, newcreds); + task_lock(target_task); + + const struct cred *old_creds = get_task_cred(target_task); + + rcu_assign_pointer(target_task->real_cred, newcreds); + rcu_assign_pointer(target_task->cred, get_cred(newcreds)); + task_unlock(target_task); + + if (target_task->sighand) { + spin_lock_irqsave(&target_task->sighand->siglock, flags); + disable_seccomp_for_task(target_task); + spin_unlock_irqrestore(&target_task->sighand->siglock, flags); + } + + setup_selinux(profile->selinux_domain); + put_cred(old_creds); + wake_up_process(target_task); + + if (target_task->signal->tty) { + struct inode *inode = target_task->signal->tty->driver_data; + if (inode && inode->i_sb->s_magic == DEVPTS_SUPER_MAGIC) { + __manual_su_handle_devpts(inode); + } + } + + put_task_struct(target_task); +#if __SULOG_GATE + ksu_sulog_report_su_grant(target_uid, "cmd_su", "manual_escalation"); +#endif + for_each_thread (p, t) { + ksu_set_task_tracepoint_flag(t); + } + pr_info("cmd_su: privilege escalation completed for UID: %d, PID: %d\n", target_uid, target_pid); +} +#endif diff --git a/kernel/app_profile.h b/kernel/app_profile.h new file mode 100644 index 0000000..871abb6 --- /dev/null +++ b/kernel/app_profile.h @@ -0,0 +1,70 @@ +#ifndef __KSU_H_APP_PROFILE +#define __KSU_H_APP_PROFILE + +#include + +// Forward declarations +struct cred; + +#define KSU_APP_PROFILE_VER 2 +#define KSU_MAX_PACKAGE_NAME 256 +// NGROUPS_MAX for Linux is 65535 generally, but we only supports 32 groups. +#define KSU_MAX_GROUPS 32 +#define KSU_SELINUX_DOMAIN 64 + +struct root_profile { + int32_t uid; + int32_t gid; + + int32_t groups_count; + int32_t groups[KSU_MAX_GROUPS]; + + // kernel_cap_t is u32[2] for capabilities v3 + struct { + u64 effective; + u64 permitted; + u64 inheritable; + } capabilities; + + char selinux_domain[KSU_SELINUX_DOMAIN]; + + int32_t namespaces; +}; + +struct non_root_profile { + bool umount_modules; +}; + +struct app_profile { + // It may be utilized for backward compatibility, although we have never explicitly made any promises regarding this. + u32 version; + + // this is usually the package of the app, but can be other value for special apps + char key[KSU_MAX_PACKAGE_NAME]; + int32_t current_uid; + bool allow_su; + + union { + struct { + bool use_default; + char template_name[KSU_MAX_PACKAGE_NAME]; + + struct root_profile profile; + } rp_config; + + struct { + bool use_default; + + struct non_root_profile profile; + } nrp_config; + }; +}; + +// Escalate current process to root with the appropriate profile +void escape_with_root_profile(void); + +void escape_to_root_for_cmd_su(uid_t target_uid, pid_t target_pid); + +void disable_seccomp(void); + +#endif diff --git a/kernel/arch.h b/kernel/arch.h new file mode 100644 index 0000000..ee2b16c --- /dev/null +++ b/kernel/arch.h @@ -0,0 +1,68 @@ +#ifndef __KSU_H_ARCH +#define __KSU_H_ARCH + +#include + +#if defined(__aarch64__) + +#define __PT_PARM1_REG regs[0] +#define __PT_PARM2_REG regs[1] +#define __PT_PARM3_REG regs[2] +#define __PT_SYSCALL_PARM4_REG regs[3] +#define __PT_CCALL_PARM4_REG regs[3] +#define __PT_PARM5_REG regs[4] +#define __PT_PARM6_REG regs[5] +#define __PT_RET_REG regs[30] +#define __PT_FP_REG regs[29] /* Works only with CONFIG_FRAME_POINTER */ +#define __PT_RC_REG regs[0] +#define __PT_SP_REG sp +#define __PT_IP_REG pc + +#define REBOOT_SYMBOL "__arm64_sys_reboot" +#define SYS_READ_SYMBOL "__arm64_sys_read" +#define SYS_EXECVE_SYMBOL "__arm64_sys_execve" + +#elif defined(__x86_64__) + +#define __PT_PARM1_REG di +#define __PT_PARM2_REG si +#define __PT_PARM3_REG dx +/* syscall uses r10 for PARM4 */ +#define __PT_SYSCALL_PARM4_REG r10 +#define __PT_CCALL_PARM4_REG cx +#define __PT_PARM5_REG r8 +#define __PT_PARM6_REG r9 +#define __PT_RET_REG sp +#define __PT_FP_REG bp +#define __PT_RC_REG ax +#define __PT_SP_REG sp +#define __PT_IP_REG ip +#define REBOOT_SYMBOL "__x64_sys_reboot" +#define SYS_READ_SYMBOL "__x64_sys_read" +#define SYS_EXECVE_SYMBOL "__x64_sys_execve" + +#else +#error "Unsupported arch" +#endif + +/* allow some architecutres to override `struct pt_regs` */ +#ifndef __PT_REGS_CAST +#define __PT_REGS_CAST(x) (x) +#endif + +#define PT_REGS_PARM1(x) (__PT_REGS_CAST(x)->__PT_PARM1_REG) +#define PT_REGS_PARM2(x) (__PT_REGS_CAST(x)->__PT_PARM2_REG) +#define PT_REGS_PARM3(x) (__PT_REGS_CAST(x)->__PT_PARM3_REG) +#define PT_REGS_SYSCALL_PARM4(x) (__PT_REGS_CAST(x)->__PT_SYSCALL_PARM4_REG) +#define PT_REGS_CCALL_PARM4(x) (__PT_REGS_CAST(x)->__PT_CCALL_PARM4_REG) +#define PT_REGS_PARM5(x) (__PT_REGS_CAST(x)->__PT_PARM5_REG) +#define PT_REGS_PARM6(x) (__PT_REGS_CAST(x)->__PT_PARM6_REG) +#define PT_REGS_RET(x) (__PT_REGS_CAST(x)->__PT_RET_REG) +#define PT_REGS_FP(x) (__PT_REGS_CAST(x)->__PT_FP_REG) +#define PT_REGS_RC(x) (__PT_REGS_CAST(x)->__PT_RC_REG) +#define PT_REGS_SP(x) (__PT_REGS_CAST(x)->__PT_SP_REG) +#define PT_REGS_IP(x) (__PT_REGS_CAST(x)->__PT_IP_REG) + +#define PT_REAL_REGS(regs) ((struct pt_regs *)PT_REGS_PARM1(regs)) + +#endif diff --git a/kernel/dynamic_manager.c b/kernel/dynamic_manager.c new file mode 100644 index 0000000..96bc710 --- /dev/null +++ b/kernel/dynamic_manager.c @@ -0,0 +1,504 @@ +#include +#include +#include +#include +#include +#include +#include +#ifdef CONFIG_KSU_DEBUG +#include +#endif +#include +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 11, 0) +#include +#else +#include +#endif + +#include "dynamic_manager.h" +#include "klog.h" // IWYU pragma: keep +#include "manager.h" + +#define MAX_MANAGERS 2 + +// Dynamic sign configuration +static struct dynamic_manager_config dynamic_manager = { + .size = 0x300, + .hash = "0000000000000000000000000000000000000000000000000000000000000000", + .is_set = 0 +}; + +// Multi-manager state +static struct manager_info active_managers[MAX_MANAGERS]; +static DEFINE_SPINLOCK(managers_lock); +static DEFINE_SPINLOCK(dynamic_manager_lock); + +// Work queues for persistent storage +static struct work_struct save_dynamic_manager_work; +static struct work_struct load_dynamic_manager_work; +static struct work_struct clear_dynamic_manager_work; + +bool ksu_is_dynamic_manager_enabled(void) +{ + unsigned long flags; + bool enabled; + + spin_lock_irqsave(&dynamic_manager_lock, flags); + enabled = dynamic_manager.is_set; + spin_unlock_irqrestore(&dynamic_manager_lock, flags); + + return enabled; +} + +void ksu_add_manager(uid_t uid, int signature_index) +{ + unsigned long flags; + int i; + + if (!ksu_is_dynamic_manager_enabled()) { + pr_info("Dynamic sign not enabled, skipping multi-manager add\n"); + return; + } + + spin_lock_irqsave(&managers_lock, flags); + + // Check if manager already exists and update + for (i = 0; i < MAX_MANAGERS; i++) { + if (active_managers[i].is_active && active_managers[i].uid == uid) { + active_managers[i].signature_index = signature_index; + spin_unlock_irqrestore(&managers_lock, flags); + pr_info("Updated manager uid=%d, signature_index=%d\n", uid, signature_index); + return; + } + } + + // Find free slot for new manager + for (i = 0; i < MAX_MANAGERS; i++) { + if (!active_managers[i].is_active) { + active_managers[i].uid = uid; + active_managers[i].signature_index = signature_index; + active_managers[i].is_active = true; + spin_unlock_irqrestore(&managers_lock, flags); + pr_info("Added manager uid=%d, signature_index=%d\n", uid, signature_index); + return; + } + } + + spin_unlock_irqrestore(&managers_lock, flags); + pr_warn("Failed to add manager, no free slots\n"); +} + +void ksu_remove_manager(uid_t uid) +{ + unsigned long flags; + int i; + + if (!ksu_is_dynamic_manager_enabled()) { + return; + } + + spin_lock_irqsave(&managers_lock, flags); + + for (i = 0; i < MAX_MANAGERS; i++) { + if (active_managers[i].is_active && active_managers[i].uid == uid) { + active_managers[i].is_active = false; + pr_info("Removed manager uid=%d\n", uid); + break; + } + } + + spin_unlock_irqrestore(&managers_lock, flags); +} + +bool ksu_is_any_manager(uid_t uid) +{ + unsigned long flags; + bool is_manager = false; + int i; + + if (!ksu_is_dynamic_manager_enabled()) { + return false; + } + + spin_lock_irqsave(&managers_lock, flags); + + for (i = 0; i < MAX_MANAGERS; i++) { + if (active_managers[i].is_active && active_managers[i].uid == uid) { + is_manager = true; + break; + } + } + + spin_unlock_irqrestore(&managers_lock, flags); + return is_manager; +} + +int ksu_get_manager_signature_index(uid_t uid) +{ + unsigned long flags; + int signature_index = -1; + int i; + + // Check traditional manager first + if (ksu_manager_uid != KSU_INVALID_UID && uid == ksu_manager_uid) { + return DYNAMIC_SIGN_INDEX; + } + + if (!ksu_is_dynamic_manager_enabled()) { + return -1; + } + + spin_lock_irqsave(&managers_lock, flags); + + for (i = 0; i < MAX_MANAGERS; i++) { + if (active_managers[i].is_active && active_managers[i].uid == uid) { + signature_index = active_managers[i].signature_index; + break; + } + } + + spin_unlock_irqrestore(&managers_lock, flags); + return signature_index; +} + +static void clear_dynamic_manager(void) +{ + unsigned long flags; + int i; + + spin_lock_irqsave(&managers_lock, flags); + + for (i = 0; i < MAX_MANAGERS; i++) { + if (active_managers[i].is_active) { + pr_info("Clearing dynamic manager uid=%d (signature_index=%d) for rescan\n", + active_managers[i].uid, active_managers[i].signature_index); + active_managers[i].is_active = false; + } + } + + spin_unlock_irqrestore(&managers_lock, flags); +} + +int ksu_get_active_managers(struct manager_list_info *info) +{ + unsigned long flags; + int i, count = 0; + + if (!info) { + return -EINVAL; + } + + // Add traditional manager first + if (ksu_manager_uid != KSU_INVALID_UID && count < 2) { + info->managers[count].uid = ksu_manager_uid; + info->managers[count].signature_index = 0; + count++; + } + + // Add dynamic managers + if (ksu_is_dynamic_manager_enabled()) { + spin_lock_irqsave(&managers_lock, flags); + + for (i = 0; i < MAX_MANAGERS && count < 2; i++) { + if (active_managers[i].is_active) { + info->managers[count].uid = active_managers[i].uid; + info->managers[count].signature_index = active_managers[i].signature_index; + count++; + } + } + + spin_unlock_irqrestore(&managers_lock, flags); + } + + info->count = count; + return 0; +} + +static void do_save_dynamic_manager(struct work_struct *work) +{ + u32 magic = DYNAMIC_MANAGER_FILE_MAGIC; + u32 version = DYNAMIC_MANAGER_FILE_VERSION; + struct dynamic_manager_config config_to_save; + loff_t off = 0; + unsigned long flags; + struct file *fp; + + spin_lock_irqsave(&dynamic_manager_lock, flags); + config_to_save = dynamic_manager; + spin_unlock_irqrestore(&dynamic_manager_lock, flags); + + if (!config_to_save.is_set) { + pr_info("Dynamic sign config not set, skipping save\n"); + return; + } + + fp = filp_open(KERNEL_SU_DYNAMIC_MANAGER, O_WRONLY | O_CREAT | O_TRUNC, 0644); + if (IS_ERR(fp)) { + pr_err("save_dynamic_manager create file failed: %ld\n", PTR_ERR(fp)); + return; + } + + if (kernel_write(fp, &magic, sizeof(magic), &off) != sizeof(magic)) { + pr_err("save_dynamic_manager write magic failed.\n"); + goto exit; + } + + if (kernel_write(fp, &version, sizeof(version), &off) != sizeof(version)) { + pr_err("save_dynamic_manager write version failed.\n"); + goto exit; + } + + if (kernel_write(fp, &config_to_save, sizeof(config_to_save), &off) != sizeof(config_to_save)) { + pr_err("save_dynamic_manager write config failed.\n"); + goto exit; + } + + pr_info("Dynamic sign config saved successfully\n"); + +exit: + filp_close(fp, 0); +} + +static void do_load_dynamic_manager(struct work_struct *work) +{ + loff_t off = 0; + ssize_t ret = 0; + struct file *fp = NULL; + u32 magic; + u32 version; + struct dynamic_manager_config loaded_config; + unsigned long flags; + int i; + + fp = filp_open(KERNEL_SU_DYNAMIC_MANAGER, O_RDONLY, 0); + if (IS_ERR(fp)) { + if (PTR_ERR(fp) == -ENOENT) { + pr_info("No saved dynamic manager config found\n"); + } else { + pr_err("load_dynamic_manager open file failed: %ld\n", PTR_ERR(fp)); + } + return; + } + + if (kernel_read(fp, &magic, sizeof(magic), &off) != sizeof(magic) || + magic != DYNAMIC_MANAGER_FILE_MAGIC) { + pr_err("dynamic manager file invalid magic: %x!\n", magic); + goto exit; + } + + if (kernel_read(fp, &version, sizeof(version), &off) != sizeof(version)) { + pr_err("dynamic manager read version failed\n"); + goto exit; + } + + pr_info("dynamic manager file version: %d\n", version); + + ret = kernel_read(fp, &loaded_config, sizeof(loaded_config), &off); + if (ret <= 0) { + pr_info("load_dynamic_manager read err: %zd\n", ret); + goto exit; + } + + if (ret != sizeof(loaded_config)) { + pr_err("load_dynamic_manager read incomplete config: %zd/%zu\n", ret, sizeof(loaded_config)); + goto exit; + } + + if (loaded_config.size < 0x100 || loaded_config.size > 0x1000) { + pr_err("Invalid saved config size: 0x%x\n", loaded_config.size); + goto exit; + } + + if (strlen(loaded_config.hash) != 64) { + pr_err("Invalid saved config hash length: %zu\n", strlen(loaded_config.hash)); + goto exit; + } + + // Validate hash format + for (i = 0; i < 64; i++) { + char c = loaded_config.hash[i]; + if (!((c >= '0' && c <= '9') || (c >= 'a' && c <= 'f'))) { + pr_err("Invalid saved config hash character at position %d: %c\n", i, c); + goto exit; + } + } + + spin_lock_irqsave(&dynamic_manager_lock, flags); + dynamic_manager = loaded_config; + spin_unlock_irqrestore(&dynamic_manager_lock, flags); + + pr_info("Dynamic sign config loaded: size=0x%x, hash=%.16s...\n", + loaded_config.size, loaded_config.hash); + +exit: + filp_close(fp, 0); +} + +static bool persistent_dynamic_manager(void) +{ + return ksu_queue_work(&save_dynamic_manager_work); +} + +static void do_clear_dynamic_manager(struct work_struct *work) +{ + loff_t off = 0; + struct file *fp; + char zero_buffer[512]; + + memset(zero_buffer, 0, sizeof(zero_buffer)); + + fp = filp_open(KERNEL_SU_DYNAMIC_MANAGER, O_WRONLY | O_CREAT | O_TRUNC, 0644); + if (IS_ERR(fp)) { + pr_err("clear_dynamic_manager create file failed: %ld\n", PTR_ERR(fp)); + return; + } + + // Write null bytes to overwrite the file content + if (kernel_write(fp, zero_buffer, sizeof(zero_buffer), &off) != sizeof(zero_buffer)) { + pr_err("clear_dynamic_manager write null bytes failed.\n"); + } else { + pr_info("Dynamic sign config file cleared successfully\n"); + } + + filp_close(fp, 0); +} + +static bool clear_dynamic_manager_file(void) +{ + return ksu_queue_work(&clear_dynamic_manager_work); +} + +int ksu_handle_dynamic_manager(struct dynamic_manager_user_config *config) +{ + unsigned long flags; + int ret = 0; + int i; + + if (!config) { + return -EINVAL; + } + + switch (config->operation) { + case DYNAMIC_MANAGER_OP_SET: + if (config->size < 0x100 || config->size > 0x1000) { + pr_err("invalid size: 0x%x\n", config->size); + return -EINVAL; + } + + if (strlen(config->hash) != 64) { + pr_err("invalid hash length: %zu\n", strlen(config->hash)); + return -EINVAL; + } + + // Validate hash format + for (i = 0; i < 64; i++) { + char c = config->hash[i]; + if (!((c >= '0' && c <= '9') || (c >= 'a' && c <= 'f'))) { + pr_err("invalid hash character at position %d: %c\n", i, c); + return -EINVAL; + } + } + + spin_lock_irqsave(&dynamic_manager_lock, flags); + dynamic_manager.size = config->size; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 13, 0) + strscpy(dynamic_manager.hash, config->hash, sizeof(dynamic_manager.hash)); +#else + strlcpy(dynamic_manager.hash, config->hash, sizeof(dynamic_manager.hash)); +#endif + dynamic_manager.is_set = 1; + spin_unlock_irqrestore(&dynamic_manager_lock, flags); + + persistent_dynamic_manager(); + pr_info("dynamic manager updated: size=0x%x, hash=%.16s... (multi-manager enabled)\n", + config->size, config->hash); + break; + + case DYNAMIC_MANAGER_OP_GET: + spin_lock_irqsave(&dynamic_manager_lock, flags); + if (dynamic_manager.is_set) { + config->size = dynamic_manager.size; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 13, 0) + strscpy(config->hash, dynamic_manager.hash, sizeof(config->hash)); +#else + strlcpy(config->hash, dynamic_manager.hash, sizeof(config->hash)); +#endif + ret = 0; + } else { + ret = -ENODATA; + } + spin_unlock_irqrestore(&dynamic_manager_lock, flags); + break; + + case DYNAMIC_MANAGER_OP_CLEAR: + spin_lock_irqsave(&dynamic_manager_lock, flags); + dynamic_manager.size = 0x300; + strcpy(dynamic_manager.hash, "0000000000000000000000000000000000000000000000000000000000000000"); + dynamic_manager.is_set = 0; + spin_unlock_irqrestore(&dynamic_manager_lock, flags); + + // Clear only dynamic managers, preserve default manager + clear_dynamic_manager(); + + // Clear file using the same method as save + clear_dynamic_manager_file(); + + pr_info("Dynamic sign config cleared (multi-manager disabled)\n"); + break; + + default: + pr_err("Invalid dynamic manager operation: %d\n", config->operation); + return -EINVAL; + } + + return ret; +} + +bool ksu_load_dynamic_manager(void) +{ + return ksu_queue_work(&load_dynamic_manager_work); +} + +void ksu_dynamic_manager_init(void) +{ + int i; + + INIT_WORK(&save_dynamic_manager_work, do_save_dynamic_manager); + INIT_WORK(&load_dynamic_manager_work, do_load_dynamic_manager); + INIT_WORK(&clear_dynamic_manager_work, do_clear_dynamic_manager); + + // Initialize manager slots + for (i = 0; i < MAX_MANAGERS; i++) { + active_managers[i].is_active = false; + } + + ksu_load_dynamic_manager(); + + pr_info("Dynamic sign initialized with conditional multi-manager support\n"); +} + +void ksu_dynamic_manager_exit(void) +{ + clear_dynamic_manager(); + + // Save current config before exit + do_save_dynamic_manager(NULL); + pr_info("Dynamic sign exited with persistent storage\n"); +} + +// Get dynamic manager configuration for signature verification +bool ksu_get_dynamic_manager_config(unsigned int *size, const char **hash) +{ + unsigned long flags; + bool valid = false; + + spin_lock_irqsave(&dynamic_manager_lock, flags); + if (dynamic_manager.is_set) { + if (size) *size = dynamic_manager.size; + if (hash) *hash = dynamic_manager.hash; + valid = true; + } + spin_unlock_irqrestore(&dynamic_manager_lock, flags); + + return valid; +} \ No newline at end of file diff --git a/kernel/dynamic_manager.h b/kernel/dynamic_manager.h new file mode 100644 index 0000000..1b5a5cb --- /dev/null +++ b/kernel/dynamic_manager.h @@ -0,0 +1,51 @@ +#ifndef __KSU_H_DYNAMIC_MANAGER +#define __KSU_H_DYNAMIC_MANAGER + +#include +#include "ksu.h" + +#define DYNAMIC_MANAGER_FILE_MAGIC 0x7f445347 // 'DSG', u32 +#define DYNAMIC_MANAGER_FILE_VERSION 1 // u32 +#define KERNEL_SU_DYNAMIC_MANAGER "/data/adb/ksu/.dynamic_manager" +#define DYNAMIC_SIGN_INDEX 100 + +struct dynamic_sign_key { + unsigned int size; + const char *hash; +}; + +#define DYNAMIC_SIGN_DEFAULT_CONFIG { \ + .size = 0x300, \ + .hash = "0000000000000000000000000000000000000000000000000000000000000000" \ +} + +struct dynamic_manager_config { + unsigned int size; + char hash[65]; + int is_set; +}; + +struct manager_info { + uid_t uid; + int signature_index; + bool is_active; +}; + +// Dynamic sign operations +void ksu_dynamic_manager_init(void); +void ksu_dynamic_manager_exit(void); +int ksu_handle_dynamic_manager(struct dynamic_manager_user_config *config); +bool ksu_load_dynamic_manager(void); +bool ksu_is_dynamic_manager_enabled(void); + +// Multi-manager operations +void ksu_add_manager(uid_t uid, int signature_index); +void ksu_remove_manager(uid_t uid); +bool ksu_is_any_manager(uid_t uid); +int ksu_get_manager_signature_index(uid_t uid); +int ksu_get_active_managers(struct manager_list_info *info); + +// Configuration access for signature verification +bool ksu_get_dynamic_manager_config(unsigned int *size, const char **hash); + +#endif \ No newline at end of file diff --git a/kernel/embed_ksud.c b/kernel/embed_ksud.c new file mode 100644 index 0000000..24c4012 --- /dev/null +++ b/kernel/embed_ksud.c @@ -0,0 +1,5 @@ +// WARNING: THIS IS A STUB FILE +// This file will be regenerated by CI + +unsigned int ksud_size = 0; +const char ksud[0] = {}; diff --git a/kernel/export_symbol.txt b/kernel/export_symbol.txt new file mode 100644 index 0000000..1abd805 --- /dev/null +++ b/kernel/export_symbol.txt @@ -0,0 +1,2 @@ +register_kprobe +unregister_kprobe diff --git a/kernel/feature.c b/kernel/feature.c new file mode 100644 index 0000000..99277b5 --- /dev/null +++ b/kernel/feature.c @@ -0,0 +1,173 @@ +#include "feature.h" +#include "klog.h" // IWYU pragma: keep + +#include + +static const struct ksu_feature_handler *feature_handlers[KSU_FEATURE_MAX]; + +static DEFINE_MUTEX(feature_mutex); + +int ksu_register_feature_handler(const struct ksu_feature_handler *handler) +{ + if (!handler) { + pr_err("feature: register handler is NULL\n"); + return -EINVAL; + } + + if (handler->feature_id >= KSU_FEATURE_MAX) { + pr_err("feature: invalid feature_id %u\n", handler->feature_id); + return -EINVAL; + } + + if (!handler->get_handler && !handler->set_handler) { + pr_err("feature: no handler provided for feature %u\n", handler->feature_id); + return -EINVAL; + } + + mutex_lock(&feature_mutex); + + if (feature_handlers[handler->feature_id]) { + pr_warn("feature: handler for %u already registered, overwriting\n", + handler->feature_id); + } + + feature_handlers[handler->feature_id] = handler; + + pr_info("feature: registered handler for %s (id=%u)\n", + handler->name ? handler->name : "unknown", handler->feature_id); + + mutex_unlock(&feature_mutex); + return 0; +} + +int ksu_unregister_feature_handler(u32 feature_id) +{ + int ret = 0; + + if (feature_id >= KSU_FEATURE_MAX) { + pr_err("feature: invalid feature_id %u\n", feature_id); + return -EINVAL; + } + + mutex_lock(&feature_mutex); + + if (!feature_handlers[feature_id]) { + pr_warn("feature: no handler registered for %u\n", feature_id); + ret = -ENOENT; + goto out; + } + + feature_handlers[feature_id] = NULL; + + pr_info("feature: unregistered handler for id=%u\n", feature_id); + +out: + mutex_unlock(&feature_mutex); + return ret; +} + +int ksu_get_feature(u32 feature_id, u64 *value, bool *supported) +{ + int ret = 0; + const struct ksu_feature_handler *handler; + + if (feature_id >= KSU_FEATURE_MAX) { + pr_err("feature: invalid feature_id %u\n", feature_id); + return -EINVAL; + } + + if (!value || !supported) { + pr_err("feature: invalid parameters\n"); + return -EINVAL; + } + + mutex_lock(&feature_mutex); + + handler = feature_handlers[feature_id]; + + if (!handler) { + *supported = false; + *value = 0; + pr_debug("feature: feature %u not supported\n", feature_id); + goto out; + } + + *supported = true; + + if (!handler->get_handler) { + pr_warn("feature: no get_handler for feature %u\n", feature_id); + ret = -EOPNOTSUPP; + goto out; + } + + ret = handler->get_handler(value); + if (ret) { + pr_err("feature: get_handler for %u failed: %d\n", feature_id, ret); + } + +out: + mutex_unlock(&feature_mutex); + return ret; +} + +int ksu_set_feature(u32 feature_id, u64 value) +{ + int ret = 0; + const struct ksu_feature_handler *handler; + + if (feature_id >= KSU_FEATURE_MAX) { + pr_err("feature: invalid feature_id %u\n", feature_id); + return -EINVAL; + } + + mutex_lock(&feature_mutex); + + handler = feature_handlers[feature_id]; + + if (!handler) { + pr_err("feature: feature %u not registered\n", feature_id); + ret = -EOPNOTSUPP; + goto out; + } + + if (!handler->set_handler) { + pr_warn("feature: no set_handler for feature %u\n", feature_id); + ret = -EOPNOTSUPP; + goto out; + } + + ret = handler->set_handler(value); + if (ret) { + pr_err("feature: set_handler for %u failed: %d\n", feature_id, ret); + } + +out: + mutex_unlock(&feature_mutex); + return ret; +} + +void ksu_feature_init(void) +{ + int i; + + for (i = 0; i < KSU_FEATURE_MAX; i++) { + feature_handlers[i] = NULL; + } + + pr_info("feature: feature management initialized\n"); +} + +void ksu_feature_exit(void) +{ + int i; + + mutex_lock(&feature_mutex); + + for (i = 0; i < KSU_FEATURE_MAX; i++) { + feature_handlers[i] = NULL; + } + + mutex_unlock(&feature_mutex); + + pr_info("feature: feature management cleaned up\n"); +} diff --git a/kernel/feature.h b/kernel/feature.h new file mode 100644 index 0000000..9b63a0b --- /dev/null +++ b/kernel/feature.h @@ -0,0 +1,37 @@ +#ifndef __KSU_H_FEATURE +#define __KSU_H_FEATURE + +#include + +enum ksu_feature_id { + KSU_FEATURE_SU_COMPAT = 0, + KSU_FEATURE_KERNEL_UMOUNT = 1, + KSU_FEATURE_ENHANCED_SECURITY = 2, + KSU_FEATURE_SULOG = 3, + + KSU_FEATURE_MAX +}; + +typedef int (*ksu_feature_get_t)(u64 *value); +typedef int (*ksu_feature_set_t)(u64 value); + +struct ksu_feature_handler { + u32 feature_id; + const char *name; + ksu_feature_get_t get_handler; + ksu_feature_set_t set_handler; +}; + +int ksu_register_feature_handler(const struct ksu_feature_handler *handler); + +int ksu_unregister_feature_handler(u32 feature_id); + +int ksu_get_feature(u32 feature_id, u64 *value, bool *supported); + +int ksu_set_feature(u32 feature_id, u64 value); + +void ksu_feature_init(void); + +void ksu_feature_exit(void); + +#endif // __KSU_H_FEATURE diff --git a/kernel/file_wrapper.c b/kernel/file_wrapper.c new file mode 100644 index 0000000..d73cf5d --- /dev/null +++ b/kernel/file_wrapper.c @@ -0,0 +1,341 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "klog.h" // IWYU pragma: keep +#include "selinux/selinux.h" + +#include "file_wrapper.h" + +static loff_t ksu_wrapper_llseek(struct file *fp, loff_t off, int flags) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + return orig->f_op->llseek(data->orig, off, flags); +} + +static ssize_t ksu_wrapper_read(struct file *fp, char __user *ptr, size_t sz, loff_t *off) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + return orig->f_op->read(orig, ptr, sz, off); +} + +static ssize_t ksu_wrapper_write(struct file *fp, const char __user *ptr, size_t sz, loff_t *off) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + return orig->f_op->write(orig, ptr, sz, off); +} + +static ssize_t ksu_wrapper_read_iter(struct kiocb *iocb, struct iov_iter *iovi) { + struct ksu_file_wrapper* data = iocb->ki_filp->private_data; + struct file* orig = data->orig; + iocb->ki_filp = orig; + return orig->f_op->read_iter(iocb, iovi); +} + +static ssize_t ksu_wrapper_write_iter(struct kiocb *iocb, struct iov_iter *iovi) { + struct ksu_file_wrapper* data = iocb->ki_filp->private_data; + struct file* orig = data->orig; + iocb->ki_filp = orig; + return orig->f_op->write_iter(iocb, iovi); +} + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0) +static int ksu_wrapper_iopoll(struct kiocb *kiocb, struct io_comp_batch* icb, unsigned int v) { + struct ksu_file_wrapper* data = kiocb->ki_filp->private_data; + struct file* orig = data->orig; + kiocb->ki_filp = orig; + return orig->f_op->iopoll(kiocb, icb, v); +} +#else +static int ksu_wrapper_iopoll(struct kiocb *kiocb, bool spin) { + struct ksu_file_wrapper* data = kiocb->ki_filp->private_data; + struct file* orig = data->orig; + kiocb->ki_filp = orig; + return orig->f_op->iopoll(kiocb, spin); +} +#endif + +#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 6, 0) +static int ksu_wrapper_iterate (struct file *fp, struct dir_context *dc) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + return orig->f_op->iterate(orig, dc); +} +#endif + +static int ksu_wrapper_iterate_shared(struct file *fp, struct dir_context *dc) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + return orig->f_op->iterate_shared(orig, dc); +} + +static __poll_t ksu_wrapper_poll(struct file *fp, struct poll_table_struct *pts) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + return orig->f_op->poll(orig, pts); +} + +static long ksu_wrapper_unlocked_ioctl(struct file *fp, unsigned int cmd, unsigned long arg) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + return orig->f_op->unlocked_ioctl(orig, cmd, arg); +} + +static long ksu_wrapper_compat_ioctl(struct file *fp, unsigned int cmd, unsigned long arg) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + return orig->f_op->compat_ioctl(orig, cmd, arg); +} + +static int ksu_wrapper_mmap(struct file *fp, struct vm_area_struct * vma) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + return orig->f_op->mmap(orig, vma); +} + +// static unsigned long mmap_supported_flags {} + +static int ksu_wrapper_open(struct inode *ino, struct file *fp) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + struct inode *orig_ino = file_inode(orig); + return orig->f_op->open(orig_ino, orig); +} + +static int ksu_wrapper_flush(struct file *fp, fl_owner_t id) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + return orig->f_op->flush(orig, id); +} + + +static int ksu_wrapper_fsync(struct file *fp, loff_t off1, loff_t off2, int datasync) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + return orig->f_op->fsync(orig, off1, off2, datasync); +} + +static int ksu_wrapper_fasync(int arg, struct file *fp, int arg2) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + return orig->f_op->fasync(arg, orig, arg2); +} + +static int ksu_wrapper_lock(struct file *fp, int arg1, struct file_lock *fl) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + return orig->f_op->lock(orig, arg1, fl); +} + + +#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 6, 0) +static ssize_t ksu_wrapper_sendpage(struct file *fp, struct page *pg, int arg1, size_t sz, loff_t *off, int arg2) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + if (orig->f_op->sendpage) { + return orig->f_op->sendpage(orig, pg, arg1, sz, off, arg2); + } + return -EINVAL; +} +#endif + +static unsigned long ksu_wrapper_get_unmapped_area(struct file *fp, unsigned long arg1, unsigned long arg2, unsigned long arg3, unsigned long arg4) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + if (orig->f_op->get_unmapped_area) { + return orig->f_op->get_unmapped_area(orig, arg1, arg2, arg3, arg4); + } + return -EINVAL; +} + +// static int ksu_wrapper_check_flags(int arg) {} + +static int ksu_wrapper_flock(struct file *fp, int arg1, struct file_lock *fl) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + if (orig->f_op->flock) { + return orig->f_op->flock(orig, arg1, fl); + } + return -EINVAL; +} + +static ssize_t ksu_wrapper_splice_write(struct pipe_inode_info * pii, struct file *fp, loff_t *off, size_t sz, unsigned int arg1) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + if (orig->f_op->splice_write) { + return orig->f_op->splice_write(pii, orig, off, sz, arg1); + } + return -EINVAL; +} + +static ssize_t ksu_wrapper_splice_read(struct file *fp, loff_t *off, struct pipe_inode_info *pii, size_t sz, unsigned int arg1) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + if (orig->f_op->splice_read) { + return orig->f_op->splice_read(orig, off, pii, sz, arg1); + } + return -EINVAL; +} + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 6, 0) +void ksu_wrapper_splice_eof(struct file *fp) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + if (orig->f_op->splice_eof) { + return orig->f_op->splice_eof(orig); + } +} +#endif + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 12, 0) +static int ksu_wrapper_setlease(struct file *fp, int arg1, struct file_lease **fl, void **p) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + if (orig->f_op->setlease) { + return orig->f_op->setlease(orig, arg1, fl, p); + } + return -EINVAL; +} +#elif LINUX_VERSION_CODE >= KERNEL_VERSION(6, 6, 0) +static int ksu_wrapper_setlease(struct file *fp, int arg1, struct file_lock **fl, void **p) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + if (orig->f_op->setlease) { + return orig->f_op->setlease(orig, arg1, fl, p); + } + return -EINVAL; +} +#else +static int ksu_wrapper_setlease(struct file *fp, long arg1, struct file_lock **fl, void **p) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + if (orig->f_op->setlease) { + return orig->f_op->setlease(orig, arg1, fl, p); + } + return -EINVAL; +} +#endif + +static long ksu_wrapper_fallocate(struct file *fp, int mode, loff_t offset, loff_t len) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + if (orig->f_op->fallocate) { + return orig->f_op->fallocate(orig, mode, offset, len); + } + return -EINVAL; +} + +static void ksu_wrapper_show_fdinfo(struct seq_file *m, struct file *f) { + struct ksu_file_wrapper* data = f->private_data; + struct file* orig = data->orig; + if (orig->f_op->show_fdinfo) { + orig->f_op->show_fdinfo(m, orig); + } +} + +static ssize_t ksu_wrapper_copy_file_range(struct file *f1, loff_t off1, struct file *f2, + loff_t off2, size_t sz, unsigned int flags) { + // TODO: determine which file to use + struct ksu_file_wrapper* data = f1->private_data; + struct file* orig = data->orig; + if (orig->f_op->copy_file_range) { + return orig->f_op->copy_file_range(orig, off1, f2, off2, sz, flags); + } + return -EINVAL; +} + +static loff_t ksu_wrapper_remap_file_range(struct file *file_in, loff_t pos_in, + struct file *file_out, loff_t pos_out, + loff_t len, unsigned int remap_flags) { + // TODO: determine which file to use + struct ksu_file_wrapper* data = file_in->private_data; + struct file* orig = data->orig; + if (orig->f_op->remap_file_range) { + return orig->f_op->remap_file_range(orig, pos_in, file_out, pos_out, len, remap_flags); + } + return -EINVAL; +} + +static int ksu_wrapper_fadvise(struct file *fp, loff_t off1, loff_t off2, int flags) { + struct ksu_file_wrapper* data = fp->private_data; + struct file* orig = data->orig; + if (orig->f_op->fadvise) { + return orig->f_op->fadvise(orig, off1, off2, flags); + } + return -EINVAL; +} + +static int ksu_wrapper_release(struct inode *inode, struct file *filp) { + ksu_delete_file_wrapper(filp->private_data); + return 0; +} + +struct ksu_file_wrapper* ksu_create_file_wrapper(struct file* fp) { + struct ksu_file_wrapper* p = kcalloc(sizeof(struct ksu_file_wrapper), 1, GFP_KERNEL); + if (!p) { + return NULL; + } + + get_file(fp); + + p->orig = fp; + p->ops.owner = THIS_MODULE; + p->ops.llseek = fp->f_op->llseek ? ksu_wrapper_llseek : NULL; + p->ops.read = fp->f_op->read ? ksu_wrapper_read : NULL; + p->ops.write = fp->f_op->write ? ksu_wrapper_write : NULL; + p->ops.read_iter = fp->f_op->read_iter ? ksu_wrapper_read_iter : NULL; + p->ops.write_iter = fp->f_op->write_iter ? ksu_wrapper_write_iter : NULL; + p->ops.iopoll = fp->f_op->iopoll ? ksu_wrapper_iopoll : NULL; +#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 6, 0) + p->ops.iterate = fp->f_op->iterate ? ksu_wrapper_iterate : NULL; +#endif + p->ops.iterate_shared = fp->f_op->iterate_shared ? ksu_wrapper_iterate_shared : NULL; + p->ops.poll = fp->f_op->poll ? ksu_wrapper_poll : NULL; + p->ops.unlocked_ioctl = fp->f_op->unlocked_ioctl ? ksu_wrapper_unlocked_ioctl : NULL; + p->ops.compat_ioctl = fp->f_op->compat_ioctl ? ksu_wrapper_compat_ioctl : NULL; + p->ops.mmap = fp->f_op->mmap ? ksu_wrapper_mmap : NULL; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 12, 0) + p->ops.fop_flags = fp->f_op->fop_flags; +#else + p->ops.mmap_supported_flags = fp->f_op->mmap_supported_flags; +#endif + p->ops.open = fp->f_op->open ? ksu_wrapper_open : NULL; + p->ops.flush = fp->f_op->flush ? ksu_wrapper_flush : NULL; + p->ops.release = ksu_wrapper_release; + p->ops.fsync = fp->f_op->fsync ? ksu_wrapper_fsync : NULL; + p->ops.fasync = fp->f_op->fasync ? ksu_wrapper_fasync : NULL; + p->ops.lock = fp->f_op->lock ? ksu_wrapper_lock : NULL; +#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 6, 0) + p->ops.sendpage = fp->f_op->sendpage ? ksu_wrapper_sendpage : NULL; +#endif + p->ops.get_unmapped_area = fp->f_op->get_unmapped_area ? ksu_wrapper_get_unmapped_area : NULL; + p->ops.check_flags = fp->f_op->check_flags; + p->ops.flock = fp->f_op->flock ? ksu_wrapper_flock : NULL; + p->ops.splice_write = fp->f_op->splice_write ? ksu_wrapper_splice_write : NULL; + p->ops.splice_read = fp->f_op->splice_read ? ksu_wrapper_splice_read : NULL; + p->ops.setlease = fp->f_op->setlease ? ksu_wrapper_setlease : NULL; + p->ops.fallocate = fp->f_op->fallocate ? ksu_wrapper_fallocate : NULL; + p->ops.show_fdinfo = fp->f_op->show_fdinfo ? ksu_wrapper_show_fdinfo : NULL; + p->ops.copy_file_range = fp->f_op->copy_file_range ? ksu_wrapper_copy_file_range : NULL; + p->ops.remap_file_range = fp->f_op->remap_file_range ? ksu_wrapper_remap_file_range : NULL; + p->ops.fadvise = fp->f_op->fadvise ? ksu_wrapper_fadvise : NULL; + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 6, 0) + p->ops.splice_eof = fp->f_op->splice_eof ? ksu_wrapper_splice_eof : NULL; +#endif + + return p; +} + +void ksu_delete_file_wrapper(struct ksu_file_wrapper* data) { + fput((struct file*) data->orig); + kfree(data); +} \ No newline at end of file diff --git a/kernel/file_wrapper.h b/kernel/file_wrapper.h new file mode 100644 index 0000000..421e20e --- /dev/null +++ b/kernel/file_wrapper.h @@ -0,0 +1,14 @@ +#ifndef KSU_FILE_WRAPPER_H +#define KSU_FILE_WRAPPER_H + +#include +#include + +struct ksu_file_wrapper { + struct file* orig; + struct file_operations ops; +}; + +struct ksu_file_wrapper* ksu_create_file_wrapper(struct file* fp); +void ksu_delete_file_wrapper(struct ksu_file_wrapper* data); +#endif // KSU_FILE_WRAPPER_H \ No newline at end of file diff --git a/kernel/kernel_compat.h b/kernel/kernel_compat.h new file mode 100644 index 0000000..14e1cb2 --- /dev/null +++ b/kernel/kernel_compat.h @@ -0,0 +1,24 @@ +#ifndef __KSU_H_KERNEL_COMPAT +#define __KSU_H_KERNEL_COMPAT + +#include +#include + +/* + * ksu_copy_from_user_retry + * try nofault copy first, if it fails, try with plain + * paramters are the same as copy_from_user + * 0 = success + */ +static long ksu_copy_from_user_retry(void *to, + const void __user *from, unsigned long count) +{ + long ret = copy_from_user_nofault(to, from, count); + if (likely(!ret)) + return ret; + + // we faulted! fallback to slow path + return copy_from_user(to, from, count); +} + +#endif diff --git a/kernel/kernel_umount.c b/kernel/kernel_umount.c new file mode 100644 index 0000000..4086057 --- /dev/null +++ b/kernel/kernel_umount.c @@ -0,0 +1,175 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "kernel_umount.h" +#include "klog.h" // IWYU pragma: keep +#include "allowlist.h" +#include "selinux/selinux.h" +#include "feature.h" +#include "ksud.h" + +#include "umount_manager.h" +#include "sulog.h" + +static bool ksu_kernel_umount_enabled = true; + +static int kernel_umount_feature_get(u64 *value) +{ + *value = ksu_kernel_umount_enabled ? 1 : 0; + return 0; +} + +static int kernel_umount_feature_set(u64 value) +{ + bool enable = value != 0; + ksu_kernel_umount_enabled = enable; + pr_info("kernel_umount: set to %d\n", enable); + return 0; +} + +static const struct ksu_feature_handler kernel_umount_handler = { + .feature_id = KSU_FEATURE_KERNEL_UMOUNT, + .name = "kernel_umount", + .get_handler = kernel_umount_feature_get, + .set_handler = kernel_umount_feature_set, +}; + +extern int path_umount(struct path *path, int flags); + +static void ksu_umount_mnt(struct path *path, int flags) +{ + int err = path_umount(path, flags); + if (err) { + pr_info("umount %s failed: %d\n", path->dentry->d_iname, err); + } +} + +void try_umount(const char *mnt, int flags) +{ + struct path path; + int err = kern_path(mnt, 0, &path); + if (err) { + return; + } + + if (path.dentry != path.mnt->mnt_root) { + // it is not root mountpoint, maybe umounted by others already. + path_put(&path); + return; + } + + ksu_umount_mnt(&path, flags); +} + +struct umount_tw { + struct callback_head cb; + const struct cred *old_cred; +}; + +static void umount_tw_func(struct callback_head *cb) +{ + struct umount_tw *tw = container_of(cb, struct umount_tw, cb); + const struct cred *saved = NULL; + if (tw->old_cred) { + saved = override_creds(tw->old_cred); + } + + struct mount_entry *entry; + down_read(&mount_list_lock); + list_for_each_entry(entry, &mount_list, list) { + pr_info("%s: unmounting: %s flags 0x%x\n", __func__, entry->umountable, entry->flags); + try_umount(entry->umountable, entry->flags); + } + up_read(&mount_list_lock); + + ksu_umount_manager_execute_all(tw->old_cred); + + if (saved) + revert_creds(saved); + + if (tw->old_cred) + put_cred(tw->old_cred); + + kfree(tw); +} + +int ksu_handle_umount(uid_t old_uid, uid_t new_uid) +{ + struct umount_tw *tw; + + // this hook is used for umounting overlayfs for some uid, if there isn't any module mounted, just ignore it! + if (!ksu_module_mounted) { + return 0; + } + + if (!ksu_kernel_umount_enabled) { + return 0; + } + + // FIXME: isolated process which directly forks from zygote is not handled + if (!is_appuid(new_uid)) { + return 0; + } + + if (!ksu_uid_should_umount(new_uid)) { + return 0; + } + + // check old process's selinux context, if it is not zygote, ignore it! + // because some su apps may setuid to untrusted_app but they are in global mount namespace + // when we umount for such process, that is a disaster! + bool is_zygote_child = is_zygote(get_current_cred()); + if (!is_zygote_child) { + pr_info("handle umount ignore non zygote child: %d\n", current->pid); + return 0; + } +#if __SULOG_GATE + ksu_sulog_report_syscall(new_uid, NULL, "setuid", NULL); +#endif + // umount the target mnt + pr_info("handle umount for uid: %d, pid: %d\n", new_uid, current->pid); + + tw = kzalloc(sizeof(*tw), GFP_ATOMIC); + if (!tw) + return 0; + + tw->old_cred = get_current_cred(); + tw->cb.func = umount_tw_func; + + int err = task_work_add(current, &tw->cb, TWA_RESUME); + if (err) { + if (tw->old_cred) { + put_cred(tw->old_cred); + } + kfree(tw); + pr_warn("unmount add task_work failed\n"); + } + + return 0; +} + +void ksu_kernel_umount_init(void) +{ + int rc = 0; + rc = ksu_umount_manager_init(); + if (rc) { + pr_err("Failed to initialize umount manager: %d\n", rc); + } + if (ksu_register_feature_handler(&kernel_umount_handler)) { + pr_err("Failed to register kernel_umount feature handler\n"); + } +} + +void ksu_kernel_umount_exit(void) +{ + ksu_unregister_feature_handler(KSU_FEATURE_KERNEL_UMOUNT); +} \ No newline at end of file diff --git a/kernel/kernel_umount.h b/kernel/kernel_umount.h new file mode 100644 index 0000000..65da620 --- /dev/null +++ b/kernel/kernel_umount.h @@ -0,0 +1,25 @@ +#ifndef __KSU_H_KERNEL_UMOUNT +#define __KSU_H_KERNEL_UMOUNT + +#include +#include +#include + +void ksu_kernel_umount_init(void); +void ksu_kernel_umount_exit(void); + +void try_umount(const char *mnt, int flags); + +// Handler function to be called from setresuid hook +int ksu_handle_umount(uid_t old_uid, uid_t new_uid); + +// for the umount list +struct mount_entry { + char *umountable; + unsigned int flags; + struct list_head list; +}; +extern struct list_head mount_list; +extern struct rw_semaphore mount_list_lock; + +#endif diff --git a/kernel/klog.h b/kernel/klog.h new file mode 100644 index 0000000..a934027 --- /dev/null +++ b/kernel/klog.h @@ -0,0 +1,11 @@ +#ifndef __KSU_H_KLOG +#define __KSU_H_KLOG + +#include + +#ifdef pr_fmt +#undef pr_fmt +#define pr_fmt(fmt) "KernelSU: " fmt +#endif + +#endif diff --git a/kernel/kpm/Makefile b/kernel/kpm/Makefile new file mode 100644 index 0000000..58126fb --- /dev/null +++ b/kernel/kpm/Makefile @@ -0,0 +1,6 @@ +obj-y += kpm.o +obj-y += compact.o +obj-y += super_access.o + +ccflags-y += -Wno-implicit-function-declaration -Wno-strict-prototypes -Wno-int-conversion -Wno-gcc-compat +ccflags-y += -Wno-declaration-after-statement -Wno-unused-function diff --git a/kernel/kpm/compact.c b/kernel/kpm/compact.c new file mode 100644 index 0000000..5791db4 --- /dev/null +++ b/kernel/kpm/compact.c @@ -0,0 +1,100 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "kpm.h" +#include "compact.h" +#include "../allowlist.h" +#include "../manager.h" + +static int sukisu_is_su_allow_uid(uid_t uid) +{ + return ksu_is_allow_uid_for_current(uid) ? 1 : 0; +} + +static int sukisu_get_ap_mod_exclude(uid_t uid) +{ + return 0; /* Not supported */ +} + +static int sukisu_is_uid_should_umount(uid_t uid) +{ + return ksu_uid_should_umount(uid) ? 1 : 0; +} + +static int sukisu_is_current_uid_manager(void) +{ + return is_manager(); +} + +static uid_t sukisu_get_manager_uid(void) +{ + return ksu_manager_uid; +} + +static void sukisu_set_manager_uid(uid_t uid, int force) +{ + if (force || ksu_manager_uid == -1) + ksu_manager_uid = uid; +} + +struct CompactAddressSymbol { + const char *symbol_name; + void *addr; +}; + +unsigned long sukisu_compact_find_symbol(const char *name); + +static struct CompactAddressSymbol address_symbol[] = { + { "kallsyms_lookup_name", &kallsyms_lookup_name }, + { "compact_find_symbol", &sukisu_compact_find_symbol }, + { "is_run_in_sukisu_ultra", (void *)1 }, + { "is_su_allow_uid", &sukisu_is_su_allow_uid }, + { "get_ap_mod_exclude", &sukisu_get_ap_mod_exclude }, + { "is_uid_should_umount", &sukisu_is_uid_should_umount }, + { "is_current_uid_manager", &sukisu_is_current_uid_manager }, + { "get_manager_uid", &sukisu_get_manager_uid }, + { "sukisu_set_manager_uid", &sukisu_set_manager_uid } +}; + +unsigned long sukisu_compact_find_symbol(const char* name) +{ + int i; + unsigned long addr; + + for (i = 0; i < (sizeof(address_symbol) / sizeof(struct CompactAddressSymbol)); i++) { + struct CompactAddressSymbol *symbol = &address_symbol[i]; + + if (strcmp(name, symbol->symbol_name) == 0) + return (unsigned long)symbol->addr; + } + + addr = kallsyms_lookup_name(name); + if (addr) + return addr; + + return 0; +} +EXPORT_SYMBOL(sukisu_compact_find_symbol); diff --git a/kernel/kpm/compact.h b/kernel/kpm/compact.h new file mode 100644 index 0000000..c9f69dc --- /dev/null +++ b/kernel/kpm/compact.h @@ -0,0 +1,6 @@ +#ifndef __SUKISU_KPM_COMPACT_H +#define __SUKISU_KPM_COMPACT_H + +extern unsigned long sukisu_compact_find_symbol(const char *name); + +#endif diff --git a/kernel/kpm/kpm.c b/kernel/kpm/kpm.c new file mode 100644 index 0000000..e31384b --- /dev/null +++ b/kernel/kpm/kpm.c @@ -0,0 +1,282 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * Copyright (C) 2025 Liankong (xhsw.new@outlook.com). All Rights Reserved. + * 本代码由GPL-2授权 + * + * 适配KernelSU的KPM 内核模块加载器兼容实现 + * + * 集成了 ELF 解析、内存布局、符号处理、重定位(支持 ARM64 重定位类型) + * 并参照KernelPatch的标准KPM格式实现加载和控制 + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,0,0) && defined(CONFIG_MODULES) +#include +#endif +#include "kpm.h" +#include "compact.h" + +#define KPM_NAME_LEN 32 +#define KPM_ARGS_LEN 1024 + +#ifndef NO_OPTIMIZE +#if defined(__GNUC__) && !defined(__clang__) + #define NO_OPTIMIZE __attribute__((optimize("O0"))) +#elif defined(__clang__) + #define NO_OPTIMIZE __attribute__((optnone)) +#else + #define NO_OPTIMIZE +#endif +#endif + +noinline NO_OPTIMIZE void sukisu_kpm_load_module_path(const char *path, + const char *args, void *ptr, int *result) +{ + pr_info("kpm: Stub function called (sukisu_kpm_load_module_path). " + "path=%s args=%s ptr=%p\n", path, args, ptr); + + __asm__ volatile("nop"); +} +EXPORT_SYMBOL(sukisu_kpm_load_module_path); + +noinline NO_OPTIMIZE void sukisu_kpm_unload_module(const char *name, + void *ptr, int *result) +{ + pr_info("kpm: Stub function called (sukisu_kpm_unload_module). " + "name=%s ptr=%p\n", name, ptr); + + __asm__ volatile("nop"); +} +EXPORT_SYMBOL(sukisu_kpm_unload_module); + +noinline NO_OPTIMIZE void sukisu_kpm_num(int *result) +{ + pr_info("kpm: Stub function called (sukisu_kpm_num).\n"); + + __asm__ volatile("nop"); +} +EXPORT_SYMBOL(sukisu_kpm_num); + +noinline NO_OPTIMIZE void sukisu_kpm_info(const char *name, char *buf, int bufferSize, + int *size) +{ + pr_info("kpm: Stub function called (sukisu_kpm_info). " + "name=%s buffer=%p\n", name, buf); + + __asm__ volatile("nop"); +} +EXPORT_SYMBOL(sukisu_kpm_info); + +noinline NO_OPTIMIZE void sukisu_kpm_list(void *out, int bufferSize, + int *result) +{ + pr_info("kpm: Stub function called (sukisu_kpm_list). " + "buffer=%p size=%d\n", out, bufferSize); +} +EXPORT_SYMBOL(sukisu_kpm_list); + +noinline NO_OPTIMIZE void sukisu_kpm_control(const char *name, const char *args, long arg_len, + int *result) +{ + pr_info("kpm: Stub function called (sukisu_kpm_control). " + "name=%p args=%p arg_len=%ld\n", name, args, arg_len); + + __asm__ volatile("nop"); +} +EXPORT_SYMBOL(sukisu_kpm_control); + +noinline NO_OPTIMIZE void sukisu_kpm_version(char *buf, int bufferSize) +{ + pr_info("kpm: Stub function called (sukisu_kpm_version). " + "buffer=%p\n", buf); +} +EXPORT_SYMBOL(sukisu_kpm_version); + +noinline int sukisu_handle_kpm(unsigned long control_code, unsigned long arg1, unsigned long arg2, + unsigned long result_code) +{ + int res = -1; + if (control_code == SUKISU_KPM_LOAD) { + char kernel_load_path[256]; + char kernel_args_buffer[256]; + + if (arg1 == 0) { + res = -EINVAL; + goto exit; + } + + if (!access_ok(arg1, 255)) { + goto invalid_arg; + } + + strncpy_from_user((char *)&kernel_load_path, (const char *)arg1, 255); + + if (arg2 != 0) { + if (!access_ok(arg2, 255)) { + goto invalid_arg; + } + + strncpy_from_user((char *)&kernel_args_buffer, (const char *)arg2, 255); + } + + sukisu_kpm_load_module_path((const char *)&kernel_load_path, + (const char *)&kernel_args_buffer, NULL, &res); + } else if (control_code == SUKISU_KPM_UNLOAD) { + char kernel_name_buffer[256]; + + if (arg1 == 0) { + res = -EINVAL; + goto exit; + } + + if (!access_ok(arg1, sizeof(kernel_name_buffer))) { + goto invalid_arg; + } + + strncpy_from_user((char *)&kernel_name_buffer, (const char *)arg1, sizeof(kernel_name_buffer)); + + sukisu_kpm_unload_module((const char *)&kernel_name_buffer, NULL, &res); + } else if (control_code == SUKISU_KPM_NUM) { + sukisu_kpm_num(&res); + } else if (control_code == SUKISU_KPM_INFO) { + char kernel_name_buffer[256]; + char buf[256]; + int size; + + if (arg1 == 0 || arg2 == 0) { + res = -EINVAL; + goto exit; + } + + if (!access_ok(arg1, sizeof(kernel_name_buffer))) { + goto invalid_arg; + } + + strncpy_from_user((char *)&kernel_name_buffer, (const char __user *)arg1, sizeof(kernel_name_buffer)); + + sukisu_kpm_info((const char *)&kernel_name_buffer, (char *)&buf, sizeof(buf), &size); + + if (!access_ok(arg2, size)) { + goto invalid_arg; + } + + res = copy_to_user(arg2, &buf, size); + + } else if (control_code == SUKISU_KPM_LIST) { + char buf[1024]; + int len = (int) arg2; + + if (len <= 0) { + res = -EINVAL; + goto exit; + } + + if (!access_ok(arg2, len)) { + goto invalid_arg; + } + + sukisu_kpm_list((char *)&buf, sizeof(buf), &res); + + if (res > len) { + res = -ENOBUFS; + goto exit; + } + + if (copy_to_user(arg1, &buf, len) != 0) + pr_info("kpm: Copy to user failed."); + + } else if (control_code == SUKISU_KPM_CONTROL) { + char kpm_name[KPM_NAME_LEN] = { 0 }; + char kpm_args[KPM_ARGS_LEN] = { 0 }; + + if (!access_ok(arg1, sizeof(kpm_name))) { + goto invalid_arg; + } + + if (!access_ok(arg2, sizeof(kpm_args))) { + goto invalid_arg; + } + + long name_len = strncpy_from_user((char *)&kpm_name, (const char __user *)arg1, sizeof(kpm_name)); + if (name_len <= 0) { + res = -EINVAL; + goto exit; + } + + long arg_len = strncpy_from_user((char *)&kpm_args, (const char __user *)arg2, sizeof(kpm_args)); + + sukisu_kpm_control((const char *)&kpm_name, (const char *)&kpm_args, arg_len, &res); + + } else if (control_code == SUKISU_KPM_VERSION) { + char buffer[256] = {0}; + + sukisu_kpm_version((char*) &buffer, sizeof(buffer)); + + unsigned int outlen = (unsigned int) arg2; + int len = strlen(buffer); + if (len >= outlen) len = outlen - 1; + + res = copy_to_user(arg1, &buffer, len + 1); + } + +exit: + if (copy_to_user(result_code, &res, sizeof(res)) != 0) + pr_info("kpm: Copy to user failed."); + + return 0; +invalid_arg: + pr_err("kpm: invalid pointer detected! arg1: %px arg2: %px\n", (void *)arg1, (void *)arg2); + res = -EFAULT; + goto exit; +} +EXPORT_SYMBOL(sukisu_handle_kpm); + +int sukisu_is_kpm_control_code(unsigned long control_code) { + return (control_code >= CMD_KPM_CONTROL && + control_code <= CMD_KPM_CONTROL_MAX) ? 1 : 0; +} + +int do_kpm(void __user *arg) +{ + struct ksu_kpm_cmd cmd; + + if (copy_from_user(&cmd, arg, sizeof(cmd))) { + pr_err("kpm: copy_from_user failed\n"); + return -EFAULT; + } + + if (!access_ok(cmd.control_code, sizeof(int))) { + pr_err("kpm: invalid control_code pointer %px\n", (void *)cmd.control_code); + return -EFAULT; + } + + if (!access_ok(cmd.result_code, sizeof(int))) { + pr_err("kpm: invalid result_code pointer %px\n", (void *)cmd.result_code); + return -EFAULT; + } + + return sukisu_handle_kpm(cmd.control_code, cmd.arg1, cmd.arg2, cmd.result_code); +} + diff --git a/kernel/kpm/kpm.h b/kernel/kpm/kpm.h new file mode 100644 index 0000000..4fdcc20 --- /dev/null +++ b/kernel/kpm/kpm.h @@ -0,0 +1,70 @@ +#ifndef __SUKISU_KPM_H +#define __SUKISU_KPM_H + +#include +#include + +struct ksu_kpm_cmd { + __aligned_u64 __user control_code; + __aligned_u64 __user arg1; + __aligned_u64 __user arg2; + __aligned_u64 __user result_code; +}; + +int sukisu_handle_kpm(unsigned long control_code, unsigned long arg3, unsigned long arg4, unsigned long result_code); +int sukisu_is_kpm_control_code(unsigned long control_code); +int do_kpm(void __user *arg); + +#define KSU_IOCTL_KPM _IOC(_IOC_READ|_IOC_WRITE, 'K', 200, 0) + +/* KPM Control Code */ +#define CMD_KPM_CONTROL 1 +#define CMD_KPM_CONTROL_MAX 10 + +/* Control Code */ +/* + * prctl(xxx, 1, "PATH", "ARGS") + * success return 0, error return -N + */ +#define SUKISU_KPM_LOAD 1 + +/* + * prctl(xxx, 2, "NAME") + * success return 0, error return -N + */ +#define SUKISU_KPM_UNLOAD 2 + +/* + * num = prctl(xxx, 3) + * error return -N + * success return +num or 0 + */ +#define SUKISU_KPM_NUM 3 + +/* + * prctl(xxx, 4, Buffer, BufferSize) + * success return +out, error return -N + */ +#define SUKISU_KPM_LIST 4 + +/* + * prctl(xxx, 5, "NAME", Buffer[256]) + * success return +out, error return -N + */ +#define SUKISU_KPM_INFO 5 + +/* + * prctl(xxx, 6, "NAME", "ARGS") + * success return KPM's result value + * error return -N + */ +#define SUKISU_KPM_CONTROL 6 + +/* + * prctl(xxx, 7, buffer, bufferSize) + * success return KPM's result value + * error return -N + */ +#define SUKISU_KPM_VERSION 7 + +#endif diff --git a/kernel/kpm/super_access.c b/kernel/kpm/super_access.c new file mode 100644 index 0000000..9bb7779 --- /dev/null +++ b/kernel/kpm/super_access.c @@ -0,0 +1,278 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include <../fs/mount.h> +#include "kpm.h" +#include "compact.h" + +struct DynamicStructMember { + const char *name; + size_t size; + size_t offset; +}; + +struct DynamicStructInfo { + const char *name; + size_t count; + size_t total_size; + struct DynamicStructMember *members; +}; + +#define DYNAMIC_STRUCT_BEGIN(struct_name) \ + static struct DynamicStructMember struct_name##_members[] = { + +#define DEFINE_MEMBER(struct_name, member) \ + { \ + .name = #member, \ + .size = sizeof(((struct struct_name *)0)->member), \ + .offset = offsetof(struct struct_name, member) \ + }, + +#define DYNAMIC_STRUCT_END(struct_name) \ + }; \ + static struct DynamicStructInfo struct_name##_info = { \ + .name = #struct_name, \ + .count = sizeof(struct_name##_members) / sizeof(struct DynamicStructMember), \ + .total_size = sizeof(struct struct_name), \ + .members = struct_name##_members \ + }; + +DYNAMIC_STRUCT_BEGIN(mount) + DEFINE_MEMBER(mount, mnt_parent) + DEFINE_MEMBER(mount, mnt) + DEFINE_MEMBER(mount, mnt_id) + DEFINE_MEMBER(mount, mnt_group_id) + DEFINE_MEMBER(mount, mnt_expiry_mark) + DEFINE_MEMBER(mount, mnt_master) + DEFINE_MEMBER(mount, mnt_devname) +DYNAMIC_STRUCT_END(mount) + +DYNAMIC_STRUCT_BEGIN(vfsmount) + DEFINE_MEMBER(vfsmount, mnt_root) + DEFINE_MEMBER(vfsmount, mnt_sb) + DEFINE_MEMBER(vfsmount, mnt_flags) +DYNAMIC_STRUCT_END(vfsmount) + +DYNAMIC_STRUCT_BEGIN(mnt_namespace) + DEFINE_MEMBER(mnt_namespace, ns) + DEFINE_MEMBER(mnt_namespace, root) + DEFINE_MEMBER(mnt_namespace, seq) + DEFINE_MEMBER(mnt_namespace, mounts) +#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 15, 0) + DEFINE_MEMBER(mnt_namespace, count) +#endif +DYNAMIC_STRUCT_END(mnt_namespace) + +#ifdef CONFIG_KPROBES +DYNAMIC_STRUCT_BEGIN(kprobe) + DEFINE_MEMBER(kprobe, addr) + DEFINE_MEMBER(kprobe, symbol_name) + DEFINE_MEMBER(kprobe, offset) + DEFINE_MEMBER(kprobe, pre_handler) + DEFINE_MEMBER(kprobe, post_handler) +#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 15, 0) + DEFINE_MEMBER(kprobe, fault_handler) +#endif + DEFINE_MEMBER(kprobe, flags) +DYNAMIC_STRUCT_END(kprobe) +#endif + +DYNAMIC_STRUCT_BEGIN(vm_area_struct) + DEFINE_MEMBER(vm_area_struct,vm_start) + DEFINE_MEMBER(vm_area_struct,vm_end) + DEFINE_MEMBER(vm_area_struct,vm_flags) + DEFINE_MEMBER(vm_area_struct,anon_vma) + DEFINE_MEMBER(vm_area_struct,vm_pgoff) + DEFINE_MEMBER(vm_area_struct,vm_file) + DEFINE_MEMBER(vm_area_struct,vm_private_data) +#ifdef CONFIG_ANON_VMA_NAME + DEFINE_MEMBER(vm_area_struct, anon_name) +#endif + DEFINE_MEMBER(vm_area_struct, vm_ops) +DYNAMIC_STRUCT_END(vm_area_struct) + +DYNAMIC_STRUCT_BEGIN(vm_operations_struct) + DEFINE_MEMBER(vm_operations_struct, open) + DEFINE_MEMBER(vm_operations_struct, close) + DEFINE_MEMBER(vm_operations_struct, name) + DEFINE_MEMBER(vm_operations_struct, access) +DYNAMIC_STRUCT_END(vm_operations_struct) + +DYNAMIC_STRUCT_BEGIN(netlink_kernel_cfg) + DEFINE_MEMBER(netlink_kernel_cfg, groups) + DEFINE_MEMBER(netlink_kernel_cfg, flags) + DEFINE_MEMBER(netlink_kernel_cfg, input) + DEFINE_MEMBER(netlink_kernel_cfg, cb_mutex) + DEFINE_MEMBER(netlink_kernel_cfg, bind) + DEFINE_MEMBER(netlink_kernel_cfg, unbind) +#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 1, 0) + DEFINE_MEMBER(netlink_kernel_cfg, compare) +#endif +DYNAMIC_STRUCT_END(netlink_kernel_cfg) + +DYNAMIC_STRUCT_BEGIN(task_struct) + DEFINE_MEMBER(task_struct, pid) + DEFINE_MEMBER(task_struct, tgid) + DEFINE_MEMBER(task_struct, cred) + DEFINE_MEMBER(task_struct, real_cred) + DEFINE_MEMBER(task_struct, comm) + DEFINE_MEMBER(task_struct, parent) + DEFINE_MEMBER(task_struct, group_leader) + DEFINE_MEMBER(task_struct, mm) + DEFINE_MEMBER(task_struct, active_mm) +#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 19, 0) + DEFINE_MEMBER(task_struct, pids[PIDTYPE_PID].pid) +#else + DEFINE_MEMBER(task_struct, thread_pid) +#endif + DEFINE_MEMBER(task_struct, files) + DEFINE_MEMBER(task_struct, seccomp) +#ifdef CONFIG_THREAD_INFO_IN_TASK + DEFINE_MEMBER(task_struct, thread_info) +#endif +#ifdef CONFIG_CGROUPS + DEFINE_MEMBER(task_struct, cgroups) +#endif +#ifdef CONFIG_SECURITY + DEFINE_MEMBER(task_struct, security) +#endif + DEFINE_MEMBER(task_struct, thread) +DYNAMIC_STRUCT_END(task_struct) + +#define STRUCT_INFO(name) &(name##_info) + +static struct DynamicStructInfo *dynamic_struct_infos[] = { + STRUCT_INFO(mount), + STRUCT_INFO(vfsmount), + STRUCT_INFO(mnt_namespace), +#ifdef CONFIG_KPROBES + STRUCT_INFO(kprobe), +#endif + STRUCT_INFO(vm_area_struct), + STRUCT_INFO(vm_operations_struct), + STRUCT_INFO(netlink_kernel_cfg), + STRUCT_INFO(task_struct) +}; + +/* + * return 0 if successful + * return -1 if struct not defined + */ +int sukisu_super_find_struct(const char *struct_name, size_t *out_size, int *out_members) +{ + for (size_t i = 0; i < (sizeof(dynamic_struct_infos) / sizeof(dynamic_struct_infos[0])); i++) { + struct DynamicStructInfo *info = dynamic_struct_infos[i]; + + if (strcmp(struct_name, info->name) == 0) { + if (out_size) + *out_size = info->total_size; + + if (out_members) + *out_members = info->count; + + return 0; + } + } + + return -1; +} +EXPORT_SYMBOL(sukisu_super_find_struct); + +/* + * Dynamic access struct + * return 0 if successful + * return -1 if struct not defined + * return -2 if member not defined + */ +int sukisu_super_access(const char *struct_name, const char *member_name, size_t *out_offset, + size_t *out_size) +{ + for (size_t i = 0; i < (sizeof(dynamic_struct_infos) / sizeof(dynamic_struct_infos[0])); i++) { + struct DynamicStructInfo *info = dynamic_struct_infos[i]; + + if (strcmp(struct_name, info->name) == 0) { + for (size_t i1 = 0; i1 < info->count; i1++) { + if (strcmp(info->members[i1].name, member_name) == 0) { + if (out_offset) + *out_offset = info->members[i].offset; + + if (out_size) + *out_size = info->members[i].size; + + return 0; + } + } + + return -2; + } + } + + return -1; +} +EXPORT_SYMBOL(sukisu_super_access); + +#define DYNAMIC_CONTAINER_OF(offset, member_ptr) ({ \ + (offset != (size_t)-1) ? (void*)((char*)(member_ptr) - offset) : NULL; \ +}) + +/* + * Dynamic container_of + * return 0 if success + * return -1 if current struct not defined + * return -2 if target member not defined + */ +int sukisu_super_container_of(const char *struct_name, const char *member_name, void *ptr, + void **out_ptr) +{ + if (ptr == NULL) + return -3; + + for (size_t i = 0; i < (sizeof(dynamic_struct_infos) / sizeof(dynamic_struct_infos[0])); i++) { + struct DynamicStructInfo *info = dynamic_struct_infos[i]; + + if (strcmp(struct_name, info->name) == 0) { + for (size_t i1 = 0; i1 < info->count; i1++) { + if (strcmp(info->members[i1].name, member_name) == 0) { + *out_ptr = (void *)DYNAMIC_CONTAINER_OF(info->members[i1].offset, ptr); + + return 0; + } + } + + return -2; + } + } + + return -1; +} +EXPORT_SYMBOL(sukisu_super_container_of); diff --git a/kernel/kpm/super_access.h b/kernel/kpm/super_access.h new file mode 100644 index 0000000..4f02109 --- /dev/null +++ b/kernel/kpm/super_access.h @@ -0,0 +1,15 @@ +#ifndef __SUKISU_SUPER_ACCESS_H +#define __SUKISU_SUPER_ACCESS_H + +#include +#include +#include "kpm.h" +#include "compact.h" + +extern int sukisu_super_find_struct(const char *struct_name, size_t *out_size, int *out_members); +extern int sukisu_super_access(const char *struct_name, const char *member_name, size_t *out_offset, + size_t *out_size); +extern int sukisu_super_container_of(const char *struct_name, const char *member_name, void *ptr, + void **out_ptr); + +#endif \ No newline at end of file diff --git a/kernel/ksu.c b/kernel/ksu.c new file mode 100644 index 0000000..850050c --- /dev/null +++ b/kernel/ksu.c @@ -0,0 +1,116 @@ +#include +#include +#include +#include +#include +#include + +#include "allowlist.h" +#include "feature.h" +#include "klog.h" // IWYU pragma: keep +#include "throne_tracker.h" +#include "syscall_hook_manager.h" +#include "ksud.h" +#include "supercalls.h" + +#include "sulog.h" +#include "throne_comm.h" +#include "dynamic_manager.h" + +static struct workqueue_struct *ksu_workqueue; + +bool ksu_queue_work(struct work_struct *work) +{ + return queue_work(ksu_workqueue, work); +} + +void sukisu_custom_config_init(void) +{ +} + +void sukisu_custom_config_exit(void) +{ + ksu_uid_exit(); + ksu_throne_comm_exit(); + ksu_dynamic_manager_exit(); +#if __SULOG_GATE + ksu_sulog_exit(); +#endif +} + +int __init kernelsu_init(void) +{ +#ifdef CONFIG_KSU_DEBUG + pr_alert("*************************************************************"); + pr_alert("** NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE **"); + pr_alert("** **"); + pr_alert("** You are running KernelSU in DEBUG mode **"); + pr_alert("** **"); + pr_alert("** NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE **"); + pr_alert("*************************************************************"); +#endif + + ksu_feature_init(); + + ksu_supercalls_init(); + + sukisu_custom_config_init(); + + ksu_syscall_hook_manager_init(); + + ksu_workqueue = alloc_ordered_workqueue("kernelsu_work_queue", 0); + + ksu_allowlist_init(); + + ksu_throne_tracker_init(); + +#ifdef KSU_KPROBES_HOOK + ksu_ksud_init(); +#else + pr_alert("KPROBES is disabled, KernelSU may not work, please check https://kernelsu.org/guide/how-to-integrate-for-non-gki.html"); +#endif + +#ifdef MODULE +#ifndef CONFIG_KSU_DEBUG + kobject_del(&THIS_MODULE->mkobj.kobj); +#endif +#endif + return 0; +} + +extern void ksu_observer_exit(void); +void kernelsu_exit(void) +{ + ksu_allowlist_exit(); + + ksu_observer_exit(); + + ksu_throne_tracker_exit(); + + destroy_workqueue(ksu_workqueue); + +#ifdef KSU_KPROBES_HOOK + ksu_ksud_exit(); +#endif + + ksu_syscall_hook_manager_exit(); + + sukisu_custom_config_exit(); + + ksu_supercalls_exit(); + + ksu_feature_exit(); +} + +module_init(kernelsu_init); +module_exit(kernelsu_exit); + +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("weishu"); +MODULE_DESCRIPTION("Android KernelSU"); + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 13, 0) +MODULE_IMPORT_NS("VFS_internal_I_am_really_a_filesystem_and_am_NOT_a_driver"); +#else +MODULE_IMPORT_NS(VFS_internal_I_am_really_a_filesystem_and_am_NOT_a_driver); +#endif diff --git a/kernel/ksu.h b/kernel/ksu.h new file mode 100644 index 0000000..93750af --- /dev/null +++ b/kernel/ksu.h @@ -0,0 +1,62 @@ +#ifndef __KSU_H_KSU +#define __KSU_H_KSU + +#include +#include + +#define KERNEL_SU_VERSION KSU_VERSION +#define KERNEL_SU_OPTION 0xDEADBEEF + +extern bool ksu_uid_scanner_enabled; + +#define EVENT_POST_FS_DATA 1 +#define EVENT_BOOT_COMPLETED 2 +#define EVENT_MODULE_MOUNTED 3 + +// SukiSU Ultra kernel su version full strings +#ifndef KSU_VERSION_FULL +#define KSU_VERSION_FULL "v3.x-00000000@unknown" +#endif +#define KSU_FULL_VERSION_STRING 255 + +#define DYNAMIC_MANAGER_OP_SET 0 +#define DYNAMIC_MANAGER_OP_GET 1 +#define DYNAMIC_MANAGER_OP_CLEAR 2 + +#define UID_SCANNER_OP_GET_STATUS 0 +#define UID_SCANNER_OP_TOGGLE 1 +#define UID_SCANNER_OP_CLEAR_ENV 2 + +struct dynamic_manager_user_config { + unsigned int operation; + unsigned int size; + char hash[65]; +}; + +struct manager_list_info { + int count; + struct { + uid_t uid; + int signature_index; + } managers[2]; +}; + +bool ksu_queue_work(struct work_struct *work); + +#if 0 +static inline int startswith(char *s, char *prefix) +{ + return strncmp(s, prefix, strlen(prefix)); +} + +static inline int endswith(const char *s, const char *t) +{ + size_t slen = strlen(s); + size_t tlen = strlen(t); + if (tlen > slen) + return 1; + return strcmp(s + slen - tlen, t); +} +#endif + +#endif diff --git a/kernel/ksud.c b/kernel/ksud.c new file mode 100644 index 0000000..59f9279 --- /dev/null +++ b/kernel/ksud.c @@ -0,0 +1,660 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "manager.h" +#include "allowlist.h" +#include "arch.h" +#include "klog.h" // IWYU pragma: keep +#include "ksud.h" +#include "selinux/selinux.h" +#include "throne_tracker.h" + +bool ksu_module_mounted __read_mostly = false; +bool ksu_boot_completed __read_mostly = false; + +static const char KERNEL_SU_RC[] = + "\n" + + "on post-fs-data\n" + " start logd\n" + // We should wait for the post-fs-data finish + " exec u:r:su:s0 root -- " KSUD_PATH " post-fs-data\n" + "\n" + + "on nonencrypted\n" + " exec u:r:su:s0 root -- " KSUD_PATH " services\n" + "\n" + + "on property:vold.decrypt=trigger_restart_framework\n" + " exec u:r:su:s0 root -- " KSUD_PATH " services\n" + "\n" + + "on property:sys.boot_completed=1\n" + " exec u:r:su:s0 root -- " KSUD_PATH " boot-completed\n" + "\n" + + "\n"; + +static void stop_vfs_read_hook(); +static void stop_execve_hook(); +static void stop_input_hook(); + +#ifdef KSU_KPROBES_HOOK +static struct work_struct stop_vfs_read_work; +static struct work_struct stop_execve_hook_work; +static struct work_struct stop_input_hook_work; +#else +bool ksu_vfs_read_hook __read_mostly = true; +bool ksu_execveat_hook __read_mostly = true; +bool ksu_input_hook __read_mostly = true; +#endif + +u32 ksu_file_sid; + +// Detect whether it is on or not +static bool is_boot_phase = true; + +void on_post_fs_data(void) +{ + static bool done = false; + if (done) { + pr_info("on_post_fs_data already done\n"); + return; + } + done = true; + pr_info("on_post_fs_data!\n"); + ksu_load_allow_list(); + ksu_observer_init(); + // sanity check, this may influence the performance + stop_input_hook(); + + // End of boot state + is_boot_phase = false; + + ksu_file_sid = ksu_get_ksu_file_sid(); + pr_info("ksu_file sid: %d\n", ksu_file_sid); +} + +extern void ext4_unregister_sysfs(struct super_block *sb); +int nuke_ext4_sysfs(const char* mnt) +{ +#ifdef CONFIG_EXT4_FS + struct path path; + int err = kern_path(mnt, 0, &path); + if (err) { + pr_err("nuke path err: %d\n", err); + return err; + } + + struct super_block *sb = path.dentry->d_inode->i_sb; + const char *name = sb->s_type->name; + if (strcmp(name, "ext4") != 0) { + pr_info("nuke but module aren't mounted\n"); + path_put(&path); + return -EINVAL; + } + + ext4_unregister_sysfs(sb); + path_put(&path); + + return 0; +#endif +} + +void on_module_mounted(void){ + pr_info("on_module_mounted!\n"); + ksu_module_mounted = true; +} + +void on_boot_completed(void){ + ksu_boot_completed = true; + pr_info("on_boot_completed!\n"); + track_throne(true); +} + +#define MAX_ARG_STRINGS 0x7FFFFFFF +struct user_arg_ptr { +#ifdef CONFIG_COMPAT + bool is_compat; +#endif + union { + const char __user *const __user *native; +#ifdef CONFIG_COMPAT + const compat_uptr_t __user *compat; +#endif + } ptr; +}; + +static const char __user *get_user_arg_ptr(struct user_arg_ptr argv, int nr) +{ + const char __user *native; + +#ifdef CONFIG_COMPAT + if (unlikely(argv.is_compat)) { + compat_uptr_t compat; + + if (get_user(compat, argv.ptr.compat + nr)) + return ERR_PTR(-EFAULT); + + return compat_ptr(compat); + } +#endif + + if (get_user(native, argv.ptr.native + nr)) + return ERR_PTR(-EFAULT); + + return native; +} + +/* + * count() counts the number of strings in array ARGV. + */ + +/* + * Make sure old GCC compiler can use __maybe_unused, + * Test passed in 4.4.x ~ 4.9.x when use GCC. + */ + +static int __maybe_unused count(struct user_arg_ptr argv, int max) +{ + int i = 0; + + if (argv.ptr.native != NULL) { + for (;;) { + const char __user *p = get_user_arg_ptr(argv, i); + + if (!p) + break; + + if (IS_ERR(p)) + return -EFAULT; + + if (i >= max) + return -E2BIG; + ++i; + + if (fatal_signal_pending(current)) + return -ERESTARTNOHAND; + } + } + return i; +} + +static void on_post_fs_data_cbfun(struct callback_head *cb) +{ + on_post_fs_data(); +} + +static struct callback_head on_post_fs_data_cb = { .func = + on_post_fs_data_cbfun }; + +// IMPORTANT NOTE: the call from execve_handler_pre WON'T provided correct value for envp and flags in GKI version +int ksu_handle_execveat_ksud(int *fd, struct filename **filename_ptr, + struct user_arg_ptr *argv, + struct user_arg_ptr *envp, int *flags) +{ +#ifndef KSU_KPROBES_HOOK + if (!ksu_execveat_hook) { + return 0; + } +#endif + struct filename *filename; + + static const char app_process[] = "/system/bin/app_process"; + static bool first_app_process = true; + + /* This applies to versions Android 10+ */ + static const char system_bin_init[] = "/system/bin/init"; + /* This applies to versions between Android 6 ~ 9 */ + static const char old_system_init[] = "/init"; + static bool init_second_stage_executed = false; + + if (!filename_ptr) + return 0; + + filename = *filename_ptr; + if (IS_ERR(filename)) { + return 0; + } + + if (unlikely(!memcmp(filename->name, system_bin_init, + sizeof(system_bin_init) - 1) && + argv)) { + // /system/bin/init executed + int argc = count(*argv, MAX_ARG_STRINGS); + pr_info("/system/bin/init argc: %d\n", argc); + if (argc > 1 && !init_second_stage_executed) { + const char __user *p = get_user_arg_ptr(*argv, 1); + if (p && !IS_ERR(p)) { + char first_arg[16]; + strncpy_from_user_nofault(first_arg, p, sizeof(first_arg)); + pr_info("/system/bin/init first arg: %s\n", first_arg); + if (!strcmp(first_arg, "second_stage")) { + pr_info("/system/bin/init second_stage executed\n"); + apply_kernelsu_rules(); + init_second_stage_executed = true; + } + } else { + pr_err("/system/bin/init parse args err!\n"); + } + } + } else if (unlikely(!memcmp(filename->name, old_system_init, + sizeof(old_system_init) - 1) && + argv)) { + // /init executed + int argc = count(*argv, MAX_ARG_STRINGS); + pr_info("/init argc: %d\n", argc); + if (argc > 1 && !init_second_stage_executed) { + /* This applies to versions between Android 6 ~ 7 */ + const char __user *p = get_user_arg_ptr(*argv, 1); + if (p && !IS_ERR(p)) { + char first_arg[16]; + strncpy_from_user_nofault(first_arg, p, sizeof(first_arg)); + pr_info("/init first arg: %s\n", first_arg); + if (!strcmp(first_arg, "--second-stage")) { + pr_info("/init second_stage executed\n"); + apply_kernelsu_rules(); + init_second_stage_executed = true; + } + } else { + pr_err("/init parse args err!\n"); + } + } else if (argc == 1 && !init_second_stage_executed && envp) { + /* This applies to versions between Android 8 ~ 9 */ + int envc = count(*envp, MAX_ARG_STRINGS); + if (envc > 0) { + int n; + for (n = 1; n <= envc; n++) { + const char __user *p = get_user_arg_ptr(*envp, n); + if (!p || IS_ERR(p)) { + continue; + } + char env[256]; + // Reading environment variable strings from user space + if (strncpy_from_user_nofault(env, p, sizeof(env)) < 0) + continue; + // Parsing environment variable names and values + char *env_name = env; + char *env_value = strchr(env, '='); + if (env_value == NULL) + continue; + // Replace equal sign with string terminator + *env_value = '\0'; + env_value++; + // Check if the environment variable name and value are matching + if (!strcmp(env_name, "INIT_SECOND_STAGE") && + (!strcmp(env_value, "1") || + !strcmp(env_value, "true"))) { + pr_info("/init second_stage executed\n"); + apply_kernelsu_rules(); + init_second_stage_executed = true; + } + } + } + } + } + + if (unlikely(first_app_process && !memcmp(filename->name, app_process, + sizeof(app_process) - 1))) { + first_app_process = false; + pr_info("exec app_process, /data prepared, second_stage: %d\n", + init_second_stage_executed); + struct task_struct *init_task; + rcu_read_lock(); + init_task = rcu_dereference(current->real_parent); + if (init_task) { + task_work_add(init_task, &on_post_fs_data_cb, TWA_RESUME); + } + rcu_read_unlock(); + + stop_execve_hook(); + } + + return 0; +} + +static ssize_t (*orig_read)(struct file *, char __user *, size_t, loff_t *); +static ssize_t (*orig_read_iter)(struct kiocb *, struct iov_iter *); +static struct file_operations fops_proxy; +static ssize_t read_count_append = 0; + +static ssize_t read_proxy(struct file *file, char __user *buf, size_t count, + loff_t *pos) +{ + bool first_read = file->f_pos == 0; + ssize_t ret = orig_read(file, buf, count, pos); + if (first_read) { + pr_info("read_proxy append %ld + %ld\n", ret, read_count_append); + ret += read_count_append; + } + return ret; +} + +static ssize_t read_iter_proxy(struct kiocb *iocb, struct iov_iter *to) +{ + bool first_read = iocb->ki_pos == 0; + ssize_t ret = orig_read_iter(iocb, to); + if (first_read) { + pr_info("read_iter_proxy append %ld + %ld\n", ret, read_count_append); + ret += read_count_append; + } + return ret; +} + +static int ksu_handle_vfs_read(struct file **file_ptr, char __user **buf_ptr, + size_t *count_ptr, loff_t **pos) +{ +#ifndef KSU_KPROBES_HOOK + if (!ksu_vfs_read_hook) { + return 0; + } +#endif + struct file *file; + char __user *buf; + size_t count; + + if (strcmp(current->comm, "init")) { + // we are only interest in `init` process + return 0; + } + + file = *file_ptr; + if (IS_ERR(file)) { + return 0; + } + + if (!d_is_reg(file->f_path.dentry)) { + return 0; + } + + const char *short_name = file->f_path.dentry->d_name.name; + if (strcmp(short_name, "atrace.rc")) { + // we are only interest `atrace.rc` file name file + return 0; + } + char path[256]; + char *dpath = d_path(&file->f_path, path, sizeof(path)); + + if (IS_ERR(dpath)) { + return 0; + } + + if (strcmp(dpath, "/system/etc/init/atrace.rc")) { + return 0; + } + + // we only process the first read + static bool rc_inserted = false; + if (rc_inserted) { + // we don't need this kprobe, unregister it! + stop_vfs_read_hook(); + return 0; + } + rc_inserted = true; + + // now we can sure that the init process is reading + // `/system/etc/init/atrace.rc` + buf = *buf_ptr; + count = *count_ptr; + + size_t rc_count = strlen(KERNEL_SU_RC); + + pr_info("vfs_read: %s, comm: %s, count: %zu, rc_count: %zu\n", dpath, + current->comm, count, rc_count); + + if (count < rc_count) { + pr_err("count: %zu < rc_count: %zu\n", count, rc_count); + return 0; + } + + size_t ret = copy_to_user(buf, KERNEL_SU_RC, rc_count); + if (ret) { + pr_err("copy ksud.rc failed: %zu\n", ret); + return 0; + } + + // we've succeed to insert ksud.rc, now we need to proxy the read and modify the result! + // But, we can not modify the file_operations directly, because it's in read-only memory. + // We just replace the whole file_operations with a proxy one. + memcpy(&fops_proxy, file->f_op, sizeof(struct file_operations)); + orig_read = file->f_op->read; + if (orig_read) { + fops_proxy.read = read_proxy; + } + orig_read_iter = file->f_op->read_iter; + if (orig_read_iter) { + fops_proxy.read_iter = read_iter_proxy; + } + // replace the file_operations + file->f_op = &fops_proxy; + read_count_append = rc_count; + + *buf_ptr = buf + rc_count; + *count_ptr = count - rc_count; + + return 0; +} + +int ksu_handle_sys_read(unsigned int fd, char __user **buf_ptr, + size_t *count_ptr) +{ + struct file *file = fget(fd); + if (!file) { + return 0; + } + int result = ksu_handle_vfs_read(&file, buf_ptr, count_ptr, NULL); + fput(file); + return result; +} + +static unsigned int volumedown_pressed_count = 0; + +static bool is_volumedown_enough(unsigned int count) +{ + return count >= 3; +} + +int ksu_handle_input_handle_event(unsigned int *type, unsigned int *code, + int *value) +{ +#ifndef KSU_KPROBES_HOOK + if (!ksu_input_hook) { + return 0; + } +#endif + if (*type == EV_KEY && *code == KEY_VOLUMEDOWN) { + int val = *value; + pr_info("KEY_VOLUMEDOWN val: %d\n", val); + if (val && is_boot_phase) { + // key pressed, count it + volumedown_pressed_count += 1; + if (is_volumedown_enough(volumedown_pressed_count)) { + stop_input_hook(); + } + } + } + + return 0; +} + +bool ksu_is_safe_mode() +{ + static bool safe_mode = false; + if (safe_mode) { + // don't need to check again, userspace may call multiple times + return true; + } + + // stop hook first! + stop_input_hook(); + + pr_info("volumedown_pressed_count: %d\n", volumedown_pressed_count); + if (is_volumedown_enough(volumedown_pressed_count)) { + // pressed over 3 times + pr_info("KEY_VOLUMEDOWN pressed max times, safe mode detected!\n"); + safe_mode = true; + return true; + } + + return false; +} + +#ifdef KSU_KPROBES_HOOK + +static int sys_execve_handler_pre(struct kprobe *p, struct pt_regs *regs) +{ + struct pt_regs *real_regs = PT_REAL_REGS(regs); + const char __user **filename_user = + (const char **)&PT_REGS_PARM1(real_regs); + const char __user *const __user *__argv = + (const char __user *const __user *)PT_REGS_PARM2(real_regs); + struct user_arg_ptr argv = { .ptr.native = __argv }; + struct filename filename_in, *filename_p; + char path[32]; + + if (!filename_user) + return 0; + + memset(path, 0, sizeof(path)); + strncpy_from_user_nofault(path, *filename_user, 32); + filename_in.name = path; + + filename_p = &filename_in; + return ksu_handle_execveat_ksud(AT_FDCWD, &filename_p, &argv, NULL, NULL); +} + +static int sys_read_handler_pre(struct kprobe *p, struct pt_regs *regs) +{ + struct pt_regs *real_regs = PT_REAL_REGS(regs); + unsigned int fd = PT_REGS_PARM1(real_regs); + char __user **buf_ptr = (char __user **)&PT_REGS_PARM2(real_regs); + size_t count_ptr = (size_t *)&PT_REGS_PARM3(real_regs); + + return ksu_handle_sys_read(fd, buf_ptr, count_ptr); +} + +static int input_handle_event_handler_pre(struct kprobe *p, + struct pt_regs *regs) +{ + unsigned int *type = (unsigned int *)&PT_REGS_PARM2(regs); + unsigned int *code = (unsigned int *)&PT_REGS_PARM3(regs); + int *value = (int *)&PT_REGS_CCALL_PARM4(regs); + return ksu_handle_input_handle_event(type, code, value); +} + +static struct kprobe execve_kp = { + .symbol_name = SYS_EXECVE_SYMBOL, + .pre_handler = sys_execve_handler_pre, +}; + +static struct kprobe vfs_read_kp = { + .symbol_name = SYS_READ_SYMBOL, + .pre_handler = sys_read_handler_pre, +}; + +static struct kprobe input_event_kp = { + .symbol_name = "input_event", + .pre_handler = input_handle_event_handler_pre, +}; + +static void do_stop_vfs_read_hook(struct work_struct *work) +{ + unregister_kprobe(&vfs_read_kp); +} + +static void do_stop_execve_hook(struct work_struct *work) +{ + unregister_kprobe(&execve_kp); +} + +static void do_stop_input_hook(struct work_struct *work) +{ + unregister_kprobe(&input_event_kp); +} +#endif + +static void stop_vfs_read_hook() +{ +#ifdef KSU_KPROBES_HOOK + bool ret = schedule_work(&stop_vfs_read_work); + pr_info("unregister vfs_read kprobe: %d!\n", ret); +#else + ksu_vfs_read_hook = false; + pr_info("stop vfs_read_hook\n"); +#endif +} + +static void stop_execve_hook() +{ +#ifdef KSU_KPROBES_HOOK + bool ret = schedule_work(&stop_execve_hook_work); + pr_info("unregister execve kprobe: %d!\n", ret); +#else + ksu_execveat_hook = false; + pr_info("stop execve_hook\n"); +#endif +} + +static void stop_input_hook() +{ + static bool input_hook_stopped = false; + if (input_hook_stopped) { + return; + } + input_hook_stopped = true; +#ifdef KSU_KPROBES_HOOK + bool ret = schedule_work(&stop_input_hook_work); + pr_info("unregister input kprobe: %d!\n", ret); +#else + ksu_input_hook = false; + pr_info("stop input_hook\n"); +#endif +} + +// ksud: module support +void ksu_ksud_init() +{ +#ifdef KSU_KPROBES_HOOK + int ret; + + ret = register_kprobe(&execve_kp); + pr_info("ksud: execve_kp: %d\n", ret); + + ret = register_kprobe(&vfs_read_kp); + pr_info("ksud: vfs_read_kp: %d\n", ret); + + ret = register_kprobe(&input_event_kp); + pr_info("ksud: input_event_kp: %d\n", ret); + + INIT_WORK(&stop_vfs_read_work, do_stop_vfs_read_hook); + INIT_WORK(&stop_execve_hook_work, do_stop_execve_hook); + INIT_WORK(&stop_input_hook_work, do_stop_input_hook); +#endif +} + +void ksu_ksud_exit() +{ +#ifdef KSU_KPROBES_HOOK + unregister_kprobe(&execve_kp); + // this should be done before unregister vfs_read_kp + // unregister_kprobe(&vfs_read_kp); + unregister_kprobe(&input_event_kp); +#endif + is_boot_phase = false; +} diff --git a/kernel/ksud.h b/kernel/ksud.h new file mode 100644 index 0000000..2ee62e9 --- /dev/null +++ b/kernel/ksud.h @@ -0,0 +1,21 @@ +#ifndef __KSU_H_KSUD +#define __KSU_H_KSUD + +#define KSUD_PATH "/data/adb/ksud" + +void ksu_ksud_init(); +void ksu_ksud_exit(); + +void on_post_fs_data(void); +void on_module_mounted(void); +void on_boot_completed(void); + +bool ksu_is_safe_mode(void); + +int nuke_ext4_sysfs(const char* mnt); + +extern u32 ksu_file_sid; +extern bool ksu_module_mounted; +extern bool ksu_boot_completed; + +#endif diff --git a/kernel/manager.h b/kernel/manager.h new file mode 100644 index 0000000..2421da7 --- /dev/null +++ b/kernel/manager.h @@ -0,0 +1,43 @@ +#ifndef __KSU_H_KSU_MANAGER +#define __KSU_H_KSU_MANAGER + +#include +#include + +#define KSU_INVALID_UID -1 + +extern uid_t ksu_manager_uid; // DO NOT DIRECT USE + +extern bool ksu_is_any_manager(uid_t uid); +extern void ksu_add_manager(uid_t uid, int signature_index); +extern void ksu_remove_manager(uid_t uid); +extern int ksu_get_manager_signature_index(uid_t uid); + +static inline bool ksu_is_manager_uid_valid(void) +{ + return ksu_manager_uid != KSU_INVALID_UID; +} + +static inline bool is_manager(void) +{ + return unlikely(ksu_is_any_manager(current_uid().val) || + (ksu_manager_uid != KSU_INVALID_UID && ksu_manager_uid == current_uid().val)); +} + +static inline uid_t ksu_get_manager_uid(void) +{ + return ksu_manager_uid; +} + +static inline void ksu_set_manager_uid(uid_t uid) +{ + ksu_manager_uid = uid; +} + +static inline void ksu_invalidate_manager_uid(void) +{ + ksu_manager_uid = KSU_INVALID_UID; +} + +int ksu_observer_init(void); +#endif diff --git a/kernel/manager_sign.h b/kernel/manager_sign.h new file mode 100644 index 0000000..265ef35 --- /dev/null +++ b/kernel/manager_sign.h @@ -0,0 +1,17 @@ +#ifndef MANAGER_SIGN_H +#define MANAGER_SIGN_H + +// ShirkNeko/SukiSU +#define EXPECTED_SIZE_SHIRKNEKO 0x35c +#define EXPECTED_HASH_SHIRKNEKO "947ae944f3de4ed4c21a7e4f7953ecf351bfa2b36239da37a34111ad29993eef" + +// Dynamic Sign +#define EXPECTED_SIZE_OTHER 0x300 +#define EXPECTED_HASH_OTHER "0000000000000000000000000000000000000000000000000000000000000000" + +typedef struct { + unsigned size; + const char *sha256; +} apk_sign_key_t; + +#endif /* MANAGER_SIGN_H */ diff --git a/kernel/manual_su.c b/kernel/manual_su.c new file mode 100644 index 0000000..dfb3a25 --- /dev/null +++ b/kernel/manual_su.c @@ -0,0 +1,357 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "manual_su.h" +#include "ksu.h" +#include "allowlist.h" +#include "manager.h" +#include "app_profile.h" + +static bool current_verified = false; +static void ksu_cleanup_expired_tokens(void); +static bool is_current_verified(void); +static void add_pending_root(uid_t uid); + +static struct pending_uid pending_uids[MAX_PENDING] = {0}; +static int pending_cnt = 0; +static struct ksu_token_entry auth_tokens[MAX_TOKENS] = {0}; +static int token_count = 0; +static DEFINE_SPINLOCK(token_lock); + +static char* get_token_from_envp(void) +{ + struct mm_struct *mm; + char *envp_start, *envp_end; + char *env_ptr, *token = NULL; + unsigned long env_len; + char *env_copy = NULL; + + if (!current->mm) + return NULL; + + mm = current->mm; + + down_read(&mm->mmap_lock); + + envp_start = (char *)mm->env_start; + envp_end = (char *)mm->env_end; + env_len = envp_end - envp_start; + + if (env_len <= 0 || env_len > PAGE_SIZE * 32) { + up_read(&mm->mmap_lock); + return NULL; + } + + env_copy = kzalloc(env_len + 1, GFP_KERNEL); + if (!env_copy) { + up_read(&mm->mmap_lock); + return NULL; + } + + if (copy_from_user(env_copy, envp_start, env_len)) { + kfree(env_copy); + up_read(&mm->mmap_lock); + return NULL; + } + + up_read(&mm->mmap_lock); + + env_copy[env_len] = '\0'; + env_ptr = env_copy; + + while (env_ptr < env_copy + env_len) { + if (strncmp(env_ptr, KSU_TOKEN_ENV_NAME "=", strlen(KSU_TOKEN_ENV_NAME) + 1) == 0) { + char *token_start = env_ptr + strlen(KSU_TOKEN_ENV_NAME) + 1; + char *token_end = strchr(token_start, '\0'); + + if (token_end && (token_end - token_start) == KSU_TOKEN_LENGTH) { + token = kzalloc(KSU_TOKEN_LENGTH + 1, GFP_KERNEL); + if (token) { + memcpy(token, token_start, KSU_TOKEN_LENGTH); + token[KSU_TOKEN_LENGTH] = '\0'; + pr_info("manual_su: found auth token in environment\n"); + } + } + break; + } + + env_ptr += strlen(env_ptr) + 1; + } + + kfree(env_copy); + return token; +} + +static char* ksu_generate_auth_token(void) +{ + static char token_buffer[KSU_TOKEN_LENGTH + 1]; + unsigned long flags; + int i; + + ksu_cleanup_expired_tokens(); + + spin_lock_irqsave(&token_lock, flags); + + if (token_count >= MAX_TOKENS) { + for (i = 0; i < MAX_TOKENS - 1; i++) { + auth_tokens[i] = auth_tokens[i + 1]; + } + token_count = MAX_TOKENS - 1; + } + + for (i = 0; i < KSU_TOKEN_LENGTH; i++) { + u8 rand_byte; + get_random_bytes(&rand_byte, 1); + int char_type = rand_byte % 3; + if (char_type == 0) { + token_buffer[i] = 'A' + (rand_byte % 26); + } else if (char_type == 1) { + token_buffer[i] = 'a' + (rand_byte % 26); + } else { + token_buffer[i] = '0' + (rand_byte % 10); + } + } + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 13, 0) + strscpy(auth_tokens[token_count].token, token_buffer, KSU_TOKEN_LENGTH + 1); +#else + strlcpy(auth_tokens[token_count].token, token_buffer, KSU_TOKEN_LENGTH + 1); +#endif + auth_tokens[token_count].expire_time = jiffies + KSU_TOKEN_EXPIRE_TIME * HZ; + auth_tokens[token_count].used = false; + token_count++; + + spin_unlock_irqrestore(&token_lock, flags); + + pr_info("manual_su: generated new auth token (expires in %d seconds)\n", KSU_TOKEN_EXPIRE_TIME); + return token_buffer; +} + +static bool ksu_verify_auth_token(const char *token) +{ + unsigned long flags; + bool valid = false; + int i; + + if (!token || strlen(token) != KSU_TOKEN_LENGTH) { + return false; + } + + spin_lock_irqsave(&token_lock, flags); + + for (i = 0; i < token_count; i++) { + if (!auth_tokens[i].used && + time_before(jiffies, auth_tokens[i].expire_time) && + strcmp(auth_tokens[i].token, token) == 0) { + + auth_tokens[i].used = true; + valid = true; + pr_info("manual_su: auth token verified successfully\n"); + break; + } + } + + spin_unlock_irqrestore(&token_lock, flags); + + if (!valid) { + pr_warn("manual_su: invalid or expired auth token\n"); + } + + return valid; +} + +static void ksu_cleanup_expired_tokens(void) +{ + unsigned long flags; + int i, j; + + spin_lock_irqsave(&token_lock, flags); + + for (i = 0; i < token_count; ) { + if (time_after(jiffies, auth_tokens[i].expire_time) || auth_tokens[i].used) { + for (j = i; j < token_count - 1; j++) { + auth_tokens[j] = auth_tokens[j + 1]; + } + token_count--; + pr_debug("manual_su: cleaned up expired/used token\n"); + } else { + i++; + } + } + + spin_unlock_irqrestore(&token_lock, flags); +} + +static int handle_token_generation(struct manual_su_request *request) +{ + if (current_uid().val > 2000) { + pr_warn("manual_su: token generation denied for app UID %d\n", current_uid().val); + return -EPERM; + } + + char *new_token = ksu_generate_auth_token(); + if (!new_token) { + pr_err("manual_su: failed to generate token\n"); + return -ENOMEM; + } + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 13, 0) + strscpy(request->token_buffer, new_token, KSU_TOKEN_LENGTH + 1); +#else + strlcpy(request->token_buffer, new_token, KSU_TOKEN_LENGTH + 1); +#endif + + pr_info("manual_su: auth token generated successfully\n"); + return 0; +} + +static int handle_escalation_request(struct manual_su_request *request) +{ + uid_t target_uid = request->target_uid; + pid_t target_pid = request->target_pid; + struct task_struct *tsk; + + rcu_read_lock(); + tsk = pid_task(find_vpid(target_pid), PIDTYPE_PID); + if (!tsk || ksu_task_is_dead(tsk)) { + rcu_read_unlock(); + pr_err("cmd_su: PID %d is invalid or dead\n", target_pid); + return -ESRCH; + } + rcu_read_unlock(); + + if (current_uid().val == 0 || is_manager() || ksu_is_allow_uid_for_current(current_uid().val)) + goto allowed; + + char *env_token = get_token_from_envp(); + if (!env_token) { + pr_warn("manual_su: no auth token found in environment\n"); + return -EACCES; + } + + bool token_valid = ksu_verify_auth_token(env_token); + kfree(env_token); + + if (!token_valid) { + pr_warn("manual_su: token verification failed\n"); + return -EACCES; + } + +allowed: + current_verified = true; + escape_to_root_for_cmd_su(target_uid, target_pid); + return 0; +} + +static int handle_add_pending_request(struct manual_su_request *request) +{ + uid_t target_uid = request->target_uid; + + if (!is_current_verified()) { + pr_warn("manual_su: add_pending denied, not verified\n"); + return -EPERM; + } + + add_pending_root(target_uid); + current_verified = false; + pr_info("manual_su: pending root added for UID %d\n", target_uid); + return 0; +} + +int ksu_handle_manual_su_request(int option, struct manual_su_request *request) +{ + if (!request) { + pr_err("manual_su: invalid request pointer\n"); + return -EINVAL; + } + + switch (option) { + case MANUAL_SU_OP_GENERATE_TOKEN: + pr_info("manual_su: handling token generation request\n"); + return handle_token_generation(request); + + case MANUAL_SU_OP_ESCALATE: + pr_info("manual_su: handling escalation request for UID %d, PID %d\n", + request->target_uid, request->target_pid); + return handle_escalation_request(request); + + case MANUAL_SU_OP_ADD_PENDING: + pr_info("manual_su: handling add pending request for UID %d\n", request->target_uid); + return handle_add_pending_request(request); + + default: + pr_err("manual_su: unknown option %d\n", option); + return -EINVAL; + } +} + +static bool is_current_verified(void) +{ + return current_verified; +} + +bool is_pending_root(uid_t uid) +{ + for (int i = 0; i < pending_cnt; i++) { + if (pending_uids[i].uid == uid) { + pending_uids[i].use_count++; + pending_uids[i].remove_calls++; + return true; + } + } + return false; +} + +void remove_pending_root(uid_t uid) +{ + for (int i = 0; i < pending_cnt; i++) { + if (pending_uids[i].uid == uid) { + pending_uids[i].remove_calls++; + + if (pending_uids[i].remove_calls >= REMOVE_DELAY_CALLS) { + pending_uids[i] = pending_uids[--pending_cnt]; + pr_info("pending_root: removed UID %d after %d calls\n", uid, REMOVE_DELAY_CALLS); + ksu_temp_revoke_root_once(uid); + } else { + pr_info("pending_root: UID %d remove_call=%d (<%d)\n", + uid, pending_uids[i].remove_calls, REMOVE_DELAY_CALLS); + } + return; + } + } +} + +static void add_pending_root(uid_t uid) +{ + if (pending_cnt >= MAX_PENDING) { + pr_warn("pending_root: cache full\n"); + return; + } + for (int i = 0; i < pending_cnt; i++) { + if (pending_uids[i].uid == uid) { + pending_uids[i].use_count = 0; + pending_uids[i].remove_calls = 0; + return; + } + } + pending_uids[pending_cnt++] = (struct pending_uid){uid, 0}; + ksu_temp_grant_root_once(uid); + pr_info("pending_root: cached UID %d\n", uid); +} + +void ksu_try_escalate_for_uid(uid_t uid) +{ + if (!is_pending_root(uid)) + return; + + pr_info("pending_root: UID=%d temporarily allowed\n", uid); + remove_pending_root(uid); +} \ No newline at end of file diff --git a/kernel/manual_su.h b/kernel/manual_su.h new file mode 100644 index 0000000..419dbfc --- /dev/null +++ b/kernel/manual_su.h @@ -0,0 +1,49 @@ +#ifndef __KSU_MANUAL_SU_H +#define __KSU_MANUAL_SU_H + +#include +#include +#include + +#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 7, 0) +#define mmap_lock mmap_sem +#endif + +#define ksu_task_is_dead(t) ((t)->exit_state != 0) + +#define MAX_PENDING 16 +#define REMOVE_DELAY_CALLS 150 +#define MAX_TOKENS 10 + +#define KSU_SU_VERIFIED_BIT (1UL << 0) +#define KSU_TOKEN_LENGTH 32 +#define KSU_TOKEN_ENV_NAME "KSU_AUTH_TOKEN" +#define KSU_TOKEN_EXPIRE_TIME 150 + +#define MANUAL_SU_OP_GENERATE_TOKEN 0 +#define MANUAL_SU_OP_ESCALATE 1 +#define MANUAL_SU_OP_ADD_PENDING 2 + +struct pending_uid { + uid_t uid; + int use_count; + int remove_calls; +}; + +struct manual_su_request { + uid_t target_uid; + pid_t target_pid; + char token_buffer[KSU_TOKEN_LENGTH + 1]; +}; + +struct ksu_token_entry { + char token[KSU_TOKEN_LENGTH + 1]; + unsigned long expire_time; + bool used; +}; + +int ksu_handle_manual_su_request(int option, struct manual_su_request *request); +bool is_pending_root(uid_t uid); +void remove_pending_root(uid_t uid); +void ksu_try_escalate_for_uid(uid_t uid); +#endif \ No newline at end of file diff --git a/kernel/pkg_observer.c b/kernel/pkg_observer.c new file mode 100644 index 0000000..b632cd1 --- /dev/null +++ b/kernel/pkg_observer.c @@ -0,0 +1,133 @@ +// SPDX-License-Identifier: GPL-2.0 +#include +#include +#include +#include +#include +#include +#include +#include "klog.h" // IWYU pragma: keep +#include "ksu.h" +#include "throne_tracker.h" +#include "throne_comm.h" + +#define MASK_SYSTEM (FS_CREATE | FS_MOVE | FS_EVENT_ON_CHILD) + +struct watch_dir { + const char *path; + u32 mask; + struct path kpath; + struct inode *inode; + struct fsnotify_mark *mark; +}; + +static struct fsnotify_group *g; + +static int ksu_handle_inode_event(struct fsnotify_mark *mark, u32 mask, + struct inode *inode, struct inode *dir, + const struct qstr *file_name, u32 cookie) +{ + if (!file_name) + return 0; + if (mask & FS_ISDIR) + return 0; + if (file_name->len == 13 && + !memcmp(file_name->name, "packages.list", 13)) { + pr_info("packages.list detected: %d\n", mask); + if (ksu_uid_scanner_enabled) { + ksu_request_userspace_scan(); + } + track_throne(false); + } + return 0; +} + +static const struct fsnotify_ops ksu_ops = { + .handle_inode_event = ksu_handle_inode_event, +}; + +static int add_mark_on_inode(struct inode *inode, u32 mask, + struct fsnotify_mark **out) +{ + struct fsnotify_mark *m; + + m = kzalloc(sizeof(*m), GFP_KERNEL); + if (!m) + return -ENOMEM; + + fsnotify_init_mark(m, g); + m->mask = mask; + + if (fsnotify_add_inode_mark(m, inode, 0)) { + fsnotify_put_mark(m); + return -EINVAL; + } + *out = m; + return 0; +} + +static int watch_one_dir(struct watch_dir *wd) +{ + int ret = kern_path(wd->path, LOOKUP_FOLLOW, &wd->kpath); + if (ret) { + pr_info("path not ready: %s (%d)\n", wd->path, ret); + return ret; + } + wd->inode = d_inode(wd->kpath.dentry); + ihold(wd->inode); + + ret = add_mark_on_inode(wd->inode, wd->mask, &wd->mark); + if (ret) { + pr_err("Add mark failed for %s (%d)\n", wd->path, ret); + path_put(&wd->kpath); + iput(wd->inode); + wd->inode = NULL; + return ret; + } + pr_info("watching %s\n", wd->path); + return 0; +} + +static void unwatch_one_dir(struct watch_dir *wd) +{ + if (wd->mark) { + fsnotify_destroy_mark(wd->mark, g); + fsnotify_put_mark(wd->mark); + wd->mark = NULL; + } + if (wd->inode) { + iput(wd->inode); + wd->inode = NULL; + } + if (wd->kpath.dentry) { + path_put(&wd->kpath); + memset(&wd->kpath, 0, sizeof(wd->kpath)); + } +} + +static struct watch_dir g_watch = { .path = "/data/system", + .mask = MASK_SYSTEM }; + +int ksu_observer_init(void) +{ + int ret = 0; + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 0, 0) + g = fsnotify_alloc_group(&ksu_ops, 0); +#else + g = fsnotify_alloc_group(&ksu_ops); +#endif + if (IS_ERR(g)) + return PTR_ERR(g); + + ret = watch_one_dir(&g_watch); + pr_info("observer init done\n"); + return 0; +} + +void ksu_observer_exit(void) +{ + unwatch_one_dir(&g_watch); + fsnotify_put_group(g); + pr_info("observer exit done\n"); +} \ No newline at end of file diff --git a/kernel/seccomp_cache.c b/kernel/seccomp_cache.c new file mode 100644 index 0000000..286b5ca --- /dev/null +++ b/kernel/seccomp_cache.c @@ -0,0 +1,69 @@ +#include +#include +#include +#include +#include +#include +#include +#include "klog.h" // IWYU pragma: keep +#include "seccomp_cache.h" + + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 10, 2) // Android backport this feature in 5.10.2 +struct action_cache { + DECLARE_BITMAP(allow_native, SECCOMP_ARCH_NATIVE_NR); +#ifdef SECCOMP_ARCH_COMPAT + DECLARE_BITMAP(allow_compat, SECCOMP_ARCH_COMPAT_NR); +#endif +}; + +struct seccomp_filter { + refcount_t refs; + refcount_t users; + bool log; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0) + bool wait_killable_recv; +#endif + struct action_cache cache; + struct seccomp_filter *prev; + struct bpf_prog *prog; + struct notification *notif; + struct mutex notify_lock; + wait_queue_head_t wqh; +}; + +void ksu_seccomp_clear_cache(struct seccomp_filter *filter, int nr) +{ + if (!filter) { + return; + } + + if (nr >= 0 && nr < SECCOMP_ARCH_NATIVE_NR) { + clear_bit(nr, filter->cache.allow_native); + } + +#ifdef SECCOMP_ARCH_COMPAT + if (nr >= 0 && nr < SECCOMP_ARCH_COMPAT_NR) { + clear_bit(nr, filter->cache.allow_compat); + } +#endif +} + +void ksu_seccomp_allow_cache(struct seccomp_filter *filter, int nr) +{ + if (!filter) { + return; + } + + if (nr >= 0 && nr < SECCOMP_ARCH_NATIVE_NR) { + set_bit(nr, filter->cache.allow_native); + } + +#ifdef SECCOMP_ARCH_COMPAT + if (nr >= 0 && nr < SECCOMP_ARCH_COMPAT_NR) { + set_bit(nr, filter->cache.allow_compat); + } +#endif +} + +#endif \ No newline at end of file diff --git a/kernel/seccomp_cache.h b/kernel/seccomp_cache.h new file mode 100644 index 0000000..ce88328 --- /dev/null +++ b/kernel/seccomp_cache.h @@ -0,0 +1,12 @@ +#ifndef __KSU_H_SECCOMP_CACHE +#define __KSU_H_SECCOMP_CACHE + +#include +#include + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 10, 2) // Android backport this feature in 5.10.2 +extern void ksu_seccomp_clear_cache(struct seccomp_filter *filter, int nr); +extern void ksu_seccomp_allow_cache(struct seccomp_filter *filter, int nr); +#endif + +#endif \ No newline at end of file diff --git a/kernel/selinux/Makefile b/kernel/selinux/Makefile new file mode 100644 index 0000000..d35413d --- /dev/null +++ b/kernel/selinux/Makefile @@ -0,0 +1,8 @@ +obj-y += selinux.o +obj-y += sepolicy.o +obj-y += rules.o + +ccflags-y += -Wno-strict-prototypes -Wno-int-conversion +ccflags-y += -Wno-declaration-after-statement -Wno-unused-function +ccflags-y += -I$(srctree)/security/selinux -I$(srctree)/security/selinux/include +ccflags-y += -I$(objtree)/security/selinux -include $(srctree)/include/uapi/asm-generic/errno.h diff --git a/kernel/selinux/rules.c b/kernel/selinux/rules.c new file mode 100644 index 0000000..98d7475 --- /dev/null +++ b/kernel/selinux/rules.c @@ -0,0 +1,477 @@ +#include +#include +#include + +#include "../klog.h" // IWYU pragma: keep +#include "selinux.h" +#include "sepolicy.h" +#include "ss/services.h" +#include "linux/lsm_audit.h" // IWYU pragma: keep +#include "xfrm.h" + +#define SELINUX_POLICY_INSTEAD_SELINUX_SS + +#define KERNEL_SU_DOMAIN "su" +#define KERNEL_SU_FILE "ksu_file" +#define KERNEL_EXEC_TYPE "ksu_exec" +#define ALL NULL + +static struct policydb *get_policydb(void) +{ + struct policydb *db; + struct selinux_policy *policy = selinux_state.policy; + db = &policy->policydb; + return db; +} + +static DEFINE_MUTEX(ksu_rules); + +void apply_kernelsu_rules() +{ + struct policydb *db; + + if (!getenforce()) { + pr_info("SELinux permissive or disabled, apply rules!\n"); + } + + mutex_lock(&ksu_rules); + + db = get_policydb(); + + ksu_permissive(db, KERNEL_SU_DOMAIN); + ksu_typeattribute(db, KERNEL_SU_DOMAIN, "mlstrustedsubject"); + ksu_typeattribute(db, KERNEL_SU_DOMAIN, "netdomain"); + ksu_typeattribute(db, KERNEL_SU_DOMAIN, "bluetoothdomain"); + + // Create unconstrained file type + ksu_type(db, KERNEL_SU_FILE, "file_type"); + ksu_typeattribute(db, KERNEL_SU_FILE, "mlstrustedobject"); + ksu_allow(db, ALL, KERNEL_SU_FILE, ALL, ALL); + + // allow all! + ksu_allow(db, KERNEL_SU_DOMAIN, ALL, ALL, ALL); + + // allow us do any ioctl + if (db->policyvers >= POLICYDB_VERSION_XPERMS_IOCTL) { + ksu_allowxperm(db, KERNEL_SU_DOMAIN, ALL, "blk_file", ALL); + ksu_allowxperm(db, KERNEL_SU_DOMAIN, ALL, "fifo_file", ALL); + ksu_allowxperm(db, KERNEL_SU_DOMAIN, ALL, "chr_file", ALL); + ksu_allowxperm(db, KERNEL_SU_DOMAIN, ALL, "file", ALL); + } + + // we need to save allowlist in /data/adb/ksu + ksu_allow(db, "kernel", "adb_data_file", "dir", ALL); + ksu_allow(db, "kernel", "adb_data_file", "file", ALL); + // we need to search /data/app + ksu_allow(db, "kernel", "apk_data_file", "file", "open"); + ksu_allow(db, "kernel", "apk_data_file", "dir", "open"); + ksu_allow(db, "kernel", "apk_data_file", "dir", "read"); + ksu_allow(db, "kernel", "apk_data_file", "dir", "search"); + // we may need to do mount on shell + ksu_allow(db, "kernel", "shell_data_file", "file", ALL); + // we need to read /data/system/packages.list + ksu_allow(db, "kernel", "kernel", "capability", "dac_override"); + // Android 10+: + // http://aospxref.com/android-12.0.0_r3/xref/system/sepolicy/private/file_contexts#512 + ksu_allow(db, "kernel", "packages_list_file", "file", ALL); + // Kernel 4.4 + ksu_allow(db, "kernel", "packages_list_file", "dir", ALL); + // Android 9-: + // http://aospxref.com/android-9.0.0_r61/xref/system/sepolicy/private/file_contexts#360 + ksu_allow(db, "kernel", "system_data_file", "file", ALL); + ksu_allow(db, "kernel", "system_data_file", "dir", ALL); + // our ksud triggered by init + ksu_allow(db, "init", "adb_data_file", "file", ALL); + ksu_allow(db, "init", "adb_data_file", "dir", ALL); // #1289 + ksu_allow(db, "init", KERNEL_SU_DOMAIN, ALL, ALL); + // we need to umount modules in zygote + ksu_allow(db, "zygote", "adb_data_file", "dir", "search"); + + // copied from Magisk rules + // suRights + ksu_allow(db, "servicemanager", KERNEL_SU_DOMAIN, "dir", "search"); + ksu_allow(db, "servicemanager", KERNEL_SU_DOMAIN, "dir", "read"); + ksu_allow(db, "servicemanager", KERNEL_SU_DOMAIN, "file", "open"); + ksu_allow(db, "servicemanager", KERNEL_SU_DOMAIN, "file", "read"); + ksu_allow(db, "servicemanager", KERNEL_SU_DOMAIN, "process", "getattr"); + ksu_allow(db, ALL, KERNEL_SU_DOMAIN, "process", "sigchld"); + + // allowLog + ksu_allow(db, "logd", KERNEL_SU_DOMAIN, "dir", "search"); + ksu_allow(db, "logd", KERNEL_SU_DOMAIN, "file", "read"); + ksu_allow(db, "logd", KERNEL_SU_DOMAIN, "file", "open"); + ksu_allow(db, "logd", KERNEL_SU_DOMAIN, "file", "getattr"); + + // dumpsys + ksu_allow(db, ALL, KERNEL_SU_DOMAIN, "fd", "use"); + ksu_allow(db, ALL, KERNEL_SU_DOMAIN, "fifo_file", "write"); + ksu_allow(db, ALL, KERNEL_SU_DOMAIN, "fifo_file", "read"); + ksu_allow(db, ALL, KERNEL_SU_DOMAIN, "fifo_file", "open"); + ksu_allow(db, ALL, KERNEL_SU_DOMAIN, "fifo_file", "getattr"); + + // bootctl + ksu_allow(db, "hwservicemanager", KERNEL_SU_DOMAIN, "dir", "search"); + ksu_allow(db, "hwservicemanager", KERNEL_SU_DOMAIN, "file", "read"); + ksu_allow(db, "hwservicemanager", KERNEL_SU_DOMAIN, "file", "open"); + ksu_allow(db, "hwservicemanager", KERNEL_SU_DOMAIN, "process", + "getattr"); + + // For mounting loop devices, mirrors, tmpfs + ksu_allow(db, "kernel", ALL, "file", "read"); + ksu_allow(db, "kernel", ALL, "file", "write"); + + // Allow all binder transactions + ksu_allow(db, ALL, KERNEL_SU_DOMAIN, "binder", ALL); + + // Allow system server kill su process + ksu_allow(db, "system_server", KERNEL_SU_DOMAIN, "process", "getpgid"); + ksu_allow(db, "system_server", KERNEL_SU_DOMAIN, "process", "sigkill"); + + // https://android-review.googlesource.com/c/platform/system/logging/+/3725346 + ksu_dontaudit(db, "untrusted_app", KERNEL_SU_DOMAIN, "dir", "getattr"); + + mutex_unlock(&ksu_rules); +} + +#define MAX_SEPOL_LEN 128 + +#define CMD_NORMAL_PERM 1 +#define CMD_XPERM 2 +#define CMD_TYPE_STATE 3 +#define CMD_TYPE 4 +#define CMD_TYPE_ATTR 5 +#define CMD_ATTR 6 +#define CMD_TYPE_TRANSITION 7 +#define CMD_TYPE_CHANGE 8 +#define CMD_GENFSCON 9 + +struct sepol_data { + u32 cmd; + u32 subcmd; + char __user *sepol1; + char __user *sepol2; + char __user *sepol3; + char __user *sepol4; + char __user *sepol5; + char __user *sepol6; + char __user *sepol7; +}; + +static int get_object(char *buf, char __user *user_object, size_t buf_sz, + char **object) +{ + if (!user_object) { + *object = ALL; + return 0; + } + + if (strncpy_from_user(buf, user_object, buf_sz) < 0) { + return -EINVAL; + } + + *object = buf; + + return 0; +} +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 4, 0)) +extern int avc_ss_reset(u32 seqno); +#else +extern int avc_ss_reset(struct selinux_avc *avc, u32 seqno); +#endif +// reset avc cache table, otherwise the new rules will not take effect if already denied +static void reset_avc_cache() +{ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 4, 0)) + avc_ss_reset(0); + selnl_notify_policyload(0); + selinux_status_update_policyload(0); +#else + struct selinux_avc *avc = selinux_state.avc; + avc_ss_reset(avc, 0); + selnl_notify_policyload(0); + selinux_status_update_policyload(&selinux_state, 0); +#endif + selinux_xfrm_notify_policyload(); +} + +int handle_sepolicy(unsigned long arg3, void __user *arg4) +{ + struct policydb *db; + + if (!arg4) { + return -EINVAL; + } + + if (!getenforce()) { + pr_info("SELinux permissive or disabled when handle policy!\n"); + } + + struct sepol_data data; + if (copy_from_user(&data, arg4, sizeof(struct sepol_data))) { + pr_err("sepol: copy sepol_data failed.\n"); + return -EINVAL; + } + + u32 cmd = data.cmd; + u32 subcmd = data.subcmd; + + mutex_lock(&ksu_rules); + + db = get_policydb(); + + int ret = -EINVAL; + if (cmd == CMD_NORMAL_PERM) { + char src_buf[MAX_SEPOL_LEN]; + char tgt_buf[MAX_SEPOL_LEN]; + char cls_buf[MAX_SEPOL_LEN]; + char perm_buf[MAX_SEPOL_LEN]; + + char *s, *t, *c, *p; + if (get_object(src_buf, data.sepol1, sizeof(src_buf), &s) < 0) { + pr_err("sepol: copy src failed.\n"); + goto exit; + } + + if (get_object(tgt_buf, data.sepol2, sizeof(tgt_buf), &t) < 0) { + pr_err("sepol: copy tgt failed.\n"); + goto exit; + } + + if (get_object(cls_buf, data.sepol3, sizeof(cls_buf), &c) < 0) { + pr_err("sepol: copy cls failed.\n"); + goto exit; + } + + if (get_object(perm_buf, data.sepol4, sizeof(perm_buf), &p) < + 0) { + pr_err("sepol: copy perm failed.\n"); + goto exit; + } + + bool success = false; + if (subcmd == 1) { + success = ksu_allow(db, s, t, c, p); + } else if (subcmd == 2) { + success = ksu_deny(db, s, t, c, p); + } else if (subcmd == 3) { + success = ksu_auditallow(db, s, t, c, p); + } else if (subcmd == 4) { + success = ksu_dontaudit(db, s, t, c, p); + } else { + pr_err("sepol: unknown subcmd: %d\n", subcmd); + } + ret = success ? 0 : -EINVAL; + + } else if (cmd == CMD_XPERM) { + char src_buf[MAX_SEPOL_LEN]; + char tgt_buf[MAX_SEPOL_LEN]; + char cls_buf[MAX_SEPOL_LEN]; + + char __maybe_unused + operation[MAX_SEPOL_LEN]; // it is always ioctl now! + char perm_set[MAX_SEPOL_LEN]; + + char *s, *t, *c; + if (get_object(src_buf, data.sepol1, sizeof(src_buf), &s) < 0) { + pr_err("sepol: copy src failed.\n"); + goto exit; + } + if (get_object(tgt_buf, data.sepol2, sizeof(tgt_buf), &t) < 0) { + pr_err("sepol: copy tgt failed.\n"); + goto exit; + } + if (get_object(cls_buf, data.sepol3, sizeof(cls_buf), &c) < 0) { + pr_err("sepol: copy cls failed.\n"); + goto exit; + } + if (strncpy_from_user(operation, data.sepol4, + sizeof(operation)) < 0) { + pr_err("sepol: copy operation failed.\n"); + goto exit; + } + if (strncpy_from_user(perm_set, data.sepol5, sizeof(perm_set)) < + 0) { + pr_err("sepol: copy perm_set failed.\n"); + goto exit; + } + + bool success = false; + if (subcmd == 1) { + success = ksu_allowxperm(db, s, t, c, perm_set); + } else if (subcmd == 2) { + success = ksu_auditallowxperm(db, s, t, c, perm_set); + } else if (subcmd == 3) { + success = ksu_dontauditxperm(db, s, t, c, perm_set); + } else { + pr_err("sepol: unknown subcmd: %d\n", subcmd); + } + ret = success ? 0 : -EINVAL; + } else if (cmd == CMD_TYPE_STATE) { + char src[MAX_SEPOL_LEN]; + + if (strncpy_from_user(src, data.sepol1, sizeof(src)) < 0) { + pr_err("sepol: copy src failed.\n"); + goto exit; + } + + bool success = false; + if (subcmd == 1) { + success = ksu_permissive(db, src); + } else if (subcmd == 2) { + success = ksu_enforce(db, src); + } else { + pr_err("sepol: unknown subcmd: %d\n", subcmd); + } + if (success) + ret = 0; + + } else if (cmd == CMD_TYPE || cmd == CMD_TYPE_ATTR) { + char type[MAX_SEPOL_LEN]; + char attr[MAX_SEPOL_LEN]; + + if (strncpy_from_user(type, data.sepol1, sizeof(type)) < 0) { + pr_err("sepol: copy type failed.\n"); + goto exit; + } + if (strncpy_from_user(attr, data.sepol2, sizeof(attr)) < 0) { + pr_err("sepol: copy attr failed.\n"); + goto exit; + } + + bool success = false; + if (cmd == CMD_TYPE) { + success = ksu_type(db, type, attr); + } else { + success = ksu_typeattribute(db, type, attr); + } + if (!success) { + pr_err("sepol: %d failed.\n", cmd); + goto exit; + } + ret = 0; + + } else if (cmd == CMD_ATTR) { + char attr[MAX_SEPOL_LEN]; + + if (strncpy_from_user(attr, data.sepol1, sizeof(attr)) < 0) { + pr_err("sepol: copy attr failed.\n"); + goto exit; + } + if (!ksu_attribute(db, attr)) { + pr_err("sepol: %d failed.\n", cmd); + goto exit; + } + ret = 0; + + } else if (cmd == CMD_TYPE_TRANSITION) { + char src[MAX_SEPOL_LEN]; + char tgt[MAX_SEPOL_LEN]; + char cls[MAX_SEPOL_LEN]; + char default_type[MAX_SEPOL_LEN]; + char object[MAX_SEPOL_LEN]; + + if (strncpy_from_user(src, data.sepol1, sizeof(src)) < 0) { + pr_err("sepol: copy src failed.\n"); + goto exit; + } + if (strncpy_from_user(tgt, data.sepol2, sizeof(tgt)) < 0) { + pr_err("sepol: copy tgt failed.\n"); + goto exit; + } + if (strncpy_from_user(cls, data.sepol3, sizeof(cls)) < 0) { + pr_err("sepol: copy cls failed.\n"); + goto exit; + } + if (strncpy_from_user(default_type, data.sepol4, + sizeof(default_type)) < 0) { + pr_err("sepol: copy default_type failed.\n"); + goto exit; + } + char *real_object; + if (data.sepol5 == NULL) { + real_object = NULL; + } else { + if (strncpy_from_user(object, data.sepol5, + sizeof(object)) < 0) { + pr_err("sepol: copy object failed.\n"); + goto exit; + } + real_object = object; + } + + bool success = ksu_type_transition(db, src, tgt, cls, + default_type, real_object); + if (success) + ret = 0; + + } else if (cmd == CMD_TYPE_CHANGE) { + char src[MAX_SEPOL_LEN]; + char tgt[MAX_SEPOL_LEN]; + char cls[MAX_SEPOL_LEN]; + char default_type[MAX_SEPOL_LEN]; + + if (strncpy_from_user(src, data.sepol1, sizeof(src)) < 0) { + pr_err("sepol: copy src failed.\n"); + goto exit; + } + if (strncpy_from_user(tgt, data.sepol2, sizeof(tgt)) < 0) { + pr_err("sepol: copy tgt failed.\n"); + goto exit; + } + if (strncpy_from_user(cls, data.sepol3, sizeof(cls)) < 0) { + pr_err("sepol: copy cls failed.\n"); + goto exit; + } + if (strncpy_from_user(default_type, data.sepol4, + sizeof(default_type)) < 0) { + pr_err("sepol: copy default_type failed.\n"); + goto exit; + } + bool success = false; + if (subcmd == 1) { + success = ksu_type_change(db, src, tgt, cls, + default_type); + } else if (subcmd == 2) { + success = ksu_type_member(db, src, tgt, cls, + default_type); + } else { + pr_err("sepol: unknown subcmd: %d\n", subcmd); + } + if (success) + ret = 0; + } else if (cmd == CMD_GENFSCON) { + char name[MAX_SEPOL_LEN]; + char path[MAX_SEPOL_LEN]; + char context[MAX_SEPOL_LEN]; + if (strncpy_from_user(name, data.sepol1, sizeof(name)) < 0) { + pr_err("sepol: copy name failed.\n"); + goto exit; + } + if (strncpy_from_user(path, data.sepol2, sizeof(path)) < 0) { + pr_err("sepol: copy path failed.\n"); + goto exit; + } + if (strncpy_from_user(context, data.sepol3, sizeof(context)) < + 0) { + pr_err("sepol: copy context failed.\n"); + goto exit; + } + + if (!ksu_genfscon(db, name, path, context)) { + pr_err("sepol: %d failed.\n", cmd); + goto exit; + } + ret = 0; + } else { + pr_err("sepol: unknown cmd: %d\n", cmd); + } + +exit: + mutex_unlock(&ksu_rules); + + // only allow and xallow needs to reset avc cache, but we cannot do that because + // we are in atomic context. so we just reset it every time. + reset_avc_cache(); + + return ret; +} \ No newline at end of file diff --git a/kernel/selinux/selinux.c b/kernel/selinux/selinux.c new file mode 100644 index 0000000..dfc4831 --- /dev/null +++ b/kernel/selinux/selinux.c @@ -0,0 +1,154 @@ +#include "selinux.h" +#include "linux/cred.h" +#include "linux/sched.h" +#include "objsec.h" +#include "linux/version.h" +#include "../klog.h" // IWYU pragma: keep + +#define KERNEL_SU_DOMAIN "u:r:su:s0" + +static int transive_to_domain(const char *domain) +{ + struct cred *cred; + struct task_security_struct *tsec; + u32 sid; + int error; + + cred = (struct cred *)__task_cred(current); + + tsec = cred->security; + if (!tsec) { + pr_err("tsec == NULL!\n"); + return -1; + } + + error = security_secctx_to_secid(domain, strlen(domain), &sid); + if (error) { + pr_info("security_secctx_to_secid %s -> sid: %d, error: %d\n", + domain, sid, error); + } + if (!error) { + tsec->sid = sid; + tsec->create_sid = 0; + tsec->keycreate_sid = 0; + tsec->sockcreate_sid = 0; + } + return error; +} + +void setup_selinux(const char *domain) +{ + if (transive_to_domain(domain)) { + pr_err("transive domain failed.\n"); + return; + } +} + +void setenforce(bool enforce) +{ +#ifdef CONFIG_SECURITY_SELINUX_DEVELOP + selinux_state.enforcing = enforce; +#endif +} + +bool getenforce() +{ +#ifdef CONFIG_SECURITY_SELINUX_DISABLE + if (selinux_state.disabled) { + return false; + } +#endif + +#ifdef CONFIG_SECURITY_SELINUX_DEVELOP + return selinux_state.enforcing; +#else + return true; +#endif +} + +#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 14, 0) +struct lsm_context { + char *context; + u32 len; +}; + +static int __security_secid_to_secctx(u32 secid, struct lsm_context *cp) +{ + return security_secid_to_secctx(secid, &cp->context, &cp->len); +} +static void __security_release_secctx(struct lsm_context *cp) +{ + return security_release_secctx(cp->context, cp->len); +} +#else +#define __security_secid_to_secctx security_secid_to_secctx +#define __security_release_secctx security_release_secctx +#endif + +bool is_task_ksu_domain(const struct cred* cred) +{ + struct lsm_context ctx; + bool result; + if (!cred) { + return false; + } + const struct task_security_struct *tsec = selinux_cred(cred); + if (!tsec) { + return false; + } + int err = __security_secid_to_secctx(tsec->sid, &ctx); + if (err) { + return false; + } + result = strncmp(KERNEL_SU_DOMAIN, ctx.context, ctx.len) == 0; + __security_release_secctx(&ctx); + return result; +} + +bool is_ksu_domain() +{ + current_sid(); + return is_task_ksu_domain(current_cred()); +} + +bool is_context(const struct cred* cred, const char* context) +{ + if (!cred) { + return false; + } + const struct task_security_struct * tsec = selinux_cred(cred); + if (!tsec) { + return false; + } + struct lsm_context ctx; + bool result; + int err = __security_secid_to_secctx(tsec->sid, &ctx); + if (err) { + return false; + } + result = strncmp(context, ctx.context, ctx.len) == 0; + __security_release_secctx(&ctx); + return result; +} + +bool is_zygote(const struct cred* cred) +{ + return is_context(cred, "u:r:zygote:s0"); +} + +bool is_init(const struct cred* cred) { + return is_context(cred, "u:r:init:s0"); +} + +#define KSU_FILE_DOMAIN "u:object_r:ksu_file:s0" + +u32 ksu_get_ksu_file_sid() +{ + u32 ksu_file_sid = 0; + int err = security_secctx_to_secid(KSU_FILE_DOMAIN, strlen(KSU_FILE_DOMAIN), + &ksu_file_sid); + if (err) { + pr_info("get ksufile sid err %d\n", err); + } + return ksu_file_sid; +} diff --git a/kernel/selinux/selinux.h b/kernel/selinux/selinux.h new file mode 100644 index 0000000..431e044 --- /dev/null +++ b/kernel/selinux/selinux.h @@ -0,0 +1,28 @@ +#ifndef __KSU_H_SELINUX +#define __KSU_H_SELINUX + +#include "linux/types.h" +#include "linux/version.h" +#include "linux/cred.h" + +void setup_selinux(const char *); + +void setenforce(bool); + +bool getenforce(); + +bool is_task_ksu_domain(const struct cred* cred); + +bool is_ksu_domain(); + +bool is_zygote(const struct cred* cred); + +bool is_init(const struct cred* cred); + +void apply_kernelsu_rules(); + +u32 ksu_get_ksu_file_sid(); + +int handle_sepolicy(unsigned long arg3, void __user *arg4); + +#endif diff --git a/kernel/selinux/sepolicy.c b/kernel/selinux/sepolicy.c new file mode 100644 index 0000000..b8e0ec8 --- /dev/null +++ b/kernel/selinux/sepolicy.c @@ -0,0 +1,852 @@ +#include +#include +#include +#include + +#include "sepolicy.h" +#include "../klog.h" // IWYU pragma: keep +#include "ss/symtab.h" + +#define KSU_SUPPORT_ADD_TYPE + +////////////////////////////////////////////////////// +// Declaration +////////////////////////////////////////////////////// + +static struct avtab_node *get_avtab_node(struct policydb *db, + struct avtab_key *key, + struct avtab_extended_perms *xperms); + +static bool add_rule(struct policydb *db, const char *s, const char *t, + const char *c, const char *p, int effect, bool invert); + +static void add_rule_raw(struct policydb *db, struct type_datum *src, + struct type_datum *tgt, struct class_datum *cls, + struct perm_datum *perm, int effect, bool invert); + +static void add_xperm_rule_raw(struct policydb *db, struct type_datum *src, + struct type_datum *tgt, struct class_datum *cls, + uint16_t low, uint16_t high, int effect, + bool invert); +static bool add_xperm_rule(struct policydb *db, const char *s, const char *t, + const char *c, const char *range, int effect, + bool invert); + +static bool add_type_rule(struct policydb *db, const char *s, const char *t, + const char *c, const char *d, int effect); + +static bool add_filename_trans(struct policydb *db, const char *s, + const char *t, const char *c, const char *d, + const char *o); + +static bool add_genfscon(struct policydb *db, const char *fs_name, + const char *path, const char *context); + +static bool add_type(struct policydb *db, const char *type_name, bool attr); + +static bool set_type_state(struct policydb *db, const char *type_name, + bool permissive); + +static void add_typeattribute_raw(struct policydb *db, struct type_datum *type, + struct type_datum *attr); + +static bool add_typeattribute(struct policydb *db, const char *type, + const char *attr); + +////////////////////////////////////////////////////// +// Implementation +////////////////////////////////////////////////////// + +// Invert is adding rules for auditdeny; in other cases, invert is removing +// rules +#define strip_av(effect, invert) ((effect == AVTAB_AUDITDENY) == !invert) + +#define ksu_hash_for_each(node_ptr, n_slot, cur) \ + int i; \ + for (i = 0; i < n_slot; ++i) \ + for (cur = node_ptr[i]; cur; cur = cur->next) + +// htable is a struct instead of pointer above 5.8.0: +// https://elixir.bootlin.com/linux/v5.8-rc1/source/security/selinux/ss/symtab.h +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0) +#define ksu_hashtab_for_each(htab, cur) \ + ksu_hash_for_each(htab.htable, htab.size, cur) +#else +#define ksu_hashtab_for_each(htab, cur) \ + ksu_hash_for_each(htab->htable, htab->size, cur) +#endif + +// symtab_search is introduced on 5.9.0: +// https://elixir.bootlin.com/linux/v5.9-rc1/source/security/selinux/ss/symtab.h +#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 9, 0) +#define symtab_search(s, name) hashtab_search((s)->table, name) +#define symtab_insert(s, name, datum) hashtab_insert((s)->table, name, datum) +#endif + +#define avtab_for_each(avtab, cur) \ + ksu_hash_for_each(avtab.htable, avtab.nslot, cur); + +static struct avtab_node *get_avtab_node(struct policydb *db, + struct avtab_key *key, + struct avtab_extended_perms *xperms) +{ + struct avtab_node *node; + + /* AVTAB_XPERMS entries are not necessarily unique */ + if (key->specified & AVTAB_XPERMS) { + bool match = false; + node = avtab_search_node(&db->te_avtab, key); + while (node) { + if ((node->datum.u.xperms->specified == + xperms->specified) && + (node->datum.u.xperms->driver == xperms->driver)) { + match = true; + break; + } + node = avtab_search_node_next(node, key->specified); + } + if (!match) + node = NULL; + } else { + node = avtab_search_node(&db->te_avtab, key); + } + + if (!node) { + struct avtab_datum avdatum = {}; + /* + * AUDITDENY, aka DONTAUDIT, are &= assigned, versus |= for + * others. Initialize the data accordingly. + */ + if (key->specified & AVTAB_XPERMS) { + avdatum.u.xperms = xperms; + } else { + avdatum.u.data = + key->specified == AVTAB_AUDITDENY ? ~0U : 0U; + } + /* this is used to get the node - insertion is actually unique */ + node = avtab_insert_nonunique(&db->te_avtab, key, &avdatum); + + int grow_size = sizeof(struct avtab_key); + grow_size += sizeof(struct avtab_datum); + if (key->specified & AVTAB_XPERMS) { + grow_size += sizeof(u8); + grow_size += sizeof(u8); + grow_size += sizeof(u32) * + ARRAY_SIZE(avdatum.u.xperms->perms.p); + } + db->len += grow_size; + } + + return node; +} + +static bool add_rule(struct policydb *db, const char *s, const char *t, + const char *c, const char *p, int effect, bool invert) +{ + struct type_datum *src = NULL, *tgt = NULL; + struct class_datum *cls = NULL; + struct perm_datum *perm = NULL; + + if (s) { + src = symtab_search(&db->p_types, s); + if (src == NULL) { + pr_info("source type %s does not exist\n", s); + return false; + } + } + + if (t) { + tgt = symtab_search(&db->p_types, t); + if (tgt == NULL) { + pr_info("target type %s does not exist\n", t); + return false; + } + } + + if (c) { + cls = symtab_search(&db->p_classes, c); + if (cls == NULL) { + pr_info("class %s does not exist\n", c); + return false; + } + } + + if (p) { + if (c == NULL) { + pr_info("No class is specified, cannot add perm [%s] \n", + p); + return false; + } + + perm = symtab_search(&cls->permissions, p); + if (perm == NULL && cls->comdatum != NULL) { + perm = symtab_search(&cls->comdatum->permissions, p); + } + if (perm == NULL) { + pr_info("perm %s does not exist in class %s\n", p, c); + return false; + } + } + add_rule_raw(db, src, tgt, cls, perm, effect, invert); + return true; +} + +static void add_rule_raw(struct policydb *db, struct type_datum *src, + struct type_datum *tgt, struct class_datum *cls, + struct perm_datum *perm, int effect, bool invert) +{ + if (src == NULL) { + struct hashtab_node *node; + if (strip_av(effect, invert)) { + ksu_hashtab_for_each(db->p_types.table, node) + { + add_rule_raw(db, + (struct type_datum *)node->datum, + tgt, cls, perm, effect, invert); + }; + } else { + ksu_hashtab_for_each(db->p_types.table, node) + { + struct type_datum *type = + (struct type_datum *)(node->datum); + if (type->attribute) { + add_rule_raw(db, type, tgt, cls, perm, + effect, invert); + } + }; + } + } else if (tgt == NULL) { + struct hashtab_node *node; + if (strip_av(effect, invert)) { + ksu_hashtab_for_each(db->p_types.table, node) + { + add_rule_raw(db, src, + (struct type_datum *)node->datum, + cls, perm, effect, invert); + }; + } else { + ksu_hashtab_for_each(db->p_types.table, node) + { + struct type_datum *type = + (struct type_datum *)(node->datum); + if (type->attribute) { + add_rule_raw(db, src, type, cls, perm, + effect, invert); + } + }; + } + } else if (cls == NULL) { + struct hashtab_node *node; + ksu_hashtab_for_each(db->p_classes.table, node) + { + add_rule_raw(db, src, tgt, + (struct class_datum *)node->datum, perm, + effect, invert); + } + } else { + struct avtab_key key; + key.source_type = src->value; + key.target_type = tgt->value; + key.target_class = cls->value; + key.specified = effect; + + struct avtab_node *node = get_avtab_node(db, &key, NULL); + if (invert) { + if (perm) + node->datum.u.data &= + ~(1U << (perm->value - 1)); + else + node->datum.u.data = 0U; + } else { + if (perm) + node->datum.u.data |= 1U << (perm->value - 1); + else + node->datum.u.data = ~0U; + } + } +} + +#define ioctl_driver(x) (x >> 8 & 0xFF) +#define ioctl_func(x) (x & 0xFF) + +#define xperm_test(x, p) (1 & (p[x >> 5] >> (x & 0x1f))) +#define xperm_set(x, p) (p[x >> 5] |= (1 << (x & 0x1f))) +#define xperm_clear(x, p) (p[x >> 5] &= ~(1 << (x & 0x1f))) + +static void add_xperm_rule_raw(struct policydb *db, struct type_datum *src, + struct type_datum *tgt, struct class_datum *cls, + uint16_t low, uint16_t high, int effect, + bool invert) +{ + if (src == NULL) { + struct hashtab_node *node; + ksu_hashtab_for_each(db->p_types.table, node) + { + struct type_datum *type = + (struct type_datum *)(node->datum); + if (type->attribute) { + add_xperm_rule_raw(db, type, tgt, cls, low, + high, effect, invert); + } + }; + } else if (tgt == NULL) { + struct hashtab_node *node; + ksu_hashtab_for_each(db->p_types.table, node) + { + struct type_datum *type = + (struct type_datum *)(node->datum); + if (type->attribute) { + add_xperm_rule_raw(db, src, type, cls, low, + high, effect, invert); + } + }; + } else if (cls == NULL) { + struct hashtab_node *node; + ksu_hashtab_for_each(db->p_classes.table, node) + { + add_xperm_rule_raw(db, src, tgt, + (struct class_datum *)(node->datum), + low, high, effect, invert); + }; + } else { + struct avtab_key key; + key.source_type = src->value; + key.target_type = tgt->value; + key.target_class = cls->value; + key.specified = effect; + + struct avtab_datum *datum; + struct avtab_node *node; + struct avtab_extended_perms xperms; + + memset(&xperms, 0, sizeof(xperms)); + if (ioctl_driver(low) != ioctl_driver(high)) { + xperms.specified = AVTAB_XPERMS_IOCTLDRIVER; + xperms.driver = 0; + } else { + xperms.specified = AVTAB_XPERMS_IOCTLFUNCTION; + xperms.driver = ioctl_driver(low); + } + int i; + if (xperms.specified == AVTAB_XPERMS_IOCTLDRIVER) { + for (i = ioctl_driver(low); i <= ioctl_driver(high); + ++i) { + if (invert) + xperm_clear(i, xperms.perms.p); + else + xperm_set(i, xperms.perms.p); + } + } else { + for (i = ioctl_func(low); i <= ioctl_func(high); ++i) { + if (invert) + xperm_clear(i, xperms.perms.p); + else + xperm_set(i, xperms.perms.p); + } + } + + node = get_avtab_node(db, &key, &xperms); + if (!node) { + pr_warn("add_xperm_rule_raw cannot found node!\n"); + return; + } + datum = &node->datum; + + if (datum->u.xperms == NULL) { + datum->u.xperms = + (struct avtab_extended_perms *)(kzalloc( + sizeof(xperms), GFP_KERNEL)); + if (!datum->u.xperms) { + pr_err("alloc xperms failed\n"); + return; + } + memcpy(datum->u.xperms, &xperms, sizeof(xperms)); + } + } +} + +static bool add_xperm_rule(struct policydb *db, const char *s, const char *t, + const char *c, const char *range, int effect, + bool invert) +{ + struct type_datum *src = NULL, *tgt = NULL; + struct class_datum *cls = NULL; + + if (s) { + src = symtab_search(&db->p_types, s); + if (src == NULL) { + pr_info("source type %s does not exist\n", s); + return false; + } + } + + if (t) { + tgt = symtab_search(&db->p_types, t); + if (tgt == NULL) { + pr_info("target type %s does not exist\n", t); + return false; + } + } + + if (c) { + cls = symtab_search(&db->p_classes, c); + if (cls == NULL) { + pr_info("class %s does not exist\n", c); + return false; + } + } + + u16 low, high; + + if (range) { + if (strchr(range, '-')) { + sscanf(range, "%hx-%hx", &low, &high); + } else { + sscanf(range, "%hx", &low); + high = low; + } + } else { + low = 0; + high = 0xFFFF; + } + + add_xperm_rule_raw(db, src, tgt, cls, low, high, effect, invert); + return true; +} + +static bool add_type_rule(struct policydb *db, const char *s, const char *t, + const char *c, const char *d, int effect) +{ + struct type_datum *src, *tgt, *def; + struct class_datum *cls; + + src = symtab_search(&db->p_types, s); + if (src == NULL) { + pr_info("source type %s does not exist\n", s); + return false; + } + tgt = symtab_search(&db->p_types, t); + if (tgt == NULL) { + pr_info("target type %s does not exist\n", t); + return false; + } + cls = symtab_search(&db->p_classes, c); + if (cls == NULL) { + pr_info("class %s does not exist\n", c); + return false; + } + def = symtab_search(&db->p_types, d); + if (def == NULL) { + pr_info("default type %s does not exist\n", d); + return false; + } + + struct avtab_key key; + key.source_type = src->value; + key.target_type = tgt->value; + key.target_class = cls->value; + key.specified = effect; + + struct avtab_node *node = get_avtab_node(db, &key, NULL); + node->datum.u.data = def->value; + + return true; +} + +// 5.9.0 : static inline int hashtab_insert(struct hashtab *h, void *key, void +// *datum, struct hashtab_key_params key_params) 5.8.0: int +// hashtab_insert(struct hashtab *h, void *k, void *d); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 9, 0) +static u32 filenametr_hash(const void *k) +{ + const struct filename_trans_key *ft = k; + unsigned long hash; + unsigned int byte_num; + unsigned char focus; + + hash = ft->ttype ^ ft->tclass; + + byte_num = 0; + while ((focus = ft->name[byte_num++])) + hash = partial_name_hash(focus, hash); + return hash; +} + +static int filenametr_cmp(const void *k1, const void *k2) +{ + const struct filename_trans_key *ft1 = k1; + const struct filename_trans_key *ft2 = k2; + int v; + + v = ft1->ttype - ft2->ttype; + if (v) + return v; + + v = ft1->tclass - ft2->tclass; + if (v) + return v; + + return strcmp(ft1->name, ft2->name); +} + +static const struct hashtab_key_params filenametr_key_params = { + .hash = filenametr_hash, + .cmp = filenametr_cmp, +}; +#endif + +static bool add_filename_trans(struct policydb *db, const char *s, + const char *t, const char *c, const char *d, + const char *o) +{ + struct type_datum *src, *tgt, *def; + struct class_datum *cls; + + src = symtab_search(&db->p_types, s); + if (src == NULL) { + pr_warn("source type %s does not exist\n", s); + return false; + } + tgt = symtab_search(&db->p_types, t); + if (tgt == NULL) { + pr_warn("target type %s does not exist\n", t); + return false; + } + cls = symtab_search(&db->p_classes, c); + if (cls == NULL) { + pr_warn("class %s does not exist\n", c); + return false; + } + def = symtab_search(&db->p_types, d); + if (def == NULL) { + pr_warn("default type %s does not exist\n", d); + return false; + } + + struct filename_trans_key key; + key.ttype = tgt->value; + key.tclass = cls->value; + key.name = (char *)o; + + struct filename_trans_datum *last = NULL; + + struct filename_trans_datum *trans = + policydb_filenametr_search(db, &key); + while (trans) { + if (ebitmap_get_bit(&trans->stypes, src->value - 1)) { + // Duplicate, overwrite existing data and return + trans->otype = def->value; + return true; + } + if (trans->otype == def->value) + break; + last = trans; + trans = trans->next; + } + + if (trans == NULL) { + trans = (struct filename_trans_datum *)kcalloc(1 ,sizeof(*trans), + GFP_ATOMIC); + struct filename_trans_key *new_key = + (struct filename_trans_key *)kzalloc(sizeof(*new_key), + GFP_ATOMIC); + *new_key = key; + new_key->name = kstrdup(key.name, GFP_ATOMIC); + trans->next = last; + trans->otype = def->value; + hashtab_insert(&db->filename_trans, new_key, trans, + filenametr_key_params); + } + + db->compat_filename_trans_count++; + return ebitmap_set_bit(&trans->stypes, src->value - 1, 1) == 0; +} + +static bool add_genfscon(struct policydb *db, const char *fs_name, + const char *path, const char *context) +{ + return false; +} + +static void *ksu_realloc(void *old, size_t new_size, size_t old_size) +{ + // we can't use krealloc, because it may be read-only + void *new = kzalloc(new_size, GFP_ATOMIC); + if (!new) { + return NULL; + } + if (old_size) { + memcpy(new, old, old_size); + } + // we can't use kfree, because it may be read-only + // there maybe some leaks, maybe we can check ptr_write, but it's not a big deal + // kfree(old); + return new; +} + +static bool add_type(struct policydb *db, const char *type_name, bool attr) +{ + struct type_datum *type = symtab_search(&db->p_types, type_name); + if (type) { + pr_warn("Type %s already exists\n", type_name); + return true; + } + + u32 value = ++db->p_types.nprim; + type = (struct type_datum *)kzalloc(sizeof(struct type_datum), + GFP_ATOMIC); + if (!type) { + pr_err("add_type: alloc type_datum failed.\n"); + return false; + } + + type->primary = 1; + type->value = value; + type->attribute = attr; + + char *key = kstrdup(type_name, GFP_ATOMIC); + if (!key) { + pr_err("add_type: alloc key failed.\n"); + return false; + } + + if (symtab_insert(&db->p_types, key, type)) { + pr_err("add_type: insert symtab failed.\n"); + return false; + } + + struct ebitmap *new_type_attr_map_array = + ksu_realloc(db->type_attr_map_array, + value * sizeof(struct ebitmap), + (value - 1) * sizeof(struct ebitmap)); + + if (!new_type_attr_map_array) { + pr_err("add_type: alloc type_attr_map_array failed\n"); + return false; + } + + struct type_datum **new_type_val_to_struct = + ksu_realloc(db->type_val_to_struct, + sizeof(*db->type_val_to_struct) * value, + sizeof(*db->type_val_to_struct) * (value - 1)); + + if (!new_type_val_to_struct) { + pr_err("add_type: alloc type_val_to_struct failed\n"); + return false; + } + + char **new_val_to_name_types = + ksu_realloc(db->sym_val_to_name[SYM_TYPES], + sizeof(char *) * value, + sizeof(char *) * (value - 1)); + if (!new_val_to_name_types) { + pr_err("add_type: alloc val_to_name failed\n"); + return false; + } + + db->type_attr_map_array = new_type_attr_map_array; + ebitmap_init(&db->type_attr_map_array[value - 1]); + ebitmap_set_bit(&db->type_attr_map_array[value - 1], value - 1, 1); + + db->type_val_to_struct = new_type_val_to_struct; + db->type_val_to_struct[value - 1] = type; + + db->sym_val_to_name[SYM_TYPES] = new_val_to_name_types; + db->sym_val_to_name[SYM_TYPES][value - 1] = key; + + int i; + for (i = 0; i < db->p_roles.nprim; ++i) { + ebitmap_set_bit(&db->role_val_to_struct[i]->types, value - 1, + 1); + } + + return true; +} + +static bool set_type_state(struct policydb *db, const char *type_name, + bool permissive) +{ + struct type_datum *type; + if (type_name == NULL) { + struct hashtab_node *node; + ksu_hashtab_for_each(db->p_types.table, node) + { + type = (struct type_datum *)(node->datum); + if (ebitmap_set_bit(&db->permissive_map, type->value, + permissive)) + pr_info("Could not set bit in permissive map\n"); + }; + } else { + type = (struct type_datum *)symtab_search(&db->p_types, + type_name); + if (type == NULL) { + pr_info("type %s does not exist\n", type_name); + return false; + } + if (ebitmap_set_bit(&db->permissive_map, type->value, + permissive)) { + pr_info("Could not set bit in permissive map\n"); + return false; + } + } + return true; +} + +static void add_typeattribute_raw(struct policydb *db, struct type_datum *type, + struct type_datum *attr) +{ + struct ebitmap *sattr = &db->type_attr_map_array[type->value - 1]; + ebitmap_set_bit(sattr, attr->value - 1, 1); + + struct hashtab_node *node; + struct constraint_node *n; + struct constraint_expr *e; + ksu_hashtab_for_each(db->p_classes.table, node) + { + struct class_datum *cls = (struct class_datum *)(node->datum); + for (n = cls->constraints; n; n = n->next) { + for (e = n->expr; e; e = e->next) { + if (e->expr_type == CEXPR_NAMES && + ebitmap_get_bit(&e->type_names->types, + attr->value - 1)) { + ebitmap_set_bit(&e->names, + type->value - 1, 1); + } + } + } + }; +} + +static bool add_typeattribute(struct policydb *db, const char *type, + const char *attr) +{ + struct type_datum *type_d = symtab_search(&db->p_types, type); + if (type_d == NULL) { + pr_info("type %s does not exist\n", type); + return false; + } else if (type_d->attribute) { + pr_info("type %s is an attribute\n", attr); + return false; + } + + struct type_datum *attr_d = symtab_search(&db->p_types, attr); + if (attr_d == NULL) { + pr_info("attribute %s does not exist\n", type); + return false; + } else if (!attr_d->attribute) { + pr_info("type %s is not an attribute \n", attr); + return false; + } + + add_typeattribute_raw(db, type_d, attr_d); + return true; +} + +////////////////////////////////////////////////////////////////////////// + +// Operation on types +bool ksu_type(struct policydb *db, const char *name, const char *attr) +{ + return add_type(db, name, false) && add_typeattribute(db, name, attr); +} + +bool ksu_attribute(struct policydb *db, const char *name) +{ + return add_type(db, name, true); +} + +bool ksu_permissive(struct policydb *db, const char *type) +{ + return set_type_state(db, type, true); +} + +bool ksu_enforce(struct policydb *db, const char *type) +{ + return set_type_state(db, type, false); +} + +bool ksu_typeattribute(struct policydb *db, const char *type, const char *attr) +{ + return add_typeattribute(db, type, attr); +} + +bool ksu_exists(struct policydb *db, const char *type) +{ + return symtab_search(&db->p_types, type) != NULL; +} + +// Access vector rules +bool ksu_allow(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *perm) +{ + return add_rule(db, src, tgt, cls, perm, AVTAB_ALLOWED, false); +} + +bool ksu_deny(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *perm) +{ + return add_rule(db, src, tgt, cls, perm, AVTAB_ALLOWED, true); +} + +bool ksu_auditallow(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *perm) +{ + return add_rule(db, src, tgt, cls, perm, AVTAB_AUDITALLOW, false); +} +bool ksu_dontaudit(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *perm) +{ + return add_rule(db, src, tgt, cls, perm, AVTAB_AUDITDENY, true); +} + +// Extended permissions access vector rules +bool ksu_allowxperm(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *range) +{ + return add_xperm_rule(db, src, tgt, cls, range, AVTAB_XPERMS_ALLOWED, + false); +} + +bool ksu_auditallowxperm(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *range) +{ + return add_xperm_rule(db, src, tgt, cls, range, AVTAB_XPERMS_AUDITALLOW, + false); +} + +bool ksu_dontauditxperm(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *range) +{ + return add_xperm_rule(db, src, tgt, cls, range, AVTAB_XPERMS_DONTAUDIT, + false); +} + +// Type rules +bool ksu_type_transition(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *def, const char *obj) +{ + if (obj) { + return add_filename_trans(db, src, tgt, cls, def, obj); + } else { + return add_type_rule(db, src, tgt, cls, def, AVTAB_TRANSITION); + } +} + +bool ksu_type_change(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *def) +{ + return add_type_rule(db, src, tgt, cls, def, AVTAB_CHANGE); +} + +bool ksu_type_member(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *def) +{ + return add_type_rule(db, src, tgt, cls, def, AVTAB_MEMBER); +} + +// File system labeling +bool ksu_genfscon(struct policydb *db, const char *fs_name, const char *path, + const char *ctx) +{ + return add_genfscon(db, fs_name, path, ctx); +} diff --git a/kernel/selinux/sepolicy.h b/kernel/selinux/sepolicy.h new file mode 100644 index 0000000..fd062ce --- /dev/null +++ b/kernel/selinux/sepolicy.h @@ -0,0 +1,46 @@ +#ifndef __KSU_H_SEPOLICY +#define __KSU_H_SEPOLICY + +#include + +#include "ss/policydb.h" + +// Operation on types +bool ksu_type(struct policydb *db, const char *name, const char *attr); +bool ksu_attribute(struct policydb *db, const char *name); +bool ksu_permissive(struct policydb *db, const char *type); +bool ksu_enforce(struct policydb *db, const char *type); +bool ksu_typeattribute(struct policydb *db, const char *type, const char *attr); +bool ksu_exists(struct policydb *db, const char *type); + +// Access vector rules +bool ksu_allow(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *perm); +bool ksu_deny(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *perm); +bool ksu_auditallow(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *perm); +bool ksu_dontaudit(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *perm); + +// Extended permissions access vector rules +bool ksu_allowxperm(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *range); +bool ksu_auditallowxperm(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *range); +bool ksu_dontauditxperm(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *range); + +// Type rules +bool ksu_type_transition(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *def, const char *obj); +bool ksu_type_change(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *def); +bool ksu_type_member(struct policydb *db, const char *src, const char *tgt, + const char *cls, const char *def); + +// File system labeling +bool ksu_genfscon(struct policydb *db, const char *fs_name, const char *path, + const char *ctx); + +#endif diff --git a/kernel/setuid_hook.c b/kernel/setuid_hook.c new file mode 100644 index 0000000..44dffd9 --- /dev/null +++ b/kernel/setuid_hook.c @@ -0,0 +1,171 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "allowlist.h" +#include "setuid_hook.h" +#include "feature.h" +#include "klog.h" // IWYU pragma: keep +#include "manager.h" +#include "selinux/selinux.h" +#include "seccomp_cache.h" +#include "supercalls.h" +#include "syscall_hook_manager.h" +#include "kernel_umount.h" +#include "app_profile.h" + +static bool ksu_enhanced_security_enabled = false; + +static int enhanced_security_feature_get(u64 *value) +{ + *value = ksu_enhanced_security_enabled ? 1 : 0; + return 0; +} + +static int enhanced_security_feature_set(u64 value) +{ + bool enable = value != 0; + ksu_enhanced_security_enabled = enable; + pr_info("enhanced_security: set to %d\n", enable); + return 0; +} + +static const struct ksu_feature_handler enhanced_security_handler = { + .feature_id = KSU_FEATURE_ENHANCED_SECURITY, + .name = "enhanced_security", + .get_handler = enhanced_security_feature_get, + .set_handler = enhanced_security_feature_set, +}; + +static inline bool is_allow_su() +{ + if (is_manager()) { + // we are manager, allow! + return true; + } + return ksu_is_allow_uid_for_current(current_uid().val); +} + +int ksu_handle_setresuid(uid_t ruid, uid_t euid, uid_t suid) +{ + uid_t new_uid = ruid; + uid_t old_uid = current_uid().val; + + pr_info("handle_setresuid from %d to %d\n", old_uid, new_uid); + + // if old process is root, ignore it. + if (old_uid != 0 && ksu_enhanced_security_enabled) { + // disallow any non-ksu domain escalation from non-root to root! + // euid is what we care about here as it controls permission + if (unlikely(euid == 0)) { + if (!is_ksu_domain()) { + pr_warn("find suspicious EoP: %d %s, from %d to %d\n", + current->pid, current->comm, old_uid, new_uid); + force_sig(SIGKILL); + return 0; + } + } + // disallow appuid decrease to any other uid if it is not allowed to su + if (is_appuid(old_uid)) { + if (euid < current_euid().val && !ksu_is_allow_uid_for_current(old_uid)) { + pr_warn("find suspicious EoP: %d %s, from %d to %d\n", + current->pid, current->comm, old_uid, new_uid); + force_sig(SIGKILL); + return 0; + } + } + return 0; + } + + // if on private space, see if its possibly the manager + if (new_uid > PER_USER_RANGE && new_uid % PER_USER_RANGE == ksu_get_manager_uid()) { + ksu_set_manager_uid(new_uid); + } + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 10, 0) + if (ksu_get_manager_uid() == new_uid) { + pr_info("install fd for manager: %d\n", new_uid); + ksu_install_fd(); + spin_lock_irq(¤t->sighand->siglock); + ksu_seccomp_allow_cache(current->seccomp.filter, __NR_reboot); + ksu_set_task_tracepoint_flag(current); + spin_unlock_irq(¤t->sighand->siglock); + return 0; + } + + if (ksu_is_allow_uid_for_current(new_uid)) { + if (current->seccomp.mode == SECCOMP_MODE_FILTER && + current->seccomp.filter) { + spin_lock_irq(¤t->sighand->siglock); + ksu_seccomp_allow_cache(current->seccomp.filter, __NR_reboot); + spin_unlock_irq(¤t->sighand->siglock); + } + ksu_set_task_tracepoint_flag(current); + } else { + ksu_clear_task_tracepoint_flag_if_needed(current); + } +#else + if (ksu_is_allow_uid_for_current(new_uid)) { + spin_lock_irq(¤t->sighand->siglock); + disable_seccomp(); + spin_unlock_irq(¤t->sighand->siglock); + + if (ksu_get_manager_uid() == new_uid) { + pr_info("install fd for ksu manager(uid=%d)\n", + new_uid); + ksu_install_fd(); + } + + return 0; + } +#endif + + // Handle kernel umount + ksu_handle_umount(old_uid, new_uid); + + return 0; +} + +void ksu_setuid_hook_init(void) +{ + ksu_kernel_umount_init(); + if (ksu_register_feature_handler(&enhanced_security_handler)) { + pr_err("Failed to register enhanced security feature handler\n"); + } +} + +void ksu_setuid_hook_exit(void) +{ + pr_info("ksu_core_exit\n"); + ksu_kernel_umount_exit(); + ksu_unregister_feature_handler(KSU_FEATURE_ENHANCED_SECURITY); +} diff --git a/kernel/setuid_hook.h b/kernel/setuid_hook.h new file mode 100644 index 0000000..fc5b93a --- /dev/null +++ b/kernel/setuid_hook.h @@ -0,0 +1,14 @@ +#ifndef __KSU_H_KSU_CORE +#define __KSU_H_KSU_CORE + +#include +#include +#include "apk_sign.h" +#include + +void ksu_setuid_hook_init(void); +void ksu_setuid_hook_exit(void); + +int ksu_handle_setresuid(uid_t ruid, uid_t euid, uid_t suid); + +#endif diff --git a/kernel/setup.sh b/kernel/setup.sh new file mode 100755 index 0000000..fe1c672 --- /dev/null +++ b/kernel/setup.sh @@ -0,0 +1,79 @@ +#!/bin/sh +set -eu + +KERNEL_ROOT=$(pwd) + +display_usage() { + echo "Usage: $0 [--cleanup | ]" + echo " --cleanup: Cleans up previous modifications made by the script." + echo " : Sets up or updates the KernelSU to specified tag or commit." + echo " -h, --help: Displays this usage information." + echo " (no args): Sets up or updates the KernelSU environment to the latest tagged version." +} + +initialize_variables() { + if test -d "$KERNEL_ROOT/common/drivers"; then + DRIVER_DIR="$KERNEL_ROOT/common/drivers" + elif test -d "$KERNEL_ROOT/drivers"; then + DRIVER_DIR="$KERNEL_ROOT/drivers" + else + echo '[ERROR] "drivers/" directory not found.' + exit 127 + fi + + DRIVER_MAKEFILE=$DRIVER_DIR/Makefile + DRIVER_KCONFIG=$DRIVER_DIR/Kconfig +} + +# Reverts modifications made by this script +perform_cleanup() { + echo "[+] Cleaning up..." + [ -L "$DRIVER_DIR/kernelsu" ] && rm "$DRIVER_DIR/kernelsu" && echo "[-] Symlink removed." + grep -q "kernelsu" "$DRIVER_MAKEFILE" && sed -i '/kernelsu/d' "$DRIVER_MAKEFILE" && echo "[-] Makefile reverted." + grep -q "kernelsu" "$DRIVER_KCONFIG" && sed -i '/kernelsu/d' "$DRIVER_KCONFIG" && echo "[-] Kconfig reverted." + if [ -d "$KERNEL_ROOT/KernelSU" ]; then + rm -rf "$KERNEL_ROOT/KernelSU" && echo "[-] KernelSU directory deleted." + fi +} + +# Sets up or update KernelSU environment +setup_kernelsu() { + echo "[+] Setting up KernelSU..." + # Clone the repository + if [ ! -d "$KERNEL_ROOT/KernelSU" ]; then + git clone https://github.com/SukiSU-Ultra/SukiSU-Ultra KernelSU + echo "[+] Repository cloned." + fi + cd "$KERNEL_ROOT/KernelSU" + git stash && echo "[-] Stashed current changes." + if [ "$(git status | grep -Po 'v\d+(\.\d+)*' | head -n1)" ]; then + git checkout main && echo "[-] Switched to main branch." + fi + git pull && echo "[+] Repository updated." + if [ -z "${1-}" ]; then + git checkout "$(git describe --abbrev=0 --tags)" && echo "[-] Checked out latest tag." + else + git checkout "$1" && echo "[-] Checked out $1." || echo "[-] Checkout default branch" + fi + cd "$DRIVER_DIR" + ln -sf "$(realpath --relative-to="$DRIVER_DIR" "$KERNEL_ROOT/KernelSU/kernel")" "kernelsu" && echo "[+] Symlink created." + + # Add entries in Makefile and Kconfig if not already existing + grep -q "kernelsu" "$DRIVER_MAKEFILE" || echo 'obj-$(CONFIG_KSU) += kernelsu/' >> "$DRIVER_MAKEFILE" && echo "[+] Modified Makefile." + grep -q 'source "drivers/kernelsu/Kconfig"' "$DRIVER_KCONFIG" || sed -i '/endmenu/i\source "drivers/kernelsu/Kconfig"' "$DRIVER_KCONFIG" && echo "[+] Modified Kconfig." + echo '[+] Done.' +} + +# Process command-line arguments +if [ "$#" -eq 0 ]; then + initialize_variables + setup_kernelsu +elif [ "$1" = "-h" ] || [ "$1" = "--help" ]; then + display_usage +elif [ "$1" = "--cleanup" ]; then + initialize_variables + perform_cleanup +else + initialize_variables + setup_kernelsu "$@" +fi diff --git a/kernel/sucompat.c b/kernel/sucompat.c new file mode 100644 index 0000000..f31e319 --- /dev/null +++ b/kernel/sucompat.c @@ -0,0 +1,187 @@ +#include "linux/compiler.h" +#include "linux/printk.h" +#include +#include +#include +#include +#include +#include +#include +#include + +#include "allowlist.h" +#include "feature.h" +#include "klog.h" // IWYU pragma: keep +#include "ksud.h" +#include "sucompat.h" +#include "app_profile.h" +#include "syscall_hook_manager.h" + +#include "sulog.h" + +#define SU_PATH "/system/bin/su" +#define SH_PATH "/system/bin/sh" + +bool ksu_su_compat_enabled __read_mostly = true; + +static int su_compat_feature_get(u64 *value) +{ + *value = ksu_su_compat_enabled ? 1 : 0; + return 0; +} + +static int su_compat_feature_set(u64 value) +{ + bool enable = value != 0; + ksu_su_compat_enabled = enable; + pr_info("su_compat: set to %d\n", enable); + return 0; +} + +static const struct ksu_feature_handler su_compat_handler = { + .feature_id = KSU_FEATURE_SU_COMPAT, + .name = "su_compat", + .get_handler = su_compat_feature_get, + .set_handler = su_compat_feature_set, +}; + +static void __user *userspace_stack_buffer(const void *d, size_t len) +{ + // To avoid having to mmap a page in userspace, just write below the stack + // pointer. + char __user *p = (void __user *)current_user_stack_pointer() - len; + + return copy_to_user(p, d, len) ? NULL : p; +} + +static char __user *sh_user_path(void) +{ + static const char sh_path[] = "/system/bin/sh"; + + return userspace_stack_buffer(sh_path, sizeof(sh_path)); +} + +static char __user *ksud_user_path(void) +{ + static const char ksud_path[] = KSUD_PATH; + + return userspace_stack_buffer(ksud_path, sizeof(ksud_path)); +} + +int ksu_handle_faccessat(int *dfd, const char __user **filename_user, int *mode, + int *__unused_flags) +{ + const char su[] = SU_PATH; + + if (!ksu_is_allow_uid_for_current(current_uid().val)) { + return 0; + } + + char path[sizeof(su) + 1]; + memset(path, 0, sizeof(path)); + strncpy_from_user_nofault(path, *filename_user, sizeof(path)); + + if (unlikely(!memcmp(path, su, sizeof(su)))) { +#if __SULOG_GATE + ksu_sulog_report_syscall(current_uid().val, NULL, "faccessat", path); +#endif + pr_info("faccessat su->sh!\n"); + *filename_user = sh_user_path(); + } + + return 0; +} + +int ksu_handle_stat(int *dfd, const char __user **filename_user, int *flags) +{ + // const char sh[] = SH_PATH; + const char su[] = SU_PATH; + + if (!ksu_is_allow_uid_for_current(current_uid().val)) { + return 0; + } + + if (unlikely(!filename_user)) { + return 0; + } + + char path[sizeof(su) + 1]; + memset(path, 0, sizeof(path)); +// Remove this later!! we use syscall hook, so this will never happen!!!!! +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 18, 0) && 0 + // it becomes a `struct filename *` after 5.18 + // https://elixir.bootlin.com/linux/v5.18/source/fs/stat.c#L216 + const char sh[] = SH_PATH; + struct filename *filename = *((struct filename **)filename_user); + if (IS_ERR(filename)) { + return 0; + } + if (likely(memcmp(filename->name, su, sizeof(su)))) + return 0; + pr_info("vfs_statx su->sh!\n"); + memcpy((void *)filename->name, sh, sizeof(sh)); +#else + strncpy_from_user_nofault(path, *filename_user, sizeof(path)); + + if (unlikely(!memcmp(path, su, sizeof(su)))) { +#if __SULOG_GATE + ksu_sulog_report_syscall(current_uid().val, NULL, "newfstatat", path); +#endif + pr_info("newfstatat su->sh!\n"); + *filename_user = sh_user_path(); + } +#endif + + return 0; +} + +int ksu_handle_execve_sucompat(const char __user **filename_user, + void *__never_use_argv, void *__never_use_envp, + int *__never_use_flags) +{ + const char su[] = SU_PATH; + char path[sizeof(su) + 1]; + + if (unlikely(!filename_user)) + return 0; + + memset(path, 0, sizeof(path)); + strncpy_from_user_nofault(path, *filename_user, sizeof(path)); + + if (likely(memcmp(path, su, sizeof(su)))) + return 0; + +#if __SULOG_GATE + bool is_allowed = ksu_is_allow_uid_for_current(current_uid().val); + ksu_sulog_report_syscall(current_uid().val, NULL, "execve", path); + + if (!is_allowed) + return 0; + + ksu_sulog_report_su_attempt(current_uid().val, NULL, path, is_allowed); +#else + if (!ksu_is_allow_uid_for_current(current_uid().val)) { + return 0; + } +#endif + + pr_info("sys_execve su found\n"); + *filename_user = ksud_user_path(); + + escape_with_root_profile(); + + return 0; +} + +// sucompat: permitted process can execute 'su' to gain root access. +void ksu_sucompat_init() +{ + if (ksu_register_feature_handler(&su_compat_handler)) { + pr_err("Failed to register su_compat feature handler\n"); + } +} + +void ksu_sucompat_exit() +{ + ksu_unregister_feature_handler(KSU_FEATURE_SU_COMPAT); +} \ No newline at end of file diff --git a/kernel/sucompat.h b/kernel/sucompat.h new file mode 100644 index 0000000..82161f7 --- /dev/null +++ b/kernel/sucompat.h @@ -0,0 +1,18 @@ +#ifndef __KSU_H_SUCOMPAT +#define __KSU_H_SUCOMPAT +#include + +extern bool ksu_su_compat_enabled; + +void ksu_sucompat_init(void); +void ksu_sucompat_exit(void); + +// Handler functions exported for hook_manager +int ksu_handle_faccessat(int *dfd, const char __user **filename_user, + int *mode, int *__unused_flags); +int ksu_handle_stat(int *dfd, const char __user **filename_user, int *flags); +int ksu_handle_execve_sucompat(const char __user **filename_user, + void *__never_use_argv, void *__never_use_envp, + int *__never_use_flags); + +#endif \ No newline at end of file diff --git a/kernel/sulog.c b/kernel/sulog.c new file mode 100644 index 0000000..84993d2 --- /dev/null +++ b/kernel/sulog.c @@ -0,0 +1,369 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "klog.h" + +#include "sulog.h" +#include "ksu.h" +#include "feature.h" + +#if __SULOG_GATE + +struct dedup_entry dedup_tbl[SULOG_COMM_LEN]; +static DEFINE_SPINLOCK(dedup_lock); +static LIST_HEAD(sulog_queue); +static struct workqueue_struct *sulog_workqueue; +static struct work_struct sulog_work; +static bool sulog_enabled __read_mostly = true; + +static int sulog_feature_get(u64 *value) +{ + *value = sulog_enabled ? 1 : 0; + return 0; +} + +static int sulog_feature_set(u64 value) +{ + bool enable = value != 0; + sulog_enabled = enable; + pr_info("sulog: set to %d\n", enable); + return 0; +} + +static const struct ksu_feature_handler sulog_handler = { + .feature_id = KSU_FEATURE_SULOG, + .name = "sulog", + .get_handler = sulog_feature_get, + .set_handler = sulog_feature_set, +}; + +static void get_timestamp(char *buf, size_t len) +{ + struct timespec64 ts; + struct tm tm; + + ktime_get_real_ts64(&ts); + time64_to_tm(ts.tv_sec - sys_tz.tz_minuteswest * 60, 0, &tm); + + snprintf(buf, len, "%04ld-%02d-%02d %02d:%02d:%02d", + tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, + tm.tm_hour, tm.tm_min, tm.tm_sec); +} + +static void ksu_get_cmdline(char *full_comm, const char *comm, size_t buf_len) +{ + if (!full_comm || buf_len <= 0) + return; + + if (comm && strlen(comm) > 0) { + KSU_STRSCPY(full_comm, comm, buf_len); + return; + } + + if (in_atomic() || in_interrupt() || irqs_disabled()) { + KSU_STRSCPY(full_comm, current->comm, buf_len); + return; + } + + if (!current->mm) { + KSU_STRSCPY(full_comm, current->comm, buf_len); + return; + } + + int n = get_cmdline(current, full_comm, buf_len); + if (n <= 0) { + KSU_STRSCPY(full_comm, current->comm, buf_len); + return; + } + + for (int i = 0; i < n && i < buf_len - 1; i++) { + if (full_comm[i] == '\0') + full_comm[i] = ' '; + } + full_comm[n < buf_len ? n : buf_len - 1] = '\0'; +} + +static void sanitize_string(char *str, size_t len) +{ + if (!str || len == 0) + return; + + size_t read_pos = 0, write_pos = 0; + + while (read_pos < len && str[read_pos] != '\0') { + char c = str[read_pos]; + + if (c == '\n' || c == '\r') { + read_pos++; + continue; + } + + if (c == ' ' && write_pos > 0 && str[write_pos - 1] == ' ') { + read_pos++; + continue; + } + + str[write_pos++] = c; + read_pos++; + } + + str[write_pos] = '\0'; +} + +static bool dedup_should_print(uid_t uid, u8 type, const char *content, size_t len) +{ + struct dedup_key key = { + .crc = dedup_calc_hash(content, len), + .uid = uid, + .type = type, + }; + u64 now = ktime_get_ns(); + u64 delta_ns = DEDUP_SECS * NSEC_PER_SEC; + + u32 idx = key.crc & (SULOG_COMM_LEN - 1); + spin_lock(&dedup_lock); + + struct dedup_entry *e = &dedup_tbl[idx]; + if (e->key.crc == key.crc && + e->key.uid == key.uid && + e->key.type == key.type && + (now - e->ts_ns) < delta_ns) { + spin_unlock(&dedup_lock); + return false; + } + + e->key = key; + e->ts_ns = now; + spin_unlock(&dedup_lock); + return true; +} + +static void sulog_work_handler(struct work_struct *work) +{ + struct file *fp; + struct sulog_entry *entry, *tmp; + LIST_HEAD(local_queue); + loff_t pos = 0; + unsigned long flags; + + spin_lock_irqsave(&dedup_lock, flags); + list_splice_init(&sulog_queue, &local_queue); + spin_unlock_irqrestore(&dedup_lock, flags); + + if (list_empty(&local_queue)) + return; + + fp = filp_open(SULOG_PATH, O_WRONLY | O_CREAT | O_APPEND, 0640); + if (IS_ERR(fp)) { + pr_err("sulog: failed to open log file: %ld\n", PTR_ERR(fp)); + goto cleanup; + } + + if (fp->f_inode->i_size > SULOG_MAX_SIZE) { + if (vfs_truncate(&fp->f_path, 0)) + pr_err("sulog: failed to truncate log file\n"); + pos = 0; + } else { + pos = fp->f_inode->i_size; + } + + list_for_each_entry(entry, &local_queue, list) + kernel_write(fp, entry->content, strlen(entry->content), &pos); + + vfs_fsync(fp, 0); + filp_close(fp, 0); + +cleanup: + list_for_each_entry_safe(entry, tmp, &local_queue, list) { + list_del(&entry->list); + kfree(entry); + } +} + +static void sulog_add_entry(char *log_buf, size_t len, uid_t uid, u8 dedup_type) +{ + struct sulog_entry *entry; + unsigned long flags; + + if (!sulog_enabled || !log_buf || len == 0) + return; + + if (!dedup_should_print(uid, dedup_type, log_buf, len)) + return; + + entry = kzalloc(sizeof(*entry), GFP_ATOMIC); + if (!entry) + return; + + KSU_STRSCPY(entry->content, log_buf, SULOG_ENTRY_MAX_LEN); + + spin_lock_irqsave(&dedup_lock, flags); + list_add_tail(&entry->list, &sulog_queue); + spin_unlock_irqrestore(&dedup_lock, flags); + + if (sulog_workqueue) + queue_work(sulog_workqueue, &sulog_work); +} + +void ksu_sulog_report_su_grant(uid_t uid, const char *comm, const char *method) +{ + char log_buf[SULOG_ENTRY_MAX_LEN]; + char timestamp[32]; + char full_comm[SULOG_COMM_LEN]; + + if (!sulog_enabled) + return; + + get_timestamp(timestamp, sizeof(timestamp)); + ksu_get_cmdline(full_comm, comm, sizeof(full_comm)); + + sanitize_string(full_comm, sizeof(full_comm)); + + snprintf(log_buf, sizeof(log_buf), + "[%s] SU_GRANT: UID=%d COMM=%s METHOD=%s PID=%d\n", + timestamp, uid, full_comm, method ? method : "unknown", current->pid); + + sulog_add_entry(log_buf, strlen(log_buf), uid, DEDUP_SU_GRANT); +} + +void ksu_sulog_report_su_attempt(uid_t uid, const char *comm, const char *target_path, bool success) +{ + char log_buf[SULOG_ENTRY_MAX_LEN]; + char timestamp[32]; + char full_comm[SULOG_COMM_LEN]; + + if (!sulog_enabled) + return; + + get_timestamp(timestamp, sizeof(timestamp)); + ksu_get_cmdline(full_comm, comm, sizeof(full_comm)); + + sanitize_string(full_comm, sizeof(full_comm)); + + snprintf(log_buf, sizeof(log_buf), + "[%s] SU_EXEC: UID=%d COMM=%s TARGET=%s RESULT=%s PID=%d\n", + timestamp, uid, full_comm, target_path ? target_path : "unknown", + success ? "SUCCESS" : "DENIED", current->pid); + + sulog_add_entry(log_buf, strlen(log_buf), uid, DEDUP_SU_ATTEMPT); +} + +void ksu_sulog_report_permission_check(uid_t uid, const char *comm, bool allowed) +{ + char log_buf[SULOG_ENTRY_MAX_LEN]; + char timestamp[32]; + char full_comm[SULOG_COMM_LEN]; + + if (!sulog_enabled) + return; + + get_timestamp(timestamp, sizeof(timestamp)); + ksu_get_cmdline(full_comm, comm, sizeof(full_comm)); + + sanitize_string(full_comm, sizeof(full_comm)); + + snprintf(log_buf, sizeof(log_buf), + "[%s] PERM_CHECK: UID=%d COMM=%s RESULT=%s PID=%d\n", + timestamp, uid, full_comm, allowed ? "ALLOWED" : "DENIED", current->pid); + + sulog_add_entry(log_buf, strlen(log_buf), uid, DEDUP_PERM_CHECK); +} + +void ksu_sulog_report_manager_operation(const char *operation, uid_t manager_uid, uid_t target_uid) +{ + char log_buf[SULOG_ENTRY_MAX_LEN]; + char timestamp[32]; + char full_comm[SULOG_COMM_LEN]; + + if (!sulog_enabled) + return; + + get_timestamp(timestamp, sizeof(timestamp)); + ksu_get_cmdline(full_comm, NULL, sizeof(full_comm)); + + sanitize_string(full_comm, sizeof(full_comm)); + + snprintf(log_buf, sizeof(log_buf), + "[%s] MANAGER_OP: OP=%s MANAGER_UID=%d TARGET_UID=%d COMM=%s PID=%d\n", + timestamp, operation ? operation : "unknown", manager_uid, target_uid, full_comm, current->pid); + + sulog_add_entry(log_buf, strlen(log_buf), manager_uid, DEDUP_MANAGER_OP); +} + +void ksu_sulog_report_syscall(uid_t uid, const char *comm, const char *syscall, const char *args) +{ + char log_buf[SULOG_ENTRY_MAX_LEN]; + char timestamp[32]; + char full_comm[SULOG_COMM_LEN]; + + if (!sulog_enabled) + return; + + get_timestamp(timestamp, sizeof(timestamp)); + ksu_get_cmdline(full_comm, comm, sizeof(full_comm)); + + sanitize_string(full_comm, sizeof(full_comm)); + + snprintf(log_buf, sizeof(log_buf), + "[%s] SYSCALL: UID=%d COMM=%s SYSCALL=%s ARGS=%s PID=%d\n", + timestamp, uid, full_comm, syscall ? syscall : "unknown", + args ? args : "none", current->pid); + + sulog_add_entry(log_buf, strlen(log_buf), uid, DEDUP_SYSCALL); +} + +int ksu_sulog_init(void) +{ + if (ksu_register_feature_handler(&sulog_handler)) { + pr_err("Failed to register sulog feature handler\n"); + } + + sulog_workqueue = alloc_workqueue("ksu_sulog", WQ_UNBOUND | WQ_HIGHPRI, 1); + if (!sulog_workqueue) { + pr_err("sulog: failed to create workqueue\n"); + return -ENOMEM; + } + + INIT_WORK(&sulog_work, sulog_work_handler); + pr_info("sulog: initialized successfully\n"); + return 0; +} + +void ksu_sulog_exit(void) +{ + struct sulog_entry *entry, *tmp; + unsigned long flags; + + ksu_unregister_feature_handler(KSU_FEATURE_SULOG); + + sulog_enabled = false; + + if (sulog_workqueue) { + flush_workqueue(sulog_workqueue); + destroy_workqueue(sulog_workqueue); + sulog_workqueue = NULL; + } + + spin_lock_irqsave(&dedup_lock, flags); + list_for_each_entry_safe(entry, tmp, &sulog_queue, list) { + list_del(&entry->list); + kfree(entry); + } + spin_unlock_irqrestore(&dedup_lock, flags); + + pr_info("sulog: cleaned up successfully\n"); +} + +#endif // __SULOG_GATE diff --git a/kernel/sulog.h b/kernel/sulog.h new file mode 100644 index 0000000..13144fb --- /dev/null +++ b/kernel/sulog.h @@ -0,0 +1,93 @@ +#ifndef __KSU_SULOG_H +#define __KSU_SULOG_H + +#include +#include +#include // needed for function dedup_calc_hash + +#define __SULOG_GATE 1 + +#if __SULOG_GATE + +extern struct timezone sys_tz; + +#define SULOG_PATH "/data/adb/ksu/log/sulog.log" +#define SULOG_MAX_SIZE (32 * 1024 * 1024) // 128MB +#define SULOG_ENTRY_MAX_LEN 512 +#define SULOG_COMM_LEN 256 +#define DEDUP_SECS 10 + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 10, 0) +static inline size_t strlcpy(char *dest, const char *src, size_t size) +{ + return strscpy(dest, src, size); +} +#endif + +#define KSU_STRSCPY(dst, src, size) \ + do { \ + if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 13, 0)) { \ + strscpy(dst, src, size); \ + } else { \ + strlcpy(dst, src, size); \ + } \ + } while (0) + +#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 8, 0) +#include + +static inline void time64_to_tm(time64_t totalsecs, int offset, struct tm *result) +{ + struct rtc_time rtc_tm; + rtc_time64_to_tm(totalsecs, &rtc_tm); + + result->tm_sec = rtc_tm.tm_sec; + result->tm_min = rtc_tm.tm_min; + result->tm_hour = rtc_tm.tm_hour; + result->tm_mday = rtc_tm.tm_mday; + result->tm_mon = rtc_tm.tm_mon; + result->tm_year = rtc_tm.tm_year; +} +#endif + +struct dedup_key { + u32 crc; + uid_t uid; + u8 type; + u8 _pad[1]; +}; + +struct dedup_entry { + struct dedup_key key; + u64 ts_ns; +}; + +enum { + DEDUP_SU_GRANT = 0, + DEDUP_SU_ATTEMPT, + DEDUP_PERM_CHECK, + DEDUP_MANAGER_OP, + DEDUP_SYSCALL, +}; + +static inline u32 dedup_calc_hash(const char *content, size_t len) +{ + return crc32(0, content, len); +} + +struct sulog_entry { + struct list_head list; + char content[SULOG_ENTRY_MAX_LEN]; +}; + +void ksu_sulog_report_su_grant(uid_t uid, const char *comm, const char *method); +void ksu_sulog_report_su_attempt(uid_t uid, const char *comm, const char *target_path, bool success); +void ksu_sulog_report_permission_check(uid_t uid, const char *comm, bool allowed); +void ksu_sulog_report_manager_operation(const char *operation, uid_t manager_uid, uid_t target_uid); +void ksu_sulog_report_syscall(uid_t uid, const char *comm, const char *syscall, const char *args); + +int ksu_sulog_init(void); +void ksu_sulog_exit(void); +#endif // __SULOG_GATE + +#endif /* __KSU_SULOG_H */ diff --git a/kernel/supercalls.c b/kernel/supercalls.c new file mode 100644 index 0000000..e42007f --- /dev/null +++ b/kernel/supercalls.c @@ -0,0 +1,1072 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "supercalls.h" +#include "arch.h" +#include "allowlist.h" +#include "feature.h" +#include "klog.h" // IWYU pragma: keep +#include "ksud.h" +#include "kernel_umount.h" +#include "manager.h" +#include "selinux/selinux.h" +#include "objsec.h" +#include "file_wrapper.h" +#include "syscall_hook_manager.h" +#include "throne_comm.h" +#include "dynamic_manager.h" +#include "umount_manager.h" + +#include "sulog.h" +#ifdef CONFIG_KSU_MANUAL_SU +#include "manual_su.h" +#endif + +bool ksu_uid_scanner_enabled = false; + +// Permission check functions +bool only_manager(void) +{ + return is_manager(); +} + +bool only_root(void) +{ + return current_uid().val == 0; +} + +bool manager_or_root(void) +{ + return current_uid().val == 0 || is_manager(); +} + +bool always_allow(void) +{ + return true; // No permission check +} + +bool allowed_for_su(void) +{ + bool is_allowed = is_manager() || ksu_is_allow_uid_for_current(current_uid().val); +#if __SULOG_GATE + ksu_sulog_report_permission_check(current_uid().val, current->comm, is_allowed); +#endif + return is_allowed; +} + +static void init_uid_scanner(void) +{ + ksu_uid_init(); + do_load_throne_state(NULL); + + if (ksu_uid_scanner_enabled) { + int ret = ksu_throne_comm_init(); + if (ret != 0) { + pr_err("Failed to initialize throne communication: %d\n", ret); + } + } +} + +static int do_grant_root(void __user *arg) +{ + // we already check uid above on allowed_for_su() + + pr_info("allow root for: %d\n", current_uid().val); + escape_with_root_profile(); + + return 0; +} + +static int do_get_info(void __user *arg) +{ + struct ksu_get_info_cmd cmd = {.version = KERNEL_SU_VERSION, .flags = 0}; + +#ifdef MODULE + cmd.flags |= 0x1; +#endif + if (is_manager()) { + cmd.flags |= 0x2; + } + cmd.features = KSU_FEATURE_MAX; + + if (copy_to_user(arg, &cmd, sizeof(cmd))) { + pr_err("get_version: copy_to_user failed\n"); + return -EFAULT; + } + + return 0; +} + +static int do_report_event(void __user *arg) +{ + struct ksu_report_event_cmd cmd; + + if (copy_from_user(&cmd, arg, sizeof(cmd))) { + return -EFAULT; + } + + switch (cmd.event) { + case EVENT_POST_FS_DATA: { + static bool post_fs_data_lock = false; + if (!post_fs_data_lock) { + post_fs_data_lock = true; + pr_info("post-fs-data triggered\n"); + on_post_fs_data(); + init_uid_scanner(); +#if __SULOG_GATE + ksu_sulog_init(); +#endif + ksu_dynamic_manager_init(); + } + break; + } + case EVENT_BOOT_COMPLETED: { + static bool boot_complete_lock = false; + if (!boot_complete_lock) { + boot_complete_lock = true; + pr_info("boot_complete triggered\n"); + on_boot_completed(); + } + break; + } + case EVENT_MODULE_MOUNTED: { + pr_info("module mounted!\n"); + on_module_mounted(); + break; + } + default: + break; + } + + return 0; +} + +static int do_set_sepolicy(void __user *arg) +{ + struct ksu_set_sepolicy_cmd cmd; + + if (copy_from_user(&cmd, arg, sizeof(cmd))) { + return -EFAULT; + } + + return handle_sepolicy(cmd.cmd, (void __user *)cmd.arg); +} + +static int do_check_safemode(void __user *arg) +{ + struct ksu_check_safemode_cmd cmd; + + cmd.in_safe_mode = ksu_is_safe_mode(); + + if (cmd.in_safe_mode) { + pr_warn("safemode enabled!\n"); + } + + if (copy_to_user(arg, &cmd, sizeof(cmd))) { + pr_err("check_safemode: copy_to_user failed\n"); + return -EFAULT; + } + + return 0; +} + +static int do_get_allow_list(void __user *arg) +{ + struct ksu_get_allow_list_cmd cmd; + + if (copy_from_user(&cmd, arg, sizeof(cmd))) { + return -EFAULT; + } + + bool success = ksu_get_allow_list((int *)cmd.uids, (int *)&cmd.count, true); + + if (!success) { + return -EFAULT; + } + + if (copy_to_user(arg, &cmd, sizeof(cmd))) { + pr_err("get_allow_list: copy_to_user failed\n"); + return -EFAULT; + } + + return 0; +} + +static int do_get_deny_list(void __user *arg) +{ + struct ksu_get_allow_list_cmd cmd; + + if (copy_from_user(&cmd, arg, sizeof(cmd))) { + return -EFAULT; + } + + bool success = ksu_get_allow_list((int *)cmd.uids, (int *)&cmd.count, false); + + if (!success) { + return -EFAULT; + } + + if (copy_to_user(arg, &cmd, sizeof(cmd))) { + pr_err("get_deny_list: copy_to_user failed\n"); + return -EFAULT; + } + + return 0; +} + +static int do_uid_granted_root(void __user *arg) +{ + struct ksu_uid_granted_root_cmd cmd; + + if (copy_from_user(&cmd, arg, sizeof(cmd))) { + return -EFAULT; + } + + cmd.granted = ksu_is_allow_uid_for_current(cmd.uid); + + if (copy_to_user(arg, &cmd, sizeof(cmd))) { + pr_err("uid_granted_root: copy_to_user failed\n"); + return -EFAULT; + } + + return 0; +} + +static int do_uid_should_umount(void __user *arg) +{ + struct ksu_uid_should_umount_cmd cmd; + + if (copy_from_user(&cmd, arg, sizeof(cmd))) { + return -EFAULT; + } + + cmd.should_umount = ksu_uid_should_umount(cmd.uid); + + if (copy_to_user(arg, &cmd, sizeof(cmd))) { + pr_err("uid_should_umount: copy_to_user failed\n"); + return -EFAULT; + } + + return 0; +} + +static int do_get_manager_uid(void __user *arg) +{ + struct ksu_get_manager_uid_cmd cmd; + + cmd.uid = ksu_get_manager_uid(); + + if (copy_to_user(arg, &cmd, sizeof(cmd))) { + pr_err("get_manager_uid: copy_to_user failed\n"); + return -EFAULT; + } + + return 0; +} + +static int do_get_app_profile(void __user *arg) +{ + struct ksu_get_app_profile_cmd cmd; + + if (copy_from_user(&cmd, arg, sizeof(cmd))) { + pr_err("get_app_profile: copy_from_user failed\n"); + return -EFAULT; + } + + if (!ksu_get_app_profile(&cmd.profile)) { + return -ENOENT; + } + + if (copy_to_user(arg, &cmd, sizeof(cmd))) { + pr_err("get_app_profile: copy_to_user failed\n"); + return -EFAULT; + } + + return 0; +} + +static int do_set_app_profile(void __user *arg) +{ + struct ksu_set_app_profile_cmd cmd; + + if (copy_from_user(&cmd, arg, sizeof(cmd))) { + pr_err("set_app_profile: copy_from_user failed\n"); + return -EFAULT; + } + + if (!ksu_set_app_profile(&cmd.profile, true)) { +#if __SULOG_GATE + ksu_sulog_report_manager_operation("SET_APP_PROFILE", + current_uid().val, cmd.profile.current_uid); +#endif + return -EFAULT; + } + + return 0; +} + +static int do_get_feature(void __user *arg) +{ + struct ksu_get_feature_cmd cmd; + bool supported; + int ret; + + if (copy_from_user(&cmd, arg, sizeof(cmd))) { + pr_err("get_feature: copy_from_user failed\n"); + return -EFAULT; + } + + ret = ksu_get_feature(cmd.feature_id, &cmd.value, &supported); + cmd.supported = supported ? 1 : 0; + + if (ret && supported) { + pr_err("get_feature: failed for feature %u: %d\n", cmd.feature_id, ret); + return ret; + } + + if (copy_to_user(arg, &cmd, sizeof(cmd))) { + pr_err("get_feature: copy_to_user failed\n"); + return -EFAULT; + } + + return 0; +} + +static int do_set_feature(void __user *arg) +{ + struct ksu_set_feature_cmd cmd; + int ret; + + if (copy_from_user(&cmd, arg, sizeof(cmd))) { + pr_err("set_feature: copy_from_user failed\n"); + return -EFAULT; + } + + ret = ksu_set_feature(cmd.feature_id, cmd.value); + if (ret) { + pr_err("set_feature: failed for feature %u: %d\n", cmd.feature_id, ret); + return ret; + } + + return 0; +} + +static int do_get_wrapper_fd(void __user *arg) { + if (!ksu_file_sid) { + return -EINVAL; + } + + struct ksu_get_wrapper_fd_cmd cmd; + int ret; + + if (copy_from_user(&cmd, arg, sizeof(cmd))) { + pr_err("get_wrapper_fd: copy_from_user failed\n"); + return -EFAULT; + } + + struct file* f = fget(cmd.fd); + if (!f) { + return -EBADF; + } + + struct ksu_file_wrapper *data = ksu_create_file_wrapper(f); + if (data == NULL) { + ret = -ENOMEM; + goto put_orig_file; + } + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 12, 0) +#define getfd_secure anon_inode_create_getfd +#else +#define getfd_secure anon_inode_getfd_secure +#endif + ret = getfd_secure("[ksu_fdwrapper]", &data->ops, data, f->f_flags, NULL); + if (ret < 0) { + pr_err("ksu_fdwrapper: getfd failed: %d\n", ret); + goto put_wrapper_data; + } + struct file* pf = fget(ret); + + struct inode* wrapper_inode = file_inode(pf); + // copy original inode mode + wrapper_inode->i_mode = file_inode(f)->i_mode; + struct inode_security_struct *sec = selinux_inode(wrapper_inode); + if (sec) { + sec->sid = ksu_file_sid; + } + + fput(pf); + goto put_orig_file; +put_wrapper_data: + ksu_delete_file_wrapper(data); +put_orig_file: + fput(f); + + return ret; +} + +static int do_manage_mark(void __user *arg) +{ + struct ksu_manage_mark_cmd cmd; + int ret = 0; + + if (copy_from_user(&cmd, arg, sizeof(cmd))) { + pr_err("manage_mark: copy_from_user failed\n"); + return -EFAULT; + } + + switch (cmd.operation) { + case KSU_MARK_GET: { + // Get task mark status + ret = ksu_get_task_mark(cmd.pid); + if (ret < 0) { + pr_err("manage_mark: get failed for pid %d: %d\n", cmd.pid, ret); + return ret; + } + cmd.result = (u32)ret; + break; + } + case KSU_MARK_MARK: { + if (cmd.pid == 0) { + ksu_mark_all_process(); + } else { + ret = ksu_set_task_mark(cmd.pid, true); + if (ret < 0) { + pr_err("manage_mark: set_mark failed for pid %d: %d\n", cmd.pid, + ret); + return ret; + } + } + break; + } + case KSU_MARK_UNMARK: { + if (cmd.pid == 0) { + ksu_unmark_all_process(); + } else { + ret = ksu_set_task_mark(cmd.pid, false); + if (ret < 0) { + pr_err("manage_mark: set_unmark failed for pid %d: %d\n", + cmd.pid, ret); + return ret; + } + } + break; + } + case KSU_MARK_REFRESH: { + ksu_mark_running_process(); + pr_info("manage_mark: refreshed running processes\n"); + break; + } + default: { + pr_err("manage_mark: invalid operation %u\n", cmd.operation); + return -EINVAL; + } + } + if (copy_to_user(arg, &cmd, sizeof(cmd))) { + pr_err("manage_mark: copy_to_user failed\n"); + return -EFAULT; + } + + return 0; +} + +static int do_nuke_ext4_sysfs(void __user *arg) +{ + struct ksu_nuke_ext4_sysfs_cmd cmd; + char mnt[256]; + long ret; + + if (copy_from_user(&cmd, arg, sizeof(cmd))) + return -EFAULT; + + if (!cmd.arg) + return -EINVAL; + + memset(mnt, 0, sizeof(mnt)); + + ret = strncpy_from_user(mnt, cmd.arg, sizeof(mnt)); + if (ret < 0) { + pr_err("nuke ext4 copy mnt failed: %ld\\n", ret); + return -EFAULT; // 或者 return ret; + } + + if (ret == sizeof(mnt)) { + pr_err("nuke ext4 mnt path too long\\n"); + return -ENAMETOOLONG; + } + + pr_info("do_nuke_ext4_sysfs: %s\n", mnt); + + return nuke_ext4_sysfs(mnt); +} + +struct list_head mount_list = LIST_HEAD_INIT(mount_list); +DECLARE_RWSEM(mount_list_lock); + +static int add_try_umount(void __user *arg) +{ + struct mount_entry *new_entry, *entry, *tmp; + struct ksu_add_try_umount_cmd cmd; + char buf[256] = {0}; + + if (copy_from_user(&cmd, arg, sizeof cmd)) + return -EFAULT; + + switch (cmd.mode) { + case KSU_UMOUNT_WIPE: { + struct mount_entry *entry, *tmp; + down_write(&mount_list_lock); + list_for_each_entry_safe(entry, tmp, &mount_list, list) { + pr_info("wipe_umount_list: removing entry: %s\n", entry->umountable); + list_del(&entry->list); + kfree(entry->umountable); + kfree(entry); + } + up_write(&mount_list_lock); + + return 0; + } + + case KSU_UMOUNT_ADD: { + long len = strncpy_from_user(buf, (const char __user *)cmd.arg, 256); + if (len <= 0) + return -EFAULT; + + buf[sizeof(buf) - 1] = '\0'; + + new_entry = kzalloc(sizeof(*new_entry), GFP_KERNEL); + if (!new_entry) + return -ENOMEM; + + new_entry->umountable = kstrdup(buf, GFP_KERNEL); + if (!new_entry->umountable) { + kfree(new_entry); + return -1; + } + + down_write(&mount_list_lock); + + // disallow dupes + // if this gets too many, we can consider moving this whole task to a kthread + list_for_each_entry(entry, &mount_list, list) { + if (!strcmp(entry->umountable, buf)) { + pr_info("cmd_add_try_umount: %s is already here!\n", buf); + up_write(&mount_list_lock); + kfree(new_entry->umountable); + kfree(new_entry); + return -1; + } + } + + // now check flags and add + // this also serves as a null check + if (cmd.flags) + new_entry->flags = cmd.flags; + else + new_entry->flags = 0; + + // debug + list_add(&new_entry->list, &mount_list); + up_write(&mount_list_lock); + pr_info("cmd_add_try_umount: %s added!\n", buf); + + return 0; + } + + // this is just strcmp'd wipe anyway + case KSU_UMOUNT_DEL: { + long len = strncpy_from_user(buf, (const char __user *)cmd.arg, sizeof(buf) - 1); + if (len <= 0) + return -EFAULT; + + buf[sizeof(buf) - 1] = '\0'; + + down_write(&mount_list_lock); + list_for_each_entry_safe(entry, tmp, &mount_list, list) { + if (!strcmp(entry->umountable, buf)) { + pr_info("cmd_add_try_umount: entry removed: %s\n", entry->umountable); + list_del(&entry->list); + kfree(entry->umountable); + kfree(entry); + } + } + up_write(&mount_list_lock); + + return 0; + } + + default: { + pr_err("cmd_add_try_umount: invalid operation %u\n", cmd.mode); + return -EINVAL; + } + + } // switch(cmd.mode) + + return 0; +} + +// 100. GET_FULL_VERSION - Get full version string +static int do_get_full_version(void __user *arg) +{ + struct ksu_get_full_version_cmd cmd = {0}; + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 13, 0) + strscpy(cmd.version_full, KSU_VERSION_FULL, sizeof(cmd.version_full)); +#else + strlcpy(cmd.version_full, KSU_VERSION_FULL, sizeof(cmd.version_full)); +#endif + + if (copy_to_user(arg, &cmd, sizeof(cmd))) { + pr_err("get_full_version: copy_to_user failed\n"); + return -EFAULT; + } + + return 0; +} + +// 101. HOOK_TYPE - Get hook type +static int do_get_hook_type(void __user *arg) +{ + struct ksu_hook_type_cmd cmd = {0}; + const char *type = "Tracepoint"; + +#if defined(KSU_MANUAL_HOOK) + type = "Manual"; +#endif + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 13, 0) + strscpy(cmd.hook_type, type, sizeof(cmd.hook_type)); +#else + strlcpy(cmd.hook_type, type, sizeof(cmd.hook_type)); +#endif + + if (copy_to_user(arg, &cmd, sizeof(cmd))) { + pr_err("get_hook_type: copy_to_user failed\n"); + return -EFAULT; + } + + return 0; +} + +// 102. ENABLE_KPM - Check if KPM is enabled +static int do_enable_kpm(void __user *arg) +{ + struct ksu_enable_kpm_cmd cmd; + + cmd.enabled = IS_ENABLED(CONFIG_KPM); + + if (copy_to_user(arg, &cmd, sizeof(cmd))) { + pr_err("enable_kpm: copy_to_user failed\n"); + return -EFAULT; + } + + return 0; +} + +static int do_dynamic_manager(void __user *arg) +{ + struct ksu_dynamic_manager_cmd cmd; + + if (copy_from_user(&cmd, arg, sizeof(cmd))) { + pr_err("dynamic_manager: copy_from_user failed\n"); + return -EFAULT; + } + + int ret = ksu_handle_dynamic_manager(&cmd.config); + if (ret) + return ret; + + if (cmd.config.operation == DYNAMIC_MANAGER_OP_GET && + copy_to_user(arg, &cmd, sizeof(cmd))) { + pr_err("dynamic_manager: copy_to_user failed\n"); + return -EFAULT; + } + + return 0; +} + +static int do_get_managers(void __user *arg) +{ + struct ksu_get_managers_cmd cmd; + + int ret = ksu_get_active_managers(&cmd.manager_info); + if (ret) + return ret; + + if (copy_to_user(arg, &cmd, sizeof(cmd))) { + pr_err("get_managers: copy_from_user failed\n"); + return -EFAULT; + } + + return 0; +} + +static int do_enable_uid_scanner(void __user *arg) +{ + struct ksu_enable_uid_scanner_cmd cmd; + + if (copy_from_user(&cmd, arg, sizeof(cmd))) { + pr_err("enable_uid_scanner: copy_from_user failed\n"); + return -EFAULT; + } + + switch (cmd.operation) { + case UID_SCANNER_OP_GET_STATUS: { + bool status = ksu_uid_scanner_enabled; + if (copy_to_user((void __user *)cmd.status_ptr, &status, sizeof(status))) { + pr_err("enable_uid_scanner: copy status failed\n"); + return -EFAULT; + } + break; + } + case UID_SCANNER_OP_TOGGLE: { + bool enabled = cmd.enabled; + + if (enabled == ksu_uid_scanner_enabled) { + pr_info("enable_uid_scanner: no need to change, already %s\n", + enabled ? "enabled" : "disabled"); + break; + } + + if (enabled) { + // Enable UID scanner + int ret = ksu_throne_comm_init(); + if (ret != 0) { + pr_err("enable_uid_scanner: failed to initialize: %d\n", ret); + return -EFAULT; + } + pr_info("enable_uid_scanner: enabled\n"); + } else { + // Disable UID scanner + ksu_throne_comm_exit(); + pr_info("enable_uid_scanner: disabled\n"); + } + + ksu_uid_scanner_enabled = enabled; + ksu_throne_comm_save_state(); + break; + } + case UID_SCANNER_OP_CLEAR_ENV: { + // Clear environment (force exit) + ksu_throne_comm_exit(); + ksu_uid_scanner_enabled = false; + ksu_throne_comm_save_state(); + pr_info("enable_uid_scanner: environment cleared\n"); + break; + } + default: + pr_err("enable_uid_scanner: invalid operation\n"); + return -EINVAL; + } + + return 0; +} + +#ifdef CONFIG_KSU_MANUAL_SU +static bool system_uid_check(void) +{ + return current_uid().val <= 2000; +} + +static int do_manual_su(void __user *arg) +{ + struct ksu_manual_su_cmd cmd; + struct manual_su_request request; + int res; + + if (copy_from_user(&cmd, arg, sizeof(cmd))) { + pr_err("manual_su: copy_from_user failed\n"); + return -EFAULT; + } + + pr_info("manual_su request, option=%d, uid=%d, pid=%d\n", + cmd.option, cmd.target_uid, cmd.target_pid); + + memset(&request, 0, sizeof(request)); + request.target_uid = cmd.target_uid; + request.target_pid = cmd.target_pid; + + if (cmd.option == MANUAL_SU_OP_GENERATE_TOKEN || + cmd.option == MANUAL_SU_OP_ESCALATE) { + memcpy(request.token_buffer, cmd.token_buffer, sizeof(request.token_buffer)); + } + + res = ksu_handle_manual_su_request(cmd.option, &request); + + if (cmd.option == MANUAL_SU_OP_GENERATE_TOKEN && res == 0) { + memcpy(cmd.token_buffer, request.token_buffer, sizeof(cmd.token_buffer)); + if (copy_to_user(arg, &cmd, sizeof(cmd))) { + pr_err("manual_su: copy_to_user failed\n"); + return -EFAULT; + } + } + + return res; +} +#endif + +static int do_umount_manager(void __user *arg) +{ + struct ksu_umount_manager_cmd cmd; + + if (copy_from_user(&cmd, arg, sizeof(cmd))) { + pr_err("umount_manager: copy_from_user failed\n"); + return -EFAULT; + } + + switch (cmd.operation) { + case UMOUNT_OP_ADD: { + return ksu_umount_manager_add(cmd.path, cmd.flags, false); + } + case UMOUNT_OP_REMOVE: { + return ksu_umount_manager_remove(cmd.path); + } + case UMOUNT_OP_LIST: { + struct ksu_umount_entry_info __user *entries = + (struct ksu_umount_entry_info __user *)cmd.entries_ptr; + return ksu_umount_manager_get_entries(entries, &cmd.count); + } + case UMOUNT_OP_CLEAR_CUSTOM: { + return ksu_umount_manager_clear_custom(); + } + default: + return -EINVAL; + } +} + +// IOCTL handlers mapping table +static const struct ksu_ioctl_cmd_map ksu_ioctl_handlers[] = { + { .cmd = KSU_IOCTL_GRANT_ROOT, .name = "GRANT_ROOT", .handler = do_grant_root, .perm_check = allowed_for_su }, + { .cmd = KSU_IOCTL_GET_INFO, .name = "GET_INFO", .handler = do_get_info, .perm_check = always_allow }, + { .cmd = KSU_IOCTL_REPORT_EVENT, .name = "REPORT_EVENT", .handler = do_report_event, .perm_check = only_root }, + { .cmd = KSU_IOCTL_SET_SEPOLICY, .name = "SET_SEPOLICY", .handler = do_set_sepolicy, .perm_check = only_root }, + { .cmd = KSU_IOCTL_CHECK_SAFEMODE, .name = "CHECK_SAFEMODE", .handler = do_check_safemode, .perm_check = always_allow }, + { .cmd = KSU_IOCTL_GET_ALLOW_LIST, .name = "GET_ALLOW_LIST", .handler = do_get_allow_list, .perm_check = manager_or_root }, + { .cmd = KSU_IOCTL_GET_DENY_LIST, .name = "GET_DENY_LIST", .handler = do_get_deny_list, .perm_check = manager_or_root }, + { .cmd = KSU_IOCTL_UID_GRANTED_ROOT, .name = "UID_GRANTED_ROOT", .handler = do_uid_granted_root, .perm_check = manager_or_root }, + { .cmd = KSU_IOCTL_UID_SHOULD_UMOUNT, .name = "UID_SHOULD_UMOUNT", .handler = do_uid_should_umount, .perm_check = manager_or_root }, + { .cmd = KSU_IOCTL_GET_MANAGER_UID, .name = "GET_MANAGER_UID", .handler = do_get_manager_uid, .perm_check = manager_or_root }, + { .cmd = KSU_IOCTL_GET_APP_PROFILE, .name = "GET_APP_PROFILE", .handler = do_get_app_profile, .perm_check = only_manager }, + { .cmd = KSU_IOCTL_SET_APP_PROFILE, .name = "SET_APP_PROFILE", .handler = do_set_app_profile, .perm_check = only_manager }, + { .cmd = KSU_IOCTL_GET_FEATURE, .name = "GET_FEATURE", .handler = do_get_feature, .perm_check = manager_or_root }, + { .cmd = KSU_IOCTL_SET_FEATURE, .name = "SET_FEATURE", .handler = do_set_feature, .perm_check = manager_or_root }, + { .cmd = KSU_IOCTL_GET_WRAPPER_FD, .name = "GET_WRAPPER_FD", .handler = do_get_wrapper_fd, .perm_check = manager_or_root }, + { .cmd = KSU_IOCTL_MANAGE_MARK, .name = "MANAGE_MARK", .handler = do_manage_mark, .perm_check = manager_or_root }, + { .cmd = KSU_IOCTL_NUKE_EXT4_SYSFS, .name = "NUKE_EXT4_SYSFS", .handler = do_nuke_ext4_sysfs, .perm_check = manager_or_root }, + { .cmd = KSU_IOCTL_ADD_TRY_UMOUNT, .name = "ADD_TRY_UMOUNT", .handler = add_try_umount, .perm_check = manager_or_root }, + { .cmd = KSU_IOCTL_GET_FULL_VERSION,.name = "GET_FULL_VERSION", .handler = do_get_full_version, .perm_check = always_allow}, + { .cmd = KSU_IOCTL_HOOK_TYPE,.name = "GET_HOOK_TYPE", .handler = do_get_hook_type, .perm_check = manager_or_root}, + { .cmd = KSU_IOCTL_ENABLE_KPM, .name = "GET_ENABLE_KPM", .handler = do_enable_kpm, .perm_check = manager_or_root}, + { .cmd = KSU_IOCTL_DYNAMIC_MANAGER, .name = "SET_DYNAMIC_MANAGER", .handler = do_dynamic_manager, .perm_check = manager_or_root}, + { .cmd = KSU_IOCTL_GET_MANAGERS, .name = "GET_MANAGERS", .handler = do_get_managers, .perm_check = manager_or_root}, + { .cmd = KSU_IOCTL_ENABLE_UID_SCANNER, .name = "SET_ENABLE_UID_SCANNER", .handler = do_enable_uid_scanner, .perm_check = manager_or_root}, +#ifdef CONFIG_KSU_MANUAL_SU + { .cmd = KSU_IOCTL_MANUAL_SU, .name = "MANUAL_SU", .handler = do_manual_su, .perm_check = system_uid_check}, +#endif +#ifdef CONFIG_KPM + { .cmd = KSU_IOCTL_KPM, .name = "KPM_OPERATION", .handler = do_kpm, .perm_check = manager_or_root}, +#endif + { .cmd = KSU_IOCTL_UMOUNT_MANAGER, .name = "UMOUNT_MANAGER", .handler = do_umount_manager, .perm_check = manager_or_root}, + { .cmd = 0, .name = NULL, .handler = NULL, .perm_check = NULL} // Sentine +}; + +struct ksu_install_fd_tw { + struct callback_head cb; + int __user *outp; +}; + +static void ksu_install_fd_tw_func(struct callback_head *cb) +{ + struct ksu_install_fd_tw *tw = container_of(cb, struct ksu_install_fd_tw, cb); + int fd = ksu_install_fd(); + pr_info("[%d] install ksu fd: %d\n", current->pid, fd); + + if (copy_to_user(tw->outp, &fd, sizeof(fd))) { + pr_err("install ksu fd reply err\n"); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 11, 0) + close_fd(fd); +#else + ksys_close(fd); +#endif + } + + kfree(tw); +} + +// downstream: make sure to pass arg as reference, this can allow us to extend things. +int ksu_handle_sys_reboot(int magic1, int magic2, unsigned int cmd, void __user **arg) +{ + struct ksu_install_fd_tw *tw; + + if (magic1 != KSU_INSTALL_MAGIC1) + return 0; + +#ifdef CONFIG_KSU_DEBUG + pr_info("sys_reboot: intercepted call! magic: 0x%x id: %d\n", magic1, magic2); +#endif + + // Check if this is a request to install KSU fd + if (magic2 == KSU_INSTALL_MAGIC2) { + tw = kzalloc(sizeof(*tw), GFP_ATOMIC); + if (!tw) + return 0; + + tw->outp = (int __user *)*arg; + tw->cb.func = ksu_install_fd_tw_func; + + if (task_work_add(current, &tw->cb, TWA_RESUME)) { + kfree(tw); + pr_warn("install fd add task_work failed\n"); + } + + return 0; + } + + // extensions + + return 0; +} + +#ifdef KSU_KPROBES_HOOK +// Reboot hook for installing fd +static int reboot_handler_pre(struct kprobe *p, struct pt_regs *regs) +{ + struct pt_regs *real_regs = PT_REAL_REGS(regs); + int magic1 = (int)PT_REGS_PARM1(real_regs); + int magic2 = (int)PT_REGS_PARM2(real_regs); + int cmd = (int)PT_REGS_PARM3(real_regs); + void __user **arg = (void __user **)&PT_REGS_SYSCALL_PARM4(real_regs); + + return ksu_handle_sys_reboot(magic1, magic2, cmd, arg); +} + +static struct kprobe reboot_kp = { + .symbol_name = REBOOT_SYMBOL, + .pre_handler = reboot_handler_pre, +}; +#endif + +void ksu_supercalls_init(void) +{ + int i; + + pr_info("KernelSU IOCTL Commands:\n"); + for (i = 0; ksu_ioctl_handlers[i].handler; i++) { + pr_info(" %-18s = 0x%08x\n", ksu_ioctl_handlers[i].name, ksu_ioctl_handlers[i].cmd); + } +#ifdef KSU_KPROBES_HOOK + int rc = register_kprobe(&reboot_kp); + if (rc) { + pr_err("reboot kprobe failed: %d\n", rc); + } else { + pr_info("reboot kprobe registered successfully\n"); + } +#endif +} + +void ksu_supercalls_exit(void) { +#ifdef KSU_KPROBES_HOOK + unregister_kprobe(&reboot_kp); +#endif +} + +static inline void ksu_ioctl_audit(unsigned int cmd, const char *cmd_name, uid_t uid, int ret) +{ +#if __SULOG_GATE + const char *result = (ret == 0) ? "SUCCESS" : + (ret == -EPERM) ? "DENIED" : "FAILED"; + ksu_sulog_report_syscall(uid, NULL, cmd_name, result); +#endif +} + +// IOCTL dispatcher +static long anon_ksu_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) +{ + void __user *argp = (void __user *)arg; + int i; + +#ifdef CONFIG_KSU_DEBUG + pr_info("ksu ioctl: cmd=0x%x from uid=%d\n", cmd, current_uid().val); +#endif + + for (i = 0; ksu_ioctl_handlers[i].handler; i++) { + if (cmd == ksu_ioctl_handlers[i].cmd) { + // Check permission first + if (ksu_ioctl_handlers[i].perm_check && + !ksu_ioctl_handlers[i].perm_check()) { + pr_warn("ksu ioctl: permission denied for cmd=0x%x uid=%d\n", + cmd, current_uid().val); + ksu_ioctl_audit(cmd, ksu_ioctl_handlers[i].name, + current_uid().val, -EPERM); + return -EPERM; + } + // Execute handler + int ret = ksu_ioctl_handlers[i].handler(argp); + ksu_ioctl_audit(cmd, ksu_ioctl_handlers[i].name, + current_uid().val, ret); + return ret; + } + } + + pr_warn("ksu ioctl: unsupported command 0x%x\n", cmd); + return -ENOTTY; +} + +// File release handler +static int anon_ksu_release(struct inode *inode, struct file *filp) +{ + pr_info("ksu fd released\n"); + return 0; +} + +// File operations structure +static const struct file_operations anon_ksu_fops = { + .owner = THIS_MODULE, + .unlocked_ioctl = anon_ksu_ioctl, + .compat_ioctl = anon_ksu_ioctl, + .release = anon_ksu_release, +}; + +// Install KSU fd to current process +int ksu_install_fd(void) +{ + struct file *filp; + int fd; + + // Get unused fd + fd = get_unused_fd_flags(O_CLOEXEC); + if (fd < 0) { + pr_err("ksu_install_fd: failed to get unused fd\n"); + return fd; + } + + // Create anonymous inode file + filp = anon_inode_getfile("[ksu_driver]", &anon_ksu_fops, NULL, O_RDWR | O_CLOEXEC); + if (IS_ERR(filp)) { + pr_err("ksu_install_fd: failed to create anon inode file\n"); + put_unused_fd(fd); + return PTR_ERR(filp); + } + + // Install fd + fd_install(fd, filp); + +#if __SULOG_GATE + ksu_sulog_report_permission_check(current_uid().val, current->comm, fd >= 0); +#endif + + pr_info("ksu fd installed: %d for pid %d\n", fd, current->pid); + + return fd; +} \ No newline at end of file diff --git a/kernel/supercalls.h b/kernel/supercalls.h new file mode 100644 index 0000000..6caca80 --- /dev/null +++ b/kernel/supercalls.h @@ -0,0 +1,197 @@ +#ifndef __KSU_H_SUPERCALLS +#define __KSU_H_SUPERCALLS + +#include +#include +#include "ksu.h" +#include "app_profile.h" + +#ifdef CONFIG_KPM +#include "kpm/kpm.h" +#endif + +// Magic numbers for reboot hook to install fd +#define KSU_INSTALL_MAGIC1 0xDEADBEEF +#define KSU_INSTALL_MAGIC2 0xCAFEBABE + +// Command structures for ioctl + +struct ksu_become_daemon_cmd { + __u8 token[65]; // Input: daemon token (null-terminated) +}; + +struct ksu_get_info_cmd { + __u32 version; // Output: KERNEL_SU_VERSION + __u32 flags; // Output: flags (bit 0: MODULE mode) + __u32 features; // Output: max feature ID supported +}; + +struct ksu_report_event_cmd { + __u32 event; // Input: EVENT_POST_FS_DATA, EVENT_BOOT_COMPLETED, etc. +}; + +struct ksu_set_sepolicy_cmd { + __u64 cmd; // Input: sepolicy command + __aligned_u64 arg; // Input: sepolicy argument pointer +}; + +struct ksu_check_safemode_cmd { + __u8 in_safe_mode; // Output: true if in safe mode, false otherwise +}; + +struct ksu_get_allow_list_cmd { + __u32 uids[128]; // Output: array of allowed/denied UIDs + __u32 count; // Output: number of UIDs in array + __u8 allow; // Input: true for allow list, false for deny list +}; + +struct ksu_uid_granted_root_cmd { + __u32 uid; // Input: target UID to check + __u8 granted; // Output: true if granted, false otherwise +}; + +struct ksu_uid_should_umount_cmd { + __u32 uid; // Input: target UID to check + __u8 should_umount; // Output: true if should umount, false otherwise +}; + +struct ksu_get_manager_uid_cmd { + __u32 uid; // Output: manager UID +}; + +struct ksu_get_app_profile_cmd { + struct app_profile profile; // Input/Output: app profile structure +}; + +struct ksu_set_app_profile_cmd { + struct app_profile profile; // Input: app profile structure +}; + +struct ksu_get_feature_cmd { + __u32 feature_id; // Input: feature ID (enum ksu_feature_id) + __u64 value; // Output: feature value/state + __u8 supported; // Output: true if feature is supported, false otherwise +}; + +struct ksu_set_feature_cmd { + __u32 feature_id; // Input: feature ID (enum ksu_feature_id) + __u64 value; // Input: feature value/state to set +}; + +struct ksu_get_wrapper_fd_cmd { + __u32 fd; // Input: userspace fd + __u32 flags; // Input: flags of userspace fd +}; + +struct ksu_manage_mark_cmd { + __u32 operation; // Input: KSU_MARK_* + __s32 pid; // Input: target pid (0 for all processes) + __u32 result; // Output: for get operation - mark status or reg_count +}; + +#define KSU_MARK_GET 1 +#define KSU_MARK_MARK 2 +#define KSU_MARK_UNMARK 3 +#define KSU_MARK_REFRESH 4 + +struct ksu_nuke_ext4_sysfs_cmd { + __aligned_u64 arg; // Input: mnt pointer +}; + +struct ksu_add_try_umount_cmd { + __aligned_u64 arg; // char ptr, this is the mountpoint + __u32 flags; // this is the flag we use for it + __u8 mode; // denotes what to do with it 0:wipe_list 1:add_to_list 2:delete_entry +}; + +#define KSU_UMOUNT_WIPE 0 // ignore everything and wipe list +#define KSU_UMOUNT_ADD 1 // add entry (path + flags) +#define KSU_UMOUNT_DEL 2 // delete entry, strcmp + + +// Other command structures +struct ksu_get_full_version_cmd { + char version_full[KSU_FULL_VERSION_STRING]; // Output: full version string +}; + +struct ksu_hook_type_cmd { + char hook_type[32]; // Output: hook type string +}; + +struct ksu_enable_kpm_cmd { + __u8 enabled; // Output: true if KPM is enabled +}; + +struct ksu_dynamic_manager_cmd { + struct dynamic_manager_user_config config; // Input/Output: dynamic manager config +}; + +struct ksu_get_managers_cmd { + struct manager_list_info manager_info; // Output: manager list information +}; + +struct ksu_enable_uid_scanner_cmd { + __u32 operation; // Input: operation type (UID_SCANNER_OP_GET_STATUS, UID_SCANNER_OP_TOGGLE, UID_SCANNER_OP_CLEAR_ENV) + __u32 enabled; // Input: enable or disable (for UID_SCANNER_OP_TOGGLE) + void __user *status_ptr; // Input: pointer to store status (for UID_SCANNER_OP_GET_STATUS) +}; + +#ifdef CONFIG_KSU_MANUAL_SU +struct ksu_manual_su_cmd { + __u32 option; // Input: operation type (MANUAL_SU_OP_GENERATE_TOKEN, MANUAL_SU_OP_ESCALATE, MANUAL_SU_OP_ADD_PENDING) + __u32 target_uid; // Input: target UID + __u32 target_pid; // Input: target PID + char token_buffer[33]; // Input/Output: token buffer +}; +#endif + +// IOCTL command definitions +#define KSU_IOCTL_GRANT_ROOT _IOC(_IOC_NONE, 'K', 1, 0) +#define KSU_IOCTL_GET_INFO _IOC(_IOC_READ, 'K', 2, 0) +#define KSU_IOCTL_REPORT_EVENT _IOC(_IOC_WRITE, 'K', 3, 0) +#define KSU_IOCTL_SET_SEPOLICY _IOC(_IOC_READ|_IOC_WRITE, 'K', 4, 0) +#define KSU_IOCTL_CHECK_SAFEMODE _IOC(_IOC_READ, 'K', 5, 0) +#define KSU_IOCTL_GET_ALLOW_LIST _IOC(_IOC_READ|_IOC_WRITE, 'K', 6, 0) +#define KSU_IOCTL_GET_DENY_LIST _IOC(_IOC_READ|_IOC_WRITE, 'K', 7, 0) +#define KSU_IOCTL_UID_GRANTED_ROOT _IOC(_IOC_READ|_IOC_WRITE, 'K', 8, 0) +#define KSU_IOCTL_UID_SHOULD_UMOUNT _IOC(_IOC_READ|_IOC_WRITE, 'K', 9, 0) +#define KSU_IOCTL_GET_MANAGER_UID _IOC(_IOC_READ, 'K', 10, 0) +#define KSU_IOCTL_GET_APP_PROFILE _IOC(_IOC_READ|_IOC_WRITE, 'K', 11, 0) +#define KSU_IOCTL_SET_APP_PROFILE _IOC(_IOC_WRITE, 'K', 12, 0) +#define KSU_IOCTL_GET_FEATURE _IOC(_IOC_READ|_IOC_WRITE, 'K', 13, 0) +#define KSU_IOCTL_SET_FEATURE _IOC(_IOC_WRITE, 'K', 14, 0) +#define KSU_IOCTL_GET_WRAPPER_FD _IOC(_IOC_WRITE, 'K', 15, 0) +#define KSU_IOCTL_MANAGE_MARK _IOC(_IOC_READ|_IOC_WRITE, 'K', 16, 0) +#define KSU_IOCTL_NUKE_EXT4_SYSFS _IOC(_IOC_WRITE, 'K', 17, 0) +#define KSU_IOCTL_ADD_TRY_UMOUNT _IOC(_IOC_WRITE, 'K', 18, 0) +// Other IOCTL command definitions +#define KSU_IOCTL_GET_FULL_VERSION _IOC(_IOC_READ, 'K', 100, 0) +#define KSU_IOCTL_HOOK_TYPE _IOC(_IOC_READ, 'K', 101, 0) +#define KSU_IOCTL_ENABLE_KPM _IOC(_IOC_READ, 'K', 102, 0) +#define KSU_IOCTL_DYNAMIC_MANAGER _IOC(_IOC_READ|_IOC_WRITE, 'K', 103, 0) +#define KSU_IOCTL_GET_MANAGERS _IOC(_IOC_READ|_IOC_WRITE, 'K', 104, 0) +#define KSU_IOCTL_ENABLE_UID_SCANNER _IOC(_IOC_READ|_IOC_WRITE, 'K', 105, 0) +#ifdef CONFIG_KSU_MANUAL_SU +#define KSU_IOCTL_MANUAL_SU _IOC(_IOC_READ|_IOC_WRITE, 'K', 106, 0) +#endif +#define KSU_IOCTL_UMOUNT_MANAGER _IOC(_IOC_READ|_IOC_WRITE, 'K', 107, 0) + +// IOCTL handler types +typedef int (*ksu_ioctl_handler_t)(void __user *arg); +typedef bool (*ksu_perm_check_t)(void); + +// IOCTL command mapping +struct ksu_ioctl_cmd_map { + unsigned int cmd; + const char *name; + ksu_ioctl_handler_t handler; + ksu_perm_check_t perm_check; // Permission check function +}; + +// Install KSU fd to current process +int ksu_install_fd(void); + +void ksu_supercalls_init(void); +void ksu_supercalls_exit(void); + +#endif // __KSU_H_SUPERCALLS \ No newline at end of file diff --git a/kernel/syscall_hook_manager.c b/kernel/syscall_hook_manager.c new file mode 100644 index 0000000..14d258a --- /dev/null +++ b/kernel/syscall_hook_manager.c @@ -0,0 +1,374 @@ +#include "linux/compiler.h" +#include "linux/cred.h" +#include "linux/printk.h" +#include "selinux/selinux.h" +#include +#include +#include +#include +#include +#include +#include +#include + +#include "allowlist.h" +#include "arch.h" +#include "klog.h" // IWYU pragma: keep +#include "syscall_hook_manager.h" +#include "sucompat.h" +#include "setuid_hook.h" +#include "selinux/selinux.h" + +// Tracepoint registration count management +// == 1: just us +// > 1: someone else is also using syscall tracepoint e.g. ftrace +static int tracepoint_reg_count = 0; +static DEFINE_SPINLOCK(tracepoint_reg_lock); + +void ksu_clear_task_tracepoint_flag_if_needed(struct task_struct *t) +{ + unsigned long flags; + spin_lock_irqsave(&tracepoint_reg_lock, flags); + if (tracepoint_reg_count <= 1) { + ksu_clear_task_tracepoint_flag(t); + } + spin_unlock_irqrestore(&tracepoint_reg_lock, flags); +} + +// Process marking management +static void handle_process_mark(bool mark) +{ + struct task_struct *p, *t; + read_lock(&tasklist_lock); + for_each_process_thread(p, t) { + if (mark) + ksu_set_task_tracepoint_flag(t); + else + ksu_clear_task_tracepoint_flag(t); + } + read_unlock(&tasklist_lock); +} + +void ksu_mark_all_process(void) +{ + handle_process_mark(true); + pr_info("hook_manager: mark all user process done!\n"); +} + +void ksu_unmark_all_process(void) +{ + handle_process_mark(false); + pr_info("hook_manager: unmark all user process done!\n"); +} + +static void ksu_mark_running_process_locked() +{ + struct task_struct *p, *t; + read_lock(&tasklist_lock); + for_each_process_thread (p, t) { + if (!t->mm) { // only user processes + continue; + } + int uid = task_uid(t).val; + const struct cred *cred = get_task_cred(t); + bool ksu_root_process = + uid == 0 && is_task_ksu_domain(cred); + bool is_zygote_process = is_zygote(cred); + bool is_shell = uid == 2000; + // before boot completed, we shall mark init for marking zygote + bool is_init = t->pid == 1; + if (ksu_root_process || is_zygote_process || is_shell || is_init + || ksu_is_allow_uid(uid)) { + ksu_set_task_tracepoint_flag(t); + pr_info("hook_manager: mark process: pid:%d, uid: %d, comm:%s\n", + t->pid, uid, t->comm); + } else { + ksu_clear_task_tracepoint_flag(t); + pr_info("hook_manager: unmark process: pid:%d, uid: %d, comm:%s\n", + t->pid, uid, t->comm); + } + put_cred(cred); + } + read_unlock(&tasklist_lock); +} + +void ksu_mark_running_process() +{ + unsigned long flags; + spin_lock_irqsave(&tracepoint_reg_lock, flags); + if (tracepoint_reg_count <= 1) { + ksu_mark_running_process_locked(); + } else { + pr_info("hook_manager: not mark running process since syscall tracepoint is in use\n"); + } + spin_unlock_irqrestore(&tracepoint_reg_lock, flags); +} + +// Get task mark status +// Returns: 1 if marked, 0 if not marked, -ESRCH if task not found +int ksu_get_task_mark(pid_t pid) +{ + struct task_struct *task; + int marked = -ESRCH; + + rcu_read_lock(); + task = find_task_by_vpid(pid); + if (task) { + get_task_struct(task); + rcu_read_unlock(); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 11, 0) + marked = test_task_syscall_work(task, SYSCALL_TRACEPOINT) ? 1 : 0; +#else + marked = test_tsk_thread_flag(task, TIF_SYSCALL_TRACEPOINT) ? 1 : 0; +#endif + put_task_struct(task); + } else { + rcu_read_unlock(); + } + + return marked; +} + +// Set task mark status +// Returns: 0 on success, -ESRCH if task not found +int ksu_set_task_mark(pid_t pid, bool mark) +{ + struct task_struct *task; + int ret = -ESRCH; + + rcu_read_lock(); + task = find_task_by_vpid(pid); + if (task) { + get_task_struct(task); + rcu_read_unlock(); + if (mark) { + ksu_set_task_tracepoint_flag(task); + pr_info("hook_manager: marked task pid=%d comm=%s\n", pid, task->comm); + } else { + ksu_clear_task_tracepoint_flag(task); + pr_info("hook_manager: unmarked task pid=%d comm=%s\n", pid, task->comm); + } + put_task_struct(task); + ret = 0; + } else { + rcu_read_unlock(); + } + + return ret; +} + +#ifdef CONFIG_KRETPROBES + +static struct kretprobe *init_kretprobe(const char *name, + kretprobe_handler_t handler) +{ + struct kretprobe *rp = kzalloc(sizeof(struct kretprobe), GFP_KERNEL); + if (!rp) + return NULL; + rp->kp.symbol_name = name; + rp->handler = handler; + rp->data_size = 0; + rp->maxactive = 0; + + int ret = register_kretprobe(rp); + pr_info("hook_manager: register_%s kretprobe: %d\n", name, ret); + if (ret) { + kfree(rp); + return NULL; + } + + return rp; +} + +static void destroy_kretprobe(struct kretprobe **rp_ptr) +{ + struct kretprobe *rp = *rp_ptr; + if (!rp) + return; + unregister_kretprobe(rp); + synchronize_rcu(); + kfree(rp); + *rp_ptr = NULL; +} + +static int syscall_regfunc_handler(struct kretprobe_instance *ri, struct pt_regs *regs) +{ + unsigned long flags; + spin_lock_irqsave(&tracepoint_reg_lock, flags); + if (tracepoint_reg_count < 1) { + // while install our tracepoint, mark our processes + ksu_mark_running_process_locked(); + } else if (tracepoint_reg_count == 1) { + // while other tracepoint first added, mark all processes + ksu_mark_all_process(); + } + tracepoint_reg_count++; + spin_unlock_irqrestore(&tracepoint_reg_lock, flags); + return 0; +} + +static int syscall_unregfunc_handler(struct kretprobe_instance *ri, struct pt_regs *regs) +{ + unsigned long flags; + spin_lock_irqsave(&tracepoint_reg_lock, flags); + tracepoint_reg_count--; + if (tracepoint_reg_count <= 0) { + // while no tracepoint left, unmark all processes + ksu_unmark_all_process(); + } else if (tracepoint_reg_count == 1) { + // while just our tracepoint left, unmark disallowed processes + ksu_mark_running_process_locked(); + } + spin_unlock_irqrestore(&tracepoint_reg_lock, flags); + return 0; +} + +static struct kretprobe *syscall_regfunc_rp = NULL; +static struct kretprobe *syscall_unregfunc_rp = NULL; +#endif + +static inline bool check_syscall_fastpath(int nr) +{ + switch (nr) { + case __NR_newfstatat: + case __NR_faccessat: + case __NR_execve: + case __NR_setresuid: + case __NR_clone: + case __NR_clone3: + return true; + default: + return false; + } +} + +// Unmark init's child that are not zygote, adbd or ksud +int ksu_handle_init_mark_tracker(const char __user **filename_user) +{ + char path[64]; + + if (unlikely(!filename_user)) + return 0; + + memset(path, 0, sizeof(path)); + strncpy_from_user_nofault(path, *filename_user, sizeof(path)); + + if (likely(strstr(path, "/app_process") == NULL && strstr(path, "/adbd") == NULL && strstr(path, "/ksud") == NULL)) { + pr_info("hook_manager: unmark %d exec %s", current->pid, path); + ksu_clear_task_tracepoint_flag_if_needed(current); + } + + return 0; +} +#ifdef CONFIG_KSU_MANUAL_SU +#include "manual_su.h" +static inline void ksu_handle_task_alloc(struct pt_regs *regs) +{ + ksu_try_escalate_for_uid(current_uid().val); +} +#endif + +#ifdef CONFIG_HAVE_SYSCALL_TRACEPOINTS +// Generic sys_enter handler that dispatches to specific handlers +static void ksu_sys_enter_handler(void *data, struct pt_regs *regs, long id) +{ + if (unlikely(check_syscall_fastpath(id))) { +#ifdef KSU_TP_HOOK + if (ksu_su_compat_enabled) { + // Handle newfstatat + if (id == __NR_newfstatat) { + int *dfd = (int *)&PT_REGS_PARM1(regs); + const char __user **filename_user = + (const char __user **)&PT_REGS_PARM2(regs); + int *flags = (int *)&PT_REGS_SYSCALL_PARM4(regs); + ksu_handle_stat(dfd, filename_user, flags); + return; + } + + // Handle faccessat + if (id == __NR_faccessat) { + int *dfd = (int *)&PT_REGS_PARM1(regs); + const char __user **filename_user = + (const char __user **)&PT_REGS_PARM2(regs); + int *mode = (int *)&PT_REGS_PARM3(regs); + ksu_handle_faccessat(dfd, filename_user, mode, NULL); + return; + } + + // Handle execve + if (id == __NR_execve) { + const char __user **filename_user = + (const char __user **)&PT_REGS_PARM1(regs); + if (current->pid != 1 && is_init(get_current_cred())) { + ksu_handle_init_mark_tracker(filename_user); + } else { + ksu_handle_execve_sucompat(filename_user, NULL, NULL, NULL); + } + return; + } + } +#endif + + // Handle setresuid + if (id == __NR_setresuid) { + uid_t ruid = (uid_t)PT_REGS_PARM1(regs); + uid_t euid = (uid_t)PT_REGS_PARM2(regs); + uid_t suid = (uid_t)PT_REGS_PARM3(regs); + ksu_handle_setresuid(ruid, euid, suid); + return; + } + +#ifdef CONFIG_KSU_MANUAL_SU + // Handle task_alloc via clone/fork + if (id == __NR_clone || id == __NR_clone3) + return ksu_handle_task_alloc(regs); +#endif + } +} +#endif + +void ksu_syscall_hook_manager_init(void) +{ + int ret; + pr_info("hook_manager: ksu_hook_manager_init called\n"); + +#ifdef CONFIG_KRETPROBES + // Register kretprobe for syscall_regfunc + syscall_regfunc_rp = init_kretprobe("syscall_regfunc", syscall_regfunc_handler); + // Register kretprobe for syscall_unregfunc + syscall_unregfunc_rp = init_kretprobe("syscall_unregfunc", syscall_unregfunc_handler); +#endif + +#ifdef CONFIG_HAVE_SYSCALL_TRACEPOINTS + ret = register_trace_sys_enter(ksu_sys_enter_handler, NULL); +#ifndef CONFIG_KRETPROBES + ksu_mark_running_process_locked(); +#endif + if (ret) { + pr_err("hook_manager: failed to register sys_enter tracepoint: %d\n", ret); + } else { + pr_info("hook_manager: sys_enter tracepoint registered\n"); + } +#endif + + ksu_setuid_hook_init(); + ksu_sucompat_init(); +} + +void ksu_syscall_hook_manager_exit(void) +{ + pr_info("hook_manager: ksu_hook_manager_exit called\n"); +#ifdef CONFIG_HAVE_SYSCALL_TRACEPOINTS + unregister_trace_sys_enter(ksu_sys_enter_handler, NULL); + tracepoint_synchronize_unregister(); + pr_info("hook_manager: sys_enter tracepoint unregistered\n"); +#endif + +#ifdef CONFIG_KRETPROBES + destroy_kretprobe(&syscall_regfunc_rp); + destroy_kretprobe(&syscall_unregfunc_rp); +#endif + + ksu_sucompat_exit(); + ksu_setuid_hook_exit(); +} diff --git a/kernel/syscall_hook_manager.h b/kernel/syscall_hook_manager.h new file mode 100644 index 0000000..90245c2 --- /dev/null +++ b/kernel/syscall_hook_manager.h @@ -0,0 +1,47 @@ +#ifndef __KSU_H_HOOK_MANAGER +#define __KSU_H_HOOK_MANAGER + +#include +#include +#include +#include +#include +#include +#include +#include "selinux/selinux.h" + +// Hook manager initialization and cleanup +void ksu_syscall_hook_manager_init(void); +void ksu_syscall_hook_manager_exit(void); + +// Process marking for tracepoint +void ksu_mark_all_process(void); +void ksu_unmark_all_process(void); +void ksu_mark_running_process(void); + +// Per-task mark operations +int ksu_get_task_mark(pid_t pid); +int ksu_set_task_mark(pid_t pid, bool mark); + + +static inline void ksu_set_task_tracepoint_flag(struct task_struct *t) +{ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 11, 0) + set_task_syscall_work(t, SYSCALL_TRACEPOINT); +#else + set_tsk_thread_flag(t, TIF_SYSCALL_TRACEPOINT); +#endif +} + +static inline void ksu_clear_task_tracepoint_flag(struct task_struct *t) +{ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 11, 0) + clear_task_syscall_work(t, SYSCALL_TRACEPOINT); +#else + clear_tsk_thread_flag(t, TIF_SYSCALL_TRACEPOINT); +#endif +} + +void ksu_clear_task_tracepoint_flag_if_needed(struct task_struct *t); + +#endif diff --git a/kernel/throne_comm.c b/kernel/throne_comm.c new file mode 100644 index 0000000..90067dc --- /dev/null +++ b/kernel/throne_comm.c @@ -0,0 +1,214 @@ +#include +#include +#include +#include +#include +#include + +#include "klog.h" +#include "throne_comm.h" +#include "ksu.h" + +#define PROC_UID_SCANNER "ksu_uid_scanner" +#define UID_SCANNER_STATE_FILE "/data/adb/ksu/.uid_scanner" + +static struct proc_dir_entry *proc_entry = NULL; +static struct workqueue_struct *scanner_wq = NULL; +static struct work_struct scan_work; +static struct work_struct ksu_state_save_work; +static struct work_struct ksu_state_load_work; + + +// Signal userspace to rescan +static bool need_rescan = false; + +static void rescan_work_fn(struct work_struct *work) +{ + // Signal userspace through proc interface + need_rescan = true; + pr_info("requested userspace uid rescan\n"); +} + +void ksu_request_userspace_scan(void) +{ + if (scanner_wq) { + queue_work(scanner_wq, &scan_work); + } +} + +void ksu_handle_userspace_update(void) +{ + // Called when userspace notifies update complete + need_rescan = false; + pr_info("userspace uid list updated\n"); +} + +static void do_save_throne_state(struct work_struct *work) +{ + struct file *fp; + char state_char = ksu_uid_scanner_enabled ? '1' : '0'; + loff_t off = 0; + + fp = filp_open(UID_SCANNER_STATE_FILE, O_WRONLY | O_CREAT | O_TRUNC, 0644); + if (IS_ERR(fp)) { + pr_err("save_throne_state create file failed: %ld\n", PTR_ERR(fp)); + return; + } + + if (kernel_write(fp, &state_char, sizeof(state_char), &off) != sizeof(state_char)) { + pr_err("save_throne_state write failed\n"); + goto exit; + } + + pr_info("throne state saved: %s\n", ksu_uid_scanner_enabled ? "enabled" : "disabled"); + +exit: + filp_close(fp, 0); +} + +void do_load_throne_state(struct work_struct *work) +{ + struct file *fp; + char state_char; + loff_t off = 0; + ssize_t ret; + + fp = filp_open(UID_SCANNER_STATE_FILE, O_RDONLY, 0); + if (IS_ERR(fp)) { + pr_info("throne state file not found, using default: disabled\n"); + ksu_uid_scanner_enabled = false; + return; + } + + ret = kernel_read(fp, &state_char, sizeof(state_char), &off); + if (ret != sizeof(state_char)) { + pr_err("load_throne_state read err: %zd\n", ret); + ksu_uid_scanner_enabled = false; + goto exit; + } + + ksu_uid_scanner_enabled = (state_char == '1'); + pr_info("throne state loaded: %s\n", ksu_uid_scanner_enabled ? "enabled" : "disabled"); + +exit: + filp_close(fp, 0); +} + +bool ksu_throne_comm_load_state(void) +{ + return ksu_queue_work(&ksu_state_load_work); +} + +void ksu_throne_comm_save_state(void) +{ + ksu_queue_work(&ksu_state_save_work); +} + +static int uid_scanner_show(struct seq_file *m, void *v) +{ + if (need_rescan) { + seq_puts(m, "RESCAN\n"); + } else { + seq_puts(m, "OK\n"); + } + return 0; +} + +static int uid_scanner_open(struct inode *inode, struct file *file) +{ + return single_open(file, uid_scanner_show, NULL); +} + +static ssize_t uid_scanner_write(struct file *file, const char __user *buffer, + size_t count, loff_t *pos) +{ + char cmd[16]; + + if (count >= sizeof(cmd)) + return -EINVAL; + + if (copy_from_user(cmd, buffer, count)) + return -EFAULT; + + cmd[count] = '\0'; + + // Remove newline if present + if (count > 0 && cmd[count-1] == '\n') + cmd[count-1] = '\0'; + + if (strcmp(cmd, "UPDATED") == 0) { + ksu_handle_userspace_update(); + pr_info("received userspace update notification\n"); + } + + return count; +} + +#ifdef KSU_COMPAT_HAS_PROC_OPS +static const struct proc_ops uid_scanner_proc_ops = { + .proc_open = uid_scanner_open, + .proc_read = seq_read, + .proc_write = uid_scanner_write, + .proc_lseek = seq_lseek, + .proc_release = single_release, +}; +#else +static const struct file_operations uid_scanner_proc_ops = { + .owner = THIS_MODULE, + .open = uid_scanner_open, + .read = seq_read, + .write = uid_scanner_write, + .llseek = seq_lseek, + .release = single_release, +}; +#endif + +int ksu_throne_comm_init(void) +{ + // Create workqueue + scanner_wq = alloc_workqueue("ksu_scanner", WQ_UNBOUND, 1); + if (!scanner_wq) { + pr_err("failed to create scanner workqueue\n"); + return -ENOMEM; + } + + INIT_WORK(&scan_work, rescan_work_fn); + + // Create proc entry + proc_entry = proc_create(PROC_UID_SCANNER, 0600, NULL, &uid_scanner_proc_ops); + if (!proc_entry) { + pr_err("failed to create proc entry\n"); + destroy_workqueue(scanner_wq); + return -ENOMEM; + } + + pr_info("throne communication initialized\n"); + return 0; +} + +void ksu_throne_comm_exit(void) +{ + if (proc_entry) { + proc_remove(proc_entry); + proc_entry = NULL; + } + + if (scanner_wq) { + destroy_workqueue(scanner_wq); + scanner_wq = NULL; + } + + pr_info("throne communication cleaned up\n"); +} + +int ksu_uid_init(void) +{ + INIT_WORK(&ksu_state_save_work, do_save_throne_state); + INIT_WORK(&ksu_state_load_work, do_load_throne_state); + return 0; +} + +void ksu_uid_exit(void) +{ + do_save_throne_state(NULL); +} \ No newline at end of file diff --git a/kernel/throne_comm.h b/kernel/throne_comm.h new file mode 100644 index 0000000..4deba2a --- /dev/null +++ b/kernel/throne_comm.h @@ -0,0 +1,22 @@ +#ifndef __KSU_H_THRONE_COMM +#define __KSU_H_THRONE_COMM + +void ksu_request_userspace_scan(void); + +void ksu_handle_userspace_update(void); + +int ksu_throne_comm_init(void); + +void ksu_throne_comm_exit(void); + +int ksu_uid_init(void); + +void ksu_uid_exit(void); + +bool ksu_throne_comm_load_state(void); + +void ksu_throne_comm_save_state(void); + +void do_load_throne_state(struct work_struct *work); + +#endif \ No newline at end of file diff --git a/kernel/throne_tracker.c b/kernel/throne_tracker.c new file mode 100644 index 0000000..eb8a0b3 --- /dev/null +++ b/kernel/throne_tracker.c @@ -0,0 +1,567 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "allowlist.h" +#include "klog.h" // IWYU pragma: keep +#include "manager.h" +#include "throne_tracker.h" +#include "apk_sign.h" +#include "dynamic_manager.h" +#include "throne_comm.h" + +uid_t ksu_manager_uid = KSU_INVALID_UID; +static uid_t locked_manager_uid = KSU_INVALID_UID; +static uid_t locked_dynamic_manager_uid = KSU_INVALID_UID; + +#define KSU_UID_LIST_PATH "/data/misc/user_uid/uid_list" +#define SYSTEM_PACKAGES_LIST_PATH "/data/system/packages.list" + +struct uid_data { + struct list_head list; + u32 uid; + char package[KSU_MAX_PACKAGE_NAME]; +}; + +// Try read /data/misc/user_uid/uid_list +static int uid_from_um_list(struct list_head *uid_list) +{ + struct file *fp; + char *buf = NULL; + loff_t size, pos = 0; + ssize_t nr; + int cnt = 0; + + fp = filp_open(KSU_UID_LIST_PATH, O_RDONLY, 0); + if (IS_ERR(fp)) + return -ENOENT; + + size = fp->f_inode->i_size; + if (size <= 0) { + filp_close(fp, NULL); + return -ENODATA; + } + + buf = kzalloc(size + 1, GFP_ATOMIC); + if (!buf) { + pr_err("uid_list: OOM %lld B\n", size); + filp_close(fp, NULL); + return -ENOMEM; + } + + nr = kernel_read(fp, buf, size, &pos); + filp_close(fp, NULL); + if (nr != size) { + pr_err("uid_list: short read %zd/%lld\n", nr, size); + kfree(buf); + return -EIO; + } + buf[size] = '\0'; + + for (char *line = buf, *next; line; line = next) { + next = strchr(line, '\n'); + if (next) *next++ = '\0'; + + while (*line == ' ' || *line == '\t' || *line == '\r') ++line; + if (!*line) continue; + + char *uid_str = strsep(&line, " \t"); + char *pkg = line; + if (!pkg) continue; + while (*pkg == ' ' || *pkg == '\t') ++pkg; + if (!*pkg) continue; + + u32 uid; + if (kstrtou32(uid_str, 10, &uid)) { + pr_warn_once("uid_list: bad uid <%s>\n", uid_str); + continue; + } + + struct uid_data *d = kzalloc(sizeof(*d), GFP_ATOMIC); + if (unlikely(!d)) { + pr_err("uid_list: OOM uid=%u\n", uid); + continue; + } + + d->uid = uid; + strscpy(d->package, pkg, KSU_MAX_PACKAGE_NAME); + list_add_tail(&d->list, uid_list); + ++cnt; + } + + kfree(buf); + pr_info("uid_list: loaded %d entries\n", cnt); + return cnt > 0 ? 0 : -ENODATA; +} + +static int get_pkg_from_apk_path(char *pkg, const char *path) +{ + int len = strlen(path); + if (len >= KSU_MAX_PACKAGE_NAME || len < 1) + return -1; + + const char *last_slash = NULL; + const char *second_last_slash = NULL; + + int i; + for (i = len - 1; i >= 0; i--) { + if (path[i] == '/') { + if (!last_slash) { + last_slash = &path[i]; + } else { + second_last_slash = &path[i]; + break; + } + } + } + + if (!last_slash || !second_last_slash) + return -1; + + const char *last_hyphen = strchr(second_last_slash, '-'); + if (!last_hyphen || last_hyphen > last_slash) + return -1; + + int pkg_len = last_hyphen - second_last_slash - 1; + if (pkg_len >= KSU_MAX_PACKAGE_NAME || pkg_len <= 0) + return -1; + + // Copying the package name + strncpy(pkg, second_last_slash + 1, pkg_len); + pkg[pkg_len] = '\0'; + + return 0; +} + +static void crown_manager(const char *apk, struct list_head *uid_data, int signature_index) +{ + char pkg[KSU_MAX_PACKAGE_NAME]; + if (get_pkg_from_apk_path(pkg, apk) < 0) { + pr_err("Failed to get package name from apk path: %s\n", apk); + return; + } + + pr_info("manager pkg: %s, signature_index: %d\n", pkg, signature_index); + +#ifdef KSU_MANAGER_PACKAGE + // pkg is `/` + if (strncmp(pkg, KSU_MANAGER_PACKAGE, sizeof(KSU_MANAGER_PACKAGE))) { + pr_info("manager package is inconsistent with kernel build: %s\n", + KSU_MANAGER_PACKAGE); + return; + } +#endif + struct uid_data *np; + + list_for_each_entry(np, uid_data, list) { + if (strncmp(np->package, pkg, KSU_MAX_PACKAGE_NAME) == 0) { + bool is_dynamic = (signature_index == DYNAMIC_SIGN_INDEX || signature_index >= 2); + + if (is_dynamic) { + if (locked_dynamic_manager_uid != KSU_INVALID_UID && locked_dynamic_manager_uid != np->uid) { + pr_info("Unlocking previous dynamic manager UID: %d\n", locked_dynamic_manager_uid); + ksu_remove_manager(locked_dynamic_manager_uid); + locked_dynamic_manager_uid = KSU_INVALID_UID; + } + } else { + if (locked_manager_uid != KSU_INVALID_UID && locked_manager_uid != np->uid) { + pr_info("Unlocking previous manager UID: %d\n", locked_manager_uid); + ksu_invalidate_manager_uid(); // unlock old one + locked_manager_uid = KSU_INVALID_UID; + } + } + + pr_info("Crowning %s manager: %s (uid=%d, signature_index=%d)\n", + is_dynamic ? "dynamic" : "traditional", pkg, np->uid, signature_index); + + if (is_dynamic) { + ksu_add_manager(np->uid, signature_index); + locked_dynamic_manager_uid = np->uid; + + // If there is no traditional manager, set it to the current UID + if (!ksu_is_manager_uid_valid()) { + ksu_set_manager_uid(np->uid); + locked_manager_uid = np->uid; + } + } else { + ksu_set_manager_uid(np->uid); // throne new UID + locked_manager_uid = np->uid; // store locked UID + } + break; + } + } +} + +#define DATA_PATH_LEN 384 // 384 is enough for /data/app//base.apk + +struct data_path { + char dirpath[DATA_PATH_LEN]; + int depth; + struct list_head list; +}; + +struct apk_path_hash { + unsigned int hash; + bool exists; + struct list_head list; +}; + +static struct list_head apk_path_hash_list = LIST_HEAD_INIT(apk_path_hash_list); + +struct my_dir_context { + struct dir_context ctx; + struct list_head *data_path_list; + char *parent_dir; + void *private_data; + int depth; + int *stop; +}; +// https://docs.kernel.org/filesystems/porting.html +// filldir_t (readdir callbacks) calling conventions have changed. Instead of returning 0 or -E... it returns bool now. false means "no more" (as -E... used to) and true - "keep going" (as 0 in old calling conventions). Rationale: callers never looked at specific -E... values anyway. -> iterate_shared() instances require no changes at all, all filldir_t ones in the tree converted. +#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0) +#define FILLDIR_RETURN_TYPE bool +#define FILLDIR_ACTOR_CONTINUE true +#define FILLDIR_ACTOR_STOP false +#else +#define FILLDIR_RETURN_TYPE int +#define FILLDIR_ACTOR_CONTINUE 0 +#define FILLDIR_ACTOR_STOP -EINVAL +#endif +FILLDIR_RETURN_TYPE my_actor(struct dir_context *ctx, const char *name, + int namelen, loff_t off, u64 ino, + unsigned int d_type) +{ + struct my_dir_context *my_ctx = + container_of(ctx, struct my_dir_context, ctx); + char dirpath[DATA_PATH_LEN]; + + if (!my_ctx) { + pr_err("Invalid context\n"); + return FILLDIR_ACTOR_STOP; + } + if (my_ctx->stop && *my_ctx->stop) { + pr_info("Stop searching\n"); + return FILLDIR_ACTOR_STOP; + } + + if (!strncmp(name, "..", namelen) || !strncmp(name, ".", namelen)) + return FILLDIR_ACTOR_CONTINUE; // Skip "." and ".." + + if (d_type == DT_DIR && namelen >= 8 && !strncmp(name, "vmdl", 4) && + !strncmp(name + namelen - 4, ".tmp", 4)) { + pr_info("Skipping directory: %.*s\n", namelen, name); + return FILLDIR_ACTOR_CONTINUE; // Skip staging package + } + + if (snprintf(dirpath, DATA_PATH_LEN, "%s/%.*s", my_ctx->parent_dir, + namelen, name) >= DATA_PATH_LEN) { + pr_err("Path too long: %s/%.*s\n", my_ctx->parent_dir, namelen, + name); + return FILLDIR_ACTOR_CONTINUE; + } + + if (d_type == DT_DIR && my_ctx->depth > 0 && + (my_ctx->stop && !*my_ctx->stop)) { + struct data_path *data = kzalloc(sizeof(struct data_path), GFP_ATOMIC); + + if (!data) { + pr_err("Failed to allocate memory for %s\n", dirpath); + return FILLDIR_ACTOR_CONTINUE; + } + + strscpy(data->dirpath, dirpath, DATA_PATH_LEN); + data->depth = my_ctx->depth - 1; + list_add_tail(&data->list, my_ctx->data_path_list); + } else { + if ((namelen == 8) && (strncmp(name, "base.apk", namelen) == 0)) { + struct apk_path_hash *pos, *n; +#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 8, 0) + unsigned int hash = full_name_hash(dirpath, strlen(dirpath)); +#else + unsigned int hash = full_name_hash(NULL, dirpath, strlen(dirpath)); +#endif + list_for_each_entry(pos, &apk_path_hash_list, list) { + if (hash == pos->hash) { + pos->exists = true; + return FILLDIR_ACTOR_CONTINUE; + } + } + + int signature_index = -1; + bool is_multi_manager = is_dynamic_manager_apk( + dirpath, &signature_index); + + pr_info("Found new base.apk at path: %s, is_multi_manager: %d, signature_index: %d\n", + dirpath, is_multi_manager, signature_index); + + // Check for dynamic sign or multi-manager signatures + if (is_multi_manager && (signature_index == DYNAMIC_SIGN_INDEX || signature_index >= 2)) { + crown_manager(dirpath, my_ctx->private_data, signature_index); + } else if (is_manager_apk(dirpath)) { + crown_manager(dirpath, my_ctx->private_data, 0); + *my_ctx->stop = 1; + } + + struct apk_path_hash *apk_data = kzalloc(sizeof(*apk_data), GFP_ATOMIC); + if (apk_data) { + apk_data->hash = hash; + apk_data->exists = true; + list_add_tail(&apk_data->list, &apk_path_hash_list); + } + + if (is_manager_apk(dirpath)) { + // Manager found, clear APK cache list + list_for_each_entry_safe(pos, n, &apk_path_hash_list, list) { + list_del(&pos->list); + kfree(pos); + } + } + } + } + + return FILLDIR_ACTOR_CONTINUE; +} + +void search_manager(const char *path, int depth, struct list_head *uid_data) +{ + int i, stop = 0; + struct list_head data_path_list; + INIT_LIST_HEAD(&data_path_list); + unsigned long data_app_magic = 0; + + // Initialize APK cache list + struct apk_path_hash *pos, *n; + list_for_each_entry (pos, &apk_path_hash_list, list) { + pos->exists = false; + } + + // First depth + struct data_path data; + strscpy(data.dirpath, path, DATA_PATH_LEN); + data.depth = depth; + list_add_tail(&data.list, &data_path_list); + + for (i = depth; i >= 0; i--) { + struct data_path *pos, *n; + + list_for_each_entry_safe (pos, n, &data_path_list, list) { + struct my_dir_context ctx = { .ctx.actor = my_actor, + .data_path_list = &data_path_list, + .parent_dir = pos->dirpath, + .private_data = uid_data, + .depth = pos->depth, + .stop = &stop }; + struct file *file; + + if (!stop) { + file = filp_open(pos->dirpath, O_RDONLY | O_NOFOLLOW, 0); + if (IS_ERR(file)) { + pr_err("Failed to open directory: %s, err: %ld\n", + pos->dirpath, PTR_ERR(file)); + goto skip_iterate; + } + + // grab magic on first folder, which is /data/app + if (!data_app_magic) { + if (file->f_inode->i_sb->s_magic) { + data_app_magic = file->f_inode->i_sb->s_magic; + pr_info("%s: dir: %s got magic! 0x%lx\n", __func__, + pos->dirpath, data_app_magic); + } else { + filp_close(file, NULL); + goto skip_iterate; + } + } + + if (file->f_inode->i_sb->s_magic != data_app_magic) { + pr_info("%s: skip: %s magic: 0x%lx expected: 0x%lx\n", + __func__, pos->dirpath, + file->f_inode->i_sb->s_magic, data_app_magic); + filp_close(file, NULL); + goto skip_iterate; + } + + iterate_dir(file, &ctx.ctx); + filp_close(file, NULL); + } + skip_iterate: + list_del(&pos->list); + if (pos != &data) + kfree(pos); + } + } + + // Remove stale cached APK entries + list_for_each_entry_safe (pos, n, &apk_path_hash_list, list) { + if (!pos->exists) { + list_del(&pos->list); + kfree(pos); + } + } +} + +static bool is_uid_exist(uid_t uid, char *package, void *data) +{ + struct list_head *list = (struct list_head *)data; + struct uid_data *np; + + bool exist = false; + list_for_each_entry (np, list, list) { + if (np->uid == uid % 100000 && + strncmp(np->package, package, KSU_MAX_PACKAGE_NAME) == 0) { + exist = true; + break; + } + } + return exist; +} + +void track_throne(bool prune_only) +{ + struct list_head uid_list; + struct uid_data *np, *n; + struct file *fp; + char chr = 0; + loff_t pos = 0; + loff_t line_start = 0; + char buf[KSU_MAX_PACKAGE_NAME]; + static bool manager_exist = false; + static bool dynamic_manager_exist = false; + int current_manager_uid = ksu_get_manager_uid() % 100000; + + // init uid list head + INIT_LIST_HEAD(&uid_list); + + if (ksu_uid_scanner_enabled) { + pr_info("Scanning %s directory..\n", KSU_UID_LIST_PATH); + + if (uid_from_um_list(&uid_list) == 0) { + pr_info("Loaded UIDs from %s success\n", KSU_UID_LIST_PATH); + goto uid_ready; + } + + pr_warn("%s read failed, fallback to %s\n", + KSU_UID_LIST_PATH, SYSTEM_PACKAGES_LIST_PATH); + } + + { + fp = filp_open(SYSTEM_PACKAGES_LIST_PATH, O_RDONLY, 0); + if (IS_ERR(fp)) { + pr_err("%s: open " SYSTEM_PACKAGES_LIST_PATH " failed: %ld\n", __func__, PTR_ERR(fp)); + return; + } + + for (;;) { + ssize_t count = + kernel_read(fp, &chr, sizeof(chr), &pos); + if (count != sizeof(chr)) + break; + if (chr != '\n') + continue; + + count = kernel_read(fp, buf, sizeof(buf), + &line_start); + struct uid_data *data = + kzalloc(sizeof(struct uid_data), GFP_ATOMIC); + if (!data) { + filp_close(fp, 0); + goto out; + } + + char *tmp = buf; + const char *delim = " "; + char *package = strsep(&tmp, delim); + char *uid = strsep(&tmp, delim); + if (!uid || !package) { + pr_err("update_uid: package or uid is NULL!\n"); + break; + } + + u32 res; + if (kstrtou32(uid, 10, &res)) { + pr_err("update_uid: uid parse err\n"); + break; + } + data->uid = res; + strncpy(data->package, package, KSU_MAX_PACKAGE_NAME); + list_add_tail(&data->list, &uid_list); + // reset line start + line_start = pos; + } + + filp_close(fp, 0); + } + +uid_ready: + if (prune_only) + goto prune; + + // first, check if manager_uid exist! + list_for_each_entry(np, &uid_list, list) { + if (np->uid == current_manager_uid) { + manager_exist = true; + break; + } + } + + if (!manager_exist && locked_manager_uid != KSU_INVALID_UID) { + pr_info("Manager APK removed, unlock previous UID: %d\n", + locked_manager_uid); + ksu_invalidate_manager_uid(); + locked_manager_uid = KSU_INVALID_UID; + } + + // Check if the Dynamic Manager exists (only check locked UIDs) + if (ksu_is_dynamic_manager_enabled() && + locked_dynamic_manager_uid != KSU_INVALID_UID) { + list_for_each_entry(np, &uid_list, list) { + if (np->uid == locked_dynamic_manager_uid) { + dynamic_manager_exist = true; + break; + } + } + + if (!dynamic_manager_exist) { + pr_info("Dynamic manager APK removed, unlock previous UID: %d\n", + locked_dynamic_manager_uid); + ksu_remove_manager(locked_dynamic_manager_uid); + locked_dynamic_manager_uid = KSU_INVALID_UID; + } + } + + bool need_search = !manager_exist; + if (ksu_is_dynamic_manager_enabled() && !dynamic_manager_exist) + need_search = true; + + if (need_search) { + pr_info("Searching for manager(s)...\n"); + search_manager("/data/app", 2, &uid_list); + pr_info("Manager search finished\n"); + } + +prune: + // then prune the allowlist + ksu_prune_allowlist(is_uid_exist, &uid_list); +out: + // free uid_list + list_for_each_entry_safe(np, n, &uid_list, list) { + list_del(&np->list); + kfree(np); + } +} + +void ksu_throne_tracker_init(void) +{ + // nothing to do +} + +void ksu_throne_tracker_exit(void) +{ + // nothing to do +} \ No newline at end of file diff --git a/kernel/throne_tracker.h b/kernel/throne_tracker.h new file mode 100644 index 0000000..6be7d5f --- /dev/null +++ b/kernel/throne_tracker.h @@ -0,0 +1,10 @@ +#ifndef __KSU_H_UID_OBSERVER +#define __KSU_H_UID_OBSERVER + +void ksu_throne_tracker_init(); + +void ksu_throne_tracker_exit(); + +void track_throne(bool prune_only); + +#endif diff --git a/kernel/umount_manager.c b/kernel/umount_manager.c new file mode 100644 index 0000000..31e45b1 --- /dev/null +++ b/kernel/umount_manager.c @@ -0,0 +1,242 @@ +#include +#include +#include +#include +#include +#include +#include + +#include "klog.h" +#include "kernel_umount.h" +#include "umount_manager.h" + +static struct umount_manager g_umount_mgr = { + .entry_count = 0, + .max_entries = 64, +}; + +static void try_umount_path(struct umount_entry *entry) +{ + try_umount(entry->path, entry->flags); +} + +static struct umount_entry *find_entry_locked(const char *path) +{ + struct umount_entry *entry; + + list_for_each_entry(entry, &g_umount_mgr.entry_list, list) { + if (strcmp(entry->path, path) == 0) { + return entry; + } + } + + return NULL; +} + +int ksu_umount_manager_init(void) +{ + INIT_LIST_HEAD(&g_umount_mgr.entry_list); + spin_lock_init(&g_umount_mgr.lock); + + return 0; +} + +void ksu_umount_manager_exit(void) +{ + struct umount_entry *entry, *tmp; + unsigned long flags; + + spin_lock_irqsave(&g_umount_mgr.lock, flags); + + list_for_each_entry_safe(entry, tmp, &g_umount_mgr.entry_list, list) { + list_del(&entry->list); + kfree(entry); + g_umount_mgr.entry_count--; + } + + spin_unlock_irqrestore(&g_umount_mgr.lock, flags); + + pr_info("Umount manager cleaned up\n"); +} + +int ksu_umount_manager_add(const char *path, int flags, bool is_default) +{ + struct umount_entry *entry; + unsigned long irqflags; + int ret = 0; + + if (flags == -1) + flags = MNT_DETACH; + + if (!path || strlen(path) == 0 || strlen(path) >= 256) { + return -EINVAL; + } + + spin_lock_irqsave(&g_umount_mgr.lock, irqflags); + + if (g_umount_mgr.entry_count >= g_umount_mgr.max_entries) { + pr_err("Umount manager: max entries reached\n"); + ret = -ENOMEM; + goto out; + } + + if (find_entry_locked(path)) { + pr_warn("Umount manager: path already exists: %s\n", path); + ret = -EEXIST; + goto out; + } + + entry = kzalloc(sizeof(*entry), GFP_ATOMIC); + if (!entry) { + ret = -ENOMEM; + goto out; + } + + strncpy(entry->path, path, sizeof(entry->path) - 1); + entry->flags = flags; + entry->state = UMOUNT_STATE_IDLE; + entry->is_default = is_default; + entry->ref_count = 0; + + list_add_tail(&entry->list, &g_umount_mgr.entry_list); + g_umount_mgr.entry_count++; + + pr_info("Umount manager: added %s entry: %s\n", + is_default ? "default" : "custom", path); + +out: + spin_unlock_irqrestore(&g_umount_mgr.lock, irqflags); + return ret; +} + +int ksu_umount_manager_remove(const char *path) +{ + struct umount_entry *entry; + unsigned long flags; + int ret = 0; + + if (!path) { + return -EINVAL; + } + + spin_lock_irqsave(&g_umount_mgr.lock, flags); + + entry = find_entry_locked(path); + if (!entry) { + ret = -ENOENT; + goto out; + } + + if (entry->is_default) { + pr_err("Umount manager: cannot remove default entry: %s\n", path); + ret = -EPERM; + goto out; + } + + if (entry->state == UMOUNT_STATE_BUSY || entry->ref_count > 0) { + pr_err("Umount manager: entry is busy: %s\n", path); + ret = -EBUSY; + goto out; + } + + list_del(&entry->list); + g_umount_mgr.entry_count--; + kfree(entry); + + pr_info("Umount manager: removed entry: %s\n", path); + +out: + spin_unlock_irqrestore(&g_umount_mgr.lock, flags); + return ret; +} + +void ksu_umount_manager_execute_all(const struct cred *cred) +{ + struct umount_entry *entry; + unsigned long flags; + + spin_lock_irqsave(&g_umount_mgr.lock, flags); + + list_for_each_entry(entry, &g_umount_mgr.entry_list, list) { + if (entry->state == UMOUNT_STATE_IDLE) { + entry->ref_count++; + } + } + + spin_unlock_irqrestore(&g_umount_mgr.lock, flags); + + list_for_each_entry(entry, &g_umount_mgr.entry_list, list) { + if (entry->ref_count > 0 && entry->state == UMOUNT_STATE_IDLE) { + try_umount_path(entry); + } + } + + spin_lock_irqsave(&g_umount_mgr.lock, flags); + + list_for_each_entry(entry, &g_umount_mgr.entry_list, list) { + if (entry->ref_count > 0) { + entry->ref_count--; + } + } + + spin_unlock_irqrestore(&g_umount_mgr.lock, flags); +} + +int ksu_umount_manager_get_entries(struct ksu_umount_entry_info __user *entries, u32 *count) +{ + struct umount_entry *entry; + struct ksu_umount_entry_info info; + unsigned long flags; + u32 idx = 0; + u32 max_count = *count; + + spin_lock_irqsave(&g_umount_mgr.lock, flags); + + list_for_each_entry(entry, &g_umount_mgr.entry_list, list) { + if (idx >= max_count) { + break; + } + + memset(&info, 0, sizeof(info)); + strncpy(info.path, entry->path, sizeof(info.path) - 1); + info.flags = entry->flags; + info.is_default = entry->is_default; + info.state = entry->state; + info.ref_count = entry->ref_count; + + if (copy_to_user(&entries[idx], &info, sizeof(info))) { + spin_unlock_irqrestore(&g_umount_mgr.lock, flags); + return -EFAULT; + } + + idx++; + } + + *count = idx; + + spin_unlock_irqrestore(&g_umount_mgr.lock, flags); + return 0; +} + +int ksu_umount_manager_clear_custom(void) +{ + struct umount_entry *entry, *tmp; + unsigned long flags; + u32 cleared = 0; + + spin_lock_irqsave(&g_umount_mgr.lock, flags); + + list_for_each_entry_safe(entry, tmp, &g_umount_mgr.entry_list, list) { + if (!entry->is_default && entry->state == UMOUNT_STATE_IDLE && entry->ref_count == 0) { + list_del(&entry->list); + kfree(entry); + g_umount_mgr.entry_count--; + cleared++; + } + } + + spin_unlock_irqrestore(&g_umount_mgr.lock, flags); + + pr_info("Umount manager: cleared %u custom entries\n", cleared); + return 0; +} diff --git a/kernel/umount_manager.h b/kernel/umount_manager.h new file mode 100644 index 0000000..41c9888 --- /dev/null +++ b/kernel/umount_manager.h @@ -0,0 +1,63 @@ +#ifndef __KSU_H_UMOUNT_MANAGER +#define __KSU_H_UMOUNT_MANAGER + +#include +#include +#include + +struct cred; + +enum umount_entry_state { + UMOUNT_STATE_IDLE = 0, + UMOUNT_STATE_ACTIVE = 1, + UMOUNT_STATE_BUSY = 2, +}; + +struct umount_entry { + struct list_head list; + char path[256]; + int flags; + enum umount_entry_state state; + bool is_default; + u32 ref_count; +}; + +struct umount_manager { + struct list_head entry_list; + spinlock_t lock; + u32 entry_count; + u32 max_entries; +}; + +enum umount_manager_op { + UMOUNT_OP_ADD = 0, + UMOUNT_OP_REMOVE = 1, + UMOUNT_OP_LIST = 2, + UMOUNT_OP_CLEAR_CUSTOM = 3, +}; + +struct ksu_umount_manager_cmd { + __u32 operation; + char path[256]; + __s32 flags; + __u32 count; + __aligned_u64 entries_ptr; +}; + +struct ksu_umount_entry_info { + char path[256]; + __s32 flags; + __u8 is_default; + __u32 state; + __u32 ref_count; +}; + +int ksu_umount_manager_init(void); +void ksu_umount_manager_exit(void); +int ksu_umount_manager_add(const char *path, int flags, bool is_default); +int ksu_umount_manager_remove(const char *path); +void ksu_umount_manager_execute_all(const struct cred *cred); +int ksu_umount_manager_get_entries(struct ksu_umount_entry_info __user *entries, u32 *count); +int ksu_umount_manager_clear_custom(void); + +#endif // __KSU_H_UMOUNT_MANAGER diff --git a/manager/.gitignore b/manager/.gitignore new file mode 100644 index 0000000..a595ddf --- /dev/null +++ b/manager/.gitignore @@ -0,0 +1,10 @@ +*.iml +.gradle +.idea +.kotlin +.DS_Store +build +captures +.cxx +local.properties +key.jks diff --git a/manager/app/.gitignore b/manager/app/.gitignore new file mode 100644 index 0000000..dc5ca96 --- /dev/null +++ b/manager/app/.gitignore @@ -0,0 +1,2 @@ +/build +/release/ diff --git a/manager/app/build.gradle.kts b/manager/app/build.gradle.kts new file mode 100644 index 0000000..d51afa9 --- /dev/null +++ b/manager/app/build.gradle.kts @@ -0,0 +1,168 @@ +@file:Suppress("UnstableApiUsage") + +import com.android.build.gradle.internal.api.BaseVariantOutputImpl +import com.android.build.gradle.tasks.PackageAndroidArtifact + +plugins { + alias(libs.plugins.agp.app) + alias(libs.plugins.kotlin) + alias(libs.plugins.compose.compiler) + alias(libs.plugins.ksp) + alias(libs.plugins.lsplugin.apksign) + id("kotlin-parcelize") + + +} + +val managerVersionCode: Int by rootProject.extra +val managerVersionName: String by rootProject.extra +val androidCmakeVersion: String by rootProject.extra + +apksign { + storeFileProperty = "KEYSTORE_FILE" + storePasswordProperty = "KEYSTORE_PASSWORD" + keyAliasProperty = "KEY_ALIAS" + keyPasswordProperty = "KEY_PASSWORD" +} + + +android { + + /**signingConfigs { + create("Debug") { + storeFile = file("D:\\other\\AndroidTool\\android_key\\keystore\\release-key.keystore") + storePassword = "" + keyAlias = "" + keyPassword = "" + } + }**/ + namespace = "com.sukisu.ultra" + + buildTypes { + release { + isMinifyEnabled = true + isShrinkResources = true + vcsInfo.include = false + proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro") + } + /**debug { + signingConfig = signingConfigs.named("Debug").get() as ApkSigningConfig + }**/ + } + + buildFeatures { + aidl = true + buildConfig = true + compose = true + prefab = true + } + + packaging { + jniLibs { + useLegacyPackaging = true + } + resources { + // https://stackoverflow.com/a/58956288 + // It will break Layout Inspector, but it's unused for release build. + excludes += "META-INF/*.version" + // https://github.com/Kotlin/kotlinx.coroutines?tab=readme-ov-file#avoiding-including-the-debug-infrastructure-in-the-resulting-apk + excludes += "DebugProbesKt.bin" + // https://issueantenna.com/repo/kotlin/kotlinx.coroutines/issues/3158 + excludes += "kotlin-tooling-metadata.json" + } + } + + externalNativeBuild { + cmake { + path = file("src/main/cpp/CMakeLists.txt") + version = androidCmakeVersion + } + } + + applicationVariants.all { + outputs.forEach { + val output = it as BaseVariantOutputImpl + output.outputFileName = "SukiSU_${managerVersionName}_${managerVersionCode}-$name.apk" + } + kotlin.sourceSets { + getByName(name) { + kotlin.srcDir("build/generated/ksp/$name/kotlin") + } + } + } + + // https://stackoverflow.com/a/77745844 + tasks.withType { + doFirst { appMetadata.asFile.orNull?.writeText("") } + } + + dependenciesInfo { + includeInApk = false + includeInBundle = false + } + + androidResources { + generateLocaleConfig = true + } +} + +ksp { + arg("compose-destinations.defaultTransitions", "none") +} + +dependencies { + implementation(libs.gson) + implementation(libs.androidx.activity.compose) + implementation(libs.androidx.navigation.compose) + + implementation(platform(libs.androidx.compose.bom)) + implementation(libs.androidx.compose.material.icons.extended) + implementation(libs.androidx.compose.material) + implementation(libs.androidx.compose.material3) + implementation(libs.androidx.compose.ui) + implementation(libs.androidx.compose.ui.tooling.preview) + implementation(libs.androidx.foundation) + implementation(libs.androidx.documentfile) + implementation(libs.androidx.compose.foundation) + + debugImplementation(libs.androidx.compose.ui.test.manifest) + debugImplementation(libs.androidx.compose.ui.tooling) + + implementation(libs.androidx.lifecycle.runtime.compose) + implementation(libs.androidx.lifecycle.runtime.ktx) + implementation(libs.androidx.lifecycle.viewmodel.compose) + + implementation(libs.compose.destinations.core) + ksp(libs.compose.destinations.ksp) + + implementation(libs.com.github.topjohnwu.libsu.core) + implementation(libs.com.github.topjohnwu.libsu.service) + implementation(libs.com.github.topjohnwu.libsu.io) + + implementation(libs.dev.rikka.rikkax.parcelablelist) + + implementation(libs.io.coil.kt.coil.compose) + + implementation(libs.kotlinx.coroutines.core) + + implementation(libs.me.zhanghai.android.appiconloader.coil) + + implementation(libs.sheet.compose.dialogs.core) + implementation(libs.sheet.compose.dialogs.list) + implementation(libs.sheet.compose.dialogs.input) + + implementation(libs.markdown) + implementation(libs.androidx.webkit) + + implementation(libs.lsposed.cxx) + + implementation(libs.com.github.topjohnwu.libsu.core) + + implementation(libs.mmrl.platform) + compileOnly(libs.mmrl.hidden.api) + implementation(libs.mmrl.webui) + implementation(libs.mmrl.ui) + + implementation(libs.accompanist.drawablepainter) + +} \ No newline at end of file diff --git a/manager/app/proguard-rules.pro b/manager/app/proguard-rules.pro new file mode 100644 index 0000000..18c49c1 --- /dev/null +++ b/manager/app/proguard-rules.pro @@ -0,0 +1,48 @@ +-verbose +-optimizationpasses 5 + +-dontwarn org.conscrypt.** +-dontwarn kotlinx.serialization.** + +# Please add these rules to your existing keep rules in order to suppress warnings. +# This is generated automatically by the Android Gradle plugin. +-dontwarn com.google.auto.service.AutoService +-dontwarn com.google.j2objc.annotations.RetainedWith +-dontwarn javax.lang.model.SourceVersion +-dontwarn javax.lang.model.element.AnnotationMirror +-dontwarn javax.lang.model.element.AnnotationValue +-dontwarn javax.lang.model.element.Element +-dontwarn javax.lang.model.element.ElementKind +-dontwarn javax.lang.model.element.ElementVisitor +-dontwarn javax.lang.model.element.ExecutableElement +-dontwarn javax.lang.model.element.Modifier +-dontwarn javax.lang.model.element.Name +-dontwarn javax.lang.model.element.PackageElement +-dontwarn javax.lang.model.element.TypeElement +-dontwarn javax.lang.model.element.TypeParameterElement +-dontwarn javax.lang.model.element.VariableElement +-dontwarn javax.lang.model.type.ArrayType +-dontwarn javax.lang.model.type.DeclaredType +-dontwarn javax.lang.model.type.ExecutableType +-dontwarn javax.lang.model.type.TypeKind +-dontwarn javax.lang.model.type.TypeMirror +-dontwarn javax.lang.model.type.TypeVariable +-dontwarn javax.lang.model.type.TypeVisitor +-dontwarn javax.lang.model.util.AbstractAnnotationValueVisitor8 +-dontwarn javax.lang.model.util.AbstractTypeVisitor8 +-dontwarn javax.lang.model.util.ElementFilter +-dontwarn javax.lang.model.util.Elements +-dontwarn javax.lang.model.util.SimpleElementVisitor8 +-dontwarn javax.lang.model.util.SimpleTypeVisitor7 +-dontwarn javax.lang.model.util.SimpleTypeVisitor8 +-dontwarn javax.lang.model.util.Types +-dontwarn javax.tools.Diagnostic$Kind + + +# MMRL:webui reflection +-keep class com.dergoogler.mmrl.webui.interfaces.** { *; } +-keep class com.sukisu.ultra.ui.webui.WebViewInterface { *; } + +-keep,allowobfuscation class * extends com.dergoogler.mmrl.platform.content.IService { *; } + +-keep interface com.sukisu.zako.** { *; } \ No newline at end of file diff --git a/manager/app/src/main/AndroidManifest.xml b/manager/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..d4f5d53 --- /dev/null +++ b/manager/app/src/main/AndroidManifest.xml @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/manager/app/src/main/aidl/com/sukisu/zako/IKsuInterface.aidl b/manager/app/src/main/aidl/com/sukisu/zako/IKsuInterface.aidl new file mode 100644 index 0000000..50807e8 --- /dev/null +++ b/manager/app/src/main/aidl/com/sukisu/zako/IKsuInterface.aidl @@ -0,0 +1,10 @@ +// IKsuInterface.aidl +package com.sukisu.zako; + +import android.content.pm.PackageInfo; +import java.util.List; + +interface IKsuInterface { + int getPackageCount(); + List getPackages(int start, int maxCount); +} \ No newline at end of file diff --git a/manager/app/src/main/assets/5_10-mkbootfs b/manager/app/src/main/assets/5_10-mkbootfs new file mode 100644 index 0000000000000000000000000000000000000000..2af1167a9035fdc05b591080b5a9d5780d3ce5d0 GIT binary patch literal 12112 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 z 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 a5ZSGaUQBUx&VvB;Vo-XlatEO$w*D{O(mB@v literal 0 HcmV?d00001 diff --git a/manager/app/src/main/assets/kptools b/manager/app/src/main/assets/kptools new file mode 100644 index 0000000000000000000000000000000000000000..f1a2a5780f4e402bf591e83968cce0507511290d GIT binary patch literal 310112 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 WnywmKZ}|D^Md?i)h`hp6;Qs`dd$RWc literal 0 HcmV?d00001 diff --git a/manager/app/src/main/cpp/CMakeLists.txt b/manager/app/src/main/cpp/CMakeLists.txt new file mode 100644 index 0000000..7fc4fdc --- /dev/null +++ b/manager/app/src/main/cpp/CMakeLists.txt @@ -0,0 +1,28 @@ +# For more information about using CMake with Android Studio, read the +# documentation: https://d.android.com/studio/projects/add-native-code.html + +# Sets the minimum version of CMake required to build the native library. +cmake_minimum_required(VERSION 3.18.1) + +project("kernelsu") + +add_library(kernelsu + SHARED + jni.c + ksu.c + legacy.c +) + +find_library(log-lib log) + +if(ANDROID_ABI STREQUAL "arm64-v8a") + set(zakosign-lib ${CMAKE_SOURCE_DIR}/../jniLibs/arm64-v8a/libzakosign.so) +elseif(ANDROID_ABI STREQUAL "armeabi-v7a") + set(zakosign-lib ${CMAKE_SOURCE_DIR}/../jniLibs/armeabi-v7a/libzakosign.so) +endif() + +if(ANDROID_ABI STREQUAL "arm64-v8a" OR ANDROID_ABI STREQUAL "armeabi-v7a") + target_link_libraries(kernelsu ${log-lib} ${zakosign-lib}) +else() + target_link_libraries(kernelsu ${log-lib}) +endif() diff --git a/manager/app/src/main/cpp/jni.c b/manager/app/src/main/cpp/jni.c new file mode 100644 index 0000000..95818d6 --- /dev/null +++ b/manager/app/src/main/cpp/jni.c @@ -0,0 +1,452 @@ +#include "prelude.h" +#include "ksu.h" + +#include +#include +#include +#include +#include +#include + +NativeBridgeNP(getVersion, jint) { + uint32_t version = get_version(); + if (version > 0) { + return (jint)version; + } + // try legacy method as fallback + return legacy_get_info().version; +} + +// get VERSION FULL +NativeBridgeNP(getFullVersion, jstring) { + char buff[255] = { 0 }; + get_full_version((char *) &buff); + return GetEnvironment()->NewStringUTF(env, buff); +} + +NativeBridgeNP(getAllowList, jintArray) { + struct ksu_get_allow_list_cmd cmd = {}; + bool result = get_allow_list(&cmd); + + if (result) { + jsize array_size = (jsize)cmd.count; + if (array_size < 0 || (unsigned int)array_size != cmd.count) { + LogDebug("Invalid array size: %u", cmd.count); + return GetEnvironment()->NewIntArray(env, 0); + } + + jintArray array = GetEnvironment()->NewIntArray(env, array_size); + GetEnvironment()->SetIntArrayRegion(env, array, 0, array_size, (const jint *)(cmd.uids)); + + return array; + } + + return GetEnvironment()->NewIntArray(env, 0); +} + +NativeBridgeNP(isSafeMode, jboolean) { + return is_safe_mode(); +} + +NativeBridgeNP(isLkmMode, jboolean) { + return is_lkm_mode(); +} + +NativeBridgeNP(isManager, jboolean) { + return is_manager(); +} + +static void fillIntArray(JNIEnv *env, jobject list, int *data, int count) { + jclass cls = GetEnvironment()->GetObjectClass(env, list); + jmethodID add = GetEnvironment()->GetMethodID(env, cls, "add", "(Ljava/lang/Object;)Z"); + jclass integerCls = GetEnvironment()->FindClass(env, "java/lang/Integer"); + jmethodID constructor = GetEnvironment()->GetMethodID(env, integerCls, "", "(I)V"); + for (int i = 0; i < count; ++i) { + jobject integer = GetEnvironment()->NewObject(env, integerCls, constructor, data[i]); + GetEnvironment()->CallBooleanMethod(env, list, add, integer); + } +} + +static void addIntToList(JNIEnv *env, jobject list, int ele) { + jclass cls = GetEnvironment()->GetObjectClass(env, list); + jmethodID add = GetEnvironment()->GetMethodID(env, cls, "add", "(Ljava/lang/Object;)Z"); + jclass integerCls = GetEnvironment()->FindClass(env, "java/lang/Integer"); + jmethodID constructor = GetEnvironment()->GetMethodID(env, integerCls, "", "(I)V"); + jobject integer = GetEnvironment()->NewObject(env, integerCls, constructor, ele); + GetEnvironment()->CallBooleanMethod(env, list, add, integer); +} + +static uint64_t capListToBits(JNIEnv *env, jobject list) { + jclass cls = GetEnvironment()->GetObjectClass(env, list); + jmethodID get = GetEnvironment()->GetMethodID(env, cls, "get", "(I)Ljava/lang/Object;"); + jmethodID size = GetEnvironment()->GetMethodID(env, cls, "size", "()I"); + jint listSize = GetEnvironment()->CallIntMethod(env, list, size); + jclass integerCls = GetEnvironment()->FindClass(env, "java/lang/Integer"); + jmethodID intValue = GetEnvironment()->GetMethodID(env, integerCls, "intValue", "()I"); + uint64_t result = 0; + for (int i = 0; i < listSize; ++i) { + jobject integer = GetEnvironment()->CallObjectMethod(env, list, get, i); + int data = GetEnvironment()->CallIntMethod(env, integer, intValue); + + if (cap_valid(data)) { + result |= (1ULL << data); + } + } + + return result; +} + +static int getListSize(JNIEnv *env, jobject list) { + jclass cls = GetEnvironment()->GetObjectClass(env, list); + jmethodID size = GetEnvironment()->GetMethodID(env, cls, "size", "()I"); + return GetEnvironment()->CallIntMethod(env, list, size); +} + +static void fillArrayWithList(JNIEnv *env, jobject list, int *data, int count) { + jclass cls = GetEnvironment()->GetObjectClass(env, list); + jmethodID get = GetEnvironment()->GetMethodID(env, cls, "get", "(I)Ljava/lang/Object;"); + jclass integerCls = GetEnvironment()->FindClass(env, "java/lang/Integer"); + jmethodID intValue = GetEnvironment()->GetMethodID(env, integerCls, "intValue", "()I"); + for (int i = 0; i < count; ++i) { + jobject integer = GetEnvironment()->CallObjectMethod(env, list, get, i); + data[i] = GetEnvironment()->CallIntMethod(env, integer, intValue); + } +} + +NativeBridge(getAppProfile, jobject, jstring pkg, jint uid) { + if (GetEnvironment()->GetStringLength(env, pkg) > KSU_MAX_PACKAGE_NAME) { + return NULL; + } + + char key[KSU_MAX_PACKAGE_NAME] = { 0 }; + const char* cpkg = GetEnvironment()->GetStringUTFChars(env, pkg, nullptr); + strcpy(key, cpkg); + GetEnvironment()->ReleaseStringUTFChars(env, pkg, cpkg); + + struct app_profile profile = { 0 }; + profile.version = KSU_APP_PROFILE_VER; + + strcpy(profile.key, key); + profile.current_uid = uid; + + bool useDefaultProfile = get_app_profile(&profile) != 0; + + jclass cls = GetEnvironment()->FindClass(env, "com/sukisu/ultra/Natives$Profile"); + jmethodID constructor = GetEnvironment()->GetMethodID(env, cls, "", "()V"); + jobject obj = GetEnvironment()->NewObject(env, cls, constructor); + jfieldID keyField = GetEnvironment()->GetFieldID(env, cls, "name", "Ljava/lang/String;"); + jfieldID currentUidField = GetEnvironment()->GetFieldID(env, cls, "currentUid", "I"); + jfieldID allowSuField = GetEnvironment()->GetFieldID(env, cls, "allowSu", "Z"); + + jfieldID rootUseDefaultField = GetEnvironment()->GetFieldID(env, cls, "rootUseDefault", "Z"); + jfieldID rootTemplateField = GetEnvironment()->GetFieldID(env, cls, "rootTemplate", "Ljava/lang/String;"); + + jfieldID uidField = GetEnvironment()->GetFieldID(env, cls, "uid", "I"); + jfieldID gidField = GetEnvironment()->GetFieldID(env, cls, "gid", "I"); + jfieldID groupsField = GetEnvironment()->GetFieldID(env, cls, "groups", "Ljava/util/List;"); + jfieldID capabilitiesField = GetEnvironment()->GetFieldID(env, cls, "capabilities", "Ljava/util/List;"); + jfieldID domainField = GetEnvironment()->GetFieldID(env, cls, "context", "Ljava/lang/String;"); + jfieldID namespacesField = GetEnvironment()->GetFieldID(env, cls, "namespace", "I"); + + jfieldID nonRootUseDefaultField = GetEnvironment()->GetFieldID(env, cls, "nonRootUseDefault", "Z"); + jfieldID umountModulesField = GetEnvironment()->GetFieldID(env, cls, "umountModules", "Z"); + + GetEnvironment()->SetObjectField(env, obj, keyField, GetEnvironment()->NewStringUTF(env, profile.key)); + GetEnvironment()->SetIntField(env, obj, currentUidField, profile.current_uid); + + if (useDefaultProfile) { + // no profile found, so just use default profile: + // don't allow root and use default profile! + LogDebug("use default profile for: %s, %d", key, uid); + + // allow_su = false + // non root use default = true + GetEnvironment()->SetBooleanField(env, obj, allowSuField, false); + GetEnvironment()->SetBooleanField(env, obj, nonRootUseDefaultField, true); + + return obj; + } + + bool allowSu = profile.allow_su; + + if (allowSu) { + GetEnvironment()->SetBooleanField(env, obj, rootUseDefaultField, (jboolean) profile.rp_config.use_default); + if (strlen(profile.rp_config.template_name) > 0) { + GetEnvironment()->SetObjectField(env, obj, rootTemplateField, + GetEnvironment()->NewStringUTF(env, profile.rp_config.template_name)); + } + + GetEnvironment()->SetIntField(env, obj, uidField, profile.rp_config.profile.uid); + GetEnvironment()->SetIntField(env, obj, gidField, profile.rp_config.profile.gid); + + jobject groupList = GetEnvironment()->GetObjectField(env, obj, groupsField); + int groupCount = profile.rp_config.profile.groups_count; + if (groupCount > KSU_MAX_GROUPS) { + LogDebug("kernel group count too large: %d???", groupCount); + groupCount = KSU_MAX_GROUPS; + } + fillIntArray(env, groupList, profile.rp_config.profile.groups, groupCount); + + jobject capList = GetEnvironment()->GetObjectField(env, obj, capabilitiesField); + for (int i = 0; i <= CAP_LAST_CAP; i++) { + if (profile.rp_config.profile.capabilities.effective & (1ULL << i)) { + addIntToList(env, capList, i); + } + } + + GetEnvironment()->SetObjectField(env, obj, domainField, + GetEnvironment()->NewStringUTF(env, profile.rp_config.profile.selinux_domain)); + GetEnvironment()->SetIntField(env, obj, namespacesField, profile.rp_config.profile.namespaces); + GetEnvironment()->SetBooleanField(env, obj, allowSuField, profile.allow_su); + } else { + GetEnvironment()->SetBooleanField(env, obj, nonRootUseDefaultField, profile.nrp_config.use_default); + GetEnvironment()->SetBooleanField(env, obj, umountModulesField, profile.nrp_config.profile.umount_modules); + } + + return obj; +} + +NativeBridge(setAppProfile, jboolean, jobject profile) { + jclass cls = GetEnvironment()->FindClass(env, "com/sukisu/ultra/Natives$Profile"); + + jfieldID keyField = GetEnvironment()->GetFieldID(env, cls, "name", "Ljava/lang/String;"); + jfieldID currentUidField = GetEnvironment()->GetFieldID(env, cls, "currentUid", "I"); + jfieldID allowSuField = GetEnvironment()->GetFieldID(env, cls, "allowSu", "Z"); + + jfieldID rootUseDefaultField = GetEnvironment()->GetFieldID(env, cls, "rootUseDefault", "Z"); + jfieldID rootTemplateField = GetEnvironment()->GetFieldID(env, cls, "rootTemplate", "Ljava/lang/String;"); + + jfieldID uidField = GetEnvironment()->GetFieldID(env, cls, "uid", "I"); + jfieldID gidField = GetEnvironment()->GetFieldID(env, cls, "gid", "I"); + jfieldID groupsField = GetEnvironment()->GetFieldID(env, cls, "groups", "Ljava/util/List;"); + jfieldID capabilitiesField = GetEnvironment()->GetFieldID(env, cls, "capabilities", "Ljava/util/List;"); + jfieldID domainField = GetEnvironment()->GetFieldID(env, cls, "context", "Ljava/lang/String;"); + jfieldID namespacesField = GetEnvironment()->GetFieldID(env, cls, "namespace", "I"); + + jfieldID nonRootUseDefaultField = GetEnvironment()->GetFieldID(env, cls, "nonRootUseDefault", "Z"); + jfieldID umountModulesField = GetEnvironment()->GetFieldID(env, cls, "umountModules", "Z"); + + jobject key = GetEnvironment()->GetObjectField(env, profile, keyField); + if (!key) { + return false; + } + if (GetEnvironment()->GetStringLength(env, (jstring) key) > KSU_MAX_PACKAGE_NAME) { + return false; + } + + const char* cpkg = GetEnvironment()->GetStringUTFChars(env, (jstring) key, nullptr); + char p_key[KSU_MAX_PACKAGE_NAME] = { 0 }; + strcpy(p_key, cpkg); + GetEnvironment()->ReleaseStringUTFChars(env, (jstring) key, cpkg); + + jint currentUid = GetEnvironment()->GetIntField(env, profile, currentUidField); + + jint uid = GetEnvironment()->GetIntField(env, profile, uidField); + jint gid = GetEnvironment()->GetIntField(env, profile, gidField); + jobject groups = GetEnvironment()->GetObjectField(env, profile, groupsField); + jobject capabilities = GetEnvironment()->GetObjectField(env, profile, capabilitiesField); + jobject domain = GetEnvironment()->GetObjectField(env, profile, domainField); + jboolean allowSu = GetEnvironment()->GetBooleanField(env, profile, allowSuField); + jboolean umountModules = GetEnvironment()->GetBooleanField(env, profile, umountModulesField); + + struct app_profile p = { 0 }; + p.version = KSU_APP_PROFILE_VER; + + strcpy(p.key, p_key); + p.allow_su = allowSu; + p.current_uid = currentUid; + + if (allowSu) { + p.rp_config.use_default = GetEnvironment()->GetBooleanField(env, profile, rootUseDefaultField); + jobject templateName = GetEnvironment()->GetObjectField(env, profile, rootTemplateField); + if (templateName) { + const char* ctemplateName = GetEnvironment()->GetStringUTFChars(env, (jstring) templateName, nullptr); + strcpy(p.rp_config.template_name, ctemplateName); + GetEnvironment()->ReleaseStringUTFChars(env, (jstring) templateName, ctemplateName); + } + + p.rp_config.profile.uid = uid; + p.rp_config.profile.gid = gid; + + int groups_count = getListSize(env, groups); + if (groups_count > KSU_MAX_GROUPS) { + LogDebug("groups count too large: %d", groups_count); + return false; + } + p.rp_config.profile.groups_count = groups_count; + fillArrayWithList(env, groups, p.rp_config.profile.groups, groups_count); + + p.rp_config.profile.capabilities.effective = capListToBits(env, capabilities); + + const char* cdomain = GetEnvironment()->GetStringUTFChars(env, (jstring) domain, nullptr); + strcpy(p.rp_config.profile.selinux_domain, cdomain); + GetEnvironment()->ReleaseStringUTFChars(env, (jstring) domain, cdomain); + + p.rp_config.profile.namespaces = GetEnvironment()->GetIntField(env, profile, namespacesField); + } else { + p.nrp_config.use_default = GetEnvironment()->GetBooleanField(env, profile, nonRootUseDefaultField); + p.nrp_config.profile.umount_modules = umountModules; + } + + return set_app_profile(&p); +} + +NativeBridge(uidShouldUmount, jboolean, jint uid) { + return uid_should_umount(uid); +} + +NativeBridgeNP(isSuEnabled, jboolean) { + return is_su_enabled(); +} + +NativeBridge(setSuEnabled, jboolean, jboolean enabled) { + return set_su_enabled(enabled); +} + +NativeBridgeNP(isKernelUmountEnabled, jboolean) { + return is_kernel_umount_enabled(); +} + +NativeBridge(setKernelUmountEnabled, jboolean, jboolean enabled) { + return set_kernel_umount_enabled(enabled); +} + +NativeBridgeNP(isEnhancedSecurityEnabled, jboolean) { + return is_enhanced_security_enabled(); +} + +NativeBridge(setEnhancedSecurityEnabled, jboolean, jboolean enabled) { + return set_enhanced_security_enabled(enabled); +} + +NativeBridgeNP(isSuLogEnabled, jboolean) { + return is_sulog_enabled(); +} + +NativeBridge(setSuLogEnabled, jboolean, jboolean enabled) { + return set_sulog_enabled(enabled); +} + +NativeBridge(getUserName, jstring, jint uid) { + struct passwd *pw = getpwuid((uid_t) uid); + if (pw && pw->pw_name && pw->pw_name[0] != '\0') { + return GetEnvironment()->NewStringUTF(env, pw->pw_name); + } + return NULL; +} + +// Check if KPM is enabled +NativeBridgeNP(isKPMEnabled, jboolean) { + return is_KPM_enable(); +} + +// Get HOOK type +NativeBridgeNP(getHookType, jstring) { + char hook_type[32] = { 0 }; + get_hook_type((char *) &hook_type); + return GetEnvironment()->NewStringUTF(env, hook_type); +} + +// dynamic manager +NativeBridge(setDynamicManager, jboolean, jint size, jstring hash) { + if (!hash) { + LogDebug("setDynamicManager: hash is null"); + return false; + } + + const char* chash = GetEnvironment()->GetStringUTFChars(env, hash, nullptr); + bool result = set_dynamic_manager((unsigned int)size, chash); + GetEnvironment()->ReleaseStringUTFChars(env, hash, chash); + + LogDebug("setDynamicManager: size=0x%x, result=%d", size, result); + return result; +} + +NativeBridgeNP(getDynamicManager, jobject) { + struct dynamic_manager_user_config config; + bool result = get_dynamic_manager(&config); + + if (!result) { + LogDebug("getDynamicManager: failed to get dynamic manager config"); + return NULL; + } + + jobject obj = CREATE_JAVA_OBJECT("com/sukisu/ultra/Natives$DynamicManagerConfig"); + jclass cls = GetEnvironment()->FindClass(env, "com/sukisu/ultra/Natives$DynamicManagerConfig"); + + SET_INT_FIELD(obj, cls, size, (jint)config.size); + SET_STRING_FIELD(obj, cls, hash, config.hash); + + LogDebug("getDynamicManager: size=0x%x, hash=%.16s...", config.size, config.hash); + return obj; +} + +NativeBridgeNP(clearDynamicManager, jboolean) { + bool result = clear_dynamic_manager(); + LogDebug("clearDynamicManager: result=%d", result); + return result; +} + +// Get a list of active managers +NativeBridgeNP(getManagersList, jobject) { + struct manager_list_info managerListInfo; + bool result = get_managers_list(&managerListInfo); + + if (!result) { + LogDebug("getManagersList: failed to get active managers list"); + return NULL; + } + + jobject obj = CREATE_JAVA_OBJECT("com/sukisu/ultra/Natives$ManagersList"); + jclass managerListCls = GetEnvironment()->FindClass(env, "com/sukisu/ultra/Natives$ManagersList"); + + SET_INT_FIELD(obj, managerListCls, count, (jint)managerListInfo.count); + + jobject managersList = CREATE_ARRAYLIST(); + + for (int i = 0; i < managerListInfo.count; i++) { + jobject managerInfo = CREATE_JAVA_OBJECT_WITH_PARAMS( + "com/sukisu/ultra/Natives$ManagerInfo", + "(II)V", + (jint)managerListInfo.managers[i].uid, + (jint)managerListInfo.managers[i].signature_index + ); + ADD_TO_LIST(managersList, managerInfo); + } + + SET_OBJECT_FIELD(obj, managerListCls, managers, managersList); + + LogDebug("getManagersList: count=%d", managerListInfo.count); + return obj; +} + +NativeBridge(verifyModuleSignature, jboolean, jstring modulePath) { +#if defined(__aarch64__) || defined(_M_ARM64) || defined(__arm__) || defined(_M_ARM) + if (!modulePath) { + LogDebug("verifyModuleSignature: modulePath is null"); + return false; + } + + const char* cModulePath = GetEnvironment()->GetStringUTFChars(env, modulePath, nullptr); + bool result = verify_module_signature(cModulePath); + GetEnvironment()->ReleaseStringUTFChars(env, modulePath, cModulePath); + + LogDebug("verifyModuleSignature: path=%s, result=%d", cModulePath, result); + return result; +#else + LogDebug("verifyModuleSignature: not supported on non-ARM architecture"); + return false; +#endif +} + +NativeBridgeNP(isUidScannerEnabled, jboolean) { + return is_uid_scanner_enabled(); +} + +NativeBridge(setUidScannerEnabled, jboolean, jboolean enabled) { + return set_uid_scanner_enabled(enabled); +} + +NativeBridgeNP(clearUidScannerEnvironment, jboolean) { + return clear_uid_scanner_environment(); +} \ No newline at end of file diff --git a/manager/app/src/main/cpp/ksu.c b/manager/app/src/main/cpp/ksu.c new file mode 100644 index 0000000..0fc8866 --- /dev/null +++ b/manager/app/src/main/cpp/ksu.c @@ -0,0 +1,406 @@ +// +// Created by weishu on 2022/12/9. +// + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "prelude.h" +#include "ksu.h" + +#if defined(__aarch64__) || defined(_M_ARM64) || defined(__arm__) || defined(_M_ARM) + +// Zako extern declarations +#define ZAKO_ESV_IMPORTANT_ERROR 1 << 31 +extern int zako_sys_file_open(const char* path); +extern uint32_t zako_file_verify_esig(int fd, uint32_t flags); +extern const char* zako_file_verrcidx2str(uint8_t index); + +#endif // __aarch64__ || _M_ARM64 || __arm__ || _M_ARM + +static int fd = -1; + +static inline int scan_driver_fd() { + const char *kName = "[ksu_driver]"; + DIR *fd_dir = opendir("/proc/self/fd"); + if (!fd_dir) { + return -1; + } + + int found = -1; + struct dirent *de; + char path[64]; + char target[PATH_MAX]; + + while ((de = readdir(fd_dir)) != NULL) { + if (de->d_name[0] == '.') { + continue; + } + + char *endptr = nullptr; + long fd_long = strtol(de->d_name, &endptr, 10); + if (!de->d_name[0] || *endptr != '\0' || fd_long < 0 || fd_long > INT_MAX) { + continue; + } + + snprintf(path, sizeof(path), "/proc/self/fd/%s", de->d_name); + ssize_t n = readlink(path, target, sizeof(target) - 1); + if (n < 0) { + continue; + } + target[n] = '\0'; + + const char *base = strrchr(target, '/'); + base = base ? base + 1 : target; + + if (strstr(base, kName)) { + found = (int)fd_long; + break; + } + } + + closedir(fd_dir); + return found; +} + +static int ksuctl(unsigned long op, void* arg) { + if (fd < 0) { + fd = scan_driver_fd(); + } + return ioctl(fd, op, arg); +} + +static struct ksu_get_info_cmd g_version = {0}; + +struct ksu_get_info_cmd get_info() { + if (!g_version.version) { + ksuctl(KSU_IOCTL_GET_INFO, &g_version); + } + return g_version; +} + +uint32_t get_version() { + auto info = get_info(); + return info.version; +} + +bool get_allow_list(struct ksu_get_allow_list_cmd *cmd) { + if (ksuctl(KSU_IOCTL_GET_ALLOW_LIST, cmd) == 0) { + return true; + } + + // fallback to legacy + int size = 0; + int uids[1024]; + if (legacy_get_allow_list(uids, &size)) { + cmd->count = size; + memcpy(cmd->uids, uids, sizeof(int) * size); + return true; + } + + return false; +} + +bool is_safe_mode() { + struct ksu_check_safemode_cmd cmd = {}; + if (ksuctl(KSU_IOCTL_CHECK_SAFEMODE, &cmd) == 0) { + return cmd.in_safe_mode; + } + // fallback + return legacy_is_safe_mode(); +} + +bool is_lkm_mode() { + auto info = get_info(); + if (info.version > 0) { + return (info.flags & 0x1) != 0; + } + // Legacy Compatible + return (legacy_get_info().flags & 0x1) != 0; +} + +bool is_manager() { + auto info = get_info(); + if (info.version > 0) { + return (info.flags & 0x2) != 0; + } + // Legacy Compatible + return legacy_get_info().version > 0; +} + +bool uid_should_umount(int uid) { + struct ksu_uid_should_umount_cmd cmd = {}; + cmd.uid = uid; + if (ksuctl(KSU_IOCTL_UID_SHOULD_UMOUNT, &cmd) == 0) { + return cmd.should_umount; + } + return legacy_uid_should_umount(uid); +} + +bool set_app_profile(const struct app_profile *profile) { + struct ksu_set_app_profile_cmd cmd = {}; + cmd.profile = *profile; + if (ksuctl(KSU_IOCTL_SET_APP_PROFILE, &cmd) == 0) { + return true; + } + return legacy_set_app_profile(profile); +} + +int get_app_profile(struct app_profile *profile) { + struct ksu_get_app_profile_cmd cmd = {.profile = *profile}; + int ret = ksuctl(KSU_IOCTL_GET_APP_PROFILE, &cmd); + if (ret == 0) { + *profile = cmd.profile; + return 0; + } + return legacy_get_app_profile(profile->key, profile) ? 0 : -1; +} + +bool set_su_enabled(bool enabled) { + struct ksu_set_feature_cmd cmd = {}; + cmd.feature_id = KSU_FEATURE_SU_COMPAT; + cmd.value = enabled ? 1 : 0; + if (ksuctl(KSU_IOCTL_SET_FEATURE, &cmd) == 0) { + return true; + } + return legacy_set_su_enabled(enabled); +} + +bool is_su_enabled() { + struct ksu_get_feature_cmd cmd = {}; + cmd.feature_id = KSU_FEATURE_SU_COMPAT; + if (ksuctl(KSU_IOCTL_GET_FEATURE, &cmd) == 0 && cmd.supported) { + return cmd.value != 0; + } + return legacy_is_su_enabled(); +} + +static inline bool get_feature(uint32_t feature_id, uint64_t *out_value, bool *out_supported) { + struct ksu_get_feature_cmd cmd = {}; + cmd.feature_id = feature_id; + if (ksuctl(KSU_IOCTL_GET_FEATURE, &cmd) != 0) { + return false; + } + if (out_value) *out_value = cmd.value; + if (out_supported) *out_supported = cmd.supported; + return true; +} + +static inline bool set_feature(uint32_t feature_id, uint64_t value) { + struct ksu_set_feature_cmd cmd = {}; + cmd.feature_id = feature_id; + cmd.value = value; + return ksuctl(KSU_IOCTL_SET_FEATURE, &cmd) == 0; +} + +bool set_kernel_umount_enabled(bool enabled) { + return set_feature(KSU_FEATURE_KERNEL_UMOUNT, enabled ? 1 : 0); +} + +bool is_kernel_umount_enabled() { + uint64_t value = 0; + bool supported = false; + if (!get_feature(KSU_FEATURE_KERNEL_UMOUNT, &value, &supported)) { + return false; + } + if (!supported) { + return false; + } + return value != 0; +} + +bool set_enhanced_security_enabled(bool enabled) { + return set_feature(KSU_FEATURE_ENHANCED_SECURITY, enabled ? 1 : 0); +} + +bool is_enhanced_security_enabled() { + uint64_t value = 0; + bool supported = false; + if (!get_feature(KSU_FEATURE_ENHANCED_SECURITY, &value, &supported)) { + return false; + } + if (!supported) { + return false; + } + return value != 0; +} + +bool set_sulog_enabled(bool enabled) { + return set_feature(KSU_FEATURE_SULOG, enabled ? 1 : 0); +} + +bool is_sulog_enabled() { + uint64_t value = 0; + bool supported = false; + if (!get_feature(KSU_FEATURE_SULOG, &value, &supported)) { + return false; + } + if (!supported) { + return false; + } + return value != 0; +} + +void get_full_version(char* buff) { + struct ksu_get_full_version_cmd cmd = {0}; + if (ksuctl(KSU_IOCTL_GET_FULL_VERSION, &cmd) == 0) { + strncpy(buff, cmd.version_full, KSU_FULL_VERSION_STRING - 1); + buff[KSU_FULL_VERSION_STRING - 1] = '\0'; + } else { + return legacy_get_full_version(buff); + } +} + +bool is_KPM_enable(void) { + struct ksu_enable_kpm_cmd cmd = {}; + if (ksuctl(KSU_IOCTL_ENABLE_KPM, &cmd) == 0 && cmd.enabled) { + return true; + } + return legacy_is_KPM_enable(); +} + +void get_hook_type(char *buff) { + struct ksu_hook_type_cmd cmd = {0}; + if (ksuctl(KSU_IOCTL_HOOK_TYPE, &cmd) == 0) { + strncpy(buff, cmd.hook_type, 32 - 1); + buff[32 - 1] = '\0'; + } else { + legacy_get_hook_type(buff, 32); + } +} + +bool set_dynamic_manager(unsigned int size, const char *hash) +{ + struct ksu_dynamic_manager_cmd cmd = {0}; + cmd.config.operation = DYNAMIC_MANAGER_OP_SET; + cmd.config.size = size; + strlcpy(cmd.config.hash, hash, sizeof(cmd.config.hash)); + + return ksuctl(KSU_IOCTL_DYNAMIC_MANAGER, &cmd) == 0; +} + +bool get_dynamic_manager(struct dynamic_manager_user_config *cfg) +{ + if (!cfg) + return false; + + struct ksu_dynamic_manager_cmd cmd = {0}; + cmd.config.operation = DYNAMIC_MANAGER_OP_GET; + + if (ksuctl(KSU_IOCTL_DYNAMIC_MANAGER, &cmd) != 0) + return false; + + *cfg = cmd.config; + return true; +} + +bool clear_dynamic_manager(void) +{ + struct ksu_dynamic_manager_cmd cmd = {0}; + cmd.config.operation = DYNAMIC_MANAGER_OP_CLEAR; + return ksuctl(KSU_IOCTL_DYNAMIC_MANAGER, &cmd) == 0; +} + +bool get_managers_list(struct manager_list_info *info) +{ + if (!info) + return false; + struct ksu_get_managers_cmd cmd = {0}; + if (ksuctl(KSU_IOCTL_GET_MANAGERS, &cmd) != 0) + return false; + + *info = cmd.manager_info; + return true; +} + +bool is_uid_scanner_enabled(void) +{ + bool status = false; + + struct ksu_enable_uid_scanner_cmd cmd = { + .operation = UID_SCANNER_OP_GET_STATUS, + .status_ptr = (__u64)(uintptr_t)&status + }; + + return ksuctl(KSU_IOCTL_ENABLE_UID_SCANNER, &cmd) == 0 != 0 && status; +} + +bool set_uid_scanner_enabled(bool enabled) +{ + struct ksu_enable_uid_scanner_cmd cmd = { + .operation = UID_SCANNER_OP_TOGGLE, + .enabled = enabled + }; + return ksuctl(KSU_IOCTL_ENABLE_UID_SCANNER, &cmd); +} + +bool clear_uid_scanner_environment(void) +{ + struct ksu_enable_uid_scanner_cmd cmd = { + .operation = UID_SCANNER_OP_CLEAR_ENV + }; + return ksuctl(KSU_IOCTL_ENABLE_UID_SCANNER, &cmd); +} + +bool verify_module_signature(const char* input) { +#if defined(__aarch64__) || defined(_M_ARM64) || defined(__arm__) || defined(_M_ARM) + if (input == NULL) { + LogDebug("verify_module_signature: input path is null"); + return false; + } + + int file_fd = zako_sys_file_open(input); + if (file_fd < 0) { + LogDebug("verify_module_signature: failed to open file: %s", input); + return false; + } + + uint32_t results = zako_file_verify_esig(file_fd, 0); + + if (results != 0) { + /* If important error occured, verification process should + be considered as failed due to unexpected modification + potentially happened. */ + if ((results & ZAKO_ESV_IMPORTANT_ERROR) != 0) { + LogDebug("verify_module_signature: Verification failed! (important error)"); + } else { + /* This is for manager that doesn't want to do certificate checks */ + LogDebug("verify_module_signature: Verification partially passed"); + } + } else { + LogDebug("verify_module_signature: Verification passed!"); + goto exit; + } + + /* Go through all bit fields */ + for (size_t i = 0; i < sizeof(uint32_t) * 8; i++) { + if ((results & (1 << i)) == 0) { + continue; + } + + /* Convert error bit field index into human readable string */ + const char* message = zako_file_verrcidx2str((uint8_t)i); + // Error message: message + if (message != NULL) { + LogDebug("verify_module_signature: Error bit %zu: %s", i, message); + } else { + LogDebug("verify_module_signature: Error bit %zu: Unknown error", i); + } + } + + exit: + close(file_fd); + LogDebug("verify_module_signature: path=%s, results=0x%x, success=%s", + input, results, (results == 0) ? "true" : "false"); + return results == 0; +#else + LogDebug("verify_module_signature: not supported on non-ARM architecture, path=%s", input ? input : "null"); + return false; +#endif +} diff --git a/manager/app/src/main/cpp/ksu.h b/manager/app/src/main/cpp/ksu.h new file mode 100644 index 0000000..efcaa05 --- /dev/null +++ b/manager/app/src/main/cpp/ksu.h @@ -0,0 +1,300 @@ +// +// Created by weishu on 2022/12/9. +// + +#ifndef KERNELSU_KSU_H +#define KERNELSU_KSU_H + +#include "prelude.h" +#include +#include +#include +#include +#include + +#define KSU_FULL_VERSION_STRING 255 + +uint32_t get_version(); + +bool uid_should_umount(int uid); + +bool is_safe_mode(); + +bool is_lkm_mode(); + +bool is_manager(); + +void get_full_version(char* buff); + +#define KSU_APP_PROFILE_VER 2 +#define KSU_MAX_PACKAGE_NAME 256 +// NGROUPS_MAX for Linux is 65535 generally, but we only supports 32 groups. +#define KSU_MAX_GROUPS 32 +#define KSU_SELINUX_DOMAIN 64 + +#define DYNAMIC_MANAGER_OP_SET 0 +#define DYNAMIC_MANAGER_OP_GET 1 +#define DYNAMIC_MANAGER_OP_CLEAR 2 + +#define UID_SCANNER_OP_GET_STATUS 0 +#define UID_SCANNER_OP_TOGGLE 1 +#define UID_SCANNER_OP_CLEAR_ENV 2 + +struct dynamic_manager_user_config { + unsigned int operation; + unsigned int size; + char hash[65]; +}; + + +struct root_profile { + int32_t uid; + int32_t gid; + + int32_t groups_count; + int32_t groups[KSU_MAX_GROUPS]; + + // kernel_cap_t is u32[2] for capabilities v3 + struct { + uint64_t effective; + uint64_t permitted; + uint64_t inheritable; + } capabilities; + + char selinux_domain[KSU_SELINUX_DOMAIN]; + + int32_t namespaces; +}; + +struct non_root_profile { + bool umount_modules; +}; + +struct app_profile { + // It may be utilized for backward compatibility, although we have never explicitly made any promises regarding this. + uint32_t version; + + // this is usually the package of the app, but can be other value for special apps + char key[KSU_MAX_PACKAGE_NAME]; + int32_t current_uid; + bool allow_su; + + union { + struct { + bool use_default; + char template_name[KSU_MAX_PACKAGE_NAME]; + + struct root_profile profile; + } rp_config; + + struct { + bool use_default; + + struct non_root_profile profile; + } nrp_config; + }; +}; + +struct manager_list_info { + int count; + struct { + uid_t uid; + int signature_index; + } managers[2]; +}; + +bool set_app_profile(const struct app_profile* profile); + +int get_app_profile(struct app_profile* profile); + +bool is_KPM_enable(); + +void get_hook_type(char* hook_type); + +bool set_dynamic_manager(unsigned int size, const char* hash); + +bool get_dynamic_manager(struct dynamic_manager_user_config* config); + +bool clear_dynamic_manager(); + +bool get_managers_list(struct manager_list_info* info); + +bool verify_module_signature(const char* input); + +bool is_uid_scanner_enabled(); + +bool set_uid_scanner_enabled(bool enabled); + +bool clear_uid_scanner_environment(); + +// Feature IDs +enum ksu_feature_id { + KSU_FEATURE_SU_COMPAT = 0, + KSU_FEATURE_KERNEL_UMOUNT = 1, + KSU_FEATURE_ENHANCED_SECURITY = 2, + KSU_FEATURE_SULOG = 3, +}; + +// Generic feature API +struct ksu_get_feature_cmd { + uint32_t feature_id; // Input: feature ID + uint64_t value; // Output: feature value/state + uint8_t supported; // Output: whether the feature is supported +}; + +struct ksu_set_feature_cmd { + uint32_t feature_id; // Input: feature ID + uint64_t value; // Input: feature value/state to set +}; + +struct ksu_become_daemon_cmd { + uint8_t token[65]; // Input: daemon token (null-terminated) +}; + +struct ksu_get_info_cmd { + uint32_t version; // Output: KERNEL_SU_VERSION + uint32_t flags; // Output: flags (bit 0: MODULE mode) + uint32_t features; // Output: max feature ID supported (KSU_FEATURE_MAX) +}; + +struct ksu_report_event_cmd { + uint32_t event; // Input: EVENT_POST_FS_DATA, EVENT_BOOT_COMPLETED, etc. +}; + +struct ksu_set_sepolicy_cmd { + uint64_t cmd; // Input: sepolicy command + uint64_t arg; // Input: sepolicy argument pointer +}; + +struct ksu_check_safemode_cmd { + uint8_t in_safe_mode; // Output: true if in safe mode, false otherwise +}; + +struct ksu_get_allow_list_cmd { + uint32_t uids[128]; // Output: array of allowed/denied UIDs + uint32_t count; // Output: number of UIDs in array + uint8_t allow; // Input: true for allow list, false for deny list +}; + +struct ksu_uid_granted_root_cmd { + uint32_t uid; // Input: target UID to check + uint8_t granted; // Output: true if granted, false otherwise +}; + +struct ksu_uid_should_umount_cmd { + uint32_t uid; // Input: target UID to check + uint8_t should_umount; // Output: true if should umount, false otherwise +}; + +struct ksu_get_manager_uid_cmd { + uint32_t uid; // Output: manager UID +}; + +struct ksu_set_manager_uid_cmd { + uint32_t uid; // Input: new manager UID +}; + +struct ksu_get_app_profile_cmd { + struct app_profile profile; // Input/Output: app profile structure +}; + +struct ksu_set_app_profile_cmd { + struct app_profile profile; // Input: app profile structure +}; + +// Su compat +bool set_su_enabled(bool enabled); +bool is_su_enabled(); + +// Kernel umount +bool set_kernel_umount_enabled(bool enabled); +bool is_kernel_umount_enabled(); + +// Enhanced security +bool set_enhanced_security_enabled(bool enabled); +bool is_enhanced_security_enabled(); + +// Su log +bool set_sulog_enabled(bool enabled); +bool is_sulog_enabled(); + +// Other command structures +struct ksu_get_full_version_cmd { + char version_full[KSU_FULL_VERSION_STRING]; // Output: full version string +}; + +struct ksu_hook_type_cmd { + char hook_type[32]; // Output: hook type string +}; + +struct ksu_enable_kpm_cmd { + uint8_t enabled; // Output: true if KPM is enabled +}; + +struct ksu_dynamic_manager_cmd { + struct dynamic_manager_user_config config; // Input/Output: dynamic manager config +}; + +struct ksu_get_managers_cmd { + struct manager_list_info manager_info; // Output: manager list information +}; + +struct ksu_enable_uid_scanner_cmd { + uint32_t operation; // Input: operation type (UID_SCANNER_OP_GET_STATUS, UID_SCANNER_OP_TOGGLE, UID_SCANNER_OP_CLEAR_ENV) + uint32_t enabled; // Input: enable or disable (for UID_SCANNER_OP_TOGGLE) + uint64_t status_ptr; // Input: pointer to store status (for UID_SCANNER_OP_GET_STATUS) +}; + +// IOCTL command definitions +#define KSU_IOCTL_GRANT_ROOT _IOC(_IOC_NONE, 'K', 1, 0) +#define KSU_IOCTL_GET_INFO _IOC(_IOC_READ, 'K', 2, 0) +#define KSU_IOCTL_REPORT_EVENT _IOC(_IOC_WRITE, 'K', 3, 0) +#define KSU_IOCTL_SET_SEPOLICY _IOC(_IOC_READ|_IOC_WRITE, 'K', 4, 0) +#define KSU_IOCTL_CHECK_SAFEMODE _IOC(_IOC_READ, 'K', 5, 0) +#define KSU_IOCTL_GET_ALLOW_LIST _IOC(_IOC_READ|_IOC_WRITE, 'K', 6, 0) +#define KSU_IOCTL_GET_DENY_LIST _IOC(_IOC_READ|_IOC_WRITE, 'K', 7, 0) +#define KSU_IOCTL_UID_GRANTED_ROOT _IOC(_IOC_READ|_IOC_WRITE, 'K', 8, 0) +#define KSU_IOCTL_UID_SHOULD_UMOUNT _IOC(_IOC_READ|_IOC_WRITE, 'K', 9, 0) +#define KSU_IOCTL_GET_MANAGER_UID _IOC(_IOC_READ, 'K', 10, 0) +#define KSU_IOCTL_GET_APP_PROFILE _IOC(_IOC_READ|_IOC_WRITE, 'K', 11, 0) +#define KSU_IOCTL_SET_APP_PROFILE _IOC(_IOC_WRITE, 'K', 12, 0) +#define KSU_IOCTL_GET_FEATURE _IOC(_IOC_READ|_IOC_WRITE, 'K', 13, 0) +#define KSU_IOCTL_SET_FEATURE _IOC(_IOC_WRITE, 'K', 14, 0) + +// Other IOCTL command definitions +#define KSU_IOCTL_GET_FULL_VERSION _IOC(_IOC_READ, 'K', 100, 0) +#define KSU_IOCTL_HOOK_TYPE _IOC(_IOC_READ, 'K', 101, 0) +#define KSU_IOCTL_ENABLE_KPM _IOC(_IOC_READ, 'K', 102, 0) +#define KSU_IOCTL_DYNAMIC_MANAGER _IOC(_IOC_READ|_IOC_WRITE, 'K', 103, 0) +#define KSU_IOCTL_GET_MANAGERS _IOC(_IOC_READ|_IOC_WRITE, 'K', 104, 0) +#define KSU_IOCTL_ENABLE_UID_SCANNER _IOC(_IOC_READ|_IOC_WRITE, 'K', 105, 0) + +bool get_allow_list(struct ksu_get_allow_list_cmd *); + +// Legacy Compatible +struct ksu_version_info legacy_get_info(); + +struct ksu_version_info { + int32_t version; + int32_t flags; +}; + +bool legacy_get_allow_list(int *uids, int *size); +bool legacy_is_safe_mode(); +bool legacy_uid_should_umount(int uid); +bool legacy_set_app_profile(const struct app_profile* profile); +bool legacy_get_app_profile(char* key, struct app_profile* profile); +bool legacy_set_su_enabled(bool enabled); +bool legacy_is_su_enabled(); +bool legacy_is_KPM_enable(); +bool legacy_get_hook_type(char* hook_type, size_t size); +void legacy_get_full_version(char* buff); +bool legacy_set_dynamic_manager(unsigned int size, const char* hash); +bool legacy_get_dynamic_manager(struct dynamic_manager_user_config* config); +bool legacy_clear_dynamic_manager(); +bool legacy_get_managers_list(struct manager_list_info* info); +bool legacy_is_uid_scanner_enabled(); +bool legacy_set_uid_scanner_enabled(bool enabled); +bool legacy_clear_uid_scanner_environment(); + +#endif //KERNELSU_KSU_H \ No newline at end of file diff --git a/manager/app/src/main/cpp/legacy.c b/manager/app/src/main/cpp/legacy.c new file mode 100644 index 0000000..de72a32 --- /dev/null +++ b/manager/app/src/main/cpp/legacy.c @@ -0,0 +1,163 @@ +// +// Created by shirkneko on 2025/11/3. +// +// Legacy Compatible +#include +#include +#include +#include +#include +#include +#include +#include + +#include "prelude.h" +#include "ksu.h" + +#define KERNEL_SU_OPTION 0xDEADBEEF + +#define CMD_GRANT_ROOT 0 + +#define CMD_BECOME_MANAGER 1 +#define CMD_GET_VERSION 2 +#define CMD_ALLOW_SU 3 +#define CMD_DENY_SU 4 +#define CMD_GET_SU_LIST 5 +#define CMD_GET_DENY_LIST 6 +#define CMD_CHECK_SAFEMODE 9 + +#define CMD_GET_APP_PROFILE 10 +#define CMD_SET_APP_PROFILE 11 + +#define CMD_IS_UID_GRANTED_ROOT 12 +#define CMD_IS_UID_SHOULD_UMOUNT 13 +#define CMD_IS_SU_ENABLED 14 +#define CMD_ENABLE_SU 15 + +#define CMD_GET_VERSION_FULL 0xC0FFEE1A + +#define CMD_ENABLE_KPM 100 +#define CMD_HOOK_TYPE 101 +#define CMD_DYNAMIC_MANAGER 103 +#define CMD_GET_MANAGERS 104 +#define CMD_ENABLE_UID_SCANNER 105 + +static bool ksuctl(int cmd, void* arg1, void* arg2) { + int32_t result = 0; + int32_t rtn = prctl(KERNEL_SU_OPTION, cmd, arg1, arg2, &result); + return result == KERNEL_SU_OPTION && rtn == -1; +} + +struct ksu_version_info legacy_get_info() +{ + int32_t version = -1; + int32_t flags = 0; + ksuctl(CMD_GET_VERSION, &version, &flags); + return (struct ksu_version_info){version, flags}; +} + +bool legacy_get_allow_list(int *uids, int *size) { + return ksuctl(CMD_GET_SU_LIST, uids, size); +} + +bool legacy_is_safe_mode() { + return ksuctl(CMD_CHECK_SAFEMODE, NULL, NULL); +} + +bool legacy_uid_should_umount(int uid) { + int should; + return ksuctl(CMD_IS_UID_SHOULD_UMOUNT, (void*) ((size_t) uid), &should) && should; +} + +bool legacy_set_app_profile(const struct app_profile* profile) { + return ksuctl(CMD_SET_APP_PROFILE, (void*) profile, NULL); +} + +bool legacy_get_app_profile(char* key, struct app_profile* profile) { + return ksuctl(CMD_GET_APP_PROFILE, profile, NULL); +} + +bool legacy_set_su_enabled(bool enabled) { + return ksuctl(CMD_ENABLE_SU, (void*) enabled, NULL); +} + +bool legacy_is_su_enabled() { + int enabled = true; + // if ksuctl failed, we assume su is enabled, and it cannot be disabled. + ksuctl(CMD_IS_SU_ENABLED, &enabled, NULL); + return enabled; +} + +bool legacy_is_KPM_enable() { + int enabled = false; + ksuctl(CMD_ENABLE_KPM, &enabled, NULL); + return enabled; +} + +bool legacy_get_hook_type(char* hook_type, size_t size) { + if (hook_type == NULL || size == 0) { + return false; + } + + static char cached_hook_type[16] = {0}; + if (cached_hook_type[0] == '\0') { + if (!ksuctl(CMD_HOOK_TYPE, cached_hook_type, NULL)) { + strcpy(cached_hook_type, "Unknown"); + } + } + + strncpy(hook_type, cached_hook_type, size - 1); + hook_type[size - 1] = '\0'; + return true; +} + +void legacy_get_full_version(char* buff) { + ksuctl(CMD_GET_VERSION_FULL, buff, NULL); +} + +bool legacy_set_dynamic_manager(unsigned int size, const char* hash) { + if (hash == NULL) { + return false; + } + struct dynamic_manager_user_config config; + config.operation = DYNAMIC_MANAGER_OP_SET; + config.size = size; + strncpy(config.hash, hash, sizeof(config.hash) - 1); + config.hash[sizeof(config.hash) - 1] = '\0'; + return ksuctl(CMD_DYNAMIC_MANAGER, &config, NULL); +} + +bool legacy_get_dynamic_manager(struct dynamic_manager_user_config* config) { + if (config == NULL) { + return false; + } + config->operation = DYNAMIC_MANAGER_OP_GET; + return ksuctl(CMD_DYNAMIC_MANAGER, config, NULL); +} + +bool legacy_clear_dynamic_manager() { + struct dynamic_manager_user_config config; + config.operation = DYNAMIC_MANAGER_OP_CLEAR; + return ksuctl(CMD_DYNAMIC_MANAGER, &config, NULL); +} + +bool legacy_get_managers_list(struct manager_list_info* info) { + if (info == NULL) { + return false; + } + return ksuctl(CMD_GET_MANAGERS, info, NULL); +} + +bool legacy_is_uid_scanner_enabled() { + bool status = false; + ksuctl(CMD_ENABLE_UID_SCANNER, (void*)0, &status); + return status; +} + +bool legacy_set_uid_scanner_enabled(bool enabled) { + return ksuctl(CMD_ENABLE_UID_SCANNER, (void*)1, (void*)enabled); +} + +bool legacy_clear_uid_scanner_environment() { + return ksuctl(CMD_ENABLE_UID_SCANNER, (void*)2, NULL); +} \ No newline at end of file diff --git a/manager/app/src/main/cpp/prelude.h b/manager/app/src/main/cpp/prelude.h new file mode 100644 index 0000000..18e19fa --- /dev/null +++ b/manager/app/src/main/cpp/prelude.h @@ -0,0 +1,70 @@ + +#ifndef KERNELSU_PRELUDE_H +#define KERNELSU_PRELUDE_H + +#include +#include +#include +#include +#include + +#define GetEnvironment() (*env) +#define NativeBridge(fn, rtn, ...) JNIEXPORT rtn JNICALL Java_com_sukisu_ultra_Natives_##fn(JNIEnv* env, jclass clazz, __VA_ARGS__) +#define NativeBridgeNP(fn, rtn) JNIEXPORT rtn JNICALL Java_com_sukisu_ultra_Natives_##fn(JNIEnv* env, jclass clazz) + +// Macros to simplify field setup +#define SET_BOOLEAN_FIELD(obj, cls, fieldName, value) do { \ + jfieldID field = GetEnvironment()->GetFieldID(env, cls, #fieldName, "Z"); \ + GetEnvironment()->SetBooleanField(env, obj, field, value); \ +} while(0) + +#define SET_INT_FIELD(obj, cls, fieldName, value) do { \ + jfieldID field = GetEnvironment()->GetFieldID(env, cls, #fieldName, "I"); \ + GetEnvironment()->SetIntField(env, obj, field, value); \ +} while(0) + +#define SET_STRING_FIELD(obj, cls, fieldName, value) do { \ + jfieldID field = GetEnvironment()->GetFieldID(env, cls, #fieldName, "Ljava/lang/String;"); \ + GetEnvironment()->SetObjectField(env, obj, field, GetEnvironment()->NewStringUTF(env, value)); \ +} while(0) + +#define SET_OBJECT_FIELD(obj, cls, fieldName, value) do { \ + jfieldID field = GetEnvironment()->GetFieldID(env, cls, #fieldName, "Ljava/util/List;"); \ + GetEnvironment()->SetObjectField(env, obj, field, value); \ +} while(0) + +// Macros for creating Java objects +#define CREATE_JAVA_OBJECT(className) ({ \ + jclass cls = GetEnvironment()->FindClass(env, className); \ + jmethodID constructor = GetEnvironment()->GetMethodID(env, cls, "", "()V"); \ + GetEnvironment()->NewObject(env, cls, constructor); \ +}) + +// Macros for creating ArrayList +#define CREATE_ARRAYLIST() ({ \ + jclass arrayListCls = GetEnvironment()->FindClass(env, "java/util/ArrayList"); \ + jmethodID constructor = GetEnvironment()->GetMethodID(env, arrayListCls, "", "()V"); \ + GetEnvironment()->NewObject(env, arrayListCls, constructor); \ +}) + +// Macros for adding elements to an ArrayList +#define ADD_TO_LIST(list, item) do { \ + jclass cls = GetEnvironment()->GetObjectClass(env, list); \ + jmethodID addMethod = GetEnvironment()->GetMethodID(env, cls, "add", "(Ljava/lang/Object;)Z"); \ + GetEnvironment()->CallBooleanMethod(env, list, addMethod, item); \ +} while(0) + +// Macros for creating Java objects with parameter constructors +#define CREATE_JAVA_OBJECT_WITH_PARAMS(className, signature, ...) ({ \ + jclass cls = GetEnvironment()->FindClass(env, className); \ + jmethodID constructor = GetEnvironment()->GetMethodID(env, cls, "", signature); \ + GetEnvironment()->NewObject(env, cls, constructor, __VA_ARGS__); \ +}) + +#ifdef NDEBUG +#define LogDebug(...) (void)0 +#else +#define LogDebug(...) __android_log_print(ANDROID_LOG_DEBUG, "KernelSU", __VA_ARGS__) +#endif + +#endif diff --git a/manager/app/src/main/ic_launcher-playstore.png b/manager/app/src/main/ic_launcher-playstore.png new file mode 100644 index 0000000000000000000000000000000000000000..bba3a1443fb24c8c22175afd0cceb6014eb7b108 GIT binary patch literal 88805 zcmeEt^;cBi8}88E4bmyy-6$a-p-7iVNrQ9^-62XV4blwKJwpi6Au#lSbT>l{cl>_t zKXKQ(zs#Al&N^rBcfYxx_t|l}uhj@}X>kDn0D*@33w;0p75NtxfQ^Z~T>AaF0|0;k zjTcI9{VWcJKJJMaOAxN#?Ri&b-2Ky< z*M!uK1STdXkO@1S343QlqMwl%U5Oa|>~9P{0C`oCWc~p7_ox?#8BOuuqu1Cp0OWnR zyYdj=-+d&R@_%oCBNhhydv!fB73F_l^dV}m%d|LhQQP45FVj3@bclY+vEi{p)&Wkkl5Yfx4D<#iYwACgZ6dAQp z?1YT!2+PnGT*TE<`m=|V6Uw@av#e0r6shpz{}2$ZmO(rEBQtxog>TxQ^J3wD2R%RzdBJtI;c%J zKA^s!;;lj7-yd~te#NN?8}f$T#*MTYHBjsW@xw@womxe+AeP3aCe0J%Ty^w%*l$EOs_C#|FCiUDG}^jWkn%@$_bu$qHk<$d^N9%6iAl|DG(Pe zZ7%G0!@TU5Crf{$P}Ks%ng!exM!A@|=m3pVdmB$b;{D3Esrld0TPf(z*K6kPZQc0>j+H(#0dCPT(qmVa~Tqw{54g{hIl zTx19pKNztE(bHu_E}NO`A29JrVYsfe4`x#L-^^i>5t$z=MD>@v-CIP?{~3WWpg){R zgoi3Q|Ev8Ib+nqtv8&VP{w4h&8v5||O77TuYP_9sOQacAf2mcmKKn@k3YDf+d_+Tr z@ejx_j)!U}Az;+(*}&F{MVJQ@`J~ra1L;2ne5IlaYsnNiTnaU7r^KkHH0rR%njlc0 z7)m>iLZ$=~qyi*mwYA6GkD?PS3ccIzv7-ap+3K4)g6WS^Kd0eJK*ef|x?Z;PM-7b3 z^~JrRS~nlU+C3^wia`#{iyW9xN9&Li+HjJ^23l%9i77u-*C=p7;m7+^&b?k^33w*s z^V)uf*#)FG^@}eMywXQyVp8FT%uC5=G=Sc9|MN?+eC>pdfQxN82RGNR{RD-1q32xXrE#0F*H1uT+Y}k>*IplN6Qj4g9+Sor*J|?;p_l$Ecij zBeh&j@Ne#IPp48rJ#Q_Z2H$n%XP?HucYdQ913S=F2-@4*=&jSXOrm|SA`jjp+kw#q zEZ*%DjDBUQk!3)9#BD#R(Z|+>PArg0>dTHDv2aQc^PWd54z2v)bckl?LhKg;6Hvp|4cBaYv7N|yTtz@Z!{x*F#P!pMPeS(6CdckaxgtsXz} zAifwURHq0PHqn+w-6(*Ny?gTt6pFsJm7bbuiJecH2HAqVfwuo;;x(_=nD8BMhuvF? zDs{f@MId9^vkW?k6A__5H9rQ?!GI@4<7z$}j$5G!NW=XO$+1Lw3Z$^}t?pVHxMi(w zn>}@oi>&|Rxz!a)ctihOv$%tULu5{lNjGL9YPb`4fZbL$(TU&{w9TWY?dMP2KZn73 zt?eBhV)LbDKm3UL@!>&&zAtKOt@90@v$6kxjLb8DPQW+~{fPNB?YI`ycMULKigkrP zo6FAEjICei7Z#qI%UE0fizaxr3h`*aE5%ILgNLw;8~HGDuR>{do77v^$QOBr*TLO3 zAcx;3dlo_h;J%rZ7`LQ!oc9|Bfq^nQy_I!t!1ne4{&E9@j~v?uW>)pfpz6->1Xn!| z9Gz8et}GUIcC?4p?ubC5JVBoQP*(Z5Ekkt!6UhK;HKu(E1Ce!$q&GP@?OfCp+DbgH{S6C6~>2%h&@dTj6V0%iOU-UQU>KYoE$6+9Wf1ZOu0In-L*rITE zkH4qp!E0&bY6!uLx!1O?ZX+4bZ|ld@ky|&ueoD#j-e@=t5SLL~@1v29@4ytl=u3`6 zXn{}KWuv{Q>iX)xP+9F9vx4j%UmN`lDu#?l;^8D>)|hprXGf_#AZph-u|g0^sUyec z{*(?GlhlnZzNh8ULVp`4!GXQ^eJ6_U>XMdy^DR2j@~0h54!@&uX8e6)d5`MahPXI)fbDg=6X@5AyAOdf5H1cBP!5 zpf@LJ;AVPf)#&hUpIp%n7CS{D*`P~aKmYr_AN}N9d{waU1?ZoCFYfmC_R^CD<$|WB zq&2no@427J`^mWJTyVpp4>NhQ+ORL@l^f#?^zDZ#A$Q8Dlo_PkMCTpjICC)ikl<95Lq z-t;>;DaOV0X81Eeroi~#HX0oR3t|i>cgiL)9?9f)e;3zA)2j3Z^ZE&XQL$FHHK+rz zkO}4|=d_hG4sz2BKdJw4i^(ufxK2Uo(m9M;jBZ4@Q!a&>H5xM?J0GyUOo4dl41R}bhc}jJgoK7?vpGqZj}ud}UEFeR@qVW$pq z)Fe|ke0o6u^bLa$pYxN4qppT2+=sg9F#7%7#u2b=hkW4_$npt0r!X5<5v5> zw7|)H9qXoYBPh{ebV2eFTb?rI?ySiur%o)Q{75*g*G_&SbyU=kT{C|wk*5b_*WQ(Lz3Y`gU=V0hr|0Y z4g!UFfnt^E3z3*ONQmFfq5)|@FuH62szKPvx|5mo4j$_R0`I$%dHqK`opbV&Y!KtW z81ZtA6exuWjJdyx1<7SOyF@!MS{5HvNKBY-P64(MnV{_Rj3gNtw42raaTEhPkPa~B zEhhM92IET~Wo#lZ(`g7+yR^UI&~mkNw-UL}4-s)2@u(&`A7G{q;9upwrl}dx5aL{s zkPYAPrrsEu5=s4*g{{(MKJ8VH-gkI^c|Cx)cVC{OrDI8*s5KeeqdZC`kq4|a6H(== zHS1zsQLt9{XLUFkKHodswQ1qoHh}JA{ILq(o+hwvsIRS5(B%bM9Trhiyu$f5zbcxU zUv$&NUru6(MedhWfc7jmHAEd#oad)vxi52Hu{6FJZ4UKr#8k34wadrI;&MT zFGFuwuv#{N#!|%)?0`Go>w)ur0`Zral7XP6CPNI(+}ymAjxoOE`N6$|t9&O>#A`bS z5A)S&k&vj3OHqV5Sx*8>2oXcrz6+ODe~J1=%7@mTsP8g%*F9ics!=rJe6;_h(9lV_ z#RS^l+*~cn{U)-%H>cP-y}e=cHgA)NEE6X{KmH=(t?GMzY`AfTUECc>|&Hp z>rP;S=;SG>xT6OpYk!HfEF6-cPG*#?@KS(Mw$@E_`&0Jg|FfEsf&y&9XYzdb(N#=> zOzO0)Y+nyUw9Xrf;l-ydnd!=rKRDrg6}jU5gJ3{84^J4R)`$AwL`ZJW2jzJ)g5j7ZlZz*d%L-Dow12kcd#Sje(gCCq%x-QB#!`Ug4X zK)^QW#(El7I`$TC?R5vP!nkY)_b}{@6_d`fh^_9xhpOpO{9W5J6#IMCmzJix-Y@PN z=!x-rH~SlftP+<7sk!t3HZc1r8L=W72V1)uE_RAqi_Ty6_YE|t)kWYJBTK#vXGfj` zC-tZqUDh&NGW;pGzO>pp@tr7Ycv{1-ZzEUR$CJGa0xSbZ+W~rrw4nVHgVe1bCI{sEqKjC{M@Pfo433YtzXg3*z=XEi3Uqqh zth;12^-MquPesWtlX7oPD>2TRaH+RLgLY8w+306 ztDJf}fU8f?`PUo2W&pWm=z`4UtY*qqFpE*MAfbo-{;{!%>w&zmM8-aNz>Oc=hx@nt zK&3XUZ`|~I?uho_PV-#FyFa7Y=Pu<}%U{@O_KzcpELNv)-mq<#(lth^_I=Q*W!OGI2F?iK63LAdA2O5dixYZlz)~cU<6Dy zNlpp58-5o2Xg3K^Km^-~csX$d5DFEOY@N7$+Rh&y^*1!Cp1KNA>6i7KZ3|sahS!de zIr9D|!?qR2WxA8E^-dmZXJ4+QItw)F^&$K5#yK{v(;t!bkZ*k1LVY5cr@ z*jK?LiC~hwKpDE+g~OY_9lG6(f<}fs-%Z1Vd!{x`q-lZMA{>J5b0@s|Ffu?e$*(Vu zcC6R+xv%>;4vqY_4=EhA{+q0wmGYk$kb|W6bsB`%;gE9s;4jgwl$85Jzts1&mDUid zKkNfB^kIx<(y`>y(Ehs>yU}Kcp{-~s(L=Pix(yM$U;3Sxv_8dk zc3-Jo=*EQqlD#*x^)^8v?Q}F^M}unuEmJr7nH*;l!GFGizTEOSoo+kfVDyCGKop+UegwUL?LwltOIx7}l%1s#6=#)Qg>TtP;5dhM@( z6)^-(%?EkC2TJ1n!NG!v6;oRa@vnAeN_r;3nBxHWcv~no!7_X6%N3>dl8CiekHOkfyVEYzb^=Z*8GT{1rzC?3@xEt z)NH&Mdjx8o? zm;J8|TRE<0;g2R`>6D61HjePMH;>^IhufHE5J-^fl94eamo2VnFx&nmu)>PQn&#f3 z+y5GukX{nyht9VcUyG2=5_f8Xg1q_BgkwU6u`C@?fW#HV{&L*=dKF=u7cwIfYCO85 zQfNs0Y_X=}ttagCx#PG0?DS(}b5mHICDSu$PgT-j^h}hXuE#CB6jj8tHJ>xeJO(0FoSJI`XjXEC%d;cJ<~{P>tQhyS+11 z^3oQ=Vnz3l^T@H8F6xC|Xhi+0e6_dSaF(83c53`WlaV?MQm**UjQ39l&mOGKB^4<0(c%S{BnZX$C><9#c5@9LJy{EvobO_^k2-({&y!a_J425|CWD^>H; zzzWzs9481DC+yd-CpF__ycKevEmzb`OmloR7Ny`MYP@(!#TlNJ~|Pl zr1h+y3rPP(jqkNRUC_}{PLn>MnE5#g2_~x{L!xg=zOs`;Bim|5!LbYVvb;|iJ}^QV z6Rfd&a2V+-&f^xV3FPhpl)GO5aSeS5xZM=WpQ!PUO0(+6(Lr@O(lJ8rSUp7>`mH{F zFG)kS;+2Jn0_f1Y=xa_5Cal;=$sRwS*w+aW9exYTlRsBvuiX4p&ETMMv_ z0XvuyjIEnebMcpo4Dh2S7qqdeplddMO-QuUv3w75H#;58|?T&EKKGhCOK?342=eBVt=B4`pDFSX$7 z=X~E4e9!~$^5q{RrsNSUrBPAtmszd|u&J+rKcJC`TkG=TOstiawpL=WD{xTa0D^y+ zePE!BC>wL7qAiX<3u;cW4Y8cu+?7&A*F?bz>?o{cBGPA--{r+AC?rmq$I2@%t4`!Z zi=H@d%R*IkPLmG;_QL&K&-*7rlp;t7udCBvg?ZRvgFXmvCUsms6P@@AVdc6Z%6PGq zCW@&Fj`))K8z9N`0TA-x^5#-8&>y2bBD^py&UU-IFSRwOCK;NGE`p6*Po?!)(}MH! zuwR>RcOB=BylW??rf@WVJG!4Y*3PJbx=w0LZwdq@bV&VdJ~d=7MkTbHqMD8XE)5Ko zj6F%wyZjv8o8#nWJX~l@;rp9>4gpsJ&S!(h{`Ow1SoWtICp#n1Nv5|{RG#beysR%m zfIipH25bm~&Cx4 zD|^%0ROfe+WAFaNT+(q5e4cxkh4vEgj7}J!Kq~lQ&A29dzeP#+(>()Q-6B)MU664z z?a!2Nk@53x1;`Ikj@|qG%ntQ@CH+l0Sc5clx$9)$VqSN!-+7yAh`O+D-zRNC6YtGUIPT%8{7S0EVw*1-~|z;W2t762~b%JQ;8;x)CF z9mQT2Jra3>j)gRIgz)`Qt=Q8`VJPL*(Z$Z`bJ55XD5u5RTWIKdLa3!Zmd^N0Ug7*# zO0@W9ziMVdYa$s`mW>l~4k&MTC70y|!}C$}uR9;cdYqVwTZ-vl{cK=n=Z?=r4UiM< zMk|(I?eRw|)rbqS#5%lX3NfU_?K0q2w=Prf>{&PsgvYi#*7(t(ez&f-s$c-9Cp}@c zzBT|5;?V#x@N3Un(!ZYThTbK2r5S1RnxZ+L`Q70mZ|=(J ztV;?RxM%d&j~aF`RS;P(^9ElO=FFv{1dqH;E|i9xWT_- zN6ovwLakw))4CM#If|Gz<=6E&At~>AEMVp(U7Qgv=qSLJ_PQuwmq*!Gkq73C9gZ-{ zho$BEGT+05ibt?X5)2^`FL|sFd`&ibTC6>JRYvr857^>%>QS@2|w%> zwP}m};p$c+zo4pALs}I@8|xi$iGw%sXnayL)Dw+1?zmZeNb_}cD~vd=g*l|VjClJP zlBDS5L9%wQ^gt*@OFdRO_IrDtZ*{~BvJW&nX_=&;w4YN|RFCo%{I=v9{=e*Fg)(hm zNHiOE!sPWtqVbg?&9F9R+2%*#<+U6Kd|gmVdie4qseC9xR^~7(&YFYpcZKd5Txv64 zo~VMZMPtVh-hT=YVL!Cuu$pN<3fgw7?hfUb4L&EObaLScr>jC@0~%-r&#itMYI-oU z#YCz{^ zu}ygSTZUNnh;3DrPjK0$6u`Die>dJnY2+_)@RXWlAia3RKCgh61M8%*1@0LN%Jh|! z4cD}7EV_gab&|M%M8Oa%aq?l-^DTBXm{BThqw4BOlL3#N3GuCMQqrq<@w%!c=_)vuf;Imnei`Jys2dY$gK&!}F;H}jZ% zPw{bJB)=e#B$3v^my%cgHOPou5sfxJPAH4|@GoBu*=me(WD3z*souk(eT47u#nl#j z5tM0oDh&hcW94mo4|CW}@Hu(W!y~giTb3{SCOT#>mVm&X(PzYvPFndy)H6c`Xq#RO z-7bXHezQIag!chJiL3R{kp<6`|Mfya?%>j>xg~^$+_Hz@sKPNVHFrcY80~HMS!Cn) zd;AOvJLe?=Z}||xcxEd-(H)K54qa%YZHnEgQQJq6wFL8L==L^^^8FgvcTM=a00%cjFwMCs=S7rN^E-JuHUf|6>iz>;7%fWW^^@U7ur;;o3RAG*X;P9R5$cg<`u zF%Vtfm~AO5S8dBcJo3`gSAz+c(Ss3EZ2(7sPOFtlzMLLQvvC=p^KjX25@c-!RtDH3 zoH;DcVR05`Iwtjm!dZe<7HyFJNf5FGv-0#LZI^B@kmMrQC;Sd9Y051FaB)Vsbs|#-APK-Y*iM55J|y)&!1^JP;dV{)w!I zsK_9%XsAs#$EJaTwg&_dLO;)HI@Mjl9 zTFN}Q1q8GxhX<*&6u*;z^Upf)F?&J?25@kKjID|Wu1h0U(zl2YP6W&|m5Dp#MQs*; z`LzB>kZ2%HnN^F=rAo|MU}W0g{&m1|oRO59dT=d(&&p}6}J41xh^K^EW2_ z6A2?YXe-~Rg;=OD94ZVB%*beQ5(Lm-xBV0PMARhMKHj+((~4$bQwQFmi1j<^Ts}Oj z-)ldNec*kFCn=o#lE6dfYKf1ZK++uW-(J+ouhYzniU7%?5B%@m|Mw_%_fRQp>?6> zn{{KTf&i|(FU72~n*ted$1gNwj%n(-xE$2)MVMtJTrmw$A0zkU&gdnRa}h{NRK~{%b%9+^{q4%>@0!%`Qx;dYR?s z3b1PvaJya{qN=k#w25cizEBbc$oSAlUncT8R{tkAM()Gc9?yucSEg*%19uPSF*??* zr3Og7iinEh&+ePhp9ygBhHY;f<^GE24Q=bJ-UtSUze#pgvo1HL<5ZX$2{!*xEqTK$3rn= zzWwvLXwetBf4DM^)&{mS$KTxXqX;t(C;hpUkzpvZe7@;o4r)9c#= zDHpXwdJKa-$I${4WG<>I`qm;yxt8m7!Vq~6S46ufjJ@eUsVYud%e-uN+_2~gJEIFIhJZG@gU&oK+>IC-J5}Pl195QRE#S_H(mQ(ES5Wgf2nZ z8P^3vOLulO?twN0f|#9%R?9xzRaSRE2NOWq}fC7TYfKORBof$ zJx(+?M$r>{IBIqhVLTvOKogG5<`f1ftrEan4nP%_ynIm2MN7vMOhdQIsZ=NhM1;gE zQk#q356O93km?`q8+wjl+$}Jsa?Q;ZG&JB15A%5U_khaD7fqH*P$)6VIeWlXq2YhL zbFE2L#se_fk06c(RcN(l-8gGbwuDdnxfIe7u_FXj4$t|f@Z%+yxHaJYGFfpEG`*UI zEG*j$=kve9a-X!kdz`|;zrLV9o46%Mt9;1T?`RwnEax8mV&R5!O6xAdjF2Dw1bf%G zAruYXLem1gt!=0>gd06E#J;?cpnu-Lx%ZJq)vT(o;;eT#UAcH`^zfHD- zgLHhh18ei?nd6Jp&mpsDs-vSQ)X7?rzAX#~4@V5LLA11Vxh4Ns_{6-qcSAkyFG+Pv z;QQKDoDa`ohds^B7CDa+5=|f!(;ng?>`O{=WZCFF-NeafPOxxKs2TBDeD8M!$aYEo zJ4yuW3&8mIZfy1n#~|JQ59JTWKXd8@0`xvsURrqlQX&AqWifAh9jq|-H}gZ8QlQQE zZF?@z08Pd80bf)z3b+e>`=e+h0U(2YLqFOt(KyQ*Kt756;pYjh_#8=(eKh#$I?`8( zvVs)c#S?C^KjESTYIG}@X&j~#U2^gMxc6)kF7Jo_NOIwZ{)ge5#KNMr;-V!G4mFmq zCmxjh2N}8x;?^$1M1u7c>&JW8#aA1Bx+x3daO61d91}wQ+i(K{?bf;}R3LIuFQ>1( z$iT-{=TmPS1$$|JKj+xrFzE@WMu8?A0sC02%WEk;i;7FaG*LzhOrXyCK|TKKv6#R( zlQ-U_$$sxQ7{~8~aCB}LzLx(omhZ5@b3p@QmP|*w0vF5AFFsvkQ6HbACkx@>Q3ImZ zk6&8|F@>zzu`c(0$;68$98!7Rtu@ zX>7;8!0eIg0s;|h-lJ|1@2A_~c{M+M=dV5apDf017w)(3(MSC?nC_bd4p%x2FMJb1 z|8nYBru~xZ4MD1wSlS8dd=01R()iTmhIWf7SEOs2fFvGqJ?EPzdCJL=re+YXxBC_c zF;c^NEAP+0f|vHwM??!mvx+3s_}LJvZ1f;bDO%x$)W=&ykmQjG`;cxQo@L3v&qP5R zR#8^dl+E&D@=ULvR(CySB-Lq{?0(zCnwvf(%)BY6YlyJFak_yHuH23~o;h*r6Drp4 zNdblrW{T}EWGxD1pitUz)lpnV1MGMpS#l({=N;R8*?RwYZTfk~GpEsO;*t zh?CIRd^@{6zg8E!%#<}`2~vl{?&V^8e_`>pO)tI!?XG6`ub!)LZBgiMqjX7jPqHpiJ>PQzMkei5APf>C2flwK~e-bKjp7^7B4OwsTiL z8#Et}ZZ8`M)uMrpGE$2{rHBe*#%L3uT9zUg_AGI9`-y}EuQLJLALpj(1wwiF!$u*E z*?n&rfzQ!WY3MKrDslIyZD4W*{<`@1u7Z)d)NzAj+5Q=TaSSukUHkB)DS!%UC2QGX z){Wb8Vg5=n*Bx%_2;(({Ah|jCLw|hdw>IwvQB+kicOGY6PVzOPv-k7nhxg+pTfo>r zfloz&Rr4-b^AfAma5X5AFukeO@>98=&jRvkv#7`lUC>l1UeqB3Mo&Ds{!(%#Cv|JB$bbfezoyDoP!D8 z#Pero+aZ$i0!0DU(spBk1EHo6;VxT+=hk8Z`@FVz*)mCygU)X0is+w@Jm}HfY zA4-n;Eg`CUfS~9rt=)#d@*n#dqZk5@c~I9@b$={GQ>8%eo<1w#u}_Slj4FZIu{)E~ z65n=X)cYkqw|b!>gA3G1jDXHqOw@a!YUf7rpxFJrIAyx@ZB*6^*spHzi}Dq)RC;5L zLiLo^|6;XASymNA#$+xtGiPdcTJ-e6Un357zZv(5pp{&gjNA?+OZ)|6MPToE-Q(`i z))AlWAHhy$YHbEhigSE8E>w$6=+Z6WUC*MHU_;pZ8a_m+Ek!3^y=WG#b@I3+!<{%BUSTuwOxfIk_(3?-RB zG7*kP5A(+d!>>dsQ2b6@oH;&z-oj790ga^r!s*Vf%2&zBfZx$P?mzNUi8dam$lR`z z_Q4hFE-mH&nW&)rXg_-OdN<-k8Yq8jzX`@0S5>M1Y8&l#cwvC;!TQf{S`EF|Mr{RMNgl72c?CQgpifJdui4NQ8iwvk#)_UdR=+ge{Ji!E zKVU?KWo9x~uQlR@v}&;flaXgiWG0uUaA-P+)R{e&uUq(}q6p55(-ckVytV1cDfc*@ zynVfMWp|TPlFn6?-jgfk7EQk@cRh&6Q59z@+f*LD?wS_Sg|{9tEz5h*zpGm-Wc| zEj8!Ws~3`&&0?k{n-g!{DO=0`qRF1s= z*|e_b2?obss$Ic^_3DKOIuA8>LYL{$!H)r1iKX{ z4Ic1iodfJMg7QV>ak=#+7P|WTkND*4ss>RnH4%wZ!-(;shX=nk)U$w8XMs@a#8;{P zjK71n&^UeQ!wg0w&U;L&R~LQ;E1;uCz52`iud0PoFYgK1uGncD3g0}7%$pX@BoHop$HL^H(4Z4*{*)j?3$M1q^_$(xD6YVz}}ZR zA)4*XVPn7mz=|Bu!bTaYK;>S+YSUh6Ek21|z990(lVuwtq*il%&%Gss z^#)#Ley}^u=-Rlgekmi8&6ursCd!0RuLu=P#9P9=35t!_#j1nBnk#BLo0Q0q$B0m{ z*~nmmsVE>JjLh1RxKPcqkBGs$J2sDI^fx#m>CW#g`5y`Osw|3TAiIEL zN+Xl94s(#QwTD#xm0`<`W|4sYycD|aR9tGicgm$%DiE2`L+nsxSN(bwePcw8j49|u zpCAjKF2*>yV-vBVwibk!zTW%Qr9?M29dr1|oq#xoas*S}#9VsX-$?zt79}(^?t8W9J+T{Oh(MW+_y;bfkshfN(qQayyg?c9MvWq z)n41|(ypf}m$qlx>h)@r*mEdX_AJzkbztVm9T>upC=_n9w8%_&E@RF&Uab+ z^!}dudLb@u?(nX_o8B~bO{=qw0g&68Jn{?yZ0V7EFx|=iKm@rTCzwP0t?p?k{&Isw z{L(V}imJi5r?L%i|L$_)?n+n?r<5e0$-4tF2eC+4@WRDu3MpnJ;mLdmw%ta(v74_A zR{P9&xHr9kkJYe$z&-5ug;AD+Q$BkBDYs$H^*M)X%;wqK+0Nqo+@>yQY7 z{Zh+{$!}SL7r~JDkJ1|Zhu|sYC1=DEQHwYFQ^(0Xc%!tPLU!$EzV(}ep>k@+AU0=Y z+M+9VJL-|*ApC`e#f~D8+1xD7f7f$H*HhS6s1oBh!zgR_;lqnzL|t8`>C*-;h5aL3 z=FBfDd_$P)jl}tjp6IZNpF?zo-EOF!kKs)IReAc5(yGG4<6vqeh!l}A3p#Iqdiy;z zdz{}dOL5R15e{mZoj+YcwC=tPL3TKq6A1`j?KEQbp#{q-5!De$ob5R{rzU6P86B6u zRltXFNc5h_r!F?}d%DOh-ZM3km?BEy;of-=9w^@m|UzH+LQrH?mktRN zW|sivP*&pcW4T(A+p%2VzQ7*9uD*dXsD;sat;`9v+p?W-+`JW&z0`JEQUi)93=scC zf)AJ;K&MZss7N1q!Ys>ug5i6|ntOS9;aO4=zhs0oA*L$>%0KRf-T9B+H9fC$i4HFk z9vb-_lZd6m>=@Chq(9f)H%U2R$0!Lqpy}tuw7hQ_KV-~za{8V#u}MLqvfgjv>#?mM zFWcX+Pf@I!l{Q2WCS`n`f%)b7>rXkex+iBH8eV4FOn2R$n3TX>~b(rGBSBSe*`9(z(T#>s&&*Lv`% zu_O=OTsh(deH`H6KW@dDY+`g(G&QDib6YOeS1O1ha$YXaWdz!GwH(VvuC7`*RSE%GvIpfGbBQ87v@;>rI#YCvEBRO(}ax&u*l_En}qy>V!VaYG1(nK&13 zwz0{Owt85jS0NfEkqe>z#iW$P zPz%%-5a@+IM+>73dIkTJ)5Wb|c=u=qzJJ5bEQm6x8?C?}#ubcp>gRPqC<+Bh0M)(q zP)^$I%kh}P+5Ptz70$n74b11_sj}jC`3`;AnY>06E1l&hYDCRbxj9A#FEs}fQ;=6T zwCSnYV)%8sM{V(xy+WgK&xN(1Fi#t47%?KXu3Cp;#ljQc!Y*hB5F`P;<$9{BbApYa z9l6kVQUST{u*dH--+Fg;y2(2|vRplW(KXW>Bg1Z5`@zDE>6x4#&1TJ7c*!SIC?tvA zjZdT=ku?DF+kRrB@*6c89QTQb?{NG&Td1PGR=bm4yd?w<*Fyn=%ct#P;8Offd9CF) zR8;Cc`FO3Jg=~QL{1AJz(()`o#ig>MI~ns?mcR86E+A_2?N#VC{_@FhmTDl&_lxHt zA8$0}b_B6hGy$!*I{9H`3hHlk*_LGkEJW^o+xAdbW(}qZV`^+mPj|=B^3a%a0EsW+ z|FT<~|I6=c!T>b1i0Qk~;9xY%11brOoTA8yJ09A_f?udeWg2KoNKh=EM178fAVM6H zW23bWbGT$1HhAW(3p%xE!MxE?Du-OBPyt4X7QGjE_Se+%^PC9ixuGfknfJwt^+b-< zjS}xtpHqKR;5SIZU=}XFlND-#{&wswakM;^7O;OSdJ|-&jsV`0?KLpC2`>Yn;xxK+ zW`sjJuQxfslg`f|zZBVN_JZnA&Yo=pmp&c@TIORB6^ih_BMrf*eq3t~;iS6oK4`uW z3)Op|$kBWSJHO?T#su)7A#s{9Uv-K>t=<4+P-8zFIa0?g=q}W&o7~x=QhxPO`h{u; z`csS2>3$R4a>o<4>xu_T=HSHo869KntC25}LGpjDv<2TVtI?X6E?R}hjl2kDd@CP} z^1RA>g!9duYqYdws3V{Oo6_P*Eo_kf=v9L~>AWC>pygJqF(X9^_0=w86}pMjtdGl; z6ZYuz;7_^E*Ji`JCx@xYLKLEMuL5nV?*|_V`)wK_wg6W^FNhW<*F)IJpfd62!=VF! zSQMo#4hME&v>K(8i)=URQc*$JnqSO$<=swJ)`}ZF)e+u-TW%=^7(E`>#e-TL#HcPt zcIuS9U2EAMaKF@y>85`tKvG=igixp{)U{rv4{G;*L@oq#@XE@0PIEdwAo`~MEQRX< zmw9xrqrKa@7eRd7zC6D^chup&(f{12!&UC#uL6Pye(-c>xxR)tW9-uj-SLIBgdA|5 znkwAlJY3ZEL=62gk7Ca^n09x{#9DtIcSclMca;{2PTJsh*g~8DAVE z{Z+qyo5``!_Vo@?StKjih^W&wv?z*8<+2hkU7#TK5eH!B02|A>>`)mrm8-Q6JA5aL zYB$EBkOfjEkV@c+gEb^*3$tt8^OiCCsg6NjM(m3{2l(;Usk^40>tPXJ;*XN^E*A0# ze$6icY#M?*uIg`_Ch0>uhotNg{2!XWGAzpP>-rwL8)<2zJCsJcQ$kYd?v5EiQW2y} zKpJV0?v{q3ySuxYcYg2n{J+h|x%b(z&f0sgvu|r>g<|%T!QxT?nA4J^XYOP&O=K^(GJ;L&do5pYqS!exx4cp$uA!7rhc05w5_{>D?MBwwcIL+2aPZ0(% zr7*}J!Yq%nP{?heQR#0Q?~`W0E^u`IBL#5ora;f<%a66-3!rgQo4qSAXe7Wf1LDTI z5#wIPFqz#b0O7|Xt}FxZ!KenV)qaM6Kd<&UDP>6l+FjVXZ!dB(*J6ik03qR7WQTYB z+F@R6E~Q#_>LA596FVLG!^1=Vc|w(_1>m5dSNoBm`kowee(uW5!4aliq}FNrvTdq_ z;E4J10($_jFZVMj&Z#21qr2qMI3nig&UO`#e?hZVSNM_{+MjQ&7jz0z(f9M$!4v?x z;>5x)1U7nlsAqp$6AG#jOyNA&PZbL^1H$ADe}ijWWPPe%n~L_)WP8G>Pcl zN#afDA=n8@bKgvT+YG4bY2FB?XRsULbj%EF*sF9&VF4kzS(L9)R${GUk@96_yCjP& z2NA1}t7s>KDFAF)MmsD?)4Mkffkz>7EzTyb$k$=W@pFgf@Fi;{tx2jIYh6|Qobw`+4;*co^!EshW?U5q_tp5 zxAW%Ozh8$+THF2Rk4%fWe+TIQj@S;0F8*~#QouMOEZvt5J|;U(jJ#I*ywChC7VBI? z%!I9CUZ{Amz?^?gY}k!@ZdrZb6QUZ{7jB&l!Qy!**tH^IdfCFttCf?M7FU+4@X|8m z#=E;h6Zr-dy^8wC+k^D(WLf0Q?@och0@R5oF7nl`Y?f=rry&+Qmou^8F^1H9189|K4#D`+<2C^R%Q zK+ye=sZy?k^2;vl$#f0gG>UJ?KoGt$b#sY&Eh9x6Rotj^7nOJ|$O#56Y|O zgN7Z3nGt)^c#>}{`_-e~jefsOkmz(-JyLXho1tsBR;?}xwr-x6>q)<=tC!TYi|;E_ zIaYexe%Oojp7D`d`myjvSc4TW&Zz7?Gs~Bmc)EXPWBBz%P8uKfjw{XZQ27A`e`yYx zy9aWWap{#dA5ibUEqAb?^x?aHBZZh~{swFp?SF|N(ntl!q5P<=jQ{fk6&}9X$2(IH zA%gwo<@zII(<3rFTv&pY^~3nAye0r&#qS8`?_=CsMt2cM=~!H(csUw-Q6aEY4sHac zUfnjg-};|Dg3lt(CbM6@dkll`?zz^Uu0`S-C=jh-@F|0L8+&I*HMQ$~a?H){rhY-& z-lyHW!6vqNd|w+Q!(YL9*zp=D1@+=>F8-dAebV=7D+iZC#Mcj688h@44(v%mvGmt zB_7G1=Cfh%o_bB6kO?odyTR~Zyg>u^hp_ARPS~@=3z@Ft5{97{H3W9E3iIBlgq>J} zF(TAVPr9!6sT5>fZ4L#%34sOfaZ8eiE%kq`|1H_Rqv#nRZ@K(BWCnQXZ9- z*GAl89OYO3J*c#s8)C3ygW_|=$cQheDnPt(+tJB9pc2uMQpun>!?gbFzjvAnF6#Jo zGHOtYI}Tih^>!D87Ol@tevaY0o413-@aXGd4t>E1)+g2&atCcyCsx5%>l_qn!H`~f zcA0+xKh}dW!4E~?!OlpCAo$`9m@Z22VzK>s(dGW)!`aPwXu}=SzY#X15AJWKZV$Qk z*~(78SlSCI?RM^U)CET5Z(8To*~<{XHsX0n`Lr$y#wqcU_ZPhmMce;z0axU--n!>;2lky+a$s`Uv&4fm({Qr#=pNzXhkIQN-P338R7bErN+@13FvE z7}`x(O-c@b;9$T=M0KIuncuZsGy+^{L0VlsmOq&w`M+w(0^VjCF&W_j(2@~84`99g zFq>g_x)c!>#vmjltPw;|Qc|15Ur!&EVj6!~e3-db?<)N1U*K+b^=Uht19~3bk=%|P z=C(<@WII0Px$tAhiWz*Se@k{z9&(ySb(5GXEdWI8%A2<`{lE^RoUOg~yr1-?dJOcN znrf1WPryT^M|_65ewR}>#9S>yt!#WN7Itb$^V%FEG*B$vUmZruvuhbUaIRU*!U4_9 zOEe}NeIfp|ulwO_8`;Q&$4;wfY*ngL)n8)`J8TcXjJzXX^5~SS&4k*te{Q(F2vfIW zC6~UVx$Y#`de+%)^zmlhTmgKHE$=bHJfZ@JOEXmm_hPefYm0D9_)IT2Ae*5~ZSXGC%)Nm3`h@3oI`rqy48D1p{UN)^D z@&m6$&_%+RC{4iO@@q&X8otx2eRN#??Ce2mI4ylt$oKd3gu0A&!Q0@=eXYns_4x;q zP67q@~acn95V~+j)4jMtiMH(c;P)6_P_HtuYN5L;0QhP z%sh{3rrLFjcrK?#alNcCiyHjVbI0MAc$<;(oe$(7m!Hba4sx&vspMcsteuYg+Dbg< zzqX^aaY!X_xk`HX6Z7&W`HN}BmvN0eV+75o-fQn4%_LmGW6!8AFKdeWbsmLI)U*2% zcc@+YX*FQ@u8)g4aD3aV8dCKJ^7j86df=UJaztru7@OlH4ry^|O3xxe4(M)Q9n2b4 zX9Fm)+QV5+6#_?Pa^UFUO|*p9b4F(WaP@v5X@13G?j@yrY$l}Q%EQ*B22Jh;#im5t zK7J0qFr(@e8EW{6aaiAjyrOggdCdq_-hg;5JrYkgCpF1a%L5PaGw+=A*YD;cEh zS^iU1wIYGDvWB4{CipG_%p4_1@XUjAaq+bQZ?mrL8ZjZ>#&8grx{i@<%TkT#n;$ly z999KAf-D?X^DZg1g&dHtDZFjtYDiHoK-`$d`%4jt7KLdl#M~G=|saSi^&QCsaJOC#KZe_h?Zy0Lq&b(I#+Y%-`}sjWAa+!G5};uR;*$KL~hK3tSZ zkimWR(*UrQ-HIm7!4dCch;Z~OavGFtL;vfv+xG?rM@0$*jz8eQ_91voV|nIH6xh}P znc`|!X!DSRGq~%ko<|nF_$-v7z5oQxMPmY_=d{W8v}=5pBCUurs`eVK95n(K$PcZM zxJ5nGYEN&FDyd{mql~6LB#!!`N1Q&8@YNntLv>AscHM14e$sh9$hW4KboOk;x-U(;|RyZ4>p#qA3?wlQyFyLxp3{e~xZ!55tE}P8; z4vwLxFV`8w>998UXPhbG)R~)EA{R1RF=07BbpbM-KRj+Ks3hS6dE=X2iL<-a5QO-y8>tAj2C zG*^Fmc(3mtg||&HbLhaj6!YMiQ0m$3+cwIT-*0GgZZM5*9?(`Rr^+!jIv6CEMx1jk ze{Vqv)^@djCeXL0q+>y*;mu}gD7OO#DJ0sO>r;NIGTe#B$HxKiwH}xeUZwk%-4_6& zb28!4DcN(uS>S9Q+${RoUje=}K9yyfcWCSzniWTZ@L?QZ3#99|EBN|h;C>3)Kj4;p z6R>ZU?XE8L_qSCKhIQU0`maUI;i-NM)D|zJlMZa(9&;cx*Q0gd4oaJ{bONt@ z8d@B`-&U-kzht)X9U%4UNy~IaKk>yd^g7sx>YarP3m|l>h=Cc=Qs$svqm~8#FBW2= zip8HdB+!FBP2UA2eA)2m>@GReF`N3r`|08*v4A>gegn6Vp-P9x)WMsZN)?$nI( zGrI$G{=i&nDUvJomXO2SfnGZc{>7H`QXyI;QV6(-{&%IT&WN<}7_0C1Mo|Phxr7#V zdd-F0@~Oe75r;zXBp%6Y;!n&OzZ9~wy%oH1omWMn>)e|T`ygC7-+szWWWao{4wA^I zyWrh_n6d!M;N3-v_&=XY89v5*`oY~7^ajqz+1S~Iv_CetC&*AV9=cKg`E%I-lGNm^ zwBH`^%Z+3^686YE#iq&HU1Vg-X@OVS*BKa}oTP$+oyK5Lt;w#fJ{unrIx%H-kt$vZn%@VtD7s`&Q@n_i`~m2L%`vJehbEn2te2rU}z zK7D?nR@lAYHHF{!f6MLrESGGVz*rVD6Q*m9U-@Hn$oaF!+HG5HvAxcU!if`VZr3DXRiu<&mpub)k6RCPfhS^5$A-DHi5 z5o+bYNJvyNlP%sPDu$Y+-*5Ot5tHKyUln8OUjy-<&#{)V?&vV{MvD`VEx>xI;cHG? z7RJu_>heGWLDH^aRx*1a%7Th4sL%~GKBa;K^T`F!bWz|+eP;`Sni_ge3u86UF(Xg1 zOKuBhhZ93*F}n5QM@T*!du0FARpPVG1IDcZw@Zwi`g%QbJ@iX>V-nF%M3|xay@KdL`|SM7r_uI%p)+gP z3)kG~%bT{JXYH_9iCq}1Ci@xvX;I?Ed?j-477W8(^9JAElC}@kzkY$i39X#UqD6Ml zlrvD4g7kJ~6>)oVaVXa&v4E+QCc`ocF_o74Q8cjW3fH>J9X(qFVeX7MWhC|dK{;(4 z$86D3tUu}-)|Hfj+Rjv9jde-_p8b6m>XASH)FL)B9SP*hL2ob_&I=r)+ zJ7E{5FCT@+0vg@!;|C0ZuK`rlp%3-J(96G8!~oOFr*esC*_nPc8%|DsR&ESt{_>9^ zGoR3wC@;-%b&wm=3t~||gee+hx<=*Hs+Id1Td5?<62g3lKDm7pvLQb{3}-EO3|8d< z?j9@lUqEvt9aBFqUt!4l`nv3$u_$V^TZXi5UX8qy2Z)?d3OWuP`I`_6*Hc>MzBW#sN-Dmd^Y@E94(5=-bIIkyCt zMJckl9L_kt?HY!ZW<>Pi5hd$Fn#?8pftCx*aM+7CEW#t}{sI>ayXAg6CU6#&^}5*0 zGbO8}7OO+U8#OV1?C7fKGoM-J#8>#K%8?)Xv_W_uD>;YjebAQD&9Xx_z9rgT5;$p{ zg8ARhoxPE;Wxa}ReW=zMJIa^meAt}qlK6f9t%_gUn12!*kDfnaE=6i=_ZK$jdcLd* zS>nk~IQ0i2AdlY$p+z*%Z1Lt>rH78d^0a@>M0vyl@?;hf{6pJMT?Sv^{BJg!7!SeEQkDXz%i|cE~hzaw5 zi~iyn$Jq?HxLglUyAqZ7+pz0V5s#}m^c8xz)@b9lXE>yztB>5;xlA;D+D^935_OKWThH-nXQZ8yrqY=mayeM78clAYJMR9NT+b zjo3V{u^~Fo8~_hg%tLpny|`0#^?BE1&Lm~2uTvxX?0zAxO6Dy6xln1?8_JF$-|9%Q zXlLc+*GB||2cvxh5KihJ%@YZVnIzc0zT!HcMLSGIukrEAWq3;Od_kwhLmC}BCKt+4E?b?|d|ANS>8ArAACZd`4Mxb>+-Ot`IVkUesA_sk;=Gxl;8?;X60SF+_C_u1S56LFA}O`{e3J@vcU#jyv6>xtrQyZ*g|29H zN_3J`Pn{K~i5)vY`d41{cPO3d$O~q|#t5rlu9^TMH-VVrSpF=JYCjtfe;Gjsk=bI$ zmzO&A)vvkC1m;h2W+Zs~F_5fw@s;`*bze5vy!Yv?T~0cH#KVaDwc*pnyowDcS;X!=WmuNY+&>c0@J>F;|Y0LQJ1F zQm#tW13&Ttb4(4shu_!V>Rd`|QhQ3~pw*$f4IK*1_P+`-F=dYWBEZ}h5Hof+J;pyj zo1G5TDv)w!PTaA$*mFU{usW}u7q%Tgz#W#-fzSN?LcCKjJL@pQ|8D!|eXJ=bwOqX_#M=W6H}L=!i*aaf1x~_)zlWWlO*W5OCWJ zQz%l)o~Fz&)KzAD_P}H>w$J;vL^tv-Ep2{kYK}RoN5gl1SvG8!Q)!IY64E^1!GYtK z3|)ry^l)XKE=p@$p;yZp4&TUA5UQZzkIGl4gTE=Ytmb%3n_D=NASYMRu-}R<3;$ z$It~JUo23CLpHQ>5=i6>o-4e6i-H&uy+QY}(XLg_3?Hw-;*mvhZUht-W|U%6DPnhJ z@o~F8+--9s-`epT=S|?HX<-aYN3v}2GBAe)cMJSE7#BKrLJxJ9W$BJYAq4bqWM~%c zs`gN54_*ZA2Y~jA;Vf$WF;j@l_e!$%hkLN9%cwCq6enSK7_F1P)MN z*sEFvd*?s+zvLU}=>*`i*)jtjw$*t$Ns@V;T6_Tx%@oy z&HbO=D?hM+x#m;I`dbsSss;V}c9U@t$s(?4BazUNmqWX9!$ad=<@sMc7QJn=Skl?g z0ZBHF#oSC6E0z3Df*B+vjx%n&9WUU(6E>-kv^{5odH*cj*c@GyHXb!?7QX2wL-HL+ zmvCzD<_bRIxP~Sx6`}?$esH|f4~8d_iM!`kJ;PrDKx|2)i`j%`r~^mpG^9sG^X1(H~UVuvdxy%l)>)OaBlpseLMU+ zd0AOllKS*SW;)@;SVoNSw|?b)JV;>?Pr=yHFnEW^ zX4p${5P{tJ3Z}pq|K|&jK?ye%@;&x~f9db468??$(kEuZpX*C#@ZEgEiKIu z0Ls6(iZ_X;w_{&=0q(k)+3JLE>?s}twz$*2_asBNX;Xn7#JeNmp-qgb*{sdlxQ*B1 z$yxQ}<|t;jE8RK<28{o6gvh3l_li$au4k$TCslzj?c}5YTH6A!wR^bl47+h=JV#|l z`)j`I)c1M;{Deg%4o(WSflUXC{Oeu*8uYxldP&s56|nv_U~x@5`++F%A|X3}Ebzqr z>gDlNTSX_IVPz)g>~r^)#3 zLzpl0kl9Q!i+9?X?`$MhAjQoy4O-m|`ogts>x?X+p>0GHMT>E2mLXGe6@eiCPSI5q zqSmtF0(X^PQy+C`0yz zk7J}Ns(X1&Vg|n`%j$?T=fL|qr%{q?d8k`ny|}H-EU%+tr1fmU41(XoLeF_$!~=?WS4Xyu5b!&Yc4`DPCdTYuugt zpDH4V>j;;YviQ%6@26QE|Z=U7?9@uh@A>AK?un{KCft&|a`C5tnLAwA=$&vh(v ze#th#jvp6e;3yyq4}PnMfX6(pmtRfX>V){Qt3tZTnjcL)WqK58q;tND37voJj#&UK zzDV$h*dulv^{yN)KS<)DoePMo{S}y*+}GY^nD|-C0O8#7P{?({kqR4QIs2GMguBMO z9O`7;!ahCO;XW1>lW@W)PCKxIF&93E4Z)TKim|7cx8b)B!Xac4gcj*<)hC@Kf?H!fq*pNBX54?%rD|4$ z%g2u!ElzuKGDe6^i+bk+;tfnBAXaAP+#M_5Z?)!Ba14$zMNF){aq%G@6zO{T#|B1? zGdDD(Ot2u7)c#P~zEJ>{1yQpy14Qps7xh{E!bONpvEoq#l{G_Pk{_&^WQSm>z6XS# z?*!uHQi!QJTEG97RFX4PT5+#CgXnS-abT5Da!tbva1@wn3i-@Yy;i|xG<(i3UgNIU)mDjGhmj;B!*iEeHT*A*kl}gOtJNZh|yd^MJS+T!W zI0yD9Bl{!<`A(VHes%lf*qwm-laiAaH%qAwKf#f3j;^WX#ECltVx0FA(Y1%CB7y`S zEiLWUe|K4eg;{K?hwSGgYhU(Gq4s;#hyVD^6=Rpdt$~?S@3D#$@YRD|}jk{luJyz=~1-N(vlN^Rn9zZJo z={JKecACK}0ielapWu0@{pl-1M;$`fOZ&<_M&RaYdv7!Bd7Gq-nF_HA`Fsra#Cdphjc;uq2!T|o>OfUyj+Gqx>SdyY5Nj0yvETto zNv1O6go0cVm9T?*-r%B^!Avu=*$OOF&0rEswh-ifmX=TWVA!7D+?3%DJON-T_=iGL z>C|qU=FsLcM~o=)1UU+@+q-;PZa@A}kE3;_ADhU>?`rLr1<D96Z)k8WbW#NKTd-V$V%+%p{^8SHe z#6(nW{n_+68mcvMU#?ByY@Z|Hn%?zBZBkUd3~7r>*e(eJGAFIJ$M%d#vyqGuxd1Rk zTvNjb05h8v%=>Lo<>Dx_xgBa8hA$>sac{pJp|ZnfQ-~@2KtS1dtiM0cn{4che`WUQ zmy$v5#QAizwa%)KF>_E>YjU4NM@+c7;Kc>eWTHP{z0Lty3Q%|C_x zFfS@8tkeCk`e4IPT~Jk3Cn=dTO2S9H=Lt;I6Z!pn;bOhBwu%ZC@vB!_Uw{1RIzB!Y zm91)L2cflp9m0ATP!H;gf!sar*X(Lpgs*5^2r)IM_KBzq*^&ahM6bmH#-01$Dwjlk zEBqqc2G7z9Z3#_>;ce<)ZM-c}zCEup1!gf|gdztbz7MU`m>aQAB)`}3;}A&oJzZ?f zkP{JBMl{>Y>lal}7VTd!JB!$3+nCq+Ah&)0E}a;}{y3XVgp)zbLoz%y5vb85nQe@hbZ)u&QvXbhyi9;2zm@Ry5n<%|+>emSjt?3B$OyVX z4SEuP-$FGxJm@Xc?GB6Y*3A`*H7az8>Pe@+sKX|s*_hn5Vpr(rL z;M+G61v$;X(wkt_!$>Nbg4)8mBe-p_z$Pj;WdaxbIA?}h-k=kN-!0zi@F}3MQ}AsR zjo*M_6D)SBrYdgHK_jC>Hqf}kYQL7Ks{gyqWjTn#=1Twg;!OjgTMDX8)UE-=)*0Im z7+xTI0h=Y{e(d$~W+QCF*O_4MkAh`3#RgV`v4GMieaJ-mrR}TEhk0dSksN-`yx7~siS8SJb&DzAXkM}7DwdV2 z%FCmYz|;da2;;d+UA?nat6ig77|vE&QTP5Eea$x)e{39^20u6tx4>i?|`7FRFz0fh&vuvE8v zwq<5$RCmO|^Ei5Xi{{D()qRJPELjD(KB5NeA&`P(Y70g^NVc&%~kfRMH_>faxM!nNyDx7rtz~k7aF_ zfvG@iFTusl+Nw(@?b8z_(}ujn1HPx{U**qE_+$RXYf}aTK+ao@&Vfm&q@X^{u+p)= zGPb0Y7J;J)3G;C_T@$S1r8|I{Y{V_Gz)L`xQ~J(sM$FiyYjWKx%%kC zL> z`7GZFyyZpI`tX6{zf0TKWk5geK!r+->a+}>d8?wx87=Y4BDvWP_-KwN3q%uLg`kTp z+Pb4)HB?@ngEYFTk<6+28Q%$YT%K@leSVRwCMn1kvx*(V_$I{0BP$)m`BTIT zy4S{(9Kn_Kt{*$RB<;qi@*WyriZCqw!8XbRzGwJz`a-5d$xR43X-HIpm6nGLgC~X*L@%U*hwqr>XC8{&=f%2ZXGi%?xtnj} z@gJYFknA9Q}b z6G}>p_ycwOU0PD;Xjp$^=njW5I#SIXoc)JE-{U(+M$fXtu9`v?2l@&6DU5Y6`e4*0!owRap!OUnM$Lh{)Z}u{aN#qV8fE zVVm?Ra4L1>1JZS)d1m1saQ4ihHqX+L)vb7+Vn)_Mty}Xn6hX@66Ny-)8Z9cl0XJOg zp}1wq1hpd>ex*s`u><;4e}!O5#Y1qBho2_yaY5d>YpiA;;6vGvtZ;dZjqE-vm@uo| z(bmSxNi3|_W^L{0{;Tg+ds|Z)@1N^*dm35P$4BP-#VHMSd0gs~*~ktvnz`}iWn%)* z8na40H-S_-rbe4A*Smb%S3=0|5oxB5B7C;;5KQLRn*W8ZV9}D0;M$&PK|l>&a)Q7) z?&P}r}!jHF9bp7X?>8qy_F5fOLG55~a6QGT4ZKW#a5;BCfG2x;L{1oWgyz}xALY)Mt~5?CF3=n4Cma;(qKL0=G;qZD$Ea+TVQ zbK2w#3>xK9vjqg8wWWG{DeZS*9#jI%CQ~!Kf89F&*QgmKqd+W>a^T+koQE}ZDLa5Z zWne-V70z=tcZ(Z$`#jwN80nD#Eo!nsbxaLTPx)!^@Z{vZoYS!vCRo-=T!0nKr?p%k zFaBBOf==kmHx8VKTZ?L7&>+D2gw>`+&0$H0B~>|*&`CaDYLs)npF*no-RKKsoAA>h`3wTLjqIbO~5_dC=6il|(fTyE*P?)TIQ33>Zi zAPoZ(!F(&JvBi%iXGgyK?}{pnx>LM+r5tFWdEG3zV?ZLjg`n5l;b?I#tf!V;bp9UQ z^aqQB7x;Wmvu!Dx{N)Qt8NNT_w~RTMfYorid5r^*-{47s?%|&y+1r&^^otb{k0sE= zjulQT@rk=$h>D$_tnXc7-t*~Y0K;mU4E>6CEwR~elBHGyU$$ zW1y`kN<;|;jJFTkWPF z+pvmJ9K}>AYkvyM!Xi!hhz0Z-2timhG|ayoF4#Ko+<({a&y|~A#chj6fwtAeX6u`@ z2O1x{;8}ZonROah5p3>;T=(O*h7w!(D+lV@p;Wu#w1bm{9=YHIxH75*Tx0GUrE54#K=FiQJd-TN88ctUh7Yg7S=d#hM_2 zT#zKP)L-Qfu%q!#a~;RdgFYCNlDh|yZ?jOiIX4R=Y0ml8A5I!xJH+wHY1P?^<likqLCT-2tE;z8Pt_$J=f`Y@Q+Ygg zN2#)eCs$TFL*r%6)fGqbbNe`B?%1BrS=~`_Sv{@z%koE9N6d)I`L|fZUVV zGLXYc>Ee{VAOjl(S#AS>&Xfs>fW>}9!53H#-2OZmgBo1LBMVg%Qdm@j4JM6F3!wJD z@v%Ev?%P@d&X8!;pL?pcbxaLtf5Ifl9KI4+<&)mPCi;IB6vM=E{vqgdAYI0Irpqn= zw1GdlGb|MlKrljZ(~&fWHuSu4ZhN$vcKSyk-CP0(CFlEdhGdEP^&>ftABHJ%L+UCc z`n|?mN@ErJFLcU}IIr`df81OkmZn;S*4?s*ztZUFk&B~Ql!i?R8B^l9nLyT5kWw0L%NfyRx%-# z%Q-_S70|3@R9iS>$%nT2E+8&bEL%8BK&i5nh8$80A6l^e1S&Uemz_+*X0&%+Myp0e z{B2XlzMY-@8NdVPR$t-lS)kDFbkdLTp{io5LgU3FV^s5({c$F|m^LDCvh&?{Llm-2 z&93Iw))t|jF#eE{WO=px^Ub2k7GLqdPRCXYt?m+3B5v_o3Gw;2SB20S9d$O{vPp-i zZ}9H+;h03OvhHu3;Uy@C!2{HLJZACp%Tq;DSP!B6p-g$){Obw986&I!9~uO1NWs6OMg z3zU4WvG6d^k+4s#%oKaf?<|$z{Y-}iceetNS7P#b*k+M$ulP0Ougip6bd*KNoi5F4P*d2xi|4?|DSg#nz+8cM1Bb+z?NK-_O~ z-^npIJenX&fJfs~?#2<8-{7#}TukXw&vt*WLI_s~@#`rU4GFzCyzDY`BppdfGh0`( zB%%~vL?dO65e~Un`(pbXdUps7>=D^7ji}i?)#0`Vjpn*$c`8>1VxBsigC0v|^e>p@L5b-wGIne6_ zq}bNtp>Do6*@bye2Udz_F`9Ezs@{3=d&AewS2T241X{fOv+qCB-dxJk1{w2PT4)^{ z03$Ux*=s6k8TCqtdSHuQ`BDr}uW}ef<9KY+JlKjmUA+5ig=y>PV^L{k*u3x7q{~P( zbH3aC2JyZpG5md(vkuMQ{p`t6rZkurd;kCe6lJ8~-<@OC7q)k;OcK&Ck5_r=3d|EA zld*^jz<2d!!^ldev2%>m;2AkkV2iDsi80P=bUxZ-t;rXAJ#;E^mT@SnSiW zPrT)#0Y5pnyp-Uuc-MWw_R8nD{j0LnY{?(!3Ux>Nf0nZ?F3VrKBq=D^FWz^8&&nn2 z>{use{Zf7GhJvkvq8P41rSvog$H1QDSXm~_(PxMGdB3ACzEjSM?iOt_X+Jb!Lp!Fa z_X0>fcV7ts%yg3`55I|A{45ym+0SS5V}89I7^U*RH>vR9faHoDJS(#=a~U_i7gmES z_UcR7m{rEChH+m8mjTzODUap9{>JXJN`Cm%_KOQK60LE<9*I}GgkMj7`+i>Zw4Gh( z>-*E?yxy0ipnbyBI+q+*64-UC>g1;J7&33^I@lnyZJQ5vL?7nO9H^ z{l`~K>X@n*tmDUnI)<-&z3Um4W^zKY#s7_vSi?%l=5;h?S)(4!{tZtiwmc1#FZ=QIzm*c#m+WTW~81W&q z7^7^{_xGF`!G2@2qez-2x<(utc-S2Sgx1CIaWohX8;DI8$p#B~17S3~)#k#_nXlJ? ztcB&rXJ9HP$!+*~G1J~!Z8F4HIp083|D-1VVuO%jLT^%6OQ!#ZdL}c%dgRX10VI$KfM6x`#w)GKi2}Lk$h)m_{%5{{W7vJKqOu3ndi5L+rn| z%gOnxXNQNUPM-68)V(yr7>+`J6_;f2x?u{;vN1D%uA#^J{-2>tJiImM%NL>UYUhTE zT*J)HUlrV@dLsVGtTtNiF_5_JV^rQ0z5c>|=}Z0~(-clVb==R}`XKr@D+bMekE8M<^>~_V-WSV|;jx@dO$AP{#A` zEL4;J$8&Q72J`XE!McLV;FU>wICGSw?pDzQPm%!j6uARepL-3?!p#K@Z;rWm^X7xijPFZ3uB3^8++D#R^0cAzg8&iR(utO zoNZ7cJ9&5$K5Y|&p&n8>p2e|fb1=0M{k2e^dn`gLD_ps&a@G6^fd=#Ae@}(DfWF(*nTMLfM>GThd$R#OjB8@NBwQRcTz;UpHd; zJLCWI+di6|Lz7-r0ucE7q43vDOYTMGzq#&|0{@Sww_vNPjn+ojA{HS?w{%E{ba!`m zydYg7-6hi9-3rD4|?R|d29M_o7h&x6rW((D&_G0p)xa|+~X=%!j zHo&Ykv(G6tX=lO}4X3OJ>m$VPem0Xf4PYYEBb40A`uhL|#!h2)?UF^p}p4Ru&q7o08AA5}3H zD$(c-QIyS_Pd39Y3+}PSjJtfE@bfB>FU4)x92+Yb)c$dqTNx{lh+6zU49CJhyS-*+ zZdsw#oiq-4`ed;q)P~{7INoDLbY*Kf0j9GeBne;yzlj8ev;(QZZ$*!mE{hq zdQSp4sI)hHBQaWFh6b0F=@cIN?#0E&OZqX)+y3AOj?K>-EXeja1`q@&#?o8$4apM1 zemV3(|CRA5sCAv->u+?Y?%$(!;Rq@(i~I%}txH_9UQ2&YNYjTQL=CqN0N9Pg~_ z^Z(Nlpq8;P6*h?ED+vO<=Nd6F5N8;!0Q1Lf?-lddisTvj|NK%hGBQScj<-83&SvsO=K0`Bnx@MU4ef1b=z-et+ThE%Nf~ z8gr*SeK(fUxB5Xv#cD#FxEa_KQGO#qSqKs@t7y?9bUf9G0r+JBB`tjPeit&BG$z#| zT`4JABx$ATuaz>269sJ%5ZP6PU_juSo)4(t*5B@3d(1!%nTs%1tP>y;t!vf?!sh1j zDacn|g(CaorZ^$qVX`|#g{nPLe4^_pa;|D zkNXp~3XfjgpDg~_hMgTOT5J7Nvyg_p@yv&U|9znC17CwJDKB!jwbBd20rLpf0 zq?#Ph$&HjnUpovfJf?$N?@=p1)y1psa9Y;w;VY}Ly-ztTBt&%`Wp$-cM`xF?*~smQ(v3gTU&pkL~uq@)s8-xSn!+zUEmu|DMK zV4U19B&A-?&TJ1VO>5wxjd{avmv~MM$p4p+hlYy?jZec|_M(iT8P}tAg}b@XQ#d5x zv#|kuEcE$P%mA80!H+x@OqxkOUGrp-u9hdr8=4rlUo_ItP(jc4_p+PMuxl`NA$c9| z@1Psso}d&gisoQOW7&x@g?MpR!>$&^>91|6#|9B?9`O@rKp@N6*kUr&Fw1#^!+rhU z8$Xr4pQ&dUHCX$G=$8gU#ItZuo2s;|MlT7<`ryZG@#=y4iy*A!OQ26%sudi{LNBIA zDQb$hF?ZYIL^Zz})3+o#cVdM^)bXSq~II;?{ zg6)Hi6|GD+Y<#!yMk8 zWRCevMx>BOBySSe+uLa#TT3gTk7crQC?Uj32c7#f2n!)r#nq1ltpsy|Ewo}9 za~%VHp&w-*=c~4864;@ND;tV>t(urB&d+7Py@GY*JSA|TI8Mx++S6tr`vUf2ExIvt z>&g8#8lM@@O-c<&mq2C6LzZt�`5ke2Qsx zGMG@^`nGaiP1qiahd2L1JCH&es7fNgG^8?f^==WHa*%K4Tl%&2*f77rkYwOFTGFE= zLig@7%jNN=*MP;F5>`oK&4ymi)50i?<`$4i2S6sFmPvnp8~K&M8ls$G!3moefZ4^% z`&jX*>nFzM8o&;L{34D^FC7EP$S<@z;ec@X(pC0I1@k=ztlG00E!qWWGxDnIa#9Z^ zjoQ5~ME_fp|h=u(Q9fVC8*~#vuW78 zrF1W+PQv?Whu{zF;5u2-+x6Bcx)iGX^wy<~$-&*J?`>Q6@5>qMjXS}csyer*H(;e5RK=}B@5=(tg7L-;i>AazVd&vZ_gSyWk~<7wURe&@V1<{f&pYb2 z2oEzTKI`kFHQmgP_i%evUtd;I5S5A`6-Z_t0%E|f)OL)s7-rCds5rk)-o+W?mHCsp zu*pO`46=&`7(bIS2vG2#PbgzC4o9WjXGvm1c{DJy_oRFV&B>dR7SrG|*wl%BBTD?0 z?%II66Kp1Q(ey$~0bO5XZeXZhNG`hH!P}tJZeJ4Pc8Z&vP;qCRG=}X}3yVmb{u%vo z?O&c3I)0RM2@+nQUS38--kKKv^u^Q+>qP#o_uD_TYBZ%%ZHDR+fp~N(qQKrhj)b-b zW@rV*VD*oUw>E5!AON@7LjsJ9W$c-ls3OiYMbhJWB6(^aHC_+uI9M~pI6ziy>P8w= z#0aeX$2N!Af6XQpB9u23Rne0y>_GihZ-uH@L+R}U&5A34Sv${!UsKmursKOVkj%m% z5&p;e^r=I2OHT_?TQfntUj6PSk6iF=U0FnELvxco1855e19yBqma7Y+Cpt*l{KPkM z{|2GulTucJFBda2$<5BZ{o&)lAhn)74ygYdaA23L9nzU zSG`c|j_G&zT!lOBgf04;EmM*I$71vbrf+g@ zZU`PF%nP3=a$X%sqzL5pbLl4!D;$>W8ie){J3Bjmzz3!#omfE~a@ER4=7 z+vKo1ZSby=E#`zB;}0mf5tqx`kNI5-Z;We`8<+ zP`O9O*IpQmj2uawPa1Y(CwN$ySxh5R2EHgjz?lAt*r~Mq=MSCb z2Kg{34GW}Gups{oMLQFmfqh9T(a|M1Y_LCO9y_1h)BB)&x`_L4zdT34C!2(x zp5uMV8(SvWgK`~K9z%?_IvGv6g(h}6#b(#IFrtW(51ityfF-B>KN`pVP?NfrMXlw8Mn08+d~s=OsSjQKWa_lo<#-6PbjHS zclvTgC2$xEo)u)ZR>=wCW6q%6n^~V9utf+HbBy4g10@-BivFi?F*m_G-;vc zg$;;u)IN3uxMo@}yPz?@6p*E(vV#^orDi*6?UlHnz{mf%%41ulkwXgwDTzFIL)5U+hWQu4`P7Qnt?ov^kyCRcpMc+`$`;go z@$w}ze%lYOi7)nXMsI?-Fxq3e0MvRkhp(LuUd#HlU#{O5PVke{r0``DdGRm*=V^>O zO%YB0A@me{<5*_4N4|B!E4w-n?VdlG`BfzE;pHM*1vc2^B!_x2%0Hr>D4WMEVvy41 zCqYY{J+f_=I+QW%l|jIg(eQ+&z3H@j%7yJ*lMxj3GFfXmzvapik)9W;P*tRmdngGo zlCDmPKaZB3Yv*QH^Wy4~h-wEFv(3fW|Jwko8LP?ZhQ`YFe4FJ^1(by~=sJd!_yGz> zXJV!7$zh+w1I{d|PjY68ssg!JK(n>!-Y+lI)6U~Mo#94lsxUk+!|EgoAKx3yf0OpB zhsId2j~}WVSictRy4ao4&^+l|4PMQ0grX)W;Y&EZp!aVCd?5~--=cnVOhVc`^uuGm zUaI$iO2=kx*5PgOrgWJ>CPzz(!tM~e6KLNW%zL%y@+zI(8w1SEqwti%FH z)g&r{v1wiTTa%cnYQ%wK}B>(#_m?c%s#ftu03IwC}k>I zD(CLIvYL4HJxg9P-MFjd2JiZNgElXK(NwF5izPSV8^9cfD(lv1VcO^ia&>e5a@B+F zg6pVn&qng&|A+MFo%`(b-<&%7X9`$Mlw?%UcZ8;AmZs{x>x_p45TtJX(LOwcvw!pd z2jIIOgmEn149-llW)gv56_PLlg}$TyK!0&MaUC>0TV6F zR5n+cb4eH57fQ~gx5=Ox@&To79+utNQYpJI0Y;FUwKw_uuqE{5Rsvwb0KK<-I|J7# zpIDCk!qo3_qgTk|fATvIQ|bmgiq&o$8roCg+ohcQ zh9rx}NzdzjFH#?A{G+;|(cG|h*Qbk1vr>=LPS|I(885C#qqe?SJV`OTfiuHrYk-Bg z^Y@p^$ht~EzO(tj=FM<@0w~|1=hb`p#fQ=TnelGBC-hv|RSOrVv`EEB3`X*&nLGR$ z70U#CM#VR?CEG4LyVZth%jnOR7AmTKB<#$R0wEechM7T2ozr&!~yv7QS6hyz)QE^ocqd(1u&1c2UvPVoW8d ztROpp(yS^aKZFDl9v>e9YMTbp7o2}a0qTAZ@9`F5fKFw6Y93vLIAG-J)5x^Bnt}$^ zTDx;5vk{MS==%?OKqF?oi|l`Oe_eRJKdz=8d^#qkJ476jvrAt6^YiJVxmK!BKmp%C zN*>eqiJie~=pENnyrf6%#dWi291%np8DcrA#)gHP8$w5B2Q15r0hIW%_%T%B0)2>v zgd2URN<0#fok=H)u$bu#PNL%NDzr1lFZV+jjd;I3#_xA;@A~)2 zgYIgN7e|Te?MDOR6DR7C&(`+AKEUWp7N!I7AC;I%MY;_N`7_jO23B-RQSXPCeMvGi z!A$XF+H%4+b(Pf65WwhCD8I)f>{S4LvpSwP^ywEZKMlAWjU^RG_;EgbR$bqwf!V8g z@~UiM0ki8hWl8>#UEQmu=AF@PO@~yArP+-}in?J;Ou_kT(S`m3-6yKF>D=#fgLE3~ zg~1@HG0RCy8=NU=&}ISC;E=0q0L>S4f9Vi~H0sM7@G@#;?EYbeEtl;7W_v+;xVo-H z(q|AwwxwP>tcm~40BCjulDGaFTuWp8IHGNJxg|Nt#*z4mba&jK_P2nsX!g2Zs`O|Z+YJ5! zy|+OgEz|yS(rJQOa51GWQk4jrq+_EvDR+s1v3M>kt^It6EVLp$D}eWfvhIC51M$^_ zB=%G~|4iijA9^h2YGtAm@T3##az4NP8?dD~ySte952u1d+XU+~TUVd%=$;wl(Q3j> z#QjJ-NB!p7AQl*$@O}5sdM1!#co-;z_xaocDpc`lrul)PPw+P-ap~UXk5{z}#t!EP z#{C~F^7@W_Q^PxY%g;QK2B{8{9}t|QJP^$oC|N-nW=oyreSO&03jZ&62{B&|T+ly~RBB zMgi1Eyv3ARXoSubn}b9k)rhIG3E2Y|RLXv2zcPp>fKjK-{gd%1xMeO==8tQoZZ_~mFuFR1eAPK(~U*-^^x@S6&w)I)GNFl7bSAzug7a)sPog~1XS@8 z>8|;1LSCl)26KAj*1rrMbi9ZX(NUA=PI7W3dz7id=df-X%|p(^1zVj;ymOMuG0(ZI}F0c zNtOw6cuzbxSG3ZizWf}Uwj=hm{n2v@&nfN$iedGb8a<&!2IZoi@AiPb3-=DQW)e1m z;=Y&z_wrc8q1t-kfJ$1gBc0<7f(GXk^t}I4yyE`0sQb-&xh|&S<6F*8VxgUdmNAq* z#esBH|04TBskrB|I*y;D;+ub)AMG5DRa{ zxQb<9yI=P{%x59zcsvtBQ2iH4400@)<$v>bihHf&#l4l>GC?(avri&=f7>Pa+*uWJ z&t#MB=8?OzxZT4oBq2DbqeyuTNOI#)vedUZj-6c<37Oh%ki)cWdN@;6UQ05XYF0MQv8!ldOREesbGzpIryk5bCgyZPg5EdYExrkyshG+7DQ75uK4RM9)jUGv9%_QYDAC5)zuw&xuc3Y7I1RcF*^A3Orx|lX{2*yliuo?!Jf80z>_!vsy3n+T zjitvw)~0HDl34sq11BgBtm1Yb`0p(#EKH1$AK{?LO3IRRcL_7<#RTeV5xVcca!hXWX7wR8O;|Lez%G`WsKU z)rLfQhQ1~c5n~nF@Fx@N@sWZg99yc(!FB(o=*(%5HFE)&=j#K{oVKRiV0j>$NHP2E zr$>C69{t6WHZg3dkj>i1NqHB|4}G~$=0>X=VGHQP#IImMrw1l`e9i=d8f~%f&I zDjnxEURSgldcQye5gR71aFrhb_n@e2jJDlYg&(=Gn!(cdq*rENeCyhN656H((VcX7 z5N=-0eOCZ|2Ib`j)hvj8#Ym|dGe6RBUv78BQ$+6|`WTa2u#9{itXSPI?;=!1WH8&w zmT}W;aDxL2VvobZq9eA9swQf*frXJ)Eb7;fow@9z4+j5ETaffaV4fMOTV5t)(1xgJ zTC@415zx_Pj1m?7{b7hl8(r%59RV22F>%6Wv4yNNq>4-sGp=s{Ym0=tJ2#r&l7tva z3UbAfc+CIe4^@Ur@apm%ot3T7`uu@+!wEYmwLjlhZ6_j zOr|gh$PiKTKT;HQh1YWS6W;LzlmLh0_cmtr98Pf@cvB!dQ?Vdlxl10-r9*;IeCvDu z{o3@0VAZQC!+ftR(sItQv2R8l=sQNY`~B~1P&;Hencq)8zB;A0{~+@Ay?rGMGH!F6 z9JYuHL%=VC*ns05RuAllD6g zL;LK%_x4N^Llch8F2om+fF}LAW#rNGF@*p$`=YF3^R~To*AJp%zRF*|_~IGY0Ga}M zOkC%i`gXWvW!NG{Wo+5-ApGgGm5wQ*2sM`9vNIX2DYsabvElVk%308eoK|KbJZcs# zOBc!@Wysz@OMg!~d8bNhy&g&j3#ugsVUZzc_1x$>A6Q%{dJVuy3*bFMFWKrEW-UWp zNYvi;SPU#~T1>kP&nLXpN0K^QqrMacpZI=oe@N`3V?k^2*x_-+cYf*P)g!76u~a5o zL$MF;mlC!x>w{}6;NJbj%r{`AmpS(L`3)8K^tmz+9M)d?2?Y3Wuy2LCWU--RIlV2) zW)wWF2QU4BJ?xs%1_$cEUkH0>9$^LGW8xo|D)(>*OM^^YT(UTFmI+9Jsf3V&Tb-8( zyIZwJVR>3KbLp9qU!I94;)mJaEcM@DctfRMo2MB8C;X3}FFCOE@s*9jwSu7lh zj^>6dW%Pz7e7XIzh*s`3lFOqR1Eq$pql^$(rh`>CuxzRe4XQn$Ht1L&EYN#m0l8MU z(^9KDJ5?rS0WCNJY?;`;<1iXAa3xhHm;FAqCq`mGF5N5Ig*zgY!y+f{OvlRfw#Xud z(p4(7F5NxUqF>^*w6rXM(9I!_qI5$osMmjr`i}9g*4BZ9Goei?=IHZ zx)C(=3_hb9A^Q6H1p?6H^e3Y=w9buMKS97fCpYoO^;xTMfqLmUz?mdlFvR{B-Omt{ zVhq^Y#Z(*0YVD}q#dxgg99Mq`2;&^TA<2x~G*dcyv;K=}+xK^HB&P6UuOzD$6Q#A2 zAE#e4VZ2ukroa2@UAmVXoF3uz%D+Y|!Kxby{H~*A_`Egx4K{xBXk)us@jv$4cd%7i z0{qTlMjW%@87!}dVV-iX*OvI>m7jNbeMHy3zlP6$O60QG;TaQ@xoJh6d>27^ zy5XKSQjPBa37thhS6A@`j3RO(c#13{^|09p!fqM)V+Dn$6q*8 z1acgN`AvYz@Z1DXhZNrMU$0h2R^&p?xY2V@bEE;_ZNmZXF=~H$`>wnDH}w6^~1F5OR()>=(w41YA2lMnQf~*66ZoG619a{?8Hvh80w- z+`EASdjUu_PLshVL0LIDvg{?wsS-pAu5Np$0drgW8XAn%6edKVwYR;A%#Vh!FHgZ} z4^CmEB6KEGAX(ocTzz((XS}KFzj&90)C|E+Vks6Ls5u{F~_lcVuI8H?{_5=`YgBn zFCxe($;vL^tA(LD^k`KO2ACDMlf(ga{@zgFeFJmA(0g9ZeghvQ0Nwu$VSx5lWSF0? zAGlht8BlxI{^twgobQadLO_2W9km;Ct)Qeboty0M>V0IyQJudu)nIz>+Cs>W5y$>n&-;Y-+;;!3gnReq&GiqoI^8)@(Ir#zz z)N}fgf)#8l6`jymW*mhNs`5Cf57qiMf^YD`RCU9R-fkVx)L?)G<9{k%ojzv#PXVR|jU+Vg*CM;&!ZEsjqr%3(FK7td###j}kI z(S*L)W!>J`bK|V`kf?spZ*RuDu+kF#J5&UZMk|z}4wlh3Z8k9OMljvcUb9LQb98$5 ze!(8mTbl{ZkKI*_ikyp$>BoUdULToyDZY*t7V~reqzfp0AJ$Ra=w|_C(e`XZGPbJMXY94suh|BcW1IvRycPuvfbK7k4P-e@Wc}D7KV64R z3(iXWd=B%#_YXIkgd%qxFT$vVJGR6ur+*RONo6sXg1)wHOnC!t1+NRCq|-;5439rM zXj^oCu+UBpfb*PC`-m$+p=iWKXhIJG`>*~tQ!>kqz8{69YFJKi?8)DQ*}!9Ciqpp^ zDLwB*v3IvhJR1*?%Y>aq3YY^ZNJ!psirOvy85q?RcwcRThbZ|aiU7p8EB?@YKx$gx zU+LdX8g_OpU*=lFz{%`dv}_F>)5e;u31tjm4+87__TWv%-jP55kH@;Adasi1=sAPq z>jz1`7b!1`*UOVWp(Ey@;#Ag(BViWftKzFh?{1AIs}z?UIyot5#*e6{b}AXtI$fse zxmjz6fdE7!q!zJiG3PS!Km-4xX9A4>Z2zmmt`!o};(PC+oup3l+)+pnms+|?D%Ne? z(2q7$p%Q!qw)fY9nFG!v}EuR*!u>Rj4K5(6^YlwRWRJ(NV{NLT{ zLAS5bWND|b=ja25a9)R&t0pIucpOXrec>NNYgqzlyA{aG7Q7>0!=|$=Cr4{0o_FI@ z519ImM||>RLNu_m9dL1k=Y}V%4e#B@Q0~Me0k2k2C|~+k5=Z?+o?Mng*$&n*Q^Y#1NyZtG= zNh}f~-5sZBr$E2Qa~vIEZZiHS{qzyYq%g}CR1r*AAttP|3v=pPDUEq5y1Kl;@2ra8 zt;~vew6VLhqx$Z7Fe>@`(TH3`q%y!DcgemX42J(sc|LThEgASEA{;P%+eJAKBO^ z17$cD_+#skS{RPY-RBX+N4d1tjVQFYmIDHU$P5?(Rq{Cah z^-{dG7yH=OyAr~pdqcT?;o!*)#%OUitBH{3%GTpfMlgjQh#6pD`E9fNVHCkTbbJ`! zX5fIB%t~Bkv`Uc3pQ14Q+g;LcVMP%Iq~OXH*-I)bqj7R_I(JJ_=7tSfwK(4k?S3}D z^n!*w`AqNctCD2y?pRo=HZmu=5F94Or$||s(;! zv2^(urR@V@=ry#E^z9;4;0Ow>yI)szvcF$~lImJ3xu(ou4Z3M%^(pDf`q4QiEXZbE z@io?*&9xu3=fQ|^aL#&*!rwBZYa&vCVW{{p+auP!Ez87f5;{6x?b7~cwOd*dLLLFS zM-@XFyX83V=-Nd6{Tprr5-vNk#M>s?TR;xH(EdU&3b>CVtVc+F0P>W+xRILUG`wp| zL-&pmm)7%OPnMYJ>pnLdDmuIcyqKt?l;g&5RR*>4Ep+wUu0I^7(A~SZA8T1A zw^Zz$imryVFTrOa1?Vi;oVid0CafbEMl*JUqI>(bvpi%E@!^A)6T3s9{V0Nd(x|%g zueP#*BcRU`A=euWu|#Dx>aNXjxqclfcK07jLkScUx+dTjCKaB1`Yq;gL0b5CXZ-Zh zg}9@U{h+k4y(;cDrS=h!-Lg_J;A*cjfk#P6>ElSUMVcGeCx89cP5MIqdUpQu9qLKuqV2g@3NNb{N0p3oO_(}zIzW11#(X!KW@PcfJcV1p4$R1?* zcPU@f-proUepSF|Rt7mnn_fZ;~{jTB{-p&%Ut}kKe0Rt{ibmaI(E4DM0w<*qhRQr zdeMUTs$FHZInO2Ni?=lTGKqZj^(AXiufg#J{Hywr^lkkTMvlFbArCG()F6a8g4G=` zHT z?_fc?^k(uNCwKMVUD~~4c0b|}oDBsV1j+&c>>kI+zJ7xqGMxB3AGd0_C`Xx#De8s19>;giq;}IOlfrv zOExuxH{;o@60VwGMafu{jp+n!R$5$LdOaD|_-e;!@6jA7nE6t|bD=}Hz2=`K|-Yrivt%ef^ zLiVW94r7AIAL^^2$>loN*TQ;I@(T*myzvft~C(DNN9Fz=Jo2#4|%p>;h;= zE-_}NPR}Y4)uEF)^_y>r!TUd^(1|kkca6IIvfE|w*QRVBnu7L%gsbu4=A+@`YN~wT zTF%pRc~L_a%p%I9%3wzbkT@>7NCmYMNpFB?sKrCqYoLS`WDd1vwbe9H>#MIE(qo>ACiL+3jwFuziSscGK}Ga zOZ*XGzkzE&myTIGIp_{*8+ok>lbQMe*j;0>!Jf3A|0=8@Gcx1)&?0hZ{ocVQO;9Ct{3i1L~R(;UiU-`Kf$W4GXsP=BJ_unI;t&Wu} ze3jZaTm{Li$&HAVrxT#ac)RX=lgHd{zF_FQVz_BP_l=#eUJ>CxJ@M4)T5CmnpchwB zL8PXpRu}grZf-UA1oBPgs)YfJNE`7-`J7OJ7)50=tL$ppQ0G_xwZ`YuAxYpPRX<^oRwIBlCM za(bmg3tfbZl`!wqzkIBVsB)`p8t1ZWEPe?R19~MBAx21-#En&JIUT1V=0`Y~0*@Hl z`D?Hq7!Q}NG&e~O;r)k{K71$e24G8BmWFC&NPNn%xFIbL`Sk`SvL3v%12Bu)CCA)4F`n+`Nn|giB0a~^TYVutqvSs_ptd@k`^IhR{ z3E(md$R?H~s5pNKn*4_w4Wp)1BlivD`Wt{pTKNOX7b|xLm^3h%Yo>54@G0)IXL*#@K48>bN*5DGLE>x9)x%_M5@jTp80U zSav^E1J&1aQs^aVk=fMK{av;G3%&-DM7eRm_6D88H#XRdTj3XR8+*-rRFLKzXT1Z4 zK+%*65|;NR0e~0&ZuY$3+aC#}=it$(KrVx&5m{N4(c_ALU5e*1U!=QRhX z3Z6s&>PeXLkb-<^_ZjnHix8wwF5pp9Im~ z7XZ|uxV7=@8=&Eid%I$RCUjgzJ5D;jrnJn}#yGxAkxmUw#(f6%;H&~Xts?=ioWC?& z)?JNI1HO;>xGk4!gJX#K<;^7}kIdLs&W>qJVMGj37&|jzeQ<>meebM{(W39}KD!ZJSQqfYdR!ux~^|{MU z5wKTTH#nqa$v^o`JGYNR)wX5rw^et^(qr8(H`8CvXjB*O&`zJ+=S$uL`3h&6@e^?PUVmMm3ZdG-kv4{2gOxe1t+7 z4Q;vI8}Ieb5!&d&`0$Snu<@A!dRyb4&2qSHse$@mp^b>B@UGEq7!DgJ z_38mp^&omGIZ?VfRC%-#+_f%5*iDN-r@j0USef=Gtbi7z)+Ps_gGms{41CM;#dZ~IAGxL!J*nkXS63C~WnhwjdldqK_&h1%-Z5GGwHf2r zIpe9^m*L!t?SC-+)dT2q5e*&!+KS#2J3yq(2xw{fZk>s9IN7F@r-0x}p0{(WU$(rW zO_(M8t>^*Hh){=DC7b83*e*Q0M7v&Z&&Cv2%)|2|L<&?tYkgOa7j(5n@zZ_rBNEbs z%jH8#*SO*_Z>XCc)jj13-EE4Xb#6XS9OG(<7*=g4S5*dz1C}Jx2cfScCM<}=tPz|c z%}G6Q##ygu-1G81_Q=bBB4`=7)NVaP!oT0Yy-P?q447=b60co$P52?XGqrt14n(A< zmz!|ewOerx9Z?6RtLI-oQY2kjTymqZ1gbKSh9!)qS}lP=4M0Yo+akmuPy`ML`LiJX z8ySB3Tz#A72eYbmF_DP$BT`?w^mR;6|z z(mz-S-Y%(V{u%WNo=u9%PhK^UYM=!4{M=86l=SjR;x_%(b7}g7v=1(H@~dRzv1D#d z{+QCBCtGfLz)-H|2kFprgz0>KW!`<5twTQ>;z#Wm8DQK!E1jQ-q5P2m*6FlH;H(Qz z!&0=fgZ<<(MIoCshNOjEJCcX> z#g2a#nE@y7cTp7N>8W@WE}kCE@r^Ngf(zPbeZ<5N4>>^FU78_Vu9Y<;TudJ;yHddu zLEp^J;-1}m3ux#Ly!p|r>XqFa)vaUC=^7d`&CijHVVt|^oB18WK7Bx(DH&0t_(%FT z_2kB!sO)993xG|_ezxq{&#f`7zy0NtY_c$q+Ti{y)uHz#gCN*;T%YzJ3l&G$B}3I0 zoTT#OVp-BwOF{5i8U-1>`H{VUNu`lHU(<0e5>0>&m2ORlpYH}vz6`Y=1=K9fx1DVDx@)?&_ z(#PtH$R|)dg-QC?tcSwnJ zH%Lf#=Y0El&w0=H4`$Y0d+mE&`6W%I+WlPB!M5?HJ*In!(E9!+FQ51GO%B?>?c>>* zbvdpJM|gx74h{9;?pPwma$M~9;$axM3H%e|2m{zG=0nCr&rs`~Bkr#bO*ud_MA5J2 z%umCoJl6~)fL)Ja z-Gu1|0LFqztLXw2%hW`i^={WhpH9Kw*4K20z9RR|A~HaU3A6;;sR|~1Tf_>6$+C`| z8T=D$i4t4n^5K{1GBHz+bL`@00>mSC30R;_5x6)zPsaLVJq1=ZuaqOGuab5!&@xHW zwqxE0+-T0MwJNXVi36SA_FxW$IeJubx#O@;OLewdw^ z9sDyHdEYR#bw0H?FP2YU57A)dG8YyW7FpS8L@>ad5|dND_v(nO4V1Vuo7_3= zY>I#EPb!>C;P+$rUBD*C?X*k&)lpYdlLA^)xcEN`S`jbxc*6I7tJIq0v;$;CNGK@? zNB`RO+Ff_Z*iXIBvX~z|L=s}skw;o&IMU?5;MbNomriJWbBmF8kx@`6`yrHzZsb7B zHj*fn9&j3fPEJ0L$jBF%hU{1C5VVOom|oeSrv z@JkevKyyvN%!HZjuy1slH}8J>+OVGE#&=dcY;P}Z0c8au^R9okZ*NqvD!Z_4HPMXz z+cwdDcglZGCuHMiXVW}Wxfn46fC+-Y_ec<82hs%LqKQ5Rh0z(n6A}{UW$4}J@MnNc z@X`KOl~*K4ejXkt;T>5V&J@o@)Ob188DsgHNRVkl!7M6x7yEV)dk|k+%f-ByZ!+|6 z;L>d7Syk%$rA2Oe45XGy{8lOk!pEJ+8;1tZCjDCvW>*O{Z5n1JmH+ zBcH$9Yr7 z-dr$K8fr;a=YJ9T~U^ho@o+@0!FrYK>4pDOyL(>DS_)ie&W?M7Bzn#EVK<$rESs{awHyENqy|6y&#s4f<`p)_Y`p(Og{*xw1Z+Vr8sx_> zeODsZQ0Bpgs!sKuSm9)_rNg|ecusDnguhwddybSh6T*QVSFVM{={Mi!qI;7Nlf6hh zKwM=0ctC5+AcVO}JU`FvBlS(SFn?P?M{^Pzq4I9pOiq)dkY(&oA>g)#MZe1eIwh3u z&)a}}{Y&4W-bb=_Z~1w!oo&{^?T>J|zHj{j#=Q%xEe}_(`gAA>44fM_8RfSd1~Y5j za_1SDMT>o_LtaN0w|~t8Yw5;l8$gvH>AQNRzO<4Egr(Ozx*-jRewztVH+-X?__4{o zSNy@`mnb;>A~@1|ndS9m;a3{!4BT`nroRkTJ+_=tys>2`Uvn>#gA#$tm?yN=QXT~9 zW}=Vkvzp)hHyh4>3*5E2wmC2esdt@VL~1OJHJSU}ykS|!{Biq{?j}hw>^>->zbCi*%3`FrRpgLsL=0knY$x6q9B{*dM zPhzilE;m`(_oTgpy1)Dti<9xhP=DDq(9K-0y^zYXtkL7kE?Slh`x^qBUrpz+WpTY5 z+AYtV+G8f~&C#F&3bKdvwF65Eo%?- z>LzWS1vr~UhthpY_TqXV39g(?;Ds zKr3fwdB}KH$1rNRgusW$N}O;xB`r+nA*k5ibboj+2mM ziO-&n|JA2_d_7t^5~X<2B6tF%cw%D4=-pT!BfV7R+89Bk=Ei!SHs#m{G3GgtJ z+u7&!1qvRis1$cM;wrnl(6}N97xS=VbZxZ=xs>uauv=eW=JTk;I&$_Ne7zUewap8u zsqwiA{@!zLn>gSjd}xO7H~rjfBTMdut&xZOJLdzLSmBB?vB@L|?+!K6f7|A$f`v29 zADZ8YOE6p9kQx;!QrF~Iuof&i{~YIc@Z1};c)mz_f0%H)yL$!6(d=nu{(6I|Vq0hh*@+?SY30CLuJWqNOsz9K#Y^qDK2J_eBF@uIK=JuT%qvIC7lOPj14J z!J;;NU&KQmx6}1|sZu7Pi zwQ!-M<51a#sNEosw@hu&#s>%!VOlS{mR1MR5c}E`IhHyuR`8h+3tu6M^8Z^ z4?PYx`EN-yN57aN!1@1-wT-kUVv`Lsw^%tpNVGXv78S*9H0%s6Y7PHf{PXi?(W_(C z5uC`of0x*4w>@V5nceNyWJ{?`MNiR_FFX56FCCT4hy2emM0$5RfiNP!vD7N=scs#5 zR39C>PQgxS<4M8G?*(NmE&lCv3*V~zE@5@UB}k=+PRAdM9R!WxtlQaX{x*LGgg{D= zjSM}y;KGEmNdy)sv&A3JM=4Ex{aWlffF`^0KcPqFd?>E<3E^4_(nk3%gZSD2==yAz z)!V)HKDK2EC|FEpO*{X)Vf?w#o!xCm;c-z3bRxSPZ1oWVq1dPa1X4!3cckum9rh%4 z>*gv1Y+v%}-&E2mJ)})0e;w2tK{SWl=|qvfcZZ!BzW89VQ!`w;3ewWkspFE^c6Iq! z4Nt6B+`s4Z2#lPa)$0Et3wxwW)6yV1JT4xuJu7QcF`|J`H%iGlO z`R;;68~hzj!jo_AkNN4Tuwg>@BvQ-s+}U4c(y=np3vU=QwQ~)Tqjxu@`KbY1H&k)$ zFP-HAY%xRa?FV*76QI4Tg?=OT4t--io8snx#`O#lusjXp=LsQ!pHkmV=)rO zxoOTASM(WYV>0bV4tCsa>z&Ni%AgNOnAIgXhLQ)H0t4nyGIz2vy?dAroJCJ8akbLx-op3hwHPJt%{be`E zXMX!BJ}SX8L~PE{y!t8rbV8`nKB%eBskxH`ZFO?4v*?)tXTG)(bpSyI)Y} znMhIV6oHRRO?Qj`J)Rtjrz`jsjwGa?{qmoauWHdA1{56R9@TKxV}U)g;AcobiXuQ zv}G%1)n`+jJ)3E7-ZQ0GNZbrb%bB7fs3#1WQBWDqtcL0xx`M7DlLL;Q41ElSDLO)R z?|3m=Lh8o+&SOZrOihVjMsjx?pL3Wt4G~dZ^Nw=LE#AT@0ZwV%IW^dD*uM1DcA-ZO z${F+Ho4JlVEBx=@E|$;_^WIaf`wzbe5r3K^{|d*4R-;r zw=c_o6ZOpejQD4740!|!$3gxhi`sE+!n&50Sfj%g{dK(r;X!fbSd}MeA?$HXdd}L%v1HFOe?To97V;HQ#^5HsJycLj!U{8ZiIn0xoE(QBZ_jUJotp%{sf3=|Go zYFea5uJ`Oyxr8F|UcVLb$3i{G?z*kbRaJ*RzmQOA^ltdEt2Al6ZT$Ab5VFY4#v~s2 z^D6%GY+a!!d`)g+RZ>zQe&u|hP=mJR?RB(7Bp(q)Wn*(&fj@>agYn@x%u~0d>=~m9 z!+`334A6fl$%)?TU$GsOc>m^hVf`5UC1)V zY)fZc*=xT~=7o2cF!?~)*>&55`zn|;3>Q9p43q#HIz`IY4O=sLel}jm??u8PtWU=r z1E;j930iVcuYd3Cg#)%&Cy2m^?k#*K%##q+mnov9ythrjx9efwcn|_*J0Yrd3nzqO z&Fs6L87Sc31P|OHG>c*4TFGuTQBDr)h|FlD8}lgC2K_DY*$6Mcj%P>P-y5m5$yh=a z`SRqgID9EF%s_X*$lkYVq{A9<9~MX@jF=vn+nc3V-fm#HOHMp_40`|#;ixZY3^P9H@cs8K<*KO0) zsN_blrfZOnlM+YN(*X$Y<`VoQx>BRe6dO}~BV-MG5$X8q?0GR)|9dp00=Tq? zjWg7K>1OK^og8v5ejp+t!m`dWhYHAOT1& zOjt}UH4sRxCPhhysrr8h;rRRConP9)3?RCA2=7*6uGGa{&I|-{m@QyPz`{=9;Ex8q z4VbCIg43~eUkNK~;tcoq``pC8j7ipg&ANF4;Y^NfsapB_@Yjvyynk~tWO@PkEDe0l zVz$yrh1@?T|6HEkyn*wes4rqt#w*w9hw-x;VkA0x{tpW_S$)J@*7aV2a|7c*yYTDD zge6;{fQfpdXFlkn%bnxz>ljwa?RM3K&-Vmo{IUj^V0*Iu%V~ zPFZ}-?8hwV6CQbkVh_u_dj|-A#yElSQq3(dB>+97=8YW+4Wo_EMag;7DOHC4V(~OC zc*>R4F#FX>403sSE;f3ieH!0>{0fAD)pE5e_iyK+I-%)x7^$i0*XfFn0sB1 znO+Y?pNi6!r)FmQ&4@O7NQ(o8q?x)|L=<{lwSo9oF@DEwmTW;s<-zge7OObqKHc1u zOvvd%%#0|!u!$gs56}c4wR=t=%Ep#@I9GnX^Ik+ohwaN>@!HJWV^I@g%~Fk=cM5+h z7j&n!^J9A}=Cw6bQ)~SlY&?mI2ZyGu-Kv~0!#-bh-p8S+s}EPAHB-CRWldg4P3!c( z!#ccsC2zmX6JnYDQ2@wmOyGNe`TD?bNu^cH)UFY;WVPgz{|?kL&H7f{FW&_lxuD*qq*XZr(+cntpCH zoI(7Ti0(D(1$Za-qdRx!0xWiDJ}g^$Kmka})4Jh);oQ<3O>{gyK00u~S$H^r=x)N_ z2tq0^I+@X$-DRmn@bv6>&$CK#e;*y`6&l>M^RFB}11x32_a6tuZ+U)D9luKgPjslm z>w?4de>Er@GX#eL01X3`6M685stguL{qU$K-|zB1oEiMFyZ2YjgmRLRonF5kpR`?5 zr0A8gmSj?%3q))V8j=ReK%VQdDz5I5bH1hQ7+OdC*aLomgkpHXFY2h0&n7=8_$VVn zlapaQK_oMa{4{-oCs*+usq&qd=SrEjBd-&_C^y$SU7??WB>KfiZ*OaxgN^784ecuD z#!X=T?|8?mxH%-Tz27)M2Ev92u=iu&X81TMh+TNjlI0Ep1lem5$KM_lH(?>WRWCK; z1|_?#hj!alB^n}HX3ULuJ9m0tzbdf5M@O}v1R)SUuFJMR17y--k8c&c4kOAV;*W%4_(93@ z%I(g#_y$7$Qn$n~AZjYJ;tw4yp&GcVyAR#??8Iy6R|7Fwv?OS|tJ+kmwUA zETC7Qq9A^I88q@q?Y_=FpMu`I`^!KdFrcE)edr6$EA#W~efPcpp-2zZ_vtV6jh)r7 zGcENzq>Oy2C--cAFq%xtO5 zF`HRY()2s;rg;d3Ab;W+wEaH0@hj<`E>j0rGZQ3PU#TQ&sQxiCgjB7|e|)8S_jZf2 z>)5tf-aL@UmM}JSA;9uX%>4b7w(g6qgzc*Nq{4cN#kWgcShbtmIvWx(v_Oj;u!lix zC;r#F*vWwuPz`t$D=5TsNa4+`d71&ofe@6W!jp83F@5gy65b;FuMe`#N7u`PJcH6< z)Xm{Rme$mm_Q~sHPXTREYRyM92`iYsWTRTQEuHusiX#3E@7hxD{nabEmx8~Mkm8FY z>ArG~&iIS#mix#xLFzLBO47oR`+7zMzbRf^IYc+Oa7SgL`>D1||EBexz!`8l zIdm%({+$O6r!Jw@Qj8($*7r80CTW*#gC6i90feA+d;mSFDJl4I)D6m;+M|m8n2!a& ziTMglr+CJ;972BEELzDaGy30LMSUqV9Rar?Xf8*Gb-kev{ka`h=@yupbdnoBzmd+j z_2{TKqZb;#7O>V_alb@Oc!>Fdeg2rpo=|d3zn+tF^1h~9?Q9?Ki3PF4 z&<5lj6bhOcl1DJ znhf*LIV>87Z|Rhl9?@bWQ*=0jy3}J&Y)#+H1nka^;0%D1G64cpm=>b<84q z|KAfb2A)uxF;#B6YnUy}(xgGiAg3NYAsJbI=n!49sJLQs!$B^b>RoE;{WyEU2dUM~ zbV5jdpI^`_=#hSMN>rkn=5A=jg425U>4$0Mub}Y-y$^&xxKE$GJtNi=#uWMebk~{E z5Y0n^9WN1sSfi5&@o2O4;T9o8bANg%fCy)*>db=l@xIq#4@@d{4!FO=CwldI0Uvuh zBgr|z*&El1Zx&JYX&huOBW9SLg5|t?CNJ%%MPR1s(9jFtw}3|6AQ+Lj9Pv|(b-8E3 z5lapVbx^$lh;y36thE_JRwc-Rqm`7vB(%wG(|n;7fRX(g%f+j%|Cup_GpJ`-)(B;y z!13B0GJYmgTK*v}H*H{6rP$dA#nIpwJpN{1B|&Y%>bSSd@fBLT)7wXbubYgtsS|BK zH;w+TzPBWe+I#X|JdYbT;Pu+x`(u9AmxPTqc>Hc|Z%kSn0Uz!YWQD^N=$^(!i7;ZHFp8g%TklZ$|fbD~1%Z}qH_A=mn zAy+ZdDgmH>_O{j;UGEw}&2Sn()phrFI}K&;KVVgVc0uTseGejVP{J|lMm*0rDqaj= z!*gN~`0=jwfuC?pb_W4;81$+1p*^N$?5lAEIj6~L9GL)t+7bbr4w zaHxl#8@+2-3m9AbZ)r0~2;a@~G+7TxsGnm1yUheE`4pVJIX*ucSFZU5B zcvs8fU|BluxEJKkJN$RhG4%8Y&5Lx&@HfLW2RW*E2rW&6mos=insyRm!d?Qgpg8cW zNqHbucL+N#DTBybYKowzl7}0DHJG8#^(q6jSBww@27qRdX_^}hpgQW(l|xT!;`u#= zD`q9~_Ay8wMW|_h_qtcYt7K^sKj_>XHsxGk^v?kwr$yN_MUD|-;A^c11GzrR; zry9kjPpB-=eH=6)V>w$w`o2+k=x5K>%hCeoW(%e<-mVl#53FLCnH|KLtfMKvQxFo; zX9^lq#51pDo^Q}moj@o8(_IuCFk9KKOhbj>Q$yj!cM#ZQ=6&2wm9@ME(n5^5n`AmFz78mTtB<;m-b$=G5UTH)d z>qD-QS`v~8nSL|$>NVFLU91oG9>2|?*#=GTS1yilPlL^~kg?*qRu-zfCUu>KaDu(O z7W4CW%Pe!wLSFTfxV5{XGsQM@!Tj$6!JtAVw7Eyr>4$?U_gwx?@`+gFaI~H6SnOXu zhnv@w4ooyP85de0vpxta5|1{>%dB9SnL2XY(6B#~g;ICwfJ_9(-7iO3T8SC^gKb%qXMc`ZoK*#d&Z0?P?hhy@hga zw5g~C9OqL#AqbNcx1hb*jz>8uD}gTh2R=Rma6s@12_>0+W37d$(v`{fgqQvU8ygj+ zE)nDfC69J)Z(3)HAGRe8@WphG&!_-U2&7VdUWX|*85uyFK@Vsx{ZjpQc)LfBU!dFU zZ&WIlxbqPh|70c@3Zm;1EFigzX8v)F)&L z3iInA5|T_y4@*GZaU0N=5HZ@gD#cnqy9mo6sbGiqd6jSy6+|#$ln;v-s{s21s7T1Q zQQBa>!VLrm%kTH2*7eBM-%LvSQHUgFtk-JnC=pDE+Vgj5RiO)B`VCw!CGR`BUvssh z<-yv0Z?c>fP$LJq!c1++;9e8q2(Z0aV$R)Kb{=93pMq}(2B!qZuF$@OjlvOP+Ou6D z%-sKj<9uhzL5V8qYXV+ABRrqXdwI?$=(P?oMR+rP`&-GQ&`KH>kS*w2~10gdX z+R+Cm4x7*-GX`z%E5T>LoYv)Z(pPPd>$FP}Nh2W0v1$uNT{Jxp{6PP7{1Z+(O~ZUf*d-EYOY zl%{$2?fWJC_GMhL8S6ENgFTlEp2Q3u5)OD`A+pSZ^hvQozE3donn{1eE4N-n*)dS( zBDfVHG$*sb$)WK27JD-odb5A+A^S=cxzIBka0;eo2472&cuUu?r55*)qnwYG{373G zzDi8+urj>-Le<{ow>~+7(8~j!m>n1kUt+{S9iIUSUfyVFt?4)WP(SwL5`S`|WKdEm zH49TNJDWCH1Y0RK)^Pw>B}{z#I)I4H3&%!lBiLHotKosL(RxLV*oCex<0bFR_BNrf zz@Wh$w25f`)=mgtKS~+-9u56Q0U@unDr*1jM7P_bQuQ7V$O?Y4;SI*M_=CO8oa%!RUP(QaS?1H#n(QSvin1`nV&?$Kao7l$V0X& z&0lMG=n7vg-pvr8g*TNSme&?rbjKF=tS5XsX5^$(#%7f;UVtvG{}?xKQR$eQ3^C&P zF_P`T$~v7}TiiO52cAm8owVi#vWZ72wBg7Ro*v|eS#et}TJ-O=?kzun$N~9T9VqW( zp6)n$;{ZMJDdy7BTov|EU_W+_av>)O>Ezn`MizS|7XIYX%ym0+^M!7Cb=mP(Las>8 z^wcIV5t6PpTPmOQ_dH8b=;~_O%({eED6nL51;Qk8M5;Q5^8e`^R>9kl2}D<(cZxvE zh>t%8Cyaqz!o?4&7%lMYq}@2vuMytwBPC|+#9+jg^{Im>x2Q{mm%ygqK`JK#9|KLiFm#2sm^QHj-1K}SQz zt!A1+bQ+|osqOq%(;l2RLr#1hzAd0bv0`}_lqU*@NF|He7ia_oV0m0@(dYVz1BpQ{ zx1-+-p*>|3x$XSBTN0$}2HA6kr!%Rz6SN!6)H_yNS6=Ec5WTl3G*>;r^KMse->AS}%@dBR$ushyqo)|oH8V`x0 zIi`pK(vjKq1&X3;!#aVqP>RiAgkuyJ9i4>ZHia1`&;ZGy^Y-PCXinFaK>O-+`b?o& z@eV%9SK07%5Xn+QQzQJ_r#eCieBQ?kKH8e)B5by~1{o<)wTEaTAa#y7C$W|j)UE}o zo5Fk=;_aqH=8Nk4Pmw+g1<}u9*KHtc-vrT&Fu-}(nqrpLSX)j`etCb@r zYkS)~d@1X#Pve4in1?}_u3z78Ib)UAzWbNS$Y2s>4Jm`xt|DNffsSBYY?=V99F5Wh zP-JeJs3^r_0W4$4!jm4q(?d}ot&s~c%lKsCMqyZbc+1%PaH^WGt?f}6XYEIWJuD{!e!9w>x*x@yf3DcvnIiS1tk(@JsJS;zPJPI?D5uRO#mPP z1W?){ZW4IvrgV9SwFG!ibYt4Qh;g821}E?RSG5SVWKdYqau3)Tt}%26mP`0P?IL%7 zyY{kOg1QM0A@wbwxjADZ+bLZ;&Bb`ZE8O6oBUlr6B^S=cToe%%DH8dwU)?Rp8Fb+@lO=hKiFlO>99t<&64ByTD-LTj1K!GobXe}(*>6`2R zmdR9&S({vJ0W_NiqB~QNIfQSl5VyOWB^8C5vm+veafGu_&eG~4XAISKBZxJSO`tA#sE9lxHc@sz z7oz&V|0|8Cu~SKpei1Z9Q%r~kl0>11d@Dm0^(~|+6N#9cU(hi0qfAaondRsJzVPNmYoFJ-NvA{WQ6aCa$qib{99mbrZ@VW|_V+)w>gi))QBPhcL48Q5$$0Af ze@f?a6Qv!Z=deJu=|sDo4oBK`WlZ;j>aN1=L9>2^$uK=9G@V{Td)FE05@NYSqQjkA zGH+kvEU3G6X)$#erU;Bn_QLDuVyhAMp6j0|$XcdwON(Z@*TXayt!!FUh)Gz}$bn&= z)2{ei5)BZVUQ>Ww2!@bm8>okLhO$S13EvZL(MH#!L8`+mDy$jTr_;b50)nz=l=(9a zV|?G!Lb2@FQ7%~8Tz6t{%YDz*Xe$_)l47#)){tB-q9D_uM~s62nigMU*v_O?tASP` z;HJjGNh^GoQ?XfCBBo}TLlYx{HnsqYI^QS3IN*f)2s1 zXF<)uuF0i}(lDf(LZ8Idq%f?7Ty~h1tD2V9=bN}^w!q1qyjdaqwHa_7FZrt_NL#Z( z5s}hdq=@YYB!8T0YJREU0ihY8!vf02^{%F-=F1g?_7lh2N0>SJz1mqy0)B;OBSDFOytaLSx0wh zL2zWy9r}c(z8Yo3jtZ>945ww{yz-&vq3%yxAyQ$d4DFic1j9_^R0FnaOYfxfY%6MV zEJDziu%|UZLVLcr?Dz)Q%5a+<;10tga?$z$CPoerYbzC z7`8r_o=yAijHT80nyp&5=`*+GdaGL|aRpP6nFtabGI2Nt$N?LBWWzqTFP&u@e74c5 z)CBL@3144QkaV`GKKaw_lwX!~Tq)tx8`sq8vUIKK_5n~-+WEyvQxf-ENwJ2l3u;?y z>s4#aElG8>TOb$Q)oJW|L1h4IEw8VGq{8A4+Vc>81i~+;lE$j&d*|QjXindvD{3ZE z7Z&XZBVZ!tbxxl0D0hyQeiGK>UDDE(_e!QKY_vezIohwc!UqeaBQ5Hde+8={=?|>UUvr{nv#+aV#np=3)VZ(%VM0} zgyjp%nk_^r{D}z<&I;Nq z`?$6|n5Dzle^k5I5;n_-!;t&@k0l7`qh>)|)A9UV+z1Z|6%FNw35NYaR`fqxly|^lNg% z;In_0u}G%~FL;>kUCsBiuBtAX+Rt}Md}US1=2sC|K3STQA9cwS2ARKTEibG8&EuOb zG4bDYJF>Pm_NTu^fkOom94KMg+My4;h6k{aKt3aFSWp~kzCOHaq)1tLd2xVW+k1`!HpcuH zjs3aFB%-R5*RZdS+2GIR<((BdPR8q<-{@((Vsd+ydqxJVdmo)sZ#X4Ub4p{f^Lddk z=QfMj@VTbeM8V>1T9wsqxQ`#jv4`2I4?@fA<}YXgO@Wb9mrHa^y+w${MM&eYu#nAy zeST&Q@4;T8XoY#d$QoBezaVE|1oWAVwTt{@XYpm3;D`kT!16S`caR%H_z}=23PQ

qg_1$E%ZX27YOpnEZP1JxPr2zFtW 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 DPqGKk literal 0 HcmV?d00001 diff --git a/manager/app/src/main/java/com/sukisu/ultra/KernelSUApplication.kt b/manager/app/src/main/java/com/sukisu/ultra/KernelSUApplication.kt new file mode 100644 index 0000000..2f587d1 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/KernelSUApplication.kt @@ -0,0 +1,72 @@ +package com.sukisu.ultra + +import android.app.Application +import android.system.Os +import androidx.lifecycle.ViewModelProvider +import androidx.lifecycle.ViewModelStore +import androidx.lifecycle.ViewModelStoreOwner +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.launch +import com.sukisu.ultra.ui.viewmodel.SuperUserViewModel +import coil.Coil +import coil.ImageLoader +import com.dergoogler.mmrl.platform.Platform +import me.zhanghai.android.appiconloader.coil.AppIconFetcher +import me.zhanghai.android.appiconloader.coil.AppIconKeyer +import okhttp3.Cache +import okhttp3.OkHttpClient +import java.io.File +import java.util.Locale + +lateinit var ksuApp: KernelSUApplication + +class KernelSUApplication : Application(), ViewModelStoreOwner { + + lateinit var okhttpClient: OkHttpClient + private val appViewModelStore by lazy { ViewModelStore() } + + override fun onCreate() { + super.onCreate() + ksuApp = this + + // For faster response when first entering superuser or webui activity + val superUserViewModel = ViewModelProvider(this)[SuperUserViewModel::class.java] + CoroutineScope(Dispatchers.Main).launch { + superUserViewModel.fetchAppList() + } + + Platform.setHiddenApiExemptions() + + val context = this + val iconSize = resources.getDimensionPixelSize(android.R.dimen.app_icon_size) + Coil.setImageLoader( + ImageLoader.Builder(context) + .components { + add(AppIconKeyer()) + add(AppIconFetcher.Factory(iconSize, false, context)) + } + .build() + ) + + val webroot = File(dataDir, "webroot") + if (!webroot.exists()) { + webroot.mkdir() + } + + // Provide working env for rust's temp_dir() + Os.setenv("TMPDIR", cacheDir.absolutePath, true) + + okhttpClient = + OkHttpClient.Builder().cache(Cache(File(cacheDir, "okhttp"), 10 * 1024 * 1024)) + .addInterceptor { block -> + block.proceed( + block.request().newBuilder() + .header("User-Agent", "SukiSU/${BuildConfig.VERSION_CODE}") + .header("Accept-Language", Locale.getDefault().toLanguageTag()).build() + ) + }.build() + } + override val viewModelStore: ViewModelStore + get() = appViewModelStore +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/Kernels.kt b/manager/app/src/main/java/com/sukisu/ultra/Kernels.kt new file mode 100644 index 0000000..597ac1c --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/Kernels.kt @@ -0,0 +1,32 @@ +package com.sukisu.ultra + +import android.system.Os + +/** + * @author weishu + * @date 2022/12/10. + */ + +data class KernelVersion(val major: Int, val patchLevel: Int, val subLevel: Int) { + override fun toString(): String = "$major.$patchLevel.$subLevel" + fun isGKI(): Boolean = when { + major > 5 -> true + major == 5 && patchLevel >= 10 -> true + else -> false + } +} + +fun parseKernelVersion(version: String): KernelVersion { + val find = "(\\d+)\\.(\\d+)\\.(\\d+)".toRegex().find(version) + return if (find != null) { + KernelVersion(find.groupValues[1].toInt(), find.groupValues[2].toInt(), find.groupValues[3].toInt()) + } else { + KernelVersion(-1, -1, -1) + } +} + +fun getKernelVersion(): KernelVersion { + Os.uname().release.let { + return parseKernelVersion(it) + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/Natives.kt b/manager/app/src/main/java/com/sukisu/ultra/Natives.kt new file mode 100644 index 0000000..db891da --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/Natives.kt @@ -0,0 +1,281 @@ +package com.sukisu.ultra + +import android.os.Parcelable +import androidx.annotation.Keep +import androidx.compose.runtime.Immutable +import kotlinx.parcelize.Parcelize + +/** + * @author weishu + * @date 2022/12/8. + */ +object Natives { + // minimal supported kernel version + // 10915: allowlist breaking change, add app profile + // 10931: app profile struct add 'version' field + // 10946: add capabilities + // 10977: change groups_count and groups to avoid overflow write + // 11071: Fix the issue of failing to set a custom SELinux type. + // 12143: breaking: new supercall impl + const val MINIMAL_SUPPORTED_KERNEL = 12143 + + // 12040: Support disable sucompat mode + const val KERNEL_SU_DOMAIN = "u:r:su:s0" + + const val MINIMAL_SUPPORTED_KERNEL_FULL = "v3.1.8" + + const val MINIMAL_SUPPORTED_KPM = 12800 + + const val MINIMAL_SUPPORTED_DYNAMIC_MANAGER = 13215 + + const val MINIMAL_SUPPORTED_UID_SCANNER = 13347 + + const val MINIMAL_NEW_IOCTL_KERNEL = 13490 + + const val ROOT_UID = 0 + const val ROOT_GID = 0 + + // 获取完整版本号 + external fun getFullVersion(): String + + fun isVersionLessThan(v1Full: String, v2Full: String): Boolean { + fun extractVersionParts(version: String): List { + val match = Regex("""v\d+(\.\d+)*""").find(version) + val simpleVersion = match?.value ?: version + return simpleVersion.trimStart('v').split('.').map { it.toIntOrNull() ?: 0 } + } + + val v1Parts = extractVersionParts(v1Full) + val v2Parts = extractVersionParts(v2Full) + val maxLength = maxOf(v1Parts.size, v2Parts.size) + for (i in 0 until maxLength) { + val num1 = v1Parts.getOrElse(i) { 0 } + val num2 = v2Parts.getOrElse(i) { 0 } + if (num1 != num2) return num1 < num2 + } + return false + } + + fun getSimpleVersionFull(): String = getFullVersion().let { version -> + Regex("""v\d+(\.\d+)*""").find(version)?.value ?: version + } + + init { + System.loadLibrary("zakosign") + System.loadLibrary("kernelsu") + } + + val version: Int + external get + + // get the uid list of allowed su processes. + val allowList: IntArray + external get + + val isSafeMode: Boolean + external get + + val isLkmMode: Boolean + external get + + val isManager: Boolean + external get + + external fun uidShouldUmount(uid: Int): Boolean + + /** + * Get the profile of the given package. + * @param key usually the package name + * @return return null if failed. + */ + external fun getAppProfile(key: String?, uid: Int): Profile + external fun setAppProfile(profile: Profile?): Boolean + + /** + * `su` compat mode can be disabled temporarily. + * 0: disabled + * 1: enabled + * negative : error + */ + external fun isSuEnabled(): Boolean + external fun setSuEnabled(enabled: Boolean): Boolean + + /** + * Kernel module umount can be disabled temporarily. + * 0: disabled + * 1: enabled + * negative : error + */ + external fun isKernelUmountEnabled(): Boolean + external fun setKernelUmountEnabled(enabled: Boolean): Boolean + + /** + * Enhanced security can be enabled/disabled. + * 0: disabled + * 1: enabled + * negative : error + */ + external fun isEnhancedSecurityEnabled(): Boolean + external fun setEnhancedSecurityEnabled(enabled: Boolean): Boolean + + /** + * Su Log can be enabled/disabled. + * 0: disabled + * 1: enabled + * negative : error + */ + external fun isSuLogEnabled(): Boolean + external fun setSuLogEnabled(enabled: Boolean): Boolean + + external fun isKPMEnabled(): Boolean + external fun getHookType(): String + + /** + * Get SUSFS feature status from kernel + * @return SusfsFeatureStatus object containing all feature states, or null if failed + */ + + /** + * Set dynamic managerature configuration + * @param size APK signature size + * @param hash APK signature hash (64 character hex string) + * @return true if successful, false otherwise + */ + external fun setDynamicManager(size: Int, hash: String): Boolean + + + /** + * Get current dynamic managerature configuration + * @return DynamicManagerConfig object containing current configuration, or null if not set + */ + external fun getDynamicManager(): DynamicManagerConfig? + + /** + * Clear dynamic managerature configuration + * @return true if successful, false otherwise + */ + external fun clearDynamicManager(): Boolean + + /** + * Get active managers list when dynamic manager is enabled + * @return ManagersList object containing active managers, or null if failed or not enabled + */ + external fun getManagersList(): ManagersList? + + // 模块签名验证 + external fun verifyModuleSignature(modulePath: String): Boolean + + /** + * Check if UID scanner is currently enabled + * @return true if UID scanner is enabled, false otherwise + */ + external fun isUidScannerEnabled(): Boolean + + /** + * Enable or disable UID scanner + * @param enabled true to enable, false to disable + * @return true if operation was successful, false otherwise + */ + external fun setUidScannerEnabled(enabled: Boolean): Boolean + + /** + * Clear UID scanner environment (force exit) + * This will forcefully stop all UID scanner operations and clear the environment + * @return true if operation was successful, false otherwise + */ + external fun clearUidScannerEnvironment(): Boolean + + external fun getUserName(uid: Int): String? + + private const val NON_ROOT_DEFAULT_PROFILE_KEY = "$" + private const val NOBODY_UID = 9999 + + fun setDefaultUmountModules(umountModules: Boolean): Boolean { + Profile( + NON_ROOT_DEFAULT_PROFILE_KEY, + NOBODY_UID, + false, + umountModules = umountModules + ).let { + return setAppProfile(it) + } + } + + fun isDefaultUmountModules(): Boolean { + getAppProfile(NON_ROOT_DEFAULT_PROFILE_KEY, NOBODY_UID).let { + return it.umountModules + } + } + + fun requireNewKernel(): Boolean { + if (version != -1 && version < MINIMAL_SUPPORTED_KERNEL) return true + return isVersionLessThan(getFullVersion(), MINIMAL_SUPPORTED_KERNEL_FULL) + } + + @Immutable + @Parcelize + @Keep + data class DynamicManagerConfig( + val size: Int = 0, + val hash: String = "" + ) : Parcelable { + + fun isValid(): Boolean { + return size > 0 && hash.length == 64 && hash.all { + it in '0'..'9' || it in 'a'..'f' || it in 'A'..'F' + } + } + } + + @Immutable + @Parcelize + @Keep + data class ManagersList( + val count: Int = 0, + val managers: List = emptyList() + ) : Parcelable + + @Immutable + @Parcelize + @Keep + data class ManagerInfo( + val uid: Int = 0, + val signatureIndex: Int = 0 + ) : Parcelable + + @Immutable + @Parcelize + @Keep + data class Profile( + // and there is a default profile for root and non-root + val name: String, + // current uid for the package, this is convivent for kernel to check + // if the package name doesn't match uid, then it should be invalidated. + val currentUid: Int = 0, + + // if this is true, kernel will grant root permission to this package + val allowSu: Boolean = false, + + // these are used for root profile + val rootUseDefault: Boolean = true, + val rootTemplate: String? = null, + val uid: Int = ROOT_UID, + val gid: Int = ROOT_GID, + val groups: List = mutableListOf(), + val capabilities: List = mutableListOf(), + val context: String = KERNEL_SU_DOMAIN, + val namespace: Int = Namespace.INHERITED.ordinal, + + val nonRootUseDefault: Boolean = true, + val umountModules: Boolean = true, + var rules: String = "", // this field is save in ksud!! + ) : Parcelable { + enum class Namespace { + INHERITED, + GLOBAL, + INDIVIDUAL, + } + + constructor() : this("") + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/network/RemoteToolsDownloader.kt b/manager/app/src/main/java/com/sukisu/ultra/network/RemoteToolsDownloader.kt new file mode 100644 index 0000000..880b2ea --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/network/RemoteToolsDownloader.kt @@ -0,0 +1,364 @@ +package com.sukisu.ultra.network + +import android.content.Context +import android.util.Log +import kotlinx.coroutines.* +import java.io.File +import java.io.FileOutputStream +import java.io.IOException +import java.net.HttpURLConnection +import java.net.SocketTimeoutException +import java.net.URL +import java.util.concurrent.TimeUnit + +class RemoteToolsDownloader( + private val context: Context, + private val workDir: String +) { + companion object { + private const val TAG = "RemoteToolsDownloader" + + // 远程下载URL配置 + private const val KPTOOLS_REMOTE_URL = "https://raw.githubusercontent.com/ShirkNeko/SukiSU_patch/refs/heads/main/kpm/kptools" + private const val KPIMG_REMOTE_URL = "https://raw.githubusercontent.com/ShirkNeko/SukiSU_patch/refs/heads/main/kpm/kpimg" + + // 网络超时配置(毫秒) + private const val CONNECTION_TIMEOUT = 15000 // 15秒连接超时 + private const val READ_TIMEOUT = 30000 // 30秒读取超时 + + // 最大重试次数 + private const val MAX_RETRY_COUNT = 3 + + // 文件校验相关 + private const val MIN_FILE_SIZE = 1024 + } + + interface DownloadProgressListener { + fun onProgress(fileName: String, progress: Int, total: Int) + fun onLog(message: String) + fun onError(fileName: String, error: String) + fun onSuccess(fileName: String, isRemote: Boolean) + } + + data class DownloadResult( + val success: Boolean, + val isRemoteSource: Boolean, + val errorMessage: String? = null + ) + + + suspend fun downloadToolsAsync(listener: DownloadProgressListener?): Map = withContext(Dispatchers.IO) { + val results = mutableMapOf() + + listener?.onLog("Starting to prepare KPM tool files...") + + try { + // 确保工作目录存在 + File(workDir).mkdirs() + + // 并行下载两个工具文件 + val kptoolsDeferred = async { downloadSingleTool("kptools", KPTOOLS_REMOTE_URL, listener) } + val kpimgDeferred = async { downloadSingleTool("kpimg", KPIMG_REMOTE_URL, listener) } + + // 等待所有下载完成 + results["kptools"] = kptoolsDeferred.await() + results["kpimg"] = kpimgDeferred.await() + + // 检查kptools执行权限 + val kptoolsFile = File(workDir, "kptools") + if (kptoolsFile.exists()) { + setExecutablePermission(kptoolsFile.absolutePath) + listener?.onLog("Set kptools execution permission") + } + + val successCount = results.values.count { it.success } + val remoteCount = results.values.count { it.success && it.isRemoteSource } + + listener?.onLog("KPM tools preparation completed: Success $successCount/2, Remote downloaded $remoteCount") + + } catch (e: Exception) { + Log.e(TAG, "Exception occurred while downloading tools", e) + listener?.onLog("Exception occurred during tool download: ${e.message}") + + if (!results.containsKey("kptools")) { + results["kptools"] = downloadSingleTool("kptools", null, listener) + } + if (!results.containsKey("kpimg")) { + results["kpimg"] = downloadSingleTool("kpimg", null, listener) + } + } + + results.toMap() + } + + private suspend fun downloadSingleTool( + fileName: String, + remoteUrl: String?, + listener: DownloadProgressListener? + ): DownloadResult = withContext(Dispatchers.IO) { + + val targetFile = File(workDir, fileName) + + if (remoteUrl == null) { + return@withContext useLocalVersion(fileName, targetFile, listener) + } + + // 尝试从远程下载 + listener?.onLog("Downloading $fileName from remote repository...") + + var lastError = "" + + // 重试机制 + repeat(MAX_RETRY_COUNT) { attempt -> + try { + val result = downloadFromRemote(fileName, remoteUrl, targetFile, listener) + if (result.success) { + listener?.onSuccess(fileName, true) + return@withContext result + } + lastError = result.errorMessage ?: "Unknown error" + + } catch (e: Exception) { + lastError = e.message ?: "Network exception" + Log.w(TAG, "$fileName download attempt ${attempt + 1} failed", e) + + if (attempt < MAX_RETRY_COUNT - 1) { + listener?.onLog("$fileName download failed, retrying in ${(attempt + 1) * 2} seconds...") + delay(TimeUnit.SECONDS.toMillis((attempt + 1) * 2L)) + } + } + } + + // 所有重试都失败,回退到本地版本 + listener?.onError(fileName, "Remote download failed: $lastError") + listener?.onLog("$fileName remote download failed, falling back to local version...") + + useLocalVersion(fileName, targetFile, listener) + } + + private suspend fun downloadFromRemote( + fileName: String, + remoteUrl: String, + targetFile: File, + listener: DownloadProgressListener? + ): DownloadResult = withContext(Dispatchers.IO) { + + var connection: HttpURLConnection? = null + + try { + val url = URL(remoteUrl) + connection = url.openConnection() as HttpURLConnection + + // 设置连接参数 + connection.apply { + connectTimeout = CONNECTION_TIMEOUT + readTimeout = READ_TIMEOUT + requestMethod = "GET" + setRequestProperty("User-Agent", "SukiSU-KPM-Downloader/1.0") + setRequestProperty("Accept", "*/*") + setRequestProperty("Connection", "close") + } + + // 建立连接 + connection.connect() + + val responseCode = connection.responseCode + if (responseCode != HttpURLConnection.HTTP_OK) { + return@withContext DownloadResult( + false, + isRemoteSource = false, + errorMessage = "HTTP error code: $responseCode" + ) + } + + val fileLength = connection.contentLength + Log.d(TAG, "$fileName remote file size: $fileLength bytes") + + // 创建临时文件 + val tempFile = File(targetFile.absolutePath + ".tmp") + + // 下载文件 + connection.inputStream.use { input -> + FileOutputStream(tempFile).use { output -> + val buffer = ByteArray(8192) + var totalBytes = 0 + var bytesRead: Int + + while (input.read(buffer).also { bytesRead = it } != -1) { + // 检查协程是否被取消 + ensureActive() + + output.write(buffer, 0, bytesRead) + totalBytes += bytesRead + + // 更新下载进度 + if (fileLength > 0) { + listener?.onProgress(fileName, totalBytes, fileLength) + } + } + + output.flush() + } + } + + // 验证下载的文件 + if (!validateDownloadedFile(tempFile, fileName)) { + tempFile.delete() + return@withContext DownloadResult( + success = false, + isRemoteSource = false, + errorMessage = "File verification failed" + ) + } + + // 移动临时文件到目标位置 + if (targetFile.exists()) { + targetFile.delete() + } + + if (!tempFile.renameTo(targetFile)) { + tempFile.delete() + return@withContext DownloadResult( + false, + isRemoteSource = false, + errorMessage = "Failed to move file" + ) + } + + Log.i(TAG, "$fileName remote download successful, file size: ${targetFile.length()} bytes") + listener?.onLog("$fileName remote download successful") + + DownloadResult(true, isRemoteSource = true) + + } catch (e: SocketTimeoutException) { + Log.w(TAG, "$fileName download timeout", e) + DownloadResult(false, isRemoteSource = false, errorMessage = "Connection timeout") + } catch (e: IOException) { + Log.w(TAG, "$fileName network IO exception", e) + DownloadResult(false, + isRemoteSource = false, + errorMessage = "Network connection exception: ${e.message}" + ) + } catch (e: Exception) { + Log.e(TAG, "$fileName exception occurred during download", e) + DownloadResult(false, + isRemoteSource = false, + errorMessage = "Download exception: ${e.message}" + ) + } finally { + connection?.disconnect() + } + } + + private suspend fun useLocalVersion( + fileName: String, + targetFile: File, + listener: DownloadProgressListener? + ): DownloadResult = withContext(Dispatchers.IO) { + + try { + com.sukisu.ultra.utils.AssetsUtil.exportFiles(context, fileName, targetFile.absolutePath) + + if (!targetFile.exists()) { + val errorMsg = "Local $fileName file extraction failed" + listener?.onError(fileName, errorMsg) + return@withContext DownloadResult(false, + isRemoteSource = false, + errorMessage = errorMsg + ) + } + + if (!validateDownloadedFile(targetFile, fileName)) { + val errorMsg = "Local $fileName file verification failed" + listener?.onError(fileName, errorMsg) + return@withContext DownloadResult( + success = false, + isRemoteSource = false, + errorMessage = errorMsg + ) + } + + Log.i(TAG, "$fileName local version loaded successfully, file size: ${targetFile.length()} bytes") + listener?.onLog("$fileName local version loaded successfully") + listener?.onSuccess(fileName, false) + + DownloadResult(true, isRemoteSource = false) + + } catch (e: Exception) { + Log.e(TAG, "$fileName local version loading failed", e) + val errorMsg = "Local version loading failed: ${e.message}" + listener?.onError(fileName, errorMsg) + DownloadResult(success = false, isRemoteSource = false, errorMessage = errorMsg) + } + } + + private fun validateDownloadedFile(file: File, fileName: String): Boolean { + if (!file.exists()) { + Log.w(TAG, "$fileName file does not exist") + return false + } + + val fileSize = file.length() + if (fileSize < MIN_FILE_SIZE) { + Log.w(TAG, "$fileName file is too small: $fileSize bytes") + return false + } + + try { + file.inputStream().use { input -> + val header = ByteArray(4) + val bytesRead = input.read(header) + + if (bytesRead < 4) { + Log.w(TAG, "$fileName file header read incomplete") + return false + } + + val isELF = header[0] == 0x7F.toByte() && + header[1] == 'E'.code.toByte() && + header[2] == 'L'.code.toByte() && + header[3] == 'F'.code.toByte() + + if (fileName == "kptools" && !isELF) { + Log.w(TAG, "kptools file format is invalid, not ELF format") + return false + } + + Log.d(TAG, "$fileName file verification passed, size: $fileSize bytes, ELF: $isELF") + return true + } + } catch (e: Exception) { + Log.w(TAG, "$fileName file verification exception", e) + return false + } + } + + private fun setExecutablePermission(filePath: String) { + try { + val process = Runtime.getRuntime().exec(arrayOf("su", "-c", "chmod a+rx $filePath")) + process.waitFor() + Log.d(TAG, "Set execution permission for $filePath") + } catch (e: Exception) { + Log.w(TAG, "Failed to set execution permission: $filePath", e) + try { + File(filePath).setExecutable(true, false) + } catch (ex: Exception) { + Log.w(TAG, "Java method to set permissions also failed", ex) + } + } + } + + + fun cleanup() { + try { + File(workDir).listFiles()?.forEach { file -> + if (file.name.endsWith(".tmp")) { + file.delete() + Log.d(TAG, "Cleaned temporary file: ${file.name}") + } + } + } catch (e: Exception) { + Log.w(TAG, "Failed to clean temporary files", e) + } + } +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/profile/Capabilities.kt b/manager/app/src/main/java/com/sukisu/ultra/profile/Capabilities.kt new file mode 100644 index 0000000..d44913b --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/profile/Capabilities.kt @@ -0,0 +1,49 @@ +package com.sukisu.ultra.profile + +/** + * @author weishu + * @date 2023/6/3. + */ +enum class Capabilities(val cap: Int, val display: String, val desc: String) { + CAP_CHOWN(0, "CHOWN", "Make arbitrary changes to file UIDs and GIDs (see chown(2))"), + CAP_DAC_OVERRIDE(1, "DAC_OVERRIDE", "Bypass file read, write, and execute permission checks"), + CAP_DAC_READ_SEARCH(2, "DAC_READ_SEARCH", "Bypass file read permission checks and directory read and execute permission checks"), + CAP_FOWNER(3, "FOWNER", "Bypass permission checks on operations that normally require the filesystem UID of the process to match the UID of the file (e.g., chmod(2), utime(2)), excluding those operations covered by CAP_DAC_OVERRIDE and CAP_DAC_READ_SEARCH"), + CAP_FSETID(4, "FSETID", "Don’t clear set-user-ID and set-group-ID permission bits when a file is modified; set the set-group-ID bit for a file whose GID does not match the filesystem or any of the supplementary GIDs of the calling process"), + CAP_KILL(5, "KILL", "Bypass permission checks for sending signals (see kill(2))."), + CAP_SETGID(6, "SETGID", "Make arbitrary manipulations of process GIDs and supplementary GID list; allow setgid(2) manipulation of the caller’s effective and real group IDs"), + CAP_SETUID(7, "SETUID", "Make arbitrary manipulations of process UIDs (setuid(2), setreuid(2), setresuid(2), setfsuid(2)); allow changing the current process user IDs; allow changing of the current process group ID to any value in the system’s range of legal group IDs"), + CAP_SETPCAP(8, "SETPCAP", "If file capabilities are supported: grant or remove any capability in the caller’s permitted capability set to or from any other process. (This property supersedes the obsolete notion of giving a process all capabilities by granting all capabilities in its permitted set, and of removing all capabilities from a process by granting no capabilities in its permitted set. It does not permit any actions that were not permitted before.)"), + CAP_LINUX_IMMUTABLE(9, "LINUX_IMMUTABLE", "Set the FS_APPEND_FL and FS_IMMUTABLE_FL inode flags (see chattr(1))."), + CAP_NET_BIND_SERVICE(10, "NET_BIND_SERVICE", "Bind a socket to Internet domain"), + CAP_NET_BROADCAST(11, "NET_BROADCAST", "Make socket broadcasts, and listen to multicasts"), + CAP_NET_ADMIN(12, "NET_ADMIN", "Perform various network-related operations: interface configuration, administration of IP firewall, masquerading, and accounting, modify routing tables, bind to any address for transparent proxying, set type-of-service (TOS), clear driver statistics, set promiscuous mode, enabling multicasting, use setsockopt(2) to set the following socket options: SO_DEBUG, SO_MARK, SO_PRIORITY (for a priority outside the range 0 to 6), SO_RCVBUFFORCE, and SO_SNDBUFFORCE"), + CAP_NET_RAW(13, "NET_RAW", "Use RAW and PACKET sockets"), + CAP_IPC_LOCK(14, "IPC_LOCK", "Lock memory (mlock(2), mlockall(2), mmap(2), shmctl(2))"), + CAP_IPC_OWNER(15, "IPC_OWNER", "Bypass permission checks for operations on System V IPC objects"), + CAP_SYS_MODULE(16, "SYS_MODULE", "Load and unload kernel modules (see init_module(2) and delete_module(2)); in kernels before 2.6.25, this also granted rights for various other operations related to kernel modules"), + CAP_SYS_RAWIO(17, "SYS_RAWIO", "Perform I/O port operations (iopl(2) and ioperm(2)); access /proc/kcore"), + CAP_SYS_CHROOT(18, "SYS_CHROOT", "Use chroot(2)"), + CAP_SYS_PTRACE(19, "SYS_PTRACE", "Trace arbitrary processes using ptrace(2)"), + CAP_SYS_PACCT(20, "SYS_PACCT", "Use acct(2)"), + CAP_SYS_ADMIN(21, "SYS_ADMIN", "Perform a range of system administration operations including: quotactl(2), mount(2), umount(2), swapon(2), swapoff(2), sethostname(2), and setdomainname(2); set and modify process resource limits (setrlimit(2)); perform various network-related operations (e.g., setting privileged socket options, enabling multicasting, interface configuration); perform various IPC operations (e.g., SysV semaphores, POSIX message queues, System V shared memory); allow reboot and kexec_load(2); override /proc/sys kernel tunables; perform ptrace(2) PTRACE_SECCOMP_GET_FILTER operation; perform some tracing and debugging operations (see ptrace(2)); administer the lifetime of kernel tracepoints (tracefs(5)); perform the KEYCTL_CHOWN and KEYCTL_SETPERM keyctl(2) operations; perform the following keyctl(2) operations: KEYCTL_CAPABILITIES, KEYCTL_CAPSQUASH, and KEYCTL_PKEY_ OPERATIONS; set state for the Extensible Authentication Protocol (EAP) kernel module; and override the RLIMIT_NPROC resource limit; allow ioperm/iopl access to I/O ports"), + CAP_SYS_BOOT(22, "SYS_BOOT", "Use reboot(2) and kexec_load(2), reboot and load a new kernel for later execution"), + CAP_SYS_NICE(23, "SYS_NICE", "Raise process nice value (nice(2), setpriority(2)) and change the nice value for arbitrary processes; set real-time scheduling policies for calling process, and set scheduling policies and priorities for arbitrary processes (sched_setscheduler(2), sched_setparam(2)"), + CAP_SYS_RESOURCE(24, "SYS_RESOURCE", "Override resource Limits. Set resource limits (setrlimit(2), prlimit(2)), override quota limits (quota(2), quotactl(2)), override reserved space on ext2 filesystem (ext2_ioctl(2)), override size restrictions on IPC message queues (msg(2)) and system V shared memory segments (shmget(2)), and override the /proc/sys/fs/pipe-size-max limit"), + CAP_SYS_TIME(25, "SYS_TIME", "Set system clock (settimeofday(2), stime(2), adjtimex(2)); set real-time (hardware) clock"), + CAP_SYS_TTY_CONFIG(26, "SYS_TTY_CONFIG", "Use vhangup(2); employ various privileged ioctl(2) operations on virtual terminals"), + CAP_MKNOD(27, "MKNOD", "Create special files using mknod(2)"), + CAP_LEASE(28, "LEASE", "Establish leases on arbitrary files (see fcntl(2))"), + CAP_AUDIT_WRITE(29, "AUDIT_WRITE", "Write records to kernel auditing log"), + CAP_AUDIT_CONTROL(30, "AUDIT_CONTROL", "Enable and disable kernel auditing; change auditing filter rules; retrieve auditing status and filtering rules"), + CAP_SETFCAP(31, "SETFCAP", "If file capabilities are supported: grant or remove any capability in any capability set to any file"), + CAP_MAC_OVERRIDE(32, "MAC_OVERRIDE", "Override Mandatory Access Control (MAC). Implemented for the Smack Linux Security Module (LSM)"), + CAP_MAC_ADMIN(33, "MAC_ADMIN", "Allow MAC configuration or state changes. Implemented for the Smack LSM"), + CAP_SYSLOG(34, "SYSLOG", "Perform privileged syslog(2) operations. See syslog(2) for information on which operations require privilege"), + CAP_WAKE_ALARM(35, "WAKE_ALARM", "Trigger something that will wake up the system"), + CAP_BLOCK_SUSPEND(36, "BLOCK_SUSPEND", "Employ features that can block system suspend"), + CAP_AUDIT_READ(37, "AUDIT_READ", "Allow reading the audit log via a multicast netlink socket"), + CAP_PERFMON(38, "PERFMON", "Allow performance monitoring via perf_event_open(2)"), + CAP_BPF(39, "BPF", "Allow BPF operations via bpf(2)"), + CAP_CHECKPOINT_RESTORE(40, "CHECKPOINT_RESTORE", "Allow processes to be checkpointed via checkpoint/restore in user namespace(2)"), +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/profile/Groups.kt b/manager/app/src/main/java/com/sukisu/ultra/profile/Groups.kt new file mode 100644 index 0000000..2ba73ba --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/profile/Groups.kt @@ -0,0 +1,130 @@ +package com.sukisu.ultra.profile + +/** + * https://cs.android.com/android/platform/superproject/main/+/main:system/core/libcutils/include/private/android_filesystem_config.h + * @author weishu + * @date 2023/6/3. + */ +enum class Groups(val gid: Int, val display: String, val desc: String) { + ROOT(0, "root", "traditional unix root user"), + DAEMON(1, "daemon", "Traditional unix daemon owner."), + BIN(2, "bin", "Traditional unix binaries owner."), + SYS(3, "sys", "A group with the same gid on Linux/macOS/Android."), + SYSTEM(1000, "system", "system server"), + RADIO(1001, "radio", "telephony subsystem, RIL"), + BLUETOOTH(1002, "bluetooth", "bluetooth subsystem"), + GRAPHICS(1003, "graphics", "graphics devices"), + INPUT(1004, "input", "input devices"), + AUDIO(1005, "audio", "audio devices"), + CAMERA(1006, "camera", "camera devices"), + LOG(1007, "log", "log devices"), + COMPASS(1008, "compass", "compass device"), + MOUNT(1009, "mount", "mountd socket"), + WIFI(1010, "wifi", "wifi subsystem"), + ADB(1011, "adb", "android debug bridge (adbd)"), + INSTALL(1012, "install", "group for installing packages"), + MEDIA(1013, "media", "mediaserver process"), + DHCP(1014, "dhcp", "dhcp client"), + SDCARD_RW(1015, "sdcard_rw", "external storage write access"), + VPN(1016, "vpn", "vpn system"), + KEYSTORE(1017, "keystore", "keystore subsystem"), + USB(1018, "usb", "USB devices"), + DRM(1019, "drm", "DRM server"), + MDNSR(1020, "mdnsr", "MulticastDNSResponder (service discovery)"), + GPS(1021, "gps", "GPS daemon"), + UNUSED1(1022, "unused1", "deprecated, DO NOT USE"), + MEDIA_RW(1023, "media_rw", "internal media storage write access"), + MTP(1024, "mtp", "MTP USB driver access"), + UNUSED2(1025, "unused2", "deprecated, DO NOT USE"), + DRMRPC(1026, "drmrpc", "group for drm rpc"), + NFC(1027, "nfc", "nfc subsystem"), + SDCARD_R(1028, "sdcard_r", "external storage read access"), + CLAT(1029, "clat", "clat part of nat464"), + LOOP_RADIO(1030, "loop_radio", "loop radio devices"), + MEDIA_DRM(1031, "media_drm", "MediaDrm plugins"), + PACKAGE_INFO(1032, "package_info", "access to installed package details"), + SDCARD_PICS(1033, "sdcard_pics", "external storage photos access"), + SDCARD_AV(1034, "sdcard_av", "external storage audio/video access"), + SDCARD_ALL(1035, "sdcard_all", "access all users external storage"), + LOGD(1036, "logd", "log daemon"), + SHARED_RELRO(1037, "shared_relro", "creator of shared GNU RELRO files"), + DBUS(1038, "dbus", "dbus-daemon IPC broker process"), + TLSDATE(1039, "tlsdate", "tlsdate unprivileged user"), + MEDIA_EX(1040, "media_ex", "mediaextractor process"), + AUDIOSERVER(1041, "audioserver", "audioserver process"), + METRICS_COLL(1042, "metrics_coll", "metrics_collector process"), + METRICSD(1043, "metricsd", "metricsd process"), + WEBSERV(1044, "webserv", "webservd process"), + DEBUGGERD(1045, "debuggerd", "debuggerd unprivileged user"), + MEDIA_CODEC(1046, "media_codec", "media_codec process"), + CAMERASERVER(1047, "cameraserver", "cameraserver process"), + FIREWALL(1048, "firewall", "firewall process"), + TRUNKS(1049, "trunks", "trunksd process"), + NVRAM(1050, "nvram", "nvram daemon"), + DNS(1051, "dns", "DNS resolution daemon (system: netd)"), + DNS_TETHER(1052, "dns_tether", "DNS resolution daemon (tether: dnsmasq)"), + WEBVIEW_ZYGOTE(1053, "webview_zygote", "WebView zygote process"), + VEHICLE_NETWORK(1054, "vehicle_network", "Vehicle network service"), + MEDIA_AUDIO(1055, "media_audio", "GID for audio files on internal media storage"), + MEDIA_VIDEO(1056, "media_video", "GID for video files on internal media storage"), + MEDIA_IMAGE(1057, "media_image", "GID for image files on internal media storage"), + TOMBSTONED(1058, "tombstoned", "tombstoned user"), + MEDIA_OBB(1059, "media_obb", "GID for OBB files on internal media storage"), + ESE(1060, "ese", "embedded secure element (eSE) subsystem"), + OTA_UPDATE(1061, "ota_update", "resource tracking UID for OTA updates"), + AUTOMOTIVE_EVS(1062, "automotive_evs", "Automotive rear and surround view system"), + LOWPAN(1063, "lowpan", "LoWPAN subsystem"), + HSM(1064, "lowpan", "hardware security module subsystem"), + RESERVED_DISK(1065, "reserved_disk", "GID that has access to reserved disk space"), + STATSD(1066, "statsd", "statsd daemon"), + INCIDENTD(1067, "incidentd", "incidentd daemon"), + SECURE_ELEMENT(1068, "secure_element", "secure element subsystem"), + LMKD(1069, "lmkd", "low memory killer daemon"), + LLKD(1070, "llkd", "live lock daemon"), + IORAPD(1071, "iorapd", "input/output readahead and pin daemon"), + GPU_SERVICE(1072, "gpu_service", "GPU service daemon"), + NETWORK_STACK(1073, "network_stack", "network stack service"), + GSID(1074, "GSID", "GSI service daemon"), + FSVERITY_CERT(1075, "fsverity_cert", "fs-verity key ownership in keystore"), + CREDSTORE(1076, "credstore", "identity credential manager service"), + EXTERNAL_STORAGE(1077, "external_storage", "Full external storage access including USB OTG volumes"), + EXT_DATA_RW(1078, "ext_data_rw", "GID for app-private data directories on external storage"), + EXT_OBB_RW(1079, "ext_obb_rw", "GID for OBB directories on external storage"), + CONTEXT_HUB(1080, "context_hub", "GID for access to the Context Hub"), + VIRTUALIZATIONSERVICE(1081, "virtualizationservice", "VirtualizationService daemon"), + ARTD(1082, "artd", "ART Service daemon"), + UWB(1083, "uwb", "UWB subsystem"), + THREAD_NETWORK(1084, "thread_network", "Thread Network subsystem"), + DICED(1085, "diced", "Android's DICE daemon"), + DMESGD(1086, "dmesgd", "dmesg parsing daemon for kernel report collection"), + JC_WEAVER(1087, "jc_weaver", "Javacard Weaver HAL - to manage omapi ARA rules"), + JC_STRONGBOX(1088, "jc_strongbox", "Javacard Strongbox HAL - to manage omapi ARA rules"), + JC_IDENTITYCRED(1089, "jc_identitycred", "Javacard Identity Cred HAL - to manage omapi ARA rules"), + SDK_SANDBOX(1090, "sdk_sandbox", "SDK sandbox virtual UID"), + SECURITY_LOG_WRITER(1091, "security_log_writer", "write to security log"), + PRNG_SEEDER(1092, "prng_seeder", "PRNG seeder daemon"), + + SHELL(2000, "shell", "adb and debug shell user"), + CACHE(2001, "cache", "cache access"), + DIAG(2002, "diag", "access to diagnostic resources"), + + /* The 3000 series are intended for use as supplemental group id's only. + * They indicate special Android capabilities that the kernel is aware of. */ + NET_BT_ADMIN(3001, "net_bt_admin", "bluetooth: create any socket"), + NET_BT(3002, "net_bt", "bluetooth: create sco, rfcomm or l2cap sockets"), + INET(3003, "inet", "can create AF_INET and AF_INET6 sockets"), + NET_RAW(3004, "net_raw", "can create raw INET sockets"), + NET_ADMIN(3005, "net_admin", "can configure interfaces and routing tables."), + NET_BW_STATS(3006, "net_bw_stats", "read bandwidth statistics"), + NET_BW_ACCT(3007, "net_bw_acct", "change bandwidth statistics accounting"), + NET_BT_STACK(3008, "net_bt_stack", "access to various bluetooth management functions"), + READPROC(3009, "readproc", "Allow /proc read access"), + WAKELOCK(3010, "wakelock", "Allow system wakelock read/write access"), + UHID(3011, "uhid", "Allow read/write to /dev/uhid node"), + READTRACEFS(3012, "readtracefs", "Allow tracefs read"), + + EVERYBODY(9997, "everybody", "Shared external storage read/write"), + MISC(9998, "misc", "Access to misc storage"), + NOBODY(9999, "nobody", "Reserved"), + APP(10000, "app", "Access to app data"), +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/KsuService.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/KsuService.kt new file mode 100644 index 0000000..39201e5 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/KsuService.kt @@ -0,0 +1,75 @@ +package com.sukisu.ultra.ui + +import android.annotation.SuppressLint +import android.content.Intent +import android.content.pm.PackageInfo +import android.os.* +import android.util.Log +import com.topjohnwu.superuser.ipc.RootService +import com.sukisu.zako.IKsuInterface + +/** + * @author ShirkNeko + * @date 2025/10/17. + */ +class KsuService : RootService() { + + private val TAG = "KsuService" + + private val cacheLock = Object() + private var _all: List? = null + private val allPackages: List + get() = synchronized(cacheLock) { + _all ?: loadAllPackages().also { _all = it } + } + + private fun loadAllPackages(): List { + val tmp = arrayListOf() + for (user in (getSystemService(USER_SERVICE) as UserManager).userProfiles) { + val userId = user.getUserIdCompat() + tmp += getInstalledPackagesAsUser(userId) + } + return tmp + } + + internal inner class Stub : IKsuInterface.Stub() { + override fun getPackageCount(): Int = allPackages.size + + override fun getPackages(start: Int, maxCount: Int): List { + val list = allPackages + val end = (start + maxCount).coerceAtMost(list.size) + return if (start >= list.size) emptyList() + else list.subList(start, end) + } + } + + override fun onBind(intent: Intent): IBinder = Stub() + + @SuppressLint("PrivateApi") + private fun getInstalledPackagesAsUser(userId: Int): List { + return try { + val pm = packageManager + val m = pm.javaClass.getDeclaredMethod( + "getInstalledPackagesAsUser", + Int::class.java, + Int::class.java + ) + @Suppress("UNCHECKED_CAST") + m.invoke(pm, 0, userId) as List + } catch (e: Throwable) { + Log.e(TAG, "getInstalledPackagesAsUser", e) + emptyList() + } + } + + private fun UserHandle.getUserIdCompat(): Int { + return try { + javaClass.getDeclaredField("identifier").apply { isAccessible = true }.getInt(this) + } catch (_: NoSuchFieldException) { + javaClass.getDeclaredMethod("getIdentifier").invoke(this) as Int + } catch (e: Throwable) { + Log.e("KsuService", "getUserIdCompat", e) + 0 + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/MainActivity.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/MainActivity.kt new file mode 100644 index 0000000..033ee44 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/MainActivity.kt @@ -0,0 +1,307 @@ +package com.sukisu.ultra.ui + +import android.content.Context +import android.content.Intent +import android.net.Uri +import android.os.Build +import android.os.Bundle +import androidx.activity.ComponentActivity +import androidx.activity.compose.setContent +import androidx.activity.enableEdgeToEdge +import androidx.compose.animation.* +import androidx.compose.animation.core.tween +import androidx.compose.foundation.layout.* +import androidx.compose.material.icons.filled.* +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.ui.Modifier +import androidx.lifecycle.lifecycleScope +import androidx.navigation.NavBackStackEntry +import androidx.navigation.compose.currentBackStackEntryAsState +import androidx.navigation.compose.rememberNavController +import com.ramcosta.composedestinations.DestinationsNavHost +import com.ramcosta.composedestinations.animations.NavHostAnimatedDestinationStyle +import com.ramcosta.composedestinations.generated.NavGraphs +import com.ramcosta.composedestinations.generated.destinations.ExecuteModuleActionScreenDestination +import com.ramcosta.composedestinations.spec.NavHostGraphSpec +import com.ramcosta.composedestinations.utils.rememberDestinationsNavigator +import zako.zako.zako.zakoui.screen.moreSettings.util.LocaleHelper +import com.sukisu.ultra.Natives +import com.sukisu.ultra.ui.screen.BottomBarDestination +import com.sukisu.ultra.ui.theme.KernelSUTheme +import com.sukisu.ultra.ui.util.LocalSnackbarHost +import com.sukisu.ultra.ui.util.install +import com.sukisu.ultra.ui.viewmodel.HomeViewModel +import com.sukisu.ultra.ui.viewmodel.SuperUserViewModel +import com.sukisu.ultra.ui.webui.initPlatform +import com.sukisu.ultra.ui.component.* +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.launch +import com.sukisu.ultra.ui.activity.component.BottomBar +import com.sukisu.ultra.ui.activity.util.* + +class MainActivity : ComponentActivity() { + private lateinit var superUserViewModel: SuperUserViewModel + private lateinit var homeViewModel: HomeViewModel + internal val settingsStateFlow = MutableStateFlow(SettingsState()) + + data class SettingsState( + val isHideOtherInfo: Boolean = false, + val showKpmInfo: Boolean = false + ) + + private var showConfirmationDialog = mutableStateOf(false) + private var pendingZipFiles = mutableStateOf>(emptyList()) + + private lateinit var themeChangeObserver: ThemeChangeContentObserver + private var isInitialized = false + + override fun attachBaseContext(newBase: Context?) { + super.attachBaseContext(newBase?.let { LocaleHelper.applyLanguage(it) }) + } + + override fun onCreate(savedInstanceState: Bundle?) { + try { + // 应用自定义 DPI + DisplayUtils.applyCustomDpi(this) + + // Enable edge to edge + enableEdgeToEdge() + + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { + window.isNavigationBarContrastEnforced = false + } + + super.onCreate(savedInstanceState) + + val isManager = Natives.isManager + if (isManager && !Natives.requireNewKernel()) { + install() + } + + // 使用标记控制初始化流程 + if (!isInitialized) { + initializeViewModels() + initializeData() + isInitialized = true + } + + // Check if launched with a ZIP file + val zipUri: ArrayList? = when (intent?.action) { + Intent.ACTION_SEND -> { + val uri = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + intent.getParcelableExtra(Intent.EXTRA_STREAM, Uri::class.java) + } else { + @Suppress("DEPRECATION") + intent.getParcelableExtra(Intent.EXTRA_STREAM) + } + uri?.let { arrayListOf(it) } + } + + Intent.ACTION_SEND_MULTIPLE -> { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + intent.getParcelableArrayListExtra(Intent.EXTRA_STREAM, Uri::class.java) + } else { + @Suppress("DEPRECATION") + intent.getParcelableArrayListExtra(Intent.EXTRA_STREAM) + } + } + + else -> when { + intent?.data != null -> arrayListOf(intent.data!!) + Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU -> { + intent.getParcelableArrayListExtra("uris", Uri::class.java) + } + else -> { + @Suppress("DEPRECATION") + intent.getParcelableArrayListExtra("uris") + } + } + } + + setContent { + KernelSUTheme { + val navController = rememberNavController() + val snackBarHostState = remember { SnackbarHostState() } + val currentDestination = navController.currentBackStackEntryAsState().value?.destination + + val bottomBarRoutes = remember { + BottomBarDestination.entries.map { it.direction.route }.toSet() + } + + val navigator = navController.rememberDestinationsNavigator() + + InstallConfirmationDialog( + show = showConfirmationDialog.value, + zipFiles = pendingZipFiles.value, + onConfirm = { confirmedFiles -> + showConfirmationDialog.value = false + UltraActivityUtils.navigateToFlashScreen(this, confirmedFiles, navigator) + }, + onDismiss = { + showConfirmationDialog.value = false + pendingZipFiles.value = emptyList() + finish() + } + ) + + LaunchedEffect(zipUri) { + if (!zipUri.isNullOrEmpty()) { + // 检测 ZIP 文件类型并显示确认对话框 + lifecycleScope.launch { + UltraActivityUtils.detectZipTypeAndShowConfirmation(this@MainActivity, zipUri) { infos -> + if (infos.isNotEmpty()) { + pendingZipFiles.value = infos + showConfirmationDialog.value = true + } else { + finish() + } + } + } + } + } + + val showBottomBar = when (currentDestination?.route) { + ExecuteModuleActionScreenDestination.route -> false + else -> true + } + + LaunchedEffect(Unit) { + initPlatform() + } + + CompositionLocalProvider( + LocalSnackbarHost provides snackBarHostState + ) { + Scaffold( + bottomBar = { + AnimatedBottomBar.AnimatedBottomBarWrapper( + showBottomBar = showBottomBar, + content = { BottomBar(navController) } + ) + }, + contentWindowInsets = WindowInsets(0, 0, 0, 0) + ) { innerPadding -> + DestinationsNavHost( + modifier = Modifier.padding(innerPadding), + navGraph = NavGraphs.root as NavHostGraphSpec, + navController = navController, + defaultTransitions = object : NavHostAnimatedDestinationStyle() { + override val enterTransition: AnimatedContentTransitionScope.() -> EnterTransition = { + // If the target is a detail page (not a bottom navigation page), slide in from the right + if (targetState.destination.route !in bottomBarRoutes) { + slideInHorizontally(initialOffsetX = { it }) + } else { + // Otherwise (switching between bottom navigation pages), use fade in + fadeIn(animationSpec = tween(340)) + } + } + + override val exitTransition: AnimatedContentTransitionScope.() -> ExitTransition = { + // If navigating from the home page (bottom navigation page) to a detail page, slide out to the left + if (initialState.destination.route in bottomBarRoutes && targetState.destination.route !in bottomBarRoutes) { + slideOutHorizontally(targetOffsetX = { -it / 4 }) + fadeOut() + } else { + // Otherwise (switching between bottom navigation pages), use fade out + fadeOut(animationSpec = tween(340)) + } + } + + override val popEnterTransition: AnimatedContentTransitionScope.() -> EnterTransition = { + // If returning to the home page (bottom navigation page), slide in from the left + if (targetState.destination.route in bottomBarRoutes) { + slideInHorizontally(initialOffsetX = { -it / 4 }) + fadeIn() + } else { + // Otherwise (e.g., returning between multiple detail pages), use default fade in + fadeIn(animationSpec = tween(340)) + } + } + + override val popExitTransition: AnimatedContentTransitionScope.() -> ExitTransition = { + // If returning from a detail page (not a bottom navigation page), scale down and fade out + if (initialState.destination.route !in bottomBarRoutes) { + scaleOut(targetScale = 0.9f) + fadeOut() + } else { + // Otherwise, use default fade out + fadeOut(animationSpec = tween(340)) + } + } + } + ) + } + } + } + } + } catch (e: Exception) { + e.printStackTrace() + } + } + + private fun initializeViewModels() { + superUserViewModel = SuperUserViewModel() + homeViewModel = HomeViewModel() + + // 设置主题变化监听器 + themeChangeObserver = ThemeUtils.registerThemeChangeObserver(this) + } + + private fun initializeData() { + lifecycleScope.launch { + try { + superUserViewModel.fetchAppList() + } catch (e: Exception) { + e.printStackTrace() + } + } + + // 数据刷新协程 + DataRefreshUtils.startDataRefreshCoroutine(lifecycleScope) + DataRefreshUtils.startSettingsMonitorCoroutine(lifecycleScope, this, settingsStateFlow) + + // 初始化主题相关设置 + ThemeUtils.initializeThemeSettings(this, settingsStateFlow) + } + + override fun onResume() { + try { + super.onResume() + ThemeUtils.onActivityResume() + + // 仅在需要时刷新数据 + if (isInitialized) { + refreshData() + } + } catch (e: Exception) { + e.printStackTrace() + } + } + + private fun refreshData() { + lifecycleScope.launch { + try { + superUserViewModel.fetchAppList() + DataRefreshUtils.refreshData(lifecycleScope) + } catch (e: Exception) { + e.printStackTrace() + } + } + } + + override fun onPause() { + try { + super.onPause() + ThemeUtils.onActivityPause(this) + } catch (e: Exception) { + e.printStackTrace() + } + } + + override fun onDestroy() { + try { + ThemeUtils.unregisterThemeChangeObserver(this, themeChangeObserver) + super.onDestroy() + } catch (e: Exception) { + e.printStackTrace() + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/activity/component/BottomBar.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/activity/component/BottomBar.kt new file mode 100644 index 0000000..7efffad --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/activity/component/BottomBar.kt @@ -0,0 +1,219 @@ +package com.sukisu.ultra.ui.activity.component + +import android.annotation.SuppressLint +import androidx.compose.foundation.layout.* +import androidx.compose.material3.* +import androidx.compose.runtime.Composable +import androidx.compose.runtime.collectAsState +import androidx.compose.runtime.getValue +import androidx.compose.ui.Modifier +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.navigation.NavHostController +import com.ramcosta.composedestinations.generated.NavGraphs +import com.ramcosta.composedestinations.spec.RouteOrDirection +import com.ramcosta.composedestinations.utils.isRouteOnBackStackAsState +import com.ramcosta.composedestinations.utils.rememberDestinationsNavigator +import com.sukisu.ultra.Natives +import com.sukisu.ultra.ui.MainActivity +import com.sukisu.ultra.ui.activity.util.* +import com.sukisu.ultra.ui.activity.util.AppData.getKpmVersionUse +import com.sukisu.ultra.ui.screen.BottomBarDestination +import com.sukisu.ultra.ui.theme.CardConfig.cardAlpha +import com.sukisu.ultra.ui.theme.CardConfig.cardElevation +import com.sukisu.ultra.ui.util.* + +@SuppressLint("ContextCastToActivity") +@OptIn(ExperimentalMaterial3Api::class) +@Composable +fun BottomBar(navController: NavHostController) { + val navigator = navController.rememberDestinationsNavigator() + val isFullFeatured = AppData.isFullFeatured() + val kpmVersion = getKpmVersionUse() + val cardColor = MaterialTheme.colorScheme.surfaceContainer + val activity = LocalContext.current as MainActivity + val settings by activity.settingsStateFlow.collectAsState() + + // 检查是否隐藏红点 + val isHideOtherInfo = settings.isHideOtherInfo + val showKpmInfo = settings.showKpmInfo + + // 收集计数数据 + val superuserCount by AppData.DataRefreshManager.superuserCount.collectAsState() + val moduleCount by AppData.DataRefreshManager.moduleCount.collectAsState() + val kpmModuleCount by AppData.DataRefreshManager.kpmModuleCount.collectAsState() + + + NavigationBar( + modifier = Modifier.windowInsetsPadding( + WindowInsets.navigationBars.only(WindowInsetsSides.Horizontal) + ), + containerColor = TopAppBarDefaults.topAppBarColors( + containerColor = cardColor.copy(alpha = cardAlpha), + scrolledContainerColor = cardColor.copy(alpha = cardAlpha) + ).containerColor, + tonalElevation = cardElevation + ) { + BottomBarDestination.entries.forEach { destination -> + if (destination == BottomBarDestination.Kpm) { + if (kpmVersion.isNotEmpty() && !kpmVersion.startsWith("Error") && !showKpmInfo && Natives.version >= Natives.MINIMAL_SUPPORTED_KPM) { + if (!isFullFeatured && destination.rootRequired) return@forEach + val isCurrentDestOnBackStack by navController.isRouteOnBackStackAsState(destination.direction) + NavigationBarItem( + selected = isCurrentDestOnBackStack, + onClick = { + if (!isCurrentDestOnBackStack) { + navigator.popBackStack(destination.direction, false) + } + navigator.navigate(destination.direction) { + popUpTo(NavGraphs.root as RouteOrDirection) { + saveState = true + } + launchSingleTop = true + restoreState = true + } + }, + icon = { + BadgedBox( + badge = { + if (kpmModuleCount > 0 && !isHideOtherInfo) { + Badge( + containerColor = MaterialTheme.colorScheme.secondary + ) { + Text( + text = kpmModuleCount.toString(), + style = MaterialTheme.typography.labelSmall + ) + } + } + } + ) { + if (isCurrentDestOnBackStack) { + Icon(destination.iconSelected, stringResource(destination.label)) + } else { + Icon(destination.iconNotSelected, stringResource(destination.label)) + } + } + }, + label = { Text(stringResource(destination.label),style = MaterialTheme.typography.labelMedium) }, + alwaysShowLabel = false + ) + } + } else if (destination == BottomBarDestination.SuperUser) { + if (!isFullFeatured && destination.rootRequired) return@forEach + val isCurrentDestOnBackStack by navController.isRouteOnBackStackAsState(destination.direction) + + NavigationBarItem( + selected = isCurrentDestOnBackStack, + onClick = { + if (isCurrentDestOnBackStack) { + navigator.popBackStack(destination.direction, false) + } + navigator.navigate(destination.direction) { + popUpTo(NavGraphs.root) { + saveState = true + } + launchSingleTop = true + restoreState = true + } + }, + icon = { + BadgedBox( + badge = { + if (superuserCount > 0 && !isHideOtherInfo) { + Badge( + containerColor = MaterialTheme.colorScheme.secondary + ) { + Text( + text = superuserCount.toString(), + style = MaterialTheme.typography.labelSmall + ) + } + } + } + ) { + if (isCurrentDestOnBackStack) { + Icon(destination.iconSelected, stringResource(destination.label)) + } else { + Icon(destination.iconNotSelected, stringResource(destination.label)) + } + } + }, + label = { Text(stringResource(destination.label),style = MaterialTheme.typography.labelMedium) }, + alwaysShowLabel = false + ) + } else if (destination == BottomBarDestination.Module) { + if (!isFullFeatured && destination.rootRequired) return@forEach + val isCurrentDestOnBackStack by navController.isRouteOnBackStackAsState(destination.direction) + + NavigationBarItem( + selected = isCurrentDestOnBackStack, + onClick = { + if (isCurrentDestOnBackStack) { + navigator.popBackStack(destination.direction, false) + } + navigator.navigate(destination.direction) { + popUpTo(NavGraphs.root) { + saveState = true + } + launchSingleTop = true + restoreState = true + } + }, + icon = { + BadgedBox( + badge = { + if (moduleCount > 0 && !isHideOtherInfo) { + Badge( + containerColor = MaterialTheme.colorScheme.secondary) + { + Text( + text = moduleCount.toString(), + style = MaterialTheme.typography.labelSmall + ) + } + } + } + ) { + if (isCurrentDestOnBackStack) { + Icon(destination.iconSelected, stringResource(destination.label)) + } else { + Icon(destination.iconNotSelected, stringResource(destination.label)) + } + } + }, + label = { Text(stringResource(destination.label),style = MaterialTheme.typography.labelMedium) }, + alwaysShowLabel = false + ) + } else { + if (!isFullFeatured && destination.rootRequired) return@forEach + val isCurrentDestOnBackStack by navController.isRouteOnBackStackAsState(destination.direction) + + NavigationBarItem( + selected = isCurrentDestOnBackStack, + onClick = { + if (isCurrentDestOnBackStack) { + navigator.popBackStack(destination.direction, false) + } + navigator.navigate(destination.direction) { + popUpTo(NavGraphs.root) { + saveState = true + } + launchSingleTop = true + restoreState = true + } + }, + icon = { + if (isCurrentDestOnBackStack) { + Icon(destination.iconSelected, stringResource(destination.label)) + } else { + Icon(destination.iconNotSelected, stringResource(destination.label)) + } + }, + label = { Text(stringResource(destination.label),style = MaterialTheme.typography.labelMedium) }, + alwaysShowLabel = false + ) + } + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/activity/util/ThemeUtils.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/activity/util/ThemeUtils.kt new file mode 100644 index 0000000..6786917 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/activity/util/ThemeUtils.kt @@ -0,0 +1,97 @@ +package com.sukisu.ultra.ui.activity.util + +import android.content.Context +import android.database.ContentObserver +import android.os.Handler +import android.provider.Settings +import androidx.core.content.edit +import com.sukisu.ultra.ui.MainActivity +import com.sukisu.ultra.ui.theme.CardConfig +import com.sukisu.ultra.ui.theme.ThemeConfig +import kotlinx.coroutines.flow.MutableStateFlow + +class ThemeChangeContentObserver( + handler: Handler, + private val onThemeChanged: () -> Unit +) : ContentObserver(handler) { + override fun onChange(selfChange: Boolean) { + super.onChange(selfChange) + onThemeChanged() + } +} + +object ThemeUtils { + + fun initializeThemeSettings(activity: MainActivity, settingsStateFlow: MutableStateFlow) { + val prefs = activity.getSharedPreferences("settings", Context.MODE_PRIVATE) + val isFirstRun = prefs.getBoolean("is_first_run", true) + + settingsStateFlow.value = MainActivity.SettingsState( + isHideOtherInfo = prefs.getBoolean("is_hide_other_info", false), + showKpmInfo = prefs.getBoolean("show_kpm_info", false) + ) + + if (isFirstRun) { + ThemeConfig.preventBackgroundRefresh = false + activity.getSharedPreferences("theme_prefs", Context.MODE_PRIVATE).edit { + putBoolean("prevent_background_refresh", false) + } + prefs.edit { putBoolean("is_first_run", false) } + } + + // 加载保存的背景设置 + loadThemeMode() + loadThemeColors() + loadDynamicColorState() + CardConfig.load(activity.applicationContext) + } + + fun registerThemeChangeObserver(activity: MainActivity): ThemeChangeContentObserver { + val contentObserver = ThemeChangeContentObserver(Handler(activity.mainLooper)) { + activity.runOnUiThread { + if (!ThemeConfig.preventBackgroundRefresh) { + ThemeConfig.backgroundImageLoaded = false + loadCustomBackground() + } + } + } + + activity.contentResolver.registerContentObserver( + Settings.System.getUriFor("ui_night_mode"), + false, + contentObserver + ) + + return contentObserver + } + + fun unregisterThemeChangeObserver(activity: MainActivity, observer: ThemeChangeContentObserver) { + activity.contentResolver.unregisterContentObserver(observer) + } + + fun onActivityPause(activity: MainActivity) { + CardConfig.save(activity.applicationContext) + activity.getSharedPreferences("theme_prefs", Context.MODE_PRIVATE).edit { + putBoolean("prevent_background_refresh", true) + } + ThemeConfig.preventBackgroundRefresh = true + } + + fun onActivityResume() { + if (!ThemeConfig.backgroundImageLoaded && !ThemeConfig.preventBackgroundRefresh) { + loadCustomBackground() + } + } + + private fun loadThemeMode() { + } + + private fun loadThemeColors() { + } + + private fun loadDynamicColorState() { + } + + private fun loadCustomBackground() { + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/activity/util/UltraActivityUtils.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/activity/util/UltraActivityUtils.kt new file mode 100644 index 0000000..367e791 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/activity/util/UltraActivityUtils.kt @@ -0,0 +1,236 @@ +package com.sukisu.ultra.ui.activity.util + +import android.content.Context +import androidx.compose.animation.AnimatedVisibility +import androidx.compose.animation.fadeIn +import androidx.compose.animation.fadeOut +import androidx.compose.animation.slideInVertically +import androidx.compose.animation.slideOutVertically +import androidx.compose.runtime.Composable +import androidx.lifecycle.LifecycleCoroutineScope +import com.sukisu.ultra.Natives +import com.sukisu.ultra.ui.MainActivity +import com.sukisu.ultra.ui.util.* +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.delay +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.flow.StateFlow +import kotlinx.coroutines.flow.asStateFlow +import kotlinx.coroutines.isActive +import kotlinx.coroutines.launch +import java.util.* +import android.net.Uri +import androidx.lifecycle.lifecycleScope +import com.ramcosta.composedestinations.navigation.DestinationsNavigator +import com.sukisu.ultra.ui.component.ZipFileDetector +import com.sukisu.ultra.ui.component.ZipFileInfo +import com.sukisu.ultra.ui.component.ZipType +import com.ramcosta.composedestinations.generated.destinations.FlashScreenDestination +import com.ramcosta.composedestinations.generated.destinations.InstallScreenDestination +import com.sukisu.ultra.ui.screen.FlashIt +import kotlinx.coroutines.withContext +import androidx.core.content.edit + +object AnimatedBottomBar { + @Composable + fun AnimatedBottomBarWrapper( + showBottomBar: Boolean, + content: @Composable () -> Unit + ) { + AnimatedVisibility( + visible = showBottomBar, + enter = slideInVertically(initialOffsetY = { it }) + fadeIn(), + exit = slideOutVertically(targetOffsetY = { it }) + fadeOut() + ) { + content() + } + } +} + +object UltraActivityUtils { + + suspend fun detectZipTypeAndShowConfirmation( + activity: MainActivity, + zipUris: ArrayList, + onResult: (List) -> Unit + ) { + val infos = ZipFileDetector.detectAndParseZipFiles(activity, zipUris) + withContext(Dispatchers.Main) { onResult(infos) } + } + + fun navigateToFlashScreen( + activity: MainActivity, + zipFiles: List, + navigator: DestinationsNavigator + ) { + activity.lifecycleScope.launch { + val moduleUris = zipFiles.filter { it.type == ZipType.MODULE }.map { it.uri } + val kernelUris = zipFiles.filter { it.type == ZipType.KERNEL }.map { it.uri } + + when { + kernelUris.isNotEmpty() && moduleUris.isEmpty() -> { + if (kernelUris.size == 1 && rootAvailable()) { + navigator.navigate( + InstallScreenDestination( + preselectedKernelUri = kernelUris.first().toString() + ) + ) + } + setAutoExitAfterFlash(activity) + } + + moduleUris.isNotEmpty() -> { + navigator.navigate( + FlashScreenDestination( + FlashIt.FlashModules(ArrayList(moduleUris)) + ) + ) + setAutoExitAfterFlash(activity) + } + } + } + } + + private fun setAutoExitAfterFlash(activity: Context) { + activity.getSharedPreferences("kernel_flash_prefs", Context.MODE_PRIVATE) + .edit { + putBoolean("auto_exit_after_flash", true) + } + } +} + +object AppData { + object DataRefreshManager { + // 私有状态流 + private val _superuserCount = MutableStateFlow(0) + private val _moduleCount = MutableStateFlow(0) + private val _kpmModuleCount = MutableStateFlow(0) + + // 公开的只读状态流 + val superuserCount: StateFlow = _superuserCount.asStateFlow() + val moduleCount: StateFlow = _moduleCount.asStateFlow() + val kpmModuleCount: StateFlow = _kpmModuleCount.asStateFlow() + + /** + * 刷新所有数据计数 + */ + fun refreshData() { + _superuserCount.value = getSuperuserCountUse() + _moduleCount.value = getModuleCountUse() + _kpmModuleCount.value = getKpmModuleCountUse() + } + } + + /** + * 获取超级用户应用计数 + */ + fun getSuperuserCountUse(): Int { + return try { + if (!rootAvailable()) return 0 + getSuperuserCount() + } catch (_: Exception) { + 0 + } + } + + /** + * 获取模块计数 + */ + fun getModuleCountUse(): Int { + return try { + if (!rootAvailable()) return 0 + getModuleCount() + } catch (_: Exception) { + 0 + } + } + + /** + * 获取KPM模块计数 + */ + fun getKpmModuleCountUse(): Int { + return try { + if (!rootAvailable()) return 0 + val kpmVersion = getKpmVersionUse() + if (kpmVersion.isEmpty() || kpmVersion.startsWith("Error")) return 0 + getKpmModuleCount() + } catch (_: Exception) { + 0 + } + } + + /** + * 获取KPM版本 + */ + fun getKpmVersionUse(): String { + return try { + if (!rootAvailable()) return "" + val version = getKpmVersion() + version.ifEmpty { "" } + } catch (e: Exception) { + "Error: ${e.message}" + } + } + + /** + * 检查是否是完整功能模式 + */ + fun isFullFeatured(): Boolean { + val isManager = Natives.isManager + return isManager && !Natives.requireNewKernel() && rootAvailable() + } +} + +object DataRefreshUtils { + fun startDataRefreshCoroutine(scope: LifecycleCoroutineScope) { + scope.launch(Dispatchers.IO) { + while (isActive) { + AppData.DataRefreshManager.refreshData() + delay(5000) + } + } + } + + fun startSettingsMonitorCoroutine( + scope: LifecycleCoroutineScope, + activity: MainActivity, + settingsStateFlow: MutableStateFlow + ) { + scope.launch(Dispatchers.IO) { + while (isActive) { + val prefs = activity.getSharedPreferences("settings", Context.MODE_PRIVATE) + settingsStateFlow.value = MainActivity.SettingsState( + isHideOtherInfo = prefs.getBoolean("is_hide_other_info", false), + showKpmInfo = prefs.getBoolean("show_kpm_info", false) + ) + delay(1000) + } + } + } + + fun refreshData(scope: LifecycleCoroutineScope) { + scope.launch { + AppData.DataRefreshManager.refreshData() + } + } +} + +object DisplayUtils { + fun applyCustomDpi(context: Context) { + val prefs = context.getSharedPreferences("settings", Context.MODE_PRIVATE) + val customDpi = prefs.getInt("app_dpi", 0) + + if (customDpi > 0) { + try { + val resources = context.resources + val metrics = resources.displayMetrics + metrics.density = customDpi / 160f + @Suppress("DEPRECATION") + metrics.scaledDensity = customDpi / 160f + metrics.densityDpi = customDpi + } catch (e: Exception) { + e.printStackTrace() + } + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/component/AboutCard.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/component/AboutCard.kt new file mode 100644 index 0000000..5dcda95 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/component/AboutCard.kt @@ -0,0 +1,117 @@ +package com.sukisu.ultra.ui.component + +import androidx.compose.foundation.Image +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.shape.CircleShape +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.ElevatedCard +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Surface +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.scale +import androidx.compose.ui.res.colorResource +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.* +import androidx.compose.ui.text.style.TextDecoration +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import androidx.compose.ui.window.Dialog +import com.sukisu.ultra.BuildConfig +import com.sukisu.ultra.R + +@Preview +@Composable +fun AboutCard() { + ElevatedCard( + modifier = Modifier.fillMaxWidth(), + shape = RoundedCornerShape(8.dp) + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(24.dp) + ) { + AboutCardContent() + } + } +} + +@Composable +fun AboutDialog(dismiss: () -> Unit) { + Dialog( + onDismissRequest = { dismiss() } + ) { + AboutCard() + } +} + +@Composable +private fun AboutCardContent() { + Column( + modifier = Modifier.fillMaxWidth() + ) { + Row { + Surface( + modifier = Modifier.size(40.dp), + color = colorResource(id = R.color.ic_launcher_background), + shape = CircleShape + ) { + Image( + painter = painterResource(id = R.drawable.ic_launcher_monochrome), + contentDescription = "icon", + modifier = Modifier.scale(1.4f) + ) + } + + Spacer(modifier = Modifier.width(12.dp)) + + Column { + + Text( + stringResource(id = R.string.app_name), + style = MaterialTheme.typography.titleSmall, + fontSize = 18.sp + ) + Text( + BuildConfig.VERSION_NAME, + style = MaterialTheme.typography.bodySmall, + fontSize = 14.sp + ) + + Spacer(modifier = Modifier.height(8.dp)) + + val annotatedString = AnnotatedString.fromHtml( + htmlString = stringResource( + id = R.string.about_source_code, + "GitHub", + "Telegram", + "怡子曰曰", + "明风 OuO", + "CC BY-NC-SA 4.0" + ), + linkStyles = TextLinkStyles( + style = SpanStyle( + color = MaterialTheme.colorScheme.primary, + textDecoration = TextDecoration.Underline + ), + pressedStyle = SpanStyle( + color = MaterialTheme.colorScheme.primary, + background = MaterialTheme.colorScheme.secondaryContainer, + textDecoration = TextDecoration.Underline + ) + ) + ) + Text( + text = annotatedString, + style = TextStyle( + fontSize = 14.sp + ) + ) + } + } + } +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/component/Dialog.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/component/Dialog.kt new file mode 100644 index 0000000..10c0477 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/component/Dialog.kt @@ -0,0 +1,468 @@ +package com.sukisu.ultra.ui.component + +import android.graphics.text.LineBreaker +import android.os.Build +import android.os.Parcelable +import android.text.Layout +import android.text.method.LinkMovementMethod +import android.util.Log +import android.view.ViewGroup +import android.widget.TextView +import androidx.compose.foundation.gestures.ScrollableDefaults +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.layout.wrapContentHeight +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.foundation.verticalScroll +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.runtime.saveable.Saver +import androidx.compose.runtime.saveable.rememberSaveable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.toArgb +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import androidx.compose.ui.viewinterop.AndroidView +import androidx.compose.ui.window.Dialog +import androidx.compose.ui.window.DialogProperties +import io.noties.markwon.Markwon +import io.noties.markwon.utils.NoCopySpannableFactory +import kotlinx.coroutines.* +import kotlinx.coroutines.channels.Channel +import kotlinx.coroutines.channels.ReceiveChannel +import kotlinx.coroutines.flow.FlowCollector +import kotlinx.coroutines.flow.consumeAsFlow +import kotlinx.coroutines.flow.onEach +import kotlinx.parcelize.Parcelize +import kotlin.coroutines.resume + +private const val TAG = "DialogComponent" + +interface ConfirmDialogVisuals : Parcelable { + val title: String + val content: String + val isMarkdown: Boolean + val confirm: String? + val dismiss: String? +} + +@Parcelize +private data class ConfirmDialogVisualsImpl( + override val title: String, + override val content: String, + override val isMarkdown: Boolean, + override val confirm: String?, + override val dismiss: String?, +) : ConfirmDialogVisuals { + companion object { + val Empty: ConfirmDialogVisuals = ConfirmDialogVisualsImpl("", "", false, null, null) + } +} + +interface DialogHandle { + val isShown: Boolean + val dialogType: String + fun show() + fun hide() +} + +interface LoadingDialogHandle : DialogHandle { + suspend fun withLoading(block: suspend () -> R): R + fun showLoading() +} + +sealed interface ConfirmResult { + object Confirmed : ConfirmResult + object Canceled : ConfirmResult +} + +interface ConfirmDialogHandle : DialogHandle { + val visuals: ConfirmDialogVisuals + + fun showConfirm( + title: String, + content: String, + markdown: Boolean = false, + confirm: String? = null, + dismiss: String? = null + ) + + suspend fun awaitConfirm( + + title: String, + content: String, + markdown: Boolean = false, + confirm: String? = null, + dismiss: String? = null + ): ConfirmResult +} + +private abstract class DialogHandleBase( + val visible: MutableState, + val coroutineScope: CoroutineScope +) : DialogHandle { + override val isShown: Boolean + get() = visible.value + + override fun show() { + coroutineScope.launch { + visible.value = true + } + } + + final override fun hide() { + coroutineScope.launch { + visible.value = false + } + } + + override fun toString(): String { + return dialogType + } +} + +private class LoadingDialogHandleImpl( + visible: MutableState, + coroutineScope: CoroutineScope +) : LoadingDialogHandle, DialogHandleBase(visible, coroutineScope) { + override suspend fun withLoading(block: suspend () -> R): R { + return coroutineScope.async { + try { + visible.value = true + block() + } finally { + visible.value = false + } + }.await() + } + + override fun showLoading() { + show() + } + + override val dialogType: String get() = "LoadingDialog" +} + +typealias NullableCallback = (() -> Unit)? + +interface ConfirmCallback { + + val onConfirm: NullableCallback + + val onDismiss: NullableCallback + + val isEmpty: Boolean get() = onConfirm == null && onDismiss == null + + companion object { + operator fun invoke(onConfirmProvider: () -> NullableCallback, onDismissProvider: () -> NullableCallback): ConfirmCallback { + return object : ConfirmCallback { + override val onConfirm: NullableCallback + get() = onConfirmProvider() + override val onDismiss: NullableCallback + get() = onDismissProvider() + } + } + } +} + +private class ConfirmDialogHandleImpl( + visible: MutableState, + coroutineScope: CoroutineScope, + callback: ConfirmCallback, + override var visuals: ConfirmDialogVisuals = ConfirmDialogVisualsImpl.Empty, + private val resultFlow: ReceiveChannel +) : ConfirmDialogHandle, DialogHandleBase(visible, coroutineScope) { + private class ResultCollector( + private val callback: ConfirmCallback + ) : FlowCollector { + fun handleResult(result: ConfirmResult) { + Log.d(TAG, "handleResult: ${result.javaClass.simpleName}") + when (result) { + ConfirmResult.Confirmed -> onConfirm() + ConfirmResult.Canceled -> onDismiss() + } + } + + fun onConfirm() { + callback.onConfirm?.invoke() + } + + fun onDismiss() { + callback.onDismiss?.invoke() + } + + override suspend fun emit(value: ConfirmResult) { + handleResult(value) + } + } + + private val resultCollector = ResultCollector(callback) + + private var awaitContinuation: CancellableContinuation? = null + + private val isCallbackEmpty = callback.isEmpty + + init { + coroutineScope.launch { + resultFlow + .consumeAsFlow() + .onEach { result -> + awaitContinuation?.let { + awaitContinuation = null + if (it.isActive) { + it.resume(result) + } + } + } + .onEach { hide() } + .collect(resultCollector) + } + } + + private suspend fun awaitResult(): ConfirmResult { + return suspendCancellableCoroutine { + awaitContinuation = it.apply { + if (isCallbackEmpty) { + invokeOnCancellation { + visible.value = false + } + } + } + } + } + + fun updateVisuals(visuals: ConfirmDialogVisuals) { + this.visuals = visuals + } + + override fun show() { + if (visuals !== ConfirmDialogVisualsImpl.Empty) { + super.show() + } else { + throw UnsupportedOperationException("can't show confirm dialog with the Empty visuals") + } + } + + override fun showConfirm( + title: String, + content: String, + markdown: Boolean, + confirm: String?, + dismiss: String? + ) { + coroutineScope.launch { + updateVisuals(ConfirmDialogVisualsImpl(title, content, markdown, confirm, dismiss)) + show() + } + } + + override suspend fun awaitConfirm( + title: String, + content: String, + markdown: Boolean, + confirm: String?, + dismiss: String? + ): ConfirmResult { + coroutineScope.launch { + updateVisuals(ConfirmDialogVisualsImpl(title, content, markdown, confirm, dismiss)) + show() + } + return awaitResult() + } + + override val dialogType: String get() = "ConfirmDialog" + + override fun toString(): String { + return "${super.toString()}(visuals: $visuals)" + } + + companion object { + fun Saver( + visible: MutableState, + coroutineScope: CoroutineScope, + callback: ConfirmCallback, + resultChannel: ReceiveChannel + ) = Saver( + save = { + it.visuals + }, + restore = { + Log.d(TAG, "ConfirmDialog restore, visuals: $it") + ConfirmDialogHandleImpl(visible, coroutineScope, callback, it, resultChannel) + } + ) + } +} + +private class CustomDialogHandleImpl( + visible: MutableState, + coroutineScope: CoroutineScope +) : DialogHandleBase(visible, coroutineScope) { + override val dialogType: String get() = "CustomDialog" +} + +@Composable +fun rememberLoadingDialog(): LoadingDialogHandle { + val visible = remember { + mutableStateOf(false) + } + val coroutineScope = rememberCoroutineScope() + + if (visible.value) { + LoadingDialog() + } + + return remember { + LoadingDialogHandleImpl(visible, coroutineScope) + } +} + +@Composable +private fun rememberConfirmDialog(visuals: ConfirmDialogVisuals, callback: ConfirmCallback): ConfirmDialogHandle { + val visible = rememberSaveable { + mutableStateOf(false) + } + val coroutineScope = rememberCoroutineScope() + val resultChannel = remember { + Channel() + } + + val handle = rememberSaveable( + saver = ConfirmDialogHandleImpl.Saver(visible, coroutineScope, callback, resultChannel), + init = { + ConfirmDialogHandleImpl(visible, coroutineScope, callback, visuals, resultChannel) + } + ) + + if (visible.value) { + ConfirmDialog( + handle.visuals, + confirm = { coroutineScope.launch { resultChannel.send(ConfirmResult.Confirmed) } }, + dismiss = { coroutineScope.launch { resultChannel.send(ConfirmResult.Canceled) } } + ) + } + + return handle +} + +@Composable +fun rememberConfirmCallback(onConfirm: NullableCallback, onDismiss: NullableCallback): ConfirmCallback { + val currentOnConfirm by rememberUpdatedState(newValue = onConfirm) + val currentOnDismiss by rememberUpdatedState(newValue = onDismiss) + return remember { + ConfirmCallback({ currentOnConfirm }, { currentOnDismiss }) + } +} + +@Composable +fun rememberConfirmDialog(onConfirm: NullableCallback = null, onDismiss: NullableCallback = null): ConfirmDialogHandle { + return rememberConfirmDialog(rememberConfirmCallback(onConfirm, onDismiss)) +} + +@Composable +fun rememberConfirmDialog(callback: ConfirmCallback): ConfirmDialogHandle { + return rememberConfirmDialog(ConfirmDialogVisualsImpl.Empty, callback) +} + +@Composable +fun rememberCustomDialog(composable: @Composable (dismiss: () -> Unit) -> Unit): DialogHandle { + val visible = rememberSaveable { + mutableStateOf(false) + } + val coroutineScope = rememberCoroutineScope() + if (visible.value) { + composable { visible.value = false } + } + return remember { + CustomDialogHandleImpl(visible, coroutineScope) + } +} + +@Composable +private fun LoadingDialog() { + Dialog( + onDismissRequest = {}, + properties = DialogProperties(dismissOnClickOutside = false, dismissOnBackPress = false) + ) { + Surface( + modifier = Modifier.size(100.dp), shape = RoundedCornerShape(8.dp) + ) { + Box( + contentAlignment = Alignment.Center, + ) { + CircularProgressIndicator() + } + } + } +} + +@Composable +private fun ConfirmDialog(visuals: ConfirmDialogVisuals, confirm: () -> Unit, dismiss: () -> Unit) { + AlertDialog( + onDismissRequest = { + dismiss() + }, + title = { + Text(text = visuals.title) + }, + text = { + if (visuals.isMarkdown) { + MarkdownContent(content = visuals.content) + } else { + Text(text = visuals.content) + } + }, + confirmButton = { + TextButton(onClick = confirm) { + Text(text = visuals.confirm ?: stringResource(id = android.R.string.ok)) + } + }, + dismissButton = { + TextButton(onClick = dismiss) { + Text(text = visuals.dismiss ?: stringResource(id = android.R.string.cancel)) + } + }, + ) +} + +@Composable +private fun MarkdownContent(content: String) { + val contentColor = LocalContentColor.current + val scrollState = rememberScrollState() + + Column( + modifier = Modifier + .fillMaxWidth() + .verticalScroll( + state = scrollState, + flingBehavior = ScrollableDefaults.flingBehavior() + ) + .padding(12.dp) + ) { + AndroidView( + factory = { context -> + TextView(context).apply { + movementMethod = LinkMovementMethod.getInstance() + setSpannableFactory(NoCopySpannableFactory.getInstance()) + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { + breakStrategy = LineBreaker.BREAK_STRATEGY_SIMPLE + } + hyphenationFrequency = Layout.HYPHENATION_FREQUENCY_NONE + layoutParams = ViewGroup.LayoutParams( + ViewGroup.LayoutParams.MATCH_PARENT, + ViewGroup.LayoutParams.WRAP_CONTENT + ) + } + }, + update = { + Markwon.create(it.context).setMarkdown(it, content) + it.setTextColor(contentColor.toArgb()) + } + ) + } +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/component/FabVisibilityState.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/component/FabVisibilityState.kt new file mode 100644 index 0000000..9042cdd --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/component/FabVisibilityState.kt @@ -0,0 +1,75 @@ +package com.sukisu.ultra.ui.component + +import android.annotation.SuppressLint +import androidx.compose.animation.* +import androidx.compose.animation.core.Spring +import androidx.compose.animation.core.animateFloatAsState +import androidx.compose.animation.core.spring +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.lazy.LazyListState +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.runtime.* +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.alpha +import androidx.compose.ui.draw.clip +import androidx.compose.ui.draw.scale +import androidx.compose.ui.unit.dp + +@SuppressLint("AutoboxingStateCreation") +@Composable +fun rememberFabVisibilityState(listState: LazyListState): State { + var previousScrollOffset by remember { mutableStateOf(0) } + var previousIndex by remember { mutableStateOf(0) } + val fabVisible = remember { mutableStateOf(true) } + + LaunchedEffect(listState) { + snapshotFlow { listState.firstVisibleItemIndex to listState.firstVisibleItemScrollOffset } + .collect { (index, offset) -> + if (previousIndex == 0 && previousScrollOffset == 0) { + fabVisible.value = true + } else { + val isScrollingDown = when { + index > previousIndex -> false + index < previousIndex -> true + else -> offset < previousScrollOffset + } + + fabVisible.value = isScrollingDown + } + + previousIndex = index + previousScrollOffset = offset + } + } + + return fabVisible +} + +@Composable +fun AnimatedFab( + visible: Boolean, + content: @Composable () -> Unit +) { + val scale by animateFloatAsState( + targetValue = if (visible) 1f else 0f, + animationSpec = spring( + dampingRatio = Spring.DampingRatioMediumBouncy, + stiffness = Spring.StiffnessLow + ) + ) + + AnimatedVisibility( + visible = visible, + enter = fadeIn() + scaleIn(), + exit = fadeOut() + scaleOut(targetScale = 0.8f) + ) { + Box( + modifier = Modifier + .clip(RoundedCornerShape(16.dp)) + .scale(scale) + .alpha(scale) + ) { + content() + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/component/InstallConfirmationDialog.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/component/InstallConfirmationDialog.kt new file mode 100644 index 0000000..6ae6a47 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/component/InstallConfirmationDialog.kt @@ -0,0 +1,441 @@ +package com.sukisu.ultra.ui.component + +import android.content.Context +import android.net.Uri +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.filled.Help +import androidx.compose.material.icons.filled.Extension +import androidx.compose.material.icons.filled.GetApp +import androidx.compose.material.icons.filled.Memory +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.unit.dp +import com.sukisu.ultra.R +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.withContext +import java.io.BufferedReader +import java.io.IOException +import java.io.InputStreamReader +import java.util.zip.ZipInputStream + +enum class ZipType { + MODULE, + KERNEL, + UNKNOWN +} + +data class ZipFileInfo( + val uri: Uri, + val type: ZipType, + val name: String = "", + val version: String = "", + val versionCode: String = "", + val author: String = "", + val description: String = "", + val kernelVersion: String = "", + val supported: String = "" +) + +object ZipFileDetector { + + fun detectZipType(context: Context, uri: Uri): ZipType { + return try { + context.contentResolver.openInputStream(uri)?.use { inputStream -> + ZipInputStream(inputStream).use { zipStream -> + var hasModuleProp = false + var hasToolsFolder = false + var hasAnykernelSh = false + + var entry = zipStream.nextEntry + while (entry != null) { + val entryName = entry.name.lowercase() + + when { + entryName == "module.prop" || entryName.endsWith("/module.prop") -> { + hasModuleProp = true + } + entryName.startsWith("tools/") || entryName == "tools" -> { + hasToolsFolder = true + } + entryName == "anykernel.sh" || entryName.endsWith("/anykernel.sh") -> { + hasAnykernelSh = true + } + } + + zipStream.closeEntry() + entry = zipStream.nextEntry + } + + when { + hasModuleProp -> ZipType.MODULE + hasToolsFolder && hasAnykernelSh -> ZipType.KERNEL + else -> ZipType.UNKNOWN + } + } + } ?: ZipType.UNKNOWN + } catch (e: IOException) { + e.printStackTrace() + ZipType.UNKNOWN + } + } + + fun parseModuleInfo(context: Context, uri: Uri): ZipFileInfo { + var zipInfo = ZipFileInfo(uri = uri, type = ZipType.MODULE) + + try { + context.contentResolver.openInputStream(uri)?.use { inputStream -> + ZipInputStream(inputStream).use { zipStream -> + var entry = zipStream.nextEntry + while (entry != null) { + if (entry.name.lowercase() == "module.prop" || entry.name.endsWith("/module.prop")) { + val reader = BufferedReader(InputStreamReader(zipStream)) + val props = mutableMapOf() + + var line = reader.readLine() + while (line != null) { + if (line.contains("=") && !line.startsWith("#")) { + val parts = line.split("=", limit = 2) + if (parts.size == 2) { + props[parts[0].trim()] = parts[1].trim() + } + } + line = reader.readLine() + } + + zipInfo = zipInfo.copy( + name = props["name"] ?: context.getString(R.string.unknown_module), + version = props["version"] ?: "", + versionCode = props["versionCode"] ?: "", + author = props["author"] ?: "", + description = props["description"] ?: "" + ) + break + } + zipStream.closeEntry() + entry = zipStream.nextEntry + } + } + } + } catch (e: Exception) { + e.printStackTrace() + } + + return zipInfo + } + + fun parseKernelInfo(context: Context, uri: Uri): ZipFileInfo { + var zipInfo = ZipFileInfo(uri = uri, type = ZipType.KERNEL) + + try { + context.contentResolver.openInputStream(uri)?.use { inputStream -> + ZipInputStream(inputStream).use { zipStream -> + var entry = zipStream.nextEntry + while (entry != null) { + if (entry.name.lowercase() == "anykernel.sh" || entry.name.endsWith("/anykernel.sh")) { + val reader = BufferedReader(InputStreamReader(zipStream)) + val props = mutableMapOf() + + var inPropertiesBlock = false + var line = reader.readLine() + while (line != null) { + if (line.contains("properties()")) { + inPropertiesBlock = true + } else if (inPropertiesBlock && line.contains("'; }")) { + inPropertiesBlock = false + } else if (inPropertiesBlock) { + val propertyLine = line.trim() + if (propertyLine.contains("=") && !propertyLine.startsWith("#")) { + val parts = propertyLine.split("=", limit = 2) + if (parts.size == 2) { + val key = parts[0].trim() + val value = parts[1].trim().removeSurrounding("'").removeSurrounding("\"") + when (key) { + "kernel.string" -> props["name"] = value + "supported.versions" -> props["supported"] = value + } + } + } + } + + // 解析普通变量定义 + if (line.contains("kernel.string=") && !inPropertiesBlock) { + val value = line.substringAfter("kernel.string=").trim().removeSurrounding("\"") + props["name"] = value + } + if (line.contains("supported.versions=") && !inPropertiesBlock) { + val value = line.substringAfter("supported.versions=").trim().removeSurrounding("\"") + props["supported"] = value + } + if (line.contains("kernel.version=") && !inPropertiesBlock) { + val value = line.substringAfter("kernel.version=").trim().removeSurrounding("\"") + props["version"] = value + } + if (line.contains("kernel.author=") && !inPropertiesBlock) { + val value = line.substringAfter("kernel.author=").trim().removeSurrounding("\"") + props["author"] = value + } + + line = reader.readLine() + } + + zipInfo = zipInfo.copy( + name = props["name"] ?: context.getString(R.string.unknown_kernel), + version = props["version"] ?: "", + author = props["author"] ?: "", + supported = props["supported"] ?: "", + kernelVersion = props["version"] ?: "" + ) + break + } + zipStream.closeEntry() + entry = zipStream.nextEntry + } + } + } + } catch (e: Exception) { + e.printStackTrace() + } + + return zipInfo + } + + suspend fun detectAndParseZipFiles(context: Context, zipUris: List): List { + return withContext(Dispatchers.IO) { + val zipFileInfos = mutableListOf() + + for (uri in zipUris) { + val zipType = detectZipType(context, uri) + val zipInfo = when (zipType) { + ZipType.MODULE -> parseModuleInfo(context, uri) + ZipType.KERNEL -> parseKernelInfo(context, uri) + ZipType.UNKNOWN -> ZipFileInfo( + uri = uri, + type = ZipType.UNKNOWN, + name = context.getString(R.string.unknown_file) + ) + } + zipFileInfos.add(zipInfo) + } + + zipFileInfos.filter { it.type != ZipType.UNKNOWN } + } + } +} + +@Composable +fun InstallConfirmationDialog( + show: Boolean, + zipFiles: List, + onConfirm: (List) -> Unit, + onDismiss: () -> Unit +) { + if (show && zipFiles.isNotEmpty()) { + val context = LocalContext.current + + AlertDialog( + onDismissRequest = onDismiss, + title = { + Row( + verticalAlignment = Alignment.CenterVertically, + modifier = Modifier.fillMaxWidth() + ) { + Icon( + imageVector = if (zipFiles.any { it.type == ZipType.KERNEL }) + Icons.Default.Memory else Icons.Default.Extension, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier.size(24.dp) + ) + Spacer(modifier = Modifier.width(12.dp)) + Text( + text = if (zipFiles.size == 1) { + context.getString(R.string.confirm_installation) + } else { + context.getString(R.string.confirm_multiple_installation, zipFiles.size) + }, + style = MaterialTheme.typography.headlineSmall + ) + } + }, + text = { + LazyColumn( + modifier = Modifier + .fillMaxWidth() + .heightIn(max = 400.dp), + verticalArrangement = Arrangement.spacedBy(12.dp) + ) { + items(zipFiles.size) { index -> + val zipFile = zipFiles[index] + InstallItemCard(zipFile = zipFile) + } + } + }, + confirmButton = { + Button( + onClick = { onConfirm(zipFiles) }, + colors = ButtonDefaults.buttonColors( + containerColor = MaterialTheme.colorScheme.primary + ) + ) { + Icon( + imageVector = Icons.Default.GetApp, + contentDescription = null, + modifier = Modifier.size(18.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text(context.getString(R.string.install_confirm)) + } + }, + dismissButton = { + TextButton(onClick = onDismiss) { + Text( + context.getString(android.R.string.cancel), + color = MaterialTheme.colorScheme.onSurface + ) + } + }, + modifier = Modifier.widthIn(min = 320.dp, max = 560.dp) + ) + } +} + +@Composable +fun InstallItemCard(zipFile: ZipFileInfo) { + val context = LocalContext.current + + ElevatedCard( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.elevatedCardColors( + containerColor = when (zipFile.type) { + ZipType.MODULE -> MaterialTheme.colorScheme.primaryContainer.copy(alpha = 0.3f) + ZipType.KERNEL -> MaterialTheme.colorScheme.tertiaryContainer.copy(alpha = 0.3f) + else -> MaterialTheme.colorScheme.surfaceVariant + } + ), + elevation = CardDefaults.elevatedCardElevation(defaultElevation = 0.dp) + ) { + Column( + modifier = Modifier + .fillMaxWidth() + .padding(16.dp) + ) { + Row( + verticalAlignment = Alignment.CenterVertically, + modifier = Modifier.fillMaxWidth() + ) { + Icon( + imageVector = when (zipFile.type) { + ZipType.MODULE -> Icons.Default.Extension + ZipType.KERNEL -> Icons.Default.Memory + else -> Icons.AutoMirrored.Filled.Help + }, + contentDescription = null, + tint = when (zipFile.type) { + ZipType.MODULE -> MaterialTheme.colorScheme.primary + ZipType.KERNEL -> MaterialTheme.colorScheme.tertiary + else -> MaterialTheme.colorScheme.onSurfaceVariant + }, + modifier = Modifier.size(20.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Column(modifier = Modifier.weight(1f)) { + Text( + text = zipFile.name.ifEmpty { + when (zipFile.type) { + ZipType.MODULE -> context.getString(R.string.unknown_module) + ZipType.KERNEL -> context.getString(R.string.unknown_kernel) + else -> context.getString(R.string.unknown_file) + } + }, + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Bold, + color = MaterialTheme.colorScheme.onSurface + ) + Text( + text = when (zipFile.type) { + ZipType.MODULE -> context.getString(R.string.module_package) + ZipType.KERNEL -> context.getString(R.string.kernel_package) + else -> context.getString(R.string.unknown_package) + }, + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + } + + // 详细信息 + if (zipFile.version.isNotEmpty() || zipFile.author.isNotEmpty() || + zipFile.description.isNotEmpty() || zipFile.supported.isNotEmpty()) { + + Spacer(modifier = Modifier.height(12.dp)) + HorizontalDivider( + color = MaterialTheme.colorScheme.outline.copy(alpha = 0.3f), + thickness = 0.5.dp + ) + Spacer(modifier = Modifier.height(8.dp)) + + // 版本信息 + if (zipFile.version.isNotEmpty()) { + InfoRow( + label = context.getString(R.string.version), + value = zipFile.version + if (zipFile.versionCode.isNotEmpty()) " (${zipFile.versionCode})" else "" + ) + } + + // 作者信息 + if (zipFile.author.isNotEmpty()) { + InfoRow( + label = context.getString(R.string.author), + value = zipFile.author + ) + } + + // 描述信息 (仅模块) + if (zipFile.description.isNotEmpty() && zipFile.type == ZipType.MODULE) { + InfoRow( + label = context.getString(R.string.description), + value = zipFile.description + ) + } + + // 支持设备 (仅内核) + if (zipFile.supported.isNotEmpty() && zipFile.type == ZipType.KERNEL) { + InfoRow( + label = context.getString(R.string.supported_devices), + value = zipFile.supported + ) + } + } + } + } +} + +@Composable +fun InfoRow(label: String, value: String) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 2.dp), + verticalAlignment = Alignment.Top + ) { + Text( + text = "$label:", + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant, + modifier = Modifier.widthIn(min = 60.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text( + text = value, + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurface, + modifier = Modifier.weight(1f) + ) + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/component/KeyEventBlocker.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/component/KeyEventBlocker.kt new file mode 100644 index 0000000..3c1b358 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/component/KeyEventBlocker.kt @@ -0,0 +1,28 @@ +package com.sukisu.ultra.ui.component + +import androidx.compose.foundation.focusable +import androidx.compose.foundation.layout.Box +import androidx.compose.runtime.Composable +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.remember +import androidx.compose.ui.Modifier +import androidx.compose.ui.focus.FocusRequester +import androidx.compose.ui.focus.focusRequester +import androidx.compose.ui.input.key.KeyEvent +import androidx.compose.ui.input.key.onKeyEvent + +@Composable +fun KeyEventBlocker(predicate: (KeyEvent) -> Boolean) { + val requester = remember { FocusRequester() } + Box( + Modifier + .onKeyEvent { + predicate(it) + } + .focusRequester(requester) + .focusable() + ) + LaunchedEffect(Unit) { + requester.requestFocus() + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/component/KsuIsValidCheck.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/component/KsuIsValidCheck.kt new file mode 100644 index 0000000..eb3c5db --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/component/KsuIsValidCheck.kt @@ -0,0 +1,17 @@ +package com.sukisu.ultra.ui.component + +import androidx.compose.runtime.Composable +import com.sukisu.ultra.Natives +import com.sukisu.ultra.ksuApp + +@Composable +fun KsuIsValid( + content: @Composable () -> Unit +) { + val isManager = Natives.isManager + val ksuVersion = if (isManager) Natives.version else null + + if (ksuVersion != null) { + content() + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/component/SearchBar.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/component/SearchBar.kt new file mode 100644 index 0000000..03deff5 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/component/SearchBar.kt @@ -0,0 +1,154 @@ +package com.sukisu.ultra.ui.component + +import android.util.Log +import androidx.compose.animation.AnimatedVisibility +import androidx.compose.animation.fadeIn +import androidx.compose.animation.fadeOut +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.text.KeyboardActions +import androidx.compose.foundation.text.KeyboardOptions +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.outlined.ArrowBack +import androidx.compose.material.icons.filled.Close +import androidx.compose.material.icons.filled.Search +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.focus.FocusRequester +import androidx.compose.ui.focus.focusRequester +import androidx.compose.ui.focus.onFocusChanged +import androidx.compose.ui.platform.LocalSoftwareKeyboardController +import androidx.compose.ui.text.input.ImeAction +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import com.sukisu.ultra.ui.theme.CardConfig + +private const val TAG = "SearchBar" + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +fun SearchAppBar( + title: @Composable () -> Unit, + searchText: String, + onSearchTextChange: (String) -> Unit, + onClearClick: () -> Unit, + onBackClick: (() -> Unit)? = null, + onConfirm: (() -> Unit)? = null, + dropdownContent: @Composable (() -> Unit)? = null, + scrollBehavior: TopAppBarScrollBehavior? = null +) { + val keyboardController = LocalSoftwareKeyboardController.current + val focusRequester = remember { FocusRequester() } + var onSearch by remember { mutableStateOf(false) } + + // 获取卡片颜色和透明度 + val colorScheme = MaterialTheme.colorScheme + val cardColor = if (CardConfig.isCustomBackgroundEnabled) { + colorScheme.surfaceContainerLow + } else { + colorScheme.background + } + val cardAlpha = CardConfig.cardAlpha + + if (onSearch) { + LaunchedEffect(Unit) { focusRequester.requestFocus() } + } + DisposableEffect(Unit) { + onDispose { + keyboardController?.hide() + } + } + + TopAppBar( + title = { + Box { + AnimatedVisibility( + modifier = Modifier.align(Alignment.CenterStart), + visible = !onSearch, + enter = fadeIn(), + exit = fadeOut(), + content = { title() } + ) + + AnimatedVisibility( + visible = onSearch, + enter = fadeIn(), + exit = fadeOut() + ) { + OutlinedTextField( + modifier = Modifier + .fillMaxWidth() + .padding(top = 2.dp, bottom = 2.dp, end = if (onBackClick != null) 0.dp else 14.dp) + .focusRequester(focusRequester) + .onFocusChanged { focusState -> + if (focusState.isFocused) onSearch = true + Log.d(TAG, "onFocusChanged: $focusState") + }, + value = searchText, + onValueChange = onSearchTextChange, + trailingIcon = { + IconButton( + onClick = { + onSearch = false + keyboardController?.hide() + onClearClick() + }, + content = { Icon(Icons.Filled.Close, null) } + ) + }, + maxLines = 1, + singleLine = true, + keyboardOptions = KeyboardOptions.Default.copy(imeAction = ImeAction.Done), + keyboardActions = KeyboardActions(onDone = { + keyboardController?.hide() + onConfirm?.invoke() + }) + ) + } + } + }, + navigationIcon = { + if (onBackClick != null) { + IconButton( + onClick = onBackClick, + content = { Icon(Icons.AutoMirrored.Outlined.ArrowBack, null) } + ) + } + }, + actions = { + AnimatedVisibility( + visible = !onSearch + ) { + IconButton( + onClick = { onSearch = true }, + content = { Icon(Icons.Filled.Search, null) } + ) + } + + if (dropdownContent != null) { + dropdownContent() + } + + }, + windowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal), + scrollBehavior = scrollBehavior, + colors = TopAppBarDefaults.topAppBarColors( + containerColor = cardColor.copy(alpha = cardAlpha), + scrolledContainerColor = cardColor.copy(alpha = cardAlpha) + ) + ) +} + +@OptIn(ExperimentalMaterial3Api::class) +@Preview +@Composable +private fun SearchAppBarPreview() { + var searchText by remember { mutableStateOf("") } + SearchAppBar( + title = { Text("Search text") }, + searchText = searchText, + onSearchTextChange = { searchText = it }, + onClearClick = { searchText = "" } + ) +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/component/SettingsItem.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/component/SettingsItem.kt new file mode 100644 index 0000000..6ccf428 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/component/SettingsItem.kt @@ -0,0 +1,106 @@ +package com.sukisu.ultra.ui.component + +import androidx.compose.foundation.LocalIndication +import androidx.compose.foundation.interaction.MutableInteractionSource +import androidx.compose.foundation.selection.toggleable +import androidx.compose.material3.* +import androidx.compose.runtime.Composable +import androidx.compose.runtime.remember +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.alpha +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.vector.ImageVector +import androidx.compose.ui.semantics.Role +import com.dergoogler.mmrl.ui.component.LabelItem +import com.dergoogler.mmrl.ui.component.text.TextRow +import com.sukisu.ultra.ui.theme.CardConfig + +@Composable +fun SwitchItem( + icon: ImageVector? = null, + title: String, + summary: String? = null, + checked: Boolean, + enabled: Boolean = true, + beta: Boolean = false, + onCheckedChange: (Boolean) -> Unit +) { + val interactionSource = remember { MutableInteractionSource() } + val stateAlpha = remember(checked, enabled) { Modifier.alpha(if (enabled) 1f else 0.5f) } + + MaterialTheme( + colorScheme = MaterialTheme.colorScheme.copy( + surface = if (CardConfig.isCustomBackgroundEnabled) Color.Transparent else MaterialTheme.colorScheme.surfaceContainerHigh + ) + ) { + ListItem( + modifier = Modifier + .toggleable( + value = checked, + interactionSource = interactionSource, + role = Role.Switch, + enabled = enabled, + indication = LocalIndication.current, + onValueChange = onCheckedChange + ), + headlineContent = { + TextRow( + leadingContent = if (beta) { + { + LabelItem( + modifier = Modifier.then(stateAlpha), + text = "Beta" + ) + } + } else null + ) { + Text( + modifier = Modifier.then(stateAlpha), + text = title, + ) + } + }, + leadingContent = icon?.let { + { + Icon( + modifier = Modifier.then(stateAlpha), + imageVector = icon, + contentDescription = title + ) + } + }, + trailingContent = { + Switch( + checked = checked, + enabled = enabled, + onCheckedChange = onCheckedChange, + interactionSource = interactionSource + ) + }, + supportingContent = { + if (summary != null) { + Text( + modifier = Modifier.then(stateAlpha), + text = summary + ) + } + } + ) + } +} + +@Composable +fun RadioItem( + title: String, + selected: Boolean, + onClick: () -> Unit, +) { + ListItem( + headlineContent = { + Text(title) + }, + leadingContent = { + RadioButton(selected = selected, onClick = onClick) + } + ) +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/component/SuperDropdown.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/component/SuperDropdown.kt new file mode 100644 index 0000000..9103e55 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/component/SuperDropdown.kt @@ -0,0 +1,250 @@ +package com.sukisu.ultra.ui.component + +import androidx.compose.foundation.background +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.filled.ArrowForward +import androidx.compose.material.icons.filled.Check +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.vector.ImageVector +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.style.TextOverflow +import androidx.compose.ui.unit.Dp +import androidx.compose.ui.unit.dp + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +fun SuperDropdown( + items: List, + selectedIndex: Int, + title: String, + summary: String? = null, + icon: ImageVector? = null, + enabled: Boolean = true, + showValue: Boolean = true, + maxHeight: Dp? = 400.dp, + colors: SuperDropdownColors = SuperDropdownDefaults.colors(), + leftAction: (@Composable () -> Unit)? = null, + onSelectedIndexChange: (Int) -> Unit +) { + var showDialog by remember { mutableStateOf(false) } + val selectedItemText = items.getOrNull(selectedIndex) ?: "" + val itemsNotEmpty = items.isNotEmpty() + val actualEnabled = enabled && itemsNotEmpty + + Row( + modifier = Modifier + .fillMaxWidth() + .clickable(enabled = actualEnabled) { showDialog = true } + .padding(horizontal = 16.dp, vertical = 12.dp), + verticalAlignment = Alignment.Top + ) { + if (leftAction != null) { + leftAction() + } else if (icon != null) { + Icon( + imageVector = icon, + contentDescription = null, + tint = if (actualEnabled) colors.iconColor else colors.disabledIconColor, + modifier = Modifier + .padding(end = 16.dp) + .size(24.dp) + ) + } + + Column(modifier = Modifier.weight(1f)) { + Text( + text = title, + style = MaterialTheme.typography.titleMedium, + color = if (actualEnabled) colors.titleColor else colors.disabledTitleColor + ) + + if (summary != null) { + Spacer(modifier = Modifier.height(3.dp)) + Text( + text = summary, + style = MaterialTheme.typography.bodyMedium, + color = if (actualEnabled) colors.summaryColor else colors.disabledSummaryColor + ) + } + + if (showValue && itemsNotEmpty) { + Spacer(modifier = Modifier.height(3.dp)) + Text( + text = selectedItemText, + style = MaterialTheme.typography.bodyMedium, + color = if (actualEnabled) colors.valueColor else colors.disabledValueColor, + maxLines = 2, + overflow = TextOverflow.Ellipsis + ) + } + } + + Icon( + imageVector = Icons.AutoMirrored.Filled.ArrowForward, + contentDescription = null, + tint = if (actualEnabled) colors.arrowColor else colors.disabledArrowColor, + modifier = Modifier.size(24.dp) + ) + } + + if (showDialog && itemsNotEmpty) { + AlertDialog( + onDismissRequest = { showDialog = false }, + title = { + Text( + text = title, + style = MaterialTheme.typography.headlineSmall + ) + }, + text = { + val dialogMaxHeight = maxHeight ?: 400.dp + LazyColumn( + modifier = Modifier + .fillMaxWidth() + .heightIn(max = dialogMaxHeight), + verticalArrangement = Arrangement.spacedBy(4.dp) + ) { + items(items.size) { index -> + DropdownItem( + text = items[index], + isSelected = selectedIndex == index, + colors = colors, + onClick = { + onSelectedIndexChange(index) + showDialog = false + } + ) + } + } + }, + confirmButton = { + TextButton(onClick = { showDialog = false }) { + Text(text = stringResource(id = android.R.string.cancel)) + } + }, + containerColor = colors.dialogBackgroundColor, + shape = MaterialTheme.shapes.extraLarge, + tonalElevation = 4.dp + ) + } +} + +@Composable +private fun DropdownItem( + text: String, + isSelected: Boolean, + colors: SuperDropdownColors, + onClick: () -> Unit +) { + val backgroundColor = if (isSelected) { + colors.selectedBackgroundColor + } else { + Color.Transparent + } + + val contentColor = if (isSelected) { + colors.selectedContentColor + } else { + colors.contentColor + } + + Row( + modifier = Modifier + .fillMaxWidth() + .clip(MaterialTheme.shapes.medium) + .background(backgroundColor) + .clickable(onClick = onClick) + .padding(vertical = 12.dp, horizontal = 12.dp), + verticalAlignment = Alignment.CenterVertically + ) { + RadioButton( + selected = isSelected, + onClick = null, + colors = RadioButtonDefaults.colors( + selectedColor = colors.selectedContentColor, + unselectedColor = colors.contentColor + ) + ) + + Spacer(modifier = Modifier.width(12.dp)) + + Text( + text = text, + style = MaterialTheme.typography.bodyLarge, + color = contentColor, + modifier = Modifier.weight(1f) + ) + + if (isSelected) { + Icon( + imageVector = Icons.Default.Check, + contentDescription = null, + tint = colors.selectedContentColor, + modifier = Modifier.size(20.dp) + ) + } + } +} + +@Immutable +data class SuperDropdownColors( + val titleColor: Color, + val summaryColor: Color, + val valueColor: Color, + val iconColor: Color, + val arrowColor: Color, + val disabledTitleColor: Color, + val disabledSummaryColor: Color, + val disabledValueColor: Color, + val disabledIconColor: Color, + val disabledArrowColor: Color, + val dialogBackgroundColor: Color, + val contentColor: Color, + val selectedContentColor: Color, + val selectedBackgroundColor: Color +) + +object SuperDropdownDefaults { + @Composable + fun colors( + titleColor: Color = MaterialTheme.colorScheme.onSurface, + summaryColor: Color = MaterialTheme.colorScheme.onSurfaceVariant, + valueColor: Color = MaterialTheme.colorScheme.onSurfaceVariant, + iconColor: Color = MaterialTheme.colorScheme.primary, + arrowColor: Color = MaterialTheme.colorScheme.onSurfaceVariant, + disabledTitleColor: Color = MaterialTheme.colorScheme.onSurface.copy(alpha = 0.38f), + disabledSummaryColor: Color = MaterialTheme.colorScheme.onSurfaceVariant.copy(alpha = 0.38f), + disabledValueColor: Color = MaterialTheme.colorScheme.onSurfaceVariant.copy(alpha = 0.38f), + disabledIconColor: Color = MaterialTheme.colorScheme.onSurfaceVariant.copy(alpha = 0.38f), + disabledArrowColor: Color = MaterialTheme.colorScheme.onSurfaceVariant.copy(alpha = 0.38f), + dialogBackgroundColor: Color = MaterialTheme.colorScheme.surfaceContainerHigh, + contentColor: Color = MaterialTheme.colorScheme.onSurface, + selectedContentColor: Color = MaterialTheme.colorScheme.primary, + selectedBackgroundColor: Color = MaterialTheme.colorScheme.primaryContainer.copy(alpha = 0.3f) + ): SuperDropdownColors { + return SuperDropdownColors( + titleColor = titleColor, + summaryColor = summaryColor, + valueColor = valueColor, + iconColor = iconColor, + arrowColor = arrowColor, + disabledTitleColor = disabledTitleColor, + disabledSummaryColor = disabledSummaryColor, + disabledValueColor = disabledValueColor, + disabledIconColor = disabledIconColor, + disabledArrowColor = disabledArrowColor, + dialogBackgroundColor = dialogBackgroundColor, + contentColor = contentColor, + selectedContentColor = selectedContentColor, + selectedBackgroundColor = selectedBackgroundColor + ) + } +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/component/VerticalExpandableFab.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/component/VerticalExpandableFab.kt new file mode 100644 index 0000000..e37cd81 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/component/VerticalExpandableFab.kt @@ -0,0 +1,257 @@ +package com.sukisu.ultra.ui.component + +import androidx.compose.animation.* +import androidx.compose.animation.core.FastOutSlowInEasing +import androidx.compose.animation.core.animateFloatAsState +import androidx.compose.animation.core.tween +import androidx.compose.foundation.layout.* +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.* +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.alpha +import androidx.compose.ui.draw.rotate +import androidx.compose.ui.draw.scale +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.vector.ImageVector +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.Dp +import androidx.compose.ui.unit.dp +import com.sukisu.ultra.R + +data class FabMenuItem( + val icon: ImageVector, + val labelRes: Int, + val color: Color = Color.Unspecified, + val onClick: () -> Unit +) + +object FabAnimationConfig { + const val ANIMATION_DURATION = 300 + const val STAGGER_DELAY = 50 + val BUTTON_SPACING = 72.dp + val BUTTON_SIZE = 56.dp + val SMALL_BUTTON_SIZE = 48.dp +} + +@Composable +fun VerticalExpandableFab( + menuItems: List, + modifier: Modifier = Modifier, + buttonSize: Dp = FabAnimationConfig.BUTTON_SIZE, + smallButtonSize: Dp = FabAnimationConfig.SMALL_BUTTON_SIZE, + buttonSpacing: Dp = FabAnimationConfig.BUTTON_SPACING, + animationDurationMs: Int = FabAnimationConfig.ANIMATION_DURATION, + staggerDelayMs: Int = FabAnimationConfig.STAGGER_DELAY, + mainButtonIcon: ImageVector = Icons.Filled.Add, + mainButtonExpandedIcon: ImageVector = Icons.Filled.Close, + onMainButtonClick: (() -> Unit)? = null, +) { + var isExpanded by remember { mutableStateOf(false) } + + val rotationAngle by animateFloatAsState( + targetValue = if (isExpanded) 45f else 0f, + animationSpec = tween(animationDurationMs, easing = FastOutSlowInEasing), + label = "mainButtonRotation" + ) + + val mainButtonScale by animateFloatAsState( + targetValue = if (isExpanded) 1.1f else 1f, + animationSpec = tween(animationDurationMs, easing = FastOutSlowInEasing), + label = "mainButtonScale" + ) + + Box( + modifier = modifier.wrapContentSize(), + contentAlignment = Alignment.BottomEnd + ) { + menuItems.forEachIndexed { index, menuItem -> + val animatedOffsetY by animateFloatAsState( + targetValue = if (isExpanded) -(buttonSpacing.value * (index + 1)) else 0f, + animationSpec = tween( + durationMillis = animationDurationMs, + delayMillis = if (isExpanded) { + index * staggerDelayMs + } else { + (menuItems.size - index - 1) * staggerDelayMs + }, + easing = FastOutSlowInEasing + ), + label = "fabOffset$index" + ) + + val animatedScale by animateFloatAsState( + targetValue = if (isExpanded) 1f else 0f, + animationSpec = tween( + durationMillis = animationDurationMs, + delayMillis = if (isExpanded) { + index * staggerDelayMs + 100 + } else { + (menuItems.size - index - 1) * staggerDelayMs + }, + easing = FastOutSlowInEasing + ), + label = "fabScale$index" + ) + + val animatedAlpha by animateFloatAsState( + targetValue = if (isExpanded) 1f else 0f, + animationSpec = tween( + durationMillis = animationDurationMs, + delayMillis = if (isExpanded) { + index * staggerDelayMs + 150 + } else { + (menuItems.size - index - 1) * staggerDelayMs + }, + easing = FastOutSlowInEasing + ), + label = "fabAlpha$index" + ) + + Row( + modifier = Modifier + .offset(y = animatedOffsetY.dp) + .scale(animatedScale) + .alpha(animatedAlpha), + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.End + ) { + AnimatedVisibility( + visible = isExpanded && animatedScale > 0.5f, + enter = slideInHorizontally( + initialOffsetX = { it / 2 }, + animationSpec = tween(200) + ) + fadeIn(animationSpec = tween(200)), + exit = slideOutHorizontally( + targetOffsetX = { it / 2 }, + animationSpec = tween(150) + ) + fadeOut(animationSpec = tween(150)) + ) { + Surface( + modifier = Modifier.padding(end = 16.dp), + shape = MaterialTheme.shapes.small, + color = MaterialTheme.colorScheme.inverseSurface, + tonalElevation = 6.dp + ) { + Text( + text = stringResource(menuItem.labelRes), + modifier = Modifier.padding(horizontal = 12.dp, vertical = 6.dp), + style = MaterialTheme.typography.labelMedium, + color = MaterialTheme.colorScheme.inverseOnSurface + ) + } + } + + SmallFloatingActionButton( + onClick = { + menuItem.onClick() + isExpanded = false + }, + modifier = Modifier.size(smallButtonSize), + containerColor = if (menuItem.color != Color.Unspecified) { + menuItem.color + } else { + MaterialTheme.colorScheme.secondary + }, + contentColor = if (menuItem.color != Color.Unspecified) { + if (menuItem.color == Color.Gray) Color.White + else MaterialTheme.colorScheme.onSecondary + } else { + MaterialTheme.colorScheme.onSecondary + }, + elevation = FloatingActionButtonDefaults.elevation( + defaultElevation = 4.dp, + pressedElevation = 6.dp + ) + ) { + Icon( + imageVector = menuItem.icon, + contentDescription = stringResource(menuItem.labelRes), + modifier = Modifier.size(20.dp) + ) + } + } + } + + FloatingActionButton( + onClick = { + onMainButtonClick?.invoke() + isExpanded = !isExpanded + }, + modifier = Modifier.size(buttonSize).scale(mainButtonScale), + elevation = FloatingActionButtonDefaults.elevation( + defaultElevation = 6.dp, + pressedElevation = 8.dp, + hoveredElevation = 8.dp + ) + ) { + Icon( + imageVector = if (isExpanded) mainButtonExpandedIcon else mainButtonIcon, + contentDescription = stringResource( + if (isExpanded) R.string.collapse_menu else R.string.expand_menu + ), + modifier = Modifier + .size(24.dp) + .rotate(if (mainButtonIcon == Icons.Filled.Add) rotationAngle else 0f) + ) + } + } +} + +object FabMenuPresets { + fun getScrollMenuItems( + onScrollToTop: () -> Unit, + onScrollToBottom: () -> Unit + ) = listOf( + FabMenuItem( + icon = Icons.Filled.KeyboardArrowDown, + labelRes = R.string.scroll_to_bottom, + onClick = onScrollToBottom + ), + FabMenuItem( + icon = Icons.Filled.KeyboardArrowUp, + labelRes = R.string.scroll_to_top, + onClick = onScrollToTop + ) + ) + + @Composable + fun getBatchActionMenuItems( + onCancel: () -> Unit, + onDeny: () -> Unit, + onAllow: () -> Unit, + onUnmountModules: () -> Unit, + onDisableUnmount: () -> Unit + ) = listOf( + FabMenuItem( + icon = Icons.Filled.Close, + labelRes = R.string.cancel, + color = Color.Gray, + onClick = onCancel + ), + FabMenuItem( + icon = Icons.Filled.Block, + labelRes = R.string.deny_authorization, + color = MaterialTheme.colorScheme.error, + onClick = onDeny + ), + FabMenuItem( + icon = Icons.Filled.Check, + labelRes = R.string.grant_authorization, + color = MaterialTheme.colorScheme.primary, + onClick = onAllow + ), + FabMenuItem( + icon = Icons.Filled.FolderOff, + labelRes = R.string.unmount_modules, + onClick = onUnmountModules + ), + FabMenuItem( + icon = Icons.Filled.Folder, + labelRes = R.string.disable_unmount, + onClick = onDisableUnmount + ) + ) +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/component/profile/AppProfileConfig.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/component/profile/AppProfileConfig.kt new file mode 100644 index 0000000..5ba9695 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/component/profile/AppProfileConfig.kt @@ -0,0 +1,58 @@ +package com.sukisu.ultra.ui.component.profile + +import androidx.compose.foundation.layout.Column +import androidx.compose.material3.OutlinedTextField +import androidx.compose.material3.Text +import androidx.compose.runtime.* +import androidx.compose.ui.Modifier +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.tooling.preview.Preview +import com.sukisu.ultra.Natives +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.component.SwitchItem + +@Composable +fun AppProfileConfig( + modifier: Modifier = Modifier, + fixedName: Boolean, + enabled: Boolean, + profile: Natives.Profile, + onProfileChange: (Natives.Profile) -> Unit, +) { + Column(modifier = modifier) { + if (!fixedName) { + OutlinedTextField( + label = { Text(stringResource(R.string.profile_name)) }, + value = profile.name, + onValueChange = { onProfileChange(profile.copy(name = it)) } + ) + } + SwitchItem( + title = stringResource(R.string.profile_umount_modules), + summary = stringResource(R.string.profile_umount_modules_summary), + checked = if (enabled) { + profile.umountModules + } else { + Natives.isDefaultUmountModules() + }, + enabled = enabled, + onCheckedChange = { + onProfileChange( + profile.copy( + umountModules = it, + nonRootUseDefault = false + ) + ) + } + ) + } +} + +@Preview +@Composable +private fun AppProfileConfigPreview() { + var profile by remember { mutableStateOf(Natives.Profile("")) } + AppProfileConfig(fixedName = true, enabled = false, profile = profile) { + profile = it + } +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/component/profile/RootProfileConfig.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/component/profile/RootProfileConfig.kt new file mode 100644 index 0000000..7593a49 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/component/profile/RootProfileConfig.kt @@ -0,0 +1,481 @@ +package com.sukisu.ultra.ui.component.profile + +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.text.KeyboardActions +import androidx.compose.foundation.text.KeyboardOptions +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.ui.Modifier +import androidx.compose.ui.platform.LocalSoftwareKeyboardController +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.input.ImeAction +import androidx.compose.ui.text.input.KeyboardType +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import androidx.core.text.isDigitsOnly +import com.maxkeppeker.sheets.core.models.base.Header +import com.maxkeppeker.sheets.core.models.base.rememberUseCaseState +import com.maxkeppeler.sheets.input.InputDialog +import com.maxkeppeler.sheets.input.models.* +import com.maxkeppeler.sheets.list.ListDialog +import com.maxkeppeler.sheets.list.models.ListOption +import com.maxkeppeler.sheets.list.models.ListSelection +import com.sukisu.ultra.Natives +import com.sukisu.ultra.R +import com.sukisu.ultra.profile.Capabilities +import com.sukisu.ultra.profile.Groups +import com.sukisu.ultra.ui.component.rememberCustomDialog +import com.sukisu.ultra.ui.util.isSepolicyValid + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +fun RootProfileConfig( + modifier: Modifier = Modifier, + fixedName: Boolean, + profile: Natives.Profile, + onProfileChange: (Natives.Profile) -> Unit, +) { + Column(modifier = modifier) { + if (!fixedName) { + OutlinedTextField( + label = { Text(stringResource(R.string.profile_name)) }, + value = profile.name, + onValueChange = { onProfileChange(profile.copy(name = it)) } + ) + } + + /* + var expanded by remember { mutableStateOf(false) } + val currentNamespace = when (profile.namespace) { + Natives.Profile.Namespace.INHERITED.ordinal -> stringResource(R.string.profile_namespace_inherited) + Natives.Profile.Namespace.GLOBAL.ordinal -> stringResource(R.string.profile_namespace_global) + Natives.Profile.Namespace.INDIVIDUAL.ordinal -> stringResource(R.string.profile_namespace_individual) + else -> stringResource(R.string.profile_namespace_inherited) + } + ListItem(headlineContent = { + ExposedDropdownMenuBox( + expanded = expanded, + onExpandedChange = { expanded = !expanded } + ) { + OutlinedTextField( + modifier = Modifier + .menuAnchor(MenuAnchorType.PrimaryNotEditable) + .fillMaxWidth(), + readOnly = true, + label = { Text(stringResource(R.string.profile_namespace)) }, + value = currentNamespace, + onValueChange = {}, + trailingIcon = { + if (expanded) Icon(Icons.Filled.ArrowDropUp, null) + else Icon(Icons.Filled.ArrowDropDown, null) + }, + ) + ExposedDropdownMenu( + expanded = expanded, + onDismissRequest = { expanded = false } + ) { + DropdownMenuItem( + text = { Text(stringResource(R.string.profile_namespace_inherited)) }, + onClick = { + onProfileChange(profile.copy(namespace = Natives.Profile.Namespace.INHERITED.ordinal)) + expanded = false + }, + ) + DropdownMenuItem( + text = { Text(stringResource(R.string.profile_namespace_global)) }, + onClick = { + onProfileChange(profile.copy(namespace = Natives.Profile.Namespace.GLOBAL.ordinal)) + expanded = false + }, + ) + DropdownMenuItem( + text = { Text(stringResource(R.string.profile_namespace_individual)) }, + onClick = { + onProfileChange(profile.copy(namespace = Natives.Profile.Namespace.INDIVIDUAL.ordinal)) + expanded = false + }, + ) + } + } + }) + */ + + UidPanel(uid = profile.uid, label = "uid", onUidChange = { + onProfileChange( + profile.copy( + uid = it, + rootUseDefault = false + ) + ) + }) + + UidPanel(uid = profile.gid, label = "gid", onUidChange = { + onProfileChange( + profile.copy( + gid = it, + rootUseDefault = false + ) + ) + }) + + val selectedGroups = profile.groups.ifEmpty { listOf(0) }.let { e -> + e.mapNotNull { g -> + Groups.entries.find { it.gid == g } + } + } + GroupsPanel(selectedGroups) { + onProfileChange( + profile.copy( + groups = it.map { group -> group.gid }.ifEmpty { listOf(0) }, + rootUseDefault = false + ) + ) + } + + val selectedCaps = profile.capabilities.mapNotNull { e -> + Capabilities.entries.find { it.cap == e } + } + + CapsPanel(selectedCaps) { + onProfileChange( + profile.copy( + capabilities = it.map { cap -> cap.cap }, + rootUseDefault = false + ) + ) + } + + SELinuxPanel(profile = profile, onSELinuxChange = { domain, rules -> + onProfileChange( + profile.copy( + context = domain, + rules = rules, + rootUseDefault = false + ) + ) + }) + + } +} + +@OptIn(ExperimentalLayoutApi::class, ExperimentalMaterial3Api::class) +@Composable +fun GroupsPanel(selected: List, closeSelection: (selection: Set) -> Unit) { + val selectGroupsDialog = rememberCustomDialog { dismiss: () -> Unit -> + val groups = Groups.entries.toTypedArray().sortedWith( + compareBy { if (selected.contains(it)) 0 else 1 } + .then(compareBy { + when (it) { + Groups.ROOT -> 0 + Groups.SYSTEM -> 1 + Groups.SHELL -> 2 + else -> Int.MAX_VALUE + } + }) + .then(compareBy { it.name }) + + ) + val options = groups.map { value -> + ListOption( + titleText = value.display, + subtitleText = value.desc, + selected = selected.contains(value), + ) + } + + val selection = HashSet(selected) + + MaterialTheme( + colorScheme = MaterialTheme.colorScheme.copy( + surface = MaterialTheme.colorScheme.surfaceContainerHigh + ) + ) { + ListDialog( + state = rememberUseCaseState(visible = true, onFinishedRequest = { + closeSelection(selection) + }, onCloseRequest = { + dismiss() + }), + header = Header.Default( + title = stringResource(R.string.profile_groups), + ), + selection = ListSelection.Multiple( + showCheckBoxes = true, + options = options, + maxChoices = 32, // Kernel only supports 32 groups at most + ) { indecies, _ -> + // Handle selection + selection.clear() + indecies.forEach { index -> + val group = groups[index] + selection.add(group) + } + } + ) + } + } + + OutlinedCard( + modifier = Modifier + .fillMaxWidth() + .padding(16.dp) + ) { + + Column( + modifier = Modifier + .fillMaxSize() + .clickable { + selectGroupsDialog.show() + } + .padding(16.dp) + ) { + Text(stringResource(R.string.profile_groups)) + FlowRow { + selected.forEach { group -> + AssistChip( + modifier = Modifier.padding(3.dp), + onClick = { /*TODO*/ }, + label = { Text(group.display) }) + } + } + } + + } +} + +@OptIn(ExperimentalLayoutApi::class, ExperimentalMaterial3Api::class) +@Composable +fun CapsPanel( + selected: Collection, + closeSelection: (selection: Set) -> Unit +) { + val selectCapabilitiesDialog = rememberCustomDialog { dismiss -> + val caps = Capabilities.entries.toTypedArray().sortedWith( + compareBy { if (selected.contains(it)) 0 else 1 } + .then(compareBy { it.name }) + ) + val options = caps.map { value -> + ListOption( + titleText = value.display, + subtitleText = value.desc, + selected = selected.contains(value), + ) + } + + val selection = HashSet(selected) + + MaterialTheme( + colorScheme = MaterialTheme.colorScheme.copy( + surface = MaterialTheme.colorScheme.surfaceContainerHigh + ) + ) { + ListDialog( + state = rememberUseCaseState(visible = true, onFinishedRequest = { + closeSelection(selection) + }, onCloseRequest = { + dismiss() + }), + header = Header.Default( + title = stringResource(R.string.profile_capabilities), + ), + selection = ListSelection.Multiple( + showCheckBoxes = true, + options = options + ) { indecies, _ -> + // Handle selection + selection.clear() + indecies.forEach { index -> + val group = caps[index] + selection.add(group) + } + } + ) + } + } + + OutlinedCard( + modifier = Modifier + .fillMaxWidth() + .padding(16.dp) + ) { + + Column( + modifier = Modifier + .fillMaxSize() + .clickable { + selectCapabilitiesDialog.show() + } + .padding(16.dp) + ) { + Text(stringResource(R.string.profile_capabilities)) + FlowRow { + selected.forEach { group -> + AssistChip( + modifier = Modifier.padding(3.dp), + onClick = { /*TODO*/ }, + label = { Text(group.display) }) + } + } + } + + } +} + +@Composable +private fun UidPanel(uid: Int, label: String, onUidChange: (Int) -> Unit) { + + ListItem(headlineContent = { + var isError by remember { + mutableStateOf(false) + } + var lastValidUid by remember { + mutableIntStateOf(uid) + } + val keyboardController = LocalSoftwareKeyboardController.current + + OutlinedTextField( + modifier = Modifier.fillMaxWidth(), + label = { Text(label) }, + value = uid.toString(), + isError = isError, + keyboardOptions = KeyboardOptions( + keyboardType = KeyboardType.Number, + imeAction = ImeAction.Done + ), + keyboardActions = KeyboardActions(onDone = { + keyboardController?.hide() + }), + onValueChange = { + if (it.isEmpty()) { + onUidChange(0) + return@OutlinedTextField + } + val valid = isTextValidUid(it) + + val targetUid = if (valid) it.toInt() else lastValidUid + if (valid) { + lastValidUid = it.toInt() + } + + onUidChange(targetUid) + + isError = !valid + } + ) + }) +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun SELinuxPanel( + profile: Natives.Profile, + onSELinuxChange: (domain: String, rules: String) -> Unit +) { + val editSELinuxDialog = rememberCustomDialog { dismiss -> + var domain by remember { mutableStateOf(profile.context) } + var rules by remember { mutableStateOf(profile.rules) } + + val inputOptions = listOf( + InputTextField( + text = domain, + header = InputHeader( + title = stringResource(id = R.string.profile_selinux_domain), + ), + type = InputTextFieldType.OUTLINED, + required = true, + keyboardOptions = KeyboardOptions( + keyboardType = KeyboardType.Ascii, + imeAction = ImeAction.Next + ), + resultListener = { + domain = it ?: "" + }, + validationListener = { value -> + // value can be a-zA-Z0-9_ + val regex = Regex("^[a-z_]+:[a-z0-9_]+:[a-z0-9_]+(:[a-z0-9_]+)?$") + if (value?.matches(regex) == true) ValidationResult.Valid + else ValidationResult.Invalid("Domain must be in the format of \"user:role:type:level\"") + } + ), + InputTextField( + text = rules, + header = InputHeader( + title = stringResource(id = R.string.profile_selinux_rules), + ), + type = InputTextFieldType.OUTLINED, + keyboardOptions = KeyboardOptions( + keyboardType = KeyboardType.Ascii, + ), + singleLine = false, + resultListener = { + rules = it ?: "" + }, + validationListener = { value -> + if (isSepolicyValid(value)) ValidationResult.Valid + else ValidationResult.Invalid("SELinux rules is invalid!") + } + ) + ) + + + MaterialTheme( + colorScheme = MaterialTheme.colorScheme.copy( + surface = MaterialTheme.colorScheme.surfaceContainerHigh + ) + ) { + InputDialog( + state = rememberUseCaseState( + visible = true, + onFinishedRequest = { + onSELinuxChange(domain, rules) + }, + onCloseRequest = { + dismiss() + }), + header = Header.Default( + title = stringResource(R.string.profile_selinux_context), + ), + selection = InputSelection( + input = inputOptions, + onPositiveClick = { result -> + // Handle selection + }, + ) + ) + } + } + + ListItem(headlineContent = { + OutlinedTextField( + modifier = Modifier + .fillMaxWidth() + .clickable { + editSELinuxDialog.show() + }, + enabled = false, + colors = OutlinedTextFieldDefaults.colors( + disabledTextColor = MaterialTheme.colorScheme.onSurface, + disabledBorderColor = MaterialTheme.colorScheme.outline, + disabledPlaceholderColor = MaterialTheme.colorScheme.onSurfaceVariant, + disabledLabelColor = MaterialTheme.colorScheme.onSurfaceVariant + ), + label = { Text(text = stringResource(R.string.profile_selinux_context)) }, + value = profile.context, + onValueChange = { } + ) + }) +} + +@Preview +@Composable +private fun RootProfileConfigPreview() { + var profile by remember { mutableStateOf(Natives.Profile("")) } + RootProfileConfig(fixedName = true, profile = profile) { + profile = it + } +} + +private fun isTextValidUid(text: String): Boolean { + return text.isNotEmpty() && text.isDigitsOnly() && text.toInt() >= 0 +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/component/profile/TemplateConfig.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/component/profile/TemplateConfig.kt new file mode 100644 index 0000000..7af311b --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/component/profile/TemplateConfig.kt @@ -0,0 +1,105 @@ +package com.sukisu.ultra.ui.component.profile + +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.filled.ReadMore +import androidx.compose.material.icons.filled.ArrowDropDown +import androidx.compose.material.icons.filled.ArrowDropUp +import androidx.compose.material.icons.filled.Create +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.runtime.saveable.rememberSaveable +import androidx.compose.ui.Modifier +import androidx.compose.ui.res.stringResource +import com.sukisu.ultra.Natives +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.util.listAppProfileTemplates +import com.sukisu.ultra.ui.util.setSepolicy +import com.sukisu.ultra.ui.viewmodel.getTemplateInfoById + +/** + * @author weishu + * @date 2023/10/21. + */ +@OptIn(ExperimentalMaterial3Api::class) +@Composable +fun TemplateConfig( + profile: Natives.Profile, + onViewTemplate: (id: String) -> Unit = {}, + onManageTemplate: () -> Unit = {}, + onProfileChange: (Natives.Profile) -> Unit +) { + var expanded by remember { mutableStateOf(false) } + var template by rememberSaveable { + mutableStateOf(profile.rootTemplate ?: "") + } + val profileTemplates = listAppProfileTemplates() + val noTemplates = profileTemplates.isEmpty() + + ListItem(headlineContent = { + ExposedDropdownMenuBox( + expanded = expanded, + onExpandedChange = { expanded = it }, + ) { + OutlinedTextField( + modifier = Modifier + .menuAnchor(ExposedDropdownMenuAnchorType.PrimaryNotEditable) + .fillMaxWidth(), + readOnly = true, + label = { Text(stringResource(R.string.profile_template)) }, + value = template.ifEmpty { "None" }, + onValueChange = {}, + trailingIcon = { + if (noTemplates) { + IconButton( + onClick = onManageTemplate + ) { + Icon(Icons.Filled.Create, null) + } + } else if (expanded) Icon(Icons.Filled.ArrowDropUp, null) + else Icon(Icons.Filled.ArrowDropDown, null) + }, + ) + if (profileTemplates.isEmpty()) { + return@ExposedDropdownMenuBox + } + ExposedDropdownMenu( + expanded = expanded, + onDismissRequest = { expanded = false } + ) { + profileTemplates.forEach { tid -> + val templateInfo = + getTemplateInfoById(tid) ?: return@forEach + DropdownMenuItem( + text = { Text(tid) }, + onClick = { + template = tid + if (setSepolicy(tid, templateInfo.rules.joinToString("\n"))) { + onProfileChange( + profile.copy( + rootTemplate = tid, + rootUseDefault = false, + uid = templateInfo.uid, + gid = templateInfo.gid, + groups = templateInfo.groups, + capabilities = templateInfo.capabilities, + context = templateInfo.context, + namespace = templateInfo.namespace, + ) + ) + } + expanded = false + }, + trailingIcon = { + IconButton(onClick = { + onViewTemplate(tid) + }) { + Icon(Icons.AutoMirrored.Filled.ReadMore, null) + } + } + ) + } + } + } + }) +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/screen/AppProfile.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/AppProfile.kt new file mode 100644 index 0000000..7764cb0 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/AppProfile.kt @@ -0,0 +1,586 @@ +package com.sukisu.ultra.ui.screen + +import android.annotation.SuppressLint +import androidx.annotation.StringRes +import androidx.compose.animation.* +import androidx.compose.foundation.gestures.detectTapGestures +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.filled.ArrowBack +import androidx.compose.material.icons.filled.AccountCircle +import androidx.compose.material.icons.filled.Android +import androidx.compose.material.icons.filled.Security +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.runtime.saveable.rememberSaveable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.alpha +import androidx.compose.ui.draw.shadow +import androidx.compose.ui.geometry.Offset +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.input.nestedscroll.nestedScroll +import androidx.compose.ui.input.pointer.pointerInput +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.platform.LocalDensity +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.Dp +import androidx.compose.ui.unit.DpOffset +import androidx.compose.ui.unit.dp +import androidx.lifecycle.compose.dropUnlessResumed +import coil.compose.AsyncImage +import coil.request.ImageRequest +import com.ramcosta.composedestinations.annotation.Destination +import com.ramcosta.composedestinations.annotation.RootGraph +import com.ramcosta.composedestinations.generated.destinations.AppProfileTemplateScreenDestination +import com.ramcosta.composedestinations.generated.destinations.TemplateEditorScreenDestination +import com.ramcosta.composedestinations.navigation.DestinationsNavigator +import com.sukisu.ultra.Natives +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.component.SwitchItem +import com.sukisu.ultra.ui.component.profile.AppProfileConfig +import com.sukisu.ultra.ui.component.profile.RootProfileConfig +import com.sukisu.ultra.ui.component.profile.TemplateConfig +import com.sukisu.ultra.ui.theme.CardConfig +import com.sukisu.ultra.ui.theme.getCardColors +import com.sukisu.ultra.ui.theme.getCardElevation +import com.sukisu.ultra.ui.util.* +import com.sukisu.ultra.ui.viewmodel.SuperUserViewModel +import com.sukisu.ultra.ui.viewmodel.getTemplateInfoById +import kotlinx.coroutines.launch + +/** + * @author weishu + * @date 2023/5/16. + */ +@OptIn(ExperimentalMaterial3Api::class) +@Destination +@Composable +fun AppProfileScreen( + navigator: DestinationsNavigator, + appInfo: SuperUserViewModel.AppInfo, +) { + val context = LocalContext.current + val snackBarHost = LocalSnackbarHost.current + val scrollBehavior = TopAppBarDefaults.pinnedScrollBehavior() + val scope = rememberCoroutineScope() + val failToUpdateAppProfile = stringResource(R.string.failed_to_update_app_profile).format(appInfo.label) + val failToUpdateSepolicy = stringResource(R.string.failed_to_update_sepolicy).format(appInfo.label) + val suNotAllowed = stringResource(R.string.su_not_allowed).format(appInfo.label) + + val packageName = appInfo.packageName + val initialProfile = Natives.getAppProfile(packageName, appInfo.uid) + if (initialProfile.allowSu) { + initialProfile.rules = getSepolicy(packageName) + } + var profile by rememberSaveable { + mutableStateOf(initialProfile) + } + + val colorScheme = MaterialTheme.colorScheme + val cardColor = if (CardConfig.isCustomBackgroundEnabled) { + colorScheme.surfaceContainerLow + } else { + colorScheme.background + } + val cardAlpha = CardConfig.cardAlpha + + Scaffold( + topBar = { + TopBar( + title = appInfo.label, + packageName = packageName, + colors = TopAppBarDefaults.topAppBarColors( + containerColor = cardColor.copy(alpha = cardAlpha), + scrolledContainerColor = cardColor.copy(alpha = cardAlpha) + ), + onBack = dropUnlessResumed { navigator.popBackStack() }, + scrollBehavior = scrollBehavior + ) + }, + snackbarHost = { SnackbarHost(hostState = snackBarHost) }, + contentWindowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal) + ) { paddingValues -> + AppProfileInner( + modifier = Modifier + .padding(paddingValues) + .nestedScroll(scrollBehavior.nestedScrollConnection) + .verticalScroll(rememberScrollState()), + packageName = appInfo.packageName, + appLabel = appInfo.label, + appIcon = { + AsyncImage( + model = ImageRequest.Builder(context).data(appInfo.packageInfo).crossfade(true).build(), + contentDescription = appInfo.label, + modifier = Modifier + .padding(4.dp) + .width(48.dp) + .height(48.dp) + ) + }, + profile = profile, + onViewTemplate = { + getTemplateInfoById(it)?.let { info -> + navigator.navigate(TemplateEditorScreenDestination(info)) + } + }, + onManageTemplate = { + navigator.navigate(AppProfileTemplateScreenDestination()) + }, + onProfileChange = { + scope.launch { + if (it.allowSu) { + // sync with allowlist.c - forbid_system_uid + if (appInfo.uid < 2000 && appInfo.uid != 1000) { + snackBarHost.showSnackbar(suNotAllowed) + return@launch + } + if (!it.rootUseDefault && it.rules.isNotEmpty() && !setSepolicy(profile.name, it.rules)) { + snackBarHost.showSnackbar(failToUpdateSepolicy) + return@launch + } + } + if (!Natives.setAppProfile(it)) { + snackBarHost.showSnackbar(failToUpdateAppProfile.format(appInfo.uid)) + } else { + profile = it + } + } + }, + ) + } +} + +@Composable +private fun AppProfileInner( + modifier: Modifier = Modifier, + packageName: String, + appLabel: String, + appIcon: @Composable () -> Unit, + profile: Natives.Profile, + onViewTemplate: (id: String) -> Unit = {}, + onManageTemplate: () -> Unit = {}, + onProfileChange: (Natives.Profile) -> Unit, +) { + val isRootGranted = profile.allowSu + val cardColors = getCardColors(MaterialTheme.colorScheme.surfaceContainerHigh) + + MaterialTheme( + colorScheme = MaterialTheme.colorScheme.copy( + surface = if (CardConfig.isCustomBackgroundEnabled) Color.Transparent else MaterialTheme.colorScheme.surfaceContainerHigh + ) + ) { + Column(modifier = modifier) { + ElevatedCard( + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = 16.dp, vertical = 8.dp), + shape = MaterialTheme.shapes.medium, + colors = cardColors, + elevation = getCardElevation(), + ) { + AppMenuBox(packageName) { + ListItem( + headlineContent = { + Text( + text = appLabel, + style = MaterialTheme.typography.titleMedium + ) + }, + supportingContent = { + Text( + text = packageName, + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + }, + leadingContent = appIcon, + ) + } + } + + ElevatedCard( + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = 16.dp, vertical = 8.dp), + shape = MaterialTheme.shapes.medium, + colors = cardColors, + elevation = getCardElevation(), + ) { + SwitchItem( + icon = Icons.Filled.Security, + title = stringResource(id = R.string.superuser), + checked = isRootGranted, + onCheckedChange = { onProfileChange(profile.copy(allowSu = it)) }, + ) + } + + Crossfade( + targetState = isRootGranted, + label = "RootAccess" + ) { current -> + Column( + modifier = Modifier.padding(bottom = 6.dp + 48.dp + 6.dp /* SnackBar height */) + ) { + if (current) { + val initialMode = if (profile.rootUseDefault) { + Mode.Default + } else if (profile.rootTemplate != null) { + Mode.Template + } else { + Mode.Custom + } + var mode by rememberSaveable { + mutableStateOf(initialMode) + } + + ElevatedCard( + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = 16.dp, vertical = 8.dp), + shape = MaterialTheme.shapes.medium, + colors = cardColors, + elevation = getCardElevation(), + ) { + ProfileBox(mode, true) { + // template mode shouldn't change profile here! + if (it == Mode.Default || it == Mode.Custom) { + onProfileChange( + profile.copy( + rootUseDefault = it == Mode.Default, + rootTemplate = null + ) + ) + } + mode = it + } + } + + AnimatedVisibility( + visible = mode != Mode.Default, + enter = fadeIn() + expandVertically(), + exit = fadeOut() + shrinkVertically() + ) { + ElevatedCard( + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = 16.dp, vertical = 8.dp), + shape = MaterialTheme.shapes.medium, + colors = cardColors, + elevation = getCardElevation(), + ) { + Column(modifier = Modifier.padding(vertical = 8.dp)) { + Crossfade( + targetState = mode, + label = "ProfileMode" + ) { currentMode -> + when (currentMode) { + Mode.Template -> { + TemplateConfig( + profile = profile, + onViewTemplate = onViewTemplate, + onManageTemplate = onManageTemplate, + onProfileChange = onProfileChange + ) + } + + Mode.Custom -> { + RootProfileConfig( + fixedName = true, + profile = profile, + onProfileChange = onProfileChange + ) + } + + else -> {} + } + } + } + } + } + } else { + val mode = if (profile.nonRootUseDefault) Mode.Default else Mode.Custom + + ElevatedCard( + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = 16.dp, vertical = 8.dp), + shape = MaterialTheme.shapes.medium, + colors = cardColors, + elevation = getCardElevation(), + ) { + ProfileBox(mode, false) { + onProfileChange(profile.copy(nonRootUseDefault = (it == Mode.Default))) + } + } + + AnimatedVisibility( + visible = mode == Mode.Custom, + enter = fadeIn() + expandVertically(), + exit = fadeOut() + shrinkVertically() + ) { + ElevatedCard( + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = 16.dp, vertical = 8.dp), + shape = MaterialTheme.shapes.medium, + colors = cardColors, + elevation = getCardElevation(), + ) { + Column(modifier = Modifier.padding(vertical = 8.dp)) { + AppProfileConfig( + fixedName = true, + profile = profile, + enabled = mode == Mode.Custom, + onProfileChange = onProfileChange + ) + } + } + } + } + } + } + } + } +} + +private enum class Mode(@param:StringRes private val res: Int) { + Default(R.string.profile_default), Template(R.string.profile_template), Custom(R.string.profile_custom); + + val text: String + @Composable get() = stringResource(res) +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun TopBar( + title: String, + packageName: String, + onBack: () -> Unit, + colors: TopAppBarColors, + scrollBehavior: TopAppBarScrollBehavior? = null +) { + TopAppBar( + title = { + Column { + Text( + text = title, + style = MaterialTheme.typography.titleMedium, + ) + Text( + text = packageName, + style = MaterialTheme.typography.bodySmall, + modifier = Modifier.alpha(0.8f) + ) + } + }, + colors = colors, + navigationIcon = { + IconButton( + onClick = onBack, + ) { + Icon( + imageVector = Icons.AutoMirrored.Filled.ArrowBack, + contentDescription = stringResource(R.string.back) + ) + } + }, + windowInsets = WindowInsets.safeDrawing.only( + WindowInsetsSides.Top + WindowInsetsSides.Horizontal + ), + scrollBehavior = scrollBehavior, + modifier = Modifier.shadow( + elevation = if ((scrollBehavior?.state?.overlappedFraction ?: 0f) > 0.01f) + 4.dp else 0.dp, + ) + ) +} + +@Composable +private fun ProfileBox( + mode: Mode, + hasTemplate: Boolean, + onModeChange: (Mode) -> Unit, +) { + Column(modifier = Modifier.padding(vertical = 8.dp)) { + ListItem( + headlineContent = { + Text( + text = stringResource(R.string.profile), + style = MaterialTheme.typography.titleMedium + ) + }, + supportingContent = { + Text( + text = mode.text, + style = MaterialTheme.typography.bodyMedium, + ) + }, + leadingContent = { + Icon( + imageVector = Icons.Filled.AccountCircle, + contentDescription = null, + ) + }, + ) + + HorizontalDivider( + thickness = Dp.Hairline, + ) + + ListItem( + headlineContent = { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 8.dp), + horizontalArrangement = Arrangement.spacedBy(8.dp, Alignment.CenterHorizontally) + ) { + FilterChip( + selected = mode == Mode.Default, + onClick = { onModeChange(Mode.Default) }, + label = { + Text( + text = stringResource(R.string.profile_default), + style = MaterialTheme.typography.bodyMedium + ) + }, + shape = MaterialTheme.shapes.small + ) + + if (hasTemplate) { + FilterChip( + selected = mode == Mode.Template, + onClick = { onModeChange(Mode.Template) }, + label = { + Text( + text = stringResource(R.string.profile_template), + style = MaterialTheme.typography.bodyMedium + ) + }, + shape = MaterialTheme.shapes.small + ) + } + + FilterChip( + selected = mode == Mode.Custom, + onClick = { onModeChange(Mode.Custom) }, + label = { + Text( + text = stringResource(R.string.profile_custom), + style = MaterialTheme.typography.bodyMedium + ) + }, + shape = MaterialTheme.shapes.small + ) + } + } + ) + } +} + +@SuppressLint("UnusedBoxWithConstraintsScope") +@Composable +private fun AppMenuBox( + packageName: String, + content: @Composable () -> Unit +) { + var expanded by remember { mutableStateOf(false) } + var touchPoint: Offset by remember { mutableStateOf(Offset.Zero) } + val density = LocalDensity.current + + BoxWithConstraints( + Modifier + .fillMaxSize() + .pointerInput(Unit) { + detectTapGestures( + onLongPress = { + touchPoint = it + expanded = true + } + ) + } + ) { + content() + + val (offsetX, offsetY) = with(density) { + (touchPoint.x.toDp()) to (-touchPoint.y.toDp()) + } + + DropdownMenu( + expanded = expanded, + offset = DpOffset(offsetX, offsetY), + onDismissRequest = { + expanded = false + } + ) { + AppMenuOption( + text = stringResource(id = R.string.launch_app), + onClick = { + expanded = false + launchApp(packageName) + } + ) + + AppMenuOption( + text = stringResource(id = R.string.force_stop_app), + onClick = { + expanded = false + forceStopApp(packageName) + } + ) + + AppMenuOption( + text = stringResource(id = R.string.restart_app), + onClick = { + expanded = false + restartApp(packageName) + } + ) + } + } +} + +@Composable +private fun AppMenuOption(text: String, onClick: () -> Unit) { + DropdownMenuItem( + text = { + Text( + text = text, + style = MaterialTheme.typography.bodyMedium + ) + }, + onClick = onClick + ) +} + +@Preview +@Composable +private fun AppProfilePreview() { + var profile by remember { mutableStateOf(Natives.Profile("")) } + MaterialTheme( + colorScheme = MaterialTheme.colorScheme.copy( + surface = if (CardConfig.isCustomBackgroundEnabled) Color.Transparent else MaterialTheme.colorScheme.surfaceContainerHigh + ) + ) { + Surface { + AppProfileInner( + packageName = "icu.nullptr.test", + appLabel = "Test", + appIcon = { + Icon( + imageVector = Icons.Filled.Android, + contentDescription = null, + ) + }, + profile = profile, + onProfileChange = { + profile = it + }, + ) + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/screen/BottomBarDestination.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/BottomBarDestination.kt new file mode 100644 index 0000000..4175ecf --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/BottomBarDestination.kt @@ -0,0 +1,24 @@ +package com.sukisu.ultra.ui.screen + +import androidx.annotation.StringRes +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.* +import androidx.compose.material.icons.outlined.* +import androidx.compose.ui.graphics.vector.ImageVector +import com.ramcosta.composedestinations.generated.destinations.* +import com.ramcosta.composedestinations.spec.DirectionDestinationSpec +import com.sukisu.ultra.R + +enum class BottomBarDestination( + val direction: DirectionDestinationSpec, + @param:StringRes val label: Int, + val iconSelected: ImageVector, + val iconNotSelected: ImageVector, + val rootRequired: Boolean, +) { + Home(HomeScreenDestination, R.string.home, Icons.Filled.Home, Icons.Outlined.Home, false), + Kpm(KpmScreenDestination, R.string.kpm_title, Icons.Filled.Archive, Icons.Outlined.Archive, true), + SuperUser(SuperUserScreenDestination, R.string.superuser, Icons.Filled.AdminPanelSettings, Icons.Outlined.AdminPanelSettings, true), + Module(ModuleScreenDestination, R.string.module, Icons.Filled.Extension, Icons.Outlined.Extension, true), + Settings(SettingScreenDestination, R.string.settings, Icons.Filled.Settings, Icons.Outlined.Settings, false), +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/screen/ExecuteModuleAction.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/ExecuteModuleAction.kt new file mode 100644 index 0000000..26359a9 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/ExecuteModuleAction.kt @@ -0,0 +1,147 @@ +package com.sukisu.ultra.ui.screen + +import android.os.Environment +import androidx.activity.compose.BackHandler +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.Close +import androidx.compose.material.icons.filled.Save +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.runtime.saveable.rememberSaveable +import androidx.compose.ui.Modifier +import androidx.compose.ui.input.key.Key +import androidx.compose.ui.input.key.key +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.font.FontFamily +import androidx.compose.ui.unit.dp +import com.ramcosta.composedestinations.annotation.Destination +import com.ramcosta.composedestinations.annotation.RootGraph +import com.ramcosta.composedestinations.navigation.DestinationsNavigator +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.component.KeyEventBlocker +import com.sukisu.ultra.ui.util.LocalSnackbarHost +import com.sukisu.ultra.ui.util.runModuleAction +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext +import java.io.File +import java.text.SimpleDateFormat +import java.util.* + +@Composable +@Destination +fun ExecuteModuleActionScreen(navigator: DestinationsNavigator, moduleId: String) { + var text by rememberSaveable { mutableStateOf("") } + var tempText : String + val logContent = rememberSaveable { StringBuilder() } + val snackBarHost = LocalSnackbarHost.current + val scope = rememberCoroutineScope() + val scrollState = rememberScrollState() + var isActionRunning by rememberSaveable { mutableStateOf(true) } + + BackHandler(enabled = isActionRunning) { + // Disable back button if action is running + } + + LaunchedEffect(Unit) { + if (text.isNotEmpty()) { + return@LaunchedEffect + } + withContext(Dispatchers.IO) { + runModuleAction( + moduleId = moduleId, + onStdout = { + tempText = "$it\n" + if (tempText.startsWith("")) { // clear command + text = tempText.substring(6) + } else { + text += tempText + } + logContent.append(it).append("\n") + }, + onStderr = { + logContent.append(it).append("\n") + } + ) + } + isActionRunning = false + } + + Scaffold( + topBar = { + TopBar( + isActionRunning = isActionRunning, + onSave = { + if (!isActionRunning) { + scope.launch { + val format = SimpleDateFormat("yyyy-MM-dd-HH-mm-ss", Locale.getDefault()) + val date = format.format(Date()) + val file = File( + Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS), + "KernelSU_module_action_log_${date}.log" + ) + file.writeText(logContent.toString()) + snackBarHost.showSnackbar("Log saved to ${file.absolutePath}") + } + } + } + ) + }, + floatingActionButton = { + if (!isActionRunning) { + ExtendedFloatingActionButton( + text = { Text(text = stringResource(R.string.close)) }, + icon = { Icon(Icons.Filled.Close, contentDescription = null) }, + onClick = { + navigator.popBackStack() + } + ) + } + }, + contentWindowInsets = WindowInsets.safeDrawing, + snackbarHost = { SnackbarHost(snackBarHost) } + ) { innerPadding -> + KeyEventBlocker { + it.key == Key.VolumeDown || it.key == Key.VolumeUp + } + Column( + modifier = Modifier + .fillMaxSize(1f) + .padding(innerPadding) + .verticalScroll(scrollState), + ) { + LaunchedEffect(text) { + scrollState.animateScrollTo(scrollState.maxValue) + } + Text( + modifier = Modifier.padding(8.dp), + text = text, + fontSize = MaterialTheme.typography.bodySmall.fontSize, + fontFamily = FontFamily.Monospace, + lineHeight = MaterialTheme.typography.bodySmall.lineHeight, + ) + } + } +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun TopBar(isActionRunning: Boolean, onSave: () -> Unit = {}) { + TopAppBar( + title = { Text(stringResource(R.string.action)) }, + actions = { + IconButton( + onClick = onSave, + enabled = !isActionRunning + ) { + Icon( + imageVector = Icons.Filled.Save, + contentDescription = stringResource(id = R.string.save_log), + ) + } + } + ) +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Flash.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Flash.kt new file mode 100644 index 0000000..e991839 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Flash.kt @@ -0,0 +1,768 @@ +package com.sukisu.ultra.ui.screen + +import android.content.Context +import android.content.Intent +import android.net.Uri +import android.os.Environment +import android.os.Parcelable +import androidx.activity.compose.BackHandler +import androidx.compose.animation.* +import androidx.compose.animation.core.animateFloatAsState +import androidx.compose.foundation.background +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.filled.ArrowBack +import androidx.compose.material.icons.filled.Error +import androidx.compose.material.icons.filled.Refresh +import androidx.compose.material.icons.filled.Save +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.runtime.saveable.rememberSaveable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.input.key.Key +import androidx.compose.ui.input.key.key +import androidx.compose.ui.input.nestedscroll.nestedScroll +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.font.FontFamily +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import androidx.lifecycle.viewmodel.compose.viewModel +import androidx.activity.ComponentActivity +import com.ramcosta.composedestinations.annotation.Destination +import com.ramcosta.composedestinations.annotation.RootGraph +import com.ramcosta.composedestinations.generated.destinations.FlashScreenDestination +import com.ramcosta.composedestinations.generated.destinations.ModuleScreenDestination +import com.ramcosta.composedestinations.navigation.DestinationsNavigator +import com.ramcosta.composedestinations.navigation.EmptyDestinationsNavigator +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.component.KeyEventBlocker +import com.sukisu.ultra.ui.theme.CardConfig +import com.sukisu.ultra.ui.util.* +import com.sukisu.ultra.ui.viewmodel.ModuleViewModel +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext +import kotlinx.parcelize.Parcelize +import java.io.File +import java.text.SimpleDateFormat +import java.util.* +import androidx.core.content.edit +import com.sukisu.ultra.ui.util.module.ModuleOperationUtils +import com.sukisu.ultra.ui.util.module.ModuleUtils + +/** + * @author ShirkNeko + * @date 2025/5/31. + */ +enum class FlashingStatus { + FLASHING, + SUCCESS, + FAILED +} + +private var currentFlashingStatus = mutableStateOf(FlashingStatus.FLASHING) + +// 添加模块安装状态跟踪 +data class ModuleInstallStatus( + val totalModules: Int = 0, + val currentModule: Int = 0, + val currentModuleName: String = "", + val failedModules: MutableList = mutableListOf(), + val verifiedModules: MutableList = mutableListOf() // 添加已验证模块列表 +) + +private var moduleInstallStatus = mutableStateOf(ModuleInstallStatus()) + +// 存储模块URI和验证状态的映射 +private var moduleVerificationMap = mutableMapOf() + +fun setFlashingStatus(status: FlashingStatus) { + currentFlashingStatus.value = status +} + +fun updateModuleInstallStatus( + totalModules: Int? = null, + currentModule: Int? = null, + currentModuleName: String? = null, + failedModule: String? = null, + verifiedModule: String? = null +) { + val current = moduleInstallStatus.value + moduleInstallStatus.value = current.copy( + totalModules = totalModules ?: current.totalModules, + currentModule = currentModule ?: current.currentModule, + currentModuleName = currentModuleName ?: current.currentModuleName + ) + + if (failedModule != null) { + val updatedFailedModules = current.failedModules.toMutableList() + updatedFailedModules.add(failedModule) + moduleInstallStatus.value = moduleInstallStatus.value.copy( + failedModules = updatedFailedModules + ) + } + + if (verifiedModule != null) { + val updatedVerifiedModules = current.verifiedModules.toMutableList() + updatedVerifiedModules.add(verifiedModule) + moduleInstallStatus.value = moduleInstallStatus.value.copy( + verifiedModules = updatedVerifiedModules + ) + } +} + +fun setModuleVerificationStatus(uri: Uri, isVerified: Boolean) { + moduleVerificationMap[uri] = isVerified +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +@Destination +fun FlashScreen(navigator: DestinationsNavigator, flashIt: FlashIt) { + val context = LocalContext.current + + val shouldAutoExit = remember { + val sharedPref = context.getSharedPreferences("kernel_flash_prefs", Context.MODE_PRIVATE) + sharedPref.getBoolean("auto_exit_after_flash", false) + } + + // 是否通过从外部启动的模块安装 + val isExternalInstall = remember { + when (flashIt) { + is FlashIt.FlashModule -> { + (context as? ComponentActivity)?.intent?.let { intent -> + intent.action == Intent.ACTION_VIEW || intent.action == Intent.ACTION_SEND + } ?: false + } + is FlashIt.FlashModules -> { + (context as? ComponentActivity)?.intent?.let { intent -> + intent.action == Intent.ACTION_VIEW || intent.action == Intent.ACTION_SEND + } ?: false + } + else -> false + } + } + + var text by rememberSaveable { mutableStateOf("") } + var tempText: String + val logContent = rememberSaveable { StringBuilder() } + var showFloatAction by rememberSaveable { mutableStateOf(false) } + // 添加状态跟踪是否已经完成刷写 + var hasFlashCompleted by rememberSaveable { mutableStateOf(false) } + var hasExecuted by rememberSaveable { mutableStateOf(false) } + // 更新模块状态管理 + var hasUpdateExecuted by rememberSaveable { mutableStateOf(false) } + var hasUpdateCompleted by rememberSaveable { mutableStateOf(false) } + + val snackBarHost = LocalSnackbarHost.current + val scope = rememberCoroutineScope() + val scrollState = rememberScrollState() + val scrollBehavior = TopAppBarDefaults.pinnedScrollBehavior(rememberTopAppBarState()) + val viewModel: ModuleViewModel = viewModel() + + val errorCodeString = stringResource(R.string.error_code) + val checkLogString = stringResource(R.string.check_log) + val logSavedString = stringResource(R.string.log_saved) + val installingModuleString = stringResource(R.string.installing_module) + + // 当前模块安装状态 + val currentStatus = moduleInstallStatus.value + + // 重置状态 + LaunchedEffect(flashIt) { + when (flashIt) { + is FlashIt.FlashModules -> { + if (flashIt.currentIndex == 0) { + moduleInstallStatus.value = ModuleInstallStatus( + totalModules = flashIt.uris.size, + currentModule = 1 + ) + hasFlashCompleted = false + hasExecuted = false + moduleVerificationMap.clear() + } + } + is FlashIt.FlashModuleUpdate -> { + hasUpdateCompleted = false + hasUpdateExecuted = false + } + else -> { + hasFlashCompleted = false + hasExecuted = false + } + } + } + + // 处理更新模块安装 + LaunchedEffect(flashIt) { + if (flashIt !is FlashIt.FlashModuleUpdate) return@LaunchedEffect + if (hasUpdateExecuted || hasUpdateCompleted || text.isNotEmpty()) { + return@LaunchedEffect + } + + hasUpdateExecuted = true + + withContext(Dispatchers.IO) { + setFlashingStatus(FlashingStatus.FLASHING) + + try { + logContent.append(text).append("\n") + } catch (_: Exception) { + logContent.append(text).append("\n") + } + + flashModuleUpdate(flashIt.uri, onFinish = { showReboot, code -> + if (code != 0) { + text += "$errorCodeString $code.\n$checkLogString\n" + setFlashingStatus(FlashingStatus.FAILED) + } else { + setFlashingStatus(FlashingStatus.SUCCESS) + + // 处理模块更新成功后的验证标志 + val isVerified = moduleVerificationMap[flashIt.uri] ?: false + ModuleOperationUtils.handleModuleUpdate(context, flashIt.uri, isVerified) + + viewModel.markNeedRefresh() + } + if (showReboot) { + text += "\n\n\n" + showFloatAction = true + + // 如果是内部安装,显示重启按钮后不自动返回 + if (isExternalInstall) { + return@flashModuleUpdate + } + } + hasUpdateCompleted = true + + // 如果是外部安装或需要自动退出的模块更新且不需要重启,延迟后自动返回 + if (isExternalInstall || shouldAutoExit) { + scope.launch { + kotlinx.coroutines.delay(1000) + if (shouldAutoExit) { + val sharedPref = context.getSharedPreferences("kernel_flash_prefs", Context.MODE_PRIVATE) + sharedPref.edit { remove("auto_exit_after_flash") } + } + (context as? ComponentActivity)?.finish() + } + } + }, onStdout = { + tempText = "$it\n" + if (tempText.startsWith("")) { // clear command + text = tempText.substring(6) + } else { + text += tempText + } + logContent.append(it).append("\n") + }, onStderr = { + logContent.append(it).append("\n") + }) + } + } + + // 安装但排除更新模块 + LaunchedEffect(flashIt) { + if (flashIt is FlashIt.FlashModuleUpdate) return@LaunchedEffect + if (hasExecuted || hasFlashCompleted || text.isNotEmpty()) { + return@LaunchedEffect + } + + hasExecuted = true + + withContext(Dispatchers.IO) { + setFlashingStatus(FlashingStatus.FLASHING) + + if (flashIt is FlashIt.FlashModules) { + try { + val currentUri = flashIt.uris[flashIt.currentIndex] + val moduleName = getModuleNameFromUri(context, currentUri) + updateModuleInstallStatus( + currentModuleName = moduleName + ) + text = installingModuleString.format(flashIt.currentIndex + 1, flashIt.uris.size, moduleName) + logContent.append(text).append("\n") + } catch (_: Exception) { + text = installingModuleString.format(flashIt.currentIndex + 1, flashIt.uris.size, "Module") + logContent.append(text).append("\n") + } + } + + flashIt(flashIt, onFinish = { showReboot, code -> + if (code != 0) { + text += "$errorCodeString $code.\n$checkLogString\n" + setFlashingStatus(FlashingStatus.FAILED) + + if (flashIt is FlashIt.FlashModules) { + updateModuleInstallStatus( + failedModule = moduleInstallStatus.value.currentModuleName + ) + } + } else { + setFlashingStatus(FlashingStatus.SUCCESS) + + // 处理模块安装成功后的验证标志 + when (flashIt) { + is FlashIt.FlashModule -> { + val isVerified = moduleVerificationMap[flashIt.uri] ?: false + ModuleOperationUtils.handleModuleInstallSuccess(context, flashIt.uri, isVerified) + if (isVerified) { + updateModuleInstallStatus(verifiedModule = moduleInstallStatus.value.currentModuleName) + } + } + is FlashIt.FlashModules -> { + val currentUri = flashIt.uris[flashIt.currentIndex] + val isVerified = moduleVerificationMap[currentUri] ?: false + ModuleOperationUtils.handleModuleInstallSuccess(context, currentUri, isVerified) + if (isVerified) { + updateModuleInstallStatus(verifiedModule = moduleInstallStatus.value.currentModuleName) + } + } + + else -> {} + } + + viewModel.markNeedRefresh() + } + if (showReboot) { + text += "\n\n\n" + showFloatAction = true + } + + hasFlashCompleted = true + + if (flashIt is FlashIt.FlashModules && flashIt.currentIndex < flashIt.uris.size - 1) { + val nextFlashIt = flashIt.copy( + currentIndex = flashIt.currentIndex + 1 + ) + scope.launch { + kotlinx.coroutines.delay(500) + navigator.navigate(FlashScreenDestination(nextFlashIt)) + } + } else if ((isExternalInstall || shouldAutoExit) && flashIt is FlashIt.FlashModules && flashIt.currentIndex >= flashIt.uris.size - 1) { + // 如果是外部安装或需要自动退出且是最后一个模块,安装完成后自动返回 + scope.launch { + kotlinx.coroutines.delay(1000) + if (shouldAutoExit) { + val sharedPref = context.getSharedPreferences("kernel_flash_prefs", Context.MODE_PRIVATE) + sharedPref.edit { remove("auto_exit_after_flash") } + } + (context as? ComponentActivity)?.finish() + } + } else if ((isExternalInstall || shouldAutoExit) && flashIt is FlashIt.FlashModule) { + // 如果是外部安装或需要自动退出的单个模块,安装完成后自动返回 + scope.launch { + kotlinx.coroutines.delay(1000) + if (shouldAutoExit) { + val sharedPref = context.getSharedPreferences("kernel_flash_prefs", Context.MODE_PRIVATE) + sharedPref.edit { remove("auto_exit_after_flash") } + } + (context as? ComponentActivity)?.finish() + } + } + }, onStdout = { + tempText = "$it\n" + if (tempText.startsWith("")) { // clear command + text = tempText.substring(6) + } else { + text += tempText + } + logContent.append(it).append("\n") + }, onStderr = { + logContent.append(it).append("\n") + }) + } + } + + val onBack: () -> Unit = { + val canGoBack = when (flashIt) { + is FlashIt.FlashModuleUpdate -> currentFlashingStatus.value != FlashingStatus.FLASHING + else -> currentFlashingStatus.value != FlashingStatus.FLASHING + } + + if (canGoBack) { + if (isExternalInstall) { + (context as? ComponentActivity)?.finish() + } else { + if (flashIt is FlashIt.FlashModules || flashIt is FlashIt.FlashModuleUpdate) { + viewModel.markNeedRefresh() + viewModel.fetchModuleList() + navigator.navigate(ModuleScreenDestination) + } else { + viewModel.markNeedRefresh() + viewModel.fetchModuleList() + navigator.popBackStack() + } + } + } + } + + BackHandler(enabled = true) { + onBack() + } + + Scaffold( + topBar = { + TopBar( + currentFlashingStatus.value, + currentStatus, + onBack = onBack, + onSave = { + scope.launch { + val format = SimpleDateFormat("yyyy-MM-dd-HH-mm-ss", Locale.getDefault()) + val date = format.format(Date()) + val file = File( + Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS), + "KernelSU_install_log_${date}.log" + ) + file.writeText(logContent.toString()) + snackBarHost.showSnackbar(logSavedString.format(file.absolutePath)) + } + }, + scrollBehavior = scrollBehavior + ) + }, + floatingActionButton = { + if (showFloatAction) { + ExtendedFloatingActionButton( + onClick = { + scope.launch { + withContext(Dispatchers.IO) { + reboot() + } + } + }, + icon = { + Icon( + Icons.Filled.Refresh, + contentDescription = stringResource(id = R.string.reboot) + ) + }, + text = { + Text(text = stringResource(id = R.string.reboot)) + }, + containerColor = MaterialTheme.colorScheme.secondaryContainer, + contentColor = MaterialTheme.colorScheme.onSecondaryContainer, + expanded = true + ) + } + }, + snackbarHost = { SnackbarHost(hostState = snackBarHost) }, + contentWindowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal), + containerColor = MaterialTheme.colorScheme.background + ) { innerPadding -> + KeyEventBlocker { + it.key == Key.VolumeDown || it.key == Key.VolumeUp + } + + Column( + modifier = Modifier + .fillMaxSize(1f) + .padding(innerPadding) + .nestedScroll(scrollBehavior.nestedScrollConnection), + ) { + if (flashIt is FlashIt.FlashModules) { + ModuleInstallProgressBar( + currentIndex = flashIt.currentIndex + 1, + totalCount = flashIt.uris.size, + currentModuleName = currentStatus.currentModuleName, + status = currentFlashingStatus.value, + failedModules = currentStatus.failedModules + ) + + Spacer(modifier = Modifier.height(8.dp)) + } + + Box( + modifier = Modifier + .fillMaxWidth() + .weight(1f) + .verticalScroll(scrollState) + ) { + LaunchedEffect(text) { + scrollState.animateScrollTo(scrollState.maxValue) + } + Text( + modifier = Modifier.padding(16.dp), + text = text, + style = MaterialTheme.typography.bodyMedium, + fontFamily = FontFamily.Monospace, + color = MaterialTheme.colorScheme.onSurface + ) + } + } + } +} + +// 显示模块安装进度条和状态 +@Composable +fun ModuleInstallProgressBar( + currentIndex: Int, + totalCount: Int, + currentModuleName: String, + status: FlashingStatus, + failedModules: List +) { + val progressColor = when(status) { + FlashingStatus.FLASHING -> MaterialTheme.colorScheme.primary + FlashingStatus.SUCCESS -> MaterialTheme.colorScheme.tertiary + FlashingStatus.FAILED -> MaterialTheme.colorScheme.error + } + + val progress = animateFloatAsState( + targetValue = currentIndex.toFloat() / totalCount.toFloat(), + label = "InstallProgress" + ) + + Card( + modifier = Modifier + .fillMaxWidth() + .padding(16.dp), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surfaceVariant + ) + ) { + Column( + modifier = Modifier + .fillMaxWidth() + .padding(16.dp) + ) { + // 模块名称和进度 + Row( + modifier = Modifier.fillMaxWidth(), + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.SpaceBetween + ) { + Text( + text = currentModuleName.ifEmpty { stringResource(R.string.module) }, + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Bold + ) + + Text( + text = "$currentIndex/$totalCount", + style = MaterialTheme.typography.titleMedium + ) + } + + Spacer(modifier = Modifier.height(8.dp)) + + // 进度条 + LinearProgressIndicator( + progress = { progress.value }, + modifier = Modifier + .fillMaxWidth() + .height(8.dp), + color = progressColor, + trackColor = MaterialTheme.colorScheme.surfaceVariant + ) + + Spacer(modifier = Modifier.height(8.dp)) + + // 失败模块列表 + AnimatedVisibility( + visible = failedModules.isNotEmpty(), + enter = fadeIn() + expandVertically(), + exit = fadeOut() + shrinkVertically() + ) { + Column { + Row( + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + imageVector = Icons.Default.Error, + contentDescription = null, + tint = MaterialTheme.colorScheme.error, + modifier = Modifier.size(16.dp) + ) + + Spacer(modifier = Modifier.width(4.dp)) + + Text( + text = stringResource(R.string.module_failed_count, failedModules.size), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.error + ) + } + + Spacer(modifier = Modifier.height(4.dp)) + + // 失败模块列表 + Column( + modifier = Modifier + .fillMaxWidth() + .background( + MaterialTheme.colorScheme.errorContainer.copy(alpha = 0.3f), + shape = MaterialTheme.shapes.small + ) + .padding(8.dp) + ) { + failedModules.forEach { moduleName -> + Text( + text = "• $moduleName", + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onErrorContainer + ) + } + } + } + } + } + } +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun TopBar( + status: FlashingStatus, + moduleStatus: ModuleInstallStatus = ModuleInstallStatus(), + onBack: () -> Unit, + onSave: () -> Unit = {}, + scrollBehavior: TopAppBarScrollBehavior? = null +) { + val colorScheme = MaterialTheme.colorScheme + val cardColor = if (CardConfig.isCustomBackgroundEnabled) { + colorScheme.surfaceContainerLow + } else { + colorScheme.background + } + val cardAlpha = CardConfig.cardAlpha + + val statusColor = when(status) { + FlashingStatus.FLASHING -> MaterialTheme.colorScheme.primary + FlashingStatus.SUCCESS -> MaterialTheme.colorScheme.tertiary + FlashingStatus.FAILED -> MaterialTheme.colorScheme.error + } + + TopAppBar( + title = { + Column { + Text( + text = stringResource( + when (status) { + FlashingStatus.FLASHING -> R.string.flashing + FlashingStatus.SUCCESS -> R.string.flash_success + FlashingStatus.FAILED -> R.string.flash_failed + } + ), + style = MaterialTheme.typography.titleLarge, + color = statusColor + ) + + if (moduleStatus.failedModules.isNotEmpty()) { + Text( + text = stringResource(R.string.module_failed_count, moduleStatus.failedModules.size), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.error + ) + } + } + }, + navigationIcon = { + IconButton(onClick = onBack) { + Icon( + imageVector = Icons.AutoMirrored.Filled.ArrowBack, + contentDescription = null, + tint = MaterialTheme.colorScheme.onSurface + ) + } + }, + colors = TopAppBarDefaults.topAppBarColors( + containerColor = cardColor.copy(alpha = cardAlpha), + scrolledContainerColor = cardColor.copy(alpha = cardAlpha) + ), + actions = { + IconButton(onClick = onSave) { + Icon( + imageVector = Icons.Filled.Save, + contentDescription = stringResource(id = R.string.save_log), + tint = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + }, + windowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal), + scrollBehavior = scrollBehavior + ) +} + +suspend fun getModuleNameFromUri(context: Context, uri: Uri): String { + return withContext(Dispatchers.IO) { + try { + if (uri == Uri.EMPTY) { + return@withContext context.getString(R.string.unknown_module) + } + if (!ModuleUtils.isUriAccessible(context, uri)) { + return@withContext context.getString(R.string.unknown_module) + } + ModuleUtils.extractModuleName(context, uri) + } catch (_: Exception) { + context.getString(R.string.unknown_module) + } + } +} + +@Parcelize +sealed class FlashIt : Parcelable { + data class FlashBoot(val boot: Uri? = null, val lkm: LkmSelection, val ota: Boolean, val partition: String? = null) : FlashIt() + data class FlashModule(val uri: Uri) : FlashIt() + data class FlashModules(val uris: List, val currentIndex: Int = 0) : FlashIt() + data class FlashModuleUpdate(val uri: Uri) : FlashIt() // 模块更新 + data object FlashRestore : FlashIt() + data object FlashUninstall : FlashIt() +} + +// 模块更新刷写 +fun flashModuleUpdate( + uri: Uri, + onFinish: (Boolean, Int) -> Unit, + onStdout: (String) -> Unit, + onStderr: (String) -> Unit +) { + flashModule(uri, onFinish, onStdout, onStderr) +} + +fun flashIt( + flashIt: FlashIt, + onFinish: (Boolean, Int) -> Unit, + onStdout: (String) -> Unit, + onStderr: (String) -> Unit +) { + when (flashIt) { + is FlashIt.FlashBoot -> installBoot( + flashIt.boot, + flashIt.lkm, + flashIt.ota, + flashIt.partition, + onFinish, + onStdout, + onStderr + ) + is FlashIt.FlashModule -> flashModule(flashIt.uri, onFinish, onStdout, onStderr) + is FlashIt.FlashModules -> { + if (flashIt.uris.isEmpty() || flashIt.currentIndex >= flashIt.uris.size) { + onFinish(false, 0) + return + } + + val currentUri = flashIt.uris[flashIt.currentIndex] + onStdout("\n") + + flashModule(currentUri, onFinish, onStdout, onStderr) + } + is FlashIt.FlashModuleUpdate -> { + onFinish(false, 0) + } + FlashIt.FlashRestore -> restoreBoot(onFinish, onStdout, onStderr) + FlashIt.FlashUninstall -> uninstallPermanently(onFinish, onStdout, onStderr) + } +} + +@Preview +@Composable +fun FlashScreenPreview() { + FlashScreen(EmptyDestinationsNavigator, FlashIt.FlashUninstall) +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Home.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Home.kt new file mode 100644 index 0000000..b6ef712 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Home.kt @@ -0,0 +1,925 @@ +package com.sukisu.ultra.ui.screen + +import android.annotation.SuppressLint +import android.content.Context +import android.os.Build +import android.os.PowerManager +import android.system.Os +import androidx.annotation.StringRes +import androidx.compose.animation.* +import androidx.compose.animation.core.Spring +import androidx.compose.animation.core.spring +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.foundation.verticalScroll +import androidx.compose.material.ExperimentalMaterialApi +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.* +import androidx.compose.material.icons.outlined.Block +import androidx.compose.material.icons.outlined.TaskAlt +import androidx.compose.material.icons.outlined.Warning +import androidx.compose.material.pullrefresh.pullRefresh +import androidx.compose.material.pullrefresh.rememberPullRefreshState +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.vector.ImageVector +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.platform.LocalUriHandler +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import androidx.core.content.pm.PackageInfoCompat +import androidx.lifecycle.viewmodel.compose.viewModel +import com.ramcosta.composedestinations.annotation.Destination +import com.ramcosta.composedestinations.annotation.RootGraph +import com.ramcosta.composedestinations.generated.destinations.InstallScreenDestination +import com.ramcosta.composedestinations.generated.destinations.SuSFSConfigScreenDestination +import com.ramcosta.composedestinations.navigation.DestinationsNavigator +import com.sukisu.ultra.KernelVersion +import com.sukisu.ultra.Natives +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.component.KsuIsValid +import com.sukisu.ultra.ui.component.rememberConfirmDialog +import com.sukisu.ultra.ui.theme.CardConfig +import com.sukisu.ultra.ui.theme.CardConfig.cardAlpha +import com.sukisu.ultra.ui.theme.CardConfig.cardElevation +import com.sukisu.ultra.ui.theme.getCardColors +import com.sukisu.ultra.ui.theme.getCardElevation +import com.sukisu.ultra.ui.susfs.util.SuSFSManager +import com.sukisu.ultra.ui.util.checkNewVersion +import com.sukisu.ultra.ui.util.getSuSFSVersion +import com.sukisu.ultra.ui.util.module.LatestVersionInfo +import com.sukisu.ultra.ui.util.reboot +import com.sukisu.ultra.ui.viewmodel.HomeViewModel +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.delay +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext +import kotlin.random.Random + +/** + * @author ShirkNeko + * @date 2025/9/29. + */ +@OptIn(ExperimentalMaterial3Api::class, ExperimentalMaterialApi::class) +@Destination(start = true) +@Composable +fun HomeScreen(navigator: DestinationsNavigator) { + val context = LocalContext.current + val viewModel = viewModel() + val coroutineScope = rememberCoroutineScope() + + val pullRefreshState = rememberPullRefreshState( + refreshing = viewModel.isRefreshing, + onRefresh = { + viewModel.onPullRefresh(context) + } + ) + + LaunchedEffect(key1 = navigator) { + viewModel.loadUserSettings(context) + coroutineScope.launch { + viewModel.loadCoreData() + delay(100) + viewModel.loadExtendedData(context) + } + + // 启动数据变化监听 + coroutineScope.launch { + while (true) { + delay(5000) // 每5秒检查一次 + viewModel.autoRefreshIfNeeded(context) + } + } + } + + // 监听数据刷新状态流 + LaunchedEffect(viewModel.dataRefreshTrigger) { + viewModel.dataRefreshTrigger.collect { _ -> + // 数据刷新时的额外处理可以在这里添加 + } + } + + val scrollBehavior = TopAppBarDefaults.pinnedScrollBehavior(rememberTopAppBarState()) + val scrollState = rememberScrollState() + + Scaffold( + topBar = { + TopBar( + scrollBehavior = scrollBehavior, + navigator = navigator, + isDataLoaded = viewModel.isCoreDataLoaded + ) + }, + contentWindowInsets = WindowInsets.safeDrawing.only( + WindowInsetsSides.Top + WindowInsetsSides.Horizontal + ) + ) { innerPadding -> + Box( + modifier = Modifier + .padding(innerPadding) + .fillMaxSize() + .pullRefresh(pullRefreshState) + ) { + Column( + modifier = Modifier + .fillMaxSize() + .verticalScroll(scrollState) + .padding(top = 12.dp, start = 16.dp, end = 16.dp), + verticalArrangement = Arrangement.spacedBy(12.dp) + ) { + // 状态卡片 + if (viewModel.isCoreDataLoaded) { + StatusCard( + systemStatus = viewModel.systemStatus, + onClickInstall = { + navigator.navigate(InstallScreenDestination(preselectedKernelUri = null)) + } + ) + + // 警告信息 + if (viewModel.systemStatus.requireNewKernel) { + WarningCard( + stringResource(id = R.string.require_kernel_version).format( + Natives.getSimpleVersionFull(), + Natives.MINIMAL_SUPPORTED_KERNEL_FULL + ) + ) + } + + if (viewModel.systemStatus.ksuVersion != null && !viewModel.systemStatus.isRootAvailable) { + WarningCard( + stringResource(id = R.string.grant_root_failed) + ) + } + + // 只有在没有其他警告信息时才显示不兼容内核警告 + val shouldShowWarnings = viewModel.systemStatus.requireNewKernel || + (viewModel.systemStatus.ksuVersion != null && !viewModel.systemStatus.isRootAvailable) + + if (Natives.version <= Natives.MINIMAL_NEW_IOCTL_KERNEL && !shouldShowWarnings && viewModel.systemStatus.ksuVersion != null) { + IncompatibleKernelCard() + Spacer(Modifier.height(12.dp)) + } + } + + // 更新检查 + if (viewModel.isExtendedDataLoaded) { + val checkUpdate = context.getSharedPreferences("settings", Context.MODE_PRIVATE) + .getBoolean("check_update", true) + if (checkUpdate) { + UpdateCard() + } + + // 信息卡片 + InfoCard( + systemInfo = viewModel.systemInfo, + isSimpleMode = viewModel.isSimpleMode, + isHideSusfsStatus = viewModel.isHideSusfsStatus, + isHideZygiskImplement = viewModel.isHideZygiskImplement, + showKpmInfo = viewModel.showKpmInfo, + lkmMode = viewModel.systemStatus.lkmMode, + ) + + // 链接卡片 + if (!viewModel.isSimpleMode && !viewModel.isHideLinkCard) { + ContributionCard() + DonateCard() + LearnMoreCard() + } + } + + if (!viewModel.isExtendedDataLoaded) { + Box( + modifier = Modifier + .fillMaxWidth() + .padding(24.dp), + contentAlignment = Alignment.Center + ) { + CircularProgressIndicator() + } + } + + Spacer(Modifier.height(16.dp)) + } + } + } +} + +@Composable +fun UpdateCard() { + val context = LocalContext.current + val latestVersionInfo = LatestVersionInfo() + val newVersion by produceState(initialValue = latestVersionInfo) { + value = withContext(Dispatchers.IO) { + checkNewVersion() + } + } + + val currentVersionCode = getManagerVersion(context).second + val newVersionCode = newVersion.versionCode + val newVersionUrl = newVersion.downloadUrl + val changelog = newVersion.changelog + + val uriHandler = LocalUriHandler.current + val title = stringResource(id = R.string.module_changelog) + val updateText = stringResource(id = R.string.module_update) + + AnimatedVisibility( + visible = newVersionCode > currentVersionCode, + enter = fadeIn() + expandVertically( + animationSpec = spring( + dampingRatio = Spring.DampingRatioMediumBouncy, + stiffness = Spring.StiffnessLow + ) + ), + exit = shrinkVertically() + fadeOut() + ) { + val updateDialog = rememberConfirmDialog(onConfirm = { uriHandler.openUri(newVersionUrl) }) + WarningCard( + message = stringResource(id = R.string.new_version_available).format(newVersionCode), + color = MaterialTheme.colorScheme.outlineVariant, + onClick = { + if (changelog.isEmpty()) { + uriHandler.openUri(newVersionUrl) + } else { + updateDialog.showConfirm( + title = title, + content = changelog, + markdown = true, + confirm = updateText + ) + } + } + ) + } +} + +@Composable +fun RebootDropdownItem(@StringRes id: Int, reason: String = "") { + DropdownMenuItem( + text = { Text(stringResource(id)) }, + onClick = { reboot(reason) }) +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun TopBar( + scrollBehavior: TopAppBarScrollBehavior? = null, + navigator: DestinationsNavigator, + isDataLoaded: Boolean = false +) { + val context = LocalContext.current + val colorScheme = MaterialTheme.colorScheme + val cardColor = if (CardConfig.isCustomBackgroundEnabled) { + colorScheme.surfaceContainerLow + } else { + colorScheme.background + } + + TopAppBar( + title = { + Text( + text = stringResource(R.string.app_name), + style = MaterialTheme.typography.titleLarge + ) + }, + colors = TopAppBarDefaults.topAppBarColors( + containerColor = cardColor.copy(alpha = cardAlpha), + scrolledContainerColor = cardColor.copy(alpha = cardAlpha) + ), + actions = { + if (isDataLoaded) { + // SuSFS 配置按钮 + val susfsVersion = getSuSFSVersion() + if (susfsVersion.isNotEmpty() && !susfsVersion.startsWith("[-]") && SuSFSManager.isBinaryAvailable(context)) { + IconButton(onClick = { + navigator.navigate(SuSFSConfigScreenDestination) + }) { + Icon( + imageVector = Icons.Filled.Tune, + contentDescription = stringResource(R.string.susfs_config_setting_title) + ) + } + } + + // 重启按钮 + var showDropdown by remember { mutableStateOf(false) } + KsuIsValid { + IconButton(onClick = { + showDropdown = true + }) { + Icon( + imageVector = Icons.Filled.PowerSettingsNew, + contentDescription = stringResource(id = R.string.reboot) + ) + + DropdownMenu(expanded = showDropdown, onDismissRequest = { + showDropdown = false + }) { + RebootDropdownItem(id = R.string.reboot) + + val pm = + LocalContext.current.getSystemService(Context.POWER_SERVICE) as PowerManager? + @Suppress("DEPRECATION") + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R && pm?.isRebootingUserspaceSupported == true) { + RebootDropdownItem(id = R.string.reboot_userspace, reason = "userspace") + } + RebootDropdownItem(id = R.string.reboot_recovery, reason = "recovery") + RebootDropdownItem(id = R.string.reboot_bootloader, reason = "bootloader") + RebootDropdownItem(id = R.string.reboot_download, reason = "download") + RebootDropdownItem(id = R.string.reboot_edl, reason = "edl") + } + } + } + } + }, + windowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal), + scrollBehavior = scrollBehavior + ) +} + +@Composable +private fun StatusCard( + systemStatus: HomeViewModel.SystemStatus, + onClickInstall: () -> Unit = {} +) { + ElevatedCard( + colors = getCardColors( + if (systemStatus.ksuVersion != null) MaterialTheme.colorScheme.secondaryContainer + else MaterialTheme.colorScheme.errorContainer + ), + elevation = getCardElevation(), + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .clickable { + if (systemStatus.isRootAvailable || systemStatus.kernelVersion.isGKI()) { + onClickInstall() + } + } + .padding(24.dp), + verticalAlignment = Alignment.CenterVertically + ) { + when { + systemStatus.ksuVersion != null -> { + + val workingModeText = when { + Natives.isSafeMode -> stringResource(id = R.string.safe_mode) + else -> stringResource(id = R.string.home_working) + } + + val workingModeSurfaceText = when { + systemStatus.lkmMode == true -> "LKM" + else -> "Built-in" + } + + Icon( + Icons.Outlined.TaskAlt, + contentDescription = stringResource(R.string.home_working), + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier + .size(28.dp) + .padding( + horizontal = 4.dp + ), + ) + + Column(Modifier.padding(start = 20.dp)) { + Row( + verticalAlignment = Alignment.CenterVertically, + modifier = Modifier.fillMaxWidth() + ) { + Text( + text = workingModeText, + style = MaterialTheme.typography.titleMedium, + color = MaterialTheme.colorScheme.primary, + ) + + Spacer(Modifier.width(8.dp)) + + // 工作模式标签 + Surface( + shape = RoundedCornerShape(4.dp), + color = MaterialTheme.colorScheme.primary, + modifier = Modifier + ) { + Text( + text = workingModeSurfaceText, + style = MaterialTheme.typography.labelMedium, + modifier = Modifier.padding(horizontal = 6.dp, vertical = 2.dp), + color = MaterialTheme.colorScheme.onPrimary + ) + } + + Spacer(Modifier.width(6.dp)) + + // 架构标签 + if (Os.uname().machine != "aarch64") { + Surface( + shape = RoundedCornerShape(4.dp), + color = MaterialTheme.colorScheme.primary, + modifier = Modifier + ) { + Text( + text = Os.uname().machine, + style = MaterialTheme.typography.labelMedium, + modifier = Modifier.padding( + horizontal = 6.dp, + vertical = 2.dp + ), + color = MaterialTheme.colorScheme.onPrimary + ) + } + } + } + + val isHideVersion = LocalContext.current.getSharedPreferences( + "settings", + Context.MODE_PRIVATE + ) + .getBoolean("is_hide_version", false) + + if (!isHideVersion) { + Spacer(Modifier.height(4.dp)) + systemStatus.ksuFullVersion?.let { + Text( + text = stringResource(R.string.home_working_version, it), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.secondary, + ) + } + } + } + } + + systemStatus.kernelVersion.isGKI() -> { + Icon( + Icons.Outlined.Warning, + contentDescription = stringResource(R.string.home_not_installed), + tint = MaterialTheme.colorScheme.error, + modifier = Modifier + .size(28.dp) + .padding( + horizontal = 4.dp + ), + ) + + Column(Modifier.padding(start = 20.dp)) { + Text( + text = stringResource(R.string.home_not_installed), + style = MaterialTheme.typography.titleMedium, + color = MaterialTheme.colorScheme.error + ) + + Spacer(Modifier.height(4.dp)) + Text( + text = stringResource(R.string.home_click_to_install), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onErrorContainer + ) + } + } + + else -> { + Icon( + Icons.Outlined.Block, + contentDescription = stringResource(R.string.home_unsupported), + tint = MaterialTheme.colorScheme.error, + modifier = Modifier + .size(28.dp) + .padding( + horizontal = 4.dp + ), + ) + + Column(Modifier.padding(start = 20.dp)) { + Text( + text = stringResource(R.string.home_unsupported), + style = MaterialTheme.typography.titleMedium, + color = MaterialTheme.colorScheme.error + ) + + Spacer(Modifier.height(4.dp)) + Text( + text = stringResource(R.string.home_unsupported_reason), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onErrorContainer + ) + } + } + } + } + } +} + +@Composable +fun WarningCard( + message: String, + color: Color = MaterialTheme.colorScheme.error, + onClick: (() -> Unit)? = null +) { + ElevatedCard( + colors = getCardColors(color), + elevation = getCardElevation(), + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .then(onClick?.let { Modifier.clickable { it() } } ?: Modifier) + .padding(24.dp), + verticalAlignment = Alignment.CenterVertically + ) { + Text( + text = message, + style = MaterialTheme.typography.bodyMedium, + ) + } + } +} + +@Composable +fun ContributionCard() { + val uriHandler = LocalUriHandler.current + val links = listOf("https://github.com/ShirkNeko", "https://github.com/udochina") + + ElevatedCard( + colors = getCardColors(MaterialTheme.colorScheme.surfaceContainer), + elevation = getCardElevation(), + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .clickable { + val randomIndex = Random.nextInt(links.size) + uriHandler.openUri(links[randomIndex]) + } + .padding(24.dp), + verticalAlignment = Alignment.CenterVertically + ) { + Column { + Text( + text = stringResource(R.string.home_ContributionCard_kernelsu), + style = MaterialTheme.typography.titleSmall, + ) + + Spacer(Modifier.height(4.dp)) + Text( + text = stringResource(R.string.home_click_to_ContributionCard_kernelsu), + style = MaterialTheme.typography.bodyMedium, + ) + } + } + } +} + +@Composable +fun LearnMoreCard() { + val uriHandler = LocalUriHandler.current + val url = stringResource(R.string.home_learn_kernelsu_url) + + ElevatedCard( + colors = getCardColors(MaterialTheme.colorScheme.surfaceContainer), + elevation = CardDefaults.cardElevation(defaultElevation = cardElevation) + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .clickable { + uriHandler.openUri(url) + } + .padding(24.dp), + verticalAlignment = Alignment.CenterVertically + ) { + Column { + Text( + text = stringResource(R.string.home_learn_kernelsu), + style = MaterialTheme.typography.titleSmall, + ) + + Spacer(Modifier.height(4.dp)) + Text( + text = stringResource(R.string.home_click_to_learn_kernelsu), + style = MaterialTheme.typography.bodyMedium, + ) + } + } + } +} + +@Composable +fun DonateCard() { + val uriHandler = LocalUriHandler.current + + ElevatedCard( + colors = getCardColors(MaterialTheme.colorScheme.surfaceContainer), + elevation = getCardElevation(), + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .clickable { + uriHandler.openUri("https://patreon.com/weishu") + } + .padding(24.dp), + verticalAlignment = Alignment.CenterVertically + ) { + Column { + Text( + text = stringResource(R.string.home_support_title), + style = MaterialTheme.typography.titleSmall, + ) + + Spacer(Modifier.height(4.dp)) + Text( + text = stringResource(R.string.home_support_content), + style = MaterialTheme.typography.bodyMedium, + ) + } + } + } +} + +@Composable +private fun InfoCard( + systemInfo: HomeViewModel.SystemInfo, + isSimpleMode: Boolean, + isHideSusfsStatus: Boolean, + isHideZygiskImplement: Boolean, + showKpmInfo: Boolean, + lkmMode: Boolean? +) { + ElevatedCard( + colors = getCardColors(MaterialTheme.colorScheme.surfaceContainer), + elevation = getCardElevation(), + ) { + Column( + modifier = Modifier + .fillMaxWidth() + .padding(start = 24.dp, top = 24.dp, end = 24.dp, bottom = 16.dp), + ) { + @Composable + fun InfoCardItem( + label: String, + content: String, + icon: ImageVector? = null, + ) { + Row( + verticalAlignment = Alignment.Top, + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 8.dp) + ) { + if (icon != null) { + Icon( + imageVector = icon, + contentDescription = label, + modifier = Modifier + .size(28.dp) + .padding(vertical = 4.dp), + ) + } + Spacer(modifier = Modifier.width(16.dp)) + Column( + modifier = Modifier + .fillMaxWidth() + .weight(1f) + ) { + Text( + text = label, + style = MaterialTheme.typography.labelLarge, + ) + Text( + text = content, + style = MaterialTheme.typography.bodyMedium, + softWrap = true + ) + } + } + } + + InfoCardItem( + stringResource(R.string.home_kernel), + systemInfo.kernelRelease, + icon = Icons.Default.Memory, + ) + + if (!isSimpleMode) { + InfoCardItem( + stringResource(R.string.home_android_version), + systemInfo.androidVersion, + icon = Icons.Default.Android, + ) + } + + InfoCardItem( + stringResource(R.string.home_device_model), + systemInfo.deviceModel, + icon = Icons.Default.PhoneAndroid, + ) + + InfoCardItem( + stringResource(R.string.home_manager_version), + "${systemInfo.managerVersion.first} (${systemInfo.managerVersion.second.toInt()})", + icon = Icons.Default.SettingsSuggest, + ) + + if (!isSimpleMode && + (systemInfo.suSFSStatus != "Supported")) { + InfoCardItem( + stringResource(R.string.home_hook_type), + Natives.getHookType(), + icon = Icons.Default.Link + ) + } + + // 活跃管理器 + if (!isSimpleMode && systemInfo.isDynamicSignEnabled && systemInfo.managersList != null) { + val signatureMap = systemInfo.managersList.managers.groupBy { it.signatureIndex } + + val managersText = buildString { + signatureMap.toSortedMap().forEach { (signatureIndex, managers) -> + append(managers.joinToString(", ") { "UID: ${it.uid}" }) + append(" ") + append( + when (signatureIndex) { + 0 -> "(${stringResource(R.string.default_signature)})" + 100 -> "(${stringResource(R.string.dynamic_managerature)})" + else -> if (signatureIndex >= 1) "(${ + stringResource( + R.string.signature_index, + signatureIndex + ) + })" else "(${stringResource(R.string.unknown_signature)})" + } + ) + append(" | ") + } + }.trimEnd(' ', '|') + + InfoCardItem( + stringResource(R.string.multi_manager_list), + managersText.ifEmpty { stringResource(R.string.no_active_manager) }, + icon = Icons.Default.Group, + ) + } + + InfoCardItem( + stringResource(R.string.home_selinux_status), + systemInfo.seLinuxStatus, + icon = Icons.Default.Security, + ) + + if (!isHideZygiskImplement && !isSimpleMode && systemInfo.zygiskImplement != "None") { + InfoCardItem( + stringResource(R.string.home_zygisk_implement), + systemInfo.zygiskImplement, + icon = Icons.Default.Adb, + ) + } + + if (!isSimpleMode) { + if (lkmMode != true && !showKpmInfo) { + val displayVersion = + if (systemInfo.kpmVersion.isEmpty() || systemInfo.kpmVersion.startsWith("Error")) { + val statusText = if (Natives.isKPMEnabled()) { + stringResource(R.string.kernel_patched) + } else { + stringResource(R.string.kernel_not_enabled) + } + "${stringResource(R.string.not_supported)} ($statusText)" + } else { + "${stringResource(R.string.supported)} (${systemInfo.kpmVersion})" + } + + InfoCardItem( + stringResource(R.string.home_kpm_version), + displayVersion, + icon = Icons.Default.Archive + ) + } + } + + if (!isSimpleMode && !isHideSusfsStatus && + systemInfo.suSFSStatus == "Supported" && + systemInfo.suSFSVersion.isNotEmpty() + ) { + + val infoText = SuSFSInfoText(systemInfo) + + InfoCardItem( + stringResource(R.string.home_susfs_version), + infoText, + icon = Icons.Default.Storage + ) + } + } + } +} + +@SuppressLint("ComposableNaming") +@Composable +private fun SuSFSInfoText(systemInfo: HomeViewModel.SystemInfo): String = buildString { + append(systemInfo.suSFSVersion) + + when { + Natives.getHookType() == "Manual" -> { + append(" (${stringResource(R.string.manual_hook)})") + } + + Natives.getHookType() == "Inline" -> { + append(" (${stringResource(R.string.inline_hook)})") + } + + else -> { + append(" (${Natives.getHookType()})") + } + } +} + +fun getManagerVersion(context: Context): Pair { + val packageInfo = context.packageManager.getPackageInfo(context.packageName, 0)!! + val versionCode = PackageInfoCompat.getLongVersionCode(packageInfo) + return Pair(packageInfo.versionName!!, versionCode) +} + +@Preview +@Composable +private fun StatusCardPreview() { + Column(verticalArrangement = Arrangement.spacedBy(8.dp)) { + StatusCard( + HomeViewModel.SystemStatus( + isManager = true, + ksuVersion = 1, + lkmMode = null, + kernelVersion = KernelVersion(5, 10, 101), + isRootAvailable = true + ) + ) + + StatusCard( + HomeViewModel.SystemStatus( + isManager = true, + ksuVersion = 40000, + lkmMode = true, + kernelVersion = KernelVersion(5, 10, 101), + isRootAvailable = true + ) + ) + + StatusCard( + HomeViewModel.SystemStatus( + isManager = false, + ksuVersion = null, + lkmMode = true, + kernelVersion = KernelVersion(5, 10, 101), + isRootAvailable = false + ) + ) + + StatusCard( + HomeViewModel.SystemStatus( + isManager = false, + ksuVersion = null, + lkmMode = false, + kernelVersion = KernelVersion(4, 10, 101), + isRootAvailable = false + ) + ) + } +} + +@Composable +private fun IncompatibleKernelCard() { + val currentKver = remember { Natives.version } + val threshold = Natives.MINIMAL_NEW_IOCTL_KERNEL + + val msg = stringResource( + id = R.string.incompatible_kernel_msg, + currentKver, + threshold + ) + + WarningCard( + message = msg, + color = MaterialTheme.colorScheme.error + ) +} + +@Preview +@Composable +private fun WarningCardPreview() { + Column(verticalArrangement = Arrangement.spacedBy(8.dp)) { + WarningCard(message = "Warning message") + WarningCard( + message = "Warning message ", + MaterialTheme.colorScheme.outlineVariant, + onClick = {}) + } +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Install.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Install.kt new file mode 100644 index 0000000..5b04b89 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Install.kt @@ -0,0 +1,1102 @@ +package com.sukisu.ultra.ui.screen + +import android.app.Activity +import android.content.Context +import android.content.Intent +import android.net.Uri +import android.provider.OpenableColumns +import android.widget.Toast +import androidx.activity.compose.rememberLauncherForActivityResult +import androidx.activity.result.contract.ActivityResultContracts +import androidx.annotation.StringRes +import androidx.compose.animation.* +import androidx.compose.foundation.LocalIndication +import androidx.compose.foundation.clickable +import androidx.compose.foundation.interaction.MutableInteractionSource +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.selection.selectable +import androidx.compose.foundation.verticalScroll +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.filled.ArrowBack +import androidx.compose.material.icons.automirrored.filled.Input +import androidx.compose.material.icons.filled.AutoFixHigh +import androidx.compose.material.icons.filled.Edit +import androidx.compose.material.icons.filled.FileUpload +import androidx.compose.material.icons.filled.Security +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.draw.shadow +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.input.nestedscroll.nestedScroll +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.semantics.Role +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import androidx.core.net.toUri +import com.maxkeppeker.sheets.core.models.base.Header +import com.maxkeppeker.sheets.core.models.base.rememberUseCaseState +import com.maxkeppeler.sheets.list.ListDialog +import com.maxkeppeler.sheets.list.models.ListOption +import com.maxkeppeler.sheets.list.models.ListSelection +import com.ramcosta.composedestinations.annotation.Destination +import com.ramcosta.composedestinations.annotation.RootGraph +import com.ramcosta.composedestinations.generated.destinations.FlashScreenDestination +import com.ramcosta.composedestinations.generated.destinations.KernelFlashScreenDestination +import com.ramcosta.composedestinations.navigation.DestinationsNavigator +import com.ramcosta.composedestinations.navigation.EmptyDestinationsNavigator +import com.sukisu.ultra.R +import com.sukisu.ultra.getKernelVersion +import com.sukisu.ultra.ui.component.DialogHandle +import com.sukisu.ultra.ui.component.SuperDropdown +import com.sukisu.ultra.ui.component.rememberConfirmDialog +import com.sukisu.ultra.ui.component.rememberCustomDialog +import com.sukisu.ultra.ui.theme.CardConfig +import com.sukisu.ultra.ui.theme.CardConfig.cardAlpha +import com.sukisu.ultra.ui.theme.CardConfig.cardElevation +import com.sukisu.ultra.ui.theme.getCardColors +import com.sukisu.ultra.ui.theme.getCardElevation +import com.sukisu.ultra.ui.util.* +import zako.zako.zako.zakoui.screen.kernelFlash.component.SlotSelectionDialog + +/** + * @author ShirkNeko + * @date 2025/5/31. + */ + +enum class KpmPatchOption { + FOLLOW_KERNEL, + PATCH_KPM, + UNDO_PATCH_KPM +} + +@OptIn(ExperimentalMaterial3Api::class) +@Destination +@Composable +fun InstallScreen( + navigator: DestinationsNavigator, + preselectedKernelUri: String? = null +) { + val context = LocalContext.current + var installMethod by remember { mutableStateOf(null) } + var lkmSelection by remember { mutableStateOf(LkmSelection.KmiNone) } + var kpmPatchOption by remember { mutableStateOf(KpmPatchOption.FOLLOW_KERNEL) } + var showRebootDialog by remember { mutableStateOf(false) } + var showSlotSelectionDialog by remember { mutableStateOf(false) } + var showKpmPatchDialog by remember { mutableStateOf(false) } + var tempKernelUri by remember { mutableStateOf(null) } + + val kernelVersion = getKernelVersion() + val isGKI = kernelVersion.isGKI() + val isAbDevice = produceState(initialValue = false) { + value = isAbDevice() + }.value + val summary = stringResource(R.string.horizon_kernel_summary) + + // 处理预选的内核文件 + LaunchedEffect(preselectedKernelUri) { + preselectedKernelUri?.let { uriString -> + try { + val preselectedUri = uriString.toUri() + val horizonMethod = InstallMethod.HorizonKernel( + uri = preselectedUri, + summary = summary + ) + installMethod = horizonMethod + tempKernelUri = preselectedUri + + if (isAbDevice) { + showSlotSelectionDialog = true + } else { + showKpmPatchDialog = true + } + } catch (e: Exception) { + e.printStackTrace() + } + } + } + + if (showRebootDialog) { + RebootDialog( + show = true, + onDismiss = { showRebootDialog = false }, + onConfirm = { + showRebootDialog = false + try { + val process = Runtime.getRuntime().exec("su") + process.outputStream.bufferedWriter().use { writer -> + writer.write("svc power reboot\n") + writer.write("exit\n") + } + } catch (_: Exception) { + Toast.makeText(context, R.string.failed_reboot, Toast.LENGTH_SHORT).show() + } + } + ) + } + + var partitionSelectionIndex by remember { mutableIntStateOf(0) } + var partitionsState by remember { mutableStateOf>(emptyList()) } + var hasCustomSelected by remember { mutableStateOf(false) } + + val onInstall = { + installMethod?.let { method -> + when (method) { + is InstallMethod.HorizonKernel -> { + method.uri?.let { uri -> + navigator.navigate( + KernelFlashScreenDestination( + kernelUri = uri, + selectedSlot = method.slot, + kpmPatchEnabled = kpmPatchOption == KpmPatchOption.PATCH_KPM, + kpmUndoPatch = kpmPatchOption == KpmPatchOption.UNDO_PATCH_KPM + ) + ) + } + } + else -> { + val isOta = method is InstallMethod.DirectInstallToInactiveSlot + val partitionSelection = partitionsState.getOrNull(partitionSelectionIndex) + val flashIt = FlashIt.FlashBoot( + boot = if (method is InstallMethod.SelectFile) method.uri else null, + lkm = lkmSelection, + ota = isOta, + partition = partitionSelection + ) + navigator.navigate(FlashScreenDestination(flashIt)) + } + } + } + Unit + } + + // 槽位选择 + SlotSelectionDialog( + show = showSlotSelectionDialog && isAbDevice, + onDismiss = { showSlotSelectionDialog = false }, + onSlotSelected = { slot -> + showSlotSelectionDialog = false + val horizonMethod = InstallMethod.HorizonKernel( + uri = tempKernelUri, + slot = slot, + summary = summary + ) + installMethod = horizonMethod + + if (preselectedKernelUri != null) { + showKpmPatchDialog = true + } + } + ) + + KpmPatchSelectionDialog( + show = showKpmPatchDialog, + currentOption = kpmPatchOption, + onDismiss = { showKpmPatchDialog = false }, + onOptionSelected = { option -> + kpmPatchOption = option + showKpmPatchDialog = false + } + ) + + val currentKmi by produceState(initialValue = "") { + value = getCurrentKmi() + } + + val selectKmiDialog = rememberSelectKmiDialog { kmi -> + kmi?.let { + lkmSelection = LkmSelection.KmiString(it) + onInstall() + } + } + + val onClickNext = { + if (isGKI && lkmSelection == LkmSelection.KmiNone && currentKmi.isBlank() && installMethod !is InstallMethod.HorizonKernel) { + selectKmiDialog.show() + } else { + onInstall() + } + } + + val selectLkmLauncher = rememberLauncherForActivityResult( + contract = ActivityResultContracts.StartActivityForResult() + ) { + if (it.resultCode == Activity.RESULT_OK) { + it.data?.data?.let { uri -> + val isKo = isKoFile(context, uri) + if (isKo) { + lkmSelection = LkmSelection.LkmUri(uri) + } else { + lkmSelection = LkmSelection.KmiNone + Toast.makeText( + context, + context.getString(R.string.install_only_support_ko_file), + Toast.LENGTH_SHORT + ).show() + } + } + } + } + + val onLkmUpload = { + selectLkmLauncher.launch(Intent(Intent.ACTION_GET_CONTENT).apply { + type = "application/octet-stream" + }) + } + + val scrollBehavior = TopAppBarDefaults.pinnedScrollBehavior(rememberTopAppBarState()) + + Scaffold( + topBar = { + TopBar( + onBack = { navigator.popBackStack() }, + scrollBehavior = scrollBehavior + ) + }, + contentWindowInsets = WindowInsets.safeDrawing.only( + WindowInsetsSides.Top + WindowInsetsSides.Horizontal + ) + ) { innerPadding -> + Column( + modifier = Modifier + .padding(innerPadding) + .nestedScroll(scrollBehavior.nestedScrollConnection) + .verticalScroll(rememberScrollState()) + .padding(top = 12.dp) + ) { + SelectInstallMethod( + isGKI = isGKI, + onSelected = { method -> + if (method is InstallMethod.HorizonKernel && method.uri != null) { + if (isAbDevice) { + tempKernelUri = method.uri + showSlotSelectionDialog = true + } else { + installMethod = method + showKpmPatchDialog = true + } + } else { + installMethod = method + } + }, + kpmPatchOption = kpmPatchOption, + onKpmPatchOptionChanged = { kpmPatchOption = it }, + selectedMethod = installMethod + ) + + // 选择LKM直接安装分区 + AnimatedVisibility( + visible = installMethod is InstallMethod.DirectInstall || installMethod is InstallMethod.DirectInstallToInactiveSlot, + enter = fadeIn() + expandVertically(), + exit = shrinkVertically() + fadeOut() + ) { + Column( + modifier = Modifier + .fillMaxWidth() + .padding(16.dp) + ) { + ElevatedCard( + colors = getCardColors(MaterialTheme.colorScheme.surfaceVariant), + elevation = getCardElevation(), + modifier = Modifier + .fillMaxWidth() + .padding(bottom = 12.dp), + ) { + val isOta = installMethod is InstallMethod.DirectInstallToInactiveSlot + val suffix = produceState(initialValue = "", isOta) { + value = getSlotSuffix(isOta) + }.value + + val partitions = produceState(initialValue = emptyList()) { + value = getAvailablePartitions() + }.value + + val defaultPartition = produceState(initialValue = "") { + value = getDefaultPartition() + }.value + + partitionsState = partitions + val displayPartitions = partitions.map { name -> + if (defaultPartition == name) "$name (default)" else name + } + + val defaultIndex = partitions.indexOf(defaultPartition).takeIf { it >= 0 } ?: 0 + if (!hasCustomSelected) partitionSelectionIndex = defaultIndex + + SuperDropdown( + items = displayPartitions, + selectedIndex = partitionSelectionIndex, + title = "${stringResource(R.string.install_select_partition)} (${suffix})", + onSelectedIndexChange = { index -> + hasCustomSelected = true + partitionSelectionIndex = index + }, + leftAction = { + Icon( + Icons.Default.Edit, + tint = MaterialTheme.colorScheme.onSurface, + modifier = Modifier.padding(end = 16.dp), + contentDescription = null + ) + } + ) + } + } + } + + Column( + modifier = Modifier + .fillMaxWidth() + .padding(16.dp) + ) { + if (isGKI) { + // 使用本地的LKM文件 + ElevatedCard( + colors = getCardColors(MaterialTheme.colorScheme.surfaceVariant), + elevation = getCardElevation(), + modifier = Modifier + .fillMaxWidth() + .padding(bottom = 12.dp), + ) { + ListItem( + headlineContent = { + Text(stringResource(id = R.string.install_upload_lkm_file)) + }, + supportingContent = { + (lkmSelection as? LkmSelection.LkmUri)?.let { + Text( + stringResource( + id = R.string.selected_lkm, + it.uri.lastPathSegment ?: "(file)" + ) + ) + } + }, + leadingContent = { + Icon( + Icons.AutoMirrored.Filled.Input, + contentDescription = null + ) + }, + modifier = Modifier + .fillMaxWidth() + .clickable { onLkmUpload() } + ) + } + } + + (installMethod as? InstallMethod.HorizonKernel)?.let { method -> + if (method.slot != null) { + ElevatedCard( + colors = getCardColors(MaterialTheme.colorScheme.surfaceVariant), + elevation = getCardElevation(), + modifier = Modifier + .fillMaxWidth() + .padding(bottom = 12.dp) + ) { + Text( + text = stringResource( + id = R.string.selected_slot, + if (method.slot == "a") stringResource(id = R.string.slot_a) + else stringResource(id = R.string.slot_b) + ), + style = MaterialTheme.typography.bodyMedium, + modifier = Modifier.padding(16.dp) + ) + } + } + + // KPM 状态显示卡片 + if (kpmPatchOption != KpmPatchOption.FOLLOW_KERNEL) { + ElevatedCard( + colors = getCardColors(MaterialTheme.colorScheme.surfaceVariant), + elevation = getCardElevation(), + modifier = Modifier + .fillMaxWidth() + .padding(bottom = 12.dp) + ) { + Text( + text = when (kpmPatchOption) { + KpmPatchOption.PATCH_KPM -> stringResource(R.string.kpm_patch_enabled) + KpmPatchOption.UNDO_PATCH_KPM -> stringResource(R.string.kpm_undo_patch_enabled) + else -> "" + }, + style = MaterialTheme.typography.bodyMedium, + modifier = Modifier.padding(16.dp), + color = when (kpmPatchOption) { + KpmPatchOption.PATCH_KPM -> MaterialTheme.colorScheme.primary + KpmPatchOption.UNDO_PATCH_KPM -> MaterialTheme.colorScheme.tertiary + else -> MaterialTheme.colorScheme.onSurface + } + ) + } + } + } + + Button( + modifier = Modifier.fillMaxWidth(), + enabled = installMethod != null, + onClick = onClickNext, + shape = MaterialTheme.shapes.medium, + colors = ButtonDefaults.buttonColors( + containerColor = MaterialTheme.colorScheme.primary, + contentColor = MaterialTheme.colorScheme.onPrimary, + disabledContainerColor = MaterialTheme.colorScheme.surfaceVariant.copy(alpha = 0.6f), + disabledContentColor = MaterialTheme.colorScheme.onSurfaceVariant.copy(alpha = 0.6f) + ) + ) { + Text( + stringResource(id = R.string.install_next), + style = MaterialTheme.typography.bodyMedium + ) + } + } + } + } +} + +@Composable +private fun KpmPatchSelectionDialog( + show: Boolean, + currentOption: KpmPatchOption, + onDismiss: () -> Unit, + onOptionSelected: (KpmPatchOption) -> Unit +) { + if (show) { + AlertDialog( + onDismissRequest = onDismiss, + title = { Text(stringResource(R.string.kpm_patch_options)) }, + text = { + Column { + Text( + text = stringResource(R.string.kpm_patch_description), + style = MaterialTheme.typography.bodyMedium, + modifier = Modifier.padding(bottom = 16.dp) + ) + + KpmPatchOptionGroup( + selectedOption = currentOption, + onOptionChanged = onOptionSelected + ) + } + }, + confirmButton = { + TextButton( + onClick = { onOptionSelected(currentOption) } + ) { + Text(stringResource(android.R.string.ok)) + } + }, + dismissButton = { + TextButton(onClick = onDismiss) { + Text(stringResource(android.R.string.cancel)) + } + } + ) + } +} + +@Composable +private fun RebootDialog( + show: Boolean, + onDismiss: () -> Unit, + onConfirm: () -> Unit +) { + if (show) { + AlertDialog( + onDismissRequest = onDismiss, + title = { Text(stringResource(id = R.string.reboot_complete_title)) }, + text = { Text(stringResource(id = R.string.reboot_complete_msg)) }, + confirmButton = { + TextButton(onClick = onConfirm) { + Text(stringResource(id = R.string.yes)) + } + }, + dismissButton = { + TextButton(onClick = onDismiss) { + Text(stringResource(id = R.string.no)) + } + } + ) + } +} + +sealed class InstallMethod { + data class SelectFile( + val uri: Uri? = null, + @param:StringRes override val label: Int = R.string.select_file, + override val summary: String? + ) : InstallMethod() + + data object DirectInstall : InstallMethod() { + override val label: Int + get() = R.string.direct_install + } + + data object DirectInstallToInactiveSlot : InstallMethod() { + override val label: Int + get() = R.string.install_inactive_slot + } + + data class HorizonKernel( + val uri: Uri? = null, + val slot: String? = null, + @param:StringRes override val label: Int = R.string.horizon_kernel, + override val summary: String? = null + ) : InstallMethod() + + abstract val label: Int + open val summary: String? = null +} + +@Composable +private fun SelectInstallMethod( + isGKI: Boolean = false, + onSelected: (InstallMethod) -> Unit = {}, + kpmPatchOption: KpmPatchOption = KpmPatchOption.FOLLOW_KERNEL, + onKpmPatchOptionChanged: (KpmPatchOption) -> Unit = {}, + selectedMethod: InstallMethod? = null +) { + val rootAvailable = rootAvailable() + val isAbDevice = produceState(initialValue = false) { + value = isAbDevice() + }.value + val defaultPartitionName = produceState(initialValue = "boot") { + value = getDefaultPartition() + }.value + val horizonKernelSummary = stringResource(R.string.horizon_kernel_summary) + val selectFileTip = stringResource( + id = R.string.select_file_tip, defaultPartitionName + ) + + val radioOptions = mutableListOf( + InstallMethod.SelectFile(summary = selectFileTip) + ) + + if (rootAvailable) { + radioOptions.add(InstallMethod.DirectInstall) + if (isAbDevice) { + radioOptions.add(InstallMethod.DirectInstallToInactiveSlot) + } + radioOptions.add(InstallMethod.HorizonKernel(summary = horizonKernelSummary)) + } + + var selectedOption by remember { mutableStateOf(null) } + var currentSelectingMethod by remember { mutableStateOf(null) } + + LaunchedEffect(selectedMethod) { + selectedOption = selectedMethod + } + + val selectImageLauncher = rememberLauncherForActivityResult( + contract = ActivityResultContracts.StartActivityForResult() + ) { + if (it.resultCode == Activity.RESULT_OK) { + it.data?.data?.let { uri -> + val option = when (currentSelectingMethod) { + is InstallMethod.SelectFile -> InstallMethod.SelectFile( + uri, + summary = selectFileTip + ) + + is InstallMethod.HorizonKernel -> InstallMethod.HorizonKernel( + uri, + summary = horizonKernelSummary + ) + + else -> null + } + option?.let { opt -> + selectedOption = opt + onSelected(opt) + } + } + } + } + + val confirmDialog = rememberConfirmDialog( + onConfirm = { + selectedOption = InstallMethod.DirectInstallToInactiveSlot + onSelected(InstallMethod.DirectInstallToInactiveSlot) + }, + onDismiss = null + ) + + val dialogTitle = stringResource(id = android.R.string.dialog_alert_title) + val dialogContent = stringResource(id = R.string.install_inactive_slot_warning) + + val onClick = { option: InstallMethod -> + currentSelectingMethod = option + when (option) { + is InstallMethod.SelectFile, is InstallMethod.HorizonKernel -> { + selectImageLauncher.launch(Intent(Intent.ACTION_GET_CONTENT).apply { + type = "application/*" + putExtra( + Intent.EXTRA_MIME_TYPES, + arrayOf("application/octet-stream", "application/zip") + ) + }) + } + + is InstallMethod.DirectInstall -> { + selectedOption = option + onSelected(option) + } + + is InstallMethod.DirectInstallToInactiveSlot -> { + confirmDialog.showConfirm(dialogTitle, dialogContent) + } + } + } + + var lkmExpanded by remember { mutableStateOf(false) } + var gkiExpanded by remember { mutableStateOf(false) } + + Column( + modifier = Modifier.padding(horizontal = 16.dp) + ) { + // LKM 安装/修补 + if (isGKI) { + ElevatedCard( + colors = getCardColors(MaterialTheme.colorScheme.surfaceVariant), + elevation = getCardElevation(), + modifier = Modifier + .fillMaxWidth() + .padding(bottom = 16.dp) + ) { + MaterialTheme( + colorScheme = MaterialTheme.colorScheme.copy( + surface = if (CardConfig.isCustomBackgroundEnabled) Color.Transparent else MaterialTheme.colorScheme.surfaceVariant + ) + ) { + ListItem( + leadingContent = { + Icon( + Icons.Filled.AutoFixHigh, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary + ) + }, + headlineContent = { + Text( + stringResource(R.string.Lkm_install_methods), + style = MaterialTheme.typography.titleMedium + ) + }, + modifier = Modifier.clickable { + lkmExpanded = !lkmExpanded + } + ) + } + + AnimatedVisibility( + visible = lkmExpanded, + enter = fadeIn() + expandVertically(), + exit = shrinkVertically() + fadeOut() + ) { + Column( + modifier = Modifier.padding( + start = 16.dp, + end = 16.dp, + bottom = 16.dp + ) + ) { + radioOptions.filter { it !is InstallMethod.HorizonKernel }.forEach { option -> + val interactionSource = remember { MutableInteractionSource() } + Surface( + color = if (option.javaClass == selectedOption?.javaClass) + MaterialTheme.colorScheme.secondaryContainer.copy(alpha = cardAlpha) + else + MaterialTheme.colorScheme.surfaceContainerHighest.copy(alpha = cardAlpha), + shape = MaterialTheme.shapes.medium, + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 4.dp) + .clip(MaterialTheme.shapes.medium) + ) { + Row( + verticalAlignment = Alignment.CenterVertically, + modifier = Modifier + .fillMaxWidth() + .selectable( + selected = option.javaClass == selectedOption?.javaClass, + onClick = { onClick(option) }, + role = Role.RadioButton, + indication = LocalIndication.current, + interactionSource = interactionSource + ) + .padding(vertical = 8.dp, horizontal = 12.dp) + ) { + RadioButton( + selected = option.javaClass == selectedOption?.javaClass, + onClick = null, + interactionSource = interactionSource, + colors = RadioButtonDefaults.colors( + selectedColor = MaterialTheme.colorScheme.primary, + unselectedColor = MaterialTheme.colorScheme.onSurfaceVariant + ) + ) + Column( + modifier = Modifier + .padding(start = 10.dp) + .weight(1f) + ) { + Text( + text = stringResource(id = option.label), + style = MaterialTheme.typography.bodyLarge + ) + option.summary?.let { + Text( + text = it, + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + } + } + } + } + } + } + } + } + + // anykernel3 刷写 + if (rootAvailable) { + ElevatedCard( + colors = getCardColors(MaterialTheme.colorScheme.surfaceVariant), + elevation = getCardElevation(), + modifier = Modifier + .fillMaxWidth() + .padding(bottom = 12.dp) + ) { + MaterialTheme( + colorScheme = MaterialTheme.colorScheme.copy( + surface = if (CardConfig.isCustomBackgroundEnabled) Color.Transparent else MaterialTheme.colorScheme.surfaceVariant + ) + ) { + ListItem( + leadingContent = { + Icon( + Icons.Filled.FileUpload, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary + ) + }, + headlineContent = { + Text( + stringResource(R.string.GKI_install_methods), + style = MaterialTheme.typography.titleMedium + ) + }, + modifier = Modifier.clickable { + gkiExpanded = !gkiExpanded + } + ) + } + + AnimatedVisibility( + visible = gkiExpanded, + enter = fadeIn() + expandVertically(), + exit = shrinkVertically() + fadeOut() + ) { + Column( + modifier = Modifier.padding( + start = 16.dp, + end = 16.dp, + bottom = 16.dp + ) + ) { + radioOptions.filterIsInstance().forEach { option -> + val interactionSource = remember { MutableInteractionSource() } + Surface( + color = if (option.javaClass == selectedOption?.javaClass) + MaterialTheme.colorScheme.secondaryContainer.copy(alpha = cardAlpha) + else + MaterialTheme.colorScheme.surfaceContainerHighest.copy(alpha = cardAlpha), + shape = MaterialTheme.shapes.medium, + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 4.dp) + .clip(MaterialTheme.shapes.medium) + ) { + Row( + verticalAlignment = Alignment.CenterVertically, + modifier = Modifier + .fillMaxWidth() + .selectable( + selected = option.javaClass == selectedOption?.javaClass, + onClick = { onClick(option) }, + role = Role.RadioButton, + indication = LocalIndication.current, + interactionSource = interactionSource + ) + .padding(vertical = 8.dp, horizontal = 12.dp) + ) { + RadioButton( + selected = option.javaClass == selectedOption?.javaClass, + onClick = null, + interactionSource = interactionSource, + colors = RadioButtonDefaults.colors( + selectedColor = MaterialTheme.colorScheme.primary, + unselectedColor = MaterialTheme.colorScheme.onSurfaceVariant + ) + ) + Column( + modifier = Modifier + .padding(start = 10.dp) + .weight(1f) + ) { + Text( + text = stringResource(id = option.label), + style = MaterialTheme.typography.bodyLarge + ) + option.summary?.let { + Text( + text = it, + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + } + } + } + } + + // KPM修补 + if (selectedMethod is InstallMethod.HorizonKernel && selectedMethod.uri != null) { + Spacer(modifier = Modifier.height(16.dp)) + Row( + verticalAlignment = Alignment.CenterVertically, + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 8.dp) + ) { + Icon( + Icons.Filled.Security, + contentDescription = null, + tint = MaterialTheme.colorScheme.tertiary, + modifier = Modifier.size(20.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text( + stringResource(R.string.kpm_patch_options), + style = MaterialTheme.typography.titleSmall, + color = MaterialTheme.colorScheme.tertiary + ) + } + + Text( + stringResource(R.string.kpm_patch_description), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant, + modifier = Modifier.padding(bottom = 12.dp) + ) + + KpmPatchOptionGroup( + selectedOption = kpmPatchOption, + onOptionChanged = onKpmPatchOptionChanged + ) + } + } + } + } + } + } +} + +@Composable +private fun KpmPatchOptionGroup( + selectedOption: KpmPatchOption, + onOptionChanged: (KpmPatchOption) -> Unit +) { + val options = listOf( + KpmPatchOption.FOLLOW_KERNEL to stringResource(R.string.kpm_follow_kernel_file), + KpmPatchOption.PATCH_KPM to stringResource(R.string.enable_kpm_patch), + KpmPatchOption.UNDO_PATCH_KPM to stringResource(R.string.enable_kpm_undo_patch) + ) + + val descriptions = mapOf( + KpmPatchOption.FOLLOW_KERNEL to stringResource(R.string.kpm_follow_kernel_description), + KpmPatchOption.PATCH_KPM to stringResource(R.string.kpm_patch_switch_description), + KpmPatchOption.UNDO_PATCH_KPM to stringResource(R.string.kpm_undo_patch_switch_description) + ) + + Column { + options.forEach { (option, label) -> + val interactionSource = remember { MutableInteractionSource() } + Surface( + color = if (option == selectedOption) + MaterialTheme.colorScheme.primaryContainer.copy(alpha = cardAlpha) + else + MaterialTheme.colorScheme.surfaceContainer.copy(alpha = cardAlpha), + shape = MaterialTheme.shapes.medium, + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 2.dp) + .clip(MaterialTheme.shapes.medium) + ) { + Row( + verticalAlignment = Alignment.CenterVertically, + modifier = Modifier + .fillMaxWidth() + .selectable( + selected = option == selectedOption, + onClick = { onOptionChanged(option) }, + role = Role.RadioButton, + indication = LocalIndication.current, + interactionSource = interactionSource + ) + .padding(vertical = 12.dp, horizontal = 12.dp) + ) { + RadioButton( + selected = option == selectedOption, + onClick = null, + interactionSource = interactionSource, + colors = RadioButtonDefaults.colors( + selectedColor = when (option) { + KpmPatchOption.FOLLOW_KERNEL -> MaterialTheme.colorScheme.primary + KpmPatchOption.PATCH_KPM -> MaterialTheme.colorScheme.primary + KpmPatchOption.UNDO_PATCH_KPM -> MaterialTheme.colorScheme.tertiary + }, + unselectedColor = MaterialTheme.colorScheme.onSurfaceVariant + ) + ) + Spacer(modifier = Modifier.width(12.dp)) + Column(modifier = Modifier.weight(1f)) { + Text( + text = label, + style = MaterialTheme.typography.bodyLarge, + color = if (option == selectedOption) + MaterialTheme.colorScheme.onPrimaryContainer + else + MaterialTheme.colorScheme.onSurface + ) + descriptions[option]?.let { description -> + Text( + text = description, + style = MaterialTheme.typography.bodySmall, + color = if (option == selectedOption) + MaterialTheme.colorScheme.onPrimaryContainer.copy(alpha = 0.7f) + else + MaterialTheme.colorScheme.onSurfaceVariant, + modifier = Modifier.padding(top = 2.dp) + ) + } + } + } + } + } + } +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +fun rememberSelectKmiDialog(onSelected: (String?) -> Unit): DialogHandle { + return rememberCustomDialog { dismiss -> + val supportedKmi by produceState(initialValue = emptyList()) { + value = getSupportedKmis() + } + val options = supportedKmi.map { value -> + ListOption( + titleText = value + ) + } + + var selection by remember { mutableStateOf(null) } + + MaterialTheme( + colorScheme = MaterialTheme.colorScheme.copy( + surface = MaterialTheme.colorScheme.surfaceContainerHigh + ) + ) { + ListDialog(state = rememberUseCaseState(visible = true, onFinishedRequest = { + onSelected(selection) + }, onCloseRequest = { + dismiss() + }), header = Header.Default( + title = stringResource(R.string.select_kmi), + ), selection = ListSelection.Single( + showRadioButtons = true, + options = options, + ) { _, option -> + selection = option.titleText + }) + } + } +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun TopBar( + onBack: () -> Unit = {}, + scrollBehavior: TopAppBarScrollBehavior? = null +) { + val colorScheme = MaterialTheme.colorScheme + val cardColor = if (CardConfig.isCustomBackgroundEnabled) { + colorScheme.surfaceContainerLow + } else { + colorScheme.background + } + val cardAlpha = cardAlpha + + TopAppBar( + title = { + Text( + stringResource(R.string.install), + style = MaterialTheme.typography.titleLarge + ) + }, + colors = TopAppBarDefaults.topAppBarColors( + containerColor = cardColor.copy(alpha = cardAlpha), + scrolledContainerColor = cardColor.copy(alpha = cardAlpha) + ), + navigationIcon = { + IconButton(onClick = onBack) { + Icon( + Icons.AutoMirrored.Filled.ArrowBack, + contentDescription = stringResource(R.string.back) + ) + } + }, + windowInsets = WindowInsets.safeDrawing.only( + WindowInsetsSides.Top + WindowInsetsSides.Horizontal + ), + scrollBehavior = scrollBehavior + ) +} + +private fun isKoFile(context: Context, uri: Uri): Boolean { + val seg = uri.lastPathSegment ?: "" + if (seg.endsWith(".ko", ignoreCase = true)) return true + + return try { + context.contentResolver.query( + uri, + arrayOf(OpenableColumns.DISPLAY_NAME), + null, + null, + null + )?.use { cursor -> + val idx = cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME) + if (idx != -1 && cursor.moveToFirst()) { + val name = cursor.getString(idx) + name?.endsWith(".ko", ignoreCase = true) == true + } else { + false + } + } ?: false + } catch (_: Throwable) { + false + } +} + +@Preview +@Composable +fun SelectInstallPreview() { + InstallScreen(EmptyDestinationsNavigator) +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Kpm.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Kpm.kt new file mode 100644 index 0000000..6f36c67 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Kpm.kt @@ -0,0 +1,742 @@ +package com.sukisu.ultra.ui.screen + +import android.content.Context +import android.content.Intent +import android.util.Log +import androidx.activity.compose.rememberLauncherForActivityResult +import androidx.activity.result.contract.ActivityResultContracts +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.foundation.lazy.items +import androidx.compose.foundation.lazy.rememberLazyListState +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.* +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.style.TextAlign +import androidx.compose.ui.unit.dp +import androidx.lifecycle.viewmodel.compose.viewModel +import com.ramcosta.composedestinations.annotation.Destination +import com.ramcosta.composedestinations.annotation.RootGraph +import kotlinx.coroutines.delay +import kotlinx.coroutines.launch +import com.sukisu.ultra.ui.component.* +import com.sukisu.ultra.ui.theme.* +import com.sukisu.ultra.ui.viewmodel.KpmViewModel +import com.sukisu.ultra.ui.util.* +import java.io.File +import androidx.core.content.edit +import com.sukisu.ultra.R +import java.io.FileInputStream +import java.net.* +import android.app.Activity +import androidx.compose.ui.res.painterResource + +/** + * KPM 管理界面 + * 以下内核模块功能由KernelPatch开发,经过修改后加入SukiSU Ultra的内核模块功能 + * 开发者:ShirkNeko, Liaokong + */ +@OptIn(ExperimentalMaterial3Api::class) +@Destination +@Composable +fun KpmScreen( + viewModel: KpmViewModel = viewModel() +) { + val context = LocalContext.current + val scope = rememberCoroutineScope() + val snackBarHost = remember { SnackbarHostState() } + val confirmDialog = rememberConfirmDialog() + + val listState = rememberLazyListState() + val fabVisible by rememberFabVisibilityState(listState) + + val moduleConfirmContentMap = viewModel.moduleList.associate { module -> + val moduleFileName = module.id + module.id to stringResource(R.string.confirm_uninstall_content, moduleFileName) + } + + val scrollBehavior = TopAppBarDefaults.pinnedScrollBehavior(rememberTopAppBarState()) + + val kpmInstallSuccess = stringResource(R.string.kpm_install_success) + val kpmInstallFailed = stringResource(R.string.kpm_install_failed) + val cancel = stringResource(R.string.cancel) + val uninstall = stringResource(R.string.uninstall) + val failedToCheckModuleFile = stringResource(R.string.snackbar_failed_to_check_module_file) + val kpmUninstallSuccess = stringResource(R.string.kpm_uninstall_success) + val kpmUninstallFailed = stringResource(R.string.kpm_uninstall_failed) + val kpmInstallMode = stringResource(R.string.kpm_install_mode) + val kpmInstallModeLoad = stringResource(R.string.kpm_install_mode_load) + val kpmInstallModeEmbed = stringResource(R.string.kpm_install_mode_embed) + val invalidFileTypeMessage = stringResource(R.string.invalid_file_type) + val confirmTitle = stringResource(R.string.confirm_uninstall_title_with_filename) + + var tempFileForInstall by remember { mutableStateOf(null) } + val installModeDialog = rememberCustomDialog { dismiss -> + var moduleName by remember { mutableStateOf(null) } + + LaunchedEffect(tempFileForInstall) { + tempFileForInstall?.let { tempFile -> + try { + val shell = getRootShell() + val command = "strings ${tempFile.absolutePath} | grep 'name='" + val result = shell.newJob().add(command).to(ArrayList(), null).exec() + if (result.isSuccess) { + for (line in result.out) { + if (line.startsWith("name=")) { + moduleName = line.substringAfter("name=").trim() + break + } + } + } + } catch (e: Exception) { + Log.e("KsuCli", "Failed to get module name: ${e.message}", e) + } + } + } + + AlertDialog( + onDismissRequest = { + dismiss() + tempFileForInstall?.delete() + tempFileForInstall = null + }, + title = { + Text( + text = kpmInstallMode, + style = MaterialTheme.typography.headlineSmall, + ) + }, + text = { + Column { + moduleName?.let { + Text( + text = stringResource(R.string.kpm_install_mode_description, it), + style = MaterialTheme.typography.bodyMedium, + ) + } + Spacer(modifier = Modifier.height(16.dp)) + Column( + verticalArrangement = Arrangement.spacedBy(8.dp) + ) { + Button( + onClick = { + scope.launch { + dismiss() + tempFileForInstall?.let { tempFile -> + handleModuleInstall( + tempFile = tempFile, + isEmbed = false, + viewModel = viewModel, + snackBarHost = snackBarHost, + kpmInstallSuccess = kpmInstallSuccess, + kpmInstallFailed = kpmInstallFailed + ) + } + tempFileForInstall = null + } + }, + modifier = Modifier.fillMaxWidth(), + ) { + Icon( + imageVector = Icons.Filled.Download, + contentDescription = null, + modifier = Modifier.size(18.dp).padding(end = 4.dp) + ) + Text(kpmInstallModeLoad) + } + + Button( + onClick = { + scope.launch { + dismiss() + tempFileForInstall?.let { tempFile -> + handleModuleInstall( + tempFile = tempFile, + isEmbed = true, + viewModel = viewModel, + snackBarHost = snackBarHost, + kpmInstallSuccess = kpmInstallSuccess, + kpmInstallFailed = kpmInstallFailed + ) + } + tempFileForInstall = null + } + }, + modifier = Modifier.fillMaxWidth(), + ) { + Icon( + imageVector = Icons.Filled.Inventory, + contentDescription = null, + modifier = Modifier.size(18.dp).padding(end = 4.dp) + ) + Text(kpmInstallModeEmbed) + } + } + } + }, + confirmButton = { + }, + dismissButton = { + Column( + modifier = Modifier.fillMaxWidth(), + horizontalAlignment = Alignment.CenterHorizontally + ) { + Spacer(modifier = Modifier.height(16.dp)) + TextButton( + onClick = { + dismiss() + tempFileForInstall?.delete() + tempFileForInstall = null + } + ) { + Text(cancel) + } + } + }, + shape = MaterialTheme.shapes.extraLarge + ) + } + + val selectPatchLauncher = rememberLauncherForActivityResult( + contract = ActivityResultContracts.StartActivityForResult() + ) { result -> + if (result.resultCode != Activity.RESULT_OK) return@rememberLauncherForActivityResult + + val uri = result.data?.data ?: return@rememberLauncherForActivityResult + + scope.launch { + val fileName = uri.lastPathSegment ?: "unknown.kpm" + val encodedFileName = URLEncoder.encode(fileName, "UTF-8") + val tempFile = File(context.cacheDir, encodedFileName) + + context.contentResolver.openInputStream(uri)?.use { input -> + tempFile.outputStream().use { output -> + input.copyTo(output) + } + } + + val mimeType = context.contentResolver.getType(uri) + val isCorrectMimeType = mimeType == null || mimeType.contains("application/octet-stream") + + if (!isCorrectMimeType) { + var shouldShowSnackbar = true + try { + val matchCount = checkStringsCommand(tempFile) + val isElf = isElfFile(tempFile) + + if (matchCount >= 1 || isElf) { + shouldShowSnackbar = false + } + } catch (e: Exception) { + Log.e("KsuCli", "Failed to execute checks: ${e.message}", e) + } + if (shouldShowSnackbar) { + snackBarHost.showSnackbar( + message = invalidFileTypeMessage, + duration = SnackbarDuration.Short + ) + } + tempFile.delete() + return@launch + } + tempFileForInstall = tempFile + installModeDialog.show() + } + } + + LaunchedEffect(Unit) { + while(true) { + viewModel.fetchModuleList() + delay(5000) + } + } + + val sharedPreferences = context.getSharedPreferences("app_preferences", Context.MODE_PRIVATE) + var isNoticeClosed by remember { mutableStateOf(sharedPreferences.getBoolean("is_notice_closed", false)) } + + Scaffold( + topBar = { + SearchAppBar( + title = { Text(stringResource(R.string.kpm_title)) }, + searchText = viewModel.search, + onSearchTextChange = { viewModel.search = it }, + onClearClick = { viewModel.search = "" }, + scrollBehavior = scrollBehavior, + dropdownContent = { + IconButton( + onClick = { viewModel.fetchModuleList() } + ) { + Icon( + imageVector = Icons.Filled.Refresh, + contentDescription = stringResource(R.string.refresh), + ) + } + } + ) + }, + floatingActionButton = { + AnimatedFab(visible = fabVisible) { + FloatingActionButton( + contentColor = MaterialTheme.colorScheme.onPrimary, + containerColor = MaterialTheme.colorScheme.primary, + onClick = { + selectPatchLauncher.launch( + Intent(Intent.ACTION_GET_CONTENT).apply { + type = "application/octet-stream" + } + ) + }, + content = { + Icon( + painter = painterResource(id = R.drawable.package_import), + contentDescription = null + ) + } + ) + } + }, + contentWindowInsets = WindowInsets.safeDrawing.only( + WindowInsetsSides.Top + WindowInsetsSides.Horizontal + ), + snackbarHost = { SnackbarHost(snackBarHost) } + ) { padding -> + Column(modifier = Modifier.padding(padding)) { + if (!isNoticeClosed) { + Card( + modifier = Modifier + .fillMaxWidth() + .padding(16.dp) + .clip(MaterialTheme.shapes.medium) + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(16.dp), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + imageVector = Icons.Filled.Info, + contentDescription = null, + modifier = Modifier + .padding(end = 16.dp) + .size(24.dp) + ) + + Text( + text = stringResource(R.string.kernel_module_notice), + modifier = Modifier.weight(1f), + style = MaterialTheme.typography.bodyMedium, + ) + + IconButton( + onClick = { + isNoticeClosed = true + sharedPreferences.edit { putBoolean("is_notice_closed", true) } + }, + modifier = Modifier.size(24.dp), + ) { + Icon( + imageVector = Icons.Filled.Close, + contentDescription = stringResource(R.string.close_notice) + ) + } + } + } + } + + if (viewModel.moduleList.isEmpty()) { + Box( + modifier = Modifier.fillMaxSize(), + contentAlignment = Alignment.Center + ) { + Column( + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.Center + ) { + Icon( + imageVector = Icons.Filled.Code, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary.copy(alpha = 0.6f), + modifier = Modifier + .size(96.dp) + .padding(bottom = 16.dp) + ) + Text( + stringResource(R.string.kpm_empty), + textAlign = TextAlign.Center, + style = MaterialTheme.typography.bodyLarge, + ) + } + } + } else { + LazyColumn( + state = listState, + modifier = Modifier.fillMaxSize(), + contentPadding = PaddingValues(horizontal = 16.dp, vertical = 16.dp), + verticalArrangement = Arrangement.spacedBy(16.dp) + ) { + items(viewModel.moduleList) { module -> + KpmModuleItem( + module = module, + onUninstall = { + scope.launch { + val confirmContent = moduleConfirmContentMap[module.id] ?: "" + handleModuleUninstall( + module = module, + viewModel = viewModel, + snackBarHost = snackBarHost, + kpmUninstallSuccess = kpmUninstallSuccess, + kpmUninstallFailed = kpmUninstallFailed, + failedToCheckModuleFile = failedToCheckModuleFile, + uninstall = uninstall, + cancel = cancel, + confirmDialog = confirmDialog, + confirmTitle = confirmTitle, + confirmContent = confirmContent + ) + } + }, + onControl = { + viewModel.loadModuleDetail(module.id) + } + ) + } + } + } + } + } +} + +private suspend fun handleModuleInstall( + tempFile: File, + isEmbed: Boolean, + viewModel: KpmViewModel, + snackBarHost: SnackbarHostState, + kpmInstallSuccess: String, + kpmInstallFailed: String +) { + var moduleId: String? = null + try { + val shell = getRootShell() + val command = "strings ${tempFile.absolutePath} | grep 'name='" + val result = shell.newJob().add(command).to(ArrayList(), null).exec() + if (result.isSuccess) { + for (line in result.out) { + if (line.startsWith("name=")) { + moduleId = line.substringAfter("name=").trim() + break + } + } + } + } catch (e: Exception) { + Log.e("KsuCli", "Failed to get module ID from strings command: ${e.message}", e) + } + + if (moduleId == null || moduleId.isEmpty()) { + Log.e("KsuCli", "Failed to extract module ID from file: ${tempFile.name}") + snackBarHost.showSnackbar( + message = kpmInstallFailed, + duration = SnackbarDuration.Short + ) + tempFile.delete() + return + } + + val targetPath = "/data/adb/kpm/$moduleId.kpm" + + try { + if (isEmbed) { + val shell = getRootShell() + shell.newJob().add("mkdir -p /data/adb/kpm").exec() + shell.newJob().add("cp ${tempFile.absolutePath} $targetPath").exec() + } + + val loadResult = loadKpmModule(tempFile.absolutePath) + if (loadResult.startsWith("Error")) { + Log.e("KsuCli", "Failed to load KPM module: $loadResult") + snackBarHost.showSnackbar( + message = kpmInstallFailed, + duration = SnackbarDuration.Short + ) + } else { + viewModel.fetchModuleList() + snackBarHost.showSnackbar( + message = kpmInstallSuccess, + duration = SnackbarDuration.Short + ) + } + } catch (e: Exception) { + Log.e("KsuCli", "Failed to load KPM module: ${e.message}", e) + snackBarHost.showSnackbar( + message = kpmInstallFailed, + duration = SnackbarDuration.Short + ) + } + tempFile.delete() +} + +private suspend fun handleModuleUninstall( + module: KpmViewModel.ModuleInfo, + viewModel: KpmViewModel, + snackBarHost: SnackbarHostState, + kpmUninstallSuccess: String, + kpmUninstallFailed: String, + failedToCheckModuleFile: String, + uninstall: String, + cancel: String, + confirmTitle : String, + confirmContent : String, + confirmDialog: ConfirmDialogHandle +) { + val moduleFileName = "${module.id}.kpm" + val moduleFilePath = "/data/adb/kpm/$moduleFileName" + + val fileExists = try { + val shell = getRootShell() + val result = shell.newJob().add("ls /data/adb/kpm/$moduleFileName").exec() + result.isSuccess + } catch (e: Exception) { + Log.e("KsuCli", "Failed to check module file existence: ${e.message}", e) + snackBarHost.showSnackbar( + message = failedToCheckModuleFile, + duration = SnackbarDuration.Short + ) + false + } + + val confirmResult = confirmDialog.awaitConfirm( + title = confirmTitle, + content = confirmContent, + confirm = uninstall, + dismiss = cancel + ) + + if (confirmResult == ConfirmResult.Confirmed) { + try { + val unloadResult = unloadKpmModule(module.id) + if (unloadResult.startsWith("Error")) { + Log.e("KsuCli", "Failed to unload KPM module: $unloadResult") + snackBarHost.showSnackbar( + message = kpmUninstallFailed, + duration = SnackbarDuration.Short + ) + return + } + + if (fileExists) { + val shell = getRootShell() + shell.newJob().add("rm $moduleFilePath").exec() + } + + viewModel.fetchModuleList() + snackBarHost.showSnackbar( + message = kpmUninstallSuccess, + duration = SnackbarDuration.Short + ) + } catch (e: Exception) { + Log.e("KsuCli", "Failed to unload KPM module: ${e.message}", e) + snackBarHost.showSnackbar( + message = kpmUninstallFailed, + duration = SnackbarDuration.Short + ) + } + } +} + +@Composable +private fun KpmModuleItem( + module: KpmViewModel.ModuleInfo, + onUninstall: () -> Unit, + onControl: () -> Unit +) { + val viewModel: KpmViewModel = viewModel() + val scope = rememberCoroutineScope() + val snackBarHost = remember { SnackbarHostState() } + val successMessage = stringResource(R.string.kpm_control_success) + val failureMessage = stringResource(R.string.kpm_control_failed) + + if (viewModel.showInputDialog && viewModel.selectedModuleId == module.id) { + AlertDialog( + onDismissRequest = { viewModel.hideInputDialog() }, + title = { + Text( + text = stringResource(R.string.kpm_control), + style = MaterialTheme.typography.headlineSmall, + ) + }, + text = { + OutlinedTextField( + value = viewModel.inputArgs, + onValueChange = { viewModel.updateInputArgs(it) }, + label = { + Text( + text = stringResource(R.string.kpm_args), + ) + }, + placeholder = { + Text( + text = module.args, + ) + }, + modifier = Modifier.fillMaxWidth(), + ) + }, + confirmButton = { + TextButton( + onClick = { + scope.launch { + val result = viewModel.executeControl() + val message = when (result) { + 0 -> successMessage + else -> failureMessage + } + snackBarHost.showSnackbar(message) + onControl() + } + } + ) { + Text( + text = stringResource(R.string.confirm), + ) + } + }, + dismissButton = { + TextButton(onClick = { viewModel.hideInputDialog() }) { + Text( + text = stringResource(R.string.cancel), + ) + } + }, + shape = MaterialTheme.shapes.extraLarge + ) + } + + Card( + colors = getCardColors(MaterialTheme.colorScheme.surfaceContainerHigh), + elevation = getCardElevation() + ) { + Column( + modifier = Modifier.padding(20.dp) + ) { + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Column(modifier = Modifier.weight(1f)) { + Text( + text = module.name, + style = MaterialTheme.typography.titleLarge, + ) + + Spacer(modifier = Modifier.height(4.dp)) + + Text( + text = "${stringResource(R.string.kpm_version)}: ${module.version}", + style = MaterialTheme.typography.bodyMedium, + ) + + Text( + text = "${stringResource(R.string.kpm_author)}: ${module.author}", + style = MaterialTheme.typography.bodyMedium, + ) + + Text( + text = "${stringResource(R.string.kpm_args)}: ${module.args}", + style = MaterialTheme.typography.bodyMedium, + ) + } + } + + Spacer(modifier = Modifier.height(12.dp)) + + Text( + text = module.description, + style = MaterialTheme.typography.bodyLarge, + ) + + Spacer(modifier = Modifier.height(20.dp)) + + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.spacedBy(8.dp) + ) { + Button( + onClick = { viewModel.showInputDialog(module.id) }, + enabled = module.hasAction, + modifier = Modifier.weight(1f), + ) { + Icon( + imageVector = Icons.Filled.Settings, + contentDescription = null, + modifier = Modifier.size(20.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text(stringResource(R.string.kpm_control)) + } + + Button( + onClick = onUninstall, + modifier = Modifier.weight(1f), + colors = ButtonDefaults.buttonColors( + containerColor = MaterialTheme.colorScheme.error + ) + ) { + Icon( + imageVector = Icons.Filled.Delete, + contentDescription = null, + modifier = Modifier.size(20.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text(stringResource(R.string.kpm_uninstall)) + } + } + } + } +} + +private fun checkStringsCommand(tempFile: File): Int { + val shell = getRootShell() + val command = "strings ${tempFile.absolutePath} | grep -E 'name=|version=|license=|author='" + val result = shell.newJob().add(command).to(ArrayList(), null).exec() + + if (!result.isSuccess) { + return 0 + } + + var matchCount = 0 + val keywords = listOf("name=", "version=", "license=", "author=") + var nameExists = false + + for (line in result.out) { + if (!nameExists && line.startsWith("name=")) { + nameExists = true + matchCount++ + } else if (nameExists) { + for (keyword in keywords) { + if (line.startsWith(keyword)) { + matchCount++ + break + } + } + } + } + + return if (nameExists) matchCount else 0 +} + +private fun isElfFile(tempFile: File): Boolean { + val elfMagic = byteArrayOf(0x7F, 'E'.code.toByte(), 'L'.code.toByte(), 'F'.code.toByte()) + val fileBytes = ByteArray(4) + FileInputStream(tempFile).use { input -> + input.read(fileBytes) + } + return fileBytes.contentEquals(elfMagic) +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/screen/LogViewerScreen.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/LogViewerScreen.kt new file mode 100644 index 0000000..929a8b2 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/LogViewerScreen.kt @@ -0,0 +1,941 @@ +package com.sukisu.ultra.ui.screen + +import android.content.Context +import androidx.compose.animation.* +import androidx.compose.foundation.background +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.foundation.lazy.LazyRow +import androidx.compose.foundation.lazy.items +import androidx.compose.foundation.lazy.rememberLazyListState +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.filled.ArrowBack +import androidx.compose.material.icons.filled.* +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.runtime.saveable.rememberSaveable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.input.nestedscroll.nestedScroll +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.font.FontFamily +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.text.style.TextOverflow +import androidx.compose.ui.unit.dp +import com.ramcosta.composedestinations.annotation.Destination +import com.ramcosta.composedestinations.annotation.RootGraph +import com.ramcosta.composedestinations.navigation.DestinationsNavigator +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.component.* +import com.sukisu.ultra.ui.theme.CardConfig +import com.sukisu.ultra.ui.theme.CardConfig.cardAlpha +import com.sukisu.ultra.ui.theme.getCardColors +import com.sukisu.ultra.ui.theme.getCardElevation +import com.sukisu.ultra.ui.util.* +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.delay +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext +import java.time.* +import java.time.format.DateTimeFormatter +import android.os.Process.myUid +import androidx.core.content.edit + +private val SPACING_SMALL = 4.dp +private val SPACING_MEDIUM = 8.dp +private val SPACING_LARGE = 16.dp + +private const val PAGE_SIZE = 10000 +private const val MAX_TOTAL_LOGS = 100000 + +private const val LOGS_PATCH = "/data/adb/ksu/log/sulog.log" + +data class LogEntry( + val timestamp: String, + val type: LogType, + val uid: String, + val comm: String, + val details: String, + val pid: String, + val rawLine: String +) + +data class LogPageInfo( + val currentPage: Int = 0, + val totalPages: Int = 0, + val totalLogs: Int = 0, + val hasMore: Boolean = false +) + +enum class LogType(val displayName: String, val color: Color) { + SU_GRANT("SU_GRANT", Color(0xFF4CAF50)), + SU_EXEC("SU_EXEC", Color(0xFF2196F3)), + PERM_CHECK("PERM_CHECK", Color(0xFFFF9800)), + SYSCALL("SYSCALL", Color(0xFF00BCD4)), + MANAGER_OP("MANAGER_OP", Color(0xFF9C27B0)), + UNKNOWN("UNKNOWN", Color(0xFF757575)) +} + +enum class LogExclType(val displayName: String, val color: Color) { + CURRENT_APP("Current app", Color(0xFF9E9E9E)), + PRCTL_STAR("prctl_*", Color(0xFF00BCD4)), + PRCTL_UNKNOWN("prctl_unknown", Color(0xFF00BCD4)), + SETUID("setuid", Color(0xFF00BCD4)) +} + +private val utcFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss") +private val localFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss") + +private fun saveExcludedSubTypes(context: Context, types: Set) { + val prefs = context.getSharedPreferences("sulog", Context.MODE_PRIVATE) + val nameSet = types.map { it.name }.toSet() + prefs.edit { putStringSet("excluded_subtypes", nameSet) } +} + +private fun loadExcludedSubTypes(context: Context): Set { + val prefs = context.getSharedPreferences("sulog", Context.MODE_PRIVATE) + val nameSet = prefs.getStringSet("excluded_subtypes", emptySet()) ?: emptySet() + return nameSet.mapNotNull { name -> + LogExclType.entries.firstOrNull { it.name == name } + }.toSet() +} + +@OptIn(ExperimentalMaterial3Api::class) +@Destination +@Composable +fun LogViewerScreen(navigator: DestinationsNavigator) { + val scrollBehavior = TopAppBarDefaults.pinnedScrollBehavior(rememberTopAppBarState()) + val snackBarHost = LocalSnackbarHost.current + val context = LocalContext.current + val scope = rememberCoroutineScope() + + var logEntries by remember { mutableStateOf>(emptyList()) } + var isLoading by remember { mutableStateOf(false) } + var filterType by rememberSaveable { mutableStateOf(null) } + var searchQuery by rememberSaveable { mutableStateOf("") } + var showSearchBar by rememberSaveable { mutableStateOf(false) } + var pageInfo by remember { mutableStateOf(LogPageInfo()) } + var lastLogFileHash by remember { mutableStateOf("") } + val currentUid = remember { myUid().toString() } + + val initialExcluded = remember { + loadExcludedSubTypes(context) + } + + var excludedSubTypes by rememberSaveable { mutableStateOf(initialExcluded) } + + LaunchedEffect(excludedSubTypes) { + saveExcludedSubTypes(context, excludedSubTypes) + } + + val filteredEntries = remember( + logEntries, filterType, searchQuery, excludedSubTypes + ) { + logEntries.filter { entry -> + val matchesSearch = searchQuery.isEmpty() || + entry.comm.contains(searchQuery, ignoreCase = true) || + entry.details.contains(searchQuery, ignoreCase = true) || + entry.uid.contains(searchQuery, ignoreCase = true) + + // 排除本应用 + if (LogExclType.CURRENT_APP in excludedSubTypes && entry.uid == currentUid) return@filter false + + // 排除 SYSCALL 子类型 + if (entry.type == LogType.SYSCALL) { + val detail = entry.details + if (LogExclType.PRCTL_STAR in excludedSubTypes && detail.startsWith("Syscall: prctl") && !detail.startsWith("Syscall: prctl_unknown")) return@filter false + if (LogExclType.PRCTL_UNKNOWN in excludedSubTypes && detail.startsWith("Syscall: prctl_unknown")) return@filter false + if (LogExclType.SETUID in excludedSubTypes && detail.startsWith("Syscall: setuid")) return@filter false + } + + // 普通类型筛选 + val matchesFilter = filterType == null || entry.type == filterType + matchesFilter && matchesSearch + } + } + + val loadingDialog = rememberLoadingDialog() + val confirmDialog = rememberConfirmDialog() + + val loadPage: (Int, Boolean) -> Unit = { page, forceRefresh -> + scope.launch { + if (isLoading) return@launch + + isLoading = true + try { + loadLogsWithPagination( + page, + forceRefresh, + lastLogFileHash + ) { entries, newPageInfo, newHash -> + logEntries = if (page == 0 || forceRefresh) { + entries + } else { + logEntries + entries + } + pageInfo = newPageInfo + lastLogFileHash = newHash + } + } finally { + isLoading = false + } + } + } + + val onManualRefresh: () -> Unit = { + loadPage(0, true) + } + + val loadNextPage: () -> Unit = { + if (pageInfo.hasMore && !isLoading) { + loadPage(pageInfo.currentPage + 1, false) + } + } + + LaunchedEffect(Unit) { + while (true) { + delay(5_000) + if (!isLoading) { + scope.launch { + val hasNewLogs = checkForNewLogs(lastLogFileHash) + if (hasNewLogs) { + loadPage(0, true) + } + } + } + } + } + + LaunchedEffect(Unit) { + loadPage(0, true) + } + + Scaffold( + topBar = { + LogViewerTopBar( + scrollBehavior = scrollBehavior, + onBackClick = { navigator.navigateUp() }, + showSearchBar = showSearchBar, + searchQuery = searchQuery, + onSearchQueryChange = { searchQuery = it }, + onSearchToggle = { showSearchBar = !showSearchBar }, + onRefresh = onManualRefresh, + onClearLogs = { + scope.launch { + val result = confirmDialog.awaitConfirm( + title = context.getString(R.string.log_viewer_clear_logs), + content = context.getString(R.string.log_viewer_clear_logs_confirm) + ) + if (result == ConfirmResult.Confirmed) { + loadingDialog.withLoading { + clearLogs() + loadPage(0, true) + } + snackBarHost.showSnackbar(context.getString(R.string.log_viewer_logs_cleared)) + } + } + } + ) + }, + snackbarHost = { SnackbarHost(snackBarHost) }, + contentWindowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal) + ) { paddingValues -> + Column( + modifier = Modifier + .padding(paddingValues) + .nestedScroll(scrollBehavior.nestedScrollConnection) + ) { + LogControlPanel( + filterType = filterType, + onFilterTypeSelected = { filterType = it }, + logCount = filteredEntries.size, + totalCount = logEntries.size, + pageInfo = pageInfo, + excludedSubTypes = excludedSubTypes, + onExcludeToggle = { excl -> + excludedSubTypes = if (excl in excludedSubTypes) + excludedSubTypes - excl + else + excludedSubTypes + excl + } + ) + + // 日志列表 + if (isLoading && logEntries.isEmpty()) { + Box( + modifier = Modifier.fillMaxSize(), + contentAlignment = Alignment.Center + ) { + CircularProgressIndicator() + } + } else if (filteredEntries.isEmpty()) { + EmptyLogState( + hasLogs = logEntries.isNotEmpty(), + onRefresh = onManualRefresh + ) + } else { + LogList( + entries = filteredEntries, + pageInfo = pageInfo, + isLoading = isLoading, + onLoadMore = loadNextPage, + modifier = Modifier.fillMaxSize() + ) + } + } + } +} + +@Composable +private fun LogControlPanel( + filterType: LogType?, + onFilterTypeSelected: (LogType?) -> Unit, + logCount: Int, + totalCount: Int, + pageInfo: LogPageInfo, + excludedSubTypes: Set, + onExcludeToggle: (LogExclType) -> Unit +) { + var isExpanded by rememberSaveable { mutableStateOf(true) } + + Card( + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = SPACING_LARGE, vertical = SPACING_MEDIUM), + colors = getCardColors(MaterialTheme.colorScheme.surfaceContainerLow), + elevation = getCardElevation() + ) { + Column { + // 标题栏(点击展开/收起) + Row( + modifier = Modifier + .fillMaxWidth() + .clickable { isExpanded = !isExpanded } + .padding(SPACING_LARGE), + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.SpaceBetween + ) { + Text( + text = stringResource(R.string.settings), + style = MaterialTheme.typography.titleMedium, + color = MaterialTheme.colorScheme.primary + ) + Icon( + imageVector = if (isExpanded) Icons.Filled.ExpandLess else Icons.Filled.ExpandMore, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary + ) + } + + AnimatedVisibility( + visible = isExpanded, + enter = expandVertically() + fadeIn(), + exit = shrinkVertically() + fadeOut() + ) { + Column( + modifier = Modifier.padding(horizontal = SPACING_LARGE) + ) { + // 类型过滤 + Text( + text = stringResource(R.string.log_viewer_filter_type), + style = MaterialTheme.typography.titleSmall, + color = MaterialTheme.colorScheme.primary + ) + Spacer(modifier = Modifier.height(SPACING_MEDIUM)) + LazyRow(horizontalArrangement = Arrangement.spacedBy(SPACING_MEDIUM)) { + item { + FilterChip( + onClick = { onFilterTypeSelected(null) }, + label = { Text(stringResource(R.string.log_viewer_all_types)) }, + selected = filterType == null + ) + } + items(LogType.entries.toTypedArray()) { type -> + FilterChip( + onClick = { onFilterTypeSelected(if (filterType == type) null else type) }, + label = { Text(type.displayName) }, + selected = filterType == type, + leadingIcon = { + Box( + modifier = Modifier + .size(8.dp) + .background(type.color, RoundedCornerShape(4.dp)) + ) + } + ) + } + } + + Spacer(modifier = Modifier.height(SPACING_MEDIUM)) + + // 排除子类型 + Text( + text = stringResource(R.string.log_viewer_exclude_subtypes), + style = MaterialTheme.typography.titleSmall, + color = MaterialTheme.colorScheme.primary + ) + Spacer(modifier = Modifier.height(SPACING_MEDIUM)) + LazyRow(horizontalArrangement = Arrangement.spacedBy(SPACING_MEDIUM)) { + items(LogExclType.entries.toTypedArray()) { excl -> + val label = if (excl == LogExclType.CURRENT_APP) + stringResource(R.string.log_viewer_exclude_current_app) + else excl.displayName + + FilterChip( + onClick = { onExcludeToggle(excl) }, + label = { Text(label) }, + selected = excl in excludedSubTypes, + leadingIcon = { + Box( + modifier = Modifier + .size(8.dp) + .background(excl.color, RoundedCornerShape(4.dp)) + ) + } + ) + } + } + + Spacer(modifier = Modifier.height(SPACING_MEDIUM)) + + // 统计信息 + Column(verticalArrangement = Arrangement.spacedBy(SPACING_SMALL)) { + Text( + text = stringResource(R.string.log_viewer_showing_entries, logCount, totalCount), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + if (pageInfo.totalPages > 0) { + Text( + text = stringResource( + R.string.log_viewer_page_info, + pageInfo.currentPage + 1, + pageInfo.totalPages, + pageInfo.totalLogs + ), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + if (pageInfo.totalLogs >= MAX_TOTAL_LOGS) { + Text( + text = stringResource(R.string.log_viewer_too_many_logs, MAX_TOTAL_LOGS), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.error + ) + } + } + + Spacer(modifier = Modifier.height(SPACING_LARGE)) + } + } + } + } +} + +@Composable +private fun LogList( + entries: List, + pageInfo: LogPageInfo, + isLoading: Boolean, + onLoadMore: () -> Unit, + modifier: Modifier = Modifier +) { + val listState = rememberLazyListState() + + LazyColumn( + state = listState, + modifier = modifier, + contentPadding = PaddingValues(horizontal = SPACING_LARGE, vertical = SPACING_MEDIUM), + verticalArrangement = Arrangement.spacedBy(SPACING_SMALL) + ) { + items(entries) { entry -> + LogEntryCard(entry = entry) + } + + // 加载更多按钮或加载指示器 + if (pageInfo.hasMore) { + item { + Box( + modifier = Modifier + .fillMaxWidth() + .padding(SPACING_LARGE), + contentAlignment = Alignment.Center + ) { + if (isLoading) { + CircularProgressIndicator( + modifier = Modifier.size(24.dp) + ) + } else { + Button( + onClick = onLoadMore, + modifier = Modifier.fillMaxWidth() + ) { + Icon( + imageVector = Icons.Filled.ExpandMore, + contentDescription = null, + modifier = Modifier.size(18.dp) + ) + Spacer(modifier = Modifier.width(SPACING_MEDIUM)) + Text(stringResource(R.string.log_viewer_load_more)) + } + } + } + } + } else if (entries.isNotEmpty()) { + item { + Box( + modifier = Modifier + .fillMaxWidth() + .padding(SPACING_LARGE), + contentAlignment = Alignment.Center + ) { + Text( + text = stringResource(R.string.log_viewer_all_logs_loaded), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + } + } + } +} + +@Composable +private fun LogEntryCard(entry: LogEntry) { + var expanded by remember { mutableStateOf(false) } + + Card( + modifier = Modifier + .fillMaxWidth() + .clickable { expanded = !expanded }, + colors = getCardColors(MaterialTheme.colorScheme.surfaceContainerLow), + elevation = CardDefaults.cardElevation(defaultElevation = 0.dp) + ) { + Column( + modifier = Modifier.padding(SPACING_MEDIUM) + ) { + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Row( + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.spacedBy(SPACING_MEDIUM) + ) { + Box( + modifier = Modifier + .size(12.dp) + .background(entry.type.color, RoundedCornerShape(6.dp)) + ) + Text( + text = entry.type.displayName, + style = MaterialTheme.typography.labelMedium, + fontWeight = FontWeight.Bold + ) + } + Text( + text = entry.timestamp, + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + + Spacer(modifier = Modifier.height(SPACING_SMALL)) + + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceBetween + ) { + Text( + text = "UID: ${entry.uid}", + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + Text( + text = "PID: ${entry.pid}", + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + + Text( + text = entry.comm, + style = MaterialTheme.typography.bodyMedium, + fontWeight = FontWeight.Medium, + maxLines = if (expanded) Int.MAX_VALUE else 1, + overflow = TextOverflow.Ellipsis + ) + + if (entry.details.isNotEmpty()) { + Spacer(modifier = Modifier.height(SPACING_SMALL)) + Text( + text = entry.details, + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant, + maxLines = if (expanded) Int.MAX_VALUE else 2, + overflow = TextOverflow.Ellipsis + ) + } + + AnimatedVisibility( + visible = expanded, + enter = fadeIn() + expandVertically(), + exit = fadeOut() + shrinkVertically() + ) { + Column { + Spacer(modifier = Modifier.height(SPACING_MEDIUM)) + HorizontalDivider(color = MaterialTheme.colorScheme.outlineVariant) + Spacer(modifier = Modifier.height(SPACING_MEDIUM)) + Text( + text = stringResource(R.string.log_viewer_raw_log), + style = MaterialTheme.typography.labelMedium, + color = MaterialTheme.colorScheme.primary + ) + Spacer(modifier = Modifier.height(SPACING_SMALL)) + Text( + text = entry.rawLine, + style = MaterialTheme.typography.bodySmall, + fontFamily = FontFamily.Monospace, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + } + } + } +} + +@Composable +private fun EmptyLogState( + hasLogs: Boolean, + onRefresh: () -> Unit +) { + Box( + modifier = Modifier.fillMaxSize(), + contentAlignment = Alignment.Center + ) { + Column( + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.spacedBy(SPACING_LARGE) + ) { + Icon( + imageVector = if (hasLogs) Icons.Filled.FilterList else Icons.Filled.Description, + contentDescription = null, + modifier = Modifier.size(64.dp), + tint = MaterialTheme.colorScheme.onSurfaceVariant + ) + Text( + text = stringResource( + if (hasLogs) R.string.log_viewer_no_matching_logs + else R.string.log_viewer_no_logs + ), + style = MaterialTheme.typography.titleMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + Button(onClick = onRefresh) { + Icon( + imageVector = Icons.Filled.Refresh, + contentDescription = null, + modifier = Modifier.size(18.dp) + ) + Spacer(modifier = Modifier.width(SPACING_MEDIUM)) + Text(stringResource(R.string.log_viewer_refresh)) + } + } + } +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun LogViewerTopBar( + scrollBehavior: TopAppBarScrollBehavior? = null, + onBackClick: () -> Unit, + showSearchBar: Boolean, + searchQuery: String, + onSearchQueryChange: (String) -> Unit, + onSearchToggle: () -> Unit, + onRefresh: () -> Unit, + onClearLogs: () -> Unit +) { + val colorScheme = MaterialTheme.colorScheme + val cardColor = if (CardConfig.isCustomBackgroundEnabled) { + colorScheme.surfaceContainerLow + } else { + colorScheme.background + } + + Column { + TopAppBar( + title = { + Text( + text = stringResource(R.string.log_viewer_title), + style = MaterialTheme.typography.titleLarge + ) + }, + navigationIcon = { + IconButton(onClick = onBackClick) { + Icon( + imageVector = Icons.AutoMirrored.Filled.ArrowBack, + contentDescription = stringResource(R.string.log_viewer_back) + ) + } + }, + actions = { + IconButton(onClick = onSearchToggle) { + Icon( + imageVector = if (showSearchBar) Icons.Filled.SearchOff else Icons.Filled.Search, + contentDescription = stringResource(R.string.log_viewer_search) + ) + } + IconButton(onClick = onRefresh) { + Icon( + imageVector = Icons.Filled.Refresh, + contentDescription = stringResource(R.string.log_viewer_refresh) + ) + } + IconButton(onClick = onClearLogs) { + Icon( + imageVector = Icons.Filled.DeleteSweep, + contentDescription = stringResource(R.string.log_viewer_clear_logs) + ) + } + }, + colors = TopAppBarDefaults.topAppBarColors( + containerColor = cardColor.copy(alpha = cardAlpha), + scrolledContainerColor = cardColor.copy(alpha = cardAlpha) + ), + windowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal), + scrollBehavior = scrollBehavior + ) + + AnimatedVisibility( + visible = showSearchBar, + enter = fadeIn() + expandVertically(), + exit = fadeOut() + shrinkVertically() + ) { + OutlinedTextField( + value = searchQuery, + onValueChange = onSearchQueryChange, + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = SPACING_LARGE, vertical = SPACING_MEDIUM), + placeholder = { Text(stringResource(R.string.log_viewer_search_placeholder)) }, + leadingIcon = { + Icon( + imageVector = Icons.Filled.Search, + contentDescription = null + ) + }, + trailingIcon = { + if (searchQuery.isNotEmpty()) { + IconButton(onClick = { onSearchQueryChange("") }) { + Icon( + imageVector = Icons.Filled.Clear, + contentDescription = stringResource(R.string.log_viewer_clear_search) + ) + } + } + }, + singleLine = true + ) + } + } +} + +private suspend fun checkForNewLogs( + lastHash: String +): Boolean { + return withContext(Dispatchers.IO) { + try { + val shell = getRootShell() + val logPath = "/data/adb/ksu/log/sulog.log" + + val result = runCmd(shell, "stat -c '%Y %s' $logPath 2>/dev/null || echo '0 0'") + val currentHash = result.trim() + + currentHash != lastHash && currentHash != "0 0" + } catch (_: Exception) { + false + } + } +} + +private suspend fun loadLogsWithPagination( + page: Int, + forceRefresh: Boolean, + lastHash: String, + onLoaded: (List, LogPageInfo, String) -> Unit +) { + withContext(Dispatchers.IO) { + try { + val shell = getRootShell() + + // 获取文件信息 + val statResult = runCmd(shell, "stat -c '%Y %s' $LOGS_PATCH 2>/dev/null || echo '0 0'") + val currentHash = statResult.trim() + + if (!forceRefresh && currentHash == lastHash && currentHash != "0 0") { + withContext(Dispatchers.Main) { + onLoaded(emptyList(), LogPageInfo(), currentHash) + } + return@withContext + } + + // 获取总行数 + val totalLinesResult = runCmd(shell, "wc -l < $LOGS_PATCH 2>/dev/null || echo '0'") + val totalLines = totalLinesResult.trim().toIntOrNull() ?: 0 + + if (totalLines == 0) { + withContext(Dispatchers.Main) { + onLoaded(emptyList(), LogPageInfo(), currentHash) + } + return@withContext + } + + // 限制最大日志数量 + val effectiveTotal = minOf(totalLines, MAX_TOTAL_LOGS) + val totalPages = (effectiveTotal + PAGE_SIZE - 1) / PAGE_SIZE + + // 计算要读取的行数范围 + val startLine = if (page == 0) { + maxOf(1, totalLines - effectiveTotal + 1) + } else { + val skipLines = page * PAGE_SIZE + maxOf(1, totalLines - effectiveTotal + 1 + skipLines) + } + + val endLine = minOf(startLine + PAGE_SIZE - 1, totalLines) + + if (startLine > totalLines) { + withContext(Dispatchers.Main) { + onLoaded(emptyList(), LogPageInfo(page, totalPages, effectiveTotal, false), currentHash) + } + return@withContext + } + + val result = runCmd(shell, "sed -n '${startLine},${endLine}p' $LOGS_PATCH 2>/dev/null || echo ''") + val entries = parseLogEntries(result) + + val hasMore = endLine < totalLines + val pageInfo = LogPageInfo(page, totalPages, effectiveTotal, hasMore) + + withContext(Dispatchers.Main) { + onLoaded(entries, pageInfo, currentHash) + } + } catch (_: Exception) { + withContext(Dispatchers.Main) { + onLoaded(emptyList(), LogPageInfo(), lastHash) + } + } + } +} + +private suspend fun clearLogs() { + withContext(Dispatchers.IO) { + try { + val shell = getRootShell() + runCmd(shell, "echo '' > $LOGS_PATCH") + } catch (_: Exception) { + } + } +} + +private fun parseLogEntries(logContent: String): List { + if (logContent.isBlank()) return emptyList() + + val entries = logContent.lines() + .filter { it.isNotBlank() && it.startsWith("[") } + .mapNotNull { line -> + try { + parseLogLine(line) + } catch (_: Exception) { + null + } + } + + return entries.reversed() +} +private fun utcToLocal(utc: String): String { + return try { + val instant = LocalDateTime.parse(utc, utcFormatter).atOffset(ZoneOffset.UTC).toInstant() + val local = instant.atZone(ZoneId.systemDefault()) + local.format(localFormatter) + } catch (_: Exception) { + utc + } +} + +private fun parseLogLine(line: String): LogEntry? { + // 解析格式: [timestamp] TYPE: UID=xxx COMM=xxx ... + val timestampRegex = """\[(.*?)]""".toRegex() + val timestampMatch = timestampRegex.find(line) ?: return null + val timestamp = utcToLocal(timestampMatch.groupValues[1]) + + val afterTimestamp = line.substring(timestampMatch.range.last + 1).trim() + val parts = afterTimestamp.split(":") + if (parts.size < 2) return null + + val typeStr = parts[0].trim() + val type = when (typeStr) { + "SU_GRANT" -> LogType.SU_GRANT + "SU_EXEC" -> LogType.SU_EXEC + "PERM_CHECK" -> LogType.PERM_CHECK + "SYSCALL" -> LogType.SYSCALL + "MANAGER_OP" -> LogType.MANAGER_OP + else -> LogType.UNKNOWN + } + + val details = parts[1].trim() + val uid: String = extractValue(details, "UID") ?: "" + val comm: String = extractValue(details, "COMM") ?: "" + val pid: String = extractValue(details, "PID") ?: "" + + // 构建详细信息字符串 + val detailsStr = when (type) { + LogType.SU_GRANT -> { + val method: String = extractValue(details, "METHOD") ?: "" + "Method: $method" + } + LogType.SU_EXEC -> { + val target: String = extractValue(details, "TARGET") ?: "" + val result: String = extractValue(details, "RESULT") ?: "" + "Target: $target, Result: $result" + } + LogType.PERM_CHECK -> { + val result: String = extractValue(details, "RESULT") ?: "" + "Result: $result" + } + LogType.SYSCALL -> { + val syscall = extractValue(details, "SYSCALL") ?: "" + val args = extractValue(details, "ARGS") ?: "" + "Syscall: $syscall, Args: $args" + } + LogType.MANAGER_OP -> { + val op: String = extractValue(details, "OP") ?: "" + val managerUid: String = extractValue(details, "MANAGER_UID") ?: "" + val targetUid: String = extractValue(details, "TARGET_UID") ?: "" + "Operation: $op, Manager UID: $managerUid, Target UID: $targetUid" + } + else -> details + } + + return LogEntry( + timestamp = timestamp, + type = type, + uid = uid, + comm = comm, + details = detailsStr, + pid = pid, + rawLine = line + ) +} + +private fun extractValue(text: String, key: String): String? { + val regex = """$key=(\S+)""".toRegex() + return regex.find(text)?.groupValues?.get(1) +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Module.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Module.kt new file mode 100644 index 0000000..65d8574 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Module.kt @@ -0,0 +1,1340 @@ +package com.sukisu.ultra.ui.screen + +import android.annotation.SuppressLint +import android.app.Activity.* +import android.content.ClipData +import android.content.ClipboardManager +import android.content.Context +import android.content.Intent +import android.net.Uri +import android.util.Log +import android.widget.Toast +import androidx.activity.compose.rememberLauncherForActivityResult +import androidx.activity.result.contract.ActivityResultContracts +import androidx.compose.animation.core.Spring +import androidx.compose.animation.core.animateFloatAsState +import androidx.compose.animation.core.spring +import androidx.compose.foundation.LocalIndication +import androidx.compose.foundation.clickable +import androidx.compose.foundation.combinedClickable +import androidx.compose.foundation.interaction.MutableInteractionSource +import androidx.compose.foundation.interaction.collectIsPressedAsState +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.foundation.lazy.LazyListState +import androidx.compose.foundation.lazy.grid.GridCells +import androidx.compose.foundation.lazy.grid.LazyVerticalGrid +import androidx.compose.foundation.lazy.grid.items +import androidx.compose.foundation.lazy.items +import androidx.compose.foundation.lazy.rememberLazyListState +import androidx.compose.foundation.selection.toggleable +import androidx.compose.foundation.shape.CircleShape +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.outlined.Wysiwyg +import androidx.compose.material.icons.filled.MoreVert +import androidx.compose.material.icons.filled.Verified +import androidx.compose.material.icons.outlined.* +import androidx.compose.material3.* +import androidx.compose.material3.pulltorefresh.PullToRefreshBox +import androidx.compose.runtime.* +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.rotate +import androidx.compose.ui.draw.scale +import androidx.compose.ui.graphics.vector.ImageVector +import androidx.compose.ui.hapticfeedback.HapticFeedbackType +import androidx.compose.ui.input.nestedscroll.nestedScroll +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.platform.LocalHapticFeedback +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.semantics.Role +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.text.style.TextAlign +import androidx.compose.ui.text.style.TextDecoration +import androidx.compose.ui.text.style.TextOverflow +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.Dp +import androidx.compose.ui.unit.dp +import androidx.core.content.edit +import androidx.core.net.toUri +import androidx.lifecycle.viewmodel.compose.viewModel +import com.dergoogler.mmrl.platform.Platform +import com.dergoogler.mmrl.platform.model.ModuleConfig +import com.dergoogler.mmrl.platform.model.ModuleConfig.Companion.asModuleConfig +import com.ramcosta.composedestinations.annotation.Destination +import com.ramcosta.composedestinations.annotation.RootGraph +import com.ramcosta.composedestinations.generated.destinations.ExecuteModuleActionScreenDestination +import com.ramcosta.composedestinations.generated.destinations.FlashScreenDestination +import com.ramcosta.composedestinations.navigation.DestinationsNavigator +import com.ramcosta.composedestinations.navigation.EmptyDestinationsNavigator +import com.sukisu.ultra.Natives +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.component.* +import com.sukisu.ultra.ui.theme.getCardColors +import com.sukisu.ultra.ui.theme.getCardElevation +import com.sukisu.ultra.ui.util.* +import com.sukisu.ultra.ui.util.module.ModuleModify +import com.sukisu.ultra.ui.util.module.ModuleOperationUtils +import com.sukisu.ultra.ui.util.module.ModuleUtils +import com.sukisu.ultra.ui.util.module.verifyModuleSignature +import com.sukisu.ultra.ui.viewmodel.ModuleViewModel +import com.sukisu.ultra.ui.webui.WebUIActivity +import com.sukisu.ultra.ui.webui.WebUIXActivity +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext +import okhttp3.OkHttpClient +import java.util.concurrent.TimeUnit + +data class ModuleBottomSheetMenuItem( + val icon: ImageVector, + val titleRes: Int, + val onClick: () -> Unit +) + +/** + * @author ShirkNeko + * @date 2025/9/29. + */ +@SuppressLint("ResourceType", "AutoboxingStateCreation") +@OptIn(ExperimentalMaterial3Api::class) +@Destination +@Composable +fun ModuleScreen(navigator: DestinationsNavigator) { + val viewModel = viewModel() + val context = LocalContext.current + val prefs = context.getSharedPreferences("settings", MODE_PRIVATE) + val snackBarHost = LocalSnackbarHost.current + val scope = rememberCoroutineScope() + val confirmDialog = rememberConfirmDialog() + var lastClickTime by remember { mutableStateOf(0L) } + + var showSignatureDialog by remember { mutableStateOf(false) } + var signatureDialogMessage by remember { mutableStateOf("") } + var isForceVerificationFailed by remember { mutableStateOf(false) } + var pendingInstallAction by remember { mutableStateOf<(() -> Unit)?>(null) } + + LaunchedEffect(Unit) { + viewModel.initializeCache(context) + } + + val bottomSheetState = rememberModalBottomSheetState( + skipPartiallyExpanded = true + ) + var showBottomSheet by remember { mutableStateOf(false) } + val listState = rememberLazyListState() + val fabVisible by rememberFabVisibilityState(listState) + + val selectZipLauncher = rememberLauncherForActivityResult( + contract = ActivityResultContracts.StartActivityForResult() + ) { + if (it.resultCode != RESULT_OK) { + return@rememberLauncherForActivityResult + } + val data = it.data ?: return@rememberLauncherForActivityResult + + scope.launch { + val clipData = data.clipData + if (clipData != null) { + val selectedModules = mutableListOf() + val selectedModuleNames = mutableMapOf() + + fun processUri(uri: Uri) { + try { + if (!ModuleUtils.isUriAccessible(context, uri)) { + return + } + ModuleUtils.takePersistableUriPermission(context, uri) + val moduleName = ModuleUtils.extractModuleName(context, uri) + selectedModules.add(uri) + selectedModuleNames[uri] = moduleName + } catch (e: Exception) { + Log.e("ModuleScreen", "Error while processing URI: $uri, Error: ${e.message}") + } + } + + for (i in 0 until clipData.itemCount) { + val uri = clipData.getItemAt(i).uri + processUri(uri) + } + + if (selectedModules.isEmpty()) { + snackBarHost.showSnackbar("Unable to access selected module files") + return@launch + } + + val modulesList = selectedModuleNames.values.joinToString("\n• ", "• ") + val confirmResult = confirmDialog.awaitConfirm( + title = context.getString(R.string.module_install), + content = context.getString(R.string.module_install_multiple_confirm_with_names, selectedModules.size, modulesList), + confirm = context.getString(R.string.install), + dismiss = context.getString(R.string.cancel) + ) + + if (confirmResult == ConfirmResult.Confirmed) { + // 验证模块签名 + val forceVerification = prefs.getBoolean("force_signature_verification", false) + val verificationResults = mutableMapOf() + + for (uri in selectedModules) { + val isVerified = verifyModuleSignature(context, uri) + verificationResults[uri] = isVerified + // 存储验证状态 + setModuleVerificationStatus(uri, isVerified) + + if (forceVerification && !isVerified) { + withContext(Dispatchers.Main) { + signatureDialogMessage = context.getString(R.string.module_signature_invalid_message) + isForceVerificationFailed = true + showSignatureDialog = true + } + return@launch + } else if (!isVerified) { + withContext(Dispatchers.Main) { + signatureDialogMessage = context.getString(R.string.module_signature_verification_failed) + isForceVerificationFailed = false + pendingInstallAction = { + try { + navigator.navigate(FlashScreenDestination(FlashIt.FlashModules(selectedModules))) + viewModel.markNeedRefresh() + } catch (e: Exception) { + Log.e("ModuleScreen", "Error navigating to FlashScreen: ${e.message}") + scope.launch { + snackBarHost.showSnackbar("Error while installing module: ${e.message}") + } + } + } + showSignatureDialog = true + } + return@launch + } + } + + // 所有模块签名验证通过,直接安装 + if (verificationResults.all { it -> it.value }) { + try { + navigator.navigate(FlashScreenDestination(FlashIt.FlashModules(selectedModules))) + viewModel.markNeedRefresh() + } catch (e: Exception) { + Log.e("ModuleScreen", "Error navigating to FlashScreen: ${e.message}") + snackBarHost.showSnackbar("Error while installing module: ${e.message}") + } + } + } + } else { + val uri = data.data ?: return@launch + // 单个安装模块 + try { + if (!ModuleUtils.isUriAccessible(context, uri)) { + snackBarHost.showSnackbar("Unable to access selected module files") + return@launch + } + + ModuleUtils.takePersistableUriPermission(context, uri) + + val moduleName = ModuleUtils.extractModuleName(context, uri) + + val confirmResult = confirmDialog.awaitConfirm( + title = context.getString(R.string.module_install), + content = context.getString(R.string.module_install_confirm, moduleName), + confirm = context.getString(R.string.install), + dismiss = context.getString(R.string.cancel) + ) + + if (confirmResult == ConfirmResult.Confirmed) { + // 验证模块签名 + val forceVerification = prefs.getBoolean("force_signature_verification", false) + val isVerified = verifyModuleSignature(context, uri) + // 存储验证状态 + setModuleVerificationStatus(uri, isVerified) + + if (forceVerification && !isVerified) { + signatureDialogMessage = context.getString(R.string.module_signature_invalid_message) + isForceVerificationFailed = true + showSignatureDialog = true + return@launch + } else if (!isVerified) { + signatureDialogMessage = context.getString(R.string.module_signature_verification_failed) + isForceVerificationFailed = false + pendingInstallAction = { + navigator.navigate(FlashScreenDestination(FlashIt.FlashModule(uri))) + viewModel.markNeedRefresh() + } + showSignatureDialog = true + return@launch + } + + navigator.navigate(FlashScreenDestination(FlashIt.FlashModule(uri))) + viewModel.markNeedRefresh() + } + } catch (e: Exception) { + Log.e("ModuleScreen", "Error processing a single URI: $uri, Error: ${e.message}") + snackBarHost.showSnackbar("Error processing module file: ${e.message}") + } + } + } + } + + val backupLauncher = ModuleModify.rememberModuleBackupLauncher(context, snackBarHost) + val restoreLauncher = ModuleModify.rememberModuleRestoreLauncher(context, snackBarHost) + + LaunchedEffect(Unit) { + if (viewModel.moduleList.isEmpty() || viewModel.isNeedRefresh) { + viewModel.sortEnabledFirst = prefs.getBoolean("module_sort_enabled_first", false) + viewModel.sortActionFirst = prefs.getBoolean("module_sort_action_first", false) + viewModel.fetchModuleList() + } + } + + val isSafeMode = Natives.isSafeMode + val hasMagisk = hasMagisk() + val hideInstallButton = isSafeMode || hasMagisk + + val scrollBehavior = TopAppBarDefaults.pinnedScrollBehavior(rememberTopAppBarState()) + + val webUILauncher = rememberLauncherForActivityResult( + contract = ActivityResultContracts.StartActivityForResult() + ) { viewModel.fetchModuleList() } + + val bottomSheetMenuItems = remember { + listOf( + ModuleBottomSheetMenuItem( + icon = Icons.Outlined.Save, + titleRes = R.string.backup_modules, + onClick = { + backupLauncher.launch(ModuleModify.createBackupIntent()) + scope.launch { + bottomSheetState.hide() + showBottomSheet = false + } + } + ), + ModuleBottomSheetMenuItem( + icon = Icons.Outlined.RestoreFromTrash, + titleRes = R.string.restore_modules, + onClick = { + restoreLauncher.launch(ModuleModify.createRestoreIntent()) + scope.launch { + bottomSheetState.hide() + showBottomSheet = false + } + } + ) + ) + } + + Scaffold( + topBar = { + SearchAppBar( + title = { Text(stringResource(R.string.module)) }, + searchText = viewModel.search, + onSearchTextChange = { viewModel.search = it }, + onClearClick = { viewModel.search = "" }, + dropdownContent = { + IconButton( + onClick = { showBottomSheet = true }, + ) { + Icon( + imageVector = Icons.Filled.MoreVert, + contentDescription = stringResource(id = R.string.settings), + ) + } + }, + scrollBehavior = scrollBehavior, + ) + }, + floatingActionButton = { + AnimatedFab(visible = !hideInstallButton && fabVisible) { + FloatingActionButton( + contentColor = MaterialTheme.colorScheme.onPrimary, + containerColor = MaterialTheme.colorScheme.primary, + onClick = { + selectZipLauncher.launch( + Intent(Intent.ACTION_GET_CONTENT).apply { + type = "application/zip" + putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true) + } + ) + }, + content = { + Icon( + painter = painterResource(id = R.drawable.package_import), + contentDescription = null + ) + } + ) + } + }, + contentWindowInsets = WindowInsets.safeDrawing.only( + WindowInsetsSides.Top + WindowInsetsSides.Horizontal + ), + snackbarHost = { SnackbarHost(hostState = snackBarHost) } + ) { innerPadding -> + when { + hasMagisk -> { + Box( + modifier = Modifier + .fillMaxSize() + .padding(24.dp), + contentAlignment = Alignment.Center + ) { + Column( + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.Center + ) { + Icon( + imageVector = Icons.Outlined.Warning, + contentDescription = null, + modifier = Modifier + .size(64.dp) + .padding(bottom = 16.dp) + ) + Text( + stringResource(R.string.module_magisk_conflict), + textAlign = TextAlign.Center, + style = MaterialTheme.typography.bodyLarge, + ) + } + } + } + else -> { + ModuleList( + navigator = navigator, + viewModel = viewModel, + listState = listState, + modifier = Modifier.nestedScroll(scrollBehavior.nestedScrollConnection), + boxModifier = Modifier.padding(innerPadding), + onInstallModule = { + navigator.navigate(FlashScreenDestination(FlashIt.FlashModule(it))) + }, + onUpdateModule = { + navigator.navigate(FlashScreenDestination(FlashIt.FlashModuleUpdate(it))) + }, + onClickModule = { id, name, hasWebUi -> + val currentTime = System.currentTimeMillis() + if (currentTime - lastClickTime < 600) { + Log.d("ModuleScreen", "Click too fast, ignoring") + return@ModuleList + } + lastClickTime = currentTime + + if (hasWebUi) { + try { + val wxEngine = Intent(context, WebUIXActivity::class.java) + .setData("kernelsu://webuix/$id".toUri()) + .putExtra("id", id) + .putExtra("name", name) + + val ksuEngine = Intent(context, WebUIActivity::class.java) + .setData("kernelsu://webui/$id".toUri()) + .putExtra("id", id) + .putExtra("name", name) + + val config = try { + id.asModuleConfig + } catch (e: Exception) { + Log.e("ModuleScreen", "Failed to get config from id: $id", e) + null + } + + val globalEngine = prefs.getString("webui_engine", "default") ?: "default" + val moduleEngine = config?.getWebuiEngine(context) + val selectedEngine = when (globalEngine) { + "wx" -> wxEngine + "ksu" -> ksuEngine + "default" -> { + when (moduleEngine) { + "wx" -> wxEngine + "ksu" -> ksuEngine + else -> { + if (Platform.isAlive) { + wxEngine + } else { + ksuEngine + } + } + } + } + else -> ksuEngine + } + webUILauncher.launch(selectedEngine) + } catch (e: Exception) { + Log.e("ModuleScreen", "Error launching WebUI: ${e.message}", e) + scope.launch { + snackBarHost.showSnackbar("Error launching WebUI: ${e.message}") + } + } + return@ModuleList + } + }, + context = context, + snackBarHost = snackBarHost + ) + } + } + + if (showBottomSheet) { + ModalBottomSheet( + onDismissRequest = { + showBottomSheet = false + }, + sheetState = bottomSheetState, + dragHandle = { + Surface( + modifier = Modifier.padding(vertical = 11.dp), + color = MaterialTheme.colorScheme.onSurfaceVariant.copy(alpha = 0.4f), + shape = RoundedCornerShape(16.dp) + ) { + Box( + Modifier.size( + width = 32.dp, + height = 4.dp + ) + ) + } + } + ) { + ModuleBottomSheetContent( + menuItems = bottomSheetMenuItems, + viewModel = viewModel, + prefs = prefs, + scope = scope, + bottomSheetState = bottomSheetState, + onDismiss = { showBottomSheet = false } + ) + } + } + + // 签名验证弹窗 + if (showSignatureDialog) { + AlertDialog( + onDismissRequest = { showSignatureDialog = false }, + icon = { + Icon( + imageVector = Icons.Outlined.Warning, + contentDescription = null, + tint = MaterialTheme.colorScheme.error + ) + }, + title = { + Text( + text = stringResource(R.string.module_signature_invalid), + color = MaterialTheme.colorScheme.error + ) + }, + text = { + Text(text = signatureDialogMessage) + }, + confirmButton = { + if (isForceVerificationFailed) { + // 强制验证失败,只显示确定按钮 + TextButton( + onClick = { showSignatureDialog = false } + ) { + Text(stringResource(R.string.confirm)) + } + } else { + // 非强制验证失败,显示继续安装按钮 + TextButton( + onClick = { + showSignatureDialog = false + pendingInstallAction?.invoke() + pendingInstallAction = null + } + ) { + Text(stringResource(R.string.install)) + } + } + }, + dismissButton = if (!isForceVerificationFailed) { + { + TextButton( + onClick = { + showSignatureDialog = false + pendingInstallAction = null + } + ) { + Text(stringResource(R.string.cancel)) + } + } + } else { + null + } + ) + } + } +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun ModuleBottomSheetContent( + menuItems: List, + viewModel: ModuleViewModel, + prefs: android.content.SharedPreferences, + scope: kotlinx.coroutines.CoroutineScope, + bottomSheetState: SheetState, + onDismiss: () -> Unit +) { + Column( + modifier = Modifier + .fillMaxWidth() + .padding(bottom = 24.dp) + ) { + // 标题 + Text( + text = stringResource(R.string.menu_options), + style = MaterialTheme.typography.headlineSmall, + fontWeight = FontWeight.Bold, + modifier = Modifier.padding(horizontal = 24.dp, vertical = 16.dp) + ) + + // 菜单选项网格 + LazyVerticalGrid( + columns = GridCells.Fixed(4), + modifier = Modifier.fillMaxWidth(), + contentPadding = PaddingValues(horizontal = 16.dp), + horizontalArrangement = Arrangement.spacedBy(8.dp), + verticalArrangement = Arrangement.spacedBy(16.dp) + ) { + items(menuItems) { menuItem -> + ModuleBottomSheetMenuItemView( + menuItem = menuItem + ) + } + } + + // 排序选项 + Spacer(modifier = Modifier.height(24.dp)) + HorizontalDivider(modifier = Modifier.padding(horizontal = 24.dp)) + + Text( + text = stringResource(R.string.sort_options), + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Bold, + modifier = Modifier.padding(horizontal = 24.dp, vertical = 16.dp) + ) + + Column( + modifier = Modifier.padding(horizontal = 24.dp), + verticalArrangement = Arrangement.spacedBy(8.dp) + ) { + // 优先显示有操作的模块 + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Text( + text = stringResource(R.string.module_sort_action_first), + style = MaterialTheme.typography.bodyMedium + ) + Switch( + checked = viewModel.sortActionFirst, + onCheckedChange = { checked -> + viewModel.sortActionFirst = checked + prefs.edit { + putBoolean("module_sort_action_first", checked) + } + scope.launch { + viewModel.fetchModuleList() + bottomSheetState.hide() + onDismiss() + } + } + ) + } + + // 优先显示已启用的模块 + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Text( + text = stringResource(R.string.module_sort_enabled_first), + style = MaterialTheme.typography.bodyMedium + ) + Switch( + checked = viewModel.sortEnabledFirst, + onCheckedChange = { checked -> + viewModel.sortEnabledFirst = checked + prefs.edit { + putBoolean("module_sort_enabled_first", checked) + } + scope.launch { + viewModel.fetchModuleList() + bottomSheetState.hide() + onDismiss() + } + } + ) + } + } + } +} + +@Composable +private fun ModuleBottomSheetMenuItemView(menuItem: ModuleBottomSheetMenuItem) { + val interactionSource = remember { MutableInteractionSource() } + val isPressed by interactionSource.collectIsPressedAsState() + + val scale by animateFloatAsState( + targetValue = if (isPressed) 0.95f else 1.0f, + animationSpec = spring( + dampingRatio = Spring.DampingRatioMediumBouncy, + stiffness = Spring.StiffnessHigh + ), + label = "menuItemScale" + ) + + Column( + modifier = Modifier + .fillMaxWidth() + .scale(scale) + .clickable( + interactionSource = interactionSource, + indication = null + ) { menuItem.onClick() } + .padding(8.dp), + horizontalAlignment = Alignment.CenterHorizontally + ) { + Surface( + modifier = Modifier.size(48.dp), + shape = CircleShape, + color = MaterialTheme.colorScheme.primaryContainer, + contentColor = MaterialTheme.colorScheme.onPrimaryContainer + ) { + Box( + contentAlignment = Alignment.Center + ) { + Icon( + imageVector = menuItem.icon, + contentDescription = stringResource(menuItem.titleRes), + modifier = Modifier.size(24.dp) + ) + } + } + + Spacer(modifier = Modifier.height(8.dp)) + + Text( + text = stringResource(menuItem.titleRes), + style = MaterialTheme.typography.labelSmall, + textAlign = TextAlign.Center, + maxLines = 2 + ) + } +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun ModuleList( + navigator: DestinationsNavigator, + viewModel: ModuleViewModel, + listState: LazyListState, + modifier: Modifier = Modifier, + boxModifier: Modifier = Modifier, + onInstallModule: (Uri) -> Unit, + onUpdateModule: (Uri) -> Unit, + onClickModule: (id: String, name: String, hasWebUi: Boolean) -> Unit, + context: Context, + snackBarHost: SnackbarHostState +) { + val failedEnable = stringResource(R.string.module_failed_to_enable) + val failedDisable = stringResource(R.string.module_failed_to_disable) + val failedUninstall = stringResource(R.string.module_uninstall_failed) + val successUninstall = stringResource(R.string.module_uninstall_success) + val reboot = stringResource(R.string.reboot) + val rebootToApply = stringResource(R.string.reboot_to_apply) + val moduleStr = stringResource(R.string.module) + val uninstall = stringResource(R.string.uninstall) + val cancel = stringResource(android.R.string.cancel) + val moduleUninstallConfirm = stringResource(R.string.module_uninstall_confirm) + val updateText = stringResource(R.string.module_update) + val changelogText = stringResource(R.string.module_changelog) + val downloadingText = stringResource(R.string.module_downloading) + val startDownloadingText = stringResource(R.string.module_start_downloading) + val fetchChangeLogFailed = stringResource(R.string.module_changelog_failed) + val downloadErrorText = stringResource(R.string.module_download_error) + + val loadingDialog = rememberLoadingDialog() + val confirmDialog = rememberConfirmDialog() + + suspend fun onModuleUpdate( + module: ModuleViewModel.ModuleInfo, + changelogUrl: String, + downloadUrl: String, + fileName: String + ) { + val client = OkHttpClient.Builder() + .connectTimeout(15, TimeUnit.SECONDS) + .readTimeout(30, TimeUnit.SECONDS) + .build() + + val request = okhttp3.Request.Builder() + .url(changelogUrl) + .header("User-Agent", "SukiSU-Ultra/2.0") + .build() + + val changelogResult = loadingDialog.withLoading { + withContext(Dispatchers.IO) { + runCatching { + client.newCall(request).execute().body!!.string() + } + } + } + + val showToast: suspend (String) -> Unit = { msg -> + withContext(Dispatchers.Main) { + Toast.makeText( + context, + msg, + Toast.LENGTH_SHORT + ).show() + } + } + + val changelog = changelogResult.getOrElse { + showToast(fetchChangeLogFailed.format(it.message)) + return + }.ifBlank { + showToast(fetchChangeLogFailed.format(module.name)) + return + } + + val confirmResult = confirmDialog.awaitConfirm( + changelogText, + content = changelog, + markdown = true, + confirm = updateText, + ) + + if (confirmResult != ConfirmResult.Confirmed) { + return + } + + showToast(startDownloadingText.format(module.name)) + + val downloading = downloadingText.format(module.name) + withContext(Dispatchers.IO) { + download( + context, + downloadUrl, + fileName, + downloading, + onDownloaded = { uri -> + // 验证更新模块的签名 + val isVerified = verifyModuleSignature(context, uri) + setModuleVerificationStatus(uri, isVerified) + onUpdateModule(uri) + }, + onDownloading = { + launch(Dispatchers.Main) { + Toast.makeText(context, downloading, Toast.LENGTH_SHORT).show() + } + }, + onError = { errorMsg -> + launch(Dispatchers.Main) { + Toast.makeText(context, "$downloadErrorText: $errorMsg", Toast.LENGTH_LONG).show() + } + } + ) + } + } + + suspend fun onModuleUninstallClicked(module: ModuleViewModel.ModuleInfo) { + val isUninstall = !module.remove + if (isUninstall) { + val confirmResult = confirmDialog.awaitConfirm( + moduleStr, + content = moduleUninstallConfirm.format(module.name), + confirm = uninstall, + dismiss = cancel + ) + if (confirmResult != ConfirmResult.Confirmed) { + return + } + } + + val success = loadingDialog.withLoading { + withContext(Dispatchers.IO) { + if (isUninstall) { + // 卸载时移除验证标志 + ModuleOperationUtils.handleModuleUninstall(module.dirId) + uninstallModule(module.dirId) + } else { + undoUninstallModule(module.dirId) + } + } + } + + if (success) { + viewModel.fetchModuleList() + viewModel.markNeedRefresh() + } + if (!isUninstall) return + val message = if (success) { + successUninstall.format(module.name) + } else { + failedUninstall.format(module.name) + } + val actionLabel = if (success) { + reboot + } else { + null + } + val result = snackBarHost.showSnackbar( + message = message, + actionLabel = actionLabel, + duration = SnackbarDuration.Long + ) + if (result == SnackbarResult.ActionPerformed) { + reboot() + } + } + + PullToRefreshBox( + modifier = boxModifier, + onRefresh = { + viewModel.fetchModuleList() + }, + isRefreshing = viewModel.isRefreshing + ) { + LazyColumn( + state = listState, + modifier = modifier, + verticalArrangement = Arrangement.spacedBy(16.dp), + contentPadding = remember { + PaddingValues( + start = 16.dp, + top = 16.dp, + end = 16.dp, + bottom = 16.dp + 56.dp + 16.dp + 48.dp + 6.dp /* Scaffold Fab Spacing + Fab container height + SnackBar height */ + ) + }, + ) { + when { + viewModel.moduleList.isEmpty() -> { + item { + Box( + modifier = Modifier.fillParentMaxSize(), + contentAlignment = Alignment.Center + ) { + Column( + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.Center + ) { + Icon( + imageVector = Icons.Outlined.Extension, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary.copy(alpha = 0.6f), + modifier = Modifier + .size(96.dp) + .padding(bottom = 16.dp) + ) + Text( + text = stringResource(R.string.module_empty), + textAlign = TextAlign.Center, + style = MaterialTheme.typography.bodyLarge, + ) + } + } + } + } + + else -> { + items(viewModel.moduleList) { module -> + val scope = rememberCoroutineScope() + val updatedModule by produceState(initialValue = Triple("", "", "")) { + scope.launch(Dispatchers.IO) { + value = viewModel.checkUpdate(module) + } + } + + ModuleItem( + navigator = navigator, + module = module, + updateUrl = updatedModule.first, + onUninstallClicked = { + scope.launch { onModuleUninstallClicked(module) } + }, + onCheckChanged = { + scope.launch { + val success = withContext(Dispatchers.IO) { + toggleModule(module.dirId, !module.enabled) + } + if (success) { + viewModel.fetchModuleList() + + val result = snackBarHost.showSnackbar( + message = rebootToApply, + actionLabel = reboot, + duration = SnackbarDuration.Long + ) + if (result == SnackbarResult.ActionPerformed) { + reboot() + } + } else { + val message = if (module.enabled) failedDisable else failedEnable + snackBarHost.showSnackbar(message.format(module.name)) + } + } + }, + onUpdate = { + scope.launch { + onModuleUpdate( + module, + updatedModule.third, + updatedModule.first, + "${module.name}-${updatedModule.second}.zip" + ) + } + }, + onClick = { + onClickModule(it.dirId, it.name, it.hasWebUi) + } + ) + + Spacer(Modifier.height(1.dp)) + } + } + } + } + + DownloadListener(context, onInstallModule) + } +} + +@Composable +fun ModuleItem( + navigator: DestinationsNavigator, + module: ModuleViewModel.ModuleInfo, + updateUrl: String, + onUninstallClicked: (ModuleViewModel.ModuleInfo) -> Unit, + onCheckChanged: (Boolean) -> Unit, + onUpdate: (ModuleViewModel.ModuleInfo) -> Unit, + onClick: (ModuleViewModel.ModuleInfo) -> Unit +) { + val context = LocalContext.current + val prefs = context.getSharedPreferences("settings", MODE_PRIVATE) + val isHideTagRow = prefs.getBoolean("is_hide_tag_row", false) + // 获取显示更多模块信息的设置 + val showMoreModuleInfo = prefs.getBoolean("show_more_module_info", false) + + // 剪贴板管理器和触觉反馈 + val clipboardManager = context.getSystemService(CLIPBOARD_SERVICE) as ClipboardManager + val hapticFeedback = LocalHapticFeedback.current + + ElevatedCard( + colors = getCardColors(MaterialTheme.colorScheme.surfaceContainerHigh), + elevation = getCardElevation(), + ) { + val textDecoration = if (!module.remove) null else TextDecoration.LineThrough + val interactionSource = remember { MutableInteractionSource() } + val indication = LocalIndication.current + val viewModel = viewModel() + + val sizeStr = remember(module.dirId) { + viewModel.getModuleSize(module.dirId) + } + + Column( + modifier = Modifier + .run { + if (module.hasWebUi) { + toggleable( + value = module.enabled, + enabled = !module.remove && module.enabled, + interactionSource = interactionSource, + role = Role.Button, + indication = indication, + onValueChange = { onClick(module) } + ) + } else { + this + } + } + .padding(22.dp, 18.dp, 22.dp, 12.dp) + ) { + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + val moduleVersion = stringResource(id = R.string.module_version) + val moduleAuthor = stringResource(id = R.string.module_author) + + Column( + modifier = Modifier.fillMaxWidth(0.8f) + ) { + Row( + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.spacedBy(8.dp) + ) { + Text( + text = module.name, + fontSize = MaterialTheme.typography.titleMedium.fontSize, + fontWeight = FontWeight.SemiBold, + lineHeight = MaterialTheme.typography.bodySmall.lineHeight, + fontFamily = MaterialTheme.typography.titleMedium.fontFamily, + textDecoration = textDecoration, + modifier = Modifier.weight(1f, false) + ) + + // 显示验证标签 + if (module.isVerified) { + Surface( + shape = RoundedCornerShape(12.dp), + color = MaterialTheme.colorScheme.primary, + modifier = Modifier + ) { + Row( + verticalAlignment = Alignment.CenterVertically, + modifier = Modifier.padding(horizontal = 6.dp, vertical = 2.dp) + ) { + Icon( + imageVector = Icons.Default.Verified, + contentDescription = stringResource(R.string.module_signature_verified), + tint = MaterialTheme.colorScheme.onPrimary, + modifier = Modifier.size(12.dp) + ) + Spacer(modifier = Modifier.width(2.dp)) + Text( + text = stringResource(R.string.module_verified), + style = MaterialTheme.typography.labelSmall, + color = MaterialTheme.colorScheme.onPrimary, + fontWeight = FontWeight.Medium + ) + } + } + } + } + + Text( + text = "$moduleVersion: ${module.version}", + fontSize = MaterialTheme.typography.bodySmall.fontSize, + lineHeight = MaterialTheme.typography.bodySmall.lineHeight, + fontFamily = MaterialTheme.typography.bodySmall.fontFamily, + textDecoration = textDecoration, + ) + + Text( + text = "$moduleAuthor: ${module.author}", + fontSize = MaterialTheme.typography.bodySmall.fontSize, + lineHeight = MaterialTheme.typography.bodySmall.lineHeight, + fontFamily = MaterialTheme.typography.bodySmall.fontFamily, + textDecoration = textDecoration, + ) + + // 显示更多模块信息时添加updateJson + if (showMoreModuleInfo && module.updateJson.isNotEmpty()) { + val updateJsonLabel = stringResource(R.string.module_update_json) + Text( + text = "$updateJsonLabel: ${module.updateJson}", + fontSize = MaterialTheme.typography.bodySmall.fontSize, + lineHeight = MaterialTheme.typography.bodySmall.lineHeight, + fontFamily = MaterialTheme.typography.bodySmall.fontFamily, + textDecoration = textDecoration, + color = MaterialTheme.colorScheme.primary, + maxLines = 5, + overflow = TextOverflow.Ellipsis, + modifier = Modifier + .fillMaxWidth() + .combinedClickable( + onClick = { }, + onLongClick = { + val clipData = ClipData.newPlainText( + "Update JSON URL", + module.updateJson + ) + clipboardManager.setPrimaryClip(clipData) + hapticFeedback.performHapticFeedback(HapticFeedbackType.LongPress) + + Toast.makeText( + context, + context.getString(R.string.module_update_json_copied), + Toast.LENGTH_SHORT + ).show() + } + ), + ) + } + } + + Spacer(modifier = Modifier.weight(1f)) + + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.End, + ) { + Switch( + enabled = !module.update, + checked = module.enabled, + onCheckedChange = onCheckChanged, + interactionSource = if (!module.hasWebUi) interactionSource else null, + ) + } + } + + Spacer(modifier = Modifier.height(12.dp)) + + Text( + text = module.description, + fontSize = MaterialTheme.typography.bodySmall.fontSize, + fontFamily = MaterialTheme.typography.bodySmall.fontFamily, + lineHeight = MaterialTheme.typography.bodySmall.lineHeight, + fontWeight = MaterialTheme.typography.bodySmall.fontWeight, + overflow = TextOverflow.Ellipsis, + maxLines = 4, + textDecoration = textDecoration, + ) + + if (!isHideTagRow) { + Spacer(modifier = Modifier.height(12.dp)) + // 文件夹名称和大小标签 + Row( + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.spacedBy(8.dp), + modifier = Modifier.fillMaxWidth() + ) { + Surface( + shape = RoundedCornerShape(4.dp), + color = MaterialTheme.colorScheme.primary, + modifier = Modifier + ) { + Text( + text = module.dirId, + style = MaterialTheme.typography.labelSmall, + modifier = Modifier.padding(horizontal = 4.dp, vertical = 1.dp), + color = MaterialTheme.colorScheme.onPrimary, + maxLines = 1, + overflow = TextOverflow.Ellipsis + ) + } + Surface( + shape = RoundedCornerShape(4.dp), + color = MaterialTheme.colorScheme.secondaryContainer, + modifier = Modifier + ) { + Text( + text = sizeStr, + style = MaterialTheme.typography.labelSmall, + modifier = Modifier.padding(horizontal = 4.dp, vertical = 1.dp), + color = MaterialTheme.colorScheme.onSecondaryContainer, + maxLines = 1 + ) + } + } + } + + Spacer(modifier = Modifier.height(16.dp)) + + HorizontalDivider(thickness = Dp.Hairline) + + Spacer(modifier = Modifier.height(8.dp)) + + Row( + horizontalArrangement = Arrangement.spacedBy(8.dp), + verticalAlignment = Alignment.CenterVertically + ) { + if (module.hasActionScript) { + FilledTonalButton( + modifier = Modifier.defaultMinSize(minWidth = 52.dp, minHeight = 32.dp), + enabled = !module.remove && module.enabled, + onClick = { + navigator.navigate(ExecuteModuleActionScreenDestination(module.dirId)) + viewModel.markNeedRefresh() + }, + contentPadding = ButtonDefaults.TextButtonContentPadding, + ) { + Icon( + modifier = Modifier.size(20.dp), + imageVector = Icons.Outlined.PlayArrow, + contentDescription = null + ) + } + } + + if (module.hasWebUi) { + FilledTonalButton( + modifier = Modifier.defaultMinSize(minWidth = 52.dp, minHeight = 32.dp), + enabled = !module.remove && module.enabled, + onClick = { onClick(module) }, + interactionSource = interactionSource, + contentPadding = ButtonDefaults.TextButtonContentPadding, + ) { + Icon( + modifier = Modifier.size(20.dp), + imageVector = Icons.AutoMirrored.Outlined.Wysiwyg, + contentDescription = null + ) + } + } + + Spacer(modifier = Modifier.weight(1f, true)) + + if (updateUrl.isNotEmpty()) { + Button( + modifier = Modifier.defaultMinSize(minWidth = 52.dp, minHeight = 32.dp), + enabled = !module.remove, + onClick = { onUpdate(module) }, + shape = ButtonDefaults.textShape, + contentPadding = ButtonDefaults.TextButtonContentPadding, + ) { + Icon( + modifier = Modifier.size(20.dp), + imageVector = Icons.Outlined.Download, + contentDescription = null + ) + } + } + + FilledTonalButton( + modifier = Modifier.defaultMinSize(minWidth = 52.dp, minHeight = 32.dp), + onClick = { onUninstallClicked(module) }, + contentPadding = ButtonDefaults.TextButtonContentPadding, + ) { + if (!module.remove) { + Icon( + modifier = Modifier.size(20.dp), + imageVector = Icons.Outlined.Delete, + contentDescription = null, + ) + } else { + Icon( + modifier = Modifier.size(20.dp).rotate(180f), + imageVector = Icons.Outlined.Refresh, + contentDescription = null + ) + } + } + } + } + } +} + +@Preview +@Composable +fun ModuleItemPreview() { + val module = ModuleViewModel.ModuleInfo( + id = "id", + name = "name", + version = "version", + versionCode = 1, + author = "author", + description = "I am a test module and i do nothing but show a very long description", + enabled = true, + update = true, + remove = false, + updateJson = "", + hasWebUi = false, + hasActionScript = false, + dirId = "dirId", + config = ModuleConfig(), + isVerified = true, + verificationTimestamp = System.currentTimeMillis() + ) + ModuleItem(EmptyDestinationsNavigator, module, "", {}, {}, {}, {}) +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Settings.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Settings.kt new file mode 100644 index 0000000..ae56e6c --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Settings.kt @@ -0,0 +1,1051 @@ +package com.sukisu.ultra.ui.screen + +import android.content.Context +import android.content.Intent +import android.content.SharedPreferences +import android.net.Uri +import android.widget.Toast +import androidx.activity.compose.rememberLauncherForActivityResult +import androidx.activity.result.contract.ActivityResultContracts +import androidx.compose.animation.* +import androidx.compose.foundation.background +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.shape.CircleShape +import androidx.compose.foundation.verticalScroll +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.filled.Undo +import androidx.compose.material.icons.filled.* +import androidx.compose.material.icons.rounded.EnhancedEncryption +import androidx.compose.material.icons.rounded.FolderDelete +import androidx.compose.material.icons.rounded.RemoveCircle +import androidx.compose.material.icons.rounded.RemoveModerator +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.runtime.saveable.rememberSaveable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.vector.ImageVector +import androidx.compose.ui.input.nestedscroll.nestedScroll +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import androidx.core.content.FileProvider +import androidx.core.content.edit +import com.maxkeppeker.sheets.core.models.base.IconSource +import com.maxkeppeler.sheets.list.models.ListOption +import com.ramcosta.composedestinations.annotation.Destination +import com.ramcosta.composedestinations.annotation.RootGraph +import com.ramcosta.composedestinations.generated.destinations.AppProfileTemplateScreenDestination +import com.ramcosta.composedestinations.generated.destinations.FlashScreenDestination +import com.ramcosta.composedestinations.generated.destinations.LogViewerScreenDestination +import com.ramcosta.composedestinations.generated.destinations.UmountManagerScreenDestination +import com.ramcosta.composedestinations.generated.destinations.MoreSettingsScreenDestination +import com.ramcosta.composedestinations.navigation.DestinationsNavigator +import com.sukisu.ultra.BuildConfig +import com.sukisu.ultra.Natives +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.component.* +import com.sukisu.ultra.ui.theme.CardConfig +import com.sukisu.ultra.ui.theme.CardConfig.cardAlpha +import com.sukisu.ultra.ui.theme.getCardColors +import com.sukisu.ultra.ui.theme.getCardElevation +import com.sukisu.ultra.ui.util.* +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext +import java.time.LocalDateTime +import java.time.format.DateTimeFormatter + +/** + * @author ShirkNeko + * @date 2025/9/29. + */ +private val SPACING_SMALL = 3.dp +private val SPACING_MEDIUM = 8.dp +private val SPACING_LARGE = 16.dp + +@OptIn(ExperimentalMaterial3Api::class) +@Destination +@Composable +fun SettingScreen(navigator: DestinationsNavigator) { + val scrollBehavior = TopAppBarDefaults.pinnedScrollBehavior(rememberTopAppBarState()) + val snackBarHost = LocalSnackbarHost.current + val context = LocalContext.current + val prefs = context.getSharedPreferences("settings", Context.MODE_PRIVATE) + var isSuLogEnabled by remember { mutableStateOf(Natives.isSuLogEnabled()) } + var selectedEngine by rememberSaveable { + mutableStateOf( + prefs.getString("webui_engine", "default") ?: "default" + ) + } + + Scaffold( + topBar = { + TopBar(scrollBehavior = scrollBehavior) + }, + snackbarHost = { SnackbarHost(snackBarHost) }, + contentWindowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal) + ) { paddingValues -> + val aboutDialog = rememberCustomDialog { + AboutDialog(it) + } + val loadingDialog = rememberLoadingDialog() + + Column( + modifier = Modifier + .padding(paddingValues) + .nestedScroll(scrollBehavior.nestedScrollConnection) + .verticalScroll(rememberScrollState()) + ) { + val context = LocalContext.current + val scope = rememberCoroutineScope() + val exportBugreportLauncher = rememberLauncherForActivityResult( + ActivityResultContracts.CreateDocument("application/gzip") + ) { uri: Uri? -> + if (uri == null) return@rememberLauncherForActivityResult + scope.launch(Dispatchers.IO) { + loadingDialog.show() + context.contentResolver.openOutputStream(uri)?.use { output -> + getBugreportFile(context).inputStream().use { + it.copyTo(output) + } + } + loadingDialog.hide() + snackBarHost.showSnackbar(context.getString(R.string.log_saved)) + } + } + + // 配置卡片 + KsuIsValid { + SettingsGroupCard( + title = stringResource(R.string.configuration), + content = { + // 配置文件模板入口 + SettingItem( + icon = Icons.Filled.Fence, + title = stringResource(R.string.settings_profile_template), + summary = stringResource(R.string.settings_profile_template_summary), + onClick = { + navigator.navigate(AppProfileTemplateScreenDestination) + } + ) + + val modeItems = listOf( + stringResource(id = R.string.settings_mode_default), + stringResource(id = R.string.settings_mode_temp_enable), + stringResource(id = R.string.settings_mode_always_enable), + ) + var enhancedSecurityMode by rememberSaveable { + mutableIntStateOf( + run { + val currentEnabled = Natives.isEnhancedSecurityEnabled() + val savedPersist = prefs.getInt("enhanced_security_mode", 0) + if (savedPersist == 2) 2 else if (currentEnabled) 1 else 0 + } + ) + } + val enhancedStatus by produceState(initialValue = "") { + value = getFeatureStatus("enhanced_security") + } + val enhancedSummary = when (enhancedStatus) { + "unsupported" -> stringResource(id = R.string.feature_status_unsupported_summary) + "managed" -> stringResource(id = R.string.feature_status_managed_summary) + else -> stringResource(id = R.string.settings_enable_enhanced_security_summary) + } + SuperDropdown( + icon = Icons.Rounded.EnhancedEncryption, + title = stringResource(id = R.string.settings_enable_enhanced_security), + summary = enhancedSummary, + items = modeItems, + leftAction = { + Icon( + Icons.Rounded.EnhancedEncryption, + modifier = Modifier.padding(end = 16.dp), + contentDescription = stringResource(id = R.string.settings_enable_enhanced_security), + tint = MaterialTheme.colorScheme.onBackground + ) + }, + enabled = enhancedStatus == "supported", + selectedIndex = enhancedSecurityMode, + onSelectedIndexChange = { index -> + when (index) { + // Default: disable and save to persist + 0 -> if (Natives.setEnhancedSecurityEnabled(false)) { + execKsud("feature save", true) + prefs.edit { putInt("enhanced_security_mode", 0) } + enhancedSecurityMode = 0 + } + + // Temporarily enable: save disabled state first, then enable + 1 -> if (Natives.setEnhancedSecurityEnabled(false)) { + execKsud("feature save", true) + if (Natives.setEnhancedSecurityEnabled(true)) { + prefs.edit { putInt("enhanced_security_mode", 0) } + enhancedSecurityMode = 1 + } + } + + // Permanently enable: enable and save + 2 -> if (Natives.setEnhancedSecurityEnabled(true)) { + execKsud("feature save", true) + prefs.edit { putInt("enhanced_security_mode", 2) } + enhancedSecurityMode = 2 + } + } + } + ) + + var suCompatMode by rememberSaveable { + mutableIntStateOf( + run { + val currentEnabled = Natives.isSuEnabled() + val savedPersist = prefs.getInt("su_compat_mode", 0) + if (savedPersist == 2) 2 else if (!currentEnabled) 1 else 0 + } + ) + } + val suStatus by produceState(initialValue = "") { + value = getFeatureStatus("su_compat") + } + val suSummary = when (suStatus) { + "unsupported" -> stringResource(id = R.string.feature_status_unsupported_summary) + "managed" -> stringResource(id = R.string.feature_status_managed_summary) + else -> stringResource(id = R.string.settings_disable_su_summary) + } + SuperDropdown( + icon = Icons.Rounded.RemoveModerator, + title = stringResource(id = R.string.settings_disable_su), + summary = suSummary, + items = modeItems, + leftAction = { + Icon( + Icons.Rounded.RemoveModerator, + modifier = Modifier.padding(end = 16.dp), + contentDescription = stringResource(id = R.string.settings_disable_su), + tint = MaterialTheme.colorScheme.onBackground + ) + }, + enabled = suStatus == "supported", + selectedIndex = suCompatMode, + onSelectedIndexChange = { index -> + when (index) { + // Default: enable and save to persist + 0 -> if (Natives.setSuEnabled(true)) { + execKsud("feature save", true) + prefs.edit { putInt("su_compat_mode", 0) } + suCompatMode = 0 + } + + // Temporarily disable: save enabled state first, then disable + 1 -> if (Natives.setSuEnabled(true)) { + execKsud("feature save", true) + if (Natives.setSuEnabled(false)) { + prefs.edit { putInt("su_compat_mode", 0) } + suCompatMode = 1 + } + } + + // Permanently disable: disable and save + 2 -> if (Natives.setSuEnabled(false)) { + execKsud("feature save", true) + prefs.edit { putInt("su_compat_mode", 2) } + suCompatMode = 2 + } + } + } + ) + + var kernelUmountMode by rememberSaveable { + mutableIntStateOf( + run { + val currentEnabled = Natives.isKernelUmountEnabled() + val savedPersist = prefs.getInt("kernel_umount_mode", 0) + if (savedPersist == 2) 2 else if (!currentEnabled) 1 else 0 + } + ) + } + val umountStatus by produceState(initialValue = "") { + value = getFeatureStatus("kernel_umount") + } + val umountSummary = when (umountStatus) { + "unsupported" -> stringResource(id = R.string.feature_status_unsupported_summary) + "managed" -> stringResource(id = R.string.feature_status_managed_summary) + else -> stringResource(id = R.string.settings_disable_kernel_umount_summary) + } + SuperDropdown( + icon = Icons.Rounded.RemoveCircle, + title = stringResource(id = R.string.settings_disable_kernel_umount), + summary = umountSummary, + items = modeItems, + leftAction = { + Icon( + Icons.Rounded.RemoveCircle, + modifier = Modifier.padding(end = 16.dp), + contentDescription = stringResource(id = R.string.settings_disable_kernel_umount), + tint = MaterialTheme.colorScheme.onBackground + ) + }, + enabled = umountStatus == "supported", + selectedIndex = kernelUmountMode, + onSelectedIndexChange = { index -> + when (index) { + // Default: enable and save to persist + 0 -> if (Natives.setKernelUmountEnabled(true)) { + execKsud("feature save", true) + prefs.edit { putInt("kernel_umount_mode", 0) } + kernelUmountMode = 0 + } + + // Temporarily disable: save enabled state first, then disable + 1 -> if (Natives.setKernelUmountEnabled(true)) { + execKsud("feature save", true) + if (Natives.setKernelUmountEnabled(false)) { + prefs.edit { putInt("kernel_umount_mode", 0) } + kernelUmountMode = 1 + } + } + + // Permanently disable: disable and save + 2 -> if (Natives.setKernelUmountEnabled(false)) { + execKsud("feature save", true) + prefs.edit { putInt("kernel_umount_mode", 2) } + kernelUmountMode = 2 + } + } + } + ) + + var suLogMode by rememberSaveable { + mutableIntStateOf( + run { + val currentEnabled = Natives.isSuLogEnabled() + val savedPersist = prefs.getInt("sulog_mode", 0) + if (savedPersist == 2) 2 else if (!currentEnabled) 1 else 0 + } + ) + } + val suLogStatus by produceState(initialValue = "") { + value = getFeatureStatus("sulog") + } + val suLogSummary = when (suLogStatus) { + "unsupported" -> stringResource(id = R.string.feature_status_unsupported_summary) + "managed" -> stringResource(id = R.string.feature_status_managed_summary) + else -> stringResource(id = R.string.settings_disable_sulog_summary) + } + SuperDropdown( + title = stringResource(id = R.string.settings_disable_sulog), + summary = suLogSummary, + items = modeItems, + leftAction = { + Icon( + Icons.Rounded.RemoveCircle, + modifier = Modifier.padding(end = 16.dp), + contentDescription = stringResource(id = R.string.settings_disable_sulog), + tint = MaterialTheme.colorScheme.onBackground + ) + }, + enabled = suLogStatus == "supported", + selectedIndex = suLogMode, + onSelectedIndexChange = { index -> + when (index) { + // Default: enable and save to persist + 0 -> if (Natives.setSuLogEnabled(true)) { + execKsud("feature save", true) + prefs.edit { putInt("sulog_mode", 0) } + suLogMode = 0 + isSuLogEnabled = true + } + + // Temporarily disable: save enabled state first, then disable + 1 -> if (Natives.setSuLogEnabled(true)) { + execKsud("feature save", true) + if (Natives.setSuLogEnabled(false)) { + prefs.edit { putInt("sulog_mode", 0) } + suLogMode = 1 + isSuLogEnabled = false + } + } + + // Permanently disable: disable and save + 2 -> if (Natives.setSuLogEnabled(false)) { + execKsud("feature save", true) + prefs.edit { putInt("sulog_mode", 2) } + suLogMode = 2 + isSuLogEnabled = false + } + } + } + ) + + // 卸载模块开关 + var umountChecked by rememberSaveable { mutableStateOf(Natives.isDefaultUmountModules()) } + SwitchItem( + icon = Icons.Rounded.FolderDelete, + title = stringResource(id = R.string.settings_umount_modules_default), + summary = stringResource(id = R.string.settings_umount_modules_default_summary), + checked = umountChecked, + onCheckedChange = { + if (Natives.setDefaultUmountModules(it)) { + umountChecked = it + } + } + ) + } + ) + } + + // 应用设置卡片 + SettingsGroupCard( + title = stringResource(R.string.app_settings), + content = { + // 更新检查开关 + var checkUpdate by rememberSaveable { + mutableStateOf(prefs.getBoolean("check_update", true)) + } + SwitchItem( + icon = Icons.Filled.Update, + title = stringResource(R.string.settings_check_update), + summary = stringResource(R.string.settings_check_update_summary), + checked = checkUpdate, + onCheckedChange = { enabled -> + prefs.edit { putBoolean("check_update", enabled) } + checkUpdate = enabled + } + ) + + // WebUI引擎选择 + KsuIsValid { + WebUIEngineSelector( + selectedEngine = selectedEngine, + onEngineSelected = { engine -> + selectedEngine = engine + prefs.edit { putString("webui_engine", engine) } + } + ) + } + + // Web调试和Web X Eruda 开关 + var enableWebDebugging by rememberSaveable { + mutableStateOf(prefs.getBoolean("enable_web_debugging", false)) + } + var useWebUIXEruda by rememberSaveable { + mutableStateOf(prefs.getBoolean("use_webuix_eruda", false)) + } + + KsuIsValid { + SwitchItem( + icon = Icons.Filled.DeveloperMode, + title = stringResource(R.string.enable_web_debugging), + summary = stringResource(R.string.enable_web_debugging_summary), + checked = enableWebDebugging, + onCheckedChange = { enabled -> + prefs.edit { putBoolean("enable_web_debugging", enabled) } + enableWebDebugging = enabled + } + ) + + AnimatedVisibility( + visible = enableWebDebugging && selectedEngine == "wx", + enter = fadeIn() + expandVertically(), + exit = fadeOut() + shrinkVertically() + ) { + SwitchItem( + icon = Icons.Filled.FormatListNumbered, + title = stringResource(R.string.use_webuix_eruda), + summary = stringResource(R.string.use_webuix_eruda_summary), + checked = useWebUIXEruda, + onCheckedChange = { enabled -> + prefs.edit { putBoolean("use_webuix_eruda", enabled) } + useWebUIXEruda = enabled + } + ) + } + } + + // 更多设置 + SettingItem( + icon = Icons.Filled.Settings, + title = stringResource(R.string.more_settings), + summary = stringResource(R.string.more_settings), + onClick = { + navigator.navigate(MoreSettingsScreenDestination) + } + ) + } + ) + + // 工具卡片 + SettingsGroupCard( + title = stringResource(R.string.tools), + content = { + var showBottomsheet by remember { mutableStateOf(false) } + + SettingItem( + icon = Icons.Filled.BugReport, + title = stringResource(R.string.send_log), + onClick = { + showBottomsheet = true + } + ) + + // 查看使用日志 + KsuIsValid { + if (isSuLogEnabled) { + SettingItem( + icon = Icons.Filled.Visibility, + title = stringResource(R.string.log_viewer_view_logs), + summary = stringResource(R.string.log_viewer_view_logs_summary), + onClick = { + navigator.navigate(LogViewerScreenDestination) + } + ) + } + } + val lkmMode = Natives.isLkmMode + KsuIsValid { + if (lkmMode) { + SettingItem( + icon = Icons.Filled.FolderOff, + title = stringResource(R.string.umount_path_manager), + summary = stringResource(R.string.umount_path_manager_summary), + onClick = { + navigator.navigate(UmountManagerScreenDestination) + } + ) + } + } + + if (showBottomsheet) { + LogBottomSheet( + onDismiss = { showBottomsheet = false }, + onSaveLog = { + val formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd_HH_mm") + val current = LocalDateTime.now().format(formatter) + exportBugreportLauncher.launch("KernelSU_bugreport_${current}.tar.gz") + showBottomsheet = false + }, + onShareLog = { + scope.launch { + val bugreport = loadingDialog.withLoading { + withContext(Dispatchers.IO) { + getBugreportFile(context) + } + } + + val uri = FileProvider.getUriForFile( + context, + "${BuildConfig.APPLICATION_ID}.fileprovider", + bugreport + ) + + val shareIntent = Intent(Intent.ACTION_SEND).apply { + putExtra(Intent.EXTRA_STREAM, uri) + setDataAndType(uri, "application/gzip") + addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION) + } + + context.startActivity( + Intent.createChooser( + shareIntent, + context.getString(R.string.send_log) + ) + ) + + showBottomsheet = false + } + } + ) + } + if (lkmMode) { + UninstallItem(navigator) { + loadingDialog.withLoading(it) + } + } + } + ) + + // 关于卡片 + SettingsGroupCard( + title = stringResource(R.string.about), + content = { + SettingItem( + icon = Icons.Filled.Info, + title = stringResource(R.string.about), + onClick = { + aboutDialog.show() + } + ) + } + ) + + Spacer(modifier = Modifier.height(SPACING_LARGE)) + } + } +} + +@Composable +private fun SettingsGroupCard( + title: String, + content: @Composable ColumnScope.() -> Unit +) { + Card( + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = SPACING_LARGE, vertical = SPACING_MEDIUM), + colors = getCardColors(MaterialTheme.colorScheme.surfaceContainerLow), + elevation = getCardElevation() + ) { + Column( + modifier = Modifier.padding(vertical = SPACING_MEDIUM) + ) { + Text( + text = title, + style = MaterialTheme.typography.titleMedium, + modifier = Modifier.padding(horizontal = SPACING_LARGE, vertical = SPACING_MEDIUM), + color = MaterialTheme.colorScheme.primary + ) + content() + } + } +} + +@Composable +private fun WebUIEngineSelector( + selectedEngine: String, + onEngineSelected: (String) -> Unit +) { + var showDialog by remember { mutableStateOf(false) } + val engineOptions = listOf( + "default" to stringResource(R.string.engine_auto_select), + "wx" to stringResource(R.string.engine_force_webuix), + "ksu" to stringResource(R.string.engine_force_ksu) + ) + + SettingItem( + icon = Icons.Filled.WebAsset, + title = stringResource(R.string.use_webuix), + summary = engineOptions.find { it.first == selectedEngine }?.second + ?: stringResource(R.string.engine_auto_select), + onClick = { showDialog = true } + ) + + if (showDialog) { + AlertDialog( + onDismissRequest = { showDialog = false }, + title = { Text(stringResource(R.string.use_webuix)) }, + text = { + Column { + engineOptions.forEach { (value, label) -> + Row( + modifier = Modifier + .fillMaxWidth() + .clickable { + onEngineSelected(value) + showDialog = false + } + .padding(vertical = 12.dp), + verticalAlignment = Alignment.CenterVertically + ) { + RadioButton( + selected = selectedEngine == value, + onClick = null + ) + Spacer(modifier = Modifier.width(SPACING_MEDIUM)) + Text(text = label) + } + } + } + }, + confirmButton = { + TextButton(onClick = { showDialog = false }) { + Text(stringResource(R.string.cancel)) + } + } + ) + } +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun LogBottomSheet( + onDismiss: () -> Unit, + onSaveLog: () -> Unit, + onShareLog: () -> Unit +) { + ModalBottomSheet( + onDismissRequest = onDismiss, + containerColor = MaterialTheme.colorScheme.surfaceContainerHigh, + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(SPACING_LARGE), + horizontalArrangement = Arrangement.SpaceEvenly + ) { + LogActionButton( + icon = Icons.Filled.Save, + text = stringResource(R.string.save_log), + onClick = onSaveLog + ) + + LogActionButton( + icon = Icons.Filled.Share, + text = stringResource(R.string.send_log), + onClick = onShareLog + ) + } + Spacer(modifier = Modifier.height(SPACING_LARGE)) + } +} + +@Composable +fun LogActionButton( + icon: ImageVector, + text: String, + onClick: () -> Unit +) { + Column( + horizontalAlignment = Alignment.CenterHorizontally, + modifier = Modifier + .clickable(onClick = onClick) + .padding(SPACING_MEDIUM) + ) { + Box( + contentAlignment = Alignment.Center, + modifier = Modifier + .size(56.dp) + .clip(CircleShape) + .background(MaterialTheme.colorScheme.primaryContainer) + ) { + Icon( + imageVector = icon, + contentDescription = text, + tint = MaterialTheme.colorScheme.onPrimaryContainer, + modifier = Modifier.size(24.dp) + ) + } + Spacer(modifier = Modifier.height(SPACING_MEDIUM)) + Text( + text = text, + style = MaterialTheme.typography.bodyMedium + ) + } +} + +@Composable +fun SettingItem( + icon: ImageVector, + title: String, + summary: String? = null, + onClick: () -> Unit +) { + Row( + modifier = Modifier + .fillMaxWidth() + .clickable(onClick = onClick) + .padding(horizontal = SPACING_LARGE, vertical = 12.dp), + verticalAlignment = Alignment.Top + ) { + Icon( + imageVector = icon, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier + .padding(end = SPACING_LARGE) + .size(24.dp) + ) + + Column(modifier = Modifier.weight(1f)) { + Text( + text = title, + style = MaterialTheme.typography.titleMedium + ) + if (summary != null) { + Spacer(modifier = Modifier.height(SPACING_SMALL)) + Text( + text = summary, + style = MaterialTheme.typography.bodyMedium + ) + } + } + Icon( + imageVector = Icons.Filled.ChevronRight, + contentDescription = null, + tint = MaterialTheme.colorScheme.onSurfaceVariant, + modifier = Modifier.size(24.dp) + ) + } +} + +@Composable +fun SwitchItem( + icon: ImageVector, + title: String, + summary: String? = null, + checked: Boolean, + onCheckedChange: (Boolean) -> Unit +) { + Row( + modifier = Modifier + .fillMaxWidth() + .clickable { onCheckedChange(!checked) } + .padding(horizontal = SPACING_LARGE, vertical = 12.dp), + verticalAlignment = Alignment.Top + ) { + Icon( + imageVector = icon, + contentDescription = null, + tint = if (checked) MaterialTheme.colorScheme.primary else MaterialTheme.colorScheme.onSurfaceVariant, + modifier = Modifier + .padding(end = SPACING_LARGE) + .size(24.dp) + ) + + Column(modifier = Modifier.weight(1f)) { + Text( + text = title, + style = MaterialTheme.typography.titleMedium + ) + if (summary != null) { + Spacer(modifier = Modifier.height(SPACING_SMALL)) + Text( + text = summary, + style = MaterialTheme.typography.bodyMedium + ) + } + } + Switch( + checked = checked, + onCheckedChange = onCheckedChange + ) + } +} + +@Composable +fun UninstallItem( + navigator: DestinationsNavigator, + withLoading: suspend (suspend () -> Unit) -> Unit +) { + val context = LocalContext.current + val scope = rememberCoroutineScope() + val uninstallConfirmDialog = rememberConfirmDialog() + val showTodo = { + Toast.makeText(context, "TODO", Toast.LENGTH_SHORT).show() + } + val uninstallDialog = rememberUninstallDialog { uninstallType -> + scope.launch { + val result = uninstallConfirmDialog.awaitConfirm( + title = context.getString(uninstallType.title), + content = context.getString(uninstallType.message) + ) + if (result == ConfirmResult.Confirmed) { + withLoading { + when (uninstallType) { + UninstallType.TEMPORARY -> showTodo() + UninstallType.PERMANENT -> navigator.navigate( + FlashScreenDestination(FlashIt.FlashUninstall) + ) + UninstallType.RESTORE_STOCK_IMAGE -> navigator.navigate( + FlashScreenDestination(FlashIt.FlashRestore) + ) + UninstallType.NONE -> Unit + } + } + } + } + } + + SettingItem( + icon = Icons.Filled.Delete, + title = stringResource(id = R.string.settings_uninstall), + onClick = { + uninstallDialog.show() + } + ) +} + +enum class UninstallType(val title: Int, val message: Int, val icon: ImageVector) { + TEMPORARY( + R.string.settings_uninstall_temporary, + R.string.settings_uninstall_temporary_message, + Icons.Filled.Delete + ), + PERMANENT( + R.string.settings_uninstall_permanent, + R.string.settings_uninstall_permanent_message, + Icons.Filled.DeleteForever + ), + RESTORE_STOCK_IMAGE( + R.string.settings_restore_stock_image, + R.string.settings_restore_stock_image_message, + Icons.AutoMirrored.Filled.Undo + ), + NONE(0, 0, Icons.Filled.Delete) +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +fun rememberUninstallDialog(onSelected: (UninstallType) -> Unit): DialogHandle { + return rememberCustomDialog { dismiss -> + val options = listOf( + UninstallType.PERMANENT, + UninstallType.RESTORE_STOCK_IMAGE + ) + val listOptions = options.map { + ListOption( + titleText = stringResource(it.title), + subtitleText = if (it.message != 0) stringResource(it.message) else null, + icon = IconSource(it.icon) + ) + } + + var selectedOption by remember { mutableStateOf(null) } + + MaterialTheme( + colorScheme = MaterialTheme.colorScheme.copy( + surface = MaterialTheme.colorScheme.surfaceContainerHigh + ) + ) { + AlertDialog( + onDismissRequest = { + dismiss() + }, + title = { + Text( + text = stringResource(R.string.settings_uninstall), + style = MaterialTheme.typography.headlineSmall, + ) + }, + text = { + Column( + modifier = Modifier.padding(vertical = 8.dp), + verticalArrangement = Arrangement.spacedBy(16.dp) + ) { + options.forEachIndexed { index, option -> + val isSelected = selectedOption == option + val backgroundColor = if (isSelected) + MaterialTheme.colorScheme.primaryContainer + else + Color.Transparent + val contentColor = if (isSelected) + MaterialTheme.colorScheme.onPrimaryContainer + else + MaterialTheme.colorScheme.onSurface + + Row( + modifier = Modifier + .fillMaxWidth() + .clip(MaterialTheme.shapes.medium) + .background(backgroundColor) + .clickable { + selectedOption = option + } + .padding(vertical = 12.dp, horizontal = 8.dp), + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + imageVector = option.icon, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier + .padding(end = 16.dp) + .size(24.dp) + ) + Column( + modifier = Modifier.weight(1f) + ) { + Text( + text = listOptions[index].titleText, + style = MaterialTheme.typography.titleMedium, + ) + listOptions[index].subtitleText?.let { + Text( + text = it, + style = MaterialTheme.typography.bodyMedium, + color = if (isSelected) + contentColor.copy(alpha = 0.8f) + else + MaterialTheme.colorScheme.onSurfaceVariant + ) + } + } + if (isSelected) { + Icon( + imageVector = Icons.Default.RadioButtonChecked, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier.size(24.dp) + ) + } else { + Icon( + imageVector = Icons.Default.RadioButtonUnchecked, + contentDescription = null, + tint = MaterialTheme.colorScheme.onSurfaceVariant, + modifier = Modifier.size(24.dp) + ) + } + } + } + } + }, + confirmButton = { + Button( + onClick = { + selectedOption?.let { onSelected(it) } + dismiss() + }, + enabled = selectedOption != null, + ) { + Text( + text = stringResource(android.R.string.ok) + ) + } + }, + dismissButton = { + TextButton( + onClick = { + dismiss() + } + ) { + Text( + text = stringResource(android.R.string.cancel), + ) + } + }, + shape = MaterialTheme.shapes.extraLarge, + tonalElevation = 4.dp + ) + } + } +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun TopBar( + scrollBehavior: TopAppBarScrollBehavior? = null +) { + val colorScheme = MaterialTheme.colorScheme + val cardColor = if (CardConfig.isCustomBackgroundEnabled) { + colorScheme.surfaceContainerLow + } else { + colorScheme.background + } + TopAppBar( + title = { + Text( + text = stringResource(R.string.settings), + style = MaterialTheme.typography.titleLarge + ) + }, + colors = TopAppBarDefaults.topAppBarColors( + containerColor = cardColor.copy(alpha = cardAlpha), + scrolledContainerColor = cardColor.copy(alpha = cardAlpha) + ), + windowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal), + scrollBehavior = scrollBehavior + ) +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/screen/SuperUser.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/SuperUser.kt new file mode 100644 index 0000000..d38d211 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/SuperUser.kt @@ -0,0 +1,961 @@ +package com.sukisu.ultra.ui.screen + +import android.annotation.SuppressLint +import androidx.compose.animation.AnimatedVisibility +import androidx.compose.animation.core.* +import androidx.compose.animation.expandHorizontally +import androidx.compose.animation.expandVertically +import androidx.compose.animation.* +import androidx.compose.foundation.Image +import androidx.compose.foundation.clickable +import androidx.compose.foundation.gestures.detectTapGestures +import androidx.compose.foundation.interaction.MutableInteractionSource +import androidx.compose.foundation.interaction.collectIsPressedAsState +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.foundation.lazy.LazyRow +import androidx.compose.foundation.lazy.grid.GridCells +import androidx.compose.foundation.lazy.grid.LazyVerticalGrid +import androidx.compose.foundation.lazy.grid.items +import androidx.compose.foundation.lazy.items +import androidx.compose.foundation.lazy.rememberLazyListState +import androidx.compose.foundation.shape.CircleShape +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material.ExperimentalMaterialApi +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.* +import androidx.compose.material3.* +import androidx.compose.material3.TopAppBarDefaults +import androidx.compose.material3.TopAppBarScrollBehavior +import androidx.compose.material3.pulltorefresh.PullToRefreshBox +import androidx.compose.material3.rememberModalBottomSheetState +import androidx.compose.material3.rememberTopAppBarState +import androidx.compose.runtime.Composable +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.MutableState +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.rememberCoroutineScope +import androidx.compose.runtime.setValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.rotate +import androidx.compose.ui.draw.scale +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.vector.ImageVector +import androidx.compose.ui.input.nestedscroll.nestedScroll +import androidx.compose.ui.input.pointer.pointerInput +import androidx.compose.ui.layout.ContentScale +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.platform.LocalDensity +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.text.style.TextAlign +import androidx.compose.ui.text.style.TextOverflow +import androidx.compose.ui.unit.dp +import androidx.lifecycle.viewmodel.compose.viewModel +import coil.compose.AsyncImage +import coil.compose.rememberAsyncImagePainter +import coil.request.ImageRequest +import com.dergoogler.mmrl.ui.component.LabelItem +import com.dergoogler.mmrl.ui.component.LabelItemDefaults +import com.ramcosta.composedestinations.annotation.Destination +import com.ramcosta.composedestinations.annotation.RootGraph +import com.ramcosta.composedestinations.generated.destinations.AppProfileScreenDestination +import com.ramcosta.composedestinations.navigation.DestinationsNavigator +import com.sukisu.ultra.Natives +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.component.FabMenuPresets +import com.sukisu.ultra.ui.component.SearchAppBar +import com.sukisu.ultra.ui.component.VerticalExpandableFab +import com.sukisu.ultra.ui.util.module.ModuleModify +import com.sukisu.ultra.ui.viewmodel.AppCategory +import com.sukisu.ultra.ui.viewmodel.SortType +import com.sukisu.ultra.ui.viewmodel.SuperUserViewModel +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.launch + +enum class AppPriority(val value: Int) { + ROOT(1), CUSTOM(2), DEFAULT(3) +} + +data class BottomSheetMenuItem( + val icon: ImageVector, + val titleRes: Int, + val onClick: () -> Unit +) + +@OptIn(ExperimentalMaterialApi::class, ExperimentalMaterial3Api::class) +@Destination +@Composable +fun SuperUserScreen(navigator: DestinationsNavigator) { + val viewModel = viewModel() + val scope = rememberCoroutineScope() + val scrollBehavior = TopAppBarDefaults.pinnedScrollBehavior(rememberTopAppBarState()) + val listState = rememberLazyListState() + val context = LocalContext.current + val snackBarHostState = remember { SnackbarHostState() } + + val bottomSheetState = rememberModalBottomSheetState(skipPartiallyExpanded = true) + var showBottomSheet by remember { mutableStateOf(false) } + + val backupLauncher = ModuleModify.rememberAllowlistBackupLauncher(context, snackBarHostState) + val restoreLauncher = ModuleModify.rememberAllowlistRestoreLauncher(context, snackBarHostState) + + LaunchedEffect(navigator) { + viewModel.search = "" + } + + LaunchedEffect(viewModel.selectedApps, viewModel.showBatchActions) { + if (viewModel.showBatchActions && viewModel.selectedApps.isEmpty()) { + viewModel.showBatchActions = false + } + } + + val filteredAndSortedAppGroups = remember( + viewModel.appGroupList, + viewModel.selectedCategory, + viewModel.currentSortType, + viewModel.search, + viewModel.showSystemApps + ) { + var groups = viewModel.appGroupList + + // 按分类筛选 + groups = when (viewModel.selectedCategory) { + AppCategory.ALL -> groups + AppCategory.ROOT -> groups.filter { it.allowSu } + AppCategory.CUSTOM -> groups.filter { !it.allowSu && it.hasCustomProfile } + AppCategory.DEFAULT -> groups.filter { !it.allowSu && !it.hasCustomProfile } + } + + // 排序 + groups.sortedWith { group1, group2 -> + val priority1 = when { + group1.allowSu -> AppPriority.ROOT + group1.hasCustomProfile -> AppPriority.CUSTOM + else -> AppPriority.DEFAULT + } + val priority2 = when { + group2.allowSu -> AppPriority.ROOT + group2.hasCustomProfile -> AppPriority.CUSTOM + else -> AppPriority.DEFAULT + } + + val priorityComparison = priority1.value.compareTo(priority2.value) + if (priorityComparison != 0) { + priorityComparison + } else { + when (viewModel.currentSortType) { + SortType.NAME_ASC -> group1.mainApp.label.lowercase() + .compareTo(group2.mainApp.label.lowercase()) + SortType.NAME_DESC -> group2.mainApp.label.lowercase() + .compareTo(group1.mainApp.label.lowercase()) + SortType.INSTALL_TIME_NEW -> group2.mainApp.packageInfo.firstInstallTime + .compareTo(group1.mainApp.packageInfo.firstInstallTime) + SortType.INSTALL_TIME_OLD -> group1.mainApp.packageInfo.firstInstallTime + .compareTo(group2.mainApp.packageInfo.firstInstallTime) + else -> group1.mainApp.label.lowercase() + .compareTo(group2.mainApp.label.lowercase()) + } + } + } + } + + val appCounts = remember(viewModel.appGroupList, viewModel.showSystemApps) { + mapOf( + AppCategory.ALL to viewModel.appGroupList.size, + AppCategory.ROOT to viewModel.appGroupList.count { it.allowSu }, + AppCategory.CUSTOM to viewModel.appGroupList.count { !it.allowSu && it.hasCustomProfile }, + AppCategory.DEFAULT to viewModel.appGroupList.count { !it.allowSu && !it.hasCustomProfile } + ) + } + + Scaffold( + topBar = { + SearchAppBar( + title = { TopBarTitle(viewModel.selectedCategory, appCounts) }, + searchText = viewModel.search, + onSearchTextChange = { viewModel.search = it }, + onClearClick = { viewModel.search = "" }, + dropdownContent = { + IconButton(onClick = { showBottomSheet = true }) { + Icon( + imageVector = Icons.Filled.MoreVert, + contentDescription = stringResource(id = R.string.settings), + ) + } + }, + scrollBehavior = scrollBehavior + ) + }, + snackbarHost = { SnackbarHost(snackBarHostState) }, + contentWindowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal), + floatingActionButton = { + SuperUserFab(viewModel, filteredAndSortedAppGroups, listState, scope) + } + ) { innerPadding -> + SuperUserContent( + innerPadding = innerPadding, + viewModel = viewModel, + filteredAndSortedAppGroups = filteredAndSortedAppGroups, + listState = listState, + scrollBehavior = scrollBehavior, + navigator = navigator, + scope = scope + ) + + if (showBottomSheet) { + SuperUserBottomSheet( + bottomSheetState = bottomSheetState, + onDismiss = { showBottomSheet = false }, + viewModel = viewModel, + appCounts = appCounts, + backupLauncher = backupLauncher, + restoreLauncher = restoreLauncher, + scope = scope, + listState = listState + ) + } + } +} + +@Composable +private fun TopBarTitle( + selectedCategory: AppCategory, + appCounts: Map +) { + Row( + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.spacedBy(8.dp) + ) { + Text(stringResource(R.string.superuser)) + + if (selectedCategory != AppCategory.ALL) { + Surface( + shape = RoundedCornerShape(12.dp), + color = MaterialTheme.colorScheme.primaryContainer, + modifier = Modifier.padding(start = 4.dp) + ) { + Row( + modifier = Modifier.padding(horizontal = 8.dp, vertical = 4.dp), + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.spacedBy(4.dp) + ) { + Text( + text = stringResource(selectedCategory.displayNameRes), + style = MaterialTheme.typography.labelSmall, + color = MaterialTheme.colorScheme.onPrimaryContainer + ) + Text( + text = "(${appCounts[selectedCategory] ?: 0})", + style = MaterialTheme.typography.labelSmall, + color = MaterialTheme.colorScheme.onPrimaryContainer + ) + } + } + } + } +} + +@Composable +private fun SuperUserFab( + viewModel: SuperUserViewModel, + filteredAndSortedAppGroups: List, + listState: androidx.compose.foundation.lazy.LazyListState, + scope: CoroutineScope +) { + VerticalExpandableFab( + menuItems = if (viewModel.showBatchActions && viewModel.selectedApps.isNotEmpty()) { + FabMenuPresets.getBatchActionMenuItems( + onCancel = { + viewModel.selectedApps = emptySet() + viewModel.showBatchActions = false + }, + onDeny = { scope.launch { viewModel.updateBatchPermissions(false) } }, + onAllow = { scope.launch { viewModel.updateBatchPermissions(true) } }, + onUnmountModules = { + scope.launch { viewModel.updateBatchPermissions( + allowSu = false, + umountModules = true + ) } + }, + onDisableUnmount = { + scope.launch { viewModel.updateBatchPermissions( + allowSu = false, + umountModules = false + ) } + } + ) + } else { + FabMenuPresets.getScrollMenuItems( + onScrollToTop = { scope.launch { listState.animateScrollToItem(0) } }, + onScrollToBottom = { + scope.launch { + val lastIndex = filteredAndSortedAppGroups.size - 1 + if (lastIndex >= 0) listState.animateScrollToItem(lastIndex) + } + } + ) + }, + mainButtonIcon = if (viewModel.showBatchActions && viewModel.selectedApps.isNotEmpty()) { + Icons.Filled.GridView + } else { + Icons.Filled.Add + }, + mainButtonExpandedIcon = Icons.Filled.Close + ) +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun SuperUserContent( + innerPadding: PaddingValues, + viewModel: SuperUserViewModel, + filteredAndSortedAppGroups: List, + listState: androidx.compose.foundation.lazy.LazyListState, + scrollBehavior: TopAppBarScrollBehavior, + navigator: DestinationsNavigator, + scope: CoroutineScope +) { + val expandedGroups = remember { mutableStateOf(setOf()) } + val density = LocalDensity.current + val targetSizePx = remember(density) { with(density) { 36.dp.roundToPx() } } + val context = LocalContext.current + + PullToRefreshBox( + modifier = Modifier.padding(innerPadding), + onRefresh = { scope.launch { viewModel.fetchAppList() } }, + isRefreshing = viewModel.isRefreshing + ) { + LazyColumn( + state = listState, + modifier = Modifier + .fillMaxSize() + .nestedScroll(scrollBehavior.nestedScrollConnection) + ) { + filteredAndSortedAppGroups.forEachIndexed { _, appGroup -> + item(key = "${appGroup.uid}-${appGroup.mainApp.packageName}") { + AppGroupItem( + expandedGroups = expandedGroups, + appGroup = appGroup, + isSelected = appGroup.packageNames.any { viewModel.selectedApps.contains(it) }, + onToggleSelection = { + appGroup.packageNames.forEach { viewModel.toggleAppSelection(it) } + }, + onClick = { + if (viewModel.showBatchActions) { + appGroup.packageNames.forEach { viewModel.toggleAppSelection(it) } + } else if (appGroup.apps.size > 1) { + expandedGroups.value = if (expandedGroups.value.contains(appGroup.uid)) { + expandedGroups.value - appGroup.uid + } else { + expandedGroups.value + appGroup.uid + } + } else { + navigator.navigate(AppProfileScreenDestination(appGroup.mainApp)) + } + }, + onLongClick = { + if (!viewModel.showBatchActions) { + viewModel.toggleBatchMode() + appGroup.packageNames.forEach { viewModel.toggleAppSelection(it) } + } + }, + viewModel = viewModel + ) + } + + if (appGroup.apps.size <= 1) return@forEachIndexed + + items(appGroup.apps, key = { "${it.packageName}-${it.uid}" }) { app -> + val painter = rememberAsyncImagePainter( + model = ImageRequest.Builder(context) + .data(app.packageInfo) + .size(targetSizePx) + .crossfade(true) + .build() + ) + + val listItemContent = remember(app.packageName, appGroup.uid) { + @Composable { + ListItem( + modifier = Modifier + .clickable { navigator.navigate(AppProfileScreenDestination(app)) } + .fillMaxWidth() + .padding(start = 10.dp), + headlineContent = { Text(app.label, style = MaterialTheme.typography.bodyMedium) }, + supportingContent = { Text(app.packageName, style = MaterialTheme.typography.bodySmall) }, + leadingContent = { + Image( + painter = painter, + contentDescription = app.label, + modifier = Modifier + .padding(4.dp) + .size(36.dp), + contentScale = ContentScale.Crop + ) + } + ) + } + } + + AnimatedVisibility( + visible = expandedGroups.value.contains(appGroup.uid), + enter = fadeIn() + expandVertically(), + exit = fadeOut() + shrinkVertically() + ) { + listItemContent() + } + } + } + + if (filteredAndSortedAppGroups.isEmpty()) { + item { + Box( + modifier = Modifier.fillMaxWidth().height(400.dp), + contentAlignment = Alignment.Center + ) { + if ((viewModel.isRefreshing || viewModel.appGroupList.isEmpty()) && viewModel.search.isEmpty()) { + LoadingAnimation(isLoading = true) + } else { + EmptyState( + selectedCategory = viewModel.selectedCategory, + isSearchEmpty = viewModel.search.isNotEmpty() + ) + } + } + } + } + } + } +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun SuperUserBottomSheet( + bottomSheetState: SheetState, + onDismiss: () -> Unit, + viewModel: SuperUserViewModel, + appCounts: Map, + backupLauncher: androidx.activity.result.ActivityResultLauncher, + restoreLauncher: androidx.activity.result.ActivityResultLauncher, + scope: CoroutineScope, + listState: androidx.compose.foundation.lazy.LazyListState +) { + val bottomSheetMenuItems = remember(viewModel.showSystemApps) { + listOf( + BottomSheetMenuItem( + icon = Icons.Filled.Refresh, + titleRes = R.string.refresh, + onClick = { + scope.launch { + viewModel.fetchAppList() + bottomSheetState.hide() + onDismiss() + } + } + ), + BottomSheetMenuItem( + icon = if (viewModel.showSystemApps) Icons.Filled.VisibilityOff else Icons.Filled.Visibility, + titleRes = if (viewModel.showSystemApps) R.string.hide_system_apps else R.string.show_system_apps, + onClick = { + viewModel.updateShowSystemApps(!viewModel.showSystemApps) + scope.launch { + kotlinx.coroutines.delay(100) + bottomSheetState.hide() + onDismiss() + } + } + ), + BottomSheetMenuItem( + icon = Icons.Filled.Save, + titleRes = R.string.backup_allowlist, + onClick = { + backupLauncher.launch(ModuleModify.createAllowlistBackupIntent()) + scope.launch { + bottomSheetState.hide() + onDismiss() + } + } + ), + BottomSheetMenuItem( + icon = Icons.Filled.RestoreFromTrash, + titleRes = R.string.restore_allowlist, + onClick = { + restoreLauncher.launch(ModuleModify.createAllowlistRestoreIntent()) + scope.launch { + bottomSheetState.hide() + onDismiss() + } + } + ) + ) + } + + ModalBottomSheet( + onDismissRequest = onDismiss, + sheetState = bottomSheetState, + dragHandle = { + Surface( + modifier = Modifier.padding(vertical = 11.dp), + color = MaterialTheme.colorScheme.onSurfaceVariant.copy(alpha = 0.4f), + shape = RoundedCornerShape(16.dp) + ) { + Box(Modifier.size(width = 32.dp, height = 4.dp)) + } + } + ) { + BottomSheetContent( + menuItems = bottomSheetMenuItems, + currentSortType = viewModel.currentSortType, + onSortTypeChanged = { newSortType -> + viewModel.updateCurrentSortType(newSortType) + scope.launch { + bottomSheetState.hide() + onDismiss() + } + }, + selectedCategory = viewModel.selectedCategory, + onCategorySelected = { newCategory -> + viewModel.updateSelectedCategory(newCategory) + scope.launch { + listState.animateScrollToItem(0) + bottomSheetState.hide() + onDismiss() + } + }, + appCounts = appCounts + ) + } +} + +@Composable +private fun BottomSheetContent( + menuItems: List, + currentSortType: SortType, + onSortTypeChanged: (SortType) -> Unit, + selectedCategory: AppCategory, + onCategorySelected: (AppCategory) -> Unit, + appCounts: Map +) { + Column( + modifier = Modifier.fillMaxWidth().padding(bottom = 24.dp) + ) { + Text( + text = stringResource(R.string.menu_options), + style = MaterialTheme.typography.headlineSmall, + fontWeight = FontWeight.Bold, + modifier = Modifier.padding(horizontal = 24.dp, vertical = 16.dp) + ) + + LazyVerticalGrid( + columns = GridCells.Fixed(4), + modifier = Modifier.fillMaxWidth(), + contentPadding = PaddingValues(horizontal = 16.dp), + horizontalArrangement = Arrangement.spacedBy(8.dp), + verticalArrangement = Arrangement.spacedBy(16.dp) + ) { + items(menuItems) { menuItem -> + BottomSheetMenuItemView(menuItem = menuItem) + } + } + + Spacer(modifier = Modifier.height(24.dp)) + HorizontalDivider(modifier = Modifier.padding(horizontal = 24.dp)) + + Text( + text = stringResource(R.string.sort_options), + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Bold, + modifier = Modifier.padding(horizontal = 24.dp, vertical = 16.dp) + ) + + LazyRow( + modifier = Modifier.fillMaxWidth(), + contentPadding = PaddingValues(horizontal = 16.dp), + horizontalArrangement = Arrangement.spacedBy(8.dp) + ) { + items(SortType.entries.toTypedArray()) { sortType -> + FilterChip( + onClick = { onSortTypeChanged(sortType) }, + label = { Text(stringResource(sortType.displayNameRes)) }, + selected = currentSortType == sortType + ) + } + } + + Spacer(modifier = Modifier.height(24.dp)) + HorizontalDivider(modifier = Modifier.padding(horizontal = 24.dp)) + + Text( + text = stringResource(R.string.app_categories), + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Bold, + modifier = Modifier.padding(horizontal = 24.dp, vertical = 16.dp) + ) + + LazyVerticalGrid( + columns = GridCells.Fixed(2), + modifier = Modifier.fillMaxWidth(), + contentPadding = PaddingValues(horizontal = 16.dp), + horizontalArrangement = Arrangement.spacedBy(8.dp), + verticalArrangement = Arrangement.spacedBy(8.dp) + ) { + items(AppCategory.entries.toTypedArray()) { category -> + CategoryChip( + category = category, + isSelected = selectedCategory == category, + onClick = { onCategorySelected(category) }, + appCount = appCounts[category] ?: 0 + ) + } + } + } +} + +@Composable +private fun CategoryChip( + category: AppCategory, + isSelected: Boolean, + onClick: () -> Unit, + appCount: Int, + modifier: Modifier = Modifier +) { + val interactionSource = remember { MutableInteractionSource() } + val isPressed by interactionSource.collectIsPressedAsState() + + val scale by animateFloatAsState( + targetValue = if (isPressed) 0.95f else 1.0f, + animationSpec = spring( + dampingRatio = Spring.DampingRatioMediumBouncy, + stiffness = Spring.StiffnessHigh + ), + label = "categoryChipScale" + ) + + Surface( + modifier = modifier + .fillMaxWidth() + .scale(scale) + .clickable(interactionSource = interactionSource, indication = null) { onClick() }, + shape = RoundedCornerShape(12.dp), + color = if (isSelected) { + MaterialTheme.colorScheme.primaryContainer + } else { + MaterialTheme.colorScheme.surfaceVariant + }, + tonalElevation = if (isSelected) 4.dp else 0.dp + ) { + Column( + modifier = Modifier.fillMaxWidth().padding(16.dp), + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.spacedBy(8.dp) + ) { + Row( + modifier = Modifier.fillMaxWidth(), + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.spacedBy(12.dp) + ) { + Text( + text = stringResource(category.displayNameRes), + style = MaterialTheme.typography.titleSmall.copy( + fontWeight = if (isSelected) FontWeight.Bold else FontWeight.Medium + ), + color = if (isSelected) { + MaterialTheme.colorScheme.onPrimaryContainer + } else { + MaterialTheme.colorScheme.onSurfaceVariant + }, + maxLines = 1, + overflow = TextOverflow.Ellipsis + ) + + AnimatedVisibility( + visible = isSelected, + enter = scaleIn() + fadeIn(), + exit = scaleOut() + fadeOut() + ) { + Icon( + imageVector = Icons.Filled.Check, + contentDescription = stringResource(R.string.selected), + tint = MaterialTheme.colorScheme.onPrimaryContainer, + modifier = Modifier.size(16.dp) + ) + } + } + + Text( + text = "$appCount apps", + style = MaterialTheme.typography.labelSmall, + color = if (isSelected) { + MaterialTheme.colorScheme.onPrimaryContainer + } else { + MaterialTheme.colorScheme.onSurfaceVariant + } + ) + } + } +} + +@Composable +private fun BottomSheetMenuItemView(menuItem: BottomSheetMenuItem) { + val interactionSource = remember { MutableInteractionSource() } + val isPressed by interactionSource.collectIsPressedAsState() + + val scale by animateFloatAsState( + targetValue = if (isPressed) 0.95f else 1.0f, + animationSpec = spring( + dampingRatio = Spring.DampingRatioMediumBouncy, + stiffness = Spring.StiffnessHigh + ), + label = "menuItemScale" + ) + + Column( + modifier = Modifier + .fillMaxWidth() + .scale(scale) + .clickable(interactionSource = interactionSource, indication = null) { menuItem.onClick() } + .padding(8.dp), + horizontalAlignment = Alignment.CenterHorizontally + ) { + Surface( + modifier = Modifier.size(48.dp), + shape = CircleShape, + color = MaterialTheme.colorScheme.primaryContainer, + contentColor = MaterialTheme.colorScheme.onPrimaryContainer + ) { + Box(contentAlignment = Alignment.Center) { + Icon( + imageVector = menuItem.icon, + contentDescription = stringResource(menuItem.titleRes), + modifier = Modifier.size(24.dp) + ) + } + } + + Spacer(modifier = Modifier.height(8.dp)) + + Text( + text = stringResource(menuItem.titleRes), + style = MaterialTheme.typography.labelSmall, + textAlign = TextAlign.Center, + maxLines = 2 + ) + } +} + +@Composable +private fun LoadingAnimation( + modifier: Modifier = Modifier, + isLoading: Boolean = true +) { + val infiniteTransition = rememberInfiniteTransition(label = "loading") + + val alpha by infiniteTransition.animateFloat( + initialValue = 0.3f, + targetValue = 1f, + animationSpec = infiniteRepeatable( + animation = tween(600, easing = FastOutSlowInEasing), + repeatMode = RepeatMode.Reverse + ), + label = "alpha" + ) + + AnimatedVisibility( + visible = isLoading, + enter = fadeIn() + scaleIn(), + exit = fadeOut() + scaleOut(), + modifier = modifier + ) { + Column( + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.Center + ) { + LinearProgressIndicator( + modifier = Modifier.width(200.dp).height(4.dp), + color = MaterialTheme.colorScheme.primary.copy(alpha = alpha), + trackColor = MaterialTheme.colorScheme.primary.copy(alpha = 0.2f) + ) + } + } +} + +@Composable +@SuppressLint("ModifierParameter") +private fun EmptyState( + selectedCategory: AppCategory, + modifier: Modifier = Modifier, + isSearchEmpty: Boolean = false +) { + Column( + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.Center, + modifier = modifier + ) { + Icon( + imageVector = if (isSearchEmpty) Icons.Filled.SearchOff else Icons.Filled.Archive, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary.copy(alpha = 0.6f), + modifier = Modifier.size(96.dp).padding(bottom = 16.dp) + ) + Text( + text = if (isSearchEmpty || selectedCategory == AppCategory.ALL) { + stringResource(R.string.no_apps_found) + } else { + stringResource(R.string.no_apps_in_category) + }, + textAlign = TextAlign.Center, + style = MaterialTheme.typography.bodyLarge, + ) + } +} + +@OptIn(ExperimentalLayoutApi::class, ExperimentalMaterial3Api::class) +@Composable +private fun AppGroupItem( + appGroup: SuperUserViewModel.AppGroup, + isSelected: Boolean, + onToggleSelection: () -> Unit, + onClick: () -> Unit, + onLongClick: () -> Unit, + viewModel: SuperUserViewModel, + expandedGroups: MutableState> +) { + val mainApp = appGroup.mainApp + + ListItem( + modifier = Modifier.pointerInput(Unit) { + detectTapGestures( + onLongPress = { onLongClick() }, + onTap = { onClick() } + ) + }, + headlineContent = { + Text(mainApp.label) + }, + supportingContent = { + Column { + val summaryText = if (appGroup.apps.size > 1) { + stringResource(R.string.group_contains_apps, appGroup.apps.size) + } else { + mainApp.packageName + } + + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceBetween + ) { + Text(summaryText) + + if (appGroup.apps.size > 1) { + Icon( + imageVector = Icons.Default.KeyboardArrowDown, + contentDescription = null, + modifier = Modifier.rotate( + animateFloatAsState( + targetValue = if (expandedGroups.value.contains(appGroup.uid)) 180f else 0f, + animationSpec = tween(200, easing = LinearOutSlowInEasing), + label = "" + ).value + ) + ) + } + } + + FlowRow(horizontalArrangement = Arrangement.spacedBy(4.dp)) { + if (appGroup.allowSu) { + LabelItem(text = "ROOT") + } else { + if (Natives.uidShouldUmount(appGroup.uid)) { + LabelItem( + text = "UMOUNT", + style = LabelItemDefaults.style.copy( + containerColor = MaterialTheme.colorScheme.secondaryContainer, + contentColor = MaterialTheme.colorScheme.onSecondaryContainer + ) + ) + } + } + if (appGroup.hasCustomProfile) { + LabelItem( + text = "CUSTOM", + style = LabelItemDefaults.style.copy( + containerColor = MaterialTheme.colorScheme.tertiaryContainer, + contentColor = MaterialTheme.colorScheme.onTertiaryContainer, + ) + ) + } else if (!appGroup.allowSu) { + LabelItem( + text = "DEFAULT", + style = LabelItemDefaults.style.copy( + containerColor = Color.Gray + ) + ) + } + if (appGroup.apps.size > 1) { + appGroup.userName?.let { + LabelItem( + text = it, + style = LabelItemDefaults.style.copy( + containerColor = MaterialTheme.colorScheme.primaryContainer, + contentColor = MaterialTheme.colorScheme.onPrimaryContainer, + ) + ) + } + } + } + } + }, + leadingContent = { + AsyncImage( + model = ImageRequest.Builder(LocalContext.current) + .data(mainApp.packageInfo) + .crossfade(true) + .build(), + contentDescription = mainApp.label, + modifier = Modifier.padding(4.dp).width(48.dp).height(48.dp) + ) + }, + trailingContent = { + AnimatedVisibility( + visible = viewModel.showBatchActions, + enter = fadeIn(animationSpec = tween(200)) + scaleIn( + animationSpec = tween(200), + initialScale = 0.6f + ), + exit = fadeOut(animationSpec = tween(200)) + scaleOut( + animationSpec = tween(200), + targetScale = 0.6f + ) + ) { + val checkboxInteractionSource = remember { MutableInteractionSource() } + val isCheckboxPressed by checkboxInteractionSource.collectIsPressedAsState() + + Row( + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.End + ) { + AnimatedVisibility( + visible = isCheckboxPressed, + enter = expandHorizontally() + fadeIn(), + exit = shrinkHorizontally() + fadeOut() + ) { + Text( + text = if (isSelected) stringResource(R.string.selected) else stringResource(R.string.select), + style = MaterialTheme.typography.labelMedium, + modifier = Modifier.padding(end = 4.dp) + ) + } + Checkbox( + checked = isSelected, + onCheckedChange = { onToggleSelection() }, + interactionSource = checkboxInteractionSource, + ) + } + } + } + ) +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Template.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Template.kt new file mode 100644 index 0000000..6aa1def --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Template.kt @@ -0,0 +1,282 @@ +package com.sukisu.ultra.ui.screen + +import android.content.ClipData +import android.content.ClipboardManager +import android.widget.Toast +import androidx.compose.foundation.background +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.foundation.lazy.items +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material.ExperimentalMaterialApi +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.filled.ArrowBack +import androidx.compose.material.icons.filled.Add +import androidx.compose.material.icons.filled.ImportExport +import androidx.compose.material.icons.filled.Sync +import androidx.compose.material3.* +import androidx.compose.material3.pulltorefresh.PullToRefreshBox +import androidx.compose.runtime.* +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.input.nestedscroll.nestedScroll +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.TextStyle +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import androidx.core.content.getSystemService +import androidx.lifecycle.compose.dropUnlessResumed +import androidx.lifecycle.viewmodel.compose.viewModel +import com.ramcosta.composedestinations.annotation.Destination +import com.ramcosta.composedestinations.annotation.RootGraph +import com.ramcosta.composedestinations.generated.destinations.TemplateEditorScreenDestination +import com.ramcosta.composedestinations.navigation.DestinationsNavigator +import com.ramcosta.composedestinations.result.ResultRecipient +import com.ramcosta.composedestinations.result.getOr +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.theme.CardConfig +import com.sukisu.ultra.ui.viewmodel.TemplateViewModel +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.launch + +/** + * @author weishu + * @date 2023/10/20. + */ + +@OptIn(ExperimentalMaterialApi::class, ExperimentalMaterial3Api::class) +@Destination +@Composable +fun AppProfileTemplateScreen( + navigator: DestinationsNavigator, + resultRecipient: ResultRecipient +) { + val viewModel = viewModel() + val scope = rememberCoroutineScope() + val scrollBehavior = TopAppBarDefaults.pinnedScrollBehavior(rememberTopAppBarState()) + + LaunchedEffect(Unit) { + if (viewModel.templateList.isEmpty()) { + viewModel.fetchTemplates() + } + } + + // handle result from TemplateEditorScreen, refresh if needed + resultRecipient.onNavResult { result -> + if (result.getOr { false }) { + scope.launch { viewModel.fetchTemplates() } + } + } + + Scaffold( + topBar = { + val context = LocalContext.current + val clipboardManager = context.getSystemService() + val showToast = fun(msg: String) { + scope.launch(Dispatchers.Main) { + Toast.makeText(context, msg, Toast.LENGTH_SHORT).show() + } + } + TopBar( + onBack = dropUnlessResumed { navigator.popBackStack() }, + onSync = { + scope.launch { viewModel.fetchTemplates(true) } + }, + onImport = { + scope.launch { + val clipboardText = clipboardManager?.primaryClip?.getItemAt(0)?.text?.toString() + if (clipboardText.isNullOrEmpty()) { + showToast(context.getString(R.string.app_profile_template_import_empty)) + return@launch + } + viewModel.importTemplates( + clipboardText, + { + showToast(context.getString(R.string.app_profile_template_import_success)) + viewModel.fetchTemplates(false) + }, + showToast + ) + } + }, + onExport = { + scope.launch { + viewModel.exportTemplates( + { + showToast(context.getString(R.string.app_profile_template_export_empty)) + } + ) { text -> + clipboardManager?.setPrimaryClip(ClipData.newPlainText("", text)) + } + } + }, + scrollBehavior = scrollBehavior + ) + }, + floatingActionButton = { + ExtendedFloatingActionButton( + onClick = { + navigator.navigate( + TemplateEditorScreenDestination( + TemplateViewModel.TemplateInfo(), + false + ) + ) + }, + icon = { Icon(Icons.Filled.Add, null) }, + text = { Text(stringResource(id = R.string.app_profile_template_create)) }, + contentColor = MaterialTheme.colorScheme.onSecondaryContainer + ) + }, + contentWindowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal) + ) { innerPadding -> + PullToRefreshBox( + modifier = Modifier.padding(innerPadding), + isRefreshing = viewModel.isRefreshing, + onRefresh = { + scope.launch { viewModel.fetchTemplates() } + } + ) { + LazyColumn( + modifier = Modifier + .fillMaxSize() + .nestedScroll(scrollBehavior.nestedScrollConnection), + contentPadding = remember { + PaddingValues(bottom = 16.dp + 56.dp + 16.dp /* Scaffold Fab Spacing + Fab container height */) + } + ) { + items(viewModel.templateList, key = { it.id }) { app -> + TemplateItem(navigator, app) + } + } + } + } +} + +@OptIn(ExperimentalLayoutApi::class) +@Composable +private fun TemplateItem( + navigator: DestinationsNavigator, + template: TemplateViewModel.TemplateInfo +) { + ListItem( + modifier = Modifier + .clickable { + navigator.navigate(TemplateEditorScreenDestination(template, !template.local)) + }, + headlineContent = { Text(template.name) }, + supportingContent = { + Column { + Text( + text = "${template.id}${if (template.author.isEmpty()) "" else "@${template.author}"}", + style = MaterialTheme.typography.bodySmall, + fontSize = MaterialTheme.typography.bodySmall.fontSize, + ) + Text(template.description) + FlowRow { + LabelText(label = "UID: ${template.uid}") + LabelText(label = "GID: ${template.gid}") + LabelText(label = template.context) + if (template.local) { + LabelText(label = "local") + } else { + LabelText(label = "remote") + } + } + } + } + ) +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun TopBar( + onBack: () -> Unit, + onSync: () -> Unit = {}, + onImport: () -> Unit = {}, + onExport: () -> Unit = {}, + scrollBehavior: TopAppBarScrollBehavior? = null +) { + val colorScheme = MaterialTheme.colorScheme + val cardColor = if (CardConfig.isCustomBackgroundEnabled) { + colorScheme.surfaceContainerLow + } else { + colorScheme.background + } + val cardAlpha = CardConfig.cardAlpha + + TopAppBar( + title = { + Text(stringResource(R.string.settings_profile_template)) + }, + colors = TopAppBarDefaults.topAppBarColors( + containerColor = cardColor.copy(alpha = cardAlpha), + scrolledContainerColor = cardColor.copy(alpha = cardAlpha) + ), + navigationIcon = { + IconButton( + onClick = onBack + ) { Icon(Icons.AutoMirrored.Filled.ArrowBack, contentDescription = null) } + }, + actions = { + IconButton(onClick = onSync) { + Icon( + Icons.Filled.Sync, + contentDescription = stringResource(id = R.string.app_profile_template_sync) + ) + } + + var showDropdown by remember { mutableStateOf(false) } + IconButton(onClick = { + showDropdown = true + }) { + Icon( + imageVector = Icons.Filled.ImportExport, + contentDescription = stringResource(id = R.string.app_profile_import_export) + ) + + DropdownMenu(expanded = showDropdown, onDismissRequest = { + showDropdown = false + }) { + DropdownMenuItem(text = { + Text(stringResource(id = R.string.app_profile_import_from_clipboard)) + }, onClick = { + onImport() + showDropdown = false + }) + DropdownMenuItem(text = { + Text(stringResource(id = R.string.app_profile_export_to_clipboard)) + }, onClick = { + onExport() + showDropdown = false + }) + } + } + }, + windowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal), + scrollBehavior = scrollBehavior + ) +} + +@Composable +fun LabelText(label: String) { + Box( + modifier = Modifier + .padding(top = 4.dp, end = 4.dp) + .background( + Color.Black, + shape = RoundedCornerShape(4.dp) + ) + ) { + Text( + text = label, + modifier = Modifier.padding(vertical = 2.dp, horizontal = 5.dp), + style = TextStyle( + fontSize = 8.sp, + color = Color.White, + ) + ) + } +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/screen/TemplateEditor.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/TemplateEditor.kt new file mode 100644 index 0000000..89e3e7b --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/TemplateEditor.kt @@ -0,0 +1,319 @@ +package com.sukisu.ultra.ui.screen + +import android.widget.Toast +import androidx.activity.compose.BackHandler +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.text.KeyboardActions +import androidx.compose.foundation.text.KeyboardOptions +import androidx.compose.foundation.verticalScroll +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.filled.ArrowBack +import androidx.compose.material.icons.filled.DeleteForever +import androidx.compose.material.icons.filled.Save +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.runtime.saveable.rememberSaveable +import androidx.compose.ui.ExperimentalComposeUiApi +import androidx.compose.ui.Modifier +import androidx.compose.ui.input.nestedscroll.nestedScroll +import androidx.compose.ui.input.pointer.pointerInteropFilter +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.platform.LocalSoftwareKeyboardController +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.input.ImeAction +import androidx.compose.ui.text.input.KeyboardType +import androidx.lifecycle.compose.dropUnlessResumed +import com.ramcosta.composedestinations.annotation.Destination +import com.ramcosta.composedestinations.annotation.RootGraph +import com.ramcosta.composedestinations.result.ResultBackNavigator +import com.sukisu.ultra.Natives +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.component.profile.RootProfileConfig +import com.sukisu.ultra.ui.util.deleteAppProfileTemplate +import com.sukisu.ultra.ui.util.getAppProfileTemplate +import com.sukisu.ultra.ui.util.setAppProfileTemplate +import com.sukisu.ultra.ui.viewmodel.TemplateViewModel +import com.sukisu.ultra.ui.viewmodel.toJSON + +/** + * @author weishu + * @date 2023/10/20. + */ +@OptIn(ExperimentalComposeUiApi::class, ExperimentalMaterial3Api::class) +@Destination +@Composable +fun TemplateEditorScreen( + navigator: ResultBackNavigator, + initialTemplate: TemplateViewModel.TemplateInfo, + readOnly: Boolean = true, +) { + + val isCreation = initialTemplate.id.isBlank() + val autoSave = !isCreation + + var template by rememberSaveable { + mutableStateOf(initialTemplate) + } + + val scrollBehavior = TopAppBarDefaults.pinnedScrollBehavior(rememberTopAppBarState()) + + BackHandler { + navigator.navigateBack(result = !readOnly) + } + + Scaffold( + topBar = { + val author = + if (initialTemplate.author.isNotEmpty()) "@${initialTemplate.author}" else "" + val readOnlyHint = if (readOnly) { + " - ${stringResource(id = R.string.app_profile_template_readonly)}" + } else { + "" + } + val titleSummary = "${initialTemplate.id}$author$readOnlyHint" + val saveTemplateFailed = stringResource(id = R.string.app_profile_template_save_failed) + val context = LocalContext.current + + TopBar( + title = if (isCreation) { + stringResource(R.string.app_profile_template_create) + } else if (readOnly) { + stringResource(R.string.app_profile_template_view) + } else { + stringResource(R.string.app_profile_template_edit) + }, + readOnly = readOnly, + summary = titleSummary, + onBack = dropUnlessResumed { navigator.navigateBack(result = !readOnly) }, + onDelete = { + if (deleteAppProfileTemplate(template.id)) { + navigator.navigateBack(result = true) + } + }, + onSave = { + if (saveTemplate(template, isCreation)) { + navigator.navigateBack(result = true) + } else { + Toast.makeText(context, saveTemplateFailed, Toast.LENGTH_SHORT).show() + } + }, + scrollBehavior = scrollBehavior + ) + }, + contentWindowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal) + ) { innerPadding -> + Column( + modifier = Modifier + .padding(innerPadding) + .nestedScroll(scrollBehavior.nestedScrollConnection) + .verticalScroll(rememberScrollState()) + .pointerInteropFilter { + // disable click and ripple if readOnly + readOnly + } + ) { + if (isCreation) { + var errorHint by remember { + mutableStateOf("") + } + val idConflictError = stringResource(id = R.string.app_profile_template_id_exist) + val idInvalidError = stringResource(id = R.string.app_profile_template_id_invalid) + TextEdit( + label = stringResource(id = R.string.app_profile_template_id), + text = template.id, + errorHint = errorHint, + isError = errorHint.isNotEmpty() + ) { value -> + errorHint = if (isTemplateExist(value)) { + idConflictError + } else if (!isValidTemplateId(value)) { + idInvalidError + } else { + "" + } + template = template.copy(id = value) + } + } + + TextEdit( + label = stringResource(id = R.string.app_profile_template_name), + text = template.name + ) { value -> + template.copy(name = value).run { + if (autoSave) { + if (!saveTemplate(this)) { + // failed + return@run + } + } + template = this + } + } + TextEdit( + label = stringResource(id = R.string.app_profile_template_description), + text = template.description + ) { value -> + template.copy(description = value).run { + if (autoSave) { + if (!saveTemplate(this)) { + // failed + return@run + } + } + template = this + } + } + + RootProfileConfig(fixedName = true, + profile = toNativeProfile(template), + onProfileChange = { + template.copy( + uid = it.uid, + gid = it.gid, + groups = it.groups, + capabilities = it.capabilities, + context = it.context, + namespace = it.namespace, + rules = it.rules.split("\n") + ).run { + if (autoSave) { + if (!saveTemplate(this)) { + // failed + return@run + } + } + template = this + } + }) + } + } +} + +fun toNativeProfile(templateInfo: TemplateViewModel.TemplateInfo): Natives.Profile { + return Natives.Profile().copy(rootTemplate = templateInfo.id, + uid = templateInfo.uid, + gid = templateInfo.gid, + groups = templateInfo.groups, + capabilities = templateInfo.capabilities, + context = templateInfo.context, + namespace = templateInfo.namespace, + rules = templateInfo.rules.joinToString("\n").ifBlank { "" }) +} + +fun isTemplateValid(template: TemplateViewModel.TemplateInfo): Boolean { + if (template.id.isBlank()) { + return false + } + + if (!isValidTemplateId(template.id)) { + return false + } + + return true +} + +fun saveTemplate(template: TemplateViewModel.TemplateInfo, isCreation: Boolean = false): Boolean { + if (!isTemplateValid(template)) { + return false + } + + if (isCreation && isTemplateExist(template.id)) { + return false + } + + val json = template.toJSON() + json.put("local", true) + return setAppProfileTemplate(template.id, json.toString()) +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun TopBar( + title: String, + readOnly: Boolean, + summary: String = "", + onBack: () -> Unit, + onDelete: () -> Unit = {}, + onSave: () -> Unit = {}, + scrollBehavior: TopAppBarScrollBehavior? = null +) { + TopAppBar( + title = { + Column { + Text(title) + if (summary.isNotBlank()) { + Text( + text = summary, + style = MaterialTheme.typography.bodyMedium, + ) + } + } + }, navigationIcon = { + IconButton( + onClick = onBack + ) { Icon(Icons.AutoMirrored.Filled.ArrowBack, contentDescription = null) } + }, actions = { + if (readOnly) { + return@TopAppBar + } + IconButton(onClick = onDelete) { + Icon( + Icons.Filled.DeleteForever, + contentDescription = stringResource(id = R.string.app_profile_template_delete) + ) + } + IconButton(onClick = onSave) { + Icon( + imageVector = Icons.Filled.Save, + contentDescription = stringResource(id = R.string.app_profile_template_save) + ) + } + }, + windowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal), + scrollBehavior = scrollBehavior + ) +} + +@Composable +private fun TextEdit( + label: String, + text: String, + errorHint: String = "", + isError: Boolean = false, + onValueChange: (String) -> Unit = {} +) { + ListItem(headlineContent = { + val keyboardController = LocalSoftwareKeyboardController.current + OutlinedTextField( + value = text, + modifier = Modifier.fillMaxWidth(), + label = { Text(label) }, + suffix = { + if (errorHint.isNotBlank()) { + Text( + text = if (isError) errorHint else "", + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.error + ) + } + }, + isError = isError, + keyboardOptions = KeyboardOptions( + keyboardType = KeyboardType.Ascii, imeAction = ImeAction.Next + ), + keyboardActions = KeyboardActions(onDone = { + keyboardController?.hide() + }), + onValueChange = onValueChange + ) + }) +} + +private fun isValidTemplateId(id: String): Boolean { + return Regex("""^([A-Za-z][A-Za-z\d_]*\.)*[A-Za-z][A-Za-z\d_]*$""").matches(id) +} + +private fun isTemplateExist(id: String): Boolean { + return getAppProfileTemplate(id).isNotBlank() +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/screen/UmountManagerScreen.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/UmountManagerScreen.kt new file mode 100644 index 0000000..a93de1d --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/UmountManagerScreen.kt @@ -0,0 +1,410 @@ +package com.sukisu.ultra.ui.screen + +import android.content.Context +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.foundation.lazy.items +import androidx.compose.foundation.text.KeyboardOptions +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.filled.ArrowBack +import androidx.compose.material.icons.filled.* +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.runtime.saveable.rememberSaveable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.input.nestedscroll.nestedScroll +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.input.KeyboardType +import androidx.compose.ui.unit.dp +import com.ramcosta.composedestinations.annotation.Destination +import com.ramcosta.composedestinations.annotation.RootGraph +import com.ramcosta.composedestinations.navigation.DestinationsNavigator +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.component.rememberConfirmDialog +import com.sukisu.ultra.ui.component.ConfirmResult +import com.sukisu.ultra.ui.theme.CardConfig +import com.sukisu.ultra.ui.theme.getCardColors +import com.sukisu.ultra.ui.theme.getCardElevation +import com.sukisu.ultra.ui.util.* +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext + +private val SPACING_SMALL = 3.dp +private val SPACING_MEDIUM = 8.dp +private val SPACING_LARGE = 16.dp + +data class UmountPathEntry( + val path: String, + val flags: Int, +) + +@OptIn(ExperimentalMaterial3Api::class) +@Destination +@Composable +fun UmountManagerScreen(navigator: DestinationsNavigator) { + val scrollBehavior = TopAppBarDefaults.pinnedScrollBehavior(rememberTopAppBarState()) + val snackBarHost = LocalSnackbarHost.current + val context = LocalContext.current + val scope = rememberCoroutineScope() + val confirmDialog = rememberConfirmDialog() + + var pathList by remember { mutableStateOf>(emptyList()) } + var isLoading by remember { mutableStateOf(false) } + var showAddDialog by remember { mutableStateOf(false) } + + fun loadPaths() { + scope.launch(Dispatchers.IO) { + isLoading = true + val result = listUmountPaths() + val entries = parseUmountPaths(result) + withContext(Dispatchers.Main) { + pathList = entries + isLoading = false + } + } + } + + LaunchedEffect(Unit) { + loadPaths() + } + + Scaffold( + topBar = { + TopAppBar( + title = { Text(stringResource(R.string.umount_path_manager)) }, + navigationIcon = { + IconButton(onClick = { navigator.navigateUp() }) { + Icon(Icons.AutoMirrored.Filled.ArrowBack, contentDescription = null) + } + }, + actions = { + IconButton(onClick = { loadPaths() }) { + Icon(Icons.Filled.Refresh, contentDescription = null) + } + }, + scrollBehavior = scrollBehavior, + colors = TopAppBarDefaults.topAppBarColors( + containerColor = MaterialTheme.colorScheme.surfaceContainerLow.copy( + alpha = CardConfig.cardAlpha + ) + ) + ) + }, + floatingActionButton = { + FloatingActionButton( + onClick = { showAddDialog = true } + ) { + Icon(Icons.Filled.Add, contentDescription = null) + } + }, + snackbarHost = { SnackbarHost(snackBarHost) } + ) { paddingValues -> + Column( + modifier = Modifier + .padding(paddingValues) + .nestedScroll(scrollBehavior.nestedScrollConnection) + ) { + Card( + modifier = Modifier + .fillMaxWidth() + .padding(SPACING_LARGE), + colors = getCardColors(MaterialTheme.colorScheme.primaryContainer), + elevation = getCardElevation() + ) { + Column( + modifier = Modifier.padding(SPACING_LARGE) + ) { + Icon( + imageVector = Icons.Filled.Info, + contentDescription = null, + tint = MaterialTheme.colorScheme.onPrimaryContainer + ) + Spacer(modifier = Modifier.height(SPACING_MEDIUM)) + Text( + text = stringResource(R.string.umount_path_restart_notice), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onPrimaryContainer + ) + } + } + + if (isLoading) { + Box( + modifier = Modifier.fillMaxSize(), + contentAlignment = Alignment.Center + ) { + CircularProgressIndicator() + } + } else { + LazyColumn( + modifier = Modifier.fillMaxSize(), + contentPadding = PaddingValues(horizontal = SPACING_LARGE, vertical = SPACING_MEDIUM), + verticalArrangement = Arrangement.spacedBy(SPACING_MEDIUM) + ) { + items(pathList, key = { it.path }) { entry -> + UmountPathCard( + entry = entry, + onDelete = { + scope.launch(Dispatchers.IO) { + val success = removeUmountPath(entry.path) + withContext(Dispatchers.Main) { + if (success) { + snackBarHost.showSnackbar( + context.getString(R.string.umount_path_removed) + ) + loadPaths() + } else { + snackBarHost.showSnackbar( + context.getString(R.string.operation_failed) + ) + } + } + } + } + ) + } + + item { + Spacer(modifier = Modifier.height(SPACING_LARGE)) + } + + item { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = SPACING_LARGE), + horizontalArrangement = Arrangement.spacedBy(SPACING_MEDIUM) + ) { + Button( + onClick = { + scope.launch { + if (confirmDialog.awaitConfirm( + title = context.getString(R.string.confirm_action), + content = context.getString(R.string.confirm_clear_custom_paths) + ) == ConfirmResult.Confirmed) { + withContext(Dispatchers.IO) { + val success = clearCustomUmountPaths() + withContext(Dispatchers.Main) { + if (success) { + snackBarHost.showSnackbar( + context.getString(R.string.custom_paths_cleared) + ) + loadPaths() + } else { + snackBarHost.showSnackbar( + context.getString(R.string.operation_failed) + ) + } + } + } + } + } + }, + modifier = Modifier.weight(1f) + ) { + Icon(Icons.Filled.DeleteForever, contentDescription = null) + Spacer(modifier = Modifier.width(SPACING_MEDIUM)) + Text(stringResource(R.string.clear_custom_paths)) + } + + Button( + onClick = { + scope.launch(Dispatchers.IO) { + val success = applyUmountConfigToKernel() + withContext(Dispatchers.Main) { + if (success) { + snackBarHost.showSnackbar( + context.getString(R.string.config_applied) + ) + } else { + snackBarHost.showSnackbar( + context.getString(R.string.operation_failed) + ) + } + } + } + }, + modifier = Modifier.weight(1f) + ) { + Icon(Icons.Filled.Check, contentDescription = null) + Spacer(modifier = Modifier.width(SPACING_MEDIUM)) + Text(stringResource(R.string.apply_config)) + } + } + } + } + } + } + + if (showAddDialog) { + AddUmountPathDialog( + onDismiss = { showAddDialog = false }, + onConfirm = { path, flags -> + showAddDialog = false + + scope.launch(Dispatchers.IO) { + val success = addUmountPath(path, flags) + withContext(Dispatchers.Main) { + if (success) { + saveUmountConfig() + snackBarHost.showSnackbar( + context.getString(R.string.umount_path_added) + ) + loadPaths() + } else { + snackBarHost.showSnackbar( + context.getString(R.string.operation_failed) + ) + } + } + } + } + ) + } + } +} + +@Composable +fun UmountPathCard( + entry: UmountPathEntry, + onDelete: () -> Unit +) { + val confirmDialog = rememberConfirmDialog() + val scope = rememberCoroutineScope() + val context = LocalContext.current + + Card( + modifier = Modifier.fillMaxWidth(), + colors = getCardColors(MaterialTheme.colorScheme.surfaceContainerLow), + elevation = getCardElevation() + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(SPACING_LARGE), + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + imageVector = Icons.Filled.Folder, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier.size(24.dp) + ) + + Spacer(modifier = Modifier.width(SPACING_LARGE)) + + Column(modifier = Modifier.weight(1f)) { + Text( + text = entry.path, + style = MaterialTheme.typography.titleMedium + ) + Spacer(modifier = Modifier.height(SPACING_SMALL)) + Text( + text = buildString { + append(context.getString(R.string.flags)) + append(": ") + append(entry.flags.toUmountFlagName(context)) + }, + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + IconButton( + onClick = { + scope.launch { + if (confirmDialog.awaitConfirm( + title = context.getString(R.string.confirm_delete), + content = context.getString(R.string.confirm_delete_umount_path, entry.path) + ) == ConfirmResult.Confirmed) { + onDelete() + } + } + } + ) { + Icon( + imageVector = Icons.Filled.Delete, + contentDescription = null, + tint = MaterialTheme.colorScheme.error + ) + } + } + } +} + +@Composable +fun AddUmountPathDialog( + onDismiss: () -> Unit, + onConfirm: (String, Int) -> Unit +) { + var path by rememberSaveable { mutableStateOf("") } + var flags by rememberSaveable { mutableStateOf("-1") } + + AlertDialog( + onDismissRequest = onDismiss, + title = { Text(stringResource(R.string.add_umount_path)) }, + text = { + Column { + OutlinedTextField( + value = path, + onValueChange = { path = it }, + label = { Text(stringResource(R.string.mount_path)) }, + modifier = Modifier.fillMaxWidth(), + singleLine = true + ) + + Spacer(modifier = Modifier.height(SPACING_MEDIUM)) + + OutlinedTextField( + value = flags, + onValueChange = { flags = it }, + label = { Text(stringResource(R.string.umount_flags)) }, + modifier = Modifier.fillMaxWidth(), + singleLine = true, + keyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Number), + supportingText = { Text(stringResource(R.string.umount_flags_hint)) } + ) + } + }, + confirmButton = { + TextButton( + onClick = { + val flagsInt = flags.toIntOrNull() ?: -1 + onConfirm(path, flagsInt) + }, + enabled = path.isNotBlank() + ) { + Text(stringResource(android.R.string.ok)) + } + }, + dismissButton = { + TextButton(onClick = onDismiss) { + Text(stringResource(android.R.string.cancel)) + } + } + ) +} + +private fun parseUmountPaths(output: String): List { + val lines = output.lines().filter { it.isNotBlank() } + if (lines.size < 2) return emptyList() + + return lines.drop(2).mapNotNull { line -> + val parts = line.trim().split(Regex("\\s+")) + if (parts.size >= 2) { + UmountPathEntry( + path = parts[0], + flags = parts[1].toIntOrNull() ?: -1 + ) + } else null + } +} + +private fun Int.toUmountFlagName(context: Context): String { + return when (this) { + -1 -> context.getString(R.string.mnt_detach) + else -> this.toString() + } +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/susfs/SuSFSConfig.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/susfs/SuSFSConfig.kt new file mode 100644 index 0000000..00353b2 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/susfs/SuSFSConfig.kt @@ -0,0 +1,2211 @@ +package com.sukisu.ultra.ui.susfs + +import android.annotation.SuppressLint +import android.content.Context +import androidx.activity.compose.rememberLauncherForActivityResult +import androidx.activity.result.contract.ActivityResultContracts +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.foundation.verticalScroll +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.filled.ArrowBack +import androidx.compose.material.icons.filled.* +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.text.style.TextOverflow +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import com.ramcosta.composedestinations.annotation.Destination +import com.ramcosta.composedestinations.annotation.RootGraph +import com.ramcosta.composedestinations.navigation.DestinationsNavigator +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.susfs.component.* +import com.sukisu.ultra.ui.theme.CardConfig +import com.sukisu.ultra.ui.susfs.util.SuSFSManager +import com.sukisu.ultra.ui.susfs.util.SuSFSManager.isSusVersion158 +import com.sukisu.ultra.ui.susfs.util.SuSFSManager.isSusVersion159 +import com.sukisu.ultra.ui.susfs.util.SuSFSManager.isSusVersion1512 +import com.sukisu.ultra.ui.util.getSuSFSVersion +import com.sukisu.ultra.ui.util.isAbDevice +import kotlinx.coroutines.launch +import java.io.File +import java.text.SimpleDateFormat +import java.util.* + +/** + * 标签页枚举类 + */ +enum class SuSFSTab(val displayNameRes: Int) { + BASIC_SETTINGS(R.string.susfs_tab_basic_settings), + SUS_PATHS(R.string.susfs_tab_sus_paths), + SUS_LOOP_PATHS(R.string.susfs_tab_sus_loop_paths), + SUS_MAPS(R.string.susfs_tab_sus_maps), + SUS_MOUNTS(R.string.susfs_tab_sus_mounts), + TRY_UMOUNT(R.string.susfs_tab_try_umount), + KSTAT_CONFIG(R.string.susfs_tab_kstat_config), + PATH_SETTINGS(R.string.susfs_tab_path_settings), + ENABLED_FEATURES(R.string.susfs_tab_enabled_features); + + companion object { + fun getAllTabs(isSusVersion158: Boolean, isSusVersion159: Boolean, isSusVersion1512: Boolean): List { + return when { + isSusVersion1512 -> entries.toList() + isSusVersion159 -> entries.filter { it != SUS_MAPS} + isSusVersion158 -> entries.filter { it != SUS_LOOP_PATHS && it != SUS_MAPS } + else -> entries.filter { it != PATH_SETTINGS && it != SUS_LOOP_PATHS && it != SUS_MAPS } + } + } + } +} + +/** + * SuSFS配置界面 + */ +@SuppressLint("SdCardPath", "AutoboxingStateCreation") +@OptIn(ExperimentalMaterial3Api::class) +@Destination +@Composable +fun SuSFSConfigScreen( + navigator: DestinationsNavigator +) { + val context = LocalContext.current + val coroutineScope = rememberCoroutineScope() + + var selectedTab by remember { mutableStateOf(SuSFSTab.BASIC_SETTINGS) } + var unameValue by remember { mutableStateOf("") } + var buildTimeValue by remember { mutableStateOf("") } + var isLoading by remember { mutableStateOf(false) } + var showConfirmReset by remember { mutableStateOf(false) } + var autoStartEnabled by remember { mutableStateOf(false) } + var executeInPostFsData by remember { mutableStateOf(false) } + var enableHideBl by remember { mutableStateOf(true) } + var enableCleanupResidue by remember { mutableStateOf(false) } + var enableAvcLogSpoofing by remember { mutableStateOf(false) } + + // 槽位信息相关状态 + var slotInfoList by remember { mutableStateOf(emptyList()) } + var currentActiveSlot by remember { mutableStateOf("") } + var isLoadingSlotInfo by remember { mutableStateOf(false) } + var showSlotInfoDialog by remember { mutableStateOf(false) } + + // 路径管理相关状态 + var susPaths by remember { mutableStateOf(emptySet()) } + var susLoopPaths by remember { mutableStateOf(emptySet()) } + var susMaps by remember { mutableStateOf(emptySet()) } + var susMounts by remember { mutableStateOf(emptySet()) } + var tryUmounts by remember { mutableStateOf(emptySet()) } + var androidDataPath by remember { mutableStateOf("") } + var sdcardPath by remember { mutableStateOf("") } + + // SUS挂载隐藏控制状态 + var hideSusMountsForAllProcs by remember { mutableStateOf(true) } + + var umountForZygoteIsoService by remember { mutableStateOf(false) } + + // Kstat配置相关状态 + var kstatConfigs by remember { mutableStateOf(emptySet()) } + var addKstatPaths by remember { mutableStateOf(emptySet()) } + + // 启用功能状态相关 + var enabledFeatures by remember { mutableStateOf(emptyList()) } + var isLoadingFeatures by remember { mutableStateOf(false) } + + // 应用列表相关状态 + var installedApps by remember { mutableStateOf(emptyList()) } + + // 对话框状态 + var showAddPathDialog by remember { mutableStateOf(false) } + var showAddLoopPathDialog by remember { mutableStateOf(false) } + var showAddSusMapDialog by remember { mutableStateOf(false) } + var showAddAppPathDialog by remember { mutableStateOf(false) } + var showAddMountDialog by remember { mutableStateOf(false) } + var showAddUmountDialog by remember { mutableStateOf(false) } + var showAddKstatStaticallyDialog by remember { mutableStateOf(false) } + var showAddKstatDialog by remember { mutableStateOf(false) } + + // 编辑状态 + var editingPath by remember { mutableStateOf(null) } + var editingLoopPath by remember { mutableStateOf(null) } + var editingSusMap by remember { mutableStateOf(null) } + var editingMount by remember { mutableStateOf(null) } + var editingUmount by remember { mutableStateOf(null) } + var editingKstatConfig by remember { mutableStateOf(null) } + var editingKstatPath by remember { mutableStateOf(null) } + + // 重置确认对话框状态 + var showResetPathsDialog by remember { mutableStateOf(false) } + var showResetLoopPathsDialog by remember { mutableStateOf(false) } + var showResetSusMapsDialog by remember { mutableStateOf(false) } + var showResetMountsDialog by remember { mutableStateOf(false) } + var showResetUmountsDialog by remember { mutableStateOf(false) } + var showResetKstatDialog by remember { mutableStateOf(false) } + + // 备份还原相关状态 + var showBackupDialog by remember { mutableStateOf(false) } + var showRestoreDialog by remember { mutableStateOf(false) } + var showRestoreConfirmDialog by remember { mutableStateOf(false) } + var selectedBackupFile by remember { mutableStateOf(null) } + var backupInfo by remember { mutableStateOf(null) } + + var isNavigating by remember { mutableStateOf(false) } + + val allTabs = SuSFSTab.getAllTabs(isSusVersion158(), isSusVersion159(), isSusVersion1512()) + + // 实时判断是否可以启用开机自启动 + val canEnableAutoStart by remember { + derivedStateOf { + SuSFSManager.hasConfigurationForAutoStart(context) + } + } + + var showVersionMismatchDialog by remember { mutableStateOf(false) } + + if (showVersionMismatchDialog) { + AlertDialog( + onDismissRequest = { showVersionMismatchDialog = false }, + title = { + Text( + text = stringResource(R.string.warning), + style = MaterialTheme.typography.headlineSmall, + fontWeight = FontWeight.Bold + ) + }, + text = { + Text( + stringResource( + R.string.susfs_version_mismatch, + try { getSuSFSVersion() } catch (_: Exception) { "unknown" }, + SuSFSManager.MAX_SUSFS_VERSION + ) + ) + }, + confirmButton = { + TextButton( + onClick = { showVersionMismatchDialog = false }, + modifier = Modifier.padding(8.dp) + ) { + Text(stringResource(R.string.confirm)) + } + } + ) + } + + // 文件选择器 + val backupFileLauncher = rememberLauncherForActivityResult( + contract = ActivityResultContracts.CreateDocument("application/json") + ) { uri -> + uri?.let { fileUri -> + val fileName = SuSFSManager.getDefaultBackupFileName() + val tempFile = File(context.cacheDir, fileName) + coroutineScope.launch { + isLoading = true + val success = SuSFSManager.createBackup(context, tempFile.absolutePath) + if (success) { + try { + context.contentResolver.openOutputStream(fileUri)?.use { outputStream -> + tempFile.inputStream().use { inputStream -> + inputStream.copyTo(outputStream) + } + } + } catch (e: Exception) { + e.printStackTrace() + } + tempFile.delete() + } + isLoading = false + showBackupDialog = false + } + } + } + + val restoreFileLauncher = rememberLauncherForActivityResult( + contract = ActivityResultContracts.OpenDocument() + ) { uri -> + uri?.let { fileUri -> + coroutineScope.launch { + try { + val tempFile = File(context.cacheDir, "temp_restore.susfs_backup") + context.contentResolver.openInputStream(fileUri)?.use { inputStream -> + tempFile.outputStream().use { outputStream -> + inputStream.copyTo(outputStream) + } + } + + // 验证备份文件 + val backup = SuSFSManager.validateBackupFile(tempFile.absolutePath) + if (backup != null) { + selectedBackupFile = tempFile.absolutePath + backupInfo = backup + showRestoreConfirmDialog = true + } + tempFile.deleteOnExit() + } catch (e: Exception) { + e.printStackTrace() + } + showRestoreDialog = false + } + } + } + + // 加载启用功能状态 + fun loadEnabledFeatures() { + coroutineScope.launch { + isLoadingFeatures = true + enabledFeatures = SuSFSManager.getEnabledFeatures(context) + isLoadingFeatures = false + } + } + + // 加载应用列表 + fun loadInstalledApps() { + coroutineScope.launch { + installedApps = SuSFSManager.getInstalledApps() + } + } + + // 加载槽位信息 + fun loadSlotInfo() { + coroutineScope.launch { + isLoadingSlotInfo = true + slotInfoList = SuSFSManager.getCurrentSlotInfo() + currentActiveSlot = SuSFSManager.getCurrentActiveSlot() + isLoadingSlotInfo = false + } + } + + // 加载当前配置 + LaunchedEffect(Unit) { + coroutineScope.launch { + try { + val version = getSuSFSVersion() + val binaryName = "ksu_susfs_${version.removePrefix("v")}" + + val isBinaryAvailable = try { + context.assets.open(binaryName).use { true } + } catch (_: Exception) { false } + + if (!isBinaryAvailable) { + showVersionMismatchDialog = true + } + } catch (_: Exception) { + } + + unameValue = SuSFSManager.getUnameValue(context) + buildTimeValue = SuSFSManager.getBuildTimeValue(context) + autoStartEnabled = SuSFSManager.isAutoStartEnabled(context) + executeInPostFsData = SuSFSManager.getExecuteInPostFsData(context) + susPaths = SuSFSManager.getSusPaths(context) + susLoopPaths = SuSFSManager.getSusLoopPaths(context) + susMaps = SuSFSManager.getSusMaps(context) + susMounts = SuSFSManager.getSusMounts(context) + tryUmounts = SuSFSManager.getTryUmounts(context) + androidDataPath = SuSFSManager.getAndroidDataPath(context) + sdcardPath = SuSFSManager.getSdcardPath(context) + kstatConfigs = SuSFSManager.getKstatConfigs(context) + addKstatPaths = SuSFSManager.getAddKstatPaths(context) + hideSusMountsForAllProcs = SuSFSManager.getHideSusMountsForAllProcs(context) + enableHideBl = SuSFSManager.getEnableHideBl(context) + enableCleanupResidue = SuSFSManager.getEnableCleanupResidue(context) + umountForZygoteIsoService = SuSFSManager.getUmountForZygoteIsoService(context) + enableAvcLogSpoofing = SuSFSManager.getEnableAvcLogSpoofing(context) + + loadSlotInfo() + } + } + + // 当切换到启用功能状态标签页时加载数据 + LaunchedEffect(selectedTab) { + if (selectedTab == SuSFSTab.ENABLED_FEATURES) { + loadEnabledFeatures() + } + } + + // 当配置变化时,自动调整开机自启动状态 + LaunchedEffect(canEnableAutoStart) { + if (!canEnableAutoStart && autoStartEnabled) { + autoStartEnabled = false + SuSFSManager.configureAutoStart(context, false) + } + } + + // 备份对话框 + if (showBackupDialog) { + AlertDialog( + onDismissRequest = { showBackupDialog = false }, + title = { + Text( + text = stringResource(R.string.susfs_backup_title), + style = MaterialTheme.typography.titleLarge, + fontWeight = FontWeight.Bold + ) + }, + text = { + Text(stringResource(R.string.susfs_backup_description)) + }, + confirmButton = { + Button( + onClick = { + val dateFormat = SimpleDateFormat("yyyyMMdd_HHmmss", Locale.getDefault()) + val timestamp = dateFormat.format(Date()) + backupFileLauncher.launch("SuSFS_Config_$timestamp.susfs_backup") + }, + enabled = !isLoading, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(R.string.susfs_backup_create)) + } + }, + dismissButton = { + TextButton( + onClick = { showBackupDialog = false }, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(R.string.cancel)) + } + }, + shape = RoundedCornerShape(12.dp) + ) + } + + // 还原对话框 + if (showRestoreDialog) { + AlertDialog( + onDismissRequest = { showRestoreDialog = false }, + title = { + Text( + text = stringResource(R.string.susfs_restore_title), + style = MaterialTheme.typography.titleLarge, + fontWeight = FontWeight.Bold + ) + }, + text = { + Text(stringResource(R.string.susfs_restore_description)) + }, + confirmButton = { + Button( + onClick = { + restoreFileLauncher.launch(arrayOf("application/json", "*/*")) + }, + enabled = !isLoading, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(R.string.susfs_restore_select_file)) + } + }, + dismissButton = { + TextButton( + onClick = { showRestoreDialog = false }, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(R.string.cancel)) + } + }, + shape = RoundedCornerShape(12.dp) + ) + } + + // 还原确认对话框 + if (showRestoreConfirmDialog && backupInfo != null) { + AlertDialog( + onDismissRequest = { + showRestoreConfirmDialog = false + selectedBackupFile = null + backupInfo = null + }, + title = { + Text( + text = stringResource(R.string.susfs_restore_confirm_title), + style = MaterialTheme.typography.titleLarge, + fontWeight = FontWeight.Bold + ) + }, + text = { + Column( + verticalArrangement = Arrangement.spacedBy(8.dp) + ) { + Text(stringResource(R.string.susfs_restore_confirm_description)) + + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surfaceVariant.copy(alpha = 0.3f) + ), + shape = RoundedCornerShape(8.dp) + ) { + Column( + modifier = Modifier.padding(12.dp), + verticalArrangement = Arrangement.spacedBy(4.dp) + ) { + val dateFormat = SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.getDefault()) + Text( + text = stringResource(R.string.susfs_backup_info_date, + dateFormat.format(Date(backupInfo!!.timestamp))), + style = MaterialTheme.typography.bodyMedium + ) + Text( + text = stringResource(R.string.susfs_backup_info_device, backupInfo!!.deviceInfo), + style = MaterialTheme.typography.bodyMedium + ) + Text( + text = stringResource(R.string.susfs_backup_info_version, backupInfo!!.version), + style = MaterialTheme.typography.bodyMedium + ) + } + } + } + }, + confirmButton = { + Button( + onClick = { + selectedBackupFile?.let { filePath -> + coroutineScope.launch { + isLoading = true + val success = SuSFSManager.restoreFromBackup(context, filePath) + if (success) { + // 重新加载所有配置 + unameValue = SuSFSManager.getUnameValue(context) + buildTimeValue = SuSFSManager.getBuildTimeValue(context) + autoStartEnabled = SuSFSManager.isAutoStartEnabled(context) + executeInPostFsData = SuSFSManager.getExecuteInPostFsData(context) + susPaths = SuSFSManager.getSusPaths(context) + susLoopPaths = SuSFSManager.getSusLoopPaths(context) + susMaps = SuSFSManager.getSusMaps(context) + susMounts = SuSFSManager.getSusMounts(context) + tryUmounts = SuSFSManager.getTryUmounts(context) + androidDataPath = SuSFSManager.getAndroidDataPath(context) + sdcardPath = SuSFSManager.getSdcardPath(context) + kstatConfigs = SuSFSManager.getKstatConfigs(context) + addKstatPaths = SuSFSManager.getAddKstatPaths(context) + hideSusMountsForAllProcs = SuSFSManager.getHideSusMountsForAllProcs(context) + enableHideBl = SuSFSManager.getEnableHideBl(context) + enableCleanupResidue = SuSFSManager.getEnableCleanupResidue(context) + umountForZygoteIsoService = SuSFSManager.getUmountForZygoteIsoService(context) + enableAvcLogSpoofing = SuSFSManager.getEnableAvcLogSpoofing(context) + } + isLoading = false + showRestoreConfirmDialog = false + selectedBackupFile = null + backupInfo = null + } + } + }, + enabled = !isLoading, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(R.string.susfs_restore_confirm)) + } + }, + dismissButton = { + TextButton( + onClick = { + showRestoreConfirmDialog = false + selectedBackupFile = null + backupInfo = null + }, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(R.string.cancel)) + } + }, + shape = RoundedCornerShape(12.dp) + ) + } + + // 槽位信息对话框 + SlotInfoDialog( + showDialog = showSlotInfoDialog, + onDismiss = { showSlotInfoDialog = false }, + slotInfoList = slotInfoList, + currentActiveSlot = currentActiveSlot, + isLoadingSlotInfo = isLoadingSlotInfo, + onRefresh = { loadSlotInfo() }, + onUseUname = { uname -> + unameValue = uname + showSlotInfoDialog = false + }, + onUseBuildTime = { buildTime -> + buildTimeValue = buildTime + showSlotInfoDialog = false + } + ) + + // 各种对话框 + AddPathDialog( + showDialog = showAddPathDialog, + onDismiss = { + showAddPathDialog = false + editingPath = null + }, + onConfirm = { path -> + coroutineScope.launch { + isLoading = true + val success = if (editingPath != null) { + SuSFSManager.editSusPath(context, editingPath!!, path) + } else { + SuSFSManager.addSusPath(context, path) + } + if (success) { + susPaths = SuSFSManager.getSusPaths(context) + } + isLoading = false + showAddPathDialog = false + editingPath = null + } + }, + isLoading = isLoading, + titleRes = if (editingPath != null) R.string.susfs_edit_sus_path else R.string.susfs_add_sus_path, + labelRes = R.string.susfs_path_label, + placeholderRes = R.string.susfs_path_placeholder, + initialValue = editingPath ?: "" + ) + + AddPathDialog( + showDialog = showAddLoopPathDialog, + onDismiss = { + showAddLoopPathDialog = false + editingLoopPath = null + }, + onConfirm = { path -> + coroutineScope.launch { + isLoading = true + val success = if (editingLoopPath != null) { + SuSFSManager.editSusLoopPath(context, editingLoopPath!!, path) + } else { + SuSFSManager.addSusLoopPath(context, path) + } + if (success) { + susLoopPaths = SuSFSManager.getSusLoopPaths(context) + } + isLoading = false + showAddLoopPathDialog = false + editingLoopPath = null + } + }, + isLoading = isLoading, + titleRes = if (editingLoopPath != null) R.string.susfs_edit_sus_loop_path else R.string.susfs_add_sus_loop_path, + labelRes = R.string.susfs_loop_path_label, + placeholderRes = R.string.susfs_loop_path_placeholder, + initialValue = editingLoopPath ?: "" + ) + + AddPathDialog( + showDialog = showAddSusMapDialog, + onDismiss = { + showAddSusMapDialog = false + editingSusMap = null + }, + onConfirm = { path -> + coroutineScope.launch { + isLoading = true + val success = if (editingSusMap != null) { + SuSFSManager.editSusMap(context, editingSusMap!!, path) + } else { + SuSFSManager.addSusMap(context, path) + } + if (success) { + susMaps = SuSFSManager.getSusMaps(context) + } + isLoading = false + showAddSusMapDialog = false + editingSusMap = null + } + }, + isLoading = isLoading, + titleRes = if (editingSusMap != null) R.string.susfs_edit_sus_map else R.string.susfs_add_sus_map, + labelRes = R.string.susfs_sus_map_label, + placeholderRes = R.string.susfs_sus_map_placeholder, + initialValue = editingSusMap ?: "" + ) + + AddAppPathDialog( + showDialog = showAddAppPathDialog, + onDismiss = { showAddAppPathDialog = false }, + onConfirm = { packageNames -> + coroutineScope.launch { + isLoading = true + var successCount = 0 + packageNames.forEach { packageName -> + if (SuSFSManager.addAppPaths(context, packageName)) { + successCount++ + } + } + if (successCount > 0) { + susPaths = SuSFSManager.getSusPaths(context) + } + isLoading = false + showAddAppPathDialog = false + } + }, + isLoading = isLoading, + apps = installedApps, + onLoadApps = { loadInstalledApps() }, + existingSusPaths = susPaths + ) + + AddPathDialog( + showDialog = showAddMountDialog, + onDismiss = { + showAddMountDialog = false + editingMount = null + }, + onConfirm = { mount -> + coroutineScope.launch { + isLoading = true + val success = if (editingMount != null) { + SuSFSManager.editSusMount(context, editingMount!!, mount) + } else { + SuSFSManager.addSusMount(context, mount) + } + if (success) { + susMounts = SuSFSManager.getSusMounts(context) + } + isLoading = false + showAddMountDialog = false + editingMount = null + } + }, + isLoading = isLoading, + titleRes = if (editingMount != null) R.string.susfs_edit_sus_mount else R.string.susfs_add_sus_mount, + labelRes = R.string.susfs_mount_path_label, + placeholderRes = R.string.susfs_path_placeholder, + initialValue = editingMount ?: "" + ) + + AddTryUmountDialog( + showDialog = showAddUmountDialog, + onDismiss = { + showAddUmountDialog = false + editingUmount = null + }, + onConfirm = { path, mode -> + coroutineScope.launch { + isLoading = true + val success = if (editingUmount != null) { + SuSFSManager.editTryUmount(context, editingUmount!!, path, mode) + } else { + SuSFSManager.addTryUmount(context, path, mode) + } + if (success) { + tryUmounts = SuSFSManager.getTryUmounts(context) + } + isLoading = false + showAddUmountDialog = false + editingUmount = null + } + }, + isLoading = isLoading, + initialPath = editingUmount?.split("|")?.get(0) ?: "", + initialMode = editingUmount?.split("|")?.get(1)?.toIntOrNull() ?: 0 + ) + + AddKstatStaticallyDialog( + showDialog = showAddKstatStaticallyDialog, + onDismiss = { + showAddKstatStaticallyDialog = false + editingKstatConfig = null + }, + onConfirm = { path, ino, dev, nlink, size, atime, atimeNsec, mtime, mtimeNsec, ctime, ctimeNsec, blocks, blksize -> + coroutineScope.launch { + isLoading = true + val success = if (editingKstatConfig != null) { + SuSFSManager.editKstatConfig( + context, + editingKstatConfig!!, + path, + ino, + dev, + nlink, + size, + atime, + atimeNsec, + mtime, + mtimeNsec, + ctime, + ctimeNsec, + blocks, + blksize + ) + } else { + SuSFSManager.addKstatStatically( + context, path, ino, dev, nlink, size, atime, atimeNsec, + mtime, mtimeNsec, ctime, ctimeNsec, blocks, blksize + ) + } + if (success) { + kstatConfigs = SuSFSManager.getKstatConfigs(context) + } + isLoading = false + showAddKstatStaticallyDialog = false + editingKstatConfig = null + } + }, + isLoading = isLoading, + initialConfig = editingKstatConfig ?: "" + ) + + AddPathDialog( + showDialog = showAddKstatDialog, + onDismiss = { + showAddKstatDialog = false + editingKstatPath = null + }, + onConfirm = { path -> + coroutineScope.launch { + isLoading = true + val success = if (editingKstatPath != null) { + SuSFSManager.editAddKstat(context, editingKstatPath!!, path) + } else { + SuSFSManager.addKstat(context, path) + } + if (success) { + addKstatPaths = SuSFSManager.getAddKstatPaths(context) + } + isLoading = false + showAddKstatDialog = false + editingKstatPath = null + } + }, + isLoading = isLoading, + titleRes = if (editingKstatPath != null) R.string.edit_kstat_path_title else R.string.add_kstat_path_title, + labelRes = R.string.file_or_directory_path_label, + placeholderRes = R.string.susfs_path_placeholder, + initialValue = editingKstatPath ?: "" + ) + + // 确认对话框 + ConfirmDialog( + showDialog = showConfirmReset, + onDismiss = { showConfirmReset = false }, + onConfirm = { + showConfirmReset = false + coroutineScope.launch { + isLoading = true + if (SuSFSManager.resetToDefault(context)) { + unameValue = "default" + buildTimeValue = "default" + autoStartEnabled = false + } + isLoading = false + } + }, + titleRes = R.string.susfs_reset_confirm_title, + messageRes = R.string.susfs_reset_confirm_title, + isLoading = isLoading, + isDestructive = true + ) + + // 重置对话框 + ConfirmDialog( + showDialog = showResetPathsDialog, + onDismiss = { showResetPathsDialog = false }, + onConfirm = { + coroutineScope.launch { + isLoading = true + SuSFSManager.saveSusPaths(context, emptySet()) + susPaths = emptySet() + if (SuSFSManager.isAutoStartEnabled(context)) { + SuSFSManager.configureAutoStart(context, true) + } + isLoading = false + showResetPathsDialog = false + } + }, + titleRes = R.string.susfs_reset_paths_title, + messageRes = R.string.susfs_reset_paths_message, + isLoading = isLoading, + isDestructive = true + ) + + ConfirmDialog( + showDialog = showResetLoopPathsDialog, + onDismiss = { showResetLoopPathsDialog = false }, + onConfirm = { + coroutineScope.launch { + isLoading = true + SuSFSManager.saveSusLoopPaths(context, emptySet()) + susLoopPaths = emptySet() + if (SuSFSManager.isAutoStartEnabled(context)) { + SuSFSManager.configureAutoStart(context, true) + } + isLoading = false + showResetLoopPathsDialog = false + } + }, + titleRes = R.string.susfs_reset_loop_paths_title, + messageRes = R.string.susfs_reset_loop_paths_message, + isLoading = isLoading, + isDestructive = true + ) + + ConfirmDialog( + showDialog = showResetSusMapsDialog, + onDismiss = { showResetSusMapsDialog = false }, + onConfirm = { + coroutineScope.launch { + isLoading = true + SuSFSManager.saveSusMaps(context, emptySet()) + susMaps = emptySet() + if (SuSFSManager.isAutoStartEnabled(context)) { + SuSFSManager.configureAutoStart(context, true) + } + isLoading = false + showResetSusMapsDialog = false + } + }, + titleRes = R.string.susfs_reset_sus_maps_title, + messageRes = R.string.susfs_reset_sus_maps_message, + isLoading = isLoading, + isDestructive = true + ) + + ConfirmDialog( + showDialog = showResetMountsDialog, + onDismiss = { showResetMountsDialog = false }, + onConfirm = { + coroutineScope.launch { + isLoading = true + SuSFSManager.saveSusMounts(context, emptySet()) + susMounts = emptySet() + if (SuSFSManager.isAutoStartEnabled(context)) { + SuSFSManager.configureAutoStart(context, true) + } + isLoading = false + showResetMountsDialog = false + } + }, + titleRes = R.string.susfs_reset_mounts_title, + messageRes = R.string.susfs_reset_mounts_message, + isLoading = isLoading, + isDestructive = true + ) + + ConfirmDialog( + showDialog = showResetUmountsDialog, + onDismiss = { showResetUmountsDialog = false }, + onConfirm = { + coroutineScope.launch { + isLoading = true + SuSFSManager.saveTryUmounts(context, emptySet()) + tryUmounts = emptySet() + if (SuSFSManager.isAutoStartEnabled(context)) { + SuSFSManager.configureAutoStart(context, true) + } + isLoading = false + showResetUmountsDialog = false + } + }, + titleRes = R.string.susfs_reset_umounts_title, + messageRes = R.string.susfs_reset_umounts_message, + isLoading = isLoading, + isDestructive = true + ) + + ConfirmDialog( + showDialog = showResetKstatDialog, + onDismiss = { showResetKstatDialog = false }, + onConfirm = { + coroutineScope.launch { + isLoading = true + SuSFSManager.saveKstatConfigs(context, emptySet()) + SuSFSManager.saveAddKstatPaths(context, emptySet()) + kstatConfigs = emptySet() + addKstatPaths = emptySet() + if (SuSFSManager.isAutoStartEnabled(context)) { + SuSFSManager.configureAutoStart(context, true) + } + isLoading = false + showResetKstatDialog = false + } + }, + titleRes = R.string.reset_kstat_config_title, + messageRes = R.string.reset_kstat_config_message, + isLoading = isLoading, + isDestructive = true + ) + + // 主界面布局 + Scaffold( + topBar = { + CenterAlignedTopAppBar( + title = { + Row( + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + imageVector = Icons.Default.Settings, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier.size(20.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text( + text = stringResource(R.string.susfs_config_title), + style = MaterialTheme.typography.titleLarge, + fontWeight = FontWeight.Bold + ) + } + }, + navigationIcon = { + IconButton(onClick = { + if (!isNavigating) { + isNavigating = true + navigator.popBackStack() + } + }) { + Icon( + imageVector = Icons.AutoMirrored.Filled.ArrowBack, + contentDescription = stringResource(R.string.back) + ) + } + }, + colors = TopAppBarDefaults.topAppBarColors( + containerColor = MaterialTheme.colorScheme.surfaceContainerLow.copy(alpha = CardConfig.cardAlpha), + scrolledContainerColor = MaterialTheme.colorScheme.surfaceContainerLow.copy(alpha = CardConfig.cardAlpha) + ), + windowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal) + ) + }, + bottomBar = { + // 统一的底部按钮栏 + Surface( + modifier = Modifier.fillMaxWidth(), + color = Color.Transparent, + shadowElevation = 0.dp + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(12.dp), + horizontalArrangement = Arrangement.spacedBy(12.dp) + ) { + when (selectedTab) { + SuSFSTab.BASIC_SETTINGS -> { + // 应用按钮 + Button( + onClick = { + if (unameValue.isNotBlank() || buildTimeValue.isNotBlank()) { + coroutineScope.launch { + isLoading = true + val finalUnameValue = unameValue.trim().ifBlank { "default" } + val finalBuildTimeValue = buildTimeValue.trim().ifBlank { "default" } + val success = SuSFSManager.setUname(context, finalUnameValue, finalBuildTimeValue) + if (success) { + SuSFSManager.saveExecuteInPostFsData(context, executeInPostFsData) + SuSFSManager.saveEnableHideBl(context, enableHideBl) + SuSFSManager.saveEnableCleanupResidue(context, enableCleanupResidue) + SuSFSManager.saveEnableAvcLogSpoofing(context, enableAvcLogSpoofing) + } + isLoading = false + } + } + }, + enabled = !isLoading && (unameValue.isNotBlank() || buildTimeValue.isNotBlank()), + shape = RoundedCornerShape(8.dp), + modifier = Modifier + .weight(1f) + .height(40.dp) + ) { + Text( + stringResource(R.string.susfs_apply), + fontWeight = FontWeight.Medium + ) + } + + // 重置按钮 + OutlinedButton( + onClick = { showConfirmReset = true }, + enabled = !isLoading, + shape = RoundedCornerShape(8.dp), + modifier = Modifier + .weight(1f) + .height(40.dp) + ) { + Icon( + imageVector = Icons.Default.RestoreFromTrash, + contentDescription = null, + modifier = Modifier.size(16.dp) + ) + Spacer(modifier = Modifier.width(6.dp)) + Text( + stringResource(R.string.susfs_reset_to_default), + fontWeight = FontWeight.Medium + ) + } + } + + SuSFSTab.SUS_PATHS -> { + OutlinedButton( + onClick = { showResetPathsDialog = true }, + enabled = !isLoading && susPaths.isNotEmpty(), + shape = RoundedCornerShape(8.dp), + modifier = Modifier + .fillMaxWidth() + .height(40.dp) + ) { + Icon( + imageVector = Icons.Default.RestoreFromTrash, + contentDescription = null, + modifier = Modifier.size(16.dp) + ) + Spacer(modifier = Modifier.width(6.dp)) + Text( + stringResource(R.string.susfs_reset_paths_title), + fontWeight = FontWeight.Medium + ) + } + } + + SuSFSTab.SUS_LOOP_PATHS -> { + OutlinedButton( + onClick = { showResetLoopPathsDialog = true }, + enabled = !isLoading && susLoopPaths.isNotEmpty(), + shape = RoundedCornerShape(8.dp), + modifier = Modifier + .fillMaxWidth() + .height(40.dp) + ) { + Icon( + imageVector = Icons.Default.RestoreFromTrash, + contentDescription = null, + modifier = Modifier.size(16.dp) + ) + Spacer(modifier = Modifier.width(6.dp)) + Text( + stringResource(R.string.susfs_reset_loop_paths_title), + fontWeight = FontWeight.Medium + ) + } + } + + SuSFSTab.SUS_MAPS -> { + OutlinedButton( + onClick = { showResetSusMapsDialog = true }, + enabled = !isLoading && susMaps.isNotEmpty(), + shape = RoundedCornerShape(8.dp), + modifier = Modifier + .fillMaxWidth() + .height(40.dp) + ) { + Icon( + imageVector = Icons.Default.RestoreFromTrash, + contentDescription = null, + modifier = Modifier.size(16.dp) + ) + Spacer(modifier = Modifier.width(6.dp)) + Text( + stringResource(R.string.susfs_reset_sus_maps_title), + fontWeight = FontWeight.Medium + ) + } + } + + SuSFSTab.SUS_MOUNTS -> { + OutlinedButton( + onClick = { showResetMountsDialog = true }, + enabled = !isLoading && susMounts.isNotEmpty(), + shape = RoundedCornerShape(8.dp), + modifier = Modifier + .fillMaxWidth() + .height(40.dp) + ) { + Icon( + imageVector = Icons.Default.RestoreFromTrash, + contentDescription = null, + modifier = Modifier.size(16.dp) + ) + Spacer(modifier = Modifier.width(6.dp)) + Text( + stringResource(R.string.susfs_reset_mounts_title), + fontWeight = FontWeight.Medium + ) + } + } + + SuSFSTab.TRY_UMOUNT -> { + OutlinedButton( + onClick = { showResetUmountsDialog = true }, + enabled = !isLoading && tryUmounts.isNotEmpty(), + shape = RoundedCornerShape(8.dp), + modifier = Modifier + .fillMaxWidth() + .height(40.dp) + ) { + Icon( + imageVector = Icons.Default.RestoreFromTrash, + contentDescription = null, + modifier = Modifier.size(16.dp) + ) + Spacer(modifier = Modifier.width(6.dp)) + Text( + stringResource(R.string.susfs_reset_umounts_title), + fontWeight = FontWeight.Medium + ) + } + } + + SuSFSTab.KSTAT_CONFIG -> { + OutlinedButton( + onClick = { showResetKstatDialog = true }, + enabled = !isLoading && (kstatConfigs.isNotEmpty() || addKstatPaths.isNotEmpty()), + shape = RoundedCornerShape(8.dp), + modifier = Modifier + .fillMaxWidth() + .height(40.dp) + ) { + Icon( + imageVector = Icons.Default.RestoreFromTrash, + contentDescription = null, + modifier = Modifier.size(16.dp) + ) + Spacer(modifier = Modifier.width(6.dp)) + Text( + stringResource(R.string.reset_kstat_config_title), + fontWeight = FontWeight.Medium + ) + } + } + + SuSFSTab.PATH_SETTINGS -> { + OutlinedButton( + onClick = { + androidDataPath = "/sdcard/Android/data" + sdcardPath = "/sdcard" + coroutineScope.launch { + isLoading = true + SuSFSManager.setAndroidDataPath(context, androidDataPath) + SuSFSManager.setSdcardPath(context, sdcardPath) + isLoading = false + } + }, + enabled = !isLoading, + shape = RoundedCornerShape(8.dp), + modifier = Modifier + .fillMaxWidth() + .height(40.dp) + ) { + Icon( + imageVector = Icons.Default.RestoreFromTrash, + contentDescription = null, + modifier = Modifier.size(16.dp) + ) + Spacer(modifier = Modifier.width(6.dp)) + Text( + stringResource(R.string.susfs_reset_path_title), + fontWeight = FontWeight.Medium + ) + } + } + + SuSFSTab.ENABLED_FEATURES -> { + Button( + onClick = { loadEnabledFeatures() }, + enabled = !isLoadingFeatures, + shape = RoundedCornerShape(8.dp), + modifier = Modifier + .fillMaxWidth() + .height(40.dp) + ) { + Icon( + imageVector = Icons.Default.Refresh, + contentDescription = null, + modifier = Modifier.size(16.dp) + ) + Spacer(modifier = Modifier.width(6.dp)) + Text( + stringResource(R.string.refresh), + fontWeight = FontWeight.Medium + ) + } + } + } + } + } + }, + contentWindowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal) + ) { innerPadding -> + Column( + modifier = Modifier + .fillMaxSize() + .padding(innerPadding) + .padding(horizontal = 12.dp) + ) { + // 标签页 + PrimaryScrollableTabRow( + selectedTabIndex = allTabs.indexOf(selectedTab), + modifier = Modifier.fillMaxWidth(), + containerColor = MaterialTheme.colorScheme.surface, + contentColor = MaterialTheme.colorScheme.onSurface, + edgePadding = 0.dp + ) { + allTabs.forEach { tab -> + Tab( + selected = selectedTab == tab, + onClick = { selectedTab = tab }, + text = { + Text( + text = stringResource(tab.displayNameRes), + maxLines = 1, + overflow = TextOverflow.Ellipsis, + fontSize = 13.sp, + fontWeight = if (selectedTab == tab) FontWeight.Bold else FontWeight.Normal + ) + }, + modifier = Modifier.padding(horizontal = 2.dp) + ) + } + } + + Spacer(modifier = Modifier.height(12.dp)) + + // 标签页内容 + Box( + modifier = Modifier.fillMaxSize() + ) { + when (selectedTab) { + SuSFSTab.BASIC_SETTINGS -> { + BasicSettingsContent( + unameValue = unameValue, + onUnameValueChange = { unameValue = it }, + buildTimeValue = buildTimeValue, + onBuildTimeValueChange = { buildTimeValue = it }, + executeInPostFsData = executeInPostFsData, + onExecuteInPostFsDataChange = { executeInPostFsData = it }, + autoStartEnabled = autoStartEnabled, + canEnableAutoStart = canEnableAutoStart, + isLoading = isLoading, + onAutoStartToggle = { enabled -> + if (canEnableAutoStart) { + coroutineScope.launch { + isLoading = true + if (SuSFSManager.configureAutoStart(context, enabled)) { + autoStartEnabled = enabled + } + isLoading = false + } + } + }, + onShowSlotInfo = { showSlotInfoDialog = true }, + context = context, + onShowBackupDialog = { showBackupDialog = true }, + onShowRestoreDialog = { showRestoreDialog = true }, + enableHideBl = enableHideBl, + onEnableHideBlChange = { enabled -> + enableHideBl = enabled + SuSFSManager.saveEnableHideBl(context, enabled) + if (SuSFSManager.isAutoStartEnabled(context)) { + coroutineScope.launch { + SuSFSManager.configureAutoStart(context, true) + } + } + }, + enableCleanupResidue = enableCleanupResidue, + onEnableCleanupResidueChange = { enabled -> + enableCleanupResidue = enabled + SuSFSManager.saveEnableCleanupResidue(context, enabled) + if (SuSFSManager.isAutoStartEnabled(context)) { + coroutineScope.launch { + SuSFSManager.configureAutoStart(context, true) + } + } + }, + enableAvcLogSpoofing = enableAvcLogSpoofing, + onEnableAvcLogSpoofingChange = { enabled -> + coroutineScope.launch { + isLoading = true + val success = SuSFSManager.setEnableAvcLogSpoofing(context, enabled) + if (success) { + enableAvcLogSpoofing = enabled + } + isLoading = false + } + } + ) + } + SuSFSTab.SUS_PATHS -> { + SusPathsContent( + susPaths = susPaths, + isLoading = isLoading, + onAddPath = { showAddPathDialog = true }, + onAddAppPath = { showAddAppPathDialog = true }, + onRemovePath = { path -> + coroutineScope.launch { + isLoading = true + if (SuSFSManager.removeSusPath(context, path)) { + susPaths = SuSFSManager.getSusPaths(context) + } + isLoading = false + } + }, + onEditPath = { path -> + editingPath = path + showAddPathDialog = true + }, + forceRefreshApps = selectedTab == SuSFSTab.SUS_PATHS + ) + } + SuSFSTab.SUS_LOOP_PATHS -> { + SusLoopPathsContent( + susLoopPaths = susLoopPaths, + isLoading = isLoading, + onAddLoopPath = { showAddLoopPathDialog = true }, + onRemoveLoopPath = { path -> + coroutineScope.launch { + isLoading = true + if (SuSFSManager.removeSusLoopPath(context, path)) { + susLoopPaths = SuSFSManager.getSusLoopPaths(context) + } + isLoading = false + } + }, + onEditLoopPath = { path -> + editingLoopPath = path + showAddLoopPathDialog = true + } + ) + } + SuSFSTab.SUS_MAPS -> { + SusMapsContent( + susMaps = susMaps, + isLoading = isLoading, + onAddSusMap = { showAddSusMapDialog = true }, + onRemoveSusMap = { map -> + coroutineScope.launch { + isLoading = true + if (SuSFSManager.removeSusMap(context, map)) { + susMaps = SuSFSManager.getSusMaps(context) + } + isLoading = false + } + }, + onEditSusMap = { map -> + editingSusMap = map + showAddSusMapDialog = true + } + ) + } + SuSFSTab.SUS_MOUNTS -> { + val isSusVersion158 = remember { isSusVersion158() } + + SusMountsContent( + susMounts = susMounts, + hideSusMountsForAllProcs = hideSusMountsForAllProcs, + isSusVersion158 = isSusVersion158, + isLoading = isLoading, + onAddMount = { showAddMountDialog = true }, + onRemoveMount = { mount -> + coroutineScope.launch { + isLoading = true + if (SuSFSManager.removeSusMount(context, mount)) { + susMounts = SuSFSManager.getSusMounts(context) + } + isLoading = false + } + }, + onEditMount = { mount -> + editingMount = mount + showAddMountDialog = true + }, + onToggleHideSusMountsForAllProcs = { hideForAll -> + coroutineScope.launch { + isLoading = true + if (SuSFSManager.setHideSusMountsForAllProcs( + context, + hideForAll + ) + ) { + hideSusMountsForAllProcs = hideForAll + } + isLoading = false + } + } + ) + } + + SuSFSTab.TRY_UMOUNT -> { + TryUmountContent( + tryUmounts = tryUmounts, + umountForZygoteIsoService = umountForZygoteIsoService, + isLoading = isLoading, + onAddUmount = { showAddUmountDialog = true }, + onRemoveUmount = { umountEntry -> + coroutineScope.launch { + isLoading = true + if (SuSFSManager.removeTryUmount(context, umountEntry)) { + tryUmounts = SuSFSManager.getTryUmounts(context) + } + isLoading = false + } + }, + onEditUmount = { umountEntry -> + editingUmount = umountEntry + showAddUmountDialog = true + }, + onToggleUmountForZygoteIsoService = { enabled -> + coroutineScope.launch { + isLoading = true + val success = + SuSFSManager.setUmountForZygoteIsoService(context, enabled) + if (success) { + umountForZygoteIsoService = enabled + } + isLoading = false + } + } + ) + } + + SuSFSTab.KSTAT_CONFIG -> { + KstatConfigContent( + kstatConfigs = kstatConfigs, + addKstatPaths = addKstatPaths, + isLoading = isLoading, + onAddKstatStatically = { showAddKstatStaticallyDialog = true }, + onAddKstat = { showAddKstatDialog = true }, + onRemoveKstatConfig = { config -> + coroutineScope.launch { + isLoading = true + if (SuSFSManager.removeKstatConfig(context, config)) { + kstatConfigs = SuSFSManager.getKstatConfigs(context) + } + isLoading = false + } + }, + onEditKstatConfig = { config -> + editingKstatConfig = config + showAddKstatStaticallyDialog = true + }, + onRemoveAddKstat = { path -> + coroutineScope.launch { + isLoading = true + if (SuSFSManager.removeAddKstat(context, path)) { + addKstatPaths = SuSFSManager.getAddKstatPaths(context) + } + isLoading = false + } + }, + onEditAddKstat = { path -> + editingKstatPath = path + showAddKstatDialog = true + }, + onUpdateKstat = { path -> + coroutineScope.launch { + isLoading = true + SuSFSManager.updateKstat(context, path) + isLoading = false + } + }, + onUpdateKstatFullClone = { path -> + coroutineScope.launch { + isLoading = true + SuSFSManager.updateKstatFullClone(context, path) + isLoading = false + } + } + ) + } + SuSFSTab.PATH_SETTINGS -> { + PathSettingsContent( + androidDataPath = androidDataPath, + onAndroidDataPathChange = { androidDataPath = it }, + sdcardPath = sdcardPath, + onSdcardPathChange = { sdcardPath = it }, + isLoading = isLoading, + onSetAndroidDataPath = { + coroutineScope.launch { + isLoading = true + SuSFSManager.setAndroidDataPath(context, androidDataPath.trim()) + isLoading = false + } + }, + onSetSdcardPath = { + coroutineScope.launch { + isLoading = true + SuSFSManager.setSdcardPath(context, sdcardPath.trim()) + isLoading = false + } + } + ) + } + SuSFSTab.ENABLED_FEATURES -> { + EnabledFeaturesContent( + enabledFeatures = enabledFeatures, + onRefresh = { loadEnabledFeatures() } + ) + } + } + } + } + } +} + +/** + * 基本设置内容组件 + */ +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun BasicSettingsContent( + unameValue: String, + onUnameValueChange: (String) -> Unit, + buildTimeValue: String, + onBuildTimeValueChange: (String) -> Unit, + executeInPostFsData: Boolean, + onExecuteInPostFsDataChange: (Boolean) -> Unit, + autoStartEnabled: Boolean, + canEnableAutoStart: Boolean, + isLoading: Boolean, + onAutoStartToggle: (Boolean) -> Unit, + onShowSlotInfo: () -> Unit, + context: Context, + onShowBackupDialog: () -> Unit, + onShowRestoreDialog: () -> Unit, + enableHideBl: Boolean, + onEnableHideBlChange: (Boolean) -> Unit, + enableCleanupResidue: Boolean, + onEnableCleanupResidueChange: (Boolean) -> Unit, + enableAvcLogSpoofing: Boolean, + onEnableAvcLogSpoofingChange: (Boolean) -> Unit +) { + var scriptLocationExpanded by remember { mutableStateOf(false) } + val isAbDevice = produceState(initialValue = false) { + value = isAbDevice() + }.value + val isSusVersion159 = isSusVersion159() + + Column( + modifier = Modifier + .fillMaxSize() + .verticalScroll(rememberScrollState()), + verticalArrangement = Arrangement.spacedBy(16.dp) + ) { + // 说明卡片 + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surfaceVariant.copy(alpha = 0.4f) + ), + shape = RoundedCornerShape(12.dp) + ) { + Column( + modifier = Modifier.padding(12.dp) + ) { + Text( + text = stringResource(R.string.susfs_config_description), + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Medium, + color = MaterialTheme.colorScheme.primary + ) + Spacer(modifier = Modifier.height(6.dp)) + Text( + text = stringResource(R.string.susfs_config_description_text), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant, + lineHeight = 16.sp + ) + } + } + + // Uname输入框 + OutlinedTextField( + value = unameValue, + onValueChange = onUnameValueChange, + label = { Text(stringResource(R.string.susfs_uname_label)) }, + placeholder = { Text(stringResource(R.string.susfs_uname_placeholder)) }, + modifier = Modifier.fillMaxWidth(), + enabled = !isLoading, + singleLine = true, + shape = RoundedCornerShape(8.dp) + ) + + // 构建时间伪装输入框 + OutlinedTextField( + value = buildTimeValue, + onValueChange = onBuildTimeValueChange, + label = { Text(stringResource(R.string.susfs_build_time_label)) }, + placeholder = { Text(stringResource(R.string.susfs_build_time_placeholder)) }, + modifier = Modifier.fillMaxWidth(), + enabled = !isLoading, + singleLine = true, + shape = RoundedCornerShape(8.dp) + ) + + // 执行位置选择 + ExposedDropdownMenuBox( + expanded = scriptLocationExpanded, + onExpandedChange = { scriptLocationExpanded = !scriptLocationExpanded } + ) { + OutlinedTextField( + value = if (executeInPostFsData) + stringResource(R.string.susfs_execution_location_post_fs_data) + else + stringResource(R.string.susfs_execution_location_service), + onValueChange = { }, + readOnly = true, + label = { Text(stringResource(R.string.susfs_execution_location_label)) }, + trailingIcon = { ExposedDropdownMenuDefaults.TrailingIcon(expanded = scriptLocationExpanded) }, + modifier = Modifier + .fillMaxWidth() + .menuAnchor(ExposedDropdownMenuAnchorType.PrimaryEditable, true), + shape = RoundedCornerShape(8.dp), + enabled = !isLoading + ) + ExposedDropdownMenu( + expanded = scriptLocationExpanded, + onDismissRequest = { scriptLocationExpanded = false } + ) { + DropdownMenuItem( + text = { + Column { + Text(stringResource(R.string.susfs_execution_location_service)) + Text( + stringResource(R.string.susfs_execution_location_service_description), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + }, + onClick = { + onExecuteInPostFsDataChange(false) + scriptLocationExpanded = false + } + ) + DropdownMenuItem( + text = { + Column { + Text(stringResource(R.string.susfs_execution_location_post_fs_data)) + Text( + stringResource(R.string.susfs_execution_location_post_fs_data_description), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + }, + onClick = { + onExecuteInPostFsDataChange(true) + scriptLocationExpanded = false + } + ) + } + } + + // 当前值显示 + Column( + verticalArrangement = Arrangement.spacedBy(4.dp) + ) { + Text( + text = stringResource(R.string.susfs_current_value, SuSFSManager.getUnameValue(context)), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + Text( + text = stringResource(R.string.susfs_current_build_time, SuSFSManager.getBuildTimeValue(context)), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + Text( + text = stringResource(R.string.susfs_current_execution_location, if (SuSFSManager.getExecuteInPostFsData(context)) "Post-FS-Data" else "Service"), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + + // 开机自启动开关 + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = if (canEnableAutoStart) { + MaterialTheme.colorScheme.surface + } else { + MaterialTheme.colorScheme.surfaceVariant.copy(alpha = 0.3f) + } + ), + shape = RoundedCornerShape(12.dp) + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(12.dp), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Column( + modifier = Modifier.weight(1f) + ) { + Row( + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + imageVector = Icons.Default.AutoMode, + contentDescription = null, + tint = if (canEnableAutoStart) { + MaterialTheme.colorScheme.primary + } else { + MaterialTheme.colorScheme.onSurfaceVariant.copy(alpha = 0.5f) + }, + modifier = Modifier.size(18.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text( + text = stringResource(R.string.susfs_autostart_title), + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Medium, + color = if (canEnableAutoStart) { + MaterialTheme.colorScheme.onSurface + } else { + MaterialTheme.colorScheme.onSurfaceVariant.copy(alpha = 0.5f) + } + ) + } + Spacer(modifier = Modifier.height(6.dp)) + Text( + text = if (canEnableAutoStart) { + stringResource(R.string.susfs_autostart_description) + } else { + stringResource(R.string.susfs_autostart_requirement) + }, + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant.copy( + alpha = if (canEnableAutoStart) 1f else 0.5f + ), + lineHeight = 14.sp + ) + } + Switch( + checked = autoStartEnabled, + onCheckedChange = onAutoStartToggle, + enabled = !isLoading && canEnableAutoStart + ) + } + } + + // 隐藏BL脚本开关 + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surface + ), + shape = RoundedCornerShape(12.dp) + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(12.dp), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Column( + modifier = Modifier.weight(1f) + ) { + Row( + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + imageVector = Icons.Default.Security, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier.size(18.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text( + text = stringResource(R.string.hide_bl_script), + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Medium, + color = MaterialTheme.colorScheme.onSurface + ) + } + Spacer(modifier = Modifier.height(6.dp)) + Text( + text = stringResource(R.string.hide_bl_script_description), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant, + lineHeight = 14.sp + ) + } + Switch( + checked = enableHideBl, + onCheckedChange = onEnableHideBlChange, + enabled = !isLoading + ) + } + } + + // 清理残留脚本开关 + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surface + ), + shape = RoundedCornerShape(12.dp) + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(12.dp), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Column( + modifier = Modifier.weight(1f) + ) { + Row( + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + imageVector = Icons.Default.CleaningServices, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier.size(18.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text( + text = stringResource(R.string.cleanup_residue), + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Medium, + color = MaterialTheme.colorScheme.onSurface + ) + } + Spacer(modifier = Modifier.height(6.dp)) + Text( + text = stringResource(R.string.cleanup_residue_description), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant, + lineHeight = 14.sp + ) + } + Switch( + checked = enableCleanupResidue, + onCheckedChange = onEnableCleanupResidueChange, + enabled = !isLoading + ) + } + } + + // AVC日志欺骗开关(仅在1.5.9+版本显示) + if (isSusVersion159) { + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surface + ), + shape = RoundedCornerShape(12.dp) + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(12.dp), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Column( + modifier = Modifier.weight(1f) + ) { + Row( + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + imageVector = Icons.Default.VisibilityOff, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier.size(18.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text( + text = stringResource(R.string.avc_log_spoofing), + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Medium, + color = MaterialTheme.colorScheme.onSurface + ) + } + Spacer(modifier = Modifier.height(6.dp)) + Text( + text = stringResource(R.string.avc_log_spoofing_description), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant, + lineHeight = 14.sp + ) + Spacer(modifier = Modifier.height(4.dp)) + Text( + text = stringResource(R.string.avc_log_spoofing_warning), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.secondary, + lineHeight = 12.sp + ) + } + Switch( + checked = enableAvcLogSpoofing, + onCheckedChange = onEnableAvcLogSpoofingChange, + enabled = !isLoading + ) + } + } + } + + // 槽位信息按钮 + if (isAbDevice) { + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surface + ), + shape = RoundedCornerShape(12.dp) + ) { + Column( + modifier = Modifier.padding(12.dp), + verticalArrangement = Arrangement.spacedBy(12.dp) + ) { + Row( + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + imageVector = Icons.Default.Info, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier.size(18.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text( + text = stringResource(R.string.susfs_slot_info_title), + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Medium, + color = MaterialTheme.colorScheme.onSurface + ) + } + Text( + text = stringResource(R.string.susfs_slot_info_description), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant, + lineHeight = 14.sp + ) + + OutlinedButton( + onClick = onShowSlotInfo, + enabled = !isLoading, + shape = RoundedCornerShape(8.dp), + modifier = Modifier.fillMaxWidth() + ) { + Icon( + imageVector = Icons.Default.Storage, + contentDescription = null, + modifier = Modifier.size(16.dp) + ) + Spacer(modifier = Modifier.width(6.dp)) + Text( + stringResource(R.string.susfs_slot_info_title), + fontWeight = FontWeight.Medium + ) + } + } + } + } + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.spacedBy(12.dp) + ) { + // 备份按钮 + OutlinedButton( + onClick = onShowBackupDialog, + enabled = !isLoading, + shape = RoundedCornerShape(8.dp), + modifier = Modifier + .weight(1f) + .height(40.dp) + ) { + Icon( + imageVector = Icons.Default.Backup, + contentDescription = null, + modifier = Modifier.size(16.dp) + ) + Spacer(modifier = Modifier.width(6.dp)) + Text( + stringResource(R.string.susfs_backup_title), + fontWeight = FontWeight.Medium + ) + } + // 还原按钮 + OutlinedButton( + onClick = onShowRestoreDialog, + enabled = !isLoading, + shape = RoundedCornerShape(8.dp), + modifier = Modifier + .weight(1f) + .height(40.dp) + ) { + Icon( + imageVector = Icons.Default.Restore, + contentDescription = null, + modifier = Modifier.size(16.dp) + ) + Spacer(modifier = Modifier.width(6.dp)) + Text( + stringResource(R.string.susfs_restore_title), + fontWeight = FontWeight.Medium + ) + } + } + } +} + +/** + * 槽位信息对话框 + */ +@Composable +private fun SlotInfoDialog( + showDialog: Boolean, + onDismiss: () -> Unit, + slotInfoList: List, + currentActiveSlot: String, + isLoadingSlotInfo: Boolean, + onRefresh: () -> Unit, + onUseUname: (String) -> Unit, + onUseBuildTime: (String) -> Unit +) { + val isAbDevice = produceState(initialValue = false) { + value = isAbDevice() + }.value + + if (showDialog && isAbDevice) { + AlertDialog( + onDismissRequest = onDismiss, + title = { + Text( + text = stringResource(R.string.susfs_slot_info_title), + style = MaterialTheme.typography.titleLarge, + fontWeight = FontWeight.Bold + ) + }, + text = { + Column( + verticalArrangement = Arrangement.spacedBy(12.dp) + ) { + Text( + text = stringResource(R.string.susfs_current_active_slot, currentActiveSlot), + style = MaterialTheme.typography.bodyLarge, + fontWeight = FontWeight.Medium, + color = MaterialTheme.colorScheme.primary + ) + + if (slotInfoList.isNotEmpty()) { + slotInfoList.forEach { slotInfo -> + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = if (slotInfo.slotName == currentActiveSlot) { + MaterialTheme.colorScheme.primaryContainer.copy(alpha = 0.3f) + } else { + MaterialTheme.colorScheme.surfaceVariant.copy(alpha = 0.3f) + } + ), + shape = RoundedCornerShape(8.dp) + ) { + Column( + modifier = Modifier.padding(12.dp), + verticalArrangement = Arrangement.spacedBy(4.dp) + ) { + Row( + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + imageVector = Icons.Default.Storage, + contentDescription = null, + tint = if (slotInfo.slotName == currentActiveSlot) { + MaterialTheme.colorScheme.primary + } else { + MaterialTheme.colorScheme.onSurfaceVariant + }, + modifier = Modifier.size(16.dp) + ) + Spacer(modifier = Modifier.width(6.dp)) + Text( + text = slotInfo.slotName, + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Bold, + color = if (slotInfo.slotName == currentActiveSlot) { + MaterialTheme.colorScheme.primary + } else { + MaterialTheme.colorScheme.onSurface + } + ) + if (slotInfo.slotName == currentActiveSlot) { + Spacer(modifier = Modifier.width(6.dp)) + Surface( + shape = RoundedCornerShape(4.dp), + color = MaterialTheme.colorScheme.primary + ) { + Text( + text = stringResource(R.string.susfs_slot_current_badge), + style = MaterialTheme.typography.labelSmall, + color = MaterialTheme.colorScheme.onPrimary, + modifier = Modifier.padding(horizontal = 6.dp, vertical = 2.dp) + ) + } + } + } + Text( + text = stringResource(R.string.susfs_slot_uname, slotInfo.uname), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + Text( + text = stringResource(R.string.susfs_slot_build_time, slotInfo.buildTime), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.spacedBy(8.dp) + ) { + Button( + onClick = { onUseUname(slotInfo.uname) }, + modifier = Modifier.weight(1f), + shape = RoundedCornerShape(6.dp) + ) { + Text(stringResource(R.string.susfs_slot_use_uname), fontSize = 12.sp) + } + Button( + onClick = { onUseBuildTime(slotInfo.buildTime) }, + modifier = Modifier.weight(1f), + shape = RoundedCornerShape(6.dp) + ) { + Text(stringResource(R.string.susfs_slot_use_build_time), fontSize = 12.sp) + } + } + } + } + } + } else { + Text( + text = stringResource(R.string.susfs_slot_info_unavailable), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.error + ) + } + } + }, + confirmButton = { + Button( + onClick = onRefresh, + enabled = !isLoadingSlotInfo, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(R.string.refresh)) + } + }, + dismissButton = { + TextButton( + onClick = onDismiss, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(R.string.close)) + } + }, + shape = RoundedCornerShape(12.dp) + ) + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/susfs/component/SuSFSConfigDialogs.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/susfs/component/SuSFSConfigDialogs.kt new file mode 100644 index 0000000..41a0c4c --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/susfs/component/SuSFSConfigDialogs.kt @@ -0,0 +1,1733 @@ +package com.sukisu.ultra.ui.susfs.component + +import android.annotation.SuppressLint +import android.content.pm.PackageInfo +import android.content.pm.PackageManager +import android.graphics.drawable.Drawable +import android.util.Log +import androidx.compose.foundation.* +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.foundation.lazy.items +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.* +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.vector.ImageVector +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.text.style.TextAlign +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import coil.compose.AsyncImage +import coil.request.ImageRequest +import com.google.accompanist.drawablepainter.rememberDrawablePainter +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.susfs.util.SuSFSManager +import com.sukisu.ultra.ui.viewmodel.SuperUserViewModel +import kotlinx.coroutines.launch + +/** + * 添加路径对话框 + */ +@Composable +fun AddPathDialog( + showDialog: Boolean, + onDismiss: () -> Unit, + onConfirm: (String) -> Unit, + isLoading: Boolean, + titleRes: Int, + labelRes: Int, + placeholderRes: Int, + initialValue: String = "" +) { + var newPath by remember { mutableStateOf("") } + + // 当对话框显示时,设置初始值 + LaunchedEffect(showDialog, initialValue) { + if (showDialog) { + newPath = initialValue + } + } + + if (showDialog) { + AlertDialog( + onDismissRequest = onDismiss, + title = { + Text( + stringResource(titleRes), + style = MaterialTheme.typography.titleLarge, + fontWeight = FontWeight.Bold + ) + }, + text = { + OutlinedTextField( + value = newPath, + onValueChange = { newPath = it }, + label = { Text(stringResource(labelRes)) }, + placeholder = { Text(stringResource(placeholderRes)) }, + modifier = Modifier.fillMaxWidth(), + shape = RoundedCornerShape(8.dp) + ) + }, + confirmButton = { + Button( + onClick = { + if (newPath.isNotBlank()) { + onConfirm(newPath.trim()) + newPath = "" + } + }, + enabled = newPath.isNotBlank() && !isLoading, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(if (initialValue.isNotEmpty()) R.string.susfs_save else R.string.add)) + } + }, + dismissButton = { + TextButton( + onClick = { + onDismiss() + newPath = "" + }, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(R.string.cancel)) + } + }, + shape = RoundedCornerShape(12.dp) + ) + } +} + +/** + * 快捷添加应用路径对话框 + */ +@Composable +fun AddAppPathDialog( + showDialog: Boolean, + onDismiss: () -> Unit, + onConfirm: (List) -> Unit, + isLoading: Boolean, + apps: List = emptyList(), + onLoadApps: () -> Unit, + existingSusPaths: Set = emptySet() +) { + var searchText by remember { mutableStateOf("") } + var selectedApps by remember { mutableStateOf(setOf()) } + + // 获取已添加的包名 + val addedPackageNames = remember(existingSusPaths) { + existingSusPaths.mapNotNull { path -> + val regex = Regex(".*/Android/data/([^/]+)/?.*") + regex.find(path)?.groupValues?.get(1) + }.toSet() + } + + // 过滤掉已添加的应用 + val availableApps = remember(apps, addedPackageNames) { + apps.filter { app -> + !addedPackageNames.contains(app.packageName) + } + } + + val filteredApps = remember(availableApps, searchText) { + if (searchText.isBlank()) { + availableApps + } else { + availableApps.filter { app -> + app.appName.contains(searchText, ignoreCase = true) || + app.packageName.contains(searchText, ignoreCase = true) + } + } + } + + LaunchedEffect(showDialog) { + if (showDialog && apps.isEmpty()) { + onLoadApps() + } + // 当对话框显示时清空选择 + if (showDialog) { + selectedApps = setOf() + } + } + + if (showDialog) { + AlertDialog( + onDismissRequest = onDismiss, + title = { + Text( + text = stringResource(R.string.susfs_add_app_path), + style = MaterialTheme.typography.titleLarge, + fontWeight = FontWeight.Bold + ) + }, + text = { + Column( + verticalArrangement = Arrangement.spacedBy(12.dp) + ) { + OutlinedTextField( + value = searchText, + onValueChange = { searchText = it }, + label = { Text(stringResource(R.string.search_apps)) }, + leadingIcon = { + Icon( + imageVector = Icons.Default.Search, + contentDescription = null + ) + }, + modifier = Modifier.fillMaxWidth(), + shape = RoundedCornerShape(8.dp) + ) + + // 显示统计信息 + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceBetween + ) { + if (selectedApps.isNotEmpty()) { + Text( + text = stringResource(R.string.selected_apps_count, selectedApps.size), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.primary, + fontWeight = FontWeight.Medium + ) + } + if (addedPackageNames.isNotEmpty()) { + Text( + text = stringResource(R.string.already_added_apps_count, addedPackageNames.size), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + } + + if (filteredApps.isEmpty()) { + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surfaceVariant.copy(alpha = 0.3f) + ) + ) { + Text( + text = if (availableApps.isEmpty()) { + stringResource(R.string.all_apps_already_added) + } else { + stringResource(R.string.no_apps_found) + }, + modifier = Modifier.padding(16.dp), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + } else { + LazyColumn( + modifier = Modifier.height(300.dp), + verticalArrangement = Arrangement.spacedBy(4.dp) + ) { + items(filteredApps) { app -> + val isSelected = selectedApps.contains(app) + + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = if (isSelected) { + MaterialTheme.colorScheme.primaryContainer + } else { + MaterialTheme.colorScheme.surface + } + ), + onClick = { + selectedApps = if (isSelected) { + selectedApps - app + } else { + selectedApps + app + } + } + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(12.dp), + verticalAlignment = Alignment.CenterVertically + ) { + // 应用图标 + AppIcon( + packageName = app.packageName, + packageInfo = app.packageInfo, + modifier = Modifier.size(40.dp) + ) + + Column( + modifier = Modifier + .weight(1f) + .padding(start = 12.dp) + ) { + Text( + text = app.appName, + style = MaterialTheme.typography.bodyLarge, + fontWeight = FontWeight.Medium, + color = if (isSelected) { + MaterialTheme.colorScheme.onPrimaryContainer + } else { + MaterialTheme.colorScheme.onSurface + } + ) + Text( + text = app.packageName, + style = MaterialTheme.typography.bodyMedium, + color = if (isSelected) { + MaterialTheme.colorScheme.onPrimaryContainer.copy(alpha = 0.7f) + } else { + MaterialTheme.colorScheme.onSurfaceVariant + } + ) + } + + // 选择指示器 + if (isSelected) { + Icon( + imageVector = Icons.Default.CheckCircle, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier.size(24.dp) + ) + } else { + Icon( + imageVector = Icons.Default.RadioButtonUnchecked, + contentDescription = null, + tint = MaterialTheme.colorScheme.onSurfaceVariant, + modifier = Modifier.size(24.dp) + ) + } + } + } + } + } + } + } + }, + confirmButton = { + Button( + onClick = { + if (selectedApps.isNotEmpty()) { + onConfirm(selectedApps.map { it.packageName }) + } + selectedApps = setOf() + searchText = "" + }, + enabled = selectedApps.isNotEmpty() && !isLoading, + shape = RoundedCornerShape(8.dp) + ) { + Text( + text = stringResource(R.string.add) + ) + } + }, + dismissButton = { + TextButton( + onClick = { + onDismiss() + selectedApps = setOf() + searchText = "" + }, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(R.string.cancel)) + } + }, + shape = RoundedCornerShape(12.dp) + ) + } +} + + +/** + * 应用图标组件 + */ +@Composable +fun AppIcon( + packageName: String, + packageInfo: PackageInfo? = null, + @SuppressLint("ModifierParameter") modifier: Modifier = Modifier +) { + val context = LocalContext.current + if (packageInfo != null) { + AsyncImage( + model = ImageRequest.Builder(context) + .data(packageInfo) + .crossfade(true) + .build(), + contentDescription = null, + modifier = modifier.clip(RoundedCornerShape(8.dp)) + ) + } else { + var appIcon by remember(packageName) { + mutableStateOf( + AppInfoCache.getAppInfo(packageName)?.drawable + ) + } + + LaunchedEffect(packageName) { + if (appIcon == null && !AppInfoCache.hasCache(packageName)) { + try { + val packageManager = context.packageManager + val applicationInfo = packageManager.getApplicationInfo(packageName, 0) + val drawable = packageManager.getApplicationIcon(applicationInfo) + appIcon = drawable + val cachedInfo = AppInfoCache.CachedAppInfo( + appName = packageName, + packageInfo = null, + drawable = drawable + ) + AppInfoCache.putAppInfo(packageName, cachedInfo) + } catch (_: Exception) { + Log.d("获取应用图标失败", packageName) + } + } + } + Image( + painter = rememberDrawablePainter(appIcon), + contentDescription = null, + modifier = modifier.clip(RoundedCornerShape(8.dp)) + ) + } +} + + +/** + * 添加尝试卸载对话框 + */ +@OptIn(ExperimentalMaterial3Api::class) +@Composable +fun AddTryUmountDialog( + showDialog: Boolean, + onDismiss: () -> Unit, + onConfirm: (String, Int) -> Unit, + isLoading: Boolean, + initialPath: String = "", + initialMode: Int = 0 +) { + var newUmountPath by remember { mutableStateOf("") } + var newUmountMode by remember { mutableIntStateOf(0) } + var umountModeExpanded by remember { mutableStateOf(false) } + + // 当对话框显示时,设置初始值 + LaunchedEffect(showDialog, initialPath, initialMode) { + if (showDialog) { + newUmountPath = initialPath + newUmountMode = initialMode + } + } + + if (showDialog) { + AlertDialog( + onDismissRequest = onDismiss, + title = { + Text( + stringResource(if (initialPath.isNotEmpty()) R.string.susfs_edit_try_umount else R.string.susfs_add_try_umount), + style = MaterialTheme.typography.titleLarge, + fontWeight = FontWeight.Bold + ) + }, + text = { + Column( + verticalArrangement = Arrangement.spacedBy(12.dp) + ) { + OutlinedTextField( + value = newUmountPath, + onValueChange = { newUmountPath = it }, + label = { Text(stringResource(R.string.susfs_path_label)) }, + placeholder = { Text(stringResource(R.string.susfs_path_placeholder)) }, + modifier = Modifier.fillMaxWidth(), + shape = RoundedCornerShape(8.dp) + ) + + ExposedDropdownMenuBox( + expanded = umountModeExpanded, + onExpandedChange = { umountModeExpanded = !umountModeExpanded } + ) { + OutlinedTextField( + value = if (newUmountMode == 0) + stringResource(R.string.susfs_umount_mode_normal) + else + stringResource(R.string.susfs_umount_mode_detach), + onValueChange = { }, + readOnly = true, + label = { Text(stringResource(R.string.susfs_umount_mode_label)) }, + trailingIcon = { ExposedDropdownMenuDefaults.TrailingIcon(expanded = umountModeExpanded) }, + modifier = Modifier + .fillMaxWidth() + .menuAnchor(ExposedDropdownMenuAnchorType.PrimaryEditable, true), + shape = RoundedCornerShape(8.dp) + ) + ExposedDropdownMenu( + expanded = umountModeExpanded, + onDismissRequest = { umountModeExpanded = false } + ) { + DropdownMenuItem( + text = { Text(stringResource(R.string.susfs_umount_mode_normal)) }, + onClick = { + newUmountMode = 0 + umountModeExpanded = false + } + ) + DropdownMenuItem( + text = { Text(stringResource(R.string.susfs_umount_mode_detach)) }, + onClick = { + newUmountMode = 1 + umountModeExpanded = false + } + ) + } + } + } + }, + confirmButton = { + Button( + onClick = { + if (newUmountPath.isNotBlank()) { + onConfirm(newUmountPath.trim(), newUmountMode) + newUmountPath = "" + newUmountMode = 0 + } + }, + enabled = newUmountPath.isNotBlank() && !isLoading, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(if (initialPath.isNotEmpty()) R.string.susfs_save else R.string.add)) + } + }, + dismissButton = { + TextButton( + onClick = { + onDismiss() + newUmountPath = "" + newUmountMode = 0 + }, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(R.string.cancel)) + } + }, + shape = RoundedCornerShape(12.dp) + ) + } +} + +/** + * 添加Kstat静态配置对话框 + */ +@Composable +fun AddKstatStaticallyDialog( + showDialog: Boolean, + onDismiss: () -> Unit, + onConfirm: (String, String, String, String, String, String, String, String, String, String, String, String, String) -> Unit, + isLoading: Boolean, + initialConfig: String = "" +) { + var newKstatPath by remember { mutableStateOf("") } + var newKstatIno by remember { mutableStateOf("") } + var newKstatDev by remember { mutableStateOf("") } + var newKstatNlink by remember { mutableStateOf("") } + var newKstatSize by remember { mutableStateOf("") } + var newKstatAtime by remember { mutableStateOf("") } + var newKstatAtimeNsec by remember { mutableStateOf("") } + var newKstatMtime by remember { mutableStateOf("") } + var newKstatMtimeNsec by remember { mutableStateOf("") } + var newKstatCtime by remember { mutableStateOf("") } + var newKstatCtimeNsec by remember { mutableStateOf("") } + var newKstatBlocks by remember { mutableStateOf("") } + var newKstatBlksize by remember { mutableStateOf("") } + + // 当对话框显示时,解析初始配置 + LaunchedEffect(showDialog, initialConfig) { + if (showDialog && initialConfig.isNotEmpty()) { + val parts = initialConfig.split("|") + if (parts.size >= 13) { + newKstatPath = parts[0] + newKstatIno = if (parts[1] == "default") "" else parts[1] + newKstatDev = if (parts[2] == "default") "" else parts[2] + newKstatNlink = if (parts[3] == "default") "" else parts[3] + newKstatSize = if (parts[4] == "default") "" else parts[4] + newKstatAtime = if (parts[5] == "default") "" else parts[5] + newKstatAtimeNsec = if (parts[6] == "default") "" else parts[6] + newKstatMtime = if (parts[7] == "default") "" else parts[7] + newKstatMtimeNsec = if (parts[8] == "default") "" else parts[8] + newKstatCtime = if (parts[9] == "default") "" else parts[9] + newKstatCtimeNsec = if (parts[10] == "default") "" else parts[10] + newKstatBlocks = if (parts[11] == "default") "" else parts[11] + newKstatBlksize = if (parts[12] == "default") "" else parts[12] + } + } else if (showDialog && initialConfig.isEmpty()) { + // 清空所有字段 + newKstatPath = "" + newKstatIno = "" + newKstatDev = "" + newKstatNlink = "" + newKstatSize = "" + newKstatAtime = "" + newKstatAtimeNsec = "" + newKstatMtime = "" + newKstatMtimeNsec = "" + newKstatCtime = "" + newKstatCtimeNsec = "" + newKstatBlocks = "" + newKstatBlksize = "" + } + } + + if (showDialog) { + AlertDialog( + onDismissRequest = onDismiss, + title = { + Text( + stringResource(if (initialConfig.isNotEmpty()) R.string.edit_kstat_statically_title else R.string.add_kstat_statically_title), + style = MaterialTheme.typography.titleLarge, + fontWeight = FontWeight.Bold + ) + }, + text = { + Column( + modifier = Modifier.verticalScroll(rememberScrollState()), + verticalArrangement = Arrangement.spacedBy(8.dp) + ) { + OutlinedTextField( + value = newKstatPath, + onValueChange = { newKstatPath = it }, + label = { Text(stringResource(R.string.file_or_directory_path_label)) }, + placeholder = { Text("/path/to/file_or_directory") }, + modifier = Modifier.fillMaxWidth(), + shape = RoundedCornerShape(8.dp) + ) + + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.spacedBy(8.dp) + ) { + OutlinedTextField( + value = newKstatIno, + onValueChange = { newKstatIno = it }, + label = { Text("ino") }, + placeholder = { Text("1234") }, + modifier = Modifier.weight(1f), + shape = RoundedCornerShape(8.dp) + ) + OutlinedTextField( + value = newKstatDev, + onValueChange = { newKstatDev = it }, + label = { Text("dev") }, + placeholder = { Text("1234") }, + modifier = Modifier.weight(1f), + shape = RoundedCornerShape(8.dp) + ) + } + + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.spacedBy(8.dp) + ) { + OutlinedTextField( + value = newKstatNlink, + onValueChange = { newKstatNlink = it }, + label = { Text("nlink") }, + placeholder = { Text("2") }, + modifier = Modifier.weight(1f), + shape = RoundedCornerShape(8.dp) + ) + OutlinedTextField( + value = newKstatSize, + onValueChange = { newKstatSize = it }, + label = { Text("size") }, + placeholder = { Text("223344") }, + modifier = Modifier.weight(1f), + shape = RoundedCornerShape(8.dp) + ) + } + + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.spacedBy(8.dp) + ) { + OutlinedTextField( + value = newKstatAtime, + onValueChange = { newKstatAtime = it }, + label = { Text("atime") }, + placeholder = { Text("1712592355") }, + modifier = Modifier.weight(1f), + shape = RoundedCornerShape(8.dp) + ) + OutlinedTextField( + value = newKstatAtimeNsec, + onValueChange = { newKstatAtimeNsec = it }, + label = { Text("atime_nsec") }, + placeholder = { Text("0") }, + modifier = Modifier.weight(1f), + shape = RoundedCornerShape(8.dp) + ) + } + + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.spacedBy(8.dp) + ) { + OutlinedTextField( + value = newKstatMtime, + onValueChange = { newKstatMtime = it }, + label = { Text("mtime") }, + placeholder = { Text("1712592355") }, + modifier = Modifier.weight(1f), + shape = RoundedCornerShape(8.dp) + ) + OutlinedTextField( + value = newKstatMtimeNsec, + onValueChange = { newKstatMtimeNsec = it }, + label = { Text("mtime_nsec") }, + placeholder = { Text("0") }, + modifier = Modifier.weight(1f), + shape = RoundedCornerShape(8.dp) + ) + } + + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.spacedBy(8.dp) + ) { + OutlinedTextField( + value = newKstatCtime, + onValueChange = { newKstatCtime = it }, + label = { Text("ctime") }, + placeholder = { Text("1712592355") }, + modifier = Modifier.weight(1f), + shape = RoundedCornerShape(8.dp) + ) + OutlinedTextField( + value = newKstatCtimeNsec, + onValueChange = { newKstatCtimeNsec = it }, + label = { Text("ctime_nsec") }, + placeholder = { Text("0") }, + modifier = Modifier.weight(1f), + shape = RoundedCornerShape(8.dp) + ) + } + + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.spacedBy(8.dp) + ) { + OutlinedTextField( + value = newKstatBlocks, + onValueChange = { newKstatBlocks = it }, + label = { Text("blocks") }, + placeholder = { Text("16") }, + modifier = Modifier.weight(1f), + shape = RoundedCornerShape(8.dp) + ) + OutlinedTextField( + value = newKstatBlksize, + onValueChange = { newKstatBlksize = it }, + label = { Text("blksize") }, + placeholder = { Text("512") }, + modifier = Modifier.weight(1f), + shape = RoundedCornerShape(8.dp) + ) + } + + Text( + text = stringResource(R.string.hint_use_default_value), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + }, + confirmButton = { + Button( + onClick = { + if (newKstatPath.isNotBlank()) { + onConfirm( + newKstatPath.trim(), + newKstatIno.trim().ifBlank { "default" }, + newKstatDev.trim().ifBlank { "default" }, + newKstatNlink.trim().ifBlank { "default" }, + newKstatSize.trim().ifBlank { "default" }, + newKstatAtime.trim().ifBlank { "default" }, + newKstatAtimeNsec.trim().ifBlank { "default" }, + newKstatMtime.trim().ifBlank { "default" }, + newKstatMtimeNsec.trim().ifBlank { "default" }, + newKstatCtime.trim().ifBlank { "default" }, + newKstatCtimeNsec.trim().ifBlank { "default" }, + newKstatBlocks.trim().ifBlank { "default" }, + newKstatBlksize.trim().ifBlank { "default" } + ) + // 清空所有字段 + newKstatPath = "" + newKstatIno = "" + newKstatDev = "" + newKstatNlink = "" + newKstatSize = "" + newKstatAtime = "" + newKstatAtimeNsec = "" + newKstatMtime = "" + newKstatMtimeNsec = "" + newKstatCtime = "" + newKstatCtimeNsec = "" + newKstatBlocks = "" + newKstatBlksize = "" + } + }, + enabled = newKstatPath.isNotBlank() && !isLoading, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(if (initialConfig.isNotEmpty()) R.string.susfs_save else R.string.add)) + } + }, + dismissButton = { + TextButton( + onClick = { + onDismiss() + // 清空所有字段 + newKstatPath = "" + newKstatIno = "" + newKstatDev = "" + newKstatNlink = "" + newKstatSize = "" + newKstatAtime = "" + newKstatAtimeNsec = "" + newKstatMtime = "" + newKstatMtimeNsec = "" + newKstatCtime = "" + newKstatCtimeNsec = "" + newKstatBlocks = "" + newKstatBlksize = "" + }, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(R.string.cancel)) + } + }, + shape = RoundedCornerShape(12.dp) + ) + } +} + +/** + * 确认对话框 + */ +@Composable +fun ConfirmDialog( + showDialog: Boolean, + onDismiss: () -> Unit, + onConfirm: () -> Unit, + titleRes: Int, + messageRes: Int, + isLoading: Boolean = false, + isDestructive: Boolean = false +) { + if (showDialog) { + AlertDialog( + onDismissRequest = onDismiss, + title = { + Text( + text = stringResource(titleRes), + style = MaterialTheme.typography.titleLarge, + fontWeight = FontWeight.Bold + ) + }, + text = { Text(stringResource(messageRes)) }, + confirmButton = { + Button( + onClick = onConfirm, + enabled = !isLoading, + colors = if (isDestructive) { + ButtonDefaults.buttonColors( + containerColor = MaterialTheme.colorScheme.error + ) + } else { + ButtonDefaults.buttonColors() + }, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(R.string.confirm)) + } + }, + dismissButton = { + TextButton( + onClick = onDismiss, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(R.string.cancel)) + } + }, + shape = RoundedCornerShape(12.dp) + ) + } +} + +// 应用信息缓存 +object AppInfoCache { + private val appInfoMap = mutableMapOf() + + data class CachedAppInfo( + val appName: String, + val packageInfo: PackageInfo?, + val drawable: Drawable?, + val timestamp: Long = System.currentTimeMillis() + ) + + fun getAppInfo(packageName: String): CachedAppInfo? { + return appInfoMap[packageName] + } + + fun putAppInfo(packageName: String, appInfo: CachedAppInfo) { + appInfoMap[packageName] = appInfo + } + + fun clearCache() { + appInfoMap.clear() + } + + fun hasCache(packageName: String): Boolean { + return appInfoMap.containsKey(packageName) + } + + fun getAppInfoFromSuperUser(packageName: String): CachedAppInfo? { + val superUserApp = SuperUserViewModel.apps.find { it.packageName == packageName } + return superUserApp?.let { app -> + CachedAppInfo( + appName = app.label, + packageInfo = app.packageInfo, + drawable = null + ) + } + } +} + +/** + * 空状态显示组件 + */ +@Composable +fun EmptyStateCard( + message: String, + modifier: Modifier = Modifier +) { + Card( + modifier = modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surfaceVariant.copy(alpha = 0.2f) + ), + shape = RoundedCornerShape(12.dp) + ) { + Box( + modifier = Modifier + .fillMaxWidth() + .padding(24.dp), + contentAlignment = Alignment.Center + ) { + Text( + text = message, + style = MaterialTheme.typography.bodyLarge, + color = MaterialTheme.colorScheme.onSurfaceVariant, + textAlign = TextAlign.Center + ) + } + } +} + +/** + * 路径项目卡片组件 + */ +@Composable +fun PathItemCard( + path: String, + icon: ImageVector, + onDelete: () -> Unit, + onEdit: (() -> Unit)? = null, + isLoading: Boolean = false, + additionalInfo: String? = null +) { + Card( + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 1.dp), + shape = RoundedCornerShape(8.dp), + elevation = CardDefaults.cardElevation(defaultElevation = 1.dp) + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(12.dp), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Row( + verticalAlignment = Alignment.CenterVertically, + modifier = Modifier.weight(1f) + ) { + Icon( + imageVector = icon, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier.size(18.dp) + ) + Spacer(modifier = Modifier.width(12.dp)) + Column { + Text( + text = path, + style = MaterialTheme.typography.bodyLarge, + fontWeight = FontWeight.Medium + ) + if (additionalInfo != null) { + Text( + text = additionalInfo, + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + } + } + Row( + horizontalArrangement = Arrangement.spacedBy(4.dp) + ) { + if (onEdit != null) { + IconButton( + onClick = onEdit, + enabled = !isLoading, + modifier = Modifier.size(32.dp) + ) { + Icon( + imageVector = Icons.Default.Edit, + contentDescription = stringResource(R.string.edit), + tint = MaterialTheme.colorScheme.secondary, + modifier = Modifier.size(16.dp) + ) + } + } + IconButton( + onClick = onDelete, + enabled = !isLoading, + modifier = Modifier.size(32.dp) + ) { + Icon( + imageVector = Icons.Default.Delete, + contentDescription = stringResource(R.string.delete), + tint = MaterialTheme.colorScheme.error, + modifier = Modifier.size(16.dp) + ) + } + } + } + } +} + +/** + * Kstat配置项目卡片组件 + */ +@Composable +fun KstatConfigItemCard( + config: String, + onDelete: () -> Unit, + onEdit: (() -> Unit)? = null, + isLoading: Boolean = false +) { + Card( + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 1.dp), + shape = RoundedCornerShape(8.dp), + elevation = CardDefaults.cardElevation(defaultElevation = 1.dp) + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(12.dp), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Row( + verticalAlignment = Alignment.CenterVertically, + modifier = Modifier.weight(1f) + ) { + Icon( + imageVector = Icons.Default.Settings, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier.size(18.dp) + ) + Spacer(modifier = Modifier.width(12.dp)) + Column { + val parts = config.split("|") + if (parts.isNotEmpty()) { + Text( + text = parts[0], // 路径 + style = MaterialTheme.typography.bodyLarge, + fontWeight = FontWeight.Medium + ) + if (parts.size > 1) { + Text( + text = parts.drop(1).joinToString(" "), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + } else { + Text( + text = config, + style = MaterialTheme.typography.bodyLarge, + fontWeight = FontWeight.Medium + ) + } + } + } + Row( + horizontalArrangement = Arrangement.spacedBy(4.dp) + ) { + if (onEdit != null) { + IconButton( + onClick = onEdit, + enabled = !isLoading, + modifier = Modifier.size(32.dp) + ) { + Icon( + imageVector = Icons.Default.Edit, + contentDescription = stringResource(R.string.edit), + tint = MaterialTheme.colorScheme.secondary, + modifier = Modifier.size(16.dp) + ) + } + } + IconButton( + onClick = onDelete, + enabled = !isLoading, + modifier = Modifier.size(32.dp) + ) { + Icon( + imageVector = Icons.Default.Delete, + contentDescription = stringResource(R.string.delete), + tint = MaterialTheme.colorScheme.error, + modifier = Modifier.size(16.dp) + ) + } + } + } + } +} + +/** + * Add Kstat路径项目卡片组件 + */ +@Composable +fun AddKstatPathItemCard( + path: String, + onDelete: () -> Unit, + onEdit: (() -> Unit)? = null, + onUpdate: () -> Unit, + onUpdateFullClone: () -> Unit, + isLoading: Boolean = false +) { + Card( + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 1.dp), + shape = RoundedCornerShape(8.dp), + elevation = CardDefaults.cardElevation(defaultElevation = 1.dp) + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(12.dp), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Row( + verticalAlignment = Alignment.CenterVertically, + modifier = Modifier.weight(1f) + ) { + Icon( + imageVector = Icons.Default.Folder, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier.size(18.dp) + ) + Spacer(modifier = Modifier.width(12.dp)) + Text( + text = path, + style = MaterialTheme.typography.bodyLarge, + fontWeight = FontWeight.Medium + ) + } + Row( + horizontalArrangement = Arrangement.spacedBy(4.dp) + ) { + if (onEdit != null) { + IconButton( + onClick = onEdit, + enabled = !isLoading, + modifier = Modifier.size(32.dp) + ) { + Icon( + imageVector = Icons.Default.Edit, + contentDescription = stringResource(R.string.edit), + tint = MaterialTheme.colorScheme.secondary, + modifier = Modifier.size(16.dp) + ) + } + } + IconButton( + onClick = onUpdate, + enabled = !isLoading, + modifier = Modifier.size(32.dp) + ) { + Icon( + imageVector = Icons.Default.Update, + contentDescription = stringResource(R.string.update), + tint = MaterialTheme.colorScheme.secondary, + modifier = Modifier.size(16.dp) + ) + } + IconButton( + onClick = onUpdateFullClone, + enabled = !isLoading, + modifier = Modifier.size(32.dp) + ) { + Icon( + imageVector = Icons.Default.PlayArrow, + contentDescription = stringResource(R.string.susfs_update_full_clone), + tint = MaterialTheme.colorScheme.tertiary, + modifier = Modifier.size(16.dp) + ) + } + IconButton( + onClick = onDelete, + enabled = !isLoading, + modifier = Modifier.size(32.dp) + ) { + Icon( + imageVector = Icons.Default.Delete, + contentDescription = stringResource(R.string.delete), + tint = MaterialTheme.colorScheme.error, + modifier = Modifier.size(16.dp) + ) + } + } + } + } +} + +/** + * 启用功能状态卡片组件 + */ +@Composable +fun FeatureStatusCard( + feature: SuSFSManager.EnabledFeature, + onRefresh: (() -> Unit)? = null, + @SuppressLint("ModifierParameter") modifier: Modifier = Modifier +) { + val context = LocalContext.current + val coroutineScope = rememberCoroutineScope() + + // 日志配置对话框状态 + var showLogConfigDialog by remember { mutableStateOf(false) } + var logEnabled by remember { mutableStateOf(SuSFSManager.getEnableLogState(context)) } + + // 日志配置对话框 + if (showLogConfigDialog) { + AlertDialog( + onDismissRequest = { showLogConfigDialog = false }, + title = { + Text( + text = stringResource(R.string.susfs_log_config_title), + style = MaterialTheme.typography.titleLarge, + fontWeight = FontWeight.Bold + ) + }, + text = { + Column( + verticalArrangement = Arrangement.spacedBy(12.dp) + ) { + Text( + text = stringResource(R.string.susfs_log_config_description), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Text( + text = stringResource(R.string.susfs_enable_log_label), + style = MaterialTheme.typography.bodyLarge, + fontWeight = FontWeight.Medium + ) + Switch( + checked = logEnabled, + onCheckedChange = { logEnabled = it } + ) + } + } + }, + confirmButton = { + Button( + onClick = { + coroutineScope.launch { + if (SuSFSManager.setEnableLog(context, logEnabled)) { + onRefresh?.invoke() + } + showLogConfigDialog = false + } + }, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(R.string.susfs_apply)) + } + }, + dismissButton = { + TextButton( + onClick = { + // 恢复原始状态 + logEnabled = SuSFSManager.getEnableLogState(context) + showLogConfigDialog = false + }, + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(R.string.cancel)) + } + }, + shape = RoundedCornerShape(12.dp) + ) + } + + Card( + modifier = modifier + .fillMaxWidth() + .padding(vertical = 1.dp) + .then( + if (feature.canConfigure) { + Modifier.clickable { + // 更新当前状态 + logEnabled = SuSFSManager.getEnableLogState(context) + showLogConfigDialog = true + } + } else { + Modifier + } + ), + shape = RoundedCornerShape(8.dp), + elevation = CardDefaults.cardElevation(defaultElevation = 1.dp) + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(12.dp), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Column( + modifier = Modifier.weight(1f) + ) { + Text( + text = feature.name, + style = MaterialTheme.typography.bodyLarge, + fontWeight = FontWeight.Medium + ) + if (feature.canConfigure) { + Text( + text = stringResource(R.string.susfs_feature_configurable), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + } + + Row( + horizontalArrangement = Arrangement.spacedBy(8.dp), + verticalAlignment = Alignment.CenterVertically + ) { + // 状态标签 + Surface( + shape = RoundedCornerShape(6.dp), + color = when { + feature.isEnabled -> MaterialTheme.colorScheme.primary + else -> Color.Gray + } + ) { + Text( + text = feature.statusText, + style = MaterialTheme.typography.labelLarge, + color = when { + feature.isEnabled -> MaterialTheme.colorScheme.onPrimary + else -> Color.White + }, + modifier = Modifier.padding(horizontal = 8.dp, vertical = 3.dp) + ) + } + } + } + } +} + +/** + * SUS挂载隐藏控制卡片组件 + */ +@Composable +fun SusMountHidingControlCard( + hideSusMountsForAllProcs: Boolean, + isLoading: Boolean, + onToggleHiding: (Boolean) -> Unit +) { + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surface + ), + shape = RoundedCornerShape(12.dp) + ) { + Column( + modifier = Modifier.padding(16.dp), + verticalArrangement = Arrangement.spacedBy(12.dp) + ) { + // 标题行 + Row( + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + imageVector = if (hideSusMountsForAllProcs) Icons.Default.VisibilityOff else Icons.Default.Visibility, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier.size(20.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text( + text = stringResource(R.string.susfs_hide_mounts_control_title), + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Bold, + color = MaterialTheme.colorScheme.onSurface + ) + } + + // 描述文本 + Text( + text = stringResource(R.string.susfs_hide_mounts_control_description), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant, + lineHeight = 16.sp + ) + + // 控制开关行 + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Column( + modifier = Modifier.weight(1f) + ) { + Text( + text = stringResource(R.string.susfs_hide_mounts_for_all_procs_label), + style = MaterialTheme.typography.bodyLarge, + fontWeight = FontWeight.Medium, + color = MaterialTheme.colorScheme.onSurface + ) + Spacer(modifier = Modifier.width(4.dp)) + Text( + text = if (hideSusMountsForAllProcs) { + stringResource(R.string.susfs_hide_mounts_for_all_procs_enabled_description) + } else { + stringResource(R.string.susfs_hide_mounts_for_all_procs_disabled_description) + }, + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant, + lineHeight = 14.sp + ) + } + Switch( + checked = hideSusMountsForAllProcs, + onCheckedChange = onToggleHiding, + enabled = !isLoading + ) + } + + // 当前设置显示 + Text( + text = stringResource( + R.string.susfs_hide_mounts_current_setting, + if (hideSusMountsForAllProcs) { + stringResource(R.string.susfs_hide_mounts_setting_all) + } else { + stringResource(R.string.susfs_hide_mounts_setting_non_ksu) + } + ), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.primary, + fontWeight = FontWeight.Medium + ) + + // 建议文本 + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surfaceVariant.copy(alpha = 0.3f) + ), + shape = RoundedCornerShape(8.dp) + ) { + Text( + text = stringResource(R.string.susfs_hide_mounts_recommendation), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant, + lineHeight = 14.sp, + modifier = Modifier.padding(12.dp) + ) + } + } + } +} + +/** + * 应用路径分组卡片 + */ +@Composable +fun AppPathGroupCard( + packageName: String, + paths: List, + onDeleteGroup: () -> Unit, + onEditGroup: (() -> Unit)? = null, + isLoading: Boolean +) { + val context = LocalContext.current + val coroutineScope = rememberCoroutineScope() + val superUserApps = SuperUserViewModel.apps + var cachedAppInfo by remember(packageName, superUserApps.size) { + mutableStateOf(AppInfoCache.getAppInfo(packageName)) + } + var isLoadingAppInfo by remember(packageName, superUserApps.size) { mutableStateOf(false) } + + LaunchedEffect(packageName, superUserApps.size) { + if (cachedAppInfo == null || superUserApps.isNotEmpty()) { + isLoadingAppInfo = true + coroutineScope.launch { + try { + val superUserAppInfo = AppInfoCache.getAppInfoFromSuperUser(packageName) + + if (superUserAppInfo != null) { + val packageManager = context.packageManager + val drawable = try { + superUserAppInfo.packageInfo?.applicationInfo?.let { + packageManager.getApplicationIcon(it) + } + } catch (_: Exception) { + null + } + + val newCachedInfo = AppInfoCache.CachedAppInfo( + appName = superUserAppInfo.appName, + packageInfo = superUserAppInfo.packageInfo, + drawable = drawable + ) + + AppInfoCache.putAppInfo(packageName, newCachedInfo) + cachedAppInfo = newCachedInfo + } else { + val packageManager = context.packageManager + val appInfo = packageManager.getPackageInfo(packageName, PackageManager.GET_META_DATA) + + val appName = try { + appInfo.applicationInfo?.let { + packageManager.getApplicationLabel(it).toString() + } ?: packageName + } catch (_: Exception) { + packageName + } + + val drawable = try { + appInfo.applicationInfo?.let { + packageManager.getApplicationIcon(it) + } + } catch (_: Exception) { + null + } + + val newCachedInfo = AppInfoCache.CachedAppInfo( + appName = appName, + packageInfo = appInfo, + drawable = drawable + ) + + AppInfoCache.putAppInfo(packageName, newCachedInfo) + cachedAppInfo = newCachedInfo + } + } catch (_: Exception) { + val newCachedInfo = AppInfoCache.CachedAppInfo( + appName = packageName, + packageInfo = null, + drawable = null + ) + AppInfoCache.putAppInfo(packageName, newCachedInfo) + cachedAppInfo = newCachedInfo + } finally { + isLoadingAppInfo = false + } + } + } + } + + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surface + ), + shape = RoundedCornerShape(12.dp) + ) { + Column( + modifier = Modifier.padding(12.dp) + ) { + Row( + modifier = Modifier.fillMaxWidth(), + verticalAlignment = Alignment.CenterVertically + ) { + // 应用图标 + AppIcon( + packageName = packageName, + packageInfo = cachedAppInfo?.packageInfo, + modifier = Modifier.size(32.dp) + ) + + Spacer(modifier = Modifier.width(12.dp)) + + Column(modifier = Modifier.weight(1f)) { + val displayName = cachedAppInfo?.appName?.ifEmpty { packageName } ?: packageName + Text( + text = displayName, + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Medium, + color = MaterialTheme.colorScheme.onSurface + ) + if (!isLoadingAppInfo && cachedAppInfo?.appName?.isNotEmpty() == true && + cachedAppInfo?.appName != packageName) { + Text( + text = packageName, + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + } + + Row( + horizontalArrangement = Arrangement.spacedBy(4.dp) + ) { + if (onEditGroup != null) { + IconButton( + onClick = onEditGroup, + enabled = !isLoading + ) { + Icon( + imageVector = Icons.Default.Edit, + contentDescription = stringResource(R.string.edit), + tint = MaterialTheme.colorScheme.primary + ) + } + } + IconButton( + onClick = onDeleteGroup, + enabled = !isLoading + ) { + Icon( + imageVector = Icons.Default.Delete, + contentDescription = stringResource(R.string.delete), + tint = MaterialTheme.colorScheme.error + ) + } + } + } + + // 显示所有路径 + Spacer(modifier = Modifier.height(8.dp)) + + paths.forEach { path -> + Text( + text = path, + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant, + modifier = Modifier + .fillMaxWidth() + .background( + MaterialTheme.colorScheme.surfaceVariant.copy(alpha = 0.3f), + RoundedCornerShape(6.dp) + ) + .padding(8.dp) + ) + + if (path != paths.last()) { + Spacer(modifier = Modifier.height(4.dp)) + } + } + } + } +} + +/** + * 分组标题组件 + */ +@Composable +fun SectionHeader( + title: String, + subtitle: String?, + icon: ImageVector, + count: Int +) { + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surfaceVariant.copy(alpha = 0.4f) + ), + shape = RoundedCornerShape(12.dp) + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(12.dp), + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + imageVector = icon, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier.size(20.dp) + ) + Spacer(modifier = Modifier.width(12.dp)) + Column(modifier = Modifier.weight(1f)) { + Text( + text = title, + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Bold, + color = MaterialTheme.colorScheme.onSurface + ) + subtitle?.let { + Text( + text = it, + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + } + Surface( + shape = RoundedCornerShape(16.dp), + color = MaterialTheme.colorScheme.primary + ) { + Text( + text = count.toString(), + modifier = Modifier.padding(horizontal = 8.dp, vertical = 4.dp), + style = MaterialTheme.typography.labelMedium, + color = MaterialTheme.colorScheme.onPrimary, + fontWeight = FontWeight.Bold + ) + } + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/susfs/component/SuSFSConfigTabs.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/susfs/component/SuSFSConfigTabs.kt new file mode 100644 index 0000000..be683f2 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/susfs/component/SuSFSConfigTabs.kt @@ -0,0 +1,928 @@ +package com.sukisu.ultra.ui.susfs.component + +import android.annotation.SuppressLint +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.foundation.lazy.items +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.* +import androidx.compose.material3.* +import androidx.compose.runtime.Composable +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.remember +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.susfs.util.SuSFSManager +import com.sukisu.ultra.ui.susfs.util.SuSFSManager.isSusVersion158 +import com.sukisu.ultra.ui.viewmodel.SuperUserViewModel + +/** + * SUS路径内容组件 + */ +@Composable +fun SusPathsContent( + susPaths: Set, + isLoading: Boolean, + onAddPath: () -> Unit, + onAddAppPath: () -> Unit, + onRemovePath: (String) -> Unit, + onEditPath: ((String) -> Unit)? = null, + forceRefreshApps: Boolean = false +) { + val superUserApps = SuperUserViewModel.apps + val superUserIsRefreshing = remember { SuperUserViewModel().isRefreshing } + + LaunchedEffect(superUserIsRefreshing, superUserApps.size) { + if (!superUserIsRefreshing && superUserApps.isNotEmpty()) { + AppInfoCache.clearCache() + } + } + + LaunchedEffect(forceRefreshApps) { + if (forceRefreshApps) { + AppInfoCache.clearCache() + } + } + + val (appPathGroups, otherPaths) = remember(susPaths) { + val appPathRegex = Regex(".*/Android/data/([^/]+)/?.*") + val uidPathRegex = Regex("/sys/fs/cgroup/uid_([0-9]+)") + val appPathMap = mutableMapOf>() + val uidToPackageMap = mutableMapOf() + val others = mutableListOf() + + // 构建UID到包名的映射 + SuperUserViewModel.apps.forEach { app -> + try { + val uid = app.packageInfo.applicationInfo?.uid + uidToPackageMap[uid.toString()] = app.packageName + } catch (_: Exception) { + } + } + + susPaths.forEach { path -> + val appDataMatch = appPathRegex.find(path) + val uidMatch = uidPathRegex.find(path) + + when { + appDataMatch != null -> { + val packageName = appDataMatch.groupValues[1] + appPathMap.getOrPut(packageName) { mutableListOf() }.add(path) + } + uidMatch != null -> { + val uid = uidMatch.groupValues[1] + val packageName = uidToPackageMap[uid] + if (packageName != null) { + appPathMap.getOrPut(packageName) { mutableListOf() }.add(path) + } else { + others.add(path) + } + } + else -> { + others.add(path) + } + } + } + + val sortedAppGroups = appPathMap.toList() + .sortedBy { it.first } + .map { (packageName, paths) -> packageName to paths.sorted() } + + Pair(sortedAppGroups, others.sorted()) + } + + Box(modifier = Modifier.fillMaxSize()) { + LazyColumn( + modifier = Modifier.fillMaxSize(), + verticalArrangement = Arrangement.spacedBy(12.dp) + ) { + // 应用路径分组 + if (appPathGroups.isNotEmpty()) { + item { + SectionHeader( + title = stringResource(R.string.app_paths_section), + subtitle = null, + icon = Icons.Default.Apps, + count = appPathGroups.size + ) + } + + items(appPathGroups) { (packageName, paths) -> + AppPathGroupCard( + packageName = packageName, + paths = paths, + onDeleteGroup = { + paths.forEach { path -> onRemovePath(path) } + }, + onEditGroup = if (onEditPath != null) { + { + onEditPath(paths.first()) + } + } else null, + isLoading = isLoading + ) + } + } + + // 其他路径 + if (otherPaths.isNotEmpty()) { + item { + SectionHeader( + title = stringResource(R.string.other_paths_section), + subtitle = null, + icon = Icons.Default.Folder, + count = otherPaths.size + ) + } + + items(otherPaths) { path -> + PathItemCard( + path = path, + icon = Icons.Default.Folder, + onDelete = { onRemovePath(path) }, + onEdit = if (onEditPath != null) { { onEditPath(path) } } else null, + isLoading = isLoading + ) + } + } + + if (susPaths.isEmpty()) { + item { + EmptyStateCard( + message = stringResource(R.string.susfs_no_paths_configured) + ) + } + } + + item { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 16.dp), + horizontalArrangement = Arrangement.spacedBy(8.dp), + verticalAlignment = Alignment.CenterVertically + ) { + Button( + onClick = onAddPath, + modifier = Modifier + .weight(1f) + .height(48.dp), + shape = RoundedCornerShape(8.dp) + ) { + Icon( + imageVector = Icons.Default.Add, + contentDescription = null, + modifier = Modifier.size(24.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text(text = stringResource(R.string.add_custom_path)) + } + + Button( + onClick = onAddAppPath, + modifier = Modifier + .weight(1f) + .height(48.dp), + shape = RoundedCornerShape(8.dp) + ) { + Icon( + imageVector = Icons.Default.Apps, + contentDescription = null, + modifier = Modifier.size(24.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text(text = stringResource(R.string.add_app_path)) + } + } + } + } + } +} + +/** + * SUS循环路径内容组件 + */ +@Composable +fun SusLoopPathsContent( + susLoopPaths: Set, + isLoading: Boolean, + onAddLoopPath: () -> Unit, + onRemoveLoopPath: (String) -> Unit, + onEditLoopPath: ((String) -> Unit)? = null +) { + Box(modifier = Modifier.fillMaxSize()) { + LazyColumn( + modifier = Modifier.fillMaxSize(), + verticalArrangement = Arrangement.spacedBy(12.dp) + ) { + // 说明卡片 + item { + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surfaceVariant.copy(alpha = 0.4f) + ), + shape = RoundedCornerShape(12.dp) + ) { + Column( + modifier = Modifier.padding(12.dp), + verticalArrangement = Arrangement.spacedBy(8.dp) + ) { + Text( + text = stringResource(R.string.sus_loop_paths_description_title), + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Medium, + color = MaterialTheme.colorScheme.primary + ) + Text( + text = stringResource(R.string.sus_loop_paths_description_text), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + Text( + text = stringResource(R.string.susfs_loop_path_restriction_warning), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.secondary + ) + } + } + } + + if (susLoopPaths.isEmpty()) { + item { + EmptyStateCard( + message = stringResource(R.string.susfs_no_loop_paths_configured) + ) + } + } else { + item { + SectionHeader( + title = stringResource(R.string.loop_paths_section), + subtitle = null, + icon = Icons.Default.Loop, + count = susLoopPaths.size + ) + } + + items(susLoopPaths.toList()) { path -> + PathItemCard( + path = path, + icon = Icons.Default.Loop, + onDelete = { onRemoveLoopPath(path) }, + onEdit = if (onEditLoopPath != null) { { onEditLoopPath(path) } } else null, + isLoading = isLoading + ) + } + } + + item { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 16.dp), + horizontalArrangement = Arrangement.spacedBy(8.dp), + verticalAlignment = Alignment.CenterVertically + ) { + Button( + onClick = onAddLoopPath, + modifier = Modifier + .weight(1f) + .height(48.dp), + shape = RoundedCornerShape(8.dp) + ) { + Icon( + imageVector = Icons.Default.Add, + contentDescription = null, + modifier = Modifier.size(24.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text(text = stringResource(R.string.add_loop_path)) + } + } + } + } + } +} + +/** + * SUS Maps内容组件 + */ +@Composable +fun SusMapsContent( + susMaps: Set, + isLoading: Boolean, + onAddSusMap: () -> Unit, + onRemoveSusMap: (String) -> Unit, + onEditSusMap: ((String) -> Unit)? = null +) { + Box(modifier = Modifier.fillMaxSize()) { + LazyColumn( + modifier = Modifier.fillMaxSize(), + verticalArrangement = Arrangement.spacedBy(12.dp) + ) { + // 说明卡片 + item { + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surfaceVariant.copy(alpha = 0.4f) + ), + shape = RoundedCornerShape(12.dp) + ) { + Column( + modifier = Modifier.padding(12.dp), + verticalArrangement = Arrangement.spacedBy(8.dp) + ) { + Text( + text = stringResource(R.string.sus_maps_description_title), + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Medium, + color = MaterialTheme.colorScheme.primary + ) + Text( + text = stringResource(R.string.sus_maps_description_text), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + Text( + text = stringResource(R.string.sus_maps_warning), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.secondary + ) + Text( + text = stringResource(R.string.sus_maps_debug_info), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant.copy(alpha = 0.7f) + ) + } + } + } + + if (susMaps.isEmpty()) { + item { + EmptyStateCard( + message = stringResource(R.string.susfs_no_sus_maps_configured) + ) + } + } else { + item { + SectionHeader( + title = stringResource(R.string.sus_maps_section), + subtitle = null, + icon = Icons.Default.Security, + count = susMaps.size + ) + } + + items(susMaps.toList()) { map -> + PathItemCard( + path = map, + icon = Icons.Default.Security, + onDelete = { onRemoveSusMap(map) }, + onEdit = if (onEditSusMap != null) { { onEditSusMap(map) } } else null, + isLoading = isLoading + ) + } + } + + item { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 16.dp), + horizontalArrangement = Arrangement.spacedBy(8.dp), + verticalAlignment = Alignment.CenterVertically + ) { + Button( + onClick = onAddSusMap, + modifier = Modifier + .weight(1f) + .height(48.dp), + shape = RoundedCornerShape(8.dp) + ) { + Icon( + imageVector = Icons.Default.Add, + contentDescription = null, + modifier = Modifier.size(24.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text(text = stringResource(R.string.add)) + } + } + } + } + } +} + +/** + * SUS挂载内容组件 + */ +@Composable +fun SusMountsContent( + susMounts: Set, + hideSusMountsForAllProcs: Boolean, + isSusVersion158: Boolean, + isLoading: Boolean, + onAddMount: () -> Unit, + onRemoveMount: (String) -> Unit, + onEditMount: ((String) -> Unit)? = null, + onToggleHideSusMountsForAllProcs: (Boolean) -> Unit +) { + Box(modifier = Modifier.fillMaxSize()) { + LazyColumn( + modifier = Modifier.fillMaxSize(), + verticalArrangement = Arrangement.spacedBy(12.dp) + ) { + if (isSusVersion158) { + item { + SusMountHidingControlCard( + hideSusMountsForAllProcs = hideSusMountsForAllProcs, + isLoading = isLoading, + onToggleHiding = onToggleHideSusMountsForAllProcs + ) + } + } + + if (susMounts.isEmpty()) { + item { + EmptyStateCard( + message = stringResource(R.string.susfs_no_mounts_configured) + ) + } + } else { + items(susMounts.toList()) { mount -> + PathItemCard( + path = mount, + icon = Icons.Default.Storage, + onDelete = { onRemoveMount(mount) }, + onEdit = if (onEditMount != null) { { onEditMount(mount) } } else null, + isLoading = isLoading + ) + } + } + + item { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 16.dp), + horizontalArrangement = Arrangement.spacedBy(8.dp), + verticalAlignment = Alignment.CenterVertically + ) { + Button( + onClick = onAddMount, + modifier = Modifier + .weight(1f) + .height(48.dp), + shape = RoundedCornerShape(8.dp) + ) { + Icon( + imageVector = Icons.Default.Add, + contentDescription = null, + modifier = Modifier.size(24.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text(text = stringResource(R.string.add)) + } + } + } + } + } +} + +/** + * 尝试卸载内容组件 + */ +@Composable +fun TryUmountContent( + tryUmounts: Set, + umountForZygoteIsoService: Boolean, + isLoading: Boolean, + onAddUmount: () -> Unit, + onRemoveUmount: (String) -> Unit, + onEditUmount: ((String) -> Unit)? = null, + onToggleUmountForZygoteIsoService: (Boolean) -> Unit +) { + Box(modifier = Modifier.fillMaxSize()) { + LazyColumn( + modifier = Modifier.fillMaxSize(), + verticalArrangement = Arrangement.spacedBy(12.dp) + ) { + if (isSusVersion158()) { + item { + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surface + ), + shape = RoundedCornerShape(12.dp) + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(12.dp), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Column( + modifier = Modifier.weight(1f) + ) { + Row( + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + imageVector = Icons.Default.Security, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier.size(18.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text( + text = stringResource(R.string.umount_zygote_iso_service), + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Medium, + color = MaterialTheme.colorScheme.onSurface + ) + } + Spacer(modifier = Modifier.height(6.dp)) + Text( + text = stringResource(R.string.umount_zygote_iso_service_description), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant, + lineHeight = 14.sp + ) + } + Switch( + checked = umountForZygoteIsoService, + onCheckedChange = onToggleUmountForZygoteIsoService, + enabled = !isLoading + ) + } + } + } + } + + if (tryUmounts.isEmpty()) { + item { + EmptyStateCard( + message = stringResource(R.string.susfs_no_umounts_configured) + ) + } + } else { + items(tryUmounts.toList()) { umountEntry -> + val parts = umountEntry.split("|") + val path = if (parts.isNotEmpty()) parts[0] else umountEntry + val mode = if (parts.size > 1) parts[1] else "0" + val modeText = if (mode == "0") + stringResource(R.string.susfs_umount_mode_normal_short) + else + stringResource(R.string.susfs_umount_mode_detach_short) + + PathItemCard( + path = path, + icon = Icons.Default.Storage, + additionalInfo = stringResource(R.string.susfs_umount_mode_display, modeText, mode), + onDelete = { onRemoveUmount(umountEntry) }, + onEdit = if (onEditUmount != null) { { onEditUmount(umountEntry) } } else null, + isLoading = isLoading + ) + } + } + + item { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 16.dp), + horizontalArrangement = Arrangement.spacedBy(8.dp), + verticalAlignment = Alignment.CenterVertically + ) { + Button( + onClick = onAddUmount, + modifier = Modifier + .weight(1f) + .height(48.dp), + shape = RoundedCornerShape(8.dp) + ) { + Icon( + imageVector = Icons.Default.Add, + contentDescription = null, + modifier = Modifier.size(24.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text(text = stringResource(R.string.add)) + } + } + } + } + } +} + +/** + * Kstat配置内容组件 + */ +@Composable +fun KstatConfigContent( + kstatConfigs: Set, + addKstatPaths: Set, + isLoading: Boolean, + onAddKstatStatically: () -> Unit, + onAddKstat: () -> Unit, + onRemoveKstatConfig: (String) -> Unit, + onEditKstatConfig: ((String) -> Unit)? = null, + onRemoveAddKstat: (String) -> Unit, + onEditAddKstat: ((String) -> Unit)? = null, + onUpdateKstat: (String) -> Unit, + onUpdateKstatFullClone: (String) -> Unit +) { + Box(modifier = Modifier.fillMaxSize()) { + LazyColumn( + modifier = Modifier.fillMaxSize(), + verticalArrangement = Arrangement.spacedBy(12.dp) + ) { + item { + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surfaceVariant.copy(alpha = 0.4f) + ), + shape = RoundedCornerShape(12.dp) + ) { + Column( + modifier = Modifier.padding(12.dp), + verticalArrangement = Arrangement.spacedBy(8.dp) + ) { + Text( + text = stringResource(R.string.kstat_config_description_title), + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Medium, + color = MaterialTheme.colorScheme.primary + ) + Text( + text = stringResource(R.string.kstat_config_description_add_statically), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + Text( + text = stringResource(R.string.kstat_config_description_add), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + Text( + text = stringResource(R.string.kstat_config_description_update), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + Text( + text = stringResource(R.string.kstat_config_description_update_full_clone), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + } + } + + if (kstatConfigs.isNotEmpty()) { + item { + Text( + text = stringResource(R.string.static_kstat_config), + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Bold + ) + } + items(kstatConfigs.toList()) { config -> + KstatConfigItemCard( + config = config, + onDelete = { onRemoveKstatConfig(config) }, + onEdit = if (onEditKstatConfig != null) { { onEditKstatConfig(config) } } else null, + isLoading = isLoading + ) + } + } + + if (addKstatPaths.isNotEmpty()) { + item { + Text( + text = stringResource(R.string.kstat_path_management), + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Bold + ) + } + items(addKstatPaths.toList()) { path -> + AddKstatPathItemCard( + path = path, + onDelete = { onRemoveAddKstat(path) }, + onEdit = if (onEditAddKstat != null) { { onEditAddKstat(path) } } else null, + onUpdate = { onUpdateKstat(path) }, + onUpdateFullClone = { onUpdateKstatFullClone(path) }, + isLoading = isLoading + ) + } + } + + if (kstatConfigs.isEmpty() && addKstatPaths.isEmpty()) { + item { + EmptyStateCard( + message = stringResource(R.string.no_kstat_config_message) + ) + } + } + + item { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 16.dp), + horizontalArrangement = Arrangement.spacedBy(8.dp), + verticalAlignment = Alignment.CenterVertically + ) { + Button( + onClick = onAddKstat, + modifier = Modifier + .weight(1f) + .height(48.dp), + shape = RoundedCornerShape(8.dp) + ) { + Icon( + imageVector = Icons.Default.Add, + contentDescription = null, + modifier = Modifier.size(24.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text(text = stringResource(R.string.add)) + } + + Button( + onClick = onAddKstatStatically, + modifier = Modifier + .weight(1f) + .height(48.dp), + shape = RoundedCornerShape(8.dp) + ) { + Icon( + imageVector = Icons.Default.Settings, + contentDescription = null, + modifier = Modifier.size(24.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text(text = stringResource(R.string.add)) + } + } + } + } + } +} + +/** + * 路径设置内容组件 + */ +@SuppressLint("SdCardPath") +@Composable +fun PathSettingsContent( + androidDataPath: String, + onAndroidDataPathChange: (String) -> Unit, + sdcardPath: String, + onSdcardPathChange: (String) -> Unit, + isLoading: Boolean, + onSetAndroidDataPath: () -> Unit, + onSetSdcardPath: () -> Unit +) { + LazyColumn( + modifier = Modifier.fillMaxSize(), + verticalArrangement = Arrangement.spacedBy(16.dp) + ) { + item { + Card( + modifier = Modifier.fillMaxWidth(), + shape = RoundedCornerShape(12.dp) + ) { + Column( + modifier = Modifier.padding(12.dp), + verticalArrangement = Arrangement.spacedBy(12.dp) + ) { + OutlinedTextField( + value = androidDataPath, + onValueChange = onAndroidDataPathChange, + label = { Text(stringResource(R.string.susfs_android_data_path_label)) }, + placeholder = { Text("/sdcard/Android/data") }, + modifier = Modifier.fillMaxWidth(), + enabled = !isLoading, + singleLine = true, + shape = RoundedCornerShape(8.dp) + ) + + Button( + onClick = onSetAndroidDataPath, + enabled = !isLoading && androidDataPath.isNotBlank(), + modifier = Modifier + .fillMaxWidth() + .height(40.dp), + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(R.string.susfs_set_android_data_path)) + } + } + } + } + + item { + Card( + modifier = Modifier.fillMaxWidth(), + shape = RoundedCornerShape(12.dp) + ) { + Column( + modifier = Modifier.padding(12.dp), + verticalArrangement = Arrangement.spacedBy(12.dp) + ) { + OutlinedTextField( + value = sdcardPath, + onValueChange = onSdcardPathChange, + label = { Text(stringResource(R.string.susfs_sdcard_path_label)) }, + placeholder = { Text("/sdcard") }, + modifier = Modifier.fillMaxWidth(), + enabled = !isLoading, + singleLine = true, + shape = RoundedCornerShape(8.dp) + ) + + Button( + onClick = onSetSdcardPath, + enabled = !isLoading && sdcardPath.isNotBlank(), + modifier = Modifier + .fillMaxWidth() + .height(40.dp), + shape = RoundedCornerShape(8.dp) + ) { + Text(stringResource(R.string.susfs_set_sdcard_path)) + } + } + } + } + } +} + +/** + * 启用功能状态内容组件 + */ +@Composable +fun EnabledFeaturesContent( + enabledFeatures: List, + onRefresh: () -> Unit +) { + LazyColumn( + modifier = Modifier.fillMaxSize(), + verticalArrangement = Arrangement.spacedBy(12.dp) + ) { + item { + Card( + modifier = Modifier.fillMaxWidth(), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surfaceVariant.copy(alpha = 0.4f) + ), + shape = RoundedCornerShape(12.dp) + ) { + Column( + modifier = Modifier.padding(12.dp) + ) { + Row( + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + imageVector = Icons.Default.Settings, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier.size(18.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text( + text = stringResource(R.string.susfs_enabled_features_description), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + } + } + } + + if (enabledFeatures.isEmpty()) { + item { + EmptyStateCard( + message = stringResource(R.string.susfs_no_features_found) + ) + } + } else { + items(enabledFeatures) { feature -> + FeatureStatusCard( + feature = feature, + onRefresh = onRefresh + ) + } + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/susfs/util/SuSFSManager.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/susfs/util/SuSFSManager.kt new file mode 100644 index 0000000..e199568 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/susfs/util/SuSFSManager.kt @@ -0,0 +1,1520 @@ +package com.sukisu.ultra.ui.susfs.util + +import android.annotation.SuppressLint +import android.content.Context +import android.content.SharedPreferences +import android.content.pm.ApplicationInfo +import android.content.pm.PackageInfo +import android.os.Build +import android.util.Log +import android.widget.Toast +import com.dergoogler.mmrl.platform.Platform.Companion.context +import com.sukisu.ultra.R +import com.topjohnwu.superuser.Shell +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.launch +import kotlinx.coroutines.runBlocking +import kotlinx.coroutines.withContext +import java.io.File +import java.io.FileOutputStream +import java.io.IOException +import androidx.core.content.edit +import com.sukisu.ultra.ui.util.getRootShell +import com.sukisu.ultra.ui.util.getSuSFSVersion +import com.sukisu.ultra.ui.util.getSuSFSFeatures +import com.sukisu.ultra.ui.viewmodel.SuperUserViewModel +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.async +import kotlinx.coroutines.awaitAll +import org.json.JSONArray +import org.json.JSONObject +import java.text.SimpleDateFormat +import java.util.* + +/** + * SuSFS 配置管理器 + * 用于管理SuSFS相关的配置和命令执行 + */ +object SuSFSManager { + private const val PREFS_NAME = "susfs_config" + private const val KEY_UNAME_VALUE = "uname_value" + private const val KEY_BUILD_TIME_VALUE = "build_time_value" + private const val KEY_AUTO_START_ENABLED = "auto_start_enabled" + private const val KEY_SUS_PATHS = "sus_paths" + private const val KEY_SUS_LOOP_PATHS = "sus_loop_paths" + + private const val KEY_SUS_MAPS = "sus_maps" + private const val KEY_SUS_MOUNTS = "sus_mounts" + private const val KEY_TRY_UMOUNTS = "try_umounts" + private const val KEY_ANDROID_DATA_PATH = "android_data_path" + private const val KEY_SDCARD_PATH = "sdcard_path" + private const val KEY_ENABLE_LOG = "enable_log" + private const val KEY_EXECUTE_IN_POST_FS_DATA = "execute_in_post_fs_data" + private const val KEY_KSTAT_CONFIGS = "kstat_configs" + private const val KEY_ADD_KSTAT_PATHS = "add_kstat_paths" + private const val KEY_HIDE_SUS_MOUNTS_FOR_ALL_PROCS = "hide_sus_mounts_for_all_procs" + private const val KEY_ENABLE_CLEANUP_RESIDUE = "enable_cleanup_residue" + private const val KEY_ENABLE_HIDE_BL = "enable_hide_bl" + private const val KEY_UMOUNT_FOR_ZYGOTE_ISO_SERVICE = "umount_for_zygote_iso_service" + private const val KEY_ENABLE_AVC_LOG_SPOOFING = "enable_avc_log_spoofing" + + + // 常量 + private const val SUSFS_BINARY_TARGET_NAME = "ksu_susfs" + private const val DEFAULT_UNAME = "default" + private const val DEFAULT_BUILD_TIME = "default" + private const val MODULE_ID = "susfs_manager" + private const val MODULE_PATH = "/data/adb/modules/$MODULE_ID" + private const val MIN_VERSION_FOR_HIDE_MOUNT = "1.5.8" + private const val MIN_VERSION_FOR_LOOP_PATH = "1.5.9" + private const val MIN_VERSION_SUS_MAPS = "1.5.12" + const val MAX_SUSFS_VERSION = "2.0.0" + private const val BACKUP_FILE_EXTENSION = ".susfs_backup" + private const val MEDIA_DATA_PATH = "/data/media/0/Android/data" + private const val CGROUP_UID_PATH_PREFIX = "/sys/fs/cgroup/uid_" + + data class SlotInfo(val slotName: String, val uname: String, val buildTime: String) + data class CommandResult(val isSuccess: Boolean, val output: String, val errorOutput: String = "") + data class EnabledFeature( + val name: String, + val isEnabled: Boolean, + val statusText: String = if (isEnabled) context.getString(R.string.susfs_feature_enabled) else context.getString(R.string.susfs_feature_disabled), + val canConfigure: Boolean = false + ) + + /** + * 应用信息数据类 + */ + data class AppInfo( + val packageName: String, + val appName: String, + val packageInfo: PackageInfo, + val isSystemApp: Boolean + ) + + /** + * 备份数据类 + */ + data class BackupData( + val version: String, + val timestamp: Long, + val deviceInfo: String, + val configurations: Map + ) { + fun toJson(): String { + val jsonObject = JSONObject().apply { + put("version", version) + put("timestamp", timestamp) + put("deviceInfo", deviceInfo) + put("configurations", JSONObject(configurations)) + } + return jsonObject.toString(2) + } + + companion object { + fun fromJson(jsonString: String): BackupData? { + return try { + val jsonObject = JSONObject(jsonString) + val configurationsJson = jsonObject.getJSONObject("configurations") + val configurations = mutableMapOf() + + configurationsJson.keys().forEach { key -> + val value = configurationsJson.get(key) + configurations[key] = when (value) { + is JSONArray -> { + val set = mutableSetOf() + for (i in 0 until value.length()) { + set.add(value.getString(i)) + } + set + } + else -> value + } + } + + BackupData( + version = jsonObject.getString("version"), + timestamp = jsonObject.getLong("timestamp"), + deviceInfo = jsonObject.getString("deviceInfo"), + configurations = configurations + ) + } catch (e: Exception) { + e.printStackTrace() + null + } + } + } + } + + /** + * 模块配置数据类 + */ + data class ModuleConfig( + val targetPath: String, + val unameValue: String, + val buildTimeValue: String, + val executeInPostFsData: Boolean, + val susPaths: Set, + val susLoopPaths: Set, + val susMaps: Set, + val susMounts: Set, + val tryUmounts: Set, + val androidDataPath: String, + val sdcardPath: String, + val enableLog: Boolean, + val kstatConfigs: Set, + val addKstatPaths: Set, + val hideSusMountsForAllProcs: Boolean, + val support158: Boolean, + val enableHideBl: Boolean, + val enableCleanupResidue: Boolean, + val umountForZygoteIsoService: Boolean, + val enableAvcLogSpoofing: Boolean + ) { + /** + * 检查是否有需要自启动的配置 + */ + fun hasAutoStartConfig(): Boolean { + return unameValue != DEFAULT_UNAME || + buildTimeValue != DEFAULT_BUILD_TIME || + susPaths.isNotEmpty() || + susLoopPaths.isNotEmpty() || + susMaps.isNotEmpty() || + susMounts.isNotEmpty() || + tryUmounts.isNotEmpty() || + kstatConfigs.isNotEmpty() || + addKstatPaths.isNotEmpty() + } + } + + // 基础工具方法 + private fun getPrefs(context: Context): SharedPreferences = + context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE) + + private fun getSuSFSVersionUse(context: Context): String = try { + val version = getSuSFSVersion() + val binaryName = "${SUSFS_BINARY_TARGET_NAME}_${version.removePrefix("v")}" + if (isBinaryAvailable(context, binaryName)) { + version + } else { + MAX_SUSFS_VERSION + } + } catch (_: Exception) { + MAX_SUSFS_VERSION + } + + fun isBinaryAvailable(context: Context, binaryName: String): Boolean = try { + context.assets.open(binaryName).use { true } + } catch (_: IOException) { false } + + private fun getSuSFSBinaryName(context: Context): String = "${SUSFS_BINARY_TARGET_NAME}_${getSuSFSVersionUse(context).removePrefix("v")}" + + private fun getSuSFSTargetPath(): String = "/data/adb/ksu/bin/$SUSFS_BINARY_TARGET_NAME" + + private fun runCmd(shell: Shell, cmd: String): String { + return shell.newJob() + .add(cmd) + .to(mutableListOf(), null) + .exec().out + .joinToString("\n") + } + + private fun runCmdWithResult(cmd: String): CommandResult { + val result = Shell.getShell().newJob().add(cmd).exec() + return CommandResult(result.isSuccess, result.out.joinToString("\n"), result.err.joinToString("\n")) + } + + /** + * 版本比较方法 + */ + private fun compareVersions(version1: String, version2: String): Int { + val v1Parts = version1.removePrefix("v").split(".").map { it.toIntOrNull() ?: 0 } + val v2Parts = version2.removePrefix("v").split(".").map { it.toIntOrNull() ?: 0 } + + val maxLength = maxOf(v1Parts.size, v2Parts.size) + + for (i in 0 until maxLength) { + val v1Part = v1Parts.getOrNull(i) ?: 0 + val v2Part = v2Parts.getOrNull(i) ?: 0 + + when { + v1Part > v2Part -> return 1 + v1Part < v2Part -> return -1 + } + } + return 0 + } + + private fun isVersionAtLeast(minVersion: String): Boolean = try { + compareVersions(getSuSFSVersion(), minVersion) >= 0 + } catch (_: Exception) { + true + } + // 检查是否支持设置sdcard路径等功能(1.5.8+) + fun isSusVersion158(): Boolean = isVersionAtLeast(MIN_VERSION_FOR_HIDE_MOUNT) + + // 检查是否支持循环路径和AVC日志欺骗等功能(1.5.9+) + fun isSusVersion159(): Boolean = isVersionAtLeast(MIN_VERSION_FOR_LOOP_PATH) + + // 检查是否支持隐藏内存映射(1.5.12+) + fun isSusVersion1512(): Boolean = isVersionAtLeast(MIN_VERSION_SUS_MAPS) + + /** + * 获取当前模块配置 + */ + private fun getCurrentModuleConfig(context: Context): ModuleConfig { + return ModuleConfig( + targetPath = getSuSFSTargetPath(), + unameValue = getUnameValue(context), + buildTimeValue = getBuildTimeValue(context), + executeInPostFsData = getExecuteInPostFsData(context), + susPaths = getSusPaths(context), + susLoopPaths = getSusLoopPaths(context), + susMaps = getSusMaps(context), + susMounts = getSusMounts(context), + tryUmounts = getTryUmounts(context), + androidDataPath = getAndroidDataPath(context), + sdcardPath = getSdcardPath(context), + enableLog = getEnableLogState(context), + kstatConfigs = getKstatConfigs(context), + addKstatPaths = getAddKstatPaths(context), + hideSusMountsForAllProcs = getHideSusMountsForAllProcs(context), + support158 = isSusVersion158(), + enableHideBl = getEnableHideBl(context), + enableCleanupResidue = getEnableCleanupResidue(context), + umountForZygoteIsoService = getUmountForZygoteIsoService(context), + enableAvcLogSpoofing = getEnableAvcLogSpoofing(context) + ) + } + + // 配置存取方法 + fun saveUnameValue(context: Context, value: String) = + getPrefs(context).edit { putString(KEY_UNAME_VALUE, value) } + + fun getUnameValue(context: Context): String = + getPrefs(context).getString(KEY_UNAME_VALUE, DEFAULT_UNAME) ?: DEFAULT_UNAME + + fun saveBuildTimeValue(context: Context, value: String) = + getPrefs(context).edit { putString(KEY_BUILD_TIME_VALUE, value)} + + fun getBuildTimeValue(context: Context): String = + getPrefs(context).getString(KEY_BUILD_TIME_VALUE, DEFAULT_BUILD_TIME) ?: DEFAULT_BUILD_TIME + + fun setAutoStartEnabled(context: Context, enabled: Boolean) = + getPrefs(context).edit { putBoolean(KEY_AUTO_START_ENABLED, enabled) } + + fun isAutoStartEnabled(context: Context): Boolean = + getPrefs(context).getBoolean(KEY_AUTO_START_ENABLED, false) + + fun saveEnableLogState(context: Context, enabled: Boolean) = + getPrefs(context).edit { putBoolean(KEY_ENABLE_LOG, enabled) } + + fun getEnableLogState(context: Context): Boolean = + getPrefs(context).getBoolean(KEY_ENABLE_LOG, false) + + fun getExecuteInPostFsData(context: Context): Boolean = + getPrefs(context).getBoolean(KEY_EXECUTE_IN_POST_FS_DATA, false) + + fun saveExecuteInPostFsData(context: Context, executeInPostFsData: Boolean) { + getPrefs(context).edit { putBoolean(KEY_EXECUTE_IN_POST_FS_DATA, executeInPostFsData) } + if (isAutoStartEnabled(context)) { + CoroutineScope(Dispatchers.Default).launch { + updateMagiskModule(context) + } + } + } + + // SUS挂载隐藏控制 + fun saveHideSusMountsForAllProcs(context: Context, hideForAll: Boolean) = + getPrefs(context).edit { putBoolean(KEY_HIDE_SUS_MOUNTS_FOR_ALL_PROCS, hideForAll) } + + fun getHideSusMountsForAllProcs(context: Context): Boolean = + getPrefs(context).getBoolean(KEY_HIDE_SUS_MOUNTS_FOR_ALL_PROCS, true) + + // 隐藏BL锁脚本 + fun saveEnableHideBl(context: Context, enabled: Boolean) = + getPrefs(context).edit { putBoolean(KEY_ENABLE_HIDE_BL, enabled) } + + fun getEnableHideBl(context: Context): Boolean = + getPrefs(context).getBoolean(KEY_ENABLE_HIDE_BL, true) + + + // 清理残留配置 + fun saveEnableCleanupResidue(context: Context, enabled: Boolean) = + getPrefs(context).edit { putBoolean(KEY_ENABLE_CLEANUP_RESIDUE, enabled) } + + fun getEnableCleanupResidue(context: Context): Boolean = + getPrefs(context).getBoolean(KEY_ENABLE_CLEANUP_RESIDUE, false) + + // Zygote隔离服务卸载控制 + fun saveUmountForZygoteIsoService(context: Context, enabled: Boolean) = + getPrefs(context).edit { putBoolean(KEY_UMOUNT_FOR_ZYGOTE_ISO_SERVICE, enabled) } + + fun getUmountForZygoteIsoService(context: Context): Boolean = + getPrefs(context).getBoolean(KEY_UMOUNT_FOR_ZYGOTE_ISO_SERVICE, false) + + // AVC日志欺骗配置 + fun saveEnableAvcLogSpoofing(context: Context, enabled: Boolean) = + getPrefs(context).edit { putBoolean(KEY_ENABLE_AVC_LOG_SPOOFING, enabled) } + + fun getEnableAvcLogSpoofing(context: Context): Boolean = + getPrefs(context).getBoolean(KEY_ENABLE_AVC_LOG_SPOOFING, false) + + + // 路径和配置管理 + fun saveSusPaths(context: Context, paths: Set) = + getPrefs(context).edit { putStringSet(KEY_SUS_PATHS, paths) } + + fun getSusPaths(context: Context): Set = + getPrefs(context).getStringSet(KEY_SUS_PATHS, emptySet()) ?: emptySet() + + // 循环路径管理 + fun saveSusLoopPaths(context: Context, paths: Set) = + getPrefs(context).edit { putStringSet(KEY_SUS_LOOP_PATHS, paths) } + + fun getSusLoopPaths(context: Context): Set = + getPrefs(context).getStringSet(KEY_SUS_LOOP_PATHS, emptySet()) ?: emptySet() + + fun saveSusMaps(context: Context, maps: Set) = + getPrefs(context).edit { putStringSet(KEY_SUS_MAPS, maps) } + + fun getSusMaps(context: Context): Set = + getPrefs(context).getStringSet(KEY_SUS_MAPS, emptySet()) ?: emptySet() + + fun saveSusMounts(context: Context, mounts: Set) = + getPrefs(context).edit { putStringSet(KEY_SUS_MOUNTS, mounts) } + + fun getSusMounts(context: Context): Set = + getPrefs(context).getStringSet(KEY_SUS_MOUNTS, emptySet()) ?: emptySet() + + fun saveTryUmounts(context: Context, umounts: Set) = + getPrefs(context).edit { putStringSet(KEY_TRY_UMOUNTS, umounts) } + + fun getTryUmounts(context: Context): Set = + getPrefs(context).getStringSet(KEY_TRY_UMOUNTS, emptySet()) ?: emptySet() + + fun saveKstatConfigs(context: Context, configs: Set) = + getPrefs(context).edit { putStringSet(KEY_KSTAT_CONFIGS, configs) } + + fun getKstatConfigs(context: Context): Set = + getPrefs(context).getStringSet(KEY_KSTAT_CONFIGS, emptySet()) ?: emptySet() + + fun saveAddKstatPaths(context: Context, paths: Set) = + getPrefs(context).edit { putStringSet(KEY_ADD_KSTAT_PATHS, paths) } + + fun getAddKstatPaths(context: Context): Set = + getPrefs(context).getStringSet(KEY_ADD_KSTAT_PATHS, emptySet()) ?: emptySet() + + @SuppressLint("SdCardPath") + fun saveAndroidDataPath(context: Context, path: String) = + getPrefs(context).edit { putString(KEY_ANDROID_DATA_PATH, path) } + + @SuppressLint("SdCardPath") + fun getAndroidDataPath(context: Context): String = + getPrefs(context).getString(KEY_ANDROID_DATA_PATH, "/sdcard/Android/data") ?: "/sdcard/Android/data" + + @SuppressLint("SdCardPath") + fun saveSdcardPath(context: Context, path: String) = + getPrefs(context).edit { putString(KEY_SDCARD_PATH, path) } + + @SuppressLint("SdCardPath") + fun getSdcardPath(context: Context): String = + getPrefs(context).getString(KEY_SDCARD_PATH, "/sdcard") ?: "/sdcard" + + // 获取已安装的应用列表 + @SuppressLint("QueryPermissionsNeeded") + suspend fun getInstalledApps(): List = withContext(Dispatchers.IO) { + try { + val allApps = mutableMapOf() + + // 从SuperUser中获取应用 + SuperUserViewModel.apps.forEach { superUserApp -> + try { + val isSystemApp = superUserApp.packageInfo.applicationInfo?.let { + (it.flags and ApplicationInfo.FLAG_SYSTEM) != 0 + } ?: false + if (!isSystemApp) { + allApps[superUserApp.packageName] = AppInfo( + packageName = superUserApp.packageName, + appName = superUserApp.label, + packageInfo = superUserApp.packageInfo, + isSystemApp = false + ) + } + } catch (_: Exception) { + } + } + + // 检查每个应用的数据目录是否存在 + val filteredApps = allApps.values.map { appInfo -> + async(Dispatchers.IO) { + val dataPath = "$MEDIA_DATA_PATH/${appInfo.packageName}" + val exists = try { + val shell = getRootShell() + val outputList = mutableListOf() + val errorList = mutableListOf() + + val result = shell.newJob() + .add("[ -d \"$dataPath\" ] && echo 'exists' || echo 'not_exists'") + .to(outputList, errorList) + .exec() + + result.isSuccess && outputList.isNotEmpty() && outputList[0].trim() == "exists" + } catch (e: Exception) { + Log.w("SuSFSManager", "Failed to check directory for ${appInfo.packageName}: ${e.message}") + false + } + if (exists) appInfo else null + } + }.awaitAll().filterNotNull() + + filteredApps.sortedBy { it.appName } + } catch (e: Exception) { + e.printStackTrace() + emptyList() + } + } + + // 获取应用的UID + private suspend fun getAppUid(context: Context, packageName: String): Int? = withContext(Dispatchers.IO) { + try { + // 从SuperUserViewModel中查找 + val superUserApp = SuperUserViewModel.apps.find { it.packageName == packageName } + if (superUserApp != null) { + return@withContext superUserApp.packageInfo.applicationInfo?.uid + } + + // 从PackageManager中查找 + val packageManager = context.packageManager + val packageInfo = packageManager.getPackageInfo(packageName, 0) + packageInfo.applicationInfo?.uid + } catch (e: Exception) { + Log.w("SuSFSManager", "Failed to get UID for package $packageName: ${e.message}") + null + } + } + + private fun buildUidPath(uid: Int): String = "$CGROUP_UID_PATH_PREFIX$uid" + + + // 快捷添加应用路径 + suspend fun addAppPaths(context: Context, packageName: String): Boolean { + val androidDataPath = getAndroidDataPath(context) + getSdcardPath(context) + + val path1 = "$androidDataPath/$packageName" + val path2 = "$MEDIA_DATA_PATH/$packageName" + + val uid = getAppUid(context, packageName) + if (uid == null) { + Log.w("SuSFSManager", "Failed to get UID for package: $packageName") + return false + } + + val path3 = buildUidPath(uid) + + var successCount = 0 + val totalCount = 3 + + // 添加第一个路径(Android/data路径) + if (addSusPath(context, path1)) { + successCount++ + } + + // 添加第二个路径(媒体数据路径) + if (addSusPath(context, path2)) { + successCount++ + } + + // 添加第三个路径(UID路径) + if (addSusPath(context, path3)) { + successCount++ + } + + val success = successCount > 0 + + Log.d("SuSFSManager", "Added $successCount/$totalCount paths for $packageName (UID: $uid)") + + return success + } + + // 获取所有配置的Map + private fun getAllConfigurations(context: Context): Map { + return mapOf( + KEY_UNAME_VALUE to getUnameValue(context), + KEY_BUILD_TIME_VALUE to getBuildTimeValue(context), + KEY_AUTO_START_ENABLED to isAutoStartEnabled(context), + KEY_SUS_PATHS to getSusPaths(context), + KEY_SUS_LOOP_PATHS to getSusLoopPaths(context), + KEY_SUS_MAPS to getSusMaps(context), + KEY_SUS_MOUNTS to getSusMounts(context), + KEY_TRY_UMOUNTS to getTryUmounts(context), + KEY_ANDROID_DATA_PATH to getAndroidDataPath(context), + KEY_SDCARD_PATH to getSdcardPath(context), + KEY_ENABLE_LOG to getEnableLogState(context), + KEY_EXECUTE_IN_POST_FS_DATA to getExecuteInPostFsData(context), + KEY_KSTAT_CONFIGS to getKstatConfigs(context), + KEY_ADD_KSTAT_PATHS to getAddKstatPaths(context), + KEY_HIDE_SUS_MOUNTS_FOR_ALL_PROCS to getHideSusMountsForAllProcs(context), + KEY_ENABLE_HIDE_BL to getEnableHideBl(context), + KEY_ENABLE_CLEANUP_RESIDUE to getEnableCleanupResidue(context), + KEY_UMOUNT_FOR_ZYGOTE_ISO_SERVICE to getUmountForZygoteIsoService(context), + KEY_ENABLE_AVC_LOG_SPOOFING to getEnableAvcLogSpoofing(context), + ) + } + + //生成备份文件名 + private fun generateBackupFileName(): String { + val dateFormat = SimpleDateFormat("yyyyMMdd_HHmmss", Locale.getDefault()) + val timestamp = dateFormat.format(Date()) + return "SuSFS_Config_$timestamp$BACKUP_FILE_EXTENSION" + } + + // 获取设备信息 + private fun getDeviceInfo(): String { + return try { + "${Build.MANUFACTURER} ${Build.MODEL} (${Build.VERSION.RELEASE})" + } catch (_: Exception) { + "Unknown Device" + } + } + + // 创建配置备份 + suspend fun createBackup(context: Context, backupFilePath: String): Boolean = withContext(Dispatchers.IO) { + try { + val configurations = getAllConfigurations(context) + val backupData = BackupData( + version = getSuSFSVersion(), + timestamp = System.currentTimeMillis(), + deviceInfo = getDeviceInfo(), + configurations = configurations + ) + + val backupFile = File(backupFilePath) + backupFile.parentFile?.mkdirs() + + backupFile.writeText(backupData.toJson()) + + showToast(context, context.getString(R.string.susfs_backup_success, backupFile.name)) + true + } catch (e: Exception) { + e.printStackTrace() + showToast(context, context.getString(R.string.susfs_backup_failed, e.message ?: "Unknown error")) + false + } + } + + //从备份文件还原配置 + suspend fun restoreFromBackup(context: Context, backupFilePath: String): Boolean = withContext(Dispatchers.IO) { + try { + val backupFile = File(backupFilePath) + if (!backupFile.exists()) { + showToast(context, context.getString(R.string.susfs_backup_file_not_found)) + return@withContext false + } + + val backupContent = backupFile.readText() + val backupData = BackupData.fromJson(backupContent) + + if (backupData == null) { + showToast(context, context.getString(R.string.susfs_backup_invalid_format)) + return@withContext false + } + + // 检查备份版本兼容性 + if (backupData.version != getSuSFSVersion()) { + showToast(context, context.getString(R.string.susfs_backup_version_mismatch)) + } + + // 还原所有配置 + restoreConfigurations(context, backupData.configurations) + + // 如果自启动已启用,更新模块 + if (isAutoStartEnabled(context)) { + updateMagiskModule(context) + } + + val dateFormat = SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.getDefault()) + val backupDate = dateFormat.format(Date(backupData.timestamp)) + + showToast(context, context.getString(R.string.susfs_restore_success, backupDate, backupData.deviceInfo)) + true + } catch (e: Exception) { + e.printStackTrace() + showToast(context, context.getString(R.string.susfs_restore_failed, e.message ?: "Unknown error")) + false + } + } + + + // 还原配置到SharedPreferences + private fun restoreConfigurations(context: Context, configurations: Map) { + val prefs = getPrefs(context) + prefs.edit { + configurations.forEach { (key, value) -> + when (value) { + is String -> putString(key, value) + is Boolean -> putBoolean(key, value) + is Set<*> -> { + @Suppress("UNCHECKED_CAST") + putStringSet(key, value as Set) + } + is Int -> putInt(key, value) + is Long -> putLong(key, value) + is Float -> putFloat(key, value) + } + } + } + } + + // 验证备份文件 + suspend fun validateBackupFile(backupFilePath: String): BackupData? = withContext(Dispatchers.IO) { + try { + val backupFile = File(backupFilePath) + if (!backupFile.exists()) { + return@withContext null + } + + val backupContent = backupFile.readText() + BackupData.fromJson(backupContent) + } catch (e: Exception) { + e.printStackTrace() + null + } + } + + // 获取备份文件路径 + fun getDefaultBackupFileName(): String { + return generateBackupFileName() + } + + // 槽位信息获取 + suspend fun getCurrentSlotInfo(): List = withContext(Dispatchers.IO) { + try { + val slotInfoList = mutableListOf() + val shell = Shell.getShell() + + listOf("boot_a", "boot_b").forEach { slot -> + val unameCmd = + "strings -n 20 /dev/block/by-name/$slot | awk '/Linux version/ && ++c==2 {print $3; exit}'" + val buildTimeCmd = "strings -n 20 /dev/block/by-name/$slot | sed -n '/Linux version.*#/{s/.*#/#/p;q}'" + + val uname = runCmd(shell, unameCmd).trim() + val buildTime = runCmd(shell, buildTimeCmd).trim() + + if (uname.isNotEmpty() && buildTime.isNotEmpty()) { + slotInfoList.add(SlotInfo(slot, uname.ifEmpty { "unknown" }, buildTime.ifEmpty { "unknown" })) + } + } + + slotInfoList + } catch (e: Exception) { + e.printStackTrace() + emptyList() + } + } + + suspend fun getCurrentActiveSlot(): String = withContext(Dispatchers.IO) { + try { + val shell = Shell.getShell() + val suffix = runCmd(shell, "getprop ro.boot.slot_suffix").trim() + when (suffix) { + "_a" -> "boot_a" + "_b" -> "boot_b" + else -> "unknown" + } + } catch (_: Exception) { + "unknown" + } + } + + // 二进制文件管理 + private suspend fun copyBinaryFromAssets(context: Context): String? = withContext(Dispatchers.IO) { + try { + val binaryName = getSuSFSBinaryName(context) + val targetPath = getSuSFSTargetPath() + val tempFile = File(context.cacheDir, binaryName) + + context.assets.open(binaryName).use { input -> + FileOutputStream(tempFile).use { output -> + input.copyTo(output) + } + } + + val success = runCmdWithResult("cp '${tempFile.absolutePath}' '$targetPath' && chmod 755 '$targetPath'").isSuccess + tempFile.delete() + + if (success && runCmdWithResult("test -f '$targetPath'").isSuccess) targetPath else null + } catch (e: IOException) { + e.printStackTrace() + null + } + } + + fun isBinaryAvailable(context: Context): Boolean = try { + context.assets.open(getSuSFSBinaryName(context)).use { true } + } catch (_: IOException) { false } + + // 命令执行 + private suspend fun executeSusfsCommand(context: Context, command: String): Boolean = withContext(Dispatchers.IO) { + try { + val binaryPath = copyBinaryFromAssets(context) ?: run { + showToast(context, context.getString(R.string.susfs_binary_not_found)) + return@withContext false + } + + val result = runCmdWithResult("$binaryPath $command") + + if (!result.isSuccess) { + showToast(context, "${context.getString(R.string.susfs_command_failed)}\n${result.output}\n${result.errorOutput}") + } + + result.isSuccess + } catch (e: Exception) { + e.printStackTrace() + showToast(context, context.getString(R.string.susfs_command_error, e.message ?: "Unknown error")) + false + } + } + + private suspend fun executeSusfsCommandWithOutput(context: Context, command: String): CommandResult = withContext(Dispatchers.IO) { + try { + val binaryPath = copyBinaryFromAssets(context) ?: return@withContext CommandResult( + false, "", context.getString(R.string.susfs_binary_not_found) + ) + runCmdWithResult("$binaryPath $command") + } catch (e: Exception) { + e.printStackTrace() + CommandResult(false, "", e.message ?: "Unknown error") + } + } + + private suspend fun showToast(context: Context, message: String) = withContext(Dispatchers.Main) { + Toast.makeText(context, message, Toast.LENGTH_SHORT).show() + } + + /** + * 模块管理 + */ + private suspend fun updateMagiskModule(context: Context): Boolean { + return removeMagiskModule() && createMagiskModule(context) + } + + /** + * 模块创建方法 + */ + private suspend fun createMagiskModule(context: Context): Boolean = withContext(Dispatchers.IO) { + try { + val config = getCurrentModuleConfig(context) + + // 创建模块目录 + if (!runCmdWithResult("mkdir -p $MODULE_PATH").isSuccess) return@withContext false + + // 创建module.prop + val moduleProp = ScriptGenerator.generateModuleProp(MODULE_ID) + if (!runCmdWithResult("cat > $MODULE_PATH/module.prop << 'EOF'\n$moduleProp\nEOF").isSuccess) return@withContext false + + // 生成并创建所有脚本文件 + val scripts = ScriptGenerator.generateAllScripts(config) + + scripts.all { (filename, content) -> + runCmdWithResult("cat > $MODULE_PATH/$filename << 'EOF'\n$content\nEOF").isSuccess && + runCmdWithResult("chmod 755 $MODULE_PATH/$filename").isSuccess + } + } catch (e: Exception) { + e.printStackTrace() + false + } + } + + private suspend fun removeMagiskModule(): Boolean = withContext(Dispatchers.IO) { + try { + runCmdWithResult("rm -rf $MODULE_PATH").isSuccess + } catch (e: Exception) { + e.printStackTrace() + false + } + } + + // 功能状态获取 + suspend fun getEnabledFeatures(context: Context): List = withContext(Dispatchers.IO) { + try { + val featuresOutput = getSuSFSFeatures() + + if (featuresOutput.isNotBlank() && featuresOutput != "Invalid") { + parseEnabledFeaturesFromOutput(context, featuresOutput) + } else { + getDefaultDisabledFeatures(context) + } + } catch (e: Exception) { + e.printStackTrace() + getDefaultDisabledFeatures(context) + } + } + + private fun parseEnabledFeaturesFromOutput(context: Context, featuresOutput: String): List { + val enabledConfigs = featuresOutput.lines() + .map { it.trim() } + .filter { it.isNotEmpty() } + .toSet() + + val featureMap = mapOf( + "CONFIG_KSU_SUSFS_SUS_PATH" to context.getString(R.string.sus_path_feature_label), + "CONFIG_KSU_SUSFS_SUS_MOUNT" to context.getString(R.string.sus_mount_feature_label), + "CONFIG_KSU_SUSFS_TRY_UMOUNT" to context.getString(R.string.try_umount_feature_label), + "CONFIG_KSU_SUSFS_SPOOF_UNAME" to context.getString(R.string.spoof_uname_feature_label), + "CONFIG_KSU_SUSFS_SPOOF_CMDLINE_OR_BOOTCONFIG" to context.getString(R.string.spoof_cmdline_feature_label), + "CONFIG_KSU_SUSFS_OPEN_REDIRECT" to context.getString(R.string.open_redirect_feature_label), + "CONFIG_KSU_SUSFS_ENABLE_LOG" to context.getString(R.string.enable_log_feature_label), + "CONFIG_KSU_SUSFS_AUTO_ADD_TRY_UMOUNT_FOR_BIND_MOUNT" to context.getString(R.string.auto_try_umount_bind_feature_label), + "CONFIG_KSU_SUSFS_HIDE_KSU_SUSFS_SYMBOLS" to context.getString(R.string.hide_symbols_feature_label), + "CONFIG_KSU_SUSFS_SUS_KSTAT" to context.getString(R.string.sus_kstat_feature_label), + ) + + + return featureMap.map { (configKey, displayName) -> + val isEnabled = enabledConfigs.contains(configKey) + + val statusText = if (isEnabled) { + context.getString(R.string.susfs_feature_enabled) + } else { + context.getString(R.string.susfs_feature_disabled) + } + + val canConfigure = displayName == context.getString(R.string.enable_log_feature_label) + + EnabledFeature(displayName, isEnabled, statusText, canConfigure) + }.sortedBy { it.name } + } + + private fun getDefaultDisabledFeatures(context: Context): List { + val defaultFeatures = listOf( + "sus_path_feature_label" to context.getString(R.string.sus_path_feature_label), + "sus_mount_feature_label" to context.getString(R.string.sus_mount_feature_label), + "try_umount_feature_label" to context.getString(R.string.try_umount_feature_label), + "spoof_uname_feature_label" to context.getString(R.string.spoof_uname_feature_label), + "spoof_cmdline_feature_label" to context.getString(R.string.spoof_cmdline_feature_label), + "open_redirect_feature_label" to context.getString(R.string.open_redirect_feature_label), + "enable_log_feature_label" to context.getString(R.string.enable_log_feature_label), + "auto_try_umount_bind_feature_label" to context.getString(R.string.auto_try_umount_bind_feature_label), + "hide_symbols_feature_label" to context.getString(R.string.hide_symbols_feature_label), + "sus_kstat_feature_label" to context.getString(R.string.sus_kstat_feature_label), + ) + + return defaultFeatures.map { (_, displayName) -> + EnabledFeature( + name = displayName, + isEnabled = false, + statusText = context.getString(R.string.susfs_feature_disabled), + canConfigure = displayName == context.getString(R.string.enable_log_feature_label) + ) + }.sortedBy { it.name } + } + + // sus日志开关 + suspend fun setEnableLog(context: Context, enabled: Boolean): Boolean { + val success = executeSusfsCommand(context, "enable_log ${if (enabled) 1 else 0}") + if (success) { + saveEnableLogState(context, enabled) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, if (enabled) context.getString(R.string.susfs_log_enabled) else context.getString(R.string.susfs_log_disabled)) + } + return success + } + + // AVC日志欺骗开关 + suspend fun setEnableAvcLogSpoofing(context: Context, enabled: Boolean): Boolean { + if (!isSusVersion159()) { + return false + } + + val success = executeSusfsCommand(context, "enable_avc_log_spoofing ${if (enabled) 1 else 0}") + if (success) { + saveEnableAvcLogSpoofing(context, enabled) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, if (enabled) + context.getString(R.string.avc_log_spoofing_enabled) + else + context.getString(R.string.avc_log_spoofing_disabled) + ) + } + return success + } + + // SUS挂载隐藏控制 + suspend fun setHideSusMountsForAllProcs(context: Context, hideForAll: Boolean): Boolean { + if (!isSusVersion158()) { + return false + } + + val success = executeSusfsCommand(context, "hide_sus_mnts_for_all_procs ${if (hideForAll) 1 else 0}") + if (success) { + saveHideSusMountsForAllProcs(context, hideForAll) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, if (hideForAll) + context.getString(R.string.susfs_hide_mounts_all_enabled) + else + context.getString(R.string.susfs_hide_mounts_all_disabled) + ) + } + return success + } + + // uname和构建时间 + @SuppressLint("StringFormatMatches") + suspend fun setUname(context: Context, unameValue: String, buildTimeValue: String): Boolean { + val success = executeSusfsCommand(context, "set_uname '$unameValue' '$buildTimeValue'") + if (success) { + saveUnameValue(context, unameValue) + saveBuildTimeValue(context, buildTimeValue) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, context.getString(R.string.susfs_uname_set_success, unameValue, buildTimeValue)) + } + return success + } + + // 添加SUS路径 + @SuppressLint("StringFormatInvalid") + suspend fun addSusPath(context: Context, path: String): Boolean { + // 如果是1.5.8版本,先设置路径配置 + if (isSusVersion158()) { + // 获取当前配置的路径,如果没有配置则使用默认值 + val androidDataPath = getAndroidDataPath(context) + val sdcardPath = getSdcardPath(context) + + // 先设置Android Data路径 + val androidDataSuccess = executeSusfsCommand(context, "set_android_data_root_path '$androidDataPath'") + if (androidDataSuccess) { + showToast(context, context.getString(R.string.susfs_android_data_path_set, androidDataPath)) + } + + // 再设置SD卡路径 + val sdcardSuccess = executeSusfsCommand(context, "set_sdcard_root_path '$sdcardPath'") + if (sdcardSuccess) { + showToast(context, context.getString(R.string.susfs_sdcard_path_set, sdcardPath)) + } + + // 如果路径设置失败,记录但不阻止继续执行 + if (!androidDataSuccess || !sdcardSuccess) { + showToast(context, context.getString(R.string.susfs_path_setup_warning)) + } + } + + // 执行添加SUS路径命令 + val result = executeSusfsCommandWithOutput(context, "add_sus_path '$path'") + val isActuallySuccessful = result.isSuccess && !result.output.contains("not found, skip adding") + + if (isActuallySuccessful) { + saveSusPaths(context, getSusPaths(context) + path) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, context.getString(R.string.susfs_sus_path_added_success, path)) + } else { + val errorMessage = if (result.output.contains("not found, skip adding")) { + context.getString(R.string.susfs_path_not_found_error, path) + } else { + "${context.getString(R.string.susfs_command_failed)}\n${result.output}\n${result.errorOutput}" + } + showToast(context, errorMessage) + } + return isActuallySuccessful + } + + suspend fun removeSusPath(context: Context, path: String): Boolean { + saveSusPaths(context, getSusPaths(context) - path) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, "SUS path removed: $path") + return true + } + + // 编辑SUS路径 + suspend fun editSusPath(context: Context, oldPath: String, newPath: String): Boolean { + return try { + val currentPaths = getSusPaths(context).toMutableSet() + if (!currentPaths.remove(oldPath)) { + showToast(context, "Original path not found: $oldPath") + return false + } + + saveSusPaths(context, currentPaths) + + val success = addSusPath(context, newPath) + + if (success) { + showToast(context, "SUS path updated: $oldPath -> $newPath") + return true + } else { + // 如果添加新路径失败,恢复旧路径 + currentPaths.add(oldPath) + saveSusPaths(context, currentPaths) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, "Failed to update path, reverted to original") + return false + } + } catch (e: Exception) { + e.printStackTrace() + showToast(context, "Error updating SUS path: ${e.message}") + false + } + } + + // 循环路径相关方法 + @SuppressLint("SdCardPath") + private fun isValidLoopPath(path: String): Boolean { + return !path.startsWith("/storage/") && !path.startsWith("/sdcard/") + } + + @SuppressLint("StringFormatInvalid") + suspend fun addSusLoopPath(context: Context, path: String): Boolean { + // 检查路径是否有效 + if (!isValidLoopPath(path)) { + showToast(context, context.getString(R.string.susfs_loop_path_invalid_location)) + return false + } + + // 执行添加循环路径命令 + val result = executeSusfsCommandWithOutput(context, "add_sus_path_loop '$path'") + val isActuallySuccessful = result.isSuccess && !result.output.contains("not found, skip adding") + + if (isActuallySuccessful) { + saveSusLoopPaths(context, getSusLoopPaths(context) + path) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, context.getString(R.string.susfs_loop_path_added_success, path)) + } else { + val errorMessage = if (result.output.contains("not found, skip adding")) { + context.getString(R.string.susfs_path_not_found_error, path) + } else { + "${context.getString(R.string.susfs_command_failed)}\n${result.output}\n${result.errorOutput}" + } + showToast(context, errorMessage) + } + return isActuallySuccessful + } + + suspend fun removeSusLoopPath(context: Context, path: String): Boolean { + saveSusLoopPaths(context, getSusLoopPaths(context) - path) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, context.getString(R.string.susfs_loop_path_removed, path)) + return true + } + + // 编辑循环路径 + suspend fun editSusLoopPath(context: Context, oldPath: String, newPath: String): Boolean { + // 检查新路径是否有效 + if (!isValidLoopPath(newPath)) { + showToast(context, context.getString(R.string.susfs_loop_path_invalid_location)) + return false + } + + return try { + val currentPaths = getSusLoopPaths(context).toMutableSet() + if (!currentPaths.remove(oldPath)) { + showToast(context, "Original loop path not found: $oldPath") + return false + } + + saveSusLoopPaths(context, currentPaths) + + val success = addSusLoopPath(context, newPath) + + if (success) { + showToast(context, context.getString(R.string.susfs_loop_path_updated, oldPath, newPath)) + return true + } else { + // 如果添加新路径失败,恢复旧路径 + currentPaths.add(oldPath) + saveSusLoopPaths(context, currentPaths) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, "Failed to update loop path, reverted to original") + return false + } + } catch (e: Exception) { + e.printStackTrace() + showToast(context, "Error updating SUS loop path: ${e.message}") + false + } + } + + // 添加 SUS Maps + suspend fun addSusMap(context: Context, map: String): Boolean { + val success = executeSusfsCommand(context, "add_sus_map '$map'") + if (success) { + saveSusMaps(context, getSusMaps(context) + map) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, context.getString(R.string.susfs_sus_map_added_success, map)) + } + return success + } + + suspend fun removeSusMap(context: Context, map: String): Boolean { + saveSusMaps(context, getSusMaps(context) - map) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, context.getString(R.string.susfs_sus_map_removed, map)) + return true + } + + suspend fun editSusMap(context: Context, oldMap: String, newMap: String): Boolean { + return try { + val currentMaps = getSusMaps(context).toMutableSet() + if (!currentMaps.remove(oldMap)) { + showToast(context, "Original SUS map not found: $oldMap") + return false + } + + saveSusMaps(context, currentMaps) + + val success = addSusMap(context, newMap) + + if (success) { + showToast(context, context.getString(R.string.susfs_sus_map_updated, oldMap, newMap)) + return true + } else { + // 如果添加新映射失败,恢复旧映射 + currentMaps.add(oldMap) + saveSusMaps(context, currentMaps) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, "Failed to update SUS map, reverted to original") + return false + } + } catch (e: Exception) { + e.printStackTrace() + showToast(context, "Error updating SUS map: ${e.message}") + false + } + } + + // 添加SUS挂载 + suspend fun addSusMount(context: Context, mount: String): Boolean { + val success = executeSusfsCommand(context, "add_sus_mount '$mount'") + if (success) { + saveSusMounts(context, getSusMounts(context) + mount) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + } + return success + } + + suspend fun removeSusMount(context: Context, mount: String): Boolean { + saveSusMounts(context, getSusMounts(context) - mount) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, "Removed SUS mount: $mount") + return true + } + + // 编辑SUS挂载 + suspend fun editSusMount(context: Context, oldMount: String, newMount: String): Boolean { + return try { + val currentMounts = getSusMounts(context).toMutableSet() + if (!currentMounts.remove(oldMount)) { + showToast(context, "Original mount not found: $oldMount") + return false + } + + saveSusMounts(context, currentMounts) + + val success = addSusMount(context, newMount) + + if (success) { + showToast(context, "SUS mount updated: $oldMount -> $newMount") + return true + } else { + // 如果添加新挂载点失败,恢复旧挂载点 + currentMounts.add(oldMount) + saveSusMounts(context, currentMounts) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, "Failed to update mount, reverted to original") + return false + } + } catch (e: Exception) { + e.printStackTrace() + showToast(context, "Error updating SUS mount: ${e.message}") + false + } + } + + // 添加尝试卸载 + suspend fun addTryUmount(context: Context, path: String, mode: Int): Boolean { + val commandSuccess = executeSusfsCommand(context, "add_try_umount '$path' $mode") + saveTryUmounts(context, getTryUmounts(context) + "$path|$mode") + if (isAutoStartEnabled(context)) updateMagiskModule(context) + + showToast(context, if (commandSuccess) { + context.getString(R.string.susfs_try_umount_added_success, path) + } else { + context.getString(R.string.susfs_try_umount_added_saved, path) + }) + return true + } + + suspend fun removeTryUmount(context: Context, umountEntry: String): Boolean { + saveTryUmounts(context, getTryUmounts(context) - umountEntry) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + val path = umountEntry.split("|").firstOrNull() ?: umountEntry + showToast(context, "Removed Try to uninstall: $path") + return true + } + + // 编辑尝试卸载 + suspend fun editTryUmount(context: Context, oldEntry: String, newPath: String, newMode: Int): Boolean { + return try { + val currentUmounts = getTryUmounts(context).toMutableSet() + if (!currentUmounts.remove(oldEntry)) { + showToast(context, "Original umount entry not found: $oldEntry") + return false + } + + saveTryUmounts(context, currentUmounts) + + val success = addTryUmount(context, newPath, newMode) + + if (success) { + showToast(context, "Try umount updated: $oldEntry -> $newPath|$newMode") + return true + } else { + // 如果添加新条目失败,恢复旧条目 + currentUmounts.add(oldEntry) + saveTryUmounts(context, currentUmounts) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, "Failed to update umount entry, reverted to original") + return false + } + } catch (e: Exception) { + e.printStackTrace() + showToast(context, "Error updating try umount: ${e.message}") + false + } + } + + // Zygote隔离服务卸载控制 + suspend fun setUmountForZygoteIsoService(context: Context, enabled: Boolean): Boolean { + if (!isSusVersion158()) { + return false + } + + val result = executeSusfsCommandWithOutput(context, "umount_for_zygote_iso_service ${if (enabled) 1 else 0}") + val success = result.isSuccess && result.output.isEmpty() + + if (success) { + saveUmountForZygoteIsoService(context, enabled) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, if (enabled) + context.getString(R.string.umount_zygote_iso_service_enabled) + else + context.getString(R.string.umount_zygote_iso_service_disabled) + ) + } else { + showToast(context, context.getString(R.string.susfs_command_failed)) + } + return success + } + + // 添加kstat配置 + suspend fun addKstatStatically(context: Context, path: String, ino: String, dev: String, nlink: String, + size: String, atime: String, atimeNsec: String, mtime: String, mtimeNsec: String, + ctime: String, ctimeNsec: String, blocks: String, blksize: String): Boolean { + val command = "add_sus_kstat_statically '$path' '$ino' '$dev' '$nlink' '$size' '$atime' '$atimeNsec' '$mtime' '$mtimeNsec' '$ctime' '$ctimeNsec' '$blocks' '$blksize'" + val success = executeSusfsCommand(context, command) + if (success) { + val configEntry = "$path|$ino|$dev|$nlink|$size|$atime|$atimeNsec|$mtime|$mtimeNsec|$ctime|$ctimeNsec|$blocks|$blksize" + saveKstatConfigs(context, getKstatConfigs(context) + configEntry) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, context.getString(R.string.kstat_static_config_added, path)) + } + return success + } + + suspend fun removeKstatConfig(context: Context, config: String): Boolean { + saveKstatConfigs(context, getKstatConfigs(context) - config) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + val path = config.split("|").firstOrNull() ?: config + showToast(context, context.getString(R.string.kstat_config_removed, path)) + return true + } + + // 编辑kstat配置 + @SuppressLint("StringFormatInvalid") + suspend fun editKstatConfig(context: Context, oldConfig: String, path: String, ino: String, dev: String, nlink: String, + size: String, atime: String, atimeNsec: String, mtime: String, mtimeNsec: String, + ctime: String, ctimeNsec: String, blocks: String, blksize: String): Boolean { + return try { + val currentConfigs = getKstatConfigs(context).toMutableSet() + if (!currentConfigs.remove(oldConfig)) { + showToast(context, "Original kstat config not found") + return false + } + + saveKstatConfigs(context, currentConfigs) + + val success = addKstatStatically(context, path, ino, dev, nlink, size, atime, atimeNsec, + mtime, mtimeNsec, ctime, ctimeNsec, blocks, blksize) + + if (success) { + showToast(context, context.getString(R.string.kstat_config_updated, path)) + return true + } else { + // 如果添加新配置失败,恢复旧配置 + currentConfigs.add(oldConfig) + saveKstatConfigs(context, currentConfigs) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, "Failed to update kstat config, reverted to original") + return false + } + } catch (e: Exception) { + e.printStackTrace() + showToast(context, "Error updating kstat config: ${e.message}") + false + } + } + + // 添加kstat路径 + suspend fun addKstat(context: Context, path: String): Boolean { + val success = executeSusfsCommand(context, "add_sus_kstat '$path'") + if (success) { + saveAddKstatPaths(context, getAddKstatPaths(context) + path) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, context.getString(R.string.kstat_path_added, path)) + } + return success + } + + suspend fun removeAddKstat(context: Context, path: String): Boolean { + saveAddKstatPaths(context, getAddKstatPaths(context) - path) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, context.getString(R.string.kstat_path_removed, path)) + return true + } + + // 编辑kstat路径 + @SuppressLint("StringFormatInvalid") + suspend fun editAddKstat(context: Context, oldPath: String, newPath: String): Boolean { + return try { + val currentPaths = getAddKstatPaths(context).toMutableSet() + if (!currentPaths.remove(oldPath)) { + showToast(context, "Original kstat path not found: $oldPath") + return false + } + + saveAddKstatPaths(context, currentPaths) + + val success = addKstat(context, newPath) + + if (success) { + showToast(context, context.getString(R.string.kstat_path_updated, oldPath, newPath)) + return true + } else { + // 如果添加新路径失败,恢复旧路径 + currentPaths.add(oldPath) + saveAddKstatPaths(context, currentPaths) + if (isAutoStartEnabled(context)) updateMagiskModule(context) + showToast(context, "Failed to update kstat path, reverted to original") + return false + } + } catch (e: Exception) { + e.printStackTrace() + showToast(context, "Error updating kstat path: ${e.message}") + false + } + } + + // 更新kstat + suspend fun updateKstat(context: Context, path: String): Boolean { + val success = executeSusfsCommand(context, "update_sus_kstat '$path'") + if (success) showToast(context, context.getString(R.string.kstat_updated, path)) + return success + } + + // 更新kstat全克隆 + suspend fun updateKstatFullClone(context: Context, path: String): Boolean { + val success = executeSusfsCommand(context, "update_sus_kstat_full_clone '$path'") + if (success) showToast(context, context.getString(R.string.kstat_full_clone_updated, path)) + return success + } + + // 设置Android数据路径 + suspend fun setAndroidDataPath(context: Context, path: String): Boolean { + val success = executeSusfsCommand(context, "set_android_data_root_path '$path'") + if (success) { + saveAndroidDataPath(context, path) + if (isAutoStartEnabled(context)) { + CoroutineScope(Dispatchers.Default).launch { + updateMagiskModule(context) + } + } + } + return success + } + + // 设置SD卡路径 + suspend fun setSdcardPath(context: Context, path: String): Boolean { + val success = executeSusfsCommand(context, "set_sdcard_root_path '$path'") + if (success) { + saveSdcardPath(context, path) + if (isAutoStartEnabled(context)) { + CoroutineScope(Dispatchers.Default).launch { + updateMagiskModule(context) + } + } + } + return success + } + + /** + * 自启动配置检查 + */ + fun hasConfigurationForAutoStart(context: Context): Boolean { + val config = getCurrentModuleConfig(context) + return config.hasAutoStartConfig() || runBlocking { + getEnabledFeatures(context).any { it.isEnabled } + } + } + + /** + * 自启动配置方法 + */ + suspend fun configureAutoStart(context: Context, enabled: Boolean): Boolean = withContext(Dispatchers.IO) { + try { + if (enabled) { + if (!hasConfigurationForAutoStart(context)) { + showToast(context, context.getString(R.string.susfs_no_config_to_autostart)) + return@withContext false + } + + val targetPath = getSuSFSTargetPath() + if (!runCmdWithResult("test -f '$targetPath'").isSuccess) { + copyBinaryFromAssets(context) ?: run { + showToast(context, context.getString(R.string.susfs_binary_not_found)) + return@withContext false + } + } + + val success = createMagiskModule(context) + if (success) { + setAutoStartEnabled(context, true) + showToast(context, context.getString(R.string.susfs_autostart_enabled_success, MODULE_PATH)) + } else { + showToast(context, context.getString(R.string.susfs_autostart_enable_failed)) + } + success + } else { + val success = removeMagiskModule() + if (success) { + setAutoStartEnabled(context, false) + showToast(context, context.getString(R.string.susfs_autostart_disabled_success)) + } else { + showToast(context, context.getString(R.string.susfs_autostart_disable_failed)) + } + success + } + } catch (e: Exception) { + e.printStackTrace() + showToast(context, context.getString(R.string.susfs_autostart_error, e.message ?: "Unknown error")) + false + } + } + + suspend fun resetToDefault(context: Context): Boolean { + val success = setUname(context, DEFAULT_UNAME, DEFAULT_BUILD_TIME) + if (success && isAutoStartEnabled(context)) { + configureAutoStart(context, false) + } + return success + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/susfs/util/SuSFSModuleScripts.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/susfs/util/SuSFSModuleScripts.kt new file mode 100644 index 0000000..e0d9bae --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/susfs/util/SuSFSModuleScripts.kt @@ -0,0 +1,555 @@ +package com.sukisu.ultra.ui.susfs.util + +import android.annotation.SuppressLint + +/** + * Magisk模块脚本生成器 + * 用于生成各种启动脚本的内容 + */ +object ScriptGenerator { + + // 常量定义 + private const val DEFAULT_UNAME = "default" + private const val DEFAULT_BUILD_TIME = "default" + private const val LOG_DIR = "/data/adb/ksu/log" + + /** + * 生成所有脚本文件 + */ + fun generateAllScripts(config: SuSFSManager.ModuleConfig): Map { + return mapOf( + "service.sh" to generateServiceScript(config), + "post-fs-data.sh" to generatePostFsDataScript(config), + "post-mount.sh" to generatePostMountScript(config), + "boot-completed.sh" to generateBootCompletedScript(config) + ) + } + + // 日志相关的通用脚本片段 + private fun generateLogSetup(logFileName: String): String = """ + # 日志目录 + LOG_DIR="$LOG_DIR" + LOG_FILE="${'$'}LOG_DIR/$logFileName" + + # 创建日志目录 + mkdir -p "${'$'}LOG_DIR" + + # 获取当前时间 + get_current_time() { + date '+%Y-%m-%d %H:%M:%S' + } + """.trimIndent() + + // 二进制文件检查的通用脚本片段 + private fun generateBinaryCheck(targetPath: String): String = """ + # 检查SuSFS二进制文件 + SUSFS_BIN="$targetPath" + if [ ! -f "${'$'}SUSFS_BIN" ]; then + echo "$(get_current_time): SuSFS二进制文件未找到: ${'$'}SUSFS_BIN" >> "${'$'}LOG_FILE" + exit 1 + fi + """.trimIndent() + + /** + * 生成service.sh脚本内容 + */ + @SuppressLint("SdCardPath") + private fun generateServiceScript(config: SuSFSManager.ModuleConfig): String { + return buildString { + appendLine("#!/system/bin/sh") + appendLine("# SuSFS Service Script") + appendLine("# 在系统服务启动后执行") + appendLine() + appendLine(generateLogSetup("susfs_service.log")) + appendLine() + appendLine(generateBinaryCheck(config.targetPath)) + appendLine() + + if (shouldConfigureInService(config)) { + // 添加SUS路径 (仅在不支持隐藏挂载时) + if (!config.support158 && config.susPaths.isNotEmpty()) { + appendLine() + appendLine("until [ -d \"/sdcard/Android\" ]; do sleep 1; done") + appendLine("sleep 45") + generateSusPathsSection(config.susPaths) + } + + // 设置uname和构建时间 + generateUnameSection(config) + + // 添加Kstat配置 + generateKstatSection(config.kstatConfigs, config.addKstatPaths) + } + + // 添加日志设置 + generateLogSettingSection(config.enableLog) + + // 隐藏BL相关配置 + if (config.enableHideBl) { + generateHideBlSection() + } + + // 清理工具残留 + if (config.enableCleanupResidue) { + generateCleanupResidueSection() + } + + appendLine("echo \"$(get_current_time): Service脚本执行完成\" >> \"${'$'}LOG_FILE\"") + } + } + + /** + * 判断是否需要在service中配置 + */ + private fun shouldConfigureInService(config: SuSFSManager.ModuleConfig): Boolean { + return config.susPaths.isNotEmpty() || + config.susLoopPaths.isNotEmpty() || + config.kstatConfigs.isNotEmpty() || + config.addKstatPaths.isNotEmpty() || + (!config.executeInPostFsData && (config.unameValue != DEFAULT_UNAME || config.buildTimeValue != DEFAULT_BUILD_TIME)) + } + + private fun StringBuilder.generateLogSettingSection(enableLog: Boolean) { + appendLine("# 设置日志启用状态") + val logValue = if (enableLog) 1 else 0 + appendLine("\"${'$'}SUSFS_BIN\" enable_log $logValue") + appendLine("echo \"$(get_current_time): 日志功能设置为: ${if (enableLog) "启用" else "禁用"}\" >> \"${'$'}LOG_FILE\"") + appendLine() + } + + private fun StringBuilder.generateAvcLogSpoofingSection(enableAvcLogSpoofing: Boolean) { + appendLine("# 设置AVC日志欺骗状态") + val avcLogValue = if (enableAvcLogSpoofing) 1 else 0 + appendLine("\"${'$'}SUSFS_BIN\" enable_avc_log_spoofing $avcLogValue") + appendLine("echo \"$(get_current_time): AVC日志欺骗功能设置为: ${if (enableAvcLogSpoofing) "启用" else "禁用"}\" >> \"${'$'}LOG_FILE\"") + appendLine() + } + + private fun StringBuilder.generateSusPathsSection(susPaths: Set) { + if (susPaths.isNotEmpty()) { + appendLine("# 添加SUS路径") + susPaths.forEach { path -> + appendLine("\"${'$'}SUSFS_BIN\" add_sus_path '$path'") + appendLine("echo \"$(get_current_time): 添加SUS路径: $path\" >> \"${'$'}LOG_FILE\"") + } + appendLine() + } + } + + private fun StringBuilder.generateSusLoopPathsSection(susLoopPaths: Set) { + if (susLoopPaths.isNotEmpty()) { + appendLine("# 添加SUS循环路径") + susLoopPaths.forEach { path -> + appendLine("\"${'$'}SUSFS_BIN\" add_sus_path_loop '$path'") + appendLine("echo \"$(get_current_time): 添加SUS循环路径: $path\" >> \"${'$'}LOG_FILE\"") + } + appendLine() + } + } + + @SuppressLint("SdCardPath") + private fun StringBuilder.generateKstatSection( + kstatConfigs: Set, + addKstatPaths: Set + ) { + // 添加Kstat路径 + if (addKstatPaths.isNotEmpty()) { + appendLine("# 添加Kstat路径") + addKstatPaths.forEach { path -> + appendLine("\"${'$'}SUSFS_BIN\" add_sus_kstat '$path'") + appendLine("echo \"$(get_current_time): 添加Kstat路径: $path\" >> \"${'$'}LOG_FILE\"") + } + appendLine() + } + + // 添加Kstat静态配置 + if (kstatConfigs.isNotEmpty()) { + appendLine("# 添加Kstat静态配置") + kstatConfigs.forEach { config -> + val parts = config.split("|") + if (parts.size >= 13) { + val path = parts[0] + val params = parts.drop(1).joinToString("' '", "'", "'") + appendLine() + appendLine("\"${'$'}SUSFS_BIN\" add_sus_kstat_statically '$path' $params") + appendLine("echo \"$(get_current_time): 添加Kstat静态配置: $path\" >> \"${'$'}LOG_FILE\"") + appendLine() + appendLine("\"${'$'}SUSFS_BIN\" update_sus_kstat '$path'") + appendLine("echo \"$(get_current_time): 更新Kstat配置: $path\" >> \"${'$'}LOG_FILE\"") + } + } + appendLine() + } + } + + private fun StringBuilder.generateUnameSection(config: SuSFSManager.ModuleConfig) { + if (!config.executeInPostFsData && (config.unameValue != DEFAULT_UNAME || config.buildTimeValue != DEFAULT_BUILD_TIME)) { + appendLine("# 设置uname和构建时间") + appendLine("\"${'$'}SUSFS_BIN\" set_uname '${config.unameValue}' '${config.buildTimeValue}'") + appendLine("echo \"$(get_current_time): 设置uname为: ${config.unameValue}, 构建时间为: ${config.buildTimeValue}\" >> \"${'$'}LOG_FILE\"") + appendLine() + } + } + + private fun StringBuilder.generateHideBlSection() { + appendLine("# 隐藏BL 来自 Shamiko 脚本") + appendLine( + """ + RESETPROP_BIN="/data/adb/ksu/bin/resetprop" + + check_reset_prop() { + local NAME=$1 + local EXPECTED=$2 + local VALUE=$("${'$'}RESETPROP_BIN" ${'$'}NAME) + [ -z ${'$'}VALUE ] || [ ${'$'}VALUE = ${'$'}EXPECTED ] || "${'$'}RESETPROP_BIN" ${'$'}NAME ${'$'}EXPECTED + } + + check_missing_prop() { + local NAME=$1 + local EXPECTED=$2 + local VALUE=$("${'$'}RESETPROP_BIN" ${'$'}NAME) + [ -z ${'$'}VALUE ] && "${'$'}RESETPROP_BIN" ${'$'}NAME ${'$'}EXPECTED + } + + check_missing_match_prop() { + local NAME=$1 + local EXPECTED=$2 + local VALUE=$("${'$'}RESETPROP_BIN" ${'$'}NAME) + [ -z ${'$'}VALUE ] || [ ${'$'}VALUE = ${'$'}EXPECTED ] || "${'$'}RESETPROP_BIN" ${'$'}NAME ${'$'}EXPECTED + [ -z ${'$'}VALUE ] && "${'$'}RESETPROP_BIN" ${'$'}NAME ${'$'}EXPECTED + } + + contains_reset_prop() { + local NAME=$1 + local CONTAINS=$2 + local NEWVAL=$3 + case "$("${'$'}RESETPROP_BIN" ${'$'}NAME)" in + *"${'$'}CONTAINS"*) "${'$'}RESETPROP_BIN" ${'$'}NAME ${'$'}NEWVAL ;; + esac + } + """.trimIndent()) + appendLine() + appendLine("sleep 30") + appendLine() + appendLine("\"${'$'}RESETPROP_BIN\" -w sys.boot_completed 0") + + // 添加所有系统属性重置 + val systemProps = listOf( + "ro.boot.vbmeta.invalidate_on_error" to "yes", + "ro.boot.vbmeta.avb_version" to "1.2", + "ro.boot.vbmeta.hash_alg" to "sha256", + "ro.boot.vbmeta.size" to "19968", + "ro.boot.vbmeta.device_state" to "locked", + "ro.boot.verifiedbootstate" to "green", + "ro.boot.flash.locked" to "1", + "ro.boot.veritymode" to "enforcing", + "ro.boot.warranty_bit" to "0", + "ro.warranty_bit" to "0", + "ro.debuggable" to "0", + "ro.force.debuggable" to "0", + "ro.secure" to "1", + "ro.adb.secure" to "1", + "ro.build.type" to "user", + "ro.build.tags" to "release-keys", + "ro.vendor.boot.warranty_bit" to "0", + "ro.vendor.warranty_bit" to "0", + "vendor.boot.vbmeta.device_state" to "locked", + "vendor.boot.verifiedbootstate" to "green", + "sys.oem_unlock_allowed" to "0", + "ro.secureboot.lockstate" to "locked", + "ro.boot.realmebootstate" to "green", + "ro.boot.realme.lockstate" to "1", + "ro.crypto.state" to "encrypted" + ) + + systemProps.forEach { (prop, value) -> + when { + prop.startsWith("ro.boot.vbmeta") && prop.endsWith("_on_error") -> + appendLine("check_missing_prop \"$prop\" \"$value\"") + prop.contains("device_state") || prop.contains("verifiedbootstate") -> + appendLine("check_missing_match_prop \"$prop\" \"$value\"") + else -> + appendLine("check_reset_prop \"$prop\" \"$value\"") + } + } + + appendLine() + appendLine("# Hide adb debugging traces") + appendLine("resetprop \"sys.usb.adb.disabled\" \" \"") + appendLine() + + appendLine("# Hide recovery boot mode") + appendLine("contains_reset_prop \"ro.bootmode\" \"recovery\" \"unknown\"") + appendLine("contains_reset_prop \"ro.boot.bootmode\" \"recovery\" \"unknown\"") + appendLine("contains_reset_prop \"vendor.boot.bootmode\" \"recovery\" \"unknown\"") + appendLine() + + appendLine("# Hide cloudphone detection") + appendLine("[ -n \"$(resetprop ro.kernel.qemu)\" ] && resetprop ro.kernel.qemu \"\"") + appendLine() + } + + // 清理残留脚本生成 + private fun StringBuilder.generateCleanupResidueSection() { + appendLine("# 清理工具残留文件") + appendLine("echo \"$(get_current_time): 开始清理工具残留\" >> \"${'$'}LOG_FILE\"") + appendLine() + + // 定义清理函数 + appendLine(""" + cleanup_path() { + local path="$1" + local desc="$2" + local current="$3" + local total="$4" + + if [ -n "${'$'}desc" ]; then + echo "$(get_current_time): [${'$'}current/${'$'}total] 清理: ${'$'}path (${'$'}desc)" >> "${'$'}LOG_FILE" + else + echo "$(get_current_time): [${'$'}current/${'$'}total] 清理: ${'$'}path" >> "${'$'}LOG_FILE" + fi + + if rm -rf "${'$'}path" 2>/dev/null; then + echo "$(get_current_time): ✓ 成功清理: ${'$'}path" >> "${'$'}LOG_FILE" + else + echo "$(get_current_time): ✗ 清理失败或不存在: ${'$'}path" >> "${'$'}LOG_FILE" + fi + } + """.trimIndent()) + + appendLine() + appendLine("# 开始清理各种工具残留") + appendLine("TOTAL=33") + appendLine() + + val cleanupPaths = listOf( + "/data/local/stryker/" to "Stryker残留", + "/data/system/AppRetention" to "AppRetention残留", + "/data/local/tmp/luckys" to "Luck Tool残留", + "/data/local/tmp/HyperCeiler" to "西米露残留", + "/data/local/tmp/simpleHook" to "simple Hook残留", + "/data/local/tmp/DisabledAllGoogleServices" to "谷歌省电模块残留", + "/data/local/MIO" to "解包软件", + "/data/DNA" to "解包软件", + "/data/local/tmp/cleaner_starter" to "质感清理残留", + "/data/local/tmp/byyang" to "", + "/data/local/tmp/mount_mask" to "", + "/data/local/tmp/mount_mark" to "", + "/data/local/tmp/scriptTMP" to "", + "/data/local/luckys" to "", + "/data/local/tmp/horae_control.log" to "", + "/data/gpu_freq_table.conf" to "", + "/storage/emulated/0/Download/advanced/" to "", + "/storage/emulated/0/Documents/advanced/" to "爱玩机", + "/storage/emulated/0/Android/naki/" to "旧版asoulopt", + "/data/swap_config.conf" to "scene附加模块2", + "/data/local/tmp/resetprop" to "", + "/dev/cpuset/AppOpt/" to "AppOpt模块", + "/storage/emulated/0/Android/Clash/" to "Clash for Magisk模块", + "/storage/emulated/0/Android/Yume-Yunyun/" to "网易云后台优化模块", + "/data/local/tmp/Surfing_update" to "Surfing模块缓存", + "/data/encore/custom_default_cpu_gov" to "encore模块", + "/data/encore/default_cpu_gov" to "encore模块", + "/data/local/tmp/yshell" to "", + "/data/local/tmp/encore_logo.png" to "", + "/storage/emulated/legacy/" to "", + "/storage/emulated/elgg/" to "", + "/data/system/junge/" to "", + "/data/local/tmp/mount_namespace" to "挂载命名空间残留" + ) + + cleanupPaths.forEachIndexed { index, (path, desc) -> + val current = index + 1 + appendLine("cleanup_path '$path' '$desc' $current \$TOTAL") + } + + appendLine() + appendLine("echo \"$(get_current_time): 工具残留清理完成\" >> \"${'$'}LOG_FILE\"") + appendLine() + } + + /** + * 生成post-fs-data.sh脚本内容 + */ + private fun generatePostFsDataScript(config: SuSFSManager.ModuleConfig): String { + return buildString { + appendLine("#!/system/bin/sh") + appendLine("# SuSFS Post-FS-Data Script") + appendLine("# 在文件系统挂载后但在系统完全启动前执行") + appendLine() + appendLine(generateLogSetup("susfs_post_fs_data.log")) + appendLine() + appendLine(generateBinaryCheck(config.targetPath)) + appendLine() + appendLine("echo \"$(get_current_time): Post-FS-Data脚本开始执行\" >> \"${'$'}LOG_FILE\"") + appendLine() + + // 设置uname和构建时间 - 只有在选择在post-fs-data中执行时才执行 + if (config.executeInPostFsData && (config.unameValue != DEFAULT_UNAME || config.buildTimeValue != DEFAULT_BUILD_TIME)) { + appendLine("# 设置uname和构建时间") + appendLine("\"${'$'}SUSFS_BIN\" set_uname '${config.unameValue}' '${config.buildTimeValue}'") + appendLine("echo \"$(get_current_time): 设置uname为: ${config.unameValue}, 构建时间为: ${config.buildTimeValue}\" >> \"${'$'}LOG_FILE\"") + appendLine() + } + + generateUmountZygoteIsoServiceSection(config.umountForZygoteIsoService, config.support158) + + // 添加AVC日志欺骗设置 + generateAvcLogSpoofingSection(config.enableAvcLogSpoofing) + + appendLine("echo \"$(get_current_time): Post-FS-Data脚本执行完成\" >> \"${'$'}LOG_FILE\"") + } + } + + // 添加新的生成方法 + private fun StringBuilder.generateUmountZygoteIsoServiceSection(umountForZygoteIsoService: Boolean, support158: Boolean) { + if (support158) { + appendLine("# 设置Zygote隔离服务卸载状态") + val umountValue = if (umountForZygoteIsoService) 1 else 0 + appendLine("\"${'$'}SUSFS_BIN\" umount_for_zygote_iso_service $umountValue") + appendLine("echo \"$(get_current_time): Zygote隔离服务卸载设置为: ${if (umountForZygoteIsoService) "启用" else "禁用"}\" >> \"${'$'}LOG_FILE\"") + appendLine() + } + } + + /** + * 生成post-mount.sh脚本内容 + */ + private fun generatePostMountScript(config: SuSFSManager.ModuleConfig): String { + return buildString { + appendLine("#!/system/bin/sh") + appendLine("# SuSFS Post-Mount Script") + appendLine("# 在所有分区挂载完成后执行") + appendLine() + appendLine(generateLogSetup("susfs_post_mount.log")) + appendLine() + appendLine("echo \"$(get_current_time): Post-Mount脚本开始执行\" >> \"${'$'}LOG_FILE\"") + appendLine() + appendLine(generateBinaryCheck(config.targetPath)) + appendLine() + + // 添加SUS挂载 + if (config.susMounts.isNotEmpty()) { + appendLine("# 添加SUS挂载") + config.susMounts.forEach { mount -> + appendLine("\"${'$'}SUSFS_BIN\" add_sus_mount '$mount'") + appendLine("echo \"$(get_current_time): 添加SUS挂载: $mount\" >> \"${'$'}LOG_FILE\"") + } + appendLine() + } + + // 添加尝试卸载 + if (config.tryUmounts.isNotEmpty()) { + appendLine("# 添加尝试卸载") + config.tryUmounts.forEach { umount -> + val parts = umount.split("|") + if (parts.size == 2) { + val path = parts[0] + val mode = parts[1] + appendLine("\"${'$'}SUSFS_BIN\" add_try_umount '$path' $mode") + appendLine("echo \"$(get_current_time): 添加尝试卸载: $path (模式: $mode)\" >> \"${'$'}LOG_FILE\"") + } + } + appendLine() + } + + appendLine("echo \"$(get_current_time): Post-Mount脚本执行完成\" >> \"${'$'}LOG_FILE\"") + } + } + + /** + * 生成boot-completed.sh脚本内容 + */ + @SuppressLint("SdCardPath") + private fun generateBootCompletedScript(config: SuSFSManager.ModuleConfig): String { + return buildString { + appendLine("#!/system/bin/sh") + appendLine("# SuSFS Boot-Completed Script") + appendLine("# 在系统完全启动后执行") + appendLine() + appendLine(generateLogSetup("susfs_boot_completed.log")) + appendLine() + appendLine("echo \"$(get_current_time): Boot-Completed脚本开始执行\" >> \"${'$'}LOG_FILE\"") + appendLine() + appendLine(generateBinaryCheck(config.targetPath)) + appendLine() + + // 仅在支持隐藏挂载功能时执行相关配置 + if (config.support158) { + // SUS挂载隐藏控制 + val hideValue = if (config.hideSusMountsForAllProcs) 1 else 0 + appendLine("# 设置SUS挂载隐藏控制") + appendLine("\"${'$'}SUSFS_BIN\" hide_sus_mnts_for_all_procs $hideValue") + appendLine("echo \"$(get_current_time): SUS挂载隐藏控制设置为: ${if (config.hideSusMountsForAllProcs) "对所有进程隐藏" else "仅对非KSU进程隐藏"}\" >> \"${'$'}LOG_FILE\"") + appendLine() + + // 路径设置和SUS路径设置 + if (config.susPaths.isNotEmpty() || config.susLoopPaths.isNotEmpty()) { + generatePathSettingSection(config.androidDataPath, config.sdcardPath) + appendLine() + + // 添加普通SUS路径 + if (config.susPaths.isNotEmpty()) { + generateSusPathsSection(config.susPaths) + } + + // 添加循环SUS路径 + if (config.susLoopPaths.isNotEmpty()) { + generateSusLoopPathsSection(config.susLoopPaths) + } + + if (config.susMaps.isNotEmpty()) { + generateSusMapsSection(config.susMaps) + } + } + } + + appendLine("echo \"$(get_current_time): Boot-Completed脚本执行完成\" >> \"${'$'}LOG_FILE\"") + } + } + + private fun StringBuilder.generateSusMapsSection(susMaps: Set) { + if (susMaps.isNotEmpty()) { + appendLine("# 添加SUS映射") + susMaps.forEach { map -> + appendLine("\"${'$'}SUSFS_BIN\" add_sus_map '$map'") + appendLine("echo \"$(get_current_time): 添加SUS映射: $map\" >> \"${'$'}LOG_FILE\"") + } + appendLine() + } + } + + @SuppressLint("SdCardPath") + private fun StringBuilder.generatePathSettingSection(androidDataPath: String, sdcardPath: String) { + appendLine("# 路径配置") + appendLine("# 设置Android Data路径") + appendLine("until [ -d \"/sdcard/Android\" ]; do sleep 1; done") + appendLine("sleep 60") + appendLine() + appendLine("\"${'$'}SUSFS_BIN\" set_android_data_root_path '$androidDataPath'") + appendLine("echo \"$(get_current_time): Android Data路径设置为: $androidDataPath\" >> \"${'$'}LOG_FILE\"") + appendLine() + appendLine("# 设置SD卡路径") + appendLine("\"${'$'}SUSFS_BIN\" set_sdcard_root_path '$sdcardPath'") + appendLine("echo \"$(get_current_time): SD卡路径设置为: $sdcardPath\" >> \"${'$'}LOG_FILE\"") + appendLine() + } + + /** + * 生成module.prop文件内容 + */ + fun generateModuleProp(moduleId: String): String { + val moduleVersion = "v1.0.2" + val moduleVersionCode = "1002" + + return """ + id=$moduleId + name=SuSFS Manager + version=$moduleVersion + versionCode=$moduleVersionCode + author=ShirkNeko + description=SuSFS Manager Auto Configuration Module (自动生成请不要手动卸载或删除该模块! / Automatically generated Please do not manually uninstall or delete the module!) + updateJson= + """.trimIndent() + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/theme/CardManage.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/theme/CardManage.kt new file mode 100644 index 0000000..2757852 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/theme/CardManage.kt @@ -0,0 +1,192 @@ +package com.sukisu.ultra.ui.theme + +import android.content.Context +import androidx.compose.foundation.isSystemInDarkTheme +import androidx.compose.material3.CardDefaults +import androidx.compose.runtime.* +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.luminance +import androidx.compose.ui.unit.Dp +import androidx.compose.ui.unit.dp + +@Stable +object CardConfig { + // 卡片透明度 + var cardAlpha by mutableFloatStateOf(1f) + internal set + // 卡片亮度 + var cardDim by mutableFloatStateOf(0f) + internal set + // 卡片阴影 + var cardElevation by mutableStateOf(0.dp) + internal set + + // 功能开关 + var isShadowEnabled by mutableStateOf(true) + internal set + var isCustomBackgroundEnabled by mutableStateOf(false) + internal set + + var isCustomAlphaSet by mutableStateOf(false) + internal set + var isCustomDimSet by mutableStateOf(false) + internal set + var isUserDarkModeEnabled by mutableStateOf(false) + internal set + var isUserLightModeEnabled by mutableStateOf(false) + internal set + + // 配置键名 + private object Keys { + const val CARD_ALPHA = "card_alpha" + const val CARD_DIM = "card_dim" + const val CUSTOM_BACKGROUND_ENABLED = "custom_background_enabled" + const val IS_SHADOW_ENABLED = "is_shadow_enabled" + const val IS_CUSTOM_ALPHA_SET = "is_custom_alpha_set" + const val IS_CUSTOM_DIM_SET = "is_custom_dim_set" + const val IS_USER_DARK_MODE_ENABLED = "is_user_dark_mode_enabled" + const val IS_USER_LIGHT_MODE_ENABLED = "is_user_light_mode_enabled" + } + + fun updateAlpha(alpha: Float, isCustom: Boolean = true) { + cardAlpha = alpha.coerceIn(0f, 1f) + if (isCustom) isCustomAlphaSet = true + } + + fun updateDim(dim: Float, isCustom: Boolean = true) { + cardDim = dim.coerceIn(0f, 1f) + if (isCustom) isCustomDimSet = true + } + + fun updateShadow(enabled: Boolean, elevation: Dp = cardElevation) { + isShadowEnabled = enabled + cardElevation = if (enabled) elevation else cardElevation + } + + fun updateBackground(enabled: Boolean) { + isCustomBackgroundEnabled = enabled + // 自定义背景时自动禁用阴影以获得更好的视觉效果 + if (enabled) { + updateShadow(false) + } + } + + fun updateThemePreference(darkMode: Boolean?, lightMode: Boolean?) { + isUserDarkModeEnabled = darkMode ?: false + isUserLightModeEnabled = lightMode ?: false + } + + fun reset() { + cardAlpha = 1f + cardDim = 0f + cardElevation = 0.dp + isShadowEnabled = true + isCustomBackgroundEnabled = false + isCustomAlphaSet = false + isCustomDimSet = false + isUserDarkModeEnabled = false + isUserLightModeEnabled = false + } + + fun setThemeDefaults(isDarkMode: Boolean) { + if (!isCustomAlphaSet) { + updateAlpha(if (isDarkMode) 0.88f else 1f, false) + } + if (!isCustomDimSet) { + updateDim(if (isDarkMode) 0.25f else 0f, false) + } + // 暗色模式下默认启用轻微阴影 + if (isDarkMode && !isCustomBackgroundEnabled) { + updateShadow(true, 2.dp) + } + } + + fun save(context: Context) { + val prefs = context.getSharedPreferences("card_settings", Context.MODE_PRIVATE) + prefs.edit().apply { + putFloat(Keys.CARD_ALPHA, cardAlpha) + putFloat(Keys.CARD_DIM, cardDim) + putBoolean(Keys.CUSTOM_BACKGROUND_ENABLED, isCustomBackgroundEnabled) + putBoolean(Keys.IS_SHADOW_ENABLED, isShadowEnabled) + putBoolean(Keys.IS_CUSTOM_ALPHA_SET, isCustomAlphaSet) + putBoolean(Keys.IS_CUSTOM_DIM_SET, isCustomDimSet) + putBoolean(Keys.IS_USER_DARK_MODE_ENABLED, isUserDarkModeEnabled) + putBoolean(Keys.IS_USER_LIGHT_MODE_ENABLED, isUserLightModeEnabled) + apply() + } + } + + fun load(context: Context) { + val prefs = context.getSharedPreferences("card_settings", Context.MODE_PRIVATE) + cardAlpha = prefs.getFloat(Keys.CARD_ALPHA, 1f).coerceIn(0f, 1f) + cardDim = prefs.getFloat(Keys.CARD_DIM, 0f).coerceIn(0f, 1f) + isCustomBackgroundEnabled = prefs.getBoolean(Keys.CUSTOM_BACKGROUND_ENABLED, false) + isShadowEnabled = prefs.getBoolean(Keys.IS_SHADOW_ENABLED, true) + isCustomAlphaSet = prefs.getBoolean(Keys.IS_CUSTOM_ALPHA_SET, false) + isCustomDimSet = prefs.getBoolean(Keys.IS_CUSTOM_DIM_SET, false) + isUserDarkModeEnabled = prefs.getBoolean(Keys.IS_USER_DARK_MODE_ENABLED, false) + isUserLightModeEnabled = prefs.getBoolean(Keys.IS_USER_LIGHT_MODE_ENABLED, false) + + // 应用阴影设置 + updateShadow(isShadowEnabled, if (isShadowEnabled) cardElevation else 0.dp) + } + + @Deprecated("使用 updateShadow 替代", ReplaceWith("updateShadow(enabled)")) + fun updateShadowEnabled(enabled: Boolean) { + updateShadow(enabled) + } +} + +object CardStyleProvider { + + @Composable + fun getCardColors(originalColor: Color) = CardDefaults.cardColors( + containerColor = originalColor.copy(alpha = CardConfig.cardAlpha), + contentColor = determineContentColor(originalColor), + disabledContainerColor = originalColor.copy(alpha = CardConfig.cardAlpha * 0.38f), + disabledContentColor = determineContentColor(originalColor).copy(alpha = 0.38f) + ) + + @Composable + fun getCardElevation() = CardDefaults.cardElevation( + defaultElevation = CardConfig.cardElevation, + pressedElevation = if (CardConfig.isShadowEnabled) { + (CardConfig.cardElevation.value + 0).dp + } else 0.dp, + focusedElevation = if (CardConfig.isShadowEnabled) { + (CardConfig.cardElevation.value + 0).dp + } else 0.dp, + hoveredElevation = if (CardConfig.isShadowEnabled) { + (CardConfig.cardElevation.value + 0).dp + } else 0.dp, + draggedElevation = if (CardConfig.isShadowEnabled) { + (CardConfig.cardElevation.value + 0).dp + } else 0.dp, + disabledElevation = 0.dp + ) + + @Composable + private fun determineContentColor(originalColor: Color): Color { + val isDarkTheme = isSystemInDarkTheme() + + return when { + ThemeConfig.isThemeChanging -> { + if (isDarkTheme) Color.White else Color.Black + } + CardConfig.isUserLightModeEnabled -> Color.Black + CardConfig.isUserDarkModeEnabled -> Color.White + else -> { + val luminance = originalColor.luminance() + val threshold = if (isDarkTheme) 0.4f else 0.6f + if (luminance > threshold) Color.Black else Color.White + } + } + } +} + +// 向后兼容 +@Composable +fun getCardColors(originalColor: Color) = CardStyleProvider.getCardColors(originalColor) + +@Composable +fun getCardElevation() = CardStyleProvider.getCardElevation() diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/theme/Color.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/theme/Color.kt new file mode 100644 index 0000000..52d1367 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/theme/Color.kt @@ -0,0 +1,615 @@ +package com.sukisu.ultra.ui.theme + +import androidx.compose.ui.graphics.Color + +sealed class ThemeColors { + // 浅色 + abstract val primaryLight: Color + abstract val onPrimaryLight: Color + abstract val primaryContainerLight: Color + abstract val onPrimaryContainerLight: Color + abstract val secondaryLight: Color + abstract val onSecondaryLight: Color + abstract val secondaryContainerLight: Color + abstract val onSecondaryContainerLight: Color + abstract val tertiaryLight: Color + abstract val onTertiaryLight: Color + abstract val tertiaryContainerLight: Color + abstract val onTertiaryContainerLight: Color + abstract val errorLight: Color + abstract val onErrorLight: Color + abstract val errorContainerLight: Color + abstract val onErrorContainerLight: Color + abstract val backgroundLight: Color + abstract val onBackgroundLight: Color + abstract val surfaceLight: Color + abstract val onSurfaceLight: Color + abstract val surfaceVariantLight: Color + abstract val onSurfaceVariantLight: Color + abstract val outlineLight: Color + abstract val outlineVariantLight: Color + abstract val scrimLight: Color + abstract val inverseSurfaceLight: Color + abstract val inverseOnSurfaceLight: Color + abstract val inversePrimaryLight: Color + abstract val surfaceDimLight: Color + abstract val surfaceBrightLight: Color + abstract val surfaceContainerLowestLight: Color + abstract val surfaceContainerLowLight: Color + abstract val surfaceContainerLight: Color + abstract val surfaceContainerHighLight: Color + abstract val surfaceContainerHighestLight: Color + // 深色 + abstract val primaryDark: Color + abstract val onPrimaryDark: Color + abstract val primaryContainerDark: Color + abstract val onPrimaryContainerDark: Color + abstract val secondaryDark: Color + abstract val onSecondaryDark: Color + abstract val secondaryContainerDark: Color + abstract val onSecondaryContainerDark: Color + abstract val tertiaryDark: Color + abstract val onTertiaryDark: Color + abstract val tertiaryContainerDark: Color + abstract val onTertiaryContainerDark: Color + abstract val errorDark: Color + abstract val onErrorDark: Color + abstract val errorContainerDark: Color + abstract val onErrorContainerDark: Color + abstract val backgroundDark: Color + abstract val onBackgroundDark: Color + abstract val surfaceDark: Color + abstract val onSurfaceDark: Color + abstract val surfaceVariantDark: Color + abstract val onSurfaceVariantDark: Color + abstract val outlineDark: Color + abstract val outlineVariantDark: Color + abstract val scrimDark: Color + abstract val inverseSurfaceDark: Color + abstract val inverseOnSurfaceDark: Color + abstract val inversePrimaryDark: Color + abstract val surfaceDimDark: Color + abstract val surfaceBrightDark: Color + abstract val surfaceContainerLowestDark: Color + abstract val surfaceContainerLowDark: Color + abstract val surfaceContainerDark: Color + abstract val surfaceContainerHighDark: Color + abstract val surfaceContainerHighestDark: Color + + // 默认主题 (蓝色) + object Default : ThemeColors() { + override val primaryLight = Color(0xFF415F91) + override val onPrimaryLight = Color(0xFFFFFFFF) + override val primaryContainerLight = Color(0xFFD6E3FF) + override val onPrimaryContainerLight = Color(0xFF284777) + override val secondaryLight = Color(0xFF565F71) + override val onSecondaryLight = Color(0xFFFFFFFF) + override val secondaryContainerLight = Color(0xFFDAE2F9) + override val onSecondaryContainerLight = Color(0xFF3E4759) + override val tertiaryLight = Color(0xFF705575) + override val onTertiaryLight = Color(0xFFFFFFFF) + override val tertiaryContainerLight = Color(0xFFFAD8FD) + override val onTertiaryContainerLight = Color(0xFF573E5C) + override val errorLight = Color(0xFFBA1A1A) + override val onErrorLight = Color(0xFFFFFFFF) + override val errorContainerLight = Color(0xFFFFDAD6) + override val onErrorContainerLight = Color(0xFF93000A) + override val backgroundLight = Color(0xFFF9F9FF) + override val onBackgroundLight = Color(0xFF191C20) + override val surfaceLight = Color(0xFFF9F9FF) + override val onSurfaceLight = Color(0xFF191C20) + override val surfaceVariantLight = Color(0xFFE0E2EC) + override val onSurfaceVariantLight = Color(0xFF44474E) + override val outlineLight = Color(0xFF74777F) + override val outlineVariantLight = Color(0xFFC4C6D0) + override val scrimLight = Color(0xFF000000) + override val inverseSurfaceLight = Color(0xFF2E3036) + override val inverseOnSurfaceLight = Color(0xFFF0F0F7) + override val inversePrimaryLight = Color(0xFFAAC7FF) + override val surfaceDimLight = Color(0xFFD9D9E0) + override val surfaceBrightLight = Color(0xFFF9F9FF) + override val surfaceContainerLowestLight = Color(0xFFFFFFFF) + override val surfaceContainerLowLight = Color(0xFFF3F3FA) + override val surfaceContainerLight = Color(0xFFEDEDF4) + override val surfaceContainerHighLight = Color(0xFFE7E8EE) + override val surfaceContainerHighestLight = Color(0xFFE2E2E9) + + override val primaryDark = Color(0xFFAAC7FF) + override val onPrimaryDark = Color(0xFF0A305F) + override val primaryContainerDark = Color(0xFF284777) + override val onPrimaryContainerDark = Color(0xFFD6E3FF) + override val secondaryDark = Color(0xFFBEC6DC) + override val onSecondaryDark = Color(0xFF283141) + override val secondaryContainerDark = Color(0xFF3E4759) + override val onSecondaryContainerDark = Color(0xFFDAE2F9) + override val tertiaryDark = Color(0xFFDDBCE0) + override val onTertiaryDark = Color(0xFF3F2844) + override val tertiaryContainerDark = Color(0xFF573E5C) + override val onTertiaryContainerDark = Color(0xFFFAD8FD) + override val errorDark = Color(0xFFFFB4AB) + override val onErrorDark = Color(0xFF690005) + override val errorContainerDark = Color(0xFF93000A) + override val onErrorContainerDark = Color(0xFFFFDAD6) + override val backgroundDark = Color(0xFF111318) + override val onBackgroundDark = Color(0xFFE2E2E9) + override val surfaceDark = Color(0xFF111318) + override val onSurfaceDark = Color(0xFFE2E2E9) + override val surfaceVariantDark = Color(0xFF44474E) + override val onSurfaceVariantDark = Color(0xFFC4C6D0) + override val outlineDark = Color(0xFF8E9099) + override val outlineVariantDark = Color(0xFF44474E) + override val scrimDark = Color(0xFF000000) + override val inverseSurfaceDark = Color(0xFFE2E2E9) + override val inverseOnSurfaceDark = Color(0xFF2E3036) + override val inversePrimaryDark = Color(0xFF415F91) + override val surfaceDimDark = Color(0xFF111318) + override val surfaceBrightDark = Color(0xFF37393E) + override val surfaceContainerLowestDark = Color(0xFF0C0E13) + override val surfaceContainerLowDark = Color(0xFF191C20) + override val surfaceContainerDark = Color(0xFF1D2024) + override val surfaceContainerHighDark = Color(0xFF282A2F) + override val surfaceContainerHighestDark = Color(0xFF33353A) + } + + // 绿色主题 + object Green : ThemeColors() { + override val primaryLight = Color(0xFF4C662B) + override val onPrimaryLight = Color(0xFFFFFFFF) + override val primaryContainerLight = Color(0xFFCDEDA3) + override val onPrimaryContainerLight = Color(0xFF354E16) + override val secondaryLight = Color(0xFF586249) + override val onSecondaryLight = Color(0xFFFFFFFF) + override val secondaryContainerLight = Color(0xFFDCE7C8) + override val onSecondaryContainerLight = Color(0xFF404A33) + override val tertiaryLight = Color(0xFF386663) + override val onTertiaryLight = Color(0xFFFFFFFF) + override val tertiaryContainerLight = Color(0xFFBCECE7) + override val onTertiaryContainerLight = Color(0xFF1F4E4B) + override val errorLight = Color(0xFFBA1A1A) + override val onErrorLight = Color(0xFFFFFFFF) + override val errorContainerLight = Color(0xFFFFDAD6) + override val onErrorContainerLight = Color(0xFF93000A) + override val backgroundLight = Color(0xFFF9FAEF) + override val onBackgroundLight = Color(0xFF1A1C16) + override val surfaceLight = Color(0xFFF9FAEF) + override val onSurfaceLight = Color(0xFF1A1C16) + override val surfaceVariantLight = Color(0xFFE1E4D5) + override val onSurfaceVariantLight = Color(0xFF44483D) + override val outlineLight = Color(0xFF75796C) + override val outlineVariantLight = Color(0xFFC5C8BA) + override val scrimLight = Color(0xFF000000) + override val inverseSurfaceLight = Color(0xFF2F312A) + override val inverseOnSurfaceLight = Color(0xFFF1F2E6) + override val inversePrimaryLight = Color(0xFFB1D18A) + override val surfaceDimLight = Color(0xFFDADBD0) + override val surfaceBrightLight = Color(0xFFF9FAEF) + override val surfaceContainerLowestLight = Color(0xFFFFFFFF) + override val surfaceContainerLowLight = Color(0xFFF3F4E9) + override val surfaceContainerLight = Color(0xFFEEEFE3) + override val surfaceContainerHighLight = Color(0xFFE8E9DE) + override val surfaceContainerHighestLight = Color(0xFFE2E3D8) + + override val primaryDark = Color(0xFFB1D18A) + override val onPrimaryDark = Color(0xFF1F3701) + override val primaryContainerDark = Color(0xFF354E16) + override val onPrimaryContainerDark = Color(0xFFCDEDA3) + override val secondaryDark = Color(0xFFBFCBAD) + override val onSecondaryDark = Color(0xFF2A331E) + override val secondaryContainerDark = Color(0xFF404A33) + override val onSecondaryContainerDark = Color(0xFFDCE7C8) + override val tertiaryDark = Color(0xFFA0D0CB) + override val onTertiaryDark = Color(0xFF003735) + override val tertiaryContainerDark = Color(0xFF1F4E4B) + override val onTertiaryContainerDark = Color(0xFFBCECE7) + override val errorDark = Color(0xFFFFB4AB) + override val onErrorDark = Color(0xFF690005) + override val errorContainerDark = Color(0xFF93000A) + override val onErrorContainerDark = Color(0xFFFFDAD6) + override val backgroundDark = Color(0xFF12140E) + override val onBackgroundDark = Color(0xFFE2E3D8) + override val surfaceDark = Color(0xFF12140E) + override val onSurfaceDark = Color(0xFFE2E3D8) + override val surfaceVariantDark = Color(0xFF44483D) + override val onSurfaceVariantDark = Color(0xFFC5C8BA) + override val outlineDark = Color(0xFF8F9285) + override val outlineVariantDark = Color(0xFF44483D) + override val scrimDark = Color(0xFF000000) + override val inverseSurfaceDark = Color(0xFFE2E3D8) + override val inverseOnSurfaceDark = Color(0xFF2F312A) + override val inversePrimaryDark = Color(0xFF4C662B) + override val surfaceDimDark = Color(0xFF12140E) + override val surfaceBrightDark = Color(0xFF383A32) + override val surfaceContainerLowestDark = Color(0xFF0C0F09) + override val surfaceContainerLowDark = Color(0xFF1A1C16) + override val surfaceContainerDark = Color(0xFF1E201A) + override val surfaceContainerHighDark = Color(0xFF282B24) + override val surfaceContainerHighestDark = Color(0xFF33362E) + } + + // 紫色主题 + object Purple : ThemeColors() { + override val primaryLight = Color(0xFF7C4E7E) + override val onPrimaryLight = Color(0xFFFFFFFF) + override val primaryContainerLight = Color(0xFFFFD6FC) + override val onPrimaryContainerLight = Color(0xFF623765) + override val secondaryLight = Color(0xFF6C586B) + override val onSecondaryLight = Color(0xFFFFFFFF) + override val secondaryContainerLight = Color(0xFFF5DBF1) + override val onSecondaryContainerLight = Color(0xFF534152) + override val tertiaryLight = Color(0xFF825249) + override val onTertiaryLight = Color(0xFFFFFFFF) + override val tertiaryContainerLight = Color(0xFFFFDAD4) + override val onTertiaryContainerLight = Color(0xFF673B33) + override val errorLight = Color(0xFFBA1A1A) + override val onErrorLight = Color(0xFFFFFFFF) + override val errorContainerLight = Color(0xFFFFDAD6) + override val onErrorContainerLight = Color(0xFF93000A) + override val backgroundLight = Color(0xFFFFF7FA) + override val onBackgroundLight = Color(0xFF1F1A1F) + override val surfaceLight = Color(0xFFFFF7FA) + override val onSurfaceLight = Color(0xFF1F1A1F) + override val surfaceVariantLight = Color(0xFFEDDFE8) + override val onSurfaceVariantLight = Color(0xFF4D444C) + override val outlineLight = Color(0xFF7F747C) + override val outlineVariantLight = Color(0xFFD0C3CC) + override val scrimLight = Color(0xFF000000) + override val inverseSurfaceLight = Color(0xFF352F34) + override val inverseOnSurfaceLight = Color(0xFFF9EEF4) + override val inversePrimaryLight = Color(0xFFECB4EC) + override val surfaceDimLight = Color(0xFFE2D7DE) + override val surfaceBrightLight = Color(0xFFFFF7FA) + override val surfaceContainerLowestLight = Color(0xFFFFFFFF) + override val surfaceContainerLowLight = Color(0xFFFCF0F7) + override val surfaceContainerLight = Color(0xFFF6EBF2) + override val surfaceContainerHighLight = Color(0xFFF0E5EC) + override val surfaceContainerHighestLight = Color(0xFFEBDFE6) + + override val primaryDark = Color(0xFFECB4EC) + override val onPrimaryDark = Color(0xFF49204D) + override val primaryContainerDark = Color(0xFF623765) + override val onPrimaryContainerDark = Color(0xFFFFD6FC) + override val secondaryDark = Color(0xFFD8BFD5) + override val onSecondaryDark = Color(0xFF3B2B3B) + override val secondaryContainerDark = Color(0xFF534152) + override val onSecondaryContainerDark = Color(0xFFF5DBF1) + override val tertiaryDark = Color(0xFFF6B8AD) + override val onTertiaryDark = Color(0xFF4C251F) + override val tertiaryContainerDark = Color(0xFF673B33) + override val onTertiaryContainerDark = Color(0xFFFFDAD4) + override val errorDark = Color(0xFFFFB4AB) + override val onErrorDark = Color(0xFF690005) + override val errorContainerDark = Color(0xFF93000A) + override val onErrorContainerDark = Color(0xFFFFDAD6) + override val backgroundDark = Color(0xFF171216) + override val onBackgroundDark = Color(0xFFEBDFE6) + override val surfaceDark = Color(0xFF171216) + override val onSurfaceDark = Color(0xFFEBDFE6) + override val surfaceVariantDark = Color(0xFF4D444C) + override val onSurfaceVariantDark = Color(0xFFD0C3CC) + override val outlineDark = Color(0xFF998D96) + override val outlineVariantDark = Color(0xFF4D444C) + override val scrimDark = Color(0xFF000000) + override val inverseSurfaceDark = Color(0xFFEBDFE6) + override val inverseOnSurfaceDark = Color(0xFF352F34) + override val inversePrimaryDark = Color(0xFF7C4E7E) + override val surfaceDimDark = Color(0xFF171216) + override val surfaceBrightDark = Color(0xFF3E373D) + override val surfaceContainerLowestDark = Color(0xFF110D11) + override val surfaceContainerLowDark = Color(0xFF1F1A1F) + override val surfaceContainerDark = Color(0xFF231E23) + override val surfaceContainerHighDark = Color(0xFF2E282D) + override val surfaceContainerHighestDark = Color(0xFF393338) + } + + // 橙色主题 + object Orange : ThemeColors() { + override val primaryLight = Color(0xFF8B4F24) + override val onPrimaryLight = Color(0xFFFFFFFF) + override val primaryContainerLight = Color(0xFFFFDCC7) + override val onPrimaryContainerLight = Color(0xFF6E390E) + override val secondaryLight = Color(0xFF755846) + override val onSecondaryLight = Color(0xFFFFFFFF) + override val secondaryContainerLight = Color(0xFFFFDCC7) + override val onSecondaryContainerLight = Color(0xFF5B4130) + override val tertiaryLight = Color(0xFF865219) + override val onTertiaryLight = Color(0xFFFFFFFF) + override val tertiaryContainerLight = Color(0xFFFFDCBF) + override val onTertiaryContainerLight = Color(0xFF6A3B01) + override val errorLight = Color(0xFFBA1A1A) + override val onErrorLight = Color(0xFFFFFFFF) + override val errorContainerLight = Color(0xFFFFDAD6) + override val onErrorContainerLight = Color(0xFF93000A) + override val backgroundLight = Color(0xFFFFF8F5) + override val onBackgroundLight = Color(0xFF221A15) + override val surfaceLight = Color(0xFFFFF8F5) + override val onSurfaceLight = Color(0xFF221A15) + override val surfaceVariantLight = Color(0xFFF4DED3) + override val onSurfaceVariantLight = Color(0xFF52443C) + override val outlineLight = Color(0xFF84746A) + override val outlineVariantLight = Color(0xFFD7C3B8) + override val scrimLight = Color(0xFF000000) + override val inverseSurfaceLight = Color(0xFF382E29) + override val inverseOnSurfaceLight = Color(0xFFFFEDE5) + override val inversePrimaryLight = Color(0xFFFFB787) + override val surfaceDimLight = Color(0xFFE7D7CE) + override val surfaceBrightLight = Color(0xFFFFF8F5) + override val surfaceContainerLowestLight = Color(0xFFFFFFFF) + override val surfaceContainerLowLight = Color(0xFFFFF1EA) + override val surfaceContainerLight = Color(0xFFFCEBE2) + override val surfaceContainerHighLight = Color(0xFFF6E5DC) + override val surfaceContainerHighestLight = Color(0xFFF0DFD7) + + override val primaryDark = Color(0xFFFFB787) + override val onPrimaryDark = Color(0xFF502400) + override val primaryContainerDark = Color(0xFF6E390E) + override val onPrimaryContainerDark = Color(0xFFFFDCC7) + override val secondaryDark = Color(0xFFE5BFA8) + override val onSecondaryDark = Color(0xFF422B1B) + override val secondaryContainerDark = Color(0xFF5B4130) + override val onSecondaryContainerDark = Color(0xFFFFDCC7) + override val tertiaryDark = Color(0xFFFDB876) + override val onTertiaryDark = Color(0xFF4B2800) + override val tertiaryContainerDark = Color(0xFF6A3B01) + override val onTertiaryContainerDark = Color(0xFFFFDCBF) + override val errorDark = Color(0xFFFFB4AB) + override val onErrorDark = Color(0xFF690005) + override val errorContainerDark = Color(0xFF93000A) + override val onErrorContainerDark = Color(0xFFFFDAD6) + override val backgroundDark = Color(0xFF19120D) + override val onBackgroundDark = Color(0xFFF0DFD7) + override val surfaceDark = Color(0xFF19120D) + override val onSurfaceDark = Color(0xFFF0DFD7) + override val surfaceVariantDark = Color(0xFF52443C) + override val onSurfaceVariantDark = Color(0xFFD7C3B8) + override val outlineDark = Color(0xFF9F8D83) + override val outlineVariantDark = Color(0xFF52443C) + override val scrimDark = Color(0xFF000000) + override val inverseSurfaceDark = Color(0xFFF0DFD7) + override val inverseOnSurfaceDark = Color(0xFF382E29) + override val inversePrimaryDark = Color(0xFF8B4F24) + override val surfaceDimDark = Color(0xFF19120D) + override val surfaceBrightDark = Color(0xFF413731) + override val surfaceContainerLowestDark = Color(0xFF140D08) + override val surfaceContainerLowDark = Color(0xFF221A15) + override val surfaceContainerDark = Color(0xFF261E19) + override val surfaceContainerHighDark = Color(0xFF312823) + override val surfaceContainerHighestDark = Color(0xFF3D332D) + } + + // 粉色主题 + object Pink : ThemeColors() { + override val primaryLight = Color(0xFF8C4A60) + override val onPrimaryLight = Color(0xFFFFFFFF) + override val primaryContainerLight = Color(0xFFFFD9E2) + override val onPrimaryContainerLight = Color(0xFF703348) + override val secondaryLight = Color(0xFF8B4A62) + override val onSecondaryLight = Color(0xFFFFFFFF) + override val secondaryContainerLight = Color(0xFFFFD9E3) + override val onSecondaryContainerLight = Color(0xFF6F334B) + override val tertiaryLight = Color(0xFF8B4A62) + override val onTertiaryLight = Color(0xFFFFFFFF) + override val tertiaryContainerLight = Color(0xFFFFD9E3) + override val onTertiaryContainerLight = Color(0xFF6F334B) + override val errorLight = Color(0xFFBA1A1A) + override val onErrorLight = Color(0xFFFFFFFF) + override val errorContainerLight = Color(0xFFFFDAD6) + override val onErrorContainerLight = Color(0xFF93000A) + override val backgroundLight = Color(0xFFFFF8F8) + override val onBackgroundLight = Color(0xFF22191B) + override val surfaceLight = Color(0xFFFFF8F8) + override val onSurfaceLight = Color(0xFF22191B) + override val surfaceVariantLight = Color(0xFFF2DDE1) + override val onSurfaceVariantLight = Color(0xFF514346) + override val outlineLight = Color(0xFF837377) + override val outlineVariantLight = Color(0xFFD5C2C5) + override val scrimLight = Color(0xFF000000) + override val inverseSurfaceLight = Color(0xFF372E30) + override val inverseOnSurfaceLight = Color(0xFFFDEDEF) + override val inversePrimaryLight = Color(0xFFFFB1C7) + override val surfaceDimLight = Color(0xFFE6D6D9) + override val surfaceBrightLight = Color(0xFFFFF8F8) + override val surfaceContainerLowestLight = Color(0xFFFFFFFF) + override val surfaceContainerLowLight = Color(0xFFFFF0F2) + override val surfaceContainerLight = Color(0xFFFBEAED) + override val surfaceContainerHighLight = Color(0xFFF5E4E7) + override val surfaceContainerHighestLight = Color(0xFFEFDFE1) + + override val primaryDark = Color(0xFFFFB1C7) + override val onPrimaryDark = Color(0xFF541D32) + override val primaryContainerDark = Color(0xFF703348) + override val onPrimaryContainerDark = Color(0xFFFFD9E2) + override val secondaryDark = Color(0xFFFFB0CB) + override val onSecondaryDark = Color(0xFF541D34) + override val secondaryContainerDark = Color(0xFF6F334B) + override val onSecondaryContainerDark = Color(0xFFFFD9E3) + override val tertiaryDark = Color(0xFFFFB0CB) + override val onTertiaryDark = Color(0xFF541D34) + override val tertiaryContainerDark = Color(0xFF6F334B) + override val onTertiaryContainerDark = Color(0xFFFFD9E3) + override val errorDark = Color(0xFFFFB4AB) + override val onErrorDark = Color(0xFF690005) + override val errorContainerDark = Color(0xFF93000A) + override val onErrorContainerDark = Color(0xFFFFDAD6) + override val backgroundDark = Color(0xFF191113) + override val onBackgroundDark = Color(0xFFEFDFE1) + override val surfaceDark = Color(0xFF191113) + override val onSurfaceDark = Color(0xFFEFDFE1) + override val surfaceVariantDark = Color(0xFF514346) + override val onSurfaceVariantDark = Color(0xFFD5C2C5) + override val outlineDark = Color(0xFF9E8C90) + override val outlineVariantDark = Color(0xFF514346) + override val scrimDark = Color(0xFF000000) + override val inverseSurfaceDark = Color(0xFFEFDFE1) + override val inverseOnSurfaceDark = Color(0xFF372E30) + override val inversePrimaryDark = Color(0xFF8C4A60) + override val surfaceDimDark = Color(0xFF191113) + override val surfaceBrightDark = Color(0xFF413739) + override val surfaceContainerLowestDark = Color(0xFF140C0E) + override val surfaceContainerLowDark = Color(0xFF22191B) + override val surfaceContainerDark = Color(0xFF261D1F) + override val surfaceContainerHighDark = Color(0xFF31282A) + override val surfaceContainerHighestDark = Color(0xFF3C3234) + } + + // 灰色主题 + object Gray : ThemeColors() { + override val primaryLight = Color(0xFF5B5C5C) + override val onPrimaryLight = Color(0xFFFFFFFF) + override val primaryContainerLight = Color(0xFF747474) + override val onPrimaryContainerLight = Color(0xFFFEFCFC) + override val secondaryLight = Color(0xFF5F5E5E) + override val onSecondaryLight = Color(0xFFFFFFFF) + override val secondaryContainerLight = Color(0xFFE4E2E1) + override val onSecondaryContainerLight = Color(0xFF656464) + override val tertiaryLight = Color(0xFF5E5B5D) + override val onTertiaryLight = Color(0xFFFFFFFF) + override val tertiaryContainerLight = Color(0xFF777375) + override val onTertiaryContainerLight = Color(0xFFFFFBFF) + override val errorLight = Color(0xFFBA1A1A) + override val onErrorLight = Color(0xFFFFFFFF) + override val errorContainerLight = Color(0xFFFFDAD6) + override val onErrorContainerLight = Color(0xFF93000A) + override val backgroundLight = Color(0xFFFCF8F8) + override val onBackgroundLight = Color(0xFF1C1B1B) + override val surfaceLight = Color(0xFFFCF8F8) + override val onSurfaceLight = Color(0xFF1C1B1B) + override val surfaceVariantLight = Color(0xFFE0E3E3) + override val onSurfaceVariantLight = Color(0xFF444748) + override val outlineLight = Color(0xFF747878) + override val outlineVariantLight = Color(0xFFC4C7C7) + override val scrimLight = Color(0xFF000000) + override val inverseSurfaceLight = Color(0xFF313030) + override val inverseOnSurfaceLight = Color(0xFFF4F0EF) + override val inversePrimaryLight = Color(0xFFC7C6C6) + override val surfaceDimLight = Color(0xFFDDD9D8) + override val surfaceBrightLight = Color(0xFFFCF8F8) + override val surfaceContainerLowestLight = Color(0xFFFFFFFF) + override val surfaceContainerLowLight = Color(0xFFF7F3F2) + override val surfaceContainerLight = Color(0xFFF1EDEC) + override val surfaceContainerHighLight = Color(0xFFEBE7E7) + override val surfaceContainerHighestLight = Color(0xFFE5E2E1) + + override val primaryDark = Color(0xFFC7C6C6) + override val onPrimaryDark = Color(0xFF303031) + override val primaryContainerDark = Color(0xFF919190) + override val onPrimaryContainerDark = Color(0xFF161718) + override val secondaryDark = Color(0xFFC8C6C5) + override val onSecondaryDark = Color(0xFF303030) + override val secondaryContainerDark = Color(0xFF474746) + override val onSecondaryContainerDark = Color(0xFFB7B5B4) + override val tertiaryDark = Color(0xFFCAC5C7) + override val onTertiaryDark = Color(0xFF323031) + override val tertiaryContainerDark = Color(0xFF948F91) + override val onTertiaryContainerDark = Color(0xFF181718) + override val errorDark = Color(0xFFFFB4AB) + override val onErrorDark = Color(0xFF690005) + override val errorContainerDark = Color(0xFF93000A) + override val onErrorContainerDark = Color(0xFFFFDAD6) + override val backgroundDark = Color(0xFF141313) + override val onBackgroundDark = Color(0xFFE5E2E1) + override val surfaceDark = Color(0xFF141313) + override val onSurfaceDark = Color(0xFFE5E2E1) + override val surfaceVariantDark = Color(0xFF444748) + override val onSurfaceVariantDark = Color(0xFFC4C7C7) + override val outlineDark = Color(0xFF8E9192) + override val outlineVariantDark = Color(0xFF444748) + override val scrimDark = Color(0xFF000000) + override val inverseSurfaceDark = Color(0xFFE5E2E1) + override val inverseOnSurfaceDark = Color(0xFF313030) + override val inversePrimaryDark = Color(0xFF5E5E5E) + override val surfaceDimDark = Color(0xFF141313) + override val surfaceBrightDark = Color(0xFF3A3939) + override val surfaceContainerLowestDark = Color(0xFF0E0E0E) + override val surfaceContainerLowDark = Color(0xFF1C1B1B) + override val surfaceContainerDark = Color(0xFF201F1F) + override val surfaceContainerHighDark = Color(0xFF2A2A2A) + override val surfaceContainerHighestDark = Color(0xFF353434) + } + + // 黄色主题 + object Yellow : ThemeColors() { + override val primaryLight = Color(0xFF6D5E0F) + override val onPrimaryLight = Color(0xFFFFFFFF) + override val primaryContainerLight = Color(0xFFF8E288) + override val onPrimaryContainerLight = Color(0xFF534600) + override val secondaryLight = Color(0xFF6D5E0F) + override val onSecondaryLight = Color(0xFFFFFFFF) + override val secondaryContainerLight = Color(0xFFF7E388) + override val onSecondaryContainerLight = Color(0xFF534600) + override val tertiaryLight = Color(0xFF685F13) + override val onTertiaryLight = Color(0xFFFFFFFF) + override val tertiaryContainerLight = Color(0xFFF1E58A) + override val onTertiaryContainerLight = Color(0xFF4F4800) + override val errorLight = Color(0xFFBA1A1A) + override val onErrorLight = Color(0xFFFFFFFF) + override val errorContainerLight = Color(0xFFFFDAD6) + override val onErrorContainerLight = Color(0xFF93000A) + override val backgroundLight = Color(0xFFFFF9ED) + override val onBackgroundLight = Color(0xFF1E1C13) + override val surfaceLight = Color(0xFFFFF9ED) + override val onSurfaceLight = Color(0xFF1E1C13) + override val surfaceVariantLight = Color(0xFFE9E2D0) + override val onSurfaceVariantLight = Color(0xFF4B4739) + override val outlineLight = Color(0xFF7C7768) + override val outlineVariantLight = Color(0xFFCDC6B4) + override val scrimLight = Color(0xFF000000) + override val inverseSurfaceLight = Color(0xFF333027) + override val inverseOnSurfaceLight = Color(0xFFF7F0E2) + override val inversePrimaryLight = Color(0xFFDAC66F) + override val surfaceDimLight = Color(0xFFE0D9CC) + override val surfaceBrightLight = Color(0xFFFFF9ED) + override val surfaceContainerLowestLight = Color(0xFFFFFFFF) + override val surfaceContainerLowLight = Color(0xFFFAF3E5) + override val surfaceContainerLight = Color(0xFFF4EDDF) + override val surfaceContainerHighLight = Color(0xFFEEE8DA) + override val surfaceContainerHighestLight = Color(0xFFE8E2D4) + + override val primaryDark = Color(0xFFDAC66F) + override val onPrimaryDark = Color(0xFF393000) + override val primaryContainerDark = Color(0xFF534600) + override val onPrimaryContainerDark = Color(0xFFF8E288) + override val secondaryDark = Color(0xFFDAC76F) + override val onSecondaryDark = Color(0xFF393000) + override val secondaryContainerDark = Color(0xFF534600) + override val onSecondaryContainerDark = Color(0xFFF7E388) + override val tertiaryDark = Color(0xFFD4C871) + override val onTertiaryDark = Color(0xFF363100) + override val tertiaryContainerDark = Color(0xFF4F4800) + override val onTertiaryContainerDark = Color(0xFFF1E58A) + override val errorDark = Color(0xFFFFB4AB) + override val onErrorDark = Color(0xFF690005) + override val errorContainerDark = Color(0xFF93000A) + override val onErrorContainerDark = Color(0xFFFFDAD6) + override val backgroundDark = Color(0xFF15130B) + override val onBackgroundDark = Color(0xFFE8E2D4) + override val surfaceDark = Color(0xFF15130B) + override val onSurfaceDark = Color(0xFFE8E2D4) + override val surfaceVariantDark = Color(0xFF4B4739) + override val onSurfaceVariantDark = Color(0xFFCDC6B4) + override val outlineDark = Color(0xFF969080) + override val outlineVariantDark = Color(0xFF4B4739) + override val scrimDark = Color(0xFF000000) + override val inverseSurfaceDark = Color(0xFFE8E2D4) + override val inverseOnSurfaceDark = Color(0xFF333027) + override val inversePrimaryDark = Color(0xFF6D5E0F) + override val surfaceDimDark = Color(0xFF15130B) + override val surfaceBrightDark = Color(0xFF3C3930) + override val surfaceContainerLowestDark = Color(0xFF100E07) + override val surfaceContainerLowDark = Color(0xFF1E1C13) + override val surfaceContainerDark = Color(0xFF222017) + override val surfaceContainerHighDark = Color(0xFF2C2A21) + override val surfaceContainerHighestDark = Color(0xFF37352B) + } + + companion object { + fun fromName(name: String): ThemeColors = when (name.lowercase()) { + "green" -> Green + "purple" -> Purple + "orange" -> Orange + "pink" -> Pink + "gray" -> Gray + "yellow" -> Yellow + else -> Default + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/theme/Theme.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/theme/Theme.kt new file mode 100644 index 0000000..87ac86d --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/theme/Theme.kt @@ -0,0 +1,593 @@ +package com.sukisu.ultra.ui.theme + +import android.content.Context +import android.net.Uri +import android.os.Build +import android.util.Log +import androidx.activity.ComponentActivity +import androidx.activity.SystemBarStyle +import androidx.activity.enableEdgeToEdge +import androidx.annotation.RequiresApi +import androidx.compose.animation.core.* +import androidx.compose.foundation.background +import androidx.compose.foundation.isSystemInDarkTheme +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.runtime.saveable.rememberSaveable +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.alpha +import androidx.compose.ui.draw.paint +import androidx.compose.ui.graphics.Brush +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.graphicsLayer +import androidx.compose.ui.graphics.toArgb +import androidx.compose.ui.layout.ContentScale +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.zIndex +import androidx.core.content.edit +import androidx.core.net.toUri +import coil.compose.AsyncImagePainter +import coil.compose.rememberAsyncImagePainter +import com.sukisu.ultra.ui.theme.util.BackgroundTransformation +import com.sukisu.ultra.ui.theme.util.saveTransformedBackground +import kotlinx.coroutines.DelicateCoroutinesApi +import kotlinx.coroutines.launch +import java.io.File +import java.io.FileOutputStream + +@Stable +object ThemeConfig { + // 主题状态 + var customBackgroundUri by mutableStateOf(null) + var forceDarkMode by mutableStateOf(null) + var currentTheme by mutableStateOf(ThemeColors.Default) + var useDynamicColor by mutableStateOf(false) + + // 背景状态 + var backgroundImageLoaded by mutableStateOf(false) + var isThemeChanging by mutableStateOf(false) + var preventBackgroundRefresh by mutableStateOf(false) + + // 主题变化检测 + private var lastDarkModeState: Boolean? = null + + fun detectThemeChange(currentDarkMode: Boolean): Boolean { + val hasChanged = lastDarkModeState != null && lastDarkModeState != currentDarkMode + lastDarkModeState = currentDarkMode + return hasChanged + } + + fun resetBackgroundState() { + if (!preventBackgroundRefresh) { + backgroundImageLoaded = false + } + isThemeChanging = true + } + + fun updateTheme( + theme: ThemeColors? = null, + dynamicColor: Boolean? = null, + darkMode: Boolean? = null + ) { + theme?.let { currentTheme = it } + dynamicColor?.let { useDynamicColor = it } + darkMode?.let { forceDarkMode = it } + } + + fun reset() { + customBackgroundUri = null + forceDarkMode = null + currentTheme = ThemeColors.Default + useDynamicColor = false + backgroundImageLoaded = false + isThemeChanging = false + preventBackgroundRefresh = false + lastDarkModeState = null + } +} + +object ThemeManager { + private const val PREFS_NAME = "theme_prefs" + + fun saveThemeMode(context: Context, forceDark: Boolean?) { + context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE).edit { + putString("theme_mode", when (forceDark) { + true -> "dark" + false -> "light" + null -> "system" + }) + } + ThemeConfig.forceDarkMode = forceDark + } + + fun loadThemeMode(context: Context) { + val mode = context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE) + .getString("theme_mode", "system") + + ThemeConfig.forceDarkMode = when (mode) { + "dark" -> true + "light" -> false + else -> null + } + } + + fun saveThemeColors(context: Context, themeName: String) { + context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE).edit { + putString("theme_colors", themeName) + } + ThemeConfig.currentTheme = ThemeColors.fromName(themeName) + } + + fun loadThemeColors(context: Context) { + val themeName = context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE) + .getString("theme_colors", "default") ?: "default" + ThemeConfig.currentTheme = ThemeColors.fromName(themeName) + } + + fun saveDynamicColorState(context: Context, enabled: Boolean) { + context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE).edit { + putBoolean("use_dynamic_color", enabled) + } + ThemeConfig.useDynamicColor = enabled + } + + + fun loadDynamicColorState(context: Context) { + val enabled = context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE) + .getBoolean("use_dynamic_color", Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) + ThemeConfig.useDynamicColor = enabled + } +} + +object BackgroundManager { + private const val TAG = "BackgroundManager" + + fun saveAndApplyCustomBackground( + context: Context, + uri: Uri, + transformation: BackgroundTransformation? = null + ) { + try { + val finalUri = if (transformation != null) { + context.saveTransformedBackground(uri, transformation) + } else { + copyImageToInternalStorage(context, uri) + } + + saveBackgroundUri(context, finalUri) + ThemeConfig.customBackgroundUri = finalUri + CardConfig.updateBackground(true) + resetBackgroundState(context) + + } catch (e: Exception) { + Log.e(TAG, "保存背景失败: ${e.message}", e) + } + } + + fun clearCustomBackground(context: Context) { + saveBackgroundUri(context, null) + ThemeConfig.customBackgroundUri = null + CardConfig.updateBackground(false) + resetBackgroundState(context) + } + + fun loadCustomBackground(context: Context) { + val uriString = context.getSharedPreferences("theme_prefs", Context.MODE_PRIVATE) + .getString("custom_background", null) + + val newUri = uriString?.toUri() + val preventRefresh = context.getSharedPreferences("theme_prefs", Context.MODE_PRIVATE) + .getBoolean("prevent_background_refresh", false) + + ThemeConfig.preventBackgroundRefresh = preventRefresh + + if (!preventRefresh || ThemeConfig.customBackgroundUri?.toString() != newUri?.toString()) { + Log.d(TAG, "加载自定义背景: $uriString") + ThemeConfig.customBackgroundUri = newUri + ThemeConfig.backgroundImageLoaded = false + CardConfig.updateBackground(newUri != null) + } + } + + private fun saveBackgroundUri(context: Context, uri: Uri?) { + context.getSharedPreferences("theme_prefs", Context.MODE_PRIVATE).edit { + putString("custom_background", uri?.toString()) + putBoolean("prevent_background_refresh", false) + } + } + + private fun resetBackgroundState(context: Context) { + ThemeConfig.backgroundImageLoaded = false + ThemeConfig.preventBackgroundRefresh = false + context.getSharedPreferences("theme_prefs", Context.MODE_PRIVATE).edit { + putBoolean("prevent_background_refresh", false) + } + } + + private fun copyImageToInternalStorage(context: Context, uri: Uri): Uri? { + return try { + val inputStream = context.contentResolver.openInputStream(uri) ?: return null + val fileName = "custom_background_${System.currentTimeMillis()}.jpg" + val file = File(context.filesDir, fileName) + + FileOutputStream(file).use { outputStream -> + val buffer = ByteArray(8 * 1024) + var read: Int + while (inputStream.read(buffer).also { read = it } != -1) { + outputStream.write(buffer, 0, read) + } + outputStream.flush() + } + inputStream.close() + + Uri.fromFile(file) + } catch (e: Exception) { + Log.e(TAG, "复制图片失败: ${e.message}", e) + null + } + } +} + +@Composable +fun KernelSUTheme( + darkTheme: Boolean = when(ThemeConfig.forceDarkMode) { + true -> true + false -> false + null -> isSystemInDarkTheme() + }, + dynamicColor: Boolean = ThemeConfig.useDynamicColor, + content: @Composable () -> Unit +) { + val context = LocalContext.current + val systemIsDark = isSystemInDarkTheme() + + // 初始化主题 + ThemeInitializer(context = context, systemIsDark = systemIsDark) + + // 创建颜色方案 + val colorScheme = createColorScheme(context, darkTheme, dynamicColor) + + // 系统栏样式 + SystemBarController(darkTheme) + + MaterialTheme( + colorScheme = colorScheme, + typography = Typography + ) { + Box(modifier = Modifier.fillMaxSize()) { + // 背景层 + BackgroundLayer(darkTheme) + // 内容层 + Box(modifier = Modifier.fillMaxSize().zIndex(1f)) { + content() + } + } + } +} + +@Composable +private fun ThemeInitializer(context: Context, systemIsDark: Boolean) { + val themeChanged = ThemeConfig.detectThemeChange(systemIsDark) + val scope = rememberCoroutineScope() + + // 处理系统主题变化 + LaunchedEffect(systemIsDark, themeChanged) { + if (ThemeConfig.forceDarkMode == null && themeChanged) { + Log.d("ThemeSystem", "系统主题变化: $systemIsDark") + ThemeConfig.resetBackgroundState() + + if (!ThemeConfig.preventBackgroundRefresh) { + BackgroundManager.loadCustomBackground(context) + } + + CardConfig.apply { + load(context) + setThemeDefaults(systemIsDark) + save(context) + } + } + } + + // 初始加载配置 + LaunchedEffect(Unit) { + scope.launch { + ThemeManager.loadThemeMode(context) + ThemeManager.loadThemeColors(context) + ThemeManager.loadDynamicColorState(context) + CardConfig.load(context) + + if (!ThemeConfig.backgroundImageLoaded && !ThemeConfig.preventBackgroundRefresh) { + BackgroundManager.loadCustomBackground(context) + } + } + } +} + +@Composable +private fun BackgroundLayer(darkTheme: Boolean) { + val backgroundUri = rememberSaveable { mutableStateOf(ThemeConfig.customBackgroundUri) } + + LaunchedEffect(ThemeConfig.customBackgroundUri) { + backgroundUri.value = ThemeConfig.customBackgroundUri + } + + // 默认背景 + Box( + modifier = Modifier + .fillMaxSize() + .zIndex(-2f) + .background( + if (CardConfig.isCustomBackgroundEnabled) { + MaterialTheme.colorScheme.surfaceContainerLow + } else { + MaterialTheme.colorScheme.background + } + ) + ) + + // 自定义背景 + backgroundUri.value?.let { uri -> + CustomBackgroundLayer(uri = uri, darkTheme = darkTheme) + } +} + +@Composable +private fun CustomBackgroundLayer(uri: Uri, darkTheme: Boolean) { + val painter = rememberAsyncImagePainter( + model = uri, + onError = { error -> + Log.e("ThemeSystem", "背景加载失败: ${error.result.throwable.message}") + ThemeConfig.customBackgroundUri = null + }, + onSuccess = { + Log.d("ThemeSystem", "背景加载成功") + ThemeConfig.backgroundImageLoaded = true + ThemeConfig.isThemeChanging = false + } + ) + + val transition = updateTransition( + targetState = ThemeConfig.backgroundImageLoaded, + label = "backgroundTransition" + ) + + val alpha by transition.animateFloat( + label = "backgroundAlpha", + transitionSpec = { + spring( + dampingRatio = Spring.DampingRatioMediumBouncy, + stiffness = Spring.StiffnessMedium + ) + } + ) { loaded -> if (loaded) 1f else 0f } + + Box( + modifier = Modifier + .fillMaxSize() + .zIndex(-1f) + .alpha(alpha) + ) { + // 背景图片 + Box( + modifier = Modifier + .fillMaxSize() + .paint(painter = painter, contentScale = ContentScale.Crop) + .graphicsLayer { + this.alpha = (painter.state as? AsyncImagePainter.State.Success)?.let { 1f } ?: 0f + } + ) + + // 遮罩层 + BackgroundOverlay(darkTheme = darkTheme) + } +} + +@Composable +private fun BackgroundOverlay(darkTheme: Boolean) { + val dimFactor = CardConfig.cardDim + + // 主要遮罩层 + Box( + modifier = Modifier + .fillMaxSize() + .background( + if (darkTheme) { + Color.Black.copy(alpha = 0.3f + dimFactor * 0.4f) + } else { + Color.White.copy(alpha = 0.05f + dimFactor * 0.3f) + } + ) + ) + + // 边缘渐变遮罩 + Box( + modifier = Modifier + .fillMaxSize() + .background( + Brush.radialGradient( + colors = listOf( + Color.Transparent, + if (darkTheme) { + Color.Black.copy(alpha = 0.2f + dimFactor * 0.2f) + } else { + Color.Black.copy(alpha = 0.05f + dimFactor * 0.1f) + } + ), + radius = 1000f + ) + ) + ) +} + +@Composable +private fun createColorScheme( + context: Context, + darkTheme: Boolean, + dynamicColor: Boolean +): ColorScheme { + return when { + dynamicColor && Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -> { + if (darkTheme) createDynamicDarkColorScheme(context) + else createDynamicLightColorScheme(context) + } + darkTheme -> createDarkColorScheme() + else -> createLightColorScheme() + } +} + +@Composable +private fun SystemBarController(darkMode: Boolean) { + val context = LocalContext.current + val activity = context as ComponentActivity + + SideEffect { + activity.enableEdgeToEdge( + statusBarStyle = SystemBarStyle.auto( + Color.Transparent.toArgb(), + Color.Transparent.toArgb(), + ) { darkMode }, + navigationBarStyle = if (darkMode) { + SystemBarStyle.dark(Color.Transparent.toArgb()) + } else { + SystemBarStyle.light( + Color.Transparent.toArgb(), + Color.Transparent.toArgb() + ) + } + ) + } +} + +@RequiresApi(Build.VERSION_CODES.S) +@Composable +private fun createDynamicDarkColorScheme(context: Context): ColorScheme { + val scheme = dynamicDarkColorScheme(context) + return scheme.copy( + background = if (CardConfig.isCustomBackgroundEnabled) Color.Transparent else scheme.background, + surface = if (CardConfig.isCustomBackgroundEnabled) Color.Transparent else scheme.surface, + onBackground = scheme.onBackground, + onSurface = scheme.onSurface + ) +} + +@RequiresApi(Build.VERSION_CODES.S) +@Composable +private fun createDynamicLightColorScheme(context: Context): ColorScheme { + val scheme = dynamicLightColorScheme(context) + return scheme.copy( + background = if (CardConfig.isCustomBackgroundEnabled) Color.Transparent else scheme.background, + surface = if (CardConfig.isCustomBackgroundEnabled) Color.Transparent else scheme.surface, + onBackground = scheme.onBackground, + onSurface = scheme.onSurface + ) +} + +@Composable +private fun createDarkColorScheme() = darkColorScheme( + primary = ThemeConfig.currentTheme.primaryDark, + onPrimary = ThemeConfig.currentTheme.onPrimaryDark, + primaryContainer = ThemeConfig.currentTheme.primaryContainerDark, + onPrimaryContainer = ThemeConfig.currentTheme.onPrimaryContainerDark, + secondary = ThemeConfig.currentTheme.secondaryDark, + onSecondary = ThemeConfig.currentTheme.onSecondaryDark, + secondaryContainer = ThemeConfig.currentTheme.secondaryContainerDark, + onSecondaryContainer = ThemeConfig.currentTheme.onSecondaryContainerDark, + tertiary = ThemeConfig.currentTheme.tertiaryDark, + onTertiary = ThemeConfig.currentTheme.onTertiaryDark, + tertiaryContainer = ThemeConfig.currentTheme.tertiaryContainerDark, + onTertiaryContainer = ThemeConfig.currentTheme.onTertiaryContainerDark, + error = ThemeConfig.currentTheme.errorDark, + onError = ThemeConfig.currentTheme.onErrorDark, + errorContainer = ThemeConfig.currentTheme.errorContainerDark, + onErrorContainer = ThemeConfig.currentTheme.onErrorContainerDark, + background = if (CardConfig.isCustomBackgroundEnabled) Color.Transparent else ThemeConfig.currentTheme.backgroundDark, + onBackground = ThemeConfig.currentTheme.onBackgroundDark, + surface = if (CardConfig.isCustomBackgroundEnabled) Color.Transparent else ThemeConfig.currentTheme.surfaceDark, + onSurface = ThemeConfig.currentTheme.onSurfaceDark, + surfaceVariant = ThemeConfig.currentTheme.surfaceVariantDark, + onSurfaceVariant = ThemeConfig.currentTheme.onSurfaceVariantDark, + outline = ThemeConfig.currentTheme.outlineDark, + outlineVariant = ThemeConfig.currentTheme.outlineVariantDark, + scrim = ThemeConfig.currentTheme.scrimDark, + inverseSurface = ThemeConfig.currentTheme.inverseSurfaceDark, + inverseOnSurface = ThemeConfig.currentTheme.inverseOnSurfaceDark, + inversePrimary = ThemeConfig.currentTheme.inversePrimaryDark, + surfaceDim = ThemeConfig.currentTheme.surfaceDimDark, + surfaceBright = ThemeConfig.currentTheme.surfaceBrightDark, + surfaceContainerLowest = ThemeConfig.currentTheme.surfaceContainerLowestDark, + surfaceContainerLow = ThemeConfig.currentTheme.surfaceContainerLowDark, + surfaceContainer = ThemeConfig.currentTheme.surfaceContainerDark, + surfaceContainerHigh = ThemeConfig.currentTheme.surfaceContainerHighDark, + surfaceContainerHighest = ThemeConfig.currentTheme.surfaceContainerHighestDark, +) + +@Composable +private fun createLightColorScheme() = lightColorScheme( + primary = ThemeConfig.currentTheme.primaryLight, + onPrimary = ThemeConfig.currentTheme.onPrimaryLight, + primaryContainer = ThemeConfig.currentTheme.primaryContainerLight, + onPrimaryContainer = ThemeConfig.currentTheme.onPrimaryContainerLight, + secondary = ThemeConfig.currentTheme.secondaryLight, + onSecondary = ThemeConfig.currentTheme.onSecondaryLight, + secondaryContainer = ThemeConfig.currentTheme.secondaryContainerLight, + onSecondaryContainer = ThemeConfig.currentTheme.onSecondaryContainerLight, + tertiary = ThemeConfig.currentTheme.tertiaryLight, + onTertiary = ThemeConfig.currentTheme.onTertiaryLight, + tertiaryContainer = ThemeConfig.currentTheme.tertiaryContainerLight, + onTertiaryContainer = ThemeConfig.currentTheme.onTertiaryContainerLight, + error = ThemeConfig.currentTheme.errorLight, + onError = ThemeConfig.currentTheme.onErrorLight, + errorContainer = ThemeConfig.currentTheme.errorContainerLight, + onErrorContainer = ThemeConfig.currentTheme.onErrorContainerLight, + background = if (CardConfig.isCustomBackgroundEnabled) Color.Transparent else ThemeConfig.currentTheme.backgroundLight, + onBackground = ThemeConfig.currentTheme.onBackgroundLight, + surface = if (CardConfig.isCustomBackgroundEnabled) Color.Transparent else ThemeConfig.currentTheme.surfaceLight, + onSurface = ThemeConfig.currentTheme.onSurfaceLight, + surfaceVariant = ThemeConfig.currentTheme.surfaceVariantLight, + onSurfaceVariant = ThemeConfig.currentTheme.onSurfaceVariantLight, + outline = ThemeConfig.currentTheme.outlineLight, + outlineVariant = ThemeConfig.currentTheme.outlineVariantLight, + scrim = ThemeConfig.currentTheme.scrimLight, + inverseSurface = ThemeConfig.currentTheme.inverseSurfaceLight, + inverseOnSurface = ThemeConfig.currentTheme.inverseOnSurfaceLight, + inversePrimary = ThemeConfig.currentTheme.inversePrimaryLight, + surfaceDim = ThemeConfig.currentTheme.surfaceDimLight, + surfaceBright = ThemeConfig.currentTheme.surfaceBrightLight, + surfaceContainerLowest = ThemeConfig.currentTheme.surfaceContainerLowestLight, + surfaceContainerLow = ThemeConfig.currentTheme.surfaceContainerLowLight, + surfaceContainer = ThemeConfig.currentTheme.surfaceContainerLight, + surfaceContainerHigh = ThemeConfig.currentTheme.surfaceContainerHighLight, + surfaceContainerHighest = ThemeConfig.currentTheme.surfaceContainerHighestLight, +) + +// 向后兼容 +@OptIn(DelicateCoroutinesApi::class) +fun Context.saveAndApplyCustomBackground(uri: Uri, transformation: BackgroundTransformation? = null) { + kotlinx.coroutines.GlobalScope.launch { + BackgroundManager.saveAndApplyCustomBackground(this@saveAndApplyCustomBackground, uri, transformation) + } +} + +fun Context.saveCustomBackground(uri: Uri?) { + if (uri != null) { + saveAndApplyCustomBackground(uri) + } else { + BackgroundManager.clearCustomBackground(this) + } +} + +fun Context.saveThemeMode(forceDark: Boolean?) { + ThemeManager.saveThemeMode(this, forceDark) +} + + +fun Context.saveThemeColors(themeName: String) { + ThemeManager.saveThemeColors(this, themeName) +} + + +fun Context.saveDynamicColorState(enabled: Boolean) { + ThemeManager.saveDynamicColorState(this, enabled) +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/theme/Type.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/theme/Type.kt new file mode 100644 index 0000000..beefa2e --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/theme/Type.kt @@ -0,0 +1,108 @@ +package com.sukisu.ultra.ui.theme + +import androidx.compose.material3.Typography +import androidx.compose.ui.text.TextStyle +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.unit.sp + +val Typography = Typography( + // 大标题 + displayLarge = TextStyle( + fontWeight = FontWeight.Normal, + fontSize = 57.sp, + lineHeight = 64.sp, + letterSpacing = (-0.25).sp + ), + displayMedium = TextStyle( + fontWeight = FontWeight.Normal, + fontSize = 45.sp, + lineHeight = 52.sp, + letterSpacing = 0.sp + ), + displaySmall = TextStyle( + fontWeight = FontWeight.Normal, + fontSize = 36.sp, + lineHeight = 44.sp, + letterSpacing = 0.sp + ), + + // 标题 + headlineLarge = TextStyle( + fontWeight = FontWeight.SemiBold, + fontSize = 32.sp, + lineHeight = 40.sp, + letterSpacing = 0.sp + ), + headlineMedium = TextStyle( + fontWeight = FontWeight.SemiBold, + fontSize = 28.sp, + lineHeight = 36.sp, + letterSpacing = 0.sp + ), + headlineSmall = TextStyle( + fontWeight = FontWeight.SemiBold, + fontSize = 24.sp, + lineHeight = 32.sp, + letterSpacing = 0.sp + ), + + // 标题栏 + titleLarge = TextStyle( + fontWeight = FontWeight.SemiBold, + fontSize = 22.sp, + lineHeight = 28.sp, + letterSpacing = 0.sp + ), + titleMedium = TextStyle( + fontWeight = FontWeight.SemiBold, + fontSize = 16.sp, + lineHeight = 24.sp, + letterSpacing = 0.15.sp + ), + titleSmall = TextStyle( + fontWeight = FontWeight.Medium, + fontSize = 14.sp, + lineHeight = 20.sp, + letterSpacing = 0.1.sp + ), + + // 主体文字 + bodyLarge = TextStyle( + fontWeight = FontWeight.Normal, + fontSize = 16.sp, + lineHeight = 24.sp, + letterSpacing = 0.5.sp + ), + bodyMedium = TextStyle( + fontWeight = FontWeight.Normal, + fontSize = 14.sp, + lineHeight = 20.sp, + letterSpacing = 0.25.sp + ), + bodySmall = TextStyle( + fontWeight = FontWeight.Normal, + fontSize = 12.sp, + lineHeight = 16.sp, + letterSpacing = 0.4.sp + ), + + // 标签 + labelLarge = TextStyle( + fontWeight = FontWeight.Medium, + fontSize = 14.sp, + lineHeight = 20.sp, + letterSpacing = 0.1.sp + ), + labelMedium = TextStyle( + fontWeight = FontWeight.Medium, + fontSize = 12.sp, + lineHeight = 16.sp, + letterSpacing = 0.5.sp + ), + labelSmall = TextStyle( + fontWeight = FontWeight.Medium, + fontSize = 11.sp, + lineHeight = 16.sp, + letterSpacing = 0.5.sp + ) +) \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/theme/component/ImageEditorDialog.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/theme/component/ImageEditorDialog.kt new file mode 100644 index 0000000..803d1f0 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/theme/component/ImageEditorDialog.kt @@ -0,0 +1,411 @@ +package com.sukisu.ultra.ui.theme.component + +import android.net.Uri +import androidx.compose.animation.core.* +import androidx.compose.foundation.background +import androidx.compose.foundation.gestures.detectTransformGestures +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.shape.CircleShape +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.Check +import androidx.compose.material.icons.filled.Close +import androidx.compose.material.icons.filled.Fullscreen +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.alpha +import androidx.compose.ui.geometry.Size +import androidx.compose.ui.graphics.Brush +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.graphicsLayer +import androidx.compose.ui.input.pointer.pointerInput +import androidx.compose.ui.layout.ContentScale +import androidx.compose.ui.layout.onSizeChanged +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import androidx.compose.ui.window.Dialog +import androidx.compose.ui.window.DialogProperties +import coil.compose.AsyncImage +import coil.request.ImageRequest +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.theme.util.BackgroundTransformation +import com.sukisu.ultra.ui.theme.util.saveTransformedBackground +import kotlinx.coroutines.launch +import kotlin.math.abs +import kotlin.math.max + +@Composable +fun ImageEditorDialog( + imageUri: Uri, + onDismiss: () -> Unit, + onConfirm: (Uri) -> Unit +) { + // 图像变换状态 + val transformState = remember { ImageTransformState() } + val context = LocalContext.current + val scope = rememberCoroutineScope() + + // 尺寸状态 + var imageSize by remember { mutableStateOf(Size.Zero) } + var screenSize by remember { mutableStateOf(Size.Zero) } + + // 动画状态 + val animationSpec = spring( + dampingRatio = Spring.DampingRatioMediumBouncy, + stiffness = Spring.StiffnessMedium + ) + + val animatedScale by animateFloatAsState( + targetValue = transformState.scale, + animationSpec = animationSpec, + label = "ScaleAnimation" + ) + + val animatedOffsetX by animateFloatAsState( + targetValue = transformState.offsetX, + animationSpec = animationSpec, + label = "OffsetXAnimation" + ) + + val animatedOffsetY by animateFloatAsState( + targetValue = transformState.offsetY, + animationSpec = animationSpec, + label = "OffsetYAnimation" + ) + + // 工具函数 + val scaleToFullScreen = remember { + { + if (imageSize.height > 0 && screenSize.height > 0) { + val newScale = screenSize.height / imageSize.height + transformState.updateTransform(newScale, 0f, 0f) + } + } + } + + val saveImage: () -> Unit = remember { + { + scope.launch { + try { + val transformation = BackgroundTransformation( + transformState.scale, + transformState.offsetX, + transformState.offsetY + ) + val savedUri = context.saveTransformedBackground(imageUri, transformation) + savedUri?.let { onConfirm(it) } + } catch (_: Exception) { + } + } + } + } + + Dialog( + onDismissRequest = onDismiss, + properties = DialogProperties( + dismissOnBackPress = true, + dismissOnClickOutside = false, + usePlatformDefaultWidth = false + ) + ) { + Box( + modifier = Modifier + .fillMaxSize() + .background( + Brush.radialGradient( + colors = listOf( + Color.Black.copy(alpha = 0.9f), + Color.Black.copy(alpha = 0.95f) + ), + radius = 800f + ) + ) + .onSizeChanged { size -> + screenSize = Size(size.width.toFloat(), size.height.toFloat()) + } + ) { + // 图像显示区域 + ImageDisplayArea( + imageUri = imageUri, + animatedScale = animatedScale, + animatedOffsetX = animatedOffsetX, + animatedOffsetY = animatedOffsetY, + transformState = transformState, + onImageSizeChanged = { imageSize = it }, + modifier = Modifier.fillMaxSize() + ) + + // 顶部工具栏 + TopToolbar( + onDismiss = onDismiss, + onFullscreen = scaleToFullScreen, + onConfirm = saveImage, + modifier = Modifier.align(Alignment.TopCenter) + ) + + // 底部提示信息 + BottomHintCard( + modifier = Modifier.align(Alignment.BottomCenter) + ) + } + } +} + +/** + * 图像变换状态管理类 + */ +private class ImageTransformState { + var scale by mutableFloatStateOf(1f) + var offsetX by mutableFloatStateOf(0f) + var offsetY by mutableFloatStateOf(0f) + + private var lastScale = 1f + private var lastOffsetX = 0f + private var lastOffsetY = 0f + + fun updateTransform(newScale: Float, newOffsetX: Float, newOffsetY: Float) { + val scaleDiff = abs(newScale - lastScale) + val offsetXDiff = abs(newOffsetX - lastOffsetX) + val offsetYDiff = abs(newOffsetY - lastOffsetY) + + if (scaleDiff > 0.01f || offsetXDiff > 1f || offsetYDiff > 1f) { + scale = newScale + offsetX = newOffsetX + offsetY = newOffsetY + lastScale = newScale + lastOffsetX = newOffsetX + lastOffsetY = newOffsetY + } + } + + fun resetToLast() { + scale = lastScale + offsetX = lastOffsetX + offsetY = lastOffsetY + } +} + +/** + * 图像显示区域组件 + */ +@Composable +private fun ImageDisplayArea( + imageUri: Uri, + animatedScale: Float, + animatedOffsetX: Float, + animatedOffsetY: Float, + transformState: ImageTransformState, + onImageSizeChanged: (Size) -> Unit, + modifier: Modifier = Modifier +) { + val scope = rememberCoroutineScope() + + AsyncImage( + model = ImageRequest.Builder(LocalContext.current) + .data(imageUri) + .crossfade(true) + .build(), + contentDescription = stringResource(R.string.settings_custom_background), + contentScale = ContentScale.Fit, + modifier = modifier + .graphicsLayer( + scaleX = animatedScale, + scaleY = animatedScale, + translationX = animatedOffsetX, + translationY = animatedOffsetY + ) + .pointerInput(Unit) { + detectTransformGestures { _, pan, zoom, _ -> + scope.launch { + try { + val newScale = (transformState.scale * zoom).coerceIn(0.5f, 3f) + val maxOffsetX = max(0f, size.width * (newScale - 1) / 2) + val maxOffsetY = max(0f, size.height * (newScale - 1) / 2) + + val newOffsetX = if (maxOffsetX > 0) { + (transformState.offsetX + pan.x).coerceIn(-maxOffsetX, maxOffsetX) + } else 0f + + val newOffsetY = if (maxOffsetY > 0) { + (transformState.offsetY + pan.y).coerceIn(-maxOffsetY, maxOffsetY) + } else 0f + + transformState.updateTransform(newScale, newOffsetX, newOffsetY) + } catch (_: Exception) { + transformState.resetToLast() + } + } + } + } + .onSizeChanged { size -> + onImageSizeChanged(Size(size.width.toFloat(), size.height.toFloat())) + } + ) +} + +/** + * 顶部工具栏组件 + */ +@Composable +private fun TopToolbar( + onDismiss: () -> Unit, + onFullscreen: () -> Unit, + onConfirm: () -> Unit, + modifier: Modifier = Modifier +) { + Row( + modifier = modifier + .fillMaxWidth() + .padding(24.dp), + horizontalArrangement = Arrangement.SpaceBetween + ) { + // 关闭按钮 + ActionButton( + onClick = onDismiss, + icon = Icons.Default.Close, + contentDescription = stringResource(R.string.cancel), + backgroundColor = MaterialTheme.colorScheme.error.copy(alpha = 0.9f) + ) + + // 全屏按钮 + ActionButton( + onClick = onFullscreen, + icon = Icons.Default.Fullscreen, + contentDescription = stringResource(R.string.reprovision), + backgroundColor = MaterialTheme.colorScheme.primary.copy(alpha = 0.9f) + ) + + // 确认按钮 + ActionButton( + onClick = onConfirm, + icon = Icons.Default.Check, + contentDescription = stringResource(R.string.confirm), + backgroundColor = Color(0xFF4CAF50).copy(alpha = 0.9f) + ) + } +} + +/** + * 操作按钮组件 + */ +@Composable +private fun ActionButton( + onClick: () -> Unit, + icon: androidx.compose.ui.graphics.vector.ImageVector, + contentDescription: String, + backgroundColor: Color, + modifier: Modifier = Modifier +) { + var isPressed by remember { mutableStateOf(false) } + + val buttonScale by animateFloatAsState( + targetValue = if (isPressed) 0.85f else 1f, + animationSpec = spring( + dampingRatio = Spring.DampingRatioMediumBouncy, + stiffness = Spring.StiffnessHigh + ), + label = "ButtonScale" + ) + + val buttonAlpha by animateFloatAsState( + targetValue = if (isPressed) 0.8f else 1f, + animationSpec = tween(100), + label = "ButtonAlpha" + ) + + Surface( + onClick = { + isPressed = true + onClick() + }, + modifier = modifier + .size(64.dp) + .graphicsLayer( + scaleX = buttonScale, + scaleY = buttonScale, + alpha = buttonAlpha + ), + shape = CircleShape, + color = backgroundColor, + shadowElevation = 8.dp + ) { + Box( + contentAlignment = Alignment.Center, + modifier = Modifier.fillMaxSize() + ) { + Icon( + imageVector = icon, + contentDescription = contentDescription, + tint = Color.White, + modifier = Modifier.size(28.dp) + ) + } + } + + LaunchedEffect(isPressed) { + if (isPressed) { + kotlinx.coroutines.delay(150) + isPressed = false + } + } +} + +/** + * 底部提示卡片组件 + */ +@Composable +private fun BottomHintCard( + modifier: Modifier = Modifier +) { + var isVisible by remember { mutableStateOf(true) } + + val cardAlpha by animateFloatAsState( + targetValue = if (isVisible) 1f else 0f, + animationSpec = tween( + durationMillis = 500, + easing = EaseInOutCubic + ), + label = "HintAlpha" + ) + + val cardTranslationY by animateFloatAsState( + targetValue = if (isVisible) 0f else 100f, + animationSpec = tween( + durationMillis = 500, + easing = EaseInOutCubic + ), + label = "HintTranslation" + ) + + LaunchedEffect(Unit) { + kotlinx.coroutines.delay(4000) + isVisible = false + } + + Card( + modifier = modifier + .fillMaxWidth() + .padding(24.dp) + .alpha(cardAlpha) + .graphicsLayer { + translationY = cardTranslationY + }, + colors = CardDefaults.cardColors( + containerColor = Color.Black.copy(alpha = 0.85f) + ), + shape = RoundedCornerShape(16.dp), + elevation = CardDefaults.cardElevation(defaultElevation = 12.dp) + ) { + Text( + text = stringResource(id = R.string.image_editor_hint), + color = Color.White, + style = MaterialTheme.typography.bodyMedium, + modifier = Modifier + .padding(20.dp) + .fillMaxWidth() + ) + } +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/theme/util/BackgroundUtils.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/theme/util/BackgroundUtils.kt new file mode 100644 index 0000000..daf089b --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/theme/util/BackgroundUtils.kt @@ -0,0 +1,110 @@ +package com.sukisu.ultra.ui.theme.util + +import android.content.ContentResolver +import android.content.Context +import android.graphics.Bitmap +import android.graphics.BitmapFactory +import android.graphics.Canvas +import android.graphics.Matrix +import android.net.Uri +import android.util.Log +import androidx.core.graphics.createBitmap +import java.io.File +import java.io.FileOutputStream +import java.io.InputStream + +data class BackgroundTransformation( + val scale: Float = 1f, + val offsetX: Float = 0f, + val offsetY: Float = 0f +) + +fun Context.getImageBitmap(uri: Uri): Bitmap? { + return try { + val contentResolver: ContentResolver = contentResolver + val inputStream: InputStream = contentResolver.openInputStream(uri) ?: return null + val bitmap = BitmapFactory.decodeStream(inputStream) + inputStream.close() + bitmap + } catch (e: Exception) { + Log.e("BackgroundUtils", "Failed to get image bitmap: ${e.message}") + null + } +} + +fun Context.applyTransformationToBitmap(bitmap: Bitmap, transformation: BackgroundTransformation): Bitmap { + val width = bitmap.width + val height = bitmap.height + + // 创建与屏幕比例相同的目标位图 + val displayMetrics = resources.displayMetrics + val screenWidth = displayMetrics.widthPixels + val screenHeight = displayMetrics.heightPixels + val screenRatio = screenHeight.toFloat() / screenWidth.toFloat() + + // 计算目标宽高 + val targetWidth: Int + val targetHeight: Int + if (width.toFloat() / height.toFloat() > screenRatio) { + targetHeight = height + targetWidth = (height / screenRatio).toInt() + } else { + targetWidth = width + targetHeight = (width * screenRatio).toInt() + } + + // 创建与目标相同大小的位图 + val scaledBitmap = createBitmap(targetWidth, targetHeight) + val canvas = Canvas(scaledBitmap) + + val matrix = Matrix() + + // 确保缩放值有效 + val safeScale = maxOf(0.1f, transformation.scale) + matrix.postScale(safeScale, safeScale) + + // 计算偏移量,确保不会出现负最大值的问题 + val widthDiff = (bitmap.width * safeScale - targetWidth) + val heightDiff = (bitmap.height * safeScale - targetHeight) + + // 安全计算偏移量边界 + val maxOffsetX = maxOf(0f, widthDiff / 2) + val maxOffsetY = maxOf(0f, heightDiff / 2) + + // 限制偏移范围 + val safeOffsetX = if (maxOffsetX > 0) + transformation.offsetX.coerceIn(-maxOffsetX, maxOffsetX) else 0f + val safeOffsetY = if (maxOffsetY > 0) + transformation.offsetY.coerceIn(-maxOffsetY, maxOffsetY) else 0f + + // 应用偏移量到矩阵 + val translationX = -widthDiff / 2 + safeOffsetX + val translationY = -heightDiff / 2 + safeOffsetY + + matrix.postTranslate(translationX, translationY) + + // 将原始位图绘制到新位图上 + canvas.drawBitmap(bitmap, matrix, null) + + return scaledBitmap +} + +fun Context.saveTransformedBackground(uri: Uri, transformation: BackgroundTransformation): Uri? { + try { + val bitmap = getImageBitmap(uri) ?: return null + val transformedBitmap = applyTransformationToBitmap(bitmap, transformation) + + val fileName = "custom_background_transformed.jpg" + val file = File(filesDir, fileName) + val outputStream = FileOutputStream(file) + + transformedBitmap.compress(Bitmap.CompressFormat.JPEG, 90, outputStream) + outputStream.flush() + outputStream.close() + + return Uri.fromFile(file) + } catch (e: Exception) { + Log.e("BackgroundUtils", "Failed to save transformed image: ${e.message}", e) + return null + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/util/CompositionProvider.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/util/CompositionProvider.kt new file mode 100644 index 0000000..1ba64d7 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/util/CompositionProvider.kt @@ -0,0 +1,8 @@ +package com.sukisu.ultra.ui.util + +import androidx.compose.material3.SnackbarHostState +import androidx.compose.runtime.compositionLocalOf + +val LocalSnackbarHost = compositionLocalOf { + error("CompositionLocal LocalSnackbarController not present") +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/util/Downloader.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/util/Downloader.kt new file mode 100644 index 0000000..035137f --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/util/Downloader.kt @@ -0,0 +1,319 @@ +package com.sukisu.ultra.ui.util + +import android.annotation.SuppressLint +import android.app.DownloadManager +import android.content.BroadcastReceiver +import android.content.Context +import android.content.Intent +import android.content.IntentFilter +import android.net.Uri +import android.os.Build +import android.os.Environment +import android.os.Handler +import android.os.Looper +import android.util.Log +import androidx.compose.runtime.Composable +import androidx.compose.runtime.DisposableEffect +import androidx.core.content.ContextCompat +import androidx.core.net.toUri +import com.sukisu.ultra.ui.util.module.LatestVersionInfo +import java.io.File +import java.util.concurrent.TimeUnit + +private const val TAG = "DownloadUtil" +private val CUSTOM_USER_AGENT = "SukiSU-Ultra/2.0 (Linux; Android ${Build.VERSION.RELEASE}; ${Build.MODEL})" +private const val MAX_RETRY_COUNT = 3 +private const val RETRY_DELAY_MS = 3000L + +/** + * @author weishu + * @date 2023/6/22. + */ +@SuppressLint("Range") +fun download( + context: Context, + url: String, + fileName: String, + description: String, + onDownloaded: (Uri) -> Unit = {}, + onDownloading: () -> Unit = {}, + onError: (String) -> Unit = {} +) { + Log.d(TAG, "Start Download: $url") + val downloadManager = context.getSystemService(Context.DOWNLOAD_SERVICE) as DownloadManager + + val query = DownloadManager.Query() + query.setFilterByStatus(DownloadManager.STATUS_RUNNING or DownloadManager.STATUS_PAUSED or DownloadManager.STATUS_PENDING) + downloadManager.query(query).use { cursor -> + while (cursor.moveToNext()) { + val uri = cursor.getString(cursor.getColumnIndex(DownloadManager.COLUMN_URI)) + val localUri = cursor.getString(cursor.getColumnIndex(DownloadManager.COLUMN_LOCAL_URI)) + val status = cursor.getInt(cursor.getColumnIndex(DownloadManager.COLUMN_STATUS)) + val columnTitle = cursor.getString(cursor.getColumnIndex(DownloadManager.COLUMN_TITLE)) + if (url == uri || fileName == columnTitle) { + if (status == DownloadManager.STATUS_RUNNING || status == DownloadManager.STATUS_PENDING) { + onDownloading() + return + } else if (status == DownloadManager.STATUS_SUCCESSFUL) { + onDownloaded(localUri.toUri()) + return + } + } + } + } + val downloadFile = File( + Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS), + fileName + ) + if (downloadFile.exists()) { + downloadFile.delete() + } + + val request = DownloadManager.Request(url.toUri()) + .setDestinationInExternalPublicDir( + Environment.DIRECTORY_DOWNLOADS, + fileName + ) + .setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED) + .setMimeType("application/zip") + .setTitle(fileName) + .setDescription(description) + .addRequestHeader("User-Agent", CUSTOM_USER_AGENT) + .setAllowedOverMetered(true) + .setAllowedOverRoaming(true) + .setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI or DownloadManager.Request.NETWORK_MOBILE) + + try { + val downloadId = downloadManager.enqueue(request) + Log.d(TAG, "Successful launch of the download,ID: $downloadId") + monitorDownload(context, downloadManager, downloadId, url, fileName, description, onDownloaded, onDownloading, onError) + } catch (e: Exception) { + Log.e(TAG, "Download startup failure", e) + onError("Download startup failure: ${e.message}") + } +} + +private fun monitorDownload( + context: Context, + downloadManager: DownloadManager, + downloadId: Long, + url: String, + fileName: String, + description: String, + onDownloaded: (Uri) -> Unit, + onDownloading: () -> Unit, + onError: (String) -> Unit, + retryCount: Int = 0 +) { + val handler = Handler(Looper.getMainLooper()) + val query = DownloadManager.Query().setFilterById(downloadId) + + var lastProgress = -1 + var stuckCounter = 0 + + val runnable = object : Runnable { + override fun run() { + downloadManager.query(query).use { cursor -> + if (cursor != null && cursor.moveToFirst()) { + @SuppressLint("Range") + val status = cursor.getInt(cursor.getColumnIndex(DownloadManager.COLUMN_STATUS)) + + when (status) { + DownloadManager.STATUS_SUCCESSFUL -> { + @SuppressLint("Range") + val localUri = cursor.getString(cursor.getColumnIndex(DownloadManager.COLUMN_LOCAL_URI)) + Log.d(TAG, "Download Successfully: $localUri") + onDownloaded(localUri.toUri()) + return + } + DownloadManager.STATUS_FAILED -> { + @SuppressLint("Range") + val reason = cursor.getInt(cursor.getColumnIndex(DownloadManager.COLUMN_REASON)) + Log.d(TAG, "Download failed with reason code: $reason") + + if (retryCount < MAX_RETRY_COUNT) { + Log.d(TAG, "Attempts to re download, number of retries: ${retryCount + 1}") + handler.postDelayed({ + downloadManager.remove(downloadId) + download(context, url, fileName, description, onDownloaded, onDownloading, onError) + }, RETRY_DELAY_MS) + } else { + onError("Download failed, please check network connection or storage space") + } + return + } + DownloadManager.STATUS_RUNNING, DownloadManager.STATUS_PENDING, DownloadManager.STATUS_PAUSED -> { + @SuppressLint("Range") + val totalBytes = cursor.getLong(cursor.getColumnIndex(DownloadManager.COLUMN_TOTAL_SIZE_BYTES)) + @SuppressLint("Range") + val downloadedBytes = cursor.getLong(cursor.getColumnIndex(DownloadManager.COLUMN_BYTES_DOWNLOADED_SO_FAR)) + + if (totalBytes > 0) { + val progress = (downloadedBytes * 100 / totalBytes).toInt() + if (progress == lastProgress) { + stuckCounter++ + if (stuckCounter > 30) { + if (retryCount < MAX_RETRY_COUNT) { + Log.d(TAG, "Download stalled and restarted") + downloadManager.remove(downloadId) + download(context, url, fileName, description, onDownloaded, onDownloading, onError) + return + } + } + } else { + lastProgress = progress + stuckCounter = 0 + Log.d(TAG, "Download progress: $progress% ($downloadedBytes/$totalBytes)") + } + } + } + } + } + } + handler.postDelayed(this, 1000) + } + } + handler.post(runnable) + + val receiver = object : BroadcastReceiver() { + override fun onReceive(context: Context?, intent: Intent?) { + val id = intent?.getLongExtra(DownloadManager.EXTRA_DOWNLOAD_ID, -1) ?: -1 + if (id == downloadId) { + handler.removeCallbacks(runnable) + + val query = DownloadManager.Query().setFilterById(downloadId) + downloadManager.query(query).use { cursor -> + if (cursor != null && cursor.moveToFirst()) { + @SuppressLint("Range") + val status = cursor.getInt(cursor.getColumnIndex(DownloadManager.COLUMN_STATUS)) + + if (status == DownloadManager.STATUS_SUCCESSFUL) { + @SuppressLint("Range") + val localUri = cursor.getString(cursor.getColumnIndex(DownloadManager.COLUMN_LOCAL_URI)) + onDownloaded(localUri.toUri()) + } else { + if (retryCount < MAX_RETRY_COUNT) { + download(context!!, url, fileName, description, onDownloaded, onDownloading, onError) + } else { + onError("Download failed, please try again later") + } + } + } + } + + context?.unregisterReceiver(this) + } + } + } + + ContextCompat.registerReceiver( + context, + receiver, + IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE), + ContextCompat.RECEIVER_EXPORTED + ) +} + +fun checkNewVersion(): LatestVersionInfo { + val url = "https://api.github.com/repos/ShirkNeko/SukiSU-Ultra/releases/latest" + val defaultValue = LatestVersionInfo() + return runCatching { + val client = okhttp3.OkHttpClient.Builder() + .connectTimeout(15, TimeUnit.SECONDS) + .readTimeout(30, TimeUnit.SECONDS) + .writeTimeout(15, TimeUnit.SECONDS) + .build() + + val request = okhttp3.Request.Builder() + .url(url) + .header("User-Agent", CUSTOM_USER_AGENT) + .build() + + client.newCall(request).execute().use { response -> + if (!response.isSuccessful) { + Log.d("CheckUpdate", "Network request failed: ${response.message}") + return defaultValue + } + val body = response.body?.string() + if (body == null) { + Log.d("CheckUpdate", "Return data is null") + return defaultValue + } + Log.d("CheckUpdate", "Return data: $body") + val json = org.json.JSONObject(body) + + // 直接从 tag_name 提取版本号(如 v1.1) + val tagName = json.optString("tag_name", "") + val versionName = tagName.removePrefix("v") // 移除前缀 "v" + + // 从 body 字段获取更新日志(保留换行符) + val changelog = json.optString("body") + .replace("\\r\\n", "\n") // 转换换行符 + + val assets = json.getJSONArray("assets") + for (i in 0 until assets.length()) { + val asset = assets.getJSONObject(i) + val name = asset.getString("name") + if (!name.endsWith(".apk")) continue + + val regex = Regex("SukiSU.*_(\\d+)-release") + val matchResult = regex.find(name) + if (matchResult == null) { + Log.d("CheckUpdate", "No matches found: $name, skip over") + continue + } + val versionCode = matchResult.groupValues[1].toInt() + + val downloadUrl = asset.getString("browser_download_url") + return LatestVersionInfo( + versionCode, + downloadUrl, + changelog, + versionName + ) + } + Log.d("CheckUpdate", "No valid APK resource found, return default value") + defaultValue + } + }.getOrDefault(defaultValue) +} + +@Composable +fun DownloadListener(context: Context, onDownloaded: (Uri) -> Unit) { + DisposableEffect(context) { + val receiver = object : BroadcastReceiver() { + @SuppressLint("Range") + override fun onReceive(context: Context?, intent: Intent?) { + if (intent?.action == DownloadManager.ACTION_DOWNLOAD_COMPLETE) { + val id = intent.getLongExtra( + DownloadManager.EXTRA_DOWNLOAD_ID, -1 + ) + val query = DownloadManager.Query().setFilterById(id) + val downloadManager = + context?.getSystemService(Context.DOWNLOAD_SERVICE) as DownloadManager + val cursor = downloadManager.query(query) + if (cursor.moveToFirst()) { + val status = cursor.getInt( + cursor.getColumnIndex(DownloadManager.COLUMN_STATUS) + ) + if (status == DownloadManager.STATUS_SUCCESSFUL) { + val uri = cursor.getString( + cursor.getColumnIndex(DownloadManager.COLUMN_LOCAL_URI) + ) + onDownloaded(uri.toUri()) + } + } + } + } + } + ContextCompat.registerReceiver( + context, + receiver, + IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE), + ContextCompat.RECEIVER_EXPORTED + ) + onDispose { + context.unregisterReceiver(receiver) + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/util/HanziToPinyin.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/util/HanziToPinyin.kt new file mode 100644 index 0000000..edfbdf5 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/util/HanziToPinyin.kt @@ -0,0 +1,522 @@ +package com.sukisu.ultra.ui.util + +/* + * Copyright (C) 2009 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import android.text.TextUtils +import android.util.Log +import java.text.Collator +import java.util.Locale + +class HanziToPinyin private constructor(val hasChinaCollator: Boolean) { + + class Token( + var type: Int = 0, + var source: String = "", + var target: String = "" + ) { + companion object { + const val LATIN = 1 + const val PINYIN = 2 + const val UNKNOWN = 3 + } + } + + private fun getToken(character: Char): Token { + val token = Token() + val letter = character.toString() + token.source = letter + var offset = -1 + var cmp: Int + + if (character < 256.toChar()) { + token.type = Token.LATIN + token.target = letter + return token + } else { + cmp = COLLATOR.compare(letter, FIRST_PINYIN_UNIHAN) + if (cmp < 0) { + token.type = Token.UNKNOWN + token.target = letter + return token + } else if (cmp == 0) { + token.type = Token.PINYIN + offset = 0 + } else { + cmp = COLLATOR.compare(letter, LAST_PINYIN_UNIHAN) + if (cmp > 0) { + token.type = Token.UNKNOWN + token.target = letter + return token + } else if (cmp == 0) { + token.type = Token.PINYIN + offset = UNIHANS.size - 1 + } + } + } + + token.type = Token.PINYIN + if (offset < 0) { + var begin = 0 + var end = UNIHANS.size - 1 + while (begin <= end) { + offset = (begin + end) / 2 + val unihan = UNIHANS[offset].toString() + cmp = COLLATOR.compare(letter, unihan) + when { + cmp == 0 -> break + cmp > 0 -> begin = offset + 1 + else -> end = offset - 1 + } + } + } + if (cmp < 0) { + offset-- + } + + val pinyin = StringBuilder() + for (j in PINYINS[offset].indices) { + if (PINYINS[offset][j] == 0.toByte()) break + pinyin.append(PINYINS[offset][j].toInt().toChar()) + } + token.target = pinyin.toString() + if (TextUtils.isEmpty(token.target)) { + token.type = Token.UNKNOWN + token.target = token.source + } + return token + } + + fun get(input: String?): ArrayList { + val tokens = ArrayList() + if (!hasChinaCollator || TextUtils.isEmpty(input)) { + return tokens + } + + val inputLength = input!!.length + val sb = StringBuilder() + var tokenType = Token.LATIN + + for (i in 0 until inputLength) { + val character = input[i] + when { + character == ' ' -> { + if (sb.isNotEmpty()) { + addToken(sb, tokens, tokenType) + } + } + character < 256.toChar() -> { + if (tokenType != Token.LATIN && sb.isNotEmpty()) { + addToken(sb, tokens, tokenType) + } + tokenType = Token.LATIN + sb.append(character) + } + else -> { + val t = getToken(character) + if (t.type == Token.PINYIN) { + if (sb.isNotEmpty()) { + addToken(sb, tokens, tokenType) + } + tokens.add(t) + tokenType = Token.PINYIN + } else { + if (tokenType != t.type && sb.isNotEmpty()) { + addToken(sb, tokens, tokenType) + } + tokenType = t.type + sb.append(character) + } + } + } + } + if (sb.isNotEmpty()) { + addToken(sb, tokens, tokenType) + } + return tokens + } + + private fun addToken(sb: StringBuilder, tokens: ArrayList, tokenType: Int) { + val str = sb.toString() + tokens.add(Token(tokenType, str, str)) + sb.setLength(0) + } + + fun toPinyinString(string: String?): String? { + if (string == null) { + return null + } + val sb = StringBuilder() + val tokens = get(string) + for (token in tokens) { + sb.append(token.target) + } + return sb.toString().lowercase() + } + + companion object { + private const val TAG = "HanziToPinyin" + private const val DEBUG = false + + val UNIHANS = charArrayOf( + '阿', '哎', '安', '肮', '凹', '八', + '挀', '扳', '邦', '勹', '陂', '奔', + '伻', '屄', '边', '灬', '憋', '汃', + '冫', '癶', '峬', '嚓', '偲', '参', + '仓', '撡', '冊', '嵾', '曽', '曾', + '層', '叉', '芆', '辿', '伥', '抄', + '车', '抻', '沈', '沉', '阷', '吃', + '充', '抽', '出', '欻', '揣', '巛', + '刅', '吹', '旾', '逴', '呲', '匆', + '凑', '粗', '汆', '崔', '邨', '搓', + '咑', '呆', '丹', '当', '刀', '嘚', + '扥', '灯', '氐', '嗲', '甸', '刁', + '爹', '丁', '丟', '东', '吺', '厾', + '耑', '襨', '吨', '多', '妸', '诶', + '奀', '鞥', '儿', '发', '帆', '匚', + '飞', '分', '丰', '覅', '仏', '紑', + '伕', '旮', '侅', '甘', '冈', '皋', + '戈', '给', '根', '刯', '工', '勾', + '估', '瓜', '乖', '关', '光', '归', + '丨', '呙', '哈', '咍', '佄', '夯', + '茠', '诃', '黒', '拫', '亨', '噷', + '叿', '齁', '乯', '花', '怀', '犿', + '巟', '灰', '昏', '吙', '丌', '加', + '戋', '江', '艽', '阶', '巾', '坕', + '冂', '丩', '凥', '姢', '噘', '军', + '咔', '开', '刊', '忼', '尻', '匼', + '肎', '劥', '空', '抠', '扝', '夸', + '蒯', '宽', '匡', '亏', '坤', '扩', + '垃', '来', '兰', '啷', '捞', '肋', + '勒', '崚', '刕', '俩', '奁', '良', + '撩', '列', '拎', '刢', '溜', '囖', + '龙', '瞜', '噜', '娈', '畧', '抡', + '罗', '呣', '妈', '埋', '嫚', '牤', + '猫', '么', '呅', '门', '甿', '咪', + '宀', '喵', '乜', '民', '名', '谬', + '摸', '哞', '毪', '嗯', '拏', '腉', + '囡', '囔', '孬', '疒', '娞', '恁', + '能', '妮', '拈', '嬢', '鸟', '捏', + '囜', '宁', '妞', '农', '羺', '奴', + '奻', '疟', '黁', '郍', '喔', '讴', + '妑', '拍', '眅', '乓', '抛', '呸', + '喷', '匉', '丕', '囨', '剽', '氕', + '姘', '乒', '钋', '剖', '仆', '七', + '掐', '千', '呛', '悄', '癿', '亲', + '狅', '芎', '丘', '区', '峑', '缺', + '夋', '呥', '穣', '娆', '惹', '人', + '扔', '日', '茸', '厹', '邚', '挼', + '堧', '婑', '瞤', '捼', '仨', '毢', + '三', '桒', '掻', '閪', '森', '僧', + '杀', '筛', '山', '伤', '弰', '奢', + '申', '莘', '敒', '升', '尸', '収', + '书', '刷', '衰', '闩', '双', '谁', + '吮', '说', '厶', '忪', '捜', '苏', + '狻', '夊', '孙', '唆', '他', '囼', + '坍', '汤', '夲', '忑', '熥', '剔', + '天', '旫', '帖', '厅', '囲', '偷', + '凸', '湍', '推', '吞', '乇', '穵', + '歪', '弯', '尣', '危', '昷', '翁', + '挝', '乌', '夕', '虲', '仚', '乡', + '灱', '些', '心', '星', '凶', '休', + '吁', '吅', '削', '坃', '丫', '恹', + '央', '幺', '倻', '一', '囙', '应', + '哟', '佣', '优', '扜', '囦', '曰', + '晕', '筠', '筼', '帀', '災', '兂', + '匨', '傮', '则', '贼', '怎', '増', + '扎', '捚', '沾', '张', '长', '長', + '佋', '蜇', '贞', '争', '之', '峙', + '庢', '中', '州', '朱', '抓', '拽', + '专', '妆', '隹', '宒', '卓', '乲', + '宗', '邹', '租', '钻', '厜', '尊', + '昨', '兙', '鿃', '鿄' + ) + + val PINYINS = arrayOf( + byteArrayOf(65, 0, 0, 0, 0, 0), byteArrayOf(65, 73, 0, 0, 0, 0), + byteArrayOf(65, 78, 0, 0, 0, 0), byteArrayOf(65, 78, 71, 0, 0, 0), + byteArrayOf(65, 79, 0, 0, 0, 0), byteArrayOf(66, 65, 0, 0, 0, 0), + byteArrayOf(66, 65, 73, 0, 0, 0), byteArrayOf(66, 65, 78, 0, 0, 0), + byteArrayOf(66, 65, 78, 71, 0, 0), byteArrayOf(66, 65, 79, 0, 0, 0), + byteArrayOf(66, 69, 73, 0, 0, 0), byteArrayOf(66, 69, 78, 0, 0, 0), + byteArrayOf(66, 69, 78, 71, 0, 0), byteArrayOf(66, 73, 0, 0, 0, 0), + byteArrayOf(66, 73, 65, 78, 0, 0), byteArrayOf(66, 73, 65, 79, 0, 0), + byteArrayOf(66, 73, 69, 0, 0, 0), byteArrayOf(66, 73, 78, 0, 0, 0), + byteArrayOf(66, 73, 78, 71, 0, 0), byteArrayOf(66, 79, 0, 0, 0, 0), + byteArrayOf(66, 85, 0, 0, 0, 0), byteArrayOf(67, 65, 0, 0, 0, 0), + byteArrayOf(67, 65, 73, 0, 0, 0), byteArrayOf(67, 65, 78, 0, 0, 0), + byteArrayOf(67, 65, 78, 71, 0, 0), byteArrayOf(67, 65, 79, 0, 0, 0), + byteArrayOf(67, 69, 0, 0, 0, 0), byteArrayOf(67, 69, 78, 0, 0, 0), + byteArrayOf(67, 69, 78, 71, 0, 0), byteArrayOf(90, 69, 78, 71, 0, 0), + byteArrayOf(67, 69, 78, 71, 0, 0), byteArrayOf(67, 72, 65, 0, 0, 0), + byteArrayOf(67, 72, 65, 73, 0, 0), byteArrayOf(67, 72, 65, 78, 0, 0), + byteArrayOf(67, 72, 65, 78, 71, 0), byteArrayOf(67, 72, 65, 79, 0, 0), + byteArrayOf(67, 72, 69, 0, 0, 0), byteArrayOf(67, 72, 69, 78, 0, 0), + byteArrayOf(83, 72, 69, 78, 0, 0), byteArrayOf(67, 72, 69, 78, 0, 0), + byteArrayOf(67, 72, 69, 78, 71, 0), byteArrayOf(67, 72, 73, 0, 0, 0), + byteArrayOf(67, 72, 79, 78, 71, 0), byteArrayOf(67, 72, 79, 85, 0, 0), + byteArrayOf(67, 72, 85, 0, 0, 0), byteArrayOf(67, 72, 85, 65, 0, 0), + byteArrayOf(67, 72, 85, 65, 73, 0), byteArrayOf(67, 72, 85, 65, 78, 0), + byteArrayOf(67, 72, 85, 65, 78, 71), byteArrayOf(67, 72, 85, 73, 0, 0), + byteArrayOf(67, 72, 85, 78, 0, 0), byteArrayOf(67, 72, 85, 79, 0, 0), + byteArrayOf(67, 73, 0, 0, 0, 0), byteArrayOf(67, 79, 78, 71, 0, 0), + byteArrayOf(67, 79, 85, 0, 0, 0), byteArrayOf(67, 85, 0, 0, 0, 0), + byteArrayOf(67, 85, 65, 78, 0, 0), byteArrayOf(67, 85, 73, 0, 0, 0), + byteArrayOf(67, 85, 78, 0, 0, 0), byteArrayOf(67, 85, 79, 0, 0, 0), + byteArrayOf(68, 65, 0, 0, 0, 0), byteArrayOf(68, 65, 73, 0, 0, 0), + byteArrayOf(68, 65, 78, 0, 0, 0), byteArrayOf(68, 65, 78, 71, 0, 0), + byteArrayOf(68, 65, 79, 0, 0, 0), byteArrayOf(68, 69, 0, 0, 0, 0), + byteArrayOf(68, 69, 78, 0, 0, 0), byteArrayOf(68, 69, 78, 71, 0, 0), + byteArrayOf(68, 73, 0, 0, 0, 0), byteArrayOf(68, 73, 65, 0, 0, 0), + byteArrayOf(68, 73, 65, 78, 0, 0), byteArrayOf(68, 73, 65, 79, 0, 0), + byteArrayOf(68, 73, 69, 0, 0, 0), byteArrayOf(68, 73, 78, 71, 0, 0), + byteArrayOf(68, 73, 85, 0, 0, 0), byteArrayOf(68, 79, 78, 71, 0, 0), + byteArrayOf(68, 79, 85, 0, 0, 0), byteArrayOf(68, 85, 0, 0, 0, 0), + byteArrayOf(68, 85, 65, 78, 0, 0), byteArrayOf(68, 85, 73, 0, 0, 0), + byteArrayOf(68, 85, 78, 0, 0, 0), byteArrayOf(68, 85, 79, 0, 0, 0), + byteArrayOf(69, 0, 0, 0, 0, 0), byteArrayOf(69, 73, 0, 0, 0, 0), + byteArrayOf(69, 78, 0, 0, 0, 0), byteArrayOf(69, 78, 71, 0, 0, 0), + byteArrayOf(69, 82, 0, 0, 0, 0), byteArrayOf(70, 65, 0, 0, 0, 0), + byteArrayOf(70, 65, 78, 0, 0, 0), byteArrayOf(70, 65, 78, 71, 0, 0), + byteArrayOf(70, 69, 73, 0, 0, 0), byteArrayOf(70, 69, 78, 0, 0, 0), + byteArrayOf(70, 69, 78, 71, 0, 0), byteArrayOf(70, 73, 65, 79, 0, 0), + byteArrayOf(70, 79, 0, 0, 0, 0), byteArrayOf(70, 79, 85, 0, 0, 0), + byteArrayOf(70, 85, 0, 0, 0, 0), byteArrayOf(71, 65, 0, 0, 0, 0), + byteArrayOf(71, 65, 73, 0, 0, 0), byteArrayOf(71, 65, 78, 0, 0, 0), + byteArrayOf(71, 65, 78, 71, 0, 0), byteArrayOf(71, 65, 79, 0, 0, 0), + byteArrayOf(71, 69, 0, 0, 0, 0), byteArrayOf(71, 69, 73, 0, 0, 0), + byteArrayOf(71, 69, 78, 0, 0, 0), byteArrayOf(71, 69, 78, 71, 0, 0), + byteArrayOf(71, 79, 78, 71, 0, 0), byteArrayOf(71, 79, 85, 0, 0, 0), + byteArrayOf(71, 85, 0, 0, 0, 0), byteArrayOf(71, 85, 65, 0, 0, 0), + byteArrayOf(71, 85, 65, 73, 0, 0), byteArrayOf(71, 85, 65, 78, 0, 0), + byteArrayOf(71, 85, 65, 78, 71, 0), byteArrayOf(71, 85, 73, 0, 0, 0), + byteArrayOf(71, 85, 78, 0, 0, 0), byteArrayOf(71, 85, 79, 0, 0, 0), + byteArrayOf(72, 65, 0, 0, 0, 0), byteArrayOf(72, 65, 73, 0, 0, 0), + byteArrayOf(72, 65, 78, 0, 0, 0), byteArrayOf(72, 65, 78, 71, 0, 0), + byteArrayOf(72, 65, 79, 0, 0, 0), byteArrayOf(72, 69, 0, 0, 0, 0), + byteArrayOf(72, 69, 73, 0, 0, 0), byteArrayOf(72, 69, 78, 0, 0, 0), + byteArrayOf(72, 69, 78, 71, 0, 0), byteArrayOf(72, 77, 0, 0, 0, 0), + byteArrayOf(72, 79, 78, 71, 0, 0), byteArrayOf(72, 79, 85, 0, 0, 0), + byteArrayOf(72, 85, 0, 0, 0, 0), byteArrayOf(72, 85, 65, 0, 0, 0), + byteArrayOf(72, 85, 65, 73, 0, 0), byteArrayOf(72, 85, 65, 78, 0, 0), + byteArrayOf(72, 85, 65, 78, 71, 0), byteArrayOf(72, 85, 73, 0, 0, 0), + byteArrayOf(72, 85, 78, 0, 0, 0), byteArrayOf(72, 85, 79, 0, 0, 0), + byteArrayOf(74, 73, 0, 0, 0, 0), byteArrayOf(74, 73, 65, 0, 0, 0), + byteArrayOf(74, 73, 65, 78, 0, 0), byteArrayOf(74, 73, 65, 78, 71, 0), + byteArrayOf(74, 73, 65, 79, 0, 0), byteArrayOf(74, 73, 69, 0, 0, 0), + byteArrayOf(74, 73, 78, 0, 0, 0), byteArrayOf(74, 73, 78, 71, 0, 0), + byteArrayOf(74, 73, 79, 78, 71, 0), byteArrayOf(74, 73, 85, 0, 0, 0), + byteArrayOf(74, 85, 0, 0, 0, 0), byteArrayOf(74, 85, 65, 78, 0, 0), + byteArrayOf(74, 85, 69, 0, 0, 0), byteArrayOf(74, 85, 78, 0, 0, 0), + byteArrayOf(75, 65, 0, 0, 0, 0), byteArrayOf(75, 65, 73, 0, 0, 0), + byteArrayOf(75, 65, 78, 0, 0, 0), byteArrayOf(75, 65, 78, 71, 0, 0), + byteArrayOf(75, 65, 79, 0, 0, 0), byteArrayOf(75, 69, 0, 0, 0, 0), + byteArrayOf(75, 69, 78, 0, 0, 0), byteArrayOf(75, 69, 78, 71, 0, 0), + byteArrayOf(75, 79, 78, 71, 0, 0), byteArrayOf(75, 79, 85, 0, 0, 0), + byteArrayOf(75, 85, 0, 0, 0, 0), byteArrayOf(75, 85, 65, 0, 0, 0), + byteArrayOf(75, 85, 65, 73, 0, 0), byteArrayOf(75, 85, 65, 78, 0, 0), + byteArrayOf(75, 85, 65, 78, 71, 0), byteArrayOf(75, 85, 73, 0, 0, 0), + byteArrayOf(75, 85, 78, 0, 0, 0), byteArrayOf(75, 85, 79, 0, 0, 0), + byteArrayOf(76, 65, 0, 0, 0, 0), byteArrayOf(76, 65, 73, 0, 0, 0), + byteArrayOf(76, 65, 78, 0, 0, 0), byteArrayOf(76, 65, 78, 71, 0, 0), + byteArrayOf(76, 65, 79, 0, 0, 0), byteArrayOf(76, 69, 0, 0, 0, 0), + byteArrayOf(76, 69, 73, 0, 0, 0), byteArrayOf(76, 69, 78, 71, 0, 0), + byteArrayOf(76, 73, 0, 0, 0, 0), byteArrayOf(76, 73, 65, 0, 0, 0), + byteArrayOf(76, 73, 65, 78, 0, 0), byteArrayOf(76, 73, 65, 78, 71, 0), + byteArrayOf(76, 73, 65, 79, 0, 0), byteArrayOf(76, 73, 69, 0, 0, 0), + byteArrayOf(76, 73, 78, 0, 0, 0), byteArrayOf(76, 73, 78, 71, 0, 0), + byteArrayOf(76, 73, 85, 0, 0, 0), byteArrayOf(76, 79, 0, 0, 0, 0), + byteArrayOf(76, 79, 78, 71, 0, 0), byteArrayOf(76, 79, 85, 0, 0, 0), + byteArrayOf(76, 85, 0, 0, 0, 0), byteArrayOf(76, 85, 65, 78, 0, 0), + byteArrayOf(76, 85, 69, 0, 0, 0), byteArrayOf(76, 85, 78, 0, 0, 0), + byteArrayOf(76, 85, 79, 0, 0, 0), byteArrayOf(77, 0, 0, 0, 0, 0), + byteArrayOf(77, 65, 0, 0, 0, 0), byteArrayOf(77, 65, 73, 0, 0, 0), + byteArrayOf(77, 65, 78, 0, 0, 0), byteArrayOf(77, 65, 78, 71, 0, 0), + byteArrayOf(77, 65, 79, 0, 0, 0), byteArrayOf(77, 69, 0, 0, 0, 0), + byteArrayOf(77, 69, 73, 0, 0, 0), byteArrayOf(77, 69, 78, 0, 0, 0), + byteArrayOf(77, 69, 78, 71, 0, 0), byteArrayOf(77, 73, 0, 0, 0, 0), + byteArrayOf(77, 73, 65, 78, 0, 0), byteArrayOf(77, 73, 65, 79, 0, 0), + byteArrayOf(77, 73, 69, 0, 0, 0), byteArrayOf(77, 73, 78, 0, 0, 0), + byteArrayOf(77, 73, 78, 71, 0, 0), byteArrayOf(77, 73, 85, 0, 0, 0), + byteArrayOf(77, 79, 0, 0, 0, 0), byteArrayOf(77, 79, 85, 0, 0, 0), + byteArrayOf(77, 85, 0, 0, 0, 0), byteArrayOf(78, 0, 0, 0, 0, 0), + byteArrayOf(78, 65, 0, 0, 0, 0), byteArrayOf(78, 65, 73, 0, 0, 0), + byteArrayOf(78, 65, 78, 0, 0, 0), byteArrayOf(78, 65, 78, 71, 0, 0), + byteArrayOf(78, 65, 79, 0, 0, 0), byteArrayOf(78, 69, 0, 0, 0, 0), + byteArrayOf(78, 69, 73, 0, 0, 0), byteArrayOf(78, 69, 78, 0, 0, 0), + byteArrayOf(78, 69, 78, 71, 0, 0), byteArrayOf(78, 73, 0, 0, 0, 0), + byteArrayOf(78, 73, 65, 78, 0, 0), byteArrayOf(78, 73, 65, 78, 71, 0), + byteArrayOf(78, 73, 65, 79, 0, 0), byteArrayOf(78, 73, 69, 0, 0, 0), + byteArrayOf(78, 73, 78, 0, 0, 0), byteArrayOf(78, 73, 78, 71, 0, 0), + byteArrayOf(78, 73, 85, 0, 0, 0), byteArrayOf(78, 79, 78, 71, 0, 0), + byteArrayOf(78, 79, 85, 0, 0, 0), byteArrayOf(78, 85, 0, 0, 0, 0), + byteArrayOf(78, 85, 65, 78, 0, 0), byteArrayOf(78, 85, 69, 0, 0, 0), + byteArrayOf(78, 85, 78, 0, 0, 0), byteArrayOf(78, 85, 79, 0, 0, 0), + byteArrayOf(79, 0, 0, 0, 0, 0), byteArrayOf(79, 85, 0, 0, 0, 0), + byteArrayOf(80, 65, 0, 0, 0, 0), byteArrayOf(80, 65, 73, 0, 0, 0), + byteArrayOf(80, 65, 78, 0, 0, 0), byteArrayOf(80, 65, 78, 71, 0, 0), + byteArrayOf(80, 65, 79, 0, 0, 0), byteArrayOf(80, 69, 73, 0, 0, 0), + byteArrayOf(80, 69, 78, 0, 0, 0), byteArrayOf(80, 69, 78, 71, 0, 0), + byteArrayOf(80, 73, 0, 0, 0, 0), byteArrayOf(80, 73, 65, 78, 0, 0), + byteArrayOf(80, 73, 65, 79, 0, 0), byteArrayOf(80, 73, 69, 0, 0, 0), + byteArrayOf(80, 73, 78, 0, 0, 0), byteArrayOf(80, 73, 78, 71, 0, 0), + byteArrayOf(80, 79, 0, 0, 0, 0), byteArrayOf(80, 79, 85, 0, 0, 0), + byteArrayOf(80, 85, 0, 0, 0, 0), byteArrayOf(81, 73, 0, 0, 0, 0), + byteArrayOf(81, 73, 65, 0, 0, 0), byteArrayOf(81, 73, 65, 78, 0, 0), + byteArrayOf(81, 73, 65, 78, 71, 0), byteArrayOf(81, 73, 65, 79, 0, 0), + byteArrayOf(81, 73, 69, 0, 0, 0), byteArrayOf(81, 73, 78, 0, 0, 0), + byteArrayOf(81, 73, 78, 71, 0, 0), byteArrayOf(81, 73, 79, 78, 71, 0), + byteArrayOf(81, 73, 85, 0, 0, 0), byteArrayOf(81, 85, 0, 0, 0, 0), + byteArrayOf(81, 85, 65, 78, 0, 0), byteArrayOf(81, 85, 69, 0, 0, 0), + byteArrayOf(81, 85, 78, 0, 0, 0), byteArrayOf(82, 65, 78, 0, 0, 0), + byteArrayOf(82, 65, 78, 71, 0, 0), byteArrayOf(82, 65, 79, 0, 0, 0), + byteArrayOf(82, 69, 0, 0, 0, 0), byteArrayOf(82, 69, 78, 0, 0, 0), + byteArrayOf(82, 69, 78, 71, 0, 0), byteArrayOf(82, 73, 0, 0, 0, 0), + byteArrayOf(82, 79, 78, 71, 0, 0), byteArrayOf(82, 79, 85, 0, 0, 0), + byteArrayOf(82, 85, 0, 0, 0, 0), byteArrayOf(82, 85, 65, 0, 0, 0), + byteArrayOf(82, 85, 65, 78, 0, 0), byteArrayOf(82, 85, 73, 0, 0, 0), + byteArrayOf(82, 85, 78, 0, 0, 0), byteArrayOf(82, 85, 79, 0, 0, 0), + byteArrayOf(83, 65, 0, 0, 0, 0), byteArrayOf(83, 65, 73, 0, 0, 0), + byteArrayOf(83, 65, 78, 0, 0, 0), byteArrayOf(83, 65, 78, 71, 0, 0), + byteArrayOf(83, 65, 79, 0, 0, 0), byteArrayOf(83, 69, 0, 0, 0, 0), + byteArrayOf(83, 69, 78, 0, 0, 0), byteArrayOf(83, 69, 78, 71, 0, 0), + byteArrayOf(83, 72, 65, 0, 0, 0), byteArrayOf(83, 72, 65, 73, 0, 0), + byteArrayOf(83, 72, 65, 78, 0, 0), byteArrayOf(83, 72, 65, 78, 71, 0), + byteArrayOf(83, 72, 65, 79, 0, 0), byteArrayOf(83, 72, 69, 0, 0, 0), + byteArrayOf(83, 72, 69, 78, 0, 0), byteArrayOf(88, 73, 78, 0, 0, 0), + byteArrayOf(83, 72, 69, 78, 0, 0), byteArrayOf(83, 72, 69, 78, 71, 0), + byteArrayOf(83, 72, 73, 0, 0, 0), byteArrayOf(83, 72, 79, 85, 0, 0), + byteArrayOf(83, 72, 85, 0, 0, 0), byteArrayOf(83, 72, 85, 65, 0, 0), + byteArrayOf(83, 72, 85, 65, 73, 0), byteArrayOf(83, 72, 85, 65, 78, 0), + byteArrayOf(83, 72, 85, 65, 78, 71), byteArrayOf(83, 72, 85, 73, 0, 0), + byteArrayOf(83, 72, 85, 78, 0, 0), byteArrayOf(83, 72, 85, 79, 0, 0), + byteArrayOf(83, 73, 0, 0, 0, 0), byteArrayOf(83, 79, 78, 71, 0, 0), + byteArrayOf(83, 79, 85, 0, 0, 0), byteArrayOf(83, 85, 0, 0, 0, 0), + byteArrayOf(83, 85, 65, 78, 0, 0), byteArrayOf(83, 85, 73, 0, 0, 0), + byteArrayOf(83, 85, 78, 0, 0, 0), byteArrayOf(83, 85, 79, 0, 0, 0), + byteArrayOf(84, 65, 0, 0, 0, 0), byteArrayOf(84, 65, 73, 0, 0, 0), + byteArrayOf(84, 65, 78, 0, 0, 0), byteArrayOf(84, 65, 78, 71, 0, 0), + byteArrayOf(84, 65, 79, 0, 0, 0), byteArrayOf(84, 69, 0, 0, 0, 0), + byteArrayOf(84, 69, 78, 71, 0, 0), byteArrayOf(84, 73, 0, 0, 0, 0), + byteArrayOf(84, 73, 65, 78, 0, 0), byteArrayOf(84, 73, 65, 79, 0, 0), + byteArrayOf(84, 73, 69, 0, 0, 0), byteArrayOf(84, 73, 78, 71, 0, 0), + byteArrayOf(84, 79, 78, 71, 0, 0), byteArrayOf(84, 79, 85, 0, 0, 0), + byteArrayOf(84, 85, 0, 0, 0, 0), byteArrayOf(84, 85, 65, 78, 0, 0), + byteArrayOf(84, 85, 73, 0, 0, 0), byteArrayOf(84, 85, 78, 0, 0, 0), + byteArrayOf(84, 85, 79, 0, 0, 0), byteArrayOf(87, 65, 0, 0, 0, 0), + byteArrayOf(87, 65, 73, 0, 0, 0), byteArrayOf(87, 65, 78, 0, 0, 0), + byteArrayOf(87, 65, 78, 71, 0, 0), byteArrayOf(87, 69, 73, 0, 0, 0), + byteArrayOf(87, 69, 78, 0, 0, 0), byteArrayOf(87, 69, 78, 71, 0, 0), + byteArrayOf(87, 79, 0, 0, 0, 0), byteArrayOf(87, 85, 0, 0, 0, 0), + byteArrayOf(88, 73, 0, 0, 0, 0), byteArrayOf(88, 73, 65, 0, 0, 0), + byteArrayOf(88, 73, 65, 78, 0, 0), byteArrayOf(88, 73, 65, 78, 71, 0), + byteArrayOf(88, 73, 65, 79, 0, 0), byteArrayOf(88, 73, 69, 0, 0, 0), + byteArrayOf(88, 73, 78, 0, 0, 0), byteArrayOf(88, 73, 78, 71, 0, 0), + byteArrayOf(88, 73, 79, 78, 71, 0), byteArrayOf(88, 73, 85, 0, 0, 0), + byteArrayOf(88, 85, 0, 0, 0, 0), byteArrayOf(88, 85, 65, 78, 0, 0), + byteArrayOf(88, 85, 69, 0, 0, 0), byteArrayOf(88, 85, 78, 0, 0, 0), + byteArrayOf(89, 65, 0, 0, 0, 0), byteArrayOf(89, 65, 78, 0, 0, 0), + byteArrayOf(89, 65, 78, 71, 0, 0), byteArrayOf(89, 65, 79, 0, 0, 0), + byteArrayOf(89, 69, 0, 0, 0, 0), byteArrayOf(89, 73, 0, 0, 0, 0), + byteArrayOf(89, 73, 78, 0, 0, 0), byteArrayOf(89, 73, 78, 71, 0, 0), + byteArrayOf(89, 79, 0, 0, 0, 0), byteArrayOf(89, 79, 78, 71, 0, 0), + byteArrayOf(89, 79, 85, 0, 0, 0), byteArrayOf(89, 85, 0, 0, 0, 0), + byteArrayOf(89, 85, 65, 78, 0, 0), byteArrayOf(89, 85, 69, 0, 0, 0), + byteArrayOf(89, 85, 78, 0, 0, 0), byteArrayOf(74, 85, 78, 0, 0, 0), + byteArrayOf(89, 85, 78, 0, 0, 0), byteArrayOf(90, 65, 0, 0, 0, 0), + byteArrayOf(90, 65, 73, 0, 0, 0), byteArrayOf(90, 65, 78, 0, 0, 0), + byteArrayOf(90, 65, 78, 71, 0, 0), byteArrayOf(90, 65, 79, 0, 0, 0), + byteArrayOf(90, 69, 0, 0, 0, 0), byteArrayOf(90, 69, 73, 0, 0, 0), + byteArrayOf(90, 69, 78, 0, 0, 0), byteArrayOf(90, 69, 78, 71, 0, 0), + byteArrayOf(90, 72, 65, 0, 0, 0), byteArrayOf(90, 72, 65, 73, 0, 0), + byteArrayOf(90, 72, 65, 78, 0, 0), byteArrayOf(90, 72, 65, 78, 71, 0), + byteArrayOf(67, 72, 65, 78, 71, 0), byteArrayOf(90, 72, 65, 78, 71, 0), + byteArrayOf(90, 72, 65, 79, 0, 0), byteArrayOf(90, 72, 69, 0, 0, 0), + byteArrayOf(90, 72, 69, 78, 0, 0), byteArrayOf(90, 72, 69, 78, 71, 0), + byteArrayOf(90, 72, 73, 0, 0, 0), byteArrayOf(83, 72, 73, 0, 0, 0), + byteArrayOf(90, 72, 73, 0, 0, 0), byteArrayOf(90, 72, 79, 78, 71, 0), + byteArrayOf(90, 72, 79, 85, 0, 0), byteArrayOf(90, 72, 85, 0, 0, 0), + byteArrayOf(90, 72, 85, 65, 0, 0), byteArrayOf(90, 72, 85, 65, 73, 0), + byteArrayOf(90, 72, 85, 65, 78, 0), byteArrayOf(90, 72, 85, 65, 78, 71), + byteArrayOf(90, 72, 85, 73, 0, 0), byteArrayOf(90, 72, 85, 78, 0, 0), + byteArrayOf(90, 72, 85, 79, 0, 0), byteArrayOf(90, 73, 0, 0, 0, 0), + byteArrayOf(90, 79, 78, 71, 0, 0), byteArrayOf(90, 79, 85, 0, 0, 0), + byteArrayOf(90, 85, 0, 0, 0, 0), byteArrayOf(90, 85, 65, 78, 0, 0), + byteArrayOf(90, 85, 73, 0, 0, 0), byteArrayOf(90, 85, 78, 0, 0, 0), + byteArrayOf(90, 85, 79, 0, 0, 0), byteArrayOf(0, 0, 0, 0, 0, 0), + byteArrayOf(83, 72, 65, 78, 0, 0), byteArrayOf(0, 0, 0, 0, 0, 0) + ) + + private const val FIRST_PINYIN_UNIHAN = "阿" + private const val LAST_PINYIN_UNIHAN = "鿿" + + private val COLLATOR: Collator = Collator.getInstance(Locale.CHINA) + + private var sInstance: HanziToPinyin? = null + + fun getInstance(): HanziToPinyin { + synchronized(HanziToPinyin::class.java) { + if (sInstance != null) { + return sInstance!! + } + + val locale = Collator.getAvailableLocales() + for (value in locale) { + if (value == Locale.CHINA || value.language.contains("zh")) { + if (DEBUG) { + Log.d(TAG, "Self validation. Result: ${doSelfValidation()}") + } + sInstance = HanziToPinyin(true) + return sInstance!! + } + } + + if (sInstance == null) { + if (Locale.CHINA == Locale.getDefault()) { + sInstance = HanziToPinyin(true) + return sInstance!! + } + } + + Log.w(TAG, "There is no Chinese collator, HanziToPinyin is disabled") + sInstance = HanziToPinyin(false) + return sInstance!! + } + } + + private fun doSelfValidation(): Boolean { + val lastChar = UNIHANS[0] + var lastString = lastChar.toString() + for (c in UNIHANS) { + if (lastChar == c) { + continue + } + val curString = c.toString() + val cmp = COLLATOR.compare(lastString, curString) + if (cmp >= 0) { + Log.e( + TAG, + "Internal error in Unihan table. The last string \"$lastString\" " + + "is greater than current string \"$curString\"." + ) + return false + } + lastString = curString + } + return true + } + } +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/util/HyperlinkText.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/util/HyperlinkText.kt new file mode 100644 index 0000000..36ea19c --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/util/HyperlinkText.kt @@ -0,0 +1,88 @@ +package com.sukisu.ultra.ui.util + +import androidx.compose.foundation.gestures.detectTapGestures +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.ui.Modifier +import androidx.compose.ui.input.pointer.pointerInput +import androidx.compose.ui.platform.LocalUriHandler +import androidx.compose.ui.text.SpanStyle +import androidx.compose.ui.text.TextLayoutResult +import androidx.compose.ui.text.buildAnnotatedString +import androidx.compose.ui.text.style.TextDecoration +import java.util.regex.Pattern + +@Composable +fun LinkifyText( + text: String, + modifier: Modifier = Modifier +) { + val uriHandler = LocalUriHandler.current + val layoutResult = remember { + mutableStateOf(null) + } + val linksList = extractUrls(text) + val annotatedString = buildAnnotatedString { + append(text) + linksList.forEach { + addStyle( + style = SpanStyle( + color = MaterialTheme.colorScheme.primary, + textDecoration = TextDecoration.Underline + ), + start = it.start, + end = it.end + ) + addStringAnnotation( + tag = "URL", + annotation = it.url, + start = it.start, + end = it.end + ) + } + } + Text( + text = annotatedString, + modifier = modifier.pointerInput(Unit) { + detectTapGestures { offsetPosition -> + layoutResult.value?.let { + val position = it.getOffsetForPosition(offsetPosition) + annotatedString.getStringAnnotations(position, position).firstOrNull() + ?.let { result -> + if (result.tag == "URL") { + uriHandler.openUri(result.item) + } + } + } + } + }, + onTextLayout = { layoutResult.value = it } + ) +} + +private val urlPattern: Pattern = Pattern.compile( + "(?:^|\\W)((ht|f)tp(s?)://|www\\.)" + + "(([\\w\\-]+\\.)+([\\w\\-.~]+/?)*" + + "[\\p{Alnum}.,%_=?&#\\-+()\\[\\]*$~@!:/{};']*)", + Pattern.CASE_INSENSITIVE or Pattern.MULTILINE or Pattern.DOTALL +) + +private data class LinkInfo( + val url: String, + val start: Int, + val end: Int +) + +@Suppress("HttpUrlsUsage") +private fun extractUrls(text: String): List = buildList { + val matcher = urlPattern.matcher(text) + while (matcher.find()) { + val matchStart = matcher.start(1) + val matchEnd = matcher.end() + val url = text.substring(matchStart, matchEnd).replaceFirst("http://", "https://") + add(LinkInfo(url, matchStart, matchEnd)) + } +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/util/KsuCli.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/util/KsuCli.kt new file mode 100644 index 0000000..d7398d6 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/util/KsuCli.kt @@ -0,0 +1,738 @@ +package com.sukisu.ultra.ui.util + +import android.content.ContentResolver +import android.content.Context +import android.database.Cursor +import android.net.Uri +import android.os.Environment +import android.os.Parcelable +import android.os.SystemClock +import android.provider.OpenableColumns +import android.system.Os +import android.util.Log +import com.topjohnwu.superuser.CallbackList +import com.topjohnwu.superuser.Shell +import com.topjohnwu.superuser.ShellUtils +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.withContext +import kotlinx.parcelize.Parcelize +import com.sukisu.ultra.BuildConfig +import com.sukisu.ultra.Natives +import com.sukisu.ultra.ksuApp +import org.json.JSONArray +import java.io.File + + +/** + * @author weishu + * @date 2023/1/1. + */ +private const val TAG = "KsuCli" + +private fun getKsuDaemonPath(): String { + return ksuApp.applicationInfo.nativeLibraryDir + File.separator + "libksud.so" +} + +object KsuCli { + var SHELL: Shell = createRootShell() + val GLOBAL_MNT_SHELL: Shell = createRootShell(true) +} + +fun getRootShell(globalMnt: Boolean = false): Shell { + return if (globalMnt) KsuCli.GLOBAL_MNT_SHELL else { + KsuCli.SHELL + } +} + +inline fun withNewRootShell( + globalMnt: Boolean = false, + block: Shell.() -> T +): T { + return createRootShell(globalMnt).use(block) +} + +fun Uri.getFileName(context: Context): String? { + var fileName: String? = null + val contentResolver: ContentResolver = context.contentResolver + val cursor: Cursor? = contentResolver.query(this, null, null, null, null) + cursor?.use { + if (it.moveToFirst()) { + fileName = it.getString(it.getColumnIndexOrThrow(OpenableColumns.DISPLAY_NAME)) + } + } + return fileName +} + +fun createRootShell(globalMnt: Boolean = false): Shell { + Shell.enableVerboseLogging = BuildConfig.DEBUG + val builder = Shell.Builder.create() + return try { + if (globalMnt) { + builder.build(getKsuDaemonPath(), "debug", "su", "-g") + } else { + builder.build(getKsuDaemonPath(), "debug", "su") + } + } catch (e: Throwable) { + Log.w(TAG, "ksu failed: ", e) + try { + if (globalMnt) { + builder.build("su", "-mm") + } else { + builder.build("su") + } + } catch (e: Throwable) { + Log.e(TAG, "su failed: ", e) + builder.build("sh") + } + } +} + +fun execKsud(args: String, newShell: Boolean = false): Boolean { + return if (newShell) { + withNewRootShell { + ShellUtils.fastCmdResult(this, "${getKsuDaemonPath()} $args") + } + } else { + ShellUtils.fastCmdResult(getRootShell(), "${getKsuDaemonPath()} $args") + } +} + +suspend fun getFeatureStatus(feature: String): String = withContext(Dispatchers.IO) { + val shell = getRootShell() + val out = shell.newJob() + .add("${getKsuDaemonPath()} feature check $feature").to(ArrayList(), null).exec().out + out.firstOrNull()?.trim().orEmpty() +} + +fun install() { + val start = SystemClock.elapsedRealtime() + val magiskboot = File(ksuApp.applicationInfo.nativeLibraryDir, "libmagiskboot.so").absolutePath + val result = execKsud("install --magiskboot $magiskboot", true) + Log.w(TAG, "install result: $result, cost: ${SystemClock.elapsedRealtime() - start}ms") +} + +fun listModules(): String { + val shell = getRootShell() + + val out = shell.newJob() + .add("${getKsuDaemonPath()} module list").to(ArrayList(), null).exec().out + return out.joinToString("\n").ifBlank { "[]" } +} + +fun getModuleCount(): Int { + val result = listModules() + runCatching { + val array = JSONArray(result) + return array.length() + }.getOrElse { return 0 } +} + +fun getSuperuserCount(): Int { + return Natives.allowList.size +} + +fun toggleModule(id: String, enable: Boolean): Boolean { + val cmd = if (enable) { + "module enable $id" + } else { + "module disable $id" + } + val result = execKsud(cmd, true) + Log.i(TAG, "$cmd result: $result") + return result +} + +fun uninstallModule(id: String): Boolean { + val cmd = "module uninstall $id" + val result = execKsud(cmd, true) + Log.i(TAG, "uninstall module $id result: $result") + return result +} + +fun restoreModule(id: String): Boolean { + val cmd = "module restore $id" + val result = execKsud(cmd, true) + Log.i(TAG, "restore module $id result: $result") + return result +} + +fun undoUninstallModule(id: String): Boolean { + val cmd = "module undo-uninstall $id" + val result = execKsud(cmd, true) + Log.i(TAG, "undo uninstall module $id result: $result") + return result +} + +private fun flashWithIO( + cmd: String, + onStdout: (String) -> Unit, + onStderr: (String) -> Unit +): Shell.Result { + + val stdoutCallback: CallbackList = object : CallbackList() { + override fun onAddElement(s: String?) { + onStdout(s ?: "") + } + } + + val stderrCallback: CallbackList = object : CallbackList() { + override fun onAddElement(s: String?) { + onStderr(s ?: "") + } + } + + return withNewRootShell { + newJob().add(cmd).to(stdoutCallback, stderrCallback).exec() + } +} + +fun flashModule( + uri: Uri, + onFinish: (Boolean, Int) -> Unit, + onStdout: (String) -> Unit, + onStderr: (String) -> Unit +): Boolean { + val resolver = ksuApp.contentResolver + with(resolver.openInputStream(uri)) { + val file = File(ksuApp.cacheDir, "module.zip") + file.outputStream().use { output -> + this?.copyTo(output) + } + val cmd = "module install ${file.absolutePath}" + val result = flashWithIO("${getKsuDaemonPath()} $cmd", onStdout, onStderr) + Log.i("KernelSU", "install module $uri result: $result") + + file.delete() + + onFinish(result.isSuccess, result.code) + return result.isSuccess + } +} + +fun runModuleAction( + moduleId: String, onStdout: (String) -> Unit, onStderr: (String) -> Unit +): Boolean { + val shell = createRootShell(true) + + val stdoutCallback: CallbackList = object : CallbackList() { + override fun onAddElement(s: String?) { + onStdout(s ?: "") + } + } + + val stderrCallback: CallbackList = object : CallbackList() { + override fun onAddElement(s: String?) { + onStderr(s ?: "") + } + } + + val result = shell.newJob().add("${getKsuDaemonPath()} module action $moduleId") + .to(stdoutCallback, stderrCallback).exec() + Log.i("KernelSU", "Module runAction result: $result") + + return result.isSuccess +} + +fun restoreBoot( + onFinish: (Boolean, Int) -> Unit, onStdout: (String) -> Unit, onStderr: (String) -> Unit +): Boolean { + val magiskboot = File(ksuApp.applicationInfo.nativeLibraryDir, "libmagiskboot.so") + val result = flashWithIO( + "${getKsuDaemonPath()} boot-restore -f --magiskboot $magiskboot", + onStdout, + onStderr + ) + onFinish(result.isSuccess, result.code) + return result.isSuccess +} + +fun uninstallPermanently( + onFinish: (Boolean, Int) -> Unit, onStdout: (String) -> Unit, onStderr: (String) -> Unit +): Boolean { + val magiskboot = File(ksuApp.applicationInfo.nativeLibraryDir, "libmagiskboot.so") + val result = + flashWithIO("${getKsuDaemonPath()} uninstall --magiskboot $magiskboot", onStdout, onStderr) + onFinish(result.isSuccess, result.code) + return result.isSuccess +} + +@Parcelize +sealed class LkmSelection : Parcelable { + data class LkmUri(val uri: Uri) : LkmSelection() + data class KmiString(val value: String) : LkmSelection() + data object KmiNone : LkmSelection() +} + +fun installBoot( + bootUri: Uri?, + lkm: LkmSelection, + ota: Boolean, + partition: String?, + onFinish: (Boolean, Int) -> Unit, + onStdout: (String) -> Unit, + onStderr: (String) -> Unit, +): Boolean { + val resolver = ksuApp.contentResolver + + val bootFile = bootUri?.let { uri -> + with(resolver.openInputStream(uri)) { + val bootFile = File(ksuApp.cacheDir, "boot.img") + bootFile.outputStream().use { output -> + this?.copyTo(output) + } + + bootFile + } + } + + val magiskboot = File(ksuApp.applicationInfo.nativeLibraryDir, "libmagiskboot.so") + var cmd = "boot-patch --magiskboot ${magiskboot.absolutePath}" + + cmd += if (bootFile == null) { + // no boot.img, use -f to force install + " -f" + } else { + " -b ${bootFile.absolutePath}" + } + + if (ota) { + cmd += " -u" + } + + var lkmFile: File? = null + when (lkm) { + is LkmSelection.LkmUri -> { + lkmFile = with(resolver.openInputStream(lkm.uri)) { + val file = File(ksuApp.cacheDir, "kernelsu-tmp-lkm.ko") + file.outputStream().use { output -> + this?.copyTo(output) + } + + file + } + cmd += " -m ${lkmFile.absolutePath}" + } + + is LkmSelection.KmiString -> { + cmd += " --kmi ${lkm.value}" + } + + LkmSelection.KmiNone -> { + // do nothing + } + } + + // output dir + val downloadsDir = + Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS) + cmd += " -o $downloadsDir" + + partition?.let { part -> + cmd += " --partition $part" + } + + val result = flashWithIO("${getKsuDaemonPath()} $cmd", onStdout, onStderr) + Log.i("KernelSU", "install boot result: ${result.isSuccess}") + + bootFile?.delete() + lkmFile?.delete() + + // if boot uri is empty, it is direct install, when success, we should show reboot button + onFinish(bootUri == null && result.isSuccess, result.code) + + if (bootUri == null && result.isSuccess) { + install() + } + + return result.isSuccess +} + +fun reboot(reason: String = "") { + val shell = getRootShell() + if (reason == "recovery") { + // KEYCODE_POWER = 26, hide incorrect "Factory data reset" message + ShellUtils.fastCmd(shell, "/system/bin/input keyevent 26") + } + ShellUtils.fastCmd(shell, "/system/bin/svc power reboot $reason || /system/bin/reboot $reason") +} + +fun rootAvailable(): Boolean { + val shell = getRootShell() + return shell.isRoot +} + + +suspend fun getCurrentKmi(): String = withContext(Dispatchers.IO) { + val shell = getRootShell() + val cmd = "boot-info current-kmi" + ShellUtils.fastCmd(shell, "${getKsuDaemonPath()} $cmd") +} + +suspend fun getSupportedKmis(): List = withContext(Dispatchers.IO) { + val shell = getRootShell() + val cmd = "boot-info supported-kmis" + val out = shell.newJob().add("${getKsuDaemonPath()} $cmd").to(ArrayList(), null).exec().out + out.filter { it.isNotBlank() }.map { it.trim() } +} + +suspend fun isAbDevice(): Boolean = withContext(Dispatchers.IO) { + val shell = getRootShell() + val cmd = "boot-info is-ab-device" + ShellUtils.fastCmd(shell, "${getKsuDaemonPath()} $cmd").trim().toBoolean() +} + +suspend fun getDefaultPartition(): String = withContext(Dispatchers.IO) { + val shell = getRootShell() + if (shell.isRoot) { + val cmd = "boot-info default-partition" + ShellUtils.fastCmd(shell, "${getKsuDaemonPath()} $cmd").trim() + } else { + if (!Os.uname().release.contains("android12-")) "init_boot" else "boot" + } +} + +suspend fun getSlotSuffix(ota: Boolean): String = withContext(Dispatchers.IO) { + val shell = getRootShell() + val cmd = if (ota) { + "boot-info slot-suffix --ota" + } else { + "boot-info slot-suffix" + } + ShellUtils.fastCmd(shell, "${getKsuDaemonPath()} $cmd").trim() +} + +suspend fun getAvailablePartitions(): List = withContext(Dispatchers.IO) { + val shell = getRootShell() + val cmd = "boot-info available-partitions" + val out = shell.newJob().add("${getKsuDaemonPath()} $cmd").to(ArrayList(), null).exec().out + out.filter { it.isNotBlank() }.map { it.trim() } +} + +fun hasMagisk(): Boolean { + val shell = getRootShell(true) + val result = shell.newJob().add("which magisk").exec() + Log.i(TAG, "has magisk: ${result.isSuccess}") + return result.isSuccess +} + +fun isSepolicyValid(rules: String?): Boolean { + if (rules == null) { + return true + } + val shell = getRootShell() + val result = + shell.newJob().add("${getKsuDaemonPath()} sepolicy check '$rules'").to(ArrayList(), null) + .exec() + return result.isSuccess +} + +fun getSepolicy(pkg: String): String { + val shell = getRootShell() + val result = + shell.newJob().add("${getKsuDaemonPath()} profile get-sepolicy $pkg").to(ArrayList(), null) + .exec() + Log.i(TAG, "code: ${result.code}, out: ${result.out}, err: ${result.err}") + return result.out.joinToString("\n") +} + +fun setSepolicy(pkg: String, rules: String): Boolean { + val shell = getRootShell() + val result = shell.newJob().add("${getKsuDaemonPath()} profile set-sepolicy $pkg '$rules'") + .to(ArrayList(), null).exec() + Log.i(TAG, "set sepolicy result: ${result.code}") + return result.isSuccess +} + +fun listAppProfileTemplates(): List { + val shell = getRootShell() + return shell.newJob().add("${getKsuDaemonPath()} profile list-templates").to(ArrayList(), null) + .exec().out +} + +fun getAppProfileTemplate(id: String): String { + val shell = getRootShell() + return shell.newJob().add("${getKsuDaemonPath()} profile get-template '${id}'") + .to(ArrayList(), null).exec().out.joinToString("\n") +} + +fun setAppProfileTemplate(id: String, template: String): Boolean { + val shell = getRootShell() + val escapedTemplate = template.replace("\"", "\\\"") + val cmd = """${getKsuDaemonPath()} profile set-template "$id" "$escapedTemplate'"""" + return shell.newJob().add(cmd) + .to(ArrayList(), null).exec().isSuccess +} + +fun deleteAppProfileTemplate(id: String): Boolean { + val shell = getRootShell() + return shell.newJob().add("${getKsuDaemonPath()} profile delete-template '${id}'") + .to(ArrayList(), null).exec().isSuccess +} +// KPM控制 +fun loadKpmModule(path: String, args: String? = null): String { + val shell = getRootShell() + val cmd = "${getKsuDaemonPath()} kpm load $path ${args ?: ""}" + return ShellUtils.fastCmd(shell, cmd) +} + +fun unloadKpmModule(name: String): String { + val shell = getRootShell() + val cmd = "${getKsuDaemonPath()} kpm unload $name" + return ShellUtils.fastCmd(shell, cmd) +} + +fun getKpmModuleCount(): Int { + val shell = getRootShell() + val cmd = "${getKsuDaemonPath()} kpm num" + val result = ShellUtils.fastCmd(shell, cmd) + return result.trim().toIntOrNull() ?: 0 +} + +fun runCmd(shell: Shell, cmd: String): String { + return shell.newJob() + .add(cmd) + .to(mutableListOf(), null) + .exec().out + .joinToString("\n") +} + +fun listKpmModules(): String { + val shell = getRootShell() + val cmd = "${getKsuDaemonPath()} kpm list" + return try { + runCmd(shell, cmd).trim() + } catch (e: Exception) { + Log.e(TAG, "Failed to list KPM modules", e) + "" + } +} + +fun getKpmModuleInfo(name: String): String { + val shell = getRootShell() + val cmd = "${getKsuDaemonPath()} kpm info $name" + return try { + runCmd(shell, cmd).trim() + } catch (e: Exception) { + Log.e(TAG, "Failed to get KPM module info: $name", e) + "" + } +} + +fun controlKpmModule(name: String, args: String? = null): Int { + val shell = getRootShell() + val cmd = """${getKsuDaemonPath()} kpm control $name "${args ?: ""}"""" + val result = runCmd(shell, cmd) + return result.trim().toIntOrNull() ?: -1 +} + +fun getKpmVersion(): String { + val shell = getRootShell() + val cmd = "${getKsuDaemonPath()} kpm version" + val result = ShellUtils.fastCmd(shell, cmd) + return result.trim() +} + +fun forceStopApp(packageName: String) { + val shell = getRootShell() + val result = shell.newJob().add("am force-stop $packageName").exec() + Log.i(TAG, "force stop $packageName result: $result") +} + +fun launchApp(packageName: String) { + + val shell = getRootShell() + val result = + shell.newJob() + .add("cmd package resolve-activity --brief $packageName | tail -n 1 | xargs cmd activity start-activity -n") + .exec() + Log.i(TAG, "launch $packageName result: $result") +} + +fun restartApp(packageName: String) { + forceStopApp(packageName) + launchApp(packageName) +} + +fun getSuSFSDaemonPath(): String { + return ksuApp.applicationInfo.nativeLibraryDir + File.separator + "libksu_susfs.so" +} + +fun getSuSFSVersion(): String { + val shell = getRootShell() + val result = ShellUtils.fastCmd(shell, "${getSuSFSDaemonPath()} show version") + return result +} + +fun getSuSFSVariant(): String { + val shell = getRootShell() + val result = ShellUtils.fastCmd(shell, "${getSuSFSDaemonPath()} show variant") + return result +} + +fun getSuSFSFeatures(): String { + val shell = getRootShell() + val cmd = "${getSuSFSDaemonPath()} show enabled_features" + return runCmd(shell, cmd) +} + +fun getZygiskImplement(): String { + val shell = getRootShell() + + val zygiskModuleIds = listOf( + "zygisksu", + "rezygisk", + "shirokozygisk" + ) + + for (moduleId in zygiskModuleIds) { + val modulePath = "/data/adb/modules/$moduleId" + when { + ShellUtils.fastCmdResult(shell, "test -f $modulePath/module.prop && test ! -f $modulePath/disable") -> { + val result = ShellUtils.fastCmd(shell, "grep '^name=' $modulePath/module.prop | cut -d'=' -f2") + Log.i(TAG, "Zygisk implement: $result") + return result + } + } + } + + Log.i(TAG, "Zygisk implement: None") + return "None" +} + +fun getUidScannerDaemonPath(): String { + return ksuApp.applicationInfo.nativeLibraryDir + File.separator + "libuid_scanner.so" +} + +private const val targetPath = "/data/adb/uid_scanner" +fun ensureUidScannerExecutable(): Boolean { + val shell = getRootShell() + val uidScannerPath = getUidScannerDaemonPath() + if (!ShellUtils.fastCmdResult(shell, "test -f $targetPath")) { + val copyResult = ShellUtils.fastCmdResult(shell, "cp $uidScannerPath $targetPath") + if (!copyResult) { + return false + } + } + + val result = ShellUtils.fastCmdResult(shell, "chmod 755 $targetPath") + return result +} + +fun setUidAutoScan(enabled: Boolean): Boolean { + val shell = getRootShell() + if (!ensureUidScannerExecutable()) { + return false + } + + val enableValue = if (enabled) 1 else 0 + val cmd = "$targetPath --auto-scan $enableValue && $targetPath reload" + val result = ShellUtils.fastCmdResult(shell, cmd) + + val throneResult = Natives.setUidScannerEnabled(enabled) + + return result && throneResult +} + +fun setUidMultiUserScan(enabled: Boolean): Boolean { + val shell = getRootShell() + if (!ensureUidScannerExecutable()) { + return false + } + + val enableValue = if (enabled) 1 else 0 + val cmd = "$targetPath --multi-user $enableValue && $targetPath reload" + val result = ShellUtils.fastCmdResult(shell, cmd) + return result +} + +fun getUidMultiUserScan(): Boolean { + val shell = getRootShell() + + val cmd = "grep 'multi_user_scan=' /data/misc/user_uid/uid_scanner.conf | cut -d'=' -f2" + val result = ShellUtils.fastCmd(shell, cmd).trim() + + return try { + result.toInt() == 1 + } catch (_: NumberFormatException) { + false + } +} + +fun cleanRuntimeEnvironment(): Boolean { + val shell = getRootShell() + return try { + try { + ShellUtils.fastCmd(shell, "/data/adb/uid_scanner stop") + } catch (_: Exception) { + } + ShellUtils.fastCmdResult(shell, "rm -rf /data/misc/user_uid") + ShellUtils.fastCmdResult(shell, "rm -rf /data/adb/uid_scanner") + ShellUtils.fastCmdResult(shell, "rm -rf /data/adb/ksu/bin/user_uid") + ShellUtils.fastCmdResult(shell, "rm -rf /data/adb/service.d/uid_scanner.sh") + Natives.clearUidScannerEnvironment() + true + } catch (_: Exception) { + false + } +} + +fun readUidScannerFile(): Boolean { + val shell = getRootShell() + return try { + ShellUtils.fastCmd(shell, "cat /data/adb/ksu/.uid_scanner").trim() == "1" + } catch (_: Exception) { + false + } +} + +fun addUmountPath(path: String, flags: Int): Boolean { + val shell = getRootShell() + val flagsArg = if (flags >= 0) "--flags $flags" else "" + val cmd = "${getKsuDaemonPath()} umount add $path $flagsArg" + val result = ShellUtils.fastCmdResult(shell, cmd) + Log.i(TAG, "add umount path $path result: $result") + return result +} + +fun removeUmountPath(path: String): Boolean { + val shell = getRootShell() + val cmd = "${getKsuDaemonPath()} umount remove $path" + val result = ShellUtils.fastCmdResult(shell, cmd) + Log.i(TAG, "remove umount path $path result: $result") + return result +} + +fun listUmountPaths(): String { + val shell = getRootShell() + val cmd = "${getKsuDaemonPath()} umount list" + return try { + runCmd(shell, cmd).trim() + } catch (e: Exception) { + Log.e(TAG, "Failed to list umount paths", e) + "" + } +} + +fun clearCustomUmountPaths(): Boolean { + val shell = getRootShell() + val cmd = "${getKsuDaemonPath()} umount clear-custom" + val result = ShellUtils.fastCmdResult(shell, cmd) + Log.i(TAG, "clear custom umount paths result: $result") + return result +} + +fun saveUmountConfig(): Boolean { + val shell = getRootShell() + val cmd = "${getKsuDaemonPath()} umount save" + val result = ShellUtils.fastCmdResult(shell, cmd) + Log.i(TAG, "save umount config result: $result") + return result +} + +fun applyUmountConfigToKernel(): Boolean { + val shell = getRootShell() + val cmd = "${getKsuDaemonPath()} umount apply" + val result = ShellUtils.fastCmdResult(shell, cmd) + Log.i(TAG, "apply umount config to kernel result: $result") + return result +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/util/LogEvent.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/util/LogEvent.kt new file mode 100644 index 0000000..758cc2b --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/util/LogEvent.kt @@ -0,0 +1,111 @@ +package com.sukisu.ultra.ui.util + +import android.content.Context +import android.os.Build +import android.system.Os +import com.topjohnwu.superuser.ShellUtils +import com.sukisu.ultra.Natives +import com.sukisu.ultra.ui.screen.getManagerVersion +import java.io.File +import java.io.FileWriter +import java.io.PrintWriter +import java.time.LocalDateTime +import java.time.format.DateTimeFormatter + +fun getBugreportFile(context: Context): File { + + val bugreportDir = File(context.cacheDir, "bugreport") + bugreportDir.mkdirs() + + val dmesgFile = File(bugreportDir, "dmesg.txt") + val logcatFile = File(bugreportDir, "logcat.txt") + val tombstonesFile = File(bugreportDir, "tombstones.tar.gz") + val dropboxFile = File(bugreportDir, "dropbox.tar.gz") + val pstoreFile = File(bugreportDir, "pstore.tar.gz") + // Xiaomi/Readmi devices have diag in /data/vendor/diag + val diagFile = File(bugreportDir, "diag.tar.gz") + val oplusFile = File(bugreportDir, "oplus.tar.gz") + val bootlogFile = File(bugreportDir, "bootlog.tar.gz") + val mountsFile = File(bugreportDir, "mounts.txt") + val fileSystemsFile = File(bugreportDir, "filesystems.txt") + val adbFileTree = File(bugreportDir, "adb_tree.txt") + val adbFileDetails = File(bugreportDir, "adb_details.txt") + val ksuFileSize = File(bugreportDir, "ksu_size.txt") + val appListFile = File(bugreportDir, "packages.txt") + val propFile = File(bugreportDir, "props.txt") + val allowListFile = File(bugreportDir, "allowlist.bin") + val procModules = File(bugreportDir, "proc_modules.txt") + val bootConfig = File(bugreportDir, "boot_config.txt") + val kernelConfig = File(bugreportDir, "defconfig.gz") + + val shell = getRootShell(true) + + shell.newJob().add("dmesg > ${dmesgFile.absolutePath}").exec() + shell.newJob().add("logcat -d > ${logcatFile.absolutePath}").exec() + shell.newJob().add("tar -czf ${tombstonesFile.absolutePath} -C /data/tombstones .").exec() + shell.newJob().add("tar -czf ${dropboxFile.absolutePath} -C /data/system/dropbox .").exec() + shell.newJob().add("tar -czf ${pstoreFile.absolutePath} -C /sys/fs/pstore .").exec() + shell.newJob().add("tar -czf ${diagFile.absolutePath} -C /data/vendor/diag . --exclude=./minidump.gz").exec() + shell.newJob().add("tar -czf ${oplusFile.absolutePath} -C /mnt/oplus/op2/media/log/boot_log/ .").exec() + shell.newJob().add("tar -czf ${bootlogFile.absolutePath} -C /data/adb/ksu/log .").exec() + + shell.newJob().add("cat /proc/1/mountinfo > ${mountsFile.absolutePath}").exec() + shell.newJob().add("cat /proc/filesystems > ${fileSystemsFile.absolutePath}").exec() + shell.newJob().add("busybox tree /data/adb > ${adbFileTree.absolutePath}").exec() + shell.newJob().add("ls -alRZ /data/adb > ${adbFileDetails.absolutePath}").exec() + shell.newJob().add("du -sh /data/adb/ksu/* > ${ksuFileSize.absolutePath}").exec() + shell.newJob().add("cp /data/system/packages.list ${appListFile.absolutePath}").exec() + shell.newJob().add("getprop > ${propFile.absolutePath}").exec() + shell.newJob().add("cp /data/adb/ksu/.allowlist ${allowListFile.absolutePath}").exec() + shell.newJob().add("cp /proc/modules ${procModules.absolutePath}").exec() + shell.newJob().add("cp /proc/bootconfig ${bootConfig.absolutePath}").exec() + shell.newJob().add("cp /proc/config.gz ${kernelConfig.absolutePath}").exec() + + val selinux = ShellUtils.fastCmd(shell, "getenforce") + + // basic information + val buildInfo = File(bugreportDir, "basic.txt") + PrintWriter(FileWriter(buildInfo)).use { pw -> + pw.println("Kernel: ${System.getProperty("os.version")}") + pw.println("BRAND: " + Build.BRAND) + pw.println("MODEL: " + Build.MODEL) + pw.println("PRODUCT: " + Build.PRODUCT) + pw.println("MANUFACTURER: " + Build.MANUFACTURER) + pw.println("SDK: " + Build.VERSION.SDK_INT) + pw.println("PREVIEW_SDK: " + Build.VERSION.PREVIEW_SDK_INT) + pw.println("FINGERPRINT: " + Build.FINGERPRINT) + pw.println("DEVICE: " + Build.DEVICE) + pw.println("Manager: " + getManagerVersion(context)) + pw.println("SELinux: $selinux") + + val uname = Os.uname() + pw.println("KernelRelease: ${uname.release}") + pw.println("KernelVersion: ${uname.version}") + pw.println("Machine: ${uname.machine}") + pw.println("Nodename: ${uname.nodename}") + pw.println("Sysname: ${uname.sysname}") + + val ksuKernel = Natives.version + pw.println("KernelSU: $ksuKernel") + val safeMode = Natives.isSafeMode + pw.println("SafeMode: $safeMode") + val lkmMode = Natives.isLkmMode + pw.println("LKM: $lkmMode") + } + + // modules + val modulesFile = File(bugreportDir, "modules.json") + modulesFile.writeText(listModules()) + + val formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd_HH_mm") + val current = LocalDateTime.now().format(formatter) + + val targetFile = File(context.cacheDir, "KernelSU_bugreport_${current}.tar.gz") + + shell.newJob().add("tar czf ${targetFile.absolutePath} -C ${bugreportDir.absolutePath} .").exec() + shell.newJob().add("rm -rf ${bugreportDir.absolutePath}").exec() + shell.newJob().add("chmod 0644 ${targetFile.absolutePath}").exec() + + return targetFile +} + diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/util/SELinuxChecker.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/util/SELinuxChecker.kt new file mode 100644 index 0000000..b7e5216 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/util/SELinuxChecker.kt @@ -0,0 +1,19 @@ +package com.sukisu.ultra.ui.util + +import android.content.Context +import com.sukisu.ultra.R +import com.topjohnwu.superuser.io.SuFile + +fun getSELinuxStatus(context: Context) = SuFile("/sys/fs/selinux/enforce").run { + when { + !exists() -> context.getString(R.string.selinux_status_disabled) + !isFile -> context.getString(R.string.selinux_status_unknown) + !canRead() -> context.getString(R.string.selinux_status_enforcing) + else -> when (runCatching { newInputStream() }.getOrNull()?.bufferedReader() + ?.use { it.runCatching { readLine() }.getOrNull()?.trim()?.toIntOrNull() }) { + 1 -> context.getString(R.string.selinux_status_enforcing) + 0 -> context.getString(R.string.selinux_status_permissive) + else -> context.getString(R.string.selinux_status_unknown) + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/util/module/LatestVersionInfo.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/util/module/LatestVersionInfo.kt new file mode 100644 index 0000000..6c134a5 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/util/module/LatestVersionInfo.kt @@ -0,0 +1,8 @@ +package com.sukisu.ultra.ui.util.module + +data class LatestVersionInfo( + val versionCode : Int = 0, + val downloadUrl : String = "", + val changelog : String = "", + val versionName: String = "" +) diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/util/module/ModuleModify.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/util/module/ModuleModify.kt new file mode 100644 index 0000000..c0f52b1 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/util/module/ModuleModify.kt @@ -0,0 +1,457 @@ +package com.sukisu.ultra.ui.util.module + +import android.app.Activity +import android.content.Context +import android.content.Intent +import android.net.Uri +import android.util.Log +import androidx.activity.compose.rememberLauncherForActivityResult +import androidx.activity.result.ActivityResultLauncher +import androidx.activity.result.contract.ActivityResultContracts +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.ui.platform.LocalContext +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.util.reboot +import kotlinx.coroutines.CompletableDeferred +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext +import java.io.BufferedReader +import java.io.IOException +import java.io.InputStreamReader +import java.text.SimpleDateFormat +import java.util.* + +object ModuleModify { + @Composable + fun RestoreConfirmationDialog( + showDialog: Boolean, + onConfirm: () -> Unit, + onDismiss: () -> Unit + ) { + val context = LocalContext.current + + if (showDialog) { + AlertDialog( + onDismissRequest = onDismiss, + title = { + Text( + text = context.getString(R.string.restore_confirm_title), + style = MaterialTheme.typography.headlineSmall + ) + }, + text = { + Text( + text = context.getString(R.string.restore_confirm_message), + style = MaterialTheme.typography.bodyMedium + ) + }, + confirmButton = { + TextButton(onClick = onConfirm) { + Text(context.getString(R.string.confirm)) + } + }, + dismissButton = { + TextButton(onClick = onDismiss) { + Text(context.getString(R.string.cancel)) + } + } + ) + } + } + + @Composable + fun AllowlistRestoreConfirmationDialog( + showDialog: Boolean, + onConfirm: () -> Unit, + onDismiss: () -> Unit + ) { + val context = LocalContext.current + + if (showDialog) { + AlertDialog( + onDismissRequest = onDismiss, + title = { + Text( + text = context.getString(R.string.allowlist_restore_confirm_title), + style = MaterialTheme.typography.headlineSmall + ) + }, + text = { + Text( + text = context.getString(R.string.allowlist_restore_confirm_message), + style = MaterialTheme.typography.bodyMedium + ) + }, + confirmButton = { + TextButton(onClick = onConfirm) { + Text(context.getString(R.string.confirm)) + } + }, + dismissButton = { + TextButton(onClick = onDismiss) { + Text(context.getString(R.string.cancel)) + } + } + ) + } + } + + suspend fun backupModules(context: Context, snackBarHost: SnackbarHostState, uri: Uri) { + withContext(Dispatchers.IO) { + try { + val busyboxPath = "/data/adb/ksu/bin/busybox" + val moduleDir = "/data/adb/modules" + + // 直接将tar输出重定向到用户选择的文件 + val command = """ + cd "$moduleDir" && + $busyboxPath tar -cz ./* > /proc/self/fd/1 + """.trimIndent() + + val process = Runtime.getRuntime().exec(arrayOf("su", "-c", command)) + + // 直接将tar输出写入到用户选择的文件 + context.contentResolver.openOutputStream(uri)?.use { output -> + process.inputStream.copyTo(output) + } + + val error = BufferedReader(InputStreamReader(process.errorStream)).readText() + if (process.exitValue() != 0) { + throw IOException(context.getString(R.string.command_execution_failed, error)) + } + + withContext(Dispatchers.Main) { + snackBarHost.showSnackbar( + context.getString(R.string.backup_success), + duration = SnackbarDuration.Long + ) + } + + } catch (e: Exception) { + Log.e("Backup", context.getString(R.string.backup_failed, ""), e) + withContext(Dispatchers.Main) { + snackBarHost.showSnackbar( + context.getString(R.string.backup_failed, e.message), + duration = SnackbarDuration.Long + ) + } + } + } + } + + suspend fun restoreModules( + context: Context, + snackBarHost: SnackbarHostState, + uri: Uri, + showConfirmDialog: (Boolean) -> Unit, + confirmResult: CompletableDeferred + ) { + // 显示确认对话框 + withContext(Dispatchers.Main) { + showConfirmDialog(true) + } + + val userConfirmed = confirmResult.await() + if (!userConfirmed) return + + withContext(Dispatchers.IO) { + try { + val busyboxPath = "/data/adb/ksu/bin/busybox" + val moduleDir = "/data/adb/modules" + + // 直接从用户选择的文件读取并解压 + val process = Runtime.getRuntime() + .exec(arrayOf("su", "-c", "$busyboxPath tar -xz -C $moduleDir")) + + context.contentResolver.openInputStream(uri)?.use { input -> + input.copyTo(process.outputStream) + } + process.outputStream.close() + + process.waitFor() + + val error = BufferedReader(InputStreamReader(process.errorStream)).readText() + if (process.exitValue() != 0) { + throw IOException(context.getString(R.string.command_execution_failed, error)) + } + + withContext(Dispatchers.Main) { + val snackbarResult = snackBarHost.showSnackbar( + message = context.getString(R.string.restore_success), + actionLabel = context.getString(R.string.restart_now), + duration = SnackbarDuration.Long + ) + if (snackbarResult == SnackbarResult.ActionPerformed) { + reboot() + } + } + + } catch (e: Exception) { + Log.e("Restore", context.getString(R.string.restore_failed, ""), e) + withContext(Dispatchers.Main) { + snackBarHost.showSnackbar( + message = context.getString( + R.string.restore_failed, + e.message ?: context.getString(R.string.unknown_error) + ), + duration = SnackbarDuration.Long + ) + } + } + } + } + + suspend fun backupAllowlist(context: Context, snackBarHost: SnackbarHostState, uri: Uri) { + withContext(Dispatchers.IO) { + try { + val allowlistPath = "/data/adb/ksu/.allowlist" + + // 直接复制文件到用户选择的位置 + val process = Runtime.getRuntime().exec(arrayOf("su", "-c", "cat $allowlistPath")) + + context.contentResolver.openOutputStream(uri)?.use { output -> + process.inputStream.copyTo(output) + } + + val error = BufferedReader(InputStreamReader(process.errorStream)).readText() + if (process.exitValue() != 0) { + throw IOException(context.getString(R.string.command_execution_failed, error)) + } + + withContext(Dispatchers.Main) { + snackBarHost.showSnackbar( + context.getString(R.string.allowlist_backup_success), + duration = SnackbarDuration.Long + ) + } + + } catch (e: Exception) { + Log.e("AllowlistBackup", context.getString(R.string.allowlist_backup_failed, ""), e) + withContext(Dispatchers.Main) { + snackBarHost.showSnackbar( + context.getString(R.string.allowlist_backup_failed, e.message), + duration = SnackbarDuration.Long + ) + } + } + } + } + + suspend fun restoreAllowlist( + context: Context, + snackBarHost: SnackbarHostState, + uri: Uri, + showConfirmDialog: (Boolean) -> Unit, + confirmResult: CompletableDeferred + ) { + // 显示确认对话框 + withContext(Dispatchers.Main) { + showConfirmDialog(true) + } + + val userConfirmed = confirmResult.await() + if (!userConfirmed) return + + withContext(Dispatchers.IO) { + try { + val allowlistPath = "/data/adb/ksu/.allowlist" + + // 直接从用户选择的文件读取并写入到目标位置 + val process = Runtime.getRuntime().exec(arrayOf("su", "-c", "cat > $allowlistPath")) + + context.contentResolver.openInputStream(uri)?.use { input -> + input.copyTo(process.outputStream) + } + process.outputStream.close() + + process.waitFor() + + val error = BufferedReader(InputStreamReader(process.errorStream)).readText() + if (process.exitValue() != 0) { + throw IOException(context.getString(R.string.command_execution_failed, error)) + } + + withContext(Dispatchers.Main) { + snackBarHost.showSnackbar( + context.getString(R.string.allowlist_restore_success), + duration = SnackbarDuration.Long + ) + } + + } catch (e: Exception) { + Log.e( + "AllowlistRestore", + context.getString(R.string.allowlist_restore_failed, ""), + e + ) + withContext(Dispatchers.Main) { + snackBarHost.showSnackbar( + context.getString(R.string.allowlist_restore_failed, e.message), + duration = SnackbarDuration.Long + ) + } + } + } + } + + @Composable + fun rememberModuleBackupLauncher( + context: Context, + snackBarHost: SnackbarHostState, + scope: CoroutineScope = rememberCoroutineScope() + ) = rememberLauncherForActivityResult( + contract = ActivityResultContracts.StartActivityForResult() + ) { result -> + if (result.resultCode == Activity.RESULT_OK) { + result.data?.data?.let { uri -> + scope.launch { + backupModules(context, snackBarHost, uri) + } + } + } + } + + @Composable + fun rememberModuleRestoreLauncher( + context: Context, + snackBarHost: SnackbarHostState, + scope: CoroutineScope = rememberCoroutineScope() + ): ActivityResultLauncher { + var showRestoreDialog by remember { mutableStateOf(false) } + var restoreConfirmResult by remember { mutableStateOf?>(null) } + + // 显示恢复确认对话框 + RestoreConfirmationDialog( + showDialog = showRestoreDialog, + onConfirm = { + showRestoreDialog = false + restoreConfirmResult?.complete(true) + }, + onDismiss = { + showRestoreDialog = false + restoreConfirmResult?.complete(false) + } + ) + + return rememberLauncherForActivityResult( + contract = ActivityResultContracts.StartActivityForResult() + ) { result -> + if (result.resultCode == Activity.RESULT_OK) { + result.data?.data?.let { uri -> + scope.launch { + val confirmResult = CompletableDeferred() + restoreConfirmResult = confirmResult + + restoreModules( + context = context, + snackBarHost = snackBarHost, + uri = uri, + showConfirmDialog = { show -> showRestoreDialog = show }, + confirmResult = confirmResult + ) + } + } + } + } + } + + @Composable + fun rememberAllowlistBackupLauncher( + context: Context, + snackBarHost: SnackbarHostState, + scope: CoroutineScope = rememberCoroutineScope() + ) = rememberLauncherForActivityResult( + contract = ActivityResultContracts.StartActivityForResult() + ) { result -> + if (result.resultCode == Activity.RESULT_OK) { + result.data?.data?.let { uri -> + scope.launch { + backupAllowlist(context, snackBarHost, uri) + } + } + } + } + + @Composable + fun rememberAllowlistRestoreLauncher( + context: Context, + snackBarHost: SnackbarHostState, + scope: CoroutineScope = rememberCoroutineScope() + ): ActivityResultLauncher { + var showAllowlistRestoreDialog by remember { mutableStateOf(false) } + var allowlistRestoreConfirmResult by remember { + mutableStateOf?>( + null + ) + } + + // 显示允许列表恢复确认对话框 + AllowlistRestoreConfirmationDialog( + showDialog = showAllowlistRestoreDialog, + onConfirm = { + showAllowlistRestoreDialog = false + allowlistRestoreConfirmResult?.complete(true) + }, + onDismiss = { + showAllowlistRestoreDialog = false + allowlistRestoreConfirmResult?.complete(false) + } + ) + + return rememberLauncherForActivityResult( + contract = ActivityResultContracts.StartActivityForResult() + ) { result -> + if (result.resultCode == Activity.RESULT_OK) { + result.data?.data?.let { uri -> + scope.launch { + val confirmResult = CompletableDeferred() + allowlistRestoreConfirmResult = confirmResult + + restoreAllowlist( + context = context, + snackBarHost = snackBarHost, + uri = uri, + showConfirmDialog = { show -> showAllowlistRestoreDialog = show }, + confirmResult = confirmResult + ) + } + } + } + } + } + + fun createBackupIntent(): Intent { + return Intent(Intent.ACTION_CREATE_DOCUMENT).apply { + addCategory(Intent.CATEGORY_OPENABLE) + type = "application/zip" + val timestamp = SimpleDateFormat("yyyyMMdd_HHmmss", Locale.getDefault()).format(Date()) + putExtra(Intent.EXTRA_TITLE, "modules_backup_$timestamp.zip") + } + } + + fun createRestoreIntent(): Intent { + return Intent(Intent.ACTION_OPEN_DOCUMENT).apply { + addCategory(Intent.CATEGORY_OPENABLE) + type = "application/zip" + } + } + + fun createAllowlistBackupIntent(): Intent { + return Intent(Intent.ACTION_CREATE_DOCUMENT).apply { + addCategory(Intent.CATEGORY_OPENABLE) + type = "application/octet-stream" + val timestamp = SimpleDateFormat("yyyyMMdd_HHmmss", Locale.getDefault()).format(Date()) + putExtra(Intent.EXTRA_TITLE, "ksu_allowlist_backup_$timestamp.dat") + } + } + + fun createAllowlistRestoreIntent(): Intent { + return Intent(Intent.ACTION_OPEN_DOCUMENT).apply { + addCategory(Intent.CATEGORY_OPENABLE) + type = "application/octet-stream" + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/util/module/ModuleUtils.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/util/module/ModuleUtils.kt new file mode 100644 index 0000000..5113b4a --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/util/module/ModuleUtils.kt @@ -0,0 +1,139 @@ +package com.sukisu.ultra.ui.util.module + +import android.content.Context +import android.content.Intent +import android.net.Uri +import android.util.Log +import com.sukisu.ultra.R +import java.io.BufferedReader +import java.io.IOException +import java.io.InputStreamReader +import java.nio.charset.StandardCharsets +import java.util.zip.ZipInputStream + +object ModuleUtils { + private const val TAG = "ModuleUtils" + + fun extractModuleName(context: Context, uri: Uri): String { + if (uri == Uri.EMPTY) { + Log.e(TAG, "The supplied URI is empty") + return context.getString(R.string.unknown_module) + } + + return try { + Log.d(TAG, "Start extracting module names from URIs: $uri") + + // 从URI路径中提取文件名 + val fileName = uri.lastPathSegment?.let { path -> + val lastSlash = path.lastIndexOf('/') + if (lastSlash != -1 && lastSlash < path.length - 1) { + path.substring(lastSlash + 1) + } else { + path + } + }?.removeSuffix(".zip") ?: context.getString(R.string.unknown_module) + + val formattedFileName = fileName.replace(Regex("[^a-zA-Z0-9\\s\\-_.@()\\u4e00-\\u9fa5]"), "").trim() + var moduleName = formattedFileName + + try { + // 打开ZIP文件输入流 + val inputStream = context.contentResolver.openInputStream(uri) + if (inputStream == null) { + Log.e(TAG, "Unable to get input stream from URI: $uri") + return formattedFileName + } + + val zipInputStream = ZipInputStream(inputStream) + var entry = zipInputStream.nextEntry + + // 遍历ZIP文件中的条目,查找module.prop文件 + while (entry != null) { + if (entry.name == "module.prop") { + val reader = BufferedReader(InputStreamReader(zipInputStream, StandardCharsets.UTF_8)) + var line: String? + while (reader.readLine().also { line = it } != null) { + if (line?.startsWith("name=") == true) { + moduleName = line.substringAfter("=") + moduleName = moduleName.replace(Regex("[^a-zA-Z0-9\\s\\-_.@()\\u4e00-\\u9fa5]"), "").trim() + break + } + } + break + } + entry = zipInputStream.nextEntry + } + zipInputStream.close() + Log.d(TAG, "Successfully extracted module name: $moduleName") + moduleName + } catch (e: IOException) { + Log.e(TAG, "Error reading ZIP file: ${e.message}") + formattedFileName + } + } catch (e: Exception) { + Log.e(TAG, "Exception when extracting module name: ${e.message}") + context.getString(R.string.unknown_module) + } + } + + // 验证URI是否有效并可访问 + fun isUriAccessible(context: Context, uri: Uri): Boolean { + if (uri == Uri.EMPTY) return false + + return try { + val inputStream = context.contentResolver.openInputStream(uri) + inputStream?.close() + inputStream != null + } catch (e: Exception) { + Log.e(TAG, "The URI is inaccessible: $uri, Error: ${e.message}") + false + } + } + + // 获取URI的持久权限 + fun takePersistableUriPermission(context: Context, uri: Uri) { + try { + val flags = Intent.FLAG_GRANT_READ_URI_PERMISSION + context.contentResolver.takePersistableUriPermission(uri, flags) + Log.d(TAG, "Persistent permissions for URIs have been obtained: $uri") + } catch (e: Exception) { + Log.e(TAG, "Unable to get persistent permissions on URIs: $uri, Error: ${e.message}") + } + } + + fun extractModuleId(context: Context, uri: Uri): String? { + if (uri == Uri.EMPTY) { + return null + } + + return try { + + val inputStream = context.contentResolver.openInputStream(uri) ?: return null + + val zipInputStream = ZipInputStream(inputStream) + var entry = zipInputStream.nextEntry + var moduleId: String? = null + + // 遍历ZIP文件中的条目,查找module.prop文件 + while (entry != null) { + if (entry.name == "module.prop") { + val reader = BufferedReader(InputStreamReader(zipInputStream, StandardCharsets.UTF_8)) + var line: String? + while (reader.readLine().also { line = it } != null) { + if (line?.startsWith("id=") == true) { + moduleId = line.substringAfter("=").trim() + break + } + } + break + } + entry = zipInputStream.nextEntry + } + zipInputStream.close() + moduleId + } catch (e: Exception) { + Log.e(TAG, "提取模块ID时发生异常: ${e.message}", e) + null + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/util/module/ModuleVerificationManager.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/util/module/ModuleVerificationManager.kt new file mode 100644 index 0000000..4194829 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/util/module/ModuleVerificationManager.kt @@ -0,0 +1,233 @@ +package com.sukisu.ultra.ui.util.module + +import android.content.Context +import android.net.Uri +import android.util.Log +import com.sukisu.ultra.Natives +import com.sukisu.ultra.ui.util.getRootShell +import java.io.File +import java.io.FileOutputStream + +/** + * @author ShirkNeko + * @date 2025/8/3 + */ + +// 模块签名验证工具类 +object ModuleSignatureUtils { + private const val TAG = "ModuleSignatureUtils" + + fun verifyModuleSignature(context: Context, moduleUri: Uri): Boolean { + return try { + // 创建临时文件 + val tempFile = File(context.cacheDir, "temp_module_${System.currentTimeMillis()}.zip") + + // 复制URI内容到临时文件 + context.contentResolver.openInputStream(moduleUri)?.use { inputStream -> + FileOutputStream(tempFile).use { outputStream -> + inputStream.copyTo(outputStream) + } + } + + // 调用native方法验证签名 + val isVerified = Natives.verifyModuleSignature(tempFile.absolutePath) + + // 清理临时文件 + tempFile.delete() + + Log.d(TAG, "Module signature verification result: $isVerified") + isVerified + } catch (e: Exception) { + Log.e(TAG, "Error verifying module signature", e) + false + } + } + +} + +// 验证模块签名 +fun verifyModuleSignature(context: Context, moduleUri: Uri): Boolean { + return ModuleSignatureUtils.verifyModuleSignature(context, moduleUri) +} + +object ModuleOperationUtils { + private const val TAG = "ModuleOperationUtils" + + fun handleModuleInstallSuccess(context: Context, moduleUri: Uri, isSignatureVerified: Boolean) { + if (!isSignatureVerified) { + Log.d(TAG, "模块签名未验证,跳过创建验证标志") + return + } + + try { + // 从ZIP文件提取模块ID + val moduleId = ModuleUtils.extractModuleId(context, moduleUri) + if (moduleId == null) { + Log.e(TAG, "无法提取模块ID,无法创建验证标志") + return + } + + // 创建验证标志文件 + val success = ModuleVerificationManager.createVerificationFlag(moduleId) + if (success) { + Log.d(TAG, "模块 $moduleId 验证标志创建成功") + } else { + Log.e(TAG, "模块 $moduleId 验证标志创建失败") + } + } catch (e: Exception) { + Log.e(TAG, "处理模块安装成功时发生异常", e) + } + } + + fun handleModuleUninstall(moduleId: String) { + try { + val success = ModuleVerificationManager.removeVerificationFlag(moduleId) + if (success) { + Log.d(TAG, "模块 $moduleId 验证标志移除成功") + } else { + Log.d(TAG, "模块 $moduleId 验证标志移除失败或不存在") + } + } catch (e: Exception) { + Log.e(TAG, "处理模块卸载时发生异常: $moduleId", e) + } + } + fun handleModuleUpdate(context: Context, moduleUri: Uri, isSignatureVerified: Boolean) { + try { + val moduleId = ModuleUtils.extractModuleId(context, moduleUri) + if (moduleId == null) { + Log.e(TAG, "无法提取模块ID,无法处理验证标志") + return + } + + if (isSignatureVerified) { + // 签名验证通过,创建或更新验证标志 + val success = ModuleVerificationManager.createVerificationFlag(moduleId) + if (success) { + Log.d(TAG, "模块 $moduleId 更新后验证标志已更新") + } else { + Log.e(TAG, "模块 $moduleId 更新后验证标志更新失败") + } + } else { + // 签名验证失败,移除验证标志 + ModuleVerificationManager.removeVerificationFlag(moduleId) + Log.d(TAG, "模块 $moduleId 更新后签名未验证,验证标志已移除") + } + } catch (e: Exception) { + Log.e(TAG, "处理模块更新时发生异常", e) + } + } +} + +object ModuleVerificationManager { + private const val TAG = "ModuleVerificationManager" + private const val VERIFICATION_FLAGS_DIR = "/data/adb/ksu/verified_modules" + + // 为指定模块创建验证标志文件 + fun createVerificationFlag(moduleId: String): Boolean { + return try { + val shell = getRootShell() + val flagFilePath = "$VERIFICATION_FLAGS_DIR/$moduleId" + + // 确保目录存在 + val createDirCommand = "mkdir -p '$VERIFICATION_FLAGS_DIR'" + shell.newJob().add(createDirCommand).exec() + + // 创建验证标志文件,写入验证时间戳 + val timestamp = System.currentTimeMillis() + val command = "echo '$timestamp' > '$flagFilePath'" + + val result = shell.newJob().add(command).exec() + + if (result.isSuccess) { + Log.d(TAG, "验证标志文件创建成功: $flagFilePath") + true + } else { + Log.e(TAG, "验证标志文件创建失败: $moduleId") + false + } + } catch (e: Exception) { + Log.e(TAG, "创建验证标志文件时发生异常: $moduleId", e) + false + } + } + + fun removeVerificationFlag(moduleId: String): Boolean { + return try { + val shell = getRootShell() + val flagFilePath = "$VERIFICATION_FLAGS_DIR/$moduleId" + + val command = "rm -f '$flagFilePath'" + val result = shell.newJob().add(command).exec() + + if (result.isSuccess) { + Log.d(TAG, "验证标志文件移除成功: $flagFilePath") + true + } else { + Log.e(TAG, "验证标志文件移除失败: $moduleId") + false + } + } catch (e: Exception) { + Log.e(TAG, "移除验证标志文件时发生异常: $moduleId", e) + false + } + } + + fun getVerificationTimestamp(moduleId: String): Long { + return try { + val shell = getRootShell() + val flagFilePath = "$VERIFICATION_FLAGS_DIR/$moduleId" + + val command = "cat '$flagFilePath' 2>/dev/null || echo '0'" + val result = shell.newJob().add(command).to(ArrayList(), null).exec() + + if (result.isSuccess && result.out.isNotEmpty()) { + val timestampStr = result.out.firstOrNull()?.trim() ?: "0" + timestampStr.toLongOrNull() ?: 0L + } else { + 0L + } + } catch (e: Exception) { + Log.e(TAG, "获取验证时间戳时发生异常: $moduleId", e) + 0L + } + } + + fun batchCheckVerificationStatus(moduleIds: List): Map { + if (moduleIds.isEmpty()) return emptyMap() + + return try { + val shell = getRootShell() + val result = mutableMapOf() + + // 确保目录存在 + val createDirCommand = "mkdir -p '$VERIFICATION_FLAGS_DIR'" + shell.newJob().add(createDirCommand).exec() + + // 批量检查所有模块的验证标志文件 + val commands = moduleIds.map { moduleId -> + "test -f '$VERIFICATION_FLAGS_DIR/$moduleId' && echo '$moduleId:true' || echo '$moduleId:false'" + } + + val command = commands.joinToString(" && ") + val shellResult = shell.newJob().add(command).to(ArrayList(), null).exec() + + if (shellResult.isSuccess) { + shellResult.out.forEach { line -> + val parts = line.split(":") + if (parts.size == 2) { + val moduleId = parts[0] + val isVerified = parts[1] == "true" + result[moduleId] = isVerified + } + } + } + + Log.d(TAG, "批量验证检查完成,共检查 ${moduleIds.size} 个模块") + result + } catch (e: Exception) { + Log.e(TAG, "批量检查验证状态时发生异常", e) + // 返回默认值,所有模块都标记为未验证 + moduleIds.associateWith { false } + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/HomeViewModel.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/HomeViewModel.kt new file mode 100644 index 0000000..72e069f --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/HomeViewModel.kt @@ -0,0 +1,590 @@ +package com.sukisu.ultra.ui.viewmodel + +import android.annotation.SuppressLint +import android.content.Context +import android.os.Build +import android.system.Os +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.setValue +import androidx.lifecycle.ViewModel +import androidx.lifecycle.viewModelScope +import com.sukisu.ultra.KernelVersion +import com.sukisu.ultra.Natives +import com.sukisu.ultra.getKernelVersion +import com.sukisu.ultra.ksuApp +import com.sukisu.ultra.ui.util.* +import com.sukisu.ultra.ui.util.module.LatestVersionInfo +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.Job +import kotlinx.coroutines.delay +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.flow.StateFlow + +class HomeViewModel : ViewModel() { + + // 系统状态 + data class SystemStatus( + val isManager: Boolean = false, + val ksuVersion: Int? = null, + val ksuFullVersion : String? = null, + val lkmMode: Boolean? = null, + val kernelVersion: KernelVersion = getKernelVersion(), + val isRootAvailable: Boolean = false, + val isKpmConfigured: Boolean = false, + val requireNewKernel: Boolean = false + ) + + // 系统信息 + data class SystemInfo( + val kernelRelease: String = "", + val androidVersion: String = "", + val deviceModel: String = "", + val managerVersion: Pair = Pair("", 0L), + val seLinuxStatus: String = "", + val kpmVersion: String = "", + val suSFSStatus: String = "", + val suSFSVersion: String = "", + val suSFSVariant: String = "", + val suSFSFeatures: String = "", + val superuserCount: Int = 0, + val moduleCount: Int = 0, + val kpmModuleCount: Int = 0, + val managersList: Natives.ManagersList? = null, + val isDynamicSignEnabled: Boolean = false, + val zygiskImplement: String = "" + ) + + // 状态变量 + var systemStatus by mutableStateOf(SystemStatus()) + private set + + var systemInfo by mutableStateOf(SystemInfo()) + private set + + var latestVersionInfo by mutableStateOf(LatestVersionInfo()) + private set + + var isSimpleMode by mutableStateOf(false) + private set + var isKernelSimpleMode by mutableStateOf(false) + private set + var isHideVersion by mutableStateOf(false) + private set + var isHideOtherInfo by mutableStateOf(false) + private set + var isHideSusfsStatus by mutableStateOf(false) + private set + var isHideZygiskImplement by mutableStateOf(false) + private set + var isHideLinkCard by mutableStateOf(false) + private set + var showKpmInfo by mutableStateOf(false) + private set + + var isCoreDataLoaded by mutableStateOf(false) + private set + var isExtendedDataLoaded by mutableStateOf(false) + private set + var isRefreshing by mutableStateOf(false) + private set + + // 数据刷新状态流,用于监听变化 + private val _dataRefreshTrigger = MutableStateFlow(0L) + val dataRefreshTrigger: StateFlow = _dataRefreshTrigger + + private var loadingJobs = mutableListOf() + private var lastRefreshTime = 0L + private val refreshCooldown = 2000L + + fun loadUserSettings(context: Context) { + viewModelScope.launch(Dispatchers.IO) { + val settingsPrefs = context.getSharedPreferences("settings", Context.MODE_PRIVATE) + isSimpleMode = settingsPrefs.getBoolean("is_simple_mode", false) + isKernelSimpleMode = settingsPrefs.getBoolean("is_kernel_simple_mode", false) + isHideVersion = settingsPrefs.getBoolean("is_hide_version", false) + isHideOtherInfo = settingsPrefs.getBoolean("is_hide_other_info", false) + isHideSusfsStatus = settingsPrefs.getBoolean("is_hide_susfs_status", false) + isHideLinkCard = settingsPrefs.getBoolean("is_hide_link_card", false) + isHideZygiskImplement = settingsPrefs.getBoolean("is_hide_zygisk_Implement", false) + showKpmInfo = settingsPrefs.getBoolean("show_kpm_info", false) + } + } + + fun loadCoreData() { + if (isCoreDataLoaded) return + + val job = viewModelScope.launch(Dispatchers.IO) { + try { + val kernelVersion = getKernelVersion() + val isManager = try { + Natives.isManager + } catch (_: Exception) { + false + } + + val ksuVersion = if (isManager) Natives.version else null + + val fullVersion = try { + Natives.getFullVersion() + } catch (_: Exception) { + "Unknown" + } + + val ksuFullVersion = if (isKernelSimpleMode) { + try { + val startIndex = fullVersion.indexOf('v') + if (startIndex >= 0) { + val endIndex = fullVersion.indexOf('-', startIndex) + val versionStr = if (endIndex > startIndex) { + fullVersion.substring(startIndex, endIndex) + } else { + fullVersion.substring(startIndex) + } + val numericVersion = "v" + (Regex("""\d+(\.\d+)*""").find(versionStr)?.value ?: versionStr) + numericVersion + } else { + fullVersion + } + } catch (_: Exception) { + fullVersion + } + } else { + fullVersion + } + + val lkmMode = ksuVersion?.let { + if (kernelVersion.isGKI()) Natives.isLkmMode else null + } + + val isRootAvailable = try { + rootAvailable() + } catch (_: Exception) { + false + } + + val isKpmConfigured = try { + Natives.isKPMEnabled() + } catch (_: Exception) { + false + } + + val requireNewKernel = try { + isManager && Natives.requireNewKernel() + } catch (_: Exception) { + false + } + + systemStatus = SystemStatus( + isManager = isManager, + ksuVersion = ksuVersion, + ksuFullVersion = ksuFullVersion, + lkmMode = lkmMode, + kernelVersion = kernelVersion, + isRootAvailable = isRootAvailable, + isKpmConfigured = isKpmConfigured, + requireNewKernel = requireNewKernel + ) + + isCoreDataLoaded = true + } catch (_: Exception) { + } + } + loadingJobs.add(job) + } + + fun loadExtendedData(context: Context) { + if (isExtendedDataLoaded) return + + val job = viewModelScope.launch(Dispatchers.IO) { + try { + // 分批加载 + delay(50) + + val basicInfo = loadBasicSystemInfo(context) + systemInfo = systemInfo.copy( + kernelRelease = basicInfo.first, + androidVersion = basicInfo.second, + deviceModel = basicInfo.third, + managerVersion = basicInfo.fourth, + seLinuxStatus = basicInfo.fifth + ) + + delay(100) + + // 加载模块信息 + if (!isSimpleMode) { + val moduleInfo = loadModuleInfo() + systemInfo = systemInfo.copy( + kpmVersion = moduleInfo.first, + superuserCount = moduleInfo.second, + moduleCount = moduleInfo.third, + kpmModuleCount = moduleInfo.fourth, + zygiskImplement = moduleInfo.fifth + ) + } + + delay(100) + + // 加载SuSFS信息 + if (!isHideSusfsStatus) { + val suSFSInfo = loadSuSFSInfo() + systemInfo = systemInfo.copy( + suSFSStatus = suSFSInfo.first, + suSFSVersion = suSFSInfo.second, + suSFSVariant = suSFSInfo.third, + suSFSFeatures = suSFSInfo.fourth, + ) + } + + delay(100) + + // 加载管理器列表 + val managerInfo = loadManagerInfo() + systemInfo = systemInfo.copy( + managersList = managerInfo.first, + isDynamicSignEnabled = managerInfo.second + ) + + isExtendedDataLoaded = true + } catch (_: Exception) { + // 静默处理错误 + } + } + loadingJobs.add(job) + } + + fun refreshData(context: Context, forceRefresh: Boolean = false) { + val currentTime = System.currentTimeMillis() + + // 如果不是强制刷新,检查冷却时间 + if (!forceRefresh && currentTime - lastRefreshTime < refreshCooldown) { + return + } + + lastRefreshTime = currentTime + + viewModelScope.launch { + isRefreshing = true + + try { + // 取消正在进行的加载任务 + loadingJobs.forEach { it.cancel() } + loadingJobs.clear() + + // 重置状态 + isCoreDataLoaded = false + isExtendedDataLoaded = false + + // 触发数据刷新状态流 + _dataRefreshTrigger.value = currentTime + + // 重新加载用户设置 + loadUserSettings(context) + + // 重新加载核心数据 + loadCoreData() + delay(100) + + // 重新加载扩展数据 + loadExtendedData(context) + + // 检查更新 + val settingsPrefs = context.getSharedPreferences("settings", Context.MODE_PRIVATE) + val checkUpdate = settingsPrefs.getBoolean("check_update", true) + if (checkUpdate) { + try { + val newVersionInfo = withContext(Dispatchers.IO) { + checkNewVersion() + } + latestVersionInfo = newVersionInfo + } catch (_: Exception) { + } + } + } catch (_: Exception) { + // 静默处理错误 + } finally { + isRefreshing = false + } + } + } + + // 手动触发刷新(下拉刷新使用) + fun onPullRefresh(context: Context) { + refreshData(context, forceRefresh = true) + } + + // 自动刷新数据(当检测到变化时) + fun autoRefreshIfNeeded(context: Context) { + viewModelScope.launch { + // 检查是否需要刷新数据 + val needsRefresh = checkIfDataNeedsRefresh() + if (needsRefresh) { + refreshData(context) + } + } + } + + private suspend fun checkIfDataNeedsRefresh(): Boolean { + return withContext(Dispatchers.IO) { + try { + // 检查KSU状态是否发生变化 + val currentKsuVersion = try { + if (Natives.isManager) { + Natives.version + } else null + } catch (_: Exception) { + null + } + + // 如果KSU版本发生变化,需要刷新 + if (currentKsuVersion != systemStatus.ksuVersion) { + return@withContext true + } + + // 检查模块数量是否发生变化 + val currentModuleCount = try { + getModuleCount() + } catch (_: Exception) { + systemInfo.moduleCount + } + + if (currentModuleCount != systemInfo.moduleCount) { + return@withContext true + } + + false + } catch (_: Exception) { + false + } + } + } + + private suspend fun loadBasicSystemInfo(context: Context): Tuple5, String> { + return withContext(Dispatchers.IO) { + val uname = try { + Os.uname() + } catch (_: Exception) { + null + } + + val deviceModel = try { + getDeviceModel() + } catch (_: Exception) { + "Unknown" + } + + val managerVersion = try { + getManagerVersion(context) + } catch (_: Exception) { + Pair("Unknown", 0L) + } + + val seLinuxStatus = try { + getSELinuxStatus(ksuApp.applicationContext) + } catch (_: Exception) { + "Unknown" + } + + Tuple5( + uname?.release ?: "Unknown", + Build.VERSION.RELEASE ?: "Unknown", + deviceModel, + managerVersion, + seLinuxStatus + ) + } + } + + private suspend fun loadModuleInfo(): Tuple5 { + return withContext(Dispatchers.IO) { + val kpmVersion = try { + getKpmVersion() + } catch (_: Exception) { + "Unknown" + } + + val superuserCount = try { + getSuperuserCount() + } catch (_: Exception) { + 0 + } + + val moduleCount = try { + getModuleCount() + } catch (_: Exception) { + 0 + } + + val kpmModuleCount = try { + getKpmModuleCount() + } catch (_: Exception) { + 0 + } + + val zygiskImplement = try { + getZygiskImplement() + } catch (_: Exception) { + "None" + } + + Tuple5(kpmVersion, superuserCount, moduleCount, kpmModuleCount, zygiskImplement) + } + } + + private suspend fun loadSuSFSInfo(): Tuple4 { + return withContext(Dispatchers.IO) { + val suSFS = try { + val rawFeature = getSuSFSFeatures() + if (rawFeature.isNotEmpty() && !rawFeature.startsWith("[-]")) { + "Supported" + } else { + rawFeature + } + } catch (_: Exception) { + "Unknown" + } + + if (suSFS != "Supported") { + return@withContext Tuple4(suSFS, "", "", "") + } + + val suSFSVersion = try { + getSuSFSVersion() + } catch (_: Exception) { + "" + } + + if (suSFSVersion.isEmpty()) { + return@withContext Tuple4(suSFS, "", "", "") + } + + val suSFSVariant = try { + getSuSFSVariant() + } catch (_: Exception) { + "" + } + + val suSFSFeatures = try { + getSuSFSFeatures() + } catch (_: Exception) { + "" + } + + Tuple4(suSFS, suSFSVersion, suSFSVariant, suSFSFeatures) + } + } + + private suspend fun loadManagerInfo(): Pair { + return withContext(Dispatchers.IO) { + val dynamicSignConfig = try { + Natives.getDynamicManager() + } catch (_: Exception) { + null + } + + val isDynamicSignEnabled = try { + dynamicSignConfig?.isValid() == true + } catch (_: Exception) { + false + } + + val managersList = if (isDynamicSignEnabled) { + try { + Natives.getManagersList() + } catch (_: Exception) { + null + } + } else { + null + } + + Pair(managersList, isDynamicSignEnabled) + } + } + + @SuppressLint("PrivateApi") + private fun getDeviceModel(): String { + return try { + val systemProperties = Class.forName("android.os.SystemProperties") + val getMethod = systemProperties.getMethod("get", String::class.java, String::class.java) + val marketNameKeys = listOf( + "ro.product.marketname", + "ro.vendor.oplus.market.name", + "ro.vivo.market.name", + "ro.config.marketing_name" + ) + var result = getDeviceInfo() + for (key in marketNameKeys) { + try { + val marketName = getMethod.invoke(null, key, "") as String + if (marketName.isNotEmpty()) { + result = marketName + break + } + } catch (_: Exception) { + } + } + result + } catch ( + + _: Exception) { + getDeviceInfo() + } + } + + private fun getDeviceInfo(): String { + return try { + var manufacturer = Build.MANUFACTURER ?: "Unknown" + manufacturer = manufacturer[0].uppercaseChar().toString() + manufacturer.substring(1) + + val brand = Build.BRAND ?: "" + if (brand.isNotEmpty() && !brand.equals(Build.MANUFACTURER, ignoreCase = true)) { + manufacturer += " " + brand[0].uppercaseChar() + brand.substring(1) + } + + val model = Build.MODEL ?: "" + if (model.isNotEmpty()) { + manufacturer += " $model " + } + + manufacturer + } catch (_: Exception) { + "Unknown Device" + } + } + + private fun getManagerVersion(context: Context): Pair { + return try { + val packageInfo = context.packageManager.getPackageInfo(context.packageName, 0) + val versionCode = androidx.core.content.pm.PackageInfoCompat.getLongVersionCode(packageInfo) + val versionName = packageInfo.versionName ?: "Unknown" + Pair(versionName, versionCode) + } catch (_: Exception) { + Pair("Unknown", 0L) + } + } + + data class Tuple5( + val first: T1, + val second: T2, + val third: T3, + val fourth: T4, + val fifth: T5 + ) + + data class Tuple4( + val first: T1, + val second: T2, + val third: T3, + val fourth: T4 + ) + + override fun onCleared() { + super.onCleared() + loadingJobs.forEach { it.cancel() } + loadingJobs.clear() + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/KpmViewModel.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/KpmViewModel.kt new file mode 100644 index 0000000..36c5b43 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/KpmViewModel.kt @@ -0,0 +1,160 @@ +package com.sukisu.ultra.ui.viewmodel + +import android.util.Log +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.setValue +import androidx.lifecycle.ViewModel +import androidx.lifecycle.viewModelScope +import com.sukisu.ultra.ui.util.* +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext + +/** + * @author ShirkNeko + * @date 2025/5/31. + */ +class KpmViewModel : ViewModel() { + var moduleList by mutableStateOf(emptyList()) + private set + + var search by mutableStateOf("") + internal set + + var isRefreshing by mutableStateOf(false) + private set + + var currentModuleDetail by mutableStateOf("") + private set + + fun fetchModuleList() { + viewModelScope.launch { + isRefreshing = true + try { + val moduleCount = getKpmModuleCount() + Log.d("KsuCli", "Module count: $moduleCount") + + moduleList = getAllKpmModuleInfo() + + // 获取 KPM 版本信息 + val kpmVersion = getKpmVersion() + Log.d("KsuCli", "KPM Version: $kpmVersion") + } catch (e: Exception) { + Log.e("KsuCli", "获取模块列表失败", e) + } finally { + isRefreshing = false + } + } + } + + private fun getAllKpmModuleInfo(): List { + val result = mutableListOf() + try { + val str = listKpmModules() + val moduleNames = str + .split("\n") + .filter { it.isNotBlank() } + + for (name in moduleNames) { + try { + val moduleInfo = parseModuleInfo(name) + moduleInfo?.let { result.add(it) } + } catch (e: Exception) { + Log.e("KsuCli", "Error processing module $name", e) + } + } + } catch (e: Exception) { + Log.e("KsuCli", "Failed to get module list", e) + } + return result + } + + private fun parseModuleInfo(name: String): ModuleInfo? { + val info = getKpmModuleInfo(name) + if (info.isBlank()) return null + + val properties = info.lineSequence() + .filter { line -> + val trimmed = line.trim() + trimmed.isNotEmpty() && !trimmed.startsWith("#") + } + .mapNotNull { line -> + line.split("=", limit = 2).let { parts -> + when (parts.size) { + 2 -> parts[0].trim() to parts[1].trim() + 1 -> parts[0].trim() to "" + else -> null + } + } + } + .toMap() + + return ModuleInfo( + id = name, + name = properties["name"] ?: name, + version = properties["version"] ?: "", + author = properties["author"] ?: "", + description = properties["description"] ?: "", + args = properties["args"] ?: "", + enabled = true, + hasAction = true + ) + } + + fun loadModuleDetail(moduleId: String) { + viewModelScope.launch { + try { + currentModuleDetail = withContext(Dispatchers.IO) { + getKpmModuleInfo(moduleId) + } + Log.d("KsuCli", "Module detail loaded: $currentModuleDetail") + } catch (e: Exception) { + Log.e("KsuCli", "Failed to load module detail", e) + currentModuleDetail = "Error: ${e.message}" + } + } + } + + var showInputDialog by mutableStateOf(false) + private set + + var selectedModuleId by mutableStateOf(null) + private set + + var inputArgs by mutableStateOf("") + private set + + fun showInputDialog(moduleId: String) { + selectedModuleId = moduleId + showInputDialog = true + } + + fun hideInputDialog() { + showInputDialog = false + selectedModuleId = null + inputArgs = "" + } + + fun updateInputArgs(args: String) { + inputArgs = args + } + + fun executeControl(): Int { + val moduleId = selectedModuleId ?: return -1 + val result = controlKpmModule(moduleId, inputArgs) + hideInputDialog() + return result + } + + data class ModuleInfo( + val id: String, + val name: String, + val version: String, + val author: String, + val description: String, + val args: String, + val enabled: Boolean, + val hasAction: Boolean + ) +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/ModuleViewModel.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/ModuleViewModel.kt new file mode 100644 index 0000000..7a5fd9b --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/ModuleViewModel.kt @@ -0,0 +1,504 @@ +package com.sukisu.ultra.ui.viewmodel + +import android.content.Context +import android.os.SystemClock +import android.util.Log +import androidx.compose.runtime.derivedStateOf +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.setValue +import androidx.lifecycle.ViewModel +import androidx.lifecycle.viewModelScope +import com.dergoogler.mmrl.platform.model.ModuleConfig +import com.dergoogler.mmrl.platform.model.ModuleConfig.Companion.asModuleConfig +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.launch +import com.sukisu.ultra.ui.util.HanziToPinyin +import com.sukisu.ultra.ui.util.listModules +import com.sukisu.ultra.ui.util.getRootShell +import com.sukisu.ultra.ui.util.module.ModuleVerificationManager +import kotlinx.coroutines.withContext +import org.json.JSONArray +import org.json.JSONObject +import java.text.Collator +import java.text.DecimalFormat +import java.util.Locale +import java.util.concurrent.TimeUnit +import kotlin.math.log10 +import kotlin.math.pow +import androidx.core.content.edit + +/** + * @author ShirkNeko + * @date 2025/5/31. + */ +class ModuleViewModel : ViewModel() { + + companion object { + private const val TAG = "ModuleViewModel" + private var modules by mutableStateOf>(emptyList()) + private const val CUSTOM_USER_AGENT = "SukiSU-Ultra/2.0" + } + + // 模块大小缓存管理器 + private lateinit var moduleSizeCache: ModuleSizeCache + + fun initializeCache(context: Context) { + if (!::moduleSizeCache.isInitialized) { + moduleSizeCache = ModuleSizeCache(context) + } + } + + fun getModuleSize(dirId: String): String { + if (!::moduleSizeCache.isInitialized) { + return "0 KB" + } + val size = moduleSizeCache.getModuleSize(dirId) + return formatFileSize(size) + } + + /** + * 刷新所有模块的大小缓存 + * 只在安装、卸载、更新模块后调用 + */ + fun refreshModuleSizeCache() { + if (!::moduleSizeCache.isInitialized) return + + viewModelScope.launch(Dispatchers.IO) { + Log.d(TAG, "开始刷新模块大小缓存") + val currentModules = modules.map { it.dirId } + moduleSizeCache.refreshCache(currentModules) + Log.d(TAG, "模块大小缓存刷新完成") + } + } + + class ModuleInfo( + val id: String, + val name: String, + val author: String, + val version: String, + val versionCode: Int, + val description: String, + val enabled: Boolean, + val update: Boolean, + val remove: Boolean, + val updateJson: String, + val hasWebUi: Boolean, + val hasActionScript: Boolean, + val dirId: String, // real module id (dir name) + var config: ModuleConfig? = null, + var isVerified: Boolean = false, // 添加验证状态字段 + var verificationTimestamp: Long = 0L, // 添加验证时间戳 + ) + + var isRefreshing by mutableStateOf(false) + private set + var search by mutableStateOf("") + + var sortEnabledFirst by mutableStateOf(false) + var sortActionFirst by mutableStateOf(false) + val moduleList by derivedStateOf { + val comparator = + compareBy( + { if (sortEnabledFirst) !it.enabled else 0 }, + { if (sortActionFirst) !it.hasWebUi && !it.hasActionScript else 0 }, + ).thenBy(Collator.getInstance(Locale.getDefault()), ModuleInfo::id) + modules.filter { + it.id.contains(search, true) || it.name.contains(search, true) || HanziToPinyin.getInstance() + .toPinyinString(it.name)?.contains(search, true) == true + }.sortedWith(comparator).also { + isRefreshing = false + } + } + + var isNeedRefresh by mutableStateOf(false) + private set + + fun markNeedRefresh() { + isNeedRefresh = true + // 标记需要刷新时,同时刷新大小缓存 + refreshModuleSizeCache() + } + + fun fetchModuleList() { + viewModelScope.launch(Dispatchers.IO) { + isRefreshing = true + + val oldModuleList = modules + + val start = SystemClock.elapsedRealtime() + + kotlin.runCatching { + val result = listModules() + + Log.i(TAG, "result: $result") + + val array = JSONArray(result) + val moduleInfos = (0 until array.length()) + .asSequence() + .map { array.getJSONObject(it) } + .map { obj -> + ModuleInfo( + obj.getString("id"), + obj.optString("name"), + obj.optString("author", "Unknown"), + obj.optString("version", "Unknown"), + obj.getIntCompat("versionCode", 0), + obj.optString("description"), + obj.getBooleanCompat("enabled"), + obj.getBooleanCompat("update"), + obj.getBooleanCompat("remove"), + obj.optString("updateJson"), + obj.getBooleanCompat("web"), + obj.getBooleanCompat("action"), + obj.optString("dir_id", obj.getString("id")) + ) + }.toList() + + // 批量检查所有模块的验证状态 + val moduleIds = moduleInfos.map { it.dirId } + val verificationStatus = ModuleVerificationManager.batchCheckVerificationStatus(moduleIds) + + // 更新模块验证状态 + modules = moduleInfos.map { moduleInfo -> + val isVerified = verificationStatus[moduleInfo.dirId] ?: false + val verificationTimestamp = if (isVerified) { + ModuleVerificationManager.getVerificationTimestamp(moduleInfo.dirId) + } else { + 0L + } + + moduleInfo.copy( + isVerified = isVerified, + verificationTimestamp = verificationTimestamp + ) + } + + launch { + modules.forEach { module -> + withContext(Dispatchers.IO) { + try { + runCatching { + module.config = module.id.asModuleConfig + }.onFailure { e -> + Log.e(TAG, "Failed to load config from id for module ${module.id}", e) + } + if (module.config == null) { + runCatching { + module.config = module.name.asModuleConfig + }.onFailure { e -> + Log.e(TAG, "Failed to load config from name for module ${module.id}", e) + } + } + if (module.config == null) { + runCatching { + module.config = module.description.asModuleConfig + }.onFailure { e -> + Log.e(TAG, "Failed to load config from description for module ${module.id}", e) + } + } + if (module.config == null) { + module.config = ModuleConfig() + } + } catch (e: Exception) { + Log.e(TAG, "Failed to load any config for module ${module.id}", e) + module.config = ModuleConfig() + } + } + } + } + + // 首次加载模块列表时,初始化缓存 + if (::moduleSizeCache.isInitialized) { + val currentModules = modules.map { it.dirId } + moduleSizeCache.initializeCacheIfNeeded(currentModules) + } + + isNeedRefresh = false + }.onFailure { e -> + Log.e(TAG, "fetchModuleList: ", e) + isRefreshing = false + } + + // when both old and new is kotlin.collections.EmptyList + // moduleList update will don't trigger + if (oldModuleList === modules) { + isRefreshing = false + } + + Log.i(TAG, "load cost: ${SystemClock.elapsedRealtime() - start}, modules: $modules") + } + } + + private fun sanitizeVersionString(version: String): String { + return version.replace(Regex("[^a-zA-Z0-9.\\-_]"), "_") + } + + fun checkUpdate(m: ModuleInfo): Triple { + val empty = Triple("", "", "") + if (m.updateJson.isEmpty() || m.remove || m.update || !m.enabled) { + return empty + } + // download updateJson + val result = kotlin.runCatching { + val url = m.updateJson + Log.i(TAG, "checkUpdate url: $url") + + val client = okhttp3.OkHttpClient.Builder() + .connectTimeout(15, TimeUnit.SECONDS) + .readTimeout(30, TimeUnit.SECONDS) + .writeTimeout(15, TimeUnit.SECONDS) + .build() + + val request = okhttp3.Request.Builder() + .url(url) + .header("User-Agent", CUSTOM_USER_AGENT) + .build() + + val response = client.newCall(request).execute() + + Log.d(TAG, "checkUpdate code: ${response.code}") + if (response.isSuccessful) { + response.body?.string() ?: "" + } else { + Log.d(TAG, "checkUpdate failed: ${response.message}") + "" + } + }.getOrElse { e -> + Log.e(TAG, "checkUpdate exception", e) + "" + } + + Log.i(TAG, "checkUpdate result: $result") + + if (result.isEmpty()) { + return empty + } + + val updateJson = kotlin.runCatching { + JSONObject(result) + }.getOrNull() ?: return empty + + var version = updateJson.optString("version", "") + version = sanitizeVersionString(version) + val versionCode = updateJson.optInt("versionCode", 0) + val zipUrl = updateJson.optString("zipUrl", "") + val changelog = updateJson.optString("changelog", "") + if (versionCode <= m.versionCode || zipUrl.isEmpty()) { + return empty + } + + return Triple(zipUrl, version, changelog) + } +} + +fun ModuleViewModel.ModuleInfo.copy( + id: String = this.id, + name: String = this.name, + author: String = this.author, + version: String = this.version, + versionCode: Int = this.versionCode, + description: String = this.description, + enabled: Boolean = this.enabled, + update: Boolean = this.update, + remove: Boolean = this.remove, + updateJson: String = this.updateJson, + hasWebUi: Boolean = this.hasWebUi, + hasActionScript: Boolean = this.hasActionScript, + dirId: String = this.dirId, + config: ModuleConfig? = this.config, + isVerified: Boolean = this.isVerified, + verificationTimestamp: Long = this.verificationTimestamp +): ModuleViewModel.ModuleInfo { + return ModuleViewModel.ModuleInfo( + id, name, author, version, versionCode, description, + enabled, update, remove, updateJson, hasWebUi, hasActionScript, + dirId, config, isVerified, verificationTimestamp + ) +} + +/** + * 模块大小缓存管理器 + */ +class ModuleSizeCache(context: Context) { + companion object { + private const val TAG = "ModuleSizeCache" + private const val CACHE_PREFS_NAME = "module_size_cache" + private const val CACHE_VERSION_KEY = "cache_version" + private const val CACHE_INITIALIZED_KEY = "cache_initialized" + private const val CURRENT_CACHE_VERSION = 1 + } + + private val cachePrefs = context.getSharedPreferences(CACHE_PREFS_NAME, Context.MODE_PRIVATE) + private val sizeCache = mutableMapOf() + + init { + loadCacheFromPrefs() + } + + /** + * 从SharedPreferences加载缓存 + */ + private fun loadCacheFromPrefs() { + try { + val cacheVersion = cachePrefs.getInt(CACHE_VERSION_KEY, 0) + if (cacheVersion != CURRENT_CACHE_VERSION) { + Log.d(TAG, "缓存版本不匹配,清空缓存") + clearCache() + return + } + + val allEntries = cachePrefs.all + for ((key, value) in allEntries) { + if (key != CACHE_VERSION_KEY && key != CACHE_INITIALIZED_KEY && value is Long) { + sizeCache[key] = value + } + } + Log.d(TAG, "从缓存加载了 ${sizeCache.size} 个模块大小数据") + } catch (e: Exception) { + Log.e(TAG, "加载缓存失败", e) + clearCache() + } + } + + /** + * 保存缓存到SharedPreferences + */ + private fun saveCacheToPrefs() { + try { + cachePrefs.edit { + putInt(CACHE_VERSION_KEY, CURRENT_CACHE_VERSION) + putBoolean(CACHE_INITIALIZED_KEY, true) + + for ((dirId, size) in sizeCache) { + putLong(dirId, size) + } + + } + Log.d(TAG, "保存了 ${sizeCache.size} 个模块大小到缓存") + } catch (e: Exception) { + Log.e(TAG, "保存缓存失败", e) + } + } + + /** + * 获取模块大小(从缓存) + */ + fun getModuleSize(dirId: String): Long { + return sizeCache[dirId] ?: 0L + } + + /** + * 检查缓存是否已初始化,如果没有则初始化 + */ + fun initializeCacheIfNeeded(currentModules: List) { + val isInitialized = cachePrefs.getBoolean(CACHE_INITIALIZED_KEY, false) + if (!isInitialized || sizeCache.isEmpty()) { + Log.d(TAG, "首次初始化缓存,计算所有模块大小") + refreshCache(currentModules) + } else { + // 检查是否有新模块需要计算大小 + val newModules = currentModules.filter { !sizeCache.containsKey(it) } + if (newModules.isNotEmpty()) { + Log.d(TAG, "发现 ${newModules.size} 个新模块,计算大小: $newModules") + for (dirId in newModules) { + val size = calculateModuleFolderSize(dirId) + sizeCache[dirId] = size + Log.d(TAG, "新模块 $dirId 大小: ${formatFileSize(size)}") + } + saveCacheToPrefs() + } + } + } + + /** + * 刷新所有模块的大小缓存 + */ + fun refreshCache(currentModules: List) { + try { + // 清理不存在的模块缓存 + val toRemove = sizeCache.keys.filter { it !in currentModules } + toRemove.forEach { sizeCache.remove(it) } + + if (toRemove.isNotEmpty()) { + Log.d(TAG, "清理了 ${toRemove.size} 个不存在的模块缓存: $toRemove") + } + + // 计算所有当前模块的大小 + for (dirId in currentModules) { + val size = calculateModuleFolderSize(dirId) + sizeCache[dirId] = size + Log.d(TAG, "更新模块 $dirId 大小: ${formatFileSize(size)}") + } + + // 保存到持久化存储 + saveCacheToPrefs() + } catch (e: Exception) { + Log.e(TAG, "刷新缓存失败", e) + } + } + + /** + * 清空所有缓存 + */ + private fun clearCache() { + sizeCache.clear() + cachePrefs.edit { clear() } + Log.d(TAG, "清空所有缓存") + } + + /** + * 实际计算模块文件夹大小 + */ + private fun calculateModuleFolderSize(dirId: String): Long { + return try { + val shell = getRootShell() + val command = "du -sb /data/adb/modules/$dirId" + val result = shell.newJob().add(command).to(ArrayList(), null).exec() + + if (result.isSuccess && result.out.isNotEmpty()) { + val sizeStr = result.out.firstOrNull()?.split("\t")?.firstOrNull() + sizeStr?.toLongOrNull() ?: 0L + } else { + 0L + } + } catch (e: Exception) { + Log.e(TAG, "计算模块大小失败 $dirId: ${e.message}") + 0L + } + } +} + +private fun JSONObject.getBooleanCompat(key: String, default: Boolean = false): Boolean { + if (!has(key)) return default + return when (val value = opt(key)) { + is Boolean -> value + is String -> value.equals("true", ignoreCase = true) || value == "1" + is Number -> value.toInt() != 0 + else -> default + } +} + +private fun JSONObject.getIntCompat(key: String, default: Int = 0): Int { + if (!has(key)) return default + return when (val value = opt(key)) { + is Int -> value + is Number -> value.toInt() + is String -> value.toIntOrNull() ?: default + else -> default + } +} + +/** + * 格式化文件大小的工具函数 + */ +fun formatFileSize(bytes: Long): String { + if (bytes <= 0) return "0 KB" + + val units = arrayOf("B", "KB", "MB", "GB", "TB") + val digitGroups = (log10(bytes.toDouble()) / log10(1024.0)).toInt() + + return DecimalFormat("#,##0.#").format( + bytes / 1024.0.pow(digitGroups.toDouble()) + ) + " " + units[digitGroups] +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/SuperUserViewModel.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/SuperUserViewModel.kt new file mode 100644 index 0000000..128c238 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/SuperUserViewModel.kt @@ -0,0 +1,401 @@ +package com.sukisu.ultra.ui.viewmodel + +import android.content.* +import android.content.pm.ApplicationInfo +import android.content.pm.PackageInfo +import android.graphics.drawable.Drawable +import android.os.IBinder +import android.os.Parcelable +import android.util.Log +import androidx.compose.runtime.* +import androidx.core.content.edit +import androidx.lifecycle.ViewModel +import com.sukisu.ultra.Natives +import com.sukisu.ultra.ksuApp +import com.sukisu.ultra.ui.KsuService +import com.sukisu.ultra.ui.util.* +import com.topjohnwu.superuser.Shell +import kotlinx.coroutines.* +import kotlinx.coroutines.sync.Mutex +import kotlinx.coroutines.sync.withLock +import java.text.Collator +import java.util.* +import java.util.concurrent.LinkedBlockingQueue +import java.util.concurrent.ThreadPoolExecutor +import java.util.concurrent.TimeUnit +import kotlin.coroutines.resume +import kotlin.coroutines.suspendCoroutine +import com.sukisu.zako.IKsuInterface +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.flow.asStateFlow +import kotlinx.parcelize.IgnoredOnParcel +import kotlinx.parcelize.Parcelize + +enum class AppCategory(val displayNameRes: Int, val persistKey: String) { + ALL(com.sukisu.ultra.R.string.category_all_apps, "ALL"), + ROOT(com.sukisu.ultra.R.string.category_root_apps, "ROOT"), + CUSTOM(com.sukisu.ultra.R.string.category_custom_apps, "CUSTOM"), + DEFAULT(com.sukisu.ultra.R.string.category_default_apps, "DEFAULT"); + + companion object { + fun fromPersistKey(key: String): AppCategory = entries.find { it.persistKey == key } ?: ALL + } +} + +enum class SortType(val displayNameRes: Int, val persistKey: String) { + NAME_ASC(com.sukisu.ultra.R.string.sort_name_asc, "NAME_ASC"), + NAME_DESC(com.sukisu.ultra.R.string.sort_name_desc, "NAME_DESC"), + INSTALL_TIME_NEW(com.sukisu.ultra.R.string.sort_install_time_new, "INSTALL_TIME_NEW"), + INSTALL_TIME_OLD(com.sukisu.ultra.R.string.sort_install_time_old, "INSTALL_TIME_OLD"), + SIZE_DESC(com.sukisu.ultra.R.string.sort_size_desc, "SIZE_DESC"), + SIZE_ASC(com.sukisu.ultra.R.string.sort_size_asc, "SIZE_ASC"), + USAGE_FREQ(com.sukisu.ultra.R.string.sort_usage_freq, "USAGE_FREQ"); + + companion object { + fun fromPersistKey(key: String): SortType = entries.find { it.persistKey == key } ?: NAME_ASC + } +} + +class SuperUserViewModel : ViewModel() { + companion object { + private const val TAG = "SuperUserViewModel" + private val appsLock = Any() + var apps by mutableStateOf>(emptyList()) + private val _isAppListLoaded = MutableStateFlow(false) + val isAppListLoaded = _isAppListLoaded.asStateFlow() + + @JvmStatic + fun getAppIconDrawable(context: Context, packageName: String): Drawable? { + val appList = synchronized(appsLock) { apps } + return appList.find { it.packageName == packageName } + ?.packageInfo?.applicationInfo?.loadIcon(context.packageManager) + } + + var appGroups by mutableStateOf>(emptyList()) + + private const val PREFS_NAME = "settings" + private const val KEY_SHOW_SYSTEM_APPS = "show_system_apps" + private const val KEY_SELECTED_CATEGORY = "selected_category" + private const val KEY_CURRENT_SORT_TYPE = "current_sort_type" + private const val CORE_POOL_SIZE = 8 + private const val MAX_POOL_SIZE = 16 + private const val KEEP_ALIVE_TIME = 60L + private const val BATCH_SIZE = 20 + } + + @Immutable + @Parcelize + data class AppInfo( + val label: String, + val packageInfo: PackageInfo, + val profile: Natives.Profile?, + ) : Parcelable { + @IgnoredOnParcel + val packageName: String = packageInfo.packageName + @IgnoredOnParcel + val uid: Int = packageInfo.applicationInfo!!.uid + } + + @Immutable + @Parcelize + data class AppGroup( + val uid: Int, + val apps: List, + val profile: Natives.Profile? + ) : Parcelable { + @IgnoredOnParcel + val mainApp: AppInfo = apps.first() + @IgnoredOnParcel + val packageNames: List = apps.map { it.packageName } + @IgnoredOnParcel + val allowSu: Boolean = profile?.allowSu == true + @IgnoredOnParcel + val userName: String? = Natives.getUserName(uid) + @IgnoredOnParcel + val hasCustomProfile : Boolean = profile?.let { if (it.allowSu) !it.rootUseDefault else !it.nonRootUseDefault } ?: false + } + + private val appProcessingThreadPool = ThreadPoolExecutor( + CORE_POOL_SIZE, MAX_POOL_SIZE, KEEP_ALIVE_TIME, TimeUnit.SECONDS, + LinkedBlockingQueue() + ) { runnable -> + Thread(runnable, "AppProcessing-${System.currentTimeMillis()}").apply { + isDaemon = true + priority = Thread.NORM_PRIORITY + } + }.asCoroutineDispatcher() + + private val appListMutex = Mutex() + private val configChangeListeners = mutableSetOf<(String) -> Unit>() + private val prefs = ksuApp.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE) + + var search by mutableStateOf("") + var showSystemApps by mutableStateOf(prefs.getBoolean(KEY_SHOW_SYSTEM_APPS, false)) + private set + var selectedCategory by mutableStateOf(loadSelectedCategory()) + private set + var currentSortType by mutableStateOf(loadCurrentSortType()) + private set + var isRefreshing by mutableStateOf(false) + private set + var showBatchActions by mutableStateOf(false) + internal set + var selectedApps by mutableStateOf>(emptySet()) + internal set + var loadingProgress by mutableFloatStateOf(0f) + private set + + private fun loadSelectedCategory(): AppCategory { + val categoryKey = prefs.getString(KEY_SELECTED_CATEGORY, AppCategory.ALL.persistKey) + ?: AppCategory.ALL.persistKey + return AppCategory.fromPersistKey(categoryKey) + } + + private fun loadCurrentSortType(): SortType { + val sortKey = prefs.getString(KEY_CURRENT_SORT_TYPE, SortType.NAME_ASC.persistKey) + ?: SortType.NAME_ASC.persistKey + return SortType.fromPersistKey(sortKey) + } + + fun updateShowSystemApps(newValue: Boolean) { + showSystemApps = newValue + prefs.edit { putBoolean(KEY_SHOW_SYSTEM_APPS, newValue) } + notifyAppListChanged() + } + + private fun notifyAppListChanged() { + val currentApps = apps + apps = emptyList() + apps = currentApps + } + + fun updateSelectedCategory(newCategory: AppCategory) { + selectedCategory = newCategory + prefs.edit { putString(KEY_SELECTED_CATEGORY, newCategory.persistKey) } + } + + fun updateCurrentSortType(newSortType: SortType) { + currentSortType = newSortType + prefs.edit { putString(KEY_CURRENT_SORT_TYPE, newSortType.persistKey) } + } + + fun toggleBatchMode() { + showBatchActions = !showBatchActions + if (!showBatchActions) clearSelection() + } + + fun toggleAppSelection(packageName: String) { + selectedApps = if (selectedApps.contains(packageName)) { + selectedApps - packageName + } else { + selectedApps + packageName + } + } + + fun clearSelection() { + selectedApps = emptySet() + } + + suspend fun updateBatchPermissions(allowSu: Boolean, umountModules: Boolean? = null) { + selectedApps.forEach { packageName -> + apps.find { it.packageName == packageName }?.let { app -> + val profile = Natives.getAppProfile(packageName, app.uid) + val updatedProfile = profile.copy( + allowSu = allowSu, + umountModules = umountModules ?: profile.umountModules, + nonRootUseDefault = false + ) + if (Natives.setAppProfile(updatedProfile)) { + updateAppProfileLocally(packageName, updatedProfile) + notifyConfigChange(packageName) + } + } + } + clearSelection() + showBatchActions = false + refreshAppConfigurations() + } + + fun updateAppProfileLocally(packageName: String, updatedProfile: Natives.Profile) { + appListMutex.tryLock().let { locked -> + if (locked) { + try { + apps = apps.map { app -> + if (app.packageName == packageName) { + app.copy(profile = updatedProfile) + } else app + } + } finally { + appListMutex.unlock() + } + } + } + } + + private fun notifyConfigChange(packageName: String) { + configChangeListeners.forEach { listener -> + try { + listener(packageName) + } catch (e: Exception) { + Log.e(TAG, "Error notifying config change for $packageName", e) + } + } + } + + suspend fun refreshAppConfigurations() { + withContext(appProcessingThreadPool) { + supervisorScope { + val currentApps = apps.toList() + val batches = currentApps.chunked(BATCH_SIZE) + loadingProgress = 0f + + val updatedApps = batches.mapIndexed { batchIndex, batch -> + async { + val batchResult = batch.map { app -> + try { + val updatedProfile = Natives.getAppProfile(app.packageName, app.uid) + app.copy(profile = updatedProfile) + } catch (e: Exception) { + Log.e(TAG, "Error refreshing profile for ${app.packageName}", e) + app + } + } + loadingProgress = (batchIndex + 1).toFloat() / batches.size + batchResult + } + }.awaitAll().flatten() + + appListMutex.withLock { apps = updatedApps } + loadingProgress = 1f + } + } + } + + private var serviceConnection: ServiceConnection? = null + + private suspend fun connectKsuService(onDisconnect: () -> Unit = {}): IBinder? = + suspendCoroutine { continuation -> + val connection = object : ServiceConnection { + override fun onServiceDisconnected(name: ComponentName?) { + onDisconnect() + serviceConnection = null + } + override fun onServiceConnected(name: ComponentName?, binder: IBinder?) { + continuation.resume(binder) + } + } + serviceConnection = connection + val intent = Intent(ksuApp, KsuService::class.java) + try { + val task = com.topjohnwu.superuser.ipc.RootService.bindOrTask( + intent, Shell.EXECUTOR, connection + ) + task?.let { Shell.getShell().execTask(it) } + } catch (e: Exception) { + Log.e(TAG, "Failed to bind KsuService", e) + continuation.resume(null) + } + } + + private fun stopKsuService() { + serviceConnection?.let { + try { + val intent = Intent(ksuApp, KsuService::class.java) + com.topjohnwu.superuser.ipc.RootService.stop(intent) + serviceConnection = null + } catch (e: Exception) { + Log.e(TAG, "Failed to stop KsuService", e) + } + } + } + + suspend fun fetchAppList() { + isRefreshing = true + loadingProgress = 0f + + val binder = connectKsuService() ?: run { isRefreshing = false; return } + + withContext(Dispatchers.IO) { + val pm = ksuApp.packageManager + val allPackages = IKsuInterface.Stub.asInterface(binder) + val total = allPackages.packageCount + val pageSize = 100 + val result = mutableListOf() + + var start = 0 + while (start < total) { + val page = allPackages.getPackages(start, pageSize) + if (page.isEmpty()) break + + result += page.mapNotNull { packageInfo -> + packageInfo.applicationInfo?.let { appInfo -> + AppInfo( + label = appInfo.loadLabel(pm).toString(), + packageInfo = packageInfo, + profile = Natives.getAppProfile(packageInfo.packageName, appInfo.uid) + ) + } + } + start += page.size + loadingProgress = start.toFloat() / total + } + + stopKsuService() + + synchronized(appsLock) { + _isAppListLoaded.value = true + } + + appListMutex.withLock { + val filteredApps = result.filter { it.packageName != ksuApp.packageName } + apps = filteredApps + appGroups = groupAppsByUid(filteredApps) + } + loadingProgress = 1f + } + isRefreshing = false + } + + val appGroupList by derivedStateOf { + appGroups.filter { group -> + group.apps.any { app -> + app.label.contains(search, true) || + app.packageName.contains(search, true) || + HanziToPinyin.getInstance().toPinyinString(app.label)?.contains(search, true) == true + } + }.filter { group -> + group.uid == 2000 || showSystemApps || + group.apps.any { it.packageInfo.applicationInfo!!.flags.and(ApplicationInfo.FLAG_SYSTEM) == 0 } + } + } + + private fun groupAppsByUid(appList: List): List { + return appList.groupBy { it.uid } + .map { (uid, apps) -> + val sortedApps = apps.sortedBy { it.label } + val profile = apps.firstOrNull()?.let { Natives.getAppProfile(it.packageName, uid) } + AppGroup(uid = uid, apps = sortedApps, profile = profile) + } + .sortedWith( + compareBy { + when { + it.allowSu -> 0 + it.hasCustomProfile -> 1 + else -> 2 + } + }.thenBy(Collator.getInstance(Locale.getDefault())) { + it.userName?.takeIf { name -> name.isNotBlank() } ?: it.uid.toString() + }.thenBy(Collator.getInstance(Locale.getDefault())) { it.mainApp.label } + ) +} + override fun onCleared() { + super.onCleared() + try { + stopKsuService() + appProcessingThreadPool.close() + configChangeListeners.clear() + } catch (e: Exception) { + Log.e(TAG, "Error cleaning up resources", e) + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/TemplateViewModel.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/TemplateViewModel.kt new file mode 100644 index 0000000..7aa5b94 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/viewmodel/TemplateViewModel.kt @@ -0,0 +1,328 @@ +package com.sukisu.ultra.ui.viewmodel + +import android.os.Parcelable +import android.util.Log +import androidx.compose.runtime.derivedStateOf +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.setValue +import androidx.lifecycle.ViewModel +import com.sukisu.ultra.Natives +import com.sukisu.ultra.profile.Capabilities +import com.sukisu.ultra.profile.Groups +import com.sukisu.ultra.ui.util.getAppProfileTemplate +import com.sukisu.ultra.ui.util.listAppProfileTemplates +import com.sukisu.ultra.ui.util.setAppProfileTemplate +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.withContext +import kotlinx.parcelize.Parcelize +import okhttp3.OkHttpClient +import okhttp3.Request +import org.json.JSONArray +import org.json.JSONObject +import java.text.Collator +import java.util.* +import java.util.concurrent.TimeUnit + + +/** + * @author weishu + * @date 2023/10/20. + */ +const val TEMPLATE_INDEX_URL = "https://kernelsu.org/templates/index.json" +const val TEMPLATE_URL = "https://kernelsu.org/templates/%s" + +const val TAG = "TemplateViewModel" + +class TemplateViewModel : ViewModel() { + companion object { + + private var templates by mutableStateOf>(emptyList()) + } + + @Parcelize + data class TemplateInfo( + val id: String = "", + val name: String = "", + val description: String = "", + val author: String = "", + val local: Boolean = true, + + val namespace: Int = Natives.Profile.Namespace.INHERITED.ordinal, + val uid: Int = Natives.ROOT_UID, + val gid: Int = Natives.ROOT_GID, + val groups: List = mutableListOf(), + val capabilities: List = mutableListOf(), + val context: String = Natives.KERNEL_SU_DOMAIN, + val rules: List = mutableListOf(), + ) : Parcelable + + var isRefreshing by mutableStateOf(false) + private set + + val templateList by derivedStateOf { + val comparator = compareBy(TemplateInfo::local).reversed().then( + compareBy( + Collator.getInstance(Locale.getDefault()), TemplateInfo::id + ) + ) + templates.sortedWith(comparator).apply { + isRefreshing = false + } + } + + suspend fun fetchTemplates(sync: Boolean = false) { + isRefreshing = true + withContext(Dispatchers.IO) { + val localTemplateIds = listAppProfileTemplates() + Log.i(TAG, "localTemplateIds: $localTemplateIds") + if (localTemplateIds.isEmpty() || sync) { + // if no templates, fetch remote templates + fetchRemoteTemplates() + } + + // fetch templates again + templates = listAppProfileTemplates().mapNotNull(::getTemplateInfoById) + + isRefreshing = false + } + } + + suspend fun importTemplates( + templates: String, + onSuccess: suspend () -> Unit, + onFailure: suspend (String) -> Unit + ) { + withContext(Dispatchers.IO) { + runCatching { + JSONArray(templates) + }.getOrElse { + runCatching { + val json = JSONObject(templates) + JSONArray().apply { put(json) } + }.getOrElse { + onFailure("invalid templates: $templates") + return@withContext + } + }.let { + 0.until(it.length()).forEach { i -> + runCatching { + val template = it.getJSONObject(i) + val id = template.getString("id") + template.put("local", true) + setAppProfileTemplate(id, template.toString()) + }.onFailure { e -> + Log.e(TAG, "ignore invalid template: $it", e) + } + } + onSuccess() + } + } + } + + suspend fun exportTemplates(onTemplateEmpty: () -> Unit, callback: (String) -> Unit) { + withContext(Dispatchers.IO) { + val templates = listAppProfileTemplates().mapNotNull(::getTemplateInfoById).filter { + it.local + } + templates.ifEmpty { + onTemplateEmpty() + return@withContext + } + JSONArray(templates.map { + it.toJSON() + }).toString().let(callback) + } + } +} + +private fun fetchRemoteTemplates() { + runCatching { + val client: OkHttpClient = OkHttpClient.Builder() + .connectTimeout(5, TimeUnit.SECONDS) + .writeTimeout(5, TimeUnit.SECONDS) + .readTimeout(10, TimeUnit.SECONDS) + .build() + + client.newCall( + Request.Builder().url(TEMPLATE_INDEX_URL).build() + ).execute().use { response -> + if (!response.isSuccessful) { + return + } + val remoteTemplateIds = JSONArray(response.body!!.string()) + Log.i(TAG, "fetchRemoteTemplates: $remoteTemplateIds") + 0.until(remoteTemplateIds.length()).forEach { i -> + val id = remoteTemplateIds.getString(i) + Log.i(TAG, "fetch template: $id") + val templateJson = client.newCall( + Request.Builder().url(TEMPLATE_URL.format(id)).build() + ).runCatching { + execute().use { response -> + if (!response.isSuccessful) { + return@forEach + } + response.body!!.string() + } + }.getOrNull() ?: return@forEach + Log.i(TAG, "template: $templateJson") + + // validate remote template + runCatching { + val json = JSONObject(templateJson) + fromJSON(json)?.let { + // force local template + json.put("local", false) + setAppProfileTemplate(id, json.toString()) + } + }.onFailure { + Log.e(TAG, "ignore invalid template: $it", it) + return@forEach + } + } + } + }.onFailure { Log.e(TAG, "fetchRemoteTemplates: $it", it) } +} + +@Suppress("UNCHECKED_CAST") +private fun JSONArray.mapCatching( + transform: (T) -> R, onFail: (Throwable) -> Unit +): List { + return List(length()) { i -> get(i) as T }.mapNotNull { element -> + runCatching { + transform(element) + }.onFailure(onFail).getOrNull() + } +} + +private inline fun > getEnumOrdinals( + jsonArray: JSONArray?, enumClass: Class +): List { + return jsonArray?.mapCatching({ name -> + enumValueOf(name.uppercase()) + }, { + Log.e(TAG, "ignore invalid enum ${enumClass.simpleName}: $it", it) + }).orEmpty() +} + +fun getTemplateInfoById(id: String): TemplateViewModel.TemplateInfo? { + return runCatching { + fromJSON(JSONObject(getAppProfileTemplate(id))) + }.onFailure { + Log.e(TAG, "ignore invalid template: $it", it) + }.getOrNull() +} + +private fun getLocaleString(json: JSONObject, key: String): String { + val fallback = json.getString(key) + val locale = Locale.getDefault() + val localeKey = "${locale.language}_${locale.country}" + json.optJSONObject("locales")?.let { + // check locale first + it.optJSONObject(localeKey)?.let { json-> + return json.optString(key, fallback) + } + // fallback to language + it.optJSONObject(locale.language)?.let { json-> + return json.optString(key, fallback) + } + } + return fallback +} + +private fun fromJSON(templateJson: JSONObject): TemplateViewModel.TemplateInfo? { + return runCatching { + val groupsJsonArray = templateJson.optJSONArray("groups") + val capabilitiesJsonArray = templateJson.optJSONArray("capabilities") + val context = templateJson.optString("context").takeIf { it.isNotEmpty() } + ?: Natives.KERNEL_SU_DOMAIN + val namespace = templateJson.optString("namespace").takeIf { it.isNotEmpty() } + ?: Natives.Profile.Namespace.INHERITED.name + + val rulesJsonArray = templateJson.optJSONArray("rules") + val templateInfo = TemplateViewModel.TemplateInfo( + id = templateJson.getString("id"), + name = getLocaleString(templateJson, "name"), + description = getLocaleString(templateJson, "description"), + author = templateJson.optString("author"), + local = templateJson.optBoolean("local"), + namespace = Natives.Profile.Namespace.valueOf( + namespace.uppercase() + ).ordinal, + uid = templateJson.optInt("uid", Natives.ROOT_UID), + gid = templateJson.optInt("gid", Natives.ROOT_GID), + groups = getEnumOrdinals(groupsJsonArray, Groups::class.java).map { it.gid }, + capabilities = getEnumOrdinals( + capabilitiesJsonArray, Capabilities::class.java + ).map { it.cap }, + context = context, + rules = rulesJsonArray?.mapCatching({ it }, { + Log.e(TAG, "ignore invalid rule: $it", it) + }).orEmpty() + ) + templateInfo + }.onFailure { + Log.e(TAG, "ignore invalid template: $it", it) + }.getOrNull() +} + +fun TemplateViewModel.TemplateInfo.toJSON(): JSONObject { + val template = this + return JSONObject().apply { + + put("id", template.id) + put("name", template.name.ifBlank { template.id }) + put("description", template.description.ifBlank { template.id }) + if (template.author.isNotEmpty()) { + put("author", template.author) + } + put("namespace", Natives.Profile.Namespace.entries[template.namespace].name) + put("uid", template.uid) + put("gid", template.gid) + + if (template.groups.isNotEmpty()) { + put("groups", JSONArray( + Groups.entries.filter { + template.groups.contains(it.gid) + }.map { + it.name + } + )) + } + + if (template.capabilities.isNotEmpty()) { + put("capabilities", JSONArray( + Capabilities.entries.filter { + template.capabilities.contains(it.cap) + }.map { + it.name + } + )) + } + + if (template.context.isNotEmpty()) { + put("context", template.context) + } + + if (template.rules.isNotEmpty()) { + put("rules", JSONArray(template.rules)) + } + } +} + +@Suppress("unused") +fun generateTemplates() { + val templateJson = JSONObject() + templateJson.put("id", "com.example") + templateJson.put("name", "Example") + templateJson.put("description", "This is an example template") + templateJson.put("local", true) + templateJson.put("namespace", Natives.Profile.Namespace.INHERITED.name) + templateJson.put("uid", 0) + templateJson.put("gid", 0) + + templateJson.put("groups", JSONArray().apply { put(Groups.INET.name) }) + templateJson.put("capabilities", JSONArray().apply { put(Capabilities.CAP_NET_RAW.name) }) + templateJson.put("context", "u:r:su:s0") + Log.i(TAG, "$templateJson") +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/webui/AppIconUtil.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/webui/AppIconUtil.kt new file mode 100644 index 0000000..361a976 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/webui/AppIconUtil.kt @@ -0,0 +1,46 @@ +package com.sukisu.ultra.ui.webui + +import android.content.Context +import android.graphics.Bitmap +import android.graphics.Canvas +import android.graphics.drawable.BitmapDrawable +import android.graphics.drawable.Drawable +import android.util.LruCache +import androidx.core.graphics.createBitmap +import androidx.core.graphics.scale +import com.sukisu.ultra.ui.viewmodel.SuperUserViewModel.Companion.getAppIconDrawable + +object AppIconUtil { + // Limit cache size to 200 icons + private const val CACHE_SIZE = 200 + private val iconCache = LruCache(CACHE_SIZE) + + @Synchronized + fun loadAppIconSync(context: Context, packageName: String, sizePx: Int): Bitmap? { + val cached = iconCache.get(packageName) + if (cached != null) return cached + + try { + val drawable = getAppIconDrawable(context, packageName) ?: return null + val raw = drawableToBitmap(drawable, sizePx) + val icon = raw.scale(sizePx, sizePx) + iconCache.put(packageName, icon) + return icon + } catch (_: Exception) { + return null + } + } + + private fun drawableToBitmap(drawable: Drawable, size: Int): Bitmap { + if (drawable is BitmapDrawable) return drawable.bitmap + + val width = if (drawable.intrinsicWidth > 0) drawable.intrinsicWidth else size + val height = if (drawable.intrinsicHeight > 0) drawable.intrinsicHeight else size + + val bmp = createBitmap(width, height) + val canvas = Canvas(bmp) + drawable.setBounds(0, 0, canvas.width, canvas.height) + drawable.draw(canvas) + return bmp + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/webui/Insets.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/webui/Insets.kt new file mode 100644 index 0000000..aabdbe2 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/webui/Insets.kt @@ -0,0 +1,40 @@ +package com.sukisu.ultra.ui.webui + +/** + * Insets data class from GitHub@MMRLApp/WebUI-X-Portable + * + * Data class representing insets (top, bottom, left, right) for a view. + * + * This class provides methods to generate CSS code that can be injected into a WebView + * to apply these insets as CSS variables. This is useful for adapting web content + * to the safe areas of a device screen, considering notches, status bars, and navigation bars. + * + * @property top The top inset value in pixels. + * @property bottom The bottom inset value in pixels. + * @property left The left inset value in pixels. + * @property right The right inset value in pixels. + */ +data class Insets( + val top: Int, + val bottom: Int, + val left: Int, + val right: Int, +) { + val css + get() = buildString { + appendLine(":root {") + appendLine("\t--safe-area-inset-top: ${top}px;") + appendLine("\t--safe-area-inset-right: ${right}px;") + appendLine("\t--safe-area-inset-bottom: ${bottom}px;") + appendLine("\t--safe-area-inset-left: ${left}px;") + appendLine("\t--window-inset-top: var(--safe-area-inset-top, 0px);") + appendLine("\t--window-inset-bottom: var(--safe-area-inset-bottom, 0px);") + appendLine("\t--window-inset-left: var(--safe-area-inset-left, 0px);") + appendLine("\t--window-inset-right: var(--safe-area-inset-right, 0px);") + appendLine("\t--f7-safe-area-top: var(--window-inset-top, 0px) !important;") + appendLine("\t--f7-safe-area-bottom: var(--window-inset-bottom, 0px) !important;") + appendLine("\t--f7-safe-area-left: var(--window-inset-left, 0px) !important;") + appendLine("\t--f7-safe-area-right: var(--window-inset-right, 0px) !important;") + append("}") + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/webui/KsuLibSuProvider.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/webui/KsuLibSuProvider.kt new file mode 100644 index 0000000..dad41e3 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/webui/KsuLibSuProvider.kt @@ -0,0 +1,56 @@ +package com.sukisu.ultra.ui.webui + +import android.content.ServiceConnection +import android.util.Log +import com.dergoogler.mmrl.platform.Platform +import com.dergoogler.mmrl.platform.model.IProvider +import com.dergoogler.mmrl.platform.model.PlatformIntent +import com.sukisu.ultra.Natives +import com.sukisu.ultra.ksuApp +import com.topjohnwu.superuser.ipc.RootService +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.delay +import kotlinx.coroutines.withContext + +class KsuLibSuProvider : IProvider { + override val name = "KsuLibSu" + + override fun isAvailable() = true + + override suspend fun isAuthorized() = Natives.isManager + + private val serviceIntent + get() = PlatformIntent( + ksuApp, + Platform.KsuNext, + SuService::class.java + ) + + override fun bind(connection: ServiceConnection) { + RootService.bind(serviceIntent.intent, connection) + } + + override fun unbind(connection: ServiceConnection) { + RootService.stop(serviceIntent.intent) + } +} + +// webui x +suspend fun initPlatform() = withContext(Dispatchers.IO) { + try { + val active = Platform.init { + this.context = ksuApp + this.platform = Platform.KsuNext + this.provider = from(KsuLibSuProvider()) + } + + while (!active) { + delay(1000) + } + + return@withContext true + } catch (e: Exception) { + Log.e("KsuLibSu", "Failed to initialize platform", e) + return@withContext false + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/webui/MimeUtil.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/webui/MimeUtil.kt new file mode 100644 index 0000000..b9adcfa --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/webui/MimeUtil.kt @@ -0,0 +1,77 @@ +/* + * Copyright 2023 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.sukisu.ultra.ui.webui + +import java.net.URLConnection + +internal object MimeUtil { + fun getMimeFromFileName(fileName: String?): String? { + if (fileName == null) { + return null + } + + val mimeType = URLConnection.guessContentTypeFromName(fileName) + if (mimeType != null) { + return mimeType + } + + return guessHardcodedMime(fileName) + } + + private fun guessHardcodedMime(fileName: String): String? { + val finalFullStop = fileName.lastIndexOf('.') + if (finalFullStop == -1) { + return null + } + + val extension = fileName.substring(finalFullStop + 1).lowercase() + + return when (extension) { + "webm" -> "video/webm" + "mpeg", "mpg" -> "video/mpeg" + "mp3" -> "audio/mpeg" + "wasm" -> "application/wasm" + "xhtml", "xht", "xhtm" -> "application/xhtml+xml" + "flac" -> "audio/flac" + "ogg", "oga", "opus" -> "audio/ogg" + "wav" -> "audio/wav" + "m4a" -> "audio/x-m4a" + "gif" -> "image/gif" + "jpeg", "jpg", "jfif", "pjpeg", "pjp" -> "image/jpeg" + "png" -> "image/png" + "apng" -> "image/apng" + "svg", "svgz" -> "image/svg+xml" + "webp" -> "image/webp" + "mht", "mhtml" -> "multipart/related" + "css" -> "text/css" + "html", "htm", "shtml", "shtm", "ehtml" -> "text/html" + "js", "mjs" -> "application/javascript" + "xml" -> "text/xml" + "mp4", "m4v" -> "video/mp4" + "ogv", "ogm" -> "video/ogg" + "ico" -> "image/x-icon" + "woff" -> "application/font-woff" + "gz", "tgz" -> "application/gzip" + "json" -> "application/json" + "pdf" -> "application/pdf" + "zip" -> "application/zip" + "bmp" -> "image/bmp" + "tiff", "tif" -> "image/tiff" + else -> null + } + } +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/webui/SuFilePathHandler.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/webui/SuFilePathHandler.kt new file mode 100644 index 0000000..c0f7930 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/webui/SuFilePathHandler.kt @@ -0,0 +1,192 @@ +package com.sukisu.ultra.ui.webui + +import android.content.Context +import android.util.Log +import android.webkit.WebResourceResponse +import androidx.annotation.WorkerThread +import androidx.webkit.WebViewAssetLoader +import com.topjohnwu.superuser.Shell +import com.topjohnwu.superuser.io.SuFile +import com.topjohnwu.superuser.io.SuFileInputStream +import java.io.ByteArrayInputStream +import java.io.File +import java.io.IOException +import java.io.InputStream +import java.nio.charset.StandardCharsets +import java.util.zip.GZIPInputStream + +/** + * Handler class to open files from file system by root access + * For more information about android storage please refer to + * [Android Developers Docs: Data and file storage overview](https://developer.android.com/guide/topics/data/data-storage). + * + * To avoid leaking user or app data to the web, make sure to choose [directory] + * carefully, and assume any file under this directory could be accessed by any web page subject + * to same-origin rules. + * + * A typical usage would be like: + * ``` + * val publicDir = File(context.filesDir, "public") + * // Host "files/public/" in app's data directory under: + * // http://appassets.androidplatform.net/public/... + * val assetLoader = WebViewAssetLoader.Builder() + * .addPathHandler("/public/", SuFilePathHandler(context, publicDir, shell, insetsSupplier)) + * .build() + * ``` + */ +class SuFilePathHandler( + directory: File, + private val shell: Shell, + private val insetsSupplier: InsetsSupplier +) : WebViewAssetLoader.PathHandler { + + private val directory: File + + init { + try { + this.directory = File(getCanonicalDirPath(directory)) + if (!isAllowedInternalStorageDir()) { + throw IllegalArgumentException( + "The given directory \"$directory\" doesn't exist under an allowed app internal storage directory" + ) + } + } catch (e: IOException) { + throw IllegalArgumentException( + "Failed to resolve the canonical path for the given directory: ${directory.path}", + e + ) + } + } + + fun interface InsetsSupplier { + fun get(): Insets + } + + private fun isAllowedInternalStorageDir(): Boolean { + return try { + val dir = getCanonicalDirPath(directory) + FORBIDDEN_DATA_DIRS.none { dir.startsWith(it) } + } catch (_: IOException) { + false + } + } + + /** + * Opens the requested file from the exposed data directory. + * + * The matched prefix path used shouldn't be a prefix of a real web path. Thus, if the + * requested file cannot be found or is outside the mounted directory a + * [WebResourceResponse] object with a `null` [InputStream] will be + * returned instead of `null`. This saves the time of falling back to network and + * trying to resolve a path that doesn't exist. A [WebResourceResponse] with + * `null` [InputStream] will be received as an HTTP response with status code + * `404` and no body. + * + * The MIME type for the file will be determined from the file's extension using + * [java.net.URLConnection.guessContentTypeFromName]. Developers should ensure that + * files are named using standard file extensions. If the file does not have a + * recognised extension, `"text/plain"` will be used by default. + * + * @param path the suffix path to be handled. + * @return [WebResourceResponse] for the requested file. + */ + @WorkerThread + override fun handle(path: String): WebResourceResponse { + if (path == "internal/insets.css") { + val css = insetsSupplier.get().css + return WebResourceResponse( + "text/css", + "utf-8", + ByteArrayInputStream(css.toByteArray(StandardCharsets.UTF_8)) + ) + } + + try { + val file = getCanonicalFileIfChild(directory, path) + if (file != null) { + val inputStream = openFile(file, shell) + val mimeType = guessMimeType(path) + return WebResourceResponse(mimeType, null, inputStream) + } else { + Log.e( + TAG, + "The requested file: $path is outside the mounted directory: $directory" + ) + } + } catch (e: IOException) { + Log.e(TAG, "Error opening the requested path: $path", e) + } + + return WebResourceResponse(null, null, null) + } + + companion object { + private const val TAG = "SuFilePathHandler" + + /** + * Default value to be used as MIME type if guessing MIME type failed. + */ + const val DEFAULT_MIME_TYPE = "text/plain" + + /** + * Forbidden subdirectories of [Context.getDataDir] that cannot be exposed by this + * handler. They are forbidden as they often contain sensitive information. + * + * Note: Any future addition to this list will be considered breaking changes to the API. + */ + private val FORBIDDEN_DATA_DIRS = arrayOf("/data/data", "/data/system") + + @JvmStatic + @Throws(IOException::class) + fun getCanonicalDirPath(file: File): String { + var canonicalPath = file.canonicalPath + if (!canonicalPath.endsWith("/")) { + canonicalPath += "/" + } + return canonicalPath + } + + @JvmStatic + @Throws(IOException::class) + fun getCanonicalFileIfChild(parent: File, child: String): File? { + val parentCanonicalPath = getCanonicalDirPath(parent) + val childCanonicalPath = File(parent, child).canonicalPath + return if (childCanonicalPath.startsWith(parentCanonicalPath)) { + File(childCanonicalPath) + } else { + null + } + } + + @Throws(IOException::class) + private fun handleSvgzStream(path: String, stream: InputStream): InputStream { + return if (path.endsWith(".svgz")) { + GZIPInputStream(stream) + } else { + stream + } + } + + @JvmStatic + @Throws(IOException::class) + fun openFile(file: File, shell: Shell): InputStream { + val suFile = SuFile(file.absolutePath).apply { + setShell(shell) + } + val fis = SuFileInputStream.open(suFile) + return handleSvgzStream(file.path, fis) + } + + /** + * Use [MimeUtil.getMimeFromFileName] to guess MIME type or return the + * [DEFAULT_MIME_TYPE] if it can't guess. + * + * @param filePath path of the file to guess its MIME type. + * @return MIME type guessed from file extension or [DEFAULT_MIME_TYPE]. + */ + @JvmStatic + fun guessMimeType(filePath: String): String { + return MimeUtil.getMimeFromFileName(filePath) ?: DEFAULT_MIME_TYPE + } + } +} diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/webui/SuService.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/webui/SuService.kt new file mode 100644 index 0000000..5a421f2 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/webui/SuService.kt @@ -0,0 +1,14 @@ +package com.sukisu.ultra.ui.webui + +import android.content.Intent +import android.os.IBinder +import com.dergoogler.mmrl.platform.model.PlatformIntent.Companion.getPlatform +import com.dergoogler.mmrl.platform.service.ServiceManager +import com.topjohnwu.superuser.ipc.RootService + +class SuService : RootService() { + override fun onBind(intent: Intent): IBinder { + val mode = intent.getPlatform() + return ServiceManager(mode) + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/webui/WebUIActivity.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/webui/WebUIActivity.kt new file mode 100644 index 0000000..91ecd6c --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/webui/WebUIActivity.kt @@ -0,0 +1,149 @@ +package com.sukisu.ultra.ui.webui + +import android.annotation.SuppressLint +import android.app.ActivityManager +import android.graphics.Color +import android.os.Build +import android.os.Bundle +import android.webkit.WebResourceRequest +import android.webkit.WebResourceResponse +import android.webkit.WebView +import android.webkit.WebViewClient +import androidx.activity.ComponentActivity +import androidx.activity.compose.setContent +import androidx.activity.enableEdgeToEdge +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.material3.CircularProgressIndicator +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.core.view.ViewCompat +import androidx.core.view.WindowInsetsCompat +import androidx.lifecycle.lifecycleScope +import androidx.webkit.WebViewAssetLoader +import com.dergoogler.mmrl.platform.model.ModId +import com.dergoogler.mmrl.webui.interfaces.WXOptions +import com.sukisu.ultra.ui.util.createRootShell +import com.sukisu.ultra.ui.viewmodel.SuperUserViewModel +import kotlinx.coroutines.flow.first +import kotlinx.coroutines.launch +import java.io.File + +@SuppressLint("SetJavaScriptEnabled") +class WebUIActivity : ComponentActivity() { + private val rootShell by lazy { createRootShell(true) } + + private lateinit var insets: Insets + private var webView = null as WebView? + + override fun onCreate(savedInstanceState: Bundle?) { + + // Enable edge to edge + enableEdgeToEdge() + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { + window.isNavigationBarContrastEnforced = false + } + + super.onCreate(savedInstanceState) + + setContent { + Box( + modifier = Modifier.fillMaxSize(), + contentAlignment = Alignment.Center + ) { + CircularProgressIndicator() + } + } + + lifecycleScope.launch { + SuperUserViewModel.isAppListLoaded.first { it } + setupWebView() + } + } + private fun setupWebView() { + val moduleId = intent.getStringExtra("id") ?: finishAndRemoveTask().let { return } + val name = intent.getStringExtra("name") ?: finishAndRemoveTask().let { return } + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU) { + @Suppress("DEPRECATION") + setTaskDescription(ActivityManager.TaskDescription("SukiSU-Ultra - $name")) + } else { + val taskDescription = + ActivityManager.TaskDescription.Builder().setLabel("SukiSU-Ultra - $name").build() + setTaskDescription(taskDescription) + } + + val prefs = getSharedPreferences("settings", MODE_PRIVATE) + WebView.setWebContentsDebuggingEnabled(prefs.getBoolean("enable_web_debugging", false)) + + val moduleDir = "/data/adb/modules/${moduleId}" + val webRoot = File("${moduleDir}/webroot") + insets = Insets(0, 0, 0, 0) + val webViewAssetLoader = WebViewAssetLoader.Builder() + .setDomain("mui.kernelsu.org") + .addPathHandler( + "/", + SuFilePathHandler(webRoot, rootShell) { insets } + ) + .build() + + val webViewClient = object : WebViewClient() { + override fun shouldInterceptRequest( + view: WebView, + request: WebResourceRequest + ): WebResourceResponse? { + val url = request.url + // Handle ksu://icon/[packageName] to serve app icon via WebView + if (url.scheme.equals("ksu", ignoreCase = true) && url.host.equals("icon", ignoreCase = true)) { + val packageName = url.path?.substring(1) + if (!packageName.isNullOrEmpty()) { + val icon = AppIconUtil.loadAppIconSync(this@WebUIActivity, packageName, 512) + if (icon != null) { + val stream = java.io.ByteArrayOutputStream() + icon.compress(android.graphics.Bitmap.CompressFormat.PNG, 100, stream) + val inputStream = java.io.ByteArrayInputStream(stream.toByteArray()) + return WebResourceResponse("image/png", null, inputStream) + } + } + } + return webViewAssetLoader.shouldInterceptRequest(url) + } + } + + val webView = WebView(this).apply { + webView = this + + setBackgroundColor(Color.TRANSPARENT) + val density = resources.displayMetrics.density + + ViewCompat.setOnApplyWindowInsetsListener(this) { _, windowInsets -> + val inset = windowInsets.getInsets(WindowInsetsCompat.Type.systemBars() or WindowInsetsCompat.Type.displayCutout()) + insets = Insets( + top = (inset.top / density).toInt(), + bottom = (inset.bottom / density).toInt(), + left = (inset.left / density).toInt(), + right = (inset.right / density).toInt() + ) + WindowInsetsCompat.CONSUMED + } + settings.javaScriptEnabled = true + settings.domStorageEnabled = true + settings.allowFileAccess = false + addJavascriptInterface(WebViewInterface(WXOptions(this@WebUIActivity, this, ModId(moduleId))), "ksu") + setWebViewClient(webViewClient) + loadUrl("https://mui.kernelsu.org/index.html") + } + + setContentView(webView) + } + + override fun onDestroy() { + rootShell.runCatching { close() } + webView?.apply { + stopLoading() + removeAllViews() + destroy() + webView = null + } + super.onDestroy() + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/webui/WebUIXActivity.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/webui/WebUIXActivity.kt new file mode 100644 index 0000000..0761274 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/webui/WebUIXActivity.kt @@ -0,0 +1,116 @@ +package com.sukisu.ultra.ui.webui + +import android.app.ActivityManager +import android.os.Build +import android.os.Bundle +import android.webkit.WebView +import androidx.activity.ComponentActivity +import androidx.activity.compose.setContent +import androidx.activity.enableEdgeToEdge +import androidx.compose.foundation.isSystemInDarkTheme +import androidx.compose.runtime.* +import androidx.lifecycle.lifecycleScope +import com.dergoogler.mmrl.platform.Platform +import com.dergoogler.mmrl.platform.model.ModId +import com.dergoogler.mmrl.ui.component.Loading +import com.dergoogler.mmrl.webui.model.WebUIConfig +import com.dergoogler.mmrl.webui.screen.WebUIScreen +import com.dergoogler.mmrl.webui.util.rememberWebUIOptions +import com.sukisu.ultra.BuildConfig +import com.sukisu.ultra.ui.theme.KernelSUTheme +import kotlinx.coroutines.delay +import kotlinx.coroutines.launch + +class WebUIXActivity : ComponentActivity() { + private lateinit var webView: WebView + + private val userAgent + get(): String { + val ksuVersion = BuildConfig.VERSION_CODE + + val platform = Platform.get("Unknown") { + platform.name + } + + val platformVersion = Platform.get(-1) { + moduleManager.versionCode + } + + val osVersion = Build.VERSION.RELEASE + val deviceModel = Build.MODEL + + return "SukiSU-Ultra /$ksuVersion (Linux; Android $osVersion; $deviceModel; $platform/$platformVersion)" + } + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + enableEdgeToEdge() + + webView = WebView(this) + + lifecycleScope.launch { + initPlatform() + } + + val moduleId = intent.getStringExtra("id")!! + val name = intent.getStringExtra("name")!! + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU) { + @Suppress("DEPRECATION") + setTaskDescription(ActivityManager.TaskDescription("SukiSU-Ultra - $name")) + } else { + val taskDescription = + ActivityManager.TaskDescription.Builder().setLabel("SukiSU-Ultra - $name").build() + setTaskDescription(taskDescription) + } + + val prefs = getSharedPreferences("settings", MODE_PRIVATE) + + setContent { + KernelSUTheme { + var isLoading by remember { mutableStateOf(true) } + + LaunchedEffect(Platform.isAlive) { + while (!Platform.isAlive) { + delay(1000) + } + + isLoading = false + } + + if (isLoading) { + Loading() + return@KernelSUTheme + } + + val webDebugging = prefs.getBoolean("enable_web_debugging", false) + val erudaInject = prefs.getBoolean("use_webuix_eruda", false) + val dark = isSystemInDarkTheme() + + val options = rememberWebUIOptions( + modId = ModId(moduleId), + debug = webDebugging, + appVersionCode = BuildConfig.VERSION_CODE, + isDarkMode = dark, + enableEruda = erudaInject, + cls = WebUIXActivity::class.java, + userAgentString = userAgent + ) + + // idk why webuix not allow root impl change webuiConfig + // so we use magic to force exitConfirm shutdown + val field = WebUIConfig::class.java.getDeclaredField("exitConfirm") + field.isAccessible = true + field.set(options.config, false) + field.isAccessible = false + + WebUIScreen( + webView = webView, + options = options, + interfaces = listOf( + WebViewInterface.factory() + ) + ) + } + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/webui/WebViewInterface.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/webui/WebViewInterface.kt new file mode 100644 index 0000000..1e27104 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/webui/WebViewInterface.kt @@ -0,0 +1,279 @@ +package com.sukisu.ultra.ui.webui + +import android.app.Activity +import android.content.pm.ApplicationInfo +import android.os.Handler +import android.os.Looper +import android.text.TextUtils +import android.view.Window +import android.webkit.JavascriptInterface +import android.widget.Toast +import androidx.core.content.pm.PackageInfoCompat +import androidx.core.view.WindowInsetsCompat +import androidx.core.view.WindowInsetsControllerCompat +import com.dergoogler.mmrl.webui.interfaces.WXInterface +import com.dergoogler.mmrl.webui.interfaces.WXOptions +import com.dergoogler.mmrl.webui.model.JavaScriptInterface +import com.sukisu.ultra.ui.viewmodel.SuperUserViewModel +import com.sukisu.ultra.ui.util.* +import com.topjohnwu.superuser.CallbackList +import com.topjohnwu.superuser.ShellUtils +import com.topjohnwu.superuser.internal.UiThreadHandler +import org.json.JSONArray +import org.json.JSONObject +import java.io.File +import java.util.concurrent.CompletableFuture + +@Suppress("unused") +class WebViewInterface( + wxOptions: WXOptions, +) : WXInterface(wxOptions) { + override var name: String = "ksu" + + companion object { + fun factory() = JavaScriptInterface(WebViewInterface::class.java) + } + + private val modDir get() = "/data/adb/modules/${modId.id}" + + @JavascriptInterface + fun exec(cmd: String): String { + return withNewRootShell(true) { ShellUtils.fastCmd(this, cmd) } + } + + @JavascriptInterface + fun exec(cmd: String, callbackFunc: String) { + exec(cmd, null, callbackFunc) + } + + private fun processOptions(sb: StringBuilder, options: String?) { + val opts = if (options == null) JSONObject() else { + JSONObject(options) + } + + val cwd = opts.optString("cwd") + if (!TextUtils.isEmpty(cwd)) { + sb.append("cd ${cwd};") + } + + opts.optJSONObject("env")?.let { env -> + env.keys().forEach { key -> + sb.append("export ${key}=${env.getString(key)};") + } + } + } + + @JavascriptInterface + fun exec( + cmd: String, + options: String?, + callbackFunc: String + ) { + val finalCommand = buildString { + processOptions(this, options) + append(cmd) + } + + val result = withNewRootShell(true) { + newJob().add(finalCommand).to(ArrayList(), ArrayList()).exec() + } + val stdout = result.out.joinToString(separator = "\n") + val stderr = result.err.joinToString(separator = "\n") + + val jsCode = + "(function() { try { ${callbackFunc}(${result.code}, ${ + JSONObject.quote( + stdout + ) + }, ${JSONObject.quote(stderr)}); } catch(e) { console.error(e); } })();" + webView.post { + webView.evaluateJavascript(jsCode, null) + } + } + + @JavascriptInterface + fun spawn(command: String, args: String, options: String?, callbackFunc: String) { + val finalCommand = buildString { + processOptions(this, options) + + if (!TextUtils.isEmpty(args)) { + append(command).append(" ") + JSONArray(args).let { argsArray -> + for (i in 0 until argsArray.length()) { + append("${argsArray.getString(i)} ") + } + } + } else { + append(command) + } + } + + val shell = createRootShell(true) + + val emitData = fun(name: String, data: String) { + val jsCode = + "(function() { try { ${callbackFunc}.${name}.emit('data', ${ + JSONObject.quote( + data + ) + }); } catch(e) { console.error('emitData', e); } })();" + webView.post { + webView.evaluateJavascript(jsCode, null) + } + } + + val stdout = object : CallbackList(UiThreadHandler::runAndWait) { + override fun onAddElement(s: String) { + emitData("stdout", s) + } + } + + val stderr = object : CallbackList(UiThreadHandler::runAndWait) { + override fun onAddElement(s: String) { + emitData("stderr", s) + } + } + + val future = shell.newJob().add(finalCommand).to(stdout, stderr).enqueue() + val completableFuture = CompletableFuture.supplyAsync { + future.get() + } + + completableFuture.thenAccept { result -> + val emitExitCode = + $$"(function() { try { $${callbackFunc}.emit('exit', $${result.code}); } catch(e) { console.error(`emitExit error: ${e}`); } })();" + webView.post { + webView.evaluateJavascript(emitExitCode, null) + } + + if (result.code != 0) { + val emitErrCode = + "(function() { try { var err = new Error(); err.exitCode = ${result.code}; err.message = ${ + JSONObject.quote( + result.err.joinToString( + "\n" + ) + ) + };${callbackFunc}.emit('error', err); } catch(e) { console.error('emitErr', e); } })();" + webView.post { + webView.evaluateJavascript(emitErrCode, null) + } + } + }.whenComplete { _, _ -> + runCatching { shell.close() } + } + } + + @JavascriptInterface + fun toast(msg: String) { + webView.post { + Toast.makeText(context, msg, Toast.LENGTH_SHORT).show() + } + } + + @JavascriptInterface + fun fullScreen(enable: Boolean) { + if (context is Activity) { + Handler(Looper.getMainLooper()).post { + if (enable) { + hideSystemUI(activity.window) + } else { + showSystemUI(activity.window) + } + } + } + } + + @JavascriptInterface + fun moduleInfo(): String { + val moduleInfos = JSONArray(listModules()) + val currentModuleInfo = JSONObject() + currentModuleInfo.put("moduleDir", modDir) + val moduleId = File(modDir).getName() + for (i in 0 until moduleInfos.length()) { + val currentInfo = moduleInfos.getJSONObject(i) + + if (currentInfo.getString("id") != moduleId) { + continue + } + + val keys = currentInfo.keys() + for (key in keys) { + currentModuleInfo.put(key, currentInfo.get(key)) + } + break + } + return currentModuleInfo.toString() + } + + @JavascriptInterface + fun listPackages(type: String): String { + val packageNames = SuperUserViewModel.apps + .filter { appInfo -> + val flags = appInfo.packageInfo.applicationInfo?.flags ?: 0 + when (type.lowercase()) { + "system" -> (flags and ApplicationInfo.FLAG_SYSTEM) != 0 + "user" -> (flags and ApplicationInfo.FLAG_SYSTEM) == 0 + else -> true + } + } + .map { it.packageName } + .sorted() + + val jsonArray = JSONArray() + for (pkgName in packageNames) { + jsonArray.put(pkgName) + } + return jsonArray.toString() + } + + @JavascriptInterface + fun getPackagesInfo(packageNamesJson: String): String { + val packageNames = JSONArray(packageNamesJson) + val jsonArray = JSONArray() + val appMap = SuperUserViewModel.apps.associateBy { it.packageName } + for (i in 0 until packageNames.length()) { + val pkgName = packageNames.getString(i) + val appInfo = appMap[pkgName] + if (appInfo != null) { + val pkg = appInfo.packageInfo + val app = pkg.applicationInfo + val obj = JSONObject() + obj.put("packageName", pkg.packageName) + obj.put("versionName", pkg.versionName ?: "") + obj.put("versionCode", PackageInfoCompat.getLongVersionCode(pkg)) + obj.put("appLabel", appInfo.label) + obj.put("isSystem", if (app != null) ((app.flags and ApplicationInfo.FLAG_SYSTEM) != 0) else JSONObject.NULL) + obj.put("uid", app?.uid ?: JSONObject.NULL) + jsonArray.put(obj) + } else { + val obj = JSONObject() + obj.put("packageName", pkgName) + obj.put("error", "Package not found or inaccessible") + jsonArray.put(obj) + } + } + return jsonArray.toString() + } + + // =================== KPM支持 ============================= + + @JavascriptInterface + fun listAllKpm(): String { + return listKpmModules() + } + + @JavascriptInterface + fun controlKpm(name: String, args: String): Int { + return controlKpmModule(name, args) + } +} + +fun hideSystemUI(window: Window) = + WindowInsetsControllerCompat(window, window.decorView).let { controller -> + controller.hide(WindowInsetsCompat.Type.systemBars()) + controller.systemBarsBehavior = WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE + } + +fun showSystemUI(window: Window) = + WindowInsetsControllerCompat(window, window.decorView).show(WindowInsetsCompat.Type.systemBars()) \ No newline at end of file diff --git a/manager/app/src/main/java/com/sukisu/ultra/utils/AssetsUtil.kt b/manager/app/src/main/java/com/sukisu/ultra/utils/AssetsUtil.kt new file mode 100644 index 0000000..91ad7c7 --- /dev/null +++ b/manager/app/src/main/java/com/sukisu/ultra/utils/AssetsUtil.kt @@ -0,0 +1,26 @@ +package com.sukisu.ultra.utils + +import android.content.Context +import java.io.File +import java.io.FileOutputStream +import java.io.IOException + +object AssetsUtil { + @Throws(IOException::class) + fun exportFiles(context: Context, src: String, out: String) { + val fileNames = context.assets.list(src) + if (fileNames?.isNotEmpty() == true) { + val file = File(out) + file.mkdirs() + fileNames.forEach { fileName -> + exportFiles(context, "$src/$fileName", "$out/$fileName") + } + } else { + context.assets.open(src).use { inputStream -> + FileOutputStream(File(out)).use { outputStream -> + inputStream.copyTo(outputStream) + } + } + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/zako/zako/zako/zakoui/screen/kernelFlash/KernelFlash.kt b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/kernelFlash/KernelFlash.kt new file mode 100644 index 0000000..a87558f --- /dev/null +++ b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/kernelFlash/KernelFlash.kt @@ -0,0 +1,475 @@ +package zako.zako.zako.zakoui.screen.kernelFlash + +import android.content.Context +import android.net.Uri +import android.os.Environment +import androidx.activity.ComponentActivity +import androidx.activity.compose.BackHandler +import androidx.compose.animation.core.animateFloatAsState +import androidx.compose.foundation.background +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.filled.ArrowBack +import androidx.compose.material.icons.filled.CheckCircle +import androidx.compose.material.icons.filled.Error +import androidx.compose.material.icons.filled.Refresh +import androidx.compose.material.icons.filled.Save +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.runtime.saveable.rememberSaveable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.input.key.Key +import androidx.compose.ui.input.key.key +import androidx.compose.ui.input.nestedscroll.nestedScroll +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.font.FontFamily +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.unit.dp +import androidx.core.content.edit +import com.ramcosta.composedestinations.annotation.Destination +import com.ramcosta.composedestinations.annotation.RootGraph +import com.ramcosta.composedestinations.navigation.DestinationsNavigator +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.component.KeyEventBlocker +import com.sukisu.ultra.ui.theme.CardConfig +import com.sukisu.ultra.ui.util.LocalSnackbarHost +import com.sukisu.ultra.ui.util.reboot +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.delay +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext +import zako.zako.zako.zakoui.screen.kernelFlash.state.FlashState +import zako.zako.zako.zakoui.screen.kernelFlash.state.HorizonKernelState +import zako.zako.zako.zakoui.screen.kernelFlash.state.HorizonKernelWorker +import java.io.File +import java.text.SimpleDateFormat +import java.util.* + +/** + * @author ShirkNeko + * @date 2025/5/31. + */ +private object KernelFlashStateHolder { + var currentState: HorizonKernelState? = null + var currentUri: Uri? = null + var currentSlot: String? = null + var currentKpmPatchEnabled: Boolean = false + var currentKpmUndoPatch: Boolean = false + var isFlashing = false +} + +/** + * Kernel刷写界面 + */ +@OptIn(ExperimentalMaterial3Api::class) +@Destination +@Composable +fun KernelFlashScreen( + navigator: DestinationsNavigator, + kernelUri: Uri, + selectedSlot: String? = null, + kpmPatchEnabled: Boolean = false, + kpmUndoPatch: Boolean = false +) { + val context = LocalContext.current + + val shouldAutoExit = remember { + val sharedPref = context.getSharedPreferences("kernel_flash_prefs", Context.MODE_PRIVATE) + sharedPref.getBoolean("auto_exit_after_flash", false) + } + + val scrollState = rememberScrollState() + val scrollBehavior = TopAppBarDefaults.pinnedScrollBehavior(rememberTopAppBarState()) + val snackBarHost = LocalSnackbarHost.current + val scope = rememberCoroutineScope() + var logText by rememberSaveable { mutableStateOf("") } + var showFloatAction by rememberSaveable { mutableStateOf(false) } + val logContent = rememberSaveable { StringBuilder() } + val horizonKernelState = remember { + if (KernelFlashStateHolder.currentState != null && + KernelFlashStateHolder.currentUri == kernelUri && + KernelFlashStateHolder.currentSlot == selectedSlot && + KernelFlashStateHolder.currentKpmPatchEnabled == kpmPatchEnabled && + KernelFlashStateHolder.currentKpmUndoPatch == kpmUndoPatch) { + KernelFlashStateHolder.currentState!! + } else { + HorizonKernelState().also { + KernelFlashStateHolder.currentState = it + KernelFlashStateHolder.currentUri = kernelUri + KernelFlashStateHolder.currentSlot = selectedSlot + KernelFlashStateHolder.currentKpmPatchEnabled = kpmPatchEnabled + KernelFlashStateHolder.currentKpmUndoPatch = kpmUndoPatch + KernelFlashStateHolder.isFlashing = false + } + } + } + + val flashState by horizonKernelState.state.collectAsState() + val logSavedString = stringResource(R.string.log_saved) + + val onFlashComplete = { + showFloatAction = true + KernelFlashStateHolder.isFlashing = false + + // 如果需要自动退出,延迟1.5秒后退出 + if (shouldAutoExit) { + scope.launch { + delay(1500) + val sharedPref = context.getSharedPreferences("kernel_flash_prefs", Context.MODE_PRIVATE) + sharedPref.edit { remove("auto_exit_after_flash") } + (context as? ComponentActivity)?.finish() + } + } + } + + // 开始刷写 + LaunchedEffect(Unit) { + if (!KernelFlashStateHolder.isFlashing && !flashState.isCompleted && flashState.error.isEmpty()) { + withContext(Dispatchers.IO) { + KernelFlashStateHolder.isFlashing = true + val worker = HorizonKernelWorker( + context = context, + state = horizonKernelState, + slot = selectedSlot, + kpmPatchEnabled = kpmPatchEnabled, + kpmUndoPatch = kpmUndoPatch + ) + worker.uri = kernelUri + worker.setOnFlashCompleteListener(onFlashComplete) + worker.start() + + // 监听日志更新 + while (flashState.error.isEmpty()) { + if (flashState.logs.isNotEmpty()) { + logText = flashState.logs.joinToString("\n") + logContent.clear() + logContent.append(logText) + } + delay(100) + } + + if (flashState.error.isNotEmpty()) { + logText += "\n${flashState.error}\n" + logContent.append("\n${flashState.error}\n") + KernelFlashStateHolder.isFlashing = false + } + } + } else { + logText = flashState.logs.joinToString("\n") + if (flashState.error.isNotEmpty()) { + logText += "\n${flashState.error}\n" + } else if (flashState.isCompleted) { + logText += "\n${context.getString(R.string.horizon_flash_complete)}\n\n\n" + showFloatAction = true + } + } + } + + val onBack: () -> Unit = { + if (!flashState.isFlashing || flashState.isCompleted || flashState.error.isNotEmpty()) { + // 清理全局状态 + if (flashState.isCompleted || flashState.error.isNotEmpty()) { + KernelFlashStateHolder.currentState = null + KernelFlashStateHolder.currentUri = null + KernelFlashStateHolder.currentSlot = null + KernelFlashStateHolder.currentKpmPatchEnabled = false + KernelFlashStateHolder.currentKpmUndoPatch = false + KernelFlashStateHolder.isFlashing = false + } + navigator.popBackStack() + } + } + + DisposableEffect(shouldAutoExit) { + onDispose { + if (shouldAutoExit) { + KernelFlashStateHolder.currentState = null + KernelFlashStateHolder.currentUri = null + KernelFlashStateHolder.currentSlot = null + KernelFlashStateHolder.currentKpmPatchEnabled = false + KernelFlashStateHolder.currentKpmUndoPatch = false + KernelFlashStateHolder.isFlashing = false + } + } + } + + BackHandler(enabled = true) { + onBack() + } + + Scaffold( + topBar = { + TopBar( + flashState = flashState, + onBack = onBack, + onSave = { + scope.launch { + val format = SimpleDateFormat("yyyy-MM-dd-HH-mm-ss", Locale.getDefault()) + val date = format.format(Date()) + val file = File( + Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS), + "KernelSU_kernel_flash_log_${date}.log" + ) + file.writeText(logContent.toString()) + snackBarHost.showSnackbar(logSavedString.format(file.absolutePath)) + } + }, + scrollBehavior = scrollBehavior + ) + }, + floatingActionButton = { + if (showFloatAction) { + ExtendedFloatingActionButton( + onClick = { + scope.launch { + withContext(Dispatchers.IO) { + reboot() + } + } + }, + icon = { + Icon( + Icons.Filled.Refresh, + contentDescription = stringResource(id = R.string.reboot) + ) + }, + text = { + Text(text = stringResource(id = R.string.reboot)) + }, + containerColor = MaterialTheme.colorScheme.secondaryContainer, + contentColor = MaterialTheme.colorScheme.onSecondaryContainer, + expanded = true + ) + } + }, + snackbarHost = { SnackbarHost(hostState = snackBarHost) }, + contentWindowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal), + containerColor = MaterialTheme.colorScheme.background + ) { innerPadding -> + KeyEventBlocker { + it.key == Key.VolumeDown || it.key == Key.VolumeUp + } + + Column( + modifier = Modifier + .fillMaxSize() + .padding(innerPadding) + .nestedScroll(scrollBehavior.nestedScrollConnection), + ) { + FlashProgressIndicator(flashState, kpmPatchEnabled, kpmUndoPatch) + Box( + modifier = Modifier + .fillMaxWidth() + .weight(1f) + .verticalScroll(scrollState) + ) { + LaunchedEffect(logText) { + scrollState.animateScrollTo(scrollState.maxValue) + } + Text( + modifier = Modifier.padding(16.dp), + text = logText, + style = MaterialTheme.typography.bodyMedium, + fontFamily = FontFamily.Monospace, + color = MaterialTheme.colorScheme.onSurface + ) + } + } + } +} + +@Composable +private fun FlashProgressIndicator( + flashState: FlashState, + kpmPatchEnabled: Boolean = false, + kpmUndoPatch: Boolean = false +) { + val progressColor = when { + flashState.error.isNotEmpty() -> MaterialTheme.colorScheme.error + flashState.isCompleted -> MaterialTheme.colorScheme.tertiary + else -> MaterialTheme.colorScheme.primary + } + + val progress = animateFloatAsState( + targetValue = flashState.progress, + label = "FlashProgress" + ) + + Card( + modifier = Modifier + .fillMaxWidth() + .padding(16.dp), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.surfaceVariant + ) + ) { + Column( + modifier = Modifier + .fillMaxWidth() + .padding(16.dp) + ) { + Row( + modifier = Modifier.fillMaxWidth(), + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.SpaceBetween + ) { + Text( + text = when { + flashState.error.isNotEmpty() -> stringResource(R.string.flash_failed) + flashState.isCompleted -> stringResource(R.string.flash_success) + else -> stringResource(R.string.flashing) + }, + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Bold, + color = progressColor + ) + + when { + flashState.error.isNotEmpty() -> { + Icon( + imageVector = Icons.Default.Error, + contentDescription = null, + tint = MaterialTheme.colorScheme.error + ) + } + flashState.isCompleted -> { + Icon( + imageVector = Icons.Default.CheckCircle, + contentDescription = null, + tint = MaterialTheme.colorScheme.tertiary + ) + } + } + } + + // KPM状态显示 + if (kpmPatchEnabled || kpmUndoPatch) { + Spacer(modifier = Modifier.height(4.dp)) + Text( + text = if (kpmUndoPatch) stringResource(R.string.kpm_undo_patch_mode) + else stringResource(R.string.kpm_patch_mode), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.tertiary + ) + } + + Spacer(modifier = Modifier.height(8.dp)) + + if (flashState.currentStep.isNotEmpty()) { + Text( + text = flashState.currentStep, + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant + ) + + Spacer(modifier = Modifier.height(8.dp)) + } + + LinearProgressIndicator( + progress = { progress.value }, + modifier = Modifier + .fillMaxWidth() + .height(8.dp), + color = progressColor, + trackColor = MaterialTheme.colorScheme.surfaceVariant + ) + + if (flashState.error.isNotEmpty()) { + Spacer(modifier = Modifier.height(8.dp)) + + Row( + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + imageVector = Icons.Default.Error, + contentDescription = null, + tint = MaterialTheme.colorScheme.error, + modifier = Modifier.size(16.dp) + ) + } + + Spacer(modifier = Modifier.height(4.dp)) + + Text( + text = flashState.error, + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.error, + modifier = Modifier + .fillMaxWidth() + .background( + MaterialTheme.colorScheme.errorContainer.copy(alpha = 0.3f), + shape = MaterialTheme.shapes.small + ) + .padding(8.dp) + ) + } + } + } +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun TopBar( + flashState: FlashState, + onBack: () -> Unit, + onSave: () -> Unit = {}, + scrollBehavior: TopAppBarScrollBehavior? = null +) { + val statusColor = when { + flashState.error.isNotEmpty() -> MaterialTheme.colorScheme.error + flashState.isCompleted -> MaterialTheme.colorScheme.tertiary + else -> MaterialTheme.colorScheme.primary + } + + val colorScheme = MaterialTheme.colorScheme + val cardColor = if (CardConfig.isCustomBackgroundEnabled) { + colorScheme.surfaceContainerLow + } else { + colorScheme.background + } + val cardAlpha = CardConfig.cardAlpha + + TopAppBar( + title = { + Text( + text = stringResource( + when { + flashState.error.isNotEmpty() -> R.string.flash_failed + flashState.isCompleted -> R.string.flash_success + else -> R.string.kernel_flashing + } + ), + style = MaterialTheme.typography.titleLarge, + color = statusColor + ) + }, + navigationIcon = { + IconButton(onClick = onBack) { + Icon( + imageVector = Icons.AutoMirrored.Filled.ArrowBack, + contentDescription = null, + tint = MaterialTheme.colorScheme.onSurface + ) + } + }, + colors = TopAppBarDefaults.topAppBarColors( + containerColor = cardColor.copy(alpha = cardAlpha), + scrolledContainerColor = cardColor.copy(alpha = cardAlpha) + ), + actions = { + IconButton(onClick = onSave) { + Icon( + imageVector = Icons.Filled.Save, + contentDescription = stringResource(id = R.string.save_log), + tint = MaterialTheme.colorScheme.onSurfaceVariant + ) + } + }, + windowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal), + scrollBehavior = scrollBehavior + ) +} \ No newline at end of file diff --git a/manager/app/src/main/java/zako/zako/zako/zakoui/screen/kernelFlash/component/SlotSelectionDialog.kt b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/kernelFlash/component/SlotSelectionDialog.kt new file mode 100644 index 0000000..26da72c --- /dev/null +++ b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/kernelFlash/component/SlotSelectionDialog.kt @@ -0,0 +1,258 @@ +package zako.zako.zako.zakoui.screen.kernelFlash.component + +import androidx.compose.foundation.background +import androidx.compose.foundation.clickable +import androidx.compose.foundation.horizontalScroll +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.rememberScrollState +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.SdStorage +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.vector.ImageVector +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.style.TextAlign +import androidx.compose.ui.unit.dp +import com.sukisu.ultra.R + +/** + * 槽位选择对话框组件 + * 用于Kernel刷写时选择目标槽位 + */ +@OptIn(ExperimentalMaterial3Api::class) +@Composable +fun SlotSelectionDialog( + show: Boolean, + onDismiss: () -> Unit, + onSlotSelected: (String) -> Unit +) { + var currentSlot by remember { mutableStateOf(null) } + var errorMessage by remember { mutableStateOf(null) } + var selectedSlot by remember { mutableStateOf(null) } + + LaunchedEffect(Unit) { + try { + currentSlot = getCurrentSlot() + // 设置默认选择为当前槽位 + selectedSlot = when (currentSlot) { + "a" -> "a" + "b" -> "b" + else -> null + } + errorMessage = null + } catch (e: Exception) { + errorMessage = e.message + currentSlot = null + } + } + + if (show) { + val cardColor = MaterialTheme.colorScheme.surfaceContainerHighest + + AlertDialog( + onDismissRequest = onDismiss, + title = { + Text( + text = stringResource(id = R.string.select_slot_title), + style = MaterialTheme.typography.headlineSmall, + color = MaterialTheme.colorScheme.onSurface + ) + }, + text = { + Column( + modifier = Modifier.padding(vertical = 8.dp), + verticalArrangement = Arrangement.spacedBy(16.dp) + ) { + if (errorMessage != null) { + Text( + text = "Error: $errorMessage", + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.error, + textAlign = TextAlign.Center + ) + } else { + Text( + text = stringResource( + id = R.string.current_slot, + currentSlot ?: "Unknown" + ), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant, + textAlign = TextAlign.Center + ) + } + + Spacer(modifier = Modifier.height(12.dp)) + + Text( + text = stringResource(id = R.string.select_slot_description), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant, + textAlign = TextAlign.Center + ) + + Spacer(modifier = Modifier.height(24.dp)) + + // Horizontal arrangement for slot options with highlighted current slot + Row( + modifier = Modifier + .fillMaxWidth() + .horizontalScroll(rememberScrollState()), + horizontalArrangement = Arrangement.SpaceBetween + ) { + val slotOptions = listOf( + ListOption( + titleText = stringResource(id = R.string.slot_a), + subtitleText = null, + icon = Icons.Filled.SdStorage + ), + ListOption( + titleText = stringResource(id = R.string.slot_b), + subtitleText = null, + icon = Icons.Filled.SdStorage + ) + ) + + slotOptions.forEachIndexed { index, option -> + Column( + modifier = Modifier + .weight(1f) + .padding(horizontal = 8.dp) + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .clip(MaterialTheme.shapes.medium) + .background( + color = if (selectedSlot == when(index) { + 0 -> "a" + else -> "b" + }) { + MaterialTheme.colorScheme.primary.copy(alpha = 0.9f) + } else { + MaterialTheme.colorScheme.primaryContainer.copy(alpha = 0.3f) + } + ) + .clickable { + selectedSlot = when(index) { + 0 -> "a" + else -> "b" + } + } + .padding(vertical = 12.dp, horizontal = 16.dp), + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + imageVector = option.icon, + contentDescription = null, + tint = if (selectedSlot == when(index) { + 0 -> "a" + else -> "b" + }) { + MaterialTheme.colorScheme.onPrimary + } else { + MaterialTheme.colorScheme.primary + }, + modifier = Modifier + .padding(end = 16.dp) + .size(24.dp) + ) + Column( + modifier = Modifier.weight(1f) + ) { + Text( + text = option.titleText, + style = MaterialTheme.typography.titleMedium, + color = if (selectedSlot == when(index) { + 0 -> "a" + else -> "b" + }) { + MaterialTheme.colorScheme.onPrimary + } else { + MaterialTheme.colorScheme.primary + } + ) + option.subtitleText?.let { + Text( + text = it, + style = MaterialTheme.typography.bodyMedium, + color = if (selectedSlot == when(index) { + 0 -> "a" + else -> "b" + }) { + MaterialTheme.colorScheme.onPrimary.copy(alpha = 0.8f) + } else { + MaterialTheme.colorScheme.onSurfaceVariant + } + ) + } + } + } + } + } + } + } + }, + confirmButton = { + TextButton( + onClick = { + selectedSlot?.let { onSlotSelected(it) } + onDismiss() + }, + enabled = selectedSlot != null + ) { + Text( + text = stringResource(android.R.string.ok), + color = MaterialTheme.colorScheme.primary + ) + } + }, + dismissButton = { + TextButton( + onClick = onDismiss + ) { + Text( + text = stringResource(android.R.string.cancel), + color = MaterialTheme.colorScheme.primary + ) + } + }, + containerColor = cardColor, + shape = MaterialTheme.shapes.extraLarge, + tonalElevation = 4.dp + ) + } +} + +// Data class for list options +data class ListOption( + val titleText: String, + val subtitleText: String?, + val icon: ImageVector +) + +// Utility function to get current slot +private fun getCurrentSlot(): String? { + return runCommandGetOutput(true, "getprop ro.boot.slot_suffix")?.let { + if (it.startsWith("_")) it.substring(1) else it + } +} + +private fun runCommandGetOutput(su: Boolean, cmd: String): String? { + return try { + val process = ProcessBuilder(if (su) "su" else "sh").start() + process.outputStream.bufferedWriter().use { writer -> + writer.write("$cmd\n") + writer.write("exit\n") + writer.flush() + } + process.inputStream.bufferedReader().use { reader -> + reader.readText().trim() + } + } catch (_: Exception) { + null + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/zako/zako/zako/zakoui/screen/kernelFlash/state/KernelFlashState.kt b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/kernelFlash/state/KernelFlashState.kt new file mode 100644 index 0000000..8cfa76b --- /dev/null +++ b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/kernelFlash/state/KernelFlashState.kt @@ -0,0 +1,524 @@ +package zako.zako.zako.zakoui.screen.kernelFlash.state + +import android.annotation.SuppressLint +import android.app.Activity +import android.content.Context +import android.net.Uri +import androidx.documentfile.provider.DocumentFile +import com.sukisu.ultra.R +import com.sukisu.ultra.network.RemoteToolsDownloader +import com.sukisu.ultra.ui.util.install +import com.sukisu.ultra.ui.util.rootAvailable +import com.sukisu.ultra.utils.AssetsUtil +import com.topjohnwu.superuser.Shell +import kotlinx.coroutines.* +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.flow.StateFlow +import kotlinx.coroutines.flow.asStateFlow +import kotlinx.coroutines.flow.update +import java.io.File +import java.io.FileOutputStream +import java.io.IOException +import java.util.zip.ZipEntry +import java.util.zip.ZipOutputStream + + +/** + * @author ShirkNeko + * @date 2025/5/31. + */ +data class FlashState( + val isFlashing: Boolean = false, + val isCompleted: Boolean = false, + val progress: Float = 0f, + val currentStep: String = "", + val logs: List = emptyList(), + val error: String = "" +) + +class HorizonKernelState { + private val _state = MutableStateFlow(FlashState()) + val state: StateFlow = _state.asStateFlow() + + fun updateProgress(progress: Float) { + _state.update { it.copy(progress = progress) } + } + + fun updateStep(step: String) { + _state.update { it.copy(currentStep = step) } + } + + fun addLog(log: String) { + _state.update { + it.copy(logs = it.logs + log) + } + } + + fun setError(error: String) { + _state.update { it.copy(error = error) } + } + + fun startFlashing() { + _state.update { + it.copy( + isFlashing = true, + isCompleted = false, + progress = 0f, + currentStep = "under preparation...", + logs = emptyList(), + error = "" + ) + } + } + + fun completeFlashing() { + _state.update { it.copy(isCompleted = true, progress = 1f) } + } + + fun reset() { + _state.value = FlashState() + } +} + +class HorizonKernelWorker( + private val context: Context, + private val state: HorizonKernelState, + private val slot: String? = null, + private val kpmPatchEnabled: Boolean = false, + private val kpmUndoPatch: Boolean = false +) : Thread() { + var uri: Uri? = null + private lateinit var filePath: String + private lateinit var binaryPath: String + private lateinit var workDir: String + + private var onFlashComplete: (() -> Unit)? = null + private var originalSlot: String? = null + private var downloaderJob: Job? = null + + fun setOnFlashCompleteListener(listener: () -> Unit) { + onFlashComplete = listener + } + + override fun run() { + state.startFlashing() + state.updateStep(context.getString(R.string.horizon_preparing)) + + filePath = "${context.filesDir.absolutePath}/${DocumentFile.fromSingleUri(context, uri!!)?.name}" + binaryPath = "${context.filesDir.absolutePath}/META-INF/com/google/android/update-binary" + workDir = "${context.filesDir.absolutePath}/work" + + try { + state.updateStep(context.getString(R.string.horizon_cleaning_files)) + state.updateProgress(0.1f) + cleanup() + + if (!rootAvailable()) { + state.setError(context.getString(R.string.root_required)) + return + } + + state.updateStep(context.getString(R.string.horizon_copying_files)) + state.updateProgress(0.2f) + copy() + + if (!File(filePath).exists()) { + state.setError(context.getString(R.string.horizon_copy_failed)) + return + } + + state.updateStep(context.getString(R.string.horizon_extracting_tool)) + state.updateProgress(0.4f) + getBinary() + + // KPM修补 + if (kpmPatchEnabled || kpmUndoPatch) { + state.updateStep(context.getString(R.string.kpm_preparing_tools)) + state.updateProgress(0.5f) + prepareKpmToolsWithDownload() + + state.updateStep( + if (kpmUndoPatch) context.getString(R.string.kpm_undoing_patch) + else context.getString(R.string.kpm_applying_patch) + ) + state.updateProgress(0.55f) + performKpmPatch() + } + + state.updateStep(context.getString(R.string.horizon_patching_script)) + state.updateProgress(0.6f) + patch() + + state.updateStep(context.getString(R.string.horizon_flashing)) + state.updateProgress(0.7f) + + val isAbDevice = isAbDevice() + + if (isAbDevice && slot != null) { + state.updateStep(context.getString(R.string.horizon_getting_original_slot)) + state.updateProgress(0.72f) + originalSlot = runCommandGetOutput("getprop ro.boot.slot_suffix") + + state.updateStep(context.getString(R.string.horizon_setting_target_slot)) + state.updateProgress(0.74f) + runCommand(true, "resetprop -n ro.boot.slot_suffix _$slot") + } + + flash() + + if (isAbDevice && !originalSlot.isNullOrEmpty()) { + state.updateStep(context.getString(R.string.horizon_restoring_original_slot)) + state.updateProgress(0.8f) + runCommand(true, "resetprop ro.boot.slot_suffix $originalSlot") + } + + try { + install() + } catch (e: Exception) { + state.updateStep("ksud update skipped: ${e.message}") + } + + state.updateStep(context.getString(R.string.horizon_flash_complete_status)) + state.completeFlashing() + + (context as? Activity)?.runOnUiThread { + onFlashComplete?.invoke() + } + } catch (e: Exception) { + state.setError(e.message ?: context.getString(R.string.horizon_unknown_error)) + + if (isAbDevice() && !originalSlot.isNullOrEmpty()) { + state.updateStep(context.getString(R.string.horizon_restoring_original_slot)) + state.updateProgress(0.8f) + runCommand(true, "resetprop ro.boot.slot_suffix $originalSlot") + } + } finally { + // 取消下载任务并清理 + downloaderJob?.cancel() + cleanupDownloader() + } + } + + private fun prepareKpmToolsWithDownload() { + try { + File(workDir).mkdirs() + val downloader = RemoteToolsDownloader(context, workDir) + + val progressListener = object : RemoteToolsDownloader.DownloadProgressListener { + override fun onProgress(fileName: String, progress: Int, total: Int) { + val percentage = if (total > 0) (progress * 100) / total else 0 + state.addLog("Downloading $fileName: $percentage% ($progress/$total bytes)") + } + + override fun onLog(message: String) { + state.addLog(message) + } + + override fun onError(fileName: String, error: String) { + state.addLog("Warning: $fileName - $error") + } + + override fun onSuccess(fileName: String, isRemote: Boolean) { + val source = if (isRemote) "remote" else "local" + state.addLog("✓ $fileName $source version prepared successfully") + } + } + + val downloadJob = CoroutineScope(Dispatchers.IO).launch { + downloader.downloadToolsAsync(progressListener) + } + + downloaderJob = downloadJob + + runBlocking { + downloadJob.join() + } + + val kptoolsPath = "$workDir/kptools" + val kpimgPath = "$workDir/kpimg" + + if (!File(kptoolsPath).exists()) { + throw IOException("kptools file preparation failed") + } + + if (!File(kpimgPath).exists()) { + throw IOException("kpimg file preparation failed") + } + + runCommand(true, "chmod a+rx $kptoolsPath") + state.addLog("KPM tools preparation completed, starting patch operation") + + } catch (_: CancellationException) { + state.addLog("KPM tools download cancelled") + throw IOException("Tool preparation process interrupted") + } catch (e: Exception) { + state.addLog("KPM tools preparation failed: ${e.message}") + + state.addLog("Attempting to use legacy local file extraction...") + try { + prepareKpmToolsLegacy() + state.addLog("Successfully used local backup files") + } catch (legacyException: Exception) { + state.addLog("Local file extraction also failed: ${legacyException.message}") + throw IOException("Unable to prepare KPM tool files: ${e.message}") + } + } + } + + private fun prepareKpmToolsLegacy() { + File(workDir).mkdirs() + + val kptoolsPath = "$workDir/kptools" + val kpimgPath = "$workDir/kpimg" + + AssetsUtil.exportFiles(context, "kptools", kptoolsPath) + if (!File(kptoolsPath).exists()) { + throw IOException("Local kptools file extraction failed") + } + + AssetsUtil.exportFiles(context, "kpimg", kpimgPath) + if (!File(kpimgPath).exists()) { + throw IOException("Local kpimg file extraction failed") + } + + runCommand(true, "chmod a+rx $kptoolsPath") + } + + private fun cleanupDownloader() { + try { + val downloader = RemoteToolsDownloader(context, workDir) + downloader.cleanup() + } catch (_: Exception) { + } + } + + /** + * 执行KPM修补操作 + */ + private fun performKpmPatch() { + try { + // 创建临时解压目录 + val extractDir = "$workDir/extracted" + File(extractDir).mkdirs() + + // 解压压缩包到临时目录 + val unzipResult = runCommand(true, "cd $extractDir && unzip -o \"$filePath\"") + if (unzipResult != 0) { + throw IOException(context.getString(R.string.kpm_extract_zip_failed)) + } + + // 查找Image文件 + val findImageResult = runCommandGetOutput("find $extractDir -name '*Image*' -type f") + if (findImageResult.isBlank()) { + throw IOException(context.getString(R.string.kpm_image_file_not_found)) + } + + val imageFile = findImageResult.lines().first().trim() + val imageDir = File(imageFile).parent + val imageName = File(imageFile).name + + state.addLog(context.getString(R.string.kpm_found_image_file, imageFile)) + + // 复制KPM工具到Image文件所在目录 + runCommand(true, "cp $workDir/kptools $imageDir/") + runCommand(true, "cp $workDir/kpimg $imageDir/") + + // 执行KPM修补命令 + val patchCommand = if (kpmUndoPatch) { + "cd $imageDir && chmod a+rx kptools && ./kptools -u -s 123 -i $imageName -k kpimg -o oImage && mv oImage $imageName" + } else { + "cd $imageDir && chmod a+rx kptools && ./kptools -p -s 123 -i $imageName -k kpimg -o oImage && mv oImage $imageName" + } + + val patchResult = runCommand(true, patchCommand) + if (patchResult != 0) { + throw IOException( + if (kpmUndoPatch) context.getString(R.string.kpm_undo_patch_failed) + else context.getString(R.string.kpm_patch_failed) + ) + } + + state.addLog( + if (kpmUndoPatch) context.getString(R.string.kpm_undo_patch_success) + else context.getString(R.string.kpm_patch_success) + ) + + // 清理KPM工具文件 + runCommand(true, "rm -f $imageDir/kptools $imageDir/kpimg $imageDir/oImage") + + // 重新打包ZIP文件 + val originalFileName = File(filePath).name + val patchedFilePath = "$workDir/patched_$originalFileName" + + repackZipFolder(extractDir, patchedFilePath) + + // 替换原始文件 + runCommand(true, "mv \"$patchedFilePath\" \"$filePath\"") + + state.addLog(context.getString(R.string.kpm_file_repacked)) + + } catch (e: Exception) { + state.addLog(context.getString(R.string.kpm_patch_operation_failed, e.message)) + throw e + } finally { + // 清理临时文件 + runCommand(true, "rm -rf $workDir") + } + } + + private fun repackZipFolder(sourceDir: String, zipFilePath: String) { + try { + val buffer = ByteArray(1024) + val sourceFolder = File(sourceDir) + + FileOutputStream(zipFilePath).use { fos -> + ZipOutputStream(fos).use { zos -> + sourceFolder.walkTopDown().forEach { file -> + if (file.isFile) { + val relativePath = file.relativeTo(sourceFolder).path + val zipEntry = ZipEntry(relativePath) + zos.putNextEntry(zipEntry) + + file.inputStream().use { fis -> + var length: Int + while (fis.read(buffer).also { length = it } > 0) { + zos.write(buffer, 0, length) + } + } + + zos.closeEntry() + } + } + } + } + } catch (e: Exception) { + throw IOException("Failed to create zip file: ${e.message}", e) + } + } + + // 检查设备是否为AB分区设备 + private fun isAbDevice(): Boolean { + val abUpdate = runCommandGetOutput("getprop ro.build.ab_update") + if (!abUpdate.toBoolean()) return false + + val slotSuffix = runCommandGetOutput("getprop ro.boot.slot_suffix") + return slotSuffix.isNotEmpty() + } + + private fun cleanup() { + runCommand(false, "find ${context.filesDir.absolutePath} -type f ! -name '*.jpg' ! -name '*.png' -delete") + runCommand(false, "rm -rf $workDir") + } + + private fun copy() { + uri?.let { safeUri -> + context.contentResolver.openInputStream(safeUri)?.use { input -> + FileOutputStream(File(filePath)).use { output -> + input.copyTo(output) + } + } + } + } + + private fun getBinary() { + runCommand(false, "unzip \"$filePath\" \"*/update-binary\" -d ${context.filesDir.absolutePath}") + if (!File(binaryPath).exists()) { + throw IOException("Failed to extract update-binary") + } + } + + @SuppressLint("StringFormatInvalid") + private fun patch() { + val kernelVersion = runCommandGetOutput("cat /proc/version") + val versionRegex = """\d+\.\d+\.\d+""".toRegex() + val version = kernelVersion.let { versionRegex.find(it) }?.value ?: "" + val toolName = if (version.isNotEmpty()) { + val parts = version.split('.') + if (parts.size >= 2) { + val major = parts[0].toIntOrNull() ?: 0 + val minor = parts[1].toIntOrNull() ?: 0 + if (major < 5 || (major == 5 && minor <= 10)) "5_10" else "5_15+" + } else { + "5_15+" + } + } else { + "5_15+" + } + val toolPath = "${context.filesDir.absolutePath}/mkbootfs" + AssetsUtil.exportFiles(context, "$toolName-mkbootfs", toolPath) + state.addLog("${context.getString(R.string.kernel_version_log, version)} ${context.getString(R.string.tool_version_log, toolName)}") + runCommand(false, "sed -i '/chmod -R 755 tools bin;/i cp -f $toolPath \$AKHOME/tools;' $binaryPath") + } + + private fun flash() { + val process = ProcessBuilder("su") + .redirectErrorStream(true) + .start() + + try { + process.outputStream.bufferedWriter().use { writer -> + writer.write("export POSTINSTALL=${context.filesDir.absolutePath}\n") + + // 写入槽位信息到临时文件 + slot?.let { selectedSlot -> + writer.write("echo \"$selectedSlot\" > ${context.filesDir.absolutePath}/bootslot\n") + } + + // 构建刷写命令 + val flashCommand = buildString { + append("sh $binaryPath 3 1 \"$filePath\"") + if (slot != null) { + append(" \"$(cat ${context.filesDir.absolutePath}/bootslot)\"") + } + append(" && touch ${context.filesDir.absolutePath}/done\n") + } + + writer.write(flashCommand) + writer.write("exit\n") + writer.flush() + } + + process.inputStream.bufferedReader().use { reader -> + reader.lineSequence().forEach { line -> + if (line.startsWith("ui_print")) { + val logMessage = line.removePrefix("ui_print").trim() + state.addLog(logMessage) + + when { + logMessage.contains("extracting", ignoreCase = true) -> { + state.updateProgress(0.75f) + } + logMessage.contains("installing", ignoreCase = true) -> { + state.updateProgress(0.85f) + } + logMessage.contains("complete", ignoreCase = true) -> { + state.updateProgress(0.95f) + } + } + } + } + } + } finally { + process.destroy() + } + + if (!File("${context.filesDir.absolutePath}/done").exists()) { + throw IOException(context.getString(R.string.flash_failed_message)) + } + } + + private fun runCommand(su: Boolean, cmd: String): Int { + val shell = if (su) "su" else "sh" + val process = Runtime.getRuntime().exec(arrayOf(shell, "-c", cmd)) + + return try { + process.waitFor() + } finally { + process.destroy() + } + } + + private fun runCommandGetOutput(cmd: String): String { + return Shell.cmd(cmd).exec().out.joinToString("\n").trim() + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/MoreSettings.kt b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/MoreSettings.kt new file mode 100644 index 0000000..1540d3a --- /dev/null +++ b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/MoreSettings.kt @@ -0,0 +1,757 @@ +package zako.zako.zako.zakoui.screen.moreSettings + +import android.annotation.SuppressLint +import android.content.Context +import android.net.Uri +import android.os.Build +import androidx.activity.compose.rememberLauncherForActivityResult +import androidx.activity.result.ActivityResultLauncher +import androidx.activity.result.contract.ActivityResultContracts +import androidx.compose.animation.* +import androidx.compose.animation.core.animateFloatAsState +import androidx.compose.foundation.* +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.filled.ArrowBack +import androidx.compose.material.icons.filled.* +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.runtime.getValue +import androidx.compose.runtime.saveable.rememberSaveable +import androidx.compose.runtime.setValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.input.nestedscroll.nestedScroll +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.style.TextOverflow +import androidx.compose.ui.unit.dp +import androidx.core.content.edit +import com.ramcosta.composedestinations.annotation.Destination +import com.ramcosta.composedestinations.annotation.RootGraph +import com.ramcosta.composedestinations.navigation.DestinationsNavigator +import zako.zako.zako.zakoui.screen.moreSettings.util.LocaleHelper +import com.sukisu.ultra.Natives +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.theme.component.ImageEditorDialog +import com.sukisu.ultra.ui.component.KsuIsValid +import com.sukisu.ultra.ui.screen.SwitchItem +import com.sukisu.ultra.ui.theme.* +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.launch +import zako.zako.zako.zakoui.screen.moreSettings.component.ColorCircle +import zako.zako.zako.zakoui.screen.moreSettings.component.LanguageSelectionDialog +import zako.zako.zako.zakoui.screen.moreSettings.component.MoreSettingsDialogs +import zako.zako.zako.zakoui.screen.moreSettings.component.SettingItem +import zako.zako.zako.zakoui.screen.moreSettings.component.SettingsCard +import zako.zako.zako.zakoui.screen.moreSettings.component.SettingsDivider +import zako.zako.zako.zakoui.screen.moreSettings.component.SwitchSettingItem +import zako.zako.zako.zakoui.screen.moreSettings.component.UidScannerSection +import zako.zako.zako.zakoui.screen.moreSettings.state.MoreSettingsState +import kotlin.math.roundToInt + +@SuppressLint("LocalContextConfigurationRead", "LocalContextResourcesRead", "ObsoleteSdkInt") +@OptIn(ExperimentalMaterial3Api::class) +@Destination +@Composable +fun MoreSettingsScreen( + navigator: DestinationsNavigator +) { + // 顶部滚动行为 + val scrollBehavior = TopAppBarDefaults.pinnedScrollBehavior(rememberTopAppBarState()) + val context = LocalContext.current + val coroutineScope = rememberCoroutineScope() + val prefs = remember { context.getSharedPreferences("settings", Context.MODE_PRIVATE) } + val systemIsDark = isSystemInDarkTheme() + + // 创建设置状态管理器 + val settingsState = remember { MoreSettingsState(context, prefs, systemIsDark) } + val settingsHandlers = remember { MoreSettingsHandlers(context, prefs, settingsState) } + + // 图片选择器 + val pickImageLauncher = rememberLauncherForActivityResult( + ActivityResultContracts.GetContent() + ) { uri: Uri? -> + uri?.let { + settingsState.selectedImageUri = it + settingsState.showImageEditor = true + } + } + + // 初始化设置 + LaunchedEffect(Unit) { + settingsHandlers.initializeSettings() + } + + // 显示图片编辑对话框 + if (settingsState.showImageEditor && settingsState.selectedImageUri != null) { + ImageEditorDialog( + imageUri = settingsState.selectedImageUri!!, + onDismiss = { + settingsState.showImageEditor = false + settingsState.selectedImageUri = null + }, + onConfirm = { transformedUri -> + settingsHandlers.handleCustomBackground(transformedUri) + settingsState.showImageEditor = false + settingsState.selectedImageUri = null + } + ) + } + + // 各种设置对话框 + MoreSettingsDialogs( + state = settingsState, + handlers = settingsHandlers + ) + + Scaffold( + modifier = Modifier.nestedScroll(scrollBehavior.nestedScrollConnection), + topBar = { + TopAppBar( + title = { + Text( + text = stringResource(R.string.more_settings), + style = MaterialTheme.typography.titleLarge + ) + }, + navigationIcon = { + IconButton(onClick = { navigator.popBackStack() }) { + Icon( + imageVector = Icons.AutoMirrored.Filled.ArrowBack, + contentDescription = stringResource(R.string.back) + ) + } + }, + colors = TopAppBarDefaults.topAppBarColors( + containerColor = MaterialTheme.colorScheme.surfaceContainerLow.copy(alpha = CardConfig.cardAlpha), + scrolledContainerColor = MaterialTheme.colorScheme.surfaceContainerLow.copy(alpha = CardConfig.cardAlpha) + ), + windowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal), + scrollBehavior = scrollBehavior + ) + }, + contentWindowInsets = WindowInsets.safeDrawing.only(WindowInsetsSides.Top + WindowInsetsSides.Horizontal) + ) { paddingValues -> + Column( + modifier = Modifier + .fillMaxSize() + .padding(paddingValues) + .verticalScroll(rememberScrollState()) + .padding(horizontal = 16.dp) + .padding(top = 8.dp) + ) { + // 外观设置 + AppearanceSettings( + state = settingsState, + handlers = settingsHandlers, + pickImageLauncher = pickImageLauncher, + coroutineScope = coroutineScope + ) + + // 自定义设置 + CustomizationSettings( + state = settingsState, + handlers = settingsHandlers + ) + + // 高级设置 + KsuIsValid { + AdvancedSettings( + state = settingsState, + handlers = settingsHandlers + ) + } + } + } +} + +@Composable +private fun AppearanceSettings( + state: MoreSettingsState, + handlers: MoreSettingsHandlers, + pickImageLauncher: ActivityResultLauncher, + coroutineScope: CoroutineScope +) { + SettingsCard(title = stringResource(R.string.appearance_settings)) { + // 语言设置 + LanguageSetting(state = state) + + // 主题模式 + SettingItem( + icon = Icons.Default.DarkMode, + title = stringResource(R.string.theme_mode), + subtitle = state.themeOptions[state.themeMode], + onClick = { state.showThemeModeDialog = true } + ) + + // 动态颜色开关 + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) { + SwitchSettingItem( + icon = Icons.Filled.ColorLens, + title = stringResource(R.string.dynamic_color_title), + summary = stringResource(R.string.dynamic_color_summary), + checked = state.useDynamicColor, + onChange = handlers::handleDynamicColorChange + ) + } + + // 主题色选择 + AnimatedVisibility( + visible = Build.VERSION.SDK_INT < Build.VERSION_CODES.S || !state.useDynamicColor, + enter = fadeIn() + expandVertically(), + exit = fadeOut() + shrinkVertically() + ) { + ThemeColorSelection(state = state) + } + + SettingsDivider() + + // DPI 设置 + DpiSettings(state = state, handlers = handlers) + + SettingsDivider() + + // 自定义背景设置 + CustomBackgroundSettings( + state = state, + handlers = handlers, + pickImageLauncher = pickImageLauncher, + coroutineScope = coroutineScope + ) + } +} + +@Composable +private fun CustomizationSettings( + state: MoreSettingsState, + handlers: MoreSettingsHandlers +) { + SettingsCard(title = stringResource(R.string.custom_settings)) { + // 图标切换 + SwitchSettingItem( + icon = Icons.Default.Android, + title = stringResource(R.string.icon_switch_title), + summary = stringResource(R.string.icon_switch_summary), + checked = state.useAltIcon, + onChange = handlers::handleIconChange + ) + + // 显示更多模块信息 + SwitchSettingItem( + icon = Icons.Filled.Info, + title = stringResource(R.string.show_more_module_info), + summary = stringResource(R.string.show_more_module_info_summary), + checked = state.showMoreModuleInfo, + onChange = handlers::handleShowMoreModuleInfoChange + ) + + // 简洁模式开关 + SwitchSettingItem( + icon = Icons.Filled.Brush, + title = stringResource(R.string.simple_mode), + summary = stringResource(R.string.simple_mode_summary), + checked = state.isSimpleMode, + onChange = handlers::handleSimpleModeChange + ) + + SwitchSettingItem( + icon = Icons.Filled.Brush, + title = stringResource(R.string.kernel_simple_kernel), + summary = stringResource(R.string.kernel_simple_kernel_summary), + checked = state.isKernelSimpleMode, + onChange = handlers::handleKernelSimpleModeChange + ) + + // 各种隐藏选项 + HideOptionsSettings(state = state, handlers = handlers) + } +} + +@Composable +private fun HideOptionsSettings( + state: MoreSettingsState, + handlers: MoreSettingsHandlers +) { + // 隐藏内核版本号 + SwitchSettingItem( + icon = Icons.Filled.VisibilityOff, + title = stringResource(R.string.hide_kernel_kernelsu_version), + summary = stringResource(R.string.hide_kernel_kernelsu_version_summary), + checked = state.isHideVersion, + onChange = handlers::handleHideVersionChange + ) + + // 隐藏模块数量等信息 + SwitchSettingItem( + icon = Icons.Filled.VisibilityOff, + title = stringResource(R.string.hide_other_info), + summary = stringResource(R.string.hide_other_info_summary), + checked = state.isHideOtherInfo, + onChange = handlers::handleHideOtherInfoChange + ) + + // SuSFS 状态信息 + SwitchSettingItem( + icon = Icons.Filled.VisibilityOff, + title = stringResource(R.string.hide_susfs_status), + summary = stringResource(R.string.hide_susfs_status_summary), + checked = state.isHideSusfsStatus, + onChange = handlers::handleHideSusfsStatusChange + ) + + // Zygisk 实现状态信息 + SwitchSettingItem( + icon = Icons.Filled.VisibilityOff, + title = stringResource(R.string.hide_zygisk_implement), + summary = stringResource(R.string.hide_zygisk_implement_summary), + checked = state.isHideZygiskImplement, + onChange = handlers::handleHideZygiskImplementChange + ) + + if (Natives.version >= Natives.MINIMAL_SUPPORTED_KPM) { + SwitchSettingItem( + icon = Icons.Filled.VisibilityOff, + title = stringResource(R.string.show_kpm_info), + summary = stringResource(R.string.show_kpm_info_summary), + checked = state.isShowKpmInfo, + onChange = handlers::handleShowKpmInfoChange + ) + } + + // 隐藏链接信息 + SwitchSettingItem( + icon = Icons.Filled.VisibilityOff, + title = stringResource(R.string.hide_link_card), + summary = stringResource(R.string.hide_link_card_summary), + checked = state.isHideLinkCard, + onChange = handlers::handleHideLinkCardChange + ) + + // 隐藏标签行 + SwitchSettingItem( + icon = Icons.Filled.VisibilityOff, + title = stringResource(R.string.hide_tag_card), + summary = stringResource(R.string.hide_tag_card_summary), + checked = state.isHideTagRow, + onChange = handlers::handleHideTagRowChange + ) +} + +@Composable +private fun AdvancedSettings( + state: MoreSettingsState, + handlers: MoreSettingsHandlers +) { + val context = LocalContext.current + val scope = rememberCoroutineScope() + val snackBarHost = remember { SnackbarHostState() } + val prefs = remember { context.getSharedPreferences("settings", Context.MODE_PRIVATE) } + + SettingsCard(title = stringResource(R.string.advanced_settings)) { + // SELinux 开关 + SwitchSettingItem( + icon = Icons.Filled.Security, + title = stringResource(R.string.selinux), + summary = if (state.selinuxEnabled) + stringResource(R.string.selinux_enabled) else + stringResource(R.string.selinux_disabled), + checked = state.selinuxEnabled, + onChange = handlers::handleSelinuxChange + ) + + var forceSignatureVerification by rememberSaveable { + mutableStateOf(prefs.getBoolean("force_signature_verification", false)) + } + + // 强制签名验证开关 + SwitchItem( + icon = Icons.Filled.Security, + title = stringResource(R.string.module_signature_verification), + summary = stringResource(R.string.module_signature_verification_summary), + checked = forceSignatureVerification, + onCheckedChange = { enabled -> + prefs.edit { putBoolean("force_signature_verification", enabled) } + forceSignatureVerification = enabled + } + ) + + // UID 扫描开关 + if (Natives.version >= Natives.MINIMAL_SUPPORTED_UID_SCANNER && Natives.version >= Natives.MINIMAL_NEW_IOCTL_KERNEL) { + UidScannerSection(prefs, snackBarHost, scope, context) + } + + // 动态管理器设置 + if (Natives.version >= Natives.MINIMAL_SUPPORTED_DYNAMIC_MANAGER && Natives.version >= Natives.MINIMAL_NEW_IOCTL_KERNEL) { + SettingItem( + icon = Icons.Filled.Security, + title = stringResource(R.string.dynamic_manager_title), + subtitle = if (state.isDynamicSignEnabled) { + stringResource(R.string.dynamic_manager_enabled_summary, state.dynamicSignSize) + } else { + stringResource(R.string.dynamic_manager_disabled) + }, + onClick = { state.showDynamicSignDialog = true } + ) + } + } +} + +@Composable +private fun ThemeColorSelection(state: MoreSettingsState) { + SettingItem( + icon = Icons.Default.Palette, + title = stringResource(R.string.theme_color), + subtitle = when (ThemeConfig.currentTheme) { + is ThemeColors.Green -> stringResource(R.string.color_green) + is ThemeColors.Purple -> stringResource(R.string.color_purple) + is ThemeColors.Orange -> stringResource(R.string.color_orange) + is ThemeColors.Pink -> stringResource(R.string.color_pink) + is ThemeColors.Gray -> stringResource(R.string.color_gray) + is ThemeColors.Yellow -> stringResource(R.string.color_yellow) + else -> stringResource(R.string.color_default) + }, + onClick = { state.showThemeColorDialog = true }, + trailingContent = { + Row( + verticalAlignment = Alignment.CenterVertically, + modifier = Modifier.padding(start = 8.dp) + ) { + val theme = ThemeConfig.currentTheme + val isDark = isSystemInDarkTheme() + + ColorCircle( + color = if (isDark) theme.primaryDark else theme.primaryLight, + isSelected = false, + modifier = Modifier.padding(horizontal = 2.dp) + ) + ColorCircle( + color = if (isDark) theme.secondaryDark else theme.secondaryLight, + isSelected = false, + modifier = Modifier.padding(horizontal = 2.dp) + ) + ColorCircle( + color = if (isDark) theme.tertiaryDark else theme.tertiaryLight, + isSelected = false, + modifier = Modifier.padding(horizontal = 2.dp) + ) + } + } + ) +} + +@Composable +private fun DpiSettings( + state: MoreSettingsState, + handlers: MoreSettingsHandlers +) { + SettingItem( + icon = Icons.Default.FormatSize, + title = stringResource(R.string.app_dpi_title), + subtitle = stringResource(R.string.app_dpi_summary), + onClick = {}, + trailingContent = { + Text( + text = handlers.getDpiFriendlyName(state.tempDpi), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.primary + ) + } + ) + + // DPI 滑动条和控制 + DpiSliderControls(state = state, handlers = handlers) +} + +@Composable +private fun DpiSliderControls( + state: MoreSettingsState, + handlers: MoreSettingsHandlers +) { + Column(modifier = Modifier.padding(horizontal = 16.dp, vertical = 8.dp)) { + val sliderValue by animateFloatAsState( + targetValue = state.tempDpi.toFloat(), + label = "DPI Slider Animation" + ) + + Slider( + value = sliderValue, + onValueChange = { newValue -> + state.tempDpi = newValue.toInt() + state.isDpiCustom = !state.dpiPresets.containsValue(state.tempDpi) + }, + valueRange = 160f..600f, + steps = 11, + colors = SliderDefaults.colors( + thumbColor = MaterialTheme.colorScheme.primary, + activeTrackColor = MaterialTheme.colorScheme.primary, + inactiveTrackColor = MaterialTheme.colorScheme.surfaceVariant + ) + ) + + // DPI 预设按钮行 + Row( + modifier = Modifier + .fillMaxWidth() + .padding(top = 8.dp), + ) { + state.dpiPresets.forEach { (name, dpi) -> + val isSelected = state.tempDpi == dpi + val buttonColor = if (isSelected) + MaterialTheme.colorScheme.primaryContainer + else + MaterialTheme.colorScheme.surfaceVariant + + Box( + modifier = Modifier + .weight(1f) + .padding(horizontal = 2.dp) + .clip(RoundedCornerShape(8.dp)) + .background(buttonColor) + .clickable { + state.tempDpi = dpi + state.isDpiCustom = false + } + .padding(vertical = 8.dp, horizontal = 4.dp), + contentAlignment = Alignment.Center + ) { + Text( + text = name, + style = MaterialTheme.typography.labelMedium, + color = if (isSelected) + MaterialTheme.colorScheme.onPrimaryContainer + else + MaterialTheme.colorScheme.onSurfaceVariant, + maxLines = 1, + overflow = TextOverflow.Ellipsis + ) + } + } + } + + Text( + text = if (state.isDpiCustom) + "${stringResource(R.string.dpi_size_custom)}: ${state.tempDpi}" + else + "${handlers.getDpiFriendlyName(state.tempDpi)}: ${state.tempDpi}", + style = MaterialTheme.typography.bodySmall, + modifier = Modifier.padding(top = 8.dp) + ) + + Button( + onClick = { state.showDpiConfirmDialog = true }, + modifier = Modifier + .fillMaxWidth() + .padding(top = 8.dp), + enabled = state.tempDpi != state.currentDpi + ) { + Icon( + Icons.Default.Check, + contentDescription = null, + modifier = Modifier.size(16.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text(stringResource(R.string.dpi_apply_settings)) + } + } +} + +@Composable +private fun CustomBackgroundSettings( + state: MoreSettingsState, + handlers: MoreSettingsHandlers, + pickImageLauncher: ActivityResultLauncher, + coroutineScope: CoroutineScope +) { + // 自定义背景开关 + SwitchSettingItem( + icon = Icons.Filled.Wallpaper, + title = stringResource(id = R.string.settings_custom_background), + summary = stringResource(id = R.string.settings_custom_background_summary), + checked = state.isCustomBackgroundEnabled, + onChange = { isChecked -> + if (isChecked) { + pickImageLauncher.launch("image/*") + } else { + handlers.handleRemoveCustomBackground() + } + } + ) + + // 透明度和亮度调节 + AnimatedVisibility( + visible = ThemeConfig.customBackgroundUri != null, + enter = fadeIn() + slideInVertically(), + exit = fadeOut() + slideOutVertically() + ) { + BackgroundAdjustmentControls( + state = state, + handlers = handlers, + coroutineScope = coroutineScope + ) + } +} + +@Composable +private fun BackgroundAdjustmentControls( + state: MoreSettingsState, + handlers: MoreSettingsHandlers, + coroutineScope: CoroutineScope +) { + Column(modifier = Modifier.padding(horizontal = 16.dp, vertical = 8.dp)) { + // 透明度滑动条 + AlphaSlider(state = state, handlers = handlers, coroutineScope = coroutineScope) + + // 亮度调节滑动条 + DimSlider(state = state, handlers = handlers, coroutineScope = coroutineScope) + } +} + +@Composable +private fun AlphaSlider( + state: MoreSettingsState, + handlers: MoreSettingsHandlers, + coroutineScope: CoroutineScope +) { + Row( + verticalAlignment = Alignment.CenterVertically, + modifier = Modifier.padding(bottom = 4.dp) + ) { + Icon( + Icons.Filled.Opacity, + contentDescription = null, + modifier = Modifier.size(20.dp), + tint = MaterialTheme.colorScheme.primary + ) + Spacer(modifier = Modifier.width(8.dp)) + Text( + text = stringResource(R.string.settings_card_alpha), + style = MaterialTheme.typography.titleSmall + ) + Spacer(modifier = Modifier.weight(1f)) + Text( + text = "${(state.cardAlpha * 100).roundToInt()}%", + style = MaterialTheme.typography.labelMedium, + ) + } + + val alphaSliderValue by animateFloatAsState( + targetValue = state.cardAlpha, + label = "Alpha Slider Animation" + ) + + Slider( + value = alphaSliderValue, + onValueChange = { newValue -> + handlers.handleCardAlphaChange(newValue) + }, + onValueChangeFinished = { + coroutineScope.launch(Dispatchers.IO) { + saveCardConfig(handlers.context) + } + }, + valueRange = 0f..1f, + steps = 20, + colors = SliderDefaults.colors( + thumbColor = MaterialTheme.colorScheme.primary, + activeTrackColor = MaterialTheme.colorScheme.primary, + inactiveTrackColor = MaterialTheme.colorScheme.surfaceVariant + ) + ) +} + +@Composable +private fun DimSlider( + state: MoreSettingsState, + handlers: MoreSettingsHandlers, + coroutineScope: CoroutineScope +) { + Row( + verticalAlignment = Alignment.CenterVertically, + modifier = Modifier.padding(top = 16.dp, bottom = 4.dp) + ) { + Icon( + Icons.Filled.LightMode, + contentDescription = null, + modifier = Modifier.size(20.dp), + tint = MaterialTheme.colorScheme.primary + ) + Spacer(modifier = Modifier.width(8.dp)) + Text( + text = stringResource(R.string.settings_card_dim), + style = MaterialTheme.typography.titleSmall + ) + Spacer(modifier = Modifier.weight(1f)) + Text( + text = "${(state.cardDim * 100).roundToInt()}%", + style = MaterialTheme.typography.labelMedium, + ) + } + + val dimSliderValue by animateFloatAsState( + targetValue = state.cardDim, + label = "Dim Slider Animation" + ) + + Slider( + value = dimSliderValue, + onValueChange = { newValue -> + handlers.handleCardDimChange(newValue) + }, + onValueChangeFinished = { + coroutineScope.launch(Dispatchers.IO) { + saveCardConfig(handlers.context) + } + }, + valueRange = 0f..1f, + steps = 20, + colors = SliderDefaults.colors( + thumbColor = MaterialTheme.colorScheme.primary, + activeTrackColor = MaterialTheme.colorScheme.primary, + inactiveTrackColor = MaterialTheme.colorScheme.surfaceVariant + ) + ) +} + +fun saveCardConfig(context: Context) { + CardConfig.save(context) +} + +@Composable +private fun LanguageSetting(state: MoreSettingsState) { + val context = LocalContext.current + val language = stringResource(id = R.string.settings_language) + + // Compute display name based on current app locale + val currentLanguageDisplay = remember(state.currentAppLocale) { + val locale = state.currentAppLocale + if (locale != null) { + locale.getDisplayName(locale) + } else { + context.getString(R.string.language_system_default) + } + } + + SettingItem( + icon = Icons.Filled.Translate, + title = language, + subtitle = currentLanguageDisplay, + onClick = { state.showLanguageDialog = true } + ) + + // Language Selection Dialog + if (state.showLanguageDialog) { + LanguageSelectionDialog( + onLanguageSelected = { newLocale -> + // Update local state immediately + state.currentAppLocale = LocaleHelper.getCurrentAppLocale(context) + // Apply locale change immediately for Android < 13 + LocaleHelper.restartActivity(context) + }, + onDismiss = { state.showLanguageDialog = false } + ) + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/MoreSettingsHandlers.kt b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/MoreSettingsHandlers.kt new file mode 100644 index 0000000..b5b9921 --- /dev/null +++ b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/MoreSettingsHandlers.kt @@ -0,0 +1,459 @@ +package zako.zako.zako.zakoui.screen.moreSettings + +import android.content.Context +import android.content.Intent +import android.content.SharedPreferences +import android.content.res.Configuration +import android.net.Uri +import android.widget.Toast +import androidx.compose.animation.AnimatedVisibility +import androidx.compose.animation.expandVertically +import androidx.compose.animation.fadeIn +import androidx.compose.animation.fadeOut +import androidx.compose.animation.shrinkVertically +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.CleaningServices +import androidx.compose.material.icons.filled.Groups +import androidx.compose.material.icons.filled.Scanner +import androidx.compose.material3.SnackbarHostState +import androidx.compose.runtime.Composable +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import androidx.core.content.edit +import com.sukisu.ultra.Natives +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.component.ConfirmResult +import com.sukisu.ultra.ui.component.rememberConfirmDialog +import com.sukisu.ultra.ui.screen.SettingItem +import com.sukisu.ultra.ui.screen.SwitchItem +import com.sukisu.ultra.ui.theme.* +import com.sukisu.ultra.ui.util.* +import com.topjohnwu.superuser.Shell +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext +import zako.zako.zako.zakoui.screen.moreSettings.state.MoreSettingsState +import zako.zako.zako.zakoui.screen.moreSettings.util.toggleLauncherIcon + +/** + * 更多设置处理器 + */ +class MoreSettingsHandlers( + val context: Context, + private val prefs: SharedPreferences, + private val state: MoreSettingsState +) { + + /** + * 初始化设置 + */ + fun initializeSettings() { + // 加载设置 + CardConfig.load(context) + state.cardAlpha = CardConfig.cardAlpha + state.cardDim = CardConfig.cardDim + state.isCustomBackgroundEnabled = ThemeConfig.customBackgroundUri != null + + // 设置主题模式 + state.themeMode = when (ThemeConfig.forceDarkMode) { + true -> 2 + false -> 1 + null -> 0 + } + + // 确保卡片样式跟随主题模式 + when (state.themeMode) { + 2 -> { // 深色 + CardConfig.isUserDarkModeEnabled = true + CardConfig.isUserLightModeEnabled = false + } + 1 -> { // 浅色 + CardConfig.isUserDarkModeEnabled = false + CardConfig.isUserLightModeEnabled = true + } + 0 -> { // 跟随系统 + CardConfig.isUserDarkModeEnabled = false + CardConfig.isUserLightModeEnabled = false + } + } + + // 如果启用了系统跟随且系统是深色模式,应用深色模式默认值 + if (state.themeMode == 0 && state.systemIsDark) { + CardConfig.setThemeDefaults(true) + } + + state.currentDpi = prefs.getInt("app_dpi", state.systemDpi) + state.tempDpi = state.currentDpi + + CardConfig.save(context) + + // 初始化 SELinux 状态 + state.selinuxEnabled = Shell.cmd("getenforce").exec().out.firstOrNull() == "Enforcing" + + // 初始化动态管理器配置 + state.dynamicSignConfig = Natives.getDynamicManager() + state.dynamicSignConfig?.let { config -> + if (config.isValid()) { + state.isDynamicSignEnabled = true + state.dynamicSignSize = config.size.toString() + state.dynamicSignHash = config.hash + } + } + } + + /** + * 处理主题模式变更 + */ + fun handleThemeModeChange(index: Int) { + state.themeMode = index + val newThemeMode = when (index) { + 0 -> null // 跟随系统 + 1 -> false // 浅色 + 2 -> true // 深色 + else -> null + } + context.saveThemeMode(newThemeMode) + ThemeConfig.updateTheme(darkMode = newThemeMode) + + when (index) { + 2 -> { // 深色 + ThemeConfig.updateTheme(darkMode = true) + CardConfig.updateThemePreference(darkMode = true, lightMode = false) + CardConfig.setThemeDefaults(true) + CardConfig.save(context) + } + 1 -> { // 浅色 + ThemeConfig.updateTheme(darkMode = false) + CardConfig.updateThemePreference(darkMode = false, lightMode = true) + CardConfig.setThemeDefaults(false) + CardConfig.save(context) + } + 0 -> { // 跟随系统 + ThemeConfig.updateTheme(darkMode = null) + CardConfig.updateThemePreference(darkMode = null, lightMode = null) + val isNightModeActive = (context.resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK) == Configuration.UI_MODE_NIGHT_YES + CardConfig.setThemeDefaults(isNightModeActive) + CardConfig.save(context) + } + } + } + + /** + * 处理主题色变更 + */ + fun handleThemeColorChange(theme: ThemeColors) { + context.saveThemeColors(when (theme) { + ThemeColors.Green -> "green" + ThemeColors.Purple -> "purple" + ThemeColors.Orange -> "orange" + ThemeColors.Pink -> "pink" + ThemeColors.Gray -> "gray" + ThemeColors.Yellow -> "yellow" + else -> "default" + }) + ThemeConfig.updateTheme(theme = theme) + } + + /** + * 处理动态颜色变更 + */ + fun handleDynamicColorChange(enabled: Boolean) { + state.useDynamicColor = enabled + context.saveDynamicColorState(enabled) + ThemeConfig.updateTheme(dynamicColor = enabled) + } + + /** + * 获取DPI大小友好名称 + */ + @Composable + fun getDpiFriendlyName(dpi: Int): String { + return when (dpi) { + 240 -> stringResource(R.string.dpi_size_small) + 320 -> stringResource(R.string.dpi_size_medium) + 420 -> stringResource(R.string.dpi_size_large) + 560 -> stringResource(R.string.dpi_size_extra_large) + else -> stringResource(R.string.dpi_size_custom) + } + } + + /** + * 应用 DPI 设置 + */ + fun handleDpiApply() { + if (state.tempDpi != state.currentDpi) { + prefs.edit { + putInt("app_dpi", state.tempDpi) + } + + state.currentDpi = state.tempDpi + Toast.makeText( + context, + context.getString(R.string.dpi_applied_success, state.tempDpi), + Toast.LENGTH_SHORT + ).show() + + val restartIntent = context.packageManager.getLaunchIntentForPackage(context.packageName) + restartIntent?.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK or Intent.FLAG_ACTIVITY_NEW_TASK) + context.startActivity(restartIntent) + + state.showDpiConfirmDialog = false + } + } + + /** + * 处理自定义背景 + */ + fun handleCustomBackground(transformedUri: Uri) { + context.saveAndApplyCustomBackground(transformedUri) + state.isCustomBackgroundEnabled = true + CardConfig.cardElevation = 0.dp + CardConfig.isCustomBackgroundEnabled = true + saveCardConfig(context) + + Toast.makeText( + context, + context.getString(R.string.background_set_success), + Toast.LENGTH_SHORT + ).show() + } + + /** + * 处理移除自定义背景 + */ + fun handleRemoveCustomBackground() { + context.saveCustomBackground(null) + state.isCustomBackgroundEnabled = false + CardConfig.cardAlpha = 1f + CardConfig.cardDim = 0f + CardConfig.isCustomAlphaSet = false + CardConfig.isCustomDimSet = false + CardConfig.isCustomBackgroundEnabled = false + saveCardConfig(context) + ThemeConfig.preventBackgroundRefresh = false + + context.getSharedPreferences("theme_prefs", Context.MODE_PRIVATE).edit { + putBoolean("prevent_background_refresh", false) + } + + Toast.makeText( + context, + context.getString(R.string.background_removed), + Toast.LENGTH_SHORT + ).show() + } + + /** + * 处理卡片透明度变更 + */ + fun handleCardAlphaChange(newValue: Float) { + state.cardAlpha = newValue + CardConfig.cardAlpha = newValue + CardConfig.isCustomAlphaSet = true + prefs.edit { + putBoolean("is_custom_alpha_set", true) + putFloat("card_alpha", newValue) + } + } + + /** + * 处理卡片亮度变更 + */ + fun handleCardDimChange(newValue: Float) { + state.cardDim = newValue + CardConfig.cardDim = newValue + CardConfig.isCustomDimSet = true + prefs.edit { + putBoolean("is_custom_dim_set", true) + putFloat("card_dim", newValue) + } + } + + /** + * 处理图标变更 + */ + fun handleIconChange(newValue: Boolean) { + prefs.edit { putBoolean("use_alt_icon", newValue) } + state.useAltIcon = newValue + toggleLauncherIcon(context, newValue) + Toast.makeText(context, context.getString(R.string.icon_switched), Toast.LENGTH_SHORT).show() + } + + /** + * 处理简洁模式变更 + */ + fun handleSimpleModeChange(newValue: Boolean) { + prefs.edit { putBoolean("is_simple_mode", newValue) } + state.isSimpleMode = newValue + } + + /** + * 处理内核简洁模式变更 + */ + fun handleKernelSimpleModeChange(newValue: Boolean) { + prefs.edit { putBoolean("is_kernel_simple_mode", newValue) } + state.isKernelSimpleMode = newValue + } + + /** + * 处理隐藏版本变更 + */ + fun handleHideVersionChange(newValue: Boolean) { + prefs.edit { putBoolean("is_hide_version", newValue) } + state.isHideVersion = newValue + } + + /** + * 处理隐藏其他信息变更 + */ + fun handleHideOtherInfoChange(newValue: Boolean) { + prefs.edit { putBoolean("is_hide_other_info", newValue) } + state.isHideOtherInfo = newValue + } + + /** + * 处理显示KPM信息变更 + */ + fun handleShowKpmInfoChange(newValue: Boolean) { + prefs.edit { putBoolean("show_kpm_info", newValue) } + state.isShowKpmInfo = newValue + } + + /** + * 处理隐藏SuSFS状态变更 + */ + fun handleHideSusfsStatusChange(newValue: Boolean) { + prefs.edit { putBoolean("is_hide_susfs_status", newValue) } + state.isHideSusfsStatus = newValue + } + + /** + * 处理隐藏Zygisk实现变更 + */ + fun handleHideZygiskImplementChange(newValue: Boolean) { + prefs.edit { putBoolean("is_hide_zygisk_Implement", newValue) } + state.isHideZygiskImplement = newValue + } + + /** + * 处理隐藏链接卡片变更 + */ + fun handleHideLinkCardChange(newValue: Boolean) { + prefs.edit { putBoolean("is_hide_link_card", newValue) } + state.isHideLinkCard = newValue + } + + /** + * 处理隐藏标签行变更 + */ + fun handleHideTagRowChange(newValue: Boolean) { + prefs.edit { putBoolean("is_hide_tag_row", newValue) } + state.isHideTagRow = newValue + } + + /** + * 处理显示更多模块信息变更 + */ + fun handleShowMoreModuleInfoChange(newValue: Boolean) { + prefs.edit { putBoolean("show_more_module_info", newValue) } + state.showMoreModuleInfo = newValue + } + + /** + * 处理SELinux变更 + */ + fun handleSelinuxChange(enabled: Boolean) { + val command = if (enabled) "setenforce 1" else "setenforce 0" + Shell.getShell().newJob().add(command).exec().let { result -> + if (result.isSuccess) { + state.selinuxEnabled = enabled + val message = if (enabled) + context.getString(R.string.selinux_enabled_toast) + else + context.getString(R.string.selinux_disabled_toast) + + Toast.makeText(context, message, Toast.LENGTH_SHORT).show() + } else { + Toast.makeText( + context, + context.getString(R.string.selinux_change_failed), + Toast.LENGTH_SHORT + ).show() + } + } + } + + /** + * 处理动态管理器配置 + */ + fun handleDynamicManagerConfig(enabled: Boolean, size: String, hash: String) { + if (enabled) { + val parsedSize = parseDynamicSignSize(size) + if (parsedSize != null && parsedSize > 0 && hash.length == 64) { + val success = Natives.setDynamicManager(parsedSize, hash) + if (success) { + state.dynamicSignConfig = Natives.DynamicManagerConfig(parsedSize, hash) + state.isDynamicSignEnabled = true + state.dynamicSignSize = size + state.dynamicSignHash = hash + Toast.makeText( + context, + context.getString(R.string.dynamic_manager_set_success), + Toast.LENGTH_SHORT + ).show() + } else { + Toast.makeText( + context, + context.getString(R.string.dynamic_manager_set_failed), + Toast.LENGTH_SHORT + ).show() + } + } else { + Toast.makeText( + context, + context.getString(R.string.invalid_sign_config), + Toast.LENGTH_SHORT + ).show() + } + } else { + val success = Natives.clearDynamicManager() + if (success) { + state.dynamicSignConfig = null + state.isDynamicSignEnabled = false + state.dynamicSignSize = "" + state.dynamicSignHash = "" + Toast.makeText( + context, + context.getString(R.string.dynamic_manager_disabled_success), + Toast.LENGTH_SHORT + ).show() + } else { + Toast.makeText( + context, + context.getString(R.string.dynamic_manager_clear_failed), + Toast.LENGTH_SHORT + ).show() + } + } + } + + /** + * 解析动态签名大小 + */ + private fun parseDynamicSignSize(input: String): Int? { + return try { + when { + input.startsWith("0x", true) -> input.substring(2).toInt(16) + else -> input.toInt() + } + } catch (_: NumberFormatException) { + null + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/component/MoreSettingsComponents.kt b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/component/MoreSettingsComponents.kt new file mode 100644 index 0000000..3c182c1 --- /dev/null +++ b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/component/MoreSettingsComponents.kt @@ -0,0 +1,201 @@ +package zako.zako.zako.zakoui.screen.moreSettings.component + +import androidx.compose.foundation.* +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.shape.CircleShape +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.filled.NavigateNext +import androidx.compose.material3.* +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.vector.ImageVector +import androidx.compose.ui.text.style.TextOverflow +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import com.sukisu.ultra.ui.theme.* + +private val SETTINGS_GROUP_SPACING = 16.dp + +@Composable +fun SettingsCard( + title: String, + icon: ImageVector? = null, + content: @Composable () -> Unit +) { + Card( + modifier = Modifier + .fillMaxWidth() + .padding(bottom = SETTINGS_GROUP_SPACING), + colors = getCardColors(MaterialTheme.colorScheme.surfaceContainerHigh), + elevation = getCardElevation(), + shape = MaterialTheme.shapes.medium + ) { + Column(modifier = Modifier.padding(vertical = 8.dp)) { + Row( + verticalAlignment = Alignment.CenterVertically, + modifier = Modifier + .fillMaxWidth() + .height(48.dp) + .padding(horizontal = 16.dp) + ) { + if (icon != null) { + Icon( + imageVector = icon, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + modifier = Modifier.size(24.dp) + ) + Spacer(modifier = Modifier.width(12.dp)) + } + Text( + text = title, + style = MaterialTheme.typography.titleMedium, + ) + } + content() + } + } +} + +@Composable +fun SettingItem( + icon: ImageVector, + title: String, + subtitle: String? = null, + onClick: () -> Unit, + iconTint: Color = MaterialTheme.colorScheme.primary, + trailingContent: @Composable (() -> Unit)? = { + Icon( + Icons.AutoMirrored.Filled.NavigateNext, + contentDescription = null, + tint = MaterialTheme.colorScheme.onSurfaceVariant + ) + } +) { + Row( + modifier = Modifier + .fillMaxWidth() + .clickable(onClick = onClick) + .padding(horizontal = 16.dp, vertical = 5.dp), + verticalAlignment = Alignment.Top + ) { + Icon( + imageVector = icon, + contentDescription = null, + tint = iconTint, + modifier = Modifier + .padding(end = 16.dp) + .size(24.dp) + ) + + Column( + modifier = Modifier.weight(1f), + verticalArrangement = Arrangement.Center + ) { + Text( + text = title, + style = MaterialTheme.typography.titleMedium, + maxLines = Int.MAX_VALUE, + overflow = TextOverflow.Visible + ) + if (subtitle != null) { + Spacer(modifier = Modifier.height(2.dp)) + Text( + text = subtitle, + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant, + maxLines = Int.MAX_VALUE, + overflow = TextOverflow.Visible + ) + } + } + + trailingContent?.invoke() + } +} + +@Composable +fun SwitchSettingItem( + icon: ImageVector, + title: String, + summary: String? = null, + checked: Boolean, + onChange: (Boolean) -> Unit +) { + Row( + modifier = Modifier + .fillMaxWidth() + .clickable { onChange(!checked) } + .padding(horizontal = 16.dp, vertical = 10.dp), + verticalAlignment = Alignment.Top + ) { + Icon( + imageVector = icon, + contentDescription = null, + tint = if (checked) MaterialTheme.colorScheme.primary else MaterialTheme.colorScheme.onSurfaceVariant, + modifier = Modifier + .padding(end = 16.dp) + .size(24.dp) + ) + + Column( + modifier = Modifier.weight(1f), + verticalArrangement = Arrangement.Center + ) { + Text( + text = title, + style = MaterialTheme.typography.titleMedium, + lineHeight = 20.sp, + ) + if (summary != null) { + Spacer(modifier = Modifier.height(2.dp)) + Text( + text = summary, + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant, + lineHeight = 16.sp, + ) + } + } + + Switch( + checked = checked, + onCheckedChange = onChange + ) + } +} + +@Composable +fun SettingsDivider() { + HorizontalDivider( + modifier = Modifier.padding(vertical = 8.dp) + ) +} + +@Composable +fun ColorCircle( + color: Color, + isSelected: Boolean, + modifier: Modifier = Modifier +) { + Box( + modifier = modifier + .size(20.dp) + .clip(CircleShape) + .background(color) + .then( + if (isSelected) { + Modifier.border( + width = 2.dp, + color = MaterialTheme.colorScheme.primary, + shape = CircleShape + ) + } else { + Modifier + } + ) + ) +} \ No newline at end of file diff --git a/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/component/MoreSettingsDialogs.kt b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/component/MoreSettingsDialogs.kt new file mode 100644 index 0000000..cebfd8b --- /dev/null +++ b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/component/MoreSettingsDialogs.kt @@ -0,0 +1,620 @@ +package zako.zako.zako.zakoui.screen.moreSettings.component + +import android.content.Context +import android.content.SharedPreferences +import androidx.compose.animation.AnimatedVisibility +import androidx.compose.animation.expandVertically +import androidx.compose.animation.fadeIn +import androidx.compose.animation.fadeOut +import androidx.compose.animation.shrinkVertically +import androidx.compose.foundation.* +import androidx.compose.foundation.layout.* +import androidx.compose.foundation.text.KeyboardOptions +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.Check +import androidx.compose.material.icons.filled.CleaningServices +import androidx.compose.material.icons.filled.Groups +import androidx.compose.material.icons.filled.Scanner +import androidx.compose.material3.* +import androidx.compose.runtime.* +import androidx.compose.runtime.setValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.input.KeyboardType +import androidx.compose.ui.unit.dp +import androidx.core.content.edit +import com.maxkeppeker.sheets.core.models.base.Header +import com.maxkeppeker.sheets.core.models.base.rememberUseCaseState +import com.maxkeppeler.sheets.list.ListDialog +import com.maxkeppeler.sheets.list.models.ListOption +import com.maxkeppeler.sheets.list.models.ListSelection +import com.sukisu.ultra.Natives +import zako.zako.zako.zakoui.screen.moreSettings.util.LocaleHelper +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.component.ConfirmResult +import com.sukisu.ultra.ui.component.rememberConfirmDialog +import com.sukisu.ultra.ui.screen.SwitchItem +import com.sukisu.ultra.ui.theme.* +import com.sukisu.ultra.ui.util.cleanRuntimeEnvironment +import com.sukisu.ultra.ui.util.getUidMultiUserScan +import com.sukisu.ultra.ui.util.readUidScannerFile +import com.sukisu.ultra.ui.util.setUidAutoScan +import com.sukisu.ultra.ui.util.setUidMultiUserScan +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext +import zako.zako.zako.zakoui.screen.moreSettings.MoreSettingsHandlers +import zako.zako.zako.zakoui.screen.moreSettings.state.MoreSettingsState + +@Composable +fun MoreSettingsDialogs( + state: MoreSettingsState, + handlers: MoreSettingsHandlers +) { + // 主题模式选择对话框 + if (state.showThemeModeDialog) { + SingleChoiceDialog( + title = stringResource(R.string.theme_mode), + options = state.themeOptions, + selectedIndex = state.themeMode, + onOptionSelected = { index -> + handlers.handleThemeModeChange(index) + }, + onDismiss = { state.showThemeModeDialog = false } + ) + } + + // DPI 设置确认对话框 + if (state.showDpiConfirmDialog) { + ConfirmDialog( + title = stringResource(R.string.dpi_confirm_title), + message = stringResource(R.string.dpi_confirm_message, state.currentDpi, state.tempDpi), + summaryText = stringResource(R.string.dpi_confirm_summary), + confirmText = stringResource(R.string.confirm), + dismissText = stringResource(R.string.cancel), + onConfirm = { handlers.handleDpiApply() }, + onDismiss = { + state.showDpiConfirmDialog = false + state.tempDpi = state.currentDpi + } + ) + } + + // 主题色选择对话框 + if (state.showThemeColorDialog) { + ThemeColorDialog( + onColorSelected = { theme -> + handlers.handleThemeColorChange(theme) + state.showThemeColorDialog = false + }, + onDismiss = { state.showThemeColorDialog = false } + ) + } + + // 动态管理器配置对话框 + if (state.showDynamicSignDialog) { + DynamicManagerDialog( + state = state, + onConfirm = { enabled, size, hash -> + handlers.handleDynamicManagerConfig(enabled, size, hash) + state.showDynamicSignDialog = false + }, + onDismiss = { state.showDynamicSignDialog = false } + ) + } +} + +@Composable +fun SingleChoiceDialog( + title: String, + options: List, + selectedIndex: Int, + onOptionSelected: (Int) -> Unit, + onDismiss: () -> Unit +) { + AlertDialog( + onDismissRequest = onDismiss, + title = { Text(title) }, + text = { + Column(modifier = Modifier.verticalScroll(rememberScrollState())) { + options.forEachIndexed { index, option -> + Row( + modifier = Modifier + .fillMaxWidth() + .clickable { + onOptionSelected(index) + onDismiss() + } + .padding(vertical = 12.dp), + verticalAlignment = Alignment.CenterVertically + ) { + RadioButton( + selected = selectedIndex == index, + onClick = null + ) + Spacer(modifier = Modifier.width(8.dp)) + Text(option) + } + } + } + }, + confirmButton = { + TextButton(onClick = onDismiss) { + Text(stringResource(R.string.cancel)) + } + } + ) +} + +@Composable +fun ConfirmDialog( + title: String, + message: String, + summaryText: String? = null, + confirmText: String = stringResource(R.string.confirm), + dismissText: String = stringResource(R.string.cancel), + onConfirm: () -> Unit, + onDismiss: () -> Unit +) { + AlertDialog( + onDismissRequest = onDismiss, + title = { Text(title) }, + text = { + Column { + Text(message) + if (summaryText != null) { + Spacer(modifier = Modifier.height(8.dp)) + Text( + summaryText, + style = MaterialTheme.typography.bodySmall + ) + } + } + }, + confirmButton = { + TextButton(onClick = onConfirm) { + Text(confirmText) + } + }, + dismissButton = { + TextButton(onClick = onDismiss) { + Text(dismissText) + } + } + ) +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +fun LanguageSelectionDialog( + onLanguageSelected: (String) -> Unit, + onDismiss: () -> Unit +) { + val context = LocalContext.current + val prefs = context.getSharedPreferences("settings", Context.MODE_PRIVATE) + + // Check if should use system language settings + if (LocaleHelper.useSystemLanguageSettings) { + // Android 13+ - Jump to system settings + LocaleHelper.launchSystemLanguageSettings(context) + onDismiss() + } else { + // Android < 13 - Show app language selector + // Dynamically detect supported locales from resources + val supportedLocales = remember { + val locales = mutableListOf() + + // Add system default first + locales.add(java.util.Locale.ROOT) // This will represent "System Default" + + // Dynamically detect available locales by checking resource directories + val resourceDirs = listOf( + "ar", "bg", "de", "fa", "fr", "hu", "in", "it", + "ja", "ko", "pl", "pt-rBR", "ru", "th", "tr", + "uk", "vi", "zh-rCN", "zh-rTW" + ) + + resourceDirs.forEach { dir -> + try { + val locale = when { + dir.contains("-r") -> { + val parts = dir.split("-r") + java.util.Locale.Builder() + .setLanguage(parts[0]) + .setRegion(parts[1]) + .build() + } + else -> java.util.Locale.Builder() + .setLanguage(dir) + .build() + } + + // Test if this locale has translated resources + val config = android.content.res.Configuration() + config.setLocale(locale) + val localizedContext = context.createConfigurationContext(config) + + // Try to get a translated string to verify the locale is supported + val testString = localizedContext.getString(R.string.settings_language) + val defaultString = context.getString(R.string.settings_language) + + // If the string is different or it's English, it's supported + if (testString != defaultString || locale.language == "en") { + locales.add(locale) + } + } catch (_: Exception) { + // Skip unsupported locales + } + } + + // Sort by display name + val sortedLocales = locales.drop(1).sortedBy { it.getDisplayName(it) } + mutableListOf().apply { + add(locales.first()) // System default first + addAll(sortedLocales) + } + } + + val allOptions = supportedLocales.map { locale -> + val tag = if (locale == java.util.Locale.ROOT) { + "system" + } else if (locale.country.isEmpty()) { + locale.language + } else { + "${locale.language}_${locale.country}" + } + + val displayName = if (locale == java.util.Locale.ROOT) { + context.getString(R.string.language_system_default) + } else { + locale.getDisplayName(locale) + } + + tag to displayName + } + + val currentLocale = prefs.getString("app_locale", "system") ?: "system" + val options = allOptions.map { (tag, displayName) -> + ListOption( + titleText = displayName, + selected = currentLocale == tag + ) + } + + var selectedIndex by remember { + mutableIntStateOf(allOptions.indexOfFirst { (tag, _) -> currentLocale == tag }) + } + + ListDialog( + state = rememberUseCaseState( + visible = true, + onFinishedRequest = { + if (selectedIndex >= 0 && selectedIndex < allOptions.size) { + val newLocale = allOptions[selectedIndex].first + prefs.edit { putString("app_locale", newLocale) } + onLanguageSelected(newLocale) + } + onDismiss() + }, + onCloseRequest = { + onDismiss() + } + ), + header = Header.Default( + title = stringResource(R.string.settings_language), + ), + selection = ListSelection.Single( + showRadioButtons = true, + options = options + ) { index, _ -> + selectedIndex = index + } + ) + } +} +@Composable +fun ThemeColorDialog( + onColorSelected: (ThemeColors) -> Unit, + onDismiss: () -> Unit +) { + val themeColorOptions = listOf( + stringResource(R.string.color_default) to ThemeColors.Default, + stringResource(R.string.color_green) to ThemeColors.Green, + stringResource(R.string.color_purple) to ThemeColors.Purple, + stringResource(R.string.color_orange) to ThemeColors.Orange, + stringResource(R.string.color_pink) to ThemeColors.Pink, + stringResource(R.string.color_gray) to ThemeColors.Gray, + stringResource(R.string.color_yellow) to ThemeColors.Yellow + ) + + AlertDialog( + onDismissRequest = onDismiss, + title = { Text(stringResource(R.string.choose_theme_color)) }, + text = { + Column { + themeColorOptions.forEach { (name, theme) -> + Row( + modifier = Modifier + .fillMaxWidth() + .clickable { onColorSelected(theme) } + .padding(vertical = 12.dp), + verticalAlignment = Alignment.CenterVertically + ) { + val isDark = isSystemInDarkTheme() + Box( + modifier = Modifier.padding(end = 12.dp) + ) { + Row(verticalAlignment = Alignment.CenterVertically) { + ColorCircle( + color = if (isDark) theme.primaryDark else theme.primaryLight, + isSelected = false, + modifier = Modifier.padding(horizontal = 2.dp) + ) + ColorCircle( + color = if (isDark) theme.secondaryDark else theme.secondaryLight, + isSelected = false, + modifier = Modifier.padding(horizontal = 2.dp) + ) + ColorCircle( + color = if (isDark) theme.tertiaryDark else theme.tertiaryLight, + isSelected = false, + modifier = Modifier.padding(horizontal = 2.dp) + ) + } + } + Text(name) + Spacer(modifier = Modifier.weight(1f)) + // 当前选中的主题显示选中标记 + if (ThemeConfig.currentTheme::class == theme::class) { + Icon( + Icons.Default.Check, + contentDescription = null, + tint = MaterialTheme.colorScheme.primary + ) + } + } + } + } + }, + confirmButton = { + Button( + onClick = onDismiss + ) { + Text(stringResource(R.string.cancel)) + } + } + ) +} + +@Composable +fun DynamicManagerDialog( + state: MoreSettingsState, + onConfirm: (Boolean, String, String) -> Unit, + onDismiss: () -> Unit +) { + var localEnabled by remember { mutableStateOf(state.isDynamicSignEnabled) } + var localSize by remember { mutableStateOf(state.dynamicSignSize) } + var localHash by remember { mutableStateOf(state.dynamicSignHash) } + + fun parseDynamicSignSize(input: String): Int? { + return try { + when { + input.startsWith("0x", true) -> input.substring(2).toInt(16) + else -> input.toInt() + } + } catch (_: NumberFormatException) { + null + } + } + + AlertDialog( + onDismissRequest = onDismiss, + title = { Text(stringResource(R.string.dynamic_manager_title)) }, + text = { + Column( + modifier = Modifier.verticalScroll(rememberScrollState()) + ) { + // 启用开关 + Row( + modifier = Modifier + .fillMaxWidth() + .clickable { localEnabled = !localEnabled } + .padding(vertical = 8.dp), + verticalAlignment = Alignment.CenterVertically + ) { + Switch( + checked = localEnabled, + onCheckedChange = { localEnabled = it } + ) + Spacer(modifier = Modifier.width(12.dp)) + Text(stringResource(R.string.enable_dynamic_manager)) + } + + Spacer(modifier = Modifier.height(16.dp)) + + // 签名大小输入 + OutlinedTextField( + value = localSize, + onValueChange = { input -> + val isValid = when { + input.isEmpty() -> true + input.matches(Regex("^\\d+$")) -> true + input.matches(Regex("^0[xX][0-9a-fA-F]*$")) -> true + else -> false + } + if (isValid) { + localSize = input + } + }, + label = { Text(stringResource(R.string.signature_size)) }, + enabled = localEnabled, + modifier = Modifier.fillMaxWidth(), + singleLine = true, + keyboardOptions = KeyboardOptions( + keyboardType = KeyboardType.Text + ) + ) + + Spacer(modifier = Modifier.height(12.dp)) + + // 签名哈希输入 + OutlinedTextField( + value = localHash, + onValueChange = { hash -> + if (hash.all { it in '0'..'9' || it in 'a'..'f' || it in 'A'..'F' }) { + localHash = hash + } + }, + label = { Text(stringResource(R.string.signature_hash)) }, + enabled = localEnabled, + modifier = Modifier.fillMaxWidth(), + singleLine = true, + supportingText = { + Text(stringResource(R.string.hash_must_be_64_chars)) + }, + isError = localEnabled && localHash.isNotEmpty() && localHash.length != 64 + ) + } + }, + confirmButton = { + Button( + onClick = { onConfirm(localEnabled, localSize, localHash) }, + enabled = if (localEnabled) { + parseDynamicSignSize(localSize)?.let { it > 0 } == true && + localHash.length == 64 + } else true + ) { + Text(stringResource(R.string.confirm)) + } + }, + dismissButton = { + TextButton(onClick = onDismiss) { + Text(stringResource(R.string.cancel)) + } + } + ) +} + +@Composable +fun UidScannerSection( + prefs: SharedPreferences, + snackBarHost: SnackbarHostState, + scope: CoroutineScope, + context: Context +) { + if (Natives.version < Natives.MINIMAL_SUPPORTED_UID_SCANNER) return + + val realAuto = Natives.isUidScannerEnabled() + val realMulti = getUidMultiUserScan() + + var autoOn by remember { mutableStateOf(realAuto) } + var multiOn by remember { mutableStateOf(realMulti) } + + LaunchedEffect(Unit) { + autoOn = realAuto + multiOn = realMulti + prefs.edit { + putBoolean("uid_auto_scan", autoOn) + putBoolean("uid_multi_user_scan", multiOn) + } + } + + SwitchItem( + icon = Icons.Filled.Scanner, + title = stringResource(R.string.uid_auto_scan_title), + summary = stringResource(R.string.uid_auto_scan_summary), + checked = autoOn, + onCheckedChange = { target -> + autoOn = target + if (!target) multiOn = false + + scope.launch(Dispatchers.IO) { + setUidAutoScan(target) + val actual = Natives.isUidScannerEnabled() || readUidScannerFile() + withContext(Dispatchers.Main) { + autoOn = actual + if (!actual) multiOn = false + prefs.edit { + putBoolean("uid_auto_scan", actual) + putBoolean("uid_multi_user_scan", multiOn) + } + if (actual != target) { + snackBarHost.showSnackbar( + context.getString(R.string.uid_scanner_setting_failed) + ) + } + } + } + } + ) + + AnimatedVisibility( + visible = autoOn, + enter = fadeIn() + expandVertically(), + exit = fadeOut() + shrinkVertically() + ) { + SwitchItem( + icon = Icons.Filled.Groups, + title = stringResource(R.string.uid_multi_user_scan_title), + summary = stringResource(R.string.uid_multi_user_scan_summary), + checked = multiOn, + onCheckedChange = { target -> + scope.launch(Dispatchers.IO) { + val ok = setUidMultiUserScan(target) + withContext(Dispatchers.Main) { + if (ok) { + multiOn = target + prefs.edit { putBoolean("uid_multi_user_scan", target) } + } else { + snackBarHost.showSnackbar( + context.getString(R.string.uid_scanner_setting_failed) + ) + } + } + } + } + ) + } + + AnimatedVisibility( + visible = autoOn, + enter = fadeIn() + expandVertically(), + exit = fadeOut() + shrinkVertically() + ) { + val confirmDialog = rememberConfirmDialog() + com.sukisu.ultra.ui.screen.SettingItem( + icon = Icons.Filled.CleaningServices, + title = stringResource(R.string.clean_runtime_environment), + summary = stringResource(R.string.clean_runtime_environment_summary), + onClick = { + scope.launch { + if (confirmDialog.awaitConfirm( + title = context.getString(R.string.clean_runtime_environment), + content = context.getString(R.string.clean_runtime_environment_confirm) + ) == ConfirmResult.Confirmed + ) { + if (cleanRuntimeEnvironment()) { + autoOn = false + multiOn = false + prefs.edit { + putBoolean("uid_auto_scan", false) + putBoolean("uid_multi_user_scan", false) + } + Natives.setUidScannerEnabled(false) + snackBarHost.showSnackbar( + context.getString(R.string.clean_runtime_environment_success) + ) + } else { + snackBarHost.showSnackbar( + context.getString(R.string.clean_runtime_environment_failed) + ) + } + } + } + } + ) + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/state/MoreSettingsState.kt b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/state/MoreSettingsState.kt new file mode 100644 index 0000000..26e9593 --- /dev/null +++ b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/state/MoreSettingsState.kt @@ -0,0 +1,101 @@ +package zako.zako.zako.zakoui.screen.moreSettings.state + +import android.content.Context +import android.content.SharedPreferences +import android.net.Uri +import androidx.compose.runtime.Stable +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableFloatStateOf +import androidx.compose.runtime.mutableIntStateOf +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.setValue +import zako.zako.zako.zakoui.screen.moreSettings.util.LocaleHelper +import com.sukisu.ultra.Natives +import com.sukisu.ultra.R +import com.sukisu.ultra.ui.theme.CardConfig +import com.sukisu.ultra.ui.theme.ThemeConfig + +/** + * 更多设置状态管理 + */ +@Stable +class MoreSettingsState( + val context: Context, + val prefs: SharedPreferences, + val systemIsDark: Boolean +) { + // 主题模式选择 + var themeMode by mutableIntStateOf( + when (ThemeConfig.forceDarkMode) { + true -> 2 // 深色 + false -> 1 // 浅色 + null -> 0 // 跟随系统 + } + ) + + // 动态颜色开关状态 + var useDynamicColor by mutableStateOf(ThemeConfig.useDynamicColor) + + // 语言设置 + var showLanguageDialog by mutableStateOf(false) + var currentAppLocale by mutableStateOf(LocaleHelper.getCurrentAppLocale(context)) + + // 对话框显示状态 + var showThemeModeDialog by mutableStateOf(false) + var showThemeColorDialog by mutableStateOf(false) + var showDpiConfirmDialog by mutableStateOf(false) + var showImageEditor by mutableStateOf(false) + + // 动态管理器配置状态 + var dynamicSignConfig by mutableStateOf(null) + var isDynamicSignEnabled by mutableStateOf(false) + var dynamicSignSize by mutableStateOf("") + var dynamicSignHash by mutableStateOf("") + var showDynamicSignDialog by mutableStateOf(false) + + + // 各种设置开关状态 + var isSimpleMode by mutableStateOf(prefs.getBoolean("is_simple_mode", false)) + var isHideVersion by mutableStateOf(prefs.getBoolean("is_hide_version", false)) + var isHideOtherInfo by mutableStateOf(prefs.getBoolean("is_hide_other_info", false)) + var isShowKpmInfo by mutableStateOf(prefs.getBoolean("show_kpm_info", false)) + var isHideZygiskImplement by mutableStateOf(prefs.getBoolean("is_hide_zygisk_Implement", false)) + var isHideSusfsStatus by mutableStateOf(prefs.getBoolean("is_hide_susfs_status", false)) + var isHideLinkCard by mutableStateOf(prefs.getBoolean("is_hide_link_card", false)) + var isHideTagRow by mutableStateOf(prefs.getBoolean("is_hide_tag_row", false)) + var isKernelSimpleMode by mutableStateOf(prefs.getBoolean("is_kernel_simple_mode", false)) + var showMoreModuleInfo by mutableStateOf(prefs.getBoolean("show_more_module_info", false)) + var useAltIcon by mutableStateOf(prefs.getBoolean("use_alt_icon", false)) + + // SELinux状态 + var selinuxEnabled by mutableStateOf(false) + + // 卡片配置状态 + var cardAlpha by mutableFloatStateOf(CardConfig.cardAlpha) + var cardDim by mutableFloatStateOf(CardConfig.cardDim) + var isCustomBackgroundEnabled by mutableStateOf(ThemeConfig.customBackgroundUri != null) + + // 图片选择状态 + var selectedImageUri by mutableStateOf(null) + + // DPI 设置 + val systemDpi = context.resources.displayMetrics.densityDpi + var currentDpi by mutableIntStateOf(prefs.getInt("app_dpi", systemDpi)) + var tempDpi by mutableIntStateOf(currentDpi) + var isDpiCustom by mutableStateOf(true) + + // 主题模式选项 + val themeOptions = listOf( + context.getString(R.string.theme_follow_system), + context.getString(R.string.theme_light), + context.getString(R.string.theme_dark) + ) + + // 预设 DPI 选项 + val dpiPresets = mapOf( + context.getString(R.string.dpi_size_small) to 240, + context.getString(R.string.dpi_size_medium) to 320, + context.getString(R.string.dpi_size_large) to 420, + context.getString(R.string.dpi_size_extra_large) to 560 + ) +} \ No newline at end of file diff --git a/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/util/LocaleHelper.kt b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/util/LocaleHelper.kt new file mode 100644 index 0000000..f383ec9 --- /dev/null +++ b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/util/LocaleHelper.kt @@ -0,0 +1,154 @@ +package zako.zako.zako.zakoui.screen.moreSettings.util + +import android.annotation.SuppressLint +import android.annotation.TargetApi +import android.app.Activity +import android.content.Context +import android.content.Intent +import android.content.res.Configuration +import android.net.Uri +import android.os.Build +import android.provider.Settings +import java.util.* + +object LocaleHelper { + + /** + * Check if should use system language settings (Android 13+) + */ + val useSystemLanguageSettings: Boolean + get() = Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU + + /** + * Launch system app locale settings (Android 13+) + */ + fun launchSystemLanguageSettings(context: Context) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + try { + val intent = Intent(Settings.ACTION_APP_LOCALE_SETTINGS).apply { + data = Uri.fromParts("package", context.packageName, null) + } + context.startActivity(intent) + } catch (_: Exception) { + // Fallback to app language settings if system settings not available + } + } + } + + /** + * Apply saved language setting to context (for Android < 13) + */ + fun applyLanguage(context: Context): Context { + // On Android 13+, language is handled by system + if (useSystemLanguageSettings) { + return context + } + + val prefs = context.getSharedPreferences("settings", Context.MODE_PRIVATE) + val localeTag = prefs.getString("app_locale", "system") ?: "system" + + return if (localeTag == "system") { + context + } else { + val locale = parseLocaleTag(localeTag) + setLocale(context, locale) + } + } + + /** + * Set locale for context (Android < 13) + */ + @SuppressLint("ObsoleteSdkInt") + private fun setLocale(context: Context, locale: Locale): Context { + return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { + updateResources(context, locale) + } else { + updateResourcesLegacy(context, locale) + } + } + + @SuppressLint("UseRequiresApi", "ObsoleteSdkInt") + @TargetApi(Build.VERSION_CODES.N) + private fun updateResources(context: Context, locale: Locale): Context { + val configuration = Configuration() + configuration.setLocale(locale) + configuration.setLayoutDirection(locale) + return context.createConfigurationContext(configuration) + } + + @Suppress("DEPRECATION") + @SuppressWarnings("deprecation") + private fun updateResourcesLegacy(context: Context, locale: Locale): Context { + Locale.setDefault(locale) + val resources = context.resources + val configuration = resources.configuration + configuration.locale = locale + configuration.setLayoutDirection(locale) + resources.updateConfiguration(configuration, resources.displayMetrics) + return context + } + + /** + * Parse locale tag to Locale object + */ + private fun parseLocaleTag(tag: String): Locale { + return try { + if (tag.contains("_")) { + val parts = tag.split("_") + Locale.Builder() + .setLanguage(parts[0]) + .setRegion(parts.getOrNull(1) ?: "") + .build() + } else { + Locale.Builder() + .setLanguage(tag) + .build() + } + } catch (_: Exception) { + Locale.getDefault() + } + } + + /** + * Restart activity to apply language change (Android < 13) + */ + fun restartActivity(context: Context) { + if (context is Activity && !useSystemLanguageSettings) { + context.recreate() + } + } + + /** + * Get current app locale + */ + @SuppressLint("ObsoleteSdkInt") + fun getCurrentAppLocale(context: Context): Locale? { + return if (useSystemLanguageSettings) { + // Android 13+ - get from system app locale settings + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + try { + val localeManager = context.getSystemService(Context.LOCALE_SERVICE) as? android.app.LocaleManager + val locales = localeManager?.applicationLocales + if (locales != null && !locales.isEmpty) { + locales.get(0) + } else { + null // System default + } + } catch (_: Exception) { + null // System default + } + } else { + null // System default + } + } else { + // Android < 13 - get from SharedPreferences + val prefs = context.getSharedPreferences("settings", Context.MODE_PRIVATE) + val localeTag = prefs.getString("app_locale", "system") ?: "system" + if (localeTag == "system") { + null // System default + } else { + parseLocaleTag(localeTag) + } + } + } +} \ No newline at end of file diff --git a/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/util/RestartActivityUtils.kt b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/util/RestartActivityUtils.kt new file mode 100644 index 0000000..8824505 --- /dev/null +++ b/manager/app/src/main/java/zako/zako/zako/zakoui/screen/moreSettings/util/RestartActivityUtils.kt @@ -0,0 +1,27 @@ +package zako.zako.zako.zakoui.screen.moreSettings.util + +import android.content.ComponentName +import android.content.Context +import android.content.pm.PackageManager +import com.sukisu.ultra.ui.MainActivity + +/** + * 刷新启动器图标 + */ +fun toggleLauncherIcon(context: Context, useAlt: Boolean) { + val pm = context.packageManager + val main = ComponentName(context, MainActivity::class.java.name) + val alias = ComponentName(context, "${MainActivity::class.java.name}Alias") + + pm.setComponentEnabledSetting( + if (useAlt) alias else main, + PackageManager.COMPONENT_ENABLED_STATE_ENABLED, + PackageManager.DONT_KILL_APP + ) + + pm.setComponentEnabledSetting( + if (useAlt) main else alias, + PackageManager.COMPONENT_ENABLED_STATE_DISABLED, + PackageManager.DONT_KILL_APP + ) +} \ No newline at end of file diff --git a/manager/app/src/main/jniLibs/.gitignore b/manager/app/src/main/jniLibs/.gitignore new file mode 100644 index 0000000..939b930 --- /dev/null +++ b/manager/app/src/main/jniLibs/.gitignore @@ -0,0 +1,8 @@ +libksud.so +libkernelsu.so +libsusfsd.so +libuid_scanner.so +libzakosign.so +libandroidx.graphics.path.so +libmmrl-file-manager.so +libmmrl-kernelsu.so diff --git a/manager/app/src/main/jniLibs/arm64-v8a/libksu_susfs.so b/manager/app/src/main/jniLibs/arm64-v8a/libksu_susfs.so new file mode 100644 index 0000000000000000000000000000000000000000..dbb0b6be269b63ffde2fe76063a84fff59447133 GIT binary patch literal 21688 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 WnywmKZ}|D^Md?i)h`hp6;Qs`dd$RWc literal 0 HcmV?d00001 diff --git a/manager/app/src/main/jniLibs/arm64-v8a/libmagiskboot.so b/manager/app/src/main/jniLibs/arm64-v8a/libmagiskboot.so new file mode 100644 index 0000000000000000000000000000000000000000..ce7478d6bcc148f7fd6eb211bd3d3b9c7ee758c1 GIT binary patch literal 769600 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 z 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

>B@ZihrU2HoH@a>&cTF+Fm6csTpV zB4TK3j>f-z39scW&W=lnJ&Rvbi4dLxhtMq4_FD%vjn=M&+ zyt6+{WgVz~fU!8l`fwO}lf2PhwLJe*;BSHUni#t}PeRRH{tFq`bHJhUDSwx9te-nL z{n6_ZYL72UsC}O@=Mt~%I`Y+_57QiupchqNZJjvlkz|gwO zw`t=io4UvOHD>KqcjZe*A=pmPmfb%6et~*Eb7uSXP3;M<-Gl8t4$jnu_{3Lj(EbTv z<}Mt+^cGRda@URj7v$0W$}_BOE@-Y2-HVGoC_MjM>$`yh1D{u|RoC1Wvk~+`Gtcsq zer2|ChJC*H<`e%)X<)tE&AK`ldTq4rj_z2QS9`}w1H4C8weA`!k9`+Ex&1Ha*nG7D zU7X}m`AldoNDloFn6#ct2CQ%-L{n)`=Um^zzfyW$i}z3A#ktscdO5?`|MP#PU_a^~ z_4aoAOrv7&zfwlOUB0V}wDV}I0hzmnGmH4y17p81@@zvEww;_eET2#@auhao7oDmA zrkuR;3Fg|8Q?eD4>`-xe4)$snojMBr$8AA+CbglfignlPSHJK4{l8MYhs|T++wWAZ+*MBbL!8Zu zF6*5|Z>XLzoX@H*^sremyOs=SE8G7b?VMO~QK-U^t$UfH%iwF$cjmy;f8jx1t0qPR z^Qi^-t2xtnj&m~Gu4F&7e{fJgHk&nI59@gscL{|k(|`c@u8QoNcScs*!C8Iocc1+!rj0wdm9)1lzq>2q|Y9f(KN=D(XHtvXt%p{K4Yi95??M6Oz*}T@~t$jQ*c8lTRw^Nt;9Rgpy;4x5J`@Bh;vYFXl zwK`vX>T=5KTb|nG``p@!=X1$3m!Ia9k+XclFDNe!J~Z(!`zg_T9dxvZyv*_7nT)agSb8S?%|6$T z)1c_@AIAr_Ts24omky!7g`_!$(4Xe+aq#M;ALY>e=G80FON?T^Di&gTxSzSg8gNW9 zsy!Cu-=?vke>z(}KFJ7aZR!S3ho?x-l0l!d!h34p@Mv^w_8DCGF52$rc{ckE^*K%T+?}w<<$5#A zH_YW>jH|oBwZ5S<+H6^`Wm#*}vm36h=(nJ~F`W0v{(LsF8=YBN4n8n8K!Y6Q0($(Ekn*OMc7P;kM=zL zuN18f8#sfK-Gq;|Bfds>Uo>kL%-WE}zTbmgioIT_4&%z}CzvVMPw)mDH8~fQPf%LC z|1SXFd}Md+SH<@;*Q|N1e-IbqTMMwk)ZSLlm+&kbChdt@=H}V+DuQmdZk4UWw(YQ8 zb!)U|3j5e!h*#Bvr-OsK1@WqQS=P?QDjUL(@TRJy?(AR?ewy zALRgLI?z}6YU>_3!dP0gQOUl`7p;3u@i&@=u_qqVM#+#i-~s3M(nb}qs-0fiQM<}7 zxhLJWHO&m~!52W|mFzY$`lkNzCSo$*beglsJHXRh{Ddc9^2hq&vtteQ&~})*;m4`i z0(nH2*o{wE>saw~FMEuf#PSIb)eLN@VBB5r8q+oY=GJ+q^gi{nd8gc=xjGm0Th_7( z!s`LxHaLI$0{pbDy0gClnOt`0_fUtCQ|dKxswS|ur5gWJIUxsImhx4zPfCX&`_zt*Rxy~ICVPvf5mR@9N&9QYA$W(sqEyV9~fVYqSKSiEjm-)9LAEn~U7;Q{7+O$SV zCXkF|<-U>SCH51#80Jn!7$NKL#IVU`I*K1Qx z4(yzoTHnU_cUDbyhyC}N{hZ71WIUd>inD`9*h?5@dtsNSzVOkJ#ZlPt+WTn4)UbQ`qDWDyO42xPaw}kocY{|82Cgy{180J=Xq;W-oV_~zI0mXcwJH zzgKpwvp>!5@K54A z0hl~f4m7)Xt}xy9I-57})+X19y4N_PM3)=*-L)%>;Gb4-HV+;2)5q7q?eA!>XA*JQ zfaf=~dnz-~M!rtj+S)L9ijNo5{#JB8hk;3F+4wxLevA!A$j`nETPFECjqxAjJ=2-# z84YZCCusXi+IAZYtFF7N|2^tIgF1butgz!$@oNF6yCZj4;P2fYN9bY7MW)ORDUZ(b zktw)?w7zWOsr{SQj0dCnkiKke@;2+St=(im>H&nrYPL;g2p$gq4 zW2ia2+cCO&*DCKKjsM$wf0kv{jmjAT0GhYq`f?|7L(HVjk^XdYd zyqU!Mri^P}V-_~Zodu(eg$3+UWQQewtn*IxYuHSU@&5})UJbON*_9i#mDaZx$Og0wQ9yL z$;0q$+m6j({lA%?c=l0Z9h^?i?mvYczxC=FO^@LZ_L;qRalqHa^Gs`XatrwZ>2Rs(y4u zVa>?};7se$RG$%2xj)jU(<3hGx7X?=e@4%$^KT>E;4~h-9e?)9kr_?1=+~&X6QDbE zo%aR$;dwh7`JQ(mA^I>hiB00e%lL6t?l&&HFq%96!l-m3|0n%Y(yzQQ`Y7p=(YoRH zV_9eZV$nYO@T=j^d4|z(18ZOAsd<~U{%Otlk}+=u4*KnXjy%#^8)nfPcLBqdyvJ=l z1+R7B!l?GmqVpnb6OnHgThO}36+1J#PnsL9Mpv6HuYe2vOXoarVwkOCc5&`qo)Fm4 zbH350vuEy+2zO0!gnF0@l8fAvP3@~0bJpjn2_dDGOfgfs4$D4Je8wW(h<1%IcKqc> z*cajt*1#4 zhSfhpo7_*~2wF!Ee&RD7LBVC$yN7tTjK!g3D|CqZ-pzD{-uJpg`GfWS1la#iee)8~ z%cq1Q!|NY;kv!OLh30p&N0^ro?3pw&B>Z=cxMYX%y$hq=O;*UZM{6$vC(hvK&{)@q z;XBq+r)*aik1;ah`hpRB8}Q&$v=1MQ!>(Y@z7fH$`;&KAz$bY7o=xPA3Nxy{+|C-I ze)KFgqkW!0FtUR5C*8s7wP`{5e3B=v?{5Zoqnd4zzs+sa*i>dQHjC;DJ@^DhicC8# zGTKautTv-shr2!)af?~Gw@}YLb!HTq>1j7KaOnQ}!tP7z3(ddmvA-GpT{rh0cC=OT zy?ai5VeX^tg~~fOX>Xy@tdtukbk8GyZ7hG+`SnC`*jwmIxoN@?VC~z64b#4qVAst0 z!kig<3bWep|GQ+Q!}HAOM&R$7j<@?u?S)@X@&w<##Ef$O*{QwBc}Dvuw+lzFpyMkt zqwkfP(f6+~qaQ3XqleQ|cf6OKw&R0s^@T^4n9;5qzzZ}nP;ExPyvvLZtT&_GrS*kf zMfHV;mev=xVvm=12sxv`Scuf*jS^>JAi0-}Lpji_fb-rs#ohNv0a$ zOlbylb3b~&rzUkY*O^(p%T;0{|J20h0WkolMXZ&0aLY^wc+}$f#Z_Rlt(hOWal38eR)@LROh;?=M-gG zBZ5k2&U5^3WC(usQTf;tRCm8go9N(rUI~!L)udR%%JXOHlbv%bF|&~!GJJd3_e@3? z28?0wurx?q5&F@4OEGlBo^nxpVeceoTW=BX_s3|?So`A(dZ#$sjA8S3bS1AX>`q@> z7|EU+?Jd2qjWeDa&P^9r;VX>InO{1e(p)2T>3CyCUugpI>F8Uo?93cdt!3Du`DHuZ zLwhA=|7>*mGkRIie3aQw-o9!Iyz^0$sOf{KkH9Qu2Vg-d!od8RX4_@4=Gbf#Oh z)2wlgYG~G7x9>UcYyKShtj>w;!{`99Q8r}tZZVN_&4u3g@ELj;pJwLXkppjB$r_f@ z#98P97ygBeeZcg-p*@JohZw6~{9uVI;+|?|pR<&+g*(m0tg)k7vJT#C)^q{K!9SQa z+rj0*2hEyd#-|P$@3z0T5bq*J1MSeH##`@_T`8H`5ixRJa=em zdm&>TK0^6<;O-0V2Y65GCVlUv@6dkmYRzGApmAFO4VEGwR-<$G;QOZe9mWp22%V_z zWh>?$s9ht*q9YiFY%nbRA$6*a_mI&Nc~(2JG0{F`JA1F!hhc++ZY2)KMDiR*X7D%z z1vesJZKR!FvtO^Sj-7XFJfsuoho8OY%nm2hcfqRi>6DF7uV9uQC=Rm)%ocSaixybO z#DnqA!@`vtd#5wZ|2*DH-|Rc0pXGe;S?=xuXC<`z1E&#HzOHu$7XRg)f#-J9*S{fa zir*q%XKE}o4#Iz=I?3j7vJ-x0v6WJAdpD}AR_h*@p zHe175vK-VopLc`*ukt)@*3j>?Se}NgD0uj7QbXF=Bhl}YS9)3btv-}ipEeR2)I5?s zZx3UlH9}*exgieCv9&mb&)z+ypb z{n!JGZgjrN`RTDP?q+JlZ&c6Qff4!P=z{TuK@W8CFevq5Xc}y zC>K0R`0H~fp&J*B_i5SK9IE|#OgW%o*2fv;4a`V98IO#csaT+jFdUNRiO^neP ze#-k*S;i@n-eQlD){_nR^e!F7ok-Mma1XS|f0*`$j>Sm&|4MCE+Q2esSl_AB!@Nm4GWv*lnI8FJ7L0&16yMJDm~oAdSb6zj8)zy4Ia1mo? z(npQW0mjoabCY}lYNpP7^47V*(p3?7yv9TLSuoj|Exg(|7^GLpBYlinFJpHWGD?w| zSk+B^N5F^H_LoNg>pN$yNzC3j{-W1*U>B<~e+V2sye50m$2NYFtBnnTRmH5`qOl+G z+nD=Omgd<}@UziO_TS9-_c>F-(kZI^1C)Oy|G~0{4sXA8hh0Zf^}4lJtlB?V$1SR3 zmMdFzd`um&^2v7jRK@MpTH{Rg&p7j?<{~qhvI~!Ej4n4*n#%dnelu}A(9sk37ykAU z_0T8I29mi}S}}!8Y_>->B`08K08H2~*!3Mn7TayQst?is)O%jsHsDO{Tg!8BP0F^S zxznDS$n&MxD%{NPW5LL;o!=4ahd&}mB>7*auN$fR0s3{8!)Q7}{nfy%@1J+9{BS?sS98IMZjG4UY(-T3#T`#8AQtZC$~#ff|JI@Z$u zYWC^NSpzen+o7`7IoQeW#P&Uvbn&RJOWF(RTc->DG?TXU-tr6dkM9pGR+`#=0lM_l zuGS(iyv#>FFML39AeXYXeN;5e_u)*VZ7nt}QPy(JJ@G>y{Gdqu0NrRWbMaGT0NtCX zIdlXah59a^Y`gE0)9KGtcv>SkD5Cy$)|H|*_zw5X%5E?OPua*%^1%`ER#sK#D_<_( z=OgD;I=GLSI`N4LYHbuRXWc6ko^%#1{?P+$>W^?;LEqFTH+^G0h<>WLo4}YqDC-_| zCYK7{M90Wd^;foAasDqjhpqv!HN$0(mlv3G8Dr&@y@VT>#G{96NYabQk{~o{MuMj^6dD-h%Y@mUe32h!|SZ$S$Em_sdT-5X9jD0x4n58<9 zUBftGWYm4)t&!c!i@>iode|%PFt=vijQo=K_HDa7)12A+rMG%}<}RP$fR=9?y(#OX z5f5hRoKIyW2Sp}b-}b@Zbr*4ZfF}M$P%oZOvNi z_ah&LI0v(!3GXQO8{nsFy(jq5ZAM$aen4?r)p{&?MThWk4*5m1e)1k!AE1rmwrnH2>BCKd zwvTQLATy5%bN1Qx<;)A)9N10g~@Y(5vbB-dK^n2VxIiRXoX+yg1b;#Zk--80(@?;@}M?*y-Kp zw->68z_{+4Z{gc3F6U(^s)(@i-!8hCpzw) z(_Sb!PIPk(=>y=jds2O&U%U=J%l^~0N7Q~$^XkU?%!T!1FIv^0*iyWAGseB(1bJwd z=->qH^icOS+OPPYxv=Ox_yRHg>b%CW8_7F5WwhrEzG?jGZbSB3QeU_q+{_V9veAu9 zYA@`b*Irn_yE$(An&1pks}Bb$ifVX!uzeab@Rca^BD$AsSBX6TDSYQo(53Lp z-I`(6uXE8G9NS2JZxD-8xU|nV!GXp*l3ibhABekWlKiY1o4v*CdEsTETaBCgdz7;Y z!6Nz;&1(GKgSYKwEJeSphl@qG8XtTsG8KEoYIH8F+n3kJJY8HO+L+#6c$B{B|0Di6 zkIoQHn$XB0XvC&_*$tsfQoG_^IpdzV`H+o2^wqSjcK1@h{-uvqUgi65=-INyH1*K# z*tMi_r(zLw`627Re~>Oa)i!jQOS=z_FwS)Zww4_$+WJVuneLx^+plhYX5+3;<{?L~ zs80_b%r$Dxg3tHDLln2GvTkzxtywdVsuN4&wPvPyd|vnPb9rcTszxXyw!2w`AQ&{;nzYg`C0I z-;^#|D`iZ(r?eN|IefH#1$oqeXrc2x&RpaR$hwm%-WKm`ynpfj?xvsR|6F){d*^kl zrcHqlfQxSWEdHeRHnJoTwGPZ|Vyy_e{<3rz>zN<^-buZRpM%dI{+Y@9v#_!ER5-2b zc5FdClZ{mAb^#fZ18UyH6iWW--4_?+ zjWuRQb`R&hop1GpoIhl!&*E8in_@Bax}mMSx9-~IYJRZnK>GGuIoqqwBTc%Fqyca0 zNA#To; zH8ZONsimu4to858Pkq3Czl?mv*vJUCZ`^4tv~hypQ!nGWgmME8muQdoDq}`i(^(yU4&${}?T{o>14J1{sr*D#L4j>yisb9F-4j-!fJ#!KINn%gEk$8TR zReqEEV%BA6yqNWo^KAc8GZu^F81Sgi<JtrZ3CChv)h5kWE@w=(E=GLnELOc<3T{RK-*yO))yWz^wX2o8mF~zQ7|T zt}#tTd%U}ZTcriAso3>c#lRNTCpr>OFmv}5wveVde*^#TNmm6Akv*g4kBqn$H_2n$Ir% z(!PQI=+A8j>zsy3VP};iP3l6h=M%yDqVNA7b>sTL6!XtW$vVmy$(|D4(5sd zO#i!huZe$Sjhv&p>62tY_0a@Z-PA+O=v2vWq95UD8F>0~UZCxV5Dl`_KA6P5oyaKfeK90{pg2Kz&n`4z4~XUEfuvd$5i~p6jtCMy7wY zgt?}3NWmbx>1w{k*A!%4du=tMb8UOuSRX1UB$FpL9_@v1QonE`c}noP87qhSvKxIO zbt>I>EGC=0NZz3`iR$(Ba636uKVD+Y>YVA-5$L{Gu(<=P4*bDPO?YO}s)YTqF_SLl zQp$18aqdvu+HwYMYfi>wj?wr(waZ~*pD5JG|19et-vhBIrFPVK%R*A3Q(3VGQxOJ0}D!Ij5 z8;jFwP1(=cN@jTfo`G492o~0j2l>B*diS3``1d$0k%56v1dFvcyU9BB{Y^QQ6}#30 zN8w=mzmN>a9?@ctDETTw^n}jYBIbu|Ql+ETIg$1y2iRvyc2hp#PBf`G&9`7YU1ci_ zW483}E3p3<@C1UK*9L!?_uaB|Q-_t7RLJQQy$K5T7U)b`urld$Y})r#};5 zU9s>FLMD$IYrXy2HwkuY*_pvdsmDNP5Wo(L{L;%uebncp4nHx?mSPV=Ulf0$L%2|z zrnS9H?GA18!NIn=Sm#=)r^jh@RH+T>vLE?8XDFL+8`O0a#G z+3UT!0UFX8uf3l9+~jk6ddXhfpFi#&k4-){HjeN!oZ+*FeJ;Wo32^x<7!%QMJ$1xm z0Ce-s0Jpznt!O8&LF@_Bz-P}WJ~oejo#sqP=l|B-d(czGeENi&M(R*szp{O}+uSCd zP&wx#UyT`c$*v&-{Ixht+h0Sl9R@DhYbX|i>@u>U0pj4{Z!jvX|9F3t_buvFf0wea zfY&WHIn#g+?LCX&@)~B}T+-d5F??rz{PxlhKfY)u*!xeaENdISbvLj~}+E)qBW?k6195-(2dONIlfypN5}d-Z&%e5N)~0tMg&i zsl3X!oP5HM>QugX9`!+ake7+S5&JGVn7EwW5#X}*?_s`OHWD2KdeQR3vr}Sl8-9(y zfgUW6u~*uF)7dH8h{Ky)q4&1ALmzP0rtC4gu=#k0xqBMip1?jdJ{|~Cug>SknD{qe zbs_OD`I#9V7WOd_`q7A=$SCHx5BsYeY+`g4SYh`g-9L}{cKU|rL;d&~_c2dJ18&+F z`#?$CojkvB&Y8ijgZy&TKd6`S7z7io93x^jS=#y4SZCW{t$jX zqzz=p#d=qM3*4z*i+UAPyb_#>|7g6+69@UyAZ%6tALSY;r~aY0vCFD{@#Y+G5TCQ+ z7q^jK?k;JAE@!p#Z7=s6l)GJRasCje9Sc9)n5{W>)Xb3{WXW0lH?S^fp3479wn};6 zUTKy&s;L2fgMX3V_QxIMQFn0edk6OAvQzxFx?8F9@6`P{c&w)$)tmnRqt2a!b=tW5 z>+BSr9qHNSFzndPRfGQ>{3rU1woCQhBp%5xuxH$1hP;!VA@{U|P~t+R4I^!MNH{;8 z?Cqb+I`cp9sM8~g`-i5zJ|yi{=q=tK@s7Ot^<{IJC&JC+iS=bg|BGC0wqzCEXV&-{ zbavU0bsRssR!7n~$SKF~2C;(|ur9cgIFFxc6sU~B-1sZ)e~r7C zUw0*Ws}gOR;w+E&1mvxR#%{mI%>GLZ5Bv8#o4=7q^w;_=FiAc<4SmJo z&Q(6=zt>m)jeM$a|F_h4=a77ntbecP<{{sOgUGkk@q;0G4gs6w3-J{vbg@6>-|M_) zNPg96S^u8r%5UUZp|)NBp6}uz`P7~bs$IW<6H7pB>a2ZQ-0YZ^AfOk7-r6x4=q)~!;w)IDv$Kpe(vn9%stSo{0n}t<`GY2Rez=F3cIky z*SN-EyBGNOXa9She`G##gZi6`E-&vJco~{U?P}c0 z6Jo}D@qKGZzBtX$cA7J%zU*FG{)@w6 z`o$NBsTyt_{_pMmbx1wJui)oS1Nca+T;8|zgM-Dd`VlV^&p-cL^6wauU$8EtjfQW@ z_vDa#aa^urysdA6`>}7y`%Szf`#t^S*JGI`8BqHwc;6h2S6(CX%6B;n!^Tqmb_9?; zhQM_gJz9K>$T2&3;ov&fo))(*?D>rywiB1Y@p5z$q$0F8sZYM*BTMn z(KW){A^%Uy{NeB9?<)AT##E%n#;SE-AVof%TK7(KzCe93+v4@k&ePTG8SQZ*MjAH6 zar->))TnxCPa2yHY{zv^rn zIS6;L%ddX;sNa22V3+P6T0lQM=`r{GZ@r`a)kIEM&Z z@JWyM9@KXkG;ub#yOejuU~J)zmvxN8!&SHB2di$(SDXp$56=c4oC|fvZ8c=SaDeni z)9R2vi|nan_aYmO66(@jaMdtA}wr!f(_bz^km`Hujk#?JXPU1n*#*KVeY)WEi*lm{bp2$x! zrD7Q^S=-S3hqaB(Ur^Ute3TDCr~d(cw&SzY#)x>!~U(dS6=JP0Pf%~f% z=K}smGbVHN4{hmuy48_o-Y%66)r9C+o2_+K4iO>vT6<#w2v9k)4>nqH@F z><+LC#kLB3FwcVt_?Dbn{TF+Wcxv_T(7?Qro#I)!j9bqn;h4ER0=qZtwM&8V(yOcc zFMHto{mJN4E;SQ79z@<8Fh^Ej&o~Wm#xWU~@XJx0jD@?+WuI&?H#A#jQZFJw8oJE@+ zcM)mDz}o{Zratg}&Q09a@6pG;Yj5x8dxsBRDZS}Mq@4%sV^`<)OE)DwR2J~lzQ2n; zbmMn3iT6lHarDqD#nIOt86M3w;wgaZv9=9G3ACVoPbFW>KS@5=ic3E-_$2+-7;FbO zdT$wg7f(k2b8I{Pvds2(h^X;S06u81jYj)BE{pYzG}kC&rgxNaYnQVzD^> z{W5*?hI0*bq1FL6ViW%)?JV*NPl~e(w|<8E_(nU zgs!FN$KPu&r0%D?z0htEc{uY@p1xn9TR>-Ra9*JIF8RUC+GFSKnnOB%Hg-B^Wd=Sp zI-kw?2me#?TUlk4VW(1^*o-dLwoe=%zQZ}nvwy2`?kU!1`JL254;AQ8TD^gM*+=v^ z$J^=Mq_<+%sXS}-JUx)FJ*9Zj`R168XYIPv`_97Fa|`sh9Dhh0zc&9f!PtD=$$?p? z=tqRQWLqD-ZA7R5I~8ni&<$Wu?Lm(yUlG-t99x6ri{XGC$I6B{^}aI2(wA;ynz8-X z2z9yGw@zJaEZmUWkyW<_zGEi2uiqM2CHVi-9OsuFP3w_-XT(=eK+~1<$v^0up*RTG z?%F;o%XrR&C-{h=+}p&yy0UUt4sCZGwu0EDZmxg0f6fVSadaYS5qwLmO~$ND=(o3s z`&!4=6H~Z<_DJ-NC1Yc9mGokqP1thPe0ZM=xr(`s4k6H{@lB*2dz|Uh3HqY<-utCb zf-cy@%L$8_wz~8s*+>< zRQ})7&pi6sLqE^vykjzLE56i7@H~a*6XI9&TR8p^eg8=B&TQZ;j!p;v6UZa~nw||Y z9Q1*MN^me#zN{L=Llt<4%a@hlLGmTKyXe{ALF=e&+w6EQ^j*)=p}6UL1#v`rIMWsk z8n@|dyo;pkRKHyxVw==s%sBjG?AwsBOMdxI%7PL2aGVj|#(eY3CP;UDn8&Wm&tt#o z#kOM}GG)N(;$zH6ohH=D+-dDuS6A0@?s{4vU0 zsIuNcAA{Y)%$l|M!W`tRKl0>5S@TyJbGn+aF}lmq_ThE(qmJ{)0pOpR=!=;BzfW{t zJ*R;>?fS=`AB-&F?yFJwHL<3iPaC7aO=J)!<~0SoFM8`QBi$cez%A7_npkg{{XgXaJu{A!Tt}o?O*PQm-Dn2p3k%FWn?R3<7j|9 zx3m|&&v}#J5S-xusPFNtpxW{RBmDfRHF;!kCSy>+IjV(^L#57BPn{RkxJ;+cQ%eSI z>X7|br*CTh6q+A4d%}*|=u&B`-pSA${Tfn>!TqVGS zoWglyW7d3dROB>{UB&-ryk91NFWLczPy4nGC!UgVET3=rz|=!}9LD~;;E~jG1pM{X zSp|#uF8DMT{q3*>N=WE^`Y}a^3 zpI=jajj?zo`NkYRGk6F;J;f;gNt{Q)!(GPHY1-2qWFL88Mq?Ix)xIuxkh{7ff5YI} zlgH|>Nrtqrk-wRB z%gtI{b(JwoxDqZu!Uiplv(w;I^dcHzjB2d%^<_PhubypaCir!m?uv}Uvo)`Owv_u3 zE-`j(=6^HvDZ3e^#pnHxc~)K9PY=vG#$4~g2IwfXe8QO;mK-nHo_ii^&=o7@V_0`o z``CBuu7ee<2~$~@65D@V_UnziZmrJU-&|$7n@TySuJR>j`?=#){-v@lU%QKHG+ujS?t!ePGY@1Pah`>*#8^8X=x>1QmB|OPUN#fmADeE^3*7zuTVlKP zQ*X5s+hgdx4;~F%=la3V>e8uAb_J&(9pC5(aYdL3umG0HC1RlSeC$>vk{63OmU^dVU+&zag`x4{{Y3m=MJ z=TEbCGk)c1rK^0dhNf1hyHvh<#MdeHO$Nt%^7^JthGv6-)TE@hvaY7BP*ReIwYpSv z_G{X4dB%8zpZvjgWLw(E{9}IBG(Z<;Khw}G-}cIZmPageWRv^Aw5Cgo1D%pF8o-eU z{NA!=Otz&xu6fPzKrS(`O=FJNnNi(^&1=1R-EsKH;%el1y>}qXFQ}}}2XC{xrnVQl z>&!((;M}(PF&C^VCU5r?>`#YXT|HON*egXQVM{*847E~k1U_m(+v5GqQEa5J4=Wm6 z`-(;sMCt~g>qZoGjktWrLndo3HakZ;@VjB{+Vy>C7aN^d`LEAL=P;=_)Y}n=ie^Q> zmh{ycGurf-V?4-^ZPM9^uWi82P5aIg?pb7w=<^OU+5}@Abct-N*dD1aXjU?C)H$|8 zvAW`Ojz!ScQGS*7{b|8&c#`~1S7EPlg!U!ZU}qHmcvEqkm4a&Kg4%-I6UHd{tr3FQFgrTuS*;<-p7Y`+WFGU@Dba5lAmNf z?Z@td*OqBqSgY^nUwr2T^XSuuh<^=z%YLJL$+m01L;E<8hrLF6pXg*Zyj^Rz@>Fu3 z8RmC_y`)9-f)duoypQ?L8tofl6r}516Fzm4xnD^etsUk0@PB_rrjfsb_wNCZ5Dbj(v2JKgyiV&g`R6DOo#uw-j@IMG$l71*DrHfC|Jmp|V*-h&>FxIeU&EgH*27fdWY z=Ir9Zu{yzb^kbV(O((t_IE&}Gl<%$1ah^~4HW8a;>Aa`VW;b&rmSKl2mb&HTgfSTwA3V)M7T@ZV`2@w2QV>P2sw+5^wpL;Vf4 zMw#a8i}+$S)IIN(9l7R53%H3oQ~dQyetPW@WF*a%A2L2i;2}quyP7W*4x>Y~ym4^O zsGqhU2JNbRBXw6nw@>l2=M42$VULci+~J3o)sIB>G(F5E%S^-;MUHsF}mK7UUq;ymy^HF$)083V_A|_Pocvo!lu-#v$^x%Nf}dH-hZBK zJO^dhQKnI=*mpzT3*^5$~5s{zWz(@z}mXCO!{1SjK6W~nAf@jCf_19gI5 z``diJ`3Jv6&`p=~?d*8DVg0iw#mn*S8ov4C<@h!(UJidP3}-i=sc*ovADMk9O!MW> zH3-uggXLSv1D~|}sqb?spF8+1k8i^Uzdj_3J|FEU2Z!VVbtf+dWTVYU~RJL(Ic;`=G+g}k-D z;`zA!T;KLzD#si1oy-DQS$~tQJQ?jg@2D2!_|4(~yOpGI-_Z16v*?{V-z=UtnEN z4=b+9RRfAIKFX$D$#C&+S1SFAve2pZ+-J39VTg8Zy?r@n0eKemFe;`m7QOkJUr+fa ztwB?^-3k9~f}8(>!T(zQD?S=}GVE=Q@E@@Ev-i))?&ZMe-GQE1|Igu<2%Mj>zCS}A z(W&;WRs@$iAs?Ytnm09Ip9vbN z>&kBa47*X_X709m16I^~(g=xfXqsz98^T5?jWU~-8^P~VZ$0Oik^vk^>&ng@g!6H5 z+`0iBQ7U$T(1u`;O<*PJ6&&6$hH8+HdlgwS<@ncZDne+0P zE$g5S;uq+5;&3kp4#mr7?eRaVcF|3VZ|tYN3hAeQF*v`_Q!N9Bf;aOB_{JtmGRvbI zTy67_)odG1?!$<~q&YtS^xNDgth<3%^sf|e0QLYnJLBlIU>$h3_T)6VlMXb`f82#1 zU|!hdU9diJ=RhVg1c6C+&B#7iwouOSO{3q!h}N_SJ~UMh|I$y-d`9i%(? zo&cX4W~Zw@&K_)e>Eq9dqX67$*McrB?i0;i!gY(u!~ zx_(v)bH%3VleakNo0GmJ&^N_rjM@0Q&VZh|BhMc5@<5y7G5Soa)N8n^1=nX+TulCp zD0d;{=YgxaHck|`STT$Hm(C?UhCj_gyB=sg^y$EsWzeqP<94XWZ!pR4pq!KT6YP4v ziA%L9zdg;F5@P+Im#S=|pZ>se8nQUI z&_A(Tm0o{lAo@7>K5e0__@~9Wlwo?`h|z{(vZmYX+)!NWS+pv;R2{mLNaxVHXX9iy zv70$-5=^cfBeae)Nizi>_HxCo^!f#(@FCvwLvSHp7sms0HfpkOyPZ5<${O{?4kMBM zeNJrcvb3IKuPgY4kty0q~$h(nFRf4%kf7})Sb z^M)D6FZZsQ4P}?vxQCVp%c(Eoca61*gMA6`UkrU*1U+2{oy{AZd%6oM3%rj3@4AyE z!;fE=|9$oif=lCWxBvRvDSEG@kBmF|e3#wF;!ky#*XZzA+FoWqXNE`fthk?=)2jDf z#`Vbk(A0G9u3B%}>F=VS_)dc@Py4|E^M90IV}JSw#P45XLcb0hK8^23p9ucBz#pR% z;VzE1cwd3brc22Y6@#={F-V(3eOL}9n>*gkbnJNF>)fIKSc7=%MVH^W*GZg{7npHJT^U;3%p8;^B_IP=D=us zoHf7xK!4)=CQgT1yOfuE(Zlyq$B+3{wUUoD%h(fxBR>Dz@DW%4k+4&mJ474?51={MDOCS3+pA_tZL1p8-SkG}9*R%H91JIuGJwadM{6*j5b4t(f z^@nqRR20O=@#z(xEAFzm9*M?W~}mJ;ag4{wmlv>1+E>*^c&3 zNe)$ZW1B@>+1@E5L#+KaeDk1<6@#=9=V@v;2G1xvkLX%y0sd#xhGh01@o(YZV3?ZM z>EUab3tIQJW+-pO3(sL~)UykJ@dcFq2|A?4sfN!z-RMl5X>>L+HQHOnkA{xU)x6CYk&x7;y7&&wwNb<$RyoU%ACQSZJ8|POTCiy+*6<&>&k3BwbQELwJ`P@k-_@T*oAaTq zOQ5lfp}~u6+LG;ICOGc?V~oE}?6i4pn-AOwe?8#F173tjYmF;Ajz_gG-egf$>%GQC z{Zcx%4>KZD6yq~S|2fqaCm*k>IBC4K?4DeHxOv%km$;1DpN9tTe2CR2UHcgSx|6YW z*D{RgmCRGEcbd10=-W4WmFEACCoJ&Y`+d$~9ug0LU$Q>k{D4jC;-TS+pK32Ynh@q$6#_q1_FI`L_>4;U4`=lhDyXoUCw(hOOg1GUG;UVWQKd_4Mg=o-ztc`t?nGWt^ye@X{m~h?kt|4KH|kHqxrp)@v*pbH7*|-ruPlr+oZebVlFD*r_Kau)@he%1-|Xb z%8ySp@wX=Lqj4TP%D;^{ZGbz;R8C}pazlFn-AgwbxJQMb|EGBK+AqRAeXZ58 zcGJT**llKnJ$I?C^zh?HWB+kETWQBh)7*dT9`3t@pZowh_=jbIw$I@u?=io0cZ6_$ z2;HylkPzN&c)$9V>3`!h=@^XC63If$^SJLvY|WBQW^CQ6WL^%H86^+C2VEm$+T#=9 zPGHL%*FiiCdwze)-D{sYhf{u-{k>~_0y3k0uY>)5nD>h}nZZjY#pcZyjP;j{HFxyb z-@VAouATo#Ipdm&e!+~Ko+>`AXYCW*^~6eG&#!m!)N78SU*LZ0CHe=J@9Lj>h{apW zz*7abu$)QsD*p#Rndf`=szCJpiCRO1qwH9l_&gf*Yq{!U9l!M#c+ZISMYL?P&x*B8 znJ1AmCK1;Weh?WE%cHox#0azFYDwnoA;y97qhGaS!1cmEv70EUTT47U(m%W6yU0w7 zS>G11zLl}QEgW3mG8wB;tby6!H$80J7l_GT@O9b1sO$#DqGDokK?ojMeX$u_0H0L4 z)&AQu?uDz?b4*^1&9|)ov-i&WYVR#M!@p;y9iw3W4D8m>pQx;T9|n67J=Y_X4t&h~ z;+*Le|8cu6H*?&Y6`O-PgFSW??~-#(mrcttxx)JT`SBs?#Y5x`GdBKq{+c2A#}1K0 za)*?y8B%uHkmsZ!`PUA~pF5;}yiI$tr0Gd%G)tfu-V%HUPPbWeWJDT;V)k1{wy& zUfpJx;y0P$R_bxV!}7SlT4~)g4SOxi;h8zwrhm&9g9RHWyPS1X?A;m_``6k$y^ZsU z)Yv{>jbcSu07 zW74GdbByg}my%C>=uzY}@z9i}*uU&1TEUOfmNU*jCf{NHFQB~UQn3x|sPF~+=MBpD z+Hcj`^<;z#?C;dezqK{i{-F_^)6-VpTKszO@mfHfSKsINyyo+{?RgwYwn`^X+aL2Y zu=jlF_$_kw!@Lx{=q_K~xh}Rp)xB2o5mUMYxkL96>ACxGjE9L1vHP&U$8-U)=ZXpJ zsm%;e#RS8S2cj}zhpVFx-lu#^u}e^z?172Rzi|Jm^LAa!v(l`U7xZJ#6y#gyn87jB zS`~qp={s={@qy5N97&3o^m=T=l;#7Eln=9a_xp19WNF=b;g4^nlo~FN>vXJb zdR{ggm#lxey%$%H#h5fC>(#F+}Oc# zj0LVF`z~-@Fy?ZL`$)7GTaIqo$9?fr@!#hRF6d{To;8lOX&QIWTKH$wR`gqE#e7zL zXUJ|Q7Pnopu*n@^#=YH_=V)zAh|vIYd#CP^lMVsig&qPBbtH!e(k- zaetqexEG{VxQ(`|y+(iaXwi18t&dKE`}HwDROzOH$*xmysm`_Z-$h&jyY2O{wx6Z# zU2DzFt@srktur^5b0$dL(UG(l>&Hc*)01NTSXMjOkM(Bovj>fgcggPpX2DZWxdzHf zZ>0Q(;;^7EcQPh<^jY-4{CUn-e`SGm0*wx1&W4e5qgso#kMa=n?l3TNj?}ghf5#SA zEC#8MGw%%}9d@3^vkmkVp0I2zTacH#!IQ?PVO>f=9dJz6_@lGmOZzJ4uHUXZ6^~8g zoMY;qrMv2wbD|k=8q#;2w|%+JRIH;KQ$7Iv?;-AA{qR8O{C%8ja3}X%{-}pDH19BuHPOCh{-k*~ zKC&Cg7y5Ba^NrZcETf!!CUu_E0$dJoxiO8q$!7#Y6=xcus_&bjm1jFbH)atBl=^av zoY!^d_6yumoIf}|E9qxmPO&{c7I%?vWo*oJ>In&M|y`D5K_}pBMFUcqTZ|AH~{qSQ?^2TbD^JaIG51P!H+|qnvW@Gbw?#b(- z&PK+PePBn4(`q6HW#4)B_lD*zw@UAl5&ju+?bhY;tIiD1WL)mJ)(G8IWrkMY>Iki& zUpoJ@>0zR2)58PwEp7{;{)!GOM1%Cv2mSe&BchLe;K~pFL!4RW zk*4!H<D+TgrB^^eXdrHeb0yDC&5?H9q246$B1&4S(A$`!)NfAM;{FI ze-|H=Wp3j2z)Q}WZES9;H8;oSqVRAB`$qa3t+>26R7~{uU%UtsVZAKn6I}M&S*--4EIa({F z|G>w7OMI<7wfgzcEw`K8pXurJ-)U|}zVLs!-VuBy$=s|xz~}Rd3%XXI>nBb79bzv> zS)ct~4r51`!`yMN)7;$U93Jc@&wn#dyY^|1H$3<(&*J&!;dXE>+*{S<7zw<|JFXVIf`fd&RC~$A(H}-+i39z&xwqC%@!wZt|+HS|1$g^<|%MR(tz$M*+AD{?MLpu~<>3 zlE?L*CMMRI(DT5&4E!mfZR!%Pzu0F6?~P*D0_=wmBU?CWn>69N-Az2g_0An*KZ5_R z2ShP#=3}*)94kXUnB!oZe8(TIPv6%Qr&V>5PquS*dD8Y` z^Ke+-=cUHJlV;;k^^+!C{8QhZY4-Q_ui8!vPDEeux?Oi{ybb}+J73l92s*G!ebN4& z9{iii?Nc4;!M(uzS38|HNc)nuo>kxMJ`E2($#Z+!p29t&_Y|U^_3zEXXLX*lpi92H zKQ?!WmQ?N#bfUSscQmm?v(^^2kLH)Qw(vf?F6e~(pPr|_4GXp&kIjJ(&yLN3uDzVk z0?Q%3)hhppxjQ1z=OJQt4mgJu80IK<`;VPF_MTZ^_}VW9=K}C)F4Q1P-Ts7G0Idh- zNDd*6TIL!vL%e43ZSb0TR%bHlpNrSba|AnkV)XynlhFS@+MO4pfAnd7-NE^@4}@Rg z!U$d^JW-~b_eDJ0a^;-Y;4#kN6*dl`XTD#;^F(~X<_1OvyO>Yi`$hy8(N3%$Gx!2? z-sV+&`{-`!wChg@{y)OrK0d1I+W$XiCXfjMf`B{)NFY@*iGnpEPD#p421x(~1?saB zNLvF@5T8gyg^;!&*xHe_w9*zKZDoSg)<>q^RzhxDm9}2YRaP!ql;a!k(bTt= zejyjM`J9b}x!5m!!TH_?dpl{{KK%|YKr7Gb9XQ9R9}Ya}As1&x zb~xqILj+~yJM{xNY2x2*%6ubLC;ciF-ulnpPzag+^pKJI4?tk<}p}QMX zbO0QpgKL;q9z_3Oyh9VarGKR4;kfSe$-UuT_rQbSA>SwbhB>my21Cm#&dna{0 zmn>VyyXtP_{YR;?l)EuGw!vgMl~J4DPnJ^|$A-ZBw^QY4GpKSc?$A`qi8dR?AbWwa zz1|GfJ|Y+x1HQMD7Ib(|ax*P-kU7AiIVW#gXsz0DGuFT&9=t|*HTKE()k!$osCU20 z)@$rCLwRbSezw!boobIX$@6TbGY%c3U6N{-_m@;wa$fE7z9dyIeRXkfsF`RLCxseH^O4{4nR{(nc_pwd+zd31m0 zw^RA3`*Gz1-@hWCk924T9jY{Z9zTM2SnKv=T}V$uo%z*(o)+-irF!z9p^4BCzdkr! zp&g~J(0YF8IG*uOa7DR(0>B zE^o4Io!a9465h`PgHx7r!|8{{Kb$P5GHNqBSx#lt=1AU;rOMG}f0b+O7urTS(bUVC z&=l|p@9m;b(FNbzNt>3eOXITB`43$vFYl(_HP*n=emFgJncnljdGejhxcXqF-Yxnj z+M(>nkMo~?w$sLM)gEaMy#QN>%2W;vEo5v)IqmU{_j>(j&UV`7y**VoWggWx>T|yF z{*k^lGN-Ez+U%eD4s7kMY`YT9Urbs;uf#Uix-fDlhdZZ$9r8j7K5) zn^Sqo*G^p%Qh8~ko&4jJmodmC@2lkPWlm4g+0_4s&O8V2W-g2H^GX)hBe&K|mKdQ+ z^zMe{T+j+@yr?@JnbRk;UUc%NJNY!$KjVFs#u}b-=!<&7P9Eq*bV6CxyOX*alV$7F z4)5D}Uz#dQxkXM}u2BDEIh7H8eJ5E?Wz=Sf_eH64;D46N)w@F7*paTn|D~anITLu; zrw`qr@rEBA{hzcSCF{~0*XI1!xAai8XvB?d1CI83cc{Vn_SyS`pO!O2t@`g~4yD|r zBz~l;NM`oopPNrO zeV=|44Vj_;_*i2moWn!NoV~nnar!!}=_?oJrBA;|<*k=&>L1#}dj(^#f&5=g_m{dIUuorO`{$pA zXbtJ&-k9U;m5t!3@;{}nljIXk>f3FUy9FI9C&)cR_{?{+X7%(2TGeOu*SvGYw#F|S z4YKPfEgRotrLQ~RyY&^-Lz?OloMqIdd!^(*Eg1g$h+vrJv~><#C&FNA!D z(?Vl*AYaSYEjUMCt9r3nxF3Hy%C{73b@2H~?9Mv3vbL0SD4a`J<{CFgXH;G-bsap# z+W9oPxZrA|oZyn5N&s6GbIZZpJTqkSE8#si=n9$qw0H00-N7+s7VuyFuz=aA2YB0) zb(PUaCm(6$rU|UE-;E_)c;#~ck(mV6G;0K?@s@DU%>x0oaO#)Upt95 z>U>S~2kg?-T+ri%wj$A}o3!5G70%px>HW}QOJN^v^8EQp@$+QjM@c3IU$+(g?!K1x9jrf2YimfuGd#MjNMU&I6?W4)**E%#A$bu$| zuKkoIqldZo;gkKk)2XRFzMq)?eYE({$Bgj?V^2Hhh7Y+u_djT|8r-~(Y?uGO=)wF4 zc`4`Oz7~fjd8!^$G?|=-_3ah#lA=iin*39WCh4o_u^wE?)~5ci#;<&K547l%pX}8A z6UvJYbsk9VE^1S|mpF7a3z+cV4|NA85hG=CXiT#^v~9}2&>-I&8U&Uoc)ySavB7*s zgX_(MUrNy+b+u7W^w)^qhQ53-w}riGe%pD^t*4*-M1R{Hy-;mT4ow6e!OnRB_PeM9 zINPabIDP7ad2(npdCr>9Uh;cTbmh>(;*UU_Kjj|2K3gF4V*?Of}O@%8|TeT07(#^*`wBZ;a9V$m$fG1>PqgWwefS=!~c8xZ8rx z$mfhLY1#i5ozY*>nO&TuGv5CSFaA|@rt-Y2?#zFovxaxo?kK1J2ryZ+*&Q4cN|1j{ zoh!7BJ+l8H>-d&}W!Ar=GnaYrb!4j}>!_=Za-uV>572QA=GH@J{L)2d;wOHhGq*!$ zv_YBgP`_Yz=uCA0XFK)m5}gTV(w-!bLubkFVfr6sob~Oe`mgchz0vuvGTEVL`TsxY zjJh779%w1_2YkUVq%(Za*w1r?JMS|aHeAjbN%ozppljJ|2Vj3Gm@r_QXAtK}o*>3m z-M-@4?Dtk+!(BGf#7wNc?PKrCo_wBl$h=e9-|vfAE!uebtv?M>OxX{R)3VhsVIF?# z`{)7e0haS$@}i38gFB6|=4k5i$)`tg-?bms@_<14PJdnU`w+TG)x@roCJVP3@9+?)@Q z$8+n<32}S{KAhk&eo<-+9)pfEcd0os&iV2WOSu=LlC;Ba_uQbF7st2g!%EV=M%v%q zX>&hkelCvR*oR*u?PsJNadTg!YjT|URUf`-dNv(3CvPIQ;ifBGlQ+?qO`kU=Z#rOR zZVK=uE(LKGhcp3u69=W5=+`FB_=comNZ2#-9`>(_9uljPq$MyKBtl+oD^lthi+>@v` zLW?sW`=@7!;`+Guw7Y}+%su&YufE1PSH*Yn%p({3k;*xR+gbY$$e% z)-uZ1js9Gf%=^Z9&ehi$j?8~zx$gMecbmOD-#L#gnU7Ak=lnwMO27Gf`gC2m0vp?j z`SbAanj8Mm89(SUd1k5uIf}nu=*NuV0_s=Uc4BFq=gieoZ2v0z@CuFjXJrm0%WS30 zwaGHdue{OBz@CZ$=ALCL)8aa41&yBb=vJq0&H%3i!dKnmcVbLVW#4V1%inX8Gmjgg z7Iat>`=e}_ffA#^-tA{^nY)FE_nF$4GoHwuY)vx4PfWzWZJ`<7gsv~18G#&>UxBCD zeA=4i3YUXJi?avomKvc0z?X}jYNV|t?z3x;rTuerM0_7~<5_1M)HxE_uXF}i=O;ub z;x%i!k@!A*v}Fu2xI)+C&+G6OY5J!0;`{p6WM%(E2Wd$^Sbpw~R@o-cHufV% zi1AAPxr)~4;r^i$@ZgEFMx-rooLBpcZH?{_GACkXx@woc0*tQ*BKHQb?dFbE=bqnP z<0_thk$QHpXBl$`BG6rd?t1=~x$oV@=Agp$I=5{O$}D_r?83tS#?&}`Vr7=r#`4U_ z+JHB1&81%AI-fi1kF18)72{wdT1?j;=9R2A&kEqIO|LJmGw@w8$P zZX(|az7xB&U^(BpGnd#>#8V=V;3y>jIp}-@c{_d=h@ATb--y;gn*R zxUDYp#oh?k_SBd8PH!mlEkl3%8TD%)^!dM5w5pyJ6Pw@VF5V{5Os6}Gn7e}t_Lzg4 zntAA_w9{#FPTXVG$d1$gU>~35 z(-<_v-)|9r!Pz$^HiY8&=nVPth1b?}WR>~u-EwWsk=|L{EnVhQ|6`k7wM~J61;WRt zxHw8&gk=A{^#4e9KkfkPJM(O9o#}g%`Q6G3a4+n-1(W%8ZcX#u$oD6aXGegg3VJvM zEOm_a3)osr#*;Wkin~&%v7LqfUch~H@y)b9x3t!-)Y#|8V+UNdJ1;gCwPh1e)A;q! z<@csl4e|VJu$jiPZV59n;MTedkzJHV{>Wkk&p1VXif9k+1L8whtqt8 zy;ZG$=*p_Oy!XD=BXPbRO7qPoHux3ff17k-Q5Q_^t!VA6X0MyE>s*Nq;V9)f-%RZ2 zf==dwju~d8h_;0Lqu{9xy!{=zISk!o^i;LBgRd^|#l6-A|A1yb{#~#(`bi*i@-*jP zD5p4E9$xu*bmRb?2&Dt!eNUa25b#2Jp>=4{i6rf=>E!{ki*E zJAhNL3)T)`wSe)IyMI9pnAMjAdre1ySNFkjr(Zz_@b|bcDmX(-u6^&GBX0K}&_Tp^ z1>my~ym`T|U*)OqD0TH#7_0VBujU``IAdrvKgD;OQ*uMA_-OWyjHXR>nZ%jSD!A3m zaAI>GgV%?+23EfX?e22g8PdcV3#Xkz>h5?4AE@sdKKmu-Tu#I)3`D$L^Y`9UYD797 z@F!M0omO+tEdH{-(JhcRY;d@Js?z`dB zs-d2}%f4Ymh6A6yA;qKpLe_30Q2?FTa~a3m;nDeKq-v(wAf6C!*w9Z5`Z)>hoc<^f z5uaEG7)R*o;b2*}y^S(0yl*xmCOEXVUhCWCg5N6XGk6y-*jxMgsu&;9SoE~N=ivE@ zR>dqjx-Ag-&H1XNAvoHel$_OBg8pF zzU+G0Xm|m=D1hHjpSlp^3C+$?{3=P}Q)qyC;xU49R`%*Is zmb3)At=)l0*BUc|pK-yd*X4IHvdL;xoo*+O)yOG9lnm@-JT{K=6dj>|N8CdSR?@e7ie~QZq+hy=w!*yo zN3oWEzIu519{SWl9l}Q^eH1PQK!Z)%3YBkkIV@FJ!?QX`kE2xS`2NXYsFU@ksZ)y zXXEwZBk*U}hPiwv<}JL|UIstp>?`?u)|~LiBWH)hk9igf&ffxCYA*ZXCG3MjTTAdC zJK1nqdNYlBY#CF+%Zs~xi@k8&amoG^|5|T(>#MytwC<%n$yOWqB>Q9Ajf7;o`lWsd=BI$yK7L2oI*ty5 z961B+;{Bbl8;!8$T5AgZ$`0UPm{DzKN{%pZ4>qPXG9Rmt(isY%nH=O#tk6gV1{;g= z(cPMmzd88nH8W3#J?mc8JTJY9dJ1=9FUl}8GVLPh2mQ^PWlXi1zZD-F8*{{F{27=3>eSS|FO<>))o zZQ_ij##izo#u#?YHzIN2Xa=!_7*}-u$i~M;EsQnx_f|1aS>RHzKzqzLJS&aJ^T_&w zA6B%+dG`Xp?ylBczI@!MqS@Txu^jrdsaJGpQ|~hI9CMOY9f))?cXec;C%`9@;RpK@ z)*gi>G0-@lR^;C+UJ?JK=2e?97w>3(6+eBllDH4>)LGUR9ovk=uCA=T;`c$&f%FIA z;CkANWh3)82Wva%Z)Z-KPkojiyF4(Upo9K)(D#>FQ^kNYR!?5~((zh0(|0u82r9DkXev|@ms*9b`J#L9gPq0$EWk8FRC{V>~ZRh18ZC`3VvXg zZ=!IZ{gMJ;(HO)i*Tgu)r_jHVi~)Qf2bRqycYjcq&A1BQ*kSah8U9FIG6MeUsq{zA zOyWK^=ux~XzKzfKqgxn>bJQiCl>VsuWyFUkUYg~VzNm4EuW{9iZ)0cEd>Y4&-ZbAa z+WoP7+GVF1Mt*EHMaLd%Wlh->&6Dj!XIh6f{S`k%Yf>Ow(Dm5UtUV9vZiQj2>0+$; z3YR_5{Qzlmu)$Pg3&{Ms(Y=sZOh0CwmGT9z=Dc5Tz2eklgpXrO$-y=3-&I;E$a42uT@IM*P)xRH7=zI4<1AJ@ao&BDzDLPRb&e-$qMPOGu7q)R?{@k$a zW&>BkQ|>-`whn*Rk4mQ>E%f6*i$&w@TYgilzFZ4Ee@E>k>0RwqGMB4<(fi6}|Js+b z@K5Lq>u2t5$!VH_9aB6uplVsS7daw(vTR7wqoU~4Ki~}Rr+Kma{ky!O3-dPr`@G*E zukhKkra$LC)3FbFuoq@v108^^F4N&PpSkW`*@91T?(4Mt0HD>;#<72H%aTk)<}P&3 zNyG!JLw2q3hlw@aG#pzQy2$2mf5Y(=hsG8~D>d#q$E@yBstfp?dZ>FB=ONw$=P~rJ_+r+yLygF6@-8nmyNS9G zS;iTaizpX$?<)zfFv5>6H^L9HF0EK!SFCoc>8-M_@<494*E$CtQHfOTnjLQ~m(>+z3AZ=HRomn|a>B zX9}0n37+^WIOOceBP-0X>g|5c54k|+=mXvEYzK$k!{{sTHJ6%UjfKYG1o7CkzjEs4 zGH7)cG!t_qf6ee{F0~0WIyuo>&Owo zU#suX*F8>s(2rm)>Vw&PX2kyk^Il+9pIMta_r*nv@WZ8^9{~S%Hud%YKKdY8>q*97 z#Gm%y`P;QGG7vluLM99b_gP_`7YHFcPakIO09`#eUgy+gr!Yg0vrjS)9-P4V$B>Dl zqdT!fdlXmBysA21ItKY92c9L*_t@(?Oul`b@!ARvdiD&rLEL#`k(+n=J$w#zeHl1T1r5U55-*njnje11b18l9 z8L9oF`Qh`o`xBQsbHx9Rqw))IG^W4&uljH_6&&?T;%G+_N5lUOj@GaT@k|m&^O88K z`v1Yvj(@??r5E66THgPTqg-&1gATejiK7n6R9}FjU-B*-nLM*Ez|r6&ju!D8O`l)B z07rjy!yU|Z_=2AwNUTNW}3J!30A z78-}Ie-(b?TZHVzHwJ0B*#pGLW9xqct?-Ea!K zi=VV#VNc69o|WBY)u@ZMKcl*@;r$iPUpezSe(9po&jU*ldtFPQRZrf?f;QG7Vb(3; zZN=GenHdGqfo8*f$oM75!c)2r4tT%Ysko@@uTJmV(^32??e%nCX$)^-57=%Ac3%hY ziKdrfv(z0%JBZt$w$q^xE4|DsJT;4cX{!{NZvwYB(T)MHJkMA?2`*IrU)$LOA0K7y zp*3&C{&mIC;BSg!S)8w1m(f(Qzpi)*F+jX+1DbTlMQ;#YYViQ@hb}dry-((u3CZ|^ z``Pc5Jcu^3e~aumt!I{zxHAj*Zoa+`KJcP(>(ac-Q#kX0j}zRBpmOa&@j7=BZo&Va zwcv@oe&Ih3F&eIehBQZ5TLM0tHJ!(8T%B4ci;tr%@P6rj)*(4f9otz4f=BI@upbrC z-K{pZ$c~^9k)1G=SNT}aJ9$(2l*hTRig{RP)=FtpeQIKTjQ*R5rU&-O-()#+W-REB zR5RzFx_NH6qO`8~{Ng#`C8g_&m$MI4b*bS!G5b z8=^nX{KR-T<=3xs%2%<^q;kJsZVq?y5-WZ=?Q4H+PTj@aX=$w53@mfZ&ChVZNWn*p z3Ho4xY&w6s;J@?|XZ@IrZB`Gjy$5gFh5m?z{dPu@Rx+@E%-|fZNk5%)bJz=ekDJ|Z z{7Cn<8+*K@zxgaS0^sBvA?J~yJLqZ|@4G}#(4ush`=PJp6AfPzux@4UIKjH~JTb6- zQe_U8{;vIE;Z1tQ7qCOW3p@eQD&N}pCSRKuHbW7>FlH0=mI*&Bb-`= z!SF@2FJHso!JoQkw6~={`sl^X=_8oiM>6+}f<8w>pJV#gewAt1BF(0L6WJri?!mo& zArE^R!od#u_Xc>`0Wa?6UIg?a?J=@n;n+nA*OUG*@uB|6xXt^bG4%y#?~p62+NPZH z{T-W$^qhP7#n=O}xu+num3uA0kL>9&Y>&cGK>yP@+rslU@OG4Zmn3mkpz#D}G1C6b z?>Iao9bbE89c%m32V%yM=jccy!kxs4SK*7^-2=nD*f4tLV*|o3?2s$7+WUF%NnhKD z)$#TOqv1@luOsN|;!I@26^!M0_H5X@bV1-6(c+rtgVne|L4){2JL@&*X5o0d~{wZRnP3 zjYKuJH_6&30)f3p4$t(Roe_wf3I@2B0QlWzq#0eg3VYIV_Q6iJ%J|Oe8W80<90A+3HCnoz9@!6)(XB&9t088~+&%#sBVZQ{H0J55X zhE7fCgR2WTqQJpETK5rmc0mt#KIR@)V7-Q2>}De|0UotSvL@sG)cin1^`2ad{gSz< z!ySn9xW^QnrS5L>UQAxK9|w+9+YgaHPXCFo@8Ck^;^dtxIB2&6ID`w;ZBvg8K5Vs3 zn`-L}a>c_QNo=t{@e=ei<1Y5epj&G`errpN$g}uwTMvNWO7^|xa!%UxIBSULY9pfa zgD12vy1|H?WABmsCz?(|nQ}da>zytCzF|3EZ2Jn#aSj9^xCiM&7DVfY1`ybdZI}5SR zl22pQgk7@`o4LifBp6SPna1xdd6m|qF`%sOP}qfxOz=PcI(N>2KjBC+vxD)$R-3qw|3~Li zpHprSamU9NXrAeWepOER?`AwSHmUL|CmPV*AG*IH1})uj=cpp?q%KH6m%{5wcUIH5 zy0O?x1{K7>X&?PSN7#~&vSvE_!U(UuvY%J`adIVnxEuQbcXKa67men*Lw}$S`H;k_v3aw0 ze7?Z5&3f+Ium?O=-8HJ{i9y&5`2YP3{C=Sc?M-anVR&~zTbhq7Wc(BC324reJk;Ko zJ8jBCR)q6b4pSTU2Kl~W` zU>aw1#FHvVU7{0}J3)O3=2!XQ#8_7@D{X%F&A(OP!`3&xH?h}0Qe)e{Z~j|`kAd2c ziEfz>G=Az!7&)!99?~2JRYC@7WiRkL()@%|p%Ld-G#AwBCyja?jI7P4#5Mr#R|u?rXh=GiQ2_ zO-B}FBU_LMPu_V;>s)xV5?kidp{|(jj2Q&_d%)qNj&Ts3p| zmzzxQGJJrfn?1t3eq#P@=oh!5XWW9maWi_yP1t6>gudQC4W*6MZO{A z@4Ht)YmI27D})`V!QRIBw#;_)kO}A$KP0W0XDxiY6TRa>p3B_E)b9|BHix-4Oq%dr z^}gw?V*IM;t8~+2>3 z!nrjzb_jde+?un8N`2jjOMPdy%&j?nwAA)e|2y`{cS+(BP_*mX7k$O^Kz z!(7H*X7p@^S3Zvam|}WA8RqgHo8k7_FAeZ^=B0TLr}y*DaTyK%Ox9Mw|CQ&t?+089 zE|dL5rAZfEng3aOU?B4@eT>sb;-M9E&`*ng9YNN|=-b_z=eEqL$;7wHYAp4gqaQJ3 zOl*6puakNDEVO(UIdOU`V_L{vtMofYe-g+kYq1frz=!qRAg?7{Jc{o`HEFl=4LM}d zXA3!J(QkMnV$pXi$dmp%`DlURM(X{sGX6{KPKodknom_!HjLci~2G_X4-hZnxcj zt=Ddx<2_b1)7v$JSca9Q-jBD=_MUeKykDd)YYj9t9Xd;nMFJdYEJRnryUkcEp^qi( zt$zV|Y^?z=;C6a%O=}7tos63Wy$RRH)|UDj8M99MBl@(S8{iebZE$^r@jS{nb-khV z46hBHS%{BMwf5Z@Zp+;IZ?COz-8)x$%1P z>Q}yH z_`ZzqRmB2V&Er2Ze0T3OeATxZwU7P{e=Ow7vY{sJnZ85JZ_XY~au4Bq$gPvu0&eAQ zlV|(E!~B16x6!~H%2>1hZ=F@M7+rY@djQ-Yw8}sp=&qt27s1=)9m`tEBCp*t%dzRT zp)ckCu%cCY>c}&rgtEw4$KFsWdjsoIWMA*`e%-yy=TBo3yaHRx1nwKNwy__%%v{yR z{DRMp&%Qh0dxUv$Ieu`Z-=FhH9(k@uKK8zVY=!oj_lIvpUfb0`Txu+IT-;`AB(G;^E+lz>oN) zt8%gbxxUAD*$FlWd~Ht!d@k<9$>X<}?@Re!%J<+<+GPzt0Q_qluv`0LTU<4H;5r)o zUGa|n&BZ&{V-pU#x}z=Yi`!c2i`(nJR-DcE&0obgpnd%U-8;V=-neJ7;jOw7T)%77 z=su-t>Xdy&eiW)ZPThs1$$waBsqae9OtvpylGqmV0)zcJu-tCc0{@=2ATXd4wJhng z!#zd)u_P45phrP}BiRuIY9pHZ+`JUo;h`gzB*dOctx8tzi?)|spu;1$ax8tz?lio$`(9Yql z0pCo<=qvoTGfqEdoYpf=`#gKPGhlN*pO)iPPE0t_yU5DHc89Nm6*Rlyr9L}la9wdl|8*s@YfWT4OC8u;*|T}hx!je# zd1^-Xb^L#;B*TGk(5!*k+9&=T?Pi==x1f^e?7An${Di0A3j@nUV396&AuLyiKZB+D zC^!@xz_XTiqrf1T95{fh96GFJ9BtQnM^@Mq*E{rwT_mxRbjNQadB00Ba7%p8RW_bBV?k{vO$K?LwCi z`$wpEnBi;Vd~CkAUpU_A^5uTs=qUj%E0ep7hWUNk3(>e}pBlN}r!xopZ2r?KIa@;8 zYE$)0q1;r`)EAqw?6Ep`owhFR<00AhUm*szgBNT{>*!-uYTw|S=Bf;2$86?F3*KDH zxYoa)cIp*;A4xZpG@h$3bLtpx?7;RdM?4q6u?8eyieSf0g z+AqAHc5{i%cAHhDdeJGyuS)oCoyC3+Tos%(RQ$u8{pRD|t;As|F!ANle%!u^ ztaHK5tJ9r3zJ8(cES)ez#PqQ-U#G_mS{&wLrmAWq{pYc>|OZji)T!yYA zy7(Tt4s&qt`aGX(?hry?yhgg{&NBo#5bQf^ocG>`>?@mLd@V!0=nsb_zk;rVcAo3ro;7aP$7$hh@Q&_K zNq{%u^Wnew!|lMDo4!B%dwA^|Q`mQNFYfN<+nWQ7mq+*3w*E5dGtz@yIX}xBT;m?K zX?AtZx!iB&PyX~w7j!F`co*e!@w>}6Ms1G5Lmo4G)1r}{1M9!_cz7uL4bk)ISC0U1 zkI|D2v6`pVpI=1w+tT|t|d zjxQ$`W*tXX7@C|+uvjC>Vw4tEFNGONX*Id>U*wvVuEq7iT%Ib+%4dxJ&);s z`qt{pu9@x5P+a~4*Nq%_z&8O|hc8tHw6_a?h-Ks#JovdbtuudA{KSMA;lBcBU%d6v zP0xcXVl1+6gkOT_1)e{QF9~N5n~YVZJ+d{lxf#n$_8+p1T5FQwV~?nZ`M`&NvhSZ) zB7;=_4Ap_`Lmn%R?S6RwYU~eVnTy1K{Za)o`A>1~a@@@&V)Jp zIwH4|HTHG12dMqOrGwX%h>rHaPs^!8HkY-OTZUe_mi5ze)=^crF*XH8 zt>*hG_#L=I)Bd4zVx{5OSNd!*>aWVNf8@iSlhC=;i>T9H>xpb!YD8|#HX7o?N+Z_I zX(8?LtOcjd^z%*jczy#8chJ`-&~J55wDyy}!~V_;b3~zROJ4SO3bdz)y!bBtC%xK6 z{wm)=Y)m>^_YgL{4%Y0l1$X6?Mmq9JBX8by%hN|El}0*82C##VXky=@=LmQ1vOkiL zPOP>LVkdkEzjIG+^Si{lkSxX*ZA3v6a1l4PN&ULm9MEK~EsrS1Ok3m7kZUr&I`mQf zs;18mf!kFty1Xm#qq-NpsA`1Kv!c`;F8dRABP=EUP5nhqY?sGgG$XaInvsWpX+~E6 z+Kkk+8;LbrF-nfh9tk%C~FP*iL2at=6s9%Hux_F|Dx$7;C~}FPcOLB z9$PbK_I^x0*+fFLxs`R=4$`c<(>S9&8voPmkOA#j;4}JKU5WL8JMrU2qhUHYv(|Vb z7PvhL?rrWbj*&vV4rHu@$JH{Fpo8=AG^B! zPL5CUM65$OzKx_GIgsPC;`$*A4`C|=5UiY+M;^g!oIUZ4%?j4 zmXpT5Les^hUrTzM)~doAu~6H}aqy8LdwOuTgC_@%!grB7k;8cz8(NR2n~6B>pxY*F@D{7?PdFh1TU;O! ze{OuZZ4z)41rv7ltjJRO@(=cKov|wmCRPXi-6vPhirDlkHY1owz&~e@|5gwkO5-?} zbjGn*IHHf8=!7Yn%1zRg>Y9+lKIhnqr^C*9j*NKS1pMtLtb0}bt$i2SZfBTA;m$&I ze&$M@T~uEto0*w5|J8?g;P*KHrxY4fWurL6zN&ZQu}nojjW!vB0zF>fBj(!WuRcp9|vVh*yYbVjm7BT!W#*ICR_z&^-acO=2LT+Z0FRgQAxj7P`1AtJ?zRbCshwZ$g@z|C4x5;dk1fuyTMW zoBWd&hr2UrH&6e~#77DG;=aLmu+-mutR)!fcqbU?Yz=buA{Y^!A2|vi9S`&zJKgn$yoQQY+IuLyh+Q4VisZ;qizp1S1Qav7j#dy`pzGl-g+E9Dg#W|Zdl0E4W z1zp(6OQ>J6nep~z>5MS)TXK5vxf@y+vL7?(Tvh93vVo&(NS>$UwdRhDbGL9-Fss0k z-RH_%v$!+iZDjUfbl9WQbHd-GZVzXT2U4%(vgAc4Ybo6uaRgo)STdxjiuWV*XFYlC ztF#8lX;R+Nx%=Kd!(4We=Fs#z!tH!h`Z?tKCgq*mFBH2OxPxPT>__gkS(jUD+&%U% z4>B~Em{XLoH%5P#1=G7FAFW~K>>ofMhxmaD`*8nA?778Z`xD-w-`HArB6b!YSq-gB zLe|#v+~7{kE}G3*(ey~wu*|(_#83MTazrx7nM<>v*cC z8XE#Q)R?ugu4~a8%$%~FwEe6%pW(?q?5BF5WKo!N>oMS4##q{0M*GTOzo4>qi(2?HGbUJjlb!OORhQ-2?Y4-#@yGJfg>@_jdZnkIVL zt{5MJ&II?&) z_>M8Z#E`x5-Q&Z~-U@SB2lBe~crOfl_f>FwgW<+B;!x|^A_(1c@ zQE>fj@WT10kv-r@`K;ZeeZqP5LZc>DKiU^-9a!tYNZ#J$L-ouKlz7bd+|@Q^>(OY<^>tG%DSujj?KHeiV)N zLx0iupI%t*lg=nwa`rU&hOa@v*yQ&(W1RXPV4p$$S8do2E$rr6*SqkQ(p(^&`3}yc z4FG@ozelp3`p+>QQN~JjL{}p>X(s@US-{c_Eu3dvW&MtEcI1vHvYm2A(T`*gQ65V? zrLh(*h|ZuV?LFGS6@xbN;Uleu3eXcKqbHnpbJm$L{h4INYIHs61e86e_9%mn)+1RM z&7)50(%Pp@Z~=q-M6BD1iGj`Z{riElL*K)bA-CI5-0tFSxql;{m)s$~=@`=V`Le(!bv!dql(F6MS`PO}`0T zO2+#;!Ff`@`-O0}4Vg4OJI-_gWKnb>ctcl; z!Sm9U_JBX}X1Df%!HZ;r#_k;aAETZak*=e0cIGw6M52gx($|;x>spG>vCiPE1Ng@7l)1j74LF@XPAiY}P#^w7i8lHg&01fg zb$uVbP(FKRPl7tn<;}#tOk32g_8eSOp9KsWAB*;+Z*3odO_(!V@*Q*Z^UVDv?OFRv zw6?alkao1L#D>P~7T`EuSEBjo2=cJ~bX`dR9SsM+h=uNMqqAR(zQ_G?q5H8tN+)*k z1^nIcv~_%ZSUR)hhTWJGwrEd0xly_Y<>TnY(PW&%7xkm41L+Ae00Om zJ<-#wAJCIEHqq_iK;we0EL_EI_e8q0UGRx3k|=a>Hrwox?tE?%b0c~*_q}gDf(_Hu z+8vs5Xh^&c4T%QiZ*Ls{Kj2?_s0B^gjU&Tfqg<47b@01QIem|b?ixpgRYzaGi_!hL z8wdHjZZtLt>fNh3VB4)e`@nUzG2}+dCQ%1HZZad0}|l?rSF9gMAfi0-5-?oyjIJfPI(f2G&5>4r15~%AtXI8O+58pb7Nkx%$tX*OktB zSNQvfBj_`Itw2VK{+H0#3)j38=$FxN-K#eupLQ~*vKGzk*vkG2>sryN`cOT%Z*41| zVvGLSl#%?zuQwsvmSpH`$xrEQl$Bil9R0K%xrXeNTzkRIJl!YTB!eYStV-mp#*})T zaifn_^6iBeq<^dZ7W$BZo-I8`zVy}u<9r@;Zu!L6o5z8F^o+IRe9K$$`)wIq>y)QH zm3>*V6?lYKy=z^S8c)qbH~kB4CM0olfcdDI`DY+F*-u{`oKS~w5}SnFr%u&3x1TX} z6Kj6?4H6Hc`U&P0;UR?=;X=3(K7^Zb&e-?iL*p-eWYCv5IKa0iVSy9LRMqXs1!y@A zP9z&VtW|XX*nq!~A6V4yd}Q}B@Q{K>YY**Re(_wd_s1;pl8{;~?4FAN7o4U~hx{$-|-0`dN$#`_s!s{6u;VleqV#xlvz|s4f z+tIr`^oy7Vi8%2+t=HYe;(Yu?e7T6@#G5s%E)AR)P8Q|w!?=j=f<`OH2&G!xZ zG9TCr!QoSUtH=I{J%@FVVrx}a*p)EowJZV+*Al(EGEs(lX=440AJMeK8$z@!|-t{BK;}eNAez= zgA7I&lkeN^ab7!nW+L_m-{`Y_nCI@X-r4fWI&4G&*z_a|Z{yyL3dcU18+vG`?6c%6 zyaD@cdF1k>eO7C@H^yh>$_=b5&JFA<&JUQ~R#93a zI&ytUXghGeROXc3!8rq)GO@$>ogVi`3Y!CaFAoqK=@7J5bf-7IJ3aCO@l)bO#1d&` zEya4VyQM6`oj#FxVIVSZSZPfM_~>Bnx*^DUSn$bOFOtBI41S5k-NgO@_i^wWe+nNt zaM`iJpE$-iNDg*$$Psa>u8S|KQAl9a{Z~;F*tK8+_ZRbB^~}AMnGky7ws0kH&LGlzIE` zcwafPZT1#-P2w!+YqDw`y^=mZ!8~X~59QF&3}~VaS(^c$<&3NNr!893`4iTOb`X6< z^1X%f4`kKazZ>tf)z3pb4~%F3M!GxyD~YGG&|PE4$NLoT&e6Zh{0Y&D#@4|vaV0I< zcA5K&J!Y`m-?E{&trwelZ*xh$>Fy42*3FvhPfRqq>)BjaVloCn>WYKQIpEOI&vVe% zK5{2w_#?)|hp(qc#DDlAMdpClSRpc(ak2~XdjzL3@nIRdn{b>1uL_@q{fULbH)unC zkh7r^8-Iq`jHg|Qzb#{lUrNL}a2NfWUz;!c6nOWrZg9qi{)->&*RS<*fP{-BI>XrnwB>^?WrAL(RlJ8$pf4bI)lDHHOt=7AIa~1|`gwyz;yL=s67W>X^U+fcX`S73@UW`FI zG5F1DbtlS!*M=YM%Edlx6OlMPDmpA@-4mznxh=$30v0PCOvGqw&cazWqQP?F-#9X7 z(pda@;p>&O0gP7TT|Nu=%D0r(Sn#v;0`Ksw`Vc+r|5Ycvxr7*EMvbxJ*>UE)+;Qpi zB=a5J`H(;2sxVjBL1+azFngF;W5esNw6qm|bJBQwKIzDW7`$$`xD)Hgjh;6L{~>df zu_9WCKKsI*$Wo)mMkeIu8uQ|L<9%MyXFcP_b6rl(Jk9l)>@!eLBsyaqI`Melv*?qo zTO+dTL>tG2tON8F*(7_ZcbsQooH;i-V_!*Ci_wi;ATqmTRM8ytv~KJ_vfpNmGm50A z$AXl9j(wfA*vf#xUc+-Uzk0^;DW1$jqkHh%t>%59J278zQSZji%DmH~wJZE#ykFjIxEm=qUXD+H{?aFu6ng3tCSLvD4<6ad&S9ff6d|xAb z4{|{JCDL;&c+r{xe9#1Y{I%5M%NHHIgq{a&$R1@+7f+)zC;2MhWWHVH-z%Pq!xN5N zW9=(>HT!||y^?zt{3W>+o8tDyrqP$er2Lwc;k7j9NnXKcl4TZrCb?xz>hHDSGg~-; z&&tJT$dTC(l{Z5IOFWmv(*)@z^rsh?C4bZ}$sEa;iTYMu7O_{B zMQ$Na;(@ZrxW|Y$x0*ERaH7>Wpmp?#l>V_WC6kaJG1h~cyZzFqwxz=loZk}t!xxU6 zp28Xw8nla$HJia3Ys{GV1X|NLYkn7fSqIz+ozs`BwHa#%&V}QB(g`i-ynLZqqx|?C z;B$bDy2vE<8TAxp)h5cu`+DX=^VN(O_4O_u@6)fSr=q*RzmLDpEXuZWDOU^XNI+$qksMBS)<_#wAY4SzsrRW@|}IYOR9Ir zPMr}R-qas|q)O`9K_1x;MGI4zqucPG#g8H~6&r(dh8>^Zdu}lsviSZ3>QuadLggb} zeooO~U2&8$w;>1JeA_~v>q$3mW*r4yRM(05*MpDi!si#y4L^DZ=a`){=ERpM#aH(Q z&Jn_2TE95)SZ+=SZ=SGX-Ao{shvR>882>r^XL9IQ>U@5k_SNvAk-cCAI9Y)`tj$T| zKG?r11^}^2h*Khepd%BxYZ{mYi_YfjOn&No{#5!V|F&1}===U1U{00Y#MnA8;a?S` zKVLBX5oqLH=;K|FYu`V;`~=rx{N@C&V1;g;(O4)(!9;YS*UlLYAJ9e{I`->V`fDT0 z{l2{`{Jz)j_xoOb*zbGg5xzhmh`?dqYE~Z{wnFs__Ei2nm(%F z>!kmjbd&T4K20B4u$J^D(k1ur{WN_if3Zhn5fXJk0)G1!wDFFUc5%UVq^;(^?2&DM>D^k& zy@~gTU-20eZA^dG81ClX4-I`anLdzlx4>rxzjEvWPK>pd|2Y@@wsTCoBvlr6U0z-);HR(&>1qtc=$7S1;61M9nWR$wqp~%$fRw) z?1H)&bJbN!UB3YTpVmPeukPd??m?c-W4az|{Sbf7{a^4$nk7r9<88siIgYmEIS%cK zi8fW&_6zE1lbj*H{OlwnUY<;R81T}}SSYdryjQ{6=O%bc`xVh3alL~7S=>&%4Cb}S%U?1Z zWK;bOunA`QLm4fsms(ga;q%>wjw>I{U-4aWe%jL4m9)1YhZH}bJWKF*TgX`U$)0&m zT(ML!)j z-zc_Mb0!(Sn$1{!is#$qv)y;^0dzHdhw7)koz$&)!l14H!p^37B7?Fmq(4mgqu{t_ z&9A}_e$>15hx9{!tnz7=e3wtR%UI9+w0^;cKlW~2Xc{lC?eFhuHg4{sk3KI%PyTKWqs6Sa;J*!z(xig9K1&NxX7O4Ph@zB zF*<1Y&^a0Y8|O^jG)#A&>&#IOG5B`J-XBtZ>vCLYjp2GP9P|Etx*MQp&G@j+9VzYk z(eDq5?;aYSVUD_A@0+Lod5DqW?`dZo?lqr$W`;TX{?6UQ!uodosQ0f}VSbaeG4~sP zTJrdj-NT*qZ;gEahLz^GNYB3i=ONI>b)G5!9uyikL_eBoO`C0Gd_e|`p z!+cxoa_(JU@wmY`+q*a;obLGf>JH`q$T5byxa;FXo*GYs@w}f{G5Llu$98+>Vy`Rk zj7wi=n8t!#8}Pe=*8Yr7xeHp8uk;dVWY?w5+{NQLFwyYD?`HmJ=RWs!$h!dJdv+4@ z1NY0n@wgFAr71S4=pps~Px2Tp<7N1<>8qTX6}|ootv01-^)ETbr?e{Dt!Pzs>8UnE zx32jLKP^F^#DTFkz)CGtgP9hS=9 zAAgV@bVwI)^Et=DJTCKp)YIl3-?Wy!pYz};=L+J%_4Dt^ zIcNBcG}j*CRXn{dM^OyjEc;NS7hgn^pHh>Ru4$&hWmvTcFuw%&;riV{i>x zx8Qx%n+KeYM(8)HmuDOAq7~u=IPWh|?>y?=LA_4gt(#{9Z=bKf6E74xK0ypzBdv6g zi3}Njh3K5KRvth1;uw2OBe2JyEzV@^nM<7x-00Yvx6}Th^CiQY9=wu1L+?5>qH$mH z;Cn-!`6#)jORncuG2X@C_?55EDk(Ra za?Sr*?&1HXocI#n$)Sv+SJdlVmD!Yk2zyN-dLyo&vrfLvN7IlE!byJ;ePZrWx^Soi(E8 z$Nq5YEQRKA#pb{Naq(qN_k+;W0C*-k37L@|aClJZ%b7C_!&s0?%V3T;Kk1FIXm0)u z#9&P3y)b>=^`E6nHtEg*V}jPsZgf3Q(<$KM>>Dwen;qT4Stmk+r;_Vetp}7ZufNVW zxtcciH@e#3@m=WTIeUy%6^uj9E1aF;IU3m?CVd9!b?9a}ml$2Iu$DhT`5^D|{a=Jm z|Lh3=H5zZ$K@EPlan+lTk6ZYrVN8AV{&5Q%`Wpwi$ExsZ!;{&_d8|dq8pZ9{eyP#r z;$3xI#h5)yJF4U7)RBvPx_aPa3y-;d~Dd+ zd%GmqQ$>1jFXxi-IM>d8oF{7y&;@)Nq}#B0s4i1USl-u z1MVHjQD;tq=M+=)XNyc{AJaK=M}DWC@4q+XtMGy1j@En#FS_B4eR*dDBEA?B1;ZAZC|h9$%_?20Wj@ zt|i$k+-ZKk5&MbK^zAZ@L4BVdAb#Oo=*t71#lkkpFh0Moj9TfZ=ok-r^fSU7xRqUv6T&HEv)>C;XUCZ*?Z_4ZP;1!3lk<#}>;_b&Pw>mmIcv%?=c z`R0WGq-VP;G>(2&l)6JV>bXA6X@4H=r{s_5`)2wmIGpj}yqNlA{3mz+yv^Px?N=e= zg_l@n;6=qN)_oTFzu5jvd7AOE{4AJPoO_qC;df~r%3QxkJeYqSG3^y2m-x$V>HA6) z8-6LVESGRLKxZ&@cGk%F|0sL&_^7I6f&VU9x;ram0m706l_aRBtdSs{M1&+NvdN5& zj{t8pAv(&qB7|%%fyU7W6zv`#Afs~A#tl&D8HWHafw%#R+q^LeDxEZIWJ%ca`_}D_ zL_WUx{eFM+r|&)YEOqMCsj5@wRGs>9v-zJxS`pvGPAKI~zOXHlwOXKT&obTlC9eJR zjGN%$ZNXF6OlUsf$CeG<7eUX>I{E;y-X(6|f6c}hyODgPOFn^d+bv(mn%}EcXKZlH zzL=)2OqV&14C>_mJmS4(2 zW0RO4RwZZ8_^Xv;atB*-2EMn@mB5q#^B1v86(x3PN%5EhYlOqDChwDa#Gd|3{k(@j z$3&$@&;Z>D&vf6;G5KKa+1IG)5e?-7DbX zJ$X+zyf)@sQI*xH3;p!QFCj6f^GB)wGM+PYOdi-QZJ0W?Qp?$3=r-JWO8&!cH}UpO zkMBwYc>9!lV1z!?xUXIE;e*CyUX)XvyXAko>ik&n9(J>lCf}d9#Yo}5*k$h=$2^)1 zu71JA_5e*=1V6!kE+-FXfmT)UFML&O)aPRccFe=iBkl`3@sROzg$BNq`3D}}qCaAf zLYD0&Cj6$4iqIpVnUgbx7w2`n2K*Pxh`*6$$_e<6JWKskso$JC_tD3P?454GQ`mIl zm`MvW44KOh+z!-v{+<`#Hodk!b_i$I&u}~dci}B;(SH^b3>d@ z%RlrE?}yHQXApZ7eBEa3GvB8gQvNu11n9O4{dhDu4g;X?2dKB3SM}R|>0?KNi2(Rh!bno%JwVxEOhNS=l1>M!$vSPq?HpDi){gO$cq zYlCYLaLk667U2gh`R|iD>GS)*5dU@Hj?JEZ#)o;;CgA?1&y-COxS8Ak2*Q0^5H4ht zx#v*~zKY2Ax1G>KrhSXFGY7ubO-~%gFlqHw%E!^B%!Lz-M>n1qOPeogzqA=5b0OgZ z4Yg9pjheJtu-+ zBtP4P$l(!Jgbj~OP=;qj4Y(#|CV4{CDe2+t*QG1-GZrNEwh<#mshIR=dWO==Qn@q< zUAVNFJ!e@9h)gVxg*O9lHSH-Sb2cvlPV^9Dlo=nkHk0#ZvsB&R!grghIfi0KFDNN_ zBttEKyCAjEWmlEj@qFLT_e{QL@ZC}}Z;T~%r;9aEttoeRu-?1qF58jZxhio0Mik|k zb3yPU{`9F8zsNHK=NIt>@0`O}`(DbCJM2b1i@ix~u$;TulALq>{8Rc1(hhU3PwkWe z=swVg*qxD2tS^+>=b+>6ys6~d%DdQNC60vLLtAVUy%AeD_U|#^cpmiMTFAMDaPBwO zKgezw%=raki#1g*$(H+c$IwR8xvpQefjoCsX?-0lvDrQ<^+OZg`=juYEi&f>_Tn_f zDd!eNkDCqMXP_7Vnf9dbE!cotlkJ_wn%v(&%nkC2P9XY32{E&*s?4eDv7<`dbVPkM!d{`UFVmzUjL5Mcd5ohw-8_6q8t-=46%n}3+rS)SfKy^ z;TgDBjSs)opFVt*E17##_miiKeV4v`Z{>M(d0+RF%&SuLVPAa3@^8}mx}PIHL&INY zY~G1nF4ForH1Z~^*oaB1B`t$k=CjZ@TUV`4>Z4lct?m7s>u>|*HD&6_+cvwi)@i#F zW^87EC(i$V@9C%4a-R5S_~CXfzHuyVo%}-h*MyGdhOR!d89&i~OK!7w&eQB$(w7x% zmbQw!+hP5$sQIU%=jpy+IibIAZtm+IDRnLG>y|s&Kc)TWuuHAh68(Sc{rl5v&UVTA zbBjSe!n>F9+})3wVBI1EeDqF zk#)?hHEji%#U*2Asp+Ln%p+N&$le<3 z_{^ss4a`Lix@loee-Hd29h!m{&6m95r?Zy&M1JQ}pCv@;yoJ5wl#2T7)QWA{X%(FD zQaJZj!8y7L&e2s=WeZMHh{Yp!3Z-+`19mF&ZXruwrBl99f2XXqw^46;3hQ#>ccX(( zH{dH7mo_9};}~V>Rkk<3Xw9A_YwFw6FKuvHQaIm&OqM-kse9H`_6mXLm1)R~ng3)R zqZ$_Amh~CymQez4IdM!Y=!1$p61+WGEHXPeQ*`8b_^U>Ih}^4GXEpW6na%4S6&s&xGtImSnIlWI!8aJin7{}lX8T4&3cg14^ zGeXODy8YM^&goILVP#hLq%n5mRnnUE=-LguNAdfDUjk|GR7N?r^M9E97NuhO;bDsL z1K&1k@t&_1H@MSD%T?mMKkJE&k&CVFpOi4~-;@yVkKu`p`ziM|d3@zXZ`&5{blv%li{mh_X=iH$xzqV`ff)bohe*SoHKr+Z7e)m^6b@!rqx z)TmXiFKG9=MOOF8(W{d%LVCWXjeVn@bG@W!o*zjI)5APt7VUK31&n^)-_t`pKk$FI z7U?-bS{(U(ytipK&nf>GIp0q;)oA12oAU-kap9i#up zm8?X0p3;)Nxk{q9UJ3PX(IdPO^naNe;w3hS_m4^+ZyR;4Q>~s1((kO$9c}ROHu^tZ zPxkIww99>h?|qcM9)W+19`4x*terf&)Hu(<@UX@+JP%X{c>cYp(S4R@pB~mYO^x)l z_2J$`)#|kh?kMw9by#DBI>;NzFF!TMcpvzxG|h7y*c0_cZwLLDNuRa=`x*N2vNFJ% zlsopzBRXfvSVM0IU(MJK5@gJ1$F3-z4@W%VTA{^xa>;+3w2!oKkHFy9B0QtOhv4gS zJ<@ZIf5zDJqpmle=XtB5dj>NmijwU8qZa16A<^9t@-foHp>d1J`GLhJ91 z*Au*TBcF0v6{{zu((0H?yMj+>&l3)g1y{{r6#>J}O(1@519YopLpxn}i9j9tO+hVlmYIz{(pkgrY+2Zny$ zOBXc&LlQ9b_YR@X-!q>Q!S66V#wGL12Hw&aS=>t`C(2&tS^Ryb{_KnCdmfGa?9kWRPC3 z(4#z^x@OYrcxYn`^x6zgE%f;V=JJQMDf2$fq~ihJv-syPQxm--si#gI==~;0vxC5; z%!Nzz5ZBc_%RCZ3@d`Mt)^zW{#k<^JK%)ofQ|U;Di@ipVwbJ6q4bteHTA1f&a6G(h zuSusuCqf^~z;{QuwQ*$GZj&Y$Ta!*4N`&VJ=wL)y0Ppu}eLZ~_+uX6>^jRgrd#udn z=ISsnwBublYNabTNTZjPeeQ0pwl*s8q-Cn^Jz2Jke)NMz!o9li0q~ijYM!ccn_I>^ zLk;u%G~!9yg!qsfLp<<(B~1_k$F|8!cW-?4a_0t3~8$wi}Xb{_a)%cfTlj6 zyn;+vrY3k(p^G}^ip-BE%6GX}0HY3V?xMawX-TeilpUtTc$*c?`?=D~yBj>dH2OtX zjbig$0)B1aPUg3ad5jX{X##ilvU-zeEmKt!M|Enf=V-XC@%pm&O}It_4!oyW>>WE5L33EaRmq*l4Z(i9BcU!fsahV$CmAS`HZ8?#SB&Vh`c%?ZSr2BD(3k84ZH}9b7&LU+9*8rQ{Zdnzg)F=t^hX&RU7gm z*1MGXD{Y4Gn*{Ccq`kw{MQ;xSo?hVQh#K#DU5)k})%7H~@8hT*TX>Q?KVtDu?wB>v zh+SOt_UXHBFrHCk{b%o;fP7E>_T0kj`R`RYU%lFoF7fTvHiZy2dJ;N%pfa&YoYzdmHyul&Z0{KGm}HldBaYQW>_iRkbcHP$O$^ z2*#{HA!Or6|&7mog7L4UELzg)NnCqLb8yjJ7hBf8naUhlOZ z`}^a2F7Nem`>`kf*?tJ#dI|h@*|&$~lqrJJTmwV}p=h_eO?Kt0rpPt~q3mMqKd@ab%HC`+m;QkpIc8t2NEBlvw0sqIa zdmp3S$vi*G|3Y}+k%_7?ndhs?Z&jjQk87cxROU?0*+lnAbipIo#lvKNq6f`cJit9v z4RsI$p|)+b(iz8^V>)%)lxWXzCC*h2onJvcJN1Dsfn^pnj7+YzNqOv|KkzL>jdQgk z=fj|@mlx5d+Sj|EJ^L``=G;a9a$ER+b=0%yHqoAFWWqDlFR{{!;J;(^NN*?aM~3GZ z-!1-^`?MPAJ;+$E8oA8%u|Cjqjx|Ms7V15S+`f-_b%`G3tz)bnM^+zVtnMA{cG+lm zF0ymH679W$acg7z#;S_+#+Zdbsyp@@4UV0C|%P zJeiu+k)c_^<3O+6(>PC!_WpxN`C5$kgT;f~%d|-EMr6oAXgPwueN3N3cNJ+klGjgyW{XNP!-!|Iix(vQ7bl0#* zbC;^2u5!)hb?Uv);q9H@oz>hez&;RKYGrI%8IuggqlEDYN8T%>=Yw}EIL`;)`QSO4 z^cd1hz?T8O^1;^k8i~ma=k#R@qe>y z0p0d$<`;Ub*9$FvvsgvPXO2RXe_{?^3r#))Utk^NaY385vLtt;(40EZwHlfl#yIvm zm*mbX``CRDd>#a!mxIr{!RNHHNcVKoZv>x_;PXcCc_a9oLHbP6?*^Z*fzKPk=Q8m5 zJJJhC|9J5>cxF;9jL^+p+?@x(Wh6A*giQUBF`T$)oBLB_Yb)A;?=N3*hWNy(W)FR}y{oCiqPR@YcsV_Uxqorq*}bms0*6Md%XP(bo%kY z_}XsQo*VCa1%9TxUfc7pcDcLl?l~>(AF~!drpG3UuJabUj_5U4qwl9Eu}P`dyY`5_ zqb^v>(Xtf(w#ob2E8`Bdi=Lw>swam$qWh%&O81F1b)Vc{={~Wh?xUmo{6N{c=tIv? zR`jqg^(s>zI;=*c`wUwudXeZpz*Tz~of=)VR`ep#dp;f+(18MaQDp7q=sq_E^&ioZ z3e>3D#!FSBlr+(YcBN{@C87`Ma_?Gi#wQMaC?0(%0eem&_MAROVZ7aF-Mrk?hcZUK z(cW~I(rLWV*naa>IR+^sL~Zy$xNi8Vv5zgp@1H))4CyVZQJ()liPT>M#od|2t6 z4o}KYv3Cw*t{))p735n3kC@NYYkjYV8W!)$J?YK=Y`0|8x7TzYX|JO0GuWLPPSotF8U9wgW%M`gm5aY~pV0<6 z)<1Nh{V#l90vzd;%l24?yxrcge_y-ro>T2lll~0pzVQ`PpXXofR$Z(|9Xzk+`C0yp zKUu!V_v5?m#YaDHZ@8+h{Rzsrqzru|9-L8AzRxXwWa*mXiq@h%w9Jr$egJ9_Tjx2^dS7k4HvRJSBY=*4V_{uy8h8b;)^Lpk0b||k8`o9eN8g?YpJl(5E6 zwFvJf+WDOSwS51CvG9-QoYP!;=R@d_{;_giFv8<^aOVOze@wA>xjUtE4tcM}?r{v7 zcCs!AqmEP58A`eZUF2{zegDX2Owwb$AMwoxy%e)%5MPA#*er=PS^J2jk7iyVKL$Z7 ze(2Ff8vN092HS=o{Om>+iH(uFdpb2;^{&M}*FYPGp@V#Ep3h>J^>4^GJ`}i-rJP&z z`iG*20{cDai`}#%G$Zt~0eaaIq?bp7JYvyBJmL{_c;ORe@QKBIyO>UjNPmFzi|OQE z(*H#I#dLBX>2pb!yZMen*GH95S2$~tAHi|C9^$pIHW>>Jk1@V~gm+BAHj;+ECAjsi zwi-Uhdo=3|AM|9Uoa8s>A~do|^hw4`=BN)^*vWi+g1j;(4>ERl32k6Q5*#-xkscG@ z3z?J1bE&KKjc_9Z9pd%KxW+foM?}Rr9 z)%tFPaY`HDZG~ncsDBeYuB8 zC~*L`78-u&NO;k|WIe&RI_6;*^mV8|-=PJ@oIg_J>9evDfcMKM;QN zH0A!6xmE~oTa12rWC(SFf7y5WK#%kI2jk=4S-v+M-cv(;2ggq|4l^dd!^T@0Wotam zn9QYK;cLR9MBWO0Y4DxGZyw$&{7k_njK19%&A;qNO~xiGW0c6ZwsrYNEHVYZx6X3p ztnee78sZ3H9Vj$43mcxS%jc7K0Q6d*+q`|LV=nd<+4ri!PT?EMT!IcNlyHZ{l@WjX zdGM+>cvGz&2A5a}A}7t>NC>9M3=OiK}@hm$UR zN@ymcY#Y2rb^DQ7{>k>v;f$5&1->^X8ONF1JLns05$_>rMdqdOr`IVX7>gZgm0L|5V>PProF*_lqE`OJj@(_mG2)T zPo6<0v_LyQKt~ql_&{XaSoXedV*MpNY7Kik;(s7~%E_8f*0HzA+HbDCQ+U-Z?9IEB z0ge{N|3hT}>zrusyR6ezU<2kp&CXcXhfC?hQRaC({oIevTtnLj^9l_&yzDh)5bI3r z6X57Z+BA9kOeqI#$ve0>g1mo|HDWi9+DbouR1;lK!&9zD_sOLGf$+|wZ%j1aWgVGs zu1(`=qgW#i5dItKs6<)Ojef_rXZ_JOK=pRicThZ60 zPP@PW-^;!<&+s!3Bd|LXPs#0vUmZkW5&cbKGpvAiwjh%ZV2d#6Ob@L!`37|MOBu#M z^oFlQ54as#g1$svx@F!$v%<&9M0OV1P5v|pd032XRCtm}v(VcP_Mqi#at&~VvR~T) zT`dEi`0@d6p-s_Y4h{yk@#rU_r$L)V-MkDs6x~U9*b|ihjCH>7utxr$qmCKyRgoz- zGT+-6(^=RzGZoEo4Ejt{G-xl>t1?c)!!E%FJPn=3Mm-92(8Qj8ICc1vh0bHWN#*}? zn|uqq#1Z!IMW+%TRw{j$`Ndx8Xl%EB#-tS6$P^{i5l3BqXh?J;u?c*Sd@NNWT%Sui zeV)s{?+oOcP1+euyk&UrhwLxeb&L1lx&i|Saj$QK*bDd{Zttv;_o47)c<~kNtG7XO znL=;S;9Xj{s}_1IXKm94&Ao-}{rfqaJ6&`ic%}tfyN+k!W#jno$;*U~U5lQSMf$~j zESvO8NWYkmT~7Lyq+iU(GD(-aTQm74^FYo(^o8z(KXt5%FwaDo@93aM_$GY3W0lP~ z!n`;F&1?|-LN6w-W6bvR{+Z~#dG^jQ`G=;&CMe~a&>xzhi^rM!P0+tNKEndMAO&46 zSMozoN0XJ#eek&0V7a4=o$M(!!WU*>=MecB5!tJ8De~wj^WZQvCc5&`!BY%7I^qKK zpP}ewk75H9oA=#nuSV%ZF>9z&e#_9;2C`SVd*okShZ!e1=WrC7`W~I^kfJ&cD=PX} zg0~NOrbBNwbooK#saF#mBF{3Bf1*>H@(!B%1fIDb*l!WMy&G!C8mEAEMaEfD?VYL2 zuU2rI2b~Q?|HwdI`R|3!hF@>A-p|?%8o`#&`UIN8#&f@FbsZWq*~nD~dHl@h%PI3W zbOR}Okp3RoFwtl&ryTfx5?G!?P97YRZ>-|q5d8+Zb8tw3@w}N{XgqGFQx@DlCEpiP zb}oC-BbT_uW`gb4BQ_I>zjc#3$R&1@S$nA@zv;_jC4S^Usv;ox%QTEijzY26-}~ zk{SzmFQm>~_5?OD&+qu|;l0D)Mfv6Ib3HA3jLqxSlN!%4=8MsP{sK-G@_!q@ztU&1 z=i!I!G1Pd+Yic~teY{(+4VN%R#~E+VZ8$vGec#hUyeCRUN5|&wuy^iaP5v13C>5C} z`&)CdSuR9QybOJuK~@}~9Sz;;D04z|@$Z3uA@T$H=YoHGUSTd?jehhU_}WZ=Hc{6B z&Zm6JK137aRl|3V%6pGaW^QqwD zW5c(4-(+0(f^YPB$5F<01^A9Ei*?6=^9|s;&$(E4EaQ9?;~UG^KErsvP}bk=Kv#8< zuQV#M@iF$#uhIs34`GWK0$qed54%_kILqSPA3+n*@UsKZ!Zzm2^JQPVt64{!TR7FI zz@GXNeSa3-{~=@eIQG;h+3Od3=ohT7@JB)y{*JwkWO&2sq_>n_o=|Y`c-aT;v-eIj zCbBQW*#d7dJXLf=2WyCv>}kEGMK*TO#tDAdk-d*YJF=(kho;5m`V?oAWZ#ATBXgg6 zpPFc%Z%P%}Mf%*}UVbh*lkDAJjm)_Ze80|^M#AeqVN8dj|Cg|a>X^bsvUAxBKV;J__VFPxy+ik1%#4Pu<7k&JCd#c9%e8Y$BNA$2H z`;rd+V+v!mVdkDPcXxP{8ytJ?Rl<_$2dy=~HSPPp{WEo#zbNczyX-r&59KN1`?_nM zGVQo}()#ua?6}o2pS2JE>_ofRV&%LwEMNNq@VS;!fEPo|8dgrk$4M-W$veoFN{}5_)n0AbHTA! zNIN<6R^ul>(XUBi=8-Mv9eztS$mN80>!rUipw?Q9xZL@ zB*n7S!T<5eGY#1*7dx@ohcnW3BRz!}NSrb3%ERXuo_c;}40hpIW6}-W>%4=&?@Qdim8-dft(h~85{?Z>DOqy1@plsf^)4zDAH7?QbIir_GbbBWp9W*~T;zj%Nf4fqJ>U@^yC~q1 z_H*zNt_;GnHVDr-i6>9nVD>gyS|7j;V(DD~qpkh2W(6f`4sDu>FJ{ z?bp%%p__vEzz1XYMfeC6eAv`uEkSth=mAF>@ScC~0zTq{aEvkG2>AKt7XkR zXGe>vXFX>}Etl3aFFE@e`|Go#oMruUQ=h|4IT_u%`RRpv;pLA;u* zhFe22y8VBoKJnAIje5o_x_Kw0_%euZwbUuTt|Rfmn~k4sJ-_>o;6s6*N<1NWAH-Kh zV1tJcmn1&(X6g`sllX@f=n$WF^z=B+{c;znd3Tt?xn!Rnh;PyQ_taQ9^WTLo=X*88 z*om*~B=f9q#kiC$dFM)a<}SZ1-z3iPqo@BBocUhW#jn*Jeju9C`#k4^ zUb;cfM$6qgDYoMe32u@*QiyeN?4f|qGH2Zbch7Ma8JuR0Kda7{v+(Po137;zei6(6 zpscjfp8y^$nS#SrfRUmGFv?+JQi%|5* zJKw=~RPyfA$BdSHDdese!TB88As*y{2jL559Zza?Ey=|5*R`yYBqhr`k-O%&7n*wv zfEemd?Z_TRAuK=_Ipj6FMSlh zYkXicSz}Md=QRHN-rD>I;x)R!@Gi}%XWIKyk53EXu3*bFiTenyrcV+d97)f$Pf6ZZZl)EJCgWvk+B(&zSt2aNF-*=< z=39WdhHuH-fhT=8@xItH?Ih>e*7j)6psihLwoG{1d{z26nDH#kmAknY$QYGyCwphUgu{_4?+`uzOAXM&TiVVJ^LWv z*H%52y(ahZ>@`(8vZYS$9$HY6rew9A$>ZDm*%I?;P3{NT{h4zTtKuZFDmrFO;XcV* zjK*6;?*89r)x`hi6g1wkFLyz59KHh*p9^{>rW5{A+*gYKwlBiY9-6XId~4Sd>+1t} zr1&6B0`BcR&mqlMnrkFV46qp1d*Rp`W+l3%&Q|@}+86g}3;J;vWkz^Ehr~^`MPW0* z_edcYflADrrasUv>)eU|=vuWje1M|{f0~lP@3_~bz2k1`Q$NnnIxv^~vq}GIGJGXE z$&vMQ+1|t@*hg;Uo)df!t9YNyzY>+;NL(`>l#SRW$4T%ar>)xWLs6kJOgKmv^Z>EXbVy*E3$`1DQ5YvDSrxE2625%{Xt~o z3;ayKF5vGI6nQ9jT;X_Q@&w7(3C&2q&2NL0-QSRQ0y>-wJkoygV8!XzvuZO3 zTiqq}bGRDeh@<`TYm{SlX#967xPvFpA(rl`81Cyt-j0BNGSv9S@oJoZEq63XJ&W=} zoaY#y$~0^sVQ~)E!UY`)e$hgEPeWgoG4YN$?PYt{kk7$;mjjyw730Ld_7y(Urr)q`@uv_Yy=iRyxKqprVy4zg z%=w3OVlV*DzDRiaQ2gNc<}N7L`ucs;efnY5IE8IR0k_S)h+oM389z)pHkX*`j45g3`w}-D{IWjDe3$et@>uyM`6R#4q{NO&9iZ%%JYNOV&q4QH zz`K)n+Vs)24a|Fg+D7+q&MjcTC3Bh68s8{c4tb*un8u#_I>hMaHO-RNz;&uaYgv;H4Tw*Nvb`=7@lT+$=JLAkNFuJf{e=pGAE&{ zjiJiM2bsg0sAnyGkKc@5#@Zk~MA^-H$Pk~vO5z{L+>v>c#&h?)iD0hCypev%oU!pf zI#i+F`f(|t72_Ud?%lCP>16+*bNyazfsE1qxE#ZT9k~8Tn*vWUya4^FR_ZA>eKV)S zd#1sIroxM+z>`>WEu2h@%0S#CSub?yA-m6)N{pFkcvOtZqZ+Kr#vkBQTF`HJKln>P z_qi6{`6#+fJ@N&8$MD55m+wbjhH-~8aUyexem|E`FoxWE! zV-k79*3O>(N+0oABu`U+;yA$HI9KI7$-A6q5xct3Qga;h1v}m}+V)YG;H-^#FSOyu z&Qo8dIIS7@pV5BXWX>p|zokNp!gn%}Yr=b)sz1z*hleGA$L9XXHs(%~zBK!0>a@t* zpv`9HufW(^9wB#PcYX$Z$Kkz#)7Ja*vQFH7gWLhWdpv%Uf?MIYB6HR-#vayqLB1vT zi`O2XJQ=*>7h4K`^g#TpCqC+0^*^^ki_nf4TZ%qyyB_~l&QINyr>aLjtBAGt+b&t@1VcH-4ug77%b;4D#kSckLd2tLVq=y(pee3EjyhU z$OiK@jTkK=Ly6H~#`%=kP4j^HM1SmH$e(6-_6cCxj(k`j%@{(j0eyqm_3se_9y~M? zXG3(3rs{3kP3X`T?j{%7sU)7Lz+8hLJ2rvNoyaNl3+8o*jd>~M3NBshs-WD^uJBP(E?oi7z?AuU?t*;kTuRKN0>&*l zMKL0xYz}L>YN!_7D5hPDMKh#~=%8wiVq85zjkkT7yTC@7Owz22RKrF&3%FLvYoVOv z7yM?>j;x)Qpoa{ltpeJz)hVo-)LPcnoo^F~+sYi}d838A8NgtpP1_}s$5K0sJO+8B zu5Le4fw$URt6H&BDYf~~g^fAo*GJUW+-h?VRU#ZIGi>gX&S=?Vii>>;|+78ZX zTf_VQO79f?Ls7Vw+k#9(2LWy%ZRszw9yp%{Aa zn3ZGH?9+_5(dW+J^}cC~I3E-6*|z4WE5`uCDBwB4{-(tET1LKp$P{I;#NA4)9gWNo z-Fh?r+YRvTB;-%B+Rxtr4P@YtniG@gu*XUPjreIwB176$Mq2O;e=Z5&s%j87#1QU zzt@ud>w#es@@{raA4d^zoIY>M-dg`+#hBU2thAKpp6eDbN}QG&4k4p`%X zGqC2C*t`8|9|ULfKfuOt?+5G0Fb8Da%@|Hqxr6micnZ91BmVE5$;hDYHMmJT-TAJq znEHqRlrQM3oQ;eS8cl`1#TJslT&;N}*I0jM>leBSmb>zza>A!-Udb^w zkk>3j`R+0j8|~ae9hnwl%m>GD@thfg#xj&7hs4gwCEjsg;#didi>+V)WA4^fe>FOT z(B?zvF#Q?B3TSguc#=cn6StxRiJn&io-E++Va6dB8f=P==X;-8owP?8vl{F-e`QZ( zHTah}*HYgLtdj;pQ#lW>cQ;X28s#KEx=v?bXiC;YYD^L~kUq8NHZv!fM-h~(MSm!H z*yD~|xUeH4Bf^wpyQ2F!Qn+U%!%D0XWLXii>>gxU39`)7oB7V1h+Kj$fK4NZId~Iu zu=UaGjtF9Ru~yjVW3BZNbWv}@jeiY1cs(%zR-(7w2@UylcqlMRJZ4K&l0$T+uYpNu zMdIFa9=dk(cy;C3d#^`d$TMSFzs4O6(Br1Jd!*0I39OxZjzzSL1$ZxJEUr{6j_(E<8uVPUja~|LwCcV<0$R1ioM7_bhGHY6Bg!WNr}4J;G-<`hoX8 z@W(cAK516JU+e?(z#!A`KnEo)Fe@;R4sm85?nIw5v~Zy3w|jDb_umW7~;XBwk zSDroxti+y>G1!PLLi7vqhZJ8(@q-i}NNlgBow%pmOb4Go!@tEYkbwNo#jc$Wel0vp zEC$x{=!0sl8y;S)B{eSEX< z?PqW=c{Y(}Ew~k%#@jqU!}AIBs}}wJ>^00s1-;?}%Cw;WAsa?ZtVf~K{j@J>P1wjD z>`jar;;e|SdkZ$?-|EXL@V=dT*8fId>VBgy4+Z=3day5l4)*229(`FC>`Q&HFID9E zQ?M`PJl}CqU+Tft@?c+z=u0{{snL|Ii~EpFAI`@lb^KumvKYC1iZQREUAd>k3k~*T zpH<{Vf9QHWbbSV#Xiu@Wgs;oIA26FWXe=?U*oRp-SJ|BfZHg}M!#`*ZF*7sJ`&Pn7 zWgI%;Ctm>9dicG>%S=FbJAhmk8^8m1s?cPv@yM-;F_He9y;p2ZH<-G`cFLrG0S%(7 zr?Xa6DOZIaENSW@#W-20##fOibu;siJlpw3EMh}Nwu^3(kzzM8Ev${8-C1gce?R)e zP!)MZUov;+E)bo)72i==t60%ZMK6TZJBj71_hvt~^UaN?Q zgnf7VPGFMQFX_;-CDf$(O_EpeC;#X^n?%nL8^#KYc3=11K-!fn*G!lWtu z#EfIEn0sKdt`b{_*g&Knfj6AKzsEX4#`RY)ON`~2q1aKvj9HHbVnxj%j{%QLp}wZE z5_4HI_0cOoP*!ebpIG7|SyETuW|6xR$(szX$N|S&!_;FnyrVnEOFofnQeNmLmp%yG zTcg!uFOiosaL$e320!dZ#i~00_>RQ;BQNPY!5!=4EQy1Bp18;d-w*D!=LxJju!b13 ziY~yq7+41jtoj95UFE<^O!VJ^b+*9zPsM~)?%j}l+kjPQw2FPV7IXySM%T%F-TEPO zQ{biUnr?Wvv6ctkCb?$=ok3uo)4M9WsCPy7?B12xW{lXGdB(bKxOIU$5ZiT@{Q}&# z0QaDa;GQFJSN%5JsRH-n0Ng?|k}ov~x4>)S_X+IOL3sZVg!d=rxxgxLUVst40Zslf z2&1LOZtPX0{I6w91KO>22FYw9!wUs+g#NKA%Y?G|ZI`on3ePdIKO5m<; zWlLgI{kN}(eTzKLg0E)%`nprq@Rf+Nb_@G}@btPCJ&&JS=PMXFM(9sywV6EZHL|uz zt|d<2u{DBc_)pio^f5lpSqnev&UbQ{BI`mY_9ip`YU1H1Pf?D^{4?eiZ_cpR-&Qg& zeY2%kAeNXJgMFIVmTqLNUuZP3?h#(_?^6LDaWgbQ*^SAZK`36cCw4LVPEWod>+A_V z@=SVhPwa!gk;hz%6HmSxUMIR&DRRcVLqP5lkUIsqOQ2`H5+m6Pej|{p__H}UAM8l~ zq+wU#w#Ho*xqjk_$DtHz|tT`MMHgX$@p{{o&@5zl-e@&Z|J z(znP#XrS(zaX~sp?-yQCP2T6o+nc<4Ft5y8iQ`;l!R`VN>fq&;B)B#gv&(Tc`Mc_9D0koP=B(5-=a1l7@;3AS74y4-v`S(N zYLxj$FrU!XRCuVAX@+LD2VoaGIy{!X-eOEe76tBZ83-(cjE{ijCSVbI@IAFBR_v9( zzyl3;mB$!eTiNG-G8A`?oVq4QSY5rehpo6$3vo_>E~QK}@9zQEb#w@PBUM9mX8+AAsq?T_!!pARau5O?4grH+AFlqA|FaF*vs{5Oc1pI(+v^`hsoP z>`ToO`hsrs>%PPqU0rf!AuQ0Bi150nq%YV!q%Tc^W6Cu1{vt9nLi)n9*!mxnzL?MG zKlJ5tWV_Hp5wt+trk&{A!eD$lkyk+)YyqYdWy;F=^ds~?&|o4o`0-CNHt?lVp~Gn6 zWpbwp_jtfl%{xur1co{MWSuh+8020LGo~f$8QDWd_vdbmi^|tuxD#a!WvBAnMEUVj z9{Ja^{GTZ=c2Un*U`-V=Tfq`Pd4jw@HdZprE^~>cyvGYwW1Sb^7|V$ zi5g&E(%ZhpSDJhcvbI$02dt@j`Cg68C`Rsx&TzP#JH_;mvSl4#L%aCKPrFj?{;XEB zWNqsoeuL4bTQk>kPUnaol{ugLT1&XU^S*(TmNz4B59z%!kFmyU;`ix5%d|S~+RFf* zsF$K@OUK=}JeD(chq*^~*q}$27ZFRflyj&?rIq~k<8J0o&3T+X72Ue>AtkH$S|uZ0 zwbd5Ctr!xgz56be#f*{Qau4I%6PL5GKbg1$?{ep$oX2UFyUTjua-HCEZvdAI!R1Hb zMe_Ql1#mf=aqGrqSr1&kgpHwXXik=YSWebD>`1TCrz&tPXC4j?XWU2UWW7N8VbZsg zo<{oNu{l{s#xo|{lqoQVDan^9^RME3k>=t%I^og0oUCILbF!4}%9K=o$(L})2J3t6 zdAh*;d?IM2eT(HV{7Ag1${_jyp|@}x3KS2dz7DyRT1BM zHC0WW%oyIx82*)cb_Mh&V>^_8S-W&VyFCTmPHoJL7D-!PY;6G)q}j|EQ4Y{z7LrM@ILbLs~UIRn3UF zp8pJZxQx+kXt9|+<`(WZl>NwiSVyqe9k^TZIB>I%>Fa|%gRzq}N3IEn)<2*Bf-AKC zj*-^>H}br5oVCBe5_Lml|6}0p5}vK6E2hrnKfiKG(#!k{EE?^`(5|dMdbay?<%M=D zk6mb2;@@(vt#cCXmxN*e4#SoKf0R3gTeT{4ZP6N|be79|+J*N&^PT~plr@C`pUglP zm-V|XRml>*n;C20B5B;cQ)-2-JAl*ZmEPQ+|k7SOcr#B`k*d4Gzb&x;$&-Jjc{>USu>wSj>ulJ zWt)`i0axX3!K+fyFLb;~F?Co)v%1>i>Mvi}gt?4{>&YqL{r93zlozhYs8{4xEDW_1!v(zEw z_fcN(dPK@qQ?8JHlSj&C+?K-qcjkHFXM}#b&kD;KVL31SFZ%9;9-E$I4|%S@6F4(0 z=Zp_P!`MrW(?22W3+_ba&4*F^j#T=xdydNT;u&K~$0%C}wzsgM8FZwBzSq8ncq z(NGb5X#n%&9CU0Uzx45)o_!Sh8Ad-7v}2ODS1@lgY2pKr{B{8Dy990>yo?Rf!+6R( zu9{^+y33Fz{tLaO%vfUb2u#=>E~Y)X+vgN~SMK&P*O(X4UeU$0CvAlW+G?eo^rcza zV$E^tE!u+a=27MxXUfmdlr!fV`w`K*g-)8PBc0dK?=9xKCDM5V`p^*QNnqN^*?gI2 z(r?yAX1y}rzM-PCYeAiz^>BGS`nrz3ZVBq^*18Y(qh|{4sDCMU*>=}+92yq*wxgHH z+Q>tDO`IKSCf`l8QIv}w$NT^ATrPJER!5_==c1qG7$W=suRf^sfjbpgdqp}EsPm-g z2N(6>yI|YWhlaub?|pdo|LDVxU_H)YA0F+|hXFnMaL;e_fj+Vpde4~qPtN(V77C0( zm~*$lyhC#?GW!tb{2>dxFu$6s!<@(Y{|eptLVp5d{b~@7hZysw!ND~YdAslf?n-9; zR9%zZOq~4Lzw{$4I2M8O&R}^T?KV?h?zmG_%{dR6c@ubw(9>Hu%OmHQw1E{<>%+9V zCgS4P+w{6^RTJyBX-eJps!4U*HMQ;z%E*}+Sz}#I-@5OFv|Mt%!MX(h#w9MxC7c~S zgH1>5ZLGV}FR>d#i4S$fm|W~V@CEk1IXCldn{F%2P%}+`u~ywmn$1j`N1B|U;oa}o zBfjNV=un3ePXm85J;HxbkNlQj;cM#Uo_4POeao-#6ZHzuVbXZ^AJ(J4{dAyx zg(c@o&u3*t%RlcdU!H+~qHl$TBDMzRtH3_#a`r3O zvta$>M|OS-oP{N7h6x{W6M#A5+d}##eG#~aj>sX##OfsMDZn26E7(2km)ryndcuDN zu{*`*R`BwgD*cH4bwAYq|NW>8_Tv`mhuBeOhQJF#jr6PRoN=&sehbY#E^AKJGOsyq ziR;cL_N(9pspzvcf3`1R{m@y~}E~Qg!aAF_J zgU2U_a6X=Vt2K3~*ss5$-t?}n5lyrycG1Sstg~)a*!ouD8+a~BQ!+B)?Z+oiVD4XU zTno%;lsOCUz-QafT*%C4A8OuJm97Z>GgW2d<>oyX{d(WSzt|yb22P4tuX3;IILow5 z?2lqIOCA^SZMucKR>bc0yPv!IpmQv@;Wy|f)@(uQPGXx=w?*k)YE^o->6w|VFE>Ui z_N-LedFs-gNyMYF)v1=un$*UmsCZ>eDs>0;AO?2a^Iq4gJ9daEb0>99kcG>*`HQ$ zGn##`QRd#U!n(eXzXW^=Z;*9+7UMW_jXg{3pkvUbu3dzEi8Z;-zL&l9!7-_NU&r`}m9b-ENoE>88d1BIm)9mcHYA|dN~gyaLeB9Iqo7oKT9>9p+8;Kmfd#YZO}!kqB?um zVb|HOnl`fk7F$go>t5a?C0*Ce^cK=izb5YjgYKL|yI6*>$?4|%tx`_D@xGmJU6PkN zWbU+(=9l+iy;Am+Sr_&q()uwzfqFxnM`0tNhPMam3~_4ctZl!lGsL;itOL14 zJ1ywtEoNEX^$^Z$ggQSpzYDyf&NNv+^(bG3J@6#uJ}~oG0(JDNn7Z4nBb+i8;0|@Z zXMX1$p4t+M?r(k%<6X{#ggZBx-{n2bnM=R6$-DGZ4|Dz<__v`8rq)L}D`>C8qpW-p z-z>R5O=y#I`dNW~(-vhISI)=FnUUDKQt}G^Sl>F?%UmhvVJrEaW&TxRZ_(J->e`Qd zc>_8^mTr7!cdX$q34CIY*m`TPV>S3fHSyk3tvUBo?g!}PN7|gZkvk&s+1ZAVj(p!<^+9$+)eRjj zj6qX)WL^Ce>?@R3jN1=>h$qNg+?nnBj#!5~!uig6B76#aRQO}9kn^hr9nC{?un|Vr z)mQDJ&cd{g z&HE8}#7RJKYtHzbldx@*I*HV|rc1v%EDA z`3!x?_?vTz_ip-|LVlTZ0$YmAtL@Aye)7JUGp%M>zKb4)e9p3T࣏Y??DUk%JJ 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 z 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

E`A@y06qjGtFTk-jgyYb#Zh)`E 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 literal 0 HcmV?d00001 diff --git a/manager/app/src/main/jniLibs/armeabi-v7a/libmagiskboot.so b/manager/app/src/main/jniLibs/armeabi-v7a/libmagiskboot.so new file mode 100644 index 0000000000000000000000000000000000000000..157133c097369cc3fe7a09c08125d4d86455ef10 GIT binary patch literal 704856 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%0DEL1n)( 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ⅆ}5p|7VGS@hPb;G^ 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%0DBX$4bzr>8% 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%0Du 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 literal 0 HcmV?d00001 diff --git a/manager/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp b/manager/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp new file mode 100644 index 0000000000000000000000000000000000000000..41d19406eab024a74afd13ca115093c1e5972ae2 GIT binary patch literal 13086 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 HQOyWkj=9Bs literal 0 HcmV?d00001 diff --git a/manager/app/src/main/res/resources.properties b/manager/app/src/main/res/resources.properties new file mode 100644 index 0000000..d5a3ddc --- /dev/null +++ b/manager/app/src/main/res/resources.properties @@ -0,0 +1 @@ +unqualifiedResLocale=en-US \ No newline at end of file diff --git a/manager/app/src/main/res/values-ar/strings.xml b/manager/app/src/main/res/values-ar/strings.xml new file mode 100644 index 0000000..542a256 --- /dev/null +++ b/manager/app/src/main/res/values-ar/strings.xml @@ -0,0 +1,364 @@ + + + الرئيسية + غير مثبت + إضغط للتثبيت + يعمل + الإصدار: %s + غير مدعوم + KernelSU يدعم GKI kernels فقط + إصدار النواة + إصدار SuSFS + إصدار المدير + وضع SELinux + معطل + مفروض + متساهل + مجهول + مستخدم خارق + لا يمكن تشغيل %s الوحدة + فشل تعطيل الإضافة : %s + لا توجد إضافات مثبتة + الإضافات + فرز (الإجراء أولاً) + فرز (الممكن أولاً) + إلغاء التثبيت + تثبيت الوحدة + تثبيت + إعادة تشغيل + الإعدادات + إعادة تشغيل سريعة + إعادة تشغيل إلى وضع Recovery + إعادة تشغيل إلى وضع Bootloader + إعادة تشغيل إلى وضع Download + إعادة تشغيل إلى وضع EDL + من نحن + هل أنت متأكد أنك تريد إلغاء تثبيت الإضافة %s ? + تم إلغاء تثبيتها %s + فشل إلغاء تثبيت %s + الإصدار + المطور + إنعاش + إظهار تطبيقات النظام + إخفاء تطبيقات النظام + إرسال السجلات + الوضع الآمن + إعادة التشغيل لتطبيق التغييرات + الوحدات غير متاحة بسبب تعارضها مع Magisk! + تعلم KernelSU + https://kernelsu.org/guide/what-is-kernelsu.html + تعرف على كيفية تثبيت KernelSU واستخدام الإضافات + إدعمنا + KernelSU سيظل دائماً مجانياً ومفتوح المصدر. مع ذلك، يمكنك أن تظهر لنا أنك تهتم بالتبرع. + إنضم إلى قناتنا في %2$s ]]> + الإفتراضي + نموذج + مُخصّص + اسم الملف الشخصي + مجموعات + القدرات + سياق SELinux + الغاء تحميل الإضافات + فشل تحديث ملف تعريف التطبيق لـ %s + إصدار KernelSU الحالي %s منخفض جدًا بحيث لا يعمل المدير بشكل صحيح. الرجاء الترقية إلى الإصدار %s أو أعلى! + الغاء تحميل الإضافات بشكل افتراضي + القيمة الافتراضية العامة لـ\"إلغاء تحميل الإضافات\" في ملفات تعريف التطبيقات. إذا تم تمكينه، إزالة جميع تعديلات الإضافات على النظام للتطبيقات التي لا تحتوي على مجموعة ملف تعريف. + سيسمح تمكين هذا الخيار لـKernelSU باستعادة أي ملفات معدلة بواسطة الإضافات لهذا التطبيق. + المجال + القواعد + تحديث + تحميل الإضافة: %s + ابدأ التنزيل: %s + الإصدار الجديد: %s متاح ، انقر للتحديث. + تشغيل + ايقاف إجباري + إعادة تشغيل التطبيق + فشل تحديث قواعد SELinux لـ %s + سجل التغييرات + قالب ملف تعريف التطبيق + إدارة القالب المحلي وعبر الإنترنت لملف تعريف التطبيق + إنشاء قالب + تحرير القالب + المعرف + معرف القالب غير صالح + الاسم + الوصف + حفظ + حذف + عرض القالب + للقراءة فقط + معرف القالب موجود بالفعل! + استيراد / تصدير + استيراد من الحافظة + تصدير إلى الحافظة + لا يمكن العثور على القالب المحلي للتصدير! + تم الاستيراد بنجاح + مزامنة القوالب عبر الإنترنت + فشل في حفظ القالب + الحافظة فارغة! + فشل في جلب سجل التغيير: %s + التحقق من التحديث + التحقق تلقائيًا من وجود تحديثات عند فتح التطبيق + فشل في منح صلاحية الجذر! + إجراء + إغلاق + تمكين تصحيح أخطاء WebView + يمكن استخدامه لتصحيح أخطاء WebUI، يرجى تمكينه فقط عند الحاجة. + تثبيت مباشر (موصى به) + اختيار ملف + التثبيت على فتحة غير نشطة (بعد OTA) + سيتم **إجبار** جهازك على التمهيد إلى الفتحة غير النشطة الحالية بعد إعادة التشغيل! +\nاستخدم هذا الخيار فقط بعد انتهاء التحديث. +\nأستمرار؟ + التالي + يوصى باستخدام صورة القسم %1$s + اختر KMI + إلغاء التثبيت + إلغاء التثبيت مؤقتًا + إلغاء التثبيت بشكل دائم + استعادة الصورة الاصلية + قم بإلغاء تثبيت KernelSU مؤقتًا، واستعد إلى حالته الأصلية بعد إعادة التشغيل التالية. + ‬إلغاء تثبيت KernelSU .(الجذر وجميع الوحدات) بشكل كامل ودائم. + استعادة صورة المصنع المخزنة (في حالة وجود نسخة احتياطية)، والتي تُستخدم عادة قبل OTA؛ إذا كنت بحاجة إلى إلغاء تثبيت KernelSU، فيرجى استخدام \"إلغاء التثبيت الدائم\". + تركيب + نجح التركيب + فشل التركيب + LKM المحددة: %s + حفظ السجلات + السجلات محفوظة + + تأكيد وحدة التثبيت %1$s؟ + وحدة غير معروفة + + تأكيد استعادة الوحدة + هذه العملية سوف تستبدل جميع الوحدات الموجودة. هل تريد المتابعة؟ + تأكيد + إلغاء + + النسخ الاحتياطي ناجح (tar.gz) + فشل النسخ الاحتياطي: %1$s + وحدات النسخ الاحتياطي + استعادة الوحدات + + تم استعادة الوحدات بنجاح, إعادة التشغيل مطلوبة + فشل الاستعادة: %1$s + أعد تشغيل التطبيق الآن + خطأ غير معروف + + فشل تنفيذ الأوامر: %1$s + + السماح بالنسخ الاحتياطي للقائمة بنجاح + فشل النسخ الاحتياطي لقائمة السماح: %1$s + تأكيد استعادة القائمة المسموح بها + هذه العملية ستقوم بالكتابة فوق قائمة المسموح بها. هل تريد المتابعة؟ + تمت استعادة القائمة بنجاح + فشل استعادة القائمة المسموحة: %1$s + قائمة النسخ الاحتياطي + استعادة قائمة المسموح بها + خلفية التطبيق المخصصة + حدد صورة كخلفية + شفافية شريط التنقل + ‏إصدار Android + نوع الجهاز + لا يسمح بمنح المستخدم المتميز ل %s + تعطيل توافق su + تعطيل أي تطبيقات مؤقتًا من الحصول على امتيازات الجذر عن طريق الأمر <unk> su (لن تتأثر عمليات الجذر الحالية). + هل أنت متأكد من أنك تريد تثبيت وحدات %1$d التالية؟ \n\n%2$s + المزيد من الإعدادات + SELinux + مفعّل + رفض + وضع البساطة + إخفاء البطاقات غير الضرورية عند تشغيلها + إخفاء إصدار النواة + إخفاء إصدار النواة + إخفاء معلومات أخرى + يخفي معلومات عن عدد المستخدمين المتميزين والوحدات ووحدات KPM على الصفحة الرئيسية + إخفاء حالة SuSFS + إخفاء معلومات حالة SuSFS على الصفحة الرئيسية + إخفاء حالة بطاقة الرابط + إخفاء معلومات البطاقة في الصفحة الرئيسية + الثيم + اتبّاع النظام + فاتح + مظلم + ربط يدوي + لون ديناميكية + الألوان الديناميكية باستخدام سمات النظام + اختر لون السمة + أزرق + أخضر + أرجواني + برتقالي + وردي + رمادي + الأصفر + Anykernel3 yükle + فلاش AnyKernel3 ملف kernel + يتطلب امتيازات الجذر + اكتمل التشويش + هل تريد إعادة التشغيل فوراً؟ + نعم + لايوجد + فشل إعادة التشغيل + KPM + لا توجد وحدات نواة مثبتة في هذا الوقت + الإصدار + المؤلف + إلغاء التثبيت + تم إلغاء التثبيت بنجاح + فشل في إلغاء التثبيت + تم تحميل وحدة كيلو جزء بنجاح + فشل تحميل وحدة كيلو بايم + العوامل المتغيرة + تنفيذ + إصدار KPM + إغلاق + تم تطوير وظائف نواة الوحدة النمطية التالية بواسطة KernelPatch وتعديلها لتشمل وظائف نواة الوحدة النمطية لـ SukiSU Ultra + سوكيسو أولترا تتطلع إلى الأمام + نجحت + فشل + وستشكل سوكيسو أولترا في المستقبل فرعا مستقلا نسبيا من فروع الوحدة، ولكننا لا نزال نقدر كيرنيل سو وموكسو الرسميين وما إلى ذلك. لإسهاماتهم! + غير مدعوم + إدعمنا + النواة غير مصحوبة + لم يتم تكوين النواة + الإعدادات المُخصصة + KPM Install + التحميل + فسيفساء + الرجاء التحديد: %1\$s وضع تثبيت الوحدة \n\nالتحميل: قم بتحميل الوحدة \nمؤقتا: تثبيت دائم في النظام + غير قادر على التحقق من وجود ملف الوحدة + ألوان المظهر + نوع الملف غير صحيح! الرجاء تحديد ملف .kpm. + إلغاء التثبيت + سيتم إلغاء تثبيت KPM التالية: %s + استخدم إصبعين لتكبير الصورة، وأصبع واحد لسحبها لضبط الموضع + إعادة + + الفلاش اكتمل + + جار التحضير + تنظيف الملفات… + جارٍ نسخ الملف… + استخراج أداة فلاش… + تعديل البرنامج النصي الفلاش… + نواة رمادية… + الفلاش اكتمل + + حدد فتحة الفلاش + الرجاء تحديد الخانة المستهدفة للتشغيل المبطن + خانة A + الخانة B + الفتحة المحددة: %1$s + الحصول على الفتحة الأصلية + تعيين الفتحة المحددة + استعادة الخانة الافتراضية + فتحة النظام الحالية الافتراضية:%1$s + + فشل النسخ + خطأ غير معروف + فشل التركيب + + إصلاح/تثبيت LKM + نواة رمادية + إصدار النواة:%1$s + استخدام أداة التصحيح:%1$s + تعيين + إعدادات التطبيق + ادوات + + التطبيق غير موجود + تم تمكين SELinux + تم تعطيل SELinux + فشل تغيير حالة SELinux + إعدادات متقدمة + تخصيص شريط الأدوات + عد مرة أخرى + تم تعيين الخلفية بنجاح + إزالة خلفيات مخصصة + Alternate icon + Change the launcher icon to KernelSU\'s icon. + Icon switched + + عرض وظيفة KPM + إخفاء معلومات KPM ووظيفتها في الشريط المنزلي والأسفل + + حدد محرك WebUI لاستخدامه + اختيار تلقائي + Force the use of WebUI X + Mandatory use of KSU WebUI + حقن Eruda في WebUI X + حقن وحدة التصحيح في WebUI X لجعل تصحيح الأخطاء أسهل. يتطلب تصحيح أخطاء الويب لتكون قيد التشغيل. + + تم تطبيق DPI + ضبط كثافة عرض الشاشة للتطبيق الحالي فقط + صغير + متوسط + كبير + حجم كبير + قابلة للتعديل + تطبيق إعدادات DPI + تأكيد تغيير إدارة شؤون الإعلام + هل أنت متأكد من أنك تريد تغيير تطبيق DPI من %1$d إلى %2$d؟ + يحتاج التطبيق إلى إعادة تشغيل لتطبيق الإعدادات الجديدة لإدارة شؤون الإعلام، ولا يؤثر على شريط حالة النظام أو التطبيقات الأخرى + تم تعيين DPI إلى %1$d، فعلي بعد إعادة تشغيل التطبيق + + لغة التطبيق + اتبع النظام + تعديل ظلام البطاقة + + رمز الخطأ + يرجى التحقق من السجل + تم تثبيت الوحدة %1$d/%2$d + أخفق %d في تثبيت وحدة جديدة + فشل تحميل الوحدة + ضرب النواة + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + في الأعلى + أسفل + محدد + خيار + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-az/strings.xml b/manager/app/src/main/res/values-az/strings.xml new file mode 100644 index 0000000..d90028d --- /dev/null +++ b/manager/app/src/main/res/values-az/strings.xml @@ -0,0 +1,362 @@ + + + Ana səhifə + Yüklənmədi + Yükləmək üçün toxunun + İşləyir + Versiya: %s + Dəstəklənmir + Hal-hazırda KernelSU yalnız GKI nüvələrini dəstəkləyir + Nüvə + SuSFS Version + Menecer versiyası + SELinux vəziyyəti + Qeyri-aktiv + Məcburi + Sərbəst + Naməlum + Super istifadəçi + Modulu aktiv etmək mümkün olmadı: %s + Modulu deaktiv etmək mümkün olmadı: %s + Heç bir modul quraşdırılmayıb + Modul + Sort (Action first) + Sort (Enabled first) + Sil + Yüklə + Yüklə + Yenidən başlat + Parametrlər + Yüngül vəziyyətdə yenodən başlat + Bərpa rejimində yenidən başlat + Bootloader rejimində yenidən başlat + Yükləmə rejimində yenidən başlat + EDL rejimində yenidən başlat + Haqqında + Modulu silmək istədiyinizdən əminsiniz %s\? + %s silindi + Silmək mümkün olmadı: %s + Versiya + Sahib + Yenilə + Sistem proqramlarını göstər + Sistem proqramlarını gizlət + Log-u göndər + Təhlükəsiz rejimi + Qüvvəyə minməsi üçün yenidən başlat + Modular deaktiv edilir,çünki o Magisk-in modulları ilə toqquşur! + KernelSU-yu öyrən + https://kernelsu.org/guide/what-is-kernelsu.html + KernelSU-yu necə quraşdırılacağını və modulların necə istifadə ediləcəyini öyrən + Bizi dəstəkləyin + KernelSU pulsuz və açıq mənbəlidir,həmişə belə olacaqdır. Bununla belə, ianə etməklə bizə qayğı göstərdiyinizi göstərə bilərsiniz. + Join our %2$s channel]]> + Defolt + Şablon + Özəl + Profil adı + Qruplar + Bacarıqlar + SELinux konteksi + Modulları umount et + %s görə tətbiq profillərini güncəlləmək mümkün olmadı + The current KernelSU version %s is too low for the manager to work properly. Please upgrade to version %s or higher! + Defolt olaraq modulları umount et + Tətbiq Profillərində \"Umount modulları\" üçün qlobal standart dəyər. Aktivləşdirilərsə, o, Profil dəsti olmayan proqramlar üçün sistemdəki bütün modul dəyişikliklərini siləcək. + Bu seçimi aktivləşdirmək KernelSU-ya bu proqram üçün modullar tərəfindən hər hansı dəyişdirilmiş faylları bərpa etməyə imkan verəcək. + Domen + Qaydalar + Güncəllə + Modul yüklənir: %s + Endirməni başlat: %s + Yeni versiya: %s əlçatandır, endirmək üçün toxunun + + Məcburi dayandır + Yenidən başlat + %s görə SELinux qaydalarını güncəlləmək mümkün olmadı + Changelog + App Profile Template + Manage local and online template of App Profile + Create template + Edit template + ID + Invalid template ID + Name + Description + Save + Delete + View template + Read only + Template ID already exists! + Import/Export + Import from clipboard + Export to clipboard + Cannot find local template to export! + Imported successfully + Sync online templates + Failed to save template + Clipboard is empty! + Fetch changelog failed: %s + Check update + Automatically check for updates when opening the app + Failed to grant root! + Action + Close + Enable WebView debugging + Can be used to debug WebUI. Please enable only when needed. + Direct install (Recommended) + Select a image that needs to be patched + Install to inactive slot (After OTA) + Your device will be **FORCED** to boot to the current inactive slot after a reboot!\nOnly use this option after OTA is done.\nContinue? + Next + %1$s partition image is recommended + Select KMI + Uninstall + Uninstall temporarily + Uninstall permanently + Restore stock image + Temporarily uninstall KernelSU, restore to original state after next reboot. + Uninstalling KernelSU (Root and all modules) completely and permanently. + Restore the stock factory image (If a backup exists), usually used before OTA; if you need to uninstall KernelSU, please use \"Uninstall permanently\". + Flashing + Flash success + Flash failed + Selected LKM: %s + Girişləri Saxla + Logs saved + + confirm install module %1$s? + unknown module + + Confirm Module Restoration + This operation will overwrite all existing modules. Continue? + Confirm + Cancel + + Backup successful (tar.gz) + Backup failed: %1$s + backup modules + restore modules + + Modules restored successfully, restart required + Restore failed: %1$s + Restart Now + Unknown error + + Command execution failed: %1$s + + Allowlist backup successful + Allowlist backup failed: %1$s + Confirm Allowlist Restoration + This operation will overwrite the current allowlist. Continue? + Allowlist restored successfully + Allowlist restore failed: %1$s + Backup Allowlist + Restore Allowlist + Custom App Background + Select an image as background + Navigation bar transparency + Android version + Device model + Granting superuser to %s is not allowed + Disable su compatibility + Temporarily disable any applications from obtaining root privileges via the ⁠su command (existing root processes will not be affected). + Sure you want to install the following %1$d modules? \n\n%2$s + More settings + SELinux + Enabled + Disabled + Simplicity mode + Hides unnecessary cards when turned on + Hide kernel version + Hide kernel version + Hide other info + Hides information about the number of super users, modules and KPM modules on the home page + Hide SuSFS status + Hide SuSFS status information on the home page + Hide Link Card Status + Hide link card information on the home page + Theme + Follow system + Light + Dark + Manual Hook + Dynamic colours + Dynamic colours using system themes + Choose a theme colour + Blue + Green + Purple + Orange + Pink + Gray + Yellow + Install Anykernel3 + Flash AnyKernel3 kernel file + Requires root privileges + Scrubbing complete + Whether to reboot immediately? + Yes + No + Reboot Failed + KPM + No installed kernel modules at this time + Version + Author + Uninstall + Uninstalled successfully + Failed to uninstall + Load of kpm module successful + Load of kpm module failed + Parameters + Execute + KPM Version + Close + The following kernel module functions were developed by KernelPatch and modified to include the kernel module functions of SukiSU Ultra + SukiSU Ultra Look forward to + Success + Failed + SukiSU Ultra will be a relatively independent branch of KSU in the future, but we still appreciate the official KernelSU and MKSU etc. for their contributions! + Unsupported + Supported + Kernel not patched + Kernel not configured + Custom settings + KPM Install + Load + Embed + Please select: %1\$s Module Installation Mode \n\nLoad: Temporarily load the module \nEmbedded: Permanently install into the system + Unable to check if module file exists + Theme Color + Incorrect file type! Please select .kpm file. + Uninstall + The following KPM will be uninstalled: %s + Use two fingers to zoom the image, and one finger to drag it to adjust the position + Reprovision + + Flash Complete + + Preparing… + Cleaning files… + Copying files… + Extracting flash tool… + Patching flash script… + Flashing kernel… + Flash completed + + Select Flash Slot + Please select the target slot for flashing boot + Slot A + Slot B + Selected slot: %1$s + Getting the original slot + Setting the specified slot + Restore Default Slot + Current Slot:%1$s + + Copy failed + Unknown error + Flash failed + + LKM repair/installation + Flashing AnyKernel3 + Kernel version:%1$s + Using the patching tool:%1$s + Configure + Application Settings + Tools + + Application not found + SELinux Enabled + SELinux Disabled + SELinux Status change failed + Advanced Settings + Customize the toolbar + Comeback + Background set successfully + Removed custom backgrounds + Alternate icon + Change the launcher icon to KernelSU\'s icon. + Icon switched + + Display KPM Function + Display KPM information and Function in home and bottom bar (Need to reopen the app) + + Select the WebUI engine to use + Automatic Selection + Force the use of WebUI X + Mandatory use of KSU WebUI + Inject Eruda into WebUI X + Inject a debug console into WebUI X to make debugging easier. Requires web debugging to be on. + + Applied DPI + Adjust the screen display density for the current application only + Small + Medium + Big + oversize + customizable + Applying DPI settings + Confirm DPI change + Are you sure you want to change the application DPI from %1$d to %2$d? + Application needs to be restarted to apply the new DPI settings, does not affect the system status bar or other applications + DPI has been set to %1$d, effective after restarting the application + + App Language + Follow System + Card Darkness Adjustment + + error code + Please check the log + Module being installed %1$d/%2$d + %d Failed to install a new module + Module download failed + Kernel Flashing + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + Top + Bottom + Selected + option + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-bn-rBD/strings.xml b/manager/app/src/main/res/values-bn-rBD/strings.xml new file mode 100644 index 0000000..e77f90c --- /dev/null +++ b/manager/app/src/main/res/values-bn-rBD/strings.xml @@ -0,0 +1,45 @@ + + + কর্নেল এস ইউ কেবল মাত্র জিকআই কর্নেল সাপোর্ট করে + এসইলিনাক্স স্টেটাস + আননোন + মোডিউল ইনেবল করা যায়নি: %s + ইন্সটল করটে চাপুন + কাজ করছে + অমূলক + কর্নেল + ম্যানেজার ভারসন + ডিসেবল + এনফোর্সিং + সুপার ইউজার + মোডিউল + আনইন্সটল + ইন্সটল + ইন্সটল + রিবুট + সেটিংস + সফট রিবুট + গ্রুপস + এসইলিনাক্স কন্টেক্সট + %s এর জন্য অ্যাপ প্রফাইল আপডেট করা যায়নি + বাইডিফল্ট মোডিউল আনমাউন্ট + হোম + ইন্সটল হয়নী + পারমিসিভ + মোডিউল ডিসেবল করা যায়নি: %s + কোনো মোডিউল ইন্সটল করা নেই + সংস্করণ: %s + ক্যাপাবিলিটিস + আনমাউন্ট মোডিউলস + রিকভারিতে বুট + বুটলোডারে বুট + ডাউনলোড মডে বুট + ইমারজেন্সি ডাউনলোড মডে বুট + অ্যাবাউট + %s মোডিউল আনইনস্টলের বেপারে নিশ্চিৎ\? + %s আনইনস্টলড + %s আনইনস্টল করা যায়নি + ভার্সন + অথার + লগ সংরক্ষণ করুন + diff --git a/manager/app/src/main/res/values-bn/strings.xml b/manager/app/src/main/res/values-bn/strings.xml new file mode 100644 index 0000000..8d59f0a --- /dev/null +++ b/manager/app/src/main/res/values-bn/strings.xml @@ -0,0 +1,59 @@ + + + হোম + ইনস্টল করা হয়নি + ইনস্টল করার জন্য ক্লিক করুন + ওয়ার্কিং + ওয়ার্কিং সংস্করণ: %s + অসমর্থিত + KernelSU শুধুমাত্র GKI কার্নেল সমর্থন করে + কার্নেল + ম্যানেজার সংস্করণ + SELinux স্টেটাস + ডিজেবল + কার্যকর + অনুমতিমূলক + অজানা + সুপার ইউজার + মডিউল সক্ষম করতে ব্যর্থ হয়েছে: %s + মডিউল নিষ্ক্রিয় করতে ব্যর্থ হয়েছে: %s + কোন মডিউল ইনস্টল করা নেই + মডিউল + আনইন্সটল + মডিউল ইনস্টল + ইনস্টল + রিবুট + সেটিংস + সফট রিবুট + রিবুট রিকোভারি + রিবুট বুটলোডার + রিবুট ডাউনলোড + রিবুট ইডিএল + এবাউট + মডিউল আনইনস্টল নিশ্চিত করুন %s? + %s আনইনস্টল সফল + আনইন্সটল ব্যর্থ: %s + ভার্সন + লেখক + রিফ্রেশ + শো সিস্টেম অ্যাপস + হাইড সিস্টেম অ্যাপস + সেন্ড লগ + সেইফ মোড + রিবুট এপ্লাই + মডিউলগুলি অক্ষম কারণ তারা ম্যাজিস্কের সাথে বিরোধিতা করে! + লার্ন কার্নেলএসইউ + https://kernelsu.org/guide/what-is-kernelsu.html + কিভাবে কার্নেলএসইউ ইনস্টল করতে হয় এবং মডিউল ব্যবহার করতে হয় তা শিখুন + সাপোর্ট টাইটেল + কার্নেলএসইউ বিনামূল্যে এবং ওপেন সোর্স, এবং সবসময় থাকবে। আপনি সবসময় একটি অনুদান দিয়ে আপনার কৃতজ্ঞতা প্রদর্শন করতে পারেন. + প্রফাইলের নাম + গ্রুপস + যোগ্যতা + এসই লিনাক্স কনটেক্সট + ডিফল্ট + টেমপ্লেট + কাস্টম + আনমাউন্ট মোডিউল + লগ সংরক্ষণ করুন + diff --git a/manager/app/src/main/res/values-bs/strings.xml b/manager/app/src/main/res/values-bs/strings.xml new file mode 100644 index 0000000..da5e829 --- /dev/null +++ b/manager/app/src/main/res/values-bs/strings.xml @@ -0,0 +1,362 @@ + + + Početna + Nije instalirano + Kliknite da instalirate + Radi + Verzija: %s + Nepodržano + KernelSU samo podržava GKI kernele sad + Kernel + SuSFS Version + Verzija Upravitelja + SELinux stanje + Isključeno + U Provođenju + Permisivno + Nepoznato + Superkorisnik + Neuspješno uključivanje module: %s + Neuspješno isključivanje module: %s + Nema instaliranih modula + Modula + Sort (Action first) + Sort (Enabled first) + Deinstalirajte + Instalirajte + Instalirajte + Ponovo pokrenite + Podešavanja + Lagano Ponovo pokretanje + Ponovo pokrenite u Oporavu + Ponovo pokrenite u Pogonski Učitavatelj + Ponovo pokrenite u Preuzimanje + Ponovo pokrenite u EDL + O + Jeste li sigurni da želite deinstalirati modulu %s\? + %s deinstalirana + Neuspješna deinstalacija: %s + Verzija + Autor + Osvježi + Prikažite sistemske aplikacije + Sakrijte sistemske aplikacije + Pošaljite Izvještaj + Sigurnosni mod + Ponovo pokrenite da bi proradilo + Module su isključene jer je u sukobu sa Magisk-om! + Naučite KernelSU + https://kernelsu.org/guide/what-is-kernelsu.html + Naučite kako da instalirate KernelSU i da koristite module + Podržite Nas + KernelSU je, i uvijek če biti, besplatan, i otvorenog izvora. Možete nam međutim pokazati da vas je briga s time da napravite donaciju. + Join our %2$s channel]]> + Zadano + Šablon + Prilagođeno + Naziv profila + Grupe + Sposobnosti + SELinux kontekst + Umount module + Ažuriranje Profila Aplikacije za %s nije uspjelo + The current KernelSU version %s is too low for the manager to work properly. Please upgrade to version %s or higher! + Umount module po zadanom + Globalna zadana vrijednost za \"Umount module\" u Profilima Aplikacije. Ako je omogućeno, uklonit će sve izmjene modula na sistemu za aplikacije koje nemaju postavljen Profil. + Uključivanjem ove opcije omogućit će KernelSU-u da vrati sve izmjenute datoteke od strane modula za ovu aplikaciju. + Domena + Pravila + Ažuriranje + Skidanje module: %s + Započnite sa skidanjem: %s + Nova verzija: %s je dostupna, kliknite da skinete + Pokrenite + Prisilno Zaustavite + Resetujte + Neuspješno ažuriranje SELinux pravila za: %s + Changelog + App Profile Template + Manage local and online template of App Profile + Create template + Edit template + ID + Invalid template ID + Name + Description + Save + Delete + View template + Read only + Template ID already exists! + Import/Export + Import from clipboard + Export to clipboard + Cannot find local template to export! + Imported successfully + Sync online templates + Failed to save template + Clipboard is empty! + Fetch changelog failed: %s + Check update + Automatically check for updates when opening the app + Failed to grant root! + Action + Close + Enable WebView debugging + Can be used to debug WebUI. Please enable only when needed. + Direct install (Recommended) + Select a image that needs to be patched + Install to inactive slot (After OTA) + Your device will be **FORCED** to boot to the current inactive slot after a reboot!\nOnly use this option after OTA is done.\nContinue? + Next + %1$s partition image is recommended + Select KMI + Uninstall + Uninstall temporarily + Uninstall permanently + Restore stock image + Temporarily uninstall KernelSU, restore to original state after next reboot. + Uninstalling KernelSU (Root and all modules) completely and permanently. + Restore the stock factory image (If a backup exists), usually used before OTA; if you need to uninstall KernelSU, please use \"Uninstall permanently\". + Flashing + Flash success + Flash failed + Selected LKM: %s + Sačuvaj Dnevnike + Logs saved + + confirm install module %1$s? + unknown module + + Confirm Module Restoration + This operation will overwrite all existing modules. Continue? + Confirm + Cancel + + Backup successful (tar.gz) + Backup failed: %1$s + backup modules + restore modules + + Modules restored successfully, restart required + Restore failed: %1$s + Restart Now + Unknown error + + Command execution failed: %1$s + + Allowlist backup successful + Allowlist backup failed: %1$s + Confirm Allowlist Restoration + This operation will overwrite the current allowlist. Continue? + Allowlist restored successfully + Allowlist restore failed: %1$s + Backup Allowlist + Restore Allowlist + Custom App Background + Select an image as background + Navigation bar transparency + Android version + Device model + Granting superuser to %s is not allowed + Disable su compatibility + Temporarily disable any applications from obtaining root privileges via the ⁠su command (existing root processes will not be affected). + Sure you want to install the following %1$d modules? \n\n%2$s + More settings + SELinux + Enabled + Disabled + Simplicity mode + Hides unnecessary cards when turned on + Hide kernel version + Hide kernel version + Hide other info + Hides information about the number of super users, modules and KPM modules on the home page + Hide SuSFS status + Hide SuSFS status information on the home page + Hide Link Card Status + Hide link card information on the home page + Theme + Follow system + Light + Dark + Manual Hook + Dynamic colours + Dynamic colours using system themes + Choose a theme colour + Blue + Green + Purple + Orange + Pink + Gray + Yellow + Install Anykernel3 + Flash AnyKernel3 kernel file + Requires root privileges + Scrubbing complete + Whether to reboot immediately? + Yes + No + Reboot Failed + KPM + No installed kernel modules at this time + Version + Author + Uninstall + Uninstalled successfully + Failed to uninstall + Load of kpm module successful + Load of kpm module failed + Parameters + Execute + KPM Version + Close + The following kernel module functions were developed by KernelPatch and modified to include the kernel module functions of SukiSU Ultra + SukiSU Ultra Look forward to + Success + Failed + SukiSU Ultra will be a relatively independent branch of KSU in the future, but we still appreciate the official KernelSU and MKSU etc. for their contributions! + Unsupported + Supported + Kernel not patched + Kernel not configured + Custom settings + KPM Install + Load + Embed + Please select: %1\$s Module Installation Mode \n\nLoad: Temporarily load the module \nEmbedded: Permanently install into the system + Unable to check if module file exists + Theme Color + Incorrect file type! Please select .kpm file. + Uninstall + The following KPM will be uninstalled: %s + Use two fingers to zoom the image, and one finger to drag it to adjust the position + Reprovision + + Flash Complete + + Preparing… + Cleaning files… + Copying files… + Extracting flash tool… + Patching flash script… + Flashing kernel… + Flash completed + + Select Flash Slot + Please select the target slot for flashing boot + Slot A + Slot B + Selected slot: %1$s + Getting the original slot + Setting the specified slot + Restore Default Slot + Current Slot:%1$s + + Copy failed + Unknown error + Flash failed + + LKM repair/installation + Flashing AnyKernel3 + Kernel version:%1$s + Using the patching tool:%1$s + Configure + Application Settings + Tools + + Application not found + SELinux Enabled + SELinux Disabled + SELinux Status change failed + Advanced Settings + Customize the toolbar + Comeback + Background set successfully + Removed custom backgrounds + Alternate icon + Change the launcher icon to KernelSU\'s icon. + Icon switched + + Display KPM Function + Display KPM information and Function in home and bottom bar (Need to reopen the app) + + Select the WebUI engine to use + Automatic Selection + Force the use of WebUI X + Mandatory use of KSU WebUI + Inject Eruda into WebUI X + Inject a debug console into WebUI X to make debugging easier. Requires web debugging to be on. + + Applied DPI + Adjust the screen display density for the current application only + Small + Medium + Big + oversize + customizable + Applying DPI settings + Confirm DPI change + Are you sure you want to change the application DPI from %1$d to %2$d? + Application needs to be restarted to apply the new DPI settings, does not affect the system status bar or other applications + DPI has been set to %1$d, effective after restarting the application + + App Language + Follow System + Card Darkness Adjustment + + error code + Please check the log + Module being installed %1$d/%2$d + %d Failed to install a new module + Module download failed + Kernel Flashing + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + Top + Bottom + Selected + option + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-da/strings.xml b/manager/app/src/main/res/values-da/strings.xml new file mode 100644 index 0000000..3c3221a --- /dev/null +++ b/manager/app/src/main/res/values-da/strings.xml @@ -0,0 +1,362 @@ + + + Hjem + Ikke installeret + Klik for at installere + Arbejder + Version: %s + Ikke understøttet + KernelSU understøtter kun GKI kernels + Kernel + SuSFS Version + Manager Version + SELinux-status + Deaktiveret + Håndhævende + Tilladende + Ukendt + Superbruger + Aktivering af modul fejlede: %s + Deaktivering af modul fejlede: %s + Intet modul installeret + Modul + Sort (Action first) + Sort (Enabled first) + Afinstaller + Installer + Installer + Genstart + Indstillinger + Blød Genstart + Genstart til Recovery + Genstart til Bootloader + Genstart til Download + Genstart til EDL + Om + Er du sikker på, at du vil afinstallere modulet %s\? + %s afinstalleret + Afinstallation af: %s fejlede + Version + Forfatter + Opdater + Vis system-apps + Gem system-apps + Send Log + Sikker tilstand + Genstart for at tage effekt + Moduler er deaktiveret, fordi der er konflikt med Magiskes! + Lær KernelSU + https://kernelsu.org/guide/what-is-kernelsu.html + Lær hvordan man installerer KernelSU og moduler + Støt Os + KernelSU er, og vil altid være gratis og open source. Du kan stadig vise os din støtte ved at donere. + Join our %2$s channel]]> + Standard + Skabelon + Brugerdefineret + Profilnavn + Grupper + Evner + SELinux-kontext + Afmonteret moduler + Opdatering af App Profil for %s fejlede + The current KernelSU version %s is too low for the manager to work properly. Please upgrade to version %s or higher! + Afmontere moduler som standard + Den globale standard værdi for \"Afmonter moduler\" i App Profiler. Hvis aktiveret vil den fjerne alle modulers modifikationer til system applikationerne der ikke har en sat Profil. + Aktivering af denne indstilling vil tillade KernelSU at gendanne hvilken som helst modificeret filer af modulet for denne applikation. + Domæne + Regler + Opdatering + Downloader modulet: %s + Start download: %s + Ny version: %s er tilgængelig, kilk for at downloade + Start + Tving Stop + Genstart + Opdatering af SELinux-regler for: %s fejlede + Changelog + App Profile Template + Manage local and online template of App Profile + Create template + Edit template + ID + Invalid template ID + Name + Description + Save + Delete + View template + Read only + Template ID already exists! + Import/Export + Import from clipboard + Export to clipboard + Cannot find local template to export! + Imported successfully + Sync online templates + Failed to save template + Clipboard is empty! + Fetch changelog failed: %s + Check update + Automatically check for updates when opening the app + Failed to grant root! + Action + Close + Enable WebView debugging + Can be used to debug WebUI. Please enable only when needed. + Direct install (Recommended) + Select a image that needs to be patched + Install to inactive slot (After OTA) + Your device will be **FORCED** to boot to the current inactive slot after a reboot!\nOnly use this option after OTA is done.\nContinue? + Next + %1$s partition image is recommended + Select KMI + Uninstall + Uninstall temporarily + Uninstall permanently + Restore stock image + Temporarily uninstall KernelSU, restore to original state after next reboot. + Uninstalling KernelSU (Root and all modules) completely and permanently. + Restore the stock factory image (If a backup exists), usually used before OTA; if you need to uninstall KernelSU, please use \"Uninstall permanently\". + Flashing + Flash success + Flash failed + Selected LKM: %s + Gem Logfiler + Logs saved + + confirm install module %1$s? + unknown module + + Confirm Module Restoration + This operation will overwrite all existing modules. Continue? + Confirm + Cancel + + Backup successful (tar.gz) + Backup failed: %1$s + backup modules + restore modules + + Modules restored successfully, restart required + Restore failed: %1$s + Restart Now + Unknown error + + Command execution failed: %1$s + + Allowlist backup successful + Allowlist backup failed: %1$s + Confirm Allowlist Restoration + This operation will overwrite the current allowlist. Continue? + Allowlist restored successfully + Allowlist restore failed: %1$s + Backup Allowlist + Restore Allowlist + Custom App Background + Select an image as background + Navigation bar transparency + Android version + Device model + Granting superuser to %s is not allowed + Disable su compatibility + Temporarily disable any applications from obtaining root privileges via the ⁠su command (existing root processes will not be affected). + Sure you want to install the following %1$d modules? \n\n%2$s + More settings + SELinux + Enabled + Disabled + Simplicity mode + Hides unnecessary cards when turned on + Hide kernel version + Hide kernel version + Hide other info + Hides information about the number of super users, modules and KPM modules on the home page + Hide SuSFS status + Hide SuSFS status information on the home page + Hide Link Card Status + Hide link card information on the home page + Theme + Follow system + Light + Dark + Manual Hook + Dynamic colours + Dynamic colours using system themes + Choose a theme colour + Blue + Green + Purple + Orange + Pink + Gray + Yellow + Install Anykernel3 + Flash AnyKernel3 kernel file + Requires root privileges + Scrubbing complete + Whether to reboot immediately? + Yes + No + Reboot Failed + KPM + No installed kernel modules at this time + Version + Author + Uninstall + Uninstalled successfully + Failed to uninstall + Load of kpm module successful + Load of kpm module failed + Parameters + Execute + KPM Version + Close + The following kernel module functions were developed by KernelPatch and modified to include the kernel module functions of SukiSU Ultra + SukiSU Ultra Look forward to + Success + Failed + SukiSU Ultra will be a relatively independent branch of KSU in the future, but we still appreciate the official KernelSU and MKSU etc. for their contributions! + Unsupported + Supported + Kernel not patched + Kernel not configured + Custom settings + KPM Install + Load + Embed + Please select: %1\$s Module Installation Mode \n\nLoad: Temporarily load the module \nEmbedded: Permanently install into the system + Unable to check if module file exists + Theme Color + Incorrect file type! Please select .kpm file. + Uninstall + The following KPM will be uninstalled: %s + Use two fingers to zoom the image, and one finger to drag it to adjust the position + Reprovision + + Flash Complete + + Preparing… + Cleaning files… + Copying files… + Extracting flash tool… + Patching flash script… + Flashing kernel… + Flash completed + + Select Flash Slot + Please select the target slot for flashing boot + Slot A + Slot B + Selected slot: %1$s + Getting the original slot + Setting the specified slot + Restore Default Slot + Current Slot:%1$s + + Copy failed + Unknown error + Flash failed + + LKM repair/installation + Flashing AnyKernel3 + Kernel version:%1$s + Using the patching tool:%1$s + Configure + Application Settings + Tools + + Application not found + SELinux Enabled + SELinux Disabled + SELinux Status change failed + Advanced Settings + Customize the toolbar + Comeback + Background set successfully + Removed custom backgrounds + Alternate icon + Change the launcher icon to KernelSU\'s icon. + Icon switched + + Display KPM Function + Display KPM information and Function in home and bottom bar (Need to reopen the app) + + Select the WebUI engine to use + Automatic Selection + Force the use of WebUI X + Mandatory use of KSU WebUI + Inject Eruda into WebUI X + Inject a debug console into WebUI X to make debugging easier. Requires web debugging to be on. + + Applied DPI + Adjust the screen display density for the current application only + Small + Medium + Big + oversize + customizable + Applying DPI settings + Confirm DPI change + Are you sure you want to change the application DPI from %1$d to %2$d? + Application needs to be restarted to apply the new DPI settings, does not affect the system status bar or other applications + DPI has been set to %1$d, effective after restarting the application + + App Language + Follow System + Card Darkness Adjustment + + error code + Please check the log + Module being installed %1$d/%2$d + %d Failed to install a new module + Module download failed + Kernel Flashing + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + Top + Bottom + Selected + option + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-de/strings.xml b/manager/app/src/main/res/values-de/strings.xml new file mode 100644 index 0000000..b9d848a --- /dev/null +++ b/manager/app/src/main/res/values-de/strings.xml @@ -0,0 +1,364 @@ + + + Startseite + Nicht installiert + Tippe zum Installieren + Funktioniert + Version: %s + Nicht unterstützt + KernelSU unterstützt derzeit nur GKI-Kernel + Kernel + SuSFS version + Manager-Version + SELinux Status + Deaktiviert + Erzwingen + Permissiv + Unbekannt + Superuser + Modulaktivierung fehlgeschlagen: %s + Moduldeaktivierung fehlgeschlagen: %s + Keine Modul installiert + Modul + Sortiere zuerst (Aktion) + Sortieren (zuerst aktiviert) + Deinstallieren + Installieren + Installieren + Neustarten + Einstellungen + Soft-Reboot + In den Recovery-Modus neustarten + In den Bootloader-Modus neustarten + In den Download-Modus neustarten + In den EDL-Modus neustarten + Über KernelSU + Möchtest du wirklich Modul %s deinstallieren? + %s deinstalliert + Deinstallation fehlgeschlagen: %s + Version + Autor + Aktualisieren + System-Apps anzeigen + System-Apps ausblenden + Protokoll senden + Sicherer Modus + Neustarten, damit Änderungen wirksam werden + Module sind aufgrund eines Konfliktes mit Magisk nicht verfügbar! + KernelSU verstehen + https://kernelsu.org/guide/what-is-kernelsu.html + Erfahre, wie KernelSU installiert wird und wie Module verwendet werden + Unterstütze uns + KernelSU ist und wird immer frei und quelloffen sein. Du kannst uns jedoch deine Unterstützung zeigen, indem du eine Spende tätigst. + Begleiten Sie uns %2$s-Kanal]]> + Standard + Vorlage + Benutzerdefiniert + Profilname + Gruppen + Fähigkeiten + SELinux-Kontext + Module aushängen + App-Profilaktualisierung für %s fehlgeschlagen + Die aktuelle KernelSU-Version %s ist zu alt für diese Manager-Version. Bitte auf Version %s oder höher aktualisieren! + Module standardmäßig aushängen + Globaler Standardwert für \"Module aushängen\" im App-Profil. Falls er aktiviert ist, werden alle Moduländerungen im System für alle Apps entfernt, für die kein Profil festgelegt ist. + Wenn du diese Option aktivierst, kann KernelSU alle von den Modulen für diese App geänderten Dateien wiederherstellen. + Domäne + Regeln + Aktualisieren + Lädt Modul %s herunter + Starte Download: %s + Neue Version %s verfügbar, tippen zum Aktualisieren. + Starten + Stopp erzwingen + Neustarten + Aktualisieren der SELinux-Regeln schlug fehl für: %s + Änderungsprotokoll + App-Profil-Vorlage + Verwalte die lokale und online Vorlage des App-Profils + Vorlage erstellen + Vorlage bearbeiten + ID + Ungültige Vorlagen-ID + Name + Beschreibung + Speichern + Löschen + Vorlage ansehen + Schreibgeschützt + Vorlagen-ID existiert bereits! + Import/Export + Aus Zwischenablage importieren + In Zwischenablage exportieren + Kann lokale Vorlage nicht finden! + Erfolgreich importiert + Online-Vorlagen synchronisieren + Schlug beim Speichern der Vorlage fehl + Zwischenablage ist leer! + Konnte Veränderungs-Protokoll nicht laden: %s + Auf Aktualisierung prüfen + Prüfe automatisch auf Aktualisierungen, wenn die App geöffnet wird + Root-Zugriff konnte nicht gewährt werden! + Aktion + Schließen + WebView-Debugging aktivieren + Kann zum Fehlerbeheben der WebUI verwendet werden, bitte nur im Notfall aktivieren. + Direkte Installation (empfohlen) + Datei auswählen + In inaktiven Slot installieren (nach OTA) + Nach einem Neustart wird dein Gerät **GEZWUNGEN** in den derzeit inaktiven Slot zu starten! +\nBenutze dies nur nach Fertigstellung des OTA. +\nFortfahren? + Weiter + %1$s Partitionsabbild empfohlen + KMI auswählen + Deinstallieren + Temporär deinstallieren + Permanent deinstallieren + Standard-Abbild wiederherstellen + KernelSU temporär deinstallieren, originalen Status nach dem nächsten Neustart wiederherstellen. + KernelSU (Root und alle Module) vollständig und dauerhaft deinstallieren. + Das Standard Werksabbild wiederherstellen (falls ein Backup existiert), normalerweise vor einem OTA zu verwenden; falls Sie KernelSU deinstallieren müssen, nutzen Sie bitte \"Permanent deinstallieren\". + Schreibt + Schreiben erfolgreich + Schreiben fehlgeschlagen + Wähle LKM: %s + Protokolle Speichern + Protokolle gespeichert + + das Installationsmodul %1$s bestätigen ? + unbekannter Modul + + Modul-Wiederherstellung bestätigen + Diese Operation wird alle vorhandenen Module überschreiben. Fortfahren? + Bestätigen + Abbrechen + + Sicherung erfolgreich (tar.gz) + Sicherung fehlgeschlagen: %1$s + sicherungsmodule + wiederherstellen + + Module erfolgreich wiederhergestellt, Neustart erforderlich + Wiederherstellung fehlgeschlagen: %1$s + Jetzt Neustarten + Ein unbekannter Fehler ist aufgetreten + + Befehlsausführung fehlgeschlagen: %1$s + + Sicherung erfolgreich erlaubt + Sicherung der erlaubten Liste fehlgeschlagen: %1$s + Allowlist-Wiederherstellung bestätigen + Dieser Vorgang wird die aktuelle Berechtigungsliste überschreiben. Fortfahren? + Liste erfolgreich wiederhergestellt + Wiederherstellung der erlaubten Liste fehlgeschlagen: %1$s + Sicherungsliste + Allowlist wiederherstellen + Eigener App-Hintergrund + Wählen Sie ein Bild als Hintergrund + Transparenz der Navigationsleiste + Androidversion + Geräteausführung + Superuser %s zu erlauben ist nicht erlaubt + Su Kompatibilität deaktivieren + Deaktivieren Sie temporär alle Anwendungen, die root-Privilegien über den Befehl <unk> su zu erhalten (bestehende root-Prozesse werden nicht beeinflusst). + Möchten Sie die folgenden %1$d Module installieren? \n\n\n%2$s + Weitere Einstellungen + SELinux + Aktiviert + Deaktiviert + Einfachheit Modus + Versteckt unnötige Karten beim Einschalten + Kernel-Version ausblenden + Kernel-Version ausblenden + Andere Infos ausblenden + Versteckt Informationen über die Anzahl der Supernutzer, Module und KPM-Module auf der Startseite + SuSFS-Status ausblenden + SuSFS Statusinformationen auf der Startseite ausblenden + Link-Kartenstatus ausblenden + Link Karteninformationen auf der Startseite ausblenden + Thema + Systemkonform + Licht + Dunkel + Manueller Hook + Dynamische Farbe + Dynamische Farben mit System-Themes + Wähle eine Theme-Farbe + Blau + Grün + Lila + Orange + Pink + Grau + Gelb + Install Anykernel3 + Flash AnyKernel3 Kernel-Datei + Erfordert Root-Rechte + Scrubbing abgeschlossen + Ob sofort neu gestartet werden soll? + Ja + Nein + Neustart fehlgeschlagen + KPM + Keine installierten Kernelmodule + Version + Autor + Deinstallieren + Erfolgreich deinstalliert + Deinstallation fehlgeschlagen + Laden des kpm Moduls erfolgreich + Laden des kpm-Moduls fehlgeschlagen + Parameter + Ausführen + KPM-Version + Schließen + Die folgenden Kernel-Modulfunktionen wurden von KernelPatch entwickelt und so modifiziert, dass die Funktionen des Kernel-Moduls von SukiSU Ultra enthalten sind + SukiSU Ultra freut sich auf + Erfolgreich + Fehlgeschlagen + SukiSU Ultra wird in Zukunft ein relativ unabhängiger Zweig der KSU sein, aber wir schätzen immer noch die offiziellen KernelSU und MKSU usw. für ihre Beiträge! + Nicht unterstützt + Unterstützt: + Kernel nicht gepatcht + Kernel nicht konfiguriert + Eigene Einstellungen + KPM Install + Laden + Einbetten + Bitte wählen: %1\$s Modul-Installationsmodus \n\nLaden: Das Modul \ntemporär laden: Dauerhaft in das System installieren + Kann nicht überprüfen, ob die Moduldatei existiert + Themenfarbe + Falscher Dateityp! Bitte wählen Sie eine .kpm Datei. + Deinstallieren + Folgende KPM wird deinstalliert: %s + Verwende zwei Finger um das Bild zu vergrößern und einen Finger um die Position anzupassen + Rückzahlung + + Blitz abgeschlossen + + Vorbereiten… + Bereinigung von Dateien… + Kopiere Datei… + Entpacken des Flash-Tools… + Patcht Flash-Skript… + Flashen des Kernels… + Blitz abgeschlossen + + Wähle Flash Slot + Bitte wählen Sie den Ziel-Slot zum Blinken des Boots aus + Slot A + Steckplatz B + Wähle LKM: %1$s + Den ursprünglichen Slot erhalten + Setze den angegebenen Slot + Standard wiederherstellen + Aktueller Standard-Slot des Systems:%1$s + + Kopieren fehlgeschlagen + Ein unbekannter Fehler ist aufgetreten + Schreiben fehlgeschlagen + + LKM Reparatur/Installation + Flashen des Kernels… + Kernel + Benutze das Patchwerkzeug:%1$s + Konfigurieren + Anwendungs-Einstellungen + Tools + + Anwendung nicht gefunden + SELinux aktiviert + SELinux deaktiviert + SELinux Statusänderung fehlgeschlagen + Erweiterte Einstellungen + Passt die Symbolleiste an. + Comeback + Hintergrund erfolgreich gesetzt + Eigene Hintergründe entfernt + Alternatives Symbol + Ändere das Launcher-Symbol auf das KernelSU Icon. + Icon gewechselt + + KPM-Funktion anzeigen + Versteckt KPM-Informationen und Funktion in der Home- und Unterleiste + + Wähle die zu verwendende WebUI-Engine + Automatisch auswählen + Nutzung von WebUI X erzwingen + Pflichtanwendung von KSU WebUI + Eruda in WebUI X injizieren + Fügen Sie eine Debug-Konsole in WebUI X ein, um das Debuggen zu vereinfachen. Benötigt Debugging im WebUI X. + + Angewendeter DPI + Bildschirmanzahl nur für die aktuelle Anwendung anpassen + Klein + Mittel + Groß + übergröße + anpassbar + DPI-Einstellungen anwenden + DPI-Änderung bestätigen + Sind Sie sicher, dass Sie die Anwendung DPI von %1$d auf %2$d ändern möchten? + Die Anwendung muss neu gestartet werden, um die neuen DPI-Einstellungen zu übernehmen, hat keine Auswirkungen auf die System-Statusleiste oder andere Anwendungen + DPI wurde auf %1$dgesetzt, wirksam nach dem Neustart der Anwendung + + App Sprache + Folge Systemeinstellung + Kartenfinsternis Anpassung + + fehlercode + Bitte überprüfen Sie das Log + Modul wird installiert %1$d/%2$d + %d Fehler bei der Installation eines neuen Moduls + Modul-Download fehlgeschlagen + Kernel-Flashen + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + Top + Unten + Ausgewählt + variieren + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-es/strings.xml b/manager/app/src/main/res/values-es/strings.xml new file mode 100644 index 0000000..451ee77 --- /dev/null +++ b/manager/app/src/main/res/values-es/strings.xml @@ -0,0 +1,362 @@ + + + Inicio + No instalado + Haz clic para instalar + Funcionando + Versión: %s + Sin soporte + KernelSU solo admite kernels GKI por ahora + Versión del kernel + Versión SuSFS + Versión del gestor + Estado de SELinux + Desactivado + Estricto + Permisivo + Desconocido + Superusuario + Error al activar el módulo: %s + Error al desactivar el módulo: %s + Ningún módulo instalado + Módulo + Ordenar (Acción primero) + Ordenar (Activado primero) + Desinstalar + Instalar + Instalar + Reiniciar + Ajustes + Reinicio suave + Reiniciar en modo de recuperación + Reiniciar en modo de arranque + Reiniciar en modo Download + Reiniciar en modo EDL + Acerca de + ¿Está seguro de que desea desinstalar el módulo %s? + %s desinstalado + Fallo al desinstalar: %s + Versión + Autor + Refrescar + Mostrar aplicaciones del sistema + Ocultar aplicaciones del sistema + Enviar registros + Modo seguro + Reinicia para aplicar cambios + ¡Los módulos no están disponibles debido a un conflicto con Magisk! + Aprende KernelSU + https://kernelsu.org/guide/what-is-kernelsu.html + Aprende a instalar KernelSU y a utilizar módulos + Apóyanos + KernelSU es, y siempre será, gratuito y de código abierto. Sin embargo, puedes demostrarnos que te importamos haciendo una donación. + Únete a nuestro canal %2$s]]> + Predeterminado + Plantilla + Personalizado + Nombre de perfil + Grupos + Capacidades + Contexto SELinux + Desmontar módulos + Error al actualizar el perfil de la aplicación para %s + La versión %s actual de KernelSU es demasiado baja para que el gestor funcione correctamente. Por favor, ¡actualice a la versión %s o superior! + Desmontar módulos por defecto + El valor global predeterminado para \"Umount modules\" en App Profile. Si está activado, eliminará todas las modificaciones de módulos del sistema para las apps que no tengan un perfil establecido. + Activar esta opción permitirá a KernelSU restaurar cualquier archivo modificado por los módulos para esta aplicación. + Dominio + Reglas + Actualizar + Descargando módulo: %s + Iniciar descarga: %s + La nueva versión %s está disponible, haga clic para actualizar. + Iniciar + Forzar detención + Reiniciar + Error al actualizar las reglas SELinux para: %s + Registro de cambios + Plantilla de perfil de aplicación + Gestionar la plantilla local y en línea de App Profile + Crear plantilla + Editar plantilla + ID + ID de plantilla no válida + Nombre + Descripción + Guardar + Eliminar + Ver plantilla + Sólo lectura + ¡El ID de plantilla ya existe! + Importar/Exportar + Importar desde el portapapeles + Exportar al portapapeles + ¡No se encuentra la plantilla local para exportar! + Importado con éxito + Sincronizar plantillas en línea + No se ha podido guardar la plantilla + ¡El portapapeles está vacío! + Fallo en la obtención del registro de cambios: %s + Comprobar actualización + Comprobación automática de actualizaciones al abrir la aplicación + ¡No se ha podido conceder el acceso root! + Aktion + Cancelar + Activar la depuración de WebView + Puede ser usado para depurar WebUI, por favor habilítalo sólo cuando sea necesario. + Instalación directa (Recomendada) + Seleccione un archivo + Instalar en ranura inactiva (Después de OTA) + ¡Su dispositivo será **FORZADO** a arrancar en la ranura inactiva actual después de un reinicio!\nUtilice esta opción sólo después de que la OTA se haya realizado.\n¿Continuar? + Siguiente + Se recomienda la imagen de partición %1$s + Selecciona KMI + Desinstalar + Desinstalar temporalmente + Desinstalar permanentemente + Restaurar imagen de archivo + Desinstalar temporalmente KernelSU, restaurar al estado original tras el siguiente reinicio. + Desinstalar KernelSU (Root y todos los módulos) completa y permanentemente. + Restaurar la imagen de fábrica stock (Si existe una copia de seguridad), por lo general se utiliza antes de OTA; si necesita desinstalar KernelSU, por favor, utilice \"Desinstalar permanentemente\". + Intermitencia + Éxito de Flash + Flash falló + LKM seleccionado: %s + Guardar registros + Registro guardado + + ¿confirmar la instalación del módulo %1$s? + módulo desconocido + + Confirmar restauración del módulo + Esta operación sobrescribirá todos los módulos existentes. ¿Continuar? + Confirmar + Cancelar + + Copia de seguridad exitosa (tar.gz) + Copia de seguridad fallida: %1$s + módulos de respaldo + restaurar módulos + + Módulos restaurados con éxito, se requiere reiniciar + Restauración fallida: %1$s + Reiniciar ahora + Error desconocido + + Ejecución del comando fallida: %1$s + + Copia de seguridad correcta + Copia de seguridad de lista fallida: %1$s + Confirmar restauración de lista de permisos + Esta operación sobrescribirá la lista permitida actual. ¿Continuar? + Lista restaurada correctamente + Restauración de lista de permisos falló: %1$s + Copia de seguridad lista + Restaurar lista de permisos + Fondo de aplicación personalizado + Seleccionar una imagen como fondo + Transparencia de la barra de navegación + Versión de Android + Modelo del dispositivo + No se permite conceder superusuario a %s + Desactivar compatibilidad su + Deshabilita temporalmente cualquier aplicación para obtener privilegios de root a través del comando de \"it\" (los procesos de root existentes no se verán afectados). + ¿Seguro que quieres instalar los siguientes módulos %1$d ? \n\n%2$s + Opciones avanzadas + SELinux + Habilitado + Desactivado + Modo de simplicidad + Ocultar tarjetas innecesarias al encender + Ocultar versión del núcleo + Ocultar versión del núcleo + Ocultar otra información + Oculta información sobre el número de superusuarios, módulos y módulos KPM en la página de inicio + Ocultar estado SuSFS + Ocultar información de estado de SuSFS en la página de inicio + Ocultar el estado de la tarjeta de enlace + Ocultar información de la tarjeta de enlace en la página de inicio + Temas + Predeterminado del sistema + Claro + Oscuro + Gancho manual + Color dinámico + Colores dinámicos usando temas del sistema + Elegir un color de tema + Azul + Verde + Morado + Naranjo + Rosa + Gris + Amarillo + Install Anykernel3 + Flash archivo del kernel AnyKernel3 + Requiere privilegios de root + Desguace completo + ¿Reiniciar inmediatamente? + Si + No + Reinicio fallido + KPM + No hay módulos del núcleo instalados en este momento + Versión + Autor + Desinstalar + Desinstalado con éxito + Error al desinstalar + Carga exitosa del módulo kpm + Error al cargar el módulo kpm + Parámetros + Empezar + Versión de KPM + Cancelar + Las siguientes funciones del módulo del núcleo fueron desarrolladas por KernelPatch y modificadas para incluir las funciones del módulo del núcleo de SukiSU Ultra + SukiSU Ultra espera a + Correctamente realizado + Fallido + SukiSU Ultra será una rama relativamente independiente de KSU en el futuro, pero todavía apreciamos el KernelSU oficial y MKSU etc. ¡por sus contribuciones! + Sin soporte + Apoyado + Kernel no parcheado + Kernel no configurado + Ajustes personalizados + KPM Install + Cargar + Insertar + Por favor seleccione: %1\$s Modo de instalación del Módulo \n\nCarga: Cargar temporalmente el módulo \nInsertar: Instalar permanentemente en el sistema + No se puede comprobar si el archivo de módulo existe + Color del tema + ¡Tipo de archivo incorrecto! Por favor seleccione el archivo .kpm. + Desinstalar + El siguiente KPM será desinstalado: %s + Usa dos dedos para acercar la imagen, y un dedo para arrastrarla para ajustar la posición + Reaprovisionamiento + + Flashear completo + + Preparando… + Limpiando archivos… + Copiando archivos… + Extrayendo herramienta flash… + Parcheando script flash… + Flashear kernel… + Flash completado + + Seleccionar Ranura Flash + Por favor, seleccione la ranura de destino para flashear el arranque + Slot A + Slot B + Slot selectionada + Obteniendo la ranura original + Establecer la ranura especificada + Restaurar Ranura Predeterminada + Ranura predeterminada del sistema actual:%1$s + + Hubo un fallo al copiar + Error desconocido + Flash falló + + Reparación/instalación de LKM + Flashear kernel + Versión del kernel + Usando la herramienta de parches:%1$s + Configurar + Configuración de la Aplicación + Herramientas + + No se ha encontrado la solicitud + SELinux habilitado + SELinux desactivado + Error al cambiar el estado de SELinux + Configuraciones avanzadas + Personalizar la barra de herramientas. + Retorno + Fondo establecido correctamente + Eliminar fondo personalizado + Icono alternativo + Cambiar el icono del lanzador al icono de KernelSU. + Icono cambiado + + Mostrar función KPM + Oculta la información y función del KPM en la barra de inicio e inferior + + Seleccione el motor WebUI a usar + Selección automática + Forzar el uso de WebUI X + Uso obligatorio de KSU WebUI + Inyectar Eruda en WebUI X + Inyecta una consola de depuración en WebUI X para facilitar la depuración. Requiere que la depuración web esté encendida. + + DPI aplicado + Ajustar la densidad de pantalla para la aplicación actual + Pequeño + Medio + Original + sobretamaño + personalizable + Aplicando ajustes de DPI + Confirmar cambio DPI + ¿Estás seguro de que quieres cambiar el DPI de la aplicación de %1$d a %2$d? + La aplicación necesita reiniciarse para aplicar la nueva configuración DPI, no afecta a la barra de estado del sistema u otras aplicaciones + DPI ha sido establecido a %1$d, efectivo después de reiniciar la aplicación + + Idioma de la aplicación + Seguir sistema + Ajuste de oscuridad de tarjeta + + código de error + Por favor, compruebe el registro + Módulo instalado %1$d/%2$d + %d falló al instalar un nuevo módulo + La descarga del modelo falló + Parpadeo Kernel + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + Arriba + Abajo + Seleccionados + opción + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-et/strings.xml b/manager/app/src/main/res/values-et/strings.xml new file mode 100644 index 0000000..7c8640a --- /dev/null +++ b/manager/app/src/main/res/values-et/strings.xml @@ -0,0 +1,362 @@ + + + Kodu + Pole paigaldatud + Klõpsa paigaldamiseks + Töötamine + Versioon: %s + Mittetoetatud + KernelSU toetab hetkel vaid GSI tuumasid + Tuum + SuSFS Version + Manageri versioon + SELinuxi olek + Keelatud + Jõustav + Lubav + Teadmata + Superkasutaja + Mooduli lubamine ebaõnnestus: %s + Mooduli keelamine ebaõnnestus: %s + Mooduleid pole paigaldatud + Moodul + Sort (Action first) + Sort (Enabled first) + Eemalda + Paigalda + Paigalda + Taaskäivita + Seaded + Pehme taaskäivitus + Taaskäivita taastusesse + Taaskäivita käivituslaadurisse + Taaskäivita allalaadimisrežiimi + Taaskäivita EDL-i + Teave + Kas soovid kindlasti eemaldada mooduli %s? + %s eemaldatud + Eemaldamine ebaõnnestus: %s + Versioon + Autor + Värskenda + Kuva süsteemirakendused + Peida süsteemirakendused + Saada logid + Turvarežiim + Muudatuste rakendamiseks taaskäivita + Moodulid pole saadaval Magiski konflikti tõttu! + Õpi KernelSUd + https://kernelsu.org/guide/what-is-kernelsu.html + Õpi KernelSUd paigaldama ja mooduleid kasutama + Toeta meid + KernelSU on, ja alati jääb, tasuta ning avatud lähtekoodiga kättesaadavaks. Sellegipoolest võid sa näidata, et hoolid, ning teha annetuse. + Join our %2$s channel]]> + Vaikimisi + Mall + Kohandatud + Profiili nimi + Grupid + Võimekused + SELinux kontekst + Lahtihaagitud moodulid + Rakenduseprofiili uuendamine %s jaoks ebaõnnestus + The current KernelSU version %s is too low for the manager to work properly. Please upgrade to version %s or higher! + Haagi moodulid vaikimisi lahti + Globaalne vaikeväärtus \"Lahtihaagitud moodulitele\" rakenduseprofiilis. Lubamisel eemaldab see kõik moodulite süsteemimuudatused rakendustele, millel ei ole profiili määratud. + Selle valiku lubamine lubab KernelSU-l taastada selle rakenduse moodulite poolt mistahes muudetud faile. + Domeen + Reeglid + Uuenda + Mooduli allalaadimine: %s + Allalaadimise alustamine: %s + Uus versioon %s on saadaval, klõpsa täiendamiseks. + Käivita + Sundpeata + Taaskäivita + SELinux reeglite uuendamine ebaõnnestus: %s + Muudatuste logi + Rakenduseprofiili mall + Halda kohalikke ja võrgusolevaid rakenduseprofiili malle + Loo mall + Muuda malli + ID + Sobimatu malli ID + Nimi + Kirjeldus + Salvesta + Kustuta + Vaata malli + Vaid lugemiseks + Malli ID juba eksisteerib! + Impordi/ekspordi + Impordi lõikelaualt + Ekspordi lõikelauale + Ei saa eksportida, kohalikku malli ei leitud! + Edukalt imporditud + Sünkrooni võrgumallid + Malli salvestamine ebaõnnestus + Lõikelaud on tühi! + Muudatuste logi hankimine ebaõnnestus: %s + Kontrolli uuendusi + Rakenduse avamisel kontrolli automaatselt uuendusi + Juurkasutaja andmine ebaõnnestus! + Action + Close + Luba WebView silumine + Saab kasutada WebUI silumiseks, palun luba ainult vajadusel. + Otsene paigaldus (soovitatud) + Vali fail + Paigalda ebaaktiivsesse lahtrisse (pärast üle-õhu uuendust) + Sinu seade **SUNNITAKSE** pärast taaskäivitust ebaaktiivsesse lahtrisse käivituma!\nKasuta seda valikut vaid siis, kui tegid üle-õhu uuenduse.\nJätkad? + Edasi + %1$s partitsioonitõmmis on soovitatud + Vali KMI + Eemalda + Eemalda ajutiselt + Eemalda püsivalt + Taasta vaikimisi tõmmis + Eemalda KernelSU ajutiselt, taasta pärast taaskäivitust algseisu. + KernelSU eemaldamine (juurkasutaja ja kõik moodulid) täielikult ja püsivalt. + Taasta tehase-vaiketõmmis (kui varundus eksisteerib), tavaliselt kasutatakse enne üle-õhu uuendust; kui soovid KernelSU-d eemaldada, palun kasuta \"Eemalda püsivalt\". + Välgutamine + Välgutamine õnnestus + Välgutamine ebaõnnestus + Valitud LKM: %s + Salvesta Logid + Logs saved + + confirm install module %1$s? + unknown module + + Confirm Module Restoration + This operation will overwrite all existing modules. Continue? + Confirm + Cancel + + Backup successful (tar.gz) + Backup failed: %1$s + backup modules + restore modules + + Modules restored successfully, restart required + Restore failed: %1$s + Restart Now + Unknown error + + Command execution failed: %1$s + + Allowlist backup successful + Allowlist backup failed: %1$s + Confirm Allowlist Restoration + This operation will overwrite the current allowlist. Continue? + Allowlist restored successfully + Allowlist restore failed: %1$s + Backup Allowlist + Restore Allowlist + Custom App Background + Select an image as background + Navigation bar transparency + Android version + Device model + Granting superuser to %s is not allowed + Disable su compatibility + Temporarily disable any applications from obtaining root privileges via the ⁠su command (existing root processes will not be affected). + Sure you want to install the following %1$d modules? \n\n%2$s + More settings + SELinux + Enabled + Disabled + Simplicity mode + Hides unnecessary cards when turned on + Hide kernel version + Hide kernel version + Hide other info + Hides information about the number of super users, modules and KPM modules on the home page + Hide SuSFS status + Hide SuSFS status information on the home page + Hide Link Card Status + Hide link card information on the home page + Theme + Follow system + Light + Dark + Manual Hook + Dynamic colours + Dynamic colours using system themes + Choose a theme colour + Blue + Green + Purple + Orange + Pink + Gray + Yellow + Install Anykernel3 + Flash AnyKernel3 kernel file + Requires root privileges + Scrubbing complete + Whether to reboot immediately? + Yes + No + Reboot Failed + KPM + No installed kernel modules at this time + Version + Author + Uninstall + Uninstalled successfully + Failed to uninstall + Load of kpm module successful + Load of kpm module failed + Parameters + Execute + KPM Version + Close + The following kernel module functions were developed by KernelPatch and modified to include the kernel module functions of SukiSU Ultra + SukiSU Ultra Look forward to + Success + Failed + SukiSU Ultra will be a relatively independent branch of KSU in the future, but we still appreciate the official KernelSU and MKSU etc. for their contributions! + Unsupported + Supported + Kernel not patched + Kernel not configured + Custom settings + KPM Install + Load + Embed + Please select: %1\$s Module Installation Mode \n\nLoad: Temporarily load the module \nEmbedded: Permanently install into the system + Unable to check if module file exists + Theme Color + Incorrect file type! Please select .kpm file. + Uninstall + The following KPM will be uninstalled: %s + Use two fingers to zoom the image, and one finger to drag it to adjust the position + Reprovision + + Flash Complete + + Preparing… + Cleaning files… + Copying files… + Extracting flash tool… + Patching flash script… + Flashing kernel… + Flash completed + + Select Flash Slot + Please select the target slot for flashing boot + Slot A + Slot B + Selected slot: %1$s + Getting the original slot + Setting the specified slot + Restore Default Slot + Current Slot:%1$s + + Copy failed + Unknown error + Flash failed + + LKM repair/installation + Flashing AnyKernel3 + Kernel version:%1$s + Using the patching tool:%1$s + Configure + Application Settings + Tools + + Application not found + SELinux Enabled + SELinux Disabled + SELinux Status change failed + Advanced Settings + Customize the toolbar + Comeback + Background set successfully + Removed custom backgrounds + Alternate icon + Change the launcher icon to KernelSU\'s icon. + Icon switched + + Display KPM Function + Display KPM information and Function in home and bottom bar (Need to reopen the app) + + Select the WebUI engine to use + Automatic Selection + Force the use of WebUI X + Mandatory use of KSU WebUI + Inject Eruda into WebUI X + Inject a debug console into WebUI X to make debugging easier. Requires web debugging to be on. + + Applied DPI + Adjust the screen display density for the current application only + Small + Medium + Big + oversize + customizable + Applying DPI settings + Confirm DPI change + Are you sure you want to change the application DPI from %1$d to %2$d? + Application needs to be restarted to apply the new DPI settings, does not affect the system status bar or other applications + DPI has been set to %1$d, effective after restarting the application + + App Language + Follow System + Card Darkness Adjustment + + error code + Please check the log + Module being installed %1$d/%2$d + %d Failed to install a new module + Module download failed + Kernel Flashing + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + Top + Bottom + Selected + option + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-fa/strings.xml b/manager/app/src/main/res/values-fa/strings.xml new file mode 100644 index 0000000..e142416 --- /dev/null +++ b/manager/app/src/main/res/values-fa/strings.xml @@ -0,0 +1,362 @@ + + + خانه + نصب نشده است + برای نصب ضربه بزنید + به درستی کار می‌کند + نسخه: %s + پشتیبانی نشده + کرنل اس یو فقط هسته های gki را پشتیبانی میکند + هسته + SuSFS Version + نسخه برنامه + وضعیت SELinux + غیرفعال + قانونمند + آزاد + ناشناخته + دسترسی روت + فعال کردن ماژول ناموفق بود: %s + غیرفعال کردن ماژول ناموفق بود: %s + هیچ ماژولی نصب نشده است + ماژول + Sort (Action first) + Sort (Enabled first) + لغو نصب + نصب + نصب + راه اندازی دوباره + تنظیمات + راه اندازی نرم + راه اندازی به ریکاوری + راه اندازی به بوتلودر + راه اندازی به حالت دانلود + راه اندازی به EDL + درباره + آیا مطمئنید که میخواهید ماژول %s را پاک کنید؟ + %s پاک شد + پاک کردن ناموفق بود: %s + نسخه + سازنده + تازه‌سازی + نمایش برنامه های سیستمی + مخفی کردن برنامه های سیستمی + ارسال وقایع + حالت امن + راه‌اندازی مجدد برای تاثیرگذاری + مازول به دلیل تعارض با مجیسک غیرفعال شده اند\'s! + یادگیری کرنل اس یو + https://kernelsu.org/guide/what-is-kernelsu.html + یاد بگیرید چگونه از کرنل اس یو و ماژول ها استفاده کنید + از ما حمایت کنید + KernelSU رایگان است و همیشه خواهد بود و منبع باز است. با این حال، می توانید با اهدای کمک مالی به ما نشان دهید که برایتان مهم است. + Join our %2$s channel]]> + پیش‌فرض + قالب + شخصی سازی شده + اسم پروفایل + Groups + Capabilities + SELinux context + جداکردن ماژول ها + Failed to update App Profile for %s + The current KernelSU version %s is too low for the manager to work properly. Please upgrade to version %s or higher! + Umount modules by default + The global default value for \"Umount modules\" in App Profile. If enabled, it will remove all module modifications to the system for apps that don\'t have a profile set. + Enabling this option will allow KernelSU to restore any modified files by the modules for this app. + Domain + Rules + Update + Downloading module: %s + Start downloading: %s + New version %s is available, click to upgrade. + Launch + Force stop + Restart + Failed to update SELinux rules for %s + Changelog + App Profile Template + Manage local and online template of App Profile + Create template + Edit template + ID + Invalid template ID + Name + Description + Save + Delete + View template + Read only + Template ID already exists! + Import/Export + Import from clipboard + Export to clipboard + Cannot find local template to export! + Imported successfully + Sync online templates + Failed to save template + Clipboard is empty! + Fetch changelog failed: %s + Check update + Automatically check for updates when opening the app + Failed to grant root! + Action + Close + Enable WebView debugging + Can be used to debug WebUI. Please enable only when needed. + Direct install (Recommended) + Select a image that needs to be patched + Install to inactive slot (After OTA) + Your device will be **FORCED** to boot to the current inactive slot after a reboot!\nOnly use this option after OTA is done.\nContinue? + Next + %1$s partition image is recommended + Select KMI + Uninstall + Uninstall temporarily + Uninstall permanently + Restore stock image + Temporarily uninstall KernelSU, restore to original state after next reboot. + Uninstalling KernelSU (Root and all modules) completely and permanently. + Restore the stock factory image (If a backup exists), usually used before OTA; if you need to uninstall KernelSU, please use \"Uninstall permanently\". + Flashing + Flash success + Flash failed + Selected LKM: %s + ذخیره گزارش‌ها + Logs saved + + confirm install module %1$s? + unknown module + + Confirm Module Restoration + This operation will overwrite all existing modules. Continue? + Confirm + Cancel + + Backup successful (tar.gz) + Backup failed: %1$s + backup modules + restore modules + + Modules restored successfully, restart required + Restore failed: %1$s + Restart Now + Unknown error + + Command execution failed: %1$s + + Allowlist backup successful + Allowlist backup failed: %1$s + Confirm Allowlist Restoration + This operation will overwrite the current allowlist. Continue? + Allowlist restored successfully + Allowlist restore failed: %1$s + Backup Allowlist + Restore Allowlist + Custom App Background + Select an image as background + Navigation bar transparency + Android version + Device model + Granting superuser to %s is not allowed + Disable su compatibility + Temporarily disable any applications from obtaining root privileges via the ⁠su command (existing root processes will not be affected). + Sure you want to install the following %1$d modules? \n\n%2$s + More settings + SELinux + Enabled + Disabled + Simplicity mode + Hides unnecessary cards when turned on + Hide kernel version + Hide kernel version + Hide other info + Hides information about the number of super users, modules and KPM modules on the home page + Hide SuSFS status + Hide SuSFS status information on the home page + Hide Link Card Status + Hide link card information on the home page + Theme + Follow system + Light + Dark + Manual Hook + Dynamic colours + Dynamic colours using system themes + Choose a theme colour + Blue + Green + Purple + Orange + Pink + Gray + Yellow + Install Anykernel3 + Flash AnyKernel3 kernel file + Requires root privileges + Scrubbing complete + Whether to reboot immediately? + Yes + No + Reboot Failed + KPM + No installed kernel modules at this time + Version + Author + Uninstall + Uninstalled successfully + Failed to uninstall + Load of kpm module successful + Load of kpm module failed + Parameters + Execute + KPM Version + Close + The following kernel module functions were developed by KernelPatch and modified to include the kernel module functions of SukiSU Ultra + SukiSU Ultra Look forward to + Success + Failed + SukiSU Ultra will be a relatively independent branch of KSU in the future, but we still appreciate the official KernelSU and MKSU etc. for their contributions! + Unsupported + Supported + Kernel not patched + Kernel not configured + Custom settings + KPM Install + Load + Embed + Please select: %1\$s Module Installation Mode \n\nLoad: Temporarily load the module \nEmbedded: Permanently install into the system + Unable to check if module file exists + Theme Color + Incorrect file type! Please select .kpm file. + Uninstall + The following KPM will be uninstalled: %s + Use two fingers to zoom the image, and one finger to drag it to adjust the position + Reprovision + + Flash Complete + + Preparing… + Cleaning files… + Copying files… + Extracting flash tool… + Patching flash script… + Flashing kernel… + Flash completed + + Select Flash Slot + Please select the target slot for flashing boot + Slot A + Slot B + Selected slot: %1$s + Getting the original slot + Setting the specified slot + Restore Default Slot + Current Slot:%1$s + + Copy failed + Unknown error + Flash failed + + LKM repair/installation + Flashing AnyKernel3 + Kernel version:%1$s + Using the patching tool:%1$s + Configure + Application Settings + Tools + + Application not found + SELinux Enabled + SELinux Disabled + SELinux Status change failed + Advanced Settings + Customize the toolbar + Comeback + Background set successfully + Removed custom backgrounds + Alternate icon + Change the launcher icon to KernelSU\'s icon. + Icon switched + + Display KPM Function + Display KPM information and Function in home and bottom bar (Need to reopen the app) + + Select the WebUI engine to use + Automatic Selection + Force the use of WebUI X + Mandatory use of KSU WebUI + Inject Eruda into WebUI X + Inject a debug console into WebUI X to make debugging easier. Requires web debugging to be on. + + Applied DPI + Adjust the screen display density for the current application only + Small + Medium + Big + oversize + customizable + Applying DPI settings + Confirm DPI change + Are you sure you want to change the application DPI from %1$d to %2$d? + Application needs to be restarted to apply the new DPI settings, does not affect the system status bar or other applications + DPI has been set to %1$d, effective after restarting the application + + App Language + Follow System + Card Darkness Adjustment + + error code + Please check the log + Module being installed %1$d/%2$d + %d Failed to install a new module + Module download failed + Kernel Flashing + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + Top + Bottom + Selected + option + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-fil/strings.xml b/manager/app/src/main/res/values-fil/strings.xml new file mode 100644 index 0000000..afcc0b2 --- /dev/null +++ b/manager/app/src/main/res/values-fil/strings.xml @@ -0,0 +1,362 @@ + + + Home + Hindi naka-install + Pindutin para mag-install + Gumagana + Bersyon: %s + Hindi Suportado + Sinusuportahan lang ng KernelSU ang mga kernel ng GKI ngayon + Kernel version + SuSFS Version + Bersyon ng Manager + Katayuan ng SELinux + Hindi pinagana + Enforcing + Permissive + Hindi matukoy + Superuser + Nabigong paganahin ang modyul: %s + Nabigong i-disable ang modyul: %s + Walang naka-install na modyul + Modyul + Sort (Action first) + Sort (Enabled first) + I-uninstall + I-install + I-install + I-reboot + Mga setting + I-soft Reboot + I-reboot sa Recovery + I-reboot sa Bootloader + I-reboot sa Download + I-reboot sa EDL + Tungkol + Sigurado ka bang gusto mong i-uninstall ang modyul %s\? + Na-uninstall ang %s + Nabigong i-uninstall: %s + Bersyon + May-akda + I-refresh + Ipakita ang mga application ng system + Itago ang mga application ng system + Magpadala ng Log + Safe mode + I-reboot para umepekto + Hindi pinagana ang mga modyul dahil salungat ito sa Magisk! + Alamin ang KernelSU + https://kernelsu.org/guide/what-is-kernelsu.html + Matutunan kung paano mag-install ng KernelSU at gumamit ng mga modyul + Suportahan Kami + Ang KernelSU ay, at palaging magiging, libre, at open source. Gayunpaman, maaari mong ipakita sa amin na nagmamalasakit ka sa pamamagitan ng pagbibigay ng donasyon. + Join our %2$s channel]]> + Default + Template + Custom + Pangalan ng profile + Mga Grupo + Mga Kakayanan + Konteksto ng SELinux + I-unmount ang mga modyul + Nabigong i-update ang App Profile para sa %s + The current KernelSU version %s is too low for the manager to work properly. Please upgrade to version %s or higher! + Umount modules by default + Ang pangkalahatang default na halaga para sa \"Umount modules\" sa Mga Profile ng App. Kung pinagana, aalisin nito ang lahat ng mga pagbabago sa modyul sa system para sa mga aplikasyon na walang hanay ng Profile. + Ang pagpapagana sa opsyong ito ay magbibigay-daan sa KernelSU na ibalik ang anumang binagong file ng mga modyul para sa aplikasyon na ito. + Domain + Mga Tuntunin + Update + Nagda-download ng modyul: %s + Simulan ang pag-download: %s + Bagong bersyon: Available ang %s, i-click upang i-download + Ilunsad + Pilit na I-hinto + I-restart + Nabigong i-update ang mga panuntunan ng SELinux para sa: %s + Changelog + App Profile Template + Manage local and online template of App Profile + Create template + Edit template + ID + Invalid template ID + Name + Description + Save + Delete + View template + Read only + Template ID already exists! + Import/Export + Import from clipboard + Export to clipboard + Cannot find local template to export! + Imported successfully + Sync online templates + Failed to save template + Clipboard is empty! + Fetch changelog failed: %s + Check update + Automatically check for updates when opening the app + Failed to grant root! + Action + Close + Enable WebView debugging + Can be used to debug WebUI. Please enable only when needed. + Direct install (Recommended) + Select a image that needs to be patched + Install to inactive slot (After OTA) + Your device will be **FORCED** to boot to the current inactive slot after a reboot!\nOnly use this option after OTA is done.\nContinue? + Next + %1$s partition image is recommended + Select KMI + Uninstall + Uninstall temporarily + Uninstall permanently + Restore stock image + Temporarily uninstall KernelSU, restore to original state after next reboot. + Uninstalling KernelSU (Root and all modules) completely and permanently. + Restore the stock factory image (If a backup exists), usually used before OTA; if you need to uninstall KernelSU, please use \"Uninstall permanently\". + Flashing + Flash success + Flash failed + Selected LKM: %s + I-save ang mga Log + Logs saved + + confirm install module %1$s? + unknown module + + Confirm Module Restoration + This operation will overwrite all existing modules. Continue? + Confirm + Cancel + + Backup successful (tar.gz) + Backup failed: %1$s + backup modules + restore modules + + Modules restored successfully, restart required + Restore failed: %1$s + Restart Now + Unknown error + + Command execution failed: %1$s + + Allowlist backup successful + Allowlist backup failed: %1$s + Confirm Allowlist Restoration + This operation will overwrite the current allowlist. Continue? + Allowlist restored successfully + Allowlist restore failed: %1$s + Backup Allowlist + Restore Allowlist + Custom App Background + Select an image as background + Navigation bar transparency + Android version + Device model + Granting superuser to %s is not allowed + Disable su compatibility + Temporarily disable any applications from obtaining root privileges via the ⁠su command (existing root processes will not be affected). + Sure you want to install the following %1$d modules? \n\n%2$s + More settings + SELinux + Enabled + Disabled + Simplicity mode + Hides unnecessary cards when turned on + Hide kernel version + Hide kernel version + Hide other info + Hides information about the number of super users, modules and KPM modules on the home page + Hide SuSFS status + Hide SuSFS status information on the home page + Hide Link Card Status + Hide link card information on the home page + Theme + Follow system + Light + Dark + Manual Hook + Dynamic colours + Dynamic colours using system themes + Choose a theme colour + Blue + Green + Purple + Orange + Pink + Gray + Yellow + Install Anykernel3 + Flash AnyKernel3 kernel file + Requires root privileges + Scrubbing complete + Whether to reboot immediately? + Yes + No + Reboot Failed + KPM + No installed kernel modules at this time + Version + Author + Uninstall + Uninstalled successfully + Failed to uninstall + Load of kpm module successful + Load of kpm module failed + Parameters + Execute + KPM Version + Close + The following kernel module functions were developed by KernelPatch and modified to include the kernel module functions of SukiSU Ultra + SukiSU Ultra Look forward to + Success + Failed + SukiSU Ultra will be a relatively independent branch of KSU in the future, but we still appreciate the official KernelSU and MKSU etc. for their contributions! + Unsupported + Supported + Kernel not patched + Kernel not configured + Custom settings + KPM Install + Load + Embed + Please select: %1\$s Module Installation Mode \n\nLoad: Temporarily load the module \nEmbedded: Permanently install into the system + Unable to check if module file exists + Theme Color + Incorrect file type! Please select .kpm file. + Uninstall + The following KPM will be uninstalled: %s + Use two fingers to zoom the image, and one finger to drag it to adjust the position + Reprovision + + Flash Complete + + Preparing… + Cleaning files… + Copying files… + Extracting flash tool… + Patching flash script… + Flashing kernel… + Flash completed + + Select Flash Slot + Please select the target slot for flashing boot + Slot A + Slot B + Selected slot: %1$s + Getting the original slot + Setting the specified slot + Restore Default Slot + Current Slot:%1$s + + Copy failed + Unknown error + Flash failed + + LKM repair/installation + Flashing AnyKernel3 + Kernel version:%1$s + Using the patching tool:%1$s + Configure + Application Settings + Tools + + Application not found + SELinux Enabled + SELinux Disabled + SELinux Status change failed + Advanced Settings + Customize the toolbar + Comeback + Background set successfully + Removed custom backgrounds + Alternate icon + Change the launcher icon to KernelSU\'s icon. + Icon switched + + Display KPM Function + Display KPM information and Function in home and bottom bar (Need to reopen the app) + + Select the WebUI engine to use + Automatic Selection + Force the use of WebUI X + Mandatory use of KSU WebUI + Inject Eruda into WebUI X + Inject a debug console into WebUI X to make debugging easier. Requires web debugging to be on. + + Applied DPI + Adjust the screen display density for the current application only + Small + Medium + Big + oversize + customizable + Applying DPI settings + Confirm DPI change + Are you sure you want to change the application DPI from %1$d to %2$d? + Application needs to be restarted to apply the new DPI settings, does not affect the system status bar or other applications + DPI has been set to %1$d, effective after restarting the application + + App Language + Follow System + Card Darkness Adjustment + + error code + Please check the log + Module being installed %1$d/%2$d + %d Failed to install a new module + Module download failed + Kernel Flashing + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + Top + Bottom + Selected + option + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-fr/strings.xml b/manager/app/src/main/res/values-fr/strings.xml new file mode 100644 index 0000000..6d46515 --- /dev/null +++ b/manager/app/src/main/res/values-fr/strings.xml @@ -0,0 +1,364 @@ + + + Accueil + Non installé + Appuyez ici pour installer + Fonctionnel + Version : %s + Non pris en charge + KernelSU ne prend désormais en charge que les noyaux GKI + Noyau + Version SuSFS + Version du gestionnaire + Mode SELinux + Désactivé + Enforcing + Permissive + Inconnu + Super-utilisateur + Échec de l\'activation du module : %s + Échec de la désactivation du module : %s + Aucun module installé + Modules + Trier par action + Trier par activé + Désinstaller + Installer + Installer + Redémarrer + Paramètres + Redémarrage progressif + Redémarrer en mode de récupération + Redémarrer en mode bootloader + Redémarrer en mode de téléchargement + Redémarrer en mode EDL + À propos + Êtes-vous sûr(e) de vouloir désinstaller le module %s \? + %s a été désinstallé + Échec de la désinstallation : %s + Version + Auteur + Rafraîchir + Afficher les applications système + Masquer les applications système + Envoyer les journaux + Mode sans échec + Redémarrez pour appliquer les modifications + Les modules sont indisponibles en raison d\'un conflit avec Magisk ! + Découvrir KernelSU + https://kernelsu.org/guide/what-is-kernelsu.html + Découvrez comment installer KernelSU et utiliser les modules + Soutenez-nous + KernelSU est, et restera toujours, gratuit et open source. Vous pouvez cependant nous témoigner de votre soutien en nous faisant un don. + Rejoignez notre canal %2$s]]> + Par défaut + Modèle + Personnalisé + Nom du profil + Groupes + Capacités + Contexte SELinux + Démonter les modules + Échec de la modification du profil d\'application de %s + La version actuelle de KernelSU (%s) est trop ancienne pour que le gestionnaire fonctionne correctement. Veuillez passer à la version %s ou à une version supérieure ! + Démonter les modules par défaut + Valeur globale par défaut pour l\'option \"Démonter les modules\" dans les profils d\'application. Lorsque l\'option est activée, les modifications apportées au système par les modules sont supprimées pour les applications qui n\'ont pas de profil défini. + L\'activation de cette option permettra à KernelSU de restaurer tous les fichiers modifiés par les modules pour cette application. + Domaine + Règles + Mettre à jour + Téléchargement du module : %s + Début du téléchargement de : %s + La nouvelle version %s est disponible, appuyez ici pour mettre à jour. + Lancer + Forcer l\'arrêt + Relancer l\'application + Échec de la mise à jour des règles SELinux pour : %s + Journal des modifications + Modèles de profils d\'application + Gérer les modèles de profils d\'application locaux et en ligne + Créer un modèle + Modifier le modèle + ID + ID de modèle invalide + Nom + Description + Enregistrer + Supprimer + Voir le modèle + Lecture seule + L\'ID du modèle existe déjà ! + Importer/exporter + Importer à partir du presse-papiers + Exporter vers le presse-papiers + Impossible de trouver un modèle local à exporter ! + Importation réussie + Synchroniser les modèles en ligne + Échec de l\'enregistrement du modèle + Le presse-papiers est vide ! + Échec de récupération du journal des modifications : %s + Vérifier les mises à jour + Vérifier automatiquement les mises à jour à l\'ouverture de l\'application + Échec de l\'octroi des privilèges root ! + Action + Fermer + Activer le débogage WebView + Peut être utilisé pour déboguer WebUI. Activez uniquement cette option si nécessaire. + Installation directe (recommandé) + Sélectionner un fichier + Installer dans l\'emplacement inactif (après OTA) + Votre appareil sera **FORCÉ** à démarrer sur l\'emplacement inactif actuel après un redémarrage ! +\nN\'utilisez cette option qu\'une fois la mise à jour OTA terminée. +\nContinuer ? + Suivant + L\'image de la partition %1$s est recommandée + Sélectionner une KMI + Désinstaller + Désinstaller temporairement + Désinstaller définitivement + Restaurer l\'image d\'origine + Désinstaller KernelSU temporairement et rétablir l\'état original au redémarrage suivant. + Désinstallation complète et permanente de KernelSU (root et tous les modules). + Restaurer l\'image d\'origine d\'usine (s\'il en existe une sauvegarde). Utilisé généralement avant une mise à jour OTA ; si vous devez désinstaller KernelSU, utilisez plutôt l\'option \"Désinstaller définitivement\". + Flash en cours + Flash réussi + Échec du flash + LKM sélectionné : %s + Enregistrer les journaux + Journaux enregistrés + + confirmer l\'installation du module %1$s? + module inconnu + + Confirmer la restauration + Cette opération va écraser les modules existants. Continuer ? + Confirmer + Annuler + + Sauvegarde réussie (tar.gz) + Échec de la sauvegarde : %1$s + modules de sauvegarde + Restaurer les modules + + Succès de la sauvegarde, redémarrer + Échec de la restauration : %1$s + Redémarrer + Erreur inconnue + + L\'exécution de la commande a échoué : %1$s + + Sauvegarde de la liste blanche réussie + La sauvegarde de la liste d\'autorisations a échoué : %1$s + Confirmer la restauration de la liste blanche + Cette opération écrasera la liste blanche actuelle. Continuer ? + Liste blanche restaurée avec succès + La restauration de la liste d\'autorisations a échoué : %1$s + Sauvegarder la liste blanche + Restaurer la liste blanche + Arrière-plan personnalisé de l\'application + Image as arrière-plan + Transparence de la barre de navigation + Version Android + Modèle du téléphone + Donner un super-utilisateur à %s n\'est pas autorisé + Désactiver la compatibilité su + Désactiver temporairement l\'accès des applications aux privilèges root via la commande su (les processus root existants ne seront pas affectés). + Êtes-vous sûr de vouloir installer les modules %1$d suivants ? \n\n%2$s + Autres configurations + SELinux + Activé + Désactivé + Me simple + Masque les cartes inutiles lorsqu\'il est activé + Masquer la version du noyau + Masquer la version du noyau + Masquer les autres infos + Masque des informations sur le nombre de super utilisateurs, de modules et de modules KPM sur la page d\'accueil + Masquer le statut SuSFS + Masquer les informations de la carte de lien sur la page d\'accueil + Masquer le statut du lien de la carte + Masquer les informations de la carte de lien sur la page d\'accueil + Thème + Suivre le système + Clair + Sombre + Crochet manuel + Couleur dynamique + Couleurs dynamiques en utilisant des thèmes système + Choisir une couleur de thème + Bleu + Vert + Violet + Orange + Rose + Gris + Jaune + Install Anykernel3 + Fichier noyau AnyKernel3 + Nécessite les privilèges root + Traitement terminé + Redémarrer immédiatement ? + Oui + Non + Échec du redémarrage + KPM + Aucun module de noyau installé pour le moment + Version + Auteur + Désinstaller + Désinstallé avec succès + Échec de la désinstallation : + Chargement du module kpm réussi + Le chargement du module kpm a échoué + Paramètres + Exécuter + Version de KPM + Fermer + Les fonctions suivantes du module du noyau ont été développées par KernelPatch et modifiées pour inclure les fonctions du module du noyau de SukiSU Ultra + SukiSU Ultra attend avec impatience + Succès + Echoué + SukiSU Ultra sera une branche relativement indépendante de KSU dans le futur, mais nous apprécions toujours le KernelSU officiel, MKSU etc. pour leurs contributions! + Non pris en charge + Pris en charge + Noyau non corrigé + Noyau non configuré + Paramètres personnalisés + KPM Installé + Charger + Intégrer + Veuillez sélectionner : %1\$s Mode d\'installation du module \n\nCharge : Chargez temporairement le module \nIntégré: Installez définitivement dans le système + Impossible de vérifier si le fichier du module existe + Couleur du thème + Type de fichier incorrect ! Veuillez sélectionner un fichier .kpm. + Désinstaller + Le KPM suivant sera désinstallé : %s + Utilisez deux doigts pour zoomer l\'image, et un doigt pour le faire glisser pour ajuster la position + Remise à disposition + + Flash terminé + + Préparation de… + Nettoyage des fichiers… + Copie des fichiers… + Extraction de l\'outil flash… + Mise à jour du script… + Flash du noyau… + Flash complété + + Sélectionnez l\'emplacement de Flash + Veuillez sélectionner l\'emplacement cible pour le démarrage du flash + Slot A + Slot B + LKM sélectionné : %1$s + Obtention de l\'emplacement original + Définition de l\'emplacement spécifié + Restaurer l\'emplacement par défaut + Emplacement actuel + + Copie échouée + Erreur inconnue + Échec du flash + + Réparation/installation LKM + Flash du noyau… + Version du noyau:%1$s + Utilisation de l\'outil de correctifs:%1$s + Configurer + Paramètres de l\'application + Outils + + Application introuvable + SELinux activé + SELinux désactivé + La modification du statut SELinux a échoué + Paramètres avancés + Choisir les boutons à afficher + Reviens + Fond d\'écran défini avec succès + Fond d\'écran personnalisé supprimé + Icône alternative + Changer l\'icône du lanceur en icône de KernelSU. + Icône changée + + Afficher la fonction KPM + Masque les informations et fonctions KPM dans la barre d\'accueil et en bas + + Sélectionnez le moteur WebUI à utiliser + Sélectionner automatiquement + Forcer l\'utilisation de WebUI X + Utilisation obligatoire de KSU WebUI + Injecter Eruda dans WebUI X + Injectez une console de débogage dans WebUI X pour faciliter le débogage. Nécessite que le débogage soit activé. + + DPI appliqué + Ajuster la densité d\'affichage de l\'écran pour l\'application actuelle uniquement + Petit + Moyenne + Grand + surtaille + Personnalisable + Application des paramètres DPI + Confirmer le changement de DPI + Êtes-vous sûr de vouloir changer le DPI de l\'application de %1$d à %2$d? + L\'application doit être redémarrée pour appliquer les nouveaux paramètres de DPI, n\'affecte pas la barre d\'état du système ou d\'autres applications + Le DPI a été réglé sur %1$d, effectif après le redémarrage de l\'application + + Langue de l\'application + Suivre le paramètre système + Ajustement de l\'obscurité de la carte + + code d\'erreur + Veuillez vérifier le journal + Module en cours d\'installation %1$d/%2$d + %d a échoué à installer un nouveau module + Le téléchargement du modèle a échoué + Clignotement du noyau + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + En haut + En Bas + Sélectionné + option + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-gl/strings.xml b/manager/app/src/main/res/values-gl/strings.xml new file mode 100644 index 0000000..89956f2 --- /dev/null +++ b/manager/app/src/main/res/values-gl/strings.xml @@ -0,0 +1,4 @@ + + + Inicio + \ No newline at end of file diff --git a/manager/app/src/main/res/values-hi/strings.xml b/manager/app/src/main/res/values-hi/strings.xml new file mode 100644 index 0000000..cde029c --- /dev/null +++ b/manager/app/src/main/res/values-hi/strings.xml @@ -0,0 +1,362 @@ + + + होम + इंस्टाल नहीं हुआ + इंस्टाल करने के लिए क्लिक करें + काम कर रहा है + वर्जन: %s + सपोर्ट नहीं करता है + KernelSU अभी केवल GKI कर्नल्स को सपोर्ट करता है + कर्नल + SuSFS Version + मैनेजर वर्जन + SELinux स्थिति + डिसेबल्ड (बंद) + एनफोर्सिंग + पर्मिसिव + अज्ञात + सुपरयूजर + %s मॉड्यूल चालू करने में विफल + %s मॉड्यूल बंद करने में विफल + कोई मॉड्यूल इंस्टाल नहीं हुआ + मॉड्यूल + Sort (Action first) + Sort (Enabled first) + अनइंस्टॉल करें + इंस्टाल करें + इंस्टाल करें + रीबूट करें + सेटिंग + सॉफ्ट रिबूट + रिकवरी में रिबूट करें + बुटलोडर में रिबूट करें + डाउनलोड में रिबूट करें + EDL मोड में रिबूट करें + हमारे बारे में + क्या आप सच में मॉड्यूल %s को अनइंस्टॉल करना चाहते हैं\? + %s अनइंस्टॉल सफल हुआ + %s अनइंस्टल करने में असफल + वर्जन + निर्माता + रिफ्रेश + सिस्टम एप्प दिखाए + सिस्टम एप्प छिपाए + लॉग भेजे + सेफ मोड + प्रभाव में होने के लिए रीबूट करें + मॉड्यूल बंद कर दिए गए हैं क्योंकि यह मैजिक के साथ टकरा रहे है! + KernelSU सीखें + https://kernelsu.org/guide/what-is-kernelsu.html + जानें कि KernelSU कैसे स्थापित करें और मॉड्यूल का उपयोग कैसे करें + हमें प्रोत्साहन दें + KernelSU मुफ़्त और ओपन सोर्स और हमेशा रहेगा। हालाँकि आप दान देकर हमें दिखा सकते हैं कि आप संरक्षण करते हैं। + Join our %2$s channel]]> + डिफॉल्ट + टेम्पलेट + कस्टम + प्रोफाइल का नाम + समूह + क्षमताएं + SELinux context + मॉड्यूल्स अनमाउंट करें + %s के लिए ऐप प्रोफ़ाइल अपडेट करने में विफल + The current KernelSU version %s is too low for the manager to work properly. Please upgrade to version %s or higher! + डिफ़ॉल्ट रूप से मॉड्यूल अनमाउन्ट करें + ऐप प्रोफाइल में \"अनमाउंट मॉड्यूल\" के लिए ग्लोबल डिफ़ॉल्ट वैल्यू। यदि चालू किया गया है, तो यह एप्लीकेशंस के लिऐ सिस्टम के सभी मॉड्यूल मोडिफिकेशन को हटा देगा जिनकी प्रोफ़ाइल सेट नहीं है। + इस विकल्प को चालू करने से KernelSU को इस एप्लिकेशन के लिए मॉड्यूल द्वारा किसी भी मोडिफाइड फ़ाइल को रिस्टोर करें। + डोमेन + नियम + अपडेट + %s मॉड्यूल डाउनलोड हो रहा है + %s की डाउनलोडिंग स्टार्ट करें + नया वर्जन: %s उपलब्ध है,अपग्रेड के लिए क्लिक करें + लॉन्च करें + जबर्दस्ती बंद करें + फिर से चालू करें + %s के लिए SELinux नियमों को अपटेड करने में विफल + क्या बदलाव हुए है + App Profile Template + Manage local and online template of App Profile + Create template + Edit template + ID + Invalid template ID + Name + Description + Save + Delete + View template + Read only + Template ID already exists! + Import/Export + Import from clipboard + Export to clipboard + Cannot find local template to export! + Imported successfully + Sync online templates + Failed to save template + Clipboard is empty! + Fetch changelog failed: %s + Check update + Automatically check for updates when opening the app + Failed to grant root! + Action + Close + Enable WebView debugging + Can be used to debug WebUI. Please enable only when needed. + Direct install (Recommended) + Select a image that needs to be patched + Install to inactive slot (After OTA) + Your device will be **FORCED** to boot to the current inactive slot after a reboot!\nOnly use this option after OTA is done.\nContinue? + Next + %1$s partition image is recommended + Select KMI + Uninstall + Uninstall temporarily + Uninstall permanently + Restore stock image + Temporarily uninstall KernelSU, restore to original state after next reboot. + Uninstalling KernelSU (Root and all modules) completely and permanently. + Restore the stock factory image (If a backup exists), usually used before OTA; if you need to uninstall KernelSU, please use \"Uninstall permanently\". + Flashing + Flash success + Flash failed + Selected LKM: %s + लॉग सहेजें + Logs saved + + confirm install module %1$s? + unknown module + + Confirm Module Restoration + This operation will overwrite all existing modules. Continue? + Confirm + Cancel + + Backup successful (tar.gz) + Backup failed: %1$s + backup modules + restore modules + + Modules restored successfully, restart required + Restore failed: %1$s + Restart Now + Unknown error + + Command execution failed: %1$s + + Allowlist backup successful + Allowlist backup failed: %1$s + Confirm Allowlist Restoration + This operation will overwrite the current allowlist. Continue? + Allowlist restored successfully + Allowlist restore failed: %1$s + Backup Allowlist + Restore Allowlist + Custom App Background + Select an image as background + Navigation bar transparency + Android version + Device model + Granting superuser to %s is not allowed + Disable su compatibility + Temporarily disable any applications from obtaining root privileges via the ⁠su command (existing root processes will not be affected). + Sure you want to install the following %1$d modules? \n\n%2$s + More settings + SELinux + Enabled + Disabled + Simplicity mode + Hides unnecessary cards when turned on + Hide kernel version + Hide kernel version + Hide other info + Hides information about the number of super users, modules and KPM modules on the home page + Hide SuSFS status + Hide SuSFS status information on the home page + Hide Link Card Status + Hide link card information on the home page + Theme + Follow system + Light + Dark + Manual Hook + Dynamic colours + Dynamic colours using system themes + Choose a theme colour + Blue + Green + Purple + Orange + Pink + Gray + Yellow + Install Anykernel3 + Flash AnyKernel3 kernel file + Requires root privileges + Scrubbing complete + Whether to reboot immediately? + Yes + No + Reboot Failed + KPM + No installed kernel modules at this time + Version + Author + Uninstall + Uninstalled successfully + Failed to uninstall + Load of kpm module successful + Load of kpm module failed + Parameters + Execute + KPM Version + Close + The following kernel module functions were developed by KernelPatch and modified to include the kernel module functions of SukiSU Ultra + SukiSU Ultra Look forward to + Success + Failed + SukiSU Ultra will be a relatively independent branch of KSU in the future, but we still appreciate the official KernelSU and MKSU etc. for their contributions! + Unsupported + Supported + Kernel not patched + Kernel not configured + Custom settings + KPM Install + Load + Embed + Please select: %1\$s Module Installation Mode \n\nLoad: Temporarily load the module \nEmbedded: Permanently install into the system + Unable to check if module file exists + Theme Color + Incorrect file type! Please select .kpm file. + Uninstall + The following KPM will be uninstalled: %s + Use two fingers to zoom the image, and one finger to drag it to adjust the position + Reprovision + + Flash Complete + + Preparing… + Cleaning files… + Copying files… + Extracting flash tool… + Patching flash script… + Flashing kernel… + Flash completed + + Select Flash Slot + Please select the target slot for flashing boot + Slot A + Slot B + Selected slot: %1$s + Getting the original slot + Setting the specified slot + Restore Default Slot + Current Slot:%1$s + + Copy failed + Unknown error + Flash failed + + LKM repair/installation + Flashing AnyKernel3 + Kernel version:%1$s + Using the patching tool:%1$s + Configure + Application Settings + Tools + + Application not found + SELinux Enabled + SELinux Disabled + SELinux Status change failed + Advanced Settings + Customize the toolbar + Comeback + Background set successfully + Removed custom backgrounds + Alternate icon + Change the launcher icon to KernelSU\'s icon. + Icon switched + + Display KPM Function + Display KPM information and Function in home and bottom bar (Need to reopen the app) + + Select the WebUI engine to use + Automatic Selection + Force the use of WebUI X + Mandatory use of KSU WebUI + Inject Eruda into WebUI X + Inject a debug console into WebUI X to make debugging easier. Requires web debugging to be on. + + Applied DPI + Adjust the screen display density for the current application only + Small + Medium + Big + oversize + customizable + Applying DPI settings + Confirm DPI change + Are you sure you want to change the application DPI from %1$d to %2$d? + Application needs to be restarted to apply the new DPI settings, does not affect the system status bar or other applications + DPI has been set to %1$d, effective after restarting the application + + App Language + Follow System + Card Darkness Adjustment + + error code + Please check the log + Module being installed %1$d/%2$d + %d Failed to install a new module + Module download failed + Kernel Flashing + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + Top + Bottom + Selected + option + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-hr/strings.xml b/manager/app/src/main/res/values-hr/strings.xml new file mode 100644 index 0000000..ab68841 --- /dev/null +++ b/manager/app/src/main/res/values-hr/strings.xml @@ -0,0 +1,362 @@ + + + Početna + Nije instalirano + Kliknite da instalirate + Radi + Verzija: %s + Nepodržano + KernelSU samo podržava GKI kernele sad + Kernel + SuSFS Version + Verzija Voditelja + SELinux stanje + Isključeno + U Provođenju + Permisivno + Nepoznato + Superkorisnik + Neuspješno uključivanje module: %s + Neuspješno isključivanje module: %s + Nema instaliranih modula + Modula + Sort (Action first) + Sort (Enabled first) + Deinstalirajte + Instalirajte + Instalirajte + Ponovno pokrenite + Postavke + Lagano Ponovno pokretanje + Ponovno pokrenite u Oporavu + Ponovno pokrenite u Pogonski Učitavalac + Ponovno pokrenite u Preuzimanje + Ponovo pokrenite u EDL + O + Jeste li sigurni da želite deinstalirati modulu %s\? + %s deinstalirana + Neuspješna deinstalacija: %s + Verzija + Autor + Osvježi + Prikažite sistemske aplikacije + Sakrijte sistemske aplikacije + Pošaljite Izvještaj + Sigurnosni mod + Ponovno pokrenite da bi proradilo + Module su isključene jer je u sukobu sa Magisk-om! + Naučite KernelSU + https://kernelsu.org/guide/what-is-kernelsu.html + Naučite kako da instalirate KernelSU i da koristite module + Podržite Nas + KernelSU je, i uvijek če biti, besplatan, i otvorenog izvora. Možete nam međutim pokazati da vas je briga s time da napravite donaciju. + Join our %2$s channel]]> + Zadano + Šablon + Prilagođeno + Naziv profila + Grupe + Sposobnosti + SELinux kontekst + Umount module + Ažuriranje Profila Aplikacije za %s nije uspjelo + The current KernelSU version %s is too low for the manager to work properly. Please upgrade to version %s or higher! + Umount module po zadanom + Globalna zadana vrijednost za \"Umount module\" u Profilima Aplikacije. Ako je omogućeno, uklonit će sve izmjene modula na sistemu za aplikacije koje nemaju postavljen Profil. + Uključivanjem ove opcije omogućit će KernelSU-u da vrati sve izmjenute datoteke od strane modula za ovu aplikaciju. + Domena + Pravila + Ažuriranje + Preuzimanje module: %s + Započnite sa preuzimanjem: %s + Nova verzija: %s je dostupna, kliknite da preuzmete + Pokrenite + Prisilno Zaustavite + Resetujte + Neuspješno ažuriranje SELinux pravila za: %s + Changelog + App Profile Template + Manage local and online template of App Profile + Create template + Edit template + ID + Invalid template ID + Name + Description + Save + Delete + View template + Read only + Template ID already exists! + Import/Export + Import from clipboard + Export to clipboard + Cannot find local template to export! + Imported successfully + Sync online templates + Failed to save template + Clipboard is empty! + Fetch changelog failed: %s + Check update + Automatically check for updates when opening the app + Failed to grant root! + Action + Close + Enable WebView debugging + Can be used to debug WebUI. Please enable only when needed. + Direct install (Recommended) + Select a image that needs to be patched + Install to inactive slot (After OTA) + Your device will be **FORCED** to boot to the current inactive slot after a reboot!\nOnly use this option after OTA is done.\nContinue? + Next + %1$s partition image is recommended + Select KMI + Uninstall + Uninstall temporarily + Uninstall permanently + Restore stock image + Temporarily uninstall KernelSU, restore to original state after next reboot. + Uninstalling KernelSU (Root and all modules) completely and permanently. + Restore the stock factory image (If a backup exists), usually used before OTA; if you need to uninstall KernelSU, please use \"Uninstall permanently\". + Flashing + Flash success + Flash failed + Selected LKM: %s + Spremi Zapise + Logs saved + + confirm install module %1$s? + unknown module + + Confirm Module Restoration + This operation will overwrite all existing modules. Continue? + Confirm + Cancel + + Backup successful (tar.gz) + Backup failed: %1$s + backup modules + restore modules + + Modules restored successfully, restart required + Restore failed: %1$s + Restart Now + Unknown error + + Command execution failed: %1$s + + Allowlist backup successful + Allowlist backup failed: %1$s + Confirm Allowlist Restoration + This operation will overwrite the current allowlist. Continue? + Allowlist restored successfully + Allowlist restore failed: %1$s + Backup Allowlist + Restore Allowlist + Custom App Background + Select an image as background + Navigation bar transparency + Android version + Device model + Granting superuser to %s is not allowed + Disable su compatibility + Temporarily disable any applications from obtaining root privileges via the ⁠su command (existing root processes will not be affected). + Sure you want to install the following %1$d modules? \n\n%2$s + More settings + SELinux + Enabled + Disabled + Simplicity mode + Hides unnecessary cards when turned on + Hide kernel version + Hide kernel version + Hide other info + Hides information about the number of super users, modules and KPM modules on the home page + Hide SuSFS status + Hide SuSFS status information on the home page + Hide Link Card Status + Hide link card information on the home page + Theme + Follow system + Light + Dark + Manual Hook + Dynamic colours + Dynamic colours using system themes + Choose a theme colour + Blue + Green + Purple + Orange + Pink + Gray + Yellow + Install Anykernel3 + Flash AnyKernel3 kernel file + Requires root privileges + Scrubbing complete + Whether to reboot immediately? + Yes + No + Reboot Failed + KPM + No installed kernel modules at this time + Version + Author + Uninstall + Uninstalled successfully + Failed to uninstall + Load of kpm module successful + Load of kpm module failed + Parameters + Execute + KPM Version + Close + The following kernel module functions were developed by KernelPatch and modified to include the kernel module functions of SukiSU Ultra + SukiSU Ultra Look forward to + Success + Failed + SukiSU Ultra will be a relatively independent branch of KSU in the future, but we still appreciate the official KernelSU and MKSU etc. for their contributions! + Unsupported + Supported + Kernel not patched + Kernel not configured + Custom settings + KPM Install + Load + Embed + Please select: %1\$s Module Installation Mode \n\nLoad: Temporarily load the module \nEmbedded: Permanently install into the system + Unable to check if module file exists + Theme Color + Incorrect file type! Please select .kpm file. + Uninstall + The following KPM will be uninstalled: %s + Use two fingers to zoom the image, and one finger to drag it to adjust the position + Reprovision + + Flash Complete + + Preparing… + Cleaning files… + Copying files… + Extracting flash tool… + Patching flash script… + Flashing kernel… + Flash completed + + Select Flash Slot + Please select the target slot for flashing boot + Slot A + Slot B + Selected slot: %1$s + Getting the original slot + Setting the specified slot + Restore Default Slot + Current Slot:%1$s + + Copy failed + Unknown error + Flash failed + + LKM repair/installation + Flashing AnyKernel3 + Kernel version:%1$s + Using the patching tool:%1$s + Configure + Application Settings + Tools + + Application not found + SELinux Enabled + SELinux Disabled + SELinux Status change failed + Advanced Settings + Customize the toolbar + Comeback + Background set successfully + Removed custom backgrounds + Alternate icon + Change the launcher icon to KernelSU\'s icon. + Icon switched + + Display KPM Function + Display KPM information and Function in home and bottom bar (Need to reopen the app) + + Select the WebUI engine to use + Automatic Selection + Force the use of WebUI X + Mandatory use of KSU WebUI + Inject Eruda into WebUI X + Inject a debug console into WebUI X to make debugging easier. Requires web debugging to be on. + + Applied DPI + Adjust the screen display density for the current application only + Small + Medium + Big + oversize + customizable + Applying DPI settings + Confirm DPI change + Are you sure you want to change the application DPI from %1$d to %2$d? + Application needs to be restarted to apply the new DPI settings, does not affect the system status bar or other applications + DPI has been set to %1$d, effective after restarting the application + + App Language + Follow System + Card Darkness Adjustment + + error code + Please check the log + Module being installed %1$d/%2$d + %d Failed to install a new module + Module download failed + Kernel Flashing + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + Top + Bottom + Selected + option + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-hu/strings.xml b/manager/app/src/main/res/values-hu/strings.xml new file mode 100644 index 0000000..ba3813a --- /dev/null +++ b/manager/app/src/main/res/values-hu/strings.xml @@ -0,0 +1,362 @@ + + + Kezdőlap + Nincs telepítve + Kattintson a telepítéshez + Működik + Verzió: %s + Nem támogatott + A KernelSU jelenleg csak GKI kerneleket támogat + Kernel + SuSFS Version + Alkalmazás verziója + SELinux állapot + Letiltva + Kényszerített + Engedélyezett + Ismeretlen + Superuser + Nem sikerült engedélyezni a következő modult: %s + Nem sikerült letiltani a következő modult: %s + Nincs telepített modul + Modulok + Sort (Action first) + Sort (Enabled first) + Eltávolítás + Telepítés + Telepítés + Újraindítás + Beállítások + Rendszerfelület újraindítása + Újraindítás recovery-módba + Újraindítás bootloader-módba + Újraindítás letöltő módba + Újraindítás EDL-be + Névjegy + Biztos benne hogy eltávolítja a következő modult: %s? + %s eltávolítva + Nem sikerült eltávolítani: %s + Verzió + Készítő + Frissítés + Rendszeralkalmazások megjelenítése + Rendszeralkalmazások elrejtése + Naplók küldése + Biztonságos mód + Indítsa újra a készüléket a változások érvényesítéséhez + A modulok nem érhetők el a Magiskkel való ütközés miatt! + Tudjon meg többet a KernelSU-ról + https://kernelsu.org/guide/what-is-kernelsu.html + Ismerje meg a KernelSU telepítését és a modulok használatát + Támogasson minket + A KernelSU ingyenes, nyílt forráskódú és mindig is az lesz. Ön azonban adományozással megmutathatja, hogy törődik a projekttel. + Join our %2$s channel]]> + Alapértelmezett + Sablon + Egyedi + Profil neve + Csoportok + Jogosultságok + SELinux kontextus + Modulok leválasztása + Nem sikerült frissíteni az App Profilt ehhez: %s + The current KernelSU version %s is too low for the manager to work properly. Please upgrade to version %s or higher! + Modulok leválasztása alapértelmezetten + A \"Modulok leválasztása\" globális alapértelmezett értéke az App Profile-ban. Ha engedélyezve van, eltávolít minden modulmódosítást a rendszerből azon alkalmazások esetében, amelyeknek nincs profilja beállítva. + Ha engedélyezi ezt az opciót, a KernelSU visszaállíthatja az alkalmazás moduljai által módosított fájlokat. + Tartomány + Szabályok + Frissítés + Modul letöltése: %s + Letöltés indítása: %s + Elérhető az új, %s verzió, kattintson a frissítéshez. + Indítás + Kényszerített leállítás + újraindítás + Nem sikerült frissíteni az SELinux szabályokat a következőhöz: %s + Változások + App Profile sablon + Az App Profile helyi és online sablonjának kezelése + Sablon készítése + Sablon szerkesztése + ID + Hibás sablon ID + Név + Leírás + Mentés + Törlés + Sablon megtekintése + Csak olvasható + A sablon ID már létezik! + Import/Export + Importálás a vágólapról + Exportálás a vágólapról + Nem található helyi sablon az exportáláshoz! + Sikeresen importálva + Online sablonok szinkronizálása + A sablon mentése sikertelen + A vágólap üres! + A változásnapló lekérése nem sikerült: %s + Frissítés ellenőrzése + Automatikusan keressen frissítéseket az alkalmazás megnyitásakor + A root jog megadása sikertelen! + Művelet + Close + WebView hibakeresés engedélyezése + A WebUI hibakeresésére használható, csak szükség esetén engedélyezze. + Közvetlen telepítés (Ajánlott) + Fájl kiválasztása + Telepítés inaktív helyre (OTA után) + Az eszköze **KÉNYSZERÍTETTEN** a jelenleg inaktív helyről fog indulni újraindítás után!\nCsak az OTA befejezése után használja.\nFolytatja? + Következő + %1$s partíció képfájl ajánlott + KMI kiválasztása + Eltávolítás + Ideiglenes eltávolítás + Végleges eltávolítás + Eredeti képfájl visszaállítása + A KernelSU ideiglenes eltávolítása, az eredeti állapot visszaállítása a következő újraindítás után. + A KernelSU eltávolítása (root és az összes modul) teljesen és véglegesen. + Állítsa vissza a gyári képfájlt (ha létezik biztonsági mentés). Általában OTA előtt használják. Ha a KernelSU-t szeretné eltávolítani, használja a végleges eltávolítás opciót. + Telepítés + Sikeres telepítés + Sikertelen telepítés + Kiválasztott LKM: %s + Naplók mentése + Mentett naplók + + confirm install module %1$s? + unknown module + + Confirm Module Restoration + This operation will overwrite all existing modules. Continue? + Confirm + Cancel + + Backup successful (tar.gz) + Backup failed: %1$s + backup modules + restore modules + + Modules restored successfully, restart required + Restore failed: %1$s + Restart Now + Unknown error + + Command execution failed: %1$s + + Allowlist backup successful + Allowlist backup failed: %1$s + Confirm Allowlist Restoration + This operation will overwrite the current allowlist. Continue? + Allowlist restored successfully + Allowlist restore failed: %1$s + Backup Allowlist + Restore Allowlist + Custom App Background + Select an image as background + Navigation bar transparency + Android version + Device model + Granting superuser to %s is not allowed + Disable su compatibility + Temporarily disable any applications from obtaining root privileges via the ⁠su command (existing root processes will not be affected). + Sure you want to install the following %1$d modules? \n\n%2$s + More settings + SELinux + Enabled + Disabled + Simplicity mode + Hides unnecessary cards when turned on + Hide kernel version + Hide kernel version + Hide other info + Hides information about the number of super users, modules and KPM modules on the home page + Hide SuSFS status + Hide SuSFS status information on the home page + Hide Link Card Status + Hide link card information on the home page + Theme + Follow system + Light + Dark + Manual Hook + Dynamic colours + Dynamic colours using system themes + Choose a theme colour + Blue + Green + Purple + Orange + Pink + Gray + Yellow + Install Anykernel3 + Flash AnyKernel3 kernel file + Requires root privileges + Scrubbing complete + Whether to reboot immediately? + Yes + No + Reboot Failed + KPM + No installed kernel modules at this time + Version + Author + Uninstall + Uninstalled successfully + Failed to uninstall + Load of kpm module successful + Load of kpm module failed + Parameters + Execute + KPM Version + Close + The following kernel module functions were developed by KernelPatch and modified to include the kernel module functions of SukiSU Ultra + SukiSU Ultra Look forward to + Success + Failed + SukiSU Ultra will be a relatively independent branch of KSU in the future, but we still appreciate the official KernelSU and MKSU etc. for their contributions! + Unsupported + Supported + Kernel not patched + Kernel not configured + Custom settings + KPM Install + Load + Embed + Please select: %1\$s Module Installation Mode \n\nLoad: Temporarily load the module \nEmbedded: Permanently install into the system + Unable to check if module file exists + Theme Color + Incorrect file type! Please select .kpm file. + Uninstall + The following KPM will be uninstalled: %s + Use two fingers to zoom the image, and one finger to drag it to adjust the position + Reprovision + + Flash Complete + + Preparing… + Cleaning files… + Copying files… + Extracting flash tool… + Patching flash script… + Flashing kernel… + Flash completed + + Select Flash Slot + Please select the target slot for flashing boot + Slot A + Slot B + Selected slot: %1$s + Getting the original slot + Setting the specified slot + Restore Default Slot + Current Slot:%1$s + + Copy failed + Unknown error + Flash failed + + LKM repair/installation + Flashing AnyKernel3 + Kernel version:%1$s + Using the patching tool:%1$s + Configure + Application Settings + Tools + + Application not found + SELinux Enabled + SELinux Disabled + SELinux Status change failed + Advanced Settings + Customize the toolbar + Comeback + Background set successfully + Removed custom backgrounds + Alternate icon + Change the launcher icon to KernelSU\'s icon. + Icon switched + + Display KPM Function + Display KPM information and Function in home and bottom bar (Need to reopen the app) + + Select the WebUI engine to use + Automatic Selection + Force the use of WebUI X + Mandatory use of KSU WebUI + Inject Eruda into WebUI X + Inject a debug console into WebUI X to make debugging easier. Requires web debugging to be on. + + Applied DPI + Adjust the screen display density for the current application only + Small + Medium + Big + oversize + customizable + Applying DPI settings + Confirm DPI change + Are you sure you want to change the application DPI from %1$d to %2$d? + Application needs to be restarted to apply the new DPI settings, does not affect the system status bar or other applications + DPI has been set to %1$d, effective after restarting the application + + App Language + Follow System + Card Darkness Adjustment + + error code + Please check the log + Module being installed %1$d/%2$d + %d Failed to install a new module + Module download failed + Kernel Flashing + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + Top + Bottom + Selected + option + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-idn/strings.xml b/manager/app/src/main/res/values-idn/strings.xml new file mode 100644 index 0000000..3dbe03e --- /dev/null +++ b/manager/app/src/main/res/values-idn/strings.xml @@ -0,0 +1,537 @@ + + + Beranda + Tidak Terpasang + Klik untuk Memasang + Berfungsi + Versi: %s + Tidak Didukung + Driver KernelSU tidak terdeteksi di kernel Anda. Mungkin Anda menggunakan kernel yang salah. + Versi Kernel + Versi SuSFS + Versi Manajer + Status SELinux + Dinonaktifkan + Ditegakkan + Permisi + Tidak Diketahui + Superuser + Gagal mengaktifkan modul: %s + Gagal menonaktifkan modul: %s + Tidak ada modul terpasang + Modul + Urutkan (Aksi Terlebih Dahulu) + Urutkan (Aktif Terlebih Dahulu) + Copot Pemasangan + Pasang + Pasang + Muat Ulang + Pengaturan + Muat Ulang Lunak + Muat Ulang ke Recovery + Muat Ulang ke Bootloader + Muat Ulang ke Mode Download + Muat Ulang ke Mode EDL + Tentang + Apakah Anda yakin ingin mencopot pemasangan modul %s? + %s telah dicopot + Gagal mencopot pemasangan: %s + Versi + Penulis + Segarkan + Tampilkan Aplikasi Sistem + Sembunyikan Aplikasi Sistem + Kirim Log + Mode Aman + Muat ulang untuk menerapkan + Modul tidak tersedia karena konflik dengan Magisk! + Pelajari tentang KernelSU + https://kernelsu.org/guide/what-is-kernelsu.html + Pelajari cara memasang KernelSU dan menggunakan modul + Dukung Kami + KernelSU bersifat gratis dan open source, sekarang dan selamanya. Namun, Anda dapat menunjukkan dukungan Anda dengan melakukan donasi. + Gabung ke saluran %2$s kami]]> + Profil Aplikasi + Bawaan + Templat + Khusus + Nama Profil + Grup + Kemampuan + Konteks SELinux + Lepas Kait Modul + Gagal memperbarui profil aplikasi untuk %s + Versi KernelSU saat ini %s terlalu rendah untuk menjalankan manajer dengan benar. Harap perbarui ke versi %s atau yang lebih tinggi! + Lepas kait modul secara bawaan + Nilai bawaan global untuk \"Lepas Kait Modul\" dalam profil aplikasi. Jika diaktifkan, ini akan menghapus semua perubahan sistem yang dibuat oleh modul untuk aplikasi tanpa profil yang ditetapkan. + Mengaktifkan opsi ini akan memungkinkan KernelSU untuk memulihkan file yang diubah oleh modul untuk aplikasi ini. + Domain + Aturan + Perbarui + Mengunduh modul: %s + Memulai pengunduhan: %s + Versi baru %s tersedia, klik untuk memperbarui. + Jalankan + Paksa Hentikan + Jalankan Ulang + Gagal memperbarui aturan SELinux untuk %s + Catatan Perubahan + Templat Profil Aplikasi + Kelola templat profil aplikasi lokal dan daring + Buat Templat + Edit Templat + ID + ID Templat Tidak Valid + Nama + Deskripsi + Simpan + Hapus + Lihat Templat + Hanya Baca + ID Templat sudah ada! + Impor/Ekspor + Impor dari Papan Klip + Ekspor ke Papan Klip + Tidak ditemukan templat lokal untuk diekspor! + Berhasil diimpor + Sinkronkan Templat Daring + Gagal menyimpan templat + Papan klip kosong! + Gagal memuat catatan perubahan: %s + Periksa Pembaruan + Secara otomatis memeriksa pembaruan saat membuka aplikasi + Gagal memberikan hak akses root! + Aksi + Tutup + Aktifkan Debug WebView + Dapat digunakan untuk mendebug WebUI. Harap aktifkan hanya jika diperlukan. + Pemasangan Langsung (Disarankan) + Pilih Gambar untuk Dipatch + Pasang ke Slot Tidak Aktif (Setelah OTA) + Perangkat Anda akan **DIPAKSA** untuk boot ke slot tidak aktif saat ini setelah reboot! +Gunakan opsi ini hanya setelah OTA selesai. +Lanjutkan? + Lanjut + Disarankan gambar partisi %1$s + Pilih KMI + Copot Pemasangan + Copot Pemasangan Sementara + Copot Pemasangan Permanen + Pulihkan Gambar Bawaan + Copot pemasangan KernelSU secara sementara, kembalikan ke keadaan awal setelah reboot berikutnya. + Copot pemasangan KernelSU secara lengkap dan permanen (Root dan semua modul). + Pulihkan gambar bawaan pabrik (jika cadangan tersedia), biasanya digunakan sebelum OTA; jika ingin mencopot KernelSU, gunakan \"Copot Pemasangan Permanen\". + Mem-flash + Flash Berhasil + Flash Gagal + LKM Terpilih: %s + Simpan Log + Log Disimpan + + Konfirmasi pemasangan modul %1$s? + modul tidak dikenal + + Konfirmasi Pemulihan Modul + Operasi ini akan menimpa semua modul yang ada. Lanjutkan? + Konfirmasi + Batal + + Pencadangan Berhasil (tar.gz) + Gagal membuat cadangan: %1$s + cadangan modul + pulihkan modul + + Modul berhasil dipulihkan, perlu reboot + Gagal memulihkan: %1$s + Muat Ulang Sekarang + Kesalahan Tidak Diketahui + + Gagal mengeksekusi perintah: %1$s + + Pencadangan daftar izin berhasil + Gagal membuat cadangan daftar izin: %1$s + Konfirmasi Pemulihan Daftar Izin + Operasi ini akan menimpa daftar izin saat ini. Lanjutkan? + Daftar izin berhasil dipulihkan + Gagal memulihkan daftar izin: %1$s + Cadangkan Daftar Izin + Pulihkan Daftar Izin + Latar Belakang Aplikasi Khusus + Pilih gambar sebagai latar belakang + Transparansi Panel Navigasi + Versi Android + Model Perangkat + Pemberian hak superuser untuk %s tidak diizinkan + Nonaktifkan Kompatibilitas su + Sementara mencegah aplikasi mana pun mendapatkan hak root melalui perintah su (proses root yang ada tidak akan terpengaruh). + Apakah Anda yakin ingin memasang %1$d modul berikut? +%2$s + Pengaturan Lainnya + SELinux + Diaktifkan + Dinonaktifkan + Mode Sederhana + Menyembunyikan kartu yang tidak perlu saat diaktifkan + Sembunyikan Versi Kernel + Menyembunyikan versi kernel + Sembunyikan Informasi Lainnya + Menyembunyikan titik merah yang menunjukkan jumlah superuser, modul, dan modul KPM di halaman navigasi bawah + Sembunyikan Status SuSFS + Menyembunyikan informasi status SuSFS di halaman beranda + Sembunyikan Kartu Tautan + Menyembunyikan informasi di kartu tautan di halaman beranda + Sembunyikan Baris Tag Modul + Menyembunyikan label nama folder dan ukuran di kartu modul + Tema + Ikuti Sistem + Terang + Gelap + Hook Manual + Warna Dinamis + Warna dinamis menggunakan tema sistem + Pilih Warna Tema + Biru + Hijau + Ungu + Oranye + Merah Muda + Abu-abu + Kuning + Pasang Anykernel3 + Flash file kernel AnyKernel3 + Diperlukan hak akses root + Pembersihan Selesai + Muat ulang sekarang? + Ya + Tidak + Gagal memuat ulang + KPM + Saat ini tidak ada modul kernel yang terpasang + Versi + Penulis + Copot Pemasangan + Berhasil dicopot + Gagal mencopot + Berhasil memuat modul kpm + Gagal memuat modul kpm + Parameter + Jalankan + Versi KPM + Tutup + Fitur modul kernel berikut dikembangkan oleh KernelPatch dan dimodifikasi untuk menyertakan fitur modul kernel SukiSU Ultra + SukiSU Ultra menantikan + Berhasil + Gagal + Ke depannya, SukiSU Ultra akan menjadi cabang KSU yang relatif independen, tetapi kami tetap berterima kasih kepada KernelSU resmi, MKSU, dan lainnya atas kontribusi mereka! + Tidak Didukung + Didukung + Kernel Belum Di-patch + Kernel Belum Diaktifkan + Pengaturan Khusus + Pemasangan KPM + Muat + Tanamkan + Silakan pilih: %1$s mode pemasangan modul +Muat: Secara sementara memuat modul +Tanamkan: Secara permanen memasang ke sistem + Gagal memeriksa keberadaan file modul + Warna Tema + Jenis file tidak valid! Harap pilih file .kpm. + Copot Pemasangan + Akan mencopot KPM berikut: %s + Gunakan dua jari untuk memperbesar gambar dan satu jari untuk menyeret, untuk menyesuaikan posisi + Provisi Ulang + + Flash Selesai + + Menyiapkan… + Membersihkan file… + Menyalin file… + Mengekstrak alat flash… + Menambal skrip flash… + Mem-flash kernel… + Flash Selesai + + Pilih Slot untuk Flash + Silakan pilih slot target untuk flashing boot + Slot A + Slot B + Slot Terpilih: %1$s + Mendapatkan slot asli + Mengatur slot target + Mengembalikan slot bawaan + Slot sistem bawaan saat ini: %1$s + + Gagal menyalin + Kesalahan Tidak Diketahui + Flash Gagal + + Pemulihan/Pemasangan LKM + Flash AnyKernel3 + Versi Kernel: %1$s + Alat patch yang digunakan: %1$s + Konfigurasi + Pengaturan Aplikasi + Alat + + Aplikasi tidak ditemukan + SELinux diaktifkan + SELinux dinonaktifkan + Gagal mengubah status SELinux + Pengaturan Lanjutan + Sesuaikan Bilah Alat + Kembali + Latar belakang berhasil diatur + Latar belakang khusus dihapus + Ikon Alternatif + Ubah ikon peluncur menjadi ikon KernelSU. + Ikon diubah + + Sembunyikan Fungsi KPM + Menyembunyikan informasi dan fungsi KPM di layar utama dan panel bawah + + Pilih Mesin WebUI untuk Digunakan + Pilih Otomatis + Paksa Gunakan WebUI X + Paksa Gunakan KSU WebUI + Sisipkan Eruda ke WebUI X + Sisipkan konsol debug ke WebUI X untuk memudahkan debugging. Memerlukan debugging web diaktifkan. + + DPI yang Diterapkan + Sesuaikan kepadatan layar hanya untuk aplikasi saat ini + Kecil + Sedang + Besar + Sangat Besar + Khusus + Menerapkan Pengaturan DPI + Konfirmasi Perubahan DPI + Apakah Anda yakin ingin mengubah DPI aplikasi dari %1$d menjadi %2$d? + Aplikasi perlu dijalankan ulang agar pengaturan DPI baru diterapkan; ini tidak akan mempengaruhi bilah status sistem atau aplikasi lainnya + DPI diatur ke %1$d, akan diterapkan setelah aplikasi dijalankan ulang + + Bahasa Aplikasi + Ikuti Sistem + Pengaturan Pencahayaan Kartu + + kode kesalahan + Silakan periksa log + Memasang modul %1$d/%2$d + Gagal memasang %d modul baru + Gagal mengunduh modul + Mem-flash Kernel + + Semua + Root + Khusus + Bawaan + + Nama Naik + Nama Turun + Waktu Pemasangan (Baru) + Waktu Pemasangan (Lama) + Ukuran Turun + Ukuran Naik + Frekuensi Penggunaan + + Tidak ada aplikasi dalam kategori ini + + Tolak Hak Akses + Berikan Hak Akses + Lepas Kaitan Modul + Nonaktifkan Lepas Kaitan Modul + Perluas Menu + Ciutkan Menu + Ke Atas + Ke Bawah + Terpilih + Pilih + + Opsi Menu + Urutkan Berdasarkan + Pilih Jenis Aplikasi + + Konfigurasi SuSFS + Deskripsi Konfigurasi + Fitur ini memungkinkan Anda untuk mengonfigurasi spoofing nilai uname dan waktu build SuSFS. Masukkan nilai yang diinginkan dan klik \"Terapkan\" agar berlaku. + Nilai Uname + Silakan masukkan nilai uname khusus + Spoof Waktu Build + Silakan masukkan nilai spoof waktu build + Nilai Saat Ini: %s + Waktu Build Saat Ini: %s + Atur Ulang ke Bawaan + Terapkan + + Konfirmasi Atur Ulang + + Gagal menemukan file ksu_susfs + Gagal mengeksekusi perintah SuSFS + Kesalahan eksekusi perintah SuSFS: %s + Nilai uname dan waktu build SuSFS berhasil diatur: %s, %s + + Konfigurasi SuSFS + + Mulai Otomatis + Secara otomatis menerapkan semua konfigurasi non-bawaan saat reboot + Perlu menambahkan konfigurasi untuk mengaktifkan + Gagal mengaktifkan mulai otomatis + Gagal menonaktifkan mulai otomatis + Kesalahan konfigurasi mulai otomatis: %s + Tidak ada konfigurasi yang tersedia untuk mulai otomatis + + Pengaturan Dasar + Jalur SUS + Kaitan SUS + Coba Lepas Kait + Pengaturan Jalur + Status Fitur Diaktifkan + + Tambah Jalur SUS + Tambah Kaitan SUS + Tambah Coba Lepas Kait + Jalur SUS berhasil ditambahkan + Kesalahan: Jalur tidak ditemukan + Jalur + Jalur Kaitan + misalnya: /system/addon.d + Tidak ada jalur SUS yang dikonfigurasi + Tidak ada kaitan SUS yang dikonfigurasi + Tidak ada coba lepas kait yang dikonfigurasi + + Mode Lepas Kait + Lepas Kait Normal (0) + Lepas Kait Terpisah (1) + Normal + Terpisah + Mode: %1$s (%2$s) + Jalur coba lepas kait berhasil ditambahkan: %s + Berhasil menyimpan jalur coba lepas kait: %s + + + Atur Ulang Jalur SUS + Ini akan menghapus semua konfigurasi jalur SUS. Apakah Anda yakin ingin melanjutkan? + Atur Ulang Kaitan SUS + Ini akan menghapus semua konfigurasi kaitan SUS. Apakah Anda yakin ingin melanjutkan? + Atur Ulang Coba Lepas Kait + Ini akan menghapus semua konfigurasi coba lepas kait. Apakah Anda yakin ingin melanjutkan? + Atur Ulang Pengaturan Jalur + + Jalur Data Android + Jalur Kartu SD + Atur Jalur Data Android + Atur Jalur Kartu SD + + Menampilkan status saat ini dari fitur SuSFS yang diaktifkan + Informasi status fitur tidak ditemukan + Diaktifkan + Dinonaktifkan + + Dukungan Jalur SUS + Dukungan Kaitan SUS + Dukungan Coba Lepas Kait + Dukungan Spoof Uname + Spoof Cmdline/Bootconfig + Dukungan Open Redirect + Dukungan Logging + Kaitan Bawaan Otomatis + Kaitan Bind Otomatis + Coba Lepas Kaitan Bind Otomatis + Sembunyikan Simbol KSU SUSFS + Dukungan SUS Kstat + Fitur Toggle Mode SUS SU + + Fitur SuSFS yang Dapat Dikonfigurasi + Aktifkan Log SuSFS + Aktifkan atau nonaktifkan logging untuk SuSFS + Pengaturan Logging SuSFS + Mengaktifkan Logging SuSFS + Menonaktifkan Logging SuSFS + Perbarui JSON + URL Perbarui JSON disalin ke papan klip + + Tampilkan Informasi Modul Lebih Banyak + Tampilkan informasi modul tambahan seperti URL perbarui JSON + Lokasi Eksekusi + Lokasi Eksekusi Saat Ini: %s + Layanan + Post-FS-Data + Jalankan setelah layanan sistem dimulai + Jalankan setelah sistem file dikaitkan tetapi sebelum sistem sepenuhnya dinyalakan. Dapat menyebabkan bootloop + Informasi Slot + Lihat informasi slot boot saat ini dan salin nilainya + Slot Aktif Saat Ini: %s + Uname: %s + Waktu Build: %s + Saat Ini + Gunakan Uname + Gunakan Waktu Build + Gagal mendapatkan informasi slot + + Modul mulai otomatis SuSFS diaktifkan, jalur modul: %s + Modul mulai otomatis SuSFS dinonaktifkan + + Konfigurasi Kstat + Konfigurasi Kstat statis ditambahkan: %1$s + Konfigurasi Kstat dihapus: %1$s + Jalur Kstat ditambahkan: %1$s + Jalur Kstat dihapus: %1$s + Kstat diperbarui: %1$s + Klon Lengkap Kstat diperbarui: %1$s + Tambahkan Konfigurasi Kstat Statis + Jalur File/Direktori + Petunjuk: Anda dapat menggunakan \"default\" untuk menggunakan nilai asli + Tambah Jalur Kstat + Tambah + Atur Ulang Konfigurasi Kstat + Apakah Anda yakin ingin membersihkan semua konfigurasi Kstat? Tindakan ini tidak dapat dibatalkan. + Deskripsi Konfigurasi Kstat + • add_sus_kstat_statically: Informasi file/direktori statis + • add_sus_kstat: Tambahkan jalur sebelum bind mount, menjaga informasi asli + • update_sus_kstat: Perbarui ino target, membiarkan ukuran dan blok tidak berubah + • update_sus_kstat_full_clone: Perbarui hanya ino, membiarkan nilai asli lainnya + Konfigurasi Kstat Statis + Manajemen Jalur Kstat + Belum ada konfigurasi Kstat, klik tombol di atas untuk menambahkan + + Kontrol Penyembunyian Kaitan SUS + Kontrol perilaku penyembunyian kaitan SUS untuk proses + Sembunyikan Kaitan SUS untuk Semua Proses + Jika diaktifkan, kaitan SUS akan disembunyikan dari semua proses, termasuk proses KSU + Jika dinonaktifkan, kaitan SUS akan disembunyikan hanya dari proses non-KSU; proses KSU akan dapat melihat kaitan + Mengaktifkan penyembunyian kaitan SUS untuk semua proses + Menonaktifkan penyembunyian kaitan SUS untuk semua proses + Disarankan untuk mengatur ke nonaktif setelah layar terbuka atau pada tahap service.sh atau boot-completed.sh, karena ini seharusnya memperbaiki masalah dengan beberapa aplikasi root yang bergantung pada kaitan yang dibuat oleh proses KSU + Pengaturan Saat Ini: %s + Sembunyikan untuk Semua Proses + Sembunyikan Hanya untuk Proses Non-KSU + Mode Versi Kernel Sederhana + Aktifkan atau nonaktifkan tampilan versi kernel SukiSU sederhana + Jalur Data Android diatur ke: %s + Jalur Kartu SD diatur ke: %s + Pengaturan jalur mungkin tidak sepenuhnya berhasil, tetapi jalur SUS akan tetap ditambahkan + + Cadangan + Buat cadangan semua konfigurasi SuSFS. File cadangan akan menyertakan semua pengaturan, jalur, dan konfigurasi. + Buat Cadangan + Berhasil membuat cadangan: %s + Gagal membuat cadangan: %s + File cadangan tidak ditemukan + Format file cadangan tidak valid + Versi cadangan tidak cocok, tetapi akan dicoba untuk dipulihkan + Pulihkan + Pulihkan konfigurasi SuSFS dari file cadangan. Ini akan menimpa semua pengaturan saat ini. + Pilih File Cadangan + Konfigurasi berhasil dipulihkan dari cadangan yang dibuat %s pada perangkat: %s + Gagal memulihkan: %s + Konfirmasi Pemulihan + Ini akan menimpa semua konfigurasi SuSFS saat ini. Apakah Anda yakin ingin melanjutkan? + Pulihkan + Tanggal Cadangan: %s + Perangkat: %s + Versi: %s + Status Terkunci + Timpa properti status bootloader dalam layanan late_start + Bersihkan Sisa-sisa + Bersihkan file dan direktori sisa dari berbagai modul dan alat (dapat menyebabkan penghapusan yang tidak disengaja, kehilangan data, dan gagal boot, gunakan dengan hati-hati) + diff --git a/manager/app/src/main/res/values-in/strings.xml b/manager/app/src/main/res/values-in/strings.xml new file mode 100644 index 0000000..64027ac --- /dev/null +++ b/manager/app/src/main/res/values-in/strings.xml @@ -0,0 +1,697 @@ + + + Beranda + Tidak terinstal + Klik untuk menginstal + Berfungsi + Versi: %s + Tidak didukung + KernelSU saat ini hanya mendukung kernel GKI + Kernel + Versi SuSFS + Versi manager + Status SELinux + Nonaktif + Enforcing + Permisif + Tidak diketahui + SuperUser + Gagal mengaktifkan modul: %s + Gagal menonaktifkan modul: %s + Tidak ada modul yang terpasang + Modul + Urut (Tindakan pertama) + Urut (Diaktifkan terlebih dahulu) + Hapus + Instal + Instal + Reboot + Pengaturan + Soft Reboot + Reboot ke Recovery + Reboot ke Bootloader + Reboot ke Download + Reboot ke EDL + Tentang + Yakin menghapus modul %s? + %s berhasil dihapus + Gagal menghapus: %s + Versi + Oleh + Muat ulang + Tampilkan aplikasi sistem + Sembunyikan aplikasi sistem + Kirim Log + Mode aman + Reboot agar berfungsi + Konflik dengan Magisk, fungsi modul ditiadakan! + Pelajari KernelSU + https://kernelsu.org/id_ID/guide/what-is-kernelsu.html + Pelajari cara instal KernelSU dan menggunakan modul + Dukung Kami + KernelSU akan selalu menjadi aplikasi gratis dan terbuka. Anda dapat memberikan donasi sebagai bentuk dukungan. + Gabung dengan kami di saluran %2$s]]> + Bawaan + Templat + Khusus + Nama profil + Kelompok + Kemampuan + Konteks SELinux + Umount Modul + Gagal membarui Profil pada %s + Versi KernelSU saat ini %s terlalu rendah untuk menjalankan manager dengan baik. Harap tingkatkan ke versi %s atau yang lebih tinggi! + Melepas Modul secara bawaan + Menggunakan \"Umount Modul\" secara universal pada Profil Aplikasi. Jika diaktifkan, akan menghapus semua modifikasi sistem untuk aplikasi yang tidak memiliki set profil. + Aktifkan opsi ini agar KernelSU dapat memulihkan kembali berkas termodifikasi oleh modul pada aplikasi ini. + Domain + Aturan + Membarui + Mengunduh modul: %s + Mulai mengunduh: %s + Tersedia versi terbaru %s, Klik untuk membarui. + Jalankan + Paksa berhenti + Mulai ulang + Gagal membarui aturan SELinux pada: %s + Catatan Perubahan + Templat Profil Aplikasi + Atur templat Profil yang lokal dan daring + Buat templat + Edit templat + ID + ID template tidak valid + Nama + Deskripsi + Simpan + Hapus + Lihat templat + readonly + ID templat sudah ada! + Impor/Ekspor + Impor dari papan klip + Ekspor ke papan klip + Tidak ditemukan templat lokal untuk diekspor! + Berhasil diimpor + Sinkronkan templat daring + Gagal menyimpan templat + Papan klip kosong! + Gagal mengambil Changelog: %s + Cek terbaru + Cek terbaru setiap membuka aplikasi + Gagal memberikan akses root! + Tindakan + Tutup + Pengawakutuan WebView + Dapat digunakan untuk men-debug WebUI. Harap aktifkan hanya bila diperlukan. + Instal langsung (rekomendasi) + Pilih berkas + Instal ke slot nonaktif (setelah OTA) + Gawai akan **DIPAKSA** untuk but ke slot nonaktif! +\nHANYA gunakan setelah proses OTA selesai. +\nLanjutkan? + Selanjutnya + Gunakan berkas LKM lokal + Hanya berkas .ko yang didukung + %1$s image partisi terekomendasi + Pilih KMI + Hapus + Hapus sementara + Hapus permanen + Pulihkan image bawaan + Sementara menghapus KernelSU, memulihkan ke kondisi asal setelah reboot berikutnya. + Hapus permanen KernelSU (root dan modul). + Pulihkan image bawaan ROM (jika cadangan tersedia), umumnya dilakukan sebelum OTA; jika ingin menghapus KernelSU, gunakan fungsi \"Hapus permanen\". + Pasang + Pemasangan Berhasil + Pemasangan Gagal + LKM dipilih: %s + Simpan Log + Log disimpan + + konfirmasi pemasangan modul %1$s? + module tidak dikenal + + Konfirmasi pemulihan module + Operasi ini akan menimpa semua modul yang ada. Lanjutkan? + Konfirmasi + Batal + + Pencadangan berhasil (tar.gz) + Pencadangan gagal: %1$s + cadangkan modul + pulihkan modul + + Modul berhasil dipulihkan, restart diperlukan + Pemulihan gagal: %1$s + Mulai Ulang Sekarang + Kesalahan tidak diketahui + + Eksekusi perintah gagal: %1$s + + Cadangan daftar izin berhasil + Gagal mencadangkan daftar izin: %1$s + Konfirmasi Pemulihan Daftar Izin + Operasi ini akan menimpa daftar izin saat ini. Lanjutkan? + Daftar izin berhasil dipulihkan + Gagal memulihkan daftar izin: %1$s + Cadangkan Daftar Izin + Pulihkan Daftar Izin + Latar belakang kustom + Pilih gambar untuk latar belakang + NavBar transparant + Versi Android + Model Perangkat + Memberikan hak superuser kepada %s tidak diizinkan + Nonaktifkan kompatibilitas SU + Nonaktifkan sementara kemampuan aplikasi untuk mendapatkan hak akses root melalui perintah ⁠su (proses root yang sedang berjalan tidak akan terpengaruh) + Nonaktifkan pelepasan (unmount) kernel + Nonaktifkan perilaku unmount pada level kernel yang digunakan oleh KernelSU. + Aktifkan keamanan yang ditingkatkan + Aktifkan kebijakan keamanan yang lebih ketat. + Bawaan + Aktifkan sementara + Aktifkan secara permanen + Apakah Anda yakin ingin menginstal %1$d modul berikut?\n\n%2$s + Setelan lainnya + Selinux + Aktifkan + Nonaktifkan + Mode simple + Sembunyikan papan kartu di beranda + Sembunyikan versi kernel + Sembunyikan versi kernel jika namanya tidak yakin + Sembunyikan info lain + Sembunyikan notifikasi titik merah (jumlah Super User, modul, dan modul KPM) di bilah navigasi + Sembunyikan status SuSFs + Sembunyikan status susfs di halaman awal beranda + Sembunyikan status zygisk + Sembunyikan informasi implementasi Zygisk di halaman utama + Sembunyikan kartu tautan + Sembunyikan papan kartu URL di halaman awal beranda + Sembunyikan baris label modul + Sembunyikan label nama folder dan ukuran di kartu modul + Tema + Mengikuti sistem + Terang + Hitam + Hook manual + Warna dinamik + Warna dinamik, menggunakan sistem tema + Pilih warna tema + Biru + Hijau + Ungu + Oren + Ping + Abu + Kuning + Memasang Anykernel3 + Memasang file kernel AnyKernel3 + Butuh izin root + Pembersihan selesai + Apakah ingin restart sekarang? + Iya + Tidak + Mulai ulang gagal + KPM + Tidak ada modul kernel yang terpasang saat ini + Versi + Pembuat + Uninstal + Berhasil di Uninstal + Gagal Uninstal + Memuat module KPM berhasil + Memuat module KPM gagal! + Parameter + Eksekusi + Versi KPM + Tutup + Fungsi-fungsi modul kernel berikut dikembangkan oleh KernelPatch dan dimodifikasi untuk menyertakan fungsi modul kernel dari SukiSU Ultra + Antusias Untuk SukiSU Ultra + Sukses + Gagal + SukiSU Ultra akan menjadi cabang KSU yang relatif independen di masa mendatang, tetapi kami tetap menghargai KernelSU dan MKSU resmi dan sebagainya atas kontribusi mereka! + Tidak Mendukung + Mendukung + Kernel belum ditambal + Kernel belum dikonfigurasi + Pengaturan kostum + Instalasi KPM + Muat + Sematkan + Silakan pilih: %1\$s Mode Instalasi Modul \n\nMuat: Memuat sementara modul \nSematkan: Menginstal secara permanen ke dalam sistem + Gagal memeriksa keberadaan file modul + Warna Tema + Format file tidak sesuai. Silakan pilih file dengan format .kpm. + Menghapus instalan + KPM berikut akan diuninstall: %s + Gunakan dua jari untuk memperbesar gambar, dan satu jari untuk menggeser mengatur posisi + Reprovisi + + Flash Selesai + + Mempersiapkan… + Membersihkan Berkas... + Menyalin file... + Mengekstrak alat flash… + Memperbaiki skrip flash… + Mem-flash kernel… + Flash selesai + + Pilih Slot Flash + Silakan pilih slot target untuk flash boot + Slot A + Slot B + Slot yang dipilih: %1$s + Mendapatkan slot asli + Mengatur slot yang ditentukan + Pulihkan Slot Default + Slot default sistem saat ini:%1$s + + Menyalin gagal + Kesalahan yang tidak diketahui + Flash gagal + + Perbaikan/pemasangan LKM + Mem-flash AnyKernel3 + Versi kernel: %1$s + Menggunakan alat perbaikan:%1$s + Konfigurasi + Pengaturan Aplikasi + Alat-Alat + + Aplikasi tidak ditemukan + SELinux Dinyalakan + SELinux Dimatikan + Perubahan Status SELinux Gagal + Pengaturan Lanjutan + Kustomisasi toolbar + Kembali + Set latar belakang berhasil + Latar belakang khusus yang dihapus + Ubah ikon + Ubah ikon peluncur aplikasi ke ikon KernelSU + Ikon dirubah + + Tampilkan fungsi KPM + Tampilkan fungsi informasi KPM dan menu KPM di bilah navigasi + + Pilih jenis webUI untuk digunakan + Otomatis memilih + Paksa menggunakan WebUI X + Penggunaan wajib KSU WebUI + Suntik Eruda ke WebUI X + Suntikkan konsol debug ke dalam WebUI X untuk mempermudah proses debugging. Memerlukan pengaktifan web debugging. + + Ubah DPI + Pengaturan DPI hanya untuk aplikasi ini saja + Kecil + Sedang + Besar + Jumbo + Kustomisasi + Terapkan setelan DPI + Konfirmasi perubahan DPI + Apa kamu yakin ingin merubah DPI aplikasi dari %1$d ke %2$d? + Aplikasi membutuhkan restar untuk menerapkan opsi DPI ini, perubahan ini tidak mengganggu DPI sistem + DPI telah di rubah ke %1$d, efektif setelah aplikasi di restar + + Bahasa Aplikasi + Mengikuti sistem + Penyesuaian Kegelapan Kartu + + Kode error + Silahkan periksa log + Modul yang dipasang %1$d/%2$d + %d Gagal memasang modul baru + Download modul gagal + Memasang Kernel + + Semua + Akar + Kostum + Bawaan + + Urutan naik nama + Urutan turun nama + Waktu pemasangan (baru) + Waktu pemasangan (lama) + Urutan turun ukuran + Urutan naik ukuran + Frekuensi penggunaan + + Tidak ada aplikasi dalam kategori ini + + Penolakan otorisasi + Otorisasi + Melepas Pemasangan Modul + Nonaktifkan pelepasan pemasangan modul + Luaskan menu + Tutup menu + Atas + Bawah + Dipilih + pilihan + + Opsi Menu + Urut berdasarkan + Pilihan Jenis Aplikasi + + Konfigurasi SuSFS + Deskripsi Konfigurasi + Fitur ini memungkinkan Anda menyesuaikan nilai uname SuSFS dan spoofing waktu build. Masukkan nilai yang ingin Anda atur lalu klik Terapkan untuk memproses perubahan. + Nilai Uname + Silakan masukkan nilai uname khusus + Spoofing Waktu membangun + Masukkan nilai spoofing waktu membangun + Nilai saat ini: %s + Waktu membangun saat ini: %s + Setel Ulang ke Default + Terapkan + + Konfirmasi Setel Ulang + + File ksu_susfs tidak ditemukan + Eksekusi perintah SUSFS gagal + Gagal menjalankan perintah SUSFS: %s + Berhasil atur uname dan waktu build SUSFS: %s, %s + + Konfigurasi SUSFS + + Mulai Otomatis + Terapkan semua konfigurasi non-default secara otomatis saat mulai ulang + Perlu tambahan konfigurasi untuk mengaktifkan + Gagal mengaktifkan mulai otomatis + Gagal menonaktifkan mulai otomatis + Kesalahan konfigurasi mulai otomatis: %s + Tidak ada konfigurasi yang tersedia untuk mulai otomatis + + Pengaturan Dasar + Jalur SUS + Pemasangan SUS + Coba Umount + Pengaturan Path + Status Fitur yang Diaktifkan + + Tambahkan Jalur SUS + Tambahkan Pemasangan SUS + Tambahkan Coba Umount + Jalur SUS berhasil ditambahkan + Kesalahan jalur tidak ditemukan + Jalur + Jalur Pemasangan + contoh: /system/addon.d + Tidak ada jalur SUS yang dikonfigurasi + Tidak ada pemasangan SUS yang dikonfigurasi + Tidak ada coba umount yang dikonfigurasi + + Mode Umount + Umount Normal (0) + Umount Lepas (1) + Normal + Lepas + Mode: %1$s (%2$s) + Jalur coba umount berhasil ditambahkan: %s + Jalur coba umount berhasil disimpan: %s + + + Setel Ulang Jalur SUS + Ini akan menghapus semua konfigurasi jalur SUS. Apakah Anda yakin ingin melanjutkan? + Setel Ulang Pemasangan SUS + Ini akan menghapus semua konfigurasi mount SUS. Apakah Anda yakin ingin melanjutkan? + Setel Ulang Coba Umount + Ini akan menghapus semua konfigurasi umount. Apakah Anda yakin ingin melanjutkan? + Setel Ulang Pengaturan Jalur + + Jalur Data Android + Jalur SD Card + Atur Jalur Data Android + Atur Jalur SD Card + + Tampilkan status fitur SuSFS yang saat ini diaktifkan + Tidak ditemukan informasi status fitur + Diaktifkan + Dinonaktifkan + + Dukungan Jalur SUS + Dukungan Pemasangan SUS + Dukungan Coba Umount + Dukungan Spoof uname + Spoof Cmdline/Bootconfig + Dukungan Pengalihan Terbuka + Dukungan Logging + Pemasangan Default Otomatis + Pemasangan Bind Otomatis + Coba Umount Bind Mount Otomatis + Sembunyikan Simbol KSU SUSFS + Dukungan SUS Kstat + Fungsi pengalihan mode SUS SU + + Fitur SuSFS yang Dapat Dikonfigurasi + Aktifkan Log SuSFS + Aktifkan atau nonaktifkan logging untuk SuSFS + Konfigurasi Logging SuSFS + Mengaktifkan Logging SuSFS + Menonaktifkan logging SuSFS + Perbarui JSON + URL Pembaruan JSON disalin ke papan klip + + Tampilkan info modul lainnya + Pajang info modul tambahan seperti URL pembaruan JSON + Lokasi Eksekusi + Lokasi eksekusi saat ini: %s + Layanan + Post-FS-Data + Eksekusi setelah layanan sistem dimulai + Eksekusi setelah sistem file dipasang tetapi sebelum sistem sepenuhnya boot, Dapat menyebabkan boot loop + Informasi Slot + Lihat informasi slot boot saat ini dan salin nilai + Slot Aktif Saat Ini: %s + Uname: %s + Waktu Build: %s + Saat Ini + Gunakan Uname + Gunakan Waktu Build + Tidak dapat mengambil informasi slot + + Modul autostart SuSFS diaktifkan, jalur modul: %s + Modul autostart SuSFS dinonaktifkan + + Konfigurasi Kstat + Konfigurasi statis Kstat ditambahkan: %1$s + Konfigurasi Kstat dihapus: %1$s + Jalur Kstat ditambahkan: %1$s + Jalur Kstat dihapus: %1$s + Kstat diperbarui: %1$s + Kstat full clone diperbarui: %1$s + Tambahkan Konfigurasi Statis Kstat + Jalur File/Direktori + Petunjuk: Anda dapat menggunakan ”default“ untuk menggunakan nilai asli + Tambahkan Jalur Kstat + Tambahkan + Setel Ulang Konfigurasi Kstat + Apakah Anda yakin ingin menghapus semua konfigurasi Kstat? Tindakan ini tidak dapat dibatalkan. + Deskripsi Konfigurasi Kstat + • add_sus_kstat_statically: Info stat statis file/direktori + • add_sus_kstat: Tambahkan jalur sebelum bind mount, menyimpan info stat asli + • update_sus_kstat: Perbarui target ino, pertahankan ukuran dan blok tidak berubah + • update_sus_kstat_full_clone: Perbarui ino saja, pertahankan nilai asli lainnya + Konfigurasi Statis Kstat + Manajemen Jalur Kstat + Belum ada konfigurasi Kstat, klik tombol di atas untuk menambahkan + + Kontrol Penyembunyian Pemasangan SUS + Kontrol perilaku penyembunyian pemasangan SUS untuk proses + Sembunyikan pemasangan SUS untuk semua proses + Saat diaktifkan, pemasangan SUS akan disembunyikan dari semua proses, termasuk proses KSU + Saat dinonaktifkan, pemasangan SUS hanya akan disembunyikan dari proses non-KSU, proses KSU dapat melihat pemasangan + Mengaktifkan penyembunyian pemasangan SUS untuk semua proses + Menonaktifkan penyembunyian pemasangan SUS untuk semua proses + Disarankan untuk menonaktifkan setelah layar tidak terkunci, atau selama tahap service.sh atau boot-completed.sh, karena ini seharusnya memperbaiki masalah pada beberapa aplikasi root yang bergantung pada pemasangan yang dipasang oleh proses KSU + Pengaturan saat ini: %s + Sembunyikan untuk semua proses + Sembunyikan hanya untuk proses non-KSU + Mode Ringkas Versi Kernel + Aktifkan atau nonaktifkan mode bersih yang ditampilkan oleh versi kernel SukiSU + Jalur Data Android telah diatur ke: %s + Jalur SD card telah diatur ke: %s + Penyiapan jalur mungkin tidak sepenuhnya berhasil, tetapi jalur SUS akan terus ditambahkan + + Backup + Buat backup dari semua konfigurasi SuSFS. File backup akan mencakup semua pengaturan, jalur, dan konfigurasi. + Buat Backup + Backup berhasil dibuat: %s + Pembuatan backup gagal: %s + File backup tidak ditemukan + Format file backup tidak valid + Versi backup tidak cocok, tetapi akan mencoba memulihkan + Pulihkan + Pulihkan konfigurasi SuSFS dari file backup. Ini akan menimpa semua pengaturan saat ini. + Pilih File Backup + Konfigurasi berhasil dipulihkan dari backup yang dibuat pada %s dari perangkat: %s + Pemulihan gagal: %s + Konfirmasi Pemulihan + Ini akan menimpa semua konfigurasi SuSFS saat ini. Apakah Anda yakin ingin melanjutkan? + Pulihkan + Tanggal Backup: %s + Perangkat: %s + Versi: %s + Status kunci + Timpa atribut status penguncian bootloader dalam mode layanan late_start + Bersihkan Residu + Bersihkan file dan direktori sisa dari berbagai modul dan alat (mungkin terhapus secara tidak sengaja, mengakibatkan kehilangan dan gagal memulai, gunakan dengan hati-hati) + Edit Jalur SUS + Edit Pemasangan SUS + Edit Coba Umount + Edit Konfigurasi Statis Kstat + Edit Jalur Kstat + Simpan + Edit + Hapus + Perbarui + Pembaruan konfigurasi Kstat + Pembaruan jalur Kstat + Pembaruan full clone Susfs + Lepas Layanan Isolasi Zygote + Aktifkan opsi ini untuk melepaskan titik pemasangan layanan isolasi Zygote saat sistem mulai + Lepas layanan isolasi Zygote diaktifkan + Lepas layanan isolasi Zygote dinonaktifkan + Jalur Aplikasi + Jalur lainnya + Lainnya + Aplikasi + Tambahkan Jalur Aplikasi + Versi pustaka SuSFS tidak cocok, kernel: %1$s vs manajer: %2$s. Disarankan untuk memperbarui kernel atau manajer + Peringatan + Cari Aplikasi + %1$d aplikasi dipilih + %1$d aplikasi sudah ditambahkan + Semua aplikasi telah ditambahkan + Konfigurasi Tanda Tangan Dinamis + Diaktifkan (Ukuran: %s) + Dinonaktifkan + Aktifkan Tanda Tangan Dinamis + Ukuran Tanda Tangan + Hash Tanda Tangan + Hash harus 64 karakter heksadesimal + Konfigurasi tanda tangan dinamis berhasil diatur + Gagal mengatur konfigurasi tanda tangan dinamis + Konfigurasi tanda tangan tidak valid + Tanda tangan dinamis dinonaktifkan + Gagal membersihkan tanda tangan dinamis + Dinamis + Tanda Tangan %1$d + Tidak diketahui + Manajer Aktif + Tidak ada manajer aktif + SukiSU + Implementasi Zygisk + + Jalur Loop SUS + Tambahkan Jalur Loop SUS + Edit Jalur Loop SUS + Jalur loop SUS berhasil ditambahkan: %1$s + Jalur loop SUS dihapus: %1$s + Jalur loop SUS diperbarui: %1$s -> %2$s + Tidak ada jalur loop SUS yang dikonfigurasi + Setel Ulang Jalur Loop + Apakah Anda yakin ingin menghapus semua jalur loop SUS? Tindakan ini tidak dapat dibatalkan. + Jalur Loop + /data/contoh/jalur + Catatan: Hanya jalur TIDAK di dalam /storage/ dan /sdcard/ yang dapat ditambahkan melalui jalur loop. + Kesalahan: Jalur loop tidak dapat berada di dalam direktori /storage/ atau /sdcard/ + Jalur Loop + Tambahkan Jalur Loop + + Konfigurasi Jalur Loop + Jalur loop ditandai ulang sebagai SUS_PATH pada setiap startup aplikasi pengguna non-root atau layanan terisolasi. Ini membantu mengatasi masalah di mana jalur yang ditambahkan mungkin memiliki status inode direset atau inode dibuat ulang di kernel. + Palsukan log AVC + Palsukan log AVC telah diaktifkan + Palsukan log AVC telah dinonaktifkan + Dinonaktifkan: Nonaktifkan pemalsuan sus tcontext dari \'su\' yang ditampilkan di avc log di kernel\n +Diaktifkan: Aktifkan pemalsuan sus tcontext dari \'su\' dengan \'kernel\' yang ditampilkan di avc log in kernel + Catatan Penting:\n +- Secara default pada kernel nilai ini disetel ke \'0\'\n +- Mengaktifkan ini terkadang membuat pengembang lebih sulit mengidentifikasi penyebab saat melakukan debugging terkait izin atau masalah SELinux, sehingga disarankan agar pengguna menonaktifkannya saat sedang melakukan debugging + + Tervalidasi + Tanda tangan modul tervalidasi + Verifikasi Tanda Tangan + Verifikasi tanda tangan secara paksa saat modul dipasang. (Hanya tersedia untuk arsitektur ARM) + Penerbit tidak dikenal + Modul yang tidak ditandatangani mungkin tidak lengkap. Untuk melindungi perangkat Anda, pemasangan modul ini diblokir. + Modul yang tidak ditandatangani mungkin tidak lengkap. Apakah Anda ingin mengizinkan modul berikut dari penerbit tidak dikenal untuk dipasang di perangkat ini? + Jenis hook + + Patch KPM + Untuk menambahkan fitur KPM tambahan + Patch KPM + Terapkan patch KPM ke image kernel sebelum melakukan flashing + Batalkan Patch KPM + Batalkan patch KPM yang telah diterapkan sebelumnya + Patch KPM aktif + Pembatalan patch KPM diaktifkan + Mode Patch KPM + Mode Pembatalan Patch KPM + + Sedang menyiapkan Alat KPM + Menerapkan patch KPM + Membatalkan patch KPM + Menemukan berkas Image: %s + KPM berhasil diterapkan + Patch KPM berhasil dibatalkan + File berhasil direpack + + Gagal mengekstrak berkas zip + Berkas Image tidak ditemukan + Patch KPM gagal + Pembatalan patch KPM gagal + Operasi patch KPM gagal: %s + + Ikuti kernel + Gunakan kernel apa adanya tanpa perubahan dari KPM + + Daftar aplikasi pemindaian pada mode pengguna + Mengaktifkan opsi ini akan menggunakan pemindaian mode pengguna untuk daftar aplikasi, sehingga meningkatkan kestabilan. (Jika Anda mengalami masalah seperti hang saat kernel memindai daftar aplikasi, Anda dapat mencoba mengaktifkan opsi ini.) + Pemindaian Aplikasi Multi-Pengguna + Ketika diaktifkan, fitur ini akan memindai aplikasi untuk semua pengguna, termasuk profil kerja + Gagal mengatur, silakan periksa perizinan + Bersihkan Lingkungan Runtime + Bersihkan berkas runtime dan hentikan layanan pemindai + Apakah Anda yakin ingin membersihkan lingkungan runtime? Tindakan ini akan menghentikan layanan pemindai dan menghapus berkas yang terkait. + Lingkungan runtime berhasil dibersihkan + Gagal membersihkan lingkungan runtime + + Konfirmasi Instalasi + Konfirmasi Instalasi (Berkas %d) + Instal + Modul + Kernel + Tidak diketahui + Kernel tidak diketahui + Berkas tidak diketahui + Versi + Pembuat + Deskripsi + Perangkat yang didukung + + Peta SUS + Jalur Pustaka + /data/adb/modules/my_module/zygisk/arm64-v8a.so + Tambahkan Peta SUS + Sunting Peta SUS + Peta SUS berhasil ditambahkan: %1$s + Peta SUS telah dihapus: %1$s + Peta SUS telah diperbarui: %1$s -> %2$s + Tidak ada peta SUS yang dikonfigurasi + Atur ulang Peta SUS + Tindakan ini akan menghapus semua peta SUS yang telah dikonfigurasi. Tindakan ini tidak dapat dibatalkan. + Penyembunyian Peta Memori + Sembunyikan berkas nyata yang di-mmapped dari berbagai peta di /proc/self/ + + Cari + Bersihkan Log + Apakah Anda yakin ingin mengosongkan berkas log yang dipilih? Tindakan ini tidak dapat dibatalkan. + + diff --git a/manager/app/src/main/res/values-it/strings.xml b/manager/app/src/main/res/values-it/strings.xml new file mode 100644 index 0000000..a33f66c --- /dev/null +++ b/manager/app/src/main/res/values-it/strings.xml @@ -0,0 +1,364 @@ + + + Home + Non installato + Clicca per installare + In esecuzione + Versione: %s + Non supportato + KernelSU ora supporta solo i kernel GKI + Kernel + SuSFS Version + Versione del manager + Stato di SELinux + Disabilitato + Enforcing + Permissive + Sconosciuto + Accesso root + Impossibile abilitare il modulo: %s + Impossibile disabilitare il modulo: %s + Nessun modulo installato + Modulo + Sort (Action first) + Sort (Enabled first) + Disinstalla + Installa + Installa + Riavvia + Impostazioni + Riavvio rapido + Riavvia in modalità Recovery + Riavvia in modalità Bootloader + Riavvia in modalità Download + Riavvia in modalità EDL + Informazioni + Sei sicuro di voler disinstallare il modulo %s? + %s disinstallato + Impossibile disinstallare: %s + Versione + Autore + Ricarica + Mostra app di sistema + Nascondi app di sistema + Invia log + Modalità provvisoria + Riavvia per applicare la modifica + I moduli sono disabilitati perché in conflitto con Magisk! + Scopri KernelSU + https://kernelsu.org/guide/what-is-kernelsu.html + Scopri come installare KernelSU e utilizzare i moduli + Supportaci + KernelSU è, e sempre sarà, gratuito e open source. Puoi comunque mostrarci il tuo apprezzamento facendo una donazione. + Join our %2$s channel]]> + Predefinito + Modello + Personalizzato + Nome profilo + Gruppi + Capacità + Contesto SELinux + Scollega moduli + Aggiornamento App Profile per %s fallito + The current KernelSU version %s is too low for the manager to work properly. Please upgrade to version %s or higher! + Scollega moduli da default + Il valore predefinito per \"Scollega moduli\" in App Profile. Se attivato, rimuoverà tutte le modifiche al sistema da parte dei moduli per le applicazioni che non hanno un profilo impostato. + Attivando questa opzione permetterai a KernelSU di ripristinare ogni file modificato dai moduli per questa app. + Dominio + Regole + Aggiorna + Sto scaricando il modulo: %s + Inizia a scaricare:%s + Nuova versione: %s disponibile, tocca per aggiornare + Apri + Arresto forzato + Riavvia + Aggiornamento regole SELinux per %s fallito + Registro aggiornamenti + Modelli App Profile + Gestisci i modelli locali e remoti di App Profile + Crea modello + Modifica modello + identificatore + Identificativo modello non valido + Nome + Descrizione + Salva + Elimina + Visualizza modello + Sola lettura + L\'identificatore del modello è già in uso! + Importa/Esporta + Importa dagli appunti + Esporta negli appunti + Impossibile trovare un modello locale da esportare! + Importato con successo + Sincronizza i modelli remoti + Impossibile salvare il modello + Gli appunti sono vuoti! + Impossibile reperire il changelog: %s + Controlla aggiornamenti + Controlla automaticamente la disponibilità di aggiornamenti all\'apertura dell\'applicazione + Impossibile ottenere l\'accesso root! + Action + Close + Abilita il debug di WebView + Può essere usato per svolgere il debug di WebUI, è consigliato attivarlo solo quando necessario. + Installazione diretta (Raccomandata) + Scegli un file + Installa nello slot inattivo (dopo OTA) + Il tuo dispositivo sarà **FORZATO** ad avviarsi nello slot inattivo dopo il riavvio! +\nUsa questa opzione solo quando l\'applicazione dell\'aggiornamento OTA è terminata. +\nProcedere? + Avanti + È consigliato usare immagine della partizione %1$s + Scegli il KMI + Disinstalla + Disinstalla temporaneamente + Disinstalla permanentemente + Ripristina immagine originale del produttore + Disinstalla temporaneamente KernelSU, ripristina lo stato originale dopo il prossimo riavvio. + Disinstalla KernelSU (root e tutti i moduli) completamente e permanentemente. + Ripristina l\'immagine di fabbrica del produttore (se il backup è presente), solitamente usato prima di applicare l\'OTA; se devi disinstallare KernelSU, utilizza invece \"Disinstalla permanentemente\". + Installazione + Installazione completata + Installazione fallita + LKM selezionato: %s + Salva Registri + Logs saved + + confirm install module %1$s? + unknown module + + Confirm Module Restoration + This operation will overwrite all existing modules. Continue? + Confirm + Cancel + + Backup successful (tar.gz) + Backup failed: %1$s + backup modules + restore modules + + Modules restored successfully, restart required + Restore failed: %1$s + Restart Now + Unknown error + + Command execution failed: %1$s + + Allowlist backup successful + Allowlist backup failed: %1$s + Confirm Allowlist Restoration + This operation will overwrite the current allowlist. Continue? + Allowlist restored successfully + Allowlist restore failed: %1$s + Backup Allowlist + Restore Allowlist + Custom App Background + Select an image as background + Navigation bar transparency + Android version + Device model + Granting superuser to %s is not allowed + Disable su compatibility + Temporarily disable any applications from obtaining root privileges via the ⁠su command (existing root processes will not be affected). + Sure you want to install the following %1$d modules? \n\n%2$s + More settings + SELinux + Enabled + Disabled + Simplicity mode + Hides unnecessary cards when turned on + Hide kernel version + Hide kernel version + Hide other info + Hides information about the number of super users, modules and KPM modules on the home page + Hide SuSFS status + Hide SuSFS status information on the home page + Hide Link Card Status + Hide link card information on the home page + Theme + Follow system + Light + Dark + Manual Hook + Dynamic colours + Dynamic colours using system themes + Choose a theme colour + Blue + Green + Purple + Orange + Pink + Gray + Yellow + Install Anykernel3 + Flash AnyKernel3 kernel file + Requires root privileges + Scrubbing complete + Whether to reboot immediately? + Yes + No + Reboot Failed + KPM + No installed kernel modules at this time + Version + Author + Uninstall + Uninstalled successfully + Failed to uninstall + Load of kpm module successful + Load of kpm module failed + Parameters + Execute + KPM Version + Close + The following kernel module functions were developed by KernelPatch and modified to include the kernel module functions of SukiSU Ultra + SukiSU Ultra Look forward to + Success + Failed + SukiSU Ultra will be a relatively independent branch of KSU in the future, but we still appreciate the official KernelSU and MKSU etc. for their contributions! + Unsupported + Supported + Kernel not patched + Kernel not configured + Custom settings + KPM Install + Load + Embed + Please select: %1\$s Module Installation Mode \n\nLoad: Temporarily load the module \nEmbedded: Permanently install into the system + Unable to check if module file exists + Theme Color + Incorrect file type! Please select .kpm file. + Uninstall + The following KPM will be uninstalled: %s + Use two fingers to zoom the image, and one finger to drag it to adjust the position + Reprovision + + Flash Complete + + Preparing… + Cleaning files… + Copying files… + Extracting flash tool… + Patching flash script… + Flashing kernel… + Flash completed + + Select Flash Slot + Please select the target slot for flashing boot + Slot A + Slot B + Selected slot: %1$s + Getting the original slot + Setting the specified slot + Restore Default Slot + Current Slot:%1$s + + Copy failed + Unknown error + Flash failed + + LKM repair/installation + Flashing AnyKernel3 + Kernel version:%1$s + Using the patching tool:%1$s + Configure + Application Settings + Tools + + Application not found + SELinux Enabled + SELinux Disabled + SELinux Status change failed + Advanced Settings + Customize the toolbar + Comeback + Background set successfully + Removed custom backgrounds + Alternate icon + Change the launcher icon to KernelSU\'s icon. + Icon switched + + Display KPM Function + Display KPM information and Function in home and bottom bar (Need to reopen the app) + + Select the WebUI engine to use + Automatic Selection + Force the use of WebUI X + Mandatory use of KSU WebUI + Inject Eruda into WebUI X + Inject a debug console into WebUI X to make debugging easier. Requires web debugging to be on. + + Applied DPI + Adjust the screen display density for the current application only + Small + Medium + Big + oversize + customizable + Applying DPI settings + Confirm DPI change + Are you sure you want to change the application DPI from %1$d to %2$d? + Application needs to be restarted to apply the new DPI settings, does not affect the system status bar or other applications + DPI has been set to %1$d, effective after restarting the application + + App Language + Follow System + Card Darkness Adjustment + + error code + Please check the log + Module being installed %1$d/%2$d + %d Failed to install a new module + Module download failed + Kernel Flashing + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + Top + Bottom + Selected + option + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-iw/strings.xml b/manager/app/src/main/res/values-iw/strings.xml new file mode 100644 index 0000000..7860f80 --- /dev/null +++ b/manager/app/src/main/res/values-iw/strings.xml @@ -0,0 +1,74 @@ + + + הפעל מחדש כדי להכניס לתוקף + למד כיצד להתקין את KernelSU ולהשתמש במודולים + לא ידוע + הצג אפליקציות מערכת + %s הוסר + הסרת טעינת מודולים + שלח לוג + מושבת + תמכו בנו + מודולים מושבתים מכיוון שהם מתנגשים עם זה של Magisk! + יומן שינויים + התרים + הפעלה מחדש למצב הורדה + טעינת מודולים כברירת מחדל + הפעלת אפשרות זו תאפשר ל-KernelSU לשחזר קבצים שהשתנו על ידי המודולים עבור יישום זה. + הפעלת המודל נכשלה: %s + עצירה בכח + הפעלה מחדש למצב EDL + איתחול + יכולת + מפעיל מודל: %s + ערך ברירת המחדל הגלובלי עבור \"טעינת מודולים\" בפרופילי אפליקציה. אם מופעל, זה יסיר את כל שינויי המודול למערכת עבור יישומים שאין להם ערכת פרופיל. + אכיפה + הקשר SELinux + ברירת מחדל + להשיק + מצב בטוח + הפעלה מחדש לריקברי + רך Reboot + שם פרופיל + KernelSU הוא, ותמיד יהיה, חינמי וקוד פתוח. עם זאת, תוכל להראות לנו שאכפת לך על ידי תרומה. + הסרה + התקנה + לחץ להתקנה + כללים + קבוצה + מודולים + יוצר + אודות + גרסה: %s + הפעלה מחדש + KernelSU תומך רק בליבת GKI כעת + סטטוס SELinux + הסתר אפליקציות מערכת + גרסה + אינו נתמך + תחום + בית + מותאם אישית + תבנית + רענון + מוריד מודל: %s + עדכון + למד אודות KernelSU + האם אתה בטוח שברצונך להסיר את התקנת המודל %s\? + הסרת התקנת %s נכשלה: + משתמש על + הגדרות + עובד + השבתת מודל %s נכשלה: + אין מודלים מותקנים + להתקין + Kernel + לא מותקן + נכשל עדכון פרופיל האפליקציה עבור %s + https://kernelsu.org/guide/what-is-kernelsu.html + נכשל עדכון כללי SELinux עבור: %s + הפעלה מחדש לבוטלאודר + גרסת מנהל + גרסה חדשה עבור: %s זמינה, לחץ כדי לשדרג + שמור יומנים + diff --git a/manager/app/src/main/res/values-ja/strings.xml b/manager/app/src/main/res/values-ja/strings.xml new file mode 100644 index 0000000..fdbfa06 --- /dev/null +++ b/manager/app/src/main/res/values-ja/strings.xml @@ -0,0 +1,615 @@ + + + ホーム + 未インストール + タップでインストール + 動作中 + バージョン: %s + 非対応 + カーネルの KernelSU ドライバが未検出です。カーネルが間違っていませんか? + カーネル バージョン + SuSFS バージョン + マネージャー バージョン + SELinux のステータス + 無効 + Enforcing + Permissive + 不明 + スーパーユーザー + %s モジュールを ON にできませんでした + %s モジュールを OFF にできませんでした + モジュールがインストールされていません + モジュール + 並べ替え (アクションを優先) + 並べ替え (最初に有効) + アンインストール + インストール + インストール + 再起動 + 設定 + ソフトリブート + リカバリーで再起動 + ブートローダーで再起動 + ダウンロードモードで再起動 + EDL で再起動 + アプリについて + %s モジュールをアンインストールしますか? + %s をアンインストールしました + %s をアンインストールできませんでした + バージョン + 作者 + 更新 + システムアプリを表示 + システムアプリを非表示 + ログを送信する + セーフモード + 再起動すると有効化されます + モジュールが Magisk との競合により利用できません! + KernelSU について学ぶ + https://kernelsu.org/ja_JP/guide/what-is-kernelsu.html + KernelSU のインストール方法やモジュールの使い方を学習できます。 + 支援する + KernelSU は今後も無料でオープンソースです。ですが、寄付をして頂けると開発者への貢献になります。 + %2$s チャンネルにご参加ください

アニメキャラのスタンプ付き画像の著作権は%3$sにあり、画像の Brand Intellectual Property は%4$sによって所有され。これらのファイルを使用する前に、%5$sを遵守することに加えて、アートコンテンツを使用するために前の 2 人の作者から許可を得る必要があります。]]>
+ デフォルト + テンプレート + カスタム + プロファイル名 + グループ + ケイパビリティ + SELinux コンテキスト + モジュールのアンマウント + %s のアプリのプロファイルの更新をできませでした + 現在の KernelSU のバージョン「%s」は低すぎるため、マネージャーは正常に動作しません。バージョン「%s」以上に更新してください! + デフォルトでモジュールのマウントを解除する + アプリプロファイルの「モジュールのアンマウント」の共通となるデフォルト値です。 有効にすると、プロファイルセットを持たないアプリのシステムに対するすべてのモジュールの変更が削除されます。 + このオプションを有効にすると、KernelSU はこのアプリのモジュールによって変更されたファイルを復元できるようになります。 + ドメイン + ルール + 更新 + モジュールをダウンロード中: %s + ダウンロードを開始: %s + 最新のバージョン「%s」が利用可能です。タップしてダウンロード。 + 起動 + 強制停止 + 再起動 + SELinux ルールの更新に失敗しました %s + 変更履歴 + アプリプロファイルのテンプレート + アプリプロファイルのローカルおよびオンラインテンプレートを管理します。 + テンプレートの作成 + テンプレートの編集 + ID + 無効なテンプレート ID + 名前 + 説明 + 保存 + 消去 + テンプレートを表示 + 読み取り専用 + テンプレート ID はすでに存在します! + インポートとエクスポート + クリップボードからインポート + クリップボードからエクスポート + エクスポートするローカル テンプレートが見つかりません! + インポートが成功しました + オンラインテンプレートの同期 + テンプレートの保存に失敗しました + クリップボードが空です! + 変更ログの取得に失敗しました: %s + 更新を確認する + アプリの起動時に更新を自動で確認します。 + root の付与に失敗しました! + アクション + 閉じる + WebView デバッグを有効化する + WebUI のデバッグに使用できます。必要な場合でのみ有効化してください。 + 直接インストール (推奨) + パッチを行うイメージを選択 + 非アクティブなスロットにインストール (OTA 後) + 再起動後、デバイスは**強制的に**、現在の非アクティブスロットから起動します。 +\nこのオプションは、OTA が完了した後にのみ使用してください。 +\n続行しますか? + 次へ + %1$s のパーティションイメージを推奨します。 + KMI を選択してください + アンインストール + 一時的にアンインストールする + 完全にアンインストールする + ストックイメージを復元 + KernelSU を一時的にアンインストールし、次回の再起動後に元の状態に戻します。 + KernelSU (root およびすべてのモジュール) を完全かつ恒久的にアンインストールします。 + バックアップが存在する場合、工場出荷時のイメージを復元できます (OTA の前に使用してください)。KernelSU をアンインストールする必要がある場合は、「完全にアンインストールする」を使用してください。 + フラッシュ + フラッシュが成功しました + フラッシュに失敗しました + 選択された LKM: %s + ログを保存 + 保存されたログ + + %1$s モジュールをインストールしますか? + 不明なモジュール + + モジュールの復元を確認 + この操作によりモジュールが上書きされます。続行しますか? + 確認 + キャンセル + + バックアップが完了しました (tar.gz) + バックアップに失敗: %1$s + モジュールをバックアップ + モジュールを復元 + + モジュールは正常に復元されました、再起動が必要です + 復元に失敗: %1$s + 今すぐ再起動 + 不明なエラー + + コマンドの実行に失敗しました: %1$s + + 許可リストのバックアップが成功しました + 許可リストのバックアップに失敗: %1$s + 許可リストの復元を確認 + この操作により許可リストが上書きされます。続行しますか? + 許可リストの復元が成功しました + 許可リストの復元に失敗: %1$s + 許可リストをバックアップ + 許可リストを復元 + アプリの背景を変更 + 背景にする画像を選択してください + ナビゲーションバーの透過 + Android バージョン + デバイスモデル + 「%s」にスーパーユーザー権限を付与することはできません + su の互換性を無効化する + su コマンドを使用してアプリが root 権限を取得する動作を一時的に無効化します (既存の root プロセスは影響を受けません)。 + %1$d 個のモジュールをインストールしてもよろしいですか?\n\n%2$s + その他の設定 + SELinux + 有効 + 無効 + シンプルモード + ON にすると不要なカードを非表示にします。 + カーネル バージョンを非表示 + カーネル バージョンを非表示にします。 + その他の情報を非表示 + ナビゲーションバーページでスーパーユーザー、モジュール、KPM モジュールの数のドットを非表示にします。 + SuSFS ステータスを非表示 + ホームページ上の SuSFS ステータス情報を非表示にします。 + Zygisk のステータスを非表示 + ホームページ上の Zygisk 実装情報を非表示にします。 + リンクカードのステータスを非表示 + ホームページ上のリンクカード情報を非表示にします。 + モジュールラベルの行を非表示 + モジュールカード内のフォルダ名とサイズのラベルを非表示にします。 + テーマ + システムに従う + ライト + ダーク + 手動でフック + ダイナミックカラー + システムテーマのダイナミックカラーを使用します。 + テーマカラーを選択 + ブルー + グリーン + パープル + オレンジ + ピンク + グレー + イエロー + AnyKernel3 をインストール + AnyKernel3 カーネルファイルをフラッシュします + root 権限が必要です + スクラブが完了しました + すぐに再起動しますか? + はい + いいえ + 再起動に失敗しました + KPM + カーネルモジュールは現在インストールされていません + バージョン + 作者 + アンインストール + アンインストールに失敗しました + アンインストールに失敗しました + KPM モジュールの読み込みに成功しました + KPM モジュールの読み込みに失敗しました + パラメータ + 実行 + KPM バージョン + 閉じる + 以下のカーネルモジュール関数は KernelPatch によって開発され、SukiSU Ultra のカーネルモジュール関数を含むように変更されました + SukiSU Ultra の今後にご期待ください + 成功 + 失敗 + SukiSU Ultra は将来的に KSU から比較的に独立したブランチになりますが、公式の KernelSU や MKSU などの貢献に感謝しています! + 非対応 + 対応 + カーネルはパッチされていません + カーネルは未設定です + カスタム設定 + KPM をインストール + 読み込む + 埋め込む + 選択してください: %1\$s モジュールのインストールモード \n\n読み込む: モジュールを一時的に読み込みます\n埋め込む: システムで恒久的にインストールします + モジュールファイルが存在するか確認できません + テーマカラー + ファイルの種類が間違っています!.kpm ファイルを選択してください。 + アンインストール + 次の KPM がアンインストールされます: %s + 2 本の指で画像を拡大、1 本の指でドラッグで位置を調整します。 + 再プロビジョニング + + フラッシュが完了しました + + 準備中… + ファイルを削除中… + ファイルをコピー中… + フラッシュツールを展開中… + フラッシュスクリプトをパッチ中… + カーネルをフラッシュ中… + フラッシュが完了しました + + フラッシュ先のスロットを選択 + フラッシュする boot のターゲットスロットを選択 + スロット A + スロット B + 選択したスロット: %1$s + オリジナルのスロットを取得 + 指定するスロットを設定 + デフォルトのスロットに復元 + 現在のシステムデフォルトスロット: %1$s + + コピーに失敗しました + 不明なエラー + フラッシュに失敗しました + + LKM の修復またはインストール + AnyKernel3 をフラッシュ + カーネル バージョン: %1$s + パッチ適用ツールの使用: %1$s + 設定 + アプリの設定 + ツール + + アプリがありません + SELinux 有効 + SELinux 無効 + SELinux ステータスの変更に失敗しました + 高度な設定 + ツールバーをカスタマイズ + 戻る + 背景の設定が成功しました + カスタム背景を削除しました + 代替アイコン + ランチャーアイコンを KernelSU のアイコンに変更します。 + アイコンを変更しました + + KPM 機能を非表示 + ホームとボトムバーから KPM の情報と機能を非表示にします。 + + WebUI で使用するエンジン + 自動選択 + WebUI X の使用を強制する + KSU WebUI の使用を強制する + WebUI に Eruda をインジェクトする + デバッグを容易にするために WebUI X にデバッグコンソールを挿入します。Web デバッグが ON になっている必要があります。 + + DPI の変更を適用 + このアプリのみで画面表示密度を調整します。 + + + + 特大 + カスタマイズ + DPI の設定を適用する + DPI の変更を確認 + アプリの DPI を %1$d から %2$d に変更してもよろしいですか? + 変更した DPI 設定を適用するにはアプリを再起動する必要がありますが、システムステータスバーや他のアプリには影響しません + DPI は %1$d に変更されました。アプリの再起動後に適用されます。 + + アプリの言語 + システムに従う + カードの暗さを調整 + + エラーコード + ログを確認してください + モジュールをインストール中: %1$d/%2$d + %d モジュールのインストールに失敗しました + モデルのダウンロードに失敗しました + カーネルをフラッシュ中 + + すべて + Root + カスタム + デフォルト + + 名前の昇順 + 名前の降順 + インストール日時 (新しい) + インストール日時 (古い) + サイズの降順 + サイズの昇順 + 使用頻度 + + このカテゴリーにアプリはありません + + 権限の認証 + 認証 + モジュールのマウントを解除 + アンインストールするモジュールのマウントを無効化します。 + メニューを展開 + メニューを収納 + 上詰め + 画面下 + 選択中 + オプション + + メニューのオプション + 並べ替え + アプリタイプを選択 + + SuSFS の構成 + 構成の説明 + この機能を使用すると SuSFS の uname の値とビルド日時の偽装をカスタマイズできます。設定する値を入力後に「適用」をタップで有効になります。 + uname の値 + カスタム uname の値を入力してください + ビルド日時を偽装 + 偽装するビルド日時を入力してください + 現在の値: %s + 現在のビルド日時: %s + デフォルトにリセット + 適用 + + リセットを確認 + + ksu_susfs ファイルが見つかりません + SuSFS コマンドの実行に失敗しました + SuSFS コマンドの実行エラー: %s + SuSFS uname とビルド日時が正常に設定されました: %s - %s + + SuSFS の構成 + + 自動起動 + システムの起動時に自動で uname の構成を適用する + 有効化するには uname を構成するかパスを追加する必要があります + 自動起動の有効化に失敗しました + 自動起動の無効化に失敗しました + 自動起動の構成エラー: %s + 自動起動に利用可能な構成がありません + + 基本設定 + SUS のパス + SUS マウント + アンマウントを試す + パスの設定 + 有効な機能のステータス + + SUS パスを追加 + SUS マウントを追加 + アンマウントを試すを追加 + SUS パスが正常に追加されました + パスが見つかりません + パス + マウントのパス + 例: /system/addon.d + SUS パスが未構成です + SUS マウントが未構成です + アンマウントを試すが未構成です + + アンマウントモード + 通常のアンマウント (0) + アンマウントを分離 (1) + 通常 + 分離 + モード: %1$s (%2$s) + 追加されたパスのアンマウントに成功しました: %s + アンマウントのパスの保存に成功しました: %s + + + SUS パスをリセット + すべての SUS パスの構成が消去されます。続行してもよろしいですか? + SUS マウントをリセット + すべての SUS マウントの構成が消去されます。続行してもよろしいですか? + リセットしてアンマウントを試す + すべてのアンマウント構成がリセットされます。続行してもよろしいですか? + パスの設定をリセット + + Android データパス + SD カードのパス + Android データパスを設定 + SD カードのパスを設定 + + SuSFS で有効な機能のステータスを表示します。 + 機能のステータス情報が見つかりません + 有効 + 無効 + + SUS パスの対応 + SUS マウントの対応 + アンマウントを試すの対応 + uname 偽装の対応 + Cmdline/Bootconfig を偽装 + オープンリダイレクトの対応 + ログの対応 + 自動でデフォルトのマウント + 自動でバインドマウント + 自動でバインドマウントのアンマウントを試す + KSU SUSFS シンボルを非表示 + SUS Kstat の対応 + SUS SU モード切り替え機能 + + 構成可能な SuSFS の機能 + SuSFS のログ取得を有効化 + SuSFS のログ取得を有効化または無効化します。 + SuSFS ログ取得の構成 + SuSFS のログ取得を有効化中 + SuSFS のログ取得を無効化 + 更新用の JSON + 更新用 JSON の URL をクリップボードにコピーしました + + モジュール情報の詳細を表示 + 更新用 JSON の URL など追加の情報を表示します。 + 実行先 + 現在の実行先: %s + サービス + Post-FS-Data + システムサービスの開始後に実行 + ファイルシステムのマウント後にシステムが完全に起動する前に実行をすることで、ブートループが発生する可能性があります。 + スロット情報 + 現在のブートスロット情報の表示と値のコピーをします。 + 現在のアクティブスロット: %s + Uname: %s + ビルド日時: %s + 現在 + Uname を使用する + ビルド日時を使用する + スロット情報を取得できません + + SuSFS 自動起動モジュールが有効、モジュールのパス: %s + SuSFS 自動起動モジュールが無効 + + Kstat の構成 + Kstat の静的構成を追加しました: %1$s + Kstat の構成を削除しました: %1$s + Kstat パスを追加しました: %1$s + Kstat パスを削除しました: %1$s + Kstat が更新されました: %1$s + Kstat のフルクローンが更新されました: %1$s + Kstat 静的構成を追加 + ファイルまたはディレクトリのパス + ヒント: オリジナルの値を使用するには「default」を使用します + Kstat のパスを追加 + 追加 + Kstat の構成をリセット + すべての Kstat の構成を消去しますか?この操作は元に戻せません。 + Kstat の構成の説明 + • add_sus_kstat_statically: ファイル、ディレクトリの静的な状態情報 + • add_sus_kstat: バインドマウント前にパスを追加して元の状態情報を保存します + • update_sus_kstat: ターゲットとなる ino を更新、サイズとブロックは変更しません + • update_sus_kstat_full_clone: ino のみ更新、他の値はそのままにします + Kstat の静的構成 + Kstat パスの管理 + Kstat の構成が未設定です。上のボタンをタップで追加します。 + + SUS マウントの非表示制御 + プロセスの SUS マウントを非表示する動作を制御します。 + すべてのプロセスで SUS マウントを非表示 + 有効化すると SUS マウントは KSU プロセスを含むすべてのプロセスから非表示になります。 + 無効化すると SUS マウントは非 KSU プロセスからのみ非表示になり、KSU プロセスはマウントを見ることができます。 + すべてのプロセスで SUS マウントの非表示を有効化しました + すべてのプロセスで SUS マウントの非表示を無効化しました + 画面のロック解除後または service.sh または boot-completed.sh の段階で無効に設定することを推奨します。これにより、KSU プロセスによってマウントされたマウントに依存する一部の root 化されたアプリの問題が解決されるはずです。 + 現在の設定: %s + すべてのプロセスを非表示 + 非 KSU プロセスのみ非表示 + 簡潔モードなカーネル バージョン + SukiSU のカーネル バージョンによって表示されるクリーンモードを有効または無効します。 + Android データパスが設定されました: %s + SD カードのパスは次のように設定済みです: %s + パスの設定は完全に成功しない可能性がありますが、SUS パスは引き続き追加されます。 + + バックアップ + SuSFS のすべての設定のバックアップを作成します。バックアップファイルは「すべての設定、パス、構成」が含まれます。 + バックアップを作成 + バックアップの作成に成功しました: %s + バックアップの作成に失敗しました: %s + バックアップファイルが見つかりません + 無効なバックアップファイル形式 + バックアップのバージョンが一致しませんが、復元を試みます。 + 復元 + SuSFS の構成をバックアップファイルから復元します。これにより、現在の設定がすべて上書きされます。 + バックアップファイルを選択 + デバイス: %s から「%s」に作成されたバックアップから構成が正常に復元されました。 + 復元に失敗しました: %s + 復元を確認 + これにより現在の SuSFS 構成がすべて上書きされます。続行してもよろしいですか? + 復元 + バックアップ日時: %s + デバイス: %s + バージョン: %s + ロック状態 + late_start サービスモードでブートローダーのロック状態属性を上書きする + 残骸をクリーンアップ + 様々なモジュールや残骸となったツールのファイルとディレクトリをクリーンアップします (誤って削除すると損失や起動の失敗に繋がる可能性があるため、注意して使用してください) + SUS のパスを編集 + SUS マウントを編集 + アンマウントを試すを編集 + Kstat 静的構成を編集 + Kstat のパスを編集 + 保存 + 編集 + 消去 + 更新 + Kstat の構成を更新 + Kstat のパスを更新 + フルクローンの SuSFS を更新 + Zygote 分離サービスをアンマウント + このオプションを有効化すると、システムの起動時に Zygote 分離サービスのマウントポイントがアンマウントされます。 + Zygote 分離サービスのアンマウントが有効です + Zygote 分離サービスのアンマウントが無効です + アプリのパス + その他のパス + その他 + アプリ + 追加のアプリパス + アプリを検索 + %1$d 個のアプリを選択済み + %1$d 個のアプリを追加済み + すべてのアプリが追加されました + 動的な署名の構成 + 有効 (サイズ: %s) + 無効 + 動的な署名を有効化 + 署名のサイズ + 署名のハッシュ + ハッシュは 64 桁の 16 進数の文字列でなければなりません。 + 動的な署名の構成が正常に設定されました + 動的な署名の構成の設定に失敗しました + 無効な署名の構成 + 動的な署名が無効です + 動的な署名の消去に失敗しました + 動的 + 署名 %1$d + 不明 + 有効なマネージャー + 有効なマネージャーがありません + SukiSU + Zygisk を実装 + + SUS ループパス + SUS ループパスを追加 + SUS ループパスを編集 + SUS ループパスが正常に追加されました: %1$s + SUS ループパスが削除されました: %1$s + SUS ループパスが更新されました: %1$s -> %2$s + SUS ループパスが構成されていません + ループパスをリセット + すべての SUS ループパスを消去してもよろしいですか?この操作は元に戻せません。 + ループパス + /data/example/path + 注意: ループパス経由で追加できるのは「/storage/」と「/sdcard/」内にないパスのみです。 + エラー: ループパスは「/storage/」または「/sdcard/」のディレクトリ内に配置できません。 + ループパス + ループパスを追加 + + ループパスの構成 + ループパスは、非 root ユーザーアプリまたは独立したサービスの起動ごとに SUS_PATH として再設定されます。これにより、追加されたパスの inode ステータスがリセットされたり、カーネル内で inode が再生成される問題に対処できます。 + AVC ログの偽装 + AVC ログの偽装が有効化されました + AVC ログの偽装が無効化されました + 無効: カーネルの AVC ログに表示される「su」の SUS T コンテキストの偽装を無効化します。\n +有効: カーネルの AVC ログに表示される「kernel」を使用して「su」の SUS T コンテキストを偽装する機能を有効化します。 + 重要な注意事項:\n +- カーネルはデフォルトで「0」に設定されています。\n +- これを有効化すると、開発者が何らかの権限や SELinux の問題をデバッグするときに原因を特定するのが難しくなる場合があるため、デバッグ時はこれを無効化することをお勧めします。 + + 検証済み + モジュールの署名が検証されました + 署名の検証 + モジュールのインストール時に署名の検証を強制します。(ARM アーキテクチャのみ) + 不明な発行元 + 署名されていないモジュールは不完全な可能性があります。デバイスを保護するため、このモジュールのインストールをブロックしました。 + 署名されていないモジュールは不完全な可能性があります。不明な発行元のモジュールをこのデバイスにインストールすることを許可しますか? + フックタイプ +
diff --git a/manager/app/src/main/res/values-kn/strings.xml b/manager/app/src/main/res/values-kn/strings.xml new file mode 100644 index 0000000..e60127c --- /dev/null +++ b/manager/app/src/main/res/values-kn/strings.xml @@ -0,0 +1,362 @@ + + + ಮನೆ + Not installed + Click to install + ಕೆಲಸ ಮಾಡುತ್ತಿದೆ + ವರ್ಷನ್: %s + ಬೆಂಬಲಿತವಾಗಿಲ್ಲ + KernelSU ಈಗ GKI ಕರ್ನಲ್‌ಗಳನ್ನು ಮಾತ್ರ ಬೆಂಬಲಿಸುತ್ತದೆ + ಕರ್ನಲ್ + SuSFS Version + ಮ್ಯಾನೇಜರ್ ವರ್ಷನ್ + SELinux ಸ್ಥಿತಿ + Disabled + Enforcing + Permissive + ತಿಳಿಯದ + ಸೂಪರ್ಯೂಸರ್ + ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ವಿಫಲವಾಗಿದೆ: %s + ಮಾಡ್ಯೂಲ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲು ವಿಫಲವಾಗಿದೆ: %s + ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಸ್ಥಾಪಿಸಲಾಗಿಲ್ಲ + ಮಾಡ್ಯೂಲ್ + Sort (Action first) + Sort (Enabled first) + ಅನ್‌ಇನ್‌ಸ್ಟಾಲ್ + Install + Install + ರೀಬೂಟ್ + Settings + ಸಾಫ್ಟ್ ರೀಬೂಟ್ + Reboot to Recovery + Reboot to Bootloader + Reboot to Download + EDL ಗೆ ರೀಬೂಟ್ + ಬಗ್ಗೆ + %s ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಅಸ್ಥಾಪಿಸಲು ನೀವು ಖಚಿತವಾಗಿ ಬಯಸುವಿರಾ\? + %s ಅನ್‌ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಲಾಗಿದೆ + ಅನ್‌ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಲು ವಿಫಲವಾಗಿದೆ: %s + ವರ್ಷನ್ + ಲೇಖಕ + ರಿಫ್ರೆಶ್ + ಸಿಸ್ಟಮ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ತೋರಿಸಿ + ಸಿಸ್ಟಮ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಮರೆಮಾಡಿ + ಲಾಗ್ ಕಳುಹಿಸಿ + ಸುರಕ್ಷಿತ ಮೋಡ್ + ಪರಿಣಾಮ ಬೀರಲು ರೀಬೂಟ್ ಮಾಡಿ + ಮಾಡ್ಯೂಲ್‌ಗಳನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ ಏಕೆಂದರೆ ಇದು ಮ್ಯಾಜಿಸ್ಕ್‌ನೊಂದಿಗೆ ಸಂಘರ್ಷವಾಗಿದೆ! + KernelSU ಕಲಿಯಿರಿ + https://kernelsu.org/guide/what-is-kernelsu.html + KernelSU ಅನ್ನು ಹೇಗೆ ಸ್ಥಾಪಿಸಬೇಕು ಮತ್ತು ಮಾಡ್ಯೂಲ್‌ಗಳನ್ನು ಬಳಸುವುದು ಹೇಗೆ ಎಂದು ತಿಳಿಯಿರಿ + ನಮ್ಮನ್ನು ಬೆಂಬಲಿಸಿ + KernelSU ಉಚಿತ ಮತ್ತು ಮುಕ್ತ ಮೂಲವಾಗಿದೆ ಮತ್ತು ಯಾವಾಗಲೂ ಇರುತ್ತದೆ. ಆದಾಗ್ಯೂ ನೀವು ದೇಣಿಗೆ ನೀಡುವ ಮೂಲಕ ನೀವು ಕಾಳಜಿ ವಹಿಸುತ್ತೀರಿ ಎಂದು ನಮಗೆ ತೋರಿಸಬಹುದು. + Join our %2$s channel]]> + ಡೀಫಾಲ್ಟ್ + ಟೆಂಪ್ಲೇಟ್ + ಕಸ್ಟಮ್ + ಪ್ರೊಫೈಲ್ ಹೆಸರು + ಗುಂಪುಗಳು + ಸಾಮರ್ಥ್ಯಗಳು + SELinux ಸಂದರ್ಭ + Umount ಮಾಡ್ಯೂಲ್‌ಗಳು + %s ಗಾಗಿ ಅಪ್ಲಿಕೇಶನ್ ಪ್ರೊಫೈಲ್ ಅನ್ನು ನವೀಕರಿಸಲು ವಿಫಲವಾಗಿದೆ + The current KernelSU version %s is too low for the manager to work properly. Please upgrade to version %s or higher! + ಡೀಫಾಲ್ಟ್ ಆಗಿ Umount ಮಾಡ್ಯೂಲ್ + ಅಪ್ಲಿಕೇಶನ್ ಪ್ರೊಫೈಲ್‌ಗಳಲ್ಲಿ \"Umount ಮಾಡ್ಯೂಲ್\" ಗಾಗಿ ಜಾಗತಿಕ ಡೀಫಾಲ್ಟ್ ಮೌಲ್ಯ. ಸಕ್ರಿಯಗೊಳಿಸಿದರೆ, ಪ್ರೊಫೈಲ್ ಸೆಟ್ ಅನ್ನು ಹೊಂದಿರದ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಿಗಾಗಿ ಸಿಸ್ಟಮ್‌ಗೆ ಎಲ್ಲಾ ಮಾಡ್ಯೂಲ್ ಮಾರ್ಪಾಡುಗಳನ್ನು ಇದು ತೆಗೆದುಹಾಕುತ್ತದೆ. + ಈ ಆಯ್ಕೆಯನ್ನು ಸಕ್ರಿಯಗೊಳಿಸುವುದರಿಂದ ಈ ಅಪ್ಲಿಕೇಶನ್‌ಗಾಗಿ ಮಾಡ್ಯೂಲ್‌ಗಳ ಮೂಲಕ ಯಾವುದೇ ಮಾರ್ಪಡಿಸಿದ ಫೈಲ್‌ಗಳನ್ನು ಮರುಸ್ಥಾಪಿಸಲು KernelSU ಗೆ ಅನುಮತಿಸುತ್ತದೆ. + ಡೊಮೇನ್ + ನಿಯಮಗಳು + Update + ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಡೌನ್‌ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ: %s + ಡೌನ್‌ಲೋಡ್ ಮಾಡುವುದನ್ನು ಪ್ರಾರಂಭಿಸಿ: %s + ಹೊಸ ಆವೃತ್ತಿ: %s ಲಭ್ಯವಿದೆ, ಅಪ್‌ಗ್ರೇಡ್ ಮಾಡಲು ಕ್ಲಿಕ್ ಮಾಡಿ + ಲಾಂಚ್ + ಫೋರ್ಸ್ ಸ್ಟಾಪ್ + Restart + Failed to update SELinux rules for %s + ಚೇಂಜ್ಲಾಗ್ + App Profile Template + Manage local and online template of App Profile + Create template + Edit template + ID + Invalid template ID + Name + Description + Save + Delete + View template + Read only + Template ID already exists! + Import/Export + Import from clipboard + Export to clipboard + Cannot find local template to export! + Imported successfully + Sync online templates + Failed to save template + Clipboard is empty! + Fetch changelog failed: %s + Check update + Automatically check for updates when opening the app + Failed to grant root! + Action + Close + Enable WebView debugging + Can be used to debug WebUI. Please enable only when needed. + Direct install (Recommended) + Select a image that needs to be patched + Install to inactive slot (After OTA) + Your device will be **FORCED** to boot to the current inactive slot after a reboot!\nOnly use this option after OTA is done.\nContinue? + Next + %1$s partition image is recommended + Select KMI + Uninstall + Uninstall temporarily + Uninstall permanently + Restore stock image + Temporarily uninstall KernelSU, restore to original state after next reboot. + Uninstalling KernelSU (Root and all modules) completely and permanently. + Restore the stock factory image (If a backup exists), usually used before OTA; if you need to uninstall KernelSU, please use \"Uninstall permanently\". + Flashing + Flash success + Flash failed + Selected LKM: %s + ಲಾಗ್ಗಳನ್ನು ಉಳಿಸಿ + Logs saved + + confirm install module %1$s? + unknown module + + Confirm Module Restoration + This operation will overwrite all existing modules. Continue? + Confirm + Cancel + + Backup successful (tar.gz) + Backup failed: %1$s + backup modules + restore modules + + Modules restored successfully, restart required + Restore failed: %1$s + Restart Now + Unknown error + + Command execution failed: %1$s + + Allowlist backup successful + Allowlist backup failed: %1$s + Confirm Allowlist Restoration + This operation will overwrite the current allowlist. Continue? + Allowlist restored successfully + Allowlist restore failed: %1$s + Backup Allowlist + Restore Allowlist + Custom App Background + Select an image as background + Navigation bar transparency + Android version + Device model + Granting superuser to %s is not allowed + Disable su compatibility + Temporarily disable any applications from obtaining root privileges via the ⁠su command (existing root processes will not be affected). + Sure you want to install the following %1$d modules? \n\n%2$s + More settings + SELinux + Enabled + Disabled + Simplicity mode + Hides unnecessary cards when turned on + Hide kernel version + Hide kernel version + Hide other info + Hides information about the number of super users, modules and KPM modules on the home page + Hide SuSFS status + Hide SuSFS status information on the home page + Hide Link Card Status + Hide link card information on the home page + Theme + Follow system + Light + Dark + Manual Hook + Dynamic colours + Dynamic colours using system themes + Choose a theme colour + Blue + Green + Purple + Orange + Pink + Gray + Yellow + Install Anykernel3 + Flash AnyKernel3 kernel file + Requires root privileges + Scrubbing complete + Whether to reboot immediately? + Yes + No + Reboot Failed + KPM + No installed kernel modules at this time + Version + Author + Uninstall + Uninstalled successfully + Failed to uninstall + Load of kpm module successful + Load of kpm module failed + Parameters + Execute + KPM Version + Close + The following kernel module functions were developed by KernelPatch and modified to include the kernel module functions of SukiSU Ultra + SukiSU Ultra Look forward to + Success + Failed + SukiSU Ultra will be a relatively independent branch of KSU in the future, but we still appreciate the official KernelSU and MKSU etc. for their contributions! + Unsupported + Supported + Kernel not patched + Kernel not configured + Custom settings + KPM Install + Load + Embed + Please select: %1\$s Module Installation Mode \n\nLoad: Temporarily load the module \nEmbedded: Permanently install into the system + Unable to check if module file exists + Theme Color + Incorrect file type! Please select .kpm file. + Uninstall + The following KPM will be uninstalled: %s + Use two fingers to zoom the image, and one finger to drag it to adjust the position + Reprovision + + Flash Complete + + Preparing… + Cleaning files… + Copying files… + Extracting flash tool… + Patching flash script… + Flashing kernel… + Flash completed + + Select Flash Slot + Please select the target slot for flashing boot + Slot A + Slot B + Selected slot: %1$s + Getting the original slot + Setting the specified slot + Restore Default Slot + Current Slot:%1$s + + Copy failed + Unknown error + Flash failed + + LKM repair/installation + Flashing AnyKernel3 + Kernel version:%1$s + Using the patching tool:%1$s + Configure + Application Settings + Tools + + Application not found + SELinux Enabled + SELinux Disabled + SELinux Status change failed + Advanced Settings + Customize the toolbar + Comeback + Background set successfully + Removed custom backgrounds + Alternate icon + Change the launcher icon to KernelSU\'s icon. + Icon switched + + Display KPM Function + Display KPM information and Function in home and bottom bar (Need to reopen the app) + + Select the WebUI engine to use + Automatic Selection + Force the use of WebUI X + Mandatory use of KSU WebUI + Inject Eruda into WebUI X + Inject a debug console into WebUI X to make debugging easier. Requires web debugging to be on. + + Applied DPI + Adjust the screen display density for the current application only + Small + Medium + Big + oversize + customizable + Applying DPI settings + Confirm DPI change + Are you sure you want to change the application DPI from %1$d to %2$d? + Application needs to be restarted to apply the new DPI settings, does not affect the system status bar or other applications + DPI has been set to %1$d, effective after restarting the application + + App Language + Follow System + Card Darkness Adjustment + + error code + Please check the log + Module being installed %1$d/%2$d + %d Failed to install a new module + Module download failed + Kernel Flashing + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + Top + Bottom + Selected + option + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-ko/strings.xml b/manager/app/src/main/res/values-ko/strings.xml new file mode 100644 index 0000000..8e6ee7d --- /dev/null +++ b/manager/app/src/main/res/values-ko/strings.xml @@ -0,0 +1,362 @@ + + + + 설치되지 않음 + 이 곳을 눌러 설치하기 + 정상 작동 중 + 버전: %s + 지원되지 않음 + KernelSU는 현재 GKI 커널만 지원합니다 + 커널 + SuSFS Version + 매니저 버전 + SELinux 상태 + 비활성화됨 + 적용 + 허용 + 알 수 없음 + 슈퍼유저 + 모듈 활성화 실패: %s + 모듈 비활성화 실패: %s + 설치된 모듈 없음 + 모듈 + 정렬 (동작이 있는 것 우선) + 정렬 (활성화됨 우선) + 삭제 + 설치 + 설치 + 다시 시작 + 설정 + 빠른 다시 시작 + 복구 모드로 다시 시작 + 부트로더로 다시 시작 + 다운로드 모드로 다시 시작 + EDL 모드로 다시 시작 + 정보 + %s 모듈을 삭제할까요? + %s 모듈 삭제됨 + 모듈 삭제 실패: %s + 버전 + 제작자 + 새로고침 + 시스템 앱 보이기 + 시스템 앱 숨기기 + 로그 보내기 + 안전 모드 + 다시 시작하여 변경 사항 적용 + Magisk와 충돌로 모듈을 사용할 수 없습니다! + KernelSU 알아보기 + https://kernelsu.org/guide/what-is-kernelsu.html + KernelSU 설치 방법과 모듈 사용 방법을 확인합니다 + 지원이 필요합니다 + KernelSU는 지금도, 앞으로도 항상 무료이며 오픈 소스로 유지됩니다. 기부를 통해 여러분의 관심을 보여주세요. + Join our %2$s channel]]> + 기본값 + 템플릿 + 사용자 지정 + 프로필 이름 + 사용자 그룹 + 권한 + SELinux 컨텍스트 + 모듈 사용 해제 + %s에 대한 앱 프로필 업데이트 실패 + The current KernelSU version %s is too low for the manager to work properly. Please upgrade to version %s or higher! + 기본값으로 모듈 사용 해제 + 앱 프로필 메뉴의 \"모듈 마운트 해제\" 설정에 대한 전역 기본값을 설정합니다. 활성화 시, 개별 프로필이 설정되지 않은 앱은 시스템에 대한 모듈의 모든 수정사항이 적용되지 않습니다. + 이 옵션이 활성화되면, KernelSU는 이 앱에 대한 모듈의 모든 수정사항을 복구합니다. + 도메인 + 규칙 + 업데이트 + 모듈 받는 중: %s + 다운로드 시작: %s + 새 버전: %s이 사용 가능합니다, 여기를 눌러 업그레이드하세요. + 실행 + 강제 중지 + 다시 시작 + 다음 앱에 대한 SELinux 규칙 업데이트 실패: %s + 업데이트 내역 + 앱 프로필 템플레이트 + 앱 프로필의 로컬 및 온라인 템플레이트 관리 + 템플레이트 생성 + 템플레이트 편집 + ID + 올바르지 않은 템플레이트 id + 이름 + 설명 + 저장 + 삭제 + 템플레이트 보기 + 읽기 전용 + 템플레이트 ID가 이미 존재합니다! + 불러오기/내보내기 + 클립보드에서 불러오기 + 클립보드로 내보내기 + 내보낼 로컬 템플레이트가 없습니다! + 불러오기 성공 + 온라인 템플레이트 동기화 + 템플레이트 저장 실패 + 클립보드가 비었습니다! + 업데이트 내역 가져오기 실패: %s + 업데이트 확인 + 앱 실행시 자동으로 업데이트 확인 + 루트 부여 실패! + 동작 + Close + WebView 디버깅 활성화 + WebUI 디버깅에 사용 가능, 필요할 때만 활성화해주세요. + 직접 설치 (권장) + 파일 선택 + 비활성 슬롯에 설치 (OTA 이후) + 재부팅 후 기기는 **강제로** 비활성 슬롯으로 부팅합니다!\nOTA를 진행한 후에만 이 옵션을 사용하세요.\n진행할까요? + 다음 + %1$s 파티션 이미지 권장됨 + KMI 선택 + 삭제 + 임시적 삭제 + 영구적 삭제 + 순정 이미지 복구 + 임시적으로 KernelSU를 삭제하고, 다음 재부팅에 원래대로 복구합니다. + 완전히, 그리고 영구히 KernelSU (루트 및 모든 모듈)를 삭제합니다. + 순정 이미지 복구 (백업이 존재한다면), OTA 전에 사용합니다; KernelSU를 삭제해야 한다면, \"영구적 삭제\"를 사용해 주세요. + 플래시 중 + 플래시 성공 + 플래시 실패 + 선택된 LKM: %s + 로그 저장 + 로그 저장됨 + + confirm install module %1$s? + unknown module + + Confirm Module Restoration + This operation will overwrite all existing modules. Continue? + Confirm + Cancel + + Backup successful (tar.gz) + Backup failed: %1$s + backup modules + restore modules + + Modules restored successfully, restart required + Restore failed: %1$s + Restart Now + Unknown error + + Command execution failed: %1$s + + Allowlist backup successful + Allowlist backup failed: %1$s + Confirm Allowlist Restoration + This operation will overwrite the current allowlist. Continue? + Allowlist restored successfully + Allowlist restore failed: %1$s + Backup Allowlist + Restore Allowlist + Custom App Background + Select an image as background + Navigation bar transparency + Android version + Device model + Granting superuser to %s is not allowed + Disable su compatibility + Temporarily disable any applications from obtaining root privileges via the ⁠su command (existing root processes will not be affected). + Sure you want to install the following %1$d modules? \n\n%2$s + More settings + SELinux + Enabled + Disabled + Simplicity mode + Hides unnecessary cards when turned on + Hide kernel version + Hide kernel version + Hide other info + Hides information about the number of super users, modules and KPM modules on the home page + Hide SuSFS status + Hide SuSFS status information on the home page + Hide Link Card Status + Hide link card information on the home page + Theme + Follow system + Light + Dark + Manual Hook + Dynamic colours + Dynamic colours using system themes + Choose a theme colour + Blue + Green + Purple + Orange + Pink + Gray + Yellow + Install Anykernel3 + Flash AnyKernel3 kernel file + Requires root privileges + Scrubbing complete + Whether to reboot immediately? + Yes + No + Reboot Failed + KPM + No installed kernel modules at this time + Version + Author + Uninstall + Uninstalled successfully + Failed to uninstall + Load of kpm module successful + Load of kpm module failed + Parameters + Execute + KPM Version + Close + The following kernel module functions were developed by KernelPatch and modified to include the kernel module functions of SukiSU Ultra + SukiSU Ultra Look forward to + Success + Failed + SukiSU Ultra will be a relatively independent branch of KSU in the future, but we still appreciate the official KernelSU and MKSU etc. for their contributions! + Unsupported + Supported + Kernel not patched + Kernel not configured + Custom settings + KPM Install + Load + Embed + Please select: %1\$s Module Installation Mode \n\nLoad: Temporarily load the module \nEmbedded: Permanently install into the system + Unable to check if module file exists + Theme Color + Incorrect file type! Please select .kpm file. + Uninstall + The following KPM will be uninstalled: %s + Use two fingers to zoom the image, and one finger to drag it to adjust the position + Reprovision + + Flash Complete + + Preparing… + Cleaning files… + Copying files… + Extracting flash tool… + Patching flash script… + Flashing kernel… + Flash completed + + Select Flash Slot + Please select the target slot for flashing boot + Slot A + Slot B + Selected slot: %1$s + Getting the original slot + Setting the specified slot + Restore Default Slot + Current Slot:%1$s + + Copy failed + Unknown error + Flash failed + + LKM repair/installation + Flashing AnyKernel3 + Kernel version:%1$s + Using the patching tool:%1$s + Configure + Application Settings + Tools + + Application not found + SELinux Enabled + SELinux Disabled + SELinux Status change failed + Advanced Settings + Customize the toolbar + Comeback + Background set successfully + Removed custom backgrounds + Alternate icon + Change the launcher icon to KernelSU\'s icon. + Icon switched + + Display KPM Function + Display KPM information and Function in home and bottom bar (Need to reopen the app) + + Select the WebUI engine to use + Automatic Selection + Force the use of WebUI X + Mandatory use of KSU WebUI + Inject Eruda into WebUI X + Inject a debug console into WebUI X to make debugging easier. Requires web debugging to be on. + + Applied DPI + Adjust the screen display density for the current application only + Small + Medium + Big + oversize + customizable + Applying DPI settings + Confirm DPI change + Are you sure you want to change the application DPI from %1$d to %2$d? + Application needs to be restarted to apply the new DPI settings, does not affect the system status bar or other applications + DPI has been set to %1$d, effective after restarting the application + + App Language + Follow System + Card Darkness Adjustment + + error code + Please check the log + Module being installed %1$d/%2$d + %d Failed to install a new module + Module download failed + Kernel Flashing + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + Top + Bottom + Selected + option + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-lt/strings.xml b/manager/app/src/main/res/values-lt/strings.xml new file mode 100644 index 0000000..4206c33 --- /dev/null +++ b/manager/app/src/main/res/values-lt/strings.xml @@ -0,0 +1,362 @@ + + + Namai + Neįdiegta + Spustelėkite norėdami įdiegti + Veikia + Versija: %s + Nepalaikoma + KernelSU dabar palaiko tik GKI branduolius + Branduolys + SuSFS Version + Tvarkyklės versija + SELinux statusas + Išjungta + Priverstinas + Leistinas + Nežinomas + Supernaudotojai + Nepavyko įjungti modulio: %s + Nepavyko išjungti modulio: %s + Nėra įdiegtų modulių + Moduliai + Sort (Action first) + Sort (Enabled first) + Išdiegti + Įdiegti + Įdiegti + Paleisti iš naujo + Parametrai + Perkrovimas neišjungus + Perkrauti į atkūrimo rėžimą + Perkrauti į įkrovos tvarkyklę + Perkrauti į atsisiuntimo rėžimą + Perkrauti į EDL + Apie + Ar tikrai norite išdiegti modulį %s\? + %s išdiegtas + Nepavyko išdiegti: %s + Versija + Autorius + Atšviežinti + Rodyti sistemos programas + Slėpti sistemos programas + Siųsti žurnalą + Saugus rėžimas + Paleiskite iš naujo, kad įsigaliotų + Moduliai yra išjungti, nes jie konfliktuoja su Magisk\'s! + Sužinokite apie KernelSU + https://kernelsu.org/guide/what-is-kernelsu.html + Sužinokite, kaip įdiegti KernelSU ir naudoti modulius + Paremkite mus + KernelSU yra ir visada bus nemokamas ir atvirojo kodo. Tačiau galite parodyti, kad jums rūpi, paaukodami mums. + Join our %2$s channel]]> + Numatytas + Šablonas + Pasirinktinis + Profilio pavadinimas + Grupės + Galimybės + SELinux kontekstas + Atjungti modulius + Nepavyko atnaujinti programos profilio %s + The current KernelSU version %s is too low for the manager to work properly. Please upgrade to version %s or higher! + Atjungti modulius pagal numatytuosius parametrus + Visuotinė numatytoji „Modulių atjungimo“ reikšmė programų profiliuose. Jei įjungta, ji pašalins visus sistemos modulio pakeitimus programoms, kurios neturi profilio. + Įjungus šią parinktį, KernelSU galės atkurti visus modulių modifikuotus failus šiai programai. + Domenas + Taisyklės + Atnaujinti + Atsisiunčiamas modulis: %s + Pradedamas atsisiuntimas: %s + Nauja versija: %s pasiekiama, spustelėkite norėdami atsinaujinti + Paleisti + Priversti sustoti + Perkrauti + Nepavyko atnaujinti SELinux taisyklių: %s + Keitimų žurnalas + App Profile Template + Manage local and online template of App Profile + Create template + Edit template + ID + Invalid template ID + Name + Description + Save + Delete + View template + Read only + Template ID already exists! + Import/Export + Import from clipboard + Export to clipboard + Cannot find local template to export! + Imported successfully + Sync online templates + Failed to save template + Clipboard is empty! + Fetch changelog failed: %s + Check update + Automatically check for updates when opening the app + Failed to grant root! + Action + Close + Enable WebView debugging + Can be used to debug WebUI. Please enable only when needed. + Direct install (Recommended) + Select a image that needs to be patched + Install to inactive slot (After OTA) + Your device will be **FORCED** to boot to the current inactive slot after a reboot!\nOnly use this option after OTA is done.\nContinue? + Next + %1$s partition image is recommended + Select KMI + Uninstall + Uninstall temporarily + Uninstall permanently + Restore stock image + Temporarily uninstall KernelSU, restore to original state after next reboot. + Uninstalling KernelSU (Root and all modules) completely and permanently. + Restore the stock factory image (If a backup exists), usually used before OTA; if you need to uninstall KernelSU, please use \"Uninstall permanently\". + Flashing + Flash success + Flash failed + Selected LKM: %s + Saglabāt Žurnālus + Logs saved + + confirm install module %1$s? + unknown module + + Confirm Module Restoration + This operation will overwrite all existing modules. Continue? + Confirm + Cancel + + Backup successful (tar.gz) + Backup failed: %1$s + backup modules + restore modules + + Modules restored successfully, restart required + Restore failed: %1$s + Restart Now + Unknown error + + Command execution failed: %1$s + + Allowlist backup successful + Allowlist backup failed: %1$s + Confirm Allowlist Restoration + This operation will overwrite the current allowlist. Continue? + Allowlist restored successfully + Allowlist restore failed: %1$s + Backup Allowlist + Restore Allowlist + Custom App Background + Select an image as background + Navigation bar transparency + Android version + Device model + Granting superuser to %s is not allowed + Disable su compatibility + Temporarily disable any applications from obtaining root privileges via the ⁠su command (existing root processes will not be affected). + Sure you want to install the following %1$d modules? \n\n%2$s + More settings + SELinux + Enabled + Disabled + Simplicity mode + Hides unnecessary cards when turned on + Hide kernel version + Hide kernel version + Hide other info + Hides information about the number of super users, modules and KPM modules on the home page + Hide SuSFS status + Hide SuSFS status information on the home page + Hide Link Card Status + Hide link card information on the home page + Theme + Follow system + Light + Dark + Manual Hook + Dynamic colours + Dynamic colours using system themes + Choose a theme colour + Blue + Green + Purple + Orange + Pink + Gray + Yellow + Install Anykernel3 + Flash AnyKernel3 kernel file + Requires root privileges + Scrubbing complete + Whether to reboot immediately? + Yes + No + Reboot Failed + KPM + No installed kernel modules at this time + Version + Author + Uninstall + Uninstalled successfully + Failed to uninstall + Load of kpm module successful + Load of kpm module failed + Parameters + Execute + KPM Version + Close + The following kernel module functions were developed by KernelPatch and modified to include the kernel module functions of SukiSU Ultra + SukiSU Ultra Look forward to + Success + Failed + SukiSU Ultra will be a relatively independent branch of KSU in the future, but we still appreciate the official KernelSU and MKSU etc. for their contributions! + Unsupported + Supported + Kernel not patched + Kernel not configured + Custom settings + KPM Install + Load + Embed + Please select: %1\$s Module Installation Mode \n\nLoad: Temporarily load the module \nEmbedded: Permanently install into the system + Unable to check if module file exists + Theme Color + Incorrect file type! Please select .kpm file. + Uninstall + The following KPM will be uninstalled: %s + Use two fingers to zoom the image, and one finger to drag it to adjust the position + Reprovision + + Flash Complete + + Preparing… + Cleaning files… + Copying files… + Extracting flash tool… + Patching flash script… + Flashing kernel… + Flash completed + + Select Flash Slot + Please select the target slot for flashing boot + Slot A + Slot B + Selected slot: %1$s + Getting the original slot + Setting the specified slot + Restore Default Slot + Current Slot:%1$s + + Copy failed + Unknown error + Flash failed + + LKM repair/installation + Flashing AnyKernel3 + Kernel version:%1$s + Using the patching tool:%1$s + Configure + Application Settings + Tools + + Application not found + SELinux Enabled + SELinux Disabled + SELinux Status change failed + Advanced Settings + Customize the toolbar + Comeback + Background set successfully + Removed custom backgrounds + Alternate icon + Change the launcher icon to KernelSU\'s icon. + Icon switched + + Display KPM Function + Display KPM information and Function in home and bottom bar (Need to reopen the app) + + Select the WebUI engine to use + Automatic Selection + Force the use of WebUI X + Mandatory use of KSU WebUI + Inject Eruda into WebUI X + Inject a debug console into WebUI X to make debugging easier. Requires web debugging to be on. + + Applied DPI + Adjust the screen display density for the current application only + Small + Medium + Big + oversize + customizable + Applying DPI settings + Confirm DPI change + Are you sure you want to change the application DPI from %1$d to %2$d? + Application needs to be restarted to apply the new DPI settings, does not affect the system status bar or other applications + DPI has been set to %1$d, effective after restarting the application + + App Language + Follow System + Card Darkness Adjustment + + error code + Please check the log + Module being installed %1$d/%2$d + %d Failed to install a new module + Module download failed + Kernel Flashing + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + Top + Bottom + Selected + option + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-lv/strings.xml b/manager/app/src/main/res/values-lv/strings.xml new file mode 100644 index 0000000..92b8287 --- /dev/null +++ b/manager/app/src/main/res/values-lv/strings.xml @@ -0,0 +1,364 @@ + + + Sākums + Nav ieinstalēts + Noklikšķiniet, lai instalētu + Darbojas + Versija: %s + Neatbalstīts + KernelSU atbalsta tikai GKI kodolus + Kodols + SuSFS Version + Pārvaldnieka versija + SELinux statuss + Atspējots + Izpildīšana + Visatļautība + Nezināms + SuperLietotājs + Neizdevās iespējot moduli: %s + Neizdevās atspējot moduli: %s + Nav instalētu moduļu + Moduļi + Sort (Action first) + Sort (Enabled first) + Atinstalēt + Instalēt + Instalēt + Restartēt + Iestatījumi + Ātri restartēt + Restartēt uz Recovery + Restartēt uz Bootloaderu + Restartēt uz Download + Restartēt uz EDL + Par + Vai tiešām vēlaties atinstalēt moduli %s? + %s ir atinstalēts + Neizdevās atinstalēt: %s + Versija + Autors + Atjaunot + Rādīt sistēmas lietotnes + Slēpt sistēmas lietotnes + Ziņot žurnālu + Drošais režīms + Restartējiet, lai stātos spēkā + Moduļi ir atspējoti, jo tie konfliktē ar Magisk! + Uzzināt par KernelSU + https://kernelsu.org/guide/what-is-kernelsu.html + Uzzināt, kā instalēt KernelSU un izmantot moduļus + Atbalsti mūs + KernelSU ir un vienmēr būs bezmaksas un atvērtā koda. Tomēr jūs varat parādīt mums, ka jums rūp, veicot ziedojumu. + Join our %2$s channel]]> + Noklusējums + Veidne + Pielāgots + Profila vārds + Grupas + Iespējas + SELinux konteksts + Atvienot moduļus + Neizdevās atjaunināt lietotnes profilu %s + The current KernelSU version %s is too low for the manager to work properly. Please upgrade to version %s or higher! + Pēc noklusējuma atvienot moduļus + Globālā noklusējuma vērtība vienumam “Atvienot moduļus” lietotņu profilos. Ja tas ir iespējots, lietojumprogrammām, kurām nav iestatīts profils, tiks noņemtas visas sistēmas moduļu modifikācijas. + Iespējojot šo opciju, KernelSU varēs atjaunot visus moduļos šīs lietojumprogrammas modificētos failus. + Domēns + Noteikumi + Atjaunināt + Lejupielādē moduli: %s + Sākt lejupielādi: %s + Jaunā versija: %s ir pieejama, noklikšķiniet, lai atjauninātu + Palaist + Piespiedu apstāšana + Restartēt aplikāciju + Neizdevās atjaunināt SELinux noteikumus: %s + Izmaiņu žurnāls + Lietotnes profila veidne + Pārvaldiet vietējo un tiešsaistes lietotņu profila veidni + Izveidot veidni + Rediģēt veidni + id + Nederīgs veidnes id + Vārds + Apraksts + Saglabāt + Dzēst + Skatīt veidni + tikai lasīt + veidnes id jau pastāv! + Importēt/Eksportēt + Importēt no starpliktuves + Eksportēt starpliktuvē + Nevar atrast vietējo eksportējamo veidni! + Importēts veiksmīgi + Sinhronizēt tiešsaistes veidnes + Neizdevās saglabāt veidni + Starpliktuve ir tukša! + Izmaiņu žurnāla iegūšana neizdevās: %s + Pārbaudīt atjauninājumus + Automātiski pārbaudīt atjauninājumus atverot aplikāciju + Neizdevās piešķirt sakni! + Action + Close + Iespējot WebView atkļūdošanu + Var izmantot WebUI atkļūdošanai, lūdzu, izmantot tikai tad, kad tas ir nepieciešams. + Tiešā instalēšana (Ieteicams) + Izvēlieties failu + Instalēt neaktīvajā slotā (pēc OTA) + Pēc restartēšanas jūsu ierīce tiks **PIESPIESTI** palaista pašreizējā neaktīvajā slotā! +\nIzmantojiet šo opciju tikai pēc OTA pabeigšanas +\nTurpināt? + Nākamais + Ieteicams %1$s nodalījuma attēls + Izvēlieties KMI + Atinstalēt + Pagaidu atinstalēšana + Neatgriezeniski atinstalēt + Atjaunot oriģinālo attēlu + Īslaicīgi atinstalēt KernelSU, pēc nākamās restartēšanas atjaunot sākotnējo stāvokli. + KernelSU (saknes un visu moduļu) pilnīga atinstalēšana. + Atjaunojot rūpnīcas attēlu (ja ir dublējums), ko parasti izmanto pirms OTA; ja nepieciešams atinstalēt KernelSU, lūdzu, izmantojiet \"Neatgriezeniski atinstalēt\". + Instalē + Instalēts veiksmīgi + Instalēšana neizdevās + Izvēlētais lkm: %s + Išsaugoti Žurnalus + Logs saved + + confirm install module %1$s? + unknown module + + Confirm Module Restoration + This operation will overwrite all existing modules. Continue? + Confirm + Cancel + + Backup successful (tar.gz) + Backup failed: %1$s + backup modules + restore modules + + Modules restored successfully, restart required + Restore failed: %1$s + Restart Now + Unknown error + + Command execution failed: %1$s + + Allowlist backup successful + Allowlist backup failed: %1$s + Confirm Allowlist Restoration + This operation will overwrite the current allowlist. Continue? + Allowlist restored successfully + Allowlist restore failed: %1$s + Backup Allowlist + Restore Allowlist + Custom App Background + Select an image as background + Navigation bar transparency + Android version + Device model + Granting superuser to %s is not allowed + Disable su compatibility + Temporarily disable any applications from obtaining root privileges via the ⁠su command (existing root processes will not be affected). + Sure you want to install the following %1$d modules? \n\n%2$s + More settings + SELinux + Enabled + Disabled + Simplicity mode + Hides unnecessary cards when turned on + Hide kernel version + Hide kernel version + Hide other info + Hides information about the number of super users, modules and KPM modules on the home page + Hide SuSFS status + Hide SuSFS status information on the home page + Hide Link Card Status + Hide link card information on the home page + Theme + Follow system + Light + Dark + Manual Hook + Dynamic colours + Dynamic colours using system themes + Choose a theme colour + Blue + Green + Purple + Orange + Pink + Gray + Yellow + Install Anykernel3 + Flash AnyKernel3 kernel file + Requires root privileges + Scrubbing complete + Whether to reboot immediately? + Yes + No + Reboot Failed + KPM + No installed kernel modules at this time + Version + Author + Uninstall + Uninstalled successfully + Failed to uninstall + Load of kpm module successful + Load of kpm module failed + Parameters + Execute + KPM Version + Close + The following kernel module functions were developed by KernelPatch and modified to include the kernel module functions of SukiSU Ultra + SukiSU Ultra Look forward to + Success + Failed + SukiSU Ultra will be a relatively independent branch of KSU in the future, but we still appreciate the official KernelSU and MKSU etc. for their contributions! + Unsupported + Supported + Kernel not patched + Kernel not configured + Custom settings + KPM Install + Load + Embed + Please select: %1\$s Module Installation Mode \n\nLoad: Temporarily load the module \nEmbedded: Permanently install into the system + Unable to check if module file exists + Theme Color + Incorrect file type! Please select .kpm file. + Uninstall + The following KPM will be uninstalled: %s + Use two fingers to zoom the image, and one finger to drag it to adjust the position + Reprovision + + Flash Complete + + Preparing… + Cleaning files… + Copying files… + Extracting flash tool… + Patching flash script… + Flashing kernel… + Flash completed + + Select Flash Slot + Please select the target slot for flashing boot + Slot A + Slot B + Selected slot: %1$s + Getting the original slot + Setting the specified slot + Restore Default Slot + Current Slot:%1$s + + Copy failed + Unknown error + Flash failed + + LKM repair/installation + Flashing AnyKernel3 + Kernel version:%1$s + Using the patching tool:%1$s + Configure + Application Settings + Tools + + Application not found + SELinux Enabled + SELinux Disabled + SELinux Status change failed + Advanced Settings + Customize the toolbar + Comeback + Background set successfully + Removed custom backgrounds + Alternate icon + Change the launcher icon to KernelSU\'s icon. + Icon switched + + Display KPM Function + Display KPM information and Function in home and bottom bar (Need to reopen the app) + + Select the WebUI engine to use + Automatic Selection + Force the use of WebUI X + Mandatory use of KSU WebUI + Inject Eruda into WebUI X + Inject a debug console into WebUI X to make debugging easier. Requires web debugging to be on. + + Applied DPI + Adjust the screen display density for the current application only + Small + Medium + Big + oversize + customizable + Applying DPI settings + Confirm DPI change + Are you sure you want to change the application DPI from %1$d to %2$d? + Application needs to be restarted to apply the new DPI settings, does not affect the system status bar or other applications + DPI has been set to %1$d, effective after restarting the application + + App Language + Follow System + Card Darkness Adjustment + + error code + Please check the log + Module being installed %1$d/%2$d + %d Failed to install a new module + Module download failed + Kernel Flashing + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + Top + Bottom + Selected + option + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-mr/strings.xml b/manager/app/src/main/res/values-mr/strings.xml new file mode 100644 index 0000000..d070c17 --- /dev/null +++ b/manager/app/src/main/res/values-mr/strings.xml @@ -0,0 +1,362 @@ + + + होम + इंस्टॉल केले नाही + इंस्टॉल साठी क्लिक करा + कार्यरत + आवृत्ती: %s + असमर्थित + KernelSU आता फक्त GKI कर्नलचे समर्थन करते + कर्नल + SuSFS Version + व्यवस्थापक आवृत्ती + SELinux स्थिती + अक्षम + एनफोर्सिंग + परमिसिव + अज्ञात + सुपरयुझर + मॉड्यूल सक्षम करण्यात अयशस्वी: %s + मॉड्यूल अक्षम करण्यात अयशस्वी: %s + कोणतेही मॉड्यूल स्थापित केलेले नाही + मॉड्यूल + Sort (Action first) + Sort (Enabled first) + विस्थापित करा + स्थापित करा + स्थापित करा + रीबूट करा + सेटिंग्ज + सॉफ्ट रीबूट + रिकवरी मध्ये रिबुट करा + बूटलोडरवर रीबूट करा + डाउनलोड करण्यासाठी रीबूट करा + EDL वर रीबूट करा + बद्दल + तुमची खात्री आहे की तुम्ही मॉड्यूल %s विस्थापित करू इच्छिता\? + %s विस्थापित + विस्थापित करण्यात अयशस्वी: %s + आवृत्ती + लेखक + रिफ्रेश करा + सिस्टम अॅप्स दाखवा + सिस्टम अॅप्स लपवा + लॉग पाठवा + सुरक्षित मोड + प्रभावी होण्यासाठी रीबूट करा + मॉड्यूल अक्षम केले आहेत कारण ते Magisk च्या विरोधाभास आहे! + KernelSU शिका + https://kernelsu.org/guide/what-is-kernelsu.html + KernelSU कसे स्थापित करायचे आणि मॉड्यूल कसे वापरायचे ते शिका + आम्हाला पाठिंबा द्या + KernelSU विनामूल्य आणि मुक्त स्रोत आहे, आणि नेहमीच असेल. तथापि, देणगी देऊन तुम्ही आम्हाला दाखवू शकता की तुमची काळजी आहे. + Join our %2$s channel]]> + डीफॉल्ट + साचा + कस्टम + प्रोफाइल नाव + गट + क्षमता + SELinux संदर्भ + उमाउंट मॉड्यूल्स + %s साठी अॅप प्रोफाइल अपडेट करण्यात अयशस्वी + The current KernelSU version %s is too low for the manager to work properly. Please upgrade to version %s or higher! + डीफॉल्टनुसार मॉड्यूल्स उमाउंट करा + अॅप प्रोफाइलमधील \"उमाउंट मॉड्यूल्स\" साठी जागतिक डीफॉल्ट मूल्य. सक्षम असल्यास, ते प्रोफाइल सेट नसलेल्या ॲप्लिकेशनचे सिस्टममधील सर्व मॉड्यूल बदल काढून टाकेल. + हा पर्याय सक्षम केल्याने KernelSU ला या ऍप्लिकेशनसाठी मॉड्यूल्सद्वारे कोणत्याही सुधारित फाइल्स पुनर्संचयित करण्यास अनुमती मिळेल. + डोमेन + नियम + अपडेट करा + मॉड्यूल डाउनलोड करत आहे: %s + डाउनलोड करणे सुरू करा: %s + नवीन आवृत्ती: %s उपलब्ध आहे, डाउनलोड करण्यासाठी क्लिक करा + लाँच करा + सक्तीने थांबा + पुन्हा सुरू करा + यासाठी SELinux नियम अपडेट करण्यात अयशस्वी: %s + Changelog + App Profile Template + Manage local and online template of App Profile + Create template + Edit template + ID + Invalid template ID + Name + Description + Save + Delete + View template + Read only + Template ID already exists! + Import/Export + Import from clipboard + Export to clipboard + Cannot find local template to export! + Imported successfully + Sync online templates + Failed to save template + Clipboard is empty! + Fetch changelog failed: %s + Check update + Automatically check for updates when opening the app + Failed to grant root! + Action + Close + Enable WebView debugging + Can be used to debug WebUI. Please enable only when needed. + Direct install (Recommended) + Select a image that needs to be patched + Install to inactive slot (After OTA) + Your device will be **FORCED** to boot to the current inactive slot after a reboot!\nOnly use this option after OTA is done.\nContinue? + Next + %1$s partition image is recommended + Select KMI + Uninstall + Uninstall temporarily + Uninstall permanently + Restore stock image + Temporarily uninstall KernelSU, restore to original state after next reboot. + Uninstalling KernelSU (Root and all modules) completely and permanently. + Restore the stock factory image (If a backup exists), usually used before OTA; if you need to uninstall KernelSU, please use \"Uninstall permanently\". + Flashing + Flash success + Flash failed + Selected LKM: %s + लॉग जतन करा + Logs saved + + confirm install module %1$s? + unknown module + + Confirm Module Restoration + This operation will overwrite all existing modules. Continue? + Confirm + Cancel + + Backup successful (tar.gz) + Backup failed: %1$s + backup modules + restore modules + + Modules restored successfully, restart required + Restore failed: %1$s + Restart Now + Unknown error + + Command execution failed: %1$s + + Allowlist backup successful + Allowlist backup failed: %1$s + Confirm Allowlist Restoration + This operation will overwrite the current allowlist. Continue? + Allowlist restored successfully + Allowlist restore failed: %1$s + Backup Allowlist + Restore Allowlist + Custom App Background + Select an image as background + Navigation bar transparency + Android version + Device model + Granting superuser to %s is not allowed + Disable su compatibility + Temporarily disable any applications from obtaining root privileges via the ⁠su command (existing root processes will not be affected). + Sure you want to install the following %1$d modules? \n\n%2$s + More settings + SELinux + Enabled + Disabled + Simplicity mode + Hides unnecessary cards when turned on + Hide kernel version + Hide kernel version + Hide other info + Hides information about the number of super users, modules and KPM modules on the home page + Hide SuSFS status + Hide SuSFS status information on the home page + Hide Link Card Status + Hide link card information on the home page + Theme + Follow system + Light + Dark + Manual Hook + Dynamic colours + Dynamic colours using system themes + Choose a theme colour + Blue + Green + Purple + Orange + Pink + Gray + Yellow + Install Anykernel3 + Flash AnyKernel3 kernel file + Requires root privileges + Scrubbing complete + Whether to reboot immediately? + Yes + No + Reboot Failed + KPM + No installed kernel modules at this time + Version + Author + Uninstall + Uninstalled successfully + Failed to uninstall + Load of kpm module successful + Load of kpm module failed + Parameters + Execute + KPM Version + Close + The following kernel module functions were developed by KernelPatch and modified to include the kernel module functions of SukiSU Ultra + SukiSU Ultra Look forward to + Success + Failed + SukiSU Ultra will be a relatively independent branch of KSU in the future, but we still appreciate the official KernelSU and MKSU etc. for their contributions! + Unsupported + Supported + Kernel not patched + Kernel not configured + Custom settings + KPM Install + Load + Embed + Please select: %1\$s Module Installation Mode \n\nLoad: Temporarily load the module \nEmbedded: Permanently install into the system + Unable to check if module file exists + Theme Color + Incorrect file type! Please select .kpm file. + Uninstall + The following KPM will be uninstalled: %s + Use two fingers to zoom the image, and one finger to drag it to adjust the position + Reprovision + + Flash Complete + + Preparing… + Cleaning files… + Copying files… + Extracting flash tool… + Patching flash script… + Flashing kernel… + Flash completed + + Select Flash Slot + Please select the target slot for flashing boot + Slot A + Slot B + Selected slot: %1$s + Getting the original slot + Setting the specified slot + Restore Default Slot + Current Slot:%1$s + + Copy failed + Unknown error + Flash failed + + LKM repair/installation + Flashing AnyKernel3 + Kernel version:%1$s + Using the patching tool:%1$s + Configure + Application Settings + Tools + + Application not found + SELinux Enabled + SELinux Disabled + SELinux Status change failed + Advanced Settings + Customize the toolbar + Comeback + Background set successfully + Removed custom backgrounds + Alternate icon + Change the launcher icon to KernelSU\'s icon. + Icon switched + + Display KPM Function + Display KPM information and Function in home and bottom bar (Need to reopen the app) + + Select the WebUI engine to use + Automatic Selection + Force the use of WebUI X + Mandatory use of KSU WebUI + Inject Eruda into WebUI X + Inject a debug console into WebUI X to make debugging easier. Requires web debugging to be on. + + Applied DPI + Adjust the screen display density for the current application only + Small + Medium + Big + oversize + customizable + Applying DPI settings + Confirm DPI change + Are you sure you want to change the application DPI from %1$d to %2$d? + Application needs to be restarted to apply the new DPI settings, does not affect the system status bar or other applications + DPI has been set to %1$d, effective after restarting the application + + App Language + Follow System + Card Darkness Adjustment + + error code + Please check the log + Module being installed %1$d/%2$d + %d Failed to install a new module + Module download failed + Kernel Flashing + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + Top + Bottom + Selected + option + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-ms/strings.xml b/manager/app/src/main/res/values-ms/strings.xml new file mode 100644 index 0000000..245e8b5 --- /dev/null +++ b/manager/app/src/main/res/values-ms/strings.xml @@ -0,0 +1,362 @@ + + + Layar Utama + Tidak terpasang + Tekan untuk memasang + Berjalan + Versi: %s + Tidak Disokong + KernelSU ketika ini hanya menyokong kernel GKI + Kernel + SuSFS Version + Versi manager + Status SELinux + Lumpuhkan + Enforcing + Permisif + Tidak Diketahui + Superuser + Modul tidak berjaya diaktifkan: %s + Gagal mematikan modul: %s + Tiada modul dipasang + Modul + Sort (Action first) + Sort (Enabled first) + Padam + Pasang + Pasang + Reboot + Tetapan + Soft Reboot + Reboot ke Recovery + Reboot ke Bootloader + Reboot ke Download + Reboot ke EDL + Tentang + Apakah anda pasti ingin membuang modul %s\? + %s uninstalled + Failed to uninstall: %s + Version + Author + Refresh + Show system apps + Hide system apps + Send logs + Safe mode + Reboot to take effect + Modules are unavailable due to a conflict with Magisk! + Learn KernelSU + https://kernelsu.org/guide/what-is-kernelsu.html + Learn how to install KernelSU and use modules + Support Us + KernelSU is, and always will be, free, and open source. You can however show us that you care by making a donation. + Join our %2$s channel]]> + Default + Template + Custom + Profile name + Groups + Capabilities + SELinux context + Umount modules + Failed to update App Profile for %s + The current KernelSU version %s is too low for the manager to work properly. Please upgrade to version %s or higher! + Umount modules by default + The global default value for \"Umount modules\" in App Profile. If enabled, it will remove all module modifications to the system for apps that don\'t have a profile set. + Enabling this option will allow KernelSU to restore any modified files by the modules for this app. + Domain + Rules + Update + Downloading module: %s + Start downloading: %s + New version %s is available, click to upgrade. + Launch + Force stop + Restart + Failed to update SELinux rules for %s + Changelog + App Profile Template + Manage local and online template of App Profile + Create template + Edit template + ID + Invalid template ID + Name + Description + Save + Delete + View template + Read only + Template ID already exists! + Import/Export + Import from clipboard + Export to clipboard + Cannot find local template to export! + Imported successfully + Sync online templates + Failed to save template + Clipboard is empty! + Fetch changelog failed: %s + Check update + Automatically check for updates when opening the app + Failed to grant root! + Action + Close + Enable WebView debugging + Can be used to debug WebUI. Please enable only when needed. + Direct install (Recommended) + Select a image that needs to be patched + Install to inactive slot (After OTA) + Your device will be **FORCED** to boot to the current inactive slot after a reboot!\nOnly use this option after OTA is done.\nContinue? + Next + %1$s partition image is recommended + Select KMI + Uninstall + Uninstall temporarily + Uninstall permanently + Restore stock image + Temporarily uninstall KernelSU, restore to original state after next reboot. + Uninstalling KernelSU (Root and all modules) completely and permanently. + Restore the stock factory image (If a backup exists), usually used before OTA; if you need to uninstall KernelSU, please use \"Uninstall permanently\". + Flashing + Flash success + Flash failed + Selected LKM: %s + Simpan Log + Logs saved + + confirm install module %1$s? + unknown module + + Confirm Module Restoration + This operation will overwrite all existing modules. Continue? + Confirm + Cancel + + Backup successful (tar.gz) + Backup failed: %1$s + backup modules + restore modules + + Modules restored successfully, restart required + Restore failed: %1$s + Restart Now + Unknown error + + Command execution failed: %1$s + + Allowlist backup successful + Allowlist backup failed: %1$s + Confirm Allowlist Restoration + This operation will overwrite the current allowlist. Continue? + Allowlist restored successfully + Allowlist restore failed: %1$s + Backup Allowlist + Restore Allowlist + Custom App Background + Select an image as background + Navigation bar transparency + Android version + Device model + Granting superuser to %s is not allowed + Disable su compatibility + Temporarily disable any applications from obtaining root privileges via the ⁠su command (existing root processes will not be affected). + Sure you want to install the following %1$d modules? \n\n%2$s + More settings + SELinux + Enabled + Disabled + Simplicity mode + Hides unnecessary cards when turned on + Hide kernel version + Hide kernel version + Hide other info + Hides information about the number of super users, modules and KPM modules on the home page + Hide SuSFS status + Hide SuSFS status information on the home page + Hide Link Card Status + Hide link card information on the home page + Theme + Follow system + Light + Dark + Manual Hook + Dynamic colours + Dynamic colours using system themes + Choose a theme colour + Blue + Green + Purple + Orange + Pink + Gray + Yellow + Install Anykernel3 + Flash AnyKernel3 kernel file + Requires root privileges + Scrubbing complete + Whether to reboot immediately? + Yes + No + Reboot Failed + KPM + No installed kernel modules at this time + Version + Author + Uninstall + Uninstalled successfully + Failed to uninstall + Load of kpm module successful + Load of kpm module failed + Parameters + Execute + KPM Version + Close + The following kernel module functions were developed by KernelPatch and modified to include the kernel module functions of SukiSU Ultra + SukiSU Ultra Look forward to + Success + Failed + SukiSU Ultra will be a relatively independent branch of KSU in the future, but we still appreciate the official KernelSU and MKSU etc. for their contributions! + Unsupported + Supported + Kernel not patched + Kernel not configured + Custom settings + KPM Install + Load + Embed + Please select: %1\$s Module Installation Mode \n\nLoad: Temporarily load the module \nEmbedded: Permanently install into the system + Unable to check if module file exists + Theme Color + Incorrect file type! Please select .kpm file. + Uninstall + The following KPM will be uninstalled: %s + Use two fingers to zoom the image, and one finger to drag it to adjust the position + Reprovision + + Flash Complete + + Preparing… + Cleaning files… + Copying files… + Extracting flash tool… + Patching flash script… + Flashing kernel… + Flash completed + + Select Flash Slot + Please select the target slot for flashing boot + Slot A + Slot B + Selected slot: %1$s + Getting the original slot + Setting the specified slot + Restore Default Slot + Current Slot:%1$s + + Copy failed + Unknown error + Flash failed + + LKM repair/installation + Flashing AnyKernel3 + Kernel version:%1$s + Using the patching tool:%1$s + Configure + Application Settings + Tools + + Application not found + SELinux Enabled + SELinux Disabled + SELinux Status change failed + Advanced Settings + Customize the toolbar + Comeback + Background set successfully + Removed custom backgrounds + Alternate icon + Change the launcher icon to KernelSU\'s icon. + Icon switched + + Display KPM Function + Display KPM information and Function in home and bottom bar (Need to reopen the app) + + Select the WebUI engine to use + Automatic Selection + Force the use of WebUI X + Mandatory use of KSU WebUI + Inject Eruda into WebUI X + Inject a debug console into WebUI X to make debugging easier. Requires web debugging to be on. + + Applied DPI + Adjust the screen display density for the current application only + Small + Medium + Big + oversize + customizable + Applying DPI settings + Confirm DPI change + Are you sure you want to change the application DPI from %1$d to %2$d? + Application needs to be restarted to apply the new DPI settings, does not affect the system status bar or other applications + DPI has been set to %1$d, effective after restarting the application + + App Language + Follow System + Card Darkness Adjustment + + error code + Please check the log + Module being installed %1$d/%2$d + %d Failed to install a new module + Module download failed + Kernel Flashing + + All + Root + Custom + Default + + Ascending order of name + Name descending + Installation time (new) + Installation time (old) + descending order of size + ascending order of size + frequency of use + + No application in this category + + + Delegation of authority + Authorizations + Unmounting Module Mounts + Disable uninstall module mounting + Expand menu + Put away the menu + Top + Bottom + Selected + option + + Menu Options + Sort by + Application Type Selection + + + + + + + + + + + + + + + + + diff --git a/manager/app/src/main/res/values-night/themes.xml b/manager/app/src/main/res/values-night/themes.xml new file mode 100644 index 0000000..d76ba8e --- /dev/null +++ b/manager/app/src/main/res/values-night/themes.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/manager/app/src/main/res/xml/backup_rules.xml b/manager/app/src/main/res/xml/backup_rules.xml new file mode 100644 index 0000000..fa0f996 --- /dev/null +++ b/manager/app/src/main/res/xml/backup_rules.xml @@ -0,0 +1,13 @@ + + + + \ No newline at end of file diff --git a/manager/app/src/main/res/xml/data_extraction_rules.xml b/manager/app/src/main/res/xml/data_extraction_rules.xml new file mode 100644 index 0000000..9ee9997 --- /dev/null +++ b/manager/app/src/main/res/xml/data_extraction_rules.xml @@ -0,0 +1,19 @@ + + + + + + + \ No newline at end of file diff --git a/manager/app/src/main/res/xml/filepaths.xml b/manager/app/src/main/res/xml/filepaths.xml new file mode 100644 index 0000000..f8a9a5c --- /dev/null +++ b/manager/app/src/main/res/xml/filepaths.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/manager/app/src/main/res/xml/network_security_config.xml b/manager/app/src/main/res/xml/network_security_config.xml new file mode 100644 index 0000000..6dd26cc --- /dev/null +++ b/manager/app/src/main/res/xml/network_security_config.xml @@ -0,0 +1,8 @@ + + + + 127.0.0.1 + 0.0.0.0 + ::1 + + diff --git a/manager/build.gradle.kts b/manager/build.gradle.kts new file mode 100644 index 0000000..396caec --- /dev/null +++ b/manager/build.gradle.kts @@ -0,0 +1,82 @@ +import com.android.build.api.dsl.ApplicationDefaultConfig +import com.android.build.api.dsl.CommonExtension +import com.android.build.gradle.api.AndroidBasePlugin + +plugins { + alias(libs.plugins.agp.app) apply false + alias(libs.plugins.agp.lib) apply false + alias(libs.plugins.kotlin) apply false + alias(libs.plugins.compose.compiler) apply false + alias(libs.plugins.lsplugin.cmaker) +} + +cmaker { + default { + arguments.addAll( + arrayOf( + "-DANDROID_STL=none", + ) + ) + abiFilters("arm64-v8a", "x86_64", "armeabi-v7a") + } + buildTypes { + if (it.name == "release") { + arguments += "-DDEBUG_SYMBOLS_PATH=${layout.buildDirectory.asFile.get().absolutePath}/symbols" + } + } +} + +val androidMinSdkVersion = 26 +val androidTargetSdkVersion = 36 +val androidCompileSdkVersion = 36 +val androidBuildToolsVersion = "36.1.0" +val androidCompileNdkVersion by extra(libs.versions.ndk.get()) +val androidCmakeVersion by extra("3.22.0+") +val androidSourceCompatibility = JavaVersion.VERSION_21 +val androidTargetCompatibility = JavaVersion.VERSION_21 +val managerVersionCode by extra(4 * 10000 + getGitCommitCount() - 2815) +val managerVersionName by extra(getGitDescribe()) + +fun getGitCommitCount(): Int { + return providers.exec { + commandLine("git", "rev-list", "--count", "HEAD") + }.standardOutput.asText.get().trim().toInt() +} + +fun getGitDescribe(): String { + return providers.exec { + commandLine("git", "describe", "--tags", "--always", "--abbrev=0") + }.standardOutput.asText.get().trim() +} + +subprojects { + plugins.withType(AndroidBasePlugin::class.java) { + extensions.configure(CommonExtension::class.java) { + compileSdk = androidCompileSdkVersion + ndkVersion = androidCompileNdkVersion + buildToolsVersion = androidBuildToolsVersion + + defaultConfig { + minSdk = androidMinSdkVersion + if (this is ApplicationDefaultConfig) { + targetSdk = androidTargetSdkVersion + versionCode = managerVersionCode + versionName = managerVersionName + } + ndk { + abiFilters += listOf("arm64-v8a", "x86_64", "armeabi-v7a") + } + } + + lint { + abortOnError = true + checkReleaseBuilds = false + } + + compileOptions { + sourceCompatibility = androidSourceCompatibility + targetCompatibility = androidTargetCompatibility + } + } + } +} diff --git a/manager/gradle.properties b/manager/gradle.properties new file mode 100644 index 0000000..980cafa --- /dev/null +++ b/manager/gradle.properties @@ -0,0 +1,8 @@ +android.experimental.enableNewResourceShrinker.preciseShrinking=true +android.enableAppCompileTimeRClass=true +android.useAndroidX=true +org.gradle.jvmargs=-Xmx2048m +org.gradle.parallel=true +org.gradle.vfs.watch=true +android.r8.maxWorkers=4 +android.native.buildOutput=verbose diff --git a/manager/gradle/libs.versions.toml b/manager/gradle/libs.versions.toml new file mode 100644 index 0000000..d9e7dd2 --- /dev/null +++ b/manager/gradle/libs.versions.toml @@ -0,0 +1,94 @@ +[versions] +accompanist-drawablepainter = "0.37.3" +agp = "8.13.1" +gson = "2.13.2" +kotlin = "2.2.21" +ksp = "2.2.21-2.0.4" +compose-bom = "2025.11.00" +lifecycle = "2.9.4" +navigation = "2.9.6" +activity-compose = "1.11.0" +kotlinx-coroutines = "1.10.2" +coil-compose = "2.7.0" +compose-destination = "2.3.0" +sheets-compose-dialogs = "1.3.0" +markdown = "4.6.2" +webkit = "1.14.0" +appiconloader-coil = "1.5.0" +parcelablelist = "2.0.1" +libsu = "6.0.0" +apksign = "1.4" +cmaker = "1.2" +compose-material = "1.9.4" +compose-material3 = "1.4.0" +compose-ui = "1.9.4" +documentfile = "1.1.0" +mmrl = "2bb00b3c2b" +ndk = "29.0.13599879-beta2" +foundation = "1.9.4" + +[plugins] +agp-app = { id = "com.android.application", version.ref = "agp" } +agp-lib = { id = "com.android.library", version.ref = "agp" } + +kotlin = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" } +compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" } + +ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" } + +lsplugin-apksign = { id = "org.lsposed.lsplugin.apksign", version.ref = "apksign" } +lsplugin-cmaker = { id = "org.lsposed.lsplugin.cmaker", version.ref = "cmaker" } + +[libraries] +accompanist-drawablepainter = { module = "com.google.accompanist:accompanist-drawablepainter", version.ref = "accompanist-drawablepainter" } +androidx-activity-compose = { group = "androidx.activity", name = "activity-compose", version.ref = "activity-compose" } + +androidx-foundation = { module = "androidx.compose.foundation:foundation" } +androidx-navigation-compose = { group = "androidx.navigation", name = "navigation-compose", version.ref = "navigation" } + +androidx-compose-bom = { group = "androidx.compose", name = "compose-bom", version.ref = "compose-bom" } +androidx-compose-material-icons-extended = { group = "androidx.compose.material", name = "material-icons-extended" } +androidx-compose-material = { group = "androidx.compose.material", name = "material", version.ref = "compose-material" } +androidx-compose-material3 = { group = "androidx.compose.material3", name = "material3", version.ref = "compose-material3" } +androidx-compose-ui = { group = "androidx.compose.ui", name = "ui", version.ref = "compose-ui" } +androidx-compose-ui-test-manifest = { group = "androidx.compose.ui", name = "ui-test-manifest" } +androidx-compose-ui-tooling = { group = "androidx.compose.ui", name = "ui-tooling" } +androidx-compose-ui-tooling-preview = { group = "androidx.compose.ui", name = "ui-tooling-preview", version.ref = "compose-ui" } + +androidx-lifecycle-runtime-ktx = { group = "androidx.lifecycle", name = "lifecycle-runtime-ktx", version.ref = "lifecycle" } +androidx-lifecycle-runtime-compose = { group = "androidx.lifecycle", name = "lifecycle-runtime-compose", version.ref = "lifecycle" } +androidx-lifecycle-viewmodel-compose = { group = "androidx.lifecycle", name = "lifecycle-viewmodel-compose", version.ref = "lifecycle" } + +androidx-webkit = { module = "androidx.webkit:webkit", version.ref = "webkit" } + +com-github-topjohnwu-libsu-core = { group = "com.github.topjohnwu.libsu", name = "core", version.ref = "libsu" } +com-github-topjohnwu-libsu-service = { group = "com.github.topjohnwu.libsu", name = "service", version.ref = "libsu" } +com-github-topjohnwu-libsu-io = { group = "com.github.topjohnwu.libsu", name = "io", version.ref = "libsu" } + +dev-rikka-rikkax-parcelablelist = { module = "dev.rikka.rikkax.parcelablelist:parcelablelist", version.ref = "parcelablelist" } + +gson = { module = "com.google.code.gson:gson", version.ref = "gson" } +io-coil-kt-coil-compose = { group = "io.coil-kt", name = "coil-compose", version.ref = "coil-compose" } + +kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "kotlinx-coroutines" } + +me-zhanghai-android-appiconloader-coil = { group = "me.zhanghai.android.appiconloader", name = "appiconloader-coil", version.ref = "appiconloader-coil" } + +compose-destinations-core = { group = "io.github.raamcosta.compose-destinations", name = "core", version.ref = "compose-destination" } +compose-destinations-ksp = { group = "io.github.raamcosta.compose-destinations", name = "ksp", version.ref = "compose-destination" } + +sheet-compose-dialogs-core = { group = "com.maxkeppeler.sheets-compose-dialogs", name = "core", version.ref = "sheets-compose-dialogs" } +sheet-compose-dialogs-list = { group = "com.maxkeppeler.sheets-compose-dialogs", name = "list", version.ref = "sheets-compose-dialogs" } +sheet-compose-dialogs-input = { group = "com.maxkeppeler.sheets-compose-dialogs", name = "input", version.ref = "sheets-compose-dialogs" } + +markdown = { group = "io.noties.markwon", name = "core", version.ref = "markdown" } + +lsposed-cxx = { module = "org.lsposed.libcxx:libcxx", version.ref = "ndk" } +androidx-documentfile = { group = "androidx.documentfile", name = "documentfile", version.ref = "documentfile" } + + +mmrl-webui = { group = "com.github.MMRLApp.MMRL", name = "webui", version.ref = "mmrl" } +mmrl-platform = { group = "com.github.MMRLApp.MMRL", name = "platform", version.ref = "mmrl" } +mmrl-ui = { group = "com.github.MMRLApp.MMRL", name = "ui", version.ref = "mmrl" } +mmrl-hidden-api = { group = "com.github.MMRLApp.MMRL", name = "hidden-api", version.ref = "mmrl" } +androidx-compose-foundation = { group = "androidx.compose.foundation", name = "foundation", version.ref = "foundation" } \ No newline at end of file diff --git a/manager/gradle/wrapper/gradle-wrapper.jar b/manager/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..1b33c55baabb587c669f562ae36f953de2481846 GIT binary patch literal 43764 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 '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/manager/gradlew.bat b/manager/gradlew.bat new file mode 100644 index 0000000..8747509 --- /dev/null +++ b/manager/gradlew.bat @@ -0,0 +1,92 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/manager/randomizer b/manager/randomizer new file mode 100644 index 0000000..2cd4e4b --- /dev/null +++ b/manager/randomizer @@ -0,0 +1,31 @@ +#! /usr/bin/env bash + +# Generate 3 random lowercase words (6 letters each) +word1=$(tr -dc 'a-z' 0 + tmp = url.removesuffix("/").replace(github, "").split("/") + print(tmp) + assert len(tmp) == 2 + maintainer = tmp[0] + print(maintainer) + maintainer_link = "%s%s" % (github, maintainer) + print(maintainer_link) + kernel_name = tmp[1] + print(kernel_name) + kernel_link = "%s%s/%s" % (github, maintainer, kernel_name) + print(kernel_link) + with open(file_name, "r") as f: + data = json.loads(f.read()) + data.append( + { + "maintainer": maintainer, + "maintainer_link": maintainer_link, + "kernel_name": kernel_name, + "kernel_link": kernel_link, + "devices": device, + } + ) + os.remove(file_name) + with open(file_name, "w") as f: + f.write(json.dumps(data, indent=4)) + os.system("echo success=true >> $GITHUB_OUTPUT") + os.system("echo device=%s >> $GITHUB_OUTPUT" % device) + + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/scripts/allowlist.bt b/scripts/allowlist.bt new file mode 100644 index 0000000..d95bb5a --- /dev/null +++ b/scripts/allowlist.bt @@ -0,0 +1,89 @@ +// Define constants as per the provided structure. +#define KSU_MAX_PACKAGE_NAME 256 +#define KSU_MAX_GROUPS 32 +#define KSU_SELINUX_DOMAIN 64 + +// Define the root_profile structure with padding for 64-bit alignment. +struct root_profile { + uint32 uid; + uint32 gid; + + uint32 groups_count; + uint32 groups[KSU_MAX_GROUPS]; + char padding1[4]; // Padding for 64-bit alignment. + + struct { + uint64 effective; + uint64 permitted; + uint64 inheritable; + } capabilities; + + char selinux_domain[KSU_SELINUX_DOMAIN]; + + uint32 namespaces; + char padding2[4]; // Padding for 64-bit alignment. +}; + +// Define the non_root_profile structure with padding for 64-bit alignment. +struct non_root_profile { + byte umount_modules; + char padding[7]; // Padding to make the total size a multiple of 8. +}; + +// Define the rp_config structure with padding for 64-bit alignment. +struct rp_config_t { + byte use_default; + + char template_name[KSU_MAX_PACKAGE_NAME]; + char padding[7]; // Padding to make the total size a multiple of 8. + + struct root_profile profile; +}; + +// Define the nrp_config structure with padding for 64-bit alignment. +struct nrp_config_t { + byte use_default; + char padding1[7]; // Padding to make the total size a multiple of 8. + + struct non_root_profile profile; + char padding2[488]; // Padding to align the union +}; + +// Define the main app_profile structure +typedef struct { + uint32 version; + char key[KSU_MAX_PACKAGE_NAME]; + int32 current_uid; + int64 allow_su; + + // Based on allow_su, decide which profile to use + if (allow_su != 0) { + rp_config_t rp_config; + } else { + nrp_config_t nrp_config; + } + +} app_profile; + +// Define the file header with magic number and version +typedef struct { + uint32 magic; + uint32 version; +} file_header; + +// Main entry for parsing the file +file_header header; + +if (header.magic != 0x7f4b5355) { + Printf("Invalid file magic number.\n"); + return; +} + +FSeek(8); // Skip the header + + +// Continually read app_profile instances until end of file +while (!FEof()) { + app_profile profile; +} + diff --git a/scripts/bin2c.py b/scripts/bin2c.py new file mode 100644 index 0000000..5851313 --- /dev/null +++ b/scripts/bin2c.py @@ -0,0 +1,51 @@ +#!/usr/bin/python3 + +import argparse +import os +import re + +line_size = 80 + + +def bin2c(filename, varname='data'): + if not os.path.isfile(filename): + print('File "%s" is not found!' % filename) + return '' + if not re.match('[a-zA-Z_][a-zA-Z0-9_]*', varname): + print('Invalid variable name "%s"' % varname) + return + with open(filename, 'rb') as in_file: + data = in_file.read() + # limit the line length + byte_len = 6 # '0x00, ' + out = 'unsigned int %s_size = %d;\n' \ + 'const char %s[%d] = {\n' % (varname, len(data), varname, len(data)) + line = '' + for byte in data: + line += '0x%02x, ' % byte + if len(line) + 4 + byte_len >= line_size: + out += ' ' * 4 + line + '\n' + line = '' + # add the last line + if len(line) + 4 + byte_len < line_size: + out += ' ' * 4 + line + '\n' + # strip the last comma + out = out.rstrip(', \n') + '\n' + out += '};' + return out + + +def main(): + """ Main func """ + parser = argparse.ArgumentParser() + parser.add_argument( + 'filename', help='filename to convert to C array') + parser.add_argument( + 'varname', nargs='?', help='variable name', default='data') + args = parser.parse_args() + # print out the data + print(bin2c(args.filename, args.varname)) + + +if __name__ == '__main__': + main() diff --git a/scripts/ksubot.py b/scripts/ksubot.py new file mode 100644 index 0000000..1b25149 --- /dev/null +++ b/scripts/ksubot.py @@ -0,0 +1,111 @@ +import asyncio +import os +import sys +from telethon import TelegramClient +from telethon.sessions import StringSession + +API_ID = 611335 +API_HASH = "d524b414d21f4d37f08684c1df41ac9c" + + +BOT_TOKEN = os.environ.get("BOT_TOKEN") +CHAT_ID = os.environ.get("CHAT_ID") +MESSAGE_THREAD_ID = os.environ.get("MESSAGE_THREAD_ID") +COMMIT_URL = os.environ.get("COMMIT_URL") +COMMIT_MESSAGE = os.environ.get("COMMIT_MESSAGE") +RUN_URL = os.environ.get("RUN_URL") +TITLE = os.environ.get("TITLE") +VERSION = os.environ.get("VERSION") +BRANCH = os.environ.get("BRANCH") +MSG_TEMPLATE = """ +**{title}** +Branch: {branch} +#ci_{version} +``` +{commit_message} +``` +[Commit]({commit_url}) +[Workflow run]({run_url}) +""".strip() + + +def get_caption(): + msg = MSG_TEMPLATE.format( + title=TITLE, + branch=BRANCH, + version=VERSION, + commit_message=COMMIT_MESSAGE, + commit_url=COMMIT_URL, + run_url=RUN_URL, + ) + if len(msg) > 1024: + return COMMIT_URL + return msg + + +def check_environ(): + global CHAT_ID, MESSAGE_THREAD_ID + if BOT_TOKEN is None: + print("[-] Invalid BOT_TOKEN") + exit(1) + if CHAT_ID is None: + print("[-] Invalid CHAT_ID") + exit(1) + else: + try: + CHAT_ID = int(CHAT_ID) + except: + pass + if COMMIT_URL is None: + print("[-] Invalid COMMIT_URL") + exit(1) + if COMMIT_MESSAGE is None: + print("[-] Invalid COMMIT_MESSAGE") + exit(1) + if RUN_URL is None: + print("[-] Invalid RUN_URL") + exit(1) + if TITLE is None: + print("[-] Invalid TITLE") + exit(1) + if VERSION is None: + print("[-] Invalid VERSION") + exit(1) + if BRANCH is None: + print("[-] Invalid BRANCH") + exit(1) + if MESSAGE_THREAD_ID and MESSAGE_THREAD_ID != "": + try: + MESSAGE_THREAD_ID = int(MESSAGE_THREAD_ID) + except: + print("[-] Invalid MESSAGE_THREAD_ID") + exit(1) + else: + MESSAGE_THREAD_ID = None + + +async def main(): + print("[+] Uploading to telegram") + check_environ() + files = sys.argv[1:] + print("[+] Files:", files) + if len(files) <= 0: + print("[-] No files to upload") + exit(1) + print("[+] Logging in Telegram with bot") + async with await TelegramClient(StringSession(), API_ID, API_HASH).start(bot_token=BOT_TOKEN) as bot: + caption = [""] * len(files) + caption[-1] = get_caption() + print("[+] Caption: ") + print("---") + print(caption) + print("---") + print("[+] Sending") + await bot.send_file(entity=CHAT_ID, file=files, caption=caption, reply_to=MESSAGE_THREAD_ID, parse_mode="markdown") + print("[+] Done!") + +if __name__ == "__main__": + try: + asyncio.run(main()) + except Exception as e: + print(f"[-] An error occurred: {e}") diff --git a/userspace/ksud/.gitignore b/userspace/ksud/.gitignore new file mode 100644 index 0000000..3c71873 --- /dev/null +++ b/userspace/ksud/.gitignore @@ -0,0 +1,2 @@ +/target +.cargo/ \ No newline at end of file diff --git a/userspace/ksud/Cargo.lock b/userspace/ksud/Cargo.lock new file mode 100644 index 0000000..aab55b7 --- /dev/null +++ b/userspace/ksud/Cargo.lock @@ -0,0 +1,1835 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 4 + +[[package]] +name = "adler2" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" + +[[package]] +name = "adler32" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234" + +[[package]] +name = "allocator-api2" +version = "0.2.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" + +[[package]] +name = "android-properties" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc7eb209b1518d6bb87b283c20095f5228ecda460da70b44f0802523dea6da04" + +[[package]] +name = "android_log-sys" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84521a3cf562bc62942e294181d9eef17eb38ceb8c68677bc49f144e4c3d4f8d" + +[[package]] +name = "android_logger" +version = "0.15.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dbb4e440d04be07da1f1bf44fb4495ebd58669372fe0cffa6e48595ac5bd88a3" +dependencies = [ + "android_log-sys", + "env_filter", + "log", +] + +[[package]] +name = "android_system_properties" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] + +[[package]] +name = "anstream" +version = "0.6.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43d5b281e737544384e969a5ccad3f1cdd24b48086a0fc1b2a5262a26b8f4f4a" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "is_terminal_polyfill", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "1.0.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78" + +[[package]] +name = "anstyle-parse" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-query" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc" +dependencies = [ + "windows-sys 0.61.2", +] + +[[package]] +name = "anstyle-wincon" +version = "3.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d" +dependencies = [ + "anstyle", + "once_cell_polyfill", + "windows-sys 0.61.2", +] + +[[package]] +name = "anyhow" +version = "1.0.100" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61" + +[[package]] +name = "arbitrary" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3d036a3c4ab069c7b410a2ce876bd74808d2d0888a82667669f8e783a898bf1" +dependencies = [ + "derive_arbitrary", +] + +[[package]] +name = "async-trait" +version = "0.1.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.110", +] + +[[package]] +name = "autocfg" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "bitflags" +version = "2.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3" + +[[package]] +name = "block-buffer" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" +dependencies = [ + "generic-array", +] + +[[package]] +name = "bumpalo" +version = "3.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46c5e41b57b8bba42a04676d81cb89e9ee8e859a1a66f80a5a72e1cb76b34d43" + +[[package]] +name = "byteorder" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" + +[[package]] +name = "bytes" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b35204fbdc0b3f4446b89fc1ac2cf84a8a68971995d0bf2e925ec7cd960f9cb3" + +[[package]] +name = "cc" +version = "1.2.46" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b97463e1064cb1b1c1384ad0a0b9c8abd0988e2a91f52606c80ef14aadb63e36" +dependencies = [ + "find-msvc-tools", + "jobserver", + "libc", + "shlex", +] + +[[package]] +name = "cfg-if" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" + +[[package]] +name = "chrono" +version = "0.4.42" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "145052bdd345b87320e369255277e3fb5152762ad123a901ef5c262dd38fe8d2" +dependencies = [ + "iana-time-zone", + "js-sys", + "num-traits", + "wasm-bindgen", + "windows-link", +] + +[[package]] +name = "clap" +version = "4.5.51" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c26d721170e0295f191a69bd9a1f93efcdb0aff38684b61ab5750468972e5f5" +dependencies = [ + "clap_builder", + "clap_derive", +] + +[[package]] +name = "clap_builder" +version = "4.5.51" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75835f0c7bf681bfd05abe44e965760fea999a5286c6eb2d59883634fd02011a" +dependencies = [ + "anstream", + "anstyle", + "clap_lex", + "strsim", +] + +[[package]] +name = "clap_derive" +version = "4.5.49" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a0b5487afeab2deb2ff4e03a807ad1a03ac532ff5a2cee5d86884440c7f7671" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn 2.0.110", +] + +[[package]] +name = "clap_lex" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1d728cc89cf3aee9ff92b05e62b19ee65a02b5702cff7d5a377e32c6ae29d8d" + +[[package]] +name = "colorchoice" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" + +[[package]] +name = "const_format" +version = "0.2.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7faa7469a93a566e9ccc1c73fe783b4a65c274c5ace346038dca9c39fe0030ad" +dependencies = [ + "const_format_proc_macros", +] + +[[package]] +name = "const_format_proc_macros" +version = "0.2.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d57c2eccfb16dbac1f4e61e206105db5820c9d26c3c472bc17c774259ef7744" +dependencies = [ + "proc-macro2", + "quote", + "unicode-xid", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" + +[[package]] +name = "core2" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b49ba7ef1ad6107f8824dbe97de947cbaac53c44e7f9756a1fba0d37c1eec505" +dependencies = [ + "memchr", +] + +[[package]] +name = "cpufeatures" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" +dependencies = [ + "libc", +] + +[[package]] +name = "crc" +version = "3.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9710d3b3739c2e349eb44fe848ad0b7c8cb1e42bd87ee49371df2f7acaf3e675" +dependencies = [ + "crc-catalog", +] + +[[package]] +name = "crc-catalog" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" + +[[package]] +name = "crc32fast" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "crossbeam" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1137cd7e7fc0fb5d3c5a8678be38ec56e819125d8d7907411fe24ccb943faca8" +dependencies = [ + "crossbeam-channel", + "crossbeam-deque", + "crossbeam-epoch", + "crossbeam-queue", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-channel" +version = "0.5.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-deque" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" +dependencies = [ + "crossbeam-epoch", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.9.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-queue" +version = "0.3.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f58bbc28f91df819d0aa2a2c00cd19754769c2fad90579b3592b1c9ba7a3115" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" + +[[package]] +name = "crypto-common" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a" +dependencies = [ + "generic-array", + "typenum", +] + +[[package]] +name = "dary_heap" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06d2e3287df1c007e74221c49ca10a95d557349e54b3a75dc2fb14712c751f04" + +[[package]] +name = "deflate64" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26bf8fc351c5ed29b5c2f0cbbac1b209b74f60ecd62e675a998df72c49af5204" + +[[package]] +name = "deranged" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ececcb659e7ba858fb4f10388c250a7252eb0a27373f1a72b8748afdd248e587" +dependencies = [ + "powerfmt", +] + +[[package]] +name = "derive-new" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2cdc8d50f426189eef89dac62fabfa0abb27d5cc008f25bf4156a0203325becc" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.110", +] + +[[package]] +name = "derive_arbitrary" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e567bd82dcff979e4b03460c307b3cdc9e96fde3d73bed1496d2bc75d9dd62a" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.110", +] + +[[package]] +name = "digest" +version = "0.10.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +dependencies = [ + "block-buffer", + "crypto-common", +] + +[[package]] +name = "either" +version = "1.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" + +[[package]] +name = "encoding_rs" +version = "0.8.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "env_filter" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bf3c259d255ca70051b30e2e95b5446cdb8949ac4cd22c0d7fd634d89f568e2" +dependencies = [ + "log", +] + +[[package]] +name = "env_home" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7f84e12ccf0a7ddc17a6c41c93326024c42920d7ee630d04950e6926645c0fe" + +[[package]] +name = "env_logger" +version = "0.11.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13c863f0904021b108aa8b2f55046443e6b1ebde8fd4a15c399893aae4fa069f" +dependencies = [ + "env_filter", + "log", +] + +[[package]] +name = "equivalent" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" + +[[package]] +name = "errno" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1" +dependencies = [ + "errno-dragonfly", + "libc", + "winapi", +] + +[[package]] +name = "errno" +version = "0.3.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" +dependencies = [ + "libc", + "windows-sys 0.61.2", +] + +[[package]] +name = "errno-dragonfly" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" +dependencies = [ + "cc", + "libc", +] + +[[package]] +name = "extattr" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b59f8a77817ff1b795adafc535941bdf664184f5f95e0b6d1d77dd6d12815dc" +dependencies = [ + "bitflags 1.3.2", + "errno 0.2.8", + "libc", +] + +[[package]] +name = "fastrand" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" + +[[package]] +name = "find-msvc-tools" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a3076410a55c90011c298b04d0cfa770b00fa04e1e3c97d3f6c9de105a03844" + +[[package]] +name = "flate2" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfe33edd8e85a12a67454e37f8c75e730830d83e313556ab9ebf9ee7fbeb3bfb" +dependencies = [ + "crc32fast", + "libz-rs-sys", + "miniz_oxide", +] + +[[package]] +name = "foldhash" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" + +[[package]] +name = "fsevent-sys" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2" +dependencies = [ + "libc", +] + +[[package]] +name = "generic-array" +version = "0.14.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +dependencies = [ + "typenum", + "version_check", +] + +[[package]] +name = "getopts" +version = "0.2.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfe4fbac503b8d1f88e6676011885f34b7174f46e59956bba534ba83abded4df" +dependencies = [ + "unicode-width", +] + +[[package]] +name = "getrandom" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" +dependencies = [ + "cfg-if", + "libc", + "r-efi", + "wasip2", +] + +[[package]] +name = "hashbrown" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" +dependencies = [ + "allocator-api2", + "equivalent", + "foldhash", +] + +[[package]] +name = "heck" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + +[[package]] +name = "hex" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" + +[[package]] +name = "humansize" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6cb51c9a029ddc91b07a787f1d86b53ccfa49b0e86688c946ebe8d3555685dd7" +dependencies = [ + "libm", +] + +[[package]] +name = "iana-time-zone" +version = "0.1.64" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33e57f83510bb73707521ebaffa789ec8caf86f9657cad665b092b581d40e9fb" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "log", + "wasm-bindgen", + "windows-core", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + +[[package]] +name = "include-flate" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e01b7cb6ca682a621e7cda1c358c9724b53a7b4409be9be1dd443b7f3a26f998" +dependencies = [ + "include-flate-codegen", + "include-flate-compress", + "libflate", + "zstd", +] + +[[package]] +name = "include-flate-codegen" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f49bf5274aebe468d6e6eba14a977eaf1efa481dc173f361020de70c1c48050" +dependencies = [ + "include-flate-compress", + "libflate", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 2.0.110", + "zstd", +] + +[[package]] +name = "include-flate-compress" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eae6a40e716bcd5931f5dbb79cd921512a4f647e2e9413fded3171fca3824dbc" +dependencies = [ + "libflate", + "zstd", +] + +[[package]] +name = "indexmap" +version = "2.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6717a8d2a5a929a1a2eb43a12812498ed141a0bcfb7e8f7844fbdbe4303bba9f" +dependencies = [ + "equivalent", + "hashbrown", +] + +[[package]] +name = "inotify" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f37dccff2791ab604f9babef0ba14fbe0be30bd368dc541e2b08d07c8aa908f3" +dependencies = [ + "bitflags 2.10.0", + "inotify-sys", + "libc", +] + +[[package]] +name = "inotify-sys" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" +dependencies = [ + "libc", +] + +[[package]] +name = "is_executable" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baabb8b4867b26294d818bf3f651a454b6901431711abb96e296245888d6e8c4" +dependencies = [ + "windows-sys 0.60.2", +] + +[[package]] +name = "is_terminal_polyfill" +version = "1.70.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695" + +[[package]] +name = "itoa" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" + +[[package]] +name = "java-properties" +version = "2.0.0" +source = "git+https://github.com/Kernel-SU/java-properties.git?branch=master#42a4aa941b70ded2dd3be9e9f892471023e70229" +dependencies = [ + "encoding_rs", + "lazy_static", + "regex-lite", +] + +[[package]] +name = "jobserver" +version = "0.1.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9afb3de4395d6b3e67a780b6de64b51c978ecf11cb9a462c66be7d4ca9039d33" +dependencies = [ + "getrandom", + "libc", +] + +[[package]] +name = "js-sys" +version = "0.3.82" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b011eec8cc36da2aab2d5cff675ec18454fad408585853910a202391cf9f8e65" +dependencies = [ + "once_cell", + "wasm-bindgen", +] + +[[package]] +name = "jwalk" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2735847566356cd2179a2a38264839308f7079fa96e6bd5a42d740460e003c56" +dependencies = [ + "crossbeam", + "rayon", +] + +[[package]] +name = "kqueue" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eac30106d7dce88daf4a3fcb4879ea939476d5074a9b7ddd0fb97fa4bed5596a" +dependencies = [ + "kqueue-sys", + "libc", +] + +[[package]] +name = "kqueue-sys" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b" +dependencies = [ + "bitflags 1.3.2", + "libc", +] + +[[package]] +name = "ksud" +version = "0.1.0" +dependencies = [ + "android-properties", + "android_logger", + "anyhow", + "chrono", + "clap", + "const_format", + "derive-new", + "encoding_rs", + "env_logger", + "extattr", + "getopts", + "humansize", + "is_executable", + "java-properties", + "jwalk", + "libc", + "log", + "nom", + "notify", + "regex-lite", + "rust-embed", + "rustix 0.38.34", + "serde", + "serde_json", + "sha1", + "sha256", + "tempfile", + "which", + "zip 6.0.0", + "zip-extensions", +] + +[[package]] +name = "lazy_static" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" + +[[package]] +name = "libc" +version = "0.2.177" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2874a2af47a2325c2001a6e6fad9b16a53b802102b528163885171cf92b15976" + +[[package]] +name = "libflate" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3248b8d211bd23a104a42d81b4fa8bb8ac4a3b75e7a43d85d2c9ccb6179cd74" +dependencies = [ + "adler32", + "core2", + "crc32fast", + "dary_heap", + "libflate_lz77", +] + +[[package]] +name = "libflate_lz77" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a599cb10a9cd92b1300debcef28da8f70b935ec937f44fcd1b70a7c986a11c5c" +dependencies = [ + "core2", + "hashbrown", + "rle-decode-fast", +] + +[[package]] +name = "libm" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de" + +[[package]] +name = "libz-rs-sys" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "840db8cf39d9ec4dd794376f38acc40d0fc65eec2a8f484f7fd375b84602becd" +dependencies = [ + "zlib-rs", +] + +[[package]] +name = "linux-raw-sys" +version = "0.4.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" + +[[package]] +name = "linux-raw-sys" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" + +[[package]] +name = "log" +version = "0.4.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" + +[[package]] +name = "lzma-rs" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "297e814c836ae64db86b36cf2a557ba54368d03f6afcd7d947c266692f71115e" +dependencies = [ + "byteorder", + "crc", +] + +[[package]] +name = "lzma-rust2" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c60a23ffb90d527e23192f1246b14746e2f7f071cb84476dd879071696c18a4a" +dependencies = [ + "crc", + "sha2", +] + +[[package]] +name = "lzma-sys" +version = "0.1.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27" +dependencies = [ + "cc", + "libc", + "pkg-config", +] + +[[package]] +name = "memchr" +version = "2.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273" + +[[package]] +name = "miniz_oxide" +version = "0.8.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" +dependencies = [ + "adler2", + "simd-adler32", +] + +[[package]] +name = "mio" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69d83b0086dc8ecf3ce9ae2874b2d1290252e2a30720bea58a5c6639b0092873" +dependencies = [ + "libc", + "log", + "wasi", + "windows-sys 0.61.2", +] + +[[package]] +name = "nom" +version = "8.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df9761775871bdef83bee530e60050f7e54b1105350d6884eb0fb4f46c2f9405" +dependencies = [ + "memchr", +] + +[[package]] +name = "notify" +version = "8.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d3d07927151ff8575b7087f245456e549fea62edf0ec4e565a5ee50c8402bc3" +dependencies = [ + "bitflags 2.10.0", + "fsevent-sys", + "inotify", + "kqueue", + "libc", + "log", + "mio", + "notify-types", + "walkdir", + "windows-sys 0.60.2", +] + +[[package]] +name = "notify-types" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e0826a989adedc2a244799e823aece04662b66609d96af8dff7ac6df9a8925d" + +[[package]] +name = "num-conv" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" + +[[package]] +name = "num-traits" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +dependencies = [ + "autocfg", +] + +[[package]] +name = "once_cell" +version = "1.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" + +[[package]] +name = "once_cell_polyfill" +version = "1.70.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" + +[[package]] +name = "pin-project-lite" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" + +[[package]] +name = "pkg-config" +version = "0.3.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" + +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + +[[package]] +name = "proc-macro-error" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +dependencies = [ + "proc-macro-error-attr", + "proc-macro2", + "quote", + "syn 1.0.109", + "version_check", +] + +[[package]] +name = "proc-macro-error-attr" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +dependencies = [ + "proc-macro2", + "quote", + "version_check", +] + +[[package]] +name = "proc-macro2" +version = "1.0.103" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ee95bc4ef87b8d5ba32e8b7714ccc834865276eab0aed5c9958d00ec45f49e8" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "quote" +version = "1.0.42" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a338cc41d27e6cc6dce6cefc13a0729dfbb81c262b1f519331575dd80ef3067f" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "r-efi" +version = "5.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" + +[[package]] +name = "rayon" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "368f01d005bf8fd9b1206fb6fa653e6c4a81ceb1466406b81792d87c5677a58f" +dependencies = [ + "either", + "rayon-core", +] + +[[package]] +name = "rayon-core" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22e18b0f0062d30d4230b2e85ff77fdfe4326feb054b9783a3460d8435c8ab91" +dependencies = [ + "crossbeam-deque", + "crossbeam-utils", +] + +[[package]] +name = "regex-lite" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d942b98df5e658f56f20d592c7f868833fe38115e65c33003d8cd224b0155da" + +[[package]] +name = "rle-decode-fast" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3582f63211428f83597b51b2ddb88e2a91a9d52d12831f9d08f5e624e8977422" + +[[package]] +name = "rust-embed" +version = "8.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "947d7f3fad52b283d261c4c99a084937e2fe492248cb9a68a8435a861b8798ca" +dependencies = [ + "include-flate", + "rust-embed-impl", + "rust-embed-utils", + "walkdir", +] + +[[package]] +name = "rust-embed-impl" +version = "8.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5fa2c8c9e8711e10f9c4fd2d64317ef13feaab820a4c51541f1a8c8e2e851ab2" +dependencies = [ + "proc-macro2", + "quote", + "rust-embed-utils", + "syn 2.0.110", + "walkdir", +] + +[[package]] +name = "rust-embed-utils" +version = "8.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60b161f275cb337fe0a44d924a5f4df0ed69c2c39519858f931ce61c779d3475" +dependencies = [ + "sha2", + "walkdir", +] + +[[package]] +name = "rustix" +version = "0.38.34" +source = "git+https://github.com/Kernel-SU/rustix.git?rev=4a53fbc7cb7a07cabe87125cc21dbc27db316259#4a53fbc7cb7a07cabe87125cc21dbc27db316259" +dependencies = [ + "bitflags 2.10.0", + "errno 0.3.14", + "itoa", + "libc", + "linux-raw-sys 0.4.15", + "once_cell", + "windows-sys 0.52.0", +] + +[[package]] +name = "rustix" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e" +dependencies = [ + "bitflags 2.10.0", + "errno 0.3.14", + "libc", + "linux-raw-sys 0.11.0", + "windows-sys 0.61.2", +] + +[[package]] +name = "rustversion" +version = "1.0.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" + +[[package]] +name = "ryu" +version = "1.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" + +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "serde" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" +dependencies = [ + "serde_core", + "serde_derive", +] + +[[package]] +name = "serde_core" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.110", +] + +[[package]] +name = "serde_json" +version = "1.0.145" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c" +dependencies = [ + "itoa", + "memchr", + "ryu", + "serde", + "serde_core", +] + +[[package]] +name = "sha1" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest", +] + +[[package]] +name = "sha2" +version = "0.10.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest", +] + +[[package]] +name = "sha256" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f880fc8562bdeb709793f00eb42a2ad0e672c4f883bbe59122b926eca935c8f6" +dependencies = [ + "async-trait", + "bytes", + "hex", + "sha2", + "tokio", +] + +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + +[[package]] +name = "simd-adler32" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" + +[[package]] +name = "strsim" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" + +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.110" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a99801b5bd34ede4cf3fc688c5919368fea4e4814a4664359503e6015b280aea" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "tempfile" +version = "3.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d31c77bdf42a745371d260a26ca7163f1e0924b64afa0b688e61b5a9fa02f16" +dependencies = [ + "fastrand", + "getrandom", + "once_cell", + "rustix 1.1.2", + "windows-sys 0.61.2", +] + +[[package]] +name = "time" +version = "0.3.44" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91e7d9e3bb61134e77bde20dd4825b97c010155709965fedf0f49bb138e52a9d" +dependencies = [ + "deranged", + "num-conv", + "powerfmt", + "serde", + "time-core", +] + +[[package]] +name = "time-core" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40868e7c1d2f0b8d73e4a8c7f0ff63af4f6d19be117e90bd73eb1d62cf831c6b" + +[[package]] +name = "tokio" +version = "1.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff360e02eab121e0bc37a2d3b4d4dc622e6eda3a8e5253d5435ecf5bd4c68408" +dependencies = [ + "bytes", + "pin-project-lite", +] + +[[package]] +name = "typenum" +version = "1.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" + +[[package]] +name = "unicode-ident" +version = "1.0.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9312f7c4f6ff9069b165498234ce8be658059c6728633667c526e27dc2cf1df5" + +[[package]] +name = "unicode-width" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254" + +[[package]] +name = "unicode-xid" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" + +[[package]] +name = "utf8parse" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" + +[[package]] +name = "version_check" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" + +[[package]] +name = "walkdir" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" +dependencies = [ + "same-file", + "winapi-util", +] + +[[package]] +name = "wasi" +version = "0.11.1+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" + +[[package]] +name = "wasip2" +version = "1.0.1+wasi-0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7" +dependencies = [ + "wit-bindgen", +] + +[[package]] +name = "wasm-bindgen" +version = "0.2.105" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da95793dfc411fbbd93f5be7715b0578ec61fe87cb1a42b12eb625caa5c5ea60" +dependencies = [ + "cfg-if", + "once_cell", + "rustversion", + "wasm-bindgen-macro", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.105" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04264334509e04a7bf8690f2384ef5265f05143a4bff3889ab7a3269adab59c2" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.105" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "420bc339d9f322e562942d52e115d57e950d12d88983a14c79b86859ee6c7ebc" +dependencies = [ + "bumpalo", + "proc-macro2", + "quote", + "syn 2.0.110", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.105" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76f218a38c84bcb33c25ec7059b07847d465ce0e0a76b995e134a45adcb6af76" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "which" +version = "8.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3fabb953106c3c8eea8306e4393700d7657561cb43122571b172bbfb7c7ba1d" +dependencies = [ + "env_home", + "rustix 1.1.2", + "winsafe", +] + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-util" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" +dependencies = [ + "windows-sys 0.61.2", +] + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows-core" +version = "0.62.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" +dependencies = [ + "windows-implement", + "windows-interface", + "windows-link", + "windows-result", + "windows-strings", +] + +[[package]] +name = "windows-implement" +version = "0.60.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.110", +] + +[[package]] +name = "windows-interface" +version = "0.59.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.110", +] + +[[package]] +name = "windows-link" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" + +[[package]] +name = "windows-result" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5" +dependencies = [ + "windows-link", +] + +[[package]] +name = "windows-strings" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091" +dependencies = [ + "windows-link", +] + +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.60.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" +dependencies = [ + "windows-targets 0.53.5", +] + +[[package]] +name = "windows-sys" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" +dependencies = [ + "windows-link", +] + +[[package]] +name = "windows-targets" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +dependencies = [ + "windows_aarch64_gnullvm 0.52.6", + "windows_aarch64_msvc 0.52.6", + "windows_i686_gnu 0.52.6", + "windows_i686_gnullvm 0.52.6", + "windows_i686_msvc 0.52.6", + "windows_x86_64_gnu 0.52.6", + "windows_x86_64_gnullvm 0.52.6", + "windows_x86_64_msvc 0.52.6", +] + +[[package]] +name = "windows-targets" +version = "0.53.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" +dependencies = [ + "windows-link", + "windows_aarch64_gnullvm 0.53.1", + "windows_aarch64_msvc 0.53.1", + "windows_i686_gnu 0.53.1", + "windows_i686_gnullvm 0.53.1", + "windows_i686_msvc 0.53.1", + "windows_x86_64_gnu 0.53.1", + "windows_x86_64_gnullvm 0.53.1", + "windows_x86_64_msvc 0.53.1", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + +[[package]] +name = "windows_i686_gnu" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "960e6da069d81e09becb0ca57a65220ddff016ff2d6af6a223cf372a506593a3" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" + +[[package]] +name = "windows_i686_msvc" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" + +[[package]] +name = "winsafe" +version = "0.0.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d135d17ab770252ad95e9a872d365cf3090e3be864a34ab46f48555993efc904" + +[[package]] +name = "wit-bindgen" +version = "0.46.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59" + +[[package]] +name = "xz2" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "388c44dc09d76f1536602ead6d325eb532f5c122f17782bd57fb47baeeb767e2" +dependencies = [ + "lzma-sys", +] + +[[package]] +name = "zip" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12598812502ed0105f607f941c386f43d441e00148fce9dec3ca5ffb0bde9308" +dependencies = [ + "arbitrary", + "crc32fast", + "flate2", + "indexmap", + "lzma-rs", + "memchr", + "xz2", + "zopfli", +] + +[[package]] +name = "zip" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb2a05c7c36fde6c09b08576c9f7fb4cda705990f73b58fe011abf7dfb24168b" +dependencies = [ + "arbitrary", + "crc32fast", + "deflate64", + "flate2", + "indexmap", + "lzma-rust2", + "memchr", + "time", + "zopfli", +] + +[[package]] +name = "zip-extensions" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f105becb0a5da773e655775dd05fee454ca1475bcc980ec9d940a02f42cee40" +dependencies = [ + "zip 3.0.0", +] + +[[package]] +name = "zlib-rs" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f06ae92f42f5e5c42443fd094f245eb656abf56dd7cce9b8b263236565e00f2" + +[[package]] +name = "zopfli" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f05cd8797d63865425ff89b5c4a48804f35ba0ce8d125800027ad6017d2b5249" +dependencies = [ + "bumpalo", + "crc32fast", + "log", + "simd-adler32", +] + +[[package]] +name = "zstd" +version = "0.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e91ee311a569c327171651566e07972200e76fcfe2242a4fa446149a3881c08a" +dependencies = [ + "zstd-safe", +] + +[[package]] +name = "zstd-safe" +version = "7.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f49c4d5f0abb602a93fb8736af2a4f4dd9512e36f7f570d66e65ff867ed3b9d" +dependencies = [ + "zstd-sys", +] + +[[package]] +name = "zstd-sys" +version = "2.0.16+zstd.1.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91e19ebc2adc8f83e43039e79776e3fda8ca919132d68a1fed6a5faca2683748" +dependencies = [ + "cc", + "pkg-config", +] diff --git a/userspace/ksud/Cargo.toml b/userspace/ksud/Cargo.toml new file mode 100644 index 0000000..ec56275 --- /dev/null +++ b/userspace/ksud/Cargo.toml @@ -0,0 +1,66 @@ +[package] +name = "ksud" +version = "0.1.0" +edition = "2024" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +notify = "8.2" +anyhow = "1" +clap = { version = "4", features = ["derive"] } +const_format = "0.2" +zip = { version = "6", features = [ + "deflate", + "deflate64", + "time", + "lzma", + "xz", +], default-features = false } +zip-extensions = { version = "0.8", features = [ + "deflate", + "lzma", + "xz", +], default-features = false } +java-properties = { git = "https://github.com/Kernel-SU/java-properties.git", branch = "master", default-features = false } +log = "0.4" +env_logger = { version = "0.11", default-features = false } +serde_json = "1" +encoding_rs = "0.8" +humansize = "2" +libc = "0.2" +extattr = "1" +jwalk = "0.8" +is_executable = "1" +nom = "8" +derive-new = "0.7" +rust-embed = { version = "8", features = [ + "debug-embed", + "compression", # must clean build after updating binaries +] } +which = "8" +getopts = "0.2" +sha256 = "1" +sha1 = "0.10" +tempfile = "3" +chrono = "0.4" +regex-lite = "0.1" +serde = { version = "1.0", features = ["derive"] } + +[target.'cfg(any(target_os = "android", target_os = "linux"))'.dependencies] +rustix = { git = "https://github.com/Kernel-SU/rustix.git", rev = "4a53fbc7cb7a07cabe87125cc21dbc27db316259", features = [ + "all-apis", +] } +# some android specific dependencies which compiles under unix are also listed here for convenience of coding +android-properties = { version = "0.2", features = ["bionic-deprecated"] } + +[target.'cfg(target_os = "android")'.dependencies] +android_logger = { version = "0.15", default-features = false } + +[profile.release] +overflow-checks = false +codegen-units = 1 +lto = "fat" +opt-level = 3 +strip = true +split-debuginfo = "unpacked" diff --git a/userspace/ksud/bin/.gitignore b/userspace/ksud/bin/.gitignore new file mode 100644 index 0000000..1464b7e --- /dev/null +++ b/userspace/ksud/bin/.gitignore @@ -0,0 +1 @@ +**/*.ko \ No newline at end of file diff --git a/userspace/ksud/bin/aarch64/bootctl b/userspace/ksud/bin/aarch64/bootctl new file mode 100644 index 0000000000000000000000000000000000000000..cf5c61368467dace2edde81e880868f076cb2f5c GIT binary patch literal 154248 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

Nf7BS@ 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 literal 0 HcmV?d00001 diff --git a/userspace/ksud/bin/aarch64/busybox b/userspace/ksud/bin/aarch64/busybox new file mode 100755 index 0000000000000000000000000000000000000000..2fd8bcfa56cfad233d19924f867d6999dad49051 GIT binary patch literal 1710600 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

J1tqu;;_6{GDxUAb{iy-IR(;p#bM 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≤n#p#r@a7}He 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 z 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�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

^gC3U@l{gpCtBa@6cz1KG$eM@;yxRHO5 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 M#ny1$&9 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

Bn@&`w?kBl*|*m6ahKYGiCv*Y@m!LwzD5a;wH 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≫cy`n`zG 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%0Ak3jQQ+6XS^8=-Uyel zx9`l3-(DHRkA%L`&^Pd-0C^q#D-_3(t69U^up}BQ5{UJ9~{zv&=QDnRGMZQ*(kX zx8Zjq7c=$Jp%KljXH+Jb6Brc3mCevR#)H3SlsQIQ!`aAIp*>P z`#v|X;=7`FeM|;V+!lBNo%C3qjbn)y^E#}?!bB?+&FdPwpOf!#G7Mi&&Z}bf zRJqzG4z?K|%y4_VM-xi>aL$JJIozB}$*<-85&LYY%N_|UApS+r5_jPaEi z?R0Zrk%uuBm#O`PWzCFH?RzxFvODkNZupJFi8L~oMr>YN7}@CNO!al$83(eKAru3XD=^C0kse7zS+F1xCzuX-@^ zp-=Kf&Dlb}QN;tLAv^0k*$h5=2t7=4<{8D@U02n2_3}v80m}4S z%D)4?%>ajfbMF|_NPT?FALX+)FFCoZM)IQ>V;tn%UAyFmQ=N`Sw-!;qmOE~89FOEw zQ$N@7(AJN+|25l{ld{*DyOA8pChA*C3qBd^Q**LqTKIn7LKl1_D%)DfP1xRodyvHh z>lf>>gJJLNhW|^BkbmqqyR`7oI#jXdYnTRv{ zqkL$)d`4~TA@M06_U39%hIzElVNb+4N4Hq*Uo zkt+9}ir53v5%SP=*GML04wGr`%ZD847q4k-_d(6Fvb1d33e&k#?v8wi+8t8DIXV>S9<^F(j z)<|&JM%gy*yY#QI?0imFQf}MNs@$g3Uiau7h26;Sx(k?n?nO@8(!qEwKe7#NbZbqy zXI=PFE86Bin{`j~Ze^}Flq2hLCxPCz0SnJ3+|kDPk_THOkR`nN7kN?DZTPf%+~V=> zrA^FT_5XnU66-U#p_28sEIa>vyuDV@_0;L+&)|sa$-hwvPZKS=f_q0~zuJB%k}ADf zabx=K#Q~jP{F**I&zROT&(6>BbvUeDeb9gL)Q-=iXCdmA`BN?KOlkth>2H(OJj!gZ zwC8PqbF*!4bd&qGGN5}W;(6|ifJ@{R^gm>&V+#_&pFx33yWBGKkk2o{ zHlyD&u8H2yl!@HAcf*A(kAP)DO!Wzlw}dtGb1>e_EWKeo?JLHPy?=hGjDoS7L@h#@>A3LDA2dHvNp_8#pHa<0f}+MgLINfpP76 z8JYDkG$f7-s{1x|>JL=dzNvWmI@S|ix~uriB;dgvM1viD4ajB1O_4n%eXdb#=Lcd?QRzloHv8!KguLsugdr12kb9aP2O8=sF z-L1fku?in_zE%F`c->E_%l@_JW9wV0`^ndJx2kS@E}#DATrOoUnnN@D&HYJ|sr}T^ z&suZmccCd_UK-cp*!S9}f_Wz}hyK}PbJNdn!6m_OIq-Yz8}QRNU%~oNMgMcLy4O?p z!Ee;HVg31kj;}a2zOcr3sKnHM?uf$e#pz#-Z`vuacnVk$v;Gy_?h`EN*To(d+!p*V zbNOm~M=Sa_#>Q99_-^{&#&_&L$LC;tuW3y`Nwjf6>o0tuY-jP&6tjWwj z*}-DR3{!i|(Vq-%bZhVL9B+gdg0tt8c{DN)a?N}-k6O)x@x|AF9CZ~(y@Rz7O{%^O znsQ}r6vv6@S%!_ur}1;XT68atE23kn@4v*Ksywk(?4?%du=t+r5kBa^PNh(~Cni2-o8KL%AV!-zxg^tu6U{?6p+h^ZcIt<)UworjtaI6`&MXFqL%x0C;|1X@R#ZHtJ> zjPbsa9m|ey$A$wfiq0)97-Vj#tOxsGvin5s+s)wqso&m2e8@iOO^ju~YmA*+_$2b# z`!~Y3V!7WRqW`?xtw3HXJ_O_~!3-Md-EiH>mV9WV9qWM4-$A`rY*^SOHx*!G8vrlz zc~<>f`R#LA?bWQ=OPq^F4k`07$D`=Gi#VgIwG=%l8EMCIFPk8_ntdSsLiL+jPuUR^ zWA#J6tsjIfm$QDNoBVD()i(3e$}!7znDXRl3hOL z`-?{VrhWpFA)=Rveb!bOUE<2rP<%wLwn7i3$N6{U{pB~`dyYRS^g7Pye>XKF>Y5c~A%On(n2qvA&Xzw^LtzevdwD z*)#Yl?D*|H>_f?{ZgRQxV!J4J6fLRa8=VbpW^6iZ0KXmHi7p&(6TF{~LfW|Ni%5GI zS-g#Lzs0)1yAE2w+zGF%d~t+XFPPZ+rpx$%dA$5d_Kt1WL)O*a)c7R3YaM4WK0kZt zr0(-!TsH!TcpL2NodxsBo2vF%(=D{)zT4MV4O~Uf?EYIvn@Q}c_+F!Ir}f@+lYB}U zxWU<8uSwM2J4Hsj{Px5&?YD(~Ygt;VWlH#SNe;Pn%)D;_S10o9kGWg87Pttf<F~P`2c6x9;A^Ur|A4j$qp0NVaoW^UeHx=BRbnURwEp=x|hjb6ca&(Hd(l z;U!?+O2ekOXwAaDHN%k43KQ+T^L2wN`p_wM$;R3J7`DNyu`e@i~QxQ7Xw%MfeX1Y~{LNqZi~CPo{P z&E%GHxu4#Itw!bhC=-15kgI8Rm9vi=prJ1}TK%5#U7j{JrlTO`)e}n zyQ;tbW}w^(eL?*m>c!hq9L7I*K2FTsG3L1!-Rc;7rh~hP{NQZGW`{|m9UptEBQsV; zA44f?<$i!pjh#4$gy9QT7C-|#xDQ6(6_5+-q2I7i$YG95YtN^d^{E99^MT8^!I@X> zyLJ-H`>}b|F_y*b&&3bsm?Hf2uZ{Hu*x#J(wff<|yPgI9eJ)S1_h(lBYeysPMTu7b z&nY`H_bNL+{yf?rSan(8c4Chn{PzESM$X>P@Hxr$vJ>vtUG+Ze&_4XMe{2PJ!G*h7 z8|eW$w!?eeMiK^MTU_F7;$2fMnT`=CaFkB{Onw#)O#KdbUgt3T7;kMeJG zmUf0M_q5j{GrWK-;ioU*aR<0nNPWeme&x5{GQ)fu9^FIysp21N=M-(6R8A}yI<5~H zguA4M%lG>zYf{g;H=~CzM&ik={#*FH^!~47Mr^*cyV%YN1g+a?<)@mT0VAL2=@#j@ zxxv4EpV*43B=&X|dpn!GJ(9hh!`{wiZ;#@>FbD9qly}e@DFqk#Kd{(kHbZx_tu-~r z1>@v=d(Zqe*`NAr<=N#dD{%_mYrvQN%>RA(_7})pYu-c$-sD(T#Jnx`4RYYw-SC9G zsg7vea98aAZpX5GXjWcF?77*oOfj>y^L+j10zbtbeFzM0;aT=il~1Kyd%K5c&dh{l zSDerOZiAj=I(+>r$q9NZ@N*{;r{`3hL}u{c=-rOG`)xm{hyA2|`Y7w7{7)IwJ1RUz zPkfF4?jgEQDFgiT1e%V9EXp0G^O$Ed7sqsKgvR)H^xr+e zYb<}@iFXR`de(}zj`Awj`SR~^N7Dt8eX~E>&bgym)va%}&EcF!SJ&sW79IE;JKRS; zeCsnj>))Eu8T|Y=;nzMNy+P%pKPuoXQqM<{p+|YeC#z^nzeWEX&HmIilnntt-TAG^ zY3acMY~kTKRw#kJHvrDc|E~INDIHg7EaACU$U*%bt9|#WT=L)mbg&25==o*nK7v9^ znDa^z==NvGw&1;Y3^vVy=X{O&UBP`i(9eC)b+x^H&YGHgX|n^H|J&^Aeb~)ZUO=Dg z?Q(p0yG~`CQCi{TKXUR);*bx(s}hIH#+2)=quwg&Xg_d|(v%|E;s307 zLfQUCd9QKcr`4EBeIey;=scKIDtXu*3*X+rxBC50Vp)#N{fW9KVN5=YvG;H27JGTrjFmO;`3KbFxT+gjxi&a;EU@MpaY4}foQxLx8HHsl_N-t zp+T%^6YUF63JR=L=G*UgY^n)dCtu^bngZr(rM51Ag6G4~hnsWq&F-<5!N=0I_xGc) zX=amOZ($$yl6K*H8ZryCtt1RhRxWGofAeLF(U}9i-;&SSXYLx1URQpkr6pCzvVUZ@^)h1-_0JL@`*px$=wUci~X9@2dqskHXrxus?ZBVGdI?A?q?R| zy}%^IJj<%anQsHvs~#I->Mb|-Y7wuj^~T1q!kC2@UDo0VFM9kw4ivE6~sI7NMNE}ocA?`3>b z3x5KJUiE7cuYQPilWZwjqZWIq`dQo)%lol{0jKK z10DTu+SJ_KjTs}{t6laP=<4Gal{H(bQ@G2t{|LB$2WzP|F?=6%gC`cbqD5QoK)$<# z*iCr9x1KeV&#V%k8MKNxmJ7h$^X*uczJ=$(*JcL14>-~Vulf|=&qeqHgD6Y0}s&t{K|E&l6gwAT7gpRapEd>+BKCo_U z8H;OuMX^74LH|-FD>h+Zl?z!Vfi+EpMh#+}laN*10qxoG z)N>ye{$!VGtpv|2fT7mm1^UdP&uZxOm-yP-IQOHv^`7if*2R`f9_0+zwK={ojv%ja zw`td|CkL4mlEadGp`S7zAG~Z7G1U1P*5rz}(Jx=IY@GNmaRU<$o@nu<_m$SO2en@H z_)o5^s#;M@&X02Tk=E|E8-0z^)sAEPcog|kWyltd^{i91t7^B8Ht{ujU5ie(6!D$( zH~ATAp^0s*h2+Y3c@wgG!zA+N@y+TRtw!AebhHjyN&VY+R-5(AH4J{M&KUMOx_rdVw(Y&-z(;Ds+hINJWKA#o0s8@%T^fVgA9bD~#hUy*Xesn3IFs?HzWf?h z{C^VKkdDl)v0Ev9rE~aBaAeNA>iI^nR(-X7E^W&OuXa|lC$ta#y~VL*6?>R9?$VsW z^U0gtvXxZ_1~JcpRaJqEEspf%)KPnn@?97lv-dnSyWkRd1o*GJoSygry48J-Esf0A zjXo@TDSO}hY0)uAE+Qr&w5H-@O9%HS?qi;7fVJDZuBL~2!X2M0edD)*H+;Lywx`u6 znQr>4r2HqeuQA-t7^JsoZC(&f1s63Qa3{!KEmgmIw~BWv)AzL1Rj@nL)G&`#w6l|O zzR91B^Ls++GugVlyUH>Zy!YJU$>n~xrODRL5yfY3$bp6~ z8#{d4Rm0Ea+!HcR7@5xv4k+HCfcRTz80X&jNIswtB4a0Ywq-=c6Ili z+MGq3_E`uPxbS>YA@Zfu7;e^C6YDs?Qv!WXV6|h zYfWC}WgE5Uk3o0gg?{et(HTf`@OuqwSdGp3cxBnfM_eO`3mchIP3#(XmX#1&6bhq{ z%#u7sKbcOeJuk(#tdq9F$P&H0!}huC4aS;`JSF~)?rPtCE?cX%>QF-9roBV?XfM<*s!ndWo+5;u`zGqi`L4`Tt$zzaMx)8cgVWwYYg~vBncgj z{`Ft*Q4GJ%8EQ>f+Y;p1gVwcPb20XF!O8=k53H&TOlD74qAx2RGroRK<|fX1euU6Mz2c;)SE>$8!08DS7`2=vpszz}?^y+8{3SQ1RI%*B|KG@C8;?Sd@dtQ#rC|(2EOQYw zJnf6f;+>cJT&$z0ri17*^T*Iu?0=^L+m7N7UerPdqUG$Azojd+mm*R&e82kJJGMf8| zLZdsMZbwdUM!stpI%>IJ`~UmdBkbI~jFC8&u3hJkF?pU*%dziZ?e-t z3;34$c9YYyD50pdI`OR1`ax4mE5QZ3oVY5tBkvr+EA9BODRx<+Wj{Z6EHC;@JfGgr zJ9fbo!D2n_IXpKf=R3xX_$}uzCeoJRb9gXOD;kS`jCqIs#<)0dnq>aOZ?#)Qo=?@g zS@*B1-dP3ab>7+E>>gwOD^}0_WvN|nbB5jCChMj|)4@C2t~Nc%{3hO>bE@LKcUm(Y zrh|E2dJ24AbRTsBIrdfcoe_C*_}YH32c&z<9QGJ zb>tN{amLs``K$kdZ|YibB#dngAIPT4=2X+2=QaiGzoYzbV?CrBsjLUvci<(NwR=TT%XO-qhU{k(Miv6P?((WP25i_Dusu zY9D;VHw?a|1v_hP8E2XB{0MUL>DZY4EA!^*JY0!!r2AMK?Qzj1#%^jhiEc+@a_sn$ zNml>ql1HJd`P3CJ-v5}dxEFd~+>|Gu%%;lLA;t|K>UNRyx3RuY_Z!%BZj!J6kDJ(w z*S`q;azMYF&@WfuRr;6%e%Io!lspCQ9^AWucp%!}&F}09gUt_s+ktXyA`b4)pbmE} z#OyXBgSCpkWju-vku0nnom-Gi#~RLc;jA{?%*B;m>tEOZMN+-uxYU zLIdL|Wc-3_FEYR6l+!%EmHUDD4%({pjl;%enL{?efd>GaW?*BFh1eZz3COmVd5QP& zF=fz}`j7V$jP*0=f9dD2bV2WzYQKG*;M>V@}OuCG;h9OW5bX7z1*P&+)C^D`!3%#r?{tt$NTyZV2|?% zzh3p4rR>$Ed$R1@EY;W*Zh`!gna~@ujzXG}j{Yy0a;d{dE_rc?T!*}oh{y@v)(5kTP zF4P~#dJ1P+Ma!n2VSd8<@I-%zSkjH!>)T2rE$HxFwb<;mSDK!@pr3r_=Do`!EsCdD zb#GJ_k^XfOd+)IY7qCaq545v(*DM!D8({s5rITD#w9&);B4J?UzRYEc;k5yDQZM%Vg%0Z@ z#o`s=Pt1U4$M*uUlkM6K zy-f=qc*Y9+1o=ccK#_B8d`x2vyZNU48gz@(tV8na>bVXZ1OUY&VR+`!lLOt?;LfX=rDvzW8S9)@>42He5Z(r=0OEUXBmXkSEz zO{wFZ?wWDI3$gJ9$I`y)*C7vx9@a7*mFs;j?-t!N6Z()Dd>`H|`+&`p4h}N^1~)!* zWd%QQC3xW@{e!`Q+!&73evAC2$d)!;5kIRhz{ZR%{2tcUUi++|J2o!nV_Fv@r=B7+ z9gD^3F(>X{w1S$8Y`w?PRW(1+IX!wznul?)6F7m(T~wyHMFgsy79P^h|Vj;;&^MY z#WZ3Q=*GTO2i_O7&A{dWeNW^GDhOzjjWCre|2&{`LqknC$9%L3{0HY|@Io2_&=U{%r5Lo$)>AO|(Mk%)c4i zUnl)xk0LQ{Md3ibF0OFE!$TubK4HS6wE(^vrl{4B%}156Z3zNlkc0h5c%@u z|0rV2-$pl#pVh^e7y34`0XXZm;CIr?j&lAD9MPR6oWat0#`NGid?Bl`F~;rE-SAV{ zrFGU)w&}INpbxqWecovu8Dl<220ZJA=smt8(W$NipODKB?)rSX`O840-NJr!2J>+9 zU;9TotmxE1^kZxshirQh_+RCED2M*N$S}cCw0AjcC0kH7wl#F{;k32uZ-RTwM(cLR z&UyYLn%m|w;*%_FaH9F!>BI9~&G*c(Q++IB5`7sTFE z=A$f~GH@~_6*xC>7vu5o&~$5|26ACI$gV~-$?Z|4^0IMYmgcs1kxfHe@_pbs7N{%N%7d^2&koA#iG-sW?$ z>r`2$cQHIse4w?!tf`6miPkN$%#Uis1Ja;{+}rn*73hT)-hu3xVP$y#jQ>MEm*0T{ z+D9Jzww_DLjq31C>Bioj$^1{UJ{{njrxbY~ouw5!h@X9xl8;3`Lg>ld)$QYW?(wGS`rvfiIy9GA`t zeTRCSrCkx1cSWn~*w2;Vi|j`}e(QNGe;ayFwA7x_S9&8fL+v=W&+MBPt5H9X{-2Lo_8YS*BCwiwKcaQUl$_R^KHo_ zzN=*JnK8VZ$g}IpS)sACHJmc(fEDAoFNboqiN9rM_S(};IyNw5<4wDkxQyaIR?Qn{ zE(89fz~$fYjE=R%fnCo@pYM|w<=^ZxjYILpC$OnL$TxY9+wp=^bSGFI2 zqiFc^@XDjeMg`2Ll6lCcI-WIXMxK%mKqSNbRltxq#w>KAot2O08u|YC-BtOQVJ3&) zYxLWfZXjUk=;>XRZ=Pw=`Ter$pHXCn^Lrn3sq%*5TsdZcyR&j|u8}TWsqz;Kjazk~ z;ffzvr0?cO^BK|J&dQxhCX8IFxi$d9_3*_8^_C~t;!sDO2DVz1zv4k$KpxKV^J z+Q!S@xJ?k8+!(uqMe8KpP&lb`#fMo};iKXr_NBOt@G>q(W`Uo=&1}XT296GXH-e+K ze1V@|xevM5)B8R?us-;c{2GVxZHoTHVYLO=2ye%NJ1OvUXyW`s(6x4Op(uf~Rm3s6 zk*(01QsX&oglqYX5ggrA+3m1#6kP18%%5Q6XdI7)qickZqw;JVwQ&>NmHbZm!O9a! z#>sD;Yc7xB==vCrZiwON4#EHP7>*vwn(`CI)r+lVVAWjWV6d~f7ViDl-N>=nMYKL% z+UXYm;!NzbHIbITK-ZA-HWj=%-JE`Hq-8Ykny>4#^#wmwXm(}GpUhsJWw*KPb+ymuE+qlH@`qmVDU=Gh4 zIaU0PjPiM4J> zwi=(pHW+5lXb-mzL{gh8$(usVOI+@f{pFkXwj-_taPRALSIDE@Takm{d+jZ>SI-!1 zSR5i}^B!N{1ne~dzxm2%3YqN4U~^;QeJ-U zpBP{D_GQ@FUr)A1OkiC-7ok>(24Bzs$-ZAV$c9pdgi zv9ezm8t=2YWyBoB_U=Vx_`*0ZL!JWi`Pyq)G6;D+3wb$%eU-_+O7~vO8l*ul+^m&d zC*fREkkXkG)>>Wb&OM*^>EK+}M(_@M;9W~1S?RIg!rl0q`~ulT>!Edtt;z5c_@uNZ z9%PZ##J)GM4yUe9v(|=nIS)AcSqsGDw&$B|DNg5{uP;;j=jX921h~JnJlTA)g@EF71H^+G~F)vJ&ea zMn@_J2k7&owd@fahqsT5+Q0WjQa$vW%=)+|<1Yjz6YfZxSMI1>)-Y~c4)&ZwX~>%Q zUO3PK4DhK{1(b(F_JznG;?=1yUGvAhr`=7GlaqJ1)VLp-73$?&PV&i@kYA&+hx{cT z&ucl6)mEUWAUU_U&=L6QRL-l%+T6X-k^X0R{--CSF>N27KsQ{g*pmcg(?n#`LCB^_ z$fj;&Q%?Z@Oqb{WB%|15{dS{cpiAs5m^s#j$GZa6;H2lgY{UOe?s1dMzE{vM_G4>$ zEEZ{-V>9&`x&QNG77*k5|5J7Ydp88CSHw7Y5) zKdN#kbNztw4DeOuDjRuwMy~V}y}Op!$t<2bR^HsF^YyQzo9^Ma{Mg;la_cYL8BF

WKv%4bSp$_CT_)==JDf zoSSD1zhzIz=l)CN3d4C$$%Eq0jx?>wDDT4`oM`bAXBi%*_?bNKUC0*N(~4D+{*d?I zj%9nmQ#}{RpN))W+hm_lvh%b^jsq6T0aRK5?*Ge~v-CB-Q`s)yziW)sbdnETGMR6+ zYo7m_ftDK?N2ZlANBvi@Zpu>?!G7h#2BP~LFVlC)lNsM=cx_(r%zJddDEGQzOOj34 zj(z_)Dau!_$b)v|+O(qrnCX0n+Rbx}Ti5C3-!+!~%(_G!` zi#MXbLp{t18q+18&^~b7?MO>m?{tu-#XZM`KYjx39+^AKjurjY2Jy(5fd|3W!3Y^{2T^;rh=c*oV3z&SzGdc7ho%Lct2bOo(WF_Nk*|x4a~E6$T{|zHtxRO zYU9DqQDzwZ^@z6?jRgkWIdwhr_w<#XnB*`6$Z~!29H##e%EPKU?2%x! z&WLmLZjjzluGoIrNj~wMY}wCm=_4J2i@%7qQ~s6Q;9HFAkKpQO$Q&e7+Hj>&e=Kn#98HUnaZ`l0{r$Zq5a9&2m%V>SSEESlOlH(X}KuKEnGWbFa4X{n&!5nB$eq^$O;^fV&hfC+|`;PTKRWNXt8X z*F4CP*5n*B!aCC$F+IXP#l#=hYJES>HC}LD{LiN~tUgUP|4jwHLFQ%Ft@4V|WApx zy@ZX{QakG=AW!vs!iUG8vrlCK3O!a3zaDj)`;vM_3!);@}0!-$M$e9741fI&~B zspbTG>tTGs;ti`<_xH)m+P#)s%E*oKA?!#07z&N}!+M=xAohzf8~|_rz4^l857-wy z)ZI`29|AAg^SMJY_yzNSnfjcq%<>a=B{+Suh*(2#Z!0)>KX}$;$BllS=U@uB@n>uu zlfjRR_|}iF={)M@12Zr6)2;N4&0~C1t2y%|-E?;|vRLdKTqn3(?<7VYJAyAVehT!q zANi-fv-0cmBaCImnX>;T{ORP4Dd5;(aBT?tX(;=NdvM|F;Es14I_>@34L>k1Iq=L+ z*e~=iUvLIv@iR8@2q&q+V2K%?O?bjJpT- zmD*>?)^<++m(z(45D~5mh%OBW*Ylv)#B4l&oKXtkB~c$yEyQZzRfq%c{i}OqA|#2q02<0 zz)$&cUPNYD%bv9JJ5u(0^Z;a`P?&ni&C7ZiKkpANw$8L=E5(4<6-0B-Qr@+=8`}`D zQ+X5Rt=O}U%$*w;m?z)l#jN#3toen3lQ+%@yn2r#{pcC?xrj|xLbiDa-w3qb{(S)1 zAhOm4j(Dh_%y;A=TQC?L8Di%a>A8S?FZy=yG}BY)G;_7zF7Wkdf^$={toEoM!SZIK z$7@}B*e{XAZs?oi=@qPHcand`s0AnOI9=gWH+X(2`fYf1?Jsr4!Cl<3Rr-N=n&20K zR)^W6l118?{}$&A6RwK3?Qq=jORvt{r}dTI2EK>s3;J8u=Cnq<1kVrfz1wQeIZpkf zjCmLMgY9iuBXqIsZMP``-?pOb#_nH!!cYw`TZINrpX>F?EUIF|4nQCjA z)&IKMD#!lFeF{+>fwNb%)q$+j?dq7JJUrcN)=cj>WnA{1vGh@>He8Oz4~U(2yZ@Hc z>#Arhy2G7|pSe*s7S8|lW23b9koJ!S4e#V!5wVuh{R7U-V*g|U+dlTsu~MsFvGp3W z&Y$%1J#gHGjMi2B^tq;&_uS}l~^j-P8~}s(7DhVLfGBy-`XFF z-*5wm_;2lZow1Ni@5U}Be3Gps2;F>}v$|jH8E`}UMZD&#{Y9Df)*q4MkIcO&a5^%? z$s1<{#@_8nAJ4uKO^@#v;idh1YPM;HM%uq0%r-ABw9g}L;^sTk#rN1q$SFC&{Ec$^ z4ALoQkK}jj1h?IHj5Y-}&*rScV)Um%^e4t5Jd_@iO{~%pfU#$FROq&fG6s3=G`R9GzR!-P4z1*Id9FivHA6r*-9ReHB(y&FHfS6n~A} z(>G;1W!;h=ZW?EPO?!GT9p-cBlj=15m_3Z$paMEZ%=4yQpPy!GfvafPu&d#5!aIw1Z!_=Bj{H*VtPM5!+|xC37O@2E zf%EWBpTti(ZM`EMJ+92{IBQBbYc`zs`_LQJ$M!WFNC||`HxeniS@A3Qyaq1TTyzc? z`I0*17uhltJH7n;C7;o!Y;yIvX8T2q4c~+<=guEz&g7lGBR0prpIdfT_3;9B@K)qp z8-F(qHuv(K+KuNtvEv1hZ{s<|bk-#co1Nl&g^R#s=czD}>~s{pyQ8vW`ku-?(}i=L zr_1LsCiq?Auuc;1fj|H0Fza+3a8~((SotEs-DR1-M51|YXCSw9;8S~tXT~^L`ds~> zZ8@z@w|Cj6Ct4ODlb;$tU|l1*g0p_}qx-4~In3S< zI%~%HrusG3?rnqemP`L`#iwZ@&xe6uHS|gG2X&?7Yew$jd|7c1<&y1wz@3%Y0`Xy` z1?Q$)Tc&Mie)#=|HapUDC;b2IDvAXNkA)A;Lmy$xjRztv@6s>(dXv?meVrA28ri?2 zppWx*WH?XTRW_9ekZ<*?Dx1*WxZGY?Nj0>8bO| zdpXkptY3rH|B7+{6In!U+?HkSdI339GTVnAV{6N#9%oYalLIoJyFdRd{=r<Dz9`w2k{2TWNP2=L{;)AMW7nz%OWj5@#w`Gxl{U=dBFC%e|n(tYylR z;y#&Fx`X$E!D!AtY0P_sGiM~4zWL;?uwx&xgTH5PM|iddeLc6$r_9Yy--t zDOTtq-f1oT$(1YpjJ@@9zFWmTRwJ1o^L&st^lhE=*>|uPU4Sp0^IrwDVO`(}DIeCh zLgdJUk@@n+2^aoFna72Xkug?~!(U|W}vmdSOmw$_MuAwaUJ@Qzn6PYE?=Ues|xHpfnhv~z;-EFMK#uaXS_`-pH z;3Z#Y5%;WJsJVhKg~SaD&U^T72mS=sCFI7x>aOs3byh|2>_ldq#h+r*S3_4`!;XM` zC`Wq-+Gy6|<2}*~&yU@m>VDzxsp4Pg1F8C6_4szHzEydEcy-xcWn=QNm*cjqq`RWF ztbgC-NdIb`UQ9Btu`jm+$6E2+`RAA?STCDaw@WKeH_S*a-JgV#qFTVvpWDscE7}EsZKOOthYR20P z?XM-r;;SDa10#RblNVR*pzobsN87)rZOLN|w3~(=TaQekF*+Dqhv4^SzDc7k*(5vT z^fRHz?xX5V`%HnIyGw2Dq%DmLxF5967-`o@;M;+9f?*!E`Pt;!o)vhHaeoCn;L`)n zDJSsBSPth?VRstuY}j$HBXcQHzDUK6Z0BwQ!7aiZx5wc24t&Rk+x=0v-N$$qP4PAQ zG#=k5dpzCP6xyO~*>G76Ty_ALTHwOo(_GHp!(9A)D}DUiF&J0!dnWwMUhJqg=P{!b5W2Gt5Q7)V(Ww;8oUuuNWiv%LCcmXwzef` zPfs#7Eh=iJt%n5K9*}C`V5@$6ae~$+M5`2#1c7|tpFK%S`#b0R&+m_U&AzO?F3)<_ zv!46%r5H!alY2518*bimeeh~zoB1yL&NcY7vlrn{xMUOS!J_Tk=nsBT{{&m< ztot^4n(MB^M?`b=hhcUT{g8g(W$y3yTlT&J<76ZKtRqM2o9y|@fhu3z&c*l*GoMyU zAh!tk_-0R&&hv=TFy4{(f_!iF4z^8vl6O$&w!hC|33FK7{PZ`$J>X?R<2s?Y=%8jd zst==yD?oNXvI2di?th(Qzsa?0p0P&og2&oplufn|#@=HmooN4(>%If>@kv34Hyjyy z1Tr+o1>7LT*T8p%y#&edyU=?pLg5cAGmGL zNLQ~Xlk@PHhs*_8_8rjU6VRoPXQH1YN6kkE-1c8qxNX;RVk6*f|Ll$nm;AfYd;>PW zBzz^svy;sKvo_-OJ6W^fZukU0I^w_c$B|u%An>d_67N|6alAh>ijl-WF70Nf3w@3 z312ARvB{FFsOx3vPoZ0<=94#-cAHrndF?T}ZIK6owK5xB{vPYb1V_)c@0eNr`NP-> zsarfiAN9X;d*9A`@XZztuFE!t{RkS=w&nXy3{if-81@VLJ_|f-gtr!-|LQ{MfX=68 zj9QbgOuWo)!shrn^NsA9Vm$iDvB!{mJ;O$YEa+0>ApABwv>+9U4IJ@&Fam~=P-Y3}e>MsvC=QC_} zc!BirB;X#!4pGfNv3qHq_|C&)IKD=j&*&9_-usH7#jF#P`4l|P?l2-}Unchob?jz8 z5Da9${$}*NatonfHvGwqr42b!Jj4$ubJ>W2ad|S>q>Dd4#d~<56vbr1N6ZMY=Sn{# zczWGdRT1}USNrv7cth(}a?)&Mze87|XPO_u|KMqI$ql~Fu^%Y^wCmBplYg2o7>^6@ zqVDsPRNhNoA8%MN(zW7G)sEJ0)3KSvJ6Pdy&f0&sD4($k$E63a z!1r$?_;v=F@Czokww@WJLwngFh^;AGsUpC@=UOm?OM+!J2*X#7+CTRVHa7z zoP2R5HZAf)T%6WniXS?!?BC;nABBxH*!}!O+uUYZhFSRz)u$!dg zD?fUTLm%z2b_VqELu7vgRjbV==%6Pho&5YuKNB+9zx1yf&-n5UvT)4 zfA|OLCWl-CvA2Q;d$iuKfM=4;vsU~4ePh&q_i%c&(mWGf4B#Oi z;(cIGyW5Q%`D#uGzlQBbx{kG!o3Pnzcxe-P4fyTk_aJmu^h$fu@CD@Dfad+8OzQ`| zL%w1E*9^&jv3bH6kMG;1bEQ4S2tNf5OP~0^|9h_2 zUq8XI?}?^;mwtbD{XF}7yhGm@iQZ5A12`_8?=ZaULH0}O7&;l}YcFtiJ@avlT-3Wde?m5u20|OewMBpsgveeOYyhcUhv2~I}ROW5FA23lm-vu zoZ;Fvl-%q6IdMEDxdQrg;+(&CK6ccC<`s{{Vo?MS(G=~E_4EV0frp!B=dvHpL4Pa0 z`m0CxXMa!QFAO=p-p{!Cewa0@uK#lj4JY{bk5w2h#SWe#_1abmq&EIVQUY=1ET@|mu%&_XhJWfwysr9A@=8K znb>p+GD4iuY>UU0kMSmGQOU?a&c+9keb@^(`i$yCV0+h?8`mudW@APgYlWj5$;F$` zecE_dKm4-dXq`E$nIGYQRxh|Jol6&WyQo*V-odrTK9blR@dcj=pULgfgk8sZ-ruj5 zarly*x+{0oBY`J{x7yQ`Lt+Hq==yzpBpcJwGZDY2wtc&A%gv)d;7VEEY|dn4JszT+ z^U!|DwVmt*Kc_F8DRZ=l=gp@k=cZ$qFL#gXUYSN)!*9dhZY;^e&J{#|)#OSKS=1>% z-^8lQoMKO6sCoa~Pyip=giqW{%2PNe2t6Bn@(~}r5;Oqc7U@;UNkDtvc6YVOd+24V z_j~B(&^O61w-KLWoz+m0#Q&rG<7XxN?QZS`JI|TBa`SrK)fwbH$vXpl`Om1`Rr-MH z;kzjMHq}?lym%R}Nxe<9JBs%|V@&nQ$iY0@i|`L!MTVjS-Z#N*3r&Eo+s#e zm%BPjIhB`8uJa}9iD7p!R9ReA;GqAPZl?oxfw1}`$VXhU@V zuF|v{1HNzbyrLj2QETKsxmNwqH%Bg4zdW0Fm0I)-d+AAwdc-@%+GRdIaaW_ubLL|? z{~qQ;JcwY@_1Labebaf@u2S~=biq~SGr&WuX2S4_wq2#FC+ouGT*)&Y?lZ87K1kb| zuVv^3%LmrYg}WsCIb+KJe^p*}wV|(d`qE2ZJTcvcWg364m+Rp^>XofGt1;G(JE(sJ zKZoW_o?uUc7JW!N;uW;627Isg(Ff6wpZ}?E*3+EFlEIwIwkCVVRQBUfFDf?P>tDck zQPJiP=h(xjOXc!-*0-5BM$StUT!ZW8%a?i9w|E}VKGQhbj;HM1>|fBDlhc?lVy$z% zkDHDT-1{Q`z|-4hRyPU{$pyHZd$pHE9gnF^uIr$$2mBXz)^M+RQ9D6!ORLRXJcY%jx$6+4ga0w4T-T>>kQ#uKrVXjGQoBb)=~d;7H6ygXT>( zqb2+{u5(9po?7N6Ggad@c{Y&4-~wu77RR#0?(QK&lQX4qaE#+!ZWLPvaMW) z@E^H{Oe0%y|Bc{^-W5?d^Yxk0nq;>Fzs!%v+jk=4czP%2X5!nZ{S%m{27$4zMG_7 z_@N(hY!XL&Brzr_vS@M2(%mj6{#$hq^wE{OCE^0^>ce69Lecu=&$;X!S2=N%!1o_z zE%U2d2eX|0dYIq-^0Q{@Kt2ETuGVKS?tiCz)?JfQ@A=={NA<_1Nv?2gr>fUmN;g<(Sas7?8fSG z+xPJNIPJ@R_aZP9ukipdKZVb&>XYA=;PmWE#1$`f;wq|G_l}>jwbbMI7AwcjL2#{; zF@STgbmrAYK3qZEQXl8h@r~+%pGEiR4IAM0;wkW-lVbcx+vk1RWvsD}P1Pj-t>ai@0|fCE|X(IL;t z@*MGH?a+78J}*3FfVn6{x1e*e#HVQPAx5)1^S)ntD|mizlyTwUHN$EOb$zwL(R}Qm z`JBZz-WV=lbYsf=b(`SToU;A}KKyqQz2HdKf%80T9~8}D;=plE#&uz3Sp zK^Zm(_?5Db0$&LI5qW6R!p}3Vw<-7jL?f~mf0rk*^)H9F0_G0RY998zh))9N10MY0 zLf<<)cl@{bekD2m55kASJ6DaV&ajI((<+DOYu&`8VQ&PNj!1X&n z#wPI}z|CurM}qkyDU!&koCHPvxX9EdU1JQ#mWPHf2vlp=krVqw=kiAB6Z^ z@&>;OuecYw66O|umGcnkuVoqzY&wCBk9f?3KaBV77Hr5tD?a1PjJJdRS!?lCxl-v;OOTyZ6JjMLX%pZ-V6Gym0}NKOW(Z&1!d8(Y9dpXM4~q$_P#I_LMv z*FDi^COGXMx*R_h`fw0f3-_L-tw3krEMVz>XHABE&`+D-f!?XTj{f%A``gp`evSC; z__?qBh@9i_>zfja)-k>^gZK!=z;7tMuv2Fg0*g5rlp~I&Of;g2{pt#yAM|r>Ds2cR zz#`T!@XP6!--t}0j2An4kovQLdyeprb#%9$!!t`So0Z7C!oLfK-m$U#GCl6m{(qy) zTFT$fe;++o$^fGkW-bDfP^^M23yojsJliSqb5k?YSJWPvscg& z&ZaMVKBxbg>Z=&ee$iiN8+F!0C)h`iWZvq7Zd(4&7WeJE0laTC@V{dH4a7SMS3i6d z|M?AO!z%Vl;j8o+vD`A(;RlW%Km3jIPfKSs4jK02kIy^4D>+#gcfQOX`}xe6e5<+r z24nu?Mzi5>&{FNGvU$9>gxCsnI=4gLPW;DwAG-I*kD+n$lY%~6-T5DGUmIgVzIJj8 zC}&D7GXBK?vO0U1XmE66T=O#@p5M8az5dcOK;Vb=JV?Jsu%{{x^#RAWfv%bQq+6H* zj&!nap>@6ZFe~po_-r_5$&JFUqJ5LxA(2hMV8E|gywPUHfFEIY2jkNmVjt?wGe>k+ zFlQIRW%*E5(zgoHVDuunCx~ljZD#Yoow~pu`G^pMJK4#dLz%t)k%0(tirA+Ts;qY9 z;7sH{l&-h~mCah>`8)shKK*xmpEjE4W?blI{&B9N@+};MKeaAPQQYp42G>aYVR)yr zPhM>kkF))ik6gCa%5A*M{pK(mU*6`5WovuTA?$sW@w5Yz<@lf8dISC?^ede`>Y-)p zdPccKuSSK}P$olrDA)Ue17n^oJ;OQH)vc7}Y_7Dk>@^QB%jxNa&$a$I$PO;MrpLjz z?cf{h?1M@8I=N*F8G-H<-Sd^`WypOHb>k<1?Qs-(olN}Eu7(y!k8}o~CfUceKIESq zbaG>i441KoYkzAZH@kchg|9Oi+j#yv@r%lW-??8o!G%N9-^sM`XK)w$uyeKv=PrTI zBm6e&|04bcIur8T-385eY=9@u{6{Wk#Q@!nu3v4vPTvjd)^)CovUSb00iUwnFeca^ z0#gHA9f>%q>JW#Zob1q|cygev5_bmH#vi)=5t#dJ$Z+{hj0Gn7t*TB-iVx7qFRyS3z4;UOq+h zDJR$%FD~eX@7Vk1WcYdBd2SL-8yns~M|Npr1UVBEd;$FZk#VvLYaKtCeA7zUemOp) z*o0#KNwRl&{qH6i_94dGwb+PUz$fT~nStJohE=^g*^%e=_;}~|<32h+GKMps3WNL})W?L~e-C(l~K*ND7jSv=P|vqsjZ z>;2}Ei#siyFALvdjWO^e7}4#5cSC0g-i`_zE^$3I##dK~e# zHyLX=*RA!B@NOD^9qZg;oa(#AuW_Ke3xAtu>RTscT}oem08K~VlPb6#+&?J<|903S zAE@_5<77Q}`(55^AN&Jl)L-Ot)*kR+{B11<_re*z>eol``e7`^TmN)(Kf+Hx(eCd96j|9u61aa^e=Bxe?9#j^*Zyo zKh}=y$3gJ-%lu{|Pw0EWZyx=_FC^k|k1E07wqzpnc;c+f_dWVz;ZOby`!aUFJ@Q++ zhO!6AMHTH1L>^ePbH6uh4&4~r1M7$vP#gVuj>A8v&S$W7OOGHP?gqi0{>O6G zrG~enlhxRWSFM)MQvltj z{Ny{C2lPzDv5v0JKt4EirS?9nx(z(35H0-f)pjrR@=9z^$S!{2s&G^Dq3={)>qU4f z_-}M4Ra>lK@p|CpoG#*2@-lo?QFOT*-NULY2e&N~oP^t=1^H*;8_9Fpg)FFY=yJ-? z#igp=<0Dwd!yK8XIs<;Ykh$=jBabI@*fjKDy4uy)oVhZ`CwlX})#H&To&vAW5%=l? zCwP3r{mBkN$P9Xr#t08u|QUY<4_@!@Ze( z%GqDYOa6P>x`}b>JZtG@I~N6V4&np)#q;xRQQy?(ybOFMkvZDrUw+=_ z#M=IFlJF)K-xnh+xmEqVKfzd1E8P0QG+X(eE8uB5=+Eej@W1SBsy|~;Pqv3WRrDVn zV`>&LPtG^LAjSz9^j_enK51O1PW8bD#m;7!%lA?0QXR639%SEi#{Bxi-XQ#n+6S*c zGq%sOU#4yFeDB@xf+}M`JG9^VnJ3Mq#w7axx_ei8Ij|5OVTbUK$%oDyI_-CcE$BlN*8?RisHm4H$B^`r&=N{tv9e&cU{dB$A zFmF&Shy2-5#M7`B|ITHQH`>W1UD8c?@B{vYIO%ob(-$~8*Na2P_ME%hgg5@jS&*8m zv+&0s;a}61V(cB|_>dam1@M6Imf=wb@&E9}nXQ-E$Kg?>bEp89oqQd{w@7xgG7W#u zC$$lL)VF7Gc1i{3v8<<$4e)*();%W*FIf%G$GmPgUX1IFu3Ouqxh+LUSjV%>#>?!- zSl?ger~W(_aPs>4KZ3t{5jo6DjLayWbx22?G0mRB{+{+oU`O9@>!fg8^`;*!ttod~ z)fLdXa(7&{+5g;X);YBBtsW~kFT(m}kA%jMd-O7UxyDuDu}@EQ{KogH4W1EWo?$y> zphI^TU6gO5e<65@UUz!|-+cf~rB{Rg`^j1AzvBXH#ewre2hNL-cSapH>|>9>$GOu& z%uT3GI*)dE1Y>mfbM!G^?W`SVAC4zC7W1mMdA28WJ3fTW-#g?)9PLgkkvxxXO!WUV zt5z zUwUVetIgs)Z5`2?e4e%>OPnEQOJ!uU()_+oz3qbCyOZo!x&HM8@ZHhTo6ut;ypwgW zoB<~bnY+Nu?&Y*Iuzqf2PsG;lAF#EXwD$qy&q@vCtRM$a5&w>#GI6V%!8}{M{)P2F z#peG1mFxQ4!;Zd-Y`{36zazu>;9(6%Hy-v73O|_}tiWD^kGUs~7$(cewJf8CcnJGfedM*n-^A*j zVtZCzRG@n0{qySZrbPsQwrd14h=Co>skSjM#{2m?0zHOVJI~W$^b{duG{GBM z_?=WtB#&i$pap;0-c5J5&)s}y+gy#!nq~BQ(WloR`|~iP_OZEU?bqkJ>)kC@h5;|G z^IaX;ES!%&{ZQag#yZWzp3`wZHo`IZb>45x_KXkYR_gyU;tsI?ntJDpUGHAQbql%B zGW&f%>v*qcGfXE>u;)d?F0M0D%14^jMb$>x%8B^Nyx2b1e6ekAeqCIP5oZp~f(DBh zPRLB~R}`4%S57o)py9cBCN^F0y^=kieedd(=o*6T;|a{)N_1IPOMgr!>pP42QJkh| zqPN=RtbOlE<*cSJl-ILLzUct}g4Ab`e?Lfl_00K3^hZH-d6#2Hdkc7s5Dcav+pgkU zV35H0ee;L~p??~upZq;V!;B@;mHxVlGQcGfcoZiaOJd~`{fW~g_a*xC&{rf;CSe9; zX7h|P#joFYtT;0b< zUyDtm&gJ+k++S-pNY_x!?>>I_@>|XCx0FSfuqU%|s{I`6UvzsUI28c@oab*(g|4QC z@8sQ3J+Crm1CQJ$ zk#CmwLFQI{lpmdVUL&8}#eDxOzJCPz_cQ)gMsz{XjXJlzk7p0?thOM|#_-%w`%tbMC0sQ=l%mwiCmpF5gSd~Pd${#nXef*ntpmim4 zdtzeKnmi++O7f8I!)|grbHDtn_$-;@t`{Ae=c$cxG9@K z$L&U$^fAOg^jag?gLs$8Gp)f6`jsr$FejB<>)sL#g7)aW-s!*H*i`CPIpCpKr6#wL zUBAql6J0UHHaVvOzHsNm^i%YzbLQZhbI;{R$_EFkvz7suZln5f{%`$_vE)_uZYzMk z78&j|-~JpquZes(Px5^hZNq0&Pl5M61YQ)O*I{4H{T+LjH> zFD3fW83AOa=q9(lmS>$$vK9{-)i={-D!h8rt52n)50A`RV$89Kf11Pdv&ca246^*u z4I7UA3BTwlG18K``^po2eJhBeq#l*^LT_IH-X36?kaQ?LA(ecPD@?l_`@{L;>HZp&_EA5Rq=HFqQVr80kAc?G$h2lCn9(0!%FXpr=I{*lH^D`ouf&I4xd zi9A>Cg2BM6f9^IhCjstX83F%H+p23U`YWBmI)s0N$tON?~6z z#}hlBn&|m$>R834>tDKgU9%4l_gt1b_U%E&l3eaT|4JaTYXf5;>&ACVG?@LPY$fyL!~VG~KEZ$Equ!;f7830|J{d{+V`ij`M^Jsr7?R#r{t<>k(lQmZ9wVtLg!WHpY zdUm}3`B|PfddNXTe}7F|ZJ%#AcJ2y%mPa3b@{^A_rJ^n+Y4p^fxwuw{nWFRRBd9lP8}k!(AK`c7v9 zOXiERVfAMs*Pk<%dgg3)Cg*{}lXh|c^UIr_mGAZnXggzfa(C#yf4!lz8S5WSEUupY zU@c?0*f;B`8stCfoI(47;g$Snh!4%W+&+s8Fi^M7Oz^_nG|`6oLTqO59CGiy4y{Tx zH@q|sd2AoParkVM)k8DYh6!xm0B6xz+TUGa*s>oC)F*%HM(Wa>&{uL$jp}}Gf>AcE z0=Us1`A2guR(PFs#{93Pzn#zqUDwlZ;hpL_&6#%^dxW}lPV5&m!7uzE_EFz{;RX8t zb6PjFkxL&$S8rv^tT9_M_nJUGw1s=-Y9ACVNyGI1hgoImFp4`1AvVw6Nq`4{;3jeD?-( z;Ty?$)MJdJQ~7N)le!a_gT%_poTSQ?If<42oMP%os`TZsevT@hRP~e7#p&bA{BK03 zQgNAMf3K?JzYxB9Bzv6r>L&D&g^5Or_;c}g=v2VV5#eUHksD5g77aCW;ddNf<1z5& zu?O($)*iw4=m`BryUUJmH|;^tx}WrytHS>Kz<$%N3>Wx}uPywJMn|4I8N>&?)Bfny1R2zqRqJwy?y)4-i3NTC=g*! z-JThpV($mGZz7+I2hf;J#;?2~;$?qI`xfQI^J$MX#?QY{yJ=T)1^e~4k<)|xf5hA` z(Af55IOEcoG{!pSRb#87j)8jjQ+F%($ibgw#-+nIjtDQumLuC>COLeGS?nF?*Hzyq zW|O>3@H`Jw^W$2iZRTyW;ID^nYi(eVP8Bi?b*3uQ6w#>)(i6gluRRKO}wM zuN+@4ts&74>0D$3Q4IB5;cN#vP(|lAx_qS5E_k25adFCg6& z`_Kt=tnAND+xQq%oxmr`$~=^wW~TWI=~w#~ePw5Pb{4%F{-ur%_?G_qZlS&ka!hnk zmvRq!fb$9Feqiqr%`$zyXKzG@qh}?Q7o8GMpnQqZp1xVf`1U;CO71(&xAlqn>%#O~ z<+Z0BN58CkK7>~P0UFWvF8QpSch~_q*GjZ^KXrT;8aSiBUo&W@_MN`j?+;3I&cIRm zI%uf&L)GQ$@6Q#K3;eEc_F4D>;JxHiXhEIyA&(^6#_B z=6XQSf=!~~PV$~A)<(LO<^_slh@EdM8SUHXtAehpvgJ!8s_3sUj?1@Cq0p9 z8}Qg}+@;t@&UnI3Lo8l3Hs-R8Pngv~Y()*wr3YWCPk)FQ2=aO#x&Ke&>^9CR-83qY zqqw3{d@9&`tC!=S+|Kg=v@e9eO*46$@eMd)eL{X{as?|E?KSEj@DH9yt_=APNPdkX zLrq2&>qMXFK`*be$dTxV^P3AFCT;~C@PJ-RWykcFH7Gma_u6;hALpmYW~6dMDJMOu z&YZjkI3tHS^!Ri5veTSTq8ufBXJ-u}_Ih(HX8GLR!_ni8ApRtk_>+pXIThWjH~d!r z`!Soz(*~@MQ%iK&vaj zT@yY%h#%Bi);Rt>j*p_A8}M=i`p0R^x6Yir_&=OCsdaM}oQuMjS)Q!ywS2pUbtBn& zIefy3iKZO~-i%s-|0p!_hpeZzf?1*0zGURY&M3kzExYMhBRAD+yjmseb)LhG>&D+c%3i+!`}nUAv{7`YEKCtD^M z!ylp_!oTJ4Pd(VD&hBup?flfp?aDJE(1M0p#8yAEA#UmKpvlCf&QjSYu zZ(~o=cyC45ya`x00uu+H!S65gzLod&YsN3tUfrF?n2Z+kSjO73u;H?I7YE6!(S;sB zvBkI1W^^bz;f%)8>ls^=JbFi&|BlUpmijwm{OhKNjFgOV8LJyzweu?JfA$#i5>Mm& z&s^dG<{7!-{cgdZ#aRp) zb#3!H?>2hHAL^a;=)w#5AAJ^0tDR@G@Q!P(p`RIBN+Z#4mcC872LB8@I-+)7##h_s zUD(VS_MghzdQfp&Q{9y!IOI3W2+95 zhv>{tKH@wf~>Aqd( z_pv6m#=2OO&8)>Om#ndxKNUo}?gn>(an{2Vmd+{43dxrJ3b@jJ?GoRouifD5+Q~VM z52NFt&aR&%`MNkSr2Af;y*A8uVq+lk$;_p`6ZaaC6YB$!zi#AA*Vl&lx?ULW`}kYv zKz11x^IP&; zx+tTwDuVE%Q(g@Crm?R5$>;{Cry@CSQC)J}kmvaSfqBJ*ukj1P4;u^it}a;c((23w zP17HXi(B+7e(t!WMc4DYEG}utf(3D_2i=vl`l`6mt7q_R^Z2AigX5A`FXaERahI>o z%&`}(7@xYRgt{IZcg5}82!Ysb>CQYH{WHB zyKMC@0>f6{P1($GlUFaGPapE1Id0o zy8bQD(+mA$y+^v{59+B=eh6@-NoUD1ABs2cWZr)UpOpvQw4lKqJjJ;C)hhFTiutM~zGU{2hLT!teLVz2t#E%kbU2E)(0T2VJ$~nB81k z=--3UzS-i-KS#&$G%}9En`V&52wyJr#Qu8n=E>H!aSpNt{XV_8lzn^&=coiO^pxMk zUcMOn-6Hn$8=F7aXr|`D2XdB48N6>VIkv@n_yh2>io=vVQp^jP2mR&{tBm4#QHK6D9 zihUpD{}T7!n}|zfjNV3c_WEx#tI;8pd4G+(rT>8G#KTGFyPJFJJz_kN?(ieEs%!5& z=ekY(IUT#E4bJtjVmu4{;0^e`k40xR!2f0FyANY^7^?5>nNHc`@ExuzMCZw+-7TJS zLh}~nD$(bzNkf_ocawYhz+m+2#D~Ctt>InQq~vCNe;U5c^~J^i)_g7bah!8b7h4WL zsN6AcAeWOP+TZOq?QO(Xed5LjO-!r7c%}y{bAH4AbuT)Zx6GvCAIEevj()6*^7^)$ z^7_tu0iRN6nZGhCXB9v3FY-&M$G^nNr%rTop3goUHeip8=`}e|3tdSi@_5Cj$L22I z^!2$x&Yh~*6ykc@+~8`Xw{n@$`wL=}E8wp>XiMeWxWCAGormv-r@rMs;cw06Gw`t| z*O(2>=uSGpLm&3;tW0#CnZ}GJY<%jQ5BeO&pOrNll225#E70rDH0&@udM5rMCU$d+ z?>v0R89OtY`L3Stn)xP+7%+X)#5cURoB77YT9mHjyY%NcW4-SIvtdD2On$6&`a2^0 zl;W$oKF+&~x9o44oAu9g*co5@WEbN);da^9XYc>bXS$G)V)DfCq2$|TKArh(kIk=Z z9K3a!r}-mqLUWY7i^qqWEgz=2T0Zi+TQuL3@-OZj-#_2`$Wc~on1{>bjgvQmzswmv zBu043__mx1VokakYhsVN#A~>!11TlvCb6%2lU&uunR}eaa=n(Tx{mQrNebk4xIN*O z*g7+@>qXrOeq=+t*zg=K&(G+VUBQD7l4P|z(8W6E+$HKP-GBIzc&tF=BVZsM!${=i zH1zr8F8}Oz{;Bq8;~S-YZuld3W1SbcI^Uy<;(Eoiy0<2wfK|uSOpbPt4W|b8mNEvB9m2UB^Vs6CyhIZ%__?@ii7KCxBhO_)9Ggi?@V7m0-R->tiP1c zZ&}bB{F~0_S;$ypzTW5W&2PRq__`k94dd|RxA2+en`Zkj+nkW1%;ey*Ge;U*BJP4k~&9V4~bu&>eUz@$CL!FvnjLlXpay zL`#spbavU_hu^R^`fIYZts0ZTy|r3cgz4TS@GW^bZa23so-#e8I5cLne$= zhOhHgy*h|{mrp$J$}jQkr8q~Q9Q+bK3h=Cz@VfF3$^vQGFi|FnQF zqptkCc(Q!@xeC6?^;qMOcz7+h)i~rXo_zz}>;|5%j87rg}89Y-tW8CG_C&uMm>E>6^+Bkg$zk+dDLssz1r)&k^W!B~0 z<6{r_191N?FqsOS);YkPgBP4PS%(?$lj^hjYk`NpV9!|iGtU2aIe1_|1E&R7=Cqie ztA~)U^&TT9d+6LiuIT!2F04IfnMrT>%pq^|;YYX)IrJ@lpSnZec_RL;9WB7-Th`o*uj%#@bA7X4P z{x+9sw{OBHs5wl_%tEwQP;pXarPev z?)hHdyr+BWbINni*c#esS8Z%!FZh-2U2gi~rf;TwfW8lm<-Zu$M~vYH%2-#tm(CtO z#~C+$auK(<3fQ6hUb6FS-<-BV3tMIZqqafr7H6!~v!7p$(;mD7?J@3I`)T_Do=G<^ z8`E)~-^cyHH$TS)+QxSd40tDcrwo16{&O48 zmv3G10#!^8XQ7$|?$zm!ktFP{#*kk9Su z#hiP9-SP8VN*Gr$azjz`h6l`4@v*FTKYk{qhv9uchW_W(87C`P?-sE9g!g}SC*f0- z+}#F^zcP4F&XF_aIW5w$O&mH_^6n?tNd5|clt&ryzQ1A5xruUbQHF9yKYeuA*v`zv zv5svx=-4Q2t@~~K{>=AZz-x)-6ph7SBTBvo=2o)86!x7P_{lElGm}cDmgz5Q(^Xs@K73H|*n>c>aXwgH_!JSui( zBOJt+;4}QVb}ce|wFyS=u7rP_!Kd<896XU}R;`4t5Af=;2Z#=inXylTk-jhZ2=xy^?D7n8+(Qo! zspNJoGLu3p`4vLTrXaiAzz;ioRUxwW3VuGy6!U}kSz@8@Y`m9xEc7}21P}3ok{w4x=^GN@WZW&~pe1T_S>^BLOvvTmS z2n$xF_r~O`Z*xuG9X^2Aa$ibXWhQnLhf&r7ES})kQd!md z7QbRMIrOHPaCkM(!gUqL-mIL`S_RLiGlN1rTg9)cCfHgij-a`dy3lVuxPN*x2f zP_HH+d)ggoTp4?24Um)iMSW{|y)oSLq|GcDsjhz@+4}#|{ zSplDHKRORdzNcrQF>{FTf8Ui*^<{8D>t!gpEe`Tru@#~X_{(&^0bIj^hdZHLb0xUD z=~oz-6xXb6bztRAblz!R^iHs?;+^ygelsyt#eETQU0IXUiXFk$IaAH7ac^H9`0IEy~u zFIw-kHzM9jtYF{xzUs@v$L)D+Rm^wa;$&YRHlQuE9p#y>`$EK*fHM~Rx?-BNF0E9n z#9M>!AF%9V-&T9b;pCgNN@V{%PCNSkI6vM0iTm@LYa?G&ftzE=!S5bh@+k3r4`bt* z3B1*p_4Ebbsc`fbboS17WBjN3M)*!WYedfRy%P_paq;eF{jed@?eQMk zkYcURZM}v**W&x|4e%qK^$zcs8na)eg_rRCHtq-7IfI>meH-3zo?klN`}rwevy(pW za*ywRoE&D#VTzo6bQd^EUi`Ao68u&2&_&fe(pvo9!>yvv%fS!PVEHIo9`d}^mA6`T zp0LIFz4*5{xmSzap2S@6$@;yo)#>|uWC+oF`n;EZbyDX>&RkeYU91Ve@Y~}V8}d=t z31YRPlt0d|2p>p`cF!y&=RiC;eSt$Ka4H{aoIJs|>Yu(ZPc%-lrX%9Jq;t`84}J6H zm$x3`xpPh3hX#Qs)Z6g^JQ-s;b*-WE0wUMPU|rpaPDO1v^GdllY3u9QgdNzcPr&|< zl+EBw3;8B`*^f-(6CD`y{xo`=ntv((33W80n-&}fVDLO^H3&`bL@$HgDZ+Vw5yjFE z;F!(^|AO!8p%Go01LnwUCOCWcKd(!d-9wvB|KNS!=2|hzf~V?p{3%zs>mRm*}(8CihXNt#m(9GyYFEHV;~7VvaVQJ!OEO65Y&%UWiX)J-!19c5T?%lP?aB^$?3K`^b`m$xXu_l8Y zD+#P?@jl9vQet{aR??2Q-QQiz7_|@Gz<%{OeoxyjJDlEvZ}5%%`_gH5l3)IXsn|ZO z8y|S`An}4h=u|m0za3o5XB}RPACc-S1m9i2UH_t=@a-w^qmfzEb=^I&K0i*Mr8|7# z5}wkU9PqsW>`c>4)Of?xD>_xecm)rWGf(TO&qu6T9rYy?%{)v_i>hh#y~N`QCGnFl zV^w>3YpC7ZDt_IIUXJrxmk@h3+u29^eO$D6i9dJ~n&N+C!w&672m>W~?Nhq9QlBNh zBUYcCSh=zlo-?9v4rM>9* zxA|Up_DB6Z^;Y&k&5@tIZ&y6}SlX!KTk#>l#lDC3?xEhTHB(xpn`ggv_P7}T5%Z%K zPxr@FF`jO+#!&t`@~nwG>uMIikS4knf9|<`tS|#Uc86a z;%oe$rT!O)xf(HR&+zqm0-58jN7Ke0ftR+qjxG$e z4r4t`E0`8anf2pmr(LW#X0t}FVtr^IbIO~^Q$ESwmHq_JALltRa`bJX1W%}$x`m(R z*#1AJPpfKHwoa|_w@Nk_?&S4fi!Qvtn#f|mmk&u3c(?sLXR1K6e$2mcL-;wI`z&yw zlX;YXz!`VFljmLWkAfHa+_DQ*+IL3!f62ejQFr8ryMK;O!UQ*6;HJAdi#hS|I|KZS znH%w>g8yjKlPDfcb5c$&udUP<<9A2^z5!&TE>+?M_^ z&!?NoCELs)CA-YzD*LyOr+<8CdMNpgX`$&GUQGCuI#x4Z+nFo$AxmETWqIpW8}>Y# zP~Z>U#2Qa5m=d~=|4+?fiJU_|JG?Hoc298rYqxu-Kgv9GLr;FqPjgjCd*W*!Hxr9R z3lh(4ICc-~P&m^FJX%(+Y<;|vIYf5R915SdnhBvKGcj=&`=4M|9$PEUd%r%x6MdNG#}yvcyYZNG3W_Z$ zrcF2eLn^dPaT=PRO6KR2qS*Z8Fh5DmM<=#p1KIm8{m+%7|I&H#Gf#S^c{;e^RcD?w zN5I9IrwsgvKZZs=9-E);D_?v(eY!cctE*f&nrbA7xcWGcQNgF|FyFg`)$JgXPAbo zn0N10@YqTCDH%qKVYpfvhisbrCHz{Jqhl7HT+6lSWqm=v{;FTkgie*5-lNeq{*u(3nKnFo z!&7VUJ5?ik84&5V1=wI}FI`M|f)_a#CQ!bGV8r}ShxgDE-IrlX6{npWy8!aPUJ=rn+ ze7t=F-|pMsu0BZn`&{noTK#V@tAFsF{B^n>DAz>(A#7DkZf1{?9YMPCd3@`<=UzJX zYt;|+n|rNKwRs!Qb}J4wFvodT!9BU`Sf?Yx$i)qu#b?*?)Ax%mDXZu58CF?c-@)}C zl_Q~F_k9lCcZJK)M}6|kTVS+mzY@Oqrxy68 z&Yka@J}cjs1<$t}9oe1Gn-}>#4-I$|y~+%i8LBgfhORQL&>_>ZZ8ELI-|+0y{LIj2{12IH_=Xis3KiFF4=v$-SQg&?>1tS{UyK5GB$nZW~1&q19P{DIgq@%4c=Mv764Zp!R0!B zcX8jwUZGe`&86lTnm$|iI$Qa6y+@u%VNIT196Ps(cI`4~XVabNS$VgEwJbiQp8HPj z2lbZ~uIrp9mG8>An5Mp|&F^bHxwY2F2oG*LG8fnIHQ{gT-DcJqk8^q8y(0x1J}o?SN5lv z+&>~LyHnI1YrmRn;j;QHo5;P~Z=>(}W);_Z_Df_BjYTx7%X#Lq+j#aX`1aTN)v7%0 zSMW~v1Mqx%mHd26@>j<>em;(Dr}YaweDF3w!Iii}$%g9lBEEO}Ogn%fd$ul>)~aW6P%jC*)C zaP3nae5>b@7dzd`Ep5zs4*F35{m5tRKUI0!wv0WTm8`v&I8SK!3BL2dXP4Yo*}BR! zms;^9{=(ZFo@7ZUdsIi}-Ck zwbD!l_Fv^^6a*t+CUOWmT-PoQ;A z%y#>dT|=ilo=F@n^}-{C?}7I2V{XuKl-*dfsuf$`j2mmFw#u$I5jd!B;F2P^OYRWt zIlne7)5vdO?pq4MzexW+BAbqILUeNkaIWQ@@JX=+dnhvyV=!R*`3Z9qrOW_qRaR?E z81?k^0MpucK)m& zpgej0*9%O0Ejeh?$Y=Wi_$8SJAGY46V(d`JuB&EY8Cu8%HE~UQNfE^!<>g{j=QfI zH9t#*_j*2duH$j~m~xFH2UmBKTkZ!>=Qmf-_YPu-T>;`i@w@y6{kVBv?Ch$iujt7x zrv9gg8?%&4vl)2QyGN8*o_EsMI@n(_HvB z`n$(CIEwy`B96LWs`Gn*R#|q_xiQL7y`^Wd^V&5C+Wv}SeS<^=N(mIA*$9b2u zgB>m{fi{~8@^hQ7%g^1)9DC!*k;0k}|2R-nZl+gt2+*BUUnCwC87=H8$W0tvTY5F+8{G+^eb=CmBj+hHe=hu{ zlRr5zDNs|z+N#2b=>^^=k|U{#z7&y9GKqJ)`ulx;h@C}a#a<&1hVrbZuI4e6e!${eP4sjJQPh1el-MA1PIM*+LTOSiA zUK~$<%%nv1sXV`=DwF*vgLV?}<1MGG^vYpZV(3S}q~tc%8~TBE+AD5f*xIe{^_`hm z6+o8|1uryjAF|#BKlF`hA?D0!AG+zZFC9GBC7wWy>cnnYRfmnSI5{>4nOtj(9&|0& zU~3&pU)qGjt0vpea<1U1`xp4WNDD;Jm!=rhe@$&|sbuNzfS2MAeUm(X&DAw2yOzBS zUUg35jA7QEXlN82`$X{dD|5)*MXo;Lz3iGD!ec9W z!qVTltdd6jOslAGqwJU(Um(H3`5&VT*iG95eVs*LJBbJAdZczZ<+dy4w4SwOvZf|x zc*cI2cHx8IiHAAuG||rPJM(i5XWd_JFY1RG^eIJfL)Tng$ed0gZl}uh*oV&a4O>}> zFN!B2lwo>*m!b8yHpQOJSjq>-RZE9iJ~+ua7q)!xu`1R#>TCD6I zBbZ{Ra^1vOwB9Vb76OZt+tw*=G=o?&y^llh0s;d{sWpQCKwX7ZWe zJ&1jBF#Dv%KIv(0LZ10v9(-AGZRs840(_TtPC$o=E7w`&#K;?V2L9B?Cz-Z#7=AF{ zwA1iUFI>94G~<`pdNwN;v}ynO1NgsX_)M?BPws$W|7C^jsNnwo&2zh+H=3aly^oH@ zuf}a`A8n-iQ$MMV^tcMMpK;%m-Q&JB`_{N%c8_u2oal%^uj|P7l#krMe^BF^Z{)LA zEixiCLsCQU8f)i7!O7#r0rE?e7fbJuu@AE6brR2!Lppf6*XzbHJY${a_x@Sw^S z8KApPhZ!bFP{^|R`m?~T=Y64GWz_zbE4$Ia9y>Pe08;@6Y(khn#$ta zdg~VtXY1?>^{bC>t&KyMdfh|U6u~oQxV49Rhr7%z>HCP~iem4QzIp_-6kl$~Zymez zcH=4R(dov8diL~@UP#rfIcpF`dM3g{dIjiG3X2`}zI@_Rr(+C$+rq;CBb# z8$*oQ&zL!LqE{%F7H3W}2dO**)?|Ma!#lQNBzW;afYr5EJia<&kUm`f&O+;Hem_ziInls-vr_n zRIbOM%x#pxU(+eGn=-uXqc|s(1&r;?LYHgXUTtlOCdCYa{=zYuDSGXGgUgg<)R($T6V+K zzMXG!zgzdSQta*A8>;{O6gv|-lbJdb`jYD38hcKD)N!_QdE9|MMrTzvK~Hp6Wub9Z zwxbWd#Aa4V9OxeKKkcc4-cI(O&5S|zg+C-R@9b0Uz)Zdz?{eSCUUnC;j|YLtF7k3{ zFTqEDyOo*i(7auRlI!}Pwa+15IWC0koO*Bwwv)Qaj-LMO^!wkNrrCpeUY`_rvYGFF ze4mxf`F5sh$3xe?HYku=EBg7E*B-)N`T@M|v%u-;4SN%?yM$k(jx?T%Q;tE`p>Ogqo;KIpA;vrbw$i#vuu0+HUEN> zlQm#8mLA4-@J}+18=74n&m0YcUJq^#(yk{(I#o0L@VB>?HqjreeS(cXjB`k@wU5sy z4-hn1=j;4=l6;m8d#BN~rt=E3d3+jkhy2|E4HXYwXlyE#{-h6mf#h*$cg;^kzwkHc zW?nkbt4g<`{GnRAkAiEbjA7X$Tp8I{fqNs#7tQ?mUv`bo*8aJi{xDYfXK%QUHjhFZ z8igyTC!m)#>>^;`)4BjpmnOw*6&?83#l9IC{w3u(=i$j6)=v7FsSlpYAPq&V=^b|MrQWf}cppX#AUG zEO><)&Om{twf*gl+UVc*Q-9w9R}cO;HRM8-4)IBRuYFs6*~DI;9O3bdVJQ8ri0^srRp9fx z>nyv6`OF5+gNa@2WiFH_C6jyQLOA;~qvk)TD-ahucO*)FFV(C19-c|;Bl;X~Q|ye> z&Y6LlE_h-uIl?o{o7Y8=1^$+!Tv=lhyWAOm*&@B})T%?|9#?y^m+N1Acq6!N9K6=v zIHhlABKOSm5hFO(UeCSC4D?m)FFJaj^)t%RqiJljvAth}u8Y2%gTAGI%}jlnJvIL; zvbBr|`?rDb`!>+lWa=349l zm--^grq%?#YU11B;Fo2L42?u*BO79)EA_Ao8C?yOR2nu@_9^`@fn){L>91@<;lNO*LU3F|zH@N3Q)o z-Y5NE!rnYS>gwMA|I7@_XA+PlD+xH60Gf=70)Y@gGf4o$;=Y&x_s2YD z=5x;HEbsF^@AKXdvik)W8TlVlzSYf`h}~1WdbfvX?8^qDZj{xEJTD$Sq3bdI7u4rb zN50q5yl!{07#= z;y$Bg=6kuoEQvJ=%|w^M+{C{kdla>Z2K9`xHi8oeDU)3IZQAA?OL#M|F6K+FwMAzD zPhoVLN0!f!{B9V{+Y@k*UfJE1hi_;6ZU)_Z#h8UR(h*6<(8taf2>m+KMEV#nbN{YmDZs?l5~t*!MCDzvaUeqA!#FwI}?7 zPfZdzd`kL<(3i>lIG;Q6i-?^bZxr$2O!q&00GgJE+!#LBD0+kb6L86+j|$crod>BX zjp>5VeDGen(tLhPr^554274pK{lVfz1Xq1e7Mx-^q0uA6^kn0TiSyJNm@$9*OJ=~g zL2D9v&@d2v&}FBwPjjR#uZ$N4Y4h5Ejka>e3k zAL##5#-YAf#``sf02_2mVagrojKt3*>SAMR3b9_;uI#p!(U!&>gJE{y9M z04Iyo=D36gxP0EnIm5ycLY7 zrXu+;$=^Zu0Ejn478{MtrmB^5?@jg{INI|je2mU#-Aylh#V63GB!{8gzl-tVDq8Jy z*FOZTilLo;bh_{CHWs~_Pd*jK{SJAz|KongqIZc&-%tE>8$RdHf6K9m`c}uyW0(Af z_m5IPC(AS1GlBc-cxSkCl%3c6DDUPxKn!~->(BEGzU^4_ykjKCDt5WPn7;Hv)0h?o zwl_Nr`!1aYgSTw2U$uG$XQB1BW9#+})Z3c2b^AWx(r^0!c>+40_Vdm>c!K;<-1o;^ z<_*CQ7x>@pNLg^4vjjib(ZY8JaCi~CL>9IB;4uYU5?DfjqEHxDmV9$b1wE6 zorTup$cdWA7o165$nQJAH`xxhKtsA*#3V7-?m>CewZ7s*MQ0N<);>Fo3!$-DzRlPT za@b?(oWrIoJ=w!O-zI#D13%%P0uRM8NX7)OBToDvO(WetzYO4i@*?itbY><)M~lQ~ zKFJu~C*DuIu5w5_v2)zP*K1AhIToPnmLz_Ib+ zVOHhrn#GU2V7ym1e^~V&kfY}DzwP2d5fgfBzB1NoE9E!x$>!-JtLyGGgB_{ZzxO6v zeNQG^ht?!phnFN?w82kdK^q7p^h#3c2Sek_L>AqZg=!5AohU%Q^?V zZUOfWyq{!AezxOs_>DXiS$S~4&Y?66oa^Ns@al+hWRmp{BQ_xxlKSA20bv z_M=a(5HI&=vDG}q2>uzH%=&GQl6Q^!Jb=?T827kAEw^3GckA{A!O*rOYc4qDA)nI% zbo_$9$2D%X_IK8cKb7xfL5|k))=YbUTdd~~rg2tbwQsWKyT z!76MO<$PwYZ%@j^S2%)!InaL3WODe>FY*3WUj9G9{C>iGTc(mH z2sq7SJo&xnTY1=x;8PR_QvHV02!?kou=8tlvu?@cm04Zww!~wcY12qO%P6R&tqmK{ z?bG%-z@{7+D!$?M8+d2KgwIiVDMerVgdux4@3g{P76CEsV+|F>Oe^DTit z4(~5qe%HO9pX-LrFZ|z{Tj^~MtW(jZ+2F3m zzJax>36!qAoV|7wJ<&|&_z?8_$KaCI&n%f_F(2^|!5=b*lo59q_M&$ezjg_}jnL54 z@b5}(|Egx}=r_?$!EmGC{o!{PN!))e-!njN?Q4V_Y4^t)?}HdMShJ z3f~`WPM-zbEOa^28*Er-RK1C>-MSaIWEBHD!K&Cw4jy2g#ly=Vur0n0nj83qymzVP zVvZ`GO8L^yqSIa^#@!xwO0qSAaf{|}rmX)@r9thbtF$L66P%TE^)Bj&H%zDAAE-Bz z@5AVl-cx_4n-;f4U%k!5E?LPv<|&TRQ~LLp5_1VpOgqZevVyhvso)7LALF|ecxukm zDWA$Sd;%u>!MA09ixz%Cf8ooxON+VX&RGz2d@FNwvEfvF>e4=N#)N*Ik@e!4bx}GVM5M5LvU=CZY|q3F`@ z(M}jx?SR%mamm%4RZlDjITw(#Mq;l{wd2lx<@oS9a{NUVT9>76s}Vhs-b1fjm)8-hbe|ADI0EI#j`WT+19zKrcn>zfJ#oM?MdW*moghL*b@)2cvdwQbHpnc&%d4=+EFHf$4j*lU3 zWz1?fd)A!%lPtwWnUgnXy&->3Vgt?E%~@`2N*kP`Zp+7}l!~3`(gNnBz0I8R(?)Yw z9y&tiQ%PUu8*VGtQMX;=zl*s}rS8-bnT2^SV}b4@$cCOx9eit{jmL4kO5jwO@mZOYocR{AR=e3x-jU<1iKeN<5@Yl zV)}FI4ZmUSpdHB;r&;fsL_62RBh$`A-f^g%+2gD{+97T-qny|e?)ggE%kPXc%BQN$ zOk^GSD8FcX=2`LlXC7+|cKtrqPdS~_X$R-mM)SlEZNAUgJU4P(d``K*_D|rG*3Q^` z#=OXnrg=H&&r93hf=p`=?R=Lpd=9QBo{c_ZUZu39d37_dui#S=o7X>hrvy6a?a8t} zL+)HcJ0G3#?7)d=PifsW>o8>tDFaxtuh?^HWi7ogkG38q7oK>?1Jo%-&UCwel0|$# zRi5k7tO#-WRp9D+WUD2d{pVr}l&?`5cnItZUg8_x$rp7Evr3kKog>`t*$2`o#^hp8;2CJ5&5NFq`%3UaCb0Dsd7OtIa0VFn6c0FsDrCi4jXtj9!q)}cg zb=pI{YMi)e!BTb+#p){S&k=K5hwfJ_xPTJiih1`nI2twDrGrL}t*#r=wakXyCP)89);NqmmDXKj zOC48k=M&fYcL@2{*53oiJspoNK7J|p%*13!pW5o~`1NfY`5)bD^rMLlhTk{xO?a?l z%>7-?&eP<}DySge0XXM}uN)w^^=b0JMK`(M3%T$cWn9-n=ZG`0bMCxBf3?Dm*}2vN zVDMMgfV$-UMGqK{s~TAMO8W(@r`kAfuW8IT>N46854H2N;qdrI;FnX*vAW^Cz5%b- zhKvM^BBm>EI{0<84x6rU47>&)@j&QcxV7)WKVYq&oFp0A_vi{aKI^Uopv&yL$JdR6)Dr4 zZQ*+&_RZ6OH+$qV_Plg{4@`_^42&4pe>xt2_Z6&}gXj}5>e%Tluwm2+eDa`qsqFC# z=FkfNzQ&nazZ=}qb9-)-jkM>NS`RLFIG{EET5iV6Rex}N?B8VUD>U|5ldMC?R=35+ zp3oOp;jcPCe9xJ=x?*b@^UV}~v@&M#2<)+rlZ;vXdvAQq>5S`g*0z^1E5Gp9V@eCC zY%XPb{=df@E59^euD$eo`cT{XjJZU#vDSir;?rZKxz9sy7&5o(lew>F+Fj|(x z++#T7wE}u^gU#F5SmAc64#Aqsq&f2G7-T=xTrU;p>n^)_>FX zM_67mZ*_&Ee662y8{W5%w-!aBP1B&wtT{OklB_-UJYxIkcHj^qFLw=b*(0GZHveBC zzTU8E_Fxla9X`x87S-}wc)o+26u&tCbd&O%<{9uGql`si`DwF8;&bG?oP=IZx^{BB z6rpFEmW1wQxx={{m@AKqg!OWcM0`PDA$+JoAKzh>(N>{tBQ zSs%d?xEwJ;+sja7@T+=1<-xhUml9}U@6=GX zGnd@w9}hIiW+Zwb`qy?&neCUi`#syn@Fj9%H_yXm5IMtX|mxLXY@1LB7AE#@~>atX0>5tLVb$>gy*V~afx`?=pUq zpSmgsz54!izPUSk{}afLXYu_rY>epU_Xm)>xnpG`^A5pF8N)8HYMHlWY2}7b=t)Ql1{xA||hX zf2!qxSH2W}BLq#>eh}`~P6v+AyNy%Glgj@ZwYk+}6;SU2-Y;Is8i}`3UE2SUy778P zjNgy8eAIh8-k$w#rN^oxkFEL|Pnl?#){3$QV{49m*GUmJ0_~ylh5i{Hbn(jB>cv;H z1|3={uqf?tTb zC4cTl^kXv*N2kj#^3T_cMwhi8{?^xfi!%uxF{TI6-g@x7(@i!%Fq*T6J;VA1-Ts!_ zD$gyF_Mvo{!JW{gY0#L~2mHiOq$np@waM8dKIlVezIY(vYa1|3&=;NYvV}+Y zCcS6VWb~utWe8;ay{tOj;jb1idM2;@;I30mA@V@VuLymd_$^U5CUjBJ zpF4w|qazrD@x1bajAK2zfsxL$o4)tJ;&5|Pk@)TWk_AEW+DSPrxAm?;uiNYlntp7H z@ciPx4?XJ)_C1Ln`?|r^ElH=FY6kZg+GDf|iIYjiMa#4gI8@6ZyX`c3L;O+%Y%XC1m4e;MKt$opHJPoK!5Md_)? z1G$W2xlt{8FF7KMGpCpN?%2bb$yhbUZOAHV_bh+^c5uFN%S7AHjPs+RarD`iY;DI+ z@ciLCe4OEnf%#74JDU$XqW4n+&*tI}us6y2?R8)C9r8mt2i`$`D5c=FK=IVt|4xf%YV%ivwhJ>1DU z9)6HE7M$lVT6m$q=<=!lqALphMOV)B7hP5CFFKrU1V5c>1do()4+OcD{(hbj{A4_M zfNy*z{LG__c@4I=7obg{Vt*v~!Ko(n4%0*9rQc2sJb*q&_`Cvm%eUC%{Fi_FigPU8 zC+s_jzcBoxuZCPj8hbB(VF|d1-@TMG#ikoY3zSE1nlo#lNxb2{1Ls>^@Cm2K3}6Su z4vDVcOgnqDbPIx6H~aEK_H2dD)N3Zi?RS@2%NXzb_!cLgv!^?}$Fr=ZJQvP?6CU;S zO!=V2@`Rq^u9P*)|1Ue<@b^xR$2Lbl=7W>0Fn-~(>)CQQHoNdpmu=SzyIeup?!+^P zquBcJt@Fdo>*O=o@Qx*0;b$G~*!y})Z|5!%*D&kg!C}@% zdxu$1@9|m>Oz~PDKRHbMJ#gq5qaFQCWYAeLzlko#$myYUf21q_wCxZ5J=S|8KA_$t z&I5Fvd93Nid;JfaoN;giRxfoe>i!D3

2jCqVb{;q%Imi=ep>8Yk z3-?e4)`JTb;JfsTFQQBQa&>b4TKvf`WFKsWJ|KrQtikqI!FY1L;5z42T^SB7o>d;G_czM^$J%J`tAEoNw_qN8qT-b<#{M@JeR%=)zooMO(O1I$ zS0TF}_CK9nvj45%e--mgz(DX29A@%P%>~A^ATniJ67g~Hk9pz`T*RKB^N{VP8=ePkZ^Q3L(Ysg3c z8hYPhc@wri?0}zgAMWL}8IH#6Xo^R@3Hj=M@YTuK1LzEGQhhk9l4KkFgwk=waya4(MWeyuItOhpNqW)T!fH z3$#hLM?D)y`U{w{^AK#%3l&g)|w241m<8<&(v43{|)VqfM)wg2yzRPoT zqW0a#EyzDPpG3twHuSFZ2c6i@WIID2#nN^dm`fM7hraQ`v{vWAa}F^I zUZu~xL(u}if{JX*NK zku&`x;QSHm|0eQR_(b#Kw$s=K9S++zXgWqr2`}e9<)LN7gL-_j{~6%U)nf;mZjmjE zIX#gbUt8>Te})&mfI0~q;zIfc4;tt5o!EC8(*)`?@T~l!XaRoQjXC@mUj2!2RJe>z z8war&7Nfr#gw1dT`$F_Z@W|0#k&W^|bZG%?guxr#T~+yqfhPFiKxmu8x(xUn`ytP1 za|N+Pm$Pmmr>%DjE`>&ph2KU_P5lAy=Y^s=M;nX+pVh%Q+V)4M*?qyklBe z_AYS=LG)Is<9XIHH1Inc4O+!L4@*u>h9 zn_;wUav{b@?#k75qi8|K;=B2fU?klYRFCWVZ}pX!Ev@`mBY_P2=#2?~r|z{%yL%xcuPp zRs632hev@kH?!_K>szr^4c9upZ~I_jXDza>pf7vhg-q)b+I%@vldl$2ymGb+^3gYaQh0p*85{ocZwg zFsshktIjvdW#SILNnnvZ!mgb@MfnvtoDd`n8v_r$x~Ph*n7kU&$HgA2{6vKX=57Ka2MB zb>Lmpg}fEdt)_WM=G8p%IA09ld!{{Y6>~}0(+<$K>dT&{GuLo@ZBNU2J!Vg9!=^M9 zp9kBH#+hQ*kDQNO>#ugSmiCM8t3UaL+GW_>{?(o}9ldTsMt8y|`{9=*U-wRh2jJUu zwA`jP(82a&E61MY$X`kw!KF8+X7OOb2v|JsRcB7a8O6E6cd+ zv$TEYwX$!-?OiVE#@Q3};{}HJEHaVg zh7Iih@?F;44c6ANb54Y{>ye k!zxv?Jc4F%^2onj!~8Ht%s+iVvuRpOO!{&F|z+ z!q!ZFLvjI!h8hFsF}?tEYZ-2IW{XltC8uJ@E@K8{bC095~KtUo^!gX#g&48;aL7>2ln&7964!~Gdp=6yo2!Z zKY(!_u=*Bp3*{N;CRo=T_$&NK0-4-(J9ZE`iOKblO-zMkzr$Jb=^PWNL?5;Wons|! zco@$n#-nd|$fb#S;!nh#^rO)8nr}GF0`_Nzidp3*-;ezevnoHqz z(*n~IbsqY<&ahZJN4)qusLln{IhM>mCI6gc&%C$i&S;}O#&*Pbd8+jn>OaPuPaxwT zBTlyN-BP<8n1GW>)@EqcHp(?Gjl;%U%?rDOvtz~ zUf;VplO+>82A=Cby1~XPpr3B+vzPGAy6ZkV@(B2>15*v_m-MZATKi1u%9eCytjbsY z+WX$tGueAzeM3L&{jMC>*}Qu@v~g;@j~3C|o(ruf)IR+v&PLSYc#-^~1Z+!`h53CVZ|__OXU^ zw#@VdT)GbJMz|1Z*BATR)^7< zhtG^>+@Px6?0IazLD>*wm&x;EZy~lc#C$J$@s!PH!nf?iZ>#!5MoD#aCb{AdI*P&{ zqf5+iR7*FbKG~!FEW-MyuxA;or=54o5JPn*veTvPg5InK7o;-Snoz;cD=9}7+F*|FG>Kwn=wg>qI z+h@Nsp>u9ZWK;1fPugRcci0zAxJjlE?`h%RS{2y;1)gK8rS8!+vQ&es*Ak7ffZVy!NxN^HACCVr#e` zJLJ=$G|P#-VGukIUU@+mw(P~GkxD+vf<(Q8vb)FY3?5Yy`4#25yE`#&FZ^LCcX_D) z<@8?x4=|Z;_dWh?;-}98#-gcP*O!g-VRzY}SV{P;zmq5S7Hl*R4!^wqd2BS#Pkc9v z{XhM3?p!pn&D=~3#k0FzMXUL(*obn*w3@a*VXpI))0@0V=VQ;APyIY>I(AIlD&LI7 z@MPWOO5xnL;a!<7_>GxTnQm0uYlH2k5xU#Dv}AW)M%`s)xz-{HxEf3Ab_Iie!U*#HlxFJtdD2bF_>-+Q$5wvu%I2p8TJf zqL+bI*XHd`Xw_Bp-$?&C)YJ2;;MsK!KgvGRbLpZS;KB~G}NzR zo_4@LsZJ&P^x}BCk5fl{9Al_f*$T=;bDhw~$?-ZbQ>Pd`*J0+iv$U}O(RAbP&#`&# zVZHY+^0$6!T&GoGQZlh~*Sz=sNW&gKzDRrCDmGfFro>*;&LPIy7+wavGE zbfMke0eIWl=dzEOALsS7-*Ntl*PS&)x*nrbddkbbA(<-`|Dcq>Is6`2SJM8%Hyo*R z&;fkGIr}IyEc46J)|b%2b$iL#N}KWzsAuhh^jl2)TpqvkiI-E11iVl%pP0Er*iYxP z#xJ8weHOf~Pw~%KaK=5=`<(6t`$rp9mlH#-^IY>EA78g#S0+687+*;oJ{yTkQ@^Ss zTb^L_2tE<}(v3ypH~$Q5ZZc|qTSv|Yoy}W}&}a3LXur&lXv{& zx{Je%W%W*D(S|qh8Redb^Sp0uC&%z1=>F1VVy#x=NAL>m5vw04L$;WWY%vF4nYs9W zz_T`ZXN_iWn1Mh6c_8dK)Yx52_p^7P6Gi2mYrUN93A(vG|1@XEuh_E=_N)^-mJ6HT zAZ&hv$wxZuy-M1Y-C!!TdX4M_>l_i;1}fur0r_lIVjFm6D0~ci+S@Y3I)GmN;NE2G zBlM|)$zNGJYls~`=KCf&dn(WwKZ@>o{}yMkod0R$?|BiM$8)T2_m}b#cjyIb))UOKy1G-@i?ZJJ4@N8c`Mw(Ff#CTo+VB6 z=R3&x$la+63ZVJLM(XN5)|>O4oLC;wG~XZb{Swdd!Ax5rbe6YK_AJS zA~lmrBkLGz-PyB)HA$tB&9{xTYHt{6ZQ3%@VlGv=j^^z)OYn8?Ix_kHh!R zWDM&LPO$p%JN<ognCD4cpay*A0 zi|bh7!@}G69hW&(Zx`}X7j#6rK*`ePMEr^-8k6g&3-1H3I?f6Jhcx<^-MJNAdX2_K zP8jLc>*D@h!_ZynOk|yo5HW3SVvS~j3xb*AYV5Y28)wJK8se#b?`DkS0@c)$K2l>5 z|1uVQX^D*|*f&>r=3d9C?#oB8Fn2KOm(Z_RGwZpE(2r$*zhL&wN?JB(o|)_*gGeK*Yuo**BU`Vt-7 z?=%m0aW2)`d}&NCeGdH(5amdL-U|D%GsM}fq?4kW5Z>nzFrTc_)9G-m| zyYS#M&JgI?5pTH{pAnbu9OjPx)Yp41d54JWQNJIN3r=x6S2MpEwDk?X^?n=gAK-n? znj_whu~r7}s(ysJ+%aU=;k+sM19e($nt73>nET;&9~nN)EqrcSdtNx&nZ~E@<7j8z zVDbhU=IYvyb!V6-P&~${KEd5=#cm@wCXf7Wykl0)gLWCoZRj?qoH3SHV`CvMBH21l zo{?}iHn+b}MM(v*<2G&KpEwtr{w1PBT94R`#7>(91mU1rABHsd1PN^0xjd#;Xg3LeJmvm+bN9k6wQiaD6D zD=i(9k6GXU1@Rv0d(Z zhhq#eoW=VZHyYOGj8kV@Eqv={^evym5AM5RoK@;aXNm0hBk?Er9-M@p5l0x<;Br@G zxw7jGWZe>;$rs_NzYH{qey-bO*muIC&k9N>7veM1W!A57jj=+`;(ZkZ(P_2hl9F$P z_?Fec#Ls?7lpka)#TDq}1dHcq4;W_7BnS5o8_y3Ka1^vo$~VqAyPdO8cQN0-6h4}J zqn9joq}p=b*gWg!JhT0A{)Ly84n@4t9(3CNq5bHRhzUkF3qS081>317$2hve=5sY4 zPautZeQ#wQ%*;o)pFHiYD0{yWo=Zg(4ro1dClUkJ+mYC2rl>_2_BaKL&3@%*7e8UmEz-4e1etEz6w{g>F2afzMeoD zdRen%c5nvm2tK*csrDhC@Q+pImdoY|3X=KKa@ll}o;rAU}q>}=+ywSO9!;q;BA?H@3=gv=?~23p$FxZ@mK zmOIY-HB)T;R$$~>WKjHlYVh9_jb)8vcNcyY?-AqY?pZ7yk*!CEp4fQ~Y@M29H}O)( zU3QKRUl;3m65ahv%vF15Dr@w2#}Ii|EbNB^+-?btcFjZjV^qbzC$h=*+AvfDqYd%ta&r~_cy^YH+Jde zoQtL2^0k}M9VNkQCh|nz!CB=a<_+3=v;}(hEccC@7bIol=V<4B(b{FEOoT3y58xlA z`QtdtFXq`zF82a>{ZYy8H?t~Rld{K<+vXJf`;YNY+wUB=nzI&~o6a3R2DT2v#^*Ks zHlUv`0e90Ne=746ea3FQRQ|!zEv~DOyprkzM;debqtn!1b~Z9Oxi;rrr}I5~^{o3J z&uYfcxmCHSXfH%NH&Y*&7lf`*{^K-gN2>2`p0V$z+4A-6qbC`V>TG`5`MFn3bZbdQT|UcF5tzx$oyJY>7sXl z4=4D232lpKKgK)1;J5bBP2j@spvfzQ3*YhDxbRB6UM=hV^S{Hhdi+7HGwWinuXJC~ zL_1$a;Kk??KA~8q*%eBU$PsV-!vJ5&Ram@eXgJ z%NoyoRmV%63hJn>fpxp%u@(Q^j^<@j=NZNyo2$pSGKW8}eJQV$bebHG67jN#}ACzRbCE<^}7}yGR$aB@6u*chx6!EFb(G9a7v!-#yaK zPY@72v1vl+;Fxm0~@|bLsKW?=?uj_Z#>RwL4_6Ki@gZUp;7`tXl0~L;I3} zHJ=r%U&@Mk!I{9I0vNsnZ=ikcLnad)moK(Cd5axyYhb@m#6QrkJyttj;tYM6!Fo#e zo%vqeX8{~ppATL#4#7)jwDe+<4^EHB>i>80^+@RGN!K9X7~nFNvq$-o`YU9w^8{va zh9a-^EO(7PTnc^K$y$WaJBVI1+-=Jd1qHy{+`D|2$C0|4wOT4$fCn3id}57F&9m;| zOj?F+B6FKz=b>9mf0aBVhf1Ih81!NLgD-#2H>Y&ha&XQ+%D?t7_Zn>A_l%TBxBExc zD5f;PdB5}S!O#@7Kc4pSz5b=k=!{-Lj4|iC!C4=kQkSLNN>1qPZ}5#Z@z3<2^I5^T zx``b$4qs_?y(B_%=+0zcEshkwJNu8Q6T4^pbP?wQkzO`K_sz?nTH0*7?9X z3BPsS^_K%ZKg=EK3xPqi!&v=&&XN-Lp=6#4ulq5*KMS5Lu1oRd14ECIvO3h%{1uMa zdn&%4+ZZGI>|il%X+JMn6_UP=%gdAc`-lt>ce(US6>VJ;bweO zrZHyG!WzkNsY%w3JLd)eij1vq%~|%N3T!j0prvlcl<>Jv(6T&ql`O>J$9M%izV% zhzVAI$XyNIt0r0p#Baf8J^beZ`8sv>F5rLUR8tPW&t>c(a7umzo$Tit{1kF|b{v0Y z*`T^?d`}BFpgT)Fr<>AEW0dG2xkh{^*<)*I6rAI`~${IkhLrSX8lC=UrN$a=uY?!xcu+aN3sqvJyO4L7dAC)8n}U8pm5J zFZLIG=Td*scT4?6-<#_%`j~V2KGr}mJP14$t2>XiP3X^ZfM0a)@b~h_3)dcPe%M{n z_F3PHj!4^Bqch(mZVTAV<98Rnq?%uN({MY#*5%KiYHG{`+0Tk&czHn7p-K(3V1L_^``6lm=3HN4t(Y7=m|h4Y(7Wu0xs55SANYmqTB2_ zgu{*f!$x&&M@fLZ9pnoHjO(vAtJIu9GbFX6vb$4QP#@qEABI3Rp1 z2u+o2obG!To(Wx$onr+)4}Ljz*O4ca{O#EP1lP^Pewf}aofS9vdDgdt`v>KR%YN>L zE+)=%tsgpedwh~vSFx6E&Mo&SBj`ph@1kbzA?40& zV^4sG;-v{oGg5Ei957hFM4re5Z}Ac5Huqrqlp~J&nth4=$Wj8hgFF?-+po6l*$R9d8lUz&2CSnzh zz^mNlnTzb-RC-B0a3RJr@1_!HTYIwZHcnX`M(!WLzSB(Z2zY~0vmB3SjZ4d%n#259 zzk+s`nJikPx^>_|o72Q5mmYBNtb+CH$4)lJKdoMU#cUp90%`E(Ij+olllI zVHBk~(vrtH#wGJRRsH=mP)l0eB z-3ZLe@bmYeqbb3sBAb4M?;B>4`wN(PSFf8<%Q&=W#0!Z&emS04Px!PI(A&!=Mw^t6 zQa(`i?+!Grs*oHzHgG%doGm^9SdY~6wnT7Zj6`JIp$wLNzEV&!G z)?B@b{tVz^yq#%1jUSQO^T=X1zO-AACA!H`gp5iYZi-d8#>{rO-^g-b`o!Wq?)-3H zVvNp39$z)IW^_6KUHo54|I$@QkojKcyH7q{g7L6y%i(apwUBbfZNhTXv~Qi&*%p7o`Cn{ zln*}1obqThA03P0IZbSClFj6Us@TqM`m$p`$%*jAlf-sD8;kACKQ++QHH7;$rw+1S z>%*>f4)%1`ZtEP*D14}Wy#E$@Cr_`d>d<9Ik?u57zNL1ag&3b=Ik!5@1^xS-`CE_^ z56>i?vl!U}UE_Sprcow6<)Jd8`cQ^Z{ls9-Gu~~7X9`_rRLhU4Z#=%3`cHfEVd^Ub z->AEdy4ZTEHv{Wl$`Y}k@*haynbz_f;KxqlKTY6&g4lqa#DAu;9-@&SLL+t(1FHW~ z)}Rwx9lZAuuN?!L7Vr^kDte(fQ0W=}#NLpOc_1zq*}VIW4(O#5dKt@|pgi>CL$!4v zeqgFK%w^14Kl0G~WQ%#SotP=~t8VDN;#jl}y~vX5;f)phX`)xVhWC(PzKZ*thW+v+ za@y-(l3OtzjPCYw`?^JyFnJ^o62FwJ%ozT{u=^oo|cZc9iyr*FKTpX6r`*^%(THtpn zF<9=Q?DUN#?F+6Deev}7LQCHvJ~V`1r)L;4H2Wu)b1H-!W7`q=PtI3(Cg=ous~Wz) z$G84p75{$)-yZyjTCs(3Wx?V?=J6Ge5!X575mSi%sz~xu3Vepz$>no9ywAvf8>TkT zjQ-__(V1ucH{)%FKThn`g#1~_JEA+&_y(tfCi6`*!Bf)+?k2v5^OCi9_%2~gw1;YZlU!^CB>ZbuCVGGpRSJ;f3umz)_#EFFUQ8Tt4~kLu_B z6?_zXDIcIHJezPQgpT3q^J6{({DwAU1p3DlE6upj^L9)}@4Od%;L2Ikt=~eIT63+% zA5rHs-l6`q5VpZCSOta#9PA7#+vT6ndM@MVV1gO|z8ndC3J55MgDNBfH&z;EMk zd!QHcvx$}& z{m7@);h{$LmG-)%`c`WH;B)N<9$cc^_(ODNwmk)-FD#^P09qmm~bH zl+3|@yPW#p!#_8)&Zri=rKeubyuX8dzfyQ}{RHa({ja#lT09fDh&GFNISmiG1i1Y2 z$mynp9w!N!jV(`nU*O)~VGo9Ht^`-YtO5D(a3jKJeTea1g8$ID{4?HTcD( z92cm2*W6_dA85iKsKZ<}nY&=d1-gd~?JsBln7b!gAM?Lm{PfnL{Q>yj@RQu{D}K9k zT#VnoevI|xCWrOZlMd_YgPKoDAUfXBetZM>c{RJ*`_6N=|Lt7vnq9)Z4pGi}m(g?l zYJVgX-=I$PM6y*LXU;Xi@U^VdO^xV(*o(>BIWX#W^gzfGqyE7eqBHXm(e*EqtZMo% zT792zJ4DG96jIwv~>e#y!*P|H`xWsmSQi0^c>x~ow4!U^ ztJd+kj?YSi`vB1GAg9>6yT?b^dWRdB=dl~nKOh$h=lYa_0Py2z66 z)P*0SUtmnyi`|T+cN6zs)84Vw{)l`Wm1p7D1|y>X;Xk3LVeP}oj^H2Jdy)l1j0Hb+ z-APd7x!Gag@u51y(92cOZa%WpLH3i~2lIv21U!AQv$hi0X>SxE50%I7J`64QM{YT# zc$p#n8k6Uhm@ZB4)luKZ%SSy{E9EVl%KE#&t2Xoj;t5`K&Fzm)H6r>g+3^>QQRk)F z;{1)gf*t8qc+wX1n(7alG5x>ciH{$Lr)B+GI76WUfl}t}XB~(!jD(k5*{(cJeQWSJ zNG=H;+k`H#(1@TPI2v9+x$E()z70d$!>pYN?Nq#`=8x~7uMC>2engLtUn!lYIsNm? zfF(HnYIJn|%h-D&tWh35Hd>d8JZwO$yZO4uYQ~Q3hn777J&*AIDQI^&_~kYpUVIQ3 zg~0b#@i^rkbb0QZc(2F&ACI+)@BE`4J8$Toa|W6egOeB!wur{isQ$tp)(KlP3(7T##uk+y)dzWqUEuAd4-_` z{>Xn(FG?GBy~=UcR_g6QzC56{XN+y!MWr#U5dVBlvUMNjE$1PBQZC;11pX5*qYouzK9hBCZwefWkOA}tA=SE~Gv_rqssq;JK zpZB2qU8kc3^8NEPfMfW7l)pG=kzy;_ph0c9-C2E;V{&sV_*OoioLyJS<-43+yTr#>`tQn&>&WsHLP zRm=^W@)7TI1=hK=SCeB*+u39U<(H!Jjhu@uF8oA1{V$owop~P0A0rRB#`)r)DkHya zt)25k@wo5}+P7W!K6;pAH?-{dmHx;VuIzy5PmXvA=&srwj*j{B%jAEQ;yVV8{keB& z;TT|ZihbI}S>K2pb!Itwfe876BJ$1ZLf<_Mn!x$kptG)4`{_~S;r7eWJrXC#o*x z=b>`s3J%Z-?g~VX0|wG>J;>SkF|g8HG*5U8dkzl(cbmrT&QWfuK(Wg_>|kAvuU5U3 zz|G{a7ETIo;`ugHU*r2&{L!thDhGMaMT5lutBwUsgo}P?1U~08B%4ZS;^l1gP8b%? zzI|7g=v>o{ze0T=1MfxN0{!=qT$k?w%;yL*TV|xr65wdj4{%)lJ`DLR0NI zPRNl@h0cY58#rr?JWClDb7WZyWBtV;DY#wltU7!M-$~8u?E>9b+vB~a*z!_ec{K3Y`ERywJxUpEc8$H+cve4{Yc#&!zi}4P?i{jOV^f5E%&r%%mGbm=e9l@jKz@jb{`r3d~PUN{FGZa7Y# z!od7I^w`fczR(8zes^-O?OpKJ>+C#31s?tz(A`te($mY!+n3Elu7uv+$r!@a5e^V< zZ@;T~OTJpg81ANTKVz@ryGA&DYmxOOYb?3k1aHl!$LPN8j{Mh&FNS7?$;s5sf3xob zi@1u8{N4Cck4L`SN8!NdJGd9B z0{A*FDzs(FrzfhPBl-C;yz4&4XwPFj=I~^Tdov>M(pII~X`i6`xRq=CNPe%!Qtt81 z&TZSff97bn;rrAWtC#Vl{G7aW%uD>!h0HUL?=b6gBYL2?Z%5!iXjAKS6g`Rd;cn$( z$;_~{A3YX1RJgA|>zAUt8=d}v;7#}Fm5f(=YED9!LlOR za<6v<*XKl=t^>cd##-}K;Un#8oewhB9LDw%FkcMrRG^Dm%y_pzue8r5v)*UN^^Mb^ z3xBzc^&N@~1D#NQ=D&bT(mi@v=fSMuM&_jbsP#_4=6d)Y{IY=aJ0C`yzKxGZLeH@K zUUVANiKHWYGY`qWE7{{KKgh9CnZJBSYc@Kqz1Xw#eWt$QOc*?mEOb46stt#+kr;7u zNAvy%yrVrk3BHdrsx!pc_dkq2nEuj`(PRe zwm&v{n5co(MF zyufepqp`=#So4O>pTRyWVE@4jI08xdD!K7hIuBo^<@hSy5cgF|B2H_0Tt_H>C3~E# zp*hw+Lw0P)ds;Cq24|*l?L)@r$sw zG}>I1B^xF_&$Zj(AA7tF6Rjs$w@=VhUkOZ2mt>)oz)oZywNI|ehQ>FiS!wj~>O;<= zUSLg*h^98@{2687SRLbTd#JR?Q_Fn$-NIU{-t~5l#FBQCwQb{n!beH#1CP|cPGY%!OB_TEH1}@a%On=nkG)v*1;6XY9(yh+ zfn?@TL0&P<=k1&U-Ps(R%KQYgJkI)!?A2O68o%US>322frO>A?#$XKTe@T6J4>qQ? zurKpy|2S=QZzpdoeY62v={Jo#O`WKb=mIb?j z8S({s6nvW~Z#jnEk>_>92;QK5j{W8EWsd)~hW0)=m1nQvR@P8?v$cjR=->OYcp6vW zA=Xg7`5F)QpvL3q^=m|%XXRLe`{&R%mBGh1Ud>*p&|cd*)4FRovLg9Yf2e&4O(-8^ z7A9;e$?&Re4{+|f`lmxf?faQU3tDw|*ha&;Wfb=iZ1K0Z0nbX-LB3JaFSW6*ZP92! z8?cyXIO@l9hokC$pZY1#ec`q8$4$;Y-SjH?6qmA&%h{)|f(JJJJ;MigFypEK4_NDh z$M>*rS%XUGYvQajzRew16XLc5Y|*0i;Z26+r=Al%xaj-DZq}1N!YMpQ|Ep(C{I5Jb zm))85vF~wQ1nd(&D=X(J#=vXmjjY7?1HO>E-o3g{I%onrvyXfjd&vQK44#1Y!q|h( z>bLc~4H1{ax`uvCbi9>kncOGnkMyBe3zHvK{zr;S3>UMn(5vI`f{w!zI0Y?ye07#} zEQ7r6#De*?cF%b&{01ZB=R!70!Jj_O&eP@RteF6A9fA%)=Q>2^36c7rB%fyMy_8(aD?`+MIO= zKj2jK3o{nva7TM~;K$_YDqc`9V>f!~huKTYQ)BoqCVvlkIG~yB&Wt3jk^0)OVET;B zr-l})%|)CO`pzE{ZF-4Z0f{<4{W7{UriXLH{7^>bS`$A7j`22XzL5Tgaf)Z@O0hO$ zS5@0##`cbl?+(cZ4c@0lS{b~@`D52-4n5wEi>%Q+6O7fK(I4%64Z3j~<5t|Hp8c9O ze#G8mOoesm8vm?ySdedZABz@zi?gMd^$1}D_%Ibc3OM)*b?c}ry0nqKsJ1r%H_jjI z2i&JleW&BG?d-h<Ql|%LoP0_wPntkzCkYRAa3j+N!US>v4af54l*1&$XT|n2_CY;{6i||A$d>B zXdf8bI6Np98;uhkoYNX~RJfZOI0CI$eiB^@xMTY_fV|XP}?nIWA)x#JTEAJn|$gOLWVren}3!Af&qPdvVC54v~jOKjPf7+s&G zab60J`*J5*neYw=kdp>HM&t(Oy9a%j$yy|-ee=UCvoGzXvbkpQ9I!c{%X$i!pc*g>DSOtvCe9I zIg6k_&B;d9LeA~S@vl2U-9A@r41KhFfO(6iXgtDy%~S0?%sOdq@U>g78`q`TbqzS_E2AV{7-E) zPP9D9++i_W_EU4g3Fv2nSGRo)IJ3>&HNSN+ua%(*mYLJ?*(%~+lGr1rqwBLnLyh1d z_IGzp=(9fVR0mi3EA#Nhf6}oFzxQh5#;f56s`CtR72bl}+|@}r(2wzh^0ns=Jn7se z+&nZD->M}>^-{(!zlp**@m%WI$oiKjLAR5k+rxEMIsv^9Gkh1M)w-^ZogJjQg9j^4wk9`=Hg>KZAM>ect{JK8g!3hZj6> zUTJ$eIe&QkeQD~D<=&lHDeh&Fz|m_4lg zfti5;@j9vtT#*Ir_tf42>1cRwP5hbk1d=`U?3Q?2IXa7t^Q|9%i-&1vs$wK1lj3Lg zG5^mT6STl?TR1JbPVHRJGwBoTc1E6W&E(AB{T^ea!}?ufT;u(b#d`PL**0$)o1^tmJ5p~5W8)}8UpHR& z8VrU97y>R01((cr$zQb7VJsYGZH)U$HlO9_SH8c``4oZ=C;u|i>SvuZ_vTt_!Jlh^ zN72tGBI6qU`ycZ3hrsDtbU6;jVMw>Z{|Ug#f^QMeEc%GAbyW^HsSfNXk!T%qi1^XLRCpELXRQpFtLPcw?WwQ+er zXH{ns`^%xR(~cY6M)4nF`itWC$al@$it%OG&9~_$e>i;0aOjJES8{H?Z1Vv9(;J~t zpFj`QmvK3{O`v0S8$JDc&N;o)=DCo+KP|)e8ouPEtq(0e0skewggX(A?7J=5Iyt!I zw%g%Rj)6OCeABEN+7P_E`9845X+7zS$uVK<<0p@qyCw^MW=ww+qOA^iBIZ`0_j<=0 z)*S4&A-=y4J|)K2+sqk6U3l$A<;&`TuHVb=5OXnseK~gG35?O6$GmyAO)CeSxE0yp zH2Bsa*=R&||7rXxo2Vb%H1s|B(}nSo^TYFHGJow2bEcguqTs}nL#@wW9BSPK4xUU( zvwarj=j8{6cjKY6l^8ceU$?T#5>Bv24flr`Q@>3-D-O^t6h{n+iUoAO5{EymT7+Zed;gVoG-?anL z&ZPAf@8^??%zydPhm8yFeld^xWBxzB-aJ04>i+*fcP4>52}>X=2`~u}NCpvv5Qu`A z1k|v&5YSd?B|xnSX|;&8Dk8(uHW+JjC7KGYEVeZ>mX<0gQ)>-kZ78+{QL1gV3AiL+ zD=0#Og#4bbJ4s9X?dSK$JZ9$HbI*{|NkL0qZP(r(XS?))ATOK)q+Aa?y3xu)f6JbuQ&MbSwg|dtC7{zIe*; z8|p37+$Dd%&H7fr?}ntq2%6hXC^Yp#y=M1X$qqKMgAdsu0lbmOnd=AM=pVk7eaP;I zje-8{R>=?e^jkBc>Bz93pjRJ8`8Tn*?0Rs7dk+sh!2zEY7yS$Rr&rK*g?whGnAt%le3R_dO~hZg`YCv)itCK?n^JfTPcW*OkFvgIQu7rvqxkWYzt^tD zZp`@{5+Nq8f%gl(%o;YL1Jn3gyh8)lH8Z2{e&qV;6fB~x3gNtO^mB52@B`G5|B-K| zFM1vCRRZIx^E&uUeNExnaMnw|r8Ckq@fp83h7BHAlKoxde%aM&4vBErMvt$Y>J5p+ z$4lPnnB3Ag7zR$~)(nr6VCPXlD(v=CAPF_L>vSX9D%^6fT@%g);932QG&%S>9)=^9Hb9;59pe z|DuKH^TD00V@l)+#?=C@)9(-Q18*A>qn|PV=@RZwvLhG8Bcq@P&@+{r661Uj7rWy{ zWvS2s`7Ozou9!f<2K4f zT7S6%&*-e>xrI*o7uNZP?+~L8EaNkKsnbf`#R(o~Ngv|esCVn&IOip7Ht^+I)v3adV$)*d3lEAc_Yu}f1FiiEd$yRnIHms(pY{O!&EGxN$t|3d%B6RA zRE?6qs$E+-N^(PbMD?{-C)g{E5nec!vyryu0vAVEkE2IZ9AqnOTBFF3fy}|$h(0dD zXJrPoQSY^HF713!@r^#t&PsbzzVG)Nk9`-NHuEnVX>Y=Y+gS|U*U*2@7>?Vin>V7D z>HH$P2eskO9Xsm?@y=5&cD$_D4E9RpKc-Lk&&gBz*pv4GOYmL?%=H&LPf(6NuQLQZ zFXH3!px}xSFt&(~{@cNd;eVy<>ygs1{y+5d(y))R8swrXK9#J;O!#GE^{dUX`qv)N z``C3C@lpK*>h4z=`P>%qQCT8ouc{1P?IJ!Z>qprh%HsJpB^ASCvRJ-z3cNl><4?8= zb4z0D)w|BZfi(ff!H0eM*P7@I;HQ3I$@RmXk-*tceqF44s&|<2Bb+st1Uu3BoXDBO z9XIHv--B=afX|V16COlAE{{E9lJhro2I9-1ld-iWc2)HJOWcFnGypo!x@v#rr*;bc zeaKVN0i5h?rECo6xrsCWiQpm^7#s}@j+s$p|G}D@?^tsgYhdQLt-0K*82~3vY8yAB z=o;qP46liQS>&7S#b>m&1=v!1?+ldwD>V`Xetqnp;jAo1f2uQ3Av&5JtG5PT^0$9r z4vcNv2+M`NA0I((dJ>tb)N-EkpsU1Zt(ox({|m0$fW7vH($2=8dc%#L_>LOp(bmW8 z3~!qej$Od8F(_Mz-NB;WpF(qIBsPD{kvJp4Hr@A`5@nfAA(D8P! zH3xOSw0Nmhba%HA!>7FY<{oukWZ$gXrpyON(zaamRn&I5__)BY94)NKI#68%l zra*MP`#aXM8t80rh?&n>PEm~Wr@+;X*z&udv6gWr0>lJB@6rMd$GRHsEjM$4!$9#s zb1ATlxg<1L{$N{pX0s=XZJ$pYS=a%EGjnL`cKDyBB>1?m;j6|P_^s6HZ1@52b3qHR z;Wug3*kEMksBL>Cf(zTf`KQ;uvfANq8J&S1nBxK2K_h9>aj^| z;(P1M3wLWATl(OebX9P76FD}-tLym+o@N;!CFeY2{n%qVL|llU!ZLe6$~$ha2y@Ces5Q1+uBc}z^8nQ{7WLf&A0qu`}o8??)ZW&}=v$3i@x z%R1l295t`c*bBwbXm0X_QJLoUD02f~QbuAoO{BhL4Z%?xIj96jvI`FYj%HKmO=!&| zJI4DTUQ7%lx{&3OI47MsXxtj(O88N9yYmkgLnk=nHvGEDFoUmyP9FttYn?ws7aQ!; zF*%j9@F-<(lB-#3@>y5+E@J9a{J&+tX+vis51w9UB5y#bTrj2IYD3?`!}{K-oD70V zU|;Vb4^7f}k>71Qup7Wua?Ido@&|IU_tX*ZhN@!YW!6U47Jq8S1TF~3k6r8HN7wK< zI)+@|WuXyCIKFD9_ZaB-y(9z|m z$2(^ya|bDVuxnN}=O87LlN~C*$L3sfW+a!*`uVwrHSSsVR2$BA3-x6uYy~fK<^%eF z)sy5UIp4kW3)3gNvF+~x2O)He(yQ6UB~$!SVhDKmr|>?4#WZZRdhZOhZwv3~+^wdM zHP906|547>d(av``+ABsknZCNaI4Pssq3x|OTT&g3s*6xE0Hf|gqM`aruqWEt?+v2 zPxszF2W?_tq@$V4duA-WF*@F_(SJ7bMLM#D4P3T)(7kf*TaYJ44Q5Q_pmO<(S4KGV z;8Bs!2J!!dxfz=*xv8$Dtc|>JKFWurBDY{)Nkhl|#se!iG(Ygbh6jmXvG)|#-f(i| zp^VQSI8^NQo&<-?Uk*Jw%e}+FwOPmxDUn+lOWOeKuijxD_9}bRNS>2-AsSpe-2I=! z|02$9&}%wnZ*P9Un{4Q(h5YU}@@`9-iNy(wAMPBPj(wQAcd$;2(YI6rBa%;EgYOYu z48i~TG*|A}%9L#>`u}a zc;rUODpy|Ws2zJ>#T4;Qdhc0mHk|bd9{N)IDw~*^G`VdAx!}Z8(Vt`|`7pJ3$X~|Y z4lUK-4L+^^aAlhvu57cmk8_mg7P#gfV%tAppJMzmey-I0muy2l$u>3I;ibKlt^nK% z9ZZk-AByXMU#oAKfK2x?xkcc;25Zk5v-~Got_XI1qvyXr-hZd)!V&Ewb2Gq9YpHCW z{=m0;>fpy+ctrauJ{=fp-4=VkQqRF_d4o*>@KN8+I9mE#wY|-AUB@we7FsStE@i)4 z8OQo-3u;@wbhO8j&Qo$@RMY$XRj?nwo)v?kbvDExnbZ{9UjJ%orB!Y`*{m@Z!(tG z+1&*UQonORTJ68rnRCrLLqqF>@B=w}jWZ&be8c?jUFYm##ec;9Yn@wIXSE|ZKz}hv zF&SIfv%uP`I~J0gCm-K7=^M2d?VNvNKLQu^ystTG5483=dwMpEXX1N)syfKPwCVDP z@XOH(+I`z&%Ed<_gVmLm#W_Lx#aaZHo0D zxY1olc+I_ioX4k$XZ~%Y_+*!!t()YeVaF{$LOkZe7ok1GD_-Xbf0MEnXv5>^0PU|2 zotMg8d+#IDOGXntborQ9>bOf&B>(PrXJ_M`sFj|qh8bqyTaaeko%JbHjfFZn={bXQuW3jS9xK`w&> zyRMiZ9gkDU+8+++&I)v9p-{OOI1xPR|89NQ{$Eu6`f=2IE&d zFDXwiFm1T6Z)>hO_&PWs3=iD6c40^8zDc{4pIds5N3mrz;#b+|&FawkdWr95@QT`R zTsyR*aqlg=k=4+DVBd$o`L%a=$05dmujI}~?=2nbhurtj*Q`iA>ygcxwJliQ@gQ{C zXR`J;j!4)9Gd`&J>-T@6ds}>ziywS;@37s;#HA}nrPNx#@mFgzJD!JMa^ueNLw?@- zrH*WJ^i;lV=AH!(8>bK5-GFR)qc;@QnAX!y2j@X^6VKUvqn$NmWq4EL-Y@SCd%xT< z>88q##_^a}# zp2U?~ZCmnjb_Lk>1 zeZm=C!na`bV}2junedo!A~Y$0eX-ulUMv4z)wEb14&kjm-Q7t;rCX&h*B=`FzkH#; zxLbGA#2x(ja^KhgF);ysNFw_Ee(3l6qu(C@&pi-6Jc;u(i1RcUe`T|y6MfuSXys7G z`Z@MHU_MZ@*EkPyhJ80xbl5j7>HsIWdcKA5U-(RRwxORp3XZP<@A__9Nu3q{s-tH$ z>8_8`}Ua`{t_fB`*fU2_8F=2+aS?8W5RfB}T^d zhkvvNM$qd<^7+3n!R(ArD%rlsQ?k8pMsWL*gy8m{tZTh}-MW_BKU{b8_E*;(x&4)O z?_K-;y7#aBG2iQUpS-03f41kLIaO0Lu1(<6=}kgU_|+#0`TUbO?Dk*8hw~{vHo9+k zrs`1sF=PG5XggfR@1@LtHXrE+7Yqt^uHchxW$w4Eto@Te2d|A2Um=@)OwTw$Ws)yB zV=9x5dMssqz^VG5!2f*yx2~Om9y{IDL66ism(vb0jw+K5I$LG%k*$+sW&J73QW@|d zoT7RIC`(gY-ZHnXf&3rL|0KTurMtdA+qn`U|0n1zU*+>5pA%lwbq{;n3B07R2jcZS z(4?6O=NppVGvmCJY58r+HETK*Af^q7R zI~IUDy6(6-UvPhx{jO{qSXd!hbjm1aEq=LA<5%z)aNKaz!q=thOu1v}Xbr@inCA39h02(%X^jH3;{<(trv<^?M{_ATH%S}C>p zd@QSEd#$1Kd2h?!(*Htoz{h;JTJ;7p-f(Hk)q){Mf)i8SS*w z#xdHmtR+w6-}}vuS^AKdEWfMb&_Z;3+2}@RS{d~5;Kpp~n2bfkS7!xZ%z10k1IAu7 zT(n1PDcBgo_=Iz{POq>|TBDl3rx&gsh)*Bm4q>;KuXi%IPS2X(^%t&A#=rYXk8=~{ zr>-jxtKR7^%msH{4-UHyTy|}^YsLSIOTc}OMc>_PJqNL6b#<+Xqi#I!^x@sU;640c zuJZ}+)hU0M__r+Zp1W6#+2Ege>=Fk1d0gOVF|q-;uATe9hpyV4@F}KLlP@ce=bm zo4W#L&@eMBad~;nmbLFP@cF6-Hnf9l0?_Bjp@~FI;*T~39rThXe5-;RZ2D>kH@5X9 z-Vt255c^AGB6c!hd*;d*?9AjIHsQiHpDA2G&f`}2Jn(CsX`YNvcxK=jJ`g+UAHQ07 z7(e%Sh04p&YY4BC6Z7QR!p$4GOa6EWm^{RMDwp0fr5T-^{L?Eu8MSXNsO;Fv_p~H) zu-}WLELT^3&f&-BZ`il;3{WDci?t z$$_6zT*Y(94~nZ`9l)i-Bd^2D>c6k7ro5e8Z&?=lu974tyMNq(nealD>{k`}uqp#=q&xoKHo3} zJgl5HWqvc*|4nPz7V5S2Hw9<0w@BBJ*F?Tkc*RO!t(CHKl(qIV1-b}jw&~mej~D`9D92Dw{*F)9Fgsc?HN8Zwuz=!0nsMw3{jJS%5flbrW+3OVWT>X&( z_imZf9~UQ`VXrF^vDwpap85seY5VxgYMZ=f3BdVM`u3r}(=*#jo9(fN%v}gPR8waW zyr{;eF*SNRCf}m*fro77S_yxox!NPsH&rpl1mC`mWm|n&(%n~%!S)j?%T!qv@1s+k z?H@L?I{(tmnc4VqKhOAQ(casv-}raYLy)WcSMU)&`LZ3Dfo4tUlDuWo3~CemgPOq$}a!! zXR$joHP>-hFemy@e`;snWRv8hAI)V9{FdF5vpf%4qCKfZuXf@5)z4vYr8}2`|LUh_ z9)IMy)>(DdUuu%{J!>4_QEOQlGUfl8`<|Y6_MsP2{lHl2~4)q z@1C+5n&zRM&%lq3jH8D8>lFJNBo;wq(E7G{z^l9`yP3ag#V0A&rcC)w-~HRJh6MW2 zzO*uC_4jkeP{bI{@EiKjsdJ*=pCQjT%7)JTz_;^}gVT-Iawf1w@@c7t&u;NHO*8Pb zE$G66j8#4Y+3bUSh+{bluYw=E625Ron7wd-;S~8zRjt8a-wRJt0)NX~@T2dT!{_3v zypCEc@%ZtHwHs&i+s=X3Xg=^&=Iw7C`YwIj;7ZOzU4ARL7M^As^FR;bB(QEi@Fj8H zMQ!jAs;~Xjm^2pQ{ClUwaDGh@^8IbUhEM&szDqEa&@UKGF|-d{%L!a^O zp9OuLwP+-Mf0nBk1OB4#9d+}>MP5e_@^^T*YQaZxa9Q@VH{PfH$sjMBbn_PVAM0sPI&a;9 zdJnd_yU-Qt`9CK!uiIX6b<7v)l+m9>QqT>5zXe|r?3Uue8(4!Iz#WI7vGQHvZrX#w zm4Zvbv-W#6-@?~CbMFSIk-c9q2Hy>A1Xg*{kFnqLp~;1Fzze*$Q}wferRARV{h{xe z4(@&3(Bqs4pM6S7CC z4-1*iHap65kkvf>?Q3h$ZH^c^;@Z-arU*@Ll@ufL6%o6 zo5lFuIF=rLDe?Jk?&Vg_^8C26L>r!<4IY4eY1L0M?)9%vpPR=T6xC|xeJW77rs@w%1nvnTmkN#0*r`9%|#CS z2LD6!6XHFs*(U85=Sjbx;&-oa&j;Yo64?c|^mF;!$DmulL4o{yzB<)PxlX(`zuVFA z_rCKs@3?$(ee9j}7rX=AOeyVo=WiFh^BV6|V)GPD$$|Fgyg|GzW6jHH&h(-eoxyl} z`z@ml<+4z}`+M5}C;WT9#L83u9B_I$x>)x;@X2Mo*ETvBKF@E1?9F(cuU#nQ3^y_U7HqK#HCQ4y<&SBBC+`L(LX3a4&d~{E^|i*? zi~aC4-#aMR+KA6j7A&DV6YY9ixy+zl@}+yW+;Sp|pHam~;u6Tmu^z#w(UpOrG{@3qa+Od6Q%BG*g$KQT$pyLm_d|9?NAn|+m z26jsx*8A<$KgN5KPso=z|0Cq|K>gFQsqoVUkxDBqCy$34WzJr3`E%B7LXkwxTGdX)d40TXw5Qn;s^ zd`QR&r&;@YPipNR^mz~S|Fc~EPpe&xPi|PxN5`J$@LaOgkumbSO{>kp*G{pF>Z=ue zE{2M)cRHeOH9pfzm?9J2c%^3D(sg-d2*u)1nMtb%}yhRN%4!rh><&xd3WS5_4 z2jA6!BW7CbGbNw30GE~Ysk;BF1Dr~R?5(4*w17W)$8s}c`Tx5^Lh!17m1DVbV<~hT z*yOGnn|MS2_E^4B*N^exU`Hjg7_wQ>8Rn|EC<~Z_FLCZmh~-#5;|XQ%^3=OIs#M3u zuf;uo1)M+bQaPGyaW=V=HP@H_3Vv?t58fnz9jC}}{)*{uEAUf~FURj`Q}p?l?Afn~ z2}t@0z75y8_a_A!!F99~m z`{7Of_`ou^cr&;Sok%RMV^|=WyuK|1(Ir&iPa&BJUrWuUjCK@1vIif_Z_(df`0}(d z)*90>Isdkp&9s$gnwwj8N35)bvdh`qO|1FE(ZPE$3`}mvmTcc2d}IUnNmY51Yx7Sk zFSJ>vSmi2@Z~ti8zx-1#`Se4B>8DU@vYvhd^rP5#*`3?z$1S5DmF+Ax5mu_D91H;h6Z2XW`c{7hIKd1VXufKku<^6QV zqOwD0!KthnaaNBMBZJRIKH$#E+S!bK6?u@#SfiV{2Q44HrE(dmKlE4VO6-XC2Ob(f zD0GqF1+`m=4N>>qi2ox8S74{d6i!|ejLx^lPsT@xSkI2htEwkX$)@bcK>SJ=?@0LX zw!~oc3EIEBka0ufQ5XN1o$60xkZr`K&u&jFr-<(F=$s_I;g#WWg;vUEZ~r?7wrIs5aE$#pGN8`f zk1W^UQ|0!_Yl`GwgC1%=J}Lp_M?@ER!hD0=%+PV=P`VnESB@g(k8tVhYsF48ZJp-4fHMO4 z9dQ>yKiT3>oLQ6Ve4917iu@4Ms=D4wsk8!T$ zOWA}jrzPI(%zi(12aw<;k;?*p#=TL;u**jdJpu&^I+)|ty)!JLC3 z*uS%x-<9Obv#?eBjpfGKWuTiDt?Gns^kpvkEe)JH}^&yarJw4+Y?*Pkz$642+zEhkZGLI0p@D|SVv&=!U zXga%AwrE}^K2rY3C~#FTpCo=w@F)R#= zk9TXT;%m_R zpD;6WomG^{KX>sX)0GFH&eV~A1V62NDPN3l-lD};EFNV}+P~ob&cR*j?YU9x<5swt zz3SfE?_eGu$KA_&eq2)+RVN z%-C}0&A_Znw_i?n?jFwFclbwg)()7rvYjoAW6!n`&Y#f_Hm!fc)mJUbF-eB=u05>e zcO|m3a^@b|Hr#n*8+n?5qlfrk(I>dQd7IyH=X!IldnXXIc6&ua$@W9ravbBcwy*XC zu@#%`Yp@qDCN}FJ?=>TzkuR|B)LQO$$)DcUxi-<+sF)|q1is81UM!yGH0v%`>e!vr zyI8jq=D=`rn#A7CVJ$r5u~7Y%CC07WK`fp0mHRnstsD9Q7qNQ-nmum$$yQ<*+BVE7 z+V{cYBFbHN2mAKzVKl3SYbuBQ{!o1yB#p^@m zZ+p%+?Dm;m&G;88)^ra3?#L_LeHG{6!?fLQC04MnwY}}Aw?lTZZcl>Czt$}M)|5*2 zJmg8Q9gENS84vLVCTdhTyIZwGJ#bC zZ+kYmt6`G(*uJIPp@W@*qfp}X?Jf*?dtk^LgCXS}()>cq8Q!ff=bk~_bCa4yj=U;^Ae$mEAtokxkgLnx@$YgB`8NH*JSJ9mVvmJzbTHY;dZ3 ze%=cFMxf#Q24uPMe*yL~pFOp$g#Fm+o~Y4tI#`4g2)$ohxOFow>SDx!^o!RS0Ilo~KdSOd^Tr>Nz3ZIeyzG}_v ziw#^E)?P3^2ERD1D>-ATu@w&5CfW)DFN$;SCN5aM1MnzCDmScy+6d_!y;X$G zFryaxL)3#!FUMLud>?z8ZC4D}Z>>)`W6}6BrW@y7##qLF`8WeQQ{W=!BK~)+C<&M0 zBO@INI+^-&?)iWpkgkNwU84PVnhPI?YTT;QNY0#E*<$X9&zb(aK{s-ju z{5az)?)K(ez{AFvoDsSFS!93cPyH36oUXm=%ZF0;hkfH6_kN*SmpbG&bu41>*1|7U zU?bE2e&D7c^ijN%JAcX~YtQ>DHr~D+lkHd5m!}&$QL&zeISz#vQQec^(mdggT*=xQ z_=_Pw`~|;Np0z-0)2y^w+5Nh?ulzM=km_88uA}Ai?wxOgd(?)?hR~1d)Uej}w~L(B zduujIf2DKw6L780m#thY-mFORR&z2$pR=(A*K(HUphw-z9g{8WXYroA2u^d!gqn3 zK(c}E<$as?@@};^`Gznj-a8CWu5nBMef?iuIp4D}gZ!7z zv)9tWJx^I)F6Y`xOT-ot{Sj>!`eXN;-^w0b$)0qrC`Z=pPKDfmB0pA&y zk8`4Y7mZGJehe+&g6&qmjb;w9#l*YXGqA4~nM;YCVZV@xiJOo4S*Axy*$b5|#%`KT z{D|Jee!(8Xhj5=Gd`RTz0DP~(11fX*W!A?4TTn;mugtOLzWec)<_>3LqaVf=&mPs> zH?`yZUwDt)4a6Hc2dP&{z0H1e5}Hz5$@6UXyec`Qd+MFdUf*%Wsm&(l4Ec_H0(Ru@ ztYs#8C;7GxM&Eeqy1C)cIbU5X=7dY7kH6p^Y}Sq3iA7E!^Jsym)mpwi0bjv^T@A^C zPtL6NOE~#Le!DmKk=8hwb*(N=S z+jWFkH+am$3AxS}ltcTOQO-N;`-^?E6n|Hj@ig?l2N#6I6ZMVZf=`LPUCmkhoc8)E z{<&wL@kXCv*EtQG?0#TZLMJ@AANnQymV-WAIQT5Ey`6O{1MbnE zPHG;U>C&NmD>)HcpsVYUoUz)hDStiYgWM_p_a1OjJFsTpb(5+0{YxbaUfB`DEB|+n z5Xlt6C(7ZH-ijUuzJfJerg86)E;ggk)w#B@57M#a{W7leYGU4y=Uv&6vvi=DGgXR@ zOhju!c_a4x6xLlbS@<6g#U9NMR{3Ty>-p|hI zd>8y#`W0+Bek*%f!lfHB6L=;#NchrB^3suag9Lu)IwKcD-^W7V^9P}u0ABvdvvIWb z(8`~&H|D@*Y=;%lksXRZu#y7p^tmHG*qP)B7F|z2f4Y+YR`6ciN^I1|;6;3OS*i~loXkDB+*t*TNp_ZvQQz<`?zeoXTznUv(P^<>P2z(Md=oauR@PoH zI_oSxN67gb!JWdT8h0`_we{S;BAt_PfbLWRFP+%cXRz}k_~kj;Is9_GQ^vS2=Iq<> z{qpay7;`p$AeF3X8T!DL9&)fT_RX9N!`iF9#+*^L;+~JYyBahno7{wMzDCwh_s{5g z19R516>IVJ=In@njOl~Sf!Fwb8|$OoD{GMF&l8()p{>@nV=~6w=#zD}-iICuzv}lB z;1JQ*4Z!#f(7BiJ7o`9BdBCLR&NJ{?TI40{ua{6};)2_SPeXmo_TBg;Nl*GHdXpWD zU2Rs-4)mbt(LTBxES7)jD#jLK-kcXVf2y7*^|Y_HGkV%po8RKu-PlnNGbcS8biuRG zc%Atf?wOa5$#D`2@3ZCu2)c_XKF1lA}(sj`)Ms?Fx)` zZiKHq{KPb;dlq_d_9euaUuKUVVO~0O)4_4S0e9E42k_gD;7+_?8SmRUqaBl)Uh4r~ zl;^+VQY!_xI$$cXAJK<=aW;SApVCA;Y%kp|`$jOT^#wOUcgXXGJ}RI2NWWF#`FDP$ zvb+AX-bU*Ad+Oaty*%>WmYnc9esW%wq0`Ob|8)Kzq0PhO8zT>3U^?Z0D!^u^-(Lwv zU+eu{iG0ZKvWtOjH{ZxUe7C?Kznsy@U7q{F0kL;Nu8s9XPB7JN_td~H?4mIroU;4> zb9{F)zB9m-=5fh|^SI|f>rJ5EKYHq2M7>!*o)NBL49Xoc!q>d%5IKURs&z+Q=3E@_p<9u1rCB&X4`h zQS9Zy8R$F%KZoDCkiS~b_!mx{aHA%DE*4xnay3ys~N{p_UbEP zUsl(Eu5{hoJe~S8&s}|}czwc2y{C2pyyx2MU*rA)WXlrXvxoR*$KfmVG4JV4==PU3 zy7xj?C2hI0%x>Pe(D;s5^1cs$9KF9r{pMZfRMEcP&yV*dex;vpw)%gUHnc7tc&ySd z#ydH&aYf#uynAoV?t1n%FSI`no;@C(y-(O6NBkK+^EqS<(Pit1Uadp%!yVbST<=K%|e?)qm$e$D?f{_7r@mOBJnLn7PhQ@?ldtcGV>y4LztHh&6GWO3pswslQ9=MUB45) z`KNrRV7J1*i~UHgu3{Yxb~xDxlw;Yz=UOWtIAkZ9=seD(%`=O-+~3AIwIkP3W?X-L z_SBo6m~Rc4eGPoJ-8^ZEO}`1ekKHJ-?CnXr?a{$}?fD2|jPGGwT0i)m6Nf)ZRL;b@ zGr!4kI?&^vgEvyXxF3|Lt!9^dFYmVLWV zedZnbtSHw>2m5gka@R|jh&L(?A0Ka}{JQ5iaOT{=S{;+!&TDr38hK?1Fp6AOXQz6d zFyHyBa~%1VODFdNYwyaNdj~j|K`UZ0opFxeJM_5u2z?>zW#4?S{Ago7^|%|t&CeNR-FoS(oe_*)sdH#q)mwqX zkH!HT0ry_2f+fsl9Jq8Ra;b3TrOf-TfQep6gX%fk^_=UwkV`}4HW3a(u4{1p9+|h! zr7u62k8Wv@?5sYE`%f98XsSKb46cILBc3Pok$%wp9)H*h__`4EcsYC!{C|Vy*UM{3 z7dVY^X-(BOwAGFOQ+vI0dV=Q{cj0448=@H(j@Qc>X{5Y{Gg8Gza3{NS4fBv6WD59W zBA){AR5G6sb6doR^Cf*tLCpy2@sSS*d7{wK13$n9KC|h)`VQed15M>lmVg6Kw;QdJWORJ3Qc}|D=PGFLTIMkuznyvsrWZm;--dKTYtjV)@yTZr+`=?*==bL{D%(AL-4ddpzUaxUmV{ z{w;6Da_!V`r}h!yGrw?6O5_pz()Ig!;#kwMrHRkyxnOKp9%op7v=!c(%ok6bbMM-H z6kdEM z-+7Al-vZ2w2DV*MGUfa53zg{WT>G9^{8f5nn@ji2cKLmLjIE#pJ=taS0npYj=6f1# zRPg;R#&HYZ$Jy^w*O7yGy5h5DL62sJf5Q3yZ&~0D&W`jiA^Zz~i$FSZzUHBOC^R06 zTxz1Ho?xi_YS|L+-;zMC&t>R>6TxZo6RF<W(!v@F=>!+gRh7$dn$&eHx!? z<+7E}>TJ&NBH&Xzh1$FuUH4tU@9kr;)q3o?pR%ul-H*lNBTHPvK6I^kG5iGoyS?^7 z!R(J{I~9IP@3ZI5%yYm2-+fqv8f-||yRpSibDADeemC;|=a|8Lft4C)chfVLb06zh zgI{FR>z4B^ey^Fp?@wZNyZTY@5;rH_j+~u|PSXf{09OYeIYYVTr*VI}oO^_ZqT}}3 zj-PRNt%%*t=KAL`*Q1;V!6CG`E(cpfOELK?d0*dKIH&S2&S73|K7~6h&Xb4z@d8tE zz!bbC@5lV%MmeqG6**7HB|DURb0cTRjx*(X+~Kvw%AU+#1%R_UbMvLnpIFOPeTLsz zL425UCOnLMv5K`ie@97}zMPZb`&rN;Wb+AnA3eq{^fo8#$NM{F-}iT{p}u8m%A3%m zs@))U-FugAxzyPOU$N`m;m!--joI8~s^youo`ZYcJVnU-fvvP1gkItYxC`DGIZ^iL zE5oyT=9JGGs$Anlm$p+nyCCNpy*x3C$*wQ`fBS83b@3iCL7#Uu>;%`gg5OW`d4>Oe zlX83nvhSPFo9BRCzezp54S3zG7(&iR&H06H4yG-@z3%cW;fyx(uK21pzH5-(bq*ed zKKz;g_uwmyvo850QizetIKGdzz)MBSoAt_ zsI5n+*W%T?is>|gT5yi$HIH&OcqfLo9l+v&UFE6dI!uWavYyYOLu>nlJkPW%+2|G8 zybNB#dg^LmE-mm4A9+gyu{CIe2T_j1wAA1f>0(dglPVpa%5)dzqpY)kl6VsK82Yi5 zZ?#?HwF^TU^PF*xkFn09p7hS?{0<7|xAb!)yD_gF=A+?G8tVtn6Ajs6b_{pcF@EvQ zccVjt$08=hIDg0Q$mO%P!UuB>&ENVvIfH68PUOsspUI~W)+CUkz3sXYxZ}9Q@3EO6WRhXEpQr6*zATa-;TAb4Y^* zP-o|ls0)7DITij}FuE03X(m6KU|n&FO;_dBwt&A$Hr%?7GFnt6u$1x!(-EGcT@=Gl7haJ+A=%k3I@z1AU8r7O^hi z1E&R@dM);fO7t-{vF=vu^e&UVX!tce&*MLSY0*l2nS`SRGcDk$<_q8V@;-cp>IvW4 zE4}k%|4*?JCf>}ML1(gm2w{oKIc=mACUhpZo^srzhtuH_mAGRq&u^ z`*`NN*8{4RJd`z|Y?U|K>)T=tGf6YqYxoP|z==@;Uuy5(;SSVE%p2UkBMUsaGaVU_ ze5bZ2X|jzDrIkKLEWww4t+l%izg^Kn?$wBnCeAf~ZOLxUqnKDBlRxvmyg_FEAMqK| z*&<$Iu-@Sw8}eKFBiwZojmhsRfnS_LhXFnjud&&aT5W-6+eggQUAvJsY*kYdL(y#3 zZI5}d+{4;rBxclRvu>^ED(ocu0k}8p%j_+9wX+?a#j#6fhV4NawI3DE3WL+4?U&6C zS6d0SiD4@oA%{-BHGoe-tuO2eQ@``~R{z?BUEZ*7r0M)CWBqr3-!1+nBJp-!^=La9~LBI6~y51F~L19>>F0MSpK4BtFO(ML$&MZ_Ft~`#(l^T*G)9@Vl?6HqjrTGg5x3 zc=Rt-)bV%qS+@A&?)fYDtv&YOJFaoBy~rd<$D=Z>jR#m%`O$2Xl)0p+{(Aw!~mpZ*IhMcT6X*L1{R1EPB->_L)zWbgV{tRcvbPK^yVcCTH^k z$$EKll=J!Ta>bQ3fNK;>tb0Q_uXU2SI5keh=5BS#i7`1d03Xos7w~9r&ZGb46T#p3 zA(}uV^r<;1Z!&nuJ^Ocm-koISU)l9IxHtuTnT{Ps>-WX8-AVEV((g>_JpQuf{Ltfd zrg7$9fQGGjGQshfdxo!mMm~kmHtaxJGp%u(2bdZQ&%^!WHP1m4$oF5-pWm;>ej9$< z7o(FPF07II>$&e{DgL+lzJ%Ir%YPUj#0mag#HYYRC~h<;`buumAUP8JTdieZ@qGEd z5}w(6xI1SM^afqa(~PNlUxMSd#oal*ZApjsgTKUu6WDLfrERH6S`OY;dCe&7qu}j7 zv9J37*paxfo^2$@pUU@XzwtR-?nx*=hdxntHcv2}o0ppC%RH0(&<!$b6N2S-`Kcu#7%aqp)FwtL7);p$+j8%RAfH8zAw_ic8 zwhtRP>+}Y^X1jO5Gx;X;39xcZw8cMzm^$V!9RTeWgdPcY9;DyU!@_e|6c`n#@_up_22c z`^EG;8M-gt{kQpo9R=@=?BUb&rS&v%p#{BhhP`JLok%o)*|2$mMZiV#(vAQhbVkRuXWU8C8Q`P; zc7I?9T#)ZR-~faO+)5ON9M~w<{JVZmx-S-a$K&ZI{*WJ2ZwEb z#9AhM&=GjW((wbFnrCV1;-?cWR=Eo}P~03!jNI z+%;E)EHZOUiEC2_F3WY-n)Ctg-HgAi$$TDO^~?w__eeJ;*x>BXm&7>*D;qbpj}hz* zJ1!bl_SD?)P-|H2L_Rgs!IgqLV*S;Jd_0GIdvoSKSO1k3_$xdRw*I<|wW;7AgfRKW zqra&F=d|R;J3j$m*1*43aW-4L@y=HLhptoscP&TboFC~wel*g}x9p8`9@qa|{*U1Q zlW~rC`kFEP5Ac6&oa5;KME)c9w=9WszQ_MI%C)}l(ck;@@xjqJ=fk~mPTR*OJeD&m z-|Ds}`48Qn$2zO-BdpeAsRpJ;}8dl*T z>CPPV8p#3eX`XmbC(Yf{k-XDREQGz~7v=wC&1ENR#5a}wTecP$&0p!6XZs9k{jfK_ z5RA@AEQu-}Y&JA~J3)D~tbVgUVx3k&_doJp9C*#@m-sO6FXr9j@Bp)*@!R1IW=%79 zzR7$4$i*i*xVikAmHo3Gq}^YqZq9sY)$n-_Az%LRTf^t=N-%@e*PLgA(QCXV(TA-5 zvmfFP$l8^OSx>X~KTO=8DgN|_t30YZce6KX**5r%F|_><{a(W!SLeK$dF}KNcg2(E zmh(YwjX<^Uwal;4_PkHyoO;;-t>80lPkF+}FDG`$8Zf&*{K7&jvHAa^%-*50c-7-yScq1s$-8Fnq`lC6T6Zf zxP|A^U+7FppRL^5zxuc|e+&G`i{wClk7qi^_|}}rS$8S+V)^oC1dJ#r{? zt}VBu2!E-7;-^dCQ_d1Ex9SVv9iEk?2dChBI#j~eGE?7QGMtn~wK1*>KJmM;CJK3xsJ!De{sx&`4^k&C-l+z?joQ{i#l z57xD!FF4W$NBY2#|GsnY=g6hf2{b>`$7#uR{hF{xaz`KgIRzMT;M?A7xH4P-TpZmL z40Bd?l+GW|J`oc?B~*SZV{ZnhV7obR*wfEFLy9l#!Hp;EW$~P&$2QJmeD5`shTU}t z_H#biJR^K`vh-K6cIMHJd^5(OZ#=qTdKjB=UFjQR|JBdzp68=^p8sS?RU&7!x@eSB zfiL@FU(>XNc=X@W0gN2zkpE~(6@I8|5<=7Fbgnw|V4s9q`GKtGuH`X%FRm>cYl^CT z@lJqvzPwocm7_fkv8Tv~b-lPja-ncS?|d%A3x4L4$63k;CnSJ_5*7wFJw4dWMHhWy z*CTHJq}g|q|8W&~{vG7(KeKLU9>{W5fa`DGYQRO@8%j*tnzdiv{Zr`UPUctRUDyH6 z4&)@pGjBWcMe)~u?$87#ruB_45-%>kF)#5-_kNj0j92k4IpA01P4P4UhZ{9g5{SyudPyz<4kV_Lhx9L#<; zp8ZS<+yo3twrobH^uy_vqqrZfjo|P?7#z-;=&rswE>Chb`6j&1kiLq+#Ky7k-!}db zyoP@~el^ByH^$=Q*>2>oj*cHkSXVbSNja7J;ESCcyMu2(`g?;uMgI|GU0-bId(0P` zGU=#J{0Sec^WBpri!@09&T2CIsypGv_VB%x#7@=(kdx6PuU{PJoJ9`G#&^(gM_RTOnkL`4Qt4#jiS@pP zkDP2SdPjLEc9mLgE)em-sq`z}IR_oWhxj0=PUvCd(gn-fMUKy8#X-97;>+sVESNcNsZ8c{o zhn&P~iQ($r%l#(Uot3v)I8pX8*$1>1!b_n~;+*x~u7)5s1B{UpaHeJF2$?p7krG#<_K|alX37IJa$+Uwv|fyN|+YoJ)U_S(b=wRXHjcUV2GM z_-lowVa3DGM9*=1V0xH*DYcdGiqeCq9AC>?pOv`3a#WlvPsHqzrEYG6r+~Y>6!-`} zKbP%jI=aWpH4i&{2wrmet0UPvVh-v5S8us`+Ca-u%emWK6Y$1ibnGrYg5Hut5}nR| z?qKayoe$scYQTnB;L9$}kLy>G-zO!QzXg0`W?bZ0zZ^Db1nZA|E5)-enC~@i4*DIY zDb4wayN}!84Sg&7&MW?2!m_>4KOeq7yjy1;N_FyyDYk%j`-b3L+v?-WB#rEa?)&y! zx?$trdft~$Q6j!ZlZ7;H&gU-V;s(rgxa6 zbk3_MuupA06%0SfxlG5JQO1s@s9=XO31t&D84x~@Nz%V#^kZ{_>%>T zyUves(m2P5KN#o`6T0Kfgn`a(`pX8IG~MBH&ee9lqPhUu5ru7=O!jN<2=7BO?p!EeE*9ATVqDbEW&Xy0IMp5VG0QupjNuB4&3MF}n*NwU*Ud zwHp(wsyplwe14FFW*f8X^WVc8@oW#{7hiFT&phzNYVK!~j?;ILbA=uRIyC=N&UOp& z!*6L!(A0PNz8Ku5v+;lB7}R;k7I+}1ve5bSD0mq5D*Vq-v~qy2HUa)+={PqIH;_G! zTu{WIi>{?FG6#L|4a#loTkXadrKFdbgJqI2W)>*s<3Le$p>rAk7yK^AX@~!Mi#fl+ z2YLIEwoxXGhf5LkrSrLLQz%<<9=4Kp=F>eoK3}w=h5a-$20CpUOi?*-@zOtC|MKnR zzu*o9a_d+LMQ{Itxnl$BJwrpS&_>P#_eYO+UgsJ1q@8~OzvH_TJ@PEN^e08%xYtOq z`Njli=bw>tnCltrmY)NQS$Sq>8}QgX+U)!mZ~{;G`aZ^-Uow(-__j|hvl{wl*Diz> z=H;01OMg1&u6@NQGoLY>&^>+1gKTe(>#Srxr^TD1hxg63<`z5Xp1^%1&^S@un&8w( z2X$}NJvKThgAQs{UsEJGwhb94i}xj)OJ^ea;01J!&aL0)u+{z2%lq_avT2SSdS@3trW^5ua}cP{sBQ(x_?+-<+-nZ_%BI>kA-vO$60 zdHNJOorGANMGj-mG5wvNQr1K)z73wShm3aQYpr+l*f-siKvu128~rSyAGHNsoycjr z$oYZZBd$wHD;rkP1vQ;ipXc85JS-4PD%Eu-H9c0TuM zFlMdMP@bvoh2^P~)iK7lo_!d^|A+WrLqGQSMmYWXU(-7WYqV?I>utZcj^aSnNADQa z*AQSs>-PEJm~H0XA*>&8U$ZTaJ1e=b4*Oaoc3^vmf3R$6Eu3lbeKWEDgupp}0FMc$ z2xpEeiTzfc8_7Fi@QJVR79ZC0J(NjCmaKU>dZC(aGtgr~L%qWSOJ0xRCFx#OZs&0J z7%Mq_qU6yaPo*hr=4_q0Ef}`BC-^jSt#D5p@kY%LSo37l#op|=vh};&^YQUaK^~6o zV{P)+Th1}QXKjs_fABK3V{f0)`K3YYH|o4j26po2&Wv(5`0O@lU+=tM>SKPn1>R*6 zacCFLpE=L3>zQ+iIk)3`srhB|Tl39kzDD_o#-Sgw(yI4SE?-6Mx8{CM{MiL_zo=*K z*~lfmb63om;OZ#%(S0UbLl*%T%ojW{d5h@$dl$LB zI_g(vmAL&$CgpqOP4E<_JI*!C26y-3E8!~Psl4rRoxgVby)eeCEPRZ%ySV$VbEG93 zaGjYmSg>1PvG06?s}p)HNBNNJ#n-n&7wP|i`9Yy`3;AAK2E!9RbgrS-UrY8?;J}>^ zaVPV&7wE={?BCv6B%Q0pT4`?L@$>iHT6B@GOLT5NFHG z;f_u1mDaJ~5@!<63_OJE+t%Yhrah1y_f$i4Z#@lB`7h=25g9e1b{fX5}u^A*16T>=y|7m|x z{_k!rDrTJoH!3F%tKb^=7h5{ZT4d}v?yO@T#r>^ig5zR%actxB_0DSk>z&4U;Pj8T z7TNe61gP5#j%$AT)}k8h?8p%*d>7==kM^U5b&{@K@3qNKf%l~U)LGA>ybT^x?>6#n z^S_eszN}M-HsoLUJJxF?)xqB|R&L9t2uyYyfH=O;{o=Hz% z%svUn8}7vQQr_!B(91hr+yhhlnVx$i=3yauQ~X?>5JyMGE`}Y zs-85=%h@P3>=HOXwq4kZ@KXN{2yZQ44s+3w(gwnD@Eos&a?6v1;1$T_Rv;N zXr!|SUQly-=a0%Of=>x+vbh{x3UxO3!Oq3EfzFtzqn$Lyc|Ux$&cJ$f2{!r{!TloY ze1kD-PZ`G!WB1p+;o6fErfC{H48K`3m1z#{y8LW}WB;gB{6_Q+trzD)XXUH>7F=BD z|LOYYP5-xlhsNoS>1U&zCTtoSzviX&e2?+3#s}we^kR9}1d9Uf+azoc_^q70v47KF zfT{WU@L~DZL?`>+%8nmd@B`3Hvop`xLt7f3{RiL{m~+RUeTCB>URLF9pG~73`zFQX zrOmd`^?#4|SFuhv0LQ}T)TuLH8Si|Ta<{ELv9{QQ1Ex9NS>0PMJf-u)J8nN^S2*|e zJ_BE=|DeXjU1xVuuJuc1eN>;ec9^#YI=A=MS6gq!+M<7OX0CG^&w{)on{m(BPndqA zollSB+u$h z(xuKF6M#u6*JJq_0*ekspDZ^;6Li@J%gQMXemBFJMxi7 zbMd2|!q_X}hdFc6Ce~r_2j}Ex81o~YGr}3Kxgp2Mzj&FYSQKRNd2U|g69#^ z_=~i)+K)>cOCKDx6*_k{M?P%S+*TmZk=eHSI|ibhJva;8MtOl@)1s9 z?$-fRt=cEnGl~B<;NRNH*mK?(?D9rh19wlpGSJz``fAPRP=_@j8xu(|_``f=e-*6Xacn|OA@cyHW>%U_IC7Xf! z4%A~aLuRSVshH@D;JdV}z*&ob=sNsDzdhLFd}o5k`7l?qO>!ij_#ANl3Ew}6Uq_#O zH*#E_RW{k*f9Rd7S>tB*6MB3g&*$lECLdcH^VvyEWD7Djxaj}m>&)Y$DzE>4?@WL@ z2}_pA$}$P4B!jILNJ3DXNl+UStpZW1))KV+b^>;ZxUi@RqHRK2%Pqku)+VTJGgIjo zYf_oIuyqO21yro9ZB0Pi3DFj0%dqA5{@h8F`u%=?f8;fjJI{TV^PK1G=RAA!0?GDO zKZC|63}FBBk=sH(2G1o=-j!e^?_YWEKq0W2#o8ppgj9326Fmi+dp~gU&#jrYh?p$V z0E0YO<&H$53)^1Jck&UXZ(G{g$QJAnW072Lp6Tk%1H$)H;`r<04vv99g-ensDQ^PRmaDiMCb zJK^VhPhj_LPbAO4rT7P~CR#`AM>i3@4~mVNwR!}sHyi$~En zB}e;YV?c*-;*+f8;%Z=Z_7$TAJF7oPKYHGskR`cpi*c;TmJAQ>?zMJ|V-GXJ**642 zS+|yjYU$em)}pf!`qp^LW69m@@U=qK3yVL?3ioRs$fz%T^ei)+O}p*L75h&O4z)`U zkL6k5l=K;I_$l7$(H!1)?9<^j*f*4qt3B868~HsEKY{k*N1RL56dhPJ2j53|sE)I< z30OI_YG$T=7w^g*$^VCq>Y4U;_+PcIdL6t>55Ld)1K89u;4f2w!KKIz$TvmM$#uq+ z`F1vEYl1db22z{q8$Q-P%T(ZW9obVL~w4UUt_IvQE zOMt;!~r=5M?Tpp{y4&>GTm;=S#8soiG8(T&lK9ju#p-qtWE@wXPnsyfBW5xy3R3y*=RT3qJ+Vc$dA#PCCW@n_@Y|r`{iJkE99Urwn4885$r9I6GPXcB&BL<3UbT%7i+nvx*wHMwSoL}YReF411&tLe9 zkDg_Orwl#o`si7DcplFhXxI7CGjI56J+rurn7%$_E{plI_|6&ROjzL$_@9`}a0~e! z6?-q+zgRfxO;qk2^K%o=4=o1^}nI6!7_a-tBSdm| z%wZhNciF0asJWg3785qCiS%%H;J=SMcD63H&8IDWt}7q7j59I;yJ`H6->c|X^*1gC zhYjMViD6y36aIcRc8UW$M~C*S#^Oc4lTAkFbUgIihi!I3IQH+etq-WQR=F^}9Uo80PO*&TKDh)f#^NvV(K} zpRiw#K`&#|0x=3v#OASH2cF$i>@Nb_;j@cO;^Zw!7tq#z4jJJ-idtH4pM)C+Mbag0cXeFwfwV^>5gCzT4$Lh$Rut2#d7;ty z1no9Swy7RtzsYkCcxhbd(2Bj*zRx(cqKV%NO5DWdP=_6Q@yKxBZ++I@%{$->HRNX4 zVfaz*6r)q~5uaN5=$uG^I_wSXT~A)T&f<&U@v3dpZ2YTxPrmjU)$duCb(!0qIDz`( z%(28xt_ZwIHuG-q2pkCKCWznZ+4!&vIq+xfmGTE0!0ATrX89reJ30I6*&U94IDvMV z;mNd{!oIZwf5Be0RLXfaiD!Y2o@G1zW%H~DTCMr2E}-Jhr8_DvT>Gk+?Ju*hzt81v zP}Y_+!RREutS(n{rgMyKxmz~^>%)0j&^>C1JOoT`2fk6pQ{2Fu9PZkN|CN7ptlhKA zvY+Bi==1yVyc+PZ7a8?7^fJMBu-+3IeAVL-9A}y7+dn5nQniHc}c$NUi?II6k4>M zwHP&Ho%>hHnlqEFx6iZ+x3$LL#yPSH6;?xIL?eP5-4WrX5h700YjobZPd*AGoD|1} zEqTQ4Urqnm!6Mz*l73A5KDcUofZ1@o8}nIb?7f(}(q?S1%80Fu*CSLdJwG;Be>vx3 z$mhcSJh}F4@}}^+?0xfrsWx_N;zDj-dFCf=Ig@jV!v+o=&>e7N=1JrQ#emIZj||7w zni+nJ?>+4E1aPE22{{qFb?Gjn?swGaehIwFCwKG~*44)x50M8RBd$gI>Sa8W-Aliz z?*4PM#V(Sf=Y7EckUPsiK-=6u`>79|KkygYEN86_E(FHfp9cm#Ph0kqU&dvk1DR#9 zo$PlRxRTd#fqj;HReJe7m;Tng_;DMO$t9yx!)}ayj5fy^YXn9JT}^God$yDWPq^J-yU`O0$JR(Rd`ohJ8OB!C z^%6elWz-{)+)1p$x~|E^c3Y}(WIO)zO)Kvj(E6>PIy`133Y}9!QTQ%ixyx;II{fCE z%c(DA*gw~L*gt(=g$+Tx26+0N7?=x2Id}f9aT%%d>op1H=$kA4r8rw7d=qE>TioT$ zSq~rc>0Z`>;Lej-ppT7|6tXb){~rxc4(&2GTxrWdI#5xz{i$K zOi&telV0K`(?ilJx^7FetuM=uI4PVD?#pjTEEKXtdiVr7;8ym^f{wKVQw#oJEi-M; zF7gMsx6-;&IfU|4T7J(OGj@pf9l)x+Tz)t13E9LaG5wxW;$~J`cH)I*$ogsn`EHi~ z9kr!SAN2{>RrVGWo2J@nK5DC2;nLM3ju`BF)#^oC0}t=Gd^EoH0{Y_u-$=u)4OhtL zy0)O{HBSonqAgCcUk!D9*q39*UhUicVbpKNtf>w2!=rjWRLmK6(-<~`!v*h+w+oQt z!uYNa?HsY9@9SplnX~6w<1k3JEo#!Y6Bny@e#rCok>q9GE}1Sp4Bd(Rn>?rn@N)lT zBX-dv>Y0c>`OHW@HAJJ}GBkXPYUg_%4uIRf@a{?Y2k$lQ;6*NCh&|!Cv|lvW zIMR;XT}947Hc?)XjqyBp8KvUsN7@gZ?|fANWBR30+F(;I`&(v-#oUH* zr<8f+(oZ6BVbfFx3f(=CJ8t`!pW>uNJGsP>xPGInn{o5m&vxb~S+0!dN7-xfG0j=u zyV<88dc|?z0&nUJ;)BIDvBmixxa6n1V)B-sko72LsR!HRZ5r2C7Oy4s?sWT_4o9Zwgr*T+ z4tQLyN?d+xc%cGCMovz5^v=Izh3w7A2EzceczJKL; z4(~Z4A%j8brvul)NAHVlk{XEIDxVmC%$9WK);&q~?6m$K z{3tV|%kV$2=eaB9g$MoU!?Vx~qqFt4KDa^Q_gl2rcullX{~l~u|D33N&CDT-pKl7Yt`P$ z9(CCybmCKz8@NjjUM9QZNQ-fn8t$qkt@^R z4o>L3Mwb!$67$npu6-&HVs8}})!g)y0Y8h^ivM5~HVO0|*&AjuC)pc(bJ@FVow^r= z`t4t%jF$i4|8uN;m5l4)1N>0u3;$TG=E00mF1$E+GxYJSS+X_NXjul&!k4|y`rA0$ zo6m25F}S1F+uWWLi2c}Ow5Vo==GyjP;*pNAu7PyJh`G@(qU7FsOQ@y6ey*qQ8GH&h z*XBC*9_M==@GDUt@Y-YN2D>;zTa3Gssj1j7e+JK;|6Ah!U&8-8e|xs|ZR``A@x#V5 zpSC-ZIS;Wv(1tBW@DlqW_FZRoUk@^s>N9~SI-`H!o#8e=;T_#|(9e4f(!B$j_C34@ z|Ly9T;-9;+1W7-I!au6 z{{?2nsa|yH^<#AYO=KFAc<29FSL5f%);ZuJ{dX=(BR>&5yBz-fgQrK^%cqvdvY|^Q zOE0x=gnwMY`cDuCBRfiCit;I~@Ue`*thQgobH3YthRy`<%$h>IRh})M>Wb}P-q81w z(k^o4_`VxDco*>1UAmG-EssNc@P{H>(br_^i@Xk;7X8kw+YX!-J!94Zm+D1ZhCaVz zIG%fizpZL*6*1m%CpuSbY2&A;(Ne{wdkd|uT*)B;QEms zVr-hY=M$e+$s*IWRBa20;i_eh&@d;qv%+mPr{8Us{F(kvU<0FGP%NAI4fkQ-(>)Cw z8tF$iGL!fI(2u``mUp5su%55n-DR!OZY3}ewcRg zysZhuY+B)KX``Aqs%5DC)ZTR;8|>5`X@8#Px$LQqZj?OJZe#AokwMi^jC^YdhC%w> zF1+5JX0LWNa&KRDxSM`;Mx@hmM!Q7k7cCgMTyg<DhQv&KRw`O{@lP&EQJxty@~jkJlP_x@b8I39h?*AYvPra zwC`=ULIu2YaJ?tg4}W{_2`6_Qd$ZgA=OX-BYQwudqm0c5#+jSn&2(-4htIv)4<9|m zdF-2$U|051M{3&G(4mnH->)@YcH-f8KJ1$|F4QyXbKHe9ax?Kr%<<#+W6f3hRHoTJ zKZCJ#&buoEkso8vEcgw2CVERd{CnF)#DT$=kdyttLLZ@>9~)Uwh<5PLnZ66+ciByQ z=S=H^==?JitYY=uHx6Eb|8O_;84Ub)Q}|ta4*PM~NKSTa*yQ)3Z&E)6*iVMv?5CE; z8`uasD!KnOB@jzPJ}6+1qlXJ8R|@Bl zleT6eiwxQ1hifpMf&Ym|Cql>5;8hFY$H7G1MO{%8gzxjdbN{TK1zq{he$~SFthw?j7Zk z1GFzk?=?P^WN!j?-$A~sVH~wN0v~s3L9a)?`(Nt6tA^X{Npb!o`})=3Zx3gG8Fxns zzjVJ?Hh3%hU;Y$)$gM`~0p%@#pAE>kf{|*GDUReXw7(g?P&9?u0s2sGXZ&}|e;;tf zUh-TnYpfveXYRCk4!MuL$;}R|R1BoG!Z+PC(-WVd?V!szvdY~+zEei{*JlS?=eh&b z2pjKjg8plM$N9dE=M<55a6Ts717I63xX&_!FR&BB~Iq1(dO1K{+z zZ!8G?9X((7+U#UK;(_Pj8K0~x6+gd*Up3V-o%756?yU1}VBR(P(~5W9qWMe(UimZR zQz9;bJy2Xr6kL~`GJ*B=fP0q>!2q6K9UZCrhJ4N)^Va=lT6Clnx7qRz>(*GyxF1V# zfz_P-MZcx~A8?z+`#r2d{WhX^L?7TRIrg^na0S1Sqm`n$tNKKdJbrsvc68`KJSJhwvIEL-GW_)yIW@{7^}jS?HRLhunh@s?^^@Z@ zVvkMWeDRLPO9RfL6M|(BI5iI8*)YyKb1I|_bwaGwlDm=VkqzN%Ta1c}oEWzX&avou z5V*=;>G)u>#n>#Jck|M) zJ7c#p(wp1CIS;n0MYPqLWZT!7Yv+INH&A`;u=Y=~m4VFjTb|1n?Zs}Njx6aTU+`6) z2|l7HQ<*~}IMH_xynlx)qPtdtB}dV#UxJJiS)l*d@=0DP zdhmbVZ!BDLXu*x>oWyJ2#oUhr>$~u`+|69?X8rXy8uE**!?zz^e!#8R%ypUY*LPgz zkp|@Epev)<^KyBKJD*YDsCh{~i30oSz*f)n zp3Y$@wiP`O@ZR0PP&r_M<5wM`fle(p^!^h=_d`NkRZq$;LKj{J zE(|U-LP6+-r;NUd9hwYZr~!7$?}#EFTkx|WwlmqypGS|)02i&B$jL<}x(#}#wz<&2 ze-5>;K<|*wFI@V}c&FCq%vm{cy>x=lXi=O-P&N?Z0&BPjxl8j`tysl;sCMiRa!mP= z*BKKou|LCJqkDA5|LaB>d1B<0=O!4J zq*?3@Hq)Onjx{>1nK;sY{C-CE&2OTsd*IU^bb8{(Kf1Gi&@J0~3iy`_4Nem;SSNUi z7E5-P4OwRn75z8prm&Q4i{JqSXL%RQq ziK2Pw@C4KUFKl9pnUYQ>y|od$hxVBBAA29W=6K;8@l)WtH*4s-gMVv~Y5teksnk4d z3D^Z6!#)y4|FTSC|FCOxvyb~(hkO|wjPV2dLV;|FKr@MH3g_@nI)7Q<<}C2nf?i9m zuH|f5JUc~grAB1#p4$!k%r0W&Mhz63w0RJEEjjLQ^aXCryaCzT056Zb=M*3lUfO_9 zu!}VwVr}UAu?}KHR4+z)=afmjgUpw|M>NH-w;^+s5(ln3o5Tl#?7QNaWGm1ZR{=Ne z!xikA_OcEi&-w98SAgF|{H8il)CVc?6Ki_xR zqZg4I_5WJhi&rgn8PgAQMpoZ_ruBEU)tW-!+WGgH3om4s6AowQ2MRo_D+72-uJG@0 zMF#OByb2FH4jnb*FN5Zw9~bF)4P$n{GN+`1SXbd`F6S?cIml-94bHswq>=B?u9<2t zJUSm1t|3^Q!u~2)Y{=5w;&mdA^DM~x^`2+Nq|_PY#EXAw?H6-S8lXAiZ(CX4T-G*j z+f6%>bw}$*hN4dsr@>!z+NjW4Y^?cn;dSGTNbf=NK=700q7w?9xnrT#Hm#ReY^_&gPIwf#kx)8 z`$nfxi|TWM$ah@$B6v&wUCCPZ zuyjW}wvD>nvj&K-Xu>|EPo0Y>HkD|xLH`Z&b=O2bV>NPK|H@eO)v5pG&l5aupiLB* zE#uS6S~}rvf8m^HfBy^&#k+4CxjsksfZJ%(3(Q4NUH~T=p$W2?X)ko%2g#KceUNS; z`VgHHh`hlbU{H>%ckJ)jCB~PnJW3qR+19ok`fza7fX96eJH?YH&b6jN=Nquee}Vor zKj}5r#B%Ovb?UkJ2kA?DS)zHhF%#v#hM-8pFV}7bLXh8a$zF1$ZEi^L+E>%oHu>Hnor?x z;}m$pqmEn@_v;X|pMY!xFLB~CTYz5!{Rv*z60gxfd%Zu8_fJB14C!Uy(NSXJ{)CJm zUi(vIbe-LKr@1E`8m>L@!mFvP66?J^4*LiBeW7zEp~b8PJSysSPxOBqS|#7R>=O?# zw)W>RYt$UIHxZ^LVwMB zR&l6a|LsT5v_6Ub?&YO9@%-A^m)b{}*D9W^+BL#{hxeAj4;C=zyPyl3@cnMVE*zzw z4UDlIT4WfF8*$fEMd|-Np09<+8~}G!^wF2b(0Ay3=llFGeE1`u2YIf!E7nNkOn3UvCQj3-tGFevQLzqQ z{}s$rXMGqxI`7AkbvAMSdN}iz!5`$ zd8y<|?W=4VlEoJDzxopV4-$V9&o?IS5I@IuaAjB~5ndSNMODK46$c@kiQYT^9bzKz zV}b+JgxWqCeF-?e$9hj<=Uc+s6yKxYfk%TqmQxjH5KX?G+U zz79Y0KSKXL>Idw1ZOExXCTc`J#wOz2Tdlfo-L9sbC}&u-Y(Bmw+Ww|_X~0oUf}PfE7i{8d`quUJ^pS#dNjJ8H3vHy&$HnPQFwx6B+2TJ z1G{|oq6~T&b)o;!AGV-aZj#fsB?B9)@Lznn%h7|q;Y{QV_SUaH&JFNB^P72guuycu z;(L$i1LLy4?0Y`*hmuXN-CDExs}Z_;f(82xt)V^MP8?bH&>l;!J9gcb&OQ$;Di5ij z6AR~re$1NAx4~b@oYPew<)Re(9(?t0P9I}0AU-JwZiQYA&hph7buBJWQU`uycuDfB zOFpjix0v~e<}3y$L{H$wj_p%AS(Hz%g*S)+pS8+Kxjzm!Xy8*SANVxJOKyP+|EPrpINlU!Rp)Gj#GPUHGA*c0l0 zNakNmJ3Y%8dbXAM4cqp5psUcki1s%TcvN1PV$b|a+$T}FI}V4nuEb{lS6nf{q83;c zJUPZ*3rwa_`>>Kc#sK!I<>>zn=pND~RgVzAj92t*GM{zBzY%MrI)H-39YfE)#$J+Z z9(xNJwgDXX(mpu!tcH0%2t3r6zSr{I!}nWxS9mRW$`-G2Zy9>$H$(jZn@A&eKJ8~C zI_-7PCf$7`c<8+whu*6Jp6XXQy65AE#|V_XfNbmsXY;={VL^y?hbu+GDAJRYGTX>1He;(+X?B>8H zaxHvJ>s)f^Y^L6m?&-lNMyyPoXRZ;EPH?`@-empK=hZfs^~%0d|9K;_@1N8VX3wA* zg|fYN@EPED=uY^CKb>jKzJQzw?syeF2_n}_f^H4&qNdDH>>s!pJ_haSqTgklRm@M?yXp zPc8K`%-prP)QT}`U5?G5;oaf;FwF4lz(%-l1dJ4H!L1r+J@V?X&G`RU8^anMh&eRR zOtoiRiXQ9a6}e=;iXErMiq0N%Dkl95S-RzBXm}@cYnhyC*YcazWpEF19G== z_VfJSNNmgomr?vSe$C)3<@9BQvlHltersNF#kPsw)6R-u6J-8#S--|q+loz~s=5Mc0Af`&~cO=_2z|#Z0#c$WCXQ!aQ@+)~ZT~*R&7P~>l3v;7 zHtH;Mf`6vl(|m8r+Ks}&=0*3qC-Fb) z`77VIV^g{gnGtw&%6_7E^i1u7$hvvJ--15}tDsTL4P16?4nIEV*rdZfBLgWt(~Jnl z;np5>srY^B8OVQ`{)51l`;l9EkRRvt!3TL?^|AuY@og{mIP@jqIrk>@6OU6ZSwJ#Q zJ1~su3^6AQ{LUM)OFaY3+JT|YkYQlk=4@|ao|1EwkFGOd;Ir_Mi&zTnV~y3q8UIyt zBGB+U|5fhD9X#_DP=g$Lc}cotg#WywQTKZMg!5KUe5rICWR>tD)|$Z`3`X+8Qzm+T z3-j7S8~rBu%HFrkMGaZT67BsXYwPB&7V-k^zmxCy4zikj9EJ3AjCT!pMso*!YoC?p zW>FXZ)BLvBl{HDdE>9x&2Kq}^qYr_XjqD?GNVuCl+Z8?A zDmrwxIjcBI`>4xG{3s4@iv0ilZzec*JB(qyvU5wG@bc-I+K{@{O79^wD> z$OZY(9qqa0HcHw!r>2p%2Y=#WBO#YKnY8fNfHyVBW=THS4IL;w4!jsca)O@ARwG#a z6xgetSH&jJ_*&?3KC*$a$*_fU!?6*itWh+hg}HYEW68PNFJvFp=_`~URs4VW&Ld>D zl19e#F{VL|QB!L_){!};(oh_+Gt*C$JudWl(@UVFWa)-k8&50=HBOS%DEZa zwiElgY7DVoW6Ad%hYvIv+jl$;v;vqEct1K^^=gSDm;F*_(QhOs z&LnnFF#v~V7?B+bR#6AOnPn>{rTSvTVsU2Lp(*Hg&Urb?JpuBY{E0S$hvGFP?}a`N zzJfl@8U{x~$H1S#v2l7fIN4RV8ks+t`7dODo;R;AMjtHE+B;b9A0Il?+H(QtDmgBv zyO9lLcL4^SI#Wdst<7*`D%oMBhj?zK77aR0bgC=Vz4ppTA9zgeSU5{{WM%{+r;CjU zcYRS~DX{W1cD{Dk#Acn>7<)3k4O(VQY+iya^b&ePlg~&ig%38ZnwWaQbCoOC4!TqN zcqb>lapM&eD-$G<^XkGT{+F+@e2~S!CO5?7R^dD z6Ny`B%kfZW^VO?eG0iRH_9Ue}IV=Ix~(1J4*Yd$n#56#wv%Nnp7QI6(5mn`rd5okH_A%ouuD^L2B8LpROE? zLU)eShxSu@xdS@=2lnAK@f&Z$LxiIyxRF<#WQRD50q$y0+}kR5mXp7wcEpyY=xq7n zB?a_X?@C-UaYW&~zHW3~9{1~rp z;Mj-E#kt#)jo(>$(zmhpwyCbVQ^*rnjFL^mwEz0@nbvmiKyh1|tL`-a%QqoAZ!U9L zM0;#&;Tc0~iP4|d@)!EnJWO{+>TG04?NQdh7Z#u9_nX|=d;aR|VYYweu9D`zus2oc z9=~?Bd3M+Jo&ijdrnyLkj-Qfj62@HP5k|I<@iq%wO_3GI?0G3F_k_yBcB17seRwasVbV za8WSG#YRyAMG7tGS#^1DJYd`Z>O*8T>{esuL`ZKNf-%_&mG&ab6 z?5*~&4_ zC)OV9W?z?+7oKNYRTb<5GQ{3|@X$gQ$uD!oh$qezJrixYl5s`%(xJ2e;(0FkeI@+l z?5b<2C7j^Ue9@v_epBDC@Odx4=OPnmZ;r7y9l+%%>!`W;uC2!&0B(Ze&B3j@+h99$ zJjVZuFZcp$Qk#CYVQoHQMZX80QG+X-$KHG%{`Ah*Kd#rrIoj(Xr!$SXsF_FZ|9%jD z-iG`I9w8$d&v9m|)u!#hs3Yg;j49F?E%J;uJV@<1Y&TC*PdW&ns)4uSZ;x3I83Pt^ z9W}&?e;L@S-x}vUdiMnR-D7y0Ytik`kFR?e9X{?uHo|Xlt}aHGlwNkG=WJ%4;hV17 zi?6VMgS+Ho^1zD{;YCUCqS5f8G5CVVhM@QOdtCT>Oy?d}#iQtsvh=bk&BDzSd~b$M z$)_MazCMJH1sg{FS@?=Rk)s2wy&gHb2Dm0+TU0E`A?SJ)@^d}7x7M|Gqi9GK_TYMI zTa*DKuibqcLtYp&hcykzMt^UYn zPA#gZ@bxr|;BGAX+V&!PVrkhd!P%)h$2{blRSs|z*{23wGL5Qq*^9A(BQqu?o^_`zLiXunoIc-!^Won~8e`z! z=USH|?+IrQ(Dr1CYUii>gR-O1S338?zs6Y0nDZId4L_)J;LDhY+_Ta98*>_8_0RfY zs?PG<(65L`CJuV0(*}469)kZN_G7MeFW~P%COrxMgn)e?aq7ESqvqW^2R<5s7h#{( z|4l=Eg6sB4_WysYL$(Or7(IQ9RWiH7_Qif=?*S$i%6mica@`FSI&7Td@Y7`nlW*hL84%>!K zD}JHhr{Pzu;+>@r8}sUsUpsi7l(%PNJ@=Ia_%57>4|)4JGm0^nT;1%#cHv5DUgS=4 z=BP2Qp|1V2w3UtgSyx7t+RLVet{RcfAs?#F%z7iMr~^9h(EqDk$OjqW*OR3?Ts7dx z^5?~Pmr@f)wumI?OyPaz0>y?&4(bEvWQP;HfM@k~_Fv~p>x9=K^Aq2JUJTwl`M|4P z=~Wu1kN=NhOOuWu-A4I@4eW)9ETlRdue@`%Re8eCgWt-b6HZ&`!{ULRJZs?pTx<&K z`L4aVi%*TS!I^*DPCRTA#>TO?W+(X_aXZpp@q$U57wL&NV852mM4VPv{Z3abdWw0W zn}~1tva!Jp-+L0bC+<}Yu40yE7}g%nUNbg@7Q;wu9=5>^*&X+aCy8$WgZ^^hqITjT zAGJI09ub1}S6uy`Ao z^#D)7j9=-hZn}*?|~oc{kBtsnY*WeCqs4Oq<_AREqFF#L(8O_?`>dg zV$yVfZp@4A%Hfs6upD~tQ^*P0djr`biMc-rF7AeQ2675JiwUC#8o&~qP^ z%!oXozI677b;tAV+~_`g-`trDO>q&YD81Ry;r!UAI=gQ~Uc$cJ#(KA~PW>*tHJIZP z_FZ`NX88zP^WQ(;EXZL0U&r=uoQG5LtNmYjM0(GH)(9RRXpLp6KCS6r4z2VXS=iR` z<$D4V?UnTK3FC}ZWc;e=G_&B;-=SeHVvm4D_Nwuzf5TpI7kMr%KObxVl78hs)q9eq zbr<_{#0Xev32AMa@S*Mb&6#KKe*Ls7BQ=Qp-{+p-mp`Lmkscml zPDH0t4I&?Y>n#6e_}@fpyIsZp%b{c3hv{!Tv#^N0^seH)3S{Y8KJ{+5%km>P`llfm z=^gs@SGcY(7QYI@@6@NodqH@J^vlKI=4SRzuz)l05M0Xt;4xSc-%1WB3Mbk!|hQOJ@>b7a|7(a-DU36|?v2nIz zt?njJPMU0gWuGgL-NXOCFs?5a{ripMH#Wk7&vDL~!!SGqgZF5Mz8slsSXI(DP5|F- z`dAH)N_La2?@`{@T%xSIfb*J5{$v5VfnhXUp?WFgi^Og^`=5T7I6jURPWZd=CGCHT zd|!Mxhp<;1W4)4Vz6Ok%i8oIg^@XB4xG$g$JJn*=U1eNfR6ty9%TDr>@rOu9u(;Dg zaPm?gf3?ePpCDfXS+yVkcXg91y*aVL*w+s|p1R8N_)f;&!d^?3UgzbW}o^wonNq1xE^{$q)O)#OaAp5Ndy zHgg6eyMO4=$-1Tt`~t{$^~5i{@k2vC=M^p3wZvCy9=PxI=UJY8_ zK$T*lSN7d$+Tlq?ylYbjH zY!|;{4u2jC9ERfE?qPIi~PlHIvM_>%u{lykyY;G#&G{fU4VHt0_P_)jaj0{3&=BijPEGFM|z2U zxSX@w;LhCh9o9Wu^X0l!*}3C2OGSI-cj-aL5siBWeuNAGT++gyWxODJ3eWKewXduL zUD1&Tavv^_m?_+8J=7+M-83B=wA#aiQxyZF{VhWO7EY`Fg%=&+Lg4U`jBp-L@1*a> z9ApJ-H5x~7x4wH-1bJZTX3o2wK^x*Z-pD4w1f%ms;J%&jnegFDu$TV{dE{5bK1g2U zOl~PKGi=o&ZDODO(5gjd+R|pu7)Hk}mH5kUxB)SIXTRnvXBny+3;GIVX3`GkY+(lJgP$iNQT;ifJqEO!n8zC3Uyy+QKLY)KB>Mj-^nZ(ad7OE@1}$=Y8pIi`W}j;xL>Gfcw79r) z5Z)V2cId;FLTC(f!ItbN%VVcm>lYPgR27IkxpI8!Hu$4p+s7HOs*H%=^i8iIZwuV3 zD~7(3ZxZP}YS{3tRQa(cA3P&{$KOEC!E*2`7n~|#zbB%PoWO>lI!D){M_SB@Ju0*o z5`!SyDC0iGy#b1Si6Hyw_k46f)gTo8Jb|7QEp=iswiJ+GRRGS_g6IC#==Yqbc6b(e z9Gf;#d2+t+HLR&BC8_yZ=<7CWlYihI?bn(67rgQ$c7Tcz@fwGpA3?knF>3EK4zgSI z2hfY(iEo}Y>)v;d@h|3`i|Omr#Oze!n^!LQ?a+>UsnJuwKK`Bgs&=Esd>@-qwV7MA z5F2(BSnHhcU|vyZb|17GIL^zTm*1ShnAq?;2f3p>k1=~$m)0+N=6m2>19P}s$|U^kbw0=IqmduECT%MO))g|&bf zs5={2djYU61=fPS_A!b*NBd+2#4od^TLEK51#_{??CFmq$0;xE)?V=$qi{IC^y|#8 zSF}L>r}j+y4~OOJ`#7gqXH>L6=TosB>GV7Qn;5PH zZx^A*Rf0S6OC@@#MFj0b@0wYPZFvW9aA+_%K9{z@Bitt%Ej(wh0FLgztQIUqcRk*? zUp=m4$N84@l>98?POZ5?vfLyib?s-Z1%h)0wi*{>2{$$OgzRfqqBB+NH~p`3WMmtu zm+d{%`WtLdE_`%fd>mh_YgQ38Ket%F&$BhI?nwk6W1d;iu5TLT>U+XtnUne;mY^_7 zU87p;&jk->*zUaQB^GrLtjANGdVXqS!qzQ z6Px9HFBxs;uLv%$y=T$_>q4UJ#~7)CtK|Fh=kv)tEA1)vCBNvqWHsq71H=NspHs+V zjQrqVgRQ?n7U)(U_!xY^?5pI?iWO&C^~?uve4agRlMKo8AaZLrHSMF7((#DV-$|V- z@H1LTY&G9~y-7zZu*K#sy=P!MbYpl;ahL2oF(_Gci^lg|%H2D(o5lDuETgNO^>={RQDmjJIAfAm zqtIT-p6Srii}<~bbFvy6WdOWCMc*}i4)CeA-O%i-k*6J5@tY-fGiO2hC=c_gIBLg7 zOrCv&n8$bj4Q-=e_*>_8K8dkjm)D+P&u8D-PYxD#Bdcj^4kfzD`-ne@oak~ecrrhtSuR^<-v6O zWoX>X&nMe2akhT&LYn;q|F3#stj)bo)Kr`BQJkh?G%L7cWH-8d<UB(#JA+4QC5^qWH7);lnJ6*POhvL@@Y|V2$?=Jhpg?0wxW+V}}&3-ZPPgnr>wjsSPF9bWdO0=t3l%Ner;9(3%aYX7E%XVF%2k@%1F z!8ZO^oaRX6JNfg5Yfqo~Mj1JHzv*bDPv`udnM$r~ye+<)7K`yTC-w0N|1YDz?OIFj zrK+3S(#d|c{LGDB?%WSTZJ)6=dTq;W-fQ4D(3wO|g@7Ce_ zUte8W9y8$0&tp^Dl+f^+{7TB*b?EopaW+2sElUf>*>?cH@5IK~-({Ygznfq`!sj2J zOtAl(&wsC;VSk1-?_;ko{rn}i+0gUhPQI6a@e=C)r-g4vpZrRKYu>gCkagj|-{Q=C zwe~Bseq)Vl-fsBbT$2zeS#KG(Vk*AeXv}Mi;{Tvs+a2hU;O(pUyq;Dp48QaK{5kMU z+5QtI|7v5KVIC5FokKpZ+iT2H9^SzjM#)3i_W2aty$9VXsPKmOSM;H?=62;LYMrWc zu*-BeXY%YJ`V?<^h&Bh^ks z$?ti;%9%ocON`v2E9obJ`Ft7v`0mNUnYUvr6m8?I6jd;m;;fikNkio)?5#s~)DSfO z25_fq=LowKo^%wtD!z*!r?n9r>jpR0qw^vUd2K%R+fIIK;kQn7MTfr*-7%whdexFR zvCxg~k|5n>9k}3EJ+;O^;D4oP1bKs)S_!TH#k%CAVjXY{%WJHlJ6b=x_Z`)__(5yJ*4xK3*C;K+O?!zZhIs$tHZFC0aBHvRd zF_mX^z1T4I9{jH)iFc(l=W{PXl)j^G!ya^FdoD9<4|g#jE9*@9fB0AG+LI5U8W+j~ zcqYm8HnQg0`Nq5h#DY%Fp0m;_Y|PoKGaC0El|%iA(g+?lEElJ{j9LYqXI%*T_iqjia8(_)5nnRD`Yh zEpmG#KVko>E5JrxX=F|>NNKzI1?FJkE1O{^Ci?D24Qm zrqOl{Hkg8u)G{n9XkL1End3jNx~XYta> zqx_*L;|%8weYNLY=AG(4J6@N02kZK}{>Lt6IB`g6{xbIeP!gzzZrnv$rP?IdEh`-$03B4)eRDDW5Lc@`{9q0ZR-O^Koj9_Ux0nJ624 z>^QWxg8E#7T^4-A;6CGqGt>YE|5vdt3tN%w&{62se#Yy8CW}AH?jzXkgYRUahpQ&a zplnIvgPl|DQtYSyzZ~Bu!M_vk5&ko7x4)y5s5vVCRO@>ipUt)z z&_{6OUbk<0?)bo|AbOB#wo(^}d(VlXvakzu0n0A%OL!KoCmtD_X2++Izri*6EeedR zD(V|n>9;4Ki#_=H*Gf)iZ}7ztLzL-%g}$OZZ{)0>o{HQ}U)%5>^^kMx#h=j#ozL8H zd9&f;%rhU&>rG-_b90R9ZE2iyKfV~o3xn5BP;)(pKiNngc=vQCA z86xJkIh#0ybTg;9mU%o1YHrqD-gZ`qcIMeJ`MIN+({?^j}pRmJ3 z=|^{QC?9?y@$-ZD$1Cu)AL2fHAHH~vADu*u<_ytZAHx~mic#$AMB~mVd^pN;>;C%J z1H8K$e9HUcRQrMr#E4HN&jCC{|8(a3CF~l+SCRupjxx3WJ@|<&)7aDJCJ#Kxh!Nk| z-$<@3_wV8Bz~)5T1Jj5fW36TMo%|MY@#x|iy8Ddh2G8W{KQJW_`vYfDcg4SppW;H` zP$+!}`tyWfNWV`}tJh#ni&=Nl(B3=nHOKdtQRh$axA;6Jt$f(;6&)Ns>MiujhUeZS&e&S~q(WfW5X(KxDbGgJ?AUjrXyDaW+ z@wxGVGu|&atE$D|oE_R{ady*T5plg-8ap;UiL8;zXPGaT`1J5r`eyz96+Ek;T|UpF?qa{!Oi%g+YwH02 z6&s}(fXTp;c&cy}aIXiB{lwT6kgL+-N~%(9lwjF`eC+GPw}MR70ezxB`M{i9mA`L#o*pIw9Y8&)IPX4(|J1z;i2Ol-(xBBe_>~Fv!C}hcldjY z&MSP<-}t~|iP!*>@c%7MycGHMGi^CduEeTo_cta6O^fHAr51OdXD}bFCy})&#!LRq zJ6KN}>nTWy$9Po|C+=r2qqLa@&(m5Lv%iNpyV#6pX|4T=iQ!#hL!8?9K-nPjpN%y~>R+f!!zUp6lKv2lY*O_&IliWB>F*TOWjm-H7b|X82RiJ$TyF zdSk+!#JwFZxOIkI$#0dRPuWebrj6o1HztD*sZAS8MHAgK{59xK#^_Ay!=@)G)?fEP zD`)+i{c*pbc)?Nd&xvn=2V;xs7p$R!j-7S}x`lk)!!qKq{-^gu`xNg&?V?yE;|0MP z1G)M?>~YwDmy35BTT=VhEdIG_^;%mR$*=PC8#|gd4%>y#ed9&^A|`$j7k-hrZgCWz ze9WCdEWR6Ch>Msk(}@#P>>$S5eWmWKesrPgw}A=%|L`*CjB@7RVef^X3FxnH^SuU~ z%V!_3IXUrgn^_+*iSs0@a5saamtpG;`^o*PV&Ce`tp44!sq9_k&^N&YoZBaVT%X%h z=a?W31^oYdXQ2hT}a4 zSQoWbSwmL%uAwzRJ6Qv9S&3##Hs1rBg)V-RzCKJxml3l_?IBwVz|yXc`s%@NfIb?gHJ7uk{@^6`~?aOgj6@EHl*bBOQock~0V>D<8_l=J)# zd~sdu@!iO>+mQ!ysn4YIukVE#b0|;u|Ce_mJ8Unqh}Qol@wKnwOXSStGLD736C}2A zgJBh^KEV~7g@%lQ;(FrO*gHqAOkz(ZS6aI{tJE^!F5CVN*Tm^3poLqh&sxSDB@d&6 zb#`FOlD^Z<{z*0v?`vcomil5H9%LO0S)RX={4x2CJZj-jgpMs~;GK@t+~P0h#{Iq> z^8+PO;#Q>-oS4QPDx>51VlMz+gSmH09;2U%M5}mKVpef+>lP+8oQglA70NU=606;rPEI2 zUG2fk#5QUSYjv7EfoGXo7qLj(5fiIm&8MM*XD)%q`V9P6Zu@cQmEt5C$w?Rh7Vss1 z&ZX2X5g!5r^GP~RQ>ssp*uJUv+bS&hSQ`}Ny2aMNWJ zX?}~*Ri%?&0*>v*U!?ujnlcg$C&xI(Gr?xte4_+8J)*r05{HHz&8v3z@Lf8T`rL-h z2%P6z*aRwwF@?Uh+~+omu*n|onxE^$+>3VnH+?n;C#mB%j625$-Jt`!3|q3O!5L9( z(DCueyvR|q;i!HRGUDF68n`1>^y>}(lCdn|ICHFHEsCYTG0pT+!>ALw z;Yatu|DEN;kzB-?6mL#}PG67yB7B*bhfNTFrRF3UXkNY2OIU9oG7!IGL3kqMR&`5EnnhxdVlZ}A=d>9Fx^sWW%g zy*Stx=Na&e@YlL@=Ve;I&dGk_ym~l)aan+SDT#jsb(< zJ#v)kePQJP%u`g&);FOG+IOor*~zWSn#Wni#|;fm@l@%Ypa-HKws7X|VvibGe+RTk z_G86<)ZvGPHWd;F*_nyV^8qwrCi`;?mJKFVDvD?0V>g?0&Kj ztbUifbzcAV<<{$0FPHwLe1C%&GAq|uAzA+^-d#-G85ircTIj`+F;s)VfyG4pp(9xL z2qV_?B_p(dgy`*+1G5jK>$*o0TaX6-^uj;W;h)s_ye=~Y?O%tW)sg|-SFN2^V0x1J z5XYY;wiG@&fK6YxzUbFETW>x>9?+lhcm5fAfgGfIjV~T1j$X8?mG~0Q>QQh|I2V}0 zypb<|CA%WuAENJk&Voz8hKR4Xn2s8~TC}>v!@| zG>2N?MvO+d3R>LH-0%2+nCi{s;uT!Aat`$Bj<1>X+S0KJgNvi{ewWi`dX}u_d;JIG zHb{R#ruVQH!rxx}6M2TmxvS-w|1y#%vxjch^ydAqAWeFHTDX(nm5Zc4qwd*GpDXBRH8~F-5T~nt^?xJ%2FWSste429 z*uxxebMR?6{@XX;;2bpfHJ<+zyp^2R_HS@)4ffw}n84n}9=O?y1aNIcNV4n2@Mg)b z2S$-I#a@`KU;6$r>?(g}ABi<_g=1*muT54;#p{YQrvg4SO1#Q4ZZRy7JKTIZvsz^i$#fmVMw3w2`&m{B*L7UTCupYzl%~mIFs>HXsWVga2(}PHzds@^x0%7_q(oKBIm2 zLyu=RatDz4qt6kmZg^*LmUQP#zkDxwrFJ5B_DI$pbS3pyx;g9QiHb)@!GQp@NBWIy zj0SMeg?@I7EgR^Dt_c>Z10p>^vHHi6n{Q!HyV(;*wuBZM?Dw1a-E=oXA92EZEmGoe}k9k11_8g7!eme-d#cB1-vGp6^fyfOBv+p!7n z(>c!xzr3?N5`t&6yS85uFdMGudxE$;_Gkh))cI&xtnYh9>?`b*XlYyBe;Deh*oTc|S%w=t@L#%!!3x2&p#rz@mjAa4~Z1 zx|@LcjliDTyQ`{0?1e+GhjmGv^Z1oIzx~YG)tW_tpgDD_|W!Chz{{nO4Q5t8cWg z7-ytQe!}znMSpAwW&jJ|coE-++sgkN6s-b|jg@BXm)Q1(-~0T(@XrkS<-QM3(3~XO zE@$i@Ymd^GCmXpK-7*o~tQK9!;Jg(L^?x_xSvw3{a}TgybVup{q=yUf(`kH-<0~QG z1ApBNjWrY>JG}NL+GxBP>4DfSj0tYV^qz+^uKMzoFj{+DI?a*h$O9M{@i(!#(X?ia1MZp z=I2Rge&l*2X@2;skdKgy<95+uTyW;d{0yE?=6Cr|20w_)#KKqcmti?`7@i&@P$E3? z^V@K(BW#HOQR}D=8r962KB{9draV?i9RtPWcQL;Wz<(2Ksp4F~TMLgehmZ43;&^9e zNfv^~qCec_3WUmm!DeLK4bEP82?>*L**85%EzrO5Y&cHX`V4vf$Rxvil14n+F>s`T zaT^%7g)@8!eF=a6IP~7Mx6Wodc7%^}V!~H2miVRU##k4Ebw6 zX@78V9o~wZ;!nRRKuoPGTnvrPLMLx$-G6pvH9NIFq38KY&dd zlz|ry;1A+=CujB;^Yz_6;z$;}*^T^ke!IJ9w}7>2|L{?>|8qj(0hhBr3qGKD0of`% zM}({YS@Yv4Hi8O#N&)6dBMq< z;)%#n+5_1%d>i8NfDOoI-`81XZ0o`ac8Je{9TzBe;7Dv#3%1&ZjVAU)`5DrYRW9aJ zb|c5PaKQvBNq@4l)0yevF>Fo^=+Y>&vmzL zEE(0hQMrpnW=6B@z(c$;9L;RqSaK=(9IW+&eP_vmGMdw=<09HV4;+$=ae{r)7=r0b z;QvYF#VB||oE$bl>}teP(VqM&!6z;&$`727RlQO;vC?aLfBEY(naXw6-C6^VEz<}q zPPzh`)wj!SD~>u3y)qA-Sh3Rw=8(rq40a7?RayGi2O12**?(Bt|iBkxF zF7{K-cP}>5yv}_4z$DRZEBpX*hG;<-d)&jb1YofpoZC+OkJIwdqIXBq6nJ4PN?!?6$(~Jn;CoeIMuBJ&2AVIs#tD-e8X(rKYCVrE$_(+w9vR6YH`Vm~`-6cXFuT2HjszzY9fU zhwh&lj<=&;gMAfqP;E2i50z3k^9-~q-`kcW+3D#ySzD!xZgWo>*t9EqYrFfin>*YS zwrY$A`TXk@py&Sr< zZO!kYAK0)3+<(?4E za9evM13khyt>8?)POOX0tMjhgTDl2cZnD9_~Y6&IOl_v9ojGZ^)DRV~mL60z1~+Jb*rkTu{_(qQiRJ=F$enDIIjz zWupg2|J0U4JjK!;(LH=SeZbbjw_{zw=Lh$Ff3|7uS;VuQ%vCb%j=g6&L-JMl!i)A4 z&05TSLyVEHF~})Bir+?drYwAvl2i4ac$g#1xw-+^%Z@!A8-~_>YDgwj-Pq&krpooP zQqeb9e-m*UOI8J!7kJ{eTBZx8iYHDdu4Y~Hd~2$)oH=`=$Q6=bC4Ucnuj|jE4{#4h ziucRt4ccpb^?s}Onv(pItl~vaqw}-gMfLc2FXZ#zW?c=R6{~Vmt+TEaE1OuxTBGhj z5x>!P^#w-teERXV^SzM1k&A+ywJ0>lXA+A54lZGBnJL&lOk=a`YtnPLW2yvSR;0k3 zG~JV8lyu{_8poU}Xd6ZL&5qBxM7m=i|68RyFPNK_MG*V465CV ziK%K=+HBP2^KM6dalsDYtM-lHq1sv4G1caapEA0vl!p07=u>bI3@XND6>pm}erpl$ zRu0V}I?X7SEektZUGp^ZMLDyLxmHnau2Farxo!mWE?s8UL}Y|H?v%(J-z;Cs#5-$%;qz<0Fi?8Xtc!5w%!`E2Ul_QD zIViXLm-J;3AC4?g@+9=i_4w7Zi5;oNo>7Or*6u}i5YE4&y6vln@E#d*#}xH@^FTIw z^OJ3pQTHnH-JYrF-@Lyubn)NDF}y)!q=h~kSAJrD|6}C zb<e8#u2Xnooh|x?s=a? zAK^@2t!s=ny0}g~mq;f2O2y}z=1-57(XL?8!1Kh`{o>IEe!cbJ0CJ{c{Yq#@|KU&7 z@Du73cxGq~R~xhK=YeM@&xOZ!u49aExqW+W|A&J)t_N?$`{Q_;I{7-*MSAW`q4*T+I#@T$MvGX`{Hyy}t_U=z5rW{D=4;Wv`hDc9XIxSFUXO5H^WSg@IP01R zCOItatCy^p3SWx1@1&pj8C;9-W!#=_C9 zXH!3?W%{?bmVN=uMubM0BDU=m!<0>*ISYOI+C#=cNRSuNw;Q z5f2%fS}c0%OfibCQNQpZcx~-0-hszOm(lNRu4{j|>B@Ya{1i(()t7P#Fa0lcO=4Z; z@PpH!kCqYe)g#~!XJQ^lC#!tesHIlBUpY0VW0LBuvPakJ$B$C0J#0r^qx}K)Y6ZQ< zC|%e8QuG4nW8c0I|6Ij>+E_t*RkSO5%Hvzl{1%=d-cbGkvHW|;6Xg0*#;aJUc+gMq zQRTbR>)ioYS}8orpl*_Qjp$7|rQ%ECJF<%>A?7W6^P(@mIoamlz%a z`!k25LAgKbGl{e42mVjc7d7Vl8FQF%3KzWvaXd50?-efCa+Yf=8N241LECCa@=tB+ zxA1p4{k=m!<;?Bmv36r)t8KM=-1Wp)G=nbe$r))_xkIUG=rtBsK@Y-*)85&gXuHt_^f&n`59_HS|I@Y+2$<(~Fb96i4|KFsKiy@DLFB_~ZhH28+D<;-)63pM z^qLyQgDpx@NK&NzzEZG7l9J+^M+j`-1S^3iR|IY)XX_h&llbIZxg%}37( z!iSQu8MA%z6yCFS6TwlsS~t4ID(E7?PtwFon#gau9-MjJHNRIp@*>78c!=J=M8DX5 zUmRA7{d^mEnMUR;*|y2?cMl2YYER4<&Wsb@{E+vbXMV!@<^0wfKXKB0@8{Zb=~VDH z=20jb3}Y{e4%hH4Iy9-MTk@7LxR(^ZyQs(`H z(`d8#IP)2wUcS5&eM8^Xz~Cx!_+-OBpnfDDu-{GcPjv0hm*PHp(SYn9**@9A$(1+s zx?P^v*C4Z&%o%PekM6c_1C2}HQm!HSo7^{MyQ0`u)@%KoPtE=j*>UOk z5e#VmZ#-LiES~#Y$5`_94m$D^$SUun%nKa#9)Pdt8wpp(cQd$nHsdKhHmFv3mwe|6 z#-GnUANL+gypNo<-!t@m013(aJK;6TnYfUc%bWbhuG-WzUuTqamZsk0{9y;rH_x9I zlOE&7r@5J20p;wM)4s`fC*Sgin0$+_!+c9-ck>OLqI2=bu8GG%Hw9?JbGiXIfME?bGjD zr&>k)2F9E0{1R-iPH-pLw)-SIOwUMnGSDx|8K>7o*8z4KbJ=m*wzbD2zi|jXK=$xT za+77_vJpZ1Y9pm*!aI1!4A$8BY$+Ya>`Hi?@+Z}fIUc_cbg8&{+z)kPkLbfebcIW?mQAI=%R7%+#mry(Xr(WX6}|sC07(K*{qDhU zOpR~-f1S8gI{Fy#iA@d8bgOHeVTI9a9r&x`@rm?E9qVz4Y8>FZkPqW0!07vYu!HTG z;i4|pcj7EKa#R?P9e>bR{x557VspD4wqM)c$MC<^0tz#Zi$ZJW$iHg3eJRpI9;Kf~ zJ|*1Cr6%C$!N$bn)1O@2$N%n;Mzj>anqlJ81QsE9clQm`qslF``REPtJ)imG+BuVH z%))AX5$Ax*v>(B)Yw%_#@|(s$&%kjvZ3=(3@O}DJR}{W%$J4f;03Jdx&6#_U7LeC1&6qxR}H?7V8)Q@^_Y5@WcD{-q0aj|@c7wGNWQv3$v> z_3vp8YvHBvVd>tR%re$MzBS~LZPVfVkY8$DpZH)|%US*LHp1{+@vv_CP`=($_C=qZ zX97V#WS)! zx{2kP)kD~ah(Ek<`rDeX_P%A zOSaWv_^9Bun|u!0S##knAz&k3$UfufVCEG>KAO;qw;KBse0l*JWdS~-8|4S(ImOU= z;f2X-f|H9FK`C+&xftDyuU>7izuP`fA)S3wXPg8F`9w=ui(k@q5^m{#uBLA12{;Nr zo%5=Dnd9m_4`(I4&-}oZq+c`{FS7CKdYjM7UbJz{(AdGP$+V|y8nZEPdh|`^L7ZU6 zcE+Cc`)LilA#&lskrh9R(@GuB$%i#4d*<>D!X5arcfe@So|F}S>}&9U#bRWz>UKH@ z*?xmV+H-m|)k>q!zwkbK<7%Tzx=_0RZFGOujy*B>5QQh?L{Sf9mUP&sfWiN0JVyGW z4Yb=Z3V%i7nI66i`s`<4_pujBa}iG2amYk$NMl>E?q7W^4)k>C1|8U9Z=;ishKIh2 z&ZgWR`F9_s2AtM_n1_EXdA$ZcLl zPTW}ca%dC0Y9Nm>*3L71S|8eKXPzH$O?*bNKef4HGJDD38ygtUnY3MwUL)S7oE%$! zI}SZ2@@oILdM@k0lL6#i`K+?oX!M3I`ZUKIvqd|aulI7J_A$OiTS;D2&fI380~gFl zjh{(Ft%Ky5G*^NHT0h~n3B7y2i%$?*GzW)s!TabL+^=G8Gx6Vu;a#^u7V1vluf z<7;s{==}tLwfj3AxUqkImU2vbQZ3uB3(h6|x|1rWaV|0P++oCm#5mOt@#KbXXrhRm zTFJ0(_>uWPlP&5{Y$|x>Omav#lbu?w;cq$ZHPZjd;9@uPw&B3MAA#>?n&cr!f7|7> zKIcCCwlJXoQ(a|GAJgvd^Jws zAfL19AaBOUbPr?yk~r8!?12;R9zlk5@_aXP;by_-*0`^>`z-QC#vwn)gJ*{aD$Kn0 zT(=RP<8JsF+w9y6oATgY>=!8?1kL0b);5>99~n{6J(^qs7e41Ke9wG8f&Qtp_vDu< zHtj)&CcggsJfpZ181*o&Ameg_|3Tghf*-;Ktv$b^S3*-& zlnY%*HjFVk)27h@^_By;s{I3<<+RcC2 zE^6;Ed+Ox#sAF%JY#!#4 z=H%h5H0fH$k>SFTR@UfT*1_&y{AvcU!7p-%`^3NJXpKcj<9X)TXwIkww&+%|as0oS zwngLOYql(#&DjjBi`vrq+WZfHdlT|bJX<)6J>yx=`)X5kC0zfiZ*p*$6? z`4sDJ_J8@rA1|F~E#tSrTGeo0Hfk^Vk0v^5((X*gWRv+Sz;t!`_3%z-T)z|E>YDsl zZgPXpq8*KM1G4|ypKDA@cM#rxmY?`=b1?;<ZrZR z7_g&er))2%S9~n6ED)9cNjx)tz8ZGDau~3=V$`p+QqaeJ$QRj2@-N^AXsw|((Z|RU zyG`CV&Ky}##@v&8pJ+?=WJL%--d}J z&00ra^Y?*ER{<07U@7l6{J7BiHa_}-?VLSHJ-Gt*4!OytuXGtvxn&?E9nDSJsSU@a*CCgwRZ*e zvbOiz`&2aN?;!UyU-Yur?|9}g{;#>f$&MSsYwU3^gHJ*$P4t7^VxRHqgQnZyhvm?h zbQkDgnc6{L^{2Bg>Z^ghXZhrJG_#(P7hUj0 zKB7mdX?#08VV6Ebj8?%`I@2C#Ii38{;A^ZGYv27%BlbA3X~&nVXVA-6D`&rJoYR^E zFKD7xgZv`qB(7nPLeH%x`0ss;y~ebo@tGmyr9)dUOposm5B%bru}tVQguIbX-8?O@%&nS_@FfEoZJwSzs)e>Ro@VMN zPDV~|pq(%@toqxkzU0e!p)jAi@1 zL7UakZ`ykJ% zhRY1bTzEpGDLQ`l256rMB;o;18=JaAVZ=)->V%xSh93No$>pzUh< zbF+U38CqnIYrM1ReT;X-i$_Zr;W)tn` z43Z6ex1d*)>NoQR=JxM8;3|1dysxm7=c~CVUq?3Aq~n##=H~2_fMD}RF=w~0T^C{; z!ZrMX=rc}hB;!!soGtW;AIk3~ukvpAt!li9_YI3d^W<|KhR-MuSm!!Or(QGIDAroK zx)XQ`zm-jt1CQ1CCxd&MLl}}3R z*6kstBHijL^ov5#1AHb7uC0QWsb>~3)277=YNkai|LQte4(x_fk7E(K)KlQ_chC{P z#(3Am7pm#^JA(tUhq%Y5=mvyBqfyP1it^iRG=?&a)S{N)bTdlmZA zp(`%8>rdPwzuGM`S{5OrCjWDw@PkiSuYc&QHt)pm@}Ab_Exrf#3^e`?oRF_OBw6N5 zw`JMIwoY*(J|_OG8ar*^cUx|OwVN7DyJwalb2B2VIgd;^Xx=|NY~Oyj^rm_7z0Pxi zgKB6T0;bB#6g)(`26L0nnaDNwFFzu_KfQPMV8e4q;|AGT2Jr4;KS8ohH*Ml4Yny`%OYSd-+c;^QjbcWYPQ$Kw$yjzHa|=^5tx9|e-X6v_ zSWlcc2)}CLqdijPj4j`=ZQj-L(2#&)_Nas zIjA@kzV8ry{q;TRX(z*!^Qe$f$fnf|8>d=J$!`UYi<`h-Z`4sMUW1N0N_$_b7}ro2Dj1)JyvAcc{=xrrdAbzL3RpFcb=h%t<1;~Q+wyaK`5A*MP zH?g5=f0)i(uwOOy4(64OzUUqoD9A!jK}WOmPj#)Bv#!k{*udnDu!a@gE31BEPB(gG zw@-c}&=PwyzdnP#6Vhv?(_c8w*r{5H?jc50vgS7UX`!pK_bSHZVJ_GRizKJQ?A-uX zB}-YO82Pu_KRg4u*MokQ&vortu2X!F{96xoP}XmW^QlAR^vO?I03WI0cPo4-1Kud! z0G?3?&$9^lR&1wkj$3Cs^(g-(yiUFg?8Xx96W9Q+Y=OT@&LS_0goDlWyN!KDhUCN7 zF0#6bMGN0buE?*S$NFR-8;ApX9>Pzo^V)c%se`2Q|&t#_jiyB%2PT- z-h}2BWWPqTZN;x0=!n|KEu0N*eE7~T_H@~O9C5+|d^N*esv@88w0 zc>ZdmdyI7)9dHZ0We>H%Y#$3X#m=Km>2moiE4QL2&5~XrJ3H%VMuBvdhA&0W@%;?* z{tt7J{4QZ!?;r;&7}NW}F-Sf~8F0#LKFivH&Zm5mR}$Ad;6r(#k=AQmzkutn^4>P? zb!p7^8`f}W?fJIf&>rg?|K>llteOE56?Hf%wlYWi2lr;S5^f*?bnZ z8uV6y>=AtREPF{-XM(p&seLPYDwTcXV7*ewJ*G|JXdZK7&1^lz1ZSEJ^Q#&bv%sAm z`tN)#5c?W>p=zJ61;*;D2OBvBI)>*@h@9n&Ey-M;>p>puIzG_$C+1kg7z*lAt=swb z@0`^F9>w$0V5v3uIoH%~8@8bQA3@+F8qofx zeDa0f#uv5Z$7z=O-34AX(BBmLL#C~6qrV_@)y>+)`_le#>U7iJ>VNAiBf@?+yRRU% zp@_K@slSWxA&-7Ho)aN?@a|#oC=uI|uSw%E@}|Yc{JI}~9(j@2pON$h3a=O!HE73L z2jK&@OnnBK%KSQ^d+|ciSvlWJIKM!0)t+NQp8CK)`B3H0`zN`#;?<8KgF^6e;;C)Y zfn{S^(8els%;X-rzPtXtPLTGB6ee_k6y8>w4xc>RIt$up$A?4>B`w3KsO3wr#kj~hB@b^l)P=(A|v57x+YxE zoQ8sT87Hl$;;8-q;Y^I(4xK~JnRR>wbLDS;!8$H^F5g;Czf;la?n+OyRFCy@@XrU$ zsP=q*)G?ddeYM^6?Y8%qoHz^k>hsBAU|yvb`X2h}JpPLouHpMLz8lat<-==m8WY7M zuHw4(j$g~Sa+!Xmc&N|y&W!ZqsnB06ARTo42&?zzK`n<>3xQbbp`rN8#yMKf`!hbV znbb;J4*ww*9G*!WcpNw+9d0Hzq(6QZ`pgf=Yvzm_;YqXn>clo=6NIl0M1$A}@>7Tw z$W=bLk?W#~hk;@LEnjb0@}*59k$YGd*}mq&W)#HXZ=tTBgpcONlK*~!8Y&DX{&%`4$ zok3Z@E%YoR^%B+UxrJHtOi9xJe$Xy+jm9zYjp1D~anibmysi!7|^O{pp9Er9n> zC$7y@t_6GOL+qLVJ3cn?x|99!pG@t~vSsrr^)7x#KKP~Ns@#X}dIz70!2EY-1*SX+ zf0bNTJI%y9`fr}r@~6Z2|NnzOK9@C-Ur0Wog}~r8aOzn;cR-u6(;xX!p!as;B|yT({P_cAa!DU>mXd+wua-mJ>&ZTPso=2Mzd=xf1{EvL(G$w6}}* zW!JAb&2dn*Mu5AGOXKlV%bqgPfgH?1J}%YC5WOL%{Ffh+ei7$A>Py$7z!W*Osf|7_ zWL+MCKkPouX*JsVMOI`hZ3W;38h2Y~yrxDMXUybL&s9FXJLyL@XBOix=8Uz7GoE*pk0U;Hr5~D1_lFsK9@o2z4QmGDdJtRTb##qI zHB+o#qRU=BA~ffpd`7ab;?|lP&TKbIhPjQBRD30Gb9Qtpe!Sts4SX7@ku}DY$+A1l z;f6KWm{L3fU&&nKg5r^U!#8#=S$z6j^jxAUu@b?#0Ja2hO`#Pw~wyKGQgSe#<;&dzTSpk>yg2@v^GZ=Yv<%?%27FZe+oIH&c@tk z$t}(!ETwjDJFwy0w25w=OGv!399}=1{sZ`>MaN?jjilmVkMc%5oT4aNRl;czUHuaWa|3x|%OPAj%A*lpw7 z*MN6DxbQl@kA=Kfi9KJ9-TevYwwGa-=YiV~$(Cw0YQJ`-Ggb`@7Gcw4uoiBBPNjnk z#jaMH)!@S{+CbhF`Du3+@14UtGihJr(ir{cI%D$Xr4+<-sI-3YC%=4ERid}&o!0ku z;}g>F;1FvOzvI3lBVyrW3c-s-Ka$%swj9s0-@%72J+4a6{)gHKz-Py+=-t^xEj>nb@ubU4X<~J5wy}-}J=OaI^VkkaW>27EoUZOqG*^%4% z?W5f-@cnFjnUbqIqy0|up08%k^51kq3(d}Qav?J#cME?K{)JNZ3?;|d#W`N3zs8TR z?`O#`IWkc3D1EC~ zn*+NHd`K7nVGs2}XdQmcdFne+ZBTe^mP^XaZ3r#*cu{9b(EVfwP^ z>5ADceJjb;h$ZACF}p7lvQjw}x$sPQTifZ_399p%fvta-Ts*;5_;?jOMBk5sGhM93 zdhG2^bP)5Z$<)~oue+T4DZnZlz3eLDhh4z*OV;QRdl5R|HOP|#Msucxe@3`}zzCaG zz;08zAA1B?d)3NM{lf6v3NBBB*Kx*r34_GBt1FZ_SG|{)y8$_T4ykhc4Ch3BKs`c z3TUEA_j-q0ud&9v;5FUEK%nm(?P}xN;g)K;YMl$@KY=H}6Bko|WQX~J!^#7%f6se@ z*K>R~07LpdKqN|gD;m1sqc3wkNY1Kih6!%MqaU*d-vqwW4e5WAVY=+G3Qz9f`Gk+a zK0|W`xNsKoP4-5naA-O>bXRK2^T<;#^0Du(D_g?oz;->3Q)>Knv)} zxxh_x6s_)a8>vq0l|wvZQcvB{H+{{)0?u=j9s~>~1DoBSpKHT_dDrIi-|QG{-3A_% z01vgZ9v|jQ@Z?7DU%ckUrg)x{V#waZ@%&cR&{d7K6y~hwKH{F_>PPsXT&}EHqT>zd zRv+?yF?fR$%#v+bEZVubtfl>Pop*o2Uw$3A7d6X+z4D`)$c7f=PxI&Zye%EUxaXc9 z_y3XeJm^DwsA}Quz2Yw;cl0-g7IH2aZOi@^&aCIZ@)opy2dID4!`exoybXItwZDSo z5GbEadvL0-VYDYFxo5z@Hp}Dl^j}ZtzLKG9-Jv;!;73EsSnED~{_WrdXXq`0kJ0h&GdwH|Abz9^4v5oja{;MGq!&R@7p*+98>r#|6mui-i*z=1z!O3Piw~JZNd-W zH8S@z*NWuXd|$lM*SICui0xwjE1aJFA@1D-Use0q?;dm{c&<0nS9x6a&%sXW=RofV zn|Ws`^^aFLGxy&#s^VyX_lgd(kAt&>ZzEL_dHg4i?xOp(K+S7>D z4naRRTZCufva?f5jnfzFcTeE#)GSlEWZ`ug&=qpI7@cFsZuBBI@~0ENxfk5N4_uq} ze5&O@r_kPwE*E)_e9Yn7*SVPU9{kRo;1ayYuli*0p^AKT6zL=S-@*T8S>$K zwG7q&U@R}wZw~&(8g#4ReSwnRQSSOMe8bIt=!FaHT%g)=Y7q7CzTzVe;`qLflKQ{c z@s*sR8H{H}dQTf>R11_Vaf^mGr7;IR) zp9&4JCj}UhXW<{jGfj-eM2;8mdm+5nyNZ~2!oO?wR$u1J0EF9|O}FTq~%_ zwQT=g>lo`y;1BezN~`0!2wg85)}+UeH~MmWi}j9b5qkeC z?rRk-tM=>L_;r=H1WkL)GGq4b?C0}lAjioaJxBJa1+B?{x9o)fPQ2XwNm)rba(oYc z{KFuQF_=7r>4E5@@ZrE{a$1nrOW|AX)D71&(^!9>o~)3QXuM~4atPO^3a?SiQiMj{EZL_p;ef%{cXZRhnvBgtb z{)$TCc#4zpD6$+CkT7Xu|J9o``6~&XKQHjfj!i^*!jgMjE;JFMGG<=f(Tq z1N?n?>?2FOe?RYsT$~+6opQ-M_76_zV*NB%uOnko0KZ3u^daUV8f->}Xpdki_cRy3 z=F9xb(am}ozx?-tAD@E;bMSXmZWU}LkNn>cY^~(IJl-2)_n(0-;_*Mj+Fwns%TRDf zxXeDcTH(9$F)R2O?%B(I;gx#z*X7l$H`f(;`=DyKE8YT4k0JL4oqve;Rjqb+ zxa8l6t~#Or?ZD!(^_>~aPh;@$J}`_b&*W6yKsCIP-~LQ$@NJ~t)U)VK(*J$X1$;E> zO;ydfE0_C#wf4w3SPS-x`lW9j`^?tu{ds&R^_Vl6d!2Gb61f#l{ND>`SNfRnt66R0 zHy@O9eO%)9S?d%O0;fc8{L#FYCaw=q z2f*OBp3k{KH3^MH@F-}{>)!xeQ>arYKau)91g@tSO-DEIfRE{Z_sho{^_+gc%vrx$ z$I+}KMO7M__?^w~UBFp9N%*Pv{#tXqF+{y*7~5>{cS1EVYDd-@4~?)gl(YYUqojf{ zKEW8JA9}#=L-32YC%U4){ioI;e*PKb*`)q5id@ltbcH^2EA@Gd-x=wFsAA{wal*&Q z)lp0(xn|Pml*_k-ewU1$^i}+A1GE>y7bm^30(=9f$nEn)HZztG^o;$K<{>Xcxn;^f z(b~#Z$*6JK_2!0B=OpP*)A%F@RYz9*0-sd0lKiuF=u-Og_G8Rd`QrC;raJdb+GF29 zd{1OzA3$=vA^3)5)fV(TwQIkJzU$^)cbY5ecDtfR2A|=ss9?R>#hxQ{1S4;lbkGtKA-=CYho%?q9XvKLc*)B&5keA80?j^RkLlmn5t zejxApg822i6wASNJ0>xXcoVg^1zX8n66zwRz5iA^Tai3 zPnHa`pXXd;+INVbZJKI{C+{U^=c{YKoN5`!(LZx8pvI1VOs%)+B_{Gj^IU?iDLOlJ z#oU&@`T#JQ(=rxbA^s`bED4ME;L(~hGQapWc&YHe8$D9rYvI@WUQa!&FV+=F;+7$y^I>ow$xrE98Yd_71Wm6|&@-;?`SWT;9JjakL2KqufbkTwg z2=LuRJ5{cDUZ?JL@!sy|`x=j7BOj$kL>DzXve5|?dud1hopC2)p{>u6>puA|0$J8k zejB3sbMW=@$@~e=B<^*bMm`Y!ZT=rnoR$4KoAT~YwJzaWIeHy*-Dc10vWscoQ40(zN;k#7H81T+;*73_cKpd#(f*XP9VLn* zPZ{SZv3&(RBb{ITOZt@gk5F{g2(w-}N$4bLe$JnK@Zll74>H~`dXc}*+l!nj%0HVL zqv){t9JPzA3W0-l7}^XGGM7BhbN1&nD1;|U3l z;R5SY{>%5F_`2;|{F}qFV~CmgmTH4v&3*Yof{Ab9kqt+PrODpu(tp3K;uk| z$KaFynGs#c^(%gb{lWYtCok#%F7O!P!VN!%2Z0;i6O2@S&)|G7?Hw@3W9RTZYZI60 z4d)TlVl5e;A-M6M@quHh)=%U3ODtuCH8b&yjidZ81E2EVA7icMI_nbY;X9M@;Men< zfj*`_#4m`e`1{)B)9@_v72_L;*}C^E$^Y**_BAR`p#YfW11oIP9q41RPw>@Y*Uf&= znNm^!?B3Ei@NtL12i<>_Jxep(z?XYr=rV_XeK!W8|HZehGti%TcTGvt* zKW#+Y|2Z)ECUgk>uHtto-=*BIWgNmW$<;9ZVmr}RdgOJkCt?MD;r^@iv4>}X!w%!7 zENeWxM6j2?Fe@eD`@@FpJ*gh=Q}B-kMoF@fGD1ZA6d$qg#3)b`175`HV5Mtgv1(1Kxii@5%G5Yr#jw7Wls- z@6(A^1^+|*&(nHt9cNw1|0@1h>;H9y)@A%R(Cs$p{pM_|oc~?iM>mSd_t8n7W;(Jd zh2LG+zqY-y*sv}cn>Y_|H}aLZ`V!{0gmd5puPYg+{K~!5_HFxz;c1|+2ES?7x8e7J zh8GKX&aft+hwo+X`>%BNFt{c>V8}^C(g^fFHpx%_8a-T)$(IAUXyn42Sf|(I#ynP zdWNIK$2>oU0>UH8qHE4@l*rFYzEp+qD2ICskl8j3H(iLn;fz=f{rKg3i)(1_3*IZB z&HS?b`t&qMiQp%E8Opc%Qyc0tJ;!11Eevq43_EBrc=@5-rz3g>Fi6H_^$xjltCwuN z(9(Nt_{HwvL!5SX!*heI%ru9c8LlMyx}(UGN5u11pS{0cdXNTky5Fu;o**LHJJA zL3;PoxUV0YYH(M(tXas^?aaRv-(*1RLYS0@QYpja;Edkc_zH8ApfRE_<{`Nlh z<2iN?{OcHE!efm=@y3AxqecA>I;HQZ`aa2Du03?}Q>Z56&%n_hc*l}^9dkMFD2@FL ze$LVL7YvMKEj<1S)TI`$(eLT}UjGgJ{_ss7a`|fL6dm)Rp5H+HRL|rAixQq|x|f(e z>or++Fw)ZuzMqV~^&zM)(tM_#FOA9uoV7Lmq=~MpSvmYG9Pp38T-WjiZ zYO*&On{rdZ9*1R)Z+_flP0YKgzkwgCoAq*Y|21%R=7v(sENFS$fJf_nY}rdEx~p!MT+GkHL4F;`zawYS7CvSgYogGVRAoYff>fwh{3%Z)7Px$_3An zXTx}umuZ$wu2=ofDqa%Gf~EzvEAWagrv5*Mg6SF@`6{^Odhaho=5lRQt6$fU|hWwb&LR z)~t?a0^5!&-=p?B_Pz93gXbduS!2z^{ZOE{1{mU3v*YjbJ^1mpDi*(i=aoZ`KhhE{ z8jjF9d%e*U_Wb$P)bWg4Izz|gms9hSzjwTnD%q}hn8txDXt-&+Xyo5>X2lN~gMSw| z(XjkNYZ7y+nuCv+wL}lF^CiV=R?LalrD+0Je~ta9xJQV%M-|sk<|hLyRS)0MvIqS| zyzB9YZJ7&gmbGB(#JEpf(~A$8+EL(I@?6aqfxQP=d5AT7fH+_2KWsh6UUTi=GMSI~ z@VR_z-AE#oZ-ZDBXV=>KXc>{s{qcRSUe>Gv8-aCNt^E$dr64%9Wqu&qG9Me8d%{iG zp>IQjpO6!$Huv&=^7Oh{qhY!nAy{OR;pO`9QPmvQ$XYu8KhIY`!UZIcn0WPOWyo!YP7 zujc(XL@&hWzQZ9&!nc$CUP=1tmUpv4TTerJ(gcV_&D|l`kdeK*TM#@VDuhMxg9auJLPVaMm zt^7;iFLBvTrsHfY9h#E-_zpU5JFp9A&07nt2F9uNlk8i_J2w3wV?=+6So7)vjT`)O zU&VPx^mQ_gC23&@*QE!tE^VR%J(G>B5q@?-Cz4A+*3CrzUOW$7Ai+oKn0poLSk1i) zSjR5tXCJUp-=Bkf25olHrrOaM*ex72@Ut1!f#?spAH;6%L8o>*Qc677F9tf-16)6u z_tr`Oe8O+XYJUH??F*R@0LHUe6LbQ*rosqtS@X;ryoz(+&4^^q+o#2KCgn?pwU-0i z{C4PS4KQ7D?<8v%ICKb}CcM~y{8#+=!>xUd_(EHc;=kI<^=7AMmi7i8dKG^S{x*u; zHSF(U&zH@cz5ZADos@6Mz0At1KXpIzz;t702DH;gf1(?7!rpRzH@oaT1FPM`sE-YN zOl-aau0t<&y%fIpghWVkVkEM9omb7Z}tLf{l=jO;fLg- zd+MF;Kk;IGj~bjBmvEs58p;8W<@;L7GYvn_ zqwc1f#1UeZ2|6W2KDCfkc{bs*)$MPw? z&v!Cz_I_}`L~^g0yl8WHcD;Cj8=sGfpG5g0oDVWv^~m^6yZyc8y_4BfC7IEg5{e#K zlK;BeS4_(d9#BI&qP8>cX?c8`bIg7px-a%m%vp2yR@Seul3b{tCi;D1Uwr)}r^P4l z;=XvV>{#hHb*YC_1?O(?PB`@I?h`m9_}D!7m3R#qvjd#>F^<~P=Q{GxsfB z-5Ivbv-eyC;rWUkNe|3J7f_ui#V|#0{62Ui^qGc-Roc0;DyLeW4uI$e#tOMrT@cT+9o-4aH8FxtRsmXw*!st%q5KKVc zR8&I)z;TCRoNv8>FI?*+oT*z7w@-dWTVZsfN$>=%XE}X^zC0zSQTYNsW!Z^NyLRhR z{M}2514DD1c})Bt+NpXLd5mrp7Jj1(SJAikY4jE1Qj_VkZsF}y9Ow|be+1mvOB;Hw z3t#F-z!;ug6y_QE6zas&7z;f5AbGhuAKl(lpnhAyVeti%IlzZj8`t{fqhFo({8VyL zJdrhtIp%?LC)xZq&ZPs-CBP${yz463fAIIm?X%KkWBd%bHGhvY7B5jO)hNuweh!gW z6#^db;ggn3RE{L^FZQg&bNmhTwC3;O1N*)F-pEkVu3^N^1s=*7dKP?Wx&%8B{QliT zoYgJAfo!DP4PQh1;oIYTULxS*D(17Dx!gt!ET8+zNAc-8bCezCTNdp78FSM#T(|N0_?6?0 zr|xe#fbF3DEyyuw{@?dhYyN_Xe0$xpVc|8`C?k$k$z>ySRd zcWXL6uo`f!6dbDq2Wya*_&y8uA3a8Xi4xgp>5et)9%WzWIOZ+?9KN(o4ZokD{V6-z z{5h8PyL16F^>4BlM!JgR|8JO&u4#V^V{Cxm`KzCo{bWQIz$>*6M!J!FKGI#(wtQC5 zBDs*0tii0EbQsCm`)ydp_Ydni`6l(=RidvggDml<*u6%o!JI#G8;k{?8b<#;e~Ba8>Up zzTluA`Rd!Z#mA`Yd$|6e)<|+taoImZgC)NmVJ+u-{ptB?uq8&*K;F+ovz=^^*g|Qcv>rQJNET)Mhf=B zm8?Uy)}HZ|pf9aq%*w6MzFfs)&OHgXNt;GEbra8uwzQThC(&Lz_{7-kJu+{jSKmjU zrq95ahK&!tdM*g(k`G#|b=wD@vT1Qlkz~-0yxsz93H=Kf*7pyoRr`k;*XK$uwu=X| zhvrqrthLoMOCITK{260E!NX7JIPkO`c}?eQUq|HiM-wuO{?w*w3`hs`i4Xj)#9EwK zCwojEpPp?C|YqRES7_laD zuBw3bIPL{#XAE!@4^;lyf5HO_&Jkw~#NJIYT7?s3j4kg_p2Z%+25KV~{*Cv+iPa6? zI^D`aC(K1xDH4r+<22z2xsij>v9lv1cusmyGjS{F)f(sJilN#2@w5EmtAn1$2I2hX z5cIy6+#}>cgj{?7tN2b-Yt#*oEzR&QuEGzPMa{OX9AlE7c}f=MvyRfg%7CBtS{3n5 z0Dd8Ss^+&ryXyCs{MP=sk6Cl=`_tb`Ru4|6+Yc8OD^&?tb?Q}GJ^dd1Z;xl(bC-2(ziL(6n+G`o-3wlR* zRL;H(2YwRiP@GPJFZNQ|sFC{;&nnK9v}HF4huTxEchF50H?L;SdVdcvvh{3qB*_~e zbZL5Ivpej(C(YaD7r?25`5}u-B+G;RCZ}EYnZ+g&Q-$Q&Oufo{7U1Ot$j&1y3vzm1=7#U=qtr!oam-A z?rDBp<7SUcn))f&VC>}g>`L+^&!PXJoF=UGcULKN79Sb87@2dreP|)2%rS zUnj7T{{xd3^HK-;{g#@;Y*)!r;NBjB_S!T+JH4vsW@OgBqsnU4*ARNY2SW z!IR7HiKKkOUXg8%5&M0_7wQ?)r>+r^?@?c9CiwhjNg%56{0RLm)X?0Mt}{?c$XbfV|C zFUGe84%A^wuEdrEr#Bf}&$Bjy%hMhmWj#%9m3(jVElbY}-yKJRyVYk`23?k2mh6J;6N4xHX3szx#2GHOzRb$QKbzB@f)hgEa0I*1MCB z+A?WN_+QTdbZ|*+UT5P=qK3^WI{mHqy=DM=`TdK4{}$lCo$+l4m;D*COWl!5_EG69 zdf6VDpFwV_YK{KoW$LGJE~#)Qm=cN_gN&yaILn@PgGWxo@ig)#<{NIlzMk(co<;YH zrZ6A+iiF6wFSw^ArQn{(aPlTHxa9*21P8B{P#?F z7W-U!m4h&&H6CNof3u^wp1Lk}jG>G3C|l`I?@(hbmPL#~?{@H9e&U@hVhs9Etf~#1 zC{aIx+h}B--g%DqS*K`--zKz!EzYa76E_65df5ku3s-28T*Zp6G3 zbhfwATEN=4`EC0-Pgzsd9?1mGT9c)WTl&8rTx*__`M3cb0=y5eZ?ON9(=B;_Hvi?X z)ipEC*122B*|qo5=$a>o+AKVG1l_(7{D^%heTG`Yzz^PFeZ*QF;#v(dXDRo)_$_>V zf$tLk*#%xjjz*smq!z4SmPJa7}<~1*hPOQ`~mSe zhT3|W*j$jddhowWrU<8GWB%e}@xXuO^}_dp4IZl;`CbgKm!Da@U*pN-d_DXl(J8Eh zbPod>!jI?wC`$e|G$*~}hwyaiA5Gv&Grrn(?6Ymo^hJ`1E69^9ga4RI;065y#aiz+ zct^MV1@QL(^38>Ak;-+oC%$3pF6b-6_@tmOum?1a^NuF1fJYCdj^eNqa}xV5a#v6T zG0b^i_FggMzyiTGAqP%9vsgHWP2rafuGmTwa;p{i;R8g!!sm}|sB6kq9`SSK;u%Hj zPjl2B;eQ^u=VM&S`+xW!>Ox{$gwc_Wc}shlgRLtEkzoh$$!^A{pm?HW+_RqtqMJWA zq6d2i8vh%eq4~=|^jZFk?*@Mp&Q-o{^8zEP+D8M(7uL0+m{_Sve_Q70%qD77a!-6K z4cVYGjqmt~JW2SHZ1~OKP!OK3y%P0|Q?Zgf-uV@0U!&(1>7L>!y57Pycwp~sI7N&D2Z*>_?+ zlkul-AoDZwT((TqnASoE8))wtXrzj<%oD97_F9#49)ff|`O(nBSLfkNeu=RRVca45 zP4XS~(nOOqBp$Vankac)ai7`PrlHpPjE8k;Rjgk8h5OhfrReGG(F!;%T|bNYoeEFU z;jQ3y0Jx#!%07$~0+)s#sD@rv8;kM_p{C+R!m zfunR^Xe6>NKwdk~c9NH&8uRQ4FZvQ#seRe2P5%LI><5jo(W60o!+6*BhjEy)Y|O$X z3*xdxHn&SO^wnOqxIb&zT#;+uBdbI;pv;Um==A8}>*d2hD& z+9|!_3)1h2AMXs!zq5BPYqp!`I-OZVbw+*D{QO?|@3r=MC$D|N7fPJR_S0)$XgB;q zdxI4dyNzd8@@a+^ls|VPFbR^U(#hClw*{ov-9OR_;bRfsKN;?)*7_1IGz0r7cf003 zf*v9HQEZqgw}J0%xo%6bCE0-!e%#;qxM0M5!th=PXA|oB1<+W6kH$7T&EiQe1DgT< zN(>|?hx4Mo+t(-`$cxYcwngM(o^Jt<=J1U^RHQyL$(79Dnau+uiv^2Y!CO76Jpd*) zzxwgg)t2nR>QaP zQ|0|KpWp9=R+6>8PSQERn;oM4L%=||lLZew3_TwKrq=-fFX304n1{ym;WKd_+PQG) zS3ERs-^6M88TFBW_`Jk>-SmOZTT)s}Ep68B6V`MF^$*Zh3r%XPy3y%W zn_1VTGo|x?2G5tH7wTRC^G))!|5R5;4H;0!j0QQVAtE2lk=!z@;RfBFt<3*S&KiTxb; z(-q`9$@jC3-^yp)MeS4@7hIf43tlxdN0Z;p{=l+I*1ZRvq?xs9q3t03qLXr-k#wo` zxrLln)(u_)ck1wZBQ5Ci_={q1184P-4L!x@o$jwf7m_dPTUx_J?H|ccYB*Y5&Yb$I zfC)HXxOG%0IweN!40wRXG0Sc4I4e;vE-v7m*Iwp%a+=DtcfqG8=QR!pStdOmlYBt)jl0>C$$=pon`Qb558q2{DYpzIM!ISrTjj|RH5gZQp%2QV0}X1 zm-1M2?wWY?V~k%mNM~kQNf0?9zKTKu@5+e$4S#Xx{6MsrHJ1Ka$6jJ!XrCdYYhApz zjXmbw&`meB3(Kih{{g!0-Fr^(w1Md^_H7Jd--gM)4LAEXQi!n)CB`-ke;#%+I`kLF zEB3-g`uKh8s5tLc`y+`Rc-lj6>D=Qj=w!QpkZKhg?VopL@gC#rb&c^~%2?eOEIUa&x^(?EZ?-V(9pZ@Q0<@j$I&i+LB zo%)arQvL?^Pdt}tkl#M5u@pKBVXtbxyNT`JJqaBfzi@Xc{tmuNKjXgW^TPtGoBq0K z*BxwstDE!W-Nqi>U3O6(a!;lJByNv!`E-(Bocsyrt?u3~(FHjF~lLT8-nUwyNm^^;I7(*v$$=HBQ-bgL0-XS6$!ABlyKX9jMUt?)?LW zUF^?2L_VPjkF%e}PRiTQyy)`*`b&;^)lj2V?duuQ5WK37H>jUD$mE zJn84)m-}1Gt60-aU|^gb_oqI=Jaxb4+xX;ZU*iTJie`g0Xb4_F8 z&ovDbzF`yc{RDFDF`lp1d{2TYxLmj#`#^LmSoT0$VaBNSE9d!c<}kA!|MuxdZ8KvU z4vjy3FwLrGKl?A2ExdD)dsuyy!@Ik*-l!FxRD)A9vWzzI+-z{oLjM!pH+_Iz%r)_~ zYV3~~dmV)zs}54P5I;^i-`Yd(cH=wDim$Wmah+k^1l-9rstw?$tz1c@f!fxUpONp+ zS!m zeZ$W>GN>2F7^wN+-w1tnZC0(JjL01H5-)iz_44Vrp`bqi3#+`dnp3Ef`=PH4@Ad-tZX zXA=7QZ?2id3X;61bKgKw7kDRpLmm|NvxdeXqbLZRn-60fVUL-^jkaOH#6FjiH58m= z*L$CY53|ODx%U-36Zfn1{VDrq67Y2ZH^Di~Sc0rcJN*BriSZFHX!x^!GY@36d{R3K zcuuyIyBhnSIefuqGyPPdD?NXdT9xPFC&srCp#ATEAm2kqBm>{5_}$m=ar=1x&=r@p z9PLsL);C)Y?lU}FnO~K3+){9OzoySM0qCoKfw}UjoPWSe%At(~j2R0?`N0nZ%peXH#TO2}HY( za<&2UQ7mm2?`iHc7`yy`@<&THCE}Nf>$$d#DY$g7rcvI}m|x`gZ}eL>YbeW>=MO%M z{*S(^+*0I`?Gxxh5ASBovLm6RLSn{N4Z5enfB9sqh*5;lTZ6<^I2$P%Bznux* z4egltS~+_?TAE|jj?bC3ybKv=qMJA88LcT?uRIgo0zYKwxzIcJL;OBX=ehEX@=!Dm zxH%0E94ExHjI%Dx}wmX?1$vUDuNu!a!CUKCiagxIT-6@>2YP;1#6^wI?v#)nd+Q+{ zWRHCjefp?{c&7hxlUT0K&QiXD-s|8!^%s^7$@>eid*n|Ug6{P+ZE1cV@-3Wcm_ShLq6)|}|e+gp{?Pfi?&cL6pv_c)U-KHmop4m7^Yxc`AaB|smk z%=0K~mxQ}&55OBY85LtKy!nZQiE*W~vR^bYy`lJFHR#QP?H2Hb)-%ocB0 z!+i3gU;96_yZSfew*S@Eef+=UyYH^DmMi~e+m!waog+g$0vXb}hq?GPhTgNRv$w?a zK|UrD}mY`7B1 zu4Z_W`TbPO9OrHc!r$D;rWMGr8hnSMP4VR5#DLDWuLa%})a{BjBO7i0LjH#EzY}<% zU)wba&Dods31`Gx{xYUNbv}F7*p$BM$R`sl$x+3mKOi2Rf^Xt|#&SFDac+2@*D+?% zcWJ-tMrwDEPq`a^VJG7;|71i5W)lA)4$|d~=QwCT{ulTFJMnXwC1Y#o z<3Xc$a**+BO})@y!w`1e&~`rbsyRMFzg|aXygzRs`WJk7hes<1#v3WwXIOs%K9c{k zbMwJDV{mx>p)1N;`n}p8_RSW~+wSYF{03|Nb^JJ&w){7^E`3dXw~#;Q1`nkhgYOm1 z%r70f75^Fv&-8$g9_Tx?G0@VTifo5|eGVf=?hLlP5&HpSZeffO-g^o@v8b-pasz`( za-v&KLw|NWxXw4yUGJuyRp7MNrHZ*pKQ5y`?Wfn?YSnz|fzAWqf_#$7_fw8XDc|yM zZ?kz9=VqhBz@I$I`}-?CMGyOry08r|qn+Sn>Q*6-letqN=c-)x0A^up%D%VhDxZAt z0eDkxWgyll9tzLdNvt)8``Qco{|I~Y_^9f8|NopBmNN-U60(Od2?%5cuL}^8;F3vj z3E)PE`$7;~2h!FCPzs0)pzT0hI2w(Dl_0hz<5Fyi600R>Yopj+SFE<*%LHuiAZkIj zL<#vmUuQB(d++c2`(qww&N-j+S>NyX=e>U(L(YGSx?*Dt`!xD=6kQOyIDd4gQJjN* zUF$76`w2Lh315)~{AFElv^VjM^+$)sq*{N(4;k5|jsEGGz8CG$^XDj+s3Vi_vX0}I zLS1d6jI`W2M$eUu?azOsF7~Pcv~S&Nv?KF0O8y1c9J^2|btuPO3-gOU{J?7M;menG zPf~erMVaOcx-t1W=*?)#8u01LAtBxMX7nfStcc29 z+F$-guJR!uHp7-5=04^V9%HiTG5cS7#;xq(T+ac%L#zpKyRGARU(-X_0<>>~dp%*! z3>IAN;0lcPJWL+XZTP8NON}FyZ0;s*~g`MqV>L2R0ujKQ?qQc(|`k z`B1bjqM?Pfe}DhlXx=>ZLD!eDg>_Q?m-sql02?oIFZlR9b9fowAA_I2132_tt-N!Y zk=?+6hdx|)UMd^F4~hmJBPIzg?y*Ite&fQ zo<}nAkHa^mnK7x%9&(2n$O_o2u)UM(o^pGJ8E1=T1?0y`nTP4S{K7-5zxF2U5cXR1 z6?fDHx96Y_(6{oReHuFp@a5me`dvlNJ!03kg`GC6y3OdwYk`RnbV73wqr8WldDF?i zSPl)YWgjRcPnY-;Y$k_ZV+`^S6CWbDJOs|a!Mh-J_*g4_W3cA?;n982)i=Qpzu>IG zu;=hj`YwxaEnw2(%mEL%`dW#(Q=9sB74I{lF{|hw>*8;v?_uVK{p{>jN0HfCKhF2a zl8wcr9{K*bDgS-urxsfI0`FvN0MGo5fBnwRm9R5)(5`Gu=_&9bug%$B$o>>!pQ@z~ zkJ45gUQGY_%q_tp&R+a5^^635f(yYR#$zxZWC~QJEh+Q9m4`0GVUKTYP$#>9nfd7jsCpWNOWu3eW z!JBpQ{O@|szU#zB;GdQ7eUJBRgwwvpr#|T2RQNy1?z=Vq+zJQR8-U&UB!R<=x%HH$ZECiENyhH_y&Mdm-QYqMNGA z4Nsl9le|~JUk82@A>sVi9D6CbaZdH2b@(&xSS4M`3l^00ZX#09HkGk<)3OlgpR#qJXK-`oiTa4 zrwR6v=`_#Q5MU0Tg*~XIlC=^H6Im~tT^n>!d9d0pZC8#NGcuQPigVSmA*=0o#xG5fvdxl-S4E3~iR zyAEJPxf4F246y9P%XKj)h1XY^#!PAxt&zazG%i=Xfqf1`Jsd3Tlcrp&R*rS{{gXn?_< zr!hM;HlG}7(7wc6sQyjtf#Rv>Ul;6tlll$#LgLc>zuu2 z!Y_6g!7i9Ytju4}EuyI_9a)n1SknwM)e_FTqf$u2) zO(O%}qKrrm{G#?D!IPB_&0ubyfG*5%)*SyS=3xtS-2!a2toC-d0mHh3H zO~~KmEpfGaIX_nTa}qy+TmB0Epil2Y#&(fEVxx4-*cim4b|G7Q6(+w6u(`ZTG|d|k zzQu+I+V?VtT0;x@Sm*dk9M+KJb(Is0M93>|1QShocn|i zp7Q!k$0iKi!ebcEb&WvorM&z^``~%;^J%=9b)ybH<7NHvi)H<;;<@CRVt7Af#YVwb z(U0?IM}ZTo%S=sryRgACHz%zKUsq3uuVD`H;>h5KpeZ%UoL3cdCq)*Ro3{Ijr&wTm zyA>Cj$oF)^C*ldd!!aumD7!(jG=4?elb~6XFXO(_fr)9|0G{HAdV=_%t>rAIq(4n= zAlFgqj8${C`{;wuOiIq!>7&hzZ~eKT15V6Fc`Nn?{+IV+W6|}8aT|X57uX`Xmz*uV zg-7RUgOAg>hXyrhue%R^ns(clvL2#`%8w`=euw4kXa3dnPwSE0-%r7=VEy~7gTB)o zlaC)98bLgR(f&4dO25;)+>M<7KXp5z4afTTxjgVw@FbdgCw&snKbLDtOK($@bq!>( zpW_QA+|_)2%6!H6Y0XyR+vUQytT$>j4rT2OWJ7&x@@)`4)iXHY$e^kx$;?T+8awy? zTqCW=mEkWpO=PFXa>WxF*s7)f4agSFJZf#rpJP7JpO>#P>qGDtDqo15aejHAXEbuz zlc~nGrlF-J^gA+||9=B#fvd(K@6|VtnbF{<+zf0VpV4oh$FVfOn=b|HyP6)LBnw&M7pI+wh z5&6j>JIaqjdi40QvN5KE3%YWJbFz=3G)7QL}P^O4A%z)=qtjr|tRkn!zm95ci>oqAR04Zv+7-^R?+l0KKaelz%RC2dSnpO=J? zo6)PW#+OpxtW(y;we z+1i&f9T+l(HCGq%zG$hdNBXWGMxedG)Tb99e*KJ z)3x)kiI>9zCw!1ktMH8gUKG<<$2@(2ZbiCB!PVq9i%P3$D z=lY}lbWeJ1(LM1&t*m`3J_yoHi>^L951kM1rU)J?;f35*$vdpMWa{_nSKDh-$YBeA zOq^im<$<1qTBBQfn~0Zb*v#`n&iFE@3;aD$E4=?D{-XntM}UVGY+=KJ5z&6_2}y_M zlnOqG>7K0E1mXnzU(<&Z_>%8J2SILOzs>-^IxA4xC!06*^?iwLnXA@vD86cO+{^Mm zK;QZnDi&s>-vkErd?4>7_dia|i|%D}Sdwhax|_0v&}TiH3Vh)g&?KFn@J+tJnulG? zgT{0#@KDE3xS+mn>&GkMLy$dS-baFoi@LQh{ky;Uwb01>7{BIG>k6Ef407f&!(XfK z@XNl7`li6Q>^^_I{TTgw7=HX5+M7Z9qJ3XeZig$o?xkNpN^YVozjEp6{yzBeMr;R< z5?>*|v3BIY3i_8b-&cAAIO}3Qgi2*?jve%4Jh#Hf26M(O3Ko_g?PL z?eC8>js!lyGh8nGGL0$li|dVZ$2&ZY&S;vzxY*mb1%cD~z^Ul1+ULC0(sNH~Uu_rD zu1!1XyjvyxOF{+!XXJzLf;PUcx(v=$0qzt_vDfW(@=jjTKi^imqXTxz1Q{=9lSQ7Q zUh4NJaO%`^IK84XGkcx9zpYpHrZh6X*waR9@*qc-dr0fCiadMTTh=8x>l?X@GEr#y zY~&c>DztLj9G64;urF~|80Unse&6a^zGf`qNhOCgI{ZmxcM|>WbIV_J5d6nr@X!Je zJ>X#yc$nN8hQIHn@5kH&;5*!oye(TLI^imVM*VM~?K`1I?R-C#IfYgz)}^>sdW6Q) zoVv7rzoo8b#wQ=E$2lWv40T>7nyPY-tK10xQPy5%zQ#s+Ep^CdnoYS1$`sPCD9@X3 z?rnP6Z8Ti#4wU7v_m>|q>aS*>mF#_j{@oBC2l*5?^ACYVb}xA-S>r8qW>r zd*Gem zH@x>5^^+BwgWq_FZ*^X50s2aB8@4dr+xT>GAO7jIZX-3&ej49O-qilCXBPFdN7P3r zg>&!Rr&bNi`IP#CiE*&FtH+e5* zoH3GbSaWwbvd1?UsKu>n9svm?_e$Nxjo zJbZH8;8d2;b2;#(b?k(1^xPSEup7S$d|GtIv`t>Q_G9CX)?>6AtutG_#D>7f)U-g8 znUDJ8{kh&myMJ?WNrS1q|Az4n-!=ev3%*rbdKfz00&I!CbTL#{Hu^ae+s&AT;ud$JJ(67VPu^8P!SbZl}B*q#<7*j9(#NJr? zG_zNl{oe0p%@;MrH812#>g`kwx|*1R3o zS#|hT7vM9vsSiIM6#sA zpXbgYepzreGV%w?u$IbM$l7?t=R0e2N&od2^-k~qe}pyC{YBi%9+MbP`r*E9p58~+ zO))bYUi_->rED|vz)XA@6KgxMe_iR1v#!MGW+mF2NL|=LUNnsCXYOY0RHuPH)-txH z$uGj(8r~3cWj2T=X&zSat;z_lz0B=K_LNTMp$c5x$^Lp6+_D0b8iZTq`)JfR zE}hR>9b^Ap>4ugtjz-tU4gWx2jBT#xQ?7@-fgaIH;f`k~en{X$LC*AL^t*$R5 zPlHzze{tmUnXMauo8ILYwT@^1*W5^Ma@vfY?X-!_x>0r}C%;xd&#id-K5}CBq1*a` z_aWe~0Ql@%>25u`($yMf&ZK*Q2kH3$c}4o651FU(F!0YFRlXj1jeV~C$LLegOP7bt z`VQSATjMudBi`j<`l>xl&pIeG8K3!b;y}8H3*F(si5Y?Ju+Y&wMg0>$=cO#tCH=)n9F5bxF=vYO|kC1oo4T~b{z+Yj@a6zX` z_47ID#f#t#6c5+|&F`8a8lM@ttrou&>}0W_#$@q0Iv=EGcqlEGdB|hm)_NUdz3Lb{ zG{%ojqgZy?4scz00`{z9y};i+53<*?E_;we4CvRM)$w&x*%0*LO6UAzN5=3MGxjik z*qW~vWGT(#Fy`1<3;HEH?T@y^dF;K+-(KjaVmbwvDhm(MDBM)r0kuWjA=YHi6W{eA zs(bpd3c96ljxmoh)<*x){rE+X=DIiJ23YGCfC=E!>Br}kQ$NDk$p0H0R=K_I$8y88 z832CNZc#rRM1j);9DI-WX}nYY>i?J2Dl{77q=uLIRx+GyxZv*ORPfA8 z*&OzS_t6_`j3?+P{CyV2)y9J3eZ?8n)6HDH$TQ8yXlxVL_0NaexSe_=pM}wP45l9B zRbXj)>&Y?D4)ofue}LTK9uNU`?C!6r1KQJv&QbXN8`@C0?l~6&PZzJq)3ffD#{yrAcM;ELU=x?0mVEOZISTn^ z95TCfYT(Or2{|R9Z@7&<`80O$RXm#J(b1bxpY~*EU88hnQEU{%71P(aud8UtkyGrk z^3{t@f)^wAMPG>_o*NmfqTA_1f1IQ6&2Z$2@$5aad6@o}pX_bY_{6(O9x?}p$wM4J zJL@QWLGTpWPIBEF%&Yj#;3+zhq4fW|Sp0vrh1`j50G)$h`V9|#vW&cm_W@^}z~!^R zm~ct$UBUkre1A+c)46{f+vFj1;ugLu-aE~D&On%DnRyefFU(n^b7oF;J$BvHF~Ic3 z{yL<`kd4|3xKnQiUeUePSa-8Outwm!qkoQ6tgiMIc5X;Awl6F-RZp zru7tE)>s|cYQ1DDbSdz2&CsAu#vNi`bUk+c)V1`rv(lZ~%CnF7SvlUc4_zL=a*(*d z@oY1c=Hy?iwCob;T4@8mwb6ToI6=-8=Um3KZ)RMqrN0kZFa#XAp|9I%D`XjME!3?# zRi7IjNrC)2jp6n?{jl{%=I|o={vdPjZN`s~b*gm6G9vQdz-rL3;f|1w-fv=GnaCWy z$GnWri0965<_=gr$n)PgcrYUJG2gWe%A2Tn`erQe{-AHD>ut4rq_3F#w^{0MH~!|YX2dW=N_o2PR_y&QO8>J zJ$s;gE14JR*^crPZ<&eBEWkK-jLKfvj32e;@E*$VaTV98tq^0YqHpMs>o$MZS2I^~ zQfU$V`iRI!%+(dN`|r6Q*xTNdp3zG^vQcIi?EUIZ{(IpuqVz{_>V?lJ02Z}xNsbpy z@1Tse-k9aQKNR=>j>k`CeoGb4pnqY{XdiOt51dWLv$zzJuI8Qa-!i@9=^6X&PnBljA8K;No!WSzK> zg8rOxhpDFno~RZ*te04iRg`<1eRdZ=*~{hY@-1ENZ~ynaQ`_+P&YTZXU-(vg)~mb| zO+NKI;3m>6{`2!9`@bS5owJfW{qZYr!vAVaPXE!@L+6WYp`Qg@HBMxgMvX7V_|QAN z8-)K9jWsBn=okJG?aIONzvXg-zP)n|Im(nTLpJXUX!KRtMw;}i?ZC)XV9s-?(f)wO z1TBgpXK^lfon(puDc3C9$(XizN~fqV&FItgu9-5}4;!Uxt!01jgQqBfhV?y(e5Nb> zjrg2Ccnjw}Yi+`B-qAmAf+N-M?dN0rfFreY2ICSuY@&~KlvSBZwL?9Hz_OQTiU*XQ zl6EGmtm4bEfh%<4SvU26qy196jq26)Z0eBh)9D}I$OqzT_!a3(p+ij}=6VEe59WKF zfqjnZhtJNU?twh7O4O_Qp`ZEGCp~WzS|%M;fUDL7UeP}m_)YkdnGWp6b3T?(hy3CG zT?f1cdgbKA#a7t@UdS(JzkI`h*=FGD{||-(v|HH^!{_loc3HojyLcG>(BL8RrS|Qfs1r(5+XaL)B;Ehb0_uhR3}u8t3cfdzZ;K`d&KT+a8MN_9@`M;tX%*y6?{3rXJ$vXHxHO z^!e!j>wm!btmV_%$z4;7&hTJi*s}G_a`roeI*|$F`{SIc6{8Qpzb*KWes*D*_>$OV zM*Ac0LLU8%`3D$7l3jPQGZg05`+39UyMXsz7!4t*u|++gk`N7U*H{t0hIk9WdnR51qOtBdj@;lHjx#uc1g-T%GtrV^W>_>78X z&Q(vddH0tX_Z>G3X zk2|vgfAvG0&lD*bXq2r2U$q~K&KFRR(?`D1ULhay(^MaOxY{cON6+f7tDtU5X`-Gk z>ag5agZ9oCb767)#4x60Lbo(N*=w#qzSY`Uv>zQq3;=C+4>o%KTX}ZbA8U`{8%n?D zuwP$D*fHw3>iTQ01&rO1Inmc0L+NBJUwjss;BI7sRkU>g7@Pr2 zJ2C#7@o-!wP66IUYa|n^k51o^O)BWmzwhO9ps(7? z#b1kmKL-Cq+{XIjnK||cjLmC|sEb0Uu_HOTB}6N|@Q5Lvy&}2eA#|gxomVmAteqF# z@J`@Oe315vfOHVl5pw1&D>8sJjlw&d83r|Ti=DDd!5*JH$e;7OH*4unbbW;{qN7C z^#8IUY0ZBHoIoogo#@u2Kks1Oy!hMHvR0k!cUjJyXGZ1&XY>bs9r|X@ECPTl3jlK4#pP@Xbwp!#+UB6tD%2n#3IApAz{UbND25`LC{w zU9y#pH1hCSl1-Pq=+v>-orjJzJCY4vy7=b*xU$iIOAnaMyZlJ+6U1=1^BcOTb2N6W z9`5yR0NCFM-=O(cyPC&l2QM-eBk1_4h@Z@GU_7ofypO(0XPEnbTt8Pq`8xVmD|w{0 z2w#?r$YtatlKg6*J0L#D$&)2I<>A~L4>)01@w|7f(2{c6)Vm=6*(+zYLMOF`+Pz6r9!{?~DMmQ#Fy%TH6>trN3{zS-~> zc7$`a7Y1lkzL~A?G391@-A?*(FYpl4`htfo#Cny}m-nF$PA;LF-F7Bxy&JgcWS=F^ zN?idorn53Wo)-MRq2=|)=9*=qJu3&H^96=)hZioU4(%Z?;olL%AHUPpU9!KwUFNAq zbp^P}hvhiFF8w+e<@rp%^^`t!g4ek`yZMx7EyGM`fwM;;_ow^6AI0|17(&FL?Eg>Z zXKY;V6})NxGJ@cqYpo50;Su%(^q-;qvCk9CCu zH_++yNQ}Jhsy`_H0AB53YzLxAqWjYE4+VzhLndC}q9{5d_Kj#V=T-4+G4K<`*RhQ@ z#E)wJbuZX9NkM!LDAYp=x=W2*<_8k|BS>d>94oI{h_DfWQqr0p7)`J9q^B} z^!Ly?`0`NKf5HcMuRPiGD7=5dmmYt7d|uqpW0$`LT4@pw@>_DSd)_W?u-GRjUuyWo zlNEW$UG;4~t?zsq)mQ1UgpZj&uk2Y39c9n-?+jrpFQHx5G?RU9K+YA*kOynDw!+z) z7%%JT|0QD}2Lo_G?#5HbBRTX##%>tKa|St)4a4=^L>Kl@^p-(*OUY%H>woUYRuTJ* z70+1^Wc-SYvd}4u=kEljnU5Zu@#$W1R>nZ1r#uySW1S}AkEHU#Vds4Y@iC@%A~s^} zLp{NZz#;MpRKN$STqpIn5Km@+V*?$ZTb*vsI>9GO_}FJvF+K;N%=>2KQ-+U%PcKmStvtH)YH-pY^2$?jRO6IfC| z7V}*TdSm$et%V=B>6m5~uL9mj(4uxKbPl0ZjTw9505beaKoZ32wTzi!J2-@b% z)!A{H_`dGx<4QmCI0b)Y>K4u-JC(&{I!$Oy zn#qBU&tjJ7)1$<8WzRmx-t&a(kcFPgghw5~cy>=Tl+(IcJZs++qdxO&X*DOB6=o!}Emv-7DPO+Mpg7v#c zpF=!Z^TJ?tpk4J^WB-yHb{SJNcU6q<5ysp(Dp0lrSuc3Ac$A3OQDb%ocd@t+-NhwpaI90<~`4;+zxApLA& zQn6oH#<)?+6`?-9Odmb>uB!GipX#S%l~d(FgS_cpzWX_ABp8)mMYP&F%V_sl#Q(q- z1nGn1$q=w%4KaGg(`SuoK7EF_>#=f-S>QmAw~(^}=(F#1>KWUa+ls8S7WvQj!ce>D z+TeE0v(|=~I%JM`yw#Vi#sABnSvhl|f02#w#$0^W+u4t!#^T0Bbv3nRN@0 zL0^8|u&+brScd&pXJROJNU?P-jOl9p9j?v7w>OWR8Pg0$PCq)>^x;3#>Rn}a-{{ax z+5E9rBJaKey_8(Blreb6_vhBZ*EhuYwCBe1Ld032i$$kJtbO~Yx}wrw@s0Fo`ffmW z#Z;5IK7rh|l>Km}WL@OJkUOKHoHYr+`zVh@7i$!yKk^%%&F^92T@?2nWj!U!u%6C) z$sYIfPBKib>-uGf-H+yeN|{Y{#iaqpR)ekM=->+9Va9(0@?+ruW7ey@Z^ljyJ=&)8 zsD25~iC=AIAAEJ6VdD>&x|K4U*|VUl>y6j|`{jS)1JPfPm)OL0=y!?VOV=EeJg!Fk z*dpLTaBQ-N$!AtMZQK7OUT|7#=byE2c)KNE#jw{9vvAONXqX+vegj@@)j9KpW_W|_ zIJssRTxovj^UT~34U60QjB`-(NXSeS=YDF!+9TNP57V2`)=6)w{ef0 zFpT?as9QAnewE|7*4N_smz0xD6`7YKvyr#(?=+GtrWR6d18V)`j$ODC+}~_9j`J5 z)hS-H1(Avn;!i!~BoK{r{JHNCg#6RsWbBHQ6Vl)FOl2jX>|^)%3J zxHfGFzb)P%uH%JQ??JBZF{$s=b5kFojN+V{*Nh@3tQncVDSlRVGiONN$9!3qk&3>^ z_Iz>Y`@W^iAH2cz?ApY=b)J(C#(stKRIU0uA1p=3;N`jSS~}()WK!Yx2KI>S=A_sg zxh}sx#XgF>D&M(s{G7ILIS=^C0!K3=GijG|oj9`(djxG~Gxk1L`hnU}=*nHW&h@uE zKjzMhC_X^4{T<5{&z0rqqCN26>ZkMyzAx^4FhD;UvyH5XemE=A3=UoL#L1=?sYCh& z>ve3b;7Sm8LwS=(yEehA*9jk$S~zIy-8`$sFku9Ka>Fb|#16?}~BB4_)2 z?8AzY2~+0+?8M$ia{u0F&Kkr0$`!f$!7Jg}{GIyFsH^0ewZhnFRrnet zH}B`Y^c?cH3-aysqu9N;*SJ4WU+_Hm*FsR16Sju`Q;NyK09O?nA-Gxa@) zP1*Y=#)J+zI4ba97}?0RG&<+9Wktjt={wb{Z_#x* z-}-60O7?WVPjbFb`b=#$=|$Ls z{VDWmD1LF&ryR|5_-~o(kTE9J%|pi5d^-I;FU~uuUDZL`x$9i(;VqLEXs#tA==qju z#=DZO_ktr!49-37pG(1-`lWG@Z_ICf)37uVXiU{h;lzeucI3ASO)Z=x;uh%Aj)_}f99ZP%}CEdf_EdEVxp)7=DI z3pT3u_HAos{Wq^R-W^R}qsUx4i0vFgxvME79-@RRdZ(BnPSMW3Wk4X-h5#STHg zYOn!qwSX7(N8=L@5`xdsy>P_ADe$^#{~RCsIVS#8F8rz7 ztwlqSDbOFHk5Y_Og#8m9(BusD^4%TmX`&TPHxr}7KGJq9-#!lSf!wey3hz4?dE~+k zy-kvZ(2=FXk47|yy2|z=->@KMn)sarKaP(vTIq)kjP=OZ^kM3%r5sK~$SfI=D$(LO z6|H06?$^!#Ta3$616jcBI#7#@JZX*b?s0e*`PfUgipTt+FNMcz#uwr^F#Qwi@2kXr z3K;8qEv_5ryC^P?A9ZK%0_fAB$A^w0mq;c$>Mo6FFNx*iL-A(3ycfA;Gi#6me25R^ z`mW}`?+u=_|4~mQ22M=}ZUyH>z=~%mFn_6X16D2*{m>kAq8~tJUauIpXr5tDK@Nlu z=#hP}i+jbV3PzQ`S1^kY#;%ME<*o5Xq<@l*Kz&^4$~+)iSLB{kN-Tiru#=ai51vSE zS0RhTXTD?H>38-{$3OLz(YEXi$FZU4jL&hJ-z1}clG}XOz^~*}=6xCS7CqV5CjFf1 z5-lq3>1!(n#-xjn4P!6(52L=7@x<1}|4(Q9eM#u1g;!_bU%Wc$7(cmKWH@qLsJ{(g9G-+gKJI&$hxm>+a<1_n&;?zX$KH_CU!dH?GF^4^ub zZZq%O{D0Z7Nmq2e!YQr|!YQs1;Z)n`zieoV-@o-R*O<<<@Q{ZPAK5OG&a)1l)bay#$%I`EbHYYhy4f}He%Wj?y0@8$TuC0`rugKfh)H(X17N5Sc< zxzhiw#w(NT75p~@BYzuiv+h}~lq>$w+ISiNr5i&}jcjK`*0T2m(ZK+t?Xs)hQg)(A z_FQnb{fF=g^U>LY&;H2Hd#exBJyCu7QtxcPyLsWR`<})J3wpjHDQ^LEG|AYyaK=E- zjQQ}a$!2o$j2G_BU2uls<9sdu5YFn@PaSohRW_*{gbB*G0Ed2UB*!GgJ@g+mwhCttjw*Cy5&xOaD<2Ks! zkbREA8*Kx|k03XRUp!-JJTEr9MR6Ot<{suidLj7CZI`_z-BouKdD%+)ePy?bw-FQxE)s%FJM1_hXltK6=!@FH5c4tZ_{`R&%ap_AaqT72NDkcnf+?H>6fFGt_aTs=T8s_4%upNlO5 z&ZeO|8EiiH0sV>1LFOr7{Qt?h9OO5R%^|NPGMn>!XedqjFZ4|H?4=&%nt9x9Ok6{K z>c9H*-p`4LaU03O(eZnWIo5hrF|VJXT?JTjl6KM4Q#8nAd2R4w&3`?d6;qVnDZW zwwN4*H>kp&IEr3Gv1K)n60d^p$C3?}H7*(tZMhNrgg-NKE?nk@{^`Bop{u{{Eb1*s zKcoBx@N+e~KjF@cKsnmOob_A;eh5d{Kg%RL1f>h3UF~D4{~P$T6N71!HZ+&Yg*Cu; z^|F@ChjTTLlEL&IUN@Ea;d=DPHInnhJ7}N12K><67oYN9l$AddR_K5@|Zl>H)9I1BRP?-1;Nr`%nN(hHa#at zNJM&zI&duJN^dX~yZUc+g{do(y27*-qP}I=_Wx4DS_LK_Si>Bto>cnV_ZDrC*Tp!< z+4ane=121)_|h1+zG*b#V?M=!Px!pgk!7y|F8)crkxp#JeG7_8o%#G(02x01ts6ay z=C^>ef#P*?<~DUM9}~B?u^#JdrAuhNxMvDy$DNJc@icI-&#hbuE@-10+Bg8(I1t)6 z2--Nfm2b#thRyg3bV)yq+f1}piWww9+4{zpQ?TJ?_BCfmfEp>953^FFNb_>(ZM{*}8rrv} z#%FyIYG1xA*qwKxZ`*v@EhlDiC-bRzlfN=w<;g}pv351Yy014vsnD%_|GpoS-)X^$ zQt5I++H*#Zv+rPi<83I%L3ZREWDChK7P7$y-wZDKFa1Z~2^EJ)n0pR=VXrp&|W$RDhf?qeh3&kTBT@&oaPV|EI&FR?EYgNaP zJlh=m=7uwVc_PcHlQmq-f5*?~e~FowE@!9mFMV*PT?C(?y*fk;xAfXNpGkB`G;}>a zF5n4vVyonB>;YO!@%!rARp@IyYhCSYmJrLK^*J%n{u|}L|G)_+m#x8mqI?&Mjafz+ zeKQ6*?feZVn^pbYc`eenL1O~M1tz1_^qAvwF>__#@cL(* z*nKbbSF$I%i$igKvjrVV3%rQ@|NaWR9EDyv@A1>uo~8Gq10D2B^_Nj*G~>-Y(bx74 zFv_^M8b+yoH{*^{<}cU@1S7k-vOlaZY#HdxQN}5A^t{S4Uf_Up{4Q)Q;JcyF*ORwZ zw0_=+FCg=r(B=KR51-cGk;z7mv9E*=L`SpU_d=#}Q1}bXj`N}|Vf?*`D`1{|U8mU{ zzLtgih&A~bS@tAyXHlWCv;ckVi}%H8<4(p1+^si^(eZpHfvNU1`lt1GQO|>vn@U}Q zX9o1p-?l_q#S$Z$nt>`LAXMmyF%QSC)XyxC)6;akuFU9iXrLv+BezsJ#i`bK@^h zHvNNrWCZ@8qj}%s8acCNCW=?XDJz-Ha?$gu*9JaVe&W!uyWJNk&D{9c$ZJD%X z(kH>=!{{0Jymbz+neI=gZtY3s?!3Ar=;L2rE2B(yWI65CLYKjjqtUpK z=O@sazE51yZ|`7E$t`1iKFI#+zLQP&0>{#gm#}w>-zw~%pIXL|u)}mHrnBl?`yZ6= zdtI`Hhy62&{WF>Ua|rwAQ1;JZt;QZF&W6;K16upW7(Mr*V_yXf6&hK#?62BeyB_Xs ziZY)jICPSG=Y1%fJa$%O@9U;L$uxRC-D2ANrMQ>>#l*ru~n3rv2Y;#pb3* z_Mf~^v<=y;8N0#QjmR~hnzL$G$Il9B z!G8W%-fLgJYG8KBiv!QXr5V3);(Y~gH`Cw9X6Dlm-;B%wd~RFC{J4-+&f>XMlQ}zx zef>ovP+}2d=UFig|AnlHo)zx)*m&$6lHspC%@$m)JN$l%`1;B4^tx~P>irax9LX9> zAO6SaKREl=X!{vHo;%UC)lM~fe#Jb&50_m9ja`J^@_FqKC4ru^;kRl>)9%+LQ=*gN zeN~@UCi*mvSo5CplJ^W(I2|U$VLAk5|%P z#kK~RrOsgf-@jc6a^S(QoF)+-q|)h%L;A|CR31I~Se-oNOIOf8c|r*9A+V7xjKKGs#E1 z*Ywo2xzn)?!;d)e`H~^NIoj9u%{1x$0zJvH;UJf2j&lY3#MozY-Ge=&nR-8zevEIL zDeGs>JFy$Ee-*3zmGE5pM*7m({I|G%3I4+er3G|v8SS62CRNygwRTl&4CR8!LSE|W z!e7zQev_SIyYMHt1$~BK<5u~{BWp=-lJHYl@dojXw7;2ox|{k#>|Kj0$o+mw`1wJ0lzlggF-!&K1FS8{UL2p8T=uYJ{0#DF zFU%gRZ)2G$4(@%u*R-vpmzK4-i>5ex=Ew<-Y$Q$k@@?`fzP*?Hj4nH~ zpt-v3rtH~=83R5GcGcPwO&LZ;vi`^Yq{u&xjr#!l0xP-$e?KePT4BxhW(>i;f}ZK@ zP1nV4LPyZg;|!y3&i}20>^JVk@9T-mo)de?p#i-)yw_uAz>DV5=X~^KALF}l1Ru-e zTa4Bhk#9K9IuayqpoKGDF|CbMp{B@T#_7dBX9w{Jx zLA=f}d=sje|L}t1(%r0YCNTdI@>&!k$8>eP(6<9CRKT zKIM_uit&w2kG#YfH!;Q|-~>Jm2lf(k=IE5*+g4G(0d95yD}Va~G7h++y~&SWX%2jw zmAZC=*GQ>1&T7gP@77FRI?pAEZ$1-_p*IP_^J!gL+~HjB3grC9rZ1~y?kv+xEh7g? z5kJ*?m_Cj+N3idYh@c-V`zdrr&n5eGO$oJ&_gTF-R4qPhZbO`>ik@M#OFs*)k|%eN zZ31h8ole%@k+Ey0+VJpO3qL*6{si0wCOPvv$^JfdC*X4|-yDXI51zrgkW)HJ-)g4> zddg{|R?j3i@@xuncvceA?RwPK`BY6`AORs9SxAPQ>@A3mr4K z#Jsk9FYNb^;X8e!Go=#ccJ6WFI}aM~46 zD(4|@xcm{w6&%@dK4=Zz}QJ zBa%krpX(w|=w|N46X)N4vgyYD?~q}(7G99)Hi_^s!ecbec|VmoNqs+Px}7ve7|NYI&10}KpnR;4j=G$$GBo58(B$h0l73 z_oeJzKYNOzp=D=u^#)fW5Vp$wUSzLdNl%q4p2iqkKDy8g{sn>JG5J zSMDs@Re)@xc7x!Z%B!!7*gJN+GG>+!G}^`gs(**rR}1MIv7hO$u_x)fo4_0O!|B6b z;sfYI2H#}&_oIL|oOm60heRyV>^~sSN?r&|wm(@%UR%+hpNz9V;(rnA4V~In1Rn)I zTo+<)3IlO{on*qz{#)b|OAU%TByj%j$>dTVHUnqf{~*5batTjxQnU1*er@xvd8 z9BPfnzZremTH^BN>q=aJa{qW(KWhT*&_G<0-7LwC;+^&GD&A$nzi&Vv zuYE`PLZnN5gnM-Gw)*nNCVb*~r#W~M82CTZDWW@^2@MI;cgr-AH8$C_*-O?NwHbC{ z!K&&fesr>_iaFGL=)3e6Lb-xD;bqCcR*QR&U2Hqg zd&k!g=W*|&jUsf= z^SPHkEQ(BcRe;=}=*x~-%?nqN^I7ypv9bl=`TfjwCGW|LX+HvdqF0_AWli?77KO&@ z>Q3>o*tes|39m4Q7`}1)d2iukRWQG(JBp0Rhx94*Bed+Cj&}M7% zXdC_tpJ{9*ypN7S#sKdP_`Dy{el~lK+J7xAB~`NNTzKxN;*!Cqy{vzsaZmLx=|_w{ zM8T^z-p4rCV?XarXt%YZbYr3~e*vx@0(Xp5V`+3|pyvVl_JHm^jNx+njeOCd`?GmJ zoA0^*neOxH*VTcZH5y}o-IAF-V@o$8Go==!8a**!a5rPi{%&mVScPM3#)K`4vGHEA z@dnl*U^G`3@=P*t>ch-AFkwA6++OJ#wa_OSeN~!`4T8PQ(epg>`-0cem5XNX#%~MypRVsNeeh({Lg3Uo&8WWsyzQG&gx<;P(2FzK zBUFAG<9`u*m+ZXXFn-O?H){srZ<-nDD~Inwm#L04IeeAol+v8X@x5VlIjRa90r zWB(T9HZ$;G!BDH=Amz`XPVyw%D57l5q3o*zfJ<`Oy}QFb;sDO5jx3=v)*A12m66}t zQ1q+JfiuUCJaVGx$mLhk4{}_iPgM@3KYn1OpD!Nk)>oh>-}(B0fA75Y+P7!3M|3_| zCvcvKM;PmCJ~? z-9Cc;IJyOMgyZWX+uTR}xUc!gcGvyF0`^2?uqgJhSXz2R#z4U^F;a{#;rr|Gk*DOy z743vxZnX|gwxNUX6dGggy;}@>-H~2MgeTuzzp6W~Yo95Pq)!>t49K+1qCBK0vyhGyq zn;t*ev;(|sxqNl?e!jnjcJK|)4T2}uW2N?f_&Q(VVCphk$AYKxcs}nP^j5%u>OY1p zEQ|VA18XOVYd-6Be9upb^%H%bM4ta3bJxkbNOpYtBH=MS5iloMdV+iL`Ze^u@keF$ zQFNtkQzzKFx$b`XG}}2R?)*}FHfu8%ne`LkYA)*wZ&OwU3_cGo$PY~S4ord%f8KPW zX)Zn#6|}h;Tf*;m0@L(i1Ue)7_-!2BsWEg#_@5OKw@_>;zRHYzNG`Q&ptq~gTPv@; zY-Qvgt|1|gzuQ@#On7F|f61;zTo(25EAPY=si_4Tp##}6alaGiypft4O;AMrwdY7I2hN`dEL z&%u`2ofKhPb4*A&c%4hot8;qQ}mj|+Ju zD>8C@FZz6Fl`E?ui*X_yu!5@35HM50$o?(8mhdk{rzE?j5 z>wm=_rf(|vHijNR`(J|R984eo!5W2tB@F!yD*L!-JNx6NNyeeVZ~AJE4(E)oue_yg zoU^Aj{X}@HI;N4&9onsSJoxYHUb1i@eVJnR>oLf!Q30$hHbV~{U4xDrnJYBKNQKU# zqrgrK?YoP;iuUX_&MTUXUQG2FpPH9{LwTKlkWU_`qtvbW?OSP)^bV?i}^Pa~JQUi~+6VbUSCR_ey@H z%y!CP@P%H%697|3pn;r`eJBVnE=eBIAm0kvBvlXVH**jEvo7|euq!jUxw5puyz$kI zKWC2QU!CpFNtVyI=K3w3EgEIm;$04pukh)6!C(4NaDg$u%JY59q5KXK^L>Q-(R|l} zFX4X56bc{jKFc0`ZLnK)O2#g3j*ltP|9w2y_!IEWSZ5+TVz)lcwq_Zr<_dH6O2(-1 zt$fl|&z|YTKCN<%Xt<5GpmSxa`w8`zyeNuQapNCwD$U0amUvtF#VYR^zOm?1U93BC zxRDtT^fv7n7uT0;x;d}Dka_b!JJyW?o@vvEO{WezSl8~eee&I#F=f{b9r1McbhdHomQgh~uxh7(6Eypk6kKEzmXXN%*y>pY_KFHK8ZS@Xx0{-#|Zc2Udi6 z-ZsHZYM4R1M;*G{-(d0#Gr6JedyiI6Fq;>`yBv6i z{?(n`@W}$&KEVG=Ji9jBJ9Nm*8H{NN&b*hgPm%9wzL7f9vnzL#$rv&>wnV!{ z?^@6+NmrDB1=p3}%l*Ag&+%MqF&$c(gim+_bMS*9p|l?@2yWkl?y?q`cn*1Yk8RdJ z036Tb{!jFG-5{gv`LZE-&+Rl)?{gVt;x(QJej8oG8l>a+C-TjoJa6XiK~GEnYqnDE zAUfFR+C6zkh8p&B14mB$g4`==UuX1r>wy#W)#G+Dj{ewe^~)0sI<_2QHj1S)Lr>jc zbkQS88aon zTJ7U(?OW!6>B*mh_jiN$Gt3dm+G7;&G;QGYWa+5Xr)@u{zS_KcYXJV&%tNPW67%J; zI&+IwS$U$_b2{iFaFTe29;SZXuKyX^t#xtuvQocY)&UPcz$mfc1F?xOlkL zc&@$odihK;z81!F9G-EdWODHOR=(+WXiSFx2L98AKa0Ijxpvc$ZM5g_?XMqS1pfre zVCO4VU9qqGw)xQ)#N+k6{?mmk{qfnfzt#9#vE9WwT8y8);-GQOWT!s|?>Q+S8|VF8 z@~bPi%mJRA%14T?D5Wj&gVH^p$A6EJ?$ATxC=OabA7z&V0}gL}sd(!V{wXhnH{jpg zI09cD$-v|a_8%{-y9RmotWh&w#_1o;ATG9C(zEhY!+}3>T8)MinL$jmsP3mJUvO@q|&xaS#oN3H^lUWCzNnZUS z{l|A>GV9ElTFA610mrY@AXZ#FrFdGafY@fksuNxt1$>H^cmxCMQ&gG*6pQppck9LtxaD+54bK^Fu&Bt z9w6ILL2A|4((6 zZY}JbU{430z}#Or*_`5 zu6h=}?q2-SEATBXoVTv}Z1s1N%hvmfEAFnI&U?uou?OIpR}7f#ot|Isp{(?5YmaVv z5L$_ETk}^*Ux%u1$G@vB?R0xTGQ^w4-POCP1HY~H^4k*6wSSDUbpHgGy&rqpe(@Pj zo}GKn-H$x_*(Ag9%Z)uitUvQ+UHRh1)xhay`kYKFR3|bFSDw^|Nc{ z>S{0jl<$7w+;wsJ^x5Ig7~st!VeDOhMIUw&{nq(A96k0s#^+h~AF%Z(PACy0q`5_I zCI;7$o3|ETbGj`VSFo&k#P_>(ATS*w4?z@}XfbrIv3dkJn;!WEJ|2>PrMuSsCh1vN z8|{4+@Vc3-&1=|-g3ImzudK+Y;1#htjsH>S*e9I$X9L|*2ejQeqa#_m_sZ6h^!G0} zpKO}TcMeTBg0Amw(SrZ|d>oBIG*~<${oC4j*Xhogy|vKjfXCRDgZx@fydS!onsQ>m zWK&XJG<-ts+p_|t#q7Br^mUcM`KR|n%aBirZJkMu%-mcv*NGd}cQNuUPj}<%f$u}9 zneC6U7Cr7M{#W~ z4$I6*l1!FM9}4@+V%PSsGUShz87ZTzVuK_jZ5q$H>cGj`1$Pp!Xe_M7U*n9&PdIf+ z9FWYG})H9i=}I%fDs0uy&K-+gNaqp!|J zU!8-#Iv4#?9{TE$;9x%IJ(!XBo`BDh_|EiD^>fS>{qnDX2ELl?vIDB~+;R3vc!dw3 z<&C39*jebu^7xtjQu(Fu8_sVizajjR_(?Z7j305pX<_%MiJ!0+5tCj241UP7-GQD( zBaChH@sp4pK)M28rsg`}lh~Mg#UGz=cr$Pw`t&Mub^IK+@3=dUy!$!$JEx;#%*UTK z1l}e`_6{EGJ2Y*8@1G?DeV`9#MB`I(A3y_YS_;=kXEmi4B8%6ZM_+?`_6^?-yxyFYS9wBV`@@ zr_YnrAbn?#)3+@D@pGp63QX_r0C**PADWL@D*rEK@c&otm>}nWtR;qO9lq_VC-L2R z;Go+762F#a`iI==uc9v1IfZvs!YQ5!|0e1le2qePbbp5K(OE^$jNkipj~*;Kf%D+u z-N-Z16XgtzM*T0FQeozRLRU zcYJf?@*5pp@Ug3JXzg(H!Pm6Dhn?}hxhI<(UdlSlz6ZXgK=SoFe)^Fa*{~+QpY|>v z2wo2YuLpzI7I>Z5TjTafoiCQPIv)GZnO0kO|L!b%3H2Pm-(^=8h+m2OD@q66jje_K zV6t<54D{SUUXV=)9sV}?rdE6p-+KN_hcX?SQ{*-pJou8l$#_WmHfs(s9LQp6ft(AL zwLp^{zF=)UAEDN)od1$fiVouw#DC=@+)i$kE9qBT+64O!=4R34i_bf9`Ha@jUy+UC!q(BRN(LL% zedKZz-c9Gym=W>H;!jso_Ik!H8?1DuGg<#2Hm(q3o6B!BbT*Mc2l*!5dg>CNX*fLY zWW$^{Y8`WXhT%!Bc=&=|*MLC#&}T36C2hUbSCCyh>T=}xKbymoFE@rH@1*RoI|J=o z&0)#^G*goIa&KnO9W^@p=27Cq^^Lw&9V!QJcc#hD#ZUPgPo8q_*8{Yfk{xJI1@6wi zx!m4&=z?B78#J=QXJpSCwa<59@9^5U#fhE zT=s^)LreaS4(HR^_?am;%NoY5Ju@`kK1N*L(M9OJ>Wp@L``Z6G(`Y|5#_0L-9HadJ z^!f{E^5@XsLfUhu{9x2)c}DyG5%|3(8|~AI=8Zb&<~%#&C!_v>f6Gt6(UWtgw;uSN zWccsqxyazWb?k2jJ}-s(!QV?Somi_Tc=EU{-5q&joni`zH^YWzndyEva~A(UIVp%= zTVjp$y>r&b^_-7*+Yso>Q0U7r=*w{UhLrDkcYNTl13rGC_z&PQ1Ku#W>~@DQd;@xl z9kzWg_XEJc3i1>PUIOSRRs}-UuOr*dy8#(%8t0n~*t&2TJWXtPrEh=oG~WVnWk%WQ z;yvCmO2^s*;DO+04_a&U>~fFd!Pjlr%$(F}o_~;PKf!-!_xgD)^0nbilPdDfQJ-X_ zOzPPEk4*b&aOwEy3AT6(d{G^Lme<(Rp8`kvt~Pxi&|mo;s;`RA^U{v=N00NqoAr2` z_p+VJcagTX&MQS05M7@hs{Rday$o-j&UuQlrz?Hd3Qu0nwOO+#uOy!+eiqUZFqVVH zQ+f6x`l@~<`tu34!)th#y(bT!=6JuJgqL;vAfdy~c%Wy>hcpx)m2$UH2M;9Q<{H`K zs_K@PdOvnMe6VQu2Yj=fnD>?NQGQ@Seg2F-KS=+MTz*CWUUPYC@AW!g<1*Iv(*H}@ zyT?aWT@C-|%p`DTh5)&T1k8ks$xH%rNg#vJOcKCcP)dke(KZv*J~Ihw5wwJhNdRp^ z&}M5CCA5I{l0>m-m71|ygS36PSPi1IwYCP(HX&X>R1yX9e%G1A^7QHZ{yx7y=5x-R zv(MgZuf6u#>$cZ!y>!>&R`ylnKakks{@Ks4?g4M3<_pP^l5GPke0iqxOb+I?I6q35!x}em=yP-j{FQZ|hx{r5^g^eB z4+_r=PO4`mL#|;#>srAR}4>2VBa3t6TM?hVk4je)&d;efQ_P zRL}Rrc{WP*Jgv9>=|wY!uu;pLtlAyo%TAg}tU{ErMK||X`b)LaBaCTfd9<>z_El81 z(D#tc`8l}t-pxKdcz4Yztu$>lF-M(P^YP2XU|%p+W;I8jSTI1|K9B4Rg@=?T$68i} zja#x#`VJ5Aw4m?RLTk`XyJoml5FE(!WMU)g@62kR3SAiGMNI`Pd#*9HU7tTAO)vu*OM z<_MR!HDju`)g4Z38^7J`&8p>B!``bs{KnM^4QL+m-we$g@)yom8Ne&;;XSQtdsQH2izVo5;_?9r|l0tnwaVFGPo6)&k#_2Ws z=RY-~s+PLU{(Ul-H3GaF^h@kbu`64epF6o=;E$t_e|h(P@+b(+vv1i=Y#a3MT^Gjw z>;FOj)3wt5(7j1t-wRh?5u+BM{vP-gHb!VJOquq?1v69(JnJ0qPv(d0Qu^XeB{$t= z4L+GEJ|xY365K8(PT4t$btHd*r}vr#9{5$Q5SLj zG3CVZ34K_cA^P}<;AMBZI!`}*=z6|oT5vLBCTFC*$@r%94AH=mA-V)#mbV&9ga)LZ z)s(4*M*jxw{DJ#D{}?L&UZ{K;<)!Sy%&mJUcbsy2DJM9!;ZK(}`Xn(te&(nxWtuW& zr?@bQb89yuuTXyhK2LRon#;Pk{5Kiu*Ze>J-3)b(>+0hkg{|#OlRHvk8@l#YM5~v$ z?o67YzRetdIWH<^Po-`bgLD*)#ut!xZ2<7kwV? z>wbLKn(&^r_RhbUp{gkFsh*({1sCa&>I?dM{B*oJ#vEQCnBo#5bQ>UkL)tmXTJNz>FJ`r`t(X}mWc^_aNXLwi%9?;jGEae;Aq z6In19K3u@KUB^}U-{X`KUE?vXN!WF}bG!qO$g_NM<8r-tm3Lrxy^{4w)}LRp?_KC* z1~`3|`%Cb!XSj0yTBhLr!&Kstcs~Ze;YU_`8~#I8rjO~fLlgB6=5;iYA6vi`F+EqJGHD;^bC*)MBKLCUP= z2YL5LJ;L!I??l$WE2>q}E*j(&i48djVvlH+7 zbnPwu&*)|S?X}M;AWKE|8qpu3hrgD3I2qaPbAN&IbS!pltbq0 zkr7olQRX+ualZFPRNcURFLoNir{umb(~Z8ZtY@D4E!hJ91=@l4G-{7WnK~)7hP}?E zCNg%{@NL@0mge4K@DOouNBw=aWd=S)KfL3!ITE)cafK7wZh-cV|2R%nN3k~y*%RA; z(ErtSp5*I8`PpuOE>e&;>##rCB11ZVD`jLawHEHZxO-Fbg_ntIBMwgOL+5RJGUS^V z-raBvd78ER^iLluDZDE`czEjGyX}m%om}aRQ&kUqtra_IFZ}K_{O+zjJIRsLxqP&9 zcZs9sXCWk+td_fxUt)&KUzPS~Ne1s4@V!QOYf65xVb9&u`0xLX zwW>g_$Y2JspMLZzS@-Tbpa)m}&{`EZV6Ccn!&-I6F>BSzKUu3PKhcACp4Wrp%13!T zj6(@OGj0L=2wrM_J6O6Iy=gQ0Q?0$)C33l+GSX)b{xg01vW^PB^c@>f)pJqk4ZpD^ z6+I!@{pUMdn+@nWzh62Xsckl--B5bt(<85!IJ-GMNw8gJ|+OqAVPqDC% z@sHF8w3gkYofG`id=CBMO^ksRIK9sdX3dAU)Z`))!uPws!8HPzI8Q5u$98GjOjQkS ze2ccOrTrVYE(6vrcCBd{_czeKh72J*xtqL*ey5fd$oB?CXLuW2+L`k?ysOA3x9D80 zbPs$l<-uzqA!UAQ(|;&DGlK6U^@@>u4^ zP+QV3S;uA1Pt8+|9pk?Szg*zXwC3^jb2c(`FZS0gTTDX@vYzz0JdwD!5nj)m;PWRV zw5HM2<&?9lWjt9=iN|Pk?U|=4xEAHkRnpHwojqQBOUzrNQJYOJvicq8C_i{%kPW`b zX1fOGT+j6@{LQ6KRJ zyV1L_uboMGYcw{wWViL(W0!@`HWJxlZ?7tx6j4ll2cikNvtW7JpKw9qE7j*^yaTVIQ$yeCIdo)JmoekrZq$xY3HrE(SmyeR(B+Hp zqjGGG5=;Afo@w97ibGCZgTBA}+~7VBc0kD^C}T7Uex3a(xlF+GYQBeuwQZ95^3Y(W zoO7@%5B^VH>U%2IWWR#nSLECcF9!Cy$Z>-p~_USKKrCEP!F**B-;8~F2Lp8F_MK$$}B zd+}jx#g15irMtO^`pckCVj6?#w$A0*dV{&w@z2QWvc`-237;-qi%xn78NPKK`T)=V zeJ=f{d314fXx@pxLh8cKk|p&Wpg#E78SRWq6+^S8tUKJ+L}E+HUzme#JQ=`JR%+9+~GS z$oa`ygnlqtEjYq@ntvO*!EGLBW7X-@lBzz+>BP6V_!aQ07QTYsAnW{o*7IKKva_aE zBY(KigQ{7das+=h_m@a+&#hBfACXfGXH5w>Ni<@2B?gc~{Ky~CS8B80H|K0@+wIKz zpE{?jtLT^TTsh}UWSHN9mn|=)tG~i?L{}A^@PQtrtmt!s2jSzNRpbYAFZ+gdv};R2w)!pQe#pLf+dTC5jboRc zrkvze4A73B{Nz$h}E$a(^&^i6+iQ%MRkoS$#xnZPFV z#6m3D*EoACoqe8liBjGVz8mPvEtD5ILdwf`vKC2s`rE!GE#53IZOhnHQ~sNjm-eN+ z)Fp7QPGEmNG=Wag<@)K>YIytvx9DW;M#^**&OTxBtNLlng_!U<>gO(M=Dnzq?<9GIqka18*@6@ zBMx66&L&3MsDl@C#-4efmVqUXHSrT*7>u)+IX@4>pUU773*ZsueCGylR&Y^ZI)FhCh_g38;|ue zE@=VIKk#aqvS-)OwVA{+$i7M9c_NjAI^XBa=DHzTsJ}0*S?ED(n9iA(hnEBi)Nt)vfSjKv+NMpRkw z83;`r!$vhuXd)wb)hYhl;VW)*#G=|MkwvzHiL=me#fR=9AEfB9vuuYGSKMbL{a$Qa zKVRSyUXo9r(r8C`puRCWN$Nh$I_kf%&>TzujW$okB>aH%!Ap7JF;8)oZ!E+Szeia! z9x9tS#m`5dZ2^vo%D`F|x_NRJ*eTx25wK>)EC08Hc-)!L=Fz7;TgeS0Z zojhe#r)GtzB;wuZViAXF+c`~+UzQb1;jH6Gd@rTOX&dKE*=P0d| zv;0h&S}FL|wY7kqY(7Z8C-O9Mn1CBxJz5O@L-`~$Q z=k|EU?lWSS|H4n;kbb?-nmQHVu^Iag41V$|%Cma*Dm%fqi+u$Xx#qHu`LEbg{P}ox7mH3T6+YBv3hZT&s$l8U_!<>zdq+Z%3H@UlqIB)ktuf&QUE#nLg z?~G;ZZm4}Mk-Rkfq`%m-8eLh|5bt!>l&~khG0&T7@=jCMAHwhN=o5$4n79!f%DUAn zd%nSm;8NmBPV)ObI5T-kLbU3C_`-IXCnldE2Wrb`&GQ1W(Go8uyy6$omc+x#y21G3 zUzv-%9`D}6cXjv`M33D+Fc^Or8ta}jIHw%i|0nk^@$C0py*%4PpHFiC0?&lr%rS#s zA57FTf5h`&@;rxFZOK!|xkM&EJP7VJX|HpFdV{tyDR(Wu06!_y39fe|Us9$^+ZL(* zK$%_CQ_lOE`2IQnjelX7?(PFGpTl$Zy_%?I!)uOz7u&tG!?+F8o8ao{60ge!uH1Tz z!^N1(d>6ds@l0^Hd8E0I(TtA~niCw~2Tzx8hv$0?W4j6ZUOQCQOFte%W|VOhyV=V8 ztHwe@nE~i`&c^tp81l}Ub1ubV<^|fS+Zu|4$cUWJSw|mBU(Uyl8eh4Bdl!Bxp}RH2 z9={UQn%>}E=uZ03I$~EM^4sjdW#fHl=zbyN>l8fsr>YI$>3Z6T2sY-DIbXftIfeU^`0!s8UJAZqnDc@w`7UN-Op=V5*ul;-?!$9lc&zw) zu{BqM>(Z;i^(ISvama5QkL;G<{ySrlK%Zr7O`d|yCWZDwb42EZ?jA)MX>)jNobVRG zt>Be)X11II9e}ot>5nDug0IArE3*Y!rk{z^z;Ch^UnzcLDOb=xd$ zQ#b9ax!3^@TS(#zO!?do<8C5&d!M+WLkc;FdSzV@-ppEzZ!tynglSE`MRxYSGMMQF zo_NN9ckSAiaVng#{d+&Uos9MKE~WGT9sWzKn!qgZN*@H~^Te9ruO8Z;6YtKW|8G#1 z`9%D!^bT2;i2bPhp;K(uU3`ZUtFKt`a^OKn!JeI+ONH4+HYiUWmnTbB11O! zlT%bb^Gw#XTJ+KGU&CiE4q^icBR)Kg_06K*pJY)Vz`rG4b|rL%O=wjub_kI*#r_~R zk1KdC|JC#8)7XbZZk6>h#V2Q{aIWLD3*Ley9fjv&dRA#Z)I8)w>j1l{z zyaBNje}{Hu|91m4*TlSN!A6>##oCU}>XmjArl<|Hy9Ag`JI9tu>gS9>CpfGFpPz$2 zQx;E4Rky~Ov6_r`Y}*WIN3NfeD@S6HHEbo_l$9~a20pQmP#?CIWb&j~)ZCldYk&<# zV3U|d&DuXl^rWZZ#|I@x5OUUT?ED9#xJL#r=DxGY8wBpARDo@hrjAjs#C{Y;G0(_J z&0ZNfm(Dx~P3RCJ+Sfu(=U2dU5q3YbUXh=fceK^^1ollQIAWfi(HbYKn;1)h;a19u zZOpVec4eFJR^bomMmCT!KLAbj2#pK=sM{Pb!>tPWzL7ltpDihAy|`ZDsF${0D*I+@ z3$fJyuQSNd_q&pbg%_Rd>PPbi>cI)}T$|_^foLrl_$orJLH@1WENi%K>QEWF(NL`? zcNn?sAKUni)-|=s{T28aM2GUPOO6tqBNsc{X4d2T!|^9k-}B7-Cd-v7i*<6}L+Q%D z*`?y)x#;NQ^i=F( z8}<}^?EXu&{YN~(J9s}brwi@vH8`Lx9v*I;vv zR1#-$h%s&Dzsq)wC&0bfd5nP(ss@n_4}xl*puF#}hfD031mCql>X}NkNdwSyf4E>QE z^4%BMWLwQ=M&E3n-M}-+nNy42Eb%}$a^{cNo#4@DScTvfiSA{@TrcH$;LaDCMfXbk zV8MVJISTrFo_t`fqF+FRjaq4jYNVXRp+7{Og0o)WdxCGsU*1=Q|IV$Wdq;qCa4Ylb zLvT_tYvF+C;rOYtB!__LEqN4>Sb))Pg^<5f`0b${vPU$gMRRRcCG$H zni=me{zP&Q^_^zEw%i%lY%o^(z%?Gr#cMn{r6C_jSqpSPyTm$~?L5y_Y@4z#D4urY zJ2~eyo<2&>5qMZvA#M4vlN#(JOtJax@7^qNSsHm{`)AAZRMrRCFCsp7c@Es#`%E|TgYbaK;Ix{3hdQ?F=FmB_ zF?I0D0RApFJ}ei0tu}mDvNtCzvS?kc=t$hlTozg~b12_o4YpA)beC!3F=m2F1D>fo zD*zT7_El+1d|uK=nd`DX+VE+~m`eL8%thgmpK%Ue|1V_?%x@j}9Q674juMGiD$EX= zFt~1dyrh0^$K7F(h3j&m?HJndOI_9I>axC1o}r{2X=5ZXm}d0oX{VDzKOA-47 z?~VKO2K?+>Z@PsXHkPpb9_`Ya= z1UjpREEKk?{swq^IJlvFPPi9&gd7>zhb!Uvk~1Sfna_-DG)OPM$s7LbpiLdbQ$Qk5i zhc;epUBx_*T$nNz;v-1Nt}T&#XQD^0!{_=1&yPPGp|F`Xt{xH1c|%$kV{?{hywaA6 zwf%n9Z5zD6b%!45o?uy4IL_vFVM}vQI+Q4Uv`|m9PkzF?j&-y2(3>OFTgVi(=z3|o zoY|i2-c4?WBpYW7V3$V+YP*?nSYh(E=r$*CcR!Rj@EhW#WS)snBH=0KKK)=k&S)8O1H^3y7iFF&s=YU`YJDe$K((6RT5ik z(&UL~Gw<&>a-giWd(~fPUyBym1-~JCSKqC^xc$pEasY~d>6=#dP7(2~7H3dk7<&`v z27z1%S)+f2{<^CA24~Q9KlX+LVf|^?an?ORT?dT*irLO!V6HRh{|4_J z)b%3QG0=q7>Zv}=^FQ$Z*Un&azSWZro*6$=&)EaKPFV+T$xwqMy$U)|4ede~e`wkN z(1rNtgik*_MZE++*hyY`Vo@3szRFPK|7!OX$E%y!SGGQXw)ztM|AOy?C)b19ZP+CY zMXcRY&Kbi7#F{yF>v})-rBFQLByut1^~48{B&f)>dO5-E}d_wX4?R zsbz1XV}`q-@_t{CeTrG4$GCN^N^Dayw?@#9Q``&wtlSGtlv3x97_Yi%zF_@KAGY;` zHYawP3C!=|XEoqSbZMC{0p?35u*llA`w?%|9+5YV87h+UE!(|SyC2c2%IR~;ys7E~ z`qa|Qv+Y_HKESS&m*%T(dA5sZ&03Wy`}U7hf8|+Si7&W&*U-1<#K+~?4ZdJai8IKz zXHqh=)KPgh7dU70oN*PH>KMOg&Hg2|eIHxf)7)RgmpV+_E!W)CG2(LCCSS>o4>7l` zxdTr}=ZbC39Rof$GM~1_<%l~cTH>vda^#Fl8f0bR$m zZGx`rqx7nA(DrWTp9|l=58U2|e^9Q&Wjve-a8c$XZADOK6LrW~*0YbY8~V|;O=3Ul z%G*f}{6JtW`+6H)M>#_R*{=?IGUn%~`RJghh`V^7-v|7r$vo%VpD~VJ=K0I;wBfqQ zmDrxQ)21HAhL=k_@_b^NFW3nTz7IKvNS@8ol)xWDUt$=~zrfSv|EKp|H0u?Z%$yJJ zj#V|(V}3(DHkU7Gf6y1qBL)GVPs7vH+1WdoDYA6((h+BC;Bocr-NJ6B>IVli{|K+y zgMJ}2_YQiI#B2yWuLytW8N|0F@x8UC9j5Mvv}POfu(Xwq{A5Jh8yt^1v441j_9wW) zGi~T{=qXFZ?%9KkycfLf9T%^VtHwSPsN~$OQ4L=9nguAgingx@cC$@uQri*qX{p;5 zv!%pXn%STQT-nJ&JK&-jcxq134|r!QxlT=7I%`Uv1pj%HuT(K9xvm`ao?wL5 z+5sMHBr)!J)Gzp!@ikZj1?Tnb9XP<4-1@t@O7Ne#(P$RiKt4FRH4}R+-|LJk`ZfNI zRCUYHm<@j~-_&!KSPSFkWV{&TNU@Vho6@$NXCk?3zJRB+(YCaSFT@S~W!m|+aARw; z3%WQxrUqX~OfmP7LdUj8ox%Dj`of%vftGV-aF#NC8eT)bd^WU($UYNu%t{l~z2NHu z^x)0p@Ru{qByK|1i&o-x(0j!0&}BRdouO}F>+yVjUh>eMB(b3hZcIPvg^^0;psdFq zGvA}JpOmtI6Fa+&cpNWq*^sZa6PBvs zd&B(|z_y=uzSgywb0_tJ&|1ebK9(Z5?`U_BUg$isbnioJw)p6l)2h8U-g4CzWe(8Yk4Q@&gD6Bq;45oQ(vcU zIRiTySvsC^ki6ku+V5sf*p2>r61mmKm_%FpXP?8yD7k~q6OSl%>(!hMHwe6fhuzYC zMymQV?Mqz(!>!QerLqGpCS98IF4p~>p=aL}n8u9nzdS#mz$G*xc9t0668n1WH(kvy z5JTSaj|Br)BkKtM3#E>sd>Qu=4`%R<=-r1((wghUHU$le{@pD)A9T0}J*3*s6?&}u zPN8Wp$(8$updmSP?q>^JTao`79wycSxxl0^iD8f&K+u-ZSUGf(gA7y4n9*1Ks7b1n zzSdbr5@!+DU_`_<~i4GwzRcbWVx+;=fW;g$e89}laMk7?@WCbT#4)>b?v6@;W{*H=ltP1_(jZLy}NgXg+M3r%}V{f?rb9X{VsfsBpq2>(kl{)}K9|Lb|y`+^KXPFrkQYPOKB@IusqP;if#Kex<@h3)Ajxr zMj@-*!MjTMvgBeCn2_Zhg$uQg^ufVje=*V7!Tk<8e#iN6K3x0sjyRm6*v>KqU zTgm@L9N$@43w7)E#1%2#?BA0&y^K9&8T7Rfn@-yLbsg^Yfeu5Db>OqCT*0`1Nlc&2 zZ`pGubxS@eIip}RvbyA97QQ2Sm@lzUyPy1rUvjo7eN~?}kXQGBjxAbeKeL7BR`wf) zVUrHWCOx9{F?>xj*MzSa@NMan$csIUUn}y0D=S_-1C4JZ{=F#dUuTjof#-Y@+JDe^ z{z>LK>wUssqZN8f`|8uF3c>zN6EXE~bCrDt>=kT3{>4ZYq%O~ICWK=0--Q4 zI!E>&biI7@T$RLi{nNxoj}qq z`9Hqx39esY^Zo%m@d)dd*qd{a=d-zfw!}+*hy-FZxB;fUF}X-(O%;GiY1Ne!YHvn5i=48Q%>( zJEQs2RjNFrj<3rZS!yEB=qK-|D?j(L)(^`A*nHZH_C%;MO$!#DU|vCoQ>QL;WlUji z)vUxRdL9*eS%Wm%KKu zBZnXKrz-I?Z6oiN*jn%0U)E6u&wT^l`?~(a#OW_DaE-oibkge^$0UuWywo@RZW{k1 zI3G1)t-oW5#(qzIOy#reXD+Ay>wrh(jJtUL9?xY?eFWabMtleF1m+Xm%lh>HnlCw; zRw?s^L*?6x3a?bXbBHa{ER}sf*p;}AXWI&M)I8+Q3CyQ+)-cA{!rH2Hex~L&_tsP< zssZT96FpMxh}^p4H{7p(<4SdEj27%>pS$e&79YICtG~}0`&;s@i>>*@Mb2`@J{&{5 zP2H>TDC|74FRzX`qcB&|I!|7Mns@Y=(@PyVa@< zAWxd-yC&}=wn^~67yBuD>NIk^NIlOE)pLS6q%QeJ&cP_4E@`)iKFNB>t#l;(~!3OR{{+Ih=o{a+j;##Y@uBN4Ae7$xG{h00iGQyMv3(k%(=YXt3 zHs*l?n<;1A_F+#cT?q_A+YeIrHvPfGXJ}LKUrGFptY1=>t#yIRm@4_4lidfPQL#}? zL@sdx%WyjyIQ?Jkl!w}}gZqDPXB0B`sC^4u&uko(6hYk&GG{m0Mmfp|0ecGE4Z|R@ z%>sk8E%J)=UwF;)BTc(syMf%@f($D2p&l42WiQ~6tY&w*ngy4Od6vSjShofj4_L_m z9Qszu|9jbd%H&Z-OyU5n;r=BD5`9v@5nx^J$ z6&XF0N8x+$P`}6`@Rx1$DKK;4fD4_X5FeB5_2C@ipwM8??hYMV7|ycUENS-9xhU7<69dU1l^sk#oqyVqe`iBuk&8Um581f~y+j##&&J9Dh5B zVMg9;*Vd5v2EHKm_lo>Gl#_5cN3NWo@XXWLmJfuH9~VAg!lNORXllHy^Yq)kA+5Q- zxCR-Qt2I@*0~P(`eC)3ie-Y)rfm|?r?!cow>)~1J7xx`=&By0dwc+6e-F76IXLfvP z1>p4{eeq(Glvq-+F*kCiQaCY)rk#EtnVIXVuf&!{87X@+a#lTYI}YB}--VqOKEIXsr)l@K*}1L;`f_?* zddF5h!i>AHujd|pU^Zif&fXo>@nog^q)X2eB_Xp>_5%McxK2ivIh#*h(q?757r-aQO=SoT3vY z>xq>~wL20+Z6&&ew+ntmm-vb{s%dlo7lWm(UyPh1eHIvZ5rbO^U&6jWPzMfV9yTzR z>&TOR&lN+u%4%1$o4mE+J8~bj;d2h@Z?4=_iLr_F#6OV;4-HCt!{3?pF(&nljX~aY z#`$?S`wfvPj=smaD8`GB>DeDY8V2;H1|&&V70ahcYg1$Dza{_CtwbhU{{p7B*&!qY=`mdx@At$IQJN67v$WZONHUSu)yY@HK6P#3K+Cp7g6zi+nv%T6WoExe;$_H$#SZ%n!E8>*&`JZ+qz zAvpx2;aPRmCA`=FWrWgnZLg;5ds~VgEvcT#dChZqe&5KdYINes*zN@muat*(i|o4X zJhpuNZ5RH-xwk|9x5h-;D3}#mFLooRieFl62Vc(72E0SIgIe;d-GI;fFfv8n4;Q!u zzHV}8#Ky6vU?W&?WKorohW+rLi>eCWSX8xzecVOI7F89$$8*+r7r!EYB3FzchB=jA z0lxsh+3-rKGne`ozz6Y7HfBXJH}A|3F8ob?RY45({wcqz@UCk-Kc!x&?@IP=j^x`P zL5~IS#6res8SB{UD~S<4qAT&gi2pK|d{_9wJggm!+7`ExHu5NciZWM%=Ul!s-<@%* ziTuZ&)TMnkO(k#=^|^@N@9dcr^VdPbb}dPZKvras{H z*!5hGBRtnL%9iVih{*Mfj?DFpiOuzl9hd7dCggfPnxqBKT#cVNpPW6jwBX0-*WQ*<(4oSM%!qI=^b zZ9M;KgzWWhKYl4u^`Fw!>4{!f-5lGVqrpAMBI$mpz}3 z0c4&uVj~5YfQ`VJ+{)PdFJlY#C#Dn*UBGG>9$Mf7qYhj_htsu1UNIUEGQex(ME6 z;;AP_-HG2@cu_dK=jXtkNSWo75t@^7P8s_J$?CSDa+2>$%I>7>k14wd`nv`?yq0f@ zp|witDk9z~89BCq@1dhJ+GlnZ;F}&9(^ReXLB90@=lyFrvyyq4oWOYivYz%>Ra|FX zVvT%5HoyILEpiiOWpAF?D!)x`7xEjBLm);yjy&l4enN9mbWKp^M2^+ox0OAq>8!KT zw#2dDqi;)mbT}?%NQRbgq;0ViNx4@?Ymt(-{44A)U)+j4DO_w=oy#+^=~2eaCv-j6 zoP1{==jNKZfEEt@$KKFoyzG>G0FAEJbk1d}+aY}xo|sNM5|1OX?Vnkb+E~l+nX*5a zSk!y?G)|5k8JS)df}Js z!}$j?#y|N+a6$QjIpFGxTfM>a*c*aEUoscEVpQ&=k!m{cgg=4Dw$e$4GRhZwh$m<~ zzG9R*&-Z3r*=XiCc`nC!?!5fgh?A~AoxQU0JBu7#)_X2x9 zuulfp@w9P}eUh?&wTXBu$vLtJ-gnI#i>eCXdxh}5qB-8+LTKx0#<7yM?^^n}7n&)f zo+5C!7}|MSZ`c9s#1uH_dtBS;N$`ZL$h(8j;?e{3V;1ol!V8+_sA0O1HSs*}WbfrN z^7#~y<0l4tThCRTaRiMd6GMdnUg{rh?sp3Ia7K>p+{R<*OpQVhMeyrb#_J??2Py&` zvPay6>AeN6bo%L{j~?V38~5YcxA!4&c{0|nN%2Xi$=lFe%^3}hSrPlGWUS{fwl00V zIo<^kUQa7InFY5`5Ko<~kH5Qs|2r&oiMy=Y-M4Utho3bSJCXZGJVVzcUXgfE8NXX% zOdN#P?L@bX`}@$r2hhPkpsRo4Gr9ne>@fQt+xB~KPM%M7fUC$|$rISa%N*M+yq;VI zvHR;2hjF%t^}dbogeGo4<`+Cw6aQ5~eBYnYOa8=}BeF*sTs8R&E$bv>+YP_UWz14~ z#;67G*dCr?-@W?;{77h_fPUD(yX*_>{ip8fIi-90p&^rh!qcFSfy3xj$UMl;VXR3V z%{FYEvPb{3S@ntI(Bq#d3-Q%*=IE2~02!Y~@ZH1ys1xkpMsI05X$KZ!bB+L8&lNn6 z^Lmg;+c=xbeExf$U%-Bj?t^b@ynC(S6g%%p;D5j}&cWO|qv5kBM$eo}l7leh10U!9 zC$Z8!zNESom=dJO(|u?E&7^AcvW2(webqC*KKw z9@p|O*#`eXqq#O9U$|)9{xW5RDI-G(c3F4D%KX+w4>P9&3#0L%wzi9rER%N z-2-fK@NZLQ;d_yrlKEbqNt=Pwi_Esf-{3#FsH)=QMO7~LYl@s9GK=hil>J*`0~mf^ zLC(X#m0IvN@Zf~z4ETzVdPPnfwiyoV#5>VP$vs2tcZPYUqu9Uy){jjK`Y^C*nRyjv z=&NeYbuPLs?#sdLVgqrbZzW%_o~}Ga*nUfr*Rw3y>$y4J>)FA#b=4!5)yHd5 zbKtSj;R&;>Pc3lyzhfjBcUY5JtjQe*nTzK9ONcV-xSKkxspR9-lGuu@l}bFDQ)r>f zX}+(J_vzl?pv7wH&nBN-lWx8{3Ex;D?^&;2u$FaHQ|6S^0bior8SU|TX1SY&$~>1} z*1?(0l}_+p&AGtv1&Nhx)FzJ}sxJ}UE8cxA<^7g%#b1GM13SQY)~@#~Nqri6#S81! zcRa!`#~NQbaniDNhp3~B`#kOg+>>w6JS$wT^z)2XIu#z4~NtvmQwtkDp3%t6n~~;;SW&Cfo+n%`@ThPu~poQ>@EJn2Fi!t$F}LblldUNWr164^gFF_4r6#P zAmbzZE_1cEGWE`14ZZ8(-Q{N` zR4^yRU+gF5M&^`H_^tShp>OzY8+JhDhF_QM2|ugx%n=A=_mY39QsO7zr?%n!oW#s; zt@xk&Ip1bqM~!8q+V!F}_#CopBlDx$!WxKOw3g?xw_NP1b-b_Uof)S#cB-nGXsEwl zM~)0~vTNR&k~!r1Z{d4eH}*U9{`Bjx{0qn--5P(^6H#+An?!--()eOMt%~9HVcF z9jL8d@CIMu{BBb(N++*(F}!T+3YSOLKhcXGS>aL=pZ;s~`MRi~m~_U~kF3EQ&h&38 z>yNu=t@2sQI?B06S8kGc^wrRZ#19G%P5fa4Ab&!WIo~(Ls*Wvk9$;Rp@W3xPH$l#@ z$U)CO$avV`x$a!#xjhS9Vna+vSI#ixtedgsnJ|^t$1N*|*3&sZWhHyK?zrDb+6&z_ z?6oC5#JN19Mroec!xN(%VVdWN9^rNvnn&t!Q%|vRII()Do+9eWqn;w_DW;x+dUzN0 z1X_tTr5?w4%~M1@?EQ7yVlcvUKe9Ibk8#jD^Gt(Uz=J-9r1X zWvfh+p8sbI#Vf2|VuzM)%Bf@|a@WSZEvbi$ErdZJ7DjhX!>c}_sz^wJ53So0TbW;P zz)Q!#OYhRj&BnSZ`I&d=qv7pZ>4(S$g${Rp4(zW<^ErOPN_qDm@TZOJ@CYH*dBApNx2O>=u51hxA3eLKAZ!c z_n<#KTFoA9!|NG0%Ik@lp6hah??ld6z8aiHBzQfJ7_a9s``d{(fp7bG=JlJgNn&e_ zx4oO#^W^xXZp-p@oM{~Cvwmxxtc%bHc`3;6$XNEJ>#mPxX|DB*1-$%>wq+W;UUXzx zUz6PTgr4IUk>}=FJv>iv-^KHfW?}nD&vmr`YcjCbNnDC$l%o~+g1{#B+&J6YiEiLJ z_+)I7?9u)gOvNTlPGIU}tW3K7)>S4g+9-;^m#JNp}2i zvi5MUw7JjB;SZR;au>ey;eGvv?kJXhW^BkGs$UDmp7p1z?*ZpGmtNfdQZZ-0Acx)R z9IMPWIV*)2rMBx>Z&t$>hGltp`l@dB)%A_Kuw8s~0*4v*4}1pj=^J-9%lCh!PWCPS z(g$xCj)9~9UD}#dVwB+z^i$5r`T=}H&dBnAgLRj7%HabGH(uJ_c6M;PkG+v6k-G=; zt;DX3#CB^CyJ91D#ZK&sgV>c(t>^P~bqp9*Z;D|LDd%h)K%ak(9PZ3dVz>wT`G4&E z;P!i|7n_p%9DHx};T)BdOl%Y9XJRjGdu5__R^vWt{XHGzjLkeq{Fk}k8~c0OM@G^? z<~@3|?5%3lUP@B$Y~t*B*0!sWp`K?Ax(pJ_l^#vz7f=hq=lcd5|l1smLMwKwB^HVqa0o zDa0TFQ+k!ZqZ;1eh}^Zjc<4+!v4M(B>(nf5Y&T_f^tw%q>!Eki{~a~5-*ZMMHu57^ zE_59x&g66Y|KvJgZMuld=M#jWp}^X{6~W6TRVKk5H=-oqj23)#mlvWy!# z7reL@OdWguUlzD-WKB+HZ$G*jc1X@^5bj6` z%GK>n|42~D`JBNCualfxm7B{tWX`fKtde{j4*b-Q|J7yA=lSr(N@z*mSMaV3dAS@s z*?1let%;nv9~fNBmjcE~XzU{SP=ro7cg`*Lq4l#wr{ru*U^{qUY*GyQ3HUxU3tzZ7 z)`^TYu*o>fp6csltfOnN1+t%QjAq(6?YFy{CC{X+B}J@FVh=3BPA2f=(hn0BVnaHC z1zw3BG+*5a-lZP-PJH_Et#P}Xcs^qB`JR09iRb9Uetz(XMvm`LI^WoVeHnDLf$>5I zHu+8+&mQ3!bCEsqamq_M*()oujp$Yvfxn41$UED0zHPRuqu>uz+{}$6ft94XmJ@}UXwXWaLA^J>&5^s_kvintT0NmMz}m5zZ#T2nh+Rp}g*(VM0*k;T_%~?RKGddsEBp6z z`94icC|++h8rc8c^bTzp8;9VNca{DQu}{i*dkM@B*-I+({IfCM;G^Uv5}40{ug%!~ zfVWF)nazBRW!+40x6pnlM?j2weSTKM2I_wfdf3WUaJUS(j1A8>i;Q)7J1y{O=G7Uk zf2!)H4k=g9H~*<@4}C@satjTavfAy$aY8r4FiUaKnHu^_EI}}bds!Pqwk}fmYT@;TRe=t%HC*1WpFO3;%o17W z-_Co-pWCL9n@rAxJx9D4G4E|*g_pM9@l@#i`k%8N^oo7_RnARiZdV4UsMf=QY;#}Q z!7++`_D92sv8b9+x8umFi`#pmh=W5OO3*pmmAPenG(yGePwY4j&1XV`$VSEN4Qb3< zGeKF&y(ep#PW$+C+#kSS{{bKPC+pJd(6I2jS7|e^a|C*9sGP{Jl3VTr%Kd|Kzms{u zy9b{{X8Nz+nQ`=TF5RUhZGg7AT5arq;(R2L6`3FGy-85vcOa9Ir+MTQ=yQLb>*)){ z$M$Yma_lF6{{FF1;}*K^WY3n7MV#b*+p5FO@*rLx~Z zpRYy3Bigmw?CNg5G4w4V|3}Rjb(EM|!@5QGNVIFOxz!)}Z>}?(Px)VzU2(H7=#;pn z>6t2pYf5*P+6;fWwKH6OmowGB1-{GEeUkV8j8?#zEPPXb75fGS#tW0x4f221(EFxL zRU-edrcRTWO;Fd#|2gbQ6!@MQsfzf&hy9Mga7OF7QZ17I?057@{au+VPyVylk@{&b zQGG-H%RWc>?@d;7`Cq=wCufs#Mnk%qE&p%y1^K>9dw-sq$^TBd@0_Hr;=YbKe~@^x zKyg}w>)XCy0RAmHPu<|)Y>APncWfykX8X+Qt;y;hD|?EV`_E$+-$RT{F>wy)`$zG6 z?AsHcTh%Rmm;GbosF(K6XwQeKGVaCi{)p7^K%&TYjZMEAqec*nCdQ1U%Fb3 ztuYQiQ496FLO!2O=!{{L$~xXRh;hJ2=w}a60KB=l+HWoEcz{^UJrC$&yM^~>tHpYl zBTXOW5ZJ|z@*uxEkvCTWZyEaW0n3g=$-n)~FKtPOHjpz2Ui5pO?b2+O|IPJ%V#NEZ zLpDbX^-J9%Ll<}_H(2q(zRx@TR9SWodvS!;(x3$+cXnt#R+aa^%X{&CNY0DDaBomn zd~L#$(%5UEKULOYaQ+rJ!qz;U{9N&EmW_LwU#G0d@WbzS%lq+Z%4+qJmu^qIL}V)QUH@sNnQsdJR!=W z$GQtlo)g!$hPK6aCT)xECiB+Dc;>+Wgx|;-5ly`33Ff^Htw1x1Pg}sB{vDm#P>#oGF2Db|@ACB8G+Z&4Kls1Joh)qTI z16kpvkGvXg#%H{|-1Hx=`iQYGh=GtjmA3s0Jvqptx!@;xf4Jun^g&;oH(TB(*OJ2) zJ<9Ya5xXhvyhJR}LDnweWl-lnYBLwDb287O6L zhz(}mg~9E6C@=c2>|wNX257S3J&T{Zw1wwu*c<&h`__erZ(my{wvsfN{nzi{8+zs zQ_0aJ<~wphIrc)C11B8#suHyzd!SY!kBNP~OPiOWqN#rkWll`eOglo#b>v~z`{zjB zpXK;Ob^6y!Y)#rl-!bFbH4mp5M8&Omn`KY>N$Makjg1@1ebsb_81d7fo`e>UPe z&o3gc^ZXIn|6^=O61OcjzSGtSz8&or{i_y{3-GFmKW$v0ec8S06<6G^eeBe9e>EY`CE@e2UM#@M&gWT(|(+uHS z*W2%I;tYa-o4kzlSwogTIq6?#q4;DBfnDhHCHOk_nX`k}XanMR@iS(Iad1Zu|KD(6+#}G7tFf)QH!OF?p@T?G|BMteB_;9q?h1 zJu9bavfh;XucIvYBA;Knv9R^KdpKi&bwBN5;W5|6z%h{}dM~io3LKd-%@S*Cbd4T~ zOmrsinQ^Lnj;6}tU2;y=CTL9lUx$roDR64{>#O_|3)bO>DZPXZ`X=fgp2woML;qdc zPI86u?LOwM@DY*yB+rJ-#UAp-Xy9e{uphb?{@~JPOrpM5Zw;Lt^WEL#K}Jp-jq`B#ZO7Cl;E7|B`W8vDn9rCs}Qg!&%7Sjn*_d>xV)4bVW8L4PPr@sNC)LAi&;`~e=d$M( z9}BkdIZLInp zAt?#BCKd>0UqNfov4V}qa-O0XygFnWu%DS0+{ZRZLWp!sw zNnK$mpVDs5lRLq)ThM3P*O|H8+b{+p~gyxBpe*gQSed~LXTjt(sHS57P~dJB~S7p_yXq#rU0{IPRiH~+p&lBlv{y!aP!!staWE>^i`Yw0CPxhv*~uv zyV#*`WDc6+*fkd0nbAhSq0{I#$=x8jjB_7n&du6X(u*wQ$428jpk1)B4*9Rv2Eyp` zhxh}0oU`uZEY+kXm$r9;k8<+xnmno9rLNg{VS6m&?VY1#cF`w|EAKcPFwwM|zK1W< zH(Sdb#hPpjPmanNiUT$H#>w*oeAAt!Wrp!y&a(DVx2`8g{TJKaEiEtTWmIxAK#F z$eahGh}#8kHu~)^%dfJ9Yf;dN==Nq#oEClhoEFXm799EHTc1Z=+7RL^ci^{e(WcKa z^s%#R)8>9Qc9Fm#PgI{Lf&m@B=^j@du1R(lVoV zOr$pT-iJ%1oIIbT4J<)7lzx#Le;}2yle)@NfrS|FZy+aO!|Kb;pzqX6F8%?}&@-K9 zdCa%B3-Nns(S0YB`*`3 zO`Tm^y5=d}bsyv2VsXwc2L^%10WAa=&y~Q%*pP#6v~q9IB3IC7BeuwKE3n;8oX>Zk z&JF$-;}akTgV<+B81VL@>o5tR&fWiA+eXzb`kU|ymUUlP4rdnf6GnX6L%@&** zfvUAV@Gd`NTIj&{7ub+(Ou;9wYjaF|kf-#BxtB1e?F#sH4LFtWk^`Q#8|l9v_yc@f z#JA5)I-KYTtjkWL4!^~)r-xA%nOXeJFH*-o=H@3F`8A{tzOhlxrANDMfqB_xUDQi{ z+W|Z0jZCJV{4B4hS_`XmB8OUlGZcTA=>CRD{|RkhQXg_?rU`@Dmvz)Pt|2W;^GJOT z)?NA`{DXNDubvp{$A^3;{qO;Ut7j&t>%r~5kEg3A zm@AJRzxUV^;MVik=_YQ^3%)H@CG$gk@Qh)ppKk-q1N5!p`@mPhBw}C#71Pq` zA6S#!i@&fM9bEc#3OGb|4fQR?J<GQN9v< zWL(TYRvB2Conh0W`mE{h$|(?>K*PofNvXZJVP6I&<1;1BR{lexVKIDW8ya2k=y~| z%fe@6wgcXR(gr*Yd7E>t$1HGtH-4c@+7#YU`SV3CBRs6w#&;uuv5#@@Wv=Z59zXt} z7U+XD|7*S#%Qy}Oo}>9eTU&?=H4psSO8Bx zLcJA?&G6h8S;EKMZ&(liO!d0XqT<;8gX^O=|HSsQ)~UC+(0f`3%v z&nhKv!GKZd%f?5r$}sn}Ywo~A?|`Fs{V{i~cCT3` zxgW$QdXzGZW#;O;uT+93dHxIZCo`_VGWM+0=d;8%oWS>L=i7Zl_4VMN^Mn5k;zp=#IksNL_{opbN z%$Ig;>=>1ToZ7mMJn_s|eDdyjt7oh2yzgJ4wHok{_pr^r8c!_defDKCHt#bRh^uV7 zNV{w4+rcZn4>wUq8hrIj^rf3qy=$wjMx_nOgUmpFPwFhl{3lEidX|uFo8s%((?`I3Yw*}^~UV3Nygb&;{SN#&W zE_=UJ-j4+*f(zvQrpK6fZ)5u?u%b%@Losl5#FQ1Vk3{;|DfPr8s~f1t!gp!lT=rnf zdbN-5c;Bv#cdIb=IqpU_kZ(->^2|h4$Ty!OJEG@3Fa16Zj-zG0vS_n=w1nADGM-P( z_IgZM$pt0xzVrB|h3D`V&V8HAIGQlvBZyZgpr1N$F6Y8Yj`PM(- zDtS)jKYj(17UpQdjq-oe(EmxH^9|C7V>92UYeC5k^m213Hmh(aHVm<8el}lm9_w~& zuI65943kkV)^j^K=7_b*uF&0fyWf?KAGKZl%h0ds8x?;0O>pD?4)W0mvyGYl?^vs# z=PaY@iYU1kUMjlTX!u(B-6NFz7rt7tIK)?FyoUKXw1mGsK|KU4IqaP~$UEV)wgo8- zI_)~)Ut7TKMeO~ThHMan*0D!3$7@Ta+^$O_&2OZv_C59oF#ckfisKtuSF*+%OSQGa z*NnEi&G}ATE$=C#*3)JScEuC3#;UVgiL_ef!La_Mx&q- zL~CZOeNur+S}g&r4`^#qthQAjC&AhQv}Gp|lKkGE?<7k7J$?R|*L;`zz00}hp6#A< zF3)!iHgTI-=is(=7vI)?F9-S;`SzC1?^Jgw-&vG{msRUq`fJHow;ey-JATf72y3Rx zZd8Yjr*3+L_J_g8x~p^@zhnc~vgORbF=>|I_gi4Df91;*ER#E783Mn)#ha0lvkCt) z#1b!(UGR4BN3u=?kNaCe?z{NY#k{SnKcBHy{fm7K+DCw{&wc`5HJzifhqamcLb|mb zoj)v_K$6ZJEV zua28%##@=p!FYcEMa~)@{nP%S>UT5aOi*s zdmH*nF||>aCTmiErs%>V=nkKBI2dUcEUz$gW#MH? z7&2CCxZD{)cg#iR$gM^X3H9{0-i;0zN;a)a&2j?K3RHs78B(KI8TQ8k2E2}iJl*uxH& zX-&SQjX8=B{u&$ahs1G|M4O%a6+=lLBL}|JTSYTIfo}`m*C$$s>30`AzHs5sT5Ips zdNj{-!9Ux#?Z*CA*u|QNk^EpR@2$Wbc$`7*5ZsQSCwsaVwusK)2f9;qMtcA$`1&<( z6P-^E{@~KK8lAP$3SCHF)JFVzWN+0?JPWo?@|buZ2XEi=ELoH{??_}XVH!Rg(fG1> z-dSuv%Y?2fmyVm5!%0iB@=AM|oLlIl_BABax%i*7Bs*^c&!oFourDg#vubpX0SPIU z@Cf#E`v*72n1)UGn*11>a92O%v*-tY9{_g~ZFaCWkDH8WYcgw6^XAohW=%kk>N7`O zWkqq;fMOQ19jRlY$kCL<_*gfU_flsm_GQk-3KADEQ~fwQ=X-%t_6AR1HU6=W|f=r5m4T)9IsK(Lf`cYyIsIs%^p_D{*?w(JT^&sMPB z@`-tU1Do&HT+c0cS(Cmp4WFa)VCV6?3GddJN=;tw&kja>ryu2C`DD_=>|-((^xE0w z9r%r+mzDQ4qeJr1KXq+>R=1Q~?w8hrXXTvNw3YvGUmx?_Kj=o!+q$^4<$(wBFXdTX z68^VQ*g%lmkwX${XL(!u@GtrLm(U5}hUC`SrP`BbK8Q_72d^E}Sx4D_PzK%dg!Fav z4ciatOZKdfAe#slr}3kG2V7LY+|Cr)3vGP7k@hv$TaGeqNq{*%|{`@4_Iy^k`bf=`qQ*0Be2 z)1>yA-i;5xe}uhIt&@%K{IvMk`bztZ_Pb*nPevu0ydObZJ|mxPBY1g`9C44X!M~KV zwJN~Zd(86j(L>F0!RJqAdG4Qh-|=k3houkS%1@>18U8`D|1{A1*rS<$+SK9bebjK@ zC(4k|!&ouof{*HL^24q^LB&QNW?Z7dTJP#x6z^?$rfdK2J9}f=-@1%FGp!rwW>EV# z%w2vRHV2yyCM1J9iMBp{)w|eCI0NZrY`XZYcyd{b=aTeZ@!3fp`8DjjlRYeGM6yYK zr-M9O!kIhcDc0ud$<*9dX)i?Oo{q@0?8Th??)`$Ht%GtJwzYMp2NjYfA@l0~i zzsz+L^O;FZcOBOc;8*wA-yBQ5;OS?Z982rKb!33qpZ&(MGy`1y>|KX_PSIyiI+i-V z?wC!!lGaUp_eaq#t~Zm{L;g0xK`(ofd~2V1{Rhg_!JE^6O1vTSBYV*!JX^xN%l>#C z`S|tDIxb-h>%A$~ChWQ{bNsP4S<60rT4cjj8}-Y$k2VeU+>>L=&Smc>zfu_b(glnA zsk=h_rYO-W<63wtm}oyz@p1FnleA?5WRU}t+mk0xgkG#u{Dm9Z5(SNkhStQu^LoMa zdIyTYP4WfH7Sh@=#F_o-WSe(KWQfKTOT5PBXS3k%la2MoI?;s0;6z}cwk1!fuSvAe zdKn+WH{^PIeD!hP>m1L{K1r2_a0(AWOKlqwV{hyn`=P#BxsM}Lg`k6H^el;Ze{2wk zOiC_szd7;lj9i<)4oI^Kz)k4zxV_{XY{q}FIT;<1HJo{UtQFd4tlsby#g7aFF6BK2 zmSr%%4#~ugqpZt#hL2~xdxP6zU$k|WBO_O`u-ck0c<#ux>$m_dP#tNM9}DlOg|3I7 z1N7l|W^J_fCA0v#e9)LY%X)ya%=10KOnAMF@;5@e^o;>O_NdUXdcVv(mJdAA0x!`19q3 z*}eO&*STuMDUkz_^?ny^JaX*>>)LL$W$)7OcNg`y{>6LwfMlT`$?on0zejPNYV6OW z(_)dIE%pJA^)oAu4>i^ahwaDI?_aLi;3?XBk9Wtj$tSYZ>{2YstLSw<{9b#_6^!|5 z?so#Cv)}{#y~>0xfj6?JB7luQ&FItlt*OJ>ESfSG4G* z#qIXoiyld)>bMG6Av?Go5nEsS&Fta#GP7%YwY-*M5?;QI>vY$^V!{87_r$sTBtmCPu9l8SioAV&xWHPTw^acd|DxRk=bhH%k|S z6H(;#^!(T{b2@xt9(fc4%;A3giiB7F$-j3wFuUSb$IPyJ?&zuqn^_d~csO%Zc}Jt* zMO}5N9_%Hv-QfCY=5rYEBsZ#k23-qq+}@U+tGu0(|JrlD?YNFV&Vcv*?SPYeRqae*66wYTn>~AN3{Cmc_p7soz8^(?3i6!>H}Y;eHa78S`BhXPAFx)AXTLbw${f9M z(=6J{arolS#Gw1bhl{{-jXRn#WPe5f7t#OGvsc!R@uxmQS@BNgPQO_9mweV<9?8ud z>e9!$b?OHR{h_B0YZ>%Y`UZTlEW|uL?o5wMKqlGY%*Z{B>{*7)6#`d7L!iG?+iYLO zLSzTVR&PFVSsS4{nZRvssqM$;ncbc~{&s!SVFFEjBc0R(-AU1!pgrN*V#=yb`egkM zSw#OTdkA1%J-yBLVbyo6MZ)(wk_Ymv!11%$2~x4N>9%T2>|)ST!=*!nRY~51&RtfzH zxr`M{|LWJY*Lmmg6EHeFj!FaOrxr$RKoYNXY?5STARhqLA1$UZ?uk z2CmN|pYVL(B&m6i&cAQ84Vd)3K-ta-{u-|Xx8|t0+1m}tIe>vsK^*z_woDVTu;9ffuk4tOl~4i z`UP|p&VH*!kJ#kM%6%3dl7aj&$CWmwl}tkt2D#5E|s=+Rxt2JXczo zz4zEp{zGZO!LALPv_ICZ|FtW@c{|6m(LcN>lYd)xo}FW9ou4GTRuXM{FLaDoU3Oj> zV5{>+OZ5K={EL6^{9xw#SSyilwlZEHa5J@oty`G?1fF%hSKpAI>NDM!SlcKkJ|iCm z^-E*uYWsgHC!RKy`iNicw+&jdA08|{I^B`5gn01T(hVA)_;z1;3+FkIo59A7q|W&~ zLVhI8`)P2x`u$PltWBS_oV`2Z6zZ3~nrP+Xt7@>Jcv(BS(24!{A!Wgn+!y8@3L_Wf zLc2Stw}8281UAg!INOh(Z+ZfA;n-K;gAckOJv{{fsD<`8crRMAk~8(x{}gD}7mVT0 zl(W~$^?6p@eHUu}#Iq$=fG4cWqAAd`P90D*f4*o5=U%;~b{=xgk`9<|Qp>a^vK@os zB;%!<{$&B4EA}tlq?Aq5HNM8=z%GmDSuH*-{vM85TcQV*d65m>j2Ag#sUKR9(62i6 z%VpwKvANaAvZoy>xjFQqmi7|hAvy4p+0NM9$@EV&{U6ZCCxQ0|?Ux}h#Cv|l{@7#O z-v{5&{VJ!a{u%c}s6+HLlYi~Ar}O_T{{#8AeavUb<`NxfUT2WUBWHV@=K2ZNgXmHt z_|;4f%+G74WPiclO&Goa%*ew!!8$fc@_)SN=w;u}{_hO@HDnuv-XBHQl@G*yj3>-~ zA9J|F*KDkz-)pn!m2fR2o?bN48qJ&tNB_q9;aR<6e(unBWAPoMA9c{p5~ssT>ikxA zvp-SRr|;j4wQiwo$zX@or}O>$%C8}x<{94B(NDsQT(0-p@%{VyPB(f|6nauLdQwc_ z@IvvebWdUDn7`(}8)Fu}FuvpFuHjZReVaymr$3sUeU=<_t&Amn8T)eVfBET`cb~D2 zPid>sdZF)}uhPx3W%kuMR?i_O4w(~P>P9Dy#}_Ms{0EWz@x+gLzQE=-jJ~(hZpL9_ z{SWnsmfPcs?Po2Z4~72W)?w;hNX`Y$`Kel8H^KTn&tGKRZvm^f2BcbP)FJy1c|@vq zzBR!TyweMEj!lD>lp&+91<&4{t5|R2`4RVfxqq8`{X7O(^a3Wm z!Mi@-U0-A(<9P$RQ~{i4G44iS>_(5N!|uFDa_fr7d1uPWGd(KCKJV;Tl%EftPNlqw zYRSC|p47yAXWrJ$+DzXLKU|nCy|+>0y(!MRivIg_eXyTp)2$bVTNdT=d44P3!Vju4 zM-8za;aP}l^GG-AEOf@+JGgh8bsNvt-!;)%&wJH%eWbm5`6ie1%!aFpv9{7iW_679 zJh)hReVXOc-orJQSl!^$>%*xLTn)uqcL-N&^N6uE2@|{e?!D5wi@I#t|3a$uA?>qI zP_@uI##&Fk>x<&7q15wY{b*|e<>YTLf^Qj5RpwJYtXp~36jP9WcnC2}v}^9mv2Nno z@F&HCrU&+KG6{ntV?CaEdZaazcQ$~l z!uiba$2X%lGGF9|^pulheJe6Ull^{x=MCs}A!7~ytm3x};Yi$T`MXP>~ z%y%pFvj*(zed0)(&$>vh7IgOc_O&`F&QP$a| z7iuI|G&45lrV8t~-LK<353`n=`%Z-}4h%Xn;Tb#=PnM0WW3tvw4C|&B>!vsBrVs0; zFY6}OUN_B?1>1Db9$@Ls2|Ow>r46dX#ku<6d7f$=c5QJih74JJ#Lt%!Et$)he?yH&YIxc zxg)<_Gsy7utM+xbE`Uc`D}Ol8TH#u2Wh?W!f_d?=R^-$4&04YF5A>WwUYWx9LQ}mB zWv<9tk$vLgwelJ=#+~fh_M#k)13PZxdI;A|lRN2yf1GtaeSMI3xAJZ<@BY9)_-Nz5 z5BzVNeDV574T|oCCwIQ5FK52*+v)@br%B$sK8+$NpDkyJ*xgW1`=tlPOCNF7=? zuV~$@`_J}Z@f-XgtWo0a*umbp34Dd;XrI>8mvlEc2iZ@WyA=L+yUm;Q+t{Kgr_Tz$Gyx=_ey#PH1 zxE(iD*;XdFBfb#f1*yTO>FZ|nCY53Q$kxNG6v~KiiVipGyVsTbC&}|O%69RE+I{4W z1aBpKM)*Si;Cy7fF1}EE*jTyWc^?DrbkTPk)>rqk>s_vTMc?5WI&Vw3yNqYT)8Bxn z@@L3O@ZzJS_&j7v%~Q)2mXmUeC|A;l^ClR73H<7I>|v6ti9Kt`0{=?z*J)+#>)j8# z-tkPhS%N>;U7g>}>3YYrRJ|ic_!!?oD|R@H4Vx-cnr6ut;+lIeB+utP{irhj$g`_i#ZUv<_zdaHeop~0p=T-?$o z^k4bAkYo3F^#hY4XPc4Bvz$1Q5`4QuBgt6;z8zvM>-xhR+G|4eQ*uBP_ma0|+ZZg^ zJcdmSILeOK2)}Q{&tL~@z}64;lS9V0q4-*O%y3|4zi0356Y5jnW_Lcz;Msm+v;4%> z{g!uos3(N~gZANl!VlttdeW9~=8!8RSM~VFKdo37SpdC9j#I<_5Wmh5f4 z@vin7)l-fBr0+f)tp1x;wSj$LM=5bI+~bp#9_;2A7jrIpt-O)xLl0BR!yHo9! z7e-?AutC{G*xcr^F2k0-a6C3N>VEhp z<_f&{G5@kl>Kb};FtgWaYcaUt6+G)FTIm_CKR*v`T?$^>cGb?f$BxO$Z{4vP+ z9a*Ob_=eBQb?$(Cms*j%#N#$w@(YaQQ_}v)Es{OwjJ959?L4z^g7qowym9$No#9uN z-;t&>{Oafa*FfcytpD)nRhZXJV1d_H+_X^hL7pRbZJF|Hhi)YP6~EateWk+>2;K`W zd)ea<&T$TI@WGO{ny&jqW<8Tc0dJhob=#`R zfqNf|*r`LJDY3cV%>N15y}_+6d$s(Q+EzK4|Nq}_X*cwB1@kYQPNQDUzx=|_@e>Z% zGS(T~T1K`Qe+!JrDW!@X9NBOB)dpUJuybW#e2iYGh z&@Uu|KZpKq?D-rR{2lu~UTkc7{zu_!=e7JWYMEyzdaCABG2tQhz%(~|i8%;kcNSlh z&%Epk&AdMc4htVR7mRsI4CXUWIl#72>*D%})--S@at2Pa=je|v)SM(bA;eEUG=gWG z4bQ^BXlR1gN;~T!3mdd-N!f01>jCV6@z|it+3&BF&h$mZuDoiT@Gjl+0^_P>T=4b! z!WTv|f5QKC&)>1_E@NC_Wa4Q~U!1 zUz!h2L@l;+^lpeJr|-s1-N1)-a6omOuxy({y?JPYHGn)d9qW3&7yhkjYg?7VJojgv zr?Sq|Smy&+=K}+Ej8kXnh#!WRI2x8f&%@iXp{-L6jdXJ1r<0EenuQ-(cw2XC4}HiS zmTDb7)!q90;qKNK+ZE>*&whyWl~7;b#L&8mE5rD>v9~aB8a`2V#L#Ba#yiLXCD5#i ztjR~=BMZ20TIaG#c()aJgim=JK0^P%u79uuSh`zTOIPRFF~E{vW_qD@UbAxt@3p@? zUp$2MqVEUKERF6?TQL`IJ)~zxRuwcv`+UW{&D!E#7fKG5)O*i5TNA?nT+&oY~eVgEObdk@aD}pQi41UUQ-szG;=CE3uIdDEqR!py58* zRUL!MW;q^7jrMIRE^%HqXpu8^<|Ie-5_3~VACos~M2xv~(1NE6SMHs_zKtVm{E>SK z$Z>M#bCVp-rAHQ;*1?&xR(6$jQ`Sk@!&(c%%Qr_@ndEHxDSKIAaaM9L~od zseSsPNX%NiXI>P!O890v@xAgRRlIq2wwYP(j9nTt^uVSz?A%9|nATEqHTd()&hoF= zr_CdtcS%9Rq(7Ra&+Gb5)4FJN)aKIF-p4kw7qfCr_gU`M+sVcD!KQ4^StNhR(#2&1 zXC3_vTk6P|zy@@rWO6};iDCQlGjBtRW8jRl>=(OZ{*ao+nStr9v?U4M{i*)wzoq){ zsXG$=L2C5s)UyNG*h1D&cXCRxc9oC7O`XbP=^p(^s+&BKQBj9d zJ*(sS4nG0Pxw&?8?wWh)K?u*(NNB#xFGG#h&;|HlUV{0;dU z?8lF8GJC{FU%DpXrftP|YD^lZdo<&k3XacHtaQ>6t!JBte?H7QeD{T#qrmMPW4^RJ zA?@%IaCf`6HGnK+>r;OjV};kG>P#habH$U#%f;CdN#q{v?>X{Y!x_s^yst2 zs@Hw5Ss|QMF3A4Z(Eeo88dYyrX#IsN`;2k_z|l|&d^GMO^w&L`GK@V0-ncVd+4MJ< zoN4zvm^?J{9~Bk(Kk|~dAuT&{oz%Vaox?O_4F@myZek)h#XmGFnAHzBkW+(P0LPEq ziH((?dHU)$-G?TbR>!qd+QK}`h;lUOy(#E+!M-0&9o#$ibdTH@aKFxs>3=)z@qF4= z*DmdUM9p{D_l6uq2cSQC*Z+hoU;pM;F6+(CXB)r?&8vJh+@BWYN0YClXlqoO+8`35 zU)J4bh5b#F!Kf=da(P^KcpLE8j!)$r(>l+UaLkF0jK8Ai zf6&pwzh%D*+!lO4#(!P0m92+NL$afP%wWz@2=(dK=cB>tyUhB!K8*{~FRVnC=iDJe zRPgmhueafm$#<6(XAgEbIg`lk*-t&K%<&ND??BGwbB}#GbqHtdr8t~3;BnO@YhELV zlk|Ydp3j0IIWrD#^EMZj@{GGiSoFX4cY! z$w`&U51Q^8uw*dz;k90!^<$6G%{L`$>Nfv^dhi$Nr}IXXUsih012OoLPV^H?k{CSt z($oO_YDFn=FpZaP-~54dKuk01>!UT>H}4?dP90}lYL6}$bYyQ2n(Vsq22+8l_LRq` z&EUCwuV3aFG(9+Db<`|2KpQ;eYYx54ca_i<=-;srYf*WDUm^AYI&b}gHRZ0k-cKW(oZ5ik6oF4>O2W>Nv728(b6j(@Z^%BY34-K(C zBR>eTHB#Il$;+PCxQDN@PX}Mc2Vi^TeZ6@m-ui%RuikaL%6jjja$6}E;C?gdK9B6M?`I|<_EBW*i~LwmlkW%LM~`yOl-7cW?77J|tBD*= z$;61E8wN+;N^Y-c6BmWQ#$x`nGKr7xJ!^VQ=+WW@Yh1Gy4}CjT<-@Kl&;G@VPfU#2 zUpTJvo#~763(VqR&v-9lp3-HSvaO<~ufBFL#*-`|zhk%6OEqzt@UH-Sj z?ryiwp}CRw9g}--9;_qyCD+&(4rbO4vUEO@NFRgg(2g^kSzmn;;?jx7b$HpU7}Cvte`*N6q!06hM;%IG4;kN(%UQRlAJ!UB z9SOlkkF6Vc%+E~q2q9cy+B<(+i<-;gU;X_~F*V)(yz{(xDgK;EIjf>XhxG-kn(}AKD%0q{Pqmv30EZ zC9c?wMUh;B+j(C4lgaiO>TRitmB;t%C$5Gw#30(=4=uE9zFR4mY5G_hR~PKMY6`Y1 zY~&j#o59Zk9oVc>?=7jLxU0~jmZ<^gdXhkx8kdEb}-8l3$>1IA?L@lr}(12awqK|d#1BM%Z zik~Jw>5umJs+fI1IXO(c;8uBW_zgaj^2a;Pm^T8$dFTsAf#FfwQC=cFJ4#=^U*~^eusZ)73LhRk{e{724<%5SW zS6oX{(5$$x<@f;f>EYxGz!vEz4thWF@#MS^Ts?}vNv2GeOR{K>Ko-1BJf|6XBdV{j z_*kxV>NL+y!=pAIMb6P2JTx+}nON{+h1iA@*A=w*`g&WJBWHTMn{obmtX*W&sC`p* zE#hA?cLg@I>LcfC1{%ePnBXSbisz^Jiy&+9I5e^mJ(urxd;)H$&aN`(ng=tpdZLFW z2Nf&wIp6#pIze7>+s~$yZ~oNz%~oXK%&bx0l)aHME9h4dWhT&$&cuEezM?UTmp=o2 zdzU#oioC%YO8ut8Tla8(_A+2G*4w&$h#7}}fmO#d_8%Lvhy@gUX{Rdl$}6o{?1kWT z&aI5?0`{QH!4de+SD$l+TJFyGH}L+n-e;2kh`7J=>D~s>&^GK9hp?5yOY5=q9898r z_rLEAn423XX3n3|c5YqCs~wm3YY0tUKe6d?cN?}2%imsdNN3@O8I$;_lW!i)CclX@ zxpF7@2_&aP_J(aq%#}ldM<|{Ub(Kl0&8Gm$3 zTg|y z#?I&apwCT|6CYB!Ov>Fz8Ep9$P9v6^v!=D~GU(et#xUMxT2Euc3p0nUbFR)l3oZ3S zi%ty@pAjD+=JxjXngh^!=`P68C$ckLmJc{Ba4H|EeWp&1><#jhIRy?u4|diok_CO zcz*HqdE19ZHq|hGYw7q{SIAyXnR&!4itnX>Gtg)9Pt=Xa|DdX{WTF)UHV$aH&P*A# zS6Y9G8<^3cnS*~j|f+=y?!l{{`9A@>Ep{?q8c?byHTVm{bZ zGR9aB4K~>~Ab+T@^SPJac82Sv*u9WD4w~25^XL9~Xy-QGzX1Jwv6%C57U8$So@+^& zv3f#(y4qOl^%Z|X{S_X?1EzU~19w{{2DhrS1fwp)X&5gV+R%9iZ0maCl4NNZNd)Qz&LF?@VXJ! zv)GTm2A}4hb66S30yce)fj$=Eiv^;A#fIe4dHYbVnO z<#*bY*H-fYGXDj5*idj*@uK2Y{+LfUZF$^rVj%eI9=c_dY>eb9$idz*)AqB3550D0 z#D}W{UkvTxE2d%h+YUQE>k9Uuu+>zVoLuW3=3oA~KcJtAANt81$X(E5&iM;E$ah)` zFVT5=w^J_Fq{b+QLpgHX_(UgTUykbTuwxIzm+;+Rdc$ac>Rih1CZ4VYyx+~f8!(u? z`z?HR;gjk^E$c+SuGe?AeGIyFCF7LN+cm~8bG7?2;vyUqqTR&L40Jr3DmgUY@pP(t z;!^GN<@cZKp#6cK z`)L11jOXUF9pjWgTH~L0TjbfPo}A0boL)SaY~Elyj}NwhPx5I3|Ey<5w69Jl7uSSpJvE z?(K315?QYu;@QcD%eA3Pc4GW=%IHHU-&|#|ObG-<- z`u{eT*!C#TPWma`A6h^R{2=Q^Vu@a)Z_WFZ-@$2pZtF@3!7Y@3M*^DPI@o*>=^`anF^2&;{C_*?q73H{0oU-Q!6BIX5J z(BQ^zBxj%*M_&U+h7<)ZuwIS~aRol1zj}W^`=xW?@fq-P@fK|5Rn>!sT8ZHO&Xee1 zl>aMx60SAA;upuTpPR}$h5wvQV}F#s_M_cUd&jt@m_p_ic?4h4Nf2QKe zS*xP+itWP}rj>cBDkOK8L9i-_?}+~P_+CK|S=rzf`5i9F8wZb44T;!K`MoM>9mSU4Ewip2RJ`;aDm;>@51pGgGq|!GzT%hXx{NDNb7Zt>nlFj<`9J=QV4|>O5izmNJL4!_1$`jAXw0bEce+ zy=-VQaf7xG;CMe}1@}72WtqnJ{pgF&tn*iDpBmm6e6%lfOJ8fWwt-U#xFVTKe#oEY z!*{^xQpV3(%yIVe2H;8cX2(^^zj8418mIOB1HcM!{F(+Rn2cwhS;WFzgAFa0mP{1TQps zqphvT{>XK$|72}#xE}um!9(wE(|+KK5HLnTGYjSYcOt2Sp?&oB>KgHKYAd`-O2pU<3zbGqeckQUs%+t~Tlf5o?{#5TzmP*5xSks36t zjSz7Y;lJ zRkrS`j&0~uz%7+{n)BE=n_Q87Vr=sbrkA(1oE$R`5?`+UkB=B*3OJf6Tw%VXTb4(g z)(4n_`N%h~qGx2_my^XBKeCOOM{H2i&EGybFE1#ZtuQA_8OOYz5^n?Ez0Dlz8Xh$} zx;we~PNwILUy;?KJmt!lxd=PtQR<0dk0r$aw41Y9=G}aG%LDAy2rfk~Z^Lh)S=w`i z-;p;U-6LPkK-mut31+$v$FmP;OzvMOhhJ8JbzE;QjIbU7R%d|~vN^fF=LUvB8{1ah z5Loz}Nl1pC!K>;s4^Fhc0I#6UIlFt@cXDfAawb#%e)^rhG~yeO{sy@v@Vh#|d84wA zY{k~1e1d#mmASkhdPY+4kp%2T@h0a3azcTx`G1KsIRwyHVc{^>-pz-)DnB~1+;iyFl5uQWUOLGN z(Z+kUp*kzTYvJF0%>8)aA=vCeE*5@ll^pbCD)l7?e@+|dt~=D8=t?a-k9lK_VLyjn z+%rcxNmGs;!KPG$UQwsfK!G)bkF;E4p0* z9@aAcBJ7X`pY$-#?_wOl^n~qmLrm`mV30lfa^yS{bU3OvIq|>oiGGJhTQ4z2!F?L_ zJ_`@H6C9Lpy$iSs*JaaTJmcKmeo|ZqU8(DCb|M!xoM*k2Fb3JUoA_5hzMiXiKgP;9 zm|x_~iB>r@qh+&UwXl5#=ee!&yZ^(c>}!Y;lg*t z>2>R0uriZ#+YNNi_|mP%O4@6_PhVvVn7}{scWc0T->d2~wB*D%#}k`GuXK;^Vyo$C zc78L49=2_~%DwgK*19OOQ#MZQi0_MTpF<}bKpW4*WXM0YDrMGaYYsZO{PWT(8c%*5 zkG}VkY26(YIa{-KS@PzO=t~JaTC`ZaX$|s02%4+7cXYI1rtpsWEaKev2Uv4%Vz^EJ zDJ$1O7hXnIb{p1FAaXt%xwi08PCF`_#B%m;gpZ*i-K~?;+iQ+9M`6Y)z99a!9KMmk zbqTl=qW;tHZ@Uj%tG|=TmD6<&gXp~Af!)>9%v}7D`O9QpL{mP%C#i+H$S<(N#wX59 zji+q*CFV33dsq+BQuTu}=P5-JsRoq18R0)jgrrZfJE>0Aozm8f1^DyDt8eh12K^=`#Ci>!I@g|R`FeQCca#`h%Y5U*5G;qD&m&Kt z#)zM2PTjd{;h*l@3f^bJPagocY}!~d()v5FRy!f=Z>8j77d;p3*x##nS4^_P$nHfv zi$1aXkk8pT5g!4|wB^Tp@q6$Fy#Gxqs$yPtlwJZ6MA~wa7M!^U~?KhL-w3M!biQx0A259!;`1d|8d|EvXW;N zw4i-nQQ)r+v({+0i2M1p!*xWy-a$S`e4m_c*Bo+O>mKVIXvUtv&LJC?&cgK*Ki&xL zo7YELZu%-2Dxt0Cc+m*##{uneeD0j~^%-=j1bj00V0+)&e$63Z#rb9T;B*_M<4LVT+aQ@$JLymYTHR*yZ{KOK>M-j4F~W;6RBf%1wl(*)}+QKCr7c>}C9g!@9F)Y5R|Q z`tx4A@U*#pd}!81W!QJ0M;Y*&y-1yv%$fA`^W5NJoC&!4)p=>0gUg)yFa2BU3fBC7 zaHC}1ycV?~9p`$!Wev&C!&)^NABHiUjR4%T%-Ujf(rB&OCVS1MOHT_{_vk;ygUpir zQ2MM+{${tEN}F@zhgqWYYWD(kViIlpXuE{9--yk+g8#~K_I}(rJ-cx7d=0ioyWMBV z>7f0=`<=vAu(JSy-Jy@8M4jlo9 zkku(;Wn-fip1(%l+wnu#&f07AM10TF$qkVSyt4e>KnAj!a>gpAfU{_F<(Jy!bG(D{ zpE5qXZRCZnb8&1u9W~tA_7hY6IdsemT+*G43Hyzshl%}IV}XWkr7tg|Gm8eTg%-Rx zn>80}PQa6(`-(~A95~JyT|}I!dsJ01d%QF1HvU%`HlLV;#;nTI*dn$&+_`r#hIEr~ zY%6dA{>Vkfx`x~?qW2o}>2ecT2aFX{fqXDKw9r^jqGL&>@QH3fuRg_R?OCl8c>BG; z!k)**o)-9DUwFX{okK^b&Jxj#*fCa~a>rm3{Z#yCJaP{FPxbM>%4A()9iTqJO1PQ9 z*t%f$pY-YuSI_t4^M8I}4+~ki-u+^la&^>a&recZY*l8?V5=G2Jbbu^_4&RYR_RNQ zfbx?sgid8;MB?l@Lus*(c|+DL^V4RnVDUnlo!ccoam%Ke$j438@h@cB>zNyT&=O>O zag%SWX&ZGihlhxLCLu4+&>!utByZHQ=lR~_@HR|mjy+S% zE}d)m1pIKjD=)VM+W$RZEIE1?<4E}|&60hL*r}@g$=xl@p#vXZ(T+Xy!ObLe4W2cx z>tP+9Om3Ei-I%kK;7#DU@Y#{5dDpZ4!Di|iI~&f;`annRC!exL&0E4%yifGZW$w^P z5>~>8k#l!&{WaUt zJHZjoe9(EC13c#!kTc0KDi=Ae)t;|~PU{(0|Cmzb&ZD#1bT)jyuDPhCf2H)t&G_An zU$7X6yhMJ`ce1(P?TR|Kw~btVixM}h-1?QPcd4(m$GXV3h8XudpV3~J`H@XraJKC% zSCW?$9ChrOx9cO`>)Q;*s&*Lfa~f;>MPp^}wZ70jfHC#=yhC~M0-xYeIwBIwZokt$ zbbrr2-it1<-Yx(7Z*4^L!FT%`V(ZbbJr~Fo@y#y69jHx|Ii$^Cv_f-NU?jb@+~;iESDK4zccx`v3CQnN%kn8C$d$;##86a4TI}|+%lu~XguK-y#KU5Hsaw1%FN|(bxA>vF z^z3hKC#gS#UfOo&c1YQ1eub`);cCeheRSiS*T|ej-BP+M+HGb| zqMjmRTEy361C_t4Xn8a^5WT8&SInwKyP{WR%MZ(nS!JK2{$2~PYNm~^k(Jsdk05v4 zM;ix#i=L?-<;p4TGYgw*VlW;#R(i!2x0nCB zzAQe<9#p-1MW@XC`iO|kOfH7Q+Z^x)2e~R8))zw@xje)dP2gxdxu*0Eo`p|(T?QB zMBd4-OKS^T(DBUD(a2%$;PzthR_g`7tZR^cGu&qU6+e#Hv_kMN`Mc)uZR9%9Q^2+C zQ`P9?ZkMxCd*$$u*Eg;J+hrg^}fgYI8FPi=jNP)pEuSn{{*_eI7=iC0BU`+tc~hua)~{GINfP&dtPt9p>Fy+AF-b7i~mjf--1qGWIhk z^1*oe6f!NZRZu3=-PiUPJxC$iplXzuqptpeJI7J8b-$|sn30)B7Z7|Au%Jj7)`JEZ-&efzI$ z+IQf})^)7s|57}-=B|G*)YJ7!c%5l@lyAcK*!l!GD4CJm(klkUh3_#9zu}$ql8Wcv zj=hJv0>loQel5A@@G%I*il529GQm^C+K4g>o)aHq-FUu6_gKwdgml4d>XbfshPa?3 ztAO2P{wvK2gS`vBdNA4NE54O7%0mZTIu0Q_=st0ETgzc%J2PE<&4rtD0=1WN9$fk!IMlSR@a_WX7TuVCWE}Bb^OyNQ%;aZMN(V(} z%^&2=Uo>bD{9+n?Td>Cam~@%P*%Q+>eA83Kwe&2zPs53iMt9RV!jF1a)Un^KdD}pl z5%kB_X@S=(@DnHdfP$HicYC4ll4-H$&g^*9tk51>6foQMkS}gFdW!OLr$pj~J(IXk zqb}R_k3JV>-0~f7?(AC~JVDp$+lyQ)=Hn*(AczMB7X?%7zTnfB$VP%mQ(yMs!BJ>d zm3bk_x&_`@kFE9SLT_8kyqT<{>se3N;Ro}5{4}n;8@(yv+I8R@eLoGnzWOJ!40Xz{ z>8P%Sx4`HubAK)TZ2|rLZrgvP?dq<+fX4~g&T59W+4bzH*jSuQzYoKI6tCGlOKVek z&69#F|Dm>$f)|S96XSRfdf(RGX`>uVENeV_Eck~U&vBDOl~OWD>uxr*MLF}d?!RQeLb!4jb}jM28(6P93-O6rh`tH!>Be}Uo5wmKCw>92 z4)yi6nW&OM#;h2W%lgqiIC7tz$MUUV?KRrJJIy)Gf=m0H!T|b1+m~xO+w)TTy$;%a zk!@RYl8u8I4y&2I7jo9f;dRpAY?>DwJ+8fGjO599GhT551)P87Ms9MavRCDT$6^<2 zK5VRyE(d;xptt+D-)^jrb-xY!3o&|+Ag4*64PkE(PnK_7ws>0#xkn~P=!HH1oT2_P zUckGKB7b@+0x&Q;fWD6$2> zXFb*f{D1g2k0pOu$w?I}@87kjv#k7IHK)>A?8hTPBWO=excbF({)m-*OJ|ob3wSd7@Tb+ z-$HGt+^@QesrxiCoc!#iQ~BBFRNWJ(+ve@B=UQv2JF2s8^*Mx%S@K>Bc3;&yn|gi7 zpBLAA-ZVgbBH}at>@D2?(wJ5*)&II_+`?+ zWz5|&=0bUhX0T=+>K%!vklmt&xyoUWK>E=v+Yp^)}7IA=s_Yye}^+#suZgfq%1Djifb@fzSKxf!|;%;HRF$@;Q2 z&*$Bgi{2Hr=^efl>H}rJV7|qlX0d-*qB$LwY|UUkywFMEuH-|tQvzR+J}P@k274}# zWwj@FmCs_%yK+5?<}^WTGO;rD6&ykqYo zXE?Z9(kHQUB>nln&e{;4ujY*84sglO`N(QFioJpCfeuUa&?(mi8_~V&{k2y{v(K<$ z(~rg=H_#`^22u10cs4BW6IJQ&JR3*&lf`)zb=Y*G&=U`kb44`43oO~}Jy^84uvPjT z@kp~7Ke>C1b+2?f_BBQ4>18yygBZ=p%S9er@1OKV@B@ zBaBlY*V0E|JbNa6d5?1PP1`wPT7&lZ_GoRskZZlebLMpiF%8N`TOC679?SpE2~iCL zIDGFP^hvOI+(lgMiuAawa#w=^CbfK%GQ?O}l#Ms>9@!QpLr-KJI+Npo&m?qX4RqyX z)m-_nnAYH4+8bL{>=^$QQ4Q>a?Eqhc72t6c`PC=klN2B8-=v&s$TIm&j5o6=-TD_e z#5l&;-#hx+-)_}9y0^O({~~#pdl4TU_+jV%TxcpZXNc2!wLAELTyzES(b_pR zRs1zR_}1{Yn!amoe9cwN*BIto@1%pBh977Q8Soy-oI0yUGSy(p{F84Sk^#B*aIgH+ zt9X`4-N-<#NAL}uG}L`ea#^F+*PFT4SG4V(2goKV-2uWU_d4n*?;5M0A^^fX1u11g$UooDuSPq?0!q zdz8+1IG&l2iVoGyDrfFRi>J~@d;N0`h@MNv(fG7Z9~~{)Z`;2;*c^A<&phrFO`ohX z%DtKxl%CzaS6fZ1))MpeA$ag%s(oH{{kakGmSTdQh2Go#^q<9BI3Gaw`v-q?S-b74 zz5<>sx6y1StA*}T5=`t>|qRse7-6tx#c|YAzzLBhOPC~S5)3T ze#4NzrRsh@wte^A6E}D93GoKYLu^B|8Fv@Dm-dMw;}Gvi41N$38AJa0j-6Y`5qb8q zEvceAhoA{1Kk>E{vTyz(Yg2KZ&vShmTr<#J-9N{Dn0xXyAM+t+-~*TQ6!Ne7?BL#} z5&rI$$__6iUO{|lv$x?>*28@CmPb`DF#Y8eWG41}4-Bd--cVm(CVseK%(~)f8MS4y zjTcb%*Wk1*lR7W6Z4lxc^MKi>;Cv)TDm~~Tw})hhpThGD@oNvG|A!uC-9QJ#d(yGl zpgZNR0|)M;4-Wz35@-p$EO#V&pZ2^@Uw32RIo`Fcni*(E&i@l|sL&e!MQ^M3_u6Y- zKreVZ^6X${0(;Fovt_>=hxTZWXENTO0pouT(VkX(F!_t~cHHqfd_GuL2Tkc1E6Dp2 z(a*5Qist)^Z4UUnd$g9DnQzh6GhFw;Kco>^$i3YASb^QfCGhu%jH{e*yBBBWr6b!& zHgAI7Ywc`VgKur-2dTdRcaD&&4LeOVcCH5LX-AMx?R(^6;ruJW@NmqO?5?_L*YkV! z+a52MOck*)Q+znB(~-DN3t>si-5bz1{xT}bYt%lE)*Ynj9O%$4K|e6efJuQAozSqJT% zXAk|SJvHb8=g&BTYJb-gS+V`mzu}MdbJ4eLf4H+_tPtzeVYU{RVsntK!H_>@5jHN_ z{iNeHcRbA6OA4;R@88$Gj-D-+#Ik{*V8R z=58WuM>Mu+p=hamn-haBpRf3S%1AZ|5hK;a9!%+EI`;! z`Gr7FT6=@LXQ_|1+o~8G)wz?p4wt*VdS46{E&@( zCw<)+muJa7vy#4gDfcn$%;8_{YmWq)6{mSzjSOgr$vcEC#V`26zxGA+?$?odu>GnwQBHnU%ggc09gJ@(y4pc#t@4Yu|1W1v3D5p~na)x) zo{#yLUrZKr6V(cCAve1VCgInCPR#r8W#sRg%wFF*V|l=*%eSHXE9M{vp3Z;aC!^u( z#PhhE*540f>*u@6T&rIdt+8WD;(Zf4$cJ!bq$3c%+ys*0`@-dO#Ag6oPa3#uU!J#R62&%^gY%*z!W(28&8NLbs68n8%Dn||^|416deGY-UOM6^_NZmvhGG2w z1|PohE`#3I-!q6h(o;;CWKMIXdzNtT^mW$;E)mVXXIdZw-CT7H>ioWmxmkcsO#jLe zqdXzDO$|8M@V%h;3i8`ujSmO?Rk=dS+-OFPKMk#Z(wUd57*Gd#?E|cn5Amf@oQDf| z)rt=NArGFK9$W{^iuult0b#z(Lt}Yvg8SeB*YLcgPg-RPzTrMw2A&Y%>CE*_&`o5y zs+0){R_HbG44fa2t-`L`M~-ZsT}PR&cgoFwl5;jP)V6Pe{a*TeSG`wL_UzX^$J^i2 zx7Eml>YsePVL;X6zn+?_oRW>5xRog!jCIo2@c{m#e6TA%I3PZ#;1bnyc%;Q5X)G3KGZ8VfX-eF^pX_w;!_@AX{$ zahbJ>N2*rtP4T98sk?n%VIXG>@qlxFhwSYLh`ya--*6IZeFU;5yb3w0fW3*mb<%I_ zF@}^!JTaJnzTU;x9n|eittfth?+pF1c{_d1tj)1ZNhJRF?HTx0vc?Sfs(q0P&Skh6 zS*qfBa?J9ba3sw5+y@e^(o}>05$$%JN60zZXFJcyK0CwzzT~L{d@hov1y6o>*V`x0 zzI^1Qe@*JFI^>pW&XyKkSTIF$c0zD&j|i`JXGCHj$d!DomNH7YF*kXv?||=z*gVe&~yg zr--?BlXqO>(Rx*zUFYn613Mq*h_knK18sZZo2ql#mCq0}X@Y@4uiNz^Z_O?hY}f;> zaB5u6hr{1ALo|Ph-d0F(;r!v$wLpY4;y~dWteW#{64&QhINvZS%=u4z=&^ zCk~^6_=~5|QCys5S4CMrwx|zRrpKjMIPLr=6{*J3Tzt54P#k*)!4EHxZnY0lA1la@lKqSP zjupVhzm_};-BZg%|J7cW+WX^#f1Brv;qNai$gd;er^Z&jT7ppKia!OK80b``S-}WnXmr!@vaE7)+$aqtRlgW zwc-VS6|Xw1+f*m*{%?5lpJZ?0%qigLCC2mD$bAO?s{-20^p3WC(;e12aH$qK>OhwN zegEJoEgKg9{N%JAZ=M_sE``W*tmkJ~iyJ&YKUw#q$t?$Xm&QB8JL-W>pa(%ymQoLL zkX=t5va-sn9&$NV*Md8m|MVAKwhu%4E3T#TzXAsN=>^WE^L0JmyCREyKK_|6V$U2= z(-oJH?#N!Uh?pPtdpYKUIQ2cQnduXO8?hJjp@Z3>E%w}&aPKdqK5QBeuAh3IDn=^Z*Eg^PqNz`99c^v&`Y@ol>9WgU1+qV=?C%4@^N6eBa z_TI*=-nIGJ5#ELg@U&E})6DP69_r zjNeqX7kh{Dc^5$QecjB?f*BJlZ>J17|Ef#yClQ@lMBclBcbm96S6Ym1yT-ptu_gUk zf0^YeY0n>Bbx3O!SXMV8pF;ON!>O-?wPE7~GC(cQ<>PW6wB(~7M{H+1erc=^BG)-5 zRWeWUbi;#cv{HPi)vKQ4a}>8DQg z;|q*S@3qcE2W4;iF6}SEXNtUJb{xVQ%4g88^eC^LqvI=VJgkl5nSV*P7C=KioX^Mm zaemGgjrxC#oq2qe)xH0pXC}ZiGYKSQ4`31y%?v6cONiBGlDLEcw}2bgCTLp|g4!T1 zEP;fj27=3I6qoiAT-qdx*WN;Pdg~?N76cLMzSV%Xoe;LTW`LOA`}531xZeBwy?%ep zYi6G3EZ_6p&-Z-KIpoiKFIn(_>ypwx5r6BEz7~#%2{e5|oN>Tz+WrJ{yWW$03UJQ) zrqTBKspJjeTiWyFl)AFD#D9w}U2f|bVzZ%r_~Du}FGSue@FDGe<;bvT<_JXTDf?mj z>8DN(ZUaW~!R~2VM?wZU*NAgvCTs2NTYQ1{iYEuR>?3cS9LNs#`=3V4s3KNwGd@Wk z_n4n9TrofFINrZ0yU5=&2AQ{B`t<{v3p$MYGPB6P=U33YBBm2pf3~`;YV2lPA8rMA z7U##i{3W^vFz7x{HYug87`TZ0hPq0O-u>j*#!(*~yxWSTlk;KQ8Dc2LV*zcyxQI1w{Obt1miTYi<)O7^55 zY+D@jVeR`m#~9!zdS|Cu$Ju%43gW7p9wm;L?J{fXWoxt#G>PA==QVtZz0W0oSHHjI zx7NY*`+NVw)oD@RXU)0(g$_SCf#g4X`B=4yGnEUSS8I)!#_zPTF3(m+V(`!KRVVtl z0b3@%5Dn$y%RZ_PlNhPp_ncVXFn!IzPHw;#k&Iu9j5iOSwo$)ZeEyJwSSk578Xu7a1j4I7r6zl8O(9#VdvLUcAgnuy#k%;CDs*SuG{U5_i3(cU@OmHOv@i& ztvJrOBD*TO2eAHO=@a}`V5$FGbS$SamInDQU894Fk>s%tt&6@@F0ZQcMZsp79*AI_!9fl-dG*}NsTN~ijlPoahW>j# zx087e=YvW2=RNgmVrNNo&J*Td*v=7k=l|nO=94_re8hnb+xx?RVu1W+4X0o~Ie0G4 zMfNZk_y#}7m0(Pqo@z{#{^}ZG6m*j-_Aamw#8%UgYn>DS{Y`Pm`5@+ugOU9qt)zIB zHK0f8V)L+E$y$mlXt0KwiC!_ln{8KSr3C9vGlD5RYlo(y+f-eYQbzTMzy~Gk(B7hzH4cLRM#qE_-FqXtVPM ztu3dtEmb-CkN!_>Tg3mIAO5Gc-J$o$d4@A5N#_S;vWHW1fleoLSl}|zr(?iJ9D1|} zTvY56PNTR!r!=Y~eh=;(yszZF=o^*}Kgc4Me`;P3~Z8@!zh z-a64A_z9tD+Z$|KSmpb@ZC@%FlW=6uU2kv%Z^DnRAMFUT(K+MEzQ4}a zF~OT)`h>FJf79wS@A;cWF3;+FpZjw4#+_eopLgg>__lkX59LwYys0)b&$D4a;X91z zJ$jSL7*50qWY1Zzy}#){jNrS_dvn>@!6|&d_nH-4$Mf&58XwHU22ABy#$hX1p6u@_ zmG3>y*dtjhh9~a_U!tMtr2iO~wofm%_d-t6dY9(>dj0{=Y#Q3n(%J&}z@p(Vu|pU0 zyB+#P%V)He@PGEPWpCFpFS`VuTE2=L7tt-oo93^%msEH>Co%Zblkr#^#iR7MaK7s< z`7{^y4)|Wu*>5e3`ifwuc z%Awos`&f&3Cpx0zj#vrN`PsmjPUaDn(OSUC=he#3dYCc76PvE3?E&79JSldP##)5- zT<$jMk9msb5TfN;e2cu=md95+wifJnx~3PhF6&`l-ZuJ;tXY3-%vwD-#Zy1l;(V2q zwq(gjjNiBCt+xHQ)vYZyzr&{|VE0C0|GDT8n@j)M=U`7&=k%sR$tqO z&stPWe8r`;;d;~71%-o*30rxlGXY&m{*c@2U--mwqp8ru-kI*kF%#BhJ;FG&cjtsW zt}MHX@e96scsO^-c-zO6z0Vh4!e>9oV{u&YJ>~=T#e;&+st)*Uk=)l7#N_^ek0s?A z&1L6PJ_o+Ps%&y2lC7Ws8?f3-fP4@ps=c;R^tMG01 z(ob%@{KnL_yLn~|Je#3BY1T!ckw-GabJ54dUOz3LO?bywRojfw<~>`tJYWVdM8j{otIQZSd<=z;dZ@OOA@wTNKJRQ>){Wu3Dt=HXU8|w)_*bbFkJ6 z?{7M1Vi0E~CADHz*~2Ys%GBQGH7)b+7}Pv}y(6clQgS_b)H%XM0c}Df+AR5@P4G3V ziF=C_#~I*5v(pv)8hkZPiLQ-qgZ8f(Q9Lfd{@i;K?FR7Yz~0+@j!qPvSojZwL73se!$mFf5kSO*zYcXU?q4l*vlr~-avb~&$6!> ze<0P?x$FbevulQO)&TdgOV2UigRi-x&9a|)cqaa(?)|wdlk8`Mc_v=ZRXO|%)irsB zZdZHH=l)`x{p>h=*p95y-tOFa`S!E#ct)PVDFmugz;uhND zRLMN5$-#LQ;5UUa*z0=FogFMd=iC9j@68?>#7F4y;tD!jqy^vPEBt^@ zV||~o(r9`Dyfry88uPdd*iR0z`Pp4|Y-1bcB>&)kp?sIE_;}Xk#a{X3sl;bKbEJ0j ze%3n9TNf`l;FG;eGe*1u{wtzaJpRv zXVS-Y=V8;Au`cOm|E4FkA?uRT>ZvnI=T05RxjSoe6MW_9=NpoWjw0u?%1uX&=GSLY z_cPP%F4nWY?3xDn`XD*l!!n5Z0@wHiBdK5S8P~?zxS7M?*Nv_b=OmPRryg{A+Pa-X zeV3j&c&3}@UEDvi2A{Rt9P0B_o@w{%rkq6|diNeMXY=2-y7rEtC$cDSBYHDDtaYgy{M$L3$dOqT36`VKH#TuIv+l@aHlq|?s zuPkOiG3y7}dyRsDSjZQwYj7qYc{irrpXTQFy`nFhd%hp1Il$o7)$m9;`%Bm0t9f&` zWeGO5r@auGUn)1oTY19&57VBPoFwn&|9MAZ1@nE)D@Mor3&wB&)v56GSmw0I3-|Q6 zg5Qs0J(zX6>#jPU?j7kb@G+NBopGo73(m;%7o16K>a4T<1>-0A3(lVEFPLzizhE@= z$I#BHv^SP^Ph&sc=_%~p$?z9!P`f(^1$(9&p(7=nfzAGfLlceAL2^S5j4?t3cOolh zp?;jqYbrUAOgBeR)RkdgSR$a>ea= z6XWQ*Lw@vsKNriw-@L{!88MvJo!Mo&K7?jK5{U_`fm;EIM z8>wV&uX0uJv*MAQc}%<{gY$JYS9Y|O`~5w6$mH#(6_YRK>V6WQolDGs+}g%$_KB{B zmuryy1!!MW!Z_-L`Uecy;N%8^X(mOaw*9oW>t0ZudmmaX9GHK7>6`N@;p42$}4%z1Dd0o=)HgDtSe?si8g18-bJ4STQ z^9TIbd0WetI$D3w+c9~NP0c_Lbjsdf4_rH9^N>K)FRK7X=?d-JQaoR>c6{=H`%dKiu{)C#BGKCT&-059yH7 zh;w6cWDI)l2KcM^{&Doj`aC*Qd06`Wb)9s6Z$7rgH;M5(uq*%0da7v2;!o42rR5J2 zmrPmsw`1#S@%7dI!P^C6ijV%0kz&>ti(22U`=30d7+E#-gh%||kii4h z{FY6_UTq?`F*2EN@RVR-*L z?8%+rHO<-ZnEYt*qS~pXUDXd$U+cPlXf+V4dkcIoKz9m0aygrH?&_8&h~>~{og=kT zJggX>@@XFh{&zG6;$&wB`qBsHTEAmXzYN^|z^AdbV$lTK4F0i`v33n`SwU>K4&J@v z0`Afvzlt*ogX%+eTyRX0EYMyjaLqx^uc2HDIK7gyzSaYq+NhknptpfGQd5knbNGE3 zWtw7bR1oX4{m@uEPx@TEXhN@naSy`}84WL>pWB#+6cmEzI@qL8S7Lxoa7fCVH2QQu2SOILC!G+}RcI5kH z_&R|h9(syrS$E#7eH4N@7nt9P{YK_}dt$%m@Lc&`Kh~$pr$HWkPatoM#rEak72iJQ zrkb;lhL-B1ll_sYjD51R_XWj4Gk{a)z@+j02xE{=$zIJqZ}?F4^O&QfSBcB?zL169 ztDx^L|tZvCSy#cTrD# zlMW1AgYFFc=Sq55o(8i?uz#BYnG%ty@L;74U|5WctZG@-pY!#B9(y zXbbP#=vmc_dm%7v++uDy2b0@I zmT|rn>srwEk9GJh_hF--AK9n8$W7NUPU+oFctJUq!@;N8X@W{sbu!Ou|Dy2u zF6IAkJpV-T|DEUa#q-X%J)O=|+Fk;#@8OB?v7xP{oFmqC8+nn=xFGwAd@* zjoPEVZyB9Ubvo;iS2CXUoXVcG- zed*|*z>A7&8gcT;Q`=tWe+7409C+*4x>EX;y=Z_(t|GQjNs++PwG+<*GeR_3Qiuutq!zj$K~xZT?b zZk4HQ3*c2nPdo+4y5o4Br z9<}Z1ZKF73$fex1BgEI~5p?Mv$tny*nRvz^` z->VO!N9T=1$Y)jDpq4uIw5#7bheh%ByLeW~9jeeMq-Vc_->(J_A?RAeyF})db7)^W zU^wMPznQ#i#?BiTObiaj{yho})#eC%Ta|keA4j^RLVCG(w5|8RecOGM6MbbXe=Rw@ zsi^h0b@=qG(KVdEDlrc^7VlQD-^k#eFFnsCZ{r`{C=dJ5Q}Thq@owe6xoYAIqH&88 z@yMCnPo_9grNbYr;*(PE3{Ec6U1fElW?8(-xa*GI>!6KdLfRXA4Zl@q3$Ulo zaR&8!J$$G-R?w-tr8&RP*d)J9W$NZjk3?g>&EP{iF^~05>AOnc6dr`%3hFl;??=b> z=G$}C;V15G81Ri{TZ}U}w}J7?cdztC*Uq=ua4zVb0BjZ9Mb#98^-TUR;C`g9DPKqX zUjDBkzqgM0taPD#V5{=>-WK592Y>1Lz?|X~%B}$RO6KOkxk+%yu4Kuc_1-LBAImm+$&A-?c^~q(sEO<)Kls2G|q|T`$}@ng-h|m=CtAn;|+=S+wfEGr0rhfECx3FBVvyRIsG5# zoBa`KLpjSGyclnDM&dZmn)*XgK?iZq?F~ozQsGbTS@15-Gz<^me3aZ zD8{x5zb-SS(K~??9;k0rE$H1s9s53};^^AIJJ_YuhyyR6y|3xBj&o&eNA<0Hi2qsO zM*F-MfD6&6vqt=OLGN=H^`(Cr`yJ)||NVTVYZ(7^e6Z8IZ@VEqm@$mAF~AxA%l%v^ z9ejxI&D%x>GhO~r7PMQOTpYO;Jyp7bd>QsxT+JSk8fZBZ9V36{YH0mPj9>nOJnDTh z{?i5EPWC~$)fYh9#j!F@aQ6xFGaLVenDCx!nWIQY+!cG@N*k(QV%JY;n@rv7n2Tu- z>|^%$F6!0z3}9wIyzk+`ibZ7i>c4VbwdNcgY}=@wPWwo1Ei~!cr&U?lE7U8^uYG+Zo^kefi9)MI2%5($1`t~ z&O$p;0iL_)TkbUF3dU!5D2jy+Zym_p}k`8H)_+-iW;uqvuxU^8dfE7bnW4 z+2uy?Trn8!Q64D2X*hLX2Dh9et=L9|qwajpfe&>OyGEb)e0|w;#>d`Qc&4{Jx<~G( z3&dOhyBv{w&)zffkI}Xdx|SN^4~O-TChuD`p7mjyJxR^JS(&Q(Z{&I&)#dW z2z&JY>_xqrZ`}E&?n=vUTZAq;2icQMgko?=26fJH-{L{+4Ia$i;34qNi8GI-Q@ngq zm}hGbm>YfKfxcNT_J{GYxQlK-XXW~Mz8|?H?ibOSyI;*TTW{kWnI=99&uV#G{XgPs zc|3f2N$WD=$IH(tJ^BRqG){4*H>UF0{sj5je9)znD$%E`(WKroE@jL9fptanvx{JtpRGAHY8Vb?rw0k9Ostp4^&E@k1 z&)eAxtUmPI4eyTQqg>!z)*Y;0)`h%$vRO+vuq%apvsN}MkZd(pC%YPpU3H8Kjir>iy5|2tjE+SpyioDCPQ{nve zS(fQ@bKa{jJjj@WKC*N6qR+iHoSnwH@AKB42|>f){wrg7*$o;GXWJetNsNT=PK=zvoFe;pVa!4Ww zx!45N`w#A2g4ZVF-)z!aQR_LZS#eI2HG%s)@bfjd55KUUe08h39ebj+1mc~+T ztj&GPd?;IcbXe;Rvp38DpCiZmBTo_+Za#0|j)D}t`KJ0U;67t;r!qyc zcLwjmD=I?SsqD?0%HC}H5O3{#{(Wu9QsQv?qp7k;14DBf0h{O|2Q$ip=V9)X}$S< z;K<;PFYbG&K_|@GG9(%gb()IFTyED3Q|EX|DfAlIwumw7-ZXUlraJUI=Y2iMnbr7W zBimL&=T7v>IPlp?-CStW`Pt=>Y{l%6EuDKtti37cRPM~Ay%czp`DNQLdDhIj3wIqr zFP-C=hR;9J*XKai^o)6Dy`5i});9AP=l#&PcvxjsPUVNwhRP}qwfTG#y(2HA2 zMokqiT1rOth8fSJoFCNSG$Izb*7}fz4iqn1sAy{@-BFv$ggry=EC}?Hp)}{D~H)5&8gKUm{o-ryCl&Ue0N3 zVZ7qOZt!{*vf@q{(z~DeP5C|9QzfLq3ZSC_~;d|-Sm;Tv5>Au*rd-(qLn}slu3c+?YD5&730*ixjYjt zOzd6mBQ6^kUs5MER_Fa#ohg)0pucUg{(cs#XZKmk{%PTmdP8FMw#VvqB4fFX=~U|X zyVK8(YBlRzQUFY&drqTU`~R(g@}Qq?2ol2 z-&bv^Og?44puc~_=xf8)?6BK=iMBdpZ9Nfd%c3pWX6Xm?m_u@h48LV&72WO0PK9#F`#W?(1_JwSB zV1LG#tsQgkni}?r&vjRxbZ>_5-)Kj&#`?~blb^pBdtT@5&2OL$#lx&C&Tn*0Fmx_x zM6ixpIQd1z8)WN+W8qqO-r_WBH16y1FZ;&ZXL@gHp^dM}8!^q4XI@4(%!j_h!9Z+K z{$4Zjk_{dsvV*bvSqo{#-~VepXL>&AZ_TCuXv}v6IVCAOa@cSB)TN3+rgV!Y|3NwV z8P7$IuWR{3QELu&k+ovuy$dUQyWk!4caZhPo|a)oWc2a=S(9i_`b9A4ZbS3p%#m&V zkLQN^*X4#*Q@1YL#$9N&>>swmz((ibQ)GU@BKC@ zI11af`aJx6Y*ih5d$9Y&z%tqnAS-p${VV(}m|U@O=43_N3uhXWQW)E}+29Yl$$qxY z-t_pi1m;)pR{$P<8Q)|aG*I8;#+j{o)963LnEVH|Sur?Bys4=U{ntXhuE)`F8h;&Y zWbm=;dh(O>9>1jPN#JM9UCbBv!&8N(yLt`$As(}?t$I;?x6+2~Coz8G*Mo!0p4mz6ANuGdza6zmx7h^)u&NB_*a z9>06b>5iTi%t^&x@}IsT2d`^PG)JrYC&11bcIxMe8}Y0vjNpbFjNq=H5bv5vE^_Ib zvMMVIcM<-)E@UU+OfU zhIYh$qOuF$UJssM;!ZFheG8|h$Vndjvyx|5!~cpmcQVeIl>3Hpz028)?X+_l|3CYU z(Th&q^ANEf@_W+d|LAO-)3!%#YYK5W?b8^riSvQOiGGoN&1LS9%UyU!d;8ao!oJC7 ze#U#XF$r5JJ^i5k8}!~x#+5{y*jhWcr62j!odz@KQ9gEmy5f3@-DOiQkDNB0QI7vK z>lNn219|6Kk5Ie{-Lh#8G3ou-;7a1yRs5EoRvTX8)K#OkPw}Lj{2%2kTkK7v9pe9H z+q$Lx2j%xGhM!T};?9J}vz^J^?Z|Y8;@(vYUo13Js`mnmWo9j$A$`cvP7%ZC3#^x-h9B%Lus=U5%4n2Kyt7NFnx8eaEZs z*gguuqj-XKYLQobFPuI&PdGiX&Xh*Kmx9Z8*#pe ztW>cC!)$%LI3aCE-?^0GKl9PZ?L)~2tya7*x{j2CT`=k<1RVk9_`nbWhLiiW*IbA* z&c+W?KWh6*e74Ph9~JzTHGRXD!^y1Yq$@JNAmPNC-wQi z?MJrS@lX0bvq}dW`K8=(ehxn8fWKJrHzW9$G30G*i|Z=J z30`GA$AC^+*Rc#f_#H=pUvO0cgAX~el8Pg~zV%jvVQiKkcM-5u!ta80FSuq*?X_vvE+IM4>}KC%b?e07dh(Ob1SfOX>=!MV$G3d= z1LUc7Bg4$KcFd@%p1KpcEHpjcos^HS8aGvQN$HnmTa5|X{MY~7$N)<*^iIfg&k=Au7BOj zz*Pz_tfHNT_8Q2AtVG<&(qD&O4>27Pg)yNJ2}v!h(51oY_s@CcYZgt zIMOt{IMN9}Ta;~Ke}p|>s?%IMtL>g-WGJ?OLVCtP?so#0WWF7~{06vy&-XF>vv`Fg zSXVr;F&+6i?#SAq`&Wp^w7pl*x9%uWgHlCc$nHL;iM|5m8K3Ye@I<+|O@~^B;3nCcRB-@#>G*j}7OlSlunG z3GF3z`PH3971li=QrVIM| z?#53YQ+K|-?)sbF{E3VG4=lc8^W!g)*Hw9w?XynM9xRjmu#bSLl6MyC8p!XYa;H^Y zM2@uPT=Kc@VqG?86?rX`se*UC3yVXktg*0OQPaq{!z<)Rur~-Di0s~Pomm{|fM3uL z_Zz{I&|h+ouR91G6n{8Kd!zZ5JgDsnH?Y5ucg^5f?Pw1B)zv04#Toqgg3Nmg>^8@q zXmc;m)$V`U?T&0y-aBw_I);rp2+s?~JYbZq&s*pSy$s*#{gK#v*~zc2E{XszXEznw z{`*s{{-ej456fTKfIi7HiWVBwcg5h#L9SYOe*Iw1b-NEd-$5QUGxj3f=yqU;B_yvEc?KtiFd|8x9q>bI=&w>BrqW){Au z`ujgew@}8)%pTsdiuo7#n`R~q|L$$(H}?$c4bSAeo_Olj{>bsS*rS3!)3u)O#YSX1 zH1#=l=L2&O_h+?JS(ZxLUD4)OK+u(1_+6N5!-^usk#s0|H71Be)bRJB~XntQ$TY7#7p6Pno3U;to z+K!BOdCW-HO>w~;bGQe2oEZr}9=#8^b9&wRonz1e6CK>qmA)f9-i&ly>ksAh+;?6V zyaX)syUUG`o3revb&m>Jr?!w8jT`WMYLlZSg*$E%(YKXdG;OK@WAUvXlJe?*fq?#P;)Zxgto__ z$rb&NJM49q{{J*0-@V1Tq3_G?Iu{=P*oYkXLq==&5a&YHZf1>>U-D{taJ6A1&aJAP z>UFsrbIk1b#1ml;V?mGVJOSB}@DN8RY2dfs71fu8N5n0RkMWS+%jX%WTT0#VM5{nJ z)w6zntIaNO>e>B3nJ2k;|IPH}3RDaLx`o_nyy|cST5#hN z&p433QT|9a&xrZXlI$IKj`B5UvIgypxAUaJ@LLxj@gRCKk_(*&WV1OF`!dtmbin4v zk-oo-iuwzxzdYBm$H?JsLwvLY(~ZdC{JwSj8P~J~=ArOLo*5VHHkUlm^<-)*bLL>z z3!KrKZ$zdev(sw)A%ZYXN8n>0`||eRXoSXd&!EoZ+a4kT?p^~-frDj9=`2buWV3*Nt_h=Sm0>ym>J%e92q+b4Xe7I^Wn(7ZrVkE@KKNO{;>MI z%pVG;u=fkNi;2lw;G&EAt@uOxPoF^yz|EfZX^Xn>5xlHJ?T6<3@hMz=C2#9DbQwO4 zb>zIU9a%2Z7`}Qq{HAqVWURwoIwkxTI)XK(?W{qGe&|oTuWiI1Z5;7lbjyZrUH^@4 z88+R7qYc1p;Dgr0a5T-}PCE8g-iTdvIjtSt(9Ygdhi)67Upq0#yg~kg*}@gStsl{^ z7yEQtjDDh<{(r=`@UV}#5=ZAD%zY(myYj;Oc_bND(ElTbCy_Ji=*zbF!IKoLblJUej3F4^wUW{ ziY4s5$shVztd7b{SBh_>FT=>}U*Lmsr_mjk=RZ2zS@)P?PHO)zYTH?|@HjFl{ZsB7 zNy@r0Ycubyuga%pv(K#vT!fKZ_~8oS#PQ&jN1vd7?JczL!|)n48OaSlw4<>$xOMl@ zNPMfTwnXTf?HtI*?uIFXWK+N|D1K{LGlF%TEmV<7+Y|_7a9f3+cwN#r?Z69k`dX zlO#*U=*1uN>!fnzUpzk~n(x)x&v}CQh>Wef8lLYO0}j6_oYIxfK1iplu`64$>+0sN z=viGmI47lYb=ex1)(VUo@t9*n;Ar@CY~`!2o)Tcp`>KD^H_Q{4J2UV*$%`0bFjr0W zb#os&act!W+j%*i%yIYfe;;upmHV9c;+r~nDBBp>{RDBM0Xhf4RcE#lS*5Xiin(*x z+98-q!IA5K(c8on>|BPQQLj!i3*2ExZ@%!_0uPpxlj-8SG{%R;&MS{DkKsETo|BBW z++9=TMk3KlS2=o8&QkeWN}1pVZ>?M=qzIRCEh`+#~<=9?sI-pY9LU;wy3vMEVT) z;Cz1T*&*J4;~d&Hg6I30n+pDLH@-RirCgjX^=3h9f)PR1BEnC2aZ#xCRh{+fs@@MS zr_qj;usw@&K9g+ybeMXKMdkhQ#Y=JIo-jvxgSlj>nZ9HHt@saDV`K2;Uq~_{z%e|) z^OmOvw?5;IYi-RP)GB=?IJ(CCtX1=k{hvkay!1;Wq&nE8ZZCDLdSZQJ<61q)K0d|{ z_0w|Zpw^+(-!jUG^x-27%+J)$@wfaT<>jj#J(tcJMgRJ*_e-EdC;H-=pBqiJtovz> zCfb6B38fmRxqi0BX5l0D-Hm*pyQCjFsOL2^+^fmY)OxqEq<>Zh_0Xx46+h7Y$ps!O zpv`5_CI_3b|4wub^MB33x|WeM%DOPT7KFDWyN^K&^v%D)_uulagE@E@x!JMp*t)lv zKZ?&f_`Q?gdjDNHcfB&lJHY49=w+3!qj5*EFRyaWzKtxvBNvzp_ttj1jz%96s&0dZg&MeJ_s6cK)g1v4Opl zPv3O%T8_cpy^1mWBMa#78Djfs#5cbGrS=MP?-^@SC$Hi3uZSaWH-Vhpq2%liBkwtp zHJ+r_>luGDG4eu#adZDGe$o}I->95gi0sc{EW{f3tbZeK>N;XeI=kfya>++$UUV+` z&FCb~aYA=$eGnZw>)&W6gS;g@?-~=|Dt$YRIYndybFc%u|lwjyn8k_KxO~ z3z2I~=wfc#Kwr#5?D@248NLqPOWeQfIwR8MNU?RCAG@yo3B=|0U}q!NNdMIKli(3u z73U+zd9ERSIF>t<$^Uzjwj0c;`GQ|DH|=#7PbjbAsUC9IXv+^SKO_FPdGJG7TBDo{ zFLe-e+fJO>d-GJz@i#(M@P_tkv!22l!WH1~a&UPWIK7npke9SBC5DV|asQ9WkN3Oe(Z2RD*!%Tzi#dD4 z^l3c^{@#>@PcM09kH(Sky(PlyWNZ;}Z)k9@Gequ8lXNLE*~1=uVtd+0u5%BY%VzVA zeSP_Yk=U|NvAIm~LVH^n>bJ-WW-yw`eO3f}|!JhO>gG^|Faf}WnFe0Q6kwyuipFJp~B^b(ztnMYL;11n`7V7L3=io_PiP(+)#w3+jY|HXB* zmq-0d_Vx~}9h|IN*i)f>^EEn$r5c{y2i|j~6T%s`PSD=_CO>N^&}At3O~kl;@|lXX z{!tOt8_Kn5qzpNk`GaC*{K(fza5aWl=U(`K20ASJon!0N{v6fid|0hnU&M3a_XJ-@ z_i3;BRdhW>d*~P=d}#*%0&jtrS@**W_Oo0wxH^B3?>doLYv1j!I z&*qrH-}9`3_Jo(k1?)BB+umcK{oy}4Ls4tZd(n~N`6kn@N3ML`@M*v<+?O6+k@yw< zQziJnmN|%I;40|Q5tD)C>^GDQbRYxTdsvU&l>W?PEk&~MGH_gjF04adq`%IgKIiIg zDyELs4DJ0WHnQYZU*_;{R6qRr%+zCmUkrbNc&V5WkBqI)iw4jOVoub{o9RLQ?1v`16fl z;M0HujkS*PD1Tb?$pgn4!^7ySMU+wd>5>8VSQ6(<5&zbU2VUWxY53Ry&9puzdy^o4 zhOrIkBi+l*K3SjcA^ki4koH|2YCmT0)6rU_LI2EiLj!xR2KEasApYO5sMwCFlf*x3 zKxVXtL7&8)jY-mD(py(TC#@AUK)dD#NZtB{KBY&FOr@Ls|*0(t#PqA-znS=cV(E1@qa%1xo z+(F6vEl)Tiw~da*&*9A@6~8ZzJk9fEzjyq%Gf%Vz+kec!ZaJ`DPV875zQCZ?YpIj> zOmXx)>&rNU)ua7k7f_~zvc;|A;T`fPj~E|J4DQD7*4m@+wSe{Qrk{_|KEmCbeG`HW z%#puE7U9R9YUW)XoHOIM>@_mg4@qxuQs+>G4ftw`ttddD>S`; z^I+;Z6AgdE!kz^B`X`m+YZ&tTxrTZC_6CJ=XZ&+ZGpmpIG{Li>3xssMqvg=aFk_ z_EdanpAml7XlQthzCLIDW>Bmh@dcYMgIm!*oQ<4Le#sHzRFfn6@&AtWPZm772WLPY z#CM`?1JB<9=JA}_fXv$R*bw8VPHg!APwS5C?>*$0#qP)sqc^l3E1j+VxTnjvKxd^O zk2&Zo>FWD|5j}K&F6Wmxqk5CInPlP<=q`K;`5<+U-YI|Eatt|UU89!sNSR+r--1`^ z**2Z;(Rzrp&4=mik>31C;65K7sH3kiIVbR5NP1McUB9HiDSYI+Tp)RbzjJ>PwR6gi zYDYh~;0Ng(jaB1QUFJMGPwK?E7AM`;;%X`OPG2%=rtJ8a@MKGB;u-Q$gS40F3U zbd0dXXZDUmS=|bmiy4HMyT3M@CUf6U+>m_6c}3oRC2nu0GtsB=iLPz#TWISF?n-Q=-VAGb^2@FcccLT7S7REU_M7ib zKHHJ#Ii@yU4atd)1kYTj+f&7TArq`(Z=%ES)R||wf8`uZ$~t>xZn-}>&OF;4Fo$`D zxp%pDx$aFap&y^SefCVNeKv7Y&tWspH^YqgQ&)YChoZ}4l1a~lbyj9}0sDu9Ygn{i=BhKfXSC>4Lv7}f# z-51c;F3PWUtxdk)Nc8NYtlM-4#*e(fyUTQX#yE1^%N3 zj6Ei4KvrF{)8X`7&N4>Wv;sHGTVdm(#@a>s1W$@F#vY%8x<}}5f+NKj?}+zY42`a| zUS>>5o;$1+$rCQW(5vySHHUa!H%Gh2f{P~|Lwt8Lu4eG@2s8-t%rKmuS>XRH$54-9 zBzQh|Ci!$m;pCrP+{7<(sU{UdcXzR8@s`7q<%WoA%6 z)3=Z3I~gA~)bp*{&v(|{$rl?bo(v=2v(s^w`y=S{tRvo+a_b|>sh(Z#13Zs7 zrb54@!0B-p+i*YU$n-UtDV_t2@u6FqlCO16a^KAv#t*wcaCbW6eTR&po-=rd9S#VN zdNbXV?s+8nU6U56o9QqDf4=3RiahHM2bD&Z|$(ccy#1g29pN{&!=T zU61uP&s~lYw3WuYEYIQE*8?9yr#~CM_pYT6C(q;ke>%MG zakN$B9D!ez310Gov!Wfdu!JwbBB~?!Oe}yk2=S>bHQIPuzbguG`4fW;|52% z=St6G$r0#sChzNwzRNd4t)|PvT{oU*Zv9>Iq>newPp|zT@Ds|v z==oi8wUe{{9dUs}h1}P%bX{_m=c7QJc}idjupR=&0OjTZ$4|{<&x1?024*`wfq*&E z)5F@=E6yy>W3EpFKf8HNa^=zolUFj1W3{^izcWU9E^xX7J=6W6RK^$n!yxZp>H8^1 zoaai{8u5Oha@pf{`NXBK*<)EvosGZ~2hWAs_hl`8KcI0;1>bG1Hv)}@$MXwgP$03k zA$ir3_js4$ITf5#Q~rC-Lp?;U*^5iw1~ykfvQuIt1rDQ6S6QD1)|hV3jZ4}C*0M*E z=P@pg>1o3gU~PbyMJn$;4&2TdrAvIyp#jSrZbFIm~x>95F>?%4^04-h^N7MP801M{#`+K0M;g^zCr%2yCqVdteay@``1T!E-5| zOmyE|bigyvAYtk2fwA=E1uxo@#~QxJ=h+!}cHXMwjkWIweo@ zq8|XkM+|0Y~e9opaT%LaoGeYsM zoq^^hs~DHVQ(gOB;E9{>vB!vB3%Cupr}M$V-fD0&n)lNf!+zH8G(O?(4q$!8bx(4j z_LIOu*RH@>yziPw&Oi8QM-FqL*)+yh;B*8o0N!E7Fb{ipLi^23&zY__18)Ii-IA3y zo^qFb6u1n%-iEID5I8Nv@|>~c)d2Pqo^X5ivj-v9!}#d84*A-L?Yjh8?!WoIufRX7X;IUsbykI>h_J$md(8890TpoQ3{k?JN{R4tF?* zdA`H8CqS>akQ3jnk0$5UN-mH^Y%@NKr`ybg4_^yty?PjUy#g4!o-FltqZ9re*e`K? z=u`R8o=209JJWrM&~ziZt;qGEyB6CMhBrJ*Uk&`xG<_S8<9i-oR~Cl%(bJw^GnQvO zZ}@Kh{Ezc3%1(fGIq0uy>TdA7;f`m_vaNaOu81>^eoWtLcrpna>!tth67I1CUzYVL z{Ga4GaIq1Z13jJAr|vz={w>*Zz2P1QE)KAk;$8AeAQu~X12SxxPG120-H5HtgLb*K zZw0Dc?Zns|p5^fPfiaYKed<0J9Vz=>yyW%3Q|Om;*ABN=b@4r%$mKNfUc6*?!0p;W z|4z^69^~3Ngtpr$hhKp0UI9EamMl;H*D&obN%zSH^f^cRq&E(f7@?JBoaX>Cwg&z^ z)z!iCzoUoJJ^A=Q4?*{p)(&@ow&tNnuE8E`Uix-mrIGHt8af=nPSk;)1IUPB#Ce`t zx;1d6YrF4mc)>8zu^)}tt`7HF_|^knJC}SCkpFZ5`TK(-!}k#V95|hOgB(LVLzZj{ z+zDz7=a-B(9$zDk@m4bKPIT8=bm}V4Z|Qftdm-cQ9dCq; zCA$K$)sN5ydlr0|_$lL;z7>cEXYG`i{gV#pMBgOgbF6}H@!*289s@dOf)9;#?F?P=X~1A?;;FT?xe$Hv zH8yh>JcG~c8;4EzgVSpCeIeo_!b~M=7+} zd5Y&0c=0r7QRz(bEJoKDhAS}G9PH^>_DNtV{5;PY?>U=sA3_JDf+OX{Xq=i~xZQ6A z40!haWgi7P=KUu5zifYEaA5D!R|4-_ze$$9@G!mu@bjC_1Wy-!(dp>cHhA|Qc=HZ$ zg|F`+$1>23-5mxUtH4b+{5upJ>_ql9VjDD{yA_@kZo1K1Yt2N@Zr5vpX5c%B++W7H zF9HvV4tHSC64{7hp8F{CEIe@p8{1)Z;De-l)?t&!GSIpL zguO^yx-BploF7KMcfps!;XknB$=ISJ*l}P9?1EMr!$J7>PUOg=}MQw<$0<0p5#lhW&5$khuv=lo6ruHJ;(fL6=O_X`exv3#`z6=x{GqB zS+512Uh+m@E}zXyKVXiP;z_|izlJ~4TOMd_UfLd5&A0^T*Wk$u@BAKJXD#UnRET!N4`%^%m`Y7R79C+eZU|UO@ z&oA8_n6qqKU^)KhA^bRl_k)2W7un#v55^K72tdKCiW?#!y58}0i$>JO}GA1P-K0P$DF!>xv*0>vEj%)}`b ztZ7?0#da6X(9I zHpqE5MhtfwtSg%??KdKKoLmKRn##F9LwVgt*(clU9KsrMobOul#srJ@8EVbxC~?M9 z2R|~U(CMuCoczZ}&Aj~S%BOR&FN$~7+*3L(Ics8sc@eSBl$QADx={=9$8r3hPHv9M zd}!q4pD`?D=IjI`_-LlbH{Ing$mD&dnUQ~nXXwn?Nj#qreZDX?YvS|-e}QrcUW4A5 zW@7&MA=b>Xf**j=2>F{zwBKmBU$lO&VVDXyyDRf^A$V(C-K$ejCBv|zx0M95Tx*vvHL3o*XY!K;ow0ZhtU^d*fNUcQxm8~UG+ z>47(c1zU|PBu|}A_w)>MdJ2DH))=gL6_#*LjMfTX=6o1^-)PosAa~5#Ve61{tQ|&Z zgIzD%7je3M%55pU+N|+|i^BUjTLwH8t~YDy^#60(g6|5q@SohY!uM$t7z+Pn*5uMx z9`_t)!2|4}i{_AbsxfG9UmZ02 zkn>-c@LOXS{kp(Q`r-BYh0eH|mk)uP;V1ZdKIOvj`9-mB?a5Fb@w{>+ZsvK_Fk?~& z`_Qz;I*vW>rQn})0`K=8oEYQ|$*H=Bu!8Xf$SwAgvt7vlPWY%G$?}zY6ywkKO(uV~ zYp8Mo)4KOT!vJk?j^Ctmjf-;tbUu^Dwx4zbv}=#?)ad%nbaHWBtm!PH-Db{sI%C<$ zneiiy$qSP*eHypurgm>oPBStuKFFrsz2MZwAv6%o*{u7-fv>Ib%D^5K!B)k3v2d?3 zhun2#XVTta@-p?V47k>|ItzLdwEzrW`{YbVn)_|_Q0@OdIMW~_UvlB0A818;=;;#=u|s9iqWmr351huDa%U!kGw3E;olapXjCR)KAc0Dt!HxC7#&{#n^QoQb7xXr$c00iM2rGcJ~}-YTBX z<@W$j>%H18aAuV~35?%@uhO(=f5O|P!jt$Do9Tg0Kk(+Xxl!K4E{HdM@MgJq6P!)= z_zT9dM^-!~dpl#8cz0fucfn(Ty(R1;@NqY)&*o!v)C}P8Jf~{j;XUpB?hEFF%oUfz1MDv; zIIHT`sh@#&);?yr8831$xgWf!zVPy4Qi8A0>8U=rZhe+;{oEy2yK|f~7U}<`?5(_+ zwQAu|xRPzwUN!MzGyE(**Z4*Y7x+{WX96}Dy(2jRPom2*lLO`U z2`LX=f{K zstx7Gsh>52jVWEwNjT0!|8${~lxw1QtF8b3ZZ+@pTsb1L6(ukA&&q?&xAR|mqT&7i z$t)11=r=jIH4WgwFxO`ZH-*r>9vIZO+IWEe)n^MjPP`@gf4?vKtP-3b&rP zpJt%#4(?!^Kv{dO{G>YoUHGK5?O9SnxtxsZYRnXRGeyfkOX)lL8J}Rqzw^8nIv2vn`>I;5-t30`kn<&e^ zP9wBHzn#bqzjL6i{JT>4Q@Pw-$hc(D=7$)a#TOfBa{%vSfJ6BL(yN{Lof^Yn@~FNq zFKYe#y689>&}**>e~c-7w11L4PGGIXf0J({-V|;>gAbn|zp#+G(hbnS?sqf$artfg z419CG<#hEeJ{-qKvfa(Pn&9MY3DMksCz#Zxo~b?UPZQq_@LC@Kr8{R}Q}lixZJ){e z=isl;7;7c}1C!%Ns6D%m>8#$4PF9<*0H<*mUj}2B!;LxyWO$b&;sak1&30jXykfVOVmO0iF zkS;;$R$KdRwO@i;XA)$Q#f*UYzCX`oG`61e`~Ciy*UUW2yjvQ>>?A zSbVgHE|v%{GPZOo=P)!W()dHOp_F{iGSiCmJ~ky0dtyq0x*$&*@p)hn{y!?op8ZUj9 z=0^%IeZYoq@wsAZBY6XF5|cE^GG23`ztwTA@Y2Ut-oUz#;6LLUbMpF89Rq)+M(9TJ zRreXup6?Tb9rPVI0bU(`2S4>{soONkX3xDJ~MGV6nmV1s0%eT;qmhU)&M&P-zQ$8~o{l78}w?OZ6vSVld#Y2bDvxZQNftg`pT-eg_0;`fMui+p|cql__p;pB}(6(dd8her*Q% ztE^8Mu%|8;wrS5y;k|x0aL;d!nHdNE%E#f&lWzoj-JF_CQ%!lV3V(iJ>{0W`sT~ACJ^cvbf zOY3zeLp2Z9FT9R5Ddj9muQ{tubgl>9tNVKP7|+C*N3rsAhMQ4~wlBS#JT<`|{-by) z7i-|ZYeEDXFnSugXSplAB{-OWUIxxx&%SL>H=`Ykh85*855ZOK6ZN?8x_Q19jk%v3 z5smpB=2FV@9pt5dKlR=;M+1iRtaZpO%AG9Gb=v(UZMM^<;(qncFZo#f7M#rbj?_Q5Bpc|B-sD@U$k>r z#Fsv{Mf>e^b$(*t`uxO1-fJRHxoeFXJu@mlp*kT=ZpWh7@A!6PjPbE zqT@G_E6=_^3~iWzta6n7i4SQEaa=8;iSx~@073SzDYv}0ad^je#`z+&Dc$+>%F=W5 z&y_P*;6;3emwW`pOsn>TH=y$ZjsZv6DkoTNE9=0E_slyN4(x=EG`h$?L}PgZ-}_BQ z^h~wExh$T(<=f4wV&}xZt}t-8$&7B`e{bvZMEL@0sORN{=kfn7_GGb{-FKF`j&?LZ zqIthbJiec`f3C&Ej%v(m#9k*D&UN|<-h$TX+5PA747Rvh>~$SHcLtxhmCm!bne`i- zl^;8JzDYX&SnM_6ndaV%>>lUcJ;3{58v4-_X4O-)KNsB7**?>_-po5{cWYX1K^-=} z1MXnaTO*Cgl5AIC4feOoc?Nz^uje;|lV_d70`ESz9NEtd90IrA{+;r($93kl<)}_- z=NaXhkiT%kIU0U33RsRLkIvHxE^Il%z2n5MYMo9wCkCEt2}K3lqr@`3i@*68ag^i% z*>EOLBS4L{O5x)~c#hU%(&!{FmVQ4M+hZNJM|-?u81D?~MvM#=t-<~{mvKwpc#*jr z;Mz-Lf<<3tj${>U2qFF$+yNCk&ZG~z&~R|z>i&XE^Dkc5WGuI4a`1@4Ci%T zP`8YEH=-XnfpLw~nCVYbJ;AhOPBrsbhh8#9aJm=SlxJ$;8?vX~f^GAy9Qs&BA7%7` zjr72{VA0%ccR)4n8^=3r9Xj^Z@`P2krVtsSpz#T82C_}Et|s*J&h)1Xn&D+IbnBJIZt`R``_vwTBOo5NU^Az3--_Nj5-n-j~TGT>qC)d(J#y`?ME1Oq^BBQ-;rqL+ zq4vZP+E5MhJqySmXMcEWjC$<_?T?S>Kev>8+Pi~M(V#tlHfMLRch)f8)H<#}f6_Yk z$iB+@vx(eYhg$ z(6c0~CFe6NU?Eez`%CTfNuAE)PI6j3onyXcY)S3qciHb6XKL>nwDWIiMpj39h%;VX z2U^KXuNkCIor~rdsUE>0;Q%yg>9a|E>byRAozt7E#1pBhM-9J5doOk)<7=!NkV%Ax zshnz)|9VdQRXU>9?cM5h|GRvjEzVCEJ=u{vSu2}XF=nkTbc9-K)E8xKPORVqO!^1u z)JbejAM@M-&bt!*5xqJ}{NcOR6@IOWO`ld!Z;W-&S{=8a&$9W0)&>1^wrHj3)?x5k zHR5bqS_59R zNjsA?Q)?hTyC1mrX$`^o#>b5M0QS>T*SwEgR+&lr3wU9$9@WT~hrSPwV*jP%7b?d- zh~szBc=no`|J8SaKj<~p*e~1k{3-BC|1+>*-(glAgnmdLN$oZ5r)Kt%_S^-mha21M zG-#pToA0Sut@9n~zGu#=c>vnu$IbyS@&Tt2$T*v~O`sl(F?v%&&8jdpc6`pK7rOU; z#j_MyrycrgKa-dcLC5*RXIwn5{hs3G;urq)!OA|y*LVW^B5gF@YS!<`P14pq*yJ16 z;GdYt_fcpjcJ{^r=r^`Jefw!IV6-i);Nv&TJZihn+>}#oxWZv`-Th_gVs+>s>W}M> zNPf`#{o%mwYpBttHrl4s7JX7%*{0{Y*!|U~0o_!ed-ToNRD-Jb%3z|C9Gg;;oNQ!; z5b!R|2sT*g&h5zTWiGB`&n#o#l)8+D(zIYhJ9@+y&U^2IO7z046n)d!1P{@;GmPyB zeT~c`zj&~(ZNQ}a!jS((`g_qZ<{Y4}C+V}*Ob?gP-*)<`HoYs=-bbwACS&v*{SE-5 zO|;p&b9tg~`PPL`ekXHG_+Zz{mqNyCv+?f{)9OBGy8DJQ!hAK4ZmXXU?46vP>8YR_wbQxmqY5_azJuS0J*Cd*$Exvfb0O0&C1R#eZ6;Xe!{=q@L!LeEw!GhHS>ppm4dbQ z)n?Z23}gC7{&a}=t1seB;#=ZRf}Q4gjCvo`dkma`HZG@zulQ0sXLhWh_M7IXd7rx8 zHAnRPIR5oUXI7u`HqK}r@FCSgYo&K-+|s3LpvCRTOD{GfCz;Orjm^jmclZiwvH9yg zJy$Cq88Vm4layQMF^AL~Ket!+&a>xvGdQ9(8#+hP^VAxad=35^%(3aZ)=@m_Ec81` z$32~Is80V_(UqqcrudVa{X3N39))(Nc&p}3-G(g52jU0f3qHrV1L$DKTcAy%(W2dZ zPf$~`dwk>t)=_<_PmNP>op_CSVHUJ_5_0TBo3D#r8{d&nZCocY3$NzQ%D3Mg{og#> zcB3)N)*+xv-RJ{LcxTN`<03yoUeg%8&`^tevZwp|k59fm| zSYs3|Y)3AWpD&MgwueK}CvOVb@JQkMHW4&RaN4^Bxq$UajYl-9kmp%T&-_I- z1>!YvY}tax+dnd?&+_y_D``_8et3SRc#i6P-H#5E!kZM1YJG&Cb*u^gDfYk4E`ZkK z%i53LJCt?^$2Y6(vkKXz5oly2fu ztcGoMMlQ0X6LQ^$PAJ{*4fI6WSN}V`kl45aE6rN;26~}| zUTC2gTIhv3LrivIVy_oj=yLnf;od;6v(V`*bUF)t&WFw^`-QhYx%Qg(e*o_d%uREZ zJ|>(H?#iY=f7qTm@;Mm9Zpa2MyVqo{+q5SGzb^7hiuS1f?Q-6ejHo>=x$*@2``lI3 z$Q!b+jyp34X;4-mwI-4YwbyHSe<^V&Z#b+L?HP^rC*ZQT!L09NpU6il`Aj$xHi?$x znZD!03ml9|*SxnUb4T0f%_}M`rH&i#lzq}=??cY@V@%jf;4k>eR(5m!-6hab{I|lN zF2~rF;7ocGxGFt#{DS#z?USuqf5D5oVuIHT=z1wwEz@ssMr}*C>|h)}HwIxwT}B&b z$Wz{1@WY`mr{EUm+5zCL`5>PytYIFF(9TkDa6126@(w&Q0@^tO+SzE1=vADGO*;o= zbkR=1UG(z=us+Rq`$+PJIkQ6N74&@1wB>5sUlT_M=KnZ&x!~zypA`eo_*`QA*>~g6 zd38Njyn@<1-p=QU4_b3#TqMgJcOaH;B)Tr6rf@ZK5VYR9eOzQh?d^qLXBH_0M%4z+ z6-lv&d8KlGPiquiEfM zrX9*prPKaTGQ&l{N%Z6>FcE({U7Vk|?sQUKh!Ml`r*X&##TEW*iLVpCP~CRTa|(Ru z0OLB0j37GD$F5iK=R_~S`xtHIpTZ&4Llxa`9ck3-zK{3(w59VKe8h_h zwMfR8|t*o36R= zyy)MHz_1+n#0Kf!H1w-E#Jh<8)IfhkS5makzUSfI40j+vJYEenP_$3ir}O_yo?y`} zw6&Sf0X`|(H-|VqtIQ2u%Yd#y-;iBXv~Lb^de$=9BR0<}2hnG#X_kY=`fzfry z_o}_RoBC(MJ>i|+ll&*2#9Y>)jW)Cggg?SLjp_G{L9&US6)pVJyhK57K6aqF!G!wP z_|T`YVR7yt<9{2xuvjbYq4oSO1y=Tat~IMc&W|C(m7q{8}&cWxoWlI zzeL+Ra)_16FlMx`_Fh_pEvAEW9*94Dx_ntiq;D>?FCiRY1?Ul?xPpw&{{m^!^S!GQCc2^LG zxDsECVE4?#2tN5hvufE5!cK5{8#?k1b5M;Lore}pH@4_JE&LW)wS#=shb{Or{JrEL zgHK5~Ciy@pD%fAo8l+&Xb-0b^Twl9$VcE6YR{AdNexwOIW(RZYWxkp#JYc2fd5SzQ z-)zIa@2<>`MP-eet7%yymuMT$;R~_wvYF*eThEW_H4do_mj?H z;Ukh>mA5WCQu1_mWJO!jp5$HcXz(^T8Xg38OTS~z>gCzSf5B%3tjc-EKejoibT)FJ ziLUBswt1k<|Iq(R*OxSuHIy{?LYBS8O~{X$muxk{N#WrO;N9OAC+kaFlHJ%(>u)ft z1pDt+Q5%Q62JI=^CdIxI+ypQAc!cA^^}nG@Zl;YJd0y}7Ug|yVMZK&2A-bDd%hbEV zt$*kJcGgfbG4Nf9tiHP&SxT{NdElT;JJ*+ZRO3zZicIwfKri%CLUP@N= z?=7jk`Yf_3*Cl^i$k38;ZMk5`b3gt#`HX+w;Q1KlJP$syL@&M<(L&8#bMyhbUmHyY z8t3I6XcOafXB(bmj6vJN%kky<(x^epefu7JDX77&0H(8{3Ksjmqxb-|OTTx3@L5}q;e@5y+nfnI3Zg=W<+?hZxIT!X%gOoC7OzAYtVBfsMN zrw?RB8ZW}Pe1Tc@FuKt}$AqwGplaz~OpIFYTx1WU2Q|K_K}+isa@L{zU_wqC`V zSZPVw`%{=9gVz#kSPK76D+2 zbLE)iIP*tE;*U8y8o$CBsOOv1lhIhmCdUeGcQDrA<;JXb{OB4dNdWd(7cUyx-piu(z&o`^k>wIEa_xVj+h0Vp)o<5EM?=>dM}v?4 zm(~o->L>_B4??$lMYqRp%DItxJnY|k+inNX+3(o&=^pk&yE`_PG<2?ke#4)o_g{i7 zOLSXp%LnE_o^!!Ni+=`BX5SP;E8(lQUnUQIPS-op=YKyOTOhn$_djCKbIw&F1-;zz|$rDH!TK|AmG}_{bT`|74GDy4yH=9cxMK)MvH|i5Bk_iX$b4IYgR9G*&ySwS$dIb?8Nkkz+wDt0j!aSFB^m-IzC5=l8u zG*$L5*$+i`#lPAXB154Q8dr19C9n}Mlz!z+81*)s27PmaP2N-!zgf~AnWEYMNUu}2 z$uFYU`S3!~>y!;H2cB%4Z_W}A>Shi7W=Yac46hT8Y43=ZbU^=7_Br8NeC~>b_8Pwv zTYzO5bM5-RNi4FbPqgTTiG%bLJI^wHEAHcC;&ddlYJQ4M)7&(tqrl?mD;0k2xkci& z!2d9Cwc$gIy?BdwkZSh!<{MS}z*n`WwzOA;J8Da^SSfa(p>QwxAPM&rUJIA!Vq3D? zK4;XcZQ-`|g&p5i%$@-j!WH3`KU7jF{1W~MZ>|O&@&kOGy_Uk01DWW|L-3@8|Bt>I zj5?Uh(6PK7GpdegZ(Wbg92_{tykAB>>!mO92zKdv7|kf3nbGGclx{bO z%jh&s1^j34O2-Iuz2)MO6C0l&R` zJ=B^ro$;fm9N%ot_xRz-f`54$JR#rJF%);S-W8$r^pp;l+AFfdHgg6=-xHh{SWIm7 z-NtU=LUSA=gHy!DsGS*0fOLbsG;Z zyqGwt@(cGr(!r+;8{>Y^sT|)`}tPQ z`?mQ;Rh-|CRwm`<6y4K)@A2C5b~uI08n^ZYx)$-lgZ-B9{=hT#7)%#?47f=qZY;qb zA1d+Om~-`N-vVQ|EyL4Z9C(RF`LNOzYPuJI}RPQ zpkucFiJg7Lx2Y92JZY!4*3a|2#r}#Blip4&)PwNT!}!{)pWV68&z`Et${y2{+qSYb z!)Tzc0Qu`iL(|2kzZ-uUbtV$t4W`=vJ_sA-!5pK_Q6*;Oz-00z@v9R<{;Cn27*HrC#yt6Z!c4*8*1@p}7K+^xZe#$XqkL~> zUu6KNqkOk43q?2I5QHk;PW!#9{w@u`FGq(}c|RJ{a_d@zV3 z;*H{mFMT5vefio@RQR+We2GJ2j$R2L!WQ9z*TwmLNk;Xm0pb$Y6Uz{Xwg}e`Gu}(s zU-~Wja1`2bFF5}`*S`r(`)UTdHhb$1>_w8vZyBbVt%Yvg55JZM+=$ z$66n%)P9ss7(-`i;TiJF4@?_{&k4Te##bK0R~~rG@K-<=ZC#ooie`wGNCr#k8N=|?fK;$=D5QpC@? z9OJ`1;C^X(utDdNZv)pt8>{=3kN>S&>QoZ{T3Lu>b}{7b>;0D65bee^Rn;y|-v#MAclu6Z3j zD`C2ViCpsP_w469N!~leGdjoeS@v)H%gBQt{M+jbCZBsqzrEKcYpUDt^PG#buJo>* zJAjS0pZo&FgwJjWHTYg4u4d6}J9c_IsS5y-jpqd_b`Q|G|C`j&qgWk@`IRYI`UB*G zFf^;t9MvcJV8b&u-7RW0M}`$!x}AA{dJjCg1>VDXhdw|(XQR7+BqHiw4 zHwCPzWpQA{AS}O{$Jti&*@zywVP{fim#;jJ-`dmaTWhL$sei%a$t#n#SJ^O9cp(^3 zkElZUd<0rpanA4`a*ig(!syKDAI$Hf-M!mX8`r|#o1aL>@7}bU7##M@2H<^?w*Q6i zNgoZ2UxHlm4lw}Q|H{4Dd>!Y%a&Hcwb#H$%tMwzZUi3>oEzz%E=X`T@Il83eo0+0% z;8==wiH`jv&HBzas5#46rTa@4lpW?c{fb^_5B_p+4{HCt@Xmk@i}AE8I9$m-)wr8> z7_${mBKT$E(`*b-I~n|u-!hL};k@q4BX4Vee+7C=&X#gKU2B7d#exIz#@*6o%FOy2 zcge>TQL*!+_YlYG#Rjq$c}BEn4)4E14Bc(gcibKKY|5~aqt-bnI ztV{|Q#9y}%d#ru&JA6A!e`3r!&3T(Usm=bt57$Re!?zl9l0IVL;dXyphF&hGoovB5a$@6?P|fX ziQH_~M)GU<-e6_m8pFS7PAD44H~o+E?gNhV$B3>U#2-@vE+{`}3i{R;#Y4$2P&XJ8 zmCraW&b%BN6D8ljo4ANho>P3)PWZ-B@-P)kBb-p|w~sxqI4PYeSbKxc4$dw39sW+` zPt@Qu-N2sF{D%5SkFfUL#%I0{`AEOVbMpDFvD;7j33pPXUN(Q>K+>P<4FtLWW8$r5 zJ4Vm>)X&CydM1nS_!{MjlV6J6+lM|QzpD+~^}$L%aC7HUYarL4&bFI6?Gx>MbPJnL z>%SN)S&yh8S(E%$jirWoUD-hiSmcB@V)5922ihdBkt<4kzn$9`JFz@*9lkHs z;IN#?Z_LqPZmOrh`hx+^dhvGlq{A1-J+Ozyft%u{1ee(0``j;*JpHb&Uz2aoN%^?e-Yh#7Tl!f%pYucY%|~N+ zkB_xJJL2D)6L|n%W<1~M7-%#*{>$z=80GAS*|Dw56V#YF-VDqP<|FuaB2Vr{R@sRj zUfTyU-}f3d$OV4O2}=g@iP4s_7Kz~W&YE^?D%z`f@O_;D{Y&c&yU z@Wi1o_Kd6U}JPwET007JggsLHh=tOH9>-a0zrmuL753C2AzgO6eEH=S8 zxn&K$T={PMSzFm5x*ZcM46Yv{rqHo=^2Cp`&pp(XzGtz{s#jaq+R=-wsm3auL2;CO z;`N3zo9B}2tVg~(t)HEr${zaqad2`mdgg8D z?ch-guWB8JjZ4DI6fOy`#P?JFmsn#Gmr{7-2ahc9h&{691UMR-n#84P;F9*XU=Ul5 zeb&sJ8CyuydOtQA`hc09^~0;W?k2ys0G-ry+3&^i zCvZkrVZh8hAl%e`KxgZVgP%*mPwg4OT7BC4kKgf&@OL}aH~!;`jD+oP&(Dqg0-NI- zk4}i>W>A~x62?Fc80F+AfQM-8SY(CE;J42O@WCKcKmWj_$Zc=uM0~{FyRM}+Su^&3 z`rU+$Z+jRSW-ve4PuzVv{km!$mBo2Ry$_pqS^j?Hor!gOB;Rnq2w%3=-H$)q59SxU zh+(1jUeT5QmS*y`bzk|Z%1v!PJ21<-9lzY)XzMI>QgrqrF>L#&nPH6$-rrrP=dBjy z5c?JdSBVb$GJ~tEv^|S;{f}I)IX5tS`r!2mT%UmdyGQFztYIAglaK#(fAF_dxS)~L zsaXmxU&Y*l==y$a5YX#N{1;a`uh-}g2-Tc;-wui!Iw zb>Q>p1%5H;!L`pc=d@12Kk|p!En6^Il{p=Qk5*IkF&K8)|#^Wpxs zo(~n5RmQlWW$C3(qewYkjr)?hN2RP&ChM^zd|Tn|E!5g0rY**J|AjI6fSqN|b*sN1 zde4*eXTW#MuDa(B?LS!idhIPcK5V|{r4KuHd|>xc8osnp^RKy{d4QWf+99UlzVPJ9 z{}j_uI*6k+VMnDG9JLtx{m673;5v4xx^=)H^-L)^YJsDIO$;1ee5KFE-O@o^(;O`3 zuozrxs#sH~?>};uY0dYIN=xT%gSVxeOJkoI3f{g$eq;)7^{i~QOTa6w@1?|KoMdgq z-+n_JoNQZpqkuE`d7HzWd1A2}6 zW4B^RxZl4LyO%j>W*pjhf*3xO%xqhz_}6OIQ~IR$jI$p6uZlmhJmD`}MZB{s+{3zCX_IEEKhfn2=%a=jU7{h9 z@6^X5wA)0@wM~3$9@-b}+`9=mKsuxP?jH1wTC9PU)|Au8vl@f?$DimfULUmW+miWQ zqxR52(@a?<9h;~w| zsu6p=><5Q6PGF^Y=~mNSw-*>SCY<$6eD?yY@-k|-q3X zC9fB{DjE8&dFZSZ@fB@(n>=a3Y$=P7AGSEVv@ZS$=PjQ{jSlSQ@iyxB zd}1`D0mll~PWI2%LdHRb$jJ| zqu)J@cfe!R8?5&Lv=CZTH4sYHDjHbNe{f^~J_7CK+kwx_71+z~OI(KSTe`$Nf2JGQ zU6SUVDcR!^Gs8Yx@)BfL*-tJ>GiGW(U1EA?66-T-0G%O5U!~Bx|8VxtIYRB)mqVAd zyll=dng*TI{bR%l9H*}@FZu4O<1->TUp{|y`q$q4uD#}-e|>W64039yk3L)D!9G_t zl4~!62RcvaplM-K9u+|LtP;(L@w*%y-k*m(U2DafS)45;*;;#E{w>yZMjOw^2FO3+ zynE|u>i+>>t#8BNJ2jsS6vQ2c1qV%|-c7Bb^z)z@(5;$nn{tE$rO=3F>W^>ww*4|4 z;I`<4)>C@k65WSp)k4?wKSjIN;g9XTBbhgli(GT$>_9;^cIG|gnMt~Pc*bG2n$ zbiOykSlLb6ilJ7V?*BtO`tF8qN{5zCuAG2&#v!@r)h6P=ln+tE_e)$C z%rs8HO|TT)1V6!6@?AUg6OPpY?~Syjd1(C8n1_#=T+ql}F7U%`46A@1SGbVBsG~It z*=Sd7Q2BPQzC)r58Tj$pFYEao$A|C^_HxO4#{0%4-Pi_rHd14tmku+|sjV2#)D1JD z?_l>(|JYfn|L0V$SYnT}`VAMc@v=GSTwTc{o8YhI%e;{mzQcRH)CI2HUCZZDVu=M0 z#Y%|}E_XD|DK{~+kT<2X;k?s1GaVaTjJ=6ou+X2kC#N_qXXPQ*H3o z=|6PAMVl69FZky3F6~IpiyLhVoqTsdBWjJdl|Jkse&(>|Dtz)A9h`wSj2gyi)Pz2- zqrZAMXP{Y}f#&M4fFn7)#2cR1r&=4z@gX0hFm<+WF>t9S|8Se)4S8k*c?q_yiuen` z(;hd^0Q-pGBwh1n@Sqo;PK9DEenUKB+pW)%_r$xcYl#)$`<^1BvK5;2 zX!e53wD0xoKKw1RX^ueFXg$Sq^m|X5S@|P#;>@mEqyD8Cn{!&R8D5S4dndI3UNVg$ z@F%jz9sKwW^T9`ickQKhh1M`@PATtI@ZLayQRL-a;FqYGu_-5ZsZsP1GO+Bz{fxWl ziggSB6a9Yi8gJxHuGu=(im4H=GrR9m&0^w>M7QS{kldwH{e7KZr~x zI~#S@Cj9wlj}-0u*(1_}rk{uSeU9%Y$)&(* zne-{>nASl3ejONjkyI_3eVqzHK zgR_?Dzi(E=&;O;|H^~FZi(MYMkpDg0Cx`jfyj7P+@&=#h{ipLTcSk1kKbQNp%v8GH(b#hjl}^8Bq5J__gQn>_R-)fT6%X+c^U}WirM~qJW7Ipn zyrbuT%rmD(o!@`*8neS?*XA=i8&8_`!rMIU9o5SNR@2~(jo{Ud)HYnke{??E2Cw@i z>^Wjkln0o&d2%o@9UtCieotZCs$;==Cf`T4-zdDr{;S-kY1B}<8JlSzz6Q}+J?n=4 zRq(0vY|4oYUK3tVr~l2^id!!<>i5$Iv3;Evn^n{qog)-ZXfVe+M>V^fxF+J~(*Ob%+87;;@}A^u%?S6SST~hYHnJx9?12sN3(mc2nQsM)?#wc%+u$p>(O#Qjfjs(5 z!LeinbIcxQ%lMzcaadqJ*GonN%dDJB1;+*aU&Q}wvw}stXzw;)`1t4G$azdNvVdbI za7_CYjwKUle;N16xHp4)*=d1_EaTGU!0|?4cV~a&>yLh8`Kk@Mj?Ncqm)meEx%`=} zCBuS6UEp%-UB+?FMQce1=QaT^)t~Hzrs|AdY=ntZ!%OlkMvdA93lv+;K54gUo{+1y7=4;F6D_Ks=geh+8VN-p^-_}Pm5wp8!& z-2-1WxmV70{jR2s_0TMhr;I(Qxvu$&_!egw+-kzJK7U5<+)rA`a~nqPmJ@!XTCpZI z70^YgpE3b{o)~y);a{Oui?>gXoH_f{N@^G-28JWkRS`#LU<)Fa1Rb`jdszP*^rv(` zcF1CUYd&yl6LznPA$Bk0%g`$HF6}`Bo~m;StYOHS*pG}-AKQiNJd>$!>WN8@@4;tw zD3f~0*nT`CleDmBcrfACyPQEIy+AgHW59X!k)0&FJYd&F^#+zwJ5%q8&YtAFV)2#>;Vqxs8tNFvfs^Of{3m?>pJ6z#&wB05 zl2D@D=KsSx|Bdfc@T-%~v_P$sGmnAoN5J;ot<==bAWnOp8SM=liJoa@RPxo*aHt^< z`lWLy;7hZFv+c-_@vZpQOe6Y`n=vg4B@Ty!iAQqq6<;4p^jC)xz1M_@C7ICCR}o4y zfm88&@%vtaEj$goB5-*Oobq1CJ_jaVkE4DYxZbp{dR6n?!QJszL-x~!@u!Ta>Z3K! z2(IeASN1;Ya_Jsti1xk$pS?BIpfw%fx!xpSRMV_jl`LK*#Djqj=@77Q2Wiubc1nlt-)w7x(GhM@CBaI)!Ms9oEe=Rw5dFf zuQInVpLE7}itF;RX-;}(GuH#mse|!s=Ql>mRWI^R##(F9pUm_Y&Y5g^5gF)WKHas` z3**y5(YjIi$%Plt-UK!4Co^VW*_cJtQ%Vfnil6B*1N*VDFxHsu_hmR24ZH(fen(EB z*(N>8Junqn{0Ze4IwG-wQ5~hG8HugY9$Gi%?06z9GtETrpGSAZF2SGo5byq-PciRY zDgT}sU5A}>{N+E(amPtnC&LCVJCI}SsQ=Ivv8O@xVjTL%WIAZ`>rs??3%gd zksD_GEJt;NK3+7wJ@jOA$N7=?U`;9I4$Ies+!*+nk9;SSFAv^d zgdBbc^i+19CfipuF(O}muIYWF>6PH_kM{)=Tc$Spzg`_od}BqZLH-%Ra^iYwqkDsi zapuI9VrOP}X%%*viNS_eV&e8PHKZP$~d%tZfo{H)If6F2_ z<}`CZ$9j{yS-&(rv^plc343cBwwu;V95yfP#)ja%)=@8*b&pBfaJ$Q?eR~K#1s^M( z7pxbZ>OijC;4ED|du{N6qg(N#P2HMPL%T<|<9BT}s@}ZXn0*!*Ncj-Q&^uSqUSmnH z{!ph;^+#k;`MsZ~e$mbjVo#qiE2-n#*++a;H!}4%h}}8EI-g{{{z?u;FTXXXvdQd= zkDnsW4SkTamqep1^u%vtCmZ_AZs4>NTwMpv7kq9h33{lnA3lQ3DEGzwf;f5B#D477 zIoXG?C;WH7Bo>twFZhcGe;GRETp}twrRu*uUG|eD55*HZu9UeT-4`tm?A> zuXbSG%Xm7FQLRw0^2^Lm@N7zlZesJO#zxCJjsZstOJ_9ai0;|@Wh(n+xEVdky7fI4 zjLv62`o3Z80-uiuzX|`s2lM?#Ympa!%A@R)Z(y%W;c$@pIddzF*}}_1<*a41=~4Sy zH{tq6#KSk?bHMgeZ+#v79mM^0-=JNtH$#{Fq4Y@MH)?jbe^_nPec`Zhx@^(Ib6m*H zvR@t|N9`Q={IPR1`IBQieP^o+Q*{s9kg0#+Fe`fI4UaSvTXzC|EX#&*4tsTSAbX)P zD~Ge%mNXITME~3FW$pQHV=rhAYpnM8`F{#}QF^c8d4h54`d!2_3%ASmyAzZPk~$S91B4^h+GOt`NKQsc!;RITlF??N}zbz|__Lk2aI z8FTjK1}SXFUGs()Nrt4ZcwiOs(PHN~+oz*vdYJP<=Ju>(T+8c@%yew&mAk;j*r<@r zBe7K%bq&J(F51%Ah2JR})dybGOk};0H)@eD;7z;S)VGEgg&$*0?f&rbNk-d`9E}cN zJbNwAYJcci>h7=fao&XbVozoX z&)X;B|D=E6bs2qn7eIfDjml%lrhe=rqOEao+#=Vk>6#=h>6&NMi*C4}U3sgqt*tg@ z$BSu;J)^P5kpce17^dOtdxJ4NOkYjVu@3f@-<;a?t7r6n44D<#(SFv2 z+~Y>ZiAhdDHi;wq_>p~jpP1m6JS{lIW`3Xx zLo`?8IQhF^bUkf!LwoFTi}q;TX^byLe+K{CG)TW)gZD&-2LFo|*}pS5`(PaSLM;LN z{|tSbiMPO;)coD(0ixlOKLi8GAR0?2?Oh1&2p*TP_qwK%w{kJHT7g~7sL3spE)FIX zJ8f}pyx!5?6JMW$%(8&@+GiT8h(Ae8eoeBrk#!TebQ(GH1%CemU&t?5(|mqQmO0FG z&G43%m&jG3?=r?gjkB=tBlM`_l7Zb}(f_97Ml>Bb1ki0YFCXz79}q9Bv3`4StlOEp zlkql7Qxr65Oo|4NvnTBOuq3oG-08$Hr-JAT~(b zW5`aisgwMwkvoMpucOViv?(0W`v3B9e?jbtWPU@b&bpvYY8TA0c&?22AU}2#YeaXB zokNN3#EXqAg;V~&)U2{5Sryh~_5%5he(Wheu4$Z>zhkR~ZO6(qcE#s~qP0fhoHf91 zBXy}XVBC`pnY@6ZW{Iu4hHJT&3#|$?y+{Mh*&s;UnICH$3d3?eiO^u;qbdr|- z_OfKHJ9PUj%NuN{xrEp-_HH9QU;asQYCQWh){WW3N4!xvZ|%Zi)-1)x(f@2dp5oz> zTMwaUy+_>71Q&9|A>gxQUPA}6+T)C|cg4JhGvKR*uH#3qF6Ub~*+IKyd^10uH5$Ug z+r1%VA!L(7_;tXEfYy;ZnhwUMn96csc7WJh>tgrB0D6^${f$_!`ggD=pFWQ|@xbWe ztAJ(xhNv6aFR-?JYu#H$fp4vEt8@+N8GiJPV&ZQedy{j{z_&Hv<>T{>E#p{A-!0I7 z#^}4nY!L1#mPT~8OmTS7uXgf}r2EC8X_}Md2H8Q~;J@Z0{O<(U3wWm%xoyDV3a?)S z&0CX{>jEzYcUMcUgSNWQe&zM_3Bmin3jS;cf5O<_I0*FqO|^Bao&--egGY6F?#=`J z4udmwT$eAkV#fBZVQ{AJ4r5j?IJ0S0;T$(-7FQz&toXiBwFmk=4#d{CTxCeD3b zi#apwXW~2)$NqYlXWFUDp}x$e=<36l6K1&aBF()%X6&DRcq9+Z4>#6IU{k=^&R4if}eEkHm-S# zh!5vm^Dj0tR(7xk&u1#u+HJ$)Rr(O^iL+NzvTHT4aItqpgT!N-fvsqf=#TjLGWq8Q zd7Z{5`YJkq79ULwxF&g|i+T*4pID`wQPF`$+En`;$ePbX6U3{u_Z#U$^fNq!)&<~I zl1&t^IJ05ew^r|;OPmLU zw^kF!^qbFQU}T}HCgc^#x>^&-y-kZm7iizE`RMJ;#K!o@;2KMwzJq?_%w1!WjJ5;b zCO#8~2a6UePQ$Og3T$*u|0TQGzv0>TJ@#?xe+PS6zi&pjns!xacVKVzZt^i#z9rtBcHf5>kw8ju8U{(GD)hz=)y zDqJq!hAl+)?RH{72Vr~)J?FpZYp5){>f?cDb^YKt;w`{8(d*cop=dF5WSA>-*&*@N zgP|z8=ZxH+lw78KgMn9!=xo;V;3sB%4g65|dwJ*AV@g-|{XG<&;wrgJ&&a+l+SbcA za$sEy+AJC<8=>lW#zoI%E1U{l#O_$@X|`n(>CtiQO%E_uFMGoA81sN%#GH%+zIyD> ztvSlW>V1d*wEuzLXAFJxBf8&5-{mvz$r;TvqJ^=8^zo({6)yIFIPmPR*(Z9}WsVPM zoN?~={@t{Bk=jyRNiRG@b2-A8i|Io=iV5okDzj{w=s5X3}y|f`2(U+B!4`Z3ghwyk8JiZ(rUk;D=!{aS@d}(dXs+6qg z%duvqDV~(-vaQ-BJ3?3nwaH!4V0I?LJ z{aTxL@dS8>P5YUHXh$_;Pw|OT=3uX_<^deEcH%SQ5w-dJ2NvH1?kOHDI3S;m5w8|+ zK2i;j!Val1Y;m;a2&M-bCXG4yJA)XXmYl-{ll(`jX$QE94+;-{&iG>RyR+CWByaU$ zixVCQpN#Bzmz^Z0$crsg=hgH$CnIN$qbvjTg!|7s$F^W|^5`swR{E73p}pqIY|7~) z7vmWAIvWRBC*fp_{$%5mEpHjLO7^>3na^#+vFrC~?8!C!kHJ^PyT(F$_vC)w24d#1 zXSiQ_H!>ph`FqG(dUo$bqv|=%5vlo!=@D)S#_PBzeYzKUL2Fh@%_zYdIWeO9nuBPz zZC7XQQZN^sZGD7&qxpOt7{zI`m2;29dsTN=_8akEe+KU{FK9(T`1+Unf!ULgEhOJb zJ`nGZ4Uy~8Cpj}eCkcR9Eyl3Nw(ER4Qj3OiZGZ;Kr zZR|?fTXc5VIo7Q|UY|U!BqnxvBu{E1qtA*z9eip&&yB5iIm0uF2Hq8T?J2Au_=^tfl z%eL08G77{ythJYJP3a$gYNOix19{zocjUlN*IV4lG_dK>=*K*ZFt;2qymrM2W}o~gd;u;=K$?xn7!#v>g^HqJDjm!8{2e9+G)By9^#-RK_X z*qKe;=y=1i9Ro{hOwW|fMY@vKq1I7Sc^>Z`Bt;KUEHQHnRrp=Ry-#5D--)b2sr z{q+~LJDull8D?ymXk@1gC$8gp>G+3-BL||_?;k^*GZVW5cu>2x@quZ3r?u3clK&+; zGQDB@?lAQHVq%wWW`1FGwYIe2j$3YN{liPY*zw^lOZI%Ykb2|O);N6SQGYV95s%yP*JeSy-BlynlC9dpMKBF9$xL>KgxNryKk}TA>1Rn-* zyf>q3Hk&SYEpQiJtp|>A+9;+C*=c%dqi^5vNIB=P-^^!|83@$X`U|CV>TI*rv$?$Y z&(FF)_pE%-g8dmM=eC1`K67&4mIqsNCcHneEB@X<)eX$;)A4hL!RN>&+pCitww-I>qtez{kpQQ%* z;Io=ns{JnyZ9k1UuKCCJKI=p8rTQSc;tQVrd>^T2+nDR;$NkxJTC3D^HjMvi+@J4X z@}ABCw8#JIl*qlM)Ld~ITdo>%Z4=j;xmLX1zH4)ywm_(l#UZ3YWn@bMTt!-Y*^g41|54n3ExQ$FPs z-WWEH4UbfSTYb)Hfr>%gN-#Fr)nn|tCi;+^dYbo@(>BfdaDnjW64vI>#%p%4_jgE6 ze)fk+d-wk&D}SQ(Wc+Hcn>lQEK0N0^_@CMyaEuEF*=yzWaftSfT;dgGqet-D4CS`; zoa-8M2v~hGD|yYuHN~>`s=ePOeHI$CY(J&Q)aB;nnbun8qAlZEb9&Kf@GmaBkb08p z%Lh)XzZmU_&$K#?dN=tNqQ@?Duu^mp=?vn9vX7)QF3a@JY`dShGI)-zonTzc9g`1S zn11ddwY7{r_)YxtDSYXH{@Hj1e)l>*!xO<)aJzj2wos?B!;X`ot#(INg=8MdII_db z{w}`Igv>3y@r!g1$+pskCS_o29M)ej7MV56gN!`ZD7t`q*4lPAGR~}K>U?kFY~hpO z1N*U3GJtfPPU4oO-&g|!vwg@hOD)bAL|zmB&G!5xr-^s;?pfs6=dqPYCP7APXu?O; z%{ZH}qxhkVO|*v$(%=Gjo2Fp56c5CH6T=2{J2hy=Vh2*Y>w$^%vUcQ1t=#}}v-kvZ zNu&%}P4HGN9Xp=>2i79VXuqUw$u-i;q~}T|n?wBDP#uR_tbs1Kbezn<^XNEwUozaU z#v6rOjQ)b>d2bi*@1!l^UP`vU)om2W{?d*v;<_Ch^Gono)>=M|vb_C|^qL#~;10HZ z=(hHJ=r(&kB+jNcmp#)A{qyJLaz4|@fX;P(mNQsl;GXPW-Qcw10F+C+LU=gUGZ6NWcyc$a|DL+lWLzywrU@Y ztx@0VcPFx<>Y$(xBx{QP$vhqdwl;r^OtSl~fqn><8iVA@<<#kvTzMM!-3I(>kRv-- z>i}!2wQ$+8MMEn{d=e9GuQ}>ZWc%E%N^<_J`t6YDSr#(k0mz zCoz7}wI$RXi6P5(XAraafb5n@TfWxSXlqpt@vbJ~);h6;_Jz^4mXvmsoAWANSBxf( z0v?I{6L$m?y>o+!#ppVsld{7pPEc{qM-N`vv4eL{UrF2)@5kV=iapvZx_2wJZlSTg zD}uH@qj!tV(cz$3x_S@ykA(3bKyMF|ixtD3br8E-{2|%TTy?RV&|SgrA9;S1Bl-}# z$sq3q`D7}4vm)uMiRV*4fc8ZXW5gxqa9?eDiJ9r;TKv|eU9OmRgU$0UQ`>&is|aI>kZfnExKhQL61y7t6Mo8bYku3VSmEBS$P?HU)({T}y@@Wl-bkE=&MALL zb>j4H4RqDVJ<-1~_e*KJZ}4}FK2?Wg=yU(ZGw*Rt-?F#Iu)o&uTkZUf>*`a#)nD_q zMnZY&F=VPY`0gg3$^hE%03VSUyovcAg{60FS=*LD*eD=aAGK|L>~pO zIPtyl`~@9v@jacsKA3uyA3H>}H-COdoORIetN5(?XkeG+M6UbPhiT!%%<0>}S_)=@ zYc}vL#h+<8jl@%o^OI2%`#-+PBp=8@K9G}qpkc}fDtZwaLAJJ^;8!f7rU0?j_bu+r zjrhVfg`0_cbMXv(CJ;DhR#q>djxaQ%*^ZmmneOTKneNt?ld*TM{O%m&vw9zKVJ0@$ zDZmnWzY@8kej|EN;9A;-eY zdp|Nr`}xAl%m8zm-9Bz!QOqoyqnPZe_-pNW>(R+^Sf$ArK+!jy(L&vC^1!ml*~|?5 z*TBF-27GEPwve9wfhy7Ojl@=_o*R_y0^*gjNu0c9z8z=16de3y_yRjN|G$e>2aaPd z`#3_Zh6DSh5%n`J!B~3c_sJLgXv6st$;OwFvt|9w^sJH127SCZJ6WIEnjE}8wz{TY zeT%oZLvQnV-hkdb_9lNjfuHww z;H>Wk@<4&N_i^$<^&fvwuD<`0%!BnFO6HAziM~}6=Fp|ke$SHC8^&$P!H)h=Ogt@@DhxPJ+R~Am(ESb z#23#svOXD=)Bi;=@miNN47`5>R(xBdiHl^`UqaxJ$`z zOzq2VWK!+Rnsdc-6xSYNe(ytjEaV+8yzWu-G12>>`%Uy!ZGN*z`|B(A{>lY@XSq&H z^?eqy&wkd!e|uiU%{o;4#jI?64R|sJ*(5IJ+~Jf>A{`pyE~_g{H_|!F)!m|4>21u> z4PB5A%`n_8YNPs)d0en{W6#jFUY@JK@88JWRXf83Z`F?ODObilf_I2B7CcgIrIT;i zh%as%_*ssfRL`=OIJ(XJZpCgBWF9pRGrHSywix#?H%h0n&KzE3#Q7>}KI z!+vy7_tWI8Yj7Xhc^))9rhH%ao6hBU7g=5L@#M>FIq1k(8AE@{_OvdpaU|zpFo)W! zvClB(VlyqQJpXl!8{Mc<{zvVFi=0h4;4d-npS20DY>}_Krx4t@>DM;@zsoSAKO9C( z6L>VR&m`B?BKp^;fclOj!pNPw8t3KSF&EmxK8zVJ!2AFA~UGP!INPt zeB@JP9qlJ%3G`{}K+SbV;vwL7ZcV5ozX+K95Bb3d&pPX4_>{;EV!e&dm%rSU1N;Jq z#v6&{Tjz8-2|Ev*4}nm8_aHW&}Kq^ZuTGW2G-bQQlXJs7dlO zbhL;0J%PF;_wc==GJ`WM(gH_-*W1OMXEf1ByfYOz;L|xVN_sN&m6&5JlYC_7*l-i) zFP4t_ea`;B)~qV^CS&J(Z`Rnkb*^R4Z}k)Z)Peo@o5Ks|bT-s-{sQ~~|Fy+E#buU~ zSDa?%q?faXACr<@ZH^7QOn16yNIC5u_-oy&a<99hd~$kvV6ZMl1@9`Zia4~{<@~Oo z9lg)_mg!;PEqkvG+Z+CxbnOSx{fqc+GKkfo{=i1ow`mw>#PBco}^vwoCa^nb3?HYPu@cgvG*CHDJf606I_^7IL|9|fZ$V?_7;UbryCIQiz382U% z1Ku)#)?|VgaJSytCZO$^WKf&d9)VU9(AFdqlqjuMYzf#)5{PJ9D|oa7P#cIM>Z!I` zYk+DK!bR#eD$e))*|P^ChxYq={a&yB@%x@X=Cx<-wf4F^>silwZtGd^WuYUYjQVg( z+DNbFIW?E}liv$2rtqf|yb%sbH|tr7eAOMd^6{u>w%Y1kIxu* z=Qe+oQ-j_}yhS~*lfHK^u#w(+U)l)fZD=gY8tG#W=Xi|aijfjKGW(TD`OoJ>7~6rW z*!1<%*;W-yxBb9egQ`7w_)#yz-`O-`;z5~*{?Yhl??HCX1^#=$ffDNPK~JD{w)AXc z9pSzpnbn5e6J^edrn^!JhABw z^i~C?>rA-x4fr)~Mq9 z_CP;9LpVRe+^5_6bj7%NlzR|X%bhlzf(L1beI91rQsgdKpErqx;_rc zPfc^%y2O}AT(np`&#)eMjq`5CCLQ2^?*!sLr@6iR*ayx9?uuEi_H-Vghcl~D)9uYb zr?I*pStsAHcERIhN5(g4ADwa}k)5@K^VgoNIC}EHtDFIwL|Yx$U6fzK`I;XBi&EzN zMe_WNr?ku;@1=g(RQ8M@-WYQB?liM$FLV7jd>MSiO0594wfH5dZ*k6h?L#gtxiq|y zd%TEY8Xw`twzL46{v>toqpt1LwU@f^kD{&-?9F4TYjoRH(55hV$v#TC4$92Ickxnu z?=`;FGsD#t_&@ZrZ$2*_5b%jZ7u}xi;FC8toBCTwZ#FsOa$EYih>7hjEuAkbp&3z+p#XFcsLW^APs@Y&=4 zf9n60$msn4j{dWT6rZ&RUe`U+9V)^0^zn6O>vd<=_}~9J{_O0-A1=U$jJi%??M2Zi z^<){F{xjPM))9-bhV>xYu#~l9q;dW!ZCu+=&f?4y_P>?0j3#0p&V7}5Vz)9Lwb7I9 z4)p|P&uGc^g}%r6#F{gc{BO_Dakh`YWZ-WwZuOt|hROMwW;TrnMthkz&Hvw-H;wIg zz^=l}TE9HGuUx@6zNc@Q!%}As)#o1K-m9NJ?2w<*uNLf_@81;e_iPCdtAuZ9V9k1Y zC);5dnq0;hYuH-^+m+Z-)96z<^cz0PPKy_Ri1#z;)BErf-PrKHOkZj}#&65hh;MsG z_>+gRpRzCZce0m5PtcbU3W0ZSld~X+#N*2AepocjY}nXSl8#G|R5cO5^I|9V$?%uhbmj8}`ovt-YpfG~N#7}s$-)`L4S?S4M=xp2nG{!Sf(+9{ zS7Wp_5-ZqE`^CiSQrcuc5$)I6d&!IHb2q%aD(0aub*lcj09(BFIJa;mWb;Osr1zP{#Y43)t!5@cCVLz3h)dkq1 zQ+wzh=4!7^6UQL`jA|?YJaK=s$=YIF3wLq}y)m+5CHhwRik}iY|FMU1%Gn<)STEX( zd)RvwcWN`b^f>KCX^;CK&xx|1sx84ldFz}!_<3URndd~mWB9)hK8Sy4#%`rOa8i*m zaxL_;o3@4Pw?m`5sXxjdvGPJ=xNuSU=b^LJ`{U(E$y$hM!1e$=B8rO`Ri(X4}7yBi4o%|i(y0@yCIjIEhvL}h3Udpq6W-a@M zr>Yy+Q3q${f$xyy-LLMcskU=y+vx-Q#-h8d%TK)=yS%4BA7drb&f;h z^#o?x?RwgXZ8b8;7(0o#GjNP68DEIJPS=Us*Ip+3GqThs&7bO5ogV4>x$oSMjE~*K zj`62)dd!jdk1{uu{}SaIfMc9-EFT`8@o*7(9p|3dmH47vO6+uWCSNG?pvrJ3ubWst zx^o)4XH(vV#!C4oXiikG;9|Ei)Yvqc_o+K$>qpT)Y^TTH8=K2nAoc%Y=Azeia-bDn zJC_(~QPSHvFYloa5Akd8OI{(rWG``SxMO@#75>R@q4&magnj}W5HzWhHdzN2_Pb5& zQ6rf;^RIaKP9wbOTx6&1@ag+#SNogx zQpG-*WYfNjTNf09Kkx&m7!C8@OVW2+cjd%2;oPJNy*JwGiLc^jt%-*`A3g7F*h-&9 z=bJbSdE{4S>$z#@`Q9+A4P?&px1b5&XZc?2d9>?u^s_V2$*9~X(9)8>6UX2-_QiDI zVe58JshZCo=||rIysAv<$sO$ab{HPUzEg?2G15o6tABn;goHak{ zw_vZn{#<=zE_#6f8vZ|csS(_k&V5D9rTRuJarlAJfhzXZ@VklM*2D8?9*ePQEM-nU zfgjvMS<#k#(~y7BQ7C3cIr;Mg#0Y^$5MG4YS0_BjSvz9s=coPX!J6}p>eI13yp2D` z5#-!TV*IK9#ovI2LF3jlrpC%Mns)3@WXBg*E=tA4cKe|D%v;Z(JK3AvUc*0YiN3p| z5BfZkI25OI-k)*QYy^jpb84PKhfj=)nhxSo>_fhAhc_L*%V_eOEbcokjt_UIKF(j#8&mrcyv`Q^W|}e=QdDBF|@oF z9%%yix8>Hd_v_9r#;h~^#cvW*PwyG8${5_~mRswp_Uu|VZ%}sWlI`Xl_EULze3zRM zw##)O6V|IA^vyl7ZB?b+|LIMd3pZzeaWRCg6|+->5__WU`$`~ z?B@yE8+>Q7U2pQ){a4D??Ra?eru1+OdALWRD3w zq4yuBRhJNVF4gZIV$MD0l&>SUcuMMB{SS@QH0DJ`da$qzc7(MKK zThF>%?ffr+cM@*)qM!7m2lIi;Zv4AEZezH6;`W@945MhJ%A%v(jU3s;|0?K5qi_uW ziah9|%?}AD{OeaqmlgvrVsp=Jau36fQhEEm?up@hqwq=Y%Bqd3(`_2VONAfctc_3b zQf~CLKFYw0z-Jq=7U-@U{z-EyJk;K=^1?ImgHie*ywlkU=|i&zW@ znbmpdtjl?J16$ThVe!-W5ow>~8RqFjk8(5ix{qin=0|#KSK2#e2}5muU}0M`4VBw`TtJpYwQjJUZ!w2ATM1bAQ-A z{P;PKSKWs{$07ENJhN;`7yq>ePABGQYAlVedmb!<|9-^vlLzZLBYGok3J><1D<9kp z?rg{3BZ@wrJ!DtorDrrXKx^ap<)-!!&F2o{B}a&_rL%QCq41_SHfY~diNgOP?W4X@ ze!28*{7-4*tL%*H0#}PS&k*msU>q4KWITPoHnxM9h7UQ9TP>(O$P2-+v!_ zT)D|u*3E1sPUV9U;F@lxcb!iCHCy20e+TUUFJ((S;TbKz9gW=EVDn1w`=MU?+WWgi zA@S&JnM&i3Tz+&+#14zXlLNCh$w71Y)tHm2=Kq?xfzQV`#dJI=es0SH+hW5fTVp{G4Z({6^*nWau)yMl7@Aa+=8C{kaHV zuHEPqucKb2m-7E==l_;A+5p#6ef7}>^vSNPfV$w}X`}K4ZB!m@Lw!A+Hn!k5tk~>I z&*y)!)5e-#F^}{W`C^ktFoLGe$0tIu*;RJUFB6vF(?=PN!A-j=qjhEPwa~8a_Y+ou zQ(xF~#gYorXOd2Rr}D|NUi<6`{&ta)_lAT{QyKWfTr)|}#*ywhOZp3A-WdIdSM>7&ey2DK;ymSB<>$VKc=zuu+H?{t|w*OryH%GU%th*8DDVHkAcM8%jOMzuKVRI`~woKky_SM;!XHCo;NGz`Umj(=weDpXO-SO z-7vCjTW}V(eeEe(_!u05N7j4Utl#}I<++Pp{N&X9T@Mz!GWJzKqqFf*7)ANyyUcy^ zDL9+_T-VTj9m+pDyeK=p*p(?v8;Q?jwA3~TLv+c@hdr_XMEBd+u#fArmIK$Dy2?YkU#jf{1aW6V^={!C{f28+&um^tvZuFj)=5HO=h|hV_CL^1t zVmcR3!!DFIxRqyr-W_+H-}fJUk1hFcA)~)A#QkCDQA5~&3R&0NbHe>?7iJGHH)mGU zuP#46ijr$v(UtkXgN%JfcvHh^&=z!|S_APjh&TS)Agg}7aNZMJ#{Z9Q)mhaMfsfHA z7s;MAxOVt<1+3OO76IJWbr!Of?!o&SL6FPg_T#o+O8;@1tI-i6&!x~oTMuYfUS4XPd9 zNxKI*v%C{o{pxFO+Bp3@bX`1s*w^pl89LPn9tKZ#>f2Mz>aroV!>91=A$RiIzNPV; z7~e*&iERwn-^QG8V;h%X7gL*ROYOM9?W>7FrZ!r60z2A>Zv24rlD>j)f5R-DHBIj` zE+W=xF>y)Ihm;*DpT3azWUJ9dG_wcPfPb@#4QmecRk4=4631dKD;@~^>7squzul}U z_OipB_%d|48XnwFUHj59+8U9Q8_AnvX2jV$`oyDpp|5+fZGjJMHK)3&^PWTY!f&hl zS!~83;yxF1KkV3W|Mh&+haLDk_zA@>B$fknA6pn+9J?U<%9<_V>Y2~L&&-D2aPL-{^drVtcCx3(;N`j|7}kr2 z%ct)G{)es^edVFS*@3fx(IMhja8E_wS=eLHOBHGM0658=+ABV>f8`I5Zc0bc63MoMMrdg)h!)7eLbIkU&$C6fZxlc1K?fVvXYO> z;eW=%yO+_o0%En6(5KPwx@)8X1y=t2g z?2?X_esrS$lYTYLpJw?Q{h==ANAJ7P%f+b2YwH}n0c@iq>s()23i|n0@x>3I8}j2mC|gvyMKKue!lkd+y~co~kw{ChOL@w1ZCF&zqTE`03arGc!J(I_{zF z)n-=TvR3}vb!XA<%a_cgEtS!kJGG&{AEy4mu)I(NeR|1Qcc2Phv;=*66|i`bxGcht z=r_z@y(7W(xXbRp5JO=}9@cjb5G9Q=Fj zyc%<8RWo-@zusUpP07Ib*eQRLIn-MQ%`bq4wDCj$w)cRI#A((#(jK6-BYGly(wY)} zy-wflIv864`0~-Wh|eQF;ah^AFZ4R=M)}V>G+VLpCs9uE@xKqvnuBgpw7k!WY5xLa zejPqvvF+C}_G-#>os^7iZ|5PSE5`lv@QCY(aUT`k+dhB>vEH_`w%pJZ_h3)J13l?v z&H14xKKdbkxq0&>qjHRq8qbT2<0azq zKMD*E@taIM`S>@Iars}zR*;O%pH0koV(^=pfyshd}!;dXMV#FNdf5@w;pwUU4MdeQ!GGC-(OJG!#ym8F2r*cO)I+Pp6 z&RlZQ*egDf-0fyAYp`XssBZ2_)LmDRVS@<4fKHhCiL+*r`TLeJ=1lP8i6SGoKP|IO zJj2=_LoevxPWY0ypoJ!BtzVrRiL*Xq|K$p*@5GGmi&B4`Yxc&TCtX3&;~Mt8x@E47 z;U`_zd8fnodoQ%9<8vXwvxvAjdR-3nC9#UglaOWT^{_AV~ zanl0qTp2P-%3^BSA(gw|?* z^@$ch5A|I${(0T>WourN|5Ch7?eXf%x4_3d%HD#mep#kzy*9)Q7Jvsk__hEV65#vo z(5qtT<%IWKmUx1N(17~e1EERK$ui0+Hck^fM%@(Td+OYNXt+~v!>gM5hf0-G29X>-e{&jrs^-VTq z-=EB0`y-c?fsfH^&nJ1IJDzu;i}Q!JkT;)iUL$^>@Oryo!FWVRQ{<ugj`D-ybR= z|GtsL_IfA0DUbPI_9bNWAKP&m`u1F8T93lVRa|5SQ*?3H7-Qrgsefye%Q`T{SouU( zvhC};X!~4$Xf1hH)AsY~-wK!YH_F`V^lt+FYnkB>{e--)Qf3>^W%szOHz;$JQznfv zZpy46?>fpn$#cQoF6(8=gq$*aX)8M2AG(XYYbg__k9*k9GzN2+8N7qEXn6Msqi{L# zWS2oN2C+~6it?^Tm$jL?UfbcoY=_ILEAoeKA@6eP8aM|_XPMUbc&Gl(YH(SP@!e?W zyKUPUZ=pZ*P4Y@9qyCPsXMB|TXnV5mhbhw%^oPDiUI}IDnA`dQYYaFmj=uQX{P)tV z1x~w~C(V)XEaX;j<$HX$?1wJvKDFDKtaIBR=)Cg1M1u@jSUtu@VHs(jtD%Qlu^Bf!73kFwCyFD-KaB`tUd{p)xm&FWD1m(vP{V{uENvl$1KV%sB!7sK$FJ5YlJcK0^V)C-DQ25afhBsj(hJmm(^L|52cfL z3g3xem23c?*tcu}`wia*7+)o04?X7!YR&F_)@8K@{GlqwuDqD`9M*3EYqytJ+Gjd& zu*bsOupcOPQeW*mX_o!m46L=+FgEEC>Z_7F=dgyq;{T4WLG(BZ9j-fj5O=?aXNVpPCq%RMd@8@G@Qgn8 zw4toc6x|&CRm0|$TX;4gkE6rrtDI~~4?8yi9o85XL$wS#9D@$mICNM%cNw%}477Lp z^+Wto(PikR+7i5c=rsNCeC%u0E!cn1?Kf4iM=4)&i0Ghr-2nXlqD73mkaCv|veqe% zNd1 FfJ*MX578;y=rg3*5Jw)>G%OHn($r3?GQmoZAuaxsClahA-A6XxBLC@8$3w zG5E_jpu;DVj&UyGLh|JEz8ieqw&Yeh& zoMn%dW(T%2Ztd^n^WyUZrP6wbRqJ_YV>IJq-%&NW#A)Fv(#0c zfo<=GVRM$$>V0Oo`gv@8N*knaq0j5DUAQQgkKO_~Yh5g6%UQ9L*RLYp>#jz49N}A> z7$N)NX~fU=p$A|;kCeHLqOT0sol4%oWMH*E|M>?qvHwiQ_Osf|+$TRJokvaO-H2T$ z6T6P`4DKN;z5ttP#AQXmr(aU;Q+T-#z`?6yX0Z4g&cvfLS1bwL8QxN5TKkY!m*J}< z8j+$8A@pUr&sM~X)51@_Ws>b-pC-^Ev@g86w9{|@ zc-u^PH4su^f{H&(?s7Eq!JateS*V*u|mB8Z{ zv?o8RcfjFF#y^id59vzAe=m8`(Kby|Ubej#X{?_r%~-V-i;tMqb--6VY$^5~|9Lt1 z02#w{{;Xu0)35r;|FmBvSD4ll)VFr7X-xp$ff+fWbLgjd*?M4A8F2+0;AJ&t@sCl_ zDDkr)S1?C&5pr4e`N?(hy4J&dd{)| zE?RT}mGJTl;pH3QCvanUH-NWWEH{QV1*uSXx^ zM?UdG8$V*q=rIDw8=T`KrakMh7};`bH)||xth}DF-pE*&GY;{chp0<3<&BK@9r9&6 zzLD|XPQKRPF4opdtgS7K*?A3H42ZW7;%@7fu2 z`+Q>VFy@_%xxJKp;L;9U4lriHzsAgrosND+<6gx$bQVE^|@%LJ{EpM{ce(uz~M%Mq?*%-#MQ=;Jp)g?*zv-FbAsp zMasypD+QOl3li3MUP-g}bLqTp<-9O)BW$?rnT^c?d{{6msY~1Jz~pXV@*@3N4oo%x zlgp^{0P#)*6X}pNrv~3NnnP`PXwQ>hw(#qI&W6gTTlh5-IZLwq-HdYuYzGrs4%q>il| z9ovF)llL9hm|4u-ohxC988QYDF?PkVy5i~S#N_Hs1+?ABN18t0BHt^U3+k=6g%{ZV*A*)DvujsA*r!$)MNi@L)7 zX{>L2MXJ~Ri2Z?et+Cm99s2ahAb3>PuaA9Kdr6J6k2J84;O7wB#QxgAp1b?=H0x{7 z;fga8R>mn`{06#V?>(t+);r(KJd$Qz!8aWf(LeD`{8emk`NKnfi*k$N@Bxj;LNVq} zx}2Gd5|(QiWq7}z^I)7`>WUp%*8r{UBVO-=<&<&1ia*3@&|JnKnF75_7do=T?dY7P zC)@!aEjYV@vGAq?KJGv^ePyQUS{fT;{7i*w@0W-ae`upN9pw_Gzl);-2$6~lwBVb9hcqBuZ$pU3;o^d#@iS(nl1VcR4NXs^6J z-(}qiFY^2y>>;dwbY6jzfLR2-ehPR|Mhu+*w%CQhbvgY+?wMOapU=8H5N|XyyWV1+ z&{1~nZ+Ex$+zc&3K?U^m%@u*e~>$WsY^QM9g*ajckFc45%iDJH^1;h_-bMW zHs+u7(tYS5#WRdSmzf7H{w>Yb^bgKFHvbI15?t%TPA6QG9PVS>A@+m_^s!_(B6-zHdu$7e!!0-ar zddhyBn|5l<7@Dx|Tb&jxqedtaj=uXSgop$^s&9>djZp+#0cvT^B>X3=6par|(t32Sb4?La(PWMe<&Gm;2%o=)-E(8$4%M+b`U$?rZSP0iS)~^RvWhBbfNgo=2by_ru8norAhjoEbObqJ?o_%UmEKgT#*beI`0DyMeEa9du129=GL5yf7@-g57>&v zYbO6sTFu_RrOHo0CL37(BB%WPm(r}ml<)5U+`5Q) zQhCjk{B=1;8-lvU5^cA|x-V1-1yk|N2UN)%Z@Bxk3r6kL~KtBiS z6TI+rx?_2uJ|St#85$5TeIlJg>MrJ^dW9xq?&`xyKcbY(ejshoulaAw?6ts6@~C`2 zuO5m_v(z;=c3b9^de?Z{;42R}`hnPMwexD5%9bb={$>-K>vq$Y@qf)a*PV-Bhi8fI zhi768Tjv_qYvA#%$hg`YQgYM_%)jKQ+u`vfM_t2OP03MDkS96n7V`cba?}jkYQOfz zMUDBHZOhS#tdA{R)OcI_DvfV_bm8=JGb45vXEmSiA5wI?@Psk>8B^!mhV^B}G=70$ ztv$h*9&pA~>Wu010b^R`j0yjsf6JH#onTDzNozbgIWBxw7MD++6PwGp)-$dW#w8n- zdXSesrH=7Wn$}mr+v9a$G5RkZ*xig#9!=?~8qrhLV2f+S7I!DMxErv=^-*pe`l@yPLqfxy z`FfhYrsPlP2;i62!jl)BV7?|f^Ytce2nRRP{}c|6a^~w5^8Ot-_yBDkkAtcCx|H#@ zqn8s+S-*JUM!^AE7~6vmeGYT?XKZG|$vYXN58m!k#<;AAm@e!k$FH;Z{K<9pb7zb- z1IG9!d78rq|4m~o{}*G_m^41Ewe^fkIQcN+60NCiG3~Q_^4ak1KyG3$mAz54ec3O~ zqy9Bl5$B-{nk;&}7n&tqt!!QL@fD87_^;SB($mKIFMr`0^R#cT<9}>$9N%PbT>3BR zf8K_6rD%U0JmGZkdjan*1|%^MxA*B{YJNCFkjMxNN?MSKZfFR$IZ<28;Hl2qTx%S<^RY?!qfa& zl0GY@!W_;y6!7h3oORgAS%>AG+wWb-dC3>d%y+l&o(=FmI)Oy=hT<{?N9&!K3!rjkYbO{p3eh9R!!!x#zWga`@imi*MXmZe~`AMzSs= zFMK$p=&Qikw$E|qs0tq&tzoTK-x~a~!G~q1eo<$A{60|aOYQ^X+1s_(9pRhQUUwaN z!m%;r{X6!$1K9e|&2C!Fy4c2gY6tF1@pTYPw7#D9Ch63C>~LB$J6JQqr;A7{G`qRSw(xFI472sTipECuL%kq|+)+*uM%)C$|c;IHP8^>k_-r?P9 z)?AeL$@ACvs*tC1AfqykktN`r{46E^mr$qbE>eeg|8fSh{oU+k z$S)<}qRuHu$D(>F(TnK&rO59oAK!=2>qID5?v&G>7^9r_#F@z6_8y6kjnbvm(}0gn z75UoV0{9CD@U^Kz$5w_9R}5KKd!M~`?&gefhKqY5jDFc`Qf% zo=@5jZbYf08QJd%d|OI5n>-3w%EzZQBcOvD{UihyTtl_@I&W8#&wVcNuL8H*CE?hiUBtm%BG7 z{S%_^xPsfLW5PQwyTAM1b`^dAO<(i2%kJ;_d^?l>rT9b`JU4)=f^9keVjYKEmKS`G z9#c4h4ilf!$P$zHRmlAt@H7-zR6GKS!^y8NJHx>+!WkpJMx|I(@0=!$*j=;Db z#=`ZhGH6Tx9a~Oy!9JJu$l-G0Q{kIG^RigQH%;s+-nekr_T2{OQhtC>zK5SJIzH); z3xK8Ow+Eeo^s@J`{?J=k=|=df7d~W z@&*}M;uS@MKOvCCy{(!dwl)3`KfW!`}OO7@Q7!Fo5O@CqH3pqCqGKyq7d)}eNJ&xY) zE$C7&wm0n^$83n+7<#BL*yCnVcglv^4qiM$-D)FM|D~S~3H?fbEzAjc9y}E|h(4zD zNl$^VnwR2CA~$HV@+tocI@ z><Q!{2RWxnHh@Fax8tOa86L`)5wj+6Wq+uFJ++K|RQCTG_R0^Pw>u7x`^i;e zNU!7BLOQ^6CFx)BtRsB}&j(09%ri=QJkN(nujW}o`ZS)+q*w9ukOU%o{76fe>OJ(Pb* zF+9C|ig%x$)V{C zKDH=+T$vK=y+bIoma^ZWOkjdpwCuPtz8Qw~`2_fE$`$};*~lg_E_{9LGtkmMtoAcD zXya;pvnrIv|7=U1X+fL%L=US32g=y<4bP*sD4j(8bK%AEv9G|FSbjH(rKUNt`(Fs( zMY~(k@61vEPcuW;9oM&#AUamctflNt@bGuM3U5sx!aP-<;=Fx;-&M-js)Vy|J(Sxz z3Ao$7lSc4Qq&tFUp?nNQL#0D`58ffgg9O0M6c5r39&88yn|a#w8$FEn)bv5z#|1vz zAzY*0Qt-PToY2@bX4yE#I5>WhgX8mur4i@bXp+rL{!zl;*9MM%vSBrA{8PApTH_y; z9~yW3_$Ohf()cO66dbDE$@sBZhV3VQay$hG`4Xhy+7e(5@{Nmc^BMaB`lm9&9l@>{ z`D6j{2WF#V>-8nqPUUdZwoAOo-5#lW;0LWm>Yv}R7SMJx^%UciS7ARnH@@Ro+u|Ga zo#sJ&gZM-74vGo=F}6U(d0w41Di(!b=x2;;@o|*BSa>2|*@3=r1~Rb+9Fp&w^7DYJ z_AaF*%RK=9Az!$!FgE#y$rsK8Pnp60bZDJ?;Z#=saHlXADStROI+Yh`TXxF>%yAwx zO>?q4ZCqPfUed4jJ>fAc=;U#pIamPUA7(ZW8TY-DBr$4Cxa*8 z$7b%@m^IS0n$ZjCK709I$+u7U2DBh^(f06W_Gou@&a`XESDYo;Q92lhCu8K5OL&*Z zd8QWp+oeA;kn26}p;tbr_ncwTdjmS%0xcFF)k?aJ|Lci=RY2Vle)aqeY$+M|{yoWe zb@*9`#=F@c43l#{e3xOku6$j2*nr)ohxX9 z=A90YzXKmpJ@*j@#(ok9M$hKoQVt)|3Z7aIx@RQSUpFx{o}|B94-mrwywqA(ds;j4 zo2zBb9KX(@#Cv&^zHY@QBw%*ThbcP2h79e&OEGe=HWBSq~_s#XCBUT=3%Nc55G|Q1oO}hP1HOz+s}VK4>tV( z{`;Ky$Zz?d^U#T2;A;A^Y`0+zAJE?kPJeH3`nzjDf3uzbW;y*G?DTi>!2bG;xqbK< zD?V7j^m@a@m`c&bJ-{|a7f<0V&JlR8o?h%L&;r{Z96WGymhT(jVrmYEn`%v^{ypG_ z=Aer6wfmT_K#x(>M*Et3?H?_F$4*On`#XjOFMsTN;%12VoAtV3{fTF4ec-EauMd=e z_WJnofN{P`p4P`7^ONhNi?r59G0&s(a)NR0eF(f4-RCJB?xt@8_skY()Hv{G{Cmms z2JB}+FX_Bb4SUZNzZYV!(7rj5eJZtYewDtZ_RYM1U}K}t-G`I=iJN_IJN%eeQb<6QQ7|LpK4jq_Y+b<2(1l>*P={-ew4f%Y~KM05-w#(Uv2{52q&|+uK9Gyvb{p`D3_-qt-nKx~bv`*levi&G z0HYr0nt11k7rH;z8z^DTRFR)Yo)5Y%-rLTDHkUxtBU#7JC2F5j-W=XtHX=OZQreL1 zeFs18>U824if(5@*E7IReDtVWYd0AykUV_y-JJgv-H(h;*1dx=UTCMzyIwEZo%LGD zTGN`q&&yl$Cb7v#=Ze2$e7Vq5FZ6T}F?zc7o^{)$_*$eZNPE%!x*grG8{Mz>+Snp@ zzPBxo?zbftwROL4&N~+ncR^GocAE_ibf<&}Phb)xxn zeFu9EYh-QpvAMh-zD{$gb=Qxaa{N4smxwZtdszp9ZIu0~89k@g-#gSBWq-O6Ty~MZ zn>FFZ|DXo{10T43Av*v4_#V(_yPvh-vGl?7IXCcK#_C<_n(KCa4`TQp=xl;u62i?zi8bGsR(5&16=c5PVlc6|pTA%sEgj#w67%sc~7z|yP{jY_gea1XR_qAqo(UXYo zYrRInzjICiyR{b|gWdRx{+Gf|>y`a-Abrz%eFwXYV#p3fKGQxh3%$?P{NID#MttdL z_OuARN;&)5!|X#<@Fpd^7vEOJUKZuQd`7C+%j)h;j^WLMbKuW_gO7aTzXS!3G~iJN&$f^@+xpK6&4FhtBcGT@_SuaB{?B3m ziNMoD;Ab*8R~X4po-1sNRoVPZgmZ-%_^Cvg8@J+cPlTT|GtvhQ@J*QsP53_W6D+$w zNLY()SRUg|?EM>kk8}n$e~Dh_{~7-Bxc&S1z5D2X4F1FZh@WinJz7jLxjUV9~d)>g-bjrgsw!YZdDz*BIBgmAN;OF?F8RjVu|GzKwOh7um#({?H^2wen;K_p|0x zaqDFdI~AV3(~;5445LYL`91EWUd`>uXD0V)C}zIi`=DnY;sEO0Z8~W$|1-10GX^u> zPUHZ^ls89Gp1AVFvs*csa+1Z&F-Fs4_}clPRjG5g();a2Zq?b_D@W>l?YKUjy}cg# zWZNX5S2^f6rC*c1uoYSSQRYiFligo;S<`iv37wqoD{Dm70$;fI?c65&%rp2P_z53k z@Ov?Qx7GpkSmnZvRTFpEI1wSvuk48x=!LYGs4mG&g0EsurRdTu?i@(bP{|ddp^|$` zprKyTQ1GG*8d_r0(4^eE515v)N2E*Uh2Ez#?kM?^d$mWDut%gz=C$+qmi<6w>L??* zSMO7DZzgR>?(O7vY>)6ddjR`^iB6R7goDXFf;{Bj2>VY2J!%PigzE03OxXasuJsf_ zPF)90ZvcK(x3#TWAFY}m08h)o%lXi3!7!hApxQTW8vt{%0sCocPU@MHGG|U^&U0D4 z=!3sXJF*4TE;(ZRxqQYQ3Ek*>MsudHfHToi&O_HwZ_DK_3p>xFjf>CvALkc}OOcCN zubK{U3Y1kFZ45>T4w>;E^uUf?PJo7CUtSxUBD~p zMs<$HA#vb%S!!fpjoN=}I)# z4(FVn8+@3096tPky0k{O%ye0|(BE*?5i5pW|5{>mu65d3a38S_`0u*cuwI5vXf8wO z4n$+u^Nr|>pZU`>3fvD>m@_qubUlbEK9sH^U?Aw~FB z+3ns*8I4cz;CAwV*4>8nTc_QzPP=!Xpxsv}n`-w(r(NRF+wEraRJ(T#X!lyX-Q1$< zop!%T8MV77j((i~%Nh*p$4 zv*_Z~yg0VH2y^?dY;{^olfloW!2cTB)V!I&ByAO56gmB0R%ck!eU_(Tqs9g%dm{SE zV5jVZcNvA!F-mtV+wfR)K0WMVs(X~`=D+O06+cYU%#=NN3wzrX`YYTnp{?!U((yXd zr+|@kq@ur{vsWFjBV9Aa#r>deY~M*e=~~9o!yYMJ>9=V+Pr6cPpRnh@=GZvK-=2yo zV+4Q9I67`mjziInA)nv&#%A>UGMz=9F3ceQcMMVeMMy*ky8yx}7pR zoifY5hp!H0)}DfoL9$HfHK)w8PMHNuh$~E)W#jP0O|})<>6CfODKl#^>z^_U;D<)r zWzH;mR%KYbze%#3{mvok~YI_>_*X?H6+%eVNyfY?gUI_=6{tu?gz1nvHfvZ;2vopy)u zPVMINRJ#v2?e^RR4`#QU%bi@w@!m=q&7+IFE&N}LuJKn+yBSWqOHa`5bCgZByVYs; zJ)UYe&1rXu)2lA?wD@bzcV*6Z z*$mAMHeuW z-SYwPB9o`RRu&NFhx}#pzqr4D8UERSc?`xirXc1-@zmHj#AXhB$r)dY?M;C_RC61b*tf7`?xEThm1t^#HiLnz@~WFI_D*&b`1?emU~pDVJ?W zY36M==^9`$i*%)fH@m@wO5h@#8tA)IOBunr-GQ_CpM%&sQ}bHSo_H5)+vb1zP3s%% zg=Y>v#yiWWXJFayJ7wp8jL#KiPoZq(m^|B;O}=J+^h>g5#=wtN;C0KGF`-Y#8Y|=A z)pq{Z@%|6M#C__R&B{O{$zpLzDUxr%u{Oqrp)&*I%M=6T?Gmd4YvLv_fDNgG`@HoB}p25~(;U_9lljk?p5@?-=Y zkblM!@LVyid(KPUqvj=cqWtl4@W*rf@`xS%F>OZhYhH~1UP_LXZ`)?q7tf)e>cD;} zKI%JIbH>R>ES(`p$vKOTo7Z7Zd9%;7eoy(@5l1W!d~K@yE#zx%Q*kGTBD>0tyR_G| zey#e4AF=k(rv~~q&*@ty_@chqF_ZA8>phULz6EZ*2H&A~55ON4&pjp!t;IhrB@2z8 z{zY1u4tzW=Ur6UXw71!^5d6Pliq#+k5TDpv!8(v!G#)&bjFX4IyYwJW0q>+-lNYLl zK1+@f?e2zlORkYmmHblLq0xQ(@1eYC`8|wFF<2(@-j;>XYj2@ntdXYe&RGjTXDsIS zBt|FCg5qb*x{a}JW9T?z=r~#9(^l-`j#6YtojuUF<tkH4Xhe2%hhmo+Fqum>4i-g(F3qFu_|y+)Z$l(yV%T4zoAnLj`C=QlF~A5mVhtev>(EQY(KqYdW6QPCMbUisiR|Z( zrtIhc%ogPa?^ipqdh75ha+fZg?sj7JDpqakj)5+G(-cFYoBrr7g=U_)=z@fQ9q)f; zJqfK%rDu}<9qE)$L7Da)_L+IeTv5grVD7u{YpY=|iS971bjFgwSe6qd zn8OYE>2{nl>Ckr)TW15lPP%_vy5KqJ(>u6#!RzQQW+M-X&ublVoL>U`y?B%`vcN#U zgbuwQ;Fl04{TKML0B4LN_#Ehd73r8uWW&S0em-zY$4+04oxX>$izZZY2WlU-dj9_d zKi+-$$N=d}kJ;x-vCk_Wa>_oR=h){<(5d!t4_6g1>ckgMe1z;3PtpDk(stYE;L07F zD;JoItV7>aa&pV6RR7es2ywH^B`2ciR6J2^jnx;8oxKD*YB9-3LAFhPS^~X9#Bp zY`NeD>a2a`Se^Cw#oqzU2KwZ5>~VZ@@JoJJJPGtpdg^u8C2eTZQ^y8#zm1vh-ElZE zx|R3Bsnp#Fe%=FznC=49{+ELLK%3$A{1i=wFF#6;lQzRF;C%IH&Q?I9v_E;EEyege z4U)eo{*t0E-N=ZdBlg{j!<@SndG_kwK%U*m527o*x<8O~1?ltY&#ZySXgHs{&sqSab3|&nAiKW*vsD00&b*Yiw@*F_V9in-Yx>y zgtxoz=Uk5BWW!&$-bsvpXVe$x(T24%m)$dIm$_`VpZ|O=kIrG3^2})-Pw{Sk_HF-s z?dixH*p~g+mL+%CJUsiH_O}A$DVvW(o=WkNYgun~j=rE9|KtCrF3H?sWb$I*Al;i} zbdx-2aNi!vmxz8+CLcMy1l~w;@^j8QuKPF<909z0us6u2liF{)a>6rimD~g@yG}#C z1159$R%fQ5VfY3di_R01;f0ei!fEH~w-ci?Nh?lL2H&ifE`c?kfi5AFdC`0Avu@^~j(OpprNB)3{GQ}W z=0sEvZ#D;s!rOXs#S;bZYpZ#tX&exW?q>EB_{V_bdm&!91YTJ7xnsVh zZMtW46aLut-7!~!7X#z$D9-c>;hY^)cc^_Y3irA7ZG|UPEX&pNITy`ZJaC7rX>;YI zjfzF}DeH~1hk=9q6o=$y+CK!}s+bY`@%`AK*h%zZ|8476Jx1)L;^Ahs?&aN|mffa1 zf!{s((N)>Q!;7=e2;aK``*R*~M~o}ZZQ4yd$ZU6Zym*vZUEE=OTpTtx8k|qhPDj?e z#OQzbK4ViD94nqjeLT4w{kPr;_XbLnYKhLQW~*%4#zu+xm;#W_iv*JDF!=S@9hSI$(A5$e99 z^ZbLChx@w=YA-l=oq?-s?L6%}>RSaiUiBf5=S#riV8N^zZw=1*cK6AgE2Z3dD);rI zU;n{)c+)QKntSQCtShrm${oJzno-lHxK15D)HO8l7W}L9oo~ToYdi->7{SZ5p7>sM zW{;|!_m-Jml?Pvc6YoWr-epd57Z`_Y;WxXP6T!@2-1+>nhojpxj4A_K`p?ET*JXs5 zx3;&K*9z$ByL^9`da|o-+L*^L+sIBoyK2ft#les-zWT9(`<>N~Zgk6!&=1j??9+&o zviMsYHJ^u=&qJ)$1oV5R^kcn-?H|0tT}#;M+Iff3f#te}#a>{H!(3V3Fz==g?Z^oe zTi&>0WRvly>WwwrlY7>(dvdauHRVVK))`p&T%AqX&8AVEvbs0n(r6uEg|%;N%lwG^jK^g?yUh&vM_{%*`(AcD4s&NZ@Z6Kjy>PS4ru^BaeeUb2y`SALeTZT* zG;^Pd_M+mq&1%+wHNt29wgBCR;xM3l=v#WGX~&XyiTIY{5%i5<{*ZJ-w|{1(!>8(g zBhi}udpSqLx5wYv;+uv~@jNqFw}jXZBe*Z7GQ4RBBnoxsOD%n_d)e3|{g5X=ZLaP>$Jagioq0}E18aHU zcNL!|3jc;bNPu_?E_CQ`@_)hC!9i>Qd)wjFZ^A~*yKkT?&20h>_`>A=$gEzUDbUy{q?C^()!W)6H!E=+-*R}Xd{F?uJE;FnhCv#43dD0JOTO<0g z8+@S}@?;n0{!_dCJlcl`ZmRp{u|7Pc{=Jtd{JB%7>%D~aQ~oc2mwuc&pJ+_hc|CRZ z%=d+=$g7~vj>CzA z8>25#IN$kZE%)1B%YVh`{t32<_ zni_rzyXRB1L#&9I+;RU~&0kNVkT{_>uC4t$ci{4W?Iq|$1uv&h*V8BWHNFt>-B&K6 z{)%@Jh37lpz?)lz{2$LZm-5a1_a?_N8^4C0t9&6BdH3*5$KMi##O$`)S@1XFu)>?2 zM|@A+`6%0Y)HSY4K9F^+>3navf2HivhmGKQ#69_x`)9w9PyE?N<-g0kq>bp)I@djs z5ARM`KR`~1?oI@s1OAdLZXw;cMwIh7aaPCX$cq>u(d*0RZ z9PIRS{96fYF8s~fBJ5<~LVz*J`$A8VC;hJGMS6hl0Qt<-(l>}h&b)-*NEH5s{un$5lkRw( zHA8>HTC)Sz%Px4??ms6Ab%w9?&k1WUWmV6hF*BEhiQ$~Wh3lV9;y_-fVO9JoQCO^U zw9Oq6mNAL8AIO@z2HrTr`-;~Rh0i$SaPjVGjpIDS`Xg|;)fvYG#u1J9LJj17Mf3Z| zL}6U?h&r3kG^{XbbV(~mnVz`dR0O@%z4f{SZvKD6gVRpleZ;4(FRa=r3NRZ)-Vs{v+hoZTN!J&-R7Rhi{*)_FtgA zRQ)d`tbZWGUH@m!T9WU1ArU;CehL>?kgj_^5fnUrOxtmZTWeh z4oxXXU+g1xjhi?%$Y=3oqpXu-?Y~WvAEG^ z_*qBA;6TU7wAl%3L3?l%Jktlqh~{KJHgrs5|H9PP6xiT@37a^|}5N$19c$>r-Xf1gIX>Bd{+-E^+ z!@o`x9uRza{=}(gEqB}B%l~EYRu_RMy6gTH;3r;3_32(mKe#KJWYZ($dC{ZY8xj^W z+sNh(z=iXnDx1c7%IEzK-oMK_?0h5<)Sjnx{1(qr(si_DJd&_RGT&+=4z8!#NT-b& z_<0xl4e=2*w9_p5%75`)<)ri1C#;RqMewcGRl2>d((OB^3cvwte5ykyjuzH-gU}w zpWVvsKL>u4sr`Av>ZHsn-uZaT+E=zdoCxB_xw7KngteJ6_wvroyT3YRmXfYt z%l*8R39n69zoSe&?|RlGf`4?%EFxV=8r#Lnyfq1{oieq&>ugR0pLfdKOuCfx7|IyU z3G3&Sxs`VYlZ7(k-Rgdp2tMhQAzu4R59yOA)A3Vqk22rj zUG%4k;A2i1i*)Zpz1j_fRJMlZ15>W%gp*?0p~+yu+F2L!_gm zg-0J~{0}6o8z>jz+m`z&=hSruX+P-~sjK_P_~cM#7vI+ZI1&7oQ`cWeyGg6AJ=E3w zBlsoC$^WbLM~UD!opLXe?p&EH_b19#tV~#!P%cOP=lwUGHa+V9eTm?&)&Khv)`gT2 zt&<*4Z5)m9b1(Bso&I|hLGhfz-%X@jnv!j7rj2kDzLk708qfV+BfrEu-_X3!v#J}~ zHH);H^cK>Wk-m_0557fDlh!$%b4hoS-bDHbq>D(mkba!>a?z>7S9FLOM#C zn2#&lNef3yNVk$kM=eMABZ;KGF@OCzJN`zmmQGx9qQj$a9mvgS=w$ z6GGCj!eF!k-Wh65dGo--N}l zb`ky;;ZcN}2saa+K-llc|A+8g!a0Nw5x$LZA>jtX%Ltbf{s-Zo5w0eD8}>E%F;oQl zrOIZF1MTD0z2GeP46XBPMe~kU6AL^U?b#P2v zd5G^Nyle0^dW!c6z8C3#R&ws+ynWPnkG_W_=RU@JFyD9bZn_{jcQx-z`2L>0bCPp^ z!uu+|zsq}9BsupX-q-UjT$FD`{G1)lt+I<8{|f1!PcpwNNcSjXyqkFWP$*u06meS% z_eMm%OPa4yX8Fa*xoXq*_%7A=CCRyJ(>;94x1|m^hPy6X9Y2pl{AycON9i^2#6r^f zN1~hJ4L+tvpbt&A4b4qM4j4+f=C*`!$%Kax&bci#t_R^+7dUvn?z`A&utk)aH})Ie zT6^h#**1LT_?Kng-YVI{(kR1!YeMcB<^lHlY4Q_AzhQjqvh>Ezv+jAv$4>KR{Vg4( zO{DEgzQS9Ej{8{ou%nqdh28LpO6tdMRL1*5_g{$kC9K;OuXKy&b(A*nuUN1g9=Cla zMiK>2*KQ?Pew)76V4E^!)2?mh9i^|6FCDlPGM{7@3A2VRKH0IN7<+h8fP0mUJv`Cu z#|ndsvWNEpwhiCvDE$c8Eral4!bb>uJCze~?W)MT#tx@*6PvLO20VeJ{C{w^1omy& z1@YPbf~~bo-`L@Ho3kXawUSSAuKX*s_eJ|en(c zXG26d8v=S_&W6xEe(`_vI2$67vmx{^i~SHEQ0}@i_H9tc{$A%`5J1FN9VcnX@(893JH2AVM)XYrCeS$VT{v~Dh!M>%ov+iauDz;(pEP#&(dc1kn z@W>6op!#d3Mlz;}8=uKY|Yzob3! z@%c0L`6(-3zBK2L&$NVG6#40#t9us5|2KGt%()14YXY=8?4C^$cK7**IRktMcQ0s+ z<9q$%I4R$foNE$t2T@;sr}{#iJGv8C=L{`ycqQkLHcWAR)D7;k&NFK~7dA!cLQmyvwX( z-MJvWar6q-J>)yx^W0c8!`nOi`NUyq=J&*e+)v=||LTk>4zkG~@_k!Cn;Tir#!x$&QEbe1e2`>AMpV972`E`B4*XVNS1Lb#y z)%kEr#P%WExAY9sF_gP|0SnQwqFdPfz`jxcxff8rBJBCNhcT(SG?cp#xaJdA{#~o| z`@}Wn4b5HP#;NV)dHB#0pOcp`ZhoiujpI8?=Mm4%X5(%lJ_ovOa0EXJvrjPBvBj5} zx3|h~_6Zi=z02$q+$Stdyy%w_TN6q_xFUzVR zy~?8fvqyK7PIB8_SZZd9*Th|d!zp9q zh@s;yRvDfAb;MtDJc(v+#}k*(AMsz_Lpr7FoMz`-+UfG*?29`}GgS}Y7Cc72AKT{e zADf}-&AzCEy;;=9I^B=HCkGwq)PJzvN1xVt&7OnKAzXxC0qb*X8ngp_nsk%9`f_F| zdE+_-Bkxd#WNhgVqVVT1_Qo)GSu6jG$Rs(em;Q;~Cegir8vXQ9or#t8RBLHDxcL_U z7P)cDHnf(`B<^+M*1B;GPqvnp5Er4|LS$~Wd63#nxuPpMlsoGRM<=!z9uuK2@B;4r za%6wWJlmm5k&kALp9LId6PB#egud;M)YGuOwe&^GA4fjvV04!@&efZX>4P8r$8PT3 z4g-(f_|NSsE*~%YD80oy-au{jB&+mN^0dF(5gdYUSv2P(_PzzUU;FpamTKTJoN{&M z5UlDNN>z3c&e{?KPuEk-wHajvfZeNI~sW8+hq_>h?X-|4n>R;RIC_LJ7q zCgebs8;1+};e8s9eBk57zg2A!oSvsWN|(g{Vf^Pl_84cF8Nb8H?%n13mqp)(fd`Ag zfda;S7%s5PEZLDdz0_Fn0DF_E^Wy4N$%6hvu>PvTUUAo1=@d zQL5e#;o%LmGeEi*I=7F16{E;E+G_cyo5t_Xu_DHQBR)XRIm_qHAZTLGfpb3d7tbHi z{;|&I54;agt6@Ka&L3C-9{c(4_>Yk<9p4+yREeMenFGI$^VUo0!*bf_XALL+ya4_m z%|0vkd-nB2+GdT9kNrCOGYgooKIB|r_AdaFm)UEfeg8)|>rVa?0q`>dZR)(o{%LoQ z{Y5(efq7n8b)j8MU6nV?+ggs?Q^Wb|!bj=joA6V658RG*+E+Da?VU-0f zo|Xgd>Hb?U`&iEE?(uy&$o-CoeCe@Ay~qdC9Xh1@aCMi2^vQy`_P7X-X_Kw;-Wune zZ!BD%gMCbVChl|Gh;1RBPWKjPu!pCjOLfV0*1GxfRaBn?^gm9^)n?Id&A$rP1-}-I zJiSJZ#iv1Y?knJ&bW+l1c&J}Kq89btIoKK_JB_jVMd{OE&hNk;um9P=M&r=L9T}pl zszY`twf*ni87IbO74;PQ`qi3$#9xPA`y@2(Qs!O}@Ls|HF6>(fGj2bo-Bvc@Fcu&!an#v|nf)dl`O5 zo5KC8OKul@=)3lbHV30@GvnQl^C(GIc^+I&N(TyDzDb&0qoNDOTI)*u+yRlnot=W+ zb;RdSwCXpz?;`&Hn(&9fVm0+OX9_gy7@mbgaZIHP{$Zj;Uv znM_<0akWZk;{1^-i915v{feXgpE56@_1ulwKeCv(uqm%=KhB$v1k zh`W=xIuq9|B7Iu}ar22QGI3VqBI0gUK5%+C@TnxcoAC(~E+^c~_*_U><9HL_Ve(0b zH=A$;|3duxrqVIy{Rtl=-Aw&6<$EI;q`jW+0A;50|0w_21iP}?v^^=(ga3kmzKf5m zfO`>ee+Pckjel2>b~kCel2_@3FP57}^|t|Y6HlHq*l;Azhd85VHg-qhiu7IMD5Hq9 zpOAJm;bnyXO?U+13flEA!WR*4CfrOoLO8&j`hf6I!n;W?{oN44b);z^90rdQnP*|< z3TqGU%E3SGBTvI1Z^l)THBfBOlGr!Kpc{H~p8UNSb~k&aCa z`jq|-{??{Xq`wqd<|XpT?>GRA6mi1a@teGzRcqOFe*zLIbq@edL1if+0NxIRc&bmk-K z>5n{6){V2b!GRC?-jzh(fcO2RQTum+6Q+Dn5j_j%GN!-p9^TF!ek?NSK5PrIZ2WeE%Q(O1m3km>kz>uEL@{qaUK=`e{`0?cweyg2x-HE zJ$Zh@TKgR0ETml*POM9`jy;6F@#qu6^#J=L8I!MA)eni@e+9k5@=W}P!e2Lbl3C%R zqebkY8g_v-zk4-jH?S7aL3P=o7uD z3;*HmiLz<;i&>uh1JPdAv)eN{e}u6*gY0(O+hi z?ikD67%R8qm$n;OXEE;s_$)+uYp>qB#7RdbIUoa@SbQ(Z6Ud`x{vkt6CB9sE#=fOy z{A#afybd#;)JFNJOJ5eItZRu^+^dvd#9XSSU7F85d26q14q=V!4$}MSZ;17c@HYoJ zM6yQbxflkY?pD9ZHw)YQ4)#11#`7plS;~`4nkMc_KQVP$ozDG|jk4{YDRsIpeiu3* zt?6pIRi{d};;e#Hol#Uyy!?iDB~+(MR%_z>81I^Epz#y2i(bsRNX(^SqqPPP9Ic&c zwG`3L8upi-WS;&jEn1(AFLWJtfZEHg)O80vc7FEo%J3t#nYzDwH1~QJfn$E2d5PAv zy2rcKO<1^af5YF-tg7f{P4k1h5$Y+X-?IwBM|V+nGh-j?2^~cCEF5dKxa}=@S?#6$ zyLh+Hc)sq$R8L)DRP(M2XVX|mp{=Dw-L2Zl70?6i9mbcZ{4&~J6m2QZ0SCdGJ3NVd zJn7b$iobDAoM&ALYt(t$GN3uq4^-vYoK0QJ`Eh$6s2XDHK4bje_rAKmuYC#ce`CXF zLf#EoNk?}CtiwJvx4w_0!xG-c3GF>}K#FN1fcwv4q`{>I^`ZAKTJe*}`asHk9l0sib(wC8=ocNLHnWH_Nb7yf5p8Db?Z5O_~ zaqis}l(Up)2Tuxp8A)I8%CScldm=GI2^_sr$o<4F8WwIW%I1g`RG5_iB zNcuZ6-5M=_dh3&p((E53OdpgPeQ3hzMf(eGn7yDN%M)8%G25KGIcWT*H50l->!(>M zNlIURjI;NN8_E8_Nr!;#s|9TBLeQJh> zIq0q9E*j>b70VG#dK=$M^1n=et=Ds=xjskL%yEl7dTQr=(fTn9qAl~F6~k|gwtVON z(fV8Qt*>0@nZA6Kr*1fNwi4b@JI)i{@Lj4zrmP)A7!UMzv)UpsQ6*{5DeIzM!#dxdj0-~$)M);z!*W?g#J3++l~ z{3gM3;xwceb58dHkLZG*w4oopB2$60c)#|Gc);moa60+(MfEuD4*!ml8*_vE& zo5Abki(_lp6O@-dWN)S?*&4SN-Kmv$&E1XIKSx?Ak*Z$ApVa##H zHM@P*`0Os|2raL<%g4}+#5j%W73sxXJqF+WE^Ux*B?TRg)~xwn@6oyhtMp0AxqvdB zqKx<4GG4&nb}%x{g~+}yF|YrOf5ubXRr9{DTVyc(QTlA&8=xN>xUXhIpKg&0X?s87 z-bYWffxBupjBw)q4DGm(xtY$tp`;m2cr5#;Pf+gnpr`n)roNB9W&`)sY$)s&*)SqK zvY}5}WP_Cu@tZol(>Ih+7W=I?6!LEb|N10E{tUf%>fQwEjy|*jI&t9*-&(LCt6QvV z#mxqu8-~Z$Y@qKi40m{Ub{8vUC;iXvYUQrY1CCa&+T+-7ti*|TcTfFsW@wyMbv(_^ ztRc;av$Q-8zs%9Spm&1fgTV1eq!GRBN?Zao5MQa(4LprJaeCgXxL4%gBfCZZ-M4Gx zn8y?O75OCFik|nH!@nZ_jpScnPox+0P-VYHn(vcF^yp;51cS@%Q(vf)|78<*R|b}1 z6UVMRdSp#z`K|q@TkAb34;<)Ng@OKxB9TB zMt=0jg_<|z_ZQ^VSk^dwm!&#$X%68AY<|igwL%9pm;B)QVd$asp-({j0`3{AHQ+>C zAF6XyH-ZbDb(hlF{dc-c>FmCsyYvl=Z3!@c@zrW_b(lIo^?l+mMX#;+Zsd_ZQ*pDf zb1P1I%zVFdx2}=Vpfkd=0QQ}H_CE~P`X%m%5U{Fze9I33xR~>*W|O{<`5^fOnX9CZ zZ}l%9dC#9wlc~9+c;M5szhxjkJHRug&&;^x- zEY2H@!|d3s@v?cH4>S3Xei_VO%XauLwyPE4UteHjqdvY3z7)ZBJBvMYF~Y1rY{|sC zsY5h0urT@%>kjybKLY=$LcdztojrWrp##>v-KGyOk8nPMwNLk&nRQ&sg?7PQ9KfG9 zk|=slTJdP;iJiqb3kKGI)yz~{_U@$*QrV*{|+gEpbR+qX{GrGdpyVccLtR=z20PBxL z*27;*S(X{lp2SCcRV}kD=`~7gsN=-cE6sZ2WH+rh3hM5mZnaHv`3awo^|UtphJjnUS9r$mG zUn`yH-4S0u^sRkk?4c`_U)6T@vt5R~(*Vr1FFMZ+k0qSNnHkazX7kqk)LU{>b}!3r z@C9RosP7PU9QLJ0)Lv}WD^6 z9L}?APj)0vVUJ&BpnGi@?QeQYYk+~Hnx3-q-psPb{D8IPF}062sBZPGk$(Jz{)LjA zvt|U>2s$YBH=Ml~=4Yc-wTyWj*x)ti`#m9=hb*>E?|-n*@&vZeYn{Cu7I#@{UFlCg_pS0| zZ!1&ztP6BDmf8(2tj_Ox?#qKjO&NSY8*5Mq9^R3EByia1$&KMf5xM$VCa6w$1sK+QGDeTaLV9)g178o zV_5e~pCfoR|HgsYDs*~V`Y~UDSCiM1*PQC1IQ(!)D_$~$_d)LTnhq`qX9m09xqJ)e zar`TyU0MAs8(t}Uuh9iGa(-wI=TjToJL}HNIBUK7s_0hmc4QWMur18v#=(~Tm-dcT z4TF&p$Q!b{R7o$?G_WAg@98_LX`mzj_vEmi($P3RdD*Q0aN{e0`KyrcX_ z=VCLsXUF+lYR7bEoU%BxoAp3?gtN1StFeY)E^C!k`Q1j@>sIJl^bmdz=rZu5^F6To zB>U1|M*bPbecsDc{I%uC?3@h|yM?o5){-X+f4sHKH4nDt$pfO}r||p;+wTk5pVxs0 zSM$B8)3@aJ?+oxwzcmnj=n}^B(2xJ%(j`y$!%Ohraox-==No@a(J~TDI2j8?m+PEaf`hl0SaITkVhI zOp@>=(HiqG=OV=MMgPAJjtNh8V@DI-%-~!6XeId-|1|Mg;AtG6r4Mg92u<+x8`X5s z%Da`ecmCEna<>Gmu^PK&thYq_@31V6hM~RCVa<{4z}gRQ(-|@4%-19EJmz|8F}_F< z_JtI4ra!!BT;jrR({*kYzOo4xZkf#KIBxrwd8UO} zPvpGbQ91w}S;bS1pCB@#nb*1xJJ4sbGe_|sWDgx}iZ0N+5PXGG8&$Vw?dmgp$ipICX9sPCP=r5BV9B7prOUXJYhyIdQ56J^>478I;Qe2 zhTk?LI)pE4M8}9g(Cwz2K*YKgMtoo0!-{gCGR7OePx}#?GPj)QJEC;_s@YG$< z&eP1-d95AEb$6F9D8`r4*wokeu>+g|5k?;yg(u}yl#g%r^``zlv2yTiNn6L5?wrjR zk6SC>2K<$lWkesUz`iNJq8oupxjT36A&;rkrT;la<>USQ-;Mpa99&nqhd%EZa|`q^ zpLo@$dL|QY7#6KxXPwS%z9d?Y95VJjuT@!W;NCkTezG23T79x(jOuEj&w`Wi=}z+Z zC;vRk9PPeUZUtvEB6HM^A+CIMbU|OzHihu>ur}s4VN1>T`74p@Kr z(P?L~e`^XpUrq4XmL=YB!|{&XseHqyN}I5~20Xo!%Hgx>%ah<`ybt3NoHWwwX-=x0 zN+Ubf?g@oS<&-k5_tD=V5zfVxPz}&aSu}FJkk_jj*Xsv%z~~S8M-!e z-c^y>Li!UQi~k~BIelIR4*5wdSx2~@GqPs2;QcIZ2tnH#*)td)pYISS7&LX?n7ixd zg1n90{ki(LJ5X>}e`|BaqP)B(SjWMC4G!DTf zr~yZp)0O~uUvYQNR{2OQ^ji1<^snr{`RAFE32S9%p^v(&Li9;}KEE&b(wFCYpB^W; z_*4A3>XY_`z{8)#7th#7YRD(p{G4)XG`CzlSKkb7_1egpas6W-l236K_7%ZHv{P+g z3H$1?c1`F>!tmoU*e{TWQsX+NFzsz}bxh_zYZBeX z6NYbV40V@k&REW2R$lBBIT`8ZpGkwBt`BMSFGBi@_`Vpu-EhjE%oF3;%@e;c z=bXPB{L$Diq<*EJz=b)?L z{-PGyGQf*{mB<3JJJfoHMS#or9MSP=^gZB>^c#{@1D3}=5<>3D=By>^j8x=|7fzj_ z{EnU0zINB{pt>~f=hs(B|NgT+?s4l>-(u=JF?9kqnSwf(R>QfJK% zeA5Ldzvs^1h_^0FWb7{3omq}dEO=rkh?Ki9jl*!`pfAD?VLs(wv^j_I@gqO6zTaEy z$wzLpVvPao*^4~e@`j_Yc?DVK-{_s1>0_g>d#nJMT*Wv&jZC?y&0Dn_f5}BHzA7*0 zylvwC?oG%6JuAL5o^#fW{rDA+XU`=bYY%>)$ETuGIz)Pv_YrHL&8&e!UT@WU^zeIi z-cBkyG#v6VLJ@*vRx7+wH`TSPi;MSf(*_6E1 zsq;F0@8Vl)*d||AtO>rQG)>Tr*~As{_Ir9v7Ozr%=;c2B-$h+Fm^^`4B5jWQBxZ|V z(4RzL5RaS9IOJR%1t)bIZ#k}*2N%1=JoU`<(Wx*XzULsOjAHs+rTyF&gY#^c=dO_VGBieGiP>2iph z%>F>-)%w=_bKz6SKj~FXxo-Q*i4#p}yXOzA!91+NysW`|tiigl2J2cEk^Ts}ROGQz zYv57E*oJ{+bDY;5)ZFU z?ZbXSD_nfH`EGLlH(?*>&i@|QW~4?a|5cr(2fdyOUHCWlKX3n}$($dTbR5}zF}A_M z#Lr#V*PaBuSlTDwz5u$^?WXFI56So8ZR71vd4I3uQaj!9Cyi%sVy3mGq#tJi-ZQwH z{V1{~=NeS413z9!Lhr@Ay!>Ko%qrx6&6|!ZxfhG`c;0-wa=~@|Gm_fhzGJ}wXu;1G z+_~UDVqbGk_M5%duh|Ao@cW}?{k|lEUJV+J&7*YfKiO-^JCyFN+NO84v+t%$a^c-k zeRq#mX)lkyx8)#9Q`QT;tg4f&-!%?R3!JmDn`CnY&NZ~_QRH0NGJN=|72@yx2zswa zSvPILZkK`Yca!v+;7jMU69+SI@I&~rv}u&P1vvbP{JS`#PBx=QkQ@Dd2SgraZN-}V zfBf$yzu)Wl#G8C0$rrTjjrdzU!hNEDBLA-c;r}Q6SH7Q+b`|%+Jx@E{nU8Ssvi3+~wZ0_QfC;p6pYKWnTX9uq<@*9e^t-PY&q*p>19HhF6( za|^l?={~<~EaQ9a#&v2#e4OKL!Ka`y{$KyLWI1PmZ}fIEdj7@eZD(|9=gF^?Z+)Q~ z`7=hb20OFv$~Cti50ws20%xJO7A zhnM=i4PL3a)Ek|e%2k`TaDL|&&hNYLSjn!CM>?=iY zZ~9ctTWfl?V`O)0topSUJ^o2(j`|_pjI);mybOVtMd0PgjL0Lbm;8OfP5gk)_y)wl z%kl5|oVyv@k)yXTf1hLiYOcPSmN~kexhh@gBh0_&i2En<^qalXr$3+BKe7c}dX9N5 z-<5&L(r+g9oc{bMH=cR}_@KvSEG1zF_^A&(6;%0|YSpUc=1I&g(i;1~ivA^0J=d3z(+tnEW@KF#86O4@AS|f2z2qZq*O5#;}jzm+3$D-Y4u8wi^S8_3DlN*uW`Jgg-NF4-{FZjpw(?@!N1<97adsl#v!|WbE81oQAXoj*?0TIe)e7)V_rmAg_Ly_ zWnJmEB^W!spSJW!PYtC+tDN%EBOh0`20M=(`U}&ZDd5`G;Mr8>$d8#Dy2s&P?i}H~ zI6D#Fuwr!W+-YWf@^jeFw+lYJ8-J-n)}y=Gt9mJG8>gN=vA0z>XYCe2H>ER>PNE3< zDHtqs>#PQktg@ip`ny(euy5?IFZSb zdQBYek*)Nr!{>~B0p~wkjDt7o=wTkN;k-!T*T@`E`-)ln7rT86WA)hzZ&{49ZDrnom)l&?K_BWto4;M_%S&&P4zS~KKQ4z zcPf+nj{8L(eW*R?$Xc574!w|`rOt&%0dMd=^4ve$1c%KUCyP0@eS0f75Q=Qx=)B+f zM_aH1{iNz}_T5XDK%byR=gxNTZfMDgsn-CrtAW`RU^W?;6+5`b+&Ssaowl^7{rQq; z%kghVjsHi-L}M?=SQHP`b`MMBlQJ|Ae}wca;6N#-%sn zBhtCYd5PMwlyuTB>#k>~A5I@n&6o^qih)fLuqiaKIW?o0xFX^TiMz_hu~6*9>#b&7 z(jJ*$%Aj0$phNd&(}t-Rb}$#GlJ^?&UQOO9CU2O3qK8f&9Dbv49LHb$vvAy@K^o_D z##e2Q>caSm0}j2umT%$oinm&!gI4Sv;93lh#_x~jj4;FJUUqR*=MRDN;71Z? zSe(1VN$qg%as!8;0lI5zGIXHWW_3Dzt#0M6; zd}p!4cfPER;&I}A%a|+Te@B*dvBS*uc-vH`c%FDXM)R zRrJDwUK6E)< zOkdQ8`25yfJLq3GU;B$+-_aI)oO-5GM)_y>OfPn5qH|{j{vXVvzcP=WVIFZdo~^R~ zr}1j}xGne$bLwK+u?bmGy!S`Usek!;n0{z)kLa1o`4Qc^`OdIt-WhE zO$45A?o(v{kiO&R0;mn0&wyHn?04?|jk-1X)qmm4oiO`fm0xq{EPq6HRh(qD5BJc1 z=>)ep?U%fI%ir6A+Bd7ZLipJ!tz`E`;9=rXO&+;$HDIQN?a@L#eW^PK}ykbkcGoFn@OrOYS@T0v~=yU^X(0|?B&erp2OB-dj zCls7k`?XJ8`@&cJ;tczfLy>`ZoxwJy^y#q%(o0^q$P-VmcxPT^#LjG2n=)dv2S{EM zOdMHUZ8`b3*5GpXl0us+RZsk!uJgx8=OF37c$)ZOn7e3oKWQ-GmVf=#}7^NvmYXk14=6#R$9p{{pp9p6P-APSH&DYaL^q` zrSE+wGL&WQHN5AeYBPT{*57``$qZ2j|eQ3D@?sck-S) zWr%(F(~cEOn=P&1fz=?{@;Ib$eziJ!e{ z!fCNJ{p0JHP~@it?P9#J|3-t4fLBL`_S8NkgYOqH z4<2BBrL&1twsV)LWKie6G48vI#N4tI*+V0kMn__MhKFV`Zv*g9<@+(;4-&Q+Q++Q- zUKplz9Q(-h-GCpr)#p+(PBlOJQOU-h>*klw%i5}c9TOdzEIj-c{h1ApWS{QNobgA- zB1bsuYiDg}_*eD?vWeQhk0##L)f2sIy*Dtqfp6tM4E!Eg+a64W?-tQ+>BCfq@};}$ zg7_Sde_M4|wG3h{dx*Rfk=G9~hc&k~uje+T+e?|xFE#XKoccsWhu;Tw`(Bc+&5Fe5 zSjQ5l51sW6s@KoHZN{+5&t7HojcgbAD?X!)YvKs;dMnRArRBDmjM^Ec586vSzH$p@0)PaLmyVp6@SQJUF*%WGxhnF!cLJzAu5lp#!tABp>Qh)K=`LFhAzUiM6mOSo>^`)(fXWUG^ z3f~2-5&cLs|3pWECZFboWEPcCO?$L}$u{bG!m^*ZygfK*QS>3fugn)ZU@_-!f17`E zJ$56HbOMK1_uuwlyU`=M1i1*9LZSWHMPyYzt?;-T;BjAr$IXDpU2k}tb042`pWOp)n>D7t zfY)nIHobmM_ocdKBZ_y%nm{&$s3A*jMflzMi9h zT6cIkv*0i^Sz*a2pRaE-a#~y;BD`2YA3f~96y5Z_Al&L5dzrcp9&+?=YEM&Ub$v5u z5`=V~<^|)|D9$s*>A&?vTTrxn>Z`5h9Re?;2gt#v#pFH2dH;v-ulN+)8*0_(SGS=% zn#4Y}9+RcZ&hdCBOP^hiPp)*@tqE70RzAZk{?-;09Pa$R+BG27j;>2GVtn1B_x+@i zKi_Bk(>%O!17p^(ZvGvAReXBP`%C9ty!ffOOI^NQk>>uDDocdIoWAF?YApb%!&NB~Lj;uKxo~yGa*k5gUuGR>> z(Jz4ChSnsx`+-Fd*f+Mf7@L1lMa2TqhA?}6<21qlBhR$(cF#1{6Op1fJ;+A^lb?M> zu@vTn&K?jxA|H>>=RB6xsWq#=27MPFTSxy+Oq~KO9X(EYZnVA`dKw?G?Xxyj`#d~e9^a-vzSJIU1>fb{pfWU1Z@9hH%+GrI- z>%qasPb}7y!2PmMw*@WFw#(Oft1sW5)gH_eJ>BTB3*kZVy<^ss1MOd|Y!6l|{L_5< z^`F77IO9lj`80K8F}_j!L9A`L_R}}D>Hf0K){~a)rR`du20tV{?e~&SHk8Mp3#w}? zb%|as&i_O5&CeU1zzY8z6I#^XjwQ}`$o``~N|$wXZ(H#F|HcNi2>O#P-h8aL{hht7 z!7R>v$!2YRc*(i5;7+q=w(q|=&t-5AWKyqPA-mOL*`m7FWwCBQ@<({hXu%~E5uHqY zQZl>bupoN--pG57zDs_ux4g(6Xk_-NV09+LZadJ*eSglmfNK97^1u9-GeNC?r{8oY z_!)5WuwP7LxgUM)LHN1W;*Gumk&nqM{`fHU&-7U(>aTF@&adBnTJ?(F{5r2KIFT~< zY-nO;Y~tOT_2WV}GOE!+)I9(n#8af8i{Yb(!SpjU3W9 z_Tpygr=2qr9K7lqd!F{Xd@#28IwPwYo_KPt!yh$vp>%8f$aT)QV6+TgqC8KB+k+dS zT@xA8bp|GWJG8GYxUO5Y&YnZG97*9mJ*t)pJYPKHk@=PEn)5Jy*2*hyF8 zqzOcJvlsrHJ^#u7 zqYa~LR!cT~23Ru=k^6z8#oFrT589z)#n3Uw#&-}OaHs46k%eXqdq?i!jUQi$A6~8Y zNFMQfE--B~;ff*?&l+X3by>(h08VFRS@ySzG?ztV;%jDw9h#;1C*EicnsvCVKhnP^ z$g6j$8Mm~^jnv(-(^;RACvxg0+6{ez4n!KT)o}J*tYe}D-uX7ILzkp~;2ktVcxi2d zR`7T?eOwL=pbx#vm`A+(xNp@}0PPViYMja5QQqiym=~eg58z!Yi}`TOI+kny{_ld_ zIhkGky6--0amcXgW=zs!t1pmDU}%z|j|vxpTaq`lCK3D^p;J-nL5_)a)QcvDBDJi! zoH-JQmF7!aW-)WeEzb$hecX{#MEfp5{#M?Zz)J54H)?ImzFf+d-0Sb8hX7|H{|Lq9 zmNd7_jM!xI8eJrQc50&^zv^Y&4HCDFAB6UxpNnLdJyPQDvF)7!fgP*s=BpmT*(nEE zB(?*YWx|;*cEezg?P0yJ|MzEDQ&=&>3%mES8}N0>4zRCKZB4jx6ZvC}&@;8WA))K0 zU%W=Ypn1{}svVC5r@EIUtKL`ANFIZ47dSfBcsQ<`#9x7PfC90&52x~{L(jxB6h_uu z!FRpryT6A+lLKYXq#b%M<9#3PTEbiM(r?l2 z=zRitPh}LqE3$7IZ0~?(Oek~Ko6wIH*0E&MCv-b|=MsMt@1^K^lxOgwvWEmm=CK)* zrUdyyJGua!brhb0uHQ3Yl+H0wdg=A!cZ=z}{3{dhnmt(OK`>7%`c3yQ?v;{u(f1!x zyYxSe^;WsN-l~A6S**7{l zW%eMi?LEG5e-UsvHRD=j%Bjed*C10~ZQ#Heo71J&*uHpnX54jVk*Y zWJ}oue(Cm8`pGZTP3n$mr9bqrAAgBJ-G?)n@8`)D`Y-*8?khQ8zk*M&$=}rFKm9aJ zKF&Mwus)08_b9nPWM~#rnq@yJavu zsNsiKZfe+xkH=2#Jr-X7uA_YHgv z)=qH7R`h8#v}_l9x^zyt$}Z<_X^pvbS^Cx(ZCn#fR`@#bXv@4zdmQfrI~-bB!@QUN zCcf4cU%tIZyW!cQ@5*IT(Eg#J&FfbEtl^eK9{&VDj@`3C}gO|r`5EeEXl`B4_G_v^& zap^_euSaVbrP0`*jl0^3Yhce;=v#t^&S`LXsgW@jcgl0ThaLEJH#?Cw=Xe~vksMI- zsv~>c_?Yv)oVIQUr!Np5GPhRVmu!E}vW}^4>FMJ76v-lY;kO_^ji$j4oHd8NtlMQT znglIb`o=K3un4&foM~`%)>cC|TYTiPWt_JFJ)TnR$RUH={%UT1tI^Rj_FpfVPv=fJ z^HH+LvEAbLk~N$-h4aBXC(hBkDg2wQPP!5U`?T14bo!!8tuIQ>#qR5lh5DoP>Yo#K zct>_&b;&P`j^7{qM0ubU@pPwVlrn#&Gk;2$KhwM zU6*S6-1zVRMD2FYURM1IUxFO2_sJ@~jXY%LqQY_gtit<^jz@9lWTy-6XMKhY^vX=< zox=F6WByd4Kb1W6y`GLQ7j$xkzRTTj>2rpezGlSod23F`ZIDd~1!q>`6I9SmvRhiD z*{03#>FX);AZsk8U5_lVIH|g1DK@?=(Y7-*a>~@6hW>`uke4G(^0e>y*xZ`2_TR}1O^*nkO1n<~@eP~soI_*% z1sB`e+bA14JgJ^JSg&*e?AM%cYUX3L@{|sf@{xEd3vTnXUEc ziP2WxyAAEZc-(5%{f;iHi_v9iUL0ra3Z)})ZF-b-%vzUWXVWILHs9RUez8n*yLe$~L1GWS|jF1Jtp!11&F9XdtE zXm56Dz5{#4cn^6b<3%SLIj`RG%o!N@I{3lAfa#0IJT3OzPuqiS?iqMx(EUG3Hw`X5 zL_c$&y_z36&|lfy!_c$1yzcR=oB!@(@G#`@>}%8PnPr5Ky!?*lVb-jC(Udgf6y8)`QgycGr?sS!Uu~Sd8Y_p^oT1Li59P?U7CZ|_A6R0 z)7*d$E}xBE8~xoZ*T3$UGjCZ?ncY410R4QrveM}3D>Hs+WXoOMs_P}!1a2O)CW79+ z=(`i^Co?9(GYc8cY2^pBQt$5i-^vY1?WM`jRWUvSD zbCpagdGs~P_y`{R8s)s|%7?E3i%WpTtJs5IrQBzL#YeuLhUWZ=^qWbmw!8|Q^9D7 zQQqRht6L((biCVW>{nz&lSl@aq z(pI)#wo$dG^SvOuMBmVf`Z-TT|2(u)cA;$HFS?=i)IEs%3B+55FsGK@8@A_PCEg-m z)B&-9;An$jx6WgC1$L5gua_Nx_ne2oATmF(3|=z_nf>?D zNqCo*JOw#;vrNMBrCt$bVJ`}Va* zKE8Kf=}mu;q5V@`yU~jQdj@S)U0aN-o*oW%ZTM}nz2!#D@xHN7_n}h}%*Xe&^Qc$z zFPHfz`FR4c+_KIIiyy1Kak=_e=i(!!Pq^u!3-L4)2=Dv7VBRM-0K1OfJ?V#J?^CqF zNf(SATcdx$*k5))=gnR(?c_N+e@_`v$eYckHvjwz_@`y<`8r zv3*rP`l#|9+fKjO@ilF$LQ|}&xbK7G&oS^F36VOXKoyD`HqoY z^IW|dcrp7zyQB%4j$9SlUJd-1R|%@r{n6bvDf8lh_04j*o9%PS-;w6if)AxgO z4L^u27O#nZ)!x1co40t;QmG?BD(@y+=T z^_0k(X8yZ2!`04M`j{UBB8RtwpQ>+)SF+9C>=PdQ z@ioX*@bl~Gr`8dV?$Ma{j#V-C0qwJP`HSh}y~FH2>aXgy`qvX7ufMJm;>w`-Dg~f7mUp(kE>fWbWdvz`3X*CkBSp^)1@!A4vW@cmG>3gH~;I{)sLv10NNq_Gz8+JM)6&@`)2%ze1U!am;~Z z+1*o_16r>#4>%*inS-Io(wTyrb8if5oE1xRg7)4koHdTx;G|27y~h3yBa6CoMB%D> z^(igZ&-6Vlc6yNWUBK8Boe&JtVhaCos+0HSud7{YF|8+`yhn9tEfk8(*y7}C@TG2I z4`xflgVmQ?o{(&bvAL_Ayo)KP@m@DS{>>}T=1-5^@HsStb_pldUi$3Vzp3Z*-l|8o zZO&{Fk0E@L^@~IM6rUdXd4e_V?ho5m#dQy&kKg~$NhAEd>CtxnarP|n^MBs%+U}h7 zWn9-hd(^VbDU7%O)wY{pJU5Qi*;bj>jj*g?{xE>#5cIN!Wy4vWUB(g z+0Yy1^N)yb-MwsiiNU>A09LdOmaU)Za)Rt4jR-}>2gRs*zsG3TerZZ;7)w(LI3 zp3QS`34S^??dQIcPlhe){GApX%6GBO9N|2ju^lC=jrxW1HjJPL1+|McfPaUbd?*0>q?kN91iP?lh04K?sO1$~fhQ2o~(MedoT z@Cl1}#|FZFp7E9VKrV89AP@RDCyqUsf>piR;p-P$@0)d6K1LVgW1{c3R=gY?DN8<8c@^WN22pWc9cmG=$p zJ96}=Rsgt=*Bgk|pSTV?;8XXP_`5wh-|FF?))RYRB6B2(^;d18#W`8l@gnH7`dcpf z^-qqR&Af=HKZ@7BM$rrHZPd4T%)h{g?LUY zBb#^nUe9-w@41_eKh<9U&5j)5@ob(yi9LOWZVh+%mCittyr?sZRPNW9D}5@Rxl-=> zB6L0*PH7m+71n9T=f44bY6Qm=ukh!{;UCba519iUKJLI+)P8oqlh&VXj+{2j)mdjD zPo(^o^+AG_qH`5}6=+{x<2j@rR7X*gH^}F?n*>(|vM;acyE>#7CJ< zJ+tpyUh*1y|2E+pV{9pXWlOO}-%2`_dog(aBYa`r^Yl2XZ)dL)cZaiHm0x(GyJijK zAtSju&_wJV#!lkeJJdrx{Ud*Z?pWyha>2c(gsaZz|G_k^p`1Cf10A2%$lpVc;^{K}5^L$k zo}MAyZ_Q#oJbOaGqz@tYZojxbS^TgOey#Cd_=5PZbC;iBR`&sGFYaa$|Bc&w<^cbJ z_ab-tx|w#x{qWl!j<&>o@ztJnl1KaJ*t79-w`s2z+s){oBkxM?f6a%K5=oikco>74zfvaN#ZlGEV61CQPj$>zOF zMT`5yR^I5ue~Z58dp>pNU{~=MB%lZ7K9Cz`pB4{RIr8D2^=xZ!4z@$lu>#KWI`$ZP zPxM74%0Jk#LrnnIqv65&-uEK)@NS$do|hK8Ts(m9uP_!y7K65flcxMepVmF+!tzPf z{)904wM5Rq(jEorxYQQKuNH24G7WBOo&JIJgA2VWhMwH)(C*VuM_WGsqeEweQ`$ph z@(*_Sjm4ch>wyjS?qd_8ec)T6$UVpe@%{cy36sqDpPuz~bmKG8jo)DCeoc=DOR&G5 z-49xW&PC9HxmRqv~Q>b&20{+#Vi zXB4Q7+E;Ly#sR&;Y}OKbE06Zht-;r60=_tN%hXmzf63F&58I>oraxYrclh_$<~2-2wsF_%iWmLYx-;%~ z9{-N}#=>J_Ptk6pw-CSQd$s#LbD7%PH@3t5?nOUj4@@vV9(|$11B^ZAD@!`GPTzar z6UX)|ACp5%kcXDK{GEUP7H7X^T#q5SCVQ3O=Ir^?Tpz$UI76APY&~_l%m1Bygp#A1 z*;66exa#k~bo6*5S4s|jX?lB*y$kiwaP)WZGS@aI7~J;`^e64yzL~~vJNTn@xACz+ z4u0?zM`!YeX%jHOS4}#T&`Afk6;>PLa*Ch*KFul^Gh#m&B0Ta(-jQvTdq$iyZLMi*zdmT|L3d9?19o16I_mr zrZl4QRkTfS@hww^doGH?>bK~AJgl|5*6cg}gf9AoW0kT$X1IyeJYh6 z{5)&tm(RrY=yc^f?#R#1c_3lgom^j-0Q+CVZDkMdp2t~-o$OKC{{#KE=XJAMme1#& zbNHOfmz)}QWkuw5V2~Eu*gL7^ChF051$&2-PGNXUL^^?wq3zPS%Kt;YlGinJ&O2@1 z<*qwUOf7^KJA3KlVVzTA`h!nqz_phF|Fh>Fm^wP`my@i}Jh34;aF@5`GVo68RM}vZ z&e0|HHFMDkJ2XDr$XVF4`=d-y}+KxxAbra%3FiA))H(T=`lZk zUd4B%rE*uKnOE|0>`ptyX9Qb~kNU6gBhNYUt5-O_iQBXe-!{nZ$ykBAjB}iRGyakX zo(*3yKGOQrxi84?ta;1O3!UJM321y({EUgRgQ8`jh?lz+-=|fb;j9nou zHV^tQeW3O|2}h2wXGZh>K_fT$V@uul5YnqXTY%*jci)4)Yt+BNj%`Tr81M+?^F5t4 zdKvrv8_}zHqt0CJSmNjyM9;P_US2YYeq7J^>s$10P*;D_)22So4@`&}dai$!_%G`% zIL^h!5&?Jgy%=4%Xjq&3e(N{Rx5^cs=-)4BkKW&;oq8L&4IbU)&bU7Di)WeWzxYny z8qPdH7U_e&Q#?sD>fkM_lT~gx`&<=Q4WH`#eLKDsn!7d7&(87UXPv+AaD6URj{2ms z^uL<5@krDEjM$6Q)aQ)YsYZ=)MyzkC^R5T3`ZhR4f5w=8WyHGR-=+B93~=7}T<@e$ ze%ARegdT_%N;Xqn3YSuc-ok&$+zQ_1HuBpIC3KD9OThIhFHneh>b9=HgF0d@pnN=dX=5<9%qZgG<-r zJG{|rIeUqa4=j(ncVoZD-VV)9N4E#w+B+HR7WTa=eCUvwt7qHR*gB!UVQ#ekjYqHr z+*N)$0T?*)xa%VXPiRH9lP}9`Z;w&0s_ldqflo%>*x1GX{AKbCw(MVOp754z7}~-* zmT;MiXO0fVk<(_wf3n@Zmeu^P(%CtZUEc87QNoP*W^4UbEq&0B3#ZnP_-V2SAHq{J zzK%c9Ox8>{ux9$2;h#E}Eqwh?FFPEe9U?=`&@jf&rYCTc;Dvi;m*2V zI$+(CEgae=`rLoK-TtCmSM>$<9Lm|IeJIiKc5tt|UuD4{`y^=^dPQ4u!LNq7jK?9L z{daIh;nlw~y0XpIT|P6Pveb?d`S#Htwg=aPGuNUomK3=+9&K0TPE&s4fz&Stn{8`9@|0MnHc}?cr=`G%H(n@b2Nic!` zzV3qu*F)RasUP?f^`Z{(SlKQ{vk#H}t*}N6v2O-GhoC#R=8MN7J4|$Jy|N>#EYfYZ zcH!&P(jE*9h>n+^hT^5KexCZPM{&0?`&Rv3th_*XE3ZE|Cmn)(e3ee&IR0g^?ze8t zwV#|}#`9PpHv4BgzN#MKO`o9s;ZF9zOhm8yu-RV=op$8H=;&z6F4`ks zCv>W&Z})jU_L}?Jg>x&ipB!R8uC*cK*svtUF5}GEtI-o)gO2c8d})5=%EZ~o?O)y0 z8vMxDJ@SCg5O4FPp!+m<9KG`Xl5Ob0ug-M#IZeECUGng*ZDtPpZeN!iCR{TwHh&iP z6{t_(X#KLU!8`Ed3A_GPvcc$|)(89WU1ePM3h&o5zS;kBcw^awu68whj3DY`*MUF#AAzOLw(Lb33ij^K{_y!PgM;1_c>HffPRlp24E&DQNBOy8x4S~XNO z7GBF0!S*N2jq-^KZ zcNao`_P&9cXWXp&0;m4vudcxv712c;?(fPTZ9~`~WZLd@OmwG0CX~T)r(?X^0%!8f z-R_bQH#-ly!d;D{NGo0B$C2-j=-mxR(%anBeFu6hlX`tD+}#MboX?TD;&n@qU%}rL>JEo|p{T>zXal+f%J{0O z**`Y@oT-~KPr#Vg8i+^*3z(O4@rYuEYXv9E%&aAE(zei>lX zf5N7*m*d4Zf4U+q`8HKmWBIn%W$hF3CwV&u7anVHi^4EpZL9T7&Sfvg9C`d#r_K31 zSw}x~)Tzch)M>^R4}`iIJycE%e$TuUXU{lVoXk<}xytnYVXmyP$X?%}Nt{Dr&UPE_ zEXv&N82%cd9*FxW{=(s2C;IKLWxhXCbQ2SJ75l&&f%iherW%R>`hF`aM0`MoW?{*w(>cU6vnN;z-6Kthi z_ImO#h75-;BwTQjz=_*w>aU()*3qK^hfrt5W@KG)s@%(jdpzYI(N+G>4rFI=S7Y&bI1e@)eHqsk+3emUH4Ge^6aygvK`h z`!>^mmP;QbV{AF^C^E?%gfZ{ydnuU<^-hz_-Q*q1r@uS-hSYgIGzPZ53`O0S>IT<|} zeNi0lr;U`c1O z%;-qs$#~f6+;eLWlfRk`I%X+Bcu9OCqa%BF^{4LRJlFJM-)z{C>{o4to`hfDu=@RE zFD5^#Z~ZFtFM^Z3t>>_>C1*0XaxZEdbT4Nyw?Ox6&z}EX?j*Ny|A@SoNjakJxqpnEF5xoyXg%>%szu4IF7B=`2xO`f~D(U4ir zfv#mf%$d+I&6BvFtcACC=KEkw(HG-2xw~iIzdiMi^b1<1GVeT6?^JZ~KAPkW?_*ax z&h()@#4UIC zg?9^Q#?VtZ3;kM4FTU$nQ7pJJ(Pvqr>l5D4c_-u#V{M%8ighmsZk>d`UdIiE8@fl? zCAzV2%X}qn@M<#$_C(>EqOF}Za}LQpN1R;?YmWDAGVFucbpYdiLAX{a-0Xq+GCMsCBK z4R9ymJkBP}`8}w6@;1UouK9*T_uaTIm>_)~_xW*mWlhvzbH^U%|MlF#bi|i4EV1~m z!xy0sn?6JI7Wr9}(VOhi%6_ekt?gcIDB8Wwt04nmDxhC6>4|B^L=n7}0H zMWD=Wg-+aKOgb@v(LIn#tYs1py>b0!L}?$`&Fbvpk-jBnt+6mct2c5zF!9fBQhm-EaUFt3w)$@9^7 z35)}*K)uC0BCsle^jkV^IU#sguflvhJe4C?i#!-(EIu?TWO2^(@?MC(abe$(mGF4P?~xbfhGV{oyQ#i**!z(^S-I=0 zd$SRNXCbS&J$S$K<%_UZE^i2OjI=Mzab+)a7IY?VS)*H3u5RhO(%&;{ndUyt)H5^@ zzJEQ8_8I$^GqXU8bx`S}-bI>Km>(zNo2`lX*0g<7&3wnJUY*7H2WoJ3DI#zL^K6lQ zCin;PZ!z}{u8&$`?j1nC<<7ju?u95j)S2bZ($;Q0xTU|4Jqn2zhxAqp`iSJ>oome-{RG{sNG5i&$drjcA z-8rP=?{)Zo)T&R+`F>w0>W1t&%R26$T(%V$BhA@-Iyw~l%d)N&FY|M}FPhLz$DEKG z=Z90=SFm;(;;hD*($$Uo!Uko%TE6)!dCRLAXufMHZu!QhyfrLt)33JDG2lAkbEvhO z1Nkv`^2vVCfUtvg+pgGfkcaYIHjYHejh3#&I z=&;p=ZW`i+;#(22F5DSz>9<#5k5%Ag(7rv`tS@bMP&Znj%)u%oC-rtAja(d~e*YgBp2$(EV|-n47TR0+ZiEcQ|XXhUqJMO47kwRw%m^^ts|TZNmfVcChxg6?!r>Xj4Ogmo;74 zpAz07qSu>ZOnWcy(~0c!v2KFCwOss%H(?B~_f^V;-h+3+66G7W&pPziIdr+#&39I&m6b#+!Cs5oL;X$+m8_S$}BilXZ*F<&61M$NlCm zh4yUa{#Bl|IFy}V+5p_qD2e9ybAE!`vIuJtFM86}@5lMnsXB&{xpT|`eOp5Goe5q1 z6YKGLwZ>%?V!wN1++w8f6?aSnw+QYsS-bT3+-=XDitYmZQML*sub@yh8B*P~uy zJn<09tEx*M%+15iI)J=!Hj?wW3d~iUz0FPgCF_C*kxzlpV_*nu*p$iYWcLK*6C09! zpUJoJuG;o`?oG&-+}D-yh`iU;6yscxTX4rYzLht;j^giY{E2NETc%&!$3OS4k-PgR zx8b|6cc^^}PW%$S0OJv9hi*nbLhugAr&#|MdP|FT>dYL$hqAGE%TA!(_!0AMX%k0G zUT)?CVjo{(yitwx?f9wo`3-w^BM;-R5a{%Y`!NrbcR}yg{V>_{!5rTAk0137TJ^^S z-Yh@$2+m9RWZfkTZ9y5^lR5zSrr{CcODUIr zMBh?XTF3V~>d&F6gV*%^_Q|35wOdm26&jW%FhAbY)4C7Ry8o-!xV@tM3GC2va! zpS>I8&P9E9Nh!{F;hiZtcOrNh+qA@=+#8j95`sg2ygY7<>TR90>EB1VU&>wwX!`#Z z<4?f#;-0HGj78Q+Ji$MKd`TM{p2{%${M=7?P}a;4+haK@-L~U=ThW7xMkhVJvHCmXsedcE%VJA zKh!fU`zFg+UCwqmzBx$8v>l0yinGmJtp(bsCV>v0NFUrHa1ZL7y;FvBAc&*mvwdhc z_C{d68uh@qk#72;v+h^w%e!x~t`iv;Xz^Gp8)$4t*L(hea#NaSf#0oST&z#6Jt6ZJ zto38POX`E%kGJJ?0AtrV7&l6uze1ZW(2uxs??7}ebaM8^uHTt@vo6$agLGjN7-vKV zvLTz~@%SE*G1ixg^X`N^GH}wYf8ed!7nPsvzgW6&&3HiHah$nN!$mJU zNW1A=2Kg=;gNHJ=|-_XDQgGx7&U-mh_`4hNuHl_$cNV8(^|CeX)}L+0LBC9BMy zzGC~4f%=U#j?AfEK-xkh{p2p})rtE@+yUHg=7qS6Hp{dX=4?bNbRpr5&HMs;duQUJ z?!%2f751m=Jy5d+@OCi`$-sleR8B-W}>Ai~s}h(Hcy|BUz+Oved{HRq`$?+;*HDm=H{s=V!-Ug~cc?#88|UlRAL zeK6j`J)S+d>u37blcDZ?W{on!mzs?+JLaKs_Nf%-qohq0U09sFOXHkf7sk9$!(sQn zM8riqHw5eX`KrIDfX@}3%DJd$+5+CVH}VNi-+GnsmZ%2;`zPcH2fRn6Zyj0N&~km_{o^?wflLd3TLBdV?9%F4)*3} z(jA6%EWvpSoJ5gb+?#QR(%|?upFLkSJPQ47(68nf{=RSA*2GL`s_@W6d@U2d!F>}9 zoL{EUQ|vST?2o$``1A#F2993qH8AFJg}eWxFnXoJ)&rDo#R7%H;uPO)l*0V`6_!oV z@URQi--`UoiT|dt;?u?{od2NGXT_<%^hbrKNteXooibuL2?NBNB) z|C^cqRivNJ{H`QjwO8pUQcso4&vweOmvUXr{2!YMthq(`ubAvL zBzLh~wou=bSS}%PO4oyOeoDK0fbxDod9G(ZhY;>2K9~7i7pLj0nyhdxKRL8UAP;<$DMD&0snG2kE9Vf92H6u(^*cr zs!0D=>U%!*d@tk8rF@UDT#iy-m9)bW>g(d^YHvl9;~3Lx!u;%EKJF#`ljOgLa;~O4 zPcVEC^;ALoSW3Bm&vL3yJ=C4zb>!EHcJVg(EG3`k8NZ6@zel-4{;cw@q8zW2{vzUA z6CPu^@2B3Lquo_fUnX()IX8>`XlXVF8!}Dzq`qI zKjqs>{D*|ajAxkRUo7?V_W{a(62mKKe{qy!I_>)zrZZur zUxXXu@{44<;4=SJw6p%ye~W81o)fPyj`sU5_4Xd+ZB0JIC|4Wu|C0LeOMTSPzQXEi z`U6P!Hs!kVn5I+FPQ$;ap1xxEb=1Rg>g7AiQGbxqXEB}IDSubWAF^2aUQPbHsGk>^ zPMtgrzlZY2(EkzZiD#gOHzuFclqd2jO}8KUI{eLIdH;*)B#_?%^8cEA2T{J4h(EAS z)A@mR)0O-mBEMAX-`2}FDF0fD$Fbp--<*BQ z*K8`Pmkc%P5Igq@GSgrASUBy&Fg5`I4Z5`I4ZGQAU;pZj^{ zdreS-g2Z!3cCcMeC^{E^4pA+Swl2uO^v)l$mdQDL5c!lHR6?UZmIgT6BwkkfC^vx^PKX$P4OJ}{=$#U=Xl7@F7 ztYJGmf$e%R`=v%BHGaWFgDV1IUXMPqx zf%4k`YwT&1+u~2t(Up3!cq^y%TWImksptFIZiqd~?-A-blX|mta8n(x3BQASvT}yb zQN2u}ytaLLj(WI}{h)29N;s~0B2W3*_Uc8_kE6b&?#OQ*`|}*~30Ji93Cr_Q$|Lno zew!(0H|nFlqMgnhA9W>cKzuLK71Dk#BK~pO<9McfG4b7K2OTTD26GAV;pOTd&-_Wf zmS3MruK=fz`fOx;j82QLAu9T4o!)_l=icU;mwFYK)H7>SG#CV{9{wR#`P-Y zm-bP9<5=IOQ_q(w+Ig7cvN)!58Syc!m-kQ~vBVFi9(%D~dWnCQbPvoxMZf_Pi+9*fs-9mP1#L*(0* z{1QpOiSZjUeIM}+Xm1v_CjL?KxsG<)hWI|T^GB)Iw#47X`gUWb*I<%}Urf3j>Zcv? zzoUHjFkUk8x3e5uuzXU8e~$X!LOW?s{L8HGhiNArh#yBienLCxLi~&5(~s$A5#Nw{ zc$oH6O?(;od_z9Ri7#P2e4h2=1o8RI=S=47B=J8|zGv9ZIBY;)q<=p3eTwui(Z7=R zX4~ggEbjpC+-B))x_`6viUBs=K5R!U{eL&zhNWFi)C595 z;Z1~N2&WTP5UwWNPI!pW8K?YW2rd7ggUO`pLzqtZ8T-e1k=kN^Mf+V%|HvpUhwb!- z-lzV9^nc0tC+YVvykV5`dyDm}75&p#-l_D5xAYpl^r!z4`cDqh7GM$En+Xj6EBl>U z^xqj|C+{;oTb|8sS9xtYUPiwyzn!GF^|jelmB-f8i{drDt)C5tsNdF0f0WW&|9aL3 zTR%InKd}BwcPYKCr~BBxobgv`xUH|hBY*4P#`eV4+lOhF*8e8!r5#U3QJ>a-gyn0; zm77R!{cliyJHGsp^p`mLTgi6FwhsxTRbJaJw4vX&2dCIB*>U4XOfQoBK4t!+=wHD0 ztO@;>u{`X!@LlHLjt3jDe43Izq?^~cn$aK0@@h`Mm-@Hky=Am7>#xK3my&)V^=tjr z)Q27a4g11tD6M}P?K76~chkPC-`cmva-37-r&fj6zbS7#;}2x{x1_&$fl{`jzl!>^ z{c$Vi&-TN^82?Jr@1gz^=>L)NwYFisnELcFJc<0YHapI-;a(GB$8oW=FFStAVS8cy z)odT^IBo{(zx6wHm0vriw~YOV^%s+$9oL;^`YEJ;hUH_&aR=C6+40+z)MrQ1U&{P- zqW@*4*O~q+m>)aNyZC9cUb1nU= z$*&vz*OYsW%TNDC*3aSeU(EJ)1pWO;Z~ePTe>215S)cw)|CO{S>rbP9B*Pa|zt-QI z`AKJZGVA*t^m|gg#%290SikOM`0LcqUG#^JPJp3u)VSEe;e9M8T%F64}3#DZD=31KlpmSrn{Hv+J0a>?RG8m z@1Z;~FFBhsH@{=Z;2(T*KYI@Ml-`rkg@u=%p^9hO7P z!`e=qpq*ULa=wc7V;kwB0;-3(v_~Jyr8n(r3+=#X$61w1--Pv~73p6iKg+)x)0s*; zIYj%O#dJ21{!8-9p#Ak^x=YzEZKi!}CtOba6_jT`?RghrBj&pY^Shq$Vpt!qr2U4Z zsD6^@e~fZHMHof;x0(OjX=bb z+wCK`Tspj<`nKg~%d>)ZlDu1c&Xs!<`lGbx^fyyDy*d5Ib%f$4Tr{GqBfq_bc~jM2 zPI#=FjsU*guK2;*6#5DK5LQ%NZTLKW^_2#WakM8+=&k-kjDMIgW@dt+OD|XW{eudp z%}}^~y26UN3YXreup{xk=$|k`)7>~+;dJ_UzN`A$xkF)_fXb1+MB(*O2mh z2pz}EAcZR#Xzmzb!KjX}Ii|j={^iS+ z|7ya)#9Mh9o~uTS{tf=7f!{Rnn+ATh213Z;=Z zyxn_!BswoQ4Z^+#LgVKH}y9+Bjq3esFC~%>zix;^yzrdSdOt z`eQ*WxEPMx7uBL$krwsnfmfetvgPU0QI`z~xi&Ck@W48=F355+}HG$ z=O4M{zRuNscHJ=TzR0>eYP!s?nfcNMWB2{3?+ka_)LC7^$3Fem(8bp#-XF4IQ0(8w z?%L2|;L5b>flnV>Q8u%G!iKM!?&-Jo-cS86Y---`>#EO}P3hS^fB5e|e&g>)yg|R@ zpx?z8#zShyv9R}m8=ODf(9`iu(R}{t$g%aYh0lc48xh&zif0#GE&3ID+b&zb=ttaE zPYG|TUY+iR*~LYpv%Lu^DIGeec1TWb<83`=R1yAX78R5N6qJhR)&jw0W|ZV)dy5La z#hp@;)7qyddb0{L3P*Ww%PB4y4RlIsQgTwVHzBXIbWBOtcI`5hdD5t&qEQ7oB}LX4g}(=j(EwR2`}Zin3DF1hV9J0;c9HK~jh9ep52zCo{fxk=-#+9(LW_ za_rCeR{p_DbmwmH5{*}S?r_JP#kFw--WC*p&kWuXUEZ1A>%av{AZoU)gAw3tYzcdb-zW7 zKP8A>Xlwr@ZP~k^x}D(oy1IBaMsWOL2r}}M#I85)W%|=~S@H~n;P|qiB6}n@eY;MX z7uL+gNjMWz9l`OXAFQ3eUEeHc{65w&$R{}dDBuNW)8Bcw_Cq`CFnzmm#Q2g{?cY*( zYNx;V4UNB-@mDvfP3<_|bG=S)_-m){a6NHeV@*GGOHhjba~Vke5(-_-JsW1@Ulo*p c%gw@v5XI*GY;4DQFH+Ngp*9k38_%Nu6AJ;C@&Et; literal 0 HcmV?d00001 diff --git a/userspace/ksud/bin/aarch64/ksuinit b/userspace/ksud/bin/aarch64/ksuinit new file mode 100755 index 0000000000000000000000000000000000000000..df67742fb53313e0405a6d7aa2ce31b4e208514c GIT binary patch literal 421792 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

&ok=R}NPB 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 z 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 J#%}QC{{~}?tvdh! literal 0 HcmV?d00001 diff --git a/userspace/ksud/bin/arm/busybox b/userspace/ksud/bin/arm/busybox new file mode 100644 index 0000000000000000000000000000000000000000..ea43875f922873b544113cac91de3e4f2845ded4 GIT binary patch literal 1282828 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

x> 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

HB!O2Q=U(^SdcO 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 lt2^F6Gh2Bg2 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

R5au6}Cm`(IMs>aWH*j>6@?jRjU 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/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%0AmNS@o!M0O5@WjvQ$w+B+hAEAHWP@N|4!iY_6 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

^A~?hxT`Ad;96~$JA~${OO93K+&pF=7~) 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ⅆAq53$1+8ORU1O$Ld){x1FLrlpa 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

*4e6F-`#7&28?YA%P49xX1Hg=(`FU$ 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�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 z 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ΝFgk3HFI9W^#VF#&&-ofplfT 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

@Cm{S8L= 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 F`#*8ZNa+9o literal 0 HcmV?d00001 diff --git a/userspace/ksud/bin/arm/resetprop b/userspace/ksud/bin/arm/resetprop new file mode 100755 index 0000000000000000000000000000000000000000..c84860eab603103380592bab27c7f60d9b747581 GIT binary patch literal 46940 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 literal 0 HcmV?d00001 diff --git a/userspace/ksud/bin/x86_64/busybox b/userspace/ksud/bin/x86_64/busybox new file mode 100755 index 0000000000000000000000000000000000000000..3603e741b8e8c140ebb1a9713ef15af21907cda2 GIT binary patch literal 1767048 zcmbrn%Wq@Zmgcv++~q0}m2h{v0XLk0aWb-aLy8EJlH!q(%uwc~NJ?UbBr-`V9vK;z zMUh7muPBnqL+TMXue)KlhX(pjXf$BMKm#^ldtewn@Wk^TdSt)`Jh3N+J@KRr|Gu^N zAr+6jRn=C6C_WF**?aA^zV)rg{>Rn*oj>|Jf5)Xif8@S(dh}0r@7hzp4ln%a|Ml;O zd(QpZJ#`sw|AG7a?%(Fwzsv8h!>hk`k=;xGuK$sLA^rQO;eGlJeQx;^g}eUm>`(s0 z9;biPFVN@ynBRXAUQf?6{rmjC`FHJe>EGL*)4BfZ|K4B6zb<}b?@Rw)`^$CfkL~Hj z1?l_rxxf5h{pbGjU--|ZfB)M*^Y4H4zw4d+{Mv4v&R*B|OW(KZ-{$`7@b~Y9zs>(` z*8fAF`|v!&x4K67+&}wAI$P)d*+2T#dw>6xf9TS`>DYhI=lmz^?SJDNeO|wlFu#*O zitMxL-+yI~oJ;?v->3Qir~K-?OQZgDJm|YGxj)_f>X<+O#y=aIn_qvmzW(Ij^Z+`) zf5`8@#qaLnk^8^@#sByZ|A*=PfBr8Ip8YTX(|eX$j-N5A@2 zG#OvT)A7mXs(<=^w7#aNlk@m0dKTG}?uWsoH0_-YE@Ri7&Ekv6Ebd3Manu`*lQ=pV z4CAODC%x%lG8<2$Z2v(NUr*v*c-L_pjju+0;`k=YCeiwJc6j|D>h@;y?r?bX@oTO> zo*xh6oIm>bj zjk~jWHCjJ<5H;h|!Fbdfyo;lI(c%1}JnSY(oIHr`B)xfmT%1e?7v1SiXX+1eXKl^K z%C+O^#bCr?qVXu|Mzfnq99;~Oi|(v<77ci6I2`x7Gmf3>$IA!N$$Zq)vwTB*T8u92 zr9wX*atRNjQG8W6na1IsfA-B=-a6~$U2QbuD!RjHmE&IwhQmP;_r{}svKDn`(bd_2 zZ)O_8oJ3QO*=0f)viWG9Fya?>`FhXnERO1}d~_I}a*mgA#9`-g67>g3m%+BzPZ*^6 zG|n@q!z6Z-*%`yu?_A7h@pXp@o=wL$E{SKqy_iJ3v$%Jj%r6#0;HpQhYP02P34_xg zOqm`=-qnUfzHt~OaeVHku{)W?jFX$*cLx=Bc(lLoD&=Z~)RcBwyoouRy2dMHbTq$k z{lV#A=H3*a72m#flXyB9_g%ttow;Upx3gWUG#hQ#o%SA0yQBX2BI+XyF1zCnc<#)# z;)(0oXs>49%^yVEtVJhXq_tmUthm(CV00Rd=EEVYV4$()>f&>I598pzc&6ig>yEqq zNcSZF<@)~7!C`AF+y7?2c38DL2>Wm~(hJdj0uH@qSXge^tCc zc<1UP)(&E!_hyrfYf9#BqMzo28Atui`tkNo`)qVr`0nRF{l_l)E}zf4!H7v8^f@#W zrzLwi=*9Z9OKy_R#kfBo#*EnL?kt)F>E}g>lg`zxZ)`q%^!UkFPrr7EM|{4T9conj zYi=~2G3m+8#c(h>cbQy{6Dp4x(9tZ{W}WCezCmQVQ>16>){B)vG8rcWEsr7>!^h)q zY`KrR7xC7eY;tFL9OgJViKn^hs5kC2V8!SdVSn-{<0_?giGhnEE`je#f3p2dZX9v? zCwy!AbavQ}=1C@Z5=AV#pYq-QZ|8|#)eEan9zTBgB-)BLCX3MU&cd|f$HI2>9Aa_L@t9^ zWL$SX8|P;8Q5-dDbsHVGSErar%T# zIYQyE@Q3#C?A%4G)x*k~t4cDX@g%l2G#sDWwD}7e4vq^5NPjvy)q?6v{q|YNE$&Ow zv-9Y9FiRv`{uQ3gxWZ&Q?iG;4!g)L$#lwPM)CG-7g0^0s9hpqa4tz2tYE8n@} z>7aia7n0eeqgjj{>JBT(y?#f-?^ae;_~=!4+GpJiyEoBna1l>eP-&?i@q&zIoyHTU zG@G#O-#To1#6Z7@#^=%M&p-d1o&UV{S;jFZsfF}PPm6Mbk%+U2U(v2r`=RPy#>Y|1 zv|?16qr*qDfwwV^X*n63dJSP$BxPV%mae@0cyu~DE4pU&`=e^B-8pL3xPMS*hNY_c zf}MjZlU{cBwX}8y#c8oNE8d?M@Ar%MFN%|&hS$Y|5^8(WE4ZkUo8=ls=8QSz%lp{K z$YpyHb}jpYUb%PgUbHiuCucS@3QuLE=j$e9wf17tfMB zXRFm0b%Ov5ZB(MIExywYPPhpgPs&MRg`G(T$;@RM(=mp#8K0C#Gp?$8nuL`tl@{){ zBrM^66xDKvXdn*K=+4eE*owo$YFR7HJw{M2#=KQv$pm+hV3xReNXpdI?i)bfUXIVX^ zah$W6$&+qRR~gOy6nIg@V)nmt9tG+}{(EC9G&q={v}3HM>s}%Zf*f|8w#bH&jfe?v zHn*|CXCKX7Z!(Wu?t`Bw@=yHI-^^?b9$Z<8vR@5R67SulD#li>Epw!gpJ#SW)A?lf zZDiIk%0A9-oMf}nY8Ir0X~4W@H|KqZdhULg&EHFYFU5{l@S=kbm<~|F0%Fs_F>q;V zH2-|Beo!ss(QTS}2kyHpoJiOm*fG%{-~IhvH=4K>x)nR+w0fm((Ff!ClyM#oE>M=P z-e{MayS(LMJbBYP;B?<&&`-whqB}izf}X>#r1rD-P#|tLMf`Kp{<;&%Tytr|`O25? z;mC|@0mD2Hh|anRN}k0wJL`_3&EGuS^9nd zWpb&)=E9f<+s$uS-?~a(&bX_-Ln>CY^IR6>(2q~L^WhA0uvU!RU+oV@^Xq8Z*1yQ_x1+;emsiy8au7RVSA_LJ`c~l9E`qx9PO0a4>#REZ=a!yCg_f{ z!7*mU@VNUgD&6T7>hXwA{h#(dg+?idxhqG<sLo$5=+{s>?i1844awdIaiE;uLNcsdxFwPpB)bfxgS%OkrlCCvPoX!^T+Pv75@ z1+{x8iFqzj^yb8#I}We(CZ})FGp4^lE`m~9+4Zl+YiNj$klA^{@A`v8OqX}3(=KXT3N~Z#TUHcNy68^M5U=oxUkbCCETyeFz)0t?-Z`wk>@=FS z7cG|=jXStU9UQVty``UdPgR@SX*#2|(K>21fF&@D3?Xc4*wfEe9ZM)p5RJV_II|rrx{d&2>Vy@K>TP{3oH%sNJ`vE^3Ntln$8Ds;` zsFB-#W!?#I6DMT{>^#5tKN#g?zw_Pcr0e#^30ElaHyn@8u|YC3^4H4XoaXBz_=AfsYs21>I(Dx% zA3HGDENClxZFN2x2%%iC8e`m;!`cCp<0^aQTE*?v8t$lh7#();`cDmgVI~pR!&jC1 zL8*4=zClOhLnK)GZ@!6UQ~Z3Bbj&!EO2+L}I<*#3jWf%Y@$FXarIGn^;5LD0>`b5$1N3 zeeIVNa5>6xj*}tgI*5ymSGtU3VTLFcL68M5arxo9i>`}2ctm3y#Iv)pDUp_`kn+W3 zDn(KWz^4rk=3%*6&S5YjjaQ5Z_-QkpGxHs6xZdLLE}rma-L=uPV4~x(;I@GdX;rDD zj7z$VA>U)F3Il#R=x+tR;KfXDMMI*OE{Z=CodJRvVOfJcCo4+*gjFjfNV!wl}R z4X+6#Y`|9+0<6OMywy-Ix8~Xu4JoB_g&s$zMw^cxe-m|&aYB$o*YEaVreI}~*hmg} z?gBLC!lO;Ke((#NuFmkWzhhQCjuNdJ10vp_12|C3vlCF82r@p)c{%^UwXV98qI<(> z^v>VvDgf`;(Cr$Q+cO6?gnKFFQ74~vG}aAv((6JOxgbxJnHcDK=Py4;Ru@RFj#9n)Gz zOR#*WgLejmiXgV>vEe9JMLHo5+V~**rpjfiI<>={x~tT7N|j18tg3hf<;EN!tb!+r zUFhyXt=8Ck%>bQ`Aa@tum7Se<8@JsRSoBU;(Kz48{etRw!+0~fiyUv*K!RB&v^ z(NX&NlP&oLFRrunF0MDh}x>)aYaWXmIvBJ zUQ2MrjNXO_|*Q$56oApwqTxzvl(&-Hc z`dAL;4&e~jc*gqX)Fs%4jO2I7&+|84N4@XbL}5U>y~)6a2CD&a*gcKkxIk3di6S>F z;dIhavC>T%N>L;7CWI;N04W`V4swv_Ob&ik5f6d`K-TFFc+UQczSbSrdhxPUYa0Y& zDTC>~jB`|zQdQN(IC7`orPfsIGXpnC->`gds9_904a{o^aBX2pMQnTEXyhdT^eNviT>EOpj~jnn1J;uKG}~ z#)*na!Wy97?lO!ESI?RI$kbkHw&p2xHw*_1K>@`O7R+ZiV2?_@wM6X^G~ZC{KfF|H zK6()0?>va=tsQaV@~Px~;4jBRcfEo{oJZTO%I%Mj`RFM3-jnW+tJg?>UutVb%v*Gv zKwB*igo|i=23AzS9qQWuRIy(CY~xIxi|eTIuyw;i0uO^6U8`E!g&%aSqr>%wn_sz= z)NewM5ePyHNVet))Ta4Wx2zt6i|q9nB`(oo2YQ^G4`gSTfCS-x$C{LAx$F~$8V4lG zKEw{Z1Xr6-4a`L`F9gXM!z7-%JG?LdRi}F$-FaHrjP7vmQsvQ|JDEE!(?VfmQ$sAI z6`x8VqU7uXm=EI+f}S?5ER+r|hPgKr#uK^&Pq1`U zK`C;lwO4=1qgO9ngwF8#iCdgbT@thC=ci~BBo7p#bkrRdEG!8%4Y=%r)#Jj6xX2D9 z1ja1in@n7_{-WC4*{{FE?x7*Phhc0hKo}aG3zZ#H^il$lQlZ2@<^<~cu9TAF_&UUp zq#G9=t)jNf&1~Eo58aEwR8d78 z$gN`>CGW(qUiQ}Ht6dReIVDsU!@=mA2$h&ZaTCRAok_lU(2Lv&3)7w5;Gm5F2e_}Y zFP_Xk1`t{>GFts{4Uc)`>U=i)I+wl3fpHEn?u|;@wSPd!jv4kruOs)pGka%YO0ybF zZ{QyI#QInK+sLjzg|hgY|E`B0W-0qnq5*Xcb2`HeY$o<(ikh6Wrb_cp$g6 z<)l-cNx4G9Ct!GK6TW5Ya`&Sz*G)U+#Mw`o4aH$|T|>6HQ}d;WK>J*Q__{}QL2=k| zA9))=^t+u_`8mAGE3hj=z8YA?HJq~1AUR_kEM9>0AwHPG;8j67W}GypG%G5SOUw># zBNbv7m<`^}JERhI=4nv-{{8!WCc`S`5-fO2I9|vNJR>JR}wcFKHB^OJSVhmnC^Ys1G~evB)y4*Tb>*S>Hh^ zWn6TAu-k4_e|T;9hxupJHa5S?uk&xiedca(C4sXSkWOd(&8!?@t~3^r+uncPETPXG zk5*V#o4`Eclf+aV$k7MtQeA;J_8fTZ6`NRTB9ml`OqU+oZGkg+GIs&FHI;eM9p!`f z8qgy1gFP~P)hyMdO5643(V<(B&&kAfuDVj&OkR}x)@Eeso!Y{-&kAX1xXg>69}f;Y z2Mhg+c_-){1fLPGMP0LKYfpd1eg`Xc}m6s&qxr^H-sf0&M$QT0vv*E zLHDpGAMrw-ut5f=IgKcqzq^vnKe~38$)MOP&We*_-)(Me*!c>^1S@q-Z2pX}SWJTsf|m>VAHfYQcxxMFcbOh9^AcS=ML*p}dW z7QunuF$5TTC&@LGVxf?P-H95hO@YB8&I4C#_QADl2i1=G5z%VpsPV;`YYVi`x+I;X z5iofl{rP05Sg100pdl48j?7wc7Pce}SZA`iM~@P2))ODWgU*@`dK`%afG9%HqnZXK zg9@5MSa3Y_7Vh)$U?j?SFmlu0yf{SKXHm0Nl18kSE8OXc)0-sCq+6ceOrRJP5HCiP zWF`bqw1-Yg0{1{l4eiEgWm3k} zF(mer{VKl+r29j+8G=m~tBcBwBYh~FohM=jvsp}?#Tv3%hz}kQ##*QTJ%i~__MT*X z!ZW;MM&63ZVnwSyBk{Q-t8zz!X)Yjs1=K=b?(BwZG$4|d1_1xKxyexEkwd?DO@9N$7U^M< zEFbY>q6}5KFYaHS08B1e%v@n{k^jHQ~h2`Vuew;@+c(+GS#5S>GDe; zQRC5kjfnn*`)NhFLMCp=0My{6gwdNB__~$Z_*C4S4q`rq9aYfNwZ>C`Q;wI=tS1&8 zL&|hT*eE71D%D<@yBV49lH@bB69vhltFD{~LwylmaL&{}W9)-z3Nw0*-xd0ZlxKLO z_buJsjK8*%!4z3p1wcf1$9LEA5m7%>HVJalvdlN>8JxByG4YN53`0mI?}$Cxe^;)Q z71zaAB$obYuK$ni*5BFKm}mL5mosqEe8u8iqtx9pW)Tl7ohCsFuM1og2T5@|Ids@X zSWBT_j>37fjuoeol?0(6c6WWo-raQGNRUB~6Jo=ey_206Hn`1pCg#z;c}sBZceegL zF$j1RnXhp1DiLd+Mc8+EU0O!#Xnt<<8|%>Jx`#`h+t`Gk^?y)P+}nJT-+YufPVdG| z$Cf(eRI>Wr}*E%U`vZ(UePgT|eiK}fa~1HAHZ zF2^48h_?{?xHV2S{x8~O;ELyBi z41L7_gbW0EPnJ$WcoMb8A;}T4xZN!fvVZ}ItMsv@vD!X5G=|hweZo$y?i%uZEEdH4jx5=U036a?E7Zj`0so}2nyAy9`Q)9> zWj`51FCu;&d@*|xu1-#flP(>NWgO&~pn=WdB5XE{Y}RyT3No4bmIo)tK*zuBkTC(4 zS_7Fq=-mK_0Pk00vJw2-!!r1e1qVLTfB9Zg6N-R)Gl=I!n5?|tbgXQ5Na`+%yT@hu z_}FxCdN#`mhyzW*Pl+4GC$k)U#PB9}tkecn@_l9>G&G(g(K@;2Ei5aw zYcG2p1HMJaAcIo7oVO60_i@6C{;RLvz50P@)A_tyv?~B}*ipJL4=f#`ZLe>|f!?{X z>Bc26BW?icBsM0bc4oguY#%BrXUB00I&tVH9M~oElas-9oS?7Ix+EmxbpjRcTFn2h zxfPBe4Jl+WN5sXhqmBH-C;5&120}Oa?f7hTg;sBN`@_qLTU~qe_IJN`Z}tq~DLqY+ zDMQF=fqXF+B0JybI_72OP~IHr5+q_s1N*m0oI$xP=%s(c`292|w_{;_aO*e(m=Moa zOU7bQpcvd>pZR0oE6T#-a6`<7=0EmR?WD|86XT`@w+m#f)H zX`X4e%bjMWBM9k~m_UMV+Z`)Og=96zpnAjYRrl+5S<*i`Ldt%p3O&TE%oWV6><`Xk z7!hgg_tG!Ht1Fe}_ne#0+A|4TX_!EQv)(}kqig4c?-=?tFPpi`yUIaH%)>k;qnZqB zxA7#0t_LKZ#-xjo6(TolUaJTqXu^&=fq!^ULbush3leBMMc_Kb~SPVrb-4YvdUfQs76K>RKU#b)mv>! z464dsb`qOomMbHk?ZGb+$nsv;KC1hWQ2sI5(;r?w(Q}@{h9j$mhIge{bKv^&H2($1j${5v+idvH!^9AN19J=~dGIa8Q)= z?S9U2z^xAEsi>xU?-8@YX1-IVJG2gKgotT!k2hh$*> zT{ibnd7J>oP4c%!GaMNUq6LI6&C6IQ8lVL#9JA2xu1m($ArOfH7o>IBx#D#=b=axj zj*pcJS#36DKl?uMant9Wqq+-xl}@lkfKt=(?HOR2$&C!5c=0z*EB9)(R#?Z ziCcM;f3#1!AaZjFp^=6nl%XMq3Q;-tW<8!tUY3r5_fT}G>so0BnUy{>DQ8fD?@0<*3|deZf>_*EgQv#^K|^ zKA?5Lu}|}lPE>@jjPfY-bxdG`1h*~-?|6Wx1&8FcP=yH@Uly#UEQGFvr&$--$~Dl+4$mKSDHFh`E5+Em1%VHcp>fsgu+B~>|5_S- z1jtKsgi}P-+L?J3R4{TNttkLPBM_I^vyY=?zWhzj6b4hvMvj&%DSL~LS|X4?y+rp} zH3ib#3uCK%VnC&7h-vgX^N}u{kD!l_=O^yOGy4Z5fQ!UanVzd0l3iG~B*81h|QA)hbc1`^#3PR`mVyd3vx zUmW)i!x|<^`p*9#khzV=$&tW%DJ?UQ)E+Ei;*#1Tx#Eap1=@4drGZ$K3O+Q9gwGc- zXbR#~*clC%J`MYDY)8PD8P*{*%+Sg0M?!%0Oeygdw1dq;0%dU}D@gI%csRd6eR7{w zX=1@tFEVeGSRzsJ-+O@vD4!$BT|S6%lLyfjf8?p&cS21coRW>Ba5$&JS-^(s84JLe zSMLq4xubAnGIy4swYT4J_jQA>m|+otwITP@VKa6UpBO)88<%q%my@;M8&7V`C+8}O z3;PqX3^OIN&!}b_MH^p#{WQ0^zVSGp*@p-wL`KD(@dUe#{macf`CS+gv+Oc*zG4F4 zZ>LYzza@9ua*b&unm=Ss{FZ9v<)-xJiLWpBRaWqvFrtMV_==#Z@MdImnC=pDA^k z!5)H5_+WbZ5(}lTEvaU>lp8)pnHF!8oPp7!aMqa>I~+~`AP3Zb#n}@02IasNLsYV0 zl;jO($&8eJVhHv-1u^NUsQeI{0`H_Ht<)*=@R1>{o7=%uElA~9EIms+`Oj1|TaxzU zB2(f^*ui9*E5z#r6=qd3agK~3Jjj?aGs>lru2o5;5Fr(VGK)S7s8d!7QqfWVz(q6U zZ>ht%=Izxz&kJn#dPSgPFWQ4X;^$L$7teis=hpkfivjm)1jLtUGEnkj&cwEnh&mqS z=Mz!_V)uBR5(-`NLF&+Jeq`sZYE$6jfOP(H{RkqFaSS=eC!r*esUd-Hv4U}*)59>r z%9Z_YWBt+BXWaSv>#x7zmoUnck^8mxICuAIzka@dK&8O<%~t#9#miT(e|Yob+uwAY zFZdi$!9-=U2A#vn2evdW#iq=+`5=*Y^Hw75=CxaBQhP7Oz^4NXHxMv<&o5Xw0bUXM z*Tg8Jok?rP>{;;C$7;45(24MEl7~tOG30SykTTAvAt6PF4c$Jw1-H7dCaiWa? z|BK6DPE;Fmed8?c9Y^;b(210Wi__U8es{A#w{C+nj4!ubaI|T&psPhuv7qeuMm!Sk zu}oTrW=Jkg7jaLne2_yX7;R?m3aogFe5EEw7R=&+W~Vv#H^F?rRjhC8&m;FxZx_ev zHc25ka}R_6iqEPGlHv>Gb1;Z{L7!285<`3~*Ajo1g&aA8?aOQ6QrtP=EjPDnK-VRN zd&cY%$xd!ahPn>W?PTYcy73u{5{Fy0SJFQKCsi|HAVhI^7h0Tzf|^>`fia>8%+!^D z0gJ|Elw@jy5KOf%0?;SkbIDj=L)_f#=4PItr^^KX23MhS%h8s}liB&;OLi=@$LKO( zzEDtK-Cywp7eexWrYpvl#cMMncw$RIHo+iH#{JWJi+s>CUpZJVMpjMW{$(f!wAw!$ zOfVA>o7+K0vbmP0N-_=&B79enTka*nPDS?wc~avSIOH#2KXAu&W>HICLwTxbnV9DpnDqXFpEPojDPRUH zPxsNfRDqAMn#~MvL$93Lg--=YXfM*e9$cWz^+AO^U%7GWdgJhXOb+CFq%NPw*km=L z5XYZ_FgJ38V)v)yV%D3W@DRSSx`uz0y_Gw$-VUN^LIhdkL;%yy z*?Tf7c2iXyTKgUDOw+6C_PCxHVUAThNDDh9lSEr@VBBRYt*OqXNwrJ8t=>ffck25S z=zt(D^YJ}4WWdNIbY<^jaZ$Lue0}O(g>+C|7e@V%zA?7`MKt4UKNqwGr%vPF@|`xR ztPGMtP^@rQR8B2?>!o*!Dw;3~T(<9dqd<$4YkR-N5M2NYJl|}_#bvMa{3nIZmH3e# z{=E7+&7m7=zBE$v0P1?DD`b2 zQ_?11T}C>r2O>3!0ee7WM1}Bhj64CQn4OaD^0uq$O|%qG*)Wp~#P{205tadvic8LlN1KK6-aFzN_Qh{o<~1 z+(t-SvAk8f5uZlqZ>)2s_jihy#d{~kdvWpJ%c8j}CZ56GIZrq0DML;na3dDWJ3u&l zXd9Mtn(`T~(sbhsbCGCLq6K|5a;Y;Vfi?~7UU%{OvOWb>rn4_=IJLFRg}ur4-a6{b z-0t4~{oLtq&+jUUa6sxM*>em=$7~@DE7~L}bd+@HMA<3cWtR}voJZwATe3>OqoP(K z=+~^iEM?x(fK7_LR(&-cbkoW~urg^yfnuE(U0xsoh4hq#pCh?AKuLmy(9(j3$q*DS zw^^vcc}s4~lvF3q!YrYEyh0jemC6ED-ad$C9BJ!!sCiWWgR4TV-mJXl?(aGE&kT|7 zHtETua)s7zb8ExplQG3q@*PFM752-|^LeCDBI_ff2$FaZah!M^xN*srJ23yk&1VT9 z)iA6@F)=urSB0`Xi!bmc?MPnwtcR{4wlpQM$wL|qAb{a9)38(9?Wm$1DUY1WBN^tE zi*C=dFIQH;I@008?^dvV8Xfy6nuIhE9{Hu|`_M#p9JMUOm`4Ri@|^?8yG8CKRF$#* zMhLxmLvYmaen{^utVfrFZj_}eBPNwQtNBesrodC-OA;Sf{Z$dc){^0?X_+JUhNop$ z&8s08yR%=S(Gc$umiG(%>K`I|OI>?m8uP_AG-FPlrXR_}w!P zqOz(BJmi;(jW3Q&20$I8oIJo*r0zu;c2s1+=NdSxM@bgN>)E-(SGTwcNt$6L;j~5w z9->z}M_Bx1;%%811FEq$LAT9KaiJcK`bq7h6nVjqDxEl7<|S}# zK1p)Y(m5qrMl$mTCe>3;uwA&_?EM?u0ZvFJorLDp)gtQ_F(Ah8s?01-C~Z>oInb^H zVnHZ@)jc^weA8`8JGsr^vsAc7pAO3m062ZRr57Fqf`)Tij~q>5h0R5{-8EiTG<|eW zP*!nT?iZoDj!y{`R@NC^Yd=O9&!Y%dnU)g}!|?v}1Mr;fZDR=qqbIAB?)J@7=ozqK@8>usY)C`$&ichJJB5xC@=9Ibjl<$4-HgbQj z)W0MGl2PvnmT%GO{;Z3J%IYPs!TeE%_kJR!APa=)NTq|gI;}BX19-dC6VvG9IhNC- z@BkI16e*gvAeS*?KCZ2P(9+9gr<2vkwEO`7ED9UeA6Sy8E-m;S6oaoIWx-`y9LQa* zcpK(ppqL$$&AE|_f(fo-wcN6~;#t4rSImwUw5N9T>^i?a01iN6)zX2mE56z~ZTZM7 zTi+NAA$m6+B4`vRM)m4JwEpDDW@}@UL-?PE(Zh9DqtG+K2Rx;=0aPdpf|`s`x8h+1 z2*_h4iDq#boRIthduiDLCL?E+0|`VZuyc1gWOr|eBj6NSHoOsXXm+Cpk1@Fy#+5Pj z)Qp6Nh$3+;K^sM9Sq58a4kn`Vy?IB9!pk3`P%+h*27lnQe2w1{$+(1KeLd{Vv}y|& z_aS1b^-Kz-7eM9@Rdmp*)X~F7N41JI*h7WZlInDGM=m#w=j01}N`Qo^cJ-jqe%&cq z30-^5l~q7zYX6bj>5!hkQ*niH|KfJZTfvrYX}?x#Ra@>QOhw$lgY;mWG#k4MkraYM zT0?HNfgLjkMMeM@hEn&{bzB#4tbYYC)l6Br*6L|$l2OE^2wdx0m&fpCVYV+Oam@%A8R>`9zrV&6)UX! z3{&q5$(`|J62x8_e>B4&fDsV8kAf}_cxYCs z9dxY5kiL=MIU;{$!-3e4LjsNu-E+EmQ4ohm3FP!ec_0^GlShUpr`o|+o8A=B7c3e( zPnthT5}W}zhbaio&ikpHJMr-ppB7f{>Gdc6-`jZ7TRg2pDWXfxa=3tZ;FpUoWC;Al z(^o!Qg8Yb78>BtMeAAKa=F`NoC!~?H8}$89{&!YSvruehVGAW!>c54^NLcU-7RdpK ztsPl1ikG5Rm=D4K5*I`7vn$B>wETSGR`_m|tToicfCWlrjr4`mNm;LeElwWXQzk4i zGIK&_83xziWl@tLwET60E{nDprO9UQaEBqc{EN|heO`f(%KF`5>h*1CC%%b{dAf9X zfw=W7>gU(L79+8&E<+=F*j;^9JEWM^ybrG5!#MLnh$1NwMg@7foEXD}i(=LpbAOD_ z3zv+ZCF{|DGB9u1#Bhrpm8EP%ZDDpXapYd;pI1l4#n)LnsAkB&Rg`TAffNkXyFI_tF@3N3_1T^rfrO@09rBxG5!e8_vj zsD1usv*LWiBnKvfP|QB%S7juiLZ0b4U&kT~gVqRUGDUx(nJ?W!cc_lstr?EcTr6@v zxC+DC!sN$RH~;|@9Z!jvh?A$1U@g-OWk)jpDfCo{f!-My86FxwdjErfImo<1=&MOA zNctyD< zM1fMWLn(nHS|yiahfIj8%l^O@*qQ8V)urWiw7r52P&EZdC)@8BE3!jNWAX?%c{=#? z1M!4PR2}kY7}zjIA;`Gt&EOt+-peUDWRAE^D510C3?^`EENk33;i~D@tLANfU&d)D1Yfz`Rv8b)?U3dyQS zqg9}`xy7>Ca#N8^<-rogsvc70?*m5;^4#~%B7$hhQisbXq-YBQ@n_AkxJvuxugTS> z{fk^OzQsJUxsx?sRM}B>N0FV%RmZ2~Ow+5I;a~OvLxFv<$1gF`l`VXu$yV?XLL*c( zg2v*BLVft$f>JJ5xF41(KuK$rRl49hthUZ8q%6fY znp^Ntg~;6_jLyG8Z9!Mh#Dn^@{FBItd*H(Of`m z@+nKrL&yzf_v<^P1sAUpSWqsoUnQja`r=Nagm8J-8335b5=-Oy<0T4r|J5E;a3SLM zzIAkDyma+}7`W9bk?Ug(;ey)AmMZ`r(X1N>E$rXDm4_%erbd$S(lZPda4KmNDhS^o z%a5)R*o1D(d7^J|QJ5j=X^w@;Ct4%Nm-8S~$nzVpHC!ioH`k4Ee7B5B;-Hp zW5M(>#&=a9_CfQLW#^OBJe$2#t%etTc(w%0Vz_2Y->11PhyX0KEGI3GmT@gh$R}fL zM0XndMo@#^NfrYWjAN0)u4U?AkW&KBWDg$JBf&;tB;^y*(4#7DV6J{0s_OCuM)N*N z1))phFa1Sl5We<-Y5Jw9^^Owd#M#l=qpfa=Yfhw=em7m-o%BYt;p&dkHFqj_3=;2P z_UL@0dZT*v6{&N|S5>Sa5Wv}qA*7m6Ov}e0Leyt`Y_u{no33|3Y4;a^?dTU?n`h@8 zP7)`i(?xO9|0B?PmI|p+5ptIkAUI~~q)*vsDZr!`=AiuiGXzvXa^_xanoH3NJsq3% zHZ?76`2dy?i6OVPjVYo})yo3n(?7vNr20fx6^V;if-y(-coIVyC^i{=6png;#PQVC z)6BN0+=Zs53#G+dR4|_^((frM^???(w(p%wbTCxi5nbdj;LtS}DiTw@CJCC^Y_C8S zFu!k{+>TG>RHE{PYLwoR_E|B9Q^jeB^sE<*3eyA3QoA#qj{@(m+0Ef(E)uwdfl~PXhc4WekQK$`IR$Rt=D-q)iRueA7pg zo+{-Hem9*Js`*gP0SS|T0d?h~O;ql!23gksNUATyZL9-?@bQ+Bjo3aKc%!iwkd5;4 zupNfM$3*Q@(>}tM2F(zp*GIZ|n_V`<(b7avrbfwT*DjlTikm`yK1kBOCMWq^EM|Zt z8Yxzn^q#LqmD32K)_Iy85_Janlm~-G@Qw@SoRp4=`7}%_U%1Y#Zh_V2dGFCa- zK^BUHrbc%}^$?{&k>s8ZtY@SQJ&(Q`TELsT?Tk6K)u~cDvHneQ2shtxoet9-y*X6Y zE7$PWUHud+c5q=dFvX~$l;aN?eH`R&)dG1338;XKGMpU!76eFJJ{fmpyK?k>jhAdl z0aGltPc$B@QH?#^*>`k!NRMSITBi}Mj)FRnPnJf&!+CNDOb?f!xsxq1zfF{`%rriP zP75MjejM%e*q%eNn|s6ID@nUm;+bs*01gP-lqtT#)mMN9Qdo~foejH$8Vz$T1lLK6 zXiEXfts-s8YSVK^X^vX@q=8x7ZV@iIi_?pl8{pIpqwJR{V?@iqK!$S-I+R#0+hk*% zjJD@X0@~X@dXv$hkSU}qH0JaJhmMRIc-kxIQPJ>jWsfmPAuVEoy*p^rSJ>|>P--is z-s@T}MB8NqaI%>6aK-4&G+YgA_SwLI*fiw~!6Sz2T_nyd)T`~i6aYp=+T>Ustb4ZC zKG^^E*&dCuzJ1oNwfC#v8g_nG@DH99?4``J?Rw=k@7qXU=AM#yo)!EH1v`$4Pv~WD zB~nsr)h4}`F(Sm7xAxlYMuCb_XRSc!PzgG5=w0SLKruVdYI_f(Lnn)PW}Z**;uf)D z;i#04P(Wlnn}8L^6V-_mIt>grqo}eh+zT~74C$LFQCNH5d-c6eBiZ28W(!%qmW;Xc z_hM1%TGBm+Jj>c2^(is%8XdHc6wZkbtmy}LDU7J@)Lw062U17&Bf%gbB9Iz97e5Vz zJ$$PW4iFqQRFqsai*nnWnXXXor=f8D#Oh0Kh1Yx(Ubiyx0*F9+<(V7*=*Z9|hq2q+ zA|F6;rQ#cUZ?(md2F{cR*@|lwvgVr@vvL<57Jz0l*^S-pVQ4&}# z@U%NUhCg-k-a{Ub?;;BXM1jlid}@tFHb@PF?n?ixD;R^bXc6FyG0F0N42}hv-GA8NH$Re+#o?{f=r_xNr~7D~!|p{czQ$;vPCXiWUYBQeZ!Re|%; z6pPG5#eB(!`Ojq9`Lz4b0iGk>`R}-?MGAJnUTJTFFc4|=cHsPDrXy4FDRa@Pwh%yu z=|?3kq5NOk{flKYHiH$ZJq|t&{Y}np5<`rOvC(_*8L9u%hadrNhR{}8ZHla6Q|HAE zDP0Q=in8^=0zP#wdQ4o($QB}lHTHzqEzx5oc#grhV+I#r<;vR6#P@v$Wiw%`H-*uf z%HCC=%4pgdn*)(#ENfD2<1P=V%TIL5H2tDychQy2Xu25LWe=*gdmj!fL%DT(x zrM*ft<#J_(Hq3J4Zl=9R=$Uc{??%qMf++Ga`&hWyhp{YX($m+W!-%>Dc^c|dx0%$S zn&+Md2Gg{8%PYHdC0g9{&I%NG>QC7`ng}X2#<5-OGT2sFQJ>^JdT#`($q<$GpKK|UE~2Qb-c*BIe<)Vq zq5(d!7|Y2*HhP52*C4lk>H9?JQ+Qy_Bg=cW{R(w>27Rjs)ZRWbbSgQ6Qfy=u5aqIzPrZsloWh5rbs_fS z{wP`3L6(4nBzyY`x>k@5OakPKHcem;9gL$-b;QlMhG4W^{TkGx>u$A*%_0-+pgX0n zrn9E|wAZ%wnMz9>_q4I!Uz^a_J2_YKV%o+zctT#sB~HCzl^_Jz0MlMsq!eEFd1a@5 zsD!!Cd!Mgv(?x@pV^q*=K0cEIHWTUH3-PhO(UHs1!x5MH1KWyerSEa*rt(ILoStx0 zZZn8)UDbMA!Ma<=b92X~u2LH+xXy+)r-&?rd5V%?Zt=bO((s+&Ve5YjitKdzP>ZhH zwZr)382v8GWujD~GmzC;r{|{(Ap=8_Z#QMj- zFZ1PWMh@#aKy0&CZ9Z@h4szBl3y@qT9#`Rd)BeV{+x2TJ5?zw@wb5y^h6X+BoRHCX zc~=VGj70i`KtHq0Fy49r-544#I`2kC%ifXTol7*8w$!tDa_-czbt=A~TIhh@K)@cL zNpk}L$-rgLA0xh#Gm;h9+>MwSLw)(gryKhn0$2&=ICn(UP&c(fPJ%PFfVf$DX%bRY z*=SLotM75r&xhA6)di!c;K5P_%Q3N0RBNF}96@YxLAY4M;-lo25@i*sfl3A#Gt0p9 zg2k@g598v!ZV7f~*jDEqE|q2h{qY1r9n8+JxqLjYRLYP>#cTJNi(3aV|3;q!M}*;B3SE22 zfL7qi04EBS-N)IUP!t}#7nUA-s?l{)X?vE`r%KJ#o8Z-7F7~Nd(xgTd>%EN^X7r$? z!CQrsx<~q*WeFT=mrd5p?97;P<M%C$~wzm7^L97H>Q z_2%?}4=oZhQpNe;28;Oe%cYoEVF>^kwtoCEoBU{b+JNznL<7vyvCWXualscvg;AZF zxU&;_rchPUdRc1ZT8$E$YI!NwC3%+zW*;UTs{pr(j4LfIuv_|ijHFr{S?(nxa^ao@ zEBP()uuq|Hbw~R}{2i50u>IVAl2Zw$ zeCpuSszlyc;{XRG`c_<%k1SY3N;vZ%`VH+5{lQVpZwrRl4&^_Z|6prpg=t)s9)s2P ztM+#5HGkDXP2D@F&G_E-4QrKYOvwIWiks2TqgtsQ9axzF?@|D`%1!lEqt?V%pcnmf z*_)8U2I8}wphtK&zKc5~F8fXmj!l|%om_c0j}^z}SuZYTYZ-bc+fM(CyV4a>l1 zss*V~6O{gH|8x!4(vbC{t_Ty0M`J;(DkVVczLlY>4y47<=c1pGY9`&be&EQ<`+g!A zVn(;kc0>cZ3}2iK<7>D6&^~YN4Ao*&TQ_Ph%@xtWEGv7A?FVi`C7s5hj1RMpvW2X% zVko6KC=Z9fbnYe@B>X-d%L^aQ{}SRSpyNetPtdk93KnSB+HpQW)$#si)|(ceYUjBN zcZ_qUurUcbs`Gu2UH=*)&Vy8XzehjLO!N8%JRye;k3cL>8o+|KJz&E$vH~m$W7@*# zr+}z;504lPxKjf35|T&sOa==E6l2Ro+r#pT@nC7rnsu4A8W$wRH-WF(1>@}h zEc}E5p?xz=S-W_iXv>d4yeUN{*0K9?5ZRCxjmJCjt#eqrXfC%>HVllGL%i9P-0x;@ zjrwYJVkTjuT4`K~HyS7u_#e^qbC*4sVdZTLW+ZIUCJ=hVV1oQf%uTK#d(8S`!0r&lGfpC6Vt zQkJAtrBV%%F*|)YAkNyBjj39F3O0z2B1k;>&(4Q_c!%Gn0UdEG&Ov_&H0O{mZivjRey7 zAFw6_L_p8xbYLf4@I1x1=I{lcOjh&ZF{|&~ZT85Ev=TU4mMit-SMFE8a)0R((JU+z z@8wFuh{u9zB)b9&i>+;iv5eHD=K!5sT*{n<@}*q1$JyL!B_QqO?tS+r_ap6r`1>Or zvye-RtDT&>+>qeaY&NE`vgOk^UN*NQzZ1#Rb*7TZe5}#*H@I{Mt#ZRDZ>s`+__JE8 zp8NU#^YE?<*P!5&x zdkx0}=hHQ{X;FahJf9x9|JdVgpXlTMQ~zlH#ew^ixfl#FdTWAuYl{xp&(I+waWv^$=dc=5oYJumQ;rT{* zS5_J4vtUgt1ARD>Ig%#d1#byZ-o2nTaiT}~#d#cQ4T5hF3yH$}2q4qx2OT-#2oGJHCPnLA6vsiRXABF}VgA>$(ifXKn#4Z10El+@m^EH^)kvi&l+#B4T!#d@)cnj5o@}BiX zZ?{OXrz<*H5Vb?v)`5?!&^yA^+TwA)>VQFfQJQN8(DETrvYc>z)WJi&pFW5>SgJVD zT?BzxY3fjX_@;&Yal|W`u8(~S#SW0HzisfKH&*O-)Vt}(T>ER6%t&a7c&2U3MJRB3 zOb!XZQUaWS)Cjg5px_h>AkmG<^oevA$gG%Vgc_p4`yqGl-IeXaZrpYn#lfgwV3hf6 z&*M&)TGb1e+8>!_xkAD`O%^?3VwlSl zMdaE;r%H=0)S|{vmw6oDD51u)2wwT|3WXOT-0q^^XQF2Jiq1Rms%c;K_Virpj%V0$ zldoMosFus7{&*!rOT3elHfU>0;dI9Bfjtx6drlQGQS}27$aDmewsc&x5?47>xPD@C zv>+fr2|QAmD|ce;m@ROO_%K2U7;O^%Q{dtkdx=pH%jvd{7@3xku6JgO%yYNq-jkOZjUG+`Xh-;++hl;KRx@Xh!ke2C#Zg1VQ@EGeK ze@j?X6cu6{wv1U#L&*467B=(KiQi$|*B5SZ;s~r(8GbxaY}B_ubN<yp8-$rUk z&h={AmAb`iQcO~_K3_{ZF71<|^To!J0L2~kf71mzc4@vgX)%&l@eyOVEV7Z-y*nYP z;ge+s7lcp&2H60(Qr=f&?~rO>BCF+M5r9~>Akac`fBY!Fp;W3{p#oMQt1vaHs3~9j zAN&%$-^mInA9Ts*1U^HE!Dq|-9i>;zrssgmq5Dh^t}kgeXdK2Ls=8kuM?|CdebzG! z9NnNFMAcXA&CuB?(7246bvdx?uYA1U=ovGqf0w z&P7e@7Ji<%0~^%b_#|hLMN4>bR+_QJdr8$}(X?tmR8xvvM4GXh;1}&!r;ASa3Ry;Y zETc}YGKK>`kYV)C1b%6ek!uLg8_Oj6HhTCl|1{d&h7iz6-ezIUmuzUXJs(ZJ|yDKVAqbkxb5#4gff3n_Q@>h$0h4fG>!~9FnV3-9Bm& zS|JY8=Fk4-p6Y(&9q~-*g-TLTH9q1YB{(noTBOdj7<>n8Keds{%qfzQLmEA`Q3{1E z5-}}zxa1VUNgXx!{FRyOKq;xQwTEWn>QyHbHicprD)hju&4CS`h58#@K4PugrHYQM zL?AfHj9YV9CI27w3l3(L_Rh3x;v!liZ-BKy_bXXczO45-6up|XAxHb|-kjj-% z0l(PXL%>ey50IMEp10Bfw|TTK4luA;vUy=|;Px_QgiRY{C&(DH1sI%&G^8=5F!CCz zkwTo+v@hA4{`h+ImTpUQCNT88BqTuUZp)xQ^r$C~NIWt}KWAF+zRSng?C1OO=233- z@MwRZuo6fBJVFLsPW>QMFy7k$i3v zSsn_2fWa6MH;25nA|IyKZ@h+c#l^w^&J%lKMo=DSh%S!dg$&)-I0$*%dcuBgza7s% zKf6Sn>7uhZx@a9eOGI4Fb;5W0iSZhcXW=NwhQ#SP+HckOTJ2ZFIjiJs9DdK{I@{I# z?H0%+I^4&*i*|PCxf8YOQL7eJNPH}BP|Q^+KSXrcoeV@sxQ@g%n#~|GLs+=C`vhuo|Afd1tp4yZFWVM0j#_B@{aR{OG3nt_U$A^9(3u4XcS}r%kDFbt`RVt^(~oWhx);e&)`u0P{m| z6fAXMCHn4f+0qO*CN28#e^p9i!s^AbX^RxcLit)cd-rQ4S26)?c_>Xm_ziVKl`oM3 zTm`Wy)+Ep~Vp=u=6tnQTVHgpqUfUPAEo}G8)ZP0H!HiTiGxXNymjHgAA zCS(z1pFB+PeD(iTwr~HqYj@a-W_PbyIjEG%UySS=D%JgF+j%wULvre~7w5S)_F-`J zz0_=*=b*yRXtm2?^#jX#QVKoww=q4H*x7irEHDzp>r%;W;3Yht?-Ipj zNNaimcS@3URsJOHM$~h{oFMPOGK3*Q1Q&#F$p(yN3+O3y0(-y>~V5Q4>0K(5^a9$^k@T0+SVM zmMdGKz@aqGxdlg-z5zxJDq6lR{U4ZRO8fN9Jo3%~tNO1z>eU9_?(gsUR?9o3_Qt0B z55l9DUq5EcjrPWq5IgZ97x#Z`$AmdZ+xdU0+uKdioyx`$Zb;n?WxpV!@3|YZv}od1 zLH}J)kX5eJ5ufWLLso5cz6Pc)Zg_&;DYW#Lx&2#~hFFA5YYUqsS+jWC<3@k4GUg&9?sRb)B zO<}r1owerH*S~y0+cZ3zR3(A4W-xCy`MQtiBTtlj7CW@s=3A4H3V~%=_)q1j>xGI_ z835bzev!uB#Hgs&TYKJVF|&ejk79R!TpSgD`aUVP$xpSOsdUUSR4cA%}m55GbWlba94W zeDAqW`w$Qr3m*d7=K(q2{ogC>13hxvrD!#2<>CZun(2Es;lGerU z616>&-j(SEc(<&sX7vRbUQ~c6s&Lu`3m}u)kb%vXt?`WKWvwQMDe`U1Xu9s(m^IMm zN>Y|{pehYciZ>mK$%Qb2y}y7X;|=bGH9Qc31ux78WIJK!P-c+3dZWS+mKiL~YeDlS zp$^oRHo!G4=q%8PB=ZeTa(#xBB$-;VljTz(nU9Rs2@EEH_DQ}wopjw3D6D08PyrZ+ z3%=_&yDfz*X*tMh3h+&I$gX+Vd`co{MWHqyln)@K7Ut6qJfZQlC5Vv~mV3z_IxOD0 z_dOB?&*H`IwZ7-`2Tz($qSkw%UGQo$KVDl>M6gjObQAzE{1$uA#ck(8+58JXS;<8vE8xy>5EE&XY*-h zA;ByeO)oFFL~K|*Q_NYEm-Q3f;hI^fI)u5PeEf8d5ZT4*@QcWTSu!>Ju*M7GE%p!z z;g%iS5lRk3fnVs5KmW|}G{X)knUNfiU!!Cmo|Ang*%xW>u*NjWi+1N_sn#x)+cY0` z)*<0ukJ_)@UDDZ>9vY>=7smm1ESvCZ(vWrEOP=%r51ax|AOZ7NVt5As!wR%~!LIve z>yD`SKFk4IZNhf($I4WORN~y)yq1%MWm?hp18MUhfhw&%lBSsttAQ+PzjNN^*;EUr z@Ijiqo^SJPJ=p&c?EwNQlP7f3Bw|4I1{3g!nhv@?Tj2_BePU^Fc>8`YZUJ>`ZHIHL zUi`M|vk4@_QM1;5O|e_4RgFkOZIg|#_mVG^N}oy-NjRG?|S2oGqO!dNEK^UG@`&@o(g?L=41R zcXZflz~*GbRyDU$+eSS1@w23~?Rq~2Xep3De{?Oc;1AL2R9OZTEGgO|h^W&<_ z#>_~QPtLOpJ?$z?GMuK5>qNaFg(xzu{+lntDzMP2=PUiC`?N*!Y}hZH{-_0v5xre5 zd@4T}YZ0tb0=)Df>1)8(oNk`*i%fhcC(+FmQbCyjPgvE~IFLXY)PXvmHF0u*VX0>$ z1S~~pNk+Eq^^isqrLrb3JKw^k+C6GDH*jYtxue62BmjZ2?xGgfl>XpVI6aEqlk}H{ zF!@JhW6S;}R929?!d~s8@!7i$`Wi2W7y+=@k{c9LHx1ASJ{|8}a9ND-12Rvv!x7cT zQ;wo#ZUIC=*7xsVpTy>xi!(mA-DD7P*-`#f0@vVJzhNnmfd_60v!GQcF~#R1{;4NP@6{87QH2cL;Zsjj-5 zJHMYa7GB%7zI`oHX4yV1Ax5V_$pa~0pOC*2;F{8X|#~v zP0P;bn`k(C!;(`N!u>^+2AlgdFtiR|z6?^fUaJRGil_q+as`Ge~RuYOMr!i3*9xwp%={FwidcP2bdo~F7A?-+zvjDY+o zbwLBYw|2#ThzwjTr1#*@vWVLkA<`(<&o{|Qx>}-Viw$VB=@#l@Mhzm48&^av7dwCt z$M6V?TwmH40Uf57hMxI=hza};*#sof43~TAzIJR7>oD5NJQxUWaNq<;TE%?}pqcQ$ ze1D!~qtd~ttG(K3y64n;r~9;$L4k(o%!Ym6TUdFo(nyuv$oEcBf=gEgY3H=*07-;Il(MfdaYLRjjL6o3NQp1}NS;o%g7Wp*2 z6SwUC&%j{VSpdF3f;6b}fzoUj>f1tUcEE+!(aP-lgd;~LceYk z=mQc11NjA3<~hXReVAzl2LsHIujGE5{^5SY&a%K!vjPW1&kTwShFfr5?h+@L))`wC z1=p+d4UNXX1D(mBzxQ8WoCl@`aZG*RM$0~GA~()*$8xo14ihj}jo!zbVuH9mk)>o) zBiTY9;4OZ%aS7gpzTfJ46j7L{5Udzk%U--nvV+7-Sf7N?-xxZlrxQ@5tUyR_hEEMN z`nYzZWx=t?tHz>xwzaWN7KnvR6oLERt%Pm4#HOXCCZB-J46JBD^HzbABCdWrzmOPy z@JbnK0SArEAGsb!!I?Rb;fk%@mo3F5ZvCF(XVG}gI&ny?A|;ddG5m|fBSQiQ+Y+l_ z^o8e@nPJd6I^Qm!Z9jkW=t%`Zv=sjRDonh!%*xL9{FC;4qqIw^y=FchjpwIlNC-Gm zN2Uu_5T3NY#B%CZT4T2Quwa6*9efcg6BZJ#H~;9GxGd+rfU{f+>ije4_PAe`_50fciReo#m^Ik8N@Jdd1K zvH14Tu_|x`OSjAWTe>(18>ULWY3J0qVdlr<0t&@*)G_GC_YTtgpQ2dnUS z$l_JHn}Q)cm1aOK5IQiOzI5L4`h{jzE{bSe%MY@|=G}{(7a2E(z>=1@$G(uXr3!l- z>9jSxi%T;VoIaa2Wjfrh$OPK{)dx%N`Q|m^cI=9KqSGx0*nbV*vN-c3!D^B5SCn7NoRg-jQ5d3&}9zeL2)|mz< znis^SBI11RY)pM9SuXZK(FH(_GS~PThFPi~&?!faH@jN-pb>rLSX9u3c5Qxp8!IDV z)GP;H&%@=Z!wRTOel+?#IakUXPQ8;F(Mc%^eJe$dPuUP?1sY%PnKegV659_sBVy%q zEq(oye!+PkB;(E|F>w_Qve1hySiyIOOC53-`I{blAnU%P6VnarNx&6|DS*hDUX=^5 zNLOkY4oNdDsZDF`sU_-RrL?b}A8G9FAux^aH@mDhAge&sH7id-_LX^SB_r>V9pEmq zu^eeRZtsYrQh~#)QUcnj!y&LQ*}?d9&I_=ut08pbbGrTn)yVl1~TL0;^_Zqf03W#{(%{W zpWueNbWpUO0PfZJS6BtZ!y z9?$?NsavhakN_xgM1pL9;6XF9c5V{?7rxG4kc*^JW$#wX_wk*5l}hC@sY+E2UfYv= zzR&afy#UqfUAwZbiVh_30(kMhzr%C6w)Kw5`=k9 z*sG6NLr**QT6?RZnDm;V`sh?Z@Q!_MiBq}8%4uU~DqG^5GgLKTFDzV=>_zE9rc7Nt z#n~#-z>1@hUZ00nZlG4$BV#!N07YKu2Ou~$RnxI@*dWKR%6oX0UEl?TFILwFY8p0EwaRp6gyC z3pWz5DLgu&v{(gG>KY1r~*u>c!)(g!B7&V3Ii%ojM+-ws8Yeg@H90*=9PV2g1zslqxk#nS-{x%VU-m z8LSvjj>jx#TpYb9Qw94nY(Hnli=U2hjYq`?-bjRp9_-?QGFaAYC7Z3b*6Q^+=!G6V zS+xdtu^VXcz!-0(4@flM*qS4=-QdWNcn!`EmcvZMdDpQe<06WX9z~svFadkLvIf`f`SG#i|mc)SnO5XkQxY!go|nGNTDa-_vc}Bzqa|cg zybvu6IN?P-poK`{P(~s*tD0@N-*j?wU&y{Z+i5=0x{}REZiGO#g2VC?V(&z*>45Oi z8MW6Q*|&{^g&Nvx_$~EEX||~I-x9DyRO^_Vb`My!7~pIRS*tntA3enG?IJ}iVdBY7 z^;{2HanpvSswn1U2;!kJ9hX<7sslvd8p5TLt?ogw z>93n5T|NXsRX!QM3VfnkuQV!S44D1?(H&Oo9Xa85B+2g}2SoY;)c}_WN|NakJD`cH zpT2+w`WKp0zzje?&0Y`K5F&I<1=mruV`o}iTbj~8txztJWRLrqbHpmM?*eM6fg)np*)DKmn^(ZH8)!&h#yfVTr$*4Dc;U{!%x56^fqU=7m&?m)Qjqh=-hNtXU*kQ8?7)cWHdOdS?)j#`C4eJRkPB%E5Sj@|+FM4*p zyJ3Mt*Bd5!?uku~Rm>t6b&Fpz!t707#|s2cMJk*|nB1`EOm$J$8mTMCYR0NEt~+Wb zuGJ~=5y?_x#kvh5hhvOQ)T)Fg2lH1Vc`cW%h{w~(yg->Y1jEdsI;(aJR zylz_+++Mq#@?_C$HVH5l(}%3J5n4;FU2>h2=8Qbv>N@WbCzsC$lmh)HD$t;!b+8s%JDX3bPH43~ zC-K9M66QA9?yLKEVV|u9)~#*>AT8lcLj-pyT{SyJ*ejBgY!8C)qY5@Zv3lySqa|1+ zeS+z;v*i%bI}ED`k>6quOmqlONn1P@)7173wfp?4V$nb+zk}wjtt*p(9fPqWQDGKG z3|J$5qFZB87}OArk_Lwa4rO|vjzuRk$!|zeDDjNT-8%#g;5o;-QXIqa>6y(fqsaA8 z0|VvI*Gl0$&r`>-3yEZ23IN(SM&tul>PHA2V^`fm3$g%uR^SKxkUc7rG!V1bI_S-j zQ@oO^Wj-065$#4ARl#`Ms*w2Vd9x{35iSpW6;xJd;OHS93z4UwoCey6rl38b+QeFm zIN~MGVx+ymx5OqMo^-@O=ekJfTuq!@wsMh?QyjpJa}8v5K;;-1%Gx?GImN+XC1zoj zrE^695gwsvviX1&ApW2EeSR#>U%thZrR`z_E2Z29889l8l?CVCNv#t(uuQ!N%F$9x zz^L*8@`2xSYtWOn{nYOFxN>^_HI1w$awXlI#r2W8pHWC4$%={-uuS$iH>6o5g<^rA zA}_B0P)ia5%omg`-lD67r{r)~9Husz<)&A|vRq(7#YfDqyqEpj739FdvY14BEa!(LRPB|K5)XzW*ZprZ@rs1! zK$=oYP9MT|W?{~_>!iQ5R-{5$FqZTUX+{(QvCF$lj}$k`WHo4Vh#Ao+yt-fMZ&U`u z@po$#7Vcq>lQ5vv2gD~#0YOkzanr?h2Ki$niB;V3H%zg=Ar*v&fRhjlu_?Q)!bU&K z>XUYr;p~##Ge(FF(4s628Kk7yC2IIzW;PE?FRm z{ZFJ@k$y}jr79>0FhDY^ULbR8cE{*(sS1xu?5Q{zJ+ZbxXZq7|M#a1KgQ38+6lRN5 z;T{x=z`Z2-EayN34pj@8Wn7qOeL#+c;W0aN2xFL6n4Hs58=kC=Wo9R?mTvSTZ9C2e zN;g2XFuuqxoa^w#7w=+qiq^0Kc}2@P=t<3^B5q)2)HPJhQt+xOrckwX?ri5(56HEH zv+$xgCg-IEOrS-f1;!X}y03d=e)5PuvmFu3T1Xz>Cs!9+Q%E#n4~+@^zw^e3`sC&S zc5JL~Y_;1svTmFFo7ZWsKz5Y z!sg`=Q{}m48QDdrm^`}~U<49I*1iaY_3Asl|Cnw8`x@ypl+%EblJ}Iy{%I2*{@xCr zl6g%8FY@;~;}sqZ`CO;uVT7g5El^}!MvM0(Kd5rCU&xhbls9Jer`dzMi=Ql(mhawG z>A=F>rMpwtz*)3|#4(BeqMed11}Pvogeo@oQl&wPN<)MDo;=7p28IPOMz0Ph7ATz0nb8^Ye$%y=aT0?L8mIDW>T=%Nc4 zT)s`f%9Z85>h3H>%sx{UT<%6q{5aNbrq>NR)G|#WMj~ z%!;sTMu`N3r2)fd^dzdRKD(ki9KwY%Z$5cb=(4u#T@L49XJi{{a zrx*~@nt136@hLdKY9srDaV6=`8i*o;cMZVs`qgdThQB+!;;UnrtC7D^-SaFg3J}Z7rv%j#l-VTqp+KE(F zku!q%MuK9v0v3k|_aPIN=crbY9!bln4KpTwV{SD=6j@DpjLzOvw7rGk+u~;XZl$#}5FTnSCR2!fz4;-&1cUDsc5~mdiK8={dU6 zA=mQQJcR33o_GlBvt6`ezkm$$fQuWlfn-NjyZ1-H1Eubiqxki=ECtwigg0 z7A?axPo(~+a zE9ld+V>&{*-D#*@#m3_hb3wU0b%WrX4(`N3bWgS=+^rVVC<;(^1{W?>2acJyp+8Zk zq6o0a5A+gjLwS9|N=aL&KEhB$=ZE1Zeyky)Wz5U)QKA8)qv#zY;P*qfqb%mbIzRBr)g2 zyR4MBXrYo5`{}SL3-EKDit}?M$j3eH3U5`?L-$M5Bb~KWx_;hLBz$ELnR)J~EtQ;& zDzQ@eC*6uYJdiWNiTnfmDn6E52l6W`y-AlGPQmaQ>MO6Ocn>HHpUSkP%5O%xerUl) zZ#MsP zlM?jgN8X{V597l+c4X_1*BbPoe&RCe;Je;{hF}<+7qVWk*jW7vH7!0^g7^B z-3<%;=5NTI37cDRaWvWMW2||yiH|iPk04}M!go77xa#=2a)$K4Zl=~iRrK8n-a#Od zLtN|k*)w~Hkt=WW@^1_i9Pw?{k5K7y_(d%J4s+?3jYQ|(Q zeA{6?;3T)63du8-4TvEX)*PEN!r4?Q1PWf&!65bh9hO9sVlmHkN`b+V6);f`!WSRo zU-n*dkD(y$E#esRv0vdG8_I+8Q%FrAFWyAV*xkXykq6*&BgNv)5giXVrrH6A4L#&; zZxW53-4+;td%|jPPu3{4)Bq6S9^DXZ+Gb2X=DwooI!qTa=BcL6^nnqykGs@-5rGJ+ z$TX}p+=jd$R^FH7#ZN?^b%dG?GkP?%ht)=7Eo(IUjZB{;B*7nhs1`3?i>eYU@n(#$G)|M$>*jFF$Vb~ zvhgMknqy6PkJ+wRSy=kA^N=m15<|h_Qq0&m8zW=w0g*KCC2*yug>cCiMkDb<>lkmb zE(QP-0kJmi8En?K>g^8Xtc?{!Zu#zVwuImo(t8cur09f)K>%vEC9 zhuk@LA)^m05oJ+cPN{)D+0EA1qvGI={I0yjtVk(rn>!6qqylC-Kh!7`nC z1*S|=CYr#08K{cbj2RHJODbB%t{kgq!kKlgPb+>o)e-QYDBZ70U63$3o4MeehVkRy z`_CUFr?pEY^YGNjbzrWQm~lmf=7nofrBd*Kbf=WlymyK0n^1+xu@%72PGF3|*=-b6)NcXz_0=N)K;DJW zY!!y!?zp%#^{*S~OGpxyUgW!5+sx$gDL#v3L;&Rl)u`DX$-U3~+8BtR^9~7EOm4eN zo^GtxcN)y`79i9u(hhsrLxV9!AK`07@D*~9gCv7k(av6&eK;3xO=@$JJy1YQCElIn7-aI@%8c zx08SQ%JsWQHNT)2v90zTmIl6p7>XMjh#q|USdbLQA9S+nuut$AiscsnN1^=Y#A;UY zE3uUz8yuAp?|YqrrmBp4aQ5Ex^;X|$atz>Ds9ZX!5_~EE^YBk z*?PTIp1R8P4! zcNAV%zO=~`&Y1kni5V=Q1_1_>Z?-8dd0`b)d@}@A8ZClZJlLi_0M#sLo#K_*Ii-vt zK_Im~CA6X#vf}%Pz&mhq<KH)(+YTn^@AVu8O?Muc)qW6by1 zCC3@WB|q~zpG7*koysF5^lIShIpQvMa$8msY=%mh0yIvg0>P%8X-8)EUk+=P`y#td zYLB+>N=Zz?*^}_k0c+;kCsyHlqyB|+ixux4je7)?41kDyXKErGU8VY`d$N4vok_#U zRl!ZT)(tVCSOXjpF*eWYRmv^rugUEC%tEANilA`h(h=W zFcHs_!K){hgyfVZ$ec8poj~lF*BHOJBdgD`aFdwq-qQ>o=a!u9>GAiQ!oMf`WpDm| zN&R0}v-tH!joN?VosIpdLh5vM$mOjOOd_?<4L}&5)m4I}2b*JYOY%sa#(+o2tW+cx zV8uMfJZ1;U8w%+SSoJPh_>W3=^V9JXS#taG=-U zPZ0_nPiJN1?v!h&Jv4zpve^*Ewo@k#br7u4pc^EJozM-mk1@pb9P+5|#Inb9wDz~N z(b&ff>J_3GkcYwo^*7qdvTJWc*1VT*7-%74z<*+fk-_V}4iJ*cR|Ba+M@k8$Q^a=I zKND#faP@=HQW%`^So}>RCFC}8=wEbw@M-aRJYK_<3tEw?5UhMkbqLf$YRYq)61^7Wvj|kGIYRQp)-xT?0K#RAHtDEK zeP^{^r8Dg`i@~hTFZ=}y*~cGeYl1uEN9M$DJUR3sZ<@>W6J3XDd2dCQ!P5Pkff}-W z2!yi&=y&si0eXp-uqr2tFI-&E=|9{iv}4GeShVFQnD}W9PsIDfMN82)D`m)GlQ&mx zVj2&k-StDiiD<+3a{F0`uA<8}jUZ(PR#@WX@tD-0EiG!op0eM4I(QP*py3mqk1@fK zy99J;jfusrW_?1eW<41SO}2)mZ(YaxDwj|t94p>_w10#WPVbgjBOu|dY5}=oQY>Wc z(S~2r@M|x6&rC9LJT-tZq?WL)dBVYSrNzZd`DX*Aa}Uqhdn02-AvKNlO^p{#x1k?G zzMx1-&@GfK5y@iTCpEETwNwIhd)pYH9MfbJ~CoK?_aFyzwkDcPznrkslEYrC?FwJe10lsEsshxb*CWNNBW&!G}M~?l&<&_LDim z55bPIN^NV3i7yD&NP9g)gPV^GT*AB=MSEn(;t?fNcf5qBaMmYvd&FM)W=}s-@qj2O znEr_ejn>2iWwqGF;nn##kF?&TBl++K!EN{#i-Q|RcPoB7D#;GBZM<|6hfj;+oczu&9GY542KmX+K|C9gufBawm+5hxUcmCn; zcK*@7+WE78x%21$V&@F1ySxBOiGvwxT$P70rsNO#i(}y=8p$+tgIoxIajC@5}s#1Av>tu6>5K~?BWLvc@ z2ydPM;jAl_LXJdSi^_3DuYBSb?{05ZVJ?A9BP=hKa9y(tr0Sq6NOWK7RL+qga4PpG zCC;V*k0wiG#hh*V+GLd>wp(1d``}3VZF6$vCfU3x7NVLzCZCuCA7mN$a~=?ngl!6r zmz~b~4wnJ>K`q2vjwx5_E5Cx^iu^rNeY2av02;hDTK*Sx)7oyJ=xwH5}S0l46Hs7S(M=#D|;=2?~V{iL>ze=Wsy; zwen)3)089&$k~Cs+$B+@v0w4#LVvVJ*P0h>KD=B|GYqXYB*gt<8zF`*RLTW-`%?Om zSZA*moFjC5@+b8H4lrNJ@FWK@v@Ix_mvvY(nu&a|+90T_wnWHU z?uasNGQS)Os@W-oKeDPb-7T5E@nEM#c?l4)lbrSev33zZp%$Q%lR5Fj-V81S_Mb)f zEa;cNBdl+moA~MSy#;|iNoli17+wrO(iEgxwdNyPCy5Edz{*bKpI2Pi6#44zwhC${#gh&$%Y_|*!t^!ii_y3@uDOv!4&uVN%2?RO6(QKz_d5BoJUF?! z`0N2_<>KhpBOz@Vv&oJ3z=Gh64$h9QsO4%*&7b!rvAv@&rIo29I?nVSIEsFx%JE7& zIfvRp7EVuzSFBCkP--FxQ^;cE!%W9?BGd}xVt$k1<5fk7EQ)UH*2M;td%wA{cz=Eo z1Fds<_XQR}On?N-bu#%i+g zdD?xRH~J!M9S*jQesHrtcy;!gY|Yl*C6B3O-(BD7nB!U1nL2d-eAEHku|XGfqq9q} zQIiNPD|4_>pGrb2xj*e^TcSuqYye#&uR@m`=g`w1ItM64OXMOO<*s|aDf)vtnU;-8 zXsmCCy7R14_gvfDZlZ^3?K*y*7?sTT+f_M@h_-j0ZP%LXDy`WNas+`hfoPUIaD$soV|J*O1;VvS9|*1<*&}4U?kwb8Zch`GfI7NNg$B?CwBJ2tucxSCj;%K zA8xCH>r!{8xDe;n7bo#Z_gSgV>+B*`8^m-Y*PmD&JpO%voB`qqR?yt1@bjM|t5ua2 z@D;|F9eP%cU7(U7HD`gCr;X2u@SgI5_Qd>g?ZEKSiVR*OBeqv$N{Ee>zC321UNR;) z8aa(zVP=51n)Fw#z~T(vvm;ZD zcY)k7d$Yr3?iscKYz&Pg@B#HI!mIenk!(0F7Ib3I-)E&UDEm|uVy>1b9*pIXO+g>< zYPh$sY@}?>?TseN+xgfOU&QU-A}-P~Zi@5~wpdD_0LbPUa#Mm&3mw3(YP2|#-eQC` zd6|N?kV<1+b*mzaBGLwoMr7S?FJ3c^?R;)+p#ea9K+sUKvt{`o#tH75trn_ys9Y;5@%{UHVh>w!LEy=W5BbCZOxKV zqnFT#l7ZFu34t6!CE*jrcoZ-|5TP(*Q0Zs0vtbT~*T|VHXBtmx*ugT9|SGe;yrmk{-b=4ZK_u97&h#i zgfXa+4s;-`f`e)Rs4Pdhu&XjLssPajSXP@7fEk{Hwp+yBV{H+5)w?;Hn}x@irGv9_ zVOz8-yw1ucA}?I^UQYtLQdlfgw62~aW&)}bVt4}QFy@{{kPov*2EM+_g{5+~8cnfi zdB)4r4G=oj#s|1@ggqyY1=(iWUEG=j&W(+%tjN^t4p%e05a*TmTcW61Ev(FBgu|2t z6K@3b49!UL?|{JK@u5UmzgM0sEbCer67HDWGQ^e}go%M7ey8YBWji9rVnl_r+sSnu zH~?Oluzu#&0V%o$|qKDMS& zi3SvJYV);|>Z??v@6l9H?fyH$ggw@iyDpz8DmBqxXJVBmCu2hx-ut1nV4cKl|OogJYCgBjw?8s*O z@0nEZk_8ueq!?|e3Exs)(hAXX=6a-|zzkjf~?AS~#|Y*tq6pnHZdX zXbN1_Xm`kkNZxh9teqUIe9s_L3<=3HjC+g+{d!IG$yf;abI z=*YNkXZ4dLjHc8jm(4oBtPt+8-!tyD%$VQDa#Um($Oq84*BzGaR6uz|Bh3`?_KDZED*T6&A_huf% zQ_hFowFc;k?XT9Fn;UbX5IUXi!UqB?eln2fhjo-V6Sh5 zSbB&n$Q#Y*^N7kM24d!5o}J)b?;{t1QWB&TU!;Vwl{1CO_a`EYe_dLWyc~*gU|}3V z=X#;oNXn4>z%>vs%Lz`jSae4zd*Sd*ndh=()y72j=)Cf)d7hJOWXyH8zZNciwm~ec z^u;#Eb87Zg^;C398~5-eN?F;IF`inT8ZM@aZ<#;XGsIqG+lbOw=UPIJd88x}rFdf- zO*n?7^k(st`A6vSNO&=Am%PjiwW-Tq{Y|k48-)8nG2JNP#cS^*8YyDJ<=kDPZQi!+ zA=)UVcthCPSL-3&fK(Q>kFtZLZKhb<*?@*Oq1BbGX-ZOGnYj{~rY1bvbt5>T%L}}H zgqqX+0R4PK=>94vAu#TRzN=0cK zv2gb-IKIM6s&%xWx?`PHfS@rHS;qW%H}I|UjII80Z~&TU59HG8t5aGFmDv6SNfn01 z523~DYLkKucGo^LM!;5fU&m8~ozp#-!p-S0WV>vmQNM41C@_AK&_c>c>Hz_mlr(Cs znV%uU&<%k&wb&g}k|ly@pw`7ahG`V?pvVwAL3}APv5ya(3(dYiEpCZhPt76HgSem> z8`&y;4JHhXwL}0uLqupJNcM~IQ(wv`o=EI4SSso%gcSs+kUsmPi|f%|E)P&SU$ViM za{g`X8)f==C?Py!xjv+wp6zG#oy-pC`F*}-qp)sjhUe?AaiMx7gt#Ps`(Y-7^NoG@ z-s{ZYY4^qJXLpM2LeD=Zl~2@;rMK54_^QqdA#i ztd5XcS{5EC4Selkm>Sjmf{ zcO!X&u(&Qdl_N-^9bfY2KhH{`Fqk>}V5k7QCMyRbSt2sbdZZIZ6HB?m2!-@QYaHXX z_hKEU7L7#{EE8^O)UAt?L9~yibUBv^PZP8$iYRJ>CjedU={SyLJWr9#=woz zHYbZE%s8&aU~#hdhx2M;Y0H$T%;pI&G+R{R@+~?P`&;mDc~55nGmj;otP$ICo^N1) zcUS8jbM65T_`~Mb)1A%qgoiZnOuH#Mw7Im!gjgQW6w7K7`U5{;jRnth7qXSIa8jN~ zu}vKFezqPWCCz?-lO_MBYc|X!lJ)XRg_pJpDZ0#Ir$&uLV$Z81Sww@9`Q}!u=LUir zPAL)OYp4AjgICB!@nGWUS-izLF)g!5C`nNw0eNIr+Y@VT4UCx=u%(=q(mL+2GcXj6 z=?8|W%qBj&oIWXfsZlwxw$@;Yyqn~DUkpbcNPN0k-Nthj+DTl@QgPg__x!Vfm{VO2 z#SwK5gCo&?IOA~o#ut~vXQ$zXY`vEia=2WANl9BLVoK`{uLywnQR9SHSW<;@N>8v~ zW`#CD#>aX)w-69~40-|YB50Y4w0LcQXE<@PTNc)Wu1bKUZV|R*Q)MPiF=@JzHz+ zB60a?Q3nS@1P@1Z3M%TzFo;8odBlB~DulDp)YASd#w@>5an4A#91KoWrGobC5mdwH zAm_$~;8B_Vha!kdNSP86 zlSM9A+>Q9qToHznd3h86G8MB~&`Qw{_mLLv6f_Gwms9A+V0j= z@BE$Xoo<(xVyD~H7DZ$KJ;kZi!NcXD^1c7Hwo#YAAO1HznBAzhfgR41-C14&b}%E^ zXm2zVfNO?@gE9$*gPXa_|7%@si3}0T=e0t(`aTTv`F*p@0IwxUu(`wA%%iR^6l zi&PPT7oq_Z&&kwCDGFx^Fkbfy@2XnCNQF*esls#0biYmZC7fIshzPCAHaMS4#T)V4{S z-4YUNi=(ALB)_#&Meb7KpIp@;5d*^ULy*0vXG7BE)va1sZ%y0t*Qr{zXbHONSs_Ft zhzqLTIPqt$o+q#va8OyZnOqvI?WN~sa(Z#mZtnORG^`BM~89X68%`huobsruh#N*Y23ypqu*W2E-(13*+{?SZqq`b5Y9V z{Bvfsc!e7#{q4hrF-;RCDhP>dXynvkXyyzboR06-1~zG-&?2ka!!<(G#C}!K&Pvd@ zBBe3iA=(g$D7=KsRJRX}lhz~b3IeLVlhmTwLk(cK>k23LLy1OdM)ep!cEn26&9RDg zE%QX>=IOh!5NH`|?P66iW=9R37eB?j<=E;A+?6*XQnGZ|huET6YI*frR^4qsCUpZt zsO}CFcYQP4Alq26=2!=nqe_oDX87l8TjUjYc2=zg)sf&c3U8D4QE0=JF&RoOQ27?K z5d~nu11{*ZyW58NE6lV~O&}J`3^u+3;WIO!?q?!Cr!bSNYf$q7&d*pyfH3s-EPj_) zpr?ZZDzIE^3#W@n;WSEZ2V!s|OR64TBRWyWPOwh%o5VqCEJ4I**^# zH&o2Tts9(xIx^(Q(F*OU7P#Au3;Z6Qe5%~6c|6-EJf#C+AzL#WedX6&5?#P_(L^U` zf@(ctNwRnEEIfbRzr3?R^H4>D6@eTE7T9mJ%1Xn{OGV)e)egqeps z&CmA2B5tZapL%nfg=N5kQg4sw6yu^gD+F8VGP^jZJ`*~Y(+QiVA4*)BS!tgZynF;y zV-d}uPJ=^ntxWCBoT^vblZ{~Ed$Fc?uK(ad$eXPA(IvG`03arJZhhOPnKEfxhR=LQ zR4l@>Q8ou(wTfcI<0Mozf){_qSw`G-^Pror#xfx?$U^HIrepYYKlHXMp+o~3tRwi! ziO4*k{-2{C7qPmXUlKearO#X@IZ*sQOTy?ov^1Kns-nD>YNCIa#nxnZ7z>s)w9+j3 zVLqaXG8KYf<>mn@0p^HQQD@LaY(VAKF*w--Ot-@5wiE=rhYyEFN<8iaq!lQZI zoXdz4(|Fn+Q_f4d4S)a`>ej=WZkh~uTshLmI9GCkNk`Ig$hM8`P%_up6>hcIa9xYc zSrBphMIdwJ*D$OkZF%*+*XAyvIhe%}O?J&LK0SYmY8i%e*26y7;ead&a~TF#)6G-v z(`Lez!~&7SU;p;=FFyXw?A&J`{p`jsf1e>Sh%PhlF=M+(OwWE0hgbM;fSN|YHJ&v$ zlJ{&nU5n0>#XZ^sxU_1u?=9RHotCApCIHBsND7l}h}EbVDcdE_=mEpS$TRyJCxZ=U zi#oeSCT{9YQN}#(vjh;=*{p5mP02N@rO-i01v5M{QhNKNUijaY!sBYlE{VDDXvW^> z@rO!{@EZ=&a|FW#MB>N1(l@i!DaionX-Q+b6C(qAty)3ygx>Hcf)Lmd9ENrC7 zNn9ag5r3Xi%I|GdKvc0l(A~73KtH~Ycz{{#_()vFL|A1m*?sWz8_rtqwwD{-R(Fyl zyhW|txpOAX>0CoKb~CV4iF?S*gnW3==~Ck5+w zX3Y+Ig%j-{J$vMw$f7 zxM@>4L<&o^IQLmPS(>g-ST-st%EIB&v}TaxP*v6&{wSI_175A)rVy27+0wp0nzKr%{!i z8NzuyRoN?CPo=MLX=S5H)K9enz$wBdrY_1io1?`zXa#V@hE^(TOWnYp0h&>tMx*c7=BNK2ta?glQkJ(yTrAP>g%(m$Eq8T3U|!Z@*rzK_ zQyLRsMYL{?Z@^zk$01!O7R9E52K5KHQ5Z&ZMk$&*IDxWVwHx8U5R(U}1sZ8G2%%}c zgIEeRL(IYbOa{TmV=g>ax16wAU03=nW8z{_sC-59WXEbe&+uBIoz>Z~hv_*(drL+g zC48=6XAmkCWlJ9$5|r7iZkIDnqSG`m9uMUb!;-buYKM84xi6t%J}%?Ph}ysGDKA?O zXKz!D9JBCzuemy()@n^q*y}-793jEA&?GRnsp=Kwo(RgtLk<`m6 zPm0TAFdtpa8QfP;^@u`5di+5R@R$}gyYb1PCE|WA!?HwNRV`~6OuE0E^~=F307oUZ z9CwNQ8}#<_xr|pR_)0}_ii8kv!V~Rh+nlcVyj2>&+1g5$VCWN>JktvKstF4&hmtSS+@odvvo$AGqz9H{j(b6 zE6O!Ek6{IqZdgoN8&lS6)w)Ig7Q)iKdk`z;{{y1bGf8IBCDcS<$@3M~8bXzJTorVJ zzTWIwp6$Kqmv#mvrKTuu9fhUEWt<*Jgy1@O_dnS;nBJtq5=w#dCrq(2V6QJy+AG8^ zA~@G(#3|XOp$U0M03ykX;g#8R!5KxB$w0El5R8m2$RfI!Emj~$V>Fttl@13brPq*9 zQ-8Fem@T2hEpxYt#~lt1FZL_J6@_A#AbN#)*yAEj1hg=3ves_z!l=0!2IKRiH*aGh zTs}h3>@%lY=&UGO-zZ@En233IbVSDyUrd~IjHo<8vWRPwzyeb!!C{-z7O3r%sE#NS z;j{ATi0g3j=zU%?nTrqP7dMvf-LF`F4c5@>slAEQ847GQ%lD*Yopz*V@5))$gMU@J`5G>MS+FX($tRH~NaUMr~cu08lk4?ik}O#twE zg*p-zu?jGhoKOtSr;=N2+yIGni)Oe zew38$PeDIf6@~C$ZnrmD2?op(>l=Gnu^xY0f<;gXppJ_?^3lQ$DFBd!_)LTDk(Foa(=~(VBYq>|*Jz;Z$6g zv*(CYFXlfjK{olpal$v|Y93H^==j*|UU?ZrD`DWpPw!-l4<6j5MYY+SW-6)8Npi1c zI!*4w1715EgibIOv`u1v6Xs5OnxMor0cCJJ(sUGh5&t28_?o%jcc8RN`mV}(SX?m) zPbepC&t99##*AJc3%njvc&*sD4yS?b7?(JnZp^g0c1#}7)o4DV-{etA3@b3vAI?LC zL@{ftxv&J3#)9=Y1bM|GmMU6NJyL1U)2d0+w^oplBE(#;HQJ9?a65&kj8P1FgU!x* za zO!%_lyaD4ggD1IM8JG$Hl<)n*6yhW4&91_)q8X!YLeJUFRyUyJsI>`uQ^?<0e?&7f z0!sEIWC6x~WHrf=a4a~H~Sn4OOnaK)b9oeBgmywj%FiV{Eud4f4p@n27ixX&$9wR9Yq8pf)zWvUs(%Lkut&TN zEDLQ`=pOIEVgtpY!RPt^;^kb~1sy9{buu+^lWd0C^Nrn2eywioY*WqW9lSSKP3wYr zt+nbHeqzQ_SwPMNmLtC?3buM{+me%)8_C?U2uMnu{Gfk|kGe45CA8Z|Ow+aqW+07( zUv4L{b^`Y9bSB_VcS_ymf{QP3OP`SB-3wdI&}`5LVtqR|ch)zbN=5jaw+ZYqxk`M> zH8uB~Ub426T6Gdr5?ffx{KH1g@j=$kn|2FX>W^yrHD}#Gx z4{Po5YIqDcPT1bv3@IAH9s$om@EH$Z*4>1;le|B+5GVj;_ppJ5sk1PqA|9nr!?S)5 zsJwjMHi1l@g}wbQd;qUrAO7mi(J>D6ca)@!&o3^o-d0!F)@vJ&9@l^IWOHkKr}1U8 z)!u#j?DH`et~By|&w>Q`th%ks{(Vg>khi>*^Fw@J`Bn5M9>h z5G;q6EFP_oT9`@(uL+Av)*w%8j;MWYf*SLQV@LS}3J0||@-{Fm7MW-&ATfqJ9>lZ> zCN@!h+%_&(gZh5KD#IYw;Lk$*PeJ zWP^Dp!)4;lSS41pC1tf@My^{PT$JT>Nq?(S#}Rm@cpDxWQlY%`Z=a^lk|Ep(V_`{9 znabGuTs%uq?jE6vGn%3xuP}&gdQJvGo|L7WIjEA~Y_@Xop@a9Zjo^o5M0Lf?V?v~T zTm0F={%W5lA7|~?gYEf;zxnlVfAV*O9#Mrj#0Yn>KKVp%4+JxpiNk~mFDfMmkeY*O z5KVcGS_jdT$Om{twPRHV0N60jDePLs6!w0?J<(Xn+XmS`p zt!JgBpBtN1`d~g0qyNq>xe~Fb_re9M5|6n@Wb3F0VZIbGk==oKldq+)(GvTor(tI8 zaVrTbU+DxIa*?^_Q#YDVK5wNkQ;TFQt@N%+5ZysynyK#)ayZpOFhp2%oO>rHLklD3 zwYFQko9#6&yp8)z8E&b{P6MCOE8#`Yp{Ap)$o_m1GW8&ol69sH zTc2n9^jJ}7k@eQ;?K?jzl9#7K(_(SJ(k0i?2DwSw`1N&ogy~oNRcL>`V(i2hTBW^{ zS702L?v7egi7K^~Llu}=N0DPD8KZ0JA`KxmER_AJ_KIS}BR5U1*i41!$T_Lh-KE8> zEhNqO46iv`&v&>YII>2}&$iwny@SKiM&(>`Jmp%$4aCeP{Y8#0Z{VkHU{Gwq_7hr9 zYPCjnv;I^nBst!aI2OECD<%sv+uoh(LQ>z@=ukv!{4VHz7Fw5^b#-ET1eobQIIB~P zw|6tahDt0wc&G3E`ZhP2NmWK4WMpox9qEG*4_X z2D#0xM{@XBiaqt~(9BAX7_-?1t(RWQ>61uw!^L~X(YQvib7-kEIL-{1CD9osxoUv5 zCns;%L}=om{*9v9GrLET;bS`bjJgKoVAf@Df`B{{+(^;$D65dh?wWB^^8eyS*KC;g z&Fh94CtSmKs8nAXZj(g7QC9UD7Nv^%n85k-$q6amfMOWDL}+~ldqZvQX=qlTg$6VZ zx@P(H(Yn{y8wLxCpBLX2@VkMW5rkl)Szy_6e&o3X3edt!ts?>67{~0*P*YeP!C{rm z5)gX`YZLbzhH}8efo|T{Ce*FZ9uSXC(UA>2AB+Rwbc*o$2wj=kRdU_B!QUA65 zlS{1Dm@{QPS~P*nx27<Kh(J3{Jvu$7gLQ)6l|FRq%PpeO9 zD2Ec$SR9pa;tAp9e}b^Z@%~xh%z_D|Z*JWD<fBXl3_(wmPDg5!j^TD6|yMN=~`}hBYzxf~jt^eq6|HuEyPyfz;`k(#hVM|6* zqVrKcFmal3Xhsf`RPs*QkP!Ne>X1UYNZrp%kM*ov}uId}sHT5g!;RDw42l62} zAWY_Y!0KtanPSUSMyA%7_J!u>oJITwKMA=Sxyti47dSF_?v`k_PYRJENUPe zCe)}^LT{bTI#pxMuR1ba!gjso51g~+z05Zdktzxdh}C`Mt-aH#=TrrBkLguJ2p6m< ztK=j2+d0OItloPLtMHR_f~`w?C*}ijqPOEMaAVL_t4v>?<0ORBHNCOuC*F|T$hb9A(?ngsNN#Y8QAlFkn$ zfc9WAz_=vpYcwjnTVFMI{c7ynwWcjbOd}Gr?BnGz-E3&NA&%~{0)D&b?_U}+VRml* z`^R;K0E4Vf@%^vnH#9rP_@brvXuikkWc%%3DICNSlYgXty3tx+72j;K^~Gm1)kg%_@1$#1V4uNN)s~wPa0jWH54v_uJ7tSRWEhmc ztba&s8?s93q}Eys--#_(K3hp}K=kXFyuIo}*DU&B4;xiFkSUyCVTCHH=-U^A?U#JM zjnLt)iEzhCjJq_~BLQVUguxpN@a8{wUvOZ|HJ|q25ClOC^+{F})k@*?aC=mFQ}O*s zxRi}U84}!;=4_^nrio0xUy%?=*Hp9>tz<3T+%@f6uMW&R`eylD$q(eSljMQS&3Anl zEz(dFKNA>D^1%F(nU;T*haGu2eRnR;uiSXR>9&Q=9dJ3bEK`#)945D>0_YyCHb9Nb z*s}_Ql2qfhf3%7*!Z2NT)CX*G1X!;ueo`!F<$1A=*>)8AkshKYPOTMiPQV5kppA7W zr+_^+-AyxWA$UvC4ya`4R?%|GhA*|vq;U5cB|3k6c-d#`r*_CI+LU5(JR<6g^X9Q> zl^Z(xvRGaoQC0Z9C*8^MA9{!-z|ujucV!g#L#Ed)y?$(LCM(J|y28I&V5D`Fm(12A z)0~akSXa0oi(6clt&>Alog9=fR-#JQHKu2_i>sS*#MGUo$&BwHup?Hk;$cu6{>YRx zYfv7KS5&oj;G2NH-)G8Dg|B@i}={(S{JngX$}I z9_tC&F@G6$RcH#OsAmF+BrB1VAouLGWv;PC4u{|XY;>*E)PgibqS$H?cbg^bhKY9G zdw)R|o!BwhwfLTdT?EmRDKD}yc*v9p=7RCFBY{%f^QIe|70q)LTBv}Hk59w-UATW} z6JVbOl8lnx;OZg3w5@qSfWpFHlTlGHSurj|q}hDgs)mP3SA0Wn;3=vsRhCNrh$h^V z3+CEo!FG>6!3#i@+gqLO8ccZgM~^uhmFSZn;hdg4I)l7jQh=C4M(Urd#vn~&AqxX( zrWP_`_F`V}cHyFNE?evn^B*~t78R4K8Y+GQg5dc~LlO8H8D#yLmZ#_o;fZ|wqpaSL z2X3(lThwI1Cio-S^D_^?uikYI&!gjaaO`H{j#Ntl_N*9GCaKBXmoWs-e`##+4L!~YvP#S%E z=^V5wQAl;Pg$E} z*Fw{Nx@cRq(s*EPT-GRhl1Lx~8xX+8dFQhmH zbDjr+!ykHUY}VH&PlU`Yiuw?MFhDrglZs7&sPT|J>V+%i%<6k_--#qB3(c;0vlhbho@DcA`y*CDsut^tPqL(u1x1 z(35Zo5w&SiOLb!o;gAkz9ImH1$??8noGL`U0my91=&J|3L5t@mLHtJUL;7lZZ$`Wj z{#LAem3MnT{8#TL>z}1?#l$7`)0wQI<-qmclg8}%-r7?c!Z@5(k!rc7y4k)z#B57U zNZ^Lo6IZxkId80GOmJQy$Z6iN8Btglcor54yE$>$Z%%?O<|->k_Th>em*N_cP_mpE zzLHXPpexL$|0{or=8n900zRuh58sY}55o&|7nYHfrKViPViA1lFO=CxyW3B;p%q2x z0@FKrHIRC!P!!|b-_(T3^HG)Oa`!C75=( z)|Le4mjI&tRVie1Z=zX8#KIabG6_rU0`+(_*A;&mpcL20VA%WJvklcIpu64%0S19F zy685!tjFeJa@B^-^=n5tTUdg9BcMt$vvqGUAw*iEDWaqA(G*QH3B`VYv9xDnv-+q- zf}B%NU7K$0TBclGHZyCf!3agqoNs6Ng|miBh?@f|aCW397{s#AA+(eaO&r}^Y2dY? zMy9n{`-L}C-mzq;hD7R>Cy-`ge1z2@P%+9ZMD@{39yMw9o)R6|h4I>)bdgG)n!09I zg-y20QMQa_g0cwLzar1SSQJSZM6=wOdBXr})jWrg{W)?mg7|SS@)BS1o?J3LR3_N& zb}b>4Di${oHG_SnLDUNEcD(x}x5Sy{WGX+&LO7umNLH5FI(hox+Z=YTFai*`M9a9i z9J24AXL;VH)VHOec0dF7FzdeepORkZ!DWi%W$rYE_csqduDJ72M0(3`GSPi)Whq2J z?Kmd3Dhy@3s(Q*YG$P$RDq&iLN3DQr#gMtcmm=M6j;0e;;9wpe1#mtmpHkY8?hP=m^a zss}eFVJqytfnmllQf?S3-KSk|b|-49s0jZTkO)DYL&HjH^eLI76lms-fHJx}O!Zr%9caE~(4wWMW`>O*<5Roun+XhwD17!lTYlJ3sB z+I3fgSdLME70eb%y!s1y0yXb_`O_E2qUniuh1rz=T`F;tpyH<$FkBt)pBz;}wQ^c{ zTsfly^ImVTPEZ#?raE^zvXAEXhmtk($usDX!;Iic7{xqkv|8ULK&!z|6(o`-tS}>1 zHu%F_02kJ_t=&4xSHutX{02)?pm-SP(WUkdD=K5M(6=~Fiue+VQ36Yd#EIh(#a>|Hp3=TU zIX(>hBl%@~B>G7eK1j`T@53O=2$RQbI5ZLoMbk@Kd9++VR;a8WHk!3sD6!gEteDEO zWDz?6Ur)0@wgW%o>3zC-(qF8#y9G_Tu>=E{#YRnD%PDuN#U^Lo(2D-eR-am5pXAyw zBP_GVbukfc)^joLx0nlq^Fm~S@Pd1B;_gT!&t{GA^74K1b@|5BDEe77nBAj8>zEpV&lmRLlFAf2%7t>PTyCOaQE((p`>JI@|N^p{1*x^ zjl=2@Eho}p{Z;}`D3|FUJhPX0zZizSg$FD+cj0@~*O~$5)Z9d;v@dXduf+$+>IMb@ z*&ehnEO(qVqix`#XI)&9Bd{`rc8=MxAe_C8j9gID{A#toAO&wZL(F zSy9Sb31}q6jAXP_tZ&w`)>ky+*~%VQTiI%@woQ9N5pRM1F%X$4BmZoW*sys^@Dd_g z<+6bAYT@8vuVk_~P%C~=j1`S`N2KiZhfqezU-reDgtXf%>?0M32B+V^yI%R`o8ssj z1&8mr@R5Hb+0$&VVPkA*xy6em2^16G{Y#O@Dy#^K39_=2&gL$C7IX*iO*Wc6Xx^hX z5tv43oXo0cx$k#ro*@fA{_0TTDPzCf1?^;L;h?w_r=Cs}8nCvK)zFj#``6?avH);k zw)QUHIY>4y9=sAdh_|V7uj!zO_Q}quj?#sr?P$wZ2Hu-i0dj~8(yZu%SX!ozBx&w) zkjeK)lAFVrxN|hE7E6C9jg`#u;_16x8&R#^!x2+Oz7LuaA}(~RAs5}8F3YnaS5&28 zLBA_ih0KrAsGX8{GGgE|5!v8tAQHKU7oJ!|KL}8UbJ3@<^#L|5Ws;eCds9*?xq)e``9f^AW z6(CnouJIkJ;DLnl_>Db??vKA}WiBh``$Ya^P0pTp@94{@pR|`yEvVL<#J&Z8l=Q=F zmcc?-ITebV7t4k{=qain8au7}^G#ZF?=;E4w$TIh)}o^tcLW{Q5K{VsqyA+{h0-Wb zBsH+HU%POYK<5? z!tCH2$?KQh1H&xL;p_2d{BJ5_2d?IK7@q&Xt=)9qFZRI?k%?O9G}bQ$%Ndl;@QIe> z5*0pRR4g8e1y6?%GBt|lfbvH#r>ztIC?Si=BeH=eFTJcmGUknY7P!Ny*Z~_x-mx~G z;`3Y@OM`Ls&!7*d8hii{T3;^&rPM zqw_l`&mz8>;X5ghaC8(&wB`GBnh2K8R@wV>*s?u%1)?_Dzs>GX^nZb=seHLWqYCt zm&K4CfEp~15%5=3xek48bN#D;$dsNO&#c9UVk^{X0@-5PxM6)QXj;tiF5*z?+pftn zD-1gFH3fI`L+}!j4bpeKixo}e)b!1=uSVHo??FU{RcWzg%lFi_j<^4`zR_xqp1Z|} z31E7qcxbBpa8CAPLX&zJ+ip3|DoX=FVSKGt3-IgW=(m_QF@ws8*@8uSOuPte4ojA)TFao*MmK<@<~~3`=vj72 z39!|s@UqR&?H%mJ+!m3}0NnEw8aNc(^HOY7*bd*}D5-y4h0LgMk%Ob-k(MMe)}A?S zp1O)oTXsmx2o|R8u+cm|9oHl_ZH)?x8G}}jra+CSR`wS_ZfSq6ybEc}uv(=}%|rDJ zqhH72DRcy$4Mj#HiBk=oazYdZ+}Aa5C7WtXDB3s+ZBpN0V;`_1Tx*&WX)q|F5QmUo zv%~P-gIU4Sxsx%}gdyzJ5kb)8vBoRnUfpqI*J|C{M-MJ(* zY?z3pDmiO$7ZubY=2R3Y*G^w2teMu(WVOp()A%yELN1C^$IwuK4~b4Sl}*B0l+_AC zXjB>oU&s4psPpQcalv5-jx$A?2utG{**8DSLj0wrDr?)cOafm*l5xEf9`-o)of6Aa4wpJjO*vf5wn99@`(l)7f1As- zvA(g@UadU}e^P~J2X_(Y*Z%?J&0dDOmait;i!=G@aumxV_crJbJz`X^W zn47MZK$e!4%1cYwbJI*ZM!>VQ@QD_Jl5#^WP+MJ-Z+Ia3q=*`brt0j%ocA)BylZh$ zZZM5)H$-9*Qr+HZy_Jn5%&V!45@0ZqK&NfDa-GeEfLd)QH! zODSbWc$vrfPe>Ti(NTXfOnXD9Nump*SEiB;*=#Jo*bpJlon`#o_HBK)8(?Yo6#w&fXvc^n~jD(}n znA6PDeAS`!DwQNtu3qQ_Uiz1T;x-4)TOBBLK9%otxez*6&_xXz-}5Sa&tLH|pb+)i z^Xb>-FYOd3y<

&6uw});rAWza{Xkx}bzjdO_CEs~w=S4GPtHeho020z>XTN|XX) zMB!^0OuLXZbxGWW6%{Zk*i!MW1v)CW`RCax8$K&|L%?(in@Up(w0gZDGI7JACaK8B zCPE1@$S`WFDXk(Fw@{(#m<+J)BDAq8Pk@Lb%F&T3>SPgHq=?VacuM+Zf_JnRB=lIP zd^?Cbb0XDo+7C2b~pat#c^s0Pri6iJe41+n5oKw-@%2nfHi5pqgj+bS|Jj0gIAe;wjD;I!P`pNw`+x&UtoGg1|qv&wmF?| z{8GOCx-e7iK@BalR&-u8svhqaBVBo>acb9+1_DG>J$RIptVG zZWb#oPwK8zll{x^R>I2dPO1EJbGH!#)|Z-T^*AYW!bXho0PIF{ZKQrorc$yTHdgC9 zvJ6Sdk~X3o59%_R0*%I&=f8FH3SC-S89Nuj=(rP1`XTrc#)`rpm9Fi{7K;bXrYI@i z$Tea)nJrQJQnWOs)vHso{Bz;qL!iNVUhzvHs`;}=wH>_UYWUo!BxovJ-EJw+WhBeUr>Tii&7W{^P@oo2V&bh1XYOHS>#+! zUKUPHEkLM3zsU>>nH(Os+l`LG*@|J~1h=1mxd~9+D;N(>kH)Wh^N0SsES4wq7s$CY z$f$xfY{p&?+ZtH{`$z=)@ewk^<({0K;o0{nda;oH^%#0b*-~g$ZXfi&BeoX{LAg-6 zSeVzHuY3U@Cry;vwcsFpVNN(V11#pmxk!oj2GP&M)U7Qb)VZ&T5? z5Cf`v&r9-Nfyb$@ZQcW^V< zLbl#mnMkxqn_#C^u`V+Owl{y2HK{zKcE$p=IFP3tklCmOfDEZNLAmN3{ESq-^2n_` zC5@hO`?56CEJ=f!NuSN?#`058ss!;hF-q-VZE}|>zO#mXrBNi_b-~=dqdmRgGXHMY zE`rO_^}N%f2sU7ap!}`QtZ)8_u?a1 zX-S(|n;i6t{k9y3JtF7{^g>f-(nybBAHaISuU=aDA`1)jPQ~+rLXj~LK-q3TGk)7e#l>hopDTaCJD&#IVgawJ(iN4gACSLODgavOk_ zob4J#^nX}Wq5SKt2AD-tsf3~dJT*p^!XyN(-+Z%{2EOLsoCaiOw4UE0D#5O{6GZA= zbcpgwrrHG}W1dwRh_=G9#^46rh)rg?)tyicgc7xca)nfQ?`tT;$@icQq^zuREuLZl zl3Z+HS20odxQpoov)~X|=!4$7+_2!`w!tHC1p{}bI5S?4iC3i#4`l5PGCHo%-wL4^ z!Oo=Cm9zDTaf0P60)|GP%cW!bJuMm-J8TSo#uQ#$ik2a)*E&1fLGT+!9QT}^Xjyma zdTc?3gC$B6cWJV);)E`gE5=eo&P#d~gEkqk3_!%O|M2H1d8Dgtq^w1NLiJrxU&n$3N;1t z+)mSVk&WHd@~~E`)-_lxCXQurTWCZwY!4g^c0vDDCEMAdurf_q{5G~8UySaSFQ@mN zbxC1X*8ys(R zDU`a&ot29Z-0kEb9N^PZbOqtmXca)<@QQ#VaSSZQmPgY3o^m^t6LSQ@UOp$tq*v`} zdP1x9n7u=!b!gDW&}@pA_N(XXJM@p(M!=D!@Qw@c)0WGKBL%Tz8Ww|3%I$t&QAR{b&v%& zXKyNpI$n1HDgix#U`_Z_a&klxrH;5B#$!H=hTY`7UK{{xl0Z#(4=#Ioc`<8Q$3P%a zcn*}UDDHo6VIkX%Ow`e51LQli0w&P6?~;_^M5$EK4 zN_>X{>Ed&Zfx+eddC|{JqtvqzM`U-6{Xf6n`S(Mw5aWF?%5ePO5ON1?%X$NY^!S;q zOumiB*sMqZtT2(t(C#8rSy?y-fM8iYQOZ=eY5^pJe*}|jy|!8XirE*^W378N5gmDJU7*T`g4Rg3qr-3sw6^<|iQvW9u;% z6b&S+N*gOjo$-8LicKVEBO+tnu?!f-cBX}A6mL?v&WNQMTUr7}Ic&jq}Z#Us+O zXr)hmyIm!f`nEOY@sq2I$&?i0o8UYH(sd!}07-sORD z3ab6pols0j3IlVY1(boLHOI-DFl(tmI34M?V@#|@nL;BZk-ppQj!|lu0z{N(I~QRA ziae3lQ`nG8WsWX^YO$t06PRIrOW}NC=1XAJNPHpbSWeb7m>Jl^hQI+J;(%VlaFuW~ z+0R_xoSVCes0CkuS>&xg6wHe2hBRLG0!8zZ)*3N|8Z8K|9R)T}qaTij0|3-#l`%b@ z$a5mF4!960!iYHX;K0FtS@%LDi@@4&c%{aZ=6fp^fLTNTEgV7>KTYycwwDllsg^_L zuToO3fkwUX`+7giD0CCus)Dz@6YVZ%BAWDK4B3;dN9{)K>#wf639^tU-P2RU!ui;f zLlZ+N2SyfnpEXkt=ddi)jN|_O2j4#t_hh(GVwQX023WnL&RZOdj`R32XnpK3j3Qea zj-Qy-h{N=`IF~&nMIe+kB^(tVwjV=dH1E74UV=5Ny?kf#!>}gwGS`tg09#rDrb+hD z<~S)FJDf0X z1`;r2VXSMz_Kv#vNm;hp0d}1PY$5CLx}hak+gBjPxfj)>Aw7?ejiyO{Ym7SbKn`AL zLg;IR2nT36Gg!l8OekVhkt)^_`z&9uf9f2_u$aKa3Z}TnaNR)v!2ESdf5421Vuv5e z>if)R{Y#QLlG_*(fY-r>gslx@#suZoXg7(vof$%$X~dLu!!-FDx`}vN5PaEotG;fA zqcSpt58QNQTY8nc_NN=w5emquXCc5WXIRm#g^YS6!j@|300YN)ca8@m0DK^=G`+L3 z%P95}<`>~|NyQ$eEcMo6uxPl)8Mz>*udtwfzY9ah#A&p(g6%>c8goEe2J%;u)#Mgq zMim3-QK!DS*{XespJhQ(qDLT+_OQkK`%!Or9g11?W>6x|EI_Qvp>ZhosH24~9#p<+ zor<5JG^;8#fqe4->dgvtsFhpim!npN8X-!927$ZNez*KNmt%o{#E#IHstie1bsiK9 zg%$qL6j0dQh(Tdc!ur_pAK1%)d@VF`GwS00_sWFWRE(Lbf!H0BtWgree7O;6LJ5q0 zqQW3l6+PmKL>PdDd@SkC4lN@w&%%$wgeSBdvYazC2yn&yiHAfUrKAk2U;?m{hS&H2+&i&lUL{(02oyg}^B7z6}(AWNw>>fAfp3u<3L zhBGH~~9rTk8Qp zTq0+jSt%|fnP>Aze`h-EPsSZ1Pc?ap(RVRusm%%*N*cOIs@-uF`FBSLT4*Q(4c$@4 zK1Io?Q?lxdPmcZfaa`QjTT1fA5pY7~=8fpY);R)Ngh<7)${fhKQoMlz#Z^nwN)U~k z&3jiqTc?IWka87Sh`8Nz2<94^h%|&18*{`9%q1BY{^41w4oITOlFw7Pvc2Ic#jcS_ zFQyhi3mgKqVaLtP%*1Sil2hIea3%m%B5C&Os^g{Qom9UDjpMy+S9O|gBRSdp6oVBb z*YZbl+azu{w2cX~MGgsF*$a;#^m$hO3ZCe8t+`QMtF6%0?*C=)J>a4`+P3kb!(u_P zYjiEx5d^WW9xT{mi@np9CT(SR5lbSmcd;aPCHAg~8lzb~*t=ryhFGFT1=QH1eAhka z9QJ_tnCJQ4@BQBY_xqn87c=+VGjnF=Ouc939xv?k%xxj~co88L#Toc@)+v*tllXiIVHc?xJcdC-RNEsvSKyZm#RS?Qya^R z7oVLiTad))}%j(MVd?o((9Fkov%<0 z&&MZJH6V|Z$^+Mbp~Y&GaS#?ENc=>PM|~{q6aWo=CC-hY<)_)T^qH|wSex(0c-m88 zNg{$;P4v1MG)d@P6fo7FYTvS8!W?J?93SFx-q2XD_Lqi8W zPMctKN?LMQyY5|kb%RL1NrS)=TPj4#xetsN;P63Tdf}wDnyJMU(k1V3+rE zVp3z>HAym5>x>O;7u7ag^o`*o&Te&(hk&$hL?gJ$8ke4^L^Pn_13G2zE4p!9@kBeG zFhIn}l8$a8T2myoRdqEk{1(D0UKr40uNz90WUWW4W2)3+eBWeDRCE}&V9@3+>oO4b zS{AH!gGxIZc5Kj)#{Zsm)cXeOH}tAcTk3q3eS>CB^H!k>qt;bg!D)suINcJDeS>sY zd?y;mLCHD>iqbfhPw+66j5lDw#TRMlnqN;kp_%6&sx4x|Ik(!fc(FD~ukqEOWEr)Q zN~bIs;Im{|sWsOyf(bq}a5QDSJ*PD)_$8gR(k3O!WVx)W^>?u-V|7#t;Q9;fA5p4cx%Hs*70ZO1U4Q4gFaLsUC!`qVbrCM5@wr1zxB#B^nQ6jeYV}Yg} zEo20=Y~32WU2)=!H0uPQB6sc51;S?9f`Y-Y^vTfcQ160~1}Q(nz80h(0wz+XA(zn3 z*uM=yjkVA2iOC-CrE}+2_)ch-s02W7H3l-Y@{`*I((sNS^`ja_eR}SEHJ`c-?APEI z7;5#<`H0%wy{#v0WzVxXRG+o(){A!s(y|)nHS(rNS@O+HP@LOcQHYVRvf(;8%C@FV z9tNNT=-j<)8-B6@;+>ClG0K}8F~{cml_e1i9sk9TpxrFB7z~x43&7?Fip<%{!>vJ&82Wm-I41IisYNPdXCCm0qB;@70$L z7|@h25jPz)s1BonG4cH+efrvg2`pw< zY-lHj9o8)&B2gv>!x@w_pa9ckj13RQHDAiFplZ!01rP~RK~VJgpu3SeHb`V}A~)U) z-CLhjI+1&+JjTFv5wdcXs?|KI*Qi;mcAdJO^}L!k(=~4)_zxI3XmDWA$WdQ^L+f1l zQK%lI;J<(aV|Xc@oux%cEI~KIDh;2cB2P*B$XBG9Z>$kFzPD=Gps^Oa0K%~ES{g~J z_6lH3PIE>~7WsUVWE`j#e8U$y87>fHq>GJOS9wIkza45135C!*!X4>!f#!Xr1NWsu zV;c01S*M1+KCQ6jR@(VW0|YJRiZr4LLvsab8d|Z|cpq+s#o!FnW-mTwIIo0os^hYO*{m#dw3Y_sHQkTS&vv=+ zh7Nhd^Okp@(g=(Xf^#RK*jI>dpa&L_qoJV$!rVY~YP7~6jaj>(6;f1kD649cwic>I z$W9Cp>r!X0Ffq))XaL*L4ySh}7Lb3BqA@qK3=dW?&? z5(|dO9d&f56zHW`msVT_P$1o)q*P>lK`k$DP<4uVE?xP|*FFS>?8KXR)X;*Db5>d{ zHmCE`LXgMdOpr8j;j=}O&0|&s$qET6=*%O80XQ^8S{5nQ(uOQ(!@{<18VB=LPdun*vKi6>SEt^cnJX>VB!!b6M3(4+HA1M= zkSEo7_J^?;lm&Pq%~jf(e$)ogO*6F^S584IaeT~%fkHcMe456sX`;y}6>=(!=pgb=pyY7@H6mOo99`s#9ntb>Cv+c>4&v)#VksR);x5w8 zHafMWY-EeU#j|?8MFUD!v89o=rC>&_nj&Gv+Nzj?_ZE^~IH;)O>s9}9eT(&ga0nMd z;`3ASl*T9c_|hZ>`$n*CC_1*v_j|~*JaT4TIzf((4QCiwB$!&!j*^zr$b|3n9)XrKAWmPPJ9q4X zbtEJQ3Kl3yh=eq9SU0bcB!jC+YKlf2YKb&Ni<2J@x%sL_3*^bquaJW=A?!j)4Pm|^0O1HY$=3u&m|!yr|e ze8tCMqgp`U4p3Vj(8(7ARA?~o-WeMv=%iKKHlWZ~^|UVUwLuR@P0VmUN#Td?X?TR5 zolkzy$WzZx@>-gZVd+R3mMez>Y3+k9t3sRELDuQYk3Sfxv!|17sOr+yztUC(iiB4S zc^^U#sFvK^k03OM^U}L`^i8b-iY@#}Iz4Cw7Nrg)NxiTL7kJ`hMv~Vt6g!#;FkIt+ zenk3^v>gNUGrS1X7OLrdau$F)FfiKc)){3%x^x3uaAWk+?pyj2kX1{!%1g2UI`u(u zP^NhpD@%1eH;B^8q4euLdGWx9L7PFoN%Rlz!CH?Htp~(jp$0?+zjI-Shdjyb=oZbC>jk>@s@jx z+%1V%7ULT}q`ewis5^wlRPBJ4-P`r*j8!hI5)WckJ?qr#ptY_vGEYfmxAIf@$OJ+~ z{3w+~!m9H4Q#QPte;0_Q)G|aaypjrsN^XTnw7l{w`x5!^j_*q3lPu{AP^m&+gZ;mJ znG`u270+$Zc@&15Vkpmisg+~c&lxKBKeW0^W5qmUQ#l8ZzZ8CtXRt9eDheloI&|vU6>2GQ$+2=vJ*iih-ow|~Saoc7!myA=s+gXV z5I*;#V73bN9jHb=F<6G?*Q4VeV+ikXnR<9Q-KNf!chHnlgDbESxptgxo%s~gBg(^r zIcuHyihzssO=xF^)YZy5UFez|$|=0mGlXV?o=FS~r%@Pd$9a;zL{fj&`AgDgFQ2@_ z)U|D3o334Ou(s95g-B;z=*5Wz|4z&m^C~Y*12_BAiMnm_$(MP92H)u%hu%U)u zu#VGDbhn#lTNDQx-I}li3JZW-j4mLpU-b&W%{M)uiw!xAeR!RF_TmP#Y=Gj*HzZAO z=x(T4!RZo7lP7~70_@D^XIN0%twU|OMIgC4|0FnWu1L|WO+A)W4Z*yi!V?`3g7`t+ z6pc@7fZi-9E^}dAr!G#^%D1RUX9M_gJqW+Bn+i+S37GI=IDpTsh2l%R6#JfAc52@h z-JtYwP>-;$gM_pOV|Qb4Ytr_m6l;Ug6bn_f^yV-ddTA3`M!Z<}eO~i^Z->^p|im$U#t6krEZvpl(bffEXd-i0# zd-R8R9vTu^P4rbbit334I^;Ljl=#foDkr0jJh^-IXc$AAn(KM-K{gJ@M95!@XMokC zTw-}9A{DfDgEdJ=HLz6OnKrzK(LDyCVYypl&{J?Z6&fDepT-wLA@ZfwBEGyOzlJ7< znn+7hdZX>WSxR8>Q7}PY4OF~2lx^TWJti0hm&To%eh` zi2|!={-pdR`7yuo2&=!=nHk@T2>l_!Az?9;P`XPmphueytT5jkgE-`{B+j?a2Q|5p zyWA4#9L6R*_@(ph3w_60rjyO)}OQz#L*}%4+AMuOLR~IO;^Wht2CCD>>yjKQY9}50VDX6d|wE4R`S?|mj-mfP`1g3T1~ZF)}i4uIxc&qn=opk zPQk3DQEp57n8ULLMN-<#!?Oy)e;g2_ETlDiy0;v~gAcx?c{~XPcvHli32YFiGjqH_ z{nPRwJZ2++EA#xRXW zY@YEL+QcNePyx$5!`8Mf)6h;mN&XIT1||wr`q9>51`iR5FVlA7_XY4w?t(!H*9d_g zL2hRhacb-Cw5*u-$&sGXiYaluTgzsE@F6GXJeW$T@-~dAad^D(WtVaR$H#=d7~Ot% z?6-9L_82G5;{QrcE;YIItu=@&x@so(Ga-k_Y+vNHc|K@-z3fHGgcFovnktlcS5XtEO}rr?#wleMZSwzoiVbaZuBF?Xp*A#&Sd}=Pur_vwk>?v#_0ZIhFe z4$!0c&Gn;Ll9iMp-}sX)@BsMd-wF)?9!e~wg}xuz6oiM(}nob71Y~{oliPbFJ@QuCf=DCdIG6%HI&!UoLfEf6w{9hm)#zUsc%)N|WOE z9{hPC?a4qt*(5u`Lq(JQYry`y&tsX&-yW6yH`x6Ue%be^-N>uMvPpKrL!#v;|6Ryh zc`e?*WvkXWchL@_o2eOmD`{+<%M{U; zw{vkXT+y+Vt9@Cj*joH^bMr4>J`O&c^sTS2K*wa#*)RYuoegB>C^-W1Asw(0q<@%anm2p}F928;$K0yBYmz%pPBum#u&h=Bij2iE+Y z1A7X*1x^8Wa4Q6q1S$fT;8p|XZ!jMK-mqT->H$-Mxj+Q41XvAh0e%4tz&>C&Fa|gd zjJ@K(j$LzL=YZ?LD&Q{g1b7ML0Gk2l>qsNaG@uyl!>>B9;t2a3_!~F_IKZt4P#Vwz zwE!RBI(YYiX0R7W_(+($fdjxY;3RMnxCPt?vVk|iTHr^(7Ge0ppX&Rnt+H-@wG+2f z`wC&gNABc6?IlLA1@fq!mqxcAvmbz&5Uhtl@Z;wpcp*@e2muhzaOZvg1dpE=j|%@;F*mD|Ax2V=@Vk}29T+D;KkA!M*-Zw!HdA2r-GjM z6pnuT$3KDP5YJ>NC>Zbbk(LBQ=*MhZ3<%=F3t+&j9e7Hf|X)FSP}4`lNi(BkBSQ`3LgLM&}^CiaRZOnTWNJG z54#u-haEYgMqEao_g56R^7MHEfp7A3x>5Lsj{h0hjU;FVMtw zqvZ8c0X+Qn#Hg@gfg^@PB&zxxUx1ew78wQ241vmaS0!{s@T5BSaVuIWmzRhgAbE-e z)8_K9a|L1^^-~!1UWCD% zd!{k>Ww3aICzk~}9|EzV^{G$caQxotVzv2z7jC5G1QU*%K@E+S#eBho)DnC6KJGjk zfJeKV=l}p-h!k53ji1B|Bw1SiroN%fLutv+VvXp1k{mxU(ww(6H3lycTEEN?)Q{lX zkE#CBiV0&)z{47mUX}D*Yg6#d!}7+ZFq?rVDKGk{8ZjMs&|Q?jxbvXRiH9{G$oW5d zT7WksG;kR0=gQwd3K9=Pap)8xRkNzcU*btSvrNM&+jF@s!87WkvF#rlZu16Xt%xU| z@u717fm|P#^yb#!84}_mP+*{KH*ad%fM>?Wi4amlhblQp zaq`1<&_kwv4uU6_`B>?!gOz&-Je*!hfI=ia$yL=);Tq@z=(@QAo+9AI#TO6=ev5)f zYZ7#{infufpAQfYJ%r?}BgAIMfDd`aXEe9vkGE|4%Vsy(43bS{gqI@ITV*p%HZx>X zOOqKqL9&@9o84?Bcdeadc0*aE#~@4dyh$L0$4w)d-m=up%}t`+ic4mCd6}*vnJJ#K z*+_Qxm(BLFNdjyPUu7Ia}{-=WceDTp! z@l#KwJWn3!<-bq#9Q7f`7@3pP<9JSv>)Q`G7bZHgc~k!1K#vLk{C8yGcbA^@ul={k z#~-Gmr^xS8zmx0%qZsR+g+>M_C7XZ3{0nf%c4S(Zk257+4bb(0+Hku9x065@(2AXC zHOQTCTQ(aY++g^R1jrw`6B0mEJPJ*`QJ`PK)F2Fjc;rV7N*lRPh5KWeEkKh=Xb<~r z*`4T9%%xCorJbHZwv6Dte^0KEV&I=zth<^(#U!gs|g!iQNS;V=4s7Oq5ooSrigAG=Yy zEpY!Q_*cL2SJnHfMmaH}732?hL!A!z&CkzIA6LcQ>=XX!UH!o`0p9`2yUF|m?^_Kw zTREPhFzW-`;ietp#F_#vWL{6$+rwT>{+=hpotX0eUT_~9=ESA|ZALh;C9+9&!UoV^ zBfPteb1;oq3?D~v#ad0WSA@GK+&>5M`zcV^)dj@yDgXbD`|om^|5cd()9+6o?!@i_ zgORs?0KR}dP!aWQCEUM;nJ~(U-Gkdp*qvZE!#)u_HL4cirsn@w+CTOFzB8OyB#;D5 z0_Fp2fuq0`-~sR&C^OTEH3s?uNx*#I7vLyx1$YgVNr4}rFOUSx2Yvyr0Iz{Ev%m-X z0!hGpKzX))@5Iu9Y`|@v6Y~bT0R|ui*b1ZrY(DA+;13vpR3IJ52HY0F9WVf?Ksvw{ zA}$~ZNCDD-Y(TpR@dL@gRv-v4$aISAmIgB&$OhPA#1D7_-2elS0&E4+foy;+LA-!J z5CkLxsX!W#0kEau1O7k|kPM^(X+Q?RmI3mUBJ;M&{B+q*w(QRhezkx%;16^If&c@M z45R=9*Eq2lU=%P7SPX0gEWk}*Fc63VrU8qAjlfCZF;Hk7 z`~sbT7+@N(5jY7v1`4eQHX%-+E}#QC0Rw>;U=%P7SPX0gEWkI}NCr}YG#~?DyTJ$ifgm6m*a~C-Zok4EFaW7QI*<&c$n;j2X#lxr0NDVuARM3t zya9ip8xRB-fMg&ANCnb>bRYv@dk_Zj2ZDfPAQeahG61$0e83+F0+c6P=DEpyZ`n^b z*`EPsGLQnK0$YJJARWj6vH^PLokaU_#)vkrqvi1Kke%imJeh2+t5N~^0`1EQ&V`jfXhB7=jEnW9i8*)@WeGO-wT3m9~^dK%JAj$<`5? zBoWS0y2!=KG3VnrLlc)Ltq8CZhzJBLNhTsLX|}P4skg%=9jp`_xoKvOrmz^2{FX*~ zjI=gf)?{N(icIWz@;yv8w3%I6#*>}QDkr-HZ0oOKwsFR?55HtaLnkHVRlnMZib#iH zk?~PRR>x%Hgu_nc;)unQVC-3_Z$biOD^A&CV=leg6ALRoro1FlDk)82eh8yj&B!gJ zxrqrMiAUq9H?o#_DTJiG?^rHxjgX2}aSdf{6jxZy%-%$~765icJlzk=+JdcE@w$W| zVXU*s#u0gzFvRGHvyxaFWnGbbqz{dCGuhbTnpK%Vbl5u|&HCV%;|r4A85fyAF;~2i z^)=bKD1@JVbV7(Z}7o}16vK?P`xD%}6%XWLJbNbO0Zkcc6{N4hqQ}__~k1kv=eV47r%ip#~fp zfq!UFu#bZlVm8cVi;^6y$FUZpJ?SO3BiE6rF5E<^fI>E^li#9LC{|QeEJ%17v4B1i zKOxM31X^A2E4YgWSqUXmM#|2~DBNn&%v=>x9}&x@pdraatN2D^9Gj}*bK1-tu%L{* zo{8^EHibl`C(_;+7i(ZYP!;DEGjkye^dq87EJsNpiU_qcDz)P592y&CK-G+6D@;s9 zpvrO%mL+ilb|rq5nnbFoHVCFx^B4eUp_$u=`{#??P)-ogy*Cwzb|VSRh{ z00B#qiCe5}a{+9-kO%|YhHu18#0C)!6s%x7hKST!3Dn-Ggiy90KDmhkYNXcx2ygnx zf-f0t@^Q!=VwHUJe&eL%Te3^ON1(+!E&1kFylp78RcG-w z$%4EX;oHQ|o1Mc~gMtsELgK3tX%}TkVizg3WXj*zm)$_l(MN?1DKG>Nqt@1@A5xHO zrp}i70YHQ%2pm4Wd%Dtf~h+B*kI*aO%V@DH4;dz zpp6k-MQeppyQ9Cbx|`{|Hcy3#s-Tskwo)H#uo;j1kt}dQ&ttIp9xjpvIcrQzKxMPp zfSgsV__fsb8f|{Xua#}|ZQ~3E8w-6~ZZWe$u~EW{%-JB*h|nE1W)c3TD?AyMJswv2j& z_*i4G$pMSxQE|35@QS|Q)`m(nu9tD(3*NT2=p;j9^)zULKU-TW#-xxxEWy?eJtZ_W z$K#NJJ+zfY+dAOu(!H?JwvMoIEpfKa81`^mf@J6&Xsn{QEsU;!Y*f6$5*%>zt|8vG z2#q?zhS3HXCmgMZ#-aq<;z$4rxd!_nWOd)R?x=$paG7X;Myl%MT~YCYCEE!Cevv5JED+nlt&4nM!VaTN8AEmH1aUo-GMLJ1~<~V zVYF`yH`#_lfLBFUK(*l2agC2w%?1mWEF~+Bz7Y=Cj@{ss7N-ygfXK;9dUz3Lh zpXMaeH9bbhSfmmcV0qHUPqQ&E3+Ys`jKQ8z9py=VlOsllt}=`EjJW3Ene*@*QLdoj z)DeAIt`+&j4-3-OW{%U*^{6N`Y%xCJj;qiF#Q0#$#|bo9L^w*RbSi~o7idm0^vYl{<{@w4)~pl(GZL>Zm? z;1^34#2K1sG)TYDC76DLibQ#bK2@{P?z>z|lA!5XL!$#p?LDY-aAp)2qy)D-;@Yzk$T zsMz7Cq=o)Oj>t9|PMA%FQCcJu?|_WL6dGE@8);Fj^t*zC4Mose$`*t(CdL&Rf_jIB z8zqeNb4pIAZ&oJi3#w#$n(HAS0Ye5JU zT^toJRuUl;D>c`Co>5S4lrX#)N}rlS>Y{>^ilI@HO!`iyxZ*wNJCP~XHtc5O?SMP_ zLaKdM8vYZ)!`!DRCXx~x8yf1qJJ$k^G0Nb65HWHS=g@H6*@rE8 zB`|UNW5kdez4DkF=669;$Nd-*qykqSGsXNail0QNq@;eSJm!s(AFGSvCmJ(A?q{Il z$LfN7+QQ)Akr7DIPc}TQ?GB;dbbp~2M6=mfa^;I!sR(M2F;f{?p`gk0m!Y$cQ3FAWa zwVR;CjzD{aaRe8@)M)jQgP9ePeUNkqopp`YrjMP_W<%RF?lh`_9L%-iEs@cNy3wfm z+(hFLVo1>Y%}3)PS&+66gFYnI55q{shAa;;48c`s7`Y{e`e7KEmqwUGj5qXtixEb) z@t8yPewTR6WI>7&;|)+o=XV(?QmpWY!&!#jv1qi>^Kv_Gcd#E87uT>4dKKA%>{KQe z4Qw;bwyp~08I@=ktq)amO&@WK=K7ZA*LGC7?cp*g2uja00`iLXxZWGwoa;%aAyd1GMo_7@YTruye)mMCO5XfF{payD66|VXWW{ZI#Q_5=$-yZU3iBa~utQI2wNu9*9ZfBjJqjj-4mc+lYO>!=gO*rR zXn2JE1w=k9$`GS>z<}Q#M=xR=D#M8^!yKy6U_rY0#o-ObD@p&I&ciD-1tw8OI^$Az zjOrm<3C}~I5#yKK;7e)Hy*hA0Qwt%X2U4%8O@pNUC~91&k95N@ z+AbV}uv3UVa(GNI+0VdEW6D^AZ?V^S6J1jm=iZAZNeKyh*Dy3eo}n~>(Yr(NCecQT z#-PRC5SpMbQ3(m>mytx2z&JM7itj*c6Bv${ctmeh>_|_70qWRFZbMav%s;FYvfMrn z%W$PI?6Z%>@sm=NQ^*u!RBS2ADd;DQ3oeDKb~P>7fpVaKdYatp%ef*` zMqvK!iJ^NX)FDR`ihk1YO0y_GW8-idD5MfvHmlvt+(KhQJ?S!gJ;V&q@)K9JBElun zK?!};Dfr3MWQh*G!#yo>~IrZwc|)Kz0%_tf}z8}khO*zUJ)%fw&;$m zcKS@b4UW<$)j%Z!1sh$XQX>>U(->>`KIxE3m0r0A!Ee~$m@ zkpC?lWH+Py*8_Bh-K_>=sS}`e0s2I^-j&~9Kq0`wX4O|Yvl2_3*;l(HkiDPmMs|f) zbG>BGgqvl9GiwiX*;1>$B;1Hc?iIF4adlhf%>MkrnRNt@;_tT6nRN%R(RS8k*&^|`taN5ib~>{f6c6Gx!=2*3vDKNqS}sBP4P=h`(fSUx`~Ors z<>mj>wEh3-`v2~?DZJO275WKv?uaw{HO-m50Ydhnt^zmqIJ1O<&g^S|>^~lIW^PBF zSzjO(P(Rl8wO~ys&8;5j^3<^K2wa~U9TOWDZx{-_a_0Oe*b9z@^r;jad|1-(5!P4W zOr)%vTfSlfTH~OZSM?~`pg+Zz-AU^=g#A$G4wa1w5x8;z_gQ=t8RC`w2T50P)*x-R z!LcDx5$1SFk3fFDq7M?oP2AO+be3$yjx#rJZbO4 zw`=!E;j%{`d^CT-f(6G!iFRYFU%TOS+_yX(jCE_0GnUP+)?vSpQu0LERGYUguoncX z$dzNUX|g}9zjp(lhV}h?f)LHO|RagbSHNX@o$+^G|i82E6 z*jM{X#q8@X$JfvQTxH+UqpsSfDf)+`_?dyRH1zks$@yME@h88xv68OQUw`bBXwT#Q|4+VX7cHqmIXm)ob~kUn+J`o)O*+U)GJvqg>tuuKXTbr%Ls{zjTY; zeqC_u_|P>I&r$l21vCBQ;}~`=Ax+v&hfW3T6viGs7V8~&SJ>2jadOvhX75FXq5BEA zcbtxu^PlOY_x+}nBmbeLs(v^;)FSS~#l#E8j%*U$*M-%{hpc>be*S+Y{i*j`CSRHN z)49bu-!*G5R(;u_N%J*-wRvB3mCurS)6O{W9^lbBextsoV`MQJOGDWf`&$0xxkhqE zqu~cywk{p#uw%zBbK1UmBRsV0+PJgN7v68$4;#~8CmKiJ?21Kn`T1w>JIaUnN*J^& z()VFX{p#n>dH7!3oOD1khrH${eSdOKFCNOxahKn#sS9rCu4|r$J(CcC<@G?7j`HS@T&zcl-X{+JD-Pq%XFV zY|}04_NBY!zHBr5VrR!Q*~x9L%ywb>Qu1QKyu5UN{(mL?srOU9P^F^pNv#=WG#%wG z0u%$>fs#NOfOJUGWUUfV8K??W2WkSf0Xo|41&|iC2EdRFE^G|25SRoIy$qNMTm$X^ zIY5<-F3c4mn%qmnzI?L_TLZiR+_t#j{DDN1y8~$3ou9^T@ctDj>^W8VMz9lm@oYaJ#Wz1+ywCsPyOekeGHvq3k)JLo3_I+?3IpW;g($bS!({TIBeLB6!+rwjTmRq@{Dz%JGM&%^#m zMHdvVS3Z6$XnLPrx|Cn#VG{l0F&E}^!iD*t{4_j~-=BjL-cyci&S&CO{QtjXzQJ#9 zaodG;1D<^X?cm-Ic=4wTTdzXnM=mTs=KkTr=H7Q<@8K^$Pod9%U+Ee8pr$6oifC9#8Dv+}U&!v~Wz$qt!#d(7iUlx}ifdToViMND zu65V2T0kpc0MM+2m9O|K$Xo}1M}gPC4Jd2zELm{4*Wd->eIrY2*gW`I36Pyor<8`7 zfMdX#G8*PqR>LO2>}kL;;5P6MxL(uBSNs)ZcEDZX zk-&Ul6yiGtvmk%-!OH<2)y0Uaj)oNm$WE9G`%S(*3}n=F`o=qm#cKGj`ng2@@wxo-%dX^cgc#X3d^6_q*@s z&0nx^(c&dbm!LMO`ErD{qd)5+jsoD^Os$_f3@t{E2iz+f8gMu z!$*!DJAUHisnciD&z?Jf;o_ysSFT>We&gn?-!gu`edq4IKkh$x_~)a?PcpNzpFVs3 z*Nd00UcY(!?(g>>a&~{OfoxpD6_uUb?yBg$-)Y!mnf@E*^Epx&=Xt2lb3YH|9R-7Ng9eP~D zR-DkV&9D=#Ab)&@!`Aegk6G>H&jxXj87P}%r+D+nk)KxHKN#=-N%d}WACC8t+ameB zYh?3PI(T^hZG_n`yE)-qCtz3JSqpil*e}C<{%I=`^4Wa{B)O(;|ckW5}=?~Oj;Jb$s4#Io^oCMwjKRLLv^T2iB4)6$g z4!i^G99@|!;0}}rsseQYU!WP#8u$|E0So{_foQ-8j0DC4Q-Sq}YYxmszzSdkunqVX zH~^dg&I8whI{^8A1oJuY4zP1VIskW|JkYcNRF&Q8!1M)hJumAFAzV*$80!N$ThB-{ z-FVM>K#ogKN62#9hJ~=s!3nITApz!a))8Sknqyc?a|G*w6J=eod``D9wt_U@I-Leal6`!NPnyE$+CLV6D^+{-Y|T8qz3KfV3sGbube{#$imA4% z-M+}@Pt8;8iuo+km9+~0pMj*$q~ooeR<%F1{XhL3j!~|xCeRKD1VWIGXqcm54uiQA zP{;j5rpaGxIZY*oxI)*DD|3WfJD3zUPNvtxOas($P`Z`0XM-1ocuGg3-T>VJ@=I}$ zJJ~P7?QdXwj4Mtnxw5(dxhwDY1Kko>2K)jXig#sa0jlYtN?^ofSJrL8e;?N2 zeXA$AvXawW*+3u?hy(0rxiY^g_$`1sJtM#)dLPV_GVd+yj?-OPXJGJD@DY~GexMV8 zouJimsO`%8-@%{P3|CeHApV2dQo6`K1#U`O{(^luy#wyb`L zDf3I@eP199AV1S(Gr#{^pKyO9yAQ|rpfD3)&H++^=Ri967l7)pllgxdWB$YU%q$?> zVz@0^j=HzPm92ug8>j}<0IdVQ0_eFN=2c~Moe?^xfhByaul`oI=S231Nlpfto~2`r z-+pLS?+?K{;>esn&+F0pAf5~{h_7?q6CEX5=+dhn*7+U^BUaV|=brd5p#7o&9iE8? zgz8i4DC-%iF9q(M{vF-*Y)sutVsh_BHLGoZtK;s;D!y}HanIR{qV`qB73WnI_HcfX zir+V&^svN>Vr;jcFRl!!D)IeQ{MVinHxg)Zh!^$#I?9dtGstes{(TYx>ttnBZ-HL2T+e=E?I`H>C8Zsrc=q zdUaZTUJRQ1)r7-8YNhb0Dt_|(g*V%s7iT9Qy3o0whr~}-@wLD2zWv~wc%{zH1rQeYL z6+gvzyV{C$v54JY-(*G?lK81Ae){&g9{%a#XwScv{?ag8`hK6|C#%By4~{Lf>x?*2 zw_roUAW(zlxt-JI<-bY0)i5=-Jh)w3I%ril5ds zy7ItNV)@A9zs}lSSqjfo{M3a=@iU%T^LOhHckWd`B+eY* zlrr^}Rtle{;wPVosnhwOs7vw--dCt}b6!6_$4^y-PpPQ=d*}hNY0ny+CnP zpIzy7_wV+L&IgB<_MTo%dVi3LALMnh_Rf9c_bZB(S(#k#pYi=w;ZxE_eRDZY{A<92 zN#93lr1XD|uT_Q5xL$wOV^MtOyJBEZvs`|diqGnxe(V)>EW38y2DPR5KgZ8_YR&(& z0W*6Jwup{<1N-(V^o8{M(p3D6j!k1{?-q})AMn7hiQGPZj-RRupIZM?z=2=H$lhL^ zYmJiI@6Yj*RpEo~O*xnSvv|$ud#uqsx%~=K@wJYEQ~4cYpTUQN2iVH(-{<)Ls_+@* zzrWmaoA{gio0HcD*OkA|XZTtbKY2xF!>}JkmlZP;2ahTt=f9d?EX`Z9MVvLG;n=19 zJpUO#L)mwL(w4w_ePAVAcg-NKTQ=r&F5ub(;6}Jhi47i{#|#ERDV9h zPgV0j?3%cAg}DAh^%pyBU&!s-XZXn~K1(XHXv{M4uFE&0swdZy-v2p%kScugMW^z+ z=7~*Kzn#-_dQB<3zlzWP-nuqzrnq?Z`InMU6heMD|wlU4lWIemL;Q-pJ`ZaWURp^UFo ze0Hp+M~C@BgF^j%cBjhy15@$+?@u1oGF9kt`RTy4Vm8gC@1Lo9f4vKv!&eG5-|sOS zOUdOUS;bFVR$~3!wZhlc`=@_5T+SbVHUH)*<=>)b?z%c|Qt^mKN?k$VcfPRs4*zYhLWxCS2}vebwNja{UZa@l)q@ z?*DLyQ1OdFI>#tE{r)O`+Mk;9Y^UJ!WXZbe6(39Gm#O&v{RR#8-6dRWx2NgAVpZk* zd8|s`rs+qA{3_gwd{rko#a&8&s*3M#vFSU>BAnmY|M1zi%J@*l*J{Q#IkH#C2>4@5 zWSXZG-e1MfxZY&e15tRd`JwBj21@&`=GPcAqx3%EnUm+~q^!zP`Z69_)0bWKn>y?F z2@MuBZZl(zoIj~5e)5Du!DsgiKWzW@M9dO9DSWbupHgz`-(d%Y$q8RpUF&sN${&9f zf2;4<=Cck8Nk6~uIee_#{%h6zAMW0(aY#7wb=18FzVh$S_|uv`w`qI3^f@df)zj6T zdPW&PsrUx-)Z*EPh2JYLzBj#?^8Ho(Zf(X-pL|4cXg$l|7Ou=cRD9Ot(U!eOg|l@Z zuJ760NzPw2|J9BD{f`OpIjMbXK68?OKU48Drs$r`IW9z1?%l0*g517jJhY}ieL$Zp z^-l=vf8W?;x}Q8gPE+wSnl+x7enR-Uc+Y+Zzm&gks*3NHefVAcN#R_b?++zBek!$3 zK`MUAg{{qhJSF&TE%~Z;j$D8JReZPmIYoM$7QFvz8C0YAe(C#YReW~y?xq)~g<>;) z4J%psxD-EA@waY^sj%RT;Qd>npQ_>q z1xI)uOcx&hsVgiw18&3?3J}Z1%YSpV#3zhMw ziXYiObb)wQ*tw_OS5H>UjkAKos{Gju{KP_=y_(fOw{D|A~_f1vt-S#F%M4uOq4tu)wR9rE+eyI4~zQelj zKQ9d2n!p8Rs5qv_fH>sK`>v6a5-JWYY%UK zwJN@M>7^ORE(j~HXv$C4)|2>5#ZPVQw7JSfq2Cexw}!p)yg%a)>+erL+T+#8i$a$F zpv)(m=jx3OB-5I@fm9?D;UJPFTB=5&lw#Mf-J0u8=4;ZMM|1@KvEb zd*0J=p5FvrPZBH~5@yvYeWq8hRYK|Xl@Zqc&PQ8iHId{I)eery*(077cKlW7vUBuC z;bgbA=QjK_Rv6c`%c6|Sy{zfvFU%I=#7X74He00g^L@9j`O7R}(2XmL-Ghc&f|G}} zSoklDro@%-E@@B2* z^eiFx=pVsdUIponE;5%1IFcnSIPW{)?ur!M*yo3jx7eE{#Eu+0X!XK*x}uZc#Pr>f zCH$TBes;MXGjy-oCDfU{5${{L!T^FEJPWC^ZuDU%!64Y8Cz|6xn`qAa1v z9krRuRps?%S!HMIaxm@ZO@b}q10a&cU3($%aY-_Zu7!1S;CfH z10UWwpRD_8#;T+9M`Q`@=dAj(Wcg&v$gjTE{gRL+H21mHE4$K6%b(MyHGVTBOAvdw z3)3b~)tOJkKN=94B~*V@EOGJG?=2Sw+K9{`FRuPwrCaALVfum9ZCb`p(OsGrGO1bHEa7YWyIUPbB^xK$`OEi~ zZ$n@F{#&&yq5cM!*xz4`(fxj_(u*Y(k^f?RxkZ(mTT-rGOCMb(OW3X{lrW~zRGq8c z-PPlZX9+V;oSrR;*f zx4|Y$==l2lpe8qG>T*iye{%jiQ?MT}qgnEb36`hJW(OX6nJGke`|{+Ij1}1pF0kBN>wduV zPNopssrH)o%f{=fG$`I_^{q@{N>t4eLB;1-DkN{T54e^o447QH{meCeEw$^ts;s$` zDU@H>A!1S8QI>gYyIp;8Hd83JaevU0(AGN7$-zO+r!$2ty<;<%@b7hf*cVS)9?ukp z+x>9u_mgqDbltuk%MWJ?-o=XwGjitWZk@lJUHd?$uyxCbUr(nb>T1+(c=4K;DGbZ# z`Do7$Dl__*sG3Um~TN5pir3Eh zBX#eO%)3y0Q>Nh3v%>A)LsN9MdbYpmv>{XY^KjX2E`J<7LO{u#x!1@Dd@|7lf2%okIuNR(}i9?WC}H_3>LGt&9R(n zHadK1YNjw|SA&V0iVv}f*IdoTL1(Uu{Us|R)Z$exO!w2WOyR3Z89kfdNVbfd`_-GT zL7!>S{~LX!B#SBV@dGpHtzS<~>zFygV)}Mf`-PyV{L!nTPuU5UV-c--KLUOJg3I6& zi&J#Mpj%y|5dRmeI`6vSGtx5A=8>@k(i5E)(ewS|xjLVH-ZoD__lmi+;rB;jx{xks z8a_w*Tb zE3Qw%m2Ma2TAs{qv*_wtjC-dP84$54MYkY)%GD$5GllJcX7BUbIbC->wRWp}8#9HR z`-c_>{TybQ)@Da3AAGMifzSJmeK}Isa9GI&oAEuzHm|s*lFJ;+;hb5n1Mt0TRg9VX z%eq09dxuVKZL~8}=(j6n)SId?mZIH{o@lc>Q&|7zuPUuu&$e{ya%Hd*QR8&t`{BK!QNOk?nKAFwZ(}SYo}U+^QU50To|rwX+%(;$^Zger zdypx-y?VCe%#kUU@SmsGa>~pUc5lAX`|5#SmUkt){<8derr`f_b@L)CQ!GvU-J729 z2Khf{Q{%rbMOxYoe)lXf2jz82-{{+!vn(AQfAHSwkR_bD8K}9OW73`5_hm{&v^N{) z&wl%E&n$~e#mfWsqdnSIXp8seIHPWH_whFul|_5_e%U~uJ2P}6(sKegXyLz~%h{P3 z<8)u1?Nje*jVvLeT$jdMPKD}r+;^NC>y;%$mYp3_H#$NWm6CNs+bByox8vm4GEf9=v)V=VK>9xHVx2=AZ0?_#(9Gj!v9uG{?)l_h)`ZL_go({Z|>?KaOV zoN%vBidcR&u zmM}D7$ybjLjn$3qbmZMv3$ujmS?6aKe>Kx`EoJ5MEi2Lfo2uTPzj?alX~YcA_FJ+9 zXYKlymIE_%HTnlV=kdhB2h9ra&y2q;rtWy_9P|w94;f#% z-*LYzem%{-((1FIlWH~|@XICf?Dj*h9eyM_Ii=U2OXBWAUcT*Sfo5eA(`_$_Ra;dl zvur5nl#~g_*IpE_R$R59Yj@Dy?0UEEdQm)BZRYykzM%c14>WptK`e1&N%Xc7#9#Y< z&5{dZr-6sN>t8~?zjkty*#Q^Cu61Yah`0j!m#t0ydU9U8l``OjWjAQU%r>XLKQAVg zyZS763Fy>4r7QZM7bo^^Tf8@|UnIB9y8ZB+cs~06>3N}`GrSv@pL+{`gmmYh#>1r+jB`lXg;^`JvCCnVFDByG`z0OM6m$*vU2Z z>P4czonHFe6JnixZfQY#K&PKSdF=La@t14nI@MNzPAOi`Kj64%o4)K+mFb|fzla>R z_Lx{<#JEEP%%Hv7N5vL8Cf;tisl(|(pwj|YYlj{c{V#N$KfEpROKhKc>4;eEM9%4f zUZ4#jx?glh#14gjFb^vOI;hd2g)0t=DNR~5I%)$tb!X4|u7|~zufO}X%Ol8dy{jdD zZ9F8NU02ptbCKx%Ge_PyDAsGSq$(Eck^dQRLgip{=Qv@H^J>hRaQp6?U)yqGz5Ne`mydK?Yf zCpL3Fwti;|(ArmhMxRa-fA(Kj$EG&%KXkaEOA~!sp8S4zNzln(TK4o2#YKOg`$B62 z+TZ_s=SF))*Y=$|{Ph^}P5(D7=9k_hMupAn{^APg)GJ*g-ux<#`le5@s)s-ad1;5= z*eyP+e!?{BN6^VN?;l9pCH`ElZXuhcpwkkzwO##-xX1AG$gNXAvyIzqrtcJgwq$us z8Af#DfTt$Ned~Afo35wu6Jv`E-XY!$tdX+oE6^D~+#1+^yV&WR&&nbK=+q&duljBi zuf1_gm|7Qf(4p7EwLgjVcRa4?T@JK1WPaNsKZ;u#jJx*E2{b!5BAJ&QG=HDK*CXHxY-@cR9 zh-Vuf9_zIQbn>N$!9!PxP25xGUtdCWScfSCSBSse@4jWjG|>Jf^>;e_Aik^F#cSC} z;y)UbmatSTJJWC4jv+*M@BXycLb2|f$Ez~?5&i9%kmlcuDRs}D>d*l+TR-hx&Dr9* zP1%PJHzxXxc4Yl&;yRz9 zAhF!r>aQwgkbE#@-1Dq>!SrYF{t7=3-Q2I`jfq0N1>bIU!#so~??1TW^c>;TrcB*S z58_WQv2WQT;lBGUyQ2?DzE|w@m90Mr8-6^Il)M>qnoatEDXWAu3ye~4e=HMHw>qg%v1gS;%LLYLMX zb_uq_*DR0SOLXC1k0kvn#5y;Mtv(gB_P&pM>pg;f-$8rk_9gzUq4hPQFm2hdzB{Ue z_McU!WJH=E+<%-o_66iyTW60M-)^6<@B8cK_Xk0HA3qgWeZNq%qxTn;zjOheeYR$kIfsOAvYw59 za2@ie>@w9(4LK|q z5045pzTA*fyDn(|*R~CRJtmxeHpe~H1~jW%;mOqFLV4ZwYRfJ|{*!Jq@T&nQgp?nT zICyLZon|>1QR}4Ob$Z^jdgDO{wZG{1@}yw?a%JZ3fy8gyV9&l&LgV)LmmF>Y`hSu4 z-T_fuT?6-7n%KeK1r-arir80lMZ}7tU@zdZ?7|9L*j<_p?7ha`dp8RSo< zv(ep7s;ex%ruDmy>me%&0i}(3ZA)ms58pfYTS4fcuJk{eYgU=ZmENMG@X>_GB9ZBrnasS za7!KB3tHaWIW8#e)Rer?{+4>n(lf)CXN(V8Yi@^su;-RK%&%j@y$_n8Z}VTpKYDUY z{V`v+uu22_XJzfz;vdtwrB+w3=H=JtU~{EBE`3$G6mx z%IhWEG6!a5P9L5Ryl$%_(sL&19sPm|+>QI-sBv3eVZ`=|*I{f>AMZg|9pSgtClyak zlUz($6X(R`2g_}>eNM-tNgv{}>ijhDonyjn^$@q0^LFnT6m)Bk&nL&a+iG3xkt#(8 zTC(70^+U(8+v-wd`gvM2GqX}kRJ`kWd|UnP+quTdyT%3GSvi>kQFl4qXpsp1xWP#-oC^^=n=b0`96)TxPUsmzfb{&hhA$BmAzq zdW_@zlYtYmP80~b;xOM;|4_f;v{i#GS$Ri?zHm&qtA4y9c2ddA5m}9^&$#SZcUN8S zo9?5pH5rkmf8Pp^U%Gy0@Amvf9n@jYQy+M8SDmZJ$V#i!qq98LhkAq8J$2^`U1zq$ z=Z1H$@Q*bG+*21bRvo>1$Jn6s($l@5{XKO+dfMefpGF3?tp2hzSnjDWu0Gc&C3r$s zM6GV6VB$S>fs{Q%U3QMoYSTE}AJ*SfN2?t{ZXXRVSK0bMd2|oza%j~jM~(aH(n00zWfbXImwuRf z-VuIZJ>P$Lyq6`^6$HY>De@JYw9`)c2N4IgcBBxYUBseR*kd|%x&clGJ6!Gp3QQ#SwR$p1iH zyw8>?vAf3v-RSb}siVdN^}_=J;~syC&8qPG&P$H)2kPV&53=IbL$h9Q>-f-NexQDE zE%M3YfkT5%Pne14|AG4H%D`e zb_^UJl(O&RJ;&n*>Q5u*uWhhnd{EUlvxR3Z7U`XNDeCfI)7dWc&NT`&|;Xl zdsNWA{OR``;Sbe$K6Tw+FJITJn?%DI>lnMRq zSwmbB&NCh zJNJI$(mrb+K8eE2ZUa@58eWj=ot20&rc?+xBeD zpwU57Y7c(tz~{!0gJ(|#t49YVgsuGGFh5o&r_Ct!!X+jvc;DOK924+4@pkHq69ZC% z2Hv=a=O5SU7Wbc3Tw%_d_j_t7z~{8@*8I}u(V(QDntQLkc07Kp?mohzsON6VGWFKI zaO8iYzL2X_tF;41XLap6{JEpX6ZN$XANCqDre_t+`{AP_{E529l*6?@?VKJoxb0C_ zusl&8?)>|%Auu@T&f#Zx{XJ2aNUpczs>7J2yO2i#>z}CaSG@IYhI&#~{a=?T;P?~u z>-jCy-wntN`uOp}JICWE>RkzEEbeZpS<^n^Ux4>|s*cHR9C|8qd{D0!H{UsGJXJrg z`!V+2&bdM7XPw6W_o@2Z_601dFe_+QCtvLUo~j>RxpDpN$8kXwJ68JOnDA6>vo^dG z0F#2c1vM%F>z}GeDqJ(uGiC;DnOEhFk{c_j@d#yEEgP zpe4h{c|>T*3kPD;p}ALJS`4Ez6Q>RLPJ-`|7lc0*rfIUM27)Yj_N2i{hs1fBP- z^3q{`rq<-iNcr(YMo^IIn?f-0nYwDQOVA+~YgR#Rr$Vs)ncAi7vs!~QCucQ`_;lZK z?3w!6rSSR#9V4@*t=*a%o;*|U4-RPG!7(gr-Sxij9r>TD=T?pynFNEfGNRYu{r_BD zc*_=bFUO>;&T-4~K>O$F?SsdZ8=NsU$oKVoZ?HU9A32?O-w%)(w5>)rZ2#x#4$C(v z=c=blXA^?3h1SFexwPH)VZ z5%gkRU}5ljp{_8jcyzrtaY0qaw7~xVg*v3eCF?E4kRa`*ska^BFVx*fZP;pXj0(Dz z?1tC>3w6h5duD&PYiic*-R8%R2`|)EfBe^oO=btVE#Gm|vF?RBbU@ynTO3oeu2k|W z3ddil8}+%A6uWC?*7e3u^23uC>Qa%za*xWG9(1D3r2^pfQeAh6K1t`+JE(6Z_aYGR zQk^rf{4c-koR$@4x%j{l{!)E*p}V`)WmMM6j?s@D=9lUMu|Ma#wR3h*0k2y{Vd6{m z#K-Ff?H@QYXmaD9U19x8^{zZSb9n~O&&n#^sx%ybsjkw(@4f$^8Cj$HZoTbz{8H^^ zc$m3m;1qs8hEG#(7eTXjCiqaLFr4U82`<-u2{9LULD0;p5Iiviv>iUdk5^X17R`Q8 znJU1^woRdx$2G`#uR4^Pd;;#5{sdLND+PBNFNc?P21BzStHYeTLt#@z3j`00hBK2I zK;)1HFy}=B7!y4dD!<(hZ^|}=D~{=qe}+5$o4d!5tNR!*mNmk$fpsD0;Y!dvd<)Fe zt3i1$8h)sh3^(r|ghu_I!s`Y(U~bvg}a8^40ZUd5no$_I#@>kpQ* zt3liU4fI{#1&S8F4ZB)(hK6U(!}6i^p+fn?aAtHWbnl42C8F#$c$%vu6#wNa%&+MH zeVINmvx^4Syl(*mGtNOd-4+PEGYW3)>aP0#{~FhLhzg zL*?Oj;Ck1#aNtlNc-|-i*9IJhqPyC|^U}+q*tH%|yLH?}*N z&u$0hGA+E=c^JkGdJGkJ$3dq

XJYU8ua`B<#_Qg91ONf?LHxP@ws2*w<|z{ItIr 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

  • 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 @BCi~WUkN9^eX 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%0Ds)l?J3#8fkjRYnU8| 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%0DAVX7WVlsT2&RaH1cclv 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⪼W=FJbYH>K+9 zRZk{+FAxv4U`93Mg+TIM5?x1%hGZ99Nkfu3oy!HN$;p;b(u!iR1#6f^f2-bBT5h4@hCLh6h@N8yUAFdghWEtV`Apcf%lp&rvk zrxJW6JYh&3gQ+9-!+FaHrZMn^oA7|b(PYhoMOmJksx~n)FII++Wf6q@|JcKwSRC2I z3e)s2zSUAKaq(0%JP$f4#^t|ZBJt%L7E)Zv2SV=)4vXgRB(>HyC#0o&`Msmu%lq}E zb#*#d%RFE%8C-1Vn(zdBI%~uV&lufJY3DK(SvVp!ZoTJ-j4;-@A?3##F`q;`Ril4aK*Lfk?-h6^Y3>&S;PTGV!}mnY|7F@x5v- zTlb{T3bu>(RRk!yCgK?G8A(GkyCrcdPhP7fbio+U?HR5T!vza z3x#`Q&=?G30;98(vnCOiaMbqav0A9&S=X;9#1PS&x;&-V3>!gJrmXren;UTyJC6%5r*{R_3K*Lmf7$7-Gl<7WDwK~jG{Pl_4JO+F$tE8ZQZ3yVE_0@-S@QPClW{Q>eN6xx zYBdxVfVM(d3?gq6M13X??B**VzcTWQ?7mA_2*Hd*(Dy6~i;3h4lK_Qv{jEz$T42DFGtPy8?6Uep>2@BF+YJ#1|*v$5}>EhjoTy z^a6E=F2)HUA6z@Yn9V7G;!5#ckP5IKpy+zTU^@!7;llK1g(ZJ69xU_&F|CB7qMSNe z<$_T9JZte7mJgXyr+RnTcq36V4QBreOY8@=Wf4_rIWGB6+!U9C|HMuKBHuk$whvY< zyNrtuA7k~;c*|rJMpKEf6s8O5I)LaD5)23@z75!6kcrWbNRtK&+rnX3 zGLT*6;PQ7eDuD_;_kd6A?@ZNJOf(P|A^d{FZhXe8MA2cq$S|%|Jr#M|VpNz_Uw<-g zmQmu7?$;(G&3)2Q0KWME#@mqQ(*rq~|X zv@_2;)bq%!v*ah&^Az-=Pg%W(0iB2#WXEL{1#NBEt!5VGJ6v_(Y!57-^`|)xO zpyY-k(*k?*$eu|iRq?gR@~Y}M{saVRi>09UAjeg9k+G799{NVHiP$m%{V&*`9EhKc z9F|q$;|1qu8lzMi6y3O-me_|G7({^42;@lFEecUfy6E*e8@Y?rq=KDk{*Cp{6pnzE%IEw7eMzcs!F; zHP$1EAFdB*8m>=nvJDTEHrY`LN6}baWTM)ppW@gC3!Wc}57s^5R4_SQ+SM6jZV*4S zk6h#mreWsm{UOkj>D?n9UAh~4pA#gtfxGk3;wJ8qW9=HiYFmhkn_}gS9ISO4iM#WW z_&Uc$>3xM3V})Ig9ZE82@rc*lV`=SPbJdNiR`tHjz|w4D?)e`h@^$46Y&}d}@N0q8 z8;{!kM6n<^3K-zB`ya`&5gLMtUGh2-H}a$216CjK^h|<{m}OZ}l$W1sx_gkX!ZC*- ziv0sr*?EC884Eg97iNKb|J9f`SvpWk0j+W$ZG;~|oG5#9 z_he=8QrU}sgvU)VU#?d#y?w)-m24_*{M&rdE&SRlGsjEnh3N<|BROG@tvX~3Voo`z zv3VSvIfTv`hQ6{lV|5bx%i@>>Bt>-32p$RNSWW4!-w9j>;xriB;aZmfiXG81iCKH+ABRrP8sNzMSJloPxG!z1QltTc`W^Xd8(f>s()Rba_2vS?J?9AU8v-V^v zXac%S0-n*r`uZ;9(SeN_C85#6NBF#W#hg@>WxMz;M|j@Zm-W5{-mNQKNF}k0#p7W{ zQnWiYm=OuQd0OqhZu825MfvFd%}I4L%kz6CW@5V8(=TZ?HeROrVo0EdqP*_W|PGG(jb7e|3-|nm!-%Zw#Vo#vPHeT(7k+i zo<2Jtqv$l|QZb)$%{K3&0bwfyiwZr#u>h)DGaH6ySSr#*%vIPD}OmSZ-IXA^P_Emi-m>HTYl@cfiuaz-gpM}j>wkrV#!~s&j+v$ zFpQv;xomKILS-FpTgfSt!JiLBpVg8is)MU2BB(ArCvZ@NDYHan0oA{budcw)lXWA|G})cLw^~L6Z-&@Z$}V2K z>;ew##@}X&kF5E2s6)>_2fdfY6ROMG7%8ig?FOcmo>e zgX0^cvw0Ns%3+M7%E-z&0LtyP^wH+b0}4s~s&*}OH92EF)Z+D)WM|NnXeKGsg|(*x zMs}WHhuI6iv&tcQ8BLL2EmEeSx!8Oe^#nsQVf5>U=02MEEGfM*?9jOTVGoYCz{fS)v#ncKI zdHo%QIU5hC4@5J2C-LF8e5g1R>uvlNxdjlCkbHv1#EnN2C2pjIDDyIv*=71q319xc zpT&bk=aq66(}*FTg|bTA*IAE3a1Z^U1wfgLs@+`d*k<(%oUtigXd>%!2(yTR9ypJa zBdjE13;6yhEDqoE(s(MJQLkGT`JRv$2j1pN6u!}0!kY-x?aJcqD?ePIpbL*=6Vw)3522gb5#h{+v;?q$vUtHWyJ;}-rDPsP;Ld2Y@@C|* z)_ZhftcXs93%mnrsT*#HQeL?VElA~f44gq~Ng&qi0c_DQmC%>Ah%@k zL(qC|!2v^AN)=zUZ|z1g!AqEpQ|Z1==<{6-GQTl4zInaXHwH3aq}z6!OP7Xbk%`%y z7C4pa8!0fO3*|~e83;c&m*yRrH^iTJwQo?V6$RnCHn>svm!8+#KWwt^5|kc1@lCNq zI(jrSoc6NN0GsGNTIFs+FQ_ct4sA9kNz!Ffcvt&P3UZUa@KkDk3A=Ld-U5^dEz|WUX9^6uqox| z926h);ulcAc@?|e;@mp7Ugut3Tqj#Emv*_K_`U=2p{NrhnaKM_tE}QmDOuL`OPv2` zl>r_+1P-1nu7D!)H?~gJ=8KP7Dcx9_(*!RV3XBe+cp)A7$&&*TaJoca%+WFAw@$%SF}QdKRy9|M^>SB#YwqHK zN=28P!z>C01H3ks=w$$(VmylkHaZyI>W1RFp3#0B6@P2q0&EFek`}QZErm{!Lv9wXv(n&$n^xRj7aLo>A3WgPixqYPNDXn_sQK(r*V2cB zZ&`U|Ux8o=wSk}g3km!fDok>%JqGGcLEpCMciiyOQ}>EOD-oyihiFfVzg+Rq1paNo zDgm5B3w%%7EtaJ}_GVssdb@>2Gr?US#%jN~TE%qp=)O9$V*g1hSwX%3UCG1pE?8DA zG9&SecvJBzt@7W}nqF4DBHiV08R|>N~b6BP5C)7k2hOqA?rLEZ%Xzk&BfUud~hXSo#w5rowtFG0#(VzKc*sG+!TBXRT z-OKUq0mxargSA;rv(?cTk<7@0Yc-fP>x_dh-jsyk7zGz^G9IB6sHtx@+rPy^rs!-w zyH)zlo3b8sT%;8H_*HcrJ!iZD@1INF^x2b#w9Xa31GX0872yViW@fcV!of;T>AlR) zGVUHD=#+0?^~RMBOYAz4gFr3~EDO#=41`>WK*ZpLF3{ON$S^qh0NOSq4bHqrPsZyH zKAuwB;iJeZ&buszl?HQ4@;*T)fh& z(Z3J04fb{lv~`1~J@G{he_g~M*@f=(hS*h}6T4!)_1(_4{A;~kz@q~#-66-~>tg)b z5=-%)%4HGskIB(HpKZ3OB59&lT%X^=o9fi?5nF_txGYxhH5N=9IAtocOSTmJ4KBUk zZjvBJOBm)MS9}6)GX1A|Kx7a-{nQX#L3?uQORU?<^eeHC&XRe0pd{~*_a2E_<_Z=! zz7?v9-Cx3BsU`{AT^TJrKjsrva+8lJVsY6xR}eyra=xoE_ACuL zF}Jvp+=SjRqPZlh<%BcMaNf^~rUhBHhlZaCv~+%Wa%lKB@;fVVQu&%mxa~eUN~;vl zx#}(swA|wfW;ne|11+<)$`;wNazz(Bu2Os$UGNu@-dhUR$qvWI0(JJ}P*%lRF?#xuwC%@_2q7SO?KSb}9-`s7{ zDg1_taN4T{g0vzdj+XF_C~|q*VtH!rm|CsU&fvKZcHlh+&vtt8rfA>xY}%jeVkN48 z_F`S^7VP-azXiI+t~1}Qtc&#*-(k-RQBKT3M?JUUx6$vRTgiG8Q~ako{Og#>Kf*8D zpbW?Sr>=oc4CFg4+VV=erZ{~(E&0Y1&v2G#Z*GVkR-e7|%~`GcS|Uh4DK5K-T?t!9 z{+m!%Ty~f0dp%lh(=D(_xydiy>mH`Pb_wmmTd45s3L=$!B^G$ehs7_Zg-ow@q)XH{?r(~nj&O}WYFNPtgH~$B~D}n*%N49RaYavA7$gounL38H0})SwWb^1a_)p| zQI+)wguip;5!f=BY5X69u*L11tK~f9^fOMJsXFvZ=QAV`tY_d=d;FQ1a0RAXtOTlY z!UvF7&*NUwX_YD^EUX7^*;UkNj>K;KX9|o{E7lkAhPa>XD=f?1&a_wxysflOrUwLq zw@nmGpAI_A3sX@3$~s{}WchleSOu<0P@12NC{hT{kE$G5CXCtJsUOeqIqPsK@U*b$ z)TWePV(hG@kjXRt(@iu7w5NYT1~qv7WNEqbmnX!ARrFc8N{mBwq94$LyWCtdVmo_{ zj5Eo1A>2=_s~=S6v+1j0@t_tT8}GjH0cV<4DGI=1;^!7Hfi;S_N{ldP!U!l7k>lTg z2{j;GQg5lu!AMuAOnLI`;crdBJv(2LeAhAwG69N2f&7hKkeD3Wg!Lgbkp7czzM_t# zovhe=#^|6K+Q9+?>JcC5qon>3;&H(23vP#yUrTp6ecVU!arkiFc!D}F;Mf**? zyhCP)%f75{)31%PF>G@NC&W2}F1&}T92E=b5i#(MB6D(01D z7FE;Po+oDLeR{4$X!IUzW;-^#+S4*^Wub>yQB-reva~frvqK|J7E{L>a6di#55z=9-G9 z1}rLSmjf_p36uG6j2{0MDQnz2C?NKs#Yv(L=kaC*TJH7|P+*+bhL55TQA3KM?bRf@ zNqb%Cjj^?;eg!rqyP6x5iS*sbma@NU)2b%06$1U%-=dhLDUM5pre(LC*Wh2?k_J8A z{Zjirr41kmKc}%`=AFd1i!>h*{Su>M4(kKi8XQ=7GzAxa2YtAnNts36rNIHjO+F~z zV-{Nm`mn=07_+mlQ%3QzT8g`J8jJO|k=mMlDw#}Vfp^v($n+bb)1 z*cj?YepV0m4WH&pUf|`E+h@tk!bL-T3lGgiWs6okb^Yg5<@snYOJxTns-q$4Br`3( z{LEG|X$2sprvSO5yV>bzv&?fwYMFJ>=Y8;1t~M?FoOCqu{^~x=Q3JQviZw@Y6x`D% z9cFRtW?h>o9$m{xbcLn7DNUIcET}Yx^*q+8iwaO*IvnfXt zEr6NRLN+Z3TKuDM{U0K~a0kX+!ZhQtAl`t)GznfzY<2FJOtuRaajAF;5v=}lDy;n` z(J^_EOX=9SjuF_Vbu`0Z_Llo^#^R7Jh1n? z-B+N6_0gfoTIK34`Xn1WA}bU97hOGXW5aDZfwBrmBQyNt)ry_<*$3=z37jWhhnTTU zE&%MhjdAmE0kfX>Nj^dV;uV*OBMm8GP7cwrrzzEfH?|#*M{awAYDCc>6IKS| z-cTB<-d$N>ajg}_H&@OEe?f9jrKlzdxJdZhBouu%?TFx5a08q7%c!VD>UBVxG|T%^ z99|Y|a`8Pgb+()Zyu@0(tj9i2e4}E4$%(uwB3b2r|FVq0i#eycS@j&jZ#iu#q{36&7AaJtF?6T!gjp8ns)I0U< zsHkb-#j9nJPci|qyU5SRtGYvWxghnC>z`vfCiZ5s(#&Zdx%D{WTQ$e|BxMc|c5y zu60X!jf!SAru>^9OJ-zb@o1N7fASqi1kCv|A|GsUSi%o4f;4tY(9v28qGaRX?K1k5 zCn&{5;_GJSdIcn%&VEgtnR7KgPFAU@Q=}_hFcw^{v>L;Gy*F4Qqkp!f8Of}J2YY$y z3Qi=vu#lwRutsjyGHH@=k6B);bOH6)INix7H>)dnyA2kZgdGI$fDrVRxOSdqvsh7~ zxsVG^h(qgc(BXNPD253OXWV;#;sfEil?PKd2zbwU9l78SvGzsv*pKxi#8fZ0+(-1m z_?-7f&Qe4PfBa)>Jo-A1s+4E}=X@oG31@n{`y6+n6eqr0T8!a{9e~8J9T%psw_+E$ za=s}mZ^k|14GGm0yOAFyp1gIRzPm(m&3P~GT(9IUE;!VdmJozJ&vs%wt>%827hBw` zwES3^6=j4I#!E|-u-2%%;Aq^s9{+oLg~B*miZ8TB`J^s$vFG|hs}fB-<8WPTJaWN9 zEW*)V;$ZU8QvQk#sGJDnsx#fGH-0gKDKf(y{1G!BU2O;DO%* zs)dZLP&g-%7WR?hh0)IpR7{@~&IYE6kaHB?l&b60(c^+2*eet5SD+Kt>MIo@El!$d zmBMS89$ronVVvqwOc7)cyKXZs*~|?S*x=xL#2V5!y&?-$elWyBi=cQ=+7Q!nbBZD9dD}nj|6pxEB)g{OrgIE(b|#)t*rfZ z!~DyM0Fq+Sx40cA-FDPdcWG-ji}SbQEw1H!5N7sHnP!KGOBiC+vqDS&flOqWiC-wl z=b9Upv zli@;5JvyCyrX&yMCJfjiqHd^cYLd+^gTt@SOoW%_9HS4~QGXV_N>SfM^~jb1TA)n} zKOD)m7+134VUn8<7s~@GwbrS0_Whf{Gm=4@RUGW!Ej$@-PWhyBss)^SGn=VS$r+k+%ufnwPKDWZux#RM!cmI%(dnFX;4mXz_8BSQ>3ja9S{$+cJdwo zYd4xxUZWyA@j~(r`b>5&#!Z*zFJx8dn!M&T}fzE6%G!UF4L?^D?Zc(yl<6m4^dVT*< zwm|E`d6(-&HZo;~lb8{s<^h3@sykZMgB)?Hh`RZ0PI)g~L0qO1t{DeQ#>Nc;>#eN( zc$t;X?Uhm55xZ&u5mWew<@<(kCSnP@} zcWOngSWk7C#!Q-aPw*aA;PlVik8m|>U`@Fj^LsDI$WQm$8?zPu#aSvgi$V*i{$c;jZ9g zJ6i)Z>@o1P@O~5D|0lpb5{BVt1gO*8j~|j-EQ|w>4T$5oH2Byo;~we^J~n{m^rkD+ zFIT<5>wVnYMPB4?=Dfdt>k&aaAEX^)xLa0O<=qDsO!VAYYDGImMhZszY)|%l`GlcN z9(Uv0!zGBx$f1F{6D35A(yi@mhIJEDjkwb$=!73v%4;TL-5`mLToo1o!$e> z7KlmN<0nLIsQs3+ZBFRru;`ytlb2R0_x`zZ#Fm*W$Yo}DB$*(_ z%2boDQGrYU%2j_LIq-cNIv4uqAML~HU};%s&R8_0rAZWrfqTLLxk6xQKTFjICccRB z$?ZVSHls7$T&?cQ*vGHJ9<67VTsKX1XrXsWHK(}fhs|4o$ZeLzTaInh;F8e8H;a8% z(4)|8(;9kJ7V!$Ea~;2h9i0bqXtt975V~yG8;BHlDJD+E~weBBRhQEB8GIt3>~SxlrmWn5dNMIL$%71+}OH z#lfZ7uK0E&yx}W{$lgcorj_10Uz6pyP#iV(<$K~I=I-(_jgQKg!yzLFc7CiL&mT~V zMlT*b`d74WY*=(89&O^vlKJqI-@d~W^ldU4-)#l2UvizxIwC7}P2{C}gu8ORr2r6Vr#11@P*e)5)dlP-;qK;t%z}<#1&En*nQ#RJqX!!<8 zL!>AROB&M#$Y3ED=aw|uoHaEZKxoEUC5^?F0={^7n2rvPWf5qaKrBy5W2$YKLq+|$ z2CAw?C`K?+rN{+(EFN+oMF4FceSkCk^Un%97dF?}QoXfI-&-a`qj8{?yLx@|dWeGx z+ce|U?cj&&lYF=qS>&7>c5$?g1=KF5zLEL7bB^GdQ=#>5Ams@bJZ%LF&6>m~C-+`M z%3J+y7W`~2a?T11nPzlP6&_Z<31m~i@hLV0z_B#6*13wLqO|~T?6}&bq>~k0)rBGsc0#NF2P9a`JfUze8Qm)=j?3K{BrE_%$@oYG!bE zBQ_Qj64M3Bzn#K9=_Zq%bsY95q7XX}9E^g{?`GfcAcyMorL0DceoRQmk~ z^2#arkt&pir*u9mY|W-OFABY2qOytJKMS!d!Mif0`&pjZyRtiWpUM1+eS3a}nL6E< z0j`z-j{iR@aCZawTM7ajpO+7?^ygO{d4C! z#Q!AY$cmof7|9$yWMdAymoRsk!xEF2#f7LQajdaTHj8pioJ7358)awNs_)wCfY+?J zeHa2uoHPu1z0QRIcIBZeiQOjhIlVEA29kiOOAm`+a$$clxc!QFX7_WeX+Wmg_k=WVwq4oF4dCX4GahQZXR`tp7H$$`OTp*99L zeh)Ycg+`o6-O``I$OesvhN(q;`Uz^0p8f#wTuMx#PhHx(BT`?r`nt}PH5cCz%Nan`CDui zsi?8iDPO)&Vu4EMa?&0`O$dY*AZy(B3qjuwxA)tak*iFl2_t#f_&S|+zC5>1t9@DR zuddo}K_T-uBrFAuTPZ6YS(TUQ2+Um(+n2<*#n(qSE1-L`@pyLv3kbq)uEt>DI}XeH zLK}l;!>>dUV}rLVQR^Bwr5O!E=pT%45q>4h#wsbD4}ZbX)69Uklev;j4CM{}G6 z;uL1iys0$X&Xvl$?vl<&WUag70Fr5khY2nl1DFW^h>U7p~4d*n>ELb`o_0FlOs4d0?DT^IjHy_{~o%rajN#juF>N0~1j z!l=oJT=;@|c|9-L@MB(-S}u*PQXLe(<>m^EPuSZX^8_D;?8kq1iySlBV|QtlF&>D` zqg8z;i6vH2yGeNh4M`DyGZWqv6zoG=zK*y0MhIxJlE7vnMX4_v4@~5&mbX+S#jxO6 z(}ECoDiH&Z(GuD&PgCaBz@lRqd{@b00$JX<7tZb(f^2eGvIe61zUHNT8VU{#mGV=9 zb|o}uo$;%YFcgs4-X`Z1%%QH>6LE|snlN~ncvIDz8wpdBwAR5AV#aOD&xZ~fg@j$#ggU;{q`kU z7hrTI5T?QbJDII**oQR78!CIP<{b(O2TMaQJL}|owri>!xNL5d3_Ygr&fQg!cISyB z1aK9`a&6j1usY>!6%@=U`dPd~|70wO7k#T2u- zH?=u0Nn!M$P&L7Kb*qs~`9Oi4eqxs;cULBnYaOuW#OEkaDy}1fp{a%+HUw9ITy4N=C#TXGenA7CH;7JgsUVw1I4k%!a}^s{xOQP*z@9 zjp^a;d1~pz?IqHDk>dIO46`I<_K6fr{odq?!l^mpA`JF~m^nq1D~&6D2Y=vaTp5I3 zbT%=2TwoFhT&tAZ(G^;PQy%PGaZqX8n8eKBV{F;_SNRnC!V`K*mB3LvyeRz;_eh3u z0h!`kJ;9Y<$wUfTp?bEBaP+jSklk&jMYFq5lDa@X~WZAVmixc`0xpEw8B zataIij|qCAga2qnS=_S+-X%>p6pmqdQ;1Wz@j~1lz*>)kh2Yd8-dTI{G8#a^;MU;U zpJf>MlS!Ha$8ipg1XC`fIE?Cxj5IN39@?9GF>(0bXU>nXnOGfgHAWuc7X~tA0 zM)B)&7U1cE%}^T3uPj;CC=-+WrMQ*Z+dsueRi3`$_jGTi+OuBIwipfQ>4W{-XjB4LbsMdVu& z#trM2^>#V%T2(*zTpa0&j7i2DNU^xmqTP9AEPtf61GwSJ*osSdd`0SKYNb;cA%%q} zY}{~7GXOH(cO#3wTNs47_ouw}bBg6>K8n6h{kKV;oUKF!($@U?D*&c-o!&Dj?ym!_ z7x-e)CbD5PIIoAqz&gX&MCT-FYTz4WBXkR_iaO-7hRNJjTcbBg6(1rH!j2qm`qKOB zAEb~=-|VW7CM|1yg&xf7Suw*kN#BIm#1ltdIrXkUeYY6uZp&I-@-@>HdLn}LcFi*~ z@w-kOaarrJ__NlH3fb(Qg8u8%Eu%uE)|62pxAmk)8(t3}%H8ETafCoWq2X!ji9-5k zfr5r(EWGIP5b*U!E`~Rc&^vLH(pg4xjdaWk0Ba#$jazpHT=5OA_y@j2|Al#+lWEMp zz)Ov3fpr%EFO9DUV#eJZOu3tPY#;_TF_`gopcN{fEBnf_&}eI*b;djgV8=Sx9Bz|s zuxoj$zBAT2aPwkG|B^Rswuws%0}@qjk6vQw3N;XSti$%At}HZetxl{^azb`6*1Z0Q*cV zg6s(EYDilGJFTx~YQFSK*%WE-zeS!^U&yc0p%Lu%Oyr8hQi* zvc&#sl8 zAPMd@6mG;x!iv${ec(MdJ&8&|%eVbaI^)BQ$1T8iQJWP6dnW9j1P*sjYrf*XShvVM z@bu^-&0cf5HC{1)YGhlDyb%+C%Xp)f4VM6?jPC6{$RPm;N;j$p3Qik2jJZUq=4qjG zy_gq8A2gtHDwmRZjKl{(^gGn@^tM1eZIL#XllLsBbF~CbxO06ZpM{D({dhYtYez5P zHwpU#ygnn`xJaR2m;NK6yJYiaDNUt;oH`|e=~4^Ls!&-zJK1 zd0Q48Asb*SZ^zP4VudKT9RLi0ynM=BNnc%gjf-k1*U5KjtdG7cR8 zQF6SK7d515#>bXd8 zP@B+T?@iz95LJZTf(ks(1mMk(smQ;Jn+MXySIl3lulM`uHaKtN^=p)%SOqa6pkdu#->rZ>Dy&-Z=YYeE^m>`<^xa6*1k+a%UwyZzKxMeo4Ou$Z ziBAxW6E9?jaDlmjjn#k?ePhj#2O+B)!wi&}i>P*^psyc)b_l1hd zc_Z&Jpyky1Elt=dQ8^acYQCzbvnS8Zf5H=CB*xvU6h6Bbpr^C`q4O4i=stj=68&fW zjG&I5+EvV$iN?+ChX^%tIh=z?8BFusFHsP<6HXo`)NUPJWAtw259Yjh7?3{$iuJ9< zD4USPWp1gHV9uq^URZ#N(<_wbHrPRgw5Og*5`PIQK&e)_l!y2S5--<#f#lHF6CD7f zaQy@CuIQs++HTevJiMoB2E{m*gWUj!TDce(Mk6WwJ~h<*j>#**({bPo);zaR6!mgN zrG01|zX*Mb_(rtUJF`c>E}6ZtGq~C6zfi)Rb6k768@aVL{=f2!$AmyDTacO;2;Y(| zL5L4pb+cD8-MC3~gFa`(ogetc1WV>0E|hav^l!{#pzg&$3pD2^GAidrqdkXFg=;!h z&a8l%q+Y6b>2=X*vI0_(F_mnLu$N+b8)M}O<10R88AUwcwm}{o#`R`C9BhfcR<`++ zEl-1uOUx%#Y?zV3Q?Y*PY_n=8iMDCU5&e$!4s5kYzvfr%CZ!53RoRX0_(zlpm#0jl z-h4vYNBZ-&`DBwPhw%zeiQZ)!FYs`7u*G^SBDJkav8866k9GW*m{XcK*QK7Z+svH5 z_h0oExI|pg_dp_R=ezuQLH8dotkZ{ATf6 z8hA>v@HucRm8ih2zo^*Fd>=p&xwc7WlU!>ioh0kbq?qb#AjxhWD+gh`>|HU(@s1PN zAqt2FpKG3j(EM?YbOw*krL9Q`jq@&e5gSQP^_k+?n{6LWTCQ!|{7nlC^NIEpCb)FxRG z@YM2Aju@I^-pS$5Uy!fx|9UEmSTxeayaJxClAUgTT)}d0tzx>wjgpuU8!1?LdM^q6 z;)MU?Mc(fIleUMu_*?t>p7k$|_x1fMmgZlS67TDMLhznBngze&<7%cUl7xai-!b8 z8*WrnLzsS%7$y=&N4uO0frB{>Z|_%($x0E4$mQY)mvW&98_V58roxPhC=-<(>DMas z%a6tt3*hFp*cbd;uLlM>^u7R{)4`!tv-n;!PU$zqV@~`z@Gdj8uchX;6ws^SS~cES zXZ6S(hN`H*{LV?y zq3!uE=1!OVK~tC36MRa|WNFZxMJc*a6`fA;x$$?@+#0i}1suTqYs2@7$`H~UCqFyJg6)g64Xfab@H8~N15q~!5e}jXP}l;RcCG-z=Oy8 zfL?dhqg}n}sFs1g);2cdda?Xrj|{S zsat|0)lSW{?g)x{<1} zEU8DTmX#?EB3HiZkxcPa=;|?x$%f5_U2n@qr zgiGJKIvG6ob~LkH<6Pr!XIIT~-NE0nYJc&>??U#OoNa#U%%2_Rk3ef)ZZdy%^JBdK zI9qYqh8EHt0H3}icXP1kuc~$}N!EKl4Pz>Alkc!{lW2;)1jc=6yre0m*c4ai%VQ}g zK5|`gxl6x1vE&`t4-i7qq7Xt}j;Kipt^d8ym8Incg~Vc#5b%oPkUiyq;g--88J%@& z&~|EBt7SUKN!5F7BDi28l^FsT0q?ND{;ZnHyCHWP!?q-cUvzK&#ogixEU_n5e+jl3 zuHis?MA#6#BcnK&ik!{n+G#{4049Lo5mdAy!fuP%m`9K-5}>55KiVPW=iYj1*VxaxmOFDZvk7Nn$Xl;WsF zzEh@2#sNQc>A{;GptGf_I|}jrl(%vse-t5Urm;6e%4{st+luoJdoPU@7Wo$qjW^?u ztw~UHv5k6}5+(5uktO25c4O=fvqNDjJY)5(=hRQo^_aZ}HXN5nmgrPuS(qY8 zh`1VkLK}Z2Wttse!aLMz+|!q5pl5y==zL)r>*o$HU*wRDC%V;xf%;{73p_x2l8SZYqP+P(w^)>eaE!wU4fIh46yLvsg)+_2+fXn;&_|e zz!ki~`f1*$3v4b}NUq?8fps_}u9L?rEw4JD*yvlXZjhJrH zR*@&YLR!XwtkGC>1;fPNVX(~yD(rRIBNq)*)MJ;W=wHvt;VTsmW}KC3ZwU->$U`Pw zlZPyMD5Q__FkNL+k}+;#d8kf2ER=`6iHEuJuqp8{OCDZO59VDaOpiBdJ@Si@4vW#2 zYq4ZFv~Wvkee?}#U#py-X)>>^)9|oQnlV@Xm0uTQ$}~Qs z5_mSA*`H^Z1>fmqr!~rsM#nhC+htj66*CN~)~X>ZM}+D_02diGj*TUI$cEaQisZPm zu5ND{3|9LG&!?CDS{VhND%a&5ytq(vfEX3PJ#9 zQT;268EN$DKhwX-*MKmXapdGaWb>M!LGgA z?5e)~9@ah%1C`EiHs%kLPj&X_F!Cg7c*2as)ip@JJgWYO%me9tS;MA zj%12#p4pors8-q}T@rjJL;dRSn9ur3^O^6mQ{}t-YMDt|j(PC3%v7yg(oF3k^YNIr zG}X2I#SGb%{MzIpIKjT_ZO6Z&g7y7 zG1H|#<*cTO=me=)wjWbBD$z(LN26$vRNGKC`%w0%;EMxfgvQpP=E=Q+e8Jfn+L|K# z0^@Clt7+vr`xdS81e5KGH$+-E2l$a^RQEp0dLL72j}6aXyb+C_Ej=FBID<&OF8MxC(zF>*a%$;m8MB3O*F@L4e4|tev)od6v0l0-V~K zr<~o?1H2f~)p}NPyt~rbUA-LdgjFDLbi;FM);B&v|9(XlnOvu<`h&d01~U2WO_(ATqv)}5$v6|@aCzRw)0J^Koo+N;@x zS-iiX;j{K?)~ITJ-LV?~a@Da4ha9zq?UgJeOJpn30Am1iX`ZR~R^09YvmC-4*M3do z;qJgnSM?43d0VsVCH~efJIL7 z%-PiIOYmg~goIv!dATrslA+oFZOWA!mg+Jt^olRJ19jOEU<-o?SO_G0T7!8vxf z^#fPl{w3RS_+se*OOZ8L&I6|IoUdK_EPHVd9M(JVBFScoJ>{xC|8g6j%RzI&#*k|; zI+yS?|9yd8+nz(N+URJN{u-FVuJ&K1Q34tzRDS)}C+6*fVt#xJz zAo>#b?l$izg;V<1I#W6IxBISfkxV1`PaiB!;y`)Csr|(+9Ywi9J4Qh*kyUfRlD+|4 ze&c0diN;N1284Nb?9EyWSEjmO;KM!BwHff^`3UeMx)NE9mTP=-?w{FMXj=&AtW==W zd!0Zn_!_eK_21$EWu=0%_21cD)pXzL5@Ev7nc*bM%m`1lo%j926}wWvv6N`fJ~M1d zni;VIgIxdE*STUSd~~a8VliArA&r>Hwa%_)q7vUd>djNmY%{UaImk@B1G1FJd@YG$ z?y{lk*W~&slsHMKgG^9NOGC;-ySQPDd90=JAN~k3aBf<0N!%=VYgZ;ua|Iu6fkecL z-PlV`HDwJMvCl;9x+CUsVo+k)1xJbYpn^b4idJdiXckn_rdD~Jtq^F@w8{e{MoGMu z6uCn^L0Afp*xktsQMKrKO?->1dLNKo#Fn^NXf^&s#qPWo{PYmTmiyN%nMFyrexyHT zAG5o1w!5r{^-*X$0SRw&^4NSiyWYdWD|U0GQXbc`S;!b zz}@%U`#=d_#_}fmJN_7}2bieAH^--|&P>x7a77olr8Oa>IA_Szms$}W^_kvpqDklYE zx0)1YQI)ShFIE1HCu8!Zq$W{8#r@NaGRCAZ%KW6r3#VX;TKEGKq&44K{me;~Y%w0r zrbIR+j5@M2t;;Xv0p7~>^e75vCm#6+m#ndkL6Z zeKfOL1gL%Lk>R=e)S*vhclD_c?>_|h4l(F1`u63+P^-J`uN@CK; zYR6WK&Lr^k)MU)%L=RJVDp83|SrY6;Cs4TUt2SQcUvLyI?FZU2aW+DR;VT9VAqYVy zL^NcZw2Q^hYg&NQ0(DCbUp`>4sHJXKM;S$#XZmo48qw3}PKD9&)Yg8;4WE2U&_L6- z$&pOZKpE_yXij@pqfAv%kvY})kW@624;6P$Gm@pkLzF9@ zW^9#8w(>ytw*%E;Hf>F@O?318tx5B`GJl-{i!+$&;q1*)9orl8X(`RHXwl0agN zng{lL#<;8Z6{kvmo5_XbYcslKrCsL$r8_jZaL0Dc+)N)_j|5iIfGxvK)W zCc({t@TF`dt?GRq=yS67a{An${DW#$%RyO+0&5R!U~4dE&7FAkKlQrYKh~(1j{-^Z z>%UDY4ZYQb@28j}a(X0to&74ToG)f`-`q^2i5yrU_zQlq1yDfM)PcseKm;K)O)G}a zvlK8`!|CO-A}slZ?&hKRD6S(EZX}AI`>K4?Nbv?YlqANS>EV?P&%_UiPR9A<}Y|(6~Pz^IIvd6&3iQ)GIm%)Bf5*t zOi%S1w#G4+wq(SGGqquslsisE<1?Ae=wHZbZD?<%y^%s`q@5;MaoHWT}VrxoQFL&GiC4o zANgf)YF!2N`3v5qAj`X*8>L#-m}q58Tk4F2wsmwUxgtI9;T+~xu(1(0#pCNEdzn@g z+E{L3;$SwbunM~?9AMW77D7B{cN537B6Xsq08HIkV7ZBYu)&X9A1Q)CqiBYI&Z63` zRNG$LU}^(Ed0ub@)@~5K9*6Kc0S^APm4brsc%?kX8&xG>w6W^kI=s$?UNrg91*^#9 zy->L87+>{F@;_>`26oD=lpXs{cveg4f(vQML`%(BhFpCuxC2)ZhqW2bVE zyFFkM$&Z8VWH|Eg_4ZbtwI9HXMeAJO<Wt0z zfqtxE1~OUesyYREDpAMd#y?(MNerz*Z4EIfQ}JWE$M_JWP-dxt`fy`bzc+kFnf(FLw8lH9>+VkW=+8`od%4dRHAws)`!=y(kshdz!iFR9lmZh+wYi(VpQ+8? zkvWrHjW&h)s4aQQc^)J%4}lPhWE(bQL>51va?T@b(h^-xpARo$EmzoCXduG-*+GCmOz4>OH{vmG#teN8jSU@+* zEMRC#0J60!G=(xy>~JI%C+b;2OPq*-6W4n`K^?YRfZl)zE^@Ss&|S zCDb9NG09U;H0$fNH@8Y5eT!M_gTB&BA>y<*$HOIj^9z+2!2PIyQ}ejg{7=c^f6Dns zwz5_7I?XKVZ#GI_NhrKlq}*vNBV)CYtDb@sR(L_@nXVzdFhC&M+(Cx$qN2}@1w*K= zq0*_yE@K5x+%CpzVDr(MAHfTS6yU)VddInn<^>7;|M+?n_@=7tfj?;*T1w#sC|U(I zYSkh*P=T?L#fB!3N-I@Bi+~%7OmSf#0USh%X`zotTydEh*FhZ|bL&_PR=L zPRr$^BjDXX8@GYwkZ)Y<@*S(65=`+2-QF>Ea-gjFcqGSPlIH;6w*eQv zXaJfN*2ovVhjV!UY}8C*#~VLa)+bvit30RJ!ynR{qiMb6Av)cuugl+95=G2Pt=2I* zr#ITI3ilquICRCt+-&@;$YGHP$Yb3G;qEyMyxxe_hB_;-51F zZQhJDf0eIg$*&Ko zuNAJFtd;U@KCd9}P`3F`5r<9cbgmGBVFh^J`BsLzu_pMr76wJ=@8>`py5bz$E*#S{oMtrB_9cVfO zRMtfn|4Pc(r;8m3)|$qo#rp1HWpmI;TQLGW$Ijuks{a4lOgDjA?df;~u$4nG+ZRpy zy&7|?-oW^W+0QcmPxQ~#_~iiJfcHx^$*6y|6?f%kGnL_7A>4Z?Aq9y-qRHRB-VM;n z_W0=yCYefxqkm^)gl!;m7|!A?(ZRz*b3! zgtG+F1_7_)`96d{5MYc6?qUNKj9rspp<+Dyj!?MoiTX^srq&_UJ(@P)l!f>m5qq@g z2pDsY0$G{%Rr*9KIf2OXAs~ELV5$@36#v z4zDDVAeUNkGb~DI$1R6!YYnllIK^7SeCbxyLp7HI6<2mw_bu8*72K!7VekF9*>VT< z8Tuq+wR$ugm)o<80g^Rdz(|khdCkG=RgPkOX=V9^aum2j*4=`_F@CUaZkof9E z{+8fe`cK6~Yella75e1KXL;5MRI4F`Sd+zQESRUX&8YJq>{{9=&pwfW z1eYya>q2BRFQYg*?-uKo$L#&~ApOB|e<+@l{#p-y#acw94D%!z@9>XO9v8=%zR0l7 zTJ<``ren7+UqMQsp8b^j0uB%C)9ufaEOJ_g37Fr6b|; zfCl-!r>hwM5TUsVK@=g-^?fSCkJek)+Y39Yt{ZrUbn6zoLapjaIs*9-`#ZmL#=~KV zzyz<>{gL&G{2$N2ZkM*?pYmwTE3gg$aIqJ76YE!uO1~Dv&0F!jvHCH|av=tM`CB_S za8<2loxVliEY66oiQi~lGt90wH8e#9Yki|g9S&EUQ=w?`e;^<^1Mi4LiS=Jg-uP8@ z6`Z)z*LO;|aU#Pq1BLH zaJ?{1tLjed$Q7f0WyQ>{sud9aBu zvfnvlqR78OqeLtQ5EjWWvg~2tjZh;2;R$RaT8S?wRH zFOtQyj*J(!WP>}tEU5R16QDY^)VKmrAlPiQT3rqXYr6^f#w{y+Ii(_xq=^L^PJ9Y_ z8{o5JrFy?oeSaxY)$E2vy5lCkXj<&w0w&PN84$&01iVM93urYyIC@jUoV-;rmeZvh z(;D+2|6KwLPL!lBnFiTt-IOaOM?BN4$0pGV-AG=k5YHsBGo<#(+&*GoRHRJ^dK>5M z2^w7^f68)%yCH&`Pte>a1S;U19pR4Rx{38ry-5CE!t3!v}Xs%rZ z0WFu;|3b~su!Gcy;%^ii^D>MdzM?P=ZpAy+iln|@w@7QZ>z(@Ec@>yZ@w@G3% z*1X1k5#Jx-4D)*M6q$>u5Nm*&bzE^Bx5gngS6U|yK9Pn;z5$616*W|Nvh_qEyJ8Ny zR?BxWd+P_5w8Cd}7%ED}Q2J2OC59{1o3_+dxzZ)ak#!Y>I1`>}Mub-G#G+V(sDfBN z*nzQwZROx~(3oAfTPY=`My%xCLPpOzOVGQTJ_t41uNhGfOhs{`Nx~s znR<`}$^h!Xdg4^JL?8O@yWD-R4U8!El=-e3TkK5_&kaU~zCx-aoMl}-R&EgteS}w^ zF&hKd+3c=6-ONJ5+DavmEupUF>J0jmMt{h9hsrv#Om|J=i2_{87<4<2OgWG+yF21x z?28<;(W8yd@(nJ{nKjS65)iW*Z-Drf@q_)(0QEA%7xI3&vwe)>G0`4h_%d@6?3eY3 z6iLniUfSD7U!`I8BFtb#BK9{R#6}Y^1Bhb#XAQvSC7fLkDhy&o0CFFiwd-nmLkz{Q9=^ZO{gOjB+kg&&%*d zXE`xCt`LFK_E2B8;Qc#2p#3K0$SPYLzZ*j(zxC7*HT`Fx1wpf)7hhyvp$_b(m{QfM z4SE+D6HU~2HuafK7+Tx*_M@?kI=hBZ4~D!)jCK!^u6R;sz9UYbYbLN7H4g0x~{QeDr>mT&%uQ~W8{jZyj48poB(0&XrZHW3ircKc! zQn)!%&R_oLDNlZYd?S#jNBZ(&l;-M2e|Z?!7ZDKFYe)z6#|M(48=!vVLLcbH5FVN% zLH@c?wnUb(hBO>mRwBRjql({Pt!hJ_^vDu^rZh(u^FtICjPmtJEzdk<>5+GM^4Bb@ z=O?nPg}*el-cH-hk5FL~m^oA$X?TVZ?6q2*HP8yO{wI+_>`(Y_ugF9-ia^InHD6mb zGRMoISgbEPpq31p+RDvYp30+VGs#-fI+<#@CYP-(dKPK|ThN2pf&$fVzU4xoUMn58 zdb7oV*=I@8*C~f{k(atI<%^@Ks_P5#tF3xeawh7%o5PE>RqGmdrbX6f$SgRt>RAx2 zi4UgeDocD9dp0@nVpkY>}kMm#gK=F{$yD8II~2NyzOYdjxlMG{CKE9v`*gJAjWbV=|Tiw4S% zw!$8TzGw)qvGKCY9mjBtG`%CQSMw?WYz(^MP1!U6I{Rifr-<3}#J*X2t?WNnfE;YY z4*ZlvO#wC>e`QRG{Jn-pmSmAE2`dqFwgp{FdB(L4#Kp|aDgFUC7->j}AMzzOO!4cg z01nS&Bdl2p+=!RV=WB#mJz!aVfIxh?;9>yLqw_|q!%f6BkzAxm#zE)6hNLr47IrR~ zV+>E1mnT#hM`TG?@FKJyA++R?bNKS4Q-KL?pp|*Cw(ha({c; zxWMtRPBA$GsAK0FC-?LCD^=Sz*bO*WzIU$YJ9i{xch}gPI#wqklw`iFE0aBZT~Z9! zN0Qf=lVKEQRnE(o8xiS=|4UjWqF_sTFH^(PaDRUj_S)BNU)!O?S9jcV6hJI;N>lAmb79qVYpces{y-GvCE2`wB z6k8$1-c-eK@57=TM~s|kNUjhO;WmIgB(~L2{S%}ye!0nV(7KKG^#-YgD(<3+klT1f zD#6Tf3!zDa`WAohqj(p>J7|^wo4&*?uP+ODVVpy61oA~aq<29G4aQN&lfmGy-u*l5+J z%S<)-;F*wm;1$jlrO4u7|LC=e%3~=rdsZHGhKEPiZc|#u&;^xipMJ_o&%&3)&j?QY zFb}`)?dEijN*qNa?XLRO!$3rY^y4TvAfnac6oPIIWGBNd?2lu->$*fbHu;mqOKZev zK>wmJG|`PWKy7<-5|%B=S} z8rZ&D{vrOeLg|FdUF?YW2u2r(A_J$nQ<~LNrsK`b@#@wbp&6{lS0IerZst4%CC2rG z8D6vRS?bX}`*-H3c^(kguzukS>qJBqOdS-W@(MTpp^sR9{!WBNp)(Qnnb*9;wkW_+ zyz*{tdn4K&|IwyT$BvQ62L*qud)J^6ph4Ky+LE^3~j=S8u=1 z>(}?-P*RbRUsZ3P(^Xi?4eUK8^hHD`@y@2eqqTv7Q@5cgy_130h#ml~;psFbH(q08BP%Eg%qcFX}steapJta|`|1hsoDwmM8BK#q97s;%-0}idL(-@bbUz=f!%hIpS ziW3m@0e6S{vCCVynJmJ9bTxv=Y95jsUcNrph@CcKnsT4MP*N&f<#O(wXpB#86k_)e zO&~lQ;nu&DO;F-I6kO2IpX}ak+C!y^RJzs^)UR#R+)mA1?AE##TUu8i&h{Jf5FdPL z&xI^DsDM6bRXG&0g&(obr-2DqTe%qf3*HFODT(*9A&rjkPf$E5M0Df6GSE8b9KEIY zL4R~KtdZ}?Axt~;{=vj2iH*g0{f_T2a8V+TQzUAKkZtuC^N0^t{W$9RR(#DES&iDt zuBao-W?N|U(MWhb+-uD5!PP{=za-1=+&S34#68m`sI?>R$f!bs2YSDs@h)Otz(M(P zv3-fe-U$9ryte}TgnXHF5KY}HocJpXaY-w3yG7N&=zGJ0fI^+Ro3M84i#(eR;4G;A z%@7N<<2V^bzHYvIKQgX6YV9i!{@nhxa=k%mY->Me2g;MDc0c8nWUw|g&VF*&_7GzU zzGl2%yoTD}|L939C_c=QM5_Icw&JsD7jX2b_imyKI>IE>{=hDma{W)VnRlX1&xtm3 z-jg~#)U<6+tn3qflk4-kFU1Cqe+EcHP= zY}}Q6a$C2lJPGSY^}ElyPW>LSu9h5N^x^W3IuTFtx956FkkIAHH3RN*CajD3h892` zdnSu@w~MiU1*b4;zl}J=$z`0=<7Jm4G8ZjR7ZtHqA{x!@>j;lFUxVfaQM?>Lf5CT9 z$A4fdNO@eP>|19R%itDjpM2yxmJL3H?@>%MIQ_ ztSwd);xNYPtCiC&kiXHtxJSb>%E_APd0cOYTtnK@V)=J(4tzvBATnfCo+@g7$k5Yrg?a> z*^O;`K=Bp7_cL)FZfD}2ldBYPAdAn77NMw_dAS|v()Ay_ED`a_2wb!4hz9B^v9E+DfddFO%3deZrVT5)nmW$<%EZXHBKl(Euc65HU$F zMHbrCA03X+vmqaGRa@o^EAoLSa_r8~*%g`NBgdwNdPI(e5U(G*J3OEwJKmupFP>6y z?s%}vr#p>#+1iSEIr`Bpv7i&tGK%ovkt2Ad_8wg=bBL=%z2V50mA_nu8CNRvg+)U* z^JzA;kdNGFD^ltSzjxORm*0D6mS#RB#PIdZN9n@fz&*Z)ljnuM=r z$!dWKpHVCaUU4oCIHBt+ht7PFLlKcPh`j2kfP}C2L7&zV?{vz0fKLKk!D-EM1~}D$ z1N;dylvO!2U#fu0iSuhLaTW?(wP-C|6gZiub23k}ohNuo9&v#N4e$nEh(F>+Ktc>X zF{t`0=O8CjN6v~L6tTv=3+epza#~;CS3)>)5-abAW1)C-K#hqg#-!7L8=>ii2Se!a>o zgJH7y;Nv!wwvo^4__s;E$z=HTC0;+ja)h?ep7o6C)Eo)r_Z^~x@>p~@$IbP4mp0D% z8x;p9&vgeQ3D^A2K_jx9Gg7G7(5RAWNAirhIo7+llD}H78Xyw-V6;ZmCRgiA2B^c- zCCUoqaD-#RlO2CPQ6?oe6?0Q;4tc~e+8AG*)KZc5lIN3{A=--h0+I9k#ytVTjt5dlmV-GC$srd=nw4v7j62L0m4Od3zFo372MBOC`1kMtH`oEa#!bMl6J%a8PwWB2+8y z?5)M#Rt&R^taofDrL(hpZ=u*bcpHs>6VRJ%mN7$~glkNEqR;y*7=8Z*P{K(QFYw22 zz?a_`_ZeZ#1RlVGE&25j=5zRb&QB+r3bv5hDYyD#|PWU<0A(Te8#U89Vr%t)4IHPLjVN7sDV{r2g{JN zoriqhO*48Zb1S-Y&oH|?0Rp~elczKG=K4YU!&w-=kH-Mi_(Xyz<+Fbiysr`0j)soJPj@8TDK_d3?FuKNc8T^_&Q(7U0;D6KEjmuNDLzQLo*!)K3* zW^2I(>m(u3pl9Z9gcU*2>vOgUNak;Zw!H?m?^9~xv4y$ZxH39B;qxBzVF%;$w)wQ8 zAAQDPBV^#{qGL@BLvg(}CC1ukDCN$E-PW8xoB-cW0oUHvv(A&r|hPtyBBeN5j zuI%=EcVgYLIiBj%*9CM-@VH-J=hwF|+0xv_7s^I+-G6R$E~jvy-p3A?$wTc`;qsOH z^<7pfS&+GF;^XkRD~xxzn=u&6sr!4uCA*4kxB#5&kh!%bI{(u zaE#U5gm>VZE^lY?Y|d_BtDF;B*M)nNzn>?6#Xx{tVGEW1?;na6v?i#2EX4&~Pm3hWr&Ky=AlacAtDr_f=uuEK*WN1~J=(+xzFvj-@G*)k=l~SZzLiy%DFN897 zoJ8ow^1n1s!fnUEcijK~vmA5Us%o(&)~b4P7K#-;DeuZ91+m!;@KvrKkoLZqq)+jQ z^*t86Bs{BbAv82*#GI5AU2c050VB{?nvuJCl|z4fI@wGv10aSIiP8+$*q*phfLSh$ zQvKyTOU<#RWWZho|Dr4AO%w;~SFU+kF)BN(symNLkkw>c6U}df9zU}83Hf%oq&{j?#tgS4&lKZh3;r{1^81wf`22GJEn89q%~y{?Yn-Qgv#~Zfa9fd z{wW7c))eVSWc@AlwV6T0_%3X)hkD;7)jb0I0>`e0oDBHg7vZ?PT}Gj z_*@DUigax7Gx%+yN;#6w0Ap?B2D)!?R+q|#&6P(pBbyP860Ei&eS%i{Wprl3d>lYp z^KZ9W4D$+bZexlH+fy2SS*VZpX=nQ2SSA<3jBU`+BnT+>%~hc|FX2U)SnC{VRI5Id zcWvc3g6l15m+Cfw%ohh7%jbu)tLiH*EwAv%4O?!i7Gk{T^AsCtx!l$ErNTaAABd%o zQHraul3b5Z|HKzL;8YgT;LWQU?|>; ztV?s~DuS?;^HRCs<)mXN)(!Mj@#>_eljBaxEaSI6PlGQ~P6UI9I3PlyKhTf4hZ9WF;B z>+@p&PBM^{po3{JZNroD$C18xhYL6aX z&PI`bSjPq_pL|Q`ihLA|^nVppg+4$xp`15TZk=832{zCP1eHWi+=hT1SoL*r^w|s+ z_mt}D#MYC391OtusVdK$uKJ;9Y`G#ajcVEY{lyT*dhX8vSX+8U2Z{SudJq+ViuoPP zUpoK}BeO5kl#0|UAEY+P?el)EMSo!^C>X5i+`>hMjby4hzL((fk|xf1xD<;Cr0mxF zGB_4;yF8-P+AeOH9w=7F7R zlb%gJY_-ZrTI_oEF}N3P0+$Dn_q8r}ih31?^~K&zTI4r5M-Al?7Mul;#mck3>uy6(j$AQ+S@b2#ofTo?BHyg}4=i_A z%=FyGB9`SA2?`v&#R`fya+)POu4{(;g z^n!>kAUCat_yzHp8e3Z3+7$g-OeO`-!qnIfH=MG*>#fYoZMaclz}SxhFp2fC?-Yh{ z4Q1q5fi5_D3%ESgC8@%JX~bME)+my{p5)M0Mbd!SpNCeudgZUU*k%lSbU9##pyVKC<$kZtn_IM9%q-tEU+e=D~E1^ zI%aQH@|F`4p3x5jB}hCvQW+8+5oVl_@Ibflb#Y<;At}mzz#4HR0Q7Dd;#_U}5D36k zIz`9OnaRy4EGP&c;OK9x?ey349crTgMFo{}(LXOO%D3KO5b~nf5`{#m?4Wtp0omdc zV!!W?SUm^{!U799CGoC;EY>~LVH5!XdrxQon@YsqdtY&HwAa5{M9C46lJ-C3e2G49 zbBP|V$6u9FCFO`JsrTubVqav+kius?-l9`!T4;R1Lx)13B^AB%byXO2# zhnV>4la>c37hzh7D>$Q@hLeHs z=;cgW(~2}y54WgLpl?E4%LDeSPzR~h57*;22EJ7io#K=$2;I%6p9G<+@DZu~*al># zxp6N31Uk^+&3AmD87U-!teTf!hRG!b=47|%OBi|~vA0w(sxB`C+>?DNgi<0|V3N0a+6J6WgXW&&&dy$|`FqW;!PYoVu0 zy!%5p4>x)(A7SLK@OgL4a0R@3XK5U~^0aT33z`K_^N9_n0iVo)i16f1y8HP5R83Jt zBs)?k)lw>;4VQqxsLW_2{)_?>L^(3&u}?XcB6HCMRz1g31SgL|y0tM6SHYbGS`5^8 z#aaI7z)W9a6F!=klO_m0N|+KNGY7p}=G|IsXiA!uFGCt`_+M}jE-IhViMP!oyrCD| zvj!Mr3KHvlU~-rF^FP(8`AuJt6G48z2_pjUaDP|(<6p)oPNSKRvaK*41b4TYiYSF3|aRQmsz=tpcr*EQL`L1-r zO8mLZ5T2~4znoI#>;vIpM=Bmx#GFz%mpe`Byovp_V6b9u^E{vU(F~nUaO$=x&G?)^=>89)8Xqji zDU$Um8?9Xwya{7Y`&?{P%K`JY!}=E)%yO{>e6f!*5lKolBm~V)zUg=~cfFz`R9{>+ z&@UP=BPc4V(0OQrmG4v zT53jiAl!v3i=HW_q^mK#?}Fn_=|qRhIfEP_XQR0T%jx|3*wejFRr;2xBY5biH5|d2 zlL!eRroSK-gn~KvwwpN=1vG{!!#LU?GQk|^ts>HG{WDe`6Me~p=`vDJ+F5W)<{-LY+n(d6I}(u67?TUW^&3Tf z&5v!F$X9uY6-Lk-%Ryn`bu&t$uPH$qCz+6OHk->)_AKyN91XN_7dDM3j)4s&MuCJD zy`S?%yoii;!YPeT5ob6YFh0VV1s0D^MHrsW$Js8SBHcXQ+rg*DeUUv^HGG>=ShK-r z+?)|G?#!a>4LCuWw8X})qX1K5gI6-R8L%jE_QWasAr_G*bS{-CdN zE)8@G7!&ZubymRp)okwJ;os*g5tIm-xRH43q7lJ&u_h4m-9lOjf)j(e)f+L!#5-2y z9LO5~2YN93R6o~|@AHU|YFxCM0&;;QSG?ZzXFH)>&>j}4K|o0QfFPN(cr!*L4O?;0 zhFtm}l5Zd#;VDX0jFgkN3=zY&e<4m!U)d(wqA!^kWK#F0jED|-gJ*Wv{8T>+L7LMS z`SvQ-ql30`KD=X7!21c-_ulWq9RuE za}XT#^0kj(cF$L-vrpe7 zfm(LxjX;n7g_XD{*)L@ahy0ih#3fDo1^nn=VJasG@znZa8_5A3eb`z+2Uy^a)huvX z4#tAuvk9>;4~Yf);vV@`FamPoRFW-pX4O_>;KO1yrZk03{@(RS@#8xi$LPP91ECbG zzcF&_zx{qrSo_^X_97C~ySI8AcH|;)6jjJ+LWs+h361$stN6)j#@_cpq6|wvqjNQl z8GjTR&p}FJew=+duAU@zs^}8`im8T0FC4bMjcFL&hAwW>y%5+Wq> zD@l{u8)1)6Hn)^ocCC`oAWS639n<)@Di>Mg$!E< zCOzUkHuJEzW#$1~1B~44{X`r7iTNzTc^kL>b|DRZ#_iA8XwZW&f+P7&Y)~N@)KQob zIwLZq%8qY$*2azvdP!B8$S6@LPRuQ<$he7c2CL_HC}2{)wjR3lFc+~>)x=K%ZwZ@x zb6@$BXN;}#FkW1w!^f)|P77$eB3%U^LzS8y8hrI+|Jt#t>}6L^E?HY<3|x{LTEYgX z^4O*7ty0QJAf`>`x6GJ5U%3ca(SQ+QtcoI4si7*5cgIY-A$9j7heE*coKyD1X=^)` zEi5+6g%1j*%4PGqi36Qy6!v9H_X;-G+qdTHLtTQA7v$DF{4h-D58~UxH&J9yKa@`X z4etmcF+M*AIKWK}3PkU94%hEm>meRwFlHjC8QO>8Y+?*p?gwcE*#j!LM8Fg;PCuX>NHTN}}Ose6Z2O5JwOsn#EPMl!$u zze)m`X?E0^vwC`Fi71``ea+TZ^(}NZ+a}HX#bct8)p&AHqYqjTX3wJ84qVivYtX(w$ZO=J=yMvbwdD-%b(hn zfLc!l;JgCPExyFY_IS9mDww&uy3~189r{GX38{ePC`ek#Wjyw)(_GHPa~C znSmMHs6*bn^}$04EU9euie{@D^ePiwA6Iu91sV zrev&j7F#ubp@>Z-Qw08&Ob{XJ1`9_%^katg6VNoCurt`9o@P;eQlezIJWLdj!?hYb zJ9dgbDokF(cbUbA6DkXwgtgsLG4iI0((zi+CUkQdrFu(o!_JO=ql}m=<+(lYz6ITXG=bVP*~};qC=v6?v=Ff?|3jYJsumC>&mR0<=$=dLiS*UV5&O z@UB1IF9$SaxdZ_GigmVWbh-O6=t;7uD-3?bo#yX1$W%x)gw|eg6xynVX&%AtZJD!i zwl#1=4dGVIBSnhk|BM`QO*0Rgo0KWL)ks2d^vMiLRJbRYQI<>j%X!UC&mrB6y_NLg z`6P+vJ+|57VxE1*ljV}(ep;xr_@i8ZTD^1#9~60u7_84&nI~D^woN0)s!}T<{2gXw zq#_o4c2a*yYO-_v&Q1cTxO@pTFtna_(m+WH+^Y&^NRqZ{Wl+)@uT$B6>S?E4Eoqg# zRKA_bv=T{sS}lt8Q8MisNz37a3Qg2Xnz6D>lAKVvB)x1WQ3hvgn#%PUN#;CemzczuGt164j^jq{t`N?$atqtGMJaz?FA_ceqFrJfn6dTW(KB)0lx%300tv6L~t+;fO9+QZUm`QK)JDZW&4;Gm{pJ6|e z8LPMY*ow;J4T}@?sWBKGLBwH7?H8Sm+r0Nlfe@|^mBORc!^~OJ&X$cB$F65=ZYzO; z-ND30^Y2Wgg051&!XbuokK-o6t-$nWxrt}~`BpUpm+?KGWnN&f!g+RXe=d#^(nA-c z3-b$Og@Mh=vAGF|<LOmYNug8{XX)??*@p?a%xU$D9a&NW{ z?h&a`v!KqSDMu60>}MVPw_vx(p8Oquge|V?&o%(1iW+YlU3i*vxJ2T43+7UnE1>gT zGvm#%D&-D+i860L!MLEt1%Frc54 zoosXI`3{Hm6(7}s;`)FOoc37w5al$Uf-d+ddQPrwy~PKZpEV8-`R{*8)E4rnRm)+H z+)7?>BhG+R2UU|dc@^x4HI>U@$X^x=lN-t5F$>g%bbYKC&>ip$QZrfPuK)0`k&!)Rd z6|>;`7aSBe&S|DMk-5Db;R0bI;jG+s63U3e(e(#}n06U6bK>c;WAvFh+^}a5p)B(X z8_K;jU`$i|Crp#u@?IoSl;>Ps>p19eT!_SAsN)up%P>*G7eF}#8!XR7gg#B+jd;PX zghm%SLVGZz)KJeg^oaN$XN0;F$swHiFDC)rU=rggZ*qg8#x*|da@6z~%iqZ4z8n>k zb8)eMpq@}AMZpt&7gwnCeM_VCJ?uWLJ%ADpKb!ePK>NI?tnxi&(}WK8rtpl)_moS6 z@E^n(vNFXJ4=Be9L#35#yNiDVM<@?L#ggtH^6bN&43F^LKa%Ij?yK@~;DZ9mueV?% z7VqZQo8z5*`3=7O4+0%O@M!^RS_cu^7JtLn@nEKgr#Uq7r^O8KcG`wz;aDZ+PBEwRU2dGrDC|GR*JR$uMo{eDYg{ zibuk?P3l`HpY)298@aPO?*d`VZ^tzjvf>A58b3C{BZt&^O(wZQWQ~_RtW`#GtwNgV z;|Q_Fwj52YhBQy;qb63)B_v-FGZVl%a;8UHF%5ycr9?qL6S&X&@vII;(GZ@nig^ExNnd!um%KD3|!cet0hBo$HNF}D-2EakTRQa*qVwuJXq zxNo-J1@G&rNMkOcSn_(kck_(QXqhv4lU@<+Y33C0cVw+ol@4dZ0B~d}pMlTOS@fBV znCp)}BPiCfbizLc^?~hjtk3={Sg;7ACMykWi~t9d&g*6CTgLN*1~;zB!K+$WYbx@{ z%`vTO>M3|9fe+&{9nXTG*Um5f5oDR*CO@*KBb)7OhC$;d+<$EkjV#t%>)t?>CnAk! zQq`P>dnTQQTNiR3v2GU-J0j@a22KujlYD!+OV`_xxs2(s^>k}nQi?PdtlnDp7aY5< z5ufj@1xs^&K0*8%iI6?_FR6~v(II<_Bl9z`le#K2vQ8|fRJ3gJEx$GC9p(y-wYLTL z6!Zx9AfM8ekYQ1K2K?Myk#uooY4Z?kZTUpv1dfglr0%ASq^xra1KZlbe!t$c!az{RNBV-YmOPbyk*_6`S*omFTDqPl6 zaIJ7juCrCgI)zKcrJ7O(tE0F$f^uX~Yoj|vOtqU1TBCc*Mi_ChxOqg|=auJk9_|px zOxYlFfd`!Rbkh3e{-cTb8m`i;RKqZ5A^5i@uRp5fjuITU=?y4lJDA~=|FA$t=f|fb z*1OL+WA&|^9Cf3>koZ#u*=5-A(VLaC`D@sPHhi5>loLG}hvL9bVRsjPeqC9Q^ z_giN(b9EvQ$DP1dtC}}Vhn5K7*@+_I&af_jhR!R+kXC&kH9`{!V1gg7JUy+xvC zY7bsSHfWo7?{PWIFQ3AY=WXVi+4F0PUx_|P-pH<0!}YM_@LqC0{u{UiebMs5@bB`s zFUOzE(;a|ej2*E|ehIk=Wiu!nTR<|II+~H|J&xsRp-w6f^6xIH;`ddT_hnkQekt%8 zD4=8StG<#}YNr)SnvADmpKC$$PEP#=`y9Vs<*<%!Q)T+Me`kAH-`Z(GNt1zEpVZ$rNIx2aj@noLDWFDVGmRT05-6@Vps-=!d{do!{F0yxvoFAToikDQSra>W#b4A- z>@?^0_%2_~q}0mBRnODB>&Rg2({jyTUp4}IJv zSR55#Ba9A!?E7?=&)Mdq+X3T=r%7hwo)r-BX?2ruHH_Wkf$5yckbAaR;kPU$R`3|E z(R3lXr+O4e-mm~9<&3DHU(#7GExVWBalASQK(hFMT_h#S<)wD){v3OW_^W) zGv<}GkAb8+N#eeS^)-_&zY<%}Ho^Nw2`8u)MY6VN1eLV9)=zUeJfX4D-jv~yAs$C4 z$a4Xzn1&cOscC4Ijz)H+Ys*?@^fRyhqlYTxD%|A^#r*xfO0sVS=^A)hOIDKW5g%LP zP%ThUY>W%~_1~zZa#y-vKm6&Qh96RgR}Q%n^MbTIt*V-xTiu8;%gY=HcGX{WqUyWf zwyXYuRi)}IsVk!wSKsV5Oq&+Liu-hS1%^v26C3qu|KxiXM`R0xRUT z)q2UUNCrpY(%|sLS>E9_lvh>8`&T!H`kIgLYA<`8lx-j1)DxYU$HW}Bu7{6PYIdSR zzX}<`y1y@g6VQM4HGGo^#uIe~%GFiX0#`EIkqrz~5+oneX7295$LK8$Rw_d&WYgeq z3TNvwNe4gOdH!bYiFJ%GYgoaS&;wYpowugvV2{j%YmMBzG^cfv`H_`ao(Y#cL4u#{ z1%NL5;wTQ<6qXfz|DGq?(P_BAY(6o%5M|6iCZ~8Yrxz9H07ixFJ*4X1O^GJ!F3tiO z>4NoAXY5kw;a1n9e{eZaHGR&Ak^q&Ve{kfhe7va+yc`jF=sdwJfL_A^AZXw)o+A5z zpyQEkgwSn@Z__vRZkpC~d;WI0JY-J9C<&*r#J}pOkl~3vD07DjH#*Rr*yPTCpWdB%Y-=xKR}A=aGKXnqccvX)9KQ@0Wec=>I-W>S^u0z52-Jf*PBtybyMSy%G)dwDu@F=@Ny zX_lxBw#ieYC<->o(__;0_3|{HGtv?^*BrrlYP~5>Z$s=_ugKGlI%&_y(+5)GF`mX4 zuFLNPKc|Jy6yfA|87zt6>P}Kqp;P$d+w{ZBQ^G?btgE-zZUoVr-!KFW6x#ryzos*g zWuFNx+ChxDGeZ}MT>Z>Qizm`{Pbe?ac3=4GcsHr}5o$)_;f}um5w4jI8RQbuAf_iY znvWLKvw6J67l;+7_@|o!$tUz{7LK6QWVb=?3Nc==#ulYO)?tZIuK%VV=X8}2ia=sG#0fImGG2{Snh#V$AK2N&{QO zRVC>=7wnRA2FZFML{>JxFYucsl6Il1o+N*9bo5TV7&{^CyA(T{EB5;)qHz8-)J>@n z7}PZO2@<)KxK$i|po! zm7|PE{Z5e`1V=^5DouQi25;2c&GFpvE%)-~uhug?2!w4f``CKts@a zk#}@cFww2n`rn9QrMF!q)C-3~2ay!?FOBx?fFVr^X6i4cO8ry(gO|x_&bmsg8$*Ee zZ_G`%c|g8U%y!JJWoaPvvA_)$1=ebe{FvnK(u4j}BES)c1OAbjRdMT3%Wt6in~)pB zYN^zRY5Kwx9`b*%epcTS;r`s637sK$G${BnLzNP@2wot-x0bpQRE3af5Un0 zPWgU3t-n^ikz(ez^bnTYDq%L{%kbk_{YB(nC{q)Ag)F2N1oU0RB*P)pE{=H)woi9+ z!V7`5D@kC@Q&-!}Wq_V=LpijISx;Xv^+zgL0>F7B0BV8tP6{$2R>dO#r3`m+T3yF( zmD9m%-VY`dF!&eFuK2uu}1Zq z6MIi)BeK5y)I;d)r$D|->92lBO-=cyI~(?=wr=*Mi4fup2G-<6U7f)jkgHg+ zmeeV_da9i3#Iwgmzadvlra*+9YdG%qvl@Z zyq=uahotBm2#V5p6v*StxqKNSU*6&i3T(yGpoaJtm#2lL(R`=|^lc4RM;i50fLnOS zttwTGuM&sLomC0W6l)y2Yr!6A6B`1%oest1JXYwE!EX**d|LJAEG|*wpk*|(s!t{k4R0Ne9wP$ zf*KVJbbWUFgopYRM;|_U*c|{fD8c3S#K8nkmxst%=CjTvE#*x(Fr8B_Hl|aWE2Y!@9JZ8{zUaSzC9WcfMd$_w zkNW-()KYgo{Rd|&oyUyqy33NUGEFmGutRa&bFY({@_#U|WJ}S}UB?eXdfa3_&AD$K zX;oVnJx&MAvJj%;gL1HPaNMqQI(gWY*-~1of^ElkAAyX|xMC# zjt@VcmKW}re9X%GzfA?kjwyq>NOxF2fK(WKIY3>v1i}E<89OH;xKd~AEi})WDVr+2 zc)_nWbphRSv23WfDXHidp)S&KLLu(&QDxY63G9N{5e|@3-W3|s57)&+y!z`2S=_pw zBKt%d*9)>jq;YWKUUUeNZ=H2>%G2t5?_WI>npsCQXsrYtC8f8MM7;;uRv^%WfnR^| zrG*NSdz*CyPFm>7A6tNXi?q-vg67_7xuVu^L;s+-NVGOO<*+9_e4U@%)+ejjW_ns~ zYhy|%ThjCF^i?X|pPSLzm}Y)6LfX)r^|b1Ip4@rn5Yo;<%Ev4(0+Z;I|@I?kds9LJRJCZZg4j)_q~Q(AWs(BMrxQJ3ZsT5-2^ zJB%E9=@R|hAQXvT59MVv`}1;AXiQj+G6dMgdRjkhDDjdrLC$9(v$|88IRS}>weA;L zjo4oDmqs7RsOIBXMFegz>3VWppXlugOS!EP8I@h7iI9h!37T zqGOFzgehCD$Je^vjeTFPkT?B99M2PT3(N~sL?pe#8WeAX=}MX5Va(hXnccCn^BuHX ziNEkeYlNuT0iZOzhK#Fqy(gS)xDG6k%_7%MvDWNJK$tTs(#qoln9E`#ds7hVM}1M+ z)I2=JgprnX5qv(RDX43`H^^n$qt?YTE2s6hu_+as6ya9?`Z`?g)Iq@6qdc7iOVB3f z$zS;NpTObxf-8scObew)F1mp(IU*O0l^<~~w~t<{pect0;L@t<=cHTyUw%x)T~;YS znDpTiFVc3URwc|WHwCUDhMoPy>G>*8t*)D?JwvOG+R4rk&i{T(0ZJxQp>Scv#=s8d z+^*`x+SZ2GtM(5>Lh6v=2=|YVg9CkN0Jjzk%*9Idv!9uKgRHEW+~0n11?L=Kcv+(9%)gbWcBWGpr+TjSH-INUj&%oyT3su7$p{xJ7@~m^ z^7xHG#g(Z5Vl)x%e`3}f!a4Ak~R##w7SO8 z0K&|NRA0Wf`b?zT(ILW#IjsKc1gKfqX6x=k01rFgk9`3rP(p@o}k2c>o=vkbxv00u}eZdYA|T2kDtr)?4PuiKL)jB zhi1mfdCA0@vXrL6RIK0X)3A+*zk+5c?vgL;^n-TqPsL)K^oRA|EH4qmrHh8^(d+5K z9K-&a^K+cTk+)eVh~oIO!^B+1UxDV_osx0$_dVwyevQhT7*j!qyOWbA;{~lgA#Gal9T8R!6-S+8#7<>3|8&Tc9Y}b^k+p7c#U|vLI zTM&#~$hzQf<932f5zbHWtsEdkYPbUky^_+h{2+otIf}%3Bv|)?S}0DFFS$-xs_t7n z%4{iRYZrQ=`Ywm`nQ|BhWxz5A^R4gRvPUQf^;z<*Ah?DP^51;Ohqd;kpsU^2+UU`$ zw*WNSnmrjaAxrPiEwpC6DU&t=WA|J)M{@X1Jc@MBuSffdtrHHovgka=o4d~Bcodyz zXTpSKQ;DOlN*&urtYL|^gh8TI!QvKpH_sfXuKBf+iz2ly;1IF-s7e6s82%K26S#xM^Ft-S50WK+kje;sOr29uFq z%v}U@=BmWmbv<^IuYeLzw4 z$8&)r9#783$G^3y{W0UApA)ff0q0WVD!ChvxsH$`9&;ONV8x>X0M9P@nP}YKgf5d= z5o47hJKF#=#rL~%KtPcK#B)~wq(a|#99m5uo+Ug}M=;brBsOv6LkVlZ--XtJu7t{% z#Fzh$V;l0`-)>aN0P?IO9n}uks)UgY5(P$I4^(N@jm(dDP;ovib0X+jSjIBYn)UkE zvLC=!)FtLU64vMp)U#ATzqOiIcqmDQYS3!_DvyI914Fli2*%JiTVe6%y%KpQbhS7H z?IRw3mQ+jgQey&V!Z9ixWP}ZkJ>e%s>zM|HtXva>^@GO$gz&I?$BEh zI}_(Va?CYLsJ%;M7Vl$C6-{m}!ca8c{I=npgxL`P(0@1T*S(DySxzSVE@aM{7 zKWmGIffg!{9@Q2N;(M4^vg?5p3G7VjW`(_Zyww2`i@Y_r}z1QC(&4-Qx>CO>?6#FX5yI$rvuwG&@r>k?5b}R{5%GBp#9;mnPSN^)0%VhLx(6YY7Pp&{ zKhNQ#j50CA#-OU1a_1d{gS~l@RyUY!nv23ux?ZhYl}Go^NYUG(qnj#^w&EqnIzx4? zG5&9bn=Z%yqYoK<1#hSX5H9*^uviKko9g@Rv6 z%LoVf>ki+_Ur=PVz$)~82E^#!lh2-@o^B1#V%lx0{USDz`GTM{MUGA-&{;g(UTB6Y z6w0L#Cizn`BtnRgZSgTGhsf3LleRb5Ttpv87WE`s!h<5Avz6C_ldqGA>Ej!$_t2Tk zA>oPKM$m*iIlhTtojD!k{jd5Y4_J=7)+7(8A7;~^P4$?CfiE~tU*kodc34|^V!jk} zCG!Oi?iP3L1rZ73;?*qXz6F6%z_E_LO2@ zTh}(IdfgKmS>oeVP;>kzHe^_CvPFb!{(gK?yJ5E}GWsl$5Xi97aF;7oafXk*T6Zt( zKUJ2ftA!7DP_s1Il{JeK(CEVYq<|idrfE@yP@=tL`BFne8+LW>#PxaPnrR#bgh;%} z{6&U>Jzp--GG&Q7;hw4uV)|+6xP%nDPkO%M*Eac_7Va7}2FuaV(JF(r0Iy}VSM;l0 zQ8g8jj6?85XoB9GRnh6fw>Gp90r*eq{2v_1$txl zp=*?IYS<4+4i}vRe(TLPjvsxKK;V8GM&*%332=~Q2jV1?tNu&){#3QGJG4#4iklL|D!hNjyoCd-y zzQN>3e8$Kp9?)JSad+sf{8oPd817|#8f8=TvYsF-S>k7_)90RtNlfP$`u9V2w6IEQ zVCzevyF;2P+Ktb%q%b}St*W}cY@2M%*EnB zxL@5|=#cnj_K&OX7o~RSTqZ@ABkYRX4aKwUYENY7*PdaGbczOYXaH6x_GfUW_cH&? zR1VuM3|UyA)7cxiIqjj9e9Et{JbE|Omy_Q+gr^sqQEqx-S2*;}Yt$Wd4y7c#{!zJn znYs;DhX8s6E>gy#=ix<-IpxT~X=mhkO87!%^1>y|C$;OG&O){P}S=Se8-2)#FGB4TKGSqv208R%{2)TH)>uE5! z)`v%hFjfL7@C*2u4O#biv8t#pMK(0{3Xz>@Y&%rk;!pv94S1&4iW{^w-?DePjnl$Y z$BL8*TG5webB1r@Z?B48I278?&F+J|q1Or=6jre_eekt5rK#BM>74YE*!G=DbgRUd z(HBbM9y>8ZB`)h^CvGCqDx}MDo@Q8nfR)H>Gtz7_J{RL8*6}(o*>rg__!Bazund~%%<8;tH=*ZNfR?+KZFHgjMc482;YGI zsm~U@OC<2IetJ@7o_8)=5>W@oV7XMwZ&2MU`qctCN7na$Z>1bR&};>cI(ZaXJ}=fY zE;*%|%ztw5vdAB+?2!7&429NQm7&ozfN=ZxdR6jJIB4C>H}eUwfz6RW!Usg@j|dJw z3m~A~>ENvs7QRWxJ#%EZHwspFbGK5V?!CH#BF%iBmAC#o2Bz?KFp3|sPd5K@WD0u8 z6nOkde{uudTU@YDh(;k~Z;@fq;e6>-pw1>}o#K z@FxWgvqq-EY+&pXQ};Vzr0}sNex$}&>-MRc^GK~_R)|Vistofv=3&h%baQnbWqq{< z#t6REKf?^GNtk*CIL2B?S#F!D3lTtjqWJtK6`j=U&%H%kxPZmw8r%MgEaG>_rTBd{ z03ardlGY`e_Nhu+uhO(+nyJ#bV@SSE$+Xu(!!%g;0DlE8Sv9^#x+coBOADz0M-E7(+vrC_rg4Jp`s?f)A#Wp!>5 zu)N(|ER+Wj>APNeaJU7CoX)?g7`;rT7pK8w|5IVIzm<_{!{kP+Ht4ihWf#b82ikop zlA+NwLCZEw_DJRd40fQCN>IS1fRqTTPO_mK9 z&ALg^Q4lC+E)wvZGe+M)m<<)VLDX5OE6bN$z?GB}`3@{p2Tn~FzM6lU2Z6F47@?_I zG$qnYwsam)+}Hf@fX5NrNjv5y;HmBn8{v&6TTJl1U3jZ~>Uc>tH&IbtEhAae^)_xa zrN1n&_bj`f+H<6svXN134$4z)rjQy$pl}wr*L<9kcJYsv0lHb#;j4X{qsh1WS3p+< z?zJ0z3%H@q^~g}nS~8r{=*mAsu+)A}hkdL61~ncJ*+mv~Ro!@$A`DU-I^;6Q0<(oP zl&bC{9kr#*>ZyRH`dXu_qSs3n`nr~RF#8{*uW}%+k@2pU@%n0|+rHJy>;Ydw_KHpt ziW-Ht2`cE&mX4{dJ(9%Xes{?B9~10=j*kBBnJ zAV~?D$YLS{GLXQG1Vlkab_F8_6-s6xRD{Gylwn9~D^~mcwidTmt5w@70_se{l7K6M z3xdj`z#T^*Y++}9pL5>{3EJQP`9IJ9`RhaGeeZksd+s^sp6#kNWaP|@&dJOu$6)UN z+9!G6bClCK{2DXp>Efz3-&Iv}-I2uDt^uAY_A1395C5#Ueitr6w4`7DGReo|E_Sn%x_Vk(($JL zUEz>T?c%*ge*N4hlW8i!t0>N%-%N7LJ+E7M7XE;K-6L5L>e(W6Lxy)d`#w}j&&Z$2Py6&EH)%f1r8u$N9`v+|6|UZ1X=2;}@iV@JDE`P<`_l# zWt)G-&o=)I^~1SeZ2tC?lFdI`Hh*_>^UqfAlJS?DfB$!8-g$cG+dUmkl=9o=T7S0f z-=aWxEpQC+*Hs*lZ7-U*iLSs3M>$m+ z>-MyEt~mxcg#K-}b1EKDPf{D_+HZkg-aZYzVS+#(Dl$<5#x7IP5P}jeV&ifdN)XTm zC3KvmWjvTPh@|O}r2-UX_cr4MQDA}-UKX72GW)FwCv5muaKdGU^L1fk*^|^vztb3W zGK7v`DlzUfJ@h3MlV%>HaAdBD5t8TYZCENvQ_Ou`M?2)2K~m^jX|s7}_IOv&!EFf1 z$S{ly;eXJY*|XTz%pjGf9eQ>HChhG^8v9Mg+;YF^0exyt+A+Bz=Q4g^ER4ds|B6K- z*=CEcnY;NNiiXxf0?nN%`=gd89{7wu+#2~e?qyyY4%(c4k zh`A|Km~}Yb7)3_paahHX6h0|ayVx;66-+y#uREyxo)q9$=y5lZObxj`~F-E_V zMxicX>82gmniR?T8=Z4HQ)!y5AKgVxfzkmnIxEG$A<-FXBC@f4X7ZUc)Y8*>lZA$x zl;}wm;NfI--P9vmfQ$SoE0j4?&w4j$(Fl|#hn_YO zYipf3RsCz`FEbz7X=YAs%KQxpfrk^+=Tm-}xh9r5p(*nlIjIGkej8=P2_a%M9_tdi^=--7>8r73rd`H4<;bhjyfVEREofx z;6a{QTVGfkg;3!;kx3is4@)S zYQ9vLSoKVq^F9g^%9C>vg>eCJZVDJ}#;^NRcf9NF6~j^3gNlEp&62VNYiR>OAw;Rl%hW{nhxUSV)aU@(fqw6y_n~g}=?H1;l&a?!`SGdX zoI;Iqf8QVirD>tpIU=kp8o0@QbSU3}aqi#kbV zvh0WWF43y(!G3IKF+F~4mUa}oBN%}(lmxGtaA)uoyGIgcnF-T_v*wvO#+wO?f~(-e zCC6}`;PuNIWT}6lLIK*t3qiS(lCJ(r3PTIu+muq0I!zs8sbGejwLjUyMa>_G*$oE% zf{#c~v;h~<*$=CYW@}+z1jA4dD8lu-Z!8F)-0$^5G3p*nSCINAnMHXlJm#lIhUebhhoUccESsoGjbSL8=G6oV?P}$3I#4bXU(CuaG z8Zj#g9e}#IaK$j?04Zb?$wu$5Oib{|uki;2TD<(?W`WcJbw*RP%njoNV2XtbzH&u3ITnNFCm5%w9|R{~;o=rji#Nqs zo#s3DkSE!9ZjmQRja_q^x#R4$_)#4Y0~~Q+-QR_tMO6_vxpJ518YpNQe!-hleFqMe zpId}vmybhobpESU{V?DSNb0cW2WBKR29hmcq56KIRVWo3r4y4kga)t$)oD~)mobYI z!MUQ|LbFsf99O-y)hy~lOshTaMS|BJO|SgP7vG5-c}mwha(S}3sw*7{ zx;m^iv=yRMl}t(zzczk@gOL$3V-ke4hKc+V8#a-Z7R}7Nb#lDr=D-l{Je{T<6dg~@ zmH8G{=H@`Bb4Ar}IX2Tf)4$?|7tTa=6cA^xk!d;#h$p2nvG@k;gpA6E@O6=@plW~k zo(2H8D!WeeoU>(bGuHJUOvX;elk0IEQ*Zq!di8qlLMAcrnm+i6UyQ|KUne)iYxh%Q z#0S`=xoUs3`#-EszA|_Ff>YqVST^IyTAed!$%pC;Kc=S40fh4EzaQVx2PhU<5a`-TV zZO%{0{d!?*ve$~`UxyO+w9q;jFlKUx?+gs*QC6i>?zhIH1ytm&J;K#oxb~B^)n^Jz ziIeoX;+&?9D{FkUjqdF@tLRY~Rb8ZMUv#kXm^@KW8mwFq0ZaPhRHM5^h`uutj0YQ( zi9{G$UovZ&g!mxlJCNbu;on*NW1@VtOM;CYo5j3Q-}~5z!l)$qE&-ZxT>Pl*A*vI; zWn4f5FjR!Y!#wQf@zf!HXrlx;7B`7>9rX2cKiVa&d`c zyq*l75v(!ynA3P_lhaCgUd(%mo+3ANi4R4-|CsT{R&L$O{ebdy);eO@l%!5HhBt5n z8rP9E2)^w^Ek~tZLP4!J-q;R|>I!QLtTo0P8zj=xQQsaWpumw6i>=%;b5v)pcUtSM zpGH4br(2n>KUX=c#|*5hDH$*k6%O&%xkxO7OLRXn9&HD*q1iO7JGTGmI}3V}-8Fo@ zG=SwjVq+Jl`>c$^+^g^yWQ1kzvlVh6Yr}4pY!jW;g;sxMOnmfKOgb^af&a^P;!I9) z*Ghzw1}^Z5Hrq3 zGw|}Kat_!yuF!hI`TpyWV-#6~Q9YDqBTpd8lZt21pt_EbX;a#@fD+F4hk|-I4snSc z1}fq3H`eDDfif(`_4zsDk1*g)#ZDP9 ziaY-bM-5-{%K76-cGg!qrjWBc|2v^S6Hr-M$e$+J^`GvAfB?k(0U(MAu*)BZ%r@?7 z=uG5khCJEiDMy}|F)V+ae)OF+3`~f2RPB6Ologd4lSx{Ziq*@P zdo$*ZHUZc;LCw)k1@Q>(B2Tc4j7ox^%Mg~|3kxZ$SvsT$D`RY@W$bCL>P*~(HrXI1 zg}E0?ujEeR0_&+u(}r*LD(V#H^F0!(_8E-rw8}&U$4HLvbSt)wkNr^e0Svt-HVeWi< zg8-o zwh-%mnbKr-tAf=XeilYjl*}q;ly>uc3nx_R6#w-)gw;m zU7RX|?GP7t-F1c5Q?fR)k{97D857fZ7j-%PnGQXwRQ4#j)1=nw5lWXgXY1-VajrEF z%q{iwEuQNYOkTUROdwWdDdc&7hRn?qG>6yC4Jp&+y$!L#~uF}7;Y zaw5S<+g@^iq)R9aTd9a>84YdVh^gM@spP>+oX1zc5e99*xzImNAxu5*Yda-ii*214 zXrFu5(*`Gu^Tet?M)>$<))Q~3PYHXaV?jA_YC#`2BZCxOMolguZBao#h9U)>xJbra7}+;n(E?6z7DUn!^;Uqp(`}GiG^Bdtq2$mQ7WQ zt3FORLTK|AUJp?;8QQUd0kr#Phn+QRa+Elxeg&2x)S7>D zZ*eNmvy_v)Y8bq(FoLdXhy&SOVnGH!ZkK{;SFxayC4FQs3H6W+)u0|Z_B@LSN=GRh zL$?Pr>k_$|Se`_ILf9;)Pgs)OYHwenP1hLy+prkH#P#g2#5y+5s7h>OvCMJ>5_+?4 zRQe3Dv7@tGz9GHkfsVZacfhE=Ccgw}uTT7lr&~YH!SwX6>Een+oaEEX@+`scKgq$1 zGoLeZ51iv76!Yc%N0&0x)ANu;BtFj@8=h&O;&82*vC=G_8p!kWA-E!tXHk)Xa!O+d z(53FWOS9?|dcR3mU^3{Z&(V90^h;7#@c@c6Q(u-;IGd8$(^TEva>QfvYBAQ8%q&;Y z%p(I%`r}GkajsU@`Q3cER=k)RyhlNj3E5kafhE~2L_x->X^UVoo8N^Gdu_>#iO5wL zrUze>q=rQ9q~sSPEX*Hk8Y26p&Gc#NHffVwqd3R1N|M@nni@i?HVKZGZ=FhP(}7%d zt?nPL(h}HDmas}E>{gHPo4t#5qz}6UZ{zzsOUU+JGo->CEE_&lYKCsfsJsadUpNE; z3A(sgt7a=v-|I)Deg2vLwf%LQ{s3Y@J^aAbd$2!5A+lczP4fumQtBFPD96jC>i($=r06 zS%e>^hDfL>IWVCsLN@A-ye1@Y9$p>Xb_YB3m8HZsSvVe;h3{0dIW|qojLNZqs-C^! zC|#hyF8}axVm4jbpkeadY)>X@(&Kcz_iBV~J=E*@2*8C3;wi!08kH$hfv*me*$t_Y zPmp%7S+iV&r#L1Wm7mKV3JjlE6c|1O$DJKQKp~WB*+NOD5;=i>BvAaD1h(^EV%ddH zD+lP1Y8}pOYLYoB~J@$mNy- zd`xUa=c;<2Wc77CqH#KwQ*Y_Qdr{y)YAB%Q0N6qZuX;z<;u*Fk>nU>wUJ*La23EuR zqo)e=XjvlY#RWlTV}^F#AddB35M9pw*!%XqR6NBjZZV4o@7!#^RD{fJ$-HL9pL9#Y zPi1jSrf$x1Bj}Qz#X2fi&&ahgOd*U)S@@O0oh8lT)*oOWEOyQep)8gDL?)bF1=j<*MVlY6y$PPIG0%eOixy_rCbBQrg z0?c#z%rDB_;2A<3C`4LZKQp|1v30iPX5yRV8!Nda^C_I1iD8WeX%;=chv*MZlS&>Ne>nJv6 z&ZlK#tk}wbhG@IU{|QO@^QT4nvpWh7swtzgNG*|=ENa{ooIm_thANoeA73PllQ3lS znrNt?)@}=6>8onoMgb-pgJ(h4wlc*QPj~jae?2?ClbSJy`I5;v3vqG)xL5=*b?T}ydVg2m06=IeC?gRllImB#X4W!+LQMxD8KKRAiy-}pZcyJw4?}M1 z3j*ochl1B(lcddujV;H*!A z{8~y{-xX=4zZCk;O!wvsQ)F^Ey<&`!IxUkDxDp+U!Keh=8AV#G+?qP3QwKB=H;vtD z;v`c@K8{}wo3iT0vSG|v@RDnguuOZFpNZBd8doFHmk9(&%Cfh)xoJKzp0v;pxDlz} zKLK#Wy25EZD2dX9r%KXSI@VCsRlUOT9=`&=HTrjjVQ)Rxe~jAB1mxk++gIlY%|qL*;80@ABJv^9gYi#{vz$wVD6j zpez>;%Q^?rFCpF-B7MAHLp12RU5ga|GP4=mHX+)lvvK6=Yobj5S1$i{wSP9_Vw@k{ zXU>ev~g|N@Te{;H^48#563*@si6DJhnqEtPE%NM3A&m0r9 zZeysSciL0Wm%rBg&Zrzlk|yHy>e+wNk;L-uFnco7+SUISWZS_tB{`PR*b|l{mB*~% zmL_V6^paW5sW9WheMLQegUf!!iDsf%t+$sOi*Tdz91GzNEQKYjhuMpIzX*p(fxT@z zLj0#B_6t1pL^_Ui8--bS=>f>)fO`Ie6Hyh>nTs3~1sNcBbe|&1E#gUHTg<|52iA(i z8!8bt1{9rxHd@7m=qC~GBS5!jtd5zO=1`4)6CMob<{Opo0&Q5h8kPSRu!E-CLh*0w zwdwI5jT3x=%`R$+Ub>Qs{T_*Y1yA4t626cLw_HR)yyxkzd zj{WP)Kd_gd=|avtIqorLin`1{9GGPFW))4=W5@%UmKNQ&=dOR zNe%tr))L95$cMV+IVILSjL#gL2pC{E_ng}5+mqzG&>EFRi5&r`A}v}INcpfEM+Ppk zX`Q=yVIpUv$d%mj<~v8k;7J&+pDh^N@1NwLTW6_HG73}j_(5p0xL;7W%3}spCx)b( ziru5lOuqCA=_xW)CPzCvHZ8ukor9?T!Xh)=@Dh%yF8Xh779Lt`mT@AfJY0b$_F6s& zgdV$!%c%l+@$@kG4Zyc;Ymfup$QG zx-O~fn@UEY&t{^zhFyVP@{I$*EX;n@l&)HHmEf+PBJMgk6ymSHNi@>emJjXc?Nq+R z+Rw}7MRjq4zG>6Kol&!`ZvOz&3*l3@&#{rM#YJ*r3}hDvqWoY6c*40>P#kIzh z+9vLt61IarXp3WlG@Md9Itk2xEAXd=JBfTRhW>J&Ect@Bp=nYtkt{v{O^KV(N2n)+ zlbLzdBhGj+4){hk9SlIhH|8noKMbEXV1=vtkWm_);r0)MtI+~jyRbK!67!H2-U(Yl z14xJ;rCewWsM6fOkvLGL5Y3;+0XCCS&d5HrPBAX93rg3u4SZ1}tg(E5lY9WCT|i@= zOk%R|IL8ZxHhAmh(+ojv@V8+2&`^CO=du;`uQi-R|E_jp*$?HYk*$n?m?>EIkzQf7 zh+*gvc~Zr(gxK>-34~SUromS%ma8qE>#+#^o+cixllW?!AlO%Lu+y7Vrh%Vad zPa-@nwa#UdjHfn?AtV(bQ<6DNRX@nB7!pn3%_595zz1X9Z^2yMhp64!4sP0z@^q* zd)_|AdQeY`XuTKY>p4kN|0)-7VFd8xXgpWdX^kg1JMZq!0GFqqE5O9Lh>r_R4hk#* z(XXH@h;*bLQMWDy@^A(7O>uN*W&jU4CaNK~ioD@Scq`_G{OS+k4ZN_}47Iywl1Vq^ zP-Vitm``*s(`z9y8?j)#vefOee$SD)42D@H>7EisUJxBDLkT4Xlgv=B3=_b_P*ELc z5zzvwUm)oXpS0^@mAO zpWGs|-D8aPfIIq$bNNUs=hq>bo|D>RMKJLPOUNHchV_WW=xUN?wvef!st1tq@z*5M z?Z2?bQqB~^u*AS_bBP98pw5#h;h!w;|B*jXZ8X2vdx-OSL?v=10{wD|-5Bh+_9poC zb=pm}!-(?51A(ZK_=1#k7gL^R2)Ew3tecRDN8T5*fw;zu$6^L`{auSB8-nk4HCpXflGu7g`gYNb7j+3fV z%WbyENbWR|o*hwlQW;0dETMo>c`2ds1w8>@RzXT_T+vO#>k_guh2uvfWZkR}gon9_ zl52!8mDEwNG7&qC@$V0RspSN)cfQLmQ*8k`MSc$763Yhi&HTb0USN~?z%bv|$a%$= z_fvZWlk>0kXF5W&u(Q%LxR1a&WBd(nedokW-684fa*1@yHLUo_B|IR8bN+K8n1voA zz6~Uk-UXgci3V#Jv6z;TVurp+gO`(>VEL8cXT;8V$29S@aNpJ+6B5g0Z^yU|IE*WwU9|WW?ln zagjytMw7&@5Xr2}B!CV*hPM~=d>_bLPp8)_bKN00XP?>d`>RYsFs0t=XlyIWK=#clj`3j5s!?jr{o21y8q=DoeV&k zAQOZ-_@H`fI0yRdA6T8L3bsF8^sCa4c4Me&g}{*iB9aI*vHwi=+CmZwxo{T4N~dpg0`tK!Oe|Sos76RM7&=4;mTh4* z=s*N(*dyVQbXLq)QY@(ejql-9aXvpyS6zWQsf0$Atzb8*Hql8iQ>@GH2nO@z^=Jnr zHL6<6>cW2!4h>TRx9?tk;&BH_w%F(smz`p`yNx&Zoca!~>NWF)WObbh{IJ=IVHaeE z&TTRm<_`94a51DzPLsx8&BT=Dg^3BLhII8@HzaZXuLL1C-mHWFaE|=d!d7nMg-_-~ zx9ioqGU3cQ4ArSN5=?}g%iSn!{z3@xa49@aNhabz+_DfR}5Mw$_=IC!JjVwoYctMf_&3m{>08Hi5kMwWDh!na`YJ! z7$mrskb@Yy`A5J$G*>vptPpTVZgdD76Oo%wS>FV)hvWEaAq|fW0HA$abXk0e#FGSX zw(MypQoY^tNHkn6%OKc40Hcy3SOV1W8Hu5BGQ*u_V5s~NuQ5>HJ5$qZi8fEM!EDtV z=Yo=Wy~$NwmY|Z^xPbgxVZs4|GwV7%W7m9dD1NzY9<2SuXLR=>nb+L_58DkPo|;P& z%nsd)b%q(DFR7RW*F^ebX9bt&tUc1*={smGs66crGgQsP;a|qVEim2|+H9I@t?D8Y z8sTyT*|#`thW_(80R9EXK8BkR`L3DvK-?!Ha4{oLx^V)IMjvlX{B_$ziSgB*TDZ+* zp1}=b{_}3%M{EqBlN(nE!((#??ttY#HqpgaO=VdBWiKHz3< zp9~XK1luS%wAbwLcEC+jpT@+CZDD<`8Sx5!p6hZ2#YX3BLt2RtYRUeKNA)Lp{z_AJ_B!oh})jOv# z@wc>Rlm2+`@twY!APuKeyc3I&i$LCtWu2G@cVJLxE@+Q6+d74%^&bphfRuA*bKX=6 z$IZWv983ZeF*cPjpo3u-xg*o0$IntCl9GKW(puV(kO=KHd7jvERWz8rH}x_uQd`f< zTp`kO`_H=q{f@FX*ivr)LAVLMIloiA|E96MXT})+PvBZl*YdJxCgDJ$HK5bTPH=)d z`Vo)9z4*C*gGk(*m;~#;`?P3@>*$oQYZ9Cx*A*DxFjlvM$@E@>B11T!zmK5%7;eCh z68xa0nwvX!yh)nNi+msI%__l*FhhML#*BE%J7dy_XJqZU!{~DuF*r@K3|k-bPIxcd z3{a`bAKwUOX;gIubkx|RsIEhgylJO%M%6r$U{Q`HCtB()ov5z~&D+89f;mNXB}kJM zco0BCFXPAVd97*pOp6{w>)Ij-ig#GuIz;=*RCSkX;o7i4v7sygPTjr-W$hj=AAv6^7VhTjwCtrd6g4~BxB}d9Nawmj7yc33jyjw%dHG3z%Rlg^1xROlj z>A^_NV$IK=ly>4vD{K zv-<27r#7|VYVZ8Faf`5eQ{XcofON#&fv^n5Y68Ch+#%{0D~=;T5ke)XST9zFbF~{b z)9v5qB+QI>nQQyMUo;5Sr-Qn9n|#nK<%#?0-N$qS2Zr z5iSS|(E{Uz3#Aa8hfh;L&Ts>ys(8qzsCMDWk|Wz;S*&mgAOmk&#mD7j5HC8F`|1fX z7u5jfi(2!RtorgMpo@qBpFcuKZdMNtl^eT!KiTDw0`qva z|0o;)mYrK&{_jid)7FJ9iTFJTWI=8;`p0?HO+JFg3404avc`xIK+@+PJ*{AfD?l8F(#g;mNanda>b_dirW_# z%{<8k;9_Dx5Z^fO^?csJX9A#klSB6~`RdPT7$Wd_B53yC=|1BEhAf#DPp0JlvDd2(gd1Gn;^>7o$7NqDag*%X|QEi!t=T$yrTTK zRCb!nvSaklJVko232HF{9vnns;VVb;2@N^*C&1LJU(tghTM zrOAQz#s_{bF|AFA94QFod6`Dq3u(T7^D}Rnjl1Im*BK*6|s~kO!;o<4ljv+6^# z7Vgr8igzPST&KuCLf3+(Ob5w3o`-a7k7FJgja|Bv&RM~z49AjezCEcV4nX!_RQ=+m zZi3M;xFyix!4}W^%zxa1)w0pF2i>ZMT)AuQ4AHaSfsaOtaV^Qx)WPuu)Cm%90+hx z2Dc-lCUxa*DxJ!r+dZQLo!;#3}^vnn%an&oRGLnilBvvhyu# zC>74p+!)vEFM6rv_$3V&#Am+2>12%cV&u0{xpy=SwN%|SPoAaHC40tE&jMrJEQbv; zqKHcSs~Z1i`PqETm{vP~a44JIh98&gig|BZ)uvT!E4&MOi+Nc=Yjvr%?9h}3os*8P zl1%oH9hN|s!`PUj%Spu%$CfV>knZj0w0&iu0jDQvm$kU(KnuyZSPh=KT1-mU*cyb{P+CE;jB-S)LV+78_Gi zwp}m3i?`?r>#Qei-M;~T|91@fDJqI|4jn|_s1u2^^)<;$NY>gkK}Ib&X<3r|&}wqC zqdL*qXU3WMAwTpni6lHuLTDAdl`0|@Pcz?w_-~0QW{t{wsgmijy=i4)6XeRvL5S!d z@@DBPgV2W6$8j(LH=(e?Pj3mQ5lUSzKkQs=m>)rwPqNMn2VixVFH zP(9~L{u7HYci=kC(MIJryd&4_=glyJUMu9TXJ{*Q2wI}XbvK!OqreExPAGqbP{o*c zZvxp7@{Q=zsp_}bM2HYzQbC|Bm4I!H=ZFR%O?1@A??%&eITFq@7@X%bF~6nrdpVXwqp zqS3L{nQzPVkEkoSF^WUP5N>K~%zzf}Q@x)Ca0NrI<~#De9u{vW3a}EN!?1SyX#s8(#Yeu20p3 zvZ%87J=Iv;RbdcT>mp$K_b}R8@^(z!!LdtZE?siOf+VW`e!tjM$NUEy;O*n#9e|#E z&6_u>ooFB!diY8vTDp00x$Hm296_zixn8IxVdIci2(VUtqcMUo5HG&^vn9a5kG(9B zJ7Y9H6&gQ5RD|euvs|pEFycAE9yT~`#VWAUzh5WXU9_lnujZAr)Vnd_XP3Zv5kxld zuYKAZsfRM)QC#Ax~|}e}jCf58aN0R81*i?4UE$ZfXY~Fc_kEYVc8HS?Z;9 zP3bhdo~CkHcG0DXxB>p@8Lxz|*eEoXi8%s$FsQ#4V+p8F;gNRpy_n%^wkx0A>#r@! z*ee1hE(7{NbQ}4u-1Wwa%`Cp)&U~%s71@kzZ&miviJ0CWZtvZ9V7-Qe-L*hR+|I-Q zgKfZ3fFhLIhupvNz|Db=%$^H_sQT#68=<>&u|^e`z@E8IT1qdmIj8H^5HzYa*J|)B zYYo0nw|fo}{H?p_8N0W_`27mV7JNh8JjT3D4SYab+xs@Q3^pccFfBBNRWtd=e3c@- zeMqpl=7B{TDhzMMPsb{MB36QvX9_xpPDBl^Z@{4whqQcDNhprx z?h8khKbcW?MP2!=R?C>dH!itW2u||a{=fvoO_E5f81F^b-p*Nq1gjo@1T*vr4qIKE zb?w#kg>++HdcNvGM$Q6wzyB;sUd2zRWhlThhP^Ty$5A`9!3&HX((itO{nCn6V+K82}JSHEgb_CByj*w?O~owXH;x*!XBt8Z!)noI#C@j zl0EUBHZfJt(;0S)Fh#JIuQ47lw=l!c%)?j)vM-`PW~GeeV8;nmv{ZWn)ETMq#YXCA z%vN4>Y^50I>IB?Bj110Qff06bVzCSM*g6+6L-{O6@+pEpQiK zR!gzpnc%zICcnu<7*c;h1_qT(I+s8MSFs?0WrUm_Gg7HYSC=L#)nayIdEVAWJ{eVa z@gn#l%l}(kU}+h6rGAyC724Gi&L*X( zEF3*%OoT0L&snM1NUuF+OwlI{G}J*K=RN-T6|AQd! z`aGydu$5Px+hz7k20E0b*am*rKkUA+|g5-v^(ST%cYq6R=ts9xKqny>ZO&{++NGQIs{ebw21 zR1RK=UK**TkDV;u4icHOdZh+mQ1^ug@jPwXE_cinR?XZlE1zoO^qAomoL=ZTAqU;8 zB9Mrx!>x~iz}Tq!d1%@w_(K79OOf7l-sIcpyO{z)JgVV5{MTMAq!&e)D4?8ZB>sLB zeU9v-U?mT z6Qeo76lyfxkn77#_v5WYn;+nXP9OJkc}9d zL5+JDR}VMH0q#-)0;wmaGe|70AOIpcBIdnwO0bJQ*6-G5NwGM(1(PxK3En<>rPGcX zchN5Jnt57zm;xb)slp&0P%l1lIvNSF7(N6mO`$~8>4iVz8elPSAL5v7T7WGFoY#54 zo+6p4QNRATU{6@M53dBlnc<>|pe$&^cL7z)9UNyR7_?DUBu~<9IkO>(LX@EPt%Um} zjQ{{1(FEeHp$yD_Uv;p#C@N4&E%-RJW34nziR@a{!Xek zD@h^Rzi>>wrs7d*Dg%DOvg$v)y!xl9 zQY3C~FaQmMmuXGb$RSaJU(J(VqYE!i~!R=&iX}U24dcYt52o(Ro!A5$6abdW09VWJyzP3KD6DY3B}Q!{8&PLK6kQB)7YlC#evmcHIz`j|-gqZovAp{)>KQOhi< z31z}@MS5yP(VXQtTeB(4UqS~kd{FnEBM3<}@;l+AHa-i)ma!EDENay0d=_jDk`HwY znQ%EXg4oFQ6@^qkeE6bhGfstnT!J`P7otQRCA6>>OYc`Np_s_u1;yYSIlF5-@{d2r zlq~A3HiPLISQ2rxL?Ei}kPnAE?J)$-j%plEjdu?@B6_joDxJQylnD6uxkOz7Y6~Pj za5#ZWf)b0@j04VskH~=tt78+tJw)R)eW*)3_nrY87+gQLKL;F_WaR)sEvY zTfH4%v*o;PRGpXQd1JmTPohDF>|Ij5DI)XU9y%=(H<)9fnIg-RkGc+~uf#r;t*JWx zjiRLfigRCi&h_3jzz>Wt0dvzjVb-HcvnQ=_IgYANGSJ;`35mU@Y8WnOMUFtH)SX|N zVuKQWY%YsgGdi!7V~Y1XI=0}DIcf|)syRGJRq;D?8E+`iZw6n30mK559{I|wD;eLH zBrzcv%>c#r>{WhSZ}9iKf!q;)LF-5$@k${9?WLP0EImccHV*gC)}o-yf24irNiB^LQZfW(Nn}=F;I;_U zL36kL8B?*^z`)hKXV(ZW2QAcD1tRlaKSJ6z-!QHfT8}Rtfz|8c>bVZ(C{eZ(>a?v?W8(s!=*4^sW-^h7sQ)uHr4vuwd z3M@gWH^*rSuXPJA__FZWObxQ1&6c|lH8WIgl3^gF*+~N^5fRgF z$3WvkqI>4Yt~pzhdln=Q&;t64YG|y4pAw;4X&a`PkyZ@Br9?<8d_-()YI~9%Q#e;d zIq;&X!WN@O$~XQ1e#=|dA>J}NFyy=%c$e65L1nZSN4WWEli1jStF>NF-p9&&?$x;8 z(kl8kPdoKx644*Ux}}eFU6)Q_C#a!UnJRIVBbPugM}wYG6(Oyt+6)A8sjV^nAohV) zd5se*t2}Mh{F`+1R0 znF`5Dq(p){WoKt_NKnTSlE5-tC08k^zoNnt(j8Tg$Wxp=mGT6<(6VQ4%{ zCaz<6mJED5$PHql^>PY{V;MtnETdXZW%>@B936Q;W;nH^$0RkcvmS%DH;cNot{@?1 zpd!pHTrLKs!E}@R+ypBlocV3O3q6*mlw6!BFx3+Xh#2|hoAxv($n7e!FISC+-`@b2 zC=pZ5YM3an!ct@byVV!x>9ddEY-j@`Fb^i&Wzuz1{1daz5Iw6On^5{|Q=fe*Cunb< zqFmm*_9j$h8e4cV_}UkI`Y(87Q~ef{dzY*MrpYCg&2Ql=?gmEWmS6vNB;y@bd$x&C ztS;hYg~1YtRif$%A-b*??&NaFKt6m~(0FZfeB6{>CN}&i7!I^tk_QK4OqUIAQ{Q93 zMq)z9k`G1AMDk1h>!QP;ya>FJcd7e30w8i4_>cndI9RQ;(gzN&O}NWjmx(9;$s#K; z<$e%_Y$|T?Vs=juj$y(}d2uQ@qHfaJwAg%io@wmX-swBPWNBNDwPXF6Cryu+BdRBN zVG!y=;&iON+2_#dx;f8HrceXBDS_^`s_XgVSPsMu6>S8N9&0nL$VY5>75v z9j!hQ4NG(Hrm)*-GJ@nRfrTtfH)t zpyaHQH0P9c=Byw(yr@H+sg9qRe1et><;x*IU9DB8g+gwZ({ct18g!4sipucZ{z5H2 z&Qg8&z#Bqr5hh<@zR_2#ceolk@<$o#Ncw~6p{Bp^!gf!m$hD0d>_*jFpn*%BlZqid z+_+XL2ujQpcTr6zr*A**1BrfRf|)(0r77TBf|#6j1k0#Z=s94Quy%%$MIP3wucAOt zvCmyuQ($W_sJ3?bYiEDPEvWKlbEuA3S zzJYKS*`dE_4o?h#T!)1T5S31(n>3fekeeDoqKPB-t9zmFkN_B#$zrBw&WRVDxH+u- z7{-HJ_M#0T#z9mK?7>ZDs{qb`Ru8p2->E;`2Z9}j__xU!f|QtTnTVQU&(+dO zSRO=+>W}6_C+)6;pa9wCa4{r`lZOVuw06uCYB*Ghpdv>@sT(N*I*wKE!N-b?fe_V+ zVrVp5*ok~N?%?~dC+iOC!v;1@V7W1V#3;@Q!o$oSkFDEn&hfXa<}*C%!DgL$FLC#ikS@O@o*Mg2}ZKUvg>%rt`RYV z?{q6qn$vipuGCi0HgnUs)-X(M7jMLxq9(GBn|ClJLV%tuhNoi7w#Jfg0&!a8ZrKev zAsL@gu_>jp*NkN$pmePz-v)~lx3G=B28s5ja%yd=MMJNrr+NWTZEyhl*`|&osa76v zlK7N)W+8-*#Ip+!5v#?TpnDgwIg>F_YNsYQ9yYCgZsS2{^AhQ$=ROhFJw_E;VYJjc zyY`T+V!!Ymo~hbm)l?r`azBy!lo6{-mIm8UVqQ0@(T}s{yX8qDjYl?wY`2TmgXky6 z{De_YM4XT%KV;@8)zf;uCsBO_y<}?3Fww%KT)gxqheo~&;lD-y=!H?o!Njt*^MbQA zueKZdDsffsg9L=uvve|%pOC4=chNSFlJB2sEz5W6bwTGcr(tnhju6&hW4czUaL=9A?)X21c)0x%kwM+`TVb2MtxTOuXs3p7 z(Tkc~{hA*&&jB}ZE+}=c+iHVc@3}(L4b1#S?3sVuY0Mp&R%{$e{K*ijfSj&1Ub?x! zRbrnc{D$Hn20cvYo+Dmm@kgaGS@k2bJX)G}IR}Bbl|c3R&S`i>yWg8W+;v;=_~~Pu z6`-4F{6YtDFx#w?xL&cUCeRl_)477)b7$mxzKC4su70O4;8l{Zo4;Q-UvF<}{-W9} zCqtT_-vAST$geKRNTum@7TLay>KuJ6iQXl3J1TMt^FB`ZqVuZB!ULbCg+ob=RrAD5 zs@dY-Jb8o3I5Ab|IM$W30_tsQfyBn9YJjt1=)S!t_jvnC^9f7r(B}pDW{s-0i=L*e zrhYamI}Q9d21}NsWbPz7dB>$r8kO4x)YcVF9O;~3x7%I0HeMtm!8R=#GIU@Sc{z~?18gScsGiQPHPT|L+Cs<^N! zneBcb{)T$yweI{YnE@u~RwmzAZOM~Eu%{L9baiB?yLurAeDy6>>lO-7#pCwX|WvtkM1 zA-%awZdq({XLXj1(FjXB+nisuffQ%s$XV$aL^qC{A-A^C<_~Pd<|*gHlmw)IeE1zK zR%E|C<-d)Fc9$v5iY@hG)?0lbQx=^n^Wma56*;N)lgA+A6nPjpFDABeg4Ju2-&Pjx zajssl7`aeB5m04z>~x1s@<8+IUqgz(CL%B_(NA8+{-tRsb@_)l0D@a}!;@*)sO%N5 zr=p@Pe(Z#i4B1v98GNsxT&Dxx^*?4TWBp9nlc1}!XtNTtH#^bk>wAKopFfE&S|_evI~Gp%18&TE=V=rXy8k6`$GR7Ct(e5u1-jDMK?R~>Jodk0_&I7hK$-m zWA)e+3FSc8*Sr(bvBzY}@UOu5ZLc%%P^Mhd3R7c7tV<*^;a5dynQbM1o*doa@l+RH zl*UqsjM(5JzGA92-s0dax>|oHy_<~6aUd@aTEZvJl1CP{>LZ$g)XI60XigP!*p@Q4 zH>6s=ZJk}ua~pcQBKGfq!BlD14P0d0#t(7s{5vxcXOZ*Q9KjLqAw*jI)w zG>M;X7Kvn7V<%<@Ru`DOB)0hm4h{@p-M}nyNi#OHVjr_E>7Pv@)t_i1f{(<#yU6I< zXxl(J!Dw#(mr#83*giZBPq-PLUU?QfE&>H02=&%)VdCQ_1z%v!h0U^V96L;yjz(246U~<^Wp!Ik3cdoPBE6k; z*u*&hq*g(LUK9>uuCCE38^;75f~r`ZfuU;W zkD`7)rS79%`Td~%NqsaMD?qRlEeeuTpy!3JO)$gu4ylaHx%XsA`gHXiIfxVzG2~^X z&YrkX^7+$7p70V$B~-apnqvu(axoY6Wei>~O;;ZH!qUuZV=j%{ zXx(yYPJ)1AjODqaz>UFjeI7cc#ub~AqYO5DBGwSdhN zH*@HU90+#dG$5&+V?~Eiw3QTnzPV^Oil(B^6w|&_>gG6oHftm0_aYOBaOcKSn|gDY z%tKw#;QpQzKwsF@q#}QRG3PTmU6Yzl5KcRvEnsqNnwf}ag-tSUR4xE6>G5*Qkm26B z67!+JsFK@FcwFoeZSk{PmDK^rZwsa^-}9O z6gJLKnfGeSP3Zd@GSdkzKk(+`g1$$|8SPR9u(J~ON@D- z(+T4PD*@QQa9hEXa)==Gqq>tm3cmReT-?Uu*;rm?i+Y0%XCVW=Y;n=ZSy>W6)Doj>U^u`2od*Qj1Oz~YorqGM~!p) z?sKt6M&V~As=M=c>$%T9bhxiqZuQ4>yeCoFjrtX{)n3N|3Rgs^Fy zJJ`89TnXOw^kf^gmc+U9Wqwbo&vm*f`w#D?DKey+r#0#MjW7=HTb5CGDkp$=%<+7O ztj43O$>^GSGRAuDR$oh31zG<^YS1SDp*hKU@I@ByhvCQg8B=}V#Naj#yU4vnQ$ES; zQUBnV&1oaev>w5~gMVZBZZOl@R%{Za9)8%wIXDv?D9N9ON{e&JL`EWZm+z6`xG{G` z4n}cDTIu7bryVzD#7>_jutLIv|4S4A9QHtct`?~8(rKc+X;R|^GA|w3ZgN%(y?NyL zY;QKZ_8CSLJ5Y3_TI?Q~Bs^W4&b4!6ZF!mJ=2L_|(56nKKk9GHEaaNwAa;nJZmx9? z-0$%`aBp#`EBDqk^Pn*qxdvFOg{Dr9dnl9vYSy}>4JYH)&gssI3zmGg_TyjB12{!a zHoz|%*g-b27(5?SJGmNGK0U>!;8hyk>UCMK(>)`CR^Udj!CCdX znRb2fn$4He{>MzaGT62`-(#c|S|wmnRWa+dE|b#`U4fXqBl7_O4$y%4W_LcsrtkA4 zJ$=cNa%uXqSV>tb3C|N-Dma!)R7&Qt1)`oLm0z06LB>0`rdFI?+7aH(UUBw!@|#w1 zcD93G(#z!6R$Q?tZPFNXp3}6l=x1m4(@cx9QgJf?%YAPZACRW#t*>okIQ=KDWu{CfL-juE4>ILaTZ+E!q=PL8M^ zumFZA1`pXXt*k;@nySbd=`JcnD9$u5rE@|LV|Pta|J+UpUZ!Ba7${0g06@RCeq4}y zvUHofdO%X3o$t&HPm=FU)cakehRhR^I!V4%-AW?=+|JDG)Yx9pQyUb< z(8P|pml`xGpJU-zQ}=tf-RmwboIkP@S+E`|5l%%Z% zX$WS2!A$F4k~Ar}N2~?=KB_`$c+k&Yu+n`rSY~n07+* zXofOG8O=>Enh<|!F(~DTm3qZ2)hV($hO6}G*j;zgR5P630HW$Qf9```;kRJ)PN}h5 zwOfQBLz7^xS5v7=+6!MM=4c6$DA`){esVIz5A_4~a*`8B5>W z3#7h++xuF~`Zl@}%jlIexPdhV_?Q%71jKEx$X}{i4h>6sG6XJ|;ZsakvkWjhEwvRg zK&Ef}U_0BoCMK+rYP?iq$^e_?G^W&)s!VW{P`*vX`V=D*aE#UoSq=|0Au4aLhP=g+ zcK@4#b5E%ZGi|n{eS!y+q;)paCP-TEsF}}drsYeT(0<8xXpgQhQ_^~(>6Wyw&9pR0 zdn^XYn{=8{b+?{xA^c;iU$>OY@#jKxsSp`4iPFa_6O`0<3|Ft=b$lQIjK$j;Vkk=! z*~m&U<`OuEMCWu@^kbuPKeO4g^s1)PBGiCDNd-n_NM52FW3vHOI;%3x&UPg*acn|# za%Y|FeE}7mtM-8H5@fl|dOc;uI^r_pumoIONLtnj9Wl;_IszxtJ|_2s=b;hRnSK0+ zx%Z}-p|Qov=NRwUia~!j51yUuEu>GyzB5+u7Nh|P08)v1i4@>E*8d8u1Y%&6z&u2{ zvAmHU`h#^+Ne_|i32YSdO`zs|*qi@C)=ZIqVfHR!BRi`{#1YxJD7VIV{3W{Yte$MG z+Ct#1LZbjNd*Lo)b!IoGKjN(Y-ZtD=-Tek<>s_9uh1I{dx^o*#7dR`Y~xLy+Qy=VS%Psbbc%j@mUVk;q{z6o41=NP2}^rl7xxd_xR4nmpGi$3W(s4U4x&bQTZKX zxWv_C|NrnJ|7PyG-O63J#_Bubk?h40_jDv@yw&Z3SF(jP2iM}59KPzI1_DQPA*W;- zDcQ$TZY1^!sBd{ll!r7PkZdCa3)0-~N8tCz^1;@13ms15(x@^D8of2MKw+q8B( zEHHvsYnB8Y>TC*v;Jgzll1uJj;@@okm8oaM*1KY(0C$Aw{>RkQe`$yguPf-kNH~oa z-Q7S7N%XK4m5)s1&)5Y1+!4>8X>t6MF$@aU3Q*R>+Ejz3av0>un&x>mL*o&5Eb|7m z03s<^m{k;bI1QEsFBy4Pjn`|*27!LkT!ZJ>jK`j&cf<(dKA1ypwBUtq|K~1lH-j`U z^ibALoUn8WPLi>Cers3!=u~cBSuhEaL$d05ByH$67iN({JjgP%ok@YkK{5e}G!PC?< zi;icW#yrlnA#Hltjya@G!uRRU8l(LP!W8_B27dtvHq&6y?@Syyez;bDJy4P?*g=Iw zcHyhDH&cC=1ZV>xe6ueGWOPRiXds>yKc&Lwn*W84q^@j`I6UrFd7H(4eVkQ$d#K&_i_vl& zYT$c!9FC5e+32o4+#_PBQ!gBj)(ZiLT49t&xx(lPF_i=Aq;oAeE;*F~9_Q5t${?BY z*)1Y?8c2R&Yi-ljuk>S`a70C8{6mG!En+S?Lfc_z+e;kM_89sSRm}*tuiECh&36|2 z58v6FJYA~ipW-%%`B(YQrg+;%y5K|qNJ7LQwj7u9Y!k%t`o$B``goKdny@Y57a;j% z$QxhHS>NgN^S=NVoy!v(l{Fr$c`wA5b}jPn=cOn2XZcRw zVhJb2y))wghaz?UyW`Q({(>V&A!|I97+Vu}@mqWcHVKeFFXllbTS&r0>Xacg_j;L2 zn{ztxM$$dT=;|RuHBgEWErP%PDfPnzF(2H`%sQuszv2ahR*bs>!_)`z1$#>X&(z(X zQ+qjMVZJ_{!BSzO=L)&k&@@e&QYS`C!d8gc|6Zy36|m~Ec-y(R1^8e6^L(^nt^+<-U~Avi%GS{`A@nr3E$;n z>4v-fTalmp&fMg=s`}S@?Ro&G<9ugQkey$M_av8}v3rvuZFu%3iV4JLD)5}Znk*s8 zfQZB|^eaO5iI*($%2P^Yi-1j&U9ov5uKz35>sxHF2tI+_^OML%>6Ud`_PQr|2eLXZH@vfy*Rl`Rfj78GQV6z$9WiS!>mU$&Z`phi9(vgi z(<5`$m#Yp(eL2^7<$@qlFFZhYYAG8dKFihf03XQN0EhbRd9(I`riH%T0Mf~!TxT(X zFr#ShQ`u%qawW?j)e`Ehw@fEV8j|6EME@it=H&>hc{oDyAhzPDc|i@MID3%j{5o>J zv~iZWqH5GvVoi8D>b=)DxV0B~&NLlm-(H7_h)5zh(RqfUJh0d;o*Ui%ADV*k1Mu2W zqkbk)kNkagrKV&+YOQ@p4{lMaZ*ZKqZGAjvW(%Q55Nupdgko4N3&er8AQ`lpvbs)V zF!S^!78_Y67E8F!E(ja6HGw91;w-1J*i)~|O#5M{>XocAN0-rSqpwM4O7cB#LZUWtff2eTqJn zNgJ0#)NkncFCogrExw;p8K$N^=Jim$Eb0s!5dXugbO1|`uGrA5xEaP&d=a9mFV#ij zd68&C1o;q8bx(@=ycX<1v?UM-F_E~DK*ErvYV_7Zt_Ad_3Aq?_3gbeFZ{SZ{xB<}c zO#1B$Qxz4uY6(`$|48J6wGa>zs-sQK zQ5_n@r+I-0&KQlEkd8F2 z>wm65*KbrlN=e-YwpMs~;NTW(p$9EU<(_-BS>zB0>fFg4O&iqPKoy)TsGr1XdiBrnOhfBIkfBMs&Fn$Ns>#V-?tnOwUt+>w#*OmX3ByqN_ zW!>c4Klm1Yix(4L!(S-fU$}F*$wUhVpx64&F`RGOs5Ad7V42|gfwK(p^t?A7B3l+dLBxzZs2jP`+$;-7EQ6yZ^eoW|#cG*WUqUes>tM#gK7Rr=j@9WXN9bJXyT z`MAsf8_;Q`V~>6vZgZ^xO<3iw zRIxcMyPr>TG0ILg@F>+(k7uU!!S7oAeNmcv@M*zCUA*nc8LRguU|*`dX1gGq4J@b= z!`X;kImv6DS|a_N*m!qQ*Xxwg((||B$quR|$7FX#)dE~i3M;wVhrxIc}Znn^(5iz=H#T8cY>#|J58PJBQ9|WhEH#1Lo~8M>?^wsMsj8 z-a=`yCN&29SBwjtkb4Y`PYFQRaih$u3wvc7rXqF!hqbqXkE*)%zjH`}2}Vvp)Mycd zj+H1?rlJx7$&m?6YNE7aMFpi5sW*Bng^XZT9GFSrFpQ;D|JB~M(tB-dU+%587Lh7u zK$3tj1hs%~7_iD22Ia*H0hD>ZzkOyxDBAyhp3lQaGw1BHU)Nr1?X}ikd+p+F&p;`@ zh(9fyyDYIj`GhAqHu>;oe&hyvGmhmWb#l2cB0u^MV3VA`-Fu8Dhggl%xW8~GnOQ^6 z(yfc5%q@#rlTYogHg^Z3QA&(vVWMpWTgWsBt>a^JA-!>$Csw`Y30+!7`5r0=+A{lB z*``YATO(&pnAM;D?Dqzl{@{;r_oR&HmGf4gm^D>eP_1B>-A#9i*W~TGh5-pGA4%F+AYI$k9Sui`hHAdWEku(G_H?ck5EFa3s3M#@A7Im_rHVUT`Z z_FAK*eHARhNrwKafkZh9?#T}cRitzfbm`T^6$5BMa!unQjkl?f2{~j0KrrDSgoQ3C zh;Y_p3p+9j#^Wt^#D*f9Gn*wh`5{viH-*i*`wwa*=wDdogJIs;7xR|5dx$rXhsNQ~ zjf~cLHu@h!3KC;Wn8;ZZIZJRw;+~6M_qOi(M^;ZSd7E-i|L}f08bT#*Ln$ib`QBCQ zc4ZZ9|01FrDd*q4|IX#y>HQZ^paN>soXlg)3hgAuR;YzRf*SX$4J*S&%QOx1W_RZ; z&%CMeOecX}mU~lpV9F{rWvA!j1bZWH_y^o{E-T1>Zxk7byq(!%fS=o#OMjWvZj3)_ zSx=1DEfe*L5%sriorC_}P`%SXbuxBQ=z^(_bNXx^@VY9|bU~#TeZcVa-2GGP0wK0I z%jn5K|+SPkL@_Fu=ED;N?RP&xUR=w5oSj; zAk?|*O+aQYdiqStM`h!H>sF3^Og-J@CBG%^0fE%w!_Lsmsw!15+dW3%Y+fXJC>9lGrEst;BAIF-B>H^5^~No$u)weF`JI)Mu`0GT<-LTHcNH3%m=3qbd&?r9j9sikeSGi%SlY3ze;etIB%P0 z953)*Irg5zX%zjiu6k$F)pd!YkHU#b6^Zary(RAooQJoGLN-c#|O_P;8c41jxI1~&lr~q z9j#5J&tS!ZB-6hB0=UtzWmc-I-Zi`SibT_44ix1Y&NX>9O&V1u6e!{7To)=y)5(M! zxU~RDJyAOY3#?<0f4ANq->GG38KG=XK%v&L>iWdc)tM8$pZzeuNYk=!&}5!I*dZP- z$BdpHnLR`qMLCC+gcDbW6BCfKIQEwKy7{d%7uf`Lw@FPtGS!H1!a?rE<;f2QsO<)N z?Eh3~n+2hRqaoVL*w=8|2XpGI*XwUPG^f5$5f=ynF~p8t%YvtiT!{uz&m$K?1a8G! zdHk(SrSX=?326-3iec8Q7-kI|>lz|hTv3;}V~E1*U#<%zg=iDJjw0PW?!Se-RpyN& zPT`RgiJaN|Wr~};3JpAFjoGdHQd+BR9Y<)mmUVW8ck5e9wwoEK(=YDQDoN$1yWm!6b@!Y_~wayN_79QTqlQ(oY=c0a+e+f(I{LY zVIo8ix4c_EG%X*WnXD?Bg%LX6UzfPV+wrF14tHS-G@*)Ln8U(6CvD8$+14j4fwn?z zm8buJltdmstt1~((f_uDZ!5OlTv?F0+=uXwThxyVMPYp?Rgw~h#WysC8+&DjuXuwE z+RSMy{vB;RbK;86;NF?C6&=I`$P};m>DRGAGPE#iVqh3PPj-AnKa7W=K>dngR1ITb^Z2F@w5-Mhe(AU=5^jqJZY9TcY#{qa zuY1|&4JV%s$lxAMEDp4oioI`4*qt3MKVJKXFCtJX`Ukp#pFIB zDsy-BV6U;jzOlt9`@@9b6`0NHElvm4fjU#`Mm9{ff1VoAjyH)0&|d@J=RHm>gu1Wu z*`cw&QkJ{SXc@LN!kB0B1-$DoL^TlC-%t0jxiW^vA{@NfIZ1id(d0frxi4Q|T7^ebk9%YjTgJLNJcrm8!pZXb!| z1d+$T2AJN{aAU9Q9GBC3YrV^41~No76wS-rV!<`A?kp5)?C5|1#CIx5=l|;}yC;!| zW-Ko?jE6QE+QPeNvPUmTwVQ8IH-K6P9R~I)(f3G+@q7hy^pV`Lu3~$^aFT*+8;jVH zVGo)J59q>+estn{l?4lbG<6ZT+p#P1zN}y)3Lw1-O8S7%IyOSQs74#=i8>$L_g_kJ z!C*u<_L#w^0z%JL=tYepgrJ#dy26f$iot88;b;tVvB_VLDL`2jSW?GMXPhUY*j}h0 z#n=Pw_!>RvI&Xry9kwE0N-ssZ7d`kxh9h^krU?)h3W0wP6vDA*4fz!`UCtVK88`BT z6Ml*i>}k(%t8BY((T?B9Bjoy8*pwRfMp%Gb<`*R zkZW_7S4EpN^d)1|l%|OhHwC=Wcr_$X0J-fgBJ2qAWN13u+(I(F0(R(3LtD{AXPyvS)l5*9nP!Wrom#B=s@bup=G<^GUQzuT~rAj9chFsMGi!3I|vR|^L!0SD~c;Cxu0`5ohOujW65>+LQwEL%)3I-m*w)=R{R8o zl-n_7a_A?tm_MJ&pI6=9h~H_2V516PzzVn`K^KRaH zgoFN$B+2S*zxgpHuc5d)aiPkB%qCL9N;Relef(9^#rQnjP&h_L#oj~BU!Y|S{0myf z;$LxI#xJd~cjsn~RWt(6NYT)`@VidgbUsO+MB4&*PF;EJDJr^{4T7Gqrm}Z-99!9@ z<+6ScGUvCwgYlko*`vmJs_{9x_D?k?KBvZJzeX`8u{E!lPNvr}18`=kb<_ba`vg0p$2l@*oCaWv;7U!?K~OYN*PN{gMW}wZK7h z@d=zxRn<62of`lH-XjHDKt)~hDht00d;Y5==#IF0YiroW1q0^|E}0xvU^g!}SrI@n zfQ48!{z9b?0;bmyirg?n+=_1yjQK2oS@W5FE=scWa___*38Af_k}^xVhlm$y4CCD4 zkF#HHMwz|@#^NoEnM=jHZ=LS%EByWNT*x!MmD4$G(-ZDooX2FAr;kh~93nsW$H9NO z)7#j0Zt|*3^{w62=Mdyie^T{6E3b#zD_3qo>g?GD4g3-NTiznvqk&&T%}!fyHNeCf z-e8te@ANIq^AfnV#IJH*o<9f23~wCQpOG>BJ-&EDm_IY!hUKepg}v}=e1URmd_0Jc zx4OYfkkGc5E&jiSe$X>Y#FX9XKY|fyR5TI_30s)v1(nDH9 z*1vIugHP>}Gk(n+2}NFofrSvI7BUXaM~S&sS|)ha`@MIJ25QHDPl9jSH3)mqo1QEG zfZyp74oOBwVGpLeL+s{zN!1cZFosbj4emLH-^%*B^cAygS2&4#bw&g)pTph{plx;K zhbq*gi-ox+E}(63l;#!_;4_SxFvO0ZN-7RS<#lfT07S5>E5cQ)?D>UCg)J!({w%Qh z>WXZ8l&i+<=CouTYM;me5TI_7AoNRGRLd{(jTR=F-V;l=jBr$vip1FtdUxk?{l?EV z!cAijJ<&}Q&a3iXF11)3hyuJs**wkTkg;z4sA&@F7L#b&y56hK)o=?nEQ*^iV;6=- z-HL=GIjCsnV6`_Pmz%qMOs_8S+na!|$*36wJRc=t0^cekO4;*?l~>SUaiP}>P}LRX ziE8YqM2}$W@as6DU0sg<;in?znm$cjCcp$gK|^-)?_dw}F1`Az-{C&-%9+ZM)LN2m|63R-vZaD`Bqc&S)}_IBv-ALVPV+c zQaVwWjFhjaA-{0pR-x3-?_?=Mqf#QH<2=Ti2|N-O^FxIwjjNPo*t&V2x;)zR+sUPd z=1>|*&Fy9RO!aRxDTfdKi?zWaBm6%x;CZ8H0H^#3wci*E)U<|jdinV{b)97|m}Oq) zJ^uq<`<-LQZdT>s(yh9p+IMh@UiEEMZ$MV>j%cvn=iWSC=HU8b@Fjh%OpY+2rPR=h zFOjA=;X^!J)n(5=RW-T?!q(k}J9kT)1ZIK2P~(u^jmSCizkT_l!pV*=2_<}*CcqKd zYNW7Ax=jBS^R^b`*>C(Kn?t{1ltbDUy$|Nnkse}!7{$GsE?x?8o^cj{x_2k3N>~DTqPw(-R-h5Et00vcE zGfVP=&M%qLe9|vq!c}LVB6~RTGe52z7VPMk0Tgyq#;RTc!zi8dl4LXN8SexI8U)nK zNsoM$e&?0=dZ4w0#N65U#0=KM4`!Y2?YT#$D(xPbn+EgQbLO%cObGSODe-=*t{`~a z2Fal?XT7e=5MZ&U*H>*17v8OiUw9~T)1LRoFzR)6XT(viSCtD^A+6cFW;vT#i7Uj* zD#LEkI)G3aj*V(Z88BY3S5*8NN3#Q^cI*}~21Bul!n6Kd6MeZp+oC(7@7#q5DM}Y% zJh%yP?v*`;NxRi+=GDi%n1|6oZnK68WPzKZ9e`=d0Q^kIE=;d8G98Y))BEu5FObuk ze(!IdPQi?kUo%-R@541Mzh3570vwdo>be3aTVd}j#)*x74x==csjr;;I9HK*jlN_G6|CK~(S11Sh%IS?`!^i2aEnXaL`(05s=qTZavrx=+)~c$ zumMK5<+fhreRrdeI+xYD-yK-zjw>fRK}DuFyH(}x8(be=bh&$bC6?AvmALm-mK9`E zj(cTA-WRUBWqHo+@SC4_b%@iiNQWcuE1NkA7sA@)cghv9BQd7#w*7OwPygn(I8^G& zSOkTxIrY~5y4zl#6Z{Z<_}{O|5PMkq)Z2JGHe~m0eC%fpL=hbxc>a#ZD#6Nw-ephYw3mHB8MoqMUd6@NpY&+w z2n6LAv}im>GPFZvj9unzX15Giiu3kxZ`b3yvWvzJQ=V2BC88`c>2_}t?$EMQC+8G; ze|X&=FW0OZ=ALb9Er1;H<=o*-ov}MReQaCk0*k<|c=uKn1-#b5Vz^^5;u6!u9D2v) zMdbQum=E|Y>!xk?^TM$)1x+xntamOgv~n6LJ(eyQ<@^#J>e_niv~*fgXuS7SY3$}9 zhRq%X#3q}JyhIRhyw%IvRmErh3;}BSEi-4{G4s+&x==irgv5XV`vfB;nv}@nchd9Y zTsDw*fJQ62I5Gmooj1zY|8|mQqHfp=e$69CT`8P7H@ut^pEutz?G{z})_fHX(YN)=>itNv><1w-`GbZ?I&7$G`u(mdxjwPgA)|B`niMCq+=K(AM_h4Pc|Y zx#!VNyfoTbE!j9kUZ03Hxt?Rlj3AsiPGXNl^9FG7_&T}AIncIlce_bDM2@LU4iNr9 zDkpZIZd%_=3CVn-nw1+-X|%fjC1}XNj=#=VW69a?1-bV`&Su_1Dl*h-$G;)e)rG|S z(Cw`4Mzs5hDMG;U55rY#UhVLPa74hdNcaSnm}_E}_YInWuTgo1+t9aoe~Ns;(oy{@ zl&1uH^QmoxE0ep;&g}TNj$JpL-}>vu-!XZ+AE!S7nBEjB^?f|hhcf4RqlxU^;C^84 zUDP_uOeRRx#k1iP@B~VN|hzLupbfltCa(6^_5^EbeHT{#8Aw0-S@=c9( zRev*PsSlfO3cCXWjU_kKCcaZqcQcU&_i@cbt$pPOI^i@-D_W>}Xhr07_F5{;ilzyi z{hC%xzf$^ZYioyFE;BFED)mYrk{lst<$Cw2zz8r2Nv{6vg53ZxaTBJYHmsmU0EJA+ zC{7|^bv)1o@*rnU)Lo;zzRg!Qo_Ko9R($q=+>M$47c?fa15NzL11 zF|vvXHiok=;>WnK<3#pVHk$~n;oCaqC?s9~M5y01`Bj#VjGNv?UPE(jI)UWLjHlSC zZi}SgLjA(pz47%dUBJ8E`>B7?@xotFX+vV#1w&$^-Dhc=c)wwHXkhO7k`OhH=m^;R z^75Q<_msrwKR=B7;*G!D1>o2hb6X7CgvK-XK#r`OlRTWSubV;jeSTU33*E{8>9>IaH_jL&DOHE-pjE!DLh64K+ zEiefM5UeR#QxpBnikw}ihz?J$jM5pT_22&8?;Rayj>&7spW{o-!rKEEuyr12eAz^; z;)QC`Plb1%r=q%-0vtf-BE&E0Q|HY!I#J`+DUmUWE2p~cvCiWfJ25F+ zkqbhJZ%zV^LV)Q^e~sXY@(pv!kQ8z|8n;Xl@>JUKH~Hb)1tyqBn|DdBpEx7oo#or- z?>ZUBtk1G+Iwgy0vhA_Y4&#Mkhf)fN{2*7O2<4iF)KsP;XJO{bBd_ck^?4+><9}qY zJNk@M+C5o44C!na2d^B*K=+ti= z*7vCmSipf*U2JM)0njR8!*A*&bl?e-(1?c9V^HX+z*K zc^#O(N z+3760q$c`73%15A$NHj8?`B>$qhdc&_*28`p@G-bR~<%*g515D0~S00z&LKrG{|_0 zo6@c2Rq)*2b=C{Ijj-~x2KUQC!C8~xj&;^f+=&eMaL1i>H3z%EjIh-%W~3f-L~K_7 zMJ0?!q?pyHn%>Ja^OA|y=S(*M!QiyPaO%Xb_f-D4FQ;#jLtigl4LUrZ8Fd7zh?@&H zb*Xuk?+lA`87M#1O&!13@H%FEg8gtPVB0G?OC0+F!f-AQOfqa{aiD{aVX@FF|Cu?Q z!vp7^>Z|q$gi+qug=^8*>GmBybNpCbadk+U4QX%)jz*6$px*MES`UHm@PRUvVv#cefWKqVooF6sK4~+c>A`5kW z3GW1VY@riu_s8-1hUGl{1DQQU-y!pQzl>CyV-qi%lJ5nqV@Go1+4k z^Gq`@@IyW0zMpMxd>zig9_Jn`6r9N1z4%PQNX8oFX^jV7;`fBibtI~kK$EG@g)sVHKwN2Rj2F)#f&wyaI$Ro4+bh2MML$R5wk+|h_ODK7?x)f<~JGC)pTC3ntbDi}aGIZxxz1Xt>JUaAH=qrMK|)k)M%l}UL{Y%3(-dnq&xC3Oae0L0Ny zmen=G(n5>Ou<8RdBHy6Qu=Jy}T9^FZkl?GzT@$uLd#CUB&0Yn)p5Y_ykee&n2s?^* z3LI{jNj|(SQ;->ackSqU4$x3c0V&+a|PVs)peW!M>A9A7?+kxU{D2Y&bIK z9NfLJZTF?NmL$u*Za?kT{2vq=LjAjY3x5>9nqw!_#U+n)VMK843N_4{G^gOMYZ+gY z7|)!NnMLlp%y@g*o<#$O%{y$Gt#)#a4)YtWN_|A5@r%`{V#eK<>MThXO|YMi`t5NC z&=R#~t)oZb)JJ_|ACv*IAt~=fal}x`w_$pd zj4#$cf{osXRy!rDg-7Q*sU1c2;8G>iZ7&mEK1@D)*(#nMR0$fJYWQzFP);5#b`r33+8K`0+P02H15W!A4t7aLv>IZYBmT-b%*mUU@7@G|*)D<4Z+z1xK?Zq`Zv zv_53gH$o2J%*?|usCCKTXvR8%|*d(QNloFtG*Ut?x^ zO}fF%G_cTySdZEM*Igd+`CYzWb^LF-d9Te&=yLks>5}MElqQ|>O7?nZ*D(x< z?JTdgUgjpB1K9D?$z!OB5j@LRX7e~Vl}ZqjGVjjEd)EJ|T%A z4)e@ziRS#)>m}_vAVg~rVz9it7)?=+wOSnUjPuTbPdU&c0Je7SK2=qMzUd- z_9LnA=$b3)3+x}S3XfihvOlw=a)TYW$)LTMDh|pDceOrB`YNFw@0UwI&Qhn+MlLoB zrrmr%8FFNC6x`B-=uMu?zi8>{L!KVI-Hxj|zk>_+@Cb|z`q>M9M9zllPwsSZrp}%a zxm3`AHD znW@um-iPl}k4h|i!QV+Stokh;uzIRJ`F2`s(rZa!;721%WT+1|Uzo^&t?|)+UTksz zgInO9Nw{Ych(Deb?KPF z&0T^Mv4kB7XX!orWYdBRq{DDxjE9%;iVA-7Se zrlIPS2KUxUs>iUPs@x2e(MrE2~s%AA2!&B>kx~T}m z=R~uqpe)^OpoG@B;aeN3{?Xu0ox!7N&Tt&RIg%$hZ8g&%rEKG2qMOC0jwopCn4-a_ zgEXWrr-$ev7M`XZqx6?d^NS6?%56%@`l%~=PWKkwlsD;S%DsELU$irceMQz$wsh94 zkl}on_ndz5bna^k_tEaa??^J|wK#s!&b0T~Ld?~XcQ`G~{LviOB4UYu+}IpB$7HG# zRx@NUYq;4s$-Jxe>>HdjWbx@skfoxL;Ltg-t_zxu!)O?&$h@MTa&t9=de?@>B2q|Q zY!kkX=2N|Oh>DwowZT-IN=(H0%FUuz1 zRTgq<>_BDH$H}knjU7BVJHsN)4l65g0Z11+a25{UR4ThS!KBd%)yGN+ftA8pUMj-R zRFFe@pI*!BZ|)541AXuywim1?H9;bq;6r9(*KH3MLY&;zqnsH|GGM9Rfc z)%tN)%$dUpn6%CDUUp)a7d+}8vF`W$2>dQrez#9`f%l7tc4adavC%I_k%A(&_bJ8O zil5~TLMia%T~dd4p!|ksT`g}uV)S8X^hWUkJiS&|bB=zW?qK7Vz5119BEOcVkl8y~ zZ~Xs6D|Zey>34mV-CysS8~peITRG{$PTco@V&p=R12j^5>b^`Je#JLt!shQeO$6cD z?pJRT@5TzK?R+@IXXl&qc>9d$O*)UyQ~&%K(7C^{REVI<)mc(f>~Nm5XJz|DlWDccGQr-n$x)1NQR3;O6YyVeUb3gY7qq8|-0gFjj6@!S}^B z=e;PXo2v!?@NaTOZOeR9x&QsI%B_>>*Z8?HXpaiGTjsrz3yU(>&y8E=m%Yoc7ub76 z@FUo+`#XR97ohebC!1IPdAF(|>{=$S^4=W2gxt^a4h$xw&ICp{%Ai^}md$eE&edcx zXvmrwIgPnxo)6vSEk)ap}zrWua?poPJTN^~_H^QIK$?k9XCW)gBU zgI>hTF}vqI@Oge%QB zzXaU&{SN>r(Ta8fk>=vOa)|s;_uknFiP5u}8t=>>Fl$6#m*8dBZdTXo)>#GJTVH+r zt*Palbb^RpiP3+!hraKBk}k#0ew1f?_E+n4 zg|PLsaN@5|EQXJ4GT;A8&nT0tOEOz2*{G7w`6Z{QhC_i9Ek@BJw)!Jtjh%!nl2qoVho4_~7g<7$JfG&thF?HT`7e zNq-YR+D>ph?<-48@c*x_EV+2FNwcr_-grt>YB%2oSj;&Vwx_jPe;jMs8|y-{NPpe` zQcGiNj{1W1@AdhSPoLMaT4-PYYj^1oTqmLm3dx;k+AB*Wru5H=DSe1YHnTW-;J!#n zE3nA6XWr0~1B2xb3_V@(gsz@OnT0ldkkH1(BnpAAEF`whgZe_^;9O!gi3HnN@qL_a z@Y%Wb`K7`o$$=}Lb^6#8m^__LNr`>l~9DAUj2Y`)+F2>DD^O{pJ9t-&|Iv{mC+7z1GaEQ$TE| z>V<|RE_%sPy>Yn3^2Mg*Ht&qDfm+%u|H#~$jYpxA3LuC-y=O zmms)n@B~pL2h|aBJL{~rP}O@r&2_6S>9w5DJIWJ|Nq{sHgA(5?3MIbFrt$Q0`^Cg@ zp~SUC#9(z&tBW1$tx(}j<@P!qM}0Vym|eyJM#Km-fFdW=GU)PT(N{x>t4c!d{!nmz zXz(T{wQ7)KzZ?qgf9{dH=3j5^3R&-l+`ol_YX*N73jVFu-B=rZrFQUP{k77L{gUFo zEOe|^w=30B?EF=QYOO6KAbpV%B22jTPO5E?wWiknm@W;fb>DD;2b{ra{?=MsYpqmb z9Cu?#r*5~pLczAsVEWP)O59oI*spN1RZHyBki|Vqn;h3mttoa^sufbKU53y0g}KUVSDZab>_>J1#k#J=FTZY}_2ZMnk#O$`JmI)I)KbXZBml10SoYIZpk-}h5)*e0 z2biH?Cgi>o3VtGxE(yL9O58ZqvFYdJz-A{o5Z6@zHOO&OwZRRwgZ0<3-f#~Ik8%_H z1__B9N7ygQg8XnOxXp22a)NJ5d24ZkuP3e?=0mJY&^FLo67Ve(zR=7}{R`gsgRDdP3Gg>tKWX zj99jrZE&j-e8bt0s!a|I*851uF3~2{ z9jy&+3Q_rz+8`?2?Sb9ShBm=*5QDabHtoSZ0yHnInw5(K?))(pO;C0DVcly9o{nFqejc+i?;UB6MsZ+}k0>#>9w*G%|Xj&9#z_yUrn6GHgmPT8JTb6@G4}bK;qCE<2XfRixjo0W&pO;dAW+Z)lTMT@tPOq?y09tm zL~U@Rv!OLVsvHstMvUrQLw5f>s&&o^e^d}$*^$v0(g|4`tOJblV)3ut8Vbbh(=F4; z3m%F<804&FA^_}W01RNwSO#K`T_w}kQiFh9>OFveM@*=zHfSc4%xfB4fMKQzve8rt z5e79NfiSQRC`lC60&V>Z;o0 zfa(VK6-`KcaDTAPTF*`u6c3{+w%&ctj310TBobW?W?m9}MMK>vzEf;{#O)nmSXA@% zcqrJ#IN`*bMYJicqEW-}Ao0>*iiK8D+f#riWu-xNLw31Qch&|!VZe-TT(WG47(_>~ zE4Z71c!r`aPI?F(2f43=N?QjXcGralr%FL5YH11phCSr3a$mDg8{ebhV-~Z2@ehYZLD|jsh0Pd^m0aNj6D7YiIW5X&=3m6cDtWF;V zKOYrBa&?E~A z>QQVRSZT-?i5%9pDpU&hSVdB;XLi8VirHC3#&A4RI1uRM@Go~fMy}@-M zYn6HgKtGmbgQS)LH9!fGD(k(G%XVmqO$`#tGi1~$)t5tF=b4SEZ&S@W=Xw8u1*3=v z7#!`RqpSt3To1cMd|C2j$U1BtM)>O^*~_ffDTFVy3_cDzBEnKdZ&6LBSbWIZoI`Nt zR|7L}gPj<0@o}H0i|r-{jFDu)B85VP^cf25mgEnVI<&q%!8+>;E<&Yt*pP+4QGcjfE^oFYtq}Ll@3Y{9|Ro0H21m=T%2N+r#d>x4`*BLl4 z+{B+tphICa6o9iI!DNHl+XZ}JFAVragk&`f0AP7EyCLNSUt(5T2lW^>YM3I892PfPAC#JGWvyM) z?eChEo6C=}mUI5($|CnN8k%ljdS;8Izo}mOyQ*-yeK>`mGdH@#6tBE{x6W8(avR5o zu`9hAjvXv%I!m^ugGKlnIfs`@3|HSG!1e$#I}Cw zB!>6x+1QD>#@^0t3_CYX;b2&{X{5}4`^JB}sOc;=k}JZA1vRocV_l;J#u)P&IZj7u zvsagJikANsI^o?LvYr1F+7dGZ5oZj6f9&pvZR>>@A=X(LTwA)zerQ!VaY?v(%Pe*z z57sBATlR|gPZakq2`##q3+oQsF?mWj(ZenF{2TSOueCDrRVTLn3@5d{Hzm+O$ju!% zR_uc@p;Aa-fBGV2Y%5^rwgA&w+R>}MY*Zk&eGKKxBSFfRH4vW1e!7iXLZ!&3yK$18 z+lz|1ya*dO3DcMT;=A|uIg9HskHL8vrKnQ@fq9K*HWy`9o7)lsNA zYD)n{#?0<)6;!J6FV%aOZpC&Yw z^FE`g4}T{SVG0{`^oQ#JV0rp>o@?=N{g&+b$!mWeJ9v`4Kx7bHyV5GJ z8Pp60(h)m6&|aVj)Y-r%VVv4iNxYSy7f_e|r##qiXcEq|$o8GSja@q6%KFCyA0t$(sXO`>oJsO&M98Kw1Xf0IwsLnazF8vez z`aMWD;PoZfk81?2s`nb_5JxO_sF%I?4rNkX_Oj@N&juHmi(>8gBtN-6VA;!DrO!K% z71-iq_`n&$()PO83qFfbQ&ps@`irT)F`|H_3}b-mSX9PFf*t=ZAEF2DCdeKS8jQuh zqb8$wF+)mzojbgO_OfNBrNe$pt8s%IO`GL*?07Pl3A5E=ov}bZ9!;glN zb2_63P7B#%yPV|sd9kjg_JRRwwXHyYr0Lh$<<*t4Ot3xw2AUEDRJ0ZRQXik@BY4Fj zB?#I8DIdacn!Q-09Y0|0R#c!_Xak*gC;9{>WNRQH|wu0%TG~S$E#19y026#gr zY;*(&9p)1dqMK%3R`d0!dHD+oW?pi0(HO~$!Kc`ajOB+^UHqd9;P=;NULSU)wMNVm3x{XBq5Yo@{Yp_0AeXkuaf@SYt zBlnZ#*=%`%xiZPFMP$a|fW07g3frHwOiSWi_OcPOEJr)}zYE6qyx`AXVe>v#>PVUI zOkNYs4r@xKJ}8W}Ax~$W()~{LraPa2G2(k5S5|!IOb3|LS*7Yl^9u|uHv{Q`^pEE! zNn$GNtGD?M@h0CXDji$ZOXw)Qq{NPuL7LEczXJb}g^dF%zX8GA6gMDsouQjUacQ@k zAMlaxzo|F9fM=h!5%+Xr{k|XRd@7F1*^2+HqnJ*v)EU7DcyaCUX-x)rVUiXo6?ciy9Z_3tNaKg205t z!?bH`HTDB-dZZ~HTWjJ6BgIbT?xvp_pk_|tGQK=|H=gcHNxwxXZz?!~Ccj`5_Of#A z;g`k^!qG-jm6oclM`aVW9F^^^e70_81ivuUU+y{9hfxqVywr7ANBJ-m{Q>^w>DinZiwyUgq@JfqOYLjEjS4Dm{o*-yv4JItf$q zCpn#tGgeAft;Wx=Q?|qS$9simtU;>4S^GEwH z*>?*H?)-N80#(Nr^S!_%`iy8j+w?twWJhkeO;;V=NN>Lp;R^KsiN>}SoZrq9=M#nW zw3|cvS4lM007irPDJ9UFtz%MM(F4Q$h?_g}nSP)VK0>CWcB~OXQ5IgQb2lM*8;6+V z2v;|tfMb2-T3{rg;*Bw@e-3$y!Li7_8bsPu{G`Q}Kknl(`Ei>(n)`#5e&g@Q4&K{z zZ|vYuyIFb^#Z2Cvnn)jKcT!)|_UNjPD7d?zUyn?id1fdn$z9O{eP-@J4N5D~v`dL6 zEy~P}`jyVQrDxuc$O}u7)C%G?-$SW-cc{+=5H}nDjSK0;3=qrPOPBv8W_73#5qM%Xpgms&CLjNv=m+7HS+=c2h-D zCMWwM_70WAo9{w-cNb1KU9g))Qn?y+L@0B&NT-vh^k4Yn4<5wsLrVid?DEX@v}cml z?|h>fHHtm>*g+p@@%PjxB7TTpYAYvF-hg|{oVMD6TS*Cih+mwBqiUIcGZx6Y)Sp_s z?fq7DYnlS&4shJ#P@ol;K(FPF+uMf*UL6X+)H5UuK+JICDplqgZ79?CokgcbS9e4YmCn8cKVnkOq*yP+tqv!eEuB5!wzv9F&RQK? z-BJDGom*<%!pvpJeh;T=qMumHnV*81l9wZ2!2zsaE#Y%cv0lqm`VD1%=Cl>g71Z9! z9AEv~+>?0~OMxf3r`EftwZYz;bf6^`53OK*Edtn%EB%o_sIny=?0nAf0OE5Q+A4`F(IMwkqAV-63{m1*KMlgL-;iKci5u1`9xRmqp|a`{13>I*4DNKv;cR7MX2O<|hs zV8v068WKov%BPo~=BGbQ)B2j?fcL+l*64qtGN3YCL`tBIrpvn6UT-**XY> z-;#k%;(jlI@m3jS=hP*~^-?vW#=2w;(h{8`Go4e?%a4&)goPZY8?`~Jzrx zb(qx9JdhrCc;`K4&fApYm{%8jp**ubS#(~krB_|*{UQn^zfUb84*RN?oY@W~{4*iA zy@X>2dMg^MMq@7+3Sn}7ZP@*17MOT6w+H5oT{Q8cg5=B&G-z1*-yNW{uRh5M1!mBM zgS3|&lq5Oxoan)7dx0is-r+|cdE`_(_6MGC+t?@Dk{o_18n?4(VsSyHBij$5*f~C5h2E%XD7ch4C7(O@SyZE{1u=JhT8G#;)Mv`$4x}^aB|Zr1 z697ta9)w>_7vT-5lTiYxywy6e|+6wppZ{>cB!^#_aG4diFeG(c<~u?~^YR8a%Ni}J&q&i;3rQU-I=_N`1P^-LoV zNs8+*gU3G8Nt2nRS3z1o*_K>eOL<}b>CbXKW)|nlstJ`*;S;(`7Zzmh%N6_?8J6ph zImDeS)uY7|@-14-6ra`Ue5L9E_%Zz0Ql?FP?p=^MDOXCB<}1VBlVxP8_DSa*DgZBM zRuP2g=R6d6fgj+!sAcg#s=)@ufAX15enJTJqA&o&_#k(Ea-bhvD^MPhH# zC{`Xh6KgNs!`NHe&Uqw0-P8+Hap`KcMNNg73&~f)U0RV#V(%T7dXMNJWte%nq`g;c z>zLHm-uNS6U@lal7gY#vU(|fR`Sg6hxjTDdE?1dC%JBQmB8<<}TNL3+tJdP!dxfd@ zDpH;OOE;%JC@XDMt$Rv0uqaK;*W|vK86JDjO1(EI)mfoz{gth(bPx9C(sk+qwTvl! zE!P9!kV8bFmn_9s#tuz3j3+Xf2_xcT^s-u=7w!hLmJMQG3qTxNHOOQC@D#{^H-lqM zQ{5@>osZHjeioBxsybUWQE=`*oaHl8&p zcId38`{o^LruL@MI>xz>=G`|I6_o_6$k5oKDmxyc900bPAL404MyYPrN{ z;bMA_3~!7bKvcL7)1QoK@pd)cHO7wLYElpzJ|zW*aGi>mRIzv`?@ad?yLp>=nroe9 zH*exmjc6^(@k1YD3^^~a5y(Y_(GgXVziSf;`9MrW5TcvuXHUXFBPnlofY;FijvfCi z023GufL1Lk>lc*@`zuo26bL}ZJO=!TwEX-x^PC^ne^I>|)*fIS>l$Lmzlw}u#<$RX zqU#b1O_xnqFQg+ZpHofZgGO#e3#qNE-Z(2FaVNRhEM(wPh^gC5KfNb^f^O?ycr~>r z?&Q&i_4d;AwhFUqY7sO+OExNKNngTQXgSLTE&1k`fb60xEmFTnsvQrL&|~UgRt6vK zxXwbD?&_SD3G+pOujY|TJwk$+cZ6MH)0(@{S?1lo|0JUV7(OX(%Z&ixl-G+>H&zek zPcd4X2-u%s!7YOX*q%vfC080A8kHzdInmv<4wG& zyNwJFiFac9b#)T1wVSS~6XsXMENe7jL+g{FK$wdSwI{W^=d2w?@f-!dSwIvI2_?2hakUAEa73URj493#DPM4aU1VO z-GxTqXK=9t2=aeYrW~c%%O+Ta|LBKcfXPQYCJ*wJL-;ems0S&L9Q$^xtIzD?2)VTs z(JXf89y@*tV7TpC$S~bfX=wN0f;jf;Grc7dr&qH;|d=d^|qblIkQn zARBg82L&zG@p%WKD3jHbN1ErwweZW&pVSdoYMBw zUn{C^zq4q%dwG%l^yR&nN+oyq+=_~9a-&ZFO1EVBtoxs+X+5LQQB(R20K2@PV0bir zCOyuhLAZLi9lP*?+_ax-$0w9)>`cV{JcN^zur2<~r?TpgiMwHP9-sW)yRpMTdx5U4 zMAKvsb;1wNWK|_B9he_>WysFarpUtBu6#pwJv{Cy0N`!p1iz%$Dry9|l-9g9PoDV| zQnX_)Trs*we^sC9^xX3eCBXFU=9xUBCKXgh-3Aak6+UlqPQhO6M^lsy$jAFI2fb5X zrCVDBV9MNv5+ft@m=`<#7}#cJhq+;Az^0vfou|BY=y2%xni6Vfk|ctjeP3rbd%ROd z#d@`$c6t-daG+V6&3j!D!B;eIvyOw0=^;O5j|+tmAs#PkI=*{SPmRJ{CM;}6{F~6- zAHtCu3qi7G_cK(QlRewh7t^cmlBWnAjI5BBWpYutR}}1ha8(qnR-`2k&Zj59vlQOm z7aM+Nc-H@lqY|by#G<7k*1CJV>MeP;8h`EtAhWNvSANzEcROn8;Ct{vLlsk>=Dy}2*%gcI?n0l}ve!Ke2uaAP$knx<=2wDr^v|pr(M^BMIj;Mk9B( z3m&`avG>BbBR$p#e}G2xg)p@|LC_F7C zk&6f}g*GMqNXi-8wu~{aD1`z#PRNMOcC6nIv+$7f9&+N6q#}hB;h`x|B-L$SOHt&U zSZ5*1S88kj(i9F!rR!DW!P31{RGc4>+mQ*zI;~Xapw!k1W$UkOWu*sGAM`HWNPVF| zv0C3vA#}7H%8LD_??u`Z$;G;Egv&JEc%2j9ep??_d z0uto{3+K9g7Q?rWVjUn+`lOF#F7u^7w4QVqGFX1L75sV%@1`UUGP<1uVoRUd2erj? zYf7Z=zPK@cA=5utra4({#@ZkJ?-Lc5peH)0boIx)B7?FUkosf8$9FjI+nT%oIK zLsVHWwe%uT&Tf7bTnMf;cpU*le59K^sj={SyZMKFGrOREVU{0Klwin1DB`meHpui{4RgE{8#$snGt1h=cLaL{ZHG*n9 zgSdec51|S#HnLmXU~qKArFQdIl|XC(#i$ZmFA7@=7YF`K_0a=2M(m!d6XJ+eTrmNu zr0sBS;@*X;I#^$s8F5tS*_!^c;+kEi8FjI2UpqeeLNkO%UxnnVS4V2heW#n)K9XHU zg}h1k6Q|4Fp*W27`Q_rDBx6~YXV~%IGLSm!ZD6X1DUUKS>DfT6adNuSK=3PIdbZch zGZ7fGg}%VZ1P_X`rz5S|tcvS7$sw>ackj_U&ek)8%^KEG+60@cnVz4$!|@b<0lUi<8LUzCia$OIh8kIoD=LCb{Gqns`R>YjmGJdBv~lrZ;6%dCLE z($q!|umb*vp7y2Si@ydGdA?M(_bDR_wM)vQ?jAb|(MGY6-ohyp(r9TXc z8mtpDg1+tMQ;b{G6n02?NcTHVa}E<)jqikGoH?nskZSE^cNH0r(Ns|+NM~S^hTCrI zU%CokOk6TMXql5wrH9#~nb@N};>uL#c<#0elNo;ep)h2w=36Kv%e)e z?b%uQV~#Ur(_>k6@^k&UtFl48kjvFQsL;5&;i4g)zy!VSMp?9` z=#R8(@^bnna4^q=pR`yJ8+%>vv)+fOoPhb}#a?(FGQE&REF+wBy5+Sn((FM6*>Tw{Tqm=~`Sv=VPT-CscCB(FLcJMfvk zV2iqM0fXqXhK=3G<${R;54G61eLa+#m$C~gU>8$q#vhDz*|=Yl3M@K+1>hvA0Gg?ycniI~MX*&YcJr^{3x^$EopJ~)tp_pWv47D4y&xJ*}r*M?R?J!pkKH6csnsKxZ~ z2)#)1NdG5;a^|%a&|Iy1nHXz&C!NI$o54892&M{A1`oLD=V-%U-6V4SYx>CZ0(W=1 zhL*IODk0E3JgWymS!OyZMUU&(?V(>Lp9*x6N8+kVNqko!Uv|G6+>(+x6DeG7H(49F z#aiIPrVvYQs10RL7}8rIJyip+BhIs_1d+_W(m>DXW6XsJC6B}-gv1v{=U7vor`YGq z#D_pI!P_XsX2QVJXz6*-=DyByal1Wc`;(>t5ki>oW0=Cc7X&@YQz7@3g7jrD2%&EJ zd>$}1ToTPWgUG}r*kKPg(730cy{yI(lZ$nszn@EXXkdcic&xG}Lw+B$FjJBMYDnNG z*z+HzQy_%Y>e2Fzv183&(N3T1r-A<^c|p$z4ZbZMS&hjtrzishy5Hu82ozo;)fJOBq4e zA+^r|OZv0zgr}-yPZ7k0b@m#?^{R}Bo|K@=ofS>5)*IC=rMmF`j&LDErYj+L>;5;~ zb@SF06ck3?YhZkza(qR4>U`Pgj99$ZOw+S3wU9u_=V^gkBb>L6oA*p5Y|&4{D{kDU zz#FGYV0VIn9VHEriJb;Q7!%uR(O?T&9uqC8`q-&Wf0dzxW4Dy3^W}8@>}bd(=E#HQ zMgY?{w}FlR6`lQNVkwzX^vv-LI#bSLNm~tIEiHJaoD^4Hdigo*Ne!9NI6jI+p^jk) zW>BbF_S0+4E}FgU3hj)Qreu4-uuzyLf~>$$7EZNSqOAB5Br3tNJvU%T&-y@W%J#7P zQ3&H*ZZWu*Wy27&=qN7&9wp$iRAf%d>m=oHpyTtXnup;RHTc>4Y7o-QTVxjvV`K|mHf@nCaxd>*i8^kEuowYMUU~Ta;nwPkn`-)ek{Asb?_He0WASl zs2?Sr#FPT3dP{^uL`Eq8fXH;-$oca3;BxU2@Ncyd{@dzeYsxZh)Ttegw6rXyvjnRU zPqD4Xq2{v2mbT}n(`eh6hRiBv1WTqCsn4f@^jUb`s)661rheuOVk0MOe0Q9KC^C|9 zP3PeY#xkrtKZ<@h(vxpoV(4e(8d~*7M~~!t^Zb$ggONDdHP{lQ#I*kZxxW1etBJ<4 z4~wqWw@;5<-(E258`|#Yu5aQ=5LkK|CgkqPmPz<>2*FJCIZf>QjnaJM4L_9B=z(*j z^xx~;)OgN~Av<(9ipl)JRO4mlg+6?VqdD{kvtxV)zsCPA9_R!ez&^3-9E$o_sdPgd zpJya~a301r}&5|1Ei*`8j{MVF6tZl=uw zV#KT-+o(AP&<6)K_-W&1*Tr;>uLQAompJB};$Nvis zWjd8(Q;k*E9mA(mIh5adGNM8)P#qivF~oG-+9KhI&($L3ITkL#*EctPE*nq(rZ4?| z%-{~LFh@3yO+U;=LwS`LruG@)53^dO3wS>oV7;PR*Qc_{kX_wv?RHo9nA9&|=l>T( zJ&6s5qgy(MweRSZ0FK4ojs7pN-%vTw$_Z2SF~2ux-~T%n7voZ7?!At+aBP!H&*Fh- zko?4ecDdnwH=0&SOls?@E4JILD`TVyB zq;x-$znG*yF;p*i$11`T<4Lf14*YgeO|PPkQGM+B55bJm;?&wBB+r|mB}Zp_*~$Ho zje*ktN4z@*>FUuR#Ag>){J6_oHx=X(^2?(U1*gjPR!O=h%wJ3MYwTl&i?S&8#T_cgHL54eUbckE!7H-%aP_Ll z8Fh)s-Y^cBTA1;h_qKjtX19Y(O+8)%{cEdlImjx=h*)N0Ysxdv`YHbhLf)6EvExsi zjgTxaYfCcuV!8sr3#Ko(G_DDmwVLGo)ZBB5Hl0!(IKa;;%dz?NPIln^X+SJ!p{(%} zKAS#r&J;mqaSpLwvFBF^tKOo)qe#%ls)x+l^q_I5!IK6DX|;xZXw zuR9&C-W%yV@7_<*1hh%UEqxorc(C=9n5B%9ClK&Zghb!v69hVg7sU`hTw=#>9?WbE z_)F!*m<{5OmQqKyHS_lnZm?QaWS_V+a*n1#(A1KqzRfyGE+G0~#z!&C5UdCjPKM0MIM!O} zt!=NR)wbT+2iL2-YH<=E0aWBs-&GM`a~vOFYe-Ns|KHkYCJ(E<{jQ&6_TFc|_u6Z( zz4m(8^WKo9cP0;&kc9V{GKP@HG|NxiNsw|;ISscK)*#YDJ2{3BfwUsB5 z&n`YyZ9NW$MZktY5(MWs)&P2Qk+$kyE66l? zg?oW@+yZk!k#n{1i*lJ-hs%7qdq>k7vJlo~CDF;t453D-DAFjXMu@Hj)@23!^DgMT zxX3NON6sa&qVLQQ|8?S3gSLSNUKb;*^ynjM!ramW)$Uh^Z}{B&63h-ul%SNGpD))h6}-pr$v_-@Y2 zlX>J4tyxxtv{}L4yw0mVJ`EF2~ZWJ%t>4)E8A+Ayi#q zU&UbjiBho@+4NMDoPMi3*YO%YMJF%SViO7IO*{FD0qD|9W7Jn+kCu-{f!98UfGV(f z8eHjP7{OXbFr@Je89}YEX=$fCGcD@#+3)fa7xmS$)Kx6C*M5OGUH36eT zPDwJM(oBi`cr%6aQxG)U;LSM^wE)uesu&7Q0%~O|UOX2kkk;U@H|UIslrqrCT)i)a!PE*Hs}bR6c3u z8zlQV!$MU%ri@X-L?fHp1cgkQxP>q&@3ox_Z;jl7uD5T=tz3Rrxni zvBKe?5U%|4%J~Q7`XYbhf8A(%w@@7UWlI(1HW?HkW{SZb6?6tfCFlmn$eawF>D1q` zPK`nVe7%jHb5tDy&(ogy2xAfL@kb zbtQHH3Q{)rLOLl-jQ@qL^1oeLO2#_$qmjR~c>iyg7W)JG1A&PnV^nI4Gjkk1Go|!? z^(fce{REBBe~iZA3nT$ zOt*e`H^#g;B-j<9$Z&ic2_2v{S8>!TKHP~>;b+1;SB%U&jXLlsaf*m!K7unKjW6$u zI#P=E!SUp9{7>4kg`nenQ^)C~#}9t3Qu&7ZC3jQVu0x_gx`AQ5EPtIXX-r-w2pe*}#X5wvTvy9X6UKZ!77Wac0n& z?GC&yR#>;eki4zj(yVgc0Pwl+aZ@BLu)eaOQ!n!7$-5kttq-EIExiPzGhe!G)mBNS zMNk_Xq0ZRpDQuMgaf|ztE;$+hZ{YDyuu*f8gVG{g(s3a%R}@Vfjrl)Ut1lC;?yTmg zMUnE&m5DKG!i%m+&$-!Qiq^3Qm|u8jTHO}$v5YO1q+naUwQNLQ&H9_f#kj@+h0u@b zN9bZ`%E9e6ms$tkkL>$wFCY!Y$RQA(`&m4tj)wbXMq6EQ9MBP*z$YUK8Zs>JUi3l56U|FHXwjC8gYXr|%z8p53%fY9x z;Z+0%%Poe=NIa=sWSkcya#(qa|murac9IGIdd-gj&F zw`w2@CAgzRUaBbPh`gL3p)N#T5X2KvMmdg>m$Q28b?VX9eajJLgtEBGK0-&hjpW5% z#te`bFsvT5!UjmbBro@5s?-yH^?)aQtk`MmF3&4@A?`b4;M>RLkbX|P_77-^IyvZO z|@G4)g#fW>_|DxDU&!#+|49S0^(VNPaK=pl2P*ABAk0y)i!xT$(Yd_CnVHgc;v zp!Qp+9hf;Ts?4_y+o&E>v9T5&-bs63i8^n%;Aps1(t(=oiw*hWimHd>(^%oWCaVx8 z4SdNgl+c5O`n!>VYDc-7Zg#qE=Zh_8Lq1#P9O%}kNq}}*C|M}JhFE4)Uk;yy8c9>9 zaK6R9eR*b%0%XvoRKT>z_@xeESKh-f%D5n7`H0eM-S`jdtVxwJDCv>~D1VebeJ%5b z{Ld3gXFXISZf1Ua=|B1}3d7}F1^LtWkSvjzMC2e*`t>!P6j&l(kPd9xDrN!(7=r@` zOLzJvixCU$$%rlf@>Mp3dTbNwAM;`>mYgvyIVB>g+-(ZdQ&i2(PMb2SD=7|%mtk$3 zo&?;m%yzkhZSNF_d#{hvH95%HhlY_v$J~;4z0=jg>9!Pp^iOmF2;vtwP}-h?>4fCSKO4!y_|;|Ioruo_G(y z2$X82g)bA-MzUKw1Lb1-LCs5`f~1Lv0Mt^$cMM}g;2YCtR!AqTz)Tic^w+IBXPe)d z!(wosWJ!lLEC2K6cDEInM_QWPR^UcLvSe0ZA)%S%vjR6$?;;^dYl$wf0!xL2+(ahA z-{;#hR#q7@S>U%GZh~_y13|Js zAx^%q%10n70kL~13|Hw~9?S$B_Y)UN!8t%tVGAXHu8vQ(2K9(kE&EjVUDaNg`rF_t zn&06=C^4R8xS>R@PO}rbkA94ke(+u({pnjGx!qKdz&br|xUuEKts8T~HLr(Hhi49R z2iFb<(kGp&T;q6eADTINT6EcI1+K_(A@?WQEt%)U2=P35B9~e+V?;v{)7#9Z#I5%6 zFT;t`rEEW52Ovg;^}4rUTO+t3FN&ac=&IZB+Dv< z!ClprUKIdxc*sh~n}XR^+6Qqu*EmM@Z%-c1g6v(gq5DY|L7`D5+ZG8duwV|-*O0V9 z{`A``aJJ0zWJ}zMQ{x}q~B+yU$T%-jI@6${aZ@2?8KWoU&zK{KuYUx~@s=)B~6RY>>bAY-hMXsuTh<=?sYsr*B zIR(%Ve#Gn<+c+G{9Hl>kdD&X$&YY5rFQC(AkFRmDu08nd;#GjQbh%X@Bi~bIJvczmNv9#?%yTHQb8?5C-aMuarF7 zGN!zd6~gG`$1UKBj)u4>UP!xO)<4*C(D!}Bv3K|aZGGB$5&0=ObENxb+TC!0F@KNZ ztho;uP3pNXk@$MH4Z#$=sxs{kfNam)U?d7aj*%d1C5H-nDF1acup{{L z4{%Npw$qbX$<(#WcI9feeqSc6F;GpJRBwLjGxx!MeLA<=eH$a!%J}VS@97qP%*<^b z`zNe^ZgKL!+z&CbT*3)W%$==mdUFJ7+R_rhd62$!y5u$^v4yN#;wN&j>DJ%$rneC6 zKy~IFz3sze+A<^2^B=IFx44>)%0*dgnMmnm;PolBjThBw>yD=HxyI$H9k;DEx@}Bt z^yoOPQw!aG#P%r zU%1IgKYpDD{!1F_NrzNJ;gguIA&tk^rr!1#8;X6tAw!Ca3ROG0E5L@i1#^7s zw&nKGvH4YIKaIODx1T2T?Wg=#ttCe9H_49F9^AS34z<59QTYX%D{~xEUFU3-I<`t1 zTV)5^Z1AQ7a<%5qpc5GKn{*i4wI322umiP~uaYom7urve!ghEp55)jt>=hwaWy37x ze(jjy;Mjp^Lo6|sesQ`?ez;h?o4UBh3E-A$D|L*;ae4Q%HFxs?=G0Mbm0K;`Ln=k+ z9qXN{z3JEe0Khi6bp;YrDxHjfqlloehxs*^&UR_>A5b*kdVas>yKpGrtp82q+2|4o z$`u`E%%h98+B}>$_0;B^Ce!~hhyatrXe}S@iKI(pi9}A7h=WGuR=z?0^l#Pt4B1t= zG6H@1)$Gq^zYW(`s=P(2O!9{VoNE#1dR% z4JRFTEWe;1#rxF`lA4b8@>gs53x8#lvQ@43P);hX+2$BYG2+CAA^`hW_8z*=pv&+gM@4nf;yUpV4>e)@d@dsbZEVa{lHh30C_4!@b5&IA>k8 zou?uAJ;a#5*KoI!Fsk;)7#p}LRbp;v=Fnh9O6d|JO*zJaysyZl;yrJ+d8BvoYCK*fr$;rtEzN|7qKozrfoQ~|!&CxHrD)>vd0p)Vk#nF9Z~toF+*rLz2tIMy zy#5;VAMMjw0R|&=Su?`cuBKg42{uv@i`hkZsw6aw9<-LLCEZ!dR)PW#vXrRW6x8h2 zn&ri^X-AZl{GhDM=4BEx(?8~ueLmY%BDWE7=CqQz&jIWGByNyDeIWWHhyuyJP0EIF z;VO~E5)lL;5ka^1g+%Cxtc#eN8tM|&epY7ElTniHKb-w{*F|Stgl&_j)tq&K3X+}3 z`|8_m9~^_*%Vr|l`X4LWUi%XcOdfNHc=z)Q4!4ySIOfXyz*1b5vfJ#DoDzA=ubUN& z&{;PeFmrP6_?8JE>&^I6dBa)xT?K)xV1W(98g>eR^n6PcF^s&D~n;FcIqoozpHnmA~Gw&R<{neEyb(NAtHLT*2Sk@UePRca+SL zQ>_=wXNP1)o6mYP$D7XEV?J9Tz*uZ%S7=_-kCHf7^P#x-RnSHn<$VwG$q@n+Yn*QCPU%y8Ig&`Iq+`%NG! zk42cj`r2!X_vGVXmHg_$ACi}2S)#*ju8Jtz^5=x}ITti-ka3Z$4mebf<)jtlV6uE1 zwsPANu*ff^VSQ}baJWhb(wWMA8v+|CmwpZ!`c@;DK>smd(a zJ93FPNn#!gf0M-ggd|pkYdW>&6;vDRS{ko8jHwR7_8mEV+$2>u;ygkceLy1hxro~C z-_6x87{?ZI9m%#qA{XYesmQe47lmHFmWzCkY}i1fKtc+foJ(#ek{3g;A3;<#Keq#p zy=Ct^EiIFRZyQ`DK!KxH3Zs45t{W^y}bYcOO`e!%5?_LiFDweNPO5r>dFit;Tvjl&p1&som3E z<`D$VWeS7xSps^r`nt&Q&LVIURb%_nO4Y8rqiSymSrg1im`AF#<_84hN&zuhuC1HM z8-v+9 z^SkH{LA98-Uxz=Cbvpvu^zEUfw=8I;Dgtp|UF@woEwGiUr`Boy{rrAie({=O*UOQ# zTkrC^3nD%`X|JRO@mvKz0KfFfX-`^vsGPdRto!u#IK06Qf2F*U4OsvL4$ZpOx*=go z{$kT3_(0;~xB|-nnb9we1YZG)?ZaQbb*{!NXI0?l_j-Z z7z9`!J3yY==3SAYlChMGnbWvAo85)XbGKKEZI}8J@G}>5y1amz6Shiu<;&c~3}K(T zk-4d_x~9WlRv}$s7S)`n*+H%kWD`nGV2-y{=p9}e*s{us%^NSNaHT)JTn((jNqTDe z7*{&&Bwg<$oqI7!&ylp?FJ75~T+Sc-nZla~<qg+eSz+`9WC>~dfH*|)!Y<99PBF2JkXP$!G3GM6bx zCf1c*M2%-qqhlhNEf7K#U(A1>AXa{l1O~c zCBA`$h?=AO<4M{VUoI_@*VxrfKW%b?Ae=CH~gdCLsr+J;O!a z+#@)_zJUhncnO8!Njl7|?(4&&sJYFY6003{x(g9evBwuodQ0htlFmPwI6V{xSJ5}P z1N210`=_KD&ZFC*QEm*A%QX0M({RGWrIDFVr*+hXbY*kHKT7)TFW#=4WZ6SzATn9( z^u0qj-&sLU-;89*Z8!z8r1y0?2Vl6sL4_ZO5wQcdKV`>&+2HM z1aMwdjDp!g`x=^a^g_v1?&KQfrq>5M!QvP6hs@KJ}a_h&=Nt1w9pKaT;8K_u_%hH1&QFRT1raST++;gvXE z?mez3X2kfxUZ^ERQ4)GCyQ0l5HG3}9T7D^|DxaxcJ(kn2vqaBs&4dZ~GPfo!_o8Hx zobrRreEE`@%U^HiTXoiRI15#NVi5z`7838Z$n?EbXLY9^34N`*a3%*3L4iT=|W+FJ|$G`RqjmfFMYK z4Zow88D0uG7=)5R^q_`QW}q?kLB_=8#^e{L(^!zkekJGPjU143U~|vb(XiNiufgsHoEwBi$~UD3}W)no<$>g>kCF zW@Qae;uX30!_ojEV)AN|Q;UjH9tp8zd<7%pI?zx$Rh}usW2<&dZ6*-8k#o>riMO

    (HtccMT~l|H<=F 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

    cf0HPoFWo=V0{7_&YFVW!` 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 literal 0 HcmV?d00001 diff --git a/userspace/ksud/build.rs b/userspace/ksud/build.rs new file mode 100644 index 0000000..fd935d6 --- /dev/null +++ b/userspace/ksud/build.rs @@ -0,0 +1,47 @@ +use std::{env, fs::File, io::Write, path::Path, process::Command}; + +fn get_git_version() -> Result<(u32, String), std::io::Error> { + let output = Command::new("git") + .args(["rev-list", "--count", "HEAD"]) + .output()?; + + let output = output.stdout; + let version_code = String::from_utf8(output).expect("Failed to read git count stdout"); + let version_code: u32 = version_code + .trim() + .parse() + .map_err(|_| std::io::Error::other("Failed to parse git count"))?; + let version_code = 40000 - 2815 + version_code; // For historical reasons + + let version_name = String::from_utf8( + Command::new("git") + .args(["describe", "--tags", "--always"]) + .output()? + .stdout, + ) + .map_err(|_| std::io::Error::other("Failed to parse git count"))?; + let version_name = version_name.trim_start_matches('v').to_string(); + Ok((version_code, version_name)) +} + +fn main() { + let (code, name) = match get_git_version() { + Ok((code, name)) => (code, name), + Err(_) => { + // show warning if git is not installed + println!("cargo:warning=Failed to get git version, using 0.0.0"); + (0, "0.0.0".to_string()) + } + }; + let out_dir = env::var("OUT_DIR").expect("Failed to get $OUT_DIR"); + let out_dir = Path::new(&out_dir); + File::create(Path::new(out_dir).join("VERSION_CODE")) + .expect("Failed to create VERSION_CODE") + .write_all(code.to_string().as_bytes()) + .expect("Failed to write VERSION_CODE"); + + File::create(Path::new(out_dir).join("VERSION_NAME")) + .expect("Failed to create VERSION_NAME") + .write_all(name.trim().as_bytes()) + .expect("Failed to write VERSION_NAME"); +} diff --git a/userspace/ksud/src/apk_sign.rs b/userspace/ksud/src/apk_sign.rs new file mode 100644 index 0000000..4b2c4a9 --- /dev/null +++ b/userspace/ksud/src/apk_sign.rs @@ -0,0 +1,115 @@ +use anyhow::{Result, ensure}; +use std::io::{Read, Seek, SeekFrom}; + +pub fn get_apk_signature(apk: &str) -> Result<(u32, String)> { + let mut buffer = [0u8; 0x10]; + let mut size4 = [0u8; 4]; + let mut size8 = [0u8; 8]; + let mut size_of_block = [0u8; 8]; + + let mut f = std::fs::File::open(apk)?; + + let mut i = 0; + loop { + let mut n = [0u8; 2]; + f.seek(SeekFrom::End(-i - 2))?; + f.read_exact(&mut n)?; + + let n = u16::from_le_bytes(n); + if i64::from(n) == i { + f.seek(SeekFrom::Current(-22))?; + f.read_exact(&mut size4)?; + + if u32::from_le_bytes(size4) ^ 0xcafe_babe_u32 == 0xccfb_f1ee_u32 { + if i > 0 { + println!("warning: comment length is {i}"); + } + break; + } + } + + ensure!(n != 0xffff, "not a zip file"); + + i += 1; + } + + f.seek(SeekFrom::Current(12))?; + // offset + f.read_exact(&mut size4)?; + f.seek(SeekFrom::Start(u64::from(u32::from_le_bytes(size4)) - 0x18))?; + + f.read_exact(&mut size8)?; + f.read_exact(&mut buffer)?; + + ensure!(&buffer == b"APK Sig Block 42", "Can not found sig block"); + + let pos = u64::from(u32::from_le_bytes(size4)) - (u64::from_le_bytes(size8) + 0x8); + f.seek(SeekFrom::Start(pos))?; + f.read_exact(&mut size_of_block)?; + + ensure!(size_of_block == size8, "not a signed apk"); + + let mut v2_signing: Option<(u32, String)> = None; + let mut v3_signing_exist = false; + let mut v3_1_signing_exist = false; + + loop { + let mut id = [0u8; 4]; + let mut offset = 4u32; + + f.read_exact(&mut size8)?; // sequence length + if size8 == size_of_block { + break; + } + + f.read_exact(&mut id)?; // id + + let id = u32::from_le_bytes(id); + if id == 0x7109_871a_u32 { + v2_signing = Some(calc_cert_sha256(&mut f, &mut size4, &mut offset)?); + } else if id == 0xf053_68c0_u32 { + // v3 signature scheme + v3_signing_exist = true; + } else if id == 0x1b93_ad61_u32 { + // v3.1 signature scheme: credits to vvb2060 + v3_1_signing_exist = true; + } + + f.seek(SeekFrom::Current( + i64::from_le_bytes(size8) - i64::from(offset), + ))?; + } + + if v3_signing_exist || v3_1_signing_exist { + return Err(anyhow::anyhow!("Unexpected v3 signature found!",)); + } + + v2_signing.ok_or(anyhow::anyhow!("No signature found!")) +} + +fn calc_cert_sha256( + f: &mut std::fs::File, + size4: &mut [u8; 4], + offset: &mut u32, +) -> Result<(u32, String)> { + f.read_exact(size4)?; // signer-sequence length + f.read_exact(size4)?; // signer length + f.read_exact(size4)?; // signed data length + *offset += 0x4 * 3; + + f.read_exact(size4)?; // digests-sequence length + let pos = u32::from_le_bytes(*size4); // skip digests + f.seek(SeekFrom::Current(i64::from(pos)))?; + *offset += 0x4 + pos; + + f.read_exact(size4)?; // certificates length + f.read_exact(size4)?; // certificate length + *offset += 0x4 * 2; + + let cert_len = u32::from_le_bytes(*size4); + let mut cert: Vec = vec![0; cert_len as usize]; + f.read_exact(&mut cert)?; + *offset += cert_len; + + Ok((cert_len, sha256::digest(&cert))) +} diff --git a/userspace/ksud/src/assets.rs b/userspace/ksud/src/assets.rs new file mode 100644 index 0000000..e722cd6 --- /dev/null +++ b/userspace/ksud/src/assets.rs @@ -0,0 +1,55 @@ +use anyhow::Result; +use const_format::concatcp; +use rust_embed::RustEmbed; +use std::path::Path; + +use crate::{defs::BINARY_DIR, utils}; + +pub const RESETPROP_PATH: &str = concatcp!(BINARY_DIR, "resetprop"); +pub const BUSYBOX_PATH: &str = concatcp!(BINARY_DIR, "busybox"); +pub const BOOTCTL_PATH: &str = concatcp!(BINARY_DIR, "bootctl"); + +#[cfg(all(target_arch = "x86_64", target_os = "android"))] +#[derive(RustEmbed)] +#[folder = "bin/x86_64"] +struct Asset; + +// IF NOT x86_64 ANDROID, ie. macos, linux, windows, always use aarch64 +#[cfg(all(target_arch = "aarch64", target_os = "android"))] +#[derive(RustEmbed)] +#[folder = "bin/aarch64"] +struct Asset; + +#[cfg(all(target_arch = "arm", target_os = "android"))] +#[derive(RustEmbed)] +#[folder = "bin/arm"] +struct Asset; + +pub fn ensure_binaries(ignore_if_exist: bool) -> Result<()> { + for file in Asset::iter() { + if file == "ksuinit" || file.ends_with(".ko") { + // don't extract ksuinit and kernel modules + continue; + } + let asset = Asset::get(&file).ok_or(anyhow::anyhow!("asset not found: {}", file))?; + utils::ensure_binary(format!("{BINARY_DIR}{file}"), &asset.data, ignore_if_exist)? + } + Ok(()) +} + +pub fn copy_assets_to_file(name: &str, dst: impl AsRef) -> Result<()> { + let asset = Asset::get(name).ok_or(anyhow::anyhow!("asset not found: {}", name))?; + std::fs::write(dst, asset.data)?; + Ok(()) +} + +pub fn list_supported_kmi() -> Result> { + let mut list = Vec::new(); + for file in Asset::iter() { + // kmi_name = "xxx_kernelsu.ko" + if let Some(kmi) = file.strip_suffix("_kernelsu.ko") { + list.push(kmi.to_string()); + } + } + Ok(list) +} diff --git a/userspace/ksud/src/banner b/userspace/ksud/src/banner new file mode 100644 index 0000000..f2812bf --- /dev/null +++ b/userspace/ksud/src/banner @@ -0,0 +1,10 @@ + ____ _ _ ____ _ _ +/ ___| _ _| | _(_) ___|| | | | +\___ \| | | | |/ / \___ \| | | | + ___) | |_| | <| |___) | |_| | +|____/ \__,_|_|\_\_|____/ \___/ + _ _ _ _ + | | | | | |_ _ __ __ _ + | | | | | __| '__/ _\ | + | |_| | | |_| | | (_| | + \___/|_|\__|_| \__,_| \ No newline at end of file diff --git a/userspace/ksud/src/boot_patch.rs b/userspace/ksud/src/boot_patch.rs new file mode 100644 index 0000000..531b422 --- /dev/null +++ b/userspace/ksud/src/boot_patch.rs @@ -0,0 +1,791 @@ +#[cfg(unix)] +use std::{ + os::unix::fs::PermissionsExt, + path::{Path, PathBuf}, + process::{Command, Stdio}, +}; + +use anyhow::{Context, Result, anyhow, bail, ensure}; +use regex_lite::Regex; +use which::which; + +use crate::{ + assets, + defs::{self, BACKUP_FILENAME, KSU_BACKUP_DIR, KSU_BACKUP_FILE_PREFIX}, + utils, +}; + +#[cfg(target_os = "android")] +fn ensure_gki_kernel() -> Result<()> { + let version = get_kernel_version()?; + let is_gki = version.0 == 5 && version.1 >= 10 || version.2 > 5; + ensure!(is_gki, "only support GKI kernel"); + Ok(()) +} + +#[cfg(target_os = "android")] +fn get_kernel_version() -> Result<(i32, i32, i32)> { + let uname = rustix::system::uname(); + let version = uname.release().to_string_lossy(); + let re = Regex::new(r"(\d+)\.(\d+)\.(\d+)")?; + if let Some(captures) = re.captures(&version) { + let major = captures + .get(1) + .and_then(|m| m.as_str().parse::().ok()) + .ok_or_else(|| anyhow!("Major version parse error"))?; + let minor = captures + .get(2) + .and_then(|m| m.as_str().parse::().ok()) + .ok_or_else(|| anyhow!("Minor version parse error"))?; + let patch = captures + .get(3) + .and_then(|m| m.as_str().parse::().ok()) + .ok_or_else(|| anyhow!("Patch version parse error"))?; + Ok((major, minor, patch)) + } else { + Err(anyhow!("Invalid kernel version string")) + } +} + +#[cfg(target_os = "android")] +fn parse_kmi(version: &str) -> Result { + let re = Regex::new(r"(.* )?(\d+\.\d+)(\S+)?(android\d+)(.*)")?; + let cap = re + .captures(version) + .ok_or_else(|| anyhow::anyhow!("Failed to get KMI from boot/modules"))?; + let android_version = cap.get(4).map_or("", |m| m.as_str()); + let kernel_version = cap.get(2).map_or("", |m| m.as_str()); + Ok(format!("{android_version}-{kernel_version}")) +} + +#[cfg(target_os = "android")] +fn parse_kmi_from_uname() -> Result { + let uname = rustix::system::uname(); + let version = uname.release().to_string_lossy(); + parse_kmi(&version) +} + +#[cfg(target_os = "android")] +fn parse_kmi_from_modules() -> Result { + use std::io::BufRead; + // find a *.ko in /vendor/lib/modules + let modfile = std::fs::read_dir("/vendor/lib/modules")? + .filter_map(Result::ok) + .find(|entry| entry.path().extension().is_some_and(|ext| ext == "ko")) + .map(|entry| entry.path()) + .ok_or_else(|| anyhow!("No kernel module found"))?; + let output = Command::new("modinfo").arg(modfile).output()?; + for line in output.stdout.lines().map_while(Result::ok) { + if line.starts_with("vermagic") { + return parse_kmi(&line); + } + } + anyhow::bail!("Parse KMI from modules failed") +} + +#[cfg(target_os = "android")] +pub fn get_current_kmi() -> Result { + parse_kmi_from_uname().or_else(|_| parse_kmi_from_modules()) +} + +#[cfg(not(target_os = "android"))] +pub fn get_current_kmi() -> Result { + bail!("Unsupported platform") +} + +fn parse_kmi_from_kernel(kernel: &PathBuf, workdir: &Path) -> Result { + use std::fs::{File, copy}; + use std::io::{BufReader, Read}; + let kernel_path = workdir.join("kernel"); + copy(kernel, &kernel_path).context("Failed to copy kernel")?; + + let file = File::open(&kernel_path).context("Failed to open kernel file")?; + let mut reader = BufReader::new(file); + let mut buffer = Vec::new(); + reader + .read_to_end(&mut buffer) + .context("Failed to read kernel file")?; + + let printable_strings: Vec<&str> = buffer + .split(|&b| b == 0) + .filter_map(|slice| std::str::from_utf8(slice).ok()) + .filter(|s| s.chars().all(|c| c.is_ascii_graphic() || c == ' ')) + .collect(); + + let re = + Regex::new(r"(?:.* )?(\d+\.\d+)(?:\S+)?(android\d+)").context("Failed to compile regex")?; + for s in printable_strings { + if let Some(caps) = re.captures(s) + && let (Some(kernel_version), Some(android_version)) = (caps.get(1), caps.get(2)) + { + let kmi = format!("{}-{}", android_version.as_str(), kernel_version.as_str()); + return Ok(kmi); + } + } + println!("- Failed to get KMI version"); + bail!("Try to choose LKM manually") +} + +fn parse_kmi_from_boot(magiskboot: &Path, image: &PathBuf, workdir: &Path) -> Result { + let image_path = workdir.join("image"); + + std::fs::copy(image, &image_path).context("Failed to copy image")?; + + let status = Command::new(magiskboot) + .current_dir(workdir) + .stdout(Stdio::null()) + .stderr(Stdio::null()) + .arg("unpack") + .arg(&image_path) + .status() + .context("Failed to execute magiskboot command")?; + + if !status.success() { + bail!( + "magiskboot unpack failed with status: {:?}", + status.code().unwrap() + ); + } + + parse_kmi_from_kernel(&image_path, workdir) +} + +fn do_cpio_cmd(magiskboot: &Path, workdir: &Path, cpio_path: &Path, cmd: &str) -> Result<()> { + let status = Command::new(magiskboot) + .current_dir(workdir) + .stdout(Stdio::null()) + .stderr(Stdio::null()) + .arg("cpio") + .arg(cpio_path) + .arg(cmd) + .status()?; + ensure!(status.success(), "magiskboot cpio {} failed", cmd); + Ok(()) +} + +fn is_magisk_patched(magiskboot: &Path, workdir: &Path, cpio_path: &Path) -> Result { + let status = Command::new(magiskboot) + .current_dir(workdir) + .stdout(Stdio::null()) + .stderr(Stdio::null()) + .arg("cpio") + .arg(cpio_path) + .arg("test") + .status()?; + // 0: stock, 1: magisk + Ok(status.code() == Some(1)) +} + +fn is_kernelsu_patched(magiskboot: &Path, workdir: &Path, cpio_path: &Path) -> Result { + let status = Command::new(magiskboot) + .current_dir(workdir) + .stdout(Stdio::null()) + .stderr(Stdio::null()) + .arg("cpio") + .arg(cpio_path) + .arg("exists kernelsu.ko") + .status()?; + + Ok(status.success()) +} + +fn dd, Q: AsRef>(ifile: P, ofile: Q) -> Result<()> { + let status = Command::new("dd") + .stdout(Stdio::null()) + .stderr(Stdio::null()) + .arg(format!("if={}", ifile.as_ref().display())) + .arg(format!("of={}", ofile.as_ref().display())) + .status()?; + ensure!( + status.success(), + "dd if={:?} of={:?} failed", + ifile.as_ref(), + ofile.as_ref() + ); + Ok(()) +} + +pub fn restore( + image: Option, + magiskboot_path: Option, + flash: bool, +) -> Result<()> { + let tmpdir = tempfile::Builder::new() + .prefix("KernelSU") + .tempdir() + .context("create temp dir failed")?; + let workdir = tmpdir.path(); + let magiskboot = find_magiskboot(magiskboot_path, workdir)?; + + let kmi = get_current_kmi().unwrap_or_else(|_| String::from("")); + + let (bootimage, bootdevice) = find_boot_image(&image, &kmi, false, false, workdir, &None)?; + + println!("- Unpacking boot image"); + let status = Command::new(&magiskboot) + .current_dir(workdir) + .stdout(Stdio::null()) + .stderr(Stdio::null()) + .arg("unpack") + .arg(bootimage.display().to_string()) + .status()?; + ensure!(status.success(), "magiskboot unpack failed"); + + let mut ramdisk = workdir.join("ramdisk.cpio"); + if !ramdisk.exists() { + ramdisk = workdir.join("vendor_ramdisk").join("init_boot.cpio") + } + if !ramdisk.exists() { + ramdisk = workdir.join("vendor_ramdisk").join("ramdisk.cpio"); + } + if !ramdisk.exists() { + bail!("No compatible ramdisk found.") + } + let ramdisk = ramdisk.as_path(); + let is_kernelsu_patched = is_kernelsu_patched(&magiskboot, workdir, ramdisk)?; + ensure!(is_kernelsu_patched, "boot image is not patched by KernelSU"); + + let mut new_boot = None; + let mut from_backup = false; + + #[cfg(target_os = "android")] + if do_cpio_cmd( + &magiskboot, + workdir, + ramdisk, + &format!("exists {BACKUP_FILENAME}"), + ) + .is_ok() + { + do_cpio_cmd( + &magiskboot, + workdir, + ramdisk, + &format!("extract {BACKUP_FILENAME} {BACKUP_FILENAME}"), + )?; + let sha = std::fs::read(workdir.join(BACKUP_FILENAME))?; + let sha = String::from_utf8(sha)?; + let sha = sha.trim(); + let backup_path = + PathBuf::from(KSU_BACKUP_DIR).join(format!("{KSU_BACKUP_FILE_PREFIX}{sha}")); + if backup_path.is_file() { + new_boot = Some(backup_path); + from_backup = true; + } else { + println!("- Warning: no backup {backup_path:?} found!"); + } + + if let Err(e) = clean_backup(sha) { + println!("- Warning: Cleanup backup image failed: {e}"); + } + } else { + println!("- Backup info is absent!"); + } + + if new_boot.is_none() { + // remove kernelsu.ko + do_cpio_cmd(&magiskboot, workdir, ramdisk, "rm kernelsu.ko")?; + + // if init.real exists, restore it + let status = do_cpio_cmd(&magiskboot, workdir, ramdisk, "exists init.real").is_ok(); + if status { + do_cpio_cmd(&magiskboot, workdir, ramdisk, "mv init.real init")?; + } + + println!("- Repacking boot image"); + let status = Command::new(&magiskboot) + .current_dir(workdir) + .stdout(Stdio::null()) + .stderr(Stdio::null()) + .arg("repack") + .arg(&bootimage) + .status()?; + ensure!(status.success(), "magiskboot repack failed"); + new_boot = Some(workdir.join("new-boot.img")); + } + + let new_boot = new_boot.unwrap(); + + if image.is_some() { + // if image is specified, write to output file + let output_dir = std::env::current_dir()?; + let now = chrono::Utc::now(); + let output_image = output_dir.join(format!( + "kernelsu_restore_{}.img", + now.format("%Y%m%d_%H%M%S") + )); + + if from_backup || std::fs::rename(&new_boot, &output_image).is_err() { + std::fs::copy(&new_boot, &output_image).context("copy out new boot failed")?; + } + println!("- Output file is written to"); + println!("- {}", output_image.display().to_string().trim_matches('"')); + } + if flash { + if from_backup { + println!("- Flashing new boot image from {}", new_boot.display()); + } else { + println!("- Flashing new boot image"); + } + flash_boot(&bootdevice, new_boot)?; + } + println!("- Done!"); + Ok(()) +} + +#[allow(clippy::too_many_arguments)] +pub fn patch( + image: Option, + kernel: Option, + kmod: Option, + init: Option, + ota: bool, + flash: bool, + out: Option, + magiskboot: Option, + kmi: Option, + partition: Option, +) -> Result<()> { + let result = do_patch( + image, kernel, kmod, init, ota, flash, out, magiskboot, kmi, partition, + ); + if let Err(ref e) = result { + println!("- Install Error: {e}"); + } + result +} + +#[allow(clippy::too_many_arguments)] +fn do_patch( + image: Option, + kernel: Option, + kmod: Option, + init: Option, + ota: bool, + flash: bool, + out: Option, + magiskboot_path: Option, + kmi: Option, + partition: Option, +) -> Result<()> { + println!(include_str!("banner")); + + let patch_file = image.is_some(); + + #[cfg(target_os = "android")] + if !patch_file { + ensure_gki_kernel()?; + } + + let is_replace_kernel = kernel.is_some(); + + if is_replace_kernel { + ensure!( + init.is_none() && kmod.is_none(), + "init and module must not be specified." + ); + } + + let tmpdir = tempfile::Builder::new() + .prefix("KernelSU") + .tempdir() + .context("create temp dir failed")?; + let workdir = tmpdir.path(); + + // extract magiskboot + let magiskboot = find_magiskboot(magiskboot_path, workdir)?; + + let kmi = if let Some(kmi) = kmi { + kmi + } else { + match get_current_kmi() { + Ok(value) => value, + Err(e) => { + println!("- {e}"); + if let Some(image_path) = &image { + println!( + "- Trying to auto detect KMI version for {}", + image_path.to_str().unwrap() + ); + parse_kmi_from_boot(&magiskboot, image_path, tmpdir.path())? + } else if let Some(kernel_path) = &kernel { + println!( + "- Trying to auto detect KMI version for {}", + kernel_path.to_str().unwrap() + ); + parse_kmi_from_kernel(kernel_path, tmpdir.path())? + } else { + "".to_string() + } + } + } + }; + + let (bootimage, bootdevice) = + find_boot_image(&image, &kmi, ota, is_replace_kernel, workdir, &partition)?; + + let bootimage = bootimage.as_path(); + + // try extract magiskboot/bootctl + let _ = assets::ensure_binaries(false); + + if let Some(kernel) = kernel { + std::fs::copy(kernel, workdir.join("kernel")).context("copy kernel from failed")?; + } + + println!("- Preparing assets"); + + let kmod_file = workdir.join("kernelsu.ko"); + if let Some(kmod) = kmod { + std::fs::copy(kmod, kmod_file).context("copy kernel module failed")?; + } else { + // If kmod is not specified, extract from assets + println!("- KMI: {kmi}"); + let name = format!("{kmi}_kernelsu.ko"); + assets::copy_assets_to_file(&name, kmod_file) + .with_context(|| format!("Failed to copy {name}"))?; + }; + + let init_file = workdir.join("init"); + if let Some(init) = init { + std::fs::copy(init, init_file).context("copy init failed")?; + } else { + assets::copy_assets_to_file("ksuinit", init_file).context("copy ksuinit failed")?; + } + + println!("- Unpacking boot image"); + let status = Command::new(&magiskboot) + .current_dir(workdir) + .stdout(Stdio::null()) + .stderr(Stdio::null()) + .arg("unpack") + .arg(bootimage) + .status()?; + ensure!(status.success(), "magiskboot unpack failed"); + + let mut ramdisk = workdir.join("ramdisk.cpio"); + if !ramdisk.exists() { + ramdisk = workdir.join("vendor_ramdisk").join("init_boot.cpio") + } + if !ramdisk.exists() { + ramdisk = workdir.join("vendor_ramdisk").join("ramdisk.cpio"); + } + if !ramdisk.exists() { + println!("- No ramdisk, create by default"); + ramdisk = "ramdisk.cpio".into(); + } + let ramdisk = ramdisk.as_path(); + let is_magisk_patched = is_magisk_patched(&magiskboot, workdir, ramdisk)?; + ensure!(!is_magisk_patched, "Cannot work with Magisk patched image"); + + println!("- Adding KernelSU LKM"); + let is_kernelsu_patched = is_kernelsu_patched(&magiskboot, workdir, ramdisk)?; + + let mut need_backup = false; + if !is_kernelsu_patched { + // kernelsu.ko is not exist, backup init if necessary + let status = do_cpio_cmd(&magiskboot, workdir, ramdisk, "exists init"); + if status.is_ok() { + do_cpio_cmd(&magiskboot, workdir, ramdisk, "mv init init.real")?; + } + need_backup = flash; + } + + do_cpio_cmd(&magiskboot, workdir, ramdisk, "add 0755 init init")?; + do_cpio_cmd( + &magiskboot, + workdir, + ramdisk, + "add 0755 kernelsu.ko kernelsu.ko", + )?; + + #[cfg(target_os = "android")] + if need_backup && let Err(e) = do_backup(&magiskboot, workdir, ramdisk, bootimage) { + println!("- Backup stock image failed: {e}"); + } + + println!("- Repacking boot image"); + // magiskboot repack boot.img + let status = Command::new(&magiskboot) + .current_dir(workdir) + .stdout(Stdio::null()) + .stderr(Stdio::null()) + .arg("repack") + .arg(bootimage) + .status()?; + ensure!(status.success(), "magiskboot repack failed"); + let new_boot = workdir.join("new-boot.img"); + + if patch_file { + // if image is specified, write to output file + let output_dir = out.unwrap_or(std::env::current_dir()?); + let now = chrono::Utc::now(); + let output_image = output_dir.join(format!( + "kernelsu_patched_{}.img", + now.format("%Y%m%d_%H%M%S") + )); + + if std::fs::rename(&new_boot, &output_image).is_err() { + std::fs::copy(&new_boot, &output_image).context("copy out new boot failed")?; + } + println!("- Output file is written to"); + println!("- {}", output_image.display().to_string().trim_matches('"')); + } + + if flash { + println!("- Flashing new boot image"); + flash_boot(&bootdevice, new_boot)?; + + if ota { + post_ota()?; + } + } + + println!("- Done!"); + Ok(()) +} + +#[cfg(target_os = "android")] +fn calculate_sha1(file_path: impl AsRef) -> Result { + use sha1::Digest; + use std::io::Read; + let mut file = std::fs::File::open(file_path.as_ref())?; + let mut hasher = sha1::Sha1::new(); + let mut buffer = [0; 1024]; + + loop { + let n = file.read(&mut buffer)?; + if n == 0 { + break; + } + hasher.update(&buffer[..n]); + } + + let result = hasher.finalize(); + Ok(format!("{result:x}")) +} + +#[cfg(target_os = "android")] +fn do_backup(magiskboot: &Path, workdir: &Path, cpio_path: &Path, image: &Path) -> Result<()> { + let sha1 = calculate_sha1(image)?; + let filename = format!("{KSU_BACKUP_FILE_PREFIX}{sha1}"); + + println!("- Backup stock boot image"); + // magiskboot cpio ramdisk.cpio 'add 0755 $BACKUP_FILENAME' + let target = format!("{KSU_BACKUP_DIR}{filename}"); + std::fs::copy(image, &target).with_context(|| format!("backup to {target}"))?; + std::fs::write(workdir.join(BACKUP_FILENAME), sha1.as_bytes()).context("write sha1")?; + do_cpio_cmd( + magiskboot, + workdir, + cpio_path, + &format!("add 0755 {BACKUP_FILENAME} {BACKUP_FILENAME}"), + )?; + println!("- Stock image has been backup to"); + println!("- {target}"); + Ok(()) +} + +#[cfg(target_os = "android")] +fn clean_backup(sha1: &str) -> Result<()> { + println!("- Clean up backup"); + let backup_name = format!("{KSU_BACKUP_FILE_PREFIX}{sha1}"); + let dir = std::fs::read_dir(defs::KSU_BACKUP_DIR)?; + for entry in dir.flatten() { + let path = entry.path(); + if !path.is_file() { + continue; + } + if let Some(name) = path.file_name() { + let name = name.to_string_lossy().to_string(); + if name != backup_name + && name.starts_with(KSU_BACKUP_FILE_PREFIX) + && std::fs::remove_file(path).is_ok() + { + println!("- removed {name}"); + } + } + } + Ok(()) +} + +fn flash_boot(bootdevice: &Option, new_boot: PathBuf) -> Result<()> { + let Some(bootdevice) = bootdevice else { + bail!("boot device not found") + }; + let status = Command::new("blockdev") + .arg("--setrw") + .arg(bootdevice) + .status()?; + ensure!(status.success(), "set boot device rw failed"); + dd(new_boot, bootdevice).context("flash boot failed")?; + Ok(()) +} + +fn find_magiskboot(magiskboot_path: Option, workdir: &Path) -> Result { + let magiskboot = { + if which("magiskboot").is_ok() { + let _ = assets::ensure_binaries(true); + "magiskboot".into() + } else { + // magiskboot is not in $PATH, use builtin or specified one + let magiskboot = if let Some(magiskboot_path) = magiskboot_path { + std::fs::canonicalize(magiskboot_path)? + } else { + let magiskboot_path = workdir.join("magiskboot"); + assets::copy_assets_to_file("magiskboot", &magiskboot_path) + .context("copy magiskboot failed")?; + magiskboot_path + }; + ensure!(magiskboot.exists(), "{magiskboot:?} is not exist"); + #[cfg(unix)] + let _ = std::fs::set_permissions(&magiskboot, std::fs::Permissions::from_mode(0o755)); + magiskboot + } + }; + Ok(magiskboot) +} + +fn find_boot_image( + image: &Option, + kmi: &str, + ota: bool, + is_replace_kernel: bool, + workdir: &Path, + partition: &Option, +) -> Result<(PathBuf, Option)> { + let bootimage; + let mut bootdevice = None; + if let Some(ref image) = *image { + ensure!(image.exists(), "boot image not found"); + bootimage = std::fs::canonicalize(image)?; + } else { + if cfg!(not(target_os = "android")) { + println!("- Current OS is not android, refusing auto bootimage/bootdevice detection"); + bail!("Please specify a boot image"); + } + + let slot_suffix = get_slot_suffix(ota); + let boot_partition_name = choose_boot_partition(kmi, is_replace_kernel, partition); + let boot_partition = format!("/dev/block/by-name/{boot_partition_name}{slot_suffix}"); + + println!("- Bootdevice: {boot_partition}"); + let tmp_boot_path = workdir.join("boot.img"); + + dd(&boot_partition, &tmp_boot_path)?; + + ensure!(tmp_boot_path.exists(), "boot image not found"); + + bootimage = tmp_boot_path; + bootdevice = Some(boot_partition); + }; + Ok((bootimage, bootdevice)) +} + +#[cfg(target_os = "android")] +pub fn choose_boot_partition( + kmi: &str, + is_replace_kernel: bool, + partition: &Option, +) -> String { + let slot_suffix = get_slot_suffix(false); + let skip_init_boot = kmi.starts_with("android12-"); + let init_boot_exist = Path::new(&format!("/dev/block/by-name/init_boot{slot_suffix}")).exists(); + + // if specific partition is specified, use it + if let Some(part) = partition { + return match part.as_str() { + "boot" | "init_boot" | "vendor_boot" => part.clone(), + _ => "boot".to_string(), + }; + } + + // if init_boot exists and not skipping it, use it + if !is_replace_kernel && init_boot_exist && !skip_init_boot { + return "init_boot".to_string(); + } + + "boot".to_string() +} + +#[cfg(not(target_os = "android"))] +pub fn choose_boot_partition( + _kmi: &str, + _is_replace_kernel: bool, + _partition: &Option, +) -> String { + "boot".to_string() +} + +#[cfg(target_os = "android")] +pub fn get_slot_suffix(ota: bool) -> String { + let mut slot_suffix = utils::getprop("ro.boot.slot_suffix").unwrap_or_else(|| String::from("")); + if !slot_suffix.is_empty() && ota { + if slot_suffix == "_a" { + slot_suffix = "_b".to_string() + } else { + slot_suffix = "_a".to_string() + } + } + slot_suffix +} + +#[cfg(not(target_os = "android"))] +pub fn get_slot_suffix(_ota: bool) -> String { + String::new() +} + +#[cfg(target_os = "android")] +pub fn list_available_partitions() -> Vec { + let slot_suffix = get_slot_suffix(false); + let candidates = vec!["boot", "init_boot", "vendor_boot"]; + candidates + .into_iter() + .filter(|name| Path::new(&format!("/dev/block/by-name/{}{}", name, slot_suffix)).exists()) + .map(|s| s.to_string()) + .collect() +} + +#[cfg(not(target_os = "android"))] +pub fn list_available_partitions() -> Vec { + Vec::new() +} + +fn post_ota() -> Result<()> { + use crate::defs::ADB_DIR; + use assets::BOOTCTL_PATH; + let status = Command::new(BOOTCTL_PATH).arg("hal-info").status()?; + if !status.success() { + return Ok(()); + } + + let current_slot = Command::new(BOOTCTL_PATH) + .arg("get-current-slot") + .output()? + .stdout; + let current_slot = String::from_utf8(current_slot)?; + let current_slot = current_slot.trim(); + let target_slot = if current_slot == "0" { 1 } else { 0 }; + + Command::new(BOOTCTL_PATH) + .arg(format!("set-active-boot-slot {target_slot}")) + .status()?; + + let post_fs_data = std::path::Path::new(ADB_DIR).join("post-fs-data.d"); + utils::ensure_dir_exists(&post_fs_data)?; + let post_ota_sh = post_fs_data.join("post_ota.sh"); + + let sh_content = format!( + r###" +{BOOTCTL_PATH} mark-boot-successful +rm -f {BOOTCTL_PATH} +rm -f /data/adb/post-fs-data.d/post_ota.sh +"### + ); + + std::fs::write(&post_ota_sh, sh_content)?; + #[cfg(unix)] + std::fs::set_permissions(post_ota_sh, std::fs::Permissions::from_mode(0o755))?; + + Ok(()) +} diff --git a/userspace/ksud/src/cli.rs b/userspace/ksud/src/cli.rs new file mode 100644 index 0000000..7afbe99 --- /dev/null +++ b/userspace/ksud/src/cli.rs @@ -0,0 +1,771 @@ +use anyhow::{Ok, Result}; +use clap::Parser; +use std::path::PathBuf; + +#[cfg(target_os = "android")] +use android_logger::Config; +#[cfg(target_os = "android")] +use log::LevelFilter; + +use crate::{apk_sign, assets, debug, defs, init_event, ksucalls, module, utils}; + +/// KernelSU userspace cli +#[derive(Parser, Debug)] +#[command(author, version = defs::VERSION_NAME, about, long_about = None)] +struct Args { + #[command(subcommand)] + command: Commands, +} + +#[derive(clap::Subcommand, Debug)] +enum Commands { + /// Manage KernelSU modules + Module { + #[command(subcommand)] + command: Module, + }, + + /// Trigger `post-fs-data` event + PostFsData, + + /// Trigger `service` event + Services, + + /// Trigger `boot-complete` event + BootCompleted, + + /// Install KernelSU userspace component to system + Install { + #[arg(long, default_value = None)] + magiskboot: Option, + }, + + /// Uninstall KernelSU modules and itself(LKM Only) + Uninstall { + /// magiskboot path, if not specified, will search from $PATH + #[arg(long, default_value = None)] + magiskboot: Option, + }, + + /// SELinux policy Patch tool + Sepolicy { + #[command(subcommand)] + command: Sepolicy, + }, + + /// Manage App Profiles + Profile { + #[command(subcommand)] + command: Profile, + }, + + /// Manage kernel features + Feature { + #[command(subcommand)] + command: Feature, + }, + + /// Patch boot or init_boot images to apply KernelSU + BootPatch { + /// boot image path, if not specified, will try to find the boot image automatically + #[arg(short, long)] + boot: Option, + + /// kernel image path to replace + #[arg(short, long)] + kernel: Option, + + /// LKM module path to replace, if not specified, will use the builtin one + #[arg(short, long)] + module: Option, + + /// init to be replaced + #[arg(short, long, requires("module"))] + init: Option, + + /// will use another slot when boot image is not specified + #[arg(short = 'u', long, default_value = "false")] + ota: bool, + + /// Flash it to boot partition after patch + #[arg(short, long, default_value = "false")] + flash: bool, + + /// output path, if not specified, will use current directory + #[arg(short, long, default_value = None)] + out: Option, + + /// magiskboot path, if not specified, will search from $PATH + #[arg(long, default_value = None)] + magiskboot: Option, + + /// KMI version, if specified, will use the specified KMI + #[arg(long, default_value = None)] + kmi: Option, + + /// target partition override (init_boot | boot | vendor_boot) + #[arg(long, default_value = None)] + partition: Option, + }, + + /// Restore boot or init_boot images patched by KernelSU + BootRestore { + /// boot image path, if not specified, will try to find the boot image automatically + #[arg(short, long)] + boot: Option, + + /// Flash it to boot partition after patch + #[arg(short, long, default_value = "false")] + flash: bool, + + /// magiskboot path, if not specified, will search from $PATH + #[arg(long, default_value = None)] + magiskboot: Option, + }, + + /// Show boot information + BootInfo { + #[command(subcommand)] + command: BootInfo, + }, + + /// KPM module manager + #[cfg(target_arch = "aarch64")] + Kpm { + #[command(subcommand)] + command: kpm_cmd::Kpm, + }, + + /// Manage kernel umount paths + Umount { + #[command(subcommand)] + command: Umount, + }, + + /// For developers + Debug { + #[command(subcommand)] + command: Debug, + }, + /// Kernel interface + Kernel { + #[command(subcommand)] + command: Kernel, + }, +} + +#[derive(clap::Subcommand, Debug)] +enum BootInfo { + /// show current kmi version + CurrentKmi, + + /// show supported kmi versions + SupportedKmis, + + /// check if device is A/B capable + IsAbDevice, + + /// show auto-selected boot partition name + DefaultPartition, + + /// list available partitions for current or OTA toggled slot + AvailablePartitions, + + /// show slot suffix for current or OTA toggled slot + SlotSuffix { + /// toggle to another slot + #[arg(short = 'u', long, default_value = "false")] + ota: bool, + }, +} + +#[derive(clap::Subcommand, Debug)] +enum Debug { + /// Set the manager app, kernel CONFIG_KSU_DEBUG should be enabled. + SetManager { + /// manager package name + #[arg(default_value_t = String::from("com.sukisu.ultra"))] + apk: String, + }, + + /// Get apk size and hash + GetSign { + /// apk path + apk: String, + }, + + /// Root Shell + Su { + /// switch to gloabl mount namespace + #[arg(short, long, default_value = "false")] + global_mnt: bool, + }, + + /// Get kernel version + Version, + + /// For testing + Test, + + /// Process mark management + Mark { + #[command(subcommand)] + command: MarkCommand, + }, +} + +#[derive(clap::Subcommand, Debug)] +enum MarkCommand { + /// Get mark status for a process (or all) + Get { + /// target pid (0 for total count) + #[arg(default_value = "0")] + pid: i32, + }, + + /// Mark a process + Mark { + /// target pid (0 for all processes) + #[arg(default_value = "0")] + pid: i32, + }, + + /// Unmark a process + Unmark { + /// target pid (0 for all processes) + #[arg(default_value = "0")] + pid: i32, + }, + + /// Refresh mark for all running processes + Refresh, +} + +#[derive(clap::Subcommand, Debug)] +enum Sepolicy { + /// Patch sepolicy + Patch { + /// sepolicy statements + sepolicy: String, + }, + + /// Apply sepolicy from file + Apply { + /// sepolicy file path + file: String, + }, + + /// Check if sepolicy statement is supported/valid + Check { + /// sepolicy statements + sepolicy: String, + }, +} + +#[derive(clap::Subcommand, Debug)] +enum Module { + /// Install module + Install { + /// module zip file path + zip: String, + }, + + /// Undo module uninstall mark + UndoUninstall { + /// module id + id: String, + }, + + /// Uninstall module + Uninstall { + /// module id + id: String, + }, + + /// enable module + Enable { + /// module id + id: String, + }, + + /// disable module + Disable { + // module id + id: String, + }, + + /// run action for module + Action { + // module id + id: String, + }, + + /// list all modules + List, + + /// manage module configuration + Config { + #[command(subcommand)] + command: ModuleConfigCmd, + }, +} + +#[derive(clap::Subcommand, Debug)] +enum ModuleConfigCmd { + /// Get a config value + Get { + /// config key + key: String, + }, + + /// Set a config value + Set { + /// config key + key: String, + /// config value + value: String, + /// use temporary config (cleared on reboot) + #[arg(short, long)] + temp: bool, + }, + + /// List all config entries + List, + + /// Delete a config entry + Delete { + /// config key + key: String, + /// delete from temporary config + #[arg(short, long)] + temp: bool, + }, + + /// Clear all config entries + Clear { + /// clear temporary config + #[arg(short, long)] + temp: bool, + }, +} + +#[derive(clap::Subcommand, Debug)] +enum Profile { + /// get root profile's selinux policy of + GetSepolicy { + /// package name + package: String, + }, + + /// set root profile's selinux policy of to + SetSepolicy { + /// package name + package: String, + /// policy statements + policy: String, + }, + + /// get template of + GetTemplate { + /// template id + id: String, + }, + + /// set template of to

    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 z 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¥OvydJA6r=#Oz+$y-?fFzkRB*_*$W} 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%0D2h;wBk^zh|kF{ZgcFj2#)jQKDeUT2!LR}l& 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

  • NsJ@F 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 literal 0 HcmV?d00001 diff --git a/manager/app/src/main/jniLibs/x86_64/libmagiskboot.so b/manager/app/src/main/jniLibs/x86_64/libmagiskboot.so new file mode 100644 index 0000000000000000000000000000000000000000..095ffe57a071adee58d0932c3c09c38b723bbde8 GIT binary patch literal 918832 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͠)+Ms@u64;! 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%0AH8~L*HMKVCwAAD+ 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°~{x+xp=$ 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 M^C8!%?^2Kd4+ggNkpKVy literal 0 HcmV?d00001 diff --git a/manager/app/src/main/res/drawable/ic_launcher_foreground.xml b/manager/app/src/main/res/drawable/ic_launcher_foreground.xml new file mode 100644 index 0000000..71e9836 --- /dev/null +++ b/manager/app/src/main/res/drawable/ic_launcher_foreground.xml @@ -0,0 +1,773 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/manager/app/src/main/res/drawable/ic_launcher_foreground_alt.xml b/manager/app/src/main/res/drawable/ic_launcher_foreground_alt.xml new file mode 100644 index 0000000..ba49844 --- /dev/null +++ b/manager/app/src/main/res/drawable/ic_launcher_foreground_alt.xml @@ -0,0 +1,22 @@ + + + + + + + + + diff --git a/manager/app/src/main/res/drawable/ic_launcher_monochrome.xml b/manager/app/src/main/res/drawable/ic_launcher_monochrome.xml new file mode 100644 index 0000000..a620a8d --- /dev/null +++ b/manager/app/src/main/res/drawable/ic_launcher_monochrome.xml @@ -0,0 +1,27 @@ + + + + + diff --git a/manager/app/src/main/res/drawable/ic_launcher_monochrome_alt.xml b/manager/app/src/main/res/drawable/ic_launcher_monochrome_alt.xml new file mode 100644 index 0000000..9bc37fa --- /dev/null +++ b/manager/app/src/main/res/drawable/ic_launcher_monochrome_alt.xml @@ -0,0 +1,22 @@ + + + + + + + + + diff --git a/manager/app/src/main/res/drawable/package_import.xml b/manager/app/src/main/res/drawable/package_import.xml new file mode 100644 index 0000000..3e8d07d --- /dev/null +++ b/manager/app/src/main/res/drawable/package_import.xml @@ -0,0 +1,42 @@ + + + + + + + + \ No newline at end of file diff --git a/manager/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/manager/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml new file mode 100644 index 0000000..67048fd --- /dev/null +++ b/manager/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/manager/app/src/main/res/mipmap-anydpi-v26/ic_launcher_alt.xml b/manager/app/src/main/res/mipmap-anydpi-v26/ic_launcher_alt.xml new file mode 100644 index 0000000..9924e8d --- /dev/null +++ b/manager/app/src/main/res/mipmap-anydpi-v26/ic_launcher_alt.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/manager/app/src/main/res/mipmap-anydpi-v26/ic_launcher_alt_round.xml b/manager/app/src/main/res/mipmap-anydpi-v26/ic_launcher_alt_round.xml new file mode 100644 index 0000000..9924e8d --- /dev/null +++ b/manager/app/src/main/res/mipmap-anydpi-v26/ic_launcher_alt_round.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/manager/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/manager/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml new file mode 100644 index 0000000..7353dbd --- /dev/null +++ b/manager/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/manager/app/src/main/res/mipmap-hdpi/ic_launcher.webp b/manager/app/src/main/res/mipmap-hdpi/ic_launcher.webp new file mode 100644 index 0000000000000000000000000000000000000000..25ca236ac825460d9a73265396b5069040df9cfb GIT binary patch literal 3042 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 I!Q4{{0Ct6vdH?_b literal 0 HcmV?d00001 diff --git a/manager/app/src/main/res/mipmap-mdpi/ic_launcher.webp b/manager/app/src/main/res/mipmap-mdpi/ic_launcher.webp new file mode 100644 index 0000000000000000000000000000000000000000..017b8a2a0750fe936d2a64fcbd425500961c9492 GIT binary patch literal 1644 zcmV-y29x>UgdF#!lF`Wj~3 z#2nsqPyj2>@V7&U5ku-<@1@vXj%=wrzWCtarz@xntWsxP>*z3s$p|t!*H86XL?kLJE2~C@#@P1kjMbdEiP_^aZQHgAAu#~kM3N*s$t*KH_TLjT7Jy@^|3t$O zlQhW@s1-S!BP45mhQkQ{DDXCd$m*Bq5lR#-@p>P|hGT}zfxb%CribQx5xk5Upg|6o zGeF7fZn!b1lS#ekAN7+cQZEKJ=aMVTePUpzyxdLdXG)gX+efi2%zdR+U2Zaw?R-G4 zmh7s90H94g1EavdMNFv>lR0*gA>dD;1Wpy;9%8LS~gp=1~D@@6Qph*bf4KhTbwhYv8 z;RV2XJg6H2w=EY|r_mc7Q`JaRI3q5w^J0%FDRP@U4zvO%wGEBDUFjR|bg_G2v9h>y zCISm62wO7Y5J}MVxW20Q=rCr=xGJ!7Y>QVyof0S25mi>@_BtueYfNjy8jHB5lSfk! z0H&{L>3{UV=p46}zuo=6^A;E?3vzOK`J4*u0xRegQAgFjOc_^@RmzH4KNfUWf{GHT z8^Qs610E!Pm_~@K7$TC(R+YLEO$eEyR=!Ya6J%wsfxDp?N?-LSa(zXygOi6!#xXRD`dATwO95BweVQO38_Z6*~hr=mj z6>Q7cDJ)Gjzt)ySV3I-Pfm5Il_zXJ8oK>`Y69b!feIGsas(Iy~v{l@ydc*JDbML=i z{8iQulUJycqbp;h>F?W>=NAhIDkwNy8#!Po;TCWk;1eZ%s0>I=QLp4HW=C1!vRu8| z%7j?;ZD#YAxjc+j*&5SY82!H6dvITQaRqjDxF!MtEaGFr3&K7~T^^&pchgvk4PTMp zH+|o~!-M~fqf*YBQgJ<|q{e(`1KKH{cbIS6t?3j1fSD>XhQTLqGq4N}kv&gQU$flg zx#*3WX;=occ`zrkik5Ylv(t^4(56F&XX$R_=?b5xJrS6$LwlgB3HHVzS=H4m8f!#u z-=~IHoIRli(pa4g9Ow3|PtV4hUnph+`XgU9F1y{3tvYWUqL4dg$)E3 zRIKhvM`VG$zb5+PhWB|Va27L9pP!glpII)wBt5uy{aYT~dx)+**W7vF-XGW{ld%K} zn#Mk|nBNF0u$!Y{@7P$*@D#FkJN!$q8F|Kq}Ipa_fWutBw74_`Aam30V!F68W8~*1{V$h literal 0 HcmV?d00001 diff --git a/manager/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp b/manager/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp new file mode 100644 index 0000000000000000000000000000000000000000..9d4c2e7b4558ae081dffba24a603b155dfd54ff4 GIT binary patch literal 2798 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 AlmGw# literal 0 HcmV?d00001 diff --git a/manager/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp b/manager/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp new file mode 100644 index 0000000000000000000000000000000000000000..1bde7ccb3fac53a4205d289353463f98cb9df24a GIT binary patch literal 7658 zcmVZJ4I~S$CH~L`;BQ$pXMY zV|!3bjMQo6%5iOX+W$qily5T8y1To(`(~bbw9#hni@UqK%euQ=cXyXrxjv_-dmuhV zPtWhy({qdXi$?qb3mJJQD;dQ=bPnz=9pQ2arSDl~F$++i(7vR=v1ACjGafGT%)8QfjgC9|_3{0JjtL6U6RR%{;ooV(Ap zZQJIvZQHhO+qU_4ZQHi7F%TrljoZu;JOBuilaO-d33j&sKPFiUH?wWqwl#BXH%@EN zw!5oUZL_BBIn$`_=~La+#%y<2ySmg?xve?Td8)c^J=tFWWWu#~BfbIK${Zb8+qUhH zBnWa>& zwN-9)j4}WJH<;g;nVDxR5z&7KZreB#Jv(jp`rVd$0^IEX7bkVtmezF$8zaiCy0Co$YYfxnm zhixP&QV;dO-96@?>W;&eDW)d$ zlh4@f_}4!IV%*UBCWwB8cv$M;ES3oIgyBfUZ1%U!zl9jr)SHGFm@ZXvmWbJ!D3-9< zFT@#$Y1%p0bZ~!^_?)w!=(c9ke`51T9u}Q7wYnRk7{n7T!v|3&jq=d z!by8U^Q;7Glv+WF@i48jL`>#{w1{M}`YAKX!)gvX;&-w|rbL~eyC=f9&zgwh141-n zL6H_<;m0nnseTl8b6u5{GlSVl5FR)Mi^%$*+J4nT8v0^5Q*$Fe5aQg>HB&T8G+o!C z*jvCU_c*LRlu5!gl@;n!mr%Fg7@(pXG+q5BdQ6lmSW+`CdkITBIHiifu!ZY$8K^2? z7_R@B$_l>D-N}1R0s#6<;5`|Qp2GUODYlPFff}y?H4HVQZyLANRj_hBSqK22#}96j zZFv?Z&=t*>y$zUl-8wKO$CBV-aF=wKVwZZC8A}uvqa2dU>gt-2>qgwQxQDX;Zs<0A z@se{@3=YKnVDbFMT4Sss1#BKMKBSSTqa-pjXjmX@)%t_awj$SjdiwUe6-WbaEn8n@T#L3JP zMO%t2D=I7_K18d@0a=q}EhP#{RFB(n1|cKkC7UdpyeQFzqVf_t8#kgB7Ya2geiVIP zfJPg*ltHifl1E4CiOHjP%4QWI$-UjP+v5Kzao2aAI`RYxx`^AaNv~;};Ysbe*~3{n z9m!krMA7CV30Z~3p!hW?6BbHLkKY(-=6Gc%@k~}{m zhWpD49_=aQS8{g%U*Zmlxu34h#i!%olw4sIv<+#MZ=yqyYn{YbFR6)$9Zx# z;6z@Z7fLU3e1_x*-8w!hyzo`FO}tLVK%OKOA!w)4BBlz@ln<;Z3KgWK$oRAZ5_%Mz zuxHGe;qm$`Qj*o~oZbeD6XbZqJ)E+msR>m-^URl}TVpcNPslGs_qqokkX|p&<|VwS zii$i#GUivR%gaHPLcKv*Ejlxz%mVaxguW(V0NkUp*3a+zWF(|jR}_l27Ww*sl%+ws zr+oj?urIGfvL$x$;zvng`JBon778gubR8*BT( zgA&mF1Yl5=&}MX-nNhHG0)VstO>zwIWSQVeHy9TKm$5uAlw71=3aXzSUJ%3b>-C9; zN9u`5yO{G>ME|($swG=f;+mv*o$<6i=W|%2cIzMk@;NSXDJn`Pik~&LWFIi|)YaZ( z6Z)DS856QIRB4}R6Tl2qKq(%;L~dBV&l}S*0B!h~aw1g}G`{Z4kP-Tdb~&v%RgbWO#s4TgumUfTSh~k#425!-$%@F{&|2@AVaRU>R(|=n@qrA zl{5nGz@C5uI66J^eRS0Jsdp^TH4WziT^6!m^V-b`z};aZ(J)>^QV=SxT(B@y`2BD_ zFC-7_KMr)7SfYy1gnTc!I?at+)p}6H9@s}neY`uoks#z%kVy99~Sy1l0T~XL&WIv0+%2@ zfKhY8+&?I~sU}Ml_4Tb56g{*nWOpu9F5_-7Yk#**hEMQ5qNHvL$gni5_gC(rqb_Yr zAP$IvWA+H-7L{R4zet(|g6#goSz84uTvNs!P24cY zrr>nSBKE38QVr|@z_KJZeXkuBwmgYyj|4X=xL?EJyj682VE79?&s)o4SSXulFprxr z3czx7e-Y|~CzXa#m#35GcHF#$yKuLM^GymDf)twvdju&PeyToQQz5H}+4Yq#7)6h%{!wx%&iu-wa_W8FxU%GV)u7e_N~O<7|P1c{tG<4PBUSE?P?$aR8D zZ7#G>YORv|s%$8cNa(Ds>!b6@%wC;ZL0FK~*Twdtf{O(DVuQxeWx_2(@vTw>0_4nfYvsnN3o zH%r0vPX0a`#9k3pt&p-(8=ki6j;1H&v?=Xg6ts z=BYI$WOPJA3?&+t%1yajaPuUuQwe?5Rzk0#-d?%fJ}ul_Ehz&Hrv>sn6x^6OhZ%EcZtRA#%Nvs+rG*?j_V_3!wwWu3zZicGM@`$J?MmSf;lK=qxYM_ifsycdK?|;qS^S)OHGmO5?@S-5DH!+`rVv8uF9?5t!wgGSYqLQF&J3&sv8kOL}FH4#$4 zg}_pl7sL06-9rE-NPU|R+3bJ$i}D|Sq5I39X#M6Va)15xEMNGqkG4LO9Xg)Wr6WyH z$M;!&`Y(eY|D($y=)!+y`RzYO)O?n5UW6x#Dgb(Hu(CiQl_|Wf`QLg|TiL3VW0h6J z-BJ14(JY$e!sUH!^`WevLxCf4%a(``F8DN80W3$VchkN*)zi7|0QN`>lNV88vs&ab4`+33lm%Znf6e5Dg2Yi~M3_4)L$b zZG==YwgIXTwnaEFxY9O(MsRAEE!EF?Ynq@$!GgU&LLvOn-1e7iUQ=W1U-g3gl|Z({ zV)+tt`AdmsKc8^!3qGI!miDiIJo1D8&r(js5{w{T4lU#?ewv-cnLVr%C+mA24-Z!aS(00}B$y5OxeOiPezuf^H|Z#ABq;cjZVL$zI-5HQhyeH4odgH91*! zMA_{}kBzP%c-82vM1!eRpHaSGv@2F}bo}2rL`#rT9!6ohv=)h;(!n!A#6aJo=gtU} z*xAeIa)=>t5?2qVKiT?P7zFt9&S17qq#?lQ&pRi;WPkMOQyqQc775C=raS4~N$$xj=Dm~nqaTC=A2DY>;*Twfhoi2RwCAI~ zmdqlmdLuLB9Bz&Yc+fOZv>`7?&sC_$RAfwZQ#AbkV|x8X8hRf;b6L2#I=Z;)GrlnF zcFA9-B^B>YAa~@R(n%@Bm2f(xIon0j#Ox%v5%x%!1Eo(DNXVvYA%3sUQ09v*A!nY( zd~S*mS{PDaw6WB&)=gB44~3a!(vc=!R*{Z!V>&&L2t6&sE#okwy?(qUM6`cVDXzHZX z4vxZY#9Xp2g{id!Gb%-bJVBPQ2w@FHu#U(QxJN}-cG@LSssax)v?wdSMmEIPVnd=p z$;%Oc>i_Gmn|Shn1#d=Y7?c;IX-hP3N$LwhE>d0eq7*H8PN;|y4JC}=KzEdE)%%arDRa51UsrAs(h+u zVk_||0Y@m6hDcqU2g?s$v=qPmKhn$p5Ao#Ki9-5J)YKyDovf*4pBLbR_vnb?_YTTU zb#t*kKTor{+1Iz?6vnE3p){#eqk`ZolEos1$Too4o;>cOs9;Xs_hy;LY;t1u3u1H8 z1^_x_KmZmF4RV}}SAe;!(hj@036E9sAZcs*L9T|jX!^p<(ZG;A>FZkP@;uG$CNtc3kKTro@SBd?2qx|Ee^=DgZm)d^1Rr%4;=F=@FAf1I%Nt=tx4kKO(&L}rpc$Gye zl`g+fImxeYw4Ur1ag#c_I(Hp(na(tNbu(vc#-P!3SqM*$>)X6I{=6JR)rfM=jA^c$ zU_Cp{o0Mx9xhDEoC(>t|{XI}O!4S4af_&<^CVBbyC3Z+ZSj(*LHkn_ZmXZC%N%eb& z&o8qKeVf*UU7|1-jT~pRlpG)2XyI2Dsg!RQe_;-Hj@iQxLjT?V{+=j7H(BSUYw2MV zm(b~p#rh^+0wbK{SC5~)COS=maiqHF)~0QUqRc#R@(DjgxI)m$b<8Awwaf43<@yAu&@KtW&Zh9wBSi5hr_`NoP+@ALqTw|w+JeP+ zqL`FIG}(sx~CE3u2f-Y+iwK_svYNXPbCw1rss9Y)uUk+X%l4xGBPYkcRh zjM{e(X*)V}CR*MN%oXjism-m~3&DDwl}&N|9YLaJ&)N^RHg^wqOq{xAj@>7XJP(yT zc{O~vb1i$f$r1%s9%Fb|!r3MtZ7ExAUMM$C03mA_aTmRHskRY=&OaWH1R!q#y?obG zfOs@TzpJjNj4w%t42pu8i9{WnS+T${{LzSg61$6elE!E(Z-JyKnm^i?^}Qnq_Rf)7 ze<3w}ue&5nUBc(iNt0LinhPbHXy-LgBC8N`a6Q) zr>-71-|l1lV5hjc)@={7`#Y<BhP*N@lpDu# z0_l=r&P28)+D8g~+&FwB;tnAJgSpN$1maK|Qu`xs2!sY1B66?Hd%UYQwwa3;EP01r zq*9(;?1kqJKVtiD2!e#oUwoEMj<-+Py9c~%&bN;5pD=wvi2cud77ai3H`dvbPpVO6 zZ@ei_^v?irOm>?9zU0}gqS}RFFIV5Zxr=0tMlRo#L*)|U-aAD2F7Z5WbR%p)NI@?a z{;->@?i%lJdm&cjKaoo5UXEVfRSmq7`tKEe?@-AbefTZCh0dSxq8UEfO`N>>FP)K! z`ioG%Hw-_ytCRQgHjvDSdT|1jUrhjL8ZvHT=xR5q<;I$#j%fMIyK!4y-gJ~+|M(QVRm%3qY5`#BHK;)fAr}p?6MAGgs!~Ne`{n3+aObg#|2~n-XyEbK}T^Hu$o?cXTk0a+B=y z0#vC|LN{mcc}#PJa6uuWs_RaURD0AIUcc?-4eN1 zy^pKfhpzQPSLMD~W1Y2lshzs3HdYm;q$FKB&(@UwSKmf&cr>NdZ;(4i&YtfWE*ch% zH1xE;b1WHrA}c4?Z!05aE4$p7XI`#P$C;jQ z%Yx8T;wD$vrx%%pYQ~f$H zhxO%S%OPJ5<<@MtzOh)@nk{d&RyLR?Tg>wA+Lp^(gSE}rXDjWEwPHCbxk;(HTC6jV zZLCK(R?3Z)LTgs-3^UheDwjjmbvzr1W!fqgEMCsZ5ULl;(Gx5Kqr(G+Y6L{zI$*J{ zlV9e{?Z|@*Fo9OE1-$NcTY)$JhzSk}pRvlpl22Y8c76Vdzgz)T;dUu#Lkl)@JiiI= z#{64aBh7nZUvD0Ah|YyBs*}~DbbWAK;OE~Jt(m?uV$Ap#oYwz^g=*ELFU3(jE{&MM zlFmxjVy?&iDF17Ms&O~&PXi`7n5e^Sl4t1h$!~};PlV|gethEt_`+x_{1QyTb*^7u z=1DUWm`Q%+>HmVqC4aesY~i%bJ}EE*=jmS70G^0IGZVZT?EMY6EOp9E*}`l+YA)Gg zx2G$N`5;R-wf1J2WyW@TzQrXE8ERn#yHK@b3igvM&R4ap?9|x1Y_96@maTF3cLk#w zwDx4(nt*N30n@#&0_%%xx@HqI{fuTM*w4qFf?A!YU3t*7XiY%WgCSVvY}hkkl=V;3VJYlY|^&Xci*$GMl#sW$HO@%))3+pDu*Uic}OEx|>Pxf5@rhdMgGn21<`-#@LO?J!kysNc}nZ~yR9*7^>y-`=@PkhL2 zay%{`_g8fl)NkZ4i6f5t!lAIMz*ntun;dX>$P@p)+(W;2Jmv2@q7!T5<3-z1bgNyx zTa%Vw$;f`lLt3?J^^ok0ue3bR>Q`Gadc2LTkXd68$^=35MO`X8SO4K^vi{KI7%z&x YERz^(OhT?@0oG(=SxuT)maAP10TyW8lmGw# literal 0 HcmV?d00001 diff --git a/manager/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp b/manager/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp new file mode 100644 index 0000000000000000000000000000000000000000..86a772fdc7fa9470520d96e2badd2ee69610212d GIT binary patch literal 8578 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 Iq`N3d0g4C3?*IS* literal 0 HcmV?d00001 diff --git a/manager/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp b/manager/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp new file mode 100644 index 0000000000000000000000000000000000000000..9dc12ce3e58eef2c26d6c2975aa140fbef7289b7 GIT binary patch literal 12572 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