From 96f689cf928f115324a8190068d211b919d19b62 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 19 Aug 2025 07:59:07 +0000 Subject: [PATCH] Deploy to GitHub pages --- .nojekyll | 0 404.html | 34 + .../images/anchor-copy-button.svg | 8 + KDoc/pangutext-android/images/arrow_down.svg | 7 + KDoc/pangutext-android/images/burger.svg | 9 + KDoc/pangutext-android/images/copy-icon.svg | 7 + .../images/copy-successful-icon.svg | 7 + .../images/footer-go-to-link.svg | 7 + .../images/go-to-top-icon.svg | 8 + KDoc/pangutext-android/images/homepage.svg | 3 + KDoc/pangutext-android/images/logo-icon.svg | 14 + .../nav-icons/abstract-class-kotlin.svg | 26 + .../images/nav-icons/abstract-class.svg | 20 + .../images/nav-icons/annotation-kotlin.svg | 13 + .../images/nav-icons/annotation.svg | 7 + .../images/nav-icons/class-kotlin.svg | 13 + .../images/nav-icons/class.svg | 7 + .../images/nav-icons/enum-kotlin.svg | 13 + .../images/nav-icons/enum.svg | 7 + .../images/nav-icons/exception-class.svg | 7 + .../images/nav-icons/field-value.svg | 10 + .../images/nav-icons/field-variable.svg | 10 + .../images/nav-icons/function.svg | 7 + .../images/nav-icons/interface-kotlin.svg | 13 + .../images/nav-icons/interface.svg | 7 + .../images/nav-icons/object.svg | 13 + .../images/nav-icons/typealias-kotlin.svg | 13 + .../pangutext-android/images/theme-toggle.svg | 7 + KDoc/pangutext-android/index.html | 153 ++ KDoc/pangutext-android/navigation.html | 52 + .../configure-pangu-text.html | 80 + .../-pangu-text-view/index.html | 104 ++ .../after-text-changed.html | 80 + .../before-text-changed.html | 80 + .../-pangu-text-watcher/index.html | 134 ++ .../-pangu-text-watcher/on-text-changed.html | 80 + .../index.html | 118 ++ .../-pangu-text-config.html | 80 + .../index.html | 163 ++ .../inject-pangu-text.html | 80 + .../inject-real-time-pangu-text.html | 80 + .../set-hint-with-pangu.html | 80 + .../set-text-with-pangu.html | 80 + .../-companion/index.html | 104 ++ .../-companion/inject.html | 80 + .../-pangu-text-factory2/index.html | 123 ++ .../-pangu-text-factory2/on-create-view.html | 80 + .../-pangu-text-patcher/index.html | 104 ++ .../-pangu-text-patcher/patch.html | 80 + .../index.html | 118 ++ .../-pangu-text-config/cjk-spacing-ratio.html | 80 + .../-pangu-text-config/copy.html | 80 + .../-pangu-text-config/exclude-patterns.html | 80 + .../-pangu-text-config/index.html | 183 ++ .../is-auto-remeasure-text.html | 80 + .../-pangu-text-config/is-enabled.html | 80 + .../is-processed-spanned.html | 80 + .../-pangu-text/format.html | 80 + .../-pangu-text/global-config.html | 80 + .../-pangu-text/index.html | 123 ++ .../index.html | 118 ++ .../pangutext-android/package-list | 41 + KDoc/pangutext-android/scripts/clipboard.js | 56 + KDoc/pangutext-android/scripts/main.js | 44 + .../scripts/navigation-loader.js | 95 ++ KDoc/pangutext-android/scripts/pages.json | 1 + .../scripts/platform-content-handler.js | 400 +++++ KDoc/pangutext-android/scripts/prism.js | 22 + .../scripts/sourceset_dependencies.js | 1 + .../symbol-parameters-wrapper_deferred.js | 64 + .../styles/font-jb-sans-auto.css | 36 + KDoc/pangutext-android/styles/logo-styles.css | 9 + KDoc/pangutext-android/styles/main.css | 124 ++ KDoc/pangutext-android/styles/prism.css | 217 +++ KDoc/pangutext-android/styles/style.css | 1509 +++++++++++++++++ assets/404.html-6Yl8cQE3.js | 1 + assets/404.html-YkmvtGWa.js | 1 + assets/about.html-TshJpOH8.js | 1 + assets/about.html-bq8LJH03.js | 16 + assets/about.html-pwF3sebZ.js | 16 + assets/about.html-y0__MDXj.js | 1 + assets/android.html-C0sED2vr.js | 1 + assets/android.html-XQpTmuqf.js | 171 ++ assets/android.html-er-PlyuE.js | 1 + assets/android.html-qjs2U6CQ.js | 167 ++ assets/app-6WmjFGj_.js | 16 + assets/changelog.html-34En5i-H.js | 1 + assets/changelog.html-ZdZDMp0S.js | 1 + assets/changelog.html-_msERpTv.js | 1 + assets/changelog.html-qt_u2gKo.js | 1 + assets/compose.html-6IPIfrmc.js | 1 + assets/compose.html-Bw78KuUV.js | 1 + assets/compose.html-GjfF5jqY.js | 1 + assets/compose.html-ta_OKiQ7.js | 1 + assets/contacts.html--fNpIi3D.js | 1 + assets/contacts.html-8fmQuQW2.js | 1 + assets/contacts.html-KJJ9aywK.js | 1 + assets/contacts.html-Tyyrr6ry.js | 1 + assets/demo_02-Y1eWnGtu.js | 1 + assets/future.html-H3GTPPFW.js | 1 + assets/future.html-YFngAQwd.js | 1 + assets/future.html-e9RoH0aV.js | 1 + assets/future.html-zvpjuSDl.js | 1 + assets/home.html-3yl9a2Vj.js | 1 + assets/home.html-58uN4FuZ.js | 1 + assets/home.html-DfgIm_Cu.js | 1 + assets/home.html-JcaZNIqz.js | 1 + assets/index.html-EYu-iNkn.js | 1 + assets/index.html-H__tmzTP.js | 1 + assets/index.html-QUZQg0UG.js | 1 + assets/index.html-dAhbvs7X.js | 1 + assets/index.html-hmQ6cGF4.js | 1 + assets/index.html-zXy82L0K.js | 1 + assets/quick-start.html-1kKh8kqs.js | 26 + assets/quick-start.html-SQ1_-HIx.js | 28 + assets/quick-start.html-ddi7SydO.js | 1 + assets/quick-start.html-gd9ccG0P.js | 1 + assets/r8-proguard.html-69xTqe-J.js | 1 + assets/r8-proguard.html-D-RxO_Ql.js | 1 + assets/r8-proguard.html-PqTZGCA2.js | 1 + assets/r8-proguard.html-uJ-Di8s4.js | 1 + assets/style-Rgr8LWAc.css | 1 + en/about/about.html | 49 + en/about/changelog.html | 34 + en/about/contacts.html | 34 + en/about/future.html | 34 + en/config/r8-proguard.html | 34 + en/guide/home.html | 34 + en/guide/quick-start.html | 59 + en/index.html | 34 + en/library/android.html | 204 +++ en/library/compose.html | 34 + images/demo_01.png | Bin 0 -> 34646 bytes images/demo_02.gif | Bin 0 -> 152015 bytes images/demo_02.mov | Bin 0 -> 199468 bytes images/logo.png | Bin 0 -> 31546 bytes index.html | 34 + zh-cn/about/about.html | 49 + zh-cn/about/changelog.html | 34 + zh-cn/about/contacts.html | 34 + zh-cn/about/future.html | 34 + zh-cn/config/r8-proguard.html | 34 + zh-cn/guide/home.html | 34 + zh-cn/guide/quick-start.html | 61 + zh-cn/index.html | 34 + zh-cn/library/android.html | 200 +++ zh-cn/library/compose.html | 34 + 147 files changed, 7725 insertions(+) create mode 100644 .nojekyll create mode 100644 404.html create mode 100644 KDoc/pangutext-android/images/anchor-copy-button.svg create mode 100644 KDoc/pangutext-android/images/arrow_down.svg create mode 100644 KDoc/pangutext-android/images/burger.svg create mode 100644 KDoc/pangutext-android/images/copy-icon.svg create mode 100644 KDoc/pangutext-android/images/copy-successful-icon.svg create mode 100644 KDoc/pangutext-android/images/footer-go-to-link.svg create mode 100644 KDoc/pangutext-android/images/go-to-top-icon.svg create mode 100644 KDoc/pangutext-android/images/homepage.svg create mode 100644 KDoc/pangutext-android/images/logo-icon.svg create mode 100644 KDoc/pangutext-android/images/nav-icons/abstract-class-kotlin.svg create mode 100644 KDoc/pangutext-android/images/nav-icons/abstract-class.svg create mode 100644 KDoc/pangutext-android/images/nav-icons/annotation-kotlin.svg create mode 100644 KDoc/pangutext-android/images/nav-icons/annotation.svg create mode 100644 KDoc/pangutext-android/images/nav-icons/class-kotlin.svg create mode 100644 KDoc/pangutext-android/images/nav-icons/class.svg create mode 100644 KDoc/pangutext-android/images/nav-icons/enum-kotlin.svg create mode 100644 KDoc/pangutext-android/images/nav-icons/enum.svg create mode 100644 KDoc/pangutext-android/images/nav-icons/exception-class.svg create mode 100644 KDoc/pangutext-android/images/nav-icons/field-value.svg create mode 100644 KDoc/pangutext-android/images/nav-icons/field-variable.svg create mode 100644 KDoc/pangutext-android/images/nav-icons/function.svg create mode 100644 KDoc/pangutext-android/images/nav-icons/interface-kotlin.svg create mode 100644 KDoc/pangutext-android/images/nav-icons/interface.svg create mode 100644 KDoc/pangutext-android/images/nav-icons/object.svg create mode 100644 KDoc/pangutext-android/images/nav-icons/typealias-kotlin.svg create mode 100644 KDoc/pangutext-android/images/theme-toggle.svg create mode 100644 KDoc/pangutext-android/index.html create mode 100644 KDoc/pangutext-android/navigation.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-view/configure-pangu-text.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-view/index.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/after-text-changed.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/before-text-changed.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/index.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/on-text-changed.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/index.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/-pangu-text-config.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/index.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/inject-pangu-text.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/inject-real-time-pangu-text.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/set-hint-with-pangu.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/set-text-with-pangu.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/-companion/index.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/-companion/inject.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/index.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/on-create-view.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-patcher/index.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-patcher/patch.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/index.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/cjk-spacing-ratio.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/copy.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/exclude-patterns.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/index.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/is-auto-remeasure-text.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/is-enabled.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/is-processed-spanned.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text/format.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text/global-config.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text/index.html create mode 100644 KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/index.html create mode 100644 KDoc/pangutext-android/pangutext-android/package-list create mode 100644 KDoc/pangutext-android/scripts/clipboard.js create mode 100644 KDoc/pangutext-android/scripts/main.js create mode 100644 KDoc/pangutext-android/scripts/navigation-loader.js create mode 100644 KDoc/pangutext-android/scripts/pages.json create mode 100644 KDoc/pangutext-android/scripts/platform-content-handler.js create mode 100644 KDoc/pangutext-android/scripts/prism.js create mode 100644 KDoc/pangutext-android/scripts/sourceset_dependencies.js create mode 100644 KDoc/pangutext-android/scripts/symbol-parameters-wrapper_deferred.js create mode 100644 KDoc/pangutext-android/styles/font-jb-sans-auto.css create mode 100644 KDoc/pangutext-android/styles/logo-styles.css create mode 100644 KDoc/pangutext-android/styles/main.css create mode 100644 KDoc/pangutext-android/styles/prism.css create mode 100644 KDoc/pangutext-android/styles/style.css create mode 100644 assets/404.html-6Yl8cQE3.js create mode 100644 assets/404.html-YkmvtGWa.js create mode 100644 assets/about.html-TshJpOH8.js create mode 100644 assets/about.html-bq8LJH03.js create mode 100644 assets/about.html-pwF3sebZ.js create mode 100644 assets/about.html-y0__MDXj.js create mode 100644 assets/android.html-C0sED2vr.js create mode 100644 assets/android.html-XQpTmuqf.js create mode 100644 assets/android.html-er-PlyuE.js create mode 100644 assets/android.html-qjs2U6CQ.js create mode 100644 assets/app-6WmjFGj_.js create mode 100644 assets/changelog.html-34En5i-H.js create mode 100644 assets/changelog.html-ZdZDMp0S.js create mode 100644 assets/changelog.html-_msERpTv.js create mode 100644 assets/changelog.html-qt_u2gKo.js create mode 100644 assets/compose.html-6IPIfrmc.js create mode 100644 assets/compose.html-Bw78KuUV.js create mode 100644 assets/compose.html-GjfF5jqY.js create mode 100644 assets/compose.html-ta_OKiQ7.js create mode 100644 assets/contacts.html--fNpIi3D.js create mode 100644 assets/contacts.html-8fmQuQW2.js create mode 100644 assets/contacts.html-KJJ9aywK.js create mode 100644 assets/contacts.html-Tyyrr6ry.js create mode 100644 assets/demo_02-Y1eWnGtu.js create mode 100644 assets/future.html-H3GTPPFW.js create mode 100644 assets/future.html-YFngAQwd.js create mode 100644 assets/future.html-e9RoH0aV.js create mode 100644 assets/future.html-zvpjuSDl.js create mode 100644 assets/home.html-3yl9a2Vj.js create mode 100644 assets/home.html-58uN4FuZ.js create mode 100644 assets/home.html-DfgIm_Cu.js create mode 100644 assets/home.html-JcaZNIqz.js create mode 100644 assets/index.html-EYu-iNkn.js create mode 100644 assets/index.html-H__tmzTP.js create mode 100644 assets/index.html-QUZQg0UG.js create mode 100644 assets/index.html-dAhbvs7X.js create mode 100644 assets/index.html-hmQ6cGF4.js create mode 100644 assets/index.html-zXy82L0K.js create mode 100644 assets/quick-start.html-1kKh8kqs.js create mode 100644 assets/quick-start.html-SQ1_-HIx.js create mode 100644 assets/quick-start.html-ddi7SydO.js create mode 100644 assets/quick-start.html-gd9ccG0P.js create mode 100644 assets/r8-proguard.html-69xTqe-J.js create mode 100644 assets/r8-proguard.html-D-RxO_Ql.js create mode 100644 assets/r8-proguard.html-PqTZGCA2.js create mode 100644 assets/r8-proguard.html-uJ-Di8s4.js create mode 100644 assets/style-Rgr8LWAc.css create mode 100644 en/about/about.html create mode 100644 en/about/changelog.html create mode 100644 en/about/contacts.html create mode 100644 en/about/future.html create mode 100644 en/config/r8-proguard.html create mode 100644 en/guide/home.html create mode 100644 en/guide/quick-start.html create mode 100644 en/index.html create mode 100644 en/library/android.html create mode 100644 en/library/compose.html create mode 100644 images/demo_01.png create mode 100644 images/demo_02.gif create mode 100644 images/demo_02.mov create mode 100644 images/logo.png create mode 100644 index.html create mode 100644 zh-cn/about/about.html create mode 100644 zh-cn/about/changelog.html create mode 100644 zh-cn/about/contacts.html create mode 100644 zh-cn/about/future.html create mode 100644 zh-cn/config/r8-proguard.html create mode 100644 zh-cn/guide/home.html create mode 100644 zh-cn/guide/quick-start.html create mode 100644 zh-cn/index.html create mode 100644 zh-cn/library/android.html create mode 100644 zh-cn/library/compose.html diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/404.html b/404.html new file mode 100644 index 0000000..efede6e --- /dev/null +++ b/404.html @@ -0,0 +1,34 @@ + + + + + + + + + Pangu Text + + + + + +

404

There's nothing here.
Take me home
+ + + diff --git a/KDoc/pangutext-android/images/anchor-copy-button.svg b/KDoc/pangutext-android/images/anchor-copy-button.svg new file mode 100644 index 0000000..19c1fa3 --- /dev/null +++ b/KDoc/pangutext-android/images/anchor-copy-button.svg @@ -0,0 +1,8 @@ + + + + + + diff --git a/KDoc/pangutext-android/images/arrow_down.svg b/KDoc/pangutext-android/images/arrow_down.svg new file mode 100644 index 0000000..639aaf1 --- /dev/null +++ b/KDoc/pangutext-android/images/arrow_down.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/pangutext-android/images/burger.svg b/KDoc/pangutext-android/images/burger.svg new file mode 100644 index 0000000..fcca732 --- /dev/null +++ b/KDoc/pangutext-android/images/burger.svg @@ -0,0 +1,9 @@ + + + + + + + diff --git a/KDoc/pangutext-android/images/copy-icon.svg b/KDoc/pangutext-android/images/copy-icon.svg new file mode 100644 index 0000000..2cb02ec --- /dev/null +++ b/KDoc/pangutext-android/images/copy-icon.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/pangutext-android/images/copy-successful-icon.svg b/KDoc/pangutext-android/images/copy-successful-icon.svg new file mode 100644 index 0000000..c4b9538 --- /dev/null +++ b/KDoc/pangutext-android/images/copy-successful-icon.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/pangutext-android/images/footer-go-to-link.svg b/KDoc/pangutext-android/images/footer-go-to-link.svg new file mode 100644 index 0000000..a87add7 --- /dev/null +++ b/KDoc/pangutext-android/images/footer-go-to-link.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/pangutext-android/images/go-to-top-icon.svg b/KDoc/pangutext-android/images/go-to-top-icon.svg new file mode 100644 index 0000000..abc3d1c --- /dev/null +++ b/KDoc/pangutext-android/images/go-to-top-icon.svg @@ -0,0 +1,8 @@ + + + + + + diff --git a/KDoc/pangutext-android/images/homepage.svg b/KDoc/pangutext-android/images/homepage.svg new file mode 100644 index 0000000..e3c83b1 --- /dev/null +++ b/KDoc/pangutext-android/images/homepage.svg @@ -0,0 +1,3 @@ + + + diff --git a/KDoc/pangutext-android/images/logo-icon.svg b/KDoc/pangutext-android/images/logo-icon.svg new file mode 100644 index 0000000..e42f957 --- /dev/null +++ b/KDoc/pangutext-android/images/logo-icon.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + diff --git a/KDoc/pangutext-android/images/nav-icons/abstract-class-kotlin.svg b/KDoc/pangutext-android/images/nav-icons/abstract-class-kotlin.svg new file mode 100644 index 0000000..19d6148 --- /dev/null +++ b/KDoc/pangutext-android/images/nav-icons/abstract-class-kotlin.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/KDoc/pangutext-android/images/nav-icons/abstract-class.svg b/KDoc/pangutext-android/images/nav-icons/abstract-class.svg new file mode 100644 index 0000000..6018203 --- /dev/null +++ b/KDoc/pangutext-android/images/nav-icons/abstract-class.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/KDoc/pangutext-android/images/nav-icons/annotation-kotlin.svg b/KDoc/pangutext-android/images/nav-icons/annotation-kotlin.svg new file mode 100644 index 0000000..b90f508 --- /dev/null +++ b/KDoc/pangutext-android/images/nav-icons/annotation-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/pangutext-android/images/nav-icons/annotation.svg b/KDoc/pangutext-android/images/nav-icons/annotation.svg new file mode 100644 index 0000000..b80c54b --- /dev/null +++ b/KDoc/pangutext-android/images/nav-icons/annotation.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/pangutext-android/images/nav-icons/class-kotlin.svg b/KDoc/pangutext-android/images/nav-icons/class-kotlin.svg new file mode 100644 index 0000000..797a242 --- /dev/null +++ b/KDoc/pangutext-android/images/nav-icons/class-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/pangutext-android/images/nav-icons/class.svg b/KDoc/pangutext-android/images/nav-icons/class.svg new file mode 100644 index 0000000..3f1ad16 --- /dev/null +++ b/KDoc/pangutext-android/images/nav-icons/class.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/pangutext-android/images/nav-icons/enum-kotlin.svg b/KDoc/pangutext-android/images/nav-icons/enum-kotlin.svg new file mode 100644 index 0000000..775a7cc --- /dev/null +++ b/KDoc/pangutext-android/images/nav-icons/enum-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/pangutext-android/images/nav-icons/enum.svg b/KDoc/pangutext-android/images/nav-icons/enum.svg new file mode 100644 index 0000000..fa7f247 --- /dev/null +++ b/KDoc/pangutext-android/images/nav-icons/enum.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/pangutext-android/images/nav-icons/exception-class.svg b/KDoc/pangutext-android/images/nav-icons/exception-class.svg new file mode 100644 index 0000000..c0b2bde --- /dev/null +++ b/KDoc/pangutext-android/images/nav-icons/exception-class.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/pangutext-android/images/nav-icons/field-value.svg b/KDoc/pangutext-android/images/nav-icons/field-value.svg new file mode 100644 index 0000000..2771ee5 --- /dev/null +++ b/KDoc/pangutext-android/images/nav-icons/field-value.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/KDoc/pangutext-android/images/nav-icons/field-variable.svg b/KDoc/pangutext-android/images/nav-icons/field-variable.svg new file mode 100644 index 0000000..e2d2bbd --- /dev/null +++ b/KDoc/pangutext-android/images/nav-icons/field-variable.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/KDoc/pangutext-android/images/nav-icons/function.svg b/KDoc/pangutext-android/images/nav-icons/function.svg new file mode 100644 index 0000000..f0da64a --- /dev/null +++ b/KDoc/pangutext-android/images/nav-icons/function.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/pangutext-android/images/nav-icons/interface-kotlin.svg b/KDoc/pangutext-android/images/nav-icons/interface-kotlin.svg new file mode 100644 index 0000000..5e16326 --- /dev/null +++ b/KDoc/pangutext-android/images/nav-icons/interface-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/pangutext-android/images/nav-icons/interface.svg b/KDoc/pangutext-android/images/nav-icons/interface.svg new file mode 100644 index 0000000..32063ba --- /dev/null +++ b/KDoc/pangutext-android/images/nav-icons/interface.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/pangutext-android/images/nav-icons/object.svg b/KDoc/pangutext-android/images/nav-icons/object.svg new file mode 100644 index 0000000..31f0ee3 --- /dev/null +++ b/KDoc/pangutext-android/images/nav-icons/object.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/pangutext-android/images/nav-icons/typealias-kotlin.svg b/KDoc/pangutext-android/images/nav-icons/typealias-kotlin.svg new file mode 100644 index 0000000..f4bb238 --- /dev/null +++ b/KDoc/pangutext-android/images/nav-icons/typealias-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/pangutext-android/images/theme-toggle.svg b/KDoc/pangutext-android/images/theme-toggle.svg new file mode 100644 index 0000000..df86202 --- /dev/null +++ b/KDoc/pangutext-android/images/theme-toggle.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/pangutext-android/index.html b/KDoc/pangutext-android/index.html new file mode 100644 index 0000000..57d1ded --- /dev/null +++ b/KDoc/pangutext-android/index.html @@ -0,0 +1,153 @@ + + + + + pangutext-android + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

pangutext-android

+
+

Packages

+
+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+
+
+ +
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+
+
+ +
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+
+
+ +
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/navigation.html b/KDoc/pangutext-android/navigation.html new file mode 100644 index 0000000..862a45e --- /dev/null +++ b/KDoc/pangutext-android/navigation.html @@ -0,0 +1,52 @@ +
+
pangutext-android
+
+ +
+ +
+ +
+
+ + + +
+
+ + + + + + +
+
+ + + +
+
+ diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-view/configure-pangu-text.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-view/configure-pangu-text.html new file mode 100644 index 0000000..a6abd1d --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-view/configure-pangu-text.html @@ -0,0 +1,80 @@ + + + + + configurePanguText + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

configurePanguText

+
+
abstract fun configurePanguText(config: PanguTextConfig)

Configure the PanguText.

Configuring this item separately will override global settings.

See also

+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-view/index.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-view/index.html new file mode 100644 index 0000000..906fee0 --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-view/index.html @@ -0,0 +1,104 @@ + + + + + PanguTextView + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

PanguTextView

+
interface PanguTextView

The PanguText config interface.

+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract fun configurePanguText(config: PanguTextConfig)

Configure the PanguText.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/after-text-changed.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/after-text-changed.html new file mode 100644 index 0000000..535a28a --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/after-text-changed.html @@ -0,0 +1,80 @@ + + + + + afterTextChanged + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

afterTextChanged

+
+
open override fun afterTextChanged(editable: Editable?)
+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/before-text-changed.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/before-text-changed.html new file mode 100644 index 0000000..d556410 --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/before-text-changed.html @@ -0,0 +1,80 @@ + + + + + beforeTextChanged + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

beforeTextChanged

+
+
open override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int)
+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/index.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/index.html new file mode 100644 index 0000000..e61a0cb --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/index.html @@ -0,0 +1,134 @@ + + + + + PanguTextWatcher + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

PanguTextWatcher

+

A TextWatcher that automatically applies PanguText to the text content.

You don't need to create it manually, use TextView.injectRealTimePanguText instead.

Parameters

base

the base TextView.

config

the configuration of PanguText.

+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun afterTextChanged(editable: Editable?)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int)
+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/on-text-changed.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/on-text-changed.html new file mode 100644 index 0000000..089d614 --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/on-text-changed.html @@ -0,0 +1,80 @@ + + + + + onTextChanged + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

onTextChanged

+
+
open override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int)
+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/index.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/index.html new file mode 100644 index 0000000..712a2cb --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.core/index.html @@ -0,0 +1,118 @@ + + + + + com.highcapable.pangutext.android.core + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Package-level declarations

+
+
+
+
+
+

Types

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
interface PanguTextView

The PanguText config interface.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+

A TextWatcher that automatically applies PanguText to the text content.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/-pangu-text-config.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/-pangu-text-config.html new file mode 100644 index 0000000..f81f00b --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/-pangu-text-config.html @@ -0,0 +1,80 @@ + + + + + PanguTextConfig + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

PanguTextConfig

+
+
fun PanguTextConfig(copyFromGlobal: Boolean = true, body: PanguTextConfig.() -> Unit): <Error class: unknown class>

Create a new instance of PanguTextConfig.

Return

PanguTextConfig

Parameters

copyFromGlobal

whether to copy the PanguText.globalConfig, default is true.

body

the configuration body.

See also

+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/index.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/index.html new file mode 100644 index 0000000..cc3badb --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/index.html @@ -0,0 +1,163 @@ + + + + + com.highcapable.pangutext.android.extension + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Package-level declarations

+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun TextView.injectPanguText(injectHint: Boolean = true, config: PanguTextConfig = PanguText.globalConfig)

Inject PanguText to the current text content once.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun TextView.injectRealTimePanguText(injectHint: Boolean = true, config: PanguTextConfig = PanguText.globalConfig)

Inject PanguText to the current text content in real time.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun PanguTextConfig(copyFromGlobal: Boolean = true, body: PanguTextConfig.() -> Unit): <Error class: unknown class>

Create a new instance of PanguTextConfig.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun TextView.setHintWithPangu(text: CharSequence?, config: PanguTextConfig = PanguText.globalConfig)

Use PanguText.format to format the hint text content.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun TextView.setTextWithPangu(text: CharSequence?, config: PanguTextConfig = PanguText.globalConfig)

Use PanguText.format to format the text content.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/inject-pangu-text.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/inject-pangu-text.html new file mode 100644 index 0000000..b84e9b5 --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/inject-pangu-text.html @@ -0,0 +1,80 @@ + + + + + injectPanguText + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

injectPanguText

+
+
fun TextView.injectPanguText(injectHint: Boolean = true, config: PanguTextConfig = PanguText.globalConfig)

Inject PanguText to the current text content once.

Receiver

TextView

Parameters

injectHint

whether to apply TextView.setHint, default is true.

config

the configuration of PanguText.

See also

+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/inject-real-time-pangu-text.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/inject-real-time-pangu-text.html new file mode 100644 index 0000000..2ac1dbe --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/inject-real-time-pangu-text.html @@ -0,0 +1,80 @@ + + + + + injectRealTimePanguText + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

injectRealTimePanguText

+
+
fun TextView.injectRealTimePanguText(injectHint: Boolean = true, config: PanguTextConfig = PanguText.globalConfig)

Inject PanguText to the current text content in real time.

  • Note: Repeated inject will be ignored unless the current TextView is detached.

Receiver

TextView

Parameters

injectHint

whether to apply TextView.setHint, default is true.

config

the configuration of PanguText.

See also

+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/set-hint-with-pangu.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/set-hint-with-pangu.html new file mode 100644 index 0000000..e53cb57 --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/set-hint-with-pangu.html @@ -0,0 +1,80 @@ + + + + + setHintWithPangu + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

setHintWithPangu

+
+
fun TextView.setHintWithPangu(text: CharSequence?, config: PanguTextConfig = PanguText.globalConfig)

Use PanguText.format to format the hint text content.

Receiver

TextView

Parameters

text

the text content.

config

the configuration of PanguText.

See also

+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/set-text-with-pangu.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/set-text-with-pangu.html new file mode 100644 index 0000000..ac285da --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.extension/set-text-with-pangu.html @@ -0,0 +1,80 @@ + + + + + setTextWithPangu + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

setTextWithPangu

+
+
fun TextView.setTextWithPangu(text: CharSequence?, config: PanguTextConfig = PanguText.globalConfig)

Use PanguText.format to format the text content.

Receiver

TextView

Parameters

text

the text content.

config

the configuration of PanguText.

See also

+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/-companion/index.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/-companion/index.html new file mode 100644 index 0000000..220cfea --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/-companion/index.html @@ -0,0 +1,104 @@ + + + + + Companion + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Companion

+
object Companion
+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun inject(context: Context): <Error class: unknown class>

Inject PanguTextFactory2 to the current LayoutInflater of context.

Inject PanguTextFactory2 to the current LayoutInflater.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/-companion/inject.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/-companion/inject.html new file mode 100644 index 0000000..2593084 --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/-companion/inject.html @@ -0,0 +1,80 @@ + + + + + inject + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

inject

+
+
fun inject(context: Context): <Error class: unknown class>

Inject PanguTextFactory2 to the current LayoutInflater of context.

Simple Usage:

class MainActivity : AppCompactActivity() {

val binding by lazy { ActivityMainBinding.inflate(layoutInflater) }

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// Inject here.
PanguTextFactory2.inject(this)
setContentView(binding.root)
}
}

Traditional Usage:

class MainActivity : Activity() {

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// Inject here.
PanguTextFactory2.inject(this)
setContentView(R.layout.activity_main)
}
}

Usage with BetterAndroid's AppBindingActivity:

class MainActivity : AppBindingActivity<ActivityMainBinding>() {

override fun onPrepareContentView(savedInstanceState: Bundle?): LayoutInflater {
val inflater = super.onPrepareContentView(savedInstanceState)
// Inject here.
PanguTextFactory2.inject(inflater)
return inflater
}

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// Your code here.
}
}

Parameters

context

the current context.


Inject PanguTextFactory2 to the current LayoutInflater.

Parameters

inflater

the current inflater.

See also

+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/index.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/index.html new file mode 100644 index 0000000..f631731 --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/index.html @@ -0,0 +1,123 @@ + + + + + PanguTextFactory2 + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

PanguTextFactory2

+

Pangu text factory 2 for LayoutInflater.Factory2.

Parameters

base

the base factory.

+
+
+
+
+
+

Types

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
object Companion
+
+
+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onCreateView(name: String, context: Context, attrs: AttributeSet): <Error class: unknown class>
open override fun onCreateView(parent: View?, name: String, context: Context, attrs: AttributeSet): <Error class: unknown class>
+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/on-create-view.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/on-create-view.html new file mode 100644 index 0000000..4d4ee5a --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/on-create-view.html @@ -0,0 +1,80 @@ + + + + + onCreateView + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

onCreateView

+
+
open override fun onCreateView(parent: View?, name: String, context: Context, attrs: AttributeSet): <Error class: unknown class>
open override fun onCreateView(name: String, context: Context, attrs: AttributeSet): <Error class: unknown class>
+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-patcher/index.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-patcher/index.html new file mode 100644 index 0000000..706be6e --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-patcher/index.html @@ -0,0 +1,104 @@ + + + + + PanguTextPatcher + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

PanguTextPatcher

+

Patcher for PanguText.

+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun patch(view: View, config: PanguTextConfig = PanguText.globalConfig)

Patch PanguText to the view.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-patcher/patch.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-patcher/patch.html new file mode 100644 index 0000000..4c15359 --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-patcher/patch.html @@ -0,0 +1,80 @@ + + + + + patch + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

patch

+
+
fun patch(view: View, config: PanguTextConfig = PanguText.globalConfig)

Patch PanguText to the view.

Parameters

view

the view or view group.

config

the configuration of PanguText.

+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/index.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/index.html new file mode 100644 index 0000000..ec2af24 --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android.factory/index.html @@ -0,0 +1,118 @@ + + + + + com.highcapable.pangutext.android.factory + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Package-level declarations

+
+
+
+
+
+

Types

+
+
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+

Patcher for PanguText.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/cjk-spacing-ratio.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/cjk-spacing-ratio.html new file mode 100644 index 0000000..3913c47 --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/cjk-spacing-ratio.html @@ -0,0 +1,80 @@ + + + + + cjkSpacingRatio + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

cjkSpacingRatio

+
+

The CJK spacing ratio, default is DEFAULT_CJK_SPACING_RATIO.

The larger the value, the smaller the spacing, and cannot be less than 0.1f.

It is recommended to adjust with caution, it will only affect the spacing of CJK characters.

+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/copy.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/copy.html new file mode 100644 index 0000000..4ec3d00 --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/copy.html @@ -0,0 +1,80 @@ + + + + + copy + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

copy

+
+
fun copy(body: PanguTextConfig.() -> Unit = {}): <Error class: unknown class>

Copy the current configuration.

Return

PanguTextConfig

Parameters

body

the configuration body.

+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/exclude-patterns.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/exclude-patterns.html new file mode 100644 index 0000000..5fbadb2 --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/exclude-patterns.html @@ -0,0 +1,80 @@ + + + + + excludePatterns + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

excludePatterns

+
+
val excludePatterns: <Error class: unknown class>

The regular expression for text content that needs to be excluded. PanguText processing will be skipped after matching these texts.

Usage:

val config: PanguTextConfig
// Exclude all URLs.
config.excludePatterns.add("https?://\\S+".toRegex())
// Exclude emoji symbol placeholder like "[doge]".
config.excludePatterns.add("\\[.*?]".toRegex())
+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/index.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/index.html new file mode 100644 index 0000000..61c162b --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/index.html @@ -0,0 +1,183 @@ + + + + + PanguTextConfig + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

PanguTextConfig

+

The PanguText configuration.

+
+
+
+
+
+

Properties

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+

The CJK spacing ratio, default is DEFAULT_CJK_SPACING_RATIO.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
val excludePatterns: <Error class: unknown class>

The regular expression for text content that needs to be excluded. PanguText processing will be skipped after matching these texts.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+

Whether to automatically re-measure the text width after processing.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+

Enable the PanguText.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+

Processed Spanned text (experimental).

+
+
+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun copy(body: PanguTextConfig.() -> Unit = {}): <Error class: unknown class>

Copy the current configuration.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/is-auto-remeasure-text.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/is-auto-remeasure-text.html new file mode 100644 index 0000000..775812f --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/is-auto-remeasure-text.html @@ -0,0 +1,80 @@ + + + + + isAutoRemeasureText + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

isAutoRemeasureText

+
+

Whether to automatically re-measure the text width after processing.

  • Note: PanguText after injecting text and changing the text, the width of TextView will not be calculated automatically. At this time, this feature will call TextView.setText to re-execute the measurements, which can fix every time in some dynamic layouts (such as RecyclerView) changes in text width, but may cause performance issues, you can choose to disable this feature. To prevent unnecessary performance overhead, this feature only takes effect on TextView with maxLines set to 1 or singleLine.

