From a374caf9bae95dc739e1e359c011fb60f11e43e5 Mon Sep 17 00:00:00 2001 From: Edouard DUPIN Date: Sat, 9 Oct 2021 08:28:07 +0200 Subject: [PATCH] [DEV] try checkbox --- .../resources/ewol/theme/shape/CheckBox.json | 39 ++-- .../resources/ewol/theme/shape/Entry.blend1 | Bin 1303908 -> 1399512 bytes .../ewol/simpleWindowsWithCheckBox/Appl.java | 80 +++++++ .../ewol/simpleWindowsWithCheckBox/Log.java | 39 ++++ .../MainWindows.java | 220 ++++++++++++++++++ .../SimpleWindowsWithCheckBoxMain.java | 15 ++ .../atriasoft/ewol/compositing/TextBase.java | 4 + src/org/atriasoft/ewol/widget/CheckBox.java | 62 ++--- 8 files changed, 398 insertions(+), 61 deletions(-) create mode 100644 samples/src/sample/atriasoft/ewol/simpleWindowsWithCheckBox/Appl.java create mode 100644 samples/src/sample/atriasoft/ewol/simpleWindowsWithCheckBox/Log.java create mode 100644 samples/src/sample/atriasoft/ewol/simpleWindowsWithCheckBox/MainWindows.java create mode 100644 samples/src/sample/atriasoft/ewol/simpleWindowsWithCheckBox/SimpleWindowsWithCheckBoxMain.java diff --git a/resources/resources/ewol/theme/shape/CheckBox.json b/resources/resources/ewol/theme/shape/CheckBox.json index 589e187..e7a42f9 100644 --- a/resources/resources/ewol/theme/shape/CheckBox.json +++ b/resources/resources/ewol/theme/shape/CheckBox.json @@ -1,25 +1,24 @@ { - mode:2, - display-outside:false, + # padding "outside" the object in pixel ==> prevent bad display + "padding-out-left":2, + "padding-out-right":2, + "padding-out-top":2, + "padding-out-buttom":2, - padding-out-left:1, - padding-out-right:1, - padding-out-top:1, - padding-out-buttom:1, + # padding "inside" the object in pixel ==> prevent bad display + "padding-in-left":2, + "padding-in-right":2, + "padding-in-top":2, + "padding-in-buttom":2, - border-left:1, - border-right:1, - border-top:1, - border-buttom:1, + # render program: + "program-vert":"THEME:shape/aaRenderShape.vert?lib=ewol", + "program-frag":"THEME:shape/aaRenderShape.frag?lib=ewol", - padding-in-left:1, - padding-in-right:1, - padding-in-top:1, - padding-in-buttom:1, + # Object to render (with modification) + "object-file":"THEME:shape/CheckBox.emf?lib=ewol", - box-size:20, - box-inside:12, - change-time:356, - program:"THEME_GUI:///CheckBox.prog?lib=ewol", - color:"THEME_COLOR:///CheckBox.json?lib=ewol" -} \ No newline at end of file + "palette":"THEME:shape/palette_gui.json?lib=ewol", + + "change-time":200 +} diff --git a/resources/resources/ewol/theme/shape/Entry.blend1 b/resources/resources/ewol/theme/shape/Entry.blend1 index 6b21dba5838696cb7d9d529068e0e455ef4795ed..0c39e1a74e8d25bf5188857dd98fc0421ecb110e 100644 GIT binary patch delta 152993 zcmeEv31Ah~)$p5n^I!rA1_=-#fdBy_1O(Y4vV{GqC?JBUAcU|4WfeqRNukdRrsoHY^_S`*V29p|5@kF8xr=2{o8?;JNM4n?m6e) zx%+(d+UQ-+j$e}znOgecU%oDHacLy_Uc(Oelwb4P@~Q!)XP^CH^d$aDqi3H30-T)R z$mrP>70ziDRnCg?s`3AkssI&yD8Gt(>pfClHTheh26V}9&Ley(Kvh)S?|xf6ViuRo zI#)%->IQ?qC52#09cQ`X{`B(lsyoW7A}8C=FRG)QR;+IHqw=biCp&wi6K|Ch;=dJJ zv&OTJUVO5%29<=qG>2Hyq$B-Lxv32%_@~W{X z+r_#hi+@Oiu-MMy--35{`-8pfUrb>qRwTDa#N{D|E7pky+yysyX9^t57~ zlf~BWkB>{yGgp`2ejpSI9XRn}h0v`vEIk}R9X~IvRkEXEyr!J#9CcWFtcWK7FAAn7 z`=bx2{m}>N?pFb{lYXVagl{+w_76yOLgVNUhy0=a4+&6*&(Y+i=mh$9syn;ai z|Ih7Tn{Rn0KbiJNAxiO&-v_>#dcgAsw7*8`wkXzYiaIX;H8b^P6zyLVkmn$ESpGfx zqs{$3kT8jwrp`jY{rya8)=Ev9I=-}TtNo88S0}?1n ze)zBbYp7bW9`O4B*|Jwf$ z_CMl!!0!Y8`@{RgH)a3Y{Nca$KZN~{xgPNQfdBqre>hq8SAQtgn`3Q294B6F{eM+` zU57Qc|AI`9yB_fSfd9Vy_HT{-)erpPaoY9>O4jOs3;U}-_}hf&6ScMr{Wd=IJ=i}8 zaBwA27ab3w>6L%K-4Attf_>uO%Kmjw57c1)Z`2=-+Ws~9#&P(>zm@&#pdL5^`v?62 z<0q_+I3f10NuVS2iGNG`pTK(H80~+;e4@_me}q2qZ)yJ%SPz^)`yZ1}e53ZS!6!|Hne~#Q4Ptv45~0Sfv_0eE4m$e@)WXwND(o{SW6eN9G?V#QwF_ z1Lz0-pI6cnn*O%iKOt$Np3t-t;Tv^l|HJtQK8N*RYP%B=)>IGp?O((Fzq9?-4}#&* z_{GV!|Lti1BXg9a@sD78pa#2Zy-=z*Nns5Y#lgidsPNcKM49#vS0j1*+1wH5HC$u2h`g&039~1 z2FFs{V|a*q;BfZ$`-0w|NS^@v`yJ%4IXxEb915q#_y3^~PVlo6WB(%*s)l;tSnRKU z;183{=r`%1?*sNf6mXsR#($LkYp4fKl>Pm_;J-hdUmS(~59J&9?3n!HKg#~9AzwXE zN*j+8Z9u>6>hfOw;so0NaQ>msRSOjUN7~<450uIPL0#JVP_#>f57jZgp%Cq_j!{#X zm`=bv8f8H2DZRR=F^dq+ap%@&8Z`7szkHmLMj|8X=VX*yo zdy)@$^+3=EYKkAXUz`y8ABS)J*ZydKuR(CQdY~pBs4eY?e520oe;D8Rul@a%3v~>F z?Sb0td#ve6esNOm5558CFF*}=sNZqCTxw|-_%;6RsQ*D|{&2MRKhgeia_pb*6|jFIa%A@j=kYtzG2W;9yb%RiQ*qspGfKh4mtA(* zf%)?n9Qf`HHy)>nf$ZU|7I89>9$2xmuHWb&Te3Mpo5=~s9zW``f{HrXP0Y?mB(<8XLq+Vng{2oy zoCuX{UA=S#z%|!if8ZAA3)H0L z+R{#d_D{B^M;@=HNu%JsJtmA}@4YF9YLl5zn_Lb3tE1IvZMw$vqtN%s)@zp|kydrr z_OeT%7M?&p$u;qegKFYK>E#4JJK4Hx;@6$(sBy^^>|d+$D>f`m57dxrj;h?A0DYC# z8N=G0TvS0XjEZI@ODa~Zi&ktvecYPstH-W`GPeT6L!EqMdYM*d`tUMRVJ*I)BKE*2 z&N60upcANS{Mpv*2SaYyoB$Wl9FNeOV+=*WioK<`RowXCm_+uLrc1j_Yl9nsLoho> z8$asocRRvtX*Tw(ytg9ukk3jt<@gHg4b)vb{%jm+wkf;K0$K1xUHw?aib^R%=uoTj zy>1G>yN<-6j#QK*fm>bi_I*!P#2)pjj~qP}J)wx+saIcf0LQ3St~wHWM+sB0?a3D_ zZhYM5gUG$C#W^y1GH>2|=yKn{%u#@&|5ZHs{4XkEPXsc!BJcD|p-YeS%a-48;I@^k z4oCYZPd?e!N|Y6pb46aogB#MDPn3@4)u1UH8(0Y={_v}~|Jjc#VoxVoyJEwQSrrdH zmlrNuzPw`f%b!%-_)I{sWf|}sXm4=B%Sy{C?tki&iUoyEMeI4C^F(ffKa^F1dnP^n zon^}i?#4|(>*<^X%s`i6p34ef_nq&6JU&{_WhUrBwMMj_16-hY?RD1^EYZU>g3V08 zVA|8E;cKqDE%RN=_}m^om{sGk@~TtC?2Cx}W9;ep%suXPs5C+S*&OB3>AHhOqFwU%x{>Kl9Mf zE8_2cSu5>=GtWFE?Sg`W<9gorF!+ak-nZ`|`S(4{^FD`r-lxwY>GwIz^WKMkZuPF% zw*POnX}_Xsf323OsQRkbXI9UOZC@RN>b_br!#&P8x@;y;j=R=@r}l zUaM5$(@#JBP?W>nx^+9A=M`07Iu&cIFKX8{KfiN@p9r@h}7Dd^=s1CNk$En!#yqw}K#7i|im*&DH%q-EYbyEme)UH!)F zdraecR+qHc(}M_#LV_9}-TKlr68R+#H6GiNoSwP$H&vjp+`)`(->`XhS*I<;$^GnCNf@Lwv!{V|?u>~W){uO85=Nim_)-buPjfu>;r*Q3 z-5k22e=B5#_BR^gS{8~Eh8XLIqLAV~@D8W~wbM1aY)$94#Kg8e(OKU8n7Uwn@#O0$}q!c@yiAqv1` zgV{5$K@&3-(wb^s8v`QZ?t2pQX!drpnwEBPAs$jD^Z<|*Fphu_R{{vj*YG4fg;Tt> zf~WKp>+43zcxx{dKt(K(xDretCJU-?idP_b#2B^Fs0v zC~ks%2HmQj2+r(HvznZzBod%}hoE_ItA2H==)O|KQ22c!IjPv}JOwN-5Q?!&;z~(% zLzrgy((pkTuK2L>TI<)U*@hSbp*#vCuDle3rLwL$7^6fmlvjc9AoZHTHDIh24CSR5 znV3Jbyao&{i^_{2!5vxs+W^Bsnr3HVxJgqbudcyBjnl0rrCOG=#0F6*(`o~C?|ptf z0Uy|zR=Tj>!(F#k-q+B8*=)*@^Cmk8Rmv6T~EGhw(H)7Z+lOVZ4;##ZypwuJ{b=DlG3RBMRzvWEtK5mr>EC&j?}qz3q@$t{;fyxIoAewi8_Z#-kiy;bhnuPlP|DYh z%x4*(l>Lot$gs^yL3yy|$R~NS@fj)vFTB^w?Ep$anZ~8LqyI{kcFFI4jrDjZt9>Ne z;URFc^@GEG&AL1*q8|UH*>i{0$t-9F1|*L%J2yHRrSjfTH%#(!$UeCxg#HVq#H$JX znl(ewxVj;qYA5z8VV}zTiB!oF#y%F8lF)qF$;xA|auLOhZ*H}T5R?IBHZdF4TWRKQ z@VYRn?(ycVy7!t}-RmLW{f$g|rj>*0Ty>t^vMZ*s7bWCES>5&`*LQz<7MT@8HfwY> zn>GIa-*Q!jUmYkA6)xy(MI02~^k`w76>)RnJ!TfRupZC5G)%8h5aoL^lxJgHea`~MrOM`N{NB{(itQR*6L*-8>O3~9P5g-ynzftp;_O~Y8Bzz zZSAZ(oDL|$;8xaSUCVy_yQF4URI;aGObtr9!3IR5*q=9Z_9!&{vLJf|ZpvE%n^4>s5&W4N^UYnj|*BG`~&}b5Fl8jSGZJ*RV+~$g7h-I*q zDa){&yU=r}xdYkHa{73=XUwGB6LAB%&&UvBmD+G(qOGlpNcETspueY=mElk#dO*ab z+oG=4ZQ1b);5ka#-~zIP>V)yg`mwPLl82z?H#t_Trkd0c`~)i-ew5PIx*@{1fCxT^ zh~|;D)^!nL!zwNr$K)t9MK?hMk=h9*q_!DAqvs+ zvK&k?%lm>_2p{3*qza`<4B0{Xmel8-hB+klo!`k?(zWdUqe`dX}jENYSwLoRwVi#=9bE0J;p|;o7&=wL$6q~WSfxSQWzx< z)fh@)q+6;LNlXTGRbmWHk3LX)(j6G@PAXJXCw|ZaOc&bUkbGa+N5!W#bf4uqkwPxB zaWPr+6UxjP*kC4)<~GV8uhcS5lED~|d|Ife_F~mY4GflP*7vlo>m8dQ2AiK;gbB`X zFq8t~Bo!L$=C+uZ_(g(VoQy6)w}BP_G34@aF$25TCV5o)VOdEj@Pca<;ajlL6=~5+m=g$C1 zMp<1V?%E$CMPO$h9A)i`M0<~b`1Kr%`KN6J$0dVLpI$4H+@7{5GNEfc09Db zm=Lwd81WNGJuikz0KnHkiP(hO)&4_j97l6GbT4Crz$3agNqSxfe!f;hw)lit@^u{q zSw7Jk=}djUe4t6M4ri4YI%dqy`i}WxqV-1af}a5dsuzb5A;hLs2}r2&Z-;x#kNfB| z3`af0g_D5kA90u=7FadBY4P<)p^!Zn;?GhUGFPen~VJcJ;oc{-BLH;>TJoAVr7sdon!W9=JotkYqXS@h`?wJi89J$4^A0>9%MxoPt>^cydpPi6Hb}`^j)tqVjcjqi~;T$U`QvEzM zZt;E5*D@RCS`H_e=jU1_4%LK>ht$6`Qh?10h5B_phZD@J^R2!Ss?&_Mz-rPW4~YSD z_d7RHaeyq*Wf|-K`kl;|{xDp~gKpohrs5=11vC0-*)PuNIzpBQ+*FV2@er~-^X{BTK8ttEy$pc;3-{%V$Lgr)(F3bKQ05C zRxWz96H#t&HY^A0L<4bmq5pY3vwykOGLp9d6TyT%Ot;_GJ41-zn?UgCmQm@J5l~Gj zxgZQR8O-n-z?Ss-H_LCZihHkJ0PO}4ykH@RB6mpBW0J1n#KqXoXmKNU2@CP%Pwk9# zsSQ)j)ElkTwCE6S8Bj>?*Ae>=1z4b-qd;FtuZQLls!V!_SU;s|T$shh1En!5Er^4bc8AQUOwtdBvv ziyCR$Vpfw5qo1Eh4dX0I5|ZUWl(%!0MSotvtXQVb-s=PB;0tSl8r_5A+Su zxd5bO&<`lg^M}+xG@ssL74~)oZWtI2ZKv>XOP4FHS`;V~Qs}uUy47lut*9=km)!wD zh?Ob7721#_Ge|KCyZqoCq?3)?ZneU8_EK!a!7~k!1GcFsZuYFOu6K~PDOzbg7AgB3 zjP6j;H4FaNaZKSV>yAk5l!5SuSbnGVlk&pMjSsH2ifrds)Gba{T&rrOs;-0sg~vk=HPUMt*^3#PlZSi+NDXlF)<;LO*QoxW}68pn6dYy-nwPttFAFMU7R~9rs#yJMC0TR6@ah zsDyWwIn$#k(EC5LW<4x@h|=)=wkyNE&0FiOB?AiIOCGO_OJ>(@;y!6y!q{f%qy9;{ zf`6f|WGAbQ8Ph+URd3AKdw+Jy1T*got7TKAp%cLSkfs?t%*o9X>iQ(_IpIPOd-{i4 zWowdxOcW3%(qaIBXp(}&1cXq{SO6*2Bn81PP1&bff23fO8j=wVwxJTx8J&0sADb@Z{4_3zByk>snY45WvWLUJ8h$tN)T)nZbx55Xxhs z#FdwNE<4on8Zcslp}f>(8DnfCSUeHnu}R{}OQp(0Co$zUU{ni+^3t3$#?BfrGGCAa zB$y-(=!!8K#NYe{*j&AE_L z`49-z)kKLaFZFiDpz;yG&{v=G(o)YDSUw!Y-~}^EUd>F3HLzeNqrbd4b-hen;#wJ~ z397{unPNnK@%6X}S_zW|hcmmnk3N*V4DZ+Q!UrX}8a9QIE{I24;)oYE=+l{3x+c{2-`Af`xG2%WBT(HIeqS^gRDZ-q zn5Tw@-;TIHMhqGZ?N`VWVF-gg;RhYMYkR(v9bSS>f%BdBGaCPdhDNbIUI%X&78h5h zv=d&em^Q;gRn{x2BrDWrn7w4G$iVt zr6S}?N>gd;x&t3+gE`X6EvF2h@3b)8y4kBt>@BNTA9qxDZ#rThKq`_)q#qM;mED$w z*x6_{$bQI5HG9tv_v-!Y%SjN-CQ%R!kHRN|SXUyByNxJxEF=onx#5h|vxEnRq~DC} z=E+jg6VPr}Q=BN8KqkN{&RIlX#UBqp3G z3xeTM_*^JxR$e0t6NVCnqRBwvt^ftW@F?^Whf!I6K@?^VBMJ*I0}2@lZy^~3!=rGf zP*7RkCJIZ2+Yi~PwrSnl?%Dh04W7dh2|@8lJT`F!aiwK==DEo$UVRlb=`} z%=vkCXHzxV?hfN~NtKU7w0pcB&S)fbxX@l=-n_%U#>~7VoN1=siRJ%u5SA+~T-stb zEOR0b3ToQk9Dco7Ec>$#n0*bSuc5`wFE?5fN@48k6rvg#c|qj_c4$;%IwUe&C^ST> z4p@>G!rvIe=jPrHUwkmY;d5*PVxwADmv@x7c8uw%4bPn)my!}091^heDRmPzlHJ}L zlH&!*@z|Nkardm`c&txyT>JIPFLp{Pbf*0brB|;2F7`9wxjL3Qk~&uOQ+6zMIDOUU z$-9hRm4L6WPNb{XG*JEQVbJ@)C55;Eyx4ge*4A4zYUCDyCx~E(;FhtwX&Czn$73(3 z`%T$ZwTueGE^$L$&IXj}!aU#$M^V)$qt7xa0pp;|8pby}22(h7g&E!0>e?KI#;XPX zDO>?S@xc(9(w~M~)h~8hLMC_xsXfgxTPE8rvoSFgN`-u34taSiBD*s@Utd#fr}Pmi zR4R9)WKc4SD521fp%NxZg}l1G2&*-N0_?xn69C;QApqXHGd%&I(4=GuLlq#ti3K3_ znEN(cH^3`*?=4mvd$w&F%?f9k%U-e?q#-4uHr=B}?FPYCYGfy{CuPg*`EB?HlVLj< zFyWSlDkWb4SNMmqZgTRSVvp8_-{6uCv@y029HeS?t_a@?i1irB47?=V47B_R_zquq zpCk9~G$FMp691dS!?mr3y6(MRxe`DU0q<9PblB}Hq4%ipZ^LuU?B(4@m>0KMFO_!M zTfgv=Q%7#K+jZLdy*D~;-Ox9^@V1A}8uZ?+*@K4n%N_)PJ&R*0g;&l0Xv=;7`u zdw;h1hU=RQTsFAJ;65#S4Q{z}+Q7Z{FBq6Nblx*(-rVBpCW9Jm88XHm_@J|OAn+;M zQ@_dfA53j9PskN*}WR40roi|JXkGK;F8>h2ME##-J~r3>UheUNGRp zDfPE*T=z#9+&Amyg!9b0SFEYlEMvWDH3@&dy_sqLs&#>b<;X0b8=l1DY(0MNT(>d$ zQ){YIs%2Trwu>V@U@|T9+VIyhu8nl+2>6OB$Q>$%f%wxQoCP*bh5PBLXTlvEMRx#{ z8Lvz(+8gQ3(hPiqUop|m?0K04n^96c5<_YIF66)RFN z6)Plcepg~=^{%S_3W8R^B>(r}2c`?PCd-9F_u|AqT$qNJ##=*mu+z$G`2B{MLAuP~ zomQ(9bppwy?>W%+U_oA}{a;aJKw$**0dZl`4T)b4h zSNmV;t?HfJ%QEw3+sy`d1tHlheY*_;UK!gY?HviDFS94a;;1X??Tpz?D@J$S3BE}_ znISN0Aoo>-{c*89DdB;pY_{!KUCVpa?0{K_0yb3=@t<;>*qiM7_KoJRPzQtiZmVy1 zN|-j_DT1X`NNDsF5(w*0@)V@9%kohPI0$7G9i*4ggW0rgq0o21{fCMBYdlnihQE}G zI=hHv(q`LjEX#DAZFfmg&j`WXE~FCU=GoJ6ZH-+1`e|m5 zP&cho9Hh2}h$5?%+&7q*3P)kEAp(14%!b#kuFdK*7&Sz89~edrk=+NlArf-Iv0ZA2 zw5m6q^2m)5dLWGvzGo`F#t5|qL=u%O{tL+_X4foy!O4V|BFkab=cb3Br9Is-znmIw zoy{z`>7nefHu5z+sA3cH$}aXMvm=F=v`$d9j@@I;k}iJ(%n<$#*ABr-E=x!$=_ng2 zL^(=ohj87Aj&M*T1lwm0BARXcpb>&3sk%*L)w26EHhWh%8ChFm`KN+Xn_MUblT2` zaJpl5{}^6Vyy1doq^|uOW~9o#PF^j!NrvO{wyvQnaiWIXIUf5=+9!LlQ%w6BzIejU zNt%&T8amitO#^l?Bh@~eZlO-pN0~1%Swb;1C8bFU5)}}pLQ_(jq##QLgiv`(N|O|% zQa}_{EfJiOQaHuiC3s3NftNfbrEr2*3he{VnG#GOZcdt#QaEK;Ab3hp@xE?^c-%V9 zfl%QTuSD>e9;i5RK_3Dx?1|+-sDO&NRuGjSfY9}6YBHX}DPCOgl%C>+LNM2a{FR{s zD&jstRDy~aoTO4X#Z#A5dWshc&7l{X@oDm3> zDk^d1rBb=551yO}U@Vom^3t3$MmbK-1TZQkuDnPZZ0-;bnw$w>?2@?h(t3g%fhT7I z816PHM2ab;kz9ax0SkoYyg=g0OP!1{XmTciQ6h2WrBabyco%R0W39xMSEfkCHmAv% z07hKm%1fmp7w5^D0LDIvD=+227&JK(z{rytT6w9L;|@3EDe|e$MX*Ek&eBK-ndFA`gK$*XTIcGCTudUxfP2ffmNy zc4a-Rv8dY`oPOCQ(=Qsn&5f4WyZF|lUTfYSZU|QId^eSP2r&I3P}&}e{|cdb`lXY7 zTjT-Y{GwSuBn%6{12ZuQ38E?{@qsu|#F?0^aMjLN%6sIQs%2rCr{cfE~L>KsqLoeJW& z9T{%gijs+nfY7~f0%%lQ7XAtqK37t_!TPD3JryN50Th4A>NUdM6PPp*B#+1??U;?S zo3fa!qeL$le*UoG7ns&#oj$lWC~DlxolF>+#;Kt(X9p&igqBBpiqICG?zEa{PZ@LJ zlo>OY%$PA{k@+F(w~8LdfuTl5u~P!5y{uTw$}$b=J3 z7ZwH-A~JX~jTMEkFhXB?*H zT)?S4TZMjIgKXqUw!xXYi+>cDaTHlR*~W`(s=URAmTm6*#k1$nn=%c2d(R-Jqp2Eh z*Eh?5kkT(3bhEW~S#Zklq6-3g65gIH7m6&Zud5F&%aZwXu9`bz@s*~0c!NBXGs>># zz~My2=BabSeX~HEhiedr-3jLsCyoe6Biub{CW$nvp|V3uvtY)RGv{A9w`iVO{1q8kn^Oi9sfv`^P?ly3&NxVkn0Oyh}8 zukjBA+(h_!{LdHus+5}!&3{oz(e(LOo1z|e=X&G#9<5SdSii-TS_Nr)F;qO~e@g2s zu*X2vu`u=onJMpLRmd%e7G(Ck>9en#QM`D{oY}KV%<|8n;yGKAaz;r~-O%`PbM_plj`N)n5Mpgy*z)w+1^B@LyXTnT;t65s2~Z*e zsCFK$O@KwS=PsBtd!`w?xc=$&$0Z_Eew)`Ih14Za477WW4lcJ4uAUT^ixjGk+iR0z z)`A)Hif5Z1qwVggBd?rMv}i`o7)>c?ap3D(s#^owI(m%_uHz7{o)p;7!FHhPr06>} zv_!DAFcYfTMT@VQV-_~EySXELvHmUoSc44wf^Iw;)*%E}f>7fM7cca1RS6H)miglO zbLL+;1uBZ7Su^I&m}eS0cBfN@Vq(sD{>0ub->g9htiU3+SvCrmPy|<#V9T3ULzEZR zGi5K>IpbpkifBGNc0<_!R0gYA3|e+xSf3za=;?*Cr6h1qd&IMce&G#(Ld%JWo(Q|$D} zc3-WB&ddUp9B;2Cacp9}qI`G)L4=%dserY)3VCH4f#jMw8rGHF9cinne zcSVaX%z{bb)Y9l8Okf+~Y6}K9c(p}3Au=4Uw$OO;Y74-Zjh!7)P`Hv;TflSN3jqA^ zf=s};Skh_>07zPG0r8~O7SOXvT5SQ(lU7^6^Q6@l@LYCL2*VKVT<`>#3IIu~Eg&9P zZJ}POUK>kf$3;t(&1}ZPsa1`_jX(gdT zsn5oKhtNkn+eM@EhyqlVMD#AaBOnv2I7^);sA%hvOIl}Ob&O*KimDcieZ-{v zvV~yFOk(oB^*zvsZvB0`Q3}Gi4<{`U$r5xW7ySd1BQ|F447)|7SErLO^a^k#%Oq0U3WzAtnlkJ!@M#HK+DpaCF)hSsSOiQLRe`#!c%Yo+Fq!#nV9$9OE)^;E9 zEJTHid;|;Ec%d5#B#jTvotFPf%Z00k?Ko}T%X81k9aaiTN5!MPACx6I zH_HkH@&QQK_=6Gi_a=6p8*BKZ2>!}@w62HGM6zs518}-Fa+X*yGgcSO;3HiygZF&-7R=Bzwg{vG#zjw*{lJ15rd;cS8Jwne z5Z&N%R0j#mf*F@;75{>nb|Q~1kO?lBY3D7N@gz@PFeADAenam$ESO2$*R(o2H5oItJY&O@?P)?&u^4Sxa+4JkN#C!%3oq*8|tYV_Wdah zogUjnWA!x4O1HpHA5{xGLcv+qtSm`Uh|HInF%yAF)~qZ^QHZF-i5AYWW?dM7SSoR) zrT&3atp3es3a6AS1&=tGx$W#$<26Y^b_s~0CP=S|_(?0A;<=(%qGx^wqz7n{f~W}; zRY`|JKcQQlRU|mth!!Cd=DhZHtFCG|ol;pV43&x+iStHNLjs`~afvG>wH;&7zMTNZ zK8Y(YwJs@#_q7Eu@?K@@Dz8kxI(ceHAXKV}5?5X%4R{nQlJ@NcFk%u{UL=i&K~tvz zj7<_(UMkftl#ZuP0~pm3S6-?s#-ORw07j-1DCI@+gH((`Q>Ox`_2GXzDb8p%sJjQhPAQaySmzK@6U%Q}QGLWR`(w zs!l5wZO6KQpD9_wQI|)4W{uC*1#@ zc=1QtnNcWxRYbo;Xq}f!+7?BvBYX_PC^!*^IFX^rIP=J9_D28SsNYC49YdZ}qr2ou zwP!}lq}rOq_#`%%S$J$eIV9Nld}@F34ygR(9Z>HHqxql*%5Qdcl-ms@qokiFCx65+ z#OCM~1{<8Yg6WMc{WjSmHBFTDaf4e_1j!@vzKEk@b$lP%vgX>^&OftdVkf7hQPc*RKf5ld>|B5mVBac&lNnx)4-h7~w(TC~K?x&CcN&9*{ z^$MOxXPnScxdsxQKP><{xqX=q&WH34j${g+N9RJJqjC)kU{cP9?kB4_MR+B_P{0z7@{-S7iR&OBzs^N3mBpk*j)nvN>V+jO9TqBP5Bj0 zE0a0U{!Nx7dtjFe7@{-JoIyZMl0C4=0*2@e*1gbvDs_@1W61jxhyC!B2-Jd}qtFu= zCWeFA2iy0Vzul6OSzg%ct_$qOSwhp}ahVW9-ppgn5c@vMHlGc#hi1uB4|<9~BNc|8 zI+URI4+Us>>OoHxXr#i>3x*MNqu~H8Pd(@&fkr9}T{fJcTaN%}dFnw=6KJHu&}&8z zbhnWJEl)k@Vu3~~483k7K@W@qv^@2orwcSvVdxD}f#u}~nR^4c^wP(PnTU&I7<|Eadv{Z91T=@{1pE)h&&Cl(Y!4aG zREl}$YGWiJi+JiW+<21ANPOzRG#DPwdu5 zNq(#qa6n376<1p&N;Cc<;Wk(TxX}Qv!YZyd7L{hnX2Si`66bsar&&3s`ziGrn9uI8 z2GaSEEnFYHi71P-gj(UIx2ud;J+sk6kdOw%xWUs7(CaK9nbZ zB#dvrw?|F8ZKEA7_H>E!KMZ&9{Lc=;Pt5;lJbC^HHp?c>|5$Lg(g|yB{%lqj_8YhZPkUmmYh5)H|xnH9%!hFwf zgS+Um@CnGFkn#N-CpI`9&zqP``b;~o)-6neqcmbD8s?q2>ZDHh1bSfa66J(8w;>@M ztHS|n*nBiPQsej;Y9cs(w&4mGKO?2n@NTZCUDd6 zfp~-o5MkQfWA2-WCxImP2h%1U0aLVCeaQlnGpB8KvdqN`>{;fHo8c&t-3xFxKWz!7 zt#S(m7DMj*(j6UL(c&sFtl7U1&fZwM#mO|%2kz?nmU3anm7xj{O<|%WzuCLRx!0^) zWOp~4w>l}l9mLdK7f?lYQSGQ}%!7GpG5N+*&s%-7Gp##7g>I-mY~<&AwtzcJ=XO%B zWLy_R&I{d9GdH%x-s6x>sjrS~b-Oa|FM{{c9Qc#J)Xq)I5mWhg2E{%dAv=R2Zq@ez zwS0ECd5dAPAqe5o31~wyKHk{j8hdltL6-{bve~%f5j)d~&{x(B4gFs7T^RaZo;>vH z{%j3tVPc%an1m&-aXk9JT;0U~4j~TxW}EB3Z>45}54MJkf&TRJ9|EUTy-`i%f``Dh z&n^&#`lv+Wgu+{HG)Y0$3J9SZ+H#{w3KAC(LZvM?<26Y^_6dlhs@%cxV1-k>Jkbcz zqw(MYnxr7AJVi~AehHS2C(bz|I3Bbm5_rU0tFEeY9rD{G43&y2g0leScwCl1C`Pr! zl~O?x1`R|8FfxD6=2c!Lfz)(D~X)ToDHm+$(C@YOilvH+NF z_(5Kih9M3x4oxd5k}rX6!7)duOxj1{4}TBnZUqhthlQJT zpj`^cq4~uv5W@=>F$EVxo?*{>j6Y{pvH?H9#vBJ;3>EC2^PK(;!TASY-_H<|-iwwr zLOVVwx8qm(##~q0xo7H|`FeXb?p2_RHX@*0jYYnO7qFa*MZT*N@^zO*0XaDJJa!p; zAg&vJ8V$wE6>zT)h-g4oFaJ>NYB{v3sVlrN1N#8dC0^JWY~(8Yi)jq2;~G9<2sR^R zh@c)4`UQ1=N*jdmpXM_D)HZ4m9++!|)~Os2#{UPtVF03)d|2!qctu?!aaeU=dW!&@ zI<`74`8=er^%q9Ws_A`ExP1>~e^BqJEo&ntp?fOF<4sU@8sgvg7w#Qx+6y83utKSm zF?21xqb$#*@kk;N$898r#86ziBd@2(>jWV?m`fJKPy9I~3r-d{5$Q;0Wp}`ehgmP1 z%8SE`y#tJLPg5n|ZC|LjAzELDoO2t|=|vPW=juxNQX9IsaPH)NR*z0ULe+48%-y+_ z7UO6bo%lmA6fea4qSQ$(byt*nmcx!11038D8$*bRj+n-erXv>OV~>2!3>!3)7vcpw zQV>7hj#*Mi3_5N}3;8+$gQSia0Q6yp!a_kEF=_$f2?HIq9!{#)!Ak1JTrYFqYxm@E zYHzeBu0A=aOK`h%2_%d)WuDZwA}1c5cRO_Lfp*>(?98rwElgcRYbr%m&yF@{Qsi;^ z2f74L-fce%uEu8(O-~J+MTD;QG=J%rLUHmRv#aH`^_)CUzu_l`bdFSd~J6VUGtk;oQF;NtZ
%e4kEgcQM5LEQ(B=;~hm$OUvj9HsB92`mnjP0duf^uVcDSCSom=1cK)g17tOk7t&D=}HeWUbk^tM| zP*(XAzNj>!QsANa2WfC zj9UFux{~h;P`ZDC840xQxl+h zkf;jQPD)f1uJEccmWsM(0-+d7C9ah6{6cc~EPzodapgs{!77w3{?K*+W0%C0mr6yv zc#C}i!xe{7UTRk6LESTf(0mj~TzQdCfK;4w>YfEKN+hnl6oYimTkHcEYbCC{R4T@x zbyNY2xWttg$q!Ohqn3G#eE>s?itq1Hkk7|@ln)=S+>zM*E*bBcOS_irp9`E_`?S&sI8v!xo(LTEK_Z)qD;eCr? z@KwpmpuO;t3#NbYUU<9efa$Wymc8&K|7rEFxA)`EltX6B7qAK5eECB=BO8-dQvbbg z6a3pF*f@h#>Rd_jI+SN}zLbu?Ly4y#^CtMZ@)y!Tb6$2Bb(rZs})5EPpGp*DAm#l-vl4rbS(@$0s4yos-3#o1RvaV zEnGb*3PlQ4N8N0K4}JzfxO!4xLkAm$s*}3d1n)cOi0Te%T;cF~4_B4&4QzrBE)K@_ zchV;K37g)CQtPkeo#YXD?G0$}z{L(ZC`~))Nqr$mr``vI+-uzO^QfbvsglGm-0=59-@|b~)z4w{478ItU3RNpb@V7D<<$qkabM#~7Swuh zB@3OCOZLWdax+S$U#MM3?bB+%P%W>bV2B$PpMVfMhxK5-YkKN3>V=R8%;Rxgg?9^i zNxz2C_r)l`=a4rl#+I+6b>;hZ41@1FlM@J>YTo?-^8zE7x0xM3v~%Dyw%aD#&B=nz zaTI$wF~lw^UhV_9MgyQ<#66rT9T6FHrNrVNiV(ttaBAFSd}_q~p+^cmVw9jNsn{MS zMe=#(z@3g&+lVavnKaZY`}7sO_3t?@HiK_=n&YNps~Eefr`3NyG#!7`%}deE#!r~N zKeU@?<1;$L2dMD9tVdag0@7aN;ZpTUSiO}$>q;SyW|w^YB&}YothX+g#@4$;mSPeP zv$vwH9}XhZUSsELSdL?M#+-}>$=i#&()QxCYS~_l*@~N;H^B1IHRHm$w7=MQW*Y7< zR!I)pUra;WqC!<^R9u6sWIp~m&9&m^1}xS@V0-a;&px=m$3bKolI|pAQM^#-i(wqz zJnZVLE4FTaF{Nj4XnmXhbKop9q=OQ^J|8*u9Yex_S;% z3c2%z^P)&BiW9e>!_(WM)$l@N>4lR3OHTv0#KK?(uX1`hS@3!1jaU7`9(P(K)(=NR zVN|t`3ID^sYCzS$l25!-Kc`*_0fDN__{Vk? zP8qslQzfW)UpIQ!!Fy$>aEezTcudc$cc5-|nh*^|R6s>65kw`Z42yl=EzE&Lg;Tt> zf~WKpFBHm%zyT@=Nfl5LL?52QDc(N8Q+kRA`_QSD*9;;YAFSKtJf)$q z#ZCeihs(9(=%DdLDM<=X{tTI6&!P>b0-+c&i7O@b-AuGUpT!%%*d%e~MUcRQT#PrA z1~956uDq1TQsP1DxB?iN4{%MOywrUeqcN_^5(v#lRN~4@%ckU`28^YGp}Z7>JeMa5 z0z4`uuDnz##-Mdv0gPP|S6(DP=xP_`oYrv#Fx($<&Xt#1kTGbYKp-^d1rk?YB#p;| zCJF)=B@$O&c~Z5x=%GAO5WrX~apk4DVhoxn2w=n|uDoKxqkwp9y9U;y1u*tWTzQe@ zARml@69qwxya(ldA($kMhcOs21VVK+QR2!=r79t*sC)!4ViH$gBn|LbOBiEu)nWi+ zlf;!5(e^NConru_TH+or(N&yyQ27X8WXhXTc_|OZpzVEG7O z=-XI%xd`cDlmmu?7(8*KPks&3lzxlX|W$2Tl@~Z zJ$T+`JG_5tnYX!S14-y=_%X+0)e!Q$&6tY_V(Eaby8O=-AZ@J0|A4^WyiH^?Fn-5a z%1CT>U@G;t%cGyQ`nZmiIqreVFX zOxz@7Z`Sa7yVAiQV9KW|@fc&tfIJ|o{(GLo*;eE~2SuKiB3IZ_J}D=a3}> zZ3aGM$x}FU13Q}q$s>{`Y=pRbG*dV~KoST?PlAw0pxXH+rf`B^z7!cenHq^q zs-16a3dc8FOUe>KJi)XGs?xs6DV*RipUC3L77?YX^6GL5$JehXJqd457E5GNebwz0 zPVn?};qFOuib$gxs?#Z);A!f@+!Lmr2%{=G(Nj3V8G7O8@t-RP(Wz4EYzikhoiB_% zLE6c?Ko#;%?7~jF?7%$VA0yxJwaUVR#n6^(~=4JcD?l)*VyDMQlqY95Uz>i1s zImWSxypIQMMElqY;Na~OJ0u<9c0k57p1gem3P936b{J(ZOmqe<8=il=&N0R!o3uXz z;(>FF)l1cD-LE)D>dkrnzC6&Q{x;H;-n8~`FvO4k;u^)v!It%5w7s~%xhUboPr%?j zAnFyH#YaAC82^j-^yi)rm;AmP`S8+8Sgpt#g%nDiI7ZM-PYFMqg4~hw<)+7KI7Rz| zQ^LMk#47JQrgWSFVPO}tmvAMi=$p}a_W;Zm!8H}XAq`jAV?!?i;>Ga8YXW+2bK>Vk zo0=zH4>vIR1>pt_iy_zegNJxRW-Eduy&z%}_#QGnLtLPlxOboQCQf!gS3kuS1^w3S zxx?yY)}0#89H7=wYsJM{YDFD{h)P|vR6-toqdMl-kc-=)p5e37H&d~z@vQWYY!BG< zK?4NQy%PVMXP;fS%W0;MiG8v%1W3)}67YRZU>^j0Q+|N?R}8;?4a3ED~4NPz61ZsDdJ>lBFn1(^e0VK9C`TF=KG{z&GsaICazuRYOhP zRb6=8M#5+gR6{tuH_mj=3_D|CSl#=My}K~^WOagtVlf1mA-{F<8-p|;9cv`m=@-&C z)=2Bj*t6{>R<7CE9!7Nvo5P2B-3fdsNm5z`m#_{AxEAhONdq=s_Tb)!cc$A6royD8 zB8-buV_qC~WVQ3h;d%9C^g{H}NOAx00^#`5E{^qN4+4_F8|d^-j_b}Y?|DJs`I*Ua z-5Dl4VC?|tLC%d&N|P$jpQh)%`_g77RpuyPQe}Ryyvb*X1h=jMd@VcIgeTgq)P3Sd zKHY*YHwEI`1MxQk@pl99-2vPDDG>iMDGvMl_9rF4=hUA`7UKV6#2*dB zpYg}RtK2RA1c=82@wWo;_XF`i1ma%=;{OW7oo5pnM6Y%m`4TXm8Hl$F#Pb93K7sg- zK>WQx{G&v?l*-p&y-;=htO+MfjYAOKJu zi2pSZ|0)o#w<*~~>4A95Ks=Y@$e#u1762#+#D@gpqXO{>f%w!w{PIA2F~!>a_ z03gP3Uj>=sp3W7pzXFT)^0k107JWIGvc+`ih-+V*&OPzPX$PAxPHQiG@%UNE^xXkT z@s^?Jz@&swY!JtNf}a*V9ZKI4oO!6JrIGB*Sc+T!BYFY*(n_`Yk2Ct@Hqsry#+^Uj zDG>Mg9N!xSYU^5FDat@!YZ}+qJ}h-f5|E!mRTB6NiYmf;uCG(VH}AH$8c}M>{9SV_lNt@%*HC%aGeGDIpX+o#RR7+Q*F|Y(rrWU0ciA zdX9a~INGY#K23r2ZM3JZQ+%iuyrx5Y5trQQeykL1c)FRe_)g~a-htjmX{aN{>2i1Q z)T4&+FS#JO|ALVF>-%sg7WjR9@z6B{9`xc#qD6$S!{Sx{Ta1~xR ztie_PGxX688;6CKTu^xH+-u=e61nz)`sT9x?3O0pI^4_+xv*;;er8@1t7VG10`tzM zheQhgAfR0CyM8g8w6&0Bb%sAv|88UVoN$?4sxGN6N=wMlEu^DYBCe?u|LUr1Yw3|1Z^#yc+f25@=YlIf8qi*&XMDg(v;ZSPt%bH@oQm731o6( z(j}L~>l>Ri_ zs(!K45^~YfG|sfz*wY-dWwPB8y3^=Id~gEaBPxhD!|P7dqDGNIrHUSq3}Qy^iXcVvj<-zRvZTJS0VLKV{h1oRJAO6tr|1j1~PQLHFHTqHp z8I-=1fmHQ~fO?F?U(qRczNRvXYQ*~-yn)L*I$%*GK3Eo5w(9N1`5*v>;lFCe-+Oe} zKj?rogg4pw;Wpvb*W2clAK8~QtZLZjidX-(HTAydx0?n1oL;4C7T-1G{kXIJx%2Xe zzzEEs=YHOJP}>b-x4wS=*sYs>Fm`KN+Xn_cnfuznW?i2j*gpUHfh#|~YjcM?KN&P( z;740J5BO-y?=y$=*|dCV)yoyn4*{w}2DCPCs8`;gFNbAqp8D5uJu7yez2*5;+Xwvq z+1&#RN3DGJt4>$EdiO1F4*UF}daw38CE9p<^QpB;#QjFW$@KJ|5)6raIv!rRh1ZvLp}bJ7purK z;^n`0n|RW}d&4oib763yQdSs!Vb=fMZj)W`_uo1niXrU6&wN$h|30lvbPqfBPf+O;?17t{dd@7qLy?3E+qT>H|ZF%nM_}4}sZ{ckh=26a>Sg5D^M${^3O7wXsBj zWcX=-f?#+Q>InsvB}x?DyMQRr*JOSkpdc6?1uPt>MwR7!qVT72;fL&0{*X+@n*kD3 zo>+y-eM2Pgfq?5J8L*)pXLKmPFa>P zm%n-BN*H_fXRrgBmnBS$!RM9p-n^5xL}Q7@WeE(Bm;_9NH2ke0L~dE)vILDMFH3;& z%cNxq$;a!5ZFrtM?)YzTsw1~g@xz@R#D(-_T;PA#gYo&5>mBL{2kHlhHhw@u8zEQ1 zcse^$tc5z#fC8P!{$UO~)bH=7a)(`UywFZGvLUGIUa?b=#KOzMaLj&Sv;m)hbP5^G z;5aciJ*MKjHgSeK4HyW7Vz|v1gL!;X1buuszMYOx%=aJPo+4EQhWwtUJ32tncYJ%n zba37~`qL-Oy6PFgnlI(0yyMN8H%V=tnhv~U-vRtu4@9Kqg&-*r(l4lhh@0|0&JAYL zt&jmY6)~4S4S?F^v)gH)gBE6xO{f8Z)O2vdRF#DD({j)haQQ|d+#kpxtF0pL8{Y>6 zIF&u$p}TFf!#6lrH2ZM7iC!M=l{)wOi-!E-z8AJP{NFzeHnGdY{YQ*T`)~+6AM(x% zZ3a!hYSX|Kw|}znryo{4n>}jDOD~UlXF$nY9}kROnDxk&%ko~m`OoFUFEP)&GB7{7 z{f?{ihTr*d`Kw>AerDM4t{WR%5kA#MMng=_-0)-vy)1bE;F^t>%nMJ0Bj0iA0{d={ z4Jb_gpf9?IUM1N0g!rzRXXIPo_5+}U3$`Cr*;aQ7u z?z+(}u+T?w0VUSlb<-pT*(V@Og}QEs%ma}>SkC;!bLO(LWNVjYQa-_2#eR(jgs*cPVh=YnPLhh$Y}VtJdC3m zSaxzCrf|wIDtJl|KG^ykYA0_XRX|0o6htM+?BK0v=hKXY z3aW65w@dJpUIGs?nC{CV0rK&ON<(3%ruaQU{p(7d1)O%UcK`NAa4|HvAZ_EVYH+w-I!R9ybwrG z2~KQld=V;N-qu(N`}k|w*4RLrC=y0nNzrJHf>KL9ZzZ3mU4kFl!NHBJ3<1*Cgqw}P ziEWJ!0OJ>B{a|88BhK+7RQb63txC(gaK1RIf%eRkl_vO?}axvt#7u_X~k@!~lQyY?Ujq@+|O;(F6|BrIS|$SEL1(Rcjh?|8kJ zJ4t2El@zbjIc{dskaBSEB96WE_8&Y=0|0{L5$U|1lnbqcEf+f#CiQYBLxx^@ z1rMMTERV{EBCJq%9i(#iB|v53xi(V4Pt5iTZmbh5kIJQDCY7l^QhDT3pi(l5sNi@& zui&A9g5^;`g@GHnDpML#d43X5S$ZB(!7+i1;7$rsGj_+*Toof75q~}z5M$>9Vj6TH z05P~71q%!I$p1FJdbeyi$QVM)q48zA3CyZRR*P_4im)~owdiW4lKj%5#lSCtS0^?c z%ug)V4s^z2ow+mag*j5D+F_~W@yYQ}bU{B8tG%x}!~{x9Vw9kdq&H48LIjO7LhXbO z7mgZs9F#rk+i`GVV&$(XoMNX(#=~;o@rmWW)=RwOV7&J3V5x87KDgAEb{t^trEA{_ z4r@m*kTAL$KcGlm`%-A$dCPpGU319)(N@^QXSjoV_+tp4TZP!e*Z9%&@Gb7)ml8wN z5jIZ`TH+K~Yrf0cb2l z@RW{=rU4(Ie954IYv2=wjy1{bd@tNSF`ke(e2UilkWFz!&q0!A@S1SbM!8!`bA zHb2|L;Zjb=PNC~<+*2OD?X*($do2f1hs%MM5A}ETe`>>lF0_FrLWItSJm{h{EC%UN z?X+ru#XwqRKT6(z6YohnZ5EQ7P&}WN?4E&|!a9BGrl;?w+73=jr}7ZLe>{a+b7JjA zZ5lyUd&RmjDV2@Fs?k_N;S&Gb&~~^P)7Z+lTQ)EcYz7Bx)u1IvOa-A;1I^CWVe{GR z;pSQJj4L+G72fmZKAgPBM;NOh(e5k=<;^tSLeo)2>)`CZCFpyJFH}}~WXS&nP05f- z(EpIU`T16FRx1s~#2>p!vMWB~(Ii(SwW2GI7wVzVikIQ!xS^pCw)^fH`o`zkul%v^ z&BLBsSNig$W9}b%Ds1~`1wUL}IF0NW3blkdUYLfL#;1kN-<#NZpu^%Y{KStPl25&2 ziP;OS&MbgnT%?}3cOMdQ;qbIq{~vL09v@YawU4Kh+sRFnkbNbAgail>mOy|2fg}W^ z*_2gLKnRNl1p!3`6bXphxS*hLSrow)mvL|nZiGd#Q4tVilO;iCWPE4l9i92Uuk+4m z{myw#Rd=VsnfdRR4^7>BPo3wSI_K1KtLom%-vOiASj{i%vtsMW--r??e_zyRqs(&~ zW>%SB)wcD~jui$~(z=R-rD-4SSorYZ%tMP2H72#&>z1BVr{u6TX-#D&Bsn`iin3x& zzCZJGD;b3*yE{#Qt%w>j**~jpynXi6nTv0!nLB&NRA)@CtJHbSj9z5w7{Go&Gq>NsrJ6 zv=ds#UOx^RjFC>heh)0M{e}U$Ur95$OsIMLaBkXilkbwwgWKnu_J_64d=Z=9q%m&Z zFtbMXzQBe<1T>?PvPO#CSI!}wKX%i{*)c7$n{(ClsA%Wo`>byC&cMjEQP>R@e7hfj z_XmJEsz+)d1MKI*k{}c#V4Y;D`GtFprDy{aofqM}f-G!W-;QfaGSKF7#*R+YfvB`L z5fyY?xq>!Q20s?yjqF4`oj4cv^tjng7aiA=^iD>(Zc%Q_hYo=o`0vcd-J{;S7Lqmf0N_|e1*wljWWY<$-H~7xoH>QeO>MYc1r4- zTyxo;(Qupk;Tlnt@X z`pV!E71{)?ic!r@lmbF!Y>16Aif|W=9kC2YKOU>LiX0Z{d@(Jmb*{*eHps}s;4rwr z#Z5(y#y9f(Ng@v>;T^FVPUYz++M9<-4GaLdRMZOn%l)z4---0J5+sA{)2>2^nr)Be z6)fA$p>WCGSS&v=ql4uqRt_W0z(_a0BN%g|-1kMxH$X>)9y+&PCj z+_?3I0FDGdHpg;)*&JK`)KK0W+tFEhKI*<@zuecb;9tZ2A5EU9o@IzpMWAXS*IOUb_2%0c)yu&016S>Wl9V+|{>D zMcn=iy;on6P`YILnGc^`TsPqBYKK2yRo7=i$w&Wt`~K>p4-W3TNe$iGwV-71y8iq3 z-SyDH>ID(rLA?LA{)z8gckAu1TR(D5bXH!ViL|}nCpphvh#G5gWeH#P`tqA7TJ^&7 zIr5?7TP{Y?C#nvdZ?^QcLC;ZoUzeJ(NT(OylykrCzipdETzySWN)Th)bc~DY$-Q@)^FJ zn$O?``HJa-KS4f|PxCE{xTqNoV36^HX0KQ^`Ha9!ZEyo<_`+AnOg_VB942^e3>$Sh z(ajgEkWto;42H=Z8y#Gu;`Jlrd^113UF&A@!?Dy6!#FZ)uX7lVllt5s6@^+wK5Z4o zVZR~nHnNQ2VGjqh_Bw}=QKrw0EMsxuz^r{3N3A|LvW!-+ovdnwact1%MwThLa4e^J z{^BqWzdkpzpbgndIQCqI<0s8wWSMFtQSIXQPlm}TGL=$aH@5Pzl^v{V=^VyZ6ZLsO zmac4>>;(s_T45YMeQsnK8Nz|hwqYDQ^?5*+mLY+MRjn`%)3_K}(4TB29K6}qVh&zK zNln$fkRQmyuZCQvnrs>*+i30 z^g|~fZ*&W+x1{7U-Q0`Iu@ofa&64QvSpcbE1VTBsA1m_j*I`;gbe(?8?mu6XX(3W= zPGwC7N6pt{LOyDOAvf%XH5simN>oW}GSj~J$hawj&uLBO#lJ>%jJ=zNCj6(DWw!p) z)w0D>T9n}*UB(zDetC#vbqO>byrIV-D>QMs1W$4a_`WgMJ4zm8w6BuXzf;~LU&|>E zrfn4CGP}yTWT#B z(>XFWs&(R=c?)lwI{(&rH_^?`{F>RfI7wDyJEyUCWNZ|XoY#j(^+}HS?iZyP`YSEs zD`(X-tGxK(Mc26|EhJ?Z@BrC7Qzjq74R8V07B z17JQ4#zGtd>+IY;JZer-$v;K4?@2vYahg+;7TGG^uG85c;Oty^3fG1S&^ZDEmUB)T ziomXkp6R#Vep~I-8T01MbDAow_ARRE=+?Z^vuE5qi!by|`dLeUL6_x)H6{JK*z3Zi zFlwj=R%pFgIv1mp`_7t$GisgXyW)Hxv)Nm}uSuirn ziC@zUX~<-&vUp1vh-M0a+^0bpoXcNe&8@lZW@pzNtC*wCwnowEnv$~k#m%rMOd;%T zVb~fgfPKHlW|^?9^UA2Gx$!m4kY-&^NH2yVY0dx=M-6$+W(kbc(RuI6s9Um!g(6X~ z$sY~)^|syJtD9E{1Rt*xx^0%=Y`ZGT$u<$o%p9@&mq0Tc1j4&`i@yv5(SaY(ZI#xI zD+ueB3k$9(=>gL@u18$`*HpUWvqE)s+_S0F--jVU_NC5OP4Qe!gf(->S@jZ(i)9q)N~kW*aVHl zDiPA}ClFG|t_vV(&H&O{jbwDNg(t&xrj(*ImdNa3&X)SLmN$2F4C?I}i@eNA(n zq9+nk_}fu6X8`F5jbwCtmXQ`uY>t$EtyNJRzRN&!29VZiB$nVDx!&50Zhsn;N;f)^R^N z+~>lYa%Kqaa5rj^3@qw(o1xVs98&M?8JFo0G*>_kR+u{kr~{K#%(NEAul_ltVG4Go zso@;~$}1fKBa0qWZy?_z7c&OeNffvlgM- z5%4u7J)N>Ut+|DIsBD0QO)EwMd=2O59c>5hw61b!ZrXBEOL=R2aeMz+d8H&byAz4Y z47Ia#!7$`r=Ip;N@@nTVi!7_NT%fgmoxun)jJMAoee0|{X3x5F>Ud}O9IMnxm=u|8 z@r|22Z_|5;)zaDViz{=Pzu$)_`}X^>l7zwXPJ%PHmF70n8zZ-wW@gOXUYeWOB0c4C zQKv>Db1N6R>1R`3u`(7Rl~0oq9ifhJ1bLzM+dh-;Gs84nJDJkC1$q**64!xuH5t z`9|yWf3 z0{aIi%=z5B6_72$wZTNcsSTJH<_fJRUz$x~(REDeP->=cSP}DQ)2%x84ed#6Hzr7>pu}yvTrChI-B&BeM6CUw5!Yd%c6~OCJL?}CsttlHd_&DUNeb_0a1sVms1)>1Vv#z7XZ%5(BhNIa8 zB=DZCk)52&>=f#(`3#QD&fsX!_)t8eb`X7~annQIX#-O_`QpHcv2hg<7f%h0_+wlJe*-U8d;gcfH}H5@5}W_e&(e!%Vxxnfn&;y@ z!3_Nh-u44}9jddFxI4;X)-RrmOpnDLBo1SI`p%8_c{=^NS~B&7p2ry zP_wef6=7ccMDWh?u2!{MR$}n2O5GEgx@GE`>50q)sMajPLnWH7XY|ZliLRw8$8@}d zHheAiW$Ec`o%-8r?{|$-}W>(^wbl*PI zB-ihpx$`621gcSHEDNosU#inIKQhaCVR}@0=#z?D1<>YHY88&SR=I;uDkl98P5g0n z@{p29ou(^k261Nan=+_UT0Nt#zl)&5biqd!-5hSyoiVd$5)jSDjKHQWJhP~|42n+& z778DDW-&8*FqLXBTA@6r(~bJY(lFwU0X!@qGrue#Gcp#CwJ-M6!WY3hdu?c)ogUbH z4c^E>pZ9aJaFE#_wBuT@plv-b;~L?96Mi;x;FNMzkM{5 zm3aRjk>2tz|F*H>O#&b#2F~4g=&h_zN-F;O)|3VUX)r3BeA-=2N>o=)O|BSsXhr|+ zU7zYzydbg1*H5i}|MpF7Dq?2tWCbFAckg?9TGx*ra%#_8AAfXl=-xM%zE{<4$LNnw zz5mvb&;H;U%34s#>MGVduAIyVuX*V0uLk|^ZX>1P>aA6+>r3Bpw!ZC3?Ob=o{lGL- zPDf4d`$lAsrRC<@Tf-*|oEQHtZ!=4AepwRvqr3--7sB&aU2$i{JNK^K^}ADZ-i!Nx zliz3k4PRVcSwCmu_Q)|7w_wc|$oJPD8fc|iZoIHk7RXyyTeLuaUGrD^WWMz}x-|dW zlK!OA+MW73FN{;O=WoFxaR2+4*CO*m9t+J*GZ=xjTgH^se)M`cpC~OfCv%(%BHTjId4VupY8ouxaa+A;S`8A*5wJ~f|9b=kr0YFAs zAU7B$vlA0s_2&ihpERafUM+e@g23d5ODGs%99fXnISj`{eQuD9`E5p)1=%nTpFTIT zjN!|`fd$zxj-C44$O1NLB^+3g4db||&y6gj6>KMu8HRCW)=SBaEK_pfNaBYEbq-T< zuRb@jpbcpy9AhrSu}E_mS((kEdd+1xwrdU}%h(DQkPQoATAkGA0a;qc2Jy!tT7(bd zuyw^ZvWyJjz=j2#!<4*Cp9f@V8GgvXhJ`Q=)3_K}(4TB2996WLz+w*ln4xBd0)b3e zA=hn_xmokYN?T>Z)u`Ug6@*}%Y4Y6=vXE+4$T$3}74paB!Lc-3A9zb-c;GMPZW&V- z8?KWFmi*O$XAX5HGa9gaa%Ng0&v)q+az|FkH_!?={bYsQ=oYd<&UCqbrj3|5mV$(@ zkTX7&*2sf$Tzb~yKUpDX(JSNx+1A}i$ghB#K2K-0k-dK|JszD<{4EqNKv z%)O|m`+Q?%{&0J}tdQHySI7%BXJCT#89@?FsjmrHmw7aDHQqDT%Z`06@U|ALC1|Dq z$g^4Yo_sf{fMO-4{CWfw zcb(8wg9JdI*Puq@;7SaG@k-2HdL_mk^goa^X8`F1jbzjeuEa1B{}B>aV(c&^%^5&? zQ6m}Mf-5nM!~w|p|?)wDp~-{`!IA$k8YlJbt6LU}bUkoPs6moboc{gsq;^7WKelLA?PtFtl$ zFE0EoM_&o#sFPOMW=>hipw*+}Ir?%S+xeM)Ev*z1qw)bKtplCIUAN?j^*gffowjVjoEq8m=g|flXXedTQjX3O;CV>%FqX6C zW)iNi1adsAb1*08Xytq`$2ygxF9)(cqO&nO3;$b=z7oi>TIXO+0XlOF0qM(uY>(<} z%r4pfIFGXF%Ykf<>1@nS6AvU$UkT(`qjNB)0L9%(K>BhZ8}}w02h7gK&3C>ii@d|x zaGN#7LQf;UW;Q1OHO+K7W{t@|I1-gNWoKts(W{FBV#f^)sNx3*A6%8o> z&MZ#SVvAPkxxDls`ay@6s+Rfpj={c!OI{7vOWtDZJK6lzaAwG7hJZHTrjkUz9vYgV zpBZ5`8~IZ{^QVVdS44y^Uv1FKSC{*Mm9LA;o&?g~(q4JXxS7EaaN-ad0(yBUs8_Fa zE;A;R+_ZXS#(llJ_~KPWaPi7Hd~H->tfRZu zOIEBl&`K2jWW~x1NcD;p(~J>AkHc52cHCpREw-6nvAS8m#LlEKU(nl*LtbK6`>|v& zOI0>9T)I@1sIPNAUaB(Z|7xj<2hX8PRlIa%9ygS-xc>isi5-2q=hwc*!6n^EYMM|t zp^q6F3Taa%n%z!vmEhYkO3i(g@fxS==@B@7$keP@GrG0o@0KJArtid%j zu3uO~i^CckS%=@m=`3GurPcRd8}&s|j;%k!C(6=3r`U*({_6*|kJi-&I(7BdNVm+} z(sEkLGSgs~2Ea53rf)RUB?fE*m5z6Hn1+F$Z9HhndK%h=@b$Dr?H`@`221F9MUJef&HPS25t#YUpYVvI_Yap}PBY9VjJ#I}m{AUC_@j+mH%iO!x#dK@OBM4VeY}Hy zvT`QHk=B6;rge~G!3|kC!$XW(s8Pc9iV{#xzUmPo63;M(igZJytdofpX%37;GzYUxtNFI0~bAaPr9NE)3KgrdC7jRPbe=A(E zPW|G@cp4`2f>A_WfCtBcYvwwobrruRB7_%*^OB?9#~M@F))vdF=n`=UB-Fih>^NWJ zzdHS+Mex7x;|uz)&N;l#lj+!wE7keidRK9AAJ5aQWwXC0#y)<@`qjB^g&#U~6KF~L z&qXcvuBq%4T4r7P9KMz)|8>17rlm9ODVLp?*F9~JfuG|!QSSWG)z#V=J~yhT#f?UA z39G*3fOW>Q_>*u>(ihe%?#kh3`{;)9k6&1$<1-IPJ7VYYx>QZPE5n&~h=!Or?b6xv zsPoeyTKTQJFP&bV#(`x$c?Y$f^gf8mIc?=0!7h~4S1V9Roun!Bs4%^*;7MoxTb|fd zo%e34tEjHb<19Wx(6^8NEa7Tr(-CWP+*MLL{G&M*sbd=AY*6-jCFz*;rdx#OUmrD~m4KMs#!NP&IQd^$&jq=h$_G5<&a@*`Ug)#uxRsh~N;SOl z?Q5vNHGg%FUB!C-c--2YGgd@+$4hEo9g?!%y_|C=tWQ#PHlqo$JMW$(y?@Voe^~Ar z>Aoq4c0)LgPq;QY-B)>RcP(FVYED~)IU3!t8%2B!>ufts1#vAPnE0131LFfs)fubM zD0i1rlSEN^-x+Ibm;qwT2wL0koRw3m-Dw*`n9^xC=(`)N{8bVsBFI^Aj&4HvGpWvk zXm@W%owK%B*N~$1+s<2aY#cgC7p+NdKSxP@(*5pom&J$9>wmBYTl_&);q3N3abC-u zN4~cv+o>C*9pe_&M*-ktlJi4c^ki!`11-2{5fC3bO@AXG&hF&j>`rmY|DUyL@+8Vl zPPC^;>c3u6-!w_R(=~mjrq9y!8#R5lKGz?`HClKX*IDxqYqG_Lt}huIO0S zWLDZa5^2c!Uj@hz&Si1(|A)}Qy=Nrr25t!FB04|(uOW~5iFE@Rvbp5Wp1&J1>1N1~ z%?6Qz16&FY?y6{avBe+4Wj`LXZl;Xv!ndQHtzWyW`pA~wI#Ca=oRxNcmMA!TKxqsur1;_OuDGp95F)1G82-Zx6B;jbV1a;JkjHQCSKL!Ar8F2IfGO6R|6zQ01)adXXiTmX0eKfs{QpYvNooX?X)Ih|k)WBervjC}qAnO_kI>MXavPumES!y82 zkPQ={=>b^^4l*hze;Aq_U&gP%dD7}fryQ@;MDrmB%p|uD?q0L5S*YB*@9% zxfagVZxLrTbC$f#oO~!13XD?9AR~VeTNrmW5aSSLtl90R9&A%sZD5l0U~{?D+u~w$ zl}2UY+|q&NjgKu||CxKj;46rMYlT-*?{G=&k&^mHY5G-~K1S2WY5I6drB*PKggt^o zhdrVLk;xJy?B@o5D$!bd2gDhbWGGw#%680cV z*n^B(!G)5r2U)@%WXR^SN__`e!X9MEh6&K)f~*S;I;sVKzT9!0p~mcLIx=nlx7_yg z1&J6h{3Wr*htl}-m(HD%?}&9Gvo5!yuZ*d`=D*$adVP#(=~mjrr)6HwUknOOU)o7(HcH=Keq%O%7+fj z!UAYU-H^qhAj2gr*Qpt4$l_3t;SyFy913u8D9CULYbg!|SsV&7WV7<(P>{u;AVW5n zNgN8YI22^a=Aud@gRC72I)uXn7(&ep7Mu?q`1|)@|IS_R{4OebgEgB@*>hA|pKR_k zKa;rcqSg)WZ)(@9x^i}Q+Bl~;A$r*0n<+PW&O299d!D5J`I7o>)%1m$eut*tsp*R; z<*J%OjW8d=Hz@^lEA2?uIx@TzjSn3NhY>J<1zCy)GJN+J z=FZQHK4#rTN7`*qHFukrNlr0kE_}}lKSc-^{$ZA zUa9H#Y5D`2zDm;{qExCHBWa66ZLv7iMxj}P(0!nb$w5b{S+dZ#gDy4)9X4l;#O5H2 z%|V9ESy8b$$lB(hLp&Ein)YnAx!hCmq1c?uB`yJ3TmmwLb8)3<2U%PKGK9klxTgSF ziViY7_J82ciyq({FOPPthv`(iZA){v`I#gmMRpe7Akc6*=r_*Jo#Rj^(HlKs@M_A< zwe2xU?X{BnAD7g(PSYJt->B)EH2q0Rb!}rP?Hv?Byn`aZ04zd#2Xyfc=&%5bX8L3c zWbqEjus&-f-T_&A2Xr`}H5Knvz8&xmA4pc%!#Ibnol>62Agx~wikFZ z<_d-b=XVy&qiQ^ca#AGt#!2d(AgO(gr2dJTex0UI*7WN&eJZ6gL}DcEXqZDB9kdop z5J!V7js_WV!h-1@mMj3Wb~Na46)Pl;uA(Dd4f#+yWY$w04YD{IWVnje7e|9Ejs_XR zxm4n4kj2p;LpB#y+I*13(I6vCU<1r)fGhH(NDyTEAv_G>we; z(5Z@xnQYBtuS;XghcZBFs~LMcZ61!^V$EPiy0<4rK9rkdFiLF?G8Qu#Hx5@i(N9~m znDGaP8TnAA1HdRFDZ@A`ob?&?Akix{=nEIKd0}MbCU;sit!TDt{ zzV+{Rsk8ex)acX-hW92(?KzVA=Su3Er|Anc{WeWssOfi5sv8}Kk|rG%mso`Wj63B=pF070nK$chn8M0x68lE2mSqcs^LhUfXcTqdBh>r9`P~-k+8jbS>iM70U zh$OMbhZ1Y2nf${6;#|U{GqWC;L} z;Ug}N1OUhq03bs)mr?=%WC;L}5g%N52>_5K06>Op*aQIpvIGFg2!L-P`#^NL^ZM^; zc>WNbHuL3Px)9<^A7_w$2fmc{Am~fZ&egcU@&6FLc<>{_Z9gih|1n8@YbEtQq3P>2 z-O==on!cG*sli@`5|3W|kv!@T_b4uiN5}t-Jjx=)qbRrbXwWXKiglsFxzQdT|rvT&iEs1dpGrAI( zkq>3|C_mT~@S)5eMe-3OuFfLHt;|@G9YejqJ~|AI9wtdk03c}z0ECu+v-2n;#d)$Y zX4T+lgxh{jQvdUk`d*aO`;w-=qUo<{`fHlLgHjzm4CO3u7eiBSkSuWv$@v{(23ssb zq6Ie9(E_8wV=P*tWe6SVXyHSN7S>3j1!Rd9kl`^_RH6lBi58F%Ev&yp3&;{JAVW46 zOQHp2i58F%EnHfO7LX-cK!$7>0nq}oL<`7>mbifLTK6X3y+L5wcOTJVi0^DB=^h*= zl<)~UkMncYZ{?I$#VjBErm*|omegA>sr{~`{`WNf15Mwh>D@^o66-Hv#W2ClNL=$L zxqk|;^tiy4zRY4d;$gcjvFiSc4;}JwhV$Hzm@XD8A#R2-w3}fKc!HIae*OwN(r)HM z>E~HzaWlx`W{}|tE{eDrWN|ad@C27o+zhg~8Dz-jf{U9$7B_>8D1bdMW&~N>3^M$f z&fKVj?~RSw8pRgCl2Co}bul|#e6DBKU>vDPveXDy`kKmY=bpnct?Oq#5Ys-O2F+#zO6&kA*ufuwdig;O zMN{^BqU&3(jd?YM+XrqjL6G~)0Qc#2K}Be3>!YWPY_z^$783-S&jgq~+cYz^+JB0! z-?TlZPDEo_tdR0)6Y!x7#(p1Q?)R!;#x39c(Xnft?%h3EPC`3(l9SlZZLg1uKAZY6 z#bQY1_Ej+e){THKb^$&bX3oxayNk1BUUancy_(nv#vUT6{|ZTcUP-;f zHGQO}kJ9w3G<^)Ex`k#ax!Xg0OFM=5M(tn;QgcDpH5YVL50)$q^ia}O*IYi72AUO; znhUbjT#!*USx>3CAWO{!8Nyk8sktCa%>@~ z&>%~}K}N;?3v;7lzu^ycZ9U!1(^z|db4S|aI6LMA;7AG4pd&fE+-B`Q8uOrbpYLj7 zA~$*`N@`yxseh8BzA2hMRnu!UeLAJmMvvzs+>E0T+C3-*Y`_x4J>H;u_)unDSg_2% zf-LR<8TMy=#62L3dq9T$Sxs>d$l@N5A)B=q_kb+!0U7q^LWz4o7WaS**<4n+a|Bu3 z12Sa81X%6>Sr;61xbOd%9q#M&yJqh5{gK`GNptu4W^#6!1Bd^ll?eKe^Nasz(?zLM znL)4Wn*W!WvD#C1E%9^jIa^ZS&60ZON@~y3^!b{8tEMm1=i$3AZlLSZAr1@rjSuC% zhs8;?0$Kb9GK|Aoh~GdKzkv+LuyW!zki~Bx!!fM0_zh(78^~}B7e)LAviJ>T$mSA? z-#`|>fehJPaJl0LS^Eui2xo&x!G{M6&WEz9Vb#+S-1>~mmhP73J>HLgC)Osf`YB&X z>uTS@VAx61j*fKe&4)5a&e?g6e5m7F>2Bk+`OMwUDT=p~P4!$%Ik|e?C8@nsQvW@Y z`sy@&g{H66^!q54>Uk$0VIK=hBYr|@UY*|i=RM-BUl~r6UgEx zkl_f{Qv3w6_z7glX640CAd8}W zHo(24G#Ej&v13lTO&dE7goV&UTux~i04EIt;Lt;JerXsmfA&FzeYFXn)x^r-^O&Ue zT1ownOX^#v>5isv)bvf1O87j?M_49;6(v4kMYxa!NPK`S@c}Yi$Z{n*9@Buhnm(4LNTd%%a%9&mPP z4<={PXNk%u+gEB|+M`J#x9?*l^^KF%J3&(W8cm<5>DOucWJ>iwYYT+)t~8WMyoEBs z9V|h-1+sVxWLSg+i?=`)Z-ESVus-4~ki}ad!yBxocnf6hEzlvH)faD#3VMqV^_)GE zQJX;)Z-ETqTv!QHki}adLpW@Jr8AJF;2^`9y_p+L`b~4mnRLd}p&_>sznr&Q*N?xQ z8wSpbh5`PQh5`OV!>~Jmv}ut>qUn3O4_H}en6beQ%+f9dnLiCMe|oPyJTfQBNndGq zw(dA1n~7UHhsLYgcdy;TTeq`e4=ITjG} zf2)I~t&X8@b2%Tp6iZkfz1M;^6u{S5n_RNxcgswQtk(g_?ecrZ3X;C6rP(LHkkW@DbJ; z5$#fs5$&kQEI{fp$Wo6%Mpa_DQjbBFdJHnE600Ni7-U_KK}S7iHKiV38LY>ADD{}N zmwF7c)MJn#oC_uO7-Xr(AVWBpRk|CHr5=L}*)RbL4zd&+WK{F$oy3i5-s7YRhwrV| zqwDWKZ+{R{v*9rbOn3}6J2AjK{Tss^*w9%|8#-y8gte1!1cZbmAP|n(0f@DK4h_-!1)6a^`Hr+6~skBm$)}RWMrk zQ2JC2WC-U%Nwk10(E>7Lb6KUDfGp7hGJ**vK*2$lf`g1; zDhxQ&(;`;-49uI=PfL!ac`L@IP?&6W3|4`Jk`F&^n zn2%}d*D?&j(x(u9{~jHZj@8bN12L~Tf2I!s*8g&Q%rkE1mbAzi-cfAVKb;%;>?n>MYeLT< zP7b||l6p5wYCk2Ze~YGX)%0gH{W(e{^w#rH4KHBA0}@;C0KCrvB(^}-u?0HZ&w?ek zD(Ohi3-O^$Jg`0zTOdnpfeiPvni5+eOKgD*;jF#H7RVA?AVc<6Cd+mYI^yL=+F}DT zLXXQTl?vPvTOdO=On`!eECmM{p*JYt!V3em3u&tI{pkA2A+c|W|Iv@ZW719p{Xa6m zoIFf3%K|RV7t;Of7tQ_edlBX2CqX&|1DOw{ALH!O>d;17)9To-5EFN0uS)8BO;Ya; zN$oc@{Y_1OThr?))kD>n_z;sTFoAY%&_pakoLfal+PQov-3&_>=YlNG1sU#Pg~Yia zi*rGSdst6#F393skl`LyUz`iFI2UAu2A4{l3$i#DWXR^iN>qa^&IK8=VFMH#WLQUuy*}1{qWd?+nK(1)Bo&~ubJJI0uah{Of4 z$+|ZCJ|GNosdty8_HI&xUA#w9-#$sbA4_U~qUnB0^7|7x= zkRh9kDxnIp_8908E+*gyjo6sF;Cv|aNz<4eqmsxKu}@o{(kZXsyc1nNX;thCuGAfL zfh=vd)A%@pw8-$Lw8%kka(3}%;v=!E27fNx_7{@+4@v4fBB}SNrhldB$2I+=rk|!% zS4oBv51}05A(R7VUoIlX8mhyesgu!P8!*^a%Zbf{$FW1F4=t77WeVjq=@;V25M?RF^k+Z{z>-SSt{BL2le~{Gw zqolsSN$UL{P5(*L|E}r((Da`v)m4$9#6c*AI0(gn2UvnQ2xM^($S?v676*YW4gwh- zV12|vAd7=Qh67klaS+JbL7+o8t1k|^BIqDKl%APOB@O~v90W3ib73ViK^6yr4B@Z= zCUQWQf`bhI-NW4Q-%TgTe~L~+tKy{dTovD>t07LbIhS;gaH4dNK__zdkec}F1*(Y= z?*hUXDXG_z)Q*Q(QGP=qf&xE}69#SAi_90vW=&P~s|(#Z@3fIG0so6l8G~ z$dC;aV1x{^6dYuD(#KYZColY!Jef#fx+eDj2iL^6nmf_Q8KhT)6Qx%SI+3%B6aVrH zRmEh=O(9^XO6pIO)R!TtH%rr7X?l*Px7PGLN_ACaDDe==As#|GUnR=rSv&+XgtPkMA&|vGAVWBpN<0LzcnD<3=E6#7 zf-D{a8SaM-aDNQ46ddH`GhGEqL&ru$?5 zJCO42Z#RcN?@;RG9kXLCAl5ucFB_kqIOVO)2)Vh?(aV5s~BZu`f+M2ye!{FmF_O8M%4&hmWi zvVD(9@tyoE&rByV*Hh$l&+_Crz8p`bZAbUR%UPLN$;7wtd7l;}z1aC-UUX{F9`%02 zmO1n#fx3!Lk?kw{k2^4s-g6qU))QSpZ;YU#x+4yL{`r6ir>fD_AYY=I-^t}398wa> z6!;L1tv_Jn>#OzG->V7zP7S~2ObV0R#xuv_k~)vH@yuAZll?#z=5cK$q58BDDv2SH zeyrrM740g2{KCKMcf-CLmh+BWd$z9q?mwRK@A^Gm$u!zy~)g8@A7mH<4 zC-x3hiGJ(jdmpZ#EfAOMLvsc}WYiC8&R7XVov&t?KSi9Jy;x=zFkF3o*Z$>(Yi#^w- z>b!w>-gIJdtU~ne-{NI5TS`5fa((TjPp~IT>Yoyl2HqxPJ8OG+=C{wQiilW3nylYP zKT7#;vQGJUE79jyuPMoM`0Y`t8rr-<#@m5A0~n#Mw`Wb@H8ew7FmB&!dl+}$)XmIr zOM$jkMfGvEZgg30A;p(@3UYx$p=wa=j-oIMB5y99Rz~Pi{C1kB26`C1XU~G_BA_=- zk9t}l<@`^53DQ6qNPj1R)C$wrwVld-1epNH$r>`g+8czNw#4nWaC)%6r*p1BFo?cl zL4+hxk`P-sJi$3vmK#4-6~&4L9r^<4NGL0i+pEJMH*NfT)x~Cz+CR^)B^@<@0rUfK8`u6at3~F z#Wbs-n>McB>kE@2=di9uHB#&=MGEu}Nbxv7Ug>!t40iY4?P0KTe*0*y_!`IH`mYjP zltOU*qsbn4)76wQsQ8;Ue!tfr1}Wzg#uB7~Fp$16+Qcl1-|L;~yfoJHSTijTj`Zxi z*bLHb;WYOlid79@0KMY`5P}47)%Z&Q+w8MPgvBb(VNH!-5bX(q2vw!jwO3QA&1=HA z1wA;jbYD?(#8{kDOT3bAVA7mhsy!`oG?an%UoFs3TA;lX!whJXXV2?& zDey8*&0!P}8Q!}esQ5dUukUcWc7VN&6ih|QW-QX!s)v6iWKt&m% zd2b}=gfs!9(CyVlK_DKQ#NymE0T~Y7wyH~MAWdmu1zlff6Ld(My0>S~sny;vXq*%D za%o+@xXIJPVnfxB+UIFyO+bhc`5u?tiD1M?=jJakRMs(UA|G)>`S?zT|M(7o-#{oM z&ir#$$^Zi$7-j2`wDF@EGKWG`5`+x$pPJ`s6WfCBn(VSNdfy9%yN&ZaNfu6dj9#C( zF=nf)KIc=<_?AxI3c7LWEz<;Y%aK$yzh=&?g$rj*qZ9j>F!Z&pzJ z&E&UX5^(4ZM^~w;qz3*bnj4O`yf-e|nR_qsaUSQXducMJ_wn$XjLA6>w2y)eV@FEr z<2p#^NCWp4`hA)@Z=hjd9uzg?-r~V7Dj_1`o9A0qn4f)<*szvL!jgnN51;?eNq^yi1E zC(*11%3dH)&`z|v^zLDV+aJWkeS@6irpX`}ME|XV2qgtEc;hf&uqUjXrp4f!CBtf< zd<(V7SV@5j-ZA7}K~SRtjgQ>R;T(fU&1#^$cL)?j2vqP^;pd^3LKOiDV;aqBpzK8g z1?>bXc#Cj$*riZjK;Z^Pvl=M>Vu6Bo0u{VD_;AFfP_;%YGM45wSiZXi3+f40v)h78 zjO7Cs;!Cp{DDP5jEEXY9!P|kQm6xiu-KbTVqgf4oj?U|1EvhR6v`homS#0j z{yKqzb^>Ka{g)sABiI0EYOh-YMs8R%oPqbP5O`=DfDaw`BjTL1|V4W#6xj$RffA`iQtNC@;=YOv7ui{0|5g)C(Wu zBjm!cYJ*sY*I@Zp2^M5X5u1(fN4R~>!D4aFji>ayuT{{vUV|7=??VC#VFKE0Tu+T# zb5MPb5xrqHVD=*d22BMlIHE`Rg<<(|{<~Mn37XYF`B!Vhv3>$|=}3Nr`(hCAFFdrv zDUIQ2;zk1)K+{!0M*$2O#J^4fa#bMKFtozyZ+1{4t~)t{B>ggVIV|BagZB~cq9D}# z>q#q|@|}gP`^n3V+9&W^uGeF@ZlM>(xRm>6Xd5y>U*R4{bGCOo`CnS8aZhNIJFE=G z>Uh_+zHD^%uY(yc8LLC+^==s&&|9y|b2wvYKgzgtZZqIzM(J8>yklNxH8KNsg6vC& z=Of(Spq()7hEp1tcaT>}7FZ^u^N*{XHJ#=;J2T|s-bD!)K2Zk?xQwr-;aq@_1>NJywljg773 zd#ll9U1B|zI}1Ci_uCe!_ww7T`Zk5?_1w1VC7DUXhycWGd)vXmyxMPv}&cw z(g`6sxsJI9SFXv)YxpFuNcnTyt50&;sgJV@)Siqy^6m44pLEHyN@wJIPz7^U3%S^KW)P;Lixs8xIQMXPq|V0NMUETgURr?pWZrR1vJ zDLLxBlve7^)NHjqHA`(w%~W+M>1s+^x*9@ggGsNRX=x2>N=io`F6yq1w&|pf<#xpH zXzPyZNDg6V5pHIII*^{P_NTU1dy-nI_Y$+z8;P0f#iVq#J~34-NlH=UQ`6L-j0{zk zm8D8jQwg(p;+8h;8jcrsQzzSYRVVYis1td`>Nx$5weF<8%q>!fNpHsfG(As!%=#u~ zt9KJJ)Q*I7^=v|_dNd(L-IAEBhNYyafrMW{w## z4M&VAIm;xcuvTYq(~bf7xhr%IjaJ4l@_t5T;*2dEQW%ha)=9_k3m`hx5Rn8|KUeZq;EhOD|>*|CQ@)TX2QG_$SxnB&5errsf0FGnY+ z4J2zZ$r>K(QDrUSR2h}6b7CUPy77GPD%I4pLS5)PSX~%8T3w*>Tp&5$JiJH{7I7T{S@+FRxZdyYyCv+ICi-ksbFZQ=F5}c9N`DN!I4*c(p91g&J*> zEGk={mMvA^^bF^RRj#ZX&y(SrdR3_l@5q_>G9X86BSp$kcSJpsL!b};9%Snm!aN`Nmj3suq`C)UJ^E53+o+E!qU`B%5z`qhkt%DZ!TN3s(30q0RCXlc`9*^ox zUhCL00Uq1lwO2z^pK5iXKNXCvIBB~2=Jv(vn+G3O-#orfH9hjEI)C>vb(Xw%nyh$& ztayy9c%*GHMPs4zlNB!~YaGeyO;+qh1?waptDWDvpsuMe$zqRHjZhb^x<*}?extf@ z>m90T$x_uw-a9w@7Io&DDeBaak?I6R$FYt*)nRH4QKOS`)E@HKyU|H7;!{+vIx5$d zB&$~olGQRn<;2Bt)XykONUm%oXEm`bDq9mpebbd!tEOwGs>bVQs`HbltFz>&uZLc# zPH`>k+D9EN?5enx`kbQvlY~}kcWj#4NwPRPHc=!lp-8-fBC(Vru~%XuJ1c+M{5FMk zO#{8EiJeBj#tJX0*mB1ITct?4$&CQr@Jpq?F3WVPjO&;8BVT)yT~S{mxO-bhcN8`nsgQI@P(C zIzdg~S7fX&sjK)RHBTL&LVV=OP#?ymQ1wkz&r|h%gqn(}u`N{ZU?DnAoL}6nj@yIA z(bq^j)Vorh?cN{l>}hIqPv&(|$8$TWqnYj0;naNfd19{e$7QKKcA9#RLi)D^zJ=PM zWwCL}OTeX6cUrpL)YcV^>yw#PIlp{hT_bt;JbC-v@GLZPjxV_qdGt}d0$#<^#OI~ZzN}_ZPe}F zpPZ(~Qg_vvxpO3S)-t(NA2&}O?{ZxUcH^u zR=tpws~*nGR-=+rAb)&e?+!(kv#SQxZ5lVBVZ)%o4g0Ews1JJdRu8n!Z&;e0(@+p& zSJt~W#_VvducL`By)Q;4x>B1@bj`bU=B!(>#NJbu*k4^i^TBbac!_=bWoEoAnWr-2 z#qF1y@!~wZ#Qv!B?Pv z*uP9f_?CyHA@g3e#=a}fWH#erdovHA&8qn&6JNoxFi)-wspWINcheJJY@PGdJNK6f zu;9cOP(udn{wGC6NSFJZu!*ncg4{lw%T2oGH5&W22$t6Tax-5+FwA`66bt8u*I;?K zYSXa{(d)8PUqL{b`og*F7tja>(SAk{AxRL!roNhC>Dw^5P1mdj%KxlDK}mrMoBB%R z_%IV2w2cAhy@t?@t7bJ&zUKuB+6h$H)K?f(5za9&q*)D=_eFt%b^;YP^%Vx?#rf@3 zq?KkhQ1(mORxCoG!lu5$plWe0#?rh7%m1=qK|R3=oB9gF@&&OBufg)YDp=4@u)^lP z!mzgE9M;mT2Fm-IKtY5+h0T41LHThGYiU*kWzW~unneiIe=zse4Bl{0ESI|g<%!p9LwB>*I;>X7c9uQ?Ce({V6i?v=LS?JzpflllV2Ld zfcln576=p2@X4>{pziHB$K;n`HelYn1q_-BSlHxO7?vOBSjRTJ2Ft!jupmRQE<5`b zM8xbDPBHss01Tk%upmeP!)CvdNuo4xnEk@3Or+_)&On)N8X_(~{T0N*^cPNfCe7B} z<-eQ$LT8NWFYczH?&YVyQsTY$YOCMRInDgn{xoylXl>sIq+go=lQ9CVQOdn->KTRdtc=jyr2>s*sxmXZDmQniN=PWslV0sReMSg}RI5DxeW9}393+&_R9d!QrDT4jQZjba?>&{8 z@uo^m->y>AHmZ~~Mw_BCvxbmfgQ;Xa=?;t6xN2+DYE)|#bj*3rwRmCSfsahu9s}d6@tE8j~(tCi)&K^h> zW*K=?IuxH!MP0w9-x<}h+ZolldW!RL8C-RJ%@Jsr>d|lC2J@jNH$u z9G|F`se4t6#P^ja;SJTI=az5b>C0mtKEDTU-&Vt1rez2g{)1p^p=kAPt zP8Ih!r@Hkzr%L;tQ+>+Ms=foxsIv0Yse`dE>2i#u9f7ymYKiF|s}@PSRBX$4 zlpXhqijCW>JaKg@E`9<@D_6%6*o?pby1 zq_5Q#!%nK+{k|gaeW}_Ma&&)6k@2zeB<>TNy=3 zXO?wi@BZgi&%RBn@4yRWw+mFB3nb@)diarV)Vg)ws7D`bQcIVeS2xt2QCE#UrOGRg zt1cx+RonK5$c~?>_>Ee=;v2PL#rgMcByEBW3@U7a$!Zu$} z5Bw*>;#t^lN!ZgQY$XYsK*IV!Sj(0j;jykI+Z*}}Xj1(v$%-Q{s7X^VsN3)SMm_k@ zH|p^xzEO{?Zc=yObDq3-maKT1tayT~c#P^bwMi6>$(eqt$EIMRvc{3D-c;Xuk;ghg zR_pxvb$tht$0{zUsw*z2tHxbW(`Q~#w=TS(mfX!z(x_(Nd`?|+-5E7x*eQyR6BHfC zC^`*LLS?rq60>Jipo_-<+@U}Xwi#2){AOD4oCfrgru^{@~TFP4k=sp&?a@| z*d}%DQYup~nf7Yac7EN!Y8E2DifXE2LmLVBJQd;`RcmQFx|LER*_j*Nqtw_QBEx;A z;#2lhHEtjw9PTesxUbVyYXCW^l$s89Qr@JbyqderHul z@2^$o?$qdZIzf%?SJYX2sZz7Qph6r_o}`adO#Fws`aVzik5D0|QXzVqLUf#1+;x5( zw+ExgHKHBr-T$2G-uozoZu z6h7yuQ8`1(pH|&rY3g>!(phZ|lfvRo4pUFUyVT{prabY~Yj2BnI+oDx0lbgTTc)!Xk_)z7vd0S<*dV#wC zhY4Ynp7!cc)Vs23(CoT#<2N-7s@~90RlQI3DE)wjJ`Xfxw_4f|V;AUYFWKOwp97P5 zue8g}d-YgT(gV|8kw>DOUw-g(a@SpMo0msMbY_hB)8!_;IFC$vy%pDjCeQA=%%oSG z9vQaOX&2e-Wpf%n>80}qCcT*F-%on^d>Z<dml71oXhR@3XXqe z(u>deo-Jh3izmFgt?x?Div=gWfEqGLw;vWhNSE82ut~4xg4{lw%iX!=H5&UL5iG6w z4kGVC!zripm&V`LP-G(oAYW0<+gB& zn{&-+knG2`$ykCQg-v;-Fd<~h3+LEZrCAM>{|SMDasm}L75YM|^*0tM{^Ds0Lt49aJqXeLAR z8Z7^2Z7r4|SYcCMVOZOPSccbN`JNIi$PlcsIj=A*Kh9w-&1#^$PYV=82-JTt=hY0} zZ5d4qb2OSkx3>v86b_(YGUb)ZCJ6~SoXZ0q8o&VhpAkT)Er4NDUSU{8IF~0oG_S$( zJttUD^0HH2VOUbNfziSpy4xK%|YGUaV`&VXl4WEdqu#Ysepyec!gp4aV}48XkLTm z{f%HjLBYE0j8_m5GhR65omDxS-{9H0vx1I-7dGLQMgl`7yl^UWXPVVOnJyYCUVg$W zh=mES09LH&EC1b$7kXmMcyS*MeSdAn%lC%1`a7I6IOAom8@0V}0qNIfykvkNPiAn= z(B71h=^Ti^KIMf+GIUlWG+-+TzwDG(&{ml8!f9a2OSHn2mmaLpJvWpwmNdl-pYoCc z6sElLBl08cQd9c0BjJ0#Knk7yYM)lw>dqkzg&VI?1?$GE{8b}V>&2C-^-Q`$9MHBQ zp+kCIY-*gD{_2ubS-A67)%N|{RsMUosW$cVRPO6HsqB|$sLZFYRT+flDtBl{l~9moroTS(soX;ksaE{^;vtoNaFxpV>^_x7s3{*U zRVlj{sg(B?sMI%aQmNagsnm_*R7zcyN}JMEWe#btS`F@?(t767oeoWZ9bT>499^q& zkIAp~(KRaP$ZC~E*qH}?D*eDpmAZeKO4_qXB@$-h8?#l?i`T2f^`lkNk^w4pd`Fcr zs6b^^6{^&d9KxjOuPt*M3XiW>ZBK4c`Si;>;i$ah>s0GwkE`4-A5*OkKSJ26RQjhY zRSH=kk@QV?m!^q!+@KPky-p=OI$R~*(o3ZbBg}#MDx;!6#pfl{Z6-~Bl@?UCJGoJ{ zKmDX?N54W&PioYXrsi9+}OlESu(qOgw# zQ@xpwQN-{BiuAOk1{tx`)E!6Ru?^Tq?8tW4@+tnyPbmKSN@~wX!u1uD#OFzs%PEn4 zwddnW3uemB?CfE(+m|MfNWc;!m!S@97iU$rQn>mio&*F@vWrLZGY$gw|%f{VtI zW7RNnyx*6cW0EM;6GP!WW2ix|mK53|l5@w+uXR((I*XsG4U|?@NRL--r01$O(TJ+e zH2T(N8hK+Q4ZY4j*(P{=dT@M+O*n_q*^;j=>?h@RA!Xj)M9 z^!%4=>4}QvlzPRY_7@jYOR4QszoAI3JtyZec<<{}chgH0oc|0tru3kYCu7N#)`Y^- zVkjaZT6~R5<(Rs%pB{HMQNKG|Xv7`%b7wcr|7ssC{ptWMxLrci+21SI3+b6JR#N)a zWt4PjF||I=c|1LvqIeCt4*w?wmyD;nT!VFa&Vt{~Ajh+9$jQFyb#F?Idc>OM7f(*g z?TwVq&Ia7sN@Kn%qW8Wkru?rD(dw^{&_{Pl$y>FXCfwLWgDY2)M-#b(+VEm-Y9=j| z7i{ppH>mEm(Ny=7!4y2xLyp05>MSg^DK+fTQk`Y@VrQx9Y%@Kj&UR3)akk1ho1@M) z8)qN!tihRAD?gMgM4fFPLv>dSq2O7WIx~ z#Ytc7rg@yj#hk@F&f>INJ7_Fd$upI!D4hdKVqdLgM>^xBsPgydp}q!jV5#gYr3poJ zXso_k6J(5p8$)6cmY`+l*4Qm-we_Pj&2 zsKib(DF1wQe1qDhlXP-hyR2kLGfZ z;@d;mXEVrAHi_y=xo_lhUpmlUS{Y3#tQ(iRP7*i2IGFytZ2Pbe2`a5>J#QK7sQb;e zlyYMgC4b4=mTbAaHMP95n3`N%Kn>2#rEp%p&QGUNaH%ZcYzpQr(2>`VLSE`XE}oo- zl%^5{H@|X*L`4qt!3N7chqg2`c zHz=5^%)uoc!t2MC6-)Ja@Im$D^R3+c>drHfGc0#1&+aJRZ=U3&q+MS{9eMwL^os&& z#rKG2Jj>BM=tv%P7~g}Oyq`LFA8_n>jU0s|D1`SM*Vs<>n(Wm|2F=Z{w4}_Zaz^A@ zxA)W3o7?GmE}P8C71UWWePyZMbeiyB8<^>o_2=Z$3EMV?oF5OOdQ;OWymw2AOm2$i z*RMw9Zn=Gw7Tw%S<107N)7O?$cis*YKL3znc{^;%x88=l9oFaVFiLK_tDdK**?p-k^O z=08bM1KXkbm70{<`_)0Yg9;{=J(fSdtoN~5)a4-myWgBaWlg8|FAHu{-}f_L=DUyV z-dB`g?`!nf2@}U!w>@=I?AF)CN33&gT-^E^{gBUlRoPE;HP4Et%~z`U{)VGq?ABME z7Ev)lxvd}4`nqH5IKH-DvrOwtUjtiT23ynm63)MGeU%p*>6^yY_dc)wt*^2M28%~w z?>@MAXy@y}W3b)%l5=_QW;$P$-YPc^-_Dn+`aG*=9k6*iQu}>QK9^$n+? zV!)14TgnXlVU4c`TH5&1Q*L}E#uzH3$`9F6Iy!q)5AAzB(6jqqdY&*}mI~;51xR`IT&v4aA>}x2k|i!|seraufK(x*xP@l8&?-M;Yw7T8t$?;yfL6Jl zYqAU#Qr>g6l)A8`{vT~GKlz|KdaC&|YEaL*V5{qZYt(}7yX#f2KYz~4h(Ofwg$>bh+MMtf5KJ>E8 zT}p>&>jm_@qS>KO&r46WduEtW!mU|H`0$q311W8JK`J4{VeXOtuH~h7U~PHHy;+C* z&stvPcTLX!BFG0VFW50`?+>c<&stvggTc#J`9od;^u3FUFrTa7KksMou*EmN)skbpqE~HiJpG?Y3kg$b6JZPEpj6wB235Y(MKQ6{N$5Q zXywY4v|_~y{xHNx^xNP5mOl941DZK=CcX96TQq$5aO&H)5B2QXlM)jX%GiVHc+HqG zqiox@ZM1#+cG|jiD{bDqnKo?Lz@On*O&@>!F)dlLgyznjOYgk%4vif(|$4 z&YL%nrc9ZlS<1}Jq%K{$=)t*R&BS4Od3j}r4JZ)I$B)+> zpMLr&9Xoc6#7|jSnZ_eNFn-C&nl)>vprC*jELcGAzWXkX8#j*UsITg?CM72)8y~SF zMd!qc6I5PaUUSH~_=F$CBJ&{gA+stoDK)Wl=~D7~y)<#+L>fADsOCE6N$`s90r%w4DCr_SKpPzm98A)6+7V#x>B6E$LAs(qasoc?{N0Z0nA@P%#n5e!& zt=^}c&9WCSUR)+_&YU^pcbqxQ(dlX5zPC+}>Cz>-eEG8eEZ1fFBsQ5g z-#p3^k}{V?E+xnt0r94zTLdpf^~ckuJ*aV#Ksb_s#F;p{diAOv;!v(j0%YPOk+OdG z?b}x~X|i5rO)XrwkaBZ#>6KSrA-CI2;!F-W%l38V8zD%a)Y|1}0gQfPAy)8`!_|C4psRWRUpr^~LsF-x)(9 zB}O@991^?lj3J4LD=>+&iT3ExgLtD;UyT|y(uP;pu3at?q(ySC~9`vMw#z zEhHd&l44(wV6d#@)mLAV^d;-QN%>dXDOV@StxdM=r=EIB zmkDpDcEgJuWxo3AtGQCHB8;+;wTDb&I%P@tmX0iTd7_Z}nC$=dFFC&c`s=w;^fHf< z(|@%cN+^`Z*raQ+_RsKkYt zPV2ERoWH9h-}`3&MqkcdXGon!aytF4GsT)$>3lLW&;IIYJR#Ql^TOn2L5DN>Yk`Y{ zzT_`K3#y*+hf(@GJKBo4SU1M19$Y8Rl`oHV{4ARI$0F<4E$4*LZ}=B5Tq-WDa@LOsQUU9Ju&WuzXv;rp$G9@o zRmV!a>l|1o#su?jjs)Wo8f@Ic$Tj*P(f{~tVJe+77ED1YU! zdXQja0%Fy_FFx4eda5CYE?-#94Y*qI5{k9Q;d-ID{>V|`Qu!h~N~KsyA+ABqVFD!E zKx~!e0)Yt-hk+>73Ue|9CO`@o+K!ZJO&17EfMgknQmtNpZeBu6F%}nGUO{ZB$5{ zx$<|@!FBxJMw;x_a-3&IaZtQ#ckMWHsRsH7BMR}{nDm0;8|?*ZF4aK4Gf*Ru_2DC| zx+g)P=28t*hRBoQFcMx}m#bRWu3x+|$+fC>oVgBs%|PLz=pajv?c~~3JIEe<^JLfV zvvqWESN`GJ6&|GC=j7E3wLAJ}^+>IPlN5#Iq8#yx}$dPX* zDAU^0JnEU+_jr~fy#;2L%xk0KR&lPMbNbD>nW=I!8-B0FS6W8#Ou=SmYNrW*?@wmR zTtVQD-8K>l$a3=6D;6iUj^dn}OEpjtlbjj}Z|DQ4xdbTGpq>>b&>L-|IGyUjTG}pZ zSCA@L1LOHeMOZ=Y`A5glEnHru?V}dd{-1@(38`N5_bDpQ`~SraSwyky3D<9!;ww?S z^_?TAXe@grUbv8f!&e$O@Ujd~^(=1oaa|h|Ad}5GsDJ*`o1TCC z?=;WC4XRgT5;6Cn8p0_w#J&w6+>53OCl zIW7TOZlEe*EoZeMFadJUKtTP|_uum%bJOQ~9e(Kr4!rm>Q_8}(!jf4UCP0Q62&g~Y z{gvnIJEJ@&j`#KW<^VYGyoRTG)^w4E36K&40aa%1dgU)X2M_e}lLijFYQs}K>syhA z36SW+c3_}ZRt)oexFFoKecLv_ga8L#mf@+MHKGek!vx4=0|9l->ejp?<+`_SN%WHj z4!lCcQ$6dfNW%n3g@J%tarLTu)yi01-@ds94m`&ZJ6hGVGP<%fOn{^r2&n({yK$bg zrw3?Ke5HW{FWc}`&)O=|FaeTpAfO&Q(%Z9hN3y3D{lhOIz=2n8c&cYL@5a(F0dmhk zK$U;HXB;dfSHayj{#;33}On^imGj(mCvSiMjdQz8-@2G(TFU#;$ z&$=PfFaa{zKtL5~zGr1DUKHiG8i50^(C}2x8kow`Fac6wAfO&SoatG*WQqHFWu;$* z00*AqQ&ZQ%w@O7CCP2~*1k{fT3iwVN?VdL`#BbEVftPJ~s%Is2XK9!K$u|&CcNBGY z%T48*ugCa}8aVLE4Nvu~pQS z9&f-N0vvc*hNpVgh#q{Wg$ajh6#`~0|E8(^Uvtp3R#H0(!hb2ZFs6@Z53&l0LeEHP{04~ zJNNEgU3rW4mj({Ja>G+St9dV$h6#{+1_G*#G;jWV_vTF<{6-BNc=6??l!b5Qi8M@r z3^Nc=MVhw`_qw%f{Zyl9d8!nt$qeI+G+xdskA$0<8n)w4=P8YV!}3O&4jH z04XsLP-P{GG{24Wn?~Tkt2R8iVCY{OGMYpY1Z1W3MtfVykvPWO_< z^*w>_F@OWF-0)P-YW^5Y!vx4Z0|8Yw)j6|g%X?bCX#@_u_;YqbRL{y2X_x>RW+0%7 zwD02wo)3Tn&ue(9XWbWRm;fm;5K!$0rJp`90S8{S;i;ZA{_&`0u`mG=ZJLLmS{EJ< zZqO>0M~*8%W*MX^ST|T~2uy%XHV{zp{DS8hqyRYZ3Jp*7tbu)48YVz03AHvS|8O#V=$xBn31AdO*6{R9Ptt(|gGnGj0^u}D0z|GTfm|q~q6>-&o}i*pJU~(LOjyw!6_FUQ zBCZOG8c$Hvpdy4romE%CGm0yssByh;*WJZkmH(YRGfkqALw3KvHPlq~yXw7H*Xye8 z#wU;6^3w0-rUwVSQ#^Wmb*B@9&a1PxyjOkM#)A$WHEPo#haURt|7sS!_(jdq7t?Fz z+Ick%cI_@x%B-22&@gPL85Wf|Ri1I>01A2MoGXxHkD^_P10s+pTQ4x}7+$SznVDveOhO&l_G z=%zzQg=%h2Jr<~kM(q~rt{!stIpBZ;Hs$B%Z#wwkVKID)4%a#AL{5F>Z%2-K zNA3pe?x4Q`-IQZ&x+C|T-|bfJu6_sX7t7cCdq+9a$L?l1T>TH~>*d~DUL*o=> zX&tdW#3=1`1`TYEcS~gl9(drU(z0@F0mtq(uZ)#T+FIeTmL&MO@__>fvUJIZ?NRB9 z%70FZU%KZ?=?p)9kLb|#_@X0zNtV{!cjdJUChXLR8*AT|ev92pj%kfVt%K>i2_-Kp zE3dw}_lbKYF>AyvM45HWB@gtZZ4R)(EaJ zTmh_v{>AjKo3LNSKNw4+qXc`#QQm@G%S*LFd#qZq)jQ~*gP}^zPD@AcS~cQZjm#H! zN2Q|n(TaG}{Ji{@WIw#68^69>>@<28?expl!RiedP|%WuJNRQufWK5OHu`NUG;rXc zmgL!q1ya1TF=4UKm|d_>>uiJe88T!@OVt_K(v8-ayB+p#Q<;MfI;bVt%38Y7`f{<$ zxZlJsMZ<@;B-x0TZnUmksxf{itI>MbLiZ{zDQQWnqLyy7rd*o*Z&Qh~^758sI=H19 zzg#YMILWocamOCJ-RJXd|K;>JfoolQ{Bg$<{Eau=)LdG*y@eaUSU!8s93r@DX{B%b zt`XQp{63)aRtQjY*Yg=Q4?pk3{N>ezZy8c~92l(ie-vwiA==_MS4WK9e_LC` z+X3xSv*gM4V2dJX7YF`ITVNZSGG)r{v&a8m?c!%_F>CIx?W52ZQ>RVay|&n!?c(&` zfO*aB%X)+Fr`9wqDcni_pK;k`yHV#c{lafh{T=$fQ}-~_IDPM&k5^Vz?KXYSuH4J| zK5-A~J4V+fJL%ikUU%K@(KV`hZ|nN_J*4Y6JWIpUhrcfvI*D$d?HJ+>s- z-qz#Loz$bN!(TtD@AT~Rzg33=cS47vzbkjb2X}Us*`kzt+Xr`Ef2(Hf#8ACcGs>2H z56kzq{`$9Q+2*Ad->cdQ-`klf)3*{ zqNBOcZMCKuPP_2J*6XOXexz`FyW9E&9nA(m8u1Iys(#HLf)*?i?>DL&P4~8r_VGw9 z{xc8!=a=?>RnDB*I^WT{{@QeJ>!yQ8H}PF|YuxABKm4IpDr%NdYt*&3Rn#^{a&etn zaGjQ#74DsF)ppG}ySVdjZ|kL9j9y?XA3U;s9D18Wo9S(E2WzW#t+vJ;ehFr8tEJ|T z%X-x;UG>MB@U3Od=;Dl4?jVg*?l0B3rTcqb7Ymo=kS=D;JKUp-b6T@=v!#0NO!;2d z#o}dIpo@jz7qPmyVCvLgY#Y197h-j`*K{G9uxlP(mQK2uHSeexzqt64OMYG#yV_;O z>Og=0SLmW)$zt#e)y0*+^jKA8-`(k%yPIJ1^kfuWTr;coI57V&#jSR``^QRkT5M*| z{HE$QEU5zvkE{II=a74bf9&l1q}a^v{w;Q`1G|o^JYm9wUuevG^z_NZ-Ca2^J+bP; zVAU~|zw`)ikGk-jIcIr=+cSBb*l9T=-Qeoxg^TIv&I&=$wmSe@*--+Q`}OUaTgji|qY714;}_Jk$Hip$B0 z%|5o-b5`@#XHQn}iJDmp$5bAF{PE3?p1(~c_gn>+u3AwOzI$|KOAki=Pq^r;#bYX) zeT4DbSP$KGjMry(H7}F9hMMqwqbr*|clp0wxrQYxYG&1qsci0n!EfZ2d(LtVOTcmu zj;`Dx+W*^G4J$W#SKTlcUxtK+npqEzsoWt{|G!_cbv5BfM^}0S?7yKaqOwD=8sC-Q zXsu-pOH!?x0r%LI@ged(x)f|q=-pha$5O4zlTSW5e#rhGcEDw~FB@#_IE4MSHQKE< zs#&`Bm74HVp&f><|K;XX)9_fNX4dl2mD8rhJmdatt%R*>WOGgI*Ou`FW9@pfQrs~0 zzg?kM$U?Eh({Jo@d&WZUu=Lwo2P;(aYu(EW@46edA9pnR->%G?&~`>vo^V3U5slxz zLc6Oo_`GK7yyTi$>p~P=#n)Wjc+>89dsM65-4y$lDy|R;fDLyiQ+*lKvWK6~v62Q3 zl2-!CE4^N+nH?!f8VWD4rq_tZmL?v2FugKN-d{$L!4V_im2LvH9&v-EW$?bbxRQ~F z91>Sjl!$LE1^Pk>@rr^21`Kea-lP(eO(=26kRc#fY)MV+pTC1wq7#JxymwA05_F)X zq$Dn1K5}GCzA&+G-@Y+YAWmUozkdC^WdV4ZvEVf#OknWfA#wS_!h_=SMMXt%`KTO> z5AS4)yC2mA-XD~RuR!&b)ztnS>q+-(YQJ)S2jJDUNNd^B7hyVE`?-6gruH-XJ%6_4 z@LTcc-)3c{j~e~=_bPopr{a`88zBuH1o`=YvW6vGdclQLE}Ci^;*y!RlLGl5=e2$A9-GVSeCL^Ny!Hv;PDV+M9-+{TtykTc5A6^pmN(7z6&IYjJ^G4T7{LC10Yo|j_8Km!W)kvYKlcFF`L_1M@+6w8%Q;*kTf@)^W!D0 z%iz4TiZv0D)Di6>$*RPV(`xx#Ie3K71!Eye0GT#FP$Jwj2V zBBaw#wFtqP?(O~QqlIV`l7As&F8oyA+E>&c7GG0%)e@P>%mj*g0-+eoJzlEnAxyKn z8H^^uP+p`MuqQ;j2VKVycC0MU{*JS zq3uz5skL&ker9YtE8Rw#X6&<8T85HW?_i+zsa9I0w&yIdfwpV40o4-pqqa~Ds}>Xv z)5=7juOIk7`f^4F_6MEm_V(?d-yd_Sao4>CEg9%Fa*aFa4_|oU)6_>fiy_4}*w>VF zv{HkFV7^bax@9OxSCKVzH-hH3w{ij#pBrh$w72s7e+`KX4k!6szG;@SMy&Eb4;P|R4l^-RXZXIbF(m^eiiRSBcP)k*!AI#!swV*)Q zee@%Nvhf~hmM;9Qm-7>-1%)~$rLG4E1I$9_xN1m1nP#r`4>jwDSwTk}`8)I2VrxG$ zwF6j?T*^#()t_D|gNFKHoSOq#@=Lca%pZlsD-HfSbU=e~cSBC~A2wJ-oXY9I-K(aN zds#P{nsFysx$IViVvg--bqms6v$?@aGar5!NHMp8+XZ}}xraNl=HBaQ4M;$~Rf#4w z)5<|@UVW9_IUmc=k?>Nv@VE1WIMS(NR!rHf6;pU{%RLu02ukf444+jaD!jGa3ffo) zQ_#s877X`=vCK^CWIbG6vQKu!3ULTY3#GD@BBlMz`x7k3%;;>T2MO4;?_p)x!;r{h zovkB+3~6<-x}?qJ z;VvhJisQt9#L4N0fZygYr_i%pFHLKO6Qw+d3ODeiBeWV)WZs1b^|@uBFGNQHvg{Eq zf5wgDPvp(FxzHUdxjLCMFxd?~teR}+oRQQ$p%wAMp{fp21}W_VdLnGoeXw<7cGHv{ zp{oFzs2D5Dnvzl{1VadF7MZj(^GYwv$xv-p zGNrw&bCb_yu3=1#)fZ|`zc!ax^8=^?@R-5o{Qay;(QWEPy_!Zuy_C|FDtV1eZZS0l zx!{rnY{qs4(#5V)86!@q3_P-le7(zV64|!op3{ z+>YF}P|Do$<^+;W^3};nHo{69D05jdWE@K(#;wg6=(2qDKxUaMEHxc3EGgxN5D`;_ z*P^MW4FppWH2Z(K@E&a=rio+CU^9nW>FGj4y`O1K7-ZdUzWNdR51KBI83EH}z5_Oe z&VkGePG3`99k;K@^JKI#Fd9LN$KV2r`)9_9 zGaCaI3<9$W6*Zef)S%N!3tn{kq;n^mY30@xgDcLLzTx?!s2|h*i=aVl#U@!GPqLZK z`$K0|cfpQL7P~$cduC57y%Vwoq|+`w``qbgpWpAi$&)U+_`=D)3uaUo^fxDWv)Y*r zeXN1zgDzG=cGFamWL&~mx?rmUawH-50FH2^)T}On-Udrd_d~6kAc@0pAt6O6_Z0lI zdtU$~M%*z@6PB2A$4I{x^?{B!_d>o&sj&_PW>|t8y5N++Hid^-7uy&lFpnK(%}xec z!&rTS!lit$>c*6Bc@>&m3(*14gtG+HjE(h9)M&0~VD&4W&nt5&-ZeP$G_Sx%I1P zPxMYY`k4xa0N0aNMcS%tz?dkKy9@GepB6FI+lekM1`+D-%4xeJOtc}OJ^S$3s^L_`>xJO~X(nfy(db(QqPW0-l7q(4b|prrpE%lC67 z-ynFekK^((_7*3B(n_Cmr~tev=@7B(!(s|s@_mHBtCIgn(pAMp1KX75wL?IL>EVvZfVrZ$WgXx!o4mi&Z zl61fg5`SWY6vlN@0hh55R>ssBfyP%W<3?6YtujuxA4k5AU1pUB9sY@Zfb$MELr^=e zk@0twXK%t4|EJ0dP2?Gd0_ye5%*zvpnO;{~Il;Q+FwH_*LoHKv70lD9z+8WoRbf-d zNT36*2GC3zX&AKO)(o@w6F29kK4eCy99@$bpT9puW%hWHCLbzXY^)YDxz)~kJ>PUdR zcJ5B9G}|U=U76CF(#1!mbt12+FnT*O7#{#apd6`~$3dfSy>pEfO3u)cc?sM^fLt1( zC*N${o=rbN2E7G$=^_-9Jr|}OJTN~w7sqq10IcOrRW)e6!jlijoR#b;H%}pFZh@Y9X0A`gev(GpB7@!1>LK>>CUSI|M*%6%8 zp;(e42b^V5-aPh4>q;AWn}R#6hs>BE2?I>>omOqoIeH^Z2FKoOEvqicte<|DHOX%u zNi(_=tS{KJ);|D2AuOxkaJOY!Hcj||%wW@Qv30a**w1pT+0_MIf(>K7-pU<<**ZTB zXqUhsMzq^EiP9=$IPhaQvzy5|J80Jz-e6mtg1J5jY=W6iSWa zDV*XtomeoXr+7Z!b2R%w|H*+ur&0hFu~70#P!Y=#;}I23@hSvQ87rPIfn&bPP~jA> zvQ`k4U=$G&+Q0e>8ipW=d;N#!7#{J z6f)|TxlpJLQ=cu?dEm7@6rvZe>&DXvQ{!Q7ahAOKZ*;)y-f;1Ved|G*A!5*w75d zHo;I{+G%W~ny*fWXT1WUHP6kKMx?w%ySeCk#>xN;fl!R`l2=|t8>C{4(q=Hif}y;$ z@1*v?&&54FmP_8{B~md4Js0<2G)dm&729<9xwr=-vn$tJc@+weFx8x%iwlI-JS2JL zMbbdc8H1jSdoX55UU{jmGSM^nxwr?TPV&l&veF%isT!&TVMbdy&jDhXLMht#hujJLtq*wz_>(eL7sH_j`Lof0ut(}LO zpjHGTM+Y|AR20sFbyXQWSA}Qvz78-(*f2RMv-|-Ip9^=)c0N3kCI^~Eo`EGTO1l!5 zw($J9XsDFv6YuZ}hEN8awlC*&eJQ7l%J~_6sbxki4Gc&uvpNG?dPd(RMP>RCCW;-* zr1xP7kN16M^*eSqGqqjP6F9v~8YY~SGsy(9sf^622{^vFmVe{Fm_K-3bwRGF%Je(d zXQp&JM18k@8AwfN@@M;+{O0^Lt24=v4Z1pFZTy5>2)QbiVpO0AgX=^9=dRt9?{A1Q#V@$%V z18@^%7>Jd>+mtK|B-v;fvtfY$&!)p`R-fvkRG#uqY_ftA#TV2!oCy1d&g9f5)L9*m zkEpWL4w(U;Zw34X;IGWO*C)Oao-br2b$tAwA!1=99QP(!GkQ4C5xWJt6 zTXKPWkahDeFy>9r0!AkET%t`jD)#cEMuF-nX1SOrHNtped>V>x8hFlwlX7)l%SHZe?GKLj4GeTLG*v>W(lPhf_IvLMaz zFMtxuT##mEWIGSS5&#f24F}j%;Wn?4^s*=X=f67XwLI!bv$t9OleIPk7I|1{bwCK~xCa$*d3Bsph^J!3DU4>}Sw>vII-1 zkTy_DNZqu5AE-=CvocdqC{?de8?Y#j8g@rE=@Ryiq}xc>Y%cQO4v!O(6qDUJ0CsVk z^5sFt*@BB$iWkA&#Ex}fJt_k+-k_?3<0coGOE+21RTlr?EBSoiQLFqt_FHxBD}7d- z`nFSY<9)-5-@75Z_>hCMive)p>EWc3i!a!+@{WIhyfXOIb1Sa7GHt}wr3Ix!It?nV zO1@yk_qSa&qB`q}C)U5({qZkHv{~6@jDN&q_No!UtExURZOtVU+m!X}@xtm)-@dD1 zbA4*rWd}NIp8waH(ha!_+m*BrURb zf>JiL&zEQ|Hg9}n9c`oAnbnE@lO%XEXF)K>d@v<=LcP7knrKf_ht~!W{u6g8+Awrl zpbbHXaGEB7iej(ru&)Y(hTXyD$@s`F;cqZx@F-@4tfZl2an$x`DD0^UwMc!zX~!V3 z9DEJuczn4*e0h7&EchJuRQVFXUlYWaQ6L9|>25X*@~7K)D`o^EHx?$!G_nsfC1FhW z@2n0TW|7HTWC-xnx%`{WS9xZ`qRw0i~LCw#kJJc zD4YTHR~OVNmb#p}SfTX6EH3|x^5DdvAN;Yap>4_4!nN#bnugL?&EZT`GrO7;sU@5Y z28re1t2+4Cx*7>oUC_Lv2@7Qz>A);WI&`#I=H5F%+ptN`HuJ8w)6Ial0tx1?!~C(< zr#@3Kl@iqp-3U358Bz zmR$mQytM2R)BQPkRQ~0^tgeAe6X1Ep#sKX)jIGf0dm!uwo?OL~r2!@Wpp6D=#&uw8 z%fGGMAV<9>jrOM|N%l3E6{juCGQG088Qvy0IJ1&;B zeSP#wGxhesNHg2^kL>l+jpJ5b_`ujz%kLb!Dy93~#X~-QWyBqWpB~XO@97aYeR=DO zigjNWo4n0dX34jG%!tD?bBo`*JZr_Je>>%|f3zF5vf`6f!&f}_7aXsBPfxvgP2Kv& z(zovnuKDmkcQw2=T|~1RhBtvA?!(+xDXZzC5|~|p_R)2 z;9S>?PV{F5241|l6fh#(l>q7m zFK-Z8;S_J1;3+-E!hin)Q?O{nb6ceVDq?O9S4#;ZFkWSe@rVkic;f|688a6A>j@$& zoZ?l61yKn`5s_guLpANm6OwQr95`vp=17swSt7mg z*7x^#B3>;AJ@G-^fR-a(!;l_GuJnmD+RY^4HX(4?Hdin#|K7U}xpeF}j zA?WD`fntK56zZV*;u5fjh(l~C$ochJRi=-Epe3eT7k@P9X_-YG0}}M~LtIl?#|Ax_ zwbk3qZ3uS2>H2C8d7{=aFJeexdnngG{6X^n-X`GO2IgZl=@tycpc$O$?hgG<&%Ck6*b7?|$s~6&E zvlbWPlhjw#cN|!_f^l(u#nd}3NT%8kC$52j(*%2QLJAYqBF$|DDfQ8Yb} z^G+e8*u@tOl@e8cco0K~LO7`!62HRs{bHohZTdR|aL{*#2@_=+8X{tfFwAvOIgA}^ zqk=%bq&If^Nz0^g9zO2c-+96}-;aOX?T?oAGpdA}IRU`%=QH1q4Nw>S3`P92gsqA} zT0tYAcxKutzr@|6l)Q0w@;uTddfu@@4<1*Pf;m9^rZQOHm)~?;{<@>Sm@{(y{^zef z@9N zofk{V|Dxkzlr|4E&4I%oHE`(M!Tzjic$iqY1m(iHMWGg{_Cv!NB$mTY#HiCin7n3V z)Y#Vy6DG>kDQ2cB3^T_V^$F^E60<(tjageC;b=oK>yII3{V|R%-J&t;eKltNaZJn_ z9VJV6DenmC0^E%%zGKXK-)3Xh^qi2Ch|dYf3CWiGy3?r|u`%n9M8Pe^tUuD2^~cS` ztfg{=!H>N$YczN>{T;=uy97gYgq3#cJ$kGk&u``z%51r*53d(8_v19YKc^At5}gf5 z86qv7oqCF|>);BSTW@~c>X}VHL9=?RR#*{=>AuYBlC4Dw5)lxlvZ0;7OSTp%$Tk5X zR8x&qv`9g6r7nbOo<1I^Xpw@97Z5@<-y(<>DM(mA2-WOA9ze86L6!>$p_)kuqD2bQ zBp`%pZUc}Y6`5(DLC_Fynhj8xuX=Y^V`2wwhlNsY7MNCJ0-+c)B(Ic6hoFAOSdD8$ z4@RBjLz31Ck6aRqR%0HFM#(ELH4bCYYRrS-e$Try2U2FWv-oPC0`OhpB#)>#)A zl<$o8P!J54!skK(DH8>#$UdexHF&X^aW+udcM1dva-M0E1wmiucOGJb>=OH{5JM&` z4s2?eWy0qGp}CHoQ(cmt?;PzRB1kTgFN6pZk5Nt56j05?kDRX6B^~meQ#?cj$tCio z5JBQhWMUdfQg^OD^VVaN^YB^C+@xUpEP-?Jz7jm77sI^hJYZh6Zz4QW$ueVtfGB`2 z;@5(R1R1d^0~kimhpJC}H31Rxo!R}{YO^473X)6Y8zF+kT_WwwogIRgn8pi$($x7v z>1Gcl!E`CD=eF)32ebN8f3`V)s{frVDR#j&2pFQ9Nz?q_Wl4z(@wz}DCPJi}YcKSF zm?gz7*c$?d=rMZx<3;{=v*ex&`=-Dm4VLZE=^&dFyI^k%7@{-S%8UK?C%+}dm{Rv( zuD!&cYEu?Er#$ogCH_B}EB+N2Xy#oCEmz36WZw~dWQSyz;)x}^x>gtTHH&8eih#H% zje>%tSdy=2_-hoe8{$228Q=+=i}$YJAw99QzZ4&tr59Pk9r#d}ZikRIc;yCRC$ z9r36a6F3)dqu?Pu#_M`z6t4&3ZMhQo37m`fzThD}#_M-g6t5@ZeRmb$37m`f7r{e% zj5p$He~pdGG^JMt(y+1Em4GOKF5(A*hy+bRCAgiGxDcBJ0x{X2Qh&6=rs3~_bhEX} ze@K=9xCkE#0uo|`oSy(;{da&c;Mz91)g{Sh(CM$qaFCW;qXe^HmVaZG+;d^K2rSYt z)z|u$T0Zk?YH%RAdY0UEp+6C5q!L50v|SqMSNDh6 z0U{I7tvCAL%y4Aj?11jgKPQ2{hMxoH>1-|1vZ2 zg+Pw^VIIsn7rbE62GU!3qb@R+z;$XcOfQSDhWbwjTk(YxLyQd4EhsG$3**K@{F{p? zP>yg7F?rlhjQ8=`F3$4wRik|*uLmJ98}P$@Jd-F~VV~7{4))Wm50*4{{yQHnjf`tJzE}$1$T9`E!FDkin>7Z`HD{(`sYa@v2qx*dlEu z&Lvz~O+!aZ{zT-6VZr^hNGs`#V-WO!=r!Kl{7T?(^W@#Js_i47iW)hVQI#a4moe&j zixD-gtu!OlZ(o5|{P6K2U7QFNWxj@zb>_o+{nO2s*#Veo+Ggr~pv2{iVRyCjSHZzF zW-&)uTFm84h0WIMHw31)|M7?I+Ybhz@X;KlX3?3+!}6WfFcuaIpI6YbsP(^i6&tMlKX~sSXsOgy?bumbB9I$#C($N&ZG|3P7 z+XRz+nbtfrDXney6z2=67^X25!)!fN3|>1+Mx<3IvZaV7Drf8G&_l0y1cW;}ox|@p z1f8u20gFX=vjBA9yb%q{>Yskpzan6xpR~MptA61!7`%dEdW9PW6~C_MpyF}~95{VB z_){opWkU9Y&VjNS{A_Zv_5JKgcq82HLDuhtY+0Q^UkcwzuPmrL^A}GyQ zjcK5#LNv&Y2ezY#8kpBu3~>pBV$^zcuZm*~3UPTbB9d2LnNlAXmO@+}jBS!vUZfnb zD`U`x91liro_K(ilQe+Qh`jhbqd;gq#!Fs#5p5TPLR=n!eKfd$y)+9>8*)j| z&(}cb`ou~&;s7zX!YJdfgz?wN$qn|UOR+nRr`sA#3!9?nVJzQ~`ya-qVURYA+G|op(M^SLN&(I>ZAm574is^Y5f#dV8c0zzVTTs*RWX^}qN8xD#r$uVf&{+(E zBDq&pXPkxoDH=WRBT$OvoXuEDjWL^_yWzCDufQvQ&ajD#{9)4NtE5k#97A##)p0uAQ5Ni)p+*t}f_cicj;WC1zS%V1l=W zwnv%Nw*mt^(?^@EN_`q~cV~19-}C2~FW-ho39q~dvGWts1MRTI!L;r>1e>&th#qf>3jRHZ}{*qUnv|cD6aog`{JI{PhR!%U3`k5 z9h@QAe6^=$ty3S4GzEsRKO_En$>V8~vn&NseGNlzLFU6=p4e_3HfzX-Y}#Gl~?-28uE_t z<(f3NAACx5Klmdt`@tWD{os!_vmcx{2Eu;uM?nwX{oqtz+7B+`5Zh+=gHJKvd=s-D z{E?Xb;E%$7aAh64A6&K`!%YnLl;gm83-1U=y*IZb++%*~;!!D59_Q@pIe6dGfnY6k zpYe(Co44$Zf`>ABI2{>;^rQd$+*#jSZu2*Dth@|R zPi*O|udq;-kxXVuqL{Hsfta(tR;ejn;$)Z)zJnKbN6+X|=v2^@3{?tsgyiG*-eKzy zLa)9bM~DKcqz!bAaYC}?y?2AwpicgUJ3ClNkds;lb)zd>L|2G_3d=UTdXeUhmi|zyKUu}XWmyl^Nc%IUXk=jadiP4 zRe9V>w5qUw8c6R;Ax9){z`hk+k?u*~MFHFy`$JB015|4rqOOzkNRidpGu}Kh>pd#k@;}-}Dr+As-n94Yc z7r#DGIK>MM99T)trUVty=bI8IDF70jBF>P!5>&h#e>|STDW0|@rRVc?QPd~thk7>w z@`^-hC}5613W_U|Mv+D5%+4T|RpFgje}l&x@F+ka6r)h`N=ZGM9F5QadN3*^ue{VH z$;J5muLq-6^2$qjBE#|>!lDzUF zXd{0sr?r>|qfYY5 zOZ|#5a4nYS!Dy7c@*-)V=8RF@42Cn5Yp%Rhs!VK0+&%OZyp#uHQ2X#;Y?Hk5(q4!=8)_dO3?1o} zmui;~_Mgg4ji@Q%oVBnB*x@pW(BmJgFfI^1F5MN+>&bEHZt#vsWgWXbX4bHF?iO>TjouN7s&8g_tQJ=fh=>QMXKah@ zt3h8ClFt>7@OnTun2qD22X|$ZSu6Fxba*i@k2MV)z~*rBP%K{bNRe8IZ|%kd)5Hol zSo9E1tohaDJH8*X*UulAzNf_l(~F_fi{lSWqediZf%o*lbdrrKY5jR=HH;c6+{jH; z4X6V}Tq_5IY1g2J!W8`y7sgM(Un0ElHOIdYrj2r5+Bt)FvuPU1XH$jyi>Zpzr9>^o zcQ#xYxIc)LpD{ukfY%40 zW~ez}Os}GHqAwABl4Cs0yf0M^rG|5Gu?zmL235b;Nr6sTbV%cBMBmJY?EyQkB&gY@ zKm^`&A%VSxa?C-}$RM%Y!P*>#N{JdSJcJ>X1Ep0PL9KYLFQp{*HEZ;`$Yx)&wiX1E zcR6`lX7-SnKKIw@8iodz2^tc;+N&3 zN}3Og(Jov;RZ^r8R4}rLc^MxnR}~!VN6~GTv_XaRi5paGq^r-#sh20yaCZTg;WK;u ztb7}G7oh6cEs#`3@8Y|%ZJ;F9%=o+6ckxYJ5Gb-QcOS1WI_uQZH7BiWc;n_S&`zt0 zpMuBhugyO??j?Pl{4dA7q;LDYzZN%!`0@J3nPo%1sJ^UW;L&qRfokc=@Ob@dcx~VN z7iX=wrNcJ|p7(iZW#gl(htGR;6FpuZc*l)v9zO3MrLUb|w&u(K+||CJvvosRc>dp3 zAGWlltP{Mq?|yi1pMS@v;i1d(hnZP-1jgFvoXtHAKcW7KI|CE#AO`{QGut8QA$5kJ z%|x38tqZ`4u@_qJDJVDx(tY>E=JBL9kMRB6Jlu37`%~ypG$K9m2uqRr3ElE=fOiGN z_l)Z7Foo@YQJ`SQcS4T^Sg?I2-K6>{en=LbNsi%_q}ho`27*8lrba(Of7DA9rJNBW=ar(^Keia7hq7=t)}3F zV7K55`V!pC`vYmc>8EG`dK|hizBB_es?2ZsL+Kyh4_lcAT;xwpQF4^lr_=>{S{b*2 zLGbUGqu@;vfE+5vX$^&nFMohT#bJ@6@gSDQIhfO?VVs6H$}I9PkT$cUSMfDaww#ug zw4;}PLN)YOldvKb)Bbqat}7)9ktsqj5qe927AZ(bK!})`iA1DCA!bOPFwN#q;q1N^ zDM+1w5Ha)ILxC>CwMao41w>KB48AjxpTnm$Zs?WZc$Y7c;9b6|MK=&3T2(5l8Wx~E zh7|-tF)Adllrm%G;Xs`SqgL{Tk`irDKZ`|y2oFX?^2$r=$`}-g@L+6{yz)}1SPK-0 z@L=SMA1N=bIb&cTB2OT+=Hn%=yhs|T2V+p6&Vvz_yz)|?6d!@3?_M6u1w(nMu4bT? z`9*ym9&US(a-t1VF$MmVdn$V{9L^uBu< z=w1G=z#y}oN6Wz_OnOth;9fp&s6I<$~ezYa2-X3{->Uz;QeeLG^XNO~jfog5tWK`@;J zXs<+_9+YRwpwvj+W^`k^^MEXjBn=%Y75p7az`;Bz(oV;rThWc_w0@*ATtBuGXznIk zu`wOO1<2donI58mPP2zL=@wMRyEA=^gt>6$)c}k&|G&92olHsZBI~VVj*d=oLm4Q7 zM=L&~`6?Vd)75TRj4Ekl3>!5(L5y0IE+uNy@X>hZs#ju0lZ&SWz}^m-%cHUTN)9UD7+>X&W6o zaKKV-$~|&C(8rDhWU-(6q|XCfucj7Px`Fn+=o9a2`%bY zJmu)+Bkp|mpHKdNRn3#V^DcQVt>CTUuRi?Ah;t9jdf>D-`>pL;VaiubdUnk%zR;R` zCiE-c^y95-`+e|CS*=yy;oZQ#ej5pyyp4gAZS)WCg0sHe`+;ZRNa09#0pj1x3y{nr zS!j&lbh)INw~Qf2iD)167%G9r#<(}a&;8U+N*5YBc@JS8VP)erlAASyvc^lnvAIA!PzXQe1X#q(~wRyf5g6g;K}HFq!1 z#%l#s#0o)Ff>FHq*SRa4;?)YC(o;No4LtJK{SgYNh!H_lf{F-H1&Fpqx2h$~cM_zg0!y6fZnt-~r^wN-&BT zUqb){r=|D6D-8wpB|HUv5myR#j%XXvB~z2grts>YWPbh#qd+J|W^sILQwMWUt-Oms zAQU4cdF7?9T1XhQi@<|1L-NXtXoD{>2JIs7VAM%od8t$t#DjJbcrY3zue`M8j6u5y zJQ&Vg?pKr-NdraZ>Q#ZHkuebMpU}}uXVl>j;@A61w@|D{UI=wjKh_opXCltY45A!3J;xJjjrs24PQ8U5r}4vtlX51Zu#O@mb8cp5 z#qN3wJv~DpP2e+x9sK-`Bn?Mdnj z>Kma=>>KJc>J#d%alIkvPcQY27G6akevs$wZaR?-A39BaBO@$DY9YS0dv;b(#GP1S z#Jz`bBH8!WtLT$#R7u><3UlsDfn-;wI9Z{$+=xZgLe5fFomwug2L)^$x3v#b3t`$B zMsR$J`6Q&c;lGQu2!2_pLRCnS5LK_mH~*@e%5NQL=UbNf+JcX7c7gBe!XIs&NW%L35&oW} z_n9Q&J@58^dIBwclyB&4=F1}EXD?Hbl4|Gnn71-V9|F=kP!N?6sRJrR6_Le}L*Jyc zgh=O&R-2d;w-iwz9b!abKOx7;uabIWI{rCd!*#_z-}NhfC6B^({a#QvhFU~VabSZz zZ`xOxSpxwuXv|X{dM-`7_R*a6uxtOu{U@pas6R!-pS0zx->4taKmv8tQG&(r`4AtE zIjBG3Yw5Sx;7|NqI&zWdSkrUG))zvGqe0P7DN$vH&u0i_K&khnQPm&iA@j$!={FGk zVT;`v*vg0BRHmp;1o3|CS1idNgp+a(O%+*DB6G(eSP;`^RIz$m#aO3^o;xC^5NxI9 zU=7hJkc&BXh*Cr0@DCOCGu}b^LGL(L==$7O&7Zf{=exE1m4KSL&&f-_iZ?XSi;U8~sP_?mS^uh1GJ7Cy6z-sq*NvrTrZU}~PbFnA($? z3|QC3PExq9&13sn9Xly_5aoj_!8Zw-$PcAQnkBRR#nBhNO;T6J`k*4hxLgNIsLR*N z1ZPI<#1`(Ws}ptk2OCyB{Na|1AoxKStB-zhA$0jjBCBcmVrCP$95uwxl%+_0B6KN( z#B%U86v*bW^`%rE?dkqm)Lc&&-98bdp3d_~d9?6Qp3Y^=Q^jN6Q$cn8*G1)kd{uYK ze+GqH<;J!6(70pLH*OX-b!KIN8Z6lG1P^n;23vjC`SA~*Hunfd_YWpnzQq6#^ab3H zFHfb@U&SJi%17z~?Z@c`bih1AWt7I`p%**|t%6qp{fn?80Z!8@@Id_I{arSsZNP2^ z;$L*Us0M@bHjg%V507O*pQT@oSWcgwwaJn=Q5z>hBT-+~AK>#81ER_!;l5gnw{Y#D zUG%#mWG&u+OBe6hQW^`3=){NP?aZ!YgBfg3R`5gSPg5?1H? zjGw_T9cj0>XO)Bh!3ca}#&)_S0^vXlpj(3vu`lua`qw{li2ZD0kXi>uW79)21ZX?R zl{JJ;`g91O+Q2{BUugS)APMw9Zu@ZN@MKTZ@Rj0-f5+7dMc%bYeIax;Hk}qH57^BP zMG$ZoMRB(B6h%pqaNa#hvBL#@ySv%pBHFN$Xt)4}h&@3_n~8**a*uq=+*xqgm(AspAXO}8f0B+uG1Qv-m^UexBDF}Dx5&jAiroq9 znq>*!>Ui-JYv6aSBd|Jk-OHMfZ-RC~I;;P|K7tY5WNL4q#chj1@)m_V8zNOciCirmZ z@WW@9b@)1K&E%AxWgTGy61MyLUgPadf8ZYtx0>P;?4xb;LT?DzKnVDR`l%<{xaa5) zHxArpqD^NOLlW=ZR>P*qoyTeIt(=A)7f*gd+|~2F3dPsB+YDZxyD?zOgNgNio$ymU z)v-4QtZ<6gD0oUw@qE7Lpm&P~9u-dT;N=@qF(s&oWr^{K3a1PU1y2bop7*$-!YN*b z;4wX@xqBr%7kBJX0Tr=U5S3sQuVWmZ!YN)v@RXk7l_kPw>Ozpy7_b5=;x<84f{OU1 z=ky@KafDP!L_woU#0aT+j~kZ~Z&G-*o`bA8E+r6(5th7CQuP-S2F0a37|SI;UQ(hB zdaoc1ic5Jgnk28hh_;JCaVZZ*=6r4q%1fmp)p6WbAhaGK$ty3dIb+Pk*p~-mhUAqO z$q!O7#_DD;>I6f1X`3QfHx#$^@Mx60@={%q1`Ne*Js6Jk11>LVhY`{)#cc&bYhEaM z<)u6rqdi7pJs1^|cXW4w5ZQ){!*y4<;AchC*_jP>OVD zbpFL4%7N2!d5Wl;)qSms6aENOF8*9&unfZmF_UPD6ACBgOhQ2&RY>OCOq|enuzLc_ z`V7xN$=52I;P_QjGsmxfplz9O{Hh5AiaCBoaYE7r#R+38PI1C(Xu3&aQ2t8 zm-}0vjc>FP#?+ABDECX`W5lQdyq9vigxe>iWd?q ziWdrVR{HAl9ZzDl{rQtvH?(*X>qe;bjkq@Hk`k+tyLqmL_w*zdY$icn#03m1p_R6H z^h7PAmI~vX1uUQzjO!nvoO%mLwPR3AVfqF5D7I#_6vhp|^w+^CtVgk?!Wd%?v|uYWQVLW{tHWYXEc5wJ zTg$)kU&vRTPV3D6kSmlMH_@9%lHg-?blt=+A1UN);x^faVvr&r(~ONlE?VXDy;bb<-3MvM5{yB93020cF6ONvsse6F0q_j(!59ia zqHkaTa`66XwQFFu-heZ9A_o6h<}a_=l!vn*V|ZVMJyzgB-sZlLzRneR7&X$65?Mh zwYT65LNr*92C~Vzv?4~jydqW=BdWM8IEw4C=LDTI5Ed-YE8^bZL_R75Iq)?=;90&~ zE_kDu6)gXn?h67P({D#SA^WwXs19(w(; z)m{5-EG>^ay0Z_`Q~HDN`;(cH=s()VCbPpT`hzLKyX`>07r?i)XV~^AcO`wpC-x=7 zt5UXZ#ipTGL?)~=YPnCZlQi>o&WE1lp((T+=O3W^E_g22?m>qfgh(i#-AidUY_5KB z?Xl*kiFW4H6{2g= zRi(lyUS(Jim7pS4CdMNwoFYOTl6n^l%LN=2&UjX55Sh~$-*)|@dm;Ih+$u}$*Ii=+YfVGP=sK-EY8Z>rHwfrjIiWgUef-^6Zlo69*pIZS6<44F(?4y!Dy1a%S)u1 zfxf{T*E|^7Zz(UeAY;(R9PHU-V~!xJ^D+=FxGS~a((o2WGv zZVW@R=NP`=3*Rr6_Eys|+l;VI;o)S85JQY<;hm^+WVBMAHfoQnE$R=5! zhAJCX1oBidvuJD}+y8oWeSWii)@11u*%8~ zbU>A_vffV@QrOcj1kJE9C<=g@R{K?%a^J*PX>oue1t4$xUN>)i3sC_4UN~Mio3UN| z`zQ9d<|e?Onc2nPC1otsL7n6tGQ)7ZFBm@j&B)*{v!s%Rr+-G3te8i>;Cw2Td|cfm zzam$@57w8{a6MN#SJJwboR6$RB}{v^O)q<5F;p0J&`ZdO#$>{<%;WuFguLzTjG*ei3}g6{#-;ikdR@Ngp}c@VQNs zY6aW(778xKzY0Z_dmT}H@H(K_@NcGgJIqIsBBo5yIySj4Y2&*qKaG=DsJYa?5b7%T zi$wjIKLGVQp^g-hI$t(u!+O;kG`K(efvX9j4}vS#F#=BV|nS zN;Z>TP3Q=pGaTX^=%FsuTJ+A~Tt*@I@b3V;?k513+b;OTa~WK@9EspZ{sX|5 zZwGL>?Sg+T`c^Ir5&YzT25RO-l9m!xHt@kLv}O19Jwg!C zn9tlGfJw0nhWr4{A!>9sabW_8vsj8TC2@8*UPyQ7e9zLv;AWfTrgL)0ff+V9z)O)5e=^8du3p5W&4cpDTVnL&w^V(2Zgr z9oiqpT>N%ty1A`mus)meKvnPO9>8NV;qgZ|wMao68Mc`ed~|bdA1zW4>{{_s)H>%& z=uOPOZ}cB+##h_pdq*Z*PqPE;3&#VXP60ZJm^2kI!7jlQvvpRWw}`N!n5()3$Jsa| z<;}{e&$O{CVapL+slHI;yuYE&w&Mprr4*CQe@&qB+^K^|rzpm9DA&ofPOiiC+)?SI zTPM{zd5>FE0Ux@?z`r_wT?O-_d|2&6+yf@97hsH$%;4rfYFe7GiJ?DFPtyZ&>>vRw--z<9l=O)+tvz(6q zQyva5#V)cuCEUQXw9smtr9n~8VE7o^OoWr`APa*}Lb{2Vteo@8eZIbH`8WOxf-dY9 z%=5!4;FMZ>K*DJ2SZlO(>tKHt&98Cti8@SEF^?q`A|^s&ikFisVs4fhHl{45vqmP9 zn6j94UmUrGW|KqB+&8SCjk?EYB(J1jbS=3>SW`WGd%PL&XMb{KWc>)&T~dK2Wm{bhJG(knP15oAKScqbqU9Bngr&w|h3qRjYP zFXsqZ30;=<6^V+ew3)T+jCJc=XADn}Hd8bd<$$WGT;XiatGrDA8)!gytuN&?M&e8Q zG$--Dp$SRzVTpMOtrDa3&S;VNG+DD@$`V&R&k~1Ua3zkMpshSxMO2YP-B@H+DSW(Y z=&d82f#$Ulc0meiPfh;48Ee6}pbo>e+U75;wb_cOgq-e7h!~hV_77%R4d$8sg9lol znC|!a`vyNvJlOZC8G9dm9t%FtWn15yNpHXc{L@4WcacJ!;5JlTdfUULehW5J`*t*a zLNtsi)^}h^=tZt?MZ~Rd=wz%fEx-v57T{U-JvhJJoB>}oKl*KZh}pg&aESS`Z}7-G zA&o6&A?Q{sq7_qrr3#ya-tpfLqHlf&lyM{~1E;CUPl{BS#vK2qEKColn5q4OLFbr? z3oe{K`J(Bjpv)c$=Lg_BceCGxVf~MjgM-uS4<8Zx5klf>Ff6d2C>B)%&l1Fms!DT{ zzFax4S5a|R@Q#%iE>6Kmcm7ubhS!Pv@VNoC9(z;vD*+$1S0seLF~!RXVNF1r$D|Z4 zIE)6Zy0=lAI2X={pkl$x^@>b_bqPXu!LQ}oNyr4RPfc~_K)Q|1ojx6q?R?06pLUuE zgwBh*RxQ(iMW9ptPxsl+5} zp=k%D9hQ#p8cst(c>Ni~I}kc6?YM9_I@8~oDv$FH=YaTu-B}=y5hV@xV&lrA3G?@$ z)jp&4rAJ67P10#ap4ZN*P~p{oLVXyYgwcPh)|c~7=@hCuNjEmxZ|0l`odQURQgUp~ ztwOXb!~5Em;cva1elo6p!C?XiQ|TDqVLLW8x(y|_0h$-b)>KRt+sS3IsXE5m;Li-i z3Q3POn-wyq_hKQr_fjFz0i6CKVOE2I-m!z1FF8?f4|9j%Re|z2x_;ZRne-2`wAnhGCpX%Jq5j3Jz4tWJdo0~ z4+qv|3Am!`gES(Gz1Hn1iBNC+!I>)Pt2w4lc6s>72nSqK)kM zS*z=upi=2)&h$t78T{=!XI~VT`k9FIGvQBGOF&_G1?n%RpK)I1zTd^JU>P-k5d4@d zQ=U)FqDSGRl|W$h3H|KPi@z*VXiYb4NhvZ7X9WkEeU|tyKB*ays;sZ>S~_*#z%WI5 z9Z>3?sliPeo~x?3bVi#pDXh};-#vd{-}LpTW#+>r{y~-Rj;Jgixb)Q(Rg>loM~F>b z?->4vkM19lpFC|9=D+-^>$3T4rWIFDs-xF1Vi{g}uV1hlpB?XeV_M1l@IKF#pEmC~ zpz++$dk2p=Gw<^eXQxan1{%dTuBcyj%g6T@pMP52N}#clv3sxcu zLMzWqTxj)y5TZF{p_R)2+_mTojs2ka z*>F8P8-CVymT*`3Af8U>Z`Mx@&Incw>HYsY`xfx1ifn6Ix|5SmKw^S`1SEnEDu_Wq zP}F1y+6V)LhoYbm@evi22r7s`!b2NDAU-JG5J2Q91ds+q6MQy45L6UI8Ne9_z0Qnr zoVhyVSaYy?svcc`<*XS)wR~%wX4>yI;X3f(?4TjTxuqkh6Xm8cv5ys?+0Gv zI9%a>-H>*M1d_Jgi_+(tnGc0>LivN5)XGUq@Rz?|c%1*u(1@HL-5&7|DdX-=9i=J$ zP5QpBj`28oWYs;#)QRvS`7ht>%c}-WYu}~MlrNePTAI;GQYwBqr!ysHZ~76*^mnpd z^JM2y;6Fbc+8oT~3@#p?K9qls_x6yBg1%c4go~=>>DfWHHd`JIt*y&mX!0k8(t;eF zsZCAKZlxo;v2J{2mw(UkO`Q~4n$ub0i*%9F>*gyt-mc~^AB8>h_IK&k*^aA0!^ZTU zOhI?rdI_D%U!LAK#XHLHhs?IMfhDG9YKXpW#tr7rkB8a?xers>hz7u(OvfoSfLp&O z88UmP_Y2iGY!AZ^rjj8CWitOA&N8ERG)yy@(?YB2kDMi6xIBZtj*mBJ1-GZ?ba66y zIt@BDH~IQzhBwH3(h`YeYWIX&8a^{HIpv|Q!Fhb67nq&e)jU-mS{b~OBdK^IZDefj z^iU&DUI*r<4G(#D(U%uuwKGz$445WoQbR$0Z7LU}6$Te2eC(Y|K6;Rk*s1%yS5jil zp9@t6vUgJhr4PpurG$tw!4ysKhKC|Pr{7z3TKlk97-S<;^^A9e`Nf2Wj<{NUc-Kf7 zzgEg@Y%aKMM76x-^A zrkyvCrhSRcn!cP8dum%K7C-}QI0AX#^5W#PDq-m?%8ShjA9w5|AN|-z=BYHwi<(zL zRRJ`Z@^8}W_!xMu=W+`^b|ri~Q%yelbJUujLsDXA-VW^vNULP&-Sx7RUrUyL&!))q z*WV>i1C!CT`G}+81|Cr}Gw#>a-a(%uWF{OTq<8hN_uLX@HFT<@-#H*Y1`k}6E}#b zntopI;63#wh+i9wt9ioF^#3MDH?t#}>b|M5aW<42K!d?7M|@5&IdFo#;DUsc?PsN| z4Bo;{a)0y&q#AE%Ml*AMlkh*X_fVs6Kk%3&x#aVU`GQ|;2W(^Z-{N&ND<-6#XBN$& zpIxS(W;@qRJ?%9%-5aN57Tzjuqa&n@+%Bb;Pa#ov@d7EMy`+rvmeRYy;Snm$sncF| zkUhz&$J&rpkF|l7#U0412P~@|Fjf}#E2~~$ta`v$)*Ozkdcd;k0b^Nnl(Omp%c=*A zzBzbV^`HAzJ=YC7=RwJ;2QI4~FgoY4%BmL_+Z|wZjw!%)2UrFU7@I-|w#E{=Wpe*gC07m_01x+T2bdI@>!m-I&4Ln!uY9(&_f@mAI; ztuW-3)JtD}E$O>0;qIxf<$|s&(~Z|;`2>)Aw9`| zfx;>b1d*03Dc5u=yCT_~@JaODA-mvWNtv7G{TITI&!rP5^khh`i zjduE7DX}&8rmPEO@0DewS4@uy?3k|JKBt&SIK^^hBNONszQL6B_0Bi*w|W!_vI>!_SSZ|qtU`gY3ISuC zaKEw&0m~``jCI1{$SMRZs}L~O2}dcb@VIXka$T;y9KEbU;Iaw72}eK7CPyXgNN(!}R;18v-79qyBfbDK4oIZ`!Y4h~<&Kd973qPC^nf8A$1lCI_LOB zEWjcbV06yI60rb_Sb)(tk5)D)fgu)P^o>ctn*+cyaKO;A!CogGUSChPs->5DI?EF={@K0=N)bw zzS!YQsg#Auo!SRSz0z)gn5QD=M ztpJNwfYCWeFIoW>tpGy|9+YS$Fth@UzIm*2F##-E0Y=}L0=$s}ECUA&DZ>dVZ~Z+< zxs06Ek@B^=QpTCUQr20P*t?TTvW;(9Zrc_LnpNMX6cw%@V_uu9r1Vxx8DAr1^aY2% z=Poh0$NVLZUVFI}Wr@i3N9yrwFjs-6PF5&}+ zd>oL74_L$p4EZ=t5no`44;a03_#!@F5g#x*=TV9HfJJ=3=$i*CHvq*{Q}MYj*Az?w z&Ru}Z&;cVi+JndkZjZGk1y~<90IlvU!siK_MbcBxgs0DYkf&MfiIR%m^^7{uFc|Arz}d;Ia#-VY zgzQW@x<273+?yOd!H)3eKlV$%)JB2qfz&|xrEewTOpxpxQ!hLDwPYvTn80Z|2V9WF z?CQWCl$ zE4T;QjsQzW0!CJF$C8nNB_jbNBRL+)NP&@&fRT|Lreq{w$wSE1S}Z|7=81g zBqQ&jnr0-|B_nyTa+d>KG7>O4#~k1YRA3AoFcS78{LD_h(#$MQT^?M-UC1fk$&yrh zKfw)>t3DBts}K>n`mOWP)9e|Ox+u7WeaKshCKFQW&a;Rbe2L*PK`wDVpUB!|Vz3Q; zNI=`xQn8LMmol7nl zgVJEG`I>$abHrn*xk2vH?NgXL$qLLJgyTpAj{=vp01o9iLP-mOkrsfFHLDrMJs@C7 z3&0SL$0KP0SkeM8I_F_ZT8yTerUlpKoeB?M(gL`o1z>cJSwUI|jI;oZwD^&&=?3(Z z;3oF&S91_G_|%LtK`v}QHL-Oh)npr!_Z+FYMXbH8QpUGQ8Qm^rWT(S-IXvd@Jq~|` zN?y|0LG~nSUOtsRu$%CFYLn2!`jVnSBt5y1B;{_Mq!_nInw%C6$4LrYBn1vpI82dL zU`PrWqHy#gDPWNlFcN|XC6WRbNdZF>9;--tC)HF^uFE|#&w)q^TqFgI&M`HRRA5L7 z7?S?V)_6~`_XXO%U*#?mm!_0h>n*990%(;hiZ{02rp>SAOvxLfp1$2io?b(M{HfA+ zRjG6qhu3lz=ktL*13qvTcMki={5$PCIs0heso`iO%O<|Td&XdD@MjqlWY6&V#GV14 zc(=+nrs+GBWv`31_okHbx1@}|BW2`(!{2lG`wlkR`PMOKJf|YVk-UwE#LMKuN8;sHUmKbxAEAxTF?vNiD$W9P@$H5*Vok7^#($5OecU67wVO!Y}3!YVe8a zF+uJO9;laO{95h|*oL=^mZs*b)bhfQ#YOapl#$P*^o~gx|J>nUIQ)deFQ?F`>v$fA zh~t0uB#P3$(I&LM{+59T-ZHuexig>m5nr@OXGBZl(=RBWN$nWqm|O;6nj`}-P0)yA zmAeSQk^q3A5f4EUKwu;QVB`mnOcDUFBmiJY!~>QD04xar7=80RNCMnVL`?v$o6NtZ zc5KKnZfgOH{y-t{MGVtwJ;FSemhK+u2M>d>)xV_f48Rzlt>MhkH%nNcm?hjOtRm~@ z3p{x7ea>g-bH0VKM`njE2!tYCxhw1*ai1fsH8{fVv5`ro>EbE5i+Qn(EN`PP9vqH8 zSTD!;wQOWN*-hoS{}E8ELu+rZxRHI#=K{jR1tNKkT^!D>AIY_*wGG`^kspkGf3bIw zFCxs4&mCqc8BrXg?^wqjK7Co-#oOX@gAZSPZZJPdHy^Q^yzX_}&>N7sv4Qy-4L-v3 zz9%9lgMRGKuVrq&;97C7`YuuoT_`%lF6!%*`NF|xsy<(sq@=H}*;hq>=d0kmwBMzg zZ4*N+%ykv1|HvLnN$A@hq6N&x35d@l<_R9L)w2zsfGqDtWHR=8OBugj%4kH&$c+x~ z=kVV-e1OA?s5F(gdQFkUI9QIz62KmZC4dFQ9k|5}ToyNQtX}R|@F;Lu-N3PYIUrfx z0%LUp#`5JjWpx9V)eRWEbNI5l0n6$JjLvyfvbyi_t!}Q%_Rgb~>?D<}0Ap7RJ(nas&81ZR9E!F&60>73^GTZQ% zc9uI;yb^-=;(D)?(fg&0jFr-R(Bb18{*c2bIK2MXb?&BixjZiJTH{@1u2}0W#R5FM)}sYDtgedQBkV^$z4gh6 z-8d;D8_DMY$8|=DCH=Wtd;ZL0#Iko%ggh!`#x716aIXqx&1V2#C zzY*|j*$CK%_i(-XM&}X4$+JL8?-?oM&q^76-r>gKiygj%N=_cR`XW0pk&+#lNGu=r zFKZXDqz7OuAMRGt<9=Uya9!3eha+njxa0?5tX+;$)~>)v5Wwi1gO{}nSTY1KI_EJ- zh5(if0gMFVp~|Wd7%2i6ePaeNaKJKfz{sGUtlR#x)4G{yfAdyi<&$`{@^7sxTXY$B zBP-vh8&-Z&H#U-$U-N5X<$D9E58lO#q>K)hGBQ+3?`DS&bNH$ONnXL7WA$PX zA`b?EDc}x7o-saoxNc6JmDaH#!&tq5MIE43L5E`X3JP(6mZvxrs~4zf0~9@T=%Ni^ z(FSmC*coH>3JPh&INhO82B;__w*2)@j2>eKEMo=?;jZVNNw_0Cy5u_)yf5eB?yX+?SqO@sd!QWGx z1P+UvBYeVMi}LCR7v=Xo<9gI_g?9)( zPsq%qrxWa{yk~t+$+uCf3hTJT+bEwq%v#dj8Fp87gL6mU@j9Mj#(f!T&F{(v#XcF3 zc7e>kywCLc!L-2--rfDceohUl9~RyOoo7~^3FXAL-J14@PfG8{db7o^Www4{XPLJ< zXR-&6yDLn4@bJ2eIdUH}Wik8QVanhRZ-Lmz6x^G(yce-~{f?C~`k<7NQYpRh4xixg zM;t!U;g3GR03RspZ zU@TRRQkE)US*n1sPjc|GjS7sl3K)I!nB?9Muq;-<=$nTs8x&w!tboxsW&i_!z&CKN z%O}1mH&KliVK-C#SlUXg=;Fy~V?Eyr_UVLNRM~qsOxXT)mb0aNbheUzK3n7;Y$^YI zw&zzk+x-=3wEK^s&`5Iqs4X&$$A^pd-|M9xzm|(O+sH?4qn4%Jq)9WKEXh-Jrj(H< zr1YXv#%DWxj>DgJ_u1=O zvL`F##p&OU^1pED6)XEGbWcj`(wekQzHKP#^NoCjZ(LEjv+wN)NXUs>>ZLx#c|b|JRmTZ+UkWXOmUYO$1&rBZs!rHrp|_$r65cKBK<&EXH-E`$rd z%q}tpvx|*@{mV82SW*Tsgyn8!8v!gi0~i|tM6L31{e zum7I>M`9=OHjyb`hBiwXeM!p5HYvUB4&UMMmmMCXQf?zRa1FZwCP1Xc1mykfRvmT& zprS0$z`y*vfuIl;=;2>&Zv8!*=C_iTMQKitzi-!8l;_!Pa2 zPs;dwDWerqMxJ%}^A2C= z@I?+^LZvJ=_9Q!@i~{mt6qp0R3EO(PRL=3 zKEOpE!04Q#7kvbVK7i3V4@&d_EcyUO=R8)q1OOI&07HCC0rFB{3>+}z`zKqIe4hlD zQH_=BpBnq`NSJ<(x|kY#`gu%{yRQGPxAF38x$9yZ)^Azia{Kk5!UVU}ysvePar6QwLZE4j9q}`JMV?lR|-4wt#4bZjI`ucm~S-d6G9RY@7&E@gD5l#yKy z-|g@{4u8eruTm*Xk3ES%7={RhVPF!t0}<$9s;NL+m$zZuu?PfQ1Of~NI35v5Ul z3UHVr5MU7qFgoYxMIgW;5MU_4gA#!RhCqPPH;+{^6R-#b7=2?3aApEn1`fEOh7MC% zzWtMEAD?4pZa-Eb;)x{B!gokHC-zF#6^}i9CQs9>D0E$0~UVSmXhWzA*)Om;5LZb>Li= zcgf8Y%kSZZwEPY+Dbw)syOXLu>7oqDh0iA)E__Mp*hW_0wn|!kABhX^6Di|Iq>O$h zW#pK{k30Meho5lxNh)Rau_w_7!w`Ki3QPibAo>UleE?$;xL?r+u;>FA0({1B1;1ql zEcyV3034<0BQW# zaQXJ|rJ+cKzZX%pJ-oRh|LjH)21qlM{6@1A9+|{HQJep8N?H(hc}oKFP=n?x)_n#{ERCx7|Im z=paSOV`mGGTxHPefCNH*njQ+xAfb$BlQY<$;ESIMlN1Tw8TRYWw#V@T%3{dAq)zrVh2Sni|z% zwL1LwmV`rXtL8R#c-x2oPhT~cm*##Gy)-xAZ>#3EBPYP);J`a_LU|7cw6U5Sm3YTY z!$iUYWgIitT^n_lXuIzJXiL~)X2}O;+MIeLJh+i&(;yG~gL%J8>u|e_>khW&WTj3rdB%i5$D|~;*L#7wM z9lkT$J#a(sTLUAJ;i|`8EH? zzn`sjPCu>l^O&^WJW)TZK~AFHpg|j7y`8Ib61MlX(+q?QI#2`RGyi@soFCl5i=p8C zaMwno?|NXuT@N)FgVGfLG0?;0H>028K6xc{H&kA zHx+p~!IJ-Y)X(4x^(Vi*f4XP>{3>O{O?Z?`lX*D2ud8Dup84~OFf|TuNGxv{)R2~w znf%P3=TE0E&G@72``$OaMbpOE+Z+s}zmw~l6Hm|ilhD**beQ?)!=Xj#{4>(@m`^+g zC^M9PgIU!uy|LLiF?4$fQQ|pe7e$=4dP8RvPE{%KrvBLQ#)T6@Me?*9ayOJc zEm`;@J>nGM(L;5z8#!Omp|H6mC4FhIJwMPV@Xv5>(>OIfHH1x69_n*)IXz-XE-9($ z9dg{XB&NwtC?*(Er_>C<(}vFaD7>Uq{974xq?GP-C|qy6ujIMvYA*9K-pO_}9bNQ0 zHHWm4>W|^IQme?wXqV&oYVQq{s3ok5&xnipDjJyHHxxm?xxa?jxN2$Rj1D=@ zLOsNb!~-HR0|fu1n05G!wY0IRafh10)5p> zWykb(InGF(M23nJIOkZh&F{WcCl%MIlT+8IlO8k3i8E3s-p%3!5s8zIzgH)v{nbh4 zWOY*XS-4$}Gg2q|MOP{|EJw$$6q))=CX|;*8XZce^-2NHQr~zSc>p zy)xmXF-;2GVN#rtI*E@ICx}R#Jbgx;9PXh`N;y;D1e4;7)Je2hoFF2T_jP)XdHCCK z)R!nQMWUdFIdMknBr;l@AR>0s%G~r__(^esM1d(11+^A!Y3(>8b>iLS=7gQg#CG@# zO{_i#tZyg|TVx7qKer<<&Pu(+?-nlz$z{s-Di1ORrpOejJxZD4jMPcAM4TWbmnpUC z1er29nJK7ZR-Bc3iQFe%5R%K3zmb>3BhfbFGSYLLxw`Yl zh&u!)?l%9u&iq8g9VZQH{Dia|XQf`^W8M6)cX(MiH<(X{3cQ^CS33;eh3yXb{*d!dvu@a@rYyPXQzMMkiN!Z9?uJUX54^`mKFJp%=cf>a}$19mf;P> z%?!mdmFAr9^>F#7*ZQC5?kp0wYVKA+?{MVCUGDk$o?9;ewOQ#|*QjeqNiNluN~L!p zei!-V0{51tAUpm1w7VMIML*Zb`eS-$W~XNc@sgegxx)+`7XG0k|C|fkp3^>m?A6n% z=k{A;XZKlUrxZMA$9A7#Z|OAFUfH@=b=&Mq%g!;iC(gc_-t~9Cq^ee1E$?3@VvZMdf4u{{{y@I&Ufs_5jA$@pj~$U z^)K2-y3Mmi?e4Z$w!Fc1YgK5w=k~U(&fz}VjN-UIe)_ciWZqZyllfoSkLR7n>%()o zuis-_+)tdw!W!&<_!GPD!9#Xe$$NGy&Cv@t@3V{gZM8G6U1sm>Fxg(4GthQv*~@lo z-OFBb-W4=QIVGKQugqt^M=JhcKYd32j!^l@Gt}RL)Aplz)Ylvu(~~rBGmhJLrXI6z zO#Bpc#v1S7@eHrAD~evWPZzGUef`#UJ^#11aatxl@4I=)vXb@H z+|Osv{n38*y!%`DNBgPygFUj4#`qldx8RihkotT7i7)MeavIlU9oL6;*FEprmqxx} z*9_fjpX;;PPU*4G4!iIHdu8+MZRZyGwo6WdJ+DbF&0X`7m18zmb3aEHer=B#`dj?9 zJ-U?smQ%kgsL!P|K6Bb0t~hBAK1F)X)PdZ z^d*z+)h+tjyk^(g&gbRZ-!#jkIc#3S^M!sE{mFj5g#MP(-)j0>_a}R7J@xs*AMKG9 zU)hfq(%9zF*q$WK%8p^})QqRR9&-@$xZ&1nyL`Y-`&7XiJLa;Pw&1+M_VT9J*}Uf0 z*^AD-ocp?m$8^k)@5S`D>`(T1CH<{GW53u+e>(}#>u#Vx|&VHnoh%dJUJ|$!!5o!9N&44 z?bY&Tds+6?_OfPI+ZJb^&q+VJ+eJO{k1hIIrjZko`a4ERa%=@9A^m-}jE1y`68{-m z)N^G~^M?DjE;34vmuVB!+wJkPs_>>MA?rfjDjmv`H@CVggW#((UxJ#IPMmr=Gy^H*VIbvd`tc5Hf;)2PjG z9?a1tZsoFn$`4M+PoE|K6||aoXQCaKclP(D(~6?2#hZ`P&Q$u5-E-duwu)BoI$FJp z`fjylS1q!GFSyrsYD(HPyP5}a@vt%d$CvS}@V3Cor;d3$!CnflIr_l^OMr!c( z`hZXPA$#nC>(^uXTzlR?+wt71Y)0zYwAHmA-1Rp-^2ZFONung;?dHfr4w@$AX$qPq zg)c?#mHUFG%Ns5aqu;UXX=0Z4-%i{1a(l}~7AX)~X$JCru>&y;IU;#$CRx-6|6vfIw|-x&)~%ZF1$yQ`Fmim^ z@qHBLOEjlTX+Gys0?wjbpXPSMhYnlphIhP$tL}4sH`_@)Dr}_faC=d9C%L2Oa%CRH zb^AkQM|RM}t)y*W0VzJ6)Ohr;eWmoEt-AYdyW#d~yQHYf(($G3eZkObQ`|UhNV_f_ zuFSuy|Cq8xcbn=3qnB6je&jv7?Y_6{)X2Q*@z>3)ZqwwV{8+)TFrC`d?e5k_zbk0a zU>M(9^FLSO)57^?)S)o_eql>9a7f@BbKVEx=}n`P3loQ)i};3)Uz@5A!ka=ktj8&1 z>X5r8PAGWjE>qDo)TtuBi5xMOJ(y0l3)5Q#Z~DvkxMgc5j<5PKd}($~-5c}We1gcg zbr+bG#q@OYyR*{$r-;m^?|G-wXE@D5Uh*m7uZtJ&Z7JjK#L)YhPYn4f;n|LnI0}1{ zJ@M^hog*;sF>w%GC1qr_uVi{xbM3|Sgm6dGd;R!i^;Z7~EP^|7G8`R}U~mL>`58I_ z10p9!Y)-er>MlA(ULzXc5g6VOiWwg$poVw7j<5ESX<{#7(V>z5En5_3@}>{f@=o-o z&snGkuUtGJ5xA`&ObBQP91!4#Q- z8s@|qsgw8uae|2IAAuoJV2VUR4Rhj*)JgOiae|2IAAuoJ#FP^SwTlZW+nkX)i99Dx z5Rpu5y(2JhYBEz$O}n1lI5TzQEp)TO?p>xN&cKi<>Sb*ZHJmOwBXtrt;si0dOi7%9 zAydQ&X9{YV6=$SQqKm}|B668h_Xw;6wwx*$8f`@G2yAc1^zl4;H;4{y{`WI5BoN#nfl#}50L{0vSAX#pZmKvu3G4su3@i?p zv>m!BEMHE$p>w9r^=g2i>mGsilZnSs5Ipe_T9B_Erg$*@mI8Z{aOxd^dDA$HunoH^ zpPcdK#&_ye_XI2#Ct!TxB8d_gGIz=IUe}&d5}$T0Y2>XHcJxI?=`!Sg;lefR0OKz> zn10h~dN7~=kIo{4X2B!$agv_E?Fiwr${%s{%wYrn6^s4TYxF1MEt^4Snu$-h=r=Qd z3?c|j3;M%nja^doU@dnD9hYNP_OGCXmKuGE732}hnIDfG-hF3&OS(ojNatF5o8)zT zvy^nZg8#hlkUWP%vWO@~D68*EbY}H(qj{^Y)+TemrPC_iGs(s<%gax`#Ux z3PJxvF0q;}*Yqw(v&nxn$ESO8XM@u{b**<|30F=Ny}|Ok$R`(a--pw^)CQ>yyorg^ zy>=VubPq56r+cx1=cW&7+-OMe1`TTX-ZhSS`d!BSz@IDfx|&`6GyW80xkZS512WQr zCqcP8qpSIKK*o)xEEH(6urxgc@-qU#kjHWHl;i{@)+re?n(7GoTM&FO9p@37i>GD`Z-pw! zp-|)kngn_c6H_@gV{j{NQp%ZJp@^5vX++T`r9>SCrly=J+N6~BjsjEqZXHpyNhxs_ zgkpiIDJ~<5HYo*~5e25^Fi}DxW9j1!vqE5-g7SO`pvcbd8p^Tjh+UI;($XZA0mwOLz{cSR%bW7>&mpeSP%i!+AP zzaru`Q@bRiWzz`1XCt^y8OvRo@fAHi3Ge6fOjb_DyR<6U$sHVA-tvrg?Oe;hC@nZM zy!VAcRs0t%<&Y;W&)6Ag=b!}jpmU~9zyIo|&tpX^nd+bfbrgBwew_<%@tPk#k6m2J zR0k!f92!&AJLfPc82;JbqhszY;DGlKu993SeLQ$gCHX5GojIrvqR|W z$-vA;^w*gF&ZfU6^p_b6%sl6Br$ZhV{m*x2-5G?l;(M}YTpEfV;hCk`&o>u8n>E0! z3T5P&%XcFK|6H~k@t7R)~QpzGn5ig6GqD@MPI|@wAVWw!4Qhst2n3}XoqG*#++Ao*kz|<5l zMVpi|%u!%!CNV{uloE9mn3^i4Xp>TQI|@wAH%!qcrJQjTn3~+xMA0UtG+!a%!qnWt z6m3#U#8F^sDwv{8N}1>=Ff|95qD@L!?U9I|@wA2Bv6}Qc4^Jrsfn=v`Hz890jJP#ag0hlTzZ20#mu&Zc-fdT4}rTesVn6 zo7wD2o0QUil}j3?n*B`CCZ!B>6quTynW9Zfi8=~QP2LMc(I%zrb`+SJdzqq5N;%^w zFg2A#xlo&w(!A0ojiY{aXyA1XOi@N4tCd1ZjW{Y?n9Oz5p*AUHqNBjn^kIrNDP_H* zz|@p8MVpjz)KOq+_Ao`8l;W*+$-`7r%M@)=N_R(rsk!(?qG*#+N*o2IrkE+(q?ARD z0#mb?DcYozxTC<-9A=6(Ddi_efvHJbPZVuZO8Yf3BAA*2rf8E=hB*pM%_OF1lTxCN z0#j4P6m3$SR zjsjDYxrHd&q?Cz{0#nn6DcYoz^^O8lQ_d7^Qp!LszQhst2HEm#jz1HpG z3MsYy1{oP#n1Zd;p*AUHn4`edOk#>QDJAMCFf~<7(I%zrb`+SJZvXCrh+Njq?Cz{0#kE5v`H!J9R;SQ zoGIF*l%tLUQ?rLD+N2ckC6_NuHMLC9CZ%+D6quTeUnYt+DW$|wU}}n)qD@L!TYauk@Fv|U8eCZ)9BDkFlaDPW2=DP@?Wz|>4)iZ&@F>L@TZ zRZP()rR;VTn3`{xqD@LU<0vpSxiO+>lTw;*bNRwla|=_nNhuLWfvKrriZ&@_qNBjn z9AJtzDP_H*z|;hG6GfYpa@0{^YI-n5o0Q^JNw_dIr9^3`O-kwRC~Er4KmU2H8Mq}Y zyOko!EOAVDFsH~_Yi&}>B1aKZbNiCexh8*ARv!5vKv`Hy?#-OIZ{_^;>X4OkHJVlhLrx5U9^7dx6Ov(THxdU$ueR9y= Mtk|Hv*-xzcAM^%$p8x;= diff --git a/samples/src/sample/atriasoft/ewol/simpleWindowsWithCheckBox/Appl.java b/samples/src/sample/atriasoft/ewol/simpleWindowsWithCheckBox/Appl.java new file mode 100644 index 0000000..e23b8ef --- /dev/null +++ b/samples/src/sample/atriasoft/ewol/simpleWindowsWithCheckBox/Appl.java @@ -0,0 +1,80 @@ +package sample.atriasoft.ewol.simpleWindowsWithCheckBox; + +import org.atriasoft.etk.Configs; +import org.atriasoft.etk.math.Vector2f; +import org.atriasoft.ewol.context.EwolApplication; +import org.atriasoft.ewol.context.EwolContext; + +public class Appl implements EwolApplication { + + //! [ewol_sample_HW_main_application] + private void localCreate(final EwolContext context) { + //! [ewol_sample_HW_main_parse_arguments] + // parse all the argument of the application + for (int iii = 0; iii < context.getCmd().size(); iii++) { + String tmpppp = context.getCmd().get(iii); + if (tmpppp == "-h" || tmpppp == "--help") { + Log.print(" -h/--help display this help"); + System.exit(0); + } + } + //! [ewol_sample_HW_main_parse_arguments] + //! [ewol_sample_HW_main_set_windows_size] + // TODO : Remove this: Move if in the windows properties + context.setSize(new Vector2f(800, 600)); + //! [ewol_sample_HW_main_set_windows_size] + //! [ewol_sample_HW_main_set_font_property] + // select font preference of der with a basic application size + Configs.getConfigFonts().set("FreeSherif", 12); + //! [ewol_sample_HW_main_set_font_property] + //! [ewol_sample_HW_main_set_windows] + // Create the windows + MainWindows basicWindows = new MainWindows(); + // configure the ewol context to use the new windows + context.setWindows(basicWindows); + //! [ewol_sample_HW_main_set_windows] + } + + @Override + public void onCreate(final EwolContext context) { + Log.info("Application onCreate: [BEGIN]"); + localCreate(context); + Log.info("Application onCreate: [ END ]"); + } + + @Override + public void onDestroy(final EwolContext context) { + Log.info("Application onDestroy: [BEGIN]"); + + Log.info("Application onDestroy: [ END ]"); + } + + @Override + public void onPause(final EwolContext context) { + Log.info("Application onPause: [BEGIN]"); + + Log.info("Application onPause: [ END ]"); + } + + @Override + public void onResume(final EwolContext context) { + Log.info("Application onResume: [BEGIN]"); + + Log.info("Application onResume: [ END ]"); + } + + @Override + public void onStart(final EwolContext context) { + Log.info("Application onStart: [BEGIN]"); + + Log.info("Application onStart: [ END ]"); + } + + @Override + public void onStop(final EwolContext context) { + Log.info("Application onStop: [BEGIN]"); + + Log.info("Application onStop: [ END ]"); + } + +} \ No newline at end of file diff --git a/samples/src/sample/atriasoft/ewol/simpleWindowsWithCheckBox/Log.java b/samples/src/sample/atriasoft/ewol/simpleWindowsWithCheckBox/Log.java new file mode 100644 index 0000000..5921c2e --- /dev/null +++ b/samples/src/sample/atriasoft/ewol/simpleWindowsWithCheckBox/Log.java @@ -0,0 +1,39 @@ +package sample.atriasoft.ewol.simpleWindowsWithCheckBox; + +public class Log { + private static final String LIBNAME = "LoxelEngine"; + + public static void critical(final String data) { + System.out.println("[C] " + Log.LIBNAME + " | " + data); + } + + public static void debug(final String data) { + System.out.println("[D] " + Log.LIBNAME + " | " + data); + } + + public static void error(final String data) { + System.out.println("[E] " + Log.LIBNAME + " | " + data); + } + + public static void info(final String data) { + System.out.println("[I] " + Log.LIBNAME + " | " + data); + } + + public static void print(final String data) { + System.out.println(data); + } + + public static void todo(final String data) { + System.out.println("[TODO] " + Log.LIBNAME + " | " + data); + } + + public static void verbose(final String data) { + System.out.println("[V] " + Log.LIBNAME + " | " + data); + } + + public static void warning(final String data) { + System.out.println("[W] " + Log.LIBNAME + " | " + data); + } + + private Log() {} +} diff --git a/samples/src/sample/atriasoft/ewol/simpleWindowsWithCheckBox/MainWindows.java b/samples/src/sample/atriasoft/ewol/simpleWindowsWithCheckBox/MainWindows.java new file mode 100644 index 0000000..44739ac --- /dev/null +++ b/samples/src/sample/atriasoft/ewol/simpleWindowsWithCheckBox/MainWindows.java @@ -0,0 +1,220 @@ +package sample.atriasoft.ewol.simpleWindowsWithCheckBox; + +import org.atriasoft.etk.Color; +import org.atriasoft.etk.Dimension; +import org.atriasoft.etk.Distance; +import org.atriasoft.etk.math.Vector2b; +import org.atriasoft.etk.math.Vector2f; +import org.atriasoft.ewol.Gravity; +import org.atriasoft.ewol.widget.Button; +import org.atriasoft.ewol.widget.CheckBox; +import org.atriasoft.ewol.widget.Sizer; +import org.atriasoft.ewol.widget.Sizer.DisplayMode; +import org.atriasoft.ewol.widget.Spacer; +import org.atriasoft.ewol.widget.Windows; + +public class MainWindows extends Windows { + CheckBox testWidget; + Button buttonExpandX; + Button buttonExpandY; + Button buttonFillX; + Button buttonFillY; + Button buttonGravity; + Button buttonAspectRatio; + public MainWindows() { + //! [ewol_sample_HW_windows_title] + setPropertyTitle("Simple CheckBox"); + + Sizer sizerMain = new Sizer(DisplayMode.modeVert); + sizerMain.setPropertyExpand(new Vector2b(true, true)); + sizerMain.setPropertyFill(new Vector2b(true, true)); + setSubWidget(sizerMain); + + Sizer sizerHori1 = new Sizer(DisplayMode.modeHori); + sizerHori1.setPropertyExpand(new Vector2b(true, false)); + sizerHori1.setPropertyLockExpand(new Vector2b(true, true)); + sizerHori1.setPropertyFill(new Vector2b(true, true)); + sizerMain.subWidgetAdd(sizerHori1); + + { + Spacer simpleSpacer = new Spacer(); + simpleSpacer.setPropertyMinSize(new Dimension(new Vector2f(100, 100), Distance.PIXEL)); + simpleSpacer.setPropertyColor(Color.ALICE_BLUE); + simpleSpacer.setPropertyExpand(new Vector2b(true, false)); + simpleSpacer.setPropertyFill(new Vector2b(true, true)); + simpleSpacer.setPropertyMinSize(new Dimension(new Vector2f(10, 10), Distance.PIXEL)); + sizerMain.subWidgetAdd(simpleSpacer); + } + + Sizer sizerHori2 = new Sizer(DisplayMode.modeHori); + sizerHori2.setPropertyExpand(new Vector2b(true, true)); + sizerHori2.setPropertyFill(new Vector2b(true, true)); + sizerMain.subWidgetAdd(sizerHori2); + + { + Spacer simpleSpacer = new Spacer(); + simpleSpacer.setPropertyColor(Color.DARK_GREEN); + simpleSpacer.setPropertyExpand(new Vector2b(true, false)); + simpleSpacer.setPropertyFill(new Vector2b(true, true)); + simpleSpacer.setPropertyMinSize(new Dimension(new Vector2f(10, 10), Distance.PIXEL)); + sizerMain.subWidgetAdd(simpleSpacer); + } + { + Spacer simpleSpacer = new Spacer(); + simpleSpacer.setPropertyColor(Color.CHOCOLATE); + simpleSpacer.setPropertyExpand(new Vector2b(false, true)); + simpleSpacer.setPropertyFill(new Vector2b(true, true)); + simpleSpacer.setPropertyMinSize(new Dimension(new Vector2f(10, 10), Distance.PIXEL)); + sizerHori2.subWidgetAdd(simpleSpacer); + } + this.testWidget = new CheckBox(); + //this.testWidget.setPropertySource(new Uri("DATA", "mireA.png")); + this.testWidget.setPropertyExpand(new Vector2b(true, true)); + this.testWidget.setPropertyFill(new Vector2b(true, true)); + sizerHori2.subWidgetAdd(this.testWidget); + { + Spacer simpleSpacer = new Spacer(); + simpleSpacer.setPropertyColor(Color.GREEN_YELLOW); + simpleSpacer.setPropertyExpand(new Vector2b(false, true)); + simpleSpacer.setPropertyFill(new Vector2b(true, true)); + simpleSpacer.setPropertyMinSize(new Dimension(new Vector2f(10, 10), Distance.PIXEL)); + sizerHori2.subWidgetAdd(simpleSpacer); + } + + { + Spacer simpleSpacer = new Spacer(); + simpleSpacer.setPropertyColor(Color.PINK); + simpleSpacer.setPropertyExpand(new Vector2b(true, true)); + simpleSpacer.setPropertyFill(new Vector2b(true, true)); + simpleSpacer.setPropertyMinSize(new Dimension(new Vector2f(30, 30), Distance.PIXEL)); + sizerHori1.subWidgetAdd(simpleSpacer); + } + { + this.buttonExpandX = new Button(); + this.buttonExpandX.setPropertyValue("un-expand X"); + this.buttonExpandX.setPropertyExpand(new Vector2b(false, false)); + this.buttonExpandX.setPropertyFill(new Vector2b(false, false)); + this.buttonExpandX.setPropertyMinSize(new Dimension(new Vector2f(10, 10), Distance.PIXEL)); + sizerHori1.subWidgetAdd(this.buttonExpandX); + this.buttonExpandX.signalClick.connectAuto(this, MainWindows::eventButtonExpandX); + } + { + this.buttonExpandY = new Button(); + this.buttonExpandY.setPropertyValue("un-expand Y"); + this.buttonExpandY.setPropertyExpand(new Vector2b(false, false)); + this.buttonExpandY.setPropertyFill(new Vector2b(false, false)); + this.buttonExpandY.setPropertyMinSize(new Dimension(new Vector2f(10, 10), Distance.PIXEL)); + sizerHori1.subWidgetAdd(this.buttonExpandY); + this.buttonExpandY.signalClick.connectAuto(this, MainWindows::eventButtonExpandY); + } + { + this.buttonFillX = new Button(); + this.buttonFillX.setPropertyValue("un-fill X"); + this.buttonFillX.setPropertyExpand(new Vector2b(false, false)); + this.buttonFillX.setPropertyFill(new Vector2b(false, false)); + this.buttonFillX.setPropertyMinSize(new Dimension(new Vector2f(10, 10), Distance.PIXEL)); + sizerHori1.subWidgetAdd(this.buttonFillX); + this.buttonFillX.signalClick.connectAuto(this, MainWindows::eventButtonFillX); + } + { + this.buttonFillY = new Button(); + this.buttonFillY.setPropertyValue("un-fill Y"); + this.buttonFillY.setPropertyExpand(new Vector2b(false, false)); + this.buttonFillY.setPropertyFill(new Vector2b(false, false)); + this.buttonFillY.setPropertyMinSize(new Dimension(new Vector2f(10, 10), Distance.PIXEL)); + sizerHori1.subWidgetAdd(this.buttonFillY); + this.buttonFillY.signalClick.connectAuto(this, MainWindows::eventButtonFillY); + } + { + Button button = new Button(); + button.setPropertyValue("Change image"); + button.setPropertyExpand(new Vector2b(false, false)); + button.setPropertyFill(new Vector2b(false, false)); + button.setPropertyMinSize(new Dimension(new Vector2f(10, 10), Distance.PIXEL)); + sizerHori1.subWidgetAdd(button); + button.signalClick.connectAuto(this, MainWindows::eventButtonChangeImage); + } + { + this.buttonGravity = new Button(); + this.buttonGravity.setPropertyValue("gravity"); + this.buttonGravity.setPropertyExpand(new Vector2b(false, false)); + this.buttonGravity.setPropertyFill(new Vector2b(false, false)); + this.buttonGravity.setPropertyMinSize(new Dimension(new Vector2f(10, 10), Distance.PIXEL)); + sizerHori1.subWidgetAdd(this.buttonGravity); + this.buttonGravity.signalClick.connectAuto(this, MainWindows::eventButtonChangeGravity); + } + { + this.buttonAspectRatio = new Button(); + this.buttonAspectRatio.setPropertyValue("keep aspect ratio"); + this.buttonAspectRatio.setPropertyExpand(new Vector2b(false, false)); + this.buttonAspectRatio.setPropertyFill(new Vector2b(false, false)); + this.buttonAspectRatio.setPropertyMinSize(new Dimension(new Vector2f(10, 10), Distance.PIXEL)); + sizerHori1.subWidgetAdd(this.buttonAspectRatio); + this.buttonAspectRatio.signalClick.connectAuto(this, MainWindows::eventButtonChangeKeepRatio); + } + + + } + public static void eventButtonExpandX(final MainWindows self) { + Vector2b state = self.testWidget.getPropertyExpand(); + self.testWidget.setPropertyExpand(state.withX(!state.x())); + self.buttonExpandX.setPropertyValue(state.x()?"expand X":"un-expand X"); + } + public static void eventButtonExpandY(final MainWindows self) { + Vector2b state = self.testWidget.getPropertyExpand(); + self.testWidget.setPropertyExpand(state.withY(!state.y())); + self.buttonExpandY.setPropertyValue(state.y()?"expand Y":"un-expand Y"); + } + public static void eventButtonFillX(final MainWindows self) { + Vector2b state = self.testWidget.getPropertyFill(); + self.testWidget.setPropertyFill(state.withX(!state.x())); + self.buttonFillX.setPropertyValue(state.x()?"fill X":"un-fill X"); + } + public static void eventButtonFillY(final MainWindows self) { + Vector2b state = self.testWidget.getPropertyFill(); + self.testWidget.setPropertyFill(state.withY(!state.y())); + self.buttonFillY.setPropertyValue(state.y()?"fill Y":"un-fill Y"); + } + public static void eventButtonChangeKeepRatio(final MainWindows self) { + //boolean state = self.testWidget.isPropertyKeepRatio(); + //self.testWidget.setPropertyKeepRatio(!state); + //self.buttonAspectRatio.setPropertyValue(state?"fkeep aspect ratio":"un-keep aspect ratio"); + } + public static void eventButtonChangeGravity(final MainWindows self) { + Gravity state = self.testWidget.getPropertyGravity(); + switch(state) { + case BUTTOM: + state = Gravity.BUTTOM_LEFT; + break; + case BUTTOM_LEFT: + state = Gravity.BUTTOM_RIGHT; + break; + case BUTTOM_RIGHT: + state = Gravity.CENTER; + break; + case CENTER: + state = Gravity.LEFT; + break; + case LEFT: + state = Gravity.RIGHT; + break; + case RIGHT: + state = Gravity.TOP; + break; + case TOP: + state = Gravity.TOP_LEFT; + break; + case TOP_LEFT: + state = Gravity.TOP_RIGHT; + break; + case TOP_RIGHT: + state = Gravity.BUTTOM; + break; + } + self.testWidget.setPropertyGravity(state); + self.buttonGravity.setPropertyValue("gravity: " + state); + } + public static void eventButtonChangeImage(final MainWindows self) { + self.testWidget.setPropertyValue(!self.testWidget.getPropertyValue()); + } +} diff --git a/samples/src/sample/atriasoft/ewol/simpleWindowsWithCheckBox/SimpleWindowsWithCheckBoxMain.java b/samples/src/sample/atriasoft/ewol/simpleWindowsWithCheckBox/SimpleWindowsWithCheckBoxMain.java new file mode 100644 index 0000000..7733474 --- /dev/null +++ b/samples/src/sample/atriasoft/ewol/simpleWindowsWithCheckBox/SimpleWindowsWithCheckBoxMain.java @@ -0,0 +1,15 @@ +package sample.atriasoft.ewol.simpleWindowsWithCheckBox; + +import org.atriasoft.etk.Uri; +import org.atriasoft.ewol.Ewol; + +public class SimpleWindowsWithCheckBoxMain { + public static void main(final String[] args) { + Ewol.init(); + //Uri.addLibrary("test-data", SimpleWindowsWithImageMain.class, "test-ewol/"); + Uri.setApplication(SimpleWindowsWithCheckBoxMain.class, "test-ewol/"); + Ewol.run(new Appl(), args); + } + + private SimpleWindowsWithCheckBoxMain() {} +} diff --git a/src/org/atriasoft/ewol/compositing/TextBase.java b/src/org/atriasoft/ewol/compositing/TextBase.java index a240bd3..3cc57d2 100644 --- a/src/org/atriasoft/ewol/compositing/TextBase.java +++ b/src/org/atriasoft/ewol/compositing/TextBase.java @@ -21,6 +21,7 @@ import org.atriasoft.ewol.resource.font.GlyphProperty; import org.atriasoft.exml.Exml; import org.atriasoft.exml.exception.ExmlAttributeDoesNotExist; import org.atriasoft.exml.exception.ExmlBuilderException; +import org.atriasoft.exml.exception.ExmlException; import org.atriasoft.exml.exception.ExmlNodeDoesNotExist; import org.atriasoft.exml.exception.ExmlParserErrorMulti; import org.atriasoft.exml.model.XmlElement; @@ -805,6 +806,9 @@ public abstract class TextBase extends Compositing { } catch (final ExmlNodeDoesNotExist e) { Log.error("Error in finding node from XML data in printHTML:" + e.getMessage()); e.printStackTrace(); + } catch (ExmlException e) { + Log.error("Error in finding node from XML data in printHTML:" + e.getMessage()); + e.printStackTrace(); } } diff --git a/src/org/atriasoft/ewol/widget/CheckBox.java b/src/org/atriasoft/ewol/widget/CheckBox.java index 047c28a..ed300e2 100644 --- a/src/org/atriasoft/ewol/widget/CheckBox.java +++ b/src/org/atriasoft/ewol/widget/CheckBox.java @@ -3,14 +3,12 @@ package org.atriasoft.ewol.widget; import org.atriasoft.esignal.Connection; import org.atriasoft.esignal.Signal; import org.atriasoft.esignal.SignalEmpty; -import org.atriasoft.etk.Color; import org.atriasoft.etk.Uri; import org.atriasoft.etk.math.Vector2f; import org.atriasoft.etk.math.Vector2i; import org.atriasoft.ewol.Padding; import org.atriasoft.ewol.annotation.EwolDescription; import org.atriasoft.ewol.annotation.EwolSignal; -import org.atriasoft.ewol.compositing.CompositingGraphicContext; import org.atriasoft.ewol.compositing.GuiShape; import org.atriasoft.ewol.compositing.GuiShapeMode; import org.atriasoft.ewol.event.EventInput; @@ -45,12 +43,12 @@ public class CheckBox extends Widget { /// color property of the text foreground private int colorIdTextFg; /// text display this.text - private final CompositingGraphicContext gc = new CompositingGraphicContext(); + //private final CompositingGraphicContext gc = new CompositingGraphicContext(); /// Periodic call handle to remove it when needed protected Connection periodicConnectionHanble = new Connection(); private Uri propertyConfig = new Uri("THEME", "shape/CheckBox.json", "ewol"); - private String propertyValue = "Test Text..."; //!< string that must be displayed + private Boolean propertyValue = false; //!< string that must be displayed private GuiShape shape; @EwolSignal(name = "down", description = "CheckBox is Down") @@ -70,7 +68,7 @@ public class CheckBox extends Widget { /** * Constuctor */ - public Button() { + public CheckBox() { this.propertyCanFocus = true; onChangePropertyShaper(); markToRedraw(); @@ -86,7 +84,7 @@ public class CheckBox extends Widget { if (this.shape != null) { padding = this.shape.getPadding(); } - Vector2i minHeight = this.gc.calculateTextSize(this.propertyValue); + Vector2i minHeight = Vector2i.VALUE_16; Vector2f minimumSizeBase = new Vector2f(minHeight.x(), minHeight.y()); // add padding : @@ -101,7 +99,7 @@ public class CheckBox extends Widget { if (this.shape.changeStatusIn(newStatusId)) { if (!this.periodicConnectionHanble.isConnected()) { Log.error("REQUEST: connection on operiodic call"); - this.periodicConnectionHanble = EwolObject.getObjectManager().periodicCall.connect(this, Button::periodicCall); + this.periodicConnectionHanble = EwolObject.getObjectManager().periodicCall.connect(this, CheckBox::periodicCall); } markToRedraw(); } @@ -118,8 +116,8 @@ public class CheckBox extends Widget { @XmlManaged @XmlAttribute @XmlName(value = "value") - @EwolDescription(value = "Value display in the entry (decorated text)") - public String getPropertyValue() { + @EwolDescription(value = "State of the checkbox") + public Boolean getPropertyValue() { return this.propertyValue; } @@ -137,14 +135,14 @@ public class CheckBox extends Widget { } protected void onChangePropertyValue() { - String newData = this.propertyValue; + //Boolean newData = this.propertyValue; markToRedraw(); } @Override protected void onDraw() { if (this.shape != null) { - this.shape.draw(this.gc.getResourceTexture(), true); + //this.shape.draw(this.gc.getResourceTexture(), true); } } @@ -200,7 +198,7 @@ public class CheckBox extends Widget { } //Log.verbose("Regenerate Display ==> is needed: '" + this.propertyValue + "'"); this.shape.clear(); - this.gc.clear(); + //this.gc.clear(); if (this.colorIdTextFg >= 0) { //this.text.setDefaultColorFg(this.shape.getColor(this.colorIdTextFg)); //this.text.setDefaultColorBg(this.shape.getColor(this.colorIdTextBg)); @@ -220,7 +218,7 @@ public class CheckBox extends Widget { Vector2f tmpOriginShaper = this.size.less(tmpSizeShaper).multiply(0.5f); Vector2f tmpSizeText = tmpSizeShaper.less(padding.x(), padding.y()); //Vector2f tmpOriginText = this.size.less(tmpSizeText).multiply(0.5f); - Vector2f tmpOriginText = new Vector2f(0, this.gc.getTextSize()); + Vector2f tmpOriginText = new Vector2f(0, 0);//this.gc.getTextSize()); // sometimes, the user define an height bigger than the real size needed == > in this case we need to center the text in the shaper ... /* int minHeight = this.gc.getTextHeight(); @@ -234,17 +232,17 @@ public class CheckBox extends Widget { tmpSizeText = Vector2f.clipInt(tmpSizeText); tmpOriginText = Vector2f.clipInt(tmpOriginText); - this.gc.clear(); - this.gc.setSize((int)tmpSizeText.x(), (int)tmpSizeText.y()); + //this.gc.clear(); + //this.gc.setSize((int)tmpSizeText.x(), (int)tmpSizeText.y()); - this.gc.setColorFill(Color.BLACK); - this.gc.setColorStroke(Color.NONE); - this.gc.setStrokeWidth(1); - this.gc.text(tmpOriginText, this.propertyValue); + //this.gc.setColorFill(Color.BLACK); + //this.gc.setColorStroke(Color.NONE); + //this.gc.setStrokeWidth(1); + //this.gc.text(tmpOriginText, this.propertyValue); this.overPositionStart = tmpOriginShaper; this.overPositionStop = tmpOriginShaper.add(tmpSizeShaper); this.shape.setShape(tmpOriginShaper, tmpSizeShaper, tmpOriginText, tmpSizeText); - this.gc.flush(); + //this.gc.flush(); this.shape.flush(); } @@ -253,7 +251,7 @@ public class CheckBox extends Widget { * Periodic call to update grapgic display * @param _event Time generic event */ - protected static void periodicCall(final Button self, final EventTime event) { + protected static void periodicCall(final CheckBox self, final EventTime event) { Log.verbose("Periodic call on Entry(" + event + ")"); if (!self.shape.periodicCall(event)) { self.periodicConnectionHanble.close(); @@ -265,25 +263,7 @@ public class CheckBox extends Widget { * internal check the value with RegExp checking * @param newData The new string to display */ - protected void setInternalValue(final String newData) { - String previous = this.propertyValue; - // check the RegExp : - if (newData.length() > 0) { - /* - if (this.regex.parse(_newData, 0, _newData.size()) == false) { - Log.info("The input data does not match with the regExp '" + _newData + "' Regex='" + propertyRegex + "'" ); - return; - } - if (this.regex.start() != 0) { - Log.info("The input data does not match with the regExp '" + _newData + "' Regex='" + propertyRegex + "' (start position error)" ); - return; - } - if (this.regex.stop() != _newData.size()) { - Log.info("The input data does not match with the regExp '" + _newData + "' Regex='" + propertyRegex + "' (stop position error)" ); - return; - } - */ - } + protected void setInternalValue(final Boolean newData) { this.propertyValue = newData; markToRedraw(); } @@ -297,7 +277,7 @@ public class CheckBox extends Widget { } - public void setPropertyValue(final String propertyValue) { + public void setPropertyValue(final Boolean propertyValue) { if (this.propertyValue.equals(propertyValue)) { return; }