From c1f4abb33e9d310479c8813abb20d64fabe0b415 Mon Sep 17 00:00:00 2001 From: h-d-jin Date: Fri, 28 Feb 2025 22:02:54 +0000 Subject: [PATCH 1/2] Add images and door logic; Make boundary detections fit background image Small tweaks on UI: - New fonts for better representation; - The door logic can now reflect on the door image; - Add images for background and start menu. The boundary detection now agrees to the background image. A new class for the room/map for better encapsulation. --- docs/public/assets/background/menu_start.png | Bin 0 -> 95698 bytes docs/public/assets/door/door_close.jpg | Bin 893 -> 0 bytes docs/public/assets/door/door_close.png | Bin 0 -> 1021 bytes docs/public/assets/door/door_open.jpg | Bin 810 -> 0 bytes docs/public/assets/door/door_open.png | Bin 0 -> 963 bytes docs/public/assets/fonts/PressStart2P.ttf | Bin 0 -> 116008 bytes docs/public/index.html | 2 + docs/src/controllers/CollisionDetector.js | 20 +++--- docs/src/controllers/InputHandler.js | 12 ++-- docs/src/core/controller.js | 31 +++++---- docs/src/core/main.js | 54 +++------------ docs/src/entities/Door.js | 16 +++++ docs/src/entities/Obstacle.js | 4 +- docs/src/entities/Player.js | 2 +- docs/src/entities/Room.js | 67 +++++++++++++++++++ docs/src/entities/SavePoint.js | 3 +- docs/src/entities/enemies/Enemy.js | 8 +-- docs/src/ui/hud.js | 15 ++--- docs/src/ui/menu.js | 10 ++- docs/src/utils.js | 28 ++++---- 20 files changed, 160 insertions(+), 112 deletions(-) create mode 100644 docs/public/assets/background/menu_start.png delete mode 100644 docs/public/assets/door/door_close.jpg create mode 100644 docs/public/assets/door/door_close.png delete mode 100644 docs/public/assets/door/door_open.jpg create mode 100644 docs/public/assets/door/door_open.png create mode 100644 docs/public/assets/fonts/PressStart2P.ttf create mode 100644 docs/src/entities/Door.js create mode 100644 docs/src/entities/Room.js diff --git a/docs/public/assets/background/menu_start.png b/docs/public/assets/background/menu_start.png new file mode 100644 index 0000000000000000000000000000000000000000..ad1d003a9ab09e41fb797a2a4c71b0eb798a9a47 GIT binary patch literal 95698 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 literal 0 HcmV?d00001 diff --git a/docs/public/assets/door/door_close.jpg b/docs/public/assets/door/door_close.jpg deleted file mode 100644 index f4e03251ef567679a2d996ccb33640db7295d716..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 893 zcmV-@1A_dCP)Px&H%UZ6RCt{2o4;z@KoG|Ff}i0y@&;~PxG~CG=n34U3GR;&NEHa-sx)Z>_XK*0 zB*G9}xXA;=7-5KCAt{26leB+kW@oh8z4^fv)*Y*z?>>Dydy-cs%wND~6gw;On?{A_ zz^SoMd=;J#tIjU*C&KS`JJ#8h%yzrA9iC|Y0y3Bij{~Zg&G`e@tMGIzSHM7Tkn~flUIR`;VQk-OW54bauv$W<3u+9alyjpNuo9fuF9grG}oB^?ollwst!S zIWwc^sq30NSkp8NQ(7)D+88s@XC)Rp>;2yRxVVrSeimNc-;0i~v6B#1@nbK`B_mOr zsPm;STS?}a`$YWG7tK`IbY)*~>$)DC=-cx%_bFyaDo%Unhi)e-ysV5NIv*2F+lL3r zDHa8!Udq*>t!6@0{DfFzr)e70W%SrRO^&_Xtm(5_5VqQk!PV!AEmG!>I~p6VNtXz< z8#<01?Re(FdK-~UDG>vOt6r!0y3^&srz3fXJI?*zkAJ8`WlhZPckF!4eOdIOsioi* zACvo6m*>%w$pK8AA^p_(39*R}&i#__TtPtAPkTgMk-;l|RaL0LO3!`n`n-L9+qQ=< zV6)i_-s`%Kbt0+x^x@s$@3-$idOsgBCZt&jZnF9>z$JE7RiSZF3-*F-7l%(+4=nCtM#~K z^8j(a-c+X%)Q#2o<6k&`-hSsCJ~`Y?g)X=WL5q)BRBqn9#ty$IF!QH0BkKHwK*c}# z%@*h8sz;rl5R&-1*&0ICL)`hfF1mBf8za7MwqSsD5^;WMi>_2XWbrlk{}ZFbEZt6S zxj)x@vEpm)`$6eL5%cgQTPO=lh$du>C_QzPm5?a$OK^4!vGt2N-*P$T_OjK%3UvV; zJi&aNi;l_WxKK}?(hk&#u8~E2!Skdv_P$ diff --git a/docs/public/assets/door/door_close.png b/docs/public/assets/door/door_close.png new file mode 100644 index 0000000000000000000000000000000000000000..60f0a020b9daeb913fe344917d16f398079920c4 GIT binary patch literal 1021 zcmeAS@N?(olHy`uVBq!ia0vp^o#ifOn4M6Tzr|Eo= zzZf`~u2-j(Z%_>oQT?mbFQR*&T_RD&JI!vs-0@~^s>74b+1@MC*-I+MYg+1- z7`@s5_AK4IV!|W^&CFRr^PW%rJwth^)3j6<7vD|WTueUBoLuGZHEY=vmCpWsQ&w26 z6j+ip>1)@^o!i@_U1lwNs>|l{D2Lztb&qNd8pS==1upV>c))afsLIpIywVee zuAJ&~JolHY92HZwvOCuie5*Dsh>!V82GD|#Un+0Uo&}n@dw278W4B3bXRN=!PgwBc z@z>|WZvTF8{pr%rc3hrQGn_P9j<}T-I=Z;T`}yDew$g3VFUA<(h&4e@7iRA0kMv`_ zu0DCOn+jux3d2Meg-Hx9LJb~F0-g*?oDOJ$5=)oV>+65{{Bh#F*w~G4@~2GVs=IT4 zbBEMc6(zaA#nWA$=)KZV5q#@%^OB|Dh8g#x-rK0fEStesw~eJzF!uQaxB4B0K0#GK zU-h2P%=`P>v%B(h^3JrvZOH>VSaY&%|E<4X}4N6 zG)q+NOY5m$?`xOD)>p*uKEHj(qOg+-xTpHA-Wz-5=cHv~Wr?w$@}d)!zGW1PK1(h7 z6tHOR+Ep!H8zf`iWdvtW{n57cPz$f``Q}rfV~@Bl74vjeZ`TlI~z#Yn?i>HRJ3!e;y5b z?R+KurBvoV9{`@`QQJIURjI3 dhwl8x{7t~f^lne?X<&Y4@O1TaS?83{1OTuF&^-VE literal 0 HcmV?d00001 diff --git a/docs/public/assets/door/door_open.jpg b/docs/public/assets/door/door_open.jpg deleted file mode 100644 index ae747cb85bc07e6f4d3e09d293f80ade2fd60e78..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 810 zcmV+_1J(SAP)Px%}*WKoCYpln=4^CL3@F6)EKe0w^LUdx%YlC=w!a*XE=IIssPz z<&Z-_iQ1Lsr>CcTdL(_X%8A!C)ARhPXJpBpOY?{DGr&*B{?I|Z1VP6!`4BIM*KoK7d-w->ITQ3iwfJgB~W$-hZG#Pji70XM!$$p<>jlh00lpwDfN+)fZn z|8??lx~ao|&%w5XUN1w;W9N`~Gw!qo{_x|a*3eaXynj*~8>byZ?%b^P^nK4B>~gsX zl+-RIZk${A>D1cJii4<(FQTEu*nE)#PhmwwlzaeIbAA zo2C^$ui_hS-}g5Yjo*JuPf;DMb~+_L^*9m8(mBUWeokxp`t}!Ril(5fmveRCsA&k~ z8{(CZ6OSw*pRD9>`DTg(*T=PdoOtTseT)by6O@m>FGI{DJNfAQ|0wY=myf=$3tpOP zg{XY={W4PikbFaY^2vRF@0)Js`gyO210ACBkH=%JI(A7^{xA$~97i{f_xD07 zn3Tf`>ED7<6AixYJ2@N<&N+7zMvs$)>(G-dyg-`)p#ykBjt$oklKefkl@h4F zkbFa8^2s+_dpnY5t~clr$v1>7AAO%jjwdAFkd%D%{TWjI-Z>=Slq~t^`*CvpAo+$+ zIGK4KPUNOH(MV+eU=(Z1mSwfo>Y2%>{4z`{6wrS ztrp3aZ+%Q_g%S@{Pdlxqexi1Lx$@b4zjg5wg>`26sdn0V|L#q#sa6C2ux3b+{McsG z%1u-$v2~OlI@FRsE38}Lmv0@Sa5vE4E98M<*Z4GS@s@UCo!M&?k*_$9CF*M|kwPtQ ojp8R%*H|hhR@|DU&rwr6UH||9 diff --git a/docs/public/assets/door/door_open.png b/docs/public/assets/door/door_open.png new file mode 100644 index 0000000000000000000000000000000000000000..a31546935d42f783a5ca5a4d5013de0320e40d3c GIT binary patch literal 963 zcmV;!13dhRP)Px&eMv+?RCt{2oiUHoFcioCMIAw646H0jOg9FJm5HTdXJP;`vGhY^VXAsVCw5c` zAtBw$kgvceI65Nn0m{%iauX+gv7en6+drwgsCUWve)sa?+VRT*>2cJy7nB{Ao*FVW z$Ll{rhh$PPTrvhd%uNz>X{&AzhM_l+|k0d2hepU)!zYL{d(&7GjdY(2hpdl#(Ww zQdJe!>vi9^k2s48DTySdEKAgNeeoW1q+C!{6#(?fIs#bu%t@mor7TMnMd70@4SG&e zf^9x(mxqv1uOEX(F40h2h})6F`c49V~vMO50kiYm#Al(}G%l(Y~Nx+JSaJ2maj zp^qz}l0?2d`{ZyqT+K^_9y2>j^azp|B~#JKNmI&ccOs>5At|IFsX|Ny`&c4TiryD8 zbs`mBBuNwEn%gcU)pc!k%1M&~@FxAykt9)wj*lzi5~nefrW>H5NxBRhzTCfUwm(1p zM&8dDNihj}_v?xCF_ff>Xqq#xZyx~wiWd*rj;TkIJ^&YmFfOhRx^1?*5bY2RX=E~W zQRLy<&32cptkGlKDT=b12-s|QB8E~z;WS&4iYVtPB}vmkzTld7i<&HnK$b)xOCpdZ z5y+AVWJv_FBm!9yfh>tYw32@R_=}roFIkQitt0^W`TdSXRMe6H9#PRt0^CIOD~XdVi9nV_AWI^UB@xJy2xLhF zvLpgo5`ip}ih?ed5Ae$u453iDDtVJ^`&R8>MJSQ!rK(KZB2g$WzxbYbX3 zl4|4>%d?82U`@DObSg|JO#ji);w)>|vNNi9LR%cCG-~<8wzv?|OvMw(A5nZtqvEsV ztHN}3GnINJiE}wcDMjz5g4zXWi1{!GDT4>w?s4*^} zaf?P{HWM{2F|lxoOI$OPWU@?>nPjq>iOFOVlT4gU#%xT~@Bcsd-l|tcH;c)9zu)&w z3cBi5z4z`t_uR9ebMI4HDOH8HK&iRy9do?B-cF_TQ2aVpb2$H#b$#nMU%d88 zw3q#bo=NDV1BO^m|^}(9^v(zGLpc;ykZAaRYt` z9*C~P_l5XAe#7SeOFvb;>{)>J4@xDE+O%~|_jTWX?I9e0NU6y9&E1#w1;=H+fa@D^ zeRfOt=AN$mu4q##`ZVDGY2ViE{pY{u`hQev5?~y1X5Y4+zVD3u_Adc%9M|ttTIsjn zR+acviV*VUDeYbAy-WEx#_!&(Y6i}YS23K)sk77#`2Fe3Fy71a{%gF+f9=oTmSeUQ zdU?Be4ci*F>v!i~P&w;&$~Sj>>zM5CdEvJ%{Z3g8y)M6H0nvh|)jup* zu}|xpI`jIOxQeSaefw0b^~p`kW{nTj@jT8YyOJHrNy*`fAZ~x?jh+>q866jqA5yK) z55Kbd%G8xn(o+JLRJJ~kzRf@R#aHe7#_Q|PT9MCPzha-iwte5x{Pt}8N~MF`^=p>l zN7demS1#EdpBJARuZsog9*O+ zvN)$ev!s&<<}3x;tW-nfw$}zUCGT6;Y*O#ux^3+ib$R%G`;NZtsz3Y=Ftl(JAqJt~8);kv zQoa*T;Uv5(mC`@e_vrI=yN-j3KB6vG8`Mc^gq+hDuZOV(>JRFV^2fUaHBY@uy=>cw z zLez*~hndkpYWdzs{Xh7nLPfop`Q}CC^G|GF|55M9ryC7too)UR_dqD(&%wr{p=vU& z>)XeWg84gpO0VcbWY?9XihFEJknIufUN4rS{`r zAL#W2{M)Y9sBNkj-}`Yq8GpTM6F#@%*Y!AmrkbM`s%5yV7w5A0wpDGxwOO?kN9%BO ziR#9+J^003u?e4R@O=xe?@?><`wkqh#ql;A_oF3VyA(9G5T9qFXI>j_d0|NljW~C< z+)dcndsa;ag#62fAS>v{FLJK z67+Bhpu1e4?NQCp&65Fl4|+I3wc%G{;|%n;Mb0f2{A~xmmf{LxvtKo-#cGmTg6q}; ze}sP90a$28t5f7(u?1q*wUL!pvSqCl?>ZTIvKrj4i61ODMZD)4(ylX>{FMa z-Cm4=7$Q7VFmFvbB1Lg74%UJ>yH#C?E7!>Vvw;iF9I2Dkcr1P=HZN1T0kM4?cs@Me zgq~En4OC%hvq;a2faA^hHLJ!Q6smFHq4D92c_rAK^-FJ~B0!I%n!5Q-9sm(6p!N8_m_tXEy)+wDHp}pZ2wu<616n`NN5) zpZLw`vFUTBKR83rxOB!>X8dtx^UVI4pPKotlZKqsb<({j{p{ppPrmBpXJ-wWwSLyU zvwnTbxu^X4)U!|Bb?URH)tol}v@1`0=Cq&ZDsvlh59D5(J$m-lv!899(0WDdKepAk z-QJ#QKd1dm9l4HcI-c(M&728ymdv?h&RcVHbFY~D=IK|Q{_S~7=iNK+i}U_#e&hVU z`JbBqFAHiHtX=TPg5NBhw(zQjpFQK)Gp;-1pBB|E>Rj~rnayYRp83q;>c#68fAOsO zXZ_QXGnQPlRhd1vQW&mDE{taC3v_w(n~oOj20pF8h2=Z`#p(fOC3pFjUsUE{h| zb$z(&H!DwHdC$r(Ur>F)DHm+J;OSN4R&}qsulwZgtGoYW^^DbbtvPAUooilSyJ78* zda8R)?zz3^rFE%w7q0urx*x2MuWwp^&$mOwlli(terRR{Qj=VyFR!( zvb%ftt-C+F`|T?xUa{kfZ(SL^GI!;rSAO)$KV3EPsw=Mg;kzfld*i#me)Y*$Uw`!v z-!t_+x4-8{*G#+Swrjq3ZT8xWuKmQdKfP}9br)av)9a^QfA{sTUjO!zBl^bW$!)zy&t}5)J>ajdibWF-#p>w z9XJ2zmMynDd29WxOK!dA)*s$B@wSb({qlVc?|b}x|9bn}+dp^v@9&s)$LH_(^ZT3M zzw!N_yfbm<^gH|ReCDp1clF=(^j*LEz{wxj^MRk-ebU_@{b2Hg8$S5e56%0~XFl}P z51;qpYd#YF$h$uBqmR~q^p212zvt|GzI4xTKQ`fG+dh{6c*Vy*e(&-3e*V7neeb&O z{rA0a-)r|L@1K7E`up#^|KIO_^Anps@skH)57a-f^nra3eEq@d2bVl}@q>3i_|`+K zAKLZMT@O9}(AOXO)x+B!{?jMV`Q($I{KX@qA6fFq_DA0T$WxE}^QQv*JLXfnKK1IS zTR;8LPrvo(X^-X~-Jd@te^LJFeR^MFU-Q0u_r3C%|Jbz09)G;)@fD9>@%Yn^|KW+5 zPjo(U+Y`?`@xv#6`{d{+r$4#z$vZ!D%x9ke%qyRH^QqBKo%+=KpUOY=m8X9GwEy(P zr`JAx-P4ag{mrNMKQr-}3!ZuQ*}2a?_1STsed@VY&+UBf`RBg#y!U+L^J|~~((`|O zVZ;k_UbyImyI*+rh5vl9^2JkL-0gBs% z{^rYXeQxIGx<0oBGLi-&z0;wzKIAiqzJbrj)RnN$nsAhXHk_%h(5LHeeTBZwtMi`o zzUY0$`=PJ>qx}~Da(}nK*T2!f#s8T9ke~Ozuiq9hs1=&5p{B$&Sk&ot=_BDchdy&pwiUH2XyM>Fo3M!|KP? zzi*s3E;_DqT=lrxaihkK88>m<>El+7>zVM_gwITPZo*3wzI=4_=v7CrIeOjE7yg(2 zA(^DP6y zyfy@LL}2a#%nC3wYM|f#9n9D-3haD)0N&P1=G)tszP;@2IdAQJ>v5&tnvK8gTVwHF z&$EC2Po>^G&Rln}_n*}A?2mu(lVg7TpFe*2$G80WMtr;W$JhLL_m405@fk|Jy7blg zueQEA`_+lB&U|&stK(nwfAsH4z4FOd9(?8ASMGV`wpY%7#eYS=qJHpZ_05Ui$Qwc_ zN_`rQepxT`?(_Z`LN7J z+1`cTaM%M`FX7GhD!lPtjW^QEcq6>IUb{EP8|wAKXQ+gSI}ASDcr`&C4=Zm5=xLT} zg*7%$ErXSJjyg}Rf>lHNiFVE<-e@oBjqxr9wOt4Q>soc4dat?_p5BMl$Ka_viWt!o z>RI(!cx_)*UsGRK-&EgM|EhkWeyRRL{aXDOIO`%0{)gA>HF?$EG;fyI;+^Jg^EP?c zc$?K9yraD{yb0bGZ;#jK%@_aXN^hCB(Mx$(dm28^F<#7zdU3B7K2HQ5aR%N}8s1%v zs#kUJWXHm@I6*AC;p%j?NX>_BzeJtkwZgLQg-vDbzvb$?;QgIyw|bAdLS3z{QG3;0 z>Na(UdcS&DeL_8`9#S{KpZ= zqVR4+53YxFxk1&c8{wtyfuDA>8mVr9{q_NMlzJaH^-k5G?pCAK?dlkK=|`&%tK-x? zuo^!KyYOB$5uVy~&{~Un1U&tKI#GQJ_W1pNBu1 zpN6;ajA~cU!Ebm0mhhIvqd=d8dSJVpi4Rx;iXIR(&q|R60QWvQ2 zAXf5i)usLgUdSu3G=Biw|24Hy{X2Z9S7CSl99Hg6Vdwu$U8H^mEB8NPps+Z~I`fS~)&(&Re zrM^I~(yR3ry;WbN`}8)wU0>(hPt!N)7Jak+ zl>W4yu5Z;d^lf^kexE)`->y&Acj#IA{rVJrr#@Amraz!_`fh!fo~=KqTlI(ZqdKqK z^oJ3@`H1e&AJuaZ&6%q|22J#FJx|{Y*?ym1pzqfU^(XWh`T@O2Kd8^t59!7FVSSeV zq+X&Q(I@I#ym4N=*WgX`8olGa?Owl^_D=Ptd*^v8yiV_2Z=QEL<9L)9`27FU-!2O; zKM(a+KCXeTFTdvh&F|&#{3U(=HQV}2;27*)!Z+AC_j~ym!rysK_`5rH_qy}$JI|N@ z=Fa^!K3)IrbD%bHPG2$r+yh-Z*l%tegPkAj_krMYzrE8o2kPsu)s};8pgsor?Qr^a zZHBLPzYWypk^B~Jv;02S$HA^Czvocj|5|MwE^Mwp_jxe*25a+h?mbw$Ja@Ql40hdM zznAyR>kju?ckkieb0qB!cI{xlJ6J-WB6IltaPHZU>%xDbc1q-R_!`%)`;GVT*xk$X z{O+!E=fl63pXW6^KhQnlbFNSK>8>yT48!7%!|jBx=dt@9zNWkncP{+N4pT z2Z9msajr{rjDrof-J2)j?<4p_p6tz|2q*Ko{Kw2LY-!2wmVT2nyYi|rn^((MbaZC3 zNOM=5wICl|dhUw+w7UGUovYSm_by+N_a=0kr1zSJ)phmtdDWR$Z4K>@!B1{m)jBD! z8}r#!>n7#B#_ZZ`{-wqF;OKK7J60##I@WaLqa7>i^Zta+CFiZEZ>X=^yCR!kycj>_ zI_t9e89bWN*_qvEuI^r&KNdgPZ`u45o}a=iUs}8(3uyLsXY3p4i#hkXMUW^mKMk%KMGkj%+@d&<)5UZHrgrBMq(jXhSQ;fn5HoN%^3$ z0dQs4?u)E$&GHN(t}_tuJs+&$;b8u4w42 z@66_NOIP4r9fxN7pOlX@=3{LWA442UFcrnuhSmmPyrH!_@2y^!*J}VpK63n|e5^4` zP*ZJdo(|M%TmoQot2%kfs&)Z2-uPH7rP?}LkFPJ_KG9e@7fI8Ko(K>C`-D~5j=c@t zoEO2Dsv}PG**XB}pv3Gnbhn!>QiI%{ACJ3mb75%Vo6;nqhStYYNgtD4*HGVieEp<+ zrg5L=b>!D}w@=DfG-3eRY(CvKpX0(oLu+R~!*5IQErV~9@|9?&N>Gvo2G#)Vd_~); z?A}$`dl<*JI|eoIJZ}Lj z@N6eWG8gdA#jmAPHOK_+Q>vx`C~nKEQy+u(E7VZah?t4jv1~=YvY|EGkxzm6k_{lZ z*6b>D|73NwMtGyOb?>TuL!uM&dnVS61Db|nY&8=nn@$;z0eQ|z{ZrqpP=W&g|g28(}x(XO>$WG4dE;7iZ{PCfa z!wM%aGAAd7P99x2xy_s$)2Q;9iSJ;1V==xlfGdmf@v|P|M7USb*V`Fxfu+OAMptX8cwheQ;inP#;&wL|kb#h~V(!~5EaN!AH zfVrU50okyjdqx8#;z6$f8BWSiDNL;%mOtV6eGy&Tu>yjO6F4=DnFCKZHD+4`-ez2< zI}Vfv5HbUT$KTbkC+O*`_EQ^X>}%4s9NaV@01yv&&nj?5_l!yTmd44$XHCkVc&JN3 z!E12&bj*nwHX%DXJC~dfT+Z9OcW%R6NSYN;5s<792PbM>I}|9L0TDGUUxmv8NX-dy zSw7J=v1jk(hHQ4$UbHu}^pfmk(^fvfO}H|fUqzvjJ8Q+`Ue?dnJ??iqCr z=wS}VhY#rm?G4Zg0HMSUASEyf5l|KsL>VM#u^Tr}5FqdlrA1L$>21q_|ZLcBTODr2HwaH^IK0s#P=r%7^Tx_f!aq$;9HEd{x_u#dT1b*;$>F_f6JA z!Jwy=oLy44xa4fECWbF?H@Oa58}lN_or z9gwXvCOSOK!MB+c>p4rrgdIs?&~q{9TEpNlH^9p^lk?NS&!-Ra`#dzKht}jXJ6aIgpmng?e#KBncD#W;{(&f+y4IJJb= z@L(yg;lVOq!-M6G$RDZMI650gT8_?Xd|aE~R^Z6|*2(KMuRE95$)`84uB6Oie7Q@yR$B6AT#=I0m4UnG$A=|Qzl3YnTO>$Lic&gcqc zgN|2!)RnqQSF4G7h^|59+)(vZU5i}P*WkN-9T|_|dW4#!N2mYkE%SfNxw#BtOeN>E3%98)t`{}XxANT zfu5u1B1`uj)vr%SuIUoB1DTKc$a*YPXXrE3BIG>IRA(aNaTc;2OOb_Jtj@Bzo^z0y zTB0t~E0BxasV-;k2YJX{u&9?JOSeodmpo6GIvZ8s|E~V5FHn2*Ds>KWJgfB@XE zwa5crh0K4CUZ>aV4Z0VZvUBx?$a|iz{zGp>F0)H-Qa{(5kqvwqS-X!&MyU@uC1#ZR zkxyb)iMgZ8kxSZXb4gc9j_GRTkgh@g=sM($_8@0;1M)@hMXu;(eG9Tgw;@AxJF-LX zM`q|Qg}p{epf`zocK*pVNP*|6YGye?fmy|AYRL&B*&V~z1{u8H+MM3+^&ec#ss6KmQ@^F(220r5R4;;TZ4CL^1oFlyWTi65MOPwAU5zYt z4YJU+$X5?XR(d2d%5}&Lk4AQxS?hXav>K4Lo`8(-G2XG>amZ^iyEVz1?496E@unhw z+>HEj3v%7ly&2w2?}Y2XftWz0;8ao9`_^-uVn~k$0xI z*gMNx;w?pHdAa%^a^>gPJlT2P`CgZ|(!0Q0<#l_jy*1uiug6>Gt@k!~z21e$G7m+L zcbFQE4DU$f&FfH0yAiqT&E6K|Vc$UQ^Y4+7J`MTT>yYcMMD{j7b~lRr@Hk|6Bgh$# zL4LRu8Q4|G;^w3p{c-h}w^dbneaJaKj7;u}>hs8yg>N0Xgv-ksH4N z+2MDq&v`eg+1}0GE#9r(ZQlF5+r2xy_j`9D`~L&v#Qzof^qY`PZbOFr`^X~yP<_w4 z%lm+LxA(zd(ei~0qqA3U>$$imHhXjTnr&OR#Aa_@zjaH`M)+5~+t%#Zylzv^rOCFn zTl>4$tm)a(A8lXLjjQmnZEJUbv_tNVcF2#(j>2WJ4%=FXZEbF`we;LITQ_g+Hti+n z7VZg7U){Yeb$anaZ{GaqJOkW3+uS_UTy$Q4@20gqsrki=(+fhaMi+Lk+0ow|=?{{ojA3alg&78Sm$CmZo+jeZ;)V-rWcBX+Ly2RYO#N4|i zbZ>O2oJuV%f)y;oprXs<+SraQy;GW|&W6Gh$JC)XG52{v#VHxw_7_Dbts?}f2m+gz`m#$GeJ3yT-0H-=hGZ(P5vr)SHi?k#J3 z*F-lNyl*mi-xRto*o5ArTg>?_=KPk>dA|pk+-i`%wFK!~4M0&W5+S{8Gxu%_-5cF5 zr&8OCFh(|Q-Ligr(9fCempkmtwnlfDPIi=Zvcryghn?9SGP66(*e@xzo4Txc9KBq+ zOJsxKRt+w4(dwrWd-)8aNX2;WRe{Z+& zwcGpK?fvbxpLW|%hrO=Dj-$g~-(j!su-DD8?ar~+&#~9fvDeQr*SAbH@U={}{WRPA znk}5o_Wou|A1#ia-Fe$?vz^Ztdw+{NZ~JSu^Vw|SY_{~!V&}ct;;F^KVe!-KzPsz} z_?qqfPqY0^v;9r8@J@5^+UuuTIHy@Sr&)NWS@@<|xTZO{T>G~FX%@a|7Ooa|orBwr z-}PhRZL#gQ*#25EJ~ zw#CnEb6<<&>)H0Y+3q?EN2|TQ)wbJe+ikVix7q93EWB+NPwn=;b_-v-y}#Yw-){S9 zxA%A0>pJW>I_&iw_WBNc-5lHQ9DDs7d;J`H{Ty?B%Txnj%TzZWJ0G*{_3ie1drM^Y zroIi`L2FNccVuoi3?LDZ%@7bBecOAXQi5}F%J0DGWgBo5%!ADpS$BaLv!A?Z@$0h~%2Y!}Q)ag(y0>iY z@7dJTYw2dXVdN>Zr}*t13)yPZl-YBFjvd2{~N5^^z^-Xj9L+{#gIE-tP4~`lQbmC?NU1c8mFL z6i?HMQv`B+o*3EQ*S)qUShH!z>IfFaZ|je(?d{&Yb<5h+<{jI6*K}{iTM3UtM2YU)xaK+|qz0 z*l(rvCH&jJYZq?%^Bqj(@7nd&o?Q}`GVN5t7rk}?)8V-je65pMm)e&?j47Ge0)HGU;_G&zrXZJ*kBY(lIX*nIBnLmzyegBz0o9xdkzlL)_DuLy`ONVF&{csjk8R zDyz*alc<~60T8>8o2wh}SzX`K(9%%bunScPyLRn=YY#tm?eZ?-`xjhq2?|vuucjm?f!PqgQkE$CrazrpZkP(}aV%*h<(Gzt;OLL73 zld~oNIPlsA8FFnsN4Xzk=G@sA>NYm+dMl0j6NK1bWsS5Oe+;uZR(;xF;H0FEXVS5F zAI2HWq_@B?&%_ggh)7Tw>G3d|y34Qfh>Pl!7mEceqdExY2N*xlhnq9;^lo!^Z08Z& z-kCc-9#_gCAU-_qro6HulTIZQv1lZ~#QD`j615X+Y8zT2W#}LkI8^L6Q*Mx9XaETC zUn2qv=-4laB8NC?7>?*lgL=l`qCKW{751IztJYYvP^orCv>(-8+V^@807)h)l07Pu z3A$7e%v+$Us?uF5onE*g4iqI;4oP{5#QX%X(jm=M>B`-INjsgnaY{9etIs+FVb($v z0y?Pyg&1}KUW6qY3T#mW=JpG$;b;NaAwCRxERu*H{0dTfD~;m;DCKE`ol{~uQjrNF zeU&;BRAjbbMMN@@PWDv$Rp4;dMM?o$Dk`E~DjFqPf*_2R)8zh&NM^TbAlP|iEp+B4 z$Kye8Fp3Fc0fFAdT;@9s0P47VT3pt0_kB{DDKcf7SdoLeGqAaA$u1cAWgtQ z1^yvw_zH87k9cLBde}-6a7;So`F$CUIBaSQVv+G!GTu`GOkg#L5J);L9JFu&Sj&s8 ztV}?r%#Tr;$jxa#wcFf{u;St0-kCd^sGuk%mjpEdl}9-ms)Q=)2d4<{qJaqF0CEs6 zQKC<(5u+WAsOU=u19PC{B0)0I2ja$t6E+1YmA&lyx8hhijt!y zf;2!N#xStr#Htw|Vs<$Ah`b@n#)=N}u^%?X9&m~M(TI~$8mSSUaXL4mbwvhJ7HSld zKzUF$X^=@e-lI|}zYBZuh!{zB0b`^RY-+T!sz4>D$n6z6v-_Rg51m^SAjAWxx2Avw z>RcmHDK_Mv@JqQg1q+mmQb>vYrGhjhNo$2hCaAx&G@_~^L8L0!ozOw0A8Z*~fjvYr z5t<)EkWn6@dr~?Yjdi7AbU^9q%F0NWibNJJs7ZRhuU1mhV#yh3B-{|x_0D(LQfKbi zQKOWaFy82!QKLtJP{>HgL%<3v;HQ>0Nr?o3<`F#M$L0v-izAthPLPPog=*1n0BbNV z-=IvjwBm?{KZWg0(#u^2S2M9HD+OYKCF?_;1S*mYBH$$zk3z11R;<+t*#ce?tQAP* zWZvuR)NZ*McIOe?-I>FNS_cqFra&Oz6AYYxP$sovOH+E{C2G`KBcKVfKtuY27I}@D zn`_5Rdk}#=$lN6SXaZwVLEH~|R4nF1Wjr3~N@}sAQPpSV83vP*8A&BZf?CB05>Rw~ z3rzc#dhc~$6G9tyJ*;8i7JLghFa!Hx5W}1+SU+{@tlT0<-MEf=eiT%fNNXr{tYCzh zXU!a~1;apYGMQNkzRS$da0O{yLDm-OqY~(u-U1RRC|n_jYNLi5YK0a+2(-hDE#`!V zPyqA_bK%ZTE!t&3Sw%%<-;ioA1Ex=BfV8wqMbarsSJ@|}K_pfx zXP2=VRavq7FKP#NSrA}VcGxr%foiw}lSI2rEO+n&L@N2Cg`^@@hq2=Ey}8y{?*Xk!ub@lve&Rs)^VHtuRV<7Z0hXSeaw?K~(l#E8^60>Nh(o83XAYSGi4rD%!o*au_ z*XPy_sYG^Gt26)v;lca~KzJ&Ee-#g6>)>&TG6ck_lr^taJPzGhRaM;ueYJ@26ZP<5 zoMC(*{Iqn!n5SYh|1c9!aTBnGj9pk0me!aHMEJN{Uy{`3p?8SRqcqz#G;uPY~OeymF~lkE24e{ z^pc7rSRpzy1)T|75bBBX7)T7U08**s%1WI~&QH=44>uD}Cw9N1b_4~^axSxos=%VO z7{hWBBe&B|TBqhU{3oWfjZ=h#%>U`xFWMq0bwZB2>iH;_>wz9{OiLvebv97J_K8{B zhmlPF^EbYEGbK2f46H?rhouC4)T<0vO+lnChHw|Htq85HLZA=9%UD;E#v=qoBqE}2 zeiT$RmAAk_A@v;IJ)OBBuo2*b7Hoo)wF!n>cmXp^HERPn&>4I+;8RjiUZBUKJ;b=( zon{oxFn|*Y$Oi1)7>h(*ln(j_0SAPq5?vXFqc9MRbtN@u90QrgyI|k#K9bvD?=Vbv zknmhZC_EP)A2qEd_u>cWfXxP%0;EZ7Bl;IWPW_mGhG>DL; zKxut2++y))tWsQ~Ewnt{NN743XUq*o?9kAF za9BozHS`%AKq)^Nj{SwzPy+6&48#QO;x%!nDG}NY1?n;-fjS3SeJz>z%^^j;7RwB_ zfCVmuXCHR`oLn2dyC{6ac*tT2YkU*LN2EzCmdcY~3Vf}sm$Y-$k&!z^=m93uS4Z-@RLIusjw4Ic^_QDy>Fzy#7oECc8D)ip2x zOt{RU8U~L^(qM6|5fg#}krzb`m{7;%jy_NWM&QRG+XAd4RDud6niwH|zmRCPqfVnZ z-r5uP6^E;j8|B5nC@tfHMvLx#JRXv)IX2)&X(L0z z#vqc8u!+INY&c*b(MPz;M5BItIJ>la5jl8=%b?Q&HrQ z7%NIdFj$+(s&G0o)m54CQYjEkBvRCovlv-WX~c})!R-h_i>|DTyEt@6<`vRe5`-pq zLb*U+N(NKjZPcWwGiff1_fu4ww4L!Ms0hhGMi@U}#y^uG5@Z?RI8Y73SO$q<)(|sE zyXa~(8tF>GsKVf5vE<5(Gnh}3d(&P79>WpdEJ@n|VulsQi7iBgpndF!jrJ+%9}d=p zK}<4Q+=RFGPy>-iTomC&Gs<}?9tkLC)4rcx4ui%^Mi3TCWDr3}AlM#@S>HRQecw4p z$)pRlW3zmOh$<@=RYE$&XvW0zD>lxRh*#OP^rZVK9sVX+JSK*Wz+`|(2i)a`{n65=Z`P;2_YXzFc0EPkaCr)$zy{1v7mjj5;(bsK@4XWYO9 z3NYnwh^V&|1wr^a!*7@qH$HlDx!frQgQ?)XNixy7Z-^}V!Akf+(3^ugVhBsg1&kJPZ#?>^0E{rGSys zm^#@HYnbT;=RJ|*40y%auTh%~y&eq=1RnCRQmTM@1keL994^V0Xkc8L5XJl3x4r|nc-07v>gWxMvI`B^XhY)E2 z0Kpi^+W8KGFd(j!qAE#IA+JHGhuIICqL$*H!|)qIokNN-n(X=p5nGZj?YTysLFHqk z3#4UZ^c!Nfu0km>ABN3eq#s5YKs?|oK?PtS^@K?~%vpa0Jcy+q!h&0mboYyvN|~nNFg@~y_#Ti z8MTg7*BQQ=l+y4rBSD{G`;0HfB(fN=r_y3iu~01D1z08GGFh%i)M)o%-5_3_DPRa0 zj!29IF@)4B62m301c}`ebL=KcjqJxs#sp(XX0j!f#6ii}Xi}AG=gGN=w5#-T*6TUD z(DMdY77T?rX-#D$Z5shi`wS`@6^AwIl-x;@9nr{+D6B-qDm{j*eU}RHyacFR#Ls{d z#dHIO2dRSGrYHv)n2~nq)kFZOq>BBHR?nFkI^B6XafHj`8Q8IzG^;Uun7}>^2Bc;Z z8j1EuL?Lc$3sQ<1&eY1v3OEH4O`2cuc|vVv5-9dN;>IL|jPSOLB8QXeHiRq&G6gA( zKuH?bQa^!o#UwQ7HgrnkNU(3;kkh4wWVopg38iltTr5#B7$7iO;waIIR{F*>}eN@xL&K}Cfm;NVJQ8|bcTBz_lVU@R|Vqe09^jIG#e zRiY9K2c zuLu9q)-`!y7}U^}q+`fsO684Aa>1yBTU(UK5tvP@%}kC3O9hB~P@m)3Nrr9-GBt&i zqGs(Cnu>g&OFDD4QS2-oO+^uZi^t3mW% zhtw$8nBXNLk|^xJXmnAO2+XLAiG9Ztqm0WVh$LlGK+(=Kjs!l!Ixzyjvnh9i%n8d( z9WipOq)?1iMv;gX#t8V3M#t$Y9` z$z?RG_sUD`R3YD`Svgu=N}VSX0O&f#t=Tf-gh~ z*dRd=qos@u13v{5#OMb`5th059``kzeIy4XNDdx(zmT=mk@By+U%FzLu>+$n!)eE% zPcP0QS?rb_Bv73L=uGi6Bul&tY2tQt<*esn+bs@ZksHRfRQV3V_RhUXXJB@Iu zg``-)2YPBo(F3WM7!+Xr*TmjIlm!kYWRY+qDa+`RTCq<9?3EoLX%vPx4m5_rH8EE_ zPYdCNWO7lGEL2)MmKG6iYG6R!7BK2}0mlLbC}^+|9WoKeS>Kgh>V(jsFva6~x?Xz@{wa6iPCxJ0cE%7EQm{=4dvT&g!+v#|@2D6J9H>M5Ii?Im18qNhu8RY>lzqN;) zE$GEDEQ#W%=x^7lb93iFx};-?bWbG~AwV@`VkYc^#R(>)i#jk$nM@|Kk{T%@PB-JQ zPSg~uQU(mghJlr$Isogk^_*b=PvDgpei_K2nJ{^aMLF;=>QNG&I5e35BuOBVaJF_T zC4Pbk#u&1GQnNAWx)(zdLKI>YGkEG7(lB@vlh8;=G0qu91FjjWE5j%01bhU80r83? z%=C<(29Xvj_){rY=95e&x+;vVZnAhxk`9{5s|;uI$|)G!LnIc-*yuBe9L~C#{SXcf zH5anohMF^F)QoBtrqu=^=V^|dkK{I~?lY4xNN$bUZVg$=a_Mr~#!v+1lwy{)K`Z5y zQcB&d9>2p_c`YDe5J>DEFy&V)qf<2&W_-r$-VW z8Mms0@=&xfof2weyX3}=l-7ymV@{i4SYZxIM9a*@5sR1vKZm6hxnp5&9-Fh zBh`t73)Q2J393YRf{|*v!@+?$TP8Y9%%MzRGR;{|ZG+KTN+isx99Hw7dNP@YcbJ6m zPNo>>bfPtit6=(<33VWs!Oz+T1kq?x zI?gc6fFI-+j>0hrE#)F6O-;F@9Eh4Iv`ZhtSP8hekThuscpqBPR?{17ihK+eNS!G6 zVe_2bM|9(%Dx#dQaz+w9!7UV72=P;!fji{IbV5jG@wbrJ5}V2BQc}%nNaG^4K_a+|=f1xo{1NO7gUEo2TX2xlj?h4_1~{;-d6uQ9wM0 z#z~vuWK<*~zv0>Z28tS}ydmfc)eM7M4)h_6-B4c(@kL_(?%+2 zD-;GHwVPBunW%@PjgAMBMw6un^A@C_UA?Y~G@h0NA8Z(kcPyN^4x=3$3Fv~X_e#R?`kbi9hlaJDl-+a-1%S5d zj^zbdF&A(JOp*QRNm%d4hO@+w-cx3ui}oo-2Lq8W$P4 z8N0C#Id5Mb!Cj?$HMU`;|DssYhRgth$dyp==Oa-}1A~8r1?aBY(bc7}G{-FoNG2u5jEV-S(ixr(xvY{Ka{F$C3;Sb` zbi?V$0OLfBjf~Od-|rx_^Be{;T)8!zem^KKjasRg@*&7$$ed$~0xUZVEYhI!jMat= z?19h~{OJn#)9@x*M9IQP@GVqk!hka>SRl>t81V=s($N%W6LaOL!f?U?wJ624lVUx- zqgwVbNC3vnqFMPxwztzr@p%9|sJ22qBl6XZa+eX5DT9Aya)85++d&7zq^!o{S94U5N(e;BWg+hn)Im7Lum zwXY5&$gcY87APYECcqgx0f(S^h%!U<_)#=ysl`-YwZe?3iF;t`D9~7uaq#M$8qkpr zPnSfGgnZclfpcY~mx=SFeExzIyPId)fcrbJx7`m-lMJ)0|%eXrIRIvP{P`D zxSE+`@Gu#VLWFvf*gy`>)I%ZRD`1+iQW>gbrHOMexP0nqI>DKnG{>>4lC&&QR!aCYKq`+06E{3C%l)zW8b+L1$!!j}SwmeeCkMSvVgF-EI4#cXRZn~S&Ryc?JP!QffkMJEU;io3MK=q&`a&-Vy+bd zg(Mc9iJyb`NJwLwdSI}FEXB0@|HzusX1OUDK@bv#m~%} z5_2P>iDlU3)T0j1%n5enT9Gb5#a@C-g6LU8f0ot+L#7vOArlORjwtT`LGCuP#Z10T zJYe!6(nYoy!GgXCgdqi}S&2tGNNAA_S5~V|hHoEBq297IMOiH3fR2yFLLTD@aziYD zI4DVK4t9sE*kOX{z$9^Kjbd456C^I=E!ZX|DIPf}W3Iqp5d7k;MBdv9MdXc8K*zOM z2&%;xRD*LI$EJwHJz{GKUn9f@2RW%&?&Vx$n>faROP0KzVOm2u-l3X<*Uj3ngSI!g z$}qgmX@w(T$PDjN3Ln(1)ClYslhBN?}w-ia1 z*%vNiGJ&oNoUMdmCA)8M@sf*lNmHb!vbNw>?>wx=4kzH{Mo&5Kn7~MROARKgW7ym9 zyg`F~55H_|3-k`(71W>bBME;e>cKsK3$y%%G@A_wP@RJ=uyD=VMY+Nf zuJRUOlk7ZL5eo*s?DfjYN}J`WJx_8cE4!FllTCQ{*7l6xpp%X__uZLX%)SG9YFE6&K>!5dExs zFZF0yaq+wvdz;O)A=MF&VP_GB%8}7P1wd3qDx!t$Pb*DIiC!F+&p`-RRJa93b=b;_ zIbZCn@Ru}$J=mB@Dy_!=2JABRLddO}B@ZyCOl1ZvOiKdB<|I~ZXvX11JZeFVO(B)y zrWgyU7OHsAQU(1Blw*X{lro+l#19fC$etvfD)D_;m;tOH69JyIiys)hO(v2o9W3ak zBWt5GH*)YQ$0GGRbK5wL1uifHCm~4G#}EVEF=3DLolY6&!2VPUONL|EDF+0AeSzWV zBAx~Vq^H8qz+ouVNEM4fLL1JQ8Y%jXChAd~y^t+owxBek6G4Y^28Q6IBq`xyqg|~V zB+<2!h!G)w(#)DLB6zvtpuCJVvaFjLgqd3%Gr#jjI&_|$RirG*- zAZJ5!AP7^=*&yID)-F=752;!!b+t|(2HgD!X$EUx!}W1`#Ko0Cu_(7%nKl$lkXgpOvnj32-c8Aj*Y)UDBGeB@+8iSy%eHpQuJu`sKHPxtiCkt zRv3ylBub~<;v%ZfRAFD$P@z+sG?I=WA^474IgF~Of-E*V3S5rp zo9x8wRI`j&c(^E)+;3Jc6=|B;w6ShatTu?#xJcwA@W3h<4=%iibv(cWj6!VM#+Wc| zWRMDFGB;omRh5FdXbq)yX(djf{LY&RUJyCwfDA&jF8#HyqwXLKF@ zO^2a_XbYS4A?lkr-T31`Sfv4T7-KZUP%X;v?xH}uF=2(Byohy(AqC6PM}6@_ICD_`7k>u~Qm=#E=}7Iu=YLMOmbu|~Tbu+$sa zu=&Dbe8g!z%!<5Z=YSL?HiMf8 z5}BC}yCx7b%}9P*4tuy@;S*=TEw9C3P01v{N4C0}blo})^&Od?x6!<3b zN@N=PBFRfh4xs{5hiRO=Yo8%8m4Rc~p#&(Eok@~OR~1h>r?U!(z_}|~b|@=po8+D( zcP2U9o3P@|DD<$-N<(KkbdqP88DqtRaI8==hht1+<_`@nf!y#|+>TSQEV$Q3Xze&G z3s=GH%&UXvp15WWW*~^uuoe1b=Z3Xt_`!@AfWMeI$2v3O!fXl2OaYg1!X*Rh0EJs> z1sz#dlWMsbX$!ly1WU@8J24Vs*M5XDASjAH6JvwaLz{CKs#r3Tj73l_9H`e(-sbcu;o!QC{?`(#0fJbE0f}kp%JO?O{2coky3MYjVz$lkiY;(0-OX-gd;F& z)>0C{FdbRGMATKu2FwMZ3bMsaCpYyxbY-)IC4i-dYFpVXh81gejEFX93PE6F5m>Pe zw>QAL-gR_w3_-El*U?fG9BJ1@4j6 zArRB^BB*jjPWeFDj|`m)KZMoANzP+A@|zDCcMyqJ)E>YtXwT{p{f1B=h9>Sc;|>_5 zuq!@79K@J5E!s7?RR|Si;zahrR?g1MiQt6vegN-s2!<|PS8z_OC zqK=Te*Z?L+$kT`x1WjygAPj%8c7w2=om&cD7|R`CcxO0@fPg|qmBlZ3v2fTiP*}B$AZb|i7CjQYd)as+oDQ3RxfQ)!ZrQ-OX47RqFdL_jd+f{=0E5p>)C=G@e@*b*6h7UxDF z9DshT&0^=~z}Sad#!TA!cE9`E=jtF*e#_XIK(~^Fe%XpfqPg}XoGEC|Lrm!(&dPsv- zebOAlKU(B~fK{cmd1w&1N@LkiLLyIA*U!$K3OX^BiZP`lF%%O+l2~rVLK&9+8+|WD zmj~*5^k=PqmXwLUr(gyZaQg~3WEx}uMdY1{dpRA*7;6ffu%w^^QRiI24GOWMC8&t4 zE75>Zj56sk!Ho9{qjHg1)O$oRa#OVEU?#RWhgJ_-ts-+HI$YGC$>mV^K>`|!#f-sN z!dSZx?=KZg1+pb{p-4T>BK1_tMa46jf^P-+N4%QFwBlU30+JH5m&I{K^b%AEgF-PB z3@d|Z!~3+>aU>s9FvPe_f#mgN&LI;h3+)c7rzq6J+cJd|%M=i8Or!vEVXH(0(o8jp zXc_@IiP(v(=dT0d;C{qbrDEa88#vhhkl{fyat6!4l(wjeAP__J#ksLGM(yNijM|?o zJ**-Hh550Bk0+ZHW52cxLzEN7=y}+o0vc*jTs8(iXaLw~C`U^UM$u4ZJU|U4DPi%0 z$qC@SYWrmBcO}aOKhUfg3}xXi7}f7UtQDgB1tP4w=>R@^TOq zt5JTDFO)2UQp6^3R6O#IKZB; z2`;aNV2(jBTY)U;qBM(qCC&~!rql6wx;9N_kyJ@M6;BB)85U*(4rV8@xnpfj0Ui$A zu0`c$bOt1`FsVEYRK*#!5CH(}UE#+`R&bM0EFK~&I;BbQt~~5Pip4_^LAsfx*8-7f zNl-S(%eVO9qH9t%X&dwHs0%WMuyE&*(%E4RsgK&6Vh*rSi@+5NAaG;m8oQkH<5IVw z_3KfMH zsRfuIItmkm*(yv+(S9SHW)Ka+6NoDC@O_tSJnZkJ+z>^JYSe}IfV(wT|QDKl% zF}$L%l$7cAPl#-{On=(IU`63d013>e~Kt$xs6- z4owwp^1@6N=ZX9j)j_w@A^3o@-so4Y63exgk(wtOFp4lgXD@3IH`yLfu?-K9akd!mg1- z8AJeTtKxXTmJtEQA)O~hv}O~=gve6s(TCEzp?P!}UP4LeCg2YdV=JIwC_|-Swg4ue zaxy^-FhXj`kI^!K>%A`iO-8|f4p(=ZEZ9j3 zrT4VzqI_U3pL&#xYIz)3BIZE}TQft#>tgaC-Oc^DB&d#U@ja9lW0x%4os1$>as;;z zp00p4mnaEMiE#BVr&)*)AK?TrjBJ~$z%29G#Q$u@wzzC;*l5q=BU>DhF~mie_8UoOkXsKr@3kffJ@~vc zRpegqREl13iACj}k$RXG6$Oden-Mm)l@-qu z=a7hXCY6{kP(7R@B(Gt=h@8RzAT7`(IhLYI=oi0%ewks|Y3LV=HDXabpa)zDL(y)q zS=?*WEO(^Fl%!{)y&BI}IP~S%jDl&2@{~l9TaFYAPG3?IqOFAS44Uk=j>NptSk?3z z09{mTY&ybBu-KV!Pf%D-zcr4ayEsTV4m~uMNaAz@J=VhIw1ak~N10|LOc4t&#*&%2 zIw?0@#wd;n7vb2lmf`|XU_{23Ny0h+P9@=zC>X z&>@nKc67!wDH|PZ_kw-}lLDQBM@~A1M`>nk#Ufv3)WqDeaD;r3NMJfnB{wUPN=e|a zP{7HJG3~w~TsDh;5cq6RLdD|RiF;RU+i*x}(-G|Q%^FO!T=sMj<1eyJ7y&?!^A?LU z!Fb^|L#fA+QTTk2g1-SODDVj;-#lbZian1XfT;$#xHDHh2w#aa>$V61bRZfePpJQB zte||8W9RQ6Qi}obR;}=~5BcPmJ`svBGb`Z^>1TpmDW!~N5;)960tSOABc8(eBA;vo zf~#qNz$Vw&A4e>s0GuIlZtDwxUAS=-7-tckZ07>FxgmRMH*{HM57UU7GGgo$_yokQ zdy*+DjNd?DS4#(&b;vXe2P7JXUI^U{x(6%r-0T{1OtxH52)V5-3|SANflpOTML|p!?a0?zqhhjL&n0Syb;H5pLS`*h`EumcO`)hc{79S{(5FkdN=yiZ>%vcT7ewb4gSF+m>lJ6htk3=1K8zAt15$;8 zA!3L`idINCIEZw6T*P58YW~|kj3Vs|J4b}}+rpwtyWQyD_F)XA2pzdGTvASLCTdbf zYa*v9IX`49lIbW6OY(s`31siF4N?+IeG;WxG8RizAjMZw*~m6;GkGVrmO!O1Vt@%g zs_ZcDMOkaYzc6XaFp56&WR{vBGSx;U1huj>eb?YpU|cM zKisv^jutb@l}@#am4^vLoUzv!!>5v(;A(7JV8nuDQ!OStue+FX(Na#ErA{_QK$XDy zrr}}*h-JISEWo53v!=Ox8XEwX6CgRn4vq_D2ggNx%3gW3+*F!OFc!IkV@qfUM`Nuc zb|qGm@ub}Djo4}c^<2z^1jXGOV=>K8J|Dp&nalz9eVz&rBivi4h}VBjtkh6{p;5uZ zK@@;%RnVcWX@dcOkWm$LSj^y>f=AXIQX{YJ}fc^L?x?KnIOMKRw%$#bKTJbZ|3icg+JeiYjYB(bk< zGG6+m>EiQe3lD2;;azwbJgbdx`_99=Phu&Ig_oq`WRnD1xsWW*Q$Y~5S`1$y17mlF z3}1{0zBVbI;)dP|amrPONSnl$6LqN9VMfUYPi5XDDhQv&W|lzz1EH1ZBnJSTme7=n z32vqpnSYw$A_EKl8mPup9os5da09|2pdCC*88Crb3#GD5jSv1znBp#7peD;7mSW+% zFenpxg?yO5?WVVQ1=2-G+5cbMO>ZMO+V1*@cmbXu4UUYYlH5Tt1u>a|nB*?E9(TF5 zE3Awx<1-dAT?ioKaW@CqJ5G}$z!Q|DrcT*VXL0j9xYbNz@SV{N3ZM|7l4S~Bs>Hqj zukM^D&+Fg{e?Fat+RN2~#XY?o(id|SN9N4#bSPC5c;F&pZ01ptgFdeV(^C*zMs#t) z#EcN9hYm;<^v-?nh5ccHe{Y zWHAoZXeh!hJJ3nU(=71;^~s(|Vz;7Im$9b)_{@ zl&G2#6~-0zaHe)<8Ch{3tiffg>>Nl%LserDCN`AxNOA>E1W~kNU9Z&HqFuNd8FGdw z3~~;V*-8*mFbV0}r!bW6PFC>x!@CF8V4(OXfB*nt6&bdxOs0lIcu=aFjE;Lv>`O#= zP1rbrZL1jx!*b?_RpG&Gjj`JMFw~tuA9)5 zS^7>iq69=9v4IV8S3+h=9SAlG4pm*0Y#%5~W+5S23u3kpl&}t~n8Z?$8D%yfXmNW) zN==vGCoCIFt3mAEfqWio+17zcc!5V+4FZ8+XNU95f0!ilE?>kIEMokD>xy2SnXLmW zLW;R1pr^2S=?E%93cvsi^i5ET@fk-p<#5c!1_Z1L5tpNsY)}w#0NEU}Dg^O1aD?m} z=c+;ugL-H|W8Xq-GKnWHMe)QXQ#n8(XK5IZl@VZo4@<*ChsNXPvFasTV!BNqNI3E^ z9>{EhQ?f-Mvu|WgBg%!SFC7j=oOPYlxi75+5s^V1l!)5>#i6eX8|+m(H&E6VAC=4gf$lNhRa8a;8qpXTV1a1xk!2g&sNB{${{lXz#MR+(7%Am0mO8 z{$_U4xx*PPR>DSWf-fuEfV={ptgm0g9Bq`zMZXJiw@AQf0@llMHo?(Y!Y3twg(o~0 zoPR#yc{&h7LPLk(S{ljC5c&9LY#1C_w&DDh?qthnO|t?7PjG|efSp8prn<5!6(p#A zuu(t#Mu{BZ`E8)37z&hS|F;n%h7KK3sKGE&r4S#eu978%00b7AK*uMdmBUEwEE8z0 z9?X|9HT`YhRIZ-9OJ5aPlX4cJj8v}50ayY!iD{s!Eo?{FIU z-`t~5sHNmh#t(TXG|ZK#fkH(fe5sIl1*cO0m=z3?5Cy%vC$ezwJ2Z7R!Bi?;J>Zg1j2qdCRkN*U zasTBaOg4H1njqgA(7?~2UlEfQ!a|%8UR(-3=LNa*A?qtpw~Fd>$VEJEb2*&PSejrK zilVu~&+Xw6jb>0IDITZPjn$<~Wn-q`8}LCwHAN~$HLLYLAsETu#2PuxL0h0-sa7H5 zV-yGA^Ss;&#AG7Lc%=MUU~UmJs@>fYp#9NDsUA`Y$u}q*ca07na0WsyO@Q-DuGqA_Ce<@ zg@^f;-v;kt=V12@{Md817aj%#fy#gN%m5TN{|Yfm*otL5>Ti4C{cR7ta5dEbtv&Fp z&V-z-mfZ^qYu;Fg61*9DemcQG!CB(w~Ik(TP-Ai%G-6VM;RS3r67e8&ZSF zY|te}W=%xpYRuz$v6%K^Tj09l2@jFgqAX$LbsIYw?*3W@^S`m=YRI;OT`nT3BvF}2 zQb*9%L39$<^8_5w-h(+K)hZ?m$wNw~Ftm8`vaz~QPlY&~0ND-0SnRECRx}OLkx5$d zDcrQ}Xkkisc<2AnJXAt^+g(7|RWbqB2$~R^=WT%o!eS+O^vR_3S0~TF9lb!dP(LaH zyiAolAkwjoF>gVZ$(xE8VD>h?0HCAk6ImB-|vkj5iPz*Fj-0p|KRR zeN;rKFH}KP%9BlbdR?))2+)_KE;drC|6D$Un>U)uFISgA$CgI3TY+fu$LzC4(c?!= zBSL(PmL`0zwnFc5_RicCj3M;S7+ey$M(N!y)Zvb)W?f9mLI68hB7e*Sx(ug-fr{9{ zA(iqa6}vIDz)<%HBn7bx2sE;1`(}9bC_Ynmq&bD{Y0J-b<`7bWH7CzTi46x|(?PAT zmPL$afg7Ty%x9UAbI+B2)1OozvRV<<;IOux>4zb+4l&LxzDILy-BE!sldA!itFe61 zT8aZ*4hISai+IkYF%PQ}pc5{w!v3!;(`OvQ?)l2_prD2kS=xzcwE$~OjmC3lP@m`d zSYIiV;dw`S3(;y-5JL?h(!6L5c~_WY5L`&^!fSn9XiNFrr-br~d2>7v6ow2QQD(B` zbqhdh$e^?21YKqx{5F)mSXX7V$RYM z8}tZVdCzgUsZJ-);vzbNNl%Is8GJ8d0FgDMLp@?S! zi}a|3v!3xJnBwA@(At>{;DViBOM=tj4EK*B;msjM92=_{52i7BZdL$Teu;pBh9g?j z;GU~B1DjWA7`uJgmLsUBNcX{TM(jQf)MFzLlquJw;zQu^*O{&4R}QVt_#!;&awpka z{oQhJkgnK$xHos^rj8lIz|@$AF%9GJoIDfv88Uo`h-FtHi`6t_(@1r7ZEV=Y8ph;X zm`S6;1p%Xu0FoJTAbyL0npyfyg(fd591^tr@c*=TZa;Qi_kG{ze!tCyLvlz_)aVjf zmMxMR*^y-D#JO1{JMPKi}_ft-bd-bLK|NfP(gnX66ia_TFp#*6)60ss$|v`8ER& zlm7c-kt-iF|H=@G=wNr)>pmd$K8=Z|UE)aH7uROO(Ue+I1fyomguABbAR2vXsg+vF zte5)VVUzg_+Dm>1)-4;&{x&h!R4N8N)h2{f?1L=4f-56`W|AzTGYD; zo_GBo@%_Z-!NjT``-qj4g(tEP?EzAbKF={SM;VS96vcOc&VUw?oH!_eW+p-AkQ9hF9uKwZ;gAL6BA`iiugCH4 zQ*pz^QYn-{#AHtd%#R~^CDcg)u0qbc_dOAsS?jy)&t$F>}{lcrW`PwK)bT(8sA zr1(d%*XK#)=YQax2gf>SDeZRBJ=tvQVULhX=rJ$ogSaE{$e;Sjca}4*tcpAk!S)u& z4{GuYvq9(4_{;BpODR_?E8CV`gzz9LK_Y*q^Q3{FMdt!dP?epo2RL1MkbX!M^OBV! z4^SNzqe79)hLRy7<_BTpy3)4UN!Aua%15M3PF;amOg0co>_b)Ms3uAJNKa*AGCKii zwkFaZ%(WutezR7*l46NQ%CdF5giIZy(0e)GRx}pR-m7Vt8bfofq4ih#CABsjz|DoL zEm*gKk6fzOd`6BSx)#sW`P5&Te4G( zO&mB&&B{A03IZckv!3Ku_7HCue{;!L3_?6Sy__!3Lvwf*nD+bEVi9t~-iTu6_Q@*Z zHb8AynAaAR6~u5@i^A5umzCU7RAXN~7C3bRX3f@!0qsKoGhpC03lnnb#Fe#ioxp~5 z#K=B6mL4en?o4$Yn{SIKYZE?i5x#BmIPIi+)HIBX%o$3`p}P!YnuF45 z&Jf6X&N)M;-QpZE45>6?a*}%>Nn&{teR_{D;EVU#wAo*N6Mtm_Fl1^li0oF*tD{bq zItkS|Nyo{0Rh<()S4PP1FsCu%0z$`xk>CB6?;QB(F1zqS%o^RYcnH2<^V`lt-Tj7q z11o$Myq7rF7sjSM53CxM-_s{oG}w_clTg`ZVd@ca$4&NGx*zuppyb;%zr$kFYGrrM zidUDnJjRQ?EBu$%>-Rl^<-Ohww~wg>aFgAdJ_M%0+$z;&j(z@xgRPg z>YCww5<~{rB?tV)X&w1?h;aW%lW!XV&r`qBe=j0=K5Fn&ucZrJ0O zmOloMI=(k_B#r(^CJEaG1)5viHMMc{S-_DAmi`)OPb@r4{GLhVH_Xty$>FbqRgpdEu-q z&kH|WQYYyK8w+V|95CAwe|FZWblGg-nwyKEt=fh+)Mcd7BftxsqeB|OkLU+a-SlRC zf`$klA9PJaqKUPyjAksY*aeJMa(GRr09UnQ7%;09i6^}x0(tQdHZb(R{Hj6K>qX+C z_lz~7k4&=(nPzYS)@v1^*K;crU^$sMI?5?Gn-^KH*A}8$f*?Uy^kp4F?z+%~GHmlY z^;;y)db2JxDiV*XIi#aE`f(nc`aD_d0?BB(4lt6os_cq<&+rzlO`MhZPkyfJq*=7v z(Y*hHej-Rr+=LTLeR5(Mq5GS-yu&)4kBZMMU(yLR+;`sY1S9gv+q7y1VI`H!M-Ho! z8dlMdwSP{uWQe7!!djSpv;o6aL83?tI}nc9V6wRclL&686LKzfO>38CWlw4Lj5Gly zeZp}JjH2}g`%%v~r=Q_P+%&gNN`-huU<+GA^91vQBb!MD^Jf9#8thp%h-46UNM%9H z$e>J<>s~9zD>UH4SeWE1q#@{CCVpsuYS#4S&mGBW4M6tkjF9Ita3PkH+wGm>N|%yE z@f1=#XIYFD=wMfatWqv0-K zX1~$=9`2tjI8dc|zpl?aH$mrFo$YQAA)MbLz|k`&UBdio5KZ-CJRi*%!3IYwkY@5j zF)V4=Ps%d~+)!(A8+`%-f}`YQ;~xFdgi}0Ud`p}Q97A7(GJKBV8&m|*6f1B51I{g3 zv&tM(FMi9&2oebe!Ik;eoZ2xc%ILOs~ zlRtDe2jU*dxtaiD<}S-y5CLDrGF6C{j7V8uQdC5r;CF^r#Hh%QC3&k4vu9U|V|)ag z-{=e=Nh2xQ*%w}_!wOQZI|N!No2;hh6p)f!@>>1}7#$c4v7)8z6~7f{_9||-HhGD) zNxN1i)V|tGFJ|uYHqYF>HsYKPeObHFsmMM zd}#twlq8l`xa-fyj-KIP!6G(97pEMriF_+|ks@FR@u4QmKk-w?G6xm-GNO2O!VEko zR!do36eHS|=u9{kXGm}7o)NF4bwSAy8*Mbg-e*4(ggDL&jKks1h(@hGU5 zX!B^;+d<9VzqduVw)W9tLh``1d)v%mYClYWFz#Ufu$a$p%-P+~q#Jb~|6q3_oFcvc zh3B7p*3lGZD3k$+t?r^*i>HLff2j(m1epur7I&m09CU)>c_(b#y~D|hs*Hhd7MV;C z9XKc`G)!l%Uy>YBNP#OyXBdjwZWQWrKchcH6NJ zF=Ow(yY^kwV~^`Q-1f2ZkJW2$`CRkbS6o)Q#(wed15asHj(4t)vcQbK$ryfs@2xSW zQkP6^=Jcr{BS2PI6{88!J(;wbt&$kToAs+3V=;>JUyj#)J`Wt6@6N4&gybcf;y8tm z2mu4u9p3pINT@j;Lbp)Br6!9k6YfQff`0<7RD=v}Rr=L7)$^&F@f#Ew47x*t{|wVD z@Z9%_X!M!WH>Svd;4zL0^BTsx<4j}65G@5dwv6|eZ^qR$ynBMnnFHoF0atdMzrLdF zc+X&_X$q?1OWvGA_6?4Ty1ZTX#h$}PfQ(dUBrPmkcfpNjh57{J$0T);sY5zJd62Aa z*%rUiP)31X^FBI``YZBCnYuD~rQOJVAo=W2khz^GH&LtnJ>mUV+5|H1r2Egi*wVGT zYxauo3_XcOC?LJU0Uj>@zGxrGG=}(xBnG#-4>*BL?5UCa^?RcD80lfUcZ~Ihdjy|m zmWsuLRl*^FD#I?A0RNJR-$-Rhi<_ywk6#9{{> z8rF1tXoup|dG$UZkcyWibp5E-Fm_hlT7D)|g^kG|4G!u|$}p%(%7|D3z$!r%axApQ zZF!z>RKQ0`w33gWY$}D>flI|l@mUs|EFSi$o#y?4rqZ8`k=kVIFH*$a$HM~h`2 z(*hAW8ha-HrIPATh{}CV#LnGC_;AhK9^9v{yXQMgHh+BnjEX0>kkimRhd|?6M)y3L zqaUR-FpAQo>?yO7*d@GcbhMaFTB8wqwUcsgv{#%@RY1N>8raH714fph_@H_dpgiCm*0C4k_z-v}nztvNB(4 zI!z7+JHj4rjhc>z?Js}K*H1eW3})Scq45{G!#m5*MA1SyH1_pVIjU4hpr zR$J4*LkGt$mpN{?iZnaf>1ZRMiKHbymO8EU@UHyglBrTXilrEi^=P}bRl^JNP$-0U zMXMr@?e^qoXEAFzE}m*p4*JK9qS7L&9qn%YXisA->3FqZzV#~v)iK_(zK>s7{*t}$ z!~Te7%(!1P;cKQcuyz-Z_v+5@1!iA&x4SsnX)G4k7CA%k$@UZ$QP@K9Q!-cI>_Pz_ zD~0J~YTM#%?N!&kH8Wm0j-SMQFeb9#;2L(QIz}@X4Z5S1dENVVsbd3lI)jI^aj=tw zGFSTbBGmN)rr?PobsAE#Ko-8FbY)Pkp9`m9Xan!Yq9VlwXM zsY_@ftXfeCjlDFnlyB4E4}vFGuU=gl2Oj1p2IySIKC5%H2LV#6^?Cv8%>{az6bF67 zfD(lLx7RJ$`u|ATmkzNC=k4O{!3|_hL2DZYf@7=YaFIZ@2CAqtJ~!e^BfL2Yo?1S z5^}>7juoCFQ`LR} zVgUe!vLKw!{hU>5p}))M7WE!FJN0Pec_gc7pgYquqmPfrBBx?j&JPMC$=0WLtUwKj zIAP8NC&sU0A|B+Jn#U%}2M{j-V|D-P_#(;qfO^_S^8roZQNUUaS5%K^NiiD17G(S) zJy}SrWhc!wJ83pSrLoHr5RNx(JOn4uL6yp%2wX>j#{?A8Us@dpR8l>V2`O}rIwzL& zG1WN6w)>B%|tmVWyr|UU6azmX{`Tx$Sb0Po=#&Yu6JM)RCb5dMTS>rkz9T9W| zy{AH_>`8hb$oyDvLkO0>^dG?HQbB^eF-QB1I7U@P$*21reB$T$IH#0Jo1!oB zE5&{zn1J|F-HAY;5koR)=;a1DKwlgzL`SoSI;~b+oKBjj47$3V)2XB!`WtkFdJ?1z zZidXv{vz`i4yL3TO9S!R^G`mt!dYr2iPzZIcb>_oCtZE6$*1Twa^i|t@MT7hS}nf8 zpKL3XFmVZ31UMKCqQugZ4k0eKs^4huXU)=O&1se{=a6UV5{nO2Ool*zw;wqa$=a?d z*(~I^6d3hfG1~`h7t3*DWrsmVAr-VfR-%YRWqgXy)Ltb{v$E(7D~jqu&Rw#4`gkjp zWx@K@iFVi{{ZP!-45#mMy8f(B{)@YNjEG}1a|&=!L*{7AokR796-<_0~?-x)QV(|n)IQD<|E$DI*^i57bfx!%XR0lnzAyaGmOg~IjQcDXca>T zrzU}$hnp7Xs*w5uReLC6Fj>SR*R()or|cX5o6|HMj*#nEAy-1N?J?^9T2tNqdo!sw zLN%)ub1GkjVe`FtN*~D%C(!^NvU#mIO5JnTK`JN$z8YM`GP877mZhPaEIZCtmCT8= z(^wccSV2i*xV_&q&&J)}?Hc7;gzj91u)lm!A0?rL3dA!$OMbw5J6jnkVlymXXeqT; z^+S$C3LzaUlOn)7u!GgFV1s(k{6AAC#R=8wq}1CG$=jp~s)2JFtjZ^LD{0z>V4+b(w~DcH109uSaG$B^GPzLg50ISQo+Vc0N;qsRu5Q-?WVppuG1 zU^U?tb(U#Xhq%M4MkKEjaDj=K)dQP@-BW6#EVpFy3AY?!PIOY^;kCMgn#5I+;mU^u)Q77cFCbSrZkC+mqHr=@G*EswT=j zG}lC3zhF&NzFqX@4H}gNTGd3c?~kP>s(O+ZUvYynJ`V$U!kVbKwFtjvl~$Flsy?^w znrfqX(0MANpddMw>J?E|ohT&s&RTRT@Zl%6L~Bdk~CDa{Q2CVjw9 zOx|J6CTgKxbH`K?G`rN2xQd=0kr%6kqH_^=DkWQzSu$VmYcSN_BwNSwG92HPu8LDE@FcmdIndW*{aV=)+ zdd<0}Ht_76^S`-<_hM5UL<4x4IMF>-$y%OcNGY7x8_-gPI$4xFRY<4qpFE$5Blb@c zOX2EGzQ{6l-0Hq;7CE+R^4cHqVl3waq{fk(GGmmMn6TkDo>=Q z(yw*7=CNg=QZ@G+cW?@4tqmOSs$D`0UAxxKrd)y~gMu1q4GNy-RcPOvr#{#B%~H?` zn$3s+-8ggaRxN=!RA+sjEz3otn#VNtIh{S;v~5uxct~0x_JwNI)C5EQO<940duY2k zI#Aa@)N>{Ei`zBE?E-PWz$}}W{FHL(m$Z#q-vqG#>}nKO>4w&bQhli) zY;DIlA6#6@4~MbQlZlhXQ(;v>+LQk!+B}>7Q`fwcsxNuIvE6o$l0$e3Ij^y6Gjkb0 ztfRCifcu`hn?d>%W%SjE2UDMVLD4;M*L-K?ky$qmio0*=UPlY>5v@R!rayNvlh`}5>;({=_&(6JWE z&TW=6&%P5}wY=9~jIiFl$w8xffJY)Iov<*)-i?BG+%nkQ^WGnq6dl@-XPE8iq>$!e?z# zvPA8mx21hdXeOuwm!%C^8lIZ~CknIGXUry|4(inE`i8FS%TI&X015R6Ff4?8-_aSG z(s`44j5PWi#r@@5Se6iPZ`dLOQ;pe}T%baM8I=Rc4R0=Ex+b8Ma|V-hG)0S?_YkS^ zdcMDp`QrhCHCHV~FbFV+8pMS3t7ZeZ_c{5E>IhS-oWV2(9E69^_YVyYp&!8zH})hv#ejMsFD8P?ltjJccxwJi9`uu2s<3I#Vx4N5Y;C3K6PY;1b$`3a)6AjrxN`^)D+p&o zMHL9ioTwpe@3k73@E8PT%I&tX1_l-+uPzEedFaCGbmZCM*8NxNUrxIB>Gdy>W>KTy zy@GxjWT1glGFa&HL?ca18Jt^3PzBhc5k({cN_p*eQCrt|ioqr=oefCDimx2XqXnsnO{&vkj-MXFj{n8YD5TCn2TRaFaOni1fQ52JJ@H(rI- zkJuui>RI4oBs|sXT6o+k)hvhUJiM#enc0kXq!^8Ub1;(biR++0 zD|&0+3`jzrxr(ey;}LA(qgIZ{6k&X56|_~?UByMw-tRan1mf$~Rwoq<0OM5?DQ`)_ zc+^gwHz?f8F3Psl5(y<54c$5oo6A$V=-8IJb-*Mz9FddsJi^nRwpbh8RN3-z zU{ccCfpW`sk#nv)8vRDsM0!@V$-Pc9IaDE?n^2eMjqTQdI7ZXLCXtImX%_88yG+k7 z>l&iAv^9Z2m6a!H924LgjfRXWa-)VPNe)?GIMgV2Vu%W*@}!lot$iKF%IX}@ zF?7&<4^`CzFI;|}ftxrP>-F%Wivf2%%P4>=GI0KLUSjxU#KI6SnYO_+`6ZQ?fm@F5 z4)76F_?|+4DFN1tqLF`O7o3!|n2$I7%c8IN;X4j-OWUuW@1@Caj)Y~Yvu4T za~Oiqx;+jFb0Sm5S+AQDWFn#qTVQq5wG^4v1es8Cqt2ZrDfNBRDy4er``9{*>Rho}w7EB-$r0G9KCed+v38jtUd>#9Ui~NA$^ROVG4aE`jA$ zl~5odd%U};urqJh)s!X)P#)w1ByK zwco$$;*zREwgfUU`J|^ryrM|D&|_6HoYr z)R&l^PO2}-088Tag!+=>pE_TCiA)oGBe2a+ZhgsWR5tvFIkJs`L1QQBbtobzA!WNc z#i-m)Mx}k(0_bA_7=NUvEhJq+ia6N})lAm4>YD4`YV`oyFcmRUbz>?b*=8qAMN}Uv z1eh>ZK?#Hyf1EKDv5G~_ihmH+?M;$iiN<`0Wz}v`3x%>(&@)(VK+6QlXW}!OHFVO4 z-dV;BnAA9=fxCp2#TOoBT&UPpvLK`G2uOs%6+Tpm%9h4iYl`+B9s_gon#vEIuqN4^ za(mU*WLzaT3`bYiN1(PLlCgrN&uZTEl_7#35dB*`a9b3vgR8jQ3Ud8X8cPYDief|pbS zo1g|efM3Nu?QK8JW@eZ`mzFAwKhP*Cyh_T4EienpXt0c|vU;>C`(IgLHvQ=M*~Z>rP!H78DW>Ob*Rr^@m= zcjeKos`7|^M3Sj8OhKG9VW}T8p5n-f(ZFXE1xlq)h%Kv>74A76eEp941hKwWM@ebH);X`Ty%${ZF&`4R>}ilWUhl8r+C z+h9~iMMT(Qw`ES5nO>aVNiaOUhiwJ1>&1T$PWxp|)zl=eeq++;PYB~os5wxxQ^NOV zPLn|cRj|`3@bnc0J06d{kXPl09X(Vz^60j@EZ!{#bk^=Q8I0Bc^ny2|K^KR6y{PrZ zOA!ePysFhJ$O$*r7YNE%q)CX`C5C6ugATalefocO+}SQZ3`o4d@iM|lerHmax*t?$ z9Q@9$gG^j6`jaHj<8szVA+8kT&cu~JyP?5htlqLjL?u&L0y2oos}^F&u+(o#muq;w zVYUe8k)Hi(%n%B?s*A5tJW>GSv3{hr1%t^?%+>+?3qe+_P})y$5EV^ulF+QYMx^?> ze1=F==5D5KMh=R$ll?NHd&Zzvf;H&xzO+DEHPW|x%hQ!ciNwk}i0`@&SKNH#91?b( zGwQwP70x|?pVaAYLq>goS9Dl|aIc7{&sy1Nq-MjKpu=AU=GPG∓eYz|5P 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 + + diff --git a/docs/src/controllers/CollisionDetector.js b/docs/src/controllers/CollisionDetector.js index 47d6fbb..64fcae1 100644 --- a/docs/src/controllers/CollisionDetector.js +++ b/docs/src/controllers/CollisionDetector.js @@ -1,28 +1,26 @@ class CollisionDetector { - detectPlayerCollision(playerObj, objArray) { + detectPlayerCollision(playerObj, objArr) { // Check the collision between the player and other objects. If there is a collision, // the player bounces back. - return objArray.some(obj => this.detectCollision(playerObj, obj)); + return objArr.some(obj => this.detectCollision(playerObj, obj)); } - detectBulletEnemyCollision(bulletArray, enemyArray) { + detectBulletEnemyCollision(bulletArr, enemyArr) { // Check the collision between bullets and enemies. If there is a collision, // the bullet vanishes and causes damage to the enemy. - enemyArray.forEach((enemyObj, enemyIndex) => { - bulletArray.forEach((bulletObj, bulletIndex) => { + enemyArr.forEach((enemyObj, enemyIndex) => { + bulletArr.forEach((bulletObj, bulletIndex) => { if (this.detectCollision(bulletObj, enemyObj)) { - enemyArray[enemyIndex].hp = max(0, enemyObj.hp - bulletObj.damage); + enemyArr[enemyIndex].hp = max(0, enemyObj.hp - bulletObj.damage); hitSound.currentTime=0; //music 让音效从头播放 hitSound.play(); - if(enemyArray[enemyIndex].hp === 0){ + if(enemyArr[enemyIndex].hp === 0){ deathSound.currentTime = 0; deathSound.play(); } - - - bulletArray.splice(bulletIndex, 1); + bulletArr.splice(bulletIndex, 1); } }); }); @@ -40,7 +38,7 @@ class CollisionDetector { hitBoundary(obj) { let x = obj.position.x + obj.velocity.x; let y = obj.position.y + obj.velocity.y; - return x < 0 || x > widthInPixel - obj.size.x || y < 0 || y > heightInPixel - obj.size.y; + return x < leftBoundary || x > rightBoundary - obj.size.x || y < topBoundary || y > bottomBoundary - obj.size.y; } } diff --git a/docs/src/controllers/InputHandler.js b/docs/src/controllers/InputHandler.js index 1a41e59..d117e65 100644 --- a/docs/src/controllers/InputHandler.js +++ b/docs/src/controllers/InputHandler.js @@ -1,16 +1,16 @@ class InputHandler { - constructor(cooldownTime = 2000, bulletDmg = 50) { + constructor(roomObj, cooldownTime = 2000) { + this.currentRoom = roomObj; this.collisionDetector = new CollisionDetector(); this.collisionCoolDownTime = cooldownTime; - this.bulletDamage = bulletDmg; this.lastCollisionTime = millis(); } update() { player.updateVelocity(); player.updatePosition(); - const collideWithEnemies = this.collisionDetector.detectPlayerCollision(player, enemies); - const collideWithObstacles = this.collisionDetector.detectPlayerCollision(player, obstacles); + const collideWithEnemies = this.collisionDetector.detectPlayerCollision(player, this.currentRoom.enemies); + const collideWithObstacles = this.collisionDetector.detectPlayerCollision(player, this.currentRoom.obstacles); const playerHitBoundary = this.collisionDetector.hitBoundary(player); if (collideWithEnemies || collideWithObstacles || playerHitBoundary) { player.revertPosition(); @@ -26,8 +26,8 @@ class InputHandler { // player.shoot(direction); // } this.updateBullets(); - this.collisionDetector.detectBulletEnemyCollision(player.bullets, enemies); - this.removeEnemies(enemies); + this.collisionDetector.detectBulletEnemyCollision(player.bullets, this.currentRoom.enemies); + this.removeEnemies(this.currentRoom.enemies); } handlePlayerShooting() { diff --git a/docs/src/core/controller.js b/docs/src/core/controller.js index 2629ff5..420d3e2 100644 --- a/docs/src/core/controller.js +++ b/docs/src/core/controller.js @@ -1,7 +1,7 @@ function checkSavePoint() { // Save when player crosses the target position - const distanceX = abs(player.position.x - savePoint.position.x); - const distanceY = abs(player.position.y - savePoint.position.y); + const distanceX = abs(player.position.x - room.savePoint.position.x); + const distanceY = abs(player.position.y - room.savePoint.position.y); if (!nearSavedPosition && distanceX < player.size.x && distanceY < player.size.y) { saveGameData(); nearSavedPosition = true; @@ -17,16 +17,16 @@ function checkSavePoint() { function saveGameData() { if (nearSavedPosition) return; - localStorage.setItem('lastSavePoint', JSON.stringify(savePoint)); + localStorage.setItem('lastSavePoint', JSON.stringify(room.savePoint)); localStorage.setItem('playerHp', JSON.stringify(player.hp)); - lastSavedPosition.xPos = savePoint.position.x; - lastSavedPosition.yPos = savePoint.position.y; + lastSavedPosition.xPos = room.savePoint.position.x; + lastSavedPosition.yPos = room.savePoint.position.y; console.log("Game Saved!"); } function loadGameData() { - generateEnemies(); - generateObstacles(); + room.generateEnemies(); + room.generateObstacles(); let savedPosition = localStorage.getItem('lastSavePoint'); let playerHp = localStorage.getItem('playerHp'); if (!savedPosition || !playerHp) { @@ -93,16 +93,15 @@ function exitGame() { } function resetGame() { + menuDisplayed = false; + isGamePaused = false; + gameOver = false; + player = new Player(playerX, playerY); - generateObstacles(); - generateEnemies(); - console.log("Player is reset!") - startTime = millis(); -} - -function checkWinCondition() { - // 当所有敌人被消灭,且玩家位于画布上方(yPos < 10)且血量大于 0 时,认为达成胜利条件 - return (enemies.length === 0 && player.position.y < 10 && player.hp > 0) + room = new Room(); + room.setup(); + inputHandler = new InputHandler(room); + console.log("Game is reset!") } function isGameOver() { diff --git a/docs/src/core/main.js b/docs/src/core/main.js index 76f680b..54ef433 100644 --- a/docs/src/core/main.js +++ b/docs/src/core/main.js @@ -1,64 +1,35 @@ let pauseSound = new Audio("assets/music/Pause.mp3"); let hitSound = new Audio("assets/music/Enemy_Hurt.mp3"); -let deathSound = new Audio("assets/music.Enemy_Death.mp3"); +let deathSound = new Audio("assets/music/Enemy_Death.mp3"); let shootSound = new Audio("assets/music/Player_Shoot.mp3"); let hurtSound = new Audio("assets/music/Player_Hurt.mp3"); let deathSound2 = new Audio("assets/music/Player_Death.mp3"); let walkSound = new Audio("assets/music/Player_Walk.mp3"); walkSound.loop = true; -function generateObstacles() { - obstacles = []; - for (let i = 0; i < obstacleCount; i++) { - let x = random(hPadding, widthInPixel - hPadding); - let y = random(vPadding, heightInPixel - vPadding); - obstacles.push(new Obstacle(x, y)); - } -} - -function generateEnemies() { - enemies = []; - for (let i = 0; i < enemyCount; i++) { - let x = random(hPadding, widthInPixel - hPadding); - let y = random(vPadding, heightInPixel - vPadding); - - let hp = random([smallEnemyHp, largeEnemyHp]); - enemies.push(new Enemy(x, y, hp)); - } -} - -function updateObstacles() { - obstacles.forEach(o => o.display()); -} - -function updateEnemies() { - enemies.forEach(e => { - e.update(); - e.display(); - }); -} - function preload() { + uiFont = loadFont('assets/fonts/PressStart2P.ttf'); heart = loadImage('assets/icons/heart.svg'); damagedHeart = loadImage('assets/icons/damagedHeart.svg'); + startMenuImg = loadImage('assets/background/menu_start.png'); + closedDoorImg = loadImage('assets/door/door_close.png'); + openDoorImg = loadImage('assets/door/door_open.png'); + officeRoomImg = loadImage('assets/background/room_office.jpg'); } function setup() { cnv = createCanvas(windowWidth, windowHeight); adjustCanvasWithAspectRatio(); player = new Player(playerX, playerY); - savePoint = new SavePoint(savePointX, savePointY); - inputHandler = new InputHandler(); + room = new Room(); + room.setup(); + inputHandler = new InputHandler(room); setupMenu(); setupPauseMenu(); - startTime = millis(); - generateObstacles(); - generateEnemies(); } function draw() { - // push(); adjustCanvasWithAspectRatio(); background(220); if (menuDisplayed) { @@ -70,18 +41,13 @@ function draw() { } else { displayTutorial(); - updateObstacles(); - updateEnemies(); - + room.update(); inputHandler.update(); - savePoint.display(); player.display(); drawUiHub(); checkSavePoint(); - checkWinCondition(); } - // pop(); } function keyPressed() { diff --git a/docs/src/entities/Door.js b/docs/src/entities/Door.js new file mode 100644 index 0000000..bbcc7df --- /dev/null +++ b/docs/src/entities/Door.js @@ -0,0 +1,16 @@ +class Door { + constructor(x = rightBoundary, y = heightInPixel / 2 - doorSize.h / 2) { + this.position = createVector(x, y); + this.size = createVector(doorSize.w, doorSize.h); + this.currentDoorImg = closedDoorImg; + } + + display() { + image(this.currentDoorImg, this.position.x, this.position.y, this.size.x, this.size.y); + } + + open() { + if (this.currentDoorImg === openDoorImg) return; + this.currentDoorImg = openDoorImg; + } +} diff --git a/docs/src/entities/Obstacle.js b/docs/src/entities/Obstacle.js index a5c1f71..a22e5fc 100644 --- a/docs/src/entities/Obstacle.js +++ b/docs/src/entities/Obstacle.js @@ -1,11 +1,11 @@ class Obstacle { constructor(x, y) { this.position = createVector(x, y); - this.size = createVector(obstacleSize.w, obstacleSize.h); + this.size = createVector(heightInPixel / 12, heightInPixel / 12); } display() { fill(100); rect(this.position.x, this.position.y, this.size.x, this.size.y); } -} \ No newline at end of file +} diff --git a/docs/src/entities/Player.js b/docs/src/entities/Player.js index e683f0a..2182791 100644 --- a/docs/src/entities/Player.js +++ b/docs/src/entities/Player.js @@ -7,7 +7,7 @@ class Player { this.velocity = createVector(0, 0); this.atk = defaultAtk; this.maxAtk = playerMaxAtk; - this.size = createVector(playerSize.w, playerSize.h); + this.size = createVector(heightInPixel / 12, heightInPixel / 12); this.bullets = []; } diff --git a/docs/src/entities/Room.js b/docs/src/entities/Room.js new file mode 100644 index 0000000..6979958 --- /dev/null +++ b/docs/src/entities/Room.js @@ -0,0 +1,67 @@ +class Room { + constructor() { + this.savePoint = null; + this.door = null; + this.enemies = []; + this.obstacles = []; + } + + setup() { + this.savePoint = new SavePoint(savePointParam.x, savePointParam.y); + this.door = new Door(); + this.generateObstacles(); + this.generateEnemies(); + startTime = millis(); + } + + update() { + image(officeRoomImg, 0, 0, widthInPixel, heightInPixel); + this.savePoint.display(); + this.updateObstacles(); + this.updateEnemies(); + this.updateDoor(); + this.checkClearCondition(); + } + + generateObstacles() { + this.obstacles = []; + const maxEntitySize = heightInPixel / 8; + for (let i = 0; i < obstacleCount; i++) { + let x = random(boundaryInPixel.w, widthInPixel - boundaryInPixel.w - maxEntitySize); + let y = random(boundaryInPixel.h, heightInPixel - boundaryInPixel.h - maxEntitySize); + this.obstacles.push(new Obstacle(x, y)); + } + } + + generateEnemies() { + this.enemies = []; + const maxEntitySize = heightInPixel / 8; + for (let i = 0; i < enemyCount; i++) { + let x = random(boundaryInPixel.w, widthInPixel - boundaryInPixel.w - maxEntitySize); + let y = random(boundaryInPixel.h, heightInPixel - boundaryInPixel.h - maxEntitySize); + let hp = random([smallEnemyHp, largeEnemyHp]); + this.enemies.push(new Enemy(x, y, hp)); + } + } + + updateObstacles() { + this.obstacles.forEach(o => o.display()); + } + + updateEnemies() { + this.enemies.forEach(e => { + e.update(); + e.display(); + }); + } + + updateDoor() { + if (this.checkClearCondition()) this.door.open(); + this.door.display(); + } + + checkClearCondition() { + return (this.enemies.length === 0 && player.hp > 0); + } + +} diff --git a/docs/src/entities/SavePoint.js b/docs/src/entities/SavePoint.js index 1280194..1ded2ee 100644 --- a/docs/src/entities/SavePoint.js +++ b/docs/src/entities/SavePoint.js @@ -1,8 +1,7 @@ class SavePoint { constructor(x, y) { this.position = createVector(x, y); - this.size = savePointSize; - this.size = createVector(savePointSize.w, savePointSize.h); + this.size = createVector(savePointParam.w, savePointParam.h); } display() { diff --git a/docs/src/entities/enemies/Enemy.js b/docs/src/entities/enemies/Enemy.js index 1bdf08a..060f2f7 100644 --- a/docs/src/entities/enemies/Enemy.js +++ b/docs/src/entities/enemies/Enemy.js @@ -3,18 +3,18 @@ class Enemy { this.hp = hp; this.position = createVector(x, y); this.size = createVector( - hp === smallEnemyHp ? smallEnemySize.w : largeEnemySize.w, - hp === smallEnemyHp ? smallEnemySize.h : largeEnemySize.h + hp === smallEnemyHp ? heightInPixel / 12 : largeEnemySize.w, + hp === smallEnemyHp ? heightInPixel / 12 : largeEnemySize.h ); this.velocity = createVector(random([-1, 1]), random([-1, 1])); } update() { this.position.add(this.velocity); - if (this.position.x < 0 || this.position.x > widthInPixel - this.size.x) { + if (this.position.x < leftBoundary || this.position.x > rightBoundary - this.size.x) { this.velocity.x *= -1; } - if (this.position.y < 0 || this.position.y > heightInPixel - this.size.y) { + if (this.position.y < topBoundary || this.position.y > bottomBoundary - this.size.y) { this.velocity.y *= -1; } } diff --git a/docs/src/ui/hud.js b/docs/src/ui/hud.js index 0de278c..9fb8348 100644 --- a/docs/src/ui/hud.js +++ b/docs/src/ui/hud.js @@ -40,7 +40,9 @@ function drawHealthBar() { function drawCurrentLevel() { fill(255); - textFont('Courier New', uiTextSize); + stroke(0); + strokeWeight(5); + textFont(uiFont, uiTextSize); textAlign(LEFT, BOTTOM); text(`Level:${currentLevel}-${currentStage}`, hPadding, heightInPixel - vPadding); } @@ -51,9 +53,7 @@ function drawBossStatus() { let barX = (widthInPixel / 2) - (bossHpWidth / 2); // Draw HP bar background - fill(200); - stroke(0); - strokeWeight(3); + fill(0); rect(barX, vPadding, bossHpWidth, bossHpHeight, bossHpCorner); // Draw HP bar @@ -65,9 +65,6 @@ function drawBossStatus() { let lineX = barX + bossHpWidth * i; line(lineX, vPadding, lineX, vPadding + bossHpHeight); } - - // Back to default weight - strokeWeight(1); } function adjustBossStatusColor(percentage) { @@ -86,7 +83,9 @@ function drawTimer() { let secs = totalSecs % 60; fill(255); - textFont('Courier New', uiTextSize); + stroke(0); + strokeWeight(5); + textFont(uiFont, uiTextSize); textAlign(RIGHT, BOTTOM); text(`Time Taken:${String(mins).padStart(2, '0')}:${String(secs).padStart(2, '0')}`, widthInPixel - hPadding, heightInPixel - vPadding); } diff --git a/docs/src/ui/menu.js b/docs/src/ui/menu.js index 1dac26c..fb54e37 100644 --- a/docs/src/ui/menu.js +++ b/docs/src/ui/menu.js @@ -27,17 +27,15 @@ function setupPauseMenu() { } function drawMenu() { - fill(0); - textSize(uiTextSize); - textAlign(CENTER, CENTER); - text("Welcome to the Game!", widthInPixel / 2, heightInPixel / 3); - + image(startMenuImg, 0, 0, widthInPixel, heightInPixel); btnContinue.position(windowWidth / 2 - hPadding, windowHeight / 2 - vPadding); btnNewGame.position(windowWidth / 2 - hPadding, windowHeight / 2 + vPadding); } function drawPauseMenu() { - fill(0); + fill(255); + stroke(0); + strokeWeight(5); textSize(uiTextSize); textAlign(CENTER, CENTER); text("Paused", widthInPixel / 2, heightInPixel / 3); diff --git a/docs/src/utils.js b/docs/src/utils.js index 404dc4f..8dd9bac 100644 --- a/docs/src/utils.js +++ b/docs/src/utils.js @@ -1,5 +1,4 @@ // TODO: Merge into classes -let tempPlayerHp; let lastCollisionTime = 0; let menuDisplayed = true; @@ -7,12 +6,13 @@ let isGamePaused = false; let isBossStage = false; let btnPause, btnResume, btnExit, btnContinue, btnNewGame; let inputHandler = null; +let room = null; + +let openDoorImg, closedDoorImg; let startTime; let timeSpent = 0; -let savePointX = 300; -let savePointY = 200; let currentLevel = 1; let currentStage = 1; @@ -25,10 +25,9 @@ const chaserSize = 30; const shootSize = 25; const smallEnemyHp = 50; const largeEnemyHp = 100; -const smallEnemySize = { w: 40, h: 40 }; const largeEnemySize = { w: 50, h: 60 }; -let player, savePoint; +let player; let enemyCount = 5; let obstacleCount = 5; @@ -42,7 +41,7 @@ const tutorialMessages = [ "You can start the game now!" ]; -const obstacleSize = { w: 30, h: 30 }; +const doorSize = { w: 73, h: 95 }; const defaultSpeed = 5; const defaultHp = 3; @@ -50,12 +49,8 @@ const defaultAtk = 50; const playerMaxHp = 5; const playerMaxSpeed = 15; const playerMaxAtk = 20; -const playerSize = { w: 20, h: 20 }; - -const playerX = 50; -const playerY = 50; -const savePointSize = { w: 30, h: 30 }; +const savePointParam = { x: 300, y: 200, w: 30, h: 30 }; const iconSize = 24; const iconPadding = 15; @@ -66,7 +61,16 @@ const bossHpCorner = 10; const widthInPixel = 1024; const heightInPixel = 576; +const boundaryInPixel = { w: 80 , h: 72 } +const leftBoundary = boundaryInPixel.w; +const rightBoundary = widthInPixel - boundaryInPixel.w; +const topBoundary = boundaryInPixel.h; +const bottomBoundary = heightInPixel - boundaryInPixel.h; +const smallEntitySize = heightInPixel / 12; + +const playerX = 100; +const playerY = 100; -const uiTextSize = 24; +const uiTextSize = 20; const hPadding = 50; const vPadding = 20; From bddedb64ac88803f3a55a7a8c9250904986a7fb4 Mon Sep 17 00:00:00 2001 From: h-d-jin Date: Fri, 28 Feb 2025 23:09:12 +0000 Subject: [PATCH 2/2] Implement parts of the door logics --- .../public/assets/background/room_tutorial.png | Bin 0 -> 40232 bytes docs/src/controllers/InputHandler.js | 17 ++++++++++++++++- docs/src/core/controller.js | 4 ++++ docs/src/core/main.js | 4 ++-- docs/src/entities/Room.js | 9 ++++----- docs/src/utils.js | 15 +++++++-------- 6 files changed, 33 insertions(+), 16 deletions(-) create mode 100644 docs/public/assets/background/room_tutorial.png diff --git a/docs/public/assets/background/room_tutorial.png b/docs/public/assets/background/room_tutorial.png new file mode 100644 index 0000000000000000000000000000000000000000..6790d412100d1143a14ee87cd4f6f11156c70104 GIT binary patch literal 40232 zcmbrmc{r5sA3yrc*ivLm3ZWt)*^^zU>}21^$G$6Li7{qMpO6r;Wf>|-vL$urb8pXmzn9nh{eImN%uVmIpX5IY006szzMcgD zFoKUz?Gw!42T#VCVekV2x45eVRP+fh1Aqu%pm)paVcyylE>W~AXLGBB@9Q3}itSp> zTI&bAy%h^TY$-$lq^TnP2?(iz|cve-Bj<(f=Ms0q*}E0sz+k9&VtIUl05f(Ek55%#3&KjnIe) z@+NV0bv2P*B8kMdNMjr-u_@58jjkX6pW(!P!ca8do^c{Aza155U!DO*%3HONpe

o1zb1L8BL~#TI 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

FhIBOx$$jhfMPMJ2bM9PcHA3r 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 0); } - } diff --git a/docs/src/utils.js b/docs/src/utils.js index 8dd9bac..afb035b 100644 --- a/docs/src/utils.js +++ b/docs/src/utils.js @@ -16,6 +16,10 @@ let timeSpent = 0; let currentLevel = 1; let currentStage = 1; +const uiTextSize = 20; +const hPadding = 50; +const vPadding = 20; + let nearSavedPosition = false; let lastSavedPosition = { xPos: null, yPos: null }; let minDistanceToSave = 50; @@ -28,7 +32,7 @@ const largeEnemyHp = 100; const largeEnemySize = { w: 50, h: 60 }; let player; -let enemyCount = 5; +let enemyCount = 1; let obstacleCount = 5; // Add variables and functions from feature_enemies_lyz_before0225 @@ -66,11 +70,6 @@ const leftBoundary = boundaryInPixel.w; const rightBoundary = widthInPixel - boundaryInPixel.w; const topBoundary = boundaryInPixel.h; const bottomBoundary = heightInPixel - boundaryInPixel.h; -const smallEntitySize = heightInPixel / 12; -const playerX = 100; -const playerY = 100; - -const uiTextSize = 20; -const hPadding = 50; -const vPadding = 20; +const playerX = leftBoundary; +const playerY = heightInPixel / 2;