+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/is-enabled.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/is-enabled.html new file mode 100644 index 0000000..3c8fb81 --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/is-enabled.html @@ -0,0 +1,80 @@ + + + + + isEnabled + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

isEnabled

+
+

Enable the PanguText.

This is a global switch that can be used to enable or disable the PanguText processor.

+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/is-processed-spanned.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/is-processed-spanned.html new file mode 100644 index 0000000..1050310 --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/is-processed-spanned.html @@ -0,0 +1,80 @@ + + + + + isProcessedSpanned + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

isProcessedSpanned

+
+

Processed Spanned text (experimental).

  • Note: This feature is in experimental stage and may not be fully supported, if the text is not processed correctly, please disable this feature.

+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text/format.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text/format.html new file mode 100644 index 0000000..662249c --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text/format.html @@ -0,0 +1,80 @@ + + + + + format + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

format

+
+
fun format(resources: Resources, @Px textSize: Float, text: CharSequence, config: PanguTextConfig = globalConfig): CharSequence

Use PanguText to format specified text.

PanguText will automatically set PanguMarginSpan for some characters in the text to achieve white space typesetting effect without actually inserting any characters or changing the length of the original text.

This function will insert a style for the current given text without actually changing the string position in the text. If the current text is of type Spannable, it will return the original unmodified object, otherwise it will return the wrapped object SpannableString after.

Return

CharSequence

Parameters

resources

the current resources.

textSize

the text size (px).

text

text to be formatted.

config

the configuration of PanguText.

See also


fun format(text: CharSequence, whiteSpace: Char = ' ', config: PanguTextConfig = globalConfig): CharSequence

Use PanguText to format the current text content.

Using this function will add extra whiteSpace as character spacing to the text, changing the length of the original text.

Return

CharSequence

Parameters

text

text to be formatted.

whiteSpace

the spacing character, default is 'U+200A'.

config

the configuration of PanguText.

See also

+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text/global-config.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text/global-config.html new file mode 100644 index 0000000..81489dc --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text/global-config.html @@ -0,0 +1,80 @@ + + + + + globalConfig + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

globalConfig

+
+

The global configuration of PanguText.

+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text/index.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text/index.html new file mode 100644 index 0000000..d077efe --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/-pangu-text/index.html @@ -0,0 +1,123 @@ + + + + + PanguText + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

PanguText

+
object PanguText

The library core of Pangu text processor.

Bigger thanks for this project.

See also

PanguPatterns
+
+
+
+
+
+

Properties

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+

The global configuration of PanguText.

+
+
+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun format(text: CharSequence, whiteSpace: Char = ' ', config: PanguTextConfig = globalConfig): CharSequence

Use PanguText to format the current text content.

fun format(resources: Resources, @Px textSize: Float, text: CharSequence, config: PanguTextConfig = globalConfig): CharSequence

Use PanguText to format specified text.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/index.html b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/index.html new file mode 100644 index 0000000..37288a7 --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/com.highcapable.pangutext.android/index.html @@ -0,0 +1,118 @@ + + + + + com.highcapable.pangutext.android + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Package-level declarations

+
+
+
+
+
+

Types

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
object PanguText

The library core of Pangu text processor.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+

The PanguText configuration.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/pangutext-android/pangutext-android/package-list b/KDoc/pangutext-android/pangutext-android/package-list new file mode 100644 index 0000000..ebd5d29 --- /dev/null +++ b/KDoc/pangutext-android/pangutext-android/package-list @@ -0,0 +1,41 @@ +$dokka.format:html-v1 +$dokka.linkExtension:html +$dokka.location:com.highcapable.pangutext.android.core////PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.core/index.html +$dokka.location:com.highcapable.pangutext.android.core/PanguTextView///PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-view/index.html +$dokka.location:com.highcapable.pangutext.android.core/PanguTextView/configurePanguText/#com.highcapable.pangutext.android.PanguTextConfig/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-view/configure-pangu-text.html +$dokka.location:com.highcapable.pangutext.android.core/PanguTextWatcher///PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/index.html +$dokka.location:com.highcapable.pangutext.android.core/PanguTextWatcher/afterTextChanged/#android.text.Editable?/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/after-text-changed.html +$dokka.location:com.highcapable.pangutext.android.core/PanguTextWatcher/beforeTextChanged/#kotlin.CharSequence?#kotlin.Int#kotlin.Int#kotlin.Int/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/before-text-changed.html +$dokka.location:com.highcapable.pangutext.android.core/PanguTextWatcher/onTextChanged/#kotlin.CharSequence?#kotlin.Int#kotlin.Int#kotlin.Int/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.core/-pangu-text-watcher/on-text-changed.html +$dokka.location:com.highcapable.pangutext.android.extension////PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.extension/index.html +$dokka.location:com.highcapable.pangutext.android.extension//PanguTextConfig/#kotlin.Boolean#kotlin.Function1[com.highcapable.pangutext.android.PanguTextConfig,kotlin.Unit]/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.extension/-pangu-text-config.html +$dokka.location:com.highcapable.pangutext.android.extension//injectPanguText/android.widget.TextView#kotlin.Boolean#com.highcapable.pangutext.android.PanguTextConfig/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.extension/inject-pangu-text.html +$dokka.location:com.highcapable.pangutext.android.extension//injectRealTimePanguText/android.widget.TextView#kotlin.Boolean#com.highcapable.pangutext.android.PanguTextConfig/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.extension/inject-real-time-pangu-text.html +$dokka.location:com.highcapable.pangutext.android.extension//setHintWithPangu/android.widget.TextView#kotlin.CharSequence?#com.highcapable.pangutext.android.PanguTextConfig/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.extension/set-hint-with-pangu.html +$dokka.location:com.highcapable.pangutext.android.extension//setTextWithPangu/android.widget.TextView#kotlin.CharSequence?#com.highcapable.pangutext.android.PanguTextConfig/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.extension/set-text-with-pangu.html +$dokka.location:com.highcapable.pangutext.android.factory////PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.factory/index.html +$dokka.location:com.highcapable.pangutext.android.factory/PanguTextFactory2.Companion///PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/-companion/index.html +$dokka.location:com.highcapable.pangutext.android.factory/PanguTextFactory2.Companion/inject/#android.content.Context/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/-companion/inject.html +$dokka.location:com.highcapable.pangutext.android.factory/PanguTextFactory2.Companion/inject/#android.view.LayoutInflater/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/-companion/inject.html +$dokka.location:com.highcapable.pangutext.android.factory/PanguTextFactory2///PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/index.html +$dokka.location:com.highcapable.pangutext.android.factory/PanguTextFactory2/onCreateView/#android.view.View?#kotlin.String#android.content.Context#android.util.AttributeSet/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/on-create-view.html +$dokka.location:com.highcapable.pangutext.android.factory/PanguTextFactory2/onCreateView/#kotlin.String#android.content.Context#android.util.AttributeSet/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-factory2/on-create-view.html +$dokka.location:com.highcapable.pangutext.android.factory/PanguTextPatcher///PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-patcher/index.html +$dokka.location:com.highcapable.pangutext.android.factory/PanguTextPatcher/patch/#android.view.View#com.highcapable.pangutext.android.PanguTextConfig/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android.factory/-pangu-text-patcher/patch.html +$dokka.location:com.highcapable.pangutext.android////PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android/index.html +$dokka.location:com.highcapable.pangutext.android/PanguText///PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android/-pangu-text/index.html +$dokka.location:com.highcapable.pangutext.android/PanguText/format/#android.content.res.Resources#kotlin.Float#kotlin.CharSequence#com.highcapable.pangutext.android.PanguTextConfig/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android/-pangu-text/format.html +$dokka.location:com.highcapable.pangutext.android/PanguText/format/#kotlin.CharSequence#kotlin.Char#com.highcapable.pangutext.android.PanguTextConfig/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android/-pangu-text/format.html +$dokka.location:com.highcapable.pangutext.android/PanguText/globalConfig/#/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android/-pangu-text/global-config.html +$dokka.location:com.highcapable.pangutext.android/PanguTextConfig///PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/index.html +$dokka.location:com.highcapable.pangutext.android/PanguTextConfig/cjkSpacingRatio/#/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/cjk-spacing-ratio.html +$dokka.location:com.highcapable.pangutext.android/PanguTextConfig/copy/#kotlin.Function1[com.highcapable.pangutext.android.PanguTextConfig,kotlin.Unit]/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/copy.html +$dokka.location:com.highcapable.pangutext.android/PanguTextConfig/excludePatterns/#/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/exclude-patterns.html +$dokka.location:com.highcapable.pangutext.android/PanguTextConfig/isAutoRemeasureText/#/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/is-auto-remeasure-text.html +$dokka.location:com.highcapable.pangutext.android/PanguTextConfig/isEnabled/#/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/is-enabled.html +$dokka.location:com.highcapable.pangutext.android/PanguTextConfig/isProcessedSpanned/#/PointingToDeclaration/pangutext-android/com.highcapable.pangutext.android/-pangu-text-config/is-processed-spanned.html +com.highcapable.pangutext.android +com.highcapable.pangutext.android.core +com.highcapable.pangutext.android.extension +com.highcapable.pangutext.android.factory + diff --git a/KDoc/pangutext-android/scripts/clipboard.js b/KDoc/pangutext-android/scripts/clipboard.js new file mode 100644 index 0000000..7a4f33c --- /dev/null +++ b/KDoc/pangutext-android/scripts/clipboard.js @@ -0,0 +1,56 @@ +/* + * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license. + */ + +window.addEventListener('load', () => { + document.querySelectorAll('span.copy-icon').forEach(element => { + element.addEventListener('click', (el) => copyElementsContentToClipboard(element)); + }) + + document.querySelectorAll('span.anchor-icon').forEach(element => { + element.addEventListener('click', (el) => { + if(element.hasAttribute('pointing-to')){ + const location = hrefWithoutCurrentlyUsedAnchor() + '#' + element.getAttribute('pointing-to') + copyTextToClipboard(element, location) + } + }); + }) +}) + +const copyElementsContentToClipboard = (element) => { + const selection = window.getSelection(); + const range = document.createRange(); + range.selectNodeContents(element.parentNode.parentNode); + selection.removeAllRanges(); + selection.addRange(range); + + copyAndShowPopup(element, () => selection.removeAllRanges()) +} + +const copyTextToClipboard = (element, text) => { + var textarea = document.createElement("textarea"); + textarea.textContent = text; + textarea.style.position = "fixed"; + document.body.appendChild(textarea); + textarea.select(); + + copyAndShowPopup(element, () => document.body.removeChild(textarea)) +} + +const copyAndShowPopup = (element, after) => { + try { + document.execCommand('copy'); + element.nextElementSibling.classList.add('active-popup'); + setTimeout(() => { + element.nextElementSibling.classList.remove('active-popup'); + }, 1200); + } catch (e) { + console.error('Failed to write to clipboard:', e) + } + finally { + if(after) after() + } +} + +const hrefWithoutCurrentlyUsedAnchor = () => window.location.href.split('#')[0] + diff --git a/KDoc/pangutext-android/scripts/main.js b/KDoc/pangutext-android/scripts/main.js new file mode 100644 index 0000000..ba6c347 --- /dev/null +++ b/KDoc/pangutext-android/scripts/main.js @@ -0,0 +1,44 @@ +(()=>{var e={8527:e=>{e.exports=''},5570:e=>{e.exports=''},107:e=>{e.exports=''},7224:e=>{e.exports=''},538:e=>{e.exports=''},1924:(e,n,t)=>{"use strict";var r=t(210),o=t(5559),i=o(r("String.prototype.indexOf"));e.exports=function(e,n){var t=r(e,!!n);return"function"==typeof t&&i(e,".prototype.")>-1?o(t):t}},5559:(e,n,t)=>{"use strict";var r=t(8612),o=t(210),i=o("%Function.prototype.apply%"),a=o("%Function.prototype.call%"),l=o("%Reflect.apply%",!0)||r.call(a,i),c=o("%Object.getOwnPropertyDescriptor%",!0),u=o("%Object.defineProperty%",!0),s=o("%Math.max%");if(u)try{u({},"a",{value:1})}catch(e){u=null}e.exports=function(e){var n=l(r,a,arguments);if(c&&u){var t=c(n,"length");t.configurable&&u(n,"length",{value:1+s(0,e.length-(arguments.length-1))})}return n};var f=function(){return l(r,i,arguments)};u?u(e.exports,"apply",{value:f}):e.exports.apply=f},4184:(e,n)=>{var t; +/*! + Copyright (c) 2018 Jed Watson. + Licensed under the MIT License (MIT), see + http://jedwatson.github.io/classnames +*/!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e=[],n=0;n{"use strict";e.exports=function(e,n){var t=this,r=t.constructor;return t.options=Object.assign({storeInstancesGlobally:!0},n||{}),t.callbacks={},t.directMap={},t.sequenceLevels={},t.resetTimer=null,t.ignoreNextKeyup=!1,t.ignoreNextKeypress=!1,t.nextExpectedAction=!1,t.element=e,t.addEvents(),t.options.storeInstancesGlobally&&r.instances.push(t),t},e.exports.prototype.bind=t(2207),e.exports.prototype.bindMultiple=t(3396),e.exports.prototype.unbind=t(9208),e.exports.prototype.trigger=t(9855),e.exports.prototype.reset=t(6214),e.exports.prototype.stopCallback=t(3450),e.exports.prototype.handleKey=t(3067),e.exports.prototype.addEvents=t(718),e.exports.prototype.bindSingle=t(8763),e.exports.prototype.getKeyInfo=t(5825),e.exports.prototype.pickBestAction=t(8608),e.exports.prototype.getReverseMap=t(3956),e.exports.prototype.getMatches=t(3373),e.exports.prototype.resetSequences=t(3346),e.exports.prototype.fireCallback=t(2684),e.exports.prototype.bindSequence=t(7103),e.exports.prototype.resetSequenceTimer=t(7309),e.exports.prototype.detach=t(7554),e.exports.instances=[],e.exports.reset=t(1822),e.exports.REVERSE_MAP=null},718:(e,n,t)=>{"use strict";e.exports=function(){var e=this,n=t(4323),r=e.element;e.eventHandler=t(9646).bind(e),n(r,"keypress",e.eventHandler),n(r,"keydown",e.eventHandler),n(r,"keyup",e.eventHandler)}},2207:e=>{"use strict";e.exports=function(e,n,t){return e=e instanceof Array?e:[e],this.bindMultiple(e,n,t),this}},3396:e=>{"use strict";e.exports=function(e,n,t){for(var r=0;r{"use strict";e.exports=function(e,n,r,o){var i=this;function a(n){return function(){i.nextExpectedAction=n,++i.sequenceLevels[e],i.resetSequenceTimer()}}function l(n){var a;i.fireCallback(r,n,e),"keyup"!==o&&(a=t(6770),i.ignoreNextKeyup=a(n)),setTimeout((function(){i.resetSequences()}),10)}i.sequenceLevels[e]=0;for(var c=0;c{"use strict";e.exports=function(e,n,t,r,o){var i=this;i.directMap[e+":"+t]=n;var a,l=(e=e.replace(/\s+/g," ")).split(" ");l.length>1?i.bindSequence(e,l,n,t):(a=i.getKeyInfo(e,t),i.callbacks[a.key]=i.callbacks[a.key]||[],i.getMatches(a.key,a.modifiers,{type:a.action},r,e,o),i.callbacks[a.key][r?"unshift":"push"]({callback:n,modifiers:a.modifiers,action:a.action,seq:r,level:o,combo:e}))}},7554:(e,n,t)=>{var r=t(4323).off;e.exports=function(){var e=this,n=e.element;r(n,"keypress",e.eventHandler),r(n,"keydown",e.eventHandler),r(n,"keyup",e.eventHandler)}},4323:e=>{function n(e,n,t,r){return!e.addEventListener&&(n="on"+n),(e.addEventListener||e.attachEvent).call(e,n,t,r),t}e.exports=n,e.exports.on=n,e.exports.off=function(e,n,t,r){return!e.removeEventListener&&(n="on"+n),(e.removeEventListener||e.detachEvent).call(e,n,t,r),t}},2684:(e,n,t)=>{"use strict";e.exports=function(e,n,r,o){this.stopCallback(n,n.target||n.srcElement,r,o)||!1===e(n,r)&&(t(1350)(n),t(6103)(n))}},5825:(e,n,t)=>{"use strict";e.exports=function(e,n){var r,o,i,a,l,c,u=[];for(r=t(4520)(e),a=t(7549),l=t(5355),c=t(8581),i=0;i{"use strict";e.exports=function(e,n,r,o,i,a){var l,c,u,s,f=this,p=[],d=r.type;"keypress"!==d||r.code&&"Arrow"===r.code.slice(0,5)||(f.callbacks["any-character"]||[]).forEach((function(e){p.push(e)}));if(!f.callbacks[e])return p;for(u=t(8581),"keyup"===d&&u(e)&&(n=[e]),l=0;l{"use strict";e.exports=function(){var e,n=this.constructor;if(!n.REVERSE_MAP)for(var r in n.REVERSE_MAP={},e=t(4766))r>95&&r<112||e.hasOwnProperty(r)&&(n.REVERSE_MAP[e[r]]=r);return n.REVERSE_MAP}},3067:(e,n,t)=>{"use strict";e.exports=function(e,n,r){var o,i,a,l,c=this,u={},s=0,f=!1;for(o=c.getMatches(e,n,r),i=0;i{"use strict";e.exports=function(e){var n,r=this;"number"!=typeof e.which&&(e.which=e.keyCode);var o=t(6770)(e);void 0!==o&&("keyup"!==e.type||r.ignoreNextKeyup!==o?(n=t(4610),r.handleKey(o,n(e),e)):r.ignoreNextKeyup=!1)}},5532:e=>{"use strict";e.exports=function(e,n){return e.sort().join(",")===n.sort().join(",")}},8608:e=>{"use strict";e.exports=function(e,n,t){return t||(t=this.getReverseMap()[e]?"keydown":"keypress"),"keypress"===t&&n.length&&(t="keydown"),t}},6214:e=>{"use strict";e.exports=function(){return this.callbacks={},this.directMap={},this}},7309:e=>{"use strict";e.exports=function(){var e=this;clearTimeout(e.resetTimer),e.resetTimer=setTimeout((function(){e.resetSequences()}),1e3)}},3346:e=>{"use strict";e.exports=function(e){var n=this;e=e||{};var t,r=!1;for(t in n.sequenceLevels)e[t]?r=!0:n.sequenceLevels[t]=0;r||(n.nextExpectedAction=!1)}},3450:e=>{"use strict";e.exports=function(e,n){if((" "+n.className+" ").indexOf(" combokeys ")>-1)return!1;var t=n.tagName.toLowerCase();return"input"===t||"select"===t||"textarea"===t||n.isContentEditable}},9855:e=>{"use strict";e.exports=function(e,n){return this.directMap[e+":"+n]&&this.directMap[e+":"+n]({},e),this}},9208:e=>{"use strict";e.exports=function(e,n){return this.bind(e,(function(){}),n)}},1822:e=>{"use strict";e.exports=function(){this.instances.forEach((function(e){e.reset()}))}},6770:(e,n,t)=>{"use strict";e.exports=function(e){var n,r;if(n=t(4766),r=t(5295),"keypress"===e.type){var o=String.fromCharCode(e.which);return e.shiftKey||(o=o.toLowerCase()),o}return void 0!==n[e.which]?n[e.which]:void 0!==r[e.which]?r[e.which]:String.fromCharCode(e.which).toLowerCase()}},4610:e=>{"use strict";e.exports=function(e){var n=[];return e.shiftKey&&n.push("shift"),e.altKey&&n.push("alt"),e.ctrlKey&&n.push("ctrl"),e.metaKey&&n.push("meta"),n}},8581:e=>{"use strict";e.exports=function(e){return"shift"===e||"ctrl"===e||"alt"===e||"meta"===e}},4520:e=>{"use strict";e.exports=function(e){return"+"===e?["+"]:e.split("+")}},1350:e=>{"use strict";e.exports=function(e){e.preventDefault?e.preventDefault():e.returnValue=!1}},5355:e=>{"use strict";e.exports={"~":"`","!":"1","@":"2","#":"3",$:"4","%":"5","^":"6","&":"7","*":"8","(":"9",")":"0",_:"-","+":"=",":":";",'"':"'","<":",",">":".","?":"/","|":"\\"}},7549:e=>{"use strict";e.exports={option:"alt",command:"meta",return:"enter",escape:"esc",mod:/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"meta":"ctrl"}},5295:e=>{"use strict";e.exports={106:"*",107:"plus",109:"minus",110:".",111:"/",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"}},4766:e=>{"use strict";e.exports={8:"backspace",9:"tab",13:"enter",16:"shift",17:"ctrl",18:"alt",20:"capslock",27:"esc",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"ins",46:"del",91:"meta",93:"meta",173:"minus",187:"plus",189:"minus",224:"meta"};for(var n=1;n<20;++n)e.exports[111+n]="f"+n;for(n=0;n<=9;++n)e.exports[n+96]=n},6103:e=>{"use strict";e.exports=function(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}},3362:()=>{var e;!function(){var e=Math.PI,n=2*e,t=e/180,r=document.createElement("div");document.head.appendChild(r);var o=self.ConicGradient=function(e){o.all.push(this),e=e||{},this.canvas=document.createElement("canvas"),this.context=this.canvas.getContext("2d"),this.repeating=!!e.repeating,this.size=e.size||Math.max(innerWidth,innerHeight),this.canvas.width=this.canvas.height=this.size;var n=e.stops;this.stops=(n||"").split(/\s*,(?![^(]*\))\s*/),this.from=0;for(var t=0;t0){var i=this.stops[0].clone();i.pos=0,this.stops.unshift(i)}if(void 0===this.stops[this.stops.length-1].pos)this.stops[this.stops.length-1].pos=1;else if(!this.repeating&&this.stops[this.stops.length-1].pos<1){var a=this.stops[this.stops.length-1].clone();a.pos=1,this.stops.push(a)}if(this.stops.forEach((function(e,n){if(void 0===e.pos){for(var t=n+1;this[t];t++)if(void 0!==this[t].pos){e.pos=this[n-1].pos+(this[t].pos-this[n-1].pos)/(t-n+1);break}}else n>0&&(e.pos=Math.max(e.pos,this[n-1].pos))}),this.stops),this.repeating){var l=(n=this.stops.slice())[n.length-1].pos-n[0].pos;for(t=0;this.stops[this.stops.length-1].pos<1&&t<1e4;t++)for(var c=0;c'},get png(){return this.canvas.toDataURL()},get r(){return Math.sqrt(2)*this.size/2},paint:function(){var e,n,r,o=this.context,i=this.r,a=this.size/2,l=0,c=this.stops[l];o.translate(this.size/2,this.size/2),o.rotate(-90*t),o.rotate(this.from*t),o.translate(-this.size/2,-this.size/2);for(var u=0;u<360;){if(u/360+1e-5>=c.pos){do{e=c,l++,c=this.stops[l]}while(c&&c!=e&&c.pos===e.pos);if(!c)break;var s=e.color+""==c.color+""&&e!=c;n=e.color.map((function(e,n){return c.color[n]-e}))}r=(u/360-e.pos)/(c.pos-e.pos);var f=s?c.color:n.map((function(n,t){var o=n*r+e.color[t];return t<3?255&o:o}));if(o.fillStyle="rgba("+f.join(",")+")",o.beginPath(),o.moveTo(a,a),s)var p=360*(c.pos-e.pos);else p=.5;var d=u*t,h=(d=Math.min(360*t,d))+p*t;h=Math.min(360*t,h+.02),o.arc(a,a,i,d,h),o.closePath(),o.fill(),u+=p}}},o.ColorStop=function(e,t){if(this.gradient=e,t){var r=t.match(/^(.+?)(?:\s+([\d.]+)(%|deg|turn|grad|rad)?)?(?:\s+([\d.]+)(%|deg|turn|grad|rad)?)?\s*$/);if(this.color=o.ColorStop.colorToRGBA(r[1]),r[2]){var i=r[3];"%"==i||"0"===r[2]&&!i?this.pos=r[2]/100:"turn"==i?this.pos=+r[2]:"deg"==i?this.pos=r[2]/360:"grad"==i?this.pos=r[2]/400:"rad"==i&&(this.pos=r[2]/n)}r[4]&&(this.next=new o.ColorStop(e,r[1]+" "+r[4]+r[5]))}},o.ColorStop.prototype={clone:function(){var e=new o.ColorStop(this.gradient);return e.color=this.color,e.pos=this.pos,e},toString:function(){return"rgba("+this.color.join(", ")+") "+100*this.pos+"%"}},o.ColorStop.colorToRGBA=function(e){if(!Array.isArray(e)&&-1==e.indexOf("from")){r.style.color=e;var n=getComputedStyle(r).color.match(/rgba?\(([\d.]+), ([\d.]+), ([\d.]+)(?:, ([\d.]+))?\)/);return n&&(n.shift(),(n=n.map((function(e){return+e})))[3]=isNaN(n[3])?1:n[3]),n||[0,0,0,0]}return e}}(),self.StyleFix&&((e=document.createElement("p")).style.backgroundImage="conic-gradient(white, black)",e.style.backgroundImage=PrefixFree.prefix+"conic-gradient(white, black)",e.style.backgroundImage||StyleFix.register((function(e,n){return e.indexOf("conic-gradient")>-1&&(e=e.replace(/(?:repeating-)?conic-gradient\(\s*((?:\([^()]+\)|[^;()}])+?)\)/g,(function(e,n){return new ConicGradient({stops:n,repeating:e.indexOf("repeating-")>-1})}))),e})))},9662:(e,n,t)=>{var r=t(7854),o=t(614),i=t(6330),a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not a function")}},9483:(e,n,t)=>{var r=t(7854),o=t(4411),i=t(6330),a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not a constructor")}},6077:(e,n,t)=>{var r=t(7854),o=t(614),i=r.String,a=r.TypeError;e.exports=function(e){if("object"==typeof e||o(e))return e;throw a("Can't set "+i(e)+" as a prototype")}},1223:(e,n,t)=>{var r=t(5112),o=t(30),i=t(3070),a=r("unscopables"),l=Array.prototype;null==l[a]&&i.f(l,a,{configurable:!0,value:o(null)}),e.exports=function(e){l[a][e]=!0}},1530:(e,n,t)=>{"use strict";var r=t(8710).charAt;e.exports=function(e,n,t){return n+(t?r(e,n).length:1)}},5787:(e,n,t)=>{var r=t(7854),o=t(7976),i=r.TypeError;e.exports=function(e,n){if(o(n,e))return e;throw i("Incorrect invocation")}},9670:(e,n,t)=>{var r=t(7854),o=t(111),i=r.String,a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not an object")}},7556:(e,n,t)=>{var r=t(7293);e.exports=r((function(){if("function"==typeof ArrayBuffer){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}))},8533:(e,n,t)=>{"use strict";var r=t(2092).forEach,o=t(9341)("forEach");e.exports=o?[].forEach:function(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}},8457:(e,n,t)=>{"use strict";var r=t(7854),o=t(9974),i=t(6916),a=t(7908),l=t(3411),c=t(7659),u=t(4411),s=t(6244),f=t(6135),p=t(8554),d=t(1246),h=r.Array;e.exports=function(e){var n=a(e),t=u(this),r=arguments.length,g=r>1?arguments[1]:void 0,v=void 0!==g;v&&(g=o(g,r>2?arguments[2]:void 0));var A,b,m,y,E,_,C=d(n),w=0;if(!C||this==h&&c(C))for(A=s(n),b=t?new this(A):h(A);A>w;w++)_=v?g(n[w],w):n[w],f(b,w,_);else for(E=(y=p(n,C)).next,b=t?new this:[];!(m=i(E,y)).done;w++)_=v?l(y,g,[m.value,w],!0):m.value,f(b,w,_);return b.length=w,b}},1318:(e,n,t)=>{var r=t(5656),o=t(1400),i=t(6244),a=function(e){return function(n,t,a){var l,c=r(n),u=i(c),s=o(a,u);if(e&&t!=t){for(;u>s;)if((l=c[s++])!=l)return!0}else for(;u>s;s++)if((e||s in c)&&c[s]===t)return e||s||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},2092:(e,n,t)=>{var r=t(9974),o=t(1702),i=t(8361),a=t(7908),l=t(6244),c=t(5417),u=o([].push),s=function(e){var n=1==e,t=2==e,o=3==e,s=4==e,f=6==e,p=7==e,d=5==e||f;return function(h,g,v,A){for(var b,m,y=a(h),E=i(y),_=r(g,v),C=l(E),w=0,x=A||c,k=n?x(h,C):t||p?x(h,0):void 0;C>w;w++)if((d||w in E)&&(m=_(b=E[w],w,y),e))if(n)k[w]=m;else if(m)switch(e){case 3:return!0;case 5:return b;case 6:return w;case 2:u(k,b)}else switch(e){case 4:return!1;case 7:u(k,b)}return f?-1:o||s?s:k}};e.exports={forEach:s(0),map:s(1),filter:s(2),some:s(3),every:s(4),find:s(5),findIndex:s(6),filterReject:s(7)}},1194:(e,n,t)=>{var r=t(7293),o=t(5112),i=t(7392),a=o("species");e.exports=function(e){return i>=51||!r((function(){var n=[];return(n.constructor={})[a]=function(){return{foo:1}},1!==n[e](Boolean).foo}))}},9341:(e,n,t)=>{"use strict";var r=t(7293);e.exports=function(e,n){var t=[][e];return!!t&&r((function(){t.call(null,n||function(){throw 1},1)}))}},3671:(e,n,t)=>{var r=t(7854),o=t(9662),i=t(7908),a=t(8361),l=t(6244),c=r.TypeError,u=function(e){return function(n,t,r,u){o(t);var s=i(n),f=a(s),p=l(s),d=e?p-1:0,h=e?-1:1;if(r<2)for(;;){if(d in f){u=f[d],d+=h;break}if(d+=h,e?d<0:p<=d)throw c("Reduce of empty array with no initial value")}for(;e?d>=0:p>d;d+=h)d in f&&(u=t(u,f[d],d,s));return u}};e.exports={left:u(!1),right:u(!0)}},206:(e,n,t)=>{var r=t(1702);e.exports=r([].slice)},4362:(e,n,t)=>{var r=t(206),o=Math.floor,i=function(e,n){var t=e.length,c=o(t/2);return t<8?a(e,n):l(e,i(r(e,0,c),n),i(r(e,c),n),n)},a=function(e,n){for(var t,r,o=e.length,i=1;i0;)e[r]=e[--r];r!==i++&&(e[r]=t)}return e},l=function(e,n,t,r){for(var o=n.length,i=t.length,a=0,l=0;a{var r=t(7854),o=t(3157),i=t(4411),a=t(111),l=t(5112)("species"),c=r.Array;e.exports=function(e){var n;return o(e)&&(n=e.constructor,(i(n)&&(n===c||o(n.prototype))||a(n)&&null===(n=n[l]))&&(n=void 0)),void 0===n?c:n}},5417:(e,n,t)=>{var r=t(7475);e.exports=function(e,n){return new(r(e))(0===n?0:n)}},3411:(e,n,t)=>{var r=t(9670),o=t(9212);e.exports=function(e,n,t,i){try{return i?n(r(t)[0],t[1]):n(t)}catch(n){o(e,"throw",n)}}},7072:(e,n,t)=>{var r=t(5112)("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(e){}e.exports=function(e,n){if(!n&&!o)return!1;var t=!1;try{var i={};i[r]=function(){return{next:function(){return{done:t=!0}}}},e(i)}catch(e){}return t}},4326:(e,n,t)=>{var r=t(1702),o=r({}.toString),i=r("".slice);e.exports=function(e){return i(o(e),8,-1)}},648:(e,n,t)=>{var r=t(7854),o=t(1694),i=t(614),a=t(4326),l=t(5112)("toStringTag"),c=r.Object,u="Arguments"==a(function(){return arguments}());e.exports=o?a:function(e){var n,t,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(t=function(e,n){try{return e[n]}catch(e){}}(n=c(e),l))?t:u?a(n):"Object"==(r=a(n))&&i(n.callee)?"Arguments":r}},5631:(e,n,t)=>{"use strict";var r=t(3070).f,o=t(30),i=t(2248),a=t(9974),l=t(5787),c=t(408),u=t(654),s=t(6340),f=t(9781),p=t(2423).fastKey,d=t(9909),h=d.set,g=d.getterFor;e.exports={getConstructor:function(e,n,t,u){var s=e((function(e,r){l(e,d),h(e,{type:n,index:o(null),first:void 0,last:void 0,size:0}),f||(e.size=0),null!=r&&c(r,e[u],{that:e,AS_ENTRIES:t})})),d=s.prototype,v=g(n),A=function(e,n,t){var r,o,i=v(e),a=b(e,n);return a?a.value=t:(i.last=a={index:o=p(n,!0),key:n,value:t,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),f?i.size++:e.size++,"F"!==o&&(i.index[o]=a)),e},b=function(e,n){var t,r=v(e),o=p(n);if("F"!==o)return r.index[o];for(t=r.first;t;t=t.next)if(t.key==n)return t};return i(d,{clear:function(){for(var e=v(this),n=e.index,t=e.first;t;)t.removed=!0,t.previous&&(t.previous=t.previous.next=void 0),delete n[t.index],t=t.next;e.first=e.last=void 0,f?e.size=0:this.size=0},delete:function(e){var n=this,t=v(n),r=b(n,e);if(r){var o=r.next,i=r.previous;delete t.index[r.index],r.removed=!0,i&&(i.next=o),o&&(o.previous=i),t.first==r&&(t.first=o),t.last==r&&(t.last=i),f?t.size--:n.size--}return!!r},forEach:function(e){for(var n,t=v(this),r=a(e,arguments.length>1?arguments[1]:void 0);n=n?n.next:t.first;)for(r(n.value,n.key,this);n&&n.removed;)n=n.previous},has:function(e){return!!b(this,e)}}),i(d,t?{get:function(e){var n=b(this,e);return n&&n.value},set:function(e,n){return A(this,0===e?0:e,n)}}:{add:function(e){return A(this,e=0===e?0:e,e)}}),f&&r(d,"size",{get:function(){return v(this).size}}),s},setStrong:function(e,n,t){var r=n+" Iterator",o=g(n),i=g(r);u(e,n,(function(e,n){h(this,{type:r,target:e,state:o(e),kind:n,last:void 0})}),(function(){for(var e=i(this),n=e.kind,t=e.last;t&&t.removed;)t=t.previous;return e.target&&(e.last=t=t?t.next:e.state.first)?"keys"==n?{value:t.key,done:!1}:"values"==n?{value:t.value,done:!1}:{value:[t.key,t.value],done:!1}:(e.target=void 0,{value:void 0,done:!0})}),t?"entries":"values",!t,!0),s(n)}}},9320:(e,n,t)=>{"use strict";var r=t(1702),o=t(2248),i=t(2423).getWeakData,a=t(9670),l=t(111),c=t(5787),u=t(408),s=t(2092),f=t(2597),p=t(9909),d=p.set,h=p.getterFor,g=s.find,v=s.findIndex,A=r([].splice),b=0,m=function(e){return e.frozen||(e.frozen=new y)},y=function(){this.entries=[]},E=function(e,n){return g(e.entries,(function(e){return e[0]===n}))};y.prototype={get:function(e){var n=E(this,e);if(n)return n[1]},has:function(e){return!!E(this,e)},set:function(e,n){var t=E(this,e);t?t[1]=n:this.entries.push([e,n])},delete:function(e){var n=v(this.entries,(function(n){return n[0]===e}));return~n&&A(this.entries,n,1),!!~n}},e.exports={getConstructor:function(e,n,t,r){var s=e((function(e,o){c(e,p),d(e,{type:n,id:b++,frozen:void 0}),null!=o&&u(o,e[r],{that:e,AS_ENTRIES:t})})),p=s.prototype,g=h(n),v=function(e,n,t){var r=g(e),o=i(a(n),!0);return!0===o?m(r).set(n,t):o[r.id]=t,e};return o(p,{delete:function(e){var n=g(this);if(!l(e))return!1;var t=i(e);return!0===t?m(n).delete(e):t&&f(t,n.id)&&delete t[n.id]},has:function(e){var n=g(this);if(!l(e))return!1;var t=i(e);return!0===t?m(n).has(e):t&&f(t,n.id)}}),o(p,t?{get:function(e){var n=g(this);if(l(e)){var t=i(e);return!0===t?m(n).get(e):t?t[n.id]:void 0}},set:function(e,n){return v(this,e,n)}}:{add:function(e){return v(this,e,!0)}}),s}}},7710:(e,n,t)=>{"use strict";var r=t(2109),o=t(7854),i=t(1702),a=t(4705),l=t(1320),c=t(2423),u=t(408),s=t(5787),f=t(614),p=t(111),d=t(7293),h=t(7072),g=t(8003),v=t(9587);e.exports=function(e,n,t){var A=-1!==e.indexOf("Map"),b=-1!==e.indexOf("Weak"),m=A?"set":"add",y=o[e],E=y&&y.prototype,_=y,C={},w=function(e){var n=i(E[e]);l(E,e,"add"==e?function(e){return n(this,0===e?0:e),this}:"delete"==e?function(e){return!(b&&!p(e))&&n(this,0===e?0:e)}:"get"==e?function(e){return b&&!p(e)?void 0:n(this,0===e?0:e)}:"has"==e?function(e){return!(b&&!p(e))&&n(this,0===e?0:e)}:function(e,t){return n(this,0===e?0:e,t),this})};if(a(e,!f(y)||!(b||E.forEach&&!d((function(){(new y).entries().next()})))))_=t.getConstructor(n,e,A,m),c.enable();else if(a(e,!0)){var x=new _,k=x[m](b?{}:-0,1)!=x,S=d((function(){x.has(1)})),O=h((function(e){new y(e)})),B=!b&&d((function(){for(var e=new y,n=5;n--;)e[m](n,n);return!e.has(-0)}));O||((_=n((function(e,n){s(e,E);var t=v(new y,e,_);return null!=n&&u(n,t[m],{that:t,AS_ENTRIES:A}),t}))).prototype=E,E.constructor=_),(S||B)&&(w("delete"),w("has"),A&&w("get")),(B||k)&&w(m),b&&E.clear&&delete E.clear}return C[e]=_,r({global:!0,forced:_!=y},C),g(_,e),b||t.setStrong(_,e,A),_}},9920:(e,n,t)=>{var r=t(2597),o=t(3887),i=t(1236),a=t(3070);e.exports=function(e,n){for(var t=o(n),l=a.f,c=i.f,u=0;u{var r=t(5112)("match");e.exports=function(e){var n=/./;try{"/./"[e](n)}catch(t){try{return n[r]=!1,"/./"[e](n)}catch(e){}}return!1}},8544:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}))},4230:(e,n,t)=>{var r=t(1702),o=t(4488),i=t(1340),a=/"/g,l=r("".replace);e.exports=function(e,n,t,r){var c=i(o(e)),u="<"+n;return""!==t&&(u+=" "+t+'="'+l(i(r),a,""")+'"'),u+">"+c+""}},4994:(e,n,t)=>{"use strict";var r=t(3383).IteratorPrototype,o=t(30),i=t(9114),a=t(8003),l=t(7497),c=function(){return this};e.exports=function(e,n,t){var u=n+" Iterator";return e.prototype=o(r,{next:i(1,t)}),a(e,u,!1,!0),l[u]=c,e}},8880:(e,n,t)=>{var r=t(9781),o=t(3070),i=t(9114);e.exports=r?function(e,n,t){return o.f(e,n,i(1,t))}:function(e,n,t){return e[n]=t,e}},9114:e=>{e.exports=function(e,n){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:n}}},6135:(e,n,t)=>{"use strict";var r=t(4948),o=t(3070),i=t(9114);e.exports=function(e,n,t){var a=r(n);a in e?o.f(e,a,i(0,t)):e[a]=t}},8709:(e,n,t)=>{"use strict";var r=t(7854),o=t(9670),i=t(2140),a=r.TypeError;e.exports=function(e){if(o(this),"string"===e||"default"===e)e="string";else if("number"!==e)throw a("Incorrect hint");return i(this,e)}},654:(e,n,t)=>{"use strict";var r=t(2109),o=t(6916),i=t(1913),a=t(6530),l=t(614),c=t(4994),u=t(9518),s=t(7674),f=t(8003),p=t(8880),d=t(1320),h=t(5112),g=t(7497),v=t(3383),A=a.PROPER,b=a.CONFIGURABLE,m=v.IteratorPrototype,y=v.BUGGY_SAFARI_ITERATORS,E=h("iterator"),_="keys",C="values",w="entries",x=function(){return this};e.exports=function(e,n,t,a,h,v,k){c(t,n,a);var S,O,B,I=function(e){if(e===h&&R)return R;if(!y&&e in j)return j[e];switch(e){case _:case C:case w:return function(){return new t(this,e)}}return function(){return new t(this)}},T=n+" Iterator",P=!1,j=e.prototype,z=j[E]||j["@@iterator"]||h&&j[h],R=!y&&z||I(h),M="Array"==n&&j.entries||z;if(M&&(S=u(M.call(new e)))!==Object.prototype&&S.next&&(i||u(S)===m||(s?s(S,m):l(S[E])||d(S,E,x)),f(S,T,!0,!0),i&&(g[T]=x)),A&&h==C&&z&&z.name!==C&&(!i&&b?p(j,"name",C):(P=!0,R=function(){return o(z,this)})),h)if(O={values:I(C),keys:v?R:I(_),entries:I(w)},k)for(B in O)(y||P||!(B in j))&&d(j,B,O[B]);else r({target:n,proto:!0,forced:y||P},O);return i&&!k||j[E]===R||d(j,E,R,{name:h}),g[n]=R,O}},7235:(e,n,t)=>{var r=t(857),o=t(2597),i=t(6061),a=t(3070).f;e.exports=function(e){var n=r.Symbol||(r.Symbol={});o(n,e)||a(n,e,{value:i.f(e)})}},9781:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},317:(e,n,t)=>{var r=t(7854),o=t(111),i=r.document,a=o(i)&&o(i.createElement);e.exports=function(e){return a?i.createElement(e):{}}},8324:e=>{e.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},8509:(e,n,t)=>{var r=t(317)("span").classList,o=r&&r.constructor&&r.constructor.prototype;e.exports=o===Object.prototype?void 0:o},8886:(e,n,t)=>{var r=t(8113).match(/firefox\/(\d+)/i);e.exports=!!r&&+r[1]},256:(e,n,t)=>{var r=t(8113);e.exports=/MSIE|Trident/.test(r)},5268:(e,n,t)=>{var r=t(4326),o=t(7854);e.exports="process"==r(o.process)},8113:(e,n,t)=>{var r=t(5005);e.exports=r("navigator","userAgent")||""},7392:(e,n,t)=>{var r,o,i=t(7854),a=t(8113),l=i.process,c=i.Deno,u=l&&l.versions||c&&c.version,s=u&&u.v8;s&&(o=(r=s.split("."))[0]>0&&r[0]<4?1:+(r[0]+r[1])),!o&&a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=+r[1]),e.exports=o},8008:(e,n,t)=>{var r=t(8113).match(/AppleWebKit\/(\d+)\./);e.exports=!!r&&+r[1]},748:e=>{e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},2109:(e,n,t)=>{var r=t(7854),o=t(1236).f,i=t(8880),a=t(1320),l=t(3505),c=t(9920),u=t(4705);e.exports=function(e,n){var t,s,f,p,d,h=e.target,g=e.global,v=e.stat;if(t=g?r:v?r[h]||l(h,{}):(r[h]||{}).prototype)for(s in n){if(p=n[s],f=e.noTargetGet?(d=o(t,s))&&d.value:t[s],!u(g?s:h+(v?".":"#")+s,e.forced)&&void 0!==f){if(typeof p==typeof f)continue;c(p,f)}(e.sham||f&&f.sham)&&i(p,"sham",!0),a(t,s,p,e)}}},7293:e=>{e.exports=function(e){try{return!!e()}catch(e){return!0}}},7007:(e,n,t)=>{"use strict";t(4916);var r=t(1702),o=t(1320),i=t(2261),a=t(7293),l=t(5112),c=t(8880),u=l("species"),s=RegExp.prototype;e.exports=function(e,n,t,f){var p=l(e),d=!a((function(){var n={};return n[p]=function(){return 7},7!=""[e](n)})),h=d&&!a((function(){var n=!1,t=/a/;return"split"===e&&((t={}).constructor={},t.constructor[u]=function(){return t},t.flags="",t[p]=/./[p]),t.exec=function(){return n=!0,null},t[p](""),!n}));if(!d||!h||t){var g=r(/./[p]),v=n(p,""[e],(function(e,n,t,o,a){var l=r(e),c=n.exec;return c===i||c===s.exec?d&&!a?{done:!0,value:g(n,t,o)}:{done:!0,value:l(t,n,o)}:{done:!1}}));o(String.prototype,e,v[0]),o(s,p,v[1])}f&&c(s[p],"sham",!0)}},6677:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){return Object.isExtensible(Object.preventExtensions({}))}))},2104:e=>{var n=Function.prototype,t=n.apply,r=n.bind,o=n.call;e.exports="object"==typeof Reflect&&Reflect.apply||(r?o.bind(t):function(){return o.apply(t,arguments)})},9974:(e,n,t)=>{var r=t(1702),o=t(9662),i=r(r.bind);e.exports=function(e,n){return o(e),void 0===n?e:i?i(e,n):function(){return e.apply(n,arguments)}}},7065:(e,n,t)=>{"use strict";var r=t(7854),o=t(1702),i=t(9662),a=t(111),l=t(2597),c=t(206),u=r.Function,s=o([].concat),f=o([].join),p={},d=function(e,n,t){if(!l(p,n)){for(var r=[],o=0;o{var n=Function.prototype.call;e.exports=n.bind?n.bind(n):function(){return n.apply(n,arguments)}},6530:(e,n,t)=>{var r=t(9781),o=t(2597),i=Function.prototype,a=r&&Object.getOwnPropertyDescriptor,l=o(i,"name"),c=l&&"something"===function(){}.name,u=l&&(!r||r&&a(i,"name").configurable);e.exports={EXISTS:l,PROPER:c,CONFIGURABLE:u}},1702:e=>{var n=Function.prototype,t=n.bind,r=n.call,o=t&&t.bind(r);e.exports=t?function(e){return e&&o(r,e)}:function(e){return e&&function(){return r.apply(e,arguments)}}},5005:(e,n,t)=>{var r=t(7854),o=t(614),i=function(e){return o(e)?e:void 0};e.exports=function(e,n){return arguments.length<2?i(r[e]):r[e]&&r[e][n]}},1246:(e,n,t)=>{var r=t(648),o=t(8173),i=t(7497),a=t(5112)("iterator");e.exports=function(e){if(null!=e)return o(e,a)||o(e,"@@iterator")||i[r(e)]}},8554:(e,n,t)=>{var r=t(7854),o=t(6916),i=t(9662),a=t(9670),l=t(6330),c=t(1246),u=r.TypeError;e.exports=function(e,n){var t=arguments.length<2?c(e):n;if(i(t))return a(o(t,e));throw u(l(e)+" is not iterable")}},8173:(e,n,t)=>{var r=t(9662);e.exports=function(e,n){var t=e[n];return null==t?void 0:r(t)}},647:(e,n,t)=>{var r=t(1702),o=t(7908),i=Math.floor,a=r("".charAt),l=r("".replace),c=r("".slice),u=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,s=/\$([$&'`]|\d{1,2})/g;e.exports=function(e,n,t,r,f,p){var d=t+e.length,h=r.length,g=s;return void 0!==f&&(f=o(f),g=u),l(p,g,(function(o,l){var u;switch(a(l,0)){case"$":return"$";case"&":return e;case"`":return c(n,0,t);case"'":return c(n,d);case"<":u=f[c(l,1,-1)];break;default:var s=+l;if(0===s)return o;if(s>h){var p=i(s/10);return 0===p?o:p<=h?void 0===r[p-1]?a(l,1):r[p-1]+a(l,1):o}u=r[s-1]}return void 0===u?"":u}))}},7854:(e,n,t)=>{var r=function(e){return e&&e.Math==Math&&e};e.exports=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof t.g&&t.g)||function(){return this}()||Function("return this")()},2597:(e,n,t)=>{var r=t(1702),o=t(7908),i=r({}.hasOwnProperty);e.exports=Object.hasOwn||function(e,n){return i(o(e),n)}},3501:e=>{e.exports={}},490:(e,n,t)=>{var r=t(5005);e.exports=r("document","documentElement")},4664:(e,n,t)=>{var r=t(9781),o=t(7293),i=t(317);e.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},8361:(e,n,t)=>{var r=t(7854),o=t(1702),i=t(7293),a=t(4326),l=r.Object,c=o("".split);e.exports=i((function(){return!l("z").propertyIsEnumerable(0)}))?function(e){return"String"==a(e)?c(e,""):l(e)}:l},9587:(e,n,t)=>{var r=t(614),o=t(111),i=t(7674);e.exports=function(e,n,t){var a,l;return i&&r(a=n.constructor)&&a!==t&&o(l=a.prototype)&&l!==t.prototype&&i(e,l),e}},2788:(e,n,t)=>{var r=t(1702),o=t(614),i=t(5465),a=r(Function.toString);o(i.inspectSource)||(i.inspectSource=function(e){return a(e)}),e.exports=i.inspectSource},2423:(e,n,t)=>{var r=t(2109),o=t(1702),i=t(3501),a=t(111),l=t(2597),c=t(3070).f,u=t(8006),s=t(1156),f=t(2050),p=t(9711),d=t(6677),h=!1,g=p("meta"),v=0,A=function(e){c(e,g,{value:{objectID:"O"+v++,weakData:{}}})},b=e.exports={enable:function(){b.enable=function(){},h=!0;var e=u.f,n=o([].splice),t={};t[g]=1,e(t).length&&(u.f=function(t){for(var r=e(t),o=0,i=r.length;o{var r,o,i,a=t(8536),l=t(7854),c=t(1702),u=t(111),s=t(8880),f=t(2597),p=t(5465),d=t(6200),h=t(3501),g="Object already initialized",v=l.TypeError,A=l.WeakMap;if(a||p.state){var b=p.state||(p.state=new A),m=c(b.get),y=c(b.has),E=c(b.set);r=function(e,n){if(y(b,e))throw new v(g);return n.facade=e,E(b,e,n),n},o=function(e){return m(b,e)||{}},i=function(e){return y(b,e)}}else{var _=d("state");h[_]=!0,r=function(e,n){if(f(e,_))throw new v(g);return n.facade=e,s(e,_,n),n},o=function(e){return f(e,_)?e[_]:{}},i=function(e){return f(e,_)}}e.exports={set:r,get:o,has:i,enforce:function(e){return i(e)?o(e):r(e,{})},getterFor:function(e){return function(n){var t;if(!u(n)||(t=o(n)).type!==e)throw v("Incompatible receiver, "+e+" required");return t}}}},7659:(e,n,t)=>{var r=t(5112),o=t(7497),i=r("iterator"),a=Array.prototype;e.exports=function(e){return void 0!==e&&(o.Array===e||a[i]===e)}},3157:(e,n,t)=>{var r=t(4326);e.exports=Array.isArray||function(e){return"Array"==r(e)}},614:e=>{e.exports=function(e){return"function"==typeof e}},4411:(e,n,t)=>{var r=t(1702),o=t(7293),i=t(614),a=t(648),l=t(5005),c=t(2788),u=function(){},s=[],f=l("Reflect","construct"),p=/^\s*(?:class|function)\b/,d=r(p.exec),h=!p.exec(u),g=function(e){if(!i(e))return!1;try{return f(u,s,e),!0}catch(e){return!1}};e.exports=!f||o((function(){var e;return g(g.call)||!g(Object)||!g((function(){e=!0}))||e}))?function(e){if(!i(e))return!1;switch(a(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}return h||!!d(p,c(e))}:g},4705:(e,n,t)=>{var r=t(7293),o=t(614),i=/#|\.prototype\./,a=function(e,n){var t=c[l(e)];return t==s||t!=u&&(o(n)?r(n):!!n)},l=a.normalize=function(e){return String(e).replace(i,".").toLowerCase()},c=a.data={},u=a.NATIVE="N",s=a.POLYFILL="P";e.exports=a},111:(e,n,t)=>{var r=t(614);e.exports=function(e){return"object"==typeof e?null!==e:r(e)}},1913:e=>{e.exports=!1},7850:(e,n,t)=>{var r=t(111),o=t(4326),i=t(5112)("match");e.exports=function(e){var n;return r(e)&&(void 0!==(n=e[i])?!!n:"RegExp"==o(e))}},2190:(e,n,t)=>{var r=t(7854),o=t(5005),i=t(614),a=t(7976),l=t(3307),c=r.Object;e.exports=l?function(e){return"symbol"==typeof e}:function(e){var n=o("Symbol");return i(n)&&a(n.prototype,c(e))}},408:(e,n,t)=>{var r=t(7854),o=t(9974),i=t(6916),a=t(9670),l=t(6330),c=t(7659),u=t(6244),s=t(7976),f=t(8554),p=t(1246),d=t(9212),h=r.TypeError,g=function(e,n){this.stopped=e,this.result=n},v=g.prototype;e.exports=function(e,n,t){var r,A,b,m,y,E,_,C=t&&t.that,w=!(!t||!t.AS_ENTRIES),x=!(!t||!t.IS_ITERATOR),k=!(!t||!t.INTERRUPTED),S=o(n,C),O=function(e){return r&&d(r,"normal",e),new g(!0,e)},B=function(e){return w?(a(e),k?S(e[0],e[1],O):S(e[0],e[1])):k?S(e,O):S(e)};if(x)r=e;else{if(!(A=p(e)))throw h(l(e)+" is not iterable");if(c(A)){for(b=0,m=u(e);m>b;b++)if((y=B(e[b]))&&s(v,y))return y;return new g(!1)}r=f(e,A)}for(E=r.next;!(_=i(E,r)).done;){try{y=B(_.value)}catch(e){d(r,"throw",e)}if("object"==typeof y&&y&&s(v,y))return y}return new g(!1)}},9212:(e,n,t)=>{var r=t(6916),o=t(9670),i=t(8173);e.exports=function(e,n,t){var a,l;o(e);try{if(!(a=i(e,"return"))){if("throw"===n)throw t;return t}a=r(a,e)}catch(e){l=!0,a=e}if("throw"===n)throw t;if(l)throw a;return o(a),t}},3383:(e,n,t)=>{"use strict";var r,o,i,a=t(7293),l=t(614),c=t(30),u=t(9518),s=t(1320),f=t(5112),p=t(1913),d=f("iterator"),h=!1;[].keys&&("next"in(i=[].keys())?(o=u(u(i)))!==Object.prototype&&(r=o):h=!0),null==r||a((function(){var e={};return r[d].call(e)!==e}))?r={}:p&&(r=c(r)),l(r[d])||s(r,d,(function(){return this})),e.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:h}},7497:e=>{e.exports={}},6244:(e,n,t)=>{var r=t(7466);e.exports=function(e){return r(e.length)}},133:(e,n,t)=>{var r=t(7392),o=t(7293);e.exports=!!Object.getOwnPropertySymbols&&!o((function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},8536:(e,n,t)=>{var r=t(7854),o=t(614),i=t(2788),a=r.WeakMap;e.exports=o(a)&&/native code/.test(i(a))},3929:(e,n,t)=>{var r=t(7854),o=t(7850),i=r.TypeError;e.exports=function(e){if(o(e))throw i("The method doesn't accept regular expressions");return e}},1574:(e,n,t)=>{"use strict";var r=t(9781),o=t(1702),i=t(6916),a=t(7293),l=t(1956),c=t(5181),u=t(5296),s=t(7908),f=t(8361),p=Object.assign,d=Object.defineProperty,h=o([].concat);e.exports=!p||a((function(){if(r&&1!==p({b:1},p(d({},"a",{enumerable:!0,get:function(){d(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},n={},t=Symbol(),o="abcdefghijklmnopqrst";return e[t]=7,o.split("").forEach((function(e){n[e]=e})),7!=p({},e)[t]||l(p({},n)).join("")!=o}))?function(e,n){for(var t=s(e),o=arguments.length,a=1,p=c.f,d=u.f;o>a;)for(var g,v=f(arguments[a++]),A=p?h(l(v),p(v)):l(v),b=A.length,m=0;b>m;)g=A[m++],r&&!i(d,v,g)||(t[g]=v[g]);return t}:p},30:(e,n,t)=>{var r,o=t(9670),i=t(6048),a=t(748),l=t(3501),c=t(490),u=t(317),s=t(6200),f=s("IE_PROTO"),p=function(){},d=function(e){return" + About This Document | Pangu Text + + + + + +

