From ee56a2320de86b0f9be8361ebc74d56b9558af33 Mon Sep 17 00:00:00 2001 From: Mahmoud Ben Hassine Date: Wed, 18 Apr 2018 14:11:49 +0200 Subject: [PATCH] Add builders for master/worker beans in remote chunking setup This commit adds a new annotation `@EnableBatchIntegration` that makes it possible to autowire two beans in the application context: * RemoteChunkingMasterStepBuilderFactory: used to create a master step * RemoteChunkingWorkerBuilder: used to create a worker integration flow The goal of these new APIs is to simplify the setup of remote chunking job by automatically configuring infrastructure beans. Resolves BATCH-2686 --- .../images/remote-chunking-config.png | Bin 0 -> 354849 bytes .../asciidoc/spring-batch-integration.adoc | 88 +++- .../RemoteChunkingMasterStepBuilder.java | 403 ++++++++++++++++++ ...emoteChunkingMasterStepBuilderFactory.java | 61 +++ .../chunk/RemoteChunkingWorkerBuilder.java | 131 ++++++ .../BatchIntegrationConfiguration.java | 59 +++ .../annotation/EnableBatchIntegration.java | 88 ++++ .../RemoteChunkingMasterStepBuilderTest.java | 264 ++++++++++++ .../RemoteChunkingWorkerBuilderTest.java | 166 ++++++++ spring-batch-samples/README.md | 7 +- .../remotechunking/MasterConfiguration.java | 24 +- .../remotechunking/WorkerConfiguration.java | 27 +- 12 files changed, 1280 insertions(+), 38 deletions(-) create mode 100644 spring-batch-docs/asciidoc/images/remote-chunking-config.png create mode 100644 spring-batch-integration/src/main/java/org/springframework/batch/integration/chunk/RemoteChunkingMasterStepBuilder.java create mode 100644 spring-batch-integration/src/main/java/org/springframework/batch/integration/chunk/RemoteChunkingMasterStepBuilderFactory.java create mode 100644 spring-batch-integration/src/main/java/org/springframework/batch/integration/chunk/RemoteChunkingWorkerBuilder.java create mode 100644 spring-batch-integration/src/main/java/org/springframework/batch/integration/config/annotation/BatchIntegrationConfiguration.java create mode 100644 spring-batch-integration/src/main/java/org/springframework/batch/integration/config/annotation/EnableBatchIntegration.java create mode 100644 spring-batch-integration/src/test/java/org/springframework/batch/integration/chunk/RemoteChunkingMasterStepBuilderTest.java create mode 100644 spring-batch-integration/src/test/java/org/springframework/batch/integration/chunk/RemoteChunkingWorkerBuilderTest.java diff --git a/spring-batch-docs/asciidoc/images/remote-chunking-config.png b/spring-batch-docs/asciidoc/images/remote-chunking-config.png new file mode 100644 index 0000000000000000000000000000000000000000..53d3ac6a5d41de46dbbbfe93a42c97fd591db82b GIT binary patch literal 354849 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 -C+hkYb(-i{ za*pk+FXLc2>mq8bN6%kEy3Bg&_ly77yE-g>hm-Tdx0dwt&C6H87{}Du@+0oTNlicX zH#v2rbTU*+FC^*0e`M=kP*a}FfLz=IMbW4bZK(!&>I-f39h!c0y@9Lh(?IBY8(e<8ONcVAiopVh>b#Y646emh12{QKuDLYOV|cx=Vve~mW)C`$r&ivH`%#p?sZbn&Ow zJG!o~dY=;)*j5p#m-2JlzdFI&7?elz);e{I9sbKLM1y?AD3886fw2>W&XLJP1AfE0 zF$ETGR(u_OTcmw*qe0r#PT4cZj5?}lIUTm6Fjx{YK_@NP*OAalUlFzt7$%Z;xNM;R zLCNQ77WH73KOE^yax-FQqIhBDa5}?aBH-jld#MeD0#s6FKIca!02=%fMi?Ip8Ys?f ziwpeYv6cWca_ykirbGA<|2Xlp1wHg?pS43t#U`XxZQzt@L@o?|0Z~&!XJLyGg69o4 zQhP$QX}$M;S4}}YgvwoP0mD4K`{8;j7yzUX&ovb02MQYkydXDKL=C0dW@9ug10}fcvKRui5R>ocj zELF7eBH{^BWFgQ?W)$c4%7xjY*JeuNAaf#Y$O(|ZW&g5Qj&_QxZW5Buo|HF|-1ytB zzI07m>W@D+GuJM+ryIQd&O$Kyp`?=>AUq_62 zQyI>GXn>Oh=)u|{=+xoD-^4!M6GR2(gHfQDaAHtrLr`#(Hoz2fKnDU2vIyKufaRO3 z?LZ}C@3m5~%egcH_3epF#5eu@(vt>rnE4a%1{CjK9?pnEhGtTEu+I&*TlHNvdG9-C zo)j!S21zYTTFDL6_II1H%&3jHG-`>L!p3-ixm`8-{rmOQa2_vk&}-aIb8sfSqO0?9 z^+Dkx?F-w@+h!}3K)Ekkc_h0Z&$AF39Y*0K!iE@GE|cwxx|puP`tRwAd6iPCRKo>m z4}9=$^LTl>;Uy*)q_BfZ@~Otj4WCH* z-nG0NzHuv32H`ORAs8cMx2<*$JEboD#b2ZVtBQrM@#kb!b4vek zakbfTyQEWKb1AjgrmJ$wq%(xx+%NJF=wy|Kv5WINc(Rf_s6Ot>+%!cxLF`S9{v9@5 zB*C%C+MD&RM!l*6x=iQTL=(Xr>YEC^XJlBZgcMRa9Qqfs{pqioeDeVIA^Vc=U;qa4 zb(3Y!O`dh&2ifwTl(iwnXFdu&_4G=r$(eGYDNU<*hs#@Y3H+dm+nf6exV{R)gW#hp zK(ZaJHyEZW&%^8Cjkq2yt;tD>d(}UigJeBJ=V36mt)(IOvf#P?L)h(Z-yjZzIOutw z`&I3ftd@^;Aqqv0KL`wm&>~^xsF;q(#n5E?+L*?EB_8qqdnFFi@h+J= z`3ZRDJG$$cR3A@uyXS0u7YYywC$q|hoaMpqLLpMEufl(-!HOKm9bMh?JN%?FGT=P##zr&daw}m{PF2UVT z@FGnDJ4b1#K;X8+V$&fugrvISn5};z(NL$?iZiXrd>uApES@B{lL3d~Z?G zH@Q!bKkm;9Tnh@wGY1|I;3<@PLt@V(pW4qH$(zP|*v|(>t|+tu-2c{UDDo$xZo|zY zUpE^U713I)S*4BsI+s-5!|4Vl48C2r==iu2K=C{IXtP`=oYj3C0x;=&C^&T4i*~TMucuOa1blx+ETPr9jG`Q0aRpg;&o>pxg|##R3Xn7SCdn4 z7f_1N#$Q*35gPqeBwK`x^(d|Friw-+w4hj5#25d4w#@5eNoD2kfijH!{zL-ea?cCj z5(kA{SPUH9d(txz-PiMZbifP#*_s6%87~-ysBQluFr;y&dHcynux5&Xu^)Qa_E#9IHJ1ms{oO^?{Dv3NYqP#wVloXEG7r&D^7Y$hLP{8lpo%eF!rGpRNAx#R4L z(R%_+-38a}S$i0GpRwTa5{x$PTSM_zvQ_&=0_cS)%(>hpAi&lCF0f$TeX$Ryh$TcZ z9^>DvysO*dBN!+WVtB)DOi}}?oN6u`s99d>pQovwRWCe5o)tp>xG}k$#<^kEq%9e2O*S#X#7PKzc}#BIY<_Y)ZBu~?=ffKIn$^}1hjI>nPj+Y z0}HfcP+R|tAO7M; zC{_+>^m9wtLHX02l|4g~1s^mBkH1qylAM3~Z6GPDvp$YRO)nr%tpliiZmF@n%pDn# z|FiyXYltk$Q5;|xe5~DSCUoE`n>O?x=>n{ zC)SWI$6deQa{I`0wX`0}jF85$tVApxBbp&@YdL}ej;0ju#7sNE;#7+*R6V@O7KAa0bAXNXv^p>4#K=pqQ}z!U|;mielr$D&^qd zLX)n~^%#w&2n~3_3f%NNRNh(e?(cy-%i2Y@I1V-Z6<+eExC+*&UDT)a2s%vDnO?w_ z%aRL2D_*)L)>{0z-2T3*g}rX*k1tUVp-vcb+FyroCe50%1L51brvC;)Is^d@XF(Rx zvUmjgW8iU{q)4+AQy;}h>P{z&7?5N?_vGc@Az#V8X#|x216!kQgm;}w^$+-y&lY4U zsp2VO|KL{Ee{gG`FE}3B9k>K@dt=5qb+FS@d`y+Q%#$FfHKU`<-Q1!+g=Ekg1#eihfmqK)JlR=TAS`83`f{wG zV_CE>v67N)eFQ}58zs!4;o>in+5R>4C)BdNdwZ95@{Zn<9o4zxc}3Q(-?4-3!0bj} zG$>z_*ZtW;w>^O3cu`N*JL8PY<5Mn9<85~i%|1+284ysyYH65f>s-1;4yL$s?mdT2 zKZTKe);)aZzWw#C{7n@d67>?LM}~lND;npGD{gZ+Wr{Z*5HH;pb$b{Wm?ZstlRvzZ z;Lq-uMTHj9GoQCyD{g?fB~T|3TL1|*zy0U*O)kgRcT1xq%vDEdJVFRcIo|Dm&dyT^ zyqmD{dF+ti<9vR1Fx2j;VI<)Dx!|j2x8XY;2T`l!4Zo79&3})IAA)&1yg&D_t8pg< zrpd8&JPk9jG`tGd4+Cu?yM}A1Rh=;|D&W*_0&wuRZ_}9oM=Bgk}G47kvLSyFx%JcG+)OQ z9W!bA#_k@2fE4Kt8**4@69QeAtlsyga1MWi2ID!VrE}J5_n20f1BH&th-(CD{r&lG zfK8!75LUTXJnSa7pRD-cnVnAPI{3RkJt;ecp_(!cxI?nlrbG*u6!$@b>saKTHuGUL z(lGBeAVwxC>}g}xlu^E9v4`&YWwv{g7TmL(sLxmFM-nS6$H5ZVe!R(m$Y>@)0M1g4|CHm$W~?lG zu*@4ArBAjP)J}gubdb(>+LAzO9{L1vO(7`z|;z1^8eXYqk z+X7pHNuMInb}I@pqSs9@h=z5B&g#&hVZ1&|c+oNb8xE$J2L3Dg7C3*F!s!82LOpYq zeC70KyorZ2_=D%FKku^lZqC)a&ke$cwQLX}T{5YBayYN{)D#LTH(L79d4;^Oq;RF%7s6G7Q=GNPZFD?ltaH=%v!#$*(LhfQ5c_ZdOT~%+P1<(lw`4*)e+1&l_eh1C02razU{KUbc>V4{WV9$%a6z9Y7K?pEjZA5ssFT__9vQ-~fkqiRCbcR>R;jPUg+1jFKubSrZU!+Js}T1Si%< z>%U05jxn>-sO87(i% zVdE5e^KkQ1?8eVU9+H(m5|fRR20J5xtbPMB=SlW-n#J}5t##f_y>9z&yrnU)k9~b# zZS??ZO~cTnLGnTgr^VZM)1hAgZrK=TV(+k~oB-C2M@AsyuS~H^Zg-ua0eM!mncg5Z z1H<7>s#iFHj97s&A2bYaJ(lH8!JTdJfqn`Iyzn)H>=ueEq}yr$i6Q+%<{I}tkPj*% z)%?2D7LYXO0bobV;2%1OJe&H<)z|*!buC%+ zSxec))W1DU2-w4ffA=3NY1P2rG;V?&?VE)miUK7Q|M)>G2r@0bMC?ylhX zH7E4d2=agfrVD?zxaG9m{vQsxRh)S1O|>D5PYEMdKpub?dvoQX>n@|pp~#+XvvyWtLxj`*r%^yy*T`zBx&tg6qs$t3UxRYiu8@dLYX zoLaiywEv}3mrUg*v-~!F9dkI9}1b3hM1foQO}c zEw|hJ5^c$=)gla0XQ=FTUkm2lcq3+u+Ogp30AYQqR(^~Zp~0H<`6tVM^jO&hAZnHZAtsW-gQGe6ac6S9 z1;mn`hLcAgGGV{;AL-@9X=~0uq%X^S zC8|`Vf~2?S_YWEwlrd({(AKSalAk<;!|(&MouJW}sCbS|ksEd@*#7%Gr2>HA8yM>o zwAwJrE0lO3ZXFQUOOih$6p+HRy~#$*R)h7{$B9ZE1z?ulo`?p#uO(3eGU|&`*_z z%0IXo3I5;5Oy6CTH##A%*qh0Nq`7!y^zD@HSUV(S**?C2N$EsR#Y1q=usHijN;5z7 zQ#id|uPMGMg%VWK>12Ok&Gc;;cz9Y{E;_*h#HCl)zLeNmSVUdU3kmIQndhmU{diC~ z<9je-z2^6h))*35l4cA?Z1OSN6D zbFO%r_sp>Bfy4dBIw`JfgFn~iY7~;<+335cT)rr-S|_eR`0L*@MT{^m6Y70fDVse$ zUA`@kVoRO&odo;wfpC1b{6uIV7 z)q7LN6$D;((kQF&(#4@$z@h8o3bed`yuWqU?d{3*K2btPeXUq)G!pjiLq;5ATUUaE ziJSw3nZf;6(@5mSXt9loZ&02R&V7&2Bh*Io+Vp3N@v#hKhhKSxdIv z3xQOMlpepZ2zD?VBhSq-77Ak`P$^Y1L>>?{JDe%u#NZEpeD!|UoZZCf?RKs0KCoI| zP8j9dfiRQ(+>T>|V#n$t26UV1u&9^n%=!#fp>a+%+M(5bE{9Hn;-Z)ptwH!Ts}%{i3nm0x+Y4hxR@)|f}%WPyd;E)jDJ zfS`o&`V);$p7CI6mUV}kjuGCG=g~zG!1ly6 zQ7AZrViJMeU!yKY+)yo=v}w$@E0HpDU4RIsV9#KE>oIX_sy>XMIeno)FWJ+WemSGr z3dj+}{VY~MrNSD{Ajtyj+uc%&4{*msuP-}}_%-(v28ic{?)Qoisl!YMN55n(c8zLOsDUOOJ6Abq)J45WX~@5_vh&WJ zEWlI|6G)MzR(YAJW56a}b0Rsg4Wypy{Y~vQb0fR`iyF!SS{g@x`ri70(~FndkfB_S{A+DSuZ+WrbjWALQ|+|iM`h> zD8q>gVi3V(^xr*~lIn>o-|p*0a%pKEkf6Lm2f>SyC`IzBm*P>85l;v(d5Ht>_tXo4@Y4 z(fgzJwzmU@GgHF!_y+gN=BHdm0|E~hZ$Is=A|(%gy#>XO!&6sXbqfks=+4b(y+B~^ znEdr++YvuHJ*YU3?te88Oa?Y|Ll6E_yI`FPVg27Q z3c7{5ICnQSI4KKD6?g3Aq8gK4y7HhaLe7x2!P?Aad>>A*@G>xt>-_FTn_*A%RRymxH8X^!m0HwmII^QL;hHfy<)!@;MnyG&m zQp%NIx?X8UD!`XlKU!V|KksiR_nXjl2b`95aH>|*FjZ_57ZNY!Y_ympeKztv)lwQz zoIhun(l!9%Q5GRizL(=BnqEuV37-&~D;*z?nj@@GU5KYKa?mNh71%_*=VwYfPc^1o@kk<^(F&HQx1S?0{nepp{T7|a_X2sKj^Qeu{{Kf`x9zfmEeu08fKn6Ry@Qm zCkC5v$eWUNUK|N7Cuc%LvvRW{HeXL)f!3n9C$pYo%GCPuk5WKNM#c^`vky(zaoyYd z$HC7u|7{54aL8f8IGE`|=YMIA2DZRNx26<12fin51X(u!^Sj5z1jpeW*~rYXK>xzm zFHloVSuV+!DB12~2A31i|8d%O>4R?1fs9Qw$dzgwpfKY?W*<@TvY6x(?#wTbb;@?A zDS$to>Ra0}JD%{k9dZyC8bO~nv03M>vAeM+kqOE)s1^F#s={a>|9;0&zk_4?(`zcq zW75MNwk;Z3zB@L0pzy*B@SbAq=u=b2gK1ARhA(^d=tfuibbjD zu5qg|_~`uYPB9|=!rDBL#mCz~#i{Z9Do=%ZrPn$NNs9zU1*&~9n|;HNLPu0;0)v>S z{LwL=!QIHl?YgS^rw0RMm&c33F1!95ogD!6Ql|fHQe?r6a)JRbl&_ls`ZvI+@_&mh zt(f8VjEw8(@68JhX6yJf+}PN2<0*ue=1u)dLv6bqfQb)?&KCen(8RY;jF+!FoOp5h z$Y82hZ$5&XGM~>6<6JuTQ*-8)_ma)!7=|l(y;o%>nptZPym%%X4 z*PCC}qQotqvL1k?OF*)fVr=_7i66jdVuc&JBDruULXC1<1@`sS{x@Iw-<9CHz_u-S z`-j9S&FX1=51zn;JKoQ}OdY=vzUEgkmfAs+Jkzqyo=M*?VJjH_9sLHt?h~U*Z?EgpN)1VU*(zOxz(T!VSg3zOt%S7SC6VpL)PBOjMj3Hh{j{4zI8_I zU*zXUYq83HOh(g2%WaD1p0gUfcT(=QvDR5pm<=!Yn_-8gRrmPa?^%`CXf|HnUyhS2 zJt4^|yW!YSbUn&(U&G7Wn2r1K+H6_5XCGh+DyM(hHLtqDo%J=kTxL%=1fOs?p)+08 z`%oz=f9SoO(tAg~qs8ZE@>t`LJ0Ov|oR+x-4_#kDen=thPW>u#b2X9rabqp9*zr$C z6z{5f(W!5*hj^cr^BZN1z)l5@zz-I*A9zHfP`55b1jfBl&ds{gLMU%pV?OyaYZJEB)#F zQy4JM1m8#~U&P4OtDaVvy3%*g)cQYv63Y1f<1*R#eT+gj?*gy*0>?Rs|Ap~V%;PKa z>EnM|S$nnf(Gg<3yJq)=+h@xsgrq+D>|QH3nFTiL19Sqn2CHhk29@9^SeYIN!B;Rx z_C1~WzV`nl!k2lq7&?IN7w6~KH)*Wc_^p~I)qhvbi~2q`Qu%nqzx?SMe+FFdMCm$f z&teD0nE4%Zw&a&ZYX4IpD#8xvw|&rPDBxRYgvBuW{xWNIU>Bm}qrX6BZAk{oM3u+b z8Q4#m)ksgirzx-pVJbt_b&PKihv=r~ST6ss?YYZ*=8^fF)plMMt>+f*hq2YNkomE* zpK08X{rA8tKdl)x0A8yu)?DdRyuTlEDMGIvah=(X($c-B5U}(qwR%hMzRo?FTCSHx zy(X{kD+(2t782`(2qP0(`tGOMSqg$FSs7Y7v^lvfu+nw>(nf&6UqZ;|ijvdmm(Ah} zO*r1h9Z`!M<4pXdk+JHR>7s*^FRV?Ma+X~w9tUq?vjaYq@ZDk^OJ-*$E7Tkl|5pp3 z+5ecsiS~dmgQ5p(;=>;vND+0#2c3lW=`JV!aRDigC5_9`TT240Eae3qn$lVBX$9vu zb-HFLMmkC7zq$2Y&h4UCtQy-&%jAWLZ3Nh!4!9+goBn4>?XO_U{7W{0;bi@%wVt&$ zuH?9frf`ETbuCSn8Zl#U#G9=DjLY4PmIV8^e4XJOBc%KT2b-RA3iUo$@@k}JMyK?f zKF`M?HF6^2r!_?L79y_kHnUueAvNO{9i#xqV9_7CEy;l&mA;c7N$j)2MHcFuhX{dV zB$L_=Luc!yKw4G~IkB z+fbX3%T;@m{lx4^Nl^(@Egy|vReYG3FvT*NZL_(2=%4SRJO2?5RV={d-F;#Gt;OS%kH@Nznr=5(3^uwzcxNd(cFjIS& za>4kCt%t@9l`Ia<8!ER}9RWLn`GsRpC*Vk(I!|TbT$*zt2i*qLR9F+*&WrCY}guu%C!hFmuHBDW?U;m2m#UAECTHnTwS;rToHk;tbC) zp@|17{||%qV=-t?Ry&s~=ggxA4gc2*xys9e&=DszZ}vU+Je;-_$2bWMoaFaW{$8vQ z@uk#vT8cff?^B9=qxWo-N9}oPc*1ltZVZc&5)QGG;8h7(<#jM|x8eGoZabj@@L1&W z47`MCyHe9-@ccY~X{H?1^AT_gJ-*RyBsXU9(e~Pym=nZr&F(``x;+LN-7}>_50?)Dn&pnV$ zFf#Ae7O96}(}N50QoPz#C1tzZepF49r(@vz-IIPCYU01lLJ{RVAMq~s_uu=41E-01 z28|3#idc1{Y*&v2+%ei6<1BIAeq+n-dis5%9KQ$kLTc)w+K4A?SE-l34C^@aDI|90 zKIcV+uV)@KR=uO#1Ok5WPHDMNoMJ4=1&&YNNDn)A6VkcPgKW#_debw#ZJ>%zDCP4P zXw_qXS9?zB;Xk2a8&^KzE?<>>?34N=o#Ag0be3NOZJod>T|L7487eTb`yx-wcfGQ{ z_1|)_*@;&WbtNG-fARmmI2LT$(_vrw$RqUK>p&vU**NNr9a`>DGy2TUoG)VK;g_Qgu-fF~m&W;P&(dz+IFF0; z|M^Zny|!wlEMn!K;_O$g&ahao1myCik3PNeLM85mpeVI&cfGL9EBD}A>OZWpQ@<_O zt~t#&{z?q`#-CQ4a=jR1^2pwM{?oo*08A>K^-o!@Q{%mYVbu$XId(YGg)nyBxtTtn z$p&4YRk<&odg1plN^8%(IjtqAdxpU@!4)`+#1ehiTIJOObYDZB5M6yfC`wAL>JeEh zfxwK1X82f(IJ-QWWDQ{7XU2&<)ss(ac`bm_4}XS5R;RJ*K%)BP|H;N{5$=6?%Ni~( z@Z|m0OCJd}Cz6GllZ)oT-pY^dpA2byhe(C1R(U^5+>dNG6&1PNpUYBU|5wr(++Y2$ zi@);P71l7_OSV}*yT8kos9S57D5aTI{8j89cwKPj?%DFcp9z9eAKl@lE0ezL!JEVG z3>3|=Wuq?cEAYTs^eeOeq0YmRUUz-2n9OS<7~ao@xxn+pyRMQ?QEhM9?drbQo^?^;ICp$Ie{XPGO@Scg7cYPZCS_@s)Iq@xOu} zeJWXXonwVUoCgM&TbuPHwO@_`3U1!iIhBtVrE@wbHcb>AM-8nzQd521iHjLo-Ko0-(5EcK z@r3@vKuVl#*-=RR_@)E$Nv&gb+n4h~sy`3m)3sus|0=p6;eV0M%e{AjsdzV0Ex*Y4<^Akn^z^|?ymVg2t(PiO zX*}y=_LacOmhhL}hJ(w&Z`5)a`hGToYn zv6}N1Bf{dDA8LMRthsibdcudR;Cj#15XDl@ZqbcWzwg4C!vPD!%{A63w z5f1(p8gwyIObzp|`M{>r9(j*t!T(Q4^YaSZHef^EP&0kt`j;oQ=)`%g_lwIxx@&H3Y9``fi4(ONZEdB>a1-=LB#iuT{`Iv8aS2)QW7fD^x`r%AHR5NxZh!IpZNZUtay^%$)xYs zff@0Y>@yP}&J$~|Io&{I*1Bt+?aBdS4x7DSW&%mnIjThQC%;AQ^-D)-!x23EROty6cr<%%pN$_ta}E5^1S*F9gEH}eVZvIwWmw1|dU4y&8V z*rDk98bs}(%&lTGtwyb4-`yb6oj+|bfg)6KrEii(C+5f-D zC*ry28$%GQWE{+%Fshl>^1;C?@Oi=$DJKEj-@W%&_+uFXHr#vb>rLqMRDYIQpcJcr z^#w^Kx2EwO#ik}WymPGio8`U0T!%gIa{MZ*CatIUz-^c??*KatqHZ~fRCnY1s-6zz z*wcC+v5s*Umx^1-_HL%JiHzB5%9lh;T|r_ZXFmxo)Ac+lVV#morvU5IN7)LRP;lwr(Jg-|Cbx))t;^I=Z^X@rYM# zvIe$(t>t|BAQ}iKzdI>QFfIUJ(MXk}o;`kinXjC2Qz2I@=Z{<#OG94370=VYtEB+lbnR!!pW{f7DYAKaf=ehQH%9K{~zVeKt=^Ky}_l9UQ9EZS9f|@%8T} z?Bi|Q-n&okJj7F^?EcoLn;jYgm~Y%-b*{9^f*_Qm=JwYI+{-{9>(HDuB+ev?XalkY z&$P(Q2BPcz@o4fYO9pUF+!!!`7G#foT~dDt!OFbC2}tA%(V~1) zh+W}1w|}OH#{(3I;iL@KRFnF#)~DI-vQu5$?7WvW**B-Y=cLsp7o)B#dtz#H-&qLK zzuF?#_oDpuV3y5oXS_W=F5+59Hd{>jHieG^z;A@$4m0Gze&5YFeW>#;%|_1EQYl)0 zngSrjw+{C?S>mJK+Ct5l`;TSQErwn>stODe6H7eQl_fqLd)Lg@rt+wMtMxYWPzr{7 zGb7vAT3>OIsM@N(zzQ>NERKHKtd(Zes+F9onX3~Y2yh=O4sdVD)DGdPOaOk9URNzt zEegK*Js7VlCF%U^;T{j`5rWysaUSb5^N9*Y@2~vz6HS?e&Qo4AQ+rg3&fbksIz!{LtGedixj0wxC(jakrn9#Lpljg}af75W)kU|Dspx_stl!QCF- zaz6i#r!bmcLa@AT+70fA|^---9PAm=lBZH;T;VFy#G~0UY017`1)*m^o`KE%U~J zIUcuV(JmLXRz-u}u5jU_{pAA}0{61yEF(Xi^1~IW(@MKaC{o%zV+ViS1I>G&;VBHU z#VV2D?hJeZQcV;QBaJ#dfR*(B73xO#VMkrJ7)S%e;hGR0HW%P)%HV(bN})PAc@vZ) znjI^qeDFIswdy5E+rDK5zC9ftf>-ZqtDad=R#(mOTN5>JG74Q-@n8AGS%4V2;&kg7 zuKf4$Snq)VY=|W_@iIxmjk|bsxvN;*1pVfjjaQm(jO>^ zF1VTUhiA#OnsCER!Kl1e>@Y|raFJLg^^^CK6#MxiVc0H!l2RKu+pPDj-7Dcw>j;l2 zGjTdn0O7gq{Jxkm#@V1DtWtPG9MfHQ(-UW-1>3Aw1hhRt)XhPEdA zL53-Q8qCkEBa7rv7wMxAIlXA^y-b~wAgcLLYwU^EQ%@ro_g?um8DSmWS*D~hnDI81Mil+w+6{CxbAPElQv zFk*sOBO5H_Ev7Pb1K46yhS%WNNfdI7Ji>AH2pgBy5%z=YBZl^?t$lrcs(66Et?+gaSqYSQjXz)ITHkQF_|KwmtgrwALB}lhziWlOj&-tUix9SmS4Q_@O9>*H5rSH%lkuz+mR7lf>Tv z#!7=~V&p$NZ;OO2$H8_=>GW#9XEUt?(@TMjLf7t;cH-X7MA0-nX%E(JA&P={E7!o5wT??$a9FAxFB2mo znS+f1IJ4l%P#m(uN?Xf``mR;018P&*b+GLd$+%BAv>h=&6FlyqTkv5}}z| zzwF_X*bP!EF46zB(ilqi6WmYX8wAPOZaoC61~PD3%}jG+_F39BxGH7mecGno#Z!j(%aQHaU!JrCk>l6JKBxmymMj!JlIrV zSG5?qP#)^3gdOy~!Vwv%1?M^MoSi;_2%X7hvwaFjOAg(IsUspIj~Ko6!7veJH27DF=JZIhDKN^_%D|ZdV1X5CS4p6K|F@dZ5kZXlox}N&}%# zrw0W_c1$E}?aVL}ZKPhHurYeE-aD9j!w*o>)Sj@^Imcv-Pg$*fr&fW` zsPH{}|2LU5Mv=$oZ5!{95H&Hu*tP|L2n;A$4C)SCp6zM>tQm~o2eoMKZMu&cwXSU9 z0SK^Z9c3DO=_g2Kr?mfwFP(?LU?zyPh#&MI)yovd7(ZY+Cd6wO8N^C@t`K(V*P2lH zK|wHLaDRzEFk#`L5m2@b&wzg}qCmp#P+%?=1ytw;0Y3-y(f6c7QMoAqYs8C*} zImeiwhC;Eh zy3et9DigH-g!LeO0<@`DsWRA@(1a}>d^31zZ)gnAVcp{l4dpjJh}OrHcs95Tpe~gA zRe69kU3py|KCg227zC^6eONwVwN`&JrF8rCm`2{r1e##>hD@CtHN2$j=iF=|StQjP z_{s}i^5xK;#_6Y-j8(-ryza|2=tlFI`}# zOlUkTnqKC67$uH*tljw7Qo_m2t=M{`$Nz)Q=KIvsAE^nQYy|XE#7rnf1eAToGw@H~ z13+2WdQujuL6bPSJ?0EIcIN^!r=lz$`OudZSHPj--h@jfjvQr!6)u#jFE$OPXsI1-m$s-6L0nv zW8k?3CY&K}f6^6rsfDAK?tR6m=k53E8oH z;XuKyzP?K&h`qmc2yPB}*y^E9YN0s0klV?L+ow7hcz?^Z07JxrIkTm(qX2{7fKW)m z-jKP1fQM8m;`m&ko)bsWF4ULsPzHD-bkwOqoQRRo{!Jdnk-8AA<<0Sqi$?u`yZwDu zm5OiuR0Zy=oi9rUZv4t8Xrpg)v&WqM{L_eHP8Koc(9@H=dE;w1ho#Ww!7sg^L|P*e z2Tyxd(WV+V2SvUxNaTr#Jog(IE8=HmodtetlLb8H;zZMg{AB8HeN$-|v-P_-T>bTE zz75NQ+MWA|>})G_d&Z5{&u| zdudpmX88RHPCM`^0wtRJ@C-0wKNhg|S!QPl+5BM)5~&;iChb* z*EaZ5zZ$fi&7R)>RnT%~Vf$IHnuM5QQ#f;bM<#AQbfyffX)C~NCEX}mHnI?|>*OUx zQP({Rb0)0?el*GUb?pC6)dl3_WH5GX{o)_<+e0CP@Kf&SGKL67lV9#AeZP42hJ9OG z!P)HoZ^8oKg~FGh;}TDHGR6xU|9R|bk9^9>xpK4CVQPLLX3DB=@49{1*m!V~+@K?H z`%8eUjne&4mfvu(#;pss0;0T}`If^>8^D{@UycE*my}Sa5n(UXq{87Ai1dR_9e&aq z3tX~Q65BEgct%(ZM8A`licw&X1 zz$;l8z~%66a8ze<$r?5_4pp1w04Q=_xkH;-Lv>XQ0_YFLSYry-YMNd*EYZe>!&U|w z3J?R2@-RDw#}NvZUH87kznKHA+mQpW4Afkd95z90guX<$NZ$ft509S z6^*^1k69Dq9XW!H%gT!@ydbX0L7`C7y1f z_-egU8gkja`te&W8}=9t=Nu6yf!&spmjd-BS@~`KlSgC=n>M*mNCHV!Z@S7kOfwCQTP#INNA4?!as)2RU07$uskQVk z2PJi(if<{_b_AM5_+%k%S@orAXv(Ft|JV9*vqSA`V)INfH=F)_h!27`*N&BrIZiHr z=3TwPMr;<>&g`D?1QV6~CzSojZMh$0lGy_0bT^aJzN2>q)$AN`h#1PQyZJD7mW8L``rT`UnISPT5@+bhXw0bJq*&9Ei6kRi1S z?@`W{u(f`p_K9(^a_}p$+X9Kitc+9=E!a|{DZFWwexcVmEoQUhpuziAiD>p3Yv7dE zM}u2j;W&y>@z~3a0!n*&vct4!faIinSb}8qC&A0)57PKvUKXH@j&J%uwvW`OT| z-RJzAje9DXf3F^inBdqht+A8@GOk$IvVzG=l+dj^sJfoToO)B!Fdvawks{qk70%6w zskIK0tDd{lexZ5?=eM{^fmyz#@}5V617m`su{ zLoY&NNqGas*$43&1d0$Co7Lmp{BEb|t0*V@&BRtqJW#>litpo{C}Haoh=!cNVfqk0 zpyfw5?aqerrT+$*yqDP7Lx3@AUCq?GGMfequ>kl45QRc%-=+^oRgNg+QygJ+FV&w_ z{Y@uT8m4D2R;fF1ZAZTe#Els~i)msA&$JDsXnLzE)k_`T-bxom>FSW}g`f|yCS~L0 zAg2TR6MPGkDed%Hjr4IAK}fl0IrG)?-j8bw)zakR(+lyMp>x-q!A}uJ++pV(i*v0m{=m8RB zqR!8;qOuw%b9ak`Wuqz*2?r}LKK$c3`$HMq4(Y8ITgzae85J z2oI4qQgQ1jj+R??uQCIpJcZ}>2^Po?$Z%qOzt!eWg?foXCBs-r!E=Z9HxM8ch~e*# z<7Vry)zcf5ErRu~_A4+KjK-n^2ZVHDi!!vi9|Oo?SL0>_!IwLXsF+^(*($rAysI)1 zt)JCy&Sg=YjV(n2H?qfOqWuIrbf1wbw{pkSFL$}x{T_I>8>kLJW3KK7lOGL^@>;1y zG(NIylodv$VNIzz^_c^DFmw$Dn2pvgm~uZI;H17{THGKEmgE=wG$3aYAIeqR+@r4` zYblXx5i)e9V4QVXgVZAZ56_3Z(rX%Yx!ta?&o5Ml*wQTq`3ria6$`9UIPdrV$WAzOS?moAi9ifdGLI)PMRfm&;ODzEhcsr`GFj+uC z*ou}uCl%T$EY>B)?d8b@CctM;+KihN&fRtnooF83N;mvVe^NfP_Ni){g$>60L|scm zCX3v_zrxT4*NGg?RMH`J+^%B|FMK$q(3;#CJ%3zDX=^!Ig;QPbRtwqIJKp%P z_On0mh7ies$K@FNsS|r@w<@|7+Bbf$6e@ltm(jm4V5FnXQM#B(g9QbDN^--ZMn;J{64n5Z>Et_V3aRVWs*pG{||2SvXHKb+xG!7vzC*Se`CJP=rw=F6Y!!fw`|Vopx(j1Et_>ExRImif=!LcAn*!kx7oMh zm1Ebk!h4&+o2*V+^heDohQ7CYN0yg`6Av(`p~`+XB8IqaDeQ-9YpFm5_5>`;=lp8R zTA;S>)fz_2-Si7m+HE1F^#<;s8lgTupAVMPv7%gbcj^@N{F z5Bw%+dgNd39#z>a0CWpiAK1Gm!rmq}Pr%5i2^ahf@GU~?j^nnQE2rJx#va^a7X|qS=NY`O7usHFXu%X=o{Ed^m6F5-HK+QW0b_KBHDj z@R%hO=V6^1rg^(8smhjl8hj(b6&J*}d$VL9#~rJ3Tz|#6USv81Y=H~7gFFn>eRY%! zqKiIN=-_#}Fn-<@{Q$f07{SGgp9yVVp8a#D!aa1}YeZ(ZTTDw16&{+KOv*M9PRq+A;*nsbg=n~%%*Px|c7@0w-JVn1#Mtz0oG z&x0?JmR_LvrAlTJpWCu$j_*K}q?j~+yLcN?-1iG9m?l$kQ!*^)I`(Ag<@P!mQpaR*u zB~n_3fp?g8(nDP(d|t-)6CC6|QT*xyWh&|@@PN=dIFhipPm7%;(C$7f9|)OhEu`*v z-~$>f+y(1`he)6~Jy%Cn5nPD6w|c_gD}ouQZY|OOA^NQF_2`LOl%y1rmUiaKeWR8? zm$Vx#^1OC(iTu7I=;CZjVwd(j&*ARYb>L}Ing&8%y&Q{bif)E;sU0 zl6);2UAUBsJdk>U0%s@5{fL^$xP?Y zETPl&o_+we;UT03r4qlG7k(fyuX+~uWhEV&J%)?kWeowTg&xrLlmZNcPZtU-!nFg! zN9uzqE5X!{L9C=t(bMq#^-@9>MP}R*mcVktd*sIpxA5=79{?MfAcUwzNW9#m6Y3%Orv_$8}x$Kw!rSjRoYZnhIb&~5TsaLlj7imN2 ztAR|hVRhS=e-o}&j2=X}jq=KtkB+BdCR698Lo3pggF8!+5Z{TYyfYwJV8Fs!^Q<3H z%C?(QSLQxRAO{ICtaq)kue~QIB$0FM|20})1UOoEzZ2pp;t~=iV4c)WdQtiQ?V`J5 zyu)%kId3g#tNlTPVy7d-&o+7{h|VN}F8_3mk|ti*9m*mZQJvq(HW8?oehSSNBu z%AQ%^p7YDWs33RN%UD|aqo7@9Nup+R7%tl(`}AMvqB9&mtd9S(<~M*z__M+Wk{l6Fn?FwZU;>1`Fa%ur<@!hSjYGFhRg=0oa9NmbH`6A+;}6w zz29=u&+l{3V|#{<78;g~i(5$w&yMyRqzo>r7ctNjdYXnX6JW1HR6yIB?m*A9nal$s`h1D>{lsY}8TJeMowjDeO-Dt^1 zh=vqyl#h|`C{7X~hQ02kBv3bj4TkdFW!*!w1cY=NvTrkL3OAV;%4&Q>#mp#N{@G0p zuQ>WAjm%$`pP@46yR>@tBf8`fIVk1iGy!AY*cz$98IaR^w**Ie-Nay_dk&v!PA1E3H_%d^|?BQisuA=iJL%OT=`}6kgvCplzCim8TB}B5h zfkBA)*zEZJNH1>&&3Q>RX^iKfKYZwG<3jx`;Ah#KbAV~szvOUJYhVOUV>w-Fy0<|Z z;1P_T-O_U6qW*Ng0%I=LCY~+ zt2-DoN6(>O!|Ej9zAklw*fyS9?dRv|Vd7(~D{8i-N#h_}4Ar1NHz+mc+a`mOfOr`<*+gxL-=WU zpskuTQsDFg=I^zdV{DR~`pyq?Q&UXS2~KyUZaQrj@*~y68cj#b7t34{^mZ@pLXr#U zOO;MjMt|QKd}-ay&BZL-3^*f2BGj~smvJ@R;#)R(R<6(vZ~OfEz^zL*GH2o?o~eh) zO76LJoayk4(trA|t;g2hs!a{o-epSmHqTRx=Z#@yduQKx+T^Ra)hg`iML(Uv<-e2J zyOY0hQ7Iw=0A*oI82R;Mu2PPOpo8&odzd|J#c_JM>4{lBE-Syw^mK0{oGMRhmo7Wu z7$9<;7;L%u?7pmW#MWg>OXZyTe!FRV$t^Ij`MXirZs_=o&!l7G)8DCbu%(Ei!Wx#gBDEG9c~;_;QFyhVT35AEu{UI5GtzJ(DbR}}ltf2WKQkD4GpOqP~tIb5OK!HF(Usn3g zJL}F{)V%}`gf238Y!v_9StOCU>4;w18?Fz~*cgeI3cp6K{P?aDd+sLR2aB6hv)JfI z(jo=1DM=bqla7swZ)2i&T|)D~*E;x9O&4Edu3=Paaug7e!-w3+lU|gsz&q@K>?luJzejqRS#bT!EjYLA7y}W(19xuLO!wxr zrGv#3V1iqh3Q_~+PM_Jj;>wL*Ch7v1#I3Xj{y)drxNfDsA)6#QS@|`}YSb6(iw_3u z+=GKtg95qalv%fca&ERnV@>umo)&b2`GoSeGy|I$e{{p#TCz*llCv4hP$`Y_p&h6Q z8W-(u;Dz65D!^=7caBldvg#Tx#k-n|G6f~so0++OGw7nNE4!gdu~=&OK%3iggC(ZjSaxV?$ZaI8tP~J3=m79v-(CAk((liH9pRjVCKOx z9)y}pg46fJk^+0^>&p#wSE>UqF}|ZU+xua@FV{$S1yD0dvqaupRB+?u{gNxNQ?4Vkz(gpPYv{ z*dh|63t<|#U;ZZTq;~qy1b_>k)Vq)2&#@S%@H7#L0E{54&a+aS61o3uj)mjXwp%F) zy56DVi(_&J3(lynguy>4Gdb7aHQ}P-5)i|VIdgux`m%^kD%^j? z!Cb>0-?>-r6!rU!mN+j9gv0+*&vq{tyiECNtEVeHcEj_znbag-1I%>RZl|a6?0)Nm|Kepb$=dIaFOp5M7I;2nGatGk*JclReW!jiROaZPYo1O z=^K0H`IRdT1@xO0n(m-7Us@Yhp&ZR(QWd>2<{dwwy`N0qnW*Xk2!tjz4Vm*5DxAN*=c}hzg*hQV%2bM+mH|LH}6TGii2%8q3rjVeyDbW z_*ge=4$dUrIR*AX6qX-0e!%XNwCcrR^1s{^Q-Ov&<3{$$gL`~0)ZH_qmEP0*Cg5*>)X*DvAbH> zU?ap+4cs5?-DaYp^a#!b_!+rKbrSon{8C#!Oqd$paVQ-uQ9B#0h!$Jy`A>=04WwE- z<^~bWT#xZ2ry}ToW$;r*>S_lQS@6Vq=C~7n5n*QgUC49|05|fWL z`FpD1LJSn2lJeHp)wEDwKvL4FV2t0aGS9_6zD98`;1^+FAt)}@!Tw#+D1mM^qqo@{ z^dx4d@yuv!*rk`vm!ohMKUZ=^sQX=M!QHAQ>Z%hG??QJWb6})sUl54K`AXndAEWnH z>gJWF-T}72oN_Q^N6hZfkcAE5?xd2Hr=TWi{JVP5BN3z5=NYC~!iros)9s?hb!K&L zEC*ZScLXk#?W#-cGZ(-~7G$Yr;V@77B=o!)P~G{3eSbS$W5C@%&V1o@9H}wCbxpQl zEZ4FnTIbor`^}5L7sQQ~<+8<}MeD(ZI0t{ zZvsDLVP2bHw#9Ha1ccg_B@me`=wyTaN+9{~oS_!IxWgW!u#r6reGF6AKGeY?W&pFNIH_sqD5cZ5FI3Z|WIhBA!g zK+pHg?I}KmZk$!8poe$xme74k{I5K!5t%XWZ7?^8czl4l+XB>pSSV?!1MUExA7thu zk?lK1n)YEm7K(v`>&%4~{+BN+sU!6n+jO$JbeImd+W?UJovhYSQ_~`)-S7NLtZIkx z(g_sbu~^YD69~SyLozW5Kdi)i@xoTk+>R?M`$mWWDhvpn_mPvv{NP{h@IzVBKGYzW`&&x=dmI(DjLM zk;Dl;d+5peyhvAd|>7)8M&yT>&kEIbFW)xL0m1Ni|ig^_}leLKc(h9I8_|p z_G2v>_a?tw8Ds+m?n0vH%r8*y;@$uBQXzlVqHt04bBk*=b9jwMy*K!65GAo|^-mkO z-OOA~ED|*iRpkoL3Tv_lP(%wQ*BiT%nq~FzO|S4xc=t)XNsrovw3=I8=HmZ<7f~_( z4R-FL4e(oR>zReWS6_1R&#^gTZ$}C`a-mOpsSC)LZaKA@3*~En!E@9uqO%TH|85_h zW9@>?JMl(3!qrB*y@mYh%acvz14ncpd5H`@(p2zwTYhOpZ4Yn02HGx|9?P<$zW3Kt zx}tUsO`Xv|B>nNFuP?F4gycaVXM6oRqRC^tLcEA@{yXpxfG7^q5G8L1Vm3J~uwfHL zNi4?9_%t~C9+4lNaRAUS@YQTJF9(@K}w&3FbmKJaHvP66jio{ zcP6DYuw^@CH)x7an4t~LP{-@$43>2}SgA`A*Dr{1&I_wZpQ>0l@Jw~fMOZ~G1_yGY z1(}+;vu|2kT4BjQlc2yv|4FiftoKxNDt7ssTqYnXP~O1Nv>iQTBIQ9=7zW!`50}Uk zwScYK$d@m5$vnYWQZO!gWh9;@z%&vf)sVmBdm`)wXLd z!8^DTQ{^TJ`0N^0X%??hi7_W(IqNL}U9+!o+O!b6dJ?z!!)EX7plv9=G@0A5M51R* zi0Ywl&+Gw>dwB@2Lgu#K_CNQa0GJYC_~MrA8MCHWJ66n692>rNk^8aQ|Hs~6hE>&l zZ@{Q*w@RsmNFyLfcc)vB?(ULSx=Um$p(voz4Jx6efHa68ARr+P0t!f%ln5B_T)^g0 z*}rqHbDj6&{~OQaUTe-d=7@XTW6Zgt!9{psL*JExZ``ja`(4kIqf&KUpbp@{m!0XY z$G~mj%aUjHLA#%=j%e6x6XmK8$sVBn^Xr{~41+amJ;%zW^y^e5JaD$%7p`80DKgx_ zBCHV$Deq^(ebVIP%RXtoBXsuWl7dgZO}N+T0-;Io$zRtg ze!Ust4)2-rkxbDB%A`h}wi~&kfxSCs;oYky!&c|CkXNR?^+MR_=?X!>_fXVb01Y^2 z=GAUD(GoW|R>?tii`Q7tT-c(E`X3do0-L6WudG#;-aI1bX z62)i$Y)9DT7uw<6DKI5uH)s8DBCp;uW#VN%b5WKpb%XvfeV z2DPcJrWUV_gdfihy!VP40G7NKWS!fhlJlSh}K?2wfB zgFiTfQJ^>Pv$z?$HXNNJ;-T9EP|pB%q4C&4lF5AX9;XfY0D0J_&D)VZ>+3Vt1(oBq z8zHyWr?{*5e=RaB{kp%(l3yb*S`;g-|LXKZObkq1HjLLf-|2guPwSdx7%=DgId3|v zH5Gib#eNBA)4V|j7Bvnw)(?z=6NpqnA;vVzi!XQ46b|Rjx@2wX$&gqc) zMw|KHgE>5h`_;(B)K>pWDk$|EQU5slakBNB`N+@Q-8-f2i2@uXGh^R^CZS9N&^6z4 zP44Z)s%I@1%ZJ~4f1&49g{k~5Tep{U@YvENZDK|P| zADBh6^tAfLK6=nGb&YKN11(;GK!j+f5bKb=?&fw}Wo2@3;2#|qim;`A!j8nGq$FR4 z-by9^Uc-wZu;TbLFa#3sDl@8`gyAt_&AL8;N+jMp2Vs*)0>ZQvDA z)6cu5YI!CZ$VWJT!eKS4Rc2OVj~Pu?Pn{P1GK+V2z=*eP;UAWwyywv$ zVWL3^v4BTjKZNP9Ip5cpw$RVmApaD!X$xbFCIvdQon2_LFa(7ZPdIx^YD&%bwU0eL z9YVA}cT_I3{hao#eOT+!F7_%~bgM-sE9~;dGhQxnZPNEQcZv*dv^@g4g-9cZsc}8u ziYJK}|8CsNyy#(G+cR&GH8mejpSJ~{*zC%8k1ci^YMfwa(2EK4eu~%so$vB{nkF$v z){7C9C2=YwFnSCVb7jx!XicG+?YK+w(-MT8*f(zo(^(-yefS?}FcBhY;)w*2KzPmo6Eiw7gME}Nrszd}lNTJK1n zF-+_bTk3M_HQUu*^4qyzmdSR@Tdx*;55c91Vozk@2$rCXWi77GaqgP@4sF|N$yc;J zi*BjA4n7rwT=%Cud-}n5reXz~TfIhg<8|CMWepx6a)fjIUAa%e)#~y+6hA$|(F#ap1!ARlJnOogVm}Q+D+mw0wGc+>e{zZt$U% zmDRLzn(=b7HK|Hex9+j4w1FUX)P_^}TU@dqbW!tJ_Lj-I;59@#_sslTfuG*5aNp95 zTR#T*=8g|dLWc)79wTx*6SU`Q7Rl|en8sm6x#m7NyFN%t4zHy7%vX^SuBCgc>wM3T zmMa;J8xF%ySV4Y>jHczhyOpsv`s_i$IhOgLx@`Pe3kP>~tKM=h<2{#r*m+t8FJZqY zUMhb5Mhw*J_f}VpDq5Xu5s=5gb1Tq)ZBcNPTieY|mTjhbS-W=QQd9R$Z|m}p%fm7G zRa3|e?a}hdv2V2skxd>e$3Kz}2nfUX4iD`aRF@xYicBoOGnqlMJXyrE@Y0MIE3gXCAUuXQ_-$5kr|I;TmcQe??b=Jv(OucdDw$7* zr!WAI6NNB*%3??yVS8LyvGO$V_S6_Gw?^F?Gf2X>=rW9)-ki|FU!XFg!a6#kW1u4d z;S-wOki8Jn`tBnhd(0!65ym;;y-ZsIw>c8Ofmx$z(iv>=k%w*0WAv}K3t!kc341C{ zJ$7gQTmyIDeapAa&TVSuO(YRNN#omiURF;@Y7-pG#^@sbYtIj&XJJTyJ4xu1=E2h$T)@52OlkZ7 z*?Vy2$O-}wE0}LLD?IeOFO&!=x%6Zz)hyt$p#aa(6@%8k3^px_$7@NBr0X(VBT%vV zYaTDhdNkGgwQ^Pkio+@Z1QPZ%5;;Yqn*Z9|&}_T%vdzb8Z`bGsQQvUNKNyXE+soz9;sz zOz)l>_l1qbR$4dV|MLj6NZybDyJt@##K`$}pC9!@|2&`_gQ$>>Sa6+b!E>1DNOryT zj9*+_yz^Mcly+%WFQmApG)Uno$1Gc%8y8RfJHtJv8XT}etVWzuUgKNnzR=G+>o#YZ zm6eq&MoYyG!q%u&FA6g>s+u4b;Ob6|_Jf__l!cQyVlu=Tl-kLG(Cm6XTwT3tT_u22deNjsM&9MH*Ae;3u-!@XyMNrZ+>}O89RZ)cCk-wJ^>JqKfH^Z7dF!ex9)>GLAZWJY8m_L;sqB{hd94 z;HFTwm6riX?s@TRJDefpwwT1o zg=dONN*O~#Lvf;y8E#M=qdmI5llV4SPPVE7bJ!qgKY{y2gkqb9Sk6utetlc$%yjyW zU=IR~s&}1*b*l_Y{S0d8D09p0N!J`B%cP?zftrxcl1me&-ncwd-=*MxB> z7Sx7-V_^D`AFDb;7tRh(_>87fu(s`xfMaLJkj8{}x3aazjkoT7L;d*AmDZ_az6)pG z$>`-`ZRUkkrYoDSOkJLVBeP66#tqFz#KZ;+Od3CJ9!5cxr4(MsrEqpkO}s=G%~7MJ zr39QFO zcE@Y>0ubv6+<#@u-*N21@b#J2Fmizo(ywQ>W=a3!`%z;agWZupNZYFwke&V{dNOMW zuVd~pcc81k;)Q-E^V8$BUn>dKW6wv>;2seubbRS*kfNhOCLbh(Wc-K9YPHH-es4|? zYettV=HeS!Ji7uRseh~r6igAGFLxi{2GWdx#?}`qFW%mly_Ig;+`@|m?Z@8(rM-qf z;YzB{9oqF3x1ogL$@bmM?(qd(4i6d#kG>oD{-A)3^Rw*JsbNi^M}-iy+IO!$zx^1~ z`N&2gZei)JK5_Tsz1zcZ>Q#@r;lfr~Rta$U4``8%%UAACMbPpzp+>0zd+eS{0lZU>p|xhy)C>U@WV^FG7)%jr)LYwh zU7|-8eGF!Vf4A}hbXvY9=a--!$f_q#k4rBFa{djtAs_jY;Dl)5bT3rwpCAWQK4j zQ~EPM^&Q5P!b}s@4RB4zzv{6!yb?X$=DiI6m+$YJt5ThGeuQa;W>PzHbw0Rl+BfxB zU-voRNf`5z6hubTjJ$vUK53j>KI=-&$gIG>qQ&LGVA1+<%HH_3!SzLUp7#_aVp2fH7bN4L@WQtB=hn3`vL;Sb30*_lN7`L(y_=H~o8 zif8Nv`tkC~2^c%8(xvo{NTIHkuuI@bOU*(A$7n%@>R;5p>d7y`_hSk&OuO>+G2HA1h(!z%Q@@U~bw zm4;Ik$Shl#i&e5*_fmNEeuF)lQ8p65m(sW2lHb6bahMOZA1bn3j$~GL%!+d%MQ1TJ zGsNqMzcxi&l%J4HFbRodb* zT=)(kN-P(auiE)%+wPfC>@OLqM%OhjbUBojglAu9rd^odg&gL7u^4ZivQHFn%g3~ZN(&c%Lh5P?)5ccN z=dzP3jB3bmHI7$ClQ98;;0~f!i_vbSR`wH(SYFuYOP4O4CwVhR68&=HWdkh~;Z>sQ z^ODxDZEIWV&{ER>mRHSC-rExrdYDg4>#8DUMsbJko*e;x!7Ew(y}5-Q@KT@gvwJ9& z_o0E1Wg$_+)J;X_0)vx|UpCOh2;hXzBf(;~&*`pOG)DE%1IA-ro0c_5N7HZnl2Ufxyw z2yKr%ELT#V_U(bUX^=VgbMkAlhV%j3F&kKyox43*72Ytd!R<8CJryih>(G9D9t3_UMP= z8bgsPLylbqZ~*!k{3>FLu8PDX!Lmv;_6iDdb=krEQ)K3xihY$=Q0h5o0Lx3+&gm(O`ufUtzB5b-Y+ zcZzHIUAuOzgQR1s%JzQIp?-%T47Xy;8kZ7#%zXd=e}Ij#ur6x6N4+rT$?!Xj=n}0a zG)*1yvAFCQuTRbDac~$-1?%MH_z$c*g4>cDRd$S2ZoLQh7oYTeyK!I?oYn9R!+~|f z*Bq?{dc~LK%4B{nmxH>M(CbhByINDhmNyHWuTn~nmPcK3lq~lmdWV-Un)#r4?GBX# z;8;|&u`0EE^c*TCYBA|1+lns5`i~62i{B)+G8(12y6aan#^$K>9&l7Pw8*u1rm4p! zvX*d$f|<;eRC%4+lssYfolD_i;)i>j5bz13m4HhuxXooxZ*qB&UT0ru;I;wY=-yA; zXsR|m6i1Mz2jBQny5;EmxLZcwnu#*wR)a=L{f_ zu_^hXYJ4`82wvq8b11>f$~X2J55h4P{z;q=aXLeQMkVU|?Zwx4YAME#`GzdOG>NTt z$2J~<3fkTqL8Ch84=@qlBw#)+=uO_REv03-fxGGa^8$t#D!iLIV$Q}>QFeZpy~7DS zwhC-%S*F&r;(_JmU4=cHfZpY%QrGE5`Mfaf)3f`%j$Yj=K0G+ltB(F-r#ph3W0>!t zNKya_tEFQ%iVZq9E0qK{-VdyQdM);?Y=-5dkKc;kP|V4!Z&2R97j7`r$m=WK--fj% zefFT6#Bt?y(Wtx>Ri+YyOj`HWGoB`taNpCYE?wAaJZWm857VZJmF_rQMr2Cz2R!BD zu9RVvbd-l9#{{H|ujw~8yBBuz+Yf8{;@(5)xXDuz9|SAS=tKr6`dX5;M(W-4!a_PQF4B|6PkEc=mzkA__FSQ?Xy8eo6jSML5k z&DEB#6fEU=PhQZ>n&hGw#^nVzqo)%GX9t8Vqg$hzx4j^zh4d#x#15?RAa?hE zjRc3AUIn{_aogSZkt2We{6w@y3V-QWM_>Q5524FK_Qgg4^RM0A&YP*e<;V&y5cv4? zR;uRqY$DH-W#5S{!ZzJIpUj}`%nFG+2YIJz+?%KEpj#-`tWCIle0QNv-yHqq(NC^I;^M ziJT(r!Y)1Pr7pyD&A@e>|$U zSVKH>Td>W{>M)OMkPUdX!kMDg1V_GMP|XqnrH_Oy^YRTJ_o=9+9gD987}EQe_EZMZ z>FB*cGwEtP_iNlx*LjAzVNYl2C}7+>Ds{qDjD0N4ZH2zMeg*bPht$O33{NNA?=L`6c#i+%%5zGut2bl}WRhV&> z!F610kmz62udt$e`?A{_U{^0JuXgV0ixw6K+Wq0;=b5U0T91AuW~IvyeHjGvj0R74 zL>+W_AVJNl(@kt($^Kkcc|H5U5B#N@XT|y%jdHp{A2IjzX-O|?-0=fi2ky%xV4Nk zJ?RpD5ds6?Ec(F3>m0#t-#$)7TOKlAU92#l@Eh&pGZp^0vG*@O_B|!2Fg1|p92I`( zmPp}0>~tK@g^zW5%Vii;K8Ubwl8x!VFL*v8OA%`3)2bl7+W?M?c9T(bJq0d)CbmPk zc4=+Cl|v?h{k+g?gaNbIH-_NYr$+M!9vfE}07|}a<@!6~#ye*Zz$qWhnbI(rsO$nC z`va&1b{Qk@ax356a}BG;^o?JkW|xkpqMs{b|G9l8_=e~}@mQz3*uu|6orK9L;YQ1t z?n})mjNL^J{D*>Yu65O9#-dVzc0N%UL+w+q_b;U)hJu~ARDzwRxGY6uE^Ih~4A`$o zzALZ0&4qM<{m zf10KPpeQHcdk)yn_;*kK%v_LG_+6k)CMK)Ar&r^5xb;x(SPwZ$U5D`*2j=`cL`K!! z-#S$ZpW<^IY#vzhwgmzIq}zB9@g;jDisauCJeixqx%Z!sws8>~6m()P?K#T2H2lwc zLN?Y9ejRul;ft!`lSCXn!a4WUA$^RAMO5uRf|8tyYOyqa)R;bU2w=<&dNE78lxd@m z{!?5i(1s?3ZIGGruy1z3N%-2c5*Jg;1XdNd!3cX>|ojMZZz?lj?M& z6$;Fu0`f6%Jy;i+p7FwW(2EYmvXa@=bN~J0o{CHDRPXkMS@YTK#`D8{$kxG##a2 zXNfWLny0GSJ*!QArW-*bUBc95Vzq57BzmKMCbq-dQurt<1ZEAGMm3%E!kS&$eLgiY zE>71Jo@K7t)ZGj|F7=GYP*e@O%%$W0ltDB-prrm08Yr03e|Fz#EtOb;{;BffzC(v< z*{-doEWvHNaT6rl9?gl}N1g=YO*4V~v^9ygs2Z&)m zL&f{vRcL^X0EFgRlhcqJNGw>?Y&$1&jQh%_r9%FM@Sc<3Sxxg#bq(fkyt zZLAKsclD2P5B{uc#lL%F12ixGY~2h8r*kAw+s`G=bQfcnrKR_7a@F$u-z*+l(uDKM@aZP*`y#9F=v9XsKDA*+rxc&~B zuD(k9@BARiB_p2usZ}d3_%h4^#pZkr6=D2RT}ay=!5cwk_lP`fL@^e)$v%Cc@+jP6 zQb3_cFW_yk6MJ#mF)VZgMEyml_zV-1p+eGM^WJ-ua~7ggDDEG6j_Zzn2c9F(a7#`C zm4f~;El}VwE-}Cdrj~{#9p(IBTPYycB|@B$w7Gf(-7;v5){5kw4`|M zP8t~*sa51wU~X<6ts^nYwffx*TVTJGd&SeBw#SDFl^6Ztu@E<4{8sCgBdh%~51~XY z?G`-uTujNe!BA7C5QUj)?&QPp@~2p4Pa(5&R0qdyKB|=z)+c|Xq^QWsdAo;;*?i7C zM2a7rNK0W1G7y?+T+3^Hj8+{9z6#&8G)VV=+|?*L&g6k#)ufUwDnR^cfL$CgfUJ3N zSyFQ2Tq>Wfvzk+xq4}MULcpfCqjwLuX`+x9R;d$h%qNtGTSYWwj%SUw(35br&gV2Z zN_A=TrOr)Ta1e?HTqZ`-4tUmN#wg`Wcm8MxJJ^AZhyWtynE88qH&|uneJ3hgF^RAx zg%n)^HcLj#O@pS8ihM&uJt{pnx~sl2UY^l*`aT7wq##S{Qv$KzkSPn!Ge?$Emxc!s z96z;njf0&;JePBWX@gopPe`>{#mIp@_#mj6z0J$*DvgZwV$ko{31oHw*fD#@(aKlY z%tp78STBo-EiFEJxKC%SJt%2oL0=l2!hFl;L#jREKjnjHhqPcGD@xvMpMPKq76AN% zR+=9L8Xt*g1H+hOde(5aXfbx}i#;asIsk*!&{1ddzhKT`tp7u?b-iJEQ4D|w(5aO< zpnLxy0%Xd-F<(qH9tWy&A*{Jly#R{p9mV0O=7hNTg^J%2uEwgmnEu(Sf zW=*6UFlErq4<+m>6%VFlZ(r;BQ|AvR$D0!1P8zmib5>*!81+5~L0ki+TRo`P6b1MG zvuz*wI_Zlbkybgwd=qqkh%MoSp>oRqeuPqQ5;vGyr+&DU_tIM1TKGbo*{ibaKoOM@ z5D&Xchpx+EmJ*|2fNiu0mFZp&TiNvUPKwwoqt6N;Gnm1Z^p3-*9Ptl#1u})f&+Xjd zy?YfHX1&URmoHzovZOD^dHvuF0vxDyhF4Zv727AKqsfs`mdKt5K?o3u@X7}RaViNaY==hp=rl54~=xQb} zI)$7ihS*lpU?LT5MIobZ?-;HKz|tJqhZ_32o$9h`+tYiO)Q#rI7bHNGYUmo*T^w=kUehev@PV3+Y8Iy~K2zWIFXU%s@#g`4Emk)@cbVtN@lJoi83MkOCf zSo-<-jTIU?9N2>xHC}Wzmm&WsdjZ<+A`o3~BYJfJS6*5MwUb5XUsjGuO-b?iCi@P= zXQ?0`Z|UJbv$+4(NL}axpCGHjWpQ}zB9>+a8OJ7EKBI5~oTc`SKG#4l;E>C#DvnC( z|BBMQ$bgM=-DX$yzA1P^4IkUwff~kc;1aFVKIN;R_@PHXt378aG=auKb48Kbt&wq5 z4J@B7>O)q`nTn`B)yEWUiAmh{_NhTeGxt92^4AuE2805vwBk6GYVi8`8I zn)h?`#5(opcR!Z}me9Caz#H3rwIY?dZq)SUi$yf+=)&Nj?o{-DyccNx(C8YCSt&7Y zMdR(d5(2`8poC=;{|h802!aRE=aH1s>b8zUH#RV!!3@AxU!k67K3D2#@@(Z{c)zq0 zAt52ogU@acT6K2@%^m?vaGybbT)V^jrC(0bGc>adHp$!glYiU@f>I7}N7C3waeMOxZFupRL+nUqOdCmj>EX z^>`hjYuQ&L#?6FC9~=h~`2!Y0M#BiNW-rrxO%xMLGt!YPl9Mi*&JEf-9Cg_R_U!>l zg?CqejD$VW;eR9@$KXC-$5_CQeKaU@$h$2+aDkysMMXu#m(Bvj=O+?1q8FFeT8q%e ze<7H2m@%MWOe&~Up<*M_2bQ6(3pIk9a zPFnx3pdf#jHURI^d(Qxs=H0jIaX1t~61?uS{JJYCRu+Clw8xOOAo=15jkUeGLPrVY zF8vtAiU>VUBS9Cr!Wc}Aq$fp&8_w{9=)z#v7Q=?~a1gJ<^87h!D6#r`?~Wl;2ns*k z?O$Duyd(b!^oyzNN|+z{(V@RRnT+Tyjxkp=uKH0_Jt=IZyOakM5!_FLT^+q3E{Cp= z?;}&U;I2@X>ot0z#D1*0LVwa%%!F!Ya*qk#Q8Ill|HXeR@!L`5#UnA^EBs!3bx`GB+-k-@AA3gtU{ev?c4!MNsO7T4*wySZ1nqYqj*c(ac&`50I?|b}W01 zl4&9^_sWLn&!6*(h=^q2mR>8bj$jIZM=I@6uv4&EVpxG3}XSHP)%if3UaMQ4wemEx>Wq)M7zyBx*4~)l)#{(6w6J z@hD;=(g^Rr3ZCKUGAtIAwCFXu%;vAHTX)YxoBEysZ{-T;WF)O`t;IFkslqpn>)(X^LlMB84Ha3^~Rhjd2+vL14Zn?vNYhq>*dy@A zHi2r}W@UzfcJ)E0Y2Ip03P;5H>YkhVc?s$ndA+N2P@DT}ez+VM?LYg`ocjAh^7l z97}K>W{gWY>iZR_A0LVZ>5q4}5<6&Vlz2|$+0$3}BX8fngw z=QL=$WF-X~3MX1n)vQ17Z$Y{Jv@*DE>Q;7`(7t?&T=CmSvS_=)-#7{bBB9HPG zh%`BP?!d#SVmtKg(R>QGL6>d;DQuq$Z8Cd*8l=*|Xm#*^3 zN!0xRQ$bv8jDj|{KF6RbOUyFYnU3p>>e*1=3wcai`@TJ-oq|7kED+q5`B&-aPen!= zVwxaj$~M*Sx^3q*^Cho6#WJW5`Q*4^t$BA27E0GpUS$ijGOJQ|tZw2hG)2&I*iy zkeve`Wv*eBIcU82`n!0G>Z=Ro)aY-g6|G{Q*xYM+k9}A8`Pm1X0$x5(r{kcD+Q54l zNOy58a4S{d+3I{NQj?k{{RC&@2}9?C$7}`;MS0iUbGEGJ&i|hA{9-NUyZo)D%GYB{ zB-MAhmuJe?qa)tC!}YInh^jYiD3HO-Yc}66j1fW&2w~(`swg>5R;hAMB`=TCubihH z(Am1GJ?tH8_dNzXCy-tA`uf3@W?&I^#ZqCV>=+Gc9@Cpw zuU>7c-tG~SH!n^8$ml^!G+vKG@5yiOY_?-(i-m?-Nh^Zer5F#XzuU`?oZ;LpXRJGt z<|?bIH0n(Wahq4n*Pebcpm0=2lUp4_>f_5kqfL6l`6d!8lhv@aF`lw%9M!7xpMfLN zD&cXdIN$e?>VruFSL)w@)c$y8x0VBnY=coHv)1t7(&r zas_AY##i0YXWmaqUbYrZ4(@+Wss&#b@}N zkrgKroC`au1PJO?xMIws@1fc+Z{O1nEXL^{8yh=*kEvcSfeH)rU#|t`o%RB*XnS@2 zyHnehpw48GvKQ{@oao#kv_?Q>DN{!kH+_6kZn(O-F+Cs@_QEmRMoQ2q!0xkBxdSm4 zIU3J6k6*Z5Iiy|mBVOF5YCM?yiBN6(%;XHXl6cS1mC`h6T=KweHPC6=?9u&5ozb)5_&-+9=b+!D-R#^M|~b19`<2; zGe?oZ^|8bLoXDe4r}3c2B8e}{Id7Jh1fo%JRXrHLN`W2I7l_nJ6NJTEgz#8*xQ&jE zGMN=(1y62qZL6)Zg$q1KWBUP!JWM*^F-_w>x4<>dvwxg;e`eAN-5^G=_nkRyiQPc4 zyD?{ti7rP)1~raqhfb*7?>_>iyBE;HXVDgy{7hIohaD&g4`#7dy9=l^KF0~_ zYI$dRbQIu;;mlS!ms}R^lyWL6thPDIEL~S@fyCxRfao8L#G*kX!rrqOE&LN9ed6p} zoUeys^3@hARRejhcr#u-I~wM~Wpk9aO*6(EtRAuJGjO0(4_ug^4^5y&%HOzgL%*2S zNS~St+C435JZx`C&+1u2=hYH)RvCcc!wg)5;z1EHt1g}pQGP_E`};(J&L@fWz@iNq zRU=Fu{jZ0!DUeR#RGwgcQ`Zq4(3-eGOb?ohH5IJZk>eEg{kF&m+Qj~mC}h(C2m(x5 zWg1dxo92ZKLCQ=_;wA-rW#{yJyA9<&o&Z5~uxnGem45XSMyG9>DG2^?ITET$7L$we zkPSRkrmj9^Nr0<>&#p+AlFTNmcn6JLVPI+|9^=06HgQiUP{VzuGj#>Tte)!*CN`NT zCeV;!Y18nDdgAR#Grj^kA}~zCV?_S$qtPtZupuR^Q0b!^PyNsfcBxI)Pbx?E%~h8A zp%XV89aoTV&yBMxMZn>E>;BtdRkdK5yidIS%BRxm!D&l_zDiY+e=Yj(F{BRzUaQ`u zy_#YEcQ2pyg(T^|GWinPBz6S<*Gq zNlwMD7PpyjV(p!+LY&Ld4Z@BwJ<~U(WDArT>NyF$(ArWz;lLub%J`P_^qzSCdHv(7 zbzjJeEZ-}uQ|4&J0tF!r)GM~C0F}qyAcSs}ufAoee_pvh)9DG~lr3Kw2X7B7XZ9tBbn%cj(S3o-2T4QP5a!!cCeyL@ z4(0?~27-sF#HJMWFU8J{k%EHrY6c+csbPMpyf9SL)*Uy>XrD#7uRlmDdefEpqM@e7 ziS`K8ToBw?gFlR3wS76$Fk$<6=t=htBF7tZLVO+ZhZyEg`96kWCNVv3R{UuzNQ7CJ zOz*&JkwwSCTsL2=h^C;xZ>yY0OpDBP>buZ?e#1I(<1y~_n9b# zO?gJEbufalghlK8_Cb>iS$u%DZ`kF|DaS8Jor@+a!=Nq#HltmpZu*NAIR+}ddY1B2 zp73&KM>B-tRBym8ZRNO&FGAcpKx2 z4c(=Fk75AYh>f$q(&}flmzHzZG;Wqsawr_PqV%~Jfr?sbUNA~Z%6wq4oAkG9L}SAa z|3MsUaHK-~hDsiEa|QiFISQ~i+#_9*l5DOiI!Q{)O7Mx zseM$cLYbM@{eYBR^^-h3;E*TzS-suF7G;pY86B(Q1n_L}rRK}Vc>5X6?$RQQoE|q1 zk0+Qqa-YBKtLbSaM5vQb<}eOJF;TzWoe#maUA+6LY(j8AdwgQ%8(wfVVzvmZQe`N; z)!M}%Zn5iKrzkz$?Stt3&<^%ZQD91d%`RPX=1;i@6-a7lFxp4i`-30Fd zZBeC;0|o8{lWMo`$kl(B=j}(5IpdRA^6EKX2Bf326>H>*D2dom!1#$@3f-+4h!o|H zlH*stZ;OSp4`*0u)zcPwwpz7MmtPo-n=M6CIu>uYpXuShE%GwdiC>oQ9Y6TOxj!>eG1-=vC{VY25v?mF$Tx8Ed66VxaPwrnTg}{=wg+bu ze2Xd8z)eVy6nJqku#$N(dyc(7v#ztSJ;s`A%djs25CiIG%G%TO4A(^}1q& z@A}R}dIl~<(i;9qD!;5~va$?9Cp~_?`$MO$q_;lm4EwJ`bYsclE9W!>hMaun)6c*5 znPqMuXy<^0Yo#%DopxFKYzX}}nij8v$Dw+)iK;O$)X8j^3JdGdg?#{??TM$i%Ysz- z8K#Dpw1!VOD5DR+%?25UMqrPxY}hHXQQ2@L>*PDFd>pCrZ{NPn-U#~|vYo+klW9YH z#Qu)e(6`OIrxRF=1y4XB1-zW>VL+fVz%h?#4O7K$KAE}kz1qI+QV-q1)O$c|Rru!T zn9$Ut3KC;yxP+P0Y=@>=U{icH-o7uy%T|HKkIlKex%FC`XY-+CC56u!b1u z{dUhdvHvJi0&`FhVJqoLGt=*y03ho#i^3g2J(=Qope{tT)Esn5jwYH5bY!dx^x~)+ zH;@xpv!vHsoxa&cvzdFWR=Au*3096?6@1)ET~Cz*#AOe-T|Uj5!gfi`M5}YS1Ix^+ zP~$I@r~1Gby&XfHst0nYeB}?UqxW$@7>42*)wW8_r*=0AnCjyRpk05V=J%vkwuIL3 zv8>+AJ1d6g`Mn2yf2wEUb_gpEvEF!LRM)4fFh-(EY|3%#J?|q1Bfwn$CO zMrGu3FcRIJ0I?a#k0UMFG_MZ#QXL#L0hmIEv zwj|%M+=0B2@_1d~JDM5kRRorg4ovtMtcBXN^Or?$u>OJe9@u5OMBSH&_i_nSp*_lb zifiKm`}SU-YRH>cV|PIU-(mWFe135;&t{R~aQv&@E?g1$S%=IEXY3D-BSa}6I#osL ztG!Btc~Qyvd}M&Vkj*RWwksErAZP%})G(7|E5|=5xUZ5e3f0MqFayZae3pIDP94Rn zs}{f$<|;V!q`hVnEFU}eF1%vR90Nq$KrV4s9FCm+zGWRC6UYb=d025yau-Sfy3Gh= z%gf7ql}|PW6k17^I*Q54g++0TZOG#-SI|u3W^6ipm`Osh81b@g{AuorJ3-#aS1X$x5PBL(u#)p z!14Hrh7z>Ni73*^-@zgAb)x;NLa%jmXhGR0F{-vK2yi>&c^K$JO5FOg2`&HLV3ZAR zoIzd%xEXw$Wqqa!WKAXKKN2UzTw)`D5`lwoayUmVdee2+p>z=qdRB1_iammzS&90S z7^8__#)8Z*)I0wkDFYuELQ(?Vo5*j4VToUH+Px^yq4O6ibx|_B5oco;24e1jI#1a2 z_n6F`S5L1V+1acqRU&r zw_gI+H(H|*`Ot*qFFu_6WfAIhNyEdI0@u z;FMr*+YMX&=Xa0?QYC~{OwUzJTvyk_24qtO0dVz5t4nyXEKNVJY1ruU zxIWuEW%AE{^`-<^ki>r>F>7CI46!AD1M%f{ur<5!Fef#eqxU*c&+R3{eLDX8x$qT& zlDB2x{)+G39^z1_LypnnVf#!vY`YKEy!)|Q)UZC`{6DxgtU#C0a)VzdaL!*{J5%9a zQc_Y5K2fDr9LmSR0-|FDW_%j64jK3c?Y~xq2k3GXw{}Bf@328P7JyN9jiqH}Sy7+A z#O|^7E}4pP;zW0kCiLKinvVj$5I)We_9&eIcu_z-@Wv%lnF*qCH?GCP`=}jTH=^VQR`ylE1Yu>z< zkRaB^*V+F1v7KL4C9;G)`2WFgFr*3j2&$YNHM1-V3bEY_2-)Y5ep_jNtI;orQK{kK z#P%&bN{0GFsMGZXxXSPgYKM9b-bu8g&!$8w8k_)TZk$#d#fT3i$asIV{+Z)97ob(z@TGT1Ym|BUQV| zJ=+QzmZhd6VkuLIBN|Xi(IMo8Ui(6hI!fd1=o-`;@YwTR9;7GW2K0gitz2(CQ15D! zdI#64=*B}=@}1g?_y+zW%qD~f<+M6@gB43@O^sLvoZ&URq1d`JhR3pg<2i!j$QnRk zObdn6r9QOdD=8-8kSZ?+BnMB6AOWb?-!}^}VqF*L2`VbxOF^K$`w!|omZeU5+B_OR zy=s;~R~jM=GN&-Px@EC=c!TTodpWFNHY0QOG%d6va$(Ww<9EQ7QPjImU2Rthuk9nR zKi-e}Gg}y={X>Jd&+HkNNK|PMk%9T8>eSTz0?nFt;OPF}6We<*O%w(=YmFW{uWs!V z&V>Hyq-aHtSi-azc5zxBsSwllD=<3E1hta>wM^7B0ze*TW6---nBezhnz3kOnHvXN z!vd!^u{|$wkN3!P$gzv2uFl15Gj}GuLC|_o{Y5#H@jYDv@kPUS}N8q;SlV)Ja)7nQ#|~Fi<5!DsC}o1oFgR z17x^uyzBWtb>}~!UfZku&&E+-hv=YvZY&q*CMJk#nxYW<*ZflmsVp-_t z(c$8ZYP)4}-oGLJaVK@?nyEu^;v*dUdUE zW^lI)MZRjY{X=G6W)*$xTA7tr*g0UwD?VTjmcO-o#o=bXCO~j}!Ne@F6$@wm&1e#Q zZ8O!Yn$Z&bhO$q|UtPCDd;0rA>_$K9z=scy2&B0N1^!EVcwxx$uc8|v4zKu@JJ0uH z8rn$C!8b%&_^q_PzKayOowxectx)irCrnDb>X(5$&SS;8o$KAZ7N!1A&JMFGC*_H` zgp9B472Y)?5kG3lwsP2mg0+gr%=A1iv|ESFd=5r95*AwfX8!8_XxS%xdEth3MAwB% zqEv97im4>xb+p~j=ABrzBDac;mnDDZV(n50b18BTs~g_6-|c4lZg_!&g10b2h3bTe zhHi~9eEzUN<%)kd!u)+|OKIV9K6{ztu5y`mo3^LvfP<$~r})-RO3m_S&F;wfor2xT zv;|SOL3he!C!^%#4!#7Qg+kx>?MW@H&il=M z^^TjbcC+o8m|v9>L@~kSF62b{MCYasZBL(F>dJE){$TYx+(>46QH0NWYu)`8MQ_s2 zx+??YGfT-KXLlPqhknZZPAI$4@k_dFddabU=%>=$yPI?E&xKt*s<2yLJr$~Y5zFs5 zko433gWpekHvh4){&{^q$1NFy*R>x$WZn90GbUa)y(D?6>S^$4cgg1Pd(%tft}Q82 zMVlXaZfWM8-J>`TOrG~F($4%!(1LEE=@pB_*Nv|g5(FHL*Z&{7-aHgG0Q&Urnb&&T8bc%HvDMYRCt=G@b9l!k`|1ssq|H|@ zueF!b6TG^ghrc~RE05oG3oIlyj99ltaFj;(`(pUf%2zYv6F&rwDU)N z$uUdeRA3+6jr0dH$co~l5m;f7|Hu_aDyt$hlGu$OMdQo}ux{hL_Z)9?_~=PehFw16 zrO_sGTV`1jK?O!HhXbLj4t*GEIy57z(gnjKgc`5?)%WOXYGq07tF4_)fpt;1GvxPD z3}o&l$R&DVt@H7gx6n|?fIu2=;qGm7*uUyCASKS8Eq4Rk+c{>iP0y%&bnUxmsR__; zV(+=VD|+#o9NiO9|2_uPbGNPh1TYLM^->V;)lBH1v+srt%BEeIVTt6EvYOvv%I`X` z03WPaDdKT5*E$`l@S+Y<%5m%=mX@_q(7`698IqjWe33g}n^zo|0rAeuF zmV{?UeH~`{JsXv^Adv3=a#Hc-b|KHKBfsXvR*5-#`hVM!;1_=%ZztA(^1Qx5-+fe@ z+ojUC|1A}thZrlU&DfSZZU$z#)=g~;`H9y-#fZYDiw3V7PI>)syi;&DPmun78n#SR%+ zsf5{2ae_XsvRb}N-lVeDpAm0J=S(`n?g|CyoZzK^=(q1s(aWjKFyt+FRs> z1F2FMsLX|*MV9+7jP0=he#HO%UO?CykvTI`ZSWBL4s74?A89$*^!)8>bt}(_Pd*SY z;$Nbt2^XV5^N9y5M0-lS>Cc3(*FJ?cJ6Z~9cTPRy!h zu4pkMAvG7{Yqs2rd-=g$?B8N+f0LebEJT3FI{UR&LsrntQjJvyI6JQWb@@BTf0`Qo zx3ACKc!WXf#x%YfS0|5Xq3Q^ZV@A1h@pQpoPp#pQIEC#jkf-=0<&*qj?z+#cPI9L1 z3&zf=?D|rA$H1@qa2B(3+TuGb6a?|k*}{v#QBhI)gFgq>_$#m9x|LAa%_4$#60tnu zoc^>*PNh7E@DNOL^BSPbz$~i|40$_*N3Uzk?w$H&tPFjO)`-;GmQTR11^VgBTascc zXfKf~2v`}NFc#M)tJ-mgE{F4$4T}$bS~?Y{IyBQ_rCf9zz?yPK zD}S2m*eA^k5{9TBE*@!s1NC??HEH?Oe3!RnE(XA*Dw%ap2WGte$C?M&${Wv*X>&QH zidyYwA3KR_J=_Zk@S2`6HH`TRyi6vT;P|svzKNy-v#Hs_hM=idW9x-J+BGW>*{I9c~h2VJo6`5)^83!UeUje|6F!IgE!3VmQ@O|~QR_o@gTSFSNVSJn~k z`?tW{+aCx2eFHmtspOr}aUVG2QrkHaxBQ4|?2ysjiVB)2hGkVR6bxd6Rv~9%Li#&x z>|hx8au>V}%@1-v78IpKbvdM8%ztjKelAJFVYU(G+Xs zL#?0uxl;URjW>4VAX}S8xV$V1c+hAe^~ozGn^4lRz12Qre1bF8NPGvdIZ-0x#-ve~ za)5!5Tazwk@6PxJWB*xEQN{oVt~fyV=TqW@T7|S#$e0^kj&Fhbtk$I4XCNJ!K$!oy z|5Qf&$&hjTzMs7rXz1i^%t0t9wX*Vzg9jDHRZ*=w6S&vXnS(necKBAOHYQF`g{n&( zfgP%?q(%CkvA^)|!|?h6f$<1LE&tUV2(+UyuRB{GVTRsW{qblXNHYHNeT;m!{FPrb zDPY-!$9>>nbIhdk?r5o?&BM>qr|j!T38@-KESbe=}%lKWD*h!#l#is;{4oGFU^Il+?WxkzN}! zROK=&VigV8Wkl`fn^`3B`dD54ag)K@8M_9dOwjvG3o6cOHyq52Y-tTRlHU6JL!`SU zv;PlS0`9uM=tucJ0YpaIZO5Ob_WUQ(s_s7dPlr1KWV?0zPmMI5g>Hz$2$pr^Y*V9{ z&1*ka8MbGZy0Ru`cGj`;{fFO4&uF?oVv3Af>PS}O)8Tg-v270kL~olSp&a^KTG&T7 zVw4{O4C~B#7KF*GK9|ITbhV5Je!%xr@lKA9urAZnvR0QMe^-c-@j1uZnbxM#Iy0Wy z{vrde$^=I*~+HFJDRr#;*!$RV~ zq<2!lbU!8bslf`cK?Hc0Nxv%kP!HsSC-m=41?UY(Da?*=+*MfhZ#@6IR&U z^IRBU+VtfwF@FHG%ucbKi#e`;T8ct`I_ga5e7gW~b_p`!@0j8e3%d4NE*zAqVd!zWp1VLL_ki?8K(5=_jK>Yg^p-A!rAuB=AF|+35oXffv(e)co|e(4S0n^HP7& ziSOSZ`uKgbiJkEg)o@`F@+tv0Ly#JqSo}V?kcD@q?$;_(DYZ?iXI!bFr`?aeKkZFD z$?ASAl-1)=N0j%m&@++!m3DP&Kj8H9M)-19W_jI|3F?3$ZwST;I&rWu@!s#-ti!xf zhSx8T97ED)^HWPE2z)m1X+iwK5u@!Zwp3*=;9RT3sldk)7V<$BLbJy{8 zBFE%Az&)II_^4&;k$3G+3`hUXYsTRO6!v^^+5>9EAuY_Ta(7&vO(XN{lPkdnI*J!Y zmxl&uQCk5r`9f{{WncY-MbvyD%EiNB+DS^LShJiNL>&Nxd=@6Fc7<(n;|`%KSZ z)r_|S=E4fUYrxiLUwL?wV!kM>7Wcj1{4*Gz!<9G+Ux>%Ql@?fF4|9aR>+{|6HWTB%VO>3*ssz@7qF2`{Sa^2N2sbNa0VfQ0uyZa;1 z&^r8#{(AKj8@=u>w%X0Zv!Tw_O&*V+cQoZ)P9CX^7?2e9MMVf#ez$A zOcVeTbg?%j?)+)9I@3`J%Q9RE8_#4(>+fCJ-D^)@(dR#BrwJI?iUuVadK(wG_LmW! znlP3Pp-*q>T&ELiU*VLR?rMOJ360-ZK7agtJQc8Jv-NGHUI zcyWJ6H8I*_@T37W8_;#nu}g1k$6>>a8rry_LvBTG4}3wNF#G1B6!fzJqtL*OL>*D5 zS$neR)>w{MJY%pX8m(zHDqurxVNdTPy63y~IQ%ZhG= zfS!zmn~C?YJ(Xt2r0pTFh1P=g6~j@HD_4ZuMz#0?mEnkz{_Oh9i3b*3Z(mbsYqi$! zudZ8ygZ)+WQ`lOMTv-^LO;ZWdG2+yC6TH>CMNBaxy4G7_;vat*VWbb^zZx>=HPCd4 zyR9SI!_GV?GR=KwS%Gb4gzRMuE*)*WT5&bJF!|1iPw`}dEhPydXBA9|ZuQr}l|ME|}_!*!MAH+MidO{7vg7;gX6zm23VNpOE`f=xj z&nb+BF84RHK<;DxY11c8b6(26Z6o7%2_?OSc#BL@Z_WheWrDl5N_EnlZMw3SkBrOF z?n|oU-bTKEc)o?V|{M5bE!4_Q7wI>g$Xk1UHme*q7Zrze{eFwdq zr^_i;5_*@KYkF1RTflnyYg?`%saIdM6>!CS8A=Z)wk&qcJa(v%X)W2qON!ALx1m2p}!x#Ch7Kf+-Qd19ADKq0^Qc|C;n_b#+1Ke3a9`M%1HFoE`|>*SOi78}s?5npeKq*+L)s zv?TNjahKv!GfVyHxEQzu1q7w0m?=rNrWM$;<%(cZ(5w(TMD4Z{q}>eHdRtxx*&62? z&Aj@7i@y5mC-{JVrI_K#aXF_Z$VXQVNE42LtAnQ+{L+EF>mUCi1) zGf?vwd{_9-0HMp^M6;$_kT%<7i6q=u{4x0RXQIGi`4;E+5p^r}$>K)kEXTD>0kgVY zzdy{u10e>dwR0SWE~dyKxW$2!kcm4B17~7$v9eD6GDp^WN7ikHRQn>leXBtv$K)C2 zg!d0Wvz+=>c~{6lQZ{&014&es^Df0N@zA1q%g;FIim{XIpU|&(=-$H}bgTPp*eOn{ zXx^9OWUWFXRjlbFnOl>H+4ZR4U(n{w1U%dHT;j7vfX;p32HXN{K87~BW}qbJt(~YS z7L?z-1Im9|B0(tL{Myq_hD6Z8yDU`JVuw~%sy}bRg8rtTd1pwsq@-L&SwO+UKtX9xGD0 zOr_`*Kx%m+Mz@OinWe>8HVj(KJ4HT#r&iicvdGrLb8G>OgASzbtwY;3^dX!H%G8CG zENswwIE%u+gEj9vwEA~ zdwc*#<3io=zh+r9)CG7R-yc8tSfFz-CGfW>I}uP85nC9fez~7*W=-+g@*So8gIO!L zpnR!w0DyWU^tHm4jm9z#`PhQ8?EzVwIMY>hQ!@BL>nSIwS9QQ>4>I4vReSrsA@9uP z7faYaJ(-|`s;m8c$ zOtUh~X1wzNWZd-PLRS`cEm2|Hw^rFz5x6KPf)`<4D5Lk7*?#I0sSFMmt&=W9rz)ir zIX20OucdkgwY;=-6s`cNvXv!eh@&S z0Oa{mju&b7>e3`e6xGo7b#1)yyGVKh&glr#6c zNxb*IbIZ9lH#WJT1$0v`oM#F?&$u?;&<^OA7o|6<;&SY)!p2>JwVD4IdJm2>zWaK< zFIZ_$rNOvM{zw?D?GGzJ_yhsf41kVq|5|X#XSQ+vJH7F@xg^K1mS=oZABE`Q*9Vi9 za#r-e^y>Cgeo(Nlv)|%|QP|}j!Y>nBNMFGIhcMN8Jw#KlGf-DW8`q~7jz3fCNmAHN zPV?RGDoU{2)EZL1`9=@;R6rtXacP0Yxwa1>97=RgJFAEyT{nm6Sq9PiDNo;saNJ&e z^f`&K)c0lfs&2m@Trc29gvrXL?xBGK3fYz`OeB?M*KHNFj+sdW$ z{V;wcn_6A@K5c5am?a)LKWgu-AT)Ivcst-O!aqK2sUZq;|Djd#w>?oKaYn^+HI8NT6E23<#uZta0b?S;> zY3eDsG-OQ%msH)`0CH`%wQBvdPEB_}C*q3Wz z=KpRtf0Q#w-6zL#DZYG3U6hf&HL% z;d*nk#?4^DUB(D&)S{uM7j(MTxLZ<%q<8C^Iub@eiEA1Am@0 z-0d@Yf0E0ewHfWr*;8HhwQc^{1@K>nu0f1#I+i8op8&?yA2kg3Zl4AhYn+2%HjTJY zEmgPpf=R%^M_bjgm3LNtE0o#Xk(5{)S5|k=zX(oaYr={tO7{akRjg7o+e9zY|Nr_{ z67mk6_JJRCX=;^Nu}=HtwYMk*9F0H~CJlz*4^sjbBS5alqU3~&3vqf*UNR&X=GDl= zo1l81Z(HG^W)qXQK$f=W4{lD~m==B-`hwB;Fdi=Z-Z^Y?aBvz4H@0x{mej)IT`p2v z5dGfJlczrzUPF`dv>q>>{>*ONn89{h=A&WB>MStPZrdaVr`o?mz*|k+LUTrkIH% zgYn306p0OTvF&bXyq{`%kq8({V-h-{`-Zuo!*0Hg@qdQE2cP#D?x`?G?%81eHtNG7 zS5r5jn%6H*t6w%xa@XEH_8*2?QrH`e;4ChhfWwkZ|@=m&!+T=N17 zVYy3z4FVOp!~$hTPS{7NV^-1ArIc{kt`z)0)uLs1Cdq>M_0fhc_Y_)`NAM< zuCcxbg?iZxBjU5XW!y08CrqRFqimBK*8!Wt;(}0%Xn<#Sz!V0rQ!i~(G9|(aB3j~6 z;-+xI0ibDKTuR(!Mb%aE1F?w(!o0uHoff*?VKQ$G8r;y z_P=tV#{uR>J22_Ii;IfhkK0dZ9AQsZ2`s{naHMxgi_!%^43E9;j;*-cW>-y=7U4B9 zj&yhm0Q)~Q7z{zQ__RRcWyp4XSInoM9VfD#XG3*ARt1D)hyd58&L=sh6(+&S=9;=u zJQkD&*Xd#D{L8cjx>$FntUk){9rwK#HS+V_8o6@f`^%!rjh{_{p%W4Zu7F|P^l*&p zzV!ji!Ky2VGed7u&n<112th0w`y)Xx)9qV^hj*<9tpCUF|DR=hBl>lR)AS`VKgm+d zNFb@q;X><8kr-ys+wlF9%KeNw^^V@_LUG!23ndb6ReHzpndE@oOp#z+SV8)nC2Z*q z%5m0K`o+v3q+8amCQLAE>U|XNsyF1<5;CA2y|@l*CSaQQT%euWpr2ZDgqMN=b8}&| z)om(d{iiczRBxcpCR#Cuyt;j4G7pQ%U?OFAE&;x-i=(rfnGu}S$(hv|YtNjlnIJRG z%~3n88trjZW4x}&&E;qKB+5^qrk8+Y6S`0Gs7E<@iGzL@nr(d3D^hFzG?<%%i~_m& z>rYO?F*tT`{}6>I%J^H)WtkVr@`M!;>_S3GPTjkW0t=52d57<3QNQ!ea;B{N?~iKT zC*6>48OyGA;T>>&i)olKARkze7Y%ZpHk=iSghf>XucS>Zmz-@C2JMk#M#k!*wrQ%^ zNoR}&I#{)~a?&RfLj?c673B2HIN@=9-eWo1yJaC|8It(B<*=rg`YiPP7ryhmc3m`b z3hvej%^aSt^zRa1e}Y>N?~4P>%?Hk>3dKP|t2iQe&_O-$A0sb#{!({tl!Sc1hbp0K z`^wHlt|WY<*CrY3>8_tUMJd3_wYoJE&!qVy%7y1VcPRMTD(X@XtK!1W`h9P50F^h2Gw8B^Zm8GK2 z8fMT=%S}kzP!g_g5xf!u5D$DgveZIrfq?b}wK8}R2(?1&Pw_a6IZ=VKcye1EbUoC&WZB}Wvw9KV6f*8SjaNE0p}>^+~3 z0E9cDu>mWB(DF*6O?L7r-xY!oeq+!q+|mN)b$NXT_lRXK2lYk^rU|5>EGV@e=f}H= zG1+sQXi*5jAx9l80LUYEOEAl=SblZi5la9c3ZeqGen$93kkuWH4!i95uGJ$Y#uq|> z^>YV45g?;hawQ@tI^efF-Us0yQd5)SKbfL!^W=HZG~n!M!xrTm{tC)Ej2$1d`td;8 zb|wCa5Tul2L2oH-!`7rZhJ7JsYHRflj&!dhA_kzY%CLgTwVl9~3Ce3%ex%`Sy zU06c=;FoxgRKAbCvp7BUL3RCFCHjKUSGC*X!9nQYW4T|WNlfpHXL0ylB>sh0kgtC? zoa407;qu~jn>)veI3%Ag{gu1k5%OEmb@zg%)y+a$on>)PiH@S4(MMN#>bg3$Yd>*Z z3aMI{xi9q6>l^rGLP+pF#sHJ15A2i$9|Lhb270I;b;?P#G#Op`ql;>AN?ad zR;?iGd}ARe0Av_VV!5f_dEe>|?i{v?_+I8%xL|bs%&ZdmHX=D-CeOuZ6&yGY51NK^ zK-}_x#$&&}hz7eeJ$E73;4}*n$0d|gwuyQCsyZT2g=)}Uqr1Q@Pxw_xNK1rA7>*lL zw=12Z(~o~vke@{^Y_R9+!GX1U?|Z1h- z-j?#yq5hr&KcJ7)T~}tMv`^vk497Q_2BJgTsa6vz?$WXJQDqvu2v3RmHHn;xE*W&r zGXQ?kHlsRQ*2-~?T>;Vx>+>Q8bc^=r&5f5Jp6)!Xb%^8S$TVu*+?}Gp&Ng0P39XHD zpSb|qvzf~Z><}tqb=nS&R@Bus%dB5*x@S{RrAZ&H=spyBlXL7er(~-$)GLyAtklyH z3K~|`A=!Jfeu{Bcm9ZQ1eU8YQ9gR!z?GAh98+5&bUK(9 zJ%87(fufFbjKdf2Ybnb>oxHmZlJbe@wrHO9MV8#$TibM|=I69M5=v-u5`$NayM5&k zTr@pQg(}tdw5$&UXv^}0#%5b4&|8UW=d__}d#8VIGR#+wBDOKO@dN=bU!c}{l(2&^ zxw5^OfU81s&+C0V7YKcunzuOF1^;xm@6P`46~!luf&-OOha5+r05(0MIzHmh1Q*Pp zS;NCLGN1SqdYIS?=HW>8x*qpR{)SNavc@I{(eJ9(E1P1l1z~f5D(-_zLN7s5$zzu< zj+gBME&8l@?QLC|S~9*VZAVvGJXUOPq%&u9tZc89w=V5){m>(nwJEdX;YWxOZKHtC zYL$xL>4t=}*Y~$^KTAdJC1qXER-ClhQ_b==3Zjv5)}VtFa5j-vwbkcwWHv_0Zr$@) zj66)t-_9Aumt|1)?CUQJkYPgZUS2m`Z8mj{v!EILW==)xa zLRB~PSxB#kYZIu|M!U=jUZ#|7xBWWWw&Ub-S;m$fkpoPn@R+F6Ew&xv&p@VrTR|!j zvsBA+Ug0z9YQ!O(LnN9#%QKobmCv&{_NWv5}fgSGKg9h^ek=CE;6_bQ_I`%Q>3^_ zUiVExY=NQM$olRV5wWm%T^-nB9xY@Hm7Db3J99k$u|tWFsV|mijZ$uzsFp3ZW(JMs z{G`i-n=x_>Bu9Xv;!R0P&S^od__@`!i`j+^0Qr9SL_EgD$j%fZlPXQ(xA(~1Tu34AuvF(~{B@Yyd97~8DXGgG!DyP2U$Xv~*L|gPX>^S(0MIQ1%Z^cEvlx339l^XU{wvN^8 zRj4qj3bFz?{}bb zqJvrk``~+>^R#2!)n*IdRh3qO0StEB6=Cl`8H(^A@7$GBqx(A##9gu~AwX(_O2Sz<=eZh-2`WB7d+ zl>4B>ps>4o&|@iAr5p0TV_Am}?};ZKppqMjIOev`V%Ayr%u>8T#zC z>%_#MmN&;^%#|VBv2b836N1w~L-X>@R{jOur~kgD0$3|!S)S$!G^Vuax`yXi$Ug8G(Ix4|>Ll=4k)cuc{n2<_21= zWbi>&(9*_?T1n+A5q6C>`DASyOn+n1yAljMh6WSc%>7;k=*8~B z^-1#jVFHp=ZuwblSy$Wy^qZqHhjygOM60jZB<*Jyvc;TV^G3&h5lVffoG3Brk$}%x zZX67+1dgnO2n-APd)2$Y;1OhC8jRW>C2SpzyL2@uB=k%T^5GI_HmNJwqXJn?q<;N$ z*=_grI`NQ*t~3H&TGEiwz=UVf25uXR|zRTI5}H z)mO=0fO;Ha&+LfQ;1mzR*t$ha&5ZooxP?c$EA_bC$3}PrSdYKT<#Z%=ic-v@W1ouz}SGvlCs@maXU&F zNvlU)G4X?b0FO3KsE|ju6y2fsAWgu?93Hslz-Jl?N9fc3NRoFDL zur6%{V$RB{^|;FZudn*x^Ld7QJj1)Uswxxs{8X_|&XuKfc#69HrM9*DVoomB5WI4P z(H|MH51Z#82HC?GDjV?Y{%7Z?2KWGdI}q9A;&a zpT4QAGL4z8;HBQ$bU6Ozhdq~`P=+Y^qeF`26O#!AT6;4y+V6)*@iti;R`zx39wi|( zYbl$-jkBQn@+Xeyd*ytT%Sc5~yexgDJV%agy{7|*1YMWg19 zqQ2ZFFOglk_qm4G-LmllMfI!SH5zY6`@60lPcY=JIeZ(l^5-ev7afEQ9M*+ASuz$(l9Z@B4(No~eqV`D|L zu^abuk|t^U4w5w&qi^;4$ZY@@pZlya^_Sk@$(t)MY%xm zg#T@CJUSyusEnsgmq`Y;+WPylrIVRM(Q9k3g!5+ThsUTZ!&|ut*=@3EiX(%`k3~$X zNeMYx1JUX;Ofvhw1*%gM#Bb;~53V@u`>L2#8Fkwqcwz7~>(uk<-9t4l(>g9uhMx>M zodYJ3bG`o=hsu%xtphOO*dP&*w z?&r^>8r~A`v~Rj4;ps%WI2}b2x#@VnY_GxaQ;+R-40aebIsN5bT37l^=ZdL`|DLtZ z&eJ!{!;WQ}GmWguvp(=v<5H{1%(P@=Zo=Jk5&~Nk_J2zf{&#EMW!w&A{`A>D_4QGf zcF-tQAe~9_lBm|3Vl9Jz+BN&X=moYVvg_84VSFSX^!Q6z5n?&~Pn@_G(6||E8KuT3 zdhfiq#x=Wo{F~dfYVTxih|nUI+UKH5zj_;z8uW@k&bfa0HvApVpHXtuB`>wBGywK0 zf9j@Yx7=ORQHR_^PKC4>-Orjqhu7i8l>)q~jW4%VN_5|;oF-j&?vof;)c-OptNX)m zFT1mKc(uE606p~#{FP?oZ6SG`EkIXcvJZ)yIRjXAl8L^cR2kj+NRmE_r zQi`R1+o94nRGFK-5=D@D-d|WHYr0xiUuCra-HA=Zh2Je>J;g|PFHe?ZV#2FnL0*rA zSI@eY7PfWoDwGH4bfjxZeZ~hVUg$b;P~*Ddmtu3Qw%=|tGrT`WrZ1~BI)T#A2j&#| z=j%U`gMLsL?gqhzDf96OxlP|A(g5G$+uJ|eD*&)I`Skz;Oh7+Lw8ftf5-$9F+E6y- zua)rULdjLT@FFEXWto&fbyx5H;)29v2^&^!2|0f{KAXBgl@jqKk1sOSEum!q*G|_({R^jo0 zZGfVNiS64%(f9K!{dy>Zf9KWoo${0iSS{_By_ zn<*SbSaT$G)*81R-tV)T86=d@V0=8i5`UO!Z(g~SZ>HzBozI8P>5mz0o0&}=)Qfi0 zb;Zsls1Y80b|T3wp;$*xN)=donILb3osI^r&a-whgzl_qylkvAa3H6N)Q+d$HmeJq z_NMV1x~W!2CSC@bELLX@u*e}}| zoe+=6?8RirmwWg)O!Bma{wLS=S%u+lU&u$e`u*q^1BilcU{Q*Z&VwRH82z#R>RLwY zNmCn}p8mIxfu^=So!;1-AiSZp+uCRSHNz}C@$ROE&AZ&OQ<|L8-$|>(E8c4`9O0M8 zW5&;8cM;E3-bSy?c0}C@Dq&X8H!K@CsJ1>{lC@i^%0gIw&$`S(G9sCsW{7?Kfclf= zLUE5`;M9ZI;&Df>nDSaS>yjsP6D;?Pn*7~{gMNRuuP!uSZmpqWd{oSe)Gv!!mO+p6 z=114dGaU>y8He1WTF#j1cl7ix@NVZ{Hy2ZG`fZNc5jb7KfikSp1D_YaT)CP@Q!BDl z%~l zU9qM-i;dx9?oC@Wsiv>@0W!et2*hKXrq}gG+{5I|4QxM5W1H@l+zCvCQ^MFry`1_g zChTf$+>h)pC_RSi;qVbGTLUai9WnHeRZ7Pln;~bsaIp7#DW~e@mRs)L9ln^v7Q}aR z>XL@gx3tZVAvRy7n`+&ce*8-QV#*|wvJx+J3vWCy!FkxM!h5;PSYBeD`~9o?#(+{@ zj3!xCw#f#B;+asH5q)$gqd83ss|g3VH20t-UBhc8+C2B%AAk9P>A~*ika#%$^w!S7mm@`9(gg*xwUeCL`Y~Zxrr`R3*9SY7 z4ao^2=aCIAbh3B?9>%!ak47ZnHKxW39dG~$m}g~uL5Ka0u>-loh^gBB>PEon99+~% zlexiZSCrx4B9z}3bW47Isl`u+u(ak)VfB8z&Nm0(sVK%Pqv$@Zthx1LO^4c>gb6ewC~!xYh~5*&JaRA zl<2CufaBSu-(vh`sY1pnP&5MYZre-2+GB26Xd|ahGEqf(MvQh>tsh=1^xR_L5ipDm!I8+AXgi}y$+yb#Q56y%Zb zg%WhcpBOAoDzD-W)_m0iQTSY#ViiaZ=ke`ABH|6!TiYGy{QD3)SRh=$_cHSY*j%oU!{e2@TNm&b% zi4}tr+5xdzR~79wFBGpM#Iyagzu=d&d1W~KGo5+;cOSgM)ci6m$^WeTq&5*b@H$fj z88RkjW*PFO%NtVmTlcc?0I~_1TWU7JWHvqbG@}vASj)W$ted-B>3A)zBJhb2x*j-p zZ!ZRxw3wK}kykGWSET4-6`j+}UyrYYb-PYqwz#Y;sq* zCTg3lakVnwgF;r`RgYgHazx|mG9Tva(m*yepTT?Y;^R>iW#3H~SVJ?xy!S%bcJ_?C z;5M+eb6@NBmG|R*UoS$)4YwOCagm>2Tdy%&9AEtmwweGx0hRe_w4i~T-f&E5O}Eqk zEnfe350dnZnETkrbmkM98;iGghuUL?uBp9wQ;veh@q+Epr%uhd9Weh8?3> zy9t?$jLN<}xub>yA*fpzy@4RdZ^{MHUf|tt%Q5teMu!A7<__(@f_E!5Xty;tS-Qjl zuIyT^`lYPb0{RV1N5Pcv=iUNL>>MbGJpNnb3}T8N4MuPL2D$H#nCL1a?guHUExMg& z*gW@R?4hHSZIF=Mcf_RvMBPjGyy0(5dI9wNv5(?bv@onSk3uyLi@)rMW}g_n{`t;( zZUJL)Pss|0(Tbn*_VP+85BWlq^b?@+KC(jPr+2`gI2^XCYc;dg?}sdy^>_xLc*ZB} zo2O9ka%)#E2;Z1jPx@BVc1Kx;t4FY+Osz~$R@}AJf*Zk+-&~yJaTf_q#Ujrn!Buj~ z%{zuJZp8{4!8U5#VXFRnqPe3?%y)h!Dh)|la{|U*F~J*7sC6o7A^bM8_ww@8FE-xP zx*B|hqjSL4j==(|&k)-Kc-2d$M?3~RkHTGW^W7>;`F28;%ze_M&-J;(1XJ`N2?TjP zyi;g;SsMzbH?QYl%Z+D8gSy09$~W%~J7LPC-q1%`)VH|^e@h0X!AC7vDR-XYgI$~x zEJcr}J9%}pLC_nTZndo+xyRUYJ>yHTrtM*I`{m>AKI}F0zVMawB5VfDQhKMRXwbVJ zasR+K|AuVaiKt5pNBEv;f+*hM&G=niko|^ur}`b!A`6j5)=PK46Yv!xF6?h50XI}3f*G$FmZz@;*F}|GZ_?KG=L*P$37itszvI{{ zBv=>R_P$P1!_qZ$Cm`>_fZte0-w}cjgpX;oRWkOY?8Lt6n+>Xq@DGv-SL~-y=WEs? zGIJ%v;yD^dCaRae@7n)P!|X5g ze6zGqC~lT(MjMyJSBNG=amwA8uoMEzA_@9Uo_#!7B|(cHd)oW@2`-)3iC-D(Im0j|<^tyYcZ}*Z-E<#wNqDJO?R#AN=nA0N z%PEm)?|SMLYru#u>qFd5a%o@W`x-ngwqHYZT`qY=T~mdEgajS9M#*5sc8eK~WtmBlZ_qx33aJ+D-%QwAueg2o=KI%^ zI)~`X9JNg}YE@8t?K<`#mNE|=w{Zs52875jeiR(p-7|BL=? zi_yW2GVF8dfV@Q0Zo7D$c;Gbi;5F2lZx<~5gp-n*skGHgDJ5db$7rJT&DG zozRi?yy$(6jqa`SO--d;viMKMM1YK_FJX)h^5^3d~)aVFDMw-Q;~t8NbW9QYbz!J0Huydjg!UEOA(yuSR`TitCs zBai7ijX8?HNqD9kHE+C)t|H*563R?6Kpv@Ip54fAoXu4itqfZ4vdMANx_0cddCJQ$ z3}pdH0`%&h*y{>4lbw>@;J|Eg%x<;9B|>XK%LWl`D+fcLW4r^MS5DQBzO;VCrUe0G;GyKpWFx$P_hEj->5Ke^qSHQ5|3bK9b^irV}0`Q!jWVO zdb{~(J+0M~A|F#{4jS)4mc)yOX#sGv-%&?S;phaTZY!!3Acbi}Y zqQ|><2p1}!TaiUV)Hy#nrhia_%F3!7P}bU>B`^wRot3SA5pfy*{&SM^-(tgwuGY$N zL38)Veja9;VWiiGgc29lOQ`{7Qvea!ljt=*E&r3(M9ryHO?4tg}uLwU^rxQw!FF2H)og}5=vCsLXbU4Wv{Id@*aG-ShShKSa8K} z60?OLBEP4P>X5v<#}-v}+%_+wS_AVE={p}0xB!@A-;-`sY}9ciS5V%p`Dav$?~lWu zd5BSZ*K2ZhdCdRX(*<`A|!=7xXL7+0-M&1LW%bbIHy{ToVwZyhUFg1Gkeoe5SJhq$2>tK@_afbMtJbh9+mB+XRU zL63_${$( z<@Mz?YppZ=N>@LK<-xG*yG>qWwS1nG3fk;>1UF`Jnho5EM5+mDSL?|E_S)kt-&eyN$6)GZTRDXtx9n-`g~o;7#x zvFq}UbnSRfW$u7W3?ybx_$_}EI%nmb_qDRE$ORlK6FZc4~_Ji>fPzKI)=6 zt2X=D#$8BRO4aUEi!tL|u;V0h4b<-xfZBMLd%WfH0>|-Ig3fW?Il7DW!tZ}HTS-px z{Hm0u_vO8w${hQSQ>Mn+i1TbeG62Kz3;OE?hPBOG=RU=17kFFtSt-S{i^^Sne_dIp zIs_13O`?~h!V61CJByiC9oWjy$cUQEi+^2_SBYkn(fv!uj9cerQgc(id&iaFy)wV` zxEHp1l{R|Zi^?Ze+am%a#D{3-Fs$V|t9&fHvK@In#ycf;14*y&2UkP9+(t~uhiWqw zB`w9?Ep5koulV()?>*xPhl6X3cZk1)BI|u(zm5(`9G@vhEk+utZG0W1bMn5%C8qI~ zK{~$@c1i4u*W~AbJkR;ghSel?A_{J|7$p=S&pB(ackK;X-IFoRZcNB-I-;7w#dAI2en(WM zsFU03O&YPFgIfeF0>1F|b)n86ZSv5=U9=o##+hci4?@-12ka2q9>!)`#-)Kd%RFB| zOzYpY9(V0OW&`JEDkVfRc$Je-gBcNYL{71to52Z)pN*mPM+~3~>@!$e6B2%M59`$a zDzf1*Ixpno9+5)Cz6AjEPDQcuMGJNmRTN%$;{dk{=J-m7wu-J5+vpHei@DxEfKPgz zPG6QgPkpWCoDS&MO-3>5&^p5#$`a#68^**7YDEGimLGIrjb|UcSS+U(0%ysNStt=D zyzU)0vqjD0Hi8*EklpN`R&>mN2(4;qmb5?8jUhfgL6=^U1>F#o>J=AtC>HDU>+q@c zH#e@gd-<#s6grPdmIdz@w4a#N$s!~jNtP7+if%mTJ&|Q%u#14akcb=|ka;>?q&L18 zIYDkSPOqHt_g_Q!Wm;P&y0gl#3A6Y?2bVx8Bd2 zjwUVl9YiK>C!pTMEx1mmD3MtB`%jT-dplI<)wtIqXbl43 z_sV!odWrbL)TBa;Q(aHfw%>R|BDb$oG^rMST7|i`QJ&1tqcd;OXu+sc*}jxM^zAUI zL=QCqMu%JSlvVZ*->SSiDxCFuTMB!tuP*CT83wCJ?KMP zgVi+$oN^1(?W`_$uI8=A=~jbF-eHfgl+k$!G{>6IPn& z)~Wr<$~@O5bee#kPS&5j``=X9NAiaYB7))Mz{+Z8UuPQl_ez^}n>`Z|U1rG2YPC>hJX+yZV>Gn)0Pmbq~pTpl;* z#L|r>9b4RF96C3XqFUr%0}yta=`*tcyWp;yN<4D+K0x=e>;jQ z$#JwMh=cS>LI3X>pLq*PDHIX2cwS7K@cTfeA4LsDQ@u2 zO@qbJ=VAiG%XwU98-e0~g3RSPit`bN;S630LPd>FS;6K!)_$AneCsuce?BpYuNVDz zAwPEc9P_f7_4k5dl&$Dj<#c;!O3}q?i`39zml%C~%6k_{K{Cr6`{laOU!Ur(ZjKi4 zwPFUf)#A-by6)jKR>LLk%cfjGvNyGv<3b4)vXAauffJVVm(|7u?YrOJ1j+fEF!k@h zC8+OLyGu20jn2OR^GSYA7jVqd@d7U+9(&t1mTrY(iwfr+?oDp&1Y1XG`2EY4jS4k%;P8N+*!p zgdrQs*n3@axwmz}RXxGzVj2 z&4&$0bMH;w_Iaf=xFJ?$P5CpxCJqEQjEb*YP(piXWe<~lV*plz_(Cl6}b+s1E= zdm8cyC~D5?1-A{Cy;^LSmXDg+U34-PtPbjl{xZ$;1GH8apw3$b_iGN%yn1Evs{V4w zx?Gev>NMOMG|?9{L!L;s6#iYsY}(ku1gIF4Z6rKfVGV!49FoKc4hy{RY&HTbx%Rok|L%&(ruB)V>zk)G-ZqZY-XnuwajVxzkDUK zD|;gZQSj4Ccm#XrRfl3k@~c~iZL+@|1=2p?wJloei4xlVZhX&YH$8+ zrwHi%tJNs;e!WefN3A{geq4(k4Do7PB`1s1eyLKi2bDqi`WB$U;&e9p`&0(=_rJOI z4Cs!{niCS_n^*ntYhwL+*&q zLe-;wb-HhufxJ_?Jlk^Yn;_jk?ib%z zW_j~Cd3k>>oKl=pF!UjpYOTcS6%QR9pY8`eno{vH-xdw{+_dh+KlcJa;wZ$=6TCP_ z{UEe6ub;>*Z?OkoreW6I;@?b?A?!o)6{p3ZW}HSQb-&;~Ik;Q7mY+o5hO z6<@1lksVi7?tN;f%M0Fkrg{WG$wh|_ zK&oG$d;p{RaLDn*kdV`JpE30QH}c~M@wil=Y4&-83NXVQXrl(nUO7<8VV*C#_E7lI zhudJVQtkvDEP{+?mBnMrCVHs(JYJd7B+yu{&M+umM7r>cX!V<=HaO*KL~T@-g+~Y9 z@{lQ3rS3p-B5`6bb_iyq988X^-l+elcW`*I-qaP+j?DXTj8Pm1R3;RwDG)-n}-K z#F)Nhpl%^-6rPXc@sCz_iwcXsDdmY^u;+6oJmn3hK18iLZG1R$*C)=Tg1T2G=u}Jp zcqh=~vkKypQ_%XV0Q>3jIlmL3Q8F-i$r2Q|UDG0;T0Wi9W*61tjaf}|)6aRn`DWC+ zmB3=1%*8L9)OJYE(<BWSgy}ElcCZwF({4}JP)4@~%a{PU zszcPbc*Cf7lST>cmqPKrH# zcl*2}PO>*)VFfL>sNr`=#8d#E?sLChZP~Zw)XH+JdilE`({v^3Hnk>*= zJy1r~a$$)+%wq05(CLT$2ksN1J!%)cMNi0J5M^GbclzpfQ^iY3u_vD`5W8ie3qV<8X(uD>w(3Q+l)W$ zQ_W;iUBKgH5&W~(e+|(aj>rKy?vkIxD*4=uwr4!-QK&;QD4k>bqF=ehD?A;Ah`@-8 zyt+M`e0>Epm;;C5WB({EjM8QO4Q<`>*t)kaFb=r6x#OAL!$BsHv%?6R0BVhIedIUW zH`rH)^EqgVL8iB!9_vMVZTS(b;7tV}8$QmRhS-*(Uv*z#w)m@f--~1wmHY@l9v`myr}v^&rxk2m#S2$^|o^%t!tKJ$8B{@lbGtk<49~z$3Lkxkm#B){3*s>OAIT$&s&g zhfE%-CJ4 z9>b1Dr&hx|&*c*2aaFGFL?KrWuWb|ei_O{DZuVpJX^bk+((KWGYe+D`XUkK96|p6) znjwuBymR=T1#S-D;xJY0;bECx;uw>X(!t96;Uva5Aw=?tkF_Oa=Dpr7=-02O-DQOy zwMXscnf`&wmkxif-H{PVUB|-$hInP84&LWq`5~|ZEt3!D2HnY={477=RS?EL%t4SX z5-~_>TbE^76B3Xf&_SWDQ7@jSA`_8(M1YMrTN$20fo8^v(j!*2&838ZQCU2(;&d~RZ4?_Y-mb(yGF+q=iWKe)K{@Z6qg0UZbC*tyHq!mnJ zj8ebThxLd*d~VvG$AcXdE}s$F{~mT(iCb(uTj)w}nI$bG6nwB-kGI`Vex#FH-(_%a zMO!0-QQ?1v?fBXqE1$~tPYEbOZdO^9gKTPNW1da6^bN zXn0#ho+Tkzx@1VBDO`Yq6b_#{dhMF^a$Udquv5}ky`xPT-Dk5#KrB3Z%y{(1^oVb? zddgK??t_M34i!m>c4x7G;g}>GfJ+47a8d9)HrvPvusVpu>-P0MJG=a8tO-xFwwBw> zH>jcs1q%48(AYT{8P)nL*a75n2yYTI*c}d!un(4pS;fz8oNZfB2Hi6ICB%47MoJiB zAkyNV89eH)uaukV>!bMEgjS}0e$!cHV7T-@-J?yN%(ut-Yzh{qsGe7$CKon+E*Q~U zWs-6eg916BdDt>~H&K8L%JZRH#+|UNv{hld(PeviK?<%tO3XT&@sU<}@h$nYV0lXJ zCSGx7Q8t^Z{P#a2HsFG}b+vl701pA>I86I4fvgTJ?&Oe>NDn0SD+i)~064Fcb8~yO z3FhA|PyU4_&PbRWx9lCcK?t~ZRB`ivD`?Xs(6>5yoVpR1W3aUI3M&&@q#EIipHD_j z+!BNLQ($6->%Q1_d!_kb1Ma@N5mZ>aX8NmfTCY}3iXu4T)49pcaRB00@(?0~Kk%@q zj9s;7dWDNB-np$aG$ej@DF|wy5*(ipQ%RdTl^JIe+}wH>frGHhEYMac-(Xss=wkh! z34Cqe?w*QJq=~7=H%JldtNaS_y=roc^ES#XCvE5f@>%on%Jix~;#yut*zuW3{wk4> zy?hzXWc_g57Q07<p7BDn)`?o!_e6 zD2Ir~`*BYuYTp=ZAs=k+4?jo6E`GU!xjNDRIQcm6fiGwzXvFlo)EQ5C!p4a;W&a7J!(Vm>3^ zsOFu_+jy_46{Nq-jN*FV4pN&p^Xg=&y=U`ntq<1>#yVNCtj9MSv&f3g@VCDV>FT07 z#|%WokS?2*jT%Nd2+8`mPXs($JBwcaw!DyYLS~L`I?s@=PDCQ)nz}o`y9^C`^ct^$ z?mJh@u8teG%f861#PVs;!`E2a@HUSu?YFjMSdx=Ynw&?vT~xa&95ZoG?& zhU5+?zGY>x?~tF)9SwBKc+g-#+NC(2)l(_f5%O!1DF}KH>*~DqgV>=$=gsIgSQg}L zD8jvB^3s0NoG)l)*{=p3eVj}m&fTvrIN7g<_OsjRtA%+euO2LWyaYttQHLgx+4c`t z00=!?_48L+e?KFRiWfcNGmp>^7`LtpGspSj9YrSc=Jw~yQ*LWLFocAu>uA07sH=^g$ z*uU$a=N3qg_H?{Nq$vqxwl|@FNd_j#q=0>$$LHOfZlxi3n@DC1CZ50!0oK)`;f14A zO>!D5s!%2%*MC*LFsEAkFwXNbPhVJZ^zGBIPPy3^Jh2B&IIx$lyg5D#a+dD9gj<^&Lt$jkID*v|^fH7t=J2}-h2+b`XNTU>mzrJqMwC$&muUaDZ{+6C z?r%Wl+an_C;vw>kzH=U{-%L}`jpAqQ{pTBnrRgOP_%mKxB)gF3GD}a@f@F0#w(Krc z?H~GSC7Li1zTQ2X@gL0gn zyygSpxI^^%^2pMsPwXg0gj%{$5km!0m*`4wP!+O%OCNL$+dO#(S%3Ro@+VM>coK>` zL?BnLD0L76b5i8v>#hO68h8wwgYXIDWC;tof&bk-vITaqvdl{vvccmf9ilYg{?gCq z$bhp!ii+0rXY1)rVj(E!((^2GghfM8VMvm6tNAiD{t%~83^15>=Y7T#W6;#!r)ldo z2)vw8``9mlxA!Yu;<8oKI?^=`dAU0*sMVg`f9m#@*7IHecYv5C@f}*Yv&y&G%pVz( zB^x7NB+?Y4jkcd-i{>cJEN^L`O5PyjL52?B*Qvg~H?xQcWr`oYjm8*;cjN`|3iA)@ zteNO;g+bH%CggLhCU1BmEQh7QVl^rmGZLd}a8Enq`}^PrD8icsom#qe1eZz;upO&l zUn#9o=9fiX{#~FMV^x)vPAwOhZdKXAqrw>i=ZZA8ArlSEKR{L`Pf;kI`gQI#0_Mt; zF6+_R$E&)K&S?i@tKtEu)nMn?qZL=R@dXq5Z82%q=XX`UQ(1M2AnJ1hS+m~kJp21i z%taB1;ZM(7Ybq9fd9A*&SPZl8%dO1$1f_0_uV=e{-}jO-CO3^YmA>!lZwh0n8Z>&X z)x1UfhQ3Zi7i&!_kZ|f7jDSndWSR6$zCFTNl^@uaI zclG&@-%z$&OoFf>(@mdU5>82oiKiE&v(Z4=Z?;`rK@--)FRZfw>pu!=$%o!o9W>6y z-L`(VfoYXxH%l>zrD`yK<;^!uVi=_Nu*_6+t8Um?o|dI}%^p>bNEj54VSZ#76Vw~& zC#XB`B-HrXB-alm8@s#tVH&!~-R!uvc{N=@BWQj0x-7(pv#wk=M)n~8G*KujykrLd ze*9XO@>N`?A0?CSk&Bpfn}e~fS3i`S&tR(FZw@?qO^jn(sWM9|<-o8s3Z3P^OdH*r z66+6Ur3knYqD%JDR*da?faR7pQ!$E8;6uRV3-i*9DEs zmvV!x5dGIXoV7@Q$Dd9EO5Z)jI^O*JZ}_jW_@DJ&UOvmo>;zkc$y$K1?pQ&cJ1{%g z)cd2Z`iI1{FMIHE$2{Uk0Cqhva4cepzwhE$3FTXJkHmsGV1Yuwj=52vtq9aTpM~XX zz%0=V;M{3&O>maM$<1fP-11r|Ukn}n>6ByN1tZUq+JisE>sxDWxj3RG$IJ9-6?+x+ zaJc5y4s4;n`iER3RS|pWF0YX3Ag$a`v@+$N$u|cFV8Jg&GqVB_Y9QKlvQ}+lbemok z5Q=$ZBc61DM=)?UMYUbXL^qO9O2ol$gM8eGTS>Do>x@}^|Kc52PgQhbqEXM6lVCg> ztT!)Mla0o&Va;EH9N)eFk{q}_Wvv3Znw{^XpjByqXCkXb`+7xv3t+HH2pwl&LFlfT z>~?@As7U9RdP$KiL;?gI?{b{F_44c4Zn|V46W4saZWocii@nr|;%&6wqaX}v`+MUS z>f8ysKUl4r2uOrH6gAU@a||L#GNnwqzXWb3%-^~F@#1kwd9+uZhqc2%TzaLi0?(RO zj{fUr3JSyiNiK?RmjA}hr9WP&5+A- z#q3(Lw+Qrty6f*60VNF;&NVQ9)nFW}p#_#Z0*01Izj*jE`G(^L1DdgCtndu=oJRVD#Sw z5rZ!wCsXx#>nbT8_&@)oeQ>bE9G`uk z|JtZ0z#c;ZwY**p-=i9Q9^UBi$eI_KHt3X6nAz=uI1QiOiUUffDdRi~o#MNoFM*83 zcmr$+4Ql~#1(W^T)Ve&`SqezH2i@$me%(~A2s{3q>T_HXv)*(UxNvib|9XCPh#0Vl z;p)sX`L3~U8DzkATj+O=?Lo7}dUhP$&P{X0@3Cui_#MCi$Qv#j?T0VZi}B<)D0$di zkEpmlBX*7;V*N&V2tb5TeN$Nmx*xofe#fO?Qi#@L{=S2UBIn*LiV`bkb7|I{#mjW3 z)_7S1w%^y%-87CaCc?}%>nc+Ocs=~e^{_gZJ9!(xVuKQ1lB^Lak~p!8>5O)P`!adK z7b49!+xritdSNs7%x8;uW7-r?&M_*2LQ&%V(eJSlMS$)Y|dO0z^=zBTv<=fKra z6`$Lb3GQ#9;31&lsBN<_y97`8IcOfvck&+xLPA-S<8^R>;kyLhz8m~f0@=oC;$W&E zJ>(oI*dKBU?kg`Oeb?0tz#6%l8Xqo-3y^3R9>!LdRIAzZdi^Fa5Jo@Ca!D~10<2B;y}+wnsKRv6AkZu8ke zmpcY`vDv3NU4;7Fxj@QG9Rb8nUVU@k<{6pvG}tC z6Ik=A?jjNfYuXR2g#-73HCM18VAt+Cu13?+dMB*F~gdEboix+bl;ZVkJh&Nv1hOj0~* zjUvCs!}QY1x6XttJ$JFhvNSm+I21^`#WKd}m-Ii44IrUNeg=!0NkTo}i!!8t+VlM5&6w8Z z=VKg(Ow5oY@tk3v>q&+eDpNb5EWEjupVJY0Z`aJybF1g%$=zI4vpz6_h|ST4`zJX8bT_6t#9ph8UXlLx9% zjT5$d4nHuBLXctFkQ;N&9HvK{Bj3*X8$tw$w_$s}T&~pN6QHfdyQl3jAuQecZ?zvA zG#wWm1I{4jA^-U4C9COGJxD)nMrblJy}O#My!<72s9re$@M^4%6j-#u$FjE0bC7Zg zXnD;aY(w|B_wAmzZfy=7FTJ=rXK7MT5anLNW>Nzn+8uka2cnGW!$a2kcqIJ}Qb8x<}{8q#v2zQ^O1E9C@vMJQDba+K5W3WxD0 z=buFJm8HmBM@J(hKFjoW)#OGayf#P8G6O~HD7HcSRa1zsaFpl^*eykTUAPX|vLaj| z{zMhY)yY`NsT-g)SkI_DboPMAwqvp_xttcr^eN@rFvttf+N+Aaag_w#uyi z^+S<@2l80mzf4*8uHCKfXL2<(u%X?2cLAeEgf0NorCna^1|#Nsd}U88*SWxa#8q~J z7Ecm~y_ZLlg!@=42tNBkCBU5cRc#12#?kiuw(IDwsb8=8=BWRwYm+H#WVDgl84Lbb zB<0a@M%8?CML>dj?;cLq104T_-~~19!*Udd`fZ^p&{96aRCydqNllsbvaEB5FZ_-= z>$QH4mxoz``v*U}K$pdfYTaSb{-@;_&TglkLaRU5v$T1BA{7ZH{T9wL8t;6O-8uMn z_UYs#7#}oc>yLQ-oh|%kCj26K5!*KN1DOjsaLV_w1CPw@h?GO8tw|sE!Ph9=C>1EY;egUOgk5yUQn^+5t(ZC$u$OT&;Hp?IZEn6&<{@0ISaRPpVZf%rQitZ;GAf4m8BwHd4g+k1RsOMZLv0PCeNK8}~XqI2V> zNfYGq^zT{^rQx@~o;w@Q_60RKK7jyk9f!)4p})`e!tycs{7Fd%=Z!MZnx3fbdt8k8Dh2{1EwDB7l9#@a)OEFEcMP>K zq}spReq`{(C?y%^y|&Q%(y`t2(#HzNO;4OxzGE3?v`n-0z_}S)4zHVfml8DA1 z&V=NznL~7E7MpZ`U>q7)%AfB23Di%2VQNY9`hAD@P%x$p?UpG}1N_;B_~L$k+X91m z&~X8RX=k;1wb;$Y)JjwPW?G^Aa@0C8eJIqQ!fjgzELNF&0b7@HRA~MJp{>;pqU+u- z2qkO|hA|xC&l9m=)_#G88$j>&`cOsH&L8m#F(XUuPQ9CqHWBHF9?B*0#U#g{8eiyZ zWFIy%gZ)7nqudV(vs!C^=}y%L$04GP{3wqz*1SPE^-Q+>d&N?RTnM%jp*1FK3lfKJe8RI`L( zoQWLs0uJ=B`}8t`O`44R985%nlHCHg-F;5W;stTf0hMob z^%8?54?Hq_wTtdHbTn1IcT0cV;?jP>`KD$@dfumZ*CJk7971PwW1&Cp!_UG3^r7#=h4qWZbhKOej?5(SY6oXJj|;vX zzBmf9+iDSCqle+PY?Q%4isBaf{eR`^L!@>w*|t*?jmk& zH8$3em?ZBfJpNi6Yv0_BH!7Jn*4#WC^2dYbxojzq(mFa46Fd;1!V(S&tzRb8;qBzV zH>C8}5%f#a{jm&Pas(&2U{pCA-S{TAuncncXj_bkMq{ znnfZL_(|K<1=?rZ=2@n}%He}+hjJuIjm>XR%?rhg6S9hYF?A?t>I9Q1YN0+Ei@_HM2j{I4~d9L%{%5_&o zl!Q&=_nnP^Ym{b25QG3vz?RV4)<3!#WUacnNIi3{nDH(rBM^&(c$bur3XNTeexQp2 zP83iPFAy}wl=neDg~Zynpy(2SfpgAXWN@O@(>oHfI>-;}oxaxYD5A+YPD&Q20P{k;OnbCI#Q zo|A*~m%w=zEN3jaseJD7z)|ly{Q-5f-!o}lI_6tC6FVI?(HQ2gdn2Qys`@GtUX51V z*AD<#U|#SSn1{nh=@i0XcoK$)4mD=#V4y-Q%46{RZ+NYNT9MpV^r*xlo-6|Ptr)wO z>&pFL77~6p@y=gX)oedX((HkY*SU@}SOjW+y4s&Q=@pU`TU2=s-FOn4UbMBS)$EG= zcq@Uc!EYW1*AIlWwYP3j9fwaOa&Wesy(@;@-^C1=!v>@lb>ymm+5w_*Ec3JkkG|lD z#b$UB$#_(kx*GH2FtcUh^q~e)#oC{C++X~5UvplETcN{u12KC<*e-D1_J?E)h7czc zpEFjZYGw+IPB=lhu2U@&9a`GZ6bgWqX6Q~$0m1>PdXj6^(Dz}ccgOdS_p6JpS>M_2 znrVU8#>>wci93Ipz5nTV_swkk*TsKnjGI$%Ez#ZPgNGw-+8eiYEZa+P=cyQuYH~d7 z7_D?z9oWm)lkE{$3awT8CrUhs0yu(`WA$8pT$QdZ^VGuf+@BY#_iTUouI~Ms{mr)B zKm=hp&oy1&Dlq*cq}D-$CxcVF+)w}v`?_Iumjgox*KD4)QAb(k3TGv|Q9B@saj9IB z9}F>th8xj~FfMM1^$OuuU@>4|F2EIBvLFjy&g#vFA5)B3s^6&*a^J1oh=JgxS1bK} zeb;wu46TK4rIkb*3dbSV4k0pY$fk(y%ekaieaLrRBs&<6^DsmD^)mYo`1W-P$XPtL zSj}R%Z2}osruuaN8z0lQw|wbw^<`}qHL%7KW=G9@Kd{F2DKmk%nNm6<|}gg{fVg~Iz-Q(2YG0%AZU}Pv70MvqCAN0>b&3v zErmacr9e4(>yIDi0C^+I~YH7j@_m`!I04%=^epMJOH(7_R7z3wwPg@Cz$4SuG;`MWHj-x4aBbA>Dui<@z7CsqH}*g*)Q zbY>B$YYm6A=;In~wtfS1*^?XJ`c@ey>zR!Pd9$km<>4=lH86_@hpx35&3<_w)c zI?nmQgn4t)ON;JC0@Hr^lcz(PE zLLSAnQnpqWvWtj6)+FMw@uT{)eZw6L(aWU!N6189kmKh@&DDs1^?>}f_0dpkX_w1& zEidZVOV`b58;PU@bT4ZbgM4$$*=B>5o6n#FU1r)`EcL;8XRy(#x=pLxvWjZ*VtKsU zsyrEz2!}42hd8kJ1oVEy@h5#ZWF4dTR#B36TQV4ye2sLcHkO-}s_i5~G+4fuaVJ`j z_K)dC26kKty)^zivsRv4Rqb}EsyNWtdMOnba$Xd=506ya!gHofUi6T(L?9=EMRVDq zrfCZ|3ZusT>I`qSbVZ_LzZ;ouD{0Vq6gOJ)FjHB~TV?ggslnWUBnXc-vs}qz=MzKv zqs3%lf_we$@&b<_yJn7i3OHksR}6J~*epGP!Cgih>L~4^KO(HTep`GZx%4h#X0Bb5 zi{Q-9W~;p+%>L>t2&T}sM2u5xW?tg+s){K7(sySpf_RuDcJJ=HJpKUL{1S);!$*+^ zfD6h%Tbx_kT?PzsOmi5lI$frgJd{Yy+z(X{&jkpr6-xGI1$g^`<3D zH0bc`_25qGXm2{?S=BdKGpmOF<)+s}yV*3Y?z1iDfpJ?Lmaw)rNy!eM6 zdffh{o69xFZ+G1>wakB3isLY0Xf+tvX^Zmzv$?=h%D8Y)5=(we_89O4@kx(_XAYro zq(T&$d^-gLrJ;3l<>b`$#YOCL*h$4XK(BnX*uY1sS>9rvhYYRnPZu-1T?bcbC`P!gMs5A zRvHadm6poA%fDhD!Kk;S7YZQayXIC)Yesf04kfjc$jDRGwI-LgXLJo#+Z>kWPE&!i z{9Ou1e88DS%9hn?6V1)$OV45^>dLB}iySULQd}?=Khh^h>}Y9uzy0vvNnREbZyIoB z%fo5Sp(VO=SjhEx?#)cQkZ?)DQvH7Vi#heQy_~*J5LBn3N|iZMU)!6x%h0Q5Yh!B# z=SGMBx`E_=Qu)_E@+x=ZelHFz)h_7xii_Q12BD6$nD=|}&9MGz<2FsnF9Bd$u1)|w zsey)(ij3o;$2ZUKEE~<;n^>&xcnh&jYSwH!tlqLy595%tL2$AuW}R*YhZNj=OT_A> zBhAtGU&)yFcFob4&hW8BFE76OtM3)nG$wXfxo}LGzUx?Z3aYA!#ZE9nG8ITuO?tIf6-{8S!+tkW~+E3NQczQ{rRyo;J5Ve zdLc<@e>xjkhM0FZN>RVQlO?<`6b>|Qt z)m;yu6_?AMM_}zYOLcd&2ixYk;4?5X^2+*_y+B@NT&WjgYW&uEu0Q1YXP=&JKrNSV_pSbCs^0)nUID2EtjK|5RRL;HCWGd9+3OP*SiV1;C$;&n z*<$>X#M>#>oj;G71%5}?-!}Fb!ZuT@O}{uEA?pY%^oFAiM>ME7dLk6WAX#X`##Dn>V^o5IjX zLA3EO-1RhWT2vx3OGIZxZsR^xX1bu1KU!Xr`WT)^R*}l{~{O;3@{jJQZqMA}x?uE(u zM@kjC&S!|Wj*|N-*iU`u?Gk5148-{7;C>9h%_JOVe_m8clJ7a5ZB+$9`+2j9?mtYQ zMnQ;q7u?Zv3!`zmafLW_p21Rmq54bRG-IZhYwNhGoVISwLt(_p>+c1@Yb!tW zF|Vpf0g!LUid4Tr6=m&V%W-j|5mZ_wj#IKY_wpBxvdkXgQBe>8_hFJrhE2b(%ZFKt zxV0hRYfcXx!MNX$X6gxRSP_?0x&K5gKjEdiuU1oWNM*vQOPXmCGuYQoL!*d!vWl~7 z+-=pr8}3QuJDOvX%`Fwd372M9rWw&s;{%9&31kX(w7)2gFsQ^L1ZYTTDwOJwQ6C8>dT+>_+Y&$t2ay7P^1ef zOonf5KW7{RHYO1kGXxXrj3HwFMYi^Rl3d-HDoEe~eyJ%PYBGSJdt>;iS30*(T>I0$ zCo4dfB2u`|p-S^4Fj7T$sINn^{++S?Q||cA3dovwdx=ld$h3L>@AoeG|FH0(xfzea zq0Z8J1{|<~;RS{CZ7yaXz&>To(pdb{WbGn|Se8`5l+uKsA`QMR83av%2qbhR?Bv88to}X3-Eaa!IA$Uu^r@)x=}p;E(@o?7*Nb8~hS_Cm0%t ztigaYZr*K9ipaKgiTe6cM~avf_&;~YjVv(d%hUW>P9NdXn^a?#83Z)DMdLXc^2EJc zM}NdJW*NHYdLH-w$b2gw(AwKpqbjQLiA-)6ZEdO``z%oX>1{H|rGx@X1n}d^fiAi^v)YtuAV-(fWr}0jKg~mv|bn*Ip z?GJ9@06)OoqcyE;L6S~1A1+VhT{ynE8}EU(#FpsB;_2x>F))?v!!@{{SrPduD)#g| zWR3H}{jJI}6j8`hJ}OneXm)kk%U*EOLRNW@jYJ_sduCbVl&E(2KVENddJ&m~tuDxw zsW4Ob6zq8rDy&L&5WXq7{)Vg1{d`s&ka1t&A+`af=Srac-y&vdpyfLuZxGGcDv?}N zET>Zgq=W8ctD>47%qQQ9ROrPanUjDQd(DOCL4%8n*g{GEfI>6cT8vh4WU=wrIO;Eb+5_S_2G@rfGQXVIuQ};8u#;uUsA)ioMLMU=(~@eH zW}};*f@HQAn_f|v(dPjCV|Qb9_AfNi__KYWeSxNyPQigx3>Mk94ql(Xkb$=kz($hc z+h=>sr;qDxs~#e2*86@Zo9LAXrbZcBvEPmL@fz8ue%))se1~FSsQ}mGkA=kzr{+hqVrn&ge{mlB5>CbtB5#&_e7+BbL~{IYoz?+v(A_T6ToZ6w*^ zpU~^%%NwDfFjFGfPUGKB+&RvP_3q4k&k`+lv-B+n}22#ozD?$YD-uZgw@g_IphZ zp2~8NtVSsK;-gXze?(lhYslk4_6b9&^}tDomzRc7O9!*kS#lO2t>Bw)tOYRl?uC2% zGqBQ8_wMcY5_%x-6##c?78~gVb*FqSmE5-(+qj7@@v9y2+M4e7LEW5){)VWt9wz;p zrulCleDCVtS)W>)#n_qO+Oo#8K37=hJELxeP6+7y^B+YL1u)LW=j|fEufqQoperVi zFx)0G%X56&ZW>AvNt>N-17>T$eP=jPDc?Q^3&e`9^GJ*!)N~=&a}^XR+o;Pmmh+B^ zNAoBzjablhS2*n-MYvQShI*s^lj+kWS53ZYVeY~I$LCz5rJ42!g~)x_LUHDL&FFmJ{u+Gq--JXf-5Pu*bmVfes8ACkA z(i5}oSp)Hye0Ya2_oELvBvvjjvE%2zCoGXiTvTVM|3t8yCEM60?;3-l^c0X))RI$Emv!swV`l;EN`zM+%-$Qu-Xppe=+UA113p^3YeRp&SPD5 zS9B<$s>Cge>PK$94N>Nvjncz*btY4Ryr`!&~$N6^bpt)wfv zR+zd>s(;$km!(k5;9IAS!uP4bBt0O8*yE z-xyt4*K~Vgt7F^j*y`A}*|BYRY;`)et&Wq9*|CidPi)-N&+~rYz3&}+j5G3MpFMKc zu2og5YR*|%i+(UFu%0HVl=Nq5^|KEKjbdE4H=h0o^qFAJIxikB&C|PHj4?`rYdxV} z)M3(W%;8r7g_rL~8P$e8{uUh%n?48KFBj;ic5KYY^t3^a@9}?(?WH7kL#3C(csN1b zDBOhvy>!qPM|@pY4U6N0&chlYSUkjO-zFr zpJr7uJzPmQIbKX_v2N{17@Os=9$$Z~nF}E6Lwp{m+ zRAa$saA$n}K><3-rakqXKGi(Cgk5>;r_aM~(6d=45AW%t2&M_w3C4!B( z^$gyhhVH`;tQ(W?U%BnoTTZ7}ar#-hz`A81#S%Bdh&kMV+uZr)UUE?$&V9S4|Wg9zxceJVIpsTl5ET_LL!F-|0j8T?!`E7}FETEUU$i+JS z`)e%i3kuQa18OBOl(qX4Bp=8+!YvXe0S*FL9Nu6?guo3H?U@Tf*>f1cv%aTuSH|6? zAtd{4FVcDFJK&);&1#mIiT=Z(?o1z4YgSZR^DUS#(bm=o&`CbD#W-8yhw!VlPPHQf zy|CvGQ$9&fyJ$tZFKtzIx=9K+LD^HmO|=MM8kCb*QHmpoTEO)3Q^Xtcys6D>6)lCm zR7?QRn=IcTy-~bdk`vP7k?^}0+Fuosnt+dYR-@iPel7MeN6so2-Y6^kXMZoWLD7XOn(yyn zbeszS_|PXB%O2_C`|jr|iT<%7t^VG64?3yO8f`y1!*z8oIC>lTnCytqi(s~|7Nfss z9g%g6jlk!``zt|wgWn$Y3>kLjg#+k)^DPA^P|=Q3HIa7c(CVyYjA-?)M|@E|A!f9l z@zR4Jk3Icm>D{5TQN}uoNdF$09_w*AgZ6Y=ig7Rg43L$#uYGy=6DUo5UEP9@1DDMW zLRnBmKsz=s?mg2Nc>#%z;nfuN>z$AwI?zjl)=Pq3;eXPo*Nc)oQnW4%ranB*18!XS zB&Wylpo^`hSNt>%k7lE4f)=zCMZ`T?K?ky z4wE&Tc*&KJ|5|0B%VPb*wf&lmr|~1VXyLePvZK8ne8!tT;X)3o0#l7;CF4ObF_q0i zQl9!Z0!Tk6g-0kJBx_TVaqR)3bXv`yLzb@=>BegFj{SNp%?Vq=cvrP<(~h`To@Dde^rI;D-MM z1Iu@|+vp0Ws`z?*jRma)#YSj;1y5A!$Q-5T<8Jzee-{MNsHwf6R+M*JvyrB@%{Z{} zz}0L{p(av>wS&k*Fv*;=&mrm)@={ip=t`xu9{DiS$r^m=}krzhH+^~m;zTzWMR z0JedooM}uH23L$-WNSGhS>E8qw+28oL_`F98n0;}Zq^-Y9W{LcrocU{;Fb?a3Y9FI zknZI7#89@~4IZ%c&cwjm`WeRRSriz0c@MOaShK(!{ZJbY{qUZ5ZuAgRfLJLH@?FXF z)F?*M`Q0I!Y)U=c1MM$k9?&RUU;p!j9C6`mf(3xQ>!By?a8`Tl_I4?Y4-#2IWXmu= z`_ApC2xr*v5hy3lR$8S~cdVf4PM=YTGm?l5F+gIxfJpCyGr#SSBT}H5cMHYs5j(NmKb+!Wnn`97bypXDMKj+$ixrV3Om>+E3VGM!3WLwSoH7zlSd#`A z1I7dj4uFL;Zp&k@mG-YYY&XOthdOT42&gVnANI;HLj1Dv^nPx|&f>8SUI=;Pa+}(O z*kgtO6Xvf1T4)#)N5{g4Aae0{%YcHK`HW`n3@9?18UZeOO;OS!C{#|V8FX~$KMCo7 zPKb*_6_BmCL`+t2=~Lna+n=}oq(V!Lj>TaEfjOMoH>Hvr`FPB=R+IWay%7wnY z06{7-j))veb&keXtBoD=Uw^af)6y-}+SH_0Ci>ae&zYYna3h&1K|n=gr2RePTdw;= z=v|$WJMW!-*^fFRO3ZQ%SV$P2c(R7y{6;xAp89!vT4IBD5dN?xY+e|o{1qcOu7NU~ zfX}+J$E3wz>RM$JN!MRA*t;biX9WmvWhN$MaEbV!qZ~_5bwA3^_xpVgJ+b(7jZh>N zxy!njGWysG1TgJlNskVRw>g~Qw9}=L(`-ZB)^A+RCb7rr>PJaJ2 z%ehzK{+#V2;jfg>C-ZSwx03gxwmK+nqW@Mly2v88D)CgOvMe zE6*qx-)-+DfPDx5K^Em!%0>Ta(*t2p(HE7`-eUTrqDlY|0O$dgsb#;AZ7Vi5_}dWs zI%qZ~Y_X0!4G>g*1oj&|)0jIUdMi*3@m40c_I!5`HmM5{2r$&_>-w5tluJ+~XOzGW zP(rvaf}s5d)%2sJ%4%5$p!^J_v{#MIh0Tvh$bXx~U)?*FcYHN0#PoT>o})4)p$Fv; z(LxE_)u5?|J8O$-#^Z8lKQ}JRC-6jofm>OGq0xE2ADyjgQ>qgiml))e{{*~g4#*V{{|9mk@qXsf33To*Z*K>*#i+ruc4H{u0Du zzotswF}=O&6{0Evd#htKt&M_Wg?PP>527vs;}v@Gij>RAGC>%36cLpORY&6Eu(x=j zt<*_~#qn91dvHZtU!>9%s zXVc11b^npaNq`~5b|j&wn;S0fc^ii=$A<(yThKxJP`vEfM`tF{jZ;6-M9%_s%lupG zvo1|LD(8aAAi^ky-(ip9-F|vzr@mfkkSE?ZaopQy;>P=oh@#1m>Ce>TEK!9vn-5n5rT95pmqR*a3p96WmMNajDTXG2}5>7Tk^ zCc)WAAiI!7eL9h0x#+TR1AFKWqT!gsy~~9=K$2)liOJ+JIc(T=iSZGPiL$92z&Kf* zKf<*oa+$58RanNXy+$3`KV!^s2+WF#U1~8BsP? ze z*eN)xbrr@^b`8E8_FvXEl&HbnIiLW;!@s4J4H^}b&(rr+$B%B^;M`c1QSWB6iH17-wb zBTfP^ODYJhCQG_hv{rIex&wY?mL_xF(%Lr+d+9>*XK4>*lR##!W-cZbQa~?L zv#=e}@;e<(Ak@RR#TyLwjH4}CFoLH!yc$TVWpk2zz^z+QgMo4KdX>9;PGbdp9hg$Y zd5U+x`(d+C5>Z~4a<|4lYSE~$os$Jlcr+n{b?{3#rV+FWb>Jfjem)nKC z#C0eDA_E~5HJy`3T{vl%9nx(zHn16lg_LIbvF{eT;S(V?+c%YUbrphxGBmnsgoh&R z&y8$%YTt`XgD*MpKB2(sUrzmU0Yt*q=xBa@s^_ClzN|7n4afcDJ{c51oL-n4TIaR< z>E&08I+8M?83zl|g)(-3Y7?QlY6qp&1=OV}{;g&5J|we< znL|%z<7oTZ7Ihptr>)qCpXN3mGTP?>-%kV%d5U7TN&aXaTe8w6!2RxdeHwBv$@MwR znS#GmcbAz=<^-@LyrXnN1j|3sLY?=2JEpMV5Dvfv@=0`_YU>u5=IYEs?8J3N>A}UN zLVJ>4s+^XE5E{VGVcMo?gBqdLxZ7_a(W#QXFzMJyde8g9$!O*WQ7B;QjWgf)5)(~qjKM% z>edVpX5y@6sW&bd6=)z~1m2l(x1^lQ$!YDVXi{I=8h{bp%bzp?1#(9|PcMUnQ&Ptj zsvXLl&u^^fj2gu7{q(6X7bjU#c8=&me%ML=`AuKtyNhdN9&GMsmT&^qkLLeU1Hme# zd97Edw$r6p##EJJaszLqKKo+wONGtp#=vFxuQMF24jMJ|rJw75>kEub>L{vl_0oo@ zgWsu$ujL73#EQ>l;NvQ(;%)MN`qJ&I(&}e3fCCfq`}kp#$xwh(3p5bkD5R}xPPoM; z@H4*21Lv1_h)_Of3iBN>Vx8-wc(Y!r7@?fl+?h>3K3OS!Z9FX?sb6wWz?c*fU@cAI z$M?jt%&5kI2O@0&AOG;#ydJ2g;X{fSc44mM%j5bG zNI#&Hv?1&_b0$27Qzt9Ix_5-$56>O=%l}6UK&}1y7TS3+(rp6VY25%CZfhZe?%Qs5 z?GZkzoKnUaKMdTLt)rn4;X4AgMrSylVwWPuD2HceU%t77FGe;p5?|=IO$F z3j^ILshoBzKc|X)cU>l_{-1&xla8kA60#u|l)$QwSOc^LU7QvHy`nhfeiYjv{AUjfLIN0L2HQ2YuvyQn1`4c8n<{=~-%Z1NbhBK3j=!-P%1N;L82R%6( zAEo8`4@`a%$1s4S-OuCnb)cc0#{`Uf*5`9%z)G(5dj6qo79&|47}~v7>*xvTohOi9 z^3W7eeR>*>{%3Zs+afcq*_k7cr|h?r#jR5&076#c;A$RVcf^~alk;%Zzveu)&2 z!{f(iB+nlG$M`29vk_E?n7s_f+|^IeNO&pr6V6suLSIX>?z;S;Q;dZY8ZAS>E)r_W z%=eb3VKwuF!Hns(>he~&4+nU&y7JE&WoTe3cs(!kR_@Q&sD19w5;rKys{VR5i0dS*dfipX$5^h}ha>C?sdD0+*$tO#{_jpR3AX5iEAKt5v$o zq(emTm?3A4FYy-5sr}bP)HN%W^fWK_(+7DI%n}IHpf%Ly%hW_~ma*ylG!%qa5OjVx zPpV(8V{Pd6K{257)2MlsQ)dYet_$NX%}g5;rqrx8Xj(9Dejj>=hPs4N%rRMpVJ3Vu zjgu3@)w?`fm<{5g56<}3%RkgBfO}9$YKe2QiBCjCda53vVZ>l2tXd+rqjuPI9uB^4 zFdZfEP#OfzUwP6fFEjy9LNj2zdV?@+J;*Aqp8NAe;SP_&{ca(R5C%i8Ro-Yjnz9MI zEYIdo*KT`+cH9f*e2Yo(UQO{*?}xsMicAU(>0mTAmu@1Ncv0QYru~hnmmhu#(S#0{ zn@8ExFaE&IuEXpemm`JDn`amveTsBLXm&v5!~!!v(|D@DX#}?6q%b^_jJtK-QZDeb zT`mZ%e{_{ZQ-WPX&(Oi_^?FQpI)o3&*bl#;I!~Co&^-wa|!sgBs>fnQ|Eq^!?Y#vkW}?O zb@vm+m0JJspVbdeT8*j<3`U)KTlaTaA7kVnsV~PCZ$4|(!}l8#zP_{34pvyl!(p6;t%^)Yu5H^45ZiC>PXVK2xU?6sNtK~B z?4zYYLQ={2Oo=MRGMQHpeq{J>#`&UQazZ$En?^4r&opu858`W@0yh(EXe4~k1uwuJ zp>rQoB_Z()Q_9WmnJM+NR%tE`9t{u5r|Ze%dYMvxuB@j{!rJBfs5gb&1-qdZi2Ei8 zV206BjXvu~b$l|g1avyJ2AxhJ7LwShr~OS5F0ClD|^2WcBN*$)0O7 z%)?OpYPAnUlQv;eXp)h}B@!^5?nPJPX|7~cPniE?PPqZO5~1BS zR)3e+(Q<0wT$q4e2haAWg>J;&(v0t>@;T2BQg40L;b5Tl#H6dVmyoT*A3?HaHYlFZ z3M8o)dC~8LULdEQxS7zDbuUTSlxTT!S_*EgwbWU>#|5qYS6bUiEbt?h_xu~1z!@@J~A3vE4tU@FEVZn z+uqk2sf5tM#SbN1TK0lBA3bT8QJ9bSXnx3I*dvUtZW#9cC^Ha%@;zpp1G$sQ2johK z69+d(hMvzp;~A;L($lb(vBm}mFxemsVO!I6IJEFPTSAlsHh~5LqFyFNow?edIzVR_ zR2S6200N{Vwl05=T|8sewqOdQ6kuDVJ_-PklQ7;!J0)^cS>%IWuJa8_n}#!12_$xH zS!bwnHW^niW)-x1x5%VQl;alh8uHe#^9*#gH4bY5FBZr`|Etga&lPkwFAT=P;@W;< zk~~6lKU4DFbT)t+t znGPuffY!kRl8P7Sy1#CJa2!VW(`MCjTo{XCX8z{na+3ZTTf&-M%CO9IAdG5G^CM+o z3^@_0JD@zhpq8CE(?Mg?|oM zkN*p&DPa$M8MT?RX6Q&wyby8Q!wsiu^P7`VDN^!>Ad!X6L$!Ah+1Z1Bh)y_jO{?+! zwcngMn;U)h&u?_>w9eD6y-=x85zj1R!aI1_DpKfJR4G>WYm8MIs<5*mTXBj`VIT!5 zYNg2Boo1YSylFLh4brVN*%pH&C+RA5XYm-nOT`|_r?y*H*&4QrM5WL$fshQTyo5Tk zR+9nKErj2vWLBDd|52SpzTg{Ez|(k8$LC5|wbL0Za6&g9AERNyaJ@4KQ8+J>8FFC^eH3#!M$Ou6X(}0+15lw`*yO9Rri7q3R0pR5; zi)s}nftG(MPgG&Lih8X%D}-F%2hGaT;L=*PoOed=id3V=WXS2R&84>Ws&3ag{x$zS zWr#aIj|6LZJUmDF>8#pBUOU}l^*I&lHFV6=#WYo5_e!7_GBJ1Ab}MF*;>N?mBKI9% zbNUdqdz$fwFFC3l^kvmurk~mQt2n$MJ$aWyhe1>t6Rl4RkmWd~N=pRK4OnI6nwVC4 z%Wkg-(j2pGKkGK>TBSk(xQPh2iJth^J)AE|S1&SR+&pB_9xX1|6pNnYsemR3SUFiM zKHX)bV4!mSroydv2zbw&72#@={i~{qkHw6xr>fzw`ODUBnn%9d`<7>=nMW|hMy&s0 z`l=R;Fp%SXWnT7dd}25M70Oic3cix>njQXjJ(p!U{#*pqsE-{W)oa&Lp15$*0XyCf)#^H9%0~&Hnb?xo`)5wIorPM(St&V@dK5y6$J`C;@s5nm-nWFS_E1O?JE66(4__0kM!tr*L}PECVT{M79I+1&oEf9tpnEtX z4-r#LL`k2PUOl!bWhf?KRA5_Wv@&YwU;5;G#4NfR5ZL8+(WxAjMrV~l33i4>rz3Vk zmqm17Jzt%S=yQy;(oEYHFC#lbSoFE)Dah^>MP~*YbxL}3u~!c2d5V}rL8P(cx`j;d zJiZ+I@e==h&tb-E>glE3R42$Zr5(Srt$ysY_pM$F+<(lkPjU##qXlw*YMEon0xh!UyM6(S3A@_Wp=K`{qT%SeYpCl2GRs{n{>qeWX;|B6C z^u6;*Ninm-HH$&JOV$0Hhb9c+ApKgW$6cOI=J-<>BKkTtNOUY9po0WA3OM%fc$kEF zysth}<*dgy4(2DCTcz~W!mTx$`UN2;zVHV4wt9Tt5Pg^IFQtZNMQ`|*RjI!|VXR~I_PdTlMFC^EpJ;IGMZo)_ZIIT4* zVhTIX$9q4U7qW``J#QyFA14Q--hT)7|K1~C|FNj)m_sK#L>o8-WO5%4j}3>bG<$M} z{u*Ml0vg`%-01jmQwL4ASZ;2O!p*=ZoRpe^bQKKqLhrKXi(3d#T`$)G#j*xtqchi) zC+Ei*(o6x{qOOz{px4|2G-Rvis~J?JKi!Kv0aQH;woL_tQ=pn+$C1X<*KP8k80!Ef zi8>eJKb3Ov#rpx%?*l1=7D~d}I|^-&{8nB%%si*>dleQYgzRQ66!7YY_NmAKb&uC#N@lzFsO{S$q^_73B(`o-U z^lnFlpB%Th3Ru^RWw}vu{{_JeoH(k-7Y2pA+|vTw41XwHG|UMvTJ_#vaf$;21QC5c zKyzv~T{ww+rq%?feFSR>I_jf9*;T5gKnV&#;rnbx+qTbaGEBWU7nlH^tf1JGAst8Oc7DGA~DpNuJii=)nGyhRw5 zV6|7D*691nfJ6~QpI37;XsQl`f8QXjt%67}{Q_vvMjA3mfe1m#Zo1_>TqMeujlNCV z)=7pLtd8^GG+#NHugxP@?rE2gR->c|?A;S0O{RMKeIrp$W0M78SV5(vvTG={@SzjL z{|-DyT{$q;o{*{TZECZ)5QQMP3*H_veff#Rx_cLpHR>2GNL@VMB1RX84$ZSn)J4J# z&PE+V>I6Ea^iOCg^jV95qaxq8Iplbgf)sX^2VhV}wd@|U(rPjE7#gAAs@z%H-Y$15 z(MY)a!N~}&PCAB~t#6VQjiNebv%)(#*qAVez zhr*{hz;tkSAvM-q*k7i)Bi^@~psGKbuW#rdPb}-L4qHu=H5qXRNu7R!vFhtuln$+d z>#9Cn4%kjN_v<&EKa>8AJb$Cl|6FDf&`C*XQ-;5NfL)p*bUjas9Up(qW2G#}YrJJN z5PL{EKlrK0I&4>^O9eEswJPsy-9@T}?q!Y4Jox3DOMH^DoIvA{G|=0&IOVC@TimU^ zIP3eN+3-b3gZG>LN`e`nn?k*qcCkACgDhaCP<|~5;WlG}*Tvig4+QxN?3no)45BwI zqL3FrN%QrX^<$L(E{L4B{jGKwhm-BTNmP~D(c5O*^bv9o+B57IvQGIrm2L zF{^(t8W+lQ1Ie;jg5_~w9}7t?uu?4p5o|&k3y`H@&93M~Io*iTValG5#D3--oKma) zrO%okB4qOMz4Q;0WOIxxwE{YhB^_6p4ZuMpGRE&?uIymB-Z=TEj6QAZ$-?JAbwHyA zpaa}H`*wv3jVb-ytpjFe>3ZIvgmIeSx$$hxE9Gq}-05W*@7w(kH2THnA(TXa>b)106Q8J8H~gz-g3J^xA0iBwzJGCWMLajG>xfqmN3~0e62Pv zGPnqsj7jcOK7i9KyO+(IP16%F)EZEMC!A;2z{c0aa*ilOuVtQ=cc#(U}4 zZVE&1c&nidG1JJdhfQTQF*Gz~r8CM8uOrqrkCiScCdVM2>Bh5*vx&2_j*j$90br+O z&k(mkNq#87u&HiVoS!*7SXiKF9vND~hfDL(eChE+vzN_D%P+Azbv47{l5Pm~gP#j+ z8_uQkZCw@o^%dFw+%HU;hpGfi1Bn4{E)LjpjvkODIC`)-tV(iEbz)an69d;w(`vBFV@w{-6N>OFioHq|tAvK8l93%ow2#FeSyyma-0xwy{#wR`j&9A_cV}l`*>TF*5%vGv} zC}l;n^ke}bwbpenWG;k(h%}v_NAO;^2WDQ)8vm?Hji~TT{?b?7+>#9sb^Hohfr?s_ z_GIiA+{HIauUvIQakBiy)UZIjRzop^*fnO8{1y!G|614z6!29C>}R{PctSo6-}pgJ zEEE(J@B0i+#>fm>smk0H9OSyY&WWML8YXCpu2PUyHbY$Vn=X)Jl> zZTMv|nDN~R-^}%Uq5UxqCm%|Gg#itjMCL(#dX3-K*}(!43>>mqTknWt1Z+n$w;Joj zmRP%rZtH6Ix4^XJlC88~Tz1ccNf-4{>R%En^X2|Tc?=2E$TW+RD%HapnTQE{3h++R z^<{uak5od4;~b!oNCT@|6uvnA*V35%n`b%Y-BGx#i^rhlj*VEY^n{#mdm}rvUiU{s zXfFQm)lzCk>wQ4<9hj+^tbyI)yM-qEai8_=-P3K&!-tH(K3tFD(Yc3egU0LJy88e9 zW?lp83@?1MU4lZrYFHTiOR_^#giQ1K^gf>CMCrFcm$MmC$%eIw5F6OIxFYo)MNY~; zD^pD-qjPgyXhEBH~SS+Q|m`v{fSfcA1Uekk406 z-Q^X}X2MM}eY^cnY?DZrH);|&ibOsPxE0@se?|{j5$Bf!{rA%}83TM`1QFx$IL2-V z>KKmFu+_n0Rs1lAg*8AQjw;M`-t+HrMw#$ZjArET|R*;1@XF7DU}7(9nIv=6tvVZ)6lIi?(CW-v3T4X z893=!am8VVnT7>NlJCU);F-P}cxo~|mZ@(d?ip3z< zqZ$pZqW*8q^spTl-q{y3OfkQk_gv3gTKp`ISNSp9v**hhDO+sBKYTBF=>2jS(^Vs= zsg#lpHoiVoxT(j%!jO3k#Mz0LIe1X?i?cTwb(oIIh=Ho5yn%Y?1SFtO6s|)31JWoT3fki(D`b{$qdI_8^ z7N2hUXF?0O2RMEIJv4;tB2KgLOhAWejF(CaNdZohQo^iD=`NDuw3yW4h9T}=fSe}f zk-AW!pT(=krWP9c$@*3(ls+p!aW=J5x@E0dIg!|8N z>9T`O{q>EHkkCr4x;2Ge_^t2-rKZJdOdzZ3MGW%Gdeqlx4C38##H>tBQyg(WD#Zs+N&htp_uaEfXQq9M#Ok!aLGPUq2QJ!?n9QyUGvp{KJRMOc>BF^1efT(!1x} z^ENY(TwKGh%}a(FhBYJm@XqIqW-#%8tbVtBAAA3?S*v_=i^3=sA^=jpxKKMb@x_TvW_rT-_>@g}J`2IlXL#ln7Tfd08a;xTmBiU^ zr5M?2Q}ke8SmW#yZ>Gx&iUbjC)^~4MwBXEZq8j9*mP`K!98$A|;5XVQJunwlT8ihiann%3yf;qTH@&y70P zMcsQ3y)D42BFoF8O^SU=No`}vStZCaH>~(AD{58zA1l5y!j?I8fEL3qvp~T%ws=EMs+CBTb<~?79Sq$ z1y=ZpoZ62|oTab&VS@|7joXhlUZ=Ti>kTwRW@WKGT27h+Ru#TMFB;76R{fh_sO9O$ z%!Y~2q~RRW4R@C3#RRSnmm5`O(?WqrypWNMMM#u>qrbrM*9+2B&Vc#_t63~2^p~#3 zXOTxXR@7H(kgU*IlWTf~J8rgYvAO^xGH^}NGhH|spY=p2IKvc3XYJ$lyZEC$t1f(Z zJF&{vNBjq`|N9wF;>RbHwJ(xe2_zzrZWY(?Q=R^+a!wMV)Gg*YZl_A8zS z9_pF$ko#H$Htov{+ZHfyr(v+4*hg~OaWm}~c^|B%+UG3)++Lx(?!0XHY3 zSiN{Ph<=KgZ|0EB>tq&v5y3f{z1SPL97!aP#`YyyJVJvL4`?!PKIX8}1=;?C{oi-9 zTWL-Gc~NQ4ox@%e82ta_ZJ^g8ydWX`;RpV*%I*tHplGAc@eG!T#WQ#7v^MNAt>(I) z;n8SWcOK26SdySl8osqD?4*+?1wi_C*{GHtCeE|+q=<%`s7MJD@_M`*@;cwL6OIW< zSGMlYR#dmUKF2)Q87@*&@&C#K_wD-gINF%v_eV^-QuP4yUw@SsMZy9Kv43VGfEJ=6 z)Km$-qA#6!_}H{)&-ufC4Jpm}3qZnM^xkJTJr2W_Xf}t&FF0)Ih0aCU<<$P&C)<#oAES>UM3<%~XQwU$U6MLPc3YLLg+h&`M52E)B2tqhW+ai?su7YU1q zN3BuL6zzot<6jEN^-SnTNB{b#ksNMEN)dyAV@#&+v-12+9RAZ=RLS~AX4Bb{5YkO5 z9g> z9#HzoJIx2i0rB1+w1s)_*G?M#<&KH& ze($q6r0ZH!>|*rNsYn-0jGX!`P4j|M3iiK+KF~M6x1Z&3pM67W}oY1J4yQ9*!^JSGn$hLxm&E&hiyq6_qNSWwmzq&*^T6Dc59i_ zSMrwpCoNlm1q+pby;*oD8%NSqRylH)up*d$mN?=eAVNY#38&3i021 ztqs74a-tRJP|>@g!fw10`kFAF_IlevGNR9~bkA6}&hY%MnQt4x;zjby__xk;!-6kT zfQs>^v0cNm#Mk+r%%*vZKf=}=ZNzRr-(@QKkEU~q?GQlo)1>DR$92s$_&BhFUe5@g zO>gJ>b{4Qf|cE5uV2R=o_z!cMx-OOB=P&L9;_2^A{s zoju5V(+gey{g%9nmn$CmY?%@R=`E84FZsJD5?>S6xh~I@L%sqGnN44x-q?<>r{Tt+ zBO{y8YcO2LLjs~xr{%c>Ri_0@`~4^QSP(=0%_oUDLUB^BClhs1QTrGbuxMd%nxT!G zbzCK;x!RYN9?!*b@mrfF`&_Sm@s?dWdsVsX*-4ZKV_&K#!N_{HBa1}c1fMQHg7u!2 z)D4AnzNN6jD&OgI%1jGok7TU&XL`9#W-p)n-{H6}e;#*yEAO{ozYdd9g_p7^ujO!T zdy^-9qV-#$<888ZaB`z>$e<#UD0npiTi6}U!TFK>LQMA6rK9IQjagsNMY2?~z^1IS% zf3bVO3$LC)iUOgK0)CXJiEfZm6Z!&o}ITPY*bxR zS-euy#9Ed(-&yFGeJ?tKV{RUm_v^R28!Gx?pz#;~i^~rh{(33=KU=LLuO|CV>^RdE{>P=O5ks!$z($||Ncyw);%%*YazAEx0tZ0pcEhX&))(NR%R)(@6 z$R4JG9&+48yr{Yp*;r$rH2K``X%VWpu^QS!Sh?-8W}CrVhFV4iYXq&rGEG2d*4)pZ zV^=H(3ipnPL8A`cKrM+WsD`C}pnrat98E|RUdoOU6pXVc&j_;J@JDM+CVRHD>D(w6 z_ct;vxQmI%_HD}&JRDxlxJlL?AZ=fQHEBg`2fy>Kz z`Int%ksNIm_NDsSA%_x((@w@?xwq14u3egUZ3^ms1fdDUY;On#ZPv|quIGl#r{NJ#_PKV#U}CBAGGdLK%6 z*779#^*72Mlo#taU}_F5%))A#Tj{QSx?O?B-E_PujyiMivszMx4fWLxPo`OhX?c*E6PD*Y$cOyzV4zqrKXgM)2ZI|}P#iM5Ar<6ms@ zM)9_OD-t@oC~#8sn8|FU!^H`Im5d^+*n~eGhN?@$Y#LL~ zHKT=DhiN1qY{ytsgr3V3C7Yp*yAeyQV9U@qS#-AmDiU&E)2c_{;pci&yF{C5;XM`$ z?gGt5S;LcIEIES(bXaM7Zh)lA6FHb#TYtu-_xrk+$f9_b9W6o7pNf=SCbCN6)^We8 zSW)D$y)v-1)wk$o-uA(V`X;Qcf^wSg&2AlE)C0Mf?uII9T?Vl7^(xd`gGEh%9S)=k z5jA*k81kMw@>kt>>M^KYumOl+zvUYbbrUc1%EA+dzvSXd_Xyt55spuys|U70yD^5s zNP2F?aNx&OU|IcMhYn?sAWBd#x@$ku5DC^5a!d1!J7_c*pHmGbf_cI+>lk=x_(8@X z@^lVjnH{-=&p=ZRM%DGd3aQ~?0KGT-8cFU&kL{lv0!F_Ko*H;;P)Io{)j^;szN`hu zyD4p-PC+h$#jnfu2y(0*`snDDqvQJld-Tgzf?S1O<{ZMnvneuzZec$etQm*s-%PAp zY4*SXi^Qn14jeu2c|c=@#Mwhcb%8$iXcex@Id}C}4lUWL%L0haZT=|hqdfE<7?kEny|J2mTU@w8Wc&(P->U}WVO)E10J-JDc13s<4IWVvc0`xzGdwA!| zy&#c*SyJ^o-L7su;bc0?N9e5?X{s>)9IS=azx1BHgvk-}x!YcGAr~2woi$Di($7|` zHm9|8*~^B`87AD5^Vp{?>Rn&y>E^H2T*C&Qe++#g9L=%>>=W~SDHJl4w!$6C7i_}j zv+{?w+wcp`X)labiugj<+B0D+swE(kxd-dZY0PG<{6Bf(KmVyPsS+oo@apOyB%}vR zf`#*}NAzHo08UnruO?;88vJfnTAe24>iJ>peB8!?mOfv2x>e0j#Cf|cWNUw_(Ckoi zhc)9IX_q3lh|bM!Gs?-AYnb5K)J0*fkWb^Fqn>UkpZKF3c|Z1;Fb|@cT&VH_{(O5L z6+9Gs*|=3?x>c1F44K}ZeYWkV9Xt;pMTPh`1uNK0I5J{UJSJ0cBDR2i()>gChS_;g zK@fkFaPq`m0AyFq_?%)1+Zu15!!$m4n%fN8gMMPy>zwsU0xbud-^p$()BYS{2W*6GUjA5x?sVt=Ow{4RBOX(dMQ{gDh)t@p_vW*EuTjQzEnqrtjF1efK&C0 zt*M|i(P>3xw;h%TLsDN1cYM(2KSEQ^&;osbX>AT0m#@vN_E@&*k)r$>VUl}|-eUj3bebrvihZ8%2g9te+(1|6{;ySG3Jd!}91!!iOC%p~Ay*x6&K^7< z+sgV}v>)wT#A^ApovK?qV64(Oech=A4=9zUYhY@7t?t)ms~~)GQ-su7ekF$XMgg&GK2ombp?%Fw!iUB(Bfxa-bX- zV9XP2Axf!8hMq&ST8|}Zn?i7{jEAwKR~VgD1?(Q)Rr5cpkCu>>HoE)jPt|C?MpiQ?mMu@z|5nJy?Jc49L+Bt zv>VajgE!zhkx#3h&&K>d z?fz8Ii?rMC%!H=R5iEv)9tf?-p zW4{cEOojt$o}6OpDXP}^^My12&(HcFH}XLUV)u`8r>^**Y&zz)BAjESb0uua!he0} z`%5TWsB<)NmaQpQqw!mhIRi3r?w&YR^8%6TD#9l^Nd4{&2la<%p!w@qh6717|1Gz< z`1i8I0QFXpVj4HLt)^?o^fEzX)&H?G|7RJ+hT0(@xvv!#E+7Kn;xq9O?qc*vp66`Gcadv(}gDoy8tFdCC6Laf4SFD6B zV80pcBGUjddonWlywZWc@oYKu?BTkUR7hVgx)p$x%KhZr!|PnX+<8PoRNWE&`F7!=C<}MMs^Ve5<=`}#AMmu!`?aa9j>hGteO(=+ z5x#YUi{IJMR%~%zGx4_~i0{L4XifU^WY=Zqf-ur1{tCiU&Q*D{7Ij?G<26CT?W8rzctu zp?&G9(TeHBp1&)R5s%Kw0Xq)EMzfACAspWZ;S};71-N<_8^~C)k|4pZQ=K`kD}ak_=>`E>Sz zqk>ojp6MM!c`~W(bS_tG;8b8kLZh86Nj8(+y0OjL+lyV_u{mA3x8q*DucNNWjc+br zkTGjiT#IJIQLoW%P`~t00(`{(e?}@IB+j5Eyb0htr^Os)Qm;MyL#LD>c(0g?)1%L2 z(cC)ra=*fLostiIQ;MA{L%)$Y7>@3Me>jnjx#WBGha-R+)Qez3LW7Hz5Z0SpyT*kpgbrKoitj<+1dYPo6!ncf!}#(qCSkImhDd*5{o~DyNP`*%M;%BgMGL z=E6=`i&^V){kK0n(`uIrsRINpRY+iwmhnuy4$bzXL<0;-J!jiY0>UB zo=-W==e`;6esRR`cZNJl-A}3&2w@jZO;{j7#Uyu^*7u1r9*k}36^jw^?XUsm47vaP zUI*`+AUd*xsz1f|yhkP5@^i&||E^I_Hax8$YXe=(vh;S1)?zt=a3%gKc%5|?$)qd~ znqj}lIbHITdoY^pTP(H&oWQuwy52vSdFq)w#Ucx$J${*%E&l)vZr%7Y!11XZ+xRk+ zX_o#7i@ZYT8~<#L?&0Fz6dCm>rclXyb5|kr&Zh%RyI;E>S?10helKh&)>nBaiT`_j zn;qlRqQa+!GLR37W3#vr|C zdV=$!{FnCJD2tTQX~7oduT~E>9P!yiJ4_GuVTA4H%;*KGJ4&uG)yKgrkNqlQ>&?2f6XAj_V2piFw`y^+2G_%sp=BI za=R)IR2kftRlRU|2OA%LdK9yJ&%Tyv)35U{$FuNhFx6+>mTBnM-v3cW!X`A;7gMb1 zL>)OW&JdBxR|3@T!TVrq*hC?|$Ok>>K_dSY?(6g>;=|P7ZaI7a38dHCFB=7`CBs=4 zPk7$3#i>@$h;5O3NAuvLUR`#@2B?50b}Ieb$8kC&%-4&~XI(+$SK>yBk0tY#^XmcD zDk+}Gw3ZC7)P~+8=CePJmV~0w8%usFHp2zjeCmRnA4Qs)@V^NW`~yrx0xVI{1?1Kj zG#n}-Wc^H!%WW38Sk1ag4l}o9o^T_vuP2_Lv#mo8kuIU64ZL^lYb9gwF57^C&(2|a zm*j=hmF!%P*97NJ>aGV->~*e(`fk^rmf~q+{%jkgu@UI7b~rzdkf8jXJ2b^D8}?67 z)X)95oFA^pAx%r6M7c>=cT#%a=8!w4^ph6pMjf{s^kSX*^JdFNe70O}j3dnj4mp`f z;-B{L`r4mLYmYPsMz9o=|MQyYVuEIu&JqT2JDnuoKzR&KWdHhSEdN^+h?4r)`ny4) zRg^)adp^xj_Y6NBur#-$&5eW5p(3uN)_;?U*}Jz{w=Muuj4o^Vv%=V8 z;A=X9!z4LNCNh-2C2Zu&5do#*8@^aQz>%Eu3U=3MSw`GRG;aHye3CK2zmxOip|*6e z_XTr0>t`wq!|7f*-SlKV+qjTSs7tyZ-VDniVLG`{Q_;Ha#0-;tQMF=>?Jy-`skWCZ ztOWmUe_NR+N-gB8VrooCYaa+N{H5K}vNcrs-TPnuD#~SGcR&dZTEM6EGWAanHaswL zLx47|8%TIH%6YQnW$&Py4M2;>*&dD&Yg5`x}+E;Ky}$G_;M zfX|7Jy`=wh?tWc<&Exb_%3`pu`oVimfaNjWle=%`&7=M5{1~a{Q%vGM{XlhfGgVPTI_E$;hkNz7WDYEU@2yC<0j{WMQ{mghJC}c6;MAUv~ zOW_tV9Mk}dw5XFR(x{V2>ou06(P(fZ$b=8^n0tOS=LcA-(`V%U_>0gAvS$~zFko!= z(B=MHmQ8yB&z0bII?tX;)SLq&Sd5HQxtU1;i-*Igk0oqLKKtnqCF_J75KOY1f~z#2 z*;-4do7R8qvn;5YEE4Q~aQZVX^)HK$>B&Z^VzDUM#hg7{V=fZm<)Q1958DNd((0AR zA$I10I-76&$l^*w*0d_InH;~ITp@8vpUEu>cRZZ&$Kd2ASZo|E8QpXV^;f=3K6hU@ zaz|G^EP9g@t-(n_oJlXYhhWG4q_7n3YeK0IWK>RnwPvdIFTW6Q>rY%rCfZ%(xb28# zSxB7_P&EEp6Y_c`3PIAbn7cJZqCp90L4{QPGEw>~F)zj@Cg7>WFq!6luqV-zTgF8u z&nJ6&5|P}({%?2B4oOrmRq|(MV)bC16-UJLH#TR!Ozk}No#o)mOAhA(op(wDYRc5-|?KX$4H26VrU|ZS1Nq)O-%EU4r^OrH?2_7r5D;_r7>7d z;97&%9Iv~Z?oTAXa;{YAsp%7=*FpYG7~D!pD$0?}c@PrXww|30>a)G~3UZDb+_mn) z0SMy@w(uKq+fU81vDIs$3~C20+^e(WS>P=wMXsV$;LB>%!5&w^oGHWC@(WgW=k_hPflmRy5&TP^vNtfT`e^T*i)$JUa_lK-r=x2*qd z$y?WBug#)Q-xm|bPn9wdd`Cne_)-opEoeO8uHdcoJ|@Jl5SB)bN%=LT@$LgSvexW+G2m@Xja z-AX01d}5xPf5ZC%+f?_^E&tma)>gy{s|p0e?7U5M0A2*t1&>g>{h7j1dB4Kz=M5h*H8h_z;zM^T8@ z+>b|6I=(rkXy=@dx0X;7`pv@f9t(WF?qG3NY%g*ELpJ?mS+*_KkcDZ8+kB&8L`eR8 z>RY~CgtoVTu3F($Ye1>b+O9)R~)R zb|HB6e7&C(yhDE9Y^}8Fxim(NBy8-i=tRCeMs)7YvV8J}1CKwYBN&j%XrInGkU%eB zYH*WNz^7MnHS{uT#jWJJVHeyba7;aJO*AterL6dK-h3V6)3B^~A!#GVOz*SQ5T8Tr zW6UmA|2bqvi_BuK#@75r9W_60L;Y$@-{W zL*wnsfYfw)nHtCyMod|&d|#97oNO?e_^9n;UfnZMsmEukLgTfSVPWe2;=zVm{@+~y z2wDYfV_biY2Ip&u=}f8Cg};?N#c?lG@-7MfxZG(=_BAk4y_H5qu;FZQS^xCBb%+FH zEgEaJjWlLQn1lT2C6wCI7g3CR%Fwabg&*-1ay_dA88k%meWg7)+aM1UvkOMT5e8kk ztH8{CsX`sW{x$ZXyB-1S5SoYGOy)Fr)EopY;2^}r`6J{W+fl$3Ouh8h!R7)@SbRc) za0wKR<3{Zs2peGtoKlYS5~PiN{v{zYW2Aw5|_^e*sv5JF%_}&h-sD)2VK_3@OPcQgP~T z31d$234D15rK0lXQ5xm3sDng;-6fjSp}*QRi;9bBl?D0q=jLEfw(zzo{7&do`Ax{SQkPMQt8Qdo#QZ5z=YtR6&>{{b=As}z=AXgW(anQa{Mkrsvc<6| zvCuShme7z^A3)q{Jkj%IP&-4uG3547`GZwiW8xd()wX`_TP-m?`upee zr>$8(fo`dXhCIN;1JBEA=7EO>e+)bST-TPkug&4jW@G%7dsno>%M?aSi4E}OS<$@v z#46|YPkCNjgUx=(cQgDI#;7;aXVj9;i6sdXoxu)TtU8yFMJWz~t$WRZKT!?vePxU4 z3FDiCKSk8s-b&}c#jg^Sk5Uo?ySa^d?_&klyaqFj%*3fu0Ez53)Ow)pWEZz5N zWp_0z;cqBt-PYTOP$C^5+KHTpjMkCCpsR{X-YLPDCxPD{=cDr~9k$1YeV(wH>&cu5 zS(F|jCa~8VytG6;wo}+1p0zk>h7^*OD>hC<2^If_Mn1^b)Yih`Xn8Y2KIuq;@4ty$ z_t2{KG%Z)!RvhZJZ%{+F)%L4|$2Qnc)wuje{>B}KaVOMRn~o%j>jb1g|3!qYSyLn5 zGLx{~5tt?p=oJZ(>5I3Std#>hbXLOd?5M#XFS9{kzH)-TqxxjS!aMfplU257GE z{@sweb1pkh1_O_n-@?(M^Al_`v-rh4(9%E(*`ZjNW14eZ-S~Dx#bXLO&Hdi0JMZ%B zwnxD4CNx7us1L%Wp^Fn1omrHgVMTO}@a;kQNzccy!j--}aE7-eLd19^VOv8)$@ad< zVcAD7)G?AmcHN|*stY|g*mdG=GY`%f{>OSeMXllxYjj>K`=;?FVvW8WxHfEv1;bd} zW9%dga??`^a9VW0*Z-zJs5V^2b4C!XBBR@oDzFg-N~D(cwaxWK(+Bn)AMavQI4pDX zhuFh8n@nB*^`422=9L?~L8R<3WDpIS>W_<^qC(6Nk^Tr)WF^#AZ^t(5R}d6-cW025RV$EtSnjwY7)dN`it%jRQHM?abyovUz?FT(r;zuHh z7rQ0@36KOpN1TQYs1Z%pXz%uR8pMJwRu z{#iEkfE4bPj2n-L_6GmHJQ0zxp|x-5uL!I_IdNq0Z0VW9Mt&u7x2ZPc_+fYb`s}3N zsk|$nWAsQJcOu}ydP9Mqpltr{WSAEMU!ItertSZ=#}|SE8-zZ3Ehw!Sy;AWE$Yz0L zA*+l(K$xEP8E%pK8B8;(wUEd6WG4=-Pu}^lI+IeP%+D1QGgp5{3OMtmj6Gj-jyGX^ zSeF;&e4>J z#p&y|Vn_5!%?gMTvWM{$VN%+>%qu>N@{e)=YYE(m17H!c_?R3?D59pQ&LY(38ApxI zrnIFfOt?!WIDbbYXCnXKTMYs-n(x`{?<3)^%USD4-6n*Et7}4u2I{Y?*p<;%dcmAg zG|RPibnPAe7Z!y0j^A93rrlMDQNf80dwVTBs|O5dRFSQAoJ#Bg5`hJD8srPl{PNoP ze<#c&%{*fR{!IGYCTp57pbo=>G*3|QFAj|_(2q%)mTQ+xsODZWHH$j_Aaz$OKr?HB zgUJqMAxfqyaz=R~wZa9mjcbLxd-xbX1d&k*LE4A#r%R|huQdtx>m7-K6 z9m*`NBJ6EY{zUFRL3}So01BE@E`_cz%U7)z=v8Ydj1@m168WgzGI;3=7$p0RH)J8R z2r%b9dm1d(4`%=4in=n#-NifrIX$6%L#a49+wm~5kTV|bRu_Jsyz&naDS?8t7}FuV z$ZZLd6ccC{OYnf2J6=coB>fmXf_XM*zKS%gxZ*?xIU|Wh;p1p+&6k7FfiGfKV>|>^ z&xSK(h-r+9@D!DYw_JmMmgEnBq7Cd-l~nw(p~@)0@0gFLi( zBnl%POL@3OTiM3^^mv|K10%5S`fps+aQ*v;VtwAFrHzXup5E3ZXccNt?hn3ZWSB1;%MP_F!JHjOK5NV5GgUyQk_8nn{(T zr7@2yeWd}NmD}8@YLlmmqXZIUL9rE`U?g0$O|Pdv{&Ve)@yU^pj{N3F>A*IM&kx;b z!W6cAqb5>q1XMp0d6FC}8BAKXh)mC%X3o$h@h?_`nC0Uqw|1^wIo1sCzh)!srxqsR z+nusaAJR9u&N)x?Zbik|7j1hEoE=}W7Gf7xkJ&$Ye){DylOTOo!+Siq(0oQXy524x zz)?PVVgZmz9TNG9T77TL>Xb{cUzH~hA$4$XT(+*K@dk#l`l@frFb+fh#X!K8J!ObI zjaQloI2N0XWjWK@${93OF*A`>pFT*`J;m|$2j%?muL>4nTMKX&h;&lu=ErZK&$GfkF1PO|U|$x}%A!G1tN`rc&Vo8t`Fy5$fX+ z4G&GkX5u`Vmam~~j9RtGP|A#*i&uhbOA1MXFGz*xl_qLgOIY$`s&Y7@?;S|jiAlaH z?9h`*I8=N4l+&i7(BSn#8tf7CT{_k8X~D4!B!B9sh%Yn_em3FCf=pRAI9g;M2l(7O z3a4|vfNwyek2^yZ9nu+6(R}9>IsWaX9zf{WNAiowQQ;4OG;FGRcIn|8lFTSO$(*)|#knv_& z%D6^{Dk>|I%Xgunf-=5_Zd!Us|11aZ3%gnqwStdfuQ}57-C`!g2-_O>nn=&M+2yP< zu+^V{HuYhG6&=Wm&1N!&Q%%un=W^AzahT~|!6_40zha$el+d(XFp}nPGMq*^yVsG% zrp{LQ1#O7e;FvK83vEYh8lxz(8yRc2f7E0RZrLNxKf4d|H0xK_E(?2;F)ZIbVVDn z5esUdD%A(Xzv7moLS!rX%WKI?3LY`K!(yVKBBO3drw9pz`#5LwqqDvq{YW$ApbCS?5`SQ=t0)f%1`TErgv#K(=3QLyn#dV3z`n4oI{p>P!ApmDuj_8(6H{K5h zJ{b+>Bp&Zyi^zV`fz{J160^p?n#&vM)P%IHn^K=QoYUkRR+&wG<#SoM^cNObsmHjb zk&-##?kX~97UG8v`g6q7bXPRNjH*v%3B0_y)}HP1OM>9xG3!~)xnr*l!WRy@js zv?TA;k7+HX@XlvrkZ&G{Nn$R6$uT&1#KNvA>MI5YtDQQOrCIBfBc_Q=38ljMCX7#? zEv%}+DO#|aoxO&S1CScl!zMKPl3f~$c1ZzpOnFb$$hXaJ2$nj2-nL&6SUsA`hJMt` zcbwV{M(z>g(JHOh8Smep@E0NgwHh@m^JXJJ2hTFs@_)Hl`4ZiJ@siL0J2z}??1(jW zov6yw9~<8pzctvlgaEWUZHPq*#lY|a66Tybys)AHDiLm(X@T$C^L^Qk(nYJ{kJtU3 z?wBZwh7gs3Ch18+Q?d3-p0e8<-mqc9FGSP?i|~N#8L!ClTU-qR+v8`nWr@lb@~nc} zc5%_8pW-K@rV(fhN;X$d12sZKR>HB9Dp`YOn`79)0G%sm;K~d>_)_HaJrEF>FwNW3 z&Un+`+%t%UenFFZ5wVFE@cjyU>nF^GmIbVA81&EuHxcn8pTpQq7cXONgx*yu|g{5&~X8Q@GDx%o&WT3 zZ!Pp{((c+@_f4S7Lq!!CPiHN-T0lSE1PeY9@t8K#q?ya4ub zbC%$y+207Se*VW`EkEs7>1~jnq{R6{4EX`UCV(sFUnGMW`gYguY?QSb)DSH;WEjQz zBTd!XP#X)lwt=J>aH9MfeVd>fm)KK~u!2bPpCOI9o$UvcP&)NojWN$D5kLr|?>S+r zJB>!}lF)dr2EG+on>!*`5ij&-0iBkK+emGp>}>jEXW?j;Tk;GmL>g)!1xT^dUM!v7})5aSp{!DIKOnqV2geg9q`Bv1H(4CF-XEE@o&U#;GmDHMu|5I~d6X*L=bYI`ch zWo?xZH)!$qhHBF_KLs@UI#CwM_n8Km&H^ZDL-_O{oLw_;CLk2Kx_;?u`+(Ja+0=dw zD7f&NRC-w>_PxI5l~hC?(yU+=&*M`LS}D#0+0O|FRuxRHO=|$`eUxDThIB&-3Qgv>M-Mc5 zaK?;eN#b`#1EJWeU>QB!>7=RoW_3aQ|XsSw&rp&SoU1OvIe8k%y+$%pC{@? zmfo>`DrS1xXo=I)DYz!*K6~X~&x|qWL5YpPnR*fSJav?Y6(8AzhPE*pZuE&S%U!pF zw1^Hh0z3{4JQLpcTFXmcnz^8OqP}C+gJ7D!)C`k6OZ1LK!fk2^IHSlFyk{6t z`EZ{k-4!ulz1sMU5cgEk>r0rft=8bcx=g;=d`CK+_p!!_9~<$-I<}OnM;JXEXm&#mG!1NuNUOcv6VjsoURYzh*t2kCeqCD8&G35$Y1#c?B#hig3EB zN_JKZ_DQVCq2kwzaB_~#CYvoi1#Jtx9X+BA&Z$dnemVUe2CixhW^o62E;%icD0~HV zGZ+4#o=Ar)k=-bxZaxbBJAv`j6%(=_pl4N~Yb&3nvcS|vtDB}gCTR&^pboLJn+~Wd zg!v8!Qi1usdRv`!ZF8hNSLKP17NvyM)I~h0u<1dL2NvUT!}~2_$r42=g4>9FY+B)T zqb55WeMy@pxeI`4r+}aHcq794R-@^GD@LuWBtGMBJ8&Zso8$V5a0(We)&{XK)4Jjr zB+?mtIyIG1A1{v|Q;EWMK!U=BY=cIRSKYdQK*oE|2PmkDftQ_)_KbjxTV7!IwqVxJWZ@E_hpO-nf^ z=&LQ#J~L7c&JY1}$LY}0#tg*J)cRvlhzh&+*UcI8?J5t1jf*80Q>CY+1AzFXONHM_ z>EHI3{8wV-6YozbD|aibH1i%wERyi(UtKppGQN0wq8>(HBJ~`(13a|H(S{PsCP_uInaQLQ=LcawNM3Ik3+))fE?{#DVhO8vC)ud; zz_Cu{PoJL3p+Nl&u_*=k`{l^y{}^4UaCsPT5JXmeUKD~MHSc%bgx3Ch?lO)%g7DB- z4VVp~MX3|~eU@$>&1ZvVDwTD1#m9v^^Xl0K_|h4L_mcM+$%tL8T!S3h#{;=F@sdPl_|jRSBzTB7R|hSx4Hwn0pU5uS z_53ktehb5R)*o?t1|7)Gdfz^~Mcz+~KN?mt*m%1tf^t-S|S@bK;H|1$> zRL%>dz1EN7Q*)=Elr-iAvvVbQ+@MO}&L5sA|0wO<*90^fLw_+-PlpZ-30V~VfCKG0A!$~-H zcpN#~&c{$XDU*HzjSRp|7~p0AYzIr(f+G~XKmw1G;zBJ1$cf#3(^tFMSaf}@mV-)j zKSpTd`Tkw6TFuX-Kx`HT48)BDTa{6+i4oK0Ru&L-Wv;>N`^wMB-$;+I4Z(YV#_K;z zG=n+}sk7w2r*S?LqGhsBa)o*LLk2Lbk?Q)(tFk<)!CIYd*BV~{d;B`!;=yFp$Rr=- z39tLe{Sqd04Y>FnouEga9%`DJ!!VlUND2bA;`RZ1(BXFfOvci4Kb@97{SR9ouV_Pg}A9s?&c4&M_lh#yNG3qgHuce%CMu3Mh+a zw|PWgcOuHYl$1=V)wia%%%~hrT?9bSp$R8Xl3V@hTsrjY@HkA2?J2yOavVQSU{Eoy zRXu8G|Dj%Rm$R@ltTR*QQFM*=t6L^Uh?HVk_3?a<)s-uFQG>X&0TpN=SO)um)KR@a zr9bzTNiC#YU>OAw5MVe^o~Nw&t6ns`k;#azJX*#eYJ?=)K zJBvbm+}x6PnjX#WcXWKdA3c2u<1sZZFNH>{sOeHTq~nL?dv-*R6K8LJg(m6PCT>hJ zrE97CN#Mz1u9-3crgGCMQHEFiMQN{VlyG_wOpKWVjN?#&*C$6SDG3|-ElV~%7hByMTm^hrn z+9n5NGX(q8NgM|$)TFmPgEXTNZ21)&H*9*o^Cmr%L$-jFl{^`YI}2pJK?_$I}_&Exu?p7Rkd1+zGZjpdfpBgK-X8jBo*-A7=B? zs4};Gi!<{&Y*M5Fxk-(UBwM9LSC1UDy77E13v|D)B2@BdBjfObI>+pE`8>mVep8`& zi%IA7-f07>I3^+zLW@vv-XQqnskps0Jf?|+D{+Ab>a}d+X=WjhF4#Syf9Q5_>>4+r zeAxU^8{FD*N&!B%%KjD=wT~pbsHGh zg#cYW<8E-+6lSp`a^dTnJ6gA~cOsasnJ@nt{)b^0L!nK?FZ^Ag*yiBc(?BqRWWcw} z1@mPmyNUg|1NnA+55$@oNHtc*%EwMQLTZ4q(F{(;tfU$8{@py&`jOP6nz*^5vO32U z=tF}x*Bi9 zK!_i<-s7XF*u44fo@g^wb%1QLkjL99_*!So4^EuvWXuC;z3x%e?B}KP zhLfUQP%Onyk7+p{su(g_N+H&s`l4q$sG3O zAk(5-qukU|r0vAU3qBzm@5aOnS5U`ML|(5q;iwQzsTTmp5rXD7;82$#Amf@aa2NfA z(9PeT32c(s##E$pih4Ko@%4mde0L4oNiFum{}O7lU+22o#vz` z2LX!3t&_S0N%=2N^|&IS6P_E3p|DPLG@wN`kN&)Lr=Y29+$#cZt|`751@gLAQncUMmo@_NCHV5^S(u$7q%ppkU_H zJ}MBh9Sa8zg|UxWMctZn{iWSbAIA#{F@?`1nK9CCdbswuR&y;Aj7aM-Aa-u&iY6ah z8Qx{hO$++Uz5n1aH%LBgV?ruBULm(rH3@&6uC7h3O)8Ix7DGVoaoWWZ1ix%?$~vgr&HEt*lEsWaZ;tYJK4riumW; z%CmKWfZx!kua&L?EHj8<27`G}Mw8hZnEQ~5Q<+wXH|@HEYVL)!d>eT(bw@E66lUxK zM*abGWx}(z<7lgCyz20XD$5z6yvvEpIB#6vqr?Xf&}1FeKxFzKlp%h}-4K@3lyhFb zxdc$HeY5SV1&UesOe)5Vai20oe?W4C+&6NWSQctpuJ$oL5pZ7f?D8NPj7`#+HgVdw z13+P??I5$T`J0ti?a#dKrucX(EZqzHp@uZ3?pEG{7!9aVZBRPV^{@>dDyST5Q|(!zar(_IqA+!g|^U`+mHfsO5t&K_T;cT1RCi zbxNR9n^Q6gPPuVzEcoxmP3pr(ojD1$>ii}Bv7lZ<+ON0FxcSH%O1|<{rpg)l+$MgE zCe-#(AOeOsWZ&ku7Fnf}W}>pCCA5-mKORcGDiZ*w{e!5U&{@7UHvwF`fqq8W zVO1?bkW^k4Fmy@2Qva@Woy^zXa^4CKrF&TQ1Q#KmwIvW|+S>0qIku9XxQ#?XglKn8 zZb&q0EhJZ*r2VjL+@Fb(J{0oZ%6c{CJqaIpCOu?cK0b4=OT1=-< z`E5?c`g5VfS}`uXL)(fVTob2=syvl?y>Tx==9c@JAXdwMzMLZC(g_G%hLgo^p^0br zZX!+f(Kj3n2*G%ZOpKAfGKiH7$GMB|HU#lj9MPpL(wgZKst=Yw7H`^f-l;^V#4j+o2D!Z|GZE9S>X^XRxCJd7S#>=VCW{o zHe1FOHY{b^?Zqhs6RH=?4-qsh2&u7-M&IJYaR4cs^-W@&v>c+mKU(XW)d01dOu%!d zX$Ds=(!W4WkoQ3h+Ch^uh@N<8d#*+;$23qLNAj#|F?J<6_jlZpl0GTe6pUt8sdT3N zS}Z4@4RFWaVD#-lKV{k8CP>rK%F|I;Oex1`y6I=Ep)6y`ft4M*ngKZ*d{akqbA;#UeD=D(5ZvC?x$#*Ozf zy#b?_HAgoQpS*D`C8CPa@kC6MadfaWAI}*a&haPFd(!A$FOq7Mlq-y1_+2P64y)4s z(xoD>HSKr4i4I2ZC7pg(-beUkie~2d1cBD`a{2L+Exmck;|~QrE%UN53aW!&#Wa6> zD><@P*}F@)*8+EeXzVF{R|S%6j)$eUfu+XRXQ0KJtkU|xd42L!#lISjDlxr-8qc0a z{~;+nsw&wVN_x>K#9NU&%!eML`e&Kpqr>MullFuZI1QWwAuxds-J0yh4<(^tK)5>zfPnuETx*I+)J^OW_z3+HnjZ-gWYH3q3!@Lp3CE zpV7wq!ph~=y*e2ZUG4ziyzzio_s-6KdjBp@CQCs8?8T&LPJpCwKM; z7;8P3plluRFaWMkSO%!M=dNKOqHa%A+hc#A>i^QCd04MoE>TYiff!N{ZkaEXzp!fS zrF{Z}q;gRXvQtKkTf{9L%_P&=y&+8}CJmOG3POiv{H3un>9wQrYtXP<27kCMR%HD< zKF?J&Tn-oRJqz9vTOXe4R*+Y{kDr+&7SvM^zVybkc0^I4(PK!ublOv@u|RFZS*Yvq zoI;!@H*$^AS_bClAz3D$0U+mv7uoW#`PJ3SI!xvu9Io*PR9+*n0~XuM#3B0wUS@0u za9$eDCTLOt5v0xS9=qLN)CVV}u_p;D@Fz)zB20olO|`F8*B_EC)lbgETFrAReNN6_ zYwXa8p|NS_5zVry?=)US(@1j)VT9TR*FLa5-zfLjnv^kPojX{db-VUHI%mS0-LRC^ zSS`DXyuJ%x~K%9syfH%CL56S!SSS4iXsZLo+IMyW6EKaHjwVs$;snKglq?=U2Iz#ebHGBzjHw`PtW`g z*iX=~wnMEybKB+Bx}V~>>$Z=&g<%WMDRMjk1=z#TyqtCu=~Xfnjkvz$cu#--B8kchj7bor z{@qdz&&c@F=we-PZ&yY34VNE-7q+0H-@GwQ6}U%t?zn}fpKqxAv~c{(>Iy%AY#kiu z2>W5tb!gqy_gVLED}>MqxN@cMd;QZs`;Q=SjZ^^`a8{6gw$91K8O>j!^kP7{dQa{A zGhAi?@_`sQ`6Yyp9R87W&y@#zcNDj06Aa!`pZ+RZGi)6j1UdUQZ00&lR&gTBBeZ^&|WWOnc zLd!zt?PE4Kr@@jMvbhX_-GA8Dzja`iP8bjUl^9%YzEZQ94c3v{i$0GcuB-G|Ap&!F zAru}@!A}o_kNRtLEl96So3bn99%?8x(Kd!|M3`8igz+5KQ41e;x|-@{K))}`jhrD_ zp8$f%xX=n)hC#%jw|gFq4yr-wQ&;ksw`)1B$hK;j%}N)IF%b#P_W}U8{UucNtKRcf z&5xJ3{+|L6{r^kAFDiCh==Zzz}%-w2aB~+zUGJ;|z!r*LkNB%$z-l zT?Kr5`PTRrnx;9O(VHqS5`r=*v?P5LV~(_~O&T74)6;zS)JJF1;SQ?)wfPSAS97p} zkY8J)o&I3+=?Dfty44?aXUP6|)0r@0r3@0xDN`4=7i9sdt6GuqoDfSV5`YPZ^==&h z^vC0X@o$+7Ji(3H8)~1`CNernG6l(IY}hApQbs0;<6*N}$`b%TpLgfZzn%2f-p;h2 z_eF#TTGob}=HO`0Hbi(ZjY5Tm90eG%hj=Xn@YBrmx>J!a~8dgL_0l|WRAVpLV1eD&ZiqxReq$?mDq!UUaq99#FKx#mG zjr5)fNH38<=ny)D79c=KLXt1{dCvWucYI@HkU#mswXe0;nsctT=Qad}Ik?YxT%WAa z18sq37&b#Xjg2x;{W8NpbQ!|TUytMGEz(v{)18nV!#C{aRKPOzK_K z&uPtTfnmf-zBibe%Wu)i;>r)c$QxdLFxc{3iaC~{NCiJ9{N<71Gs!z`hmGV5>K`>H z0YVF5lYGqht2)8Gk_(H$nADV5D{9huoBMj##A6-Spuz;gC$@dDZ>ZBwjS@s#!;6gEbFXh>l`1GcE?)9Y ziNEb-iz%6kJ}K`gSdr~kahZ`uGjq&FDBQ{@@2w)TnXwwkX$^G=n$FZn@@g;Aj zT#KBPEzm*~WUxxgw@Jk}mAR1hgZ$YLVaF8vNAg>PeXl;UHmww)Z@;|YHr;U1uWA3* zeH8EuQB5ZNr+pbe`MkQ{=pgVPPe_?JAAJJOz~P44e{kpgG}LM44OhMt?o@K$xp9FS z6dKEyff0#WM%Ui}T?}|=#n1gr8Qb`x`2J-&?gqiH+P_NlVg>F`g*o977a^lw_b0W( zg&k?0lYcziLF^;IucY%AucVyl?_D`u$8U&5yJX(|F2sTz`WbS+?&FP%by~I(*ce_W z6sP7}yFbD4_2)mK^5*fg8mWPSUwnA`UQ+R^$|KNK><#2qZ`S@@q|3f1d%P>I*KW9c ze(fefA@j&5czc6S?d;$tOIZwij&srVGXlMYaMH`s@>aZ z#XGSFWs?n`CBDz0$NxPV+UxrW%Bo62PGVoq%g_k0D(k6@MF4MZ*Om^b;f(eb3fl?) zRShlmc)%O{|ZP`~ZQqg|xb$d%&Vc5%{g>7h?7m-~Ymm`kxqzu}RjGcW!2P@Uxt@z^ka+ zGWQ#4W6+s1$0Oogx+kUTpq8ivn-NL%+M!;mGUUAMg3l-DQ9k4!3oDyxaH*ldD0w1t_)nik3ft55wo{I znbS_bUuCu9RXS8iS}veDp44}bLY`vvvy-&h}xt?ni8y4Zg8mX_?R#m$Z)AxU^rK_ zCZ)g!LPdKA?N-*`k=kN`9_3|~uhk_x=H^_FG0<^&%McLn5_5$?;UZsS`{5Ji*I3%Q z-M2S?-!6X=5r1VRYxJ1=4XT0eqmdZH=eVVCvw}g*!5eCVmujqM+aG=9I6@bEeE;Q9 zCOUps^T*lnE2<119?&J&YCJa`yc-rhzZwF!eHZv8T#RzAgGZr&!BOD{8{_%z*<&e_ zy71UX3JDB0(WD52gNv%3HzsVyV*&TwuHi`$>T&eiOrIpaPWekDGUXb-A~bV#U5r*| zwvT-r_|<#xogWA{ArnN-jsIy!n8GOo>-*J5oS%?bFK{5(df($rvFwtspUt^owr`;> zocPYOO*Aw*2q$R$dJ_=Nm8&7RIcZG9h zXtsS=*;~ib#`gyc;$;*oo^DDMZzOS8R3Wq6WOvVvVZR&O(Eru`6gB+zd?-__YohRQ z+K{k*J(KYJv*j}5-iE51N^j-(%N@JZk7{W)J_?OK4g4d6CZP`U5q}|k?fh;++9k}WfPUC<$wr#!OeA+TM0cuuwA@F{B}BVCYgJ6& zBodLbcvb$gI`i<5;MEwwWt4oYcp2ryg7u6;;g7-xde7UEXM$LUPB(O?yM*IuuwBbA z>s*@O&I;$p(~F;}wO|6iN@?4OAMvq!=|Tkc>~sKv zIo)VEJ?GxkL}Lu}H)FSA+^?R%p4E?dw3Ao<>w|zNYh9GdD!Z-#-ovX7ZF$e)s)>)v z#RUh->dv1D7LR zo$0~R&IrhL_aF{!sU43O1;f$&5@Qx$UVLb!55LCohfcWTz1Ybk1u5pDb+g_xF6Nlv z1SG$Q&%*{bmCjF2;N!H+H|W00L5sWo9#21o+uY=T8RiVWq8`ogoaW+eLhpM8V%OiH zS2}Pt%H!=*wUcy`w<7Hr?%#O5_`u&!q+?j5zmnT|G(`8PW=?b<9f5EvHtMl11EsEh z+Z2?Dz4*y!!RIqpFR2_L2g<&jwA!}@zH$RH+pDL-p zW{nPTnsD9rL}iqPxG~gRwmGqrt-Fy3g9YXm1y(M;61AnupJMeV1LBI^oD@TT@j--N zF^oN-KMa)(!T#m?@;)eOStvBfZ<2O1L}sh=bcXGBliMB<%@-yF&aerx{;hw+za9}5 z_hWBOd?_O%>(Xte)4V^b&RWb&A*VIqgA|jGz4Q`E<7zq|UvhtuVA*qHw1_a<{qceh z$vTFyD2Sa$e9XWw^lCt=bFQDg<{${WVU7X`B60FYw4a2J1*yVo4BNt2n#MmU8wpS|TP(`!ddB>ZG}LCOzmtvs zl$(7jrq5;kBc#>wLyWY_ay9S-xwduR6Yy=+D>_c29bXwDuad8s6dv!eJn1%hS8%*3-&zax#nXbYP>o-qjBT&7ZH0038-4t~nkx>8CS;O=*Gi~uT-3ardjv)L9 zeGM+cms+u6_&e}^?%xaN7GHT5YYC}%Zy;$!pa*e$zU<*i=#+$GE??xG8_v%yYn>;@ z4JNJ#6w3_1d6^B%?&#Foz&5Dn!|-#%(E;Te15eOMR^{B;FMrDzh8mp5L(1ykUc77g z)e0JlJMV&k+q9TMWw%A7x6rR_W#UkAgBq}u;?@iIHqcg033dKlUwfs}#6~ke>y8UV zJvIwh+rIre!N5K_Q+>ycEDZl=mX(Jgu=*DFynC^>3p#+nl|vSN;2!f>)7+D<~p!RjFWVqVax^RY<>O5y4?I%ORx%iEiGNm>PQ###XHV#~U^PE>?Yv?Q z^khCFuEvZnIG&s)h}OOz>Uz#Oy}VkdOsp~Xl`e~&8+=l+rk(pXalJ#9>r?w_Cb@v< zq$2@vfU^>H#3_7JS)EcdI8wD&siO9RqmET;TCh7 zgYF~z?G>(T|%3m)lE;Yxv#7nf@kOQR=g0`iwpQOFHWS8j(0>1G6C7hfSqaM z+75?@5YJou3`zjCa|S@N?(*7}xB>CuPncCU^Pi-L{nC4+vexo)o;{qGgbt|+Oip}T zP&|O!^iHj`d9iI8p(jyULjqu1L|8uTdizFMb`Hh%Qc*tKR)}a>e$9 z{kgo+r;1X&;$X45THsYO78qqq5H4y*&&(h77{3-B_1|sDbFdyXoB@fkaQmtL6$TS! zKbR1b9{-@670C9_z^U@Bh}r)Y&l4duDWFz)9hV&{1|aDaqtBv%oM z!}VaY;xp^+_z8#bUUz~|D`GYItRLC=tK7u;{4xO|NPS4XptE9-OOiEN9fa-F-=`_0jWFn<8HH)HtGzFpJW+AEUNv}hP zk9$X=mTZiOk*26?gR7yeydHEs7SE@}Z}Dyc^X%ybi%^bA$7wq`=5yNCkSi!b#)es6 z&FPRiY3=T}2MrL@4q9)4eI~+R)bsaPJOl@9swAD&H#2w?wtLxQ?<{%YJ zq2c0{bp)5oYJHAcAf*3Ta1W>&W1S?OTgo~#R~CO7{g||2p6;| zc12+7uTjK%c1O)oO*~lgoj&7$Q2i?C;0Ssu;sJbP?XWA2!GRBpd?YkR`@c=J9UD(g z9)|f&M5?OnG(Pq|#B>7vx>#;PEMP?A29sMiHdSy@REmX<0!XP_gQ>-nH1(P-VBV4t zsMyzWM$BeL;#;B(%;9>(d!O?$v)UoNQ$lW)SYf}AHo-aaJb=vxiEL>s!;#wT29eN?mE%d={qF`AE7#rZ^zNhftaf>&_1t3=$VUryu%QXZda$ zHAoJgkg-GlwRyKl+!YgJO#C>u3RE>+Q4sCJ#@2P@%$K;F<$wz+H9S4?Y?!ZdzRDyj zmq&E+Yblcy+$TP(jNJUGBA-D@3c20C%y%a2vt~|8#CwNRW9r{p{>=WLXGE?G%twD< z3V&zeP=>0nDRBLLr;~@k=r`TN3o6Hvd*$?5f@v87pySdvW7*{#K37_8khGtXGMvmS zQ{UKS3$WC1?>BGVu+)^ zttc9ql|%j$!GfgmYYV(5E8EXvC16P-8LB1IeXs|kOthW&eRXNIP4-ibIx@tB=iAw| zkSgMf>=o-w=CR74F5MdSUXjseUD*Oz_*PN0akmPIY#!4k07*B+H57(?!D6l`9eD%OSdi&{5Jf!}&-$|$wmpCg8PmI+IUy4M4E>r2A} zkS`Ps2Hhen<@ZB27quAeo@1fO-xqT-O}5e#B%%A#p%S0UPX0ub(l&WJan69G`X(8$ zOW?@2dzg8^{M5@Rf5dHwfjL1BLhpfsI(#o=n}-ocrl@9n1l7~g!|^QYuWNZGDN2q` zL?Z{-b$2I)dhddych5u3jUl=o>xYyP;<&Iu_nQQ6yl9K zR)|o!9sHE?p=dl^AEDX6#?a5)19rr*w!=~O$fTt6hzoo1 zviKE|*GJW$!5IrMs(sdCC@rla!*IPCjXSO~7NOmTRl53F$y3qu-aYP9x&#Gz zaks1NnBrID^q1_SPYzJ0(h>xZM#qDG7vkl_)6WW=2+XO?hIGzn!NcTx1VXb1%x-ix z7Vn2szV0^hgwB|Fxxl!fg}kcNm7y@sby-sm!f}_L?<+E44WR*B`kb0CzQ%^OKZ}kE z-Vx1+d3#IEullWtAgNq84NEODX}ZO*sPRJqIH8hmBb1;2 zOxU}te?LH#SP%IOy|pPf9HCh^;=OT?KV_ISD1AUh+aEy4ZTKQnswY?y{0uiUIzZ{R zzzOTK6kde?4f>39CSmxh-;H+vG&*f{yqIBpGfm03Ei=er@n#fJZ)iNjW3X(=Doe%^ z2sHQWBQE*Wh^ctZpBdU0mIt~Vv)wPN_nBVlBh=Zg5@Rke3s&qM31BI&v6TguwJWpl zts$ma38Vet-V!&yV=qwsk2q}br;Y>0!{o9#8AfSr#00$1saYj#x_?eYvk?mpe#1}% zz@%Vp?56e%$?6f7S+lQr;8==Dq_BxitjMG8k1?qZnxn0E3Wzj&b$rF+GKr91Lpokw z;YGa4_>cPJw_+YUYd-jVEiBA)d?-6~DeA35vq?AYkna^)#jsMC-=^%nytUo>qu7#=pQEX@{~7Iv+x#<>VIR`X}x8t+rS zOZT_!4?gL~?w%V#EK+aEEUW6WT{7{IK7l1A69T|DzZ;xcmqo{|e+CBUkEqOIfu!hD zEk#wEf$C8GzRzdq`OchWP&-4%x^XeAc;Xk2K;h10RbFw#x;C;%PE{x2h&EFK;D92Tjity5v-qS&=du3Z_tqZd4f{c|c6xa{#TMN@_d3O(>MF5Gz~_ zt+W3XSZjWMcn1WOxpUesYi;!;qqlSCiN+Z^oZvzjhXVxlHB$PfFof*;qx-^VSc zKe$N2PqtD<%`i#ueMM~%X=lHJGVA^7%3B?Mlh1a?_8F-cS3bvYc?6AeAuG_-`dYWH z=#FAtk(NG=waHOLzQ9G6f=GA}KxT64>-+%#+^jr5xUDf8GV>U=Iot2{7Pt|1CDj#< z=jsxaSbt^131<^)zz<@4AVv@bNMY*TT|j;Jc%|5l&0W(hw+7Y$w@Lq}l-iAy*&>7d zEo)qVJ%a(avPn5Z<2`V*5#)Ki2P)#|>ETJ@rg6C4>(2llW%HAgt)G^BJx82Uoavi2 zFbOHEtc0tkH@5%$J)F|as*oWK<|VL8n@RVuu}rM7Jz9kYBUB%(xT#JR3QLyD+*dx< zbKHKX*salv)q)>C&Toyf?v^-k^=Q1M+4%W=7443@>t>)M2T7A~5w6ZlA9pX|{BD(L zKYsWCOBx8lH~g))EBD@wl{DepPR4?^g2Pt6wcg2GyX}ZL^cb!*k@STBB1qtln~t(d z2(Nk9cFch`IDdJ3MH4Co$@<~H0TF)3_IA(l&P+^I=3x=C=(*>utRp_1m_@U9lbxd$ zmPz9b^_dPWE={oxE!8XPIhW{FC{0?(fH{94a@~N62xt=~cYw*3#O_W>o4?LKiEE~w z`dH#3`)cYFfi7g-9MS$=mK>@TFdRZ$gcc%m)4@>=N5DL=?KP^*+uALB!uK;)y$9**AD#r7pOt&qR zJr}<6EOg7xnv8{DPRxS(@T~=TCYIFZnRgr=eNOtjCpB5%6w3&=SK{V6TH~eP8bIio z7~{3W13*M!!V2KdR*{Yy_{# zI}~;23kR(E9t|Lqlv~k=0)0R6GD2h9ra~&AsecppC?f`c<#XPhp0Z~Zv(*nohw*iN z0*Ik{#RFPGPQS)s)ua@+{TZ<9o+?3iL5VBZR zOPzrKz>2URW4jc*a>Q6as9_m4RF>F1zv&*R+66l^1e{L!h+}(dMhq1jFvPOaA*MAtoxi{pvw=fp9{Lir#y|e_rOaBUL+iJzFu!$Gof(g|CbJ6B@KKax_j@` z1!404#1iX%+1mUXp!+w#stfrz-3@rkzp zi*l$E8KDYSC4-LT{wak!3}z#yDKAUK+XD3!D1Y;IWZ*fi%Uao@-E!uabi~ulL*MO1 zT|{u!xdRuOZ*z52%(Ye(&m^IPPCjm$&7YJ+@;ulKK~*&5D}uhLpi|JA6o6#nnuI7-qU`%`X<@o{y{9-*kVf%$w0=_8juP zX)Re?*M_p7H9DcH9MH+asoZy4@l+3y(QpU)XI-Tr9H{3xg}cnuceZjEB4+)K*%C|n zQ-pL|N9!Y-!0iF8Vph1#)FNoehMj={;$8S7`J)7b*;2QhLV$Jw($SlJwP4g{UlVO{ zxT6Xq)2>;sm(jDRKb_@$JbfF1|LO1Wy@=SWoMD=g5u^BRtAWx#a5)^wDE%p8!0Q1? z>Ff}S94S-K4WovXG)0EM_Xa$;+JUP=oWtcXZ&w9xye#t1^>rrobk9Ahld4hQN4l&}@|;Ib^m9yh*-NqFR5TD{h`) zpfolEReR(KL329JTT_9gOE#UvIMr}n9&qnlR{B0lNA)}Gul*~5WY7z50e|71-?+0;m0)w zQ`t97xKG%3SgQKDr^}vjQ)E?{va)};kk@9j^Uly6d)TPDj{{rZNPc|p3LWbY?Hr|r zm~+qCd`&~Pm;6dn?`swb-bdzoD*X^^BKEs6`1ujXQ>j7kp8E8+LuuC)9s7(*&m8C& zHsq6VjsQm=S=eIT(?mg@jmogvSa+D$`uZqpif^lX0)9V~fEb>0E#34v60tT9G1<>n zRIzH>G(yQ_$61YqEtNnEkAo|we6 z=y6hS3XuFXy7`f4v{!n>ULc(zrj1bY|Fxq64c-wE!A-c&W!f|0_ml$~q(6>!XK|!k zlhREK5#)BNOEAmV5w{l*r8VUr*eD+_bMniGCR5m97jTB=2Gsm!h7BXFN({#=kXZ@= z6gYge{$X0p^)Fx(oZ!W_WTw~Oc?aY?WlDmd&Km4HF*(|Ca(47V+g7`MH#8yrEm=)2 zi*7x4cqE32gK0{7k%aR?Pl zj_x@^aya8KgIIRwvY=oLq6@U`lW;fm=J9aLmACW(Jb&|m$!b6qMlL8v2Q7$xhdtL)!ze z$G!vR3FUAzm2%iw5k0JE^-L7_Da-mu01c@eDtl?%6eEuQW=&dF{bt&vn5aU%2sSsi zpLa$mfr?M)mm=I#i^9%$j}hoJ)wIUyUab9UY5(mbxqZrMpLWINA{50s z6^OZKG1Vu88Nw3#q_R~>d8mbWWuJV@{JfJju1eAV&@Elmh1AshCHxTTRN~yJ^O=}Gjy}D#io$R;sTRBY zc+u2dz>Ttrxx>NV1v*V;&G-(>9CfIEwU=AztZI@d*)1h8mTB?l;$XDy zc+tN5D5+z?LXDXw*!a`mw5hK;>5L*)$1S?8m^(172dlS)cDEihYVM!ActwwZhvC~s zZ*~cdcmK^=@0Of)7!T_!mqBBYgmV zR39&Z>Zud47fh);bO&QSi?AmcUcihs<=f%p9KJx1=hVa;=I=KhLaxI^w3^TMZajbC zQ5hk+BPWM_MI&vPnVJ_1GXZdsx#YOc%bGvkGK&B=-GS|Xn9|d}J}p=ffVho?skS+g z07Wzr^F^AlH`hIIc zq(e6b2rl_HJnF%$q#64A~oyN@Ms-aI_uC(5?NVXCT@A ze0U4>4)j7QG`y)Xc(+lq?erq7<774CtcbfL&v$md$Ld-Yg zc-Po?Q`s}>B&AToehm(tt*->%JgWbl~#E)dR+#)i08g4f20e@lBaG+wEMK`gM-JvYE<|Md{CH zGvgNAW=km*u-$#l)<{dIwt^dCEpsgasYzch(#0ANx7(Iq6N^53VR^E{$6uT5?6lwI ziu}_)KQx7MqX9KV0!>Tku7KcAP5L7Jng}7#;rB7(b0Uks-KAeW*I=hNI2X^HBwgZV{ zo~Ir%#{{$es9EQ@ok!I>B{*jhESQWA9-2Bz8|GpPH3`@QN~d8c!H=**gVk zHWS&z`y$e8hRECGuAzFP>YctW$N& z&mW|l&ZSe<5LCTp>?lN3+}via_XTSskb62nuWaI<=^Pz3WL zjizF++0LuTdXO_4pe>sR&SY(AW8O~n{|i@I$!3VP@7kYDxwY|v5dcxK+J1eY2YRje z_;KQW+yGZ!9GC2{+$QZT=u4s2itQBdLGhyHCxP7&I6XtQ)7x1md`g^FJX@Q_4VVktPMngzL#72aa1SJqH6&hbdM~g#QERJ<`r$dFn*q z6Ke!DNf1zY9r*b!?UJ5tune^Jet29s@5vKDSrH-zq$P80r2n0lUy;eh+g4KMA=kY0 zW%kTM`y%q$jU{dXkD~-fM_H89<9R@Zs6u7!iG7E$Y8kFlr+fD+gpBL%yb`}s$#!Pk z2Kc&t(TJz!HnBTgQss8({?gN_zlLQxw}+oON^F!=4ER|kAxfrwWo%MQp(+o26l@^u zOQ1dW<3hg-*+TT}k&p80dymF7zurK2SPYpVDx=9e) zK^bJ9m{@TvQ#}mFOTl6m;V{KE>KqkhO(M>>DIRRbOyskWdu-CGI?_x+gF68*0jqS? z$TEs^QSiJh{3JO90<=NuxP!OYsSdk}Tccod-;S8XJ) zYcmM38ZQa~FE|FUi}aMl#?J4O1`s#99G({eeo}_v#I8dlm^kKDzr>31+_rsV8QZ!F z1r3q}S01VhBEF`!ZFC=Y2T-0M1+7-?_wXXB(lx`fZ5U>tL!&I4h){P{@mv7-^c7|p zP44ui6?!|9t1yZmR4kC(1*YyCCbNJ;o`K-kJV@(Qz9w`rHjq-*1SS6Ev(Zb2qy>4n zToH%vwV=tnOKC19r8rvCppXdL#HOP9aiPCg%ktwN2tH^FODLg~Io7RVyedHtq24El zbLi(<@RPdIxx@=+8OA>RUgCo4lvOsnxfm=oh3$sk67SubXUB48&5Dmn%?XCU4JYwJ zTU@f9^Ge~r?Glt_mQ_|s6&h0|-UYIn-L3 zrpl>;Q3+&j?v>d*N%K)%3=rz|VSXLMS=toV>Km*T&#g^84#km-b`JAc!~a)K%o(Pq z;C9&oaqfpjiilT6jzjyAeXqq`tRmN+j3=0{=blzrGz>dUFLp-89GhZHBiu7(^SszD zada4~mFTz>xplBsMsqm-2Q!5o({H*l6ovh~kPt+%sPZ@$_+Z?D2|pRBnsz^XgCh7$ z-~BF22lxa{DU*V|^CKSZQ19rku%F5?_{MyQEwGn5LM2e15>KF%cMbj)O%S$J4?S7R z!VF{Q#K}vG>taB-5zpbDnz=wYZ^ZlLy`Zl`c~gF=9%4+W!=`_lus#OQO7}mb`to`X zHltaFAKe}O^E#qX!eDeW!heKS3}o$h6mg^tIir%o?9cLUxuGwqs8!oSJ{<}X6>n4# zwNObh%?ruj>5pG_H7PhUwahkcu}IwV72^7?l5Iq7Zh7jLno9mE6OZ`^{)R2eJa<@YTb3sy~y<) z3$nL<695uHm!PTpUV{r>nu5kCWeq%|Hd_3!6;CehXWbpq;uVc&kHh+g%;l|lZyRjN zPDsQWD+qL(6-XM)38OqUC;^p9F?`E7!15tF)!&W)6UwR02Fj}0YHhyMYEFvr7(|?s{9RI>u8*VNa%T$SK4j|d<6Y!0Q63{a2 zhM?K5>zvYkl8gSrAf|Q6obsvaG$d1{iFguUIQMn&hKWUaHVICdhUJe6hg z=I_z~emMW5AWVc5Xou|;b+CRUgXnoGRZ0xtmh~;G4>F;3S?v0M)!X2Id7$8Zq&MZr zm71Bh`X+=q(Rz{4yfRr|fobC5>UivlotJk2NM1VhnTHV^#D%-Z_S4EJpa0!iv|7f& zLx=S1^+dx$Bj%;*H5`=2|D)2^NqxHRCO_c+m4>>kULX9+9zLiE(wFO{e!uote5ybX zAAMsv)%sgD7q714LCleL6BJD#_zt;?1H{Q(p8ELNeT?r?Q(l|G4U&}_eeK8b`qa5h z6#^GLNi}O`hV5EPxn<(GM~jC0t{o$TqW)*Kyh~0h9?*zk2T*0TN$VinH^}I8 zBxFP)C-G_~^CGu(D2^GER_^j6gu$+{$-7XAzFFVa9v2~%!fZswNNWdkwfFr(Ek~TZ z1i}2G@IqM4i1);zTCAo*c87P$6$DS1A*t1|;T zzwUmm&-(C#uI~rF-aj>jQv{j*(;uVJwPtm-Wo8;duh2_<7`u2d&{VZm`Md`f7$AFP z!kZUz;t5ZtjEhqS4iDf2Wz2Q>v4!YB;@L0*hK-sZP+$*B0j&opK6m8EyJMfkC|pA+ z5Z86Hdr}IcNHF<{&KEqiXSfzNA|kGDH({AwOE-IR63Aa>5{{cxgvFY&&Ei{(vgCK3 z;i2k0V1wj>NA$P!)X0y55Ra8^?m;H*rdkC973P=aTMQ*VJ@?MbekeQ&o(EydY!nJ` z-r#6N3kT1cD_1W4cLiwwqWtyZHvUZWyPA!Cr&C-aW6FE}A;T5#&izjl@gGk6H{wJ0 zEzn58FPlG4yPB=5#o=#t753vIk!g;>4KHV^IuZ5-M9;!4_zue14b|_vG_^iGmidsO zR`3@gVhcG^gp)pUh09CVd%(L+eNwG!Whz>BOCJcx9YKnX@IU6gDOzuJX)oV{{*dX2 zciKqy254D1{N=Gx%tD{8YilnR zXW1ehN1F~?{CG7pcF~PhcE<5VODOLMrJv+GE0O)RwDt#pgSM{XXOFZI;!2JUS2NeP zE+@FpeK(k;zE=p&Z@@XN?U0r6`l{x%02`3?c+Ta~_|9d%Qe_o(udfD*G3DC%cYo3} zp}@g4uNgP52HBJV^Q09+jt=Qda_(XORz?`T)ZVDBw>--6!{M!!n220v9Gq(Ki`KMu|W#|O4^=YVm?iM6YB4F;U;B`i&ax;B~S?5V= zwEpxQ-`5^ghPZ()uIN(gn(>1D_8JQ9#;|^ZEYMAAB|>|cUXhPZ2TmAE60vOakxLh^ zaQ|pFJu#y_MRp;FnCJRV;?UjSW)3IAWu(gW?PhRbr3X!M^mAT9GGhh>g63)SL1(X< z1$3gEhf;=K;rx#v2a=NxK%R8^YyVxQv4junPbo z2Hf)c@1CPYh}7Cw4P{{z8R0F0y4Pd<-cM#bP$o;+>p+90@0gV%h%UzDAz;hK3pd6n zbd*K|I^;gP;DoJ6*oah)0G(h0kN!d98tZ!-{}}Fs(3Z@##`>r?SUa(oGr`6jpZ&lu zEb-h;PG^c56V|J{$Qy;OqkThM$Uki?g*Ax7;~MAEb64mXKmVRWi6DQL)fX19S3F>v zwWp`S@D$aU(!kTZE-k5hbMK14&r`FQ7T+_bp0P__l*5Cv%j!XeTl0&+Nc&8vNb7d9 z$mo6%L?3e!wdi!W?vq-=rH58ErDn_q&i{2Itb zKNV$OR7$IxZSX`(ov;6&>CoQ+oCCS40#g4nzA$svzmpx-I%*>06^0YhY()lH3i!94 zguwJh%%<AH7g&&g|Y-=I?#T!8I3 zIvLLb=gMOfuE#Cr(?<{Y7;~!5kV90HRi^@%62mcvWR@b|*wmFot~U&Ww1wGsa6XJ4 za(1?U-1JDL@51|A*C!W-y5Gl}#<9kn%PVVQ!5|wVwAM8L42D*ESVxJ8>d%tUu!q&on>Az7!10Qww40Sad zB`Qk6PSdOg4liPpqpn8&n{q7Z%MWpkKGc@k%STaBQFm4ADLm22}abH zC3E-J5=eX3u{qAyovC4?ddT?>7dBJj&`5#&xBYvz!Z%rnhh7nRkyb+_!e&_}D)a;h zqv5(@))uknluX85Jdb5SHNKpj<&CP%kWxgmjYUdA5dVI4u3K5CpLr$fIG?67wFxYc zKJ9XCmcbG>vL!lMJ-j9KX%!+17UZfBjBW@reQ?Ya#?P0-Hfy>HY{~AF;Yl{)eF^qP z-}+c+`1HSF^UL;<5k};@NwUXt+7MK5uFwAdg$I!xtR7!K$jSVhbr=&qTmbQ$5#DC^ z2EFiD=6S&E&LEq{wq-X{zb0OhspH5yEROJEHM6Dfu55l-(X^jlV$43KdPvtF?I(gl zK~~Zg+Rbf?veq+*NkJlwL*D~RPs%+T=lBg# zs^ho(&LdcyNwnn_Y=lJDkUSfHY+3W8`-f7{E{aGRFQ8oe+t!W%p(U4aO1C;N^Ld1z zMe&*M2H8r<$Oay)=V$p_^e!5Oo-6+H5|Iw=H>0UtJC_mGi zsj}00F>R-SQP1KnILO$H7-t<8d@guDA|vRh(|^%bIR8S}&+nVJe4gu+fQW~f^<>QJ zlHHTEEm{#W(9ieXz_c6v$kVVrL!V+9q-`EN5cjIzS7eOrJ##@Y+bntYOzGf1!(?LD z_i)t%Ejxh$3b5=^7<`gLY<%F&Dh6l`dILIG>045{Zzspu3|M1dzg}i?6LB&cH125E zD5;gL>j+U!L5?gt-{pd@hx=PO8~6V-R_GE>N4o_}T{3Wymm*NYj3@+|Lr zNqxdG9y>9uOU1FQl*O*j0lNChP3*J2@UL&pkob6O9w@uJErd4RCr`K8lI?jiRT&)1 zg#Jmx2ipgZmDA}4tBxlOKK^34=bzaEDY&(J4KOE{`Q7!Zp0013y8A$mPDUp7q5m7Y z($xB`5Wh3iz;36orB(or8V+JD=z9N9a(fXYTB+?yZ!uhLRcHDCL+?fOKdS-ZPvfM^ zjZ~9NKPA#xiR1Du8#JsI?_j&#F-Bsl2Y(g~SZJ+zCeg4ig5*b6Yhp(UBAf6zpoM)_ zbH+^g%2^so`YVaFKEEcRYC3f?SfQjA88r=by7`d=fzLmzAUqcbw$4?tO70f z>&(=jAxLf<0Se&bs=%o19=f142ukNyk3oLTRG?T^x}Nh=D?}*^iIH@EQr63+vL!z@ zE{O~fdYH@G=W~ZX^TVg#=UL^bP-|+FEIus%7g77_aN-Ms(y+13>+j^H)1HLwQDm3% zU3_@$LlP}h`aUH6jhqE5$;6X;yZ2;*M0AsnINC{GR9_q8Jht7!7#b-sjd=f5RRzrZ zGBku*Z8Q~VvtR$5CKv9}FNJpCucA|ZAtShH#GX(Lf#jE3beiAI;jvegcYO|@bG|l^R$cDcKgjUk zos}>6@iN=M!036`!ThAnniPjx0Ww%Q0PDuc~D%L7!CdCSxRRK_?kBu(Sn#q!3r9hx@dcd}${rBOm zlriOJBz)U5gaQ|Mt=PV%Ns!=1Tkzk)u%g9&JxQr5S(buDeWs$gl zhMH)-;!DLgn*@x?4k>0=KFFjYqo!=lvB6zCN%tU=+}`t}hUM7E`;do~qYp93Mo4ho z@@Q=SQR7;uP5)r`JG$kZ<>-PgUO}POlrlQbbrkwYOE|3Iw&Kb+(o48Aw3mTUi zdH;~*M0N0tx<_1}$qy6APv79VjrId$(7Ua)Eh!W%@Pg;ukNc*g0D=FHy}yo%y8XgOVL?S-h zlnz0pV+>kAx(5)El4j`qBA`g9q_lK*x1x-Kbc}Qf0}LS`AbsvZKp)|^*88sW-#O>` z<5{}=)V=Gz_OuE|wT;t-B>%fFCdS#6_c2+9h;INMM&;^s4 zFEf$)rYWt-Cuikk7FNr&!g|~(kWdBwlJ6X+U(0DkfyuKyPx^C{hH1kM# zewyY1X7|y0uSavayOYlIU@5ci?+Pd9tA&B#q|;!ms|{J&jVO%t3QM(_idKb98D(zO zG{rYf%GWw-2)OLgnfxTOUE7S+G36$~lwltT?HzQzN3L7&sOeNLD6+Jfu41hFRZ#jB z9vT@y0jsnRshg!n6hJc>i(uQkrWx7ih+(ktv&B8jET)ga>pyIlfC%G+!mlb`lzwM% z##uSF>Wp>uqm=Osirfbw^1>nF)Q;SNl!9Z4lGxqx_5Mr6-z!-<3-L)VpS4m=lo1De zIoxFO%toQ&P+-8$7ZY?$=ferzDw=RVo2fF%4L5-1Y3Yij#tle!t!U`i&?1DJIlfHD z*rrJ}=HriEuOSRR*Q7Xa8`Yp*@&ifXaN<`%NkG!P@8arC^|E%DNB zLV?u63*(a5cxSviZnJbb?oRYC%k+|*wc729Le4?)<>JM99Mx*KvsLd6@%koqDF5Zk zdQrm{D3RFRpfGycyxDDQO;*rJdZffmtphWn;QL3A0Q{D>7xY5AjSj}|Eij0*{ zj$W|g#LM?DWUizsnW?4R3Ko7VPAw2AE+=bzixO*AO0Tc8c)CfZt8=@8mZ>>~FCy62 z3Rmmha1(ax&bzq47!8&l!~vGf(8FtmzU6w!l?I2rzeOM{Cm!_$dwfv&*ZuBtmh^mS=f~*)1j}8Yg}x4ao}o z@<*8|4MMY_kTnX-C+Swe`uz3WU)YTDO0UQknVr zKCN^5o?qu@DUk?)^pz%SLAskFj&ZgAr^+>RpNbD$yRTOw?|0&gMHGcT(!qtlc&g4_ zu#{*g;K2;LPVp&F#3lRNIZ>kYGhW;B%dgoYl2ZV&5YDQ@)dDCGD}^RWIjGy!-6Czb z_t1G8nhY_D3@j|)XP#T_H&)KG!!fU7tKVg{)|BzmqE0?rNeEbH+Wkv8qb`@FM{1?Qa4*X zNZVh}dG#SL=Ij7$dL+|(LCGe{MFP25k;}{gxcC;s)Ty~>-sBgnW?g-0!Qc6}luSBa zCt0gKyLwX(v!X6XE9{DHEq|c7rs!>>_4wX#R~`M0)NO0?`cZzN!;KcbT4pz&&dg4o zF`KyYIJ$}lO8cbL8J>AGeTQ~py>gt;bI(+Bt5jMeSXsJL)Yt1Qavn#-e8p}4lC3Qo zD_UiZ9Ev5>oWW+ATS>P-&JNmQG4v(tR>ISQ4Yv{^!P z6<;frfwctxF8djS$~KnV{OSdL0u*#AKN)}gQB;Ef$op4xE`*s+_D`1d``TgO$Es2_vc5lnj992O%AM3SxUL!IV!=fl+f_f2yv@c*dqw)7!j>oy>D^FUa-w z1%bKs5)F~K1qB<)OsNQ6;h-{f=)jZ~@`KVy{hI35Oz^PVSdtKzh=>=lbJ98{k#wN&AUAgDWvu^LFSRo?q_xE)ltI67L;`^SedzZMhGh%LMs-( zz+QE)XsyIdYg@MIjJt~4zC+i;0X6Xm#@Et!StJ%IoYvOX$3VZly;_q*(`+MJR=h^0n+n3?u(%ay{bh8*+IQ$rKE8&SGZw)|AU+78o{;*x!3ZTiH&% z$%+XZ$2FRCe9e>T2wkFW&hC*jA~Ae>dC-W&sO~!9#$*J$9NmNg6Ps3)IEm~Y)+_u` z*Bo&=UY2$?*pPs(zPW)!R$v#3UPpf2uq?%5HCY4=F~myvpz$!e1oZp> z4|;x}(%joLBA5nsvFlOvqk+s1Dkj!0Wt`!*An=0dZ#Dq;U&^#ni7JITYdF^xJa|B% ztnQXOxcC?w8Ajbh5NM#?sJN=~ZJttj$4wh?uM;}KP6@hw>nGfGgS|5)gmSlDbSjIk z8zB@-*5crf)ZaHMlXuJMP41O{AYIs|L9~8%YM&9x6DYEPS<~?6@VnHiC5NObcE;#< zJZ`pKdsNH*cBRW?YHmsBHm|FDQ100&7udTOUkZgRMYCKS;v(W(Y9sUHTLvP&J8cz) zHipMV8zF6KL5(9iUXni)sb+D2MnXCfojbTnk(_FtznJ|_zrTL|5N%Qbo z#-B=uX8~}=z<1*EWK45K3~J-xXN{KC7v^SXCa9WUEHCXYh)kh6ZLQln*oGw7bmTg>ihf!v^CE8ahJdW#5L=$Y@{NVet4wDM1yh_^CMz2uhIte40tLK? zl}m7Z4ll=+jLV$4`4a?Nn#G+1iiqTzTqzf(&H<;0mD1t(pfs!O5R~F|f-mylr+6Ag zP$W>(tYyw;6mN*NicBl(ehDm}XOUUGqvKF}R>dN6GbHW~m=0~P((Re!F3y&_Y?kuL z$V}yJB#px`vvBxZw!uKRul9J$ej$*a5=K^KNaO`JAYt0a7_zj5fmUwA(UN15kKi+cK$rY-VSSA0;(r?Qqj=d*@Kx0Tj7% zxvROe$ms6WF2l^OaR#@GD8=~g1p}!jjc}ASdsLvyF1j03zMO0gR+&4 z4|1i7adC>K66ex*IR=KAA%$cn;bt7ZZd96^&c#1vXqwZt)uJX;Q)QfW-z=%;8f8ax z&9ds~N|m*^cDvVTTj?qb4hHwo3^AYvMP^lLFl&3qVN)ckP_kAxImFv$ld5S{S0d8v zVmt@PUu}Eh_nXMoliPH%c=+lDsZ+}OQ?*M~swuXNODsG6A|P327VKV?ik>CTPR zd6?Et6pVs=&nQ4)qEz<00XCxembA;Ee~^-5un^}M|J3U~Ez5E(r9E_68&|pp^6(oJ z_h(_*yFf#Yx6~7+uFA>q{P)T!{Dc}Dn6;@*CH^x6GT{xiSJ-kM1S1}8_ymuu#%Was zq?E3UxD7ha*|_;JEv!YphBBvnG(n`?;4`yn(!m^+z8SIIFe|J_x=X9cwW(&ZZO;lh zV>Wf>EWNY%C3rC6@4*FMuk@vc>?i_WYdQc@LAal^GSOZBGznTigm1@n#x)PX?2CuP zZFF|rmH6lErJY-o3fy}@#E2_0 zV^7FO&RSa#HN<&Gr2OJzE6fBFB+pP{v{3n6jR&@T(mwM;4&yM=JTcvnH*ra7U)0$b zvNGl5?j0psAm0d zR7Iq5a`Tffg{#I4MAA1Js82RS;R;cYe`D2SciR zFRi^~t$Dys@qwugk(}Iw_!Nd3FMo`eRV!y(*)`jFWflVin^g$&cLJN++PbbNN+fxzBg50fYRYJoN0gaZN zI%CVOHKw^x@RLjyBn{Fma2)~-OUxy5TiMtvhWwOy_a>PZ%sM)4+ZkbjjpYr)&@F!` zY`H*36wHnvhG)nvY{%M;fL^<_%b@*a#dFXGw55E)Y7c>=EcTaV(T;M3554~YJ-WVr z5XV?3aY@=q`*LnFZI*#LzH)Vc&|@>y5lChqr|cK{i|f7 zG-y@|cE5pJE{F3=py=mIRw*6b<;sPa1^1cdH!xVPRz)u7f|bqyqz3(I-LE|tV!@z@ z21|3VAxYNe0iPkUR%x|o-$8FpjUA8JaUhGK1UM{IS1aApXsku;v+o`YkO!r7= zwIITf{N5?EL=7s|DPyzp3A0fSnxT_cbAkji{Vvo*hAQ7COFR}Oy2qDhgk zK`c`fY&8qb9#L*{?6gAauMuTOi7kk+vS4RpD!Lr*@U0V9n(1>&y>jITL&M6h9LX|e z=P)&`*adqQsJ)8GB-cmOy?TUlw!#BjbsHW_pYpu-eaUM`^QJ9(x6olMqD}v@TggrBc@J>=aJ(FAn6k~9hdJJ|g^6g1&V7&EVNK%MAT$@r?aw!Aqn3D$ zrYFuyCv+k0(OD8Js@W)h&XY0VSm5#U(kls#_t)!>qpjwN*iqi*d&t2qlo z38og8ycyoOX&U|g>G0%@d11AO+O0Dn5zdco77U^!z*IqmbtSU;U5;2^MdnYuiFI6L zkPcBI2cuPoDQSWRR^}AGb*n;8|1yt1FD#qy5=agiUT`19$%jUm)IyD3$(P?qhg?(Q zVun*$+)$|vBRM~*^5xnRpu<0Me^{j-HOtVJNmG;3HOqOdoSF52pStT(_)4udVVdAD z)(nrd{|l(=mrvzto)2{ub;FW$FO&XyONXIr+5Z(0oubRA#jFDz=^%_A2L z!8WGND3GRnD9|$VW?Auxz~GBZ3=y_`O*ZOF)5UDL!&u`mVlz!S2kk=2T>q*VL*-;a zHj6Zah=~FbS=_AHaeWe}X|Z^y>&B#-%HE2-BzEz&(b{BJzoBzC=64eNmK@ni``2l^ zbn5Q(dhL^{)1jVmV~TiN8X^zYZ}zCPofSmryeaU{pyhbxnR`Rf?}jja!PDESOQj9h zdU%G;52_-xtdUH*^J~IMLNr#DrLb>Ysr;-aX*N09Rn@8kuZBf2C(Y=oD`Jr4j{yaM zWQILmETarsz4oV9i?&@GGtPTIt)nm{NOFqa{dg(1$!U(Xq2O!2Us_o?ea;eA+wt;R zJuS8)ge*9RJ6Jcd`jypS-TFi^8o`gzwa+>$%EXWu;#EBW2``m{hEzqQJA2C8I*T;= z7dHOQYBj$UMciaAS*_d{MYSN_=9Mtd6s`!Xa+E2F<|C}9Iysa}Tg_27c-QbTuz!Nk zF0ql$^{j~V<-$Ehf~{S{j6ztI{6^dt^-o3@`(yxAyPkwtWmx3)Qz5bJYIcUXj7$m$ zF1XwY#f_NAl;^KeiR!wMv?5|aJ~l=-YR1qjl*+Gt!$6ZkpQ>TfwHkagU`~(t#3|x- z_58W!9D8^E8j~eW@(*I4qfRXhR@h2&rU=DS()+%?sDF65ua9RVrww^C-&`e}GYBpa zKAajG;53|OI2hdZszD}Uw%^(;#wf$iui2)wIx^2HB)0EkZ3c;R5X;DpB$sdWSD(_= zaL+tJDzP#9VZ%ga$5*X8w7u_`TQ(L16$A*;-DC+1Says4>+|ji1UzU}FS~QGDE~(g z5+%oG$t!1FQAjEN$l~6dnT6kSC_8WTQ?=A@cV^&QEH{X$xG-zon|gv~0L`Fb>f+bT zHMPOVKEd}Ne(?NTbcSGO^B9|#pP&DB#m|JeFJpIW?MwuJZ&ZNZ`nVL(VEXz4`NYR! zzNr`bVZlqJs!&1Rh{E}`d(cIkk7nt) z^O@O2tA5NQD0vNokSFQQfC)RvL_y4opscOa<6GDtQ6JbcrBT=A4g1YeZmd`)1hZ-c z(S&a1SG6&`O$;_PZP^}G=G{Z~C^U+U%M(<_?S9u|oe)CDA1`;JcHy33_{;UagCWb* zczuLlfwX9bEvv4>wGL+ORx{k&WxPT9F{(XN>aBPJ=y%#;e>D4)Gt1pFnUvknGe!I- zza}yk!3f03YV?ur8Z_A3-BH>kOfk8=u|H_prK|}$=T^UVvLD&0Kcpw&Hc!3(N~X;u zcNkmRC$|e01YR3)$PEhwrA<-U{eUJnCL1#ZgVBiK4ceO_km}k;7GMYb+vbI_&`>HK)`W&fQVijLxd8SP-$v<}kRdbjSWBxN}@YD+SIai`~}SYVXEw zF_5cG%-7-j7HfPX{;i;}A-iFkr4-&Dh3LJz*iOn7M3=J22+mjt(-};S;hp<~D|zM^ z{! z)WLsV@%wW1&-*Aw8^dgD}{PIhw{hIhbS7YSy{^S0?Z}W1#kggc1yz?%ni73}}z_}!-AFNCE zTKfyd@@!HI#VwPgF|@zl(;!Pb%a)CNZX#$u$4JgtlU2Q&Ft^PZogG1?364pkjeSo_ zy&x0bf26u25%~stUS?@fvo!^K5bJ%+&KuI;M3y$;r&pn8ipl=i#lceADSwlWZcV2w zIugZ9md0nE==XZ3PjU`YUSyKBw3gMR|7H_DpE=1DKHv1_uXONe8+X`mvKDSbH(AT> zuIoEU74ZVMY=sj7&{$D=9rKW~|)^5T<6C{V7))G)UgK8pLWuazD8 zgoEzOV?qb!pr?*)e3`HI1Lw}u9#Ee2x85&L?%Y%AQQOSbsqzmm519Npb>Re8232k$ z-iTsE0aZ|;E^M6dq^BPUFaIXG_L&<{J4+J<4hzv>>a;%LYP>klscAr^ncWf)h*|^n zHAb{@>LECGoANVq&G^Nflz$OahkEfkBbFeo`>r_C&YKCzG_0(Z1vbEy7kB>7unw+$ z$bqSX8u#v>cw@4cr+`cIO)tq|ZW%WNUG6ed}3$VU;1aq zXo1g{AS=GMsg!=%6PaT-Sp&0VUn2nMbfV#UCTKhLHMCQ$Nq?k{RV92Y^abd%JNVW= z4@qai*!#lKWTO+SCTFQx4bCyVP5ZdT=Sg^if$`gyyD`cQ?}XZQB^xydf*t zziJ;-C238Ur*z%O>U<=kf07Ti%VTz`d_$EJX!$7wRatP3n8?1l2T088qs3>A2j}~k zOKqlrK^&NoCurnq-KUGd`Do0Od6(-1-0|R>#nQos*vB=u4~g>KlU!L-WY#M|XS>N+ z>!hS4lf~g0wpHrM9qy|^SG9>-uYun|`ac8*W}MK#zDuH3qxId$sGR$N=UeCgWaU)V z6dQtlOhe!)XYbbw;L|`ig9<~gYWLmNKq|O^ZK~MuVrFL(Lm=M?Z>gapLe2>IPsA0e zrBpolszi$3Tfm&^Pr@1S43LYTE zWQZ-cI=le%jWC@q7khan<Z}X*jZ4*o{%q z4Ka<}tUqP5@IsTLve|tfWmfbE&A(>uHB6iy6#?vyzKO*JxgT`8V?7siJJG{W$3z3} zo|Qp24c-MX_sf?rOcT5;vHeWnP%mSm{+{9f9UP)$Ahxi*cd|L!jCVjSgFi+| z((Y=s#8cV{?tFQ#-uN5)?9e_;*)ADZg9neP$E(g1;OQUJ91vYQA!e^-XmE<%40L^Q zM6`w0!p@F+eyFM}WjLuip8g}}GqVpG$@s^lb|4tY4X;AZ=>0j9P3@wv&xeC1Y8AE@ zPYBFj6^cODtXOW7`JwBF3w)Ob|-c>?b72TOC z`*~)~ajx*LXo=&o9Au9dehg}NLgDs&P3}D}CXUPcNJsS_X!pk%HV?)bQY7KW4S@Eh zBW6?**d20Prl*bj(bEb0{(bsJ`;2IcARBLcqm|VOdbx7xpdSW5H73nb$vnsR188bH zdlFi%0r2oa=0P97d5xxoIq)3%3)AkcOTbJYJ<;lwUfYkwRD$-G@I!}H zpdJtH-9u%2n+bA2?((Wt507yDhRpnN9X3eR`-hEX@!tj+@|9~CGZ#}x!$XnOr9^p{ z{eLlC2cBb0fPvyGwHy&KJXL1gkyz}wWLI<(b*Foo)PmqeXewa5*!IUkdu+&>?G3-2 z1mvo)xM|7|aY%GmIQ`yMepPZG1s3g1UCbrwNw?2L3t!*fQj*qX@^b?X*BT2-^nVTM z9$9TdF4i_f9b+>L20fyh6nW+ksiv6pSN@YYCxqyB7fh9v~bkhtAb6pM7J z0cW^**WU#rC5juv-^&fZEB^nRT2x}Ji@kIHWHmG^<#u4LF#1uW^klbKl+4hf{Tj>v zju}6%>~km8KD2~1A~DpCqh5B+Y-Oy^raHy3yWe;sDdYUo-{gEKzyJ*v|A$Z|TfZ5& zY#qivgxcNNN*k_XHvb(%9HI!4tIfN{Nk8b+lbOT3bn4mr4yNt$^{{{OGr#zwZ`td# zr_0gD82NzOjG(WTtk9QY6GrS%B&9zMpOxOMZA)DA96%mXkIJiu9&(3EpMapjLqTvk z`+o>7Fu`1dCg)Cgcu#V}kjRy-gLkuHVLFF5BAMEHe5`s+==Rmh{lYVDsDqz6eg?F5 zmgwNY0Z5|6AB}UGdP~p!f(Mdd{Vy`{n!51ZHki}`Dr0it&@x`v-*sGQ4l;S??n4)c zBFzOq6u=>Vn81YnPGIcI0}P*Pmo*6Z2GeCktZ!DIKg1Va6~yhgxXBwn3IB4U=sLo6 z4?Qs5eP#NydI=;n_Ikh8_>$JQ#FG7eb`vCl1}jR0WaiwxAW(%v2QX4`O!CvCSFY?s z8TmU0g`AyQtDVkaUn|i)gNWoLiQrTNcu>j&Jeb7Y2Fx!#c#zzcCNF<$oTcm#u_e5~ z%2w|zvRNAcWb)bFG-v+P0m&HT<>ImyPTKLT}Yel-n$m_UR(FJ zIN=~3xkslEz$S;>GME)kD*ti8q#6I`59}QYL{n>I@GT zzL!9Pl^k!DmK4oaM*@2UMsj{blb_+9ups9=21}ikpKp3KoLxPyf|jx~E(fD;pleGQ zk(3j3W&Fo2oi^~pyFYC`zQKZ3s)Z~R;#NubGrLbutnt1B#^-Zm^?p0vX9fiRY}ijR zB91GB;XM^UAC15i(>nDu8m&k_tj-4H>+Y{7{T7BO$BmupZisT53|YODvlaQdRO>2% zvf#?Yo$6++XZ%=~QZz-wsoV-=csLs#X6G3C*xtJK1^x3AtXXqlRcD>$= zY`z9>^$F$CJQCd>9tmn3Cn!~|*In>*Zptp@3sLJHrNYprLfv_Dnt_9mTq#!H_CQLQ zM)*|Ng_yVyP@qtVSymPw9)M+0gTcT9n;Rzn5rbHPHp>NN7dr0}zHB&Uq279F^;x|g zX07}uWwH+%X=z)pE=|^YXk>2Z52Zb#I1Kq$n7#Pm55FxgCi{h2C<;h(Jh>`PevVPz z;B+uyC^a0*e;;$~yAmaaaM%3K9DALuvUc0g3;APo8Kb{m zi6L#oTb@SA+mLF2ilw)~gj{Fa{HlkH;FkL;pn^J*$6fwrGCK#2$f_i18 zNtlL`@rRYgO?U!qD>eHp+;0h8N@w~Vm=egaws#*Yw!xf45vxzvF)5{OMHZ=|trw8} z{(!^DxWo0V>s0q?Ih}7dK_suK_kKmbnPr{jTlyuv{?hGiv#NVLGQl-r9WA)i9B3Nlg`q7gkJt0R`ZE`Q zxMjFn+6;10r!uqsq1zKgu(k)oa}|8e6&OtD_t^ldiPh1c^tFXZh>x8-aDg~0YgSeS4=*4GMXdRtg z9gi@a*@gW&oN=vlG2 z2_7$qj-6hm#0GS7D-;$`tIIU9y1IRTong-ezRo@r@0w@&fj{v8UVEhyGX|gDu3hTR zP?FmH{w2gmS>1`6#ZfSrFsk*%+MgGXT-}UKoSH8sdsE=jr$v)t6E~360_(hIZ$lu& zv!pJjC_oUXpN)E`KC|f5=8{Ub`=SSIo#%(LVKlwgkwy$K(p0W{1=qA=JsVr!IrHb9 z7bgjGQ%>GU%vKUiKVYB}BCy6!b$T<3-eSA`+5dDK-}J2E&^O-0&5g)d?9}OU)yI;4 z^;V$LOI&h)|0KekwZ!smz#X2S=?yQl6*#28y*9zTze*15za?=#!a}Vr6Vi$tjxUmWYVg#k-x%aucohk*;Nv$0iq+sK{q%x4jW=0 zwP@=7!Z98mb8yC$Aq<(O-{@1?Qfwg3AT?OC8`Ih+e|bD-YRwd{#qh6oUOOh zmpnh5;|ZaS(bGYnXU}EFY^u-u>5&{Lqw&IzqCQ3ZfU!)+3EFnrgH87|wj=f2tS^Jb8JRUOH>@ z-oShBb4H|*A3dJ*TC=vxdY8xV^u^1HuG@;LMJP!M)3!TesuIXFfnNRfEbt2q5;Shb z!a)Tadnc;0YqKea@dc`y(En<9z^&HSlJSxcHdU) z)5K=PtFk8=t_h121l{A><_OT$xUN4Jyc0OB(mFIVs?I_1WXIBeCf7mF!UfIr3ERW z!`wH8=}VU_W`&=6KIi8?_^K;dKLgf_pqH0#jVxYnF1!+!dhxeiU|`$bhqSFuZ^t-P zrZj!D8cdba4>bFp0#|l1JcShf^~pXn!0F@u2r?k!aKI7&f}hz9`f^#F4(~tQ762Zx zi}0M9SnFTWolv!iCqn4N&EaG2&=V~xh?L@uRbLA@YH(<r0X6^Q)}YNVO$gxTe|s$m zECM$k0vh%9eQ@khYR=_Z>U4o&69cA`ig1=V#<>gf1e=nY{&i9W-sSYMvi*gC#w#Lf zAt&xTnvs^(^SraqBdarFH8ts#4ET@O@NvB`d?cX%+tL5?D%y6-ec~zWfOuL(il)pE zHi3dwZ0czy%YkA(kOK-P75_JQq2udAVob$aRxG-Uc;luv?-lT|i)kO$5;CC&4>R)Q zjc=u(2M_y&v#NDo4uzb&%)5}v^C*t%2W9ZsGNv@%tI#8kI?9U6_;{TRl%hU5RnAgQ z#FbUC1w}OT)iGW4E>De->MtNVD0}l&Io8?ycPi}Ath!%7wlO8}5E(%`xiVk}$Tltn zWo}&oQ1jsCK~qxW><0WfL>Eqw)TTJZc7;zAuy`*3i}&@WUl!iDZ-sC-73TRsNY|pm z`FYn)=&}1CAvk)ccz5Q49@847G2qkNgJGQU`ZvoVAt65Tk&%)VycRJE8GbbGd~DEa zJ~oZQ-QWKPVb|Go%)$LA!7gM-73@)q}JF>rgHLfHy}XIX~%8Q}tfSdRy=X+2M2 z{{6p)Ri_Y3C0Yu^7+A9$3AV4G7Qh#fk{Y0C!N-u!+6a>~p3{Li01p9SM}Y)GE| zNKX0WUul6wXevMqC_2-;sT&Vfgb#+U9Phl#NJP#7yTxr@`Q5vBD6wH6W z3H&vcKA`}2kBMUUn@^x29sz-`V8MoB#`oRLygg@AL5qSCTMBHWpk97!s_6&~H^t)? z73b-Zvw)07Tw4nOUlDM*y~4!U*!b&c!CBv}%}s1i3Ykxo$Hd320hu6mKc%f{%RPJ{ zmX#=%(VzrvSSiG&8N~CCr;bTa&lIx*W!<9nb~0qD#7K*$L^YoWJoP5OSGm{N@bGZd zxp0OuwcZnypUR$4&nL>qF0i=xepX|a!wl}qetPU_z4mC6nO>$gyPAN4A$ers9oss0 zLHmpFXa8sc0zEU=uRULcvK5tOX+v>#umdl$^h(6rE_L9rvHMpGw6Ct5Qd5rAKKnsT zuqjR-r;0 z8^iCPOHFKkdxG2GUe_t&wa1@GH;Mm!8#Zk_Gv+Sg7VBb~JtZ?sXDAB7 z2YYt5!^PQ|`Lq(V62pa43^?@vnt2r6D?6Py)m+2fEPghlynj}3_*aMvcJi6Z6gIQq zq&yM-!E+xnzWfdgSali_H}G@SXy|VoUV9{lc1esq@*!&e^qm><;oJ#|3Xjr2@Q=wj zzmQi2ImDVxbwqQ(!5YV0*DL$Xb^!s!V!pEZ(uzhI8)~QIKCN~yBU;J-TuslR=U`vP zHvQV$o`H{rP7D}W;l=#-(3EgQ?M`(IJj}31Zq57Xi;iTRjB_8(ql}420qn%oGD_`TD4+&pju4q>YmV9|f)2 zIi@_X44Vo{aXw8AOUuPbFPO*8*dVl+{v$}Qr{Hxz`m@6NN-9MyH=b(3q5t{!zc2T{ z_Np1eC;CW%ij$8|y@v+(*$Tro3OD@afA!A|t;ZbN7S4EpSlWd-0||pD;C>r@8Ketq zdqqi;&NL^Y6#uy8gV=r{-O%+etaCPnEn0eDx!eLB25?pWe+~m-n#186CWAI%pU&)T zqFx{KXACTIHn9IlWvq=14N>tl#5KL6VI(nca-)rb=@lC&#}%_`MmYUfMnDGXb*B)M ztGtFUfvb^X?75~?pY;u!H3TuhrPSF3c0vTe=2nDE5br)-kzSphoyCRoUpj^8=ok|a z6g*F&6$Ts>b+e8*X+v}NK0=@RZz=DKf0jw`#{d~BqONlH}@vXp%Q+!f4|BW;4lwQfGm z_ZMP%?em>^dBhKUs*%q-Mdm=Jw6gW0gndp-nyRQxlhu=i_Lyxn81~K4FU9m_d|Rct z#$w(L%&|goeUE=ljP|AzMpaRj`JG_OV!`(sWN0+=D$Emqjk%KH_J@3ytI{cNC`d^q2ObZwHKUCnXvEsu&>V4#lIXZYqkXko2V(HD zp`jt{ln#a2912BI#Ni=i^A+>S2}%jT;ud*FL#8#m*h^FO5IRBC@d8qwE=i2sA&@Z@ zXM?@zO`$xddU^(;8tO8q6nCgr85c`g;g|WhCE(d!8Rw@-Iy;!iu}O4VkL|l)@eCMy zOq5Nx_#>JHKlGid5Ri1je*i4z=7)|ZXBQVZUiOyvj2-K-MLnh?s_{iYbH3*G>^LTFnR3LyO&G9%1?x6v9eDibc0V2RJ$<-MVF*> z$sQU8kgX{b>_94vl@?BqWuH!>N?J}f?5O;DEGk2G&Xlv~)iG(^KLvpFFC@$4?VH)k z92Ast14TVDSq)sr4K3j{CVBi1hG?}+HSix_>$_9sK|utFzCMleZ<+f5U?Y~a1)<1L zNw9Lvx*yVDP(1GF-F9^=ZB<2UzY&{}C>H=b%rS1hum9pXAeLf(&%Fkb=B*4Wzb1d~ zNdY1`s&{vO#>K@o)rU59OJUVZ{SW6KX?sm!U)PC93p0DWXDZj+$8yXxervs*8q>tf z!lb!>Vmd4M+PasOX(8sAxVSj;d&^!0DQ{GdpA^oqTe%hM>%_|>2uwXHeale4#24bt z(K0o`+;#fgD$`M@iIC5NpCB|^GYpUHhDJeF6|HU8Uh`&W54H=~5w~%-?i~v;U(SDv z9Wp=f{5@d^r?p8Eoi=4-J8}ja*!aHoSrff+?qK~qKQny^|Jh4+qvQJp(dQ7)y-Ng>Z)2K4n*7vLn<}~bY--b_ z4e6M%VNFeq!P#E22gtfx|0=5Q{QbPK9!!=ZGnmJ4o6(5o+Vg*W?C7uUxtJAr&sONJ zoDl`P|70FWIj zhFfGzo+nQ^599(?G50X6sHmuNi;9Y@3RFOXSVXWQ$QhNFB4D*w344uB zm^5&{>E$Uln~k^+Pfauxnlfx1gDB{4NHn0xL49jqS!4-}r3lnaU+?39 zO`QLmIN(-ftB29QiYg>|4sFOfqxu9fyIURKR$DT602jJi#fC~ITGWUZL)yXn@BF*gkE| z?b|!W<^e9zK&{-u@&sKE;bRF3h^I+so<5*s>e;QTs%m)hO^N^K=}ExTfeer!z&@ZU zBwP%|^>1VYr{0l_R#xw(qA5Rey3zQ&P(*#cV$D-4KJzwJjvRuMGFow5W7iMyPoWu5 z9UYx9K0nM+0RaJRBO{}+M_D#h*hW-S4v)BXWn!lVPCy-QSZE?(Wo5NbKnrcb(<1W%5Yoh-Up~NnxvNYe8h{MmJ;kTK^5Vk2ydNpmsicKL-$vcQfmw``5<~Z-G?d ze&-@;4OYLjJvyovR)=N+KZ~Et1VVT{<}hs!k2>8zG#+o~#@O2q?R~C^ zN-_67A@tWPW0{i0Ka4GQHfc`nEEUR)ZibYp}-B3>`53kVkd6z9HCtNyqgs3z4(Y)0Uv_FvCL`>GXd zDl02LSQDJ7huPVcx3;!^_@oLjdaJ);7(W#<2W6pR#H)6T-`C78^ft{pU~Rv#H9da@S7D zU3_q;#=}jNTY`3`QYc5ed0Wj^vlV)55Bj}>d94vip0|_H>ZO*@b-M(Dq*BObY+f!d zMI85{AZc>#Jdp>|$Ivp!e|B$I3fnx~>bhO61Lw8bdrAR9za;UGwtMza|L~qlcTM4w zgr;%+mjM;euzp7WII_q>t9Q!`WX;(M-)N56h1N zvxg!aCF}r>Veb6sRM+q(NEfLVqFT}g>F zV_I!H{^Kd5CnOGQJI#u*?YlPnBDT@#@3XWZNmXHwXuy_WLCw!o-O6v(6WELWSI3{B zw9fc>SJdC?WNodui){54N*rItfgRXi{%lAaLsP)`3lIRz9%nvm5WfzrJ$oz?k#p#I zS?tCsr=lG91Zn`V+TC@pBS&AB08+pWrko2Uy)px5Puedtu)DcL-U*njc81HQm^*3n zMtE5f`!Fl|$#(m0{%gLE*@)IZ-vJEK!WlF$q}Ma>lV-DQ-sZNbXd3^Y`_Ag;W0^ca z&{y&~1Cy1v78e!>qV?q`+X+Ko@=S^VZ@k&h$t#_V4Y}QO5`|~JtN^yq4U_KL+xSpu#X{*@SSf7_UXj~499C^{< z$_7hB-8=zlT*$w3#k{2rVT5{m291~kJTb>WK6isi&b#558v{I(h5bu(uBbY`-#R^8 zQYjap^9$tn7iVTN@E&A5h`oO*=6dA6E@~VE>4Z6HR)lZlO%=z~pn>zh0!CZ={MA=i zro&6Kg@bB08G(PK(X$X)Jbs*far+5X7n&~mV9b68Y<0RM_dH4Jt<%Gm`z4j zdk*ytl_p3K^v8~72cXNmpQY>1x`b&$x7Jp8Xw<@01p5e&ujmy$5!Jv$9S>FmV`Ijc zGUpVxRg;rm7aUo0;#EJcwKU>^@0`(-Tlgo00FV`I{uxq-LWR#yZ2B1EbA zpJ3cNE;|Tl0FQ4E4q#h#Kn3eC<}C$HgK~y)@{1LBzZ{Ab_M@+hgUU_pX5-se6A|hb>xogT8?4x@nsx*;XLyJ{r|(;+goM# z|EcVMnZioxUUK)ES+jW@Fe+1$ALpXkEHg?UImwufERRL4?LLq;cPSm5lDYs%u*cZj zF>#V9x!kO!xfP!A;y_d_{}+329uH;vzK=&lBuY_PMyV8`MRrE3r-Vw@vGqto_GRo7 zDn+P-$}&pGHnNUwP#zT7cQa<}W1AW4jM;zpXnCIJ{rP-f-|t_)zutda=AQeyuJb(3 z<2cUq5*s5;-KA`y>u(9S;$^HRt{m8BmY0mU)LbK798^w>5Bm9*yEM6Jse`Xxjl3B0 zPLaE`C47XJQIGunao*&!1ncLotYYq0wI>{Uphw_lRW+<6xhNzd%gBnzu=d%irkTX~ z{{H^Gv}0QknVF4#{{CjHW@lz*5rKcRyh!ptR^E370xM~|Umr$$LkYc8lH#BPNSO~C z=wSM{)(7R-7*S@%Dz1J6H4_LjelKgm8-ASs+Ipz=Bb!qBpXaCViXKd#4ue4Ij8dF9 zJ6-Pr&mMkrrDTOkfxrC;;S<}3)??r+I_H*IAkV+r_uk7QZD;sA>Qm{|$gE<+hJu%Q ztmaa?XR$Xz9ya}9fi-qxo3+fKb=rY&xU@dr{Y$U-rh7*PzJ7;p=AtZ=dg|Zg9L`kV_>mgD52|n?n3zcj-E^;(Ou9NLS4K%KE}&J&e`X27kYQRp7%1k!z?4+ z>P<4d11h`)Tvp-v<<@WQqgD5Q2@f)K1k@CiaJ&=LY)R&(pC9}5AoS~8>KI?okj9~J zPbpq6cTDr&QMQM}$+`n{pIVA1x$w@fBX&LJ0W+fKoG$8C=%{Ng(3%fnaN_2RS(nIZ%4y2wb>AP#k|3R?qi-s(d|3GOUXyMbT z9e@N6#=RDsa?0oMr{ai8VfE2(mpxRnfYkB4@B#Ooy<42ld9uEtJL!ed!60<7#c_ZY zx}%UmDV9FBCln-yiYj%J3jP_O!@mh|xYp26?1G0EJs8spZ2c|aCwLZV=K;3W?g!gi z_9FCW8qo9S_P6&0Rz^MYxbvcl;LX255V(YzYF5;Q+iJExlGVMUG)}V zW8Ip5$+78mky88iy~cD{`4;{rVUiMIYw>?F&lRY>wf*t@SSanhVM3bhtNBouRWHRA zT#J8r8(rNf`ZUi0wine}-u~lIC&g*)J`eyw6v&3u|*HhtjSPZ^7IX_j;}XULJvMy>Jq>| zTa$ggag&|;arFgwIMBrLe^q%!6_M=gSNCdXCi8YmY6p0}Pss#GjB7XaK;GoKzA8N~ zmAB^Do>`@Wx|=A5y_s7)!0VOl{X|K_BFQC`qO9SHC#at!lwKh>ZILXOg6#BFj7b`< z{lRQz?B}LE^7V}d92&`Iet`+X!3-~bLja_JzPlFmG%KJd|IiTN0rruwUVr5|MI6O3 z@XpWe^Gq37j^+*h>$n4C%Cia=d_Il%ZoMK2kdiL(wVyqi1wLQcTULuiB3<-!1jEWd zkNnA{Ld$%uS9xM>n2+0mcQMonw#PMhCG0@QMOLx!R#Y-m&>C&~L9-O7_w=~fp-yl% zXElZnt8$D0oQ)#7=ToO=;S4NJzs(J6ELW+J_wVH7w+mQ{F?wC~^O9XWM-}aHqC)}U zsz6V`<1>bgD4)xs%fn~6cZHj&J6(MH{eCltoGumKUAj+Fvh4m5Q$U(>PP=S8pp+%1 zoe7TH%MS&7ikC_01lb3A7xhRwO!7GfO29|irbxfw)p?j#7uTSp`#&yt~H3msLqwv0gTq&&BKr_uz}Ahd)#NG>?ZLG z*Mu_!hT^9a=e4-&NNpZ=-6dqPPo(XOHC*8K-WNU{Urju^k`4)$wQ6Lhhu&)2csT!| z-vDCPSut}P0(_a2W7h_xvYEqtY0TRNY7#$>XBzj|+D*L_=IvB}qps7z!}K9;t3Z$w z8n!6JwSCrHLX5|WtMKYCg*c=9Cok?wIbNurk;r>LwV`?I%eW%|K32gt{3>qf^%ZWe`yMl{0hAEKWTE<{#Xv}(u-qs~i2pWvKbS^8!CLBlJ# zNq$hM!uFQaC&CV$IMxOJ!Jv_!hIUm%S3My6gg|zs=&;$E*O_Yommcl{H!D zw!X$!ZZo!qXVBGau;78fA1hSzogi2qWu6c0CK2(e*9Oa zCCFxULfL$){;M%$jq`Cl;R7OF!N$s=cqh^oIz-1J4yo947cP~_ z!a_?7HfCmna!Tjme%Zo8?97w&s8_-E( zj~wHV(=r(}NFw|QlFwmW?CMK_^z?>i`BfNCnMgQ!cNfK{H`_3u7N-Bn^{H-+LR4U2b>L0?7-VGkcf+#&sZ!+;m zyhX8J(MWCgA*WbaMulaHhSM|BWg(tuYzZ5<)2yxv*pVPOS(o=e{yjP ziFVODu#qhK5H^$i2KQ;(r`tbq|HqUEy7g`)fTCy%$A@I6>;MFR6@#C4f}{b}diTG{ z1U=X7L+T$w%^N5@h5fLy3LPE>aO`xP^|PtkOhtFXWa@35i_v;y?m}N6lD7Z}b2U55 zB?=Bq0Bj#JH{khlcI#1hI886ch!thyyB{dEyDYfC_bvxV0}DOE9jrWP1qT2eph5+c z45yh8c+#i6zaBGZvna_0iV}R?|3!-cmg)Yr9)#(M_KLm0>E&6&#)RSJ_6En#T>3iV zfEO@W?a>_x2i9T@>-xy&awbg{FfK4R9QI$haACZ*Um@|TyS;tJjrMQT{yx81i-Bqu zUkYHIkXjTDKO{I5+<6ms-jNm9Xg7m*voT;g0&Ezd&a*&yL7>zB)-__qx&l7`i`1x2 z@_KYi;kU4cE+@9DeS?fR5KL_4h)~ z<0TB31nU36^|XErDXeC&P;6Kc4mf^9$C&D8!2_28?UxPM$5AEje81%0@Tb3t5Hk)D zQX%KUNfPVg{|6QnsFFjK$6$6{uXTz|fufm@t7CuX`g_Zd4}E5DC;zOBE&{ZOBlKBu z31G22wRK@fHi&qgbt&Ty?$oa_eP~J78i67DP>;WkQJmmr1sLux252J-7C$T!U|ffi zq{ROyE1xMhP_|A=+}O&+lP)@zx}3^e6~J*z%z+VXI26!H^42*8Q+=JC5x^{tKps%S zf+@=Sf2&!~J-7sYS0TBlZCdECd_Xq+uT=V9sr0{6>3^lt|4OC*l}i8XnErovO#fFZ z{jXH|U#avzS^WQBq|&n24QrNXMr)76G@5yY{^>TYl&p&Oek^ys+wzRtsxt zV)jp~b^fzWXCA;|2%1TXs(Rxe8xn`dFde@L7oegX;qG<~kc!>xyCC5q^sml3|1K(k z57|h!KkZTwsprM3?z9I<((vXvDhp^Zm9ybMQ`_a3FM5@E=LI%ZJ#WS9^T(=iOmzHX zHwGh$HphJ$lx!w)mM<#fvh6nSuu(%$r@vLjC7v+hh5o zJ!>x&#?um~=fivd)8Mv8Zn`7#5cg?SkMKG(qyMcjP|<#J|CQX4UQT0%fy4fwxlLDw z1iv_;vNA3=%Lo(n>fa?RM~7hY@{8sEFlGaW3HA3C*+6Rsvt+r$E>FugjaK$*(>3`Y zPY6`N7LQ$q0AGd*_T91|>W3u@|5|ey;#SndF}X`6{v}oDuzF?ve^KXYKy$-HD>}a} z__phhM>rwU(c$p74)V|azH(xW{YNJ^w$HW=tsd21>Ybl}cgQzKb1ZbARL$I+oEA=B z$E)|6t(u)h2Aj4M894WuneYC+cRTpqQ8bLWppUqsZ|_~n{i+)cSSQTqQ2K5O+^&mx z%9<<-be5%;)z#n+$J}CI{kgb zmAx}%W!)(=h3=!Hl$udUg_)ZxnGr~QD3~rj(Emj-9z0i}O}==4G%xY^Z&h~0q5;vC zNTYtZP!SaN_SWW6%fNE0ZYdzps6nJC!r$xim*A4lxmv+2ei;#EfP2F}y2*1`L~3ve zpNI@Jh{@)VLw?Ty19^lVuY`rNi_=~LSdP;ZOOW;aOsXA7^J{8rmh4IaW9{D5uP@;I zpkeI!)>_9s4gSlZ+Tk>>;UkDWJdKxfUPSVZuCuA8lrd$GIHkPrcEgliYV6lp#9;O+ zeDpD&w109PNs3sOTzegM@Yeh>6KTboU_{lx=o+j(EBI@5oO3TGhP_lsEHkj1ihC01 zPrIOonMcsSi(^X9WvKq`k!|qduJ%WQ%5rZFE?KvL@fUUi2U587+x<>SpXYSn)`~oCg}Eg)P*k@1T@`!00~7q+hi>K4hY0mMS6kBks%scqN!ugQWWor+ z9W`H*sM-Dfl1FGHM3Sd-R1&jHPy^Gxy>6l~7n9v58{?}Du+$nNW)RiWo~k9cBceA9 z!R*6FZmEfMmUv%LM_Lh$PHzNx9`B?oz(Oy_{EWH)TfdQ>QBIE^kbPdh1^=v|Y1l4bU}N$}>)>8R z5yT$euf4TGnz6|*Yy)cc>=?=@G^tweWnVLhPWO%yC)cy?+$y z7j?WogSOK?T0iwc6r-$5pU#s}&;MXwi9%P@bjQ1pS|81BWmuGVI2 zZ})pUlx)F?9!7uS;o`{yGT5z@>o<3B#X1aGJkDxTUzy7M4tR-#UP4Ow`1lkeZ>p+0 zw!ON%aOO2}VY8vg%D|rXeLs;gSg(11E!M8OHCA$8uv*1z_pxJycYqEF#KXCC%82&pEg+=1Nn865%mY;SG&K@w7_@7h)E$2RX_RdRm!-| z?QiHlI1%R3w&Sm)VeS9X4}XILLZUg|9A_Z!_xM^o)?4QBUcJ|+62$xEQVzf#-rE&_ z;^Xdj92d(yo$!8fyV<)u@kd9=Q$du!(x8LBTPSwHD6RD)$~!=&L2ZK(TPj}9J+;Fn z92m+rO&_jOur~SZ7hLfHOk8^-rPWxipN)B>RL}ta{r)5bFK$KOw}qO?^MO^m?tJzP znv&rJrmp*3?Bt#+Za_}_R}1Min+K%r+3sJ(M2@`#_Rpbp)fV~iO0D`>wWM80qZ*eA zzI@eW71a^s2u*W{=Vvlzp9o-z)3DwWVZ4*gC-#zT)JtN_H#+ zB#)GIMNl0C^P==_ta;+}?`It6nF#B;EMq;+lJIQcpSlb>eBkl?36^mRMh(rXW#5|>86`kFmgiZzmv`>1Jf05f`b5R3l4F$+ z;K%-?B7pFQh#6-7Y{$4K70%moLP#R`;v7G6o{As9EWL<~vc|7DyALp^?xYHW>4HwF zE7a8T=I4v^(z_VTzlARTJ*Ewa7Q#m6>JJ2>0%_Hb4aYPIr^RSen;z6{B~s7mvDy|pS08%xRCK0cuCR2q)WOk5-rzViqwT6ch@K9%N#7-xyL8AbqQIA zd&OHLsIJ(6z}Tc zrkz6rBZQ|%>M}EBwWTA*t*Rl;+T4l?B5M5i9a-ltwY^^rv-wAdL98gSFwMgyjyxkb z9{60=BFnd^?Ba^G8&XkGxm9J5+Pc1VIy{^UV*Nx#4Y24wsO0j3HGI?TY`tG6qSJJa z^HO+s4V63l1bk>S)~cG3O-K4Z)mq(~{CM4i-b}%~WAeG!CP)7|fSit?vA3vGi2Hjv zgD>nSqk-upEr(38gM;GknE7jN#s$9=cc7`tl9O-?Bo_`|zXl}SrbTER?b8GBwtNPV zarX*^dzv0@S9s$88m#VExUyie*;V^MZ$UtNtu1Ag*CU`D;)^LJK3whaawXQfVj?x@ zrpZ-jl=#`}Asu?`pE5-)fxYM4VMfS@2!FJJP4|GIBCE_V$CexOEAu zN&9<8fQcRo8R$>VhQUaZr!ZsUD73lFZbB(!VPUjcU)qOGS&Yp;kff-)tPY(wu-!L9 zqAr&|UAF)h=I2WXy0L8%(08bn3%&}anic;!N=5G!Cy&2ocHEE!UUFptktD;5+h58(m;9j?F-Z`A@^&!4zP{c| z=yn_MUG-wQHPwcx$DI?c<_{MdX#D#A5A>>m75hN{1o-2c1w1?UEqs>b-u*;kaG%Es zS@$&m{`){-=--5|OieijHQG0InlgLoU`ulp$VWmtV8~6F$f$6gysPHWaUa?TR4)CG z@Kw_}X^S1z6OOl8H88D3f47m{2I`?R*VKR-M$LOH1He^~`%(gccp1oDqw4M*W2}uu zEylCDbV4S9DMSKa2!ce`M?KXPU-L?jutn0S0(eEv{qu_B=fH{jO2WcGO?y0Id#8|( zn4)i+k;d_%4zF=}2~bcUlL4-~lMi_7el4!bxd!3KF`F#~hO>M80iVG;psU>K?O(g4 zR4M}5jHG|{Y?gDX9fDaO5V6EV)V@Mv7+|3LkWnlofm~{<23m{q$dh+QuXHCtT+l9q zD#&op0j{LWT6)tJC*EFOI1M)mAB)?PjAGjuo%7_Q5PZ}^sVSc)MLY`J7e|$9MKPyx z5dNE>zhG=vp0W`4y*fIWb>$txbUhwST3p(BV}TUh70M>DvRpI(7~W+aj;>o~F6mUy zRyw5FzFj+Z3oK&fsHJw_8%Nu~)rhml(U|Rc_+*@JnBzvz=@bA0Pr5Ukp`($XX=F?L zHclJuX6gg%%gPNn`&hNR!kbFBmfi7wgRPB8gVN0s`^CFK_c^bl5Fh}!uG zm=J7`Z)RN|7CLl$zRbBd`%$3Zdt0$#3)1J~<@(lFg{8G;$-JK-#$cxJ#t14HS;Gd` zS@jzUyyWG;Z{i9#*u!Fc9!7fw@xj}CON7;2{OoB?hW(Wo5yqOv*G&*>$h15^qpG)MZ_m0WrATXAnJWXA*xFt{kml=NOew~;1%be;-_MNG1At-5 zM53{mdGSX}*_n8L+GS{MK`nA-rL0pbY}=9) z^EEfxQ`F26lYWXtox#j@M6ykbdErGa;0T_)!X@E)YaX6?zxD=RK0niDDDYeJ{=^ZB z%(R?|=KV*9watF{_Kpe+0UjPiXPw+95`9hQGYZbSDhe@AwOQ3U=S2&umDM42;%unt z4eUB&SiD>)P7SNNP?hR)S?8==y&@2~kgmwHt6?4Y9wM7>pB+|z9Q$paaYs4Pxytr{ zYq^(sEObK|cFhc30JTo67+yS%d?xikc$jzPd+A43 z1|q5Q9zd?3bO|A=dzDZ_X`Y{}06di7Dg^X50kuTuHc&&gYo=|vQE-L3aKuc-pjFy0 zvn+5%g?4{hSgv#h;2_c!GLz%AevI=~OT_NAoWm6e4gYQtImrR*j_mIBd@{?C{IY(dsQ~R#!;@wTMjiA0;MCv#(cGUt+LZ3RIA_&7&|9#9-@mS?fHJU zx5pms!EP}gDxj~}G1Y)uS1UM#(FcDjA5LQ1XUjKmcRR|fni)IrWEt+m+)F460rBgm z5}TE6rirZOa!#5c_E73Z6}6^644L{D;6$V&E873&YB?)bmbqnckua1mDau`_{4bCt zozV~2t*7~aQKvt{Cje5@cp0ZGrlX>w@^>cdRm#7d*?UpzJ1DipjOthLtn4h0s!qkx z`?IxK2AKWHHWNhVoN{*GlD>Q0s9}oN2Q8Oxe?q_K=8vAyf>xD7apuD_@0d{}J@e!I zrxiMN8*NxlBtQL*^l2bhP7L7a573Mu(c9Ot6Qc1x3LWbGirW5F!K*E_QJ~~MLiySr zMY@RhkbMgtul4!TP<_+0C32mjGpnk@c#S4cX{yOpYK?Zc6!}^qw3<+J_3PCOtjUp6ma@b*}aQ7hLx{r%v6_^SUKw;OH#Py_NsmuUP=-H;yUZKKknHj95 z*QUg6_H6q?2yn@)A)c|jroF)d6Sk|#pdD<`C~S0{_*gk)G&W9~@_Hc3y|O7WLjQy9 zMv_{kj~!hAO69{YR1~2_YG0Bj{QF*Jj;`WD9G5Bwc2P3l!F-HI+1LA7rub=4fbkOl zfas`#?uITB)`>l7kH|apoA}xc40?k68-rs><}QI!5$%u>?x;(me`nMG*d12aWPrY= z8;w94)x8`0_{A01_=YpvUU$Ov0)6|K8wqfKkBtRsk$qC0g2nKlx{lCUKx1@tap&Ynw2 z$S$>Az6m{9xr#yRE(^O4Hn$h|`+H#L>sE15m=sp_prY=$I+P`0cR|LwV9%p}M!Dxu zu9}_5TLe?v!DWBNoIn&nU9EW*gpUtCp0U{jqw3DK5&}IlNN3s zc&3Nu2L=daUEve^-$385*8}vB{{!hA9g0sd$htYr7aoSXj4XYF?gVBi`aQ_HaX1lO za_>N4TSy)6Wnn3AinUK#4ZB(b(^_f-ZAlNUh6IxL8^w#H>H1_t0z2M}w^bpl+T#no zkfD>o?xQ-w*XA-h!loU^X~5sSW71njljgO(R|&)d1=|_3`Z4NLps3~(uBt(>hAYt~ zyu5XVLU9g`p0(8y(&3(Gi*NjENQC!c`@u;Km)(Y(cJe=Y7elgcDGTj@*eX0zJ6TZ8 z^H)>P&3_m{eGioM_whuKY+9%eVe(W-T`%@!`2DBd zj28f2{ev?tD^iP$*2sUdweitnz|I4|!}1S&8!jgHNA#l-tp=*|+R220*a6pdDxmvp z@89~*`QTyyR!Hj~t^8bV~oY_3# z9vm=p%v5*v*jhz5(Rj-GU`IJa4jQ@XxCwo9=PM)-n5qvRo zRKzGvL`}v$ZIbdh@wlUlVYuVDEod)%`t(j+R40=bHF#}ShD;h>s6Yhv0Ib2r(%E;3 zk*(y7o|{XTz5^NsagVimku$dBi0DY)_sp5c>rglB>HmQzr)(a$l4~g<1P+a+iuf3Q z8+PL6G@y?kjP5_4Eu#N7i}Pz26doFj|11v%Mv(OTa*yZz@zz{~@ToFs!*3$VB*{2j z)~VAQ2(0qr&(y2=it2|6Xq3}=q0yC%alOi6!5PDQI;LSk^tdH=Pl1OiNZ(>K!$NB7 zc#_cxpon?@=r)~lKYd8nR4$~e;MWKK2z-54Wacz6t%)OT{?4o2niZQ9cE4Hy&FS6W z08M`Sf6lSk!X3D$E1t0!6_zwpoMu^ZoWth`k8JyD3W&AYYwA}QR5;@a%%qC}ySg8P z@S+pmFd#Q5<$kLxnS*6?fN&@3@_~Cu#mx?R`}{&~2@6En$=x{vD(zDQ6Q*QD+zk!U z>T|r}m7E9<5Cr}d)|zqkKySJ0AlFi5bqQGu&S2XNZLZ^2cbz zbX#*_9_4GDPB5mmi-CaW z8GP5o5(Xo{VpK^_hRy(hyXHZMp?}y_&4GV&PuG>hfi?ClT3~v%rb{(wiX{GrDXm;3?qR%~VuJVuS&J=HUsZv2qp`CbEavL6c!b2TQ41aT ze)4n(6D52YVImOG^D>)`U}gnl7Z9G&M)gaI=G7^6EA1chZc};Bd8R~+t&P*WVv*Sc zHc}W3V)xiis4;_<{#TH`qQ;2L+JM@_wtg{Q-qQ!4XFVWBs~=!oJ>h(_VeVO#Poupd z?|tdufjM_dQX%oJaoF7+u8&uM+n9bQKwyp&!@d$2nZ28TP@4JuhD=v9x9X6qbI+-Z ze6em=aQ%^gP<_B8SDnI-+L~77g1j$}Wn6&XnorejmlD<9ex*nb=2KL|0@u%z?~j_5 z@8qCiJrr+xHT$4WQu|!?sWu}^snp1q^>WBiWu3W)C;5$5t7m!=Fw*stY8C3I`b9B& zcygS9H*$0!Wu9B-oe|z5P2bN!;waAw5ZT;@Dj(SmaJ(Rn6R_XJw<C zc>g#X=?Z4TP5l_51>1E~>%Ial4L0nASH011_oMrhyy~gl z#+jzC^)tq~!K`Gq4y#BaLb&-zejGH%cI7;DgkwCg3h`Zn(Ty=`tQitN_I`kH@z!6} zcE(wr#h}`=Rt5?H?fI44zwTyU^0vo{%E=s|D)~X>A-3?u(2ok^9-@K5BEr+sD_*J0 zZQCs%-wm~;-KKkWYW1S3>060;Y#R8BmdcSreGZ3vU6?BrTvU^%s7V}JqO+~I$9)k! zA4r6~Uu!0wnYao(G-*gZ8roSG%6xnh+zm@t1VgBZQb|mcl6#QpAYW>F#X7T|E{bq4l-8!?l~Xr$3BbCPse z7wwMuU*rrC)qNhJbdtVWC7&(JN-zl zdpdJKiutan6=?cgNyv2}K0Kd2hvQV_S#B>K`BjW%Hef}Rcw5?5(q2#qJf-yB?R|Q* z1ok?p-Bmo8W8VJ(dcGz;KoAzQ9#aSLRW8S3InY}hK&W$q!kfC@(4@?-q40`Io=a~+ z-3g>t2Ut_O%$TMaxN7_M=vp##RS%%<Nd_p$5V=Y0soLd zSeCchQnY#CA^y`flUiV3h&1eU-TCWz`nvPQ`5bVmr7?uCeXFXoGW1$cJyB<)Ed^5{ zH&|s5VPDzQQnVxNh>sPAdsfxncv5q`vId=W_8Yyd`f7PQU_KgGVnwP&frj$!0>XRS zj_PbPjW^_!`96T-<ndEl*>i|j z`h2)5X6J+aJbA=&5-E!}56K&gGkw8J&*uH|#GG z#s%ba=snED*r{i$Ns@#(0b+Bu{yQR!_GYQWGYFX1v@S7Zl*~GpF_f9&t3l*rlYF00n>3HrnV|Z z`k?I({5{zGdF}(7Qr8@ySKaji`|G(M1GnEE{6%)EQl|%+|3!9A8QK$UD38KD^?8kr z1z44D)@%}1{H@D?M#L3`jFh%l`fZ<~#3MN=E(NFs>|f1F;K@DEi@8&(ybF^26I`m> zj4dEuGtT3aH$c_nNq?;;A#A6w)`xzdqy-0BJ0IF3C~(|<@<7=9g+0#JvVf2p#&^u_ zgV7V|;2Ze1%uM&*#`s4?LHlM^yPQFg+4yU$GAY;M&MvneH6M5#mc}e!F*fNjdAU}W z{q0&cJ%LCp13W{K3r*gi(%b;j$k2%EtSBmMM|}c6@npF#;5)o~5?dEapm}0o?{Qa7 z?5rrBt=#+BP%CaH$t6qw7;(5-hkw3Gd3~ojYuOlnwpR*p=DNFoimi$fdz@Z97gg8$ zaee!(3LReN39Bkhu8m-lvX53|O2F3;bi%^u?7ItQimIl1J&R*^rHGc|l8qHt(;SR! zq(ZMzjS1&H5>vk)G-TYi+QajY%uBn?EE<~v8cqk~H z{FcmQt@Q2$`K!wYTL&kpm+778W9I$)zjeAD~FOleq5bOv> zH+nNO<@%jRBx>skA(>jkK!vY$VvuUm3qW|&`FUrLAQ}Y7n`AK-x#s-n1AYAEP_{)I z^ief>^t-)XKW=aOt`PHp`xb~A{HcQ?av95lDZtEG`AG@+LE%??+qT{JI@rT;wQXJG znQUtjQn!3_bF-cWX0nT&u(KNO228y20Hr_jOm;Mj6k4M-_kOj}&gWt>2}duhA;Vx; z9cs#yUBr+kZR>i3T3vJ6T7=-28da+*_`G|(8f+ahUUZ4EQd!I0VY@=a2}{3WFj|!_ zGlFQ7>v1H;*U{AkIK63drW4RziSLnh2P=>1mgFIH(L@Hef80ji?fOA0=izVpm_#OM zI|#=p4`&nObZ=(`_v^C`?_ijWx_#!=0$9wmzdSxNByQ_cJSyrQh`VVIVEPlXEw3&wL2aai-gqo(`aQF;23{ z9_%h1|AnIWF?ln4D_45JK~a!(hR-ChWt*8Wa&Bi0he|I;*kw4>ZU|#{v-C!lk+tp( zUZl>jT|5G;lOd^@iS*nEdk*79WT@4)N@>tNPsY|;2l7%!Y3roQ*w5|fdXDmr*Un0L z_~qCHc`Z`*SFa9aBC+FP)T$yLt{}cY)w1*&k?cviFBuue>~6bSpPK=X3Gkv zSPTG_vlKChO@_&@hFvBx1#v61DUv`voxKxgzAwaMpW0mQ#z;Nw`bOHADTs-d*;rSn zTn#nfK(AJDI|F$uA@e&Z(ll&??L^WUJED;n%)U!Pcz0~S!hhx1uEQd`_dnCSBVymM zv8<-Lq4C^b++UouTFU&siX(knMBHDMg!?qSe)jeAok$Ux?R)f&;Zx0evWpvR}Yw-?j$LV9F4 zmvUu*dC1`T;#?WSXKSjLOou|*%;;X+x?OMUJzDq2r_+kbcBU8@MQ6^97j^ps@~my` zgj)1!>$kNk5Yu-dwzO6ol}L^*SLjI*lV9lZ2vyUFcB^)BC}t|v?5RogaFJY1&B-wx zwXI!I>k)>8c2p|O#>N64;Og9@TKGqfW765~KD2pI=|V$h{E3~KAt{rPvsn(tEA>W+mTrM6ASPZ~l8wRYtZ zy;;H3V4UfF8Ol;rS{M+ zC1WSh?+fCd9pDOezIcutq7^VTn9=`bEuz9Kz~uRvMB7&E%JrJbRNEj}2ZUwdO{}EE zX~m>m)mIuGSl75vxC3cd#f|2g9yFiweV<%c&r}9E7dF3wo6uXBn9`S0VOOfWDqQooXq*?k4i3>zDF?z3I0K<;5%BCb;=l|#z&Ucahn38%~H?<#ziEk4?N=BWb0 zsPizn-~4tf?J)i&lzn&k0_qd1c;(H-N20AA)8=lr%aFFV#0>u{cF(J(TyaXo>gAa~ zeX1tjre2q3ZcIjBfO}edO|%&qcidqwi^J?Ja}w;BB@=%o!_##y1@{Xp9Ydg&UaswZ zO@NLZFP!mTD>X7)51h+`?tyQ>7kcDxnDP>CA`Vf$Kx@wyawDnlqGBYJX;=P4m=gWL z_UxC`+fCuq(GYzd!ql4S8)fF4oj4ThX<~Y#P^IuDr4?s8?45UmJ{P!+i<@~kV=uOk zk9@pkucGvg=?}SdNaq*nk+R&%EbGzh=kl|^4d3cWnID{o1zJ>(`p;p_tIc1w0b?&| zTCnnfHPJZZn)wS*YiQ{57?Yw^V>YibXBYyx(Tc=V&9;(=j~x6B0bd1f^1%R6?(I3DXRHH5rc}`8#FL{{7HEF-qvpObDfrR zMQKkA{nJ@RR9MRN9ns^_%?1485?{7?XB}5+?DN&QSK0ll!lgg&m6Mc2FG~5!=53kb zERpA{BVL`scjXs*Jkm_4)a!;Kog1T+56Dy%XXXl18$dJloT<>TQoXn+6|A7q%vkl5(^Qo5{6y!9L#JkZLA*F8}0l zS$gK)gtFE*Unsha+*a|PPAz&&Qz^DUxhB8TD7}*hn*dBw6du z_|_S%%pS&74EHjxP0Tu_zHIFkT#)cUp*Fs$vCib1-q6kuxqHyvTSbE|+$k@`j|OW5 z-KJh?+S-OctQ^{jzKH_AVZ*jkFgr>11~qDPP4^z_1++#s_6PwKZj8e*`pMmS#H zjh<7-dN#$AgMS!gdrV)Q8@T9BEBpv5f2Xm}Xtkd+wXU>7Gr!BM{1x0K>Qrce+h1=E zZV6vLoMHS_nvQYGR?A!SPdfS(d;%x6%*?*GO?vNq)tGwpFZc$NGRWdLd(%3Iz85s=&zJ8nbOf@R6X&D7Tm$zi%Xbd$nQJ)1cqPt9^3)W{PV2c)2m>{C4qh zFB{HP)7IXbKu^s5y6#ZV{xy&PkRyJjH^{>vKk3`iQ0y?gsIWuSc8xI+?bE5C>oWuI zP*1yKXSNFkWULC$vWlOgzBCW_Vzq3_g9lpmZ)K(XzE&y z0pCH5#ay?tp47Vc2~nc9OPDDhS;yeznDHn62|I@-#60JzlH_Brqh z2hYNnzTm~cv@fs^tCKu~=P!KdlrQ$2h-FYakeyh*L^nGwq;jh0uWZ`KjsWjKBZjjZWK4>G$S66&;w^8Q%Y_$loi zQ2D8QffTtp#e&n;Yl$A&pp;YK_=VV5&?^r|CZ?!fqtgWqo?b7yO2>!N1esH# zUbGcEg*Y%_cwIq1ac7WllA!RtBb6cj^+wYPeBo{fGw?9l)t5AM>UC_4?XHeEkAW%# zMerw={UEodiBF0*YnCRS|wI=yF z9YSo;aig$xgP2Z4J}ctYe394q1bgFd&cxRgd+uV7A@^OqW(5{6WH*|Su=k+}Hw9DNaCV8;i z^j+lsXwe~AI=^u+^!BKkA4!j{`w$X&EzVOvo%Tv2&XcwrOfghT_Bd_RYhu~kd&c7( zp%zb^Bg6$f$DZi^V9^#sp=I7^tAek!ii-zJR>Dr??H!Evqf2=OSmhG+;dE~Wl*!b~ zqR^UvAnGK!J07fRNG{j3F?}x0^*5>&;OcDA&#LPaD{Hh$;O&ezS9)tW75acGUvZ=piV1o zPOToI9e`u{xwy^I9>R4E0xnXg69`bOGr4l*9AnZLX4})h`gkSE0_|n0rDhlANITyS z>_V+XI9IHZVv7#j(%BKI0P{RYW8Cgv4jgI9BG|-f=<5=WyTy5?d}+PO2clP=SNPh` zi+ar#_J9X|Q(%Y8ZIux6$x$U*N(_(ylK7Ndz+*WN);RH zl6Ufsjy)GwWA*F;oH>eLy3p$q)nTqdmpWA%ZAH{`k}}YE;pfd=fjvLXHC=k%CNuSs z@`klveOsrO7xjvxM(=!Yp;hn^yOH^*fuiJ}vI!Z>Zc4W;8@5;t}-2lV`!zm0fwzAjA@A5D*YW zdb5FmfJhZW5u}&UJ3&N1sY>r4MWh$$Ehqv?3xd=Tsm{at7J&uSF!0}iMRD;E=?Mf;2h4>%rOeCI_J4g(bm{Aic3Sx z+X|Tn#8o_<@>oZ>0Y8T1&@C6#?22cA`3|6t`6+Kx<`F>2l}0;hF4@YVYhF{~oT(EZ z#brLZG&nM)FU+`Yr-M9V($t%J;q9Mo1er# z$xyFtXx*IiVHJ6MKULOi47H6MPZ!VQs2Sw}#g*1Tk=&msjZ*2{m)V-I!azHH<*=21XV(6g+gi?yp z3kNe^*Cq!Rq&*NGYyI(1a2H)KwUIvl&G6uyX`R=&DArucZt`secUZ7Fv)a6lF(^&?@v_y z!;VCJury-Z3ClF{|D+xUFKsSCy|tIB=n1Lo^^?&YKifpX6CIxz&hc||jJdspEk*-AKE>&H#nfeeW`>t-^}|hx z!Rh!O)Pw23t7_HyBH73X#i@@_I-!NNplI&c$16l>$21Dh=COTOk!-A_({ zH7G~%K~bgPe<6>D47eQ&(7Z@w<)Q273}&uXzU_laNTfs6z;s{O#)|NMb@d6QF=t`$k}b1K7bz)JQ4zkKLz=={{@gJ@|W#`BR| z-JYbUcA96w{)ZIkN%WWD<}Br0v*dK^W=v2iZ=}~yej9be zGKiJ1Z<$x@D{r`nx~vN!08aK=hOS*>)r9bRsz2e8(@K;OZ#upU`a;J_>dpSCLeamQ z$V#=-wR+uh2S5i8w3e24K88AA$xy!Un{v^wo@5MavBC433b&L3TW(N*{5Ntx(Wzx{ zy5F0W$@HDbyNB@_KnbNkkZ~Ynvm4y;@8Zm08bZH!1&w;t2dU0k>N0YU0N)QB5}hnl zsg}%*n$#*;S9;u1O_Qt%;0N6V^cyS=2BF> zHC5@~!Mn5vw_3KV)^Np@Ag?^MbmdZj+NjHBykH@LF`r@iR0;m`ZSy98+3|2mZ{0$;}E%c%d*a?R;>i^2bfNfYAcxJwef!(*u=k4 zVf`fnk^yR>E>anbXUu6P`{BBTlP4vTdF@6kBtC8B`9@x*zhwD#o@D?{k&wlZy^1QU zFf<%ZE}g%gacO^k(!XrCmt0Pt6(osZ-Q1n+SK0Mpb2cd_yo^$UYx*C=wb96KB+WFw zh2E2b4ld{u?6-kF4w~%vr?Z`d(~(LYHbG5h>G;Y@1f*xXP4{3Q93};>%`ZOV9(lF3 zx|>=GVlh4IqMf?{d+5xzbFNRFRR3>{hfq#x{&d zp_^YXL|!5p6=EGKHJ;SxQd{!A?zJ*j)tgT7fDr5dQpotkJ#*U9E8-HW(cirCKpscM zJ<-^}W-tF)bs@Bax2+O=kKxYPTM%-0b2H*KN7ZKawawI;eN*QrF|7#y19V7O7Zej% zlA%^CmEeCDccNUfNxEquMH4gbY;YgC*4q$91>N7?zqfPlyWbC30%g+f(Yh0W3Fbao zW~dQ7Z55`4MGh8f#uX2Iz-sdRL=pAV-$P)4y(JK+R{_Xj~5haWXK{S#vd#_+V%V>D5YkA`2}Te3QPL zwZN#4P&RItSa(un$nYbOk3rPu%{!A6;Ze}_!Ps0_D?2`1Gn8J-eA zOc*B19=5X5#>`WQz0K)iJ>GNYBTG>y1%q3%hOG?=fSXMADaQSW5yfF+%^*5K8Ws+x z|-7Xaa62%$jcS?vGP8~hu$Z=g^hbJACSF@0<2#R ze#fo9wP1(!ZtY@2Rs8>NbC z5`V9x;b%OZX=WiC#@8{t6gtQn(@%Ra@-D$L=;mV>FP!2HbnmuYmuL{>xOEOENaPv6 z;LR@&EYk+7=Oo8Go;l^6J6skMIHj~JVVOs&kUL+$UGJTog^$DlM3L1<8qa8KkP1+Z zRmG<()~2s^u}o?=@42F3C5!rBA{*AmHdfyFI3(r6)5+Nqx#JC~E-_Sw?@p^jZWJRC zVz9eY7}@2|GU{VhTj+tw-7(jmy_}|Zqx4tp(LI&vGN>T&qTWaRV z^z(~{%Lry1=#N*Q>%Nx6iUU}6Y6UF7PI$i{k*{Oq@-C>DVSKAji@aFJP5*&zTy`8% zGU$-cnFx`K)A}l(t^QhavF_RX07Z@mCAV~;e?8vj%Jo=`Vb6$OJzlten{9@c>1Y7p zvykyGj=s_fhA*ruGUnE(Io+)5G{`$kE-8Utba~^=?KM@d$hD0ULi&R8u8_Z6unej% zS&_UnLI*2`H6lmfh!&qDa?nR_X1)GaKfoyijKJUa8dADOqn70G$FtZfrHP4h^qc*P3Q~jY4_% zk1C~A#0yQjV%oPjw}60wQQlBI3<^hjR%7v<70>GeCzoeA`5fvk^35pT;~&y3}Z zAMC;0ofW;h-)6+8YcEQCjGL5$W(y|K>fI%E_k^!KYYlBpclE7cM7a03wH?9qZoR6n ze-njp->zC3==NT%U7HT!8g$_QG#DrLX3G``Q~1X7S~eMVRApxzd=a5$^Xk-$4qVSf zD%8!YXWGowI8=uhn6<}!xg-8Qg5S4<3RtF=H?)ZpR}6{xJHNimeFUOb1#a3z&LmR_ zDle(~%-YtMG`cU+M+sH(f_8IDd6wjAjNDX1ZOm&G1(x=~Hl;VI`O=dF*jAk{U3+)% zc>x;jp0OJ}a7;B_Du`&qJUf|%RKZ1qOV;;&CPt0#jH+Mc*+J-d4zQT;H1FS5GFA)J z*Gd0nrrIOqU4!2qNi}+;$*NfEWNTkSPMUqYrQN8jer!Qu))%@e-v3L3il3}qmRdM1 zw*S>Kw{^IG#v1JDrpr^#)AaT4PrRzeiF@xlzIm5^;Q(THpbK8nraWDn;iL0PJ3}%^QSP8Nwpg8i0x%Z>+5*b!2!EXC znEy;zhOsN|tLY=J)s9}l$}v_FQq^;r+FWZ;T)Ieb>Q*RYp3OG0+Z}&fP6?|n$T-;N zx!%(5LnZO~1m_o-!c@VG?W%N!=EXh342IRzbcWt=KSuxU6t;|;)U%Qj3yZYRs!zZL zOvgeQ_>bB1>y})az^{5R7U~q+2q@EUD=dUA7!UNaA4Ln5f)#5?E}@^qtu}(@>wg?+ z%5jec!+ctaQ0<^K|NQ}LYZn2h{Q|;4dMCr+mZKJb)?pA}VqcsvV0_7;Zl<7mW=rBr z4~VmKV?V?jp3?KEsOAyOA!% zmirUP&6R4IFqZ>-jP~uSe#mCT+9~}V&xSPjOI;vCtMi5ol{Y53bfDQ^%XOVlal^54 zp>oE#3TJ+5WF{rj^r)yubNM0w)u}-yZKPxqqu~iKBW(>6+a;COa>%casR?;+X?_Np z+LKy{yyK^%rRwR;UuD2T03Ba)!pNPVIq9h2)QK{VySG0@pHU3jP%>8D`!ozqb4|yh zOYd}iU@Yi%%0qbYrxQ}Zyg-Qi*;Z8o_y9qkHpmUbk91#s9vI~V+UT5wc$9Zd_*Bi= zD$a4>!}CsKKNO_SLw56Fj5UUC_9^MCZoT{&+83qY`f_VnqJ|kw({V#$Tn5lo{PLUG z_mJIBFfL2BCUO5U@V+vfN4=OcADfQFUcKMXu+Upn&xjVn??|*o$TeMJE48E{=kUMV z?a)RejxBHFC%`*RI}jcM4$yh*4cH|LTB|c8rN$lU93t9D1l& zi)mbtX#?EEn%vr#vKH3#w&2!i^E^rYj{EhYx_C#V7PZ%5prbG8@x*xFF*~2ZOIHPX zO4af2g8M(M6t_);u!9;8{0VCM^}F$1rF?Rn-j?O4W*b>lektFNq-G+gwm@mG~Z-|>?)lxfkjd_S>ny}mDe=&WB3V?jl z+n?I#jeYgY;Sk&@Ae?&>esap23ONh)u-JI-aWHH;*}Icy3sWQ@Ye@mW5k&d%qO>8z zqRVWkf3uAjh>QKubMjIoqcFLe16bHX;~Znmkztl$Jfxx!^*07E{$=8sm4$2mU+I>D zoJO0W=yy@4854wF5C1JOwDk5FPt*R^BbeNd1ni;%pK&B~uY$jy=Y|ImK;NQlGnZPv zXXRE|y5BaLn=oG3Iq){*En&TArgAgssnH$()+A_3>UjUv=bJ7;-tlL7uK0hR+XT4T zk6tBwAHCLEI@pq`83hR2TXr}3+w2?hk)}2_*5&X6-06@6p;p^L@urUiz<(6YGxDz9 z*oN*URLFvrdR?Kl2YzkZalsy54FoCeA0vfxMCaa>>T`{VmnL?dq5jOH5L@L7m3~-C+o7-mlzy7t)_lw9mko zrZBwq9Mc4Kh2ZBzCam@oaYgHWTdW#b7H~t;?t2b`_N&qdbZ5(ozmsWu63ED&Z3RDQ z`Du2RR~M=t8H?P_cZzjL(*TnpiMqt(6a~m{A}Xvyc00%UJ}$98X}N5x{f5z6iV9Cz z)P66=Ys%yan=wLpl#;=h0R!Vnd`%RWVr?S(Y=Zw<$P)SLr&2F3XSJ9>gX78KkhRtf zzFtB%;{f3a6?AJ*gfi|(dbNw3x4V$u)P(Ojt>o^D}Oz66g_%+jnPrz?ayzBh_F+TgN$%%Bc4N87V3u<@K42lR&K3AC&4i z<`NoXjIQ{q$Foq+^feYe0EX1Opbs}{FFmH4hRL33C9KedTH^azqGvPN9%q%LjtTB> z4i6l2aO<_jo?2!+*cBRJbg%3;($6_73%f}5g-5&UJ>s_Up2DScak4YFr?4uJu>x36 zF1jG~lQ*Sv(IC%@Z3e!ehvM(k2%|!|kfI>jbbZNIUMr0kixhbxGW`499DbQZ4@Q7p z7t*5)qby8kKuWwyXGGSWBO#^YGLZ_-sVTUUW{KxZbGqxJwHIh+OD|}rvUlX>_51MF zT*l@3P4b}JnUaDtN?>an106`1VaklArlvKEmRW&dLEzV$bAMIk`_fN0<5pGRGMI5q z(54uN4XH8`03GKX`{9$IWf0_;CR|NwMa!-R;cjhE@kr?m;|26o`7OL&3U&jJnasd$ zv`4UnaS-O9Uqi~E#bll3-WdFjK;`%vfXsEqUC_l#0u-u}C~glIHSPFv<0aP`pS|ih zoxq0d)U!y%`M|l66mkKTl0jtUg*xu&gN&CbFXIePZG<~N>Wz9KQb4%rdHIV>NgL-z zO9?M1VYOjk8yWG^$bUrW>v*>JGQIz-YMWrgax}IKTY)P-$m2H}j8fdz&lme9OeP?T zMUQx~rpkEO>~;#S`zp*1C-a)Hq#rzq#)yaLrY~&FzJG=Sy!c@C7NJ4!)c%oJ@Q{YR zjNs_RqF;}yh?-Z?nS(fuBR@!r)5<8jB>wG9Y!gLMIqIl1h*Pz9rvU2xpD(L zNIp?F+l8zQ9J8x2_CbjHQ<_^_9~tUesVKA!y5N_jkg~jwruOF6kX0F}sl=`6K{U8! zVrnXGLZ8aT?pP8iji*9@qy6k>wYA8PRTQ4-eyns9Qaf^)HE_wo_5 z_RC8&gmL{(8vF{#x{TDl$|=RX%RrDvf*RpQ4?89$oB}o)=m_64QWwHPR_y^1Yv&#{ zw@2LrEsZ_0trEDoa{|1R@0{K%fN-LUFr;%}eHaDrY27Ab*~L4VzVhCfo|>HEY@@vH zisJ(1CB+7wRs%!8IDi02gH_+Z~JAibKi)1M?@`iw>nndw(0Kgj5}5>^PY%$h^YP_w}>Rk zSH9zGe%Kl;G1x}uKpj2J_4R~~cFY^iIQ3t?=db(locF|NJnD1AG6r#Vk?5DiM*^`H z*6B?XAQv#r?}w!R{+hm9q~4!kLf8kQ<>_G$@`xE>LSx@D!eXIrs7mcZom}ZPc;c#` z(r>Q9&!Gl#-MhvSh4xNE;Nk;|>2ePN`Om-pV@@p>PFevh%LFZIsJJWUn8f?Jb7v;e z(!bMzKL)laM1<4Y^)tyGxD&TlYz^L8sQRm`SreaE9U$+kS--meKbZO_X+lDAJo@oU z$p$OJj#<0o!)yny?8!*SS+Z2yfPalEoHJnYxbF6+>#Wo5<%4zH6yZlnSbPLfHfbyo zO&lFH^=3*$=KG(!0=y}Zo7SGC+TcSa1HVoV-|pO3E|vI7BfUuPz>O$#qYzeAVEG9d553f*&r;&<; zh(^wJCGg;amRSLf-PWHQ;YNjm1?k52f8^IW!mFqAr6KMSn+iwB!-Ak^6#p8!i3ynq z2j+FmhrPWPHRX4Q0&)jn_67z9iiK@Yo@k}I^>O+iyY_ARm#zdz8ec5^i_zSu>i77b zqu`JD9?zLk#U{Epa{qp%7KNwms+Uhu4cat$wl}Qb>ke^dtrsry22VY_GC%%@*KLJ- zi!LdvM>=XBbv**`r}I522E9%(LwDvMKmFI%h{VaK4&!11OKkVQW)2*N zbb_y+Jrj@}@p-90^R5S5VSj4Kzi&Gnj!A<;Y`JXAqhYIXPLSPSZ9MsOo3_8@&i>fE z%bjFfH{kIC2Kp|z{QP`ZiO&xlVoRgy0m;w4o!LpTTrQgiq_WVz0A%L6q1^)d* zJa)TSdnUGoF?P7b5VidLMTFB+%_CaO9}17Fsl{CQ@vh$luTL7F%2S59zfb^44qkgY zvoXh8KcCL894yr3xfOaf*s11EH@T92hP>JhKEX1t1w_dt?gS^i5Yy9E%~I2rJv>bR zBidV0@(AhirRWJ?owWtY-a`jX&yLjjX;&cI^rq{dj_PB1ddfvEIq0J0=m&2>i?lOu z&x0DRSU$$Ru05_v6sva4u>$QveXxas9|wIGC-pxx+~Js8Oen0>R;N4%r4iOc8^VX; z@du$e{I0wlg-Ac0AhgU4H8iL62}p1LkeE*Y@ZV?bvN&mahyn60z{stM(N>k(_at8n zETrHfZpz}zLlyGkKNa$y3i)4s^`8p)r&jIzPlf!aLVmfJM7{i<7xJGM@}C#-pBHk7 zUH)$a88NHY*e;lPq3JCEDFx8qBe-y|?tT&{0WdTz>DF|BN$$OGK&d6`WS{SNiW=*} zLYO|C+EF5Xz)l7b9x^hBGlzMcG@v&>8Asw@O~^deE?=%Zbv&T_!sR711;jSL%;Y9Z z=IRIt`~}0ZM8We$G*zVpR9De+Ik)|}!p_5MPrxU;9u5Ygf#<;0ANr zHa21c)ov0O1Bla$FFZq2=M}06BixFVUD!{4XCeYVUzj4SX-LW@>)t9pcR88t%Ua{o zvE(rtL!se8XOVnOTZ(W&5=_$wk0QnftBd~FwxL(=)mG^gA=XYONIw2WVf{pm3iCD) z2ydA=c@Nr!%d+k3Vv6Q~cL@t}P?AspAP?)b+=b_jyZ-}*Fo}{h^;Mg9#m8@W+t~1F z^GbG|XoyS&y!%8}Qm2EpLic107eMpKAy59m5|C8$1PU0&tMee zZZHfC5`bM9Z59=D>L&cIr^@NZGpvf#;kcstL_z@cEd(!*st=0nu>j3r=nAI1lIFSX3 zr3}#Eo|0YRh>8X}2J=_L9U4q=D>Xvy<4zrwE0qIk`IGqsr4GOTj$z?vd!ab#)sBv) z?GyPlV4!%h?=@tBfKl@ zYkn=eaKOXHVKy4^eA|~jfdNM0D~1)4X_p(uuFsBKP3np-A zP6qwrgNzIeZx3uSXBLugtKF#d&JCUT%KNH?NPf_pE^%6>JYh4|F*B{wS3tUqME6gG z%(^9aGhxl&8ToWiP8`1rR8P5XMHzsfiAQj>dxe$L1lW+4N9AXZM#)gPa!$!|FF}e9a%6P|qYw$RPKe&?vOjQC zD^Df?aV$Ra5O(7UegN!NN{}NSkYFWwvzU&&dhdUhqJ>kF^l0xF2?5i#B&|;dnpx*r zLcHCl>|INulW&-KlG)L$yGYA$J|mLr^04_zUKxM2%Zl_}n+32&X53O$(q(RQEJG za8AC3Qt__ez6;b6gghqHz^Qo~a_kbk6{ZsA+^(q&UnQNhMz0;2>zF(-#sfU`Eg2G< zl>Ybb=;NHU=`Z9d*wnK|VHswZExN0(2~%tZ$}d}n;{4YyMl$24KIez;;##39hdCGh z(=%4_y*0~P2jX9^4bk}MI#h&-(s#)gyJ40|ct@|}BD>Wn7Y-95x z09CoAaF)6osky3)G;q&(sl~AsWyZldDxjx3SI>bWufdfQ>I!J!bdiwp2);d9E1oIH zp)AZp#;unaU&A<7kd14_3`Z|e~~!@H8}un|8T@1~|){VjAp1#n|Q55G7 zeP|_1f(H+S|FVZ1oo1X#|37frG;Zo3kx180z{XLKjXoe?9j+fCuLXO>4AeKBM z7vE+>mZ5u}P0j6I2)ZXr1RppgXIDzr5jE3h!`6G%fo!~Vd~zK6rK55$BMlQLgs9aP z)@a6-Y`Zq@u=%oY&(@wy#Z_zrWUD-wY{^sJOYu`2VjeHdZg^DM zBBj?9ml`jc$vP3wLF@UJeKWnU5<=fsL7Z$0YK%UqG|I`4;MaeBsp0{WIlyRs5KSV- z`9cs#Jx$~w+2+NFZPyhnkO}u-qg5#iLOPBclbb2f>jz7Q^OHo8KpdDlLdF&4y@nD} zW2bCa+*c5r9dWv5tkaTs$5_r(h@E~%gk-qFMjhAShUvPT1D>f@_lXN4n>eJ*bopi5 zRq%o3Li4=8_gGD2PE;{JVo#R)AkcLb*=oeqOAm@uG%m?jmLw~ntcA8g3S<|WPv^S% zhMT*6%K2#nMMyVlD&!;D)?bS~k$iBxpj0Y7&07x_2<%uN2Vo z_2fOd(06zh>(xRpWB2-~s_;45pDvgy#bS`CjQA$O6+f>t<*~I`dG1Ibvv zk{;^~$$$B59|f5M4+#9KE==i|+gCoEyDSHsapB#XD)WQz7C#v5n5&(U!X>cYhPcHC z+a(c;+LDo5cS$J&>c}<^Ru9Z2fQ-R$ezv>HUuz(EY<$nnCDR)Bm9clJwXbqz3s@al z%7aV&?{?lRQRQ!0Vi}8$Y$&j~DCBi9UpwW(HjP4x)J?l($c6`-R{Bgy&5WA?v{zMv zHt`neYDc-TM`+l~sQlSDj2Q+|e^BH+BkVR84bawF^w0dRtU<9E>;qa)Foi0d3_m>O zhxF@fmP+{G9ckI#>1$EC>4Ede^o|9W-Cds+?BOO;aZO1y=ZM0Y1YpwW?&`Yc`Ex|C z&`euajTdG%cmvh8@$;kv%2)3BIM6RhdV#7UJ49yr-uz9p6%bASk%LK9eKEE#kLAh< z9UJe^k%<()urc0dLK3v*|YUaEoKJJryi6vtlFUSqa$vn zJb3_MR26Ij11(xifps${zZ8 zSCx2nR5@l3ip&ssY-?KVL~!9jx@y_4HEuBO0s3Ao0Q{#5AuW#d6SR4=eD$#WP~A%ezGHrnbPyH!Y70m8Tw;1aSdLzAf%gE@u0kjiPyd z8m?1-Jl#QJ9N0k}mmI|bcjt}-%*fpq{3Yc!wBM3cPlsCcqva&{ScL1-F0c{v>*dim zD)$bEaRxD$FCGWuDl5jJy?H50{qLLzM=D)qf%B&)4!DMKUu(_pqUP>OmKezCNNmj+ zS!Epwn4tW!JzBptp`rj3kRDQ90T1ckVC70Gfq;atpPt)%0kYGs2 zPG`thQi(g{kA2vk87?^pFJLrNkl}DXd-)=%(_P2$`wQV4*9QZf6~p8?*`}SJ9tJ+6 zIYH^QiDI?A=Hy8Q=ynm*+%_>pxTtn^hszd|Y=M`|cOI83?EK=SR%2xNAO{FoY?F;g zWhsEdkr0J$1SHU_K)A|7V1C)3Fe0f8&o4u#m_0tX&C0V2Ku0 zRaFL+1koXZA~{AQ4Q0+!y%RYm4>ZYFJ}puwqcwHv`jX%I z11qvfQH6i=2fuCu=6O8k@yZ#EcI@3~!)(AJm6M#x$Wi!M`iGQ+mW%Yn@~&z->zB8^J_J>clR0Ui)=2V64f2O1NJIN%SPB zyMIv&(tXztzs)Ux4#)*4BjWUjy@OK}V&tFJPnre}4rVc?{W*KU1VVp?OUl7xc_+~Anoty)}_bqTizcRs`N6p2D&{kgKl4B1{SGBn!?rRrew3K zOq8ic(61#v6xqYoJHm6%e0b5K>y4zv6a!m7rNVnUhdXxS0zY@-*H>juKI?VV7OI@4 z80Nh5qkEj z+|OHxe2==kI~81NnM~~3HSJ4=^_Av?XYMbs(F$^TfX^Ka9;JNib}6?|JUCzN%SU2% zzvSo?|VU_lWf6BX|wK~kmkb;i(K9tErC8rL3 zMWGZCXO@8Uox2g0K+(0Sw|BkyUESH*jV!@G3WSP0+6lauB-u0Qcb6xv@mnI!@h5=Z zfRMk7yz&E^{a8>yN|*#m;MXoR)hReldiSQB8f8+fRSR~McyB+^SU0yXnjdkESBz`; zUk582c#{vb?{(p`_Jq$(d_*lDek8z3Qwua3H*g76^40)?aQbPdeqWb>>+~-WH&Xmc zouw3-cOrC&4N!_rKkZhXxF0iz4Mb|{C#>Y>l7bux1Yi^&#l`GgAjSVrmTTLEhJ^(u(Qm^0~&-JE2Y{?AMYe@}Gntw?aVBwPkeKemt zLD*rmZl;po!1md)?|R{y#a!@1yRcR(hTeajR$y~^NZodh<=V!a7}{t|{b#yY63gpx z&tIJ!er&?wWCJwLW!BZ!=vn3s_6(*?s0zg^5oM*tl=fNh6q9kdiwpIiqy^w?amu6a z=azapq=Z%%tb18>0nH-L@}W?^i_QT(-y^V4t7MzQ$DQ+oY5yez$;$F7>m6Rr@iV&5 ztW}Gph-_0k;A=dOc0vzIs^W&+j12X=dHx^`Kw05+dG}BUcWwB!oCVKH@Q2;A$dQ~Y zKpJPl&7}XMb0QIQS5-A)bMBr8V7)(3j`Utk0&n!EE&wU0OFv=#@2k^yinPL5oTy!H z+Yj_nbppD@ZRggGH1(0)YkYXD!%m6x{CR znYTKnMrjlyJL1>HYqkEcuxFGrI}|SN^2fn4|*=B)sxO=9dG(^u565UJ92NIWJUnAu{-v_WO0R@SL=12-8M5 z^L#eExajqQ7!ZjCdJiD#rFj7r^PFkG<@~oIvVYusRPk(YYc@K?*lHjttr<`P@3fyr z6K&kq9TQnKhnPnfR_QowexKL(H;O!aY|ogs%r<0wuZmnh?xo{XmWw3EesCYZo!87# zvH~NkR=SeXXS~M&riz?|#n&Z?@nLrPc5JDqE4C-<4{2(^0FKAVSDF>+m7mvc6XFpf zDwnGNl*_+1;y>l`pK|$6x%@w+T$b4?j6e1YAL5}gy_&LsY1^+1@V-Z*OUPm~Uc)xw zyKY$u06Fx_oF85SjhjWtF|SX~?n|eiLw<0bA?kwQ>n3xZacx^$uD0FCw#!9M$5Uo6 z>xa4g0mt?|f4t1F7mrd8Rm}z*Pn+W`y<9Fp2P*O--jJ?806r#ZpnaSS7{iR}H*20j zY!yWj9>zQENU*_wFW)pe&cwwSW%P_4Pa4d&djh6I7jj!*K5sh-| zSrZ>qk-wyhOJvyxW=3+&W+1;2dA~1L0ED)T?R;l}C#1v*^K1hI9w!bVAuvsy^G(3) zd_}B|ZY1~^DogApsbJKmz-R91D-s}NJ1K&8LslMK9oAwVe>?mgSASwe>;L(xCnU_Z zP&9!@QQXh@-gRgiK+mKG9j?_PnRG}(_=eug#9?dSu#Ste8RY{V_0$tl(VOQZM#VuE z4?Zw~{&D3gSNEa9HMo9*z3G$JM2p`&#PHPpo?M6S7w)WLeSsMiTR7RoT*(@{Rp=c{ zQR;*Tr-hFu+%Xevz9%SabYE2WQ*BRr{zXx{kr(Y05%gnQPd3M@Y_mH@Iyki7TYo@} zI1~vORG%8FBpq+1kxR{)1&ZBlfn14CF9erVgWaxWv1t8du77hAr`uI8zr^fs6^;o+Y%GufMGlz!JCWF}vlNunYf5|lv%FdF}agVf$aRW()usVNCRi1DgHgs7oKX}q1J|+p!@~QgV zq){6qHs$4UC4NiZVf7#WfWq~dNO~F=F07c$)YYMVkHUJgT@RCXS}s!-8ABnxOS&bX zr1opfFW5v%K8at-FAx7K;5zMkQyhVV?L*zg9~}2j_YVj@&4&RU1I9K4loui<;59#_6Pp3_3(L}jLr_C22HvLo=lWsMnx(YVe ze0XT^J_lWBb~M4}ieo?+#oaMLe2^}h(^nEGd1+|_lu#@&&Q0~bO#3M!uX$y8rF{{g z((j|0Fm?W1XBQIJoi^p{6O6i;Z&syx_o7fW-7CA;;<-G^YT4bXKm#%RvC8dqpVd+C z4mJ@LfqDfRmn$p1?GFpb#FDh-zK|A)2O!n)kVP zj@KG5a)gtIlVdsF`LzI_%V^y5N#eilKYaW5RgO8#^=;2Gzz;31nS|hm48Tops2;J& z#_eDhhY|gfH(!!HGQ5%b2D*S}Smm1}(1W-J8}=m-(|pi`5DtiE;WA0?#%sE2NGhT&pS30r+dbYFB1WIm6XE1l{)5`O_HjMJk!C})1o>?ON$plh z*nybMtOp~s!7jssyxc!N&2`HaVe*TPT)ix{`@rBS7?DO^6w zwPTN1>du3#o%!LW+#hNOF2o56DTXjbS(_j67E{^^{cu9?EhZ97i(qjK=(;dLKG)h& zT{Fha!_0F{(3!&#_;l~zNc=#c+Gn4^&|+i=@9Utc%pI1i0>CW!qa>WzFL&Z^!cLg=$)uC7`mFjO=*P*!JUD8NL+eCG zFK$k4c{HQbmPQHDTq?)FbwJ+}An#3$aD4M#9Cw%KwuZv_#s9rf5!LsNk z_VIa=-W&-8KYJfz(BEA+zk9%D!$u?v0`)ONMF6?)mMHV$gRjJUUc(4}UZHkAncOArvWJL{4;7~rOUE=B1RY=b zcN_Zk&vuA!(=fM7t0A$-1E-xU=}5h;f)fXh0aW;GEP)R+HA9dIj~SeOv@d5UmZ2ec zg9g&tNaN~&F-PQ$A#bGT;dc!xzc*gF^z?CiQf+?GCOU74kmn!8*JBo&+s~Sn-WeU) zA&0ud7eVOSH)h}Q%k(Kvz`4e5A+fnwgGTBti;hAFDA+RG)OQ&&erVg@fnffKGT=jw&ttJK^ChQ2$KuVS4e7~wbX9W7*fsh&Q8{j!?JzZydhcGLOC1F zM!{P+MeWAbS|?><2_X1=0Z_6AC+V&CYTXS9@!#cx7D#VRW%&f+9^*`2VFFfPNoyf= zRR>Um8)wgK_Sl>%O+YdA;9}jg5eg5b=VaM>a9RX%vo|=o2qQP#`@aQ~&2X~ozVItM z#Y}7Q-wVtZ#RA4DiZ1Oq1-ue#SL&1d2A;C@rMvXu1ILZi-` zFd4^HJUNtEw0_tW%IYCl-)vOE*o53TCg`|9V8DI`N&STnJSZ;)b~^IL;2PA^Sm3o$ zDU>EyTdo&ggbUiyYutGu^L{o6o8J)>%XBa@KdqjnFKJj18s+1uMfqkz+mWtxA|jXL z-q@EH*zw1rZBDyDC6-O?ryM`2~=ef;@Mp#Sd+g(W(Ps z7_B_)E3q2mP)g9zuG^R#3H}n=j;y5E2W(?zWh>LwkFTcs3DwHggWLU3j!;MFuF*40 z$c)pZ>xre<f3Nudt29Jx6O?%vsdkWQI-YqGeg^+3tJ$;_;lpgzI@1H z&wf-V+FrFkDNf=0Oeim9E^!dZ>Fn z&FS|-?1i;AAx61UJ(9vb+hNwKgDy=oBa8!*hGERE{m+m0T^(hngl;S;I&_V^SDS5) z(z1ZF3Odq}tR4YAfe#e_o;;ztPned>j}%^&WgR#bg=-d6V$m*&LCxVd^bQ^O(>LU2 zRaoDOuv;4+efTNSlCvUbfJ??bpPjw*l3DVMtRQ=~YmjGm=GG=Uhd#sw*SOg8!YM`M zc^E3^Ouf+tBy{hpuCNdIf$`E}&y~kvYq88rK1T$pW=}?m4mc^J@t;@5u=#l|+xLx1 zy&Y&!IQriZyc#SQEr9l2lbY;bs&j2NPhay}Fp!i<=&k8S zH?8@qG!C-!G!lOBNz-7s|OL`L5TjT02m>#y~Bj>;Jl!<T#iF@Rt8Lq05CctgEUU2W}KPEOynq z7~osgrdB{DyE_t4vY88)*zS#9rW?4>-w z?V~t2@0-AzZ?fbP8D2^)bepw49rzZZVKA#SOZBh0Wx^1TY*b z2zodC9m%1XSk;^L(G~CXB}@EJcVOq*(?kU;G>G|%?XI&-mHmj!Xt#)&qfvXpC7Yng z8KS@zuKh(dop7~eHr#02?^wd8nVF65{uOZkLH3j{aC&>KdInwUx3WsQ%3afQqgPvG6D_g$hXKHN-=!eOZGOPTPN1~h6 zFZpHY=@0J#>9n`No2&dR52QOV&8w8)W}(9p^P|^W2!SF87d@9>Rt}_uw>sSx&ufs~ zV9Ha%64G*E=HH*z^a)3JBdUwTv6pShm@fIW?oA|AM&`O*Dn=0pn!&5#8NkB_A=eU`URU@_Ia-GqeeJQU_Bz(eU#7*Mr$?aTv(k5e9doZEq%cZlY z!9a&?lfrl7cSu)`Y9*hzr=|(9%S%M&}m(1rS7~D82VODoR2V1f+zb6zL@t=>|s_MNmWUC|w}*7P=@9y0l0K zX+kJUgh)R-Iyg8p@ArMz`FF1K{tG+gdG=m=^>wek5yIDsi*xT7yKDB(Hx;F&P7pd4 zJGQUV31Ap2=ql)%<`r7<(`^^qz`0Ud>9D=~A@SPFE!#Gq;5fWwYi^QMgrV5DUky<&R!IDIl6Seg@d(@dYhYBy5Z2WvW8$ z*WIwGlwOX}G2!H`Ljo8{(j+VBuH4^JqCO2ia7`-wQTI>=F6iA)IO6ho084qH>|3tq z0SA4v&EOgFxqhqo)Wq?GW$8lvuTS;mx^Vt|?_9#s)+(bFY8aF0J11*bUgq`^goW!C zb}u^xWk|(7)IJk@)_BCpYB?gdZbT5VG&wt6o9fpbKlIef5V7u*n~7gGUTXGDpCclB zPF~iW!(Q(9La;6oU+KH^+0dW1Ca+l!Rejg%-t_EgKxeT@``Ll_EnYdz_bSv*o+7HQ z-5|n-;iYG%hKREYOLwXj!&Yx_rmg?t_=o=dtLp;}mvh-N|D`}<#zOgi0>yIsW*^6C z(=sxqV6gXoTxM0NkKN^3?}j{)@k3L*{bwZ)1T?k36pZ$3ACYBSLJNQ)}y)68DPj0=A3@Gs>Zd$=== ziq`FCyOD{`b35Z*7p7SOoH<#Ef~ly1e}m`=uk&fhlp)wWz{a}p0rCpzZ z)9xkSJn?9|;Y0aEkZkeU)Nq+G(?1?+rcJqBx4sM+!?=ze{%RYc^3d_u6WFU%>c35o z{TeHpGi?(2n~0@`)ww=(W15P{XI?x!cbI-_f0Ln!IlmF^$< z_94cFY>!HGYTD!a{rX>zY%5OxI+?5T=Xd-6#CL*hkBE8ZXHPzPlC4Pir{C}Y&tFgc zYotKSZ17=f(}B1B_1*sa502D-rK0?urOs~l52}BA+`s%Jg_E5g{m?w(`&te@>)%J3 zG?my#zQRSXsr_w<|M7kNWJqUz>ePcI`=4GT-VMtVv~e_Z=7jQ`U-4m?c>ro?W1yz%1C`~IJQ{3Q9lQpM*gtFV}Vr{O=h(-5rL z@U+VRb<@nYA&}Rha>; zoEGk}(!T$F@Vnls7dzG`qsnU4>t0Qp>Ed~(Fx!wjyYY-0Ykp&))GtTDsfK?u971=1 z5w&_U6!ycsS{bHDoS|dx{NmD4wv#R_t+F&}FRRjg`P)xtU)860LlYJCy8_-5Y;iia zHJ0z)`LF%+v5LU%bUei`^6gt^f<}r2v-Nv_`Hd6YU9utOnqPB*6&#;mwKOvLy^-ac z0TfyyuUX(dJ33|ATbo~5)F7|u@&0_~%i1E!V9CF$WuzB>!D6+74>!0Y^ZSy7xQ}4O zdB$Da_&Y!uPL8|F6QjYSB7RqBI5(`f)NlCQcV;_ztZ&ZVZ`~@!+QkIwM79<=CNcZ7 zeg}`6t-AljnXp6ay!+>SkX}Y z^Kyo^iBk$hx%*b+-Fp0eZKqXI2J}U8$+i}FAI$XWQ?M8W{$n3akDSc#iODDLjNkvt zOoJ*-SUO!o02ed^Y2d$AV5X6XcS}}d9?vmi)oYs{i(dLR732nAH#$EJ{jyeMdo-n1 zq&kvwf75!K?EWc8azR&(>1Cj0b*bnJ2ZeY!!S#lQajxn{MLfa-$!LtgtH z(Ci~62YLrdzRZT3L6HrTO4g056XJZz-(RbCH3e>py_eMB#d%s|!av}hq3JyJ*vgN0 z?vs}E-vnjg)B9Gmc0T`eREX|~?O{Zf&rO=P9jD(rgJw?i{5jK)kZ&`!Wj78aMvjq} z)@tJ~xxe?JLHrQ9A0K8zfJeCDnx4qLPv|7dG~tpR+oP{-ZY>8e_O@;g;^; z?xp>`EhA@AY^7=T`;U-ON`7Ny4<-$ZLp>-<@Vxy3mmeNn`uAnsSCS(B7_Cn@krkTC z92H#kray;v*v`hx(e5<&H<9bTpp~4@lmQma*IT?+SsA%-b7{zW(818B)@6T2KlTk- z$q#&JM^jVleWemZB)6e=sGF6)e)j%CU*#VvGaA3Fd}Gl1FI0VVPC?==cAI4i#Il=s zPKWXY%R~iY=X<7oA^VF8)V$!qw=T8)_~uEZlEaw}WtPN$g~mlgF9_m)8!Ku%4QqAOOv#N z36lwle~W>E9;kN)>Nf~c^bf|}7lXfB$aZZI0Th3EEycG#GvxfKXVMm%>JIyS`1hZX zv|GJBJ(xBNI`Gc_?w0(?1DB5TDb9%JT|Y1rWIBiQTED*JTynr}eGRFEY`^T5DJyQ5 zU*l1{y^7fDN;chD(C-L5ay*U%v#4x?FN<_r#~eXp7GBK;9v8T)XXH?7H5Dq!W);a~ zI$P8xU?))XrDqoHS!0Lj@)<)wx9UDOvBZ;Zb~f-Bw2VKh__aZ2sL9@Fo^-skhT_hb zRRigjYC>Gy_KaYM3X4PE$cjIaH@{h7y|C9K`N`^t6J|bR7FW0HKKOQLC18&$8DD9* zYS3nlHZ^d0dm?^qz$o7U(ILLYFTp)GlcX_dU)(YK)^jtV`VYd#v_4&oslEFN_sC_> zrq|in4?D%lJGpB2x*xFh@s*Fb9=B$`@H2G}LuUP9-G>epAJCYm6_ICmK3?mfm0cA2 zg5-9#%E>FUHQDTmmXHNA@5YA?2g)v2+(B&2L`$CC{S+KuLmcxlq}_|q(XdHc%e58< zr@J_SvX-BdVVU$Oi}Y&Cg?Ml-Ou-b{seP6lfJ|8D(HUI4ClS zf(cy0aWxa#Om~aCCJvvKGNN@DdOD?>@7@1qjj7}_B$MkC;rUZv3j(-H5M9|Uzbt$= zvM@Qh>n=3V6bJ5EDpWknEmVGlL^jhOWZQ80ZKqb#`JR8@%byJ^(j2HE8eU83ebxn1 zZf(`dA375%W6~=OPA=wnNwLZq8PX?>Ksq&bH~83_d$%U(i4il6Qw3>2gYH ztxqSOTW*p{eRLSl5J~u z*Yev6#6tx9XW^0K_VmTar8J-fhAgZiT{)w}Sq{a~MOYXO`r+ zFCk%B#ale2Gjnoh*RrmOn{Kq~iwqS{dt1lec`9FKVJG*c z`*J*huayr5?CtoVMH59`11wFe7K>mAaH^2{T!uqPeFCGFzQH}!e%+IX?ahUd1*ak` z*G!+KPyAEQ`#%)mH~sSQ$o91Dm!|at;!&^t>vd1)d=Q>x{HqG0&Y1!;V4aokhi z=?k#WSt`YNH=m8@y6yBqKjP@M;=@LX{p9m{q765&-D`;}zSf2873&S$DfZ)jL~i++9&s2fPI@#tOvF#w?>Ti$qzGj2swZ9`g#sYomdvnv+14_iiR+3 zN3Cw+>S|S+63wCH6Fru;A|(lKJ*thlw_^>s3VvA)pKGB_|W*GSIV3SHW7jiWD#@Q-AJm!rfO{zoFe>Hq|At&Ea0`RL<2!Gk#Wxo}l@>50@+plua zw!2_8lDv5(+KBS1QHSSVJ7axo4BJJWGI%w1}T!fsozy&VLT{SJ@c?UBK5y zhASsRf)&2J=(uopqs3~_GIPBu+ahgqMlfJ7!KH~QJ)|jM2N&SLwmorFlFoPHaIj29 z=bes9D-(FO{ zMs*&q%MfugL>y;atQzgv7^S%T`Dq7#`H09D@!a8#wa(8R6{5smi&mih7mGBuinVZi zbBcR|#=f85&iLO7*jd9*&jOU+-P+Cme2MumNuo2_35`9>_UXRW+Y|Z;x6rujWw8$V zRm&L0woF(Tqo!QpNQj`{JS^Uq)~@o?>*H;A!(I@^s#jZi#K#Hx ze-2@6j_&e9!^04fx_Xz|sJFU+jOs7XgQ-||RL&(Cq16?}Wfuz?-w@w`IA_Gz?cLQG zW|Derbo4fihDBFg+Sp~vnBF>X06~mYvH{~`DBR`VPE^X*&VM_;yIx+@0v6ueXA}F3 zutFScS!=bH8J8`r!PPA5)^hJHjqf^qF!@-z;@C^5*&&$^tkB#ueD$DJyf}+P$&K-; zk7fM5l9QZkx#(T5H3WK)~!C! zCMr0-w$Ztwk6SKFRBMx1<%8D94@2SNU3J*LW*-OHUV{BL-gM7!p*B03j;ECE`HaMf zb7NA7b)}O(AwJ#2yWz;Gh&kg06;i-Kh-sFydTG*wILs=#yFI6PD)`p)AnSu$Uu1(Y zj|_3426;Za%bs<1wdB83Vq%Uc+z^~y$ z8fp4|VC2s53`=|W*{jRPWd4{ajcp=lgVhT7D-Lp<#^}R(lVoin$vSBTrpe%7&V5?| zxH`)z=%qTBi(X;86~2>+EHav{g&6yNynL2N*#|CJ@H-=;S_FOvNJI(bl!v20Xoiy? z-Y6bo@6Ma=w`3PjdaFA6GWmSaC90xVWFFFc9utEpYmD~MDUIXXvyvU3o6n8|2T9_A zUTn7mRt;c8P=_J-lH^)lCFj$6e>gWmYOHgW&HRJPKVMc+<*X_hEM#4~+9eL`W z$2fcR%tr0mFWYS@zzJK4l5q~KuZrwz+nWp6&4kRl$15(DFltD>@M<`2(k%y+7_ai~ zgMlsJmWh1!UD8|W*xV>oda_!6tsFH`Dp@^AV_7#kTb?-+n}9L(ukOj?m{43x_9t`M z0QPAdbl$FrXG?B32W(#>U^V?+KQJ#<6FSK!F_UozDs1&Fzzl^Zyr(_D{xRz0*o6ob zwV@~Q+%as1>WCiPy&vWN(n>aqw_gPfY3KOk&agwd0~>H(qxsCJCZNwW z14kLA!za%LpDDWDl-g|SQRhUalc(`@jB7DfPYAKFb zx3^OxAv!aUjfnK)I?c~SL}l~fB#3J0srk%glTN$3ops(uI{!}(I*#$?7PRcTIxtXr z_Na1;+l(0dER~*$9bZysHqq%Rkcwrmz~qVj#&wz}w1K3nVP?jOlB|sowwbXFAfGn^ z`+9CAY;hY@prnOE+bZYi02rMsxmYt`vsYg6&e9aNG)xD&j2#IH$G*gk4Uin$>P1UI z-sA>|h?P;LgiY2?tA4Gv$njYPHHu0Ie2u4WXUQpkq`5LcXVvc+pAGh6^wtGpLwW65 z9)mLxxRG^`$+e*YHMK5l!9fr0O-lsqnUg{T6cYR9BGFo*87mMz(Pa^YE!E&^ z@?bZp_3Y_RMA_fpkmC|U@5tXMwuySUyO(Scj3pY4Ae`okhY{dzi-pZmb|qa3 zTVnG=;>ze9Xe|pVJc(S%@>TF0vdKh|2{b&l8BqkTbDMap^(CAw&tTx@(zqOXDv**J z`b=(5Lyh2^WSdy7co~mcg3hXOmLhb}B3vDlOKM01RWi)G7 z82`|%TiNPQ)~3^BHwZg7`kMQ`K%?B=svK;GYtS+L1i!LbDgG<^s6-=U_z{7w8AuxU zeW3s&duJnxfdtq>PV#17CKS%sFug&hoRnDu-JN|8yh|9x;PxLM#(}Mk&np{x1=(pn zr+Bf2&hEpf&rbuYy;j4MN9=SMdl_#=FJ(-xq#JkjiT-*ZNTKAT0Z}*X@~FarFz*%* z`TWa^4MLZ&uLg3qY9Y4iWEYXlSP8fBtufC+%ij0lN>3uhrqf?!u~J9Y7esXVEhEwk zc?^UYggo1YnWGrgpIRwjb!MMmEy&<1< z8by8Yl8u%cy;fKy1^L>LCi67IAE+k`(n%I;P<`D}j+RTD4R=06Kbeu!GZysaais7l zU$c1w!>Lg{v-P~R_QYB)H8(2Pno7cFhS$^}un^;5$J2}2;GIiSdFv(|8Psj@OAaTF zmveBbCnj#|LM+sEXPA?w2>bH+5(oP-aK5~J)^AU_Xci%01NTGJUED~~t>ytoe z^n9zNvU#JMu8di)r3ZPNYuB^_)^DV9Q+H()a)jg_2`JyDih!}})}idZDx0W;+G-M0 zavhO3cgk+eao*>pnZowt4#CSOn|4A?jjeuSgDT) zMQE150@3Tz_Uzj`ER>wPAonuRI;$9mQyMx_8d;HQ3o) z)YNj~-{^dTfReNInk7vH$>a&(*sNr+da*uogDxKi2WuSA>dQEbiuO|2g*_9WrT($@ z^HUpP*SXRxUbdCV!fH>sqNxVjc4Ah{AJ$g@hdwKZ8l&G_h(^`tRWnfQ<7Kmt(;oBf zBJeQT=;*i5U6*O&HTnFQ;Y>99M@U6xXMbMW*!nB|npb`O;WbigshueF7-0l9It|#) zH@i{2Om?l)L8E!A?~zV979ke7k%~7|2*$ zWqv+1tX>Z<3$K4F*6B_W)t{1S5xvl_t}|*vK4Dw0E25xQmNqGD@`Utl z8|Nn;8Yj@DvFsKJDV>pX9c8%KM;mCja)IV|@hss`f2?i4fHXR;FyG4Cu50Ct=6WdP zVqWd$0wYaCVjH!0GCq!?Q*4MUhBx$OC5|y77X1oEWB-bC6h6DF%B~a0G_35r`#u z!p|L+L1T{oIDFQZF>Q#SQh*nn1czZ9JkPkDFmr-@iaiD06JZ@n@mWhFo%0B;-g&CyLKyl)Romge?SJ+PI-aJ~yQ7>>j^Cb`_JLsRS?6U0T@g zG!MJ9wr$a(9{nnCLgr!h_hj$4c+)Hc_!b={6+1t2t@P|ddF1n}LI&(Z`M`P3gm`l@ z-Uu{g;BzHbjn`Os!SvIp3ZPNtCY;JFq=-oV9b9M5l}btVWQK(fv|c5jA{%2;B+|G1 zgch_%$y8D!&cr7B(H@I|eu80C)SdOnOSyDVGv{MjwNb(sm?k$P-R$BhO8q$v(S<4?BtnQ)W&h!aeFHc?@?peAJ+FYLvr z`!&W@jz}#m4=N=Ya%{Fgzwc19HE=-X4@Yd~na-uNp)B zn`7CcY^Ywvsj1$-*@@`hNir*8PU-7Nujzsqa2~!zeki)+jZ7$Jlss>tOf=t0VKFLC zfb4FmvOLYqyhyI;BbTCVj_d9+Fp(8b`ci^B2ooxOJvr|Q5lxvF34YI3D&67-@{f-} zj50XvMpCHdHfr1F#6xFo?kC%-9^_ zI&Q#`Ym48B4SC}jP-B@nXpsb+DCRj#>nH2M2pM1U&aFs`6!k>8wH}L;%Y0tD(_^h3 zLD`aQZr#f1=t6K4(|7}Ys>UFkaJgH0Xk+$A!o&1u+d2_%H0 z_aF~JI47m7GjEG0Ih;z@y^&%pU9 zDyzj)5tx?OhsUN7itS|#6OjzWPSj$caI1Wzk6ldB+ml8Sj&8vQ;4a~!J+TE(ANR2p zn-R^7T2TMRKn@Xyu8A~p8ky8c)I{a<+OdC3k2W#nR`-tK3%n#w=XVTDxTS{f}i7&fHns>RqU)k!rsw0!kO7#&P zI~wGN=DxfHa`gSiAXk1^bT}$8>}#?GQC)Q>%~Z)S3Og<{kC9iTSl|n0^S&Ef0-71= zsI%Gv=h+lSv$%MTiwf3x3Ks@w?DA*S52yoh8#pP}Fnka0RR2+aIGwE&7|O8N?e9?X zPNn1W+0E`*Qm|5tGx3R3vzynxXiy;Hq@}uE=AZ8IAa;q)sK-*P$djWxNA%N0gZiFC z%M9Ye<1Zlpl=N}-qB3VVKQ<;Bb%#yj4*>&q()s8`CglMr-SeDn)U6D9xH=FN!7*x3 zEfey4L+NZ&q|DCxbnO&KCVbXv(Dak+5k_>cISD3F3>o9Z7(7gHeEJX0JXPHNTBHUL z*-1@rEqYrjIqoAcP)uYVJT^mE(mV}ro$YJFs7oGpMG|kVp#%yoX$uB__&V_ zy*(~iT`*@GUbtNOd@uR={StGigVyrEjJ3$~^fYBZEtS_r6MK82O!4d9HBH4eq$C)g zmuRSRxwsN7@=+}sG-h|LxveBo zqlZCkpE9c6o{wDHxY5ufuo2G{YfLa!FV7=o_+Szr9GfFI;S17Kx9y_)Hc-M+oXErB+h%5x$>H)%Zt{IO9KBZpA8XsL zKQd`6%glr|xm}A(Nr9-9vaF*nT{5UbiSy-KI4MJGYtJ1l#n}57s*+k`sWjAQQDWzb$3Dd`?o_-FGh`ehYTK>ePTdKVuzNsE z5x5~M8Ryt!Rm5>!Fdu?Ti|=;3kr1@x%LS@CE2u}#G1T@O)EV(}zU!;dXHMh`0+rJ! zPK88^klco#-X&31ocANmZVF1Z-@tZB<#J{p{WA0b1Jwx}XFMZ5jOQ6ePon(Cark7J zuOJ89?^yLwCQqSmHNkj@)4-3E{*=I8N$k4rFNB)&$9Q)YD;h)`-D%+@LrRX_yMu*9 z3$ziKGtz2fdb-SI@UD$#!YvO3{@{2|kP2r%M>rs$F`ndDbYD(M6$fTcer3?E5Z%jI zf>Np&>K-<^7~9A|AE~B>9qMO#qg{115h_u!n7NF2kLJf0t{p#?6U!MUvyjzu#2Rk> z-kiDLRv(JJdE>#e48rMP`6!Grc@r1or^q$ex-^$cW}Jg%%>4qm=V+;_=S?a(pPulf zz9cxNViRPLO^Y%)jc{s_r!(zxmmJ$>qbJHO)Y@H4K-nw3p_(AYASV%9-<6xJGUscu zDW0^xmFv#dm_h`3=bn_S6rK4*voJpqOU&UKuHqHGc!8^RpoS1tUr`6jK{JG}MbS06 zcq^2<$f#^GDg9tK)%lRY?b)KT;`St6o8PE(zymeLsnM6b z7@jgt%*3?5&dEf(R=t%P&~=@LZTgw!2l(ect1rYx`Mbwp9qm-30zmO;NN)NZoy|HZ zO3n7^X!0ZRE538G@zu9WK-DJNQH^l;N$G&0T_IdIn8mTee28_^?-aiWJJ(;T5=a*X z2~KmU2!3Et$b>v6zt+3!um%oVnildJ8*$|L$%wa%XZj7wMm>hPl&$B(gc_We7R{(G zsutX2#(;Wibf+%&S}jSAw3yqyBfWQ}Gu(#722s=&r6t8~d4)~P?yFjj{>@T-6o$t~ zK^Z_Dty6B-XK4TYopJ`1i5k1H$a9WvKBf=0s?Nr(ci0FqR-^8?yl`v#3eaLNarCUO z^Sp@Yr~}vK>qWF4yz?kKkr}6eEhB^Ko!EKffM@Wz)l`2|mJxg*T~*zPB&>?#0!(C( zQ}zQXL-LlEdz5$1C*8_PO=ubvQu;X3sky=!;z!PHf99xq^3=lc90($hrjW){C zt$BtAh1UL%OVw1^m|mTFNUbS76R}EE_W$F#jFkyhpe(5nm?<}NDI~$p{kp^;q)WZ* zOPdsKrRpxYgIMl>+XBhBOse!<9HKZdNKj#Ku%%*9r6{)W90rJ&U3+EZn{Sf^IKhpTTbf6Ru*pZLFKJf@vl z0|gmJQua9NY#)cu2-(py-PLP(PKoa=+$+|H>|lD89tDeUepC5LLtTSJC0>}D6#HrL z0=bRUt5DTZ%MH8emz!DIk&)^uoT%ZrA0PBMFNWI|OOX?O{HIh0%U7G_BuXmpr2I^6zYW7NoszOl45s6f}x_C!SwtcOrY}?a-?Wx(XQ%?oSo|D$!Amh za_@?k6En73%wl%jkDHyfs^JT-uW*Zvli5WcWxJ&Z8z^6wkOVaq5%~apH6q>h)}Wp5 zpuX=EMH+AbfXqoab?||TcKtodZvcyt3xne5J z(v>C#T7Hd61A2KZ6+j<4b%Xp(5Bq{_f3kR^TU`W=se8XJCwn?h1LeXs^QBi)kZIMM zAD6V7skoEvHP~jNXM$zu7g#%8<&J-Ef|lO}bs!80!vy%_0p zdnQtU885Q9Ze?3}RBnRIQs0JS7t~KA`y3HFifh@LG^LAKr$D;OU)STtN-(C5`DPS) zl5L~q+5lEQc%IoqRZ*X+WZ3KhO{)Ue6k#>Gu6odaYYDdgCh6#1ApeH}_d9ZHgVKQ6 zXL}G_Roh%EP+G9U$|SH?^yvrllgce1cs4y zQjU(4L4JpbZEx|a1y)KR)-=3QCiV|I1ItKVE{xYsr)RAWH{F>Gbey-32p#XivhwLu zq_zOp^fUXQF_IHjtTJKH<*g?jB}U6xU>CEBr1MSTD+BJeIC#5nm#*!p*g+5SfgW{R zsK{f^_qMM1u?$AhVU{urSJRj9pW(lJvya^Fggtu_30yv-^g3!RNJ0Moo z^f8Q0w)5!_$3-~uh`ul(B=OP-Pl2MDvjGpW-GYS|!QW#Rw@RwuQdjMSA8H_hfrfM6 zW`N4?j(%*^mOR=0DQ#5V=fbCc_R=HXv=74MnFcn+&FBmRFtgk-!pSQU9TMPt#f|~A ziQR17RVxoK#6otaM%&y1C})}vZoa#A7QVb8P-SSLUF&3fd9N3EyH{tuF5j=8hJbw} zf_;n|)Ygw3VU?4Ijn8X%+9qwZTStYKRvlX^Uz39YfDJBca{-jziT)w$3HpZ{bdt~9 z)KsS!0O*{Tb7i3D6(E-Vzz;aTiGs0oj<<27w?t| zKtZ)7QcrZ?=;6wkg9*EB(0L+Rhb}KZ(4S+*4C%?j0Mjl$AM}ZY(WysAfe0ryuIF^L z8qLo4aw6ao1mg4CQU=URYS`VtMrpe+LLEhwR>o>?9yMZ9p-eF7mTju6vY2*`U>VJiIJk&2k4y zZlxhL`Fm~id#4>o0!saYC8(j;IaYseatu*ZgE@DRLf}>4WCiTJ`C@WGyjyUv2X&5@ z<_WgG41~B}3@ty-Q<)8W3_G-~+ElCKP>m5{wY8vN#uG9IjQ&b&p3w2Mb3}lNaT%Xz z;fr22U=)hx^W0jg3*ZXX^_pTCzZE8#Tw~$7sLw#T6^EJ zT$5(LqH$6HQLWij-x>7z>dERQ03ad6TP6Fg&nJu!{OZuNu1=g2;-O!$7ez0!Sgyx+ z`H2`f00f3S(FREM1Cmrr0!EN`kL;`}8z-b9206X;Tk zZbf$?qyj?H;@`U^%4DTE#(UomBs-Ex*CUdA0FW|BQp*x>n&yLQ`90+s|F4tkm|fTd zLyTw*01}*%U5EH_&}UJ!rkxX@DFR#6xdT_Dhtozx zB@tj);F7V9Dc`DiDRFMiefb>pLUR!+-lEmscd6=_axn+ikLwckh57L+fHUhDBM_T`w9{IEh_)EfP zxzajz`*&`+7lXjB91d|~)x2zAmvZRPAr>*!E6O*mFab5ddP6gw^OdBLg}Gl7hH+I{ zq{A*aGV_tjXtf3vJ?sf8Jz{@w6`R%xn1@qw%*8JMhHxSQAlz|`jTVux6p|~Um66`y z{wnq+mjvcl6<2@kr)Yv|c_}GjflFTwupk}y%NOHqS8w^E;c(pumK?q0EEOjpzc+|au1eY*S zv`Xz%uY)(VZtj|aS=_Fw^BO2s>Xk*!dHYwtS|*GI30BzWU!3_$-Tr3G;aX2pHialN;0va{&^|i*y;( zBS)_80$7G|cuFZSL8sN6b;vz$N8vXMg5`5#wgFB=a4y{Oq7Fk#)UrwNC8|Yisd`f( zL?gqckV2lecsIq8fiKoBN@WBhm_8{EZ_dc+O1KtCkq^MDu8uZWX8#gVJ`B|(jLg#oksF#(}YQEAZ-ABIx-3OTNpF}>L&pZuZ|bqGuH;Rn6u5@EQOjZSER z1*oi_-Xeh+Rn06q`N`rd2dK7~sx_r|zVx9mpU4=-gma$I+~$?1-PJes>kPDQ@ea!o;dA%==pjs4z2f>#*#gj`qd zcK3_|a1a<+HT=b%FQsY3&YAdAqA(z)&C~5vGyOj1~T)z_=d-AVB7 zRhQ&9FgyFT{^-f_zDtO0Q(y~QE2poW+F(gHQuX6h^uPC(*W{h=_S9KH{Pg=(C@WWU z+)^4_?8GJsC34;fQNDDr#&rlec#)(iO-?jl`6~xie~U7W_q7{YY*QK}jN=(czG2V( z2$h@*Pvwdr!Ts|Of^6tvT)`GkZ-F{L?Br8rJhiN1s5O-_D3FkMiX;KFNGCMKnE4pV zZwANQCF1O2*mJ~Y(;EcIuFO+NgD%eMzMa3%)j!cV40Rf5fl64SC8 zQ$EUilbJD7mR^7+>>8{4O&beeywSK}U=qXEK7m5jpxB|jyFMm$pTYTaHL3$u5G_u6 z;n7DGiF#r?WsKV32%X-jPWwfw;f2lVPB4q;8pi8!KHOy1 zR90=)5@gSI6pXMJ!>L`V-l#Rb1!+>hkj3+(6*EJehXio0BZwQB?l+FqyQs&C)$0_p69t^w~Q`4{o4i=Bv_#3ZGnxA|C-E_Y|c1R{$?Ah{*Ke^44NJ~f9VSjuDYsu7Kj#f8} zeY7V1alGleAn@8MmofNOJSd=CihWGG+1_8Hmq_g0^Vw5}c_g`Y#6CG>BLpqD%KUJ_ zZtTJuSxZf{J+;lJ)}1J7E2_J&f_L`(8@U{Jd71%q@RXzthlX>Tkn)Y4&PxUpMIEGL z?>aW|`KCo3oKqt=i!9TJvlik~&=5Sw9o@hpt5+QCpGin|Y^Vh zVj5O4DX-jI#9yJP&)JxDx_<>w5Yr;}baP1@2Tq1~msx!)GB>_HO>AH`#!i*p6x1_2 zctgwSyt^Mji3L~@kyEhc8jEV!1-C$*UZI4olqd^b)v`K^J9bAK2R4drV!HeSO~cnX z4c?=${4^g*b9&bcGunC}9W#U|#Bvl?*kFR;Nu1C5!Az8HhN+TCQWsTjo9C5U$#7Qg z{EE&@Z9H#w&YNklIKj0@-%gal=fw+((#cX>?r7Os%e~daKG1R0sg37h;u$4n4lr3c zd?g>x#6QA77d*!SBn--~=WqOs??vLMw|^p^;i`^&kcF3q z#F*Qiq+CR{5od^-|3#6(o-sYNZs4?bUE4Tocn4QJ`UXKw11{P1`E**Rf(~*gT;8+o zVE?+=X%ILyUNi{W_qWXKA-0W0N)=dB5u|gtWHAL2do0Z^XKp;|$P93wjpoNnP3yZY z%H$JH_NNiHWV8uIX8PM2d^ zEjl}X#sUiwk3=PIWqzbSXm3HQ#v=Xo*@6fQy7(n!=NYBBK}GDFNNRq7_@24q>F|IO zCB8Hrt|<_b4io?0l=Gw*$e5I=eDjaqsc#@`^2w3I2f6)Q7V#VUoP?||Zso}l16Rn7 zQ!l;~;NpEIpwtUD!qCct8^s!v2yy4yaiVu%xNgxSQK@S?sgOF+ZpEepCM?iw{&jJ$jC_9s2y2VprvJxaK zQM~XfCu|(sUVLE;fS2OIF4anZsz3YfcLi z#c)tRC^J3Ryx%|deK`CC2q+DNf8u^XnR5_Qesvb8H=AAHR!IPSz6R*znIdxE>pVBu z)w4F|%Zo=>IZ_$R0YGG2hyW%_dT*Q1CS)+V4Dw$R@lLf~SbE8EFCSx+09jo^7MCube`nVKd5;v(4Dqk0hJ{+A!HFW-NSfQB_d z5o^Ib#=r6GPaJiyonf2QLZyfJpxV0(uZ3)oGu$;nC;poF6VUOgrC}Ah>AexI zXOFH~A6mss2C>AE^03v8wHvduKn`t4jTfuT;W~?6F{L*ul87Kk#pQy&q>jhD==ZrL zJ%pS&Em0ewurfr^K@{XfrO zG2_X#Dz#rJJKW3n^_XVJW38ldPO%JL=w`5~?S zW|d+^0>GCOXxj~dRYpRg_87_NSsG@pR{8qt0HL%R)f zC?>9{r@H4}97TWJ20wT5JZR}sY|D|5z_C}zoY7AkqBmyk`6G#t2Rf)J(MIgXQ61jy zEK{}<72i}G0G)#--_2Zf*Sw*1w)=CrXwf`TXT>?a=-7_A!Ik&6@KnQTV>@U6g^N22 zyzZm^!;=3hWuV)^6gND$uOMfE)c(3;ucdy-nE7U}S%R0ilt3>db@cq&iL}c11qlfB z9Q^RaLV<+L@xXY(*1)k9b z-UYtm2^9~@AAIuX2c!WP2+*S7^ua&M4h7TX046BLm-$YLChJn^^U~2Q#&q;F|vFP57Q66)u%sKQtc$Dc#1FKJA^AHlzh!=7@conNM75g??~5~zZSV(FrfR& zl(npZq=-79MOGLj*X%}R*TG!Oz%S)Whb)T5e)kAAhPcr*vPL4kI{QEjV zqrQPz?C@@{gJW7%Oqc$<${*|H8hTrzLM^YWI=l}c)5mS=`e-LpRI;y2D_RZZ}d z$H~;xO8#l>GxSpiq=y=x;PlrAl5k@_iDO9;VN;1~q3c^u%1x!~WaYo(;_Yommq~*1m!^8WUaGwGG$rAe`sU((!!iV=;>;Jc3AfJOXHCUtz zS^u|x++R!mMUoNI#+ChZm-grI^IFWNNsHF7Kl=0VzUT8#M^Fd~BFfahQis1$??3+H zbR~d9K4%>M=aCry*n#iQc%lvD=c2pAk8?i$s%2^9gLXQtnH{ByGZVdTHta6p*; z6LtT)4gZNU2ZZsz(y*_2{(~@+X!ZX_DeWD7@$$2V%CgE7D4-ouy{d5q{hL|f{{zYA B??M0o literal 0 HcmV?d00001 diff --git a/spring-batch-docs/asciidoc/spring-batch-integration.adoc b/spring-batch-docs/asciidoc/spring-batch-integration.adoc index 5eba5b80f..d3ae66f8e 100644 --- a/spring-batch-docs/asciidoc/spring-batch-integration.adoc +++ b/spring-batch-docs/asciidoc/spring-batch-integration.adoc @@ -771,7 +771,6 @@ public org.apache.activemq.ActiveMQConnectionFactory connectionFactory() { /* * Configure outbound flow (requests going to workers) */ - @Bean public DirectChannel requests() { return new DirectChannel(); @@ -788,7 +787,6 @@ public IntegrationFlow outboundFlow(ActiveMQConnectionFactory connectionFactory) /* * Configure inbound flow (replies coming from workers) */ - @Bean public QueueChannel replies() { return new QueueChannel(); @@ -805,7 +803,6 @@ public IntegrationFlow inboundFlow(ActiveMQConnectionFactory connectionFactory) /* * Configure the ChunkMessageChannelItemWriter */ - @Bean public ItemWriter itemWriter() { MessagingTemplate messagingTemplate = new MessagingTemplate(); @@ -883,7 +880,6 @@ public org.apache.activemq.ActiveMQConnectionFactory connectionFactory() { /* * Configure inbound flow (requests coming from the master) */ - @Bean public DirectChannel requests() { return new DirectChannel(); @@ -900,7 +896,6 @@ public IntegrationFlow inboundFlow(ActiveMQConnectionFactory connectionFactory) /* * Configure outbound flow (replies going to the master) */ - @Bean public DirectChannel replies() { return new DirectChannel(); @@ -917,7 +912,6 @@ public IntegrationFlow outboundFlow(ActiveMQConnectionFactory connectionFactory) /* * Configure the ChunkProcessorChunkHandler */ - @Bean @ServiceActivator(inputChannel = "requests", outputChannel = "replies") public ChunkProcessorChunkHandler chunkProcessorChunkHandler() { @@ -944,6 +938,88 @@ when it receives chunks from the master. For more information, see the section of the "Scalability" chapter on link:$$http://docs.spring.io/spring-batch/reference/html/scalability.html#remoteChunking$$[Remote Chunking]. +Starting from version 4.1, Spring Batch Integration introduces the `@EnableBatchIntegration` +annotation that can be used to simplify remote chunking setup. This annotation provides +two beans that can be autowired in the application context: + +* `RemoteChunkingMasterStepBuilderFactory`: used to configure the master step +* `RemoteChunkingWorkerBuilder`: used to configure the remote worker integration flow + +These APIs will take care of configuring a number of components as described in the following diagram: + +.Remote Chunking Configuration +image::{batch-asciidoc}images/remote-chunking-config.png[Remote Chunking Configuration, scaledwidth="80%"] + +On the master side, the `RemoteChunkingMasterStepBuilderFactory` allows you to +configure a master step by declaring: + +* the item reader to read items and send them to workers +* the output channel ("Outgoing requests") to send requests to workers +* the input channel ("Incoming replies") to receive replies from workers + +There is no need anymore to explicitly configure the `ChunkMessageChannelItemWriter` +and the `MessagingTemplate` (Those can still be explicitly configured if required). + +On the worker side, the `RemoteChunkingWorkerBuilder` allows you to configure a worker to: + +* listen to requests sent by the master on the input channel ("Incoming requests") +* call the `handleChunk` method of `ChunkProcessorChunkHandler` for each request +with the configured `ItemProcessor` and `ItemWriter` +* send replies on the output channel ("Outgoing replies") to the master + +There is no need anymore to explicitly configure the `SimpleChunkProcessor` +and the `ChunkProcessorChunkHandler` (Those can still be explicitly configured if required). + +The following example shows how to use these APIs: + +[source, java] +---- +@EnableBatchIntegration +public class RemoteChunkingJobConfiguration { + + @Configuration + public static class MasterConfiguration { + + @Autowired + private RemoteChunkingMasterStepBuilderFactory masterStepBuilderFactory; + + @Bean + public TaskletStep masterStep() { + return this.masterStepBuilderFactory.get("masterStep") + .chunk(100) + .reader(itemReader()) + .outputChannel(requests()) // requests sent to workers + .inputChannel(replies()) // replies received from workers + .build(); + } + + // Middleware beans setup omitted + + } + + @Configuration + public static class WorkerConfiguration { + + @Autowired + private RemoteChunkingWorkerBuilder workerBuilder; + + @Bean + public IntegrationFlow workerFlow() { + return this.workerBuilder + .itemProcessor(itemProcessor()) + .itemWriter(itemWriter()) + .inputChannel(requests()) // requests received from the master + .outputChannel(replies()) // replies sent to the master + .build(); + } + + // Middleware beans setup omitted + + } + +} +---- + You can find a complete example of a remote chunking job link:$$https://github.com/spring-projects/spring-batch/tree/master/spring-batch-samples#remote-chunking-sample$$[here]. diff --git a/spring-batch-integration/src/main/java/org/springframework/batch/integration/chunk/RemoteChunkingMasterStepBuilder.java b/spring-batch-integration/src/main/java/org/springframework/batch/integration/chunk/RemoteChunkingMasterStepBuilder.java new file mode 100644 index 000000000..a87f9182a --- /dev/null +++ b/spring-batch-integration/src/main/java/org/springframework/batch/integration/chunk/RemoteChunkingMasterStepBuilder.java @@ -0,0 +1,403 @@ +/* + * Copyright 2018 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.batch.integration.chunk; + +import org.springframework.batch.core.ChunkListener; +import org.springframework.batch.core.ItemReadListener; +import org.springframework.batch.core.ItemWriteListener; +import org.springframework.batch.core.SkipListener; +import org.springframework.batch.core.StepExecutionListener; +import org.springframework.batch.core.repository.JobRepository; +import org.springframework.batch.core.step.builder.FaultTolerantStepBuilder; +import org.springframework.batch.core.step.builder.StepBuilder; +import org.springframework.batch.core.step.item.KeyGenerator; +import org.springframework.batch.core.step.skip.SkipPolicy; +import org.springframework.batch.core.step.tasklet.TaskletStep; +import org.springframework.batch.item.ItemReader; +import org.springframework.batch.item.ItemStream; +import org.springframework.batch.item.ItemWriter; +import org.springframework.batch.repeat.CompletionPolicy; +import org.springframework.batch.repeat.RepeatOperations; +import org.springframework.batch.repeat.exception.ExceptionHandler; +import org.springframework.integration.channel.DirectChannel; +import org.springframework.integration.core.MessagingTemplate; +import org.springframework.messaging.PollableChannel; +import org.springframework.retry.RetryPolicy; +import org.springframework.retry.backoff.BackOffPolicy; +import org.springframework.retry.policy.RetryContextCache; +import org.springframework.transaction.PlatformTransactionManager; +import org.springframework.transaction.interceptor.TransactionAttribute; +import org.springframework.util.Assert; + +/** + * Builder for a master step in a remote chunking setup. This builder creates and + * sets a {@link ChunkMessageChannelItemWriter} on the master step. + * + * If no messagingTemplate is provided through + * {@link RemoteChunkingMasterStepBuilder#messagingTemplate(MessagingTemplate)}, + * this builder will create one. The outputChannel set with + * {@link RemoteChunkingMasterStepBuilder#outputChannel(DirectChannel)} will be + * used as a default channel of the messaging template and will override any default + * channel already set on the messaging template. + * + * @param type of input items + * @param type of output items + * + * @since 4.1 + * @author Mahmoud Ben Hassine + */ +public class RemoteChunkingMasterStepBuilder extends FaultTolerantStepBuilder { + + private MessagingTemplate messagingTemplate; + private PollableChannel inputChannel; + private DirectChannel outputChannel; + + private final int DEFAULT_MAX_WAIT_TIMEOUTS = 40; + private static final long DEFAULT_THROTTLE_LIMIT = 6; + private int maxWaitTimeouts = DEFAULT_MAX_WAIT_TIMEOUTS; + private long throttleLimit = DEFAULT_THROTTLE_LIMIT; + + /** + * Create a new {@link RemoteChunkingMasterStepBuilder}. + * + * @param stepName name of the master step + */ + public RemoteChunkingMasterStepBuilder(String stepName) { + super(new StepBuilder(stepName)); + } + + /** + * Set the input channel on which replies from workers will be received. + * The provided input channel will be set as a reply channel on the + * {@link ChunkMessageChannelItemWriter} created by this builder. + * + * @param inputChannel the input channel + * @return this builder instance for fluent chaining + * + * @see ChunkMessageChannelItemWriter#setReplyChannel + */ + public RemoteChunkingMasterStepBuilder inputChannel(PollableChannel inputChannel) { + Assert.notNull(inputChannel, "inputChannel must not be null"); + this.inputChannel = inputChannel; + return this; + } + + /** + * Set the output channel on which requests to workers will be sent. + * The output channel will be set as a default channel on the provided + * {@link MessagingTemplate} trough {@link RemoteChunkingMasterStepBuilder#messagingTemplate(MessagingTemplate)} + * (or the one created by this builder if no messaging template is provided). + * + * @param outputChannel the output channel. + * @return this builder instance for fluent chaining + * + * @see RemoteChunkingMasterStepBuilder#messagingTemplate(MessagingTemplate) + */ + public RemoteChunkingMasterStepBuilder outputChannel(DirectChannel outputChannel) { + Assert.notNull(outputChannel, "outputChannel must not be null"); + this.outputChannel = outputChannel; + return this; + } + + /** + * Set the {@link MessagingTemplate} to use to send data to workers. + * + *

The default destination of the messaging template will be + * overridden by the output channel provided through + * {@link RemoteChunkingMasterStepBuilder#outputChannel(DirectChannel)}.

+ * + * @param messagingTemplate the messaging template to use + * @return this builder instance for fluent chaining + */ + public RemoteChunkingMasterStepBuilder messagingTemplate(MessagingTemplate messagingTemplate) { + Assert.notNull(messagingTemplate, "messagingTemplate must not be null"); + this.messagingTemplate = messagingTemplate; + return this; + } + + /** + * The maximum number of times to wait at the end of a step for a non-null result from the remote workers. This is a + * multiplier on the receive timeout set separately on the gateway. The ideal value is a compromise between allowing + * slow workers time to finish, and responsiveness if there is a dead worker. Defaults to 40. + * + * @param maxWaitTimeouts the maximum number of wait timeouts + * @see ChunkMessageChannelItemWriter#setMaxWaitTimeouts(int) + */ + public RemoteChunkingMasterStepBuilder maxWaitTimeouts(int maxWaitTimeouts) { + Assert.isTrue(maxWaitTimeouts > 0, "maxWaitTimeouts must be greater than zero"); + this.maxWaitTimeouts = maxWaitTimeouts; + return this; + } + + /** + * Public setter for the throttle limit. This limits the number of pending requests for chunk processing to avoid + * overwhelming the receivers. + * + * @param throttleLimit the throttle limit to set + * @see ChunkMessageChannelItemWriter#setThrottleLimit(long) + */ + public RemoteChunkingMasterStepBuilder throttleLimit(long throttleLimit) { + Assert.isTrue(throttleLimit > 0, "throttleLimit must be greater than zero"); + this.throttleLimit = throttleLimit; + return this; + } + + /** + * Build a master {@link TaskletStep}. + * + * @return the configured master step + * @see RemoteChunkHandlerFactoryBean + */ + public TaskletStep build() { + Assert.notNull(this.inputChannel, "An InputChannel must be provided"); + Assert.notNull(this.outputChannel, "An OutputChannel must be provided"); + + // configure messaging template + if (this.messagingTemplate == null) { + this.messagingTemplate = new MessagingTemplate(); + } + this.messagingTemplate.setDefaultChannel(this.outputChannel); + + // configure item writer + ChunkMessageChannelItemWriter chunkMessageChannelItemWriter = new ChunkMessageChannelItemWriter<>(); + chunkMessageChannelItemWriter.setMessagingOperations(this.messagingTemplate); + chunkMessageChannelItemWriter.setMaxWaitTimeouts(this.maxWaitTimeouts); + chunkMessageChannelItemWriter.setThrottleLimit(this.throttleLimit); + chunkMessageChannelItemWriter.setReplyChannel(this.inputChannel); + super.writer(chunkMessageChannelItemWriter); + + return super.build(); + } + + /* + * The following methods override those from parent builders and return + * the current builder type. + * FIXME: Change parent builders to be generic and return current builder + * type in each method. + */ + + @Override + public RemoteChunkingMasterStepBuilder reader(ItemReader reader) { + super.reader(reader); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder repository(JobRepository jobRepository) { + super.repository(jobRepository); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder transactionManager(PlatformTransactionManager transactionManager) { + super.transactionManager(transactionManager); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder listener(Object listener) { + super.listener(listener); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder listener(SkipListener listener) { + super.listener(listener); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder listener(ChunkListener listener) { + super.listener(listener); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder transactionAttribute(TransactionAttribute transactionAttribute) { + super.transactionAttribute(transactionAttribute); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder listener(org.springframework.retry.RetryListener listener) { + super.listener(listener); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder keyGenerator(KeyGenerator keyGenerator) { + super.keyGenerator(keyGenerator); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder retryLimit(int retryLimit) { + super.retryLimit(retryLimit); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder retryPolicy(RetryPolicy retryPolicy) { + super.retryPolicy(retryPolicy); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder backOffPolicy(BackOffPolicy backOffPolicy) { + super.backOffPolicy(backOffPolicy); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder retryContextCache(RetryContextCache retryContextCache) { + super.retryContextCache(retryContextCache); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder skipLimit(int skipLimit) { + super.skipLimit(skipLimit); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder noSkip(Class type) { + super.noSkip(type); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder skip(Class type) { + super.skip(type); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder skipPolicy(SkipPolicy skipPolicy) { + super.skipPolicy(skipPolicy); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder noRollback(Class type) { + super.noRollback(type); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder noRetry(Class type) { + super.noRetry(type); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder retry(Class type) { + super.retry(type); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder stream(ItemStream stream) { + super.stream(stream); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder chunk(int chunkSize) { + super.chunk(chunkSize); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder chunk(CompletionPolicy completionPolicy) { + super.chunk(completionPolicy); + return this; + } + + /** + * This method will throw a {@link UnsupportedOperationException} since + * the item writer of the master step in a remote chunking setup will be + * automatically set to an instance of {@link ChunkMessageChannelItemWriter}. + * + * When building a master step for remote chunking, no item writer must be + * provided. + * + * @throws UnsupportedOperationException if an item writer is provided + * @see ChunkMessageChannelItemWriter + * @see RemoteChunkHandlerFactoryBean#setChunkWriter(ItemWriter) + */ + @Override + public RemoteChunkingMasterStepBuilder writer(ItemWriter writer) throws UnsupportedOperationException { + throw new UnsupportedOperationException("When configuring a master step " + + "for remote chunking, the item writer will be automatically set " + + "to an instance of ChunkMessageChannelItemWriter. The item writer " + + "must not be provided in this case."); + } + + @Override + public RemoteChunkingMasterStepBuilder readerIsTransactionalQueue() { + super.readerIsTransactionalQueue(); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder listener(ItemReadListener listener) { + super.listener(listener); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder listener(ItemWriteListener listener) { + super.listener(listener); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder chunkOperations(RepeatOperations repeatTemplate) { + super.chunkOperations(repeatTemplate); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder exceptionHandler(ExceptionHandler exceptionHandler) { + super.exceptionHandler(exceptionHandler); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder stepOperations(RepeatOperations repeatTemplate) { + super.stepOperations(repeatTemplate); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder startLimit(int startLimit) { + super.startLimit(startLimit); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder listener(StepExecutionListener listener) { + super.listener(listener); + return this; + } + + @Override + public RemoteChunkingMasterStepBuilder allowStartIfComplete(boolean allowStartIfComplete) { + super.allowStartIfComplete(allowStartIfComplete); + return this; + } +} diff --git a/spring-batch-integration/src/main/java/org/springframework/batch/integration/chunk/RemoteChunkingMasterStepBuilderFactory.java b/spring-batch-integration/src/main/java/org/springframework/batch/integration/chunk/RemoteChunkingMasterStepBuilderFactory.java new file mode 100644 index 000000000..a8dca82b3 --- /dev/null +++ b/spring-batch-integration/src/main/java/org/springframework/batch/integration/chunk/RemoteChunkingMasterStepBuilderFactory.java @@ -0,0 +1,61 @@ +/* + * Copyright 2018 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.batch.integration.chunk; + +import org.springframework.batch.core.repository.JobRepository; +import org.springframework.transaction.PlatformTransactionManager; + +/** + * Convenient factory for a {@link RemoteChunkingMasterStepBuilder} which sets + * the {@link JobRepository} and {@link PlatformTransactionManager} automatically. + * + * @since 4.1 + * @author Mahmoud Ben Hassine + */ +public class RemoteChunkingMasterStepBuilderFactory { + + private JobRepository jobRepository; + + private PlatformTransactionManager transactionManager; + + /** + * Create a new {@link RemoteChunkingMasterStepBuilderFactory}. + * + * @param jobRepository the job repository to use + * @param transactionManager the transaction manager to use + */ + public RemoteChunkingMasterStepBuilderFactory( + JobRepository jobRepository, + PlatformTransactionManager transactionManager) { + + this.jobRepository = jobRepository; + this.transactionManager = transactionManager; + } + + /** + * Creates a {@link RemoteChunkingMasterStepBuilder} and initializes its job + * repository and transaction manager. + * + * @param name the name of the step + * @return a {@link RemoteChunkingMasterStepBuilder} + */ + public RemoteChunkingMasterStepBuilder get(String name) { + return new RemoteChunkingMasterStepBuilder(name) + .repository(this.jobRepository) + .transactionManager(this.transactionManager); + } + +} diff --git a/spring-batch-integration/src/main/java/org/springframework/batch/integration/chunk/RemoteChunkingWorkerBuilder.java b/spring-batch-integration/src/main/java/org/springframework/batch/integration/chunk/RemoteChunkingWorkerBuilder.java new file mode 100644 index 000000000..c19e3f285 --- /dev/null +++ b/spring-batch-integration/src/main/java/org/springframework/batch/integration/chunk/RemoteChunkingWorkerBuilder.java @@ -0,0 +1,131 @@ +/* + * Copyright 2018 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.batch.integration.chunk; + +import org.springframework.batch.core.step.item.SimpleChunkProcessor; +import org.springframework.batch.item.ItemProcessor; +import org.springframework.batch.item.ItemWriter; +import org.springframework.batch.item.support.PassThroughItemProcessor; +import org.springframework.integration.channel.DirectChannel; +import org.springframework.integration.dsl.IntegrationFlow; +import org.springframework.integration.dsl.IntegrationFlows; +import org.springframework.util.Assert; + +/** + * Builder for a worker in a remote chunking setup. This builder: + * + *
    + *
  • creates a {@link ChunkProcessorChunkHandler} with the provided + * item processor and writer. If no item processor is provided, a + * {@link PassThroughItemProcessor} will be used
  • + *
  • creates an {@link IntegrationFlow} with the + * {@link ChunkProcessorChunkHandler} as a service activator which listens + * to incoming requests on inputChannel and sends replies + * on outputChannel
  • + *
+ * + * @param type of input items + * @param type of output items + * + * @since 4.1 + * @author Mahmoud Ben Hassine + */ +public class RemoteChunkingWorkerBuilder { + + private static final String SERVICE_ACTIVATOR_METHOD_NAME = "handleChunk"; + + private ItemProcessor itemProcessor; + private ItemWriter itemWriter; + private DirectChannel inputChannel; + private DirectChannel outputChannel; + + /** + * Set the {@link ItemProcessor} to use to process items sent by the master + * step. + * + * @param itemProcessor to use + * @return this builder instance for fluent chaining + */ + public RemoteChunkingWorkerBuilder itemProcessor(ItemProcessor itemProcessor) { + Assert.notNull(itemProcessor, "itemProcessor must not be null"); + this.itemProcessor = itemProcessor; + return this; + } + + /** + * Set the {@link ItemWriter} to use to write items sent by the master step. + * + * @param itemWriter to use + * @return this builder instance for fluent chaining + */ + public RemoteChunkingWorkerBuilder itemWriter(ItemWriter itemWriter) { + Assert.notNull(itemWriter, "itemWriter must not be null"); + this.itemWriter = itemWriter; + return this; + } + + /** + * Set the input channel on which items sent by the master are received. + * + * @param inputChannel the input channel + * @return this builder instance for fluent chaining + */ + public RemoteChunkingWorkerBuilder inputChannel(DirectChannel inputChannel) { + Assert.notNull(inputChannel, "inputChannel must not be null"); + this.inputChannel = inputChannel; + return this; + } + + /** + * Set the output channel on which replies will be sent to the master step. + * + * @param outputChannel the output channel + * @return this builder instance for fluent chaining + */ + public RemoteChunkingWorkerBuilder outputChannel(DirectChannel outputChannel) { + Assert.notNull(outputChannel, "outputChannel must not be null"); + this.outputChannel = outputChannel; + return this; + } + + /** + * Create an {@link IntegrationFlow} with a {@link ChunkProcessorChunkHandler} + * configured as a service activator listening to the input channel and replying + * on the output channel. + * + * @return the integration flow + */ + public IntegrationFlow build() { + Assert.notNull(this.itemWriter, "An ItemWriter must be provided"); + Assert.notNull(this.inputChannel, "An InputChannel must be provided"); + Assert.notNull(this.outputChannel, "An OutputChannel must be provided"); + + if(this.itemProcessor == null) { + this.itemProcessor = new PassThroughItemProcessor(); + } + SimpleChunkProcessor chunkProcessor = new SimpleChunkProcessor<>(this.itemProcessor, this.itemWriter); + + ChunkProcessorChunkHandler chunkProcessorChunkHandler = new ChunkProcessorChunkHandler<>(); + chunkProcessorChunkHandler.setChunkProcessor(chunkProcessor); + + return IntegrationFlows + .from(this.inputChannel) + .handle(chunkProcessorChunkHandler, SERVICE_ACTIVATOR_METHOD_NAME) + .channel(this.outputChannel) + .get(); + } + +} diff --git a/spring-batch-integration/src/main/java/org/springframework/batch/integration/config/annotation/BatchIntegrationConfiguration.java b/spring-batch-integration/src/main/java/org/springframework/batch/integration/config/annotation/BatchIntegrationConfiguration.java new file mode 100644 index 000000000..087e6401d --- /dev/null +++ b/spring-batch-integration/src/main/java/org/springframework/batch/integration/config/annotation/BatchIntegrationConfiguration.java @@ -0,0 +1,59 @@ +/* + * Copyright 2018 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.batch.integration.config.annotation; + +import org.springframework.batch.core.repository.JobRepository; +import org.springframework.batch.integration.chunk.RemoteChunkingMasterStepBuilderFactory; +import org.springframework.batch.integration.chunk.RemoteChunkingWorkerBuilder; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.transaction.PlatformTransactionManager; + +/** + * Base configuration class for Spring Batch Integration factory beans. + * + * @since 4.1 + * @author Mahmoud Ben Hassine + */ +@Configuration +public class BatchIntegrationConfiguration { + + private JobRepository jobRepository; + + private PlatformTransactionManager transactionManager; + + @Autowired + public BatchIntegrationConfiguration( + JobRepository jobRepository, + PlatformTransactionManager transactionManager) { + + this.jobRepository = jobRepository; + this.transactionManager = transactionManager; + } + + @Bean + public RemoteChunkingMasterStepBuilderFactory remoteChunkingMasterStepBuilderFactory() { + return new RemoteChunkingMasterStepBuilderFactory(this.jobRepository, + this.transactionManager); + } + + @Bean + public RemoteChunkingWorkerBuilder remoteChunkingWorkerBuilder() { + return new RemoteChunkingWorkerBuilder<>(); + } + +} diff --git a/spring-batch-integration/src/main/java/org/springframework/batch/integration/config/annotation/EnableBatchIntegration.java b/spring-batch-integration/src/main/java/org/springframework/batch/integration/config/annotation/EnableBatchIntegration.java new file mode 100644 index 000000000..d7c7e8f38 --- /dev/null +++ b/spring-batch-integration/src/main/java/org/springframework/batch/integration/config/annotation/EnableBatchIntegration.java @@ -0,0 +1,88 @@ +/* + * Copyright 2018 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.batch.integration.config.annotation; + +import java.lang.annotation.Documented; +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +import org.springframework.batch.integration.chunk.RemoteChunkingWorkerBuilder; +import org.springframework.batch.integration.chunk.RemoteChunkingMasterStepBuilderFactory; +import org.springframework.context.annotation.Import; + +/** + * Enable Spring Batch Integration features and provide a base configuration for + * setting up remote chunking infrastructure beans. + * + * By adding this annotation on a {@link org.springframework.context.annotation.Configuration} + * class, it will be possible to autowire the following beans: + * + *
    + *
  • {@link RemoteChunkingMasterStepBuilderFactory}: + * used to create a master step by automatically setting up the job repository + * and transaction manager.
  • + *
  • {@link RemoteChunkingWorkerBuilder}: used to create the integration + * flow on the worker side.
  • + *
+ * + * For example: + * + *
+ * @Configuration
+ * @EnableBatchIntegration
+ * public class RemoteChunkingAppConfig {
+ *
+ * 	@Autowired
+ * 	private RemoteChunkingMasterStepBuilderFactory masterStepBuilderFactory;
+ *
+ * 	@Autowired
+ * 	private RemoteChunkingWorkerBuilder workerBuilder;
+ *
+ * 	@Bean
+ * 	public TaskletStep masterStep() {
+ *       	 return this.masterStepBuilderFactory
+ *       		.get("masterStep")
+ *       		.chunk(100)
+ *       		.reader(itemReader())
+ *       		.outputChannel(outgoingRequestsToWorkers())
+ *       		.inputChannel(incomingRepliesFromWorkers())
+ *       		.build();
+ * 	}
+ *
+ * 	@Bean
+ * 	public IntegrationFlow worker() {
+ *       	 return this.workerBuilder
+ *       		.itemProcessor(itemProcessor())
+ *       		.itemWriter(itemWriter())
+ *       		.inputChannel(incomingRequestsFromMaster())
+ *       		.outputChannel(outgoingRepliesToMaster())
+ *       		.build();
+ * 	}
+ *
+ * }
+ * 
+ * + * @since 4.1 + * @author Mahmoud Ben Hassine + */ +@Target(ElementType.TYPE) +@Retention(RetentionPolicy.RUNTIME) +@Documented +@Import(BatchIntegrationConfiguration.class) +public @interface EnableBatchIntegration { +} diff --git a/spring-batch-integration/src/test/java/org/springframework/batch/integration/chunk/RemoteChunkingMasterStepBuilderTest.java b/spring-batch-integration/src/test/java/org/springframework/batch/integration/chunk/RemoteChunkingMasterStepBuilderTest.java new file mode 100644 index 000000000..058173c7d --- /dev/null +++ b/spring-batch-integration/src/test/java/org/springframework/batch/integration/chunk/RemoteChunkingMasterStepBuilderTest.java @@ -0,0 +1,264 @@ +/* + * Copyright 2018 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.batch.integration.chunk; + +import java.util.Arrays; + +import org.junit.Assert; +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.ExpectedException; +import org.junit.runner.RunWith; + +import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing; +import org.springframework.batch.core.listener.ChunkListenerSupport; +import org.springframework.batch.core.listener.CompositeItemReadListener; +import org.springframework.batch.core.listener.CompositeItemWriteListener; +import org.springframework.batch.core.listener.SkipListenerSupport; +import org.springframework.batch.core.listener.StepExecutionListenerSupport; +import org.springframework.batch.core.repository.JobRepository; +import org.springframework.batch.core.step.tasklet.TaskletStep; +import org.springframework.batch.item.ItemReader; +import org.springframework.batch.item.ItemStreamSupport; +import org.springframework.batch.item.support.ListItemReader; +import org.springframework.batch.repeat.exception.DefaultExceptionHandler; +import org.springframework.batch.repeat.support.RepeatTemplate; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.integration.channel.DirectChannel; +import org.springframework.integration.channel.QueueChannel; +import org.springframework.messaging.PollableChannel; +import org.springframework.retry.backoff.NoBackOffPolicy; +import org.springframework.retry.listener.RetryListenerSupport; +import org.springframework.retry.policy.MapRetryContextCache; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.transaction.PlatformTransactionManager; +import org.springframework.transaction.interceptor.DefaultTransactionAttribute; + +/** + * @author Mahmoud Ben Hassine + */ +@RunWith(SpringRunner.class) +@ContextConfiguration(classes = {RemoteChunkingMasterStepBuilderTest.BatchConfiguration.class}) +public class RemoteChunkingMasterStepBuilderTest { + + @Rule + public ExpectedException expectedException = ExpectedException.none(); + + @Autowired + private JobRepository jobRepository; + @Autowired + private PlatformTransactionManager transactionManager; + + private PollableChannel inputChannel = new QueueChannel(); + private DirectChannel outputChannel = new DirectChannel(); + private ItemReader itemReader = new ListItemReader<>(Arrays.asList("a", "b", "c")); + + @Test + public void inputChannelMustNotBeNull() { + // given + this.expectedException.expect(IllegalArgumentException.class); + this.expectedException.expectMessage("inputChannel must not be null"); + + // when + TaskletStep step = new RemoteChunkingMasterStepBuilder("step") + .inputChannel(null) + .build(); + + // then + // expected exception + } + + @Test + public void outputChannelMustNotBeNull() { + // given + this.expectedException.expect(IllegalArgumentException.class); + this.expectedException.expectMessage("outputChannel must not be null"); + + // when + TaskletStep step = new RemoteChunkingMasterStepBuilder("step") + .outputChannel(null) + .build(); + + // then + // expected exception + } + + @Test + public void messagingTemplateMustNotBeNull() { + // given + this.expectedException.expect(IllegalArgumentException.class); + this.expectedException.expectMessage("messagingTemplate must not be null"); + + // when + TaskletStep step = new RemoteChunkingMasterStepBuilder("step") + .messagingTemplate(null) + .build(); + + // then + // expected exception + } + + @Test + public void maxWaitTimeoutsMustBeGreaterThanZero() { + // given + this.expectedException.expect(IllegalArgumentException.class); + this.expectedException.expectMessage("maxWaitTimeouts must be greater than zero"); + + // when + TaskletStep step = new RemoteChunkingMasterStepBuilder("step") + .maxWaitTimeouts(-1) + .build(); + + // then + // expected exception + } + + @Test + public void throttleLimitMustNotBeGreaterThanZero() { + // given + this.expectedException.expect(IllegalArgumentException.class); + this.expectedException.expectMessage("throttleLimit must be greater than zero"); + + // when + TaskletStep step = new RemoteChunkingMasterStepBuilder("step") + .throttleLimit(-1L) + .build(); + + // then + // expected exception + } + + @Test + public void testMandatoryInputChannel() { + // given + RemoteChunkingMasterStepBuilder builder = new RemoteChunkingMasterStepBuilder<>("step"); + + this.expectedException.expect(IllegalArgumentException.class); + this.expectedException.expectMessage("An InputChannel must be provided"); + + // when + TaskletStep step = builder.build(); + + // then + // expected exception + } + + @Test + public void testMandatoryOutputChannel() { + // given + RemoteChunkingMasterStepBuilder builder = new RemoteChunkingMasterStepBuilder("step") + .inputChannel(this.inputChannel); + + this.expectedException.expect(IllegalArgumentException.class); + this.expectedException.expectMessage("An OutputChannel must be provided"); + + // when + TaskletStep step = builder.build(); + + // then + // expected exception + } + + @Test + public void testUnsupportedOperationExceptionWhenSpecifyingAnItemWriter() { + // given + this.expectedException.expect(UnsupportedOperationException.class); + this.expectedException.expectMessage("When configuring a master " + + "step for remote chunking, the item writer will be automatically " + + "set to an instance of ChunkMessageChannelItemWriter. " + + "The item writer must not be provided in this case."); + + // when + TaskletStep step = new RemoteChunkingMasterStepBuilder("step") + .reader(this.itemReader) + .writer(items -> { }) + .repository(this.jobRepository) + .transactionManager(this.transactionManager) + .inputChannel(this.inputChannel) + .outputChannel(this.outputChannel) + .build(); + + // then + // expected exception + } + + @Test + public void testMasterStepCreation() { + // when + TaskletStep taskletStep = new RemoteChunkingMasterStepBuilder("step") + .reader(this.itemReader) + .repository(this.jobRepository) + .transactionManager(this.transactionManager) + .inputChannel(this.inputChannel) + .outputChannel(this.outputChannel) + .build(); + + // then + Assert.assertNotNull(taskletStep); + } + + /* + * The following test is to cover setters that override those from parent builders. + */ + @Test + public void testSetters() { + // when + TaskletStep taskletStep = new RemoteChunkingMasterStepBuilder("step") + .reader(this.itemReader) + .readerIsTransactionalQueue() + .repository(this.jobRepository) + .transactionManager(this.transactionManager) + .transactionAttribute(new DefaultTransactionAttribute()) + .inputChannel(this.inputChannel) + .outputChannel(this.outputChannel) + .listener(new Object()) + .listener(new SkipListenerSupport<>()) + .listener(new ChunkListenerSupport()) + .listener(new StepExecutionListenerSupport()) + .listener(new CompositeItemReadListener<>()) + .listener(new CompositeItemWriteListener<>()) + .listener(new RetryListenerSupport()) + .skip(Exception.class) + .noSkip(RuntimeException.class) + .skipLimit(10) + .retry(Exception.class) + .noRetry(RuntimeException.class) + .retryLimit(10) + .retryContextCache(new MapRetryContextCache()) + .noRollback(Exception.class) + .chunk(10) + .startLimit(3) + .allowStartIfComplete(true) + .exceptionHandler(new DefaultExceptionHandler()) + .stepOperations(new RepeatTemplate()) + .chunkOperations(new RepeatTemplate()) + .backOffPolicy(new NoBackOffPolicy()) + .stream(new ItemStreamSupport() {}) + .keyGenerator(Object::hashCode) + .build(); + + // then + Assert.assertNotNull(taskletStep); + } + + @Configuration + @EnableBatchProcessing + public static class BatchConfiguration { + + } +} diff --git a/spring-batch-integration/src/test/java/org/springframework/batch/integration/chunk/RemoteChunkingWorkerBuilderTest.java b/spring-batch-integration/src/test/java/org/springframework/batch/integration/chunk/RemoteChunkingWorkerBuilderTest.java new file mode 100644 index 000000000..b1e0272c2 --- /dev/null +++ b/spring-batch-integration/src/test/java/org/springframework/batch/integration/chunk/RemoteChunkingWorkerBuilderTest.java @@ -0,0 +1,166 @@ +/* + * Copyright 2018 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.batch.integration.chunk; + +import org.junit.Assert; +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.ExpectedException; + +import org.springframework.batch.item.ItemProcessor; +import org.springframework.batch.item.ItemWriter; +import org.springframework.batch.item.support.PassThroughItemProcessor; +import org.springframework.integration.channel.DirectChannel; +import org.springframework.integration.dsl.IntegrationFlow; + +/** + * @author Mahmoud Ben Hassine + */ +public class RemoteChunkingWorkerBuilderTest { + + @Rule + public ExpectedException expectedException = ExpectedException.none(); + + private ItemProcessor itemProcessor = new PassThroughItemProcessor<>(); + private ItemWriter itemWriter = items -> { }; + + @Test + public void itemProcessorMustNotBeNull() { + // given + this.expectedException.expect(IllegalArgumentException.class); + this.expectedException.expectMessage("itemProcessor must not be null"); + + // when + IntegrationFlow integrationFlow = new RemoteChunkingWorkerBuilder() + .itemProcessor(null) + .build(); + + // then + // expected exception + } + + @Test + public void itemWriterMustNotBeNull() { + // given + this.expectedException.expect(IllegalArgumentException.class); + this.expectedException.expectMessage("itemWriter must not be null"); + + // when + IntegrationFlow integrationFlow = new RemoteChunkingWorkerBuilder() + .itemWriter(null) + .build(); + + // then + // expected exception + } + + @Test + public void inputChannelMustNotBeNull() { + // given + this.expectedException.expect(IllegalArgumentException.class); + this.expectedException.expectMessage("inputChannel must not be null"); + + // when + IntegrationFlow integrationFlow = new RemoteChunkingWorkerBuilder() + .inputChannel(null) + .build(); + + // then + // expected exception + } + + @Test + public void outputChannelMustNotBeNull() { + // given + this.expectedException.expect(IllegalArgumentException.class); + this.expectedException.expectMessage("outputChannel must not be null"); + + // when + IntegrationFlow integrationFlow = new RemoteChunkingWorkerBuilder() + .outputChannel(null) + .build(); + + // then + // expected exception + } + + @Test + public void testMandatoryItemWriter() { + // given + RemoteChunkingWorkerBuilder builder = new RemoteChunkingWorkerBuilder<>(); + + this.expectedException.expect(IllegalArgumentException.class); + this.expectedException.expectMessage("An ItemWriter must be provided"); + + // when + builder.build(); + + // then + // expected exception + } + + @Test + public void testMandatoryInputChannel() { + // given + RemoteChunkingWorkerBuilder builder = new RemoteChunkingWorkerBuilder() + .itemWriter(items -> { }); + + this.expectedException.expect(IllegalArgumentException.class); + this.expectedException.expectMessage("An InputChannel must be provided"); + + // when + builder.build(); + + // then + // expected exception + } + + @Test + public void testMandatoryOutputChannel() { + // given + RemoteChunkingWorkerBuilder builder = new RemoteChunkingWorkerBuilder() + .itemWriter(items -> { }) + .inputChannel(new DirectChannel()); + + this.expectedException.expect(IllegalArgumentException.class); + this.expectedException.expectMessage("An OutputChannel must be provided"); + + // when + builder.build(); + + // then + // expected exception + } + + @Test + public void testIntegrationFlowCreation() { + // given + DirectChannel inputChannel = new DirectChannel(); + DirectChannel outputChannel = new DirectChannel(); + RemoteChunkingWorkerBuilder builder = new RemoteChunkingWorkerBuilder() + .itemProcessor(this.itemProcessor) + .itemWriter(this.itemWriter) + .inputChannel(inputChannel) + .outputChannel(outputChannel); + + // when + IntegrationFlow integrationFlow = builder.build(); + + // then + Assert.assertNotNull(integrationFlow); + } + +} diff --git a/spring-batch-samples/README.md b/spring-batch-samples/README.md index 9daf02c45..b9f013fdf 100644 --- a/spring-batch-samples/README.md +++ b/spring-batch-samples/README.md @@ -651,11 +651,10 @@ This sample shows how to configure a remote chunking job. The master step will read numbers from 1 to 6 and send two chunks ({1, 2, 3} and {4, 5, 6}) to workers for processing and writing. -This example shows how to: +This example shows how to use: -* configure a `ChunkMessageChannelItemWriter` on the master side to send chunks to workers -* configure a `ChunkProcessorChunkHandler` on the worker side to process chunks and -send replies back to the master +* the `RemoteChunkingMasterStepBuilderFactory` to create a master step +* the `RemoteChunkingWorkerBuilder` to configure an integration flow on the worker side. The sample uses an embedded JMS broker as a communication middleware between the master and workers. The usage of an embedded broker is only for simplicity's sake, diff --git a/spring-batch-samples/src/main/java/org/springframework/batch/sample/remotechunking/MasterConfiguration.java b/spring-batch-samples/src/main/java/org/springframework/batch/sample/remotechunking/MasterConfiguration.java index 444103377..2d8eebfd1 100644 --- a/spring-batch-samples/src/main/java/org/springframework/batch/sample/remotechunking/MasterConfiguration.java +++ b/spring-batch-samples/src/main/java/org/springframework/batch/sample/remotechunking/MasterConfiguration.java @@ -22,9 +22,9 @@ import org.apache.activemq.ActiveMQConnectionFactory; import org.springframework.batch.core.Job; import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing; import org.springframework.batch.core.configuration.annotation.JobBuilderFactory; -import org.springframework.batch.core.configuration.annotation.StepBuilderFactory; import org.springframework.batch.core.step.tasklet.TaskletStep; -import org.springframework.batch.integration.chunk.ChunkMessageChannelItemWriter; +import org.springframework.batch.integration.chunk.RemoteChunkingMasterStepBuilderFactory; +import org.springframework.batch.integration.config.annotation.EnableBatchIntegration; import org.springframework.batch.item.support.ListItemReader; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -34,7 +34,6 @@ import org.springframework.context.annotation.PropertySource; import org.springframework.integration.channel.DirectChannel; import org.springframework.integration.channel.QueueChannel; import org.springframework.integration.config.EnableIntegration; -import org.springframework.integration.core.MessagingTemplate; import org.springframework.integration.dsl.IntegrationFlow; import org.springframework.integration.dsl.IntegrationFlows; import org.springframework.integration.jms.dsl.Jms; @@ -48,6 +47,7 @@ import org.springframework.integration.jms.dsl.Jms; */ @Configuration @EnableBatchProcessing +@EnableBatchIntegration @EnableIntegration @PropertySource("classpath:remote-chunking.properties") public class MasterConfiguration { @@ -59,7 +59,7 @@ public class MasterConfiguration { private JobBuilderFactory jobBuilderFactory; @Autowired - private StepBuilderFactory stepBuilderFactory; + private RemoteChunkingMasterStepBuilderFactory masterStepBuilderFactory; @Bean public ActiveMQConnectionFactory connectionFactory() { @@ -109,23 +109,13 @@ public class MasterConfiguration { return new ListItemReader<>(Arrays.asList(1, 2, 3, 4, 5, 6)); } - @Bean - public ChunkMessageChannelItemWriter itemWriter() { - MessagingTemplate messagingTemplate = new MessagingTemplate(); - messagingTemplate.setDefaultChannel(requests()); - ChunkMessageChannelItemWriter chunkMessageChannelItemWriter - = new ChunkMessageChannelItemWriter<>(); - chunkMessageChannelItemWriter.setMessagingOperations(messagingTemplate); - chunkMessageChannelItemWriter.setReplyChannel(replies()); - return chunkMessageChannelItemWriter; - } - @Bean public TaskletStep masterStep() { - return this.stepBuilderFactory.get("masterStep") + return this.masterStepBuilderFactory.get("masterStep") .chunk(3) .reader(itemReader()) - .writer(itemWriter()) + .outputChannel(requests()) + .inputChannel(replies()) .build(); } diff --git a/spring-batch-samples/src/main/java/org/springframework/batch/sample/remotechunking/WorkerConfiguration.java b/spring-batch-samples/src/main/java/org/springframework/batch/sample/remotechunking/WorkerConfiguration.java index 84363e7b6..e0ba2af20 100644 --- a/spring-batch-samples/src/main/java/org/springframework/batch/sample/remotechunking/WorkerConfiguration.java +++ b/spring-batch-samples/src/main/java/org/springframework/batch/sample/remotechunking/WorkerConfiguration.java @@ -18,16 +18,15 @@ package org.springframework.batch.sample.remotechunking; import org.apache.activemq.ActiveMQConnectionFactory; import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing; -import org.springframework.batch.core.step.item.ChunkProcessor; -import org.springframework.batch.core.step.item.SimpleChunkProcessor; -import org.springframework.batch.integration.chunk.ChunkProcessorChunkHandler; +import org.springframework.batch.integration.chunk.RemoteChunkingWorkerBuilder; +import org.springframework.batch.integration.config.annotation.EnableBatchIntegration; import org.springframework.batch.item.ItemProcessor; import org.springframework.batch.item.ItemWriter; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.PropertySource; -import org.springframework.integration.annotation.ServiceActivator; import org.springframework.integration.channel.DirectChannel; import org.springframework.integration.config.EnableIntegration; import org.springframework.integration.dsl.IntegrationFlow; @@ -36,7 +35,8 @@ import org.springframework.integration.jms.dsl.Jms; /** * This configuration class is for the worker side of the remote chunking sample. - * It configures a {@link ChunkProcessorChunkHandler} as a service activator to: + * It uses the {@link RemoteChunkingWorkerBuilder} to configure an + * {@link IntegrationFlow} in order to: *
    *
  • receive requests from the master
  • *
  • process chunks with the configured item processor and writer
  • @@ -47,6 +47,7 @@ import org.springframework.integration.jms.dsl.Jms; */ @Configuration @EnableBatchProcessing +@EnableBatchIntegration @EnableIntegration @PropertySource("classpath:remote-chunking.properties") public class WorkerConfiguration { @@ -54,6 +55,9 @@ public class WorkerConfiguration { @Value("${broker.url}") private String brokerUrl; + @Autowired + private RemoteChunkingWorkerBuilder remoteChunkingWorkerBuilder; + @Bean public ActiveMQConnectionFactory connectionFactory() { ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory(); @@ -115,12 +119,13 @@ public class WorkerConfiguration { } @Bean - @ServiceActivator(inputChannel = "requests", outputChannel = "replies") - public ChunkProcessorChunkHandler chunkProcessorChunkHandler() { - ChunkProcessor chunkProcessor = new SimpleChunkProcessor<>(itemProcessor(), itemWriter()); - ChunkProcessorChunkHandler chunkProcessorChunkHandler = new ChunkProcessorChunkHandler<>(); - chunkProcessorChunkHandler.setChunkProcessor(chunkProcessor); - return chunkProcessorChunkHandler; + public IntegrationFlow workerIntegrationFlow() { + return this.remoteChunkingWorkerBuilder + .itemProcessor(itemProcessor()) + .itemWriter(itemWriter()) + .inputChannel(requests()) + .outputChannel(replies()) + .build(); } }