From f9cb17084d7066b8477bd78eff691f638ecf233b Mon Sep 17 00:00:00 2001 From: "Soy R.A." <36781536+SoyRA@users.noreply.github.com> Date: Mon, 4 Nov 2024 00:03:03 -0300 Subject: [PATCH 01/17] OptiFine: Added the reason for no self-installation --- docs/modding/optifine.mdx | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/docs/modding/optifine.mdx b/docs/modding/optifine.mdx index e072fea..f59ea22 100644 --- a/docs/modding/optifine.mdx +++ b/docs/modding/optifine.mdx @@ -36,3 +36,19 @@ Before following these steps, **make sure you have run the version of Minecraft ## Using OptiFine with Fabric You can do so by installing **[OptiFabric](https://www.curseforge.com/minecraft/mc-mods/optifabric)** mod, but it's **not recommended** for compatibility reasons. Even the author of this mod suggests using alternatives to Optifine such as **[Sodium](https://modrinth.com/mod/sodium)**. It serves the same purpose as OptiFine, works natively with Fabric and reportedly gives even better performance. Sodium however doesn't have shaders support built in. But you can use **[Iris Shaders](https://modrinth.com/mod/Iris)** mod for that. + +## Common questions +### Why can't it be installed automatically? +If you look closely, when you download OptiFine you go through advertising. Without advertising it's even more money sp614x (creator of OptiFine) itself has to put in to maintain everything.\ +Now if we look at the website... + +> Can I include OptiFine in my modpack?\ +> Generally no, unless you have an explicit permission from us.\ +> \- [OptiFine - FAQ](https://optifine.net/faq) + +> (...)\ +> It may not be placed on any web site or otherwise distributed publicly without advance written permission.\ +> Use of this mod on any other website or as a part of any public display is strictly prohibited and a violation of copyright.\ +> \- [OptiFine - Copyright](https://optifine.net/copyright) + +So much less he wants it to be integrated into a launcher without permission and SKlauncher respects his decision. From eecec93ac39834e67c6680ebd279a9de91aa9b50 Mon Sep 17 00:00:00 2001 From: "Soy R.A." <36781536+SoyRA@users.noreply.github.com> Date: Mon, 4 Nov 2024 00:06:10 -0300 Subject: [PATCH 02/17] Modding: Added Quilt and NeoForge Also slightly modified spacing to maintain consistency with the rest of the documents --- docs/modding/fabric.mdx | 4 +++- docs/modding/forge.mdx | 4 +++- docs/modding/neoforge.mdx | 16 ++++++++++++++++ docs/modding/quilt.mdx | 16 ++++++++++++++++ 4 files changed, 38 insertions(+), 2 deletions(-) create mode 100644 docs/modding/neoforge.mdx create mode 100644 docs/modding/quilt.mdx diff --git a/docs/modding/fabric.mdx b/docs/modding/fabric.mdx index 9bafad2..ed663a3 100644 --- a/docs/modding/fabric.mdx +++ b/docs/modding/fabric.mdx @@ -3,7 +3,9 @@ title: Installing Fabric --- :::info TODO + This document is a work in progress. Please help us improve it by contributing! + ::: Thanks to SKlauncher 3.1 installing Fabric is a really quick and simple process. Here's what you will need to do to install it: @@ -11,4 +13,4 @@ Thanks to SKlauncher 3.1 installing Fabric is a really quick and simple process. 1. Go to the **Installations Manager** and create a new installation. 2. In the version chooser select **Fabric** and choose desired Minecraft version. 3. Customize the installation to your liking and save it. -4. Done! \ No newline at end of file +4. Done! diff --git a/docs/modding/forge.mdx b/docs/modding/forge.mdx index 2766e70..784b5a2 100644 --- a/docs/modding/forge.mdx +++ b/docs/modding/forge.mdx @@ -3,7 +3,9 @@ title: Installing Forge --- :::info TODO + This document is a work in progress. Please help us improve it by contributing! + ::: Thanks to SKlauncher 3.1 installing Forge is a really quick and simple process. Here's what you will need to do to install it: @@ -11,4 +13,4 @@ Thanks to SKlauncher 3.1 installing Forge is a really quick and simple process. 1. Go to the **Installations Manager** and create a new installation. 2. In the version chooser select **Forge** and choose desired Minecraft version. 3. Customize the installation to your liking and save it. -4. Done! \ No newline at end of file +4. Done! diff --git a/docs/modding/neoforge.mdx b/docs/modding/neoforge.mdx new file mode 100644 index 0000000..a60c4f5 --- /dev/null +++ b/docs/modding/neoforge.mdx @@ -0,0 +1,16 @@ +--- +title: Installing NeoForge +--- + +:::info TODO + +This document is a work in progress. Please help us improve it by contributing! + +::: + +Thanks to SKlauncher 3.1 installing NeoForge is a really quick and simple process. Here's what you will need to do to install it: + +1. Go to the **Installations Manager** and create a new installation. +2. In the version chooser select **NeoForge** and choose desired Minecraft version. +3. Customize the installation to your liking and save it. +4. Done! diff --git a/docs/modding/quilt.mdx b/docs/modding/quilt.mdx new file mode 100644 index 0000000..999afff --- /dev/null +++ b/docs/modding/quilt.mdx @@ -0,0 +1,16 @@ +--- +title: Installing Quilt +--- + +:::info TODO + +This document is a work in progress. Please help us improve it by contributing! + +::: + +Thanks to SKlauncher 3.1 installing Quilt is a really quick and simple process. Here's what you will need to do to install it: + +1. Go to the **Installations Manager** and create a new installation. +2. In the version chooser select **Quilt** and choose desired Minecraft version. +3. Customize the installation to your liking and save it. +4. Done! From 6f5ecc90ce10b5df2cff8bf7979ad699651a6cb7 Mon Sep 17 00:00:00 2001 From: "Soy R.A." <36781536+SoyRA@users.noreply.github.com> Date: Mon, 4 Nov 2024 00:11:25 -0300 Subject: [PATCH 03/17] Skins Support: Slightly modified spacing to maintain consistency with the rest of the documents --- docs/features/skins-support.mdx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/features/skins-support.mdx b/docs/features/skins-support.mdx index f58da69..a569917 100644 --- a/docs/features/skins-support.mdx +++ b/docs/features/skins-support.mdx @@ -3,7 +3,9 @@ title: Skins Support --- :::info TODO + This document is a work in progress. Please help us improve it by contributing! + ::: | Version | Vanilla | Forge | NeoForge | Fabric | Quilt | @@ -77,4 +79,4 @@ This document is a work in progress. Please help us improve it by contributing! | 1.7.4 | | N/A | N/A | N/A | N/A | | 1.7.3 | | N/A | N/A | N/A | N/A | | 1.7.2 | | | N/A | N/A | N/A | -| pre-1.7 | | | N/A | N/A | N/A | \ No newline at end of file +| pre-1.7 | | | N/A | N/A | N/A | From 0b7a7d7d88f0cf026e0c92d05d63ceab6e825004 Mon Sep 17 00:00:00 2001 From: "Soy R.A." <36781536+SoyRA@users.noreply.github.com> Date: Mon, 4 Nov 2024 00:14:08 -0300 Subject: [PATCH 04/17] Intro: Slightly improved to contain the lifetime and team behind --- docs/intro.mdx | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/docs/intro.mdx b/docs/intro.mdx index 3c35f4d..895c0f7 100644 --- a/docs/intro.mdx +++ b/docs/intro.mdx @@ -4,15 +4,12 @@ title: Introduction sidebar_position: 0 --- -# Introduction +## What is SKlauncher? +SKlauncher is a game launcher for **Minecraft: Java Edition**, designed to offer players an easy-to-use, visually appealing interface for managing the game and installed modifications, along with a range of offline features. -## What is SKlauncher - -SKlauncher is a game launcher for the game Minecraft: Java Edition, with the simple goal to provide players an easy-to-use and -beautiful interface to manage the game and installed modifications, with an additional set of offline features. +For {new Date().getFullYear() - 2014} years, SKlauncher has enabled users to log in with their Mojang accounts (prior to the migration to Microsoft in 2023) or use Offline accounts, with the option to create an SKlauncher account. ## Features -
VP%(F^fy7uqyr>4bL0rQrf$;n0l?Ck?o! zIJBfv`9`$akki?^<;8aA2j#No?PRak>L;`K7Mqj4vK6z>&sXOeSgH{ZktUOk0CZVbghvPoN(Qj5j-;1b$M_W0ah&d4P5{qdDa@u zs+OLA?R$&U#>AuS9Eee1%KvgAK0CMtjP}2O<^Sdfw#yw*J-DQtx|MGlO&|VD6`%DS zTq|hsnrjM3N}|kOBl{d25)x3c+!TO2JUqOa_~5| z*sQFtE6B 90PCjDyDXon~3J 3d%|&0gzG73Z?jD=~YIaJRFwlaTOjG^|{V)mdF#MVg=N zE;eOWS672ayjT)wSXo^qRMq!7c?Er0WuL*|y(o$})U9c$tNUS`noS)uHKKLlr4{rCMtXB2^Qu_U8&IvE@W_U zFt}Dq3N`d)k#WFT=Kj8;{j)|?s&@*qem{eYK*i2(=XYz! {hw#2< zT>7 VA zP0ayZ1(-xtcngkam($vaUgaAjVCJw=@2ks=$%@{OkJbW6_3?$)HvJ`*ekKYut(i6% z+AArAZToRs!@&YJeJDfB_PgXxZaw$;pg2}kT|Mz=y%u;bE%BT8PKftOH97hD&Z)0T zJkOkuMmZ@p$xfY9!}oxfy46WFg*d4ze4XSDyn}Y-=~?$R4!Xs>ikT(`+HG9mo6)hc z aeKwDYS-Koh3CFaewKU(>>-eEh_y6GF5@BlxYyO$?7e<4 zx+Zne27jKhC}!nIUcTz^mX8X+_=P?r+`)K(7xapqDdcImI6GGxP&>HnFZaJu-0L^z zdtLSsNk~XY?R~yuJz0*e_I?TALM_RayuoQ?r|HWIo8&b)eK7dZLTgpk0RTo|Jlrmu zQv(C44bnt%4ymucXykYwH`AOh?SBj}aosU4pnDHb^&D9vGy!gm%T@d9biUe~<9J2c zTMh Vcr$_g{b=}MYgcMzD`uFND>loExhHF z(LXi Q*_R4)^yf?|!DZ9S9a=YOT`X{5R=no{kHc z;M9wCc*T@`cdyrBNlHozaQ35y+*V^AvfC1^{vyCR6=Y<#lRZgvB_;hVf6N{* PM;Poei@%c`t_N }@yqjp`GawTr~1*^X?N$L?O5ScWZdlKVTB%8j|Hrvy>{`-BE<1H zaB*8cLZ !bbgRZd>sp{^+Z?NLeUMJN(r zx$Vw^OZs(Md@wkc4luaBa6$L|uiI _NeM)h5Bi$OabGh1gKGqB zhO?eWdYZxbO?68xIFXT&zPig!%>LUE%6lh!saNYWrwzxyL+IHHv$EPPPrq_YFSSwF z5_u7)#cdtMH(VYRz#O|dDk@d|Z8^Y_KCKt1q;Ua`y;-ohK3)QIY`!CKeS9tT>Kuh- z!1d&feKs3};57ix{59*z3R}{A`LePy(Vdoi66-`a1p)dkSBE+MZV4(cF9$16LPX@+ zItl I%V;%Dn6Mx?|^Z06I>lhzBhLd%Ii zFM0vbIoqg^6!9N5fHw!;(Vx!&fyV#<+*z6G+kU`Gj+yzC#jj3!^&%pXz-!rbYoKtK z#$nrgSa*!KKlgypGUpq`-NWBx#o6Q-KHnZ5Ug++FWm4GmCe?5>Uk`wNJ$(@|F)^@h z&-wQP`fiIcXvg(bq-o$aXnOn;&d$ih6etR3@vjm=Msv6Im0TB}(kw?Dj>8e|?f{2B z18b|jJY8#g5rQ6|U()NciHdR62Qm5=>A)O^hFBBs|nsQ*grKLl*NnR(5al@| R z`B$)J{_kkKT-n*!{ht}xvkJBwHfxEFTFEx}>*xMzxLj-S$F0-T(`!Oza3eI9Bi-K< z<4Pnf%~#WN+Y5d22Iv}OzA})JCK!+tZ*X-wDqZhOD7Zy`y2$0dBKA_a>FfyrSAX)+ z`tIitEI@T82bIMEXDBpj$Ft{$q9G!{42%-ByVxz^`X<$38LCUKTW&QzHspMExWQGs z?fWJKnG 3S`v0pbD32&Z=$p#~-J+_~Y-dUGWAiOCEOz?cBlUV^l zUJ{|@*Z5ph6ID(1A<3lBC^v=s=Gy)F1E|9Nm&K+*Tl7B^n4;b^h!7m??+* 1k_wHdh6uS5Z?_1GjuxkMlj`#|4uOnLwsO0@R7v(0r*k^=h}93->}kd+i$i zKU4%sh=!AHWH(Q*U>9KbbC+jZ%CfR6D=XL+u`r|pf1={*gD3GuWF)kzSekr0eVlKx z{EfzTurY5!2%EUqkNy5%iIA!x; z*pSCY(hxBQ1PUGBUm48E$Ald7NRc4k-;vS7h0sd$64Dyesa}KOU6+3= B?!wri6VyaiEnoQ&zlTNO)^4HI}Y#u`CR-jO#B3! z$ktb_)Ap5HO ^i`SwjnJ8@V;j8_sd(yQS#ukv6%_z=5+X~iwYHh=ymFH5QX ztJr}jJ|qy|Cx!kpL^L!s=25zwcS{fI2htMnlGs|QkVJpW@Ve2+@?)4n$9yx`o5FYz z*M%%Z)k*Lq5azAJOU )&G`V5gQ*hbngao&> zyo%Gz?#103xFihB%x9C?+jCak81pNmtNU5Snw71XMl7m&jd$_BR^JV-KG-H%s=%>$ z$1hytBJ18BpEZh=Rkn+?>=-gZK3cHrVT&E4dogpNKIEYpH(#MF3)67Y) 7Lgh5C1WcoBScuG~-WUQ6K@5eT>A;pF|8KY&*qlYw^(R^^@ zHk0nC$< $D3)Yl=fkKDm!DxqP zdj+?+@#wT97>dWO^mhh`S$~?9%<66GL^v%P4)Q?L4)bo!9^GH4J^96zRF~gG^>Lwm zcMGeIGoY%vOYobUlqPh+El NRnse zVIBph)19E=3an&hjl{)oPgr8I);Xk0IP&Q mrrb7RGPXAF0%$@{A^3#AwISQe z$T+|OY105U-wcn|P#>PL>h`G~3{#tM-HzVr|M|erQmc4x3Ofx(c>2b4;Iw8P)g=jo zWxIT}GIhRsyY5w=v7}t((BTnl9|tcV%5#o()?bTNG!i>vdUdic4})>!j|-5Wwm}P#G=+Z;_J8s=3(UJp`&A3RK$z?f6C4_FyKH{r%x(>bL z%LwDttW{7{yx1R9#*~tSrcEs-L?>CSKX@ZAPkc@1xVHRiyEO7VVB+Egy)52aB--!3 zd9FRXc&Q1y{dpH>V}Mcal4bVE<@~EN;pD06ef@_anw{U|y5~4zFv Sk!DUxBLh%nVT>%tH&v<@s#!FH#r>` zYL@ri?xPnSB(E21f_LRklDfXTL}aG_yu0!$ovo_Jp f#XD1|!qjL2T-_A063@l*e z;nr;S)_2(Fi>##*IL@3Tb371(#lbi8P2(D{VFerFl&hu5eOcEq-rfT B^3ZM2 zrne`lX{t8rs6I}mPrZf1qBEOlX@aaI)89E;d3)lrnG)_2ZmlPkq!6dSQfZfdlI@4F zwfRPId+ubZTB-d;H=Typ(W&l5_Bw}$W!31-03&b7!!L=gh#vvMd{mQVbCk(9 #8X^NBsqQQ0B`iXTIfcVhu~M%)Bp!cM|StHR%RdeI_Jq$%1df`%0X zitiqaZ}&8u-rw5Xt{@GVb4`%uw1AjzC&d8-}hsx5aOVZ?8d2%IoV i0Hmam6QtOn*ewBaUzr5)$}pE>6VHF?I+c;c@fX*fp~d4Hn3#t? z=pT&9?{BRQ-y+R=lBz_6&*t9I#8wAG@DKV*{FmFv=%M8F!aPT&Q1{I$6q1FXQ)yM` z+LIy4Uc$7*=^i9yglgMOOtYtrevIKZuIojrX7I~Hw%lKL1Gc{|e7>Jy+^RkNUZi&~ zZ}EZpu)Z`^pf35^uX>Y14Vl9*jN8~?MyAP1CWAW2Srhi)HN1Yw U$9Q8{DJh@ z4>GWvs?|BqQsSjmqb*$S`p $?wxk~dV2j;AxNkWFhBI@ z!ev&H@Y!^KI$kmtGKg+{GLV9$VEW~!;<6n}#>6xbKP=bmao$Xhm|Y#Kk)7sX(3AJJ zFM#vse0yC$uj$vOovZIXc9K)mgmd}4>=e6~P-M3zhKaJY(6@k<>6K4WPMv-EtdC+U z&T)1*YVDxsm&0?M^OW1Wo@^d7)<=?OOxIvI*X5Bmm| --< Svig Z_OJH*egjci@cgje)xd+d3=thgD!N%BhZKn#(O(rKH$1*MGUNV zPx$&1e~ChW7F1<#WM};Mn02g3=sk~tn1tFzJ!sAYTMp)RyG%b9CqIqrD>e^){1iS( zy7TlD9%hA_Vc4; O*m@x5*`F;+c&k4aw=HUxOh>@R`I&4Vh7kkBxzA=NhG z8{UesCS3-5wGu39(n0kZ$$a|1ErU9WnO(A#&ehiSFvc%MG!ms?FeVO{Se8M{TRGMJ zyv^gEX@+`ncaCg?9f=n&Du-LR3Jgke54EtQFhhC%=CW_!(IrQ{O5~3rD%dI+?-1Nv zwHaVI;eGVz>dUD7#YYKEtwu|;Mb2r{*o6=)qZ h<( zFS!@hZ4zK$;>io!_l#}Qqv2%Y7=2)5ox4ihdY nW(^=#9cl)vZNc8f(48{1MI~7R`GpCv3k{=zMsx#){Otd^ zg7I%a^M7CR_}35k?=-)3^QRg56j3ckr>@oTS^+O6Vzx^lyT((1VMY3=PHte&rhtdO zVff_8g2Ui(<`(2Tl2)tf_yahLSMgn}!-tr5(O+Er{t@caETzXPc{#}WO5^EeA{%u9 z>Wqi^<}?HZuNEr!#htj@cSv7qAVOt6>pdum23Qn(YW=4`6Tu=TCf3JPrMp=({IaSp zY<0Bq(J4-IwTEQdP=SeWw`(q}D65C|+&FJae^fj6v*=ok?B~2IzonfHnwxL2L45{=fHCrr?-l#H6vxLV-xmeN*NN4SN57Khs7$$w)@!Yr3{udlN| z{PiRs9tVK+sLw3sJu-4%B tW`b9E%WX;ab$q(ah9 zZ*`OEKXwa`iv+ZF4WD{`a?@?-{nH0l>T$zPHj}2YxG^49ZuXOxvu6l-=Yr7;+b1YO zC 3F)+6oF%Bo z02)QTr+`4ykx?QAtt%cciWD^6Iisjdl8AXvS)_P;sZuFvG8v__Ksie?lR(__#OqSD zBne3rm?b(R3x!rIqnWY4j_>YV Y?WaPW> zBGTBdo!nlUGg5C^_-M+uO-dp0_<8k12beT=w q2t*2Z-l^b&bJB#|6P4Tw@ zk_g$F+>!oQvhvvW>_^>Z65*?&B_iew)W3Z^g27}{nh$Op$eR-%UMbx_6nG=(wyKLF z%S|2dzuZCe)Mqy7)_nxA%;CJJPgXW@>r!AhIN8sybVV+IkFq)jzZ0LGZeZMsKctnA zPae&J1J^k=9iHc{K0~oTm)5aWS5F>dxW&eV2yuvOqAJtYbZi(RU`5N=XdBY8hrtKL zeww2q`R75D9V*cdX7AOfUHK**)INRj_rRJ>%l-Ckm2S$m`ri<6!t(06X4qy#?+Tcy z>3Z){ThZgosR?l*<~5swFQ-|0dhm+uCy)s2QFbGbF}>#G6?5yE*0{%n$ET0F35j2L z#@Pto%fGRE;1WmUmBnBP3^wt;Jm*dsZ~@ge!7Z%y2ft&NPris4taQXiJ%uB}Fa? zr4(4P&Id~fJ=avx&(4Vi@<|UzO?CTACCiV`^#FL-5%!ofrK@Y;nW`qZws=yUAK?K` zpSz3YP!PY} +qT%#CoR)uyKB(EUPR5S_NZ_Iq_<6M;B!hIqHaw14S z2SOmXB5s1ufg1b22Auz`4$x}6m6n*nnm|U+WCCkJ@;tK<=Y9qkDkwPZm&(q;hV j2?9q?@L*Bt%Rl+)bVRF!#P+2`m2+|8s<7qOL4>Gbp zY~rc|A>4ShS`yJFL=38gJmiw2KpNnngEH=Y)}Zw-By4D=oT$#9Jqv-5;bO&d<6RGp zZsEqkg&4gBEHO-_Pli>uXP;iSS9n>IfI#J$R}TGW+3AfvHgtfY!oG9=LGCZhU|DU$ z_1_0M9=w>}AN%P@(^m7e`AW$l#7!KVhvIt+++BETf !VTq?B zR71=OF@AeCId}D03d*fMQ|q{{+5Q1S9 j5gV_7YvpbX+EaqO$1V>nom;bDsS-ATEt##~Ku8b) zOo@2If$OIMcmz%0q}82T-(_T5$V?bge|T`|WU}$Pb=SZ^3hSlK8-EQD<_GIiBl&07 zGy_hi5~EA#%xC*84IpI7Z+-$9mCW)yox#jS;c6!+2B$f8AaY61qm%RUm%K-4Xva4j z(=u%s%yhsWUgyOqR3j!}9ns%ni9~+Q2xXhN@R0whVxsv}KEcX6< E7lGx7t}B58H-YSFtJ&WjvT3 x<>9lI{2-T7Lt!F@W#K_ zvp>K!%q--X+K`=;g9cQ*##H~61^=$i8R+% ?_rk=+Q2hAFh2J9GSPszAJPd7GDXEy ?9Ep6mt3%ZQNMeRp1H|w# z+7$lD#_@X{7MmF_df)s>SgLJ>e(DN{-Ez<^3i}Gk;p4FR2ltC<4yIRMR5r&CC;TBA zA~uqXRyozV`6UWtyt5xz4k&Iynt?Lw=RzCF*)lBGWA(6@{4?<%=@lwtls_|;rl7b* zOn8?}88;DxhCil1W=%S(Ax*9Rufpsr+8shla&RCj*kH(sh0nuh0U*qHZ>Uaj;F3-W zx*;>nrjmaroBp%;H;O-I;y}G9RW{1k|7jPL-ptMZWFIIhU?Ldw8S`#^yPcr{mE1nN zms5f;)4y_cu6Gjta)Pit4AdRgAE=r1q&s34G6Bxn3P)aY6CT;K+z>LnACB*q&6shB zfcH@idQ0fFwA(A3Sf*&=tLU64P`O=~|4(X(r0~P^n!_LoxngY~68W;r^lVSdnuLHL zp>#_7uPc(L$lZ-FlR+&YYHY&g^%uoe3D;IcK76qERz_hAA92cD6dPjwBTsEeMv|7O zcie7}&Omq?{rL#AHl2gf!34-nMvs}G?KkA+8d^GbS~!hGV %w z@6hMocpnWrENts)!hyeiffmKHW2SBD-fyun8VTEc-bO@{Ju||fy$wvYiwEaEYe08G zJq|#7_Y0#G+rG*J(&^K%0OIq{U0t(i7w`b!nbw3;pBW#0qm5I)p^FV(b{bTNekZDW z@}*mgH5ar!KJU|0`ahNmqC@|C9ujudi8Jyq6q%=@y)n2Pv#3gAz3;^__cJ2qA8Vh? zS$u4NR9X|5V@?aS9Yel(s%FnS`P0-n^m|ohan-W(<)j3EW4|3GGh6uNuh35rd@1nA zry$?lVnvgTj8UG}=Wm|1iN$OieA- !qPEyVE1Z2}3 xgBIGc{lXo|Cn>}{JL!bb-F K8tcSYs0xQQWHxM6%E~l!4T- zV9G63G2MZyQ0ej}s 7vY$LK4c$g5-&E<;!FVtj9Pl!FM zxT5ml3W?mDF!KQUKAm+(z&G7eP$wUaBiywPhsc4r8k>EBE;^w3Lr *EyY3s5X+a&)(&{i} zoQzOKzX~J4*6kO5fbvI`dA !re_9)#`^)6}9qzFy4Pf0xsnG>a{x;f%Y()ucN?URi>K- z*Dg$jkC=ksm=J6La*ieU&@Q_kwjwT8G$2@vPL-T-TWG4xgvTWwkL(8Y5CM#5jRC_d z=NSLJtX*!KCoWQPNZ7k)6;MZ~wJ`ybVdqaxb_Jq3ra>C)bg#!se=r0>OZb1`L8mL) z*C4mCQ-rR8L61GE59+Y z|h==~m%C9W!3E%`~ w>Ihe5+s26GCV;nHdvs*%XJX?YY=Ki;xHdUJn zC&|+id~d$n5I`9T9!>NT+$o(n!KMb~k>^DF?DP$RU#!zSyYW856Qqfx*M&xHqpOR# zA23Y_D&MR591<+<;`k%5jF0i2NsDP1Ygm|eco+@Y7vAJi&5Px E}mt
zF2}GkO{1l(;bel8f1&dyd;_U9=W~!Ej@-zxxxMd*I8q$xqOZNRrRN)sd5f9jB<6hW z7L#YPc|0mG{P|UV8l`+`MQqM_lGN|ZX=msc+u5t4I*t{J+l1sxow{0cBhjU2-X8Be zWS2*lgW?MnbsewElk8uI7N3a*=udi&UF`TD<#oKCygGZ1mxY!#^+lZ`L%7wTcIiVc zIaeq9S#Q Nzfl>D$w_)_q~c* acQ7H+?r~|6zrcICAN)0H zyxZUAcN&A%Lmc;O*k8_P{H3?VK5a71(ba)UAxzeNW-r_4Z}Q?EW_X>Vc$?J-1~SjH z2gf~&?Qnss)LxrQ@do8u&Eqo8xttl+K}uHPd!)FmI$0d}s`u|TFr{0iI)`g^mGnf< z3aPCov%16Ono9%1qAf!FqYadG7}A%MScSkbzIHX*gCK)@s?Lwqyw()loF_yj !8zuM4^*c{!h0WXCY4AzY6Zf%gh^R&U5wZ0HFD=uu>iQ@p( zGWDF)u{8(d<%4$tbM$B>v!yR%bi+VRq3fE7CSYI<@Q6vyCP=i)BkK1myLMF`x;|$E zp2CX;i}M %QMSLFH?b@s=9 zTIywe-Mg(jxg0ydZT(rZE6f5{yvA+g>ajRpj{{;usUjMlHNA&Ej|Pf@n{Lodsg^71 z{E8`dn(*zl(LeL}J*vm*gl%xKzEpO_wNp>aszX?R3eI<#=8oU(_CHCTu5~`TBQMg^ zWt8&6>)1LoKSP}S*uz;|57Sd9kUpA;^8wo3LT?EBtY3uo-%;~4kUtyo+saD+$y~t$ z%4$Z2pVH{gR8R?@hgjaD3ubqf2SqrA0yhi%jnH{>yYH?q8RD!6JDKuA8yte!W09A= zLj|r`Ejj+t=f{E)T}Mf*IrFF%mD>cK0+($1tapX?h+4d*#?~f#qHm$!2n}7PL+RgD zy67?ujvydbN~TZuuw11ik4Q3|wa*kGx*{f5p==c)+mg|~2VVCRX 0lZt{;Xe3KHEx-Dbf;K@8L-0=*`IAg|7g6xZ=-7+2v8k~a zf}Q@+F-6(1A~q8>W|h#w(Jn1UmGv&IMblt{o?u(W3!Kh{e6=CBn_YTYMSJWq1!1YY z;|aw~muw7C1@=pJDU ttyb><(_P!PEanbM`q(S@ zw_wv<;vJXD3=b(8S;x%W 9J-f1T{ImcZK-oRevqt(TE#Ze@Sh z){CP06Kc=!OZ4o-`A{Qes&f0b|456J-!fJ#jA;8h^glGX*Wp9zb5plViLOfF0MeW7 zlzUvqAAdJ0#ELrIgsPGq3Orw>GT!Mmz-|VFN!`ij9_Wg;YB@Dn5p{Tf2fu$S|59DX zZ9HLDw}3t)`>6E8?wNkchvJGON1E}VWj8prX4jR&()i$+rcnWDlH1{a$|k)q{lqll zrHotl(Y{kLZyIR<4r@7SL5dlS- {HhhjY3?>!A3jlN2}tDeu37&sA m~vEq|3}?JTL-5&W;i|IRXJuhdDTZFg3n6X7O?v%HcY#9bz!@Gotz zOEOte#~SlaXSbT %SG|tCD>TKU@P)5LrJ%}UEZx-kKOgyG6=eJo?QWG+?hUak&h-q zIA2IDWet7WMcvi`x3uI=O^%r{CR2EH0}ku7AL~YoRi@?Eh2H@-t8l@`pm97sVMM3b z^j@=AZeY*G$BZ}E&TN;jrS@*V9{{Z0Q;SsWB6;ugBfEZDA$`9>uYlQm$oRUeiHzg) z+#BW1^}?VOtz%)C;yy6CJS {!nw?bV)-H zsCLQgADzZ#OA?f9TMy5+?K)*^A3>x{)}tD>;4McE3uoGU7b1a?sv~>O+Tlk@C?f$! z{g#i}+$p`r5|+QyBpmnIU$OtfUT|G1@OZc<{&BYc!0< SVVxb%6P`BelDaZ}rjrV1wmU~4R#0gFBL$YGKv$Q;vIT^Lm)ph1S6lbA z!&tq4?%_aRv!!P5T{_nyJZ&aq=RvCh64X-SR$IgsYerF-91lOb&NaFIl|+7IC_$kj ziDG)fOMLF(Y+?ISBceyRN7d-NNhO!LE-=@fp@<{rY3jJzt}AR +9WZrG#RXhG3`o8OJG+n5$S{9_x{JJSMJnf4g`(IgU zvI^2m`B2Kc#dISkg8L`xom*o8JP!kmH)DT3ZWOCgI<#}PskLs{9*$3U*`SfvBlz(B zu`uBE%VdEu)i{J9!92m-gcl)K1?L9!ln%VMSFQ;gpp%uttcamTkAHD%ed2q|=2L}I zhZH7fNm63(O_pVCxic{@=RKjwR{XWpozAUvFXr!a-8_Rq$dIZaB$HaGte1iPk5HQN z8L!4m7rIvs=lW7VNOf7GSlSpG;zCX&Vm4a#4)dR|dPj08y-zq%n-uOHzan8-BtH3F z8lP}A>b&c6coZa~RIIspl-c& AbKO6Tah)^RB^Y!lW{2|pD5m(!D_j$D*!5#uPwLiqB)5i_i{NX07B&EMc?6} z#aTeRb$gI`{(9g-d}7do6c3J3j$G_l %Hj#iHdnM)ak;t!FmHBV)< zQB#)r>^zT_ );3?kWi@K~UJQet@Ug8?8 z>FHgBOD$6pL^U%BX&)3X 0hT!-i%JQ2}|@xjHg#BZ8mzsSbM`4#SbBPCX)7 zV<`9r4Z*?HL_*ekCzmlU{68=K^axbF=GRy2+VjtcFX>boda6bR;a#@Lh-A2^M3?PN zAw5>Jvv;tIgPvD*JtZl?M8F5T5{zGI21MUPNeDtrmfneOE$Cei-bKs+!8fl(q+1d_ za>SGs-Ig_a;4I?eDWSYbBmbD0?g6Lqdx|ZED^1SLkv&fu&dPJ<>@~uwv|k@HO3P;o z{Y`iCqRhmOuzg=K6#uPW$^F7){r^S1UPtOqr6&fls9)a5W+Uv!XP4T)?a15#*Ck($ zsD|Q0{?f1nKYL3Y{?f3tY01lHhL@(TlNa;Wd4AhXkK_rkiv$S!OUEq0T3<6P1_|O0 z&cwb7LkKdF=I9ml^!1drswP7komTLeTiJW9E2STS?_c~~RpFR|G+uyJ8T(G--YcUQ zfebX#BJfI0$0YDaR}5QB>BM!#96`gZtceCHzJL;!`@UD7gYoF2%MBmpjC>iGWUp!q zn4Q{37m2fpp*6EmqQ44>_-p~~MqZc^gl+FeZFP6L6m#@zc%)Z@VSLx+33P0=B1v2( zM=0t!!RANg- 9ul(ySXUhkg!V9q> &vI_8K-41uU;}l z?DHL+JuVMdYU#?d;Yyq o9qS>B3to z()!oFv$*A=j=Q?s+TFwC|5`EQ4WdP1UTQ62DOM+`@8aaRWUN%-eKE>rUhtOtcfE?w zZv`&GD=d2nBbq!m6}!gqOHo NdV?!c^-RCd3 zdONOWDYoLOp#*mvW~HoTYr{=HQy8pnZ3O9SVJDQB?v CH|uyd41 zt?;3@()f&hWiT#1zZ=Gr?yy^@SJBQ`uuH=lbl^xWBU9CowfA-v5x+vJxIGk6 )}-V``GF7(z{$nFRmj1xD{|ye6!|f+~|-eBg?SQdI8E#Pqv3E8K5umU22AigUrbS ziFXonwl3RW4BG C_x^R@5Cht9LNV2-t0 zl7E{Kx(zSX7F+=IyAo9AY(-vt+ @5t=mg#NM{|LN;B`QxKrKUOwPJpx(jI4CuoqF-c{1og@{DXo+OkSecB}N#A=ciri zU|V=wI@jN*a1DLbLwM%M1u8Uir$t+Ey$ZB|Y&IZ1)i zS!;?V73_A2kzccw7V`09W{eV}_5p_A1h&)}vzn>!@j{=^aMm=}uJv;As@c?sI)6=* z <3YQ%9XT-R&gSQwkh$vUm`ItPXx`W4eW@?6>6+ znIisC5w=j>Q2=~Noq8o-WW!k($=-feO`@ )-4Z^Npf>|str^=bYPae~%E zUS6<4U1Qd TqWplY(21tUTGizqu}0;qLNrj{ zxu3=$+WWc$$u{09+*Jw=RUcY$7%XQoT?(8CJIa`JV1%*U_W8! Qh^{*kT?rxy*Gpf6LKExd5CAa@R+x#^-e z8~19!Cu7iN$Vc^(PE^wtPuE_P0MvjKJTC5sIfOo0%5+>}LT^KI%Xm@Tz42h0?|pV6 zpO-+@^>3=&KH>3N_E))6=@2`%7j){Z9E-t=jxw#uYe|_&yuPd7SstujcJC@5ol74X zpgmTykVxg>t3w0$LX08*`q=;6G_wRzVMpL@O%J|Cw+rfn>eHXSFKFo<(cYWRZN<9i zK>Zxd>}DTBMU1yJ7B`NAQw$x?J`P*y)#kck87QMDuv++ucEmnJEmni=G6z|p*I*^% z# 7j18@3+=`4j!5f^B>z}M!cng(Wk*_SrDUH~5a(D1-? zjQpyktMJgR%)?!DbBszyqE@%i5Q9Lk)>VZ;HFE1Z4HOzs-*IQODfgZ84iON2>9?b+Xzewa&MnXBg2GfqgedyJ1|t z*kV5Nc-eB~E?L_sVTo$5T<%m}yY3}|ljOTGA3pqw@jYX2ADF7t31Z>hB>5+{WXPWj z)7^OpHp7EWsCP(MF%ds^#a=NZ!bm=r&PYZFrBll)f>x1_#`RuzG!Z{|RGhyu9_K_F z)GkhMQ`#-4zxK|G(utdqH`}o#(@=kjXPbSyuq^9VDi>?r@Tk*Wv*zGN?p& &A68hi1&S>@`QU8?0iIl8QLDO^d*>cE)t*7ze!iH`C% zM_17u(2kd)1v~@K@iw&Wx9J0)cBsqACeo<-pd0>l9jDEB?WX+33+bK|63xZmnFKE* zi^i=;LSAXrn2D6 (`Y&uq=fK$$ZYU?HgKVOMF-guL-VXbiZWj#r@)|=_p7JgDoW3j7L!@56zV3LX%15 z_%FZ?zOHzN=mKEK92WWWCta}*^S_>QPTMo-&dslFaf+XZO@3M?p3ZEGl=t8uAOIWx zE;-3>ev4E?=f&C6DF}mPjPRUW3h{Fyx0(L#^}{z8i^#b|@7NL4JqUkpSu@+QEIMsd z!|o&ny-%V_x|6E5IfkEFUso|dZn-6^7Z-F5WlB`^r{8ZjTb MC2 zkjMNk_>O=rU2pNTRPf~@@(WGexyUTShQn4_0r7w`BaCwuvJsBY98Wd8%YbEf3FSJG zc0Qc9p--#f0f-5v>`hN#9r$7o2=vAF@GIhp40>$@N!!~({&hPL`*1+)i@$>lnNI`< zuAvV!s fGv9BdK5EBdqLOkdC;P(kqX=7@<67_i_NERlwcUE zjxySVu=TtDSok;*hx&a3h*Ie2jw#?Z|4Z>kCVB(tADG!O7$i}So831U{1a`nYS2%5 zVpkDXnZ9$oQ5Dwv9R&mI6vC}fwY3I?f(OEDRK0G74*P-Qg`a^ W0)x@l-j@YeAI}a7 zxHcPXnBm_`$2X*VFaHN?Zyi30SRf4 zQgRE@-2w{IBHc;|NJ%&R=Dk3-dq3yAzvms}{pXCag|l3)b>H86&TG!=bD6qS^Ch_& z;j^s35n{}jMIRNTI^w4g7gEX*gx$k-<5Zp=^35#`E+uoy`TCR$o0koXJg#tiJ<=+? zH8s{ dT&nk*ZymmDA%{j!{VoZdmZ3eG!rk9OO5AMJzn z-~0Z1VcjA;%`=$c$P}!FMdNd5_9?L(Wg9x!*D=|w5hcHK*GV#YiA$KW)Ql!Utj7U4 zL7^~M?Ce@g%`BAF!v2| Q}m4e@Wg z Gxx$}}fK4+OPNl8N~7-E%RuY}CoL+nW*5_;rWw3!1k3FGcSy YbgldI{2c?{E({IS#XVsHOxB|B~T+GJW`ezp1D-Me!( z;}1VydC@h4C+KFAr7g$JjP0j27lyH!5kLrgscnjV)n~Ud%BzC)Mz_?FuiL~z`mirA z7WgcudXAUYWvPMDZD(wOV`t7;J~-yZOe|Yq1$^Tx`T0bPi#*iMkLQEw`Q&AHrV{bA zT}!5G@%CId ?yBzt>@ngO=RL^10` svs-@LX=c!QPMYtR+`jFP|p 0oJPWM&=eX`ve3- z1uYvejTtd{8i0A(SuRJ)pA8yZ*vp+Yf88l~hZpg28TV&ioryJt%`eHq{2NJZT(*ls zP-?;;;#A*hGKG+M`P8zZnWiz8P54|!Fo`#J?hY$ne1gi;6MJeBPW#X)VE_CcYt__l zIy5lme8X49*2eQqdd#c#Gd*nwR$T?7g?H;dzBq$WlA3h(a$inj>ul8Exow1~@r~>Z z-wkx}Wafgoy`O>^YkZXXdDwFhk>h{ >=e<1KN4*>FxzszVT0b+$ zdG0xHO^fVpwz+8|M?t|bTrSiuE-vDixOB_bE0c9JoJYEbwMPhv`;#vYZ8JYu_VGTj zrHu~_C0QFWm^(y#LhQMiXN23Ve>QfmXw&AVsr>DK)5h3pu$`A9Z2PW&e8KE0ixP9x zS}FopPx$WMp?W{y9=~tioyz%EWMAj-0Lfu?m4C1kYg1v&yRJXZlDnc^*4^RMrJv)x zvsh2<`d&dc(sFAhiupDJ@P}43%u49l+2;ZT=cS}#x<}06Us2kVa2(DlFdos;hJ*{s zhB7DF{q0nnb)mVT*Q=!drThhF-$!a^pTHof382Q+RB`gjqJQ|{!TDDt*#UEMO)Os= zh_YyCEp7E&=CtFZ3qMVLl3+K|RAe$2m4HdAoee*^b$1%8UdF_Nz|8Du))H!1yV9a> zw1L@NbH@3r6`a1OOlp1K_h%b$ez3Bf-e=abZo-{xjo%*_8Q!0|-gBnPo~KR2$;oMK zl%f8kTq#&^shqRF*3|EBd|~&E;xT(@U$Ckm=*1sN?g@*PM)5b6iK*V<3WkF$dla7e zSC7Smw5QAa==j$5bLv*@wN*cdVHmqeTFy4#D&9}V43#NU?+CKsZBSaEwY*)lgx`!R*sKN>mvQ?r-J2l5fNG& zE!s0+>q2w~UH))Gal0mS$NDv9sz9paW|RbQVYHs)d&~E+4W45tRAP<2SofP~tXJlr zf)Q;6YM#JU_86A kldHLD5J0|`UB%8WiiL}x!5(Ffr72~JL4fG$fFn%Y~h zp=Od?)Y<&Xu!=WUg;Z%Mi5nfbvUo#xvKPFP5C87JB5m95Y_2pu& K|C3O z!K{JyVP8`z;>?xo1c@lSq`oZAh2=fpx*oiuP15?w+=iGc=_0Cj?F;U{ myt~duK){S$ zc$WibP6|r+%*1i1xRI@OurxkS|7B^6|7j8otBc zd8sCcPPXnfOUvwYH9%W1559Q0qQ_VkY;~Q83$m>fP2`}qIp^r|zy;QkYyBmzd1-^2 zCq}Grn64rK2iXlZjc&HA$L4;A{aJdbLOY`JNUZFs5U0^#C=x%OSM|03(U`+p*cMl6 zsrjFEhEl)*m99^AYcFA`BlqjY3Vo@S#<_EvK=05VY6;4NmZ3?9z{|}DtvKu+AIlF# zpdTc5nO3g|+f+S&ZpZ=xX3BpC*2oTY`#~oG5FdHhy}CWFMfN`8&9a~N4ZWAAW^D&+ z^=Kr@=;pVZIW!_ea{EYU->NV6Iqv>}$FTl>c1?D2Xq&@(e&hNHVI#}Q5+a(etlFB? zBu{%ilJmubZd8@~9akOV!TwK6Aje^YK|4fr`)=UJk&=v}#4S+uY@$>>>`Qd3kJ6R` z>TW7X={2%CmIjssWs}h`_uKcbkL*GNSD0bBo~v&1^%2tf_2(rd!+NN%v~*qO(V`E$ z3z`Rw{pbx@I$F=o7#|JZz^TZp3;_L!Ipz?YDhlvRK4VtQ>C`wY*3;@bvz&-j{xGy) zQcxAm?WMjj=Ga_Pfs~2@C}nciVAKz1Vk&KavoJN3A<$`0Y@e=ZzBg0y~Bg+d1h7 zQ}X9-zWWbX!sIwTCgIsTeCB+`36Fu1>GAI5^z%!IY^uuCh6+yekf$Rz=NLUOYQdHUW zOD PTSiA4WUyJZ%uKVS-TyQ^>U!G^5%^5MoFGdgxwm!y5}nIgcRG1I z`5z5T-6|W}7S5*o-)^POc?gr75^a74Vsa_tJTLNWhBJKBSY_B*$n`YChIlSk949FU z^;x8Q7G76cBaIsw9h?{5D=G65>}c;7DlSO&8(YI*-YF0O7)C-ffl6+=w?@Kb;8Ho4 zts`Qs3z3BN >*W?KHmfb6mhu(59u_b6)ejeD^kwgf{UL zCQrQ~!hS--RTYy7f|PgXMqq~2yI=OLGLi4?{s`{6G%{;|I_Z$qv}NqPB=~mbq9QcN z(A^QLmmmlHfl3U|##?a5zJH{OA{#k8E?gZaI3rBs_g1jX9vpkJI6YTcMbtjvLX9rJ zOb&1znQ8&as=-E$#xc1r&;egVo*4DFd4zXs#6;?l7faoX+*lRkBiRvN)IL |8>=%tKrov~jdv|A zDpL8Oa^ej<-g1a#b8$9TYzK_sb&tYBRw1>O-G5(3YeC1&w!m~e`5F@##8OgI7Y0l6 za&i`@+7qFEtRyESB9fJn0bJrnNc@gC@?zJsDP-NG%GaN62 JGmZmnQ8kqKa z7d-w}18h;E_GLF`*Tzu$bvX>YOj6gW`S~~@huqG~7~Z$)xAzKlFFx 0aQ z0}2}nmZ+Pg=gzVERXW~~c?$T>v;GJ{t}PsGEeK;Dy!_vABV13BVg~7Q$5`E%U&QAn zujfOFFG6N;G3w@}fn1}eq|E92tp5c%(mpd(iT7PjUbqWP8E|1cvxo}~Y!ByEfPjQe z76cT-x9MCb*d_%>CAG0`ijHhdzHwM0U+5POK^}i_VY~9$3>))M?^WHNl+hv}V}~`> zYgNA9LXw<+8W^%-<^~0k$)#OLKS6L-vPek}PxRfp1wBFO*T&eCvqWZhy0r8#-2PJE z^)SYy+8mN0I<2l+-9sFb`@XkJn}1+oDqR6%=gz?Ls-y8wekKf8h4YO&ycUa4Y`KOY zoG$c8< d_$A;JNcQTG9i{)zUWaQp4!sVW zf-e(2G t%9IJNkgiM8)QC`|ow`I!Q@L~hn|nVy^}&O zZ#@G&`UUdjzgmS%P!WDqgP_>gGgBH*Pd5SRr+VvI9Qje|&h4u~8|Ij`OQhXUwq>gM zN_op&fZ4cIs)FD%|Eh+}H!xwA?_PVrFE0uE(Haqc%0_bPf%1lW_ni*OBcCgOEkS8@ zJR8L1anU6IZsXUzeKhDRx)yW{r*(Cn;5@U%xkm=qaZ(to3Ic Jy(_bmCGJ=r)ay|v28@2VFx6P18R*ig&trE*c>`wEijZd{X zgsnYU78osjw1D$QMf8{1ROGW9Lncn`6(;eZ!aY16K*`Y^wrWs@63mPRid62d4eamP zE#xGIi#`9cAXQ~Ot;FQXgrgxN`^s*SzHGytbCLTZLhM?7KJ$ _%#D+0ooxhj+X$yuEL#&$B6}^qfYlyk2=?B241`=9 &9Y}JrEjm?g6v?}GE zuz*c#R%YBD=+8<$MhT}DV>GK=cLAfh4P?~8d&_Qb9{~|Mn%8s-NY~_divqy>f8Y|P z_mKb{EVpe(LGbKt)p;|vU4_xnyNgz9YkM|Y$ovH~-5xQ5K!(8^xxJD^-)U4O&c@0| z1P3eW0Pb=o%WW;Ho?YLimN!nLW#dHE*hC-mU3Zg~Dc&$0W)1wys~s zE6bAv8F3fSRbK?I`X5c+Su!#vPR_RGX3hNj?SAAugM6#2tCRxPf0dUD< MF z?XgcHR+du4OHccel*1GPyIECsI4w2D>E7WwQNX;i283r=qn5qMpHoR5FT`l0#ej7% z<@HeJAl|@YPRQN%$6cHraN@Reoqhf0IGODCJ#1hPuI&XLtY;9SbgxH?b4M*rr#_0< zZs35PO=T8MdlwUTVxd`1J{LjXsIReYK}3l16RVQeTv@^04<;n)@oNfys;79AV4r`L z!#8Rx{`RD_7I=Ua6}jkRy{TfJCI584mQ8GdfsBWXZOa$T5e>N-3bx4ap!~priD=On z7DYtuN8cUHnSJMb%C 1vl)FGMNFh4WCMdqWb!=XTNNU; zmazeiEn4|*hd~O8EA#M?3mqWzk|wQv*#}|^jET#)+ZNW{G>3P+4qkwAmzqdXa-R_? zyb-ngy$31di_M3#a^`r>{Yd|LeueGEj$O@Ae9MlRX^rziw^>NfW^W`hT yd zzFlUzC)0i>?BHebKDN=QHH$4yAO8HHA{m}XwBv2zzq=)5(B4%%0AO#6BJ?(nF7xQ( zyokm&XQ)jT?8+dc?9Dv|@2N-o^ym@~3JBfnNSUK+s!C9RxooFU<(6{OHGBUV0+>8i zW!gb16tb~8U>LIJfqb82%Hr*vB^RO( G^S+r`iwTpIt6e;LWOdghu&Jo0l7F|Tf zzfe^iN4K&MT?b9YFS#8q1|;NfU#?uJRYLzLEpMNQR=^nE3NrIYt~uHlyJ kZ{5Oi~O?RiWNN1}O&d)K`1fs}17! z;V6M?5Np`h$Gdf4j|Le9WrF?d=KaOoUZ-`=+%(ZTLUIUI46=Z2ZWaZmPNvZTO>J zh#N)r+%<@6KkCCr9%fq+^^*5cLOgZQM*)T`3>yO;6&picy!wSBT4==(F1)Il8?1~R zs%?a^@{jEfyqoyerygzqO^K4 z7p)r<^&~SAsgGft&lF~HV|(z+MJm%iRRn3Q&_7U^SNA VTGCcu{2v6O3Q9DAXmqNaA3wpbUWOQi*Li7Vcpl4+YsQRax=Vd2P;&2# z;gg@&S@}3N9!$hcqZg;>5`qelSLESY29EuzTtw3ZfMuj$9DkEz@Qt+X-6oh!7W8z{ zQ|YJ}Ug5|Jm9Z_Uz&>DUTH3Vz3ry6Wx2N$`F^lF0i{(mg&*K<_Nba9c2ix8xGOq?C z{8-qbZuvS{{ToVTaQQz%iEI+83ir8^lS<@U>ca(vqkcn)>c1P#MXZm*{sAMa`Ra0O zYO-cdjP3SS1eeG?F|x=*W(oR%Wh<9F-IFO#Wiz2d%hTZXDz(gR7>jOstid0o`yj8c zy!Ap4zaelMU)Uvn-YesoEi%urb4#82?q2nCL*la%f|mMJ@^4I0BA;omQsd-Cg*^Va zsJthhvBsdUdQp U-E8i!z+%ml)OPUrh8<%Bu1Y2YU zWCj`g+dHr^?NAi3|Ba^mwyvd|2+@X9&wt_;G5N{Q?pLU;{f#a%SGNV`rzYaY<-hkH zOGVf|Zt{S?VyQ)zo%Y4jzNt*l?J9}@FJq9YJX}{IBg|@1XDM5w r?K*2#W8^K3)ATGI)y$MMN%MdVsuJ|8=< z5{E~H1)I{$tXl&u%dyc*7na%jxkXp(5Kg4cjdfYdAhZ@UZA&ANsH($#Wqy{Mfy45= zq++W{D Z08vX|7GZJW=c-9KJ HZ|Z6>!U$0|2yPS>%(qg{Vk`ci{yT$}q_>~wao ze?ZZUF9&1oWOOL(jlNk!Ft!VKEfmn;(h{JJR=*Cj5|QyJv|MKnshF%L^iK+VQCy%G zva%D;*2;IP<^v#RSYKUL`MKC|+aW3X(zRg+c$kji!SQI2ufZ>5V|e}6!Jb3+jePW; zgR|q2^D_RntY_AM0CNi-IcMzCua|{lSFoX;eBw#V(ENZ~d;LQV7n`35Jp3rVpsYiA z;r+Mdq5nxmA}AzrK7ePC)6q)!aa(Rb T(n~9E?}o?`POXE{d35K(G1QYty+TWOG*4&~yy~vJzL&h< z0@ThA|AIMi89cQVw7D;0p&%nL{g9yvqq28ML*(^Ak3tK9rQ97W@m0cH$e=sYMx##_ zk9uOE>yZ&N;VfC+$$7+!uDmuI-iY375i+#p^K;Vtn#`lDch&)lhT}z!V4x?np?f$1 zGo)Ag2wt zc(`wPTBYP7kPg1|jkeg%+el@JG%w?x4YW|d {m(P=KHg(ccapLT+nh#&}gHmcPjdu+AmS^)Fp1y5_hFZ!Oy zoo$e7{2WK0kV*T796^ 7+Vt>Oq z=sss6> J6zYQ|!4~(2c#u zIi?F#Tybl?ieW|JJf=NyVOtfEsx`fNNurbZe{c@QgQ$Umb3mrqIEL~|<|?#=@2COB zmi0jLV_q0IZ9EuDyPA%npoblPk@P18t-c?3u)@8kCs#;dI-t~g?1veQKhp}0qP4j% zuryEJ)NCNSu5Tor ^tIleZ% z#=Gfg-ZN*>kiHWy_Q6pA??TexNQZ;yY6W&}`d_g9^(As8t^TeV+3g5Uo$yjDlpd*K z289%d6ziGpIHM<4V7w_L`C-RVHP6aUD8Y_GUEuD|pb*c^W yvUtcLeo z_m|L{egq->3|{=-efeE={aUTHbygE!C{<~rp6Ed}8RWUZpWyd#aLs$!l};p3O3s*5 zW>^0RN&=NJc$~CuQmye>jF`AB`Ft0~lfS%>yL;req&NK8huPxWXHW@e)k}QX{I1Gk zS)L}~CO;RUQ@V3i0fnlgXIAI0Poz_Cx|^0(ao;qFsL&*wZ3^f`)bTllC JHxr8du>LfN8 zHn>P Ijrr(HpM*3!uyMF zGGR|4^=bdH^ga(l6^`%e#HP0+!4yQ4!csLOI*}Wg7k>j&Hap2tbw1w;EnTC}SII^F zsUmvW_B B?LgDLje!=+_x7*6 z-=+O?bK@486RaZA_KP2kpx6K*o|3YDBGW&;7plnzWdm=&Pl}3*hhIHcP%k8FtEmp9 z52c{v8Tw+A=taP_1bm)SGX_wb*Ki}o{bxJ8Mt?eVj|dz?);)Fh^RvqeE3f@1GJJN* zpe^_)9A&e+Jscm0avxX6hJ5tpe!!oa;PT7-z=ZR_k>Zop?Ybdmapar+ecDiu`zsMH zwtCAZ!e9APDN>!^TjucCu@qvyD;$Lp%bJ452k~yKH2mJr@WjEpBDqs!gss!kYW*`a z;H$5`$Vc9V@vFYLkIzr+0(5@!@=tJhB%{f40mNk^3Esa}I@+VHyBzN9+oQO`y?Pok z9zJt^m3s@2TgWk1Gap6|6Z>;|(VmYOv8+!M 4y=YD!{?in3vrr_k>mC7uwTnd~ z=H`+X33X)Q11*uYxxn~vMBS}8a}EBa^UD{}OHF0HP J9gB((< z9zp^#cm8Ex+ r_7L0*djpuY8YaU!GSk z4^AN4C-<7?D>#e4yoUV$@*1wnuBB%`>uGM(DsAv{iad(7gk$l9iDWJ#=HS3%QF(W6 zxyVct>r11jDOooMEL2g@5>}e}AoL_!mE%wkg^^;aywJ_}%%G$HkH_3yHaQfkokd^0 z1lD%G3&?NuB~3gGl-_N #$>X2HZH @4^ zkp`KOe{jH7XE0D?4EdHsY8&$~5kpvD>*qEd#2+Fourt^wuA}!S7_zy9+muMhq0VT^ zrUmTNW%zy7jW~hp#PDZm9v*(zKPniqO6wz{m(JZ|1zIyT)>e|E_fb9PIHPPU?@s}$ zm?%YDq;?wCkUSbE_JK?I2x<(aUV_Q;s}vbgf!Get`>?VPmBu1#mJa j)LYDFY@lFqk9SEt+|M3?lob7YDDgf-mqLzK@*8lQ8 zz-noM<^E#QK{@)e9DjWgKB$`9e#)(om~en9|NE#>zx#mSdAH+w0vr&Ze0kZIJaUYs zpF$0}wr3JCYNl5FwY5Rp32AuvIfATf?z_V!m|LjOgiwqdv26yB{ed@@g$216CUrxW zb4<}Vy|#4xw @agX)qpCT^QWj26Hu|7lzK` M{TNp0dv68&Ncz5qRPf YFe_N}4`Ye-ExI!({>dXmRTD6xa zJ@KZ=M;GQwuW~qq?OS>On|+2;OFT|Kic(}rQ0GTfaqj86nW~Jd0~hr$9!%8m;+UM- zTeLe(fH_k5%x&^0%KLueP~(t_`UTDB&){>^Q#}OueXjVaqd#sRj+;Z(^rkIqG(`*L zt(@4=h;X=j_&F{{LGhA9GmmFL_XzIgdBC{VQRiEJHDg2fEOo4ZCZrzpDITW0?+&=E zRyT31nn|p7-jl^nmskFfJd^BNfkM@KD4Wqjk8z<+-^}TQLsd|`WKv2V{459hk0(fl zGPcZS1Z6* 2J=iZSwXURvo#64S|ryYAA z`SM*@?Q<>1|N9%-Qkcjli|)-eu?v18K$&sayJa%-Rjd|vH!2I9^|E(rvgU<&H)qL` z7&6C7@w|#%*8~!#SeI_6KU^ic9%nl#mJzbjYA~aM;g~fjgP)7hh(dkiYF2I?;~7qx zFN7SQt0D_~>e1C7)?||Nn4IhAiH7xh-%q}*i03ZVOI!c;?oZs>FRtq$+wV$9D4G#y zp43SlS2jB0LAjt2)CHS5Il7y>!bGhF4Nj77mzjN;;~S9VAM>oMq$|&!ruQO;a_Z^t z-W9Y9L)0A8ZeGyiAfX7~M73^QCr8#@&6N8-DKtE5{=Eq+%y|S=0~ad=0j_IZ6JA?J zMW@`^UoOovm807xrYDG?NQv~`xfID|TO)vTZVHas-`LIJvV)b>ZO8xO$wUW-V0{~O zL|ZrYf9~v+T4%}$3vRvj`KLkisZPmZ^ NU zi=)Y&&Pv@!2lNhLaDTHJT4&DFhIA+1R-FoW0XLPj-NY>8Ul%4{e?J-U;mM|F%`ufe z14)dz<+sws8~nGP#K77PJ|^DHEMVfs1b}W`#DS@r8|)pQ5+i2az25TSjKY(jXSG?+ zNNo7YGCjH~OO9=Snm;a-CBFG+Gs$fLFk2(69u-7~<3IPz*&IQqY~tZGwPCriE$$pS z-rt_ifOmycz^sY1avcVrT34$`KDzpv4mUultd1Loq%at-FQQ8z&yy({NCHLKNbv8y z) 08P+g0*(4BR0sQ z_Jb(}e=oUKmF>0K327fid35|#FTtN(>*=5US7C&{C=IVs5ep|7dsiLOeL-3P`~soU z{KB-*>#bpow>p+d%m?HJvy0EoV~5)b&_^j&21POUzltH;1;H~YQE^eE)5_qZ`_EO- zU_Lgg9SbQN{ W65=4Fe(m`vNDI SL4 zM3Epglo$b*5@9XVtUYj4QTS&iuF)kw=I>B}#_LcwL2SmHocBNDBjF4JuI84)`+ZT> zL8JWmKeqZ3dtXnSB1iD3T|XE-#CwRw;23nDR^exz)e0TJCV+#GEACr23`AdY{f)LJ zbHk%j k$51{+b`}9Rx)@?})QutsfH=U?*Uv=HSlwR($5pT}J=aXn%x(4a%FO_#M@1q$le& ztZYhUx`x1_^xx=%(Lg}ql-|6WI+#=AG)Ht8PQz%VXyJYkt8|-FHxFHv%}*!&{Bo=( z+$8@XRJxTxVv_<<(7!$B2VV1sj2Y0M89IK1Tps9z>PP|qX#Tao*tbQaDXLJg=G>+T zK0%OC8_+7-f`6lka}w TuIG-0Q|Ej(Z=4EwK^xN-oFK z0<$i_`i8Ysk~tz60W1rRXx8K2y9EabTQbqyG78`0e|Xi^-jRiLcZrhD-9C(fk N! 8bQ0PLjdGhS_5M46b*u^BWugdvFGwHWZIR!I4AUyOQJcK~VOA z0g|DIv6CMQ=$`eqb80m16$rqy8KBl0Npytj?IqVov7FrF^&!~?v(`Sdu45Zs<)CLg z6t+OZhxJq#^9ey1oy7{9%L~gXmd5QxOQI2V;o7oRqGz9u$HRCIK8GjX!aF}}t6j#C zq&;hNfQX0nOK@K{mWmnCUJsF^(Rw7L+5BOanjLe^EytCP$&i&Y4K}!II2#r4&5kw zW9_hfJ1ozpKkt{_Sm(^#Ic?8FW3XEpM2ILi)4XDeKl$XmAysX*ZPtL4$K9^okBvi@ z2hCIr($Pz{S_8!Sfjsu(Yt3KR{JZI*2h&x*^_;D5^Qk;Z%W@&Xt$V1Rq(RHU8)&H( za#SC;NGAk7>)wMq?KtgK+2|JAosGruaYL2;gFHU_Me%Vme0&(#^{!p1WF>&-nE%%8 z0C{8B=Cst U(3 ML^&w@SI(%!6r_u2&B$pnn7b22(ytky_6|J9Qv0(vKwuh zt@lDmU#40tgz?FA?J7;?!5x&QY==#hf-Tb}e&P5K4du}KW3V1CHkr51L|l6~Gs!f- z;t7X7oS0%+qF>zw>?|l;QcJctVh3%C_3lJ^Bj8b+rciGryAQk^iP=oo)<}C|v714h zp4`no4Cm_|2I^i6&SdjgCasyYtbDRT{X1sL#hMG>Pe?v(5^n8^KdY}b*fhTReLsH| zcUYQ`q4SP_vHHok8Iy`j9@9NSZFwXu;CT{Dd$MrN#ZDTA$cipOYiyWAuZjs>CT8_i zRAGPl)D|_eeyE tl z6Q(7k^8H$F0+Jg NLSXvF!J#2SAijS+hepyr 5j|#2UN3L)E8~Ex?(4jPh* 9`^pmi%{|F@n00$0PqAeud-Nz_G2X_;^W;Jh8P%l{XPsI>&)EN z`W{m@Az^OKKbjG-RznA+>-Xsorp=oYgAd-Ts;3=>_>PWAkU53h3bwOKB#vY_IBc#3 zahNOq&YcrH$yB4XS*`y(7Zb%0vtsUc-iAc<; Q2-al7u8T{aq)wp&h?0SucdDOg8d+AYp^xEX?cfl_VuzYNq(rs z4U0@+o!3JK)(a+=nm*-ht0kc2-`1<=2uMmv25!AlLLX6cYOr?|#w2f{`TZ-wy7X?u zQ534dBhOe`e81F^o}huOWGmw0cQV(4ZMSZX|5WHld4uIPvitEMHc;8?wp!|vqpu`X zUu(bKK6JTJ$6~Nbqs#x@nuUMi24=y?#{}3CC2mSx4m8Qn;CZ;6KX?&6SbySO)1PN3 zKC8f4HEU;}tsOTKm;7tp89W}44x+S@4oR>?2W5G%6T@kvb%A3+nuv=dy+q6?5r(k+ z>~mqMJo(qm6#FYGoiWBt5I48MD$KPXV;Qu4F=O2NevCC1)4f`8O7pbcGX ==~MP z#rO$It;Gg2WW@L8fNu7$(~pj=;-au;mT?0aLB*Eue%wT3xlk36v&Y?7V3*9`_`u|3 z_)!Pzjq7B$hvNmGHydXl`$35dS3-w&tu)wJI`}{QsH}iTUVM0ZWc9wH0aLgCydWN` z-76<@fXZU{?)2of&(pIIiF7KF-Wh<3A>8VVS$M_C4u0h)?7cUT+{8aRcB?xLf98wO z6Qa||{xT@_pPC;oSB{}=v<~~qR`}*p@ * zG>!Wk^uL}On=AwQZ ^q~`fT@;aO^WM>pZhDnoMmpYE;spaGZZEFANFc zflq>hB}x+*#q-JDvO-P|JsG5f*e;C}0HX)(ZAaRpH37o2m&C wSS4BA6|cCE|}fPs9DlO(z~;%CjVp-2Yh;?d4E&5-i0oC@8=-NKEtg2i0?b3 z;KXQJSU=6z!>~ZP+m*zW;>=JF8weE@Ymqz>TNA&hmHJtqoYoHmL?B}$Mf=Jvm7rS^ zH;@G1ySz)cbI<<{I*o6WB@;ws0UB&1b4FNzfHl6f;*r-n2bjkCG&F~p(^*Wx_vohu zbwvNW2aWtlo1!Zuhqw>CW=XEEFXn`9rQ-TjFK^F$DFMY4$VKz4ubFRmI3269RLMc- zq8258cE%eoQbs_z4phjK)* C~D^?$=DyI*=@{Tu+>oC6g`YfMj+;y*E@ #) hkHWAj9 zoDa(<@$XA!z4}Kd`+pGScp&i#nM?jH$-!K*!lQkI_2e`3-#sh-l$M^m%wQ`};oXXw z@a*i?VEzpWB2JuJj%?BrFv;LEPyP;>9IZjwg7$mw%k4tvAUD{j4eLH+DB|@X^FbeV z^|Rjh9L@}&4G4C`1L$~EjanDsutn`qxqlhNH#z%qtdO7y4Y{4At+JT~=lU^vzu4@I zugAuylz%>5G?vO3{O>VAv~tHY*zq-ADxXHqH=3M(KJBCemtpJY`hQE0sNMkA;3*O> zJ-wZ4tS9GT9RlWq&d8PbD+bO(L=|>@=S`+hbA-+0sAsmNz=F|m^l1n7JNGk$M(;k0 zw~R@jVVFLtq7J!JwW?Ii(hGOL`8ls&4mft_1ne-xE6%BbOtd7~kTV6FE`h4^))F6p zR3Y+8sj9BzfwXZ0$HK&qFpL3~GhVhytfdq^iXIp*!C#9?$9WD*UqUkOMcoY34sqt0 zV<&i!Jlk+3>2Rjws3+VEgluDDW5-N`n Qq~^8Cu3pZVV;5`hK=8`P~d17fb!(gui&$jpkJ_YK!Ci>|QW<#R_+=Sx92 zIo#v@oiKV_r@(dHacJAhgwp|o9UL_|%Oza%&hF_o*{$hi{Fd;#k2YCrerCPfF~^Xo zh}VrlvOWcpMq6zJ;v 5f7ktibvILjGk067bmEc5#Jo{K_xrxgDa(ubqpY8il+^#FllC<02G|xzzVv5j z+DE;5wKbg@?<*-Yyp(DDtR`E&ThZpr23R=1RsWJr+DN9*+TNnS5|*ipdy0fk-^z7+ z?c5%NJ3gOGM2mN0<;}DlIio&Ovpz&eV>Y5RoE#l%ZX2OcFYo+S6mV*B$sJD^KQQzG zvulV}#05y~_GfQ=rc|Kfg=DmAxK1pPbCh{T30F~VHqB+nBy `Sycu5=13MA%+nwu&x|6?yI;qPuF>?x1SOhAWV@~tvXZ-O>w`sA9rUP_=u z$W6L2?+*76M f|)Ru2>{;E~vlNTZ4O@#OKG`(>Hr cfKSi}zf5mD*yBMiPcv*@!$f7>yX|;+OxkhpJ}&{ppEWyAR=m(| zxkA-`*$@`+>GSD7MV$Vo8FeLyP`CVSgMbl8IE-Vp&XQOBR3p#mi)G`0J0E)q$?g#7 z9MFYQ#osXYVk% D!J_;N%bvJX)Y7rZRp z(t|O_{H j=qnwoI-(e2RkFS6y+&CE)WhP6OurrFxSp)Dww|?> z_z>+2rV2WZ)aC}$lnVIwc39u1RIvTTD%UqU+*rojV7Z!5l&;Vb%GMVNk-88rGT1Ns zNMnTOdXyPu-}&_5mW&~W*~+Aki<-Wfw2+D(31Ol!i9Gm8h4aBH?tzsryGAxe%sSX_ zMBG?*yA`iR+>e{=9DrZ+E^J`tFITztN A9(M utCk4w!ARJRL%ce|66Y=dC4MBK%hYE3sH0#;(L-uR_JMa1ko$uzhS}_iiYDur= z5#RjUUpko&JpJ}fl_4eVymAGZMXU|CtfLDF$l}wtz$Jc2P~9w<6z;@&Zb8F)2GIcC zWZnKwuNBo09mn0o>@qvUQOeTi{Xg_3f{`k!LeE}J oMis57E8aNEjA(s z>!x9zCNcGEY+6zLNp#Q4S=7AC@Va^L7s5LJQ(ph1Rw&hf!|wJLtnqSc#EIuUdy$z7 z#dY}7VdtSBB8%CK*@~lXwBly3!GN!lO;zXSBd9Rbx`xCdEUITI9zjKUS+C%$&@X>4 zcO_3MbPdSOP-5y!Gb1)rrBKHJKW52`u_?ipF1zXR%v#*UnoC&duM~w7wB2u5m!!fU zIM56m&`}&i1vh(dpFA1wGhX?OjOU)*v^V2Jpq00OWqRCKUm~WR#uj?FVGxt(AxkWu z)^W5xB=goV;@0y2k3NK4LwXq0r$~?z;bg|(6<$Bj-t1?1DAY~1Z(82$F;|=ZbYNR$ ztZuE&02OQrxPwCj1FS8AC+Q$j3Fho-&&tkcX!brca&+8kjTJn1?pz?%)&8EI$!HpG z?wq8g@zIYjL^c}~l3c}*=tw9PvX9#t5U{x|M~_g5xbA#@BX(`+0t3VRV99c3*?jO8 z?$d9g*&d6KM?8qEK@>7o*LY&{nGfF-Z`)toWWFubEyra4xZtOlo!$C)LrAhKAJiLO z3_{gP48Vb@!%EE34pP#+bk=9;M^`#5Sw_@gY4fn!O*2?YEj&RQ leSm2Ooq>**3+U!;Uv{fgGvj#% wU9l)4O{RKf_t+tA6y!=uv_^5mtza3&VJ@p4-74~pe9(8^G@tvh4` 03h_> DbHo1C zcZ>Rt?>iJy`DREiil<~rzeynfu_|OWk;?NJN;Kd1gRV5X;vaN$`a@{q@2M+5qm|J( zsU`J3IMJbYN7f1HHyXrXk>u?`#^9~KqsXhLs0@ z2h9%)32-kxX_$}fG?dvSZ{Wq9AEyKS987$VxRsbLV4Lf9!Y)Y(~XN_@c8lL z$C0{EX2yP)`=_c-bKRSnahflg1WP`X4W(Ybhw-zv#xPbFqV)9mN}gT$94!Rk^l`ev zP(D9Rg_vm0!VDRfO-b4HJ9~Z`jJ}f(i$|>sUzU()?d99^8XaL#J5k0Ilrm1KBSL#j z&6OuDhxA6HI`Yi${wlNa5{Gf9dEs V35HlDbisQQFxdT3* z?iDqW_4zcA^~GxZL+UcYOr*tW8p_bA+8cIS*acLUS>9&VMYvhY0iNIjcbMOI4M{Yg z34`(t<$CrYrJsnH`ux1H$abGy)%K9f_F4(!-b`bdla3=G) 4QVGsc7nozuN}hRtr-)~9a~@H3DxU}=?}Yt)$R+>>NzM+n5cdDn|C5BA>u ztW-zxv1H5nscm3;MOHf-UH!bVXP3&4E9;NM?@TE_5_=%Cc>AOkP(fiLtekM=qeYav z fFLuV6oG=3s#tfnbJ<8hu*HW3D zOODYt?8e&Q4a}bn)Zet;0|m`S0u&^Tlv=JwpMIV=g7T >@i8f7aW$-q%jpwZ8&V0^snjr01}5{X~d13 H~F6p#e(!WUCZh^&HOmn-yp#kwh!vOr@B;j*4b3P zPi)41rDMbWZXU~t-tKi)RxRHOL*;;Cy;stGhOTj?2&Hy_UgLJ(Ppsp5V@^TMg4X+S zdZYZ>ecfE%v$q(Gcg?#!Ynw;SIRBaSktm)p)K=6 A3n+xwfcV3U1+<4x)|2`dSd{+Hhy ul~!Ma-TxFmBnM8m_E9iCU_@c}ak-{nb#}nT+@FS#s78qH+mieJa=Y zw%els3li(I>z}z%)pyKeBJJZPwkJCukKs35yjd$8I#YQB^|*=-N)|3r*doz=0vgqO zlpZGP$q{%F)G-fw6zaq&SriHfA3Ali^Z(@+!zJuiSi2@~I zKRcT%`MqHFtn>pKIYF6N%bWD4>&g_z??z}TaIQ-DmNQdwq*Dg)#l7L#^vOQ{#E3PW zQaSNU8vTy&PP8~}w;j{vhtoq5O#Qs=I~GbGe7(I3<|ET-%UFlj?zCwqcdIbbhTy(R zx$GD|U^CP%!jhq0o0=1NLp!;1n#wfuSzpBvv2ea0j&>OQ3mi;`N^M?{kPs6aGLaAr zRc>Eqch0Tnb29ueM+M#=+J$zBuClCLD>lVTeXmW=rP TBeqVJGxS8lQNibi(~wZAZ)eT#DAPdCZaI@Vt)_UvT(3G!}3!oOt0vE}5`O zeT9xuV>GY&p3XYW-CZU9w$^u(86S!Mzs9aLCn3ia;Y8t6&28MyCl`j$sGVv9-cX#&3 z{@U65`^=d;_nh<1_uZNM-H*#%bQ1LutKf9gBldOJ7<(n;RwT1!h;`~l#?aG?#!D4h zd!RY8{_Lr2&6y~N;K{}wENSs{pLTy_?WWr$iyy#I)4PX+I%vLu4ZOo#^O9Y0h3tFw zwz~H|XHAXOIWOm)R%IHh$pdQg~^{Iiu>kZh3Ldb41*~G-e{=4GJMPIr? zIHP-qxa37`*ZU4-%Q%6K?{Bao%aMrI#J(U&I6I(C+pkOZSsrgV%l0 ni(-fX4@w*)9!_Z*V;i R`VaOZ9(y+XJ z(45CQ!PDyx`I_639#T`L)QzKUC%Q5Rz02%J)Uj9F^eVCC{S~ztL7ru==tn34lr2Wx z^iMIaK`R_WcWhj9t=+YuE1X0<*vJofVx) E--c+VEZ6fd+F&m%`|iF<5PPf8mr?t{{ JooPM6Ayy z`3}_h6Ykq4YG$6FkjI>v{}w7e&Y%&CsY=V_7CnZ3*B5qv{yLF$oqmA1H6cmt7uI+$ z`yGK+H{(E-kmK%9sx>R4rjV~L)!+uKkgCDRrq3%OW3G1g5WE`+H!1BA=i-FCf`j$% zf*v2n4vx0(vw(~l*Pmaumi8)Cprbc7sK$JJPj~V*I%qy ebPPr9e`2174x(wE-qg@jHdcj 2Cg2C+S{5cKO&lu=w{)QdG|S)7Myd1f7iK1*P^gu_%)(;pmMw!ViSe~x zbh>l5TND9%!fJnie;gj4$#WwuP35}1HPIV*#@eZB7YGD^`rMr^jTi^HPWE8;)&$p^ zS}zsn73@jnVw_Vo3zMO9I27^PuXasmoBPWM*?jpm%Xz{vY?%Fs;;0rRvj2<#SRA7m z)zv+CAM(qswk$Ur$6XfbBifMaJ5^Oxp#-hDRU`GQ(vs;Mr*#SMjAuvyB~g1GZ1qFj z7waw~Q}6W^J(SLtdZiqz!HnG``45vf>3P-|BbFPU!Op5!)6&7*)p{X=eL6%+Y!k@A z4kewKfnz$rtj{+{v)`6xqP+O~ycn~v>jKi~$Q~xcoxjg-NpwXiW1_Au-;2I!XvQ$G zQ@^mJ=YQ(PI?4RpFawvJ+bZ8~U~)v?x%Sb;0J@SU;Y=NG!uEE~ep`X&DlHnoMo}-* zS%EG=ajol=16cslF=4w>m~@-y$ARpCYP`my(*JS%i==5Q1Y)D++Vb^`DV3xy`tsb6 zFc1FPK<#N(nQh&PcK37Jk;3XgnntKfr1^O_RXl{=UKx5c9z)HzbHyzrz1pPFM%kI1 zk|(%SOL{Q3`79{KC=dZmBjCHmL9FXc;7`@&J~ZbDG|y?bGFA
hneb)!8NN=Ispjgli#w_Uoy_g@|H7sG zwLPEZrhWLM()x+f`9NRdh1}cr@rrM0#h94-LWV-9)EYmwcvwmaxkMc^8E{!r`9>(e z1_h)P6akOs6=|2haF laUH_S^@$qpGN(34xU)S5m2g6N8{`iCKQ;#aKE=F;n;OIPd zm^+=#J-h-Et$;Z11#ply{*ht)ALQcSEabZpJSxk?At;dwbUehv#oM{o@#JrR0(eAy AOaK4? literal 0 HcmV?d00001 From 0b25975cbb07e03da18b06249fc192d98ad0bee2 Mon Sep 17 00:00:00 2001 From: "Soy R.A." <36781536+SoyRA@users.noreply.github.com> Date: Sat, 11 Jan 2025 13:11:22 -0300 Subject: [PATCH 14/17] Strengthen data privacy warnings for debug logs --- docs/faq/uncategorized.mdx | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/faq/uncategorized.mdx b/docs/faq/uncategorized.mdx index 8029a2f..c85ce9e 100644 --- a/docs/faq/uncategorized.mdx +++ b/docs/faq/uncategorized.mdx @@ -41,8 +41,11 @@ You should do this *only if requested to do it* and **after that revert the chan :::danger Be careful with the **exposed data**!\ -Sending everything to **[mclo.gs](https://mclo.gs/)** and sending the link is recommended, because **it will censor information** such as the **access token** (a concern if you're using Microsoft login). +Debug logs may contain sensitive information including: +- Access tokens and session IDs +- IP addresses and connection details +Using **[mclo.gs](https://mclo.gs/)** is recommended, **as it automatically censors sensitive data** such as the **access token** (a concern if you're using Microsoft login).\ But this would only matter to you for the *If you can't start the game or there is a problem inside it...* part. ::: From b732ce6d0afd7ace1fd9487aa93741b03f55a1f6 Mon Sep 17 00:00:00 2001 From: "Soy R.A." <36781536+SoyRA@users.noreply.github.com> Date: Sat, 11 Jan 2025 13:18:26 -0300 Subject: [PATCH 15/17] Improve clarity and grammar in the "Can I NOT install Java?" section --- docs/getting-started/installation.mdx | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/docs/getting-started/installation.mdx b/docs/getting-started/installation.mdx index bd232b7..0f560cd 100644 --- a/docs/getting-started/installation.mdx +++ b/docs/getting-started/installation.mdx @@ -95,17 +95,26 @@ Yes, it will work. SKlauncher downloads the game's version of Java, so you can u SKlauncher is built with JavaFX, which may not be included in Java 8 by default. So you need to install Java 8 with JavaFX or Java 21. ### Can I NOT install Java? -Yes, but you will need to understand 2 things: -1. You will need to use the extractable version of Java (usually .zip for Windows and .tar.gz for Linux and Mac OS). -2. You will need to run SKlauncher (.jar version) via commands (for example `java -jar SKlauncher.jar`). +Yes, but this requires: +1. Using a portable Java distribution: + - Windows: .zip format + - Linux / macOS: .tar.gz format +2. Running SKlauncher via command line: `java -jar SKlauncher.jar` -And you will need to have a minimum of knowledge about understanding your working directory, relative/absolute paths, using "quotes" if that path has spaces in it (or some specific character), etc. +:::note + +This approach requires basic knowledge of: +- Working directories. +- Relative / absolute paths. +- Using "quotes" for paths with spaces. For example, this is what it would be like to run SKlauncher via CMD commands in Windows when my working directory is the Downloads folder:\ `"jdk-21.0.5+11\bin\java.exe" -jar SKlauncher.jar` +::: + ### Can I install SKlauncher in another folder? Of course! But the full answer on how to do it is [here](/faq/launcher-related#can-i-install-sklauncher-in-another-folder). From c8e67970c765aadbedcd9a0db1f78927efc575f8 Mon Sep 17 00:00:00 2001 From: "Soy R.A." <36781536+SoyRA@users.noreply.github.com> Date: Sat, 11 Jan 2025 13:19:46 -0300 Subject: [PATCH 16/17] Change Mac OS to macOS in downloading.mdx --- docs/getting-started/downloading.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/getting-started/downloading.mdx b/docs/getting-started/downloading.mdx index 44dfba3..051ddc3 100644 --- a/docs/getting-started/downloading.mdx +++ b/docs/getting-started/downloading.mdx @@ -17,7 +17,7 @@ SKlauncher currently doesn't have an installer for Windows, or any other operati 1. Download the latest version of SKlauncher from [here](https://skmedix.pl/downloads). 2. Select the version of SKlauncher that is compatible with your operating system - If you are using Windows, download the .exe file - - If you are using Linux or Mac OS, download the .jar file + - If you are using Linux or macOS, download the .jar file 3. Follow the instructions to [install SKlauncher](/getting-started/install) ## Common questions From a364a6e9ee6438b76a1a49a2b746678be9e16fe6 Mon Sep 17 00:00:00 2001 From: "Soy R.A." <36781536+SoyRA@users.noreply.github.com> Date: Sat, 11 Jan 2025 13:53:28 -0300 Subject: [PATCH 17/17] Added almost all changes requested by indexerrowaty --- docs/faq/game-related.mdx | 4 ++-- docs/faq/launcher-related.mdx | 2 +- docs/faq/uncategorized.mdx | 4 ++-- docs/faq/web-related.mdx | 6 ++---- docs/getting-started/installation.mdx | 2 +- docs/getting-started/login-microsoft.mdx | 3 ++- docs/getting-started/login-offline.mdx | 4 ++-- docs/getting-started/register.mdx | 4 ++-- docs/servers/lan-world.mdx | 8 ++++---- docs/troubleshooting/uncategorized.mdx | 4 ++-- 10 files changed, 20 insertions(+), 21 deletions(-) diff --git a/docs/faq/game-related.mdx b/docs/faq/game-related.mdx index 8689fcc..0da02b5 100644 --- a/docs/faq/game-related.mdx +++ b/docs/faq/game-related.mdx @@ -5,7 +5,7 @@ sidebar_position: 3 --- ## How to change the GPU used in the game? -There should be 3 possible ways, but these 3 are explained in Windows! and that your Dedicated GPU (dGPU) is more powerful than your Integrated GPU (iGPU). +Your Dedicated GPU (dGPU) is more powerful than your Integrated GPU (iGPU). Sometimes it can happen that Windows decides to use iGPU for Minecraft, which significantly degrades the game's performance. Here's how to fix that. :::warning @@ -39,7 +39,7 @@ PS: If you don't know which javaw.exe to select: Start the game -> Then minimize ::: -1. Right click on the Desktop -> Choose NVIDIA control panel +1. Press Windows + S to open the search bar and search for *NVIDIA Control Panel* (open it) 2. Select *Manage 3D Settings* -> Select the *Global settings* tab 3. Click on the *Preferred graphics processor* option -> Select *High-performance Nvidia processor* 4. Go to the *Program Settings* tab -> Click on the *Add* button -> Find/Browse on the Add window -> Choose the *javaw.exe* file you found in the Note diff --git a/docs/faq/launcher-related.mdx b/docs/faq/launcher-related.mdx index 7dc8fb5..1810c74 100644 --- a/docs/faq/launcher-related.mdx +++ b/docs/faq/launcher-related.mdx @@ -90,7 +90,7 @@ Visit [this](/virus) link for more information, since this is a very complex que If you want something short: No! SKlauncher never had, don't have and never will have viruses! ## Is SKlauncher open source? -Not at the moment, but there are plans for it to be in 2024. Anyway the code code isn't obfuscated, so you could decompile it and verify everything for yourself. +Not at the moment, but there are plans for it to be in the future. However the code code isn't obfuscated, so you could decompile it and verify everything for yourself. > We would like to go open-source in 2024, but it's not so simple. Many parts of the launcher is not ready for foss, but I would love to make it foss. When I started this project I never intended it to be open-source as you need some sacrifices for it, and back then most of the projects weren't open-source, and a lot still isn't. Just look for paid plugins on spigot, it's closed source and even obfuscated. Does sticking a price makes it safe? No. But yes, java is fully decompilable, and you can read the code pretty close to the original (unless it's obfuscated), there are some launchers that are open-source, there are launchers that are closed source, and bruh, there are launchers that are open source where the source is obfuscated, so it's not really open source. But here you can read the source, while the licenses doesn't allow you to just clone the launcher for your needs. I wouldn't like to see my work where someone just changed it's name and logo, but's thats the price of being open source\ > \- [Link to message](https://discord.com/channels/141669825129873409/290149381548670976/1191138312392552448) diff --git a/docs/faq/uncategorized.mdx b/docs/faq/uncategorized.mdx index c85ce9e..8c84a63 100644 --- a/docs/faq/uncategorized.mdx +++ b/docs/faq/uncategorized.mdx @@ -5,13 +5,13 @@ sidebar_position: 4 --- ## My question doesn't appear! -1. You can always [join the Discord server](https://skmedix.pl/discord) and use the appropriate channels (searching in the channels and/or using the search option may save you unnecessary waiting time). +1. You can always [join the Discord server](https://skmedix.pl/discord) and use the appropriate channels to ask a question. But before you do that, using the search option in Discord to find answers can save you unnecessary waiting time. - We only ask you to do 3 things: - Search if someone else asked the same question and got an answer. - Formulate your question properly. - Finally wait patiently for an answer. 2. Search on the Internet because, unless it's a very specific question about SKlauncher, you're likely to find answers to your questions much faster. - - Officially there is [Minecraft Forum](https://www.minecraftforum.net/) and [Minecraft Wiki](https://minecraft.fandom.com/wiki/Minecraft_Wiki). + - Officially there is [Minecraft Forum](https://www.minecraftforum.net/) and [Minecraft Wiki](https://minecraft.wiki/). - You can also find much more information on [Google](https://www.google.com/) (or any other search engine) and/or [YouTube](https://www.youtube.com/). ## Where are the logs located? diff --git a/docs/faq/web-related.mdx b/docs/faq/web-related.mdx index 7f069d2..b8a6dbc 100644 --- a/docs/faq/web-related.mdx +++ b/docs/faq/web-related.mdx @@ -17,10 +17,8 @@ Before you start looking here, check the following pages first: - You won't lose anything because the UUID will remain the same (unless that *Other Launcher* has a different UUID system). ## How do I put on a skin or cape? -- If you already have your own skin, simply go to the [customization](https://skmedix.pl/settings/customization) view and upload it in the appropriate field. Remember to pay attention to the *Slim* field, which can affect the appearance of your skin.\ -In case you are just looking for a skin, we recommend using our [skins page](https://skmedix.pl/skins), which contains thousands of skins ready to use. -- If you already have your own cape, simply go to the [customization](https://skmedix.pl/settings/customization) view and upload it in the appropriate field.\ -In case you are just looking for a cape, we recommend using our [capes page](https://skmedix.pl/capes), which contains thousands of capes ready to use. +- If you already have your own skin or cape, simply go to the [customization](https://skmedix.pl/settings/customization) view and upload them in the appropriate fields. Remember to pay attention to the *Slim* field, which can affect the appearance of your skin. +- In case you are still looking for a skin or cape, we recommend using our [skins](https://skmedix.pl/skins) and [capes](https://skmedix.pl/capes) pages respectively, which contain thousands of skins and capes ready to use. :::note diff --git a/docs/getting-started/installation.mdx b/docs/getting-started/installation.mdx index 0f560cd..37a3d49 100644 --- a/docs/getting-started/installation.mdx +++ b/docs/getting-started/installation.mdx @@ -123,7 +123,7 @@ Of course! But the full answer on how to do it is [here](/faq/launcher-related#c :::tip Did you already have Java before and you installed the one in the guide?\ -Did you uninstalled every Java and you're about to install the one in the guide? +Did you uninstall every Java you had and are about to install the one in the guide? It may be a good idea to restart the PC. diff --git a/docs/getting-started/login-microsoft.mdx b/docs/getting-started/login-microsoft.mdx index 8ba6b02..73f8d4e 100644 --- a/docs/getting-started/login-microsoft.mdx +++ b/docs/getting-started/login-microsoft.mdx @@ -32,7 +32,8 @@ If you think you've leaked any, you can always manually invalidate them:\ \- The access token when you change your Microsoft password. ### What data does SKlauncher store about my Microsoft account? -From the Launcher only Google Analytics data, from your Microsoft account absolutely nothing. +From the Launcher: Google Analytics data.\ +About your Microsoft account: Absolutely nothing. ## Common issues diff --git a/docs/getting-started/login-offline.mdx b/docs/getting-started/login-offline.mdx index d0e3c79..2be713e 100644 --- a/docs/getting-started/login-offline.mdx +++ b/docs/getting-started/login-offline.mdx @@ -13,7 +13,7 @@ You will be able to play multiplayer, but only on servers that allow offline pla ## Login 1. Run SKlauncher and click the "Switch to offline mode" button (currently located in the bottom left corner). -2. Type the same username you made on the SKlauncher website (username, not email) to use your SK account (otherwise, type any username you want to use) and then click the "Login offline" button. +2. Type the same username you chose on the SKlauncher website (username, not email) to use your SK account (otherwise, type any username you want to use) and click the "Login offline" button. 3. If everything is ok, you will see that you are logged in to SKlauncher. ## Common questions @@ -28,7 +28,7 @@ In both cases you've nothing to worry about your data. ### If I can use any username, what happens on servers? - Online Mode: Nothing, since an Offline account can't join a server with [online-mode=true](/troubleshooting/game-related#failed-to-login-invalid-session). -- Offline Mode: Literally play with all your stuff, that's why [online-mode=false](/troubleshooting/game-related#failed-to-login-invalid-session) servers use plugins/mods that ask you to type `/register example_password example_password` in the chat the 1st time and then the following times typing `/login example_password`\*. +- Offline Mode: Literally play with all your stuff, that's why [online-mode=false](/troubleshooting/game-related#failed-to-login-invalid-session) servers use plugins/mods that ask you to login\*. \* - Obviously, if you see that you join a server the 1st time in your life and it asks you to login...it means that someone else registered with that user. diff --git a/docs/getting-started/register.mdx b/docs/getting-started/register.mdx index 4c3f87a..de04fd3 100644 --- a/docs/getting-started/register.mdx +++ b/docs/getting-started/register.mdx @@ -8,7 +8,7 @@ sidebar_position: 3 :::info This is totally *optional*, **you don't need to create an account** to try SKlauncher as you will read in the [Log in](/getting-started/login) guide.\ -But if your idea is to **have your own username and change the skin and cape**, then yes: *you need to create an account*. +But if your idea is to **change the skin and cape**, then yes: *you need to create an account*. ::: @@ -24,7 +24,7 @@ Don't lose access to your Discord / Email or you'll lose your account if you for ::: -3. Done, now you've an SKlauncher account. But now you're missing the profile that will define your username\* (the in-game name) and with it the possibility to modify the skin and cape.\ +3. Done, now you have an SKlauncher account. But now you're missing the profile that will define your username\* (the in-game name) and with it the possibility to modify the skin and cape.\ So follow the instructions (assuming you're on the [Customization](https://skmedix.pl/settings/customization) page) so you can finish everything to finally [Log in](/getting-started/login) to the launcher. \* - If it already exists in SKlauncher you won't be able to use it, but some recommend to check that it doesn't exist in Microsoft either with [NameMC](https://namemc.com/) / [MCChecker](https://mcchecker.net/) diff --git a/docs/servers/lan-world.mdx b/docs/servers/lan-world.mdx index 66a3794..a926b96 100644 --- a/docs/servers/lan-world.mdx +++ b/docs/servers/lan-world.mdx @@ -9,14 +9,14 @@ You can play in your Singleplayer world with up to 8 friends in LAN, thanks to t \* - If you're going to play on a version prior to the mentioned one, you'll have to create a [dedicated server](/servers/dedicated-server). ## Hosting -1. You want to be the creator, so you start the game and go to *Singleplayer* -> *Play Selected World* / *Create New World* and once the world is loaded you can press ESC and click **Open to LAN**. -2. Now choose the *Game Mode* and if you want to *Allow Commands*, then click **Start LAN World**. +1. You want to be the host, so you start the game, fire up the world of choice, press ESC and click **Open to LAN**. +2. Now configure the server settings to your liking, and then click **Start LAN World**. 3. Done, you should see a message like this in the chat: `Local game hosted on port [50000]` (the port may be different). - Depending on the version it can show you the IP and Port (for example: 192.168.1.100:50000). 4. Tell your friends to join. ## Joining -1. The host already did everything and you want to connect, then you start the game and go to *Multiplayer*. +1. The host already did everything and you want to connect, so you start the game and go to *Multiplayer*. 2. You will see a caption that says **Scanning for games on your local network**, below it the host world should appear. - Every 1.5 seconds it refreshes, so don't spam the *Refresh* button. 3. Done, select the server and click **Join Server** (or just double click). @@ -36,7 +36,7 @@ If the world isn't listed there (since connecting by IP:Port will give the inval #### Modding There are some mods that only add the option to change the Online Mode and this is what you're looking for.\ -Honestly you should have already seen the [Modding](/category/modding) guide and have an idea that, depending on the mod you want to install, you'll need to install the required Mod Loader first. +In case you have never installed mods before, you can learn how to do that in the [Modding](/category/modding) guide. Some mods that allow you to change Online Mode are the following: - [Lan Server Properties](https://www.curseforge.com/minecraft/mc-mods/lan-server-properties) diff --git a/docs/troubleshooting/uncategorized.mdx b/docs/troubleshooting/uncategorized.mdx index 0be146e..749dc66 100644 --- a/docs/troubleshooting/uncategorized.mdx +++ b/docs/troubleshooting/uncategorized.mdx @@ -5,12 +5,12 @@ sidebar_position: 4 --- ## My problem doesn't appear! -1. You can always [join the Discord server](https://skmedix.pl/discord) and use the appropriate channels (searching in the channels and/or using the search option may save you unnecessary waiting time). +1. You can always [join the Discord server](https://skmedix.pl/discord) and use the appropriate channels to ask a question. But before you do that, using the search option in Discord to find answers can save you unnecessary waiting time. - We only ask you to do 3 things: - Search if someone else asked the same problem and got a solution. - Explain properly what has happened. - Send the corresponding [logs](/faq/uncategorized#where-are-the-logs-located). - Finally wait patiently for an answer. 2. Search on the Internet because, unless it's a very specific problem about SKlauncher, you're likely to find answers to your problems much faster. - - Officially there is [Minecraft Forum](https://www.minecraftforum.net/) and [Minecraft Wiki](https://minecraft.fandom.com/wiki/Minecraft_Wiki). + - Officially there is [Minecraft Forum](https://www.minecraftforum.net/) and [Minecraft Wiki](https://minecraft.wiki/). - You can also find much more information on [Google](https://www.google.com/) (or any other search engine) and/or [YouTube](https://www.youtube.com/).