About This Document

This document is powered by VuePressopen in new window.

License

Apache-2.0open in new window

Apache License Version 2.0
+
+Copyright (C) 2019 HighCapable
+
+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
+
+    https://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.
+

Copyright © 2019 HighCapable

+ + + diff --git a/en/about/changelog.html b/en/about/changelog.html new file mode 100644 index 0000000..69b3ab6 --- /dev/null +++ b/en/about/changelog.html @@ -0,0 +1,34 @@ + + + + + + + + + Changelog | Pangu Text + + + + + +

Changelog

The version update history of PanguText is recorded here.

Pay Attention

We will only maintain the latest API version. If you are using an outdated API version, you voluntarily renounce any possibility of maintenance.

Notice

To avoid translation time consumption, the Changelog will use Google Translation from Chinese to English. Please refer to the original text for actual reference.

Time zone of version release date: UTC+8

pangutext-android

1.0.4 | 2025.08.16  latest

  • Exclude TextView's own TextWatcher set during injectPanguText execution to prevent repeated triggering of doOnTextChanged

1.0.3 | 2025.08.03  stale

1.0.2 | 2025.03.05  stale

  • Added exception handling in PanguTextFactory2 during injection to avoid interrupting the entire process during View initialization
  • Removed duplicate injection warning logs, now duplicate injections of PanguText will have no effect
  • Added PanguTextPatcher, which allows injecting PanguText using a new method

1.0.1 | 2025.02.11  stale

  • Fixed an issue where injecting PanguText could cause incorrect width measurement in TextView
  • Added isAutoRemeasureText to PanguTextConfig to control whether to automatically remeasure text width (applies to single-line text in TextView)

1.0.0 | 2025.02.10  stale

  • The first version is submitted to Maven

pangutext-compose

Not yet released.

+ + + diff --git a/en/about/contacts.html b/en/about/contacts.html new file mode 100644 index 0000000..3d0d47d --- /dev/null +++ b/en/about/contacts.html @@ -0,0 +1,34 @@ + + + + + + + + + Contact Us | Pangu Text + + + + + + + + + diff --git a/en/about/future.html b/en/about/future.html new file mode 100644 index 0000000..bb41215 --- /dev/null +++ b/en/about/future.html @@ -0,0 +1,34 @@ + + + + + + + + + Looking Toward the Future | Pangu Text + + + + + +

Looking Toward the Future

The future is bright and uncertain, let us look forward to the future development space of PanguText.

Future Plans

Features that PanguText may add later are included here.

Limitations of SpannableString

PanguText's main functionality on the Android platform currently comes from SpannableString, which has not yet fully resolved the issues of handling complex text styles and performance overhead.

Jetpack Compose Plan

PanguText will support Jetpack Compose in the future and plans to use AnnotatedString as the main text processing method to minimize intrusion into the underlying layer.

+ + + diff --git a/en/config/r8-proguard.html b/en/config/r8-proguard.html new file mode 100644 index 0000000..b92cd8b --- /dev/null +++ b/en/config/r8-proguard.html @@ -0,0 +1,34 @@ + + + + + + + + + R8 & Proguard Obfuscate | Pangu Text + + + + + +

R8 & Proguard Obfuscate

In most scenarios, the app packages can be compressed through obfuscation, here is an introduction to how to configure obfuscation rules.

PanguText does not require any additional obfuscation rules.

+ + + diff --git a/en/guide/home.html b/en/guide/home.html new file mode 100644 index 0000000..421d494 --- /dev/null +++ b/en/guide/home.html @@ -0,0 +1,34 @@ + + + + + + + + + Introduction | Pangu Text + + + + + +

Introduction

PanguText is a solution for CJK (Chinese, Japanese, Korean) and English word, half-width number spacing.

Background

This project was created because, until now, there hasn’t been a public solution to perfectly address the typography issues between Chinese, Japanese, Korean, and English. Typically, when mixing CJK (i.e. Chinese, Japanese, Korean) with English, aesthetic issues can arise—a historical legacy stemming from the differences in writing conventions between full-width and half-width characters. Although the W3C has now established CJK typography guidelines, only a few individuals or companies willing to adhere to these standards have adopted this approach.

Currently, the known vendor solutions are as follows:

  • Apple platforms (iOS, iPadOS, macOS, tvOS, watchOS) text typography solutions
  • Xiaomi’s (HyperOS) text typography optimization
  • OrginOS’s font-based text typography optimization

However, these solutions are closed-source and cannot be implemented on other platforms. We aim to provide an open-source solution adaptable to various scenarios, featuring low intrusiveness and easy integration, allowing more developers to effectively address text typography issues.

The primary inspiration for this project comes from pangu.jsopen in new window, which offers a set of regular expressions for CJK typography. We have optimized these solutions to format text across platforms without inserting extra space characters. We extend this approach further to explore additional possibilities.

Heartfelt thanks to the original developer of pangu.js for providing the foundational solution.

Effects

As you can see, the typography scheme of PanguText does not work by simply inserting spaces between CJK characters and English words. Instead, it leverages each platform's native handling to automatically add whitespace between these characters, ensuring minimal intrusion.

Before Applying (Top) vs. After Applying (Bottom)

Dynamic Application

PanguText supports dynamic application, which means it can add whitespace gaps to each character on-the-fly as you input text.

Developer's Perspective

I personally do not recommend manually inserting spaces between CJK and English characters for typographic refinement if your software or system natively supports enhanced typographic formatting.

The spacing can vary across fonts, which may lead to formatting issues and the insertion of undesired space characters.

In certain contexts, such as URLs, filenames, or hashtags containing “#”, these spaces are not acceptable.

However, in special scenarios—for example, within code comments or documentation—it can be beneficial to add spaces, as these areas typically do not employ automated formatting tools.

Another point to consider is the use of different punctuation marks in different languages. Avoid mixing full-width and half-width punctuation marks. If you must use half-width punctuation marks to annotate full-width text, ensure that the half-width marks are followed by a space to complete the character space (the same applies to English).

Language Requirement

It is recommended to use Kotlin as the preferred development language.

This project is entirely written in Kotlin and is compatible with Java in some parts, but it may not be fully compatible.

All demo & sample codes in the document will be described using Kotlin, if you don’t know how to use Kotlin at all, you may not get the best experience.

Contribution

The maintenance of this project is inseparable from the support and contributions of all developers.

This project is currently in its early stages, and there may still be some problems or lack of functions you need.

If possible, feel free to submit a PR to contribute features you think are needed to this project or go to GitHub Issuesopen in new window to make suggestions to us.

+ + + diff --git a/en/guide/quick-start.html b/en/guide/quick-start.html new file mode 100644 index 0000000..1190752 --- /dev/null +++ b/en/guide/quick-start.html @@ -0,0 +1,59 @@ + + + + + + + + + Quick Start | Pangu Text + + + + + +

Quick Start

Integrate PanguText into your project.

Project Requirements

The project needs to be created using Android Studio or IntelliJ IDEA and be of type Android or Kotlin Multiplatform project with integrated Kotlin environment dependencies.

  • Android Studio (It is recommended to get the latest version from hereopen in new window)

  • IntelliJ IDEA (It is recommended to get the latest version from hereopen in new window)

  • Kotlin 1.9.0+, Gradle 8+, Java 17+, Android Gradle Plugin 8+

Configure Repositories

The dependencies of PanguText are published in Maven Central and our public repository. You can use the following method to configure repositories.

We recommend using Kotlin DSL as the Gradle build script language and SweetDependencyopen in new window to manage dependencies.

Configure repositories in your project's SweetDependency configuration file.

repositories:
+  google:
+  maven-central:
+  # (Optional) You can add this URL to use our public repository
+  # When Sonatype-OSS fails and cannot publish dependencies, this repository is added as a backup
+  # For details, please visit: https://github.com/HighCapable/maven-repository
+  highcapable-maven-releases:
+    url: https://raw.githubusercontent.com/HighCapable/maven-repository/main/repository/releases
+

Traditional Method

Configure repositories in your project's build.gradle.kts.

repositories {
+    google()
+    mavenCentral()
+    // (Optional) You can add this URL to use our public repository
+    // When Sonatype-OSS fails and cannot publish dependencies, this repository is added as a backup
+    // For details, please visit: https://github.com/HighCapable/maven-repository
+    maven("https://raw.githubusercontent.com/HighCapable/maven-repository/main/repository/releases")
+}
+

Configure Java Version

Modify the Java version of Kotlin in your project's build.gradle.kts to 17 or above.

Kotlin DSL

android {
+    compileOptions {
+        sourceCompatibility = JavaVersion.VERSION_17
+        targetCompatibility = JavaVersion.VERSION_17
+    }
+    kotlinOptions {
+        jvmTarget = "17"
+    }
+}
+

Functional Overview

The project is divided into multiple modules: Android platform and Jetpack Compose (multiplatform). You can choose the module you wish to include as a dependency in your project.

Click the corresponding module below to view detailed feature descriptions.

Demo

You can find some examples below. Check out the corresponding demo projects to get a better understanding of how these features work and quickly select the functionality you need.

+ + + diff --git a/en/index.html b/en/index.html new file mode 100644 index 0000000..61dd3e9 --- /dev/null +++ b/en/index.html @@ -0,0 +1,34 @@ + + + + + + + + + Home | Pangu Text + + + + + + + + + diff --git a/en/library/android.html b/en/library/android.html new file mode 100644 index 0000000..d5fc392 --- /dev/null +++ b/en/library/android.html @@ -0,0 +1,204 @@ + + + + + + + + + Android | Pangu Text + + + + + +

Android

Maven CentralMaven metadata URLAndroid Min SDK

This is the core dependency for the Android platform. When using PanguText on Android, you need to include this module.

Configure Dependency

You can add this module to your project using the following method.

Add dependency in your project's SweetDependency configuration file.

libraries:
+  com.highcapable.pangutext:
+    pangutext-android:
+      version: +
+

Configure dependency in your project's build.gradle.kts.

implementation(com.highcapable.pangutext.pangutext.android)
+

Version Catalog

Add dependency in your project's gradle/libs.versions.toml.

[versions]
+pangutext-android = "<version>"
+
+[libraries]
+pangutext-android = { module = "com.highcapable.pangutext:pangutext-android", version.ref = "pangutext-android" }
+

Configure dependency in your project's build.gradle.kts.

implementation(libs.pangutext.android)
+

Please change <version> to the version displayed at the top of this document.

Traditional Method

Configure dependency in your project's build.gradle.kts.

implementation("com.highcapable.pangutext:pangutext-android:<version>")
+

Please change <version> to the version displayed at the top of this document.

Function Introduction

You can view the KDoc click hereopen in new window.

Implementation Principle

PanguText provides two methods for text formatting on the Android platform: SpannableString (does not alter the original text length) and direct insertion of whitespace characters (alters the original text length).

The first method, SpannableString, adds a Span with spacing to the character before the one that needs spacing, changing the text style without altering the string content. The rendering is done by the TextView layer (or manually using TextPaint based on Spanned for layout styling), achieving non-intrusive text styling.

This method also supports processing already styled text (Spanned), such as text created via Html.fromHtml.

However, it is currently experimental and may still have unexpected style errors. You can refer to the Personalized Configuration section below to disable it.

The dynamic application (injection) feature mainly targets the input state of EditText. It sets a custom TextWatcher for EditText to monitor input changes and formats the text from afterTextChanged.

The second method directly inserts whitespace characters after the characters that need spacing. This method alters the original text length and content but does not rely on the TextView layer for rendering. It uses TextPaint to draw the text directly, suitable for all scenarios, but does not support dynamic application (injection).

Unresolved Issues

PanguText may conflict with Material components like TextInputEditText, MaterialAutoCompleteTextView, and TextInputLayout when using setHint, as TextView does not account for Span during measurement. This issue is particularly noticeable in single-line text, and there is no solution yet. Use these components cautiously.

Due to the above issue, calculating the width of a TextView with PanguText style using the View.measure method may also result in errors.

PanguText currently cannot handle continuous characters like underlines or strikethroughs in Spanned text, as the lines will break after adding spacing. It may also cause style errors or fail to apply styles correctly to some special characters. For stability, avoid enabling PanguText for very complex rich text or refer to the Personalized Configuration section to set excludePatterns.

Integrate into Existing Projects

Integrating PanguText into your current project is very easy. You don't need to change much code. Choose your preferred method below to complete the integration.

Inject to LayoutInflater

PanguText supports direct injection of LayoutInflater.Factory2 or creating a LayoutInflater.Factory2 instance for the current Activity to take over the entire view layout inflation. This is the recommended integration method, as it allows for non-intrusive and quick integration without modifying any existing layouts.

The following example

class MainActivity : AppCompatActivity() {
+
+    val binding by lazy { ActivityMainBinding.inflate(layoutInflater) }
+
+    override fun onCreate(savedInstanceState: Bundle?) {
+        super.onCreate(savedInstanceState)
+        // Inject here.
+        PanguTextFactory2.inject(this)
+        setContentView(binding.root)
+    }
+}
+

Tips

Since LayoutInflater.Factory2 is taken over, recycled layouts like ListView and RecyclerView can also be correctly handled.

After injecting the LayoutInflater instance in the Activity, the following instances attached to the current Context will automatically take effect:

  • Fragment
  • Dialog
  • PopupWindow
  • Toast (foreground only in higher system versions)

Layouts based on RemoteView will not take effect because they are remote objects and do not use the current Context's LayoutInflater for layout inflation.

If you are using ui-component → AppBindingActivityopen in new window in BetterAndroid, you need to slightly modify the current code.

The following example

class MainActivity : AppBindingActivity<ActivityMainBinding>() {
+
+    override fun onPrepareContentView(savedInstanceState: Bundle?): LayoutInflater {
+        val inflater = super.onPrepareContentView(savedInstanceState)
+        // Inject here.
+        PanguTextFactory2.inject(inflater)
+        return inflater
+    }
+  
+    override fun onCreate(savedInstanceState: Bundle?) {
+        super.onCreate(savedInstanceState)
+        // Your code here.
+    }
+}
+

If your application does not use AppCompatActivity or ViewBinding, don't worry, you can still use the original method.

The following example

class MainActivity : Activity() {
+
+    override fun onCreate(savedInstanceState: Bundle?) {
+        super.onCreate(savedInstanceState)
+        // Inject here.
+        PanguTextFactory2.inject(this)
+        setContentView(R.layout.activity_main)
+    }
+}
+

Tips

PanguTextFactory2 can be used not only with Activity but also injected into any existing LayoutInflater instance. However, please inject it before the LayoutInflater instance is used to inflate the layout, otherwise it will not take effect.

Using the Patching Tool

You can use PanguTextPatcher to patch existing View or ViewGroup instances.

Patch the entire root layout, and PanguTextPatcher will automatically patch all TextView instances or their subclasses under the root layout.

