From 48b7b7670da4c8b6965ba8e758594145a4e70f41 Mon Sep 17 00:00:00 2001 From: HypherionMC Date: Sat, 10 Jun 2023 13:25:23 +0200 Subject: [PATCH] Final updates before first release --- Fabric/build.gradle | 2 +- .../craterlib/CraterLibInitializer.java | 1 - .../client/FabricClientPlatform.java | 1 - .../assets/craterlib/craterlib_logo.png | Bin 0 -> 49343 bytes Fabric/src/main/resources/fabric.mod.json | 8 ++-- Forge/build.gradle | 2 +- .../com/hypherionmc/craterlib/CraterLib.java | 4 +- .../craterlib/common/ForgeCommonEvents.java | 30 ------------ .../craterlib/common/ForgeServerEvents.java | 40 ++++++++++++++++ Forge/src/main/resources/META-INF/mods.toml | 12 ++--- Forge/src/main/resources/craterlib_logo.png | Bin 0 -> 49343 bytes Jenkinsfile | 44 ++++++++++++++++++ changelog.md => changelog-fabric.md | 0 changelog-forge.md | 1 + 14 files changed, 100 insertions(+), 45 deletions(-) create mode 100644 Fabric/src/main/resources/assets/craterlib/craterlib_logo.png create mode 100644 Forge/src/main/java/com/hypherionmc/craterlib/common/ForgeServerEvents.java create mode 100644 Forge/src/main/resources/craterlib_logo.png create mode 100644 Jenkinsfile rename changelog.md => changelog-fabric.md (100%) create mode 100644 changelog-forge.md diff --git a/Fabric/build.gradle b/Fabric/build.gradle index 83cdd51..e3d54ea 100644 --- a/Fabric/build.gradle +++ b/Fabric/build.gradle @@ -145,7 +145,7 @@ publisher { curseID = curse_id modrinthID = modrinth_id versionType = "release" - changelog = rootProject.file("changelog.md") + changelog = rootProject.file("changelog-fabric.md") version = "${minecraft_version}-${project.version}" displayName = "[FABRIC/QUILT 1.20] CraterLib - ${project.version}" gameVersions = ["1.20"] diff --git a/Fabric/src/main/java/com/hypherionmc/craterlib/CraterLibInitializer.java b/Fabric/src/main/java/com/hypherionmc/craterlib/CraterLibInitializer.java index 807565f..eda7fe0 100644 --- a/Fabric/src/main/java/com/hypherionmc/craterlib/CraterLibInitializer.java +++ b/Fabric/src/main/java/com/hypherionmc/craterlib/CraterLibInitializer.java @@ -3,7 +3,6 @@ package com.hypherionmc.craterlib; import com.hypherionmc.craterlib.api.event.server.CraterRegisterCommandEvent; import com.hypherionmc.craterlib.api.event.server.CraterServerLifecycleEvent; import com.hypherionmc.craterlib.common.FabricCommonPlatform; -import com.hypherionmc.craterlib.core.event.CraterEvent; import com.hypherionmc.craterlib.core.event.CraterEventBus; import net.fabricmc.api.ModInitializer; import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback; diff --git a/Fabric/src/main/java/com/hypherionmc/craterlib/client/FabricClientPlatform.java b/Fabric/src/main/java/com/hypherionmc/craterlib/client/FabricClientPlatform.java index f222d83..a540589 100644 --- a/Fabric/src/main/java/com/hypherionmc/craterlib/client/FabricClientPlatform.java +++ b/Fabric/src/main/java/com/hypherionmc/craterlib/client/FabricClientPlatform.java @@ -15,7 +15,6 @@ import net.minecraft.client.renderer.item.ItemProperties; import net.minecraft.network.Connection; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.Item; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.entity.BlockEntity; diff --git a/Fabric/src/main/resources/assets/craterlib/craterlib_logo.png b/Fabric/src/main/resources/assets/craterlib/craterlib_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..ce0159cc4aa4d823ea354042e531b4522d6dfead GIT binary patch literal 49343 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 z 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 De~rmR literal 0 HcmV?d00001 diff --git a/Fabric/src/main/resources/fabric.mod.json b/Fabric/src/main/resources/fabric.mod.json index a757083..e102407 100644 --- a/Fabric/src/main/resources/fabric.mod.json +++ b/Fabric/src/main/resources/fabric.mod.json @@ -3,17 +3,17 @@ "id": "craterlib", "version": "${version}", "name": "CraterLib", - "description": "A library mod used by HypherionSA's Mods", + "description": "A library mod used by First Dark Development and HypherionSA Mods", "authors": [ "HypherionSA", "Misha" ], "contact": { - "homepage": "https://fabricmc.net/", - "sources": "https://github.com/FabricMC/fabric-example-mod" + "homepage": "https://modrinth.com/mod/craterlib", + "sources": "https://github.com/firstdarkdev/craterLib/" }, "license": "MIT", - "icon": "assets/modid/icon.png", + "icon": "assets/craterlib/craterlib_logo.png", "environment": "*", "entrypoints": { "main": [ diff --git a/Forge/build.gradle b/Forge/build.gradle index 3ab5bca..d4e7b0d 100644 --- a/Forge/build.gradle +++ b/Forge/build.gradle @@ -173,7 +173,7 @@ publisher { curseID = curse_id modrinthID = modrinth_id versionType = "release" - changelog = rootProject.file("changelog.md") + changelog = rootProject.file("changelog-forge.md") version = "${minecraft_version}-${project.version}" displayName = "[FORGE 1.20] CraterLib - ${project.version}" gameVersions = ["1.20"] diff --git a/Forge/src/main/java/com/hypherionmc/craterlib/CraterLib.java b/Forge/src/main/java/com/hypherionmc/craterlib/CraterLib.java index 71a63dc..fb3f927 100644 --- a/Forge/src/main/java/com/hypherionmc/craterlib/CraterLib.java +++ b/Forge/src/main/java/com/hypherionmc/craterlib/CraterLib.java @@ -2,9 +2,11 @@ package com.hypherionmc.craterlib; import com.hypherionmc.craterlib.api.event.client.LateInitEvent; import com.hypherionmc.craterlib.client.CraterClientBus; +import com.hypherionmc.craterlib.common.ForgeServerEvents; import com.hypherionmc.craterlib.core.event.CraterEventBus; import net.minecraft.client.Minecraft; import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.fml.DistExecutor; import net.minecraftforge.fml.common.Mod; @@ -13,7 +15,7 @@ public class CraterLib { public CraterLib() { CraterEventBus.INSTANCE.registerEventListener(CraterClientBus.class); - + MinecraftForge.EVENT_BUS.register(new ForgeServerEvents()); DistExecutor.unsafeRunWhenOn(Dist.CLIENT, () -> () -> { LateInitEvent event = new LateInitEvent(Minecraft.getInstance(), Minecraft.getInstance().options); CraterEventBus.INSTANCE.postEvent(event); diff --git a/Forge/src/main/java/com/hypherionmc/craterlib/common/ForgeCommonEvents.java b/Forge/src/main/java/com/hypherionmc/craterlib/common/ForgeCommonEvents.java index 99a49fb..fddc858 100644 --- a/Forge/src/main/java/com/hypherionmc/craterlib/common/ForgeCommonEvents.java +++ b/Forge/src/main/java/com/hypherionmc/craterlib/common/ForgeCommonEvents.java @@ -1,14 +1,9 @@ package com.hypherionmc.craterlib.common; import com.hypherionmc.craterlib.CraterConstants; -import com.hypherionmc.craterlib.api.event.server.CraterRegisterCommandEvent; -import com.hypherionmc.craterlib.api.event.server.CraterServerLifecycleEvent; -import com.hypherionmc.craterlib.core.event.CraterEventBus; import com.hypherionmc.craterlib.core.systems.internal.CreativeTabRegistry; import net.minecraft.world.item.CreativeModeTab; import net.minecraftforge.event.BuildCreativeModeTabContentsEvent; -import net.minecraftforge.event.RegisterCommandsEvent; -import net.minecraftforge.event.server.*; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; @@ -23,29 +18,4 @@ public class ForgeCommonEvents { .filter(p -> p.getLeft().get() == tab && p.getRight() != null) .forEach(itemPair -> event.accept(itemPair.getRight())); } - - @SubscribeEvent - public static void serverStarting(ServerStartingEvent event) { - CraterEventBus.INSTANCE.postEvent(new CraterServerLifecycleEvent.Starting(event.getServer())); - } - - @SubscribeEvent - public static void serverStarted(ServerStartedEvent event) { - CraterEventBus.INSTANCE.postEvent(new CraterServerLifecycleEvent.Started()); - } - - @SubscribeEvent - public static void serverStopping(ServerStoppingEvent event) { - CraterEventBus.INSTANCE.postEvent(new CraterServerLifecycleEvent.Stopping()); - } - - @SubscribeEvent - public static void serverStopped(ServerStoppedEvent event) { - CraterEventBus.INSTANCE.postEvent(new CraterServerLifecycleEvent.Stopped()); - } - - @SubscribeEvent - public void onCommandRegister(RegisterCommandsEvent event) { - CraterEventBus.INSTANCE.postEvent(new CraterRegisterCommandEvent(event.getDispatcher())); - } } diff --git a/Forge/src/main/java/com/hypherionmc/craterlib/common/ForgeServerEvents.java b/Forge/src/main/java/com/hypherionmc/craterlib/common/ForgeServerEvents.java new file mode 100644 index 0000000..136ea01 --- /dev/null +++ b/Forge/src/main/java/com/hypherionmc/craterlib/common/ForgeServerEvents.java @@ -0,0 +1,40 @@ +package com.hypherionmc.craterlib.common; + +import com.hypherionmc.craterlib.api.event.server.CraterRegisterCommandEvent; +import com.hypherionmc.craterlib.api.event.server.CraterServerLifecycleEvent; +import com.hypherionmc.craterlib.core.event.CraterEventBus; +import net.minecraftforge.event.RegisterCommandsEvent; +import net.minecraftforge.event.server.ServerStartedEvent; +import net.minecraftforge.event.server.ServerStartingEvent; +import net.minecraftforge.event.server.ServerStoppedEvent; +import net.minecraftforge.event.server.ServerStoppingEvent; +import net.minecraftforge.eventbus.api.SubscribeEvent; + +public class ForgeServerEvents { + + @SubscribeEvent + public void serverStarting(ServerStartingEvent event) { + CraterEventBus.INSTANCE.postEvent(new CraterServerLifecycleEvent.Starting(event.getServer())); + } + + @SubscribeEvent + public void serverStarted(ServerStartedEvent event) { + CraterEventBus.INSTANCE.postEvent(new CraterServerLifecycleEvent.Started()); + } + + @SubscribeEvent + public void serverStopping(ServerStoppingEvent event) { + CraterEventBus.INSTANCE.postEvent(new CraterServerLifecycleEvent.Stopping()); + } + + @SubscribeEvent + public void serverStopped(ServerStoppedEvent event) { + CraterEventBus.INSTANCE.postEvent(new CraterServerLifecycleEvent.Stopped()); + } + + @SubscribeEvent + public void onCommandRegister(RegisterCommandsEvent event) { + CraterEventBus.INSTANCE.postEvent(new CraterRegisterCommandEvent(event.getDispatcher())); + } + +} diff --git a/Forge/src/main/resources/META-INF/mods.toml b/Forge/src/main/resources/META-INF/mods.toml index 3bdc67a..d69f990 100644 --- a/Forge/src/main/resources/META-INF/mods.toml +++ b/Forge/src/main/resources/META-INF/mods.toml @@ -1,20 +1,20 @@ modLoader = "javafml" loaderVersion = "[46,)" license = "MIT" -#issueTrackerURL="https://change.me.to.your.issue.tracker.example.invalid/" +issueTrackerURL="https://github.com/firstdarkdev/craterLib/issues" [[mods]] modId = "craterlib" version = "${file.jarVersion}" displayName = "CraterLib" -#updateJSONURL="https://change.me.example.invalid/updates.json" -#displayURL="https://change.me.to.your.mods.homepage.example.invalid/" -logoFile = "multiloader.png" +displayURL="https://modrinth.com/mod/craterlib" +logoFile = "craterlib_logo.png" #credits="Thanks for this example mod goes to Java" -authors = "HypherionSA, Misha" +authors = "HypherionSA, Zenith" description = ''' -A library mod used by HypherionSA's Mods +A library mod used by First Dark Development and HypherionSA Mods ''' +displayTest = "MATCH_VERSION" [[dependencies.craterlib]] modId = "forge" diff --git a/Forge/src/main/resources/craterlib_logo.png b/Forge/src/main/resources/craterlib_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..ce0159cc4aa4d823ea354042e531b4522d6dfead GIT binary patch literal 49343 zcmb@t_g_=b6E}Jiib0B@BOMV0q*&-RB1P#Plq#qoph%aRpr}A77K+lP6Obysssse3 zgMfh1Aksm4PwwXPeV%*&f%}6m%sIPzW_EU`z9-tmNSE;>_eltX7_VQ`GJ_y$808;= z7CfC@eSGhPy=g3?XC2eo!GOS-@u>HT|Joj`46rOS zK9(qOTMkf;@-#!$-D6S88KkL-k28VADq>*fGR_7UVLEyTXD)~T#;?7yF7Uq|gI*2l z3+mesg*1EeU0(0L+D)H3Jjx_^{W{(y$c)$Dr&4*ILNcD#cpj58-n#7gVR9JoS8;DH zCa1n)3mva9mqJn}923@B$bV^!*E$ifGN;M*zIXXFq>Y46<-rfl^3zfsgw zu4?NgtZ>Qd`%ZH^`5DK*^J&_qLm>!rq{aSmV)c1U#HkPJ)HXjB1nh6_*=|umkgTx+ z+nakK`Ka?(G5Jr)dqYIDZodZDNR+vK>;)%r1!bfe+dYF;a^X zLdd=Q@~Yx-r(m^=%e;<1wyhUWK~TGUpDvdP8{Xn|2txJ}_|~?7r@^U)H-{>MwM9vLuFR5_7I*)JUYJoM@tTd>``)-TNdL%zbd zUMwaE%z&V`lcsF=ey}^~MZUD8He- z_HH1S%hxSYuk@h*XfIv-RU47PS`t>3rB_Zp{y(+^c0(x?*sOk~oJWhd{nv_FKl3m%>-H3ckI2RQH{7UmV3|VUns*NoyOVq;vs_HnkFN%N{5QZ`B#t)mdrmA=< zE$7OTIaBcLmtL8}NqDW}@2ts+*5}Y9ZGaISWvr8afaLv(T}wxBK51!Bg#7m*&ylkH zxSiGoTbK6y&665S`xNdg*u!}E##4|^3+bPZ%o-?!4rp*Ve-uv<} zT;7)Mf;ixOi*lhuJ7<>M~PMCP0^!}`+fUSXbDICKRRmy@$Q)OR`4PUe;7%-O734V zNf3@QP>`Oom7!n{WJ-7NWjE+3x2uBk2C91KZ^|~~5%$jG8KiA$u%$|wJu;fQv}gGr zizmRuh5tlkVy!~a74|D0wsO?q`RkBbNj?jO? zy6pjoV!sM8!oW{KkMqx<^ZX~kf!zEw3TPYE7iu@tfO09MWZ#g!zb8}vf3~i-+8J@-&r@KEFr5t_esWTX zKvl0Sh6jGVim`X_qb!>V1c=%yy+ z9z#+>|62n2A5Z#}lLlpr{Qog6x}av0u}lU64cXLgNMg&hj8H9dPU zf5b{pzs51g8D7(=G3{~dxAl1vT7Gj44h^xwAr$;8Ct$&iQcj)P zpTNK!sg2E1M!Lo%s%gE)vt7(kcK%-rI1t(N^r8LLtkw@-5@^Wrd@YQ-Uu+{4ytkb4 zGf&L*qmc|+*O2Vg!7R{#C=eF+oqT+&eOTj}t>}cWhpc`jCnBjJ*^C)*ht3CVJWuA> zpFX8>xMg1FBN)%3C3ZoBocuQu`t!{jf;K8bKMJ_+t*pNOqz8z=!9GHek{KO@TJh6A z$Q4Eh4tjkw&X77q`?s(4uNVySmjm2q`&51vpg*?R>Uw}qb6pzd)zH}eYLtXhV7t(Y z#BhVd@xmc61?~OYD5WdXcdQoHlhcH$rmvWe4!AnA$L<5S9v$IgQqmm0e!!oQf*rJy2V z%nXY1Q2QltVLsSP9&vIWha~M^rSeZ;bdyG4kU(z9ftz*zp6~4KH#l;fE4&LxT@j&% z+^`Q^+Mdkh;=!R>^M9Vqihw@60>ir#52%)ekdPar5QG}G*`u;$j%crbJ)C+HF8dn1 z7jMix^4s<*bNg5OYM$D$7LgLbI6biG2#9luPmvv8n7}`KJZygXK3W1w1$XmBwM`=a zG}`xQlX+&cueWVj%%4)dYI61Mcp5#KcH)FKRLu!0y^~$VeV74(+?s7uMiE#5fmMW!riWgc;bF z$jtS(O%^jm@xu>JK(}?l_puKe$m1WG%Wr5mVvlSFWL8JWXO{R5r#d3BA3u7;u$m{7 zgce8dWkg+Q_l99Sfp`}sIn*j=H00IY2VY;4)yDE2*^CDUZZxSJj(mPwZH~X+UFU8xcmAKk6o^7Y0J8I6#5~M{hrqaqPtQ+7maM z@6!_rMu$CnY2prJRcJ?|t9U?FuK2so$TZge8(SBmPqk1%i&qhlNyPj=0YehM`T=_r zDa~)62`zabwYQM6*U;!i?A9mOKH$3WVXH8cnuoRDI&?WXFmt*7xx5f7JU6&RP-;}L@=CSNpJTy7kmfYy+pBqqXdIkf9^Y# zwW~QA97h4P#XmlY>WvB)rDiA%@6X4evUwN~G*-1oMeUW{oGPO*O%2Qj!~a!KkK$nm z!U0q+V~#208tovoWU}PJM3If8j#AKDV6r7=3DRu!Rr9;dmau-K)^T4+DvVSb(7{{L zn~cemP52`^8TX zD-9%XU<_fltM(j6q&5?@(aQ%alg94A3AtOjP#L99eL}{Out~wI5Rn|?f7~zd9+HDDp4e!k(XCsB@%w0kvb9vEs0V?Hina& zWDe4Z>5)U{#J{SJ`JS|AtKW8N)@b4PGvoysp!zezFi3jrFTU-mhCe6Y)>l~#vekDD zs=2=eiPf}6Rhzqy%829bzoV(%7bBzAHaqAO{C|Fa3WLrceu+tde=w0G^`~bnE?=q@ zhoYXMzY$48e9y7Qo@6`k-MuGp$lasj5Av7YU!iuN!J^IaKYrfRzc^#kyrvv^(L4A) zqaYr?<BeO7iMIV%APOweX&RZkE4SAs4!GsvJy;3!h^iN!o8py=vb6ev$ul6yDpm zfPqU2@i00QLWO7-drFeJnBqVDRf^i|>o+o5S~RZh;Xn1pmNMMvwAmN)e zImo6Y9xTcAoTF@4R%w#jX~EqBj4gBj{YaRuXy?sAlM52>asnUkYGptD3*wxc!Vi30 z*2$em#a7hNv@gky8O8V+`_7qet8L9tj3)Gn-f2<`ZJa z$V|RM8g&tm5U{n+&vh!_>2O5<$<)b;h|Boa)OKXD-ksp_Pj^#`9Diw6{dBhDnG3PM zF2FkwEG}cs#b=Q5PKt0MA_n%O-5bgtBsMP%zdj`!tZEfl>gWgaGIRBtc2p&ev}zE~&T3lChZ>`Xci)FTz%{kHvF zq_QGbSpCl6scf?Ioa!gcXVw$kaxX=2d}kPtT(Hx_V3Kj*PjuovdCCdBmN=5SbV`83 ze&K80Pyso|x_cuRzE1j1?cE!VlHl%FJ_G&HLqNAh^vI4`=;F(3ZQ{p1$ z^OoTnn6Y5~Tr@FE>L)=RefY@bfRY?sJkB>wDc}8R9ycE{#7Gsdap+tq z?%qed$=)^ETu0>(JSq2c0cJ)9Y7P`B#ql1Fu@h_)m8s5Sq3q?p4Nc6VHWzYsYf#}= z8sU-p(gnevV>3Ve-T&6(pzPX62=!iTrp>52|5@)F2g8Z{z8BS1XpJ0~7T>Au!3?p1 z$O}${FZ^*-5kG+OsX@k(`_eNcT6Z@pb$Sz9UsW|_UM(Z4y<1in4E7l@H~)mGPtJJs zyRxrFDm)Xm2wVz_)qfo}>)>v6%8_gn#Q6Nf*@CrS*HmQ$uw{QwWufh;kt*}{eos~O zgm8Fmz592L*s~UHlzZjnjiGPrMD)Hj+97l+w~g>~4(-(LOr0EEJ<^Xpd}&7DbiNX_ zyLVMB!Ca&5aGDT^lW*NzA=?~H6OO|!`pqy-*k2|t9lzE%o^jsWu~i{_)n*mPET&u2 zK^8f^P2?0T=>+$+k0*%7?~a~f%C}T?TBOPuqVBxN$XD-beKe~dIwplsF@wKic3}p%Seqov9ctaM!dr=&dtZzy4OAJ-5 z#Z?jbsCn;bWoF_j>}v^}m!8Uu84l&gobGN|C3P{ZCt6Sq1c>9HPnF#ZnO$ETWv8$g ze(4AD8j(mXmfmrpA-|u0auTEyf=pt@2NmUfn=cD1)lHL)#{S7@jNDUC^05|w0FR^3 zdv9h5>mdG{I*0x(*+Ih0GW+OyK;5;}|WfG8B5)ztk8t;zciwhGD zsS5U)xqI=hX;<&e)`-De<-AsgSK)kgKSbJZcM?Y)kT(61ETBInTzu#yKhddu&?blY|}@1c*u^A$|C1eB1&TVd8J~A%>7~& zrluqT##kSfLxH)gGBSs4ug0GS9cBpF{mxp<60?o7KkwE!FTj%De+N5FusOP7ZTC4d z^XTRrL%8&r7p-VwG^2eRBz<`|L_l0!$&L;Gu)h%cj%*4fuNjlBR(gyvmXNQ?vC=Oc z2lB2i(~?#L(QWT!R*6pu98^?P-2wB$egpXQ0&K2Kv1W(c!9Mx;k6r)F2Wz_%M*Zmv zc0A7>9Qm!EBL8EpK}!?or?W^C8cRo#wl*$n!R^s}6nzDq z1Prr{)&7S*AO*%$KFOU>^)NkXLvNWl28_6j&F2anAKxB@)HHQk61G zCng+^yVf|-+bQIRId2>3fU!2pwVnF6fHt#3f3B$se?Yv+rUs`iKkmYpxH?Wg^ye9H zr+h2==^C&=6R{-hM&G!Icy7A-=;^;@z`a0gftpKOLDHt&_it?xy=|~@t3h>{eu?er93%@=Q5XrN)3uT3$L84JQNTa zE9RpAa#xGSinlAqfyJM5n2MtEIy*Ouhp2F~icke^s)sytm%RCTCO@U0yzxFT=J%wR zp;ZqrIRnc{ZYsDd`{}%^vFNn@aZejb$2(jotKr{>ZsK^?_SrHiZ>{XU>Vp)4Q;IEk zk^*Wb11O|YF=b?%I@!$iZrHRoRg28DcfIe9hUH9oQ>VZpAg$8(<{XcSO+t}GjQv*& zqRop;Zcj^#ByIm27H_p{Ze-x=KP&uo^l5><1KS*|b^Z5}hDs9t#uv9EPLVX*m7_LO zQwLu1iUm=uGq8|f|3FPs1AlsH#9W(S?ZB?zrQ$}HXdyQ3*-qf6d}VC*O5DDAcj`EN ze~{}%XEfh3h$c9mJQ?#N@k z+>m|ih%gm4|Hd4L{GWmtLXu4pepM<_NN>&9K+WpVL8>Fkkypj$(`K#GM_1B z|04JEYIpHl=itTJ?=)~zWiH_+v*g7GRv8c6bKHp?^!Ebi4e13H20ut{59ag}9KzAa zA5x#*zY(nPx^4VE>-qdW_c|pYKUx za0II*(wq7dBcD>#0>|@s-fIU*IJjUwFAg5dOr3o3%nMa~A6l~6`9y7L#uEOoa-niu zX{w}zm=713vx%(0IDO+Q&zliLc&_!;W%Vo5+9qkrkk}SnuyX#oFK~91RaX5+`GmP5 zXfVtXx6g6BFLY2(&fB~nI~8reF{q;Mc$Bh69wRzG32?}bU2pIbkRt7t|D4`zP>!C) zk{9|(mh0B&{Vb0|xz2ukdpl}K)L@M8@O@>($j!(a@~$JPsqfHDuM&A!XG{vw;62Me zLp`I+K31x+U#($8@@?Z^mpk5X+pF%|?lC>>Rdslr?`FLK`J!yab$`WJf zL+T9l=UtQA`znvH#IL#&p^0^WB?IPi^aC@fFp8V}*vWJ_<{_bjRV^V&Dp<*{&8vwu`Ob~C20XYiI%U?n12P`CyGH($_?2MMYO>rgjRfi4e#*#Ogsl_W}<7#^Ac#VC5V0CLw@4Fl4$x8~# z8A)lxqfbrvE)7y8F+siV{6ZkxsQ8mH(hSj$>J!@rOH)*Wnzz>-$IZ4QEP8mq<%u#j zYp~w6{`W9B@AB{b2Sn~melvwwflzXr{9-D@mZA)GcCz#OK~^g{pt+!#*jY~T0+Pv09OTJva zJ@z2*olWB{a!*_MhrPdpb2m-h_Xwnev5e_Vjs0Pb)qT4O9i82PzD#*F zw|B~xC!pVG5|-TCuQ(Co(cySJOEy3Ht#NRBg=5P5)OtUeh?XQBl%rPy8B%pcpl#M( z$oIcAUelW8k`YvtJH8TSpP;;JB6f9oM{DM@#2?kZSHUG$A&PUMBg>jU-Pn8EMcIgY z)}Q4ym7Q+(TiP-Sbze~S(QR%WxncopKJGhJ6)NTYlE(#uGn;iQJ0HD426o16Wv^`h z{`$_RQ|Ed5AMK_HxZCe(1`+G6c$JFHB$J(UqF!QTuTN36$oe)1xV*&XFFj&^?S(P> zR!p63iukHH48-wTqwVBE`Feg{G-ELK9jVLN0i{BA3-ym!dQD3z3qn}f=El)Y31=Zl&ZjW!A!(M4m6of8` zQfG4zb*kg(fAo$kR26O>CyGcndau8?9o3r3CWOwAj1)qxIO*SvPZz(+;QgNa;MPnS zt1(VG$G=hS&Kalj*YziusZp&!w`hKo^?Fs+nzgt4{UQ|QgLi-b;V~!{{f7mZA6cOd z3nK=_Jd3tmT>T@v5|}`W5-ltzFI(LI=|PNoNyqu&2K91QTUfJ|3-!#g(9d(R$jBoE ztmx^>LAAJGAtqzq`5?~{;+eyil!Q@fC@O7p{%)yOpo{YrbN>_bdpBaTiqi{y2GD~F zXGHZzv?F76USBc&mT`RV+{1F)EX<=eBsIz*60(r)6D?Hs;+_sLAFrHAZB71y$JZDs z%-T<{qdhnFd4PG=iLj@ru)a6f!{9%p;xB5qMJdPe#M$>NvNB4>w70|q0{OMG8TOHI zlZG(5uP@D$U+i5_E@6PKP2Uv^cdFSD2( z^S;`WB=NjH>U*(dosBYCAin{Wbw)Rp8N^M1qr#@@FDIH@N8E&`4yT)^9uSbnN zmuPPJ_xY^CyO%G}&WCf#=!EIsI>P>yehu^FrLtq) zkq6I%Q8EXrm-lOKW*j?8!=YZCTgSw}16_?w+{$GRT}1BV0b2M-Pr4o?!P@PQvoD%$ zB3Hh+J`uI@g|?ICyA(74U1)h!mb;i^)MyC{rulO|U?%fzXm+(tkq3ml1%LtHWx~r{ zs`NAPhrMsB&skEVdci3)I9DG!r`V7@UsJKt+=mF-Zt`b~upK84l*krZ<|)cl#YU z;C7_8uWX$2=V@Tu3=q>vNPc!nS%oxNtB8Na+92E}s z=vb>tYYdKlDEiYnXWem{lMW7nrB;i5@ASJT-u7;lt8nPZ+ zbat+NS*=+!^QKNS$BXLeJ%+A<$=u$X+%9;t#{JIYrJKL3)@v-Kr0WCY`KwgYD#hsI zSpH3EWyRYdGSgGnH|vR4{7~+M6pxz9 z)1LEi@p@*L^=9Xhe#Yj#`@b|Nc}`zdwdSdK;pf1(E^k7r}fQE8P4&)(L5booJk>d z^TXBUegQEvyS4Ax;p;b7d8TbaEufpUEt&jj904^G+W%TqMw`j)iob|NVtg!3Kh+LO zV9M$TFqcxn4eq&H%fQ)FP1Ntt8V0jihaJ+9T@jee`^SJRg-!v>>D>LY>WPDOIFkOEWOq;SRx2AsuHn7rM*kS|cou zGP_Q1?(f$rqra~=2Q_n;zGKE7?_E|;wYz8Grg$>UeETBiQG#JutgpzbBc+CSP~OA0 z-Ake6z8QwzO$9i0=P53m?RHBS+z(XEGf;x0*r#sGf=Q>5ew+uOX71_zQe&^!`Qg9R zKEkBmGlkGio_@{*{;;w+Z>JfYD(wK@?2VLY>Q$F)Hn4t44$IKX zq!j#p{Y%eDXFoY+7Q6a?X??Do96zTA9{2}(6GkIR%ghy@L7sqv=KQLq;GF;CP=X#KBN`xb{tYOE;+tvTE`I z(}jDFf9l2Z_cy+`V7u4l)8Xx_x`+ptqk~v?chwt*1 z0^1G`jc&|=;H>ZxbRdM2Ak8`+r4dyKq>{dVt^tAmutT?XUG&z(pZ>o$cNx9CEEIO7yi+b*``q5ee9My3JV)(w{KAFL_QFud8uz zn52$%Y@9J!|62ERAt>~`bKnvsjL0Hm7jZoDdQkgK(xfA~(RXI+6zSudtL?0&KSxLz z@2V}H{ok#NM7h=XW{dH^ZH={!?Iqwju9~6K$E|Bml9kBJ<%&G)y=3CIn@MxzCZd7+ z4d2f$eg0E>e^F3-uvU$MY*>sqx9JrsYZi@j>zh@Cc@44N&$?}|n)S|0ggEET>EOg> z)P+|SZ~@MXl|7#kUowywf2>&z$XqP?k;|`kt=B6_HA%`zKk|2!q=Uwb5Pd|1VWeBd zD;q(ri534Rj$%@7G#qKn0-4v^imL)2g_?hK;CqazKM{A`=rJ^|Dg;@xsgOY_u-ZLq z+CS`mX2mg&L4|@a>Db@FNf+f!rbMTolO)SeMh)qSC3BDm-Q+mPebbuz&Q)fMaY=~1 z+99WM=_{zMhU;OGa8M6#k2&);e&d7KVL}F3S&H=ecvn5C^s49bW4xg^pZ5MQ!qJMc zGGmAz+VwJVP9;?nzh)r`-7B2MqFu;>arF<@cqU$NO~m6vG~lfWxI;!st)AFw1a3Yb zGIUagQaV0qaF>B9-uvksbOWB&@_8`7jBR4(XxPtS3tFw+)rI1e>5l4K-oo2kf5zMg zVX3l>eBeMBh4f=OoO4C)$Y34_w}&5>b;${H{I(=q*5P9A;=%ZXD(VND=AbqHR{x99 z{L^Xp`HFDIcKI`fl@Z=98Y-K5bDcj8?BylkAJ>dPK4t*hi*3IUKqW&&F@};0LZHu{HW!2#_^6y%Idv zuhK?BhQpEC_pGJo8dFV}O(g9vtnsRyRdO{a?h3+Tx->&k|D*$Uod?mue`9&fZDsW-r4{Q_d`-!!S(p z$YpRX5F`#PQ#B6OEvm{Jn0gbJ9(vvO6D+-k7+`~A7Ue_`Vt!-!#?I%&;1OK<63FrN z@$Q(*Bwts@;rWx7lB-T;<6NNg#h+VVhH%ddQM)}ZpoR>`pO#(Sw{5F;8!}#RVxEzk z$z5bN^XI^l##^x3ZJpr*4B{ma(P6Riqs+)+lnGxvE|m)sI79u#-W-k*^PScRE@Ji? zs2ty49hr%8Bjmz)HJ1k1S8Xz)B*T7(2QA)#Xy`Z9c`&fCj^23Y2Se`im zqFQYpV`Or8-8&Mo>a4+W08nHB0edrR;pprP;Khx!{85v?)|ak!RN3rpAvb zYlRErQTU8Qg53eSBffPg%qf?Go!E(67C#R9y3!oNhr2O7Jm8}V@HxH90I~4RN9Z(X zF@UiU7PsUAB->QBZRGQNzm6W43PB^dPXd&citnR;8^ zF)pf43BUJu@7Z~Lws`oOF#a5Xs&ehbe0OX%J$6Lzuf-&UZ|zp^r@Fj5%vWJzC+~El z9gjfmgRr?@doXLe#?~e3C@Jl5w1%G}EtG{i3`ax|{pb%Aq4vA}t7D|kZTcHW#{$L~ zVx+ITWDklS5fof~Li%G&u76d&BS89nE=J=>H_OlQDi6rIzj&FBgMfbTJWp{BMi^Fl5R<) za!1)~vDKmL>C?xv&)vfe1U1EU;gFMm@#BRfWtH})qG3C0VwoHq1!MVS?-3&)bFhhCujvkuq?LHUfBy=jQ zgya>C7EYnQB4C$H$0CP_ZM@YW6z1#z;iU82{(EzO48Wb)OkA;q(pU&zLCwP|K=#t( zG=Q1fRb?_1p>{HNHs#J=;vmn)+=EZ&!W9VhZHlC2Y|;t%#T^7R-=bc?1)KT+JXtq3 zE*?S435BY2H#ANZr6Mtm(SM~Vxr=JCxFLTm*{^ZNuQ38;fv_-Dww`klhfI?+)6)7imSMNBAdNzjo%G50$|D252y+^4t+zmT&J@2JSiCiGu^`flKb!5&B(h zKY{NKJ^84^6jR3;Zj%m*+hBFt8Tp_4JZ1i}jnlT;mP-KuSR$yu= zByZWOvR%KZ%Y7YzO0Y5DSN6%?`}wsi#?f)_`kY-ND%-(%OvoX{=BRKytlrKp5r)Z8 zRQ1l@auwLe`RbaX+QlcC5##2jrFK0`9j z;i&5m0ur>p+U_Eydh%g|itZ`P?_&QtMqJ`)2E;TWd6Ayn96Ec86Ck(2TgqHv239?>nEnm$sQ0v3dQ`L&b z-{>G}6v&NuPi0Lbplg9_PPO@rFze0v!MPX^*_Ccg_~6G;yY;dWNI_OpID7Sx?*Jne zFYEZ5*=mw`{NZF#Lv{J+jt3RS!i<+D>h7cX-`g=d5tdtGF}-h7?#6@L)W8hC{RbHF z>Vx3iST&9sZbX?>4_(Qd?Y7e|o9h}>E<$Yj!@*{D)xJg4?=`2e7NY{~Am` z&t>jLi+BCGivgC<^`*y$U(dCZw0JY3?$KL*J0LKKL_;QLc}~wYHZ|7Ew32@oS{;YJ zbBy zj0^0K0pi8G@woRA+sn@%4aedz@^Lq!d7gn_>kDy;tY-lO2L~uA(I8P-qJ7r5AXYH@ zWIWA_^FpWsVy|>hhYyGFKVW*ij;JHXkI`YId{DHfQp@_PZOLg36{XderAU1W6b>5m zT3t5AQp}4UX%fsA2J_EsH+vj?lsu%8tOIpDO2J>Jpr~Pu6v#&bkm1>(YnQnP`~zo* z7sGty_t9gOkk1)vwjOR#mrx%XR7yPC5?4EmQuPIY<(;E=HKp2Os zbb76>d^F=#pj1$F+w&JN@EO9wCV`q5+Gy=b!>fS-+zqo2mVaHdx`GOQzb-eo3R2<{ zI|=-t+o}Cd&Tp@n-0*m~r~On{$FYICDc!+zaaUFNs@n-66qUAc9R+B39sa|(vZ(L3 z8;TW#}N!@=M#!vy?6Hf1#q+Xv=Yvz8X^WvykQMN^L;&c z3wHFUL#Y4oLs}+&pm?#km3Se63$jYV2|&lJE>tCtj9j$*EaFl2bTDp7y?4akH40)* zX)dD#0oP&q_Gh{%oeEPg*h$nlxMpD7yA{e0?NzY7hVjzOw}Dc(!B16{cp6o;{hG|K zchZrN6mrIlXlKF8996Z(oAD;N)N0fElyU4GPN;+C!hyEd1bQpJV($cITi;vYQn^I= zTF%h=VD7?sml^eoqt~vF7yW;T4Z9Gnu_3NouO`pP>y6DsT^$A4XvSlZRb32fj(6_T z2w*od>J{5Pfia93T5a2(%t|C}X`8GC+s9vaEmWS{HjfDzD{72PeM^b0>;^#E%ZAsr zY9>`OGpguz)aH_9G&Bp!<{6jD8)KdVB(F<{iA4ke`M-9jqV%0)cFiZ?R)6PcSo8Kj z<$mkSn~itYRcrjHt9iP6bE|vek86Rv1j|&BbCF(bSg{KjP+kIBBMyYM z&D-q~JpZ0q#o`n>1|~dtjx0bSP6QYl)8GJry#(nP?#|Jm=3f9tQ~2t#6|;Jtv~bg_ z2T$54=uB7Hyr&w_mSc=|x(hUmHGDO4OW%_p{{bpu6@mmH!3BbNXYD(Dcz$7Bu=%2L9`_wy`t&skn3WRP^qp0LsX}z|KjO~ z^Isy)7Q06>QlfQW2JoBww_-tSUS1MzW565Z2UvX(Ohy0w47JmAPW8P=*dVGxy2r?J zhQUeJuh^{cx1;J>4+$pNpvYoVi#ROdkC>7l)EBR*FEj{BXSWijcDhQ0voliXo^4^$ zr3MpA(rJ+j)a$BU+C6bF$O7O@@5aoj;_QHMdngcwox)7ebxQ>(13#k45y&tTQK}aNko{cI0lIs>gWqtepvWn)EzStck_%`G?oc6(GX9C zn+XJpl+j+e^a2Ocu9jekI`_ldujlpyK_dbkvstvLY&;+&EZ^;<&1|HIx}?Mt+(EZ3%1 zaiXXp?+DOIaDVsT`+Rg*D%F@VyCK|sH$P_@pj6CaH={3;mR?q!bOJa(*Vr=X*b#Hh&fF5F8oU*BPXj`U=3IC3B<5AQbjfAVj+w{t95~y5e`t{TcKr==lDQtWSJn2ty|ZEs^d?gg$0!ftq>Gu*(HHN!rDPZ zzoqI>F!AyiJFrkbiRF4H0^u<dCMk%i%q|$_ zC_N4RwWKrEnR^7-lN!>?R%KQ1cKT1rbg=PPd{43@I+@}hv7~6RV?;GUYp{6PLOj(U znLA#XqSiPEy9#!&WXD9_Dg7X3(9IRNJqq4Rhsj|i>}quo?FIPL@|KW5lmfXP0YSa* ze#I`a!>#bxyMiy0`>pF;fK=mKVW6vZDKx zCXsD8grObceX*@~gAqAeFREX01H8XOn0Ig;Po_wjGT@mW^9D#>*34bp$W?$EC>mMs z1qc2j2Dk{zLA;O~Ey$m1^~4ETHc-CJ$a8wyc6r=8?p&Ez3;??O`GRi#0H7oE$N=2$ z7N0l@nI@@#o`X$AI}l?q>L)1&q^?XK0t@Qz4ZIkMg2KB;pkDH%H$w`o+zwRfQc!Ft zUs}4+PEASQoy(Ds=a;f~JTa32h1W}RCmfoie*)A15tRQz)Ez~@75Jd*Y0z-**^B>+ z1xQ?|ZYtXy9uYJZNp=5l+hPuP_Es)ffoz6YDy`AnlJ|n6M5ey_EnPnr&~! zdyI|aNEN>C1u?=WxF`Xb%Qa`->nFXFCHgG3;6XwhRHb2t>(_EJ*KI6V{kM|TMja#KKT2`c4|KK0}^*$On zv|UwULaNkCf_hnXZOxUO%^)5@U}Vkw1>$ISHzY7$@pC&&34uKuUsu_YWYYL?fn z?_(I|KuLj&9cmL5LT!Q$yX)V_dJ-XdkSA~K;L*obVwP5lxbN&&syOO!A(Lp=*J=(= zfgA=W5-vOJKKlOnuALyy#fO&bZ*#RxRf#uTq+I)qMBbi6V%NrJ39J54-G3V+A{A5yhrWDq1&k3jIG5{;H|6^wD$&(hZ=Jo!rr}7-6={72;^z15okHZ&y z81`hx-{{5Bat$Bj1%h>KYHZd!wm8Y|G$iJ{-YD{d-ofE$kVe49jBuYbDBoI2_T|!t zyahFS32L`&#l>Kd=qa)s9h(|jj29F z(QsDeo_5W`^0)KXNon2${@t|-4k5@RW^-HI?CYD48fx1V?N$;xtz%+SOgKH4}-?WBE= z2VQVp8wS;$F%-cdv%Af;c9UgWar!nbJLYKz3K zUzC2>74M;}8+J7yXzZPYlak3g^22t;@^~GcuWfDTWHce^(>!g$-LFCT2Kl&J2->pW zGK(Rxc#n+rvwWq4)t|N89k6f#J>WgBoH@r{V*cvaC>2~01h3|!F3MhvFYq)~E))W! zHu-LPiQHRG#+ki#*Fr}tO4!OrP*#{%yyPv|&APt)$FJW7G}S6+WM9cvTI)^0aibFG z8bOXK?~!>_;$=LZ1rmG;_{}l9EFpid%tH6hHchrZ0_7Uu_6;dD3APmflzuiv1qS84 zSiFY9#TepVdj9D6!XLrH2cQv2Zw-xGrhvsk^_f{Hxi5YXEsp<&qs;~e`)p%{mY#ax zPN7-?74%0^TRbrK5i7Ng@wgt> z_52R_zXLf0plv5~Kf|C*k>S}tKk{vt0^{d1vMxO?=r1T^1g>EEvIs#8h|13rylt6Uv+k;YoggRmqbJzi1V}q97kUH zNKcrX5^}A{h)f03SZ{+313hu; zD1RtG1IN!SHm962pbXSa}&d0lhm$x>%U2oDGl?i*mS8g6ozQ@Flnrh{`+xk~Wi zXbN?XxxhP~5aDQQR@fUHcz0(Q>PcT#2?FLRaHc{o6VQ6MPddS+BEB$52#j-w6yNlu zF6$6L_aG$p^oF{e-=n#jOTdn+yQ;6PCp9m=x&-o5ca#h-79by+Y*XcjfgOFE_w!#L ze@Gnz;NojD|LQ->}Q;Ab~H(%E~q5U>jGhOr*-!XyiO;c0{biNTn@Wf0>w* zwb`!%`Z3tMDHEMMCRq!%#XvpYe}6dahA zJlf70S6fg@(Z@=p`}g~kz||EGFiiQ;LY}_&3jiLgk1gTlO#5xdBq*eMj?HMVhcsklu5An{BnBQfZpDo6Z z8)g?YEQdS+6n15hxer`^LXVE}g(}Ns1|R!nKnwc(um$o=LlJZNeQa3=8hb3df<}(sVNEY=4!xTjQQ!Fbq!9 zPu74~s|K$gTo^gfic}25^+5(&GSv5V&6*|(A1=Du{g8{wl?(is8hT5(Yk*W0N@orL z*9ylOWdn5Z6^c>QSn3#} z^Jn1FI6PyyWEkuCXQ zo!jBr_HgzkB#fhAMGxpEut@0Y(k^9;R?pSo!)vzU;0mw0LlOCA zSug6(&=43&}#x#ZnFH0xoD@n5Ao0m$T z&hFPrjLdrc_Ze2%`_8er!QRPxr2V)49WXw>rh>&?Qaz&);WF5=uh~T{v(BFo9a(w) zB@8DB!N=4Lj>@|*FC>5xQx6vz@VoK*JFyO>{gUe-?DW^q4AWjc3BdYYB`sjc(HZal zH3W7Ov@FO$J|%NvC(c2Bms`OXmqVa#>%BZ4ku1R513D!zze~;p2H23%_k2xFTvpq` z28ex?geXex`H#D-x99ii_eI3{k{P(>z1?;xc z3@Kp~%2|_5iqahIL(0Nuh+<4Q6XDnA?fRU0>Mqo@0ownJv^c?^#&bPmLUc;nGdas9< z{&1^Ue!~zg%~^;RxKm*0FY1u6iKkaKu9OIa3mfK(gf}+BK?2zYH6nuv*PMY=_H$n< z*aeH-H_t5=NKfO_ReCjCwVCtDuA-_4sT_nh;XOq#$ma21 zFkrg9hIZ^cKPZCcErn#00Fu~w!}DGe5^#+P0&q@z5E8!`;M*mP_+%OT83F}LAn7ad z3}3*YAWdpf|4d96?7CI#XPZRCPXlCfbG?YMaX?7N}{`C^ayJv6DL4ECMv&DMuKS)nf$s>2RfUj9CJG&KfFCKbK* zKDAu3Z6Mvw-Ixb`AiL}7@J~Xw|3?BT+Uk;tyQWQ3)Q~jFC233QTK?hVyjozK?0}pP zUk|o`H>=VSq)-7fFh#s4*>{=uHk^#a@|8f_w5+$ktf?uW))CE*tsp}&$0>)M zo73^q*)QXz=G-hIM`2k+m5aIzr_NvBHz3*gb=vhttpFY1*ifDZ<%h0llamPC z8^2a)1TDzwc1kpvz^%S|S9kFHxUWkb9Kwh93)`J8=FXDxBfgZgXp@sTk)#xqSQ59+ zj8gix+O^#VZwL66AmWqR_#AAGju-luKKylqP{hriaDLC28`Vrk3fh@r@L__ugM=>8 zhbWAC2N@{BW4(f11J|6yiPuuu1K_{37)qq+5>YDR00fu$=YS$@xNa6V1@zO#!M9G% zerX?>Zn6khk$?buY}4jF2e?%N=u1@LHU|R$AKml9&7|o(-LC>(J${|^UN7F9`4i21 zSBqXN4R?dJ^^AGj=st+dXZP+rlZpszEc;^wHD^9w1_h0HC(8%`z{}EHNaXIZMRn}4 z2~f`ETQ+(pIxwDzZM!{Dmg&*?;dEx-wc6XydtmgY6tW+$BzKuWn>NWrGU=e-EHu-< zDc<4#5ok!!lB>Pfunltpi41<4TWzjgtUqueZHs@x9+34HW6;OO+;8_6#0%x znc|0twlfj`_&2ld(?PE|^#pN1h(Fbp%G3}9lQ>3c1A0@2%B9~2o|rVAKt{Nu&{ss7 z_*W5tG^(~W|C*d*K#$%y(!7ZyE40k%1DE(qfyf&x@5jJcu&gYR{qq1eNfG!{LbLF~ zF}NA=Qd|Jft@x(2zEz)8PD`K$*Ua>;Ai)d`5t!}owm85KzA1-ze9MVk0lzrVQbLeH z&EJgH4HsK!14vH@@kxI?4FbfdUEl&iP9P~AJa)xF#46C&vws8k3NQ6BVN@+%9aDWW z7xL=8~AeAN~Uqy9nh-l)V}YLlKMgbK}NizLpu&+o4?(ac{QSp-8qZ+qywaq zr_EcH+t(eAc9U-CY0Mei4piU>e|NZi(rm2t=KH1(=46U{qhWt<+OJG8N)f^(I=g)J zQ<+uy4eo<5O7a=cYv=z*o!_zy2Tq@8*!Enh$-A$M0~`j{mR4^mCN;zE^-r%whgvm8 zsL3%~TJB$6FshV;k{_4QkFm1ADYf6;lBxExa{;^X9AssEiqRwZ+27>lm3kzFKH2!b zkgcGNzYQuv0l084WZ49VioivYZQSc*fCvi9=9DCaRG4-#3Z6*Q+6V;Rg$xX0G5t~f z=fuM3lfHous^~7SEj8TwkG124g)plx_dZ07BFI3EhPKe(q*b@I+=8 zCqqC&071>5yY5FX{^P@~Y$y4hN1%_L0{mBtFT+4dh}jcwM^WZ|ASj#hf0BBi0^cC58#ehEa{CQ?Ss3BL9Rl>%-%*E2IS=fsH|9Ru* zzg50-(x?2?zG=0Ejg3AX+vko`JVBqlVrCuKm-qXLyM6MviA4B^gE`B7l}OOHX^G?B zOD9`oA9gz4&qATa!S3(_lfSq)H}m-5vS6 z9(S29v|GCLt2WlNDasFQUD~`8h(YCt@}v6H!36W$@iWEk+fKIEqR2?~;Y=hY@rEEd*)=Bdx^03^tg=m1kiB`NdxgruOyc^9cKCWf_X>$3&i z^=-W42yFk-JZj%pRd%mBM+L;Nb4cf>d1VnHA#EO-7V*AU#JdXkv;LBb3l(!+2VQTU z{wgT_!}6|W{qZabiuwBmh%FUiCeH%-kz`UzPRu+XfNog;zlp5p#PUfAeGE|~%vr(7 z>jO}w=VJ3={W0tSnmWt!>!f=Bv_Gl%`GLzIzkIADCM?}ApB%FMw#350I$#5Er*3+*?rs$i%AzwDxKC$+yf$azY zMpsy(eOz=#yJ{&FFjj)voo)56iw$aNv6+a2(8{paJ}Zq>TzDBjuow2L4peUKr^tc7 zpUIk#`I~<${UNM~3WB^wddqA#g%EaE@>Ujr!K{!qA%0R?zCXT_h&C&ufa?0+9M}d- zE`bzm}!U+TSr5W9`G+F(Tpym_FT9aUd`ox?p;GWYb0CXxTE`NJIDvotjl^yfd zQWfNJ&4OUS+5uO2u>b1)e(aMZxBr~Qe;c^uSA?$D4D2p;Oicbr?ET$Y)mUD6a)0)B z()Yoq|H>&TSCT_GrZg!k&o>RcS)k(9mONNB(LwpM9ri*FC???|m&Oo>63qSxYRbfI z(Y#y!d;B39us^4dU!7=r)Qe7m3WgHLYdUV^@|waT|AoPdU2H{3WuBr&sX#>3-n8qC z4ZwD15C27Pnx|V(86Qa;_NwgPM8{FOPn3BFT!H(y8 zyiKpl9|IF?eM-T#(E8^^;>~Zyy}2y9D>{QFdXWi1f?W(Z1ri`C?iJNoYnD>or>YZQ zd7BTFcA2=mziqtUJ5=#_v2gr||3Oyv$CCpkkI>OQZ5#f+ss8!9J4)7D*+7RD;5@7^ zz;Gyt#$-#{E57S;@!yHR2HuC$qJOj`!x? zzUr4JmBB2%se$>LH+U*HrSQlT!WAE@-xs)b#2x%ykoCnqk87_Tg#1)zXED8eclvnWYLLMsS&rW9lD-P595BXNVITepfz#rio90r@{5fySd7AR$@#=oX zpr>@=A@%kiol|(7)d*Fi`|n{N3GzVm){#W+sfFLb3V~WcQmfFb9#zg$dyy-4B?`}v zbwx463dre`(q`YFK53e`ArVTPiS*X-ZqMZE?A713LAT&g`)4w^f||urv>wIKeLiRR z)Y5qN1T&IRk|9YSVq;D(CukNefP|RJ zewd5b4>V{$Fj_Cl&t=9_H{0S|EEFFDSqkC7yaX1=s#k`wtzhG@_BK?I`<$tJO zkI9f=9Rz;KW@I7;3JC)F4OoL~2B&5p=`8X85rPa#R?fCD!VKs!r1`}5eGg$@Qv^wq z8>xxSN2{Ha6Y1hZ$N7?CidLgFf}cd;ff$0T5@=ZguA{mr-L<8$<52at)gsqbG%;-* z5!8scm%`d!xV>qdUjwZmThJAs-(lspht>(7MwgDUInK2ie*W$Hoz*tiG#shP7Zjp3 z*3Ch4G(5`C3Km#NNESkpG(Ti+{-Tkv$AN%VT_`&q?TGCNkBN@FDrObvgnb^yf&h<# zK%V14w@bExK@yz$b(b4|mmF(9H>(*KvA&(8wCyL^n?o8QX1r}*F(fPnv}$zQ&M`C* z?wJ17qdvs58YKmER+)_QOZa_9XczOB{N}m!=K}Fid z2Lf{_u#3wnlu*f@n)`N^&9|C%I=V!}MwhfoGHEPV=@GOKm@#-@c#3c5_L~0OTcMgw zV_iDg zLh{9b(v-I$TxrQtVW#baK4D^Q`6Qj$-l!6|-}uUNFB`sm3+@Qx1CO$*M4ghs<<4+K z%~KwMv0paq!OiOyFLAhgMlL;bV02tF5^kra_izL$L#!}^4~|$<<=vc#5MH~Tm6n(Z z0x?j!z54H+w?>~(h?usqMUQzSKZ{<6Z5ZUtK_Pao$kk|jvfCB7p{VDmAkmvkpf?*+ zQ(kAf0Z88zU$OWZ#%i;F>7IRER~r}&FPCEg8#bZ>M}zvW+W1?eBOJnsAD{n#M9_|q zCSR4|oTLV|MPs0O866aqVS$W*66hW6!T**}K8^Zx1`!i;^@(qSrb8QLRTT;j%Vfjl z73IgzZb0jwbAsx5(E=nN!9&4==F z+(#{if&$~uZ+&l#!RZSi2^@ZVi1e3>xK*-X1Su)_M|EmiCg6-fLe6Za3*GW57 zvvbI%0L8MY9|o6lyqf*>-%dHImrr8}|83lJ=TUD!!e_9KFsK_enQ48z*9W!;`rk&76z*SHA?BH4bRz!k)5k=_6@%oLHPRe?&ws%IqA}fNa#^WajFqM zJy+OySo4k?$9#8BX<6B|J~?7pr3hUjj%J`*gz5m^_q_E6VBh z;zsm$HVN<=ZxI{c{TtIzjD0&=y=xzAVf@-gXaO}WA%FUJ{kc7te7P51?$bI}VEXGV zEiP{ZLXdC`=SP{L7_qLY@rmmEO73l56mP;F*4_`}1a25X z-}VdGkqa%_`;!en4l_HUitEPtWTK#kHSv3hEV-W}T;o3s&hZlhn!P&IMj#8_GeLu^ zt1BaSXXhKpg6#cfOqq{xaRetypgiO7Y@8@1H04aTL=AgGGgCe;X5l!V+k6d>+#C z$c8`3S!}AGmjdwi`RPKaGMV z)kEW+gUxUq*h=cT*M@4X<3A+p`}g~LXoI#YK_1-ZiUXN=H$0UNx5NNJZkx^7^*sLZ9eiM{LWU!aOi4SVe!t&tFd!+efxt8rle4z- zcI}JfzB&qH;*eh%7&^-#K+&4LQwRCe32jkAggRI1-9nZEwoOWAuHkOa)hQbY@U3T+z8|IjuJCibcq}f$X&3w}OyxGh zh%?k{|5fX-s(bw-1btpR%vKw|C!OeWD*LiRU7RQDjfL>`uS)-Fe|ihLJy5YBAj1G0J(rriHh| zS;0Y%Ie&{F<{!tOZ3F&L5#6*{E3Iv}v8bzw^e-UVmk3Oo}bs;}2S=6!U4IFWQxA$I9E8DhfMgoF%KaRZ@JAbfl&z zLG!UM>16HaD9*^ofj*)|v-bBteI`F`>2C~HIFPo}Vt47neU>|!z!odznJcR>dj>E4 za^KBl*~a{)$K_i|lNSt$-a^3moj2xc8)6{K=UNojORLpSbqKzunWz8tmj$2RXRT#A zO_e*L>Gv@2Q(udiqS=991g$FhHq)m}vp|^mx=$@I2{Yq1nAbTuxTFGk#&rdsoe3bC zFgax|BK{sY96L9kwFY1@X~ZB%vyvJiX=`!%WWQN zfO}wEm)m1{!k`prBx-d0L{ClLNo%p$WDSCEK+A={AFOSBuuj6$qvXKt+nQv>L>KAf zsQqgHtSNeK>ecDy-)1*=-vyTawduHl)St~{W@0!=2&astU(cXLse*s1-9J;q4t?mG zmUB#}!`;VWS)ZMDblr!gQbCr~asG;GgnjV9pSLIZ7<9|XB*CigEe~}%k3-KUm-isXlQRe%s0S9|+g||DOt`vcD@yW)%K7oXu-X%O&~pZ0f`)U;^$|Bs%n28yhl*jiH?Da} zns-NlVIz~or-Fbn{%E>{`32zuDmut72ok@iQstT5@h{Zo8Y)&B~PE6nQLxB~9-PM$L5F2OPvA&i08aW!)6@Vx2+Zm_KzHyCkxe5h>GVij3- z){=Jeh*sY|XX9sD1)5CUiL|_VbqqTAxc=in`@dP>B!o%-l9i`!Ac7Jq_k{G|14TW# za47!t$`h@yY&LG7r_MeoB9x2O;nEN*prYaY?KbZq zc&pur{&{kaoKh_NWTlXBc&PKsS0^`;B(&Bvvv=~Czs=8g*M^VIi6TDku>Y>T0(csHp zD=M#eRjRVl^FceDeY}O!%h_ymM_L$2=i$pA=uy7aW4Bx`j8sc4Y>@_v(w&2g;~A6F z*~p+`Bcr|d4WW1Hn||i)-16#9$ErJ(D0tTB42P?qiXY4EOpn~@yVHMX;7*(-50WSi zYBmjTpBEx4h{oXTLnH`DICRrQC|R?N#}qzr#uUO#?^ib6DsKuH4kFoI=zZ!R%-4F= zdNq4>dkuOw`rdyuMj(KDwUN&YrGt~S4>3aaHHZxBz>&Rn{$odXOmv}9f^-R$-6D)I zCm>vFx*IabtFBO%onM34e!la4hvPC>R?IU^ADdqtf!-_y5ulU0{q@j8oGgSYn$r@5 z{c$AIFaqCSh-FAwy{Vu}QWUp5I_YaoSb4X>|8HCK1THSw)snot+a~y_d!}~4-Z%^1 zYVv6dB>PGmTF$R?j5F=rO_Y>Nvdk1dT&44+CCYx95V0K(xpMbW_CV=lo9>UzMoyLD zLv{o>jPh``Jdg|5AVS{i3%WspC%;)EFEgAWZAd#eWVPf2G%U^Xo8GCv9{JCG>w}tK zC*Oxr(~IgLF!bh>cUrm=ZUXBoGUOCrN=5O(=_(^m3m+mqa%*NhR884i=IGqV`S6$H z@1Zo6C=Ind!y*D?TqU1jTJ^}6unnF+DilW8tPum30>w&x%P8Lbe&E;4Kb7YX-FGeK zFYN^V5evolLUBtxR|@S?BDJ6onyOF*0=%_;R$vOpO(<)Tcl=sh&-HA)($7qs3f-F< z4+%x5=iqw@uSa6Pg>`1z=^>b<^HwO4Pp&?;IfNAe8!#{A)Xt5TBC0!20&-H@z$e^8 z=0pC6?_N8V|6b!PJ5bc;ETeZ3g!9F-nDs4wTF(VuK-Bw}qL^dIL<5B}ZV9il=1LYr zM(GyEPWT*X>EibNOqeeV;AGwpE~(xr>NOCAbDS%Q|1Yl=K7`mN0TeuxcqJh+J3%D; zY*BnZQmVEOm1lYJ=CPl#}@PJsM*8xM-~Mi2};#vM_52rN7(F3@f*3-OoGx+v#n zJj-HI$taBmPbz`-$UxZ97y`3DOYp#rWtXm=t7E`rpY)0jY>E=6M<%WY1h(S*RgYl= z!dL>u&%-P+AQHAh85>HoS|Bj)t?%39NDJU7rgz<7PB+U9t7;?WRuQW)fl z0PVMq$;=fPW!~d5umk(C6^fnXewU9lrkiDwu3^AOr1tI_(2MY+h&51TIPUg@qGynA zKLf@KEXn1fP`m+z5{uhV@kD+gIukTgVJJxCL1f6cbM2`V%q*VpF2lWRalhYo{pYrl zNt&CfgV6Ld=nxM5sL@#vK;o609Nn^;Wc({YWh$<$A(nmt96Rp&5iIyd8vWx_p+aa0 zG=jH;e*%8+kD5;u_Lp%Ru_c2e%#eSDc6F>fI)DJo`R7+vp=srIyiz2v^_z;c-E?#6X6HiwpOd_Im)xSH+dNCr{J zzWNqVQNT>(BK@Q0eFiS{g{fCE_B(>9JJ;nv6yNxZMQx|9rAX)8h;ROC7Q^?7l z#nnODE)azfIWsMzqL5-Q07Yr5;ih}k+~{4e{IW=Ag1xrb?W4q8n0~pkanjT)B?_%~ zFB22`3BS}(L=CJ-q%P3TKNUF%*_hXjv~t(Q$kvtJ(Fw&inB&lgJyTZQYiIF7)HUTR z9q`e^O$-vxKY`d^<$sPhr0~Rq5sGs09XK76tbuuo{Fzub(-HoR9u%DEeVMJ@Gj*eb z9G>8k=5z&(djpom9`}GZ6#@Nt$`;;vbjMzwNY{P7UqM&vyWe!Z!jF74$v(@jm(^W$ z`J#6Jnrj|}$Whyyv7vY_zy^qWWA5hCFoK_DnxBYzG(`k%&XPRzs;tI{1*tLLv?*L3 zoTL8nu_!vUNZ~-B5 z6otGo;pTLCpWr%4!!CN>7@}0_f&ZV(a{VcTLs%+<8iBDU1EvQyNr|M%X;+^NN8;b} zqobCpzfjoGK^0tu&^nOKR9Ol;)q6r}q$O4Zg&$slj&g(*bT8Kma-u9Rm4A_#X8(X> zQX@Rt4DC|Cg8|(M9G9Elz;Cf}bn-WpVWA*c!Ie=cP8SBcIOkwRjZ-D~@+0vkXhGO> z1oX@Pm7S=7SIMpKKFxa;h7cwc0GdLTDY|N{n^uXDS#06;^S29tO4BVpi<7~r+y;je zo%$}o%Bw{Fj9!j&#L+FrWiYRbn5&|M_FT*d4HU5riw?$uq7uJ=-`oqwXUg~FcICcX ztJ)iN+sGm}(GZ2OU~{G7R(naS!c!!B>m%1c@)Nr>2%A;=6_pLMHJ%sAh$^Y@Ryf$F z!T*vpb)h&2LyMLR)+2Bjt(D4}wWOe}dC+^|+Okj;_J0i@)#{M(1H3rBH;_ zMA63`sR9jtDDv!U8S@NL%?brjGvZII3H$|rCX~z{$4H|G>*}1n=$)&CEQuS=w0er$ zCWr#(M$jdNu_Q*w{{vK|BxC@if~O`9AM>^jSjh|(@nMkg)}NP2M#=+=4x5F?04u_j z$wsEaQy;gF;elAZlJC*1dCIE2Yq4}G67tbvg=>++e^t2;lZOn@6?Bxb+AP+O=e290 zZgOz$@G@T?^fdrLjk_^5bOixRzJVNK?h@9NbweQwk_K`*+;8oMi#b-G(a6BUap>ur z81gJFHNyQ+b(y4GfI?x^Wg#f4Gp|YEDfFxG0t)zaNLu(p(fte4R<@UdT3Z2D{dG37 zZ+!SG?QN*!{+h=;&_ml~B5yV}?lrf-#N1$2^5yq0biC)+MnUX1P$5qc4cK9~J77wL zg98=Kto64rjs1{t$_kDwShY!&1*H@EK?XH}9RRuyz|ok3vtA03vp$O?fr4+}QG#Qo zsqKQxhaNfIhHDgBlK+lxS*Tz_5Zdn%OmKEL6@wL6|2AoH zuar= zFM~GpyWB4WEBakgNap(!*MBZj5}vQMK;PFQtj(>eIbgT?kH~HVB%Q;3#p(8Cjr+J( zo{LR$)ww$l06YmLpLOc=1B&cz9iJXd68KjcqiXl*^BVU7_)-wvp$fQNdhl$bZHRa zw@?*ZIo47Jads>&8ti{0hzj<){}&>_3F(j>16b3NjShAO_}bumTjW1G=teKTrj=}6 zqpcMcWbqmA_z9n)Yz5yZ{9lW!;{E?1NeW_hrZOeWl^WUh-=z}*9S5AB84NEn%vf6V zseU&xL0X)QU;7fy!N8=O3i?ds!(0aYyWn`n;O+W{-Z%e)o2BWOrf=uwGMT8QqwFlG ziAy%$RejF?3nhrwxT40amP!I?aY`97Jgg?I0Fsc1!t$kNg*n`%gB=^~UH%JpPZwJQ zOXb(ZK*&6%F>_UjY=K9z_uWeT|ORcCdP$eL)JI zxCWca0vSLLgLBFPX)}5Qx0EP`@LnnI@gc<*L^*N(-JU{(jyzsm2zI%|AFlsLBt-69 zzFCQqnX`0L|5j$YM~%mqQqyqxtqk~cr)8#GtVP_H^1))&yPfPbF@m71rl4s;il*}8 zn*W3NELEn3Lo4IYG;FDrW~s=zS`(T4#N~q2?cOk7pXv)z-{l_2397u>=q-XFdL+X& zODQPsa>%rpFP%4#uQmf)>)5DsWRu+Zw9%;sM(A+g!NFU00fDfz=SkNf#j zb|wHE`(Bjz+Ouv;@)L;&`VzKG3>Fj`B?iJ21!&=if#jeW1KvlW(?ESEtzWMvf z!x->+8~^GunHr9Kcxv?8pbGjROyBS@>&pjGNo)%lf@-d4J1pULSokLEDuA4<%uABC z?|P+EW=}4J?HyT6;{3xIo5dAJBlgJbqL_A{5!ZdsyG&*vxJ4w2Xvwh9UO z5p3MqhTLCeyISi>ZfBYEcsU_(@qSh7>lF(cNweTMVW9ua)27q6@Q1MZOb zN6e}zA>T}{K6V}1$5!ap8DycXC^;@gl-Om-t07d)>9^v^?`Mm7q?cvMhs5GLeg+Bc1B)Gte!P~@(EfJ z`r30(73#b^9sjZx?O^r7um;anUc(T#!ZM^?{4+Ok*n^o|9t)qjV@1weH#Of9rv;+9 z531tz9t@GAkx$p6ldrBb3?_1Vmiax>B+7W9BeH>?Byi&ruB)i7%u3>sKk+^mYKy@@ z9G8uC%jqII-dE|6ql=k%r{fq61w5@}>;?NW&+oviTq(4l;sfe#naDbc+LYh6f~=sJ zGeDEX55tG6b;!Sd&SNGN5ngYHT}wrvTn(NKHxK$M6AFzlwqB@q7xH>a-nvGepn-zu zE}C)6S`ih{rLC8|F1W61^;9ayJ%Y4}GP+%GF!rbd0lH~fXZ*^Qf}OG4dBD7o^6&;7 zuvExMk#(yPF=bN_6=oy2ZIkId9@a%gjBHzy-#t8{2k@qSnoP-pB4?{u)%+qk!~kOK zxd8c14ZEsAX^HXkuztDQBAI)>n$27gmgq?+u#}AwP#3{c&s!CiKkT?COBj}Ugaye< zV3M5$5YZAX&}zBJ+PPeCbsR!i&lNxJqYU=q_#mntQwrS_JyQ5=Axqi?Zm*XAJY=#kvgSjO%qYmsc3emva|G_c%k1 zhK}5aT~olYK=j#Ijv#nMtU9mRNu|OI)`m)xCi`Y$KL0i&4(Gi=|Lxnc>-_2^w08bk z+Pa^)EbH!bX6%Una>~Q(uP1MnH*9(UUjCKB_M@Lc9d$(tIf-P@8h6sdSL+FR1y~lq z2Svz5D8G3U6b-bzayPQ2manfm*Fa~`aYyg3TOYX%hC6ME-wOV9;>lF53fMahfQiD) zNK1l?pG6G@yJ+(VJG?sh%4l8**bIfEd`rH@06 z7}KWMnpzR^K7Q|(cJ38!>F<7S9RV(|;#fTdR!Xb_5$RrOy6c>{4)_DjXE(}I{hc0)LRDNN5rnkw0z0SX z2`1u;%7Qc`k`lpUWE|47a(XG#^~t`!IGQT%xC%_s^^R^h!N)D%UYRkGse9e>#eKg| z`HY0LKADw1wP*f$BQf1eyiS)G@&A}!Y<;c>V0!q=LNsQnDVk`g5V~1273KCAbh2Jz z69~Y>qTVm173o9Oa)+0I8n%tznHv0 z@P-Qu5;J4X)x0OHMcK3PzPzn++DAh${c9d`>!|avdsf4cr}6PxMJ7z42C|FCKwm72 zE6Q%A2}S5+!6C7T4Y0EHKVle8I|Y=a4u%M6l0)CW+>m6{aAX_n2Z4TRuT)6mKWo-`mlr0Xw|Of)H!k_wj0W*iQq>e2!Iw}EKQ|RmVR;B z^-`iKHHxm#)x*=`Or2<`!(WjexU!f61i-m2d9{p?Cvew0t4Co(kFihdpEEl-4Ve5> zH&vhT)Ou2s?D^GiG_nB}4jxgMVkKLZr;9Nuh>kt9*)L+Eb`PJ+JE7~;{wtBUkblCg zPq*$6L~C~&JdKD!TFL9^LTKXoweJiSEiPM5WR_20C4VD=v9Ul@MpwNICH1srw{}CQ zG6qYK_p1DEt7AoYCL_~o@2+XJcv84mR{{~99T-+yQ9S{wcXrdD20vL+2JC-n_l8bqg`c>* zeMbNkryuo@&3Lb(cDnQns>r7eOz4GWZSIpqe$quc)ti!c{**Ek*UO6 zc&`4Hc>_Jda1SvZA^ZC%;^dn6=#9CTjY0lB(=sMo%iWVKJ+?meVLPXi!Ct;c^W4`N zj0;3B!0;l&m#s!$lr7Pq&N;y>3&_i>xdh^7i_HeTS;u%W#cLHN6IXd~=B=}-)w_U? zSF`deue2cQH*UBN*nwPyDZF!2xf0F+;WlJ_W$iPFt4@*yuT>m0@pCBzWMpH`R9W`Y zqElaIyE{yPX;hK}?h@`t-FVd^T=5%l1ARH77Z;=Y_-SzOv<*cE@+M5ZmM;@cuQ-94 z6Drbc&sS^un|0V3gN$NVPE?;6im6j^-Mo2t>^jx#tx1004{tWqU}|gjNbfG)WpEAE z`WE@FSS`30kz@F+SC*KEBQ-6Y#|DcGpEcoKw>C*^&4#NZ#0s0EqsQ+gkGv$JP2Sbt zT|v$t*xf|;B>MM=_zq^8$i{Zn0Gg2XmOLIH=g3Gy?iZ}Z)`ZubUxvv!-n-XCqea0R zl}QqyoA~bbn3bB`G414Kg3r^gI)!uG;~pa(629AjxqMvy5aH1Mp}4h5Q#{zX5W3_f z#WFcqV9ac{P#=v41W3u)k`#`T)qE`U-n7`KyhGF4r&>q%iOM%|ZpFxJW*!0+#sL#- z#n0K3y-$Fz#0oxaIlie2rPt0>hnPqFKrL@-KbVuC!awECmp#J>X8K^Dr^3Trlm3{7K74|9r%lhuZ-*p3#{$ld7ht|oX9$tUt{OjHT zC9URt=pq22SQ8!%ou!)I4hEseL%S(Xa+S;OM5`n~E7l`$=duehLGSzR+ZuHNsS255 z67vESOzb%WiSXX=enk}@@p4cvBJ9Kxd}DLXw#RUMSRb!^F*fh?b@u)2?(o0ArfU|8 z7IXliSgHSB&gWoGYwoaqI_f9Cfq5ka5iluK1dQ9w9q@X-D%x>Nfi>Bw$gCv$PG|vpjwN{ICDV`__jBuj{U7P3HJT*4 z1r(X+%U@_~zr=eWYV^-kNr5voKT~SkXjkbqt~Z2^9{iklc-0b*CM%jM&3^OJL+zjYb2`%Fx&6!~^Niu?^piJN%g_6azI;$^YYrqQOT^W2qX;>~kvIxs(rf zl+VxlxRwqXMa(GJuP+(BxniAl=S7G$a@ae3E5*azy-QXnT_t>}eKjxcypL-5k0&8= zGg)2G$xbw{^J!gPk*4Wm-pwEOHsOEga%!Lc)w~|w&!&*_cSNq`NoaaZ(uI!-O$uMK z>m$RYQsYWK7Yk)ZE%L68skhQeW$-gW#`wc0dF3O1V%@W>=!$OW6TH=A$?Qsxz!DRR zA=I3D)A$LO#0zDfvEbsRErwUDt=Ajxu~Z8wu})gBUrewB50g1Hvk`>b`HZe|2Z|fH z7^{ppL7RWNvNJmg(XRb3HcI)5f7n~woEnj}29ye?jPRt})6hQ5@a+v{kpi%z>*Bnb zMrfJ)2E`%+WW;P&W3#e!FSS>nGF@+)-RnGW;G)}9El%_}+^ZWskRnhN92vxDm9!N9 zBJqaW%j6oE-;JLwu^C_&$1i|zt4u*%KxA$XmB0r44Al422U?;LD$*#H*->anfFh;?>(KqC$BcIVV z(V%TgoPY?ip!JbpmU)|`1N&_}UbdGSd6UmZHmG-N@HBa$(ZP)wT3m6L3$HihLEky} z1Y$-WJhcUTNf4KPTMSNP$)d95Pvh#M&qB^A`(SZpb;OgCVZre+ECAVbOuCBwasTye zuB$m*58uDf+ca2wI{D&slVj_*?|4bUf-Mj4C#_Sd*^6|*wA{Wiu(#;frgrw2!rHs> z{f+*Rz@F)YqP?|u-*>sSeE7BEks8lazy9^{mU1g;G=8X%gTCDt+3U+ibnrVvE7JY5 zYyMizw%>lPsdjVc5N~llu%51zC{>ia{3~W8NJCi-u2cWva5+=7X86wZ@d3@dFNUpz zpb`dL{f0cwt!XK-#3&d=nH94%QPQ(q7I&VQq<3E=rg*x_op{M#UpoZ`r9JfeGiJOM z5bx(ry7?V{tQ)s0&wq^+ar}w7>8JDO;r)k>q`Q20b+| zuZMc@<=-&P?RmF+B9oai?W3^SUj^2EJ+fyd^*=}DY7!3I^u*?+^Lwt5`!RIjz+Zf- zf&ABpqj@ctS_+Ysk?g%!qHtTth|Gv6 z^CGgk*1h+8ZtwT!^Zot<-`6kP*F3NDI^#JWkH^7mvuNuIol2lX2SOY0ivQ+9>5-(D zbd?;EJE1%8*}Hc^`|q@X*Q6ih%-LInxIX_uBlEQH`NDJM&9fD5=(CTiM?=@94v!6W zk6Vvo#9E2Qce|jW!qRYfdPC(+LtWf;>&Kz8(8!7}>n09Q7_PaL0E~Cn?_^72Te_sKlMUAAj5+#BVfSuUn)qoA53FsX~2C zK}~GKyx`Zu7MO*xj=eAJNHo#-3DG5zp6PLKLVN@I^so7QeJu+9x>AFD`6lStjAFD= zG&GFP(1Ne)Z96P?&pjzEag;qA)Rm_-@f696SWDNG@KYK!C$@(pwO+>B^sSf{knas% zMYccg&)>jKggh9c&eh83mmMYq58y7;?P&F{Tsc{iFfE9MDWjxpgDbW_ni}d%*3Wia z6v5E-EQ?QX7KD!8lM_oWali((wZ1o8>izXV2!q6-y?r zl5Vb;uJ1`YJVb*&v+KOcr~jN{nH(s1@nk=UXnpd`C*n-6vj@Zsmc#7(Qa}MFspWhk z9zx}lZ5JWq;b(xQkKiDs$0A7;u;yoFb`w)wl&Yqp=6mV>bNsA=`rAu0u(s97y2g4e3OxZl*)##GB(P-@{9`GuSzwa36jj^5&S5PM=&@ z)`E=Q`Cgq36!sj~IDgV(1aaS0K{d!F_>uTw?+QBCS~L=^nP; zJ8GNkASnzDI<(fmdym}=xmsa8ZeMpxed}8F?sf?-6N@W>Fq)*!g1Lt>O z^ZaD&K7VM=`0UHV0Qs@izH7!|x!H^A?EK10Fl0lcA~@W#Vf1uu68yeVVkSKl-IDg1 z>AT%Xyce=cSqz2rv9UkJLm(k8LMLX%)DH(n{>S9HbzeLIfRPh$O*h+??=A{tEoVA~ zgD0;>=U^dh31>zY;EpG;_bSD&Fmg+`Mqm@3I#(#j%R5DeWe0D*s*qNaK5nDzE@Ac+ z0X7r2-h6MKqHMKchG8R^ULHl;3cGY?6UeEQ4sq@q=|6%_&=X#i~z5%&7p3`XQdk4ZqE3$X#+8Y;N`Eato zXw+a=epB&B7E!A>8%&Y8e0$P4REPcxtwAUa_ByA+JvCfGZ2|c<%8oY>E&-+E?4s@T%aSU&%epTVvCQQ zJSWc?{F)>dj+oIf1PR}vR*|}r9Zczq9QU%{UD5XX zCulQ1jauZC-`%3%2K{ewYgWJFe0Jtj%a#=ee?k;CSF;lN zjCf6<4;|Pze`tKab{M{-VtcVvhV@AfUsIsg{WybSCi2UmjKaG|L5KT}lFB@VvS@!X za9s*Av}$*uQQ6j7iiP9=m%0tU8;ydUY&wZU1ls_=>n&nU&L?8f09_H)oRr?`A#0aV zQf`+{FZ48i*^(*!6nP#Of=SlOLjuUN`d8{))^C)y+YJSjj3!<0)+?&}W<4fm9MBx8 zr}9eiJ)wVPmoF|3pV(EZqZr4QIj(nG&pxhpdL|JLV>Y_GJJ7sP=A@T=a=hxWt)JT8 zD-Ifwp9NF`2>y(H!02hri!K8k0R1HGbc*;U#($fL;j65iUi^6GI{iF$X>nrjGAV5$ zSX1Md-vJcx(W^I|Hl4cqBv-U%hwJ9gO(}b;P~yd5hV>U~+dUhP0G{~Fi@H-oRow2! zd7b`#qw$_6fgmQH*|KtTNIY|yn zn>CwA91OoFi{IA{dy2&?j&4vFSulPR+shM-n{OdUjUXbIFJHUpC*-y?(W0yx>lE5V zT4p4^tvqPlt6ebN@ypdNu!kAEU50T<@gCXy_rJ+ zpb>6ig8El#20D?+H9mM289!TYv(@@63J<4nJH;|1XKIf& zyoqYo;wB8R#Rp#SOU{g^!V$Q9^JLCS%?>-{IVBIUOuzxkT9_qU0Y=%+GUmlDq8eOL z$c6X}%A>$_nx02Sulz0~W}u#z)m>5AcdV4nWqro@#=@b>8kfsSGjScHAn5U1$FxTK zfXOQmJAU1`C!5&1ddVNR<`~DTrf4H6ticNQvp#)YCwZAx`}^s=94F9XRygSU16SNy9__D3WxEv10O%)d+Y;c_-zhnx$b`b zsZky@_sYSAbP7~LKMJz{j4V1{2SM=Y*XA7vLmtNk?crW~hfD=6&q?jY8RL?l4|yr6 zP=B(Az9^$lO?~kOn#hlRWXtCE3NYkzi}&!N@JWS_cIfW+ZYG+o)exO?8{hOEex@YY z=LT7IoE>A#Rox$Yi zyK7Vtn|e6$97ksP8+hqqO{}v_@quwT!)zu2@IrD!0(kAkuxGR@P~_C_9V(MAsG%DT zXJ?9K<$$a)g3tXkO1+8F9GQ(&m*U-U(ay7ng_Qu|y?RQstU&rr_jN;XSgXJBLQ5h9 zDXKAawKGHZvYQ9%At~!rA}+m{EE&>OncJncx8kzXq-<=b9SW*0cX*bxOmP zk25`E%Nn2)%dLxLQg+FP_ctP*l(BQcrKR_xTz~YS%DynK`9pYEi0pn8p?)FuPV& zLSF8@J1nLwsE@C=4~Gc&-E%&$53q;__Gk8A^vX8tDfLirx*YL%h=(06f0s^J#1_vx zU?Hz$-iQsz;T1}ETnV zFTc{Avn4`KZ~~Hu?r17C6i?i#@RU@b>ZCMJ!0W%(xI>E>vNx{Gt&V``9Qua}6M|jk zJ#+}cBnDBNG3$||=4I3?dSb9meAp5Ng{HnWUI5E?JUtHS^b9xQPq_Br68?4UJ|GvX z@O{)zTtyir=meGZD1HkS3DjgdaCZkHpFm;8%;T&xfC*$qZ8X()G4(33LmDfPvx*4A zE4Ics*Ep4lZN(1nlyp*IAXuXGs(y~En(ht;+&5GKW>ofsL?ptd-YOy_#8TlBBTzQh z+~{5v8rd7*5DjT6tNRtQ-$Y@zAxDz$Fz4laEuUQXo-Qo8QW$}F4xw`8m~`Wum}4Yf za&inhaQb@Y@;>nsSGbbdz*cr-roy;Q#C_~LCds$K*HNOAS)5d%50A!HLaFW+_mWHi zwwpR|>pA=iAJrVeNEGOYmYMsSffZ?&u=bUQ)2^5>ixG#mCP6i@?%8V))H9CdqIj}%+@6!Beg;&A;?(cMD1 zZ!$X>X+TXm$qH7#IzN&Clb%X@&}TXdufe*80b`Z?#*M|=%VGGcufy)#`rG-K)@^d< zCn5%X{5?>F`Lhp6IL?Fw+UomJuTyT6^9~A9ojm|HUQ|I^6r845T#CpqL%7c72AJd=0k z0`z!4Ka%HEKg!vU9)i4>QsnT;_@t_i6f;3=EHaTXv?JLfou!v%jT42j;leExRq z4m+T)W+u2#<*>#osAG>nMrMzvMCOon1fv?rbb#}Asx8Sdl^1Y%L#|=XTqbKT6d6Dw zMAKm&sQM;mIbM*2AQeAf#!PTIkUn>1`iu_E4&bEDFW<^J4X*mFKL~^ue=W7mlV|BE{_F8v~ z0mY4Wy7;dFBNZeYB)YxQT`2V%*i+#sVJ#bWQ7fN|**x5bG8%clarp@Z7^0=`qOpg~ zUZnjHQGku)`Lmy#4^$>-bCH2fcSZV56?yub*&d*4|frxm8pIK3-A#v{(MBO@1v4qX^?NruO zpGzZG;4PSjZ0i#z46d}oSsaGj6Xy+m^6PXX{zD%az6YGKpr(6iF4)E$Oc zetfU!j6FXU2k}-l)k#K3VDtO{h+t0v*vWRLIl&JaH#wF8xrP@%(vm} z-KWSyT1lrf$2RyzMryjfpu6PUk9p4Kd^X|n7asWT2Zz?}G%}rWja5gN&R_ZfFOOYF zi7a)pV;+yxet3xEtTvkWhuc(z4YgeF!XHNLscti8;cN{K5TR?0MBHs^;qC5)fyll* zE*E+E$Op@Yjf$)mk95PdKTP{mWIXp=gjmovC!sytc|)%0?_v)$oCgXpeS0p&M8Uk>HVM6l@tjkG(k!ClL1U&Z>{ zCn(0g9m??21NcIr7NwVMr&k0BuhqJ^e_6F8p7r}v38~LkZ>0b%YcdpgQ1U3|x`@US zDM}}^`p*D|a-LMwkWdd>rgP)lgqiF!UlMlCiQO|5D*b%tF-#GoZ!@EmO~(cNgpPPo z0!YdotaP9fou1T;*^VqU&7F%^d~=e==$PL2@GK@TGb!z}pY`|Z#A7_Ge7j~N6A1Ke zJw-E3i)SN7V#sni$c5(4#@@Q@aq_!st|oC}VJZha3fw{4j_!%)XmLuJuz-lr3>4^t zzNQYI+hC!$n3H5wG-S%3>EA~O2*LSu---0dqwny!dCl7avQvQQ`;09dVAWq)E(g%0 zBPykIgl-B6D2{^vVgU@I*ql#7Wuh*T87w}HbH7o%{l|;))FN-n_$8=Ynp6w>*TI}d z4ck(UydU(9SACd~z)EK!3@CE$zeBOY-8LL>KDcURF~u1|YNWM2Vs}d@j+b5spjBXv zqKMa;mK)37oqjp6p<95a8zd(%0*GeC65uF+8eh*pQ2Thm*(7@Uwa7!m5x$OJ->Q5s z_f?p(N*;>f;|pn;U7>MHvDvkEOc;lI`4~)~(vOwSk9FZ`lX`6$Z)lmupbR6@wS}=rwEa(* z)BP4gPQxvRuBXMk9-$SjU#ENAyJ0zXsrlI{CuHH3f9ZslK>zpT)fn6?%K`i{GzT#m zyUlMFilv85qOaa54cf#t$b0miwl;g%4a2D;-cK}=`;y(2dP1s(&(+s2t)Ps!i(7`@hWejm zOIg4qK82!@>b1r{2EHcA53-P(UmYCLE_1vvB!r+4cXN-iiuHe{8g23*@_l%ric3N) zw>~rKzUq*6Z4Fi33zMk1AwRKCeF$@A43{RZ^ z4xi0TC(MaDHykf~z5>^Z%v{BZK~`814#prA&jg2?;<~iXK@T=_yXnUiNNw8OHYKF7(`)9&eVXM+1SNvzK#!#_c5 zl;D)UgvD52CH5&%DSY<6FsL_acO)eG^eccr2?w$s`z@#2XNq;t&Efva zj%cPP6GO{(f8Ih)btdV-cZj3@UZwtQ-i%&xnqU-`_<0mEx^F6sbHGTd;#R`hyapob zemT6=O!BdJ_2GAuQ-D}M%2H*#><3qhDx}-K{*z2WRl3SH_C4R=;ht=JfMP9jY-wN(rKuBowJNs8>rWw!sxvx{ErK(M#c#(yA zJgPD1mDc7lNDXtb4lYcL)?`x#nadRB=~BpCy-bs*F@LlV5Loi*pqPwRKI3a^P83Ym z2zv0|Nlg<0nQTyw+ixp&@kfK?n}UzpBqD@*@XmdSBPlU&u6K3tu7q}tZ^p1UWGItl z8+Sj{L)<4w(wy2#h|7<{SA_l+e>!tzcqQ(6hf0iVfD&iy~ z08OXs3FLo{Ljd$+A0HX`+3k*nb2}8s~de}-Kx1mP8X>Os*5;z;EhDjPeHvb zPl_?rPy$K%>)V5GwH51l3a`fTGM*aegfc809Q`VS`ODNz6EwE&k5g_?)AFvM(FY9w ziz_3+ERGZoR3IGe56D*-lScn1%!Hyk7hfP)dhb42{1#jjv@%Zpoi9AaNh>2WoGM<3q>(uNC?C%$mA7v>9kOsMAC`|jUIL#ZO;Cut_*Fl-ey ztKWSQWyZ-2bmA2V?g!IMrdk3MPtKR^-u)T^Sffs{gCP}zX^{iGBqL5;bpiyx=;A@%xFD^qJNX*}NhNE3${}HY2 z#9tQ@1i<_3HAydbNB!N5)Sb%M%ug`9D_nESyua;upel6U8mqf5ppQFVM*`_X9v1j; zZkSi@C-#I0A5?>Z}=ho4(U^|koOylv;zo)qzgeyP9 zCuh@6jqKC8EPxnyz$rpd=381hHq*qe_Tr9hKL9Z&5qGEn0In(>N&GZyK6yM;t@h z&6Gl-!V+NzPEkB!Atq!BVv%Ry9cN&a`n3RtBs=_e$A^~5$=SULli|xFv#FLi!Os0g zPvD5BI=Y839bbU}1WUgo*Uovt+8Lgs&5B9EQfEUJrX)0AdTAu@_2LP#A#TSv=`jb( zxW^%$>RgQ{a1g9<{UPLVz%+^p#UUYyWGvpzc}XheM5j|e*1ksKv*#Nt@^KyIPg3;8 z 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 De~rmR literal 0 HcmV?d00001 diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 0000000..8eba93d --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,44 @@ +pipeline { + agent { + label "master" + } + tools { + jdk "JAVA17" + } + stages { + stage("Notify Discord") { + steps { + discordSend webhookURL: env.FDD_WH_ADMIN, + title: "Deploy Started: CraterLib 1.20 Deploy #${BUILD_NUMBER}", + link: env.BUILD_URL, + result: 'SUCCESS', + description: "Build: [${BUILD_NUMBER}](${env.BUILD_URL})" + } + } + stage("Prepare") { + steps { + sh "curl https://raw.githubusercontent.com/hypherionmc/changelogs/main/craterlib/changelog-forge.md --output changelog-forge.md" + sh "curl https://raw.githubusercontent.com/hypherionmc/changelogs/main/craterlib/changelog-fabric.md --output changelog-fabric.md" + sh "chmod +x ./gradlew" + sh "./gradlew clean" + } + } + stage("Publish") { + steps { + sh "./gradlew publishMod publish -Prelease=true" + } + } + } + post { + always { + sh "./gradlew --stop" + deleteDir() + + discordSend webhookURL: env.FDD_WH_ADMIN, + title: "CraterLib 1.20 Deploy #${BUILD_NUMBER}", + link: env.BUILD_URL, + result: currentBuild.currentResult, + description: "Build: [${BUILD_NUMBER}](${env.BUILD_URL})\nStatus: ${currentBuild.currentResult}" + } + } +} diff --git a/changelog.md b/changelog-fabric.md similarity index 100% rename from changelog.md rename to changelog-fabric.md diff --git a/changelog-forge.md b/changelog-forge.md new file mode 100644 index 0000000..3ce015c --- /dev/null +++ b/changelog-forge.md @@ -0,0 +1 @@ +# Dummy file. To be filled by Jenkins \ No newline at end of file