From b0a03d94c86eb5acc5f66861649a0be6b1551123 Mon Sep 17 00:00:00 2001 From: zumbiepig <121742281+zumbiepig@users.noreply.github.com> Date: Sat, 17 Aug 2024 10:43:32 -0700 Subject: [PATCH] . --- public/index.html | 1 + public/manifest.json | 19 ++ public/mods/client/index.html | 2 +- public/mods/mods/index.html | 2 +- public/mods/resourcepacks/index.html | 2 +- public/resources/data/mods.json | 226 ------------------ .../images/icons/minexlauncher-192x192.webp | Bin 0 -> 11562 bytes .../images/icons/minexlauncher-512x512.webp | Bin 0 -> 31826 bytes public/resources/mods/data.json | 183 ++++++++++++++ .../mods/{ => downloads}/autoclicker.js | 0 .../{autofishmod.js => downloads/autofish.js} | 0 .../downloads}/barebones-bossbars.zip | Bin .../barneys-music-mod.js} | 0 .../mods/{blinkmod.js => downloads/blink.js} | 0 public/resources/mods/{ => downloads}/blur.js | 0 .../resources/mods/{ => downloads}/burmod.js | 0 .../chat-commands-mod.js} | 0 .../chat-shortcuts.js} | 0 .../downloads}/daggers.zip | Bin .../downloads}/faithful-32x.zip | Bin .../fresheaglerui.js} | 0 .../mods/{ => downloads}/fullbright.js | 0 .../grapplehook.js} | 0 .../resources/mods/{ => downloads}/jetpack.js | 0 .../downloads}/low-on-fire.zip | Bin .../{nofallmod.js => downloads/nofall.js} | 0 .../semiautologin.js} | 0 .../downloads}/serified-font.zip | Bin .../{speedmod.js => downloads/speed-mod.js} | 0 .../mods/{ => downloads}/statshud.js | 0 .../mods/{xraymod.js => downloads/xray.js} | 0 .../icons/mods => mods/icons}/all.webp | Bin .../mods => mods/icons}/autoclicker.webp | Bin .../icons}/barebones-bossbars.webp | Bin .../icons/barneys-music-mod.webp} | Bin .../icons/mods => mods/icons}/blur.webp | Bin .../resourcepacks => mods/icons}/daggers.webp | Bin .../icons}/faithful-32x.webp | Bin .../icons/mods => mods/icons}/fullbright.webp | Bin .../icons/grapplehook.webp} | Bin .../icons/mods => mods/icons}/jetpack.webp | Bin .../icons}/low-on-fire.webp | Bin .../icons}/serified-font.webp | Bin .../icons/speed-mod.webp} | Bin .../icons/mods => mods/icons}/statshud.webp | Bin .../xraymod.webp => mods/icons/xray.webp} | Bin public/service-worker.js | 28 +-- src/resources/scripts/mods/mods.ts | 36 +-- src/resources/scripts/mods/resourcepacks.ts | 40 +--- 49 files changed, 234 insertions(+), 305 deletions(-) create mode 100644 public/manifest.json delete mode 100644 public/resources/data/mods.json create mode 100644 public/resources/images/icons/minexlauncher-192x192.webp create mode 100644 public/resources/images/icons/minexlauncher-512x512.webp create mode 100644 public/resources/mods/data.json rename public/resources/mods/{ => downloads}/autoclicker.js (100%) rename public/resources/mods/{autofishmod.js => downloads/autofish.js} (100%) rename public/resources/{resourcepacks => mods/downloads}/barebones-bossbars.zip (100%) rename public/resources/mods/{barneysmusicmod.js => downloads/barneys-music-mod.js} (100%) rename public/resources/mods/{blinkmod.js => downloads/blink.js} (100%) rename public/resources/mods/{ => downloads}/blur.js (100%) rename public/resources/mods/{ => downloads}/burmod.js (100%) rename public/resources/mods/{chatcmd.js => downloads/chat-commands-mod.js} (100%) rename public/resources/mods/{chatshortcutsmod.js => downloads/chat-shortcuts.js} (100%) rename public/resources/{resourcepacks => mods/downloads}/daggers.zip (100%) rename public/resources/{resourcepacks => mods/downloads}/faithful-32x.zip (100%) rename public/resources/mods/{freshui.js => downloads/fresheaglerui.js} (100%) rename public/resources/mods/{ => downloads}/fullbright.js (100%) rename public/resources/mods/{graplehookmod.js => downloads/grapplehook.js} (100%) rename public/resources/mods/{ => downloads}/jetpack.js (100%) rename public/resources/{resourcepacks => mods/downloads}/low-on-fire.zip (100%) rename public/resources/mods/{nofallmod.js => downloads/nofall.js} (100%) rename public/resources/mods/{autologin.js => downloads/semiautologin.js} (100%) rename public/resources/{resourcepacks => mods/downloads}/serified-font.zip (100%) rename public/resources/mods/{speedmod.js => downloads/speed-mod.js} (100%) rename public/resources/mods/{ => downloads}/statshud.js (100%) rename public/resources/mods/{xraymod.js => downloads/xray.js} (100%) rename public/resources/{images/icons/mods => mods/icons}/all.webp (100%) rename public/resources/{images/icons/mods => mods/icons}/autoclicker.webp (100%) rename public/resources/{images/icons/resourcepacks => mods/icons}/barebones-bossbars.webp (100%) rename public/resources/{images/icons/mods/barneysmusicmod.webp => mods/icons/barneys-music-mod.webp} (100%) rename public/resources/{images/icons/mods => mods/icons}/blur.webp (100%) rename public/resources/{images/icons/resourcepacks => mods/icons}/daggers.webp (100%) rename public/resources/{images/icons/resourcepacks => mods/icons}/faithful-32x.webp (100%) rename public/resources/{images/icons/mods => mods/icons}/fullbright.webp (100%) rename public/resources/{images/icons/mods/graplehookmod.webp => mods/icons/grapplehook.webp} (100%) rename public/resources/{images/icons/mods => mods/icons}/jetpack.webp (100%) rename public/resources/{images/icons/resourcepacks => mods/icons}/low-on-fire.webp (100%) rename public/resources/{images/icons/resourcepacks => mods/icons}/serified-font.webp (100%) rename public/resources/{images/icons/mods/speedmod.webp => mods/icons/speed-mod.webp} (100%) rename public/resources/{images/icons/mods => mods/icons}/statshud.webp (100%) rename public/resources/{images/icons/mods/xraymod.webp => mods/icons/xray.webp} (100%) diff --git a/public/index.html b/public/index.html index f605899..79dc0cb 100644 --- a/public/index.html +++ b/public/index.html @@ -6,6 +6,7 @@
ZP`cWzmp+F6u{+c&J0Z&&YC6D1Cl+WwRfKjOf zSM{}@870lS1O{^P?c7EA+1B+aY=>m{$DN%$r}c6id;ZGqQH#n@*}BWun*{E%X3XM< z%$#hOSC>f5|6-il@ZdyC5H{;vNK90idtq1m`&x(LR{S0KoJ--n-sk5Bhp)HazcY@I zU5@}OBm1%U_ug&{IXV2M+>J0Z984x?NP_;rtEO3D+Eu0rqPa}MRq11Z|9t44rIgor zsU{_ppo#FTWNSV`xsG|*bz1ZuJm5!Cbcgy@(QtO9`2fWcJW1+UmmcPa2J}Q%yL12R z$ZFuma*un_<)ENH-FC@P4qFM;G$$U?!M_ps{4vHf+C7}d05IWbgC&C>SJ=UIhauPiY6pRyD@lqx8(#xWu(JG@!x9?f`j7{KxFoll8r&+qQ zwHQvGhmlp5UP;!lR3F>w4+|eNYo>pUYPBQAvCzk(B+StUf?@-KGjc5#6Jxa@2@quN zL)kcLmOAY7$H_mjB4nlJXSgBn4OHm-H6s|~b5xU?xV1H?t=SsEZyeW?u$8}=)c7g| z$!BNZowb~Ch|_!CO?6})7$VYa|FN%AUwt`=vHPa0OY}%>n@Zb?T*0sPqu}<3dX7e4NeZ$;HTWHWPdmnn}x9 zQ=ZjE7AyBlGz6+o^?|UTw7cPWO&HdA;x8_)eMtgS9e?H~aZ2*228MF~b~GhnGWl;h zZS@W`)o=1Og q&f zIA?H#%}#IuXU2yqU~G%?Ej9M%Uv8#Y)VbhY!s>zof_}I&>|*340GvU|x1nCm6tA;| zQ4M&vp9c{{lg BhI_~1rSN*$FwzD$j#cl z3E$oP+FN+|x{i2yVo>>8k@+KQgESHpya|ytGs>}?eLV=QtsqPg+=l`@H|cDbbTyg} zaVg`N BFcF55kSnk)Pw{Z7!4i5G%#QZ|0u*(wXO#HT0?;8Sfi?N$X>Gg1 zZUUe8Ct_EdbgbB( L>4JmdY%ru1`)r%j~=|l=~kvV zsR>jqHLC<3&nE~w`D%CRRUU9wO#;eEdYoL3F$Ls#WKRwgtclS1 oGeV*S{m5i{ zIMFmviy;!&iK=1o?#S@gBTI6RJNG;5m&~e4^_pO@IK*zIe-M1OBZyE{3$ehnoo#_r z8 >^cgBWE2TQFGmh;JmMXv2)TWJ9-y%Ew7g@A#Ik$0{1^N`-6(D#4G^lA=oJW#A+g zGypl9VmQ^?ywFqC^s;2qf1Ist@@YBUJsk__0#@E17n@RO7}P(>XSi~-1y;JQAEn0N zOR0?3+_tz>P|C^3j!MIhZwzpsLM+v3(4BlnUy>{i4wR!6lAt0asJW4X;^kSTErQaE zpyMv?HX#C}5LHO{GoCL~rd_M8!zkxPZg^*s594$Bj6qv5$W^#RB3V|HFuLBM(S9|q zV&gy*ghnixyg AlS%mOZq;j`v(=-T#Scc3?)jD1um-1$mXLl8VjSEFnE-wwS1~I?Ml`j?Etmrh zDkL;;fd7D?l~42;!;~zdPPyGPo?z0zfG{<|)Z&qdolJYk?g?Y%4*~r;d37Ek5oku2 zCP#PcyOJGpIa&Vp$4V<{RPTfR4lgy|cUHcRBM;1&{Fo&107=?v2|`}flfYLWF;&bo zh{umT578r45i2eM#bEi*tul+?_)MHSdi1>G(=cJDh}7`D86nSI2hNMEuD4&l7B>rP zT32prjh+@t12M)~ktmOJ9lSi}Y6}u}_wQaRBmLXg4wYey2D78xD6}&nzjWE<-rSE; zLZT~)Iq%Z=P+N;@H99=XCJHQZY4U_;Rq|pWL-T1PSGHkT7~@V>#33Z*E 5fMYcgw0< zGTV+BI3(~*h=QkT5%0H!@Ki5%kS+huk$kDR9uFE=FjAvV-%` {3k(c$4`;ATY3|gOgfu-fZ)yg7+F3`w*lVr{8XuWYuH3Re5o0#k*!Yl1 z%IW&(OadFY9Q;dh>%aRsMJ;4`J_+^S*+wAb_n#D^>b;b_$}>Re3ud>Ln)TP`&YT|a zql*l-9=JJ8a!i6MSx&CDgMLs}`E@?r`MVcB m;i5O)@Q=n%zb`4ari(;D;KlT{g}VqG;^h$DzjwD zvTPeYaFifp1-c +`F>N{^}XMdzU_M z=kmX`1C@w@X02|xe9EFQIz(jD+ouj@PcnISqaJWK DO(a ;Opxfb%#Tr>sOdNg*XIwxa24YA*>`d5xP!}KKLA~mrOBN%gF>kP5O)4$1 zrT3>Qb+ydj+sl-m_6()g;$>XhXX-t>`i(|k;w{5PSypHSyL8(K0wu+nOp+!MPRG8Z zR)T%0NQ}rb*s(S#r1PggtnqnxT}h{P(ZBKWR(LX4b?3jyDn-i6r9jLfu&EdAUW05K zY5 <7AdwZ$%k6IhLrla_9F-~C@Py5GL z=p{LlhH5e1bXg$iw~iC4FWHE+G@gXKn8=D<=@Oj?4%A@40kS58sj BfYT3gd^`+_knIhEQ+KMisX#oFr zD;mOSbRUTaQb_pLMscbsb18|`C&S}?)GyIYPC F%fa< ziK*@Mg%(xyH1~CXSb=zA%^k7$TFl=eRa1l3S=Ft4Yp1F*3!SkAF$*lr_}!aFqk11F zVI|vtY{rl`3J+4a8YWb)Umo`TBC5uwvSd#8IMa#Z{Ql2c(#A %|7y_ z#e+3R=efbD(Y))nr^fTvH~A2Bk_9{y;*`W$G*yTxOhiD32UVSVU84>5UsyMz%yt_{ zchyD-bm_DxdgGY=D569iRK`B4k9q#if(Rr2D@XhBA)b_`KtwwZPGD2CBTPt5dR^bk zZ;~gg2sVK64 3@d0LW{W?ifd$$%!~7!SK~)Aw*ck_l}0V);;^_^Vquz z82yD7V^~7thP^b3AXhw3;>1FxU u|H^8%1jBYlF5b7O54Eoe8K^ z;4;;^s44p%qMs?=7uHG&xt7u;Pu-3<;*RJ2HL;NWV?OxX)~~g0Gd;#~MihT}aN3H+ zvO<=sVTgULC5_bl6)U`AEfpn;tz6ZbqNW_?4w9PK__Cy30(;;#8g;HW*NS3SU{32p z(aM9uoPq#bkj*fuD9)&M{E#qS3yr62Dks%53@z0PLTGW7u85y_=Jc;bm %Wr5++no*^c*evOM!QpVvJj$; z EL|4w1yO{{(>V0RphWEoM}j7rLa36=DinLE=?qO{a})s zWl9lYxV7QE#nPMGr+J#eY_#*J4&TVo`!ubb4ew9EgL}aV2$;3Un0_AAE+H;KN70X` z_9p3XA8xiAa^fVmbcL3ernFRrebf2=)amzFzP?jvr<9j~*2qN6ZKbNo^|fH}$@K^R zF}W;BhvmT30bm6uB11>bN6fdDv|L6Vk_iD4{YwoLg0IT{k&Nq?95Ri90VG~}6RFA0 zM6(;G@G?^PP)n~RzI!{@n?G}shPt57PNw`v%$ZY>ziElJG*7sN07+$rW&(_=p{x^3 zu``|X%UljWhwf6LKQrZ3BGsHcxN? gxmIfIiwhS^~XuET@1E;qpH9} z+vyO7z#U>t5iKT(z(eJycNb3!Lq5kfVdk&k=o5Q-TyB@eIS=03%ocMwZ1cY$B`>#- zkkzdzbj(!I&4n#O#1j bEVC3Q~$fEKllrBq5m-Xv$%c>@!g<= zdKv#H-BEiT78sOHRjlc7n6?B9R+>7_L9MR?nI(+#-3XP**j+R7rzPzkb@SI^TN$m5 z3}w&OP3EqLh<61cWl#cv*x!}FL!FgH?aG<-ID9mU-bcl$;b)bJstj0qi8bQo9=~Ep z?bieq`K(z2L6}a=NIIdzW^ma+8|sql>GE-jM~y@BybjN0LaN&xXL1qy;Z`s|1ueeS zp}H8iN>Hr$2s;`lA2?!+og@D+98s8@Pnr*rOT$d`cXZ16;V5*?XRD%Ee2CCya`Qw` z;UTa=Jd3wMNCV+ih&Xd>G>xiU3=+0fl13y!df{&gWuiV6kv$X)gP2h#REo+XChi >>^B+J#yT@#S)e6QEQY6YTiSs>}74?e;kU7ndldR2TWO-JfRv)?^l4oFq^fEw5>& z6~klGK(@G_8#Aji(-wQPv%7&$Xa4zRui56t+PxV;uo3;C#jU+PE)AI(8n)5d(3+lH zaDTp80v|RtFo2(@E~pnn1->*J=O>nxI0a^wIkB>V?S BPW?6wA!A}pRJ#ak^#6 !pwezr5-5bai*FWFLATi1ME_4Cyu0|K Vw4!fbk1{+pR(8x$8i@zx>ah>=o6Za!Dcc<)3qJu z#_+IIDUVLomuS1};5i}7dMvyaTy60mw_;VolAMWjOIBFv8XHAM@z-A{%X84$S10MD z$#X-2EmYh_SF@OMRWvXs8KlBMRXXK;Cqu8Th9_ lLx?Q_c0 nl_{JeG^xDJlfRWRFI*eBzhI1ff0qNC zhr$?eYu|Y*P<{FM3XSvmTRR;0gc%l+0*38}v*AJ1`hrqLuD1KLR#S{3eHvH3M&AeZ zknA}OFYNJCfBHM8dX^Guyc=hSj*@PsyF6D+848~54Ss;F19R~P(pJZdBDwVl4%j^q zBefAAU%`o }5 zwbGO^mKVA)$JDn-sK;4sfa!xhWZ;n#rEv7%vAIpuk;Wvu*8KO!1k3lKG`Ku$$kc6} z(upjh!M5OW-F0TtNOVZpzKuOwCtl&CL9ygN S*!*!bzU9uT>rcki#+H?oWLoJ+e`V1~tf9-RAODR;jYKg#-VXF|ki8a; z07IqJU|~cUaghw!C&u;U>&h6m8I2K)y!|+lp1Zid*qqJbAZgYG1`8gZ2bbsHQMAry z*Wkl*ly#&TP7rbzx+g0&`2tYk1G9gZ%dt$V^l|b!yU6HRS5^->k5^U*saREKQ@xmv z^-l~u?%wR{6-Q91Y+fpQeMO*uE^$L?ZEdr)XU}}Vni-6+>@^<3ZLhbZuzse(t9Epj zMZp~vq(m3N7&FLkA6mO>+)h`9Mc3VM-@>ekwj5uWjI?xl*Q>8 8Gy}vtPc;KK|+5!nPm$w|RX DH4wUNpCMB0C|} zVDSQIS!+kLNVDDi$o^6vuE2~cAMmxD;I^$2m6lUED`2A`r`;QKT$;v8)v=J4fwIIw-9KpO zg#_{cV!XOOv`9H#-(C65>9&)xyU<}(KC#EyWo7*C*U{Ef*CibGS0_^S?#wXdrz6M1 z@J(RXU=rguHF-^EcP5&mrR@+uPot@aE+^!v0aHTxHCScX@ >I-T)OgmO>uO6de=Jsjd!Z_EgxZm&gJm(Mrwxm@ z(eCmx!@H$hBoGQfGKPtyC@IsPEE-XOb)AH;@qqWluf9&)1eod49kR4CP1DoUFg$%N zC^#!2%t1M5 w z{Wzt%1&Dv1sfzq2RcAxkXUrsoNjx7wJIi;%NhZ`%OHy5VujubOwMWj?q%>ODvRIC< zn$@gW^0%=GXA0|_C-Qc*(A_`@{0ouyjot4tly3Cj#9+r>+Gr3sx0OzEOoyyFQIM{1 zsISYii%P7Aj43W46%jsFN;3y#bcz8nFbq4N6R9iFa{Q;(SP&?uW9>?NgTjhpX&@ 5pAX4Z}ne%DLwTS_2g0d>G%;RvSSqBiW$vyR9b+pIdb@0lgZ6K}b3(ZkNKgBBim zQkxJY@L1KzfG@M`*=aeHZz}H(o9ll!^9LE$8@8y4-t9`xOeE(5pKu{1=es3^bMQx- zDFF{txvFz{zi<~4^Wov)>GY!;-;sZ
%yp?BS7L^!3K`6K)r4Aa;sB!j*H7`_j7+pXVgFI-iV0)ezBO{om4luNE&Kh#k zeY*+Pz>#b@5(UoUVXYBbAJnr>!`s@ZB3X^7s~~jnJuY;ry =6C8;A|wkRM?%; zWtr;EB9iC6;nE-me7PBaJL~jY9rj8gf^K#$x~tB_fGp)CbC4)=)XTQ`+&&!w^|Z?j znIDn#aA%HlDMo~q Ckp*%H=Ew>Ccxl7~#&wxwUrfDs7gL zrAu=UKsU9Akn+K|b?L!CLRj9mAv|!5C7$tf5PX6(jkDC^!jWVPGelMcyW6ckjqE_| zh|!w_lZ|RVyjl;`kioDNV$_8$-W}> T6{N#kL{@4mE=DLl?5h0p^tXXhxQhAVmG98xAPeDp+u!B2ne0mxq}^6qI8&OiwO z!muI!`yuI5JCTL?K@bwioHc`UXulVkZR2Zyw>@ |V!%Y^Z%y%g^^`ay5Esij8 zJCHv3GqpD|T7i8 >;X)>YRhDl$tUjqF@z6ERHMsTq&vIT7 zm7(}!kNzOT_*i(K@qC~xkxW!XKNTZa`By{emnYj}O|>3L9XP)dg6T45nMz8?fOMIg z6V*~)E(v7%^v(!WQlY!2Hbq9%V7ADDQ-9;5tZe0YB!jHmTP+`}6e*Lp^DP8Ygk!JF zk4gD^b5Z+hRAyiwKaWi6yMUGj{YH*y3F&U;GM9=~tfIfHB#Nw8&j(6?0e#>UHG@22 zSbXb-{pA)B(fu0{^;W2Vaod=3^y+%z_RL9zOR2NC%QF}aqE{C5rZlM1(|c-t (rO43 Y=l_@RQNlU?X9Ux&0 z1}L=l__N%tIDM*a-B)6@Ms`eYnu{px)sH5d8huL>`r4#?ikmSFA?lNt$ 2Pd@O&J zpAENafGM|FRf{eds8D5U=y}t*2Ag-@>Hn>?{vWr=gJXtG#{xcuL~zXBqiJrg#T{?_ z-OG$8*;8_y<-szh3}h@?nOlaR$J?N7PrQ3~eA~C>{qdn;tnj!$H{&jZBWWR-eTP=f zEil-H8gj|B&RD8tWtt|=xt3ccG4(%F|K&%FV5_q@)I+Ry6Br+hc+$ULKSoa3D`do@ zyBId+nPA|6XkL7$m`ceY&ldE(4V2wN;vmN7Sd-EH3LU~Ses5>WUzDwtR{&*LC{pvC z (mv|nB(`Ifnyq Nf< zm%LrGE8}Hmg;d6>g6SgZhNO{6byG7Y&}L5pfs_#w1s6>@7gy~%w5m(skB7cjYlfA{ zqbqwk&dswnP)op$=Cz-d7QW$96_$&rl=2r47j#O=F3QcqVnGpPHQayt)$?;8rH5<$ z>|50cqh+Ym4Cw!)KdI0Hf{D%;^pgB}uZ7BV)1S%`fwR3 pU_9G-yxPWl}hJY@F7Y+AYQnHI xD0Bq5lt4g^2QvZ z3SPE|D}19AqlCa3HQ)?I-#vmS?TxDy(0-qN_|WA@b*fP2-eQ$Tu9$f+dfU2qzj_=# zO7Woi#j1cwZMsrl_}CpnZ8AGBlO_ucQ^v4|q{XePCid;@(ZXW@XFKHS7`pV}8TznB z93iz3Ab4|+PT3{+@edO#x4FbNko0%jj{Z=W@a|T-@6O>N4X)J$GOOp%`TZ0YZqw<6 z D5%d2+%WJ~PaC%$Mo!Ku}+Im|)o zAZ8N|UC##zg?%JKV^*3zH&ZaicVWcNV6I#o#A+ Yp(mOFbTpL(YX?Akwlr$&NV@pW>nYEAFOeZR_>ok{vigOYBQC zV0+}HDqh3m*~f*OYx5Ch!PY=O?$9VjY9xIl%vtr%x?hrI_=l%c>_7~O5kM|vT!5!@ z=84v6#5a?l6$$lwZBogVhnr1@Mr2*BI4EYKR#5W5;LPSnq-mWCTxY0pEmW56N8lOE zq5%Y&Q3#aQ6qju0R9XJ;`PklY 3&%dJU7O0cMMg=uH-E_;WLNQ8;5X>dFV z7yY&d= LpwPhPSP2)#hr%OGw_yhP1iE( zG^RjM`-hK18KGLne5gvNywm9)Q!bfl>Yn)e^&769$=oVMfNFz{#f{>&4T?GIs!>!n zA%)5FSz4uU(h+q*+8?0fOsesncN7$q_U?HrKgRt74K3uVta<%u#}#!mhj$?XpqT}U zT QKOK!uoy$;XPAZ*tkLW;&ZFhaJ(Zr!-NIGN2bt zPu`mwJ0qo>>}$76u$h0=Th9k54LRPQtNozgevbJT9Fyk5iMzYw?a`9bRumQT?!jQ^ zpslSB`>$WK;$f91IN^dWXEuBfG_5#Fi=|YA+f!6i68CVhME`h|3EOq!$O`z~jZf=F z=puv9Emkwc*}ryi^t|5}9Utfei*=BYGgy_RP0{ C@e3pWa<-?cTi(-;k#F>ZfW+Te#z06_MoK zb@A&nh}B+EW1NL*D`GytJ2Kbrai-V@+MtqZ8iChI pSYpltj2( zA|8Bb#k2j8R;UMS5?wdjXUwss0Legp_^;BzUXXI2{>!Mu6j`CEI>(h =wI7dOo_T#Z2fb0a^lGY^1R?Qy(m}}WG+K#h+E%R{)x`~J z_+Ou%^oR4p=d#%BTOC&n9FV57@nXaWmSf(PcsfVu`g*sUS5p7ud?JA+VbSgHFLyf} zF(-#oNMdaA&3lGNx;4KC6{}8Es@Z_Vt kws<>+?E@7vHhHtf)LxS2C$tGdOQe@L<^z|x^2VX3%ei0u=+ftFnPYP#2 zJ0M&BqV~S|Yu&J&xSrfVx5vZnum?N|;`ka#oSvs?A6 G-zwBMgsUS@2R zdw%h@@4ca*xW4EEtZ5YoZc8GpZgOeS7>i`90g#(fRo8BpozH6aO-=eHcqPK78o~Z> zM*-vv8rCD8&Mu&I%3Q--n}g}Y+(F;$m?SdXz=p99?`nsv`Eih{-qG2Zal{} `JLrSiS$o=%tr<)?9)Kx5~>3Zr;AG3_k3o`;f2B!@UhKcWaxktu% zA+Db;pCH+bMIvb9i?SdErs(j!I6&>BdFG84%e!U42AksPt{q7;WuPSD-(r3L#GJ1^ z`rP%0KFS`1{ce(7E&L3ru`Vv@kTZ7UkGMNKo8Mfc7q@Jd5JQ51G{MOd0S7!kQZP#v z9{P@kkV2G`?z$X0f=4C_ye>x&aN>o54C x6pWRnT)RcQ-qYNyOu0JZTEyoWzh%}nf99vqxm0dZ@>Jx*td<;TyXGB!r8h>H$r z_S_uqw3;`&OR$eNRvf|h7HKDQksP!$N5+y+NEh-Rq21g(bQvX64*P{39KikIDClV{ zLYXu!+G~3!*&TL!LL12Ew$}Z0j E@h8~qnS_6Go1{PwRc2#^YspoV z`Qmb4;U5|b@I;^(qV1!&*!+cj0G@X2<*!3t-BqTSX>lv 0@sF) z)Qcf}gW78rXKNPPoe%mhPluweyu5r?Zt`DO|JmNfHa(tz?I63K=jZJxZ7Jq|tkWie zG)LYa{pblkpJ0hAOzX4Y?5v F6G*!FpS|!g^SMM(o(qD;f3j>;>?tj$2P~$&G)I#Ddx&1oG#ZV)bh{V%IY4q zIEOjd7zh3K-P`|8P9!gE3=8eQtMqrfgzmqq^MCa|#a`E&|EnGT*UnP3E&gl4|G)Zw z$pUPs7yswO{R#;J3;hq8DK;JWZ~g6m(Cq)#BS`2X?V##UGX5XoYI$fUMWUnPr@T1E ztr?j{^{tX;w=ocI`Wa&bpitmdbHfLE?JxmVV~@82qFHh-d^*U-Jy*FsxL~dr@O}?w zz>Q`Bqz_f^EEb_`Wd&p2)NOfy?+F~NOz!l}TLV}EOXnVDSI1_DyoEPhf{yXvM?Ft& zi0vsezk5db@}BJPi$CS~BN{TzB2jtRt-ZLLLj6si<&i~H3&FvGfHRsJ7;P)obFNe9 zSjFKA6p9#4DoyZ1Lu1q0EIBCS9EjMcXl4Z0ZSD&dM9cB9i91;z{z%^KEpQO&mI%)2 z>e}@Fg4C%>;;9P0se$xQbzfZ1AbXg;sQ$t~VKbW!pNXI%XDYs~vk{A+52ev0cg-~m zzHejn6Wl;cfA!}J>~?|{1PBrfc$nT^4h|lV80T$jHPXVA5?D9n*Nsgvm=^W%CK@lB z eE(GpX7-641_iG0AD&CTw5 z`lpTPo6@hW(EosV`Po}5*(7$b674#khR(snF2Y)A+GhOW;^6)gB0^Q^mts%;ODnD* ziBfP6d6XLrx;#4r!KN8_6?zS0Vt*S2Oc>Y+)amJ1Ca9O-$c!FzJBJyb<&tVndC|B- zJiCo%(5_Pb( a34uNi#@J!i2~aF2z?RxG79uHBtFUJB4>{aW=XFK z&k?7ePl75P65?wd!p1s|fygv>r^*(txK+>7tonn02>T!*I+YRrDJ~r{>) 2@0?rl9Aiw^09U>&>$> zz}i!xW)3$JF5a#Aj6n`)(~i=RNLU&YVTxUNelawEArz4j8kR|`!Pc#d z&fKV8>y kAPF`Drmy9_`|rMjKiUu9^D! z*Ywh$-$|!A#`pi6t=S8|a$7t3sQN2AYEMizxqFcBFYi6;3oUaH&c r+a0QZ8T__wQQ382}0`tj1_4-~ISYvMX55)LT|Xm7kRN zvsKUWzeZr2nVHpHnqSjKVR#uhtSA&7CGQD!VK4UEZ!uOui AyJM3BwZ*t^ewYgegKbXr>VTeTpm_NTFyk!#K_0&X0>@B(sTq#9hWM=?Vb| zUa)=C@TXkzzLBD}ZgDkrz4e2bjq3*qvRaA9>Elm?V!m$^V3yH_3E9=-c|}Ar2bI-w zTKEBDb}TMuAE3xSz}_ ^<`RYIr9J!x=L{N^%8XrkIey~9kmD}z`O%%3D?!PtW1E0% z&_UbDdeWln($VEwfNK!^fWtc{l-o|gxpreCSQu0^el$H8=bGl@TFV87Gw|XD2(VF^ z>Qibi!r(VF#_KL2y=dY4 Ca=*(BRoMT< zweg*VASVFJY(WnI%_*^9)n=UUK-u=}&f6G({MPk)sU|=&*mRXF)Ei qrsY24OtB(6d#xCg)b@qeBov9hkpQ)nrGl;VRZ!lSQ zvrrm2(L^#}-jUZuJ=7t=9C6=S-nmyR=AVq*=R-Ys%!iF=2FE`hKjeb0>+YxbQ1YU4 zXlap`7tL0vlYg;;5N^QQQU?>qn!gL5DQEpsl}1f=%1) w7tns2C!wlqyh>!Wj7hG?Q~l^iqX?*r+M)9PJfhci2O&v+9~9$B+`4w z^$fmgr%Au?OnruS{1NwLbRn2znLGE7p5h=7VwiX>Q89V{!n({yl*N%dEjb;^eRq-g zO5CzeqklePs-yF?z_6r#u(p@PtGzD8pn!UwN}V?Fpd}@Z6oG7x6AzeYSC;BH0c>a$ zi@}GU*YHcnrpWl;tWRSw!zKsqmAyjSkKl}gW(l*?xKv|xeSf9gPZ7NnN5y)G?N;re z1^kO>eV(OJ92G}*E&V2uC{rT!;c&Wc&8de<=!3s?M)%D*k_7n>QbEj`**5NhnAmBw zMb-F3)a~o*=l8J2IRwV+5ZM1WGZ?h4`a ~V6B -)5@B}@^q;dCLy+}G}a|^mZ z%QX)Y1G$t|tMC7VlqXx~B^Azveu!HTS9uI~bHDcRCoP1mC(i_&Gn1 P0=DwX_LB zbaa{Rgx;<^xj-^!eA0=!9`_aDzvjezXOm|PrAo(j$SO>W2;Wpt6xs*)JV7K8fv4uQ zpu6e9d-!s?(bqUY+A`cKhS+85amzZVPifFg&tI|9E^O5-Q@hgk&$0O8*5q)`b JD+KL*(=D0m$rM>?+_-&F2Kx%OOS2%5)oCOxZF05$cT;TP98 zr#k{FCw0FC(XyY++26bQX5B3)7wAbE&{!CV0w1b6w?Ax% 5H;kr z#1XxC34OF=oHP%7yk5I%)pE?MqBq(UJTqUlsVpfL2Sf9~YIJP-|3qiuV_pg;2poCl z5{Xakd#MPJpt8W5Xb}uYVd^<2b8QD iK0SvPv@$t^W4CzGi|y0ZT%t1bgrUJhE|>mcA5c* zLq$}2q5ajDr{@)9^+zxSS*?htoJIEfymEGN`KpoZp;QW8+ HFI=g%wBlDgxC$>rYQ;=K#L7k^lph9;P9~Y>t>1ItO z+IhizMNQLWasjy6sufxWFHakCo~=BNFqtqFbPML4GLF`dJ)(+tB(Bk7-YbhaksgG) zLt^e$MOGEVz+}<`VA8#aw{7syxr-{BY?MCC7RP!ot?x4;-_S-#2SW|vF-rmS4GEKs zKl>At*0jpOmmjsiN1s#mCHdjFr{XZlR}XG)zPl~0Ry~Pke8qc*t-nW|^*%r!^t6H3 zl6tUo%((XZIK5@YqM21~pbgJhl`GARVrsM)LMe)Mz?t;gbau=n>f4Jx(f2Oo2hyi( z{?Mdb51qZ3RsO&)?&~Clqkp8`Bg8%8rzkYlUhMTR|Et4ic%HUaXNoVP^UQO ICU+U5{b*jmYpa>5Y+LGHV zH`~?@x(5MmMEuJyZsfPpJ6bb_x-MmH*I#gkWq{#-XId+h_W!BhsIY4gjuP(j& jdB z=P)?U#`-s0tfJL^*){9Tklbr!D9}9mRIDkYS&)vs^XfceIZIx8;lyUc_43w2L^uDd zi1;||YW8}BdV5v+`nO+ms9M`*uMKtLihGQBDWcIdh9x|8_O`tpscWUt45uBgHd_`h z)$x`JvSrM(73mha 44DA7ZA|rYCOKh1%w^luC=N(dN{43e1x7HwHby#f&>0 zWV`Us>Jfh1w$7$OC#LNO=p6rsx5KIo5xR}GVs#MhpXE(B4kE`D ee2;y(Ss-G`wnrk&-G#}YfX5KqRQTZ|UP-t(=616= zY_lQiUs;gxj#j0DdsbRajW9GVQMSljWimyb5~SN96XVCOpk>$7>nWIfd^J(*SYuXx zI6=$5jiRLPDdJgr4#5xLV!F#}{G?|abxJpHcGAa08UWl-P&jH4tkk{&;XI$Pxy>07 z?qvhob8p!*>%<6AxIb*|{^2@>FKK@mB3DiV7qa!Ousv_*bKdS378>R`r+~C{6Eh>Q z)Z$!$hR3R-C=?!JQJFyDhnr&AMyWV9_U1(Rrvv+JHqtU467hOW2yxIy-d52IONom= z_Fsq}>H?iwftuNkO+&glpqI|UOSe?h0gxMiTBaN0B5hrJ;py&jMp=3Z8a(?b+zM+? zXR_(zfU7^i>=}PgTf3ZM4XnPzzT%g*asqcf0P*OP;X{h#IgfCL(q~bJ{#iB7K{pEW zAGyoNB9%SDt!5rWV{Z+GOm4MDY9i+*AT`nBEf)_|@~{JO_qSe_Nx0NycWMsR8KG^O zfMXv~o;A||{Ys6I^EO}FL+Q+yvsDlFZ#m!Cq~G=DbaTqZaXQ^ S znzNqMxpEj6 q;EuE8 zkBUSNuM1ZaeHv#=EKiY{bjl(->cwT)5)>iXZhPhx_m*J`?i9YTAWg^%d|C?X@jE-~ z+MkY=qr@x iC*aXQ%_gh1T@hp=R$20(;Ot* iP}3q`N;n^tMIuuZzR4Pvxr zr8ee7SLR0x=YTwxR1cyhk~dbX=FNN#)$D-+<3kP4lB-`C*dOhLetODAmy1&tRCD2B zaQwg+`rMH}+M9}NqWqO3H?Z!A8!<73wqr1_qR FpW1SX506(kXQWNRCAb6XPQy9)r!~? z{P3@~r)5>x=PYm~(d2pi(N@qVo7cWuJ*-y=j#2t0W0g6osOfa ?s#*=;>F zmJV~BJgxqsvg)4&ap~qfS9V}X%+DA7o#t aBU73Qe&nzWKxdkG$~vOl!%wXIMK<529g z+u3>jlMM-ho+qMq2c7OXJGvmIfO|H01o|mB#~G1#&$<01)-C**YwNGtoAlbrM##V_ z*FIq&e!)Yo0fEJj^h1GvIOKb<#tK;cy+ol|rmE02PmIJ@jzpNAX8E2U>dkmTbol2+ zEJN4Li{5vdClj4CWnYz-`kW8qr)?AzJj@%77R95J_dh6(!8g{;euj_YGZ{cWh|=w- zrv^BS<{vE&epM*}y`3etpCkRkioLILmq-)gg~pCF=k4$n2;P2ew z F{%!X3?t)3E(GGGS(E>iuEwFHhK^5V|qJ{Mt_`=ea|Jvg&cH z>eZ5+58l;BAp)%-{eKtM>)rYv ^LfAIT@soD *(abJ33JbY}J`@14`!cu{s%RL_;jp z?2+1b$Y?-W#-%YQ;783lJcSXZ`SEFBv8A~ke#63LJl&0bi&|uBx}a@JdPMWrE2d(( z=x(rW+(wo9fngIRZRS7RYla|&S7Y3%C6!lhWR!Pmegl-4+GY*T=HVOHBeDY=A?RZ; zB2s)?_^h5*NO5V`@opTLJooiGN5Cq?{>AHAO?;}8=fSP(c#9d077;fFjgD*##cz2W zy5n+2goucxwY1x1@|6X_Gms1l0hh|tx(h50UI|GPlMM2JeW06RB_G_OxpO8tn%+B# zLb&W9d{|D;Bi}QidVbh8nM^plta4#yk?ECFmQ?8j>JB??j?X8WN{lcb{VZ#(x$k3! zDz}bl1xgDR>dWT$mkT_D>PsOSi=yoGy6uWLiL~s-(LBD%^ILiW5hilT5<{z9>;?ai zIF1e0NGiFDtyHq*8@dTwU6#C+)t-0g^6QeBa)5HJ{^a<-@3~Ju%ZVrtW^2pMSsMp> z;16UvKV1;CW}7EU>z|A_d-5;m5yaVYyzf6j<)==bGfdsGx%QrnjpGoS`kNcVx`A8i zcs5vTAWwBB>gj%hBR25vUqv!5A=R^(puc?fXMGzrLd{(og}rQ6^6;$zg9I09f<5O4 zOcVnZ#pcj|-xBp1f+}Z!^|=UVY|MG5+R72jD(u+7&r>#AQ|#UljOG>z*XISQx)- zD^Jy6e35iLKt-Kcqo%26cmSYS!z7M?^JK)6tg9g=xQ=opg0kK6&kAQG3=bJeRr=}D zjc`bzQVM+1FR2E ()G8Z0k@#U!>&kP*Ifr4Se`{$)U&4Ryev>79LBTE;m$47 z7t==_cko%f#Jg=gdbZ5mo{ED!iFWR^CtV(0{!^3-KJgqxZ_jKtw7*NG47{Kh|1|8G zz024=sLMt@@`675GN5AqeUI%&(ZWooJ*CrKiKzMpYkt>Go90EucA=2I`;j&6M0XqK z7PofS!TlL #UPhXlf33$`sc&C=ZYh3-$Z-NhhoH_wNAz(_2Z1MN8B(if}duug}0_(Vdvl z C{i<=j_xfipf_>MRp?)F=woCKSlFnU1U~;pm%DoP!+vS3F50>A zW@usVe78il*K8aea nc@LCr21=Z zhsYHO#EhXN*@;i%wu>XDp~Y9=#hVwMcm -U>k}&BM+Smazq5S?d8KeLO!%b;JAa%qVe#mM6KjAsf60V!bd;aoopyG3 z8LPcnCV^Gf4OfestiT_)zP5$S7c#s`rE*MLa?v0kg0oc8Rv2W-saT`m`b(^3z(|aK z0XWv)%z3rqI|z*kORUKwasQnzG? zo5-Sb+$onaUcB`%@upY`3~WF8n#orU+_l#qBcA ifg?YNIGyvd5n(cGxXOn{swQ zVu&xkIL(NpqQRbkcz|Wc&nEx2_@2ry>#W6vBRCW%C?aBt;q@cqLC5|ndCt*onXOc+ zeYR8ns*#Lz{yH$X&P5qznWFqJOB)|u905l8Su^4I?vcxG2fid)!#rPX#e9qXTo3%8 z`Hdp`#6bM?6RUwCQx_V`;Rdk}^xDOPFz953b2Rzst2^(x(|7RAC=X6r*-POl4SS%I z@o|ckJy|;~H?SZfzjg4# NcT#%A?m9bc7)*M548u7SpS9Dxpo5aBvEXU5SKgTN6C$LJ0q)Y$6IJ!43aEB! zc|Iy}?ojbcVfzA}T?T dJN1iI| zseZkCUaknJSW%qh+2BB86rw1aKjyG1UgA2fwEwr*L}Y}ywG#9!+eIaR8Y}KlOqHMx zHWz)#`5^{= 13(>xN?Dt;j62mH#4s`bL=;xI0dD-?`#OKq$PlmzTS{6 z$-(SUG+N5EMWc^S)}D6L3}b1_sIt*7ixC#YuzEGg*y`iq6`lLB7-<0WOxcJy!9jRr zT&>#o^#Wi+>!5Sjz2B0HBa32g3(2)SMp+SEY$mZ!-02j(zNobm0Q7Y3)!pTc+L7UF zyd8m7_;*gxvt+la^F*^c#ZEFTw AO3a$%H_2bS z9aO=&1+^d_;QUx`88hW_1tQsP>~=?)vcJ3QQKZJj5y@04%8PxsH8~!VO&)r)rMjA6 zsN55jEwL60%E&n$OA;2EuZK@I`LT62EhZ zEEcDEhvDtDn3+5Ws LsHG`^mW)10BMYR2hFtzDF4$Es^a>ztcG* zR 6d3oIRxFC=)QS)5=|E%Nd2%n zb&~6ci+Uio)`H^(B=KS_Bz($R?a)xpS~ULVBQ!HlIwUI$TXn3huu!^bgJ ll E7k{XdUfzzk`^N=0=Do)|+|mFnJ?yh{c_#%O`Yq?7wx)k|{k5$(JB#I` z%_SqJFzoHM*wQ%}Plv1?kZ(x`PWhuueMB3Lz3YLyN`d_Cc1B%@J>GtS2}wF p%fx%Fz30wCK= z8QGpB1MvHbKpkj!s0ld0A+pAin{w7PU&~FHK-==0apGYV$cbkSfgf(R7};-FM9_R5 z=K^TJ)~QZ`6ohZXFGo9*6X|CkTi>tSmQ^URE%dj)c}G7Zu2TKhv@GGO Z$7?ed&!d>xxW=fro6X@TI^aEYZ67B z^3qb_ixloknAYkn>-&`6007C>WB^_kz)iV{~gDLmd^-YD~r6B-5^`pX+Tg_V^P zcJ*oUv+AaKCNDMkx@S=<0#!9Oa!$G*$#6!md& zld4J;-)4T(!t)yig|G9X(r{{+I1erR0cQI)p 6LuMI)Ha!r}W=#FxB~VMQKDG^Kmn1J0k^-6N-ie&s2dmZf$70tx6zTqxZT)I~ z4qcaZ+p#8IL^x#WL=Ml|9TlkUA(cD@6$;Fuv_lGxSemkdj{ofJP_nrt2rP^9gG?zP zq6EigcoDWhTq#r!5(a_ 488+08ZzLKh+G~?1yT$poER=K9iSaz;_~sIUKkKA; zc3NXzcKjLazJIymYqY?}JtULt%E$R4g`)vN4GZ!fLSla>LHcN+P84Hifm?FhLAWD~ zgVE40I4JxD_WG?}Z*$Udja(k%J7hK&%&eKzBOJ(a=q?-H;al_R>eGxnd%eL3F@3|= zo_BT%jQw=Qg1b6@67ftGZnyL@HCxwd@=GR+c3v 2Z{5Mwtgd+a;94Lf3L!>wUP0Ozb=v*U)Egz*wNOSL6IG`lUuh`{XEt?;>H#>lvo( zE{T>@at*G5UxfLny1lNDqc+miOL|1A&QRUEUeElXznlp)G6qrd`k(L%e68#|D_Jbu zEwiXBUsg<@|6M~I4^+P8#m3N+Wp60stn8@HuuaPYzrJ7yYAg&20e^4fW)@zc1pw`x z^LRtFr#6Dzs@5(aj*^nL7pR;Z6lM=P0_gLVIUr95tisjvMTAZzwvP7s-uy?$)}A8l zxZ&$l0B9i18L3ql7(d(YvVT2kgIJJC=2@o_Rn?%ffb2V~cT_u{kC|H% 4i aDU-pq^6)y`<&Qji`LS>KODy`|_e+yM<(kIZ`ycxAnQ;QP5b5qmbf6=V{i+8*4 zW9P&fH}1SfAO`{M=n|7ik)3PdyiIm}7CFtEB(Z(^B{Y=C^$h18Ki0Qf4s!wZ`X-k! zPg_ap>wRawl!jaxmQf|NBjr=i?;&KoH`kl*ArbEjP&*XaL!=zNG@P{c19RtSsDhLA ziOLSg8e7>`h6 y2wCbLJ z4I>ts*xvtI9l72_Po8XD28oFw-MXw&QvOj+tK06DV1S9fj!ptqfsnRb-c`?ZQxCe* z9}X+V6G7NzY7MZNyhuz3uQ3n2-SFo$SdP#^(%f;9N~Ta9;!ktw`(g LhU z8mQf*GT%TZ$nZkuW+t7`L9JzTu!gtRaGo8bW=DYTw2(j@Cvd_8#wd$w=K6uN%SY|i zcQgH0yfgEOwOksClo^3{%vSI9HSLRYIAF5wqxi(boF!Sm=dX6ZK}$OeTB8=Dq42IW zn;!pFa5@{|vb2|pu81*Sz`p>BjcLC(`jw0eIjMUt%&YR Ry -Tc&pbn|La-DUxN~&1Xk~5mwV_Y~{m;0;F;^zwPInEE-x$BO z2ge|&-FLyIQDS`irhmfQ=fX@N>5;qn9XT&!*v@Du7PD&qNr3BeKd_5%Q0qWaWgJ(* zs Pp{O##(r2Nh2YfNXkcGj6RlSV9dpA2e|BoDl-qhRO 1tH~EeB_Jrius$lX+xj;G-Vgrk(l>ZS(aReNm>kgO2Dp z&^X9(F1YX(FS|u>vRDBy;=|2zI;pF>_Ze;OJ^7E)%)A~yN-7-7D4^@y{kvl*1G7wM z3!uF5_$$iTwMz>KiKNMa9QrxAr@)puCJxlwJ=4oMw05SXt}7rCwX-hmM7Y*bOZ*Az zE7$Dwj$JZ*0hMP}L0zKQVmy{QFRU%TV@e%vd5N@Vws{Zak=R=!SFbK)$Vi{6-lA{Q zqLyo!R+l7DOKB2rF+_&US?QWSCGbRCYnOd|VaRQ+S zPpB9%;m1!T4YW_lX0)|dDSykD19Hayb`j~!Wn7AYEpN1$+YAOy(h3E{9aq& z7_4tD~omBq)*4 zHUZCz&U0X*Bu781J)A^w?T|#?@{1K8n-CXOj1QJVE_X6Ac{c1KpyD9M6Rru;()1>_ zXfc;( vJ? >6??|T<-nO#)Kx>&ly#yS8bLc4 z8zsq!2~`!2^gMR6bBc}&Dt*MaYm#MCQ9Y2!3WT@W{b*KVW@nE^Zj1%>;FV7Ra5*vO z&9wJeZ}7fAqb`MJOgI2s5kN(4^P0ckM`D8PT?P-ZEn8oI{;!NeUgS^H%%ilM 6AL0vu<8H%lk*+QEKElQxWxaSD-6S AFB>ehiIh;4U9)4vQg4`}h^$NEx;ve2PmW=Kr_%&0m9J&{1cx3*r{Td_lxzeTAo z$&$3xxvIwFtU6R@VnfX?s);q%F77V{yWa66brv2@*2|Z2STsGN@qZF$4KxfjbgC9% zcmHVl`Z$H-YWfYW503V{!x|u}4@dW>b@ILXTgL&vAKPz@{;5c&CA}RVq)sA3`7R?# zJjfWr9{TG2$$V3zs74I0 ClgBs=i}M$XYy c$b=7Y#-f0q(D)7Z^FZ> zvOv|Bi}HTTH`X!L*Wn$Zm%T96@M}HAaVD9@c}s|8tW7TG70UXinjzQW&Wq12w00## zVq6eor`Ay(2uJ!l-B&=aM__jtAx?P-jm93#zCu-mc5Cw~2*wd}9DBl(0We2F5g2Tj z*kh+8OpY0|YUmV8hPpPl3{$NFg4S=Xz&TtR{@fCHJo7K`&$hSXhr=Co?5opu$P`m} zJXX(mje^G7H9HzxD(2HmlQ1n~9knc6p{qeBchYJyEt0UM3-K^tCv%#=rT4W@YiG64 z+2V#SdZ9OuM|X2(`cH=4Ifrqu`%139G3QrbMYzK?kc&8|{ZSPFq>mp)2*4;}hS$43 zM%ve*ql~E(?~N5cVmeQnzAf+JYKrw$)J?!QT~bkm)g|p2tOCnDsy47)5_P+yR*X*2 zc$X;JV32~o{zo%wCWZ|2&|LAsm=lGP*d+V6x!(?A66ldb={m+>kA#VkL_Nfa({~aH z#(B>7KU$H5;Bg 3B z#6a;7?De~1kOii+MUw2O2}XrSl|-e|7 {}SRyM?6%q4+*k-80|0^3KWDSxvy z0?H?%*v n7!g=fbmJ1iFo|ExoL9Wld3W zsqBiYaY5ZB3GC{5eSMO|>R?-~)_k3)*Zl*{
5l2G9y^;&hIWfCsDLxV{0Uwm zbAtuc?LXa|82r}X|M`jipd?bpD{>_0^ZnHn_YFn0mOuNq_+frT2T@`xczXxvD5z5` z_ChMjcKe= ippRR8HeED7 z^kx6^Zl`Q!M{0|=$^aIMROfBoC)N7*Ya5xG01q|h=)Tv6kHS6c5~~Q0XD!nI1<{OL A^Z)<= literal 0 HcmV?d00001 diff --git a/public/resources/mods/data.json b/public/resources/mods/data.json new file mode 100644 index 0000000..db2bb52 --- /dev/null +++ b/public/resources/mods/data.json @@ -0,0 +1,183 @@ +{ + "mods": [ + { + "id": "burmod", + "name": "Burmod", + "description": "client for eaglerforge (v0.2)", + "author": "Murturtle", + "authorLink": "https://github.com/Murturtle", + "source": "https://github.com/Murturtle/Burmod" + }, + { + "id": "statshud", + "name": "StatsHud", + "description": "An all-new StatsHud, soon to be updated with customization functionality!", + "author": "Neverflagastralis", + "authorLink": "https://github.com/AstralisLLC", + "source": "https://github.com/AstralisLLC/EaglerForge-Mods/blob/main/StatsHudV3.js" + }, + { + "id": "fresheaglerui", + "name": "FreshEaglerUI", + "description": "Makes the UIs slide in and re works the main screen!", + "author": "Murturtle", + "authorLink": "https://github.com/Murturtle", + "source": "https://github.com/Murturtle/MursMods/blob/main/FreshEaglerUI.js" + }, + { + "id": "chat-commands-mod", + "name": "Chat commands mod", + "description": "An open source mod with a built in customizable bug reports system!", + "author": "Neverflagastralis", + "authorLink": "https://github.com/AstralisLLC", + "source": "https://github.com/AstralisLLC/EaglerForge-Mods/blob/main/chat%20utils.js" + }, + { + "id": "semiautologin", + "name": "SemiAutoLogin", + "description": "Press L to login without typing!", + "author": "Murturtle", + "authorLink": "https://github.com/Murturtle", + "source": "https://github.com/Murturtle/MursMods/blob/main/SemiAutoLogin.js" + }, + { + "id": "blur", + "name": "Blur", + "description": "Makes your fps 5 when unfocused!", + "author": "Murturtle", + "authorLink": "https://github.com/Murturtle", + "source": "https://github.com/Murturtle/MursMods/blob/main/Blur.js" + }, + { + "id": "jetpack", + "name": "Jetpack", + "description": "allows you to fly as if you had a jetpack. keybind(hold): h", + "author": "radmanplays", + "authorLink": "https://github.com/radmanplays", + "source": "https://github.com/radmanplays/eaglerreborn-plugins/blob/main/jetpack-ef.js" + }, + { + "id": "barneys-music-mod", + "name": "Barney's Music Mod", + "description": "Plays a users music through a direct mp3 link. Saves music through Local Browser storage.", + "author": "BarneyTheGod", + "authorLink": "https://github.com/BarneyCompiler", + "source": "https://github.com/BarneyCompiler/barneysmods/blob/main/Barneys%20Music%20Player" + }, + { + "id": "blink", + "name": "Blink", + "description": "use by typing the .blinkon and .blinkoff commands and sending it", + "author": "radmanplays", + "authorLink": "https://github.com/radmanplays", + "source": "https://github.com/radmanplays/eaglerreborn-plugins" + }, + { + "id": "grapplehook", + "name": "GrappleHook", + "description": "grappling hook mod. how to use: 1.grab a fishing rod 2.use the fishing rod 3.grappling hook!", + "author": "radmanplays", + "authorLink": "https://github.com/radmanplays", + "source": "https://github.com/radmanplays/eaglerreborn-plugins" + }, + { + "id": "xray", + "name": "Xray", + "description": "simple xray mod. its recommended to use this with Fullbright. keybind: x", + "author": "radmanplays", + "authorLink": "https://github.com/radmanplays", + "source": "https://github.com/EaglerRinth/eaglerrinth.github.io/blob/main/CommunityMods/Xray.js" + }, + { + "id": "fullbright", + "name": "Fullbright", + "description": "full bright mod for eaglerforge. keybind(enabled by default): f", + "author": "radmanplays", + "authorLink": "https://github.com/radmanplays", + "source": "https://github.com/EaglerRinth/eaglerrinth.github.io/blob/main/CommunityMods/fullbright.js" + }, + { + "id": "autoclicker", + "name": "Autoclicker", + "description": "this mod clicks for you", + "author": "radmanplays", + "authorLink": "https://github.com/radmanplays", + "source": "https://github.com/EaglerRinth/eaglerrinth.github.io/blob/main/CommunityMods/autoclicker.js" + }, + { + "id": "speed-mod", + "name": "Speed Mod", + "description": "makes you faster", + "author": "radmanplays", + "authorLink": "https://github.com/radmanplays", + "source": "https://github.com/EaglerRinth/eaglerrinth.github.io/blob/main/CommunityMods/Speed.js" + }, + { + "id": "chat-shortcuts", + "name": "Chat Shortcuts", + "description": "shortcuts: {health}, {pos}, {name}, {me}, {x}, {y}, {z}, {level}, {walked}, {chunk}", + "author": "radmanplays", + "authorLink": "https://github.com/radmanplays", + "source": "https://github.com/EaglerRinth/eaglerrinth.github.io/blob/main/CommunityMods/ChatShortcuts.js" + }, + { + "id": "nofall", + "name": "NoFall", + "description": "makes you not take fall damage", + "author": "radmanplays", + "authorLink": "https://github.com/radmanplays", + "source": "https://github.com/EaglerRinth/eaglerrinth.github.io/blob/main/CommunityMods/NoFall.js" + }, + { + "id": "autofish", + "name": "AutoFish", + "description": "fishes for you. just throw a fishing rod in water to use this mod", + "author": "radmanplays", + "authorLink": "https://github.com/radmanplays", + "source": "https://github.com/EaglerRinth/eaglerrinth.github.io/blob/main/CommunityMods/AutoFish.js" + } + ], + + "resourcepacks": [ + { + "id": "barebones-bossbars", + "name": "Barebones Bossbars", + "description": "simplistic per-mob icons and colors to decorate boss bars with", + "author": "vexcenot", + "authorLink": "https://modrinth.com/user/vexcenot", + "source": "https://modrinth.com/resourcepack/barebones-bossbars" + }, + { + "id": "daggers", + "name": "Daggers", + "description": "Shorter swords for better visibility.", + "author": "devin", + "authorLink": "https://modrinth.com/user/devin", + "source": "https://modrinth.com/resourcepack/daggers" + }, + { + "id": "faithful-32x", + "name": "Faithful (32x)", + "description": "The original Minecraft texture feel, with double the resolution and double the fun!", + "author": "Faithful-Resource-Pack", + "authorLink": "https://modrinth.com/user/Faithful-Resource-Pack", + "source": "https://modrinth.com/resourcepack/faithful-32x" + }, + { + "id": "low-on-fire", + "name": "Low On Fire", + "description": "Low fire on your screen! Vanilla Friendly", + "author": "Haikis", + "authorLink": "https://modrinth.com/user/Haikis", + "source": "https://modrinth.com/resourcepack/low-on-fire" + }, + { + "id": "serified-font", + "name": "Serified Font", + "description": "My take on a fancier Minecraft typeface", + "author": "bebebea_loste", + "authorLink": "https://modrinth.com/user/bebebea_loste", + "source": "https://modrinth.com/resourcepack/serified-font" + } + ] +} diff --git a/public/resources/mods/autoclicker.js b/public/resources/mods/downloads/autoclicker.js similarity index 100% rename from public/resources/mods/autoclicker.js rename to public/resources/mods/downloads/autoclicker.js diff --git a/public/resources/mods/autofishmod.js b/public/resources/mods/downloads/autofish.js similarity index 100% rename from public/resources/mods/autofishmod.js rename to public/resources/mods/downloads/autofish.js diff --git a/public/resources/resourcepacks/barebones-bossbars.zip b/public/resources/mods/downloads/barebones-bossbars.zip similarity index 100% rename from public/resources/resourcepacks/barebones-bossbars.zip rename to public/resources/mods/downloads/barebones-bossbars.zip diff --git a/public/resources/mods/barneysmusicmod.js b/public/resources/mods/downloads/barneys-music-mod.js similarity index 100% rename from public/resources/mods/barneysmusicmod.js rename to public/resources/mods/downloads/barneys-music-mod.js diff --git a/public/resources/mods/blinkmod.js b/public/resources/mods/downloads/blink.js similarity index 100% rename from public/resources/mods/blinkmod.js rename to public/resources/mods/downloads/blink.js diff --git a/public/resources/mods/blur.js b/public/resources/mods/downloads/blur.js similarity index 100% rename from public/resources/mods/blur.js rename to public/resources/mods/downloads/blur.js diff --git a/public/resources/mods/burmod.js b/public/resources/mods/downloads/burmod.js similarity index 100% rename from public/resources/mods/burmod.js rename to public/resources/mods/downloads/burmod.js diff --git a/public/resources/mods/chatcmd.js b/public/resources/mods/downloads/chat-commands-mod.js similarity index 100% rename from public/resources/mods/chatcmd.js rename to public/resources/mods/downloads/chat-commands-mod.js diff --git a/public/resources/mods/chatshortcutsmod.js b/public/resources/mods/downloads/chat-shortcuts.js similarity index 100% rename from public/resources/mods/chatshortcutsmod.js rename to public/resources/mods/downloads/chat-shortcuts.js diff --git a/public/resources/resourcepacks/daggers.zip b/public/resources/mods/downloads/daggers.zip similarity index 100% rename from public/resources/resourcepacks/daggers.zip rename to public/resources/mods/downloads/daggers.zip diff --git a/public/resources/resourcepacks/faithful-32x.zip b/public/resources/mods/downloads/faithful-32x.zip similarity index 100% rename from public/resources/resourcepacks/faithful-32x.zip rename to public/resources/mods/downloads/faithful-32x.zip diff --git a/public/resources/mods/freshui.js b/public/resources/mods/downloads/fresheaglerui.js similarity index 100% rename from public/resources/mods/freshui.js rename to public/resources/mods/downloads/fresheaglerui.js diff --git a/public/resources/mods/fullbright.js b/public/resources/mods/downloads/fullbright.js similarity index 100% rename from public/resources/mods/fullbright.js rename to public/resources/mods/downloads/fullbright.js diff --git a/public/resources/mods/graplehookmod.js b/public/resources/mods/downloads/grapplehook.js similarity index 100% rename from public/resources/mods/graplehookmod.js rename to public/resources/mods/downloads/grapplehook.js diff --git a/public/resources/mods/jetpack.js b/public/resources/mods/downloads/jetpack.js similarity index 100% rename from public/resources/mods/jetpack.js rename to public/resources/mods/downloads/jetpack.js diff --git a/public/resources/resourcepacks/low-on-fire.zip b/public/resources/mods/downloads/low-on-fire.zip similarity index 100% rename from public/resources/resourcepacks/low-on-fire.zip rename to public/resources/mods/downloads/low-on-fire.zip diff --git a/public/resources/mods/nofallmod.js b/public/resources/mods/downloads/nofall.js similarity index 100% rename from public/resources/mods/nofallmod.js rename to public/resources/mods/downloads/nofall.js diff --git a/public/resources/mods/autologin.js b/public/resources/mods/downloads/semiautologin.js similarity index 100% rename from public/resources/mods/autologin.js rename to public/resources/mods/downloads/semiautologin.js diff --git a/public/resources/resourcepacks/serified-font.zip b/public/resources/mods/downloads/serified-font.zip similarity index 100% rename from public/resources/resourcepacks/serified-font.zip rename to public/resources/mods/downloads/serified-font.zip diff --git a/public/resources/mods/speedmod.js b/public/resources/mods/downloads/speed-mod.js similarity index 100% rename from public/resources/mods/speedmod.js rename to public/resources/mods/downloads/speed-mod.js diff --git a/public/resources/mods/statshud.js b/public/resources/mods/downloads/statshud.js similarity index 100% rename from public/resources/mods/statshud.js rename to public/resources/mods/downloads/statshud.js diff --git a/public/resources/mods/xraymod.js b/public/resources/mods/downloads/xray.js similarity index 100% rename from public/resources/mods/xraymod.js rename to public/resources/mods/downloads/xray.js diff --git a/public/resources/images/icons/mods/all.webp b/public/resources/mods/icons/all.webp similarity index 100% rename from public/resources/images/icons/mods/all.webp rename to public/resources/mods/icons/all.webp diff --git a/public/resources/images/icons/mods/autoclicker.webp b/public/resources/mods/icons/autoclicker.webp similarity index 100% rename from public/resources/images/icons/mods/autoclicker.webp rename to public/resources/mods/icons/autoclicker.webp diff --git a/public/resources/images/icons/resourcepacks/barebones-bossbars.webp b/public/resources/mods/icons/barebones-bossbars.webp similarity index 100% rename from public/resources/images/icons/resourcepacks/barebones-bossbars.webp rename to public/resources/mods/icons/barebones-bossbars.webp diff --git a/public/resources/images/icons/mods/barneysmusicmod.webp b/public/resources/mods/icons/barneys-music-mod.webp similarity index 100% rename from public/resources/images/icons/mods/barneysmusicmod.webp rename to public/resources/mods/icons/barneys-music-mod.webp diff --git a/public/resources/images/icons/mods/blur.webp b/public/resources/mods/icons/blur.webp similarity index 100% rename from public/resources/images/icons/mods/blur.webp rename to public/resources/mods/icons/blur.webp diff --git a/public/resources/images/icons/resourcepacks/daggers.webp b/public/resources/mods/icons/daggers.webp similarity index 100% rename from public/resources/images/icons/resourcepacks/daggers.webp rename to public/resources/mods/icons/daggers.webp diff --git a/public/resources/images/icons/resourcepacks/faithful-32x.webp b/public/resources/mods/icons/faithful-32x.webp similarity index 100% rename from public/resources/images/icons/resourcepacks/faithful-32x.webp rename to public/resources/mods/icons/faithful-32x.webp diff --git a/public/resources/images/icons/mods/fullbright.webp b/public/resources/mods/icons/fullbright.webp similarity index 100% rename from public/resources/images/icons/mods/fullbright.webp rename to public/resources/mods/icons/fullbright.webp diff --git a/public/resources/images/icons/mods/graplehookmod.webp b/public/resources/mods/icons/grapplehook.webp similarity index 100% rename from public/resources/images/icons/mods/graplehookmod.webp rename to public/resources/mods/icons/grapplehook.webp diff --git a/public/resources/images/icons/mods/jetpack.webp b/public/resources/mods/icons/jetpack.webp similarity index 100% rename from public/resources/images/icons/mods/jetpack.webp rename to public/resources/mods/icons/jetpack.webp diff --git a/public/resources/images/icons/resourcepacks/low-on-fire.webp b/public/resources/mods/icons/low-on-fire.webp similarity index 100% rename from public/resources/images/icons/resourcepacks/low-on-fire.webp rename to public/resources/mods/icons/low-on-fire.webp diff --git a/public/resources/images/icons/resourcepacks/serified-font.webp b/public/resources/mods/icons/serified-font.webp similarity index 100% rename from public/resources/images/icons/resourcepacks/serified-font.webp rename to public/resources/mods/icons/serified-font.webp diff --git a/public/resources/images/icons/mods/speedmod.webp b/public/resources/mods/icons/speed-mod.webp similarity index 100% rename from public/resources/images/icons/mods/speedmod.webp rename to public/resources/mods/icons/speed-mod.webp diff --git a/public/resources/images/icons/mods/statshud.webp b/public/resources/mods/icons/statshud.webp similarity index 100% rename from public/resources/images/icons/mods/statshud.webp rename to public/resources/mods/icons/statshud.webp diff --git a/public/resources/images/icons/mods/xraymod.webp b/public/resources/mods/icons/xray.webp similarity index 100% rename from public/resources/images/icons/mods/xraymod.webp rename to public/resources/mods/icons/xray.webp diff --git a/public/service-worker.js b/public/service-worker.js index cb45961..6a74a56 100644 --- a/public/service-worker.js +++ b/public/service-worker.js @@ -1,7 +1,5 @@ -const CACHE_NAME = 'minexlauncher'; -const OFFLINE_URL = '/offline.html'; -const ASSETS_TO_CACHE = [ - OFFLINE_URL, +const cacheAssets = [ + '/offline.html', '/resources/images/icons/favicon.webp', '/resources/scripts/google-tag.js', '/resources/scripts/main.js', @@ -27,23 +25,9 @@ const ASSETS_TO_CACHE = [ self.addEventListener('install', (event) => { event.waitUntil( - caches.delete(CACHE_NAME), - caches.open(CACHE_NAME).then(async (cache) => { - return await cache.addAll(ASSETS_TO_CACHE); - }) - ); -}); - -self.addEventListener('activate', (event) => { - event.waitUntil( - caches.keys().then((keyList) => { - return Promise.all( - keyList.map((key) => { - if (key !== CACHE_NAME) { - return caches.delete(key); - } - }) - ); + caches.delete('minexlauncher'), + caches.open('minexlauncher').then(async (cache) => { + return await cache.addAll(cacheAssets); }) ); }); @@ -52,7 +36,7 @@ self.addEventListener('fetch', (event) => { if (event.request.mode === 'navigate') { event.respondWith( fetch(event.request).catch(() => { - return caches.match(OFFLINE_URL); + return caches.match('/offline.html'); }) ); } else { diff --git a/src/resources/scripts/mods/mods.ts b/src/resources/scripts/mods/mods.ts index 2b74571..10ae5dd 100644 --- a/src/resources/scripts/mods/mods.ts +++ b/src/resources/scripts/mods/mods.ts @@ -1,29 +1,13 @@ document.addEventListener('DOMContentLoaded', async () => { - try { - const response = await fetch('/resources/data/mods.json'); - const data = await response.json(); - const modListElement = document.querySelector('.mod-list'); + const response = await fetch('/resources/mods/data.json'); + const data = await response.json(); + const modListElement = document.querySelector('.mod-list'); - data.mods.forEach(({ icon, author, description, displayName, authorLink, repoLink, downloadLink }) => { - const modItem = document.createElement('div'); - modItem.classList.add('mod-item'); - modItem.innerHTML = ` - - `; - modListElement?.appendChild(modItem); - }); - } catch (error) { - console.error('Error fetching mods:', error); - } + // @ts-expect-error 123 + data.mods.forEach(({ id, name, description, author, authorLink, source }) => { + const div = document.createElement('div'); + div.classList.add('mod-item'); + div.innerHTML = ``; + modListElement?.appendChild(div); + }); }); diff --git a/src/resources/scripts/mods/resourcepacks.ts b/src/resources/scripts/mods/resourcepacks.ts index ec9b099..0431a22 100644 --- a/src/resources/scripts/mods/resourcepacks.ts +++ b/src/resources/scripts/mods/resourcepacks.ts @@ -1,29 +1,13 @@ -document.addEventListener('DOMContentLoaded', function () { - fetch('/resources/data/mods.json') - .then((response) => response.json()) - .then((data: { resourcepacks: { [x: string]: string; icon: string; author: string; description: string }[] }) => { - const modListElement = document.querySelector('.mod-list'); - data.resourcepacks.forEach((mod: { [x: string]: string; icon: string; author: string; description: string }) => { - const modItem = document.createElement('div'); - modItem.classList.add('mod-item'); - modItem.innerHTML = ` - - - `; - modListElement?.appendChild(modItem); - }); - }) - .catch((error: unknown) => { - console.error('Error fetching resource packs:', error); - }); +document.addEventListener('DOMContentLoaded', async () => { + const response = await fetch('/resources/mods/data.json'); + const data = await response.json(); + const modListElement = document.querySelector('.mod-list'); + + // @ts-expect-error 123 + data.resourcepacks.forEach(({ id, name, description, author, authorLink, source }) => { + const div = document.createElement('div'); + div.classList.add('mod-item'); + div.innerHTML = ``; + modListElement?.appendChild(div); + }); }); -