The following example

// Assume you have a root layout.
+val root: ViewGroup
+// Patch the root layout.
+PanguTextPatcher.patch(root)
+

Patch a single View, which is of type TextView or a subclass of TextView.

The following example

// Assume this is your TextView.
+val textView: TextView
+// Patch a single View.
+PanguTextPatcher.patch(textView)
+

Notice

When using PanguTextPatcher in recycled layouts such as RecyclerView, ListView, or ViewPager, you need to patch the itemView in onCreateViewHolder or onBindViewHolder, otherwise it will not take effect.

Manual Injection or Text Formatting

PanguText also supports manual injection, allowing you to inject it into the desired TextView or EditText.

The following example

// Assume this is your TextView.
+val textView: TextView
+// Assume this is your EditText.
+val editText: EditText
+// Inject into existing text.
+textView.injectPanguText()
+editText.injectPanguText()
+// Optionally choose whether to inject Hint (default is true).
+textView.injectPanguText(injectHint = false)
+editText.injectPanguText(injectHint = false)
+// Dynamic injection, re-calling setText will automatically take effect.
+textView.injectRealTimePanguText()
+// Dynamic injection mainly targets the input state of EditText.
+editText.injectRealTimePanguText()
+// Optionally choose whether to inject Hint (default is true).
+textView.injectRealTimePanguText(injectHint = false)
+editText.injectRealTimePanguText(injectHint = false)
+

PanguText also extends the setText method of TextView, allowing you to directly set text with PanguText style.

The following example

// Assume this is your TextView.
+val textView: TextView
+// Set text with PanguText style.
+textView.setTextWithPangu("Xiaoming今年16岁")
+// Set Hint with PanguText style.
+textView.setHintWithPangu("输入Xiaoming的年龄")
+

You can also use the PanguText.format method to directly format text.

The following example

// Assume this is your TextView.
+val textView: TextView
+// Format text using SpannableString method.
+// Requires passing the current TextView's Resources and text size.
+// If the input text is already Spannable,
+// it will return the original object without creating a new SpannableString.
+val text = PanguText.format(textView.resources, textView.textSize, "Xiaoming今年16岁")
+// Set text.
+textView.text = text
+// Directly format text using whitespace characters for insertion.
+// This method adds extra whitespace characters " " (HSP) to the text.
+// The result below will output the string "Xiaoming 今年 16 岁".
+// You can also customize the whitespace character at the end of the method.
+val text = PanguText.format("Xiaoming今年16岁")
+// Set text.
+textView.text = text
+

Tips

The injectPanguText, injectRealTimePanguText, setTextWithPangu, setHintWithPangu, and PanguText.format methods support the config parameter. You can refer to the Personalized Configuration section below.

Custom View

PanguText can also be used with custom View. You can extend your View to AppCompatTextView and override the setText method.

The following example

class MyTextView(context: Context, attrs: AttributeSet? = null) : AppCompatTextView(context, attrs) {
+
+    override fun setText(text: CharSequence?, type: BufferType?) {
+        // Manually inject here.
+        val panguText = text?.let { PanguText.format(resources, textSize, it) }
+        super.setText(panguText, type)
+    }
+}
+

Notice

After injecting PanguText into TextView, if you use android:singleLine="true" in XML layout or TextView.setSingleLine(true) in code along with android:ellipsize="...", this method of setting single-line text may cause unresolvable OBJ characters (truncated by ellipsis) to appear when the text exceeds the screen width, because TextView does not account for Span during measurement, leading to incorrect text width calculation.

The solution is to use android:maxLines="1" in XML layout or TextView.setMaxLines(1) in code instead.

The following example

<TextView
+    android:id="@+id/text"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:text="这是一段很长很长长长长长长长长长长长长还有English混入的的文本"
+    android:maxLines="1"
+    android:ellipsize="end" />
+

Personalized Configuration

PanguText supports personalized configuration. You can use the global static instance PanguText.globalConfig to get the global configuration or configure it individually.

The following example

// Get global configuration.
+val config = PanguText.globalConfig
+// Enable or disable the feature.
+config.isEnabled = true
+// Process Spanned text.
+// Processing Spanned text is enabled by default, but this feature is experimental.
+// If issues occur, you can disable it. When disabled, Spanned text will return the original text.
+config.isProcessedSpanned = true
+// Whether to automatically re-measure the text width after processing.
+// Note: After [PanguText] injects text and changes the text,
+// the width of [TextView] will not be calculated automatically.
+// At this time, this feature will call [TextView.setText] to re-execute the measurements,
+// which can fix issues in some dynamic layouts (such as `RecyclerView`) where text width changes each time,
+// but may cause performance issues. You can choose to disable this feature.
+// To prevent unnecessary performance overhead,
+// this feature only takes effect on [TextView] with `maxLines` set to 1 or `singleLine`.
+config.isAutoRemeasureText = true
+// Set patterns to exclude during formatting using regular expressions.
+// For example, exclude all URLs.
+config.excludePatterns.add("https?://\\S+".toRegex())
+// For example, exclude emoji placeholders like "[doge]".
+// If you use [ImageSpan] to display emoji images, you can choose to exclude these placeholders.
+config.excludePatterns.add("\\[.*?]".toRegex())
+// Set the spacing ratio for CJK characters.
+// This determines the final layout effect.
+// It is recommended to keep the default ratio and adjust it according to personal preference.
+config.cjkSpacingRatio = 7f
+

Notice

If you integrated using the Inject to LayoutInflater method, configure PanguText.globalConfig before executing PanguTextFactory2.inject(...), otherwise the configuration will not take effect.

You can also pass the config parameter for personalized configuration when manually injecting or formatting text.

The following example

// Assume this is your TextView.
+val textView: TextView
+// Create a new configuration.
+// You can set [copyFromGlobal] to false to not copy from the global configuration.
+val config = PanguTextConfig(copyFromGlobal = false) {
+    excludePatterns.add("https?://\\S+".toRegex())
+    excludePatterns.add("\\[.*?]".toRegex())
+    cjkSpacingRatio = 7f
+}
+// You can also copy and create a new configuration from any configuration.
+val config2 = config.copy {
+    excludePatterns.clear()
+    excludePatterns.add("https?://\\S+".toRegex())
+    excludePatterns.add("\\[.*?]".toRegex())
+    cjkSpacingRatio = 7f
+}
+// Manually inject and configure.
+textView.injectPanguText(config = config2)
+

If you integrated using the Inject to LayoutInflater method, you can use the following attributes in the XML layout declaration of TextView, EditText, or their subclasses for personalized configuration.

  • panguText_enabled corresponds to PanguTextConfig.isEnabled
  • panguText_processedSpanned corresponds to PanguTextConfig.isProcessedSpanned
  • panguText_autoRemeasureText corresponds to PanguTextConfig.isAutoRemeasureText
  • panguText_excludePatterns corresponds to PanguTextConfig.excludePatterns, string array, multiple patterns separated by |@|
  • panguText_cjkSpacingRatio corresponds to PanguTextConfig.cjkSpacingRatio

The following example

<TextView
+    android:id="@+id/text"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:text="Xiaoming今年16岁"
+    app:panguText_enabled="true"
+    app:panguText_processedSpanned="true"
+    app:panguText_autoRemeasureText="true"
+    app:panguText_excludePatterns="https?://\\S+;\\[.*?]|@|\\[.*?]"
+    app:panguText_cjkSpacingRatio="7.0" />
+

Notice

Due to issues with Android Studio, the above attributes may not have auto-completion hints. Please complete them manually.

Don't forget to add the declaration xmlns:app="http://schemas.android.com/apk/res-auto".

In custom View, you can extend your View to implement the PanguTextView interface to achieve the same functionality. This feature is also effective for the Using the Patching Tool method.

The following example

class MyTextView(context: Context, attrs: AttributeSet? = null) : AppCompatTextView(context, attrs),
+    PanguTextView {
+
+    override fun configurePanguText(config: PanguTextConfig) {
+        // Configure your [PanguTextConfig].
+    }
+}
+

Notice

The PanguTextView interface takes precedence over attributes used directly in the XML layout. If you use both methods for configuration, the PanguTextView interface configuration will override the XML layout configuration.

Individual configurations will override global configurations, and options not configured will follow the global configuration.

+ + + diff --git a/en/library/compose.html b/en/library/compose.html new file mode 100644 index 0000000..63a2daa --- /dev/null +++ b/en/library/compose.html @@ -0,0 +1,34 @@ + + + + + + + + + Jetpack Compose | Pangu Text + + + + + +

Jetpack Compose

Maven CentralMaven metadata URL

This is the core dependency for Jetpack Compose (multiplatform). When using PanguText in Jetpack Compose, you need to include this module.

This module is currently under development and will be gradually improved in the future.

