From 3aa2d23fa9c92f3ec909ebbfc50cc707291b4355 Mon Sep 17 00:00:00 2001 From: itsRevela Date: Mon, 30 Mar 2026 13:50:29 -0500 Subject: [PATCH] feat: implement hardcore hearts with game mode lock Display hardcore heart textures when a world is in hardcore mode, matching Java Edition behavior. Hearts switch between normal/hardcore across all states (poison, wither, flash) and all HUD resolutions. C++ changes: - IUIScene_HUD: check isHardcore() and call SetHardcoreMode() each tick - UIScene_HUD: send hardcore boolean to Flash via Iggy, invalidate SetHealth dirty check on state change to force heart redraw - CreateWorldMenu/LoadMenu: lock game mode to Survival when hardcore - MinecraftServer: gate server.properties hardcore override behind MINECRAFT_SERVER_BUILD so offline worlds preserve their saved flag SWF changes (via new Java tools): - AddHardcoreBitmaps: adds 10 hardcore heart bitmaps to graphics SWFs - AddHardcoreHearts: adds 10 new frames (15-24) to health sprite - PatchHudABC: patches HUD ActionScript bytecode with SetHardcore method and frame offset logic (+14 normal/poison, +6 wither) Also updates README changelog styling with consistent ### headings. --- .github/hardcore-hearts.png | Bin 0 -> 41643 bytes .../Common/Media/MediaWindows64.arc | Bin 21359173 -> 21362007 bytes Minecraft.Client/Common/UI/IUIScene_HUD.cpp | 14 +- Minecraft.Client/Common/UI/IUIScene_HUD.h | 2 + .../Common/UI/UIScene_CreateWorldMenu.cpp | 12 +- Minecraft.Client/Common/UI/UIScene_HUD.cpp | 17 + Minecraft.Client/Common/UI/UIScene_HUD.h | 4 + .../Common/UI/UIScene_LoadMenu.cpp | 7 + Minecraft.Client/MinecraftServer.cpp | 5 +- README.md | 76 ++- tools/AddHardcoreBitmaps.java | 115 ++++ tools/AddHardcoreHearts.java | 405 ++++++++++++ tools/DecompileAS.java | 106 +++ tools/DecompileASBody.java | 48 ++ tools/DumpSetHealthBC.java | 140 ++++ tools/PatchHudABC.java | 617 ++++++++++++++++++ 16 files changed, 1538 insertions(+), 30 deletions(-) create mode 100644 .github/hardcore-hearts.png create mode 100644 tools/AddHardcoreBitmaps.java create mode 100644 tools/AddHardcoreHearts.java create mode 100644 tools/DecompileAS.java create mode 100644 tools/DecompileASBody.java create mode 100644 tools/DumpSetHealthBC.java create mode 100644 tools/PatchHudABC.java diff --git a/.github/hardcore-hearts.png b/.github/hardcore-hearts.png new file mode 100644 index 0000000000000000000000000000000000000000..ec1087052eb7c0b0e25cc9cf9b5cb92882e968b0 GIT binary patch literal 41643 zcmW(*1yoee+g@5pr9(>UM~Q%vONj_bDTs78vh>1|3sTZuB8?y*4NJ3hN=fIE(%o!* z{J(Q<%$$4Y&dj;*Jn#EH^F)5oR3;;4BnAKgWU4A}wE+NJp@(wFBf^KPQY!NH;fCX( zt^5X1IrePtp@MIxprHT&)WnmZEC?Rzk6l#^JOBXlp8uUV11`U;0e}K|)wc?tAf}^e zhY3LwFIqy`OrDD$7dbbp$WgqXI4{%KrMe*i3#Fy?-Q8nWFY$tj)719`#E&@@UMtSW zYD}%$RttBT7j|V38vKfS^G3UrSoM>tm=1k94nOgedHeq)8L10?@ty549gv@7y6>|# z&&g`Z+8zA?p0pGAb{K-kvzl)fzf`neFY@1vu_I3hFz@x!xJ0bw38&Z1E|pz*NZ^ME z3^fb8BJD7a{46$D0I#-eKi;mh!`X7hPfu@t7Tw&jUpfYEmTGv4JsJT6CcqN704Y!A zY6NKVisuk|c5}baH;WUbWHR7kQ1fj&z9dS2T32Fq-SMNonmiGZ({xbNS6pN2Aj<|I zLT&SOTkh~C|Mo*}!LE-oeuww44T2@8rLu-MDww?H_7r>itE}LM_pnIXk{v^>Ia~^L ze3Y4AS$^xSGZ)Y-(4&*3fy!p@nGCd(H=Su`F$gy?Q8vvwIGE=yl)7%;&M)IPrfdH# z4yK7;62{B5vTt^8j)6DND82p-)wuR~DdB-Tw|?#tx10PXH33TgNjXo^=-St7g9_kE z!A!n>%6Dxr>W24-PC;8Q5J}%?i>OC45un z-)H&;1?+f)tot@UOVP~)&O=)DUex5D@2kE(8&w{rq1F+56(}Q9akL@u@9Gzo+biTm zJf>lcyFg%M;uYFD{8U`4V-IGfQlCqrvDj*BW7opbaO8~nLm6GnS2GF zCNr2NntM5P;@v7ylWwzckY+P!Abnt;Wp6qBmz88HnK@FkDY0m$;fVGT*Er?#H$pux z9foR28@L1qUE2jp$Ah;;IFk&*TgoQAJ;JkE;?NioErJWwA@wdLM|Qx5THKJs=|^K=FVANp z;o2SF5hBz@C^f^cs};)|4skc9hjbEURTPzPErMQ!nZ`l3S2Bv)^4kS3-8@ZT~a=(-}!ecr^9()(4Y} zoMxBSYj@Br?*h+ z8DK4TvqoH0{EiI(4WvncSi-$SLin>&hhVnl}E7j@JM{NAc-xi#)NcMYK`+eVpdbUAE zB=Fg|MDtM4fqNwA@M5Y=K8*~IiRgLODJbD$!nR~CG?SZfL)&$j#9!LJds+;h?)muIohD z^i*C6kVdMeR?|vMgG+>8vgBHmz0c)Ogy*?1%kn>cR=2MOdfPupYk=RaeW zEXUo4D;%XcUZ|R@hkrURkiGskT+`4rMj!sz)==+=BqU8u;lM)AawrMtWO?u(Ib2tEPFrj2R~OF2hW!Q1O}>;Qb`D%sh~(7E5Cwho`enI=^A&e4OJ zM^p_cVy!<>6d}-)?H(DieiE3vodO`^hR`ikgdB}z9q3R}CzG3N4ZTOLfCmL99}nD* z9VBOzh-VFMPS`!FIdn{zXXkwR`@^_aGJA4CrNADbQcN$zG2d2TuF-+P0SeT761)!f zdH`bHdJ_uok)N$eTM9PSFptvl(G^%>*+TcR3<>T*oZVoN!Cn@TP-ILxv|IK_oCoEm$L=*{X=_`x;^kb-E0` zv{^PN7ze_Cdfbi8u3aK;JrcX@<4sg(^0tB3c^KqQgks>yP49=w9lcSod(W*wPYNbUaqYH_|d&dZDS14DQK@9iYq~{kOQXSiRNR z#+yp&@I2+O-iaQ6`baW1u2;K5%GUKwzDQAZ1>dVk-yctYz4Fg5sFhXQ4EH$&hDQ2H zlKLuGOMD)%{-X*?^x2_59N(8NZA#uZBHa%SiwbIvOjFqWYwRR8XGdpC+S)jdH!i#| zAcwJ9VM5A?!77q%&}2ChT-^Msp9EATZ9Q2DDrBt`E-bar^)gBwiGg(`pm?ayu7+UZh*0QX12`Rj&gwoXs3{=>r z*9P2+z6!j_Ybal;VRNSc5>b`6Zme|SmZs_>A~8|xZ^chsiW!Yl7WmN-W<^IK zmvykdmDXhO1hC($5&i@|arCk8X=mZQX4SykoT*HHNuI+`qM>(xstFUVXfQ zpJrpf>yTU`K6l%H6G#TgBf%Smabx~Q1pcS__2mA0RlS=;Q$K1=S@u2jE*sf#(}5Il zeQgqPa+^be!>)rKHACv|zF~NAw}QAy->qU7XbN26KLNszkEHx>Zf?LQDQa!!!_u3j z;ZXsn9IUabe_ndatjj#K@_ht2H9=rQY6@3xR=p1#0Nt7I8Oc6Xiy2EC- ztMR>xW>|1l-iXN7r{4sp!K}AkUGK@>)V9P8+0uetN?!o{c^0mj5a`qp51-Y>A~cDr zm6KRbaw?AlE|fSy#OOWelrTYr7k$bH|lbcew3@`Y%e1A(j`P&--x&xIM)J5D(L7jl4t3O)t%=5qiFfxbO^3MThIHG7NAG zygW#!UM<+NaoPwFM-o!$)FD0| zGJZJgjhv{9RydZ3i0<0zaWfY$k*cY@8@tQ-GmV_WF^?^SI2dRGCV1{2TXHyP0Sz5b7vs9gU+qZ~4BcgrV;@P@je4|#d?e40( z?70#|Pf^bCy;5-rX1_#BHrcZec{gVhc~INS_usfk{y{V;YVn&rw^7rDpVU3OA5WmJ)U*&zNdXtE(;<#y>c3MFxPlkyr zpZ{_Us3EZbstp8uhdqq9CC`C!$$j@#WW;7TO-bs_gC5jAEF&Vdn@<-RD~d8@0xjr~fT~GHC>HCX?+_X_&GbSQ{K7%RrN!%q-91 zCBo&m6D{hR-+fF;RQD=O7oWrP_4SA?5crrtq0ILlD8VwmThY?*-pn{*1deU&o;lXu zz1yZ77fRQEk-q!P7wjj>MtE@8Wi5FAjD*o|R$Omzj5{kB^i4aGL_maaRj{vyXn?~D z%p7^Odt|}l8`t=?vZc%d(=b>o!LUkV?aR#UxG$w`qL(=PDu;wo&LC}lVf6KbAtq`E z_CZ|^9ObK=T|P7jmcf{N=eRiq-qG6azUcfGhY7jWdYa?gaOQ%~_6H<}O1erL%^5o`E8KO>^WQ9lT^7KDaRb2`Pc0#V zsXO-HX+cxojyXH+I^wU-fdlO`#NK-R%SIKGVr0iBH%+XRRGr-Dz=?(jYe?8_^AF%L zeOikPvezdt3)6i{5+lW{U+kx$F!RG)A!X;Tb9YWD@}Qu%XVXm{Jf~#IvlV2Y-}@go z8|4R93B7bu&7gTz$(PlYwnXHl1N#ygho0sl0&8CvUs|WI0n0SwHBa^#m&&?fjD#6w zppOxeb!2)diZYJl)DikMQb7}q%)*5tEXrNdRW`wdP$92!B3ynE%)fh4HR&7$F=aCRTADc zVv(cxugTWJ-FnsJk-T6K`s^F}43frH^!3Zfxf-pzvM0W;RpC$5_77Zfijrrt3%*(V z(kTV=cV-WIbLg#HsXV{jzb146xom{~32yj(fMcLdFXX?wv0J*$_xHhD)kQAkJ*Hdw z6tKw63~*C7p;3yl^4+HR{$Hj*O+)AEU;5W@X3n?4o&}TTUuJ!@FxIj*^`xrrIPOb! zb51+(ORaG&nfjRq@Ztt~UM|21GO#NTBj^}8o6c*+=dCu~ABc}r21>C^hDZMwGMBSn zaik%K!8O48${qv@t=4Tm^^UT@?Jar?)QQm=i*owW>R>7xdN=SwB0ec^+2jS0DkJi0 zX^CkWF998^g;Mk#SCgBl6*#zQ=s5#gubm)A(IVgn)IM>s2PA;tsIiq>q%w;PFq_T4 zZ)J+QUoEUn<075)nmxwkCEh7hX=Q3~iWS2uHlH<0t@_08q;=C8If;)&JlX$ekhXzCqK|u)~uW3B7n}D3GE%f2Ol(SxLt-FUBHHkrfi?3!ptZwM_nO6P2HJR?Sgdl5+PK-Foa*7siFezNN45yjM z66rzAmliin1orR1hD(@tezy?>!I*Q47o-I}?!{_RV&$*_C2lve* z*yPI~9G66UxGSr>6MhgW118HxUzZYz8oE-&u-2bO*F2{rH8Innl%rdYMgt8vk!0Byx%l=&Rxj+w5 z&n(QOSO0y|A|>))6>|T-i$%B)c3*uke`Z zve`_HOsVq%38jPM-lC<$1V#w;=ybpub{q|(4BfP*VBp5E(POs{5xoR)N9xMy<7f2a zOHok@cR`=?)-I{cBrkNST=0q$c6_#u7K%wwxTuOWdVxllH4!G(j6>55LGwd_>phH;zW@5Q(>Zv;>v7+k+eL1qDM% zJ24LYQm`@)tZOH_r)z~!6fx@;FLlX`Fr&sDtW#NVq*2vVkGTdjgQqc{G7yVVo8jN` z(O&{`b|lZYnEhpHfzj62O;8DQvpKs<$7Nz^_Da{VU=aH+5@;4e=$urm;&USX@(IEH zjhyb*jmdLo>)O74OrQoxrok}#E`0&el1>ve`sqn)}ecZ|LM?#;{?E^YLX^ z37*fA#XD73JOzqt=+XuvOxMn+Pbtr@#gX45`C5?DBiR`)vbwnX0~Eb5JC6srv#jYn zbM0KOjwh@J74-zhx9q1|jGWTW3XCUi2lR_PNjrL4^qHsjyhZEFLbjl)uMvAx7=3it zNI0$W_XPhwUBUtYEkbRxGI0ZlGI{pT{Y?+PoNNU9E8v99t{IWQ<2x)@f= zHc$jbe?BNygCE^3* zy(Qk-NUZZJYHw(K%^H0jr8McHC?5Fo3WopLVx-%?!C1+cZ~hlywahbD4~gE;vT0ED z4By}EKHPG7K~1sXDY=-+16IYsS{-fJ7stczi!1N`>kf;)GbJKk%+D8ai&vPMMk^I4 z=1Q}i{<|*Lx|OKWUGL$vsHxbK@;`=rvxXRQ{}Z-$|44iW%1OAktjs0=aR%4>DxR#5iSHSEK2|fFF65EMoZ2e^QqU61q~{KWU`z zq*SD1e(=qlgl2$PuD9~6qJ`~BCDY4YOJ_hce!^?zMSGLEp*A1BrW6u>znZeAE+Mwq zDY@IBi~n+LnwUDKE^@phN^EP_wXdNa((Twwim>fsVH92DIsCq1uFzfXuAAf|byeH< z)V}NCp4-AI6qQihllYS1lG6yqyB8_q27y-x!E(iSOOW$ZvqP_sta^c-w~=&a__!4R zutZ9M&OH#!IyE#Iju*J0WQM{17|v~ee=9DC{Zccn#eG|jBK=2E3um{19tf$QibK$0 z|3NA0^ z0ZPWB+Z6>@C-+ejAFdx>+~gZC$9ARn_KnG5YP7D)UuweX$6$Q8V_Ov8&h0vLADuS> zWKZ!*1dDzjHv)1^D+re^5r(uMVOJ+oJGnNBNYrHfHA)n~nkUH8FAm?SCo8)aHUn=H zoen^^>^59rT2nt@FQFtdZbL@wA2H6M*!Y}V=$cRt%vk}A8s|dgQ~zj zfMPm!QoZ|0CS6J@5Im3sWfRcTG8X}h)0 z%7Jnfp6~l&c59yc#`3)TS9Rn$#`!(;vu5X)i1-Tx8-tUBIvv%9PoiG@-kk^Oc$vSK z`u2{Ym-+}9#3u%?-}-Wl>@Jty?`nPMjmlZvDZcCFjXmwgckCe}USdj89!dYCJN|Y> zk}U_n&Cz<$bAfg__UdSJ4IE>I-?KKE3-l9!WA{t(wFo3?uuuI{l)5n}$%*1NNp#Q7lhjWYSZ(`-<2s^uu z_1Ri%&ke7Bnv@a(~oX6*jqSLz^@nEr{H;yMi5hf7zF|(He$Uyzt25y4Rt%GVNK676;# z6HBT&cGFXByGpG1E`&9Lf1>XHoJjR5TO7^My$dgP*btjs`218jRwVku)d}TM5=6fX&viXJ&^8QvxybM*4VXV zxg~Z|2#K{{%jEuwnTMg}2G3iF0TZXFkio?)WpvrdzgfCc5MAYn5r8iwxG@uR6=~yh zjwf%OwGrP18*?=Z1>2pbO+91CfI1pQ2rCCJ5$*#}Op&1UPb-or?8J=j^qw9Z0u{*#(}G!D~aJ*HfGw}21b+)EvL8+bh~d}ja?#yr881@651iCQ?p zblf7vAhz3x1+YHE+vBo{?z1u}<0F}8_Fn*i)#6Cn^)dm1oD?Y1@1D*9w-fq)WWwxr zT1URRRM5to`Sd=^Wk5s-h*d|S2kav;((scWeFAC!o`-N*JQD-|EmVsSeT3c7M1dc# zoIZfj+ZC_>&Pm}sg9tFs177Y!A%;;JqMd%#DUz*$+ zn%qb_Tm&78$4ua~;j*?X7}W)Ra%crKgI*jBCLdw{2hs^)XXj|^Tx3eG0Bv-gk4Pg| zo_|C4PIvYuX{+jFYhuKtN;^Y4nqDjspI&$N!CH?J=yfbBV4_YUM4tlJ-4Q ztpIBj6`xn0ZqQTDb?zl{W^z!7;?mlBAZueEti0~6 zKzvP0RalrZi!(?1*~R|Y-?`94+(Iz!zm!PI9G}G}!z27hi*dL?B?ks~_{AXbm@4wJ zt@l*oA`aYw89`)oC>o}{8rx5@05a%egiS~Vbe#BKiH6mP{o8NDarLh0T&YI8k-hzk zUxX0Z8xgcuv#)FJ7cnCZUGKHSdBCX$!fUMp&Ej%&BO#{28Ss4zWC)g2DZpoQX8rH@ zV^Yr$`B#VssIW(1BuFXmxf8pAh~AbYtxtFu=s-o9SNpV`y^Use{SyDZUF~GAM37WS zXTQXaRU7Ld;lv{fm)bf$!64uPVxq&;%%a`Yih&yo9KZK-{ME4-lKkXn9E(Cuib20)d5PRaJCs_y zHK?bs9NYz4&=;`yQ^0KG%Q= z4xPbSp*V=QBN&8|mfGlguCHbEHkRAha39TaUE?KlcXb;iCj;uezVp^p;=ZdhHHm^& z$17}$Lr_<@nE|!QsDD=J=h%>q+;Eq+FjW7*MXvfC{MwN9r_fr}z)Tg!8AX8lxF~kt z!FtQy#x?X906h2&V-p}_f*cS5_R$IBbq7=w0q#LvSHH)EIR$ojhk*9o+rf=09hY}g zem_n9udQ>1AZH7=Ow@&|SgWdjtG2^&e#SO}Qx_TUq@6H3?pyE9T%=hbi#(J-=6Wkp z<~j09u3Ycq=Y0tOCjiVc;%?{c#yjvNqNbojDil*Km?SWM`b8g85{Xq)ysL<%K+TuC zrS68X-t8{DA8+`>VVhei-3T41`)I$0#;UnsVF#z#2;}Tpt2E>w&c25ygBJkUkq2yeXN-5@AHUSpPTdJv8h3&tm_lMOLlw zv$lb?95H0tpitIjTcW5w`b45zaetPaikq%ia2r=Ui03D{_mDOou?S;dBN z#L%P)6^l`%&nI2|zae<<+s-!=EAVk1>0x%P`SI`uMVh^JzmeO&zQy^aQq{iun$TIO z$CYxp&xoY#IAq;!y>}$(45681>efPe&+9x7T4PNF z>*v#V>Ik5+^Luca&*lHcJMvTDrM`nHQ-_rN-1U3^M}DCET6M`Q@fs;31+eM()|=Zh zM9IJQbp35aa_%fBqUET2c#iR4CZVljO*EKldU9Bg>jY6lQ)D1M5T79X`d=)l5Z9zg zL9l%72r9mEs%S_mE1ORGI}}~9cHz5>*Vv_&;7XdlA;YTpqKuVQ?Pni za0%P;k^Pm9XTQCdBKqgmK5nPfuC*RkEcn#=_s~Qpt9}yohpDX88A_!brHxP`DoldK z?uYyNy%pd9$@~H|x|D{2(U%*(0oUE)b@4M%7A#s|Il8iCN1LjHTsvT z97v`GtLasX)cbv80^tY4AM&(SGy8)Dng&&T<8wH-tz-!nTa6M$dX@=NKc=@hrV9f8=I}1hA|ucMtJfpU2wGls7a6 zz8JcsjpglTsTE9?P53#9IJq6C2i{!>cppuf?qVf2q376>`&EifNkh{JfBlbhq=$P9 zcxIAtHm$o|d_S7~G#_%bd#Wf1N7FAs%qI!=WrlJ8SbKGIT-%J-N#LAbZwM9!vN)w| zlvqdHE+qH0(K!m2p~(@KS*tWv+&(00K8A1XP%}{f4HrxvKW)r3t$s=_^%wy4dIQUT z-U!;zrC+6$=QaYwz%g3k*LTmZO809Pj9XFcMxQ!W( zCTpDEHBJzA9qXO6{y)%@|3^2pGg=~Zw;=m{5S0pTix(0_4Jym}rWIB7#b;vEJJv3R z3h^)z(B+X2){-4^msL04shB9tm^Rc`8YZE&PXEdA3_`;Wa~Ef=Pjw)bP{ub*&?8n> zEC1?}^&AGDuTOW)-eg|bXdH<`U{;aQ7EZM-g7^F@ ztFpEnROaltL_r*_`{ujxH@U3()(m`xGY}Ab;0sblmTuRLl5Q~S8`q0R!P`$KnHRh) zH&Q7%RtbGQ;7m`f4vkl?^(I}8y&;O<^q!JBo#>qLN5MMz}Q3s+9;r1tF4LO$8A;a2m=J1dQJVPKy@@AHjmIO4@qEi&RXYrw{L7o z`iM&OX_Gk?(M-XKVvl?-VBkJbU!3QeHjpK)EA0=tK{_C^qJEr-#x$%*-aMU`!R5Z0 z?)-%DZ3DHg>ktB1o|P*M_+5=1CIo4se9h#k(wb7~eKkkwgFOcYZ0C8x>~kxbop9P7 ztlbE&alJxH|GR#Jps5=E%>WLOD2Z733(iz0t)rz+az=N+@k!fuv=!pto&3no?193Q zzvkojvha>KbFf4SwvLW=g*ljN<}Lr^_qX-0hIqRkpQ|gSDQ_HAKkN!ZUZ_8MUe~BUvt#?D2)IRw}3D@JcP&xEV>c6iV!BqdFI)@Gc?UDmF8mZ4HEcq zniOEZdnxs?4%L#>X^uQq%IBg1oOa(63;nJlET?B7q+;6ZpIf8VOPQA&C3hnUiQP&F zh^`pC2&Pyi*-QajR2xjkANtd6MBXhiwKB)Gu4GpE4PFKjy@x!op%0RTCp?yEf0mZ} z*z_dov`GATEh5H`Zt$>k(TQ}k2X%s)*;W6ZKWyEP*l@POk0-<=o?Q>h?m02B8_Nh! zH^bLcr@Xl^PeAMe4yd1M3nk7Q(rH&wLup@q97fV6L>D$JFwj>{VfAzZAO>wCKuE=p z)9H80YOR2YLAn~8wdN}+=a0HaceFvlxrQQlPY*Bt4Qd4aVdXF~Z<(>7uZuTPfR46y zJm-GId#8g&{x8fCg|3%t5B?P&als@HeNI`BOaFPIPKl$4^?WCUWpzanoqvj3RPGT# z?zuNhE#ZpJ(~g4<#}OA0gdc(#u8qo-G%{DYl>?wUm1U)>`#w5h+b&1vhm*KpN7WQL zw|7K!-I4K%H!&Us?d&=5_TvHkd>4r|zYc@TyD~4tB|MUTmJ@=5HD1ia*K%;S1K;QusRWd$?*GYu=d*`LP1Vhv66I=Yf9eZdy z3GI*^bg}9=?UB3X2!W6C%*%dOcB!_$gYRK|YAH7HSTPoJdJ^PCrx+Kc3E*D!w2|O$ z<~!?Mu#Wn-!8gySawl76;eb=weY1WF2{bYfL}b(+gR#sfx)4X!vHm+xVHmm3GV|GC z^9i|S4#kQ`VKbif=US2WVh*vt$u6)U_|ABfcr}!61=F=OUDb9zR+k;e{vbqH3baEV zWMQdlp!UNTxyI?ntP_n2uQtaoo{gRb{e#GdzgP{mme6x})QVeOKFZW0^7c_#+NqnD z{XpkJey6EkcD%rsGfIb%Oy3~RA0b|Kq`TcXUVr-BBm3M{#YRP&Ao|!h!h@+@*uQE8VtuLW`G`vwHd!RU4^~&F)0z z#r%gq8+qcw;o`aV9%Xu3b*}?vszaJhgT^#T)lNibRd<`BN6&u>#H!MwMvgp#1 zB5gvh&4em!)RNrb;9I9hp;^nT9kC{L$d-@m&R_ciYQu%mQg z3sWWLKLPUZX7G2HgeFS-d;1NW#j5pN={~0#Mr3d2DMkO5J1*Vp`AYp}Gcf@X_QK3b zhAL4BPOD?A0 z+~yC|Q*MA6Yu}KzvyF|oc9L#t-0RMdHvg9kL<-@fGR6_Cy-V`?poGe2VzjBd8rP=#{!?;X% z4{lVo%>x$5-;-(_YvVtDbQm&TRrMV7px+b`3!r!6X`o@9!&!tKu_anS|K`aOyvW7V zH#1TCI}8orz1gH3we>3#IR{2JIlr|b21=#{J6a3BKc|N?gyW{5jSL;>a+HaySG2Gcp#+X~ zW}PdZmw(D!jSk+j~V5>H2IS!VJvE4XaE6a&o^q&sB_E-{%d7 z(M0rV59%x3r`mXIPi~Y+ahF-^S{w>(_z2+dE$-5F`nlVCq_&7qE_`)8dvW8A!~3Lf z2s0koh;?Tn4=Sywp4MS$nXXbL*}Q|8bxE$$q{ThWp?u>CsME^a38{G1Kc8B|Zj(E$ zBN=Y@6MkfSgboycl(I@oGeQv|ceBn!^^h*3a;C)J&SP3q#Rh0ev#JS=fRB+V0`#GD z00}-j+e?TD_P*-={1!>E42;_RxP9ZA`@A?#h~)S>HskXaR>-IPSSXNQC_(-6drQSo z(>#0D1&&TfB0vb!KF%6n&32)L3X^~k;D=bQpX=AN?wJ{Ttk#*WwBqIW@24G@awy&t z?vnVxTX<~pausyjyFYTjhZQpd(Qs-=7`h89*HBMWxL>>lEz!!|Ct_WI*zKwxX;WY$ zyW6Mf7d&t8qUX8gf^wiw4#e9IyazU+IUNj_DT5EXfO^aL6cjvX3mbQG_r#P_TJA3w zQ`eqP^D4Gt<^TH|z@C_`T#PH59uool_UO_!gL}v0(Vda->#8^C87BUO3WkPw5ZM?1 zwdpnLr+&uKLeSL9s?6)`e5lc)*k6B(s zmjRB<&yLo9!|3O|Kub9l_Vq`5gd(I=TTLyK-~h|Mk!@S64&Mh3t_-K=a>CmmNH^## zuuLT4M{OXRVB<=oeD0Uo-q4i^6TDlZsjcXsw>eKqpkte%wW=2RD4WzrlIfE}QAt=Q z5G{+VYOGGA7>?;+;`qk$&Uf1jen3dI@7&mT@TTfxZH1m=S#}k$Tr1I%Q(}MqisYwJ;{!7bgWbGBGY3`>YK%x3omPn#Jlwj)WvU z@%#rvu~KRR@lQ>^LA>RPycH8c01^5;arTEmJMrOTOfqj=L481FvpNTX=j zKuLrq8aVKrQ~F){nmSz~Vllu99-TWZ?8}#+fJE4vKO_t0nGNE6NC1Lc!VG1bHb5UCNkqGuiBvliYhC^{VEOt7qwHWaz@|)&& z!sAzJ>Jl~jW>@7j@7fNn=fm+krFtjA;u?=CBZ55_(n4}Js+amY(+y7ZE^01p*!s74 zM%;kU5^NZpaWi`uJ&dl&U@f-+pRB5( ztBo1k>ettgdQ|1cYrD{n`^mg5O!x6umikEUQ3X-Io5^W&t#`$}?j3lj(x{GUt+oeQnN8-igi<8BXH`UQA<<^as~H<{7o%U#|5XuYhdpXT}mFMUCNcoV5@ zw&%c%tKqVA+ot96a#r8e{@#&ByOX=7MbdA`F8>n8CDF{7V{c|g_73e3<2@VpYB=@n z66G%fXd&+}nJ3&6T{JQ#6=!Y@h1@Tk@W^Z*(LM4v_-WI|uZicPu%~;3u4MY%SyN$3 zylF|=j>R#Uo4fejq3s!gnk7DgEvYzCaT&$dX6Z7tEtXSxuyUaI117{^Ppk5DJvTez zh$JFM)Urk===#jW&M99-g9L*j48qGtuYv+C8e@xOk!&N+O+b~C1tA)|Wq8*9yN-iu zS!AY*PL^h_aJLN+qViE&dG7R&j!K*(BFo94*;UsAlym?)m<~ek?NWqn#}YWvDf&;p z3ttEQnf^{H$${O66|}Q-b$cAuYEJu*NLw?auSMvu#(GOs)n?zW#oW4uK7pM!l0I|1 zH}#zzracjI(>?Rg$zn_WN#BDye|7$(X6dNf<1^vmDz(vA7D+3Sd`K|ClPpxCzOB?D zOyUqG{J2(gR(_xwwvqQZc=!ob{*#Ou?pfZ?ad`c<9x^Xs4SfrZLv0jAR1!o35o7MT z-a-^SUPSJ1m;fm8C4=O&-EYtFD99&haEPQ1M9Ej5{b6s(0J5mR;HXPgsB--Bcuo58 zXEx@~2jz8KHb%UYZmtg|FqEhOD(s3o@tIInFHJ>$2<&|K=3`Dfq`DEa092L7WU7SnYdd_C!Gb;rx%)f<~Vy;ZzsU0nw++f|*dhS|Jba);o zj6oL=sI%PNmo+DCE33VoE*}(bf16&NwQ{}6(vvluGmj+EYEqG4>v@wg8$xxdE7s2E zPyaPpq3*gFvitk*fBpAXjVt6|oA--Helgy*1BNHcrO7g^YQI25rX$ofQ-uh!|MQuE zw>5X{J|?{qt*TNQo)S}o7viM|v| zTqU$J(upd~aDQw{Bh%miy0=*Bn3}JIo6suG?Ap7*H~U{4EyWr-`P8n@HoQQGh+0g=i6dwKw3WZ_Z0q^OL>D62_SX+$FoaCrs@A}D zN-CUpm64iW>Z9gW6@kRbKIIr-y)*xD(kfGt`@+N(MQl=UxiKSHL)#Rjb(e<=Tlbv;~Nt0AK6@Nd3!-8y|r?tSd==(gFaac;IAkQ^$3>8!5p*BR*5KQG8gQbX$H zqh)-A-@(D8#t*u%4cd_0q^}$Y^wS;0V^5t3JV>RWj%|co!prH$J2;+iCL`bS+xv(` z&t~H?P3pYiVaXn(HVh=z3D&^tHU7ozOCa<5u6(oHSm$N4&f`BRinS(Ep6Inl5I&3) zD?VQ%`2_EOa(&d$iYng+X++Z6&k#E9%0{l=zS0 z)u&%3q`Yz;?^3Xze8OjS4KCZ>jKr^NGx7Z%SBIAhSAH<*KP-A2LU*I>HPbBc{Lh?@ z$FZ7--2opgB7K)x74|hZ05t%uRa6m~UZ=tCo!oQFyb3x#5WWm=6t*uJ4L-go6@cYB zO)!0>*4ZAoT!)RE28)Id4^PzU969=g!Cu?Y5zJLBdes6IZ6XG%YQNm^ng|I(c~j(i z4y#?A%04s$W6mb-8G(Oa`~6}W);cPZE!^3WUwUP~RMvPOG3?I!$tz9GX0kR01{xn0 z?cZnA7Hh`m4uOf=@bJ5A*LPS(u`2qM=I97-CY|%8!zwa1Dt2i07F6Rd&p*Z ze;pE6lpkp*>{JM=FMQ2+*XVL4#jGKbC7H0KCkEPSXe~KR@`~>U-=E6ghzlb)Eu{Nv zd15i7{DKb{K_4=#CpAQ9C2-4|5)XSF#)}~aX@P#iK4J_JdH(<8eM*nhuSwG9JUp&m z+6Sa6jq__$eT!&r)1HvkdFU7f{oUTb_XPwk!_a?96HZw#9#>l%>KAc9n)-w{oM`ar zfN9bfxo4^jkF|?#9pMPtMLS2HhLHW_B%!dAo zj(>PJ9efDp;PuDUpI}S!HkRr`C3<%8RP*(SV$?fuE?-rxMuT`CbRVVvQsl84JD&cjQ6=}W&rp0#!|#FrhU zSl$wQ2mEoa1N!n{1|{g9EqwLp(sR-ZX)feWYg^a8#$Ex6#%j|fzm`E; zwtV9Ld)scmc6!TB*jWzZzTxAk*;#o9{v$GGiU|GUN-bM;hLo-->b@a#TDdL?y`Tl< z#$dh*-FM%%R@{5{&Vr=v=knft$apd9oVinYWO$d-5nk%`)JgQG%MuJP;2=+k@~BK_ zYfSg~yG8U)F8b~kNz$=PG8w-1>SqKZ%3W?Sv|;a7EY*T#*BJk{1<@RdRT$_R+aiC^?3v2C$wNPrs2HUC1=OE6-2K* ztQDfmmq63^JjW^k5qME?o7Ld^ui389DQ9$j_aDK3X_^5>V4@(Q`=4gdpngaDoP#P? zQ4LG53h6YQwRFiN&8w>n0l>s|33B{lzL!%eE*E4+;FTYD4POIdk=>USDhS{>(Gey| z2%?NST3`^VEcOh$JbCkf99?x>lkN9LQFuk-RRKYXSCHZ5AA{mCH-f7#2QtBrRG5C0{}-TZ;k6VOK3I8xkp_9LUX-IQ z_0sAEDGxM8+q|PZan2<=mNxU8+?cRL3sw6`?b)X>H+^4DvcTL%RDi^)HlQ@52VZii z8N1a@UN@|7sh!RoJm*q8y7dmH*IeYgDZrJwpv+z_g61HrYduSUH(Jsb+62aio)Eno z`3m%4>Fy_&#>D?e=1C@ou!k^Gr+c71mjMhIK7s%^SW#{z`VW?VlmZJ&`l z(V2&!>0eChGs#xa)iCbH{#EHGzIv91zYY@4?0!@XLp=_c6V+c!HTl5xuqF(X({S4I z>m9mzl1WMop0&>f)d^5bKl!uLO9?ADO<_Hx>%(xn@~!X4KTJ=8EI{yF1$*}}!ID*W zQO{wYMi2G;2Dc~}@z19h9|JrWiM0iafJS;J^W9oaL`NC~b67j<_Gb=YhN;w!Fx@in zCJkOlQ?(DuAm?3MY2p&?GyG`(QHw+j>JS&pEYJ_4g{3CAeMhsMOj~ZI9UHHDw=zlJ zwG!AJg}fxw=ah?_H)p1N)JQ#hAh9?&nDI1TX|xx#Rx;z5EXz_{l+$|>DBT7 z|3Fe7Pt={4!iVPyP#NrxXYvl6T4Rn2hbb^1uA5TE)=|<|Br!XmDrfWY#jYhWWH_O2 z!VR8V+s)1BWRusM|9tlvw$}rx<63)=`j#~zJE>cjZ4J`ufVN zEqmGR)ZmD2G-8c6^uKZbG|8?GF<%D1yGywI%fUPGfKB3WGPiyObAzii+lh;s+4-d! zH5QC}MZ(eKPo+l;O}Emtt?2)o<77>ESW;>tZ{SK^@%*ry6R}Te_APTvrCQT5`%{`yPCw zdFxu?t8mTq6>wMmQ^q&|Ds~;eE4X7 zXDYGow>u>p#owrSinrB;9$d`(Kq{b^5afEQ0EPT;_!NR}Tog*zJF`p9Sb&jNw47bB z=`Xsg7@5azkMK(SaG3%@0}D^OxbEO-=G^IV&xpxTvO20i zVMzQJZF(vYB8?dLY^vYc4mz+x(VUqKL2ak*V7LDlv0lHh-5Y_@WHHRi^F%1|x_*6; zFS4iC4fj%sgh>yNkuKpK+2a=EX7qO?c>os_hoeYL z!l$=~<^!hTRi=^2hvQ1OKVNi(jYvmZU!`Q@3q3eB*@Hh~dB2i5k=BJoK&gk`UoY>DEDh06Ns_;B zcOUBhD_}rKwXy>>(0@%LU;?fTEe!tezCLR^Xp@s#gvD_uofT@?= z@$!X?MkEwEP2hs#7e?9@nXTR?VQQ=WWJpBPYw=-7jayv9Gc3nxKo^W+)_&t}T%fz>(szi-fYhfQ%HV zdJtXBtDqa_J=EWGDvFDJQrouM#_3|)dY5a`usE~1E+k+;fVvUH7QyZj~P zcQ{B8ySRW7y(Y<*%CncCa@Ks4cswRX2VHvz9#WLn#yOy`WKH}jli|lTAo7YDnMOJj zmHo54Q67CcDxh%5y5p#$ACfH_LBXfESM#Wv{Ud{qr zofMi3Mi*e%>Qv@0;40Qiv)`>~vGv%=2MpZROgPVy+5FQxc1&JTJ|OXYAz%Q+Eyua} zCm#U}7(0OxyQUSjW1vI4A|z9*VqUs}RArI$IN*`3$m}y^uC&Dy;j{0$n0aOHZ`^RS zY~eFUQtx23c>{u5Fafv)i+IU# zMOD>IEn@V=adYmaF#Q4{eeJbf1+;#n{$bH^L=is8rdU=2+*Os1FF(dXIODennW%kO z(d}QUqGPF0dhReA?UyFXonY;{u*a9sv9{BdolYJ40@P`iyCycdI(p#rvV(!%Af`yl ziL_VWuQxt@<G68igoJ5tJ z#*AbuSmCHKDU+q(W1YtT<$!=yy=L#i4UA$O?aFbF5||X}&)tll%17vIZ{%F>OLX(( zj!BVCc?^h|SO^&~i$F9L<{=D_W9x#by=T$utV!>#JYoPvd^WP%mgej(Y-p^zP>>?m-0?{pZK6E0b8kFxaXX;y31N zSy|-{TR_pGcqr{PuqBnAzTuU=u!*xC6>%2u&DLn&iG{M#?b7g1AMt52orCueE_g562f zCQRDtLN}X#vfO!OOdbB_3PU`pQRM^0?u4zGJcm#K_e18?{#H+yh9+HW-dFwG57)StWu)(Zxr29!+=CYEOUhF!d)4Jw# z6;fF3-O)~?mt2LE88?#_sF-6xNXur&I{Zw>2bx@*yJaBo+SZzrYRExF2(1wzd0mj@ zhf%=kK-{D1ZaT1!5BtBC2u#L(;6ed`9I z&$7-Mv=~EG;$JnG$i zYb`+vXd?KmtZPCkyL!mcF#G>q2o*!49CI=&d_c&6G)9)%1HxJ0T;Oh_eCOlIA2QRI zkF_Dokev#3Vg`rL>s88z8r~D}6;bBEyGE64+&)SR~k|(~JZ2moA zk};;|u1D64SE&1h=t~f2G{IygU7f4>p40>DfAJpK`wO((nKtSc9#Z^p;$1z5WlRSy z>nxdI$&+5IM=28{`t;zh<x; zu-jhUi^>Ek2^rp=-;yN| zi(ok8kqqVq7zgN3VK6;zbGu-lv(~(>k+dxMktHEwjQo1ueYJGuA}jjXgDL5+N;x6C z2*KOlB^}CcuiIa9E|bb1k9SITr)eh#ZCNe7ZGAw+z=ZjNVE_`}dt?mHavyTEr_`r) zvDbcCe8&LsrSU-N%9(_Do|H?h9{DYtF!gPS(i?c8ccW$Z!RS?mtNCF3?{_#|hv+<2^n2k_ytXwzRe~WdWze3VNpsuvXs>T}MD=MM zBOet!h7_G!y#ozN%p_jl>6dwKv8>H5fRB=t1B|ACSe`%^@ZBc;a zhR-5;8tOu;zA;Kw>G zduCiaL@B|NGWr%%q#~DQL6XnP?Zrb#d=j2%OM9FGIjJO$p>}kHNE8p}xMFZ%RzyUN zjAkg>1+v0W<0sD&l%O4}A`by#p);WaLZk!8IH29Q6nTXl|Aw_HR$XD9=(6zZff(J( zB(hOMCQ^$#@6QI=O{4Vn+|4tH<8d#++^CEhFZh>WAYuKP6V~_Ul_|ct-XzLDxw{4U zj|NZ&c>K~afCHlKp(I~qQ)j5|TI3V$F4$%)sRyqo>hJoE-^Jf6+>S$E8$;9DensbS zt{pa&133PP+>6f>-RF8^eLFbylxXasF@>>mbVz;2M&69m{Xt1Tph9t|82?*+xAQ)iTVWbw?G9sT}A6XPFMg$LmX z0BslF-bZik%XgL3cDRe;`zB<6Hp;6yJf{lJc9*e$aDKz*h$a%UEj*w@Xv@D zR3C$%Ny>af)YlT_TY~0==5^obM6G;Kd1UzGcPuMx#A*Dt-3t#Yzq9;IKj#eRm4k5uG9w>Su{&`nHRo9mw9~yzNJ0$d;d>7`9*IFbTM!he0wi$P$FIW| z=vUU_3UZY=7G1LkkR{<$QR8ubi6h=tn-Vq-moh^1#f-9oR0y>QYOXeNM#ZAfq7SF$ zY77X}!VI$XSy@ghHe7<(c;cGcY?0?LkKSZUhec{fOUO<3*zp20qM^%;IpLO;&};*{ zU0-GlxErz$aQazE2YFmnTx|4u5b#VEaH*u*BW$oZGfZS=nR!;bbi1&%c1XZ!cI6>% zC~F_g5)ga73i(kYJ!sc1`+x|!E_A!O9))wF31FrSySO^^TRTK9%bx=?2_1fT^Fw#y z_#kOs1GzUuY7h2e(pKH=2qvM`qQ0?D;(^scNjBbQv4JajKWG`tl%w0?Y*}j{9 z_7pA&QM?fx;2>KeUkffHhG$F@c-@=T+r2m zsfxrTrS&1mM&FD-3w-l->VcP^K8|i!M^z|@IF3RS+A+>_H8k(u5;~~*z6krga5OCg zy@Z*BZCVX!yT$l;Co}e4ScSSev~vM)N+Dm#wdITV_1Q$%B5<^3$3=8chr z20gO9NH=GL$N7@!f+{Mn@oBo@0iU3-zMs_zVe|1=)ok~Xssv2KKR6fZ17Lhm3`Yn) z=V`a?2We=JRKaOlNjG&L1kwiAk)>~B=c5vJ6#CQpnutwwX-^xu(8Fp=={o}IrqdAH zGmB`c1|_q?W-dM0|C6+az~#^-m|t(tlPF{W@J#(RT$7LD zRATya1c=3lz>`q?qbGCWyX$Z5#^oCMWaf*&Q_Qd8dd-Ym5Y(tli+P}t#Es}fT!{LC zS_q; z#aP~?s*Py4{<083Qfh&i&}#;hzHuaMV%heqyC(s6r*MCk+uMufYYC$N6hjfRS|>fMe~+dsyX-$JAQ*kKA{0+I+pEiW-c=6>}=F_oRb z-R<4Za%4NqfadZ#xc!c59UE}*^;Y-#CgA$(UF+;>q>`&k1uJ<;4}#j^UokBK`;@I% zjvhjxRBZ%@^Nio$+`O)mAcEXpZml1Vj-N5eE8$M$?@qAd-9E=9LnnbT1&;>_tjiU( zDjrl9D5GWgYu0g**ValATzfw9{BRlO-n!0s_ycKR$v6hhP-%U8<1%(kwvQCrfchgA z9m}9zI)!ba0@qyvQSI`$B7oBJ%Zr!MoxL`z_?LqLetwLe>wM;QFw!L#3tn26EHpx| z$p^m)WxD$M>L&GX_&h-Eu&(zA@^UDEpcqvH!&f7b&Q%uYpX-KBI{myyWll8rCPw|w z2skVv|5+?zcq_Fad@BWZ7Q#`{b>ah_Z?hf8!9>sh2J5`AKW8k@E)glmifNA1`qu0(U>I-eB+C=i7xt=BsT7|85WvZEYMy z1uM$DYRrrjyX)bQdjdOYo+8IO=JJixr}5?TUO$ige%F`fxyeGzcP)WyU0;gO4x6Zs zOgsb(|E$;@N$cDl;&Ko(RcFW8wE&6xt?27jJhBbti+Hkx7N2(-Pg$sLBUKsgHL*u- zrZ1OB>Q`42J~5w={X@$e{#Fht`mjP^-)Y8yl2-d_lV?xFNpVz;jDWU}9DUK_gt342 zlrjwH1Md?!g)y!AayVwN>F9iw{tb1lfb6B~<0;*%mmisNDW z4YU2rM|1&;y~1v|pC#nuxMPum4dM~-s^?Fy@1(K^*rVGITY60tlXL1@Pe#PXR*ZhC z;p~osiYS?;7CVj|%=0yl8qR`1=lUI1kpE?NS@_}r&K7^2qf6@AC6-kI@-mUU1l(~ys~-)R|?$#h#&e#?y^5~|MW@T;WcoX){^f0t{`dhrs8e` zxqb+{gWY*t-)xqc61`QJSMbmcgGbZ7T%E}HuxQ1j=V|^5o?&dyru}%|(ZMG*r{~Il z*)=>M;20jjUhw8_Uj83bCG#-myZJj)-V>$vYs2^E8YYea7w`3g{U8bG& zW@sSDsJNDZ^T9Uqe`0P^Mt#|t0+7;6Pdw}GW@$U*ubl7J6#iizMC*_Gjt@c}kO*@Q zeHl9WscP0(A^n221=nGfapynwoM_2=m+wDvsU^8}JNtyIT~Bf#QCk_ERBRf>GE;swwm%%8F{$TT0dF7Bq z1%Wfg0-e|uW_qpz2&WoJRr7S=T1((QK;ddIQh*E>306H$a0zZKdA&r}NL}1*R+zyw9O#06 zK624o7G*M8B0Y^v?q5e#roYPF#-25t$`X~l<(hpDk4q;_*XL8!^fbYw8Nw*g4<#vx zEJ%mOmFj=%Q%ZoL$s(Qf4HTYa`5IY+e)Z5V1U0IMg8Kne#&$E+gn#IVH*ue~4CE59 z_Bl(t52>$KVZ{~N4g<*bY_$}X`VbOLm`vfY%!`SM4g}Q9oIJyF#|Sq7QQfIHdMa8W zK)+-=JWu6OFRP!Vzi0bbDng%JXF2&3^TDzPes1F7v;JGKl~@Xk(m(|bz$R4-nY2@W zlN}$#UTOkRo5yAO$-pyf0DtPE{{y^i-Fen?F*SXS@9H_rZYjbh=cVblG=?)CrTV&C{O~L>bS(yJYQG=Qm3i=gXJU z^0YIC{+sZ-^IMe}f?D$R>BhKp+eMO+q@{nhYkfJ-@3cPhJogKwBx=VPW+bu&9BldX-}?X0bSqX`z|@2Y+IVZp=v$l` z7UfcfdFNeQR-z#9vaMDHSsDougM8X~%P#N~bai*c(=K|uiMI1^ib%4Crrca^eJdF& z=L`E#y=TT7;Q(VxpN$KTxX#lM5*F4%%0|Z~B2~$3y94$$+C)j3CWWuy@;5sT!Y6Zv z08`cJ_W%4|;j1nA{%i)f{m~XSz0BbxMW=4+hvLj95`f0MxyuKXH$RGYojSG*{rf9C zaDL$#Bao9}@%2N1U-7b&WJFtwex2s2Zm3L*>4`PtW4FF;-7gzu^k-qiYhTvJ+hXLp zt4@>r$J?I-wBMY~W6!0RurbNCm5f7~kvToB@b%Ta81gAC-2HE?mrE=y$+hJ?3>e^j zPuHm#>4-b(QdnJC-I;VGzNuX27^s?eC2+MCAadKrjA)FVohJPjppLzC#8{s3ELpfZ zL?QHO#a?>V{u2qGrfCp=U{!8T0*^>M_wzx@(FX6+bB^t-X)Cw_ z05^3)g3diUok5>U;uUZHi*4wjPa~VsiY(4(Smt}{h?w_dC1Zhi1VCp{MkBO-5=v^1; zsGffCq$!g2d*D6x3Oo(uN33mtTBV+xC`_*=d)`dzn5vk3WE8Ut)G}Ui(p6qlsT=f+ z*?r4JPCjS%Hp$v_s$p*F{XjK2G?8`iIMA8UAojXEYo%qVM%6I#sojh#E>8-aRq;%e z;^U|}Fq=$Vc`K6T>5S=f`V4ac?4GxzTQaWtM{SA8UNJ4zS5kcgn*PC~H*aU7=j@Dg z2(gRJjdG3YEX@C^*ae^8OUdVgSp~gNGG3v>FKPI<1U~2JOLMsA%-|G*R5c_tO%7fd zDiMTsSzg699BE;q%E7D@`1}VMt=v`oVaLg`kW1fi|EvB&bA3+QDXYhJ)Yc2sc7Zr= zMzsocipX9Ty#zzfq_>Hgc=tzHB>;V|4lRS#g5oj0YSrd~2r=U%j%sY3F)wLT#h=j9 zik)Ko2b|E~TrvrgwKmQOmZzK-b;h)wrMpskPHPLL+O^zy9?=jU%uc@RIC~Vf( z-kbZdoTW4su?9ZvY}wiAyl2Fl6f1?9ujXZi`ca;mDk(?u!s1uoSC#f@c4he<$=Wjh zE{~oJO}+IbTWjd?l&&?Re#{%8(@LHsx6R?n-t8l&1V*b;zY)u5$5JfJ7$Miw1g-HtufP9 zr1=!(&FeuobN*O6W8sWLN|hF|fkd?8<9x7^(1z++2C zs5UYfNLu^LVhTcx?4Era?6H6X*{&AlT%51${p(Tj-IyQHSM}%xD}Bv0P`cRJA}Cw! zaavDr@Ug->?Ft4~_HWvEoCT)_zlkR-D_jtsA&lcPE?anS!wWZG1yB1+C_~gZn~tAs zp)At57)>ZywK$2tc7{s{C@xOEP7FFe+D2H(<2XZ5Rp~0FuIl!Scs~X|@{gZFP{W@F zOT?e67%MgLLA0?p*RV7&K;lR&SCLSjySDE$?ksG8trIKfh&6`P|K-#kegwDT%7QrmduRe>Pcc`}3%4-RPE8xj=E7hjTKw2Un)hg0g)`uLnERSJ1jE<(K;! zmx1ro^!6 zRuJ!K2q(AW@dV~N;_WhJMp-&P_pp5{;YAu43ES*ZaSU{My*ExY;>AB-5agp(ROBaU z$DzrfV!qRhiIq~PBcFOgr9`#zz#dUOYGkfT*fVves03mo0qvd@HU(Gu>4DPweCcXb zuT-3SgO77;;3;`{Smy>vIy+D3^_FPsDhc?m5tk=Z?_QxnA z%>LfscBge17)VSQVZy_j?{>}&d+=Km_P>^HMz3bZ^73*PM;i>=9%6D75XyItw@FOT zkkRd*p21^}%6ClRen0#!ocyAzjVLqv-p+bO^{mHqNTJT;0y0%@(mofOGGJ(352+f8 z06lWa5g-Ov7=`wGJ5&?=%|NB!>;$)ImZOQNmNcEpk{9<=QzekMP^s(gfv=v}-6}X; z%i_Iv@eo!&WxaR^bjQ3s@7LkjOl$o7s(4r%bUkYT`DCah8ETr(A%qtq$$~t^$x+u`_D@6-Z85AxmW;IeM1CNH>K1r8A`lWpI2q<4$I7 zhrR#pjQDAb{+3N2#ZZQpo5EVo*n8zwzWPshFSI&OZuQH!(py1pm?Fmi5a~7fKPM*0 zf4|q78{Pd%^?SQ`)FzLL#)+894kG174$S~y96pEj2Ond9_&JsX=nI_1pTBqvY?%$~ z%W8?Qth(7pm`jktu2Dde8w?yJf5YKuxN20GTUB^d$c>G&+e zPT`+n=J6B5Q&$wUYb^P|=QC}^QBW{P{R}%p>d+&Um$qMsHF2t%pAY}3dSCfR31i&K zoI>oh`#+;hQW>6_M)XR>0tH#~wjTRMaa9A(ReyF>LSkUUL*ZWJpj!&0%GMu3W(e6( zxbfv54zcjvX-HWY@EE+Y`BuNbYpuZ-?1#6N!RfhBLaj z*}MDa1bQ4Xk#{11@w5LToIMF@tF#$p1Jz$hk2`Fj7cw0DaH@MpOgaE?gU9W7_MOX5 z|2SLIsn3tT7}gawJ@hh=HljrTS6`Bb2wR{7tFqhi9vu!M?p|ajSd51^6OHc^(%_Xw>v|IPVFbu zCx2Mm*3<*(0zvonZ(|`*Jv;&}&LaS&qiKxkJmV7T;ONXNjPYT2)4ulmrXwJq#nEJs zgZX{vw#L$cb?W@|Lbeq7{gd>P5>?#lzg%xpL?q;#&pTeixLdH>wY^_~6q$dlD$`2b z868chV!ufDZFgqF<=E3Qx>nGqlVW7@T4In0b;M%|hQ4CVX&$GmrF*kE#HM;Lbp4Cq zZ9n_Mj9pd4m#wCr^xf)ZOb*rtK+PBNuw49WrAayA(%CS6J+?6j(5gM>{-{5}a%xFI!)2wc z=Yzp2G)ywZm9kpv-+G)B%?)Rny$Dxfs&}QqKo7ub@e#n_82reI)RqymNtekhvi4r{ z*?3hRJAjR^K9JwI{We~uW$``yN0wQ0dE_1+G# zi5_+(@(Y7 z=%sTNh_x=H8Xmv=1+UzEhdcXX$P9>9>P~ymC-~K@xK*G1wTnZ><2r?6SKy7K(f0@G z>p#M{%;`XWab5AUZ`fmS_h2*BM#~)e=X4Uc^hK83cN%-*b=4n_Y<2XS^PE9+Jh{lN zA>t6$;4NglX^z?k=jHZr6YB~MnTMz+$-bb-e;}XLjZzsJCyCLE42Glyq=-sP<46(l z2enm3P-Xh0+Rz9vjvjET)%EI4hsBFAx&g(j$0DbMat-o+Izb~TgF-ehMx;d;HG_$B z+dHu43REY2KAz-wszT?8MzutEJsckM+0_?{q;A6Kv&pqcKAe)bBYnLVP6|uHl!}HF zRhbRE%mqp&{mrPvWx-z`kW0c}SR(K1WqOhQ`?H+?ciiKxCkkg3n_n*4T}xJNE#?4D9> z^hzDLTlJR2X z8$Ht~9^{Qgi2A&UX!-HI@__}fwtq4oZ7|=jDJPonPUE&#YMpvLb?<)tg%OOD^YqPm z?M14Ir}?S}%qwi7YE4aVoD{`69|+euC9?&6msgV4e=qc0S+=E0?WmGT5r0aU%? z(;WjsWMYydWV)-$sx0`|2Vd*t*F>X?v~A+~30$*}^ou}n-QsxoR+ z8ADG4#A?l7Iub2?WVsRtGloN}?Zu_s{Gb27)Y`9FBYmY#ott34|Cj1w+(=cB$PUu%yr?NGV0N3xw8fJY#^L_sU`z7^VM-wssEMdMKA6?|Fn9og)d`k;53nWbSZ5p*(Tqbgeete08Ds$4!v(w`ic#q#8u+GGB7Lu;q#$hknSKyIUdrE_9F z7<0I@&*)=TxI}hhUC>y03%HC66JiAVS&w0Lr2&t)`@U2QIX{yG%qG19Cp&qNy-3yb zmzb(h?TIfdjq*8dNM>!fXO0GV_^DULVlz-Arw3}bj)Bu2jQRFY`%i*3`(ERQ;~@=RP{GXm)zAOCWl` z-+F0Zsag|%<&|I&vPz6`k?BtcVIw`Fp>aRVvMF9AWR>$TIfx|8}0l7t-#9#ga9ck>Vt*L_6@(Us|LX) z$pspPXA!Y_0SC1YUSvk?R5wfk$Gxb=Tvr#yKE!ld2-^z0IIhf&*WB6{tp6~W=)t0pmfZ=}E;3L8@|ASIs z!im22077iU9g6ya-fHMEjc8$P=l<3l2pKxoV2u_RT==LC9^U>s{qIwcCE@ivU&0%k zCHz7A80?Ac(yV>0i!pz`Q8OsbIr>7CzkoYyg*MHV@~ z)Y@pzKxl1T_g=f$FJ|@%%xwymU6{;YDNPrlQEl;WPu+vDc$9 zIf1s&PWA6yd$M+qo4G*{anFJeyfS|94Xrto{iGbO?bo(>hTI9c&FqdOttfu}26f#$ zJYiN8$STI~r%?oB$>7=f^<1+uN$MX;GNyCGePxbUv`UvAB)Z41S)xsJhACr6HEM^tRDPZ zeEdb18Nwj{wz83Zt^VFQ;}v26GtK}x>(umtDR`c5|Dwy%nTwwR6Icf8W~K#JB~Jkn znO!Ga^QgD$+Y7Top$r`>AQiH!5x{(U##>1y*umeTaUq6vHmu*Gl5pYipiE@XV6oDN z^u&a2;rUkdR2F$|?sJ}m+6_-v;L1|L+bRZj&>;HwwCDb65j-=Z=M~E!K=fze!CHB< zFu&n(^~+@n7pXeq_Ouy(yep|tb$Qg6uT#KRgTaFjk4}r1$v{WHHW%GPn$g^izT&hG zPLu#wf`VqPkSS%|Fhm1aAQuxAKp`BY*Oyc}Sy zVe`E0Fq<%_vO#)f`0ZJc_#cgwi}04t2{zjjPl%(b#r;JVSWl<_(PTH4F8uTP!J=xZ zy>a4f=?9}EJKz2fGvne;zfa)Z|M6(O*#5ku9u=Li`9moY`P_m&B8S1nl=tyQAc?bs zPslU97{eB7OX|0}L|`E^*?IRNHQpW8RoCmugf{14MU4$`KaEm&{W&;4%ftR4n?>X*5~Mf)>;wEnYF}?#SEO|jtrWkzU#fR|9ZE+e3zuj($W%nXoU58 z3SzXdf^IoU>})F0?-S&IT4aZR%$pg95?szF?!Di|u=T);d1VAHn!mevd;PfhX9?&& zvarE#QuGf>>}eRjTz0$zA?if}aGmmm5b(3bU4z$4HlR#r)H9*#qm54?z88ycU!1cK zI#o$T(vU1IO}(E~W#&e?xZ=-Swn<^3t|*y@B%$@BeRH!$A3u_5+C^CqoyN~>a3xIb zNWzl9j-DM>Q(PQ`8H6jHT^kDMw`=3rfz`5$ zL-9zCN=z1^0m8CZ^Cjd4UB;OVZeW(VT@s6cx7(EO3xwcHR6uyh%Ik>OzrY(*i77{4 z3_dQb(eJSCF;bZ@?dZjZ0pP(>TAr2y&ahB6@satRor0YPZjO3$mh4%T1KIDRDNhExcTe+dIYaZx{FV|pLNE4 zw-2~^Inomn+rtKTUC#R{_4VaT2vTod0SfhPZF;;#F;L`x=3IO<;^PeooCs!Oe%!<~ zOmQIA=u_Rb)2=Un7a8yp=D|iYP1FoKAm}xpaxwE zy<T6}NA@Y2esuu?YdAZe$Ga?~OL z{v0rOOye$Ed(%08&llP3Dd*-bw1_Ap&0N|9zYt62+p(k9dGn^YK$+`NKYyL2^u@n#a|nEHv)qIT*5J>+r!FWLvqj4xOIZA-GQzcYJb>|Ksnp2(hzoj&)j2a~KrhVTCrdYZ?w; zVag+FOH#KZQyiWUeZ@YAU4i_FM@1|$@2Wb_)5w0#m2);#?UwkEQy$pFgz365s`vE$6}=vg z`By>NY=i!QKgsA1;>nCT-?6GpjFS(Sm56WG!)=`zl}YOoYK8jl)qlh5hvBD?#3FZ-2yIGAYzX`u8B1A2r>?Haf_>N@)qN>xn$6j-1BtoHu*uJ%*xH024H1e==>5<4RsFS0L{9QW zUJ235q!u2&szR-GPAq@w4&Gu&c=llH-PIT?Kun;a2%Pk+(vpCC1QPsoG|bjnJuNv4G_=I*5DJ^mXntc zo~ZEu@H-MUE^DVEo5XFelVR#D)gAmb;7|UU{$D))oUKLXcd$OuWIuRBEaladE7LH2 zQt=EMUduYR;VysZ#CRWCJz5pJs>T8SINDUcFqJ^9$Mb}2Q=SwU9;Ka;G^>4ujMPnf zcXOguJ-+_7-f!!y>>ao>&(BM3*)gd3^985*egBz3Splffq`}m)#oly#w;iDuA8yPFUeQzFOTWOlmmF;aw4BBP1DkSweig#gHfcJLxd#{bF0 z%CoI->8Zi$yFT4Uh8NIADP6LbQm2^DPbG8`sqWOlh z`Nkz{ux5rWqi%HU8Km)PIM3vwOBkuR`0TzHwm$@ZxRjvx0AqQ@q{D6sYPtTTQQ>Kr zgQ5L@Y%Fqdm5%G-((QV_f7_aofVT;+wtyiI?alXAG664}4eAF&OoRd%yyWpDe$gwN@ReZ_+GL%5vsw@MNkY=k(?8~ht$~O91 zkyl~F2h5ajb?+&K40~V53Wvgd%rkA2444=81(lq5qOan!)q*dLw0o?i_o#j>PpPvp z($8Hdd;SjzkWti)w?99E*aGN<^gn)`|L32-!{3t3P24gD4q81js`>_mb__c64d1Q$ zZ`{fX#5Xv46&9?6{Xlyt6mI_M>?#sGZ>2Os~$SPK&lLU5_ zuBUEKavnTw*q;3CJ@fM=^?9>oLM6Ie5wif^TVd3|&g7l`eK2+HJcJZlT_!nffj>_B zygr5NC<#*^IDFccoE#OqJs6OZ{9AyDlrTy|{?2=vGFnKO!mA~A8hRTdqZp&{z;mQp)^)8y+aw%5b z%UY0JVnqG?zW~G_JKsdDXi~Nh7QOU|myVGbfc7%E zygV(>tIS2Qh!nRwYJcy6?Ygb2_=H_8-vVozDn8l8{>EFn_JXUXY5JG71?m!8r5r?; zc>&}F>UQ|Fm-erLUvOvg=539uERV$Bff~phe7hPu=)(7O?4^>x zSGRpEJp^CjCsSIQz#iP(MDnwLo#*^|azj;Xu_&)Z=flRc;p^R_a>YZD{!a}}N{ z^PVg-u&?s=V(QyW4Asl}HLH)v!jrIrIVd3~KPkrB#DkaDC6XKOC3U)mRF)+WzH_#3 zsz@EZ(3Ry(f#v5dt#VOBS}!x)3p7YX5>Kx2Z49hm?R@WPdErGBzw0IWk~+oQMG0>Z zd!6JttisCZRZtABiT1`YmWlThoH>0$XPuQ~WnfGmuWj$DPFGMEUXamj*F);KBG2>q zh_sQ{roz+1!2M*Ted*Qrj-6ZIUvaqvyvk%(svf-K>erV*?W#0}K~RvZ9KP!2iS9O6 zZQ5_14N~y>Z?0eKT%c~Uer4jJnIylOob13X+Z0Vpo%)6XZy`hy<> zzvPDHOK_=AOhNlM73VzYc&*y@%#V!}bA0dfg}M6axW2@H2k&{A1HS(w1#b{|foC)G zzK*eT3gzb!CI(2vn37p`#)E@bD(H9)<#n`I*Mk=zRW5^;^N<<{9=zbML7ZtWbbu?L ztvro|3lkSF;OX{Q3Z5UDZaiVB&v`T#W44`xu_T3qqVgVV!}CwizdYZDV++q79zPFO zU$;q&=0bg0q5hsKr!b#TyQXL^RL@IvO@aF(W&f#uds6Ux>~U~OLTR|9pD|)H4|9^4 zsRU&T+E-7aztmqZ@!1r%^fajYG?V*PY5isZf0z+Ke0kfk>RrmNeED(eG2>VVJsY-$ zp1m4&Ru*1X=Phl;E08Y3F)UBplQ3o%dfV(3fodoe{ZT&gV>IjXKfxyT3oWwIQ*3J(suNIWQX30F~xJcDg1 z!eX&N=Dg_1o}hb(NPdDs-gC$>zdRR%PNHj=$it!{v}JrVZ{Z#N8<*@Mje z3$3b1>_4{s#4n2jhCasND|7bc?RFc9Uoy$4>N=9ixLysvuVhp#mcua}o@hKmpsc z5>qS|aX+|jPc#N=Kef%o;3SEY8TM7y%jP|AzA)I>9eZMK4tOhv`(;?>6qC2%MX=kp zj!zC1Wij;S#2jk3W7MHjZOrnPrDxB%{v5w5EyoAouS(l{UOddnz|0ABpy*)nGDZFS zQfLP1X35@+lYm!$EI2VdT`VZ4oS)$x_u5XCE9CP4-pYeNotBv_o%yX{X2DOLMTojJZd14zy<({&MVs5=DAMr58?{VST zLgB@z)Ogds_1LA*cIF0rTwpgHyQ#j>*gXfH?Vc3cu(hIn=+T&7iqu^7Bye=bN+rqn zoQulaLhUjaR$gUK`Iy=+WqVG{#}f2=0CN6TfRVnWZVprdrKw37jzfPwoZK^Rmi6z{ zolISL$syp8Io+F1OK`$8@R>$NF;&S~o>V*f)jG=LB$@K6@M#&bP^?0zJrH z+J7E2c3*@McxzE~Ce`XrP z=-Ileuq>C6_$i_7qnk+f0=cdmE>AIRnY_)0+aiW(U~0>VV={kx$i8h?HTB>{cJ_2&7hcHb#ige0x91mahpcHMSvy71ZyiQ*#?2IT zGS?Ld?pxM+f+Z*_kLUmo?Zh=U1x9u!m>#Z%X zZg2Xhjg;)|x^vK>o1K+;ih6au!KKiFWaI@wZ%}yryFd!BTfO>T+bMW5>0}AVW*qdC zI4~J${kiahf`J1R5_)UDT6qpEMjo_2Zeeo`25^$GDX4!j3g-zCEpr>FeU=H`=fd;p z%dBvYjdP{yA$9z5z&?K|+O|ELa8-|G!vDsg<8H2f=3uJ6Uafiw%v@+p@n{Zo+)UA> z(3M4_X2#04hfB)-VuSWi5#o}EOZ}ShICT|c{_NppdPLfAmb&XJc!BZzK{A{_eWMsV zuSSPBz6bBP*M?pVC^5VM&s$0McHKO@Vb{Y{kike9l?NA25L4%vbQxWj)8|g`+eEU6 zM8A6Q>U)F4v${;tQ+RtKrgXMo$CrQug3U2Ocn0jV4f0 z6p?t_sLL{csn%I`Tf$#P*3Md&{kL%1tQtOvlNY$RygJ)@c#v4qe+N9>Qsvlr7b_{pGDU}M{wjAhp^(Hn69=O+t}T{Rek2>r|bsFQ#ZfA7q` z&r`Quatkc=%`$~1Altf1Zu@dP8H}k=w%^7&>2kGNM#}3t(%1xN$>HGTgyGvt%PvE; z-$&x@gHzl}aUO1qu>4nf5y@U&cdty#$Vk~FZuw?1iP4KQ*UPI&I_?drm+$emuO&3P zvS!~Fvw6Y04sY5Mt(GTBjbEKdJPhg*YD(10@G@6@p(}&uBTdey;BDn^!jr#7$U4;a z62=7V3B@AM&k`RmMhs#vjeUNJXsRzDTVh7uqDs;V_J&=G#YuPy@YSFpHL)VG6g+h` zGnd~OU4o|T&^TX}_DGQm0($jqa+z*Sb1)VZr{LYJo0`n$+RpP0%&2d6P#-dECkBwg zJC_>#p01vpD%0G)LFgM@Ex82hXItmS*|7kZIzAV-k@-@1~RT{*W>aVgWBQ}dw63NiN1VXs68InCK{`cPHeyJm}j)kQ%JXs_aGTH zA*mnp3)3FdKB+N1w|~#x^OAy>mv!Mk##jf(j`zw z(1GF&np9_cP`z)fKSKwFH<^RBv!;;h%eey})yCXFlWO0Cr>n`y12^T{bKvQtfo&|v zUE&{}KBe?z5k6XvDp9HjTp9C(6At`7wV{uXGN%yPfDg%pnH^r=0 zYphmltXFI7w%bTWQJ^eJl;i|D$axEiQHJljRP|vn!P{03=LyP_m!$0O{jxZjX!c;B zW#Q#=iDg-y-OV0f(04qdZCiRGiLy}o{!0pc*Y{wXBVb!sXz7FP`{NG#;|_IO50|XN z*2F#et_m-~4VJPKWi+tGZUqht_v?Z z(xq3=CXi)Mn`xH|;HmXhr01?yxGHm8l{t=W7m1%#V!aNB19rO|cDvnRSyJHzw<~^m zU|2%d&%Rf6jop5S-F}B-b%@0NXixL3%2i)K5cd&(yXx3>cog)~pyA2MPhxOi>o<>@ zropjkP%aT^Rj#qf7FdDx# z`J{pQ+_~xDLdzg2#U9yIoVz1TB@MrD6-nF6(gX z!Lh6G@OYy8heM3pN$_n0G?v@0ja$GKvPhcrn7^m&$@9_JMWrT!I{)!_96V7)^7GgP zZE;n{HqsT#>D)4**wrnXK+mp=NGzvbOwGL*$@xP^V=FI))Dt;yGExs?=R8dDOX1=S zGejZ&Z!Wy6R1H4fBr^uDd}I-$3Z6}l2|ria=lW@?jPgm9y96madGO-h zRP8zAe(pF(o#%T#cHTk?Yr_U!~6jjJ;uZY;qqn1b4Uwy|DqG;+Mjc zbXJ6$gN%%4YVdmUd*xE_>VpCzV~$-k@K4zdBNcJ>ZjoKp%+}$J|1j9 z=(4QQZGC5~kF^gj(VgvgsZ2;DE@SY3R6eG$ zvFbtNwvN$D;@0D0s-NQn0}aaX z6D!=A^g=4`nEU%1+~41zs*l+25s8s5*MvZq4k6T5$CA&=j9OU(s6ee=0Pg=5#@*meDPD`XiwHQ2oE zlKp;VbWp zUX}5Qwp8*FKQEv7rjMeg&$xH>iLSCdQd{*e9IU$%d6q}wzF=E5U5i6?z@ZvGHnu+i zbyK2l%KkedVT8<@SQk!>?Qu7A)JCFU0o-}0J^4RBj zL1R}6maN)4==j!_NzdR{=Z`&g;{Aywal%IGCmhB;d*47IHWBc>^&d?IB7(}(}|km9S$?Gs~Y64uUbuA)-#`guFD zYGdtAZINA~t0%+b>NeNUFU8!Yb|AI^D8ZS;44xsqplPz3ZngrVPf^Xql!JO5@5zsmiPy8koS>27$I$yj@{tdnT>_O) z$r~7Bb~IT3YjS)^l8na;esE;<`Wa7P;=iQ6r<1)4BXt8SBX!(Es;v5p=j)gB)6z-E zZ98ZVIH_U(Q{TSC&i|s}C1#%fx~+fZr07!UBj>5d&bMKk`?k@$kX#D2^KJT2Vg04_B=CU9UQ(C+%^&}X!7Tmq<{IDfEq@~Z{T1Kve*?nA{>JNX z#^b;IU-@P6_mYyFEYIT7CWF6q#80r;Bgh^4Z}%8lT58M}wDe7PV|U%DjMpXrG{NyR zWLVR8Op1AB(^L(LeY{@%K;s-A~5fU-6Y+6@TYc*ItsT95UIPOE7hila9>2LcCA8Pqr=>d9 ztE&2&%M`2C>2atkd}g8z-+4vjpe;AvLg1H_z5T`;@i)JKkL9_0 z_ip^nb@l0v6jH%fCzwX`Wjp8#*AU7!iR~_y(|9fb{QS@Vd_4Y+cf2FYrZ)7D>K8lC z@~9sy77Mp8Su3+=BmI@9oSZ?ufgq#=p$_EqI32SDSnBVN3Dz)1Uq{5O}`y(o6Ap6~6NX9luULA~EiKPwR2--o5zy z!Gi~`t#-RzY>&4$yhyFJji2&;_0?D7Z`K#2gN^I9ZSnToZ^!d&Lmi7LjM;!?EAxEN z*Q~F`OoNUouPyfHmtTH4{`SW2dBo`9`KGn4_BEt@gU3F{93GEXS664YQFuJ7w#85V z)KA6ZpZLTlV!01~cdZ{4U{%#3TU8?r&ooh1zN=LGYkFFk+X|dBNNzNR>A`=tQJ_pmZDPgzf2%5gT}5 z9?VzARwZvH{ly5ivC5zF+mwHKP+lItU#yt&y~i0JaC|f6pSQ)7z2_u^w}HkYizSZ> zwf7}FJv*q3W3h9yxkmQMPyXy#?(m2I_#cVCzwVp9JpO*`jnfjGZT)nzoc`d!gSdLJ zrtO1Z$m9w>vE(H+3Bo9Nrqp@>9am(M#gmrip7SyqDMT(t2W>h7+!T z_~ZX;{QVQ3_-P;{U;pR-%l|bV=PfW@%C>=KGPmJ{Sq2`6sg75kV*^SZo;#kmMN-=z zPm%ra-@iZFmV*0*k&#TCKzPvLbm<`G1X{NM492g_^D})tjLB*+-L=KBZ|azBd5i6E zIGpi-_yCvZ{@I3aj3Lp#3#WfgH}1Q-u16;bi0*CT0!Qud`I71m$A{G)^my*99NFKh zuZ;(8cTe(r{6YPg3Z$NH2Da^XyNzvdA8}h=yLw#Zv~$eU+lGVGwU|)KHWruB_%j9_ zD=X5SdGdr4w;f0L>sG1p;;pNjn;W-(j)`s7rPG#Q@*JtYV0iJCV~?UJifBLXcP`7{ zV|)9-gZSH^eCNoi@NCdDO{_m>>&@fg!FaNq_uqOe{{F-#J^=)Nx@`miIo}9lq)2W3 zoMk;>)k5Jc%3Sm!IH&pcwRaSzHb zMV@U_NR?H8(LSHT+(3^D$H^spFDW|*Y7Zv$%{eympjXVw)5ty)`il*%vmK`X$#f~k z?47cC>bM8xH$|T>JdTY#Ea*{bCU^7~Wf=*))e{m4BZilZ@OvQ?oMt47B#}x`Qg~8{ z3nLXcZQ#!7yi}PcL31!S=#4pVb;0tbCqG7xYk(_95)u!dJeN$k9#YAp%6X}*W6&Vk zI>F^h1eq~AsNVXwA?17OpQ&kJ{!oHcH{P{4Vuf?StFedk)l2WBSdJgL!DYdt79H^T&Up)0fo!>2LWH zsKavVzxieVYCQh;Kk?&K>I6%26uUj$X-^qMo)67ot2)aiJ+(yT4 zVKsQdrPryGCAdeA9>w3h4a7^SAOG+FcKrSPi!ZvyPYob1NTwXZEBhp2a;IeV9P&w& zy#y&6cs56(%@hw0%GcwE3we$~+k2AGz?kwg509(gC2ggkGNf#!dXC{q@bGl={2wEH zJvnYumd|;Vy@c3FeK6i=D=fcx-3WXyt zaQ-wG0)J0G51wsONb$UchvF~);E(8`;kS(pmbgsfk{e_BMp`Cb*-0(a%mCj|Yl)BE z9Q?R#An^2@%ImPy)#zBjXlE{4-WC=lG?O<{czR*P5tZKP$u0?cnLR^L{iu|C$mxwL-_YL^s^$)ZTvSLH1w4vw|qeRpwCa=X28 zUs&fMoB8J5Bocc{nrPf6*_fy}$W0(qz3Uy*n*4rSZ zo7!qIB6ErdgL!zQn8TByvObCa&;hK2Tj_CN{i$~G7e5*~^a&lH|?e@r3OU*3vps;mdE zK1O(4Y9~g@W~XOKrjg>|$(xcj#lu5Nwv?}V_Vi>+!K;4>Qf+y*NZG;Taj9G$4^IYs z9_8@rzZ@nyNLux+N~xrA>DkJA?hFBqi!A{EG|bY*xvQuXKB=n{E7eaGP0*m!8WDS15} zDWv4nwvf;-g%saQWb=^fJBHaM)t1NOQd>R=9v+zQl)XI}Qt)_PQa`2J6g)ptq_&F7Hj?Lp<5g7!rUDO-3@c~dqR!zJzAOO#LP z=K01PyQyA^IXoE3&$E*!D@NKM|-;K`Lj%08FK;OQ_0^^Z&KmeTQ(VB+ye*~5d!-{W~(Tq29YlMN$%rTu}C_EWq) zq}rQ{R9h)KU*boX@JN+?5;jWlzC;cWD%&M8;lj4yv^NIN-^SqCB88OPm&libC-+>w zZ2y?NT%wpFrKmv#OF4kYN9!6spFBKlomGl4cygq`d{ax^V@T`GKcb8zn3GVJraQ8t23`uZ@jcag+;1Dzk?he68aEB0F{yFD8 zIrqNzUmt6p)kD?ORn^tqyZ7Exy)&sO^ZThNpKNiN#z81@+EP6HFWEi3twD@Bvmg-r z=-)Cvu76}9`7qfykbsNJ)8GaIaWI20U|lp_9ql0ha(-sQ6i6Ucm_o-6V)nN&ChWgD z_5$-v@vz%?!<7%B}A<57Y;1^{6^dhk6aV2MWu7UTe;@TkB(-+*d7a&WU0Fos74 zKG6n_U=4!_fQC;4Hnj&h@u{g(2SFfyEfBuEv#gnumAtdHi?Wro=f4hFCddF!7#o=q z$iSxt%TWWJuqL7c_<_#|9>N6B2pGVqwg4{y4Onp&Fd(1?$Giao38=s;H9#J$!Kwy& zU=-$5mFNkwSqw051<$F&JcGO&X@lriv6((P$R^3oGk*uS>Axq{?`7< z2CrZa2+j=hPoICodzFO^f)mUH;mJFDSvf;o+?tt+p7Y{gw)6lL@@3!hzN+rCKl#@*aU$T$p4SwfBg!`fnnqh5T=5Qo%4UW6iDa- zoQViXMzld7!S^7HKZHL65k#B^J`xdXh+D(-!5~aUD_?ULGk42>V-|e74+3dE1L6JA z{JkpvM?H270;zuky>K*hw(&HxvGQPdbg=*lQPu(|#AM(yR)C3^lyc((Y*wW~xJrLW zf5rGG1T~@oz>1g}tbqeW5L1C8b%07(&##5RFfkqS?O)y%L8QPWF&^-O>e0FIP^*T5MB(t`tG{2}}?u3P5gq;&wtadhtdHklahnYrvN8XGH^Kp5DjZi zY=H_=a$fcz5J=h-gsE)yf2Ks=V+{o2%?Dxp(fnBe`epBcM^XaPH9DBS;D37l>(2mp z0N^Ae2P^gh>SSbKC3Clm(>6Q#cqPI)XY3RV9x&6Ml)tf z1A%y+{_^yX>Q9c1-=qTV6ola9bYPBxTzDu2##;s9{mc8W92h@AVCuF1<>BA4nDA%< zFDWUd?2AAkp(PN3nma7fnh-O0h?a|*qnYm?eyG|0nzznn}GDkVHudK28Lh zD9NFBb|8@AG6+xI)6CM{%o(C-XX9+={D*8RD-Bckf$%h}?3_IyW{!^kHEdG=6}ECR zK)C;<{u7Gn04!EspZ}x%*YqP9ObcjIQGmIP00U<0zgOKK+h)EUFr6R>=YQ$`&7@h`6$r$24i@eu%$9!vR@9VWtWh8g*2t0pWz_Uwe`jElnhsnm30zZCfwvO? z5*ivXDF+}%LyfFX01Mh4L<~^T-~a(M&yhpl!35?Y%D)5z|9uIwX!{A9)#whqRz zf?broxyS`_em0^op_6x=ZdJf|a}IG=<$hl36OpAr7=tDiN)6d*}Q1vVN3tm!Dh z36(%N9Vv2OBnb3M14IH$(%}GIbSU8aWnh?&8Z0aeoX}At`@?p(7z=DPf2mpNF~IFv zfCxPU@~tKaBr5SwHz+*{m_Heaq9+IYv;!6NWZ-&uUU7)p@2UlIlc|-NW~BZq5RcFPU>%RoYw*H3C0*61V$Li z5aWKp1}G1lFp`3YS%4Qzlwffvz`=w^s`eQKqPO{vH#w>Q+;RMEpxT=Xc*8_UG!G*X z7J**;$F}Z2QC6Rt0trkw#H1v!?&~1*zqJ3;8IDBa4(MdU2N$#hb4=u7?Fk@|oI5NB zFqWp3qm>2Zuk`-2C*epD;9;l4`u|n`vvJ@^6@CId%rszt4$x<&1}_l-0nFr3D%gsY z^#P&&<@leV;K=N-K{Vg2KxiJWj%FUVuwxkF1A!A~^#*|m3_vfm?3}FJ|Li9?aY@*M zdYOI9atW5kL?Vof= z9s2{EY}8-|2|$~T3T&?@R$pY_#BWy$^8gVQ}nlFo0oz zhv69v2rwYRfCK|F49{UefdLf;G#FmMfDQu&445!r!GH||4h*<3;K6_o0|5+#Fc85& z3143scX!9WcI4Ggp}(7{0849Cv!{1y(BTJwXE5Q-+{7UUWpj`U29 zl8}&gV+P_!pI#`NsFaoN>hmMws`Vh!2IQ#?nf&cFkLq&u5~y5XJ>IAddwct9$7K5| zV0MK&J80+> zld__VbC`}i@i{_BAbkfVt&s`+ESrOVl0xyc3{OI0A;Nm+IuX2Zde3`4VQh7e-jquM z1^PVU&E%p>OPBphyNMu~LcV7C&syz$*M_|A0+S&UGgcARN>Dl>jWdX!8BcPtUzFx# ztmV~|PXo6_gVuOT9~7R*#$c;Am~iL#FdDb*&+ zb#ro-Kc+JKJ6=@1k2-sCvr?){;1s2(>*ueeAcv}T(}55>!ZJ2OGdA*KOev1rqnO*H zjvEJJjY3NFC`)d$ZEUk`XS1ziv#nv%=W3lI$X%bE?rtOFZkgt>klM+_NB~XrSonW^ zn#|(pzj=L&f3Mq~nz2N965VY5!>QPA`>M;0^6N3L$KQ^qmG(U_rj zbUR1DEp6smBD06wDDNF_!R;F>yjc30Jsfin^c3PPwabX_o6nIH$u{EszB;;BYnEHa zo+8Qy7V-J)ui7^8(&$3H4>#stWQwGvR|p+{Iyirwel#{TO9s96yvjHl z8=Do`KRw8CYI^Hm?RTj%X2k)1>CU(4a9y@MS2LtPIPz&~2 za${F~Y*dAlQ#Pf%`|9(XS@2a`U(w+>Asl5-HgK|aGOcFIw>dDWT?PA=hN=Ywxv4J8YqN=Z zvnz9iam`FC6IyH8>P*IXN6v~~>DlLeecUNZAe>hPe$Jk#iyBTyj-y*6wXt7)X;4?F z*<9Hr_r46P%}yo8+F;sT=+V*4@JKcHX>uEsiyW2N>iUOLC+aicXWB186RSFmdF;5% z)9SF=eb@1}-cw<{#fuA%Iq#)bVsQ)Q%9q&t;-qT9(W=DD55xI+Gw9I+$A#D@?2O7_mQ~S>>uns`l)yb97TbA8p%D<-r_m zSuZm#K;8>ai2udeW%T|)jRJ%)T`ZMIog;*(rOozpUXM|HhMr)0q}l9nsK>q`uwv(} z%#62!;;9IfL6%uVZTDV=#-lAXsvFr(=l9IdYNRSPy`y-^^yRk~v~h-3Nxm_HksL&yA;9q4PBRCL4yNea?ewRiwIFMzAQvX(pji#xp=nVMS-{V=wN6gY`>?uidE$T>l z;yAg^mE=4jS6#)U1gv*zEcW=K#PQ zMjBigvZQ|Tw)nVjj-E?K7|-RyhPMy_Lbg(-Z!I}p?DG&+`79jWQo|0X13S8bHddwl zt_Dfl^Byv9r~FYPz65U6Ny|kOM~dGONi`)@=u0K}_HHKi1Df6rf^VZ4(Mh9A3?~Zg zGTd%?>HJ2>mZ5|zv|be%953fzNQUd9IkeiM4}LIL{zOHU!KT^Y`B>A_1B%zJLJrIvR2Y@*Sca-JSCGAN;=P<9s`*}3KB z%g9)8f9q=}QEiAGft9Y;R4Zdj*Fd#Z(~pA6kGN_L&xN&TDx@M&Mq;#ObY7Vw-9^}J zM^iUrw6UyG^gdP$K&4Dk1; z52&ZHJ@I%HM^n*HB9L*~3=(VWb)@*Jj+s6U_70A&w4#xjg?Pzinex|T|Atu8xhI$@ z+vFD*I##bLB{seCt=Q`LbcYDh<&Ur|cXDE0{6I!z2nfI>mGT2Fqqx2ar&HjD)$}g*O-WiB`k|awWa@X{ z5&OabDze{@eL9^UKGf{X$sBJ69UBKBtczltJxs#6Y~A*-Ww;Wa$@6^|Fk}kB)oaRC?kp zo41woKC^%R;bjfHHAe69H(*Xn)dkX)Hnr=I_MKSl1wC)${Ce&jgH(q3)J?gp zZ{}PI*`)O^7TQMTT`qVo3tgqZsL##rtGS?*LZ)anBRpKCq=ZIwEIbM6Xb;fSoXWi48s8Yu5uB&}GkT%Lk1XiaM^ zE!0uh+50MgL*5>e3$U>4Mc!V#EiP)T0DC43m`4@mhoS0n7|A)I%9xFoZzarDRAzM* z=LHU;G%p*iU73V&>c9ZLG-H=Oot@tJ1G8w6bGMZswWc zsBsa@pA~(mTuGMtlr#7ySM?>7D?P_|x?dr2jH}7uN z{ZU%MX{+rhiH1hJ3fN<^AWnMKP6kvwhY3#hqJq@{HjntX6xBzQswij(!e;I49>B>8rs-x{x{OR9jJn$IPd& zc;D8r`11{a523J7Zi39RJsPIfsIRp}vBd0Js#M}yQeMUD38wj$mA`mxa(qVf&TWhF z%v#%0wi9}d_mt{N7#HVsWZ@Jn9GE8oCUPo6ekG?t@$6Dz$lAlrNj5mvCH?-U=40e; z}6BNs@tV&B$xD2 zX`1aw&nhQrYosB^T(~GZM)OlHxjS7K@lp7sc1{QHGh4xc&~guE z95>0Z2F;_~j=S;}2qFAP9_j4c;cAr)!d~LuF0gj3ylcZK^!1?OZLRp+j~0uXMLug` zQW6#4L)vUFtF&fbo%7-6Uc{6#+Z%K_C4c~x2H8Vn4lhkPeMgaU{vl=my+4Oxc~oU! z28$8dfM-+DVs6dPSm;!8nCxfci_uIGs~HMteu0I9BJovb%K7)%`VX2PAoI_wK{JyI zzF4l242l%e;|})3I`jAf>~U$1^B3!68Z6N3xFam+`G3#6(U;`O ze*Wt6O*2w2fWp>GqRp&yy6O9I1iaI7VfQY7Kh4r)3vdz~`p zljYne?g4!kf{~#{?Z}vcof^*gzM!EQ-ouR6V7gO}v>CKWyV|4$;U3MvK5?cAtw0qw z9TZP63Hbm(Ls$hEQ<$;e3U|RXiS_t5(rdb*Y&rRv(N!d|BoB#MZP?DTY3oFjYy0+; zMh=}7d`JeEzd75@Tu-i9LklP@ob4`t1wRhRJP{P7o=>KpO{V@*cf7#!zex7K(DuKW zU1pnvu4cEp6Vxn^vYc!rU!4!#`E2p|ZauW0!oy_QeoEc9UMdeP*geVD_csla)7hFJ7D?R+3U4a02}^KEi%y@Tyf)at!6Vm*q-SYYU=ozs=x3JJ#0|{S5Z2z9#uYW* zm_^CWJ55K)Ejs;<^4es>12^#f*B$12sgQBaYk8E{`Wq#T_gW$2y4T>4c}D-duLMl~ zwO<|Z8dcO&8TU1$t8{0qBKGv+*q_h;e zl$LMutcB3^`MO58RnRcp5}Yom`k4_z3$g19&FjXX1JFFYGw1~NWDVzx=>Ou>vzsl* z1>}ry2wFyLA#+7qSLrqmYJ&?1$__FPS_yg!x&j}=`{TI2UWe=c5F}!IKvjqV-`Sg# z*b!8#Fi0auZl!SZGl&7C3eI^yFf9kog%d`-6$(1x3K0prK!<%QXp)h^L0#cZ^St~E?vw62k#&rqI5;Typ6HaI+Y|~1g}={c zDxmBaH5=L;9m2}x+6sR{^hdl#TF+H-dqS0dLcB*h6(~oeTIoxkBruaSMr#RXk$q3z zoXzqxfq6d2n@xA-KS^3fZh7v?z3vcH1Mdvy5AVwI25J9)l4K-s>wNt4P|h+3Ed0U; z@sw3}^Tf3m`e5Ac5w!E=E#4{dx@R{@5FeZiTqn}C=(>~GYf4l?5E?k}nGeCKMPOlc zI^u7k?h`mD=sw|Yb+hh-A!w5EQRwP{Y?Bh{f$8cuP4)%G@f~hEU-*@()(ys$a!Axo z)?MhjjnPtfC$ej;f8mmM?V${vPp;yZR-;Sf$a^m$=nacyZeQ#L<2^C15k?EqDR1{Y zTr;TiU5XdzI4L>Zn+nRei)6Xx5zT6F*+}J!d>96|20la(roIz38{v~Vb2_~>AMq}p z=j%PlJp4`eQ+tMi^0d%D;kxtt{T$Kroy1hm^hbq|))t5!#kRX*;&AU-UUYvs^TG&% z@@caKG?)4jy^p<7A0L6XO_(Q-phR^297LK;hYxdLnKTJ*HsBgwzx^HBZEZ zWx2ZaF5wWl;tXznEDf{Lj8=Xz7H@W`eZDm&FHov4HA=tllfRAW30C)bo*iC0a4!4~ zs)~JW`A#+OtLF1jh6b@j`@#?@HfnoL^+u^#tj6HdBB@!N#^}=NaQpbettk}wNI4d| zJ%}A19uKyCV&Uu*vAh9GRl%T3E-%V-e?Tci4~=SlZ_Fz0tM81y*>`H1j!gb=ecG6NK=hS?D1kE zVICaQfo{9}TkNL`NN``~HoUG=?PTO8xTKs!?VCdgZLcmYrA*3Sl3YfcU|!J#`Gc#MCGMUD>aXiQ z3)C(RR9>G)*m)t|#dK;2hQ_(sJzl-TzXz3Whl!!C$(#^e!OvR1+eZvaK?AcrV5vO_ zi4EHZl^h}2^Me}hjX&bOMvT0FX1k^OPUVScqP#IJSbd84X}pZH`5tvYWbFy6$n86> z6lg`?)pypAVeN9%yztC!#YL>@iLLa-2{$7Vn_VwO_+%jCsVw+OWql3x9%=nG*PeyU z+XGee7AXET2chOK)4b{}7coIztOp@AG@H^HgSt6BL_?dKyAkigr1hr|{Bb`*+n@HX zeF`h*CDBccwTUyeImp*Pi+G-(E|y$9$7EfL-nf?oX|tV_mwgMfozEK>u5FYg;Gf>m zacLHQeGlcrs7QG16>gWg<@+_jI|WVa*QN;=6LvmM2qQ$7mtGA$P>g|KUHLc^Mz!|q z(indgc_iM`IDS4Om+Gb}{$hDPVyf(TSm0r{tUdcDBV<@tEMzmeW|KS>x(U?$AaCAG z&0LtpOoTsAKgC4!f}-5rkRC3YV_2L%Ayh8(E}T_%3Z}!^`ULYbpGS`du$o3xXA6=r#B- ztH^i`(*JH+1?^MtPb>_8_T3UFOpX(tyQXCQyk_66Ij%`<5R>Bqmr{8gyT={WjD;3< z6d@$e80qOUT6q^~$4Qr{PlmvM7x~;}fV%rm{)BafxACKk{e}plyC$l4!LqVKyH*aK zf(WUx#$82b%?6BjRRi=9q4^`2C9NHn>25z#!;5Ht3-EWpFsO#&%WFV?BiaoKX_m(w znEz~7(v=jx^`OnHGFr(DzL?4$vNTXz1KICBTtE|Y6fos}dv-6^2UXyym z{1D@M@(YR2CZbA7#1o}T_lq$?PQy{Y^Z3Hl5c-3y1d`T@RvrxnYy`q$j%8D_RNExJ zGy4bY?sb|E# zDT}SbtPkvjwM!+=F=g*@Z{Q>!Ymz^^v+H-%KpJ4+-0D@2IejATaNB`au{}A4{({KH z!3l_IdOVGRDs?4EJ8!g`dN)Hq94tx6C?4P}xopW8ELDardb?WGH%aF%1(NVJ*&3=p zGq3PcNp_3%atIl>a>I^R>!B&KLep=W(Jqu%GI7%hQ;rkg5b8Q!%6 z>@qS2(J}aX?{194h)~Xq`vjdjq^ss%b)z~?jESxCOAfyYRc{!72)Qc*7|Ww7U8YG+GE%^hxnb0b?%~9Gt=V~2A1bc zjW5Y-$-QRsM&cAUzVI{TWO1weHEc9w4$+jWhdbQNJ1Bo@!_bAZVViiQS$07@w>7 zH2|s=$P(t3ckbL7#XRZ0k5eWWURd%gt8V)seU(W3)EBv;JGsP{0p((KK&5Z6Wo_eo z=V{<75)KB%`qvT842`;zGJd(Sv6KyJ$-5i!>a|hotEufrjNzuWewwvSB_W}x73hZL zPYEq%52X8d^KQ60M>T?Kv-{=tp1O^G)F-sjhp0Up$p~9D z7na^eF^AqxyIGz$%G0%G5H3{9cT z8gZRUg^{b28a1o58o6EyU5~2uJFr)vO(Z3@C6`MDwZ0|hZzGC2Goz$iGaaISYkqq@ z{+xAgo8~FXD6q2$^Tu@h9JNt!b8UF*prL5si8i&!ciZJ6W;mB&Ze$i%x(E8Qma3-U~Z=7X^As@b}5EFtc~oLWkXoeZE{v;|HTG| z^38NJNz$F%W_f;F%dO7p_f_W9wcvD9`R$S#$FAH178;C?Q{SmfoDXhn({eC=`Sk@z zOZt5%tD+eEkTRuVZ}XXS<(qV!p%lmM5GD>O?Yh!UVyGf2)$yTpAgxt@BE7*1H1xEe zbb9s?(`(xq?ci0Z^V&CWs^)2f-|;j1x~5VuYv%jzZ-1QT`i!iF2~OVeyNT^BQ3mr! zl~ZFB&?r*s6Fk;Sx<@eiMljL#gjkBuriMQKh_B?M-N@7L$!rAK-9TB9 zto)Iem)8!6Pk>Ti!gucb;U^9x^P0*(t6uWMVUzu3(9+>@_PLRjRn|3bda*qE)$fyr zHlzVse01y_3J-M+0uRkPp6xtKeI+azoL?GsQ%V`;qEq%lDh9|oT<~y*FIS!sNR+^`7 zY2!2Pzi3&l_Li!)aR2o}iLacR@8dmjaV}mf;?_J@fW@W(rY@%lQ7cN%tkOw@Q2?Qe zkzxc*uiQh;`ydYC4AQp?4EWFWVeF?R>_`2_}o~!5}f56KLH+#<#&qi(em8bvUj^Q%e1aUQKAYqo^;u> zLT)-cM~sTrh2t-v)Umu7Lv`wx5!rbU9lfDYrv)(2CL<7pWrS7cQBK9mu&vg4!oesI$=dzcYp7b4P+ za)c(Oe&u+Pk8&VcWzKPNrjshz_oZFmm8hlK-ysF;Q=CR(H)8dcUUft=$L`leyh&=~ zyp|Nk*K9N!WhOjH6*c`|M`$5*T!ir7f~lLo_32nru@1@UMA@3 zdHBI?pQYY2&O@GXd&p64QFA|~kQq-?FrC@UI!2{``>@c0i9?#C;L9-!neGFB?uf^} zxOI-EfP+bT{dR9~u-&D2D68j{%CM!k;eERkIo;d)cL6h#KF_N>*dFn#n!JcArU!OAJykZ)`_y}s>ci@Rn^G;K59V~TMS}I*mQE!!n4078N$&NIZ zC5`n(wZ7z^9B&XLyG+Mvkw!M+Q3|3?g*vIIeAeD`f##;h_AWE$iAlec6A4(aFcBxf ziUEC7^u*;1bQw{Uy^hYKax%tmo~;%~0o`#%tDzIZvN@C0IELeqh%k z-WW@xzKcDSlAW`0(?2GD`FSFwz{)6KynucESS(wO7xHmm?A11NzE|M`v%kTsO(@g{ zg@}Kfxh)Jm26O54_e1d7Ydr-x`3_rD&Iu6j%`+QnN}{o%*cNm4{Q-2yW^|<+;_XXy zuN(LSDTbBTp^1ulLh(%vGDN0NW4pXj1;aMY7P`BdMJ z0##^pe<7Vd8lYsV*_y1(q5h|NZ@@Q#2VLxU8a&%G81hzg6 z+;MHw0+*sAit%0_YO~XA@K{!TcZL;Tx<dT=o1a;4K z4v&1Y<%~vfLdor>nmR zG-|$1e~;(3$6h3F2=9)x<+4Q`%!bvz;l`$=+lEE-5dK3@iti~uEC%|k6Yi|%qgCAn z8sD3X$O_*%;fbDvG$EwS!}rBl2)H>`zpI44kl@3SlM?2bSMXZ}M{4$9IbL4j9$1nM zJfB!N+&~MTeB!N&lr>+s-3Zp0$6) z0b#$IUQdUJHK1|d@wj+}xmaosFAJYHgp=C@xJ@2%unRt(=G?SCjF`R?^f+IGWQnb@ z`t)2O4~)`TX-I}o=Haqs(}^fugYB9M=d zJYPTr8sV=Gnm%RwB?><`2q`}58>ma|kjxH{)BE|rO0vR`^TZC+n?om_dr`2Eg^7x9 z3{$VajXzR4nLlaHAY5P~=Rq&MKmzOR)J^Ihc3SwEjK)~R$>npnP3hak){F2dp*LQYOBVX9iId-j{dR64aIvZP=NT1HyoLwbL;wfo*pV7}=WCU=v^5lZxz zmiG?2=kbn4gN+qF16D@T&gPv~LbpFJ9#+6YS6o~6hsza7hPFG-KNa^+qkv?ag&gs7=9_KznD8B$tn-pG1 zLyJ3tf25{0VGN2EcSLVm6?eSf#4GM#p8M{TZ0DkJ#Fu`VGUyv+S0lOUS==Fx;PPo( z9G?i+RFQStHAwai7r71mOl#^yNov|RQu{%PdkIQZIM;oCv`s>#TcOHhGJ0i!Por(n z2^M&p4_5p?5rd2FgI`R{|A;r0@IGjzmV@R`a$XjwaBKs5vy>SdZbt(Ev~I6 zuv*+*gXFdRY4LrTT7zq*X}=arpzSDsAKdo5P-xYsx6U59{i-_{@YNy%qcmWnVypA< zl5ce9N1*I;$2tnxZ!e|iQKW@JSr*SiB1f=)Ju7S8*?B%Pj>EHR#q+wV*arD42?!l} zao|9~(o3`n!9kj_=teeW*g5$LfAPpQ@rYldXV%RmB$p)~W$_t)Vcu>tgxo8tNlIwZ zW4G5s2^x}YpnFMTIq71w}(=flQ$C(p8-_doPtw9HVBh#{S2Roa! zmQ)Cb{`t@2lbSp766ILA3Jk>ZE?WX<*T9A0(GN1~vnWR~Xry%4IMPLl{sj`Lmju?g z`e+r_v|)_a{iZ|f_|AKB-0|uUKW05CdoD!$`Oc+|5F0ZO#=|p4Ut52GPoUtg?qXjx z&0H(GZ;J-R_wEQETC$wNcxYU;;WuBd(XR=8?CQ&JK6`gsbuM-%`t11~zh&hY=z(gT zGS54B0o|C`=|+FhbdZ4{?5FW|e}T{Tm#Oy;ACd8pcGIBZ7rsGY9QUa4dePx?sl6z3 zQuvGPcrpq~i5s?Cv_{?Y^UvSZ?q+X0t@oG4hT~o*iT(<|{jpy$y03e7-m0}?p~EM{ z6~CrnnxBV8oMSoT`Y4QRSp4NO0Xm-0Z=^zAI>loaW|qh)<`rUih7@SAS}#K7ecV(A zM6s0An6B{zEN8MR?#MJ{H(il;MzJTk)bSh_L2M|gzCaE(!BKBSD5r4kDZ*P3UHyN* zxa?h)&Sc_>ZS_Jw?%~ZMSMi6pB%_LWX*4zJ`H+=~M0FE<>g1kVO4@0B42|*)j{4|7 z!o8oIm$#uUd9G5y^@{22tM@>_LIr#pqDLi`ckS!b_+fudWRn!ACg^&Xj0_Wm3qnyh zv0UlI5Fo%CYvrdb{>tmmZ1f@jpoRVQU}0KR=wWf7{)>KLo>fSNt}zw)ocZc!R?-2G z3&rM^$8J6X=gU#fEl6_uBeYNzA1wnD4O zt4J}clDP&tPP7m;q%K}}24SV(oB;#Q0^5AjU#|vQ^FeqkEd5}ec5@Y@5rSU?U&PfE zwlkdBC^chlEIRXp(hUyv#92RO9#dC^n5A2jcwl{OWkgwHxN5|ogyP6oe){nuCnF+G9gT5xzuu&cUByXrt3COPy|-v;)}jAY1X6Y&k=KD7S!RAHJ) zJ3nJEP4;Tsz#GuUpvht{JpGe)ipRKE&&`WrQvF z&GLj*xOp>C&W`6hj3-VI_kj^whrb#y*N92JHoqO$-;|B!?TUed_M9ebJhgnv>nBk1 zF&Fl_-dNj~JSD2TUI|XGS>T3=e7i8^{7E!2fZ_o;u=4&W)=t~;A)IjsX*8^g>E-7y zX%)_|Z6MwhpKL!b69X^7eZIwI3qtqvMWnfB5u- zDk+XJ-tBm2W0r*k?R0Fq;(G6y<93-M)Y##awP zyiYOGkA1r?1T;{q#7nB_*Z5b-80nV@AH7|F(iA_aOt^Y=SuCC)1hDW0jyJsiwEeoy z3Tl~nhE)9YuCZ&l1Yg-(I&h>l9aUa)B+@#0K(%FODj81Ch?H4fBK*Zc@Rzg_J?uVnWIpXR`F5s7&T%ZEBmu0nei)(xvrKBMgXm8Dbr(m;%2ZiNHM!N=t+-1Dw3*uyF6Fj z1Ul$Soi=CbL(4=IWyVYf;%+{LED!jI=joRL2K~v!H_%km+1oqt+|BtBhwMYO|J}-r z`M@$i@{c-@8u163yuu=<=>e>B$NotFJ;N2rt(Zq+ZTDY`-5-l?Zi)W zc+tZLHm_F(>}a5T*wi$E18&3*M!&%kENGPQMpN+=;xU`o@0@o_{xmh7X8F`W-Gl$U_S+rNq5jl$ zK-|Prx97x(P@r4Ms43VRVsKB~{JDqM_Z94&hBciZ_l;WiBizFYpZimtfUfJ{CQOX(_<_s=8EI8`Xm3 z-8d9Kt)7h_nzJ{>X)q-rpf8c+V~ICIHYAKLyG5u~O_`T2FYJv(f|CSD5;+f;P-0MK zK*)q>FftV;-pj!~bk*Ojt^jB~_t2;Dr_+%!*k9B4@83n-4DrUPrI`X$)alEHrm$=B z85OU`vW0T1N)ZN=wlDQuD*aOO-$z3Fp*nP$A_>kR5lY+x&LOCunG*LSnP?utGwuqp zNxSQXd~|-PSKcFXE_=Z$(nM$4s7Fe^O@+8g!^26TcutBMgAhS-`9fTTY>k}Xq;SH? zJthWi$DJJvM(%qE3Mzf}>))|8@Gi;~Z0cTn&Y_ixD-H!WzTI#BFd)x{ufeWp5A|gJ zo*Y>;9Ys^dqphD2388zN+E2Zb?qhi5Xm#JrNuyFMLb^s>&1h8iMNQil?MlM4N^O*N zRyo18(vT5PYw5gEaj8eCDvp7RQyR-C+NI}2rXy5NR;hLBr-g!qeqn_Ro4ch6#JY21 z#As*aLV(*wkefk(dv;9e9nH6=b&`?xy%FJ!k>wvFM*AZ@+38zjBStpG%jxQ*M5$l? zDn{QXZTj*5{x~gYTP`>gP6Z3m6EKd}9_ziOpQBQ?$m0vw(EeUsS`}aI6Xg}{o|mtS zf5~!i(q8wNF2>)o^o6mw24b2#L|t+oG~TJMyKka>CNdxEv6<1xb>=6CpczB)%g zMyg_& zzDijl!dE=fK-=o|w`-1=|aEeL1)LuK3_>o`zn?t{I z5k?P#xiybj&6|Ca4>-~f>pK;%0~#AUJWz^B%injfX9S&Tv)uCa<_}g4)o&$OOOsAU zLaRsAB4tk}k?~kewsU*5Q}1r0W_FGlsXHZ*2t_H_llG8MT~_3C*9>l&@kOg|tz_|K zr#N4e!RDe-5a;_jqEFNh-8MzePvy|At4LVr|UB4wDR=1T#r65TW&R*62H zqBp%XNgCy8+c7b-kU7a@jI(zncR8SPlW9Su*cT_CDb&^ULV2&LpsCp7a^t2B!D4v% zuR`>m7FGT5jHV_C>xZ<$ac1&@3Z^=?l#E%OgFPi_Kl6H?gb{%}z5QdkrmHLHM0;7d z_fX#{evocbRJv4>jxc@j5J41qGXFPn^}LJqw6cqjX?7}mUpA(`Xw=Kv5gd`R@(f3* zM5V0cTg651`M0{p4oMr2))~evgEAU16wn2aFKRmt=F+O-eqSWMmZf;BBKK$%aL7b+ z)4yji&N!G`5+|}j`{WaFc*A%D{q?)Hq+&DoW1L6^s%$Ts^vk_%Ih(@^OP5Nz@47z* z*j22#26N1jN|@%-C&_MjBdUGqCuj;zwqC+}V<___4Iq?76$53AIvtKYCAA{oGri`E zG!mTDnuXI9`Yk!76lFPsExW5@en@2E({<)Fg<96Z-v<>wn_rsNNtJuI2PFuuDqx?5 z&x{wOg_WVZ9Kjog!OGB!uxnQ@3I8fX*SWY-`=<PvxSoT}wdH z-brHYEmz2%n?Y64_d$uSRI}V-t_1d)s+8>jc_?#86;nv$IT~?mff0K3#22|j=6;=2 z7WK(#e9!HJMec}EC}$mb>O1M+MG1AfR9$M)VBPkyCE{?pSd|w2^7rRg(+f*jO9~lt zJ)g}xerIPBS_in$E|MK|H!!69X6Wgt20;|_1E#U{%n;LUC8?9gc<5-zq_y}a;Y``K z31Xy4rg?@7KM2w+u+SJ<>9RPEmBOi4ZTq-K8Ts)nJG5oHLnm58>eKadgY`t^WONyD z>=w8^`96y#MD%Oaq7w$zc&JYdHjG65W^_|x^jG+il_s;Yf3hIQBED+nhW$`PCIK)w ze>=b-b6=5C!OtIT=vWZl$6;ENlO%0am7e|4Zk)9i#CzIKDm z0QGMPDM$ffPokv@eexl`Z}tVhtX7@yBo;|8Q{iU;8XAOx?boTPvkA#}b0(8+>-<+G zqa~5(2l1Xyjz?J|WVyWBUmDVTSTfd$kr)4z4UGthyQ!+TnR&cPGE*t0yY^ow1O_p@u0E&R2p9hiPSCpe@{w`N*I^w+%h0XWhJ|9cz z)+`u3q|-V%o$IjNnO!OGR=Z*kYW3f06=FbzxIVKdL@fB8TRPO9r{_3Nh5AV_^^y}o zbAl`6G|_)_Bss_br-Ho(f>9Wcm>UjZm_lX>NmVXT+|1247yLw{&ZJ|#!&$L0)(e@L zE=$$JTcU<6%D!FA*2}Isky*}EDeRZ*F76$f@rLNrOIOomDM0A_XzG|bbxO>kUu#ei zRUx>s`>`DJpE$6Nk1>-{Wh90-`!rs8;c`UuFY;~O6~qme45!j=yjkL|z%jH~sbJ$~ zuN@Vu#11J(7+y~~Z2ZMuA8AK`$+x`JQRQPdMV@Y3U~cDbRoG1Np>|H$HR`B*4zrXF zO=1<<@=pPKtd+S{?k6HBWH`zFfrMf1wbD)vkt0d3&=qQmHz#4kqx2^;#wg3e^3lfc>23 zs_5?m_UU6a4g`pxU1C{}06#VLO5Ln2eCYG3RH0V*sW%!>wxwJ1hN0H|uc=d<94qOV z=z<(dsG?h6dHUW8toVH2ZBd%Z@jped{<84$tW-6{ja*t&RNr#s#ZG*oHCf^escBq* z-HXaRWVY;xkIlV`bHSOJsq?(mb`H+M9i879=)+1QiyZb-LUh?`Y8>qKJ6pz>F?cx2 z9LiH68|95G(52EsH+dgz52me@uz8;O9lfnOcS8?FW5ocErSj8^WKU&_w2E&rqZ``) zA6<796i2%@;2I}ELU4!R!QI^n?k*p}-CY_8uE81H-Q6Jp26uOYd(hypC*NAD_Fubd zSM|YkAN0Y@!Q0byJ@;#pc0#C^vRLz;Be+kFF(sCS$*{wdwTTfg#LY%Cbg{b5`L(?m zY*sP#v)nt%w%oyz_WN!EMAA=Dv)d4)GCI(v-n2h*GREM=VNIPZFxu!DD(%?;3NiGA zdLL|B;zVqssL<;y*p^PE!R(-Jcy7GL5ieWa@^hjP-)TDI(sS>)glPOPe)voZ~xaNFqTj%SzMqnjc}A>aWGp9DE!LEgdW);o%S>|$i_T5Gw~~IVQuBCM zh(HB|uhZjv)aKLlK$CHlPoTqkHEuJ4);GEYTDj0`=yZWl;q2m($Un?Tj z4R%ehzQi8E=Yj%jC;2tUr?dsH_m~C-t1C0DyN$_{Ratt1UFl2$^A%92jjDzcS=&c5 z(quR7?Zr*ElCgx8#X2?a8)U;Md<==WC%Y}yL~fgr{j2&n zvd7qUv`LSjX-s&4{1nQLL|P?}$`*P|;nPI1hGSH`$O^v1O3jGF5P1LkH7TrF7rCe@ z>$5fy2O#c{1E;Jxqmm#!VSWj{j-rAPL$89HhI}3|#B@IECeqQ=PEH`cdZO*(IM$S5 zT`#draqz3)Tpkb8kNJ3ORu)!VzVT*?dLh-5d}M7O@S-?y3G)28{1sknqZM1b?QrNa zlhp(qy_aC!-+;qzvlCE#Ys#CY|v4llR$ zgvWaGMhe8`tbSHC!Iz}t`eGSAwe_{IbwkDt4a+*oMm+b*?tdC>zpS7ve0a*`{lQUvZOgX`>EfLd1htA z5n2Idhv6ViS07@o5OwSRv2Xs{P|a?xW6jSW!@`m&L|6{k5rWy9fml>uyH^s+@CL5A zx>^%7%9C}?a_ehlJ?N9MHFoIG2(?sr%gWoGWzB|ws^|>$TLsNq78iPr$&Zh)6_5N7 z+Fm|-&!gG&P0Qd%MfI+R)@6A`n_k{qXNTvWyDy=0H$0A*8U*FOog8B!a5>F& zE;kEcW*zfnd7EZ67+O4;ro%tV=`*3f>2w{N1N;oajB+(}R{fFmGtn#s8#nn{Z7G=6 z47ut`*0Ao~17F43WaP#k!483k)moKPT(LLj`E09^3%2Dsc?_;tsb*zDJgC9j8|ou4vw3TEV1zo1zT8m zYVI^}2qjmHVd>e)`I~Ew7hi=Qky+-sn=|=Y zW*B{xRyar6EwaXp-pz0kDV20T4 zQ@Ayxd!#L{-m?IHC=VC}s1B$OXdfsK=x(G|LWrOi4Df-zgZ`6W^%O4zbPm7Uv=tX14E>67kGxeA(8Fp+w7Y~T zU$K%;{0FU=_>XV^8Z__*2a$f~K*6DKKpYfl!N|LrGyRJ8cZA1Zd#Us@9C;V1$%WtN z`ayRxJ1g`cI5KYW_1*>$LUF^`!}$Is@S_2GQ2Z(fn!Q?3EztIeYd@L_&Ub|-K1lC7 z^;gok*Uj7kpcgQ2-dg9|{l76k0sMxEBrD0mi={ zO^bCl*B|+wcIb^%XX>(KLgUi(0R<~%O+Uv028`N)&?H6PXq3!M? zM^;jo&3DhyHvCJt&`g?W9#2e~>!onNU1)hyE4t<4H}lAWkYo0xUnDUAH2flrJ=_}H zJ;s)KZ|XEKqu6^^&h_+R_cxqh&9P5%6_CQ`-C+Q`C}gK zixB+o(YVMxev)xKe(wLzoFy*6dmj`Fq$R{Ed12h=Pg8YX~Q1a+rC!@n`mI$ z?gvrd>*Xn70z4+ED-2OEss}&pxP8!N{wwW#1aPxNqHNc;Cro&Q!yA;M{!5TZ+7fG2y39@3!nx zu?Mc9%XxeV7Nz|F|CaTDPr7{eb^p$br4#D5Er8aVOif=>-U;`qQ;2G72D?at)-19m znilAGF21Mt?G`IKMA9t#EM!KMM<*6WJL0+LC<)4yS5Nvff*z?_MfBzHvsmI6x$je0 zVrpelsCfmnJ}4@);e08jA5~@}(naUw^Q|M&CFg7*=$$jQbSFGrdhSwUoW>OfoL`O% zC#15K2qy$WQX*^oK1D8BriO$0AMp-g&Wp^k<)>iI%giC=D^itzQPHHUz@n#7f=cA?0deV-+IC@)rJ`W->VE?8a+eOofZnr2RP881&!%%DFC zQ&#y8Lw%t_aC^j}c&DM*m+jm5{L8A46z&L)GjkLyaPh|m050C3)K869N(j6u1Plx#~D|y zi31|iIyA?NVlF_hPhnRa22k4y zgZGyh5~jN_nG3pV?NxgBT-dAh{+V&hfql~^M#z) z?I=tSIZqAJBWIuy?md4rJ#r6nF?m)yCEK!)g-jeTd7rz7FdXw((&#HtY zf4zR$5;l>q0s`Bcdtg9w61xr}Dw%n*KEvLdp0-&{4(yx1WW`?i3s4`RRs^Hk>#V5m zF_R5n(M%Ki&yl~efBAC#CQ2=y`TE|*Px_xYdEJu=@CIJbf(PXp@cxxdZK_vTCt`%7 zsCLU}tnWApU`MM_d+igj&bmUsZaq$l0}YM~9>41&D=S-d@+(tg+9q+xa%R1|KTeWs z9W*M@9}x`X+haSYE&cYyC(1kE$6F$-rs3g86k>miRI1#0oV>Q9>U*rQwxjuMjod*X zW-TI!NkSgGp7YZm5JK!|Uh2bp2B7KPS>1^$99e~OG&-PnNM;)70fiXI{zI6trHV9RlBh5HE5x=_j1 zE1;67l2h1}N=TAb$n;xO@=zFx7mwV8lP@mhF^r2&>QiYy09%^peD177R5^~2j3|eU zRn%0Qr#yVFctR4TSdfp5Sl?k?yYMb8kk)}=Q?Towf4qMgIPDhWo{P3+Bzcwz&?kBG zv=^c+H2Vi;yz0*Oh=TAewrt)NJlB^PCO<`OAC{32Y^hNg?Rv-Oqby`s%lnwHk@%E)X?s9xohVGd>Gnex0M8V}a-A**`X_Yyy}#cwN;Ghp^qOpN+=uxmnFa&4Xj9 zz&)T#(yv6Ab z3a=3!uq&!Gh3YIx9OrNVmTV5-E?tIs&7H((4JX81g@OMOz^IJH&vW@aaFaV>DNjuql;(f85*4)Vz3ysm)och-pyvHg==e8pgX z1o1`oYgL?X(6#97`h%IhJuW_lo#J_C2rxJc#$jJ-OB`&$(;I)tYPq`CG$D)>v1Okq zi^ws_Bs9Hri9xp6#wEa&k1=9ddcfZBBFtes+~BW*>o~;AxFp%sJ06r05a!|a?~e8C zWAgmTFLlM0%E(KY(Bw7TGRKrV1W!aYg)ZgWEC#2#m392k;` zs+)$XVCf-b5f|;|@BXo5sX`bt`wL!?dqPCWKQ#WwvuU*dmcNOMOpF890%~aYB;oni zn0^mMcl9mCm?fSuLgO)0i|_?YbG?%omw!;*KcBmMd7OCs^PN=Zu!Vzl z@cR!P-~R>h5t@HC1ganao)s_`{wv^{(`eGZx|+XL2M#G#+a$c75g3pM9h{NVS!Uz4 zC1yyEnx@N(v4O}EbwOh(!}_4H#9=HD+&E)OH$mNq1To|1280S`*;v-NX4&HRBLZM1 z-i1u_rQ2_-7kk?;~~oBFM1-0;?mPAFfBmq zi|%5aTs=59$&JWzS@=~*eay7OgY$GdnuGCdZT#%k=2Ls4?$9L7FKD`+kiJ%BFSJdC zWJ})hVRcH08Fs)+QRk#-?DPZ0{WIKO0Plv2H1>MI^cTQyEeB5d3qfI`5&sXsAN{`o zp2>b=_@`0P_zU`|`^I>m(asppzW{#jKBQEA|HD0O&DQ72Wh0l|;&qML^J=TRxkek# zvyF6j(xyL{_Su3TA8FH{xY>cpP>ku^WtB*q!0A}OS$n+RP~)$CX;OvMB&;jFmhAZ# zs46=QQx^Dj>7HYUnFPN%+Q0v1FDx;Z?Mzcw6Gv`?Ftvj>+#fE@qk#ndyU9sSJg{4gK|d*!fqg$j1w z1wfD)jwBrh}hr%>4IaJrnDY9yW)3J*9nzkdaMF~RbvWWBTm^ZxOte+B$g^#2j? z-ys6NcL{Nhw~9+K)au~OqQrr5t$9GsMZe@H zRgQpuo=>pGnlM{}2irS>Ee!J?S_Y#*NNx2C^bx&otG0Q2mIi1ocWxWC*&%Z*=T1`6 z3Z3F_glFeuY!L%}!MIWeNgNXENepq`pLNjZgQq3Bk}6Za$jwRX+6_i5jB#04VWW?S z5;P2+q8d%=S8=nr6f9$QLuUimQs&v{V6*O9YV&Loa7gzpm$}r>*1DFBi80OVv5T|s z?cYFBcpi5PHfi|m{NvRZobq;Ev7pQJ3%Ad2Fzk~^0Q8=b>3;DAuBiUNnCU&;M=kaS zX5U*f9w!Q_*d)(m02|KtczSoKPpIzG!t&MIRX^J#E!BD|>-E}&nKqyh3FVZXE%MJ zmSnb1N83V6xCz%5QNEAni|>JXkAd5ZdSNQ(K^K{r=RiZV^8-*v#l=Mq+y230UF+}t zDK#syQqoF<9wKDVOiYjtzVK?|tO#c&+g3ntPWlT9|7 znfBWbt=Q1zBmPp9YA8;QB%>*K{r>Ir~L;3u|mT1A7XnM0YLinXi!k$U-3R*VNfmjySmoEPm1o`Sp4Q7b|J z1Lb7dQ<^}D^Fk+|#kk!2_p?L+C_2a41}Vemb@yJY0%EuKuur80br`w_xz4@WYA?E# zh6|^3NOZDuF`!A^s6&#j@bhQ#_9{tR%_N5MA;~!ij0X-iK5WDU4SzVKWBe6J<_s-b z>@re>KJ-PQF}?A7-=DAT1@^jQ_e1a8kkw3G&Cq$l4VOHjs#TBAfdGqf;?HL&g5HWA zdDsYVY5e4jXu841m=QbtWFPrdfxZ+c34;u|Biqh2R91(>`>k3*skc)?^rt3r7?Hzq`F*#CkgObxlEn(&hU#_ z@E1o6QQl;9hh4009&T#DHq_+gG{NXkHRF1Fq%OlcJ11x=m;c2FNMyPL^FH+?D@VY+zfE5iED5!w6^ z7F8uN&Y2n}VOswVmf8|p{&4^tQWiv|{b)Ix#abIrPHQbBm7%Q~&7If< zTt53#hq7fM$k#w7GwnYKi{FlvG!Phvzcdm*4%6Q3XyPr~65CZ}SY4vb+M z>`)KpyMr7ea;-hObL6K3k!&$6wi48m{6_J`f{ zrAb=5?Pd8H+$(l7UahuC)F5&F7rf1q2z$*|!i86!zFIbh~avrn_D}3MiX#r$hGTVr)m{^;< z_Jx?C!!WExvi1jVLEGmrG?WM$1d7BWi`G2Pp4N1Wy+G>N{x#mEuegoTw7C}yHukIV z8>R0qwt6p2^#+Db)H4}k|5@HltV(qIOe12_5XMd^^=kAblCg1&Y9=_Qp|NO-D+c#Z0`xm&Y zvdLaD3!^6$--pqexgZg4b%`6RU4odT);d4gmR68*Z8WqY-h#I%OQx{=ptUU(Rj+g6 zfcLMACxH0#juRn>jK6$Ja}vJIy;daY$=Sb=xH5y5?^^`+{17S=59L?C#hWqveB<-! zsRjFJbJZ&eycram54`4Lp4w~jq5B2>#FgmvAYDz~aM&>6WNnlauq2u~LW8TEFr#2z z@f*D9Od=dKjF-qhC~Q!TZD9Xb#%JSxYfp9S9-}A0!xuGDYSy|;o;3Vd#^=q@LSQ_@ z^Bu5vDE91Zf4U`#v-u;2o+b1id#yDAasEDetu+$S;Id*!fuYfM&^NfdN6+-YFjqe- z%O}D)>TIpbm-po(jx#^#x%@Xeg2&rCb`rDwJ%QKH>?9^?J8`T#PMVlNCce@quONIS zGOtMd$$$KJCRuiL%5NChvkPu`%?0AN4?sX2gvOh92JFI{cZTmuns-tz@V;WO8y2k8 zu9!|LgOvv z9|5j&a}r zrSUc?W?_6rd%ynD_>W)IJ85vdc-w-Rry(>x=r4``a>eIev{H@%S*&35D(0YnvF^bh ziyT_J{Zo6*`JgXw_&HGF!?q<}(P5O>^u%qmoE}{tVuKs)&wJlHm%MZpCat4+0%J2olT3UEH&}s3G>s zb=jlx_5IGL@@bUOK904&_%pe9$*Z98N*^)}o{88U>Y_Y=k?n(}?+-jtzNu&+rP`r8 zp3`9R&=R~XZI;yEF6(y7<1Bs;f(+RPVFMK>%HKgg4u>**uq>CX2$ z1P387*DTxzU{9ZuPjT^zOdi%6wA80{ag}^ne#-ptWQg2JoPS4jxlV? zUc}5nKTqf(KN-J}NbnWm4Zd~F?jCAb?w_8MjxWcnKStx8DE+R&A8(Fr%x)_@AAHNt z600w3LQ?ed0rj#oH4kry4kc`i}o-Qci)I)35iLUCq76T5n!r#BC+!h3`5_URa% zDdIsq1c-0{h4GUuJ_UFx^L`W*l&x|x*3KKj zLgO>iO|w^oz3bL<7IG4tYp9=oI+OcjEEh<zLEA;6hyaY6Pb(*Zxz$i+# zMR7a-D;uU15Vvw6t_Z<J=e3pLRK`_eDLP zt<(FOT05}5AD2uumB?5Un*;`}nHdWvYvtyVvRzv+Jd1;MfdHr@#C#*d(hC5~A`e@F ztd<>^FtxOJ4T8XUB=*g(5Ewr^W>kNlm=>?$>`JKd9~d9_7sl`PEpXtiJI>A5=CHSS zpy_a|+s!`R)m3_NGK2GH>ZFwj`(}QrcOu{>ttV~>!!i4`mm?tI41GF%`>8zD$Ii0) z%8PdpIGKKii2nm&5|HqjSS&aO?OyD4mCdJXUlU)wgc7!ORNdbbM=ER@R{@a0YPQGK zfeWLwubrb~cLRQV2IieKhgkxzB<%k5mOLGsY-64a(VDx6gf^aQ1@Q>{C-Pp6> ziEkogaXvzN3wHq_)6JSn>QFtKoF~Bl%5j7jFzrwM85H>pB(?a9Y*P4t!YPX>=%A`i z6#g3cHWV%VL-tJqzBn?-8LKl+=7fxYCbCD#481;%&WaSReq!_i?H^ z6nvPtjU{kNXt&l|e)3I9zGb};*W_EZf2$I=-Gq!vQyrIFos~#85q5YqFkUluL(wqaz1nTwjG3-cdr$e@5%UT_c<+XQ4pGLV)#VJBk3Ht zwq5TLGF=b(u%4K^{oHwuEOpd9weXT5zF@FBB}hWo%ziSBFMYVWEtzkd{ny1Oyg?7+ zn*bsh7$*K>P6#jcx8xx9H?e4c%3cv_o;8ZpJ)kW@Q&d_ZXvB4T=i;(fTVt zyg_9eoV@*&@z<#wA)mPczbvPIe9nNK(!;~($XIr|?Q`2BQ#cC`oK&66`2!cO>(`Rw zjq{9vk-M(ncTJgUC5l;mO<8tKcWUpH+a@I?hw}i4bN{39 z9^%})|Kr>r_o|}Q{_EV$$XX|Tz|cx$brDYp2v3mi`uTwzb%DU4MslpF(Q)Syq`RK9 z*g{*Z>MJ`w5i+zVf%{%1m8zXC`BZ*j=14MLJ^h&RizHv7;ON)*YWdD4^H}Gb2B0{f z2lU6$x5QcUmn>&!xtK{SV!0AlIjE?e6(h#&eNm9LL9_XnlXg#XOf{?@y;Gqt_UdJE zje|)xfhm!M z7xR4{_PvSd?ID(fT96B{G{$SYPsHW&A%iz;JhRVy!kGP_7W@DIu*)Ek<2nmPRao=U ziCM-viEJ|adN#v>qpNH|{LIGougLx8MR6 zi4`p-+n5SLl2E!7_Z2NQfCH=Z&kqk=x`9aNaYnJ*O3C=cVf37>-JGR6O9*zZQx9cS`XshZXE^3M}hOQOH?r4)`3sZyz0 zn~&#>&=DyV<093yg~`S^$uK5=6L?TADYh3FtUjNXHoW8EP1k8_$BeB#7m$34u=Q}SKJTZf@yV~`r_s7gqo_V<8`8beUoVGz zdhM>{=hnJgqNw3lSrFvax@(18lpSfmR=%TD@t8qh$odvTRmHt%dl6oN!%!zr;HHG* zMg!Qd+umU^1JW(eT_fB|IvXvlI12VE*~~_Zh2a!h)5%A&mn=dAd0z)cpE28xoj1Kf z?Z30hx9MH!eqCR}fc#sxs)=tNvXTLxA8O@B?q5|XiLYn92v3e$3n`$x4>{yKy0vLi>{ zZIudrI>`0>=o2z9>IMuV43&7iN!CmyyDuLez%T1n5%Yp)3U%5Y3$O~Pg7{f8^YPh# zOj}NqdT3MXOrO(g6D{T&^J&-rbT6n+5acjt2)BxUdlc6`txcNz6EP zIuYza=-9GosDLcmdq9y+kmHJ1-Fo8PS$>yzh`G$T{3%Q94Jx9?al(!%Oqfa64_0vO75qNav^~00}~m`U%f%kB5EYS4s=gq__#f zN~C@wGOx6chnQ845-7@WHujOO{S%6R`qLA;sA5m^O{o)4ncN)-Oo;K<sk4iZctRx6pdDzimFC)2)CX~6#R8AwomMc3n>~taZafF4d+(Ke37m zR55ik^D^R2#!Y19y;7ci7dK1Q;#=3n+vf+WmQWg#OJ*-zpx*7IQA;B!nb%FvVz}|4 z{bNOkd33X4ZMA`WSERa>u3GweGB=(d7}@)8g5A}v4Fh|@i_?L|3%3&a26gW8K3}bj z#Pp{j33i$lE~e1G3HAjVNP^vjZN?CiU_W!5{hMHKB>P{29U!llbZ`2(AC32M-a3+o zd$dTpPq2BF7BNeYCnMtaOZeV5Q&$bP_)tMLkAf2nkS7DSP1vtHp1%q9(N66+jKSca zC6r9zR&!O|e^47Sb`5Z-rj1s}IJ~yMb}&sdEh_AqlBLV9Mx7N1#b2Rv^rJtit20j6 z;CLO|+i5un06{wlJ4fg@+Ue$*e&Z2_ZQnA;Gy3i4ui>57S%OOkYEz>2zYBa`fQ$Mi zdqc?veb{{GLu*<7{mV^p6#>C;e&hm_PN89VxINZ4?ab5R!UO~InnaR=aM={96%z`c z5Or<~)53rHpAW9;`RbiFSLpc=hz?#GAJnIf4U!DzC4qx{?N{=S6x#u59Z{=XOH9vF ztq3gap??eP){p`_jmtpLn9Yr9HkMV28^Zp=Vb->tT`sx_H|g_9*$TCX zELsGW*5Veygot4?h1rBODg$#Kb8H@@SUm^Y4i5^YkNOnD3nhu}3pMs!)OBrx1 zuK6%v+8iymKicQIHdH!vbUoyYBQDJ#Nv3%expG_ei*q~%mHtGR&<1y&lj}z>J8`~L zz~>4A-cYmn>JP@VAD77oMFUeL+lShR8YK)+$5pS3D169+`p*|kZ#t9X6>PkbZJob3 zyC^Yuq9@7;cEMf~}RzJ9q!@Q3QB!CBDNjEp5{O?xEt z&-TEj_A1yHxKVjVRh@S7WBmWB5B_H_pH00B%>u;|cez-eBZk0-_olR=$)VUjkn35=3o*gWIaM6hM+aMCmQeeQ}nDZ#J2FqZ{V zf7VoB2v5qCT-^p#Pp)@E6Nn;QwB@DB5-C;#x>hr9q?FVgkhHLf%+~Eb+^UL{0EyHf zS^WSC@);_g&KF4`Gsz*f-m$XSpd%3f~I|0*sv zYeKEi%OIGjwz-<_d{_Q;_;{rV_?0|*Y)zPv%2?hs0;>>ZLwG`I(CR!MsYz$0O=P&N zF571IYhJ;PSF^2hZDme>Rey1=ovqVb(r)MTez~K#n&;l<{r1p(Gq(!Z+g}$LQAGt| zQ40*Z5`Ww6XUEvTI4i0$dz$Nvk7OHb>nF$|>thBoWm~Jg8GGaK*l{ROG@3q2)zxh8 z<^l_*fWKL3lG96_SMjnj>5B~AFIYL9om?^a0(SyJ`SVbBDPQdI8jTlC!)P3r=l!S_BDy%!m5(VMCzd2SW62YgK2hXnXSZ0n98ExlXr9OmWE`?|&Vx;eG zJ?E{ScI)1HIOlDnEW8@ePsMX<;jz2A`lqkEMtuuUPQ}Ujxb6J(m+3k%Tnfx%lyxdY zncmC_5p|TI?m-0dtCl{+n)> zMi_)wq&bUUJR+x58LV1CpKTeLcX1TxLT@jF=h+SD=kTgy3HqK`-z~yLHJK_>{Zz#X z|6tg>fTi=2M6ZttNw+tF|EAlglEcD$^lz&EEw`tBNcc<-^mCkOOq@`FL_5r`zGgi) za?y|ZBIFUPn&#C-F#1P*Q%!ePqBR`*=R5M z?s}x=as<(H?_1{;nIQo2?m}bqq`#7l4wB=pMh5R&S$DdB4EiO;`DDiV1jYFz#H}JL z?36>zU9=vg#nqL65jaGZ&sIGXG88mEj>xl`wU`@o9Zwe=^q5&oJjh~unnfMpC)7U_8yVCSu++Kb;%i-S+o}9XeiD91e ztODa&`2uy|RLf4q*%MB`vSQ}h8-%~Q9YWO$ifg9sWfjnD9_bW>XBMuv+_uf!>^*)DEA20`cX37zpmIQ z|0oq=-HVS>Asf)?L$_i$VsBaZy7zJh*g!8rS0k?Va`;nhQ9~TNUT+8XkzK$lv=Njq zIwa#R7r+k;z3jO?sP`Xcml|Yp5Kmz{p_V2aBXOabp$!o_VLboa zI+u6x!#%o#+C+SYx)AS$g4E98P@o~Tb4*7l$M06j4rDK^H*atkYQ2+C!ic|dWq|jd zgctNfF9eWu8&nT`=eH{l=-<#Ah|eE7H(_6)?x8MddUK!w=x6K;?%quh7lQMtcyY{n zCGjo#Z0w^$?_dA`^*YRP*Q0#n&1TwicR+U% zwiR!}wcZ)x`af4?N<1EyXe71{`T4Yf7QW^jGfFEd7ZpSE{4zyUh@SNfw}bz2Xt zC(Z?t=l@~tsJ$N0o3PIxS)hhs5FoOh6nX>ZIW6vA*N%Aqw@EMTymL3eE! znH3tF$wLlW@jX(v__m$WJKVVt&wdub4AuRv750Lvu@Tm>rF^^{@xez_xb!jG%yhcE zhIqK|A7Pk#zAcqrlk(r@XF zjo$t|XkvBovg1u{Fq+tk1a}4?Bn4Dpy ziQ(yTbHftj6s|}R*nSN!q_H&%CzORW`Kd8rN=&j$0|&h+t&|E@ z<6^c4d!}NnfFZ6O|39uBTHTvUd09hbPYYJV7O}h&!E&rg#H0q6@7O!ni5n`W2mSCc zBY=7hh2s(@*Tf#ayd4!dTv`o`eS(=PWQKwN4VC^(l}qaZqwyPx@0BSRvm1rumR^Kr z0~M6rWcDf0{1mQy8J@$1d#ds&z#PD~oZ!y{UoctVNheQgAtCdQ9?+}pKb?mW z-on8cnV3Et!$vp1e2d1pBa>pUm7YRFencnh-2yj1-giJ;dpBa^#gj;rFqH0%_>KQCl(GR%ssBgIqmNVdq|lt5?;A4_Jolk< z!QVvaH(+!h0F&Gcr2x$rti#G2=qkgoFL(u&w{Mvc*xr--7q%x2ud+QP%lpUdSfP$@ zwAVD4B;WQxH~nhKo$wD69o8QB?5`F5M=)>`_ud2M&2UQ?>Mfp@lx0N^!03Bv=mmbH z>AoVlRROSUWf4Q0f%!b*$;}CF-A+qtrU#ZGW zy6AgzN(&zVibOK^%~sBClUnIm!<~ws8)>az4~Db%udIJvyY_!vd(K#&buz$;R-^Gc zE?`}CMY``aPnW|Im*F#K94fA=*7EC7wL%{(xS_k}e117kr{x&equG|=1Jg7DXsoFz zBj342I)^@4D*{gC_6Iyj>&KkRd7kq&ZG%Pkb0@8XRrmAe?t;N{0p3gk5=0%sAuqnr z?sj!ytoLs)nx|h+DK&q6^(CorraeA7WgxOwfK=VLg~F;_XtUk_d|=b1p?9L)V8RJ~ zyl-3IW74fYv4W& zl|hx9lzsOX1MlFa0gE#GR4!g%E(Tg|=t$eBpm8oWp*jg8qjFNp&qpz;4*Dt|2ELd` zCZeJ9I#^DrUKDwMm*r|J_?KCv-%%9YRgT;v>xKPtdpdb@ebZEaxy5?`g8ie7{F}F# zSY}`iS@hLtwztMPb7Vn@cWI7N#M;m;xg>rmuO8@ee=Z%fV;PQ_{q|GbGtn2fU0j$q z44y)%Zn8v&kzFT{064h#xRW|%u`%gdP8Y1OISi|ao=nH)z*-NSubJW*! zYa8_3AEi>F+=pd*kX8ZIr>smBPC4b7q%M|U0&F`*{b}gwBz*CBZ(qSZ5l&*Id{~tK zG42AB;!mE3@QR&pEIXJuH-o~)U>0P>Xf$>cLWeTDGSqq?m%daCjuOo~$o~7Njh8PW zH&X+Ar|3A&1)^U{ui0Ab8YJtE0Li-l1IfDca#z>F6_dxQQ~fvVUcCiQ-U|M6JryNz zldxql98>Xc)_q&cX-qmkRL4JR-^5t1>fybf;pjGU%s_4!eAiOx=;cXt5wCaI^!Eb7 zXn@`22Gq8gHo>MwBr+jVymb$f={`S~fz$WmXIxM!}_RQ5R`FqZi` zw&r3O_FPa+t~N@s7XSCPV3EIVf7CZ1aU1s}oclDWq^p3kXB$#>7pCy;7V{ zsSGNVR>s`HZCM)^-#pkKc=^@AYqLD?vjY#`ij_5**y;uLZ$p&zFd z?Ts*N=GRzi(G#bu%cRRc+!WYE(=F0yuk*7c;K$V{?wqeZLGsC8WTRzD>?jr|59^UT@*yKL`9RXR+aEQcMS6^!ODDy4#f1? zCEb9nFVjAG?%hbHaq1X{O(i7P&StSf)iAE3IZPx9YB)G$*eOG z9|b5hiR18z)wYSHXs)urQd==nxQ?mQ2E@O)yvuh4rR3az&HDy@CoOtoFh7h zTGvrPTX@2^eHhsl{jW3JO>N_5~28w6wP*L0tZ&7D4}ZCvbou zL52rHbE@{SPn&jb^i|K$9xh(g_ct@9o}p6d*E9X@4eik98s`VI zzrH4yJ2hy~$1zw(-ey{vD<7W{SJGImExpKYz8#a$Pa>Jf=a6=IEkv zFRIQbJTz)2_&aXu+R$(^c+zUfHfaUnyMQSzV-etPUK%f`PuU@P^R*g@?T0AL#N4E1 zYvaf53Bz4!Rd*Px{CPVRzg|`YVl)$rb8zi>&~dDwFRn9xl?ED}oxdMxkXHlKF?VY4 zYk$G3|6Ih{WCZNU8Uk6Ns4BKU9I+14@Z(etae`dYF1D&nIPx%p3={Ip0NL^dt`0YmSqBQ1F_gU#VXLr-JvNgm8GWV6k(%xHc2-Hrvho?`!!yQ zr@G12@+&|*qkzJv`75ai1#C#BKluLAwHK4iO;MQK8p6sz)^vU(r5I^!AEvZ)n< z+oLifp;bB5^yu-!p?8YoaBX047krY<}$sjwg4=Zm6UVrM}6jX#2yC4T@J9O>=;bqbIg>*8FM5e zJd}t|HrE(aPJfk8qY~niV|_B?E!4yPmN6?e4HMe;er#h1Cco|TWvE13y z!_GLg)X4&S9)(>c`N)Vz@;P>dlZtAs0MVtjM>eK^)w=7Sdi(3<$$#tZ?4Wx4EU4Z- zx@BzYi`g)DPV!H^z3Vb2Ke6?PM3!M!oyq2VM35FO);8S#s<(qYyY@L@qKyl*} zU?8U7x%Q1W8}IP*U6<{wy4V>tw98|y?d1EQ8mr@|x*IY9uCSX?_$jy$vl^)09`Lu` zPR#L#{BON|2vl#+`M2JlVf%uAYaDlc4Lu(rX!M!a*Cvht6h;Rlu>3w&-4A?@e)sp> z{}EZ@j94U^_l|QY#D^#3O+y28jtlBMsxBwm&fP8bvTP^cGAf+UGc~OjEh+WkAl;w@AzU9L!HZ z8R{pq*hLzts9O~tp>r_*0XJoRhV{I+xfL`DIUBAusByi^IJ)@D5gZ=qliAJi|C?_Q z{7=5!ZRKNro%URC2AwC>{XL}>fy->Nis?v@Y)c=KcM>$l4+&XJuAZ;ZI|nAzGhaGy zhpo+apsr`sD|~oMF@qN+SF&R=M2PHzV&&(j=BvXnCz!|THzf7@gfaqg1Me8l9v=K-R7nua`-E!aVrjdOOp<_4cuU>+Nl=zdw(b zP`-$pG1U|Df2)z(|Acq3N6EMnq}pl2#`SSdf6~`biKb%ERaKnJpcrisK52JohimSJjeI0ypdnk z3rT~*?SGfMpyeOXvh{2OAa{7K(Ss2iVXjfU!E`^=&}ds7>rsq2bhFfA^)5d!bUXH4(kI4$l^;;yL_G6}_}8ch$rSF^jk$x2I&@F*^1d$`E%bMp zSGNBUbvt|hPAJhc5K*^}5$XgHb)*ZAB+1O3{(#^4Zk}bRzz-a6dS~Q+i8^+(2*Gi~ z{}6Tl!Qkpx5J@2b5p~~H5Ok+E7=XtIcS-R9qSX0=*6u#lh%`Nlj(VhcO*%2f2+4i* zqWx3-pn^KnnnZ=&U!^gg_jQ_fo>6 zfdzkG$&Mn+juk+z$hLz+4#Md?qYf`1n68+ZY1uC*^T4tLiQdr}`6_kKwj)l?#JWR4 z&cw1~UNwG|oO;DO=l2uGL24Xt)B}UGf^~<3)+4G8q3ZI-qmBt|2n0V|{MARiyzw@F z!M0BPeI-fEZ7gtY7=P6XW8wkR=?$|x2UhdrF1vLIQNRF$TUR}p&0a}sSaFfqmjUTd zzDq+U)pv4UI~2#vAAP9P-@GFuXB^}H=v345EneXwTjH!tKuhOr`&JE(3{v>SQlfBT zm~lG{E5t8M+00=krrgnE*cGNmtiCn%fW3a&|pyB_|{1>`>CWa10I-d9!aT8RVpXLei5`!XSVyl>YR(% zv`~MTG{9Bm@57%W;e0YLy6VShA2=8FzwP!PpmzIF3Se;S`Qx8< zdzIhccDo=;wD1$?CM5Ew>=#Vm;AI<6&sUV9S07))A5Zl+*YQY&iiFBp2EI|h{Ro({ zBJnK`l>={;~sG-JlF5wm_ zHPKz9rN@pfZI-EYt0<&D-Tvm7uCGUDRu{+$ zg234&5N-8g)UPFmD!^A&&`iChdMz=U3_MIZElOU;g$wh@9>ePk?H6R{m;25)S44Rr ze>g+$tH#IB0k)bi;ae}J*0c73l%8svDi#FRnZ!jNivO0|ebu9&etU>3=*?o?{iobc z2P(He<$}uXatv;@#JG!qynAeY_Yawxs3w?6J@lY+&F7Wy!!U9kt*frf%1NH3Of;6@ z$ps@6@z-d^_=s!=5iwbjMrx*Yrd>%`MSis%DOl_=T3-E%Y)3@XU{k+@|CZYY{RfRc zZ4KqtMnF@%n}f>j!~&Uy8G}sW&>fPp2R+dSVt>o+01YVJ-o5E*QPi?s!EAhsTy!V2 zy?Y+frvtw(TJkD>sqLbx8}#<0S;TAKhDXY<8Q;v77=9z{7r89Tka0|GEDB=xCtD=C zPugR9|CHOmgUaocpmMt^@%7R_<#xh+ov}P_d>Jv^x1WFDDMk5ik|V#jXr}(* z%;i4S9eu%w0N~lGRifPxQ1)Ja`7EZv<>G}mA0sL2PQP;K6m-x1il(#!+CiiS*!@*?eITp*Su1b zXX5BEYWcnAK>xxe0kmMh(Wyp0r2P5T zSkXEV`2g7#FtB0SfAJB~@`2Cd#bDC?`tc(53VQxpvi>DTF6{kVDquw5aAgI`qU&uD zeP#SAY+mx4x-<~z)~_ahQ7!imiF{PiQi{#GN>`MSq!30Id_l^!{sT4LRe%P&~v%z+;mTPgWCW=5d{NNHo>6>;erH;R$JA0G68?f?SA-cPkP$)R9+40Hwu@qy1jU!R32ckpfaA=hCi@NJT@KLuL9XD>*Oz6=_({*ZUR z{ZJ17VhftVe(YMEN5`{qzPcj0$OE*0wNVmEywLON-8IXIzX2m+;qm=5v}D%sUP@*w z^uqywJa#CM$S+}t#K7DGmN($~APYsVDq_U0a9?x{nMo?V@zwNxEckB0tYIxR17CZa z;R%{!g2N+jnwfC2pH*}p9AdQGV?`gtiWd8SOIqS*UxZ?XRX1$|zqVxFEXfLE-j<}K zBA*Bbj&8~3;4#Ws{NWsFdi;9X!*?X>_L#=U^RwFhJja$p?lb&=yKzY@R`cBnKH7=o zNyV*koL7iNG>2gc`GUoc-!N5uBBz6XFJASmS82M3?;E_k2LwWGGuI0p1V8;=uNy|& z`ua_)8k$(IspzKCX+lnJACBJJl{XfJJQ+1lHzHqzPX9;`H(o?Q^6XkN^~I3ABd@TH zOaJxhW(I%D?LeCktPft_-TV0OytysYvqc3MX{FFm66&z8pNR3pb{4AwOd(gAK2&H{ zQ^*?WO2mD2ObDb~b*JG{08c>eR@Nz>hU)gMtviiV@)Bl>P6BW9%TIpa-~#>G{`14u z`!n#ycriAb&gHP)>Upz2#(QUu3NI7Ko+}eqFgQJp$_3zZyv*x5tmz}g_2wl-e{q-< zl8jS^cb80$E6#Lm=oQO_oU;#$@G|9|!$_29g~T>Lz^9>sr0~_qY4Ef11rC1S24m;R zOot9I?Xp=lY&tfksx`E>Q6|b2?re$4#9;k=@L6q7&X4gBehpuv zko2e7Oak(?K>7B4`p_=9>4;JtA`hc0s}-cX+(c7-QY`|?lVP=LIt=;3&!VXTEE{t=5B&cxn^S)2) zi@P26|0GaoE#0{D`=7Ksnym|Np|`DVzyw_V&cng=QscUpq$5FtkY;w&iGI&i%vu&u zy4ZjB&CroyF{`w<|L(}7%XRckZ^u?I>*%}9+ne4VCf3r%W?F;Lf(PD0T;pb1i_iiI z*t}u8D=7TANYR)5+Bge`!PI4=c96>8OmZHBlUM$lu35 zF$+-{4Qrxb=2Yzr?0&?*$ADZl{ZdH`P<6gzK;4@f6kNcWLFD#KvN+VB4ay3Ipw zo*1rc+%Zt}bMR1v-nGmU0DYI0vfG<)OMaG9s?`fh=F;4tt#V~VXXg z0KpjX$q`%2z@RmPLwLb{t!9%6jqNhNIQmUA6Q`LwCEt_xU@$9diIeFU0A84GINySl zfSxeEc&{Z$g5thc27!7_h>mWJi7s8U84#%#T3A({?(=zO8*>u1VyRIbJ!MsqRAe;H z^JCFqiTO6dtr+gfEPLM~GgsB%&tg)}dym9&cr#nY^+PzTA{z9Y;fdvVab@BclhVNY zPpDTd*V8eZ$r#mv^%baBz{B;l%#iySA^99whnF;`7r%T@a-{dtspeWvJEg1QNG4}X zHB+pLn#PVYSJQ3bnZlTO^orE{Eb!91B>D_S(jToZIX$HI(VoSgJwKZa6oJ<$RN0dM zq?sj`pDV$oB`b;Yv2X%6>RhCh(TiW;%yr0&>QFG3vgkbX{#XnS5UVKCVl7b>aKsf2 zR&Hpt;ky6!yIZ43Ts7>AgCu$&scPchtH7+G+`5I0s2rJzS_2AsID>4+6WdzYdQm!* zrPObAmeWkRE`GNLPKp)j$(7~L4HQYI1~XYQTc@~k;-27TtMd-@<&zSi0DM0Zms?J2 zp@4~lrn?#HN$xHrKwd+Uaikc;7G}l-%l4$x9FJpb37)Hxsze|BI6Jw5vnCanma9Lt zzO02X^7{-?vN`uBv$u&hAkxYVujC-_lA#X4HTDaoST=7uwco6*(|jiG@$7gH=(XL|^-f8KQ4fQ~USJ9C8_hzNa^4n2dgG&2Vwc%k^_ zSdK6`{_9j@_)ClCE!5T`+;=3yJO>VcEO;Ng*wmfee>nUj|Rum}`v+dN|%HQHpHBz)1 zWN2_~7@y(+NuO9?_uXOYma3u`@&i#+xVHUOF;v7s<@^+|sDeE*I zh{`$EzjHEb^KQ^M6f&G5!@nM5AJlZK(E_Y}q;Q&duEA`|rn)n==1H;`oRZIRM<1O` z+@nVi(Dosh81d)N|_(4b;9E|rh9 z#c&gxnUSAnR)ERhCEpp-M4_FY1@~r3w29)F!2zY^Z33ZDrIMrqThNZa6l#hsv8&}g zqNCJzh4ubAkpG=;uKY^I~>EtruqJnu#(tw1%6)@3voWNyvZBA1*q zi6TSMjM`>w3Q(hH6y%VW!-FfjfWp@U@#%~4Fs|<5Y3UjwE4#hzoGzFPy}1OIdw0qM zwKL`%(jOP2M~8d+zdXpyM9I=;eQFVFvh89Gq_DYI9T~Ofg%m@)b910INUPPL+^057 z(?dBw8!#F5MVmFTDQfzd1{=Ygi5wi|iXel_S6x8^nB`#^`fWNX`8CYMc5*lFQL>*E!&Ig1WXg zHM{KNsxMt0?yZHLJFCF5@86-DaI0OO)Q)~FuV*emz!l4pk zo^w332CNG97^{?}KjqYpG;NV4O>;N|vUTBCb`)XyjYk|;PFSM8hFrYoX>(Ivq`Mg< zDHrdggj#hl^hYVY_r6HtYwe~`O$$4X@lcn0W)hx2p4t>3F#d!Uz1dFNSCWU zE!$&N$3SSzUy{gVS8jl5T~bkIZ(C-lVt4{hMU#{xaMT8-^?zDmubp4ud_ES*&Zm?P3YOJi&=&a$ zFJkO^6FymDQL_hnf35jIoHXk(Yg0RYn{Ucx#dg*~?735`mA~8TMvE%S?d{6R{pk^*(DBJ|_v%7o^_0ubD6|AxGHyPK6b%gm*;76e-q`GCX)&!l0BR@Okk~Bl z6>Uo7DlGJ=ClzV;d|aoREP{7B)yz=2v8E=vIwdJuEr&^!Ke)j$VKMGCp@_Q@IA4EZ zn)RtS%<{bH(51_9mjXT-H@B5{w6rj9=%t?0jW<|(Ke48(QPZH?$QjWQcNBRYO)ux4 zm62Q@n%9*#!c^GCe}xb?pi;2WoTaKn@%V}JMV_Yf5Mcv|>nMWv^x&UbYcf+s``yXO zs}V>d>_ewCPqq1NO<6N-)_}_%c)xvV&w`|(yvqn2&Z>N~=cCeBPA$+2u$ zi#^pN9_Cotp^Jno^=cc9P(GaDrA%_j+*wt`#*|$3B5DY^zZsYdSj!0v0fpE5lJBia zXX@ewnf;j>f1HQwH9c=kGmO1puaqhR{9M1JM&4dgHaBzD6<(cMF{K-FYzWOLDiQ-| zzoOlSqxjW){@f}Bw>39AsoTY#$-}ah`aPGT26ijV4D|_mGH?}*SGrRCkz0^+BtR!# zGp-RoP7m{H2@tGq7O#iP1_-Tjv{PSV9Gi@vPpNyB^r2a ze)}_@oi5l}3s<~Pb8~n90Fz%Ot-j`>ETS?U!}jUtafPhyZG~ds>obMb8@8`ziq0Ia zV%}@hud@p|iJ7)U9Do=1j3j8=1M|7ZuZr0iKJmBRNL?YV{w?{*AmHIeZHh+Z%9(PM z#AjcigVb!MS2&TzQ95=Z=T60&6Y|JbmEmi-cM7>P^cMfh%H2jFHEbRCbLu$qIpMHC ziZ$cdrT+Kt@?wI8@1Bw3Zd6WHkCvIIL<`somM;vx+#7yZ`9YkzyD=my=kOvY!Fl3F z1eeIT@nnywn%NinL%?}a95GM!;_nG%j^-*d+z_4LbJ~82Io=Xu(JwK9(Kjex8!|=ohK;i%o+i^w?UWMU zA4?VFBy8#4rNL>CXi{Uehj+u4sFqM?F}H93xZ1-|rF^7|E&^b9^RHAXeL{HhVTFv) zGV`w$ZM)xmG7gKZz+Vm9khpNu8z>1?_g}~Vm#c0 zJ6wfBd-N$7ToG3+_R$e;V<6vzOM3L>wr;PqZnFqFz4TsOhHdPj5gnjqZK7rEqGf&0 z3-kLRFLb57Zw!nQZAv!!&d{Og@8L*7TaKscb6A#}uD_V_!$%98KL$}{XyskU#lsa~ zW!iEMT#27n9_2?wQPMG%Z0^ndqGy3M(6}Yh#MW#S-BJi@L0>9!jOlI*&;9I#NzMUqylG5y6xL0@%C+#tuxSh)Ek8VxcE21ia20o;k&Y*DvK_;P-c zlej$facVedYMUFKbxh7Zt+k5sGy0vaxIB%ujxt;Laz)VzhHF5Mz1pmNxL0&eW@*s@ z&GDb`Cl2wp&&phE;%nfIpBzy(LD6!5SukC&WH8`=p?D6ttp)IM2tDLRuv$Fj^^YI{ zZPCf~q2Yr)@ZKLDz|SFk&>V#}b^W0~@PQ$NyBU{< zC-$6G@`}X_z8Kk48$^f3_)#zLsn1`wkrnoC$iJt2 zH{6-w%Yu`58=)h_rbMT_e+7g+ln=yzO}x9&=uiKa5AG09A66P!?f4!X-KcRDA=;rm zpe}vO2Zc7nzjAGAcYgiV_FwT2_!EKqeSBmAQGaj*2tRNSG|-L#&P~e~C7dLQGmwD? zefpO$@Ab{RG0w&Ws+dj<*}=A-TI6wz9 zfzV*ttgD>$VIuyzZ##LhzoJ^%k+BIU{)lLe89Ev1ID{u7Zr9QAMXARe3BzpPpPXK2 zP_ZtYp$oEl$4XSz})| zPbwf^*3^m~+1Kk=A!yo@v5zR(t-Wky7{#}bm@r=GuFK+GH5-2&v^c7?E!~}Gl7)WQ z;hxk%7JEUh!QULv`aaxBh?R6q_6nauj>S5p+)Hj*HEga}HVv>0srHjQ zG!3XyW9X05k`IwZQL%rUB#C2J=2eTMl#Zvc3U^5%|C3)Fh(yI6mG=>bK==!9R1vug zIY&&+GC~P~d>!$eg^C^KoP}yxxb@c}&SdMGBF-%90VO-Ix#;|5r#P3^+8@?bM#9xT zIh|CnKGmHOMPFHfY-%VOtcrg@Lps}GL?$BAbpq(A_kutb$Xj#{KB;LA_72-I-pnh2!~ zrSD%XQF$ZM)^>FS0=>eL$aRRaYr>L9g%ngJgO!A`?*ci2Ps>tm=|yfx*;-W7W~49Icb`@5Kk%MP5WmZRR_#D?c^vyZ(+-B-2zeN)`>kLDO3jmRGS>YA zfh*NyWQ%`vJAg;c{ek@}-sJDI&o%BJ)Yl-`LHV+#2e7ec%E^}pp0X{7@w^DFhyhhv zf|I7Kq`e#8h}eS>WM()pKAf`?kcaP(oh3rO3nAHQl=P2&@a8w44x7#$-Jwagw(v^_ z5puLgK5#&DbD*!1>Z6~^;swpOEX+r5a3QkGhi^b9khf;CSQE*)$@A?2=B3rhOL!9t z(ocFbIp|RHqo2Bx0ovUHq@U;}5i29Z6UyW^5rjH2IKz+$ifo9#b;!44Kk(X9`Cm_M zpAnz^lV*4oJ>iS43PBG0q)9RTKX%=9g7p$ldwe{S7y%1q%8!F2bD?*g@- z9eM`~5Wcb9uOlv@cLS47TlPv|ec~6hY<0l`lS*vWcM&n?M|>Fq{w};J1owghx}R~& zk~?!3rgdHj{*Gf~{S4n*_l_Y|NYf2Kgl}3T^2*G6Qf^}tbc}zcj-DvKV3{B)kuUTg3cIdwzw0A!N{t}&xzRBdWY#wvwFmw8z2p$NaTbzVf{ zh(4MAsD38y5$gH%yi~Gta)re5us$S5s0Ec26(7^i?S;+W2#>vVp%0{(l>Hx>b7v`l z@DJ@^LaQ@f3$9$Xq9BAaS@hy$$c!J70xMF*u?fP17%2G8?1n(+&fNZ^j+^`s`ToG% z0{9Le`N5IxPf=&r>W4|CX00$$=d7XV0d#4%647f5twEAMoK+l1#hd(`LnIgmodw)^ zq#pyrkcuBos{K!YK$j*ddwsX=GfI2|6g9SE$&4v}|b(?`6#tWZ)5-avWO-~5H|H%i@ZioU@S?!ZP;%*qtD zN5QbOs_8?}k;zrABN-GJQoC>v^quQ+5;5Z(_rec73oRk6TgQ&;+CMJ_UT$GTgv(h{ z*QzLi8?I7L(Xo=2c8bU`V$G@pzU3rEjqH&Wpzzzso4O z89Y23kFRlg-W&>ELtttGYQ9UNZ3)ReGoeJoX+S}UJu=NmgjR+?XB~85aZgF4)TctX zUXAIkbVI0a>o&TPIFwqI!dCi|5eGo36FNd>6fst8UBNfG#rAC?QDX)GT$?O7jN8k7 zn4-d+mMrLyaPq+sO>SXB%n)`7tkMVH$G*WGxxy|mLQ*`EBDePjFu^b9>#Yn2=`pfL zIP6tQ#)8wmXPj2$l}T(MC}0}q%;mI;&)U?P^E|PZk!U(hDh$mjPHF5O(>brWGQl&y z3XT>4@x}{!I=sxNiZ)fi(bb~Sr9^?@ut||tKmu>v`NFw zBjp*sukk4op^zjWmVQx2=}%1@Aw@o+&g}ymT`hAT_LejFLmhMPDV2|_RV;<-^YV7fB#11$D>!i9FevZvzb}}#D z>sve>f1F?;1fK8zJ|o0z4vEdh+^PJd(b-?vB?Hzj;Fspstj(v-2NAo8P=Dvy6?WTPBby3(9PKzMFPd(mbI$ zH1T{2wu9JOX)3`MQ@iW)l6YU{EP=d@?_O#2%Tpd@4*#V*${J3an_`206J_#E8Q&Nk z%r~BMSU@3nuZZZV;!JaeEWaC6&aG2sJxs4XyXcr%s>nNvVydWT=i#OxjYiQ`qP z)Uw$xa4KMp&Z(Qiz<9B3j2`~Nt|heViRzf@h$@891ZlbG#P~Jn$!#$+k3KMA$@aOv znII#!vUw2@SY7V+DoK8Vd>1iUS9ooR4KTiJ^Wj6xA($&vPBuEq8vEM4TyE**0AqCo zh7aM8Q%`U>$rb3vtbo)WV+sA;;R>wL^RiH{krz`m^;;larl58gK( z=?~0E|M@|-gHu6%O(?joqglgbrISL|!UHX1-*6j{_)N=(pGYu1jHGEEqO!DAetJ3S z)3NF0Mf@l$_efMwNFpIuJRo!BGnvCJpezqPUk4K{FLqKC>Hfv|Q@0LPj#%M*lvl&N zI?l!P_RNkG!#6jP6R`6suW#OUX6F3Gck2DmwfDmwEpD8_Kg;qRUsSw)e`KOGKE3n4 z%U3%EW=e|>9bsxJE*y_X#E+)&#ETE*b6ieJ#gC>i5s%+F*|DIPYB<`ZbosxO_2)43 zxSK5MBNwb?$Fg~)NYIbR}I#sxAU9NP4~2RcfZ~YS4ih=qblkl z*QQX=NNUj?jLWng;QWj(8*HOgPei9m5H@<|Kpn~l%%)Q)t@c!WC5LE%&b$3d1q2yr zk5r0-9%X02!I9J#3bZ5n;96mH54=k*{Hqw}>bO<>mC4bf(cuGcwk1hH@ z#EVQnfq2{(_w?^XUsLGrKaKAr(VrlNMxSl3Of6fSdwo8>ESVskT1Xae_0qpYBfLT~ zl6&-1K%c#Z?+Rr7oFjrP8Vlt(4=q&Z#EG4ej4k(F-!T(>e6LGrg2GooO-V7?Udd#$am{B)m(7AvC;Nq~qHxL~e3i7aPAK zowVF#$azAKCXstggSX8=DZx=

