From 9a22879fc472380485eb7de60da71932fd541c77 Mon Sep 17 00:00:00 2001 From: minglipro Date: Tue, 15 Jul 2025 12:25:39 +0800 Subject: [PATCH] init --- .gitattributes | 7 + .gitea/workflows/build.yml | 17 ++ .gitignore | 26 ++ LICENSE | 202 ++++++++++++++ README.md | 25 ++ build.gradle | 165 ++++++++++++ gradle.properties | 18 ++ gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 43764 bytes gradle/wrapper/gradle-wrapper.properties | 7 + gradlew | 251 ++++++++++++++++++ gradlew.bat | 94 +++++++ settings.gradle | 11 + .../EnchantmentDoNotConflictNeoForge.java | 48 ++++ .../conflict/config/ModConfig.java | 78 ++++++ .../mixin/ArrowInfiniteEnchantmentMixin.java | 26 ++ .../mixin/ArrowPiercingEnchantmentMixin.java | 26 ++ .../mixin/DamageEnchantmentMixin.java | 26 ++ .../mixin/ProtectionEnchantmentMixin.java | 26 ++ .../resources/META-INF/neoforge.mods.toml | 28 ++ .../textures/logo/icon.png | Bin 0 -> 68477 bytes .../enchantmentdoesnotconflict.mixins.json | 17 ++ 21 files changed, 1098 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitea/workflows/build.yml create mode 100644 .gitignore create mode 100644 LICENSE create mode 100644 README.md create mode 100644 build.gradle create mode 100644 gradle.properties create mode 100644 gradle/wrapper/gradle-wrapper.jar create mode 100644 gradle/wrapper/gradle-wrapper.properties create mode 100644 gradlew create mode 100644 gradlew.bat create mode 100644 settings.gradle create mode 100644 src/main/java/com/mingliqiye/minecraft/enchantment/conflict/EnchantmentDoNotConflictNeoForge.java create mode 100644 src/main/java/com/mingliqiye/minecraft/enchantment/conflict/config/ModConfig.java create mode 100644 src/main/java/com/mingliqiye/minecraft/enchantment/conflict/mixin/ArrowInfiniteEnchantmentMixin.java create mode 100644 src/main/java/com/mingliqiye/minecraft/enchantment/conflict/mixin/ArrowPiercingEnchantmentMixin.java create mode 100644 src/main/java/com/mingliqiye/minecraft/enchantment/conflict/mixin/DamageEnchantmentMixin.java create mode 100644 src/main/java/com/mingliqiye/minecraft/enchantment/conflict/mixin/ProtectionEnchantmentMixin.java create mode 100644 src/main/resources/META-INF/neoforge.mods.toml create mode 100644 src/main/resources/assets/enchantmentdoesnotconflict/textures/logo/icon.png create mode 100644 src/main/resources/enchantmentdoesnotconflict.mixins.json diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..a8cfcbc --- /dev/null +++ b/.gitattributes @@ -0,0 +1,7 @@ +# Disable autocrlf on generated files, they always generate with LF +# Add any extra files or paths here to make git stop saying they +# are changed when only line endings change. +src/generated/**/.cache/cache text eol=lf +*.json text eol=lf +*.java text eol=lf +.gitattributes text eol=lf diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml new file mode 100644 index 0000000..946d095 --- /dev/null +++ b/.gitea/workflows/build.yml @@ -0,0 +1,17 @@ +name: Gitea Actions Build +run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀 +on: + push: + branches: + - master +jobs: + Build: + runs-on: ubuntu-dev + steps: + - name: Check out repository code + uses: https://git.mingliqiye.com/Actions/checkout@v4 + + - name: build-test + run: | + source gradle.properties + gradle -Dorg.gradle.java.home=/opt/jdk/21.0.7/ build diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..31d2550 --- /dev/null +++ b/.gitignore @@ -0,0 +1,26 @@ +# eclipse +bin +*.launch +.settings +.metadata +.classpath +.project + +# idea +out +*.ipr +*.iws +*.iml +.idea + +# gradle +build +.gradle + +# other +eclipse +run +runs +run-data + +repo \ No newline at end of file diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..7a4a3ea --- /dev/null +++ b/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..b421122 --- /dev/null +++ b/README.md @@ -0,0 +1,25 @@ + +Installation information +======= + +This template repository can be directly cloned to get you started with a new +mod. Simply create a new repository cloned from this one, by following the +instructions provided by [GitHub](https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-repository-from-a-template). + +Once you have your clone, simply open the repository in the IDE of your choice. The usual recommendation for an IDE is either IntelliJ IDEA or Eclipse. + +If at any point you are missing libraries in your IDE, or you've run into problems you can +run `gradlew --refresh-dependencies` to refresh the local cache. `gradlew clean` to reset everything +{this does not affect your code} and then start the process again. + +Mapping Names: +============ +By default, the MDK is configured to use the official mapping names from Mojang for methods and fields +in the Minecraft codebase. These names are covered by a specific license. All modders should be aware of this +license. For the latest license text, refer to the mapping file itself, or the reference copy here: +https://github.com/NeoForged/NeoForm/blob/main/Mojang.md + +Additional Resources: +========== +Community Documentation: https://docs.neoforged.net/ +NeoForged Discord: https://discord.neoforged.net/ diff --git a/build.gradle b/build.gradle new file mode 100644 index 0000000..f3c6030 --- /dev/null +++ b/build.gradle @@ -0,0 +1,165 @@ +plugins { + id 'java-library' + id 'maven-publish' + id 'net.neoforged.gradle.userdev' version '7.0.190' + id 'idea' +} +java{ + withSourcesJar() +} +tasks.named('wrapper', Wrapper).configure { + // Define wrapper values here so as to not have to always do so when updating gradlew.properties. + // Switching this to Wrapper.DistributionType.ALL will download the full gradle sources that comes with + // documentation attached on cursor hover of gradle classes and methods. However, this comes with increased + // file size for Gradle. If you do switch this to ALL, run the Gradle wrapper task twice afterwards. + // (Verify by checking gradle/wrapper/gradle-wrapper.properties to see if distributionUrl now points to `-all`) + distributionType = Wrapper.DistributionType.BIN +} + +version = "NeoForge-${minecraft_version}-${mod_version}" +group = mod_group_id + +repositories{ + mavenLocal() +} + +base { + archivesName = mod_id +} + +// Mojang ships Java 21 to end users in 1.20.5, so mods should target Java 21. +java.toolchain.languageVersion = JavaLanguageVersion.of(21) + +//minecraft.accessTransformers.file rootProject.file('src/main/resources/META-INF/accesstransformer.cfg') +//minecraft.accessTransformers.entry public net.minecraft.client.Minecraft textureManager # textureManager + +// Default run configurations. +// These can be tweaked, removed, or duplicated as needed. +runs { + // applies to all the run configs below + configureEach { + // Recommended logging data for a userdev environment + // The markers can be added/remove as needed separated by commas. + // "SCAN": For mods scan. + // "REGISTRIES": For firing of registry events. + // "REGISTRYDUMP": For getting the contents of all registries. + systemProperty 'forge.logging.markers', 'REGISTRIES' + // Recommended logging level for the console + // You can set various levels here. + // Please read: https://stackoverflow.com/questions/2031163/when-to-use-the-different-log-levels + systemProperty 'forge.logging.console.level', 'info' + + modSource project.sourceSets.main + } + + client { + // Comma-separated list of namespaces to load gametests from. Empty = all namespaces. + systemProperty 'neoforge.enabledGameTestNamespaces', project.mod_id + } + + server { + systemProperty 'neoforge.enabledGameTestNamespaces', project.mod_id + argument '--nogui' + } + + // This run config launches GameTestServer and runs all registered gametests, then exits. + // By default, the server will crash when no gametests are provided. + // The gametest system is also enabled by default for other run configs under the /test command. + gameTestServer { + systemProperty 'neoforge.enabledGameTestNamespaces', project.mod_id + } + + data { + // example of overriding the workingDirectory set in configureEach above, uncomment if you want to use it + // workingDirectory project.file('run-data') + + // Specify the modid for data generation, where to output the resulting resource, and where to look for existing resources. + arguments.addAll '--mod', project.mod_id, '--all', '--output', file('src/generated/resources/').getAbsolutePath(), '--existing', file('src/main/resources/').getAbsolutePath() + } +} + +// Include resources generated by data generators. +sourceSets.main.resources { srcDir 'src/generated/resources' } + +// Sets up a dependency configuration called 'localRuntime'. +// This configuration should be used instead of 'runtimeOnly' to declare +// a dependency that will be present for runtime testing but that is +// "optional", meaning it will not be pulled by dependents of this mod. +configurations { + runtimeClasspath.extendsFrom localRuntime +} + +dependencies { + // Specify the version of Minecraft to use. + // Depending on the plugin applied there are several options. We will assume you applied the userdev plugin as shown above. + // The group for userdev is net.neoforged, the module name is neoforge, and the version is the same as the neoforge version. + // You can however also use the vanilla plugin (net.neoforged.gradle.vanilla) to use a version of Minecraft without the neoforge loader. + // And its provides the option to then use net.minecraft as the group, and one of; client, server or joined as the module name, plus the game version as version. + // For all intends and purposes: You can treat this dependency as if it is a normal library you would use. + implementation "net.neoforged:neoforge:${neo_version}" + + // Example optional mod dependency with JEI + // The JEI API is declared for compile time use, while the full JEI artifact is used at runtime + // compileOnly "mezz.jei:jei-${mc_version}-common-api:${jei_version}" + // compileOnly "mezz.jei:jei-${mc_version}-neoforge-api:${jei_version}" + // We add the full version to localRuntime, not runtimeOnly, so that we do not publish a dependency on it + // localRuntime "mezz.jei:jei-${mc_version}-neoforge:${jei_version}" + + // Example mod dependency using a mod jar from ./libs with a flat dir repository + // This maps to ./libs/coolmod-${mc_version}-${coolmod_version}.jar + // The group id is ignored when searching -- in this case, it is "blank" + // implementation "blank:coolmod-${mc_version}:${coolmod_version}" + + // Example mod dependency using a file as dependency + // implementation files("libs/coolmod-${mc_version}-${coolmod_version}.jar") + + // Example project dependency using a sister or child project: + // implementation project(":myproject") + + // For more info: + // http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html + // http://www.gradle.org/docs/current/userguide/dependency_management.html +} + +// This block of code expands all declared replace properties in the specified resource targets. +// A missing property will result in an error. Properties are expanded using ${} Groovy notation. +// When "copyIdeResources" is enabled, this will also run before the game launches in IDE environments. +// See https://docs.gradle.org/current/dsl/org.gradle.language.jvm.tasks.ProcessResources.html +tasks.withType(ProcessResources).configureEach { + var replaceProperties = [ + minecraft_version : minecraft_version, + minecraft_version_range: minecraft_version_range, + neo_version : neo_version, + loader_version_range : loader_version_range, + mod_id : mod_id, + mod_name : mod_name, + mod_license : mod_license, + mod_version : mod_version, + mod_authors : mod_authors, + mod_description : mod_description + ] + inputs.properties replaceProperties + + filesMatching(['META-INF/neoforge.mods.toml']) { + expand replaceProperties + } +} + +// Example configuration to allow publishing using the maven-publish plugin +publishing { + publications { + register('mavenJava', MavenPublication) { + from components.java + } + } + repositories { + maven { + url "file://${project.projectDir}/repo" + } + } +} + +tasks.withType(JavaCompile).configureEach { + options.encoding = 'UTF-8' +} + diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 0000000..3d6cdbe --- /dev/null +++ b/gradle.properties @@ -0,0 +1,18 @@ +org.gradle.jvmargs=-Xmx1G +org.gradle.daemon=true +org.gradle.parallel=true +org.gradle.caching=true +org.gradle.configuration-cache=true +neogradle.subsystems.parchment.minecraftVersion=1.20.4 +neogradle.subsystems.parchment.mappingsVersion=2024.04.14 +minecraft_version=1.20.5 +minecraft_version_range=[1.20.5,1.21) +neo_version=20.5.21-beta +loader_version_range=[1,) +mod_id=enchantmentdoesnotconflict +mod_name=EnchantmentDoNotConflictNeoForge +mod_license=Apache License 2.0 +mod_version=1.0 +mod_group_id=com.mingliqiye.minecraft.enchantment.conflict +mod_authors=minglipro +mod_description= Any Enchantment Now is not Conflict diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..1b33c55baabb587c669f562ae36f953de2481846 GIT binary patch literal 43764 zcma&OWmKeVvL#I6?i3D%6z=Zs?ofE*?rw#G$eqJB ziT4y8-Y@s9rkH0Tz>ll(^xkcTl)CY?rS&9VNd66Yc)g^6)JcWaY(5$5gt z8gr3SBXUTN;~cBgz&})qX%#!Fxom2Yau_`&8)+6aSN7YY+pS410rRUU*>J}qL0TnJ zRxt*7QeUqTh8j)Q&iavh<}L+$Jqz))<`IfKussVk%%Ah-Ti?Eo0hQH!rK%K=#EAw0 zwq@@~XNUXRnv8$;zv<6rCRJ6fPD^hfrh;0K?n z=p!u^3xOgWZ%f3+?+>H)9+w^$Tn1e;?UpVMJb!!;f)`6f&4|8mr+g)^@x>_rvnL0< zvD0Hu_N>$(Li7|Jgu0mRh&MV+<}`~Wi*+avM01E)Jtg=)-vViQKax!GeDc!xv$^mL z{#OVBA$U{(Zr8~Xm|cP@odkHC*1R8z6hcLY#N@3E-A8XEvpt066+3t9L_6Zg6j@9Q zj$$%~yO-OS6PUVrM2s)(T4#6=JpI_@Uz+!6=GdyVU?`!F=d;8#ZB@(5g7$A0(`eqY z8_i@3w$0*es5mrSjhW*qzrl!_LQWs4?VfLmo1Sd@Ztt53+etwzAT^8ow_*7Jp`Y|l z*UgSEwvxq+FYO!O*aLf-PinZYne7Ib6ny3u>MjQz=((r3NTEeU4=-i0LBq3H-VJH< z^>1RE3_JwrclUn9vb7HcGUaFRA0QHcnE;6)hnkp%lY1UII#WPAv?-;c?YH}LWB8Nl z{sx-@Z;QxWh9fX8SxLZk8;kMFlGD3Jc^QZVL4nO)1I$zQwvwM&_!kW+LMf&lApv#< zur|EyC|U@5OQuph$TC_ZU`{!vJp`13e9alaR0Dbn5ikLFH7>eIz4QbV|C=%7)F=qo z_>M&5N)d)7G(A%c>}UCrW!Ql_6_A{?R7&CL`;!KOb3 z8Z=$YkV-IF;c7zs{3-WDEFJzuakFbd*4LWd<_kBE8~BFcv}js_2OowRNzWCtCQ6&k z{&~Me92$m*@e0ANcWKuz)?YjB*VoSTx??-3Cc0l2U!X^;Bv@m87eKHukAljrD54R+ zE;@_w4NPe1>3`i5Qy*3^E9x#VB6?}v=~qIprrrd5|DFkg;v5ixo0IsBmik8=Y;zv2 z%Bcf%NE$a44bk^`i4VwDLTbX=q@j9;JWT9JncQ!+Y%2&HHk@1~*L8-{ZpY?(-a9J-1~<1ltr9i~D9`P{XTIFWA6IG8c4;6bFw*lzU-{+?b&%OcIoCiw00n>A1ra zFPE$y@>ebbZlf(sN_iWBzQKDV zmmaLX#zK!@ZdvCANfwV}9@2O&w)!5gSgQzHdk2Q`jG6KD7S+1R5&F)j6QTD^=hq&7 zHUW+r^da^%V(h(wonR(j?BOiC!;y=%nJvz?*aW&5E87qq;2z`EI(f zBJNNSMFF9U{sR-af5{IY&AtoGcoG)Iq-S^v{7+t0>7N(KRoPj;+2N5;9o_nxIGjJ@ z7bYQK)bX)vEhy~VL%N6g^NE@D5VtV+Q8U2%{ji_=6+i^G%xeskEhH>Sqr194PJ$fB zu1y^){?9Vkg(FY2h)3ZHrw0Z<@;(gd_dtF#6y_;Iwi{yX$?asr?0N0_B*CifEi7<6 zq`?OdQjCYbhVcg+7MSgIM|pJRu~`g?g3x?Tl+V}#$It`iD1j+!x+!;wS0+2e>#g?Z z*EA^k7W{jO1r^K~cD#5pamp+o@8&yw6;%b|uiT?{Wa=4+9<}aXWUuL#ZwN1a;lQod zW{pxWCYGXdEq9qAmvAB904}?97=re$>!I%wxPV#|f#@A*Y=qa%zHlDv^yWbR03%V0 zprLP+b(#fBqxI%FiF*-n8HtH6$8f(P6!H3V^ysgd8de-N(@|K!A< z^qP}jp(RaM9kQ(^K(U8O84?D)aU(g?1S8iWwe)gqpHCaFlJxb*ilr{KTnu4_@5{K- z)n=CCeCrPHO0WHz)dDtkbZfUfVBd?53}K>C5*-wC4hpDN8cGk3lu-ypq+EYpb_2H; z%vP4@&+c2p;thaTs$dc^1CDGlPG@A;yGR5@$UEqk6p58qpw#7lc<+W(WR;(vr(D>W z#(K$vE#uBkT=*q&uaZwzz=P5mjiee6>!lV?c}QIX%ZdkO1dHg>Fa#xcGT6~}1*2m9 zkc7l3ItD6Ie~o_aFjI$Ri=C!8uF4!Ky7iG9QTrxVbsQroi|r)SAon#*B*{}TB-?=@ z8~jJs;_R2iDd!$+n$%X6FO&PYS{YhDAS+U2o4su9x~1+U3z7YN5o0qUK&|g^klZ6X zj_vrM5SUTnz5`*}Hyts9ADwLu#x_L=nv$Z0`HqN`Zo=V>OQI)fh01n~*a%01%cx%0 z4LTFVjmW+ipVQv5rYcn3;d2o4qunWUY!p+?s~X~(ost@WR@r@EuDOSs8*MT4fiP>! zkfo^!PWJJ1MHgKS2D_hc?Bs?isSDO61>ebl$U*9*QY(b=i&rp3@3GV@z>KzcZOxip z^dzA~44;R~cnhWz7s$$v?_8y-k!DZys}Q?4IkSyR!)C0j$(Gm|t#e3|QAOFaV2}36 z?dPNY;@I=FaCwylc_;~kXlZsk$_eLkNb~TIl8QQ`mmH&$*zwwR8zHU*sId)rxHu*K z;yZWa8UmCwju%aSNLwD5fBl^b0Ux1%q8YR*uG`53Mi<`5uA^Dc6Ync)J3N7;zQ*75)hf%a@{$H+%S?SGT)ks60)?6j$ zspl|4Ad6@%-r1t*$tT(en!gIXTUDcsj?28ZEzz)dH)SV3bZ+pjMaW0oc~rOPZP@g! zb9E+ndeVO_Ib9c_>{)`01^`ZS198 z)(t=+{Azi11$eu%aU7jbwuQrO`vLOixuh~%4z@mKr_Oc;F%Uq01fA)^W&y+g16e?rkLhTxV!EqC%2}sx_1u7IBq|}Be&7WI z4I<;1-9tJsI&pQIhj>FPkQV9{(m!wYYV@i5h?A0#BN2wqlEwNDIq06|^2oYVa7<~h zI_OLan0Do*4R5P=a3H9`s5*>xU}_PSztg`+2mv)|3nIy=5#Z$%+@tZnr> zLcTI!Mxa`PY7%{;KW~!=;*t)R_sl<^b>eNO@w#fEt(tPMg_jpJpW$q_DoUlkY|uo> z0-1{ouA#;t%spf*7VjkK&$QrvwUERKt^Sdo)5@?qAP)>}Y!h4(JQ!7{wIdkA+|)bv z&8hBwoX4v|+fie}iTslaBX^i*TjwO}f{V)8*!dMmRPi%XAWc8<_IqK1jUsApk)+~R zNFTCD-h>M5Y{qTQ&0#j@I@tmXGj%rzhTW5%Bkh&sSc=$Fv;M@1y!zvYG5P2(2|(&W zlcbR1{--rJ&s!rB{G-sX5^PaM@3EqWVz_y9cwLR9xMig&9gq(voeI)W&{d6j1jh&< zARXi&APWE1FQWh7eoZjuP z;vdgX>zep^{{2%hem;e*gDJhK1Hj12nBLIJoL<=0+8SVEBx7!4Ea+hBY;A1gBwvY<)tj~T=H`^?3>zeWWm|LAwo*S4Z%bDVUe z6r)CH1H!(>OH#MXFJ2V(U(qxD{4Px2`8qfFLG+=a;B^~Te_Z!r3RO%Oc#ZAHKQxV5 zRYXxZ9T2A%NVJIu5Pu7!Mj>t%YDO$T@M=RR(~mi%sv(YXVl`yMLD;+WZ{vG9(@P#e zMo}ZiK^7^h6TV%cG+;jhJ0s>h&VERs=tuZz^Tlu~%d{ZHtq6hX$V9h)Bw|jVCMudd zwZ5l7In8NT)qEPGF$VSKg&fb0%R2RnUnqa){)V(X(s0U zkCdVZe6wy{+_WhZh3qLp245Y2RR$@g-!9PjJ&4~0cFSHMUn=>dapv)hy}|y91ZWTV zCh=z*!S3_?`$&-eZ6xIXUq8RGl9oK0BJw*TdU6A`LJqX9eS3X@F)g$jLkBWFscPhR zpCv8#KeAc^y>>Y$k^=r|K(DTC}T$0#jQBOwB#@`P6~*IuW_8JxCG}J4va{ zsZzt}tt+cv7=l&CEuVtjD6G2~_Meh%p4RGuY?hSt?(sreO_F}8r7Kp$qQdvCdZnDQ zxzc*qchE*E2=WK)^oRNa>Ttj`fpvF-JZ5tu5>X1xw)J@1!IqWjq)ESBG?J|ez`-Tc zi5a}GZx|w-h%5lNDE_3ho0hEXMoaofo#Z;$8|2;EDF&*L+e$u}K=u?pb;dv$SXeQM zD-~7P0i_`Wk$#YP$=hw3UVU+=^@Kuy$>6?~gIXx636jh{PHly_a2xNYe1l60`|y!7 z(u%;ILuW0DDJ)2%y`Zc~hOALnj1~txJtcdD#o4BCT68+8gZe`=^te6H_egxY#nZH&P*)hgYaoJ^qtmpeea`35Fw)cy!w@c#v6E29co8&D9CTCl%^GV|X;SpneSXzV~LXyRn-@K0Df z{tK-nDWA!q38M1~`xUIt_(MO^R(yNY#9@es9RQbY@Ia*xHhD&=k^T+ zJi@j2I|WcgW=PuAc>hs`(&CvgjL2a9Rx zCbZyUpi8NWUOi@S%t+Su4|r&UoU|ze9SVe7p@f1GBkrjkkq)T}X%Qo1g!SQ{O{P?m z-OfGyyWta+UCXH+-+(D^%kw#A1-U;?9129at7MeCCzC{DNgO zeSqsV>W^NIfTO~4({c}KUiuoH8A*J!Cb0*sp*w-Bg@YfBIPZFH!M}C=S=S7PLLcIG zs7K77g~W)~^|+mx9onzMm0qh(f~OsDTzVmRtz=aZTllgR zGUn~_5hw_k&rll<4G=G+`^Xlnw;jNYDJz@bE?|r866F2hA9v0-8=JO3g}IHB#b`hy zA42a0>{0L7CcabSD+F7?pGbS1KMvT{@1_@k!_+Ki|5~EMGt7T%u=79F)8xEiL5!EJ zzuxQ`NBliCoJMJdwu|);zRCD<5Sf?Y>U$trQ-;xj6!s5&w=9E7)%pZ+1Nh&8nCCwM zv5>Ket%I?cxr3vVva`YeR?dGxbG@pi{H#8@kFEf0Jq6~K4>kt26*bxv=P&jyE#e$| zDJB_~imk^-z|o!2njF2hL*|7sHCnzluhJjwLQGDmC)Y9 zr9ZN`s)uCd^XDvn)VirMgW~qfn1~SaN^7vcX#K1G`==UGaDVVx$0BQnubhX|{e z^i0}>k-;BP#Szk{cFjO{2x~LjK{^Upqd&<+03_iMLp0$!6_$@TbX>8U-f*-w-ew1?`CtD_0y_Lo|PfKi52p?`5$Jzx0E8`M0 zNIb?#!K$mM4X%`Ry_yhG5k@*+n4||2!~*+&pYLh~{`~o(W|o64^NrjP?-1Lgu?iK^ zTX6u3?#$?R?N!{599vg>G8RGHw)Hx&=|g4599y}mXNpM{EPKKXB&+m?==R3GsIq?G zL5fH={=zawB(sMlDBJ+{dgb)Vx3pu>L=mDV0{r1Qs{0Pn%TpopH{m(By4;{FBvi{I z$}x!Iw~MJOL~&)p93SDIfP3x%ROjg}X{Sme#hiJ&Yk&a;iR}V|n%PriZBY8SX2*;6 z4hdb^&h;Xz%)BDACY5AUsV!($lib4>11UmcgXKWpzRL8r2Srl*9Y(1uBQsY&hO&uv znDNff0tpHlLISam?o(lOp#CmFdH<6HmA0{UwfU#Y{8M+7od8b8|B|7ZYR9f<#+V|ZSaCQvI$~es~g(Pv{2&m_rKSB2QQ zMvT}$?Ll>V+!9Xh5^iy3?UG;dF-zh~RL#++roOCsW^cZ&({6q|?Jt6`?S8=16Y{oH zp50I7r1AC1(#{b`Aq5cw>ypNggHKM9vBx!W$eYIzD!4KbLsZGr2o8>g<@inmS3*>J zx8oG((8f!ei|M@JZB`p7+n<Q}?>h249<`7xJ?u}_n;Gq(&km#1ULN87CeTO~FY zS_Ty}0TgQhV zOh3T7{{x&LSYGQfKR1PDIkP!WnfC1$l+fs@Di+d4O=eVKeF~2fq#1<8hEvpwuqcaH z4A8u~r^gnY3u6}zj*RHjk{AHhrrDqaj?|6GaVJbV%o-nATw}ASFr!f`Oz|u_QPkR# z0mDudY1dZRlk@TyQ?%Eti=$_WNFtLpSx9=S^be{wXINp%MU?a`F66LNU<c;0&ngifmP9i;bj6&hdGMW^Kf8e6ZDXbQD&$QAAMo;OQ)G zW(qlHh;}!ZP)JKEjm$VZjTs@hk&4{?@+NADuYrr!R^cJzU{kGc1yB?;7mIyAWwhbeA_l_lw-iDVi7wcFurf5 z#Uw)A@a9fOf{D}AWE%<`s1L_AwpZ?F!Vac$LYkp<#A!!`XKaDC{A%)~K#5z6>Hv@V zBEqF(D5?@6r3Pwj$^krpPDCjB+UOszqUS;b2n>&iAFcw<*im2(b3|5u6SK!n9Sg4I z0KLcwA6{Mq?p%t>aW0W!PQ>iUeYvNjdKYqII!CE7SsS&Rj)eIw-K4jtI?II+0IdGq z2WT|L3RL?;GtGgt1LWfI4Ka`9dbZXc$TMJ~8#Juv@K^1RJN@yzdLS8$AJ(>g!U9`# zx}qr7JWlU+&m)VG*Se;rGisutS%!6yybi%B`bv|9rjS(xOUIvbNz5qtvC$_JYY+c& za*3*2$RUH8p%pSq>48xR)4qsp!Q7BEiJ*`^>^6INRbC@>+2q9?x(h0bpc>GaNFi$K zPH$6!#(~{8@0QZk=)QnM#I=bDx5vTvjm$f4K}%*s+((H2>tUTf==$wqyoI`oxI7>C z&>5fe)Yg)SmT)eA(|j@JYR1M%KixxC-Eceknf-;N=jJTwKvk#@|J^&5H0c+%KxHUI z6dQbwwVx3p?X<_VRVb2fStH?HH zFR@Mp=qX%#L3XL)+$PXKV|o|#DpHAoqvj6uQKe@M-mnhCSou7Dj4YuO6^*V`m)1lf z;)@e%1!Qg$10w8uEmz{ENb$^%u}B;J7sDd zump}onoD#!l=agcBR)iG!3AF0-63%@`K9G(CzKrm$VJ{v7^O9Ps7Zej|3m= zVXlR&yW6=Y%mD30G@|tf=yC7-#L!16Q=dq&@beWgaIL40k0n% z)QHrp2Jck#evLMM1RGt3WvQ936ZC9vEje0nFMfvmOHVI+&okB_K|l-;|4vW;qk>n~ z+|kk8#`K?x`q>`(f6A${wfw9Cx(^)~tX7<#TpxR#zYG2P+FY~mG{tnEkv~d6oUQA+ z&hNTL=~Y@rF`v-RZlts$nb$3(OL1&@Y11hhL9+zUb6)SP!;CD)^GUtUpCHBE`j1te zAGud@miCVFLk$fjsrcpjsadP__yj9iEZUW{Ll7PPi<$R;m1o!&Xdl~R_v0;oDX2z^!&8}zNGA}iYG|k zmehMd1%?R)u6R#<)B)1oe9TgYH5-CqUT8N7K-A-dm3hbm_W21p%8)H{O)xUlBVb+iUR}-v5dFaCyfSd zC6Bd7=N4A@+Bna=!-l|*_(nWGDpoyU>nH=}IOrLfS+-d40&(Wo*dDB9nQiA2Tse$R z;uq{`X7LLzP)%Y9aHa4YQ%H?htkWd3Owv&UYbr5NUDAH^<l@Z0Cx%`N+B*i!!1u>D8%;Qt1$ zE5O0{-`9gdDxZ!`0m}ywH!;c{oBfL-(BH<&SQ~smbcobU!j49O^f4&IIYh~f+hK*M zZwTp%{ZSAhMFj1qFaOA+3)p^gnXH^=)`NTYgTu!CLpEV2NF=~-`(}7p^Eof=@VUbd z_9U|8qF7Rueg&$qpSSkN%%%DpbV?8E8ivu@ensI0toJ7Eas^jyFReQ1JeY9plb^{m z&eQO)qPLZQ6O;FTr*aJq=$cMN)QlQO@G&%z?BKUs1&I^`lq>=QLODwa`(mFGC`0H< zOlc*|N?B5&!U6BuJvkL?s1&nsi$*5cCv7^j_*l&$-sBmRS85UIrE--7eD8Gr3^+o? zqG-Yl4S&E;>H>k^a0GdUI(|n1`ws@)1%sq2XBdK`mqrNq_b4N{#VpouCXLzNvjoFv zo9wMQ6l0+FT+?%N(ka*;%m~(?338bu32v26!{r)|w8J`EL|t$}TA4q_FJRX5 zCPa{hc_I(7TGE#@rO-(!$1H3N-C0{R$J=yPCXCtGk{4>=*B56JdXU9cQVwB`6~cQZ zf^qK21x_d>X%dT!!)CJQ3mlHA@ z{Prkgfs6=Tz%63$6Zr8CO0Ak3A)Cv#@BVKr&aiKG7RYxY$Yx>Bj#3gJk*~Ps-jc1l z;4nltQwwT4@Z)}Pb!3xM?+EW0qEKA)sqzw~!C6wd^{03-9aGf3Jmt=}w-*!yXupLf z;)>-7uvWN4Unn8b4kfIza-X=x*e4n5pU`HtgpFFd))s$C@#d>aUl3helLom+RYb&g zI7A9GXLRZPl}iQS*d$Azxg-VgcUr*lpLnbPKUV{QI|bsG{8bLG<%CF( zMoS4pRDtLVYOWG^@ox^h8xL~afW_9DcE#^1eEC1SVSb1BfDi^@g?#f6e%v~Aw>@w- zIY0k+2lGWNV|aA*e#`U3=+oBDmGeInfcL)>*!w|*;mWiKNG6wP6AW4-4imN!W)!hE zA02~S1*@Q`fD*+qX@f3!2yJX&6FsEfPditB%TWo3=HA;T3o2IrjS@9SSxv%{{7&4_ zdS#r4OU41~GYMiib#z#O;zohNbhJknrPPZS6sN$%HB=jUnlCO_w5Gw5EeE@KV>soy z2EZ?Y|4RQDDjt5y!WBlZ(8M)|HP<0YyG|D%RqD+K#e7-##o3IZxS^wQ5{Kbzb6h(i z#(wZ|^ei>8`%ta*!2tJzwMv+IFHLF`zTU8E^Mu!R*45_=ccqI};Zbyxw@U%a#2}%f zF>q?SrUa_a4H9l+uW8JHh2Oob>NyUwG=QH~-^ZebU*R@67DcXdz2{HVB4#@edz?B< z5!rQH3O0>A&ylROO%G^fimV*LX7>!%re{_Sm6N>S{+GW1LCnGImHRoF@csnFzn@P0 zM=jld0z%oz;j=>c7mMwzq$B^2mae7NiG}%>(wtmsDXkWk{?BeMpTrIt3Mizq?vRsf zi_WjNp+61uV(%gEU-Vf0;>~vcDhe(dzWdaf#4mH3o^v{0EWhj?E?$5v02sV@xL0l4 zX0_IMFtQ44PfWBbPYN#}qxa%=J%dlR{O!KyZvk^g5s?sTNycWYPJ^FK(nl3k?z-5t z39#hKrdO7V(@!TU)LAPY&ngnZ1MzLEeEiZznn7e-jLCy8LO zu^7_#z*%I-BjS#Pg-;zKWWqX-+Ly$T!4`vTe5ZOV0j?TJVA*2?*=82^GVlZIuH%9s zXiV&(T(QGHHah=s&7e|6y?g+XxZGmK55`wGV>@1U)Th&=JTgJq>4mI&Av2C z)w+kRoj_dA!;SfTfkgMPO>7Dw6&1*Hi1q?54Yng`JO&q->^CX21^PrU^JU#CJ_qhV zSG>afB%>2fx<~g8p=P8Yzxqc}s@>>{g7}F!;lCXvF#RV)^fyYb_)iKVCz1xEq=fJ| z0a7DMCK*FuP=NM*5h;*D`R4y$6cpW-E&-i{v`x=Jbk_xSn@2T3q!3HoAOB`@5Vg6) z{PW|@9o!e;v1jZ2{=Uw6S6o{g82x6g=k!)cFSC*oemHaVjg?VpEmtUuD2_J^A~$4* z3O7HsbA6wxw{TP5Kk)(Vm?gKo+_}11vbo{Tp_5x79P~#F)ahQXT)tSH5;;14?s)On zel1J>1x>+7;g1Iz2FRpnYz;sD0wG9Q!vuzE9yKi3@4a9Nh1!GGN?hA)!mZEnnHh&i zf?#ZEN2sFbf~kV;>K3UNj1&vFhc^sxgj8FCL4v>EOYL?2uuT`0eDH}R zmtUJMxVrV5H{L53hu3#qaWLUa#5zY?f5ozIn|PkMWNP%n zWB5!B0LZB0kLw$k39=!akkE9Q>F4j+q434jB4VmslQ;$ zKiO#FZ`p|dKS716jpcvR{QJkSNfDVhr2%~eHrW;fU45>>snr*S8Vik-5eN5k*c2Mp zyxvX&_cFbB6lODXznHHT|rsURe2!swomtrqc~w5 zymTM8!w`1{04CBprR!_F{5LB+2_SOuZN{b*!J~1ZiPpP-M;);!ce!rOPDLtgR@Ie1 zPreuqm4!H)hYePcW1WZ0Fyaqe%l}F~Orr)~+;mkS&pOhP5Ebb`cnUt!X_QhP4_4p( z8YKQCDKGIy>?WIFm3-}Br2-N`T&FOi?t)$hjphB9wOhBXU#Hb+zm&We_-O)s(wc`2 z8?VsvU;J>Ju7n}uUb3s1yPx_F*|FlAi=Ge=-kN?1;`~6szP%$3B0|8Sqp%ebM)F8v zADFrbeT0cgE>M0DMV@_Ze*GHM>q}wWMzt|GYC%}r{OXRG3Ij&<+nx9;4jE${Fj_r* z`{z1AW_6Myd)i6e0E-h&m{{CvzH=Xg!&(bLYgRMO_YVd8JU7W+7MuGWNE=4@OvP9+ zxi^vqS@5%+#gf*Z@RVyU9N1sO-(rY$24LGsg1>w>s6ST^@)|D9>cT50maXLUD{Fzf zt~tp{OSTEKg3ZSQyQQ5r51){%=?xlZ54*t1;Ow)zLe3i?8tD8YyY^k%M)e`V*r+vL zPqUf&m)U+zxps+NprxMHF{QSxv}>lE{JZETNk1&F+R~bp{_T$dbXL2UGnB|hgh*p4h$clt#6;NO~>zuyY@C-MD@)JCc5XrYOt`wW7! z_ti2hhZBMJNbn0O-uTxl_b6Hm313^fG@e;RrhIUK9@# z+DHGv_Ow$%S8D%RB}`doJjJy*aOa5mGHVHz0e0>>O_%+^56?IkA5eN+L1BVCp4~m=1eeL zb;#G!#^5G%6Mw}r1KnaKsLvJB%HZL)!3OxT{k$Yo-XrJ?|7{s4!H+S2o?N|^Z z)+?IE9H7h~Vxn5hTis^3wHYuOU84+bWd)cUKuHapq=&}WV#OxHpLab`NpwHm8LmOo zjri+!k;7j_?FP##CpM+pOVx*0wExEex z@`#)K<-ZrGyArK;a%Km`^+We|eT+#MygHOT6lXBmz`8|lyZOwL1+b+?Z$0OhMEp3R z&J=iRERpv~TC=p2-BYLC*?4 zxvPs9V@g=JT0>zky5Poj=fW_M!c)Xxz1<=&_ZcL=LMZJqlnO1P^xwGGW*Z+yTBvbV z-IFe6;(k1@$1;tS>{%pXZ_7w+i?N4A2=TXnGf=YhePg8bH8M|Lk-->+w8Y+FjZ;L=wSGwxfA`gqSn)f(XNuSm>6Y z@|#e-)I(PQ^G@N`%|_DZSb4_pkaEF0!-nqY+t#pyA>{9^*I-zw4SYA1_z2Bs$XGUZbGA;VeMo%CezHK0lO={L%G)dI-+8w?r9iexdoB{?l zbJ}C?huIhWXBVs7oo{!$lOTlvCLZ_KN1N+XJGuG$rh<^eUQIqcI7^pmqhBSaOKNRq zrx~w^?9C?*&rNwP_SPYmo;J-#!G|{`$JZK7DxsM3N^8iR4vvn>E4MU&Oe1DKJvLc~ zCT>KLZ1;t@My zRj_2hI^61T&LIz)S!+AQIV23n1>ng+LUvzv;xu!4;wpqb#EZz;F)BLUzT;8UA1x*6vJ zicB!3Mj03s*kGV{g`fpC?V^s(=JG-k1EMHbkdP4P*1^8p_TqO|;!Zr%GuP$8KLxuf z=pv*H;kzd;P|2`JmBt~h6|GxdU~@weK5O=X&5~w$HpfO}@l-T7@vTCxVOwCkoPQv8 z@aV_)I5HQtfs7^X=C03zYmH4m0S!V@JINm6#(JmZRHBD?T!m^DdiZJrhKpBcur2u1 zf9e4%k$$vcFopK5!CC`;ww(CKL~}mlxK_Pv!cOsFgVkNIghA2Au@)t6;Y3*2gK=5d z?|@1a)-(sQ%uFOmJ7v2iG&l&m^u&^6DJM#XzCrF%r>{2XKyxLD2rgWBD;i(!e4InDQBDg==^z;AzT2z~OmV0!?Z z0S9pX$+E;w3WN;v&NYT=+G8hf=6w0E1$0AOr61}eOvE8W1jX%>&Mjo7&!ulawgzLH zbcb+IF(s^3aj12WSi#pzIpijJJzkP?JzRawnxmNDSUR#7!29vHULCE<3Aa#be}ie~d|!V+ z%l~s9Odo$G&fH!t!+`rUT0T9DulF!Yq&BfQWFZV1L9D($r4H(}Gnf6k3^wa7g5|Ws zj7%d`!3(0bb55yhC6@Q{?H|2os{_F%o=;-h{@Yyyn*V7?{s%Grvpe!H^kl6tF4Zf5 z{Jv1~yZ*iIWL_9C*8pBMQArfJJ0d9Df6Kl#wa}7Xa#Ef_5B7=X}DzbQXVPfCwTO@9+@;A^Ti6il_C>g?A-GFwA0#U;t4;wOm-4oS})h z5&on>NAu67O?YCQr%7XIzY%LS4bha9*e*4bU4{lGCUmO2UQ2U)QOqClLo61Kx~3dI zmV3*(P6F_Tr-oP%x!0kTnnT?Ep5j;_IQ^pTRp=e8dmJtI4YgWd0}+b2=ATkOhgpXe z;jmw+FBLE}UIs4!&HflFr4)vMFOJ19W4f2^W(=2)F%TAL)+=F>IE$=e=@j-*bFLSg z)wf|uFQu+!=N-UzSef62u0-C8Zc7 zo6@F)c+nZA{H|+~7i$DCU0pL{0Ye|fKLuV^w!0Y^tT$isu%i1Iw&N|tX3kwFKJN(M zXS`k9js66o$r)x?TWL}Kxl`wUDUpwFx(w4Yk%49;$sgVvT~n8AgfG~HUcDt1TRo^s zdla@6heJB@JV z!vK;BUMznhzGK6PVtj0)GB=zTv6)Q9Yt@l#fv7>wKovLobMV-+(8)NJmyF8R zcB|_K7=FJGGn^X@JdFaat0uhKjp3>k#^&xE_}6NYNG?kgTp>2Iu?ElUjt4~E-?`Du z?mDCS9wbuS%fU?5BU@Ijx>1HG*N?gIP+<~xE4u=>H`8o((cS5M6@_OK%jSjFHirQK zN9@~NXFx*jS{<|bgSpC|SAnA@I)+GB=2W|JJChLI_mx+-J(mSJ!b)uUom6nH0#2^(L@JBlV#t zLl?j54s`Y3vE^c_3^Hl0TGu*tw_n?@HyO@ZrENxA+^!)OvUX28gDSF*xFtQzM$A+O zCG=n#6~r|3zt=8%GuG} z<#VCZ%2?3Q(Ad#Y7GMJ~{U3>E{5e@z6+rgZLX{Cxk^p-7dip^d29;2N1_mm4QkASo z-L`GWWPCq$uCo;X_BmGIpJFBlhl<8~EG{vOD1o|X$aB9KPhWO_cKiU*$HWEgtf=fn zsO%9bp~D2c@?*K9jVN@_vhR03>M_8h!_~%aN!Cnr?s-!;U3SVfmhRwk11A^8Ns`@KeE}+ zN$H}a1U6E;*j5&~Og!xHdfK5M<~xka)x-0N)K_&e7AjMz`toDzasH+^1bZlC!n()crk9kg@$(Y{wdKvbuUd04N^8}t1iOgsKF zGa%%XWx@WoVaNC1!|&{5ZbkopFre-Lu(LCE5HWZBoE#W@er9W<>R=^oYxBvypN#x3 zq#LC8&q)GFP=5^-bpHj?LW=)-g+3_)Ylps!3^YQ{9~O9&K)xgy zMkCWaApU-MI~e^cV{Je75Qr7eF%&_H)BvfyKL=gIA>;OSq(y z052BFz3E(Prg~09>|_Z@!qj}@;8yxnw+#Ej0?Rk<y}4ghbD569B{9hSFr*^ygZ zr6j7P#gtZh6tMk6?4V$*Jgz+#&ug;yOr>=qdI#9U&^am2qoh4Jy}H2%a|#Fs{E(5r z%!ijh;VuGA6)W)cJZx+;9Bp1LMUzN~x_8lQ#D3+sL{be-Jyeo@@dv7XguJ&S5vrH` z>QxOMWn7N-T!D@1(@4>ZlL^y5>m#0!HKovs12GRav4z!>p(1~xok8+_{| z#Ae4{9#NLh#Vj2&JuIn5$d6t@__`o}umFo(n0QxUtd2GKCyE+erwXY?`cm*h&^9*8 zJ+8x6fRZI-e$CRygofIQN^dWysCxgkyr{(_oBwwSRxZora1(%(aC!5BTtj^+YuevI zx?)H#(xlALUp6QJ!=l9N__$cxBZ5p&7;qD3PsXRFVd<({Kh+mShFWJNpy`N@ab7?9 zv5=klvCJ4bx|-pvOO2-+G)6O?$&)ncA#Urze2rlBfp#htudhx-NeRnJ@u%^_bfw4o z4|{b8SkPV3b>Wera1W(+N@p9H>dc6{cnkh-sgr?e%(YkWvK+0YXVwk0=d`)}*47*B z5JGkEdVix!w7-<%r0JF~`ZMMPe;f0EQHuYHxya`puazyph*ZSb1mJAt^k4549BfS; zK7~T&lRb=W{s&t`DJ$B}s-eH1&&-wEOH1KWsKn0a(ZI+G!v&W4A*cl>qAvUv6pbUR z#(f#EKV8~hk&8oayBz4vaswc(?qw1vn`yC zZQDl2PCB-&Uu@g9ZQHhO+v(W0bNig{-k0;;`+wM@#@J)8r?qOYs#&vUna8ILxN7S{ zp1s41KnR8miQJtJtOr|+qk}wrLt+N*z#5o`TmD1)E&QD(Vh&pjZJ_J*0!8dy_ z>^=@v=J)C`x&gjqAYu`}t^S=DFCtc0MkBU2zf|69?xW`Ck~(6zLD)gSE{7n~6w8j_ zoH&~$ED2k5-yRa0!r8fMRy z;QjBYUaUnpd}mf%iVFPR%Dg9!d>g`01m~>2s))`W|5!kc+_&Y>wD@@C9%>-lE`WB0 zOIf%FVD^cj#2hCkFgi-fgzIfOi+ya)MZK@IZhHT5FVEaSbv-oDDs0W)pA0&^nM0TW zmgJmd7b1R7b0a`UwWJYZXp4AJPteYLH>@M|xZFKwm!t3D3&q~av?i)WvAKHE{RqpD{{%OhYkK?47}+}` zrR2(Iv9bhVa;cDzJ%6ntcSbx7v7J@Y4x&+eWSKZ*eR7_=CVIUSB$^lfYe@g+p|LD{ zPSpQmxx@b$%d!05|H}WzBT4_cq?@~dvy<7s&QWtieJ9)hd4)$SZz}#H2UTi$CkFWW|I)v_-NjuH!VypONC=1`A=rm_jfzQ8Fu~1r8i{q-+S_j$ z#u^t&Xnfi5tZtl@^!fUJhx@~Cg0*vXMK}D{>|$#T*+mj(J_@c{jXBF|rm4-8%Z2o! z2z0o(4%8KljCm^>6HDK!{jI7p+RAPcty_~GZ~R_+=+UzZ0qzOwD=;YeZt*?3%UGdr z`c|BPE;yUbnyARUl&XWSNJ<+uRt%!xPF&K;(l$^JcA_CMH6)FZt{>6ah$|(9$2fc~ z=CD00uHM{qv;{Zk9FR0~u|3|Eiqv9?z2#^GqylT5>6JNZwKqKBzzQpKU2_pmtD;CT zi%Ktau!Y2Tldfu&b0UgmF(SSBID)15*r08eoUe#bT_K-G4VecJL2Pa=6D1K6({zj6 za(2Z{r!FY5W^y{qZ}08+h9f>EKd&PN90f}Sc0ejf%kB4+f#T8Q1=Pj=~#pi$U zp#5rMR%W25>k?<$;$x72pkLibu1N|jX4cWjD3q^Pk3js!uK6h7!dlvw24crL|MZs_ zb%Y%?Fyp0bY0HkG^XyS76Ts*|Giw{31LR~+WU5NejqfPr73Rp!xQ1mLgq@mdWncLy z%8}|nzS4P&`^;zAR-&nm5f;D-%yNQPwq4N7&yULM8bkttkD)hVU>h>t47`{8?n2&4 zjEfL}UEagLUYwdx0sB2QXGeRmL?sZ%J!XM`$@ODc2!y|2#7hys=b$LrGbvvjx`Iqi z&RDDm3YBrlKhl`O@%%&rhLWZ*ABFz2nHu7k~3@e4)kO3%$=?GEFUcCF=6-1n!x^vmu+Ai*amgXH+Rknl6U>#9w;A} zn2xanZSDu`4%%x}+~FG{Wbi1jo@wqBc5(5Xl~d0KW(^Iu(U3>WB@-(&vn_PJt9{1`e9Iic@+{VPc`vP776L*viP{wYB2Iff8hB%E3|o zGMOu)tJX!`qJ}ZPzq7>=`*9TmETN7xwU;^AmFZ-ckZjV5B2T09pYliaqGFY|X#E-8 z20b>y?(r-Fn5*WZ-GsK}4WM>@TTqsxvSYWL6>18q8Q`~JO1{vLND2wg@58OaU!EvT z1|o+f1mVXz2EKAbL!Q=QWQKDZpV|jznuJ}@-)1&cdo z^&~b4Mx{*1gurlH;Vhk5g_cM&6LOHS2 zRkLfO#HabR1JD4Vc2t828dCUG#DL}f5QDSBg?o)IYYi@_xVwR2w_ntlpAW0NWk$F1 z$If?*lP&Ka1oWfl!)1c3fl`g*lMW3JOn#)R1+tfwrs`aiFUgz3;XIJ>{QFxLCkK30 zNS-)#DON3yb!7LBHQJ$)4y%TN82DC2-9tOIqzhZ27@WY^<6}vXCWcR5iN{LN8{0u9 zNXayqD=G|e?O^*ms*4P?G%o@J1tN9_76e}E#66mr89%W_&w4n66~R;X_vWD(oArwj z4CpY`)_mH2FvDuxgT+akffhX0b_slJJ*?Jn3O3~moqu2Fs1oL*>7m=oVek2bnprnW zixkaIFU%+3XhNA@@9hyhFwqsH2bM|`P?G>i<-gy>NflhrN{$9?LZ1ynSE_Mj0rADF zhOz4FnK}wpLmQuV zgO4_Oz9GBu_NN>cPLA=`SP^$gxAnj;WjJnBi%Q1zg`*^cG;Q)#3Gv@c^j6L{arv>- zAW%8WrSAVY1sj$=umcAf#ZgC8UGZGoamK}hR7j6}i8#np8ruUlvgQ$j+AQglFsQQq zOjyHf22pxh9+h#n$21&$h?2uq0>C9P?P=Juw0|;oE~c$H{#RGfa>| zj)Iv&uOnaf@foiBJ}_;zyPHcZt1U~nOcNB{)og8Btv+;f@PIT*xz$x!G?u0Di$lo7 zOugtQ$Wx|C($fyJTZE1JvR~i7LP{ zbdIwqYghQAJi9p}V&$=*2Azev$6K@pyblphgpv8^9bN!?V}{BkC!o#bl&AP!3DAjM zmWFsvn2fKWCfjcAQmE+=c3Y7j@#7|{;;0f~PIodmq*;W9Fiak|gil6$w3%b_Pr6K_ zJEG@&!J%DgBZJDCMn^7mk`JV0&l07Bt`1ymM|;a)MOWz*bh2#d{i?SDe9IcHs7 zjCrnyQ*Y5GzIt}>`bD91o#~5H?4_nckAgotN{2%!?wsSl|LVmJht$uhGa+HiH>;av z8c?mcMYM7;mvWr6noUR{)gE!=i7cZUY7e;HXa221KkRoc2UB>s$Y(k%NzTSEr>W(u z<(4mcc)4rB_&bPzX*1?*ra%VF}P1nwiP5cykJ&W{!OTlz&Td0pOkVp+wc z@k=-Hg=()hNg=Q!Ub%`BONH{ z_=ZFgetj@)NvppAK2>8r!KAgi>#%*7;O-o9MOOfQjV-n@BX6;Xw;I`%HBkk20v`qoVd0)}L6_49y1IhR z_OS}+eto}OPVRn*?UHC{eGyFU7JkPz!+gX4P>?h3QOwGS63fv4D1*no^6PveUeE5% zlehjv_3_^j^C({a2&RSoVlOn71D8WwMu9@Nb@=E_>1R*ve3`#TF(NA0?d9IR_tm=P zOP-x;gS*vtyE1Cm zG0L?2nRUFj#aLr-R1fX*$sXhad)~xdA*=hF3zPZhha<2O$Ps+F07w*3#MTe?)T8|A!P!v+a|ot{|^$q(TX`35O{WI0RbU zCj?hgOv=Z)xV?F`@HKI11IKtT^ocP78cqHU!YS@cHI@{fPD?YXL)?sD~9thOAv4JM|K8OlQhPXgnevF=F7GKD2#sZW*d za}ma31wLm81IZxX(W#A9mBvLZr|PoLnP>S4BhpK8{YV_}C|p<)4#yO{#ISbco92^3 zv&kCE(q9Wi;9%7>>PQ!zSkM%qqqLZW7O`VXvcj;WcJ`2~v?ZTYB@$Q&^CTfvy?1r^ z;Cdi+PTtmQwHX_7Kz?r#1>D zS5lWU(Mw_$B&`ZPmqxpIvK<~fbXq?x20k1~9az-Q!uR78mCgRj*eQ>zh3c$W}>^+w^dIr-u{@s30J=)1zF8?Wn|H`GS<=>Om|DjzC{}Jt?{!fSJe*@$H zg>wFnlT)k#T?LslW zu$^7Uy~$SQ21cE?3Ijl+bLfuH^U5P^$@~*UY#|_`uvAIe(+wD2eF}z_y!pvomuVO; zS^9fbdv)pcm-B@CW|Upm<7s|0+$@@<&*>$a{aW+oJ%f+VMO<#wa)7n|JL5egEgoBv zl$BY(NQjE0#*nv=!kMnp&{2Le#30b)Ql2e!VkPLK*+{jv77H7)xG7&=aPHL7LK9ER z5lfHxBI5O{-3S?GU4X6$yVk>lFn;ApnwZybdC-GAvaznGW-lScIls-P?Km2mF>%B2 zkcrXTk+__hj-3f48U%|jX9*|Ps41U_cd>2QW81Lz9}%`mTDIhE)jYI$q$ma7Y-`>% z8=u+Oftgcj%~TU}3nP8&h7k+}$D-CCgS~wtWvM|UU77r^pUw3YCV80Ou*+bH0!mf0 zxzUq4ed6y>oYFz7+l18PGGzhB^pqSt)si=9M>~0(Bx9*5r~W7sa#w+_1TSj3Jn9mW zMuG9BxN=}4645Cpa#SVKjFst;9UUY@O<|wpnZk$kE+to^4!?0@?Cwr3(>!NjYbu?x z1!U-?0_O?k!NdM^-rIQ8p)%?M+2xkhltt*|l=%z2WFJhme7*2xD~@zk#`dQR$6Lmd zb3LOD4fdt$Cq>?1<%&Y^wTWX=eHQ49Xl_lFUA(YQYHGHhd}@!VpYHHm=(1-O=yfK#kKe|2Xc*9}?BDFN zD7FJM-AjVi)T~OG)hpSWqH>vlb41V#^G2B_EvYlWhDB{Z;Q9-0)ja(O+By`31=biA zG&Fs#5!%_mHi|E4Nm$;vVQ!*>=_F;ZC=1DTPB#CICS5fL2T3XmzyHu?bI;m7D4@#; ztr~;dGYwb?m^VebuULtS4lkC_7>KCS)F@)0OdxZIFZp@FM_pHnJes8YOvwB|++#G( z&dm*OP^cz95Wi15vh`Q+yB>R{8zqEhz5of>Po$9LNE{xS<)lg2*roP*sQ}3r3t<}; zPbDl{lk{pox~2(XY5=qg0z!W-x^PJ`VVtz$git7?)!h>`91&&hESZy1KCJ2nS^yMH z!=Q$eTyRi68rKxdDsdt+%J_&lapa{ds^HV9Ngp^YDvtq&-Xp}60B_w@Ma>_1TTC;^ zpbe!#gH}#fFLkNo#|`jcn?5LeUYto%==XBk6Ik0kc4$6Z+L3x^4=M6OI1=z5u#M%0 z0E`kevJEpJjvvN>+g`?gtnbo$@p4VumliZV3Z%CfXXB&wPS^5C+7of2tyVkMwNWBiTE2 z8CdPu3i{*vR-I(NY5syRR}I1TJOV@DJy-Xmvxn^IInF>Tx2e)eE9jVSz69$6T`M9-&om!T+I znia!ZWJRB28o_srWlAxtz4VVft8)cYloIoVF=pL zugnk@vFLXQ_^7;%hn9x;Vq?lzg7%CQR^c#S)Oc-8d=q_!2ZVH764V z!wDKSgP}BrVV6SfCLZnYe-7f;igDs9t+K*rbMAKsp9L$Kh<6Z;e7;xxced zn=FGY<}CUz31a2G}$Q(`_r~75PzM4l_({Hg&b@d8&jC}B?2<+ed`f#qMEWi z`gm!STV9E4sLaQX+sp5Nu9*;9g12naf5?=P9p@H@f}dxYprH+3ju)uDFt^V{G0APn zS;16Dk{*fm6&BCg#2vo?7cbkkI4R`S9SSEJ=#KBk3rl69SxnCnS#{*$!^T9UUmO#&XXKjHKBqLdt^3yVvu8yn|{ zZ#%1CP)8t-PAz(+_g?xyq;C2<9<5Yy<~C74Iw(y>uUL$+$mp(DRcCWbCKiGCZw@?_ zdomfp+C5xt;j5L@VfhF*xvZdXwA5pcdsG>G<8II-|1dhAgzS&KArcb0BD4ZZ#WfiEY{hkCq5%z9@f|!EwTm;UEjKJsUo696V>h zy##eXYX}GUu%t{Gql8vVZKkNhQeQ4C%n|RmxL4ee5$cgwlU+?V7a?(jI#&3wid+Kz5+x^G!bb#$q>QpR#BZ}Xo5UW^ zD&I`;?(a}Oys7-`I^|AkN?{XLZNa{@27Dv^s4pGowuyhHuXc zuctKG2x0{WCvg_sGN^n9myJ}&FXyGmUQnW7fR$=bj$AHR88-q$D!*8MNB{YvTTEyS zn22f@WMdvg5~o_2wkjItJN@?mDZ9UUlat2zCh(zVE=dGi$rjXF7&}*sxac^%HFD`Y zTM5D3u5x**{bW!68DL1A!s&$2XG@ytB~dX-?BF9U@XZABO`a|LM1X3HWCllgl0+uL z04S*PX$%|^WAq%jkzp~%9HyYIF{Ym?k)j3nMwPZ=hlCg9!G+t>tf0o|J2%t1 ztC+`((dUplgm3`+0JN~}&FRRJ3?l*>Y&TfjS>!ShS`*MwO{WIbAZR#<%M|4c4^dY8 z{Rh;-!qhY=dz5JthbWoovLY~jNaw>%tS4gHVlt5epV8ekXm#==Po$)}mh^u*cE>q7*kvX&gq)(AHoItMYH6^s6f(deNw%}1=7O~bTHSj1rm2|Cq+3M z93djjdomWCTCYu!3Slx2bZVy#CWDozNedIHbqa|otsUl+ut?>a;}OqPfQA05Yim_2 zs@^BjPoFHOYNc6VbNaR5QZfSMh2S*`BGwcHMM(1@w{-4jVqE8Eu0Bi%d!E*^Rj?cR z7qgxkINXZR)K^=fh{pc0DCKtrydVbVILI>@Y0!Jm>x-xM!gu%dehm?cC6ok_msDVA*J#{75%4IZt}X|tIVPReZS#aCvuHkZxc zHVMtUhT(wp09+w9j9eRqz~LtuSNi2rQx_QgQ(}jBt7NqyT&ma61ldD(s9x%@q~PQl zp6N*?=N$BtvjQ_xIT{+vhb1>{pM0Arde0!X-y))A4znDrVx8yrP3B1(7bKPE5jR@5 zwpzwT4cu~_qUG#zYMZ_!2Tkl9zP>M%cy>9Y(@&VoB84#%>amTAH{(hL4cDYt!^{8L z645F>BWO6QaFJ-{C-i|-d%j7#&7)$X7pv#%9J6da#9FB5KyDhkA+~)G0^87!^}AP>XaCSScr;kL;Z%RSPD2CgoJ;gpYT5&6NUK$86$T?jRH=w8nI9Z534O?5fk{kd z`(-t$8W|#$3>xoMfXvV^-A(Q~$8SKDE^!T;J+rQXP71XZ(kCCbP%bAQ1|%$%Ov9_a zyC`QP3uPvFoBqr_+$HenHklqyIr>PU_Fk5$2C+0eYy^~7U&(!B&&P2%7#mBUhM!z> z_B$Ko?{Pf6?)gpYs~N*y%-3!1>o-4;@1Zz9VQHh)j5U1aL-Hyu@1d?X;jtDBNk*vMXPn@ z+u@wxHN*{uHR!*g*4Xo&w;5A+=Pf9w#PeZ^x@UD?iQ&${K2c}UQgLRik-rKM#Y5rdDphdcNTF~cCX&9ViRP}`>L)QA4zNXeG)KXFzSDa6 zd^St;inY6J_i=5mcGTx4_^Ys`M3l%Q==f>{8S1LEHn{y(kbxn5g1ezt4CELqy)~TV6{;VW>O9?5^ ztcoxHRa0jQY7>wwHWcxA-BCwzsP>63Kt&3fy*n#Cha687CQurXaRQnf5wc9o8v7Rw zNwGr2fac;Wr-Ldehn7tF^(-gPJwPt@VR1f;AmKgxN&YPL;j=0^xKM{!wuU|^mh3NE zy35quf}MeL!PU;|{OW_x$TBothLylT-J>_x6p}B_jW1L>k)ps6n%7Rh z96mPkJIM0QFNYUM2H}YF5bs%@Chs6#pEnloQhEl?J-)es!(SoJpEPoMTdgA14-#mC zghayD-DJWtUu`TD8?4mR)w5E`^EHbsz2EjH5aQLYRcF{l7_Q5?CEEvzDo(zjh|BKg z3aJl_n#j&eFHsUw4~lxqnr!6NL*se)6H=A+T1e3xUJGQrd}oSPwSy5+$tt{2t5J5@(lFxl43amsARG74iyNC}uuS zd2$=(r6RdamdGx^eatX@F2D8?U23tDpR+Os?0Gq2&^dF+$9wiWf?=mDWfjo4LfRwL zI#SRV9iSz>XCSgEj!cW&9H-njJopYiYuq|2w<5R2!nZ27DyvU4UDrHpoNQZiGPkp@ z1$h4H46Zn~eqdj$pWrv;*t!rTYTfZ1_bdkZmVVIRC21YeU$iS-*XMNK`#p8Z_DJx| zk3Jssf^XP7v0X?MWFO{rACltn$^~q(M9rMYoVxG$15N;nP)A98k^m3CJx8>6}NrUd@wp-E#$Q0uUDQT5GoiK_R{ z<{`g;8s>UFLpbga#DAf%qbfi`WN1J@6IA~R!YBT}qp%V-j!ybkR{uY0X|x)gmzE0J z&)=eHPjBxJvrZSOmt|)hC+kIMI;qgOnuL3mbNR0g^<%|>9x7>{}>a2qYSZAGPt4it?8 zNcLc!Gy0>$jaU?}ZWxK78hbhzE+etM`67*-*x4DN>1_&{@5t7_c*n(qz>&K{Y?10s zXsw2&nQev#SUSd|D8w7ZD2>E<%g^; zV{yE_O}gq?Q|zL|jdqB^zcx7vo(^})QW?QKacx$yR zhG|XH|8$vDZNIfuxr-sYFR{^csEI*IM#_gd;9*C+SysUFejP0{{z7@P?1+&_o6=7V|EJLQun^XEMS)w(=@eMi5&bbH*a0f;iC~2J74V2DZIlLUHD&>mlug5+v z6xBN~8-ovZylyH&gG#ptYsNlT?-tzOh%V#Y33zlsJ{AIju`CjIgf$@gr8}JugRq^c zAVQ3;&uGaVlVw}SUSWnTkH_6DISN&k2QLMBe9YU=sA+WiX@z)FoSYX`^k@B!j;ZeC zf&**P?HQG6Rk98hZ*ozn6iS-dG}V>jQhb3?4NJB*2F?6N7Nd;EOOo;xR7acylLaLy z9)^lykX39d@8@I~iEVar4jmjjLWhR0d=EB@%I;FZM$rykBNN~jf>#WbH4U{MqhhF6 zU??@fSO~4EbU4MaeQ_UXQcFyO*Rae|VAPLYMJEU`Q_Q_%s2*>$#S^)&7er+&`9L=1 z4q4ao07Z2Vsa%(nP!kJ590YmvrWg+YrgXYs_lv&B5EcoD`%uL79WyYA$0>>qi6ov7 z%`ia~J^_l{p39EY zv>>b}Qs8vxsu&WcXEt8B#FD%L%ZpcVtY!rqVTHe;$p9rbb5O{^rFMB>auLn-^;s+-&P1#h~mf~YLg$8M9 zZ4#87;e-Y6x6QO<{McUzhy(%*6| z)`D~A(TJ$>+0H+mct(jfgL4x%^oC^T#u(bL)`E2tBI#V1kSikAWmOOYrO~#-cc_8! zCe|@1&mN2{*ceeiBldHCdrURk4>V}79_*TVP3aCyV*5n@jiNbOm+~EQ_}1#->_tI@ zqXv+jj2#8xJtW508rzFrYcJxoek@iW6SR@1%a%Bux&;>25%`j3UI`0DaUr7l79`B1 zqqUARhW1^h6=)6?;@v>xrZNM;t}{yY3P@|L}ey@gG( z9r{}WoYN(9TW&dE2dEJIXkyHA4&pU6ki=rx&l2{DLGbVmg4%3Dlfvn!GB>EVaY_%3+Df{fBiqJV>~Xf8A0aqUjgpa} zoF8YXO&^_x*Ej}nw-$-F@(ddB>%RWoPUj?p8U{t0=n>gAI83y<9Ce@Q#3&(soJ{64 z37@Vij1}5fmzAuIUnXX`EYe;!H-yTVTmhAy;y8VZeB#vD{vw9~P#DiFiKQ|kWwGFZ z=jK;JX*A;Jr{#x?n8XUOLS;C%f|zj-7vXtlf_DtP7bpurBeX%Hjwr z4lI-2TdFpzkjgiv!8Vfv`=SP+s=^i3+N~1ELNWUbH|ytVu>EyPN_3(4TM^QE1swRo zoV7Y_g)a>28+hZG0e7g%@2^s>pzR4^fzR-El}ARTmtu!zjZLuX%>#OoU3}|rFjJg} zQ2TmaygxJ#sbHVyiA5KE+yH0LREWr%^C*yR|@gM$nK2P zo}M}PV0v))uJh&33N>#aU376@ZH79u(Yw`EQ2hM3SJs9f99+cO6_pNW$j$L-CtAfe zYfM)ccwD!P%LiBk!eCD?fHCGvgMQ%Q2oT_gmf?OY=A>&PaZQOq4eT=lwbaf}33LCH zFD|)lu{K7$8n9gX#w4~URjZxWm@wlH%oL#G|I~Fb-v^0L0TWu+`B+ZG!yII)w05DU z>GO?n(TN+B=>HdxVDSlIH76pta$_LhbBg;eZ`M7OGcqt||qi zogS72W1IN%=)5JCyOHWoFP7pOFK0L*OAh=i%&VW&4^LF@R;+K)t^S!96?}^+5QBIs zjJNTCh)?)4k^H^g1&jc>gysM`y^8Rm3qsvkr$9AeWwYpa$b22=yAd1t<*{ zaowSEFP+{y?Ob}8&cwfqoy4Pb9IA~VnM3u!trIK$&&0Op#Ql4j>(EW?UNUv#*iH1$ z^j>+W{afcd`{e&`-A{g}{JnIzYib)!T56IT@YEs{4|`sMpW3c8@UCoIJv`XsAw!XC z34|Il$LpW}CIHFC5e*)}00I5{%OL*WZRGzC0?_}-9{#ue?-ug^ zLE|uv-~6xnSs_2_&CN9{9vyc!Xgtn36_g^wI0C4s0s^;8+p?|mm;Odt3`2ZjwtK;l zfd6j)*Fr#53>C6Y8(N5?$H0ma;BCF3HCjUs7rpb2Kf*x3Xcj#O8mvs#&33i+McX zQpBxD8!O{5Y8D&0*QjD=Yhl9%M0)&_vk}bmN_Ud^BPN;H=U^bn&(csl-pkA+GyY0Z zKV7sU_4n;}uR78ouo8O%g*V;79KY?3d>k6%gpcmQsKk&@Vkw9yna_3asGt`0Hmj59 z%0yiF*`jXhByBI9QsD=+>big5{)BGe&+U2gAARGe3ID)xrid~QN_{I>k}@tzL!Md_ z&=7>TWciblF@EMC3t4-WX{?!m!G6$M$1S?NzF*2KHMP3Go4=#ZHkeIv{eEd;s-yD# z_jU^Ba06TZqvV|Yd;Z_sN%$X=!T+&?#p+OQIHS%!LO`Hx0q_Y0MyGYFNoM{W;&@0@ zLM^!X4KhdtsET5G<0+|q0oqVXMW~-7LW9Bg}=E$YtNh1#1D^6Mz(V9?2g~I1( zoz9Cz=8Hw98zVLwC2AQvp@pBeKyidn6Xu0-1SY1((^Hu*-!HxFUPs)yJ+i`^BC>PC zjwd0mygOVK#d2pRC9LxqGc6;Ui>f{YW9Bvb>33bp^NcnZoH~w9(lM5@JiIlfa-6|k ziy31UoMN%fvQfhi8^T+=yrP{QEyb-jK~>$A4SZT-N56NYEbpvO&yUme&pWKs3^94D zH{oXnUTb3T@H+RgzML*lejx`WAyw*?K7B-I(VJx($2!NXYm%3`=F~TbLv3H<{>D?A zJo-FDYdSA-(Y%;4KUP2SpHKAIcv9-ld(UEJE7=TKp|Gryn;72?0LHqAN^fk6%8PCW z{g_-t)G5uCIf0I`*F0ZNl)Z>))MaLMpXgqWgj-y;R+@A+AzDjsTqw2Mo9ULKA3c70 z!7SOkMtZb+MStH>9MnvNV0G;pwSW9HgP+`tg}e{ij0H6Zt5zJ7iw`hEnvye!XbA@!~#%vIkzowCOvq5I5@$3wtc*w2R$7!$*?}vg4;eDyJ_1=ixJuEp3pUS27W?qq(P^8$_lU!mRChT}ctvZz4p!X^ zOSp|JOAi~f?UkwH#9k{0smZ7-#=lK6X3OFEMl7%)WIcHb=#ZN$L=aD`#DZKOG4p4r zwlQ~XDZ`R-RbF&hZZhu3(67kggsM-F4Y_tI^PH8PMJRcs7NS9ogF+?bZB*fcpJ z=LTM4W=N9yepVvTj&Hu~0?*vR1HgtEvf8w%Q;U0^`2@e8{SwgX5d(cQ|1(!|i$km! zvY03MK}j`sff;*-%mN~ST>xU$6Bu?*Hm%l@0dk;j@%>}jsgDcQ)Hn*UfuThz9(ww_ zasV`rSrp_^bp-0sx>i35FzJwA!d6cZ5#5#nr@GcPEjNnFHIrtUYm1^Z$;{d&{hQV9 z6EfFHaIS}46p^5I-D_EcwwzUUuO}mqRh&T7r9sfw`)G^Q%oHxEs~+XoM?8e*{-&!7 z7$m$lg9t9KP9282eke608^Q2E%H-xm|oJ8=*SyEo} z@&;TQ3K)jgspgKHyGiKVMCz>xmC=H5Fy3!=TP)-R3|&1S-B)!6q50wfLHKM@7Bq6E z44CY%G;GY>tC`~yh!qv~YdXw! zSkquvYNs6k1r7>Eza?Vkkxo6XRS$W7EzL&A`o>=$HXgBp{L(i^$}t`NcnAxzbH8Ht z2!;`bhKIh`f1hIFcI5bHI=ueKdzmB9)!z$s-BT4ItyY|NaA_+o=jO%MU5as9 zc2)aLP>N%u>wlaXTK!p)r?+~)L+0eCGb5{8WIk7K52$nufnQ+m8YF+GQc&{^(zh-$ z#wyWV*Zh@d!b(WwXqvfhQX)^aoHTBkc;4ossV3&Ut*k>AI|m+{#kh4B!`3*<)EJVj zwrxK>99v^k4&Y&`Awm>|exo}NvewV%E+@vOc>5>%H#BK9uaE2$vje zWYM5fKuOTtn96B_2~~!xJPIcXF>E_;yO8AwpJ4)V`Hht#wbO3Ung~@c%%=FX4)q+9 z99#>VC2!4l`~0WHs9FI$Nz+abUq# zz`Of97})Su=^rGp2S$)7N3rQCj#0%2YO<R&p>$<#lgXcUj=4H_{oAYiT3 z44*xDn-$wEzRw7#@6aD)EGO$0{!C5Z^7#yl1o;k0PhN=aVUQu~eTQ^Xy{z8Ow6tk83 z4{5xe%(hx)%nD&|e*6sTWH`4W&U!Jae#U4TnICheJmsw{l|CH?UA{a6?2GNgpZLyzU2UlFu1ZVwlALmh_DOs03J^Cjh1im`E3?9&zvNmg(MuMw&0^Lu$(#CJ*q6DjlKsY-RMJ^8yIY|{SQZ*9~CH|u9L z`R78^r=EbbR*_>5?-)I+$6i}G)%mN(`!X72KaV(MNUP7Nv3MS9S|Pe!%N2AeOt5zG zVJ;jI4HZ$W->Ai_4X+`9c(~m=@ek*m`ZQbv3ryI-AD#AH=`x$~WeW~M{Js57(K7(v ze5`};LG|%C_tmd>bkufMWmAo&B+DT9ZV~h(4jg0>^aeAqL`PEUzJJtI8W1M!bQWpv zvN(d}E1@nlYa!L!!A*RN!(Q3F%J?5PvQ0udu?q-T)j3JKV~NL>KRb~w-lWc685uS6 z=S#aR&B8Sc8>cGJ!!--?kwsJTUUm`Jk?7`H z7PrO~xgBrSW2_tTlCq1LH8*!o?pj?qxy8}(=r_;G18POrFh#;buWR0qU24+XUaVZ0 z?(sXcr@-YqvkCmHr{U2oPogHL{r#3r49TeR<{SJX1pcUqyWPrkYz^X8#QW~?F)R5i z>p^!i<;qM8Nf{-fd6!_&V*e_9qP6q(s<--&1Ttj01j0w>bXY7y1W*%Auu&p|XSOH=)V7Bd4fUKh&T1)@cvqhuD-d=?w}O zjI%i(f|thk0Go*!d7D%0^ztBfE*V=(ZIN84f5HU}T9?ulmEYzT5usi=DeuI*d|;M~ zp_=Cx^!4k#=m_qSPBr5EK~E?3J{dWWPH&oCcNepYVqL?nh4D5ynfWip$m*YlZ8r^Z zuFEUL-nW!3qjRCLIWPT0x)FDL7>Yt7@8dA?R2kF@WE>ysMY+)lTsgNM#3VbXVGL}F z1O(>q>2a+_`6r5Xv$NZAnp=Kgnr3)cL(^=8ypEeOf3q8(HGe@7Tt59;yFl||w|mnO zHDxg2G3z8=(6wjj9kbcEY@Z0iOd7Gq5GiPS5% z*sF1J<#daxDV2Z8H>wxOF<;yKzMeTaSOp_|XkS9Sfn6Mpe9UBi1cSTieGG5$O;ZLIIJ60Y>SN4vC?=yE_CWlo(EEE$e4j?z&^FM%kNmRtlbEL^dPPgvs9sbK5fGw*r@ z+!EU@u$T8!nZh?Fdf_qk$VuHk^yVw`h`_#KoS*N%epIIOfQUy_&V}VWDGp3tplMbf z5Se1sJUC$7N0F1-9jdV2mmGK{-}fu|Nv;12jDy0<-kf^AmkDnu6j~TPWOgy1MT68|D z=4=50jVbUKdKaQgD`eWGr3I&^<6uhkjz$YwItY8%Yp9{z4-{6g{73<_b*@XJ4Nm3-3z z?BW3{aY_ccRjb@W1)i5nLg|7BnWS!B`_Uo9CWaE`Ij327QH?i)9A}4Ug4wmxVVa^b z-4+m%-wwOl7cKH7+=x&nrCrbEC)Q$fpg&V83#uEH;C=GNMz`ps@^RxK%T*8%OPnC` z{WO~J%nxYJ`x|N%?&i7?;{_8t^jM&=50HlaOQj8fS}_`moH$c;vI<|cruPFnpT8yU zS%rPOCUSd5Zdb(zwk`hqwTQn)*&n)uYsP*F_(~xEWq}C= zv30kFmZFwJZ@ELVX3?$dXQh|icO7UrL*_5G=I^xXjImz`ZPp>?g#tf(ej~KaIU0algsG!IS09;>?MvqGg#c{i+}qY|{P8W~O%#>|gFd z<1dr$-oxyRGN17yZo1OwLnzwYs0|;IS_nymNB0IlSzPQ%-r`?T=;_XQ^~&#}b|AB} zkNbN5uB?-sUB-T5QLlg%Uk3)uHB;>VIzGe9_J9 zaeISkQm!v(9d(0ML^b9fR^sfHFlH?7Mvddt37OuR{|O0{uv)(&-6<87W4 zyO>s!=cPgP3O&7xxU5DlIPw_o3O>6o6Qb?JWs3qw#p3sBc3g$?Dx zi(6D+DYgV;GrUis-CL%Qe{nvZnwaVXmbhH(|GFh|Q)k=1uvA$I@1DXI7bKlQ@8D6P zS?(*?><>)G49q0wr;NajpxP4W2G)kHl6^=Z>hrNEI4Mwd_$O6$1dXF;Q#hE(-eeW6 zz03GJF%Wl?HO=_ztv5*zRlcU~{+{k%#N59mgm~eK>P!QZ6E?#Cu^2)+K8m@ySvZ*5 z|HDT}BkF@3!l(0%75G=1u2hETXEj!^1Z$!)!lyGXlWD!_vqGE$Z)#cUVBqlORW>0^ zDjyVTxwKHKG|0}j-`;!R-p>}qQfBl(?($7pP<+Y8QE#M8SCDq~k<+>Q^Zf@cT_WdX3~BSe z+|KK|7OL5Hm5(NFP~j>Ct3*$wi0n0!xl=(C61`q&cec@mFlH(sy%+RH<=s)8aAPN`SfJdkAQjdv82G5iRdv8 zh{9wHUZaniSEpslXl^_ODh}mypC?b*9FzLjb~H@3DFSe;D(A-K3t3eOTB(m~I6C;(-lKAvit(70k`%@+O*Ztdz;}|_TS~B?Tpmi=QKC^m_ z2YpEaT3iiz*;T~ap1yiA)a`dKMwu`^UhIUeltNQ1Yjo=q@bI@&3zH?rVUg=IxLy-ni zyxDu%-Fr{H6owTjZU2O5>nDb=q&Jz_TjeSq%!2m40x&U6w~GQ({quPL73IsJS;f`$ zsuhioqCBj(gJ>2hoo)Gou7(WP*pX)f=Y=!=k!&1K?EYY%jJ~X&DnK{^saPQK<1BJ z_A`_{%ZozcB(3w$z^To^6d|XuT@=X~wtW!+{4ID@N{AB~J6AL5vuY>JwvWCNFKsKh zd}@>q@_WV#QZ&UJ0#?X(pXR!oyXOEG3rqzHbCzGLONDb042i$})fM@XF)uSP(DHUc z^&{|$*xe{cs?Gp8=B%RY3L7#$ve$?TWh>MZdxF1zH1v}1z+$Ov#G7?%D)bBCyDe*% zSeKSpETC2V1){II>@UwJi>4uBN+iAx+82E~gb|Cr&8E^i&)A!uv-g?jzH99wU}8+# z$nh>yvb;TwZmS@7LrvuCu_d0-WxFNI&C7%sWuTL%YU!l|I1{|->=dlOeHOCtUO#zkS3ESO8LHV4hTdQL5EdV zuWD33fFPH}HPrW^s$Qn1Xgp&AT6<-He{{4%eIu3rN=iK|9mURdKXfB&Q?qGok%!cs ze53UP{Z!TO-Y@q2;;k2avA3`lm4OoN4@S*k=UA)7H;qZ`d8`XaYFCv?Ba+uGW@r5v z&&{nf(24WSBOhc7!qF^@0cz;XcUynNaj6w2349;s!K{KVqs5yS{ z7VubS`2OzT^5#1~6Tt^RTvt9-J|D2F>y~>2;jeF>g`hx5l%B3H=aLExQihuYngzlnBTYOTHJQMzl>kwqN5JYs)Ej zblA@ntkUS~xi+}y6|(81helS}Q~&VB37qyV|S3Y=><^1wh%msQM?fz z<58MX(=|PSUKCF#)dbhR%D&xgCD?$aR0qen+wpp6 zst}vX18!Be96TD??j1HsHTUx(a&@F?=gT`Q$oJFFyrh^;zgz!(NlAHGn0cJy@us=w zNhC#l5G;H}+>49Nsh12=ZPO2r*2OBQe5kpb&1?*PIBFitK8}FUfb~S-#hKfF0o#&d z#3aPkB$9scYku&kA6{0xHnBV#&Wei5J>5T-XX-gUXEPo+9b7WL=*XESc(3BshL`aj zXp}QIp*40}oWJt*l043e8_5;H5PI5c)U&IEw5dF(4zjX0y_lk9 zAp@!mK>WUqHo)-jop=DoK>&no>kAD=^qIE7qis&_*4~ z6q^EF$D@R~3_xseCG>Ikb6Gfofb$g|75PPyyZN&tiRxqovo_k zO|HA|sgy#B<32gyU9x^&)H$1jvw@qp+1b(eGAb)O%O!&pyX@^nQd^9BQ4{(F8<}|A zhF&)xusQhtoXOOhic=8#Xtt5&slLia3c*a?dIeczyTbC#>FTfiLST57nc3@Y#v_Eg#VUv zT8cKH#f3=1PNj!Oroz_MAR*pow%Y0*6YCYmUy^7`^r|j23Q~^*TW#cU7CHf0eAD_0 zEWEVddxFgQ7=!nEBQ|ibaScslvhuUk^*%b#QUNrEB{3PG@uTxNwW}Bs4$nS9wc(~O zG7Iq>aMsYkcr!9#A;HNsJrwTDYkK8ikdj{M;N$sN6BqJ<8~z>T20{J8Z2rRUuH7~3 z=tgS`AgxbBOMg87UT4Lwge`*Y=01Dvk>)^{Iu+n6fuVX4%}>?3czOGR$0 zpp*wp>bsFFSV`V;r_m+TZns$ZprIi`OUMhe^cLE$2O+pP3nP!YB$ry}2THx2QJs3< za1;>d-AggCarrQ>&Z!d@;mW+!q6eXhb&`GbzUDSxpl8AJ#Cm#tuc)_xh(2NV=5XMs zrf_ozRYO$NkC=pKFX5OH8v1>0i9Z$ec`~Mf+_jQ68spn(CJwclDhEEkH2Qw;${J$clv__nUjn5jA0wCLEnu1j;v!0vB>Ri6m9`;R{JMS%^)4FC zU0Z44+u$I$w=Bj|iu4DT5h~sS`C*zbmX?@-crY}E+hy>}2~C0Nn(EKk@5^qO4@l@! z6O0lr%tzGC`D^)8xU3FnMZVm0kX1sBWhaQyzVoXFWwr%Ny?=2M{5s#5i7fTu3gEkG zc{(Pr$v=;`Y#&`y*J}#M9ux>0?xu!`$9cUKm#Bdd_&S#LPTS?ZPV6zN6>W6JTS~-LfjL{mB=b(KMk3 z2HjBSlJeyUVqDd=Mt!=hpYsvby2GL&3~zm;0{^nZJq+4vb?5HH4wufvr}IX42sHeK zm@x?HN$8TsTavXs)tLDFJtY9b)y~Tl@7z4^I8oUQq4JckH@~CVQ;FoK(+e0XAM>1O z(ei}h?)JQp>)d=6ng-BZF1Z5hsAKW@mXq+hU?r8I(*%`tnIIOXw7V6ZK(T9RFJJe@ zZS!aC+p)Gf2Ujc=a6hx4!A1Th%YH!Lb^xpI!Eu` zmJO{9rw){B1Ql18d%F%da+Tbu1()?o(zT7StYqK6_w`e+fjXq5L^y(0 z09QA6H4oFj59c2wR~{~>jUoDzDdKz}5#onYPJRwa`SUO)Pd4)?(ENBaFVLJr6Kvz= zhTtXqbx09C1z~~iZt;g^9_2nCZ{};-b4dQJbv8HsWHXPVg^@(*!@xycp#R?a|L!+` zY5w))JWV`Gls(=}shH0#r*;~>_+-P5Qc978+QUd>J%`fyn{*TsiG-dWMiJXNgwBaT zJ=wgYFt+1ACW)XwtNx)Q9tA2LPoB&DkL16P)ERWQlY4%Y`-5aM9mZ{eKPUgI!~J3Z zkMd5A_p&v?V-o-6TUa8BndiX?ooviev(DKw=*bBVOW|=zps9=Yl|-R5@yJe*BPzN}a0mUsLn{4LfjB_oxpv(mwq# zSY*%E{iB)sNvWfzg-B!R!|+x(Q|b@>{-~cFvdDHA{F2sFGA5QGiIWy#3?P2JIpPKg6ncI^)dvqe`_|N=8 '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + +CLASSPATH="\\\"\\\"" + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 0000000..db3a6ac --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,94 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH= + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/settings.gradle b/settings.gradle new file mode 100644 index 0000000..c948e05 --- /dev/null +++ b/settings.gradle @@ -0,0 +1,11 @@ +pluginManagement { + repositories { + mavenLocal() + maven { url = 'https://maven.neoforged.net/releases' } + gradlePluginPortal() + } +} + +plugins { + id 'org.gradle.toolchains.foojay-resolver-convention' version '0.9.0' +} diff --git a/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/EnchantmentDoNotConflictNeoForge.java b/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/EnchantmentDoNotConflictNeoForge.java new file mode 100644 index 0000000..1ec7b84 --- /dev/null +++ b/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/EnchantmentDoNotConflictNeoForge.java @@ -0,0 +1,48 @@ +package com.mingliqiye.minecraft.enchantment.conflict; + +import net.neoforged.fml.ModContainer; +import static net.neoforged.fml.config.ModConfig.Type.COMMON; +import org.slf4j.Logger; +import com.mojang.logging.LogUtils; + +import net.neoforged.api.distmarker.Dist; +import net.neoforged.bus.api.IEventBus; +import net.neoforged.bus.api.SubscribeEvent; +import net.neoforged.fml.common.Mod; +import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent; +import net.minecraft.client.Minecraft; +import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent; +import net.neoforged.neoforge.common.NeoForge; +import net.neoforged.neoforge.event.server.ServerStartingEvent; +import net.neoforged.fml.common.EventBusSubscriber; +import com.mingliqiye.minecraft.enchantment.conflict.config.ModConfig; +@Mod(EnchantmentDoNotConflictNeoForge.MODID) +public class EnchantmentDoNotConflictNeoForge { + public static final String MODID = "enchantmentdoesnotconflict"; + public static final Logger LOGGER = LogUtils.getLogger(); + public EnchantmentDoNotConflictNeoForge(IEventBus modEventBus, ModContainer container) { + container.registerConfig(COMMON, ModConfig.SPEC); + modEventBus.addListener(this::commonSetup); + NeoForge.EVENT_BUS.register(this); + } + + private void commonSetup(FMLCommonSetupEvent event) { + LOGGER.info("Mod {} Setup", MODID); + ModConfig.load(); + } + + // 服务端启动时执行 + @SubscribeEvent + public void onServerStarting(ServerStartingEvent event) { + LOGGER.info("Server Mod {} Setup", MODID); + } + + // 客户端启动时执行(静态内部类,自动注册) + @EventBusSubscriber(modid = MODID, bus = EventBusSubscriber.Bus.MOD, value = Dist.CLIENT) + static class ClientModEvents { + @SubscribeEvent + static void onClientSetup(FMLClientSetupEvent event) { + LOGGER.info("Client Mod {} Setup Player Name {}", MODID, Minecraft.getInstance().getUser().getName()); + } + } +} diff --git a/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/config/ModConfig.java b/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/config/ModConfig.java new file mode 100644 index 0000000..46bb9f9 --- /dev/null +++ b/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/config/ModConfig.java @@ -0,0 +1,78 @@ +package com.mingliqiye.minecraft.enchantment.conflict.config; + +import net.neoforged.neoforge.common.ModConfigSpec; + +public class ModConfig { + private static final ModConfigSpec.Builder BUILDER = new ModConfigSpec.Builder(); + public static final ModConfigSpec.BooleanValue AllowDamageEnchantment = + BUILDER.define("AllowDamageEnchantment", true); + public static final ModConfigSpec.BooleanValue AllowInfinityEnchantment = + BUILDER.define("AllowInfinityEnchantment", true); + public static final ModConfigSpec.BooleanValue AllowPiercingEnchantment = + BUILDER.define("AllowPiercingEnchantment", true); + public static final ModConfigSpec.BooleanValue AllowProtectionEnchantment = + BUILDER.define("AllowProtectionEnchantment", true); + public static final ModConfigSpec SPEC = BUILDER.build(); + + private static ConfigItem instance; + + public static ConfigItem getInstance() { + return instance; + } + + + public static void load() { + instance = new ConfigItem(AllowDamageEnchantment.get(), AllowInfinityEnchantment.get(), + AllowPiercingEnchantment.get(), AllowProtectionEnchantment.get()); + } + + public static class ConfigItem { + private boolean allowDamageEnchantment; + private boolean allowInfinityEnchantment; + private boolean allowPiercingEnchantment; + private boolean allowProtectionEnchantment; + + ConfigItem() { + } + + ConfigItem(boolean a, boolean b, boolean c, boolean d) { + this.allowDamageEnchantment = a; + this.allowInfinityEnchantment = b; + this.allowPiercingEnchantment = c; + this.allowProtectionEnchantment = d; + + } + + public boolean isAllowDamageEnchantment() { + return allowDamageEnchantment; + } + + public void setAllowDamageEnchantment(boolean allowDamageEnchantment) { + this.allowDamageEnchantment = allowDamageEnchantment; + } + + public boolean isAllowInfinityEnchantment() { + return allowInfinityEnchantment; + } + + public void setAllowInfinityEnchantment(boolean allowInfinityEnchantment) { + this.allowInfinityEnchantment = allowInfinityEnchantment; + } + + public boolean isAllowPiercingEnchantment() { + return allowPiercingEnchantment; + } + + public void setAllowPiercingEnchantment(boolean allowPiercingEnchantment) { + this.allowPiercingEnchantment = allowPiercingEnchantment; + } + + public boolean isAllowProtectionEnchantment() { + return allowProtectionEnchantment; + } + + public void setAllowProtectionEnchantment(boolean allowProtectionEnchantment) { + this.allowProtectionEnchantment = allowProtectionEnchantment; + } + } +} diff --git a/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/mixin/ArrowInfiniteEnchantmentMixin.java b/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/mixin/ArrowInfiniteEnchantmentMixin.java new file mode 100644 index 0000000..b603bbd --- /dev/null +++ b/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/mixin/ArrowInfiniteEnchantmentMixin.java @@ -0,0 +1,26 @@ +package com.mingliqiye.minecraft.enchantment.conflict.mixin; + +import com.mingliqiye.minecraft.enchantment.conflict.config.ModConfig; +import net.minecraft.world.item.enchantment.Enchantment; +import net.minecraft.world.item.enchantment.ArrowInfiniteEnchantment; +import net.minecraft.world.item.enchantment.MendingEnchantment; +import org.jetbrains.annotations.NotNull; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(ArrowInfiniteEnchantment.class) +public abstract class ArrowInfiniteEnchantmentMixin { + + @Inject(method = "checkCompatibility", at = @At("HEAD"), cancellable = true) + private void canAccept( + @NotNull Enchantment enchantment, + @NotNull CallbackInfoReturnable cir + ) { + if (enchantment instanceof MendingEnchantment) { + cir.setReturnValue(ModConfig.getInstance().isAllowInfinityEnchantment()); + } + } +} + diff --git a/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/mixin/ArrowPiercingEnchantmentMixin.java b/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/mixin/ArrowPiercingEnchantmentMixin.java new file mode 100644 index 0000000..a57f845 --- /dev/null +++ b/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/mixin/ArrowPiercingEnchantmentMixin.java @@ -0,0 +1,26 @@ +package com.mingliqiye.minecraft.enchantment.conflict.mixin; + + +import com.mingliqiye.minecraft.enchantment.conflict.config.ModConfig; +import net.minecraft.world.item.enchantment.Enchantment; +import net.minecraft.world.item.enchantment.Enchantments; +import net.minecraft.world.item.enchantment.ArrowPiercingEnchantment; +import org.jetbrains.annotations.NotNull; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(ArrowPiercingEnchantment.class) +public abstract class ArrowPiercingEnchantmentMixin { + + @Inject(method = "checkCompatibility", at = @At("HEAD"), cancellable = true) + private void canAccept( + @NotNull Enchantment enchantment, + @NotNull CallbackInfoReturnable cir + ) { + if (enchantment == Enchantments.MULTISHOT) { + cir.setReturnValue(ModConfig.getInstance().isAllowPiercingEnchantment()); + } + } +} diff --git a/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/mixin/DamageEnchantmentMixin.java b/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/mixin/DamageEnchantmentMixin.java new file mode 100644 index 0000000..07a45aa --- /dev/null +++ b/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/mixin/DamageEnchantmentMixin.java @@ -0,0 +1,26 @@ +package com.mingliqiye.minecraft.enchantment.conflict.mixin; + + +import com.mingliqiye.minecraft.enchantment.conflict.config.ModConfig; +import net.minecraft.world.item.enchantment.DamageEnchantment; +import net.minecraft.world.item.enchantment.Enchantment; +import org.jetbrains.annotations.NotNull; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(DamageEnchantment.class) +public abstract class DamageEnchantmentMixin { + + @Inject(method = "checkCompatibility", at = @At("HEAD"), cancellable = true) + private void canAccept( + @NotNull Enchantment enchantment, + @NotNull CallbackInfoReturnable cir + ) { + if (enchantment instanceof DamageEnchantment) { + cir.setReturnValue(ModConfig.getInstance().isAllowDamageEnchantment()); + } + } + +} diff --git a/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/mixin/ProtectionEnchantmentMixin.java b/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/mixin/ProtectionEnchantmentMixin.java new file mode 100644 index 0000000..8414b5f --- /dev/null +++ b/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/mixin/ProtectionEnchantmentMixin.java @@ -0,0 +1,26 @@ +package com.mingliqiye.minecraft.enchantment.conflict.mixin; + + +import com.mingliqiye.minecraft.enchantment.conflict.config.ModConfig; +import net.minecraft.world.item.enchantment.Enchantment; +import net.minecraft.world.item.enchantment.ProtectionEnchantment; +import org.jetbrains.annotations.NotNull; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(ProtectionEnchantment.class) +public abstract class ProtectionEnchantmentMixin { + + @Inject(method = "checkCompatibility", at = @At("HEAD"), cancellable = true) + + private void onCheckCompatibility( + @NotNull Enchantment enchantment, + @NotNull CallbackInfoReturnable cir + ) { + if (enchantment instanceof ProtectionEnchantment) { + cir.setReturnValue(ModConfig.getInstance().isAllowProtectionEnchantment()); + } + } +} diff --git a/src/main/resources/META-INF/neoforge.mods.toml b/src/main/resources/META-INF/neoforge.mods.toml new file mode 100644 index 0000000..a98cb8b --- /dev/null +++ b/src/main/resources/META-INF/neoforge.mods.toml @@ -0,0 +1,28 @@ +modLoader="javafml" +loaderVersion="${loader_version_range}" +license="${mod_license}" + +[[mods]] +modId="${mod_id}" +version="${mod_version}" +displayName="${mod_name}" +authors="${mod_authors}" +description='''${mod_description}''' +logoFile = "assets/${mod_id}/textures/logo/icon.png" + +[[mixins]] +config="${mod_id}.mixins.json" + +[[dependencies.${mod_id}]] + modId="neoforge" + type="required" + versionRange="[1,)" + ordering="NONE" + side="BOTH" + +[[dependencies.${mod_id}]] + modId="minecraft" + type="required" + versionRange="${minecraft_version_range}" + ordering="NONE" + side="BOTH" diff --git a/src/main/resources/assets/enchantmentdoesnotconflict/textures/logo/icon.png b/src/main/resources/assets/enchantmentdoesnotconflict/textures/logo/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..69181e389bd1bdd211640f5b9df0f9a931f156bb GIT binary patch literal 68477 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