+ + + diff --git a/images/demo_01.png b/images/demo_01.png new file mode 100644 index 0000000000000000000000000000000000000000..fd5c6399b9d1dca9b61a44b1f3e5e04f2194517a GIT binary patch literal 34646 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 L^>bP0l+XkKxc#+4 literal 0 HcmV?d00001 diff --git a/images/demo_02.gif b/images/demo_02.gif new file mode 100644 index 0000000000000000000000000000000000000000..4a933bde3ac05a51dbbf64d7d89ee34c91574fed GIT binary patch literal 152015 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≠uWJ0DrW(2YSkO^NH=93X}%Waknt(hzi z{a$Ed!j3Bt#xNPwXAG5@M3uQ~|CN6JWE$-!6He*)w)6|KQvNUc`B2UQe5Dwr{&KiT z+m-ki{ah=wcdg`!-W@sb{)>JVZfk=pFqCP1gX{kX{fuiWY3GGbz-F)PtaRE$mt4+tI zn6e$@1O42@0nDe@%IBOh9x~w*jwC09w6BY5C{_;*nevFoBPy;XS=tBsISrOMn}cd~@S3GED)+{!5lHZpQ5odD(&6Af3J z{7a*>I|Uwdw$cn@>g!P1wQR+`9QANgJ0&A!ljxl7RCY5(x!l*N+=-HEyA>;nHl}4= zEZYnf4dDR&EEw-&QZ;LKY+7-!mYwf?WF+N+?0wLM%Dv-Vz2AtyGm&2e3GdR&4YM3` z(1Lwleo%(WPxP_+5kNnG#RX3na2}eN9JJG<6RCGVRAZuaQe^}5b8R8-(Tlwb@@Kug z=QmNkjCL-?eMHwLCxbqaw?_j!EVl)9p3NL;R5KT$x%ISWt^BW{mygdk zKj;$AEoQ5H&T(QDei|o)Yl)axH3uJz6RMPk!!c?P#tBoGeEjyhho{4NyGZ9;@|?e~ z;odkgW2E7f-(`-bq6}f!>*NPdRE)4}4QCuCFxbc1EJUUIR3E+J`PI%?#$k>T4pa+um<(g5n_JnZpBWv}+jT!!|UR?!)$`aB>#!uiPj{o%ws! z`3Y3XJ4M+G^z_B;On+~jU^p2N!8JV@6sOKT8ItA%o(?%NhSQOM)i`lJ_wD@M?)khU zJmbZJE3Vnaq9^s}5kUqGOZlxsHI&5U(R z+pV1865H*9`V-rol4Lf!-HHH9yS*B_61)8d{S&)`7I_%iza5{70_uU$&uopTdma!6 zc$H9*)H@F5Ih@v>h?@L4uhLqBGva6M61ZpDBIj%em?yCj$;aYi0 zo!Rq>pJn78%k!DlUgBVI(;K(1Tbm7)_v%6I^}-x#n@*2~8m|So!B6u^N{h`_L@iK8 z0$wF8Wf*qce&;deW?9}dj{=5&NNTFAG}IXeHBaJJ2pObGaM?oNUNi~E%sr^_Z{lQ5VPo5 z_IP|JzH;wXqB0RJqUpqXZcvEGx*$*~$8PQ`=RzEy^%Mp{$z)T-6s{ z!aH#Hx8Hk}pxwR~32t1GdqKnU*0wV7IyKAi*5P8npt6-LcCkb|pFY00Ij^@p>f(vu zw}fG;R5yG#b5M-OqN7B!8Pv@Nee8Lm~ymGBRWJJ zQ5mQYwO}#OEgT6NmT)x<8X&m^5bY8N@WVTT^Nvbh+_D2+C5ni~aCioOt_29JKv#bI zMK7WpKcuoqQQkC+HuB(S#?Pda$>2BBsf!8?5yT06vl>x^MHYZ5c?;VOq%Yr)7PKOI zyr-^s2jEo_asM`6Tu=Z3lh}Y2ZZ|-eRsaF*yYL8{v4XMYAt4ie7*f%b>IBh|W=;R( z4O(D4|4t)F*O464Ri^=`>b1n3I!nk0loUq5t8{8&L73Aa2sJ^4?0}aeSl#giiiFHd z6+6hS)R&4nyR**2uq8uYh?b99g&L*QFP(~ZQ&@0oCy+$ArB5^zL+ z4q?CzSt%PZb&_U>JWZ7m2>k@FDKflx#%*a8O%cKgmV^u{k4;iO7Vs(=Pio2C1|^wt zA;0UtYJWkWj--zG7Ly(^a zs%94X3~;BFj&=xe4{*kr*V?E-ET-b=%%*U&KoL;d%xmfVo1gdJ&GQH zp?dS!?-SWYQ}x>ewV9JCJL_h`K~K?V-h;^cZ0OB2jJeL~O@W>{%gqzwZJr^o7qO?6 zi;{1r_0za)iPW>Zq_YACX=B#pCoQ`YWkI1yBuAttl+Cgy4+ zL$)+asdr1U`f9YmzcdF{$VFxPYOLa29M-2^<399d(#DO_0uLDzi`wLg4v;h#&Ziw+ zo@@GU9C7Y=8PlQ#v8mBM4wbarT{C{S={ZpOn+ArxPq=O~YqI4s1G#%v?XI(X{+v<^ z4EweTu5)L7<>G0?zqRLlfUrUVZTUxD|MMQ?N25vq;6W}^$ov}*vWU%-zj}~q-#-0| z2U#gevHq7Vn(Qv~%Y*#3!s-tXa!fJfFAs9!{7=Lu@)zP`v-$_(6Sc7VfcV6n|3rNH zjD8|M>*~}G9^|iU|EUKV7!TzmfM(7BVWk?Zo+dLb@OiBT$m?@UEJy3Z52bXYcJ~Tc z*u1{p;q+p&ecl1c>l%)S_&_P$x2PoRj3P?&_#;S&3n-=66q5v?^#EBk?~yz(1X>9} z^Q1|$j`pO8&H%vomNv4*cViX#1WIIMwZH85b>KUK zKkWBTPZWuM+VAuIlrX7yzV1y#4NE`R@4tVd+Qcu}7*_=5`8; zt)ty0316V^?f0L{n|LsBD^M!8XZ!Dg7!5;9f65j)aCu(Mz5RYz43(en()jdViqQGKjSSE2x{>^%|Cr1;(ik8ffT zC}}GuJaF$qlDq)>y|xAox50uBV87Q<{BWbA?oBs$-$i1My8Dx5(P#&X19Y1VFJs9A z5%A{z>aT{Oc?Ee3C};y$U(u*D)kQ1ZkSdrGp@ck2AJ7ziD3t|uBh1GP)7{B3R8oY# zo^4V)+w^s=CAi`sX(k%G8vsPWP#cJAn%8wBUX}ysB2!GUGKE8iya4+>cUoqOtt|my zzu#-^;Ri}{!%Ua7d;7ilBo-Q1%AL;poRYIGW914V>0xW>0Q%K&_8DeX`fqzZW(dlELu|(y&lLFwQp_at(`?`GdnpKZGyl4m!su<9;$H&8 zM;rAQ_L<6U^$Yv_`hL3V=U$5azQ3R{F27Kj952#`y%Znf>6jiSv-<8q{12qq{2!zk z-PYKBVB8j`bKgq_bG=9G|J%J36UF9w)PZqd_n~^dz?|v1H5{M84TkrmnDidF&IQal zcT@BMYOwNtFNN48L=id3W0QeKxW_4xE`82>70dH3=!)ZqStPe zBRwv%E+A20GTS2q%w6U_gvj8%B>D)07R`nAif5P2bIG5#svY2p+pI+pquBre`+4}p zad63l}+lT@*ea8m@|Acr=IpZCqEILCjx%1lWN6urV{y=xI$Po0xN=ws`k z=`u**lK{pm(T`ctQzOip{rT@4p;4IQ_rQp>nI&Ue%5LC>C&(;!COWTpbC{RBfb9)f z#>q)jSvy5;uiqoH))XCyzz{$r@sHR}iu8sq?Hpnyt@$OkxQ_{!(HGrF z%~0uI9qe)}^NTTDt~aScL z_sQogj(EajINmE`&Q0G1x1j(nOyZFf6s+S zg`8&-E(s&aiuDvWmUSyjk%z^ixW^%*E{%l=G*O>p0?Mj>8@DLD-{uC0kTtB>up`LZ zvLu;I{v?3Sikc5MT8K-|F~eAE zY?grF8w#Rl&qb$$j>1}>eW0d}>UcZn1+OnDPyW7BYN6*%*o@;eriB-kNlSBBtu&SS zlgxH%FJ!z@=>05#BGu0JH0f zGfXHMdRT@iXUKr_H;>2ovl-$~oBK(fLPf~`b}xm#v8pF%6{z{j=wrd7eLMW zxAs!VWUG#Mjg?iseM4cLt-dZf?u(L?XU#6obkwEfw2+=}{sLa`3{tt=N{4KbW=9Q; zF0h5REZ0}2UuQilzO$~hDBP4zkF|QN_Y+5M{Oyj4Fx^y9a9N4Y3kIWR)ydxn?W7R+ z5Q5MVze*%7=J-YzIK=Tv%@w`~3Q-QnN1Y>Bpk zOT+3IG(hMp$ z;Ks7pds4Rd%;M|l^4}fy8JlaI&OL0|`bTu|-{ju^T!&j)C;L0-qXoeafebD9>z@DF zZF0ervj4D6?j>XQKkyWPo#gxuxc}WYx$L00>2h;$p_D;hURm{8l@oM(+0Siq?#N0D z>aJG%Myz6{(;STtqUhw)#qN*D(ZizYti=2|_K&C4Dj&AVg|zriF3i#wyiX|dkS={d zWI1}G3mQ!(Gl=l*TY~Ei*Q_44$xY7HAw%^SrPzjv<{HU-e(-n5B;kU?{r#!}kNs>< zpF|Kn@D$D12~lJmCZlcxctahdS7%4}qA1K8kpwlk*>YF=YuF`Cj#cdYZE}*<3-8Ys z+ZWJ5XHf6m0JGMU&xb9-q(Vq$c%HTszW3YY6x&c(Mm;@#xU;csX!<<6-zKN8@yUmu zgCtbjpJ)%^{;l?U3+r;B^U5n{wt_5}_-F&D+N}&jAzvxTF9F-+RMI%PwkCYS-`#JM zW5qv!Wxb0uT#quOs-%hqw#iXT=+_jXM(xNMroCA3^;!!vD!N<;0C%LI7t_qeelO&4 zjI^W9E?5n`e6li9Qtr3O3EbT*1%y%+>G-iPT!5iLrlU7Huh`2RqxHkn&$hA?dYFZu zM#;B9gIIcIj*waNRmt@-l>M)^OGdaiJLvRmjie})4W7Y1vPU_RVDD&I?#UZc1h&aB zS&@0==swXwz`!C4bcBQl{%aT!%si-7c13gt4Ua^Zo<`YQIy%;3SqcckqS6mEl1)Q2 zBPZK(OCGcl)vpJz>&6d4z&t+yl*!-&rzR*Q8jP-IcUnEh?QG*avC!ZP`Mtk{O{N_(x>I}*jiVcFyZWY3+p7pus}HCv z>dR_(3giT=E8b;*YJ;5!%RDE?>59yl16G!n)Q4xR&@^;F!Q~n&DBfB+ykJFufzv(o zd0~5;E6&tvz8X)BxNLuEK&M|v;2gEer?y=Qri@~EX2SPxjS%Mv*5%8E>8Siup zYgYTDfNgTp-(?wD>=hbbAggV>Mj#L6Iue0i3Nhz9j<6%Sh7%V^`sR1(_oRe5@eOVFnz%xF9SNn*bzzN-WO%jaKfd!N*!TqFHH)j&3g; zk(8|)p-~bc$(YIf8Ald~fo*cG6b^Pp7m-@Zx=ytDB0hY7>M_=|dK|h-@tONwgMC&t5V4IwKVhV*Q%TCmQ zwEk)Ipp9INlRiJ)XiOH?@YzgqOe1XRF)LTH$hdFpDB8=>0TlEhvK}(pD@^z z`f9}C>yIcn^mGHmy?|6oB$+B)eoLl7eb-Y0CcuRzb_>^naZY9ZYV>jMm;|s zlF|(-C?H+Z2m&fF3^8;!A|>4*p&;EUC8;1tgM>6P&kxtyYp=EU zzTbE6{T}!8&fhS{^}D|3b)KIS6ftO?s}G5iAgw~Yy6>{8_Zr4mX9Qu^v|yVr?GYd^ z3VvgMn`3a+A*!%8`);YVg8D}MS55uz&i@;lD3>@Vak2mW*Pj{x z2~9L9JaTF<_0gX%^uH;Ut6U{X-I?qTu|84#QO1|UHEaLg^G|@``38mltbd~q$jej?KY9;tO?fqtoxvo7u z{FU$fynBA~%US+<;}S4>Zhz6fzVnMFYUXl{{~Jxz2!`{UpRU{NH=3xf=8e%42smj{ z-$W#sSt%`UXrj3<*eY)3zr&{+qo>`9tKjDwnrLqFO<0#>)l!Dwh9ImH14ob2fUC4X{_ z8OZnDe-7mPB;Eu0KH^It-?t?J7(GXP0i$QhJ3!9#yKrv)VIkqta(2fTkTa>@xwN7n z&t2NknTqlC&?w4WWBZ{)TqU^5cuzWrAC$3lliSj=^iV&GWbUO8r3I2pFtqAEc0pwU zGuFbLLyy}?>tPYLR>vdf+Zm3-!&3f~9)rH(`qARj6vK~({PCTBj5pj`Oc9(-?EEoV zE?miYn`t-N%J(UW`=%l`Zi+E zbFrBe_c?R3sG;KC*EIOv#m=L40*dXr^{kw&q2-Fp?}J{8j+-@TF3tM&t=}#Wh6t0I z9}SA~wrG#m-i;hn)UIrK*~~=Yc`_f0)IWB7$$Nb+9oIT7vC;6|`n0$D`}LJbab@z= zk98OShiB_D$ZNaJ*T^}nwpy@j!20cMBLYO*K1UT7o@4e2y-G4zO~;p%HUfjUuNg1g z8cr*eh1Ch_fLuEVJ>tm0_6U_Pw?cby+tC!a_OOFe%O&JNn39O2x56128@1C)4jB1T zCDRT}1Xq;GCEjIiPA3YbRhObCD9?>%C#Vj)Kg4KTU`Lj1|IyR9ES#bh@s3Z=I?{^t z6;WokV3lWO2XZ^fo=)Oy`Xe~r>BOE8fz;CoV=jbCo3 ztUfoMeo|MYS?=&)aBiCMgyDKWRN9m%>;Zk*>c6CkK4{26C<0r|A3jPTXMzI%{gd&Z z@EzFoizf6E3ay#B`Z8-QA!pzPf*zQY4%?qA1WnTe5K7qFMl z&~5pJH z8#&VCoRHTD5#PLAB;VFXzJNR@$D7o8J0KG7@U9>$!i&=(JR{nHGYrU%l!R`(`UJ@e z1|h?BpO#K@LPe0x7uscUHj1U{Ycrf>9*y({LjvS5{o$&iy$5A--Ddg5wUZWh)^BH& zyt%EGthSv@=kH7d*?FI3^aW|aV>-@A?yBv+D4dG*(?-|n@_y^^dD zUP`SUYM+}y)0WuGuKnJrcDzl|wjG$jBew{=O~i(Fh%up#u5Mu7YpzT}2?B*O0bSxx z`8-;rr5WF4so=HIGPR`Die&dzbt6QOjR`T5du5JKwYlGC)~WFqK5>&1uIwD*kicqJ zpeRS-7W%0C?A64$ukdhm_kEkIQHj&lW^}>_d0+7o6exC&7ldH=&J$LaSK3nBb;yJh zBKdtjI9U-X3BLG7pXTXTzS*dh8J~&fXJ1b1K#dR~!**=`0kc}IfymH`@uA@2_XKTm zxQYDVk}b2u+1j6eAQ0U~IKNk2GOSJAEPBi({>881D;y%2nC-*YsVMk-w?UL4z9u3G z0D4clIQ|@L^&q*z?;<3)}5G`qGgdWkKEc|QO8tZ!WgFlGnh-h!IrA=*yOwfzpV zU!xs7lfpi!45ZY!r644h>glcEi*1noS$?MN@@}j@snBbjX9x&6PEYXolQ}%(UAs== zuVemUD>=l+N~r!e;O zdQ9}qTak1wF4Q|Sg6A5B=Njuq$Ai8qRIeN5;5bA-RMpLMMoIXbJw9=Tav8tLu3x=` zFX5>;oWbxQ!Bb-;1{@j6Ez*v~P1z29BnD^pgW)+FqESsivdB49)#>IAlY>;-WDt-r ze+@VlZ>EwsscJa4SvD#rdjKjp8wJ;FnPjN3m$&C*I87Hc`l2*nxH1eWXFSr43O>Wa zrESNzx{9O9v+5?H4hX;yf`X{M+dzpmL2T^iU`{C%RBXOLwpiV!Wlw|Gp6HtxKRHsoRpg=gC_!p;{rE~c zW+((=Xk0sQ`W~OdcMss^@}z5UwrdZz8IC z?>yFpfrL(=Q;5@dW)LQTnXN3f${({PlJa&;dXW6{J|QNl84f6|N18k*Aalfmc1=OK=W{j+ zI=ftB9`~MG!h7TOJEHIQ$<$H7`-JF}OW3ooFd6V-Q8+g&sFyV}rO(;|&?Zq@)Kg); zaizvW2vY~& zhj1pITi9Hr-q6#1tXss{D4YvlJHMQT2!B{6@ZZQm71ulnoZU8C?>Xx?K*h46GF$dv zu%wHQWrt|-M>{PX(@a(MK#Q|cFws*SaYP2I6KJXN+B+5Ocun0 zg3X)9M0+vT+wXV)!Vt=aY-kD^#`Uh9yrUY4y^r&lQ{$X@+W!qLiyE9bH{> z(Os!^qWi9TKzlVHmjnf!w*WQLNQDs#m#+;=A_w0IAp$;~H0HH6&GLMs>F$gsG|p1%oyl1>5cn z{fZCQY=`mVHD+VmsL6ixr&Y4&3Rc4IFK|VgWkC=m0!6WP30t2LPL;zQIAsQPcBjc$ zp&u2O+p*^T=I!$+TECC+eKo$7AsXG#K9-2L8;+VzE=iRgvs&E8sMNyQ=PS-VVzT0{ zuWo0Upofk0;B*iynhepO<2-06nCf{NsVTl_fklRK9_6$ErA!neB86QazsV0?Ia&sXf_!+o;Hh~uOGUsx zGv=p-N~h_pSvkGkWSzuI3ASEi{ zZ51!N4Zk%A{B5=%ks)6965hNmd?6H0kpq{Q38XiK$Q-~=0&wNU0)suc-jZ;sc*Es- zA)C+u%>-|YKB+`3ycRR;^Z=X+SzN_NydSy2kBU6hz{D1UAz=+vYXC7mx$gAp|o{b5#i0m4FycYMyuy&T+VFO(J6WwA@!JhZWJ*Lq4OfR@ zBu_Q}v@A|fVmTx%3!&)bs|?q<7R@AJJ@M)Msy^#j~id>_p3A(Q7l1 zZ{E>cGYT~NQQK$HIup_RVlf}F2=-KBzNbc?6-8e(#;nc6T(d`yc*mgjzpRu8A+y1h zut;>HSaAv#G+1nc4xT`BQ!-N7L<4_?d zs!$gr(49>TG;>xt!4&5(bWl!mJB0hiY?xLy#9TZzb~-e?I5onZ13?urvY%RbMu0At z7LScs=7S{rq@{{O9`~gMr1HMTPJbnqo{x1623W8 zVfJT#%V^Hne`!U6kRH#gTvvW?sPSm;bzs7+*!k_IP)d$Ny>Hi1`g=o7Q2AYLdgHOf z-QOB&L>jCHs=|KV6g)C|9-sRCYN(l^QTn1O@rxNXkNh0{;@#N|GfG<{OH}U5_6@Dz zi{0hk@l8Vw!`jc)UqLH$EyWlDm2qXe=9`~ZxbhMJ#pcVl?5d1jK~5WO2{PPnqR z%5=~_LUZ!WmnP2$B?WID2tHHbktnH~h8p8@Ff$MyE@swN`r3G7k+c8ZB1fSMgolBf zLTs{W2uDGpSv24dl}`q4XO16=Y=DNE&71_60U)D!S?*!=%KK!~_Jzzf$G-*5AzK9f zb3;u%GHghuwg+gaAxKh)C2j&EX7a=e|kd9*3^ zB`9yVAt@JauQ7&LAgW@upwtc>iT>t~h8jt7ijy^(+yoHDmQK`_h+>pn_hiZU_Ve>W z9bx3m*{BHaa#2-R%Pfhu6o@~PKyV}yzTdkoZXDZAq`);MvRId2BhH~OxL-CT+l=1@ z>**wjo);@->yy$yvus<+&jk8wo(WdTE@m$5tD!G@dyMM9&zL@P5-tvlOc^Kq7}tHa z%Q(gTW=K!;)0Kyo7|!!@k#Mup7f0f*uWL^hIO})47ThPwpCPn+`L`eUDg@RtD+_(pUxoU8Uf&OMzVOI@UEyn+@11zD zRrR<>W4roSL(RVffRnM}pT23RS?4$;JfY(el004YS0o6*I0k+2A^d21eMyznIjHca z(?v$*aKayX&9t1_s&KsW8s&B%llu_wOEC5l3I&+RwF^#z<%j@Lsk8?-t}tw;cFWq0 zCFA&xF|l4|gXMDDS=bR!PO82Mr9SyksoY?`1q6hEF$#{(6(UC32LX3r!zNv!6jFKw z;h_kKBZL_t%A5;Ujg7USJYd*EFis?@bi=&y!Zk}7iJl+C*w|GEwu3Ph5d2g;I6;*C zd|%C{xkg|w-`Pq0BY(akVFBfKsLvdH9&!ubG??-XW9fvAjq5&ki2o~M}CVem}y8rhAEfHneR+Ptz;ig1VK~LJi zgpm|15V}adHXNq4{mv^T;~A0pYz4PAa+;pu9thL@KK|8!1(#m9<~|`W>w|^ELH``Q zqan|JT1pzB^(P(%vGk4HcgL$TYg;5wh4=-Kw05!jYRDsQc`orxEip%T{b3;nLVTBx z;vBn-#(3RF-0F*@RwFXjPhJUrl5EgADtB2Js-IYv^Qt#uR}jiY~X+Wvxs9==C$9`ct5Wuxk^7oiio!m>PirKVwR zm(q~HZ?~bCsF-1~cCK(i53IX)z#X%3RY7MDI}{YXyc@0fAAMfU5+m%H%Q6w(%&?U-Qh>CWlu^N!P&ApnLdVf&1NF9E(_BY64Kr0rM zXLX4UVSdOM6WVw8Lup*JBLy>4Q-!LYfJt)mYLh^5zq?ya!pa3Rdne0)u2*SdK^Zxx z{yCT48Jb5KIwhB7Q)R%PRw@uMvjWlT{)?FvZS^l^mLTikUuV|CBep-!ENjNWzpqr& zU#DySDE*@t?f7G*`oC8C_n*xy6il#@z$_Rz(-o2(#fYQvBY>GDQLhD@>H4Vf$o~rf z6gEW&Kr&l3(4s50@}7YzY6y_RYF884i1p)c>_|+>552^hQo>j^zoov0g{7ui6%?nX zh2|KIX>(OGt!KKuD~2Q++T<0AAiItTB{r&x*Rl<;AEv%SYgb**byo^1OdM1!(UjWH zPtX?IfRq&93n8|#eH9rpx1q2U0Q3TSoylQQyqL6zkzQU!9^n@ROuySKSMvTlOI-hYx<@!n#dR6ZM1a;Jy@R!bmQYgLU- zC}ofnCb%XGpb7&X-mcV{1D!l+$nm53C~@ABJzXNP=UbQdYE92!0qRvyr@=!kaMCpHnp zl6&HQ$vx0@r|z&zy%Ddrr_&YBy-!?pkvPlz0(fq6)*1`pGk4MA39UqS4!3KCmJ=tp zD205VG++~YI>-{s7sT4)xF{_8SpW9PB3re7l$C8Bl1@ne35AI~j>~(-hEJaJ;iq43 z^LL((`W50ePRYkYsqEy3oRUj?52d>tJ}LazDHwH< zn&=N59Xos?KB`lELTVLrMVnhB^lX}c4gS(4D&F16@P0-Kwa`}H zW(H0-G}g_XiW+@R@O&#JY`{6U-(hhZ_P7mf3g^!RS@>9BQyYoHQfTp#wq? zN9M}N>%y@pVZa_51MRqdRuq7#fr3V=f&!w9MKeTnQaDR}-Tly@ zDxrsostE1o%>{SqF=nF@0zMALkgQlB@pOIwDkTco4CN@ki^hgH zg5!f0j!n`-Zwx_Ido_TnP9RqoDpTK%48`F>0pYcwuv{GwzMT7ti^CUyY3dfqv@eTk z1fQRt%!&3a>!hRXW|tH%rewKV@yE261u?dT`$*KHC{^7R_Jc*5Kv&4MWo1FsOIXhh z&}iR@-QwT_w8%&hrE{d+LbjZ4gpENS&D3j2G&synEii4K-5P~f2ka`FL}jZZi^{l< zV7cTyKo6NdkY(jL%gOpCEh^=g3$YH-76?3DF zcbwwx6R2edn6is!WUiiFMd+7G`jtOs;68c9a>8v6X3J2Fs}<~{s~}9geb@t?(U&`X z=;#EoaOia>b=BJt>8$JkG~~uI`CZ2yOD0L9K~wVDzKI=EOj)Ajvm8{+vm$y?T~xHH z0Mf!1Qz?`Kl<5m5`aVRt@D+bB2JI65J9frt+V}TA>rDe)fzJI`hxkF10pOv!UKUoJ z0P3oaz~Q_KPu?PvJ>L|<)<$aVzW4k`7hd$6i?58SCO!x5n?n!Ypkv_dgY=5VUQU!d zKS9PV&Rm?Lyg&&Fz{WG`&-zq@J-rx6F|icrJzX*QHUL!#g5#i*M>9TH(n{xU1XXVto*vwv&y0vQ$qnm{xg~9iS})BWpW{!td4?G8zLvX{agw2{ zT>&moGWKG6Y5rxx$Ur3Z)J90=QK@;LgU@>tf`gPnbu0duG&gGzyjumj(Qv*cJoHFL zNoI`z!r0sakDi)Wm!(1I-r{}CB2}-EkqxpGtRN&xkDMKzl5~hg9ThZKF!h!#t@=ga z)P5BaSGlbQ{Jg96+tb2Nk0|B&EJF(_P*C(*w(d{(wBjZTm&2q!KcX=D^uA&U&mVPO zHyVV2L5a#y_c4lQWriWb8%4l;d&#RZUv)%TIfd0t{=+Rhw)X`Oq};Sf!buC#Gy<~DuFW38}0JqMLQe751pPFeTVDf z*`l`|bz?~*k6^hkGJgzH6GgtpW>fdoHJzcIZ}TIo`~KX*`|;T*L2F;MKdD!~0$Vwo zw0#2PtQ&f$?4S0`f2q*_Qq)fhRT`N>g4!qV4~JlY39$N}9~TC6_6FdqkR_18)@-Fg z?Be8ha%%xFCn10NvFF`7c>S(~-!Wb2#dxo5Ne`fbB5oo@ce#FcLKmw7<;Mbx_5(+j z@C8$!2-|Us8j@b8kdTuF>xl)EWAG4u#BUzMP0q$HTEeN@4;*Y`Lyp1J*?BcpNVO3p z28|)QcEJQ6@kaoibwBW_A)Yxq#L6&a$~{COE=06F#Bn18|Ca4sHh!EtB0ezmyfCz( zBlH6@7cPv7c*2e#SauJ#L&SHm;r1b-HUgxULq%?d8F&*_Jqw#_gQ}{$$W&pErXnIC>*4y7M^3CP=4PJnJlk#V7u9gJ5%ph@&{3&jq+ zZcNcxPYGy>2|Q2H2u%$(f`?P3L~O#Mic@2X{o};bE)CO?(_&K7(oP%GGR0%E&eOhA zrsp9*r!)fWvmsY*A++C`(%7e&3K0$4alzZXBln%k$~*l zV3^s{9|p*-zKxkfO+kR{O0Ob~tTGx`jm@j^{lpRb=L9kZ@D^}Fd;4F!1tk8ZezEco z`o+b^zvvf|0)Ki7oP7DyTLARG_!f9C#o{`5-?;vQD#Q#(gw*_48Z-@<;=LCV{+Urz9V zgkNl@`Qbrt@S6+5%FK$Q#2#p&V`?9BM0n%?-=kgu75ZLBK@UL>-=mSyZ(N+CvTW-f z%EH=7x$)mI%j@(MJPd?Vc4Qa!i%zZpWz~>k>W7lHa`(vKeANn}SZiC?h{#lGCg9<7 zD%bs_*lmeFfPT*@Mh0Z>sIK9ug&aEhLecb!XhGk)8e<8ez#^s;B={De2`RNt2ufgc z7T1e-Jb9*%eKjGAfmC!o-%zx6{>OoA3i`1AbieV3M0+1R&cNse@dpM5E$DY*q>L<8m|}PLMl2dJdj6V@D~p z4fQejE)K3h432wjfFRyiC8Pr)NoQg7){uw!9U(&z7%5|je5A!)gdy303A#AJW)Nuu zI}xX!H4*4mn~WDMR-U%=jtf4sZ|n(p*;B+N=m7%gBXlu zCc~`kh!WJpScOP4LnSxd8Eka&5H2u{VL+eS9mQC4jwHE!^Im_0TrsPQUhNJWh||** zhDp9G7VA*ef-2^h%K`e#$o41)4YY_0POvcf*M@u4RY~d`QyjR&1n{AF=;m#eLeujq zryXKd4hvN&zj6M@fsS-rt_TtI+qkpa>?(oG) zC<|*nVa3asTeT_waE>ISBqF@EO$tst5rxDQk7rFjRF*tEk8w7Qcx?)co0zkW^(`UE zA=PJBpxfd`;H(*2=|PqB3qFQ8*5+K&n)fN;)Wr*|=F_sIC}SOIC-)4#!G+nY5$Wq^ z6yO%(d@QcCxk!-<9w?+TDN;QaH%K}pEoQ#ArJlB>Sx8?{sN+elL&7*&B7j+Hba(nb z(fCy8Lr-h-@)<)yz3J#I&o}n>W*(}m-mCSy$F$b>q&S-Nff}kXhE;iK1H`WS!)N^x z5GvOr40WCk>XT|7U3Tdg{E+UGTuQ7kjwa~fY_dvnO&D39wID80mDfofVO$v>=k13> z)QYu5QM>8}gLD4K$dk7m zW6kyQv=nmr^+C%OzN>$!`t0`)q8~0^f~C-hj6J6F+P0f`19cz9VF-FR0YS`G#JHpRv;%P~dDcdVs!5(9@ zvjU|t%9gU}CVzOf!i3e-Bkffa_uz`~huUoazBdLKy|W?z#EBuXsXRc-Lhp;c8@!Z zSbAgK@`%ENlJ~bLJ5%eZBiaF|PWnU_R7t(2c$1=cgJEz1{vl8BP@h;CAFsqN*K zLeB+*W4L2Es(6WULs#AVJFhF@(qGI;p11Ve0k)9xon3+Vv*RyC>QZj++T%9NO^xLnxKYIyf)c+czo<>G#HL-Tr+v)RNWgo^KW%L6LHcf0fH zmvA!yq)GqJy8_TZX?|3|cmBzL^_>^^SDGIQ(?4i_18y{b*8KheDs+Y~BL04-*lqn^ zxl`Qnsa&Z0GTZ1juL<}pCwkGfB!9Q&tG~_?Cg-u8{2!`!u05-6toff1nr4t&N5C2N z@z|$!t1Aq4GoMumDY{%ciWpG6_ zp#j|^)U4M3Mfb=f357!=q?JB$)#qF~BnUzsSHG}0cXm1r0SM?;O z_fFYTndPuZ80n4DcO?gy9)*l{o6b$1aEczBc_142gJ{%6_;a6BzSz3|jzIKq;iv+_ zGE}9^Ii9FL(gLncae1>axl&0eKPKBrU!j;V+>UKKL{gB!J*3rndUc@CMe@M7s)zmd z$%J0-oZ#)g&`1psHmS0Q`+yh;>#lz91qorv4ip|K%kkXyBz+f`UvON_a^c6Pag%LAu4qNZh#Di8S3kzh8WtC-r+3_yFi2(&B4h$6hlS^z zPm!7n)$=b7ATfC33!FF*bmE?RN!lwLqhD43y<6U;mW z^*jF@;Zosicyh(Wt}rn-DIUpRQyVolk7D_5&ZKhh`IEhD0He1sLlV=@ueCcW^xpFG z<@Yg{sf!8xe&Pv{YTO^{Qi~|?5tj)&g(&G0LwMv~^3lk%A3LFI%1zTl`UHhvTN%S{ zz0Q7pcC>rSKur`k6D+eQCu6gpgT_RuxH-Pwe0=^LmS!)DZ>o#$40sCXWJBmEt578Q zVqit^Y_KpI%%44ga6S)HxUM}C-)kR!>9GX1RUx(NS_!$^4?+XG!hnWN>Ipt&T%`C$ z`&w{ph>C&wiBL_A&QlarP#BhQsyP9^yDI^ol*w9r-`yMoOZMrFOj!a~6y-BG)ew6q z8AU+%+Hnp=cdR+Zx*^GvR0pOF*Is2mrT2w#agfu-C5h=7CCm@}RG$s8=qNT*s1*dt%#89zGlc~1Lv zIO7u=yHr6qdL3!0hYUqmp$u&YG!Fz&l24a9xumhxbk`2k_`}*{7?=8B#<{GmiY%b3 z{c3wklC*(*Ye5(6VfPO~q!LXAqVEm}S)gVa^MHpPQ#{ntK_G3AS&sXaJ#xe^YZW7Z zA4}^_p_Z4Ld&Y(th4gMyzpKDR@^xg9dK*j&v(AH}T)lsN1~uAy4i3f&_=@t0h|p@t z9CZl*t@U$!O!l&h$J%^D9G_1Ncv(1*aH4jp7ux!Ei_{7 zB2M(yH?VL?7MmwH-8y}k_Rc`6 z;ef_K7mbSY3e8j973%?1z;ibEwj>r~-nm~;BLQksbu^jjfis-?09{!$6^7?jlw!5} z(&Yt3bHWRgt@f3Bh1&Qp;I~xDTDtc!UryhejNtJ%8nMl-b(WgOw-w8yM1(M9qS9?NaF@|!StR8rk=iPSs*ZV%Jct}xF4p=q zIBwPPwBYcvhGoBGeDF_yqpQJRAY=S=$7Dv`Zbq zGKjyuV|Z~tlUI}#0SWx*6HGpD~U0U{1`oP3u zKb$Cw=N#L5N;j4Lm2w%^;;i%0!&bO5;xir6d*IRaVd`k}n&{~H$n)!?Y{HfeW$lac zjO!mo+AUiTMlYt{UmsV+wCvbwU(U^6pEQoP>^&R3{Cs(RdS-(y0dvvXB4S7>(j)ha zX;m@!_>cowQj8*NIhm1by#zUr;&#K({mSa7^#hG+H)0?<|M8fA6IruNdYnE$VTSW;c zQooAVO0onG3`;nopE++8hwVJQ*eqfQ0T?3GtW2~eW%N^wPX-c^Ob(@W1eDulZ`T|Q zr5c^@4#~XO;&k+H1x}jPM`QqD@PGp#3~q@7xx{a(0AUbj&6xz04@TUVniH|oZq#wx z-fhb7R;F0` zXIuqMTnbXo(kbFmNYt1YL&9@qBWmj^7Twf&F66noAL(RH(gp#>H(4tQHR2ea_wrF* zmLJ^{)a&rYXdl!KNwkbcvqW4vYkM}!c5=(;R^^1ebN*2vk|=ez^)YXAVi(Qm z3y(Gz7n@Ujy2=*E(r{kZbG)=K#ur=9`>*Bq1hM?Dj7PLDPkW1f?_B$Gnx3E8(jrl- z)GyRke&TqyqUmwKz((0_)ElyU*i|plrACmPGfZH5#lW6fD3-^n96Z1^h&@pi8`r&q z^j#IpZDti*Cz2M5hhxwCYI6w8z2z>fT|;GQRq^)m89SiV{EP}xi$p1Bam>W|2#rWa z`AjhgyV^ncy`7xns=n?por6#lygd02sS5n*ZjleI5M-lviUJjJQL;~&XxCHkGLOea zyEik@0=Yy%AeR_0WCES-iwLxnkA-V68!?jQ{WgEIIg#>x1`Ct`8co+p~YLCgC<;2L88P zA89qjePwg4?(Klmt2Gk}D7~+d?}@C;IM@DAdf7Dt{!+gByV48Pe!VQ6*}Gv)E{WOR z7-?T1Z^GGIzsgrHriX#@RmxkU6G8wvuU@t2RuHKLV5BW~YBUeM)r|r4*IlsWhAcQ9 z5%NOQQh^uX_*=#xP#jaVioi4g=Ws8tjh6cnv`PxFCexB*(aDS;c(ioIfYR$LyefMf z$!wiu?8Pya1e#jO2O0~EC=v|Qi`UYfU;u>1HU66o(83comFcwxgtGxS2cY!+WeEP> zK51HSou9a6uL*>+OE!VVf-QhGc~f?B1Lr6%5)ra5DdX%PDJkzkrc;P58K=+iBilH) zE4)4q{A!=%%KwP>ge#pzf3%6dEB-c#M7 z#F}qF21)L{W32AfaNH;v+-s&YQGeL{W9>=4OX5`^P%cb0EBUY$olPpPU98$N zM&ZEhc2x(dLRXd9&<}5-4zg!uW8DGwR$`QCpF6tCLH+L^_Hz~P%nop6?6}+V^#Zlw znNyB}-C{0ELtT0gxh#;y0XDy}k}$65(?b(=h!CK5(8NQ}81yYp|mOy!p-%!(=e zjAZ>}mBD&4Z9OqxYhznDTSC?If;*wcGaY4WuhjUw^WgTObZUT=}4&pJJ;a{>O^wcsJuVMe>fwxq?m1D!jy4=5AwC=`m{vd3qnw33>|kMqFW$#Y~CA#{1qwdzNIQ>)LPJ?-Jqosox?wY@gXpr+rJF7?V?`FkaPF z7nm(u8OaO^^t3khvS=DhXmfN^B$Ic|Q56^mKiqg@l4SoNH(UT+gZwU-NP#R$QGYW# zwcvubFr70&t1cLfx_7yKWnKb567fm9E1M28|3s`}X}&__h4nI{fARa7(%#OKT$ zk0uJcj|M4-q}qC9Ce9oW+XV=mG)0sLW1kLbNa7#Q=5~|d;9#New{sxv@P#@Yi1F(O zEpD5*O$g;7cc0m=H8aMdikopaw9ApK9xtkFn|OWkS9VVGTZA4Fl7TR|8eWN!01UP% zGZHV-=p*j)&9v?nLiGg={peAB(+Hb&w3qZ38*ehAF7^^;S1zT|V$h^MEg5!3%A9mr z#>gOd^nkzyAJYY){1B9jpY(~P#PvWjL=?nw7Lcg=%E<~gA!ocqC`Q(0!(j)FgbkpG5GBK zXD~99GSyxO{sL)+LRVGa;Ys-w6)X!Q&pr#l(Ln*>%F3c4_HoQKIz#E2O(8#(y9CzW z&@8eq%WmjI+l#@2LtIfn^!owWFP4e3vbz`q#sbiUmhfu(mM}YuTKPl9A`xY{!Ug6{ z{_IN(r>-j!({cz*W?57sSH+ZM+ZY`UIUu!+!h(LTz<;QX2rIkK#8TS_lM;v@Nws1j zYXd||w5LNwAv`ADC}0%}>W?#K$00g>`tkfpjb9C|A~y#7%T``IrdCA58ACN%&`bGv zgvFs`7Jx1mNdLpI13#o#6vB9v>0w?VOWGFVNy?XwFWW}CgC$`?Pe`t)0tBkvkTI^& z9++K`Y2qJMbsG5K)ad34;y7Y__B=~?Kf2Zq{NgY$NKqg^N!i3P!UqCZd7ORP9k1na$u$*~kW@Mfem@FWU?@68?f7vxLHQGQ>}vN0^o%c7-tfQL zRB{TRC^I9aJNIm=?P^Q{CgFl`&Cejzku-{z#qs6cVt~ z$Kr#SqiSfBz58hPn%j}qVwP{q-#*c7m6%@>u)-m+Ym)(Iqc425(pi)3v5~|zHWRX} z!xrnXk9xk~(1k`7Ual}Fgaki$lIgi)P{^$6`>2B1S=6j!_7-G;Ps-!;0J~)sV1e$aA#e z%~WWG)|#wkf7{1Az0h|w@DS73pHdc@G>sEgO8p6q_t~-+w@nMRJcWCR@b44Kk&t+J z##w4Q#%+YtVS4mt4|#6+y(FNUDe52&!FIH8dN(t3CoY%x8?$vN;io1{I=&KDbO)@< zxmm4e%0&i+?z8>#Lmw!qFM}hExXkB-&W@WNm+$#KT2%$vpT1AQ-}5vHvIKFCg?B*+#g)aZ57LHrrst4$!5n<%IQpb$tBf%| zT_pG16GkiYL8yX)L(N~X3#MjvR%mb`JL1&Gw+H#eqXb`=hQI&bB|C@Sw0*F z30(us>R5}c~|NJZ$ z8XhaHIH~bsZaegR80($LhigJX-yARWBp~d4lZcMf9Dw<){G}=V}QW= z%hRO*6hpr-R+#$w%LFSJg`po+5lki&X8#rFyboZUabY$L-1G`$M>ugd26jyc@_?W4 zQNlAt;6h?HBHnPNWVnQ(h13ij>jW-)W-2chG<+{eiT#mEYEbOkAdR92T4zD#fRk^= zz`!tA)HB#{L-%20F#1%mskfFHWk|75h!sNR+o7MWoy7p!%O{2wCjmBpe!DXOZ+Gke z>UvB4uLMl}e-to%|3?Ay<=+KN^8XzH6TsoWzv-U;uUEa_E4!0E43DxEiovZB7ct>w|%clzTV?=rM4{pF%*&jPq@_?0#&QUMO=iKsp-E z*JDQ(E--D!q`x`l4P0+=l7N-wudAMh$PHLc2@o&=u-Z4@Q{x-3nitR$0aTv>-Sf#n z%1rz%Vl5p!_kYNH3%4lucI|&)h@porfuXxwYUmW{QfVmxDG?E2=!PMbGAI$07`l<} z7zLFQL6Al%VWj50SU72~qm)~MVK+H$zwnW>~|TFBD_ zbbPf`p9A?0Ke2G$iv-1foesJ#6UOZib6hRQ;(+-FsN_(ODF~7ydTsQO4}; z#zzbao~^>irk;a!Df0enN>dSPSnQ;`f%T?v(6uE<-8Ds_53RK^D!!7KW%uwNDmm|d zC1hWEWbI=4lgI$cmHe#CadndSnC7)tv6Uy*oR!~Cwon5ir`vVvwho*1mm%1|&*h6h z-X4gw88uPdRoolkePOmYEE`6B0Hn;Q58qpUq57%a%!yQ(zo8;~v=GZ?b^P_qC-IGU zX?CHH))eqAPIlR*Le+l^+U!2`|fu+Ii1SQ->5b@{Zw8z4u_rG>oR){y@YEN$Mf?;0jk9p^94@l-xOri{?2IendCTzIQa*G=oGKLt#s! zK}{6ErT~*thkPaDC|@t2z%tj=!ie7?RJguU#;zlu38#hWI>%AJaC^%q;+$X>^@5f* zqEDy=m1xVw&d|fqew>_^1Xbi@dZw);UHL9(_Eeks%X+)qxH0Tje$l};1}a3XnmX3X z2@_oJSA9~2j3Ko{L30Mz<$a@*rC2#RH+1v}eA1tovGPbhP!uCb%^08K;)~`THvV3j zSu)BZV5-|{USkqi8N$8o$Ujov41QQwetXiJDDCE^pIh7ZvZxdNC=WSxV4vAn@mpC2 z{301SO(CnBxeqkmU#H~WtaDjM^4J3yo%P42U*lFX0gR3nt-^M(`uj*Kmr@54 z8XGyP7-pb%*oYCq90$NyU0ymSiuK1$Mbh+h0{5MC9iwFVqjjh2TW7$1M-uR_ zrs+I)b_RNfXWpe70^?D`$PmEj5SarV0XHrI<0ioyRB-@CXEnzS=$!-zQb6ypPd`AA z3eY1OPrSF91A88Pw818a1>r*2JVE;uGT2P@k{3yi_yEYn?MRc(;jE{>AYNp4y~Io@ zm@yw~@6fBF4K3z-RoXx}3fIqm?fx2-j-|&_odMh|6<@|qu1jI361J+i!)KW(uvQYt zicX$8#>G$BPm!;1%~i{*adV2c>sic~^Xkm4ObqI$V-nL)PiNLC8?hm$sr6qQ6e#5g zZ3uRn70vc2#Btr1zjr{>TA5og7e%6P@kCduyg_R>cDo@gPxGKa`?gpQ4aEwojh$#O zwH=4zrg$IymlE*->abCt!K`~u`@eE=n74B#j4dCb-gUNyL=ePj)07CIj@pEq;G! zFz@4Z`lI(i82!bPzAD5x1h-{;Y2?2M;R3zG+l@aiPIr6Uxe5t>Qen>t;`x#1m}6|} z#RUlr1fG72L$w=9pa?soDuo}5qr$fz!tg%ub`cd;MbJsH5lHHEkog&fu-45HYU^}U z}y;kh0Mf@hS0Mjz=zAWjsgCXnXO*j=8TYE!jxXh`m5ZE>5-4Ag%ebJ(%fD zP3G#@UYE0FhW_m3pGdhBWpb|6;7nGkNSf4pcIliOrbzO;!;5REpos{H89`7?B&T|RimkpbXq$XGPvH&667VGy^0S#^6R{hFG zhWBc+ZaWPyFHP&&Z(hqL`}I=1BF2D?&OhhwomJWwL}T^3lZjL1B{P-Q{hl6^cjj*v z$-W&LbzsuSS;4cBi_bA^t~hwQ?CJV`!5SJcTsgJnLczP^>Qtd;9qS3Gr`-aiCmVxj>TmXh|D~!R@gbQY zVmEDo?Fr`Vx9k7{+7&1D+y`r_s{xZ_avy_g`Y83y_F_ff*_#^5-;;SgnUnOb%=NL` z3DLOhizwrDXmam9IRV+%=33;RtsE4rQ~AYU({ zUT;99=HDgCF3g(>Rt_GO2)=l7($Wi64_YFw?(cTGQ!}lc$>#XUBS7Fa-rmWzHxuvC zS^^6i{u3%2&RgE57ht{)J4qX8%)GIP$~AIk4dgAG^Snwci6e1ukwhz#bl;*muR?3^5ix$nhrVa?RXls?6#J&Tc#gdms~Q zkHdnB6ebAAA;W~T0!ZCYRQ6SYT_IOt1V73n+yVdWiM08Rh91?(E%nCH# zDZ)uijo`Q)KBe(=wnCKtLuzGl=!v zL{(hKdoR^JJ`0|$s-tVR$VM@Zr;OffzlV&#=i7!!2Ah+?ySgC(ZBAqda&P_dix{_t zIbhm3Przqjs&&|M7sDO`7Y?Ty4VquRqD2gurc9mC?`kf7mlRc>nAvHNh+5ysHX!s)CIwC~nkuVo1!?-}D49}Lc4%~p*S{fMC1#*}HW4Up16 zX@j-RV@z_G49t|4*bJW$n@QhK)q&fCDC43uUN9QFh;`%Iky!{l7q_UvrKU48f`cx6 zNxXFW*nk>E6-X!KA+kCN1ptL z`fN+p7?3)=5K^*SKZ6?<5#n2`Uoyy-rz z`z>F5jZesZ`G$K#p&N?E_B$?ot7V);^4 zvTjuTv^ui~S#Hc7sPoIlQjZ}65kVGd zw9K~N^jV~#YcP^B(Q5dodrEs3slCB64U-%Q%o@IiC)>mPaP=Uiv$t`C9M9gg1M=gd znrgaFgkSKzgmh^^BW$CBc@^C+)mA{P;=DvXYvmt0GY~@nLg3f##_~X~e00mV`Ebus zJ39t%D>ZJP?XE^bMv`;!tvub4*`@)hGZ+pbXo<45$xjAhOrl~0Pxfyjlqw-pY8L=A zCFn^v6s(Mfx#iuewk2ugefjMZRRr$65)duM2%?4xhfu-`sdSbo91Iltu>Az`c*;Jk zx-*N)SU-uIpqaIg`G$R6IaJZ0GTmb#uVJ?o0LO2U5W zR}TKjqNhvR!vuWY`QZc%Kx*H94YKZ&U@g|eIDpoWIVU446y01`)NAQ7zo2`fa_hQ{ zh_=i&4$ut1L2A{h#z5>#yve%F`X1Id-D7ivU}o8oN~nQ%_69bVb6&rz(kM@Nk7CAf zxjySSR;7*5-_fDgOHIy0ir6locWux@^Mq3I$#}rvk89WWN@L_p#V4jEosKSomYJ{P zL~-JU6F!X7l#00h-Wg{K7jPgENeKykQ5gIDgX9 zAAj;2CFDwc6-JsJnnNA7D2tFcK?tq|2TMRlWGNGI!(Dm9sk1{|jYC}`!mqsw|JE5E zyB02?7VhO5&MC)Dgn??(hYJL83a!&|Fhl}XS(4M?(wIm%LzL%|tD04mRugA(V3b}E zwQf_CAs_WMOq9tqm9bp3MNqU=b~K>g_5$UCf4)W*zvfPF(f(vB*zO+>cu4VW3ERRC0)Tu8e2~SzYC&g zPo88jU~o#N3s0WGT%Wh1T)-rE(WKCbr>yAct;$iZXQv?QQmEdgd~ed+olfYJO9h#y zLfKO>aq1@+D3AxHJxnF1MB+YB!JB~sdEiB7dE%Kk(hXzsA?PSWnt^m$E+mca*L8+6 zC~b3^)Q2>py)@X2F-JU<%R2qaObk<5dQm{S*m8OgeufHXMxkcLHI>P9nKDhe9O&OAGc|c`ZEI6q`PhS+%&w_S55mXSWw`E|iJ8gY+=ePNK6!jyix><2 zePQAMg&6VwN3Hg6XL$`n764}*cHRrL>&*6<{0)Nfmv3soZ2FgPYQ;+k(toDa-rUXx z&hk6ffEcmq4u}!o9&A7r?4K|`%O*>6U(FpY7((WH_HS4#@-@e!ullVvTPp@!sPjDK zoOyu0x?NnfR`6~qe!VbtkH}2&8)$gFI1^|D)7>x#+9>I`J-qR%?E&#-Y2ziZt|lj8 z^L0hp@aCJ+=1T}h(U9I&#q*hjt;(DYz-N{D3xHsx66tSO$M-o2)r?ZDj;m}i%x>4k zkAW-drn*Zv?tRqC+i8rtmnht{a>NZlF!t{O5R8R-0D>|66M$e;N&^s#+RS%Zijvo4vGY=rtsBgvy3o6{Yf=3}rt<@W`)9 zOxldW74Bq`kA+^CN`1OnWLB$YYsf;yj74)Ip@eCs_c9C~N(ZX>n4BMdmWqDHlN0zB z8%4GtLBF#$pF(#iq|+vKD7%<6@d&-da=SKVm{fRNZZLwk?huajHyd9`urqWXviIXt*Nznl(d`1XTHwi3b+$h$`{V3D z@^x8Y(DyoWr3Wc?RqbljBr79Fi=tEKDqmvncBn3AgN{alaRsC|bb6Q!%jjh0X{ijUlCHde&A??mpb|XKgLJ?k zEk+=^ir;-Hw3~M#w6AR-Uj3ss%KkfTH1T)Z=#AQc<$^-N zm^Xk+X#DIP@V;mK=6&Z`H3M8ieAAcScXr#~0{;KtIKr4kEB|MwqxN$=^2b(BTn%M! zMmQz&ItUr#(?^_911bP%!0jiVAMsMM-rO@a%El#1Pn5vLnOS`<+RnHJ{}9B1gh~O% zaFtzHF5inJ7v42h7>)Bp@ow+r`pXYW9%!f+o+P?B!zN*)6z!gXlzM-bky2QgzPafV z{2c4-p&H~L}N`oM+4i$y2>}a!qb&cXO-e{o`fwnqdh+VgCW2$Z?e+ z!#7_3pIlmZ8V3u&z&N7gt!(^Oayr-i?)8?p_jZS%XxsAmohpaXHX0z{-+k$Que$WU z=UsZ=V*`DgHfqZo(E%pV-H3KYD~aefBK^}WMkm(bY5t}-&ff%ruTt;<^8BI*Vj=!$xSs*{}?p=p{n&g{F+ORN?eRXD@O6RU*wuGMR5d z7r)XoTt5z}bhL%?>lZ5=kw`8~FOqrbUprbSI>Oh zlu}=aUE|QKW>VyK=*bx1pr>&P6>pd8QOaEKKQfj6EVpbRF$8!SPElIV#x7>2CoYaJ zNEWZ{@^<2qLxJ|Ie0@kfc*Yo59`TpES$6uij8%nN~cVV+IIUushZt8 zEi4{+Erf%5c}as`SuDX~3Px9J)g|n=mtc10NZ-S!C1z2bbaBAJgkRb(U6PjM9l}VY z1EP|C0!!g3D$<^f8%QT}xa+X3$wo<+q(+y{5NE)}p~O9yvg?a%c*w=Y9GLR1%Qu~7 zGPCk1NY_BkAOoRT#7k1bZ)~HHUSyEXFBmawM(6pM#&|i;enap6I}?tIa_&xV{x-u+ zlg9;Tw|j$tD-!XfZSP^cXeuMh`D$jQPx@>^n>3`$WTmip!E60&VVp(UF+(=ZkypA205rzw1Rg{oUA{ zi};s5DXCn!JSn~S?WAP!+exV@+Y~^V=qI;9t$_wstqn32@1ZEc1m-NegD(BG+G$&%`qo zCChjqqbWA5$3#N_&I{Ds4O__n>Uo669k1diHm<6aYBUtZp$2;%<$a#B?iGzZBsVHs za&^%%7h+(*#J%2Zq`2n^jzgh5OoS?iW44%T#{~3@q>-D9sVeOpG!rWGo(koS{ec4C z+aI={QZ;{L>P@O!Ji|>Cb}6tyS8aI;YBcsiGe)a1S|M2-B71Y&Wuu<8Lo}jBdqXM& zY;D)NO@$1E#PeJt%X@`lEh>u$ybg#dNdPJ&{adj(Bk5z1UldeLtUy<^oo0FTT}(r{ zl&h$MK2qgv+a54h0NWlX;q$qJ2~~<)hwsL@+7G9*q?2E&4q|X{a5xolQ~}h8NwN|| zyjB{m*7{XXbl?j17WoV!%d6oTjRKV_F6HjtFby#b)GK^3wL`&vbFKaUmvNwvdi8OR z61pYb$Q}-M-NsGfm4_iflr_@;?Xz-=h+HzmvNC=lUg_!l>W+!5MWXl+`-A^dlk? zK*HqLtN5UR3PcnEe+L=_=2|3b*c}kDXRipdie&s~6@^dkgP_!iV4TL)mgbS|+B8Rp zGLSmjVgV*hm^k=Wz<$0`Lv?bHSR|FSPbV%D0^b=B*iwQbSWO`6VHkBPPC$wj=p?j= zLNnDDv7T4*_R6gGL1SR}*x{8fGMh-+yJ!S14HQRV`zz4Sh)+uc3Ri^zTpE;?G_pFL zNvsn@F4j%fwUnwc?VU^)P{gw%5gtaW7J09RP=ZS}iU4Mh!^RL*Tp5?7dR7Itsx2hR z=}O?`6T_hfC@umIbhmE%WprjH;x2&nu0ApbO9gaSP~Ph zMUbg|KW9z8mK|>OQwWRx^0yQSI02O0FkSeYaJl@>c=cuCensh(~>I*6t_qF!!9$VpcqM+s%c-4zwFF^ z@tvJMtGmwZty&TNE4>e|Ek3ZCzMT7!ZA_tYg&iWrpa%1?OmddvWY+6rlg~YQpUva@ zymc{>t_~U9e2Fsq&`pDaM+>(eBcOxz;-t|CLVyED z<`zx@8%eDYxU8Lo=&Nb5#nN8ypl@sz9`sa$fA!fo>(6OzxIahj_Hs9jeEzQYwKZ)z zii-mWFDn#5D~4A-k^XRcN`^kHCHuQ4v&ZKxo1Y!#+lwq3?a2U?5I-{(P7UCtD?XItM zwHQmy%qJ=fC^%VWCJg7o!)hSdW;K|>hdXd2KJSQvz7cb)>a-6-AdUm3F=>%AjQ_JYc0fjI=va@O)rx*N_~`%Y#G^jH=SJk5ofTZr+}vlf#bquqH%QnGM|H$Fr$I zm*OPlCvtb=hfX^A$1WSJ=a0_l-HWmQ{1g+_?*K<^pZK34c%qa^ThQ6#L%2{e!qW5Z z+?rZRwX^UfAu*8ebC_LmY=RElboRYchhK^7HR`N=cAJkV6X%I1Q0I^W4>Dx0DC?OZ z()^IElE5bKk-;4e^CFl%m5##m_hiX@i&Wbv0`8gWErF#CSV8R!bDT#3(%}O|c!}S` z$oXyAF=}V?tAkfBmXZoU)yyAQP6Qa=81%;nE1w^6kTLS8#KE2Cb4Si*&Q$KeDQtRpE!~7>2 zE0Hh0@Uz0a<0zfeDvTs=v45)PGtA*rcxCx$Osc7+Ct&<%3yG33)i2BKCd=1RF!@c{ z3b%TliRKXQnq zV@I0eaEbbD&_pXM=TyFy_^Ekt*9+wyb30r#6J=tdZqd&wicpP~Y7xG2N-5>XnDLJ)gB7dQDvH?^GvROnqfoyxWhpzAtjVf87rD!LGR(Rdv2if_KF} z5&I;_`{LvU(fNnB%KLL)j*eru^;cZOqF3+HsXqGk>3;e^*p4d{q!Wf~6}Ca>P$EG^ zhC$H9g>BsDEu^EO4GO1V2tSbs=h)-UUki`rh%m*8U@CRH;zrKx79nN@ZKI1^s3uMR?aY@s0DQHX_k|91_E?&wlD04lw!zbQ78jq`hd>TaA zmme=|DpYKhP@+T1RdDCr1v-Qz9f2j>TqDOVFh?;M{4h#A0!(834ZKqo$r z73ktis7*x57Z=%nIj3x ztROi^y?P{RypeNvDuuNnzHAyXKlJyuQa<33d*h#ZpJkrwZBQK{I>+rKmN%5 zlT=y!aK?=jDX*{fYe51l^{Y73YQe=YO4#=uK7B5iDKyji3FF)oahB>{st6j%k{q9w z7#9OIp?7h4Lq@+Sa(s{CXP=6Fn2Ccwu-#ZIc!_h8o*%V2#9N3AEh*Jcx-eaTp60SS zQ!FIR9tBN41VTG09v-hZsJ%bNoG$g^$}y^9sBoDwjS zX{IB&Le@cUmXzJgv?X+Rh`4UMV!|TvMjh5*uDpJJJf@=Ia}4ub<7mPi?>j3d55KoW zh68CC_Lr@~t%nIbfK(Y12uPKFm)d~cr8c0?qX8R!0{EtG^&L>vK=dztQ;B_siXW_; z#@9zmnq4_DkG=bE<5-?03v^0uI@)m8-hr z(Ai8^+w^a__b( zcrjM=0<)5J_u|+3tAF!N9dGyQ_D!*=ly}Wv5BPYpd}fHv1rN-3h$90)M$Whf`Jiio zaKz4LIE80E9Hq2JzXElcXer8-+ z(VhR9nPK{uR&>cfFUB5!T#SF$rQ!AOR`es!|0i7<|5H}<8<$pe?CPZz{kQXm{ol?T zp}(CsKK{?0H$D!I16FivV?}JX=}Y-lx1yI%t_2d^%CxVMysfy31QLdB!DT$Y4h{S- zHTI^RuFLM}I1W4ufcoj@-Z|RH%R?9f)fz`SYJCOTpokHPkdqBQZ$yiAn#$xnSeH)U zc{W<6&#g8|cH!o)_0l@c6K6#u6M4#)NAPs_lADLv_lZh2F*e*~O({pza&1S$TksMs z#tGCLL#GMOD&Xf^z98oD=5ezYNp4jK?rCb-1*$e#<*1aH^5rqCH3~W`u~iO7>%IBz z^45gJ6SW8H85SIslUq`2ix3oP9y#JjmYP*;{oa{Vt+CVIRRd1p)k1Z~3hf;Zqh;op zTB~X*F(jx?y!$s96+X`2FhY&)c7ebeC`SqjU}n^ej9O7kNM78W*X+jZA3JS z|KUYHqa7TmjyG%Tie(+-O+Dki2y#03aQ~J5>7iwO4pn_=V0%26NJ=bDWz>u_RC;h) zEgY8`>6okn;lFjTg&r|HKMViWlB{%HA_I&=?EFspal2!`C=UWeypD@lM9#?Y^i~`z zkq4%YFrD)-&eLoN8`4tCd9@#*m|_+X6L)^AYh4R z3PP}EQxd~Lj!-~PWZOpe5{!0H#_&aPk>Kd+A`8PO-Yn7n9Mo-4T%sSuL^pU=>sZZ` z<5Kv*!4?l{Af6&PpZyU+EV~Gst1#TaPOdYl_yNO{_d-@k>)u>Uf}LkiECJ{y*o9x8 zfTj~f7}P0|vjHM7fKz;a?R4ge8S#$kqsF>%$RR1~v(FugA)TGf#MN1PYFU8Y}=|_PQ9*&$gue@_d<|P7XxiEIyufu5M^H z>xw5kGr=Jbqx_B{eH~0IkuVd+A>Y%%+{6gDD{fm8#ZN^FOpRINo$-u96>AaxJ=^ZhN*T? zdD%ksYk7%I)u+ZO5v4s6#$P{_8RnwtwPUZ1LN5xeP<%xV)k^>Iuw-jYT= zMkv%c*>VMh!?N3Ja!=Lz777;^g6QN4bx0f!KBCL~+;_`A_+wY@69MDdeo^9rXd(M0 zqWL>;@^M7;EY<{woPi3#afoR3Uq_9hyBd-@g42^Hag;H%n}SLCAbhTT|ED+L{&}qk zJcj&cQV5GsW9uylri-!n@eAL(btw-$BVe|iNti2{NWRBENIB5}a8xV;6AA(|4OS6| z8Q~BJA#kGKR3Qj&MyetjJ)}@hz5^qR#l82K2N|NHcny|_6uK#(av(ecU!vO$oPM*njMj#Lk44;L0)(Gb+MHm07YhvuSqZrHf zV91#!9x)W>MsK1GO@__<&3Zhhe5*bM?wTiF=_p>ZsMM7xcRX*(9*1+G$hS?g%jH*` zUwZ?8ktRM10 zIJsx3+NahqH}ZhTRYK0{d5{#`y&Cw6Z>FbM6tm2OWz@xhlvdA3oQZJ>Tpca6%9x%WP=zCW_j?(EQQp!Wh; zz3M!3h{LCSQ{QA6_t?H3XmIiEk@yr_!rp&8%vX5iMeK5Fqu!HO#^xB8Vuc>J_q&%x zW>TdryT|r}PNx#T{mz|FtwltZal$ejC3v$B=D)?HtA^I}1tDf((jA1{47NM?Dj}iY zu}~XB@;Sk?+lq_$@!BMxEBqqh(Iyy8F{ReU@x@3zceqR$Px~oM$)% z->y%pb(P)W&HUt_#Q78Zn$%r(Cp`Z4#;)5=rl2395a zja(elcPVL>_nv+}WyK6;#qILem@bDY|3cp#+~@YYA7RgbGMzejxU{nN;x_h_wpkX7 z@#;z3%TwVg?b!VF=}Y>{(}?q3mH5-;>)5o>w-=b>!SjO&?8PatJLu59`pmaguc-i4tRQMH!2oAXjAackP6v3Ar0Ynak zrXxf!5kTZnLM~FuDiVks%4J7hZHfdUhsu~pyhuDaB%~Kk^-wnIX&tE!=HV$S3WyvU zF+@w$kOPrJGrs@CGK8V|dOyaaDTcx?$`j&ychKIOA@;LWY{0sHU{LJS%-G;;ZD2RH zI*dgGsRO$)wOL$@oC>fTPu9jIQOhZ$VB#{U_w+6usXLC~?0XQ0(o0+b!>F>ipxoC8rVH zW#`&|IH1gMDeNIQzdgPHdKw;E1-j?TV|^Hb+z+OfOnnwYlbWRv0h};ihx7B8Ip_XD z=X!3gyF7KU!CzCGbyIhF9;M9l>V;bgqjNzLRUn_XfA`@lweX8tx1#KepM2&SJZ2j& zbI7OpUGmfG_^+Ek5kTh`u^zgYQb=HXa$a*h8=eFZ%TjLA@ixR;RTJWzKqm$6jr_-i z{Z{4GU@g7nn$e53?Ig5T>z6tSi#uMS(*keS8{V&$3O60yBUx@*dGGo?Xs_-yb<4(Z zW2H~ebNst)yJLc^5+9l#PPSuOUWq1x2uBw>1?fCd!H_qlyWQ*3Prvp+^J2G?X)FyE z`W%z@CqP)5h!j7@I|jDx_Nx1xIM^shilHyLLNDH0CQCwb#~us$2T@7hmJGQ1W4rjO z*r|Y25fMZqz)zL!7MCn8Khl5H(8)RlPJ5Q|)3N(#-el4|_8H@};{l{zbwKRey&2C8 zt-v`S*`vVu08W|vpMxj@?=N`W$Eqi*PM!ha!iNWA966NFh0SEZ?&@P-z|Z8b$!|eB z8kQ7o+`s1#rp2#mEqX4OJf1_}gvzZWeqEO(uBMT*jdl`olzUjIXS8E$S+^$BcJLj# z`T8^&s=qpakgjsEOJcTNLx1%|rQLr#P2Q&Ckh)4q{7cC5q8}pXYNe9`8A=~|56)Y& z?o#+3dp}oE+TM6`SM0PttoTGNA@ybZnH2}?>H)0zi`t3ilk>gndftw@$Bthq9<~{T z?J4Br{c`LivJn%cZObPpOYb5Jh6+%gQ#q-^_kP zdwF->9$WK^W3oqWM2oDjyJH*nuCg5p-G2BbgEaRYS z9PASb-b)MiiiO`dS7a+1yIH4Xog6S|Ha;;R2 zei$8-u{~gO$@%rB1QKA?3-b4~wCGusFt?(O>e;H4WW$_d`!h>T5@l?@7SUPMCPy;oI2p=Y+32w;P}>f2 zzhZg-v~wRlZe|y|Qif#`c(YecT^3W@d$Lhp*Wr36rRM1Bmnt~|LC=cDS-0)#4xT#& zS;y-w0<~is(GP0L#N!Enr)W2Q*k zYISY0^npiHN-L)1mFQdMi@cpWoVC_#(&x&8M)Dxur$1CaI5%ym%!{p%W&NNFsOtS1 zZd%=k6$?i9V*?D(1F%R-ff(f+Pw21!MX%q8oG4vw{}ssq|8Y2TL!!FWsgO5XNAM%j z1V3}K&wC?%i$gUPZLgoU2(eqWaC5tzpZ2DLQ$IgBpV9`ZIRT*=>yP%Y(KC>j?ML(W z?QPI`!l7%&3pZx4=YbPuY-7iZj=!Ek7YH`4VZIuLM{a((MtC8$?AO6B>5xKA)-)Yq zO3tp}KrFSdKgV!Ek#)QBFvvkL`J(aFVz0=9u4H3}MU~gj!Gv*{h!X?!FJz8yc5y{z3C-vxMH_e5==~>ipw8ue@^3 zH|oHSUDTTw_fPM1OjJ4^aMt;rPqwmM)HuIXPrfU@7xx8zk<|g>@kTT{u@#2igZIHV z{O}xLN2FQgkYJ?AcIP6l>~R;B1-H}3#HU1-e6%!bh7m$Z4n|x$YK*gJJ}I*$viowG zSGtk0@XYvEdxx zo1u~7`)Q=&*&OWuRZFGi(6B|z{^Py^95Q>|5u0=}qJ}mH@xY-G+oN;_EJRBLXsJZB z7iHff9e}6A8*mAj!dN_Ap!&4e+(oK$Kaz6D)DHD{`5nY8oRyIF@Eg*l*FNP@4ug3^ube;G;K(ss7(Nnp{x zyh$i`72f(6j3hqNt^d9}5=Ihs+0_ex3MvACccbwh-le|CeVOG3rr;l1&HnLsPB|aH2@+2cQ{0b`vlMn03Xe1gKfBK6_SB_9_?enSTnWomp2ORWt^en`_09YlV3m4@y)+nJx_~ z^GI#+DWl2c!lXctoFYr6;xYLs0|5<^TZdnhN}f09F_v1R}J9*KblH*37`UoW!jl6`>M<;;i2(H-Ki7P+oNFlq- zH&!>vu3aH>^Lc)r_plY`G7%Jd1=)#9G$od(;+%)wQJZX^dU`Y)RTaJe0UpU&!cM`3 zMBq}$p+F?4-CL<&5G1ykRTqabLq*G?Z3;Ov24p8VWOomN!`ex8T|P_nTz2;9CqufA zcd0ifgk6(-wD>MSg$Nubl;5FJ_N4de{>_53+WHr#J*3>}gMf?}DdYnu?7th?wwn1bw`Sv_1+WR>L_#4B7+4N4PiAX{>_lD5Hh}gnQpvWR(JzH34FD9yn*Mpa}o1# zT>4}79uNMfoOssu+KMq0Ng)QsIvuchJEU=VgaL^C+*g~C!z3;HFpf1aTwUiv6i1Y= zm|IeJ7%9~4tkw3Moe898tY)10GKpJDZI9wk!26Kbo*-P0#bIef<0qY&gYDk&OrX!5DA_K9UrSm}nSm2{Ws7!^2?uP%1M3z?2u_hAt71IcRRx{#=BGcQ< zT~OLe|CRvS&sck&LS#DB^B|Qm#rR_9Vqki zJobJ=GP2lLjmiKp;67DN|ZN=HEtJ={NSt zI<=py)kFXi%<|X{J8QuH?M(?TWk#>(y9A5!Lb?H;7r9$kGEdWzTr@bD zzu9}ZDxCtXsCz7XO|i0V;bh)#eAMgTcx}6~GtY{fllV5@D`|$~+lUisIC|Gw_}qJl zv}*p?G_q5cMzw$Qi&kTKfgZ%Bapdz>@Nw%RS(W1o_rizShPG91(cmw^3qLRF+rKAQ zg{HOe9*=yvI5~a`@+K9N!Ne;e?`of z{Nev4SMi_xzjR#w?f(V;*ZhB-TV4LYQvd${!v6OEGX3rU#qrYQf8_t={vmGoEQ=(VQpwIpE-Wx<%lFJfLe{_l7vu%_$|@ty^nUVkR?V zH7})a*;w4G+x?ZJU!Yl%r1!#xtHXmpE;89L^1<7{k2csUgRR1p50TKYwqBGOEaMK; zEC;%mJT+->f0eI%t}Hs+MNk>ychMboRnx3IdT-`dlj=Q6VDK@x6? z$3jv%suW&_?{v0`{ofmC6y)4qkyF|izjW?Q&c{QP+H{?5-&1l$5g)Am_jM>B4( zDgv#?%by(%ddrgDpC_ESCfgbKrQ&!YyzV_2^dFtbsz=X&lY(tl5`)viU!?C;yde zMgGsOm7V6__1>Dt4OV*meNQ$V6ZpGpCGlU`wekpk=~}V-&9x%3Y6rX!8M3bv053#a zh{*b4q^~sOx8B=-|$qhsNGB>~f1% zP8^xL#mnEa7PEE8r01giSMye@XULugL}(j`j|WJ)J`3@-G!Pqcb25Ap)!obK5bHRV zC^b*>+DP>nrF zeS`Wa@D%vWUf;Rf^nFv%wIq0ItE$(LPDs0l?#;I6kjR#h^MK3LcI{M&j92}1dZ1Us zd}xDLlNI*_Y4k}k8H zq@+V_Z|g_5Fb)ifb9dc@ESr$|v0x9wKru-5!@PcVA7d`8g z`DiriZA@S5S*tDBj_mBmuCykPz9TR{7}Icy+J$GHfe#0y=y&S0@fBg{_XgC`hm%&< z5Br5xOj)FiEM0|V)bY>!^%cb*p1+gX52ZPp_F)d_gdY`Os~`4V`wUgMr;VMf*OrVt zY*=`(HDai!a!M+-5VZwKX?G_WyC!e`jNNG9c$Rr$^^ib$YB9NW`baIG6W{PNa&F82 zlO5J9czv4;L-kVoO^Mj{)(7QN@5bfttwwbasr4VdqO@l!J@i=HeXV*!rh{Q^JDS7y zuU@@+I0>;kKT_KnIzN_o2VY?1#x~@Ct@o^ioNVXSg`VyXh+@wUKi$QiW5Q&DFH&&) zxz_TQzc@CeDd8|dIW7gj6yHt)39fLGfP6ekTvY~8@(bmYb9BAz;*8euvr zicpcA7{9cecC{*6q?qlcBcIBPPUN2xEk3b2y&Oz?aXJQtz@FU8b9FD?D5;R9KpmIL zU@yU{{5`Zrr_MfTFR>R=1eBpAg&jsDx*05|ju-T|J(#%WH9E_@%r_9;mYO2e%E_u( zGN9yAo*L@R00VDSsZvqd#wa?sP?Zh(iPxkp1+S>%;{N-ZDgrd;n1c)c;Wd>{^{<+9 zs@;W4Y%_GmClf{s-3u1B58?D72rZCrMiFZ>;+u8r;!WZ5N7&S?(>A=}L@bFK-m( zZ`QvwN;|QJzWix58x1Yr&({?nVZhF~mDUZrc$94;z~g0mX!TTqH}8!i-t=*C-l-V$ zqe(T#;QTB`zPu>9qq;e@EQq=!;gRM-O_L-w$8)!vsD<@u6~-=BmMgKDOcQl@<`2D4 za{?x#jWf=iBF$&%_=YX=k2Zh?YHy%{`y1ChAWWJq`$*5B6jH8!Mb{G3&k%R1b9T|> z-IYI&IYXA2&Ty_6wwM(8NlzI>?q1!Ja<5Sto$^fXrMZzLPNp{6=_@`EBD9Zwv7G5D=>zF6f5b1=+X+~#+nvYf=3B1iAK?Jw4Qh4Y#WjM_`aHR=qk!GJBFteaHT z`jyBA&(9~6Xmx47C#Z0Y9rc}d%6fFP_}mvPiyWQy*Cix?ib1-p?g*2AvBe6@%tX14 z=PZd2kd4rg@`>RJBDa(te6a(kG_RK5_!yx047@SHLCpsZXUCdlG_GVGJU#gq(I}$m zoZ0=oC`FrlrFMtx<`Y8Yv!AKLTi=dI2YR%@1W95E(sLT5DH|boTD>@X zG$d1gP7h2lj6NHPOyXprL4(+2w^~jQHxH~&7aFhrVnmA(NM2DuE>YY7TB`{L!-day zg*TLz9dVproG#w)Bqt_tBzBHb;VQtvw}(?9sRywlgVChq$Vk>C2Rrz5^9`UPhXk$0 z=iNnYG9AGvm_s0j?d?*d_eLQk3<_^$T9EC_S1?5eb>dtVixq0i2MfU>SVY(pgT*4_ zO5F+?@Pc|5`S+5%9T0HOJ&Jv=9{0ggRa^#WI7G-Egf9oep+n#Zg?weTr&&IUz#+rU zrA&@9NMy3^)RMjGMNMV|0z-X3kPv%3h9)Nv!)}yi9GJ;r6vqAvr$-|ui7C=}nFPhXUaN%1I08Hmw8?-Zi`;`T;bxtbwkS8L?KfwEZ`k za^F-hq+>cH4#7siBj(eoMg&bla7F1FIB}Tfj9$r=#CJ@63xnli-EK=GRU!B=IL=-B zeCacGEHXU$D;VFZlP;w?!C}8Vd%(a&=1I=D>FcCtk96l0?(R`|13{TR`+mCb@)4Gu ze)bor7|8iv4Br1@?>+yb%C_xqC^A$PMMjXEb1pIzK_r8Kih>G)WRxrjDoBt_krfa@ zkPH?kjXoMX;0zNe?~vTXvD zF5S=#6fH|XGI%UD)=m>L?E8#b;7$(#_dIL5w8ro3X12=UFPDoeV3TO z;KtA;+#p{nEbM(0<}*B!%|;3MeUJ|d2^@Khrs+hhHg3d7Hs>ia?*#$|BD~kAha1QB zdU>fV*hI|Ae6Y^`?7H~koOxp1R;4;mDG-p9>dtC#_nihs8H5ive9h=08xsh?>i;Hg~|8>^n zgEtZ)m*_F>QSMIAE3q8*rJN+@H?>vXC<_Wd#@4ZYEWD;s{p@{|+k6I`V(tb1%^*=t zmOzIs?c&&?vb-yxLXVgE8dY{;vK5OQP62lY@#SCIYSgS;&CVR^4K-W>TW0THO+CI zt&}v~*nT49wg4x+qr$#xCnaIIpf1!}9oX~n!6#cI(ygb1$-27%u-X-48jZ4&p4~8q z+EuexcSh(NNlu@-yB2Us=H1&3{Lqwf88+i~VM?$&JYSKI3dc2dEb+%yBP#-U?x&y6pcFPw%eBV0N9qjn@8_ zAogbGdcbt@r>kvxb=x6ZQD(GH$9p{QJ%6tRThYS2nWhcieG&D=FVp|Cuhm;V#X8bs z&DhsRz6y$m-376h>&(vdopFCJ@ne{UNE4(Bu`kTns{}I-MxBLe?OJPZR zZ|Y9qC5wy^K>gH_0@P3Y!7hNz|7Y-$AJ1Lp7Y}I`dunV7Zo)}0QyzSONt`gfEzW#{Mo+HxG0$^x z+ZLk4WK0^*;uHHmTdq`}nCI3{eIs|R(*o{D*rW$vb+>sIu0Zu1c9Yj%CnHW~*CsRe zLY}QbBJXxoW^$0GQT9_S-j!U1Xky;Hf{o0)+`^W58H(H{07O+N*tY^Ms@YrliAJ@C zYNEDZD{kY=Un}Xt*TjL~;O)E->An!wTiT~wj}9EHXFc_YnzR*v;134louVg znrW>Iwpvc#UfXJAzEx%4mQ;8`a0^lxd>hE|fAU37ZT0?#sm8EB;;{X9$`@p^YmauKq!;uX zGh&TX2>^Vy%`Au5mL(78oh`KTLxfu|w$>xl$b?^a9PkRMJ6rXDLgr`aIm0)RJB5JS0==@#X<{tPME+0~61{RkGOCpTZPOMYQ zr$UW>BnpK7FOx& z4)>DjUmxRZ)1yH&NAGHyX$zd}35C|2>>!H#BDQ3D4qMh#*9wZQPTg8_zR`^zyV=Ta zNWCq>@l>n312Yo4-5FV^tpmU)3m$dB7kx^5v{5a@v<}TlmamEezVbjEy?r+V!cil%UuSs}}+Gx3ZymQE&b2+Qr%j`bpmdI{D z;ko#eKzR5Yfw1V)O!)T#;bCBi^z~J`Q*RcZ-Vz*v4;Q;jFIDRuof|&uj;U69WGKQrBY zl`r0t6Mb5|4?EsV)KSKm(}S?Qsl!2ZNLoT|X3+bgFl?DkKM@%Mr9JHWOdU<;>72BF z!B0_OJCx1okHZ8ZoDF24!T`>>Q^bakN~uavR)Rj$o!7Y=WBO1*Ow}w<$*jguT-;xU z1Z?0Te1KE_uRVmB?Xld3F+U2L5L@^So7QfC?pqI@?KeRaTEjELB{l%3BZGgqd?07MDVJ=hws|}SjL4bgfqeHR$R}{ zy2Jx#;n4^#U|tUh(ohAiF#u@bQhumd}9fa-Uoc&SZxM+r=k0+oi3Z zc%loGoOwA$53MSfGLVczHp$UIT$pa`wike9tcnBX1wo_vEb>fhUsqUZC;$dJ7w81oBq0X5Sh zyBoSR_lUW$R2M#yU0g|EXAsj&ewP1SvpBeD6%S^lQzvg61`I{ueE$O)Mf5aS!bE;r-&QO>Y!iXTkw-Wn7?ZwOvk3 zi5}C~57#}g(36v)572o72puX!%1tiXa3Q)cqW5=r?+OplXRk*ojuD3I%Z;ecmJXYG zN9c@P=L`F2cJ2a(5~Z@WCf|nyB{K*o@N+<+gKf+^TG7Py0=I`vZr|;i@FFqEo?<;P zkucmsq>{<2676B*GL z%oL=X4Hs|ThPN(a66N#x%Jwi=VCFXNmt=Vml=BcRb4%6R8pkeW5+mOxIP#o=)2CT5 z2?Fc0L+kTv;0D55W@94NUdo)6PTD50JfHDMCupbF8@Tp|0w-A zUQ7?&5baqmj9{;?a6zG?T_Xr2K2ldsG)JR`KogoNy(S-C58&;ZvE*ll0pAKE?DNH! zL6EbCPm#P{O0Tc7F16L40TC0bEM-1ay>By(MKCfoQ(+l)n$`@r0GUD+@=#fTZd(NJ z69MR03Cj-`jfGE3$WH1@EYAEy(@c1Qu4{NbzC}Nq6M#>P3iKBCHvw%CP=m3s z&VGz!Ms2deJQu;Yn#jY-e15y|$gXwWg2rL)G8He%NH7n+cDB|Ep22zH!Dh!xwJIUoR#s&LgQ)6M{ zi%;d8jX;2i0S}lII!E0RjYEm_r8632q8(aN^P7*e8`SW_QNmxA<3&b3*_JZYN|U=+ z66s}3a#lcvP$Fk5O1vkYZcms%I8Q0UGY#i7*AwDpWO^78tr@6@{n}36boJAULN-fE z!`)#rs8h{u;lMTl$5pg%kH;|fDLDiPit@#mnkvh2M;O_gkyMz+yIkyAx)6BgB^Rc| zhXVN1oISFXrF{{f~6bm?N;GO;yy{PCA zjqpHp^Q_~x6CBt3nlrW)ucZ~}2~|h>9(<&Z#0p^ggm@^uIZZ;rEP!7wOsMc_|21a) z1M9u5j<-;~gi;8#Y|4zW-?;`@DzX_-mR9U%sl;4u8Hnh0jBuQvG(7kav`O*=HL43{@!Q6c#J38+B<#px|C@*uD4HXsaM?V+tg1~NQiMC<>n(kvErq8$P^5CFP~%eLjjCEQr4c+3P5{~7^u$Wo{ca0 zYb=6yr5$@$co5b28VGiGY$yZf!Ktc|olflOs6zc-#%HvI7@jp}mq01Wt%=~9xa6ZD z_r`H<;UC<5@7ph8sgK4YgT0rpC6P#}lxHE)cfd8rQrLG|K#TRG-A44iUs^+q&{()j z*nq$+y$O=Q!liwLL-h$n2gIMJVNs%q+h6&Z2AOqp@ta^fV4SQ#Y%KHRIBNB^b6W9H@kL_(IE@S>J7;#MydB8)1!88svW>}c7|GY57XUaup zP8Kc(s}=^`H1iKBD=GQ=0#L6{hA#*!Tn_4r>VnxMEDAQ4%O)5`$e7L;dz4XD=Y-XMBFl#xChn19e`Q}Vmy`MY8KqZ&7I*vLewYkHqaAY@8l7={r1mR;t|>xlVJt!fZXAl_ z*(N^Qlp_fiZXkjVTHV!laS(*~Y`#gvtMuvhXi@00Sw)On&K1*Bm@Jg`f> zA+89e_YyGv`p7%cCTT5Tge7EtipX!DG*v%DdlB4&BC#JJ;>W^9n30UbNcT~YxHLTC z5G)A<(bgtOls=9T9<~G4Eu231)m#rknuLNGB3^Z3j3k*W-oqO)R#NyD?z=8v;DyzP zD5lF>f}n58X$)~B`f%ihW*oVNiPxzg^`PWdg(1mPgd^0Xq%$`+Z{R|_NKj7ro)@v` z%m^-dve555w&6~y201Vxh@CNK$S3qu^LSvkErfehNds6!LGCfvUq&UHg=%bJ?|D7l zBO*5*hVP+7fUM^*ToQ)z0KFyF&j;EOrI0!J^(VbV0cg;vK`eeVLi7~rxbKyhyQI#I zK9jk8l>4N9dqKR>2>fYQpoDp$Z;e6X6qu3DWpL;!1!ad!KTe|qLnPAwPVl(l|*;n29iU4u>|)?2ACfy95TOafiNtP zq7ei_SeJ>0ux?=yfxSLpqOu zhCV8IjYX0P!%qps!e*2rJl1lkA%ZqeKV51sb|bVPbA^xr=0kFTCB2Csw@Exa#mY!wSxSMrC4s`TM+Iy@ z$G{w=Fc+lomBcX!NYoHn53C5c_&Ri(bfh2E>95#)NE+c8SUF0)l?EL!V_ro{?QmT` zPUF~`GN1Pq7)=w%48L$OKH6M7NBo&|cuG6(Q^Wx3<)}+`kUowOmU2Pw zO|jO%a4#7LKGe<59A{bXFGe!u6f72aWReSHG%~PR4Okv+){8W2&Clj&r@LHq_^@E= z^Zx00>4r;q)wj<;+OYiPl64n^E!R*a$(v3F{!o!eVmYO-aZR}}ld9VdP$5ypccCyc z3^^&+4d~_m3i_=okU7+ZxEgOO9TW|z#UWvQrS2GQJG?CzX>vjNSzY&#-0f!Qvbey; zCd5FD^!+AeNthHrJqFLY)+4s|oj2F#3d%V(*N<8-pEO)OkNVr@Vskj6pY!YHE3eNJ zq50X+OUQ;{Uo_8nDJhv`{HECD0f}yXIkIrBm*-`M>?yos(?KFv`>e5S_pH3?!DJ}>6;bubzGVQaXaVm{)pGMmy=rW$g!(?YHEG)TfY-?fS^Z7I# z_VCYTWb?wJ9I+BANaFThH&gAH1sB0%U$EsKo)HSqb&BvQv$9|pjXhZQCb(4;BiHJF z6ncBSc^%f?7gyqWi5)ic;GT0^&}_>nLe$w5uNVoQoN9|2_nD6&JxD|MuU6~`E4-hA z68q@fPj9!HZJAFK*3uU}k0hB)gA|)|Sg{H@Xi=HEBspNqwxrZ8IFXe05*MZs6*_@y zk2=w799o7{tOi{{eqHqSqN6DA6u4(OOLypq^KA;%J5$>60FV{j7#yos%eny`!@ia+kAVt%Txk z-@-X1x+_Yzqq}Io^xd27(`ON6zS2+OEW`bzAMDW2KhZDvrC*p~KvaG}9CKv=es@6X z$$(7lfZW7@!j}OA!=SSKpz4)DwY!5i`rfG54r-ycnp{2_zd zA$g@C+-UGz{*bBsuq2s)nNGjulVJ(-Ve^S|c3*~t>xXS1Z`~%yGv#0xCx$5v-}=at zce@Nj(S*CB6wf4*bZ`jLB}k%4 zA2GZmQ{sPix_X^#+!kb^T~Kw?RZ!1yPhxO&lx8A8Qu+EnMk}lF>+<}UF}4y_Qb>_!{`*l zH@-}6GQ8iGfB*5y`@OsGKRtPWSo{8H;{CBaU&+yXt-CLq zKlXyI4t(L^WW77Z{Dm0YGx+VKg#i$ltZ?H0hQP%7BO|WsZ;iNjoaw(6n7#>Yi3oQ1 z#a0IYud$WAH_bj_hh|ke9qe1Pqwc@<1q7xe(b9$946UcSwSd4xqGR^{XT7-%m45B(q-9pDnG;|<{bZ>4WmARORr!P+`jep|5Fi4ZfYrFu&1Wg+m^tZ`qyTp4 z;e00os@p#u%&yQ9DT#}>r58*meI8&uJ!_7U!O0!z(-T?9VY?_rY&omQYBe|;sY>lN z6s1H5VB#HF+5vWG(!3?W4$U2kyI_^eVPt$0V27%@69Med8FniGjC`A#nwi*fk%b7|T5i&Hf}lS-X0w$RZUb|Q(XKxp_2S6=7YT&aQPf2|Gva90>R)vODcQ(2{0M#ryP;Wv_^(TNRFQN$?3Y@JiB#;@?r`b zs)W!Dr956`9MM@$S-Vk%X)*-3Oziueu7gfH-H1VMRUJu1+t{rut)Wz9y{bVhy>Gb3 zV#k@|(5x^f6GGfJK5mjZ0%}8T%oZt=CuT=LxJ!RvS80^ch)}g=E6gK~$cWjlB6Cg{ z$;JeZLj&RXh6!ZQBY(6a!I6b@05{`Ymm;?Tj7)Om$(IwNx{-{M?iWf;Jm3xw#D7VW z31Cuau{$}rj~da6462(^AQH;BPtJJKvk{U3mQ85vdLgdQYuFx}`Yg#ur4!>vG-3hcxg7=gT`(<*gJwZN#4fdK&)=|SA*s?oMFAD>Hb49KUzJH?D`_z>nuoB6wDA2 zxP`&7k%CS?XtiY7FYhB>;iMS{GZBT9gEkWK8< zY;wUw?v+|EkH{Yh@iJlK8YsmUY(K&)ekhvFg2Z3)JGF(Cfk@+|G8vztwyETVpT#X8 zcGzKB`)DOn&x1i?j~hG&KuJr-ToU@w%*3+jMLFrF7}aBcD*e?UjRJ1i1*>T$9A73> zhjR)(KNjIrxzS>@c?1pEC0!px%a_H`7o$%ZgF!Bx!9fM*5V4;p<3{5i*MlEw%>BT7%g<>|*S{Jy^MIFR45BLVoA7ckxMEReZ?jKQ%+oaU<+|5s=J##L?E_bMK zBLU|WLg&&V#M>>F*oKObC*Zb0iQqB?Lc??>s11GJw1JelnOM2;fpia%KP}N zEt8bPsL0Sn{v%Eq+;KtPuIp#nYPXHs;F>S^#V1JYn31+~JMbsFYiVr2I#ml#I_$l6mCb=`ro=?{>s; zV?NHo$A_?%s@&kO5Xv2P3K?T^&fQ@y?;@1yJ%@C}3O5nxR-;}NW%odrFpu}IAusbH z7g1XrZ&^PC;V+Ci7t_4H9G`IP_V!MmIb$Oj(o%!0kmS#KJylZPAp;Z#b%>(}@9 z_OT3MoERz_=G%u5_C`N2+~$cdKyH|JB_d{5AwAN`nGPyH&kYNrt8E4zZsnE;C1xx3 z>mmH*BgUkH0G!ckH+*g|Tx!9FMxNkCaG#zGJ`cMkKg9Oe6$#+s{ssCSZ*28@==V=l zTd{+-U#Paj2U$WM3%QHH!@a!t)E9WT)7*SaRpe3yNtpAzd1aU9dDRM!Dc%&-Z1C#KO`$s? z3(|%=Y~}Wj#Q4qY1y|3>^=uD@6+bylx?G~9qqSb1ZcY+cJ|5J`STU0z%UHRP)j4$f zPI~^$M|~TVA6z%;Rym|<1TMX(Jzr7=DPMCC`*4Qw_?6IW!#nu}>Jw6NLMlN?hl41b zR(IisbB8MW1@A;1ra-D&asN{(R7|9lDoSR6wpDT1uOj0{{#{+sG-azG zvRg+uH^9zmN~b*){fvYKIA_)53?z}BQaXOJ=1d^^vI_qZ0k-i9ssi{Psq0aOIbr$} z4Do{(kG(dzxSHAv)YPBV#rLxFh^v=jg611ui&;a84O# zWpLbEE7jIm-mB}OW)9(0jp}M5_lm=9v@=dXGV7Mb5l(}h^t0+`EBWms-MeNlZ{)Np z9B%!TpwakDsu{A44A#zMr3sLtRWza=$GUS23e19mdOJCOJEIm z>1aQ^NBdLY8@Ws<-rPDqpgy@NQ6dg>ix)mTeR1hcsr~z+kqU$r2I~CNO3l>|3j@GS zNi7d7lg(ap7dp8qRhMUhW&HcvUo$Bg{8WGzr)4o*9yhvI1>k>kPfL-I12<)?I&f1S zpKF^^R07AbJY-L(cpu1?^b2w;<2-?ZsW5=Cy)k}d7$wAfYymneJ_%$EMMSIU!^Dq1 z=?MYQZs4Z8x4;+yNFR)9C;^P9!R(i)q@(!t4eq;}CSkt@;o~vPA zu@KGrBZ;ArwdgKcY1@wjm-@PlI#i`0yR8NpE&UJWiusX47avBXz10bI-1D>azq|MD z^Yd=_D|{=R?6F&$oONT7Q9f<~*?ALc-UY#Ik4UMc6(mwW=TM&F4RD7N5*{IDfF1V&x2*#y!8& z=Yr2LaHtrL>nXdDad}gZYeM)_=?5+efM7^*6x+;m#1Q3^NMfoQf*`<9)M<1(mHA@# z*uIvJqhsFG=OQ{UreHvPw9{Y!U3z|esB(d#T_v7R9fZpoW`}sewg6L)l)L`&@NO&J zFxHz}d#$hOox52EVWw;Ngd~~WdaO+RZ6K9rSR9Bm54_Kr;9YV@r~4Lq&QLs^WZ%M? z%5e(Ju$$KMeTzITV#ZQU*aN{he}W4vIWey>gN$bCn^N6xGOMsZ8$sz~;VsqEaSlAV z$<5uIo!$$@*cdAbKBBzzs4pCY3KZyVXckm(^mQeig)>Vb>xQx-ZjQed;9Nvrqhz-g zDX@T+6E@3fIz$y&1TW;B^}BDj!IbP7iqEOhu2E8q3=*dozAAz|jcQ;Vo-!tkB@Z=7 z5~Z}Qx8USRh;ZMzCOPsINjU zdc>n?(GgVXlWQ~cie1qd^v$jf*7;RKNzb#e>$?7rK%>+~E-mCZLp?0}Q}|*omR0v1 zERv-vxfC9L)DIlVpu?A8Rh!9#*ue&$VIBqX)%)u|Xv$5{($MXp8}9Qrb)w%-i&6yJ z#BtyJc!pM@O;1%5<}oIG#eTke$|ZUszwK^|Mpe!`d#75_7y-8DRG~Goy%k0QNwh zowF=DG4twQz=mHUgD6x~Rq;t5cxmJnI+m zw<9(xT6tFr9XN2tM)%)QixSrs-XxgGPuKiNz^iXSjhHk&2O@8BAY^Uj~IhV@r zh$6Rat%;S(`&A>|MIL}>eB-NU+_P0{ayx0iW=ZG8owuEn+AT%3n-U?M_|G8sw#Di` zeF=`)?tCA;cCq*i1a*d$Zwe$9fCemVO0a^TJmXYEf&pAU(e(zu^Nd$(fyns-nAk1| zix`Z*XAzHYo`M90TWg2Yja9UW1{Fu%UYl^;G)8MvsY~5UdC!coXj6@R5si~s*Gtt`k3~Hi`K?xCDp|gj`~LoV>5o#Rq<@hF;5 zKg3TGTkHOluHkXF8hw%jNXjJHsRfYx+=hXDGS8rcF~o_PEY-O%=aVP?^K#6dT>*m8 zS~nA9zM}`nJle68*y+~fLw32j>bsQ`?_~NkK*uZsag1|Gc~iA47yaZXkJU!>?R(9E-s5X)A-Edg1X-ZD;S9AhGFc zKs(*B-CKH>#=#$Pdk_QyWk};S(T{y1>AoNPqiWF~2SOr1yMz8ih~1&6XB4BYwEutVTkN4VUG8&IyV)r z;FK*@nBgvWI`--;{4oH3+1HQ%6yURGPm^Zg>kq7vwEmg4H(`R9A^fu~3wd_ys zGj@e++~*Owwqof|etRj(OGzX}&l3k>Zxi9WwH1LcK!`-|GeGumocZH-Cp&Qa+1Z8I^{7CoA>{MrQUrEB%Y7W8Ttj;S2g^6_m zbi)4aW#;4*wk>iCy)n66X(D3ZIYw-NBA*^7=3ky;Kz|Sn75bZCDCs{6hSK;o7)tp+ z6s)0rz66H=`f~Lx>TEu4t6-|Ucd_g0B;+9VmG^$ujoFrnS6j1f*l$4|;74fNc3_Ti z@0HZaqO5mBVCUn#KiQlA(~Av=#{(|56RxiL{b5s}$T#I_o(4h@hc5q}iw(Z~m*fzK za$r#wzGZ|=aqQlMJ#ktHiPqdYV&h76bQGIWE?c(EQS-%5SV|99801pw66fW)F(oGh z$RWSZF@ktkfH}rHX1A;?U{MxyX8@9q+Q#hplHohDX%$plXabAAfIfeyROW}HRn(+8 z$al`4xao3n*9AP?Obp_4l*F(Rn`7ySRlcLCro(EX5wQn(XsUWyydvauD0w0e`J(J$Pn+Ukqgw*4ou`{!J@|)UYXpUp7QgAmJpmv)JhR z?e)Der&fXeaksaQ`x7EX8T*r~Q+5K9@4Y`WNKV}$fl5x_rQd+hgbL|;&R!9N{ zpJ5e(pV!L%6jt##X6k512=ALcbz9)~qx&1VHjp3W+64V3*GBpea&7E2e$BN}`Vakn zh}rb3-Bl;QpGBvYgWm3I$N8?} z@=t9mfBgH!Zk?o4UVVO&PPsIAliCXS{Z4xTd+N+Vf3L3i)89|%9jCtBn%SoWJ3CQJ z&c{yIn-&yrb>QhH6BQd;r}((Q%`dfnPm>rN}l@(*4hccTIVAZVFB85ua^2A7nB~hwesN= z&qm1y?1eJtC^pYdDcS;qz2e@;W~eB^c|+5(kw_zKzEKa81hUB>z6-Q73HBS6rYyc2 zRR#i^q$F!Ct425`o~%Fj*n8{kA6_e*L&t-dunLwz8&>iD2qM}wZm}l8{CEKjq8HWp z@UXE<($d_o`1t@;<{;u25y-DaPT(&3g!cGA#AiD^Wk>*oEoNAnQ>V(Wv|nI|lpk(8 z61|_ZVymmvyxgA9t32NYmC`2_c>2amAx`X)EK`81t}X9e$>2J$+5YzWz`<#;F;j?# z*A06|k1Jcgr8*tDEI7Ku_Fru)?*G)b@`t%LfA#n4l4PPL?-A0}{um>uQv2+4!2ja> zn;Z5RpQ==y>XQl|cnE<%5m39xj<2i1OgCrSV#Rcy|6nfgm;c0aDxku@xo`of@IQ_C z0o10GhwxFF1NjA;e{P-peT5%^7dc`UEAyyRIt&(|!bpW@=UvykGWaAQ36zN0I(YoGc6SM=71G*fyIBQbmGuEfex zX1j*w^7Gf1LYK3uYyrUh%M-wSL5OBvxUbz?U)8KsVm68BD$Hdz;r*9@b@J(GsQpu- zqn!Yy<2CZ6qUxRlKPJKhF^A%mJ0)6jdz5iYC0&u1b%57U<+Ohi)#dd&V8V|i(il%R zeJl*^cDHt!pei=coXEc8oj&qyJ!~VeY7v4h_}P*k0c=a_b{{SKhnh8ckxuy@!ohsR z16KZGb38&fUqtEAELd{?IQD~-td3YW;*z$*wl1k00x1Y`Hbplwud;6|k`TIewo5gB zL=)m_%!nxMpQd!x6?=R1rdyipNengKnHoehzqeR7D-@SQlv&eSz%YgQC?h~{RlBrD zk<#>Z`-n8Q>&sz>S@upve9u4x1amaDH$h%ZQHY>%!`u*`^j#fNnhF@$b(#)-z3VX( zF59F$iwqm;L98!W78x8HiNR#o*kuZJXJKdco1$NHEx|JrEp=o^1mmg<*h{TDH34A&XM$mw@Y0c1^S1 z`hC|h>XxsUbZ)WTGMEB!wZ#$|Y(CI@d{wsKVf~f*S)VJ!EEx1Qdc z0xJBjDh|Qh&pWS7<|UGSo09jxO{F-gCVqQ|`I9i|)>Hu1#2?Hy|H&Peev)<# zwy#;&=hu*fgTQQ)`}~95;JH|T$_t*90j!0VKsB))U=CChOXuZS6Kq(|v!?=zy~=YH z{ZM{jwy7i7V>25eUFZ+E-bykpq7e8*{ZY!)wwY&C8G)rFFvrPK67d|cl*A}~BiaiptZnp6_zGyuCJlnQaD8+byMkT}le&fxu1Ryvw(u z)PQ2X${dF$E9E#V_xY0`x-r1@c85MUD~p#tFR%O^U4BsuCX}wAWLSo-uzX?VR8iGl z(y149_*$n>4b-1$i(5GJX-hibS`^`DMON3!{Nh#CUxr)?TQ48?SY3ZL6?9U}pHve| zS%6}{R=)ZV#a=5p2*YlSth3N@jWQ%5f8HaGH*NpH{gYkJ3wesV0HN31&SF$jl=Kd< zO$3)HHtYKxDWI~S4soEbAs7{rRBjd7=pYUgZDc34ZB7Yd!A%9$^wj-QZ_8@|&9cQjlzL612&b&1s5k(!Pi05voBQZD^=K7}2Z%0h2D^5=TfjV0)S(i|T ze2nbVVzFJND@hq*ZyTn;krGqlh3=y!7crS0?w&mpTod)nPhju;DT+MR?(zkA&W4?Z z_Pr;NKcy9Z6<8c?rS)?jZSD&^H5u(9S@QYVsHb=L!|=7I-h1!f_T1eszEApl z^4zZ(UW+d<$4C1gfB*t;8Ww>%z&zgcCDcv>(X^rQWne&lei|+*c|8F@p1bY>!hdl- z9C~NdpJ{xmDut!Nsn(yFi$DEUg9wr`&nXZmw~wScQ0P?8rpZ_GT%#jEo_h7G8&d5Hau#-H;CjsFT|j?1@+(CSe)wK~4Z`y0wP z{&^1~qpj}eL};7bAf5k#iO?re5wo3uL-scdjK5Jde{KB#PQ8OTiHi6gN#vy7;nmOu z*y|oQ5=ht)G29w3$GQUxj59BRsED4E zsEDeQsEE{)sEE*)Ha}iq{Mz{2t>osMH2wwUD=Yb^#1t(hsn!6@l2m)LiFm#M zBOE&{K6=`H)v)?d)1*+2D2`vYH59i1F(66;EoI`che?#Uuw9nKIiIm+I|BXaP{!i* zSx*n|l8JpKtDh`PawW1eM{|G?x5r?O^T)zx{bsL^mgq>FqDy1w`lq=Uw7&blTiM=(JbZD;&Q& z@3F_FSwB4QFC-rOeN8~O8IYmMFE9KbOlAFUVfVl3ykDqffUg+ma@Yb3yEkku-Q(f3 zHjlJjxN##jH_OttXxYlbv5tr9x^s{1q8ShwmwgR*8?CS2J?7!Q0(9C-CMTWt<&#d^ z80fTlF3xG6?EU;!==%P=w`}pQ7DS0kAQf?oUG*g~`WXgi_j?aBixj@RgS^-R8$}@6 z?=(e7o+bM{2$v_4HIc#nBBNhgDU%N?UPBoQNY#*+ttoCfeMVN{y6@ym50ev-s;u29 zi&W~@)Y6xmU+E;P0Tq@)(HZ9`KG^OU7;n_~4|M|3D6K0_O_cXdzKcfr51sd45@gLD z3ha$oz7J6yy-x1G_qem*%e(^1w|djxuMq#=O?e%G11Ya&*AxVRF4yI6q`cDpQOfH- zrLU3TB9nx@oSW0d^#1xWl$;5s3xCl4=0caBq&W1SvaV_6NLiVRy&>@Noe#sIagbpy2Rf)>~u>l z7VPxM?XQ*k?H%)f7Z5~)?>ZpznqT6CP5f&>(C*u>f5Fc=$|s!B@8sT}V^Yk&*PGsI zgNOh&vDAGPxm0W6xQn`7^N+4EhR>zkuA7ujCABL?Oa~kKciBHg7`pH!ejkYC^8bn2wlH);1Xuq`1i#ED|8>anZ`WFu zc5C9xma$rDrzT^KN_L{+4Xkpn#Ot=qLK7~NzqJf77j1eTdokhC={P$5*2U^qH$j zF{osk$AC_XgPon7T3FEDk(XbwcPFW+Y#Z35dNz@< zQdCZ!zh-@Wn%<$LQ?2@OX*@CC`pblKtCoc$9$}BmbzD~0E5b)DU=@LvwKl4Pu}uWZ z)>=#+RgdNIeW>*~wG~B<-$!3m`w8ENMii{3qFcDzz_;1pPR5U{C&U0ma0u%xgXq8} zdAGZd43<4k5#>s2rXw^=X;I^0rBq`>d?6&y=ww*T)eRADW z`^>QsaHodHI&Tn?5eX9F7Jv<7l)X@VK-YRb{td{nR1`j9$tVO5 z<`F!)m9ttZkq3)#XIGf?$muTW;k4`?ish`{RK)oiLpFOr(cZ4thb-6`xY#Ms=+5u7rJtwA zF+a{${&Q_foD?$L*5Y3v0x*aG6fpByFRIx{&n^qbRZqC}X0+u8W_4yv15n{Zw$|egC!V%@_+Y860K2?% zLn;4g30o?7^RM+tiLDk^EF{HC4<5~SE1{Qof%HJAL@+3X*U72oa?}f6SQjGQv zF)XR@`Ty2oF8Ra5{5VZkjq@>M zjHbdXgIEd?qWQS-cJ=xA^Td`M38n_t^DFmN<YYF)eXuGD=?(Zd2ygnvx)0M=GyTU}#x%8V2GCW2Y1>h_H9Rd|Y^jP8i`Y_r~d7d_AT-JBPc#lH-DeT`mSYV=_1A zCrR)mG_Rm+*zV;1&*MwS-uRjx>)?L@`j7Nj_^N~Tq#WP6-hd?qnHbR}+4XWNoyL># z!DnXGg<$)eXQqyDSX9;uyf>;Ll_Vc(=-RbD)KV3PeyGC{u(_p-+2%v3;X{9r9{ZU} zuNl8Jqqv3kr}WsrbpQX6BsjrC#I6oBhg%Ro_owx4>k=Yn4_2P8<&u+pW=_zqPxe5P?syOk@FSGjNz-9RAT4}Eu;E@@; zV88wnSfBgN#I4BNIaP~4X*uuLiQ9J`nXe_&UkF@&Silbv4+d292^K%mwB|BEMHiwd z-R=^X-Pi374HE0^mZHfkMJ#_b&52hcxogv>Mic7R?=RTxmZq!t#d^@-gNFN%+trAd z$(L^xTD?8>dj;|D)Kx!vB!0(<`oAXOXGF_CX%aYdEwvN`{-Gd#-IH0K(wveT%uF!r zDA!2@`|aF#WV3xTH~Nz%VJYozpZK7E|HS`b#{5rCJSt9CuE1KDe1BQH*{kkH8Q_2C zX#VIj{=bs{kCrLP{%Va{AO8PwG&dX1vtnaVa@Bwe`XXf^y@jqvvy$sb+B|2OaW zql;J=*hBjhA(0c4C9IkP4!UZ8s1s!Q~R zhHJO&WcbcwfVpnHlNzEF7v{^L3AubW5X@bazVkqDxW)q(MqR zL|UY~yJJy{PU-GYq(!;~K}uxZAMTkwI^&+%+db#pbI+as;f-%R&*xcqH1XZR{`sNe ze~RB`k?{C0k{)>uV*WZ7zf2-a59S7UKNeOMpj194M3)Er#pKA9XKt}(h zqWHH7_OUiJ5dP7-Nc7LcqhEeAIhOw0 zWZ?9!VONL)%MfN`-EBe9a@S6`G5R=~WfeYu>Fe6Hj z)BW%J@b~`6ySPZCTvOMRQ(8OyFNEj+VkiJqw<`*;$k^I8>`x{1FU{CUT|q;=xk=Q3lN9(IysW&N$hhXA+%Ha~L%)CGPR zIJEM2fkWHl-vtiwe;YXT4J=9T#h-#DS#}>P6$3_2ZXK7hYwN``y4~4p`&b$W_cbgD zRb=xSd7W3^b>PsSv5z6r{Y74y+x-Fv97@kOy0(vL^HTvjpBIF+x0Hn``Qrd1XSOD( ztjG%h5MdB@hOIzXyP2)Q&;pdaHVZD8!0!AkS(JAhh)>tbJBkPs#kZtZ7sq(L5(VP1 zB#BUxrq5H7R08Z{Y?{|4Z*(porw%9@2L{2GG?J$2MeE6kdHw4tR*UOEeEL^F#E*q_ zbk^)F40i-~A)A}IsN(WPlI!~5BA+C?ZA))FPX;TmtZ*v^&paS-$fKxio8j5QB~%^5 zMy|!m+P&&ZeW$cJI$@{m72@ZG@(z4KrqUjoCbEhF9&56y5ot!U$_cH{q%~7!#iX^f zF3*yMF`jgm)~!y_l$EXJTkqFz*IFlGL+K938rmAISuKwjiyvE_@9(f$%p^{3wZc2a z4~y*Jl|amHvhE%{0`kWyOo9BdiU-KN8i(Da@47>|doAY=`vPr2ANy@6OonaIl0rWY zn(7?IvE0=Wk^+t^PDnqX;O&b9goRIJaL{_xOF-lr@;AzOyF+(wCQU# zZF73DD2#JV1uYVO`>CzG{Hk!1m{J~X%kn)JP1{yxUJZv)TUWIw?@D=9pMKcib5(v0 zW#&`z!L&OAy|`0WuMot#f3^}S!}3=jbzP6+da616)<)V(mW$2Y1iK3$f2{0c`}Z3; zKU^M-$*_Joey#oZOOS%$J3{o$@ue@PH=n+nV4p1?MrB?z-;tEZ6PQFh-)hnw0^-vj zv?>twW|VT$&p6dy)w$mkgAa^;x{B!?MX}`8!H$JMiDia{C;RHQEQg#TggPZB6T(s` z7VQ88@_Z&oVg>TYluG<*JP1+L>mfk?m=Taa)@sc61F~ewA4VwvWXT`#(qjG|2_5{K zNa(b`A))_^$da7~+KSf>(m(0GI{W$X@_%5&xTW#){761SbFRTZW8|mEzeY#D_I$^P zDvV1-sVL8*{6Op`nZcODsKB8O|Dv)Pjz&0thK7SAmI#vrh-cnDW<71KRHq+@XNb)Y ztBWZ{G1d(q#gJ!4sIm)4K?JAXc;F2$@MEyiaZd^dJK};NySVw*u zJ{-8PL`?>RKQA3RP{i0(GP_+mQo)H)qR=;6#G$;*u zSZdz{Ly5)lh^2`R{7O_|vw8_dn}+MzNLwk_ctCNPZ6#J$IOjm@GrPu}DH0MUD3*7J z$RQtYSaa%$?|$70K2wS?R2J?43wF}_ptI0GT%~m}c8;#I->3?si?nX)gE0Q2w*wEK zi_J&N%FPSqJ~RS}kNs?Z`8UbkFRK(<8CkJAyIu zj0TH<5jsRPSiKMAq)eNBgm$qBIpP+hgtAE}>ZEz?gElKpJrl@U&rC46hc089cA7qy z2^rMIPNH+aKGt&B(QR$H{A61?SNWzJ$TJ=y%Rsk2aGjK#6m(foubmr%_4V)1nkUQp&{VfYwJs0p*Z z6ckcQg7U3O5YqT5iGi|Jg6p}c84iO4DKu||Zc5VWj?<{+F6Wl@NhNXh<7isMPKDQZ zvm{sCeSl_yJLuNKlS~~ZZlQ6jc0IJL;V_(943BU{){mbiC)^D!S9VAh<9@X-ZmO&l zL+zBXn7{UfAe{z}B`*$fr$Q*8T8Kax#*X?Bg8CXnODSbPVWds>zlw)GRF z$&z_Y6w4Tz>u~Y)p=(U8{gJwjR0)vPJT?kgkO9U~Vjn1`X@K6{jYHdJu$wBLNx z^WrE227S}I`8}#nZ7@8NVxd?J5$0pQ6~c=9bmz+z7>=P5+0n>|-T{H*t<)$p`QtDKltlc{<;M*%w^tn)n`F1P$ z3yweWC*EGlAC+HD%YRpX1%F?DeM9vP`y18w-^l0s*7@ocX1-Ut|3B*O{VnO@iMdiV z=wltg=UR7Fj@6jb9*Nd8JHIWc>r!OMZWvIs2uK(CZv$$t88V)=!mWIlu1mkQ6lb-! zX#7vs`3*Rsra2oKBX?KAGQ9DVQ#1XE!E_FREZc?lfV*ewaS*`Ku$|Qh)7viCY}4DM zc``7VT_Kq&ON?j$9F3ejK3cy!VUql`1>vtMk>aZnK&3LxIzX^W6sc%AxBx!JyV z_vk5h&R8Urp3FWx>8Ld^YWa$>37Zl8a7plumiJHeBR?ueIR75rI{Q7mmHQibtHQsp zAKB_sQoim-egVs9q1%1MS)_nUzv3(awmSZ`6&&)E>d*HhpSq<0Emx(P5uoKln!VO? zW$EvXQQ^40q&Y>u*@3@8L9xF9|6S$0&Dup8YN+7U<9wrdTj;Q$z57tF+}#n>avvPML`G_L70loCjvxJ*e!KTp#_Wvc+= z-jlK0f_pWspNN@j=f%y7Y8Cp7CVI`9sQ-LBo|{boovD$A=gE3?Nf zm*CpRtuPTMkK5p1u3NVwdAZnkpjp=f_D<~+!0sl&f+EtI*LFcLE_5fXhacV z!J0NvLa4nO{zBT9&JQnj(2Ma`t{juuCpI-Y=|l4V7f*^8qdu^zvh|WDDdYMxY-_H?={KB(Ei;!@7yX=8Kbxj{sFoxhc-(x3Eo) z^aSWfW`TYr7RW>HtGrb?X3FA`)n`m65f0=b6E;1RhK2oG7V>|#asNCT{lCq9^e?w@ z`2mXjyRk(y_N$3i>nY9L65*m-ZI%VL!$vW~B2N~#%x(JJs?0OI@CS4={fNPZR)HUZ zEaZG{dAi(K-~57{IJ1i+o2v8uo^ zacudkuN>!pp;2o}HtT^?-(v42|5LKgYb7+N3>>=VsIK@_nLzuKtZsk6`D%iDq|El9 zz{+|yvPB|t&PIZGL=@n>@fN$NTiq>x%1AZf`tHRQdVPj3rk(lwfYuV>YgD+nk?2l0Onw{72#TTf&Mz zzw^_I3+4U&M>1Y1J9Pb*BT4VN{y+RkvVV6Zf4;i-(dzF%rjg$|lD}K)GlB@f1SBo< zT+|J}TSFJ}n}qY5=AWksV1c*RZLeE`l*d!ZdS6?DG?$ZxWUlGW{(=nuWW>VE7c|MU zSF_RC4sseBd* zp8O50>d~1PfM398qrP1WR2N@1=b_#vuKDgC$Q3Q$d5WO8Ed^sJxn%|1**9Mfp6hp8 zd3+C}AvyZHZ6Oh`EwuWnZ6U{x##KjuKdu`1eq6=<&9;#7+wT0oCR*he*yNvI74+VA z1%LqAUx5I|G)4drU^7u2fK3`1i(CT%yelOCJx;6doVLMT7=rj_TWinsJik$ct|#w4 zRL2ms>9Hi^U+=Rla2}4NQW0=H>DT9+Ha)`3@Wgl5=U7CNFU$%>d0ChpCXF(m<0o%L z|2US#eJj5fL6^QDb1HwhAS)h4k2g0Nylquz1*Avj@1NNhQx_!HgF5`Hef} ziJ#;dAzkt`HWhtpE;f}z@>=FqWA{#M{)CR`2c-odki%m|Ht)uMT*Tf(`sbZiX@KfZ z_RHf$Xo<8Gv`6fwfYWLQ7D0WY`%@sZc{%0tJ(uJUSQ@9ZP8mcaqOKe4 zVY`bB+0GU3j9vJd-nZQjKPwAnwX1kZb_-y+O@ zz8d<`*Yh7M%5Qx=e_oCEUtOU4{$DK6+xcFHd}pKm`D6K?BK;5bjXz;SDaun=x7o_G z-|jnGOKg^sSWjw_T2bV;sC`NT^o{f+K;Jk+oaV9~M4aw^LO+}Ai723(;ETUa1US!= zi2&z0gAPZyv;Yy{Jl`g~cAgXFC%ecK=54t#Fc@Wq{~c*8?f=%XynfuZZGKD|%eti= zD$ySJt$67_HT*xF5dOECQ@-l;f4hc1iU4YOK)ht*=pQDERZG8N1F-Q5tN}KjxfQ_1 zqqPLsc$?Q0`oe1py~Q&wO@tQ7O7bPXun$QwUEzL#O>^~!wO_#GhMb4m|$NwF$_Wj1G5 zfb2SNGE(|oS@H9?;YaWHf7~m-mKBD1F&Kh7kpM-RBq@+G1n6j^Lg)v8)fv)wAb`Qy z?pulAxBy7-3@CD|QRKuyzs}3A$*6xN!N)(3>s(9t_!N0PalaH7Gik7*Q_0`LEEb)2 zzB(y2+0m?eNMsG7zLEa!R_8{>l0yz{roZk+0npJ3kg-F_!J9cF^nPK9kzYOC`~Hf5 ziFW@H85IX=79nch^9u%Hr;GHB&g z+W2)=)LY>9=03DS;XwzTGRR`Etyi#2Y+ZyOsM)*G1XB-t*}Id*dQkPyKKAoR={s~1 z0I~8446gGZ2e~rvICI9PN}LoI_jjulfYsS|jJ$s!hj71Kci#InW%SZuYsi?YbbaPg z0kBK{F(c3SJ90=MZQ0qctFymK`OM1zf1K++Cwk^fPpr-K1UvWVN~z&i?0}T7aR+*g z6T00bAR$=t0W0?NUMXO{*>66*ry|haG(dCM-5Kohv5aL@sCY!A-0FBDNB;Sze8ULg zqS?o+R;P=8D4yS;7Jk00`cJk0hsvtoqEiW1nB+!D(gZC=$uMlKx`Cw6O`Y#4K2?dm z58Tc8$wyCf`E?!X^PLQdfxBrDtz*XjFn`O;;ZbELfLb8_3iKhG7g$T|G>hG-F51Yf zSCqiuvB~eGPWR{0-4q#t2Ny;irfzNK)ym~^?Ty3WHY_BfpX%2JUE+6WCLr4^-UBzPd&b|Ra$?_LlwgZAm&u(k6HmtAjls}l6 zowI3z;)AqVXG~-A+R=_)KsxU8FtHnAvI-q`J86;vJ#$q}c#oP36Nl~{TARZ@I_vIG zu{G}@(*ZW~yHsM#Da{T;d@=|i-iKx@jxqcMu%HQsrAni7A6&i&SCM?;CfH`L(Cw8b2k%Z!(2+Q}SylF5jGqYN@lyZr{UTB_?# z?w+fH2i5uM5)DE)@B2V)Q@7<%uWGlINb4@w)mU?`r)!Do&QI4BJzO_sv2f)Dzsu_T@ZTnlU;n3xrT&04e*4rU!N~IzAdOq`0;F**SAZBHUI$=> zSOD;)GchlK6+(0cutFcNu|kX2SfPPytWfPWRw(-#D-?c>6>`7E3YlGFg;3TbL{Ipt zEemq*@c`M03@$)+BK~!DBJ4DfomjokZGDXu`jwF~w@})F-xR0ZLqnp?tw_Jaq}O%t znvv3is8s#tFN~B$0U+b(FR27d#v%KSltsXGz1P9`L2-Y?npFzWW_^$Vv{~iifHuos z4A5rTw$;`S9N{?E00&g{c8z=lpg<_w&W$kAA8DtV4b+9)BVz^q;m; zzeI4*+PSy);g`ZvN%2oBwkn06XVClj4hiQIHjAhX@>Yp6kO-d41S1 zt`Gag6X39~*8mJH2Ey$^ujc@E?i;Lr&+&CDbwOzKm7!&|zPoL$u6cFMP{jX+q4m#! zK;JHnUv$Ggu04FM_o4Z3q1iuNhkWbv|Bb`0Ee(sz+{@(jRAOk}jE!#tG&Cag0qCN5 zI2%D@p4VNJ$MZK^w0n5GToUQ_NQLlXr!=7a5K29@#Yxow~W!fQJktfA0Bg|~p zDy83L&a~zGE{X*P6Gjs*>nGF`b_)HKd4maTCIhK*Rr$jyd`{c*{82>T!{iKpoG$^u zME{yEF$p&KAC@n%a$MB%>e=}2yTObI{(C^O9hu(XXsgI_+!X>{=7S|P3qXJfSONh7 z;@3Q_-(i)OP3LF%Ap_uPJpU|S5qhXN4gUiHC}GhszX}6=-m~=Sc0`f~lFOs<>MngF z3HZq-BUE}Cs@>S$(Gt8o#7~N9Xc} z8cDHr$@(eE#H^zff}6vqXao@|w;4(*PsBl7t7!1yc^K^0Rz-~*b34@;Gb_qPd6kX5 z#TB~a3T%DGO}i3}#@1HVvGNL7;McW-i6U08dgMG~q#wbkly0c|0$#qHW#Svzj0Z*D zSIDL9+l|HcMoS0uD%|r%xM8ojmWo+ywZeI4!QCvOY1Y{y>P%j}%YIQOohkLn7df1Ky;g_5~0 zcn_|H@hU=voZdBEd~q1|;oXnt^xv?ppQoY%nyPT~^eL`kypd0nqq_Ha#^dmr>(&bs zxQE%(tAsDsAg!qvyGEsp0-F^Z_m0b|Ps?s?)a|f%thEqC+&XyLgoDOkk15i8IHvca zc~+}_0+oN8uUz=`xGOZ4Gfko8a?&`tN_cm%0Q&swHHqE%xqUG!RBh=dX6wPxhSzJp z-Kxv;FK3e(FfTeND=vMIE`3$1ts3kYSec)@9n?f6O!XhrjU5`=D-7=obFml3d6$?ES;M?;o}l(K3ETlaw&1! z`+EGls2<@?8WU(2O0(7;hQr?I<+(&)vY|84BM1!;$d#?Zc8Q|U@5-TsX32P+GZK5@ zWsslWtxRx;aEsH;rD0r_m67%%^gez^y&+qrVC)!Em?}$q2U%VYV?rmNDUm{5P9a2; zBUX=OZ4*mp(9mTyzD!?647@pL8~{%uB&1Q&%ob|$a7DF=E1xT33r&IojPO)enkzR7 z-9qUo@wDRtY7+@RAvSB>ad=KrZPT%sY$}Y;Kdp94?gR9T*RHKh7b1LU&txMlLe> zIF}B+NOn$EO(q|3Lkw@qo6D=4#FystNl~*q4NRtA92bb9gH>M2zs@H9R4A(mR!bOo zoiFgINF@xcQ6T>YtosRke;BM)H}Iy+{Zp|Kdhz{U`Kij}PbC(L#ky|?rfM5MmD-0D z>z5-HH_U!2V{(KwM7ST?a`CC$YoYj78pVB_7C-Wr%uEQK?2%mzE){SOCrs$?ll#cJ zRFXC`nb8-{40AxL(#gmzB#K+dqg_1ng-b8gigiC!)YgnYWByKu`tv`+k4htc?EjTN z!sBm#1Q?7z{v*&C`uzAu_%(58`6i$bq28i)R|rNLiO~p87#3OAC|Yx!xKtmBH?kuL zOL!RnlvEI=!$O4(_POPHN=G-9xe%jNPN-Pf@keFh9W<`Hsou*0>mpavCYWh1`#zBZ zJC{XfnUOs}SXb7FQ+=YDF^Gva}8{W%dRN*MV|*)m1VWG88ZEQwC+jjVMRRn%%9*)r1kf**7i0 zEH-7#SZ40eW)Fi>e&z(Kd;=@E-;@~l85707EXA^Eu%npuk^iL=3*&YrYFX1~{LA~T z8_^#lURAFH{Y)mL76~eD-cK)MJM}I=BEf6zX@V`yvI{vXiG{IqS^t#nlxHqdj3Z9?cHgYi^DRXB+;lekc z1{hrI@NsXkvqRo`#_qz619E)vz246s+HSI59&`~rzC7%sEx-KueFJY`VfIS{FMRs; zC9CJbVd!H|abTr>b+KFb;p+3j?@T8<@WBergr}8lM*-5w2!}EedHdS0)5*xuC=_Ky zVX>1B{E3NSQPlB6@f#xv*+MDMvr?>)Y-4s_oFINrfbnG1(DdyU0;&1Hqix zlUKQ2S?m=-g3l=N%xSvm^GkxY(1`G>0xOsuv5gHcv)elozjN6#-;jpkgc1BpU5RH= zmRakI&`uA}3wbEvf<+~eDqE2yW=lByM7=)jp_B`hGPp!mja>wg{Pb=hs%E9+Fo{w z9IwmGBCu#(;%4;i7JTo{e8d-GMW^Xf9eq8VvYxs26ibBm3bStPwc~~z6n2A^FYIV6 zZF#ptdW$BG8*-It;W>edd9>?QP&EJ8fbf_YIY7%c6J%`hh!c~298MEYd zeEx>q$3)74;Ki1X8-+PhWz~BRGL*9{qc?$tMlWa#=@Pja90@ZW?s)Rxhf=X@J`B?e zstNOFjF+W~&>}ip@uwcSpA&|`W11-{yFG2}C*0Aa63c|~G+R^j20fLZUigzi=C$Vy zCW%^>?*n<`6ZzM?eTD6%nZ4?Z@l~wHoh1=gRrmb7yK*Pd336IsV#l-RDBxHxBCEKfTmQ&IjDc?*XKInz4{ zsQp&vrK!=e#bsIYFZ0VAYA*=f>f{?EE5e=^l!y8wkjm@v*6ydgy%weHm< zBk8r^kxtB}9D6r3=*mbpp~7WmhN9LbRxgkH*W5CYnh;&DiKEoFDso|<50d_wK8Wf^ zeUMz_|MS0|%Jb|8qxY&VP7YQ?JXrxuPsh~$&O4~M4sd6L9Doj?RWQn&{qMJ%rBSh9MI8CGEwE9=$>TFj=Y5d2;Zjx7BN>EGhUaIHC z-4AxlbrSV8QKrx_it5JCn4S!iew3bMnoPyezwYg=64j0Kz#}`1Q(ZT@o7M+a; z7Q4l*c&3%m*mWe0b;%Hp#;u&pbe<)V!!!17Yz37@5XX#>Rd@#W6X<|NVYOX;fv9Z{ z91>W(PHtq7c+WHgCwEsk0CdQd zH^DL)29XKh!m5SX?bw+tX;dku97k_sQb~mt2Uho|eg+FlXbtYSEwos(8TU)VmX-b6|F5lnPr}AJn~|PYMCV=R1c(FJ^E! z`k{%Tl~_3HHWg8Xm_$`QTm2&Q|9V8FWlXW19P9@Ay#-{QOS)t@~Xc5$eeJOH&wcdm!C{^sv1P) z`66Lpu`iE;kH$Vc=UHQayi0$w>!&&F9SZephee=17-b4b^}P3q^ufXvRQKVF<;$vQ zg-bYCq|6Rh{0jI*sS#Hz+;k|6tXT1x>0PB_>Gzl9SazFAND_(nS#w|BL#{0KrOQS6 zc=ZtdS!_S;8%V&u8dD|Lom7Eq|#+VQ%%2enf z6)$qE0Yp_HnmYF`re!Z^F*v3$wx0(~QR{ozamS@nh6jT}R@JaFHosY)!L=V}gaV#O znd2psCBK}M#>e=E)LX0x{J73&<9FJ1d+vBOjOSj44}Lmi zt^1f9cRpW05r@^9Z#SiTS^}+4N7l)BQg>%)Lw5EYs$@Ul6e-JQCY%wdG*zT57xKD5 zT%;1+j68?X$)Y_ziFlmpN5&nuuIL1wpu2c|AK{jvN~^ zL4_4+!2p%ouAZYVX;Yh3Oqz<5{mLMrGtn&?+U#d7rFOWpu*ODvjWIze;#zYyoJELGOIv{zzqf z-Ow7#v-3eCjH<+5&^kxT`H+QDRr1@Rb)Kek^I`k&s?-h8h5$(-A{WHzo5VFRvMUE`s4rhJI7Te1r7iaC{&>5J5b62pC} zG42uh_iBjLOSc&+8{dd}aF?jk?dYgOrii}H!~Xfd_eUM49M=EBzjy9$fA89Zf7{>7 zcZ&}S;mj0WKeI4>dWd$e93{hZo+cdb-yU$sIW;>h<~|KP(1i*mJP?A~uy>1Sh-QcJ zfXs^WMfK!2UgF4TRCG}dGC8e9TLV;pR41CMAyLb1`b`I0SVwqK5wAu5&74MC z`l4JUvI@!U5Db5s+*IP;0`m4tbx@9vixq>7CPzG2_8PW(P-nqmHrD&qAJ+$oGCnniFtuDD>faZd8mk+_bUYc{Ykh~Z zdtl0or23-cl;`rG+e>prr3-iNGfNxc%M!xgc()-)C1rsPVL#2YkjeozxOjxYt45IZ z5Z~t)2))qykK4WY8%)Or0V)n~Vr5#FAICtGPq@UoE>}Q2irTN`ZxRm3EA0%Hv3R zIh)1qsp60Z+&NFG6UJ&>_o{;gGMB!cyZm8SXC8Nn-XwqI0ur?VIzy_Rpq!}VqQFl1 zsqQ&?^*a_J*`-Z8MeZioE9G4;d@%{+PMHs?hfPf_iYe#(M-fM33Ll%gPu}ABMZ2#T74G)QTKBSX_6tS9I0W$ke3%q{$Re zpFYWTnS(pQ$<9f*NRsnLg(BNK`%pQdWJbFNMZdiL@Shkbr^7;Z>+5WL+jz7CBkJu1r0iO#yrvq{&1CO2P?a zxD|A~Jdv*hmQ2$vnSPUfw?=+<`^iS5i&8OCQ6=py_9{|yyY8*1(g!}&kpablzG2-5-eYD$7-xq5$`ddNWIasP0bo5ZX%nak-*8AfA+M%d<0%XnZ}lw zd%enCr*8d%uhwF=Kz(JgIfd8cU6sPk*0cn^)!fpk2rWB7&Z)HU5E7`M%E|F;M~XT0 zZJB|Of@GV^}sx1r~Un^2pT2$54~M}MpjhvsAMGN&phl5dsWWm!EkZ$3O zdL%0Mr*XYYqCCrml30Qr+Oa`gj%TCzCmz{dJ_O4ylRN1SI9 z-($*hGs9uK-y%y$JULb|NTA*#=aCkQd2aBPL}5-kV)9l*iW>1^lt=OD;M@*(2MxAfms6QLdwWC5~#mg!J~$e?bM($lnZ58=vfX^Y(UbJbqLhb z3Z@1c$^kSSNKtz#jrVr$c*E+fjMC{bsqT{%!8;{z&gVAWkAufvo~Bb7w$|1>+b-5i zhVSnP=g#qndeL@5qYkOsrWC;9fOg>qck0BB1u%AzQaQBXnG9Gr&3VI((CC_uANB(9 z2K(-E#CpYn*!oM3K1yYM+zwbx^(zr)jFvm0{sUS#=j4o8nJAe6ml3B~)Z|<6I9! zJ?aFomZU8kr`yMF->cG9+rYCDi;(ctFv-6%XjmhEc<)>!(5Z}fJv-ql@_BxN9o{zK zw|n?kz>RtV+$k6&C=3*tRMwuH&wj2AnX4D_u>B>%j9jWLc6N6NA*a=RANz`!H8Paj zc{(av&V@`Jtly7A)nV0od5|U1i^&#Eq`WOTQwhXlmO-b|X01cl1MCEzsUrHag~GYkr=@6^_kx)>zC^Ct?Fi-AoN+LU zN*ru~BF&^*-GH^X_-2rgq2BGv%#t66`e4auAp2pb^l8>|aF|40=;`zwCT0x=%myLQ z%=!qnhytFX-lJyQlgn4)rMl|nMx_sEZ=aa8qR7SpO^>ezdbXor-B&ch9Qa!u3S30K*on`KF{%ffAmX1?B zCt(rDQBji@iDye%g>NuHTH5m6**X|iZ$Kzc&@N3Izlf(s@y;B`VxjPhE{AucE1W}m zNS*)zi9?s1_SoWM-tZnT9>T>p(wV#t8`%8PF~rN-I|T2MG$X_s#V^q{CW`jNL`mob zQiaa>2Hv1!tQ}q*#5qD5<~#vQ1`r!npq$*CS|+76oFj=xc=e_}WVPa`VXtF_b$r#) zXD?8896nL|-|eiOd&HbrJ^duY-%toJEGlwWac%J8c%M?b&AIO*voBN5yy9D#vvE=& zQ~(*CulbvM@GYdxkzuZcL90-=@^6})FC`5w@bL-F43F(RguJBwPmlK1deu zqf*HOW8%Nw|B9U62y%&FQn||9{usLdU&e0FD?Ul;HUaX3w{DcBtM9zwQ2@rOV#>PJi706}o4BxX2fCRROMd{?7C zTvSW<>1zD&-G*VF`I4%k#6d~9NAXZoox2G(40Xd?Lqg&=$@J|Vg1L5NgCdhX%4XIx zK$cInqbFhDWbqZ4RHdkTjbb*^pM#M%bLG$ZH-(4B#JbSg56ER%$K5#B#G<6-w~Ct1 zJ45fNAE@|ZWduNzhm-P9g11X+isWUm*<)42@08I20#hL0j=rp~Ha=6NZFhF3ybO(# zDYqv(X}6}BdCmr#Gg1@|(t%^GQsZH4y>D>{iOFo-ov*U3dxt0pK*DsN?Z3(}NMhk# zy_9%~$yL7u3+acbkHjIov1V;S^KuF0b%w`2XnSQEL)!sQZ)4p_`Z!>iT_1+Y{?03l z&TxK0%-q8YvN{_b<`I7(_I{ciPzetMIJ$`MJ0eEA_tb$zEXOALeK z$tRk~7?T*>If|q5a0dGW$l`n4`f@J9}7oXN@tPu=)+#thT)e_OE2S|6Y!21-K$?T;{4L{zV1UDS2Nqa z&hz&C)_a5d8yUAQpI)+gH4i}EeL0p9Ej{>PcZ`~Ofq1_SQESb69WE2*?M54l{0lD} zg(dg`^L7jY1V3!acd+!E?Km_D{x@*ne_1u_!2d{1)V!H-9#GJBtMMQ}Tuz#$?^NU# z2i8l`*FhN2eu9pRut+~K(6VB{{d?%Q*M~vppEP@_>PQMRZp!wM zIdA{fLe)+<`$PaAS zs|)dk8Px8AC-Stail)EFV|tZVU)A!-_8Re3{)&JzNHZA1>XsgcSbbTJHznRaH+hF)+@>qGBbohO_s)- zH7!aqiyvKEeOHLtO0aPDjTWS)%$D57M4@d4G{NIl`^xsSW3k@BVQpO-dYS!8h52RT z)A~NeGRK6$`E`NQhOw|R=K_U=ZCwKHhl6DWhU zuGsVyu(z}L@3Qc}8*K$F{4l=)zkjd34WZ%)FPN$Jo4t;S48vk!P7we8=E}>h%gL1p zNh?BA0I>JBjGOOVLi)32O23_PD<}&nPq+@330^EzD?XkR)9w-V?N##^B zVQKBUJYiYm$wgc-$>H`6L@SLUSH6p8=N1GR;UWSuAdMO?Jch!B&bc64Y->4mo#Omxhg|}4pu=u%ozTM`Hp`*IUiznKAN#0-0O0o>fb~5V69 z=j{8uKNvO4dn%;LaqlLxDyt}}?Xkr2?b2%Tb)@FwNktK6ZZTEmFV1Y@o|ZMQcP(Dk zOw1>)e0nQGqDPo+7GqHRjZ0|1VFlxt+0r0?b|>$^$d#hwlCK}g?LFz8@E^E@?y<5Z z|2<$Yyy6~vMcKs;q?hIM5A6s+dq)^QQZxJuJHo+DuWbPMo#ApRGFuM4Jd45q?%Kk@ zXu-Ar@oOs~ApeiDRC;VuzVENC?)O~GZ$PnR3V+SG|1+}G(Mr^>*H%R)=PMU85&Qt) z^f$RknbrcF{!$X&Ye@IY6Xt6!W?#&|i_`ymuPxneX?@_@PLBm&i;zUw05gKmPGI$L zm=Go5oQ%i`9ksWZi^giC?6#|EG{`v7Bu2&R%rsU*{A?vw)2v}BLcwb5uFtN2&{~42 zFFjyJNbVm=w5)A-kZ9dVPwQo0$-j~I@lDW1`tcSJ*!tm|UM;~J-)b`}kOsU7=(D#s zb0Vb~wsIxTtHadSO~FO{_AbOUd6^UIG297PRYm#fF2vj5GM_3%?$$GCy9|NBs?Q+D zY~o6|U=hy1b~#-baf0&DrlT~zrbfFIWBvAkb$JUcW2x*tbkuN>I@5>nnBp2)a_s%4 zRU=iel&s6luQqXd@aEn1K=XGamt_n9cT#-(4D zRD*%5?4ql>b2-X0bU*CLn1qA}7taG$;gflXIN`Ao3q4^}d>bd|7ngbP1hbo-3#z~C zEOd9FZq9I&>2xVFNApbN<<9WwRA}d(+ftOPk{17b*UIZ~VeN%sW(86T$vG+LEB@5< zUW|C<%y*ND`E!|Y7~HSBB*Iv9O%~l(xCZT-wNCDLDs?EaA4PDtT5yJO)>yo1eAhKP zh|SyU`Z$JL5Vv|zq|ZACo%40UZTKAnYr|&g`Dd)HO74-%m~10sj*?jO#vfWvNP^y7 zBHoWdYzF28V~ETpz4zX}Vx@wm&V+yH>kSX%gEtb00Qco4-?Z&xUviIrIE*oG*2^4s znav050%t{-0S7PW+F{`^*nG5@*j}IyEv_ux?7STfPnOaq3JXO!h#)D8@GG}|2=lzJ zE5e`kCJI{{l{-Z>kq{GMH(T$$tGZ4a_i>t~Gd!$pw?G8M_TVoa+4v284Xlk(G&vQs zuxLv+IkQ!9t>!6FJ5PGR$*C8m^dh5c%3JG4H#rqp6VGOGLIu@E%5nn0{>FG;oNEd3Qmlm5YQ zk4~$aE~#7eMS}__9}|hs14IdpU<5QGZnBf--@Ow!WTn)Fgidb!$=6<1n|LyLshI{2 zrR}BeK}1~O{3E`%=UDLYMv>wY1-wQ5BkmZhB%7i=1cqbK8}ik@Uap`G-aWZ7pL&zq z`;eESiQ~a|x)nE*$)!0)D!OgZsx#k|NOyq6BK<~I?wp)SEyo}Dy;Ks<-YVRbVz(M~ zt2c2SGP2l4>xUOIt{@tzr>4NsNySPia`#cxv(ylg12@lGvxV=AXz91DkU`0K9e>^ z62*{^64TF{lWE;K#BJnKjP?$pJpxoDGh>L=l7h4SP!~TEh$5KF2vu*!uBLV;w?vFX z6Ju#nvmTD3%psw8ehs#+VT6p?IVWX`P4Sd6H@A$$6(Rn>GJ(4d66xA%oooy8Yj!ob z$(!$hcI>G6YWK-w_4jjz=asQ7C&T5Qr-Kj9U(~h2e_{3Bp4i%2^kkQbn-#&@z70eF$}+T<8PP z3bDuwc+Oe}B&QM+WQ?rdC_!*!IncyKhNxQ*6Svul!nZz)xAPqu!$ZG8?S z31b4|`Soj^`9dQ5&B#Tu^=vzI9}C{HSM~HJQUNI+uTZy~E%^El9OvBZ0?uoe3pPzIwCMt+voeN6lZU z^wCVUTpDpTSTYBBuiahE6gfhuur0V$&Lv;xr3E%vQ!Q6MlqEm<(I8?KOJ5WE(QS>v zsmBBw-S83IHUt&o-H3a`#*C}1rv10*F>6w>oWzEe^PN3O`BNGSrKIlAD85cFrBx8n zYu6~5u6$dLu60GLa$+%yzqjD7CdEr*+~U)D#rMqUu(L8Mp}HWX0qa&%7Ay1_ar4r_ z&L+C`sm0?2*MrgLF&TER1RR#9rOK7}TlhT=kC4spxSy%kK9Jgbe`4VFQB3NA&$?LR zf)DQ9#BSfiu#HUbsyuVj7q=Q+-+Q6QYiBxa`%GhTL%VW9a2lctAKJf73pCcbnXIKE zwBOyg6uLft_AnfyqE9J;5Oy;&5_iAAB&3Uie#HZ{EwdU7^`1ye zz7Gg|7MT*rpo^BX1|lrVB_c~s$sUkgQOxIzdbARmx@a1LopDu!#*^a$wE$Fl+0|CX zsm;X2p4C&}$dnQq!10lbk(?3Pa^+qOX}~GYPqP6d?H0&!H8ED_)1ZzsOC9T!mUWL@ z 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%0D6<* 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 s%k literal 0 HcmV?d00001 diff --git a/index.html b/index.html new file mode 100644 index 0000000..ec401cb --- /dev/null +++ b/index.html @@ -0,0 +1,34 @@ + + + + + + + + + Pangu Text + + + + + + + + + diff --git a/zh-cn/about/about.html b/zh-cn/about/about.html new file mode 100644 index 0000000..283b56a --- /dev/null +++ b/zh-cn/about/about.html @@ -0,0 +1,49 @@ + + + + + + + + + 关于此文档 | Pangu Text + + + + + +

