From 5d2973b9aa39f7c237a22ddb79cc4133e0bc8b4a Mon Sep 17 00:00:00 2001 From: Hugo Miguel Ferreira Date: Sat, 24 Jul 2021 14:17:21 +0100 Subject: [PATCH 001/117] HelloModerWorld converted to Scala --- ...rom_CRS-4_Dragon_trunk_(ISS041E049097).jpg | Bin 176793 -> 0 bytes .../HelloModernWorld/src/sample/Main.java | 47 -------------- .../HelloModernWorld/src/sample/Main.scala | 58 ++++++++++++++++++ .../HelloModernWorld/src/sample/sample.fxml | 49 --------------- 4 files changed, 58 insertions(+), 96 deletions(-) delete mode 100644 modernClients/HelloModernWorld/src/sample/1024px-ISS-RapidScat_nadir_adapter_removed_from_CRS-4_Dragon_trunk_(ISS041E049097).jpg delete mode 100644 modernClients/HelloModernWorld/src/sample/Main.java create mode 100644 modernClients/HelloModernWorld/src/sample/Main.scala delete mode 100644 modernClients/HelloModernWorld/src/sample/sample.fxml diff --git a/modernClients/HelloModernWorld/src/sample/1024px-ISS-RapidScat_nadir_adapter_removed_from_CRS-4_Dragon_trunk_(ISS041E049097).jpg b/modernClients/HelloModernWorld/src/sample/1024px-ISS-RapidScat_nadir_adapter_removed_from_CRS-4_Dragon_trunk_(ISS041E049097).jpg deleted file mode 100644 index 66140ef25026fa173b0ca29af0fa7502bf9daaf3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 176793 zcmb5VWl&sQ6RthDTY%s`z!NOE!yv)kU4pv?4;}~*YzDW%6Fj(Ukip&E-Q797Ro_>2 z{+_P=uXpuYYuB#oyRW;}+x*)SKoWq6fbhQu5djei5fKR)9R>M4u+Y#^(Q&YFadEJ4 zu<`JT3GhA;eZa;cBqt;yAt56p!zG}gq9COrCM6^NUlBM&BqU@cWK0wkOj0}?JktN? zcYZdDf{*Tgw0(9CV)qh!bh zw+20tIV8_rN;Bc#_0`lgKf7CCBbcHFfwt#nG7CR6z)T9zYw*Eb1LUDtbVI^IB?={R?u@Nky|#-LuQx ze_YJ|Ei_iZPWgtE8SReUsTH6j913g4`o=R|b~2xKs*i^D%nt(@2I}V=y`tgxrU+`m zR!>eDk#(nwI4rJ$p#fQT7ylW_MyKrWE6y&Kp|ep6SO9#|D3e6GL~r!xo*6CFepja} zcp`3xpd-8iR0rse(nSYHcc%trbHZkb%m&D#sNz;S`vOI6gQ;pLC7Ags>k=`u&r~x) zr&tT=Ykn;o(ic8S77Ysq>8T+4?WXH3Ce^1J2(%dP(Cc(5KF02Vv%jFi!ev#%YttBC{NcLRxzc2Hh&xbH`tJ`(UAZeX);ZD+wXs<2QO7m@yV$)emAUQ9AX9`T9(jwT_=umT~-aXKL3I zhbIyX$oU6QysRvE5sjyfsSvZX&`lomoaslZt+q#zL(9KUl7Vvh1~{y@ms0@j zNW^tR>xdH=ZTlSNBJ zU2HKgWoS)V!h(+1j`Rtblf}CO=#Qc<2O9vVNGfxLwB0NY#G*Q{IiPZQYNBip>Pips zXU0D}#>r2LZQ6YQK|b;K1Dxm zhK7nPMLXGPQ{fA*9fHop+@HOvinea@q$Zsfr`-GCx`^*-Lz4e}0xq+f2fB!0=}TJC zG7bRAx0x$A&ZNVtst2Z=1@aIFHL$b6g&5xELRONOSjr5Mu{umLigip(-58j-1<`)# z=WOnwz1U8KRh7@$UJ&W!gqs`|YFUC0k~rp2CaENe_2AGkeaulA;!#n17MPQ2JnCK> z+*cfgN>;qC6PSGHkQJbxM0Vf1=;N*8qeY*PIn|3An)~khN37ufHvr5Iu#6hf9gi)z z6*ZA3upC{H-#lx~lOZJFY_3}S8IPr^nf*{~>*YTLWGzN?IFS5MFaw4;h=9AMXAh^z z@>uGtLL&(sNZ2Y1m31r`d7_qmFFhF}0k6|4VU1hZ%>pSNJHRGU3?~O5asZbG>X(~pp;tM+GH6CO|9*8^Vm%h_ym^{46)0dpz5 zMRc|r>^K*n)TO>8(`S=gknio=%~cbJYYF|7!2UE}lsMv|`EVZp!!*e$ zQP?X$bHj?>eXyNfWp1-Rd{dmx;?lP?Zr>)Q-k|5DMEYW@=4;~gHK%5CU9vglwVvM} z2^sTCCV{`|G;QY>2(^uSD0@psa&=^$4Z6?sSlg)noHE_8N7Y%>RCRV?ckxk2B z3PzQ#+7j_L1m}rCzg}0@!{z5UCoggUOUzuBe7XkCdNuPY_!CG(3pmVX$Lb|Cv;TGH z2mZY&VO;c@e*=WQ&Kwii*Z&*Rioj{HyESFG*vf0LC3;Q1TaW56SP?Ih+<}xClt8cP zds}Y{2CNh#Km?9+RBK0iwSR8=C*-=8RYuS1sj5u~{Zm%J{c(YwwRvvC%8ckVtw1*i-t5O1iemh=%r$AHhN7=k(6cs>^OPu zn7DH3sHtmysxj=vRJXP-%W#wHb05dN9stqMheZZd?7J&Z20Jfw>7guY|2g-2Ua=z{@EjUKUv4O{Kw{+Dud0YwKeBw-A#)A zm)$KO+=T`vo6}rjV1Js$)}J-0Z??bvbXr=&Wy_uDP@&qhem23#qG%)oJ8f5I>3@y% z2F$$5CWc7N@?0@rF46eugEiq1>r-9X*$RylRWSNZY(ZR7d6j zA>tjoxIXv!hH8vCl9#PYqW(rP@7!|YcxLQS&a(N+v;#Th>~z7F^&WdV#IjukdWhU) zwUsLTPTdhI_-_mkzc>Ije!Ey}I|La`7}|xNx{Kh0x(wLLeS8CyD~Yrwm(kayjE4H) zDF+3usm*Uyy?W#>eWGzCUvZ6Q4$OVkOti&nOVzTsl}!t@3^Ec&6nv)iy``;>ojF@s z98nk~%-TRmROOW2OG3CR>iNymP5U$AgFF;l#l@c0Nzs|LeJ_@G;FbOq4R%A&V^c#{ ztT*KX3Y*@DzkQ60+cO|YUK>nj_?NH`Cd<7Qg>AM{Sn)SH#;!eO_&zyNt=0fF7C6xo z;I&qpo;lgPL3B}wF`ZFolhM?TBFF%lyEj1X6QS@aB3);!WnfzbLdV|`bh*Q(7Z)b}U zxtzo#S9}21*mdio{UX2g@m@ddY|1v5D;8vzM{7#2LL ze%)uqgH_7&^5pzYp7GZSM@Mcf-#37YUlD`f&eTMK_w&9*)?llRv2Zr^f2;D_zwKgt zHeM9uLr{5Wa2ug=R*{kL3a#Ljz06pG&j^#Q2?^R6F#!A9s?~cl`$((yDIL{mM;>p` zE={8VwdAUIgyuYK+V#5Rn=v(?uiwGqG-yk;1P`$q!gg%Ay#qYdtRe$n!4%0g>r|u| z78lSlu^`F+HDTsla?O#Ge|y!!ytM~%aUy$9g{+hRsS*iS8R56r`!nURdSDuUxQdHF zy*SLNOfMWRr0hP8)i%PW;cD%cQyk^kDi5u7k>MA?G1k2NFFLUqxkwLPuRYhnqY~U# zu=`CToOr$YKLNlxBp>KEVR_2UY%X#sG~!l6*Rl3d*BK&Z!ou>^TZ?ACUfC@lU53B0 zKFVgs#4d?W7zu#_6|`7I2+=QuWqfGmcvNIfvUtFHDxbetEia^Dlqg!4lfJJZ-wRia z#*ZxtY`7^~TKNYdt~eQ4X+k1#-)XMLCNV&a#)k;vvitYVeLSwu^G1aT$8Y1c^S%L! zWyJibqNdJ11^i>a91_|HxFm8NGwtpeIMTeOuNbkY#-UneT^g%Hv9%<&8F;0c#*Y;u z{pz%NE4$TZ#^@RcBFlKqdg%w4LOTpK*$?Klxuj*6_N4U%bdoGa(NG#kkwG9kd+cni zo%+&81|+fWfVT*`DUQY`VS$4(&hvG<)}(DtE@I&hfL!`Q5$DF9%Q` zOMXxc=ObqMZRUzt%s@|k!hKEv^6saqNJj8|ewTiB*yQ5w&c{8)R;2RJIYN0U#DjZx zMs5f++f=g^q*ggRp3C$h%*A4?cC@&?z%-$dDt_&KpY`h#$)(;R?*vs*^7AdG_5!#L z9}#vK>7`}jHF{_k47^lXbg*w<{`x)?JPUwFeg10Q^%x^pK{pRgYFd7k+pE+V$}@^J zun_udM8ICBaAnD>L-^b^1#74FmDEDqXKT`Xt=l*#VLa>1)Uz_&o#!NDgpCy9w`FkI zh4Q7NpMrNtj?UBz{93fl<3QXF?ADAyf(i5JfGA>&dccUMbLG2654d1llCG_^nINP1 zi1G%w4zJ?2%xyrp({$aHI}Uo0C7;uI1N>CE7wx#1_6%Tnl2M4E`d5KiKWomhVn=-~ zdhta@;8~F)8X^4!ef*kLsM}ZScS4Tt(m}dWI_k-Z|an8Oy%j zo;8NTQ?%f?FE?~_mcU{~C%$zcmGMHP82*&6JUY~7sHItoM7|=u0gB!Lf+@iI&gw(b z!sMS;cfMJ}p0i-MW<4?l(eCB!ubN9Fzzc)2yMMCZYOTPm9jIn1m|IN;LEewMrHh}# zc(RGsDmu1~Qdj1%Y;AGh07*5*jWH?@ac4BoZ6!~FFlUE&y+0{{yX~qw#-`$>C8{sk z{<4}|0n;N*=-ZdRp;JdCvA-P+96 zTgLx*^AJIZNI23G^J&*z+^4r^ITJ!znc4J5YbU~u*5k_E9sPR3MY@Lv9w$$9daIT2 z0oZSV?KRrsIed|!Q*gD4vt5eNz8$ck`9})GN?J&6^XFx#i;R8}-F5WMW&v7y29<>U zihzZLXQ<|iwZt;nq(DX1P6)dV*$B6M7MFpv1^4&&`DgzGO-K`*ZCAc*;3&def8>kW zZJ{GH%WV#4R{C6;Uo9^T-u&qblXrD>kQOIsmyO`h!I^Z%v3vZH%s<6)e7&G7kD;B; z@PLFim>rrORj+%Wt*QCLZV_o(y+NDv#3txv*F`?*6pi|6(jX96g z0WInca2dlDn{TU;?(ST$w)oS2NzD;gAbQAmH2Vz@&6G$52sLhPtclcT;k{Zo!b5>D zXV{YECiyt$yOHgq{l?R8wS$+P1otC}Sy8@p=$9YQbXo?O+Qg~%{fxDTMN716}? z=dEsfH~fABFl@VBwCkzVgoeP0ya7_nNUvk?N!H{536{?~qpmS)-#$qH+#`0L;^wjq zHu0#dYrWVe-o+=PX{%4_6zP+_%}vp3ZHOVvz1nj6C?(|LA1-r4Sd~6%!L>+2=ZO*s z5yyJ4UfWFK7D4LyKD}*ZP?PDL%%jS&6#V)$eVUIcz9Ja?0VVJq9PH2d?y1GhpCp_1 zc(91m%}2#4&zjat6EPX{jFozFinP4}n8=NEn`o>f*eWQZ1~4sYsgo3ce7^`?QDV-J zwLjQm;0gC`U{3A-Puly&!@1muU|%p*oJ@}3o<=sFeXmMH?4CAXiFb6=rK$-+D=NTK z>*lHn&IqfHEIas&C~F#~iclBJXT6(S6Pc7}6@0p5A|FbrX}wkGLEZ^Yogw=AGPj#J z@TXJ3f6!KIpkE^^|3Hg;wm5RDJeLjHoRm-iS%@(Il|&eA?S z+2mgrX>c)G+Q&J9&yo14alXW#CT23|VrKjH9!Uocv5)dGf43+_xad`)SSx~G`sp$R z1u;?DIFZr1IwRUC6F7cjaT=si$6Y4!&!of zTszf$7_a(lcpHsc7&O8uy9@0g#G};Um&%@aP&RTDTyPS-QEZ;>V~`+KdM9Jb5*vyb z74Wt8^J+c9F2(c3+>4!>KW6C@)(K~o)_JuLah6sgh^`L!1fk412_ za?!Yozyy&*)VN}xeLK7WIw3|H90?0!vXxtqB59gwUTKL(x>pm zBv$Sd-u=WLDB1PApJ*cD#r59Cilsqni@~^+SIyg|E>f5mt%mG_7eT(HLZ^o~>Nt(U z+W!dY?CUSCyK(??)-GJ9fo(PyN%RTyLhG-j9A#P^2wUsZj+Vj}xCo!!e*Xe^Z(Atq zHXZk9Yj6AHauPuOYc$AQx}!fg<`!0RT3WCWt%-=*?jx9iQ)BwkC~sI&P+b~0XiNg_ zq|-ff;of^lBWKP&@s+_!VB`-SDIqQ89g)|xyo6h3bBCqml@F%?3)Dlh`NbQ@!m5lx z=*nF&YZt}DPZzru>(aEXq(54*-wuBz_P?5?FP(PK>K3qQT2?lKB>bYBggt@Bo)h~0 z((8C})>|*Hnl+gwGHI zUYGZd0+ z#Egnv|JR5P&lC-xx%vBSTnq8#MD`}6Lq4*%Gz6pM=elo4ZZ4v`%k2NCpUaW{fJ?M+ z(>h!WwCBZE_1MJKxv1L(sf);=R~^45m?)E>=ha$xt$QpFY<6OB5%L{@`rt)Xj-Ct%Zwl5EyB;Q>DDnT< z`;Cu8IxR$9dHi%sbZetB^Vq%%RBf zQzP2xS?n8aJI5Q~*BFj>2~O?9XC6o514s{_KMSZ-Ya!?So{r>i!_Rp%6=xF zv7YV@=ApDEIGjpN?eLKyV^f4_Phr-f{Dy+_z;ndjEd%@#*F}+P8rt7$_5hsr2wYy^ zVQ4z-XgIr***aT^Efwqzkne}Vd;Fr+*}DL*<*bamDT&6SUO&N!YM;G7x z-vAeIe4J0tcP80|dQQSTYY*$Lf6aitc;n2#N6s@7%E6j*D~@c6zkazxL!;^9DFgcoCdZ z=u2Mp182lK|TRCWc`l6&Do%OYO(sOl1C9w2v1wvrcY55LJQRG zw)1pZ3QR8iH=mzw%NG}Q&7P*o3hJ>c6?1|cw@;kSgQp(nl67}tl6NrpUYAQ&3q^;8 zV%uTRw$gr!+9aS-p?lI`xC~{_HxTtWVsgFPq2j+)c6vi6p^#$6oV_5G*?d-!QUym3 zyv3#uQtZ@yt6Rdwe@GqbxiTyu#0x)0FZC7ZqzD#Jh~wQjj{UG}Sx@s)yf}J2c2zL( zSeyIFX5pc_))mNN8cXEU3`@DS5F+AWH5NAX&@rp%7f|D?R{W8RYzEEzj>Tx8+RLF_ zx$(QrLZU6J46>*6XN^8_wxTNZMrwBBlXPVMZ1OKUFfZW&r%*SV?j4I!#g{jW|4?m7 zR`u=^YzG1PO*Ic>79wK*?+-UJeK4E1)1PQDhkV6ds@OBBvIW^04MzRxwoy^N{Ew1k~jfd#M(aj%r z1z~I;&YfTR{0C`%v!4&adV@p{gdg>On_Bw$uNu0-Tf0AnwyU(O?7}Djg$)i<%X0XO z!I*Tm4ersHH~nX8F3*j^X1-zaE`m#O#95;U`^%))_kC4NOEg*M8sb`*8gnd8M2DK=|Ff-b)eYXR#Wz-Tb zqBqMZ&3XxY>++hpE0AW>zBQ?@lk*$*xJef0Ko_}}xLGQCOktUve(PRTbXUDv&yjQa z_6(3o0oG{0q){V!lEs%)3t!oNj>V`XHOGnJDmgL^^;TwPbH=z0s@|zJlqh(C^+2W5 z%O3zppW8+D_ki=0SWz5edg&B>i+Unf&w4ZuGX9QtAWUO9y5ymSXpw1ww+3ah{5$>e znw)Jtd1Ufw*a}eVrJ6PT2l3=!({Q z=a{x`Xl@iYx2MeT0h+EXO0QL3z2uLrzmr7>SLg93Ou^E5*)J3HGflt&M^Sk$N9IO9 zT(mBV3muA5g@+GMJnq=}EaA)D_TQwxkTAua)j|;{bG<27r+MnG^h>+AjlW^L-ClAr zg^z6#@6Y!?KaALV*^`AgP8r*0nC33acGUj3!-_>kx%)}n=i*IDHq%tU&9ub)tWjy!dIuInyu0@Y~t)*Y27$tn<(xpl1kR* zz4^K|yzwQQpL%zuOF#eeu=n~vzcNT(nE54u*_*5sA(DQ%o2eM=%(8ZD{qG#(h(7KF zzi0LrizD@rji5Uv{H;MT%w#o|E|ye+D67-FMR&Fj)UxvWF+!e@UfA4JI9vp#czsJ! zSNcgLdY94wC34uUnD&z<=iZK77i~jpWzB^{d~p=TXFaPW`qA}xWw~c%(6^`Ri;LAn z@lqAUIKqFBrX`?Ti0AF-@_Ba^@k4+4pXgS+<;7)|3541Zi6MNCo6ij|lCdk|1TGJO z!%hYhCezm~Bc!i>6zZ!A294weRs7qyf!VV^X#aB9f1JB@J%G}Now4GYVf+wCU*0OQ zz6;zJCimnqnHA>qDio*K40ZplxI@z-MWcYT^7W}a7IxXcn^jkgzdD``UoGT5V(Myu z-NBO+X>Pn55yM9bDAHJrtus;0L2kwl4*YAUo$eWDDVkffGDzD{AIvwv42{a`5O41W zt#?SBC)Kq#-Bw|>w{0SR1^Vg_v=0uSi^aR{_2U@spqRQgmb?LiKsCRBQyy_tcId{Fod_Y;It1)?a?%{z{ir3S}k+tHY_g(8-Q zHd?naL|Fw74s>CKaEwpk@w-%8w15w^K*P}P-K1!>iseJAPl4UkvH#TB=O9^KqQ9a! zZjY`@8p1_K%W4&V#YkL`ZmG5i{Z8Jv8xs)O2^e|o>$%{Ipw8f$lgR~F`NCm?DCN1|Z70V6#Byks5cAncwigWcp`CKFiH<;;^b3e-zl{sbdIgjb=Q$w=_W`VGDt9(&gb zL)NW!E~5G6n2$UoJ ztqGxa5YD{Tq8QWY9N27UcrtqfL|_@fs!{Wsnrp|mmmN+>B}l!iWwO{GV1@5oTTOLO z-zYg}^@U2t`|g#Ym26!mTlrio<33I;Zv2k=LCyLd81@Dqw?0R0LS7mVv+eZ3)ic*E zWFR(*2{I!Xob1+2!rIm2+^Azw?InvV{4gvCS&pH_WT7GS_r!^T>hzT5^ieG{&SgRc zP75Wckf}9cxJtL<@gx)Umt5jQOiPe*fM{N!mX3fT2Vv<3X z5PY3-e~ue()RGNd`n#`@@+f4kS!aXr5rdj$YSN`saNB|sbqqOFN_z*D`4rpsSd(#@ zdxHr-`bmpSf4m#{`i635I$ijN`>*Phww4np$q~($CV#KoK$^XVkk9}+M^RW| z1gUcWnyV;L27v7ov}YK@P$GpzZ(~K&T7PhT5L}PzegmXKaPXyeitPPr;A7c437?nt z9<@l1dS^)ud=@Qg1-lB|UQlV<3W`V9Xvf~FocUwB_|(v3$G zI!2|ucRr-yaE#Q&id6rhIxAJa0Mn_nPYK|Az!A^tgfpWH3UScZKBXjFD4 zlkAMyvb9aC<@wj8=3ngc!@msC=B*J$2w&|XTe7$i2~fYF_%5n^=pt=(510|_)Fuyo zDT#FUr*AoxO>A+=b>n@G*2-3#+L^hnjW`jajBP{=EO%zHbqHggBsm~LK6Mu0icKXP zXL0;;&Tya360{UFn4O?-4Z>bB=-pLt{vg}B{Vru$rmV70@zOkD?82y>eKPHWR*lt4 ze6st|-sREM&rOc9SgV8t=~u;_${J12+lTZM$q z6>0Chxnx|{cVhtY)dTy(Cpl~$w4Md+#lMss(7f;lAz3d^lGi%m+{d}%4%LXVOv{O? zbjX@LwSx0v*rEIl)sc+s$AxC&2YYY_a6QxYddzo$$CkMI)WT%dy`Q$)G2AOS6Vser zQ#YbwdI*0i?(9NA(Wx8M2SI!(vW_FqDj5XPXmtA%MCmV=P*xPGJiUA(OCaK^rp4AR z+0M?%U$48$*K^EECdrKZZ@{Yt1Y~m&{m&MSSGc~l-ovD|mn!v73M0KpRMQ{h3mXyb>@<1z54;J`dm2#q%j;IQq=VAOvGG&qy~3YN0S?S6+3B zAcm)c;4GSl?Mrne)d9VKs?P?_9_y0OTs}|3T!i96WzBS3cc_J9=$I)=Yn>28r;sE zX&e+|%YNgZc1Hglj~kw9ArddQ#_!#i`n33ky7;*{io*QkYGQo6FQK^_Yb)<)G;arG zS-bey_lZcm6hP|lYrF$hU%s3C+;kYz(7}KM`a&=!DtYkZ#P0!C+L%Ai99a=-=*T2} zu36onWP7%#;Q^{-Ly8uy2J$U_QP}!sQcez{v#@VuuMeey&aeTAUpPge=uFKQ#2>jF zg4wDL(Nu+axY$3vyY^*wROS{_$@=vOY= ziP&&oMKViX{7Ye6$2m9&`s$tsu5tIxlaN1vf!HF#6ixTASG)9F#;*!~)MN@Wjc%Hl z)(7dU%=_Ed9l0Hc?>2{Tzm)77z?OvnC{A0{b)dXkhQ%9BzOr*2H?ZTfn50I?oN1n} z-rnYPM_B-r^#x2#e7P+q=(tCi#%fB($|c=>7j2;mN9n83ouhH4-lrvw6#~*Xtatlk z*q?tlS^tUg6oN8B6TM}r@=sbQYN!?HJ4bS8>()QiX{s{fz0B)b9UEYiQjd zpg|)xP=DB0s=7tcSFha$)mhORVBznp`Kzc!K(!3TTtm_GoDS!^& zlM(&=rrqRR9o)H9D!ok9r||L|%<^n!WcO^|02*JUY-(th^PQX1iH2(%U35z++o7oW z;6#~-3=n)OEmdP`^;fg4`J3`&61sIb@EA{HqnIpXc6$7W&iJmMR|G*=J4@i&@Y}m` z+Toa18u@e!tgONED^=7k6dQ7{GtE>a*16oy%MMjIA20t$oJY%>a88i zTZ3f#L4!XMKElADKS^{4ll9Nv^@H>}6 z$#-8la!390Q5dH0h>=RSBQ#4L-Xd{QK*cX5f(LN$* zkCXfUVPsADVmqQ&MB4wgSKS!DV@5M;KG`u0^6YiTGLeWel6xKw%o21+%=725D+(r* zAh|=YOUp4tD3){!Qy9pn#UfFVbwis)xDczw;#fG0NCb5?b??yH(1r} zA7u<%TvL_$Cu|LPCKTw;$uP3l#aVNpv)wQpR0Wi*#0s8>zSN8|TiylW6W!kOKy4t) zwP$T`WWfN=xOc0_F31kY5@@y&x*)rx{@xf*GCfOXlFNxAz6@a6QHtsz>`i6&i2fuG zNHo0jBK1u3awh-9`cJA2J^r3bC2+R(QS-jN|1qU*!hK-<$qf}WOu7xS%RYYtY>d_F zG0r&5vSRd{4NTMinsAd57sT$ki_;O_EsNPoJuW{vDTB9*K{Ou*XZBgC<^%EXWrfKv zme;lVCU=}!^V10-9JJw=yGj)u*OhlKGW9Y%V+j}vXVUjq%ujj`HMha*ad`I#8c%Ui zwF4{_XtZegj_0GT8(Rtan4X71Q8^~Iw3{nwQOG;>P&i_NM{?H_lahAe`E1PQ3#~s{ zFR5eupFheXo>zYXZ-5W%JH(!r)N}nN_Sxq%rT0>dGv7ZX-2W8+!XS&f;$hQv_a9ZQ zqV;rZ>{f_z`tuZq9Tn`&|azLxYk8*indwln9$F9A@+Xm<}K-T zZq7wC^xnho@e~3Zl>$reGkHhdx6%xApz08w91Y4;2p`j4eAB^NY}yh=IYeaH6uZQ~PyTtjn41ASQsB{;_;M4X*qtWfA<_{1++QSaZ%sC1BsZY$RsmY` zwJj3Igg}nA`-w|sRenqN`B20u%Mdg@KN-!=p?7gL_HDHb#@!HB8%J=Cm+i!a^ox;j za4Zj9!#1f#s~gk|OA7CWf-uMrMdZ0=f}Tw=pP#3t*>jYf83DIIVe6MW!jOy6KO@(2 zaf+ewYlwlaVr2{Z3TWM>GEA9X%Mk2Fy2d+#DVeEbk1T1T_QZo`JK30`K{`$#M-4y^ zu)QbDXkw@H!LZAvGNN^g1HB5|WQlkYx(3}WpWSb#n1H+@e~_hjKEEJdwQN*@xdgss z8WF`B?!{w$$qLAqT&tz3RbsoG5T@Ty5-~lmEBOJvR3Ofq=0Ve{*==zfAm(3kZm|n9 zT1s`QumzfUfYVpiIIrcBT-aq?d@1L7&P1%WpZZrA+!$VVfe^32k8($|)$RV#?WT10 ze>aIOz$(NKw_V%cwdi5u4(ap_tpkq94L^cOgClkvwi2GQjek6;eVii_{E}c`{BN+e zI7+QkB>VEH(POI|fuea0nfDkmigO$)NAj{3_(xxGP|cmXVcMLtvq;MV<+cj&#|Guz zdz&giB`ki0bolQ#FiNh6}%bUSUS)i;hh!7Q21^v15rBc^ex~&n45NE z7c^DXH~d&7Ns!D5BvmR&OPXhAn@8GqxKw7(@kAiso(caa@Eq#y;V}MhpLofE49o!; zc>|~cC~~}x^gM@{bw1vaI!>o(M`A41BMpCG%ncS;JUABE_S+_1Q;x!EW{Gb|Hs`-= zCZ~*Ue;8AqKHZpw|NEa{cozFSL&W1mU=VoPeWEg;wqEH!AnoSD?CykK#;1F^Q8?kf zLk=yAsEXe)^CJP}(Owz%ql4tRL6bvL5#tsknzM*00|E<750Ie=y^Zf`NwXiQLsAo;R} z;aC#LNT%{))cyV2nZ%f@b@37{XE`({Y#PQG2)VTl&I+ zr1fAHPGL&pSYUjhV7vE!^Y>0vFP7yC-F^W^Kf`N_&Ed&PD_xulHM+v-`jsKFgg#oX z^3V7ie$4lO>pBPrSUY}jdun{2;GJu0biO>!5fNTsmjg9Mod%*JSx4U3#}V3nu$!z! z4bvt*&NGU%M2`k?whw@ju_&+0ziEEG($ectu?JF=^{offMv zp+c*8l|4sW<^HE|a?B%-Zp@-EYu&urz=HhoWg2IV+;#LnHDL{`l-wo$B|(T@Ku#w6 zYakEt(`*`$54WXrESt?{?0=jp_vl^Ocyxrree%K@UnqJA?uT=d{Aenp)cHy??$KYa zvdVocvrGF12<}8OK*^*Oe;}k*P?A8{aj2aZ-(+_s$fs&~=EPqLgDFzxNnbAE6I9jr zbrV}4$5_ihHrpL6+pK0O&)if)s~D8qCNR|W6x|& zj&~t(ABBo>n>6aNtzMXXn&Vw7^@pxLJ<+xf(18Z)qyoOow@@!6Msm*Ycuzym`?fqP zHX`Ax_r7ZeoJQUfB$0Tv2?wKIa@eZ|L(VTf?D^tC7n1+qQyohI z0HRf@J|;U%L(PuVarak|($^A$w(^}8f@H=+)YlIEVNTRJ*Oyf#eNP3D+8bc~@e%2X z_}onIm3a18nd=SEbXV+UeM6PZd~izP-}N`4{hu&d@k`V_GEC+Iw3;{VbQ*9WD1V-s z?_(~rfZfNU3Rm}Qi>*RuD#WiZd+P|q<7nYxg1{*9sqKVB^27l10)xzNIP=7HV9ew? zm%B9C>e8Hk`)eA8pZlR`ceySbEA1?GAdhUE(@s1&`LmXRdQ*^rl&zq1L#)Kye`xO} z>W_HPhwtBBm_HV0c#`qfxQsWwtAHe+xWTKFdZ1l*tz<4jw%Ypbn0{fezi`5kXIMcq z3RmeX16|eG^~s3dUJEt?JiAz*pgFmgvwDP~Q7=!k(6BBuiwtJqAp-_M;eU|<+zIAhp%yvEagZ43u2`QJ7YkEu0US5;7s z>@oZN=*Vc4U8){w#Fb<0U`+2*_mVEYJl<>Eo@FP#gbA_7dn4Yl^Hh+W)UWsjY_Dd_ zxxYKPJCT~m;Fduo43Dj%+-A465eWAujJ2TgLNwpn-J%AKCdxvqA;fT9mQp#^*VNQ~ zRF)839z%LkF4RBM8+&y{L-ncb_JV)d-Prt01JeVYKMbeO@aeDqA+}5*9h{b!mKHI< z5B--yd;K(qf~_mkGJlshgB}4Dq+lW{hbm);DSYa zXuC>!t~nw7 z=%&=X987UbcNrTrS$GfjBYsIe*&@4?yJ_Em za3x$RP2b_KjJX2STAir|8m;`IPA2;Js)p{36fQy{f?#?B#MBZWxLf3c=;Ws!@+xrF z!|{BXy~dRryhuM5Wtd=l<|5xSGVlWd*SQBS$DOAe}QmeO#ZWnnl^gA5q-z6x{M&6Sz*wo zNzL{Ybwi3u{bv?2!;gyzpU55QLjZo~$^rH}`=5hS95HzQL4y*!fKMi{<24@jI zPMl}VU<7qQY^QJLf4D+^Qz3{6x^3fb?^ z67tnox9`Fk3kS6?jQHCBBKzK6Z2Kv!>PPI?mN!8D91lf#+2grm`Y@iOVK5Lb1Sf}k z=b72o2dRvRG{0@8sXrb!YVTlavxzLq>L@`hox9od9}8oHZGq79Zg9cZ_%y+vn z-sd-pyuounzBMR9nb=>Y@3*8#^T=9S&m1^L*>s=Rwh{L@i6jrBgw#pwSNqSdh!?! zp%JsX29r`q^8%Eaqg0nt1S2Ge02^br%(l_QZ}-Y7At6&5ogOfJh`G$l`Jy8sJ$N|B&iBd$M#=@)iDsg`*YB=0&|7eDRvN zrhGw}@`P&P+@gr`+o^9XpM6s#thBfZ;-osPZ6X(F0mz z(>+5!hlK6NesC7glwag+%s^l88DCZovy9yIn&ix&sJDE7aPi18>vh`0&+lN#_?)ub zIj=OX>5vy+#iFJ{zRQPh@Br)7W zV02QM(?!KO13S)tLQj~Mv5;zG} zRFfZ9*8YCogUQROmw)0k8WasEmK8=V${Nr5uWnwD~>^ z?b+Pb7zl_~5q2|eU4o#XB$nEX@D8&HTi-HXFYWCIXCa!^K{pI1ZSt#S(mEyjmKLev zFRTpf{+o1N<}a@}M`B|+@?^uF3K4Qb7TP4B6uSjEEjbd`mAnx=h;CwS@QN5&!k zgZ9U3u}*-bm&Rn$qM;o2v=*Z?aR3%qeAyN!+Z+WZObHYrlmnr}6b76r6s!4YGH_Dk%jl)#cPK(rFc}YNQl&U@p=8&Os}Oxz5%* zrTG9+&e6=;j6B1PklK5fzHXOEx_1*C{^Sw7H zt9F?1-|N(6DIZQnk!?sBBsYW z#)WnAAG)i<*rV5l*k6gLCUZ2s2WT*U3x@WW4~55tTe8j-es$+Nz973J;YqaB zne4$ox7U=Nsh)hWxciz2I*^7Cx)qYhcpQig(5iPjBjUYZbS@4;Ql1ky3zf9?y@<=? zBMi6Y*k^`S6~NgXQA&E<@l=nNLQ%)e+{Mze^K%@o%b3A^vXnh<0N?*S@kPQ~Puet@ zp+C^k{Y5u$jtiE;Pr&LQEvffR@5YcL75)%^sIXZiGUcQhVp^}Af5ozB6X)Hka?3bacZ-4JEi42$N9F~f0-aM6HHokfsAL_luT;S9pyBJ9lQT67racX44 z!tw52i73GRMN}vB z!jaH?boy0}BeKdwj_5jWZL2cxQb7IEIUPD4qN}>5gC*h_Rv@MMA#sd*kBYd?IhPE- z)R{(D-z;ZNu+^>gD|MF5*5V>Ean*jmKkqbbHwz{n-ay+<0aoQtwQ$WA=TOkD2!nV< zIOJy^9{8?{r1-8Y$q_DzwwR6>KcYZAkM^z{-YdlZ-J`P)kg_kkOrw3N{{X|ThvS#K z)x0(>^dAvVmYLNy+g>++F+e*Q_izY3SxLbk6Mdw3V^{DE?7DWfr(Nj!l4K}wBuS8h z3#*SwQa+&j^{>;o#xh-D3e z2>uqq0R4C(zO4Id{{V%JbHQ<3>b@8<_=m&Ms0D(5%v&Z;rbJ$&pTsgf>*q$Znq-gf z4flvuaHndtfe7qR;>WQ+OjIdqzp&g|-}fqlDIo&p(ns2j{$iXm9@!m5Xv~*R%`VG% zNa`1AG5N;}_38AZZ){DY%Jz~gsy4#NPayNq^!gtD^@}@LuB2<3tI8Yu!uU*~QnTg3YCyU=qx7A+9NxeF~vMgaDiZhXqsCOaW-_oznB+Ld);~VqU;gVt z^4mC#quhs|ErvsG?mw{=oF&P^g^E_{y%mqgu|K67r(emWURyQYskn+4^8^z5Pa~?F zaqbTzJmA%Sf(vgC+$=X27Dz6kv;prG95j~0j$M1GCmV+u;Nq=*9D#2liPWsJrscT) zH{F0RdxaV2smUJ|SeEiDT{(P+9`dEvMct4I_mk#a%E!vXpcoMM^j+Mv6TB!0Cj zS&5Kt$UFcs(38OAirz*^#KuH)Da2Pdyi^&D}nvqr`eE_UG*fwOV_ z@<+)y6c4_F?~}}LE)%hU0^q0w6u|*c&UqO2?VQqGLMf8&Pw;6GBw!2qcx2ni=cWk3 zz&LE<#U#*baJnIk#u*(5KC;;i2spxpAdZ`HgHIyn(`~fydER3cSXocwJbF)1 z-9NZBcD#dqqEB@=S)j`}0Eb09ZuVkw2ORr@NG~o#R|M)=X^dVr7fmeL6Z#lXwRcn<#n!ZJWmdJLa>ohH7~ZtQMOmT%{s z8s)8Z8vyqAP)UVGj03%qfj*#ehXfFFT-MyQ_H34}idEzj>6Za#jUc#X&et2`nF!|x zp&hvWX#W5Qcs@@YYmIGZGHCjBv9(tnGG@TbazIobre;+cBvrl1P`D z)$>QTO;-I$P+7YD-X`9W0qG<>pNX)&N_@2R%$oQU_}9idcZe=5be#sy=TGovijM}3 zXzadt+(!GUvFT~$Weoj*3W|23)ljU~YZUP@+FR2ybleVcp2y;(xVrxU5s=AwvOA{h zKHLc#B<1nk=NpDTo#Qf|E>IK}= z1w_CCS7U*W%5r*is8ycQXNG9i_O>O7&jgQ={Y7EnR#Na5bR4p`EQ9CY>rb{F5=QN5 zE5S5Dg0T|B`5cZ9BcZ8{q4JE-Zk93lv&%>AoPS!(bx)AmPv7*9Q3CW#s*k`{{UJ?d3OzhTwh*f+S(y@ z0N}`a1s_wzXMZM@@O#91z|(Av#9wl>ayBH_OjZ;)>Oz9@ANmjyd*E|id+&N}-nj03 zVSP5Se~1|BI!dL5#&{6860um%KuU4f1FdPV>vvl2p!eFOo216njei6w*${Rg*Qu)h zlcXOJYxbzf=GxW8#nZ;SipHcI0o|D4K<-GYjyhJxPv;8{jO!2%DX$bJ!q|#by zwoLn;(S|`+{xsY@FZmvN_k>}!PeG2SwNZQ-;K?-oTK@pV8oDa$x}35~(TB=etc+O3 z4@O~}7VVBb>b2s3w`jDjQcXLY3;At%bV*k^$E5~1`6o4#yp8ci%ey=8hcyd* z8&ytf%-)o_?D(tk-bZ#Pf+FWta&(pbKqB36aRjPkK}1FA-Yn z8jY=-cLu^+Ydd>XhUyu&d2s`~d2kprNYY3~INy%dtQ42x(JN}v6jMbyk19oxnDdUH zeJgW$E}RVZlAC$JD3UKxxL}<8DKw%hYl9+gh?G~)n;QmBK1WK;{ATx2x3u*ll?21>QX`C`}>49KXve)kn88U za=&_zo|(@B`yM$tr+;V~{kD&x>e16!<_+HRXBgJq|? zx09z`B-cy`32{C*6aN5E83P{RR%tk^HL#Bh>6%xC{7<8-vEJU@$snCX180*0I4oBT zN@p8G5>9LCU$!r{Uli)=Zw{FzpQmVzA!}n{sU+7kp-@%ijj-|H9x{qS&o%P#@O}QL zsU1x@>@l8C7M~mVzFa#Cr!sb^emn%(TLpl7YfWz?7r&eO#Fa2sgK&} z4!w*ck)%wS6dZAZ)`*5Fowk9yJxD!hdrMZ0!FZS{{OZAF60R~bEA&Rsl0mv%vqH*b zZu#S=t9F}zJ(Q~@tnx&0jq$l&4{krDR$`FE{{RQ3X_d3MY~@u+=OZGrlCwnU=nWm6 z*2&?R7L`Ge9x(m#J+s_Yb1;cQZH>l%%mb0|4Is9j+BMpuP~`epd;My|VHmsz$jqRe z6~}txlz5#nb~e-QZml5RGKW;I+DV$pST(%V!zvta{_2QlDPc!se}=3MZ$yn!!X`J)7lE z?N&7?dj1?^jC}jkVKkmf`PX)Fwg;PSaCjg5y4862ctZF_7DtKXp?FKU{J>#YPlzfyMN|}w$`i}hmkeKv&h>` zs+_QH#Am3b(@&_*tGZc+PgEg852t#>c8O``T%*M-k|xCx$LSr&BfT{h>{k07-Rf-; zmOE}r93R>3kbm5`t!?!?OQbAr7&m2ZaDB5%EH5XGL(6qMa)JI*AHp-$Go1X6yzyC{ z&+ij65c4~N=5IGgg=C&lo-_A?Ks8y^yd?6-&l4;P!=1;5t5QXl%kB;AryrdXmZgX6 zfgqn^-_x2DoO&M>C9=KY{{Rm|a;a~q$XOA%$EyeH+OKh;v_Wqj#32U@kQ@5+rAFP+ z7=X+CUW3Qfbpz(5wbUU%!eownxW9D5NyoUwM4ORusOTo+NYn0!lTx*c;DNMxD}nip z^PkF*>RuJo{GleB47Lp;V2G`mfga6**dLw+SR%ZI*s`iYD+9E=r1A2&$Uj;|bE#@8 zeD>EDQQDq2NoOaL!`QJPk}=dD$ciJ#Ql>>~6xwtB=V_2A0KJYGi0pP856pg)`q&G^ zN&e=GD}EH3b}Zi`0|5LA8X2Eqcd%>AY~arWtFrUU+E`kGa$!*6`SE*3j!AjuQ(#CrnVkTdlZlW$BOf{MV;>6k|^OfzAz z>{RpliiwcB^(8lBC~yWn!RE7SZlSdTM2dIE;z;w4hFtJ}FZ8cLdXv6wG5l{{WLegsPHwJt^|AN`YSS<2yj~cjGk-TD8$u`>ZIdyQA_C<=T&URzOb# zbj?7hu?%)U6ton>R^}^(L3I|{PqPvS=Tev=WgB<{r2r!m5zY_3F+~TCB^X@&X%tAi zhY6J))hRGXv&=b|au0B5aWP}a1&=@o{<<4Y{o#3 z)CXcX&(u%>3ny}aLtZbxu5m*PkXvgm&e=UEf#s@`xB@!h^rb^H_;a@m4`W$Y9f#yi zL+0*paBFsKD9Z)<&<6f{ZpK*WwlZteVom|W4&4Z-M1e{5?Qfciqv~ZWy!FOK01+J1 z6SY`7dlQZ7L5tv)u7oEYcwTt_u7bb_5bm%-9H5jt^Ya6A?OWlWfb6 z!f=1BA3GSMX;URY&Id|Ue+ped(jXBy9QLY-61pn0OC6T0ExoLw>InxivX$8W*dwoB zikc=w-x{+*?UJODHlOWV!)qzHKY0D4gMh^3f%8S*>A}&T%>?5ggr0HlUHp}#a#Ik+ zt>0Ko+uLys>c%}s-mNisn&vp3Yna|>o6m zW=16T$UnXEI@O-S;bdkg6{L{>48x~#xgAf>S_#tD_+g+}=gAuxa;$!s;MK<^E-iFR zkN*IuvF4SlGu#_eL>Fi=_jyJHpD2H|J+;1$=2ncKCUyLANH9m!+*dl5)=0M7&dnqw zWnL!zqyymh9|ttr(^!@`RO`ESEj36HY7hb?fb_(Js{MLbE=(!zKfm9>*N-#l{{H}f zCGln|df@cW`~H>l-`fZLD(HST`_8Z6CARSIh@~b;E&l)oo!fOh5AvM*fwbq5-n(bs zUe*}oQ}@^yWJrUYe1XBDZFMMTAF-8RCxy>HrEt$0n%Ub7jvXJAJ|pl)iZl-xCx!1c zTe}|+G^+%5Qbm(CNx>M%WX4Y6k$_HktoZlBZ{SgBqR8lVd0-O95^&2C^_2TOpSVB# zun#+hey`qXmKvqSrQO}7y!V!CBHCR^0=%~2#vfx5kPjIh4?|y@Kk*Uv1LL0q_={5U zF1c|higdk7<)@QdL4&-W7FEye+ZX_J;|fkHKHPAp+xPi@xBKk6c_sGry?gzy-$w!S z0mOGffK#+KJ!m_RoO>Gaf?HKLF@}3`<}ol+v5qse{NtQf`_^DqWyw6OgQ)l;xc-0A zw8WOgH>IO)Mtw-%m-`~3ngq{zQQQIKdS*Nr+oKKce&UAqFm+11^^)S7{K=!6oz;Qw30dD zmvm^6ysrrL6Nywp)QF$f8bw=hM%(Io({I%T^^V?XT8Zgc5$t?gf!>a=1T> zoDc~EgN$aM+v*K%G;&|7PZLMw!zRoPtZfLCdJXWd8u8pTo)KrB_4sW-q53C6Y0^DBscxg2eIaBe2QFek!wlsKYkI zot8Z0dEge_dj|giq;hfwdGFGv)GnDrwY$ihKqf`>7}Gcd;F?c!EIQT92z;G7UBW%( zfIWp znh6eGZ8m2ZGFvd^8G*wA!3U;lt*Tr#hG9q^AG_sYjE}*duE(J#ul@yJJR#xOd;{T| z4;yQaKlM(i#!m~_$hj~?rwyt~r}smGu&MlRtlX*`<@mnlTUDah;hzF7hi7-L_{!qr zN7FnuK)%$pyOJlKP72tBAUaO$R39}$pv&aoD^>hO<5>Jv=W3oHu$NBpEJPR#F&S*H zViJFqEKEki32$2ZTLcx{b3@wr*TgpRSc!Z=cjnl%?E}s}@f?PB-8bGNY>7jk#KbW? zWFDby>>@kaE@jj0ZRWb0%(1eua&6Es$z>&&?Hz{hJL7>^%UY47cfa57_hNl(M2h0_ zA*9;L1?;Q3YY^d;8;osYax#B(}QsPN26a2Xd7-QVH?#F?<*icTAS`=V?E;6r-tKjqX=ZqTJ zBU!=nLL}Ye$@P3Ld-uUVO5T&(GrvS6y{oXooc<+Ym0|PlD{}(ev$dKYg_<1hD8Cuy zfcYv3t@Z3awLA+gys{+Y%ZLojvJXz)#~%LJpht(1 zEH6Cdz*8H_u0#I-+w9*RJJB8*)9$=g;=LP8v(s+1d2a6_f-O4IO|r~|#$!jp3P{ha zj1EcZSD&))uzwkSx6gF`4z;zk(kz1sFE8$daYWlmP~BLwk+cw`WE_wbXO5w*e)I8XJujQP*t69TkxZ81iW2rZEHtx)o!%!u|Ez) z_J804Ep?muT3h)RQz6prn{zBNzB1A(5~dE%Wwd69)A$7r1zd9$1-9RbNF-=XB^&Dv%0)gNPcPsfmW;Xd_c3{L4E zld7SY*9E~)-c|whpvWUUusP!gCa$L?-R;!upRfz$MAIQxp9j=Rw>x`ej(I&g{Ok5n z<^7d5%Qu?(3&-88Oy@FQNP5hF>QYY8*kpGk{RcJNb3q*ON+pg}4->0!%6fiPs%h+n zYfSmC?T5l^;G56C+rZO!Pf(L=sDpD@%6b9u{3p2dp4G>$uI{vpq>3p8%oBjnN{1^d z9^?J-UuWwrZGCNZXQ)FR)vd&B6!!Aqtg)UBN3reRzBcK)R z0@q55s|S{50KBd{lkuJhK~8*;6`?CUmhz-r zLdm4b^PsKk&D8;~gXICK$XQaSer*s)ol= zxwr~pKorQFlla2{!sj56dgiSE0BxEFiLU%Ps(*;;P+a(y{{U1PZPQ&s9GGp!`3w`0 zx-gOiOpaJdgNzYZ?*jdu{hP_AU-)%k)HIDk@nnUsPNN0PVaE$9N)#(?>(>MV0m-ge z_KjuZAF|8)O*d01u30IK;GX3l?qW8LbN6X7q?{t|2dTlpCz?}kR=p9$&vv+l=%XgO#y%_tdc8dJAuzMW{u(@t?3PSe`)s#Bg@=JC?O*R zZU=D#jkqVSI%a^6#9B4={JM3eQ z{{Rk;dk5;M_*Ta~$m1tC=7F)$ZoD0CnntjUv&6fkU4cN5l5(S?0i0xf*G1aV4Q|U5 zFlf|*#aIHboP%0`c-k_13Pq)AUvr9WjMM4nVifb0CzFi!&Uo!lp}CGox7#q2c)&i@ zolxwiYkms5z0{@D?eCW6XF2jN7ho6|01?IqZYhU=?O=mI-4a~H-gEuot~0r%&KQH- zbjCl{tRrWdqEFf!WJC{N`kUB$XRU80+mY*HyEU-ds<}07> z3h~(Ik+{{Ro&+dh>y-z+Xr zv~n~4&|u*1Tws1&Q2Io+*OMeF(eg^*sVDRt(akvWLC175(5&W}{aR?5R1d{5O~0Qt zZnv^q3z%C`NEb~ie9iYGBR?Q<&+9`jhjD44+umvVy{4TkgVdK7AS8)ME1V``ddw6Ti%FF^gpS z6dsw!IqY~j6=Br%T|xBd>@T#7n}Exa4YUGZKOFF4^0o?#N=ij1Ji~KmMtEokDYYa<@w+)s?Vz$m_sz zI~)vtl^_1D8qBLMp=kt|0G)_SeSb>U{_@vQiG1r1xXUAmO+Fj3(cLSPzZztX4Jcd1Td(h&9nP!sT&18}`Pe&u`ik`;(;dZloxJ2aci_C{A z&F%62@kyf8mRtbKAHO*@k)uAO{{VWPa+Zn@nJ7)gMn8wYH4S{0pTTBW7Fl=PTbl`= z{{UgSG44ZAG1-_%!OEUT7{x8K`@Otv3_6va&9GdVB;JxI*E|o8tx7Iuizr0*P=4f* z1v@@YI**b13eDM8hXUE8P0RyhgT+SDd2RbcfO?UUpVE^x{7EPVb_Y8|aw{YJoOH+5 zi%Z8)e6`<^->9Wbe3K6Q45os%=IY?n<_uWdyCsX(BtFNAdc4gYARI z%>!ek+v^XFUU)-p*@ezg`vaZ<`tw$}_Q-eA2ekW3mr%cgJG;yKn|7HYd&_MpBZVYv z0?g!xQV+oZ930is>tX`dvWv+;$wO|WI3520(~RFMJGy|53|&zxwtmcSzXTIw*t$w zNBQI~Kdn5KH3*PyRr1^Mv!W8i+od9!?@`ok9$Wnqdy8NH05ZkWSui>lP6;2CE3=6UQv1c~jt>hyI{>$H+C|F1It` zBe$A6Wf@6Xj!r*x<8uE1-IH6#tX|Ak8Lez(cU-b9=u$cBi3lh16}8$;Zlmsj1n~pq ziGcx0{uUq5CNenYZTnJx@<8*Gmq}z|oaA{<>mWdo6dbepK zU-Bo7$d`Av?*9NesABOYjj|Ib-n`Z%Vr;Q3{2_)(@|TT(4r@oc#|&NOoY!xkh~;eAZH6qac=E z`R`FRqAndbp*@fL=Cphv#tXN9dU^|Cg6RRogVXFPK`CLL2sE@vt$=bq7*;?zB%l5{ z#S|78*B)ClU~Jp`s#x^}!+CAEaoYrbXRQtp6>Oc^9cWo$XnF$ZPEIKUv8=PG3K`YQ zbo7k>04kB=jzBVmFKZV<;(!3;@upidF$T$?aZpnXVJwY5AC{Dn31ob%J{8FO34g11pYPkd-!ow92 zmO&;I;jzJPL7~LE+YA(pdw*)$InpDB=R5<`6aa4Vk6P_)bDoBVob6D&q3l%W6_&Zq z0ALS6pY2*PRyZ;vXWO^>QUi3A!tG*yPCC&l?gn$YeVU<7(37;Q{B;#7+$^K8Z)4Vh zlQhbzM41DqILNO?%l`nh{ClCu{S8FP>f@p64?|dZIR-X(+qUHdQUHu$x9k#oh3bEu zZv>INjFy4z=8Z;Ulw+@OdKv|_17^y%kr>&IK?8>V;-@l4r~qM;YmeVRL#h6Tm3)Ph z%!znBi_l}2I9_;T@$Fvnu3%t|8qoZP?hHzB@<_kNW>n4%Ud zADeDhJ3Ei3`!o#p)6}dv6))`LP$ED;7%Z=o`JVOZ z?$bL%0^k9T0jfe418;M7!DB^oI)Zt}S|)1|a{z)iP`S$-ckNNNk{gZE5&;C|PJfk8 z8pxqO?r~&t74jmy(C0@!kuv>ppZwBUv}NCz(fR3&e>%TSb@z8sBxY4+ z02Ks~enk^5oo>T2MUC8oq~|rPbILuC@kUQaCcG2r(kW2s`>Z;CMw)2a!nq>l9$3HW zn z4iBVqfAd&3^x0{BL|5U4(W3JpoWjZKF}`p}{`KpN$nK_AVyNC&48btj{{H|`L|GY;X=HBUi;=gyeKl`w*K|bYrAIhrc zJB=~OwphiyxbvWVg_L`+?0#x^87%@dQaZsY0TtUAZ{a^a$BfY|e$zCLN6~GtySZS? zGe}f5J-L7OZ#@V9?ZV< z$d|@=&&T$zIVE&;MY^-(-?s1gG_uv&>s|XL2Fmb*B>F3Ita|1a>;C}2^XyH0Lw}~< zXgAW?YPND)T*T#Pwz-U{3^*!B1QB1di7;W$48HskT-)t)>^s8$0Bklb{x@&;9c>pD z`mMT;Gb5mJ`|I#|_BGA)+S6FagRG5qyGSRzt^wUx@X$g*msIP$n{SrTef-h`3Y-nLIo`hpnudl9CL$%{cD}Z zw)bQUw-%*T;&ohyJm4@M=Z(Xl>}qxU>`gV;BAG1#QZkZt8Opvp{b;LgIq%iv(z7J7 zfacho%f}^@e()T8^V5olbk_T#m~M%^MGq={nNRd0v?x@p)^axJ@Z4oyHXXtKgi>Qc z5#FTn?7G^rbQcPqpbt>Mb^f*JC%Dq3Y!L9wyId&@lgI7IBj|CEdSbSk`Yl2w7jZ0C zYB0Ak;0Zha(Rve{`iDOGsA85&36?9E7HAs`(8zrf1KbhM<_#(lX}3)-`YEn7*M=`L zD59FmSPYZGs>*WVu1c}CQQnYa&?AdWM;pUg1N92%_8Z40a1X;U9Bb0K{H}CWNp68#!dE%oJ&tgK!8j$0ou2sju@AVaR z@GpYTh%T*%T5b)i` zyQ=t(b7yU+2sJMZnAzgicE%nXU=CuEFznxW+%poC+m>-v9dE>1kBBv?^_^a5=DxYx zmW=|&h^iGLMCgc!6%{dn036gh=Zvj=`ku4}^Rr{`tkMv>R&^P4>3~mCKcCGJR;YGk zQ@Q{_{vRgmIF(3XFhrQkZXWskxZ~s}WV*q?F5GPg;rjlQ5AQfFV; zIuKQ{o=?wTN$0<{Ydki{qF7@#_iUs7TRB$A<(EH)x1{^=PAxCB2V%8pZJ48hh5?xg z$m!SP>sT-cR(oR37nV{zNfcV!K0V z;zS^_%&oTobtgQoJA+ltCr#{0Isy`jfcwGq4g`uh`X74L(rahzHxI;Qe3i z3&l1b6Yxc&>N<`5p%ion9J4ci>}oPe_|LU|fp}}eUJ&~P@FMB@NwdGy>?ShYYi(?j z&3UUB%BoxEqM#%J(N`>TNhW0UE2dd=(jnUr14~ej#5ic<;rR8pnxX{{S7kd+k?JX)f*^zj!F%5&Nn-s*alg9V*$WYInNr z-`_QPzVUR?suPR=pmZPW)Shasu1jO#`E9RdvO12XJleFg&ogf^{#oh zJu;#8At5(*6WLo@MK-0a-%sXg*3yBK&O^5Y5w0_n`kL!L5Acj$7qpq@pZr5vyM8}~;O?LWxXaT6SMH7duPjAoj2OIBR3(YfGw@ckN=}Ji(f;SG#JEJ1&fNdkvr!A1saWr%gf4pudz zUi0j~R81RQl1sk~UNJgWrbjU!{{Suhi0(i64)hGs$zdppZc&C+fyiO*4Si{^ z_$aVI{IV_z)zqr+FfW!i#i9wK+Y@Ws=SrRuwRg#Q2o z`w`rJW4NxoIlVF`3tXal!uDH9L&S2Ys@Fu(^&rTt5d^p6L%=8f_pWMUYbiir9T)~l zGnF9pBi@@?+)HfBJWktxcn)aG1tn;h$(?p77Gw<>`l;$ZD2Sp2f~ShB>AK796-j|cg&L64I{N>4#;BcA=JeV_P;?Az{__cQ5Q zrke5?tdR*5q-1Uz(DWzN3l5}qrk)J@Lh!lJnhzel`t7s7l@^D81ecJ)s-PJHeh}o9 z2+fQId|=g^{wDlUWiGoOl@^*H)ZmTYdx;4Iqj02l=u?Vz6+TKF`}dwJnaKIg&uYh0?rvTAK40wbNu*37P;=h%_-tvo;Wd8Juu z34LvH)84lpYbu2RfJp!hXQmAgE}wNIw(z9oVkG(Hx!%1t0oyM#(Bxx+n@~JGK zakmORg=Z^ltJcbvzhmNk9{&JAvim8~TSwEQxRdYNj8`TmoXX%cGw$BYfx9OoryZ){ z_JyQf__M=$#+jtt!Dl_##8X_OI6=4`2<2Gg8@pzmG2{{|H*VE&N-vUIGL+jm_1}kP z@O_q#WvK?9CygU}xX$G>ZS^Z>p(i*esKo2pSvGUPW55I8R$o9?YFkp*Y>ko zU&9^Ew8Iic<0{of)jrQ7Li2cj{(E_QLvrRsKLPrW&o!kA)lil3a9c7*0?F?gIsC`> zsIFv+*%_dT?_B`cxdZg*JO2PGO{{(MLNYF~WpcX-E#)TskK!0Vhv(q&OaB1%b(%ru zq*qc$kU#u1g!J|U`_Q1Q($2T4X)|eac{h;=WseMmdbrMV4?-!$hmEypBbFIuFKsg^ zk~P9)smLRaFl(w=eXMv)X;8xP-A_1&X3L8uEz^~391-#`ekzIL7Sk`hH9v`@v4=@% zr54(Kj8iOulpj;bpzc$SgY~beSzOv#Ab2hcDY!^`r|G^E@qL=l;&F9tsGRP;itW?Q z$3($KKt@J#K6Bc+SBvy5Pr$wM_PhOK6I$EtMcNgb?@*jD_kk&0I8{OH2Di(ng(ir`tiMEUebiwaO&6&M|}% z6#KfZ+2awL~$6pvfF)F#BnX@TL1n1*5VlU6-C>fRB$Z7@s# zzzo}Y{w$B_-n8)#ghrjMO9hImFF_(mC5l0lh7Jh_I61-U4HKkX+`7r4U)x9bpv8i1 zZQno-PkiRKl%nHk&MBv|!E5%N;teKa9kt!eNZ>3(fFn`Z0tm;@iknlru+`n?v4+`o zTcV~$R%nLd&V0U^&wSE7Z^D;x2qsHep^8z`W9dVI$RwPPn)Z)tb8R|8VOdp&A((Ar z?apw0tD3R?C}`H_)Qe@jt2B@#wxCXgMnIndkH4pd=l=ksR%_eItm3tb@t07DfgGzK z4q?YdQhFbsj8!JaF{er;jItM8G;O(Edh?%env%y=lGeDV)YDTTJ4WQ-Yo zB%V0UOn^_Q-CkR}eb*s3bF=WAaw(;p_t!9nicxOT9FcF_5!`1KWL6UI!jKejayrq` z>2pOPk|VuG@U0F=6iw{E#1~|DQadQ<7_UE{`^7zqW{NztthwxPXe$`N%QRbOZ^F&^ ze=nMrcxQ~MWk$*N$MvjRvqVn!(UseKG+Qz0l;kpxk=%S%78t@TrS0zQi5b{808f05 zGxebEVYv|>HZ7~$f!FIx16we(zAg_sPyG zdruMB`Fn3~qJrS(_EKAUD4!TOKd0(xUAK$aGs6a{d13)1LSZr#Zhbi?YbUYf(J!tg z+$Zn1I(_3X$XR09FaH1`$UhuV;{BlHy)qvV>Cs)q9Q#|#jfVdKCHE;G1ac}UFLd}X z3|fAj9^{iV8B~)O9Bt>EBOU7}P*LdAA=(`BU|`YUW2dmH)ZP`; zH_3G)tPAHG&>AtjZ}k@*9dV50(wVOAB5&EDd=9(1{8l5rHw3JaGz>cN$*STj8vg)@vXg=sp1(CXzY_Xc zhEE)Hq;I&$Jtj;Zp!F12-V`t;NZmn5d5$p{Bmu5WigYQzsbfgw;z3_ScDoeBy zV<<*_L;6>h7bJpubS8zlxm7AsKyo;t#Lnj&0ZxTshjEdJY%1^p8LeW0)r+DkZv0r_ zpPG(4)C2J2+dbA2dv(;tf*{&gx&4=Pta%()-0Y7fjwj$x2DxCC?btOk#9S39su7XS(Vvn|2jx?sMJ?nB;0wmiqhnmXbdyVfKMG?Uaq!Ev(qb9hCq0G`H)CbbV zTlo?1P?^n`{{WHHB~0~6hV(ps6WIu*qmKWX*>@xciM?u*X`n-{_SyL>hJ#n9*ruJ8n-@)q#o<qnKfPNO;1iN7X?5+f?>N|a44p^CXHN80uV8mNF@UREOxBm7 z_8}u7)BFBj)itY|QL|Y)Ws&nAl(_Q&>5==b@mv1@iP>t9tTOqJhRDwZA93?QYOi$| zdx>L;NXR~dH)J1!(ALSheX=oWNA5$>s97)qX;qOBZp3`hK^5y;wcM8?8&F&P$uL0!J^A?Jj?%SPbyf36L%m%759lKG6PcAi{D~StmLk7y@9^cxe zOQgLAa52vpRzvAOKTqjdxytPttZ}X^t9fpg!6yQAVn7~X+z(6ud8O0o``|5Yyz*8^ zPX&ilkC9gkn@_(=V!MG%$?8Wfw6VqpPkOCg-riYG$#noxkgT$i@aSiU*ia@O1 zsNGIg$HD&8UglG_Pysy%=xTwa&TX5?jf+OZCKn}2p1B9HJ&#X%wc6?qaTVBihqU`} zQ2zi7i`)L{<(@tdM_e*;TME@QyA5|uxYKo;NVN+I#wE9zcLVeF9gkZ0kL}a`5AL*t zy4QZp1iFoimXb{{`lg6=J3F}l0QkPWN8Cn15&gD8j{e_2PnwmKmD~s*kHk3yRxT=C z{{T~UCmk-n55`I3mdaMQyn&FZ!^I*LVe&hJL%c;ulHG|5&Q#%)_Rsp)>37>l{5N=a z0P;W$zwJ61H49iqnXam_7clxnhyMWD01kQm;4|-@wfX(y&$EvZ{hRAD*m#c0TXLr{ zT!hSXFYzmMBC?cRd;Y$^^Y>P0s$Yltd;R|ORuJ0V#3PYb*6gt+eE!MCI0ZoToR7pf zIp^FCC3w_BGL}Kk!brw_y{czeu9$5R+ssENb`nGM{nOLqKGle&SQ(?fxAW0M0U2$j z8>T_{J-QmmWJVW=8SR+5j;z0mFnIN2rAVK4xQWET?bbg9D6s%@}jM+Q&DKvC}ml9Dmp^D{L)SpQF`xV#yWSQ&<#8@;rsnxP>)T5 z1excQtT0M)jOsTtll!rvg3iN@qZMcI?~P!&(QN!D;Hf450MlAzqU!ed@XM=e7~0oz z00!9CJ0VZpPN#Du)NY#u)2xx+hWolo5CWUz^GW?tO9nf2Bh6#d8o6>|7kQ#2g=j2hVUb^{uswc`Qs@ zClgwdS{s_HS$t zdL?Xy-NbD%Ws%RRWIU7g_WdYGW|Ukox=g9``D`(OdSm|pAI_ggYZ>3Sag2-&n5 zRRmB?tK6MF#t*#6`SRit1!-ghAdLPa?7i!gccWoF%pPsJi+4{Y0X|1NzNfZpMYPp5 z`>i)d(e0m9)%7VB*3uZ)eC!FpLEn;blh_{Ba`3`iTxr_89wLs===y4j7_<3T%R7>y zD}L-ta_YkX4CEYVz5SX$g1*Z1DPg0wrJw&N85Y z2m!b29T~~`_8+GBdrSWShR+Gb;Y}w~v~RQ@5XX-b>rrlYuz+BjC<>{^u_LJ)n*(4~ zQtCGv$+w#1JQjASVz9Jl-S>Ej$t3r7JhOK^4gjjXgfnZpteU2v3AmJ!!*L=poP-4O zeaY^5s}`ewWuocx-|BLREbZ5GvG42v?n&SedZyd#l$F>vudG^ldro`(M7co0B8D-# zN#s9CsU!$9m1bMX!=XTyaE3pRH>e;)q458M3Bo zbx(ekSbK;DFFko7^?pOh_rhhe@nX3^{Z68u(@5b#Qpu4 z9?Uv|ITd7(aY^pmEkRu$DtM2>x1VK~$){@#E}`KYw<5z(+n2Xv&d0|>JC28{_Z2O) zt)>(X>ov51GDxQ?%6brM=)GG_v(_~GjXzelj`GIgcFhcfA&2%L@(AP_`PanW7P|W^ zy%1cqx{rddWW*N?GbNLs-E4pK!=4Wn(+r-O5{>=HHEv{$mTNK!_gd)w3ooh4o?ia| zoxMT$u2PD0ySRo#w({YT$03yTAlFs7V(yhGwU+pi88+TG_+B71n?g=0_`_IojfAw~gQC--}XW2)!B~}rrP)L!ODv|~P_x!m(l~}Y(F%7%SIp64yocagP$)njasu(kSew7nG zdRFpa40bd-aHk(i)fk?41HNhpBN)wPn{Ve(vvKwJs{ucV^fcFO{GH1j(W@BCWU1qo zAa+00)eb0LJQfmQ4W&9@j>K0^W5z$dBGt5oxRBjj3{Fq&6F6CWWcx7p?@p|^%Cuv{ z+9su{>i0uOg(rgA;70ExyD~G3oc8`=n|RMmve7iPva$1_o9`Q*6L1*`$KnglJ%JrZ zCW7$htE}j{;{EyLSqq1FZXg9p@%upB0BT;gm-kB-H9=Z*z*%_kaW5p?Yx zA5%xuY&?0`T(j;9&HJH&^ydSDGfkzx@WsXX)4V|hm%4?tM5W{x zDQ~rL_`G(y6`^zMA(#)or7h?W|d1j^{S*I@~@(D| zmUr?%#21aAWpbyD303K22 zFa+Zzx|5ve6z53N{Dnh!W1HV>oPJ)_ThJ{oyfYMnS>6Cfe(xkFBez#7R3B_}j`$U8 z(;C}TnT4jAaHdroriN1@kC)F2`HWXI{@pH(qrUqr(935kZIL6v<1Nqgs=l+P$704< zRYXjGaOV_$pP*ccB?jq5x}20U2Ltr})FtMZ<+O$weAUi8qn@7N{{XE{Jv}kYWO_~g zrPd<4c2K+q1Ci}cC7np}F80q5{4JhG=T!ThJ*}h;6r#6dPxSb1CxI9PGy{%Q=0DH4 zttA!NDf$N0^rwP7@Hd*Lp(By`_o}hDo*7h3cCc)2*_?h=(;~Mh8YNRCBy!zC{8CL@ zL<~bfrARn9?kUE8n4Eo~Rfe`LWc8vY;`_UdhN>gwgV<5Xoqmh7*4i8#*w&D~79#6ko7S_wiTmiL5 z^RHaU8NwDSG3h-8VD|KB(iQ5_PILYr=1Mb{jen@1?ez=DhnIi9$R`Z&ATJqR+s3SGo>PeE-lT@p=filM2aL++!W9A z6kO41+JtQOqUj&^fKO7NW?b<~CbWX=H0u-ET#w#_ZBl-42sIQ>EcXR(uHFwU1dPWK zIX=ucdVZiEr7FFJ`X`f3jD87TL7e-4=AbStP_4DRQWMGCpq$f$(x<>_MbN>L{U8*91%$k(aAhMP#GNS>oOAPkh205tK z%T%>v9s3)|q~+0=dQZl1N6*%ZT~VzGXg9zPO9kYTd;WhERi}tyML&9p=2ja>{5c-S z-iv<$NDhAwrOFFwZR592{RDzVQ-JPt8i1bknNxx9oj-EGeSg zK;F5dAPgwT8O=d+r$}W$#dh_`YDRVYs7pgCh}}jqq%xn3f<-|Vu^g?K9HIU7V@*a~ zv2tGn&$+a&%94dDbN>L{N@95ZK9azGw4F7peS^#+%+GEOF-=YxReeM7@CoG5(+ft@ z+z8^`w51mN_>WBTRwRaf4edeqw>UuN?b)R%M$R6{T5<>&= zP!$oM;m<`m#bq5+uvR_rar~$n>?`&QxrAXPBPEeWNB(PdnPgNF7EpQI;~78L(1F3u zS0}bOsr=)BGn0&PFn{0cK}eZ~!^>oL8K`{B$%1k0b6CJ-$~NKi+M;O@4ArMel5I{2?0WDjxZgrfyDWy=??1GG_DDJPC?Ne$N?&mtmRM)9 zUr0D&=L7Rzd-tr#WgX_7CBnPdBY;e)l7r-d$Q6w?+SMSpL&f!3SE10 zIIQ`RNWZmAXT2L+7MbBC{jeEhg&n!#g`NmC7FLE-ibwov8vvhwtxqAA-ZCtmWK+>! zjC~D65iZahg=i+nsO=daC-{fWQhv#!O*>9)Ht?BT%sPNL%{#f(APJl8Ih6x!MkB8s zj%geH=Gdr^EcWE*&0lWxQ^_6dQMJ9ux`9az82n4}RQ+gwbG8dwLm4#9J6*J0vXxG; z-~q7bxc;;p-V>Tfm&-6*MzQ86SNsKW=^%5+@6AtTYOeuB+QCKv0~~u1-n3S>()Sx- zapvHhtDYMp0CSIiq*79ANsYxm(7km@ZGPvJc-kEL$r(RfcB3Nk7vG?eT*8d#K-{CA zcm#9DKb3gQx|@q@(8+Nr1YE>{OAlvWKT%P|;el%@H*O?WM#%_UAo~itg?-(bah?6W z23YE=a|0H*iscnf;HX5Ak=t)W`Bb1CR@nKF$9rm5K9}_`(Deu6l*^*9f+vP){Iw=l zF*g9?q3)-F&L}Z7@)DBE9j>N?Div~$a=DTB-NqzfA9I?f_hM1n$UMVt-R2cwZBb;?Xj1b?%54AnFxoe2U#-AcS z-W_2(iv2Uxf6{3c=7%&E@@_HAi_%!nQS3+V{{X(UiYA`M;b*jVj&wX8#Cs81eJEvD z4KhBo@j9Bbq+03)f~+oqj!%}y(Br<+dVLR1n$@o6j#qs!2Xy}cI>r4Y{I9cobTw1A z*P+z+M|k4O^}3J=jq%aG57VEm9*=UZ8r-_aIyBkL zaV=JQmA(9aWxJ8c434{AHuhou^Hu)<8h95)@xGTXovqnJcNC!FHyGsgDBrr(6mr}P zvpvfF&g}5}xr#yc?Vr=>)~qUAs22!)w(p$d>;AQyTt7$q{$`2t+4Hh%wkH;}uPk9Wh{u`mpt1#4Vl!6vi zaYuRrk}{m+T@YwdGVx_g~hP`Z1Iu^=S0j!7)1_;be7f-(TeN}l5&oOK^K%|IlIRU&Z2 zk?E0nApC>WcI}EyUZ4Jt^bNn%E+)K5qjgvncEqZ8C|=>S)sKAjH3<>jjke>>&<5+x*8fJo|3%e@D6)prfF`gJ+-8MWUQ+x0fyG~HacJq{{S?Y-!;4< zc9u=g(jvryd!MC!Bla)$FKgj#Gfn$Z`&1TJ(cT4r3uuieoA>Lyow81#XUmL$e6iHy zJpgF>Njo1s0BgTy_ZHt}-W~Bz+K!~UXNfLdC9%@uj3v|9@S<5b{7y15-lOU7np+W< zSGl)!wOb2VWAf~*Q}EkHef`|^W~N>=@fM-u&lcTl8q|_pNMx*A86bCZ(Br;P_SsxA-qsnvMmprdqNXoTrdsKzREpb3z0 zK5BFWA4-WjjC85cXOZ-z1d6z+fX7PF1#WtLQXK z^FZoaZKkhbb787mt<{yxW;x%(^}Ur5x76Xl-qIqXMq`Hl@d(Qo$w87dL5K~vOr=9%8C z-Z^WTb-1Lxv)Q=Y!^)z7aIucf{{UCwC*rBPzJ-1EYjBS9om0b-pV?g?%iFjA0GA*i zg@;dL{Ho)YE%9LSzr>HQzQeWcPWC&(k;w8}n5`_HIK0AcWyl9<;E2#Xhv93QeWU6R zsd(E_w~Oy9X=!lq!xhX;6UM3O%PRnKK*=NmcUNf9bfx<(`wr8aSex#erlkaz6GjUO z-R1!KQH{t$>e%myvnjWW$*`1IHL+AQE+j=1K%FhI)E?}mSfP4m5Mc?)`O-&FgKH@o3nIr zE2!EtjmI6&0DOLQ<>OTWR0RNF1sDKO_Aanm#U54D8Ce(bob{rZ=ac%?#inB}z~ovU zPWk4HZb6|WTvo_{S$ditPP9y%XEZbS_NoFGY!37+(yU9l&MRr;3J*XBQ&2{RcJn0R z2jL&ylXmG2y_vFq7kFC6E31tyW+GNL_fkpfjez9|2Mh@01KOqWkka+LTT7q1TStF) zY_i-vl-r^XM>t$?N7VaKx=pllPS!6yr20e-tvpv#4o7SdGFOhD(u(mGfu`MycGGOE zw1iS3NbRS@at_R(lE8l>Us1{`X}G!IF5blkUOccMO?EldTRD_=kn8N@$C7w*;`2?oxo5MTlmQ459OJJ8KOCHVS3rZsJ{r`mZqj>; zCW|D=Z8UQhV~%$>03V>@lKquvS^oeLv(`k5Z6e3!h}tw_0m#8UzC~U9Md7_J-WzLm zytDIN3fo6>ZnOR2NzNp7DimkFNv|(7q4iq-00(pwxF=$}C5Lj%fO7O4AoVOzHY&o2Mq6sb@SbatSXa zj2Vl4J-@9&?QJZ(M5O`y=Kw|c_O%v zjnbT`4f3a_)|Uo{$uY!`te$4$zBBX4`Kc_g-#~??v79hw^+dxXKT6BBmCRmcn=Ebn z>W`4$Jk@Voovm49W5FC1=->IL70J^jy6C=Ic&9*_gqnq|#jU}>FKqi!zDk_am@YKy z#|F+-=l=k1L<5g}ir}+qZ7c4K?9aDP(z+LdA(X}DTgON%p`6Bz<`ayZf;%62F2z)CF4g5orYFl&kYrE?*Z%;z zDsS-lkST^T0&Y@Km4NQR^gPmsy0_d#;)YCf$v6kNs2@_WR{O2^o#0$Bk_O})e?mHn zbzx(Lxn(K-A9*}c@7pYlcSJs<@(;fhQPeG2LAAKBxQ$L*$Y2Y76!kx)R-47Pvt25c zxQ5m>AxO4TG1CkOUf!yNYPNB_P(1DTA?n^ERv`Q~GAQ8w1<0~XePrPI5xk=q+Cr%V zxICZ8kIWhjCB4(^v_MD4ZutEuMb+)+9!;*RWp86CJHtfGMn8CfJtwaN zrbz;wvB_z@Uyt4jcsTAk6me_NSseCol~Tjf+=k9``Svs~_;%(YPp9{RU+4b-nr9BX zVJT4$3_lZX{A0dTrA;N>lZ@GcaPRnX2r2M!PTC4gPac{h1hNlosK#iUdDh$0x>&jX z9Dzrs*i}UFvCkx<@mfk!L&jYXxWUCMu&OtX{xGZiQ2V>!ij-S4s`AW_8jhGaKbO5N zV-yD?IX$zSR4savNIc!nM@~tlL1AHz;<1)L_jaP=kYfyX_MlSoBEFtm`PR*G{6naw zD+-d^%me}f&r)zH#hu^yU9&PuB9x5C88-$!vU5r;XN`v5ao&o#`@Y!O;M}NkNM;OA zVlWPWJ}O@OEfY25x|F%HMY*^Kaf^-X$3#8*>(`;PeV-huM^jI(Sma^x15&T;-yZKV7ZUS-uA1hMn zzC4O4MXsu+o~%dq?@n$lblqY`?8q`CG z=2iH?rT01<@yY5yRQ~W41fCp_fYGRz<8d5SeXKTEE$?BUkswy@gGMKl<|~I%KnQcs zA5UtjuABE#GaJS;$=-PS*7s3gX@PD-Ik!DsK$$@LkLYPq^gCtYBwXc*aykY%Kdo%n zY8TSQ4{j=p{{X8@5U-kImz;jYkVnY}{c8us5f;O5jq%57pQgi^br&S?$8paY6~Ep9 zAQQ>=s@0CEy;FN2|Y0$Y?(XXVm zkg)Z~``q-YZ{>>m#LNqc6lElg0?K|z?+@qmK}8vJAh;Mfz|ZujI(D3~Mp2ZNVS(x0 zicO`ml5DI!-mWjCySLRKxwkQfDz^{0MleR#IsCd+?@89C)gkkBIN=d8Z;D8c3XYf~ zxT@vOkda=KYaR-X()vSjoMh2<+It9QST18#&LfI72XXE&dKx6-BsixM&3~uc-!rI{ zwAq3HUK5id_5?RxXe+$}_%uP~Tdja(hQnZcj{g8d(w9b;8dC`^?N;hFK4g$jCzmoY z9Z`wF8SO?|Uft>qJohcOk@^l<)^%wDK~A&3U?oD5A>oAq^yl^Z*X^p+Ce#Ar@^Ic zbcBX@<}4&b9GS)lBX8wilgziac_CjkFKqKnuC!SUuJFN7Y`6L@y?p&X2!zXqweweTdRe2rb z)}h8x*<6&g!Q#6N3|D|7N!62~{{YQMmTtL{)=$0w*v9TzeZ8~wsV29A{06mUXxXrh z)1PDPX?^G3G`0cZDEZ;j_r6bJetOa0LC|Q_t*3QK6>yy}yIp>xvH1SAH2Snwp@q8$ z)%hVwJmawF4K6n@YQTNr0?q*SuLhyHv7BO0EoBNjf2A~+v0L<6Ah;5MY-P;gbG=Fy z<3B^3()q0{wOFQ&tpH=Ozb~ra5<794*>rF5dL&1HMA~QrZoGkwxuArm8Z2paN7d9e1kx0Iw_gH^QTVN z3b}&A0K?fe((+m9;JI7;ezC@~UK^}+i!KYW2R+s1n%t{;_i4=O4myp_W zgt~~_+8z>AKBWHue$~*j+qmhR&leR^+A4QCYe_U}s4Z?{BRR|Z?~L(9C_${)E}O-^5;)WxVIo{sK@zoMZ}0dKEFy0jEfkzy;Zq{WWe~^Nguoa z087^IFEvIh9|vQrDWSYaftEitKqf5i1RjM?b^e{|SgdA>HBB-^R8!0{5~S59FB+NRzFF7#ACqQ*n1z3Z>2}~)Rs72=og6o2?5Dd{{V2Tf5^pQ!9>oi?4LcTG{k{?|UkbiWqbN?OexT$WO!YXY4moonVfA%Yy`2PUx($inJk=8J?f$5M8@$BB>yVue3 z^^@(N{{ZX#{Qm%-<)fbRc>e%{arplLUmxK7uMZsg67CKAvICxeM|#t9+pz^wL~fw+ zt@N*;zS91~zUzB&C9q8<_ZbSw{{Sy=eeyp6KK(uGf?iqO=@(CHs9Q8Luj7hA)MuzZ z$J|$$n+8uFTrw~8{{S@o{_c+Kd10D7p#K2c{ZR*$9a-(kAqH6q^)EfW{`dn9<8MMm;GzV&`gqxlF`ky2%S`IW1rve(>#jjH8oaya8!U* z`6D?~^Y!_yf@Fy;cV&HBbCz6p`K&xsT5Vg1kC!Jak?DLKWlw&6t5X(1mfW){^Zx)^ z{-4&D<{;}^#FY?SFh@cHOsSKM@*5p~y=lVSDe~>EofRi^P3M$3Bh{a$KK-dn-9>jC zmlv6ebqkpyP^#bz1u8##fyn&mp9*+eTKhurHl5+`3)wyXtA8hzYiy^1!6cK}Kn0nP zKnba9&@--mj{S{ke`sH6rW@T#T}Q$?L~VVj{{YLFC6W|i5&{7$ADG-{cM7g^kzG&i z1IHH{*NCrf(qxlS3f4BF-9lRFHUMo{EmU-784V@@1BK+}UUDpQQL%C~cnWFG@q?<10LR9KI*$Se;Hp-qG^&zZ=+isn#Q9U z!E^rr_OUndAKqcmab0TC&fdn-3riRh+S1-J95BW(v8d<;O_Y_AMu>>15-d?hp-~Y) zRZuVh1AqV+#S)8AsOg`jOuyElmPn(%YE>Dn7og2d7N)@10!}JGFe|`deAdBp*NQ+% zAHQ7DY0yxpD3l`xlLB?dc&xVrtzj@a3{dxpaUr++wa~T^&aXQ8A^hmZb00s4JbH&b zQW!n_fl;t&1g)B9sLRP6=_Imq$)FE2l~yReV*p58<8k(`Eqgwr;vHg1by(Ud(Clbf z?fb9?@TbSQ?_G(U{{Z(&wOu((3`4{njmoo9Ve+!P|`HGfO2k^Cupk#-O?CZoHIKPQL`7`~;OpTWZpcn_`%NECIzAKtFJe18{#y_c1`)Ip| zR@SAm*R@+nudUIEiVHTmxt?RnsC*T+fq!*N24U-9cMNjvIt;KNWnxgj>xvZ`X>KLC zl0zlLj9H25?#Gk$$)}d~{zbnYnE>?@&p+u~N!zep1KfadoTwd16jp&9vAub&w)txt zZC5zn{RTdiB&ogG!6fwQ)YmuhhPicbt`ln``8J9oOmXV!=N~7J%CyFlMb0QW}U6cZE+ly z^0GE?tf%>7xcD`!vEJ8a9KKG+<_27^Ls7^$s{WJWST!c{x1<-j{2BC1{{U~X_@`?) zkd$nsfO4j$GTlqCYuX`|cscDs%-uj4qb6=J2iG*V>9;qN7cAXR@QTs81O~`%CEM0D z{72l@(&dOq`gf`JtWjY>;C7)i!xC2{@w=zzLeO?Q*L1BG!YHKh)*_36@DKieYu$7Di6nXIJa6+VI_`}X`M>*_k59@I zbQ(2GjAU#C?jW3Z$2sP!dQO7TB%;zrx`o_sR5*3xIXN9ZLF-)_RF*&>)h*GjS13y5 zWk7n7z$f)TH1|w{L-19i-Ny{F%_@ZuykXUlo_A;PoObFDdf8@_BgJgb>897;>2~^sst-3WI7wIm(*p-1ulK90`h|_s#XgC- zqbDsK>z#w!xHvTW&gv->4K$#U`%hjtBalZxJAQS^EV54M*+MNG88kgw?`zubi~;Bp zGVdenpUVT9WoHxH+uTQcV=bM+H<#wcGKXgC_)lJ+hX>}nJm*ioB_W317KHxHdY^Y3 zV4Q$>_U4gmdKIpzY+g%ScfEyuEN~e>=Y!YsH2%AKXkSS#jzD0B@T_xP8-_gjs#Tm1 zkPlCTf<9`_zh}N6w2f}XygHS(z)Gr++dB|D(j9jT9l^M?h|3TF+%6-Ly|dSLdCq-@ zwL_r&rQNJ+YpCiC6mXx}F6`j_e@}|)T;#N4_NTLMQrn3Pl$3l3FPS;D`MxrQ%I^YL4G|k(@H*bR+AhPPvH}rT zuRh1-hX)1A**v*A6s?7vw@Pn;v?qou_#5OA)AOqz_=dCLizb6b)=%B#9KslG1L^IG z=mW!g4z(JaYlzx;M&woeI302*T~EMe?Etp6kMBEu5~aZ1@Hxlnn$PP-O(tIkmX31< zuX`h~+RXl5%tkwP?M}44X3Emtj-w2d++zU@g;Wo6M_SwbI$J49YkFIwfw8{s{#*Y5 z+*dxK@+c{w&@P>XFL7q$IrCdTmrg%A*5e{Jhf!QvUR&qylf(~1SIEz~_x@F_z3i53 z!|x3$jti+gkEK;@?WVVUT27Ouc=`I%fqx4qisB<2oygAyhZGiA?DghJlgx26P3hct zE1vnI?k5FUEb&aokb@wfpPHmN2yx5Cd-cKiqkqO@L`HShAtB6cGq)rUV*-}=&4y_#v7R9J+Pa8!&5K7?=^`qBD* zjM|VU8PKwy!0*bRVh`y`s5=R_(9sltk;k9n$>;l4?PcY0bre^47*eNWApVAfG?YXQo8wp=|zy z*8c!`jhF=7SaXp@THWlFmtr%<;lKmu+)}nQ2RcV2fVGsilM{>)xk>#fyE`kAT~xLg zmK$-8?@dI_ZEVt;eef~bWL6s&@*Q(awI3YmdMrr~-fgl8Adkfv`Vsvpea}e;+Ph&t z;ddrI;N?er&=)3aQdRTrcA8r!+BvyU`hBUC6NYfZ51)1G{`%7^ZDzvgfv7_EvmQc~ zH~{oM_@~B8u(d9M4bUuo1o4B;4M8d*plI7G?c5q|d!^e?0hY#LBLR|7?gaet#a4fB zZ$1MT3)>unO>9gy-u4**W9r8QsTm*Mr%8;Dj1%pH+w-7hf*ZD3q0PO|@8NPE>MJR! zM;O@T2}e<$zapJ{2y2FoL&YZVjMtM;m#J;8Iu!kca!+DoOAhc#b48(q$M~m&XsfF+lYZW7vDmxXUjtt0IpOx3LJw_UZ)qdsPpW4rs9g#Z{t$pyCKoa9xi z@;wJqh7)(FTUkV~Zjg;Ys;rDMzLEgl-=4np%+!{ojgyO3nWva^-QH@n_NSbXNWt&V zO3lPpSCE&114e&%I5_%_wWYR;Wv0NB4R;|)DAL?64?iS=4{$mfTO`^Y!WWL{>G!1J zXN8G{&$A)v`Eg6WhS~{#1zT!xu?9I)uGPRJ=ucX$%i#OX8gnj>D@<3D8U35D(d`;}DjMN>x3MC%N^98-#rh1i@on-y z-Sr3~n2$;GL5@N7{{Y1?I@~d~Szg?pc{`N;bxObSm!5pRP752Q1N`U-$OGJWt*te? zBQhAIDFY5t2>}P^3~~?q;;rNSiBn%C{w-eGV0_>lg-m5Q5$|F>InK* zE|*-G+_15jv}Af+p=CWXK?8w`b!B~gBlA4vAYc`ZNN`Vmy>aq5sCekLBEzd_7FUqX zwix1f&!u?5_Z3yP@b8f{i94|o^vLb~>8x7Y-Q^_;*atOzy=a6Zhi{WkCe(-^D(VK%-Vd2|R z$+=WuIl(oI@+;AzgDW;VCHty2_`&atRhHLIcs*0FVbga{{_0a>Z2K%iLDS5gVU!Sy3$QM!&P+fie3Fo59k`=`Et*lD!1Cr#{ErrK&(SJ&`d#~imdRB2&p;zhK=t1|Wd|h`Yg`(Q&I$FHxbnFbaEG5w(b0H`-{$0D3q&Mf7e#_G)E z785RaR&2HTisbQi-j^yFAho!K+i8^?g<!KIDEt z8%O)=(u9*-Hf}uq@gAi9Aj9INC(+idJa<#jiX6I2l)6%q zDf~ckK4^JjXyp#AA;t(WzB%r|f2AFX=&(fbxeBb(g&dN&Vf7Uma~?=kl@BBW4-~%M z{{ZjUS;Iwl8y&K$_4sUmS}X4+IT!C(c-#K~dNk?m9Di|2hh(rcF_R^pLa_B99X~3~ z-k%Pq306K_t=A)l`ih0^-Sa)USmZx|t7T*#*!&vO3$93&OmZo~Q^gxj&}ylb#?$p1 z2__&kh@XsgC3<9o*XuybYaDF*51VAis*Her!0bnHSK%yITTF~Y55XdyeukFZ_W7iPxa6OYue7N>&DNT!CA{TSa;y$kLEn#maZmJ55~S;n5<)Q1 z^#|xXkB-z7wg85T;S6W5BOjl~^fgq~EUq-WpGM>W84}+31)QE7@Unez(Y|Wy75ZGb+8P-foRO73 zU-hm$n5B)=J0X@i6{5Z44+PnGhRR6hg%eEd>Pb3n7#Z5>`Tkt75V!-MdBjd$SkVJLkc zA##KM-*_G-A<($ltUvP=9gM@XCI8ubH*)1VeE=siz>*HDbj5#zw>! z9}uzpC;o;f;MX6Q;7i6|QV*0qeXrO3ul+hae=<3r42z8a0JHr+f9RlzO0* z-mSkXdwyMOF+@l0ppc|#$$a3a)PKCxrqWn0{^O`cC95N1NaaGUAGya`4&bYP$_>p3 zZaC%7V~^-7%l!`j0Mu)u=sMqywcC9o!kR_atEf+(BF@SJ?%4cJK*$+uej|CAeveT+1BkyxcQ4sz;EFmu5LU{-T}1j}qN~fp}S7&SI-3 zseZ0xTNv1Xl!pKrNa_4PmT7b8caweJMAGgNwP}$gorf!93l3TP?>(1}-%9H~8qh5~ zJEg;6rp8tz^*guYkEvJbBZMfI{ef~Fg~?14hMRGH&yukYj81& z@Embl?axX8@{iJ{PAfp5R_j2?gJ4uLzXzUcY=9_BnKq%xsTvet$_t)pOpH0?RQHo* zjW2mQpa~hWaq~vluI5qiOA(7O?@zRtiE+m?40{%knzBP`Vh=QqvBF0TuEzrh>T1>Y z$!%$&=o)^O@M-hIrdgG>w=yKMV}UbCg;2ux*irS2tgtuC>_Loy?6SUG#0hQT)inKX>gsr-k*BnU1-uH!tH{J*RC<{703Q5SNjWn??vterV)WX%mKY39C6*@I z=m^GC_BkU4xSxzX8?F78ZHrzqYu*nm64zFVGc};>lP~)4e{_$-Uq^T<<4)AHIJIpP z&wESeV+^yYR+cqlp@NVIQb8k*Mh`+M?C6ulEHlQFLn;)KITSKTr>e4^2tLNQgW_b` zeV-BP7KJw5T1b=G%r`|eO_gt_&$v8__MNQHV*^Pm?Jt#uPf~Ns{Rbd?{S9^h02=*< zTfdF7S}9KJzYg3sVw>g`Cx-S?bJ!F3Yl>XO9<4ROwMnhDC=T1LKH+vv2^?b` z!1(FyT~TUAO;KUfHD*^*j7px_?_D=T@l29O99oEJ<6ah3<%!DV`}nCu@UU z55t%0?t>v4Jo_4Q#~JB~S~~!`^I;DQM=G~R2O^?Klq&*#P56yRr0C}AXeP0Dhj*%Q zqjIYJTr#-FSHFJ0J~Ii(w9vWjw8YPnl4F< zM-mP_>LS8GO7l%qB>EP|NVKwfCz>{P3|xt%IUn}cB-QQHcirQOr^lvUpMZT$4otTw zNR?z(7~`p-rx*{o@$fyUd(&?_$uU^uLJFPet)JyuDN{3X(OXF&wQwUAKy5Np|mGdg7c}_>H8W_Kd6v7$ov5lN+m%BAJ6mPvOeo)uO^{dHkmi zi!v@r&I=FkPI#3HGh=@j!Tu)1EPhL|=m+BY9`(mHtv*W~MnrM3)Q*+grj|R~65>$r zA3Jl?nnb*i<~ zT~@VCklbVErUd*qQf<`Ga{4eU&I&S)o)m18_1U_BDQfEPs90)bNs5+GdFP$UlZ!nfBiyc z_uYmk>qc1Xn$66CAb&8E{2$h-QOj_p!HAN*N@J(fH1kRE8d@kVAWY+&5J>hShYINm zFMDS}x06?Fd5f1l2w&wyNpIpwqbmxk6Yjk#w+D{a7GEGez|TI_Zqa;tmjsal0KBnz zFbC&c%}P6?bmIM$eM?Q(?c`G}?8v}jiY9pW1HB>^nxkFDEf>xuvKmWaxSy%_uF9S? z(##Jn<-NP08Qk3u=TJ-HKMCF;ceQ(IjyALoIr?+OC6a6Z0LXBM$w$*IrH>QMYHg;* z2}Zy@bCKB7n6DZD7`#^z0qMxb)7*QER+|0wltCraH8i;l24i$8xFm4&1{I=n_?#{G)Fi3VH$03wbWm6hl1E#Q(V2N`lO-sBcIH6z8a2b%+fyPSS~YFK?ksMnUTEd76UPx8&L6kmC zL8|NW-P)TOtl+)1W9ggjiY1Kj0Sqyo1}egQCgH$oqyT>FukvAT;#C{}>DQ+$Fy-IM8EUEq^B9Ev?3}xfGKoBz4}$13gIQv6fZy{f$;X%lngBXdWQ4)4;aVbUj{G3bxb3E+k=| zPnN?4hqtvXZ6{7hJgs&KA>7`$A!wvoWCZSG8v)O4xg1n_zk_wVY3)D2?jwrQCsM^^ zWipU>V!y-&NBYqzpS(_UNKZ#i+w{(yOl5PFSO~QVy+(Dlmnb~#w+PYd#yUnqPozn zQYgsZ_h4gfpzu}4Do5u<>HaXdo;a*^$PM+eC&`vb_wEBYR?qdV*O4{q%$^uG?H@ep zy1$CF)Q)(JpK>j@69L-C9Izb^9DO*eUH959rFhZX_<}g@p~9HiV<<;_q3SyH>0O;{ zZG^GyAF_Oy(*THj6#9D_t$4FTpIHfEsM=dJPJ~-rN`)RW4tR0f+dVpTq_akEXm1;e z()Q*-6iK>d4;-jQ2GTiGob~zku7wD-qaIRS zmoE|N+QZ*PGr-W>+r(x>4kZK=*Kb3N^Pb1OTl^&?78+X5G--E%`^}J?^S7M-SgOy3 zH7##UEgZH_dtr5yl)K=w169&*8aYdq#b~ci2Sg*yOMuIT;_F zVL$%>%QcV6EopOUcCN@)ChP&m&-E1x$jmV0E}zf0Z+x zBej5-WRZ>zK|(R~&0)nOTWxG}Z+R3z1`8o4>H5^~sxAU;R!_iia^#cHcdEn}rMD>k znHVJd&{E!9MLQdR+DpzbKfN3fa-!4XFB1z3IU}=#!Ev)2!)|092OSU6l0kC}rq1um zOS`uLft+G8PZ{_>{fe(Xmo}ku=H5%R?%%U^)1Pi>#8Mk!=^;4_^7Hx z@@?BS)wL^#?(PPoW-cUD4i->O2hepNG~dIP*LSu_eQ?Oqqqf2(S6 z$*SA2jaY68j)3(U{-c__-UWmLH+ok*4rnN~M3o5P1Y;$g#tHubT3vUm!4kWc2m4Z>Omdg)VG_X^Z!7m&GloO(edvLAXRYqH zoy7A2>Xp4LPuIOFg5pi<=fDp?k9QdP;)lDwf@x&^kyS&3=-S8m;eq(6<7GA%ac6&} zI58iF> zAeIv**pz~@2kEqf+EV(Ti(@iH0()eL(vUZ_2SG7e-kY z;@(w}V+7!29Q=+ASFa^Dv#g671t9a&2C03*=(WjtEHf-J+hsBPqb0`x9QVo3(zkO9 z7i(tR5w^OKherP6=Bt*TB9SLpZ)9|}VV7ji_4dK-S=D6OduefGW1c@Hk{MT@-se4V z*y?Fb|4HouG@0JfxQK}#19H9t5B001C8Is3vdIjdN16+liHG12@SO9-Z#BA0vr7?c45utYHzO)Gocq+%Or=bXEvAM;Eur4M z9tjUE^gWF=j^-)h0f(m;1&1r}ekd378GR)AnZlPmIP9eV07Frw&t1TzfbC^|2tLQ= zhp=C0(r6NM8c2f(FaSJ$Ulf;9(lZ+eLvv^Q!}rtVQ88bXK1} z$o~K^5y+x4mOg~z8Lgb(QSga)+Dj>wlpLXBgY-Vf=9lUICe$=5lLn@bG%45k)9L&| zx<;XD6q&7dsXP=vh5kMbRy9o~8}!Z!1ssFRM1Q*cewFFt&ax`Ww0YSuxI2cKW774z zZBEopX>_cFfI|(zPqFSPgs@2qHN~z@f6RpP7<>N!=k=~gG|fXny=k-Z@#1k$W4&>BGgMWH8op-Zc4#*B9kbO{{YJ0-A7Ol zO6i~Q+xB~<=%K#VymxE&?LSMqHoh6sc;BjOiZZQ^(Z)z6j~luD-L3S8+6UN`w~6%& zNMPA-_uIH&mG+DUc@;~6{6H}{?~36AL|rwmZM6G%G-R>e0|3R+Evylw&+kavbGw4Y zyJwDX;%ml)V(@?ZwqJ$y<#EZhsSkDCM_2K;i1jWmy?R$tf8n z`*G|uj=c1ynm&sLpC!!E?|YlK4?L1S;&3n&d=H?npG(_4Zq0lv;cIOI(c*>P>f(6} z*LQP&nQrb0N4uHRt0A`pk}OTR-rD~ z%`la)DF&-IQJRs7=aVGRto-x*>uFyk`%wAh4A3CUez`Si(vTttZh&Ows}_n`lzY{V z>s5op`ZU^=+ z9>%_KzSO4i9;qeNlU&Oa9gz#C4(foD$sYO7$4coRZeBOjyia#;28TR%mgm*jdQDOJ|?}s)vfKc8|`9STRU58&1Ejpt+LG|aa+d3oU%s8JPfyN=cHX|c6!c` z)|#TpC8gsjo)u!ESXHy-u^jDUIUVs!{?GJZ3`62C5#4xm!&Z7!`eoB;!r~i1pNH{n zZtU5~$3cPdRRvM8N?K_h5fnibP@^*}ND)gMoB@i%HY>%kS`$qfnm;SZ;;7y|`!djc zeycvDl38mIj6teedS^^@4g72HdG)Y8ZSyU<@?$NM2f_ZvhqTn}^)K35P35uc8~ROiIDA0Y zfn&LmmLbnv5`VP^;vIi{DIJTfai%v&aG`%XiAFQp(9=G?gI+iuQ=Eg}wH&&tvTnJY zE_oS#zm;-m^@+ruhS*PG#(uQQ&iuRYxMq_$^ya-uVxxgh&V?n@TtL#rC`hx_j~V*V zP~1DA+N$lI7$3z-)eYw+IdQjf+;S9sI#cUSHSFUV2!M=}(2Uky7uzIH3!Ow;eBoAzkYR6-J<*sA%C5?F8R+&S6Ba!9udtl)Hl$7Tl zhr%r5n!kbdZ6S}|VOi9YS>ws7jqRn~gymdp56Z586@5UL(MY8(FwgQjRTIX30!>mj zyRly~LVZ!G10(%we11c^nT+vk?Krish}y?;v6pb_tPd2kQPqX|ovJqHpsuid0&i@* zjY3&hIKwUjs2v9!ezXL?Wcqw8o?OzS3}nbQhxe|i=EZwC<%(w!mKH9-lOXp3wEL^{ zP}r}d^#1^}Ehozh5c38*nkQ2GHPWK6a71y)MpuDX{{S)OB{&ZAYv)bfg zi*y(@7=kr8GLn9n#Y`+lRe|5%j(?R?p==`GUbzfEY`_D?8>KkA@m{HS6mh(dA|l~V zPI2={E|5keC`RL)rr&Rx*40?PKxJdxHY#c_WpAPNrlE59F5~I#PEz(r(B@)6=Oq6C zI!y+hba5a<&r^yfI2v~mD#_+C;{&g~X6U4t#t#s^x8ay)H15m9a9v1bz4GM_c|-wE z)F1V#6!xrVc($-~JwV`!(ZrV96_mD4Ptv8rENW6a1&)j1-C<0T%BaO|fS3gem&f_S( zGj2((qHC|Sy>m(g#~fElk+;iiGlA6OwIXYKyIIY>+!EW!dq{A&`u7yc^~;2ryxAoT zK>>_}g&#v(CE&dD>N0)dQGaEgHvJD?)mJ6hsTxIRe(8Z|9x=dj11S_#ejmM;t%lTc zJxGKM`{%VRc%!_W%VBcSsZI+i#^Kwq^P+Tb9^L8tVUq2lkPIkcm2vEUoej&-D!q&( z@D9Iib23}nPa+`8V1^%&QgcHcF4RLIzmjb}>M&Tdrd7WzWL3LN`$*WaMC%H&H#ux< z9Gw2R;-265iq~JAVR+$@kwds}7-t*+-Ec)>=QQ?>IL5Sb>CCp6Xr_g;%8=O&{*{Y; zTKn;tEu1br0l&6t>iRB;eQ@(Vv?MM;h@9;{)fw=Hk8%lu%^;Je|~9POk)(Blj#nt zvoc<$loZNb9_mj5iMH`Dy!5QC4hI`}2CDkjyB*f?cFN=~5dk2n_Y{uW_@)~eBlD_I zO>CZ9I=!XYXa4}2C5Y}RqUzWiBLi{?ya_X=MaL6v)2Z z5T|urh12le9pI+~8^rEDO!BrUTgedD68OObHVXaRKGMM)`IUt@Wzx_;P z07r$#80f!GikFFxnbV@ZOLHJe3m_QCZNnbpxS{TKYiK{qVKP2JCxCnR=zhI@>X`

B%OZ&o2^(l-lRWMx9CM8O)N!HNZ;M@$-bhS3gR~$5us&F0-{AczlsfIr z%#E93@n_bVB!m1w)fx%nvycp6F9e+I{{Z7g+-eC686%oN#dr#ELH^*>xT3i-`xdld zSv=C$R^h(^9<}3Mu|h6nLM7QTijI9-Xjgn z>%Ev{sQ%wQ>Rbk_=~dTRfcA zHM2DiJ4S+An_KZc?c8^f;et#!ayw)J*XvCs)Z@F|8%D(xcjqMc>HRsX6Zm_?kR{d5 zku+D(sZyJU*)VgEM@~Ka)VA8DuVEVf>N5=B;g_iE{{H}4TodVnlU<_fmT^Rdn+|cE zyx@-AIi_3qO|lAM$P5P_t_B7`=zH*fl$P^Vp4P`PJhPk-V2UFfa7W_o zN6^r@Fm>=M)UR%%TZ?Zxcw&J+ZV)JO(~;LdO04Ue?B>eW+6gzo*K&c0KR(CetQLtq z(fifOb8eWB%Bi`a!N4pBI0wCBP_ogU_7OBLZV6c~u56@9A}D|N1X#ftJo|UWZx*7= znzAnqJO2QOBSSPvv|yGUNj(TXKb1PMxSTibd2YaT{{Z7bMQSXgX1AIdt=W-K6u>+H zcDGP|xgDtZSQI{6GBE2KtxI-NR544i=k~~R{8+_KmjP2Tz6kCqE6&>p1aN;!k{OsM ztYl-gMHDca{_++70G7Gh8-tF&l^>_VF7`dttsn|8bF{8LDNJ5l^&ov|l6h%^8*OZI z2YO6sD7rx~FkCXSlh5HGdlBFBsaM37u(FHBF}OMPMm9M;{tYjRKm>t`@^g{7J|8ef7&q8qWeC>(-L zPC93fD%RTNoRGAN(Lmsk!azt&b;%$y@z{!)D(Gqafn5MYDBP#(#c6G*$q4`*>w}%$ zzwt!h%@g@vWB>`27~MYvz5OlIIP7stmd;6}Z@X8Nen-s!@jcWL!8B_P7+FWhA1jNa{8P!W9iaM(gao66oYv9O_ z6o4i{icmp9Na!2b`x;>J+ug+Q$TJg+JY?YgLF{UmsOk5f9&jRdn!-$kIN*hv{vqssMOL-H54_HzHU{(`*v>sAzv*vd>}!29 zSCR=-L{>^LL* z#6Fy#pP!spL9o?qd`TalX5LlW4o3iwh8@T1DSoG=+v*AAYS!m>K`0n?`OkW$$)w+S za`HB52uza&%zYV0zCWF6);#-Kkr$H(dx_MoEV4@a+LwY8#JU7pmCR=2SMcK*?HzyjU~!2-Uibh$Kk2U{%g0f-+C48GYEGBG z^ZWk*Cj`>${_hNXiagA@c^9Ds=L6tz&wNw+So!);k->l&dLF*O{8LC1YH};eyE|%v zQG3*?x&GCn^r@GMP0>a`_UlrG$LU%HC%s61ndcQPfsiY3zm<6a+nV1Q=|~I#jw^H? z^@SO!0QR6p%kNTFg0~b5$gdN|MPjs&_Nf91p9)P?wHbFvML)fiEM$|-RPQCrng`G; zzcr$A)f>ND^{FlSIW!1&rN!n*J*iLH1^JTWPtoEdWMl7FJf6J~f2pe;l8GEEJ zMHv7n>D-z^@oE~+iuCDiQq6Q-HQnU9nMAWoF5DEiUXiX245uXW0N~Zcx#XYaT^$%R zW_(m^^`kH&uN4_MQXM(N?nS9jf{OiO!%ki>OF;1SV}Q-Q(x%g5Swk>Ja< zwa_&yi>r??toG9dVFwx8ySeGdY>f4*H`)i=14#|eo#6$z6R;xY{zStnXBbuLx$aL) z`Uln8yw0kQGI>Tk3=Cv92v7*dO?wX_XAcSkv6tlM2k51a%@ z2OBvg{L@W3Iq+3MF%BHF3{=+d_l8z>eUY8(j-wRP3E-Uqhs0yn%#r1Z`KWHt(h^Cf zTEintKH!aS))P_Ln}d<^?d8?Zt#o0%0LmKyijYQ6 zOpotfD@gk{k6yBdINm!+3}bmN+Z^^d>M}lSt*3#si-}F)f;jgaZCnpC9Bwr(qL!L; zJ2be&QXZ^109MlSZj>}caPjb-SN32yUZGdLnPY`KZyhh&bA+*>s9Zp;R(f8)^Yj0h^$DWv{!u>4m<3(jL@DH#j z-~DQSq?0R*Ue0MJfz__2muBMN?gJbeRWF5Ojz*4nh{zy%bB}85YpPf}$!~Je$8Zi8 z2PB_tj?pJT!&tIUWQs|e~kpmvaWjuL< zpVqrQ%y8ocK^ekh+v`eY)8f7JG7CE7aJ?&4mHRW`y&Q5_<>6#sDpo%v1MylSNgS>e zk`#U%laG;IBJ0C@x!Bo0%StZ%BQ_b;cmo+c9D8wEtf`T~_H#M)3GK3vD00uOGpP)8nbzc^ ztZs}K1HMIAt#6`^Fsmp+MnEU=4`MzlvumZ@TFr)yqKtdd{{V58Evy&>Vo%EaR61sz z4BkU)FrMAEG>4%%$LB}eUd+od`_l$d$OpY7w~AffP<3Skh0c5Y)S}kz+5Fg}$E(%H z^&ZrkOc3^Gxm?L4yb;0qrMFs!*x7DI;f}1o-k`a-ybx#0%Hys$&$R%zQ_Gcj2;-1f zBAQ4WHV+)JhjPU_WH4cm&Y@@(pKX|vVHn(b{HT=DZYDU15hIhYs}$Vi`RS z+8mMun-nIQbr@38G)Ld2DXbQcC=WHnZ7w>6+8h4>G<jS04i_X7+Lc9c%0^TUI;g>`b?%ERE2~R_cx5Az`BJN$6}+4V zz)|VI&MMTAG|;KF8B>L2OpJ3z!>!DTvPqg$9TX0qLqbQT6Co0gpS_N?G`ehYMt4Z4 z-%d?EF^ypH0T^b>LJu*q&P_44)V$X-N%%_b3H&ur7>tEh49D2hDCJnfsyI+i4?NOw zK$&Qcc=8>eb~B8FUXxoe`cy8_kIt)dUIk;mL9}%5TBXDc!xAy+j8yR|%NuxtcoTGB zbI=~u1RBlF&A>M^x}5hJ6sAd06@+s6gmbqP0lSrm8w_JSZRVPa6|&)X9JiB4yoCv! zsz?X&qdY&TNn>!SaPrKclDi395%bP}Dy~E3T*n-$%O=72iP}fknrmkl9$RgeGEd@e zf8RAPss-79HuGLWC9;^bi-RP1DI)yf^%(9dE2DWFX8v_pE!Bi+{n`lI)S?o|I2=E4z4^v7oYi8}M3UBFC6H0qasqiDBACf@cOWrcmSW0K zH&zSt{6paM_Y|J`8vMuiddyZ3q6sC6Z0v$~!pNZK__Miwha>A%>y{sXj##aritwGn z;t$!9*~!XxC-cq^6&!GgpprXv+=uZ89An@g=xfEN3X!pGqXdULfya6hNNus7-zJnq z^2Sm}cT&R!CCJXuJ7*maL){{V^`$lVh8c~US=21)&T)H0SkL}xAB zV+Ny41_P2lCd4>l+IH}?mSf2je5($x9;Ik?G9Q*aGo6$UCDcGjz?;QSy0FyN8L^8D&nyti2-j#IYd z_fB^2AKU18r6?wWV+P=CVhbXke!ah)LhW$!l$u0joP&b6a0dgPD>|~QacO-VjGub4 z@`CN!(~PM+=MC(5#&JbkT*i$50Ohm|!NJ^6j>qDFxwtUH93(x-0frfda7SOBohVBN z)8P=kl)g>NdVHdpTpq{Tl@7-6>JeEWxrLe(XV2afovqIqUVmT6_N=3uq_Vy?(aWeD zvdps;SwYCATU%+Ck%=_hh#p3>bLLOEgma-MZz_0fA8x?s z+N)a???Lv{vQ0BfJQnk*+`ea|IQAt;1B`rCiqBI=WJ2o{#Aj-q%H!bGaV;&3mZ+&D z@rjqtiQMlXbR^_*4mx!i>r>rL5-~(oa!AC{s8gOZk--L`r1VnI=ln&C*oY*Dtt_On3^U-c4hJ5*mxepP?PzUaxvJ^t>8-d1m4nCh+Wxh!vI~gQbJgXdT9^YDD zCCrk+Ikl92(Ec_}*e4%|cOU6d*hMY84Ra(`$=I}V850@CNbU8dNE3Y$f(S1GEQ)YL zaKqr#t28$eNe#*ejreqKKiR2dm+uR?Hu->c2cOfpp;-ZMQh9DY$NR{qVy}X^spwB& zOpqTs)Sd|HKBL}-hUwzitF)9PqvM<&p!&+lrOO;{dzg+wO z0BY@qURsgElMfeh9O)Xr-cZ`!0(P!KwZ7n=I**ZBX?oqxn>XAw-&!cbOnD(sL;nC${Lv8SOJbJO*K8HR~DVeO&njux&runT$U))HZ$f(0PLOAf7_lu2&K;t zmcwZUPauxt-nt)(bjfZsmWN?`i!;3d>Qr?r^!ECSq1!UZo?BomA3@LIKHo!L9&Aqx z>(~7rraYfgHfX%}sTYG@F__qbFh^S0Ru^W3iYi20^{o@IsfYHY21ij_sKGU;T9X-| z4+ZwE)MpjtUgxjHZ;Ww{y{Q3!G1{|(jP|Xz`hCr0anyC9z|;Fw61VA7zXKzYK~3M9 zLqeTae=QHqRcDtc=9}vm9-_I;SLA$}5(apjnl{xp$fM?fi~w`*Ol=O=DylLRV*qujwfol8^_JR6g3Uab{fmC_{doL^ z5vIktfeJ7^M0|9t<)uckL;X72Y)XKB(3}E#?ezO7WLQPT!)#A6!P+zLfKDk^wp+%t>B*zbXLqAA zyp1t!SzFeH!0O(0{}d{{H||xYir*lHA^@jK1uV zvM!M!C73U<8LN4hzG?|148*7^x!`A@_NW?8P7m{~YRvxtP{Src#}yk%kD3)`^a}0{{UHK7tlfGTLx0FSw?fYW6v!3#^)e0&ISh+%lu9Dq2WFH-L$s4 zp09IrZevLnP?03xy5YYP6g>J48#_qvQfvCPc(Z2^#?H7 z#HLw9ea=pES^LCARKXx8vr-Goh$o0gmRB81d;KaXF9dNcKyJY6-n;1Iz$tGlx zRlg28=8MyOP_|(ro+C7pe$b9LC(xRz`NGlVA(i4{7y@|*r{rl?t0)d`5D@GS8R#n1 zFHDYAv!geQVbkJikCLr++1(>_AHvw;g_FgzTe_QQ1W~uE$S;*6xd*uX>zzg7JKQgx zu-*k+d2^s_Vxnzs7q%95@XcsO!el*8^;1fVu zc>a5dinNjwf^(j5D!wL${?lx+!x=&Alu5w+z3QfyliA-qx>VVH>=Hy?Suu`9Qo|Oy zAQA_?1vS;;$s-wE zUB(?xar89|7uO3QG0gFW@4E({{B%F6&!{bRYlKE}S#qj^V1b7GcISc9J@cA@JXw7J zXMH87gE;%jN?0F&Ffos6`Pywt=!BJS<&sS9<&PfJar;2l<7iynO}r-3Pau!>Pcn4t0At8V3m%MHv} zBYJ=&V}gDug{RsL{f-;&&XM_GsO$P3*r&Lf$iqT`5L~@JScwZ1Dm63{RtHT)O;J_5LSH~?)MUOl_oor*n&FKQRDcKo4%R9{*FRcvj9SnuM^}AX-Zb)-&Pkdv>O69P-?cBBQOrfHEu4@*Y@b$pa4MM%-QSi* zWNtHpf7zq$bt$tDF#3u9BEOz1CmJg3befvwOU1JpZ(lt9D5);sxls{{H3Sk^DFo7# zdtw?%p<+q&g^=<28WMYnB$zZ!gwF%89^VF)4#K5^B_yFIo(2iQ`q18k%EG&kQ;L-y zX&ex7k&}~ySh;Jc!Sb*&Mm-e719xDUJJTeL@Ypn>eJ0(3D?ZRWZL3re%PeJXQ2Xa^ zTFjb7toai(v2oO3){1mZ9R65->niL(#D4d4Ol@vbXA0$z{X6^9>#YjX6&_u|b?cWL z(%Y>j)qPM%%tub&*0kiAG|{VDpl!nOMo%%aaa;Y`-fS(vNSCul*#2FqNSz>eOOQ%| z_`SKQ(^%6m>oT(e(5hyJm|7j%Y4ApI71S(;_>VO9D4~rP%XqhAjBqNS3u(>}Bh6}G z(gcdZOLoRbd~~PwRxc6%0GGKFp3%DCpU$(9NN!b10dXE1uHbSgd7_VDW4>Ly?G2C2 zRDxMka45USC3j~Z>r3u#3vOu8mRyp#;QcBP*d_e7?Z(@Sc{*o1fu-_A3rDnEu^qt* zrBCP9vv(`akkah~oE|`+V-8MsZ~p+cw@QdTCW(76#jN6QfK*^mH{Kf5ZPc{(ml#k9 zWlh7Lha#+Y(pw~8utAPb9Ok5LZ6X^ZGsPZy#VP)3X>ymKbaP9jlGh$=Zys~Cijkk8 z??Z2q$SSPE;2xFJ+gM!YEp)1k;wzhPFb}5$3K&^g>Mq7jV%Kr?Fx#|e-#8rA^7$1b zpG4&HgCqX#ly$wN?%UB2Z5oSws7$v0{74I?SmKi1na1`zs9Q{AmtSzG1O)3+^;B(fP#o?NZfs2%JVw`GJolkLylekWM%qa{Mmt2 zcI%P2jGEeGBqw}qlIQnIaw^1W_pSSIhbD`LX$txYQ`;SAXkJMING;wrC-Og)94^w` z33&FmOan=QBr#t}yu^7uNqibU($Lx?JhufL4^bS0^`&d7j?c9F9!(D}q|z%W1m~t| zDY4ot6KWz5&Qvf69P^xjdSatZPIY#h0!b#wSey(L_H1XKdi>Iait=d?+{&=V5MT!Y zo^n4giY`m*8+)kLU8lQ6!Se~nziKEfCf4rWAhX}vJj|=MHo+|!`3Hh2#k<8Oog2Vi zWL$$JY2}gakV(j-R~L(V-diTYx7MZieB^voky`m`tGGI!P(Q*)z^P+T;IkRkE&RuI zZ!Li%g=WVbeB{&(CdivE@@|)`orZr2L;n4#WwWgDOD*JWA=|Y|fI<&)2;|n+09+WR zc4-qF$h?-vKz*qW^fq_`z>g*xGyBImUyS^98LUSzGb*dcG-|;`!V#9^AzSC>fQsp- zSmQ44*xna$9l9Tn)}~^g<;SrkR{f%ma!BChbR9clkXgOYn(|7P(Z?JF5EX_Wc5#o7 z??>9(4JO9gAV-+uHF<5&?Rfy;9P)?TwF?S;!dWA_etCG@oRA3V`DV4ZCKdCNLpYF( zXOLGI=jY;=Xnh7by8F)7nOYRdGI@JgAK@T(AI`OXN;^4(gdrRWQ_A(BB>IP9ypBIg z^^NOL;WY#S_c+}YepBR*p{ zrN-Rk4#ak;%;MN)BsmO_;-RFb=Z z1E1203mHW$Oxt2ly1R|Vc>~zz+N61w&H^Id?%iY<82XNw{Y+69Z@Fc@(K9m<+HuIC<&Vt;NWth- z_Y}U-kExR3iEMfqa=kkqwK~f09%7I=8Om<;0r5gqChT2trq3IBw!{VlXxzJoJ+VT) ztZQz5{2INiCKb2W6fZmhak~8VvM3D!pg3tSzKjZPXr%v zTp1ztBTVgtxJu3)5AD}$5@p6zx9<;csI5Y6KT37tUk%CO+tKA0dkL7BBt2C1*njE+ zzwZuugG+|l*F7a4h<0z0UOb}U>7D7?v_c0;nR)A41;>7BRUK&oxE|eWaG;D=lb@wY z(*b#7(0hGp0gy3|bI=;xF5j02IXncpmav>`mz z2qrAxd*+IkMzOJ;>lpIa&`)?eqOA%cqfP9CK|9<%593 zkAQ0lK1|svG=o&qo5nYKPNR8k9rlZ71f;ZD=) z87Hs3UF_{G^xGSII~ZfNw6=^#6frKF*3&R zw#(g24asbK#}Mf9{Qea0lf_beRpQ+r?CVHWDdt?tOTlTpnQmk~WRZ_Oda?YesM{6L zR<){WJ_yoobq#9jNe#zLvN~jRH7Tdi9{rz}(Y)Q=bLrcU>svB3 z60**or9Px?IjsVMqi7}jgZ-;`-BZjHMdp?m2XO^XM?X9QKRRH2_Z9uk%PR4)x#^So z(_3Xo)QpyMN^DLOV&LW{k)Sd{aoB=t&uEcD7U6|(cmlQ#B%8~~ zZ1oj9+GFC5W;Chd-L-ND?@~*~LBnH6e=~}6#MKo9LwMZZeD!6uIc9zzPw%__$ccz!#ZAtkhuMBstyJC{Gy zQroQ>@et(;qV+i9n?rvwh^@I)&n?9?v%HoyDCb#ra%ieWN(~5HuIB`9$Qw=u zXlC%iNkRfuiRXI%07G38*HDE}!!5H!h4+3OfIc{;@Ij;BtEx;^;f57m4n9U|ex(nI z&SUVrF{+tnVtb9eW}Ly{V3F^Hxkl$ZNvoi>O8_EhyvWo7rA9+mBE1JA81@avKGmDZ z-$hU+mtib06*-PfWD-co9jLaqxsgbWv5orxal8KjG~U{H3|SQl#<->J2>z zdknVs9EaN8#8J^r3G}mv&&5@(4+He5XVYAfDnY~qqjrraaofL9}to`b&?s;Vbtj@swd<+JaIsr{Rr0moiP zHIKjELPFclLUkKSVV{tAHC`6eNO5e$;GN2Ou9)Zu|6=y6D_p_X6?#LPMuLSH?({>GULB3MZkx0pu` zsgb*$qd$cFRxXn*Sv|}Rb^_WehbJ7d1dr)ZpAO!73{zyZ@WJemq##j$BOkita2v3wnl?Vab};8N?mIfo4* znE>@^(7I~usjgGfsDDZ9)2#`fEn za54wdgSd#>Tv%ntMD^${7X(j5=qx#Rm4QB@FWkB2QKvXCLqDTBbuq zZ7WkxcF}I)I8DPd-TYw<*u(K zoQKX`>)$v($kz8)R(H_=??4d0BvQm;0PbC<1M>E%=OOV&IA03t5-^h8QsFb|LQY8d zq8CiMxBZ;9@c7O_IAzHEhu z3&$U?wQcu?wPhfQ7aW1srK>1wsb0L2D%<2D3^zSZ0UDNIpafyT#TH?oTDumGx5 zh1pzfcK19$xabbtRt~LyD-S?c_ax%2(P+sMg7_<2y`&C6OI_Z^pENEdZV&Mp_W7)l zt~lCh#gsl-V>VsSR_a9_Z3JO~jx=8WujfOP2wlsA$E2@soOPvkF!-YLT^$Gj4hr#% z{{U)erdU*YY6v_LyRYR*A$e7E6qv_iGx_~0U)wWtAT8G?1RQ%-ZCJ+3G8tn++p-t| z$Sc#1wWZY0Y_lcEX#oVPJC(@nI%JQU7TyUAf$kVIc;%S$lk-4o6GslK0Y)y56CrMY z7I;5ONd=GWuI<*>dcxjHjjxGG!R|+JKiH!tngX!2Ze0{$Hr`76Ztf`rQ?ka9Tdva~ z<-TdeG06H-9pDJg7=zq)KiJZ0hJvMbJ6aouyn&Q{&QDQZykPa>u(G6f{%w}|BTR)* zcAusQ>M3kuR*in<{$0v8)*uWp_CJ>uEc4sJ46Gq3E>ynEu~XBhw|Z0qYeqwC{(uai zF~=USe~;-}JXWSwyvTc%0bP;F44`x=kQjIVl)5{IkxNX&a;ao)cDnxnzSO<-7@gT3 zC-U5G1~%$GzdX}Q!pm)`1vg=0T=0yi1L^Vgt%4)7n8%Ycj#oJc^7f@Rnu|{eF07g0 z2RS5msnYT=Rd_5xAc4sIy{c$-PSZ&g{Ds);6cWIJ@$}9sZ!+c}<)krj+++10+)!); z#dbo8At1It41=*1C}TWOhLkuAR}R=e_LKb$0t-u)MiJYO+Qy?KwnL2Z@K3kBFglbk z5f@77<^KTgLNdy6*ByA`la)v!%DE;vJxjqL{{RX0{*+2wwDYqGl1UJdLtulE!2JIJ z`lQvB(JI=t%EvXG*O?oSOz@xCvG2!Y?kI@uE|V`bi7c!5SPT(Cq@mf&B-q^G21RZp z?S@nB*!8XBd${Cq$jkuFbHMl%!$Wv(WnLUFnmOTs2mb&yDBE+oM%+L-bxZ^KQa`;c zr!xZ>>5Tl@J8+C zTfSP}a5!<_=)<`D`d3Ly({RV{5+Y#XST@|}+x_!V-P>Bk&xABJJ((9a77jzv94{^0cJYsr))4$<72eFU!= zZnzxms^96QC7xFXZKG&)ylKua^rh9cycK6trpNA)2*2i_QpAp*yOSI zC%H5<33)xjToyN1)ZYHhuZ#`ah$L9{HvJOhFWEs&vG0C<-_Xwp2Pdo znKDg9r^GF-SFv-v{&l?5#|%=>aVkLsN?u7MJ5>~QVoyO`P*h^wvjI19*v2wRIKcO+ zPN%O);vn|A9PewQWTg6pXKa^!jBp;w*va3b`_wwFr7w!{5-hg*0}-|?6qiu;E;_7U z$<_Pdaa`N&6YW+%4wupVGVt7M0d`3;;KgP!j40?_dvssrTPXWv{)0~*eW6%*3c@`* zONQP}NmFgTf(#|P_Gtj=?~bSW*Unm&r+2Jh&!}pbFL!x6W#oSU00Y<$VZiM|O>}0S zS#D){=8=m@E3snidC4b}QOPdC2*WYzM?v(frb(ocZ6^mm9mQefGLX|T-LwElz~ENG zB4b$#p~)j?Z%_ld9^W;FSlqE^DBE&4&VD{COR7wg9IzbcZgcTjE5C6?I0Gl1g1zd% z4V}5^{*~rl2|#v(*SM>&Bx&TDHHt>zdz1QRqRU2EatJ&hn$CBXPy(Nx^|J5^;1Fqa z2Dk%hLzDd~=itu(U3j(&%}Vo7vheqZ>|J8J*7ZhpwvJW@WFR85$s=Ps5masO9B>Q$Bl{$v* z&NWrOT*Jb)IKVx@_xPmPBp%u>nQIzLsmBzm>FFframT$RxBEG=yO_xg&_gy$c@z3$ zE7*qZ`O~4P>Gp6*VSHYAC&)#N0$16{>_<#@rZ(14y}h%+efL?Q7=@-7jn7k)$sBe( zR$QeYW{DUxw!uT9@FG_?U%}q;w+PIj>Sh+=Q*IK@JwrlfmY@w8A)S25!*h; z;;mZOh@s|KJfyhB+0d+Pfq>+3&IrNBPHM3ah(T>5rm9D{3Pd}gH3EfTV`T6mSA}Rk(wsj z>MLB6A!h*Pdmr_x`MjFvCy>2%gVLpi!ecDiKbWfH@+%+x`I&NoW5+mC)`#7_x5**L z%V(Ma~K5aMh}j-YY* zgHempoEvvsf_QL$y+wj(PfuhMOrd^j9*nFq>>^k+wH&#~%GUpREUTBx+fOyP?VD9G~mK zpyzmJ%15<_;g1M*f$xla`*oq@xZ4UA!VoaK6sf@KK=#f~Nu@zyZ!1jdkg^ zFYi$zm11WKMmi3s>+MYlOD)V+*oGauhrdkbh=zYQ$o|i3IV#0?=~CTUB-s(JCLW-1 zox|dVh1Fvy@8w|UJ94@A&swxdMTMfYtQfw};@mhs*{Kc2@=_D%Q~2?U5-XryXpDkV zRN<6owLuh-+`}6A+jfqfD52QaJDKByFw7K_f(YyRikd5ijf*qxL(2`Fs4p$dC}0J^ z;DlrS1q(Y#ZexL&-c08?z)|dd=}@kRAL83GZJiXJ95BvDum+mxH@6P2HM{{3DFmEg zkA7(enQ;(V8umOae80IF>+@1vUfVRRY$rDV0K~pt(0z~B@}a98k3RN{6kH4yTx~eW zKH&RS(4;QgWN9{@qa3OCs?(71#^u<^8?HS#`u3()uZW;qg39t_A?=Lte^XG^6rGj? zm&%MP$dX3f4cr$00L@^mHqkR9mS!2_sHL{oHpLa4q-ibBs0J7ZKg?EA__U*QE=Ntv zjDB>eb{_@nBqbzP+T984Dk$c7&+PqUpkI0hbLKu6W7@WY-A5t%d-0#joglM$Wb<;N z4&rfwf0ahJN|FfWV;bkwagZw$OS(b7h95m^6JfYj$s_Wn2JFnTZ?}<{5u7d$@~zie zSk5uXC z;;t1R@I+NuD)jCF50)k+kOo9AF&wG&{Udc`b1f+bK9G zcLhGj+xt`&nxwYoAqs;UpDgS_)Suq&KEE}ItV3T&(d>zi818e*_vkj~KT199L#uTW z##MsL81LLvsTjhuhAI!HOlKc78U>0rBg;oo_|V~4e2T;uj|{s*GURk8gYrGZ#V=bqn|D93-jyJ4C&WX!J3f;wT8{c-XA*3kPRfo8P`B)Cb@MP0-56&v}{S|p-U*;Ba!BF8QtD^NvJJr;(lx zI3lHOS#PcpWr`+@j9@QQ{m=gZRbFdJ;45)!B#29rLJS5Sn;nnp4QoB}7XxnT7;Z8G zbDxphr5qD>9GX;J(pZdHxBa>)+Q2CUACcSZKwm1x_+RoQ<#IUB_CFN6Pu3%e)ueOg z6#%wy7<=cvIs4VM$DJDk5CCorGCAnO;-)kC@$6|i& z_V2z+oy2|Lk4p|YW6lTmuEF+;_Gu2eWpSwZdeIkFjb2r?Qn97W^&k_%vG?iEIqhBW z7PX`5dLgsXAe&0L(#Vff((cCFt4X>MAnp%l91+vnzCK^WGUCeKPr|xu-}?N|qW=J& z3F1l}ve=mm8t-Wt6fW`rCmr$9y#D|^pL&r{stu<(9ewLoTo60gq;L^2z|8}2zGgw@ zjbX+r2?hlwHQ8I$VU8$Swv5$Aep~gcUb!xCf~wMtoYO%dbRm0Gv1V3KxnfTOq6_g% zEn=B1FXyv?=91dhN!+TI5hC?=_5&mJ6{6P2TVgFv;7=+>v7)8Elz1Spk^s89i~ID)LtZ!>NZ zVO0BZz#o~Q^!xZh)M2@EAKjgt9B0#yZ?E;E$c5lpC7Cxoj8!B!4eBIg=K_`7qFL%T z_p1?DZlBA!!)0*Y8{p=#_GtPpH+qG>m!|#qRGBTUp^Zzsb|i2B9F`}5qmp`6Ci;7? z5zdopu(iIQ8wa)1Uj&jmOFv@W!hRL+lg&wezH8Yv9e&~?_btZSHaj4)j0_nLPcjkJ z&rXYhTnFth?QON;HjUwTXf&oJE^f#w_dSRl`eXiQz6M2lFjjG~ui9VQ{?l=z_&(!v zHd59O_^f$s6MCx{_hWWA&tac>U@S!T&mu15j~QY3 zhshq_Gz-S@u?>|`f^t8#3Q3NMtTgMLTJj4$I^Ii*x!5F7r!6CU0q^l$iq}H$@7V@} zbf0TJ5N%V(Qm5@|{{Yq>X_xc( zXYBsoLIm-kH+r36Jt=axK$WW$_@~7Bw~Td(wT}>8wcXsnAZ?)%G*N|)G#FGx7y%Rj z0KlZBe9~|g2V5H1t17EHkgdqb;fKX)M($7ydmhz7KI};6fUYG}PEPVb{d?5Ub-QSG z^WPq#7XW^=2i{_nEM;l7@CvB|^*yR5pQ%#3a0zVZ^sjc0Ffwb0eiI4@7&I%qcHomX zQ2(_j!o!2_{}H1y@}MU zx!ii^rBXs{2T;0{E>>NmKY@R(2D-D`CiV=yhDT~&Jkd0gq83s|pd9m2M2WEDGW;>= zThSxCT}VqN=~(l~Wv3B%k-ra^9FEL#KT4%EpLGr7uE$~DwMk|!449ve-7*j7Lrd5f zn00yQoG<|hpU>qf~mm#>+e%O7%$>djMO)b_Z91o>oaVxL*t{?E^q7%P78Y*f+# zoY%xaVuhF>>aH+P=RjNA%Xv91xlnc;D3*9*0JPp>j&OR9iow(XIYG2^#%Wi;2YE3; z7(@e#8dzThjz2mT?#TqHAN;wmEy}((l0Ff+{VDVY;7FwIeZ$&_Pf!@`Kt0kdo{(4$ zG6peHCD3n93Hhc2C`k?Y)kn5zl1i(LusnOxD3G!BHU$=_a0uP`@le%(;Vz;=NeX@I z6JH4r>;R>zRR%IXaB3p_5RH#>nw1gQ$X(@%k~8nu2BW#WgrM`}3d8WQ>OQoosLd0S=b>&v_^Ob*Nl2E~ z;HMtGFh|r>kX?^A*4Rv)tr-eW)O4rBR#^)~k_Hz3RnI=FetG!^sG;PzTYx;O3dIqH72lI;ETLdHoUf8rVE+ln}f#-mW(a3O1NE;iuCSdpIH z@+wQ4`0et;dBEZ(Y_w*7LVT_-OmY1RR*h#o7*^vaTxG5z_+I`pCij-VQaUc;(ZWr(ulyaWn1J|FL658dO zAryg;h$>n6>%k)*r}L;<>1Dbpa0|qXur4qZ4wxOktt7n#g}N<^GQ)ITS%RXvoac^r zbSv&Ea#ag`^4*F3;Tb-jcq80#OJdg`wS1($UdGDCzz}%He&)Ara(PR-hF}0yb{h@> z&*2}PRWVu&l600;XdF5Z-o`LKN4-a~G%vnM1F_ty2d8#AjQ;>iQrf9|rxL76m@L9S ze#WG2Mi3*CN5pT~^%<(5v4oOtL^lo)^^Aka{{Y26En^e2xmco*db!Tl?^+WB5ht3= zs(IXSSDxPW1ot-kgL$kKfzPWuzb@4FA!Oh3w`52_VAIUS8|S@)%P7Z8>A)OhR8DU<4AC&P#>c;^}kl$17 zT7QPb&`0aQJnd%AKkaVcL&Yi6HCgWNRs6(Qk$Lpzcl|$KigzZZV{>l8X!gWg7$An- z?mdl5v^2#K!Em=;R5Ph1umNtT+if!Y!o?!2a>&IOYsh*Wo}WN_eJE+7xVPNU;Ipp9 zn{TM8JOY2xrH0^yCglMu>0`H!xXm4n8kt?^m&gkfjAaPGBl{W|Z%JldrvUSlQVAKE z_A2?RGMt4BJCBjm`OtGIib)C~PI5pQp?m=9+W!D)%N&e!??pB0OZZy^bO(yABNf{J z0EJIOTMM}d`Gaxyr$e&HE~AhEI`dd*Q~v;JL?_vgHC;D@XxhvV&sxyj1_L{D^`%3y z)dNK$ubQj4o(*p`yi5+(%QqZ#0;`bT5Jv9ZM`~?tc#n;z2jeD{4Bf1hM9Z~^Q^q+X z@-#BpIsX7EJ<$+y54XiLOT?RpW5+@`tWD+!$V|RQ0UcB~TrfDQt(=2n#d(gxX$LsA|ES_4O z+>_AMimdVPW9bH{K@qkT0&o=et?lN-sLrEv6M{XylrNeW035f+^{l~!kji?IjCXnI*av9xTwK_QGv!9u+5iM(l5)l>Iu?x`u7xM`<@q zyn=*|{{YsM+guxa$Xh7T$rC09c^Jt&_Z|DxmsaT!ibR=~KioUF9Mi3Z=q|!JH32lJ z9WEmThZ1!j$MU8Z65m)s3mit~V$r(bf(g#n{Eu2&qgl%gt$dNcm`U9W9AtFI_of=6 z#d!jjX#{(`wp3HO2pw_n&~cxoC$~Z9bqtQu10qI&&emmYu6}*0IhH745lpV}Avhpp zr^xuFx?I;2M!r{UrfR2J&#o=s}Tsh6CxIMHvf6Yvi?}?2TLeyq9XU7z{x&~}4>)7ke?v>-X{Bj|tYLUaTnrM~86f+QV^eAOO}g&h zKvYIU#K2=}kGJTCB&YJ-o6@5#J1+w8+2%xL@HTy8e{tUPo~r zN}RCd9>%e7a5Uw}WJn)`?H{^FAXY`o+rA_P2kyG`rM8y}nTk_{JSZonZr2jQm5_Os z{{TyRwp!|zQHOR;@l6>ZO&4EF zbnHboibaptZp6jZtu?m3LZCA;pJQ3i9jY{h>6EQL!Su)>g4%YtRYT^2?hwk(|(14YU)|ijro9Pu{(8{{Z=lI(7Ja(ppKo=ic=pGlgv$Xp*@xG;fZ*OsNbsE{*EW7ws!?PR^Htr}u z$;nPe1#`*e5Je=7$VDd^#(pcX>o-vN7wm&c)23@n+xxK7C`MOLyv|Dus66aKNn#H` zGBO2Jok6gQ`_aPm%WpPa%(=&)XZfGjo=Fr|kh8n&MHwZJ0e*AsLRrAk#u_0e1_tx| z%_8w3ZA0+Mn*J-zFdo1+KC_VdkOPXDcf8q;XX$G66Tk4Ye&c0>+ zf~Zgc17kY_l21^FrUB|jaHPY!CQ$)6+HT~_zr+agIc{G<7Gr5vkWqr=fdXjsZ zABF&MzUI9sM}%nRl({=FSn@D1Yi>avQ6&5d!#f4?{{VL(vBq=nUIn9U#?6uYz+j5D zNKwI%XFPp{oSGxYYe; zjfaNe((W|vGw-Zk@X0A%_xCa{rdxxvg(J(15UM>nJl_81E9P5;MoFAvPIn>4O}YM+ zp8b|M@!ySnL*qSNul!9pmgWQ&_V%$xBDb)Gcvv8WdSZ=7MN#r{Ni|R}yK!U5@BXxN zIRx$`vFDSY)X;Mj-|69xQ`ptTiI9>|jpIG>?kfawxE?dm9+f&rllxWN03#WwWQfOu zkVj6x+qGXU(KLOsyJWz)xRW_N1oVONSz9<|J7Fx#-JAX5kGJwnamOP}q$p_AU>47D znm#BkcQ2N{j;Ehd`k(Z#b+gQ%JAE}5U}xB%b=#lmOs(!kklX-e=n3N(=b`@qd{7eH zMGVCQWmi290ML_aO@~qyqsB?cBexW(uo%Uu+&qrTqEg?8vi13<0${NRXohjYCm8&y zvNbrNP2`YzU=AxQt~6HC+{_gsQH5z#mCs%~6H?>w16zrZBecM789h1=b4sGRie@h> z=O+rh5J&s=s(s&xuXWqDf*sJny;*@=^ZxqL?vUG}?Vdmv@n?Wf#Zpv+SQ}NCI3ckZ z=m%fYp_f@R5(xwjp^v>+=GCLxBLgeYeExL;Fu1{xl;@BKKdlr6h~0%Bj1JriMXJnL zmMngvi$aK@Po?qHp0qvC-5Y?#us;qsrj-emYl-B7MR^MpCx)YKuH%1FDKGy3QRzTm zNOykDJm-=znugk9qnP{ktvwQp2jAF*Nl_h0>C}ofBr_F?5rRjghVAc2;&i)lm0XSi z98=2+U7V|ZGsyn6473$(r^f+lZ(B02E3=*7T4Qg2J`_r13E6nTt)UUg#Etq6lvzNS z!399~6(C29won`%)q`mv>U^=+r&=UB@E6j4wZEN(!yUuFy&xbK;a3rd+&i9zwia?9 zRJ(xpLDGsBD-iUMSGGk&*W<6@Kgx?>c-kzSm(Lx0*Mdh52sy`EhwsO(>}30MLbda5 zB!a^@%|5_!9r~dBI5_sLCDp+g2M4_=^Y@dI57MAnRht2T_wPjrbeG;^0J%B&sairu zJP(sep6WE^91~i{sP8yELGEav7)!PCRPM*UMFN1td3?9H7^uGY6pyrLJ?O~%v$P=% zBYx^BB>r@m!LAX5x20V(ouFc(TNJsFw6LmUq0jcF@k-Apmyb~F{{ZPgU5O(SGVRDb zjo2co34q+__MEU&lhlF@MH5?E05%60$3QXp);|6FKpEuEUAQDyr?-ya4dAh1pV_u5 ztK^#{I*qie`$)(Gu1Fnwe9&-T!4tAc8yE=m7X*eL+2@*xt^WXHu*@S3oG}|@UywVR z+-Z@@klR}rh)@iyv5;RK`th2r6R@atdvpOpN1o@{{&m0jtgE=RQOgt9(%8MrGVaHmS%zN^KO&aS%Hd zbDXw%{eEZz4iQv=G9EW7?jzeH{c~PFuu#h3j(H(^{CiY(S45YPM=L8M`BHE}&Ou>I zCzXns9B*Nfl^HqrqRg!-sq_(_!L!?+)}Uv)iN?l9Bz_&7k@W9C#j7=~!fbu*amm_7 zGDo)^Y8h^>0$>WzM-8W!`(z}i2r#caA9kVU@c7L*9ry$hk%~1e)SpCbgpO36MMov8qV68BJ049j3$A2X z9YP|@3Z6=w5NJu=IrBp(Y!F9N?L^BO%G*fZKNcKqACb)uD!I5STVVa=z$5)BimX_d zY-M7kWkyxsBj`F-jcll*TdkYqT$s?1eze0;hTXP0V}3vO$p({4Y*dExi~9y7;;j($ zFt*ce?oiIR1h_b8*#d#b7(e)?=SNqyjz)w22*8$lh%J!-Ni5|QMMszB-7`_XV*`D6uOP$XpYgZa{;lO8daCIJdQ z-@>Jj7(9=qYV*%7-_5`_BkXCDKWpeZoi!rI|^x@BejSh z2d-;laIOH83C07h3p2E;Hm>k^-N7}3Y!)Epw&OX^QA`3PftP6{5POblGJLisKUKyGhkbWg6(lgiG zQIax9>E;!UcXb1tdmK?fI69P=zz1RH3^^1z9ETY7jEvSK)vaS7LWV)po|vfPk>_3G zYGa@Snn(>q+~blDQSU^?#kgFQIjpLnT$W}TK*N*&iOxc8}vCk2NMnHV7az3N4)|F_J!weI{ zA_?@WxCgB&*zZM=E}Q`kgS#;1B^;Lb#(4Ls&Hn)2 z*>Mk-GCt?dGC1q+np1fzt;o2IL~`*a6}WGa`Bqm_^Co86%H-l$!SxVv&NI&)>Nt+Z zOFS)jZef!*2;i92&rfhGX{Vj{I)fxeat|aF=dZph2<~D@BuPrK$d(z3@^U@LU!`dt zvgPI|$nfJW&wk_J_oYJ^$~>l7Bw&E4QrmJ!@5ubHXiGPe3&rx=%ywd|8L&bV+rB^F z%?CCA0N*guFOpQ9iU&{aQ>2Y^_ktwfJk640K&4w9N6sp%oBAS|&3Fiwsx7d!$x zS8X05BRLppAI|KCj`R21DO%=_{Hw!Q9`Cv;BGBN!z z^re<^z?xZWU>Y+iZg(pU*x-@dJt#Z9SI=n$z%I{#sh{5mjC|)6N;?ZJ_A|VZmdRyo zWeCn3aDJ3ra|64p!yxq|HV$#re|iIPF~xC>s=;^Vagaw}s5~0i&kJzTGi}ZpPC7W_ zKb>b*G%45g&nWIlKJ#WP^q)`)uQcfFpP#9B*1H3_@VH!T+BrY==h}s7z_8(%e6DRrp3FXL zd)+fn*U*26!bIR;O&QxF{(b(08uIgaDeoSR++I^(Y|b-1&cn9qKP>+M8uF*}pr>R- zE?Y5o!)V?)J)N z5T&F90<2m1cO$9}%sI)gD_@!q?(GzL zl2{0QvmRSMVv;v^{6`?32(H!kYp(wQ`qsI+xr$w08~gjA9jtIi05eEbljbw9LDQ=B z-CWfstk&X(&jQC8X63QpimB=vRIy3-%V|>Fs~z5AlDjdM@4(|E{CB5P$$MpaEx(8& zTYHT>vP_J_3nnnR+HuEh9%_T)e;CK9>JWHuNRgjXzLjBN7!0=Y6PaDlO~Dngw4?VH z_1RDRZPGsXVP&aa>)v!wTr4SX8yA8PFQ}#<0o6eAN84A0Y z@n8Eu`$*M((5114Xl?YL4`}fiw0#Q1Y_!wiCnsW_UPe5;jhA!DJOB~+v&GuqjdhuI zuN7(%>R0mshDQNaQGX0*iUP)pI0&F9905rWuW=k>ws{mK>~}_T8vx)R;>~Qbv|K63 zJ-b$_jW?xsj1E}v2h`S#9x_qEQV&8q)mNbtOEyRm5?74z&T2k0j2+d0HlNv&ea+@a*0ES$i-xaX|PDvlyk6?YBs9a2w zM2h~HiD(8fkB_ItE=_jsGa$EiXMPyuU}xHkI*GfLyyq;ap%FphMML*^;*5RTB`wqp zU@d#?v2ShwY7Rl~A_@7z*JE)=5S{X}vB{{87E>=_lmlWh=&ILN`nF>S?)?K8mj*Q z)H>Fz@hKs=?~c_%CPU^NZVnFsn#AX6*v-?QO+ao9s0Q0y1jEaBC82&&J)1y|}GmkgIu%g#IP%My2d>461s%kF6jhwbBwtLn5?Xa(e!h z`Y7OsXi(3N2?rDeR})Ct+(tW|^)KEEwn~$pw1zg1W1I-jUVT-(%^D%V;~aca%WIVq zZcsg4{Xqq+yL882jYe$W@5SN*N(M7I(z)DKmnme z$u4qteR-(S11MbQuq0L&thu!`uxxyb-N(gHz3boxcVMHtzlM1a%0}n_3M$3t`9$*Q6mPuv5(Ub zaUkgXhCY>#F52LexTz#?!vi#}*4|=0cp&m)UY{J%0^CW$$0D&FoJuo~e!O+|#V|8- z7>V#&GFR}lgYf%(YiK28$dX;tNJe)Yla8O2Xpl`DjIuGA0{#_n7=B}|61sJvkUVlp zgj~2hbMZydG;0u+SrJv2Yi`a42LiQAxhIT6AqrQFy70@MhMRrX21Wa^Xz(}$gMw-W zvUGKj9qtZG1A;{WO>VFv?3x(VV=F2*5AjD6VCuo*XE^+0r6p^5VuDE$Wd!5}a0wp6 z6b-`P+cLAc!5Q^%Dk!TNLoKSYWp+hQq;e1COx5fskM_4^n2zIX8mKUNR44{F_Y5#k zy>DihG0LdxxCQ7>e{n-Vn=Me=>Cs5#8g+6%7VZrc29$TZ%`-EMVYZMl-yiEqRz@3A z=h3)&PJ8?D+M<9ex3gSKbl%DY$rI9;&?)zz>w}Gee>@^-Rg3wEEttM`W*539+bT`1&#Mhwq+!e zHtoe-65fV)aa$(Ux4Dq1{o$zWnvoQ$5-RCgJ`etnNaL&m{l!R3ucWM$8K zWb`n3M&q>g`K?w=;NY;J&B@2PtZtExLC3WstYEi(U-@~A{8VkJvv5u^#R{=V0BJIJW^=oFv^b`6${gCSm3@$mns6g zk5ceK`5xa&hT3JvV;Hp*ytl#iFdQ)cl%npzhphn_>+MEc+re_-(3r;=QNYi=G!WaO zWVY=0%|dipTU?lmy5}8oIiZ6~3;GUJ^vzi(ia7%a*9}Q0w~{Tua6O2tPRVH2JB)%) zrH@>6G{;Q40#c54?jDkQ13*I%d~O5gi7Fr&PzTbOx*UD| z4V;5bG$x;;O)An!rrj{Yj2d|~%N&3wPu7y<+(!aYth7Lw~%G80QB$ z;){a#fB`<9wOzNE$Vp?yIHIGtBO|dC0M%~Iq`qWpxE?Y2=8K&D>II$$4-2m4-N*;q zJ*hF3TVNxo=N+iO4oJjbTDdQ^vIn?7`Ke_N{PA}HTw+MjFjLfHujN}C#khhAt=Dv_ z;Kp&vus?vGW7yPF!{sXZUZ+o1Tdv-Qf{sxI(=lzZO1LaPb+f_xcKE4C2Xft|$c{@= zae_}6*^b!!%>{3F2=h(EjkTL>=t#&O{{SnIQN|wPWrh|{yaYSTa1J{0@ARd&F7~p- z=@v?Yt~m7$;{^Br09vGw523wltIeK4VpDGo>2N#!c*o~NJmT`j8C{`~A8X^=pa;0= zOD(Sah@*%F7P0_Q^Xf+(6F)+6^u>Ejxbx)*s#&GDV<-UR3}c_`NugN(0K@kso@g&5 zU9&deV_bQSoF09^#ZBfc7c(Tmm1R;}2k_)%F!=_NM|L#vZyq+nw?3?K$p@&%U!T^T zYfl`C(v8LmEgQLP&!2l3IKI64Dv%Y8~^^B3!9)wi~O}Wfr;|49i zj04J^^<=fXGR78Md6D{ap1(Au0mfDrsas2?&-dF5h-4>n9{&Iz`J;60MQ-BV7vo-V zdXJB#ZEqxZF|-qY7T_OaNhY(n(eG8F#t$P0f<35TdZ*bh?0lC+j_w`=@eU8-P%(-O zjQ;NL%8atUOW1kJN(U%Ude%habVI&K6$!PbTZ(%|v5@PA^#U+MQTEtLrC;l%ZXmyq zi2Rj(@m$F44q00`#tAs<#b2YHB|#)@k^DgP`L0*?y{o<6p<$$?io(t_G{JxT$LXJ) zy}oMz>p&F0%<{ObPm(*leoktc#{6TXzOii6`3-$=a4p#zWQb2;?mF?)lT^(HSMX%1 zEz}pfJVlwVV7OEFSygaJPiGixoP*PDa%-!{Xf7fINYJvJh6BIQ=Rekr)%-ILh%F$s z*8^We8879GsNJ-#P7lfcRr86(K96aqDzlhrpJ(&ZS9+YXG3%nOm1;=(?5&on1Px7D*Vyu9t4HImU zNFK-gQw5%N)^UqwH4a1ahnhJx@_W zNh`k4{3yUt*8on{vS6bGuy5{Drt5WYC#0~WbOB@l{~_$7{Na6jQ(b| zBOsOGGv2aPHa38~atWu{9u1Mt>sus-2?0%~j-+H(y?s0np7o5CCmfIKMFI7c7Li7* z*Oy*giO-e$%sxJ8?W8R}&p|2x1AAa+HeqO7d+#vmJ#44@egQwtS8I&_01ajx(jBBLDeutG2K&mL;g7yEMMHcx z6>5S0V1H0%lID&D1h)bPrYrz0mFD0pC2PsUW^y+*-TA)Rye zrU6fTkHf*G7n+$Hi^+lP1xohjbvTzE{B)ru)1y@-pLp-ZG)u4;uAb@0KeNfeEOApw z1FtO2FKi*}P^utscDPZ--L%Th6gK2X+x4ai0;a_zOSuUggW9H9k+30L0mxSVv~;ZwuzA>ZSOCX4l~KkE{;ef;zp5~ zk3{4Oh8R4_q>TgYC#Y;6)4c;731MNF-^l>u@f?hPRkTZP>eGGTOpC)PInT(=Yqs7c zB1?HUVNRl>uqaZ6Cog_;cvx43IoOr)Wj%$rq!rIN8FoI^6?o7y_cO+zDmsf_l~OK6~s36eO-80Gn>B-O-G`B+znq0Tyc{Lt4WM1S*> zn{$$*DUeujKt1`T?4s9l-A5pDI9VbokbB^Y^^OyJ=@Q{pJfu5`3nGKu_n@y7vMsqR z;W4qm#z)N&0o$K0MojflQ=cmVWx3j01Ol}B3K6UXzxjvg#PLJ|(XW=om0(9qQx}Rf z^?9a69o8T~{Od7E1BMKI(0_H}E04~L0bEy(krXh3z~m2~ia*a|Y9wTF&lx!%mMV4A zVYwNO5E%41J3;!2pZp%<%fxd>xp~2S=klqvF+_7uAe6!jZRBC7bxGVPyn`#{9 z4)~zf!f_!j$s?ahD*xpO1$-;6zDhVzb zcy5GspcZVNd9OXnlY)2@PvM8z>TF zu;|J;rPp}1+GBmd^bO7^0ubeMyCjahP;VhDJCZn}ZJDN+BOV)*pX*2e0ER~q^!mG& z_NuxftOhX3qxWz*qb<*xnd^$gn-(IwPUDO=JA2f&kQ73CkD5V43l@#flQ7QXjo#In zyv-`@8Ws-9Lg00gdylB`D~g7M>%%-Up(El^CS|ycqkho=G443e{RivPgogSo7n3w`=Ho1~FDJPNkba_! zx4)ZIv4;|F5#${32?PD{NiMYr?yXW)T%iO7$KheYS`$K;%WeRZYO`hQJ!kcOm zy~U7q+ahqmU$LouraSEst?X}oZRJFf5~U?%cbq4MHT!%|kH3YkbTkIEkE`h9iOb^sQ$V zR%I8xlG>sf=P-hfqjw_*su-%VKcLup-hO}*`NW%=bD!J?N zR@*IFJD9^;xKc?Se+eC{DdTb3P@0yFr4s4)1w@%Ko(iA$`cp`CMRKQb%Z!2#>q>8K zMDr%M04n%X>P7?bn!YM&UuJ3WZi_^LWPdguRl4Keu!!;ck;h&s zCX=tkOo<(l!1}leALr}rdp{hK{4Ek09l3z?~V;E)O6EmqI*`% zOy7il;r{?bMWnIenOu&0jPXWW-`h$a7`Dhq43EHXfP2uS;_U-UN|?V%*M8z8mS_Eh zN@S2Xu;kY#zrT}J)bB6n+$6b~q}#WqdJOyw56Z5dJrU{F@I`3&7kMmt7277akv<{`>VW+Ls z=#t$I2FDDHyX$8xeHQ=7QG*)d=@BBjgS*|YRW476SDI7!a#ygL4d*`(_hFjIttk=PmswaNAomq6VGlE`5EVBOq`MaTU;;~XX z?X5f3ZBa%ji%Z$8X7g>IW8(*mh8@8j2>7Av)gU(z+v;a^fLm*$*4VeD&;J0kC+GK1 z6}mphXXm{wnSN6F6E39&U#k3D~9Wu^I_Px1D=3lfEeFdTET5<(Osm{ zNf!APV{l@8k+HV`7~lhy$mgzUaNW>;8p+8&w8+ODIj;c28OT%8r465DNdmk+VTGO% zz#|}jwOZ6J6=n1t8^RC^7D*lmjH2 zM_?;cE`1~iZ*j#cNM+A5bKFxKO%~$yH=sUPABda^Ktj=gNn`3g7dfb&PbiQ!?j2Qn ziaK~L?2wsd+(%F;LB5ToCKMq%+&=Fy5T1d!q$Vku%Oq~hc;sMxb5g}`EN`2QsHA?hm?GO8^2EcH zY;-x#6xC(@h%X#@Bk>gis`h?lc=8>UM`j!vvDm8JjmiTaGm}}%MI+M@AoMVC&}?3n z8Y0HS0i63&*fil79EB&XNR}ZLwy0y=)^}x4mPCn$=7a(}8Xid_3fPEnJ7$>OfEBjq zC*G4xHe{bkJYzL+AROFoZ%$QywdpVy)JHw)5g3uq(8T--K0P><%)AeiT3CS0(Z&YM zmOkdT5|T2>xDL4;1xqD}S0NA|U^7HRr`=&eRodR?j8HLolP&m2Oz=lTMhOu|?G&i^ zrcmfINTY#{*y&QYhu+<{OySeAf=~3M+5t?VB#fj-VLSkN27#ALxC{%fJ=u^q8a!iwZp4Q~ebLb7Kg>6 z%lvG17n~R+>Ux%Qiq6Z^KY|v%@;=L9p;c4iCj>ZW=Z!lH_BMM-`Ys zxMXByKu;=q3IufTv8A?)#QMRx`@9Q2g>`KZk$Dd*#JF5@y8(#$S6_zd7Sc9CqAj3c z4uiK!rTv;|_V&MLw+7i9YTE7OHqzZIak2}Qm7!6`{@EELIV6wWt4_0XZKc4kbnO&H z)-+U2=idMUlYlGYKZ<4goaPg+`BF^31N($X-C=* zi5VaKBHP1v8il^BsSUjM21t?RY!aywfL(?`!9S6vuy|X=ei!isa_N@BAog(CU0bUo zO=2>EB`cl?2P81S$2kPo1h7sxR!Z*c^w<9P@N~x{Wj7y+{=5GG&+2={{s_}NNDiqE zpKq#5bfR+=@E}S^=XT?e`h@o*&5qdOa8L}gkbQ;-&pWG@_;c+VPZV0*!v)># zw~;$}_OBrZHau=*B!UlrrD+8@MLBe4_@?;wUT%KdUq_Tl_HE(&KMhIdw36Q5u+(m) zB$I&BF4)tb!k|=|Z;E95R>U48n$}+(JcVp-BqAYpsu_$700<5_+DLB z`dBonB1xf$&2eud`qCkc%!;6yBPD(#lAfqr;JvU~oYPkZLBi{rF5y zJ-6VG%DT6R{5^f*`w2DOLR~%|5v)c@MW&+*$#e(q7?Y6dGlSf4Z~(4uU7QFd@}5TI zI-pWl-;eaKrNiV$G%GTa>Xt(6WmN;jgYEsJ$dM8QwRqLUBDSQCnNLeL|$l@ zH#aROnHt7&Kx2XVdy0`P;?r$_yu5A7HwaYc`qxh-=*aSFYP(`6@v^TuZfap9_azl# zmO{ghG6(+vDheG=)H(9vR-B$*PDuQ!XVe>G7m-GKjC+QTTh&u+TxiyouQ$caI(4zxSi9by=c) z(=q~iEYa?$AkyzHRLLVUxA8H@=U$UVnlc%#S-|RZ(uY7#adma5Pnhmt+tY6-SbS3} zZ8p(mTY08&F~MxOe0y+DB9$ewz*a{_VblViIe(81u*@-m`IKrV*$aQ8*Y<4?GXc=~SET5-Y8;%$~VhEW?bG-!)~_^(SD7uu4hc zl#t8uk=CWM)uBZRcM(U%0b`txt!SHyA*9$U*vF!2u&0=0BRD(%07|Xu^O;vY+~*># zm#0shlIlJEG8KG%IvPoTXJvHz)_2;Ys2L;c?M^S`7>eEkVVX_F)DHX{)n@7@c3``e zf$zmy?k$8+fgFNJ^VD($ZWYylEJ(*nfvz4g>g9Xp znd&7`*t~i9UeyE;M|UQ~^p;Y2_^qtZ*dN|war`IT8r3F{9v^qUYDx6$G1$BV#}xzG zJXj=i@lMdT7?%vg4Anex@y|K-rD0D4nw!gz4@n}J2j?B?C%W25pucXJ0H2zUP1{Kz zliq=H4*TFAi=Uc~X$vmp=zD|GgG6Hx{|%wuRc826}c?Iet3b4+b?@o|qZ;~&nUv|1sK za_z|=*0(x)Fbt<4(~+Y^7!4a_{cCS5Dv)^isparG`4K~EkSKlIk5OBzyt4&E!5n~T zl)hV!z_}jO6pE@zUrTkSm^3pp$!bufaa_e1z)2T8epE%J#jNGpDEyYlV4!{yeZ9pc zx4L-B`J{u}=A@EQB!Qw~8|Ob1P=-2{*qYshamd?Gt8#iu`&E3|mMBp0#NwgV!I{x6`6)#Awzo!k4YVWDyr)i<eZFlBfD^1HDhu*JIYHXTYLZ|kn3aA}<6g5aucI;%gA9%Kj zfyh=F2D3J#ZKt-$V;PeS17eie5-j9~?e@4Fsc_w~)FO6o#M$S#tMcns7s&;q#9`Fo zhn@yNXEsuQ0~N zNhb#$`Jyx}U9|g`$udIc4jb_U?mlX}vVA7+_JkbuBcqRhtsAGHO-2}>4HT{l9?Uad zpA^$P*Cv_J;nfA?Zq2pIdP5K1Q{Ub!oPmo7SPp9gS12W?(-Bj~W2AzAW zoAaaX*=wa-UrOh)Mh74FWq=>}u6&Q^rzg@jgnq3>cFGrswMNvn7Lm`P0E#i3;1BgA zpU#AhM(EL-Xvp4M+J%YC%-O*WgV(740AiThzm~E$Ib*bYSH$I;$u}qL`kZl4ic8Q< z#`jVoZ!9p|=10o_c*s4zqM-24gA#k;XJtCt+l6B!m{#*}=TdC_)SjMAH zwfpVc@eFyuAPkoy+xpO66YSK|JKi zJc9+p9*euUQOC7IqU!5^Weo91v)jzMhEzFL`X9*CruC-TRn&3RV2@%e={#=^9wgkL z_IR1Rsd*4dqvy}H-?GCS&2?oK?E0BdaKre8e7mmbl3B{i%5m7&=;YBye;Zj}dchf2 z+tcKKdil@oXY9SLWS-{QETQ!>sN)~RJ}c@M58@d9oc{nC>+?JbDR?vbxc>kP@A5uG zxVI`#9XR?>Y^S~|<*n$?Ybz;J$3yQ`i-<}dM*_Y}$?>IzO*DNskK{)*Q$QqQv0J+1 z^Q|k+YL3&@uwQz>8EPOW85Gj6C9}Mi%&<_B!yv?v$TE-h9goQ5Q7vZ`(wTI|W-H6v zvCNVDgZs0C*h_{X_E|=qsoswtp@}!94qdJ;9(XgpHd@Hh9lYhuXcjBRuZ* zuX0Xf&27|haNWu2K+hIp#K^?AOq0!Be$W2P^{=!Eu4J&6PttU2B@KP8YWJ&YVQO21 zN13t%vk(;kEOVS-F%Nt__GhQ)dKI^ezSr(s1CF)ov%+u?OBZzqEiw-DR)EpX!) z7)5e$5cv1)BT@0ev$FfGwuj-3F?MM>7M==PS+8@0%#ycPmC1J}lZ*iueFE9k#J3j` zC@wSf=}gizgoe4g*%$*T2IoHmx9da=C^xCp73-14DO{))Obi6~9M{lYo?TE}cQLEy z$|)Ep8?aC3^I4Npn(NT6Ry5&NMhEFZymr6>RJm@2_!Y7dAK@cu>9Al>05`gOOiLFa z=aNrK5-Vi~YzGAOW*Gkf?w&h|^0H^1-6{xdW_d!urK0VT(vx98QO1!FBvyGkfJYdk zj6QODP$3=nVvkKOINLJivG_(i{86^{kfRrPiz<&oo<&QL=&u_s?gy3};Pg4gGqtox zqgB|7a5-VkH%x3RWfCln*Nl-;!=uaP8=J;|azcZF?~iI$6fFCxaNcneCr~3!X?@O` z4)58s4B&J4ztXKR&1(u~Av3Q)c{b%t5ISza6=1c~1*CiBk~GdTrLsrGOO=kOg%uTlY;o){L)_1}dK=O@ z0YqH75)MIAz{M=MkVK@$cpY<6kl3>Iw-bffI+L1JIfVh=kPo@0bLt7S?o*$oCA_+Z z9(JjgAg$Q#p)NHkC1;GL3XTpi1!K)j7j5e( z;Z%-K)|FrCPO>m7gN%a1pPHnE!>yy#FNMjsv1^E}BN9&}F*Je{Cjpyi$QeCru6>{X z0K@N%Ja?f(tlA45I>O|Yg|8%dq;NRi6K~-?j(O|tR6nx680)%cigfEQ4{9=5N2=XL zYkd)m%t@jxgOtI}0X&XHeTzQ7tss`-4QBnwCkT!ePds68Kp)b)k2lSqjV?9c@1wuR z@#B^@SBHS-`#A8=gtV^^-`hzxn{$0PpBN%1l3)l6yPSYu>ytoU6~5PWM2=)O_U!ir z#D+#@C1O+vr;^@b03Q7FiZ{f5AUeC-CyO9A>ff`C9yL_XdhSvN?s}1v+r32wm1U;e zqUdn7gui)Pf<)z*GL$Y1hq;b+V30D8N~SVL&lN(~e&6&zvtJeJ8WoM7hx|a-f3SyL^Cb$7 zKNMF8*}>%Dl;b4l0Oqe=IPqSsty!|!YEeyah{W4mCiq=Xr1`vhWQmUCY!!7lIANON z{v`Vt()D@mueGgSIiR>z5?tS0m1~=fC}|{3xH6R+bBtgw8RomAJaB0*jeql_mQkFx z{{Vl_`5DzNrTan`SGQgsk4Ev8hUl!Njbcc3n^onanRELlTpuc3*=*tS!LDoKoj%el zJ1-b`UiuW*mx=5_0j}T!6048nkEVN%%DNBO$A~;I(CdC4y}4~p>r1|x2xquL>v5;6 zY=&*)(b%aY0O5L*R!| zx6m#sJg?P}crxzl4L;XVu@S{>e;1mqBb+jv92M$R5$+Ekk$tM@x|fXp>pzQTg30W| z#|88)vf@GM&zX<&N2h|vBPX{Ms@C2Iw$bhMi4Ga>M&%U7<>C909mw9A^!T3|BrVXK#!b{(h#pC6Bho+P0%<;5bA& zbW>`#4FHj+oTju`C9sk-3uzJB z245s(nrcBtnqH9-E0-R0ozL*qiqNf^5gYot6OGD0){;d9{BcIHM!}W05X2Q9m%T{P z-m;%MR(5v$IRFZd`vJ>pjO=3>C*aVRlX+@g)<8dqdVr{{;%h}xR9rJ0ejH=zT3k%l zvNFv6TQTa5)9MW?Ry~j`t2?v#j)3vNMr7QpX{_Kl`dJ#;PtQ{{S*EC_J$k&)2u-M!@&7?P#NtLfxZa zLHXd;yh#eaOW4)X2$-)x&xTR&RiWZB42&mPQb2HXRvl92OBe%5y_k$SD&C)dd)GPC zCJ%QiF8O90hHgK-Tw`RnMaoTiWkq)giI8%BC>iy8YqXu>Ogb(=&g`FY-m13E_slKF zrNQbB4k@8)TWCLI2peZ+LXr+l#W0-)lgwbYERppaN}B`Us>LdHn} zKCI)mO)=4|Zf+;tZx;M82X;UoHKU}qW}9rdSV)qFSB*d&O=9*4K=crELflH0C`R(^ z$D)i6*S#gU)MZjZ3=hbx(!HZb=q%cu{*oAHr4WiX0!DGxt5Rx`!g5@YYjxKcpvlOs zQf7RSV|R@*XeqWymP}{ftFvmdv0{hQ?OI2E>yi!*aw@oy%(2B7Dpxy0ax?MTq>kPe z1UIPCn>|FzKy$aA{EX8*nLWc;sT48Cki69Am9Z zLmJC;!z3`l?L$v`c6wMb_NYV!;tuV#lx;sg)H|5q4A~s?r${W6NX8&sV3WxBsHL1g zQS_+1&owd+HKRo5@QP?wdU-dH6r7L4S%5Jk)Ir5%EwlK+=~}j7Y@o(FQDP5=QIgjI z)H-zbqhOvnmvUrhkTb}oWBy??jz>{L!{*z~`!@9F+JGC&r^Ls3U7L?##RV>c(J`Lg ze8|8hfaetIEkR>YlPZwZRki-vCUGZ}xF3Xd{Ha?(Nr)cLd{N4(4pfoyD_vttNatjU zfja|zGAhY;0#9e=T47{Nl7pcK*i~A4zcN5hM;k~zsixR8gi%WNr6f*@c)`VAG{=2H z(o2PvUI3oBreGD64xdr)Rm*KAOQ_^{lr&?5$jCoRB3&NuNVIwFZy>sX{WHZL;L(yZ zk_h~=Dx0zrpt3Z(61!N-XLGm(Bh?FI@Sk-(jUVD0eJL#Az0q#M$P@>*Y~*py4N~9C z+R9k6w>Uoj^|)tZcbqP9p0w)1=$1{B#ssWY8Aq!hg!at^sMsQ^Tv;ne7-SPEY=myj z^d_z!`U3M%(V)Mwl^T7l#@U-|NTZTe9=Ol)rP?-vm)DJ_Y7h5yxKb7I#(MGf>xyxj z^u*KlAe&FUj_AhrO$@+q3RfG4P|NNq_Mhf@P75$xup!x6-V@Tg&T(gN~`6#NU$ThtjRz z@de^baN2i=bV->kEKwm5rqDJb;X`_Zk9;zKdlOzq@m%$VV_nPq9*^++E#>C=kNG&o zyKPPZ&*4yd(T)-`9C;uT0Xh9apl#o21Fq52-nG;&LPYEwrOQOAD**M^t+Un&#?HJ}dRP=W{Qqe3Se<w;^wMxIZw`?!$*X=`9)--8!*3_BomGtV36oDfL>`*f}kplQ0#hjoAOy(~v}IlDnDw#pth z2N(s<7}|4+`a@Ch#8w^^yStcOUr7>&@0Bi zB)>ftPY8XY-}s{YOVg%X38t1KBhL(^$f^O!b;qHO(}CX^;<^ROMXOo0rRu0~Fs?^W z{8umg8-~j1^$l*>-N411N^Qg_xWh12$vk8X{F>@Afhx1ce-AD?kUhuu74*Ig@+@jo zd++o-FDXOnH3g&QzqLQJH?Vo9f)XOhEEIkpk?~(V>l#bjO3LFL@O|s_M)J}Pa?!0X zHnf{ajnDM@SImEEA7<~R%`A|@L>cz{2mLGQB?$ij5ywyQukLtpoV*O2qxc{8K4rLv zVI#IEMi@0|)wH&PM@CXH@m1-f+nV^_Bgd90G|#KSnPrWjbo^tU^m>da$9e#a8ZtRD zy=#&>IvKGXXZzN;BmHY~a6c;3cP6fcX|#@&Dqa}l5YE1JwtoRUugads`BX)K9cXuK zn$6Kjab=)hYd5x*z8r>qR^s+mhTh)VGV`>DqIqMIPsTy6u-boyzQYSPy%wG0AGD;v zO*eYnX?hd)Hw8&stCi>?Q{^Gf;^b|vDPwLx>^s!9*bAjQ23?zf#YVErJ9%l4x#STDQOA`NGk3cA7Dg+kI%;fZCwvY3p3tJqE%#S~KGh z4+%Y9VqZM^bHu}{xVeomeY+mjE{*o9@`Q|zIOikV z2D)d5{?qMzS$hr7j5NOr!}lv;1h*Rfsh;;!Vmb2U+5}OlIpi}OZ5-Ez{ONq2xBOVY zMLSUN4~aAzD~p*d7JFzEJo4CH#dqZ?=*}ZzR3CFx=`|&l@f7Am`~IMD`B!q(KGZ(W z{5d-KcfooSS!sHRXtkYQ%H5&3PfKlR3uZRnfIS7U?o-8fB+~JbR|c zsVqX}^rK^Zw&!VmTROAAIX|%6%-8lygO}NbGs*waa8;7_*d}fi1h1STkPY+ z7w1p81jf_4PaA*K9fGqac;IJ)U3mP=68HQ5R&&e8$rI(-@19M;0Dj$SAU6PHj0WwB z?(P2o3LY@q0J$&%9DyqK5GZal_s!akH_`Yx+&JQnfk zdYQPmgi8cs%0kj1{pA69A3v@t4QIgKDzedzt*Pj@cDhJV#&&qPT;p+2<-pGwBaZm0 z=L=gWjH{s@#ke1|lX0N$E!HLUxZ|8=g1poc+<8{n&vV{{``g?@hV-{g48lyG|_<~ z584rv>^^AgK^>%W>>-$p6YMB??g}H!R&t(U19^`vhVV+Bd!M2n{ zqoxoX{zkqx_=M#1wB6VL08gRuqQ07GRgdh@Gz7A#EX0hA=Mvn#Z*uV58wa()XdCdc_+SoyF+=OxRribZ)Uebo&)jbH8yh>>EFJg5 z1e2&N3l0e&07h|=PXfG*aCvfZ=U$TNAdodHMXy&%CK9k*YObSeJ-x2ECP>8t`12Ze=6G>y?hx zmE}rGDhr}XLO_iaAiB64@y73{rFST#eg;B2qVNq!bqNHE8Ws)v%Zvl_O>H#GeML}5 zb+ws>2^&Y}Udw7HpH1{F({C5mZ*T_-#^cn{)|c{2ID!;34BKghNVBe?SvA4%sQl|yN(MI;=sPa?c>I+sD|Tw#SlC8)PRO!=KxEfXGu z_Y@r3g~X0z-rJu6b6(Y2Rkte)q2|EI+k!qRQ?cK%E~|GUO2`i2G5AhuDDUNHoXC!P z01Yj=``Zw<>O&l7zCI|MXfK@)oP}4WO>`uv#GCw1;B7!$Av_FcH89lgBVoQc^VgN@ z`q1qiz&i|~G5-KnLiX28SnrvJIm7Y&YN-I@{95aBrqp10+J_Y!@*`Wnoe=XwXFbQ~ z-hzS)go#g=B$#aH%p84aiL6Yx`^17WTRh~I{JYj{VylSVuwzfI4ne5Zr;S;BvUupj zkycwxA56KQ2J%REazI`W<=T&zMX*@*MR_X`oH0?y`qSn|5<#8A`x=Gdx@BOI+ROms3AFzJdR>87)a>P%!@_*9 zIBd~AAJSTT_)_lm?Jdvakxo579ja@KeO}&gTquL8ko$%xGd7~=eCrUysP$ttzp5iw zvghJE%|A`E`>vmSk}RhH84Rp`P5>XBRVJ~X_5?!c#32KE^vU<@Nk02~1pfg39ym6f zmJ6H%@0zgM>-SF|mRbvp425V){zDX!aY1TKubmR^EU`$|IQV9a@%5;$RQX~RlMMU; z?ea}oX1=_+$!L{rah3_dBl?<43~*lF!b_w_BMJv!YNabB#8GLZyPdwjOKsXlGx^nx zq>{{qj#CssC?u#GusOi%ie_}+yQGwEWjr|Gk=me5I@m7xV9K_4azELqbH2+^tqGFu zE6c1pI2rVn7y|>Tp(bT7xm{ZgfVs{^FuaTIu{Yf#P`uzKdHUqlb2CXR8Hqx9{5h@S z?8;VxE-mAk!l2rFij6d#qy}M;?M3Nm7(BCMeoC%?-&!_nIo(=OwCw=oHVOE}K2#+X z_9p)T4l3@XD=`OX2fxih{v7H+Br!a3O_J6~=G`VqWzPqoJ*rFFcDI3UU=CEaIbO8+ z6Tx;vYhcT4N=Lc6^yGZgt7}0NOO^#$ayt=Pcz*I-=gj6NB}fCMIk2*hOR3N|n0%Hh z0Pn^tH!qV!mWZT;BuW&Q>srqi=t(Qn;;e&4jVzW@;5i(RkxCd8-IX{e6$)3;r3&o~ zTZ%XVv&Ja*zDr23SdtGIrT6gpQ!BNtt0DyX9Biwvc*Rs_QV1*l#)byY)QFmh)?M>}$%c_Bu`8}vj zUrUk{4vw+{ag{m8)OM*)V`6laE9_DMJmgf?!DeYgwiq``&9;>7AZ{B6nu0`lFPKIK zGsRzI>@k&6Hs^Bz*S07K?^~5q&taO}i9sm%JHZOWkbgST%FYc*o6NWtj-%38a8I`s z=?cSbwRVgc*^k8uEOJdd9fY3bbRvhlvYN`{%eWzrP|L_7jcCuEl649n>tclJLO4dvLKOGmUHa4DUkfUUjMu?d+$5{DTK2>#TV zQD3=%t)<&0HlBoZG}lO3KVx%hf=9QLF1>O+h^DbkrfRow$2EY05HiuD;4vS(0qA}+ zgGF3uaOs{Sfi!mWZSK=@Av~jZLra&SqfJ}HvFcWFecs(+xQYJ&Wh_imNSm?xb|bx8 zyd`6Eda_NfY4Gk?)fil$Rhh}kusP?C;lZVH_aGv}QgnQO~s)>C&WrEh;ICao8WuNaL6D^r+up@>GpTsuy zIX^T!7t4RETi?ku87;2RL1JX`(YmYg`={R=RVv!z`&7UEh2Xc6EVM5n+NA#g4({2< z8KQ3OZgpGbo;}gsk(pOG%Xc+OJJ_7Q3pa^wb*VKs38h_IM922A74*oeGmzg;*XD<9 zJ+*5~QyMg3U5D+*mf6Ro1JkB^;Nq8C>bljO&`%xPWw#82kUKIk`5n4I~*!KO9HodwkIuKV-P7(2hXX zfh2{PN{2ZWxQMKg&hNJa)N{e6$zui73IW>S=b!INU(Am98DaBOot{wVw^8$3CuVg+ z-5*$3o>h?T^Hix|c>e%>DB%QmR|t}kzCq;|M(_Kl=~Woy@+DZ9ZEoQ4`BO`Y9g-<* z+sm17ah?ejt9F9zQv}uYnH9@~IVabF!9L=kwgb!ZF1=n~LOYLYwa2S0%Ii1`2+IOG zp8o)yB)qglX1KNdJAh>O9gTEDBWjt=Jap|DX?NP~G6_{NhwqP?fJ|Z=Sb7{}e9);U z-R=m<^4}yA{K2ivo?htHOsM$s&~kU403TCi~g^4Ppau+8V>T9rls!a#k z{{Y#ph2YpWuApHLcFMyhXXadi*BQortLH>jTq2-E9N|tdE8@J|-(NeD>1iKR;$r$Z z5`Dd}tP%+^7#$N8n$VdHarWKM@ZTmZIOcGfrE_m@79WnWoSO{E*V!j1mq0l z^Zx*mL`PvZ3~IYqZb{B^K0WH$rLB+MNVBzq5dQ#(qH^C1PbcYJzCZBHxl?ode^Zk; zosSzzJ7q^q@ZwvgtLSkuN@QtT8(9AU6Oqet&V8$)XnG!}ZGT~@>Q}E6k;ft%HjFvi z!>N7VmIMxifsx*e(C^mCf+DPG(Y6h_`uo+jmfHHu%!r-ndG{Yt{p-I6gC7=ZQg;6U zvB#Ioenea%s16r(ln_Zfxd*?$=S-rNfL2B;C$#}2sF3ZrIU#Yl4ph{3?IOqKp%V;b z-BEf(O|BxB%; zl_cD|O-00ZdY(n3`8(xMDhkSX>3gGB5I+D90qvqo1R74dnoJZ_ownDR#?Z5w%m-nH|1 zsB0C^$l8tB^Z8bX=CNL=ZpM1OUawLC<-V~6{3&bVAtb7cvKz?8>ERueQnUv)~PIo{{ZGhioYCl`Pa3? z^GA};A0WywGC^Lo<(4DH&K)Cd!wfQ@U>;ZwwN#GB&2<461awvH^H$%ptzTZ% zki{3@}Hex8RV-^09Qt3?1@>^M%Ph2047Jvd50nI&edrjxDYIpj_C? z95#9-#k9iWK_Z*U9U2|SVO3xx3=5gX?%00>V6Q^^xYa* zVweTKwfn>i3n3CKovhnf9j$;m@rwC=aBAfmUnjd9a@QGIcN(nXJ+~GP@aH6L-N(+~ z>qW1M+Tz~M#okoYtpOc>dnn|}D4^SYuVnN(+s5#(PRSMpU zYG1GPCGfA>P|&<6?Wi!-Exbh~#5bXLFWjMzC}S!=7<1Hv!js$z>oz}cz8moEy}qBL z+G-l*vP6#e%BupFBZWwq0u?|CqY3~30fCeA(eVd>pz!6jorj5|x{4N-C?0Lm$coOy z21iA1n914(eX682`x`4srPME3V2hb%fdspTN2m<)FmuQ0Rfi)@#w28lduQ4jcl<(l zF8X05_usV1uzzcLYSM-J2+M!1I@JEw{5Uk5iF`i)_goPYO4y|g6l|4h^CbU_!-wj?Y4mYfmvRj8!(2p^OX*pMAD7VqgFD5{IxIiiN>qE$n6f$Q% z^?TPo$h>9Y?NS{(Q1HI2_cM&c_iJNy8}}eQdz2r7YoY0%@XM}UXbE$uYgW2OyC6nQ zD&pDPD!%QC@*yNS+DTPb+B(rJ*yGz8$0xct6jpwD257>zdaoIx#-3uv6}kLBG{9;4 zf?Vn`Lt!=e)2C=Ir?QEsiZ)V5<5AGy)N6gbg_{URM1BwHR^5<}iS|L^{Zm)e@9pe- zRD3CC1+v^-&SUdc$C#+Aw;&cJ_yqEJ!LH}5&8OSxR&n@#ON~ zYl8ilGql>Jt3FodYf?(F$PvlE`4GQK?D}kw-djm3v~sHw2~&}r^ZFhu|9g zZqc}4k`>NR;RF7vvEEwSt)$K6#^q3zQO-}c4ROtO_fNa~T+=lBHO8f+t+|qMJc>{^ zIP&)SXFh1;F(YZ;<=XI5FojpSBuV*IU+^}1bdv| z_oQEHg2d<+>ojspu(=XO2bmn9GO9DsHVDsi$2p>Gbr>2byoqBn25b=c!Okjg8)*|k z;mgfNTdS>B-tx}s_UhDmShYyiS_F@3=bSj)6$vZ~;mw$M%wWjzS1JIe*t!=;Vgq|%ZJ{iwP;Ct(m7qI3($TQ|T}CK7$aKjhB0})U z4=fHrKJ>a<*0+GCoZueV;Qb8&1n(i;>Hr<3yL0nYpwqh}lIXSCIzuQ}rdih>ut31} zs{W%T(Ut!1mEG7dIp?hlC9mDLG;ZNs;5Orrp)@p-wX&buv#BRI78k`cR2!Fg{(@v1q%73hZY7U{Eo`5d?kVww?nVkIIKKLbzD3 z_DH7yV2|fiGR*~yF=3z$;2gj8{Cc8lxBb!fR0TUxl zNYFdV17j_P$MfQixV?9TG!M1csL2@=5BRIF8Ha43V|;E#N6%wdZHOgIa683w=fV4@ zEHF>FtVf|iK4h|xNw);-a7aHs)ihe9Ge!l?w67C4tfn*c=QU>V&X;79{pQrL=lr=p z-!+`2#T1pZ&!bGxAapyK2kTYKn;WP@T1=q>EC)YIRDv6ZWfBAV z)=-nHG?F=j-38noaKpc~Et({e_iiB9Q@rqPrTQ~OLP|zH4Ir1mS5Yug%x433Yoa+~ zV&N+}<3>=iP28S7D$0sE zYnEIFh=z=)AbV%60xeY>iBl@ygyw}hqO4KvK&s;hj`f(eJZ#1Y2ZDX+MLMvu8@(Xh z%B4RDJ^NAi{sl|BUol&I?Z8&|p<~pHS1cQWyQN)pd&QLzckN!d&q^gJL=sJuQQ(`4 zh|4PZe}zEE z2aM%9g{9KE8Kc4;nD16?5#u&?tF(RMCctCWqd&Sn0m=O7ypUVmL?VAvV;Cc?Yh$5^ zBi7g}uO7{{Uo0;bFIn{wbhDD+jHZt==DQj_pMsiI+*J`sbnFtC-3l8S7q(Z_~iI}uydYbo$beo+& z_L0bs9D^&)dG<9{lc8;(i@RX4q=7+&hFfXolFe+fF>7WxVoy9`mYsTdoGWk#RXq(% zbvULOKot8`D<;!4H&PkD=368T0)4AtK1ZN~?kGE(gmmN;V0b-fYgcKdD5^^i!;ICD zbQc}N3xOC?MsU@5w6_mxspOYUyRr^HTCLdIg?OCRj0yQUZ~owwd+GFN4M5xQUO!k6UR!g=-TAEd6qDdd2@}j7C=cJ*)`NG zd`WHhSmBN-Wl*8LLouM~&#>!Jk+i8H#+%y}c)s?=+V;{dH&Ire7}*)&CvvuPhR@fv zRfdx+7f71aMh2Qa>cnIf&*J0egz*fvO{+^X+n5#q00)-9s636>`K-_4JB!0)Wl+Z1 z3Ie3Qbh6QHZ6f}WME?d0JQgCgGII2w88%X!f$m1 zd2CTw5?PQOFh2EMytHEeb=+n-*Y@N0|YI( z26+T^6$Fw;EzEOUA|&cIykn`Q%~)|1Nu)?DR3FPfPvziM2=-kGO9C+iLbSAcoeHqH0&^izE4(zjff%&MC z^v5>Wa6q$+diZuJvE_lTKC`HD$QclfPh(q>YQf*#ad5{ZTHK$m-xqx zVAQWrJ%)uDyp;(2a|4K@_&fbv_ETKqF)Bj?%^Lt4^#Z%tlFPt9WIA%qt3jjdUMP^< zIk_+USazL?{$3m=(z)bv@q=yH#?y?%Xj##cXkNu!!9 zDMx!3(NjS}OZT_K=oSnH9CD98ss-_d`JiwqQUaAKe_QeYBM3Hy(V3FKc z$E1BTcEXI1q{x%{v+89Xm*n;b`_US$qN)4T1cZEUOk-~yy~RPLkRD$%lXd9zdv+fj z(Sjne$!x4$GFNNz6z8D!=Dx%DZY75bm$`5GdOl;%$@OwL`da>HwA;VgnB~a}jAMo$ zN@%<7iMh66Bu?I;(?0XSjzK<~j_V3cBZM z>+x1CGgC4z?3{-KvHU`+lUhk?+hpM92j}LsvYuN@kP(XW#!nTDpro{G8MO9vfqnPL z{H9e|ieM4ZfapH7HkW+R&4tP^;neo}ic(}-n3NsSKV18LD4R>tx4|!zEyA837$@iE zxmUDxTXf4pnC}CKh)Ds-PMrHti8I44+?~VU`c$jr&nc44)n#6*j^F7}${J}Oc-X{X zXQ%5@nNn678!EFvexUJ#?0>POo+P05ol#$qk8=teC;iaqUIT z8Hl9tYI?n1uTTf8)#~*C zeS-uc4)iP-bj5Eqs!W@Mm-pS&8pzZ(Mp{H;j;)MT533m$5lOS)bC2a-+2;<7+8q?7?|7u32W71(ge6@sWd7Oq(AI*x@@ycYh0T z4GA^-DgBXRGtlRcr7cM(L$#273FeqXJ<4-yZo!WmnRAK*u!vT99EM$o8O!z`G(yU- zzGa^;*o+_2gOM(7;{CMcv7bodx3;lXP-Wr1Ki0EoV@P$CfHOuM>{85fGl9wL#dS~k zNAVTLjp3gZ>pFF`z9821JM>o5A-aw`uO=AT_o6u)gUK@kwCB^DS0uR8-c2J`c%o?` zw6K=qap6c@v%o4ZO3`e9Bs%01CkDS#ags!Hl)oYqY4#wzwn^RB>hP>OYur6)O5Ae zCyxIBO}JmZS~4Riq~H}Q*gQ5@^2qC2@VTap`TexZ2Zirc8@Ohg?civVB+Q_yI63IY z8280m<Qo5zJ=AUI3sEe2$7M%O8;4;7U43BE5=(-GRq>WEi%1lGtMQ7$I;1U&> z1D&LUfO_M-Hq`a4SYLQ%&OK7%<)CwPvEEA4M;67-0AhVRhvDh*S-4BG`L2sbg{bNJ zYCZkM(%E?|WFA|M!ZjH^`VbEs!9j;ccz2NhZSO0^o6h??SC!5!F!FFm8TRe1{$w6@RzBRD4mfCW=@3GWTW zCE7+XBymR@<$~q61q$5;=IQQhNXLS6Ci%%D@87bY1^8RX{s`4IzZBf9_07fT5M5f# z*0QSXQ?fMWdgqK1aZbEN_AT~t_Hm|Pc$>xdy40FIuE<)<%1nkvbmbZ>I}!*O9gAn< z=YO&P03KX;OT-JK_~TicUkF;=i<#}MwDB_=s7jUc-yxM$wit}(1#wTm;tTDgL;FQL zd^4+FJI6X(O=EEbMf)_|=0Z7Ae9i_BOjQ2>%E=6FFZ5sE{-|#Z9Mq%x>;CWjom;|V z!2UiOP5%Ic*3YlvYQ@S6}02QqVrsynChErq34NKokw==^X30 zj({?s>rS+P6L^#DBUHZ7{6(rqXqu7R9o*L@$TKpc4=kf&egX7_=jp|B7GST5IWZ}b zAYa@c#NNmG(ytM<#ovbIj}95oDj53kbJygKw4LghT78ynUs#*M8lAq4qg?Br7mG)Q zZ2YgjwX?Lvj_DZ2S28*GB;Y9cq7T}yi6&jThN}jz8t}ta(yi`E=l=lAG5MMQ0OwR+ z8AjeKys*?#@>{fxt*$0{p;VRTjW)8d7!8KxN!7cI@<}nb;&9P}>tGv-zHa#^wkH)- z%kP7HT5t7~R^umd^9GhB1QTE2yS zt3IbOw6JLmn;!CC+OF5yiU%r2!g=kFb6s1(ms0qfO1tqCX{c%6;1}^c$dZK;Dgh&; zm;)gC20h66ua|Vhc=W3^Y#-REIrlvO0D7PJ?h$dCra!C7NvC@M04LO|d@f<%4dgdV zjP6-hPCh_2Y|-Pnhr@c=gh>-gZ4_l=UQn}wLE|~vLHbw6QRNTpfJVpe9jEzG_L`2R z6m4y5sOk_$BZp;*?bj`i4ngaKS-e#3K8jP*RoT!!(CptI_S6FG1hD?^vyd^lHXXdTRqnB zYIbQbh#4J8Qo}hVKM?8y`%o>d=r@Z9yU{MRqZm1TCj78sMlw=hzz>DT*0qEhilQ4_ zorq!ctvn@Y_F9xScN6MlKm43>`PSu|%~gC7tZ)Fv4s*{2qqJ!ls>q2k$k;h8gW9eT z>7E{rJ9uF6cAF)n-m8&$rA-vk^Sw3|3^xb-L||ZXO}sha{bya)EOh-c<4W?b9G1UL zLKluS11#n}%PHV~5`#Y-N44Q)P=iu?{NJz0^Zb}OO*FJ~tGg?RrzMr4+DD_Unvs>&gC93V5$m zv3x~!G$0IwX50-F-$K{3OQWT+2-eSIBQ8`pAsGF8esq@N($?Z#v8}vJedjqp+MnEb zzT)Y2-$ew>+=gWb@-&+3Q?Pdb0GQJ4qh{(=nMd-i6{1=~+l?xAPeRF&&J=D3^PuCl zxVCU5g`G$_1YIL?BYcsDJmE%voibQb2@BdQZd~+kqM|o3NPTfCNIQ|A1pHhDD0{$|*7X`5FCbggz62q*(>IWB9TH@%dwsQ>DsFv(G1T`! z%x$c#o~zV;UFs5YDY&2wW*th|w-|o)2pGze4nHcat>gwm8d?S?JpqYwwoS<|R^j&u1@`frG2nVDoQ zkT}m3T3a_pXVc7zzrc;Z{{SMK>9M(u+Tb5I{-x{r(KyARjHHJanuE* z{?H5#02N=hn5Ev{;*2*W5=rlz`&Ldg%Tg@*eYLdBwb$rrjmCj%Aqa{9Dl$E}s^x~H zkOEz}rc2^N05X-n@;)B*aGaa9oAjU@xin2+n!EtcR z%r}w`CW^Q)U0c827a_WQR*G^=hLb3_maz)}6R77kUy5=I434#Yz0k941Voe_&ox87 zvTI41J;?y(x}eiAl4#Yg^5-P==QU%}wI)cIvyjLEQSZ|=O>^b54CK+4w=SC*8==Kp zR*6h~b*;$_(NM%GIL7SawtZ=sf*XK)^rTm$OZ#3j$JJ16a~@asderbmb1m^|25wcd z$E8~I8?~L4E*onP!bsqst#h3Vbn_~c+-I8TpLI{V5aSXl1-9|MKZtya#%i=&U9pa) zP;70W9O1Ayr1yGscLGA0E00L&iXQfNj~gWO<0>|=?@)h=c`gZI&kPBvjrtogYQ9gh zk;gP>eew;^r0RbZQfF!XC=2_@WeX$(1;;q)ni|hn3nm$WBd&d_``IEd5a?#f14+1y7YS3Hi#-jM2E6pr@RSzv9lM%e^@@U0^{(=(JU z+A4w*JOV_^0(P+O4NGS4V=A-8SZ4r{{b-FlPnro?B{&G&{NtrtQ%-{BC63}UOaAvx zPeLl(grZAj3SYvEse(F?Ka~=6C6JLV!dokPb12BC{vFd=!ra2jj)ZOpI3RSXZ>()Y zJ4e1*B)}1$-8Ik8(W+j~aj9tsN||$U9MHJTa>U!!sM{TG>eABiTFD;iA~7-Y@qXpOIT%DC~--p(VBB-anS{30bh1 zJaL|%`KEUkr%kqKW`u(y2Z~Jlby7b%aVCK#pLFtCJX4apnN>q>UgUg_Y7W{cuHrV@ zo3uV_7KUtR)H;lN{8e&KqG_(dtdc1qJF~m4D3vb+s^I4w^zHLOwWPXL*OxyjpG=F& zy7nTiHnJkvGkRVoU96;YLv%DTv+`%N6I-!yj5KArUwUrI#?K!S_ zZ#Ot!@PK zMB66axmi!YU*}Z|e-PRo%;2l-3Kz5eeW;|=tuEn4v$$AhX2FcH?Nh?KA1e=A>0zEh zba#h5gVDe9QnmPj!GxTigdQn9-QSu@KcZwjf-nj96bZVMZ(g5?dyksBCd;G~TWXMt zd#iZlC4o}Iq59D8q76FgQyrVl3$fY|?f`b+_RUuyxGI2xNY7Adt**IsY(a`*$@AW) zi(M6I_Gx)EJ6;KFT0g4bimpt;*~-SncDD-MN67c9o#v%&dm9^s9&kb<&%IK$OKBu! zkRd^i2JOPG4U;rmzR&a-ym#V@9TphcSlct*s-2`lnB9Zeu_~GDTprb8{{V=e8rthx zwwNxjRaVfxt=eS0>~lj!4eA%-Ig2xU824>=u8W-F5o-{9l?2Zd8I zF6^?fIB)muK*e$+*zx699vC0xQ)#odlQ@}U6I!|3G$ioexQ*lmaM3@g7C*cXQBDoyO&Wm3qUe$z z#~JovT&+9WI-=L6Hku*`Cp$?QJ=FWrG0P+>(8+>(u6S`tVbx8md3X3K!_woB!|P4g z5?ZFm4Y2S}VfFT)ZC^&<`Ew&i+0P13Tz?6wH`*tG;nwXQ>e4;3FX9;G8~rNg;PNCG z8SB{8u})ud$b8nu2tU3**1P@IMR7mKpsV zr3KU5lTi^&?ybs`@M(Ll4Sam@@q0d=GEG?>dbX`=oY3`py=lMN>9QL(gYpdm6bJb}|S?$PGh*j#qxrh8TsZvD@ayzppZ`?iKV zfp1c;YBD{(qKmv|fKN1lm9GmgmlQ!j@7(;471LlH2W6)M^C15hR z4V;Wn1gIl#+DV9}Pr$3t(Fs0SmQWYAdT0C6i7xZ%m9WI*;BtN_c{LrQleBwxq}7Fs z{CBPkNG$aEZzQ&k_C}ItPSK$qfXV0jR-?ySEV%$X^R2=C?$B?KTMJQtHSd5{Z^Ujc=y7__MR!z?i|N$ ztk_QHfQCg@W9^O)@}`Nbv;ZT-f$(;pGd%`RA3%Rfp{IasY;Iw@j$5f#7Y-qr#EQgr zCjy&zZ%qFH6xZi`h@!K#XA(2&4UBD=$6V&8>YyqurXS;^p za^OA8B(IWGqmzu0$>?xKYIsYr@=a{#n&sWVvx7@_+i`s&$2m|J0H096;CAWr??Cvz z>|N{gM*zecb(~gkDCoEuAbxCXUlZ$ZsCc?vTJqdk2As-m_JwHjyeLt}On+JzOO^|( zrnkK$Zp{{UashnrQ7?_Ri> zyvRr0R@U6I=MN$0l_UyVr(Vr-sA{^5yQ5@=dxv5_4%EW`05Y}j59#kUm-v;;s;T#t zjbU$7Na&^6@_Gfp2fsC(zSt)TICrVegrw>Ho>a0nn{ z^;7v!x)3@|o}oOb$Yax*7<0y5&ItW8PmO3T_H?~BSxsI`?Ple366wNXk~aKqEaVg1 z`g-@ScV&I1+30td`s7-ava>8!;?ij23n3esm^5vb0D*v4lh&*nHHG!pgDz7|%QVg{ z%86AsfC2^NaydK<9%{7)l$ScKrkAPSL!>O%9z?g7GO>!(ba!#cDggH90=cJ7RL$U; zO{1guTgO^Ah^M~MG@lN|Vv7}%#d6m&i3AX2;gfMq>|ZAvS0tQfo$KfPI^Rn14dDB} zlNHlM^Sp}3%nQL(2Xg_QNEjIzJtzSO*_C2_SjdPXBqbC4LHt_QVs zT}Q)uSBQK)9*=i-acWjM;(4HjWF=+VB>`KEor{J&F`7xn4JFV{+T^<`T270E%#a6U0vWM`6 zoQtQ!Z>~;f4IRXddrS2$sjob%eN+E<8S)a0HR zW)oT@tV+ij*i$?LNGt*CjwzY&oVJ?2r~WUg4N0U1^LijwmU$VO+FbH?6VPA}Sw31uN;!Iw~pZdHpNt z{{Z-D)$H^SvxI1_?Bv$3q>}eg-vLz;F)I{7#zQiyDG+&GZ=%o*2e1y#uE02l(f=bgnVrO~`Grkq>sx@z~Q zLhy%*A=NJomviYiw|20{yrXTmkZwJL1|y#Q0np>+D`jPZ(L{`bBmkfT4mRTlj>n!c z(!PcJQP-xi(lzLoOETut+2bq zulLb}{{a60qigrsRM*dmMyCY2EzQWa5(Y4+4G#cG6-{&UpkAfH9wn z5u3IEIjldSa!xqwRMqwgjP)%@n@g+2X1F%+Igia_(K0~#Rc_115k8-9aeEwob58Ng z<+jy~0g!Tf@Oo3I?c==C1*F@RE-k{y%6&jG^ZD~Yr-YW;));jAv27;l1=Ow?Op&`2 zjkzjVbpG_|)`e>JKN}twmN`U`jzcK~AE6Y!?7=OBhT$BcE5r^`Oy`U+AcLQgLd~K} zWY^MKUipUV)5ulw);u3p)+KtLK+jsHcwa!*w9QXhzt_QzOTQs^B>rSle$`JLo`7I` z16tOtkea<0$aTAWYj~n%yxSV>21RL@kCHcM^P_Bat5vv)Ya780&>*RbQxmQ|x)5r( zi6a(i5JdaP18_MR;Qn>9y2TWdTy64G)Z4H?QP(wxC+!+i?CF|M+K-N`-%)#wYUVlT zR7AWNuW=!a9FPl)p*vI@bpQn%ZKZy#tHcZgGC;KQ3L z5PFGRX0IAup}V*(AX|7nEb}?%1mIzN^ZvC_*2b@+-@S&rXEn9dLoAmu6=J8O1N*>^ zgk)E-;OCZJN>1vJH_67KO(MA=Z1ap~xgw%ynor*U0L2-1iNg6{xjhjSu?N@>t#|JR z{{X@z?x&`~dE>tkj|<)0Ad)*6tpw6S4^KJRg;wZxjz)PouTFWPjeX9JSVB|$DEYuZ z>cperx*C@ol#76q4#eElDukuW=WQw+qV7jU_dtj6(1JxV*d>-^NUjZ`oIpYWSg*@>u**A_n zDQwpo?}W9BJ8>XSJldHM6Wb}D=~W{XXyP}KV!6*Tx2698L(O$0yG9!xNp&Q6SkBnb z?&pzCbgf=ULj&tmjPu^B_L-0coACkE)PmjP3>Hje=AdQDJy&A_&67=G@eFZeEHLAf zpY2@P-e~yUx}_HnuzI-fp0xM{m)p-1s+kotBCz8J9sdBODQ^*^Y*}M;Klcu5uGa*N zb6yU5H|i>sQWci?HKdtF9D|;BaZO+_%^Iv8TO5*A`k&6JT4`69p*^YWmifb|~ljMq~$#*s0#+O)4e^=Rb=$#RYq(i1d`yp}LMx?gWtM4!+C>aoUvLOEh!g zzjSax>M>N3Vs4AVT8Py*XUqf~`_n7Cri#sroDHWRl~OGA^CW&<+>WfH0f5dwDw0iQ zUAmx(y@Bjg{>p~1F3NNS!aXla%rw=eZBtoYZ#kJeN-tgVYb}OfNLS zwQvS=j%!quNNvcjTu;6IHRvZhu+2w4lJYuvV1QeiGEWW6k$IaN8OH;qUnFJ5UWKyV z$8-Hdw$F&=L;JT6l?tUpf%#qzjagf~&XpoyHk5df>#3Yi0oYM8Uo$ixiE0Mv? zZD9<8H;J2Q&jgOOwX}hKFX?qW9C!9K`X=miZ8WL_u+HO#=b@{&hxJQDwUP^y=_*3E zaa3d>;*sKgvP0_HdNA)>Cx{Ud_HgA$BLIy3KfOa-k#|hHT!dm1jr z<~vgydYldAk(6w76;#mtT{W{9fZ9pP!Ry6aqtxtmjW$Rw$CV~C45)cV_9M9db)1u0 z8flh$X0@4D%iDwaNdA`Ji026|F_3$F&@=d; zTH3OP7Xnd+1mt7AQc@PZnb)q7>_h(mq&WHHFh@2@>A~Y3$LUL@fuvD$Z^I)E_s)RdrP|sjl^Z2ZVtoWv90cOnROd>ySB)?W4mu= z&p*#JK9>Z}B~cL#9z!4;=eVbO4`N%GC$YKV%OkGjZkb=2g)RwVRNb}+EBSia^lp*ZE@m^F*l?NE@QWVf&0$EbNOdK zl|^xA@*ml+m_X{I8UFxU>VII~9^0wvzA@Bd0?WfzvOFQrrS42*j(_P){%$Kgla44k zzL4V?PD(NDjy~6XL8o|aYyt-YknWnXskKI*nT1fZ^&XOuBgXR7uW+No?UolAe zZ`yI(gZ{N|@ju!Zi2O~a{o7pDCcd(gU%W*O(M7f_s9-3BbN->1n_;UYq%weywz1?J$3hx*d^p!?%QAwj%Ff(P%A3D4I8wuI?u%OqQ1LhY_# zF}6-W2t3e1j8DEM1ZNosy&W!|(V>|E@|b6LZ1&0RNcU`!n34%>9M?o?ob$D|I*r7| zTNohvfa{L*b-mNr&hfm0UYv%=Vc6!Y@mv_(G35LI0IeRk2+j$sqkFkwwEAwG-MJN;2bu83FALX z#l>{Z)URhv4;+Iq$Q~j%&tv|SIc=|$?aviZ)Ad<&*+NdO<#Z_A6surVWe$gOwipm| z`TYFUud$TUm}z+KVs({6#N!SKt}FJN_I-`_R*{EB1n@r){{UL+;Fyl(Ag%^QO*|0Z z+Z%g}v`9DSPaebqQJ|C+ehL3}Fy&bKchB)kTRa=-!6Po&O?K8jz%2{WI zEXHz9I(q?G;yC8jg#aBDu(+m{-Zp zEgwf0Xx6=6uU17LLrAFSc^8tIAJIlUvPj83~W}XFtll z^UDf{ZM%}&$;aj^0`JVojBGjQ9cl|NGUut|xv9sM5)$kj=Z?S{LnduTM2rVv80f3i z@k2|iu~M-!Z9Q4KnprqVM(;GrPdGF$p5EY7NShd$pOVL~y=szfAifFqJt#fQ>(pZv z^P|P8E$5P{{V=Gd72fsg^Gn^>m0I-;{kD;!oxo2+P940qLVUlowie_x+`S%-c6hR;kJ3(b0}Ui zGwsK5+|};O!>@hdyIC!oSg&J>d7?;P1JLH3wO6$515L2Knq4J)lG|eYxZF@C?Zt*$jNpEsHRxmUb(}R|C<6m)LmhLNUMBGfu z(u|m+UdNN4U;wF;#W(heAKmA38=SI97;I$r$7-q0w<1e_yFh1&hFL-UeDVqH&`~;# z*tWMORaBg=QUc(d_6G*JGhLFC6Js zb_*u6sx^(bm=-pau>tYes+@72wN}&gDW|YWuVwP2Jx<-k{{Zz+>OKv$)*ujETqVRw zAbqWr&OTJuDJ1q=9wTXY{wT85ZRcyap4FyS+{`495ElUBfH@Thiu@Bb?d`BzHnoQK zF?AH1z+)Ncz;yw+>%jvft!)mUaGp}mL5*+*PV4|N)bco|K3Rmr=1;mSc*a^>u?nLA zXFr4vgW{7`HK9hGq3OB}>{@&Xjd1)2Q;^bQBxLmJKU(OzcB3=}niWNvRYM{$-5Fkl zf!pa^y3+DFp|rkX=3KkHi6a66yA#J;;15VX$|^{#oto{i%!I~Z%4 z#oni^U(0tWEN9LWh3Ehzd*EPaprm#>Ogd+q_e+V-n%jt;Pd9JC&uWhC7JImE9i(}q z+*FBJ43Gz?1BT#m4tmvU+sC?H)%2D&(#b8tGp@yrh&y_aag1@-HLPP%rRdGQmK{)E z3v>P-_dhr=IhhGp9mgFgOWTMgw2~-YVYqcExG5o6j=v*4jV!mz>D#F^HtEa%chxoV|%CD+{FdVD=bRGa<1k2jPPisg5GA#cXBcQ7yX(2 zNUH9T#WcGCoRMyapZh`n^jMv<=`^lFq&7NeOodq$hkhI%ttHmkZ7jcSbp$)5Ogx^D zNMP9d;2M$%i)yhK^B--ig+SylEHZJ>o+#V9JwH&4N2pu0vGoZjt$w&QrTmdrAZ92lB1j z(3p$F5GS~7=ly9UhT8{77C6`kFhhbEqwUBfHVGV_Ks@_as1iYl6fAkh=RCLNL)hsz zHqdR4u9@N6Pw?ky6<_>HNUj_z79au{U9tk;j1p_-4-0sX>i+;&hA8h7PPUfC z{`Dm2cH1WK%ej$Ds*=EG2WWmk=B+bpx85q7{{Yb5DYfwLgwdp)=U%nDD9>!Ii5@e- zRp)3^f=TB*3g@4bn)Gnd3(p7FPe*1PJyWakZ;mTui ziK7|8K^#xg;D|@TSjI&7^ouQnbyRp0T6eXJ6S>C~Q zr%5DpTey-p{6l!}gIvSLK0UqgMz3dQZD(t!*~w@m07z0q!P|mHK+XXiRog`I5^7pa zjqpacH&7u9M`102J6Qyd`8jIWsHd@`Vc+@JE z+sGI^V>zz31<3Iooy1>gnjeO5BAJv4CxHqhx(%@sdb2sl2P4?m$a>F;<TplL#dhsO#QHajyf5KfMAlZvTGMq4cF|E7`8t4KB(2PjV@wA- z$01ue9N?Oqc_$fiQlg~@wM`bQ{{Z-X`!%|_R@FQ`FNN+iwdB&ZGaLcEitZyHJ8GBX zkN9TLS5kKH{<(jo2_so8tZpF}S>&q~kgzN=GmY8g0ah(*?E-7R8F-K;y`{&c+0Aj~ znF24XA!AiyM)F8@$j=zbrG6*zCy2ZsY2gi5N0qK^mfe5E8c8!9-PGgFIV;F02GwwK zIRk)m-!CUMH5qm9OygK_+Hys2?GyePbgu~bU2iSCX7X!B+s#WoLMWk2mIEw^6D+5& z<+yhX)uP z`Ke@#vo1eMl`Jl0!(~Eeoxj?pHs{R3zF2-0AmrDlXyY+&>A1#tBLMuze2~4vj6fyq6Q7DozABJQMOOIX)XjMRH|(MA4XQvD#}2(B&Nd z(Kv5O$LsMz-)U39EYaE)Yc`u^^#ztPe{`RYnXbuUr09B$yG^Riw(WwlDIevq_Z`8c z*3)TveXY&Cl1(8FT4i7)4bQ&>51PyCw)!;sRCDc1!xBel0kw`-b(8jhfOhmfyHHYi zdj4X3yGdA#xde8uy9eGp*go+S!3Dt$51A3ffPzQVeA7)f$+ZY2mq`Xm5N?to_~JPr zb;d!#W_V;O9M5<(tXNojQTK)xZv#_4o5Y-a&z`# z;Nm9{Po~{1zM;8hjdF`wjqwN6$QMaxFhQ6mzx3a+`0)t4oBtZNr=*%ypL z(clb*QVkWR>Ox0BaE_8D(qDYZcxA%x#0Wj-`L!&2wAj zvue>ymh#SjIV3~sJ6SV~{MABT7H7V6(&O_~5J}uHx#|A^-%9DaZ`m{6+pPDxoxYoS zB*etGGVEDX2X4`hbH+KvImhAs5Vd1Yt2mepmHAj#GAHceC zYg=6pS9^Jpb|KY&W|E)8p=8F@=b&t3BPO_<*3-j#GG0UXdxemOLPj(3{c;XDt#Qdt zBuzLn$*J5FnnjJvWp;uOaZ7D(ePe&UKYa45Dx3WM!AUqAV{tlq+0c}*xAFVTgSFGkjEnS_@x?-q~2u0H!82{QVugx zUTcl1=~mXxahBW`kLf(AJwW-REcNGsLz(%{PcSWM$o(q4W8yhg z)ehaRG8ps6`qg?3J5q~Fi&g&s4Zlq;S7@TYTW9he#|2hQZ6~n+)JJeoHx0QYQc0(O(h=RfOSxz=QoMwQtU{?UaWmujur%IJMrEDq&9#=B?yGWZ(X#=mKz zeO}5t?Jq>Nd->p*H$^PJh8Wm)JBe@z#hO>}^P*K}$?`cM}4b7^-{+g(K>v`k}~85Ex^Nbi0Vak#VR80>AXqVp}~Ah%H6SL<1{ zw3f!?iO1~wk=%QV`m;!}`#bRlkvx!iH^K2*+pn1%_K`-bF3C1Xo@ie%INcr?jIeFM z4B&F_8R&i=wTZ4gJq_-kX3gc8FQgJEX6fa>3_$i^Pki>RasL1i#ga-Z*_^yt!Z+}9 zDD{c#kTegK17QQE+HDL^b!~B|MBZKDP|F(hkay?b6;+pY>4GfG`NIuklpMJ1H zBAJ2(;xZfgitcoCAU`$k=V@b*dWj_TAklH%3zwG9R01hb00|k-&mY#Tx=-0}i~MVH zw;mYq{p_&ZV|CldKm0#<2SbrlRMKtrjX)?^KKFd`?(~4f z#!9Iqs}StJQ1rdmEt`jSnlLIV~t0h=YnuNvbo=$!>_=vto#w+4-I%SZCYOo z_-9m}>hyVDZlL?4SiuL%jhyZYxCSJyco`=H4io$*N$~`efBHV}Q%snQP_&ZTi2+vG zCJqT8=by+|48Mrf)i1aDGp0Tz#oO8PhO6L@5qN7#ivIvy@b0CjY0{0$G|_*QJ=+AB z{*D%sEy~IoDBUN7Cj6;AKZ$;8?P#@S(Ntuo;sg zU7Zk|6aN5d_pa~a)&BtXb@pZ9{W;zy)FOE;qlU{?K8*@r9+W*N1eZH*nm;I5FJHKg&XmhZsDNKpb^F>i+=o1+H7_9w40k@u$3s zV83^G_BFWM)OtXX7!igIoQyCS2D1Jko-&GrAA2vu#N#J7>qiT^l(30ew>cXQe=>7k zf;CO;wXxSZBR|@QVC^_yamLj-z$Bi3wM!IoTu6{a0No~EarDLj=clMO6`-)IBVA{>VmF_VjIa)N7Re*XYSfykFk^AaXem63rcf73LgHS)_v zC@R2^ebm=QvX4r-x0OZ8hgQlN09@zVk?Y!9?-Q!4s9n3zWB&l&9@WtdxAwE1SZnS@ zV{6Bd#F6jUk9^UwU4tMqk^$hb83*ST1j^Ry>5znRf&t(kYSK9YW4(5{7-ByQkEgw8 z#T|4#`@`InNeF$T2_QKPzS*W)UZ*XKd2)s@XMx;(KhmmCaWq8ik+F@e0qspR{ar{g z+<nR)&kbZg^s#x5;n;#_k)@8ZwV?XKh zRt23O@Q_0ep7jguV`{=R3mA2)HnzFiSc9?1=zr3_Z2Ls;G@4z^xQv7(;N$S0^sl3l z-CJnkgTz)Z1gZ_dUrv8`dm8n;T=7Zb$+*AldEQ1BD#;JTzq#<1r>C?sFkyl^ z(kWuwU9ZPJ4wFr|kql=UJ4qkQ>s+S(#Khzg$gdapmw@m}*G%>Q0EhXDG->uCBC%7; z83g1Sgz$N4G_-WpYnV*yyMEQL>Z~4ayGQIPFV!s6BTtT$=Y$ z=CWXBT(dS9j@$q~l?;<$V|GC6&svUY+D}Sgd*-nXznDP5W1JD~RnaGiGB#ZPS*b;v zXV7@-%`mmoWto9kTgnFjk&M-kP0}p{q}|5y@xqoW2hYt*l0!>nX4c%6%g2=j3bkA4 z(A+1OoG>1ocEvuof(Y%NHAoZ@%d(8|(A4(!vB@v(BuJPjAxmRFBi^x;thA^A_zvPt zHKh_pg_nB+CRluZekcLp*=(_FH$CL61m{_+5DSv??*Lh;_9 z@jkZ(p<{1vE8D3fcLXj}^T{N;+>r0P1fx0ey$UFsI_!EXiB_}-2XZ@Ah91GDZP zzzkQ-{{Rw^B7* z^#F7kJtzxb5O{M@xmmnFsn4RwKDs ziKV=_QF04QaI&%8k)6bo>LeWG@^hZ`t(CvrE#<$rxph+?lmX#fasfZ-Uc5X^Z6_yZ zpD!Xx($GB9ywWt@L{-^)ED; zfEL&*=1H|wcRc%b{OEmAbtslaNsRCjxk9-LGu)5$uJ!P8{%qYYV}Y-}?uCrlUE8=P zupabGH!B^$hTa6ZGA}YngkXXE>b0j_OwOwEMI_Mz>heApr%d?fogWLK!?a0nkrzYETUMao}h29Mms!VyN)sJdj9~W9d9khn{^e&ohw_s zCnU$gZ(x1Jac1x_&3&3@PCqJ9e|JZI@Nb1)+VxMR3gBTk;(~wKk%@ z3effFH2dv6ZZ#Y9c4)lTA~=GPyJ*6%xGkT<*W4cq_?BC5v->X>5*V(t(Wsis@u}>IkZ*g}kS`~)GfHq5vk1&iE85tkDgPP{vB)`+N`CRB$ zS8_xzt{^LMGRU#Sq=?+egVn!*&<^#}<%RU^7F#_Y+DpxT_Cp)$7VzwG4&T~moCYIm zf-pxo;8g{px`y`mPr1@{J3($26H8{x0bFnux_+M33Qnz>w6FL3{j!|iAdcWNOKUtb zA;YST>JP9Ztx+uWjXOrwZ*Jhblgzj*7C9mE{Gd)q82wl)tr;(kD&Bu{&}4(`lMH5!cLk z-GNQf`dNNOMWd;+Ba6vAz-OE=QFlKjGWm_wv8AY-1c? z^PkF!m&P`+MDjhA%#fhwK%*Z)?@?LDrA>c(_e*G!dt65$FcrurJa!{F{QfzqwFk9J zDJRt;d2I}dZxTdoW_s^e~uCra5e>)Le6tuz-AhETwmkAIqtwVe^= zjwI9tywegRj!;pUfyf!_#TL3wpC^~+6}MJaCPlhg7BU8UW2YT>1F5ZUyb}f0#ih#5 zvdd~rw(=?52Ia==bRz^~JW;|y$}~^wk6@1U4a3q4gOl_;*5XO{ZLv-ljo~^~VqddM z-|^4!#lMp3^bgsIKy*?D6oeS**BvuZ>KZ4DEHuWB%HYqcO2f^(omwr6oZ>Yel^Eim z7K4&#w;ASgF>0l~)Z&%+hr>2rBx@_l9&1bccX18fyqg_Vl5w0KIXw2wD)8L?A-vOJ zgH@I`1&EgAw<7>Ljid~W@VpK)oYjh5Kx|aE$CjfC&e+}ak7~`Q=%g|529tB)i%om{ z1Mf0w655|Wbezc~aQT6puNfh@-bXn09et>Wc*!S|-x%v#+jzF#=J|BNr{7!4Ey=Qg$ru7hQOO;`<0KQ-tNt<8{{Y1`O$Sa` z8Vfy3Qwa=ZgEPjlVfPSwNaF*K!fSP>PqQ1fu8NMaE`h0AOR9L0WRFxNDT-?;w;sbX zE)y8-R(}fkuSk1VwUO>@VX_MZQps-2vZx(ET9ZKg<5xKiC#zq=G zqiO294pjb?&os$qgGjQslIDA zoF1ESF~xDKNFz5_OB`y67SIROW|C`KbnxCoE}0deM1j1?Zde9WxSWP37{|qF7scJt z656Uh#lHIh@ITrNcY2nYV;6^KX%CZkq_Zqia0p`qdN$yKHto$;yenWOvbH+Lk4KtF^WliUjAJ^}k<@z;j*gJSaP`i+EF4DhrPEVyDfd0>S* zmms#^ZNOJv(m*5c6H_@_a+xYQt#UO2={7-NBr>fqq@=eJtzUR=~Ezvgp)$Agum zEb*V%--6@uJ2j!VhIoS@{c(&{<5%&{wc=}g{c}XIx6?1|qLu6xsk_lrVgM*L)svldP{Mw_-gLk#1{BV zOWiX4y<;QMG;(eXpc94zBRIw~X+hF#G#yFd5;XTB6}gS4gr*>npDnhq>TpNY8uc(| zhE%Wde)>4_;+8$GhgyU%wUiRQ+gt91LlJ^-M?HT!Gf&jC7__)n^5=5`Lrn_d$p?UV z#xYdC5X!eQ#!8t4PY3`qN zmg;L(fy&#+eASC18A%Qp`9-Zo!r`X?I zPb%rxHz^CI9pjASZgI#N$oUk-{2c7@!(($Smx~aWZg3Ss?qV=-K>ca(OW3(KU$pNX zX*WXQue3Ps=jyUrNYU&70iCV%&%ZrsZn=43uUV<{H^{!FS;iayKLI1(v8q;);f+JY z7b$INE&{NQNr*mLcga57QCf(G+CgTw@yRW|)slE|v4HMK>(Ba8^x~eFxwf`hG%Xs- zO1YO)zhS6pc6RYQT3lf!ed-v9@^HXsgVvqt{xQ&Hy4?+zn_)6Ao;jC@vUtH6&u&jO zLD#%PWfDU+p9~}hLn4<91A&dp?5EiDKU%5W_>HEyGwINXcM`I~j7Te-jA!f8tLeGz zhcyi&t81z!zWc_Iu}x^0Q3^_;P`K_o5nEt9y4!HNm zYL+=AqGc$zvVRl!e)~eWG05NI2{Qixn2xC%i5%5oKk7<=Q9TQqa2 z4kwvpQP%^ZKGd;hlHHG%a5z19HH5k@xMPBNIqzASKBH)&fx9|C*?-wzivHJETYn9U z7?RKo&wn|AE-qLSmeDo{GLQ+!Krx(TS5o^t{{V%ZTTbz{`u(%%PalQ!tu^o7TT778 z-$)rk+ldr{r24YF9Ag;BHBZqzMdF=rz&;D`AKB)O1(vTiqPF)pO6}&Wv1g6g=k{qT zWU~N$F=IU|>fJw1@rIG$eLB~~jc2ZE(!nR+?jXErmgM=2$rN(93-|&7k8ZQD)P~b;HKl z3bCQf941_2Bw*Jz@juyTfd0~S+b_!+}v zBRx&2{As3XUL>~Cue9sf;`^Fi+}vBp)>6kakPL&1BY3juqKPog4vq-sZrCEkJ^&EH2GV{fL1@Kj#hij%h>f0K98$h&qrJnWW zovq&_VFp+>V+)W#AoUf~KF|C|Z{lwYLv^90&BmR76UQ3)4->-YD&UqGLZ=|-jP%WV z89e;iVa3N^E9d@>OnxRja^+_w`$n|aweKI=UD{vC{{W*Sww4>KM495amALh9QHAp{ zoxo%Y>0SlXJQ1r$Cy4wF6@*&-loHycmr_l0Ev$qOM1`D^psMmZ55ta?^ZR|HYCmWG zFVs8@_Oml8+sWkV+T6$$NIs-V`w&%tS$`(!nrRlXH-vmf`i_$8V(3Kjx+p0su?5Qx zju;Q-E5%Mqn_vAsCY6_832Iu;h%a^T1AVb+*GaD5-(6}tbdlYeV@rI4w%SrX8#rYI zuw`$8qkCWYc5PVBHE$8IwvEq}1O`cp`}&wDZ-vcJyi5N85!#Q4E@6h-!`fw-v6#=N z-AfmpG!99@LQkQ9>&6eUt0&m+k1xDI;>(Rw?IXl9Fol9?LgV&OB#rpX_6HmTjB{N$ zps~$Muk2-#T%kj_zu~V$D1QB~>eq20Bt;xB#MteJB=q`K{{X{23Gm;9Mx6(Td>d$Y zFh;+*MY)-H=0hRK&wK&}P<(UtrDtK{U0pPtOwVfyq;{ziZ;jjci9Xq`YpQ*s>RO6S zmXgV)LpBWd_VT{RVbSnU2et+Uc1z34HCE{7UOqU!kEi@c;~PC05*=dlS*9!IGTTOH z3km-K++|j_q$Bp5K<5B+UpT$|k0+VtGdA3Q zGm-8;@lgxXCSfZCRKZ@{Z6}K6xwmHgVvfnG{i+w&qlWWWv}-HlQx&6F$w`@8@hKj#5_|R_ZL%NPWLiNeJiru&z4zV z_weLlij&%}zi(e?x*hz3?Bi9_H2pAbx%^#MgL5w#2y^V92 z{?zq7SHkmXo<4>AMGSW6boYUl2`sK7jZq#G(_;noDe739=B~LrLb^&n)IxTng(_EW zIrpu!?-AJ9>XT{OwXM|C>PS+;XrpB?$ck7NC(_Ze$YuOP0fFNNx2fxQm)0??i7ty2 z?d7B?A~oFq0L8b1xANy5#aQ&aX>_Gadv=t=5#}=?Z_H%-SE=D+=aagvoL)@$!>b;p z(=1`*Y~%5(9+e|`jAW2EOg0Zy&s=-2#V4NWe8+od9CciBMHdz4oeDfeuNWsi2eo_j zc_D=oN8EOjcwi4-Z~Pj9JIAzetjuCO0>hE;Ys^w~MT-kMrzaTZuo)!`w*w4Es2&OV z`p^_Mj&D9a(XrmWv(~Zqw^DL4KY3|9F7_-Jd2~O8`e)$LGEKjgIBag9T@BYzW>JP& zQ>Gke@~m7#Z*!Nof4fcxF}cWZp`@bV!a*a0)O*n{aI(fSH!tWxsziiCa?s8e;YK=j zFB1-f+;fJTFtU%2n$j6PGG~w4DpJDh7?KwAkb(v~jDKH>hB4;EC4u<^ zET)Qh+fJ3dwh~)O!5+uhj^A31;74U^QW9L`1JV8uvHrEvbBwgjSVUq9U1#JR{uUjF z=~jI{;Tb%p{m>Gt|pJ-S~lyu?7AGBfSh=|^e0ypYOeVp&xF&=biX^_-*a8mH*# zi6D`1+z>c9uOx+BV4cIE_oUXhpvUJx-ee~Pk8hf1=$tH(IUxT4BT6p26r*C#7kFw9 z66w;&s0GrDxC4`p{{UL~f5qMxlFH&#bRn0%I3m8figs4toHu`(r+uLKHXUZk?`)$R z`m&GRKj?pzdl)iD$cNC&{F&xvgs{)+#7~RtMBE z(y13#DW{KD?qrq z$CD9!@IJMrq%E;^jg!dUr9FOzty)%&2`!Zk)D{CD&YDM{4LAdE$qOgq!T$hxqU~)> z#v+7?qGA{^8$icgn#s<~QKLoEw_)UER?jNAUB4hy>!;mIY#Ia%6O`O>yPn30O;$Z8 z5zA`fgAlI3I4kX*m8Jft_q2-XVDe-D`OCBfIp|b&Ju5qGba*7TlE)>&tR+-4iGKkU zWEK<8Y;Kll3cdaJ^_970OyqO9k8{$3hwUH4{sOVT*L*RmK9M@w6;Tp_ z=H=8VZa)q|`jPQT62)eTq>=dz#t194btLxbOa9RnEv=%{?H#sVU0cT9W&r^ce1nYe z93RUW=ZfX?B%_T-<(v4)x!KUHzSus|?KMT!H61g;dd{FCcpg=@NNyb+aKq0Lha3_z z9CxF%U$+ew!&S7>yhZj=Z>QW%3&@YB>ysQt0VM8rkYm&MO8qfNzRmPB@dlp_wxg`s zXw2y?#CJDhM@Bn>ta(sK$p-}R1!niaQrYW=T#^3&06W?nMuydd!W19^!Ex8Ge|q`p zWP{YtRYj+x=s9$Cw$LnZ>~C-M(R*nX)7bgqSmS3v*vTEUjDRy-r&f$jbu7Pla?g-K zV8Od*r@*HEG5c=O?@_H<+fvhG*|3YNLmmJC05QfsmCZ+vw2Ow!SFsVExxlVmY1NuZ ztI=V)g68VVTY2sxF__A+G3P6eazDOlHi@U`GTcPg8g8Sd-o+aa*=ry|RIby@A(2~> zz=uBAqM-2wmHMn!_c2QHks5`Na!CMvDSwKgy3#M@vcJ*g(61L} z%*?737AI)-6tW9h*+$?PFu^@@&01R6ta+&D?w(t07TdpSqd6z(j+v+-ot{XN?RR;H z(#?`j&sy{|+)nP2mfs$7GtU(+Qev#gSi+<$6O4T*{YC7VE%zB!TreXJ?ZC%jL6H(n zeCOOpq`6#>2e9o^M--lXX%WbfeiPf=)RS6+DQHO`ah6`Dnh}UxOmau3KZ%Yqerjnv zxVEZH3k>HT^fUqoY_VpMP5{RP`&P40B29~UTX7$VbD#97X^zKQW}z*sBgD@vQIoX{ zjH{E><2cQBzX15ROTLyXSY!K$`?-!-t|nKKR>;~BiQK>dPCI6}EH_UmWpD>QjS^u} znVjW%;Py4epTozWZ%^du#pF*OyGPNi*Lrp1I>cs)j^Gp=^ZgAg)Vy`8O%lVQL-&>s zhj`m^Tb$qrW5YLJMh71Kxn`5&U4PEEvi|_p7g}|RjN7z~s^KFek&UF1dSv_cuBj!* zhPCgqn7~g-TPS8)JXQv%0R+pk$_+21~+xd~hybH(m&6mMq@6?lyNusViQE%am zO3LPSxR^jzR+7~`ouDTT(hq}v74E~ImD4=(7Z z2>$^04u{^mJ9;s?O3Mzfs3pFUbA1whO0>e-8MH@CzFqO497e(>$sf zm(69tX8!;&I6y*{H~^iv;+aaeHz_1jJT8+dM^<2W1K5N8>(*(dXjb2Lf$cQ=XMBL9 zDzpCpbNOR z%N&zL8D`R>6Il3wNoFG?GxGB*^?Z+{2yBaki^^{(+|Iej&HI)Fpe!?PCe| zECq{>c_Wk0Bz{yK+%Q^^6`XNf+bO_EBM75B-~o#CaCq~{PJJACb4MMh_C3AVe)Bwy zB+SNBhHyF$YArmuAl(e2M1D68nEwEMs-RnRo?h-f$mXADTEyBN{gvbdyq0$fIxp_A zRt=BO6~0df4nJ#lXOGH~e|JH5mjM7H0at__fb4#zhw$ts>s9;2i|LOo&tcp3fzKR>TVYa}HOpCdI1C9<B#g@PG<|qKhP+BW zJJDs3#?AY6X4<5Hu2Ap6+v*&SdXd_=t*x2We$g~LD`ptc*+h?SaGTJymkcxi08!cr z{t;bS?;OPOSxN=TLQpd2Vdxufc>vWD!`>RzJR3aoX$hv^-rNGWGv3WI$sjGbfC80X zK<;yj)-~U=JEnARxV&H(t{FJ|E&~tcgHbh&*~nIamN;g?{P^$s(iuEwcV!em;}$SS zaO2k$QWgvChUi8+ifv=!duxaxxRNO?;*fC6zK{tVp5T1cjNIr?azb4k+y3${GUMAL z0Y~a+r?ZYHd`5h?#!&N*p`spScJkWk7G9$aM;`dkKb1n43p9I1Fk~alQNv@~>(YP# zpGp0eAdEMwc1gn@&#)DwaLF8&@g>U$70%?(A+ggUom@CrpQ4<0G$rzRNgV1uD&uw+ zr?LHL8aC5WW43bSwZzV5e}H%Z{z9$#EMrj6^$i`wGaX77ni%B(g;-8sa4V2oW(E%+ z9E@W%8v?S=J84=W3|u=~C%CbzM(SlHON3hutrcJdMZ|%u!n=$QPX;x~Bk^aP5ma+-$$&}R0L~77l_iJ`N5yDV zlO321E;?mF!1?6o@~bFQmy%E3IRKu5g`_vJWTB#zVO%pE`+z>5WARIGZeg*Qncm`S zrng8UFDYeMm6)oiJrovh1z2H2EYe|F<&Y|14!P$Tswa*1=z7hzn$mffA9oVUhZ&1; zJ6GW2oP5`z;499r^Eo`G)+R8x)h9@TGseo}@P-Hf0IEeb!)4hQ4o^8bCz@3@qB7ri z;Z8H3e`?t-Wib^ghCjS3>Ee>;@td;Cr0dsuYeyxsJaaE93BX~Tny|sITU?8a%lSU- zbkF`(yAaGs$6!=SqIyzKJ=vo zo_orU%3C>Mf*2mT6w*y!0w|u|6_3;A>`q@E`9ISX)F@7NCcD? zHkU=WPtfDkv@?E_EOWSHmOh3ceiQ6!v2l3zkSaUu%K@~UfAZ&bFtx|ZWlwp4+L#17la@z3)Vm+y$E&SN{t!YZ~D5ARz=n9XeU^RxxY z+)4EH$j`+pW1M8}81}{~zN33(E|&>ZxEG3AN#7&NRqU$0ay|Rg{{R?$l6cR+I)0z1 z_`k#VI&PhQs?c2TS!2r#gmR?$Zb$C64IGktCBc+ZfS-=_A|M20W8#eaunwT9Dmsx} zFYNE^b6WdQK{l2l(exVwIm=J zy8K^b7XB0PWZEu|;Y}M`Xl&X$iSDf7Y44_C>T=F^05>x#tAYm54|?-*{{Rui6>v^p z$^QV|9q{m{CsNn+{{W-qzX4fz!|Y!BMDf3jd_AcrgC>kxnObx$1agnr$|DS28FE>7 zD9B@uqQ1k`^%d6qFN;qRy|ty(Yjtg^SSI}6Tt0%$s#{>%bE5+YxH(mqPWYK(2 zqTXn*YW9yaT59%WK_CuP28fN4AqmuQFguLb+WIc1rTBBhx?PTkr&w7$mT?ua(`{pp zHY~f`DvmMukAKwHftxDw*Ez?F{{XM{dl<3*0LQ4s@<+{2d?WEBcHS_FhP!ELzR}_R zuAivdqi=cP3IlFD2_rnH0FO@Wa#_4vd*W{qY8s8?*Orm}v|LyJ{p_I)uq&fT*YZ{@k1X8O2GP^;^TpaPhZl#jW>I=A&j}>V3E7yAJx$c@^yC`z;f6e~+1V_QjdYHm_FsSD&htb=|y%JgMFBlFKS z`Q*2n+{Y_pX{W}=)VFgPr6WBypuj(w#aQg3n%3F^^Rc{*0D05)Y|V@lk&aDuzDXp^ z6IW+U`*P5Y)Np_69Y;vkwfW-)Par&Z62dZ|PafThMh@29yRQr@g=u=1h&(f--e}QV z9e+%aqgb$iE?BuCqa>b#135SxW3B~_;}M2b0dv=HS{#_e68RkDka5jSV^3wt*pA*m z65oE#YnvSoHy9~z2c0j@Snv9;R9qV3&TZx$5CO>99JBPvUX_lqou?e`27ikf>c*w@z zW*?na^!tdTxE8vsThTwuY?WpD5ni4@6AX7(`kZs}GE3bJE@HOSV44YXsVLgVs}G!? z%AnKq-|%U1Gesc)fMZevFF<+e^yY}wtWq3ZX-_23GJ_`J%D4L!5^B4x%oC{fkjW=- zMQ-rpl$5KZC6ZLtlS|~wxyPbHHuKSe>MEyvw^mmdCrg#S{T0ugShwv5LN=b*;~4Bc z>cpYlHn3g8I6s{Ub7dZ?z+_u$N;bzh;66Gld;A*5$-?r*aqSm}B7=9+AL<`yRzGN7 z9~av8nQLj|J4seMja~~C539k2QYU4@8Djtt{DvG52n3)Ap_lGbhl~;FmM)(Fj1X~4 z?L#|UL3q)l}kE?^A9 z&a@&`K>0a23eDUOzoi>2DFv#?jri9t`Q#d?XtB1FYjUzl9o6ma%#zP^jkqz+00$n_ z{>tyoM}}dQBa!W1=Y@g6bAHc1$;zboFGiM^1?7G2OOC91Q%DJj`IyQd#)J9e-jqF` z-Q^622dEz(=~BTV3OTC1Vnp-@_%xI-PsLlgtwMY+TnM?t|%IBYoAIxRWU?Lr_W zNt2a0W5WF0$~f zdg0roYBpzAb$4ApKQqiBKNBh2wDHc|gGn|0Ls7J|j?^?#!y}FI8-n}T908o*W2Z`4 z4zF=;(*4HrTN|bHJ6p}_Q^EX0@eT*U=xQ*mjyBn@P8O0wx$LL3xSG>mvzF3$&e^vq z1Oj+$9;4=yU1^JG?{9FyCIfs2tal0A1MVrsj;(8}=^jyEx?p`V%BZR$!Q(CQ*@}R)5x)U0J=0EWt#U z?nnn64|O!s;?`>kHyktL({He+*?G&3%nbOhLWD-Y`I)FNZMZq9Y74T8VQ_%bxt61Ku`r_eEHz_?o@$*iS zVt7Do(*ALKi_ont!#4Xn`0LO+n!LOBP(k2%srFW^^Gq87OJmaY}_ecBFLo9F^ zJiY{oG5z{fIvwSut21g4H{IB6+E*a{e@xR&M(<3yof63entihFa)=^l;{(;-9~F~+ zi&`eN)74;9Yndc6CjS7%n9u{r`kvHf&aYwNiQ#Eu7jj)kxn0070(A7Qa2WfVr(gJ| zY>W3Km@GtjB1wxB$I~3hzY1;Q%9Y z^yjBapj@x`$Biuo`mM{_*<4;-767ZsJB8#9Gs_>!m`S3^9=&sZlGt3@3kdCaW-k%O zNnXb<&U*?ULlE5S+Lh&`fz&Xxx-1Svkq&_L+lI#jlU@gsz*q4Y2h@v(``kEh%}pfUoSTrbn~ses@cdz&O?lRu0CmPg|e(O+Qz~-{HF}Z zpWNi1&5a3ncc;mJdvru|TdRbDgjh4GfCCUlMnLWXuS3Fwo<`#OIQ*GKK_*8jv}=2# z%2QWnc#4*j)WR>)Ng8xgKi63T@$5F^mJ+hL2I3agyE= zkthJ<@IICAZ1Tuw(k4VOmXMs|XktMhN}Af*=E)N=NYVBrV2YMI#JQDLNhXF60A>Rv zkAD9ET6!mifLO~I_ycz?Pr2=nifw?fTL)t_Sy8vICWD&RWL?pyk|6t7?#DG@WQ|*N zJG`b{&4GY^J}6oL0B!hDV|~PR>q#*hneE4xip<6($302;KNKuW=b^`^C!Q-$y9gy< zoQ58tMtS(DLj;Yyv55x-NB;nHz`$R-gB(hYlZ>BgUnBVhBxK}w_oCgyDGqjz=lNFR z6)0FImI(Cj9R8G8f$c8jQH_hYw;gEN0GT<-&1o16?UCyGRO<I z!twC8k@flXc7Msul_;Sejpyo`gl~Ck1*~E?+EExQ=1Yv84@`IYp>>}EU21y0)y|l0 z&|XdF?6_n5H{&b_>JPP8<50J@h@6rbxgE(Jf4wt>XSfbgysKp!T4FgMbqiiBTaQPh zDtlyBHuC9uWvzr)O(3_A%MZ~@cfcJ0>^_wojN(1B<;romb=&psD|lyiifGF0M3IaL zhdX1y11G6sK_vX+wrfE?_8h3l!9DBW@v!|EZ@1ayX36y>u8hZUo>NDh=cm$w6D*~p zC^ruH@UUmlP6vJ+y?qa04F9c&UxgHF@Qbkh`T#MIU7bm zt?l&zF$hSFv&Pa_Kcz?f9FSV3Klw11EUjWhCb#;;8pu zXEv^JYkel+z(==MB=+tqf8tFiDX;KX*Nvo^cendQ@W!I?MFr`KX%5s$BXwfOpuhxE z_;pz!5+&4WBusb&kaqhTr1(d`_Wm5-cYHVM2XdnX+_0}eMtRBZaBOQ0 z7C*V~_vq%w0Pa8$zn3KENoe_>UAegN4UgO`X1B7mypv_!)NQ&(h<+tNGs!%1c~>NGas$G^>S8iah4p1+U)lkg2uJVA5gcx`kx@O7o#=(&-Eq(GOC$@Hj=^MwIe zmf#NLRjXR@4~P6eEY}GYy!TPFELQ0s?U)rfEaTFHI3#r=fsBGFMp9`-TV%NbdUS>%%1-r5pwW>JMz>JT5|Cj*aq;dkM@L3K8uWiN9(myi>ZeTU`JnfQn)*Kv#ds5xyJwN)=lZQE^n$G- z5cxrq1n%6YsG}NH+*fZ-r!=~2)?loz7%1*Ae_HchiK9r5rvMR}^pVBTN0=GOU`|g@ zihcJ+nkan9BWrg&WxYUBn=x%O4?A+ngO&IC8kQ1SW%BXl=NKLT04~(K1go+;h~Twm zcrxpp5!V$7x;G?n1YjSiKJ~1Y?DvSND2g)J-bOG!mA0{^UTI!*kr6erfJDFyus;Bw z=ZbcgnH1UUdBRJ$ZOAy>JJpv+(bH0$C4@c9eOdtcAbe+vq1)a@6VxBgL+M`MT5V&h z$pbSatsCcsQGxo<_Ov*??7V8hG|Q-D(&n02Klf5Z+R>iiifg0zLM?9jZ!fOIQEgcj zHl6Ye;DUX-WK|&el6a&tw5xC#3b2=w0qso}#)$UzQIN4cvh3a%g5aFso}5=al&eQV zac^bgSn%hEWSZ((ne1g45eS1F^nY?*ts7e!2 zfZsIoDtrp zFX^wnj$d>8PD^891=Ko(_lpX|M#zcCVJN{HTeD+5dW?>=pH;C-TZRcZxQGDjFkPU7 z?g`+IhQ8C${{Z2t9XCjQ7wrSYHa7Znmj*@B^axbXE;&;75`e_;bBM+}Fs_y0FR{O~ zO);mM$H3Y;c@MVUZ9*r$xo-Q*&AS=r0Z9WLdsZ*a#~F8Jf5x1bN6X*vkM>n>wu-zTS>Bp9s=-~!jj+rZ(`$G4^mzu=4gHpBAZ)4P8`?c&hP`8yl zSYh79Mivp(!t}rQLmFXAMjb=sXR$>G#(??EwpK6 zCOs|{P0@kNpqYVfzTLn*PAj+R2f}(Sj+3T%e@l$%);7DWe(yrX9{o3dYu^27`7@r`YMtEYs6oX&;ReeuO(e&LvOGSrFwRn8% zx63=1EF=nq07iNe!#!&po?c9;C+N~1J~%ef^zHuu+CP=1YFeejq(Z{U?-D5{;yD&K z0x1AE-R36Jpr6Jom5;YZywJtWH_8;#h`aa`@q`!-xr&^7NK>7G8)CD6XpbUD05 zWi060dAFTy<%V})xH4d!rz0gsR0*xsN20HH>+W#T;_N)y{8mbW`DBuC4t ziAGsWTfDGTt~Fb&6OBfA`$ z4(DEqF^$~zrFxtV6064}Hs5pK-jZEhG@EyF2N@OU2fLZRh7((`@nK*beIE>`;hcK2>$@hRSL$I@=JX(!z4*0u%i}P z2QCLp9>=fNgTILp-D55wm(zmBjP+AmwxscqlY#~oMC*@Z?kH2JtgHi$Tk((YQNdlb zS2ns~P<{a#g$ zzZe{RRwE*GIXt22C>F>*!1O-Vv~1Bf8;tZLy)jtcDYF3%a(ZX`)Gd(e!GUGy4MJwz znO+F%TSnqdy}jvB1PIiti14e;bt6TzCXQ8gvP;v&ePM}dsdeUtiYU{ zaz2$K7q!HZl4K-Eg8=){167ThHUz04Zy!G5p>^GqVdiI^JN(e{STw1C2@CDonxb8n zWw}Yfkr-u{45alHf_$Q_*F6tfuh}7w(9*Ey{o@f_Mmy zc&9m%8Bj1M+*DH7tbkovOXWwB3W1Xu9aQ^+N$j0apEa=LU@1I<*wd{d?%H2E3*6>k z!uk9xIv=5>Ty~HvmY7AJgx(=9Hi@zCY*%;>C`W8|T=n=J`cV;hiM4CSYxtHab_D&H z+v**1J^nj%rE~q`PSw2aHb#bHl7V>6M<8Rdp>MS*FK+(zB#d2v8?oJZ!++F0`_u1W z*JY+1K^z-<;pW0v5KjbSxIK+)s_3)WAH2d$wwT-|LBjmDI#TozYB2A&kSySOkn|>{ z(L6zSqTIS!fTptYe@sC-)iS5!;$&>ABuHls2K2f0~338{{Y1) zMwwBSqoc_-ZR@Z1LRGR#4bjwY;~-b*m|Cs0Y>T zf8Tm9Qu|7h-WIpftzm) z@Pc#faa_B^o-1u#%vyX#D1kgFCqE~izsjpu8ier8064za}4saWjP0EAwcx| z{c6K+{vNilywRo{6y#+80Nh7&)~V?UY?DmV((`b)jZ=H^BXR=t=i|LTu+uJKk)~Z4 zuI=rz&%c2Cd*hxDY8L0jkXT!be-BEk?S&Twwy*~ttaRze^Q1bKt#pX5=Q^AYcjZcs ztWJGLC)%^8BD985Yae)??8|DFaU&UBBj6xkQOP4G10K~{@Ls27XW`f+ySarfE}mPP zg)i#Mu_Nd3?dw}=ueZT^wcWP)3qo!3&7U$^Tt+th;fd#^MQh>sQsC*qo+#ZG7ieEN zI|0GRC~!gN-n<_v^2;yFN2`J^IMHpl)Y|UVC0ko$jDmtlE*NgdQ~upsb00IjqYOHDbfk}G#m1;c&f9mN%!Vvyv4&e6xsZza0CkL4sK&O>=j zq?~YgQhlq>oyu*+QaWR$O@l-crz`6@JijCB^r@_@;+{tnH{Kw*mP>a4l?6{h*FCXX ziBnHjl3RH(fC1!V@-$tc-4(e(fpnqN`$?RG`c$OsZKitqShS5USffD_6-!iAzyX|+ zdiDyqrCO91R<_nMO%n(&BQje^r+T`AK_L5rIR}x)xT*Y68NAeV7HLW=i;|Ev#b&kG-+y1=aG&TKpk7! zfs*5The>~77d!AueM!au_NUmo9Hs2OTQ%Cqj?L&T&VIj2++5->F`NZbb{+|0dj3>{ z?_P5TwVceymVLmf`c`A!xoJ@CJ;fYGI!n1(%P9y?Iqu(D!%riCKL971T@}CtVYhtz zRK|XC2+a%wKv=nnuAf2~`jfWW!HJGfN@pKd80?eoPvt%sICw(<9s zz6W}4VQHjWWE;1Pwoj)6`qdA`J`L3FwW)6;yWe3L5-rIG7V1B6CsIZ;$6oc|d0AF` zl%A35V29I?f9ZUvYNIoMW(~t}k$jZwA4)uF;jpVM;a66j|uHV%*(bsg2Q3 zng|U$k;z5&>T%mNtHZjY_>WGxxVMcFZSEQ{i2h*%Xds5@P7Y2hn-rEdrq!F|i<)t= z*=|+xa1uay1EocFV^u670mph%Xw7XJfJitb`{bOGerb$XYjYDL0prYj%p)E`jBSFog$AXz;_E!bC~dO12B zL8%kzl(Q#l((Y82Fpz+mr5@7XzfUmK?Q-ysRg;b!Hk&QNFxUWgHYJgAP*#N5z`B0<+^-v^Ka^xSvtazp?6W<>$ z)<4=EtF!@<#NYw>)RJ7>I;vbE73_A8#uS z=DvRa0EpdvJUy%GSGs{;a#8e+KdB{Buan`3da&-49J?cv(>*uFI_8;pAk{n`B$+dZv(*qr-~RSU`cyRP*2bObmfbt-i&4}xiK6jOk1pZx zy@X=o>+bq`EbRniCO~E*mV1fkOgc5eYz2cVR4Ve!!2ak5=U0kG0mE=c za1TF9_CJP2N-~@7&p*s=El1E0jITuGb?2pRm6MkApKv*?q=ClbH#U0bn#w@!8OUHd z;fM3Dbn=0wU@^O??mN`$9J8Y22LN%q{qs}9WE&ftjP)4cQ4+*#;twmVYW)LB6rafB ztrj$ZgshU4l}avfcJul3Od?3_xLH||#&;s*eq*%^43i-!QIWHZ5J4l_r?#-VxVl?Q z8*_U(97ANSGm-xQYJz_{q$a(X5@6+*CmkP=S}>aBL|e#!Ht#EUq#vbpT?gz#$C}bB zodL9~RvW(at4y}hgAg(EbSgZfB6BA=U<>+ z9{ULUH1NI5H#VLXvz_BvB$o44k*-PwJ4nNwppt#6#5D`M-8dZ${^_UNOci6XRS}qX zf&kmV;{)?G!;|=qIO;0SxOj7WZjX*UH~#<#zi1l4^L4ni?+aM%4$pgXC6KRtM;=Z< z?8H}b@Q3^*{hDa-M&2QpQ1N{INw}EXLA%{!jD{aV&0Pb={{Uz{8t@#c4~VX=B9`;a zduU*Q%;>w0=3oyPZkhU5H`hPn7fQ7k@%Vbr{7)9KG*6P7ZW#K5De4!Fo%pXiFYyeG z(%0yA!^DbK&Z!l*fqu%CBc^G774Wk9rO)x2M;M{#=~F~=j#k1k>W3$$+7nIIK71p8*H zI^T;UyVATx;yp7+2mCf;47Sp@kfD=mz6MKrNgYo-`&SE|Y_8w$`<+Q*$EExJ$J9Fa z+dcNFHM4jlP_xnW<7+j*tML=UBMZHT@b3=^IeDwX>T{`-CDR=1QT7cR4;% z0CGtjA9}Xg!wTv1#j7kgS2yV9{k8^4au1-B)l^^s(~R{dlE(i4{W0@bq!X%KUwLb9 zd#K#q!zLsmNsER!10?64dI#{JR~X=)dJ3y}BT;eSod{mY?8uU&JNPCMAra^D&*h3b z=UIv(Pna9uo((Uj_i;!Rty>(csSI_wUiv6>)VO$M)JX-C(#aC? zEAap=ZJ)b`B!uG`z~eL{Pb0H4 z5X?y|ea&y;c#?$q&-ecT!!IYvQjZui%V%|KFxf92#*A@lZ5*SOamq5B=i;hy-4*@b zM|ze$MO$+7&3cVl=cy!l^$Uh9vVairoYav*te&ozpcdsB@ObO_(@R&6%PJ2Z-qiXM zb}qV$Vf5q!@zQ`QQI8q^lBzw} z9M-Q35_@#5tyzqP7Dabz{kLg~P+HE>j*(%Kok4vFAKipPrHBppHrC=1~H}L$5Z8YNMCRJ^~ z9oQe#RPWhJg)1bEGPnop*0&QpB~K%`KQ*Ei2MhSRjMHc>)MD1z;gUu;?24s*3n^~E$AZOycU$|SPz8BgK|`x=p~ z0klZ=31L}_5sk7&_yb{Y;p2f)l{UfcCGc-$brMYsTETBCcjAe{u^!-%Xnk2e=cr8f zY-WN?vCaDC4zlIc>a%!ENg79g7@t2^k$b98!t)!uzeHc6-TbPMv*NIKVxR)`--!=&xZqj*xc_w-5o$N8Ed_^riRi zFQX1l0t_|>D1LrEXgdv7<3_q!1M$&^W)-w=v}Eh1YT`hTK6SE?r>d~z3h9iL)fhOqJ1llr<#w!$S~mOy zpTqH13wyP6+abvvE1%ij7=TteO!Pgf!)ti6AO*It=t=8QTuqbYj(0uO!Wk{eRYKVy zfw+Ejo_Lgu?K$a^X}qQq<=1m#yByGyZ$j1eaX&3Qmx4l#!AD2urS^BDB#u^S8zFcx8tVtNW$G=?*bvPwF6 zXFUAVTLaf~BxHGWWy>6mpM-Yig^Enc>Sk!b$rvs906J7bn9f{}k)Q8GL#jTT1=Y>E zz-70MrdDuAtdOcQF^*d!ry_|p2)RE*rOHVcjY`s4G=BzZiUVEV>I-qPx_-(wkcREv zG1s?hWcHeh+*w5qo@Bq&B@h_m&J2t&p?JY3;P&?D#uy^JhTi0erk>CCR`caukh)=t zobi$de!SBC2gLsXdhxEIE}IvXdEv>`ZEqN4tiG+xGm(!;<8K)GuaK81Ny+=O=_4q| z?fv>X&aw7ors-B|ZEw1oAxkx{+^kMyW7-R~Gi@oi1Y zG6^GtpJDBf&Zo7Vf5g!hvSeWv0q1eaU+?)=$+osJlBU9!|Lqz~?pUF9L2Urj9T9 zQMzccNn;Dd%_MQ}9N+=Z=Z+09&~5YtxpeU^op*6$@RSc}c43wVJsm;H6P#o^u*P`K z4OLHzZ=zkz_eROc4!Qn>RFU|(*cQ3dZJAF%7^y#=4GYHdvHlnR!|Py^+WyB&@x8y< zXN3GSH;8l%d&Fa1w6_y!R*5aV%5FwPPdDuI5%U0InIi*&bH~p<68l;4w}v&zFZ?&+ zOSIH3oFt-Pmnk#543~~TRk=Co)|+_$09u1n(4&IZ+sKkx&@fluo(b#ue>z*>`JvbR zdEx&6`6Y@QNgn1^E*o;jyUOsO1RHoCCz{7A$yJwa8e>pS;nOaDE1h*86zf-aK3TZ9 zylE~Zg#s%}fE=oh6c!9{I#QkTI3g)9p3T(Mj9T%T!BA#nBPkq`#GmSGPbiXdy$yW? ze%Pe_9!uLdLamZeD|Fygh@h$DbH!=plmUiFBcFp<A+c=ElKUyWFI2h=8 z`qIBJMo(YY`qZCzXBY$zkBUPHb_XPT@y$kM^4Jr{y+E?8Y)QeWC6mlO@!J&oLLEaW z+mJ>p7Z+wI#>30D%#Nelmq1u1J}Vb6NpWo?3oAn-1LerL1zWM^x%0)(9HNbJON`TH zmrT>;iU@_l2{Rq;`6agY`g?w+muj9hv`gr;$ks==xN&Y)Rot<;INIHF^ar>n+K^c4 z`t8=AZ=+m8b7Ldq$*BMVFe4NuKl;ll1Nd-$DD4}-8g7B8+uwhQT;D>HEYPjQc|^(O zj?>E#kQ=e*wS4Cl8|B&T^17~v2THc^qg!0w$2O$1&SN(cg<)u{2tXqP0eQhA-i(&i zX!dt!NVZr|F_K82U8-1e&BsiD0jI0997zi%+wR3i?^+4m{`N80*J6pz*i#`#_{gpG>k7u-Le(u8@z&-=w{E?O+K zXBp}#Q0(4WO0xqQ&vQaae&|6X82O@v;(V|fA$j>U1jqxn;hJdxS=Aaq2z~(Qdskb~ zKGd}D4gHJH;av_Xt~I|9J;e9(iAsIl3we7Kj#!xD7#Sao{SOjgq!ES3UTQm8S}#db zV<(0mx_#@H%Ec_0>IV2H7*FmyPm8=ir1($l^TIN$miHH$6IrpVr z3epdU7Wy0AL(jIklX+$s2m+5;N^X& zxb5d_6-KyKbB)Na=_e$0`LC>X9}InoXub}EO|sA}HTZ9b-R-qABE_gnIx$%!Y1?d( zm2NhLAd!q<;=XP0@7gEX=h?OQhcC5X3+o;y)fV+G)>$<;p|uDUuHc3eSgAarZlgPa z09C8)3++2j*ENfIBJk{5PK$Rdd2&f`F5RwQ@jE$%Y z!6)@2ztpgOo&NyCH;Se4eu%z0@auo+spXVi2fh~URZ+GnA(lYQ!G8ce6OuW{*V<=* z{1x_ZrQT{9KZSH%EAH^Th2pkWnoX)s8de*ROmmv&Ut;?7ny-PL<4~Vl)bDK_qEwGk z-5tasOD@RdU^1)eDl&Knz6QQN@wbU&(=IG+{37~f5;v7Bn$^-;o1`dCB5dtu9X8~g z^b}9a$&x(3#n4B`gk@jmhWgKeKF>9{Y`j} z!vox6s~#%<0EsUP_R2-mQ8~c_psP&2A(rCPP1AJPTTipJw3gX1aUo*PSeXtF zEH@B1=i0a**{1mXPbN49#!yej!~PNq6y0bkOx}e%Lwy3At`a}uWH|D6U||H z{{SI*ay&B}alAT{`6NR$qYD^P#hKZ+da?7Kl@-y{X3{)maeb@LZFiyE&mDoW{{WUm z@}d$cWnagf?K`u^ed!LbsKagI{bKgyTf5!fS&KOuK{QISsof}rPF>g30V4~^$f@n4 zH}+T8TD-R@2C;oD{I*ZEREA-(UjuRUs^xMAzC~{gcc`N|Nv+9{+nYPv&k$SPLM^Se zNHlqGV77}hODjdap^bZPZds2&znC`u$5Xx2ylbVw5?Lm#syxxnBabi2J2SKbSd+K7 z1LljHQU>9!B1l$whS!)V3`bx{=M<*nQlHFamCi@-@DI?}Y&=Yo??*Jeh)1oAwPkwVu(JXU32D9k;x z&24WiV1ht2#7}Rt3Ig{OH$seTh6p9yj--3kmiFw<+oKsDJ!>(!KBaDZW|-N`qXu;g z-+{@fay3x_xv_jMV?U6y7O}o{FJdcA@ z8Sa=$8njc+!h~cHJ*Y;E1GpZCoYS_`qLYZ*YvZBsLk%^ZiZYN-&U0Iw^+LcD@Wg#; zL6kXJ2hTOV-jysT(pY1vu*D1Hy0#y+16mk6$m46Kan5mDB%=yR&#|asoS-PjcHWph zMMpHj2IW9d9jD(kQ0;}yGC0Q7Cmhgjy9i|^NX`f~DqBS0F_8MYFSTzbRh3TG>`p0@ zWY$f&!Tx7(&*na9EY~=7Dn|Tv?kYHMiarnF zZZc|k=&MDB^3Ek6e9}uiWM$M2Qh{jcBdCy+k$(&HKSNoP%kKvzR5{?0(W}u#B-}DXSW&Vsmh6J%6_w<-Dr*$=nbsI23+kpx%HY&t>iqtw}0C0O`R>nONhX;&)b&@er^%*BMjpcfbiUQ0^ zo3ejiD0Rx`c0r=D8=>Ncmnz2~=cOWzmBH!P^sQ1sk|hO6&L912Smi7VvSep9sSU=^ zS~JeVGDTcb3^LS8E@Ox=B1Qmi=s)pYN5Wrc1H?al6WyIXtu2hqjunKg2qjl6KX;sU zJ-XK}w+;#-$gZQ6JqqXR+PemkW8ztKHJR`2ukDp~EHKQkEJ=<_ciY#FaqKHRwvBPq zbjA9=+11Uaod%(#IMg7LJ<`J%^~djl)qvw8sLvv)tvgwI;$maZT=J*=D&M8})=e7O zwAHtU+f=fgGTbtgzC88F7cu+?VCX$SdJp5cdP{{X0Pde%v` z_>HvsIrKMCT)(XBeEvu2SB(naO?zZbLS~2sJ6Q%9vPT){M?J7=pRIUq<3f-bt>qTd zbS=qK_4cUk?p+{J<{53t>)k1}YeG+ZFOZvgHD4uU+Z#5}%hV3Wgw*uQoi68k$>+x} zBx4Qv_RUm{f9@wl_9RSc1!+t`D_z36eWcEKib>av6CD-`nX$$75%z+qyVkHy94R{=W4}bVQ-Z z=GKM@qFe`ifHSpt4fXk`eDIP5l?rYr2OJSsn~wveHp?PS0BJ6zqrJkC z(X4kM9q0xFk=GwJyk?n`gpwe(xRyPV0z(dtIxzM={{Twb@JBu#94I|U@c#hfmsy`H zG0T>W_B~hTq?0K9a)-SOPeeMQhLNgEq}{0p(0FA$f-2$u0-C#d`ZRzffVY>Q!rj)W zBmxHP?DzJj+CH&!q)imCu{%yd?0yYfb-4B@*Gz)$-R&-AiezZsGlo;a6)mmjmP$y& z9YL!$s4V@UVdd;0-bl%51N~3*=}}K*cRZHn`uU#W7&H;Id!%n-bH+XE zPw@gSOz7nb{tyWUgV`0!ypvo_8v&MZOB0^d)sklF&Q1H~xb-s^a0ms7?}5-%Y2mrG z0*j|a#ztZRR|k>F&u;YQ&V3NvL2P1*5LYd9S>1+5?*MU9_=m+1*eBd{$-%IYBXH_RPHE-HgH)KyJ=Dn~@ETAE`8;)@pwTREX1|JQJdtN;yQYMV(s_-$2R)Q0 z^Q?T#oNzMycwSWg05pAD!@AD9ZKlcLM7EMkg^%xAW%Q5|gYg}tkY??()e5Vs=tCnDS)c0x${p zuB8^4ESi0mst)^mt5lg7zpG=O2_3p)y?petDDTnhC|H?vUl-eLHvTCx#y@vZ(&J*s z+bVO4&za+!Y5i7yAJt<6h7T>iKO?|2XjvkBM>7n63yKF;)h{d*g}7pzWn|~_p=3gE zWIyBnB54Zh9t^vgGFjfr`Z+`Ao-?P97Lh*x0H<2& z5pqN~8@7XtZuF3I`O`fv($`P8n&V2ei%*hhnkVviFhp;}6fro@L)L{85u62X-793e z+lA*H#dFIXB<-!5#&U|J#)@M>wOb>g%7Kd9ZQ21CKK}Hz=iazdYj|C|oa3!o0Zr-Y z)4dHWqz;(`RQtv-r?*O9aO55j8Kx#_H03*IUJqTjGC3L(PWy%WQi8w{^GHfS#TSl(z`nNeY|zyy%N~kTxhmZ-LrU>O+xQ| z-Qz@drL<~_5g<*Vb<1@*E0gB=9#pYD5j!y9jM9{uW${n^EBK#C((Uzc1zy^C-$|Ac zD!q;pVx$Z*p(SKf+iPdyxU1>!7Nhq)Lw1`oN~v%zqGW4)oD%3p;f}p4><^0}?)uMyEx+|PfT&(8s3b*_ zK&n`fnf2os47m-!6+y7Sj@r{~vd1p)2dT$C!yi-9t#-d@-X_z0LobPR-9}9s7Sf`mh#ZK%l0Y`TI z?2s~Z(!BX(=KlWvet*~aJ0lJ&?Rxlrzu);jSiA88-ETI}nc{3abLGOFg12&d;;Zub z__C$EC7SKqY)iA!$2iZ^J*vg_hi`2rxvOe^6@bHUsLLjy_ct3nsU&7*gq+}nCjo!} zgTNH0!F~+4jDLz>&*$pxpD-2lz)wJ<>E4r3R_qgRO&a)TPrSUE<@{STtvqK16CoXP z2nVqD0CGoKxh=_w*KBx!7ifhzz#R|Ph*7zkABu0^aNM^HX2lJP+mafHMJ=9F-Wy zy?c9PoPtjuT8>$o4jZrXtzx}g5wv9WIHm-oE0tB`jQuJi9Y>Y`1LRQ~VFETuSf6ZW zr2&W`K_eff766v*EIZO^07u9ibfx;^rPiB0ye%4Decix}@JR!VdynZ&O}TJ+$__}y z4?g&LMF}7tmu1ccac1!0mGW9=PCp`0RQ7^?!8GevvA*#pwPx_?nr_Qkt|E`uDLG`f zjGhdVF=9_eSjlb%57GVGT2>BX``oyO!qP9{%g-{o4*Y5s;rDT8D`qQ(~A1H!kR~k{2i`oUJmeWqoLn>u~-NxO-C=59rd<>V5EqA&-Sk$rEz_r~H`@=fcp`+_DtXhSH z?G3l}-;pQjv;p{R9wD|N6aY%DAxPbL`K z%O&HCMhdGOWP)-*I210rA6U^ZaS@VeV|lFh6&qy(klVj^Zs0)Yr8R3w6p*+lx~Ubd zoxIlfl1(!1iPRFO7|8GSscQQVLZ1Zqw_1wBOVel6FQA29TewA>*b6?;rODuo>;RB@ zao?Lm-CXKdZ8o7a*Cg&g^Aj|ru^i_l^x~T z(r)8{P-hqnbDxY*qLBGEix!XLpA-0B%!|X?-l3;KEAD7**-=|=0+W&SA0S}yRp@SS z+DqwY)F%G`oh;Wwc0|l_4&l(BTXWlS$68-;twJ(OA4w$f*NRd#N1i|}Srndtw;#^B zG5GVz_+n=)(TCz+&r!WtQN6vC5^JLC9thPhWEzgA8%QLN zFotlk>>Zchl-XNEt>wat7hod;ujO989|`gMrTq^#FO-w}QLlyH{2<(2+y+aDlgdN` zl}v(3_Q?bErkakmCZhz_h-5{XcC#aGVh>UA#~(_>mTHbcY%m_x2!KM$(2=+{aycTp zW8vXW>dc>$mFuA0BF@Uj+`JH5TY$Sq>_9%)-HiVLIzCw9l`<3zuTA+{iRWp5%qzPd zt=Q&(dy%o$F|~SeTBW@iw|#&a+B=gHp>8@ae~R_J>W?%!aHFFPsruHis!2I%i3AQ9 zcdc#-OqKnq#~>UU+{w0quKcEOSB45W?NA8A=b=8wt!K&HNx>Vv_~N!q$1d5_N}at} zKNvM@MsK?`bY&ipa6jJ_=%sKrvhG~>>}dR=sYTte@&k1h8WO5%LJwctktgN_RWOwG`g`H`PswOmO1w3 z$8f^}aC6#S6_D9R6Un$l>|2`Hr$@;!}coAzfYs z!Lmryo)~oowhALTe0z*`ssz*~7RjPaP|Hf=vV9?P2`ud1ctYvQW4mttb-uwv`+5NHnMuNN)`O zTA1AWhjM7k9Y&2v}Q6*6vgA@oEYmX)>VknhlV~$Aic8siWlLwJ|{vInRHZmBP5sdWJP1 z?L8}E$94#*8In;EhB^24sC?6HFnr}m=K`c865F`OdUv7EJP;0Q(3sCm)LI$C#~=#$ zR}P@zbMseAX)ZOJdk3_>o(l~wIY#?%i#$)s4TFrKBxjnUL#9b7d3GNuak#Hc)&Bs) zwia(>?2=pFI|MHc!#WS)3JP=IIryl_MwssDnqBFa*H3SIt1?G>EHT{L+$jZQ1b+59 zWRaZIx?Z8?x82yINpBi}6l6LcN|XNpNyz$BTbtVr8qrqLNSf6rbumV&B!!Bp4eZO+ zdSHMlcA;YMr}&11Ba|@O@r4-YIAsItStn-ILAJgz5ww=q@r%14NO)b2P#I1evF5jgQ zZGHDC7JFGf@oLS(k%k`(J?e=TwJy&p@JL!V+6#;yrhWb?oEn)%^Hh?L_`@zU{{WgC zLy|gurmY?g@-C@H4?0At$2Fb!MoCS&$)8&gX$jm9qO=97GRMyU5@P2bh?_{Z-*t~Y=u3? z!Kv==qt)Tfx~fP{SxEdx*!=v$g`AkK zGZg;-xZObbB8Dj-n`C(}*8t}&-xZ=}El@(-KASrT+_VJcek#Ev@#~hzg-6~K_m`;^ zS&@sT_5cIZv&WuzIb^yG>eQ8vB6 zb}n1F&T;XKRVrqdXD-=bd(_eio>z7ZT$8x4=RY+7SrqNV1JsOGkx3c1W1ScLKUCGU ztvkfJlzJYYJ;Fh8skOP3+eS_|6das>Sn7Bb()U8sZFP?pLE+s~?^-0fl+kI|GCI3l z#S<8WnNS88p<#}pg;Hji!)tSkk13=ZUNa8;@q@XDY#q2N4;Uw>Ow$_~Z>_D8-YG(P z5vr_B7;O8T=ies0Z#l|R;JQbl<0PZWoxki?z}Gsdn#SM5LE$%W01>{5K-!IGkoZ9*f%tHZ;;F4-Jk~?TxS0D(>ZOHZeBkdSes-vp`J0 zlTnptwrIkg@|BEaU}HHy$Qp457p2=6mrpNmG_7!@mSUjA5Xl(poyQ$<+*56HMVDS% zG+m7fNbbmIF)=v8;Ot?J{EAhhd5@}UlQhNF*%mnAQg$vg&m*ZSGweyL3(J3P8@009 zy}HMYJF>7C2KK(KIR)%LM9$@+rTAPM{PDvm2_5EuDJFv_75yeVY z0oLxoWS!q2(P<$-asL3-0**6)n`nh_PT!7AHiS%)7CfART3oM~Gmf3>c)&r&C*rW= zDiPjSrLm~V*FZS8-1RG*ZOD(ZJx3MEJvTOTaA`HSjx}9xOSsZs%ZYA)S>%l4%#W#E zzc?I<(i?l0bdJx;jUyR8Z%6p}ubW;o@#fUKJ%^X-t6c=e3dL;ZKp4MJeX1$+sa`lG zhF>CR`VFH6Pj8R+oYvCnHujfE9-zkEf#egpM*xhG&~)VeDWQ-|a&Q!kt7nXR=84OW zhZx$jo2}|M7PevT#H${5yl8{ebH-Tb3VsJZ;*)q|QIaiIAtJApDZ>TqKk;3s!oOtR zF#AMXE6)#TFyCmGcgDf)?`}M(V2fcdF+u8a#s)ePJ@PpRjyx-Q_IKiY{Ws2eA+)-Z zJ6qo=qglc>Hzx1Ixd#j~4i7ca2suL9F_hG0R$MP5n{EOLP@ICGjEVwHGHdo>F%U4q z#;Uu{eb{tA1NEr9IpR3=J4IO|c-gSgf-pUfKk40^A7k-MwGR^M`g%&xN+xL3?I0gn z_6OTN>n6Q3MXrK}m!w%hw{uB%GOpOwh|6QS!2WcDP`r}y#Fr-o`eOr;kaNet!)dPaF>vBv#{ zM{4tJNaH?Qck7?8y&g2sq!4jX*xjj*s2pT{Xt5!{Z2dFMeI3!`(W}82Pyq$K{pulr zr#|(xt+;d7y$+=0`+Lrs8V-%H>t9|GOj+t|v`v={oCjn8AE*>29Q zYPO;;xuk3*45x9^cjJpnP0fcImO!1?b)=vo!OhqS2d zmTmE?voww{U5`_N^c06v^0lpc%tSL~X877q5AOc}k^Wh$P;yPBq)U=beq)2EO{8fy zpW-t#w<6U8$ z&g>pV1a1r^TsTsrIZ!{HGlu+0wdL~3Q`C%Z{HwX#dO38!POUUj0+LC!4p%2UgZfnZ zzQ1*@Y7MArMIPmlDUe1NIOtB%%{RHyqP)|^&7vogm@?)}2+n^N-ly8Go)y!k(W1Rw z2}Y*{%m|llBnkkJIcV^C8R^C#Iz3>jl!|keu5q606T_(B2=>lTg$nif2SUgP+EIt4>Kq$Z>8|VhIJslRE|8tO3d7 z9CgRF4=O}g(nB8Lbf>p=r%h>*f_Z?A@#Bnl#V=%v;1=4s$2jAPgzUD2CEFyb01r%m zO3bolM&pD0L#<6J6?5eU13ZJ?hPlHi*sP3CJ5Fm;HVGo{ClWDGG6?TcM66q5VUJ^) zC~kB)*l=;cs8S$XC_X+q9D&-NT(oL}DR=B;^p4=w zf6l~(bH+%?rx#+H3yvMhk;ZEV*vGk*hC9|`m(W7j(K_~$2 z&v8*Siv+|Y?m@xGs4f>LF_1aVKhm0ZH>49UsxqK*Mlw6l6I!TH$Tus_`qO#{Y5I0$*tGb z!3P*UsI)3*^m05{{m?zB=9haaZEJBEe117d+P_fTezbrVBN+qzYYrs{LbD+w)CWpo zbTPTqB2Bn#9mJE24E-sUw}>}eZE`~ajt(lQ$Q~duhEde_s8(YM0lIdi)s0GvfY)S_ zMQ3lqyGPK{9YgjvMbMGv9D|;wgjyj#Xd^)DHrDjc1nNM&8j)2L;U zNF)s4`_ynxu;78maZy0!2+ue?gHye(`3a1wt0`a!=yAxavl?t5-63(bir*oKDtR5L zM%RsiafAN(qLOA_qXX$qfj^L$Nx=h;aatrqoPmne%e$>h1iMJ~_ovWyNViuuxp>%t zj2bG-TAJMmjDn;PMmqDK>xzqehp zwbKc`)#bQ&j_mXYBb;=>{{Vfd=9#Ter$AD}E=vLwjN=_w=xUiHn@AYvy)@FVS}U04 zBp-i~M52coTP}LUk!lMR_O5KN0)SPC$USlN_N6v{d=fC3wr)6nJs|x(zokj4y~zmd zpLi+AVbzo7oLCEeR@g;xB1Rf7*-TfQkKBLtta>-?ieK*g&Asw6N!BUTmW=-Zaqw$- z?k2YaJCLsXeG&tem4DPwnuV?ApEPSYEEfhDKN7P0XSk`Yu3)_;-tkID*N?>){Ymfi zr{2Lmf?b2CF#V=v+puroIO~Fczr_VL#npt5X{p4T#1w_ z5|SrR^q|`5l4%|>wZZ+OfBwRTl5r^W5P4FLtDZAaJl}aJ@e}uj6t>TBuQWqBZ`vvRUr|aWw<^Ws^>fG_R;&q9Bl{;=L6b{Hwiob*CgYOfDF}y_*YSwtF4(a72I2JJbtw$ zzk&_a66~Hh=TZ0=7RmPbt}aRTbn#_#{6~uP=W80Qx}9R`o4K8QpB53v9%cEKclv^HjefJp(?W zb{gfOc*%2y%7ex_gG-`@S&~LqC`sGLIihm1ZC01k04#a|@m75*#u(lS?%@L8smow6 z11A~(0DM(9#G10JeWOihr`z1#{n;(rR*Ept;oe44Sy}t0#BL8lPrV#x)30NKdu<{O z5$&RMkimB?!(W^NC37JmPX~p-0N@ID;$-m-sipWMO7Se#i8alI#-_ILX%_ag+bJSA zmE=_oDB9V}ex!p+t^6}1JW@?@9IFU83kd{coE%_e;~$-PIkLu6Z1mxc#ZdfM#|DxN z5fbSGc@g7=V5OCL_dlHm*6#w_?y;UpUffF~+eiW{;Fe4fTR(&h^~vO5n(q3JhiRf{ zwkr;w70F9v`@jSCo5;yw@7Jg4T;E>2jKreV+}eZtC*6&w_(>f(>}$wbcTFA659FmA zgXRU2(^rAX1J`I+0#|U$1MT(ajOU8p$``%VQbDjd@IQnGP>8H{mrn_aBOZPitD+4srNV!nGeU}24%Xe}t zCbKIuBdY@CPJKk5_wiF|(?_P;q=^c$#mc7bxj$Zip`=aX-z|d(hQYxAlgIL{VdKj( zw62WaSmV=l1UxSUYCM~k-UlK`$`m=;iu&CD-{Q(Ei2zU8rd@ zYoToId_85B)ip7B9KUdcWVDY4M2&?6fU0xv*8$Dq53viE7EPypqFXF%RBCYESxF?= zI4;)iyHloitA2gyo!{CM_+LfUfAr?1i0(Amp_(MyBv&A*0y$$omIra_IO4dztDxE0 zY5FMB?k^_1yNpG0XH*fijf^xqNn(Q`No*3?;8Z^&G`|+B_wL59<4%&b`~3@-i?m%U zMAYoZg|%y~Ye&AZhW66t?$BFJwZY0d0!BduWN>LPa&fpE=cwscpBKXy`0Cl);74I; z4XTcSVRsNdo3Z&)GXkrWh=wDsM_To8$;t`Kx;Qc=8ML|wOs^oHp`##feO+oJ7!8aS z?SoPx05aW2O5a9d$Wg`s=cPq+jsQ5QKWK76BzEGp*(*3Lk&oWaX#pGZqi;@YUA|t{ z>zb6H0D>`|q|{2F9jtvPr!@8KVF<;5E07Ob$iwa4c_i_<^vRLq~S;|T(*wkBei+|b4@aCIueX011Mzrxo;VExt zrQL_}5f3ulKHPe+HbyhSV#gasO7TC4bW<&yUKsGpXt5^$068Vp=Dad7IT$h%fW0xC z{L(EV-y1@bs){quJFgBwJ?b=Di*d^<$IzC~ zq%K13EN>G_(_naGRr1>FX)nL2c*sAxJDy4Q$2p|gPLn@Pd@HA?hkniUtv(2w zN}4S#9&|fV?cJl@BOGG{dcQC}Yv;eTe+1}XXdVUC^|*C2tLfT4==Aw-tjrg7P3A9| zr^*NgkmXt?E64E=*=sl0kJ^)cr+7+#4tTov@4hOI2Qw_L*6Vw2*b3_D>QXQRFc};% z4c4muBJuUUwk7Z@=>oziwNEno&UnN#OhU18%|8hvL#a9(5Z_yHj&*ae2B+(*9yeCm=@g;0Q=0 z?Nir06N-af@dby8?<_PeC&_Rwgm+TBG34ZSU9FrhNgQLiBNf21H0_%;bwwLM@a^oA zTWgD>ef9*Ae7`+NhCl%x<0EzsM{!lJ7wXgai^UqYr*dKj>gbST{0fWdP&3H^K;-gz z*ID~Q)@}-H>O_YJkLOaD z$mD-Y0Et{E&JPCz6%OF?9-^}|5ac%%=%he;bKKAd9z(R?XY-`OHvYLq<%A zGpjEgpd%T_x6MbXNLp+cW?*r-mk0B&LU9OC#4s69M_;9MCGuq7porx^vuU=4z#wOm zGfknCG)?6ViJalvC#PCKJt`UaC9#4z#TvJJyVgZt8+L_OOK5I*TD(1@h<3k*i!!HdJ?oxfhqO@!Bw=tDyOCx7&$QfJpuAiW2 z&}tCM`i;H3E>D`XTSl-XV0|-^emYiJGCXRZMaCTVa|`$+K`eJFhGxkwf8R<>VK8rf z!I-ZRk-_>^pT^pDrD3Tw_d#0HS$0JT65eNMa`dJY-~Ilq9N)=xmdY zDbAm%z=vhoDi0p6)tr+~(W+^x0!uZNdIsS`Pi3)zRU)qT7P@-|kuITB;E>EXq+0B@ z&37brL^OSvcc@t{(B+PmmD!+YA+kaE?NdZdvUzeSB#dVibP>0hp^&oo$jGN@q}$y_ zuN*}uMi^j!688jE%4rHPaw*p_JW^orz~BlA+{AJ{OxV4{}ZG^Ap zA@nHZQ^!6?nZ=@2Wt(6pAD>#1>e1lFL1ib?nuUJtDhQq07tf`;SFR(zwhQJ<=0%T5 z4Um2-OW6t}X$ty;%1aV(cUOdCqKtu3Lg zAuqVyvpxIOuG8%LN$n(NzkveASyj;QW7uGO*7}95r-!fX_QD*GQ3UbV`u%CFmzKKw zB0`43O#0;qf(LvKmCY&2TaQN3f?8!)Rq&m8;Gh1h4LqVOyCXz9AVFNKRj42#rnp1tI zutHM~2OzIB%0zT>W0P(<1Rf1wT_lRaMcTyjK;ZsVTR`HOTaB1{ThhzZG*z^rwt92=}c!Fx+0lpe3JU9&?Q2wJ}>+avC(;$DDgoyK9K& zIL6sWBR%TrqR9=_lPN%50nfSVNxCX1s>u_}Cd_`(N%a2!rAZWFlm|Q>1zELwIA&O- zfEZ;6Irk%}qz@4eayE{*s#38^G-&q6Xu^^|h;vY7qHlUEIZl3h*3PLg=Z5K#Rb;(` zEWpa5V}Z~gYImk;Z3zhHbPJHc^eTGNNo`LY?q6z-CNVJ*46ZoOYC8pSV+pOGomrHX za>r*v7<+wcD`*T;Dz+6*cIiVyGoT|OhgG8Dy7dNbNb0ohi&tgRcUZK$J?uo@TgJfh zG1Px5gG`XDJJ15k4&^=YIsEbcDQtJ}+{TF6hI95Y!uorl(nPIjMl`1cgBL_EmMg@)mkex*qM)bqsp9GYF-yk2_A zgaur3tPca4uG(H3g_hFgLQe_wka%HDZ3FC<8=+|{XER%|!>b&E$J^WU>qE&tpJ^T2 zK`Hgd#Uph%-|hO;_HnZLvF#2YAdF`;4AyG|$IZ-%AoQPO>}jg8J3ViG7OP~baS2&s zIZKF+WQYOV-8vFF`%w29oyc{IRS{0f!pxl*91YnWdJbuQ&9lKQjcQC}j#Tm(dl68r z#P^C)TsNx-pzUbb^TvJst6KJB$*%huHQ9}}?kLK7=l$_sTg9E1a0w{rz~evprPk8D zz*}~OXOS`pQHKNj*0R~p8W|%5pzeB)Y>w45K30d4PPZ745VtA#`Nr|@^`q=>N;+~w zkHgRMs*SYl@)VFZeY=Wr1l)OYWRdPMiX?{_S!asyG`o~8A0kEfrq<66oI@-t>j!Ls zuo!W{_UJ03ZW#{zXY6VYq{ih`E1Y$wp{L$XB=^!XzLv_@8V%3(c7edy#3E%if^HKaW8J-wFMAJ-{ujL zf9VFU(k7cW@P3DXb$bl<8TmJyk zUKNTgfyd&F$LcALrKM?FBoS%wwXc#rQ(Z_m9Q45Me@d?E6X|oLmX;RQiEIe-ZVY5I z4D#7Mv7RfIYB@H|lW%&5kk@U^@aCn;zU?RWn17YM1ifSYO^4uC2xG+;haStTz(K z?ZE`@P@NAR*sIo+Ik2-gcF!y6m?F}vT6l={S`$opBpz_gihIlOKt#-CJnRPwdK`dFfo3@XEhKX=FiG z%(2L%?jxyCG0iXy6{ec<%IOo_NXUhbH)lIQ`8cZemb)zX(Lr-)ZN^I(8-az%IQKai z#aQhoO+ZI)9lKn4YBv*wR41I|_vhNWBNn?xa(B=-jI{u^(80M^d-I+;ASd~nr$`*e zbHdfm^6$#HTezi?JC|4CNGcJVBZ3b@pjTz#f?$Gg0_|NLxK} z%I8#7TT6SCnoljkX9{u@4y2L?J%t>yZ9%iC=Zc!w4(cRetWPA40Iq5H@XNMu4ARG> zFuT+xy1BW!oGVXvBS|6b2|2*8TE<8XjP5we2Oq5!F1Kl91a@&on?TI!xiazd)4dBX zh;H=>$n#d-6W3q>H`ER*bhSws-oj;!Dz+4GdHT?%Ko1!F>LE0<0At=`Q-Q}g{JK<< zF7bvKVM>6KCm#6x>kl{t1p0kyJ9Xsak?%rYG>ae+Mlsy<6x9Jd(-4J6;ypeqSWq{p zpH&MZy2q2#>r>b>G0EsfD*=RX2Lo|D^{eY##bMyBH$tnP|asJQ? zpGBl&%$88wODO%%_5Ca7*jQe%#-k98KI$h3%sr~BT&eZiAs3V1tGs$6N z870Dw0g`DNF`h^fo|}zctZjbhXKNH_V__Hs6Y>1Ml=CHlaQEyn-cPt;_IdV)sd!&Z z*X^{mwrxWB;hw_gTX8c(a;Iq_i>?=DMljjvK?Kk~G@efu>yYaQ`q6{#XI zA`QFII-n!>M^155=$e#%7}fs(#S+@iP-2qa^4jSGTisi@^`nlf&=Bi_2>R8BTGqbK zvzD=0pHhrf;f{{Vl|rnv2un{N`& z;frgzwM!Yb%|_}-)n>hsh*SL@dEjTSO7QKSu92su{CadcRpLPJ_f-N_ z3P$!_baEVzb9C75%QR8nGTzJF8ce=I1 zxe^eND>g)NFAA&dD!Jx1bCaK~NFo3Q>@WssyK6Y)BZ7Xl_Hc}06%@3Oo^8q7F>0P` zW=1N%-k3ld847{v?apd37=)0&hvv2{6Qw#3M6v_W05efEnO&i<2TB~sTdCtUADgsf z^u{WZ5hKgGKypqxd{nC`EkN!BaB*9tn9fddRX{V1w`1QK98}1Fk5T95f`Vlr4)jQr zE)Fq)-jEaSRU8b|Qci^Q!S}5^;etnMfu>gBe_CK}=&~WsGHGn6W0wl~80MwB1qM-$ zeW+}>8IW`JrUp_*6LQ#Iz}Kc_Jc2goA2k%q(YmkJu!Kn4SwgSAC;|x;z-Lro0qR9a zBLwekpL*VD8rl4|+QS`=aw}*E9sfH}Yv(y=#0 zi0eJ{(klcnf=TJmT6<*!TF3XeLOA5Iz8g6Bs@0TxghvG z=t@J~LiP*0X(UpxOBxf8-6Pwd_A07x=8+TN?_tS;qbV80l9S z(S)YhZ=LsvgA>mj(GLT<7Fh?Uji#ZtKyp-Nx{fni%3E_T(u_M$S|rO{H|-b#IKebP zky9Z!Z1t#;HkDV>11RcvHLgJ;amPI|NtCo0WcfMjD|MXo9cVO=W1s_^8q;$r$vLPl z#;J2Eu-Z!dnrm(28{It_66NrCJoc*3o9Nw~anCd)j$~qSkx9i%v^6Ilj+v)x!(0h( ze8N;RWFxjYJ$da>Ye;M^FCnv$g}HoeCq9wWKKys89lFPlFfm6{kV9aKe{HBW))MKA ztPn0(@<-R+v2drOPF%Yuf<)Q5**!V&`A_XUwqFav0as9wB|;-Zi` zwhD3E291i>kW`YjH{FPEGwIGggwbFP8pif>`HXjj8vz~iD_dAed=ZK=J2NQ?tI6$7 z?euoYD7hW7KbOZ!hb0m5uqxsV(bn^G0;_cts8qhV|w$qj+HT+uefr8^dD^o6?P6sT+y)G$smxa+T*oD zrr6JL6FeO7Dde_t>G){^t_LGEgygP`qO?}^H!k2y$;JsD^;o-x7$jh$Ztml?SoMj{ zA7|_CYN}Ruxa5cSJ*#X=k(NM5v-2j5p~&fx?My$zk!{?EY;M4e`+J|7I@?c_y5cav zoD6%>uV>|E7e`5kOJs9fbM$4zQ*EZkyM0Bt$@r`9hwm)3?K*W}&%XzHHW++W8c2*W zJH*@e{vo@O`BVc^XrN$8WhVfC=AvoMRh1fpvcuv#_-+;?S2G-kQ!0SrPt7v4p3>7q zREj{i6TV*~Cm#m6+fC+33h!_@Q<{CJAG|DLSz06w)7$c@;ZdOFamz8kv z&vA7Nw3A~8sKi0L9y9sXFU6V;lN!Z7g*1g*he;G+jyX9U#VgcinH`}rDJUEK~p zDn%Z+v^P9QkVqvP`&D02ft^d71Hd@<2CRvCVPZ4FoMRNPQed*V<7=FejybKNDmn7S zHDMYGTI(v-w~VQF6nQP3q?~pmoc{o`TWT>}Y0n<%jPVSDtT~UIVD{R6IQkl{KKNx> zEu<(^KREHnVVZ*Y&EDJ)<~eT|Uj8&O^3H*QxXz@(=Ky`K^-m zxJ#ZLdJ|GzFo8_=PSRRQ#v7MTKMVKc83)>ha`K>eUBej;IpgM`n*M{UdyvW%Nx|d; zO~M!zWCP5Jxn<8I*ovxJGe)@{r5uiWQ|o)S@)gE$oNn!(YR#KP*kRIs@IVBN4cnWh zKD1VuYa1xHnN!IbXUPGNwhb_Zyl_Y(!Us*S=3wtVc=o4O+9Y>&!gzyuYCmZ1m>(k* z#b;88g3CyY?#@bPP0h7eo;zgMMYgxn{3oYJF0*SL-Q21-6Chwai~-PN9MG2%=$3F> zBf8TnTWOG6=|!M0enF4<8`o-l|j1;Hp5*?ELloBj4hR(N=r3o5;Hsawq=e znF>!l5;@PcYr>HntRlkAEOh(nbf~3!bJ7_%O!DJ^g|ad12iAqO@jdZnmiEf#IMfVB z4mKl!!32z7By^~ee2x#|$GvF(0JLvP<(Pmttw}Wr>kOv@ zzr}b?VwV!OHy&~`$GtF1cp-)S)MFx_!_&1dxPnGvfdK9@dB!MIOS;e<<@-x9_#PvkTPsKJ}v8G*T>_v|#=!ZIcw!9ok$pARbpeal!p) z=ae`BRE|Bd#VHf13AMi=+KBtgu*qT{xXonyH9fH`I?$~y;m6{w z)rnGDliq}a!GZ^GTOK=83p5bMT0lVUnhmjlK>X`-F>W#m>61tXR`0mv^*sJnJek1c ze@Y77h60XHdXjm^032Xa8KXNy;h;NQbzpfFHP!v??@)Ev;sj<2Nhk5rsf-*aNN)U!bcjcN&h05EmELnDnfUO9Alb zk@PwE#d3ybEC>V@JQ3QhIya23EkZ-7C*N(xIX{dKZ<_J^j|H~n9sdB6(Z%I1o{J`- zsatASmdaLWtZ-WB$eT-T=@{&CdgG6ptZQ1cYZ`>N86iT1jWK|VI|_ZPYFcr#X>{2) zPdWuuQNRQp#E!&t{OYd)#)?Aq9Sv#VVESpvqCBj;pA=ejAG8g3L(wPGH18%ifAX%p zvF5-#l_RTm1m_(5V!aw1=2Bgc;$}G~?MtUmTVtG7v}PJ)UUK|ak22$Gl1IG+idZ&D3)2URnPUCy z;XBg;UFB4sTY*DKK2(L`r^sP~MmuA*3oKz|Vg^ARQ$l9DxyJ4&py5}K&X%+JN1lea zhF!xT&;vA+3<)33iTlTLcMpnO5v5R2^Ny9W$YL0BGwx~7Sirwsrv{=jo{Q3xNn1ps843?|0)brm?1_GBO%$?aMh1K%f<{#u>@=bF_lrZJfoHY?X4W~16$ z)OwTNo#=Xr({4nJH}TW^Q)DEY0)gcVm|Fn*)RH9fy0n=rILYFydVPkOaU}9x8DLpt zWT@`X=EC7sykJh%g zwl_&RV8&HUqNvVITQz-ON4&E{v(tsW&T?2W!VhI1KQ$b-x;&aNHZy(KP=+1ZVo#ji z!R$NYpDlDgF3OWhu#j_+$0Hc5qwl~iTHJZ8eL(y3)}xFt$Ri(GWQ52)JP>L$0~?9y zTNT_nJb}$gZ{?WZIRtbR53)q^lmoXu;L&#P31tz2HuXRGrTfAjPCuP(9op_-fFREx zQfkJuJG{6uMdhIzGn!H@ncQb?!_<8JYf0||U@!H>OK&a)S+X(BWla{{l6eL)yCW=D zCyr=Vk#~g)h3Y^#;A*R{Pw7pLvbN?J3!#^Rr-iK?yT^Dr>-zD`cd}UGs_AY z8_Si6$RuMG1ZpLP77`JWc**=mnc0Vw#tsAbJ&3H_nQAGLww7(;RSI*SA3PCSL2e{s zPh9rtMO|F823`3@1OPiy>seYULv>JTCc&hb?%vU0WiC2*qlCfUBDhkgo_dkefj35I z$nV<~96ObXCnBN!-ITu3^tZCg`E0z+xR%^WB%Gh;Sh2TbaGTp1Y_K%F?-mdkjFs=2 ziS>>7DhmB8K0gM$wX$tu;v;ZXIaMcZPo-ZWQ4m_JO*6{uNjW?oXzea9|yA zTkv)s(<8+u1-4^Y*nxPgMU;G?Bi-bwC5d6~{|an`VgJ=->v z(o_+7CzZpoZP+B|r7X*t2}}^ii@LOxkx0%liq-_$2xZ63buAq2+ZyTD^I5~WSx$Nf zPhK2tC${W2Z-p4f2?j=PC*mY5WcM?ai6g0YnTRD+bHsvb$T;t?Zw#7(6 zHM$FiU_7jKT=w>&e*JEaphy?PABb{&sVSn`BrLY(u0MJ=<^t|nO@VDzxuzWJ<21coVur)dO;^TQl; zA2jZSHn>)v1&TqR;d)w)HL;c>Bexs2{MWB+wT(K`5Ahp&n_n>QLo{W7Pl^mQ#|BW$ z-P{cAKQxmAGRgP*S9Srsq5(psg%Kkvd+-vUVZJ!b&~)9X+iZUp5??^DbgBEXCSb6Rd$S7`%3&a^UUVW-`+PO8V!PvXx? zuz94O-eBXeTByLTu2Zq-54}INxckIw9I3U}@S04h^fpCFIFHiU{3QPXN{VgKrz?}3 zes!cy@nZ-{qMcSm%Sq)qIl-h*rOc7OThr60IIlIyZ^U``rlnEfWR+Fp9Zy5`%`dyt zq|fZvVfH)%C{jXc&?%fIHv?X04fsz#S{x*XHj+q~Lanu*90O398ayz|4Dfo2(HXr5 z8A0IjSW<9se@YvFoHs8~URg*y=OUP|WS1Cq8R{qmovkJgxg>V?qNZZWyBt!xsmo+w z{{W>3AIRz};c|}XM;%3I*M=!c9S<0!5X#U#Lt{N^X)a8MB>r>@ouS;9C7W=-+`r6J zGtcKjGuyo^``OqBAcNMtwjVDzX9u6>Pc4*mh@ z+PV`=rd=%k_&_nl@cz}Lt~!D>sd}T?Hw?ks${e2q2;%Z)?`U0muYF`SmRK7Wsl+c&mHS~ zV&Xs9upk^T2OyE$Q%k7r=0gPWd7FmimOKJSzCFjcLrB&M^y`*~s`XX_tw(6v@H47R zE}%$SJ9UjWa8E6`9-kHML&TSMF{QiD2`~Qu<)2qP;P&h9Sk^p24Vyr-P3O-RM58$k z@;$m&Kh`yAH9Mg!tL2fv1KYKE@r|90(0-+NBr?c?;yI*mQv@Wc=jYz5b80M`m0aZT z**M6oomH)5k~x(oU8D`_2p=QnlkP7dBalhXJ*%cMIp;5drM1y{m7R=gThsvjL+Rd_ zUuz;r%r;7GZOQXC2G6RIE1kueSmUtmLeB2l>$CW1bzqyJl(+2iDP`QptCC4SnWY09IW$$Z+(<)8 zHxby5DNrUD1dkgk1sEA@wm7A72FNVKuRj!R-l&p=iXf{HIo*sBe=1ibgK;?x&jeEM zv4?Klqo1Wn*NVT}5unVw1o?I^6kU2eiQ*V(pkb@5t!_Hh2#}rB` z?kAiPfnJgl$1HbaoO{-<$5DVeIiU!VnUrOC73H7PmN;tBrYyX#PTi^rB-p!&=h~|5 z31paL@LjrRrYaPfoyzS4xTrq$*K>Uo4wdh`1qXrVH-Czd8%HsT4iBh~wIpOna$BJ9 zOVqIEH8K)1N#&^wCP{|jjB!zk+xJ)LT7VBDmc?w5VCA}1`VqP-jIk@v@~H*^>5^-0 zsBwXs_RYUfYH0|aB@5US@m_W)z~=zaxj5sKTZCr8Vh86%4#T6Awg)D*GUd7HLM*{} zZljL1<0(7?%@hHqO``zwP)jc3l^CdZAKv~|xCD>~(x?n?b={svdXLY}R2n3&r=MyP zL;(6mO*AGO6sj;kcn-sgifL9*0_9jxhFKIG9-j52M|;()NRA$`QR$UQ4Xn2i4S&S*a|lQ=(G+)AN&J$>m8!qH3Ql5l!p(;HM|VV)1Q zD2n569q6>X^$p~YoOGaNnmfa74n&1Z9zh+cZRVoP`@?nViUxb9Xiz(hbBzB0tq3A% zS1Nc16p{wRW4M|^Su#lH(^-b%;^KX-z>eXMLGw$*-bPi9K0)nK$*9|`Opt~y;~CF- zxu#em*ix2q~IiPiN~uPb4F=5g3??`kgeTL2%=Y76k5HO{Q}4C@?2Wp zc`=L+H6-DfXFh^^_Xdo+)h*;peLbXCf=K|7HgW=-4E{!{`nIOmu_UHV*AWZ{?#u1@ zQWm~4iIjE{d$Hfs@d15OV_Q`Bc9~dsV;C_`=Eh&%91S*f56Gc9w zHSgnZS?C*~sP1Kg;?V9v6!9+D$`4DBa&!5AYP7hjW^S9&s%G{K;80WTj1n?A#Z49a?)4mic;`5w zZe_rbt=(BO)l;jbB;NoMbJ`19!adOBw><90Vbn>h2Ft8kbBc7qER|N2rL_l zDP_t0Tzk^fI%n4p*9WC#ZVRy}Mm?wt7?<7#PETr(N+XA8I2(&n<+#T!pUR~3x2`~> z_o3L%-toW~I30~Wv%GSE_fglaRiTprU{i}bmSxyFW3@z)QFK@mbhscsHxa=cR`A(0 zgsIAb)cex=Nm4Pnj$7OcaRu@i_U9iav2Cu6R?N+qR}qZhWRNRp8OrqF{#7DK4q2Z9 zvMx|=5#w9dVjze1x5JSS`y=gKJ|wMKhAsBUNCy z$Q;rgHs|()FJV^wHsLM~*+&@WqDqlbV(CzXanNHqrShO|ROI&qihtrFmWrte%Q9pf zRUs~ASr`{1o~EWdDpZ5Ylby%ELMes4+prOq$UsS9!(-nxgwDZBfgd%C)cdL369*W{WjPcqQmB+WJ{0v8 zU6avow!4Z*c#UEpj+J53S}1QV=Cu$B_Y8T_he6-J$f_W^5#Ry{BAjXW%!$L3{{Tg1 zx&zxV6_@}DoXiFfsUCz_^Gcv zb*Kpb?vpz}8^*R@!7Aq^?c0nasTO=2&(EMO5Lt`U^u^`$5F(uUo^KA@(zjGwa?6e75J5nM?V zC?_D1j(zETyCjr}4+Q7rRf_PVKb0J;$&QWQkzCsi+#HeZT1Ak-uAq;}D#}=cg>Lwy z^IQ2x3zM3*Lu_tgVvM1JoQCg9?)149+)C<3?~b)`9FD^mzw z8FD-P)=>g+)8N&RSoFz^=%aWJxhFK%TWQQ{Qa>~l2hcJ`dwl(BqYQ>Wz{526Ox5JI zbeB7}uO)h+=lSuP&Dt$>vE8!T+}ko__0I#4eXAO>MIDW@w23G&ZpxFCU~&5698q@n z`fdELHl!wsbLv@b_JG6wp^xX*wAU^)rxxQ*5^PV#9R4qQ#W!ZPqPZpGErVN?9$8>V z)N{oxdCb0OF@xrMvIi=A;+Z|XQ;`^xX6DM1#wktWwT$iM{?S0gWMq%`?^~vfpF{yl zFeo`ag-sF{JAmYHb5JhQBXHcG@1aF*nP;}0=db}A_VAOq5zZ-v zv|o9#6J3Xr-CJpB`DmN{4OL^iFkBK2)1G@(^F+O}xzp!@L*+Z|U{viOgV_GHi*$BJ zeTuE4hVJG^xtU^Jr0pQ&{=W3K`t@!Y3rOWy(RdEQh&|5$aq&cIH+Dl$jqhap#q7~- z0zMWn2N^xhS7nwZizy?AKHV!A$7Yg}K=(44hy$;FIjzU+kd)=I$*8T)-SV=Mpb(_= z&2G0SBipbSVT{(T(VE`EV!pRnw%o?@zt0{_ZpL z+N1L=wu#}8?kA%)PbdiccL#o_BN(9(l~Zne6;f4vXolq?_8 z%f|wxgrBV;hFaz30FXaAcJCS@D&>wcK{U5cv}v;EY9Q&J=ByfSkk_|B0yZZu-FWz^ zZkW<+-$#M$HC;a9=`j(IF&lD6w-smCd|Polv`Ho)Oe9g0&IkI|xM^l9v(>kTBk<{T=zxdr*iEC+GOtCsYMjZy%F@o0fwEWZk&tux^YK&*jeh3sXZ$AO zd3@Ps#$<1RdkP+FtBKt=TuSHur#u>t3>1-O)U;cDHVb)Xki4_0Z!8Xr{{Y{;Rc=bF z?O+H!!L8nT8dK&m2N>k@ORuCZrMUbtdUgi1 z7=Bwg_~xl-L{a20%@B&Nz<>bFcpy9|10LMg;Wm=5!%}DvYLLKjkIJPTcoaC?91e5s zMMSNUkOeBClg5EYPd}Ax?a*}$-FlkHm<7(VqA2F^dFX}fO& zsWgDu4*c%mcd5Zs#wrmR12V7+?OEUaKZoDmm>wz_xNWAe{+tcf?35+3n#Tv0=9m*J zWpX(7sg;01$RyDFeLj)RXs$=%rUN7;&$tz#i!GHreJFV5Y~@KAH8VMK4t9?J05u~a zo)EsSC@|i!fzElRZ3vNgVTxTa8;DRcILN9H*3#sz3muE@DTusDmj{wL;;Z(AujA!^ zr8tBx(h~q@j8s;}6DGwCl~q3Dsh}osr+zX!(G$3MeLsjE^t{U^Ks^t|S`akFPpJs? z98k*2vXI0P@6xB59IFEPZo@Q=;&w8frx+)SuSRX`X>{sFRCJ`~S1d*jbIvG)x>+M2 zk_`mYvdfTr&@W-KWI(KVByq=DizU}CItn3f4Dn&taUA?mzG|z2`6v(PNTv}UHicog zjPp{g-@1KR{b(P&hM80xj)OFFtVy+lXXc+`>Dh_jI0{>8^T_E~GrUU5r>Lmi+E@1H zftr!m(Ve*zg3KnHaduUjL9x4&{i+%4&4iec2^0=kcCQ=BquLOa0C9>L^%)vQX+327 z)h!vxAc*H7ag2l0ijo_JU4$H!>%~C?zIw96Fx_#EwS=^hkUA*<@O~-SP;Jb{MpK?T zR+p2w^8BHJ)Z^(>TUxU^EB+C|#Z7;w$qYH*sqLO=+9k#IFKKQzp>vfzjczApRYr(0 zJqYVsC#)(k=cR8J5?|`h^eY1++%G?5sf_WVGt={bz#yq{HdXPH&*PkT= zafUp9ttM!Z=%OlcJzn*@jg7Z(=bjBm8s&ipEKVzCz;luqk=#_2j2!SYP)xwKGr*#p zd884JnZThh5P(Yc_!T7(Nhw9bV3G)};f#pE1muorXd`#r%zAs#@U9^T8%Q`b2V(FF z?%cw)jgI_L5)Gu_2G7kvjfqE9>%}V*M3NG`;N#!gwetuZb6Ii-Q<6C8iiq+~2&RKW z3wI|O{OObz3mDw3h9jD<#N{{!h>CUxtxG8uYkQF63;I-scO8x?1-$NXT#?UOb!{ej z&T={m$@Xa%V{3WdMFeCFbMr+6*=&t*wp3$f`Fs z8lro!pp0aDid!VX{{Rn6){k(pU~cEH6-btEbbSiSIsUXLaI1o9D~qOoOE(=yH56pB zour?hwP_i>v7MOmr`^ynr%9`=tEmGEoD)bEXHO`$GCPWv@qqx40LeM2V@0y^`+d4I zHtd72lb$M}G~QgrPvYzEMO)u__J#&x#ZCr$QkjWIIVU~-DpI3H>?pSBRQ^X4>raKG zB%o3N&j*o6Ae_iIF3{cc-kRHL0tJt207v!fM64AzvAeOgPyxX`2<|H_b>=Ps-NrN1 z8Kq}Xdzml?3`iiKPJgv#S(*kaRIhJwP?2}DOWT;23eCB>1RnI3ax;|49VnTU%{VQ{ z8KNPvM+AUyc&q4#whJB8gxbK7&>VA5v@~mp78wTOM+6_|Q2zji20+n)>HaRH(bkc@ zjDkrJqxKaos?gGQ6?tryrbK-CycIows+H1*EsS+I0M*4VCEOZSSvR)OPd)ll{a(f# zxmbi}+qDss>6Iv|(O$QiKLo4lBho>lQa18@+kEfjb^cTh!n|Y$Tz@J%OP?FTDo%5Q z-mU1$Btq7C9cH*2PfVWTr4JAVT{!KLOfIhyNV?>6i7`kGR$#(HGa&zt4rIP&~&7wFg+?;l+qdNkHrgr(!p>CCW?+!b?e&{G$GPC zw^mgir8v*G)K-#8@i+z5*8t>nKNJX`I62Nn3HSM|n_p#BsH*ViL)L&!I`}{{T<)rPnKe zr%YkH4!bfx7F7OqR+%YMH@qrsi;qz3X#}LRoDK>0quO$PB$A~5lq{ob4{p_>=*DJ| zvCk*960MQ-9ViBqo(cG^l4HlXsLas^F@Y6+d?}DBkZT&-nC8vBlDzEdkwsf zX1IwR(nfK(Y;1r}Z>?hX+FM32Pa3O`8{E-WNfdK#y^-RL4&*4Kdmnyr#Vxs&rj^*S zC5}eplZu3EJsP~kBB>Y)oB`i8qO&pNpVqW@$Um)VxT=!eds1V%K@v%{@J2-pWF+K! zR7O&Ip8e}m;2d$2Qp#8Cm`Q_^)7rM*<_u>PDU&A)$)Y1bhxVhK@lj=)G%P@6+&~=h zj8lC!>GbfD#H!gC=NKdAgo+_`g+?cw5z{s6mloim;QJ1s`_^sQX*IHaV&GiO=7AU> z0Co%ldeD&#-j&WXLNts>Eu41A%^7CJrBz-AJ*z~tN3qScp<`Y)@xZGdm8nN*Zad27 zF4?M_kLvtK91fK_%j;iIAoQY9veT}Pfo*bb5sv-|^$g=9>qxJ$E!1ro@?6MQd2SSA zxa&Ycddat8!RbflLM3=-jpS&{ga}Ru>Ny>15~eoo20;FETxKX$pyD(jdd@jK_01uc zQp7YWkdntcP5}6#b)OSl-yv)y4Y5*2jdqqJfN3qin=2thupH#SPp&ISr&i3|w@Ap0 zhb-(fk_c0p(&kAmTb!X~3^I8m-kC{p3_+G=Goc-pOv#bVqIzN3MPjil*; zk)HLBFtc)a`0Y$x2Q|_v5fYGn$gORp24KwGiV>v2#z5k?jBE}-Cp}Jhr9&HuQQs^1 z(MZ7v-f(fi?@6r-F(;tyMIi!QvE=bUSlu6U1?aUo1Exs&(zxzDU4AHqn|HS!^&PT} zrNB8HlkGyQA2gB1DpsEv=uK>&gkWTzy!ET-MvuB&0zY2Wm4(8Ll75tAJ0b;`bJ!Yz z=kpGD1N5Lq2^}-)`qqO!`S=xw1Mw;8)}zS)lh&97XKLWLC)%SRzdyTLD;I9OQ6Ww; zhXbJ$#AIQ55PRZ^iB*(gzbXoSff$y<3ewtga5I5OVRuWgZI1!_j_2mIv`%?kx6OHT zbuJj^1By93n2-(&_dVzWSmKLw8HcF!+gcAvI}Sb#dfrIL-yzRGN*a5wCAQ?SJc4?P znszXm91u4U8@(^Oo68$i^IFM$6QS$JT=bx)omw%tjGpxwd2vB1F|*y&4zzOo3;PX`rEqa?RxV~$0@$PN8yg9h+qm}~=rKs{(F-ar&~LqsbU zhlv?WbsMq|@&q`&SS`aMsfA5D*&YJ!sEZaD-D`O{$XNx z2ZQrW5^R7Ua32PjDZt!&3r4fdYhUz{j zv>}~K^y^H1iLUMaJEP@KN>E@eouHha)Yaw~2nfRr;}sp0Y4?o&?sLa#eG}hAc2-kH z!bFX>bTsN14p+|ff_l;L?O@8s%K&A5X>_uyHpq@Rz^OE@BZ+0U@{${M0l%62>1E_s z2WW4>)DzOP409n}>I-A78uDNikb<2#p(-n}GLkmXjz0`VHa6Y-D^i(!$5MaK6*mLn(O~@l3 z6}OxFJ)_byQM(T;f=9I@P)1jYPFL|B)#zpN<6vuNoQ74#;A>_?^7$Yh-xVW75(ZF7 z2OUA73$SoUI61-ZMZBsZC_DZidL7k*?^PJ2CS~N_yr~B{sFw%pS(K1{Es%YxIHkiH z1V}~*tyDA_K8VDL^U4Z0P4I6K#ziZV7HVBWaJDk(~XqrP^^w+qyB zQyF~1qdCdsj!g)$25jf9ek&-La24^-dTCIbvU!&|E6xWT)|Twb{C#jmW=1Icdhz&& zLs~>|-m(tvDcFW+>nwY6Q2h0&cWwn_893+WmcZgh5sZR59A=ytz(KI&pXFJy&=h1q zT14yZLN&o=ZMg)TjM0)u>hy!i=75oalxGwU!Y!M5BOIDw_M#sxGt-*Ki#4=1yOuE9BEp5_0yCeQS9x}1T$ac^b4n+= zesaf=p0ykkGaR=7b~U0xZuCiZe8p}2@sW;cPo80Nb4@NC9ZonPaY(NCZ>L(;J1~$$ zx49X~B+xH*z~mk%DQ4T$@rsMj$-%0sBa;kg6Ai2f)}x9t`9YoQkSZ0QCydc{*JzUN zaCY=GZ3kqLTgNrK`G;hyk@?bzU}#)}(wfU5X-g^HoMejC)J&sz8LEhwrI2%j$4-@) z)T#9KqFy|3bCKLug-V*xM3FiDr~6E<=9zpWMuv_$6w8hsLg z)_G$kGnG9-83*#In9Dj5Ak1tIGt(ec6E8d;nl{pOHZt3}+F0(-(ueXj@KB0P}teP}EI`yrP5TrK*9xK=kKs7kG+~rt|;+4=wEwU-@-r`ngJx@VU z?#by{d16&XjvE$=}!XB^_T3&ss+$+JqMWM)!G&U@mD9;MtEll(OjMnMOrYDm~8 zrz7>Lc80dXZPn10jOQHS93R%FxI0uaiB?7<)12}1o@jV(ap`9zM`C(Z$WmS5m9fbL z9{B5?^bXfRN=V(DaZIey(>_oI+mcUVOTj=KZOLLbpK5Pvs;Ed}NgYA0*G6Xe^*c5Q zUOuL_4ah4|8A=97`Bpq+b5g^I`kbGR)j~`*1!iD+bno7r>9_5tF_^d#0tjL`L3pd63{CLe0Ki;#%MWAs(`pEN#olUEHen0 z4W#5?{LuzOI4V$+@COw7C$S9Eyo4E~!0k|(M4bWWsWepaMrJ$ucNw6Hp?pR-AoZzi zYRLq_5T5@4(uOjbB;&4Vg|#j>ZXXmT-!5XSl0IuYv4pE+?Z_O|!BJN@=|aXi$mI7l zOmehL8E{A(99D>3kg*QK18=rzgd1dw0Of$m28Gzu$&7^usWmc3_jNmRRQ9Ca!4e(O zkQ*P7;-rQ^z!uL3t!o5rbVOH)BLB!fl8x;0&-ob&Xi#I_ygfP{`o>zW@V_RVdQ-o>g! zN87^kJJ2#94<{sw(6-#?siGJK{8{{{SzH(3ieOC|hv&JeBtBY#;D#SHh#gRZ)wJPd zlW;r%??3~|`*L>VXRj5yLecSonwBsyz#I|Uv^NGbl|l*q?9c%gvKZgez&~;ETVFVI zEfEMuL5@u>c|$fs`n~arg|66=&4PLy`%*|vl0|q`_A4HHcCD@^1Z9sZcs|s!P$N6D z!RgIH(>rmJdE%^w?3wNxb!cX1aHAA6xgZ|>D*^VmLzB?%J^P0%|m90+siXX_#n1BkLyC<#Jx%B&{W0t5~@y5w|b8|!NCMl zh)9V`l*4n}8uG6oXFnCP9i!=59IKK?Z>2Ot=-Hz?GFux)F-1orq$n5h9Awa^k%k}; zKU$Jd10hkt6=LZOB6eB(rp`%a0j&y6yya5fKF(}Sni`Lt+nySPhX0351=68 zRwapACf)X2kgUXKf_oNqyX2nr12b(Z0BnvkQHCx6J!mD`CyL?H zP{8N88L6bYdEYq3dXYlLqoF*S&`-2s&KPm?MFNu^T3p*(GQGvHod$Rn82d~qP^qEF36d=rb!0SS^_#Ts=aZ_Ek!MiyG z=Re+qen(ECkd4a{IM4dmlhl2xG*agt+2`7%kTi1baf8JICzq82J-TLue2zLFnl?4g zLlQAV&VUdB&S(aD7U%2zXpb*IFvXB;Gv~yZRg34QfD2AD^b_!NH0JwmopHRaK&``A6|0~sSMaque9 z3@IHIeFUGWuNg=0bB@5&2^lA!>se^j4l+skq{>Z$+*}R#&m-U3uxDTf4;7ZR4Ed3< z?lD7^+DQCBbmE!IlFV1Bd{$;qpVvpE7>uQ={#Rs~z0{b;#? zKhlIbInQpjv6(6isQQ|k2>nFzIpT+jww|XHRAd4$Gg&o53dYgKd937RNvs2v$?aM( z-P7`_k3%Dy1ZVQ7G8l1E$Z`+G3;1)-HDr>j?Q9Mx$Rz-bQqadd*7432hxN@SfO!?h zThvGAQcS5j8kvCkmj)!DSiZO<2|_r)o@)0qI?IqA}_GDOM@s1?s0 z$9l(?gPe0sZY&C+bmR`B+Ly8rf1#}w&SzgX>hI41+lmewO(#W;PXy2+k_#gYv!@!Ox*xY{&H=|28gh8}sZ-E$ z22awVHa50LGi>eFh9#Ks&(@4}^E)2AU{*v#p)G(j+*Iwdw2&ZOgL8gWvhYQEb{PO; ziqJN2J5$xryFr5laCsFA<(QnFde+(59~k52hiB)lIeY|mN~ajl8S6#c1=`IkvaZ|! zr>Xw{N&p;WlYv|L=WY)^)geJ~$+edNV?6xPuuYtgNFL|4EsedoqLCOOU>hC#*67WK zpV~8Q=V;AfNKOYi&Ic6)QfHOp6vhdY%p3CO_>XG7iS5u-UTi7GMn~sF!vpzVWW=lX z1oK15eu_rX&+Ai1akyq>Va&L|(e zMw1qH0eb9F{HssAm$))Xy<$DF$sZooo3fHX^TH>S(<-J1sf_|6P3)!eGr`YVGWK}b z?1dBpMt|uZ)CL=H&u`~KPKgSZR1p+`LTw(V6akS)Ta)8065E zAY_q}K?6HS6+BUG#FLBwI2r1H(zb%!fTy|qBBhocpXN8Hjzu)Wj4Z$g@{`uzz3o!k zp?2Lmw$q$s^{p)<&gsgQ3UDaG<-ukL9f7H}V_P+vb&e9T;aK$x?e(C-<7ph{n%+hX z*k;^E0|TuSYib%j^7HH|w?nH0jYvELlSBsruupzyx!?$-kQKK6l(|^%$mhK@>;tXR zJ><&DwKqMm4KAiFMO6}zX(nuc} zq9bKq1K`xyf~Sx^MnJ_0f%UCkMJzx$`c!^y8w7BEYLJ*pzd#QiDj6jxNeA?(x8M?f zg0+4Wf^$p>TJe{VL9Zp!;NeN<-hh1aDCdfaityqUlV+<()v`gtZ1Fd4=0o)G+4z(q^ZUZL+6^o2-0Az#jQS8&u z5*7>#5=Bq6k$`jc72^rWE6V)T(6~{CIQ*%gq6HYoL7ugc6su%pjMkHqq_Uq+wMXWa z0Fz9LvO)t4FywTtijIVyI^vg#%pd@a^~V%a5J=~P{HSmh zhX)J~THXl=lq>K$8lh3U=0-Un9MfwHFy%u!s**Q1#VBSAAst3(g`~zg5rD{3QzGKk zjV>+3PqsD^DCpl58(?IwaZyiqB$5%50O#vb$ss%sYHLMFrcA(=O zeYh>su`{Zk26Nu1&6r>?_MdoEUtOr)RtwG zx?`xQSwjwZBaWSFP)Lse6M@M0sL9+psP;2hSflJc38I{CKyi^klZX81yJ>Pljy}Hi zXikZfZb8q%6&t~VO5m?iQ%bnU10BvQM<}WYJdQf?N$7o%M*_;HJbQg=Sl~r-<^pgy z+t=$*35a4iQVw{g+I#IQBY}~O9A>4x4K0ORS$ejjd9ek+ap~RfMoR-BDI|LpI0q!0 z{QOZ?x3R}<<;nmp)zNv!IRdcPG2E~sHdDBsPXuEa#ba*G_@sejjsjE}3BwNEMmenI z-^Qm5P0R&*<-hq_o3K)HSl#K|$I?WMRf=Wx^4+sQ0M+ z=}-~*)-rRP^)%8Gdl(5fGKJ_UhLkGf+xgP?rwfdMS!wb|K~9Hcto(ESwI2R4j-J)4 z3=Tohy=sg}=dDs9hDFNcj((M-uAqUmW~7T4_o$>Bh|dP3eu!8D_>WPZC`lBS^nRrA zQ%uDVS{{*t5Of@UCsI2iqC$wB$; z(uH&*=C?9t1K@iKmO0Az$o8m5BOGS70|XzO)PTt!a)Z{hxO`Bt% zao2)qe{;|J)Qm$6j&atb0Q38~9chS(+XFuJ512!B%}XNV=}~v%=|cdhWb}-jW~RyL z$LUMa$Q+!}X((~?O13j`lx{j2&OpX_&q|aK$}v%3fzvpoGjLR%*{S3FI}bk88nMPr zd1g7n=9e1*gn12)+4rJ^{#Xa!tuKmf_27>6iEcKWRMTu}(O|W^0y0B!n$5-TRI6hr z-m7rxCKHpAy}>msx63CvB}Y$+IBc$ZH@a2JGI8-$`-rek2RY}OX*I?Nq~!JbQu*9q z6Ujf)wTfuNB|U;F?yPOWBz~1C1LqZj0qNWM)iy+8j{}jD`r?UJ3K` z$J5@hle2iB1mTBzGTIX(D9=;R(uDs2+&`5%(>mP$0Q{p_qS~>(pQWQi=R`c`9*~=R z<2n64DK58lB#;H16^%*qleT;FPrq~j0D-FJum1qy;rbfUDppI?2=kN3tgrN~TkxNy zXS&oB`ZwL^Aa|`WPBGH99cy*}04`tqg#ub43~E4fNWji25!dpmQ~MeMS_z0?3~`!Z z_p&rA31hK)1O2IdU20+YjdUXkJp=$T>1x>+^aq-PF5jI@JO2RMYgCLIwhx;A)5(m>qoc_NA$c_9=g<^Z#r@cdByKfO4%{{Zn%^#1gu=%lQy z%WfAuWq=_@b3yFG;1kb!XLa~y`k(7dpZulz8ZSm{kz^~KyNNwBQMo_7#QTqG(l7H@ z{?l7GMyX!L!>wnNDu|#U>PW^bYl)(b*+FM#>e;Ab{{ScR6%p!ww2@7PlD{{Z3#{{Ro^MO^;?nFr-dwo=iFH%ds4)O(XdOr>KgnCHDPU;h9P zKh~B@_|ND4Du^Qa#yyQ=aYf|vM^jr5#I>vSZ=wFRU`|zIiCi#eU^vg=tz(gh+%wO; zM0zbvZP)WOmcZRf}sc(9IRS^B!q6rBS05Qn#dE#re|{ z(HO`$Ac8&XR$`IL8dmTG_iX{H^ML*+jprp%6 z(W=To>&LjPD;Xpto&{(>da)PcYD2J~Jvj%xMJU0@;NNZ(=}em>1CM`t*e(yG_RV2`3Hplg{o15t*)uSeM$lEqUU+Ja-yDv; z>u>$B{{V5JZ}P{`RMGbO&{R;yM^Zph$?KlgrbY+# zuP@>M0OBi8;h;NV+1Qx(_Z0(-mF`C;CX1W!M?pV9^dHuT(W35&VQs&zaazh%TO{p2 z6%u|w%+xY}n@Y*6H<`HL=i0PWxGik`2hz2Nq54oZ5Ll3)jw?{ZcHD*USnPhk+M%EE z(i72%%Pv(8NgQ+1ftAX!+&ChPZ}SKH??TJbsABxc18yZdbrf_YMHw&2JON9g{9pWN z&;5b)s5DuEbs=b@s+x3KTL zvm%a-$H=Y9BYq=;ob;gE@GTI(<*i>}Y_`oLpR>a;<83yE8>Cf9ZKP4`$VEY-{{Z;t z{)Vo4&;J09kN(m9tDaM*M)1eWc2^d{=Xw>5_T*)IekH8yWR~sHtr~&ztL5 zKjojLX5`H{(YK{aleLH)I*Qg)Z6p#bfdqi$5HZ`W4u8xaoegpL>r{w(CXHGr4%leV zKzkZsWmiqZfWQuv0sjCd56Yy2{{X|w^`J&&l%!cBIXrivVz~@LpMLa1{{WJo@3k%; z=Khq1$7-vLh32Y_w8PO{{TvkPr|iG42}jfit+3HjYZhht<-03|MwSK>l zphRSXdI3^~BOKH|-$VUsL)Y@46Ay+!#~o@%I3v9U2U?temOtOUN3zzZr-j;s0q0D8oq<$v=2)W0wwX4{TyRdNn9SeNk+`)fnc zRT#^%R+x1-PyQt+o#E|Ztq&d+y2_r{u5crlx|OP-lE;N R73KZkt!n+N26ROq|Jmv - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - From 198d47765f8cff8815a54e1698c28fc5cb2a0655 Mon Sep 17 00:00:00 2001 From: Hugo Miguel Ferreira Date: Sat, 24 Jul 2021 15:00:53 +0100 Subject: [PATCH 002/117] Added fundementals chap 02 Java - cannor use space in module names. Used underscore --- build.sc | 18 ++- .../HelloModernWorld/src/sample/Main.scala | 4 +- .../myshapes/nb-configuration.xml | 18 +++ .../myshapes/nbactions.xml | 26 +++ .../ch02-javafx_fundamentals/myshapes/pom.xml | 62 ++++++++ .../main/java/org/modernclient/MyShapes.java | 73 +++++++++ .../src/main/resources/styles/Styles.css | 3 + .../myshapes2/myshapes2.iml | 22 +++ .../myshapes2/nb-configuration.xml | 18 +++ .../myshapes2/nbactions.xml | 26 +++ .../myshapes2/pom.xml | 62 ++++++++ .../main/java/org/modernclient/MyShapes2.java | 95 +++++++++++ .../src/main/resources/styles/Styles.css | 7 + .../myshapesfxml/nb-configuration.xml | 18 +++ .../myshapesfxml/nbactions.xml | 26 +++ .../myshapesfxml/pom.xml | 62 ++++++++ .../java/org/modernclient/FXMLController.java | 49 ++++++ .../java/org/modernclient/MyShapesFXML.java | 38 +++++ .../src/main/resources/fxml/Scene.fxml | 47 ++++++ .../src/main/resources/styles/Styles.css | 3 + .../myshapesproperties/myshapes.iml | 22 +++ .../myshapesproperties/myshapesproperties.iml | 2 + .../myshapesproperties/nb-configuration.xml | 18 +++ .../myshapesproperties/nbactions.xml | 26 +++ .../myshapesproperties/pom.xml | 62 ++++++++ .../org/modernclient/MyShapesProperties.java | 148 ++++++++++++++++++ .../personui/nb-configuration.xml | 18 +++ .../personui/nbactions.xml | 26 +++ .../ch02-javafx_fundamentals/personui/pom.xml | 62 ++++++++ .../java/com/modernclient/FXMLController.java | 133 ++++++++++++++++ .../main/java/com/modernclient/PersonUI.java | 35 +++++ .../java/com/modernclient/model/Person.java | 83 ++++++++++ .../com/modernclient/model/SampleData.java | 44 ++++++ .../src/main/resources/fxml/Scene.fxml | 58 +++++++ .../src/main/resources/styles/Styles.css | 3 + 35 files changed, 1413 insertions(+), 4 deletions(-) create mode 100644 modernClients/ch02-javafx_fundamentals/myshapes/nb-configuration.xml create mode 100644 modernClients/ch02-javafx_fundamentals/myshapes/nbactions.xml create mode 100644 modernClients/ch02-javafx_fundamentals/myshapes/pom.xml create mode 100644 modernClients/ch02-javafx_fundamentals/myshapes/src/main/java/org/modernclient/MyShapes.java create mode 100644 modernClients/ch02-javafx_fundamentals/myshapes/src/main/resources/styles/Styles.css create mode 100644 modernClients/ch02-javafx_fundamentals/myshapes2/myshapes2.iml create mode 100644 modernClients/ch02-javafx_fundamentals/myshapes2/nb-configuration.xml create mode 100644 modernClients/ch02-javafx_fundamentals/myshapes2/nbactions.xml create mode 100644 modernClients/ch02-javafx_fundamentals/myshapes2/pom.xml create mode 100644 modernClients/ch02-javafx_fundamentals/myshapes2/src/main/java/org/modernclient/MyShapes2.java create mode 100644 modernClients/ch02-javafx_fundamentals/myshapes2/src/main/resources/styles/Styles.css create mode 100644 modernClients/ch02-javafx_fundamentals/myshapesfxml/nb-configuration.xml create mode 100644 modernClients/ch02-javafx_fundamentals/myshapesfxml/nbactions.xml create mode 100644 modernClients/ch02-javafx_fundamentals/myshapesfxml/pom.xml create mode 100644 modernClients/ch02-javafx_fundamentals/myshapesfxml/src/main/java/org/modernclient/FXMLController.java create mode 100644 modernClients/ch02-javafx_fundamentals/myshapesfxml/src/main/java/org/modernclient/MyShapesFXML.java create mode 100644 modernClients/ch02-javafx_fundamentals/myshapesfxml/src/main/resources/fxml/Scene.fxml create mode 100644 modernClients/ch02-javafx_fundamentals/myshapesfxml/src/main/resources/styles/Styles.css create mode 100644 modernClients/ch02-javafx_fundamentals/myshapesproperties/myshapes.iml create mode 100644 modernClients/ch02-javafx_fundamentals/myshapesproperties/myshapesproperties.iml create mode 100644 modernClients/ch02-javafx_fundamentals/myshapesproperties/nb-configuration.xml create mode 100644 modernClients/ch02-javafx_fundamentals/myshapesproperties/nbactions.xml create mode 100644 modernClients/ch02-javafx_fundamentals/myshapesproperties/pom.xml create mode 100644 modernClients/ch02-javafx_fundamentals/myshapesproperties/src/main/java/org/modernclient/MyShapesProperties.java create mode 100644 modernClients/ch02-javafx_fundamentals/personui/nb-configuration.xml create mode 100644 modernClients/ch02-javafx_fundamentals/personui/nbactions.xml create mode 100644 modernClients/ch02-javafx_fundamentals/personui/pom.xml create mode 100644 modernClients/ch02-javafx_fundamentals/personui/src/main/java/com/modernclient/FXMLController.java create mode 100644 modernClients/ch02-javafx_fundamentals/personui/src/main/java/com/modernclient/PersonUI.java create mode 100644 modernClients/ch02-javafx_fundamentals/personui/src/main/java/com/modernclient/model/Person.java create mode 100644 modernClients/ch02-javafx_fundamentals/personui/src/main/java/com/modernclient/model/SampleData.java create mode 100644 modernClients/ch02-javafx_fundamentals/personui/src/main/resources/fxml/Scene.fxml create mode 100644 modernClients/ch02-javafx_fundamentals/personui/src/main/resources/styles/Styles.css diff --git a/build.sc b/build.sc index cfa8b9f..3d3ebf4 100644 --- a/build.sc +++ b/build.sc @@ -207,7 +207,7 @@ object modernClients extends ScalaModule { ivy"$CONTROLSFX", ) - } + } object HelloModernWorld extends OpenJFX with ScalaModule { def scalaVersion = T{ ScalaVersion } @@ -220,7 +220,21 @@ object modernClients extends ScalaModule { ivy"$FXML" ) + } + + object `ch02-javafx_fundamentals` extends OpenJFX { + object myshapes extends OpenJFX with ScalaModule { + def scalaVersion = T{ ScalaVersion } + + override def mainClass: T[Option[String]] = Some("org.modernclient.MyShapes") + + override def ivyDeps = Agg( + ivy"$CONTROLS", + ivy"$CONTROLSFX", + ivy"$FXML" + ) + } + } } - diff --git a/modernClients/HelloModernWorld/src/sample/Main.scala b/modernClients/HelloModernWorld/src/sample/Main.scala index eecc79a..b606233 100644 --- a/modernClients/HelloModernWorld/src/sample/Main.scala +++ b/modernClients/HelloModernWorld/src/sample/Main.scala @@ -10,8 +10,8 @@ import javafx.stage.Stage * * ./mill mill.scalalib.GenIdea/idea * - * ./mill -i modernClients.HelloModernWorld.runMain sample.Main - * ./mill -i --watch modernClients.HelloModernWorld.runMain sample.Main + * ./mill -i modernClients.ch02-javafx_fundamentals.myshapes.runMain org.modernclient.MyShapes + * ./mill -i --watch modernClients.ch02-javafx_fundamentals.myshapes.runMain org.modernclient.MyShapes * * Note on resources (see StackOverflow link below): Mill's convention is to * place a resources directory on the lowest level Mill module. To access diff --git a/modernClients/ch02-javafx_fundamentals/myshapes/nb-configuration.xml b/modernClients/ch02-javafx_fundamentals/myshapes/nb-configuration.xml new file mode 100644 index 0000000..ec4540c --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapes/nb-configuration.xml @@ -0,0 +1,18 @@ + + + + + + none + + diff --git a/modernClients/ch02-javafx_fundamentals/myshapes/nbactions.xml b/modernClients/ch02-javafx_fundamentals/myshapes/nbactions.xml new file mode 100644 index 0000000..9c9ee62 --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapes/nbactions.xml @@ -0,0 +1,26 @@ + + + + run + + clean + package + org.codehaus.mojo:exec-maven-plugin:1.2.1:exec + + + -jar "${project.build.directory}/${project.build.finalName}.jar" + + + + debug + + clean + package + org.codehaus.mojo:exec-maven-plugin:1.2.1:exec + + + -Xdebug -Xrunjdwp:transport=dt_socket,server=n,address=${jpda.address} -Dglass.disableGrab=true -jar "${project.build.directory}/${project.build.finalName}.jar" + true + + + diff --git a/modernClients/ch02-javafx_fundamentals/myshapes/pom.xml b/modernClients/ch02-javafx_fundamentals/myshapes/pom.xml new file mode 100644 index 0000000..2dd59b0 --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapes/pom.xml @@ -0,0 +1,62 @@ + + + 4.0.0 + + com.modernclient + myshapes + 1.0-SNAPSHOT + jar + + myshapes + + + UTF-8 + org.modernclient.MyShapes + + + + + Your Organisation + + + + + org.openjfx + javafx-controls + 11 + + + org.openjfx + javafx-fxml + 11 + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.0 + + 11 + + + + org.codehaus.mojo + exec-maven-plugin + 1.6.0 + + + + java + + + + + org.modernclient.MyShapes + + + + + + diff --git a/modernClients/ch02-javafx_fundamentals/myshapes/src/main/java/org/modernclient/MyShapes.java b/modernClients/ch02-javafx_fundamentals/myshapes/src/main/java/org/modernclient/MyShapes.java new file mode 100644 index 0000000..65b4cc8 --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapes/src/main/java/org/modernclient/MyShapes.java @@ -0,0 +1,73 @@ +package org.modernclient; + +import javafx.application.Application; +import javafx.scene.Scene; +import javafx.scene.layout.StackPane; +import javafx.scene.paint.Color; +import javafx.scene.shape.Ellipse; +import javafx.scene.text.Font; +import javafx.scene.text.Text; +import javafx.stage.Stage; + + +/** + * + * ./mill mill.scalalib.GenIdea/idea + * + * ./mill -i modernClients.`ch02-javafx_fundamentals`.runMain org.modernclient.MyShapes + * ./mill -i --watch modernClients.`ch02-javafx_fundamentals`.runMain org.modernclient.MyShapes + * + * Note on resources (see StackOverflow link below): Mill's convention is to + * place a resources directory on the lowest level Mill module. To access + * these resources one must use the path relative to the application (Mill + * module) and not the class (because resources are not copied to the compiled + * class directory). + * + * If you want to keep the resources next to the classes, these would require + * you change Mill behavior to copy them, or do it yourself. + * + * @see https://stackoverflow.com/questions/22000423/javafx-and-maven-nullpointerexception-location-is-required + * @see https://stackoverflow.com/questions/12124657/getting-started-on-scala-javafx-desktop-application-development + */ +public class MyShapes extends Application { + + @Override + public void start(Stage stage) throws Exception { + + // Create an Ellipse and set fill color + Ellipse ellipse = new Ellipse(110, 70); + ellipse.setFill(Color.LIGHTBLUE); + + // Alternate color notations + //ellipse.setFill(Color.web("#ADD8E680")); + //ellipse.setFill(Color.web("0xADD8E680")); + //ellipse.setFill(Color.rgb(173, 216, 230, .5)); + + // Create a Text shape with font and size + Text text = new Text("My Shapes"); + text.setFont(new Font("Arial Bold", 24)); + + StackPane stackPane = new StackPane(); + stackPane.getChildren().addAll(ellipse, text); + + Scene scene = new Scene(stackPane, 350, 230, Color.LIGHTYELLOW); + //scene.getStylesheets().add("/styles/Styles.css"); + + stage.setTitle("MyShapes with JavaFX"); + stage.setScene(scene); + stage.show(); + } + + /** + * The main() method is ignored in correctly deployed JavaFX application. + * main() serves only as fallback in case the application can not be + * launched through deployment artifacts, e.g., in IDEs with limited FX + * support. NetBeans ignores main(). + * + * @param args the command line arguments + */ + public static void main(String[] args) { + launch(args); + } + +} \ No newline at end of file diff --git a/modernClients/ch02-javafx_fundamentals/myshapes/src/main/resources/styles/Styles.css b/modernClients/ch02-javafx_fundamentals/myshapes/src/main/resources/styles/Styles.css new file mode 100644 index 0000000..3ab643a --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapes/src/main/resources/styles/Styles.css @@ -0,0 +1,3 @@ +.button { + -fx-font-weight: bold; +} diff --git a/modernClients/ch02-javafx_fundamentals/myshapes2/myshapes2.iml b/modernClients/ch02-javafx_fundamentals/myshapes2/myshapes2.iml new file mode 100644 index 0000000..8ce79aa --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapes2/myshapes2.iml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/modernClients/ch02-javafx_fundamentals/myshapes2/nb-configuration.xml b/modernClients/ch02-javafx_fundamentals/myshapes2/nb-configuration.xml new file mode 100644 index 0000000..ec4540c --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapes2/nb-configuration.xml @@ -0,0 +1,18 @@ + + + + + + none + + diff --git a/modernClients/ch02-javafx_fundamentals/myshapes2/nbactions.xml b/modernClients/ch02-javafx_fundamentals/myshapes2/nbactions.xml new file mode 100644 index 0000000..9c9ee62 --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapes2/nbactions.xml @@ -0,0 +1,26 @@ + + + + run + + clean + package + org.codehaus.mojo:exec-maven-plugin:1.2.1:exec + + + -jar "${project.build.directory}/${project.build.finalName}.jar" + + + + debug + + clean + package + org.codehaus.mojo:exec-maven-plugin:1.2.1:exec + + + -Xdebug -Xrunjdwp:transport=dt_socket,server=n,address=${jpda.address} -Dglass.disableGrab=true -jar "${project.build.directory}/${project.build.finalName}.jar" + true + + + diff --git a/modernClients/ch02-javafx_fundamentals/myshapes2/pom.xml b/modernClients/ch02-javafx_fundamentals/myshapes2/pom.xml new file mode 100644 index 0000000..9568917 --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapes2/pom.xml @@ -0,0 +1,62 @@ + + + 4.0.0 + + com.modernclient + myshapes2 + 1.0-SNAPSHOT + jar + + myshapes + + + UTF-8 + org.modernclient.MyShapes2 + + + + + Your Organisation + + + + + org.openjfx + javafx-controls + 11 + + + org.openjfx + javafx-fxml + 11 + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.0 + + 11 + + + + org.codehaus.mojo + exec-maven-plugin + 1.6.0 + + + + java + + + + + org.modernclient.MyShapes2 + + + + + + diff --git a/modernClients/ch02-javafx_fundamentals/myshapes2/src/main/java/org/modernclient/MyShapes2.java b/modernClients/ch02-javafx_fundamentals/myshapes2/src/main/java/org/modernclient/MyShapes2.java new file mode 100644 index 0000000..0735066 --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapes2/src/main/java/org/modernclient/MyShapes2.java @@ -0,0 +1,95 @@ +package org.modernclient; + +import javafx.animation.Animation; +import javafx.animation.Interpolator; +import javafx.animation.RotateTransition; +import javafx.application.Application; +import javafx.beans.InvalidationListener; +import javafx.beans.binding.When; +import javafx.beans.value.ObservableObjectValue; +import javafx.geometry.Pos; +import javafx.scene.Scene; +import javafx.scene.control.Label; +import javafx.scene.effect.DropShadow; +import javafx.scene.effect.Reflection; +import javafx.scene.layout.AnchorPane; +import javafx.scene.layout.StackPane; +import javafx.scene.layout.VBox; +import javafx.scene.paint.Color; +import javafx.scene.paint.CycleMethod; +import javafx.scene.paint.LinearGradient; +import javafx.scene.paint.Stop; +import javafx.scene.shape.Ellipse; +import javafx.scene.text.Font; +import javafx.scene.text.Text; +import javafx.stage.Stage; +import javafx.util.Duration; + + +public class MyShapes2 extends Application { + + @Override + public void start(Stage stage) throws Exception { + + // Define a LinearGradient + Stop[] stops = new Stop[] { new Stop(0, Color.DODGERBLUE), + new Stop(0.5, Color.LIGHTBLUE), + new Stop(1.0, Color.LIGHTGREEN)}; + LinearGradient gradient = new LinearGradient(1, 1, 1, 0, true, + CycleMethod.NO_CYCLE, stops); + + // Create an Ellipse, set dropshadow, fill with gradient + Ellipse ellipse = new Ellipse(110, 70); + ellipse.setEffect(new DropShadow(30, 10, 10, Color.GRAY)); + ellipse.setFill(gradient); + + // Create a Text shape + Text text = new Text("My Shapes"); + text.setFont(new Font("Arial Bold", 24)); + + Reflection r = new Reflection(); + r.setFraction(0.8); + r.setTopOffset(5.0); + text.setEffect(r); + + StackPane stackPane = new StackPane(); + stackPane.getChildren().addAll(ellipse, text); + + // Define RotateTransition for stackPane + RotateTransition rotate = new RotateTransition(Duration.millis(2500), stackPane); + rotate.setToAngle(360); + rotate.setFromAngle(0); + rotate.setInterpolator(Interpolator.LINEAR); + + // text.textProperty().bind(stackPane.rotateProperty().asString("%.1f")); + + // configure mouse click handler + stackPane.setOnMouseClicked(mouseEvent -> { + if (rotate.getStatus().equals(Animation.Status.RUNNING)) { + rotate.pause(); + } else { + rotate.play(); + } + }); + + Scene scene = new Scene(stackPane, 350, 230, Color.LIGHTYELLOW); + //scene.getStylesheets().add("/styles/Styles.css"); + + stage.setTitle("MyShapes with JavaFX"); + stage.setScene(scene); + stage.show(); + } + + /** + * The main() method is ignored in correctly deployed JavaFX application. + * main() serves only as fallback in case the application can not be + * launched through deployment artifacts, e.g., in IDEs with limited FX + * support. NetBeans ignores main(). + * + * @param args the command line arguments + */ + public static void main(String[] args) { + launch(args); + } + +} \ No newline at end of file diff --git a/modernClients/ch02-javafx_fundamentals/myshapes2/src/main/resources/styles/Styles.css b/modernClients/ch02-javafx_fundamentals/myshapes2/src/main/resources/styles/Styles.css new file mode 100644 index 0000000..361782e --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapes2/src/main/resources/styles/Styles.css @@ -0,0 +1,7 @@ +.button { + -fx-font-weight: bold; +} +.stackpane { + -fx-background-color: #2f4f4f; + -fx-padding: 15; +} diff --git a/modernClients/ch02-javafx_fundamentals/myshapesfxml/nb-configuration.xml b/modernClients/ch02-javafx_fundamentals/myshapesfxml/nb-configuration.xml new file mode 100644 index 0000000..ec4540c --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapesfxml/nb-configuration.xml @@ -0,0 +1,18 @@ + + + + + + none + + diff --git a/modernClients/ch02-javafx_fundamentals/myshapesfxml/nbactions.xml b/modernClients/ch02-javafx_fundamentals/myshapesfxml/nbactions.xml new file mode 100644 index 0000000..9c9ee62 --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapesfxml/nbactions.xml @@ -0,0 +1,26 @@ + + + + run + + clean + package + org.codehaus.mojo:exec-maven-plugin:1.2.1:exec + + + -jar "${project.build.directory}/${project.build.finalName}.jar" + + + + debug + + clean + package + org.codehaus.mojo:exec-maven-plugin:1.2.1:exec + + + -Xdebug -Xrunjdwp:transport=dt_socket,server=n,address=${jpda.address} -Dglass.disableGrab=true -jar "${project.build.directory}/${project.build.finalName}.jar" + true + + + diff --git a/modernClients/ch02-javafx_fundamentals/myshapesfxml/pom.xml b/modernClients/ch02-javafx_fundamentals/myshapesfxml/pom.xml new file mode 100644 index 0000000..a413514 --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapesfxml/pom.xml @@ -0,0 +1,62 @@ + + + 4.0.0 + + com.modernclient + myshapesfxml + 1.0-SNAPSHOT + jar + + myshapesfxml + + + UTF-8 + org.modernclient.MyShapesFXML + + + + + Your Organisation + + + + + org.openjfx + javafx-controls + 11 + + + org.openjfx + javafx-fxml + 11 + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.0 + + 11 + + + + org.codehaus.mojo + exec-maven-plugin + 1.6.0 + + + + java + + + + + org.modernclient.MyShapesFXML + + + + + + diff --git a/modernClients/ch02-javafx_fundamentals/myshapesfxml/src/main/java/org/modernclient/FXMLController.java b/modernClients/ch02-javafx_fundamentals/myshapesfxml/src/main/java/org/modernclient/FXMLController.java new file mode 100644 index 0000000..d33a19e --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapesfxml/src/main/java/org/modernclient/FXMLController.java @@ -0,0 +1,49 @@ +package org.modernclient; + +import javafx.animation.Animation; +import javafx.animation.Interpolator; +import javafx.animation.RotateTransition; +import javafx.beans.binding.When; +import javafx.fxml.FXML; +import javafx.fxml.Initializable; +import javafx.scene.input.MouseEvent; +import javafx.scene.layout.StackPane; +import javafx.scene.paint.Color; +import javafx.scene.text.Text; +import javafx.util.Duration; + +import java.net.URL; +import java.util.ResourceBundle; + +public class FXMLController implements Initializable { + + @FXML + private StackPane stackPane; + @FXML + private Text text2; + private RotateTransition rotate; + + @Override + public void initialize(URL url, ResourceBundle rb) { + rotate = new RotateTransition(Duration.millis(2500), stackPane); + rotate.setToAngle(360); + rotate.setFromAngle(0); + rotate.setInterpolator(Interpolator.LINEAR); + + rotate.statusProperty().addListener((observableValue, oldValue, newValue) -> { + text2.setText("Was " + oldValue + ", Now " + newValue); + }); + + text2.strokeProperty().bind(new When(rotate.statusProperty() + .isEqualTo(Animation.Status.RUNNING)).then(Color.GREEN).otherwise(Color.RED)); + } + + @FXML + private void handleMouseClick(MouseEvent mouseEvent) { + if (rotate.getStatus().equals(Animation.Status.RUNNING)) { + rotate.pause(); + } else { + rotate.play(); + } + } +} diff --git a/modernClients/ch02-javafx_fundamentals/myshapesfxml/src/main/java/org/modernclient/MyShapesFXML.java b/modernClients/ch02-javafx_fundamentals/myshapesfxml/src/main/java/org/modernclient/MyShapesFXML.java new file mode 100644 index 0000000..4c43b27 --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapesfxml/src/main/java/org/modernclient/MyShapesFXML.java @@ -0,0 +1,38 @@ +package org.modernclient; + +import javafx.application.Application; +import javafx.fxml.FXMLLoader; +import javafx.scene.Parent; +import javafx.scene.Scene; +import javafx.scene.paint.Color; +import javafx.stage.Stage; + + +public class MyShapesFXML extends Application { + + @Override + public void start(Stage stage) throws Exception { + Parent root = FXMLLoader.load(getClass().getResource("/fxml/Scene.fxml")); + + Scene scene = new Scene(root, Color.LIGHTYELLOW); + //scene.getStylesheets().add(getClass() + //.getResource("/styles/Styles.css").toExternalForm()); + + stage.setTitle("MyShapesApp with JavaFX"); + stage.setScene(scene); + stage.show(); + } + + /** + * The main() method is ignored in correctly deployed JavaFX application. + * main() serves only as fallback in case the application can not be + * launched through deployment artifacts, e.g., in IDEs with limited FX + * support. NetBeans ignores main(). + * + * @param args the command line arguments + */ + public static void main(String[] args) { + launch(args); + } + +} diff --git a/modernClients/ch02-javafx_fundamentals/myshapesfxml/src/main/resources/fxml/Scene.fxml b/modernClients/ch02-javafx_fundamentals/myshapesfxml/src/main/resources/fxml/Scene.fxml new file mode 100644 index 0000000..9b20574 --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapesfxml/src/main/resources/fxml/Scene.fxml @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/modernClients/ch02-javafx_fundamentals/myshapesfxml/src/main/resources/styles/Styles.css b/modernClients/ch02-javafx_fundamentals/myshapesfxml/src/main/resources/styles/Styles.css new file mode 100644 index 0000000..076e552 --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapesfxml/src/main/resources/styles/Styles.css @@ -0,0 +1,3 @@ +.mytext { + -fx-font-style: italic; +} \ No newline at end of file diff --git a/modernClients/ch02-javafx_fundamentals/myshapesproperties/myshapes.iml b/modernClients/ch02-javafx_fundamentals/myshapesproperties/myshapes.iml new file mode 100644 index 0000000..8ce79aa --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapesproperties/myshapes.iml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/modernClients/ch02-javafx_fundamentals/myshapesproperties/myshapesproperties.iml b/modernClients/ch02-javafx_fundamentals/myshapesproperties/myshapesproperties.iml new file mode 100644 index 0000000..78b2cc5 --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapesproperties/myshapesproperties.iml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/modernClients/ch02-javafx_fundamentals/myshapesproperties/nb-configuration.xml b/modernClients/ch02-javafx_fundamentals/myshapesproperties/nb-configuration.xml new file mode 100644 index 0000000..ec4540c --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapesproperties/nb-configuration.xml @@ -0,0 +1,18 @@ + + + + + + none + + diff --git a/modernClients/ch02-javafx_fundamentals/myshapesproperties/nbactions.xml b/modernClients/ch02-javafx_fundamentals/myshapesproperties/nbactions.xml new file mode 100644 index 0000000..9c9ee62 --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapesproperties/nbactions.xml @@ -0,0 +1,26 @@ + + + + run + + clean + package + org.codehaus.mojo:exec-maven-plugin:1.2.1:exec + + + -jar "${project.build.directory}/${project.build.finalName}.jar" + + + + debug + + clean + package + org.codehaus.mojo:exec-maven-plugin:1.2.1:exec + + + -Xdebug -Xrunjdwp:transport=dt_socket,server=n,address=${jpda.address} -Dglass.disableGrab=true -jar "${project.build.directory}/${project.build.finalName}.jar" + true + + + diff --git a/modernClients/ch02-javafx_fundamentals/myshapesproperties/pom.xml b/modernClients/ch02-javafx_fundamentals/myshapesproperties/pom.xml new file mode 100644 index 0000000..1864147 --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapesproperties/pom.xml @@ -0,0 +1,62 @@ + + + 4.0.0 + + com.modernclient + myshapesproperties + 1.0-SNAPSHOT + jar + + myshapesproperties + + + UTF-8 + org.modernclient.MyShapesProperties + + + + + Your Organisation + + + + + org.openjfx + javafx-controls + 11 + + + org.openjfx + javafx-fxml + 11 + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.0 + + 11 + + + + org.codehaus.mojo + exec-maven-plugin + 1.6.0 + + + + java + + + + + org.modernclient.MyShapesProperties + + + + + + diff --git a/modernClients/ch02-javafx_fundamentals/myshapesproperties/src/main/java/org/modernclient/MyShapesProperties.java b/modernClients/ch02-javafx_fundamentals/myshapesproperties/src/main/java/org/modernclient/MyShapesProperties.java new file mode 100644 index 0000000..8df8d5f --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/myshapesproperties/src/main/java/org/modernclient/MyShapesProperties.java @@ -0,0 +1,148 @@ +package org.modernclient; + +import javafx.animation.Animation; +import javafx.animation.Interpolator; +import javafx.animation.RotateTransition; +import javafx.application.Application; +import javafx.beans.InvalidationListener; +import javafx.beans.Observable; +import javafx.beans.binding.When; +import javafx.beans.value.ChangeListener; +import javafx.beans.value.ObservableObjectValue; +import javafx.beans.value.ObservableValue; +import javafx.geometry.Pos; +import javafx.scene.Scene; +import javafx.scene.control.Label; +import javafx.scene.effect.DropShadow; +import javafx.scene.effect.Reflection; +import javafx.scene.layout.AnchorPane; +import javafx.scene.layout.StackPane; +import javafx.scene.layout.VBox; +import javafx.scene.paint.Color; +import javafx.scene.paint.CycleMethod; +import javafx.scene.paint.LinearGradient; +import javafx.scene.paint.Stop; +import javafx.scene.shape.Ellipse; +import javafx.scene.text.Font; +import javafx.scene.text.Text; +import javafx.stage.Stage; +import javafx.util.Duration; + + +public class MyShapesProperties extends Application { + + @Override + public void start(Stage stage) throws Exception { + // Build scene graph + // Define a LinearGradient + Stop[] stops = new Stop[] { new Stop(0, Color.DODGERBLUE), + new Stop(0.5, Color.LIGHTBLUE), + new Stop(1.0, Color.LIGHTGREEN)}; + LinearGradient gradient = new LinearGradient(1, 1, 1, 0, true, + CycleMethod.NO_CYCLE, stops); + + // Create an Ellipse, set dropshadow, fill with gradient + Ellipse ellipse = new Ellipse(110, 70); + ellipse.setEffect(new DropShadow(30, 10, 10, Color.GRAY)); + //ellipse.setFill(Color.LIGHTBLUE); + ellipse.setFill(gradient); + + // Create a Text shape + Text text = new Text("My Shapes"); + text.setFont(new Font("Arial Bold", 24)); + // Create a second Text shape + Text text2 = new Text("Animation Status: "); + text2.setFont(new Font("Arial Bold", 18)); + + Reflection r = new Reflection(); + r.setFraction(0.8); + r.setTopOffset(5.0); + text.setEffect(r); + + StackPane stackPane = new StackPane(); + stackPane.getChildren().addAll(ellipse, text); + VBox vBox = new VBox(stackPane, text2); + vBox.setAlignment(Pos.CENTER); + vBox.setSpacing(50.0); + + // Define RotateTransition for stackPane + RotateTransition rotate = new RotateTransition(Duration.millis(2500), stackPane); + rotate.setToAngle(360); + rotate.setFromAngle(0); + rotate.setInterpolator(Interpolator.LINEAR); + + // Invalidation Listener using lambda expression + /*rotate.statusProperty().addListener(observable -> { + text2.setText("Animation status: " + + ((ObservableObjectValue)observable).getValue()); + text2.setText("Animation status: " + rotate.getStatus()); + });*/ + + // Invalidation Listener using anonymous class + /*rotate.statusProperty().addListener(new InvalidationListener() { + @Override + public void invalidated(Observable observable) { + text2.setText("Animation status: " + + ((ObservableObjectValue)observable).getValue()); + } + + });*/ + + // Change Listener using lambda expression + rotate.statusProperty().addListener((observableValue, oldValue, newValue) -> { + text2.setText("Was " + oldValue + ", Now " + newValue); + }); + + // Change Listener using anonymous class + /*rotate.statusProperty().addListener(new ChangeListener() { + @Override + public void changed(ObservableValue observableValue, + Animation.Status oldValue, Animation.Status newValue) { + text2.setText("Was " + oldValue + ", Now " + newValue); + + } + });*/ + + // Bind expression with When + text2.strokeProperty().bind(new When(rotate.statusProperty() + .isEqualTo(Animation.Status.RUNNING)).then(Color.GREEN).otherwise(Color.RED)); + + // Bind expression + //text2.rotateProperty().bind(stackPane.rotateProperty()); + + // Bidirectional Bind + //text2.textProperty().bindBidirectional(text.textProperty()); + + // Bind with fluent API + //text2.textProperty().bind(stackPane.rotateProperty().asString("%.1f")); + + // configure mouse click handler + stackPane.setOnMouseClicked(mouseEvent -> { + if (rotate.getStatus().equals(Animation.Status.RUNNING)) { + rotate.pause(); + } else { + rotate.play(); + } + }); + + Scene scene = new Scene(vBox, 350, 350, Color.LIGHTYELLOW); + //scene.getStylesheets().add("/styles/Styles.css"); + + stage.setTitle("MyShapesProperties"); + stage.setScene(scene); + stage.show(); + } + + /** + * The main() method is ignored in correctly deployed JavaFX application. + * main() serves only as fallback in case the application can not be + * launched through deployment artifacts, e.g., in IDEs with limited FX + * support. NetBeans ignores main(). + * + * @param args the command line arguments + */ + public static void main(String[] args) { + launch(args); + } + +} \ No newline at end of file diff --git a/modernClients/ch02-javafx_fundamentals/personui/nb-configuration.xml b/modernClients/ch02-javafx_fundamentals/personui/nb-configuration.xml new file mode 100644 index 0000000..ec4540c --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/personui/nb-configuration.xml @@ -0,0 +1,18 @@ + + + + + + none + + diff --git a/modernClients/ch02-javafx_fundamentals/personui/nbactions.xml b/modernClients/ch02-javafx_fundamentals/personui/nbactions.xml new file mode 100644 index 0000000..9c9ee62 --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/personui/nbactions.xml @@ -0,0 +1,26 @@ + + + + run + + clean + package + org.codehaus.mojo:exec-maven-plugin:1.2.1:exec + + + -jar "${project.build.directory}/${project.build.finalName}.jar" + + + + debug + + clean + package + org.codehaus.mojo:exec-maven-plugin:1.2.1:exec + + + -Xdebug -Xrunjdwp:transport=dt_socket,server=n,address=${jpda.address} -Dglass.disableGrab=true -jar "${project.build.directory}/${project.build.finalName}.jar" + true + + + diff --git a/modernClients/ch02-javafx_fundamentals/personui/pom.xml b/modernClients/ch02-javafx_fundamentals/personui/pom.xml new file mode 100644 index 0000000..37ce02c --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/personui/pom.xml @@ -0,0 +1,62 @@ + + + 4.0.0 + + com.modernclient + personui + 1.0-SNAPSHOT + jar + + personui + + + UTF-8 + org.openjfx.MainApp + + + + + Your Organisation + + + + + org.openjfx + javafx-controls + 11 + + + org.openjfx + javafx-fxml + 11 + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.0 + + 11 + + + + org.codehaus.mojo + exec-maven-plugin + 1.6.0 + + + + java + + + + + com.modernclient.PersonUI + + + + + + diff --git a/modernClients/ch02-javafx_fundamentals/personui/src/main/java/com/modernclient/FXMLController.java b/modernClients/ch02-javafx_fundamentals/personui/src/main/java/com/modernclient/FXMLController.java new file mode 100644 index 0000000..61dfbd2 --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/personui/src/main/java/com/modernclient/FXMLController.java @@ -0,0 +1,133 @@ +package com.modernclient; + +import com.modernclient.model.Person; +import com.modernclient.model.SampleData; +import javafx.beans.property.BooleanProperty; +import javafx.beans.property.SimpleBooleanProperty; +import javafx.beans.value.ChangeListener; +import javafx.collections.FXCollections; +import javafx.collections.ObservableList; +import javafx.collections.transformation.SortedList; +import javafx.event.ActionEvent; +import javafx.fxml.FXML; +import javafx.fxml.Initializable; +import javafx.scene.control.Button; +import javafx.scene.control.ListView; +import javafx.scene.control.TextArea; +import javafx.scene.control.TextField; +import javafx.scene.input.KeyEvent; + +import java.net.URL; +import java.util.ResourceBundle; + +public class FXMLController implements Initializable { + + + @FXML + private TextField firstnameTextField; + @FXML + private TextField lastnameTextField; + @FXML + private TextArea notesTextArea; + @FXML + private Button removeButton; + @FXML + private Button createButton; + @FXML + private Button updateButton; + @FXML + private ListView listView; + + private final ObservableList personList = FXCollections.observableArrayList(Person.extractor); + // Observable objects returned by extractor (applied to each list element) are listened for changes and + // transformed into "update" change of ListChangeListener. + + private Person selectedPerson; + private final BooleanProperty modifiedProperty = new SimpleBooleanProperty(false); + private ChangeListener personChangeListener; + + + @Override + public void initialize(URL url, ResourceBundle rb) { + + // Disable the Remove/Edit buttons if nothing is selected in the ListView control + removeButton.disableProperty().bind(listView.getSelectionModel().selectedItemProperty().isNull()); + updateButton.disableProperty().bind(listView.getSelectionModel().selectedItemProperty().isNull() + .or(modifiedProperty.not()) + .or(firstnameTextField.textProperty().isEmpty() + .or(lastnameTextField.textProperty().isEmpty()))); + createButton.disableProperty().bind(listView.getSelectionModel().selectedItemProperty().isNotNull() + .or(firstnameTextField.textProperty().isEmpty() + .or(lastnameTextField.textProperty().isEmpty()))); + + SampleData.fillSampleData(personList); + + // Use a sorted list; sort by lastname; then by firstname + SortedList sortedList = new SortedList<>(personList); + + // sort by lastname first, then by firstname; ignore notes + sortedList.setComparator((p1, p2) -> { + int result = p1.getLastname().compareToIgnoreCase(p2.getLastname()); + if (result == 0) { + result = p1.getFirstname().compareToIgnoreCase(p2.getFirstname()); + } + return result; + }); + listView.setItems(sortedList); + + listView.getSelectionModel().selectedItemProperty().addListener( + personChangeListener = (observable, oldValue, newValue) -> { + System.out.println("Selected item: " + newValue); + // newValue can be null if nothing is selected + selectedPerson = newValue; + modifiedProperty.set(false); + if (newValue != null) { + // Populate controls with selected Person + firstnameTextField.setText(selectedPerson.getFirstname()); + lastnameTextField.setText(selectedPerson.getLastname()); + notesTextArea.setText(selectedPerson.getNotes()); + } else { + firstnameTextField.setText(""); + lastnameTextField.setText(""); + notesTextArea.setText(""); + } + }); + + // Pre-select the first item + listView.getSelectionModel().selectFirst(); + + } + + @FXML + private void handleKeyAction(KeyEvent keyEvent) { + modifiedProperty.set(true); + } + + @FXML + private void createButtonAction(ActionEvent actionEvent) { + System.out.println("Create"); + Person person = new Person(firstnameTextField.getText(), + lastnameTextField.getText(), notesTextArea.getText()); + personList.add(person); + // and select it + listView.getSelectionModel().select(person); + } + + @FXML + private void removeButtonAction(ActionEvent actionEvent) { + System.out.println("Remove " + selectedPerson); + personList.remove(selectedPerson); + } + + @FXML + private void updateButtonAction(ActionEvent actionEvent) { + System.out.println("Update " + selectedPerson); + Person p = listView.getSelectionModel().getSelectedItem(); + listView.getSelectionModel().selectedItemProperty().removeListener(personChangeListener); + p.setFirstname(firstnameTextField.getText()); + p.setLastname(lastnameTextField.getText()); + p.setNotes(notesTextArea.getText()); + listView.getSelectionModel().selectedItemProperty().addListener(personChangeListener); + modifiedProperty.set(false); + } +} diff --git a/modernClients/ch02-javafx_fundamentals/personui/src/main/java/com/modernclient/PersonUI.java b/modernClients/ch02-javafx_fundamentals/personui/src/main/java/com/modernclient/PersonUI.java new file mode 100644 index 0000000..6e0406e --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/personui/src/main/java/com/modernclient/PersonUI.java @@ -0,0 +1,35 @@ +package com.modernclient; + +import javafx.application.Application; +import static javafx.application.Application.launch; +import javafx.fxml.FXMLLoader; +import javafx.scene.Parent; +import javafx.scene.Scene; +import javafx.stage.Stage; + + +public class PersonUI extends Application { + + @Override + public void start(Stage stage) throws Exception { + Parent root = FXMLLoader.load(getClass().getResource("/fxml/Scene.fxml")); + + Scene scene = new Scene(root); + stage.setTitle("Person UI Example"); + stage.setScene(scene); + stage.show(); + } + + /** + * The main() method is ignored in correctly deployed JavaFX application. + * main() serves only as fallback in case the application can not be + * launched through deployment artifacts, e.g., in IDEs with limited FX + * support. NetBeans ignores main(). + * + * @param args the command line arguments + */ + public static void main(String[] args) { + launch(args); + } + +} diff --git a/modernClients/ch02-javafx_fundamentals/personui/src/main/java/com/modernclient/model/Person.java b/modernClients/ch02-javafx_fundamentals/personui/src/main/java/com/modernclient/model/Person.java new file mode 100644 index 0000000..1858cbc --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/personui/src/main/java/com/modernclient/model/Person.java @@ -0,0 +1,83 @@ +package com.modernclient.model; + +import javafx.beans.Observable; +import javafx.beans.property.SimpleStringProperty; +import javafx.beans.property.StringProperty; +import javafx.util.Callback; + +import java.util.Objects; + +public class Person { + + private final StringProperty firstname = new SimpleStringProperty(this, "fistname", ""); + private final StringProperty lastname = new SimpleStringProperty(this, "lastname", ""); + private final StringProperty notes = new SimpleStringProperty(this, "notes", "sample notes"); + + public Person() { + } + + public Person(String firstname, String lastname, String notes) { + this.firstname.set(firstname); + this.lastname.set(lastname); + this.notes.set(notes); + } + + public String getFirstname() { + return firstname.get(); + } + + public StringProperty firstnameProperty() { + return firstname; + } + + public void setFirstname(String firstname) { + this.firstname.set(firstname); + } + + public String getLastname() { + return lastname.get(); + } + + public StringProperty lastnameProperty() { + return lastname; + } + + public void setLastname(String lastname) { + this.lastname.set(lastname); + } + + public String getNotes() { + return notes.get(); + } + + public StringProperty notesProperty() { + return notes; + } + + public void setNotes(String notes) { + this.notes.set(notes); + } + + @Override + public String toString() { + return firstname.get() + " " + lastname.get(); + } + + @Override + public boolean equals(Object obj) { + if (this == obj) return true; + if (obj == null || getClass() != obj.getClass()) return false; + Person person = (Person) obj; + return Objects.equals(firstname, person.firstname) && + Objects.equals(lastname, person.lastname) && + Objects.equals(notes, person.notes); + } + + @Override + public int hashCode() { + return Objects.hash(firstname, lastname, notes); + } + + public static Callback extractor = p -> new Observable[] + {p.lastnameProperty(), p.firstnameProperty()}; +} diff --git a/modernClients/ch02-javafx_fundamentals/personui/src/main/java/com/modernclient/model/SampleData.java b/modernClients/ch02-javafx_fundamentals/personui/src/main/java/com/modernclient/model/SampleData.java new file mode 100644 index 0000000..e36eb4e --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/personui/src/main/java/com/modernclient/model/SampleData.java @@ -0,0 +1,44 @@ +package com.modernclient.model; + + +import javafx.collections.ObservableList; + +public class SampleData { + + public static void fillSampleData(ObservableList backingList) { + backingList.add(new Person("Waldo", "Soller", "random notes 1")); + backingList.add(new Person("Herb", "Dinapoli", "random notes 2")); + backingList.add(new Person("Shawanna", "Goehring", "random notes 3")); + backingList.add(new Person("Flossie", "Goehring", "random notes 4")); + backingList.add(new Person("Magdalen", "Meadors", "random notes 5")); + backingList.add(new Person("Marylou", "Berube", "random notes 6")); + backingList.add(new Person("Ethan", "Nieto", "random notes 7")); + backingList.add(new Person("Elli", "Combes", "random notes 8")); + backingList.add(new Person("Andy", "Toupin", "random notes 9")); + backingList.add(new Person("Zenia", "Linwood", "random notes 10")); + } + + /* + Glenn Marti +Waldo Soller +Herb Dinapoli +Shawanna Goehring +Flossie Slack +Magdalen Meadors +Marylou Berube +Ethan Nieto +Elli Combes +Andy Toupin +Zenia Linwood +Alan Mckeithan +Kattie Mellott +Benito Kearns +Lloyd Cundiff +Karleen Westrich +Jada Perrotta +Teofila Holbert +Moira Heart +Mitsuko Earwood + */ + +} diff --git a/modernClients/ch02-javafx_fundamentals/personui/src/main/resources/fxml/Scene.fxml b/modernClients/ch02-javafx_fundamentals/personui/src/main/resources/fxml/Scene.fxml new file mode 100644 index 0000000..ad51523 --- /dev/null +++ b/modernClients/ch02-javafx_fundamentals/personui/src/main/resources/fxml/Scene.fxml @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +