From c1fdf11ac00eb769310e481e96c16ce0f48044d2 Mon Sep 17 00:00:00 2001 From: "Gregory.Shrago" Date: Fri, 27 May 2016 09:49:56 +0300 Subject: [PATCH] jflex-1.7.0-SNAPSHOT.jar: morph ZZ_CMAP to multi-level table --- .../plugins/groovy/lang/lexer/groovy.skeleton | 1 - tools/lexer/CHANGES | 4 +++- tools/lexer/idea-flex.skeleton | 1 - tools/lexer/jflex-1.7.0-SNAPSHOT.jar | Bin 1180414 -> 1186471 bytes 4 files changed, 3 insertions(+), 3 deletions(-) diff --git a/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/lexer/groovy.skeleton b/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/lexer/groovy.skeleton index 83fa26c4f265..607494bd61bb 100644 --- a/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/lexer/groovy.skeleton +++ b/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/lexer/groovy.skeleton @@ -205,7 +205,6 @@ int zzMarkedPosL; int zzEndReadL = zzEndRead; CharSequence zzBufferL = zzBuffer; - char [] zzCMapL = ZZ_CMAP; --- local declarations diff --git a/tools/lexer/CHANGES b/tools/lexer/CHANGES index 3bc29c605ad4..d853424c5551 100644 --- a/tools/lexer/CHANGES +++ b/tools/lexer/CHANGES @@ -8,4 +8,6 @@ https://github.com/jflex-de/jflex/tree/de2312d6891de7fdf2752ad8e0a45983202ad5e0 "Return exit code 0 for --{help,version,info}" committed on Feb 29 by lsf37 1. Emitter.java: zzBufferL is treated as CharSequence instead of char[] -2. Emitter.java: try using reduced ZZ_CMAP if maxCodePoint is greater than 0xffff \ No newline at end of file +2. Emitter.java: reworked ZZ_CMAP to an optimized multi-level table (see java.lang.CharacterDataXX) + For this purpose EmitterCM.java is introduced to resemble a variant of + generatecharacter/GenerateCharacter.java from http://hg.openjdk.java.net tailored to our needs. \ No newline at end of file diff --git a/tools/lexer/idea-flex.skeleton b/tools/lexer/idea-flex.skeleton index f3127cd8e8be..2f2563672f9a 100644 --- a/tools/lexer/idea-flex.skeleton +++ b/tools/lexer/idea-flex.skeleton @@ -201,7 +201,6 @@ int zzMarkedPosL; int zzEndReadL = zzEndRead; CharSequence zzBufferL = zzBuffer; - char [] zzCMapL = ZZ_CMAP; --- local declarations diff --git a/tools/lexer/jflex-1.7.0-SNAPSHOT.jar b/tools/lexer/jflex-1.7.0-SNAPSHOT.jar index 4f301defd919d2315db548d5e918d668e52600bf..15cd90feaa5816cff8382da2684d184712bfb7ff 100644 GIT binary patch delta 29129 zcmXV$V{m27*Y;;7n%Fi@Y&#PtC$?=&Y@La7V%xSgv2EM7HJRj{=l;L@%k`_Z_PV;O zt9RF~TKy3$RnjDds3-#g3HRmyo=(~JI7AAFj(@_w{eO~x^_BiV75_^5pLTx5PWbf| z?LSWX3i$sqn*a3lE93uZ1Ku}$sQ-W)W(@K_fI=XJ_z!51Prm&J7-$A0{|5wg}yyiEVI_Y++E zUrI;B6Xw6vvb5v>rXZt0^}mR#x(oDwsSDk8xc^|xq5vb<_wPhAwm*V z4od=w0?`*wPl4uU!kGtmhTbmd{S^}veyM~E@`CW<&34-2y7T;=Cg10HVx!aB9rk7G zPuKSKXUxUK#;NmE+PwMISpxa8eN>cBh1*SB3S|vFKt{BB`i}-5A{Nvz7jB)TQ+#U5uNiGQ{ z9fopwAQ}V>kyx)GAcUGl6>J1VD4CU1oJkAl2hre2_m;A=Xk*YQ$&UXYt3K7@h?b!N zhLkt7z>XL(iusA={Q6*40OgD-6)lT2coZnBWL%CWsdyWQk*K1WH^2@kreg`rj#f4< zMr%kcRW)u#b52aH7?=f4sO;eY$`ey-2EGBJ)r|AdA`-vT)@g#R0oJ9iQeXg(9#mw? z0OblKki2DuJ4@1(chm%jp&X3z)DqP%)=^mW5hw5ByM4_E3i^y zPYfWhyk`pd$RD5q+A8j;0_0WpTmVywd$NEj>UJV=xF!gVr$#EhDK_8*G!Xr;V0ylC8qJXw)dz1h> z^*tt0y^~rMz<-iFet=<; zJfy&(NgiTg$s~^nDk6FC%(W8*3jK50Jd@uGJqZ8x9h+TQT8`Gyd3f^8T9K2Wa<}1a7^ib zOxYBb)t<_&7XIz;m;9&~Wgqe0Wx-oSGf>8mKI%5jZ6})03<5}Xj|%WnG%yW(*8v+O zz9fY?FhO4tIsfBKa3N`q^9TLD!J7|?c&6B*uJ4Gc^ zHsk@>MX%x%5RaaeS$JRyD52&_I+9seAzGD49uHULk&{>GH-x^U^Gu9qE3-|GPXbP< zJ4MGkmw^Unfl~zmCe)?MPJ&H3Kjfm-obuu$5)o*BYmQn2Y)bcI<7G-2f2wL#m}bQf z(@1BiF46tg9j%Q=1>h(0XW!u^MbfSonl{AKCF+(P&;m5*eoKrt0kd-tcmd0Fp84@q zG@kYGAf-DD02j4qd3*_tXIs1lwP$g>1&wEOJm{F(vpOE6cE=Bx*0}oyU{bv!12C!I zp#hlG?pOg#8cqfA8HpVtqjX6fz|l#dzMS(vf19L@`~z2@e$4?QaI5q{9bm6~XAZDe zy8A~ecW!{s;sZk9R@s3b&`#yf4$wmPTXYl);7EuW7s%Daz#0ff)4T@7whZzAKTX69&{(Y zi;o&4ZB!iC1Fux>+yS3bgHum*@XXCP@zH}xfJ8u&*=}@$a^j&(Lt;{SC42Zf^>|HX z^O$u><ERY_gL%vE%(p^f}dO914fKFz+RW4PRz zC>}pwU#3rNW>#Y4lUo0#yb)tQYoG-|J(Wk267U7e6XSrc;ujtktqq9)a=sxmlqfY0 zu$LJwM1?sZpr3|>#VRV_u(3WoQLVC)WsFv7Nz*J!MZK(kh^|6b3q6rTNh=|dBkfE+ z?^ko4D5js?=PMz*TF;Li?v8hVs{bi57>9mp3tE9X-V3po0d9-(DfB$Gl_pC#Mv2x%=z;{% z-8(5$Evui@ng!mH+CQ;HekfnP906p)uGW>Ie};g-QBkNq>JPf8mGA{0LB9%1tm48A zRa~o7+_f#$=2g=L0KT*vor5)peTFYD9!ZZ!o;VnV*m2pKl$s zMiw~b^|!S*)}u5-dUDq~)Iya!V@!4{Adh;=o+ywp+pQ=ns&}!WpDorhOuCl!9W{#{ zxmqM7Nf#A91@%LnV}ZQYItN!$gBKH?lBI0gsnakwF%P zE&_>~=8S;qs3W&vma4bbns^k&PND&g-;WeLD5K1gPljHiAcD1Ls3yuI5r?;!AUXxY z3$p`f_95bBTH2x4DzdXLFp#cTJrRa;E_3n7Fg?~EBvMDq{Ft;2?lpFt5w>d=vx@}m z&HxkLTeVQW$mf*urO^q6U5V zxYVvfMqQI^lRwoAB8|U!gPiI-e~0`yc`?VMYyykf`o@M)O)jw9EfOPgaB%HNg~U=! zBGzf@>RpEwHfqHk4V}ft!TE)X!CN`{b!8hwuCpS+CyGkJs07Sv2ZiU;*E1`@T#KIjoiRtC4k`@%V|n)@2#VS z35BMn0|_KGhfqr|(H_alaqmF)CMtAZtjspZrX$J zPLol)7kjw=RPFP`f7iKg!8@g~Ms<{}si{jbgy+L=A89V=#mvLw!zmhO9HBk8>4Qjj zsV2N#u+7P`msAhJ)4(%)ByH7|?KSi3ij&wHVY=6v^s@%SrGfFDsVA^hA-|}%A#q%T(AKj&)!%d=0EOOAb#2N16sT} z%GLtvXf=X7?oE-|R)e8-xiU=^yLot}HE@4*n4rPo{X#l{aw?PKF%|3?h)q&=Jfu?- zwyqLy;!_uSN_AN}UVYkP}sCf`qG?CtSEpGuc!N6>t2Uaxyn zomH3>{@O5lXq8C2x=W}e6t2C7@mFPNn1XCuV;UzJoDAV38UzA@MkNhkdNGOc8>fgCi8)kTkz!67jRyv)Zd%vdHjGLX4%* zKA8+_79l1D1+&u2_eF*}XMW6zGpv~}Bk9h4laG(TpHf+}p&)IaYfxWJOjZPI%k;S> z={eLfd#{~UHeGEs5{gZaTh|&1=O7+99z}w+Ic<_~qH@nbic^(~N*fZvQacMxhc3|a zpefUO3k5!>wTIvH7h|WA@|nqUAxYIs>L$KeaTt5+_El8j-&ew%@Fx?)s$e3lfvjR7 zVp2yYh;~19G6K@tV7@uYSvua&6@{IMbi0zFzDSGhw5s<{*F7i1$?1Udbp1Eqs#K^? zor4IAkE)hHfhdYD7VwUIhX+HP<&x|SR zQ~g<6LE3UiX67c)60j~r34zDT*-C>*CNp(UwEVqoQgo zc%IBaOvoII64sVKRTlx2?WiSTf!1jEE&&3GXGF!EgQe_S#f%+6wql*W0TEVFc_enU z5U!@?EZWg^osfpP`uQ*-bl{gttZ42Ei8C_QK(zX}l?E(ox5Boz-%1dSJ99jv9FdJU zxk-oI7cse7O+W09u2?=qJdt3?{8*(@keE?GHo>+H773MglINYj*i%h3NKr%jM(V7B zj73Djojr_8g`#ZJ;G<;AdYSo+0zo{d;g+T_E#+mLMXdKoDOEP9ltu3O=tud5NX&W* z4S8Cew4Y+t?zn1!SQyruEa?e^IVx_|`v2a?r9k9@{Buf3Cxa*LULNeNlM)sg^nD04 z3Sr{c$a1U-Dc0smK4RvMpUv_`B=xv*OvHl^~xs@8*g)0 z#b|zjV8oIl2S?=}r}h>Y6niNggtWddQJF}ia}f6uykG9anV23TDeh4eb%V+@ElO|O zGmu=VF?3dLBPmWuZ%Sn@6@FxfI_yh=oX`Nc}bwY>YtsKrB0g)I9BJ#5WWcr4!AC^cUw<=je{Mj(R>l8atg zK$3LmS1~aqy>Do^C%`x|+lPqa+acNa602rgI}jrMI7JFvh#)^(wry-;K}HmjgAzz6 zPU25P4b7goaIjQ^xNA^}5i%4S}Imm;T;>ZVSgQTr6jxsidvN8GLp)XoD)G z+fZEjyAD+jf1~8ERp#GejZ;kuQf6Ad&q`RS*g}$89%u_#G^I~~797WcqN6{Krfot7(!H4W3i$CvrP>oCXmLo3f?j~J z+&GCYAZlEMqpiC7LNJA@fZyCHL=iPNolR6~_%WS*h;kCENpSr!&7;^lVJ%2uwr%jS zB8u?5)fc%f=&$)TXEHFZwy}g9*`aE3UXS0=>Mfoj6q>zs^>=82oosIT+Y5 zyC^iYah;;z<}ElWZ``e85RNN>Z>|5wb&H&%)AHx$kTjbe_t=3TSb6Lqa=Y9`5%c`|sbIa3=xpG*HmrXO!fF`8sH<|fb%uhq=c(;FgHL~$o2 z{6clDjAf`{141>|dG+abMHk8@NXlrGG}MdRZd+}Gy0zO#7;0tVYaA62ZGHsH*t)g) zIb9JsR0ai=#AN+lsv=MV;digtZ$^{fNf15hfC^OEiXj~+!uU!be;_rwk*lE?WtVK?}TY zNX{ouX6mcp1j+Xxtuoli_S(nhH6B zeTXJsiL4-hBu5<0pWnR#b!*YI5ye*_d@Pl7d zeAqi28ji93thIxGji60j$(9ug%DfcK8>Puo;gRr6v)Y~)f!&*;ctULdA} zFboQ*Ud1FapuMRw-v#7^>GG1y(n0XgTo z;p$Q6S?l>v6-*^e9E-YI(rZ;{Whk!cDQ@zjME=1`HF*qAdAQ&?D({2m0ynnCU@CqCYzvkkygC?g!r#oUMumz!?SsEt{N2L$elR}&x z)p4(Tzg->{$~)~_qBf2u4h*?gB8{LXpKJ-Z(R9`m=~__9RY*b1Yp>q&|5#%7z|mt+b-6S9%u zS_!%7H6>!($=}8`J%km=fl~FS353r*-OQA61a%^^BT~T>$Vfb{r>#@B5(RD{aw&Pe zY%MNFjb-zcF`RlfSu;G2PtoW?csM7wnv#8w74Vldr5K@cIqU^Rk^zXvsB^N=88b%p z#Uum_&ay4{Z;)-2kN{ORy0!-@#3_@X23?6ba7hz=n0NBg68BwHh# zeoVq9{90ihGU7Z-Xh@kv^uC@AW^IL2OUoIG*{iWm3x11qWOvkqf!C zY#wvU)@#%ePw+=@0EZ1Ic9WBnN8Oc6h2zMqr*3pKLKQoF)QpW%yRgZToIiO#HQ(|0 z*HQ&ql?L7x;cRmP0W8d08NXk!Sj&>XdYuJavqY~_c6rlhfe{h$cIr`JhwqRCU#hsi zx{Ms}aJrbrl9hWNV=io)eB_xSyD4(&HoxUe?k$8wi@u^;Y(N~SUxxvQ)pBGc5Hm7A zV1k=ED`ANL+VrP}B6oWI@P51$HqmsNTQPyKR5d~I7*R^Z?Zf1R z+)Wpi0@=9EftJGZzCk-Pk^d#^dK7o1d%4W~Xm^zw_G1&0 zs?zG>_IJ{7qpLm48|~NKUifZ^%xc(LSH9@o0zHxTrURhkC(`b~#s1}->nEV?CzVDdTPZ{J=Sxqn&dY7z06`7rCj48CR&2ze`AudXTH(5}2fJktFuZ1nn!v`G*3@ z!fhmw#E_bGU9ub6hc;2-V zpDgcfgw`V<1STX`BfEga`K8oZdfm^ZbdIg@xuZTEZJ#*=xX+BI1>Vo@imL|&3)Vc! z_TTFy~c# zD^riUI<@=#F<^!~>RpVPNST%>SHyyQwLw=tcNbq!0u|w4R6@n#DO4(^^S6PG_k-l3 z-^Fd$DjvB+q9wQvkx}g(i_S>XL*b%Z>~uhGq&MeOD70Zg_6;-~k%~phvorF`r6ai( zd8T_Ed!6fCJ!a4ss8x)Kl3ZBf_$m-b$efVd7tj*{O0YqfII#GX*TPiA8`CH zXUz?cTbY_XwY5W;`QFu~{J#z1^75q+`#2!k-2H)mV9gr7Ry}0P-pisH%OvlZVRF_3 zc8a*fZ#O{7@%IVF8!Sj@%EfyfgV}(1WWG;Z;oG~Fa@tP=xv5~uES#R41T-K8PM$yVZ>F#EJO;E zN^>-HK3u8oP*N?0Z(0EJVGt=*GquTBZj3a zQ2*w`W#JtR*pZs39cMdE>oU$*ly1*euwUOboKQZt**+JAu54=; zB5|xa^1oDFS6&NrK`d)%95h7V>Ik9yad~`hb$PN*(SHB1{F_)9!H1?6NqHv4{1xfj zY$T3lc!VP~;AqNbM*+X>hmr(nu?c` zYxkqQvmB{lqo2Q7*7jSl?nbw^cU)U!GwZ7EL>PP9@*#h6ymK^ad*M6_je!B?r9yaW+K$@p8v3 z?sKX{B|8vsAGtf8aLp<=?r_z`J7#eDc{_gT&odB|y9hb0R9O?2Dh1|FYa=oqp_BR- z0}>BZiHEJraGUc^my!*j2wP>_Iu#9;9(sXa`?74u$(ku=9)JqLuXGRUyp5tw+U+WY z@w0xvtz$H%NOArq%U07OJ%;}sCY-ziaajhH6zFGnqS~xs zuvA%!-q?h3Z{_aD!Bv;+Fu?ic@5sPa7wl*wDE|sOiSFy^dG&ww&+Pkg_1@EySyyl@ z39(-u0A+)v$Xsf;&#bFUV#vO7zZinXD6ZrJTN|-q)8rD zu}C&E-*`?mu;YbN9ag^Plvq}&!_h)2)f=kx#|76-vlTAP$kc~PE|wZFl}9#yqkBsi z=@^Im>j{CX3zEI&Xvf;Qpw6N*7c+5h5lAdGCRQ$~^c#%q`zMZo-wq&(q2on}dGsZlXLY8oM}1hu#h;$LD>L<}j4`quJ_u`8-C z(IS?%ognx^K?^HlGq_&Kp^1xA#hDKFp68=KGDyqGUOF__(Z%zcl&0WVu4v`$XNc}v zKhNV=`9SskRfp_!=xSsUd6^os%92vMAc7CPf+0S``Rn=R9_X$9PELKxBpYkenPf{~ z(A_T42s+HVu2f9eBH2RtmOP%s3s8-5q|?^=$!skJ3~@~yVcW~`$>kDxwCSy~FWpcV za>_l+RCu0|e zG?uK>$0+V3CSrO1jHPv8fkohr!1C=`=8zo>2kp>0cSvGflqBC?E5A(AHP=laJdBJA zEQC7o5*LPb^^0U~g~zi;8v*J-x{S9oVcos%ESh>1} zfsSmFxsWy7)zU#a{^X(G`9C{I>qW zm`kKs*NdCc5;0K{L~rqhSdU{Fv~5CT8=N64pr|-3NCXqOD(1)j#Z-jL3;&zSrUzyY zawJm^`|o-$HQ@|7$_kP|v#0_Adu$7Y z7ZjY^4|`kN>HYvazPxE9&`6g|&7LWOq$nQ(RbY^^B{DiGd~u&5H(Ge^x1&B6%OKoZ zwCDhIBg#yuh8_OWpa>&QT^Q#VgIY7N7MoD8{g)YmfW(eT?$z>3doS**vlK9P*xN-2Ow814yL0#|)@}tWq<4Ft5 zH_vubh8n21YyYR`-d~paGZ}MW{W;VY; z1)YclieFf1`&XAUgYdYyi2H@{Nl`@q7*-}LXc7m21H>NegZ1mIMNJk%eiywumLhx= z3ZZi-qRWG*49Kp9hTDO}fjT!r+pB|?4}s=}lHu%Gbimtyw`fbf2=PVH=Z4%+MKpf% zk)3V9zg~WU$ZGqs?}?FVd}eiG?q4IC@$@G*D#oA{S;A1W6@<-q_>e>l(?nj28W&1t zZR@}5s4P2g$%l>lq#;1sU3MIc_2>wmm!w%LY%5!U*)tV$qQc(M@0byVFJtsAzLRl; zl6802ve_gB6J~F00#-JQU{0@`$QUX+Z*v>)(>4h6i8=p{UT_k*xD~{=x5Krszn3(u zAGo;lEs+`%gMz$)qw!U-@!9HgCJ@_9HKEm;?!713Iu50g`B{n^Yywryrsp3q5S#9O zsqMPo#)odd;Qk6aC&jcAfc|}tcQ6s5 ztYI8(LhLIiASY2qqVoLJLQ637P0go)?U9sd?zEE-2(okj8kc{6ZJlIW?Is-qonK$w zYB6m0%~ONKWJ8`B(KNEefhuuuc?I?usTM+`4ITG@QFmKl2I}e&VP+8__n7V%4Z&&p zij*y+nNcsBesE9mvjvjm58-c^<@MS_u3S@cz;RR-oknvK9k)?(u)byJSI zAxR4MDG)d7QsBSCy>3HQHcuP#){$RNLH>-_Q6D#9vwFXlg>3&T^J&enZK(?nax+tf=9U!c2NHs0v5tun#~@ia6ZrH)#!^cCr%!2;ky!_gs z_Z@OE(w6B;hgL!cq3|vql}OlU4sl3Txiwo-Z9V_vm>4T}$U zt#Zy;K0iixJ*GNsqoOkDnOTx3HwrsuB9h9o~A?AP)EOl`40_5BGYPhIArh_rW;u_|l%AhCV2EdPO&`Wp2@$`h){GROif)qUUTuJ!e!`l~AiT@sf+1I_g zTbnZJ?`w4Se7hwJsvtyE1+Um0Jn_*M#d2Ng9~Xi<7c zxtiM7(Ld3g_jQ?XdN3_zJ(~%t-CyfuKya^%oNS4>&r%oLn%e7{A6zWV0 zCgX=Z^z=-osGdAFu^FqkcV0_4%e@DP(Jp_21PUinOne?fBDcEh+{!g#5Ry1s*Xq0gr`euRR#{V=XCu}H*AyX3q+ zs-ZEbH;#mYdHtK&?>}M3ZGwon9~WCYICd;-NCUIJ=&kUc3@(WpxRF7wNHd3JA&{>a zHOn)XF=q1#EWF|;F4`S8el6qGbH+gWh6 zW$9hGa8BJ+mT2#sPR@|-2oAnd0q?U5lb~6%XA1-?`j6cxLFeUvl?lv6c^nH}90(aKv7D z96DWy`clLm9F3FnU@Q+*!1DIvg#O&_xc=5VP?odfYEp}P`K-#3Pcg0n7QJ%TPn z1Z07lF23YN%SHN^{#7@pKg`$JVpVJ<(u z&y4=?+AG0Y-}h)oQ=+X?vQOb*?7M`oYZeSQuL3tvfp;C=J2D}~=d!XsgNm1*ZGC0& z+uybudq6FKD%#9#T!UbteQ$)yZ0dZ_$O{YO=7tbd9$&IPetfw6l7X#Y?I+ZrRnYLvfS^Ceg$g&=7rLZwdY9k{N_V6y zXnb|K7VHbLTzkF4_$0tT;1@)-(!JyP#5On39Y^Ws&sBRN(2U$=-d!;A(a(_(+N0=~ z!kK^^c)K<%lKN-Vh*-z4*o4_Wz~qIKHI)O2t!EA9RM78PKlKma94+5QU;HH_W)6oL&aVjXu%+Bsy!#=fWQQ}+GN6+YhLb6kTx5;dX%!=8g}~hnWONUm)S>m> zZ(BskcP^TPd_7)UsGK+Q4tUoH*e0u#mF|ewP+WIg4)E6y>mJSLZ@h5DcZA=y;Uz?> zpt*hqwwn+TTPc-J5Dc^BNc`lD!fXaTx} zg8$rozjjAuTU_1HL8aK#(bU=4sMLcA38TyjT17^RUK_3ol})zGN4jN*8)cPEw91dB z91Eu_ORG!(^JbJrfZNhbGr(;brJ*fa3L1lQYuG+tsI%eI_>tT0d`>3ebA_11OcBIr zi69GJ4KbKS4Oxl9zvDtTygH;#OM-fg{kRuy<7Rp!dx3&@aVn4{cgEbIG5!%Au(k&# zs66{9JViuTO^d?60xDi1-i1TGY3}yS-(Ez&FNNyW68Te;w@l*xyJFm1pMq`IDbNwr zV~~H^dF-kfkm^QWNjbrDeW5o|L_a{)T|M&2ggwLkZna&Bbl98rYTpCQ6oQPmVOoB8CQl4o zk_kK!)Mq_L0N$2I#L4LcT5_z&;Q3;YJw8mNBiu%w#)|8?Ul-Wd%DV@`%46K0u2&Q^ zs~0BvX=Wz^xSO%4Crz`p^x{Rz+(XzGQ)|Qvvws!V6D8lG$30i|Ub@2Fbs;)% z3SsgrojTA7L3pmD)q>z>Us;9l{dSIfnBHqF^RkA4EZIFwhAJ=OmH#emCQks;EAes> zCj$J^@3j;WwbJj4a`pIhoTdEv9VkJ4H$bc?R6?C2l+7>dQ||WyQZD#AIv*5Mx;?8m zxS(*MC>0-PW9M9TmXt z$jvwtPdl_RNw0%7>O`9Y_jHj@~E9`j0l2^wa$v>#;VRUD6DA+RUn13 zN1wRtCW^aTZs%Bo=X(=FOFY+&j=D{|mMvtndvL-5rvuz<*{{#Kf-9YLIvVKUxC z46L;d$>Kt;iIy{?Em2qLRa}t(G!0H0|lJBQ7m@nQF>7YTrehLtsCNW z<8x#YI$+of%eSCgzc5-JJ@;w*5obmYIP=~;vAyO3VqceqtS~o#Xw(8 zVvg@Fly)XlZ6#Z0=~N=YznwtYpt3d&&D~%#L+Nvy<)HUoU<&7&oNLPB_5iSEl9J&Mbh<)%{Gkyl)z9Saaa4CIy!Uwz) z#x%98n79;vxxU4h?OE*HtG;rva25ahJ3-F56LcA^;Q1zTVuQu=mxwd4*L-AcD0*$s z{K~lD0SL(%uF#Gx4fpX?^PQaHJ;u@7Ct&_BM$3prDX!0Mnz~Xx>e}K`g4d!fP|75< z)2EhZF-w@Bo_jIp?Fli@Joki($V=xdbzb zbG-<=gc^t;uP}M#N6kkxp>v*7ztwh;Wgw!4)+yyP(P92w!C?6{iOOT!HDV?s4ieO1 zgwsmE8CeP!z7S(c)guY1&B75P327J}{QlI4QwHYy5}y@`wmKq7v9nS}Rjl9tcg&Ex zJ+WJ!GP^%$?P(3B)7M8vJ;u)$6j;E#2BW8hg^_2NYp=+&?t*=Z7Ab1^N||r!Mn_$C z?)L?_p)Kw>K&UCBGrUZh6%CR=QPD!sKqn)xih0>(_6KN-ga@_j8(#U2%lT%<)jz zMdN>QfW%uO84|^3`N|sxo)MP~*fM5)Kvy9(Ab=$onKaBHL_6qPw8+s=-LH4Zj9GD7hv!|52`$9k6%taa+WL=uUQ?uuG(pP622h|g! z+s#4QQ}+{NI?I^|Uh>t(B4J)ah;+J!c>0$45wb3IU`CeNBFeT2v6KwU0x)OV2^_kf zReptRUuVfDsWV6Koi-`HgKrIhE=xSDOIl zF`p=198w-_xBwvv)CZN1Yjy%`Rj&-FGUl*Fr^-dpgNX@$q!v;LNg1TM3E{@v!Y=8x z*mHSN&x93bj*4CHzemO?qB}7ZCNqQZJCTrv(S&XA&^CKz z1Pd%jEm>n|d-D+A<56{$} zB3r?ow07q9V4aoFJ@u#H)+k>lJB#kH?z+EwNOoX8Pj5%;Yl>z^osCJDu*;4g7d!o8 z@JwiYuO4*~DG}Z;^o~q9R9E}(gMT};`A1SBLOl{ZQfn|{Zo0!HU(@zj{JK0c4JfmB zG6wDZ0$2J$_UHjOjb<0q1v)TYivEM~@H&(;d^m_N)7zT9?MV z3iEA<;-1{Beg}XT+#;@U8+}5zh3UB`z#`VcBmqVq;J(dEr58k-9~d@nei56%&Iz}^ zO)Evui3ocUsYEddcip3_6ZT=4!rBglA8au$c##L`l6PTqg%b~4?n&0^y;EGFf1<^N z?aVXrb8y2cP^t(-fyv@Lfm!VN9RA^2Dx+Rv?x63B1)<;dm`K2+f zkLK0;>H?51Ec7-B@{Y(<^l0q zGvaO`xApL{NqR;h7tl%dFsh^awVG>+R1JB;Pr*s`IW`sh?|Q>pf&2X@-y&YtOIvV% z{^XY0&%haeGKq8e_bt2bW&JHh`t3=1i)0OQTY1@B*;H3Q_n>h{7ekS4uUgBpRe+*h zd#Hu78y6jalV)AE2Q;BF&Y9!WsJaA3$=iLI>M_uHXDGTSe3$Fn{!(9-$t!tiQD1_R z@7&U-D=YXj{xH>Nh(dcx!}ZK0i% zhISf@-?pQrPScXm?*Cs~R{NC};C8v$2*udAYF z*swbeZ?wvHcS-VX5yF8V>JqwL!8`Lpt{?NB@XQw%>GR(V;CnJ!v@T`{C2eKj$}u76 zZZ(Q5JH+dqccnff%MZjZ?a4Z$UJqoXnB70rt0W+t(u>qcN7{`yyvaVagOAumZ)MIV zs>vTab`$MB%^z`L6%F!`UvJUAvs)bDQGmeJvt03DJe#?v>hN?Z{<+hPih1)-C)=sV z1S-Ez-XC+to-`DZ`jYz7+m+-rW}da(V0?55mcXhLB=BLWBeq&-WW{m3VIp(aI764~ zMC^k(v)=C+=?!`W`_X5CLsK|V?4{*kx!Lx>g6q{uObYzt^X!%Ow38xK|QnW+MpRV$%LC^Z~1VS&_5|uWaRAvpVM(suHO=r936G4u)u;NM-KB z8jml{(QUJ?{U4FZZCWO6JV-KMc1HHXnc2DfvTA1ScCCB?1y!$b=l9@McPHv-=OY8Y zjQ!Aw5#Q!R+z$$?3N33LJ=8$B9DDiVp6O4t9jJNW1`r_LV;`$`M&5b#4tH-wwR#rp&-#Is*c!p$ysHr0;M2d<^F8jN5p&FC;oeD)AEeYaCuj zBYVnP!aiU*6(m8Uw{{aw+@1_6jQ?rmW@0%+N_95r6+O;b{YXv|izZj;Ay7jxU4AcB zNm&E6CVnf2=yPw;DoI)bvYAijzHEsl4KoEGl8A3uxoZB(k9NR*rX+lqtddgL=(^V} z^<{r%*1Rg-+|V*5@5B;Xv&dL)DHf;nRm}<6<&~Ua2k8^JaR++%rG3rjv(LT4XAiTN z@q59p2<;c4t0>|w5H8H+vGB zjo=6Kv97rR1eDR)(?N$s(j2Lw+4CM-aRCfLaRTqxPNi0v&8>zJws$$qm9ln8ZPZ8+D?yIMZpC2G6GD{f_r9Q_UrO}r3Fp4>8St6iwDc41%c;>@rHelqvMRb}d>M2-1o=M7eA=d`t|AX1{A`i|1!FGkv^{x8<+o>qTU8 zr5fxerEs=>I4hB2@kno|F&tMyCd^a7GggM6(2eO@y#m?o+*4Y%-oQIQGhDBmMz8Sm zKzF{DUNU?N&u|g_eR`^K?Z&+(@OAR*=^HCgzs4&({u=!5u2gIBFH4D)QtSLzf^92A zx_SJrnf;WnzEpf~yGtt3xq@$JR6TWxkeI9e8Ew9-tH?k#bacJw_qVVQx)vX0KT^4} z^=$=mE%0)Ma(JY?v{?LU3+i&a)km&BIk|jGKg0e?=0*!#A+R?5baJvN^%V}0)vm6i zrW&WEh$~$zbbpp?;!1qB=*(u+(;0!#E%9cJx*CboJKkFjRdbq1+MR5quG_H}<1dkC zwG0W;)Thm!;#638aM`DFLDVx*jQgC(cKPFZmQw@_4u!!L$>0rSa8?*x>3OYH<0N&X zIsS|b-3+{tVq2VH``$BT(qm-Ob0lpzlJ*HwYUZp3Il75RR$jbim-Ct>P+WoG16>MB z?7?W$(WXU9(@uS2Kpp?P(x;)bb-gY-Mk?}eMalgPOD&#@j(P+LU)%PoWUj+1r+V{F zaJF;@D&2>WH_? z-+Lp{khGWWryGPAf@>SL#f8nJx!=)6)}|w^g-)Bx=?h)Eq=bFL!<*mQCx@$RU7NUR z%kkDCJ)GmM4T}eLb9REgo{IVQuejv(&~M&iHbO_FV1$91N3WLtNdc4 z6-k|C-bG3S+F$!B!uU!ztRn}Y4@39JjO}FVwZAf0+ZpH-?c|NSS>0dcOpcA7I+ zH+^T&zrOhi4|M(&Og60U4gl&~pej*6RHz@v`wwj&2`D)^czW8pD{8R`@moK%^ze|{ za~YJy!NFn0arVaX_Qugx#wnPBAOA|9(<|#p)>Foj9USY3iRojpGq28TEV-$S6Es*g zmwY_aQRO+=7xVI%!W)NQ8RvW6=j1+uz;Yu>MP(d@?kZ^}DbC_@i7yGS(X<8a{MS>Pz(Fhzw1Q>vB<7J=1Bm=++PEU~VV!KXl=KWpQY zUv;k<3IgHbf*-gOVnbu!esY(cB{2rL~2%E!WFVfgFxm-f$H6GpYW@< zQY%RPHx`e(=Fc`ZeWue9i?LSS8#E5WOAR`4wVh_ zi5^6gwGO5(hrnHXigxq&zw1_i%a9Q@Busdl-)TB(R=ksqd5Y zEZ;-ugN31=h>K%>eAoW6l~Z>gsYsH^>-EE59koz*BE<*SJXdKfdE-)f20m|oetEk) z*)5$Qt@h!AI2U!JhNom>BBS|%Pu4iN=&ortH>s5;e%~;Gr|=>cER|e_l*b*_km;4_ z9}W9EDq>aGy48>|g2~szf|xl=jz~&PW+1Ep*WhSpM9?4^9`5z8pL5cgg7L8%sBa5K z2w{8NqI^l{j8jSw!KF5IrzrBM>djmg?=ES1kHcw<$-Y|>=j*twxF^Ei3GlqB2WzSp zn!1b(*O-HP;P&4lb-gSrMd%fFO*j;bl2a$+GH$;OxlN|uvhOX1{q$|tOIHte6$f7nzTr*|Ykqy=9aw4g zVBw=VQZp=J0T5}7iZM?$fHk%lyDyb1vLhRD94^+EhcUjx4L%c)P{k(97DOKMnge(ZEb8{?n z-(R}2a5a+GwsPUi6f^lF$d*=f0zzYZ>UdtOAd4aG0I!7Wn2^76&sKE6hsgHc-pki~ z44IkDze9y#O>LVAx2>TC6yFP3nAWh^PH)^46cEgTH>YQRO0bwXc&*HMQ2ZQhRF5_O zSiRlgJteO$iH|)cdqt?q=VzRsNuDB1dkeg>OjqB24Vk(r-9z;%Z^xmdG{au7T`y!S zCQ1;AfQI$YvRAJVMYwjh#hx-E9&bvo5+8Hurur;;Zl_er;7G~f_=XLp6zR~N=^R2H zQ+v1tz+Xi%?aWRKT>6ds=P;nGrhFiK2?YAV00L3|cNoCj_bCR10ebz3XQ|(O7A6uk zW7?u=h1r6^zHG6$)azW+x0#+aLM&-16xBP~5~IJ{aCD8`XdPJ@D0j?Paw^-qjSZH9 z@9BGaL3u7Ym=2m64~{$M>X%hImks0_ndgsF2CtnZOX0(2Hcr)JJZe2Qd}?-N&K4`B zeGuWdL3>v3NarQ2Ec7ZJA3p4;yUQpWmQ6$_x(#KNMy4gptv5_g(Wsr|2lLGB7((HT zir`lXNdLnCZ4x=*ZR^8;i7o_AE9&;?$!vrFZwmU8jPyM|mQe{8GPA(_D zT@rpTz;#-m{EWr?Sb^k>I}9$e{WcsfzO6xiW;t_@!%Tep0l7;8Qs?kg9A{!TjX`CO z*(LFjv3Agd8G2NV#>$vw8S>2}WL@Lt+{&g_fc*?9$7y>boEF&{rc5WYT?{8}aZ@1S zoEKES3)aO`EGJ6CM<&IzJ*p@ck8f)ffncxtd>LB4={~yPS^p{Eu`AyMs8lk z%^NP7UQO5pgX}Te#Lz(c?cFQ`6@hzCR_~+~PiR;zha@jv_NwHRPg7d`>T}SHOI5I; zF+?#^9u$5f$cJV43-`NX<4cNgghfV4e(}do`Qf;GO~0{CoFXALrv@Y1L*aTcbWb*= zQ=rRx;h6!QiNk>E!q*2*?##7Kue{7^WCsen#9b5Xc26HwxYWJksflYV5dCKDAgS~4 z!HkY^>}O3jE?Jt%<>!+%&v{0#ii`Z@oa&Ouek66t`@ZgvS9`z2Dqh}+ScC5t5YBp9 zc6jG?4J)MSsb*qjeaRnX7=;-R(P}sw4~-SeOgQugMWtA0Eqv}9FK&+)kuU5_X`JjE zrJcOIYMMA9_LE9yBo|j|_T(3%M#7KJKE`8rSMuDwkGMzalKO@LkMHk}zgjc(jK&d0 zE+dWKQpMF&SFtQbXwpye9Ah&`I8IwuGKvETd*Lb?l^^NA3RP;B{_5)J~_7> zacQqc?qKO;arQWAIQ{N*Q);QSktlPu<$9;xguDKzq`i)KS1ihKc$lU;+TV7btxfwG zzof^9kDZ6Zcf1y)e(3T~lCA14U&nsR**~5VJ}NwMN9e6|+WQHr_MfQ?@WW^i@m?<3 zR=k|WXMN2E*ZE`nilqEvSFkdqoPG9H&Cae?&h=5Pj>twA+e*;j*s%<1C7N`7Gjq?j zPH{BMxcN%TiYS=hFh_}ZkuovrRoAnh_@=MAn|q6_q-kZF7#VOZ-UBUh@3y_;BBW#2 zv{pp&o`#I>29i;uYu9+DzYnWj*$lwWF1$Ezf#uT*&{P+&w}z50-bs zs>w^Q#g1Y>HtV^oNT*nicziPXJYpFmv>q;nOYlZQo$U@Gry?~m@q&#Q`-j%}zAIM; z`-dB1X^E%rs~X*bE_Wf{hVZ_ zz7?N`0-saYyIe{%dM({%dOL$EuqyTVrcH0u1HrWxk~KEhlx2szg}f@(rqbU!H}H=_ z?;+=+RYn`|Ror>US`s*Z`_E46i5niXOp;*--R6QoMDDUb@@APBrJP7yD)AS#3?-#& zfQZo6OZ9%7`#NUi!%fdY1XsO!XS0Y=5ve|Vx2L+=q(%9dOC%Rtd#A^~)BJT?`YHT-{-=~sZ31goOz*eP z{^8Qc*TRK`bfjk2bg&%YRT2@|pNPQ^2u$=vM~9QtOQ<7wa#KYT4!-Z)FYaIEe{oR>B$Lk-0{t-(9-3-Y9Z|1=!ZMg zIsS_{QukfFUG_jTZi{|N)*UlH#jIZSyHB)n%yQnD>A(MEH>0%H2`BQjX%_la;^0Ul zdZweo{dpd?&4XiAo!ARWC@qM1WF+<_!(&u~TgRns;a&a=!&}$JM8TDf4f@vI9I0lr zxCg}dHDMpZbywu}Dv*6zc%{>PVaJQJjA;PzermK)E2ptjIV&zR1N(ISqNHD6didp6 zL1Ew|*J7hetR#;l)cdzxj26YGnT7gi26OR2wCUfOLJs z5^Ce0%KB9XAp#aW`lMFin&<6Yr74>`X(=~;f(o|`ilU$GSi#+{Q3>e20eCZv^rBuW zkH;T5Q;@9IyRRzV=01|&%b8#YG8p(A?Qi!A^Bn|r6n^cfkRppNmDxh*UzTr=&RxH4 zJw!2F4DdDlI`qhlB*w8=R@I#dS*xd-LYMl)3>_eUGdsb zW&EPlmd))4zRB>}edZhA{VE6Yuxd5-1^SlPJ0(AqSOap`r)vbPuD2{F$NdUsra&0} zc-%eLE!|<2&~WUW80nQM7gf4c_sz2>VE3nGU{0fU-;{FS4DDQ1(nb}~jf>pdp*~>z z{_V$!;+uzpbf%saN&YMm!dLCC&qVwdi|EPEkt`=4RrP%Y|Lr9GK`Ye9lf^SbRnS7= zw)PU+e28{~<-2=kg1CR-)>=Cy7O`Urnhc_H*)5l?yq>9mM^D8>j5C#HiC%D545p z^f2kLd3b{+9=^3M?C0_g(dJ&W{T`y0X|MP=d?bpeyzHf{YA=6E@)hBtxKKilHS_4w z+VPKHw4uOw)$cC}2l;(MScF&9|G+P3>@}C>{o!Ccy7~ETWy562xG+aE$!-8-+ zv1b}1Pw00hX%nX;)y{lot-wlI{#f+O+aG2($oU(64RYa{5&-VE7AG$nWqMPP}F`%mVY`pMD9`)PClcH#92L%pBl(!*~03g9h@_RjNJ7#{#)Id<~}M z5dqh|Dv9sKy6ZO7)}?;DBlE-LkYJFAay)d4UZtA)DR%D-{ME<|mdCS#hJj{=fg4Y( z1=|l>7`=zJ;RNJGk|$x_o) z;~x5boA{9PqpeLiP})#k?WVHMy!sxO^{@9~dTuw3nqf!IMeq510>8``NQK;bs?xPv z5UrBy^4g{~W3Y^<(s%2Ho|cQN1~#p&sNiA+l|?l+7sgk z5yY>@q8uV#`q{ELCY3xln3#GA&AHY7oyJa>OJUN+7kZEW1{mAwVQt5VBwOJXsmE3X zT%%FP(JjJHZ9CneSMv?&s~JzDzptB+v^{nAD6?XEwIGbAqF0hRVjC?y0a#W5G^d|3gX%;ER?w-9{)l9oU%yI0Gyu7nCTHolD zj^`7xT&|&K870B!-^9H}^}wyrzR5=kV)(k=S?KXmBOGw8EsvjM5T9n&ziiH#Jg+N) zTV60d?!gz_-r)XGAA4ruo@__gb~^L?jTDUlo$5 zq$kWd6+iMK}(1Vw7=&Ck_@goObR)GmYhVS=&Oa{Mnc_h*g;Dr_#$bji~_rXj<=Q<-ZU&JdFYovG9cPIVl6fa7I~8z zX90J7z-7LX!g_F-uHMjHxTgB&@a=>qmfRb6KHop(+`keNSddA;=|U6&8Npk?=00%M zWg_g_BXfy6^c%#xe2qeKp@#?dmI@(?<)NS`fAzziA3QO7`q~rM?tUoKb`<1$@m9xP z(8Gb5Z;n8ozA#`dkRwr$V|9r0oVf|sfX2C=5b zEVI%(FRAsU3QNmxJcG{!b|Q~PwhugP?^t)mAun3-})fj(B6*u*dK zN?wH?xbu@1Q~ub;eacL}@>Qw^BasT05tWZvHNLPVaz%)rv9tF7^9K)y4{> zA7wH_()YQSUh65yM`af1I%Q_EO_fu!%RlGic7oT0`4e||kKcUk@z(9RdWRJMv~8_J z0U0N?!$kiJ3DY*UVltr^&RaijH%ii}FsQhMvAmEd(A5hbdoQsnfhbeqTl9EnsS7gb zDuLeb+KhDP=fDZGLU0~(ql_SN?IXt_dD)ZxOHQGJS}sHwS@j%l zjfjOKbZ>r)8us5FHyLyk<}ZmYA8cH#ezP9ZOJw4CTs#ukf?n5gOMzcI@o6Ja;SNh^ItyH2-ly<-JRbOYiTuhiZ$tckA}*ts4LH{7t)cF{{@m!nw=KOKL!G`Vha#(ydL(NE8d!x4##_`$hEmdp@Z!#$NT+b-DY~eO?zavI7=z6u5M4$RPcMgH?i7J@y*uI z2em7%_4aqpzQ6)hrC7gz2q1fq{@s?&aj1xoG-$xLR6&LhX-CwI2U|4bsOU>Gw?vs0my!LUGwRO(KTAK&BrM!B{9WKOk$40T?Jp7d zjNl7=PLwrayDanc-sF`|#(lzemqdSj8{f;D8KOz_%MI8>KV;kC;`N9V*(XI~Yiq5q zszti!f6#spg-I6B%lF=I*Pvv%w3|6W)z$+4sIzTMLpgPCcWw1$PvLU4_;cS{OWi$= z%8jxima0zsllUNbSY&JE%YOftKaL)j%UUp=N+~ZMG^Ubu+guE9RXAQ;h z1*X`7o(LVktSTg+G9$k-L3VwD(m9|NOOCm!o;{#m0C5x6a_2VF{cwdip`)BOVuLVT zcp_)$!)2>a#N5%v`iUSVnK=vC$4&AS(+EFFF&Eyp=Vq3 zEDm31P^<5 zB`?Qp!vB0YUAnrChdG~MA8`wF2!Yz!ee@v&UrNB4=pzTp46(puc;^QclszN@|3E9t zBuT((VB+(K^=+yFUA|xt=mlU&1EwweL<)|;P{d(iX$YEfH|uWjE{gITkcWZk%96>! z*bw}4TM_wV{&awp9?S>`tif>0eo}(-Fvf5ya6cIDoO94((FTyvgPF<#Xu!o7tspIU z03+ekqa?I1!TqYQ8E9W+xQyV>7A9k*3waycmg0^RMDcX@if^=R}lU zHv~JP&weP&HU(#*TMIS$fQc}esWbQ?#egc z*TGh9Xe`hS;)^NYp*h4EeNIK0qa7sd3iK0eW!Y{p1c7P)0@R-WToz%8@e zzLttB!6ebb*%V9^Er?HFARf~&Sv2x_8fJqQ zXlG#P8UTSau)Anv;4eX77N&tl0%u`rXrXNurh~DXgQ=p0`*Rma`5a6ijgZa5?w|$R zd6)rOsGGk~Q7^zW(TLpw4Bc)(_QHi9!~#qKtrB0ni1l>wLe;f+QD)Mm3&dy%ridoL zUxHo#*SRXd(h^KW=)Al9duI~$93TD340c=p&pst^dlg0@b8hzUEx`Yo$!z?`jO`yA zg1|NcMyY)6;@{f`|8pUY_>T+BX2LBEFoXhnexMF|TNPkfhS5UvvA}@zGK`h^+^G_I zIW-*-2*gMO0-^r@{mBe2#|HzCmth>}lzcolB)klcH9TVkULj#bOy|a$b^f0mQTv*6 z*eC~on}R@@!JbsWr4<+-niY#X+ct*U`P3r$cL-Wqz6kHsD|dh8}tV##I!c!U0%rpt$ELM#mxLjN!*d9otigDiPfur8(rp zP>o?=eBOWMMD_2f=|5%?+!(XDRTw2Y3&-bi@AG0%{j zb2P&OgHj?cP#y#d{bhwgtxzbsNF(I>TaBmzpyDzJME^%)oY?$>OeYi=M=EeH%E|HIt~6ap~q!I;pgFqN5mbQ6{G^A30A51O18 zV6g{7Pr$&7Jyg6(Zy*O{hAw^kIlvnPEbYM<&X*zp{yqx$ngDR@U)%<_&Vk%Cz-b>w zk2Z-s2U1#qPx}`c=sE|W9l+{e48j8xpfLh)9b61)x6Xl-DZuIAB5d?I@M;;zKe+JG za}Hct12#|qx;{D9J&gHyAW$%>&VN=rWCIXDUa%t7)(GFC#)Dea82#s{XmtR%B2jAs z)JP7bAW_c6eghTAi!4u~0O&(76gWX%%oO}zb7C~`L7)>d5QyTB^kG4vfcznhnHiNG z)w8`0WFjF5w8#Piq59n4pUmK3A}G+k2cZJq9$vKV$3s*QZE7fx42E6-3>GfnEffrq zqXUS4!&uNYE9QP1wKNVIbQ=9j$n*vKR3>S8F2u745J4$nW6ukG6dTB z`aVg4K#)w#`#gX7&J3Z~>RU2tnrr`$+7+Ltwi4&vQ6U2j_1X4f@+m{QmxA21gXfbzi!RCcQl6NUawGfi_U%7yI9o^WI!uiXt%s_raGgp;z<% z;7hcS>J=aXe2JbJwb1{k%YTgQWT3ONl@%D^+=rS4Ho=#O(8i}IV<^)q8fFG$AeXqH rCa9~^2^cHz0&Wef0<^`)`V*ldi(wr$&HW4`{8&ljM z{ShpUq$~#s1^?y$S07tdJQ4+D?|%gQ7Gw`wRRT5y!~d%Z5)h>Sl^qZ`3H}i1|K*Y( zDE})vAZY)~oj@@Dzg~y;6(9P)fE#uc>c0RQkreX3fEMNW>wf_zx*^H`g9JC$HRS(D zX?Q!?B8jhGzPLjrsPKGG8F@iNuM1~W`k(h2hvom`C3zqr{u?jP%k;n0euAt2qjW_* zVgE}l$vFM5yqpsC|17SWE-?SU!@6_5HTeJfjQ*%Y{4el#3HV<^XgApZ)k5)j{$FMU zUj)eiM&bHD{?CFD3`c_epFGm+y>j;%(qFz1rYF$-AqUK zuZV3YzJ>`f*h`sTG)Vv9kCx@Nj8|j|wREzKIHuu+7C-VI{uaha>lk*N{`DkZ7v2SR zV3WLGss_V;QCn)ouKljNgK^WO8Q3!o+CsVFaT;X;0*2h$x>& zmUD>({#ecA+(ING&YQ$x2R3}qAJ}1kQI_RZVU79?>?C3qhKaI>M#k4i{RdOj4GqwE z;Z;hY9c0yi7kgF)MOY1*HheE0@JK&}0#RAB$V85SVX+B!?Z~rwlN6XN+nO?4>lSITkVPxtZt>E z5DN?`*Q!V2joQ$b&gEy{nu7_-B?7Ud!R#s`b=YGK+Ia)AAWf^9^wC92CxQc;25y5$ zjCyXB$b@=sok+EM?c#w_aAwiK2{YMc<@4>dyyYQf@`CU2?z-jH&fW2htREeEY->eup0oJP?Kmyy&>`H>{ zXLql_>lFha@Os&R9eBNJfDpW1I-m)=+=T=0CiEwMPVdr!vKM!8$#&~ThViD*3(h`oJmc=GqS>%$b(@<}8U#LiK^ zEyd13+XhrKrqudzcE>b#>2F-=Z=#=)e_wsw^``qE4ep@zo8L7AzlpQGHDL?c+z^BO zW_Gneesd-$EIS6We#J7MBESeU=)pJ~3Y3=2PZFHW8q9(TJ6M=c5q=8E%~5(19;98Q zEI}_DFwYH=fHFVBT#;;CsLe{gXpsM7VFh-ZW+nVVg)(!i4C1q1kr|r=TUf40j8%c% z=4#uLW0D2x$LDXELEhFYk-U#o9=?vhStGM+OBo8yW0G4&YOBW!0E(R7eqW8Y1g)11 z#~{GS^UiU}fei%t2RmTo1?SY{z6OTrTIDe`a7-aw^sKXsFt$~=33qxjU%DokERq&i zu6mCKP8C#T+MbMI`HTVSjNXtMbr+{r&oEP~KE?_vw&qb7Be%q(NOP8?*J1oYHKyb2 z22UlG51;U}o zyYOHHoSlEb3sPFRWd|uO-6Ddf=5HB5Q;W9*ps9sheh@IVbo&*=G=ED5`Ybva02|~V z`~e#j9UOqGmYf5VwJbgVBx_lB~Xa1I$f+ZDdU+sw^XYm#nl(TTl1Ik&tg)Z|@8B3}6 zNt1q&g@0A9i9NBb1~ZjhZROVSic6kY(A zbJCVoS{G}0kE%7u&Xomfo`4DS7xKWa^JN$dE{k+x<&0ogiHH(=ukUs(R;)=8RmRnDR-mB?f4Bk;rkTp4-M3yyx#gF=r9F|70c2q;IpTPcXRVn# zQ1bR2WkXb1qtI((%lvL7FE!2t9UfnU zhse$R?5vad0Yb#+AR`SZoy~$kFi8Q#M3=+fU^^IKC2?@DSCqnXtnMuD;mO_AQrb$@ zMOsTy%L;&-OKE47wYr6)bJR7}d;Jwmrdyjkt7>TVme}d_<_JVIprb@oftC5+rE0~~ z85VJR`b`xrRz9u@K_d7Fjje(?n`p@;4)!K-msm=*8_LmQ#+9~uc%{bERr{#} z9NfXUPuNyv#XL}W^u4aG@h~uU8>7F6M{%`7TxG_3k)qWX7&SSfBP`oT2aI7V*CT57 zBL6aIZ)k6#R@qe8msM4p0^LVM!PjT$HpNTTmg1I3_w=%TVuWj5AiNsS6l zzDNzFCDkl;zi&vv8+3XiU&i_(Ef4H`zYP>|+ulZIhmaCNcG}O<=V*moUTK$!Ezu zB(+WvPah1zCpRy$0EKuz6SUDqz)jgRm{r;l-`#&C>1k~#<5!g$L{Ghg zzu?Elor~Kmf`g{h<53cKJnuT<<&x3lmbQ(^BBv8KXKmqpIl{QcYpG`N%Oy#Qs1J1# z*^{8jiAU1+jQ|dsrtEB@gPP2fIC)D<}R)Xps%<66r%9>810U zSWxpmFc(N)0W$jX_=C7+1vE3(UjY#`0#vy%MYtw`HRW+*W%N{}1*XuGsv7fL_R9H=E^*V*W{xE~Lh$&kD8F#G^t6ocrA}GR0;K=wa)IGA--L0b*u%uCWV7{WqB<=JXUZT(l>s{U zCVEJ0z$wq{vR+{R;;6nuyx|!Y$F5P(U_G`Ajb^BRdPBHYv$h(J&Mzt?^DkN#z2ZmT z1ZcD@ZP65k7lLr&<5lBZi(oPn@qYZ)=?Khwkz#3 zWI;S0Ysrrc+&ipEo!56yTV-GE2WY!% z+-=0Ie@Z}A8vX={n99LH3~|m`jwqPP+w}Hx(>7)`6!r{CtNmjom}ZSHq$LwTptsfw zOkgeOY{?@tarK)vpW+9b##Qg(D<7NCh|mY#vaqac2M@#Da=dY~zD-10m(d5jQTRF6 z12-S56uGE+NYzLs5+Z)2LOjD$M>tR#!J?chZtPepk%4a}esHxUJmkwOq=X0T3w&ww zE^v&v@55yzhEvtTm)1SLBD0cmm5ed!lJu(Y7Jb;eUo|)=hoC&MhKhL&i1#C(f0Gyv z#!A3MKl+y(%#sL&Fd>!UY2d57mI>x21JDaKWuzr|3nu+J0BY|R)_iIB@55a1Bp2)g ze9ZcI3`$wjU88KJB)WWMsSCC#3N?m^8E^E?LA)&Wx^y+63fiLj;=L8?AH|Mp^R;ok zVn5G9<6sF*l-@BI*(&(ka;yFFXAOu3s*)JB!tktI@YvS3+p{MN7;-{tAx!5%V2O)c zK?5yRp2j+IR1%gDq1dk`Fobs&waUqQx-58Pkte!8tbxWMT9GD4wEwU+fXbqm+xR8;aNv}XDj-v=OQaY z_=)&&I5#I>Nep%8EVshlSA4>G;1rqh1ZsD@3i*TWz(RPfgL8KIy8-&hpvr3h5_$f6 z!@ASAAY5Rf%zPqRBM6$!C+nuL7R{8JY;ayCF;m_}4aN=;hIBhFaP<33?6)2b)uy7C zKk>X{bx&XiX1N$FQp_Br*}oZfjh0Dss3IS%s+Zfqd~3dE+FWy)n~HBVV7gx9vuDSM ztR?QqSd2ZXL^SgjX{L(!_RwFXV*1aq-fDLSb@E4cjh z>>u5!jZ``ou2+Z&W=%jO!?e008>JTcn65!%9ZW;Ch;1L8*QEQnkjWeW?^k|z4bQ!D z^5KeMObg1xN;DlvXs)S5V1MUJBYWg9%W$tw6oHjw`C#KaJTv_rHn$b-_U4V!FtZ8mg)o!EP(;OCAPE6c&*RdJ^+&P- zZ3b`KIBgEExtf!u7a$K8wGSeKN@-ad1`z+Tr;Z zsS1Yazl5c$q8O|VYN6n=aMX*@19K!1V{95;2=a1btif3#f4=s>ETr9iceEoCoX|0c zAuarFbgbq&F&YD31{jB(zO>7z39Lgc=&&1SpJ@xaeS=7*4(f4{qH|#hnw$99@x+ih zzQX>Lm$qMxGUei&S)oyW%u@_-c0w)isBh3>nCDV~^^MO9?YfN|i{_dfERbcrFud4x z)KkNuQwMH5O^G55>wg!`uS#LpE_NV(E#_L%VQ=Fz`E6MD3NVkhuuRb`m-z1j#wmy# z_pSyxdd00HI=@~u4FkwUMjtLJ4(&^aZt6wO$!dxzR& zIrjZNkle{5Dy^;@xFHZ#sZv2~e*Vi=1ovCjn&L0ggzHTF?&m-?k`x}6t`ex%*_vEI z<36dL)B2Pp0hsew>lZnAtJRh=$38eH zS&bBfd7-o*S%-|z<`_i#u^>!BmSjnaFD-x{xI3?h&Vl3t9LK8 zoXNNK?Wd%AmvUP9FX@~+wgz8@L9o%Tb}7{=9UDnD+rZkPK0T>m0jKq8>Ar^pAN)r^a8HpxJ|j;Ue_-Lu$D-Bb^a#<-rRf|nVU`k(rd8$lL zg20vg14!38KOFud`SB)PhmiT^^Fz|rywCy4w2*lAB&pJ()D;?y6{)5I1V z6mPAX_3Pl5`%9dC7(QZ>D6v@PL--=(SV-%)e;G_d4;7UESd_oG0u&rcZjQth#F%RgW5}sz z{c2+iTMs!7goF38leK?Kb+)wYurw&DbrfSuvb8%}!y1(p8Encpkyon@TSVXV{~Z=Xx+XSI4^dYnel znE?hC7BOaTZSf?~>7t?1w!nmd&{~z4hqSZ2Q{@ zX*xJMEr@>zu>gwIpUt>!x)pmLF&bZcGMfdU?L|h5{?n$@F=b0%IGa>T6IU7Nudh%0 z>*6QQp(oBRln*UvpqHnlK2Ju3TK7XdrvvI*%>kTa`@fXRhfXj#NEzC07)D%oyAMO1 zeI3P~*`s%E{NEFX!vmG_=p#bSTME>UGzAaucGes4+;oz~tdR7<27Q@4%Opf~F?HW4 zU1{wOPVw8P<=dd1ZUpPaB38wH#}(1xlp2?GG#&b0qv4|8w;~mc$$;ZeMMqUz_0ZlM#KVIGHMvV`1%-EbrhV}>EBvoc zTyqISro_d-=8ot4%OnkbI;ZLGymPS?G#TvK$njibNl}qkZ5<+R#JbM92JAwMkBxHH zP>u-2j_?3mF_L4MP09jSvq+--!$7z?=Me|T(&5enAZ#$-9R!a&Z3M^r3N#p7qwY8T z;|nelOAJ>u^UQ--oo{_bSt1&$j8In|rbXn_XtpAb*IAgaxApM*h`^%1 zMU0tFJp2*EF2^*E5-YDQ7}#e?zoKktL+CrdvJhELUxDv%E@g}X{awSjb0oNDSi%D1 zsZ>kg1BC6QjPa4Jw0 z@nbhc-FGh?`)ci{tgpD!aBmHH$z`=pKc6JxnzZ^|SqpZ7<8;-36;pkwbOOTFMOk0T z&OupMd5Ut7DezR%RZaPQW16{D=kFXjS8OszZ{G3#1mbtqisd{)cwjZ-x0BQ)4HF$P zSCfUGONyDO_R?RdtxUi=@G4WOArDV+ti>Fii{# z&#{S+%XFWe;nfXH0kW?)2mz;@u6(l_A=DR#gR+(h?%;EFmA`_#e0oCA?vH%zqJwO( z<07uGU34Xv`}hIY^fAL)jtp&)*_wL^+i&T)tC9_C3o-s+RCT`aMX`x)wzFfsQkK?Y zgGE#;Tk)CFFzfGAK^}9Xk&@5r3M~RD&gU_!zC6?dAtXXlZ2)}=PG?nfVJoq|^KtU|qsQz90yV?${z zVtjh~rv!h5Y;So*WR{W>71S)@txmU+_~s)f$D>2llErm;nipc!Y#VG9 zwdgl%&16s1^$g8_(d3J5T={>em#VM3(g7d9{h7u@#ju2B(11!D)3h<-xCVUuC4eZ4 z58m6!YK9&CABkb`*Q!g+29XaaxD|oZO%kDBIhKQf9a=;rInMBZZW0F62BSGdL@_`U zh$XK9r+%}9D9X1aGPgh9=*-5(31l5*4i?`V7>A_yGD#og*0bCj9Rlp5J#W)ZT~FdC zX^JUg@sQkQX_=U3io2RGx$}prgOvS9pjy+N2jeNo=wAspt8+Fg2r8UP?bf>th2~n9 za%hZ!wbk=)DBXVnE36i`?D|yCS20$}Hq0cSNXr+SZaFk=&lK3NhPME0XFv4R5l6w! zWhn43;FNUMo*d(V^n6tfGvu#Ws7&^%wRI1p=io4~9*aFeR1E9MhTEPrTyN)sR{}41PX@&Z4*ygy2zgu_bU{p&rH` z{t%GYBwL^{ZbdL@-`tVBS{29l8-78>H*ah2;8 zvcBe|Qe4y%R5mfA(EP_SqmCfyFAoug;ZWwi=aSHEzF@?eWt>dCpQxyOZ10(D zZdZ(c$}YBt+ss|9j5$V#?zBb9wt)n29gD%oF#4EfJioM1G5V8gm$MXEL7eUKePp4> zQ#@*;o6)7C+YvP;IX#KF__UP-h>UU6aZ?tMJCdJDTZ3F&D77Ci=xD=_sHhUFzV__B znLCBXM-=+vzEnC&8>*!wC-UO879D9PRTo~S?BKJqyvjoMRf@{)Rmn% zfAZU34nEh_g<}|sH-xO08K}m>EQ|$ddq1cWXwXRRJ9TZP94E*rib^C2M1V1S1T+it zS0uNlFPADr!CK8XkPFkiF z#6J-E-8-qDZEOzES95q2TUass~O1#D)IBrk->^ zztou-WXuBEs(i*!$u{5y+H4%)vUNF|qVA$Lb1GX1_(-%aCmi(tLSYohE+AO(S z{&}!v-zBlESkzm8O!0h-@Mh;ZP96BLG<$Sj52z}5RCeQt{)Dy5g_y&DXugeGZjQlw z4RBn1&dMfqCraQBcL9JT2Z5~Ju|3Uwg>?>$KK)WzOM)qIjo*ytz`*2Vdp+iHyE@xdVFw z9kdtN)A45KGo~0N=Kk0eDVewTby^VZI$(73<_-dTkyG_1arzGb|og_I9JEHpWFmxV3G*?Uclw&{BDdIkJ+jPxE^p7+? zYPFqnoC;@suzv6o+YYM>At{)l4gl;-Y0HvGQhSAKE;?Iq|qak+syneC) zo6WTo2l1w^gp0P}-Tn|_G<{J-^1Ij`3SzNTnP~}^xpiLupQbU{Tv*i9cvER-l0Ogm z*t^WGxYz{crDQC3VjPugb@?xD;nWb<8g)h1^R{#LXfcHzdYrI|p}@9+^X$Z@_3RF< z-aZ=2Ku6VPE~*rffas=55(8 z*D^RmfLl)m-9M8H&uGU}ne$SAMhMG}ho^cn{6$0D65{f|0@c7;(M9aEorSOc8|c-$ zIk$wVA+#*1s7Q6jyDC#udX3X+A>Q}|%J;nSsEpYx9|J<0nAyO6IXNp$a_3f%#o^s1 zr!AD^EFasN`F8x=6swuoo_$iVu_*b=4L_KG0K*@Z81Ar)+2bK4OUNwkFRdLF;h>ozxxU0sQ*PD;mFry(9#uoVi}3gJ=sBPeN5e403%AS?^;kv%Xv zpMUH!FK!5*w9SWa^51Kc1{oOiftotgim7B=5sC9lzLMOoGDqvpMcL=MDBS|*y8?8c)sG?)s;U!LA%5?a?ZW} zlE2%++ea2yN0NbBNI9i9RPO;IcmH!0+?)H7o>+0TGGyDlb;U0Ef`4xpkaD@I&yv|p zZvWHqOH`4hikfy9+jpxgsnC!5g3zEK^WT@p+dwo7Tfiyb{kxyF(S%=xlfTvBN3f<~ z@0-z8b-!^ApH1MYRD{c?+XyWA8=z^<8}r=RPOb2(v(IcsM>uq%*}&{{f$pOU)U9vPm^i zh$k=V{b}s`v0*r6@!QFc1Fl`G9sy%GyMj%LA-0tzILUmUzM4f8%}ZRCig4^ax0HV( z2ktiZTINfKpwfsyV!Jpna-Y~PI#QmYcg)AgT$6MF9VqIx0C(yRPHd-Z z1$t{l7~(H+1KQc|Skjt@?Vb}IFG#$sY&ga77jtSh9ox%>Fzj_&U8I7-8$PvY7pv+H z-tofM_+dPoMf-%ZABrPwiErW~T8Zo8BiOBD*Z3@-7oK@a?K=0p6c}Zo@d>`wzk;Slw}f z)~UC>!->9P!6A+*38S6P$fIi9dQQGJB{}^=qAUR+z8?l|4<+ZQ$QX}-o6XfxPzyv2 zT$k{f0+{#j^NYo#V1G5dcRgY23JcW)4TE}8`8Ptr=%j1F+ww}PX$Hl><7nx!Sn~LB zFJ$pp^!<;La=+k@+=4_&fwYC)Cc0gc)d6D6e0=Rx*{%wkoa-Ir7Y#pf#rS(We3IL^ z_01T)Iu^4QLJ?zQPGPQ64m&54wF|ZHH{aj+f2`WRr?-wv7^9z#)hyhBk}KXjljG%E z+2wz5Hq-I|+e4h_T?tOheuk7*r5fnqPs!DJs-*>{Fux@7(%*gp(Ju2yhweWP?m^oT zg868WI@X=mq`i^H4*^ZInJdymk)_cya_@qQ^D_>X%+le6s%)0#laF_A3U*qF>GK?K}<{AgJmfzP!TJK*;c7BpZFg}QFgg0Tp20@ESTcvhu-AX61R`=~K zxXP_-P2AAR3c{G>0=>efin8*Ek!`@|thXK5N#AIbG-325DfKlCGD;q@4{T*M?rQiQ z<)5#7oI&})G_kC!I*iqv%Ds@O7`b^hM%!p? z6XVBHDyR9-)0yUS3{iH>#$R}&L4NT?#-{)j*Q;=^MxP#re-3s27;=8x+WUGg!$%BM z$|=iXiF3qgi5hmYZjm^*jMJp4zIJ>O1)QGePY?!U@Y#NfMv3gLVy2=HkY=7&V3+G+ z#(eQD9FXUqKp$^IR<&(rPrICHE)$=t)7L3>`jap^MxCUf&0K1`I)00LFgJvi#F$HK zqCeKBR7)(HKF`X8Q6ybF(_~9_AE^(#?Wn0odtMT73U^pFIQen@(Q5H*s;%r8_A9R@fd+8xAxlZSDW zHN#2uf@E;{4@Xig;vTmT7f)=e7*<3=x&}G zD9ruhZ6^(l)si!3<)BFvyNP)Vb^ft<4};#>90--0~6e~3fiDwbSy;gU!OLy-!-DQ*ga3F+ z_Q~hV@t3TVBhsh&G^TxHBOf$C@TbAAtEA4yZy%sTx$&P^)tt{PKBXfz9+e|!9vveo zH>L`k-S`SIZMF$q{|=}Ocap1J#M=Q*oO*{V3sSgi2^&zh&8i zPzY;F3DPJ~SPVVc9{BBL*qmxok@A<}DU ziC{`fNYy7y^Xn^3;0iNU=adC2=JC>@cFQJ49nslH)Q#1`|^~ZV@?=_vkksL=c=s0!^;o?SKZFWhuIMV5WT4W64UT>xf~3fKY9Bf{>0(}#zg*$Z)AN^KwlGu zk#`DJ@7KaNaR9Rz~%&8}i6od5H) z={nDW|G7!H$+GSjFk=zezPkQh6Gj+y4y$=KX_`n=L`xge*BFE-h8Gixk%z7rV*VG| zMk%;_$E6u|@|I==*BDiwJE*-_Hg$k$fcnMfz&FItD4UVZg$Sm2*$t-c1l4k@?83kj zYdhsCm^Ah9Jw%wt_hXpy0`*+{JTDyIy?gsRebM*YtWYREU`w9Ha;>F8g1O4k7}HqJ zIzyg0j!F#umtIiq6BjWPh4)+9cy&J(GvsAiayMxtVfMF6RVeorh;BQI#ok3NVn;VI zj2=5-N3FM!^D4pZ^AO5_wXp4~kGU27y?{2XHPpICv9wv|eQas#6xP}?-cBX^5JlWJ zBabBoZguM(K#}HrmGO`DezI>)2&-Ff7@q*lSpSW33EJp=9HMTVB3B;zCtvbblNC6%o>VI-FFL-cg!YXKjVlA$to6QAThEQSFMmXpF2Mp) zaNax|d%Rs-3nW!*l9Ex~yo`1`w1z_czy0RPQnh^4_Rg6Q%0^@K2D<3zJxBpk2$#2Z zRceo1z_huBY7avEMQj?GNb=y8rtD#;<_(UWL`jsEANu|pksOVzB%n+FgFEjx##N-hc6-)IuP>9$TgznpM{AO}6n^Nx<->)^|yQQ+-%({ARp5Ay}Lb*usH$`opI1xkKr-S`)VuBvGEj@?<{W6s8 z?@y>3e`BXLp1(7ODosZK5uEpI^#z|neA_?k1q{1=uPOPz8s;g!kgqY$5QXaapMnXIy_XrDvOqyX%PfCmIami5Stk`ue`ig7wS|>OdR^-d&3ZA%a0=!+ zV@24H8o%GYw&%@{Ge~F@`RLO~?D?PVcOVJr$e|AHjg2z`n2`KOtP^hu^bLj~S7^If zm>Wr<7*_p~k3?k@_ba|_ZQDvGRI zMs$Lp$4RM8GojC*yfm#F2(^uQiXfz1t9iafb*m>B#U75g%_A72+c(psEv^a69Kas) zv<=tmFEhg`Pj)^3zS5rzj4o72W)E8*SXC%y_njU{*rv5-64GCq_gw9`jYvXTJ%9SaeY9}1~_(|DFop>?6qJ#nmT5eorAj`RW>ab!Us~c}(9osgI8x@1uj~){@ z&iTJTbAM$a(64v`j{JPYi!}(_3~r=)-HZWpD_h&LZY;JYDNoZLS)qd&0LRCG<=Q91fw*3 zx1YbW%o75^yYS~%VXYaYSsU>BD|XYN8*siWn%{>n1B`9)$IaG^8P}lYRs{ZrY{34g zgWVQ=Ai16FbAtdAZLVEJYy;4&P~w>>vM<<>34B`j0}uD8*<2k!c!z{isjgX^A;=Z8oC)UISy*}fJHXF>izN{D83AJv@Gp2`TxG_` zD+*XexcK^Zxn=ZlHC%q~7|ikLQO}RRqvCSOsA7rp8v32&78Q8?mSKg+KfgJ)oXHM^ zH0mVYC-J48w*}I&h!@Gt#ZuY@KuvaEkp(Y*dy(lAJ{TJjotw|~$;8e(shfE0_@d;u_AVp5c@zih4^5Ocr~ckZ8_=s)%)rA5i2gnn<*Y;3uD*8>h^c>PYWNQo$-JO zr@#V7kHQ$eI_QRCRgpEZ`uc#va1Y0gF*fUC%@ys+tU9zh9NebOD_C43W&+P0O=w*g zQzh^7$X#$K5t0yr;-Q!^1~ClR z&5k21lYdq_>g5snHj5y7_Cdi8mI0K*KbC7WrVys-e+q|t+I)i9grn5C)co=H`w7!y zSy9<`;XA}bs%&^$y~R>U)s}am#Cx%AyAgi92GR)E8{XTO0?NPsD0u++ytq68WQsqU z2~>V}!-NhGd zFb4`9NWh^$pe1pO)7k(067m+(iCX*`QdPJS&I}p0l}=;uGyiuo!Rp9Mn69XHTtk*Q zG2#|!>2@&z$s&(%a=VxYzID7Gqp5QV^<%BzXai(|vR7S`N<#&M? zKg1Cw?E2>VL|M|s6#Vnq{F=*;N3Un8PckuM;!Sor0PkM26RqKnY3b#9fk6`B;Jb%|3c$79~kt zU`dTHrmD>#>2lK^8N)N2VA{5C%v)s*i|??%V`|Is3)uf@lDW%ur2B>>z3U(v*A+ba zX{Y{iC93p6L|6Ezg68W#+5O6#1_VXjv5fELc*ybwRW!|@!cw1BRZ!P%L%u<~n~Q9B ziP3Z$nsx2CWz8X(Ye`hQb(Egz8*)S|$X@4A6?}@zsW}IIw_4(qK-5E#-NmQJIwn7< zy0{Df&-`1a4TmP8(?%)nu~B6xg%zfB=}n{REY`#K{MI6R=Mq$=X{us5E$0%+!t(e* zVAUAGc^DYAS^-`NX6~UcrMkpje33SuxTJ5dP|ddr2tK|9KE={_3-zGAZI!eEA+jID zmWN&Wm2XIjqCT0EpZ;vmg50ocdK6H4j1+pbz;C0vZyq0NJctKO_|M;A|73se4~oR? zR8;q)ZcyX$>^3_H^bE%@9OCAF`ityy*DSg`)ZuWwU4Y+VXcs-b22AU5){*YW>fVja z+eitmSduJvlAqkC$)i=}P3IU!^hOn8gRgAw5p@lSw1~uZr7a_4D@i1v@;WS$^u_s( z0gx&w#cXcZ@fR@(-YE3YZf++Ud2~YK^kb+xi65yT`Bvnwj{A_VmGn^rF35gtOjxije>>4#iEmrZ)IX=GL;sb9-miD}g%Y{o zla|#i+<<#ylUe)j*ACelS7pFcm@xH_JaEdvM@xE96en;|^RZ47v(kP)ST+9mS}Nro z5I=~WXhE_T>a3s=-X!p7_iifU=p|>0z%r(d0>M6Q?4yr)(MRVdCRNdG_wG?mTz*ZQ zx#Rt3sf1#&WL7k$KS6-^GpDI`z!EyyqrALUrvXqH^00YvSgN}N^p)_+Yji4u0c8qF zw|g}JW8d5R5^IKrJ7eMAUUSGQ@G|TEJJSvvl=@Zx`8!^#28lDN%w6yz845Di^R&WU zXtv3h{jgud%z^R7AwAM6{$t*m_F0)QWRef|n46I4QBw6y zn82^o%5Dp?U=d+Sbqn>ocxa9X0ZRi69!ldOO8xQINvV)R5e3^gEI1G0p3OU%Q>$Un z6@l8rUJ=arB-k~^`2kqrvYaXm7IppToJ#67lqR(0SPd02^EDj#*;ypXH3$PWw$z7@ zkyH<;KM-_v zH*RmW(eStQ9OCobw4Nb@eFuO}@b%}L&q4=j+@K~Hud;T<+Axb0m`%T*MjnfeR2d|y z@fzm#6Yz$^uV{FWZCZijXtiC|)^t$;dLUW3zM9v{kn;n|y$e zX@Wjl4mnyq=g-Lc)N0d5UAhp>&^KfA_HQLen;!_zJ>NN9!LZ^RxOs6&%qgXwJWZiYqoV~c5ZvV!G+Ax0;rUL3ZD1$qL5i#sNI7!8L1Vj z($5=GM@B&dIKqC(W4bB{Py_B@W;(}Wn* zo)T)Y00Wq3n_3P)t8s^Ttnp25B?e&PyWTRB>M^6vGygH8X%Qx7hBKq#h9zLm6;Iw4 z2?5Na^_iitfGr~6Zkbi6yd%9tQMu=wL@{QHn6U>r&+4Ixcp|IDV zE!btCrca<+B&2s{;!QI z0jDbc|L2^GYrpQXyU3pGyCjUIq#A3RkfgN9(u7DZWoc>v&sC z$)mJd#|ifkZl8xq$LLLi9bFo4%&d+@)*QV`r*DX(^7U1GGP+>!c5>KOY4A&#k;;^9 zWTHWh|DkP;dTALP4`W`=^glYIfAH)rr-S6DPhJVAC8a_^#fGgPkNEO;q<$A{H6kr_ zyNx{f`1VcUtDs^Ad*j%hpz0vY#In2Vw^+&?cQdfqzFs``qC%`*woTo__TvX0SX_G^ zW7#+g(StYp1w-3{o2ue zZLyrcNjcfa?svC>Q{yU9n>D3V;^-5uKE-{fBiWBr?cC)3Ufv3y+8RN;a3$Oq3I!I{nwr>63A(X`j+*^aHg?KAj3&LnmvM zT6rF)+`7!C>UFUv=BLC)@Y*?On%wv-TN7GraF@*yc65<@WaAtvtZ2AhrTZ28vPR;Z zl}{$Qnghcs9`+c4kLWO^%`60;+8@sf0}!l9g$W~Las zoE!c6w=}!WPb?#uLT!2i)=Q039cJfmMCr{KEkO|NyvL?DbwRuKzN@!OQj64dxiHaQ zBg6L4!?Lih!{4N`Fm7`yw^OF?w@;M3!lfXCg&r@n&JpVyOATITU5%0+>vMb4UF@q? z3cEB77TUe4y1e7_Rx**BJ^jYWO(YVM}>(J$&cIhh-2 zszJpYrnn5;Oke)dXVxjf6f$-;ZEC*OQoz$!Jfg#te5ag#^hO`gh%-~}+?LA!_57|` z9N(up!oyVYRdoNHGZoNdQ&}U$R2oeG9kK5yYE*V&fC%OL+5zoEC%?lG|Ec)x_pWT18E`|mZLYNDwejsq4YYc$0sO?C-||mC&#v# z{WcwYz+7CT+d!H93tTUde6cJ#o6m0e+Ml!ovHo`CJU*F}=YI)~<&-sszHmSC#qx7! zkvwR7BH?-xe`90n`vc^|Ub-HeW_BF@Vm2d3FK8AyDxOtZ{!t}#{F8eltTs4brGA&z zO*?j6y_D>FxlOv%U$s!;iVs_Bc*TMb=d)JKvPt_3L1l*u$VS4G~WOc}RMk+&tA-9EL#CCT(1l&439 z(o4x+FP_+MpvOp*QsTBGor^eBVD4YChpWWdrZZRQeRkpp2jTGSYti|;bry3S#qP;` zy}iG9XM418UZ8iy_9Iy;sXy@nYq-|d-mU9;F0K5hfTPHU zm{CWQPEQrV^Id5py6soa=g$}P?h+Z#C<>0Fb5GW&#E9N=J#c^OY|d~?L;Fvrd-*mWa+f)l8%=4)X(pZe$Q5X zv_*5{iy3n>f#)7_&mNI`W#=^pQ5HEqT=IN-WW=xI{`iir=8#~`OW}vL zt+w_uiv6WG`F+f8Z3_SGw=>R0yMG%@EaW;dx6P*KTZmYsOVmT@o{;hvLz`seTh5In z2E|^#PEKhKOwd~EJ-5V-j{@t*2@@0}15!aeD0bwBLzh`-Qs zY}^x(D4oD5ZRx>&A1kw1(RbeWo1S-hS2T?{^QRvxwlTQjUA)0Swa_`Iss0e?F#AQ? zux@JRY~78{4Vo}2T=&sWEVl27v4&Zs6^X`^;H>mo0&%VsZ zHC*WLBeslQ_^aK-FRhHC;Yg_tnHF%(k~X*ds9oYP8tw8r$uB#Edu+Ge)2GAYXB|y= zTJi=y=udC1$U6{j_xj32atK%0F3n8xBzK5Feo;6*B=(U*e({-Ujs|<*BI#lE-?MtW zf`?5E_MNYe&WZ0lHqAxLGxcZ=?pV(yYUfeb868PtQn!2M|(TQonyxnHSO4B?c z5>*-5Xh&}^A3UlEmTUd`Y;2<7itBN=8l916RgC*qpnOYx?{hW4{r(+{YOfTz4 zU!PoQ(JJRLm1`{OjF)PCp`!QVf!2V91asG-F)68V)}Q?Cl;hM2xH@Bs6F`SOG0NCL zPJBia;~5udk56J^h>3t+_$VeugeZ6ipXtOB$XgL)@8;}nh8TE2o zXmc~>i#%-iW7hK0kQ3Hz!54IX$JIINtXX_5WM7niB8O9DRu#nKMXoGJEsZ)1VD%1zN z2rSkRG{#3sF&d0OWkQ-U2A}fbg;dypwFEC>2dGGBbAATZ38~8tR3aqE5!5CmgI!=J zVL{ykz9XdZyqixd=(r7)d;Eg z&}wenN5DmVDi(vw4?KZSx?%*L0q+pYA{7Dh5|~;P=uOz(hyl+L3nYF8l(NO^GU@^w z*W(f=2)!qG10?8>KaTATfP#r!UIaouWNfS!!zc`jkszt0XEC0pKvTprmt;WWinunn z4)P@83N%7n_;D}$-a>X9xRm<=8so%yH-?~JiD>IbpreG8Fb2IN{Q1s8Z4l10oQHJr zXN|G{(zDy~Rgos?YR7rmk+FlLPbz%#j z(219vWe^zXK>wQsr)*5C5Er9Wi2JTGW)%}`!p#Ua;rYoO|5kC6 zhf#5pH^75}4LKvz`=3~Qg24W(Yc|g|9 zQa9tsfmy0HE+o!Ujc`@-EL9&DIOb3Uv$B|@n&QaCIqG3t7@nizB_TVR)IB(owJIz# zsXK6F=RDO07gFY_c7)YDbsH||FR+l91?p}b>0O{Y;)32HbssLoFS1kvi`1PsVz5Lt z!Se}RV)?0AqFUf8j%8LX$7Pl(b(xiO4~Ae>Y*?XM;$+_y>ZTvY%pr^ws;(@ypRV@a zo$X))fHp1w5W!~lu|9VqdPafdepnuN!2`lH($ExuYye>;+^*CBSW!n$hfMU3^r{j1 z_nnB%D*)mL!m7Ao8fKUUfJlNUD1*EQVf++8zM?R+lMS(hU|~cGf?*jf7xS>(qTf(| z=g_%*@@ss$^I}wOoRw+vR#g;bNun&#H7qrL{BWC4N& z@f@inG#M2tfm)GZAsltV(Bpyx8i%6)I^A2?U||RmCUl)7mY*@q;tLRG%U6dryC0&p#Y`+79gh<#(Mf|$krZrRXI1|B> zXqP5RxEw~^faf!c*-9v4fH1O-gS9G| znH-UqP}@?plk3)W@`DcIzyYh{whrjiKt! z$gkY667H<{*yGc`@B)C1*pE;0A8tqsH>{wHB{y>Oyl6KXE}aYjLTgsj`~(P`@bW%# zRuc(drb^&G6N54@nW8;zM=b=`uL^dYbE1ChKKPy#81Sly{cVaVhR z(#-=K;@0D#xzJmQWx@WC=N*llz$s(rv!0stno z0YG34%k3zVzz0jqpl=e}+^D*Bm7D;u6>XLH8rDDr(!vMhZzu?p52o3?zYMY3XS>y0 z!_(X2mtX$<++s2J?Y#l&qi1afn%&xNHW#cK+xaC=!lG{2QfUf5hiGUKwdnauSrc6E z(ckodGyjc+89)8}=&Te60Q|)B<0%>X6lvp!74cp(`Ozh6eu;=s(4JzKh7kn?s$L;` zD6F*&!GIm@2(k*4qX6kq2ZUsdK|;tVg|$437@YJ0Lg=%Q6tNgs$=z~(7Hnv_xA=Zs z@}r*-PXSmCzfAb=*d9ELJ_p#5zV;GI9fpv*0<2r8Q2>phKLR1>^jBeIMF0(rE)v2| zMd6}p2ub55iK_j(=~yF@wlUSp(CzDmHe>A)(m}+R%38wfs1L}G9eGS;?ZS5$AR>Uw zQDHTFTkWoi{d5cU(}em#pRm6_cOuk<5Gxo~!W()DM$JfK$YmIo!hu{2NS8wDV0ax4 z450u?P?m&b2*HvFZ6k>bQ4>Tf!MblOi0Zy>Vd(+{VPV`P7K1w?STOp+$Az?FCTMv` zFQ%)m!gbOJO^9`rX$zrYttrSYA$T2f3Ptfvf8()WNAr0AaL57yg}*DnE^T>FjH-jP zuGSb{R!By#_Q4-nx*su?6haY(h4F=(wl&qBtpR|%DCh@=*8|y!3O!IRo@uZ!n(3>J z90Xjv3O8V|DjS)A*+oz`)(R;R6y86^g7>b%z8L&si4)Nlg{6@^5mvc17@VraO~6Yi zjIUXKkan4Y2M8PwW&0t$4^fDgD6Auk?a_a|nEt@pH^57H#BOt(TjHUTmXZzv?JDd) za6fM6CrX$UWtG4sh9*@$Od()PF;*X3P#7xz0~r&8Ws&P*F!A!)hM_|@F;rIueVaw6 z0sr&)=jj&!R#wLTLd?a{?S;Jsdx)cEwAYA$1bRKDh@(f~kGB83oME;OI8_Ge6Ngox mSp16v^sxuCS3oAFsoWy=JJ``34gewO&t7=|Na&@a-~JCS|0NFq