关于此文档

此文档由 VuePress在新窗口中打开 强力驱动。

许可证

Apache-2.0在新窗口中打开

Apache License Version 2.0
+
+Copyright (C) 2019 HighCapable
+
+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
+
+    https://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.
+

版权所有 © 2019 HighCapable

+ + + diff --git a/zh-cn/about/changelog.html b/zh-cn/about/changelog.html new file mode 100644 index 0000000..d41b209 --- /dev/null +++ b/zh-cn/about/changelog.html @@ -0,0 +1,34 @@ + + + + + + + + + 更新日志 | Pangu Text + + + + + +

更新日志

这里记录了 PanguText 的版本更新历史。

特别注意

我们只会对最新的 API 版本进行维护,若你正在使用过时的 API 版本则代表你自愿放弃一切维护的可能性。

pangutext-android

1.0.4 | 2025.08.16  最新

  • 在执行 injectPanguText 时排除 TextView 自身设置的 TextWatcher 防止重复触发 doOnTextChanged

1.0.3 | 2025.08.03  过旧

1.0.2 | 2025.03.05  过旧

  • PanguTextFactory2 在注入时新增异常捕获,避免在 View 自身初始化过程中断整个处理过程
  • 移除重复注入的警告日志,现在重复注入 PanguText 将无任何作用产生
  • 新增 PanguTextPatcher,可以使用新的方案注入 PanguText