o83KY4PLc`{pB0*7y(&x$qmlFWgh zuNz=V`w=aHv8d=zq^+I4z++wTdaNRx-%xNu@rK1d=)Fd8=x%-`f7szOQo49sfcZ7@ z2J3|?Z4BdWLnMja4~T-REDnRBi3DTa3na~+wHdMd@TxLMMc&}Ewz z=j0A-()|{7u)v;ej#Nb{f1eMSjOA!ITWi2l5D|;A7o*faW-tEA`0Y(tpuA;Eu`ACA zf=p?$VbGT1jU>gY67JEXhahqYgbQ-8%GVzFDFvUrHQXWydbfLy(;lS z;Km2|CAao|wID6Q3Q-7mZ9Q#(T8e(XrhJa>#c^J6ORz~riC*0CkQR?G6m88}-LJWg z^a{PQ87srkkG{w$uv&Gxl(fV};~~my`K_y1M(SPy-j{uo*_TEtzt%{gulP~!xx>48 zMCFN>u+(O(EZ>vkzH*Qd&V#p=L05&#qNwsv@Wv@2fqd3U|3}A1?U-ErPY&GOLDWLb zuHCl|is4n>3fE!zWKQIw{my|V$aN1Ewhr6bLX?IJO1=vr?c@ZXV4%GCx_N8kBkUKW zfjXPNJ84OZOW9G1c4a9m()D|lDNY$u zmd4WXUogCJO{gAjdJ;;*I%(q})a&~7uA(m2#vV(`bB?7*wtm#1z#Ln7qACA6|CTrP z74w&1#ckf%a{TbEvotsHNkr)_JF2VyarJ<9$k2pu>XC;Xep>E1Tv4% zjA?~iXz}IhG=X@uUYXy3*V4$`Kp_A$y5}!$a>KDPXrzyKf1{l&hKFVkex%BaI|y;tL8EFV#VOm~aF%de-?ib=pHTLR;bf~6x1Y!# zSX3*;3Wh%OOOs;6m&O6+pH}dm$>N^`e_MDA_2gmqx69o z{E+y@5~yHrju1|)P+so^u|ivK)?B&}hPpmm?fCUSqpPRIK=<;?gv(^r0{%}$lG4{C zpbBjqa9C8^}K8^IR{_&zkL8wJSGoCo5--jg^XI(?4w!~kz8lK28A z%=;djcM}RS)B0oTrk$h|8xJg5{}9ywDZA9~0K&SO++l`b+upOmmqUM2QZNiTk3EH* z5sx=2*X~tFag{h$wQ*WBg?|RteSNRC^l`{dVVWEf+0K3T3u&ih^NOw#O=B+(KhFzF z_TwD``!>x#ads)h8^Gj}b0Dz{7+)xW#ahoG?i~+aJv}(!{t6J;CE8u+T&u17*}C&YzB3nO@p6B~>@N|YZW|mzm#D*oTsMle z1}YzI#^+QXh|5exlSN6#c{*J9$k$wTW<)OECQdC&O>q2(_UfphZ>r#$48#yXm6|9;WwxH!nOrS&UcMgOAN32d`Jhx_4$c6m0xTb+L{urR-q zroI$-gk5H3|H~%pEuW2bkEFDq+XPwjCcX0^|SvV*Ett%h6YNyz8Ajs!)ZJ1s-Q=S=>o_c z1b?qQSB;Me^8lR-;l&6M> zz{X=2C{K4iVi?|tfDdmD@mrK?&3n(MoQg)Ixy#PMVF5+>0k~1Go^WuhfYLo9~2TQH-)6r&uw28CGcbI!%4! z-)Agh`!b{^ZHk`<#A?czK+iS&Pnp807~?6R*;xGzRm!Ed)NOPi6-*A(&bV2kEaeVk zsxBeQ92)mS1HY(Cl!=beQ+}dkH~56c-6K;^$l@)dWL4nF#L7-v)7@68`jFZS%G|ST zD36N<#&h)^%W!^%4j*R&N4BuEC|#ER`eB%SVq@(I`9 zDla(h+cMT#U!GQ95jlc68m7sEJ8|1t`OB>(@RzjaOz~W~qX8r3cYMVO)|^C84a3@Y z9idlFP|ouqn19zb9uEzP=xDR21+RIR6QBf%=-8WtpHkB64vjqe@FX}4jZ5+t8^PT? z-agDZaT=e&-zH(=g)k?v?A@wfygycTZiT<Fq6*4>^~ z&)xTeW-%Ixgiv&c7+JWRi$87>P^0iuYoU_#ZEKW#nT3JLqmGMiQt3IdK z4Bq|^S7JH1g|s=te&6pzGaXH1-3G??gnz{)U1Iaenj&R{7{_svei~QjWsNg(f zZdqac=+r}}gsy|>`L8Z9jHkGl>QG^fV5fynhr|~ryS+zi6%=CbKOHF*`BOdZF zzMm$?kvPT8NPx+=)%=77kJ0h@*tZTmXZg`xxcmNusp9RMx@%%Kr{=z~&fcOOfR6rl zd4hi0$)30~$v$5X`ou}c1QGZmu$^t~&}!3-vN=7uf4eVXo5j(j(=a;wgOdGT`<>Lb z2!#>1r#xg^6sT)cOx=SiF*smrV#s|0(fQG@efa!bK9v6*z9$3lIHx3AXz+=?}TZe#y`1I=|W&!X_J29o&*zN}-4cme2UE3PidLz?&^?4*ny zsV&(UHG*3IISyi?ySSW>Z0+02?cZz7=ML{*a&w8W%d4>Vfrvk-Hhggc(>o$550{3R zAKPpI)ht(?D(kHd(LyvzN7RZ8dvk z6^#4%3AM`n^E2Z5NgD~ei*rt_-IPNM!Ly}(eUWCe zUJL?bog=o&-Z4Eheq)R~ce7SQq(kEW!mef}2rXu$J#371$uXt=QBJcG~IQ?x|-+p*&x|&zMWXhGSp0 zonyu7{ZK;vB*3NPK`o}-`Ok{rS(=lyyU&qL=Xgxf?q;WM8l~|Z9C)W8sm;pfo+xle0qE< z5y=~Y8Q<8KlWL>WFL3F;-{O+0u8sl^bvnCq-}gvXeE+J_kNUF9Ok}8)*TVNGM+Y@O`V2bw=M@Pii!*x;A&Oil8ELy)l}~ z+H;-1!X8c)QTp)R*D&H~uZ0!1MP0_MmUK#z1WE0;yai1)XkXmMhm&V_WHs*Ux2)`T z8w(hiLtd8=JO#C&d9fshiuad(JeuuOW2(h-Rti_xd`Ow&`|VE6KZu-p+@kDv^ar#Y zTz7CkTz`8-mqWF8joLis_7trp65bVhlYsm#3X`MYoRd!qnp(Rc-(~bjfV>XRSOS~W zjIxwZ4~<&(H7%7b{k=+AOd88zml;|vmK|zqo~Tj;HOpz_YXl;?@m+q&HanWdv~9$7+9ia9eisG_&h30?5C5|b0JhzI?8zp`NO0h>Dj@V~%J*2(axZqfLs#liZ+$mYIy=IMUDX@8 z_r##ty@rplJwtS4a`VrZ_d&R8$HaP{d#+TpaY9}^R;T@2y&3Ze{xSaViBP8A4Q6d% zZ6HIPwi*oYGhkU#1~RCG`ri{Rr8g-jjGBMfhxP{tqMFgmV6?qB+8z3GWJASw_577( z&_xk90tZL8^>OBvOaqG+i;U!I5+P8u? zXp#^u7}d$_!jer)^KeNfCX|+w>nvLV1IAtE{#zA-_`}>m0#?s_6^l4}~BlDT_+@*}YuPiU^C7N;CjLGXp_dG`TXi+(*QhBMi z^0YHX;162%cN(IMg*0EgbFchUTYV>pf7gWNR)Oa5`mBo|Im^!r(0cq-0NgF4L?_oa zldqZA!Lw!bsld&0@ju>C-jPRi(uOlk@*xWm{61rWnyj8}XFZ+#=zsDGE2AqEJ z!-1Qx#}I9Hxvmb-k%P)Rj%YW@72ecf$eAha)8PT`^sk(b--Q>_yo9Nuz(T6S1txC> zdT{<6iV((@l=Fj(2$d}S%!(m0aUy2(EtzfFTd(rb8?yPf6rp*fvO9~c0G~!L&HlI# zy^0eFLxia&cAoJSAdk`l*J2rNy1YHN)!}VDSzV!pD}P0HQa^4W;->36wOeGIdh8t zl=zwv-+Qh%&!xwoCtkp(dmhEQCuaRk_eA0uj1 zS~u~3DsFndZlvAli~Gka$#osW%)y|ze}5M4eyLqNVG#3|*Z4LiB#2no{i)q|r`YnC zrCNQmrMBIu&<48K_i_F3`2p9_rPZS3v3jGY1o9vIf%>H#Evdl+^?f*+;uD3!Pq=n; z-lwTQGs|!cg0LrbV4vnrsn+8FTocLuJ9*Q;JvuilAQ)_W!Z~dKA1eX}vEU%mc^HB2 zs#LF5)-tb_Pa2*WgIY7?a<0rcLP@fLw9l*W1zwH)*>s}G`18)p*}S0>j3n)7$y_nP zNCVn3a3B{bCWp0U+%ROhCRheWAqUt8?#tR@*T9`+yfJ7+_Lw(8exdm=ZOLg0VRbX! zO~1_s_C_!h!==F;l!(sT$yXRFjNidWX5aQT;e6Wf2$&Pyo89vQPLoKu3pO{mjBxyM z7!^7}o*ZGj^t5=vqaQ)dX2mb5hZyp#+hOnm-6MO;Ek`!#NBQB|XhFQEo}rfMK)oT0 zr!}|T5f__COuXl&#s|CyMC#nZfYm`N^QKxGWJhIRp;6Uo=T_ZzdntaPx?!e6wu@a>GKw{@U@(@h5q7@`vp)KRn zjwLA>oD(e1c&AMUZ|etG>$WpRXkxB}j~=?Ag@h z+HzHaLvDaaSTf~k+G&(n`Vr0C&3ianEHUB&J|0b004mHS+pML?I*;T(JF;#B^J&N& z?VW02E@|ZQEYqnnCbl@E3@r7=bD1*w-P3NzptJQ1u?@59Trr+OlaAJsq>Dn-B&?QR zOJ=ZznwC;8VkS?_vLQU&u{*OKo9Ua;I4n=QNsf1JTuyD`vP za*+o72QTzh?!4F*?nbMm_A2_Hl*ZA5Vetu5t4k66!Ih~Bqz6sA!dJLE`05P9vvD%U zzvouQ^nr~dTbavvUmHBB4$?e+Pp&71?^IjwqO4#b#5HO^7o%mI`&5Wg0Y;rSEE6pG zoFPlaAoaQ+R%f2)7_|xaVtmcPfPFL9Q}6^g^h8!9Nj03s_ud~~72!Q1Z-%dI@eLSL z{I?l8NvnQ$1fgb6uc%OMs6iXZM{1vFVanr;Y1|?y_qJI{x_t0tOC?p794-(4ZhIdR(Y9^sII5!> zs>3;_;aYDq2&Cy?-_!oWa|x+@Nx!ok^Rq&Z(!Zg98uvUs2b9)~+bPbgJnm8RVbNqE zl1@Dnch=oPXmbZ&vq$!Zp~b$5W@bjjEo=0yep?OzyYy4hzX+!0#j-bLNO^Bjs=NW0 z@(dFxJFyH89?G=MOmjz?JNt$pwFCS$?ivQ4+KYd#=V$sAm(8MZB$L1AjA&nz1=xrt zZKp>OTvD)}CNEyF9!2}YH#%|J0=T~(M8{*s|J+$2gBd@nDJ6B(=omHIs z83G&n8uO|0FNMOmC|_`euS8qB z)(Ed5JzR4*dRyGLB5*_zoNYquNmPGzl&Rxe@zipyYTp50T0NHIHo7gWelz#W32KEp zSlV1Zv3ETbReMQ+YPH%DQAu$Vu%gMyY%ZDP?d^dCOE&LYz+r7O%MU)>pn*;U z<=Sf0a?_ab_$EginaP)-%ce^>P*+l99I=z^*0w)PPYsg z8SO|eoAHE5{Dn+{`aEZuE6$5Ip_uRBT+IbImhwlwpn91j@%g{7R)ix>bCM4*z7~I! z^jepj{Dl(kVnAn3!m1u9=fb%u4y$kP#}+L3wf@w@G!ai8q%=9g#~4vTiL>FQu1_WO zG%i6XV`SK^d3WpFipocx{haKL7TP@sOh_QPV#aK?;e>77RTA^HBhVCf_)Z_=P@;l( z{fb)v2zrQ8y$(#qNHP@%Cn0v3I_=~GQzbrHp@#oRG}p89oIn*m`wgf+dsG`-J3&^g z@DwK&>H2?wDbMweUGCP*bDBF^ri?ncm#U94*p?vh5o8uh)%q<8<|E~VJj0I?`<~|H ziD*Q`&w55ii?b9wF|WsJ-5)=vC+lxVY9*E{C2AVr)J3?;_GQ+o+VKy%F*tt~?9y+! zs;>njGFlHd)=t7VZxo1Nwt^LCKMlao4S!kKE~gkn)exjkq8EedxWdfluMT{zORIm6 z52ApfTTrh_F;{#l)*cJI6Y=j}ij$huiTbg%=S_h5Z0ZS+Vg=lIrQc%Ghcm*yXR!6Z z*B<_bJ~=6TxCYwl&E+yfipJ!$M4}wKRNYNUEAY_o9`^RjLG-O`QTl5vEau0rYjw3i*$`mq0! zN(0j{39(q=T7$CM(3g)_2gfN!1Q<|qHg~VhEq;B&trZ$oU^b=JH}?=Sw&S$iiM%aJ z^v9jA<2$hI5>>k6I%O)5hnz~w=sW~&dq7)o|M~~xsnR7ytn1W8nBJ*oC=twnDtq~ON z+4Ne3^Pp$J&n$%M+b={be!NovR%CaJLLHrA^M7YdYSGemW65+OVkl~P&q;QoVBu3> z*EjZEcAT`L5xvInjnkh@XZ;jHHZ-ap*%e2LXXpb_QHC+B`gTt~5A!RddtHU?1sa?QItT(ar(4kv4I|{|r(3U6M z%$a)xU@7)oqNs4^BhE=9;^4=%vQ)Fx${n1EKNq{_=sVcQ1gH*TmpdZ!%yD=nTE@rK zI7abx+6TVbgBbX0!&Q#MdCuHc+Lcxamg1VYI_7q6vDi?=7(azZ%GO*87!P*;XgTn2 zWB>K&-rZXfQ5PA5Sj-vuQ-?2wR6g2ri}V_)+LHhuzbHv^S#oPeNk>*rOPYTA`gKpj zrhFahZT6N!2R6tNCh*c*w6`KQ+$Q#PqNK|S4qGcW*Qs>ny2t4G7a-sg^n`AwCqy(N z81t`b2L2jw87cy1^L;0X1R?u6Nk)+5V=QeD{c6UGIe31+<2k`%h(0kEY`xAj2!5bVbW_; zOk*tJ!+#&U60rzTA3_$=^_?bHUV$X_SBJwQNO6RRhKQ$MAgDae`KCyv1-Lt8K0-OF zINk47OHfpuXRe;M`ND%aCB_)S<}Z{+e`e?GfD5F#9Z;hgCip>02pr8Wqt`!W{@W92 zTiK0U;YNUojIjRzk!M(~4;85qxAvfZu8@p4*jT)t2ZeZ9+#-$?!&I$|FiPW#hm{9*IT zmdkbOWhk2m6!YQV!8-i>-$jl+_a4jW4Ai_)-;SFfa6yHoUC*tQ*($4)D^U&*pT1XR z3>mV5&3HI+tl+>!t=hCplvR(_xH}ldhnAUy#y(c?!{XcW7Q2vQV%%=YIRNZIwT7q7 z1bRGGpp2V-76h?f@SPzZ{d3Y&mArOV&`tMCRJ+-n6F7#*Op=&t?r)tV$K+^M6K=ot z=Xp#gaHNZro-#tmxYQoV>N9w}5!goTM%##CXQ^H4aQzaG;^qCQUDn+FA03e)PMQqo zVxap{WXMH<;Pd=ZvVs$!!H~(4&Ljjf&Xl^GIoKpS|ud1@XRawp$N< z4N)Bg?GrHR2dMUZr2MVBL$|DHN|(2NC4cR zCfA*f9`89!I8nQp+~fH;@*>p5(|Xm!R5AP)DoGHKe$fx$I=ne{;6cR6lNx8=V3ROe z@0fd!;s!p@cFA7ivTD?S+XZ!qpp1Ttc-K_Fj+45N8#tHs^IxDn{i~UjoHVL&iW{0X zHyc#m6g^)nx;T1^viY(V^FxgJxU5+8LB|(f(hOI#+ajv}y3-5nRbHsB*8IVse`?1_ zVCaqcd+A{%MED}=G(S@(ou9+-^S3xWqBNRMGo*N~pMie@>A+WA;dE3(XLwiG;eUl3t=i{~V7olIp4C zb-VsnGe7fS5J-E*v63fRwx4VRVMVD4zu#|jbdccJ{(@FW{9V|e5zc5<=H$@_ zL7JUCu_=+f+kyOY1sAOzd*%(cnCN0f+`s9t1hUHhKzeIeA^Wr2Ta}?QE3i!>XkYlG z1nvzH|Jjp$R~_bCV!0|FEvKfbvQzC-ZA3M){5KC z{a|@)V@IwZX<@Yg8F4b+?pUu|i_Nic>iy!`94o2iFBgOcvXwtoCu}l!F;28|XK)d+ z>^-5Qmv5cHb+uevTPZ2DrRr}n3t;utv3J7G0q^4-g~r7nqgN#{j}Joq^4F?}CQf~m zw7}Zs8=--k0p8H0;|*oFTd~lphH#X$x}m($vcWkvn&UuZ1H!Xkaty^ z1HJIoxAjiJ*4G0V#qsg<4NCNq2hwSBsFvWk#{$e+CB#HBH6=1h5 zioGT7avEE5oiN638GeyFqxopltF-XfP3WKpH0$kiKc01eM6Q%M*qW9X?I7C_QiZBTJJCkT*n|L0o<2o9+h*T^LAG!xg?lLw*e?{#T*R}zjT4$Mb9 zMyYq8N|JLjL9;$}EndxD1gu*|5{}~vv53$qI3?+s)fo;xExXnL!;Z{|BMuHsd=2;+Qj>@w$poK8|Yhq zD}8uKS2!7hWRG~$#_wHRKajX`fq5U7{RQz0u&+4nb0;v^?Ns zZJ8DjSW3?HNUazG3#zbbBX;4=OaX5+DfE3|5bb+6v_475H3_rgF65JgU$yMXr$kPw z%I5jW=^VLd0GL(z!NA;Q{Q0YWv8x}^MP~&;MQ!wl&F1B_OQ>VJ3w@-Ly3Qg*nEsc7I~iq$|KV=h4IW}PC8GAB5cw9#OD5(>T!n@tH|@tt zlF#wcte&0dh|f^y!8g)yXQx@_$XeacF?38uEA(VXaI7Siw&{@0OUy6;e+s(LG?v=E z*~l213c(&Vp-c(QCoXMJ$?x=#?~0||Pr6aWg3jk?60R}PVPW-7n~Ms+pY!uj|MR5K zGI|1+QVCxZ3hs?sdOOTleT-sm z2an3xi++RZ;)31KjYT83#TRs;VA}yU#=N1~yVvC0O^m!nq);U*Rh><`vBUxW^){d@B0hQVl?27sFdt3cu779g;l|dmt5NQ+Os#9bII zo~nneVu`~8e)wHy8HQKJxiLkY|CVY~eu9_O8=2FwCnzetiz{=@Fe9RXFz07Z&3c=m zyVp!W)HAo!Jn-hX@1+G-L>LC}+mf1bp||3LubmkhWN>B&Wj4(HC3IHg$efiVEqFyO z7?hyJK-hQ6)^IY1?QL(1UEUG^n)SYy2;$SBK0v?;|M9459b~xbw-v}{JXQ`4F(9QO zE(q)+F2q=pYKbK1{ikAVp|lgoE`FS=OsXNe`@r6#da#>M5=RXmNwY&n@y~Ff38%Ru zvtF+_7&)Rr#`&#&l{{E}5KJd=PD$^|I%EEOFs}x^e#&db?e6BM@yO6R0GPj6=OCp^Sh19>Y+B4&>V9X>*Ko z(c~ATHUyX=8o*VL*g9x~ES2*;>0jD7x6=cR+C?*F;dzA_IiYvD#yhkGq@%#gDqLh(l52fNz066`# z+$C!4r>$gvF5ZamlZPoQK9jmOGl_C~ z#xyZ;#(OeI91NVUSXgZ`4yz}}p3l33K3l~)WX@Cx%}rCYz>)I9Lym}2J!5@mqn^y# zgoHQj0S1llR7+ZUhz|Vu=vWV6HK2cwJF5A39iXg=T=Q?4cP9p!enDec5=Sff1S z6ow6>9*nmZPY^Zv?1wl;cZ7OkD=!6w{-tN-BQVtAsY@SucIi8w#c(#>s3=BgEv+VEvn45 zm1to%UjwNiqy{El+Q&%9s+9k^D)of0()YGP`qy*ud`P!OOs3+qun}|v^>Vy;%JKR1 zc*W*a6UTUZjNVi|KoMnxj4HW}gt64BBWyr}DSlP{@31@zeD-He_!{^Fc@3O zQkEH8RJM|RnIWQ7lw@xvdPgK{cIHM>DU_lOlS-SIq9`&W6sd@cBE}Z7?_y^I} zu-PjDGV}HXNgVpYe37nBYdY(O)9uwCf0@2#3 zqmkV>DT-)i-ZRZO=u~;*sU;~WDuRxuk4GasiV0cS#z}zr;^loaN`khib~NKt&uVn- z#TM$v4w+Rjhpn#NOYr(}nLf_jw$2J3eST^n`GRH^%$3Vq8OG7l z6Dntg#t7IPbiwDUgc(TZ=e1CIUe#aeU70x6VnSimhvxWhCsV!NrB7`61VN^y9-KW7 z%EHo}POVh`MKgPro`wsZxh#19TuKJynffu70!5XMT^O+{@Ex>}LA6VIE|0F9tPvpE z@bq4Grq2y*GH@@aiXYn#ttM5eA@_yy`2f%N0I*SqE$ zCdZ#WRa^eSq9xibR4t(#>t?*keg24`$oS zfv{3*;FB2TjMfB;WkuAlI?QNqr9Y3h)A~_Y(6K5TCUa%r1Vr9smM@e zKDyG6mUb=M$27M%hkgXf#=)uIiN=Mg?t}Lrrar}0(AmZoXBCgsmzbj{ zEb~b1NHKRbCT|lKal}3-hOH>E$e1Gu6bpDzHJZOWrae}m*oLLvyIbB@@33|$n_12X zoD~?(&IS0e!pj~EH95gjLEnD5yvqxQAS~^Ft|0Y1NY{}<1I_k zzHltDH|AzD3e-;NJ=VBVsQjZ^|EuT4-hzEc13WGJJyEfW9tV0Q7Vpk8BbcvU9bU5w zj~=oJ==CQByc&24zi{(82Z>w)(IA&WFIV@pLNS+*qOH8rWuLJB= zIpjlXZ^uAWeo?4?9SfIS$3s~TMu=YuH+w%oH2#J6ztk%5La~>3^UY4rd^U7`bG?Y; zF*@GAraMVxZLhp>a%C6DuBp>H$eK^S@Zc|KET19dPbND!Lh|gt5>WLGyMY9Aa1%4A00YOEB!mSBEfQuY`Bnl|2qhTCZbLhi5 z#%7K-uFgzWzVT2o1y27ER=TiNLiyv#qUt$!OY`ir>c3Ze#^{F zmjq>|L5lhEz$8OyWcmwl1srax+R63%+Zu2fa@nO!Xn4R4DX;Te2N#J{FDSu9ag_^W ze36^$t}Q>*0a_w@a3F`|Q12w_J9o$&|&z6;=*qqmm)*m=b!+^yH!rV~B)b2^X z>pXw!b7os)(B*0$X?9lXv0TcN8u%){tkSK;qmA9JRD#y0I6jD4HhcZyao zr~r#n2j(GHs>7s|ha_`#rSOMy`S2I5b`fZ`FaeMm$>~m$Ri!7%al0k+mvk?AyqG*4 zt}ht4&e{36eVm30i}IKRos;00(I3l0+8Ofu%J*+x=c|C&j+W4HNN zRUq3Q%qps{;Q~Vi>QFtqeypyl#~>x6TClO*Uru2 zm77dhJ@kF%%bLDe-BODk7UO}hq7 zStC}>d80%=dQALRY43*-g?#sFC34pG-7%sb$$ih)+E_h`xjX)qy0N^V*^}sA|Dtpd zl!`QC_(!Xq<@!r7%VxOQ?>i0U{2FgW8!a^%mWk1_b`U_x977sVYqs4;Bq|bCM9^%* zgYgWPSbgC_H(1_Ig03(&)CQ6_d(8&Gy{X%t&jj@p^?r~IDH;WZrIXaB8<-zwlb@9! zvM>*|V9n{1wEhYPqn6xZBYYDf<+>9(Q}{ZM8+#MnUfd&!xJjWgwz_u_2M z9)Yw2T?G4GscdW*wgdD%7nwb9E3qX+5T?sdew|aR@{rf~+2kVS=Yz*2HLxDNqcuje zf~omg^y#v_xZ^&S0P_T^CN+QE`MtN``E=*oyC)}&MXS#Slzd7K7FEN@6H%|!MH;j) z&z8$`6K*FRM*SKPI5T!ViBBw)Dx1hJ$6PZeyfg*l5;KR5=8mcgm14F5*(hefh+6+K zZ5vC3l6>Y~fgAUY=3)VEN_2_8!)|?;QJzznK+5QZ?uiO|qtzuz*q1trs{TuMMblm~ zH)FbqQcM#8pfTi(rkrA4c;INK5xrfQBRDeS@0!GKkdpN1C`a_SL(sE`{N_eR&RV}I zAHN#XT<{9-{-wix8vmwe*s0`wsL;@wc(mpP`7GZ;aQ>lraZtV{7UOgin^ju~|CrI& zgg%wBa#7qHLfTS-k@ZeG<6j5s8Q&_H9ZP(#2-aaIF=;04>2t<+?uJ3ZdNk{}4O{5e zZ}~4pyuRxZAu+3CfxkB_<#O^=QWi`-)~TNV_Dkp{&Y}t zAKg8m!(3lIbM-A_=2cj~y}a%dOm)n}TGmH`^9no7H2EXcdo)lML2Y=5dj?NVu4{^+vIgB*qu#DK z(gpb6%JoxS&q9|{%AIJbUj#?KP06dIMhG!)WqaW0!gh1pTBtc|?#ts7 zxI|8WU~;-p)Bx)(+XAxQGU3K#BD#0Q0h26W%*MXv zQAWz|3nxR#vInG24}wMgXm?9C zWim{JlvOt~*B|pwn%Ncae#cb3CKxhCV5@F9Kgvm-TE~0GMJ67n z(sYlZlwGes)Vke*=YI*RAih`Fq4=)2`E5swAVl zL%fC#@?Wv&vvT{~q#yr2J1!$r{)F74-#bn{`6c%rZw_qjrk*W7pd?OSbUH=zU1}%+ z!$);de*S#7$5yKR`}!_sDEgIphsVOTwd+5U=Xvg7QH&Fqv15@?p(L$${p7P#N1DOK zmbA+cz-9jcEks7E`=3($1>|kBIyZ8u6Kx7AO<-)eX(nd~k>{Scd~;c9=ka zMB;8IFh~c%)$AIBvkmm8szCF}OwCo%z&#pa&O*>F=~(WMaPF7!3|%4m!{IYq9Jp77 zJht=0zlCYUKkDQ4N63q} zYz^ZIZBR}eP~`H?9cpxv|$l#OSYhD<=N*D^_IMhBZywiDaB5!=N0b9 zOii!ma-43Js_@K#*kM6Rhw|fo2c}qD_8rXZJ z>gkS!;g(XN8i8sAdmE4Y9gvh0Bv6Me-Bf`k#`G+mhtKDw=Mf?$QLpMbZF@d{tgAc2 zX=*I8Q?|V(s&vGN(!eX4+e1dG;bKF*l4?H$*S=5a!x?ml2#m&2;2`IA9_i@-wf!R|Rci%0VPvVp;QH$ji4j557*Qi6eWma&}t0$0wDAla4#2P*%D)JYteNr%@ zX#)8iwe94!Mg~eDeMPb9BW8N7+iE%bK)bvQ-V-v(nJiC~mSQ65&V!V1_B50m8g+|P z)%{$iT@Ot;H@of-=z@A7r14shZe*`ll%~hZHGoS7+qR+xISf;OQ)y+Ar6Ay|o4zGD zz^~Ha+bcAilhl1gjuhSIW6Vh#7~2qb8Hp(G17o_EpSfR2ntsGGX} z_&gxt6y^-v&|W{B|L_V7YosI-tvMS}-+DUR`DsUGL=+YDs`O3e*lUW7g^au0=C}X0 zqs#iySCHq0##?jcesj)Ep8@(+*LpLC*W9MK9Nc7FyATlZ6g)VwADaG=jKs8?iO={@tUEqPP?M;&6+W~T zQawXFMjt*z`YY~oQ9DP1It(f7XQB=Q=^#`W!HkIsR3Fw5F*r`n+`!x^5vI)Sw2c>> z&0-yDee>)A=|&aqz%H)oSLY~L1Qd&<@B^UZA3t27mcIbK{n-)x$4E_s^bt){jK~x) zxr=Mwy%idV2EbX!x({@ zKR4V>&OmK)<(VqL$$Fp^dNg8hfu@#_tSzN?po>cH;adbzng+p4(b9zW1szfiyDG*L zd=(7J%vx_=BQvu15yAJlXR$R>eakUTe7@L@7SH*o@it+A)FZOf3V3rHL{ZIkq~IZW zyO4DypI_s9_;zA+!?d*T&|(<$DEJ`v_JNpEQNLpbD`N4=XE2o?ZkukF=IWD^+E7Z; zf~JO~SdyRW*KeVebv_+I5+ljH0 zICq^e08E+WT^Ffd<51nH2;d`438&kW@TX!`I91?V&Sm0tRQnOuU3Ew0VWx<0N=P97 zWa>Sn?w7ClcCs8B_8Va;!7MhQ4NfPQ3K4YvIi0W6px^XY|K)=G#^vjt=p#BJIXviO zLk!Q-&(iT+1@`lm#{ zX>S;oy7L1*IBSXRD5QFAxKYP6`Q^rssVz*i1`x!NweSy_` zZa#|7G#d7Mo_CoPxQ#{E zG$7)1etiC&662ce^j=au7=NYAM0ng&MEZnz{#xP3?`Qu)($|Ie8Prc}^0Q0;Ii_Y5|_qpa@UXf%F$jfeK^zV zp)hGLN7}nezuQrF83WyVp|za6nnkSlP72-EOaCU058#ZWJCy7+Fvkdbi*B;4cP9j9 zCI&->9iqFg|t*qKP;YhzW?ymEJ|iTlWA6;bPhhJaGk z-+QW1_ebUu<8A2L?n(z%k`?#UWeieG6h91o^BJfzn#rYcs!R;D_DKJ+!O}S7r>j-( z`W>-KPoacAkP?ma$?>Y(WC~Wg#6))T?a&wB8E|AVG!G=8yr!$JVm(v{kCPwEdf9l` zMi?Bnm9G1F;qKCp-D1uD6)&|@{WK|I8xcK+l~-+E8r|}~GwSVlDVpRf>o+a=x#qtV zVhxrbdn4eDU;S#b6sey-36~D@knt_`Cyls_L+iGy&T)Q zeNvS`bqjrJCPYkV>{`#+h$g}|U~uPO^H8iKoaR!m#&b*54DxVih3-0-!_{5x z6PMYgCNF{7CtSzd>pLe64y&w7J^pqH{cXMJHO$_ba@qR=_t+hYcYZR0T@@A1QoDA{ zb$OuGaLoAnO^B`*!4Z8~l1WeUnhRJrB3SyF$FmbYYpny$Sba^!N1#%t9+nYbZY+M5 zs)MB%34&PuNjaWkgO_Zmmhi;zwIeBP>4KFKISTsZFV#x|F`woSpA+(q&p7FU6S-gT z1BdX|WMM-_NA!SVH>y}u2b+_Jek2}ycb;`t%h42sqfVQ&b&h#H7N1VDp&G=~(2w?C zCGKNSZP^2D{w9(WjXt<;7Sq#t;V&ruRCij!!+TtRP_a~IEK`#8Ms=0{)Hvh4(np$ z%KxSmwygUIs&=C_W9l9&5Pm?Fo7eWw7na>>vktYMG>5qZXOuNpCs>%k1!7#jUP`6Y zc|>(9{CQC{+PHwU&yZ#6-!3D?qD&Okw4MU~@JD9K7 ztwGG?s;V;gvi4jiNc{Q0UiSk6q%@BF3w*Tp#wiCmR(q*)2dJ3%<3fA^P#;CE-41)< z)6@dq)wtHF?G^lv^WF{DIp6Z7`=y+aWB#SO8Zjr$*P(|eKu5NfNR2_V+}Sy(^+W%bVVrtV6@Og|VQRzb7k7{ms5}@hqtMoQjiZ_k)VI zi{r%csj5V5#j5`8xyak|4x%BL%G5>N5Wij#VWz({Le9j~qF8Djz-Pj-0uMGWHdRcm7zv6h84YY-6-2IlL2=&=Rtf-N3aek70tDJ2{@aID%PQgNn30-n9E#l-3P}#^q|$WY@E2k1e6cc8L(gXvUghJ4@^ov(GiDJ9Oqqi;I)O8Or<`OAb3SyAuFVTm!-$?RkZr4nh1EtI`l)Mcz(bp%LY5yP8Jn?c$z^>Ecm2Xc!9@%0Nuz&r~ z#L3u~wC!t4ZNyjBv7u`tW_5zF$n}g{>KP7(3a_m@Fw}CBp$$uRptl-X+1mGK)^ApFcs==>j_}`vO z*Cz@29DW27?{0PZJ*q^tO)vhKMXRvc!>r=)X(qrUW2gB)AMsJgxw=blRGk^A+Nno0 zX=iL6Op7)ukv5Ai8|9)WHx*2TW!0mb!@#Q)w00kjlwzX&gj+BqA$C|ENnjXf8?Z^# zc17mk4M!Jhzj_=HIgc?(s#NA5kUgLhRT{S7Box>=-L7zF>zQ@Yi(7WBGZ=eU2^e;9 zZpV2XcKppf{?yNU=i6)xR=Z|um8zvwn6<~&(vHL?upeaTi&!T$kyW?Ea^uobp%;}_ znYn3}oGPi2KwOi%;+;nN`R17`!lUMaU!guoks{$nP=% zvqOzEJ8gAsGV^NMPX2W7+M1juD~&$4lhQ{fEG!^d*QWPWCyoAkc?(f*mXpCBS+T>_ zq?Amt@AipDSty}VluHX1!9t8Al9;IfA%e1Nw-0(y8TXdJeXIUMcR-221bj#Die9i7 z6=P_zK=c9BpMe`MfVbi6s;b>!(Wf24+|GJJniF=LJJ*|F=5TOe|G_84e6X_{94`^~Pnr4d zBrhtB1F^G8Wc$;kgDr73iPTu3Hu(Kq3Df@j_fVa79cIt) zEol_g)9HH3Ic4f3TRvRul=FD;h^F&t=ea2@pF73fjIGP}MSjUAa8US6-cvtn_{HLP zPyHDB%jFlvn(7|4zmy&e)xRXQyv597QDrB|#=O!&X!?f!<%RH-D|r3`)R|@da=n8` zPgV%%RwQY3dXd*r-*d)-{1I8=trov&VLi-8BW3|Eg~NhQJ)7%d7d_^`%0GmF&|-2r ziYj)__fwJx>e^C;&M|~)GgMLQU#=ksT;@4!Shg2f6=&A)eibBD%aB|U6%NooS{=!3 zt^fr?3Z~$|xVI=%j+r7tIbHN#{_aZV)@s2Z+g<+tx@y*WLFzoU5rdqJ5!g9}N{a&5 zTNDW$dg1oRF$^zoRO|qxz`^gRQhiP88~08~T4=2RzlRipplSsYkK-a0rj2UwPx+gzE)*6Vv2S-9yI&2*b`8XHLSVkH~%cmD5&t zcS*$VB^Z${3lsIx)nB)~VjCx0DG>Q9ppUwD_isBZmalr6nH?uUy_F*@=!aocKxcB| z1{~E%j&zc#KRMto|0uQBAs5nFlkX_n2@Ra4z5u7bb^6PM-X6X6ZD_477S**w0e@LZ zn&oTbbQ0q-FW0xN?lo#fsQom!{m=y^X@v<>CRzX4%?<8Yt2z!{Lv=^U(Li6=XQ?e| zrX5Eak|9Q~CFIK%T+{ghb9J7z@7U2o6>1-a6%WPpN+e|_IzGcjZ}GC>!(qmK-Z z$p2lFR})W0OPeuMNqeObV_~Y0g7`fV5cUz&zz+@ug~Qkv0Fk*qBcfp1ZE~Ca_5Nsq zP3v_L_zZRS!C1=sOJB_3dkAOV0n+6>;*=-YFKk&feekgMayflelR`dRZQ7(_e`cKq zk!$d1k@`JX2adw1d6W=83pLZeLdTrX*3r2(Qc(^LG_lMxjzVjP2G)t3F zHc`>vCbj%%-7If?!dK`5mKj|n9A|0uQ864`{UcQeeD~xtHQ$|nuOqZIWHUhqfm`zr z2V=p*-K^WoLgHJG^=uAvk{`HZ31_-aYIag>yZYZZ)T};AT0^?b~ zv3r*UJ>G`_v+kYWGb?^7mLO*xh`H)NEWCE;tBGH$-VYU#XP`;m)SJJrte&GNofx-$QV{TD0}yBVna@Ib;uI zDZBtB$}SZ~IUfa65_@D=LaD=5ViK_FSNwZBITu-N=`o`3dJYZkqT$6dl}Ge?iWO81 zl2bV3_Dk;1^dGL3tNw&!AsrC*tp89_@>UU_>)noWq#F2zHDzgo1v*Y7=K_NLgT|Eb zyz+w>rR(Acb(x9jJ|>hP*VcL+6*i{T?hr*?;5D>7=t7xdbF$4mFoB(dldiP;UU0@^Ekfmws`JVT zd6-3+gSw;+X^j@4`&&Wst(K(yyz*U71ezzoLGpS=)KIE9y&suBSV5rad7b=;)vZ(Q0 zES$tRanK+@Sl&m0{{CG%D!6&;bCxB6wu2h@Oy7)WK7O|+&E;L#uyTs|2LyXIOg)Sf zXyBw>F(#}5{h*NbGI>R*VR?JaQ%G)BzJNtxT%~V!? zDOmzOUlz(;tAAB-jGW60NOoC+Hu*Tofo*mnDL)tUw>=i%9>Z5HFcCNCN=b6eV5kri zd3mB~uub!C(T8m|y*4^gn0LBJMHhUu3=Bh+J2Amd(0lq0@M6)>X!6zChc|1%x$+(v zGt9TipOz_JYgJz{DT~4*sqpu)q*$a#0$jOba);cj)O!e1is^oV4GXp{Qu^;dv$N(O zn{S)OuAjk?me+0_II#&smut4v#14W-inRFU!&6QuMEFtoCi_j?jTv0~b_4>?U#^Wv zww!ar=4=%norE@2B?*diY?)N{%+>UB&q9|_)`TqV*){KAJ=QHV{>I>xMjH=@8g$wC zZA?Mi#fY_z73x3Hm=pM8O-f8*h5t-o8kX>Yc@=WWhIy$s@CMt2<3J4D1Gx#R$!hYU z-Y59=8)$Ejk{%_07NR$_B|+~7ysq2g+)(Gj@GqvYA-wdF-D~h66Y)cma6y`qxK(PH zBmwU?TlJWsuSwm!-Jq)N^L2E!@)J=$mamqbGA+L0^PKU#eh60096aF2--0f^0KrBp zYLJUEiN@X~N7vYq;|-nqq-WD%kh1``HEgn6zY9srzCgo2)QJMs1;t^#6h<%T{_=dp zhh_O@=Pp?J_m_qqB+gE<1ka$XnMB4%HbM)^H=9`?m)~ox!v8uDy74L91I_eP&hj{m z)LMOd*5p-qOy@`D=$r@~aZjt&EnfaSwr&0tyNfaT!aBR{H;3M~<2t?HFjFI= zqnvI``6X&_QeMFl9<(N^ia<~L#-R=`Aj7JPgYbU3(jdo|tQb!Xu}W=5dwlR>o=1D2 zX6%;HT0)?W*-+Ac62bl(f_-sHu!XG_+PkfG5HBTo7Tr?Ibwr)(WTsf9?EC61-Ul%W~n zC^e{)#98gNqDUi_RkH9&=wif-18clwjdi(W^FZhG+30Y<_`v1l~2a5!;?>tVeP{ zDAp7+mnMJt=>OO&bw7ItmSB^lKKw8x0)6fFh}b*nYl`Nr!+;(xNtn^kSzT2@qT{bs z5cu+Sk9W?#yApo?WHroOmK?offR z%5*oMzS}G6xGX;F1)mPzpu#+M{&|%rJf);%k~qP(f_n~n_LR@ON8j+RvZ@cIim!CP z$t}Qk|H$9m8E{(9eevd%04PF>mHomi7&F7$Ym_)@t zrd85fKf;DR;VQ4%)Nu)DCgMGya#sNSd)+$BER}H^|uf$*?kdX7#LxwK> zS#nvgpd4?JmMBID+t&^mKoafKUA67|j zVo;aT*9kqQ&*X=Mv_o29>mkRk*~uW16tp88iL7^4v~l_#ZG)#Ii#4Epson}XTKV}m zNHMJ_R!xj42GQRe6`zK6PzIP3F`+I4c>@c%=gq?4!keLeUSG0G+^DnlLF>Am2% zd(-Z>!Ox#4MM);B23vEV#qVrBEc)1zl$-_5HgzymeIp%jlsd(qB}n zaO|$@_5XDXjAKOdFBIjp-Zk+XJrnl^Kp1UAU(yaT_Zzp`g2@>s-I2I<5y;}ew{?^U zI+S*BZQY9g8Hm1}+5PX#SPEUuB8AUohoClS;_j=r=cpoz(EZQe!s@M|TN=_oofv{V z)WV?cg5a+b7d!yHaP3^c%HBx$KK3Z8SL)O~G%|{)EaYWgUEx*fg2_+)?}B2! zK;lMZM_y>=-CcHqS9K5-;jk!0MaXrThJSD;=Sm= zpBu-1{On5=^7xh?3(SkvK*eDl_{o}Y?Gl*zS zaV~@yCu)-;gUx2GlKC}ZrDC+LDzo;tMSCX~lKEX0#w#3$Au8|u9xEHG$66$-uj=ef z;h{+LRbCM_0rly=MqD(_bhX_yEb?NxiB>i*k~98fD1sGWCWxgb%!gfORDNh*8-ufDX2JCqDWB0a5;|_D_m4pw{6(LN zTPxa!-&t`_^60SrKtar6OA|{T?xh0a+Hu|921fGQwUq^Ov{Krd?gE)PvxCa#T4Szc ze?Y$UWzYHP?e!R$Z!(sDc|=2M{4^>r(?>3et3l1IFOHNW%GUv4*|@U}~!o0x6L zBI6^+dWE6Z65mLXy&vI-ny3?8Y(*a~#B5TPu z>r7vfrg@7e3nhqsd$db|(ifh+aO+2rK>j%}L#RUm$U%G=WedNNIbx=kv^?pN4_Nhx?eAzb)8% z$um#0lP*G~yoY9WxQ6%&vx{|s^~%{u$BBz1SWbFZXcK=l?Xm##$V@`vl10KY(*Cfn zRz_*_+R5``(s)8T*ctq-e<` z23@e;jE>&Qm+yIB&5F*gI2#BT_;M}Enz3w=#WZxgsGf|) z0bv8(=BKdd<~zvi3JY+S&{_2PJ`YuG2vwBXU|=J$9#wE5oLIx%ItRsrTde1;ZR?0w zbmjVeLz?ww@UeTr=x;bx>CE`znbsg`!p%a|jbuO1wp}#*c$#$J8=O9_E-zsmePi0- zcbqP%Z`4=h8@5pi78N}`02Y6q9cL_1JfOvN^o=JW8GA(E-QX1bBXW2<5*^S7aHNlr z-Ce$}5-69({KJvx>WXg4EmBJ>^QE`Dq&X-mvgRU5f7X}1wgiQNg1ED^GS5Ns(Ao`-W8|?}@_yF91 zSV0!54v@6C8ZV}GmJQFquXJF&K`-!QW2`qePy;%wFWrSwc-?<@o1MDVR|sJmGG08Q68HpFD@XczMx+R_v0r9j8#v#| zKQn1iOEMI8c^2Aw{V@8R8x5;Ovg2%94b`dJAyC5(kN&TT?PIlBTT9uUrurbA5a>YB zDJkCq`==zLAME>SdB0I({}y%R2~%$nGhlvw3H>GO!c%O|i4rrq)EJ59@1#qzY}b*c zt0z4YA_VRs<*a(IQV)sJ@{i(jgvy1+&}t`(&hbi&*#=lxPB~|8c4%9w@;DN|>Oq(G z@%7xWb2lSF!#RBrKHqOR2q`f)Rf}nD6>KMBF9ov1r~=Sh@- zBvi`p{}if;((#^sj#q*W5^srBCJ}eC-FK5tTVM@Nu~9j4V9XdP#$w%%+pCP(WkhLQ zbT~`t<#S87cc3K+f4TR>D3N&^u-(UDWD(!9s3}^c!+_EY`Li{#IhDd9-{F&=rH1$2 zB<{i>CJS#$=$Q|F5)&dzdyzWu4M8kqjss61T_hVDLf6u&jYvGvppG_;KIeZ@O8DeI zNo_yi%8?>bY&F600$5V`*Jj^LH~+X@2y-Nl@b>#bwA#nV!%|xo69N}L=m!ol4BuK0 zWx*wi6w{eq&dl)`@M}5y7B9UH?%&Qk9S4+b-gbc%3k>!V{g%u|wT$XN;%mm zz`+Lno@J?syj}yR^ojrMEbwL=?FH!`4*}X2dmBB031cwNAVcYK`_^ z=L~9H+TX$7w4fM5N<*J-ObVFuPFM@Q`EL5yQ|iNW;@@0baNXCK8^RQ}*5Z~odgi#nV_qDdK7 zZ;_HN_oBzl&$c13)h(DqJhMrj9ce|g*EjTf&2(y*lIe^5kPCixUs3wcNss>J8f z`}?mJOkOSFho0}|BNA7?(1b8G!UO(4Sdc5?0foAlUTraGxhz~>M!>szv?A!e83);fFf4F~>;7Ea}c#x5H$>Vj3< z^`zq;H#!KH)QtU!3cx=f5UTL+TMSuUm%1v7ruiGI1{N4v zXaSduUtC?N+X~HG@GQa2@`aL<-V02GW1IJJ54XA#;kh3$z@nCWhD zGEmA|hk*3||M>rEPKGkd1gO{SzPUEyMmDv6PnQ5vF7WGEB2&g<`;c%(rXRs&Qzgla jhJmpE7k_2>*9)+T^o!M;gV&z}