Cod;ESsOycGKAa(NzH=Ju2Ia&)~bj8DvEvnxGy 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�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 Cns{&k diff --git a/Minecraft.Client/Common/UI/IUIScene_HUD.cpp b/Minecraft.Client/Common/UI/IUIScene_HUD.cpp index d2754789..20a08f61 100644 --- a/Minecraft.Client/Common/UI/IUIScene_HUD.cpp +++ b/Minecraft.Client/Common/UI/IUIScene_HUD.cpp @@ -5,6 +5,8 @@ #include "..\..\..\Minecraft.World\net.minecraft.world.item.h" #include "..\..\..\Minecraft.World\net.minecraft.world.entity.ai.attributes.h" #include "..\..\..\Minecraft.World\net.minecraft.world.entity.monster.h" +#include "..\..\MultiPlayerLevel.h" +#include "..\..\..\Minecraft.World\LevelData.h" #include "IUIScene_HUD.h" #include "UI.h" @@ -20,6 +22,7 @@ IUIScene_HUD::IUIScene_HUD() m_lastMaxHealth = 20; m_lastHealthBlink = false; m_lastHealthPoison = false; + m_lastHealthHardcore = false; m_iCurrentFood = -1; m_lastFoodPoison = false; m_lastAir = 10; @@ -94,9 +97,10 @@ void IUIScene_HUD::updateFrameTick() ShowHealth(false); ShowFood(false); ShowAir(false); - ShowArmour(false); + ShowArmour(false); ShowExpBar(false); - SetHealthAbsorb(0); + SetHealthAbsorb(0); + SetHardcoreMode(false); } if(pMinecraft->localplayers[iPad]->isRidingJumpable()) @@ -206,6 +210,12 @@ void IUIScene_HUD::renderPlayerHealth() // Update armour int armor = pMinecraft->localplayers[iPad]->getArmorValue(); + // Check hardcore mode + bool bHardcore = pMinecraft->level != nullptr + && pMinecraft->level->getLevelData() != nullptr + && pMinecraft->level->getLevelData()->isHardcore(); + SetHardcoreMode(bHardcore); + SetHealth(currentHealth, oldHealth, blink, bHasPoison || bHasWither, bHasWither); SetHealthAbsorb(totalAbsorption); diff --git a/Minecraft.Client/Common/UI/IUIScene_HUD.h b/Minecraft.Client/Common/UI/IUIScene_HUD.h index 0f643dd3..9a51da36 100644 --- a/Minecraft.Client/Common/UI/IUIScene_HUD.h +++ b/Minecraft.Client/Common/UI/IUIScene_HUD.h @@ -11,6 +11,7 @@ protected: int m_iCurrentHealth; int m_lastMaxHealth; bool m_lastHealthBlink, m_lastHealthPoison, m_lastHealthWither; + bool m_lastHealthHardcore; int m_iCurrentFood; bool m_lastFoodPoison; int m_lastAir, m_currentExtraAir; @@ -46,6 +47,7 @@ protected: virtual void SetActiveSlot(int slot) = 0; virtual void SetHealth(int iHealth, int iLastHealth, bool bBlink, bool bPoison, bool bWither) = 0; + virtual void SetHardcoreMode(bool bHardcore) = 0; virtual void SetFood(int iFood, int iLastFood, bool bPoison) = 0; virtual void SetAir(int iAir, int extra) = 0; virtual void SetArmour(int iArmour) = 0; diff --git a/Minecraft.Client/Common/UI/UIScene_CreateWorldMenu.cpp b/Minecraft.Client/Common/UI/UIScene_CreateWorldMenu.cpp index 8eb74739..2e421088 100644 --- a/Minecraft.Client/Common/UI/UIScene_CreateWorldMenu.cpp +++ b/Minecraft.Client/Common/UI/UIScene_CreateWorldMenu.cpp @@ -461,6 +461,8 @@ void UIScene_CreateWorldMenu::handlePress(F64 controlId, F64 childId) } break; case eControl_GameModeToggle: + if (s_bHardcore) + break; // Hardcore mode locks game mode to Survival switch(m_iGameModeId) { case 0: // Creative @@ -473,7 +475,7 @@ void UIScene_CreateWorldMenu::handlePress(F64 controlId, F64 childId) m_iGameModeId = GameType::ADVENTURE->getId(); m_bGameModeCreative = false; break; - case 2: // Survival + case 2: // Survival m_buttonGamemode.setLabel(app.GetString(IDS_GAMEMODE_SURVIVAL)); m_iGameModeId = GameType::SURVIVAL->getId(); m_bGameModeCreative = false; @@ -665,6 +667,14 @@ void UIScene_CreateWorldMenu::handleSliderMove(F64 sliderId, F64 currentValue) else swprintf( (WCHAR *)TempString, 256, L"%ls: %ls", app.GetString( IDS_SLIDER_DIFFICULTY ),app.GetString(m_iDifficultyTitleSettingA[value])); m_sliderDifficulty.setLabel(TempString); + + // Hardcore locks game mode to Survival + if (s_bHardcore && m_iGameModeId != GameType::SURVIVAL->getId()) + { + m_iGameModeId = GameType::SURVIVAL->getId(); + m_bGameModeCreative = false; + m_buttonGamemode.setLabel(app.GetString(IDS_GAMEMODE_SURVIVAL)); + } break; } } diff --git a/Minecraft.Client/Common/UI/UIScene_HUD.cpp b/Minecraft.Client/Common/UI/UIScene_HUD.cpp index 213caa8d..88bd3c17 100644 --- a/Minecraft.Client/Common/UI/UIScene_HUD.cpp +++ b/Minecraft.Client/Common/UI/UIScene_HUD.cpp @@ -655,6 +655,23 @@ void UIScene_HUD::SetHorseJumpBarProgress(float progress) } } +void UIScene_HUD::SetHardcoreMode(bool bHardcore) +{ + IggyDataValue result; + IggyDataValue value[1]; + value[0].type = IGGY_DATATYPE_boolean; + value[0].boolval = bHardcore; + IggyResult out = IggyPlayerCallMethodRS ( getMovie() , &result, IggyPlayerRootPath( getMovie() ), m_funcSetHardcore , 1 , value ); + + // When hardcore state changes, invalidate SetHealth's dirty check + // so hearts are redrawn with the correct frame set on the next tick + if(bHardcore != m_lastHealthHardcore) + { + m_lastHealthHardcore = bHardcore; + m_lastMaxHealth = -1; + } +} + void UIScene_HUD::SetHealthAbsorb(int healthAbsorb) { if(m_iCurrentHealthAbsorb != healthAbsorb) diff --git a/Minecraft.Client/Common/UI/UIScene_HUD.h b/Minecraft.Client/Common/UI/UIScene_HUD.h index 04468c8e..4739ec8f 100644 --- a/Minecraft.Client/Common/UI/UIScene_HUD.h +++ b/Minecraft.Client/Common/UI/UIScene_HUD.h @@ -25,6 +25,7 @@ protected: IggyName m_funcRepositionHud, m_funcSetDisplayName, m_funcSetTooltipsEnabled; IggyName m_funcSetRidingHorse, m_funcSetHorseHealth, m_funcSetHorseJumpBarProgress; IggyName m_funcSetHealthAbsorb; + IggyName m_funcSetHardcore; UI_BEGIN_MAP_ELEMENTS_AND_NAMES(UIScene) UI_MAP_ELEMENT(m_labelChatText[0],"Label1") UI_MAP_ELEMENT(m_labelChatText[1],"Label2") @@ -89,6 +90,7 @@ protected: UI_MAP_NAME(m_funcSetHorseJumpBarProgress, L"SetHorseJumpBarProgress") UI_MAP_NAME(m_funcSetHealthAbsorb, L"SetHealthAbsorb") + UI_MAP_NAME(m_funcSetHardcore, L"SetHardcore") UI_END_MAP_ELEMENTS_AND_NAMES() public: @@ -159,6 +161,8 @@ private: void SetHealthAbsorb(int healthAbsorb); + void SetHardcoreMode(bool bHardcore); + public: void SetSelectedLabel(const wstring &label); void ShowDisplayName(bool show); diff --git a/Minecraft.Client/Common/UI/UIScene_LoadMenu.cpp b/Minecraft.Client/Common/UI/UIScene_LoadMenu.cpp index 7a560550..12d25530 100644 --- a/Minecraft.Client/Common/UI/UIScene_LoadMenu.cpp +++ b/Minecraft.Client/Common/UI/UIScene_LoadMenu.cpp @@ -579,6 +579,11 @@ void UIScene_LoadMenu::tick() WCHAR TempString[256]; swprintf( (WCHAR *)TempString, 256, L"%ls: %ls", app.GetString( IDS_SLIDER_DIFFICULTY ), L"Hardcore"); m_sliderDifficulty.init(TempString, eControl_Difficulty, 0, 4, 4); + + // Hardcore locks game mode to Survival + m_iGameModeId = GameType::SURVIVAL->getId(); + m_bGameModeCreative = false; + m_buttonGamemode.setLabel(app.GetString(IDS_GAMEMODE_SURVIVAL)); } } @@ -733,6 +738,8 @@ void UIScene_LoadMenu::handlePress(F64 controlId, F64 childId) switch(static_cast(controlId)) { case eControl_GameMode: + if (m_bHardcore) + break; // Hardcore mode locks game mode to Survival switch(m_iGameModeId) { case 0: // Survival diff --git a/Minecraft.Client/MinecraftServer.cpp b/Minecraft.Client/MinecraftServer.cpp index 477af5b1..53f513a9 100644 --- a/Minecraft.Client/MinecraftServer.cpp +++ b/Minecraft.Client/MinecraftServer.cpp @@ -1008,8 +1008,11 @@ bool MinecraftServer::loadLevel(LevelStorageSource *storageSource, const wstring #endif levels[i]->getLevelData()->setGameType(gameType); - // Apply hardcore flag from host option to level data so loaded worlds respect server.properties +#ifdef MINECRAFT_SERVER_BUILD + // Dedicated server: server.properties hardcore flag is authoritative levels[i]->getLevelData()->setHardcore(isHardcore()); +#endif + // Offline/client-hosted: keep the world's saved hardcore flag from NBT if(app.getLevelGenerationOptions() != nullptr) { diff --git a/README.md b/README.md index a88a53b8..c08937d7 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,15 @@ This project is based on source code of Minecraft Legacy Console Edition v1.6.05 ## Latest: +### Hardcore Hearts + +![Hardcore Hearts](.github/hardcore-hearts.png) + +- Worlds in hardcore mode now display the hardcore heart textures, matching Java Edition +- Supports all heart states: normal, poison, wither, and flash/blink animations +- Works across all contexts: offline worlds, online hosted worlds, and dedicated servers +- Game mode is locked to Survival when hardcore is enabled in the world creation and load screens + ### Dedicated Server Security Hardening The dedicated server now includes a comprehensive security system to protect against packet-sniffing attacks, XUID harvesting, privilege escalation, and bot flooding. All features are configurable in `server.properties`. Compatible with [playit.gg](https://playit.gg) -- enable `proxy-protocol=true` in your server.properties and enable PROXY Protocol v1 in your playit.gg tunnel settings to get per-player IP tracking, IP bans, and per-player rate limiting. @@ -62,63 +71,72 @@ proxy-protocol=true **Important:** When `require-secure-client=true` and `enable-stream-cipher=true`, only the secured client (`LCREWindows64.zip`) can connect. Old/upstream clients will be blocked before receiving any game data. Set both to `false` if you want to allow all clients. ---- +### Player List Map Icon Color Fix -Player list map icon color fix: - The colored map icon shown next to each player in the tab player list and teleport menu now matches their actual map marker color. Previously the icon was determined by a broken small-ID lookup that produced incorrect colors. The icon is now computed client-side using the same hash the map renderer uses, keyed by player name for reliable lookup -End dimension fixes for dedicated servers: +### End Dimension Fixes for Dedicated Servers + - Fixed the Ender Dragon being immune to melee damage on dedicated servers. The server's entity ID allocator (smallId pool) assigned non-sequential IDs to the dragon's body parts, but the client assumed sequential offsets. Melee attacks targeted IDs the server didn't recognize, so hits were silently dropped. The server now reassigns sub-entity IDs to be sequential from the parent when an entity with parts is added to the level - Fixed entering the End exit portal after defeating the dragon crashing the game. The player entity was never added to the Overworld level during the dimension transition, leaving the player as a ghost entity that caused a crash on the next interaction - Fixed the End Poem crashing the client on dedicated servers due to an out-of-bounds player index lookup in the WIN_GAME event handler -Dedicated server player list fix: +### Dedicated Server Player List Fix + - The Tab player list now correctly shows all connected players on dedicated servers. Previously only the local player was visible because remote players were never registered in the client's network player tracking when their `AddPlayerPacket` arrived - The dedicated server's phantom host entry (slot 0, empty name) is now filtered from the list - Players are properly removed from the list when they disconnect, using gamertag matching since dedicated server XUIDs are not available on the client -SRV record support and async join refactor: +### SRV Record Support and Async Join Refactor + - Added DNS SRV record resolution (`_minecraft._tcp.`), matching Java Edition behavior. Players can connect using just a domain name (e.g. `play.example.com`) and the client will automatically look up the correct server address and port from DNS - Refactored the async server joining system: replaced boolean flags with a clean `eJoinState` enum state machine, moved connection progress handling into a dedicated `UIScene_ConnectingProgress` class with attempt counter and cancel support, and added a `FinalizeJoin()` separation so the recv thread only starts after the UI confirms success -Piston fix for dedicated servers: +### Piston Fix for Dedicated Servers + - Fixed a bug where pistons would permanently break server-wide on dedicated servers when a redstone clock ran long enough. The piston update lock (`ignoreUpdate`) was set at the start of `triggerEvent` but never cleared on three early-return paths, permanently blocking all piston neighbor updates for the rest of the session. A fast clock would eventually hit one of these paths (e.g. signal state changing between event queuing and processing), locking out every piston in the world -Chunk unloading and connection stability fixes: +### Chunk Unloading and Connection Stability Fixes + - Fixed a regression where chunks outside the player's immediate vicinity would fail to load on dedicated servers, leaving giant missing areas. The server's chunk drop function was immediately removing chunks from the cache instead of queuing them for the existing save/unload pipeline, which meant chunks were never saved, never moved to the recovery cache, and their entities (item frames, paintings, etc.) were never removed from the level before being reloaded, causing entity duplication - Fixed the server's `dropAll()` and autosave chunk cleanup iterating the loaded chunk list while simultaneously modifying it (undefined behavior that could corrupt chunk tracking or stall the server) - Removed an overly aggressive `dropAll()` call that wiped the entire chunk cache whenever render distance decreased, instead of only removing the out-of-range chunks - Fixed a client-side connection bug where a 5-second socket recv timeout (used during the initial server handshake) was never cleared after connecting. This meant any brief server pause longer than 5 seconds (e.g. autosave, chunk I/O) would cause the client to interpret the silence as a lost connection and disconnect -Dedicated server biome diversity fix: +### Dedicated Server Biome Diversity Fix + - The dedicated server previously used a completely random seed with no biome diversity checks, unlike the client which validates seeds to guarantee varied biomes. This could result in server worlds with large regions dominated by only one or two biome types (e.g. all taiga/snowy) - On top of that, the client's seed validation was hardcoded to only check a 54-chunk (Classic) area, so even validated seeds had no diversity guarantee beyond that. This made the problem especially noticeable on Large worlds or worlds expanded from Classic to Large - New server worlds now validate seeds for biome diversity, and the validation scales to the full target world size - Added `override-seed` in server.properties to fix existing worlds without deleting them. Set it to any seed number and newly generated chunks will use it instead of the original -Server list and connection improvements: +### Server List and Connection Improvements + - Server edits and deletions now apply immediately without needing to restart the game - Connecting to an offline/unreachable server no longer freezes the game indefinitely - Connection attempts use non-blocking sockets with a 5-second timeout (3 retries max) instead of the OS TCP timeout - Connection runs on a background thread so the UI stays responsive, with a cancel option (press B or Escape) to back out at any time - Failed connections now always show a "Connection Failed" dialog instead of silently navigating back -Upstream merge: +### Upstream Merge + - Fixed font rendering for color and formatting codes, splash text like "Colormatic!" now renders with proper per-character colors - Fixed Sign editing UI, SignEntryMenu720 restored to correct version - Stained glass and stained glass panes are now craftable in survival mode with full crafting UI support - Clicking outside a container inventory while holding an item now drops it, matching Java Edition behavior - Item lore text now displays on hover for items with NBT lore data -- Increased entity limits: boats 40→60, minecarts 40→60, fireballs 200→300, projectiles 300→400 +- Increased entity limits: boats 40->60, minecarts 40->60, fireballs 200->300, projectiles 300->400 - Fixed missing trapped chest textures in Natural Texture Pack - Debug packet handling now properly gated behind debug builds -Music context fixes: -- Menu music (menu1-4) now plays only on the title screen -- creative music (creative1-6) only plays in creative mode -- survival mode plays only calm/hal/nuance/piano tracks +### Music Context Fixes + +- Menu music (menu1-4) now plays only on the title screen +- Creative music (creative1-6) only plays in creative mode +- Survival mode plays only calm/hal/nuance/piano tracks + +### Performance Optimizations -Performance optimizations across rendering, audio, and entity systems! - Renderer: column-level frustum culling and compact visible-chunk lists skip thousands of empty iterations per frame; lightweight second-pass render path avoids redundant checks - Sound engine: filesystem probe results are now cached, eliminating repeated file-existence checks every time a sound plays; sounds are pre-decoded for smoother playback - Entity movement: reduced `shared_from_this()` overhead by caching the shared pointer; `dynamic_pointer_cast` replaced with a raw pointer cast guarded by `instanceof` @@ -126,12 +144,14 @@ Performance optimizations across rendering, audio, and entity systems! - Threading: entity query locking consolidated at the `Level` layer on all platforms for consistent thread safety - Block breaking: server now skips redundant tile-update packets when a block is successfully destroyed -Migrated to CMake build system (upstream)! +### CMake Build System Migration + - Project now builds with CMake instead of Visual Studio project files - Use `cmake --preset windows64` or open the repo folder directly in Visual Studio (it detects `CMakeLists.txt` automatically) - Old `.vcxproj`/`.sln` files are preserved on the `vs-build` branch if needed -Multi-language font rendering and Unicode text input! +### Multi-Language Font Rendering and Unicode Text Input + - Type and read text/characters in Japanese, Chinese, Korean, Thai, Arabic, Hindi, and many more languages - Works in: chat, signs, world names, seeds, server address/port fields - Two rendering systems: Iggy UI uses a new unicode bitmap fallback font; legacy C++ renderer uses Java Minecraft's glyph page system @@ -139,19 +159,23 @@ Multi-language font rendering and Unicode text input! - Security: blocked Unicode bidirectional override characters to prevent chat spoofing - Fixed a pre-existing memory leak in sign loading -Added copy+paste support for IP/Port, world names, world seeds, server names, signs, etc. -- Just use control+v to paste from your clipboard! +### Copy+Paste Support -Dedicated server releases support Hardcore Mode! -- Dedicated server is fully compatible with `smartcmd/MinecraftConsoles` clients, even with hardcore mode! +- Added copy+paste support for IP/Port, world names, world seeds, server names, signs, etc. +- Just use Ctrl+V to paste from your clipboard + +### Dedicated Server Hardcore Mode + +- Dedicated server is fully compatible with `smartcmd/MinecraftConsoles` clients, even with hardcore mode - Client (`LCREWindows64.zip`): download from the Nightly release on GitHub - Dedicated Server (`LCREServerWindows64.zip`): download from the Nightly-Dedicated-Server release on GitHub - Docker: pull `ghcr.io/itsrevela/minecraft-lce-dedicated-server:nightly` for server container -Screenshot functionality with F2! -- pressing F2 will save a screenshot to a `screenshots` folder in your root game directory -- works in any context: main menu, pause menu, settings, inventory, crafting, and during gameplay -- a local-only chat message is shown to the player when in-game +### Screenshot Functionality + +- Pressing F2 will save a screenshot to a `screenshots` folder in your root game directory +- Works in any context: main menu, pause menu, settings, inventory, crafting, and during gameplay +- A local-only chat message is shown to the player when in-game Proper implementation of Hardcore Mode in LCRE! - difficulty slider included in create world menu diff --git a/tools/AddHardcoreBitmaps.java b/tools/AddHardcoreBitmaps.java new file mode 100644 index 00000000..91fe8c8b --- /dev/null +++ b/tools/AddHardcoreBitmaps.java @@ -0,0 +1,115 @@ +import com.jpexs.decompiler.flash.SWF; +import com.jpexs.decompiler.flash.tags.*; +import com.jpexs.decompiler.flash.tags.base.*; +import javax.imageio.ImageIO; +import java.awt.image.BufferedImage; +import java.io.*; +import java.util.*; + +/** + * Adds hardcore heart bitmap assets to a skinGraphicsHud SWF. + * These bitmaps are referenced by class name from PlaceObject3 tags in + * the health sprite frames defined in the parent skinHud/skinHDHud SWF. + * + * Usage: AddHardcoreBitmaps + */ +public class AddHardcoreBitmaps { + static final String[] TEXTURE_NAMES = { + "Health_Background_Hardcore", + "Health_Background_Hardcore_Flash", + "Health_Full_Hardcore", + "Health_Half_Hardcore", + "Health_Full_Flash_Hardcore", + "Health_Half_Flash_Hardcore", + "Health_Full_Poison_Hardcore", + "Health_Half_Poison_Hardcore", + "Health_Full_Poison_Flash_Hardcore", + "Health_Half_Poison_Flash_Hardcore" + }; + + public static void main(String[] args) throws Exception { + if (args.length < 3) { + System.out.println("Usage: AddHardcoreBitmaps "); + System.exit(1); + } + + String swfPath = args[0]; + String texturesDir = args[1]; + String outputPath = args[2]; + + System.out.println("Loading SWF: " + swfPath); + SWF swf = new SWF(new FileInputStream(swfPath), false); + + // Find max character ID + int maxCharId = 0; + for (Tag tag : swf.getTags()) { + if (tag instanceof CharacterTag) { + int id = ((CharacterTag) tag).getCharacterId(); + if (id > maxCharId) maxCharId = id; + } + } + System.out.println("Max existing character ID: " + maxCharId); + + // Find SymbolClass tag + SymbolClassTag symbolClass = null; + int symbolClassIdx = -1; + for (int i = 0; i < swf.getTags().size(); i++) { + if (swf.getTags().get(i) instanceof SymbolClassTag) { + symbolClass = (SymbolClassTag) swf.getTags().get(i); + symbolClassIdx = i; + break; + } + } + + if (symbolClass == null) { + System.err.println("ERROR: No SymbolClass tag found"); + System.exit(1); + } + + int nextCharId = maxCharId + 1; + int added = 0; + + for (String texName : TEXTURE_NAMES) { + String pngFile = texturesDir + "/" + texName + ".png"; + File f = new File(pngFile); + if (!f.exists()) { + System.err.println("ERROR: Missing texture: " + pngFile); + System.exit(1); + } + + BufferedImage img = ImageIO.read(f); + System.out.println(" Adding " + texName + " (id=" + nextCharId + ", " + img.getWidth() + "x" + img.getHeight() + ")"); + + // Create DefineBitsLossless2 tag + DefineBitsLossless2Tag bmp = new DefineBitsLossless2Tag(swf); + bmp.characterID = nextCharId; + + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + ImageIO.write(img, "PNG", baos); + bmp.setImage(baos.toByteArray()); + + // Insert before SymbolClass + swf.addTag(symbolClassIdx, bmp); + symbolClassIdx++; // SymbolClass shifted by 1 + + // Add to SymbolClass + symbolClass.tags.add(nextCharId); + symbolClass.names.add(texName); + + nextCharId++; + added++; + } + + System.out.println("Added " + added + " hardcore heart bitmaps"); + + // Mark SymbolClass as modified so new entries get serialized + symbolClass.setModified(true); + + // Save + System.out.println("Saving to: " + outputPath); + try (FileOutputStream fos = new FileOutputStream(outputPath)) { + swf.saveTo(fos); + } + System.out.println("Done!"); + } +} diff --git a/tools/AddHardcoreHearts.java b/tools/AddHardcoreHearts.java new file mode 100644 index 00000000..aa5eea60 --- /dev/null +++ b/tools/AddHardcoreHearts.java @@ -0,0 +1,405 @@ +import com.jpexs.decompiler.flash.SWF; +import com.jpexs.decompiler.flash.tags.*; +import com.jpexs.decompiler.flash.tags.base.*; +import com.jpexs.decompiler.flash.types.*; +import javax.imageio.ImageIO; +import java.awt.image.BufferedImage; +import java.io.*; +import java.util.*; + +/** + * Adds hardcore heart frames to the health sprite in skinHDHud.swf. + * + * The health sprite (FJ_Health) has 14 frames for normal/poison/wither states. + * This tool adds 10 new frames (15-24) for hardcore variants: + * Frame 15: Health_Empty_Hardcore (hardcore background) + * Frame 16: Health_Empty_Flash_Hardcore (hardcore background flash) + * Frame 17: Health_Full_Hardcore (hardcore bg + full) + * Frame 18: Health_Half_Hardcore (hardcore bg + half) + * Frame 19: Health_Full_Flash_Hardcore + * Frame 20: Health_Half_Flash_Hardcore + * Frame 21: Health_Full_Poison_Hardcore (hardcore bg + poison full) + * Frame 22: Health_Half_Poison_Hardcore + * Frame 23: Health_Full_Poison_Flash_Hardcore + * Frame 24: Health_Half_Poison_Flash_Hardcore + * + * Usage: AddHardcoreHearts + * + * The textures-dir should contain the hardcore PNGs: + * Health_Background_Hardcore.png, Health_Background_Hardcore_Flash.png, + * Health_Full_Hardcore.png, Health_Half_Hardcore.png, + * Health_Full_Flash_Hardcore.png, Health_Half_Flash_Hardcore.png, + * Health_Full_Poison_Hardcore.png, Health_Half_Poison_Hardcore.png, + * Health_Full_Poison_Flash_Hardcore.png, Health_Half_Poison_Flash_Hardcore.png + */ +public class AddHardcoreHearts { + public static void main(String[] args) throws Exception { + if (args.length < 3) { + System.out.println("Usage: AddHardcoreHearts "); + System.exit(1); + } + + String swfPath = args[0]; + String texturesDir = args[1]; + String outputPath = args[2]; + + System.out.println("Loading SWF: " + swfPath); + SWF swf = new SWF(new FileInputStream(swfPath), false); + + // Find the FJ_Health sprite by its SymbolClass name + Map symbolNames = new HashMap<>(); + for (Tag tag : swf.getTags()) { + if (tag instanceof SymbolClassTag) { + SymbolClassTag sym = (SymbolClassTag) tag; + for (int i = 0; i < sym.tags.size(); i++) { + symbolNames.put(sym.tags.get(i), sym.names.get(i)); + } + } + } + + // Find the health sprite + DefineSpriteTag healthSprite = null; + MATRIX existingMatrix = null; // Will capture from existing PlaceObject3 + for (Tag tag : swf.getTags()) { + if (tag instanceof DefineSpriteTag) { + DefineSpriteTag sprite = (DefineSpriteTag) tag; + String sym = symbolNames.getOrDefault(sprite.spriteId, ""); + if (sym.contains("FJ_Health") && !sym.contains("Absorb") && !sym.contains("Horse")) { + healthSprite = sprite; + System.out.println("Found health sprite: id=" + sprite.spriteId + " sym=" + sym + " frames=" + sprite.frameCount); + // Grab the matrix from the first PlaceObject3 in the sprite (Health_Background) + for (Tag sub : sprite.getTags()) { + if (sub instanceof PlaceObject3Tag) { + PlaceObject3Tag po = (PlaceObject3Tag) sub; + if (po.matrix != null) { + existingMatrix = po.matrix; + System.out.println("Captured matrix: " + existingMatrix); + break; + } + } + } + break; + } + } + } + + if (healthSprite == null) { + System.err.println("ERROR: Could not find FJ_Health sprite!"); + System.exit(1); + } + + // Find the highest character ID in the SWF to avoid conflicts + int maxCharId = 0; + for (Tag tag : swf.getTags()) { + if (tag instanceof CharacterTag) { + int id = ((CharacterTag) tag).getCharacterId(); + if (id > maxCharId) maxCharId = id; + } + } + System.out.println("Max existing character ID: " + maxCharId); + + // Load hardcore textures and create DefineBitsLossless2 tags + // We need to add these as top-level tags in the SWF, then reference them + // via PlaceObject in the health sprite frames + + // Map: texture name -> charId for the new bitmap + Map textureIds = new LinkedHashMap<>(); + String[] textureNames = { + "Health_Background_Hardcore", + "Health_Background_Hardcore_Flash", + "Health_Full_Hardcore", + "Health_Half_Hardcore", + "Health_Full_Flash_Hardcore", + "Health_Half_Flash_Hardcore", + "Health_Full_Poison_Hardcore", + "Health_Half_Poison_Hardcore", + "Health_Full_Poison_Flash_Hardcore", + "Health_Half_Poison_Flash_Hardcore" + }; + + // Find where to insert new tags (before SymbolClassTag) + int insertIndex = -1; + for (int i = 0; i < swf.getTags().size(); i++) { + if (swf.getTags().get(i) instanceof SymbolClassTag) { + insertIndex = i; + break; + } + } + + int nextCharId = maxCharId + 1; + SymbolClassTag symbolClass = null; + for (Tag tag : swf.getTags()) { + if (tag instanceof SymbolClassTag) { + symbolClass = (SymbolClassTag) tag; + break; + } + } + + for (String texName : textureNames) { + String pngFile = texturesDir + "/" + texName + ".png"; + File f = new File(pngFile); + if (!f.exists()) { + System.err.println("ERROR: Missing texture: " + pngFile); + System.exit(1); + } + + BufferedImage img = ImageIO.read(f); + System.out.println(" Loading " + texName + " (" + img.getWidth() + "x" + img.getHeight() + ")"); + + // Create DefineBitsLossless2 tag + DefineBitsLossless2Tag bmp = new DefineBitsLossless2Tag(swf); + bmp.characterID = nextCharId; + + // Convert image to PNG bytes for setImage + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + ImageIO.write(img, "PNG", baos); + bmp.setImage(baos.toByteArray()); + + textureIds.put(texName, nextCharId); + + // Insert before SymbolClass + swf.addTag(insertIndex, bmp); + insertIndex++; + + // Add to SymbolClass so it can be referenced by name + symbolClass.tags.add(nextCharId); + symbolClass.names.add(texName); + + nextCharId++; + } + + System.out.println("Added " + textureIds.size() + " hardcore heart bitmaps"); + + // Mark SymbolClass as modified so new entries get serialized + symbolClass.setModified(true); + + // Now add 10 new frames to the health sprite + // Current structure: 14 frames, each has RemoveObject2, PlaceObject3(bg), PlaceObject3(heart), ShowFrame + // We follow the same pattern + + // Frame structure for each hardcore frame: + // 1. FrameLabelTag (name) + // 2. RemoveObject2 depth 1 (remove old bg) - only if not first frame + // 3. PlaceObject3 cls= depth 1 + // 4. RemoveObject2 depth 2 (remove old heart) - only if heart present + // 5. PlaceObject3 cls= depth 2 - if not empty + // 6. ShowFrameTag + + // The frame structure from the existing SWF: + // Each frame after the first uses RemoveObject2 to clear the previous frame's objects + // then places new objects + + // Define our 10 new frames + String[][] hardcoreFrames = { + // {label, bgTexture, heartTexture} (heartTexture null for empty) + {"Health_Empty_Hardcore", "Health_Background_Hardcore", null}, + {"Health_Empty_Flash_Hardcore", "Health_Background_Hardcore_Flash", null}, + {"Health_Full_Hardcore", "Health_Background_Hardcore", "Health_Full_Hardcore"}, + {"Health_Half_Hardcore", null, "Health_Half_Hardcore"}, // bg continues from prev + {"Health_Full_Flash_Hardcore", "Health_Background_Hardcore_Flash", "Health_Full_Flash_Hardcore"}, + {"Health_Half_Flash_Hardcore", null, "Health_Half_Flash_Hardcore"}, + {"Health_Full_Poison_Hardcore", "Health_Background_Hardcore", "Health_Full_Poison_Hardcore"}, + {"Health_Half_Poison_Hardcore", null, "Health_Half_Poison_Hardcore"}, + {"Health_Full_Poison_Flash_Hardcore","Health_Background_Hardcore_Flash", "Health_Full_Poison_Flash_Hardcore"}, + {"Health_Half_Poison_Flash_Hardcore",null, "Health_Half_Poison_Flash_Hardcore"}, + }; + + // Actually, looking at the existing structure more carefully: + // Frame 1 (Health_Empty): PlaceObject3 bg@1, ShowFrame + // Frame 2 (Health_Empty_Flash): Remove@1, PlaceObject3 bg_flash@1, ShowFrame + // Frame 3 (Health_Full): Remove@1, PlaceObject3 bg@1, PlaceObject3 full@2, ShowFrame + // Frame 4 (Health_Half): PlaceObject3 half@2 (replaces heart, bg continues), ShowFrame + // Wait - frame 4 reuses bg from frame 3. Let me re-check... + + // Looking at the dump: + // [8] FrameLabel "Health_Full" + // [9] PlaceObject3 cls=Health_Background dpt=1 + // [10] PlaceObject3 cls=Health_Full dpt=2 + // [11] ShowFrame + // [12] RemoveObject2 dpt=2 + // [13] FrameLabel "Health_Half" + // [14] PlaceObject3 cls=Health_Half dpt=2 + // [15] ShowFrame (bg from frame 3 still on depth 1) + // [16] RemoveObject2 dpt=1 + // [17] RemoveObject2 dpt=2 + // [18] FrameLabel "Health_Full_Flash" + // [19] PlaceObject3 cls=Health_Background_Flash dpt=1 + // [20] PlaceObject3 cls=Health_Full_Flash dpt=2 + // [21] ShowFrame + + // So the pattern is: + // - When bg changes: remove depth 1, place new bg at depth 1 + // - When heart changes: remove depth 2, place new heart at depth 2 + // - Half frames reuse the bg from the previous Full frame + + // For the last existing frame (14, Health_Half_Wither_Flash), it has objects at depth 1 and 2. + // We need to start our new frames by removing those. + + // Let me follow the exact same pattern as the existing frames, starting from a clean slate + // after the last existing frame. + + if (existingMatrix == null) { + System.err.println("ERROR: Could not find matrix from existing health sprite!"); + System.exit(1); + } + + // Build the new tags to append + List newTags = new ArrayList<>(); + + // Frame structure follows the original pattern: + // Empty: remove@1, place bg@1 (depth 2 empty) + // EmptyFlash: remove@1, place flashbg@1 (depth 2 empty) + // Full: remove@1, place bg@1, place full@2 (ADD heart, no remove@2) + // Half: remove@2, place half@2 (REPLACE heart, bg continues) + // FullFlash: remove@1, place flashbg@1, remove@2, place fullflash@2 + // HalfFlash: remove@2, place halfflash@2 (bg continues) + // (Poison/Wither follow the same Full/Half/FullFlash/HalfFlash pattern) + + // label, rmBg, bgTex, rmHrt, hrtTex + // Frame 15: Empty - remove both from frame 14 + addFrame(newTags, swf, healthSprite, "Health_Empty_Hardcore", + true, "Health_Background_Hardcore", + true, null, existingMatrix); + + // Frame 16: EmptyFlash + addFrame(newTags, swf, healthSprite, "Health_Empty_Flash_Hardcore", + true, "Health_Background_Hardcore_Flash", + false, null, existingMatrix); + + // Frame 17: Full - bg changes, heart ADDED (no remove@2, depth 2 was empty) + addFrame(newTags, swf, healthSprite, "Health_Full_Hardcore", + true, "Health_Background_Hardcore", + false, "Health_Full_Hardcore", existingMatrix); + + // Frame 18: Half - heart REPLACED (remove@2, then place), bg continues + addFrame(newTags, swf, healthSprite, "Health_Half_Hardcore", + false, null, + true, "Health_Half_Hardcore", existingMatrix); + + // Frame 19: FullFlash - both change + addFrame(newTags, swf, healthSprite, "Health_Full_Flash_Hardcore", + true, "Health_Background_Hardcore_Flash", + true, "Health_Full_Flash_Hardcore", existingMatrix); + + // Frame 20: HalfFlash - heart replaced, bg continues + addFrame(newTags, swf, healthSprite, "Health_Half_Flash_Hardcore", + false, null, + true, "Health_Half_Flash_Hardcore", existingMatrix); + + // Frame 21: FullPoison - both change + addFrame(newTags, swf, healthSprite, "Health_Full_Poison_Hardcore", + true, "Health_Background_Hardcore", + true, "Health_Full_Poison_Hardcore", existingMatrix); + + // Frame 22: HalfPoison - heart replaced, bg continues + addFrame(newTags, swf, healthSprite, "Health_Half_Poison_Hardcore", + false, null, + true, "Health_Half_Poison_Hardcore", existingMatrix); + + // Frame 23: FullPoisonFlash - both change + addFrame(newTags, swf, healthSprite, "Health_Full_Poison_Flash_Hardcore", + true, "Health_Background_Hardcore_Flash", + true, "Health_Full_Poison_Flash_Hardcore", existingMatrix); + + // Frame 24: HalfPoisonFlash - heart replaced, bg continues + addFrame(newTags, swf, healthSprite, "Health_Half_Poison_Flash_Hardcore", + false, null, + true, "Health_Half_Poison_Flash_Hardcore", existingMatrix); + + // Append new tags to sprite using addTag + int spriteInsertIdx = healthSprite.getTags().size(); + for (Tag newTag : newTags) { + healthSprite.addTag(spriteInsertIdx, newTag); + spriteInsertIdx++; + } + healthSprite.frameCount += 10; + + System.out.println("Added 10 hardcore frames. New frame count: " + healthSprite.frameCount); + + // Save + System.out.println("Saving modified SWF: " + outputPath); + try (FileOutputStream fos = new FileOutputStream(outputPath)) { + swf.saveTo(fos); + } + System.out.println("Done!"); + } + + /** + * Adds tags for a single frame in the health sprite. + * Uses the existingMatrix (cloned from existing PlaceObject3) to ensure correct encoding. + */ + /** + * @param removeBg emit RemoveObject2 for depth 1 before placing bg + * @param bgTexture if non-null, place this at depth 1 + * @param removeHeart emit RemoveObject2 for depth 2 before placing heart + * @param heartTexture if non-null, place this at depth 2 + */ + static void addFrame(List tags, SWF swf, DefineSpriteTag parent, + String label, + boolean removeBg, String bgTexture, + boolean removeHeart, String heartTexture, + MATRIX existingMatrix) { + + // Frame label + FrameLabelTag frameLabel = new FrameLabelTag(swf); + frameLabel.name = label; + frameLabel.setTimelined(parent); + tags.add(frameLabel); + + // Background at depth 1 + if (removeBg) { + RemoveObject2Tag rem = new RemoveObject2Tag(swf); + rem.depth = 1; + rem.setTimelined(parent); + tags.add(rem); + } + if (bgTexture != null) { + PlaceObject3Tag placeBg = new PlaceObject3Tag(swf); + placeBg.depth = 1; + placeBg.className = bgTexture; + placeBg.placeFlagHasMatrix = true; + placeBg.matrix = cloneMatrix(existingMatrix); + placeBg.placeFlagHasClassName = true; + placeBg.placeFlagHasCharacter = false; + placeBg.setTimelined(parent); + tags.add(placeBg); + } + + // Heart at depth 2 + if (removeHeart) { + RemoveObject2Tag rem = new RemoveObject2Tag(swf); + rem.depth = 2; + rem.setTimelined(parent); + tags.add(rem); + } + if (heartTexture != null) { + PlaceObject3Tag placeHeart = new PlaceObject3Tag(swf); + placeHeart.depth = 2; + placeHeart.className = heartTexture; + placeHeart.placeFlagHasMatrix = true; + placeHeart.matrix = cloneMatrix(existingMatrix); + placeHeart.placeFlagHasClassName = true; + placeHeart.placeFlagHasCharacter = false; + placeHeart.setTimelined(parent); + tags.add(placeHeart); + } + + // ShowFrame + ShowFrameTag showFrame = new ShowFrameTag(swf); + showFrame.setTimelined(parent); + tags.add(showFrame); + } + + static MATRIX cloneMatrix(MATRIX src) { + MATRIX m = new MATRIX(); + m.hasScale = src.hasScale; + m.scaleX = src.scaleX; + m.scaleY = src.scaleY; + m.hasRotate = src.hasRotate; + m.rotateSkew0 = src.rotateSkew0; + m.rotateSkew1 = src.rotateSkew1; + m.translateX = src.translateX; + m.translateY = src.translateY; + return m; + } +} diff --git a/tools/DecompileAS.java b/tools/DecompileAS.java new file mode 100644 index 00000000..e4dd09d4 --- /dev/null +++ b/tools/DecompileAS.java @@ -0,0 +1,106 @@ +import com.jpexs.decompiler.flash.SWF; +import com.jpexs.decompiler.flash.tags.*; +import com.jpexs.decompiler.flash.abc.*; +import com.jpexs.decompiler.flash.abc.avm2.AVM2ConstantPool; +import com.jpexs.decompiler.flash.abc.types.*; +import com.jpexs.decompiler.flash.abc.types.traits.*; +import java.io.*; +import java.util.*; + +/** + * Decompiles ActionScript 3 class/method signatures from a SWF. + * Usage: DecompileAS + */ +public class DecompileAS { + public static void main(String[] args) throws Exception { + if (args.length < 1) { + System.out.println("Usage: DecompileAS "); + return; + } + + SWF swf = new SWF(new FileInputStream(args[0]), false); + + for (Tag tag : swf.getTags()) { + if (tag instanceof ImportAssets2Tag) { + ImportAssets2Tag imp = (ImportAssets2Tag) tag; + System.out.println("=== ImportAssets2 ==="); + System.out.println(" URL: " + imp.url); + } + + if (tag instanceof DoABC2Tag) { + DoABC2Tag abcTag = (DoABC2Tag) tag; + ABC abc = abcTag.getABC(); + AVM2ConstantPool cp = abc.constants; + + System.out.println("=== ABC: " + abcTag.name + " ==="); + System.out.println("Classes: " + abc.instance_info.size()); + System.out.println(); + + for (int c = 0; c < abc.instance_info.size(); c++) { + InstanceInfo ii = abc.instance_info.get(c); + System.out.println("--- Class: " + resolveName(cp, ii.name_index) + " ---"); + if (ii.super_index > 0) + System.out.println(" extends " + resolveName(cp, ii.super_index)); + + for (Trait t : ii.instance_traits.traits) { + dumpTrait(abc, cp, t, " "); + } + + ClassInfo ci = abc.class_info.get(c); + for (Trait t : ci.static_traits.traits) { + System.out.print(" [static] "); + dumpTrait(abc, cp, t, ""); + } + System.out.println(); + } + } + } + } + + static String resolveName(AVM2ConstantPool cp, int multinameIdx) { + if (multinameIdx <= 0) return "*"; + Multiname mn = cp.getMultiname(multinameIdx); + String name = mn.name_index > 0 ? cp.getString(mn.name_index) : "?"; + int nsIdx = mn.namespace_index; + if (nsIdx > 0) { + Namespace ns = cp.getNamespace(nsIdx); + String nsName = ns.name_index > 0 ? cp.getString(ns.name_index) : ""; + if (!nsName.isEmpty()) return nsName + "." + name; + } + return name; + } + + static void dumpTrait(ABC abc, AVM2ConstantPool cp, Trait t, String indent) { + try { + String name = resolveName(cp, t.name_index); + + if (t instanceof TraitMethodGetterSetter) { + TraitMethodGetterSetter tm = (TraitMethodGetterSetter) t; + MethodInfo mi = abc.method_info.get(tm.method_info); + + String kind = tm.kindType == Trait.TRAIT_GETTER ? "get" : + tm.kindType == Trait.TRAIT_SETTER ? "set" : "function"; + + StringBuilder sig = new StringBuilder(); + sig.append(kind).append(" ").append(name).append("("); + for (int p = 0; p < mi.param_types.length; p++) { + if (p > 0) sig.append(", "); + sig.append(resolveName(cp, mi.param_types[p])); + } + sig.append(")"); + sig.append(" : ").append(resolveName(cp, mi.ret_type)); + + System.out.println(indent + sig); + } else if (t instanceof TraitSlotConst) { + TraitSlotConst ts = (TraitSlotConst) t; + String type = resolveName(cp, ts.type_index); + String constKind = ts.kindType == Trait.TRAIT_CONST ? "const" : "var"; + System.out.println(indent + constKind + " " + name + " : " + type); + } else if (t instanceof TraitClass) { + System.out.println(indent + "[class] " + name); + } + } catch (Exception e) { + System.out.println(indent + "[error: " + e.getMessage() + "]"); + } + } +} diff --git a/tools/DecompileASBody.java b/tools/DecompileASBody.java new file mode 100644 index 00000000..bd9f32aa --- /dev/null +++ b/tools/DecompileASBody.java @@ -0,0 +1,48 @@ +import com.jpexs.decompiler.flash.SWF; +import com.jpexs.decompiler.flash.exporters.modes.ScriptExportMode; +import com.jpexs.decompiler.flash.exporters.settings.ScriptExportSettings; +import com.jpexs.decompiler.flash.configuration.Configuration; +import java.io.*; +import java.util.*; + +/** + * Exports all ActionScript 3 source from a SWF to a directory. + * Usage: DecompileASBody [output-dir] + */ +public class DecompileASBody { + public static void main(String[] args) throws Exception { + if (args.length < 1) { + System.out.println("Usage: DecompileASBody [output-dir]"); + return; + } + + Configuration.autoDeobfuscate.set(false); + + String path = args[0]; + String outDir = args.length > 1 ? args[1] : "as_output"; + + SWF swf = new SWF(new FileInputStream(path), false); + + File out = new File(outDir); + out.mkdirs(); + + ScriptExportSettings settings = new ScriptExportSettings(ScriptExportMode.AS, false, false, false, false); + swf.exportActionScript(null, outDir, settings, false, null); + + System.out.println("Export complete. Files:"); + listFiles(new File(outDir), ""); + } + + static void listFiles(File dir, String prefix) { + File[] files = dir.listFiles(); + if (files == null) return; + Arrays.sort(files); + for (File f : files) { + if (f.isDirectory()) { + listFiles(f, prefix + f.getName() + "/"); + } else { + System.out.println(" " + prefix + f.getName() + " (" + f.length() + " bytes)"); + } + } + } +} diff --git a/tools/DumpSetHealthBC.java b/tools/DumpSetHealthBC.java new file mode 100644 index 00000000..b1d4b3e0 --- /dev/null +++ b/tools/DumpSetHealthBC.java @@ -0,0 +1,140 @@ +import com.jpexs.decompiler.flash.SWF; +import com.jpexs.decompiler.flash.abc.*; +import com.jpexs.decompiler.flash.abc.avm2.AVM2ConstantPool; +import com.jpexs.decompiler.flash.abc.avm2.AVM2Code; +import com.jpexs.decompiler.flash.abc.avm2.instructions.*; +import com.jpexs.decompiler.flash.abc.types.*; +import com.jpexs.decompiler.flash.abc.types.traits.*; +import com.jpexs.decompiler.flash.tags.*; +import com.jpexs.decompiler.flash.configuration.Configuration; +import java.io.*; +import java.util.*; + +/** + * Dumps the AVM2 bytecode of the SetHealth method from a HUD SWF. + */ +public class DumpSetHealthBC { + public static void main(String[] args) throws Exception { + Configuration.autoDeobfuscate.set(false); + SWF swf = new SWF(new FileInputStream(args[0]), false); + + for (Tag tag : swf.getTags()) { + if (!(tag instanceof DoABC2Tag)) continue; + DoABC2Tag abcTag = (DoABC2Tag) tag; + ABC abc = abcTag.getABC(); + AVM2ConstantPool cp = abc.constants; + + // Find Hud class + for (int c = 0; c < abc.instance_info.size(); c++) { + Multiname mn = cp.getMultiname(abc.instance_info.get(c).name_index); + String name = mn.name_index > 0 ? cp.getString(mn.name_index) : ""; + if (!"Hud".equals(name)) continue; + + InstanceInfo ii = abc.instance_info.get(c); + + // Find SetHealth method + for (Trait t : ii.instance_traits.traits) { + if (!(t instanceof TraitMethodGetterSetter)) continue; + Multiname tMn = cp.getMultiname(t.name_index); + String tName = tMn.name_index > 0 ? cp.getString(tMn.name_index) : ""; + if (!"SetHealth".equals(tName)) continue; + + TraitMethodGetterSetter tm = (TraitMethodGetterSetter) t; + MethodBody body = abc.findBody(tm.method_info); + if (body == null) continue; + + AVM2Code code = body.getCode(); + System.out.println("=== SetHealth bytecode ==="); + System.out.println("max_stack=" + body.max_stack + " max_regs=" + body.max_regs); + System.out.println(); + + for (int i = 0; i < code.code.size(); i++) { + AVM2Instruction inst = code.code.get(i); + StringBuilder sb = new StringBuilder(); + sb.append(String.format("[%3d] offset=%d opcode=0x%02X", i, inst.getAddress(), inst.definition.instructionCode)); + + // Show operands + if (inst.operands != null) { + for (int op : inst.operands) { + sb.append(" ").append(op); + } + } + + // Try to resolve multiname operands for property instructions + if (inst.operands != null && inst.operands.length > 0) { + int mnIdx = inst.operands[0]; + int opcode = inst.definition.instructionCode; + // Common property opcodes that use multiname as first operand + if (opcode == 0x66 || opcode == 0x61 || opcode == 0x5D || opcode == 0x60 || + opcode == 0x46 || opcode == 0x4F || opcode == 0x68) { + // getproperty, setproperty, findpropstrict, getlex, callproperty, callpropvoid, initproperty + try { + Multiname propMn = cp.getMultiname(mnIdx); + String propName = propMn.name_index > 0 ? cp.getString(propMn.name_index) : "?"; + sb.append(" -> ").append(propName); + } catch (Exception e) {} + } + } + + // Name the opcode + String opName = getOpName(inst.definition.instructionCode); + sb.append(" (").append(opName).append(")"); + + System.out.println(sb); + } + } + } + } + } + + static String getOpName(int opcode) { + switch (opcode) { + case 0xD0: return "getlocal0"; + case 0xD1: return "getlocal1"; + case 0xD2: return "getlocal2"; + case 0xD3: return "getlocal3"; + case 0xD4: return "setlocal0"; + case 0xD5: return "setlocal1"; + case 0xD6: return "setlocal2"; + case 0xD7: return "setlocal3"; + case 0x62: return "getlocal"; + case 0x63: return "setlocal"; + case 0x30: return "pushscope"; + case 0x47: return "returnvoid"; + case 0x48: return "returnvalue"; + case 0x66: return "getproperty"; + case 0x61: return "setproperty"; + case 0x5D: return "findpropstrict"; + case 0x60: return "getlex"; + case 0x24: return "pushbyte"; + case 0x25: return "pushint"; + case 0x26: return "pushtrue"; + case 0x27: return "pushfalse"; + case 0x20: return "pushnull"; + case 0xA0: return "add"; + case 0x73: return "convert_i"; + case 0x10: return "jump"; + case 0x12: return "iffalse"; + case 0x11: return "iftrue"; + case 0x15: return "iflt"; + case 0x16: return "ifle"; + case 0x13: return "ifgt"; + case 0x0C: return "ifnlt"; + case 0x46: return "callproperty"; + case 0x4F: return "callpropvoid"; + case 0x68: return "initproperty"; + case 0x4A: return "constructprop"; + case 0x75: return "convert_d"; + case 0x29: return "pop"; + case 0x2A: return "dup"; + case 0xAB: return "equals"; + case 0xAD: return "lessthan"; + case 0xAE: return "lessequals"; + case 0xAF: return "greaterthan"; + case 0xB0: return "greaterequals"; + case 0x96: return "not"; + case 0xA8: return "coerce_a"; + default: return String.format("0x%02X", opcode); + } + } +} diff --git a/tools/PatchHudABC.java b/tools/PatchHudABC.java new file mode 100644 index 00000000..aa02ea54 --- /dev/null +++ b/tools/PatchHudABC.java @@ -0,0 +1,617 @@ +import com.jpexs.decompiler.flash.SWF; +import com.jpexs.decompiler.flash.abc.*; +import com.jpexs.decompiler.flash.abc.avm2.AVM2ConstantPool; +import com.jpexs.decompiler.flash.abc.types.*; +import com.jpexs.decompiler.flash.abc.types.traits.*; +import com.jpexs.decompiler.flash.tags.*; +import com.jpexs.decompiler.flash.configuration.Configuration; +import java.io.*; +import java.util.*; + +/** + * Patches the HUD SWF ABC bytecode directly to add hardcore hearts support. + * + * This uses raw byte patching with manual jump offset fixups, avoiding the + * AVM2Code instruction list approach which fails to adjust existing jump + * offsets when bytes are inserted. + * + * Changes: + * 1. Adds m_bHardcore:Boolean instance variable to Hud class + * 2. Adds SetHardcore(Boolean) method + * 3. Modifies SetHealth to check m_bHardcore and offset heart frames + * + * Usage: PatchHudABC + */ +public class PatchHudABC { + + // AVM2 opcodes that have s24 jump offset as first operand + static final Set JUMP_OPCODES = Set.of( + 0x10, // jump + 0x11, // iftrue + 0x12, // iffalse + 0x13, // ifeq + 0x14, // ifne + 0x15, // iflt + 0x16, // ifle + 0x17, // ifgt + 0x18, // ifge + 0x19, // ifstricteq + 0x1A, // ifstrictne + 0x0C, // ifnlt + 0x0D, // ifnle + 0x0E, // ifngt + 0x0F // ifnge + ); + + public static void main(String[] args) throws Exception { + if (args.length < 2) { + System.out.println("Usage: PatchHudABC "); + return; + } + + Configuration.autoDeobfuscate.set(false); + + String inputPath = args[0]; + String outputPath = args[1]; + + System.out.println("Loading SWF: " + inputPath); + SWF swf = new SWF(new FileInputStream(inputPath), false); + + for (Tag tag : swf.getTags()) { + if (!(tag instanceof DoABC2Tag)) continue; + DoABC2Tag abcTag = (DoABC2Tag) tag; + ABC abc = abcTag.getABC(); + AVM2ConstantPool cp = abc.constants; + + // Find the Hud class + int hudClassIdx = -1; + for (int c = 0; c < abc.instance_info.size(); c++) { + Multiname mn = cp.getMultiname(abc.instance_info.get(c).name_index); + String name = mn.name_index > 0 ? cp.getString(mn.name_index) : ""; + if ("Hud".equals(name)) { + hudClassIdx = c; + break; + } + } + + if (hudClassIdx < 0) { + System.err.println("ERROR: Could not find Hud class"); + System.exit(1); + } + + System.out.println("Found Hud class at index " + hudClassIdx); + + InstanceInfo hudInstance = abc.instance_info.get(hudClassIdx); + + // === Step 1: Add m_bHardcore Boolean member variable === + + int strHardcore = ensureString(cp, "m_bHardcore"); + int mnBoolean = findMultinameByName(cp, "Boolean"); + if (mnBoolean < 0) { + System.err.println("ERROR: Could not find Boolean multiname"); + System.exit(1); + } + + // Find the private namespace for the Hud class (same as m_bWithered uses) + int privateNs = -1; + for (Trait t : hudInstance.instance_traits.traits) { + Multiname tMn = cp.getMultiname(t.name_index); + String tName = tMn.name_index > 0 ? cp.getString(tMn.name_index) : ""; + if ("m_bWithered".equals(tName)) { + privateNs = tMn.namespace_index; + break; + } + } + + if (privateNs < 0) { + System.err.println("ERROR: Could not find m_bWithered private namespace"); + System.exit(1); + } + + // Create QName multiname for m_bHardcore + int mnHardcore = addQName(cp, strHardcore, privateNs); + + // Add trait + TraitSlotConst hardcoreSlot = new TraitSlotConst(); + hardcoreSlot.name_index = mnHardcore; + hardcoreSlot.kindType = Trait.TRAIT_SLOT; + hardcoreSlot.type_index = mnBoolean; + hardcoreSlot.slot_id = 0; // auto-assign + hudInstance.instance_traits.traits.add(hardcoreSlot); + System.out.println("Added m_bHardcore member variable"); + + // === Step 2: Add SetHardcore method === + int strSetHardcore = ensureString(cp, "SetHardcore"); + + // Find public namespace (same as SetHealth uses) + int publicNs = -1; + for (Trait t : hudInstance.instance_traits.traits) { + if (t instanceof TraitMethodGetterSetter) { + Multiname tMn = cp.getMultiname(t.name_index); + String tName = tMn.name_index > 0 ? cp.getString(tMn.name_index) : ""; + if ("SetHealth".equals(tName)) { + publicNs = tMn.namespace_index; + break; + } + } + } + + if (publicNs < 0) { + System.err.println("ERROR: Could not find SetHealth public namespace"); + System.exit(1); + } + + int mnSetHardcore = addQName(cp, strSetHardcore, publicNs); + + // Create method info for SetHardcore(Boolean):void + int retTypeVoid = findMultinameByName(cp, "void"); + if (retTypeVoid < 0) retTypeVoid = 0; + MethodInfo setHardcoreMethod = new MethodInfo( + new int[]{mnBoolean}, retTypeVoid, 0, 0, null, null + ); + abc.method_info.add(setHardcoreMethod); + int setHardcoreMethodIdx = abc.method_info.size() - 1; + + // Find an existing instance method body to copy scope depth from + int refInitScope = 10; + int refMaxScope = 11; + for (Trait t : hudInstance.instance_traits.traits) { + if (t instanceof TraitMethodGetterSetter) { + MethodBody refBody = abc.findBody(((TraitMethodGetterSetter) t).method_info); + if (refBody != null) { + refInitScope = refBody.init_scope_depth; + refMaxScope = refBody.max_scope_depth; + break; + } + } + } + + // Create method body with raw bytes: + // D0 getlocal0 + // 30 pushscope + // D0 getlocal0 + // D1 getlocal1 + // 61 XX XX setproperty m_bHardcore (u30 multiname) + // 47 returnvoid + MethodBody setHardcoreBody = new MethodBody(); + setHardcoreBody.method_info = setHardcoreMethodIdx; + setHardcoreBody.max_stack = 2; + setHardcoreBody.max_regs = 2; + setHardcoreBody.init_scope_depth = refInitScope; + setHardcoreBody.max_scope_depth = refMaxScope; + + byte[] mnHardcoreU30 = encodeU30(mnHardcore); + byte[] shBytes = new byte[4 + 1 + mnHardcoreU30.length + 1]; + int pos = 0; + shBytes[pos++] = (byte) 0xD0; // getlocal0 + shBytes[pos++] = (byte) 0x30; // pushscope + shBytes[pos++] = (byte) 0xD0; // getlocal0 + shBytes[pos++] = (byte) 0xD1; // getlocal1 + shBytes[pos++] = (byte) 0x61; // setproperty + System.arraycopy(mnHardcoreU30, 0, shBytes, pos, mnHardcoreU30.length); + pos += mnHardcoreU30.length; + shBytes[pos++] = (byte) 0x47; // returnvoid + + setHardcoreBody.setCodeBytes(shBytes); + abc.bodies.add(setHardcoreBody); + + // Create trait for SetHardcore method + TraitMethodGetterSetter setHardcoreTrait = new TraitMethodGetterSetter(); + setHardcoreTrait.name_index = mnSetHardcore; + setHardcoreTrait.kindType = Trait.TRAIT_METHOD; + setHardcoreTrait.method_info = setHardcoreMethodIdx; + hudInstance.instance_traits.traits.add(setHardcoreTrait); + System.out.println("Added SetHardcore method"); + + // === Step 3: Patch SetHealth raw bytes === + for (Trait t : hudInstance.instance_traits.traits) { + if (!(t instanceof TraitMethodGetterSetter)) continue; + Multiname tMn = cp.getMultiname(t.name_index); + String tName = tMn.name_index > 0 ? cp.getString(tMn.name_index) : ""; + if (!"SetHealth".equals(tName)) continue; + + TraitMethodGetterSetter tm = (TraitMethodGetterSetter) t; + MethodBody body = abc.findBody(tm.method_info); + if (body == null) continue; + + System.out.println("Patching SetHealth method body..."); + patchSetHealthRawBytes(body, mnHardcore); + + // Bump max_stack if needed + if (body.max_stack < 3) body.max_stack = 3; + break; + } + + abcTag.setModified(true); + break; + } + + System.out.println("Saving to: " + outputPath); + try (FileOutputStream fos = new FileOutputStream(outputPath)) { + swf.saveTo(fos); + } + System.out.println("Done!"); + } + + /** + * Patches SetHealth by inserting raw bytes after the setlocal 7 instruction. + * + * The patch implements: + * if (m_bHardcore) { + * if (frame >= 11) frame += 6; // wither -> hardcore normal + * else frame += 14; // normal/poison -> hardcore + * } + */ + static void patchSetHealthRawBytes(MethodBody body, int mnHardcore) { + byte[] code = body.getCodeBytes(); + + // Find "setlocal 7" (0x63 0x07) after byte offset ~150 + int insertAt = -1; + for (int i = 150; i < code.length - 1; i++) { + if ((code[i] & 0xFF) == 0x63 && (code[i + 1] & 0xFF) == 0x07) { + insertAt = i + 2; // insert AFTER setlocal 7 + break; + } + } + + if (insertAt < 0) { + System.err.println("ERROR: Could not find setlocal 7 in SetHealth bytecode"); + System.exit(1); + } + System.out.println("Inserting patch at byte offset " + insertAt); + + // Build the patch bytes manually. + // Layout with byte sizes: + // + // D0 getlocal0 (1) + // 66 XX.. getproperty m_bHardcore (u30) (1 + u30len) + // 12 YY YY YY iffalse (4) + // 62 07 getlocal 7 (2) + // 24 0B pushbyte 11 (2) + // 15 ZZ ZZ ZZ iflt (4) + // 62 07 getlocal 7 (2) + // 24 06 pushbyte 6 (2) + // A0 add (1) + // 73 convert_i (1) + // 63 07 setlocal 7 (2) + // 10 WW WW WW jump (4) + // --- add14 block --- + // 62 07 getlocal 7 (2) + // 24 0E pushbyte 14 (2) + // A0 add (1) + // 73 convert_i (1) + // 63 07 setlocal 7 (2) + // --- end --- + + byte[] mnU30 = encodeU30(mnHardcore); + int mnU30Len = mnU30.length; + + // Calculate block sizes for jump offset computation + // iffalse is at offset: 1 + 1 + mnU30Len = (2 + mnU30Len) from patch start + // iffalse instruction ends at: (2 + mnU30Len) + 4 = (6 + mnU30Len) + // + // After iffalse: getlocal7(2) + pushbyte11(2) + iflt(4) = 8 bytes + // iflt is at offset: (6 + mnU30Len) + 4 = (10 + mnU30Len) from patch start + // iflt instruction ends at: (10 + mnU30Len) + 4 = (14 + mnU30Len) + // + // add6 block: getlocal7(2) + pushbyte6(2) + add(1) + convert_i(1) + setlocal7(2) + jump(4) = 12 bytes + // jump is at offset: (14 + mnU30Len) + 8 = (22 + mnU30Len) from patch start + // jump instruction ends at: (22 + mnU30Len) + 4 = (26 + mnU30Len) + // + // add14 block starts at offset: (26 + mnU30Len) from patch start + // add14 block: getlocal7(2) + pushbyte14(2) + add(1) + convert_i(1) + setlocal7(2) = 8 bytes + // Total patch size: (26 + mnU30Len) + 8 = (34 + mnU30Len) + + int add6BlockStart = 6 + mnU30Len; // after iffalse instruction + int ifltEnd = 14 + mnU30Len; // after iflt instruction + int jumpEnd = 26 + mnU30Len; // after jump instruction + int add14BlockStart = 26 + mnU30Len; // start of add14 block + int patchEnd = 34 + mnU30Len; // end of entire patch + + // iffalse offset: skip from end of iffalse to end of patch + // s24 = target - instructionEnd = patchEnd - (6 + mnU30Len) + int iffalseOffset = patchEnd - (6 + mnU30Len); + + // iflt offset: skip from end of iflt to add14 block start + // s24 = add14BlockStart - ifltEnd + int ifltOffset = add14BlockStart - ifltEnd; + + // jump offset: skip from end of jump to end of patch + // s24 = patchEnd - jumpEnd + int jumpOffset = patchEnd - jumpEnd; + + // Build patch byte array + byte[] patch = new byte[patchEnd]; + int p = 0; + + // getlocal0 + patch[p++] = (byte) 0xD0; + + // getproperty m_bHardcore + patch[p++] = (byte) 0x66; + System.arraycopy(mnU30, 0, patch, p, mnU30Len); + p += mnU30Len; + + // iffalse + patch[p++] = (byte) 0x12; + writeS24(patch, p, iffalseOffset); + p += 3; + + // getlocal 7 + patch[p++] = (byte) 0x62; + patch[p++] = (byte) 0x07; + + // pushbyte 11 + patch[p++] = (byte) 0x24; + patch[p++] = (byte) 0x0B; + + // iflt + patch[p++] = (byte) 0x15; + writeS24(patch, p, ifltOffset); + p += 3; + + // getlocal 7 + patch[p++] = (byte) 0x62; + patch[p++] = (byte) 0x07; + + // pushbyte 6 + patch[p++] = (byte) 0x24; + patch[p++] = (byte) 0x06; + + // add + patch[p++] = (byte) 0xA0; + + // convert_i + patch[p++] = (byte) 0x73; + + // setlocal 7 + patch[p++] = (byte) 0x63; + patch[p++] = (byte) 0x07; + + // jump + patch[p++] = (byte) 0x10; + writeS24(patch, p, jumpOffset); + p += 3; + + // --- add14 block --- + // getlocal 7 + patch[p++] = (byte) 0x62; + patch[p++] = (byte) 0x07; + + // pushbyte 14 + patch[p++] = (byte) 0x24; + patch[p++] = (byte) 0x0E; + + // add + patch[p++] = (byte) 0xA0; + + // convert_i + patch[p++] = (byte) 0x73; + + // setlocal 7 + patch[p++] = (byte) 0x63; + patch[p++] = (byte) 0x07; + + System.out.println("Patch is " + patch.length + " bytes, inserting at offset " + insertAt); + + // Build new code with patch inserted + byte[] newCode = new byte[code.length + patch.length]; + System.arraycopy(code, 0, newCode, 0, insertAt); + System.arraycopy(patch, 0, newCode, insertAt, patch.length); + System.arraycopy(code, insertAt, newCode, insertAt + patch.length, code.length - insertAt); + + // Fix all existing jump offsets that cross the insertion point + fixJumpOffsets(newCode, insertAt, patch.length); + + body.setCodeBytes(newCode); + System.out.println("Patched SetHealth: " + code.length + " -> " + newCode.length + " bytes"); + } + + // === Helper methods === + + static int ensureString(AVM2ConstantPool cp, String s) { + for (int i = 1; i < cp.getStringCount(); i++) { + if (s.equals(cp.getString(i))) return i; + } + return cp.addString(s); + } + + static int findMultinameByName(AVM2ConstantPool cp, String name) { + for (int i = 1; i < cp.getMultinameCount(); i++) { + Multiname mn = cp.getMultiname(i); + if (mn.name_index > 0 && name.equals(cp.getString(mn.name_index))) { + return i; + } + } + return -1; + } + + static int addQName(AVM2ConstantPool cp, int nameIndex, int nsIndex) { + for (int i = 1; i < cp.getMultinameCount(); i++) { + Multiname mn = cp.getMultiname(i); + if (mn.kind == Multiname.QNAME && mn.name_index == nameIndex && mn.namespace_index == nsIndex) { + return i; + } + } + Multiname mn = new Multiname(); + mn.kind = Multiname.QNAME; + mn.name_index = nameIndex; + mn.namespace_index = nsIndex; + return cp.addMultiname(mn); + } + + /** Encode an integer as AVM2 u30 (variable-length unsigned 30-bit integer). */ + static byte[] encodeU30(int val) { + ByteArrayOutputStream buf = new ByteArrayOutputStream(5); + do { + int b = val & 0x7F; + val >>>= 7; + if (val != 0) b |= 0x80; + buf.write(b); + } while (val != 0); + return buf.toByteArray(); + } + + // === Jump offset fixup methods (from TestIsolate.java) === + + /** + * Scans the bytecode for jump instructions and adjusts their s24 offsets + * to account for insertSize bytes inserted at insertPos. + */ + static void fixJumpOffsets(byte[] code, int insertPos, int insertSize) { + int i = 0; + while (i < code.length) { + int opcode = code[i] & 0xFF; + + if (JUMP_OPCODES.contains(opcode)) { + int jumpInstrEnd = i + 4; + int offset = readS24(code, i + 1); + + boolean jumpIsBeforeInsert = (i < insertPos); + boolean jumpIsAfterInsert = (i >= insertPos + insertSize); + + if (jumpIsBeforeInsert) { + int origTarget = jumpInstrEnd + offset; + if (origTarget >= insertPos) { + writeS24(code, i + 1, offset + insertSize); + System.out.println(" Fixed forward jump at " + i + ": " + offset + " -> " + (offset + insertSize)); + } + } else if (jumpIsAfterInsert) { + int origJumpEnd = (i - insertSize) + 4; + int origTarget = origJumpEnd + offset; + if (origTarget < insertPos) { + writeS24(code, i + 1, offset - insertSize); + System.out.println(" Fixed backward jump at " + i + ": " + offset + " -> " + (offset - insertSize)); + } + } + + i += 4; + } else { + i += instructionSize(code, i); + } + } + } + + static int readS24(byte[] code, int pos) { + int b0 = code[pos] & 0xFF; + int b1 = code[pos + 1] & 0xFF; + int b2 = code[pos + 2] & 0xFF; + int val = b0 | (b1 << 8) | (b2 << 16); + if ((val & 0x800000) != 0) val |= 0xFF000000; + return val; + } + + static void writeS24(byte[] code, int pos, int val) { + code[pos] = (byte) (val & 0xFF); + code[pos + 1] = (byte) ((val >> 8) & 0xFF); + code[pos + 2] = (byte) ((val >> 16) & 0xFF); + } + + /** Returns the byte size of the instruction at the given offset. */ + static int instructionSize(byte[] code, int pos) { + int op = code[pos] & 0xFF; + // No-operand instructions (1 byte) + if (op >= 0x01 && op <= 0x0B) return 1; + if (op == 0x1E || op == 0x1F) return 1; + if (op >= 0x20 && op <= 0x23) return 1; + if (op == 0x26 || op == 0x27) return 1; + if (op == 0x28 || op == 0x29 || op == 0x2A) return 1; + if (op == 0x2B) return 1; + if (op == 0x30) return 1; + if (op == 0x47 || op == 0x48) return 1; + if (op >= 0x57 && op <= 0x5A) return 1; + if (op >= 0x70 && op <= 0x78) return 1; + if (op == 0x79 || op == 0x7A) return 1; + if (op >= 0x80 && op <= 0x85) return 1; + if (op >= 0x87 && op <= 0x99) return 1; + if (op == 0x9A) return 1; + if (op == 0x9B || op == 0x9C) return 1; + if (op >= 0xA0 && op <= 0xB4) return 1; + if (op >= 0xC0 && op <= 0xC7) return 2; + if (op >= 0xD0 && op <= 0xD7) return 1; + + // Opcodes with s24 operand (4 bytes total) + if (JUMP_OPCODES.contains(op)) return 4; + + // Opcodes with u30 operand + if (op == 0x24) return 2; // pushbyte (u8) + if (op == 0x25) return 1 + u30Len(code, pos + 1); // pushint + if (op == 0x2C || op == 0x2D) return 1 + u30Len(code, pos + 1); // pushstring, pushint + if (op == 0x2E || op == 0x2F) return 1 + u30Len(code, pos + 1); // pushuint, pushdouble + if (op == 0x31) return 1 + u30Len(code, pos + 1); // pushnamespace + if (op == 0x32) return 5; // hasnext2 + + // Single u30 operand instructions + if (op == 0x40) return 1 + u30Len(code, pos + 1); // newfunction + if (op == 0x41 || op == 0x42) return 1 + u30Len(code, pos + 1); // call, construct + if (op == 0x43) return 1 + u30Len(code, pos + 1) + u30Len(code, pos + 1 + u30Len(code, pos + 1)); // callmethod + if (op == 0x44 || op == 0x45) return 1 + u30Len(code, pos + 1) + u30Len(code, pos + 1 + u30Len(code, pos + 1)); // callstatic, callsuper + if (op == 0x46) return 1 + u30Len(code, pos + 1) + u30Len(code, pos + 1 + u30Len(code, pos + 1)); // callproperty + if (op == 0x49) return 1 + u30Len(code, pos + 1); // constructsuper + if (op == 0x4A) return 1 + u30Len(code, pos + 1) + u30Len(code, pos + 1 + u30Len(code, pos + 1)); // constructprop + if (op == 0x4C) return 1 + u30Len(code, pos + 1) + u30Len(code, pos + 1 + u30Len(code, pos + 1)); // callproplex + if (op == 0x4E) return 1 + u30Len(code, pos + 1) + u30Len(code, pos + 1 + u30Len(code, pos + 1)); // callsupervoid + if (op == 0x4F) return 1 + u30Len(code, pos + 1) + u30Len(code, pos + 1 + u30Len(code, pos + 1)); // callpropvoid + + // Single u30 operand + if (op == 0x53) return 1 + u30Len(code, pos + 1); // applytype + if (op == 0x55) return 1 + u30Len(code, pos + 1); // newobject + if (op == 0x56) return 1 + u30Len(code, pos + 1); // newarray + if (op == 0x58) return 1 + u30Len(code, pos + 1); // newclass + if (op == 0x59) return 1 + u30Len(code, pos + 1); // getdescendants + if (op == 0x5A) return 1 + u30Len(code, pos + 1); // newcatch + if (op == 0x5D || op == 0x5E) return 1 + u30Len(code, pos + 1); // findpropstrict, findproperty + if (op == 0x60) return 1 + u30Len(code, pos + 1); // getlex + if (op == 0x61) return 1 + u30Len(code, pos + 1); // setproperty + if (op == 0x62) return 1 + u30Len(code, pos + 1); // getlocal + if (op == 0x63) return 1 + u30Len(code, pos + 1); // setlocal + if (op == 0x65) return 1 + u30Len(code, pos + 1); // getscopeobject + if (op == 0x66) return 1 + u30Len(code, pos + 1); // getproperty + if (op == 0x68) return 1 + u30Len(code, pos + 1); // initproperty + if (op == 0x6A) return 1 + u30Len(code, pos + 1); // deleteproperty + if (op == 0x6C) return 1 + u30Len(code, pos + 1); // getslot + if (op == 0x6D) return 1 + u30Len(code, pos + 1); // setslot + if (op == 0x86) return 1 + u30Len(code, pos + 1); // astype + if (op == 0x80) return 1 + u30Len(code, pos + 1); // coerce + + // debug (0xEF): special format + if (op == 0xEF) { + int off = 1; + off += 1; // debug_type (u8) + off += u30Len(code, pos + off); // index (u30) + off += 1; // reg (u8) + off += u30Len(code, pos + off); // extra (u30) + return off; + } + + // lookupswitch (0x1B): s24 + u30 count + (count+1) s24 offsets + if (op == 0x1B) { + int off = 4; // opcode + s24 default + int count = readU30(code, pos + off); + off += u30Len(code, pos + off); + off += (count + 1) * 3; // s24 offsets + return off; + } + + // Default: assume 1 byte + return 1; + } + + static int u30Len(byte[] code, int pos) { + int len = 1; + while ((code[pos + len - 1] & 0x80) != 0 && len < 5) len++; + return len; + } + + static int readU30(byte[] code, int pos) { + int result = 0; + int shift = 0; + for (int i = 0; i < 5; i++) { + int b = code[pos + i] & 0xFF; + result |= (b & 0x7F) << shift; + if ((b & 0x80) == 0) break; + shift += 7; + } + return result; + } +}