1.0.1 | 2025.02.11  过旧

  • 修复注入 PanguTextTextView 可能导致测量宽度不正确的问题
  • PanguTextConfig 新增 isAutoRemeasureText,用于控制是否自动重新测量文本宽度 (作用于 TextView 单行文本)

1.0.0 | 2025.02.10  过旧

  • 首个版本提交至 Maven

pangutext-compose

暂未发布。

+ + + diff --git a/zh-cn/about/contacts.html b/zh-cn/about/contacts.html new file mode 100644 index 0000000..3b84057 --- /dev/null +++ b/zh-cn/about/contacts.html @@ -0,0 +1,34 @@ + + + + + + + + + 联系我们 | Pangu Text + + + + + + + + + diff --git a/zh-cn/about/future.html b/zh-cn/about/future.html new file mode 100644 index 0000000..55aaf67 --- /dev/null +++ b/zh-cn/about/future.html @@ -0,0 +1,34 @@ + + + + + + + + + 展望未来 | Pangu Text + + + + + +

展望未来

未来是美好的,也是不确定的,让我们共同期待 PanguText 在未来的发展空间。

未来的计划

这里收录了 PanguText 可能会在后期添加的功能。

SpannableString 的局限性

PanguText 目前在 Android 平台上的主要功能来自 SpannableString,目前尚未完全解决处理复杂的文本样式以及性能开销问题。

