From e151090ca611e632b6fde8b0d36813d32e9d190a Mon Sep 17 00:00:00 2001 From: nishikawa_takeshi Date: Thu, 21 Aug 2008 08:10:35 +0000 Subject: [PATCH] =?UTF-8?q?=E3=83=9E=E3=82=B9=E3=82=BF=E3=82=A8=E3=83=87?= =?UTF-8?q?=E3=82=A3=E3=82=BF:MRC=E3=82=A8=E3=83=A9=E3=83=BC=E8=A1=A8?= =?UTF-8?q?=E7=A4=BA=E7=94=A8=E3=82=A6=E3=82=A3=E3=83=B3=E3=83=89=E3=82=A6?= =?UTF-8?q?=E3=82=92=E8=BF=BD=E5=8A=A0=E3=80=82MRC=E3=82=A8=E3=83=A9?= =?UTF-8?q?=E3=83=BC=E6=83=85=E5=A0=B1=E3=82=AF=E3=83=A9=E3=82=B9=E3=82=92?= =?UTF-8?q?=E5=AE=9A=E7=BE=A9=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@2219 b08762b0-b915-fc4b-9d8c-17b2551a87ff --- .../tools/MasterEditorTWL/MasterEditorTWL.ncb | Bin 11078656 -> 11078656 bytes .../tools/MasterEditorTWL/MasterEditorTWL.suo | Bin 36352 -> 37376 bytes .../MasterEditorTWL/Debug/BuildLog.htm | Bin 14618 -> 15654 bytes .../MasterEditorTWL/MasterEditorTWL/Form1.h | 280 ++++++++++++------ .../MasterEditorTWL/MasterEditorTWL.vcproj | 14 + .../MasterEditorTWL/MasterEditorTWL/srl.cpp | 25 +- .../MasterEditorTWL/MasterEditorTWL/srl.h | 72 ++++- 7 files changed, 293 insertions(+), 98 deletions(-) diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL.ncb b/build/tools/MasterEditorTWL/MasterEditorTWL.ncb index d16ccdeb962aeb1d7a700695210177e4d645698d..aa075b08d60e8de56a533dcb40576e8de174de34 100644 GIT binary patch delta 135154 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 delta 119168 zcmdSC1-KN))-~K!(>>EO?K2E^umk5D+}+(B0tAQPF2Nx*?rsMNE_xwNmS@f`Kq@}uQ@3nU|1Ew#M1^^Q>`I7Yz_@BNpYl`0$ zCss4%-#p1)rUVze`(;!D*M|>eV)2}l2T7?&;<95ia)!_9xZE;>pST$-AZO>jrp7 z(1h*rfg``l8|Qn84ouf9eN@spc@%8m9V(sexf? zf?;ZKn3`~ynrN7sc$k`Gn3{B$8Zk^wHcU-EOieLNO*u?WHB5~hrluaIrukltDtRSw zdF)nyKm?*DH2U!2)|(M};+NH8dp?M|9oy<*)auxjkD|8Q1nq=w&YDbc;gv#Fs?pwg zlL-|6YCy7zRaZ#-^*q{396lq0zg{R&?u|s3}MF@A(Yi!>XVahlV*o%HNw!pKfEYfFqt;cqF7L`(ZD+@yN z*on`gBCOg?1mPw-7X0}lAP5O#w?B*OyD{J6sDpHg`Zh}Z=4F()L5;4KFg8`G=xp}Q z7(uuN+y?FdcY)u5d%%6*0q_ub1Uv?w08fEuz;oaQ@Dg|hyawI?Z-IBfd*A~gq{XQN zDBuD_Kmy!p1zYgog$#HB3-AL0AOR2r5(0^U#6S`tDG&i91Cj$NfRsQgAQDIoqyeIU zXdnhi3#0?m0~vsfKqeq_T6Fp>c###z2IK&80=a&%0Lwxe^mvl0o8#TKuzE?pcYUYr~`Zs)CKAR z^??RJL!c4R7-#}C1-<~90nLFHKue$%&>Cn1v<2D$?SY|yJq&*h2SxxRflff>L|;A>zOFdLWy%mwBF^MM7xLSPZFm|g#G@L~zD z6j%l<2UY+pfp3BDfK|Y1U=6SqSO=^JHUQrP8-Y#0W?&1j71#!B2X+8EfnC6EU=Q#E zuou|JuK#|#H~<_34grUOAAuvlQQ#PG95?}-1Wo~`fiu8Qz|X)hz**oN@GI~ea2dD) zTm`NH*MS?rP2d)A8@OZRue-qSz&+qT@BnxSJOUmAPk^VuGvE*4Iq(8_3A_Sc18;!0 zz&qeQ@Bt9g;dTQ=Kmy!=2ao|T-~((0f2n{5=zsy3fCc!00FVF(0ttacKw=;XkQ9gj zk^#wq6hKNK6%Yxe2GRggKr|2oqy^Fe>46OCaQ!plMJ6CKkOjyJWCOATIe?r%E+99M z2gnQL1AYXK07rpiz;WONa1uBLoCeMSKLI}jzW`@}bHI7v0&p=MuKy*x_!amKxC~qY zt^(J9>%a}*CU6V54cr0l0>16d>u6($(z4axSZa{aS z2hcP2Rfp&Z_da}hzc;q!!=(i>j|M#!7zd081_MKYUO;c44=?~22n>on*&#Yn!bW)6 z7#NSQnE*@#rg~$ScZg1*O~dP0UXOh5(* z1F)TTDnclUttile=n&us3InlS?BLULevmK-+d65J{rUb3oF6O<#`bnh9G{W%LxdsN zZgcRN7;lrI!ce?85*_z}%=`nxgkjiTb?{j@KU^4&?F$E=mGdKn5!h;uA7Jic0y0t< ziEZ7V;|?r4=SK;nu(b<08glT4(ZXnK-~AN#ft;KlBaFe;bi6+o=f?_Tu}$URb8~*2 z02fI(;rO0BoF6ZY$9B>g{{1#T)p>ct1YrWUO+pQv&&T2cMtwlY~jwMmzWd zoS!UA#x|dWFUa{R!W3-FIru^t@o+BCQQTj7YAR2^RYrKw#6NN zqA2I53)8V(@8FAZeugju+jI`TIOk^yGx7Vv+>UYAz65XBE^NnkLi;$Lb;<-}hp+?N zMjhh#Qk>r@?8J6yn>fBS=XVLaupRDre;Lm27ItG>47~lZx0mG&dxSmMme?0}CdzUC zyl@`dqPybw@|?dQT);MY*|;CB!1;^9MQpP<_==prBwWI_cpPsJti&6B6@JBb^6t1F zU>!#{(H1@2>_f0l6w%#r6xw0aWL_eNDKA z7h5yN9YGD=a9y~LZEpu(lk+!(8`v&ze9>o|zbV|r_In3ki}SaHTiEV*@U=OATeyww zPqw3>4sW<4+`;y`ga4fKcZIvyzI5<)Isd!xJGMT@5!d7VJ>ed+oZ2LI)Mx1{nJi>O=&bS|F%=yQ{V{8{W_$Hix zB0Ryii-T{9@dwxDsqhpHH60CK@DDr_o?-jKaRkjc|A+7gwwoP%bIv~(o@1MOL);Fv z;QR~W1-3IB?{CTZm%>YS|NpW+?gOoO!zsf;=GHv!0V19?#y|Sh~RfS-fwr|4LZ@$aMsb#mGcHMz)vk6_rqUu-XtdYB@VtD z=PhD^@8x9cufI(&lmV8cwNx3b@Hq|NHjr<<8A%{7jIAnHLij4BIgz82cLcs8^D6ZC;0xt zvmFZ(ui(XY@0hrgbi#>(D_GDMX^7YS*~S#=am(qJ$`H-P7Vez>4hBg&7PJU+SH``c9Z-;@7t&+<`e+=_&Onf45Hhe1o%>i^13P6wl2OQr zZ8-;Ta6Xfe3ETb--sF5{Av3n~96Y;pL6Swtf~|2p?)&|m&njfab{u?-KPNO?LVO^b zkPX|4jt?Z@e0Cu_wvp-L&QOr^IfNY8?r^+6A?I@nIkCOq;1h8^myiqFTqpkAA$wqA z-jG|!jcw_;hJmcJ1xX$u54Lq3d{WNm74l+x!of#yKA(^e+old5BpK)P3;D6Fci_(- z9+;f-b^)OPUhFL#cVw)S1W7@mAh!1$d`iw25(;7a*1@OZd|{z5+d6J>)~AA`h)@LE zZUy7MKQ-t33VpGCW;?u`G`yjo&<|Ue;|N$M43e*eudq$%;G;R;p9_HL9DEGtZPvGi z5svR?oi<1Y2m`SF=(+O=jrH2#Ke+Be62I#nB=NiMK@z{~9*o~}xADXAyY4{}zv~_( z@w@K9e{kJ{B;>mP)pHLL=DFh>{nd33lK5TsAc@~~50dy@_aOPib;n3b2eM8ZBo5D= zT_e`OdTo%z@45#`{H}YD#P7NXNqnw5`~JUs?l$kWB!1UDNaAV2TA;{dywoBcHsy9>beI>oamDTWyY4{}zv~_( z@w@Ip@~P|2&Rhfj!%oi~_aAF$$Q$B!-Gd~4*F8w$cin>|Ue_I+E*{UF-Ty%nzv~_( z@w@Ip62I#nB=NiMLBd@3zkBXM@=CB@q2aHtdyvHMx(7-8u6vNg@45$x!*$2+urtj( z_aOPxbGQH0gF5hr_+9rP^W5Q8{?&C4!f}t!bq~UE|EufXg@6BFJ$DFN%ykdKagWb+ z55jSe&vg&NagWb+55jSe&vg&NZ;#J&5880t<8$4EaNOf_-Ggx46X8tMaKsFK_yHs( zNx|>l9yg#d2O~%#U~tzr#qrF)2$Ezl1eDty4a~s^lH@Rq)egQt=Tndr;43-!Q0Gla zQi9Lv*r5UZ{gEURyvyF-W(vUQ0xSAo(RT|9sXc7(H)1}BpvwFJ>tH9c*y@xPtv1dhr|CL!9P%#6b8R$ zS=<+m^QUUxZ#}7>4d___b{AUh+BIhfSO5hWeb_iONctd4U z84Z;kr)VC(J7p-L27`n=HRDtz9y*&evd;Ko5uOi2uu9lk9)s8FqSve zA$8D@vPIkvOy_(<(hz*Y)^Yp{&Nm{Bz-M;w%)tnf#xP_s9sJjvZ$g@YukYYzao%o9 znxdhrqhU60_=2!7cBF%!!}(^U8Th5G;&x~*=bMw};3qryd7N)ST7d8G;OBF`C20x1 zjqPYyz#CeTR%j^W;1_bfHE9igaLc$KUc~t}qz(9q4t_D`+mg26mpS-vINy%61HU`W zbN_z{Z)i{2qv4$614}vIfph@>*ugL3d`Hp|yw|a#%Q@ePbOJxxaVb}DzBB0zex&0r zTge2iAn5{wM(DV0zU3e2O1gr-kU#E-zvKLuQ+*K@uv=?i|fgWtgUexx7x z1rA;Md(MAFz5>62@oWfX)8a83+D%t zf#6rQjXSWdoF7C6fluXlzrBq&3?_roFv#(N?VKM%hJY{GF7AtVaDFHm3jRmO`*(7F z7#RjWqvQR%I6s^W2cOWv@8GpAcEE&t*@3@WkbAB8d2R^cu9d~30c*A%y9u4yxUv!Z36UYSc?;N>@L!6&T zCW1fic>iI}Pa>1RUvcn1a(*(I41U7L17QCD5#BI`OhH2-M`t<8`B)MQK8K@o9pn6T zG97$z2Y;ONGsq0^mmNoZg7Y)UOz?j=_>&&@P0f+I74SS zzkn0_+bwI0_T^ICE(NX@c{Q9yZtWmhNWaF8j3jv zic6edMwWqp?BIXp{Bp7!eBxel2k;x`SCAFphxU%+FLQn+SqVO!LnFGv?*AY;3=@Ri zKtSd@G~gQNkCKbvjsa=H{0+`uCAYyP9}(x6+~oWnatC~72Y-w6zmwm=UvVg+w>f{0 z*!R%z$kA|zH{2)p!GCb@cRBxnJOJOeNZgVA&iRMrA^7EE<96sC=O2+r;MqZx#J|~@ zzR&sR_uF&;i-3Y8t5yRIqZ~i*hV!+wCgA5W{Vx0i?>OH=`vZKl zLUBCB5h2vlJUWC)$NO0z0^UY1!!qEFA=ehqsAR}*3 zt#xRaRV?lUSvbGZItPA*gU`c@1#*H<$p)4%&%9lz~X@XUt{lJbE{;NKNZCY1g7Ma=gLl4^mPXozC>clZaG&lV(g0`lPyq}Y@lGL4OG5}jF&O%)mSa^vcRd33U|&x7DB5mWlly z34{8`wBYB2%~nG6K8jam&Ckpam|J~#-Igq&NxW0N)4Z|X>E0RMncgF6Ld0xE(3VqP ztF+gKYE!kv+6HZ(_LFv7d!rFOxt>EWsei7w(fjD*^ac7FeWl^XcXl`Xny1X4%}eGL z^O||fyknd9&4=bw^AGct`NsTU5=*p_TWPF*)&Og`HQE|$O|&LkvDOT0wl&vUXf3vu zTPv+qR;oa@KqFb=yIs^AoFbXv!S1Zq)@Wp?PU(`cf-vW(wp96b)!M{TNeGfP{&07`;f_ zmk)j6OSOHK(5r)LcZ_K4Jprwj=CRgVC$A*rIseAyc>j8TqwxC72lSwx zNKc|4Y-I|C+59vZwKzjjUNameGb2%4G6@AEQ&0mk4RswmP)e~I)eZqftexR?4u+#Q z08RP$$_8gC0a|0pN&13j zP>LzVl@dxxrIb=yDWjBC$|>cQ3Q9$#l2TcDuY6Fl!STgdi=vJ4^ctNcJ(ZqGe@M@z z7t%}Vl2S$OsxDEJU_4BQ_oPxYs+rZSwpvInq83w2s-@Mk>PzjN=F%VQi44CPG!vN- zW~7gbDHJN%4T)5wwVNe3;U58WE#Ckv&dKEtMWDZx_m>vDc_RsDPNlij63OS`*SiY&)g^eUgaGBJFY@FoMGxp zb+x)p-KFkTkHcQT8fcBQm)c|fss2oVslU}F!($t&p&J1sXv7%lj7&xa<7>mjpV0BA zFw=#PKcAV;EE_%t4b3)YTeF?n-t1s@G&`A{%`RqF^Gmav+0*QA+U5XrpgF`GY7R4p znR`By);6)tqL=n$t~thWWKQ%bab_G3T1|%=zX5bD_D& zTx>2imzyiiZ_U-_8gsq5!TjFbXl^n$n_JAS<~DP?xx?IP?lO0qd(0oqz2-i1zj?qs zXdW_;m`BZH=5h0cdD1**o;NR;mgTnsRst(%CA1P*iLE47QY*qrW~H=ZthBb3&Ps1( zvNBs)tgKcxE4!7$%4y}Ya$9+SOh_23td{q1Hz0q9ytx{Zan4;j130MQOv3_h+N!HFT=tZIbb{_*`<1mQ^Mw6O~EIWMzsnRbjoIjS%czmz0}I zCrqg9-X`nPz8YzvHoCqLTA09>a z(iR zY(8u`Yy)gN>@e&!>{r-r*kjmh7!|24s<0p|B`gChC#(>x46FvM5v&!gGpsjk5NtGT z3T!s)8`vt?CfIJ+Vc2QdMc6Ia6WBYLEXh&;mI9U@mK|0=vI|HhVU=LDV2xm{V4Y#T zVS`|6U|V5(VJBecVAo*xV9#M6U=i*JcQh@!$>*cY%iur9FPuz|2q zwtJL&GHe!XF>D9yAnYXUJnSm$4(t)^1?)Xc@<<*PmH?Iv76r=;%L6M4D+j9%s|#xa zYYpoH>jxVSn*y5y`vzvO@vQM|h3$u(f?b5&f<1w~fr+vxYp{f{6tEarE?8yQ=dcd2 zp0EM1QLxFduVIT|t6-a8yI_Z5r(hRh*I^G~Z{#<&?Do37sbQI5xnV_MWntA|bzxt? z+QGWPzJd*djfYK#&4(?At%GfY?SmbMU4-3+J%YV~xqL343QG&i4l4jF39IC@EBR`{ z8p2w_I>CCw2E)d}Vqx=O%V6tZJ75Q4Ct>GdcVJIp?_iQ5DH<#hEHx}EtN^S6>@!$H zSW8$ZSTEQ>*l1fBjbUQ4G7I(%Y#nSnY`-!O!pd6QsTokKk{R_R*-`S53soF>P-)Ru z=!a^B{)p}d2m?|1I~^6BGck!@MA_mERQTOS(cWDY;@v|H-9wa{y+Wnf8{sYLyxyY# z$v~@@^9-wqHPnZ4PC%CB)L!5J0;^`s)pKt}hg~ z{t(LsL7y54iDx22k{Qr9Wd6Vc=}HBCdKXf%zX zX=yr|o))FWXz?<%BrQuT(JHhmtxZ3tb!k0XpEjV4Xk*%hwx(@qJKCOhpdD#f`Xxm) zNe9wFbTA!CN6=ApG#y7L&`ESkZ1&yJN$k~hE!{xBryJ=ex`l3~JLqn@j~=2&=m~m? zo~A$1pXoVzp1xd}h>yUgzp#I%f2V&ryjjF{@biYzJ2aD=Sx0yp4VvSIX+P?^f^jP6Xh@3YwMF~$c&4&0~|dLwgpT0quiZyZk! z)2qH$zSq7tzPIQs?|r7$0->7=ZMoFkYF;&Gh6p}}r!%u-t}kqsfaOGOAN%whp&i}i z&fv-D$%Oknizln+nz0UvALa)oC%x%-&v%|x9(y(J<+Yx5p7ow4#uvtTGq05sSz*NK z=m-sHBKHFKLiZvJGT*qDxE~n{&5G8sj3Ga^gYo?&o!7R0pk7zNmBE$MRnS$^Rmt_4 ztD&o!jn6OV7p@O3pBNC6+hRH~n^-_BB~}v~ zh%Lm9Voz~^I8vM>el0E%zZJh1cZvtalj3>thWJQ)Bf2F^N+zY1vP$`+;!*{vrqn=c zA$62`N&}=-(q?IobWHjMF6mu3lJBG>?ld^jIo*ZarQ8+WHQaUGP28>Ao!mX$wtIwo zqI;&>Ug+ND-tRu{KI^{hzU6-4{=@y&?eh3Meos`tnIC+~rdp##S=RG$(k36qDR955!axyszeV~F|TW%|Nm;1}Z(^?l7TANTYP^o{mS@y+pl<6Gm~=G%{% z{;cno?=kugRTL$tq*5{~`QUojfN#)D>7evb`YXfXZp>8d17}-Np;m4QwmSW6X?pxuT ztF{;wawTlF#e~qSLgqXaXEH~{AYamsIG3G0U2IQR&zGJOa;gfUFWsTe!=1na%em@2 z=%UQY9!Cz*E51iKo+lVKpZWgq?KL}E->;T%-Hu75K_==Vs(j>lSIN2>Q-na6#_H8knTXoJv2ne(heC4BA&>^$IImjX9lvYYD)GFFj zZK1we-=-hXPwAKR+qyqp=vQ(G9-0z&NG(@wctoGuuEDB5eC(UlNmWC~ep{VXBlJqu zlAUIypwLuM%$5vk;1o#hrbbpa6^*35Xm8qw_N8CZ{&XIs5_Z`hkqGL+t(5@&Q9?11 zm{?3A4lvVM^Po<#OB`XW@V^NUMGpkK5nbWlhdbZ^9Ed~i!|ppqUudfAjkV;wiZ^_W zQ-wmb25z>`;P2Fy>PYjYx@s8&&UN*b`X>Dc{g{4Ezpn2s5Q=NN`hW9ZhV6wc%ywxJ zSw(+F7rySj;l1g-g-P~~H;opfO*$4~^RX(6;G?NAV03bIc6EVs_@!%r+Ba3G+tl*+ zh2+V0NOD#8_gx;rFIFelG}l^JRZkty2zjD>P(Ckz4uP6_UgbPn$V1w$lD+(-WR1V^__O$sgFxW9eOp zruQJ8zJR&%QtYbz(Ip!SD1C6DoPkY@&>v7=kN_nEY=TUR)c(iI6v;0Xn=;vqnI3ay z5oDu_W9BS}xw8Uh&q|m-s~}%n6FJyANUQR>G`8x2=**t*)ERqxK}^acc?c$q(8~(JfwK7=Qr@Tb4TGo{Praw0(%If~Q{>hjwH(|oe6ksYs9vS8n6AY5jT~>jmtum?BaFr3-4>+2xX!2CUrtS z58vWH{@VNPx1r9l*}7}B#+}UOWQ&|7-RU5V)I&T&J;UI>j_{21l#%lq`HcL=?aHB! zGGD!o@rzA|BgkHw+E;apZ!1R6?Qqw2`gZwt`xdI(O~irW=&BF-o+j|+#n_u4o?t;= zAs?%ZU~}d9`w@W_}6`$-(P8jD_LyQUo#}J(_>!Dh$q}SIis{e ze47XQ89TNU)@iGY|D6A#|Ej-B_^0}kjWp;hhC#jr9L`d{(!P}V@_u-C3gI;A0!`#g zwVT>swbcRYKy{EhSRJB{Rwt^H)miFnb&iUmQ=P9aP#3C;Y;`g2f+gxwb(y+c-K1_- zx2QYR{ptbrpn6C>tp2DTQBSC6)U)bE^|E?feWbor->QNp!hct_gjy1f1+8^qt+h5< zTdkeeN&8aksrA+RX%n=G+9YkBHeXwyg;ca%+HP%+c0xO;ozkvp*R>m({RAW7GtJOV z-O~Mfq#mW`)N|>1^iq0h{iEpCKyRzJ(>v&W^?rJPeY`$FpQKOK7wU`jVnzvrUD>Pt zxidr8d9*RjNI5$+G~_c{W5or#y`Kur=^D)4&k^ptboVr_8TF$1wY7yw*t@mZt5evU zXId`&Y(4x~Km5od{X9yB*#KWiNJaCBCE#+QJ*Gdzf1c#7aGzDhislI6l0H))vn6EDE4y}y!u+iiIeMW!5w0sT`zy;q$ z-zDEl<(0C*Y;1MGwPgdBKx-s17)|eN& z!j-Eh$l!%064H~pe`RlE*o{T3#X2XNV+U@Cb9 z$Ne296kC+sP*gN@YYVDMVs!3gP*&2Qi>HOUk`)eAKIkjOA+A(_xKb0&Mgxc|Eg-IR zgt*cZ;>rMsE2|)`Y=*e92ja?)xH*nNU^xY^{~Y}OYw-Nx^3Kjz!e__l%3gO2^1R%E%f;>SG@&+@yh(JU`D3TDtND71_F$hRZxE@hK)AFHQ~nNwOa~D(orD{67UT0RC^U}|YP>?wO`*^zP-ucsXi`C; z$qa=iFM_E82&XC_p!y6URYL?-EtS>?tU4jI>V@EHAe^D$kZC4DrkM$uW&vcH)r!3i zq1JX~FZ`ta3X^qB)l?IyDUkq3rKVA1kOs(wsGg+)y29d12V~V)Lg4Rn@!w?chv2q(kz7SttR+ z5)dIPWEL`uns!;_BjPd=E&oMMqWAweEAbyBCG7t?D{&^Am-uuJ)~$ceQ$(^%#a|K? z_W$inMO>nyKTB2E$W?smGi*fe;sop>?4||T4JP`T`<{{;%V~rh`Rd%6uM3C1k-t4R zmgVRY&T}v)e-(H0&-ov7V|foXz%0luMIc4MP7(Nf6i`0EtQxmE0cH)k)q{@3e3Jgg z1S1F^i@A9t$v&FKw-2}L0o<^Me20Bw!ZE~4p$+}sozxS70XMm)y>Z@n?thNt%fhfz zbXllQRU6}dC5-r0+@pW>JP zxlQxPd74p~fqVID+|9FdhxAHsrz5Gylq^vY+Th$Ogu$?`wo>G5S&#S+xSJj*9 zUG;(bM17{VqmX{nq4~e_E-Cs03+LM7>auH^f?qUtvECyU#RQ79LXiGO&$`aJ&buza z{kQ}N?>u`Z@nPaVSaC|3PgYaqgeUEi&cn#ASR4t^9wnJ>< z*9V~#ft~irYx*&?tWKp7ox? zq;mn&&L!`!-ru~dlxNBx$|my*i`AVmKV1>3g=4n~h`HD$WEZg7&!K}EC1j^p#cSLL zx(P4nwm3~{4n63$wm`R?f)KH&LCOr!ZB=YI`^#Xc9y^vm5FN$)Bih5oQx zH`807l%kW~S?{8E)xXrc={;;zRt(Sw>Vx#b`Vf7nK1?63kI+Y<+G3hMU7x9ctlP07O*rA* z=ttkFFTAI(;6Ig;Lz7iElov2bV7E|?POzmra1VcngLq$hAU%|-B8pz79yfbiY@G?a zUyqY_q{20c--=yTHmS}-XuAs`?KRAu)6=;Hl;8-=?`Mu$f37c#^w6V8`KJ$9C;T)V z&GlD*$I!%X=|6;)bRE1x(PK*+@km1!cU#vnyg#?CD1R&DrGG~-%SvAo`%C-F_!syW`VaUI`hQ3CnG@{aFA}TH zVYN8D%--f{M54bU7G<~MUBsi05RpDdO!^j4DeKUw5Sf03*mMMD8g`pbL4-OJG3q=- zsrEMrR9SCll{mkj3`L|fh2qqPUq29@{a|T`G*LQl4zb$(8VZUBt1-|jSrJT(k=Dpy zWHE9Z-=KVkU91a4SHD3eDbtV^lQFc3JPfYv2zeyj+0k+qqgkMBpeZgayJVGQ=vOwE zu$YJ?d7q^W<=e9t(uS5ntbZ%bi-+7Uyo8vzA)*92`~FqyFOP;m|ntaj+j=$loF zX@u1xF;Rp`B1{lrV#sq`a>ei)kw$8xvQgWpZ!|Gl7@gpX^)m(<`;248uf{#&nUTQE zWL7k{T8FKltb5iIOY!^tG0-iF+Wsc~p8nDPS^m}j-Tu>1oNoA^`k(prfDy09)D`U(Alep4SG z7VYP#<41-D;S~B(y<*@J5>D(}l966?oX1{>7-lh|m?fU2o@Iz-S{SXc*C&k$W*{7Evks%cj4OQnA~SW%?x!DyM9wCW-~5MBUCL&!r@X8uk#QK~8SB+~jRMADR0pyf zGz%_DzCa;VU6l-!2~0<4{0*!NoiGsu#k@#Tlyy~geeP=FY6H!@AM~6Fu9>a{t`)BD zT{~Pqy3Sw%zJs!)Hy8*sF`+G{5;G$8Q5X_eO|h}qTI?eB5eJK7#Hr#Oaf!HE+$`=9 ze-zJ%moRTV72o5eB*1i>0eOvrxcZf${Wq3cOI@TsxK-Cm+oXNcN$EUlzwV=6OK>N1 z$GEe&^SFz;%fiR1h6P~ZM1ue+n$Xy;!dO)PPs3*uetBKA49DB;C4gw z4Z>@SMwT+KrEBTaP5`aw1e@ zrA4Z>3NA@UxtBZ;_x%)kmb@70s?G9l`A0Z&mr&*PNPa7OylHF*|9QMcz2&^sz4g4! zAYyg*_V*6=PC$j?0`Cg%dhd4ce(wp){CB*My>BtrYQA*791wd;`6~Nr`x+tl)7jU@ zH^es%0^fXOy4FJ~K7@jr3%8$it1}S4u*JICC zmMH6$9m?tSp_?RB@OL^x$Zv}#HhqXV{xKr?r=Dk?vhoNsn{^s%YM3AMC0RqyA_9Kl zed&G0FPlb>iwr9A@CjtE6ND_xW;=rgRp?N<)(3@2Nz37=5| zYDZJ(9nIVWj0aGmuHcab%ysN9MAIHne0o9i=_B?PW2FjOPrXpKP(u18AEGj2tjHTE z2noMrpmd;6*oUq}Cev2(ey9ZpY(#YX;aZPuv$54Y} zTJJpXGVfaNR_|V9xn6lcLzUDtWJFIOc`qt0lmUu8N?ELQM5>hyDmR4M)N*%(+|(I@ zQ&;zw?kC0~vy$~7oW1%Intey?78|B^2&L#qX*U$FAE0^dllDsoq{=GGZyhsxSr6dE zvXP^?StGEmMaUIlK}aE_VAPyX~4pI-vmNwz&e@3zC9qFx<+MUB)5NEExd$@aodj?7r z_PLL_e{ox$NKXb&PER3EX-^AJN6$i3IBfFl@tpHq^E~vt^blM2$pJYHM)Gd*SMqdu zKC;`}5%;C{=I|Eumhx8i*7i1r#NEZ)$2-_N#`~l9KD6yDNct4>l}E2==Iibo;2Y_i z?OWyBf-v-v&!+^G6iObYI?C?aE8S7UH$y3g+nMz<(@bKfFjJbv!j~sXuzw-NF!8Wp zsV0e~_i0x7cljO!wFi*Y9?6g8C-QyefilZ1WpxbSkb{KubS5O%SrA?4h;zjyQVA`q z-Vu=#yW&S&DFP2rx5~Qi-}83MaNDwra@D`AI)7ygC)9{vT%3&2a)irFI*{cw8RWM$ z=)3DM25#^kQk!Q9y(^Jg49|;UBSUsUrm1jE8@d`nmTux|>gr@BvUXtxWD#^eApt!B z+4&TN=QFM?%34DR~snwcGJv2iEf=NKZP}^EEWh*-$m-dRiMN3>|lH z`h%gAnC)Vj{7@dhC=P%f!%Omdd#I51nbcJ+Y!o{YN(1geeQtR=gs!ccl)o>fx)wEz z?A)-FSPmqO*r$6MmD$bC=Kq1nk{vA@Ix&5Wqqy1F8y2Y%xVPDb3B|cJ{k0J5){iIJ z{ThQ7`}#=X42cL=%G?#|(IC3wME4|U#Z%l<-Or8XCdx~3PqA}1f&56XK}ob-iU>K; zt%OQ^e-7VHO~`BnumvHW7KVIU)LYD38%x^QX?-aC;B!! z`h3vyc49pZd!149={w<)voSu68U-2iXn4}ut5n8lz%F?@GKl(QTai^L)4FWP#pRvG zP&2c26j1=X00&)1!#%#AkcKu#@}VWt53R*E;&`cwHdmLkhklH?=_A5F+*56#jer-$ zA}Lk_o>ecV*V0?+J@wK0TnL&Y!iDsQRT=&icEc7{kP|dL?pLPZ=7)w`P${IWG3#3? z+9}-OVuCDFaALR+TRS{Ximux5hS`JK+l4;df@?^1CpxDVJRr2q*stu&5!I-LFAVTi&ctPqZ6^LiUYQ7(-6Y9^+to&J@$2<+rB-(dsNy^(l*L8wTt)7Z=V(x;B?{8fx@ z-;;k;epBX{Wvr+ETj60ZsJ22!VV$F|keb#_O(UL;$|z< zC9(IpNM~9bB_*FDF;mY|NKR?&Hg1K6PT`{33Xu&9L=i59S7U4l_m5h(e?vH2nkE#c z^^vt|h`d!}sfjdOstqM;zE2yLV`N*k?>h1d|QP1j~q$9nubKKWaxIPT0R_XSH+MdF_IB zQM;u5s$GU&aaa3YyQkgP9zwZz1V@5hlYwMAjle9{18I?7NR0IH_4W1hEmC)wt*ut5 zOlN&O0U1mKNFN1}KuRPhmW#@h%mP;3aBWXfqqI>D`hQ)VGj_+9fqHPz_MbzyXQ%L@ zP>FinsgZ4qLTPi1JFWYJk-J@@e>0l3ni3lM409XwwG!fId%V6%->UD|PwE%-TYBnn9mRBViWbA%TtlgeJWVa7 zwle42MEpzhBaiWDbZF?g>>rI<0VbXd6Ef2s$Y<_CMstt&gZPcqP~D@o)4$a>>wER% z`g#3^K055ay%##tt?trD=9Tr7OM;lCg6F(3&n#z+#@L-3U$$K+L9f!-QZ;i`iET0< zMzs$s7nF<25wnLiI;<*pC9CN#@G%~EA0oN+*!#qL(CljEe&y#YXjrAt$I75CSS~*r zi;;)Zk#ri3rPJvQ`W;Xc&1 zY<{^eS`~4tCcwnR7U_&72k9RuOSs~@>bvHmoFz_xsWrUJUA4@p$VGr0&*e}VsvwaVG4^Nei$ts{z z{AYc73eEy{(H8oud#zQte5{jS7iv)x>E6~z__lT1#uMYMp9Zpq$J-KGDXolFPOG3* z(yAa)7L7$b%nxS^J^uNJlAwN8E7%%e)>)#GL|nc3yWe zL@k5eW8m=2L3!|Qlnw0-As z!wE<%r<1EfOX(!{mIukRN6ASKuZ?pw z(R&iw{1dO_(|s9yIZ=vL+E)d!T5F7ELw)0Y3w#?;z;zf^Huq30Y9NA%QnK5a>MLUi zXpE@150==>QFbY(l%!Ze<}9Qd2CvcSPsJ_Ba(Y(JRFg;EF1 z@P7n*0(%a71$zT~2m8QHG-cTTsdZ!abn`z*(f-#N+JC!l%>G+C_Wy1+*6v}&rDH?u z#&%mjTW7hj`PBLY(q>qlN8*yDE?=Ssl2t*z^=Hix!99<-GXJbd3bGmNyikF@MUl&U zl(`6QETV9`+`r3A5WZ*3HOs;qdgjj>%1qf<#hQcO!xX{Favq~F=czbFYKr;uCvDs( z)8`v5=6^63Lv2}twX=7_LJ5<~^F@X9g&5Q+41_nvCZ5N_7jzZMU~Z!j=B~RJdfC%V zA?KioCL-VeB_tv*#$TZ#nM7M6;@%q9urb`2Yz)L?!u~Y}eSN7h z@JuM9HbKZs(_lVhMMCLNCX_*1D%DU+Uo0ff6=e%mv~;{iaDI;9!6W_ zTxe!l?P^dFV=4>&wx}1wPWe3bZg_IsU@Wd08gd`0<4T8|!YCuB(RO(vJ`mUPMVXkKUrkJjYRYa}t#|r#)vdpp}!aD>sypW_Bw!Eck}1AVWosiIAUQtBA2`xHKJw za-}1@VCgtYmQJE*sfgBIOOBP!r+8lFXR{yAoeZ!NL3Lu&)G{)PHiBBwUG9Neon9Cx zXPCt;_IxKcN4z9YmxiVsO!}_qBcZ97jV$BfnX>sI3-YhJSVa6xTxUzk-Mie=JO{DY zcRW$v^qAo*DLWNCTp5^A&}cNonz62Ns4$y=8KRvTu*xIgW0R1{*VU%On%dAhld@P< zI|O`6;O_~eXYmv)+JCQDWUD2+`q{G>*y&9o93@u?JCgWI`V(yk1u`#$)^r2J9=|7m z3ag+eq35D8-z;y{KuE!QPivH@8hVX>p^F-&T@Iz0ZLHzWNngN0V&!OWQIPgtoGvv& zGGm|C=aazZ51!C^WzOYEtA*C(e^gkuhI`HewICu)<_DdU$_EaGMYTeP2tO+lY(p}W z(nmCQ!2a~9Lfsi zt@2J;Z#J?{;o)Y?)k#ghLN7dr%C8Hk{knuH^*2vVW3-vmssXQqr5rvc>{yF14V;Rq<9u1zB~>`_J2k_G&o!fkr}i zTaB8nwW!)!k2(H(-vV`;+0uFr^??PBp;grBY)r6GNORUG9=bVJqegPbsnEEUNKK-O zVM!~i;H8leDO!_wcNin9DR%s zveFZ%qCAB<$}{3m;vA`txzal)X?x*$4jISm~TO*vgJjo$E{x_F11HdM5OkY^c&NfJYgW z43r9F508jT<%WUmokPdZ9#YUa9F>c%y8g!D-xwgIr6W)#YL7yt=omPUbEPs`Eq!MA z_=XEv=mAuU9zw0?kKz$=fmBajtJV8t1xvrX%E_u&ZO(lg_>kwYr#5`Sv1V>-W_U_{A~d6` zQC0d7b)}Epz2US~!dfJD_sk(@X&KZOj!;G_qflWuMtP=I!i~)@V@NKv!>co#df^e= zBJ9SEQPZlG!a@c_*RYT=b7H7Nc0x+{n!j0iz6;=a5osXd_d@k?AJiZBL*&pORmd#C z-NnR`e9Rndmof=DjX_QFG*>K=Av0W!X1Z+kr?8SVM94^2qE`4jR12>b*NERq&D0y( zgijofmi1M>b1ZPWwlXxrbi$4t!H%#A=DyI7-oQGgmF{od-?^tvh>5YU$d{EX%51Z= z)ht{^luZcGA6$ER4fH|RA=E+th)U>9%1UFU@tq->Zdi9-!qC@D&dU_ipbjBbU zsqiDy)ahy>gFQVWC+4<><~D1G^`mvvx^F$S0{);stv|iLn7@R-slS=Om+kN4pY5OP z-{arwKjZ(|f75^4zoSBEpcSv*j_pFNd;UiPW1`BmbUVZZ6J!TyS3rw-Fnh z-%}4(-6h1Ua%4PhhRnnQc_Aus7b7NGf_hw*^518~nnkTpj@}L>={;pbo#LU;gno+* z$XWL}6eV9k40gxxvGNt*}Dq^XK(X^>6Y26uy7I5~64a zlzewW(RUX_fRm+4+Gu@3c+s9ty3!V?Rc?i96I+T^0P;PGPc>+an zPT1J_02NZ{d3pO<*E;0bHXy0pU){l_Al%}yLJ`^=wc#yM9o|}MBh8R%!YQ1n<^04c z>?(FNCO|`DSDqC$mB7r!j$;tnL6aeGG|)E)WynJi zp>8!>SbM^cBT?)(`721$ zY^ljGAu<{0ZE~=nb^t|UO`%cOr$O34X7mFh+6W^auj0K#z@oVDj&L2 z7OU&SJ?M^$!QV#Hbv%l!d0g-l^mXHQhb1g$}CJ~A@T_x8ndvNg~TixzQdzn76G&9mqorZ zo}@AxId`@*-N;&c4k|t-idXF8@Z#F9|O7ChWwW?wqV@^d@EsNjwSH;n@e|-(nAcc86 z9Kq#70e97KMchuI3>|}<>Mzn+teiLxW#^()4Fya~)e~kP>p12M_W2BILA9dFo_@x9 zS`vgDv)Pcvrr4VP+2Kz2PUt|lxC>!%LlG=*CsT>y6Kf`JBNDpn`Q1|)a?B_*ht)DX5)Ks7(TP~>G8xNVra}W-D3#KR=`9fl zu$?VzM23gE_GFn&Bd~yBDKh`dQ9-iOdsv+x?hnn$d>TMLxrw(aRzWm_elxDk97Gf)f{$ZWapUZ^UBB8%75n>C39Lt03|MB`Dwl;{Z3u0@6*m5AY6o@SY`tOzi z*?al=pHEl+Jm>3v!mED%cNhKG|8~{Szh3my3k9o#u|n0k$mf5u#K-=0jZfSHpMPH7 z^Y0h;u%$i!;ldu9uk87BVGmo@!xr_hB|U6G4_nR?x0vVSQl9_WLLSF59=?j_;~F0O zuS}Ii(&Z6w zEk&HL1^Krlh=P9=b0X1KTB?Gl4m5$AcL3AWLo8iih9{QnK;&fqhVi?a+!=22E!5Av zNB!n0lg77&O6>mHGYk^P1{AEFm5+FP_(nlk z*y>AwRRWdODr!}=np#7xseY!`QfsSq)X&wrYCW~S+CXinHc}g_P1L697iu%Lx!S^3 zTdGUUWo9+ZXHStDW>qf*P#sqY!E=+#?NSaXM5Ss^Go|%*L}-GxqwpYw7;Pgy z#QUT$?YhQa?NvtM)cywk|Hb23{{7Qg?Elrrv;6y~v)KQuk7xP!PiL|JS0B$3dOFJ} z_)*L^`c0@t6|7q=jg_lq-J{^Jx&!vU)*;7fCOJb(U?F02lp3}~*=cKKmO2?d;0it{ zpmaR}9z&1|4>u`=A*L3JxLV;^8-1_}d>o?od2rv?xwau{K80mFx9~8-msq8w;29z* zQ0kHcT5iEXgi)wasq+v6(krQVuk-Zw}>Z21hCXA4IXV|=Z4c+)>92d8;ud0cJ}ne z10N=%vTU(uwPy=NmXlCPZ=$C5wa10(qadE+7>!3XRg~+IKBHBVc;j$*`2Z`dL~kUX7Lp59S!EzcehxRTEeam{AyqpL4>p|(r*DmSi|zfvdkpJ^ zZXk#M(n}G=#XvC3k0&=&M6lVw*TUBUl@^11WAI>rxp+d(T0CIl03O754r%r$c(9WT z8f-$WOUixx2B)7*n)|T4x8LxHRy@A` z6-(kSqYUaQ>XmNLo5&yCfmr@Ko*N$!`^#9 zM{z7|!`(AGn^!x#D3@1=7MAB_;^gS_aT_V?X)N*(=lj>*^FD#6(P8}8ADibsko}i)1YD*?)WF}}N4{Og|^)o>u zc}YYmB{B4$;=N~rM)DHk9($Rfk-Q|5l#<808yxXTiESNh$#8b)kB=S;WW>Yvj_vf|W>Xn)>2LNMoD?PuVrBVeS0U1+y&c6?g z>1nIn@bQo_IV{Wv0AqRx$BX$#Q2YM^8S^b-PB-Pl(E8E-{}I#v9WW;1T~xq@yb5|K zH~hEAm>&p?$$_kTD=+>?$e14pj0qsCkBf}?fxwuakBy9}ROL{mME@ONO!Plq_uNk| zh<*%YO#Yk?0LJ9~A86+v4;d4!{X>8;Jsg7PV8pYT%7^{Wz?hz4SSR(}uu!?-zeC34y=jT^ zoPP@#QvtFXvP`+*qab6VH+={&Ci-6xa4|m~GA1@~!Dq!+qU)6p`yYTYJ?MTP6&VvR zI<`H+&pq%nt;{7+{Pgd~KJ~l@e){)gpL*T{KmGf$Pd)E}pZ@*Wr=It~Pyc@GQ_p+gr++{8spmcL z)4w14)bk$rDMxbqd$CXJM)-rDW@4XaVxMMWpJrm8DtmnXd7zX`?9)u_(@gBsOzhK4 z?9)Y=*r%D;rNju5Zpv&AqVjp;pG9@0Z2rcGMc#6+ zBX-eEPomCH@0nLoF~X*2QM0Ib7L9HzY z`Y{1oJ^ukh>&FCW_5242tsfJh)$;-nvLA@hs)YIaNC2&#{{W%&V*<41{{Vzm@2g?a z={mR|>L3BWqd(9efi*JiadzeRUV4l`V46ZLXL;wQMLT& zZP=IT(ZSi;D(oBxp$T_fKXyB|inH4*>}*0duw_4X2X>LOJ1XozArR~zKYRDmPRuqD z?9K|?DLBDi4j!V5j@ByRmMZ-CbcnrBCsV{ruQH*lf;DQP@u~))CUq zkKL0U)r?!#gyf!$YOU!hmP4)kO9W6e3c zzrwyqFM|E3^}FvLz{YX*7Yh4FbT2^l`LPGG9h^N#VIM_R6SCKj{Uy80*@G4KZn_)n zX?|=E%QYG7RE50~Fb#lQ^kWZU)j4~p!X8aWgI(2+J&b+H*`pM8JK7HH?ycVCd>mWF z*%KAEx}Q0ZADgj@oIOopSEW^P_l1`4?w-zUQ^207unW;bV9)kr&t|1Ldyc|(Q#aTR z{n&F^H_l$9uyv3EKr;1XuVAw|d!@pDMfg^$M=jpHdlfsz*=rQ`J%|_-svmnDd&Sus z6!uwi7U^I=_9hlP73|Fldmq_{G}4c~g*E5wtqOZ55TXHM+x*?Tx3h7ay+dKoBD0XD z__24g9h|*OVSf!|96*Zrv3Ik(oV`b3tNz>fo4tGZUY3i2&9f9j`rrWWjUW2}tIpYc zi)skzg##bv$3D!y>_6$Q`j{~4WzOk z`v*X1f_+?JS5Q38A2xlL^AoHzXP;Eqs>AwmKlUlsjk8ZHY}NmLgCF}0o6XrjDs0uk ze>m6y_{{~{PwW_H|E#brii6JLC)wZ1yR+U`)1obclyTKeZh57d(HAIP>%BZHx;8a` z0SQKNUzp%coD*%ddP^*bo<%pUjJ~>wwaTCW5j*lnbo8dS`Nz*?<6q?OwMiF~5#-Hq z#Dob`bH;q-{VFi#3vp9O%uSv5=AHam#Z8ehbp&snyfLfkrkI#ZMZA}q#DvhPZDW#X zEGySGCOBIxBKdOj#5qJs=lK_i&<4Ve#Il}X<0>RBiHmdXln+I*Y(A%Q0Upavs@EwL zY;pvJwo~pz;*xl{QibA@crfBvmcXf2<+QbWokHR7j%Dd81&K@IaoQD%OX87mW7!@~ zbtwnMLfb3vMBIK}_$V$ZR5>ljsd<&tp6Yc9B}}2rS1Cwb5-(>I9Y1v|rziO- z*H}yq!=H?CB-VItwGIIfS)3|B;N-z&Tr_8Q!Yv8m+*+nu?W}C z_m=EM74s_NO_c9#L5cEbCn~2yzKU+cTKyiRXREJAIlW!G#Y_gSZkL#sQf8ehHS-~L zDxyxkZ+gUJ%Tc;$r?-XPI4}B+l}y3`tQ^pJS3+f^geml4WEg%A?fCBca8`P3Ot2>$ z>_BK@6~InL9b)q(38TW02!*b0+iB!ScPn&NYPIvDM=Er6*UsmD^eBa{3c(?M^k{`% zwh1YV7f$eFWBp6?!Bg?-7{ z$qG9~NC8{$ySo}&#o5&rwq3A;{e8;2yKAtEoLy64tGY;)uJ72jm~A}RwH5XzOm3j) z_~pC~E6v$;74{m!m5zgc?0T#lXV+KQtH>&_m;13Bu-Tm5P+>18%fU|bV>e>QIJ>dJ zUP_jN-Pe!ZguUYIrV4uzSp@c{e(Yu}b^_SV7502gX9#KK$8N!zgI%Si!k$a!g5APT zs@H__RM_1~cd&o*V|QY?(!lPlusahzjo9zU?!u~bc2|Y1sy4Iy*xlHdoZVev*TVFQ zkdc1u9&8n7rzq@7q!QRw{MbF&Mb7S}uvP6N(U1K(v!#RGTVclllnc_rkKKor2AlR} z_0wZYv+@sua(maN$Fy~d%ZY^zoE;O+F3pLtdMhuCsYr#@l#O2$vsi30ov?z7WB#yo zw`0D*^_Ht<=3Ww0o0jtqSQ2wONE9LQYVU}tq<^czOeWr``(n}zikgt_jru<3d!6^` zp_q74r7%$XY&sDW=AwC+4Z|cW)gfm8;;S)6Pgi@@qv{OWhm1Qy1Fjih7;YE=C?^xX zYB1d@WHmQ2H$`;q=H?c_{T%^(7<4AW;i*rL%0c+xO%b%Puvi)~_8W*j0ZX<)d@fQQ z11{Av(|Xf3(|*%+({ocjb9eJp^HTE(^GmbNgUIQr099LL=?;`=uB%)l4Fre2yS@iP zlK0g20^0E-`$D;z!#9QJXgS@HEtC#4@QT7{X^*rQAjCxjOCTK1H?9O?>~UihP`^t8U8%aM0Wfts;>*4OZuZxv?}49A0Ml61oCFB3CgwIk zw@*b}%-O(-+-g2xegI%CmnFBQ2yoz=Sh@m*Da|t7k_31puH4FUHaR!IF_L)octGIT z7D`c#R(wbGz>SO9atnz~kVR@|$y6ZJ59K=?QC&pGD;?!j`B34Rxc- zg`B`sS%?8eq%8=hN? z1PUhr`EyD2w;A9Kf9;8*4u|zCs~gHoP?9Vupg_eo-MTIK;PySqe8IP zb=G$_27>HA!f!Tr&4k^J7kwx>Lv!p_Kj=1TA_So+rUO-Al72EE%b(hp%k>-$(5Lte zC5?XX5w4g8i)hhVB#Yj%-MZVl-};l*om$b^f*lR86wm<5n92f_yutgRi~j_3v29xw zgm)~K%Kb6L{gK31+fO?(oNbjdK>HhDZws^-p7$~KDfX*J)br&At7}(4PDP97NZ=eB zinrRb0JDT)k)#3kZlWzTfaAXx3fP6V&7V*V=ybcV8=If!2e8~O4bm&0HOv}eJqBn9 zUcUP+)gcYIu#5E2p@P|H0ZM|+7yx+oa>iZu5pt~Kn1(HLSUje+_(3F}&{o$Dcn}?Q z9f1}UOU&fJVMrkkZXKiO2RZ2yucx4j<{ISvJ0$XoX4YhKQSdIPB{&_xD z&=UZ{En+EZDF#f05|)wxZeJ%ib>!}1QNC8T%GNyAeE5b!0I_MH$w{5q06WQfO%^A) z1UG<7qIA)^`~bCoYFs5ZbT~dyGZ$_zWKYLA|Mn2OLo=z)w(c641L1N&w2OlCFElxR z-rKs&`h}Lm@2ti$YIQVqHgk?b3+9g)YTbvg;}ZNyfMhq=t@Z%B%N}G8wpY-)Zg;vu z$ORartr&E+n|7FXnhsmj(U2AK<1Fo*;oRj+U&*Tg^&drY3b_Efkp~Mwp+LjQr~BSA zM2>RAXhqA1jKUErWbgfr8pNj7dekR zPda~fUIP5zM(pb6Q}2=_55NhE>5A)0=t|brmC}_4Saez4cR&O@Zz&8jFaO4GthqHK z?ezPeATBApa{-3B0`c^1;SkIg}{;7f3QN57?yx0BTG55~#p;jK5fZ zwak$}0Zz^hP3#3(JD{O(W5Ga@S7-`gvF5rKx|X_Dy0OyOfDS;+;g2mVmyBrT+t02P`oHLz9$a8bqgpmq!YnnMZUFw8d6Hp({IHpVvAHqMr2gMrC5-8REE z(>B{S&$h(2)V9pF+_u8D%C^?#wQaU-v2C?&v+c0$wjHt^wtZ(iV*B29%yz=&`Pp{X zcFuO*cEOfmyJ-8xcFA_dcH8#5?T+oP?Y`}i?Ew@CUMEB74j~6dvA*VhKn@vT{=z&E zU`7kAJLQg!4jKwnARQ*SjDdhN$zlvPW;K>IPLxYH8fzerWr4O_*^R{# zfu?lMc>_ZWub`viDd~n*x)Vupp(u7J7MDs$B>~;EO8N{K^H*)23GZRP=GDMAr_obF z62|5_z&@#Gsc&gunX^hoGA?c}Wq&YM?PiypW5d-}{}qW9cItKkb!LxlFEFAOOUhg>CvuhED(xQ#qTVilM6EynUWr*)bNfn@4=#LCOP} zgH^0ss0M453RvzV0K&|$9F_Yz#`adng6@H2Fbd%$;jV0vhJWI8POauj~CT`;zM-KxVOw_wWwnc}CBj0L4K9g z7i4`000MQ=ch-CCkL)jdDbfXbgrk`DJss&HAsD*mZ~*^&Wg2N3Wh#ak z?7X<1NC!1+x96m@;MIp3@&c16%n)vfFx;>o{6!u9(;-^c+4k5@q7yu}@iDq$K-GZ8 z0i6Q|224;Ypcx)^9)C8E7zgOL)<7cvQXD0w11@|eFg`Dfx5dYzT^EcYAqLX9GEk{o zVbtxV8>kx&nC+?1IeP)qd$_a#aH$7@Ap%-jdIBVMie(NU&rT^( z=LcIo)>P{d>rm@3D+i4C*QYp^ud1#2YgSLJvMr}AH?Yyl*xqj|&1@~8pC<*>4`?6I zFJLT=xdFNDdF&x}PnbR2?zXFV_XPk7S{Jz7&F!DrJJ>tgyV|?iyW4x(``P>32iU)` z54L;ksrF&^(e^R+vG%X+Tr*ps=w?gp>+QR6>`|a+IruDxpXC6w9D?>Fjx!1n?OFSI z92p86EeE8%;sGWtN2TSswEVcIpwm7;%jXES9HW+_)N-6!j#SGJj{a(tJIS5pE^=47 zo7`RQA*aYafe8D#+*|G^50*W0sysv> zaJvb zhMqX%e#*gd?>%HJNfhp2h`0xc)Q12`eXN@-wZ{1Qqiy_q!{-b6rTj{MBQJ6+b}WIr z>1}Q5bQXRS#llqk0>^k90&R>NO&*fZgf;pbfKa=ozpd|&R`xhXRSwG7bbw*}ydpQQ zKm$#t6NUDeaqk2e+HT_>^z|W_oNz5-n0=&ul6?pU6aH%s+WJ!akTXiYNg63C7;ZD_|si&xdPS&oRUvtFT_vsAjg-E!H!f%Fsx2|_*h2A2rXc(=mR*pe#ZWglhfsL zjyjO%e2jQTA1_sh9F9j8epDTbxnvm+&6KZj6%a3p0Z_Z^>Av+yx%9jBQw@ia>sy8} zQxrz{Y5;x=_(2`1@)Mg74r9$Yp!Q7=(=bAGkzI}|nDFsIS(Z6^eI)Sf)du(}aO{VJ zo(F#i#H(mi&viP$)mCOD=zW;*7hVXbyFg-YMc$ydJl z%sU%7Mt`IHOa6K2f#8kmT=GxSQP>D$j}th3frcPM7DI-8zFfso2U7~(dO89%)E-c0 zkXor>wo5RUDDD4iQc(C43et1H1HS}7@N3;PsfD$w?SSoz_a-)f$WP@z<>&HT$2?^8 z8^@)8X<^x>wVVaklKs_|b4se>`c5;dm9p!gXN4k5&FKsQaBM8~U{oYa8v|wVk>#=F zfZW3|9QGjIktfsRz-WuIL|gJ(Vl1(M?2EI+TM~dRx&qkfuPhtn7LHRun&zrbUiu|k z;W@*3pbuskE@DXi)lk<0vQO^j=!T}s=Lk#aIH5HFOw)|%fG?b6oNQFbtj}DXT-(N}Z7iEE zk8>Nc6N2lLpq1VhVpz$8QTbTfSj@(5T5ef}%Q23=m^1JiDQ~ZcSwmk;e0fuX`Bcau z76f2qVX=r;1kFE)>76A)<};%#vTSiTBn@aIo1NIZ}=%yZUtMjS#_F8D~_0i zP#7uO1Fy29*a@0ZcR7orr8apOKsO3582{n`xtL&1gqqQEq*}*0Y!&T44wsa&?ZL3!lM)IUVqlGmW#LJL#6GA6whm*yDUUOBH=Z z?R_^p*MnDszDJ1@yUb(m8pUBLP!&-lCq_Uf`esG#~~oCf-#9FtcS{6#z4v zph?7~#^$bs6!rTjU|!x*o0aRt#?F@7J5q^T7^NGn^Ni7r)qM@+ajx`U96x_+lSqWd2By9=Zy*7dd~0V{#)voGL>fO7#?1D>V?^S(;lq$DO#7vMaXorcop zv@ab;8JvIa()&~pf`sfs9-+LDEHoGT3WJ0h!Uo~6a8kG^L~@H9m-N4rra~6jhGzig zbC!NK^wWFxMRIk=6-`E8fx>*vHW*5BTEG>QLM-knO+tm@uuj+1)dC`E9bH|B&H8{0 zZm64LZEAZOptD=-PJ0jg5c@CoC-y)&MoyNuIgU7fblh<~a#);BXN0quv#it8%Gu93 z);Y_$*15-d8Wxdj&Vb6$X3>h%GYKDv%>1u=Qfy`cUw$a8r7qtlaV8ZV&4gi|#KyeUe4ueIHIMVvH zwWkc#3L^*a&@m)Hh!CfUQ-St6O`I;am?3(sKWdhw;UvGXQnw0lu4{B_fxWz1YGb`- zOM6e@Xy4STWR6dquB=ogOb=w_C^Etan7gDo04`VPSL#>kSL>&yMMQWm8!uTdTV~6Z z9Bowb4xne3uut4C9uN`QS%d9-lq-m_t+~A2vD5LrF`X4}P%)o9 zpSjw&+PVy%sv`A1X(g<}3dmVN*`C*5z#QzB-Oxo{(i%bc2zjt%F$WN_^We6;z+7Lm z5SpDuol~4!oj+>*_e;14b<=eR4sVLCCuV??q-wUY0ckMwa4j!@_7d6|+5-o-qoI=r z6T2j%tl7rSTIKd?M!L|YLUz*}0NBn0PWuAWH>U5cGH|E4v0*tR*-F?_R-^9M25b!2 zi#~rm;6%X5fQ#t)*8;8w+z7ZCP{dURWx{3WJ?apmAiCFy>j5CVLEI>A5(is%DyATG zaYo7rZKZYq0PY}l1bFv!sV>q!*knl#hHfJ@|UIB zC)(4#Rh6Tcq^qz+U(isH`da@%spa@TU-^3d|g@&uXr)AHQ%7xa+VKz5^6(OTZ4*$RWH zEJTV+#H9dvUM{YHNg+kf>L`S^%&qNJX}Zu3K8R>0|T z*2LHIUo&Ae$Soh&W^l#OhHJvW#MhK}kxzuLv8MVnAhXX&=V95&kZM`^s`Cl?3&(Mc z7ySNcYe{Re)eITMTUs_uIc9T_#fR9s&e>X{dquhlTlJ+3r2&^+){q3l&sqBdxvC@A z9yQm$k-9>FzA+HEo9dhChoP{S$#sBfuXCM6rn&rUDK|n{@s2v1{w!3o3?v6 zp!SYZm@v18s>-Jr`RHKbI97wN8md|(Ii?#7vK`3#Te+%MZ}U~8PQWg{6wrK))4E74Y4@e654D>vAfs{WA;FC zxcC+3a}zK&PlpORAKi30#OX#fpdA<`k6^*}w3s3OB3>77iuc8b;-BJQ;u}%WnGp%r zr3=#K!eUV*mb&6~1+j=zN>@?$33Q`6SW0Pu6}k=>D^fhVe!2m=RNYW0eq&K&ld)Jm zTencR7-Rk#tRQWMJ$(G(W_G`Up zkPK#n6|>SnLv}+>SZl)!`3#fd+fS@WAlM@Z9jiAQ*L6O0{8) zCX3ON)0o>BW{fZ<7z-Jz8mk-Y8ygrK89N)h!D!IWIM|qK9QhAnNLCrwKqPO58D_Wf zknxD|gz*%lX@>DP<5l<~+&4ZmzA%a=y(z?$*A#7vfw8?X)~3rquziY&SuImTQ)4vh z&rF?6T}-_^@BkTT`VtoGuT0}i6HHS~(=h(eN1s>@pMr0(IJw=l*L1*i%yisz-jrdw zV!Da-jt8cvrWYm(p=!pc7jAZAnw4NKW-ehaXRd&OxEhA)`tZVOZfUt!fh1_B?I&yV%<(e?mcawu0gNliYIOCdQ zs5atep(BKRsPJ%9xf}L#Pf26CT-?z}TSs4Q=ew7<+QC=KXTfZ|7)Kr~=wEd_g*nlM z#ZfNFx&6)s?U8GC4@hfawf>U+vi>*y75x_&6J4LHS6Lm6T?MqSeX8t*;{L|mk0s95 z(bmb<+1AAaYs=@hezt+OL5ioqeA@!7NUT>(U?**-lxY@U4tfTg3{<56XF#ZZpna=d zh8k52#=-eeMB?$#08A~iVpX~dCR|G~PuPm}x1*Q^|Dr31g}zEs4XGiPQ#--&DMPw1 z3HoJ*4ThbVIeC7C{H|q8ftq{+{xh$QCeta?uO>T|HPc`q*kitE&Ta{Z9VPT|4pIs) z>Mx!Uv+8FWzJiHkqw%2etnsL+FQ9JMnzxw)EqN@}tu?GQt+lLmtaYvRto5x8tPQP= ztc|TrtWB-Wtj(=0tSzmrtgWq|S=(6KTHAT7?X64XWpXWyXOFQo%)MSpxJtT8Ve(wb z^@&T>*SWg>5-ZNUxQ|dt$R$<~E5d*56Y*1Vh}F0M>!5WIbY*V0TS+ep&xOsFEtail zcH7bLcEVJ*+j7W4t%9|moX7EUlsZ6r!mtVvVdERelr~AGUbQJ_`z>Qow7-J>MlfO6 zh{ljn60fa>k)k<9iS8I7hGTS?f{|exQ>zFPmBU)i~zYH{o^6|D?;iw zgT(I+VV?>?KM_KHAq4y;-7XJg`$@?4Ymn(LAkQ6;BkV!*&v?tLo}CySWbpWZme&GCAl8@etM676ufC>=)ci#*B?ZWIg93b z1M}fOAZta)Stn#{UdY!%22W{-)*2A2Eg({RK%5SPD4hi{x&|V2Kg8#Gh|UKPn*u~; zpfM-9P6Fg)14zg|kd7l^=9-Sl)+$KEosfnnAPIki6nq8=7y{{65R$JFq+UZvyiRa< z8wf!+4nl4Y1l(E(x4j-nw)2o`_aM;ed$ZI&_6qquJLE2$+| zP*#;Nh<&Ob1BF%Z@*L=>Do!)#8KFGnSX+1+wzqV!bhON}PC^T~j2nq)2GVkVnA}RC z*;Nt(NR%#7S5j9A7Ln%g z$?2i%uN$Hp1I=ibZV@K+UJq8wzk|){g6=vN6<+ELl2ghBJAFJB>B~#WQa!jrw8!#i ze`$!c7CQYt*uKw7ze&GKe_+)jJKO|fu+Cc=-&9Rs7aC$~EXk(m`|DHnqv1_8Q@>EZ zLw^Vo^Bly}P1r-8>R;(~1`BMzIj|lYWAGG)()p>O7MwO(Vs4sZ7-;y)FbSSziwtWG zTVZ552`lM!!$ZSg1`*yzLB?DVor%U|V?$#X7}Y(-(J*q(z+`(hCMmm&-x*J0R&fO$ zdC!eHQ>ZCF7Me>#p|5Fb1U0TR93BT@sdl_+DyFzg;WD??W7=o>!F0iN4Qu$%Oaf+c z5il4QHmvo-T0io15ejdT~;P4r%?YIx z{;M$m*(o2$Tr?11yjg&+n;qLN)orVJV1~;}^U-h`ft_rTK#DC5=vVHd@F}fKt6*>ZBL1)rgfYh5q=VDL)e7XSJ zTo=(LK%!elm(vw6{vDyW=&)+JPuf%VchyuHacZ^ zER=S_whFI>8Sq-z<&1H~x(dKhTGUkxrqU!=IaenXKOb5T;J!iJ|sqiNd)t?K036)?5I4f71+CHPr%WDp96ji@NMJ$chTNI64-ksDIb=* z{sXl4e**T-Y8;F@9fCsPip_P>P;g?5=&v83|3W_))Awgi>bi3(hxhURD4XbcjAHwP zJSERCBB~8L2byO!G|kSm3++m~(e4Ni@j3kxo1ur(ujm-1G0sq$-h8dm@uqeM&Fl?8 z>ea?&5X?e=;J~Ketk@TvTc|G75^4)|gt|gKp}x>iXf1q(U2biKb{?U<&_U=V^uQjC zo#;K7tRPj3ulE3!gMT& z@@6#JKG{BfMGnPPpF5kXUId|b?nV#+M}la30jyFMvKO|$Z=dq`JhW5~gU0YNXaO&S zHt+cv^m*%PFz~If!N|AX25I(mn3N_V15@l%?aZ#O$F7Fw!EerbngM+tJWm$biooBb zQb0XzI^2V<6mol@?(c&O`~lNJ(;?F#Ydu)mxSQag*1xQ;t%6N&Gur}evaQ}|)tyd$ zYlTj3tgg{;CrrJzPCLu0$N0w8rZ#k*;Dm#ALrCJrrY3L*(QAvOOX*mlB^DU3H|^kw0`^2YuQh7#VYB511c3~It( zm|wkwe@Z3eNIA~&teyJuPIR%56&~T^Ao?em(%^xjhY^*dH=VKkWH}3m#tir$UbbAZ zT+4>VuixRt{QxU`f50yB0;_j#EP_>M^-hk6?MkO!3U8F{Q_>G=H#W|rrn$ZcZ|iwT z$fvC5rSM=+GD_?be%>6Y0vll(Fob_fGUWLnq&C=KoJ2N)zMi+0WHJ;7_VSk**KCr>cpQZMpK)GMRt_ zU#3VrmChw>Z{vkbYb3-4}2JS+cel?t4EvH?t;VFAv|%^T?0R%`eGh3JyYYqP_Vt zDs$^rGF&;QA}!#@;5C&D!!tvg2bN3U4SWGN8LnQ_knZuLbBEAm1df=F^t2zHTf>vd z3>*;gestcRlCc@d!}lXyz}m9!1$<#385^xSZf4{Mk2dcJEWnJmOXNC&?U$fMAgAfN`?R%PGy9$|fm!cez^oqx*^ z)`u$eWn>vra~0nW!uq@lUEN)l%a5K|qA&FJrz1XeL*C9j(_OvxI#Zf z4)GLAEWVN}q0o<#qrCqQg8zt*QBq+XBgc^5gIQUX*g|S)g?^HpMA~Q2J9=4#eu|tz zIuiRueAky(=o!$wAsPMXl@$6#gpt7<4ON3zf=v5T@6>^2s zvBAbiPgdyHp&}8o-H%>fq2EAU8f^YZ$@%vBS_=I(BGtfNgp$yn<4LWnFz#aI6|0!< z7^w{ux*BhSd)SnRSzRJRZBDO4YLae9ePdcRjA<(U4gSH>jq59bUk!syb{RE7B1L?S@RXGgIyS|BKog`7hN@v}pWW8J?R< z6EcI%IvbID>V=3vw&i?8LALm8M4<93>jnQ`{Vqg=h>Nq#Vlys8lnFeg&k7w}B&YPj zNOefFkW4)mrJ1S6X6mtg5|#&TAsJfi5~P`WY%;XiOg%PJkImF$|KIAdvZlw@gW}s3 zlBpi+c`MxI;ipXzj*(A0e9C$QDC;U+Rn|{yN_hh)>+O{53lKho{PinUiRW~#LpMcG zM?Qo66LhYtgPz)1p%+vz!8x7l>YUDX>!u{3g@S^fW2CCAgRx$jHDGa;&zllJ=MQRz z8+zb(Ga!GLLE6#p`V{$?zq#o`17P!6_r?b|#@s0enJ>~+TNPA)eBOq->grT1+ z^bit)bjvE$(#q+*6?$$ZyvL7z^gaqbr{a|ShabJKLRWq0f>ytKPCtd7t%VXDtDqmF zzrx6>7`JQr(FZ8>U}cj?H$VCp3Oz`%F{b*_2XeZ%_V3~0)Q*vdPj-0W;^VN6vM@ZG z1(l6fCtyZ|V9at%kPRh?KzIU5Odu^;+})sX7IQcJ4hy*#-j&_C7d|=vA1Ixsn2%CC zJA-VhtomdvB~vkr=d|4<3yP4R-DT_Uhr1H5lT|1SZn%?i!$r(buP9MZZ!6JGZ^E*~ zFP=|)JMecAW{!!CD9%U|*zq_ojqrW&{A>mB?SkJ)zQEj+({7XOXn#7K)g>(vCbT{4 z858Sj+z&JDQ^dDD{wvZ^%kxF@5R+qm;}w#=RP~W;h;MF9y266P>1#+=?OS#bD=cmz zXbnkYw5~%qtHoAajLIK06t>dguz!99ljazhDaXU|n8wB)49`|~E}4hVSpd7%LX7cC zVSZYUjIYFV*DAqLzr}dB@oiAp?XZpb*4p;NEO8KTIST6mFRHg2- zKzu*(}2M(eShVgvVm#X9vkp?d%Yl2-6X#Z6Vw{ zm7g6Y+!DYmt0o#E707wL70 z5;*W(#zV(Q%0k#A7;mS-?#gSyzjS?`q$|lntr+(ZpHJxw78)1p@{C3qOd;#B|AW7J zkP;2;T?q)>n-TP(gvSlxXQK%Z6~fO(5MOwZWyH6OW;5BLeQbV+v4Z%lE-+d1tH%=G zn#EKST|}>R=mMl5n-mwD!}G3bja6E~8LhqkMz|*^za13?(=zIwOTviA>8$l6Bm*rTK)@=B4{UN zNT;ikQs{9?b(MpO2CZI+cRT~8=vhkC-Qi(WieF}HFqqT^~s zJnU`c;&miME5r?Co>thCNl2_#AazI+$b&9QP-Fgx8^jmVc#IO#n9~rms>Y27x419= za@PMwL@lxH^cC#;8xf%!Vjt+d))BE?1>H)$g)mReBpZuw>ei*#(zBTlBC@j72bf>` z{bV$ct!&i zdOam58n=o1=x7@F7e=b%e{Mtd(fLvZcR0?4|GCZ8N6$gn;H?o^vhfuNf|Wa-aX#zf zi#&MGXSvv_tr5Y+`GNzymxXA7kWrJ=U2$OV<`Xp@2fGKdm*PhcQRv-iclK&)M1EFi zTSOyIeW)S6VKGb@4Dm2T;&oC!9P;xLEVP|rRQZlXST!*Jr@aX`ahI_*OW&=k0F z9H2L7eqkvFFrL5Jh*Z9TdTAtzntxV*WyO6oVp;gc?s}xn7wW)On16{!Sa(o;`Ok1s z;ln!5dNVwn58M2l$64otc60oNkx0C{5f)SX<50a_QV}|Rs4{-@cH z6oyL`7b zJWjaJ3HLgYu_Y}|NWiAFWT6_48bXsUY9S<&Q>f{R!i=xfuZcvC`Hm|YU%*w6=Fo8x zu*t0jZACw$ZD>0WoM5=i%Q}?YdAM`(&klq`&J=hD^7982JEAoeVHNf5J9_l@xH)NN0h6j0`k}~*AUiWUa#fE5$d@~JyKtB>s4TvhvTT>AE zbg~-krx-d>Nen|tiavix`&yYgDc3ppePQ$y%5@Dc>bUDqh`@CU{svwNyvWngWcX8m z#nP1)^nMjNaZDwyA!#Sov-OGs!Ub1JysR3^y$6XzskfmW;fJ&fA?U+|5^&{+&>pY0 zpBlpAtVGEOuQ#7U!duZgj5fRt`L`C&04+HFAo4^j#D$~*_30@$743w7)lPDbRK22Z zA{~Q4mct6H#qO4xZ=02X58!>~R~)_IuhO6LK(3q;fj+MGGoSi0kgQPqtcQfa8|!!c z;FA6d;+$MlH1nIJh=Q2X1s#zWRS(Mb7G9)jP_3qs#Z6R!avOeC1%#r)2CdtFL!Y1( z^E(O)Tvg$B%tlrl(+yfxS>ZS4Q(ab*@QVl3!X8RyYbw_c%C(qExG@m*o)Z`Vomdrf zL{Cp2cz`XUI}i~*7aVGG3t2ygAWb; z$UNmxH5IkD$HVD|AGHudr!fw$F7algNez#pAMuChg$(2h5@-54_z`TF;=JnU$Q&$! z7w2Jm3Ly~A(K3o~=bhXK8_}B%c?%oCU&ocIDBQsXkZ;bwg^$0up?g_Rb3{ImPr&%z zoJa6sLl~*~EjGkMWkHwc&_YHk62ONJv6d8liw-dp{!7atH8?s1&;31`C~%d^zqj}T zOmc|;j0lfXyJHlP2!2@~xI~S`c3U4t#5a(f+^etgTa1WHZ!seByv2x6@i2TC5qIBW zL=1e35%C!Y2cJSU_AN%l4&u3}OiK88&PT6z7!gTOML$(Wvkq98>xLG84CQ|V4V1h6 z~H%X}XEL>Ef76eRG8|q5K3G+}CdQmD4MJa5q1?tJ?jQ-*0`9`@!XwgUg&7 zF*qZ5!{g^m$3A=#7Wc-m`LAytHGaA0cHJ+;7tf#fpJATxX6BT#uUqdpG?_JycRz_d z+w@k2>pk*3*ckL$c=<*?{AP~p@WbZ?3zZGJQnq!Aec5(B{^ODH$_t70NpOdhO}TvN zr&8Bm?@KD1_4@NXn_pV8mFzGux9<9@FvFXfEnn|x+5U~8=<6j~-q`qsW{uXApF+QWMW4-qz{M&}h-mZI)orq(Ky;XP5zy@=9R-o7Q=gXyL_F|x_4 ztK@zlY^oL8P48`8!##;kJrhwXy_UqvA?1YvwWMz?H#QiT=BLo-vcn6tH$>0D{FoH2 zUs;)7l1QikJ&zZ(j27;OK#D-?&Vyp*?Onic&gWyB6@MlY2W=b$j+C1#EJ%4zwjzag z2Q4N}&#N~8DH7!$8+JCLsInyX!`Xzx1k+l%*pHF==Ekql%OoMZ*0Rtondn0_Nn5iG~ZLS3ghEOR#a3ryf+%}R4W`6=v~`4HaGR` z)a$V0)=75i`OaIO>X8N_HE5|(OHD|FKsRftMN6$nvw&{X(f}>BBMk;!)>4O-I+11t z-Nn;_I0@7UK}fUVcNQ%T*3zs{^;bOL^Ryc+hicX>Ozm_?<^fLy#uocc_-; zCEZm*J`f6m5vHZ#S{i}05a@0#jnvX8q=i9`*3$f18iTY5=&@Q_KuhD076pCk)rev2 z+d;8K?R-)fg1^!b3ut%jyQ>lP60)PRcz4f%6m9!$_byc23`~*`auzo{fy_w!sr4r~ zB~Di3T0{hmV12Gde9rD%i0~Mq-tPuUlU_504EKAea zkJlsS36s{dem5d&^YqA#h=w^EzI|cY>=p=SKJeKy|5>} zNY0bH*yGn_&F4?P>@a1@$m=Yi%(0cW%5p5Q?`<|=9^0&bp(IYaJTo{Uq=*wwX4np)-K+C^Y0(c=Nr|L`bc1{ZOym-+d;KZ7-2% zG*Lyx3?=8-kfNP~nRT3dIQyDK8rigQZmX1s9MIQfbgVm=?H=b&p+9*O#=F0zEPlLO zM}K7r^*aY|3M>$#%O)wEgO5hg|Io~2^z0A}{To^B3GQHTv&m?GhP+^48Hd@KJC_I< zz~Y!YJP#KFHY^75ft-)`s!pH|Y#7T~Xut5hY#noNL!aw5&7Gf?V$-L&2RgFgT9a}Y z*BPuB1jDDh^NHxBtmbrgxOlEhHfFCK8N|}2yQfJzadituC*w;h&Tt2cc4B8uXSmCv z=XYhbCxX0ThI?L+S{!^WOh=C9~cET^Fj*DQ;O7}Q$9n_YR-0VQ43jAC?jnb**cU4i=X3;S1(mnPRe@BaTk`7@irG5 zvJhA7&RZZb*q0XpWgF^LWmd&U4%TvWpDc{db@xDA`<`>%->B~x5zcc9uS~XQDV|Vj zp1UKnj*qmmwe#Gg*zN_Wu%FocX<*fx@1CcyrY>;rrsvt71#Xx6440cLZ!^drtTivF zmkZpJ*^`C%%4l+jIcB(n4d=lB^GN`!8CoTXUHS%mUbuyzpG2hEX=Xk9j6vSWh?(Ol-6Q*6)Ldli`{t)k-QQ7Wn{ZX zqx#M)c6VkwOC;(|VP*LzQWC`WEOX~z9hbPAp(oVK!v7dn~=lY-`+g=`GfJjk~C{50CA}(pTU$8`ij& z(ub`1TK5ZS!dR55X9I9TN?9$qhpB(gtl zK3*iy;()lSf|A@a#Gro7{-TldZ0x}(eED>CvLvoftrU6IAU(tL9;<}j)gvbh(qj|}LZ5mqZQRg|89U}3GBfUx`L0`W##oIPwB`8~CJcQlLaqND4*QLQ5z>gagykam${ zMOLU;WLBEO)^)+BCUuH@K=s~)&XFRWIzBS1w^ou{I?HPF~i}WoBC)oTEcv`Dbk!du;`*2ibO@aREEjKnYzd+Ny z-Nr?Zq|z_AZZO-!aHH&sYbLO?{Bb&ON_u37NN0M}Cr2jh=qc~TX^}+*=?JcU${vov zwefl4jtX>>_toskZB&{KMmoDZ4U98$BhQL-oOjhXkyk`I-J8AyA4e~HbFGM6A+n^g zD9FFq{Q0=@>gvd82Kt-#%T1AMD81s1-5hyHki2+Q1}nFk=Vx1FJ*o*Oij>vij=_-h)S;A&Kr{00c6v1!}gf!nZmy+YsbTo^% z=h4Wz2FZm2t;2@=f@?1|jN2d?FjA0hBhBnht*9XH+H;Xf0$Y2dg3kNoLS$A0z3#PL ziR==hwirGZRz-{H??*`J&1?LRI02eBmD&u##>^ zgXZHf&qF+WSOU+^SvczIcy?kmI)biZ{BVQ5F}Oc|#m09@$nIU59RD?ynt;;OTfBPw zaY1T^^CWh%c6{)Xuv+nyrRIs!(P`{q^>{SG+VN}IhCNY%QgpI`bYVT4#G`H3iN7h( z7G7KZcu`-d~HI*>ga6^qU*Bs8LQ zyz+xp(@(lLhvSY0`RkwED38V9mZ-K z6Hsopgq)N%W$VoN(K{fam5x?p<$^iKl@LkkDc0JO05v2q;e=?LDzlop_F23mf)ZL< z7KbKK;bOY-N>(UuLdcSoya@sw!fNNi-3!AKmI^eH(J=f-bteQGy=&tV&YB^oL(AZS z+e;)M2okGZ1m|CuOgPL^N+qO;GZsQC8Sf5ag-R!!@P?F0SW3m8=Nj0XpaEIDugWHf zluB$}6+E&~xdfEnD3)H9zpOleSxHvAJkM&Sg#I)a3$2Com`@T$c~5+jfMI1U+fxaY zQk4@{ilwvLl}cnet0Wv1$48)tKxOmhteP;2dUq!$Y^Jm_+tUzFURj-&RYSI}GJd4x zFN&qBR<-dsai{MQN9&-l`>-MPaKYrd3DYROp}xCS{e%Z}B&*#5Zynws;jrk;5~RL$ zc*BI1v@APW7q_%+gesw_%uyddwl@ZYmSB5Y;>WC}32Q}hy_=}*EwyCPMuPaW@2B;% zgu~SPpiM$Nr7zV-)oX_e^UiCJ9D7qb@=SJ`lua$pj7|y7Xcgw@fV_0=j10GDt=rPd^Ycx+R22bewXRx6tRjwXIce+ub`s=e^WBA$1s? zjbRtp&U?ml{xu8z13$k0E8z?kkA^zcoXT6!QKueSogEwX*-lX&i ztNjQJotSu-iZ9~{ThpmX7Ozc8+$MM*7!rF^vG#lyHmn!V;$37)Y=bUkP0T6K)oh(E z5$_5}yy_4G7RhYx@(NkJ2SO6jM&__`ITC}XzAn0!K4J-35`)>*yopz7CHByb^OyM& z@6cb^o*>*F7M_@-qm-4)pBOC75cFi0a*g*)RN_*jcUod%24!i55_@|?3MY0H=}F~6 z@AhJegQ&M&i9~$LMHX5F4@$~f%t&cEqlNH>L8TL)h=t?yYO`8cCb7Q&1*%*fuxgb{ zoW?@RC#HzIR;Y>z+h0Dh6s^gIl*VHURlo<+FWJMA_>ocZ|7-6|0Ghhe_MemFk_5sM ziGl(G8U!sUD2huGAc^}1mb$bqSivBIqGGjf!7ZXiWz(Z|14W>_PLX3>S{K@Ct1VQt zSZzgXmDUYrXvK>9e{L@AbUK}Hrv2=6=KDwcvp4TK_uQMi<-O;;=Xtxw5i*HhHsV9V zfbOBQL-;PsA3StNTfCJ>^m>23i<5uW`r@f85(V&Yra0GrB zShvRo{(l=6X!%uffl{$II6|38DRY*kLSj|OUSWD)h%^e5UbQIhD!zBjgw*Bz4np?6>k3|S=X(VoP0sh| zzNPv`m4xV9K1N4HYRFviGU$1&kgbHK(<)h}Y_)8FTu?jtF~(e3mn;bBW|9hV2c%^@ z2sOaN&;xu2DPWE|?ou9hGpmwj^2e_SGX9Zru^RatdqbhAuVX)Cj_HVZS$<^ZD!E3! zBfSs~?1N9YpepnQRO-FyWpd@a#mf0vhFO~wvcp;FmY=nj*NyBl+n?I6g9qRd=YB57o8!ql(V6=ny&n5?ioH~ zVGhz0{xtv0PUS9Tkwv*1sXj{}&H9q^W#xY5Tgn5 z$|hyAQsgXkmOCq*dG%m_XALw*$NeDM_Y=)NA-|uX=Ca48+$W^3s6u4cS^g-$g1C4=sXxEw8KoLk1{bx|lz+S6c08(YAR3vNFEg zgt(&Ku1W6*c|`sqN)Ydb#M^g})NFE?2ZdgKwg5U#2a9r{HS;GV)%XN^)94%y&6%gM zu|?QOk;`Y0Z|D2-wIV-cn=?YJu0Lc-2O^cxVCfJkAFIe;TKqvz%Cv>uaxQ$#;(xkK z*3{oFll3WXo%25v%lgh1HS_mkSrlSf&1~%c9vO04aiE8q>o!a#8c9{}<1ImXv`374 zu`)znGQPTpx?COdP+|F8{uNS{Hp^v-j*1Xu;EIIOaV+F`rYKU733dr`SY<0VL;3p^ zWD-3L37|^F=Zde9+pJk3g}QYR5-Ie<%`hAi+!OIMOhX2`6^`p1H$j;EW#n{t$MK}& zCyp18eyq{)p`!zGQ+PUcL?VoSPD7EuZK9Le;*kd&M=7?7IumwtIL2-Nz1k z+HyKoyPioBp0-=aS+NmmT~i^*HWS;O<#c(KMYw3+bNT=mE&qDv(sw#r-Ze%0IB2Z5a{g;qit4AUei}eDNV? z>y@6)9i7KI&qqp`FWj!WedAV-d?w9qVrbrvRERle#)WH%{Ry{4*CeFpg~ zvAe`w>dv`4xXaw-$i*56nQk*QwWql!yANr(Q~S6MDdTM4pFQ#oA-F2)dW4n-g*Xt) zH~+p|gTIt&(DHB0HTX-Z1}#YR_V3Cy_)DnW+%2b93+( z%QLEps!6JN)nwJPswt`jRibLD3LdL!nkrc}U6rCrRn7QG7P-fsL=KNG(XYrNhiPt) zH;J6(*JY7I1lHqCB4_z^S>$lE9&Zvk%dg8K_t=xjSwz1oi`-*RA~$gb4k;hN_pfD< z`?X2r>@(&v>@(*0*~<1AbM_f?!n>P&#+-e|9J=T1Gv*3J{9pTwIs1$`TNl!Q$&9(r zq?SJ_*GNmM5z8NyYosOBh~JafI&2WftkT{F>&{(Gk1fk0!!U^IY z-;zgMCmF0z5%DCU1qxKb^i#UDEvl%UB0LFM!a|f0PGW?2^>K+9Ll&_dmk1|97P4*6 zXzxhL0=CvOB9JJax9u3F%+WBj7IPWeV$1VcL)(ajgx0r>khAnD+8RQhW5W}*yCh^T zYe>?TpeRY}z_urAM-VcH-I}gNtnO^~e5&?CqL^iCQ7uB4VUiZ1WHYrUj-;`d(zWX) zWG3q~Uwd6lW-$MS+T{}Jw@@pW+^Uz-ZVOBZs9U0alaLhle1`TuQA}?+X1Ql~jM5d_P_bfKOU(*ewG75Mt9FH$B(d|E+B`zcEOm|cLorQRqm{F$ zwOTb%B--k`igwY<+4$1w>$EjAeU(4(ci%V=yS8p&9%%_mL?EiFIONa&p}^=(+s z9DGMIg^@gb=Z$$d3c2~(5n`H^kJjrpY6oG4z(y?g-mH}p8n<1mmN~e}M5*RhbR-vn zSnC(H9++IT8C9~kXtzobMI5q2n}>-^J779ds2wJzM+$LJ4$o?d{S7bDRydPq*uA~l zfnxGBi!Rg3FlD0*n;x-GJA;t1^l-WMOT>*9GVLQ;z)(=UU;7y@i~U+T%{-uOq8SJH zrGwfcnsE?I;fJskdg6f z3@2#An>aS=qgn(-4yR$qwR33bajk_%w6%^J;sdLXXyO#A zzaHi(6F&8$m#?8l_<8MCPhs+;Fu8&s?(K{Eqp%jMJCEy4ykH7_eXG_};v*_=Y4(D4 zJn7D6UBFQyVRY|B?K~37I)AQpcXQ`#vu_|uk9L9(V~OktY~(F%PJc3$UGA>K?1cmx z)>G$85@~Et-E~^qUFSgcy>!Jirl(Ghc-rVtod=ah=+bB?Z)l=b!7${*;1rL2@)0Se z8`72Z&RdafSU_)`MM65#-Tib7!JiYfx<_OpouJdrArokoPIsM*XK(3sMll_))5)nc zT31A#rY}Y7-XP=XID;;aHb=qUXwWs`0=#9^nQb%iEmx#BrFW4P$(i%CCF1!vWj(ST zG$cKmB(D8kvmO=4giC3hNmoWjQ$>H>7<$uyqma~Jm!gQX9pXoime8;$9WLztI$Xa` zQs;rXcj%Gxs8u}>$EpK8JxF(ls_zH7N&Wc?rE;*YfRN#A)=*tPK2ZO)VY)Gjk+!xV zMNeZ#=`cBAxDN9MhUy%oJ|gopI^*N8HclgKRr-kb%~c8)cESi<5Ftb9+L5{~G;5?z z&O&2!;lychOIznrai*`K4P6K2Dpdq1Va zG_%mBP#8B_S4W49hS4-e=SDVGbl%B!-VB~0r&aqpb!1&1baE$bKzXMFL=ag>z0x@k z55TdyY=yzLX%GB9`A@_lk&e^FNPa56V4KH5SJrgu`QNO2@S|RN`(M&4$IUF#%j6uN6 zVdmo;?5YvaI2b@TeTeA|Dj$(9O?3^n8j_?rRYd+cJ#b1f{;jd?=xMA z6w}`eFXor8tAAhduP8#$+8Y7w*=(-MIx&8#^`}T* z=HFj`9CKXz>m4Ms9QMIw2I|L3=&6Bt04EI5dlNc-h#tQ3Q2h~_F;ov9dzgL{ zAw5{(aD4<^>ftD?9ieX~VeIpfdbpyY>|P8?NH-QXN{=@jUv~5<{rgbg9Hn=l>!#?} zkPy~3L2prW0r(jlLyykYW3u#oeJ$4spFg6i8Th=Xe@Yq&Wc~~EJqQ;BdnK)!1$){; zeFY62oFXL~Y4idZVixIZNf#EjSnol&Cs6SfTZ1fNi5~uQFxza=2NIf<5`=e&4E8zWfWc)hF3)4^8c&!*-=7raY;s5g5Fube_G-2S6c|bim~PlR`bv2TI+msjNE zHIR6>TM%Qw2mEnCowgvlWt|x^C;IVO%psh+Qa`T)b&CyB+XO;os3SvLyn@p?I(a)T zgWyuVT<-nT#+*^f6Yxof_#I#|d-QT?adXdbnmu}2YnEE3zu{UO)l29OU?~;)l-KEz zd67!8i~3KG#MH0Zku^30tDO^xX{CIb1WK}W{jNX{1txvs=dq#_1RWF;N^{b&18MVH zb^y0a)pIbUJReyg?8b{56~cV6&;^mW=54!erIR!GwH8LE(XG1z9XbBp!=K(+7&)A; z;4F4g3%e1&D6*EOt-v?ELNCw6z9uZjvS4{dXe570WHt?zhDnJVJ-QUFMy*OcLT|Q> za)c_zYN}cUlO_Y3zCok0QJY2!D^zxwEJ0_D#I4H%iCv@RAF8a`HCpT%Eq09-yG9Ep zir6(;>>4dXzmHv`#jep}*J!b8wAeLTpzmSVXyN5v>>4e0jTS$2i~PMtOVi0;R%I#E z{n9MV#x?dZ3VRsEe}5Q-R{5hcQQ97U_}?B>VGpYKPYCO7HPbCLIH{2LHZKJsa#nsB#q-j>j%pP+tyO=KqF zln|nbr43hL$p0+z2*Q?bca@T9f+g)@WSvY_k98J8o82aBoqjb^E#{oC*4xzobF5W# zEmGqq=-IZy4h_N%>Aan&>xLd}7`YpHT`KG>pN3-~%8WGU0oL*hpOK}5R^_aIQP6sg zjyju^`9P_nAofZqb)CP^2uuF~f=xnU5Sr%0< zNI7%-Agggz*or6?wj%nBo@OLMdU!d_IT?*TKOUXsEJ%g>P*rub2d!+Lokg9>vj1&xN&Nv1-GYDj_!etdx%&>yOL8KgfWi*vTL_a%nI* z(xua3$e3opbukNu4KyqX2F-Lsk`yt>YiAnnI6}KMT}m?+7%n0jdBQ@&DhW3oRo}(f zsllV%Vi+4hqh2*20HMfmQ!2|w(E-Hf+Af`hmkbxhWEG2k)gX~_D^YZes$Rwh;`bQF zb7TcOyw7lhaLZ93p_ku5K?O5pOSxq*OrkmaVMseS zP=6OA?mW5ihy%xGik48)9)=^X#*2hl**2ANsF=$@!8)4bhytnFctpH0!z{(fb*vJG zT0?q)7;)H3+ZvaPxn$J*fX2F^z|Wg+VlsQ+WAqZ^ydW*XSwS+kB;3y^dWVf^bt|c#h8M1Vdx6vA2?pWFdWwW5nDT6kMT& zAt)&5XUve&v>S<1rin7Hz$G1Jl#&#>w676?#?i(s1gFLtj2#J$F`!@^E!1JHY@-o+ z%M;NIwbf)-O)!v2%x8dc4B_HY0MXoNzUDw%6wy68nwnGW!0}4w|1gMHAc1U84l`2 zH45P>DXKQ6E4anj-Uym=1#5?YVO*qu^!eWF#xJFu8}6CD)c-yT_S`h)hjA(x_EG;< zCR|7DO)*m9&h~aNIdMeI4hNcKghQT8(O%l%j|#OxraB47=Z7%U*d8!k4K}$+aJ%zQ zo3Jn#+(J#w65&4aj}>wU)YBXdO2WfUgCxY0EsikFgiJrX)z4&>b9@H0Khc~hlSfIK z$s{2@Y}P=N#DS&_G)bXwtQw6qv!9>qNsuuEIaX-S5Ev>(n9>R21Z=YFe2usmQ<_5N z4@3I6mh=I&<4hVE^P6lsq2dOjAe@p}s41OeDk5Be7;2#N%eR$o8pI)3#(9D11;TYj zK`7n3)P!J}g{D%{jZRo(dW7iI35!kLIMSJ|U1ox^eHV6gxoH=EA(vw>Wpt?(^)ptQ zD!5>*{~2969}UM_O|=rzfkm$|&5?0N6da}vt5Hyy!|#F#20~R^V93rh)kwHV7#yf- zD-0_rYRIB^!!+UEr>4!OI{2R$jM2Z1gbPrT+OaXtv=n+rl|n zT7gO9#_>62|3vqeplr{@xwwy7v9*6Pxl3sLL0m;e`%KWe@54^-H${pe%j|s6^d#xW zCLc7pi@DxdwTY59v1;~Vlc$)AfMGRV%3!E?$CQ+T?wpXQ{({KvW||Y;--9iR>Yp}* ze9LaF>3>1OeTNm+)1#RvxVo;thHwvID50uc7&O`aPe{a%MC^86|0`Q;*Nm*hi4Q*W zXP3GSI4!qk4YpuVy#)DtXWT5v*N5-Pg%1@TeHSk zv&LGp##ytTwq`wJ%^GjbnqbYEXw8~r&5E~XO}1t|Tb?yVdW!AoJ-}_Wu&u#;`AAC_ z_VKy_U-c9&+2?E~{QS{bl>;CvTrog9iiUFo)!fTSgt3PDyAJeNHOylm8|E=6C{|eK zfi2AjB#LR_ltGZRP8wudiOc))twFxq%l9v6Hq-P&37%vQJ$ftwKU_x=>f7V6`Cm#9 z4x1Ydy9RsOrG)ynKPE}ppp%H?1Nq%U#1V~_BtiuGUP5PIMpBXaB^TgzE*vF?x9k3}u;#DNYDU z_0La?kZ@rr=tLWKpdg(lM#;HQ7#wMI5e$`&7N)yE0gJzWs|sLD~h<$UdGpU&e8Gp3JA@T^KYUCI&gsnCe6&1h{RMw5mjCXcOjhCh?M-6Qinx zk&B5QQf@WcSwN%DW3}+w#2PVK1Ev4ODe{dCcn+uENUSB?Y*gt@! zA@O|=PKtJV(JI%e{LjzS`oX-vB6k#KG5Cvu!|2=ksqM<2oLV-Vj?IW{6g);J33-+- zEyg;h3Z~Y{*w_`3NwS|ik?C@Bj85LdS1O%a=UyC?EG4sP*goEHXlk8P$=LizwJ`DP z#EGfRPAsW3GF&FOM|Q{4?s)#rj%R4QlCtWlQt}FI(83ujiZaxDu|qXe54Ga<;bu8P z$#q<*`8TE(iMcWu9?_gy7~*bEP50q~UQN3y1EyoY`>eij&S$!#Up4{8+`FYt;~K38nq%! zP3yhPe((qVJHj07ZN?M#d(<;f;txZ;k69@ZKM=8pe&(sIY32EJDG8>reNdFKaq%88 z31DG;%rgn;#0vYG-xPD6c&dF%{ew{mXG( zSy(!@mNMO3Ba`vb#xcj*(Mgkgd$4EcnAeEOb#`m6d6iuDJcp>^EgtuWiOZW?B z0V5ga>28=Mo0@G#qLz6qgqktKZ$3-iWS%bO(y& zg4p-yx;uew*wy3a3JI;hfEWFVwD1(_R=jU+@+C3s@O3j%UB#lVhE~<%J6C^gPD5rI zk!T0?zl@6U-^)_9C=$7P*#4NcBSA>>uI%`5o=k-dhMT;{Z#`h1^cOv!tl zz1BWiM&JSN^Gy~!zyLa{D-r}s{gUIjH?YRj^r$8oj+kFE#)|f^2mZ+sggcFb@wSRA zreksvdSK>fNQnnkA-5o_o|`dDOiG!5a5Az=m7wZ+>hF(&iV$p*x`ieql}XoRq*2+; zRH4ZuWn>4O#tclojgLT4)bQjaA}hpd^Pm4A_11{wU_y4XhLOp4G3|OJ+@4YN^4dV` z=BVTfQp8SuT>8ygM1D3+$SvHUEjs6A>Ya0p8S-8TBj(8`{jXhD3cJ{dS=5p)J71o<8tv9XK zo2!a%X1-b+v%aicy#Xoa(zav=QP-kuNBYtBY+pKjOSa>x@depzd_m5+Ud;4Gj#kF| zyKMPaIeQ8HbWNZeGhNR)p|BZU8*(~(+Lrn$avO+kshd;oEMaMvGWV#v&1Uw?b>{VZ zM08%K+z^|oq*Lw$p_(ixH&$Y^J@Z8F^KETQpPF(TgcUvn@w@GX>&CJN% zC8m2V*`73QUnd#!bxXZ0Dc-tTTC7eDLNDSBmsKt&GQd)>jJcdx{^uu)z1J$O-Ycx$ zD~r9Y7k@a`#Z6Xqv0t{_s$6ANW)>?~XW`Js=f!%Nsb8JOh0Rsxz2H>5XMJ3;dP8_| zX`Z}zP<9H99z5BLd3oo5#frnJ(_ zn6hboqr~yyoriaLft-`8nPXYuha4Mry0B8X>U=8;Rl+6TqpI+pa9eddUwG1XHPicF z6t1;>qZcj}j&rmvUH`gpgRo?2EIcXf+|Z`NUj~-pWpXuV+6hr6T*3?n+9nBuiyq^<^-r&a&TmC%g+(DFz$ICOG=psNXS&O_x-*k4iHJHB+pV3{iNKE@S zYPxc9SazYQjT&FB8FRA}XilTXOEo%PB)Z0LAAg=j%BeQ=aHD1+vg(%3hZnQilbvYL z^cI&Wn>F%c@6E$Xl+plYar$N{Q@RDjAPKf9Ak=cL6Gm)79rzl218#tu;1;+I?tpsG z0R9aA0vf@0;4Wwa_rUkyK4=CHz(eo|@YBi(5CaL20uDF?iYy|&7f22iKm}R>cc2EX zK^x!!JV9H~4tN1?-~-wNU*HG)K?l$gXg~ny1Oh=2=nT4mCqOU=34}y`S1fb`p`bhH z0m4B~&-k=ZY3;F>q&;dP&1W_Ow7=RI&Kz}d*31;fB_Fap{EqLCm5 z#DY=aNe~B~0;9ngFcyphPlIQ`crXD>1d~8Km<*l;Q$PYp1XF<-B!Oul8B7N$U?s3v z@y{xd308wO;02Hc)`E3lJ;(+*AQ$9;e6Rs*1Qcuno571<3)l*_f$d-iC;)|EC)fpw zz;6Eh7h|CWl!BMQ%itC8DtHaN4&DHJz+Uht@Fpk&`#?EhU_W>Z8~_KwA#fPH4c-Aq zz)^4v90wKPUH<&PhlTgS32+j806qk#z-jOi_!v}zD)0$71FFGUa1MM5YQTB$1-Jxi z!DVm-d<12h@WG@MrKB&=0dxc!5CA%XKoA5vgDych|4(2c7=(bXpc@DUVW2zc0m4B~& z-rz%U3Y-QXfsa8Yr~;pWGoTur1?Rx0paz@=pMeYDVi3;%=UDgxTmrS=GPnZ11XsaV z;2O9N>cH3F8*l^M1h>F#a0k?b2JmO_7tjd41>b?Ypb6Xq--G+WN9v5jMpG|s^5x#g z;t96x(xxc^4%al;o`!uA6)-^3`6LRKD@39dzzSA@Ot2cP0l6R#~!gw)YQsv0d?r&Fb>2rGAcdY;u6w#Sbk$3o5|P0JW zAO$)eOaMBd2a%3!)WuCZ34QfWX$o!pVw0L`FKzO4co+5GQ_!h*O8bVmqs?}}3wVPF zCC(R6gVvx82m+l!FRHq<$)n9gG(8EdM>E+V2W(K#ms11UJ8#4?1)IT(bS}5KqyKAI zd>y<2_JF(YArlVkF7oO{yv^c*FNUbN-7J6oEv{ef&1*|Y_0Wn|N~M_wh1)3?W4 z)!VJ=9mVQ`%96#^+cm}VLMdC^wEbeNt?}_gc04b*m?IzTK51K`Ue3ka_?;QNU`K&a zc60TPm!{k5yRI%yl{4<)4y6Olq{V~SIAuXiPriu0a=LgoJ8vjx5?rpKH;eJjoS!X- zn`>M1!m}k`OW5!W1#imPyqP5%lx#!qU9a}Gl^rZA=}*||*}EFK;^18sKl(w*X!n2V z2OXj@l|`{OKgjc+_(3Zkj~^6>+~Hrj#(P~m!G&nEnZj$MJntwz)bpied+J%>c|CG2QNd1 z2kgE|Xq`vEe71A<_UZt7GJm&INz;toEuB4ccCTj6Roe$S7TkT z6t0W6ZO5KiRC3gf%^ke!RN&uwGN+Wb&mSKv@gZz(#;(dx{xf~2u_Tr4+q-LSV9Db7 zyHZ%8cj>BDZ10U-gTzuXVm)bW#MX}VyPKNf|7t(a#)N{k8*7waF zZ6}L=bfTvH@13Z_^pGS#=uC3^nG==qv(BW83;)`gG;Hl}?o9d{C#v1O&UkYH_dzpw z03L$&o!AErnqFeTwPG=wOZP||Qt*0{8pNJ%6Yw0N;a&kLJ-q%iNp_?|MrJJ_d>Lm*8VC$xJ5{)kY2e(!~{Q`8^ zHct9$2W>V|Q%}V#v~~F5s_ljTE|ibp@b-@Xmtwp1uy??6F6!ia&};RYQMOl?c5S=h zVg_Eo8~A|s;C6?<-gUj(v0)E3jVG*TOKA}Kn|sglcsfdcb3cjUf8S9;PkRI$cU0j! zw*u~6=)?C*+i*FK{M57P83FFCe)?n(o(R9|(*V-C_3Z=pNLX2i04-q`H33atY}0$C RNl41jys3W zk~-5;NKH=^f|i+bX~2A3ZkDyyfJOdO10^Bg4)F(Uz~_fDELZRRKFqwJOB2bM4mQ+I zt(L9gGTpSCHw!Bm-YKn4o<=E(QM+bU{N*7(x)pwoJ`S1R<@i&`B%H;hM!4r}hxb9? zIlwo1yevu80E;jG7sghso~7N4Xp@b(7_PNyt&v-WSfbsGG6-eWOPzI|=~+U_*m*Ux zE5@dkL?4zFDdu_v22>IqG<6~#3I!$ud_V*6Eet>C?}bE{>_@brn0}$~q}CIAP>3WF zF;=Qgw(yClDgHsq4@lLn#Si)^-m`v_I%`H#ovUp51Leh!H8xeb3f67Z$AxvSCkkAy zI#-gbs&O;Y-as+txM)t}XezsdBiQ7$Vck9o-3RpRV?M)i*vEi(fOmoS0Dk^`=o7#P zBV%gJjG_sdcCs5vpiQs2GZmUy=Jw2W%amq!(hm-kxj=H^S0}mXC&x-UwJM9$`EIiX z5qKqu%sEpWWf*aSSsn)XvR4AkbvXyLfgDwk$B|(l3nnE=l~O%^l63ySj~#TTAkt<= z+V~9$gyttF0aTs#2ufNd_ll_j!I%R#KUku?vZv{Iw%WTurW@G_bg9f{8r>3|U6JLj z%3Q6qQWo0jf?QeKU7aKTa~yT?dg`tZ57`&klf5s{yZv<=j1;BVsAEeosWXp7`fhgv zR_?fRVGh*D$)UTPHKZ1)loq7s%*A*WPeL{UqxskjoAc4CbIk7qihx~X9Nj4@FiJBp zj`uCkz*oU|00<4oP8BKig%U;T6q88y^^5I+L!7>3iTA#$r7EPjNxC1pQQ9c2mug|T z@ceWdh*JEf;E7P*7=c_NAX&U?rFz#Iux1!}2NprMiq9DZH?SDr=d^1}pA{lp+fq^_ z{1P#Xj&Sz{Yd;Cb1hB+ohijk{pn0<#s|{dD(K)tLVRO#Xb&h@K;4ch%o)1?Do15=K zAFdd79=N3=T)Q`^85pqCkC0xw0XDbgW}V|eExO+;K7M;(^Jezy+)UWry5A>0erI*R z^E$_+{HfrAh5W)K{au=$!=qny*CE}NyOsrOaK%r81}#MZw{^c*olBNz>qF0Ioi%M- z%pvquODUIdz}*t2w;h>9_bOXnE)Or$66iu`UXJVfAZ%`&M|BP*O@CD6(U8-j*`A6P zT`Sz}SJ)Ynpl^xoMA#~Hiq7%Y7rA6=dp&fG&P{_| z2^+FNs)yn2JUrAL*fhZAuR)yNJvdN;-cgctj$`om>LWUB|BMdjS}3f&m)wu4G|jGR zqI_5=!=pW*uWgy9?!J*c7c5>I8NkbC%VY2Lj(K;pF6j?x`OPNVYJ!t zmp4EYP6OOt4AH_X_A0ZDBj4tq`C25a^t@7PxYuGhhBmu8ULL1;Y1?W7#^w8J$LGJR zzbz#J&$K^Y=>=1NybL)7q`f4%v?=Q;5mgWD`g2fH$uU$lg(fhUX zs$K)-t=^8fCi=3aoW6F2g?NH{vOU4xTI|dkZQ3sfbA#YZHnPS=|Hcd2d@q9AIKO5d Or%9lwXN7h-Kl}&mB1g;s delta 3871 zcma)<3vg7`9mdby>>~*ql57G560&(g2nh*!X;dP+8VHaQ5F$~DVP&8y#_$mA5Zde_ zI6kHwF#qD%skXE}&{3yOE=ucEd@J}EnNDkKZ3n2-IwJ#6!U* zzVo~Pd*0{VP3$pO>|xh)KXkcA;^g^qJXgF;c(N}~1_FcDAvqU# zM_zZ=+h_9JKGzAi{AP`z@TyVxvAS+-d4QYnQIS}3|gKtc2>eah`XEjJi2YTyv1_Ax8sFNhbl|# zo{GIL_j`lKe=}5>FFp1CAP1BU6+nC~4LSnD3HhC6GjamEQo`+t54uBL&PIJ1% zn)8tt$eE_12O>>GkH(ta(oh_evYn&$=;e1=GF;puuY^NGZ8ekEn$2d5*usJ{Zn3%>w4**(x?h$)VhYY=SXSGadz|g$mj04rR9}V`tXEmmt4Q89UJrUxs{xvLg6C zc&4q6xMBE3U*2>CZ&fx8z7C#g zxw5J7*DAY783(c&o_E_CGPG|hptTzKl?MI@?5wi%@yQOd!c2IkCzKV#KdJ1rGIlTy zKMT2qgU`V&ghn)OvNFy>+Ev-cj)yH*G;uxZ6ZWVOo;B@PRs#P#Jkzh0@%eAzxiJnZ zW2-M}+<5FBw!RF?;Z8!Du8f<020ZJyG{=Mzfp?|N;3Q9 zwyV-)S-~QESJxs-F02Yjq^d@C7x-mYS84P+cw;LfdHx2p7P8;NHzEInGH#Qj@I2ke z9PIDPK2^pE{T!aV;G`pNMA<);EynY&bFj}CcvfL2`~~C@7KUHW#Hs+-q^uX z_#2RyIoKe44_H(gJAEHKFNpgcY#00x*zVl$#ci+$@Oyv{Is$(RKLGZyGWPlx%6^$- zGPfg~xY72Zd^4UurLj}s{qRitmGK@upzP1exX{PoxeGsW#QjC%{;iAyKM$XQ+ypL8 zgezbq-qGf@c-X3)A1KcwAj9&iza5`kcRDX)Ch4s!lOz5XDM>H>KVZZY7@A)!#hs6P z6SrxlvkCi5=T6HSw6`wpusp2X<$M}_2^~m>QmIJ$&4muaGc8uO7XBJ|&PTVhHSpJK z+^x!%f%Pdnr7QwA0?&6d@qOi7UC&$8j{;$yLi$PY{Ad*_<4=zX8dv0C#mcIb@dVc@ zYgEP~(xR+YSu{)yRo3NT-O5%fiy-dCJQ-Ymm%R4f zH)QtebUS}XQ{t91CoovvpPwSu#+S&rty3&DYuNh< z=G+w>V5tRz{ogysj{xp@j>apw+rO6B%8(pd5wfiw{AU%Hjkmugv9+0Y!QC^*Wn)EV zn|a>kzha-I$s_$m#f7LfO|G59WC3Vq> zx!-I9y|qU-l#f}})pxkY^3ZdZVdShMGUzNu0XN~#Gd?~ zM|-mc&mkssO_Lvr$8O#rCB`Ud&VXs2D?7US%@4&_GfKkEWzYkfpUP0oP{E+Ypu?av zxlu(|1H*Q>s(gl0p!#I64kd=k2CVNUzc3QpJWEm!(_y^=rkihFc@t1W_!!JxrFBs6S~Y~S&7)q0WxBYg60gEnl>_S zt`eHUimqw1ti)=@%{tOHn8tatnQmSq>%hLbK{bMDvw}t#BZlTy%~A}($=+~4BePE O=NZc|ZT@4X#RdTL0y}g7 diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.h b/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.h index 65a449ac..5c9653be 100644 --- a/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.h +++ b/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.h @@ -4,6 +4,7 @@ #include "deliverable.h" #include "crc_whole.h" #include "utility.h" +#include "FormError.h" namespace MasterEditorTWL { @@ -36,10 +37,13 @@ namespace MasterEditorTWL { // 書類出力モード(ノーマルXML or XML Spread Sheet) System::Boolean ^hIsSpreadSheet; + // エラーウインドウ + FormError ^hErrorWindowR; + // VC自動追加フィールド private: System::Windows::Forms::GroupBox^ gboxCRC; private: System::Windows::Forms::TextBox^ tboxWholeCRC; - private: System::Windows::Forms::Button^ butMakeMaster; + private: System::Windows::Forms::Label^ labTitleName; private: System::Windows::Forms::Label^ labGameCode; private: System::Windows::Forms::TextBox^ tboxGameCode; @@ -427,6 +431,12 @@ private: System::Windows::Forms::Label^ labMultiForeign2; private: System::Windows::Forms::Label^ labCautionInput; private: System::Windows::Forms::Label^ labCautionCheck; private: System::Windows::Forms::GroupBox^ gboxProd; +private: System::Windows::Forms::Button^ butErrorWindow; +private: System::Windows::Forms::Button^ butMakeMaster; +private: System::Windows::Forms::GroupBox^ gboxMakeMaster; + + + @@ -467,6 +477,7 @@ private: System::Windows::Forms::GroupBox^ gboxProd; // this->hSrl = gcnew (RCSrl); this->hDeliv = gcnew (RCDeliverable); + this->hErrorWindowR = gcnew (FormError); // デフォルト値 this->hIsSpreadSheet = gcnew System::Boolean( true ); @@ -538,7 +549,6 @@ private: System::Windows::Forms::GroupBox^ gboxProd; this->tboxWholeCRC = (gcnew System::Windows::Forms::TextBox()); this->gboxFileOpen = (gcnew System::Windows::Forms::GroupBox()); this->butSaveAs = (gcnew System::Windows::Forms::Button()); - this->butMakeMaster = (gcnew System::Windows::Forms::Button()); this->labCaption = (gcnew System::Windows::Forms::Label()); this->tboxCaption = (gcnew System::Windows::Forms::TextBox()); this->gboxSelectLang = (gcnew System::Windows::Forms::GroupBox()); @@ -732,6 +742,9 @@ private: System::Windows::Forms::GroupBox^ gboxProd; this->tboxCaptionEx = (gcnew System::Windows::Forms::TextBox()); this->tabCheck = (gcnew System::Windows::Forms::TabControl()); this->gboxProd = (gcnew System::Windows::Forms::GroupBox()); + this->butErrorWindow = (gcnew System::Windows::Forms::Button()); + this->butMakeMaster = (gcnew System::Windows::Forms::Button()); + this->gboxMakeMaster = (gcnew System::Windows::Forms::GroupBox()); this->gboxSrl->SuspendLayout(); this->gboxCRC->SuspendLayout(); this->gboxFileOpen->SuspendLayout(); @@ -760,6 +773,7 @@ private: System::Windows::Forms::GroupBox^ gboxProd; this->gboxTitleID->SuspendLayout(); this->tabCheck->SuspendLayout(); this->gboxProd->SuspendLayout(); + this->gboxMakeMaster->SuspendLayout(); this->SuspendLayout(); // // tboxFile @@ -788,7 +802,7 @@ private: System::Windows::Forms::GroupBox^ gboxProd; this->tboxMsg->Location = System::Drawing::Point(12, 678); this->tboxMsg->Name = L"tboxMsg"; this->tboxMsg->ReadOnly = true; - this->tboxMsg->Size = System::Drawing::Size(797, 19); + this->tboxMsg->Size = System::Drawing::Size(622, 19); this->tboxMsg->TabIndex = 2; // // gboxSrl @@ -1049,16 +1063,6 @@ private: System::Windows::Forms::GroupBox^ gboxProd; this->butSaveAs->UseVisualStyleBackColor = true; this->butSaveAs->Click += gcnew System::EventHandler(this, &Form1::butSaveAs_Click); // - // butMakeMaster - // - this->butMakeMaster->Location = System::Drawing::Point(656, 641); - this->butMakeMaster->Name = L"butMakeMaster"; - this->butMakeMaster->Size = System::Drawing::Size(149, 23); - this->butMakeMaster->TabIndex = 7; - this->butMakeMaster->Text = L"マスタ提出書類を作成"; - this->butMakeMaster->UseVisualStyleBackColor = true; - this->butMakeMaster->Click += gcnew System::EventHandler(this, &Form1::butMakeMaster_Click); - // // labCaption // this->labCaption->AutoSize = true; @@ -3008,16 +3012,46 @@ private: System::Windows::Forms::GroupBox^ gboxProd; this->gboxProd->TabStop = false; this->gboxProd->Text = L"ROM生産情報(必ず入力してください)"; // + // butErrorWindow + // + this->butErrorWindow->Location = System::Drawing::Point(652, 676); + this->butErrorWindow->Name = L"butErrorWindow"; + this->butErrorWindow->Size = System::Drawing::Size(149, 23); + this->butErrorWindow->TabIndex = 23; + this->butErrorWindow->Text = L"ROMチェック結果を表示"; + this->butErrorWindow->UseVisualStyleBackColor = true; + this->butErrorWindow->Click += gcnew System::EventHandler(this, &Form1::butErrorWindow_Click); + // + // butMakeMaster + // + this->butMakeMaster->Location = System::Drawing::Point(6, 16); + this->butMakeMaster->Name = L"butMakeMaster"; + this->butMakeMaster->Size = System::Drawing::Size(149, 23); + this->butMakeMaster->TabIndex = 7; + this->butMakeMaster->Text = L"マスタ提出書類を作成"; + this->butMakeMaster->UseVisualStyleBackColor = true; + this->butMakeMaster->Click += gcnew System::EventHandler(this, &Form1::butMakeMaster_Click); + // + // gboxMakeMaster + // + this->gboxMakeMaster->Controls->Add(this->butMakeMaster); + this->gboxMakeMaster->Location = System::Drawing::Point(646, 625); + this->gboxMakeMaster->Name = L"gboxMakeMaster"; + this->gboxMakeMaster->Size = System::Drawing::Size(163, 47); + this->gboxMakeMaster->TabIndex = 32; + this->gboxMakeMaster->TabStop = false; + // // Form1 // this->AutoScaleDimensions = System::Drawing::SizeF(6, 12); this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font; - this->ClientSize = System::Drawing::Size(825, 701); + this->ClientSize = System::Drawing::Size(825, 702); + this->Controls->Add(this->gboxMakeMaster); + this->Controls->Add(this->butErrorWindow); this->Controls->Add(this->gboxProd); this->Controls->Add(this->tabDoc); this->Controls->Add(this->gboxSelectLang); this->Controls->Add(this->gboxTWLInfoWritable); - this->Controls->Add(this->butMakeMaster); this->Controls->Add(this->tabCheck); this->Controls->Add(this->gboxFileOpen); this->Controls->Add(this->gboxCRC); @@ -3073,6 +3107,7 @@ private: System::Windows::Forms::GroupBox^ gboxProd; this->tabCheck->ResumeLayout(false); this->gboxProd->ResumeLayout(false); this->gboxProd->PerformLayout(); + this->gboxMakeMaster->ResumeLayout(false); this->ResumeLayout(false); this->PerformLayout(); @@ -3083,6 +3118,10 @@ private: System::Windows::Forms::GroupBox^ gboxProd; // 内部メソッド ///////////////////////////////////////////// private: + // ---------------------------------------------- + // ファイルのR/W + // ---------------------------------------------- + // 設定ファイルの読み込み void loadInit(void) { @@ -3144,7 +3183,107 @@ private: System::Windows::Forms::GroupBox^ gboxProd; this->tboxMsg->Text = msg; } - // 設定可能なフォームをすべて disable にする + private: + // SRLのオープン + System::Void loadSrl( System::String ^filename ) + { + if( this->hSrl->readFromFile( filename ) != ECSrlResult::NOERROR ) + { + if( this->rSelectJ->Checked == true ) + this->errMsg( "リードに失敗しました。" ); + else + this->errMsg( "Reading the file failed." ); + return; // 前のファイルが正常である保証なしなので前のファイルも上書き保存できないようにする + } + this->tboxFile->Text = filename; + + // GUIにROM情報を格納 + this->setSrlForms(); + + // 全体のCRCを算出 + u16 crc; + if( !getWholeCRCInFile( filename, &crc ) ) + { + if( this->rSelectJ->Checked == true ) + this->errMsg( "CRCの計算に失敗しました。" ); + else + this->errMsg( "Calc CRC failed." ); + return; + } + System::UInt16 ^hcrc = gcnew System::UInt16( crc ); + this->tboxWholeCRC->Clear(); + this->tboxWholeCRC->AppendText( "0x" ); + this->tboxWholeCRC->AppendText( hcrc->ToString("X") ); + + if( this->rSelectJ->Checked == true ) + this->tboxMsg->Text = "ファイルオープンに成功しました。"; + else + this->tboxMsg->Text = "Opening the file succeeded."; + } // openSrl + + private: + // SRLの保存 + System::Void saveSrl( System::String ^filename ) + { + // ROM情報をフォームから取得してSRLバイナリに反映させる + this->setSrlPropaties(); + // マスタ書類情報をフォームから取得して書類に反映させる -> 必要なし + //this->setDeliverablePropaties(); + + // ファイルをコピー + if( !(filename->Equals( this->tboxFile->Text )) ) + { + System::IO::File::Copy( this->tboxFile->Text, filename, true ); + } + + // コピーしたファイルにROMヘッダを上書き + if( this->hSrl->writeToFile( filename ) != ECSrlResult::NOERROR ) + { + if( this->rSelectJ->Checked == true ) + this->errMsg( "保存に失敗しました。" ); + else + this->errMsg( "Saving the file failed." ); + return; + } + if( this->rSelectJ->Checked == true ) + this->tboxMsg->Text = "保存が成功しました。"; + else + this->tboxMsg->Text = "Saving the file succeeded."; + this->tboxFile->Text = filename; + + // 再リード + this->loadSrl( filename ); + } + + private: + // エラー専用ウィンドウを開いてMRCエラーと入力エラーを表示 + void openErrorWindow(void) + { + // ウインドウを新たに開く + if( this->hErrorWindowR->IsDisposed ) + { + this->hErrorWindowR = gcnew FormError; // 閉じられたときだけ再度作成する + } + this->hErrorWindowR->Show(); + this->hErrorWindowR->Select(); + + // 言語設定はメインウィンドウにあわせる + if( this->rSelectJ->Checked == true ) + this->hErrorWindowR->changeJapanese(); + else + this->hErrorWindowR->changeEnglish(); + + // エラー項目をgridViewに追記していく + this->hErrorWindowR->setGridError( this->hSrl->hErrorList, this->rSelectJ->Checked ); + this->hErrorWindowR->setGridWarn( this->hSrl->hWarnList, this->rSelectJ->Checked ); + } + + private: + // ---------------------------------------------- + // フォームの初期設定 + // ---------------------------------------------- + + // 設定/選択可能なフォームをすべて disable にする void disableForms( void ) { this->cboxIsEULA->Enabled = false; @@ -3176,6 +3315,10 @@ private: System::Windows::Forms::GroupBox^ gboxProd; } private: + // ---------------------------------------------- + // フォームとSRL内情報を矛盾なく一致させる + // ---------------------------------------------- + // ROM情報をフォームから取得してSRLクラスのプロパティに反映させる // (ROMヘッダへの反映やCRCと署名の再計算をしない) void setSrlPropaties(void) @@ -4109,6 +4252,10 @@ private: System::Windows::Forms::GroupBox^ gboxProd; return true; } + // ---------------------------------------------- + // エラーメッセージの一元化 + // ---------------------------------------------- + // テキスト入力がされているかチェック System::Boolean checkTextForm( System::String ^formtext, System::String ^label ) { @@ -4193,6 +4340,10 @@ private: System::Windows::Forms::GroupBox^ gboxProd; } private: + // ---------------------------------------------- + // 日英両対応 + // ---------------------------------------------- + // 日本語版への切り替え void changeJapanese(void) { @@ -4220,10 +4371,11 @@ private: System::Windows::Forms::GroupBox^ gboxProd; this->combBackup->SelectedIndex = index; // フロントパネル下部 - this->gboxFileOpen->Text = gcnew System::String( "ROMデータファイルの入出力" ); - this->butOpen->Text = gcnew System::String( "ROMデータを開く" ); - this->butSaveAs->Text = gcnew System::String( "入力情報を反映させて保存" ); - this->butMakeMaster->Text = gcnew System::String( "マスタ提出書類を作成" ); + this->gboxFileOpen->Text = gcnew System::String( "ROMデータファイルの入出力" ); + this->butOpen->Text = gcnew System::String( "ROMデータを開く" ); + this->butSaveAs->Text = gcnew System::String( "入力情報を反映させて保存" ); + this->butMakeMaster->Text = gcnew System::String( "マスタ提出書類を作成" ); + this->butErrorWindow->Text = gcnew System::String( "ROMチェック結果を表示" ); // 提出情報タブ this->tabSubmitInfo->Text = gcnew System::String( "提出情報" ); @@ -4381,17 +4533,18 @@ private: System::Windows::Forms::GroupBox^ gboxProd; this->labRomCRC->Text = gcnew System::String( "ROM CRC" ); index = this->combBackup->SelectedIndex; // バックアップメモリ - this->gboxProd->Text = gcnew System::String( "ROM Production Info.(Please Input certainly)" ); + this->gboxProd->Text = gcnew System::String( "ROM Production Info.(Please input certainly)" ); this->combBackup->Items->Clear(); this->combBackup->Items->AddRange(gcnew cli::array< System::Object^ >(9) {L"4Kbit EEPROM", L"64Kbit EEPROM", L"512Kbit EEPROM", L"256Kbit FRAM", L"2Mbit FLASH", L"4Mbit FLASH", L"8Mbit FLASH", L"Nothing", L"Other"}); this->combBackup->SelectedIndex = index; // フロントパネル下部 - this->gboxFileOpen->Text = gcnew System::String( "ROM file I/O" ); - this->butOpen->Text = gcnew System::String( "Open a ROM file" ); - this->butSaveAs->Text = gcnew System::String( "Save a ROM file" ); - this->butMakeMaster->Text = gcnew System::String( "Make a submission sheet" ); + this->gboxFileOpen->Text = gcnew System::String( "ROM file I/O" ); + this->butOpen->Text = gcnew System::String( "Open a ROM file" ); + this->butSaveAs->Text = gcnew System::String( "Save a ROM file" ); + this->butMakeMaster->Text = gcnew System::String( "Make a submission sheet" ); + this->butErrorWindow->Text = gcnew System::String( "See results of ROM check" ); // 提出情報タブ this->tabSubmitInfo->Text = gcnew System::String( "Submission Info." ); @@ -4531,77 +4684,6 @@ private: System::Windows::Forms::GroupBox^ gboxProd; this->setSrlFormsCaptionEx(); } - private: - // SRLのオープン - System::Void loadSrl( System::String ^filename ) - { - if( this->hSrl->readFromFile( filename ) != ECSrlResult::NOERROR ) - { - if( this->rSelectJ->Checked == true ) - this->errMsg( "リードに失敗しました。" ); - else - this->errMsg( "Reading the file failed." ); - return; // 前のファイルが正常である保証なしなので前のファイルも上書き保存できないようにする - } - this->tboxFile->Text = filename; - - // GUIにROM情報を格納 - this->setSrlForms(); - - // 全体のCRCを算出 - u16 crc; - if( !getWholeCRCInFile( filename, &crc ) ) - { - if( this->rSelectJ->Checked == true ) - this->errMsg( "CRCの計算に失敗しました。" ); - else - this->errMsg( "Calc CRC failed." ); - return; - } - System::UInt16 ^hcrc = gcnew System::UInt16( crc ); - this->tboxWholeCRC->Clear(); - this->tboxWholeCRC->AppendText( "0x" ); - this->tboxWholeCRC->AppendText( hcrc->ToString("X") ); - - if( this->rSelectJ->Checked == true ) - this->tboxMsg->Text = "ファイルオープンに成功しました。"; - else - this->tboxMsg->Text = "Opening the file succeeded."; - } // openSrl - - // SRLの保存 - System::Void saveSrl( System::String ^filename ) - { - // ROM情報をフォームから取得してSRLバイナリに反映させる - this->setSrlPropaties(); - // マスタ書類情報をフォームから取得して書類に反映させる -> 必要なし - //this->setDeliverablePropaties(); - - // ファイルをコピー - if( !(filename->Equals( this->tboxFile->Text )) ) - { - System::IO::File::Copy( this->tboxFile->Text, filename, true ); - } - - // コピーしたファイルにROMヘッダを上書き - if( this->hSrl->writeToFile( filename ) != ECSrlResult::NOERROR ) - { - if( this->rSelectJ->Checked == true ) - this->errMsg( "保存に失敗しました。" ); - else - this->errMsg( "Saving the file failed." ); - return; - } - if( this->rSelectJ->Checked == true ) - this->tboxMsg->Text = "保存が成功しました。"; - else - this->tboxMsg->Text = "Saving the file succeeded."; - this->tboxFile->Text = filename; - - // 再リード - this->loadSrl( filename ); - } - ///////////////////////////////////////////// // フォーム操作メソッド ///////////////////////////////////////////// @@ -4972,6 +5054,12 @@ private: System::Windows::Forms::GroupBox^ gboxProd; } } + private: + System::Void butErrorWindow_Click(System::Object^ sender, System::EventArgs^ e) + { + this->openErrorWindow(); + } + }; // enf of ref class Form1 } // end of namespace MasterEditorTWL diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL/MasterEditorTWL.vcproj b/build/tools/MasterEditorTWL/MasterEditorTWL/MasterEditorTWL.vcproj index aa7c9de5..81e7fe65 100644 --- a/build/tools/MasterEditorTWL/MasterEditorTWL/MasterEditorTWL.vcproj +++ b/build/tools/MasterEditorTWL/MasterEditorTWL/MasterEditorTWL.vcproj @@ -271,6 +271,20 @@ > + + + + + + diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL/srl.cpp b/build/tools/MasterEditorTWL/MasterEditorTWL/srl.cpp index 2ac63b4e..2c83b651 100644 --- a/build/tools/MasterEditorTWL/MasterEditorTWL/srl.cpp +++ b/build/tools/MasterEditorTWL/MasterEditorTWL/srl.cpp @@ -68,6 +68,12 @@ ECSrlResult RCSrl::readFromFile( System::String ^filename ) (void)fclose(fp); return r; } + r = this->mrc( fp ); + if( r != ECSrlResult::NOERROR ) + { + (void)fclose(fp); + return r; + } } (void)fclose( fp ); @@ -598,4 +604,21 @@ ECSrlResult RCSrl::searchLicenses(FILE *fp) } return ECSrlResult::NOERROR; -} \ No newline at end of file +} + +// +// MRC +// +ECSrlResult RCSrl::mrc( FILE *fp ) +{ + this->hErrorList = gcnew System::Collections::Generic::List; + this->hWarnList = gcnew System::Collections::Generic::List; + + this->hErrorList->Clear(); + this->hWarnList->Clear(); + + //this->hErrorList->Add( gcnew RCMRCError( "テスト", 0x01, 0xfe, "テスト要因", "test", "reason", false ) ); + //this->hWarnList->Add( gcnew RCMRCError( "テスト2", 0x01, 0xfe, "テスト要因2", "test2", "reason2", false ) ); + + return ECSrlResult::NOERROR; +} diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL/srl.h b/build/tools/MasterEditorTWL/MasterEditorTWL/srl.h index b1bea424..dace2ac1 100644 --- a/build/tools/MasterEditorTWL/MasterEditorTWL/srl.h +++ b/build/tools/MasterEditorTWL/MasterEditorTWL/srl.h @@ -109,6 +109,67 @@ namespace MasterEditorTWL } }; + // ------------------------------------------------------------------- + // Type : ref class + // Name : RCMRCError + // + // Description : RCSrlクラスに持たせるMRCエラー情報クラス + // + // Role : 構造体としてデータをまとめておく + // ------------------------------------------------------------------- + public ref class RCMRCError + { + private: + System::String ^hName; // 項目名 + System::UInt32 ^hBegin; // 開始アドレス + System::UInt32 ^hEnd; // 終了アドレス + System::String ^hMsg; // エラーメッセージ + System::String ^hNameE; // 英語版 + System::String ^hMsgE; + System::Boolean ^hEnableModify; // マスタエディタで修正可能かどうか + private: + RCMRCError(){} // 封じる + public: + RCMRCError( + System::String ^name, System::UInt32 beg, System::UInt32 end, System::String ^msg, + System::String ^nameE, System::String ^msgE, System::Boolean enableModify ) + { + if( name == nullptr ) + this->hName = gcnew System::String(""); + else + this->hName = name; + + if( nameE == nullptr ) + this->hNameE = gcnew System::String(""); + else + this->hNameE = nameE; + + this->hBegin = gcnew System::UInt32( beg ); + this->hEnd = gcnew System::UInt32( end ); + + if( msg == nullptr ) + this->hMsg = gcnew System::String(""); + else + this->hMsg = msg; + + if( msgE == nullptr ) + this->hMsgE = gcnew System::String(""); + else + this->hMsgE = msgE; + + this->hEnableModify = gcnew System::Boolean( enableModify ); + } + public: + // gridViewの表示形式にあわせる + cli::array^ getAll( System::Boolean isJapanese ) + { + if( isJapanese ) + return (gcnew array{this->hName, this->hBegin->ToString("X04")+"h", this->hEnd->ToString("X04")+"h", this->hMsg}); + else + return (gcnew array{this->hNameE, this->hBegin->ToString("X04")+"h", this->hEnd->ToString("X04")+"h", this->hMsgE}); + } + }; + // ------------------------------------------------------------------- // Type : ref class // Name : RCSrl @@ -201,10 +262,14 @@ namespace MasterEditorTWL //property System::Boolean ^hRegionChina; //property System::Boolean ^hRegionKorea; - // SDKバージョンリスト + // SDKバージョンと使用ライブラリのリスト property System::Collections::Generic::List ^hSDKList; property System::Collections::Generic::List ^hLicenseList; + // MRC機能でチェックされたエラー情報のリスト + property System::Collections::Generic::List ^hErrorList; + property System::Collections::Generic::List ^hWarnList; + // constructor and destructor public: RCSrl(); @@ -238,6 +303,11 @@ namespace MasterEditorTWL ECSrlResult searchSDKVersion( FILE *fp ); // SDKバージョンを取得する ECSrlResult searchLicenses( FILE *fp ); // 使用ライセンスを取得する + // MRC(Master ROM Checker)機能 + ECSrlResult mrc( FILE *fp ); + //ECSrlResult mrcNTR( FILE *fp ); + //ECSrlResult mrcTWL( FILE *fp ); + }; // end of ref class RCSrl } // end of namespace MasterEditorTWL