Jetpack Compose 计划

PanguText 未来将会支持 Jetpack Compose,并计划采用 AnnotatedString 作为主要的文本处理方式以实现对底层的最小化侵入。

+ + + diff --git a/zh-cn/config/r8-proguard.html b/zh-cn/config/r8-proguard.html new file mode 100644 index 0000000..b388dd4 --- /dev/null +++ b/zh-cn/config/r8-proguard.html @@ -0,0 +1,34 @@ + + + + + + + + + R8 与 Proguard 混淆 | Pangu Text + + + + + + + + + diff --git a/zh-cn/guide/home.html b/zh-cn/guide/home.html new file mode 100644 index 0000000..7f9b418 --- /dev/null +++ b/zh-cn/guide/home.html @@ -0,0 +1,34 @@ + + + + + + + + + 介绍 | Pangu Text + + + + + +

介绍

PanguText 是一个中日韩 (CJK) 与英文单词、半角数字排版的解决方案。

背景

这个项目的起因是因为直到目前为止还没有一套公开的方案能够完美解决中文、日文、韩文与英文之间的排版问题, 正常情况下我们将 CJK (即中日韩) 与英文混排的时候,都会涉及到美观性问题,这算是一个历史遗留问题,全角文字与半角文字之间的书写规范不一样。虽然现在 W3C 规定了 CJK 排版规范, 但是还是仅有部分愿意遵守排版要求的个人或企业选择了这种方案。

目前已知的厂商解决方案如下

  • Apple 全系 (iOS、iPadOS、macOS、tvOS、watchOS) 文本排版解决方案
  • 小米 (HyperOS) 文本排版优化
  • OrginOS 基于字体的文本排版优化

但是这些方案都是封闭的,无法在其他平台上使用,因此我们希望能够提供一套开源的解决方案,能够适应各种场景、侵入性低且更容易集成,让更多的开发者能够使用这个方案来解决文本排版问题。

本项目得以进行的主要来源为 pangu.js在新窗口中打开,它提供了一套 CJK 排版的正则,我们对其加以优化,实现各个平台不需要插入空格字符即可格式化文本排版的效果, 衷心感谢这个项目的开发者提供的方案,我们在这个方案上加以扩展,提供了更多解决方案的可能性。

效果

如你所见,PanguText 的排版方案并不是向 CJK 与英文单词之间插入空格来完成,而是使用每个平台对应的处理方案自动在这些字符之间添加空白间距来达到排版效果以达到最低的侵入性。

应用前 (上)、应用后 (下)

动态应用

PanguText 支持动态应用,它允许你在输入文本的同时动态为每个字符添加空白间距。

开发者的观点

我个人依然不提倡手动为 CJK 和英文字符之间添加空格来达到排版美化效果 (如果软件、系统本身支持这种排版美化方式), 因为空格在不同的字体中的间距也是不一样的,这会造成排版效果出现问题,也会被加入本不应该出现的空格字符,在某些场景下,例如网址、文件名或者带有 “#” 的话题标签,不允许出现这些空格。但是,在一些特殊场景,例如代码的注释中,涉及到代码的说明文档,建议加入空格,因为这些范围内可能不会有排版格式化工具。

还有一点就是,在不同的语言中使用不同的标点符号,切忌全角和半角标点符号混用,如果一定要使用半角标点符号来标记全角文字,在句子未结束时将半角符号向后推进一个空格补全字符空间 (英文也是如此)。

语言要求

推荐使用 Kotlin 作为首选开发语言,本项目完全使用 Kotlin 编写,在部分内容上对 Java 做了兼容处理,但也许无法做到完全兼容。

文档全部的 Demo 示例代码都将使用 Kotlin 进行描述,如果你完全不会使用 Kotlin,那么你将有可能无法获得最佳使用体验。

功能贡献

本项目的维护离不开各位开发者的支持和贡献,目前这个项目处于初期阶段,可能依然存在一些问题或者缺少你需要的功能, 如果可能,欢迎提交 PR 为此项目贡献你认为需要的功能或前往 GitHub Issues在新窗口中打开 向我们提出建议。

+ + + diff --git a/zh-cn/guide/quick-start.html b/zh-cn/guide/quick-start.html new file mode 100644 index 0000000..07291b4 --- /dev/null +++ b/zh-cn/guide/quick-start.html @@ -0,0 +1,61 @@ + + + + + + + + + 快速开始 | Pangu Text + + + + + +

快速开始

集成 PanguText 到你的项目中。

项目要求

项目需要使用 Android StudioIntelliJ IDEA 创建且类型为 Android 或 Kotlin Multiplatform 项目并已集成 Kotlin 环境依赖。

配置存储库

PanguText 的依赖发布在 Maven Central 和我们的公共存储库中,你可以使用如下方式配置存储库。

我们推荐使用 Kotlin DSL 作为 Gradle 构建脚本语言并推荐使用 SweetDependency在新窗口中打开 来管理依赖。

SweetDependency (推荐)

在你的项目 SweetDependency 配置文件中配置存储库。

repositories:
+  google:
+  maven-central:
+  # (可选) 你可以添加此 URL 以使用我们的公共存储库
+  # 当 Sonatype-OSS 发生故障无法发布依赖时,此存储库作为备选进行添加
+  # 详情请前往:https://github.com/HighCapable/maven-repository
+  highcapable-maven-releases:
+    # 中国大陆用户请将下方的 "raw.githubusercontent.com" 修改为 "raw.gitmirror.com"
+    url: https://raw.githubusercontent.com/HighCapable/maven-repository/main/repository/releases
+

传统方式

在你的项目 build.gradle.kts 中配置存储库。

repositories {
+    google()
+    mavenCentral()
+    // (可选) 你可以添加此 URL 以使用我们的公共存储库
+    // 当 Sonatype-OSS 发生故障无法发布依赖时,此存储库作为备选进行添加
+    // 详情请前往:https://github.com/HighCapable/maven-repository
+    // 中国大陆用户请将下方的 "raw.githubusercontent.com" 修改为 "raw.gitmirror.com"
+    maven("https://raw.githubusercontent.com/HighCapable/maven-repository/main/repository/releases")
+}
+

配置 Java 版本

在你的项目 build.gradle.kts 中修改 Kotlin 的 Java 版本为 17 及以上。

android {
+    compileOptions {
+        sourceCompatibility = JavaVersion.VERSION_17
+        targetCompatibility = JavaVersion.VERSION_17
+    }
+    kotlinOptions {
+        jvmTarget = "17"
+    }
+}
+

功能一览

整个项目分为多个模块,Android 平台与 Jetpack Compose (多平台),你可以选择你希望引入的模块作为依赖应用到你的项目中。

你可以点击下方对应的模块前往查看详细的功能介绍。

Demo

你可以在下方找到一些示例,查看对应的演示项目来更好地了解这些功能的运作方式,快速地挑选出你需要的功能。

+ + + diff --git a/zh-cn/index.html b/zh-cn/index.html new file mode 100644 index 0000000..4a61976 --- /dev/null +++ b/zh-cn/index.html @@ -0,0 +1,34 @@ + + + + + + + + + 首页 | Pangu Text + + + + + + + + + diff --git a/zh-cn/library/android.html b/zh-cn/library/android.html new file mode 100644 index 0000000..fee0d3a --- /dev/null +++ b/zh-cn/library/android.html @@ -0,0 +1,200 @@ + + + + + + + + + Android | Pangu Text + + + + + +

Android

Maven CentralMaven metadata URLAndroid Min SDK

这是 Android 平台的核心依赖,在 Android 平台上使用 PanguText 时,你需要引入此模块。

配置依赖

你可以使用如下方式将此模块添加到你的项目中。

SweetDependency (推荐)

在你的项目 SweetDependency 配置文件中添加依赖。

libraries:
+  com.highcapable.pangutext:
+    pangutext-android:
+      version: +
+

在你的项目 build.gradle.kts 中配置依赖。

implementation(com.highcapable.pangutext.pangutext.android)
+

Version Catalog

在你的项目 gradle/libs.versions.toml 中添加依赖。

[versions]
+pangutext-android = "<version>"
+
+[libraries]
+pangutext-android = { module = "com.highcapable.pangutext:pangutext-android", version.ref = "pangutext-android" }
+

在你的项目 build.gradle.kts 中配置依赖。

implementation(libs.pangutext.android)
+

请将 <version> 修改为此文档顶部显示的版本。

传统方式

在你的项目 build.gradle.kts 中配置依赖。

implementation("com.highcapable.pangutext:pangutext-android:<version>")
+

请将 <version> 修改为此文档顶部显示的版本。

功能介绍

你可以 点击这里在新窗口中打开 查看 KDoc。

实现原理

PanguText 在 Android 平台有两种方案对文本进行格式化,一种为 SpannableString (不破坏原始文本长度),另一种则是直接插入空白字符 (破坏原始文本长度)。

第一种方案为 SpannableString,它会在需要增加间距的字符的前一个字符后增加应用了间距的 Span 来实现文本在样式上的改变,而不实际改变字符串的内容,最后交由 TextView 层完成渲染 (或手动使用 TextPaint 基于 Spanned 做布局样式处理),实现无侵入式为文本设置样式。

第一种方案同样支持直接处理已经应用了样式的文本 (Spanned),例如通过 Html.fromHtml 创建的文本,但是目前尚处于实验性阶段,可能仍然会出现非预期样式错误问题, 你可以参考下方的 个性化配置 选择禁用它。

动态应用 (注入) 功能主要针对 EditText 的输入状态,它会为 EditText 设置一个自定义的 TextWatcher 来监听输入状态,当输入状态发生变化时,从 afterTextChanged 中获取 Editable 并进行格式化。

第二种方案则是直接插入空白字符,它会直接在需要增加间距的字符后插入空白字符,这种方案会破坏原始文本的长度并且会改变文本内容自身, 但是可以不依赖于 TextView 层完成渲染,直接使用 TextPaint 绘制文本即可,适用于所有场景,但不支持动态应用 (注入)

尚未解决的问题

PanguText 可能会与 Material 组件 TextInputEditTextMaterialAutoCompleteTextViewTextInputLayout 结合时在 setHint 效果上产生冲突, 因为 TextView 不会在测量时计算文本中的 Span,在单行文本中此类问题尤为明显,暂时还没有解决方案,请谨慎配合此类组件使用。

受制于上述问题,通过 View.measure 方法计算包含了 PanguText 风格的 TextView 宽度时也可能会出现错误。

PanguText 目前不能处理 Spanned 文本中的下划线、删除线这种连续的字符,添加空白间距后线条会中断, 并且它可能会在一些特殊字符上发生样式错误或样式没有被正确应用,为了稳定性考虑请尽量不要对非常复杂的富文本启用 PanguText 或参考下方的 个性化配置 设置 excludePatterns

集成到现有项目

PanguText 集成到你的当前项目中非常容易,你不需要改动过多代码,挑选以下你喜欢的方案进行,即可完成集成。

注入布局装载器 (LayoutInflater)

PanguText 支持直接注入 LayoutInflater.Factory2 或为当前 Activity 创建 LayoutInflater.Factory2 实例以接管整个视图, 这是推荐的集成方案,这种方式不需要修改任何现有布局即可实现无侵入式快速集成。

示例如下

class MainActivity : AppCompactActivity() {
+
+    val binding by lazy { ActivityMainBinding.inflate(layoutInflater) }
+
+    override fun onCreate(savedInstanceState: Bundle?) {
+        super.onCreate(savedInstanceState)
+        // 在这里注入
+        PanguTextFactory2.inject(this)
+        setContentView(binding.root)
+    }
+}
+

小提示

由于接管了 LayoutInflater.Factory2,所以包括类似 ListViewRecyclerView 的回收式布局也能被正确接管。

注入 Activity 中的 LayoutInflater 实例后,以下附属于当前 Context 的实例都会自动生效。

  • Fragment
  • Dialog
  • PopupWindow
  • Toast (在高版本系统中仅前台)

基于 RemoteView 的布局将无法生效,因为它们是远程对象,不会使用当前 ContextLayoutInflater 进行布局装载。

如果你正在使用 BetterAndroid 中的 ui-compoment → AppBindingActivity在新窗口中打开,你需要稍微改动当前代码。

示例如下

class MainActivity : AppBindingActivity<ActivityMainBinding>() {
+
+   override fun onPrepareContentView(savedInstanceState: Bundle?): LayoutInflater {
+       val inflater = super.onPrepareContentView(savedInstanceState)
+       // 在这里注入
+       PanguTextFactory2.inject(inflater)
+       return inflater
+   }
+
+   override fun onCreate(savedInstanceState: Bundle?) {
+       super.onCreate(savedInstanceState)
+       // Your code here.
+   }
+}
+

如果你的应用程序没有使用 AppCompatActivity 也没有使用 ViewBinding,没有关系,你依然可以使用最初的方案进行。

示例如下

class MainActivity : Activity() {
+
+    override fun onCreate(savedInstanceState: Bundle?) {
+        super.onCreate(savedInstanceState)
+        // 在这里注入
+        PanguTextFactory2.inject(this)
+        setContentView(R.layout.activity_main)
+    }
+}
+

小提示

PanguTextFactory2 除了可以配合 Activity 使用,它还支持注入到任何现有的 LayoutInflater 实例中,但请在 LayoutInflater 实例被用于装载布局前进行注入,否则将无法生效。

使用修补工具

你可以使用 PanguTextPatcher 修补现有的 ViewViewGroup 实例。

修补整个根布局,PanguTextPatcher 会自动修补根布局下的所有 TextView 或继承于其的组件。

示例如下

// 假设你有一个根布局
+val root: ViewGroup
+// 修补根布局
+PanguTextPatcher.patch(root)
+

修补单个 View,类型为 TextView 或继承于 TextView 的组件。

示例如下

// 假设这就是你的 TextView
+val textView: TextView
+// 修补单个 View
+PanguTextPatcher.patch(textView)
+

注意

RecyclerViewListViewViewPager 等回收式布局中使用 PanguTextPatcher 时,你需要在 onCreateViewHolderonBindViewHolder 中获取到 itemView 后进行修补,否则不会生效。

手动注入或格式化文本

PanguText 同样支持手动注入,你可以在需要的 TextViewEditText 上手动进行注入。

示例如下

// 假设这就是你的 TextView
+val textView: TextView
+// 假设这就是你的 EditText
+val editText: EditText
+// 注入到现有文本
+textView.injectPanguText()
+editText.injectPanguText()
+// 可以选择是否同时注入 Hint (默认是)
+textView.injectPanguText(injectHint = false)
+editText.injectPanguText(injectHint = false)
+// 动态注入,重新调用 setText 也会自动生效
+textView.injectRealTimePanguText()
+// 动态注入主要针对于 EditText 的输入状态
+editText.injectRealTimePanguText()
+// 同样可以选择是否同时注入 Hint (默认是)
+textView.injectRealTimePanguText(injectHint = false)
+editText.injectRealTimePanguText(injectHint = false)
+

PanguText 还对 TextViewsetText 方法进行了扩展,你可以使用如下方式直接设置带有 PanugText 样式的文本。

示例如下

// 假设这就是你的 TextView
+val textView: TextView
+// 设置带有 PanguText 样式的文本
+textView.setTextWithPangu("Xiaoming今年16岁")
+// 设置带有 PanguText 样式的 Hint
+textView.setHintWithPangu("输入Xiaoming的年龄")
+

你还可以使用 PanguText.format 方法直接格式化文本。

示例如下

// 假设这就是你的 TextView
+val textView: TextView
+// 使用 SpannableString 方案格式化文本
+// 需要传入当前 TextView 的 Resources 以及字体大小
+// 如果传入的文本自身为 Spannable 类型,则不会创建新的 SpannableString,而是返回原始对象
+val text = PanguText.format(textView.resources, textView.textSize, "Xiaoming今年16岁")
+// 设置文本
+textView.text = text
+// 直接使用空白字符以插入破坏的方式格式化文本
+// 这个方案会为文本增加额外的空白字符 " " (HSP)
+// 下方的结果会输出字符串 "Xiaoming 今年 16 岁"
+// 你也可以在方法末位自定义要使用的空白字符
+val text = PanguText.format("Xiaoming今年16岁")
+// 设置文本
+textView.text = text
+

小提示

injectPanguTextinjectRealTimePanguTextsetTextWithPangusetHintWithPanguPanguText.format 方法支持 config 参数,你可以参考下方的 个性化配置

自定义 View

PanguText 还可以配合自定义 View 进行使用,你可以将你的 View 继承到 AppCompatTextView 并重写 setText 方法。

示例如下

class MyTextView(context: Context, attrs: AttributeSet? = null) : AppCompatTextView(context, attrs) {
+
+    override fun setText(text: CharSequence?, type: BufferType?) {
+        // 在这里手动进行注入
+        val panguText = text?.let { PanguText.format(resources, textSize, it) }
+        super.setText(panguText, type)
+    }
+}
+

注意

TextView 在注入 PanguText 后,如果你在 XML 布局中使用了 android:singleLine="true" 或在代码中使用了 TextView.setSingleLine(true) 并且配合 android:elipsize="...", 那么这种方式设置单行文本可能会造成文本超出屏幕后其中会中显示出无法解析的 OBJ 字符 (被省略号截断),因为 TextView 不会在测量时计算文本中的 Span,这会导致文本宽度计算错误。 解决方案为在 XML 布局中使用 android:maxLines="1" 或在代码中使用 TextView.setMaxLines(1) 来代替。

示例如下

<TextView
+    android:id="@+id/text"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:text="这是一段很长很长长长长长长长长长长长长还有English混入的的文本"
+    android:maxLines="1"
+    android:ellipsize="end" />
+

个性化配置

PanguText 支持个性化配置,你可以使用全局静态实例 PanguText.globalConfig 获取全局配置,或单独进行配置。

示例如下

// 获取全局配置
+val config = PanguText.globalConfig
+// 开关,禁用将使所有功能失效
+config.isEnabled = true
+// 处理 Spanned 文本
+// Spanned 文本处理默认启用,但此功能尚处于实验性阶段,
+// 如果发生问题你可以选择禁用,禁用后遇到 Spanned 文本将返回原始文本
+config.isProcessedSpanned = true
+// 是否要在处理后自动重新测量文本宽度
+// 注意:[PanguText] 注入文本并更改文本后,[TextView] 的宽度将不会自动计算
+// 目前,此功能将调用 [TextView.setText] 重新执行测量结果,
+// 该测量可以在某些动态布局 (例如 `RecyclerView`) 中每次修复文本宽度,
+// 但可能会导致性能问题,你可以选择禁用此功能
+// 为了防止不必要的性能开销,此功能仅在 `maxlines` 设置为 1 或 `singleLine` 的 [TextView] 上生效
+config.isAutoRemeasureText = true
+// 设置在格式化过程中以正则形式定义需要排除的内容
+// 例如排除全部 URL
+config.excludePatterns.add("https?://\\S+".toRegex())
+// 例如排除类似 "[doge]" 的 emoji 占位符,
+// 如果你需要使用 [ImageSpan] 显示 emoji 图片,你可以选择排除这些占位符
+config.excludePatterns.add("\\[.*?]".toRegex())
+// 设置 CJK 空白占位间距比例
+// 这会决定最终的排版效果,建议保持默认比例,然后再以此跟随个人喜好进行调整
+config.cjkSpacingRatio = 7f
+

注意

如果你使用了 注入布局装载器 的方案进行集成,请在 PanguTextFactory2.inject(...) 执行前配置 PanguText.globalConfig,否则配置将无法生效。

你还可以在手动注入或格式化文本时传入 config 参数以进行个性化配置。

示例如下

// 假设这就是你的 TextView
+val textView: TextView
+// 创建一个新配置
+// 你可以设置 [copyFromGlobal] 为 false 来不从全局配置中复制配置
+val config = PanguTextConfig(copyFromGlobal = false) {
+    excludePatterns.add("https?://\\S+".toRegex())
+    excludePatterns.add("\\[.*?]".toRegex())
+    cjkSpacingRatio = 7f
+}
+// 你还可以从任意一个配置中复制并创建新配置
+val config2 = config.copy {
+    excludePatterns.clear()
+    excludePatterns.add("https?://\\S+".toRegex())
+    excludePatterns.add("\\[.*?]".toRegex())
+    cjkSpacingRatio = 7f
+}
+// 手动注入并配置
+textView.injectPanguText(config = config2)
+

如果你使用了 注入布局装载器 的方案进行集成,你可以在 TextViewEditText 或继承于它们的 XML 布局声明中使用以下属性来进行个性化配置。

  • panguText_enabled 对应 PanguTextConfig.isEnabled
  • panguText_processedSpanned 对应 PanguTextConfig.isProcessedSpanned
  • panguText_autoRemeasureText 对应 PanguTextConfig.isAutoRemeasureText
  • panguText_excludePatterns 对应 PanguTextConfig.excludePatterns,字符串数组,多个使用 |@| 分隔
  • panguText_cjkSpacingRatio 对应 PanguTextConfig.cjkSpacingRatio

示例如下

<TextView
+    android:id="@+id/text"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:text="Xiaoming今年16岁"
+    app:panguText_enabled="true"
+    app:panguText_processedSpanned="true"
+    app:panguText_autoRemeasureText="true"
+    app:panguText_excludePatterns="https?://\\S+;\\[.*?]|@|\\[.*?]"
+    app:panguText_cjkSpacingRatio="7.0" />
+

注意

由于 Android Studio 的问题,上述属性可能不会有补全提示,请自行补全。

不要忘记加入声明 xmlns:app="http://schemas.android.com/apk/res-auto"

在自定义 View 中,你可以将你的 View 继承于 PanguTextView 接口以同样实现上述功能,此功能对 使用修补工具 方案同样有效。

示例如下

class MyTextView(context: Context, attrs: AttributeSet? = null) : AppCompatTextView(context, attrs),
+    PanguTextView {
+
+    override fun configurePanguText(config: PanguTextConfig) {
+        // 配置你的 [PanguTextConfig]
+    }
+}
+

注意

PanguTextView 接口的优先级将高于直接在 XML 布局中使用的属性,如果你同时使用了这两种方式进行配置,PanguTextView 接口的配置将覆盖 XML 布局中的配置。

单独配置将覆盖全局配置,未配置的选项将跟随全局配置。

+ + + diff --git a/zh-cn/library/compose.html b/zh-cn/library/compose.html new file mode 100644 index 0000000..7ff1273 --- /dev/null +++ b/zh-cn/library/compose.html @@ -0,0 +1,34 @@ + + + + + + + + + Jetpack Compose | Pangu Text + + + + + + + + +