From c971c8dbdded68d7b8ae54c0f60a749b917b45c0 Mon Sep 17 00:00:00 2001 From: FabTechAT Date: Mon, 14 Apr 2025 11:36:20 +0200 Subject: [PATCH 1/2] adapted filler plugin to make above/below colors work with pivoted line charts resolved conflicts in src/plugins/plugin.filler/filler.drawing.js --- src/plugins/plugin.filler/filler.drawing.js | 54 ++++++++++++++++++--- 1 file changed, 47 insertions(+), 7 deletions(-) diff --git a/src/plugins/plugin.filler/filler.drawing.js b/src/plugins/plugin.filler/filler.drawing.js index 9abb513cff0..0a718355da8 100644 --- a/src/plugins/plugin.filler/filler.drawing.js +++ b/src/plugins/plugin.filler/filler.drawing.js @@ -24,14 +24,24 @@ function doFill(ctx, cfg) { ctx.save(); - if (property === 'x' && below !== above) { - clipVertical(ctx, target, area.top); - fill(ctx, {line, target, color: above, scale, property, clip}); - ctx.restore(); - ctx.save(); - clipVertical(ctx, target, area.bottom); + let fillColor = below; + if (below !== above) { + if (property === 'x') { + clipVertical(ctx, target, area.top); + fill(ctx, {line, target, color: above, scale, property, clip}); + ctx.restore(); + ctx.save(); + clipVertical(ctx, target, area.bottom); + } else if (property === 'y') { + clipHorizontal(ctx, target, area.left); + fill(ctx, {line, target, color: below, scale, property, clip}); + ctx.restore(); + ctx.save(); + clipHorizontal(ctx, target, area.right); + fillColor = above; + } } - fill(ctx, {line, target, color: below, scale, property, clip}); + fill(ctx, {line, target, color: fillColor, scale, property, clip}); ctx.restore(); } @@ -66,6 +76,36 @@ function clipVertical(ctx, target, clipY) { ctx.clip(); } +function clipHorizontal(ctx, target, clipX) { + const {segments, points} = target; + let first = true; + let lineLoop = false; + + ctx.beginPath(); + for (const segment of segments) { + const {start, end} = segment; + const firstPoint = points[start]; + const lastPoint = points[_findSegmentEnd(start, end, points)]; + if (first) { + ctx.moveTo(firstPoint.x, firstPoint.y); + first = false; + } else { + ctx.lineTo(clipX, firstPoint.y); + ctx.lineTo(firstPoint.x, firstPoint.y); + } + lineLoop = !!target.pathSegment(ctx, segment, {move: lineLoop}); + if (lineLoop) { + ctx.closePath(); + } else { + ctx.lineTo(clipX, lastPoint.y); + } + } + + ctx.lineTo(clipX, target.first().y); + ctx.closePath(); + ctx.clip(); +} + function fill(ctx, cfg) { const {line, target, property, color, scale, clip} = cfg; const segments = _segments(line, target, property); From e37ac10c21ced69f0beb08a774233b0b2d380022 Mon Sep 17 00:00:00 2001 From: FabTechAT Date: Tue, 15 Apr 2025 10:56:47 +0200 Subject: [PATCH 2/2] fixed doFill; added tests --- .../line/above-below-vertical-linechart.js | 46 ++++++++++++++++++ .../line/above-below-vertical-linechart.png | Bin 0 -> 52026 bytes 2 files changed, 46 insertions(+) create mode 100644 test/fixtures/plugin.filler/line/above-below-vertical-linechart.js create mode 100644 test/fixtures/plugin.filler/line/above-below-vertical-linechart.png diff --git a/test/fixtures/plugin.filler/line/above-below-vertical-linechart.js b/test/fixtures/plugin.filler/line/above-below-vertical-linechart.js new file mode 100644 index 00000000000..82ada178f01 --- /dev/null +++ b/test/fixtures/plugin.filler/line/above-below-vertical-linechart.js @@ -0,0 +1,46 @@ +module.exports = { + config: { + type: 'line', + data: { + labels: [1, 2, 3, 4], + datasets: [ + { + data: [200, 400, 200, 400], + cubicInterpolationMode: 'monotone', + tension: 0.4, + spanGaps: true, + borderColor: 'blue', + pointRadius: 0, + fill: { + target: 1, + below: 'rgba(255, 0, 0, 0.4)', + above: 'rgba(53, 221, 53, 0.4)', + } + }, + { + data: [400, 200, 400, 200], + cubicInterpolationMode: 'monotone', + tension: 0.4, + spanGaps: true, + borderColor: 'orange', + pointRadius: 0, + }, + ] + }, + options: { + indexAxis: 'y', + // maintainAspectRatio: false, + plugins: { + filler: { + propagate: false + }, + datalabels: { + display: false + }, + legend: { + display: false + }, + } + } + } +}; diff --git a/test/fixtures/plugin.filler/line/above-below-vertical-linechart.png b/test/fixtures/plugin.filler/line/above-below-vertical-linechart.png new file mode 100644 index 0000000000000000000000000000000000000000..2052737e792ea1e9e01d95c2ec55b27eb9accf12 GIT binary patch literal 52026 zcmY&b_x6YGkVd+@TN)%)x}{ONK^kW04nb)NK>-0t1*L}W1_9}A7)ojweuMXW z?|R>V7+8xr`<#7tJp0-E#A<1%;9)<;1^@t0P4%e`03aiNMFud@5g+G%Q#XhYBrhEm z1>oxl^)3L=18Ps@_592aTCjphdb32~Qwt@ou~c1!;e(dd?U%ulKGc#Yk0dp$bExlM zRq@Sj%r71fvRc&Ii8l4yrVaNr;LWyQqJ0;zg!E+I5-N}rDS*e&ekwmsEZ&u!79wI| zaQNx;v!rBvzAZmQBlAl`UcgOdNdDKa0r8={)?f;H^cW<>2Zb+gwa1Lj9>0JbE+I-6 zfcOBT0uo67{>hI|Nsq*j@Al+P*1un&N0O8I@1GMC(UnO7E`y3IEbz6a%=HG!dJ6fT z;J;sYmlxvy2&}Z{3;YpMOZ}AsG!`7ozDfFLDa%|z_dLL;#=1Knc>X#em{n~;mo*%Q=}NI8UU9H9nt{j98;sZOYc)uFpk`>9XuKsmt{MF4ak?l-5Hs) z!8~fFVIe->@C#bj(5Xu3c~AjQmW$&Y+3HN{i;M3=Lv2|#XOc=+)3@d6A~7JIIjQAz zS(-oo4L1I+GG9GEt*Xb9n&l;@b_dYlVHC|!2P(N|}}^*2R_|B?0d>iumQElVtj#^|Cw zHqt1e-zY(t8;pj(r0!IR7feh!aS-gTN~F-j{$}>%#UFm3Qu)Gg0MZToL7tcfj?zll z0l4u>^I*K(Z4mWu5XP^=+dx?TQ#|*UfmGuC?h3)Ct~SBEb9SYL{q`@OIbCg@U(eaI z1YvgV$!Luf#MP?!H{<)y-{P%ey)AIdV3zCfF@ip!Ft;LLKwT*|G500`YP5=9YYRZo z+7I5!{T`>{eyY@;I9q*RbuxIT>tT8khW_mXU0Kk8c&McvW*fc7V|^i^d)pojA>gru zJF;ybh=|?|+fysySxU4L)RL@WY8&{Cg^=!{I=k}rupkg+{~<^A~O8d3p6=o zv)B!By>YZ?QHLm~QPGi0r4Q&%$P)l(7{V3mWFo zcTQEukS3p3mffx{=C$(_zZPRJ#Sa)>r$9a8F4x<7V;*UwS1PA5-J1N zw4+~@HiEL=KxG0+kkA?i6Ob)qC{`qKj^aje7my*+Iwiq7&L5&D?iy?s+w<2-Fh~iD zzFc0mlRItQDLh7s>iUzAjl()5J=Qd)&6g zHq2W|)EFuqC2}@Zl6P@85f*61Pe?@mcY#mD>(tXWWVJi6`Duha9(lSyTF4ZTW6J-1 z{J}D`cbXuXWJ~^@pJHic^7i1-fu7nWbd5X}pjZ;y{k?Mlr4j{8 zmu(L_Dl;&eU@kVku}pjQGzVx74{7eFRZ28TuzA;(f(A*ML*fM*30FX-6bXL*kLlhN|J8M{DY;_h(MwN_gDQTG2F2mbuF&vNwvgx{SvmG;)T8TME+xg+BV|K?84SF#r}6?JvVn~{jwGiF>;)g zcr?{cDI+GF$xZGcVv6RZkjCo|z!zu?sW(Fl zVpx4X^^T`^JDRpr2&2SCSN0RKC?vS(g$^O(krE~S@}t)pIRWIT_h%{Llt$p^++fMn z_H?(&{ahCm#4WwVXxlui2z0uxm+83DS~ZY%iJ_gt#sZJey>IkvVt68i2qP;4L#uBD z#~12>Xo3V`$%5_0$$>v;0+_qp=#>ld?`ckH^t~O-Gp}ZHC$7-1Uxqv)vqUCSb;um8 zSczUN4E{`7s75BfXmxch+R}HCMSafWmn_{ixmYr#ge-S`m~yopI$uj6f$;9b;)?s{a%6Eeg#MWXba7Up zX_vLZKS>KY$YxutilZ@>Pp=&UoczZO18eidy|Sm6kqWR9uO=@bcNtIZFt2`xYF9aw zmK%jhM;~=MMYl$gzj>iuQSZhfiAm}MhH^2hM_YHb;1_@4SA&()J5_v?+H@6&6QDeM z8++|e@7DJ+gmt9>uXXcm;pX%uJin@IY58ksiqh(12K6XPBH(ciwPNu`;s`#JC#nJY zt!}pRPpKV8zNg)VPSu~zC9gUQe~4EwgX)x1Mzac|W47LX5wy334<~%E1@wND@kZiZ z0#cM_9B(L zfvS~rCjsK>+}tlVgdC(#BLQ+$7?hEhP`UXENf}4W^UAhD7G?u`X6#uo={xr7M9M@m zN(PnqpgF514N!${IcZ6k!PAhcnw8v;w-{;8(D8p^orJ%!HQ7wy4@U^5PFp_ZxdP0C z`dVYgb$Sru@k%ER=S&OVh)iq{}A`+-Xq2=!9O$MM_*TSXm?<<@;o(Fz!^nu9zX1@+x23~ z2C5VtB#K}*T)YCBUgr0Qt3I>YT47cVU}graxt_r!iI=VW(Ar-BwJJ@QQZGD^IGEtvRIV zu!}dV_s0cRXw9e*`LrdRcJ1SkgYM`MEQhj*7fF>WL(BQ~!dZSaE=g#~S{B##N?rSC z|Gw8*@U>_}UG&E6_RDjbFtmNE&L=*y8XT+v=V1!+df`6b_!%NTpn_eIE&C1t*`>^5 z_C^U#Omydc5S1?D5y+N+s!32Km~*)>f^&p9qB7b{dTo2N1Hh3r!2lUrkqk zaxq>re_)0sd7_=j$3m)h+w0t>-E#<#-6Y6n7 zIPQe$U^(;moWp?qN;6hA#W;v@`DA+lX*n9%Xk}&i+&?qdHG}TMzQ>f0!ps#J zhWnSR(tp@fKltmj$FQpA7)(b#925(Q5JzF;d7mA6BgG16viCH_xjr{HzB9V2J-ya# z9mE;nF{Bht=^*lXYF@yLP(%n}=6k{V`;TkypNHbr@ss~xkD^mTSw2y8!2O`hgtWYy z&|k%8B}uWg&EY%8H2YPA_5GiSu+jn1b535weaa1BfzNC);t&W)r09dAxRw*qUJ{So zT>DF?)iuG1+h%}&j=2v9=5DuhP*YcMP|`WKl{&m`gI|{1pFMqoKSRP#G`N5*t|s9K;S+>Pjn>3I@G)*g zQ=YVO*hr+K6t3V-8JH#nZ~Cqt)~ZyWHsU8`rl?^nV2x*Jy$1>%|cJ4r6sH50B`%()4-De<7OIk4>PTBWR7b>y>ULF zbp-MZiN|ciR-q~1QDX06CSf90f?AKrjepNFh+utsx@TtzJ(q%ep%GkR>{t7)ayO^1 z^=>6idm&8r(SB_9qYe$^l`tZ})6SYe$OIc)!nFko@@+4*BZtPBqng;Qt6mEpu(#1U z4Y>6LgyE1Oy;e1G>cB zWmpH0WT}+KTdsnfi)IGL-qOv*AN$}Nmn~yq<@X^i$0Z&x91v0CE6A%>^GJWm`sbj` zfHI}3jCq2qw2xC>MCCZg-HQXKE2ENCdXfn54o2%= z{|ciQ)Ve}iSXgZ&q##5K#|TWYbtl?$y25S0nAJNG&-8< zYH6(p_lM+%Gj0sHAxw`cupsM?@pz@bE0)YJjB=8@$dcJ_mTA=IcUQt{fhUn+TFCDl z%%=a9S1?YWdXq|1g)+H@;)}pJy(*p*-QNuUu)!Xcf)xnFW%E2iTR~o%UM)D8C#2|D%c5V zh4k-`8!_nr=M&68sxX|n)fPNT2!)}*+^n0UO4j_QO{vrEFll=yRfgy>pHoE)QOgx2 zy?T6fmJ&6`o?dc3sf~$oir%AOnTocUR%r=8`?Ge8k%j{A-D&SV$QhGnQ)xbt=r~4L zWdTjgm;XeaKYs3UpbmSd$cx&@zA{h1)`cQS+RL@Qu7zfy2&KqVQ7 z5CTw;WCZf|^A(S;p@8pG)Qw%---*l^pCPxN4{oec*IfP6R zY&Sm$EF^{ap(pjf*Lre**XFPzL3`3H%>p9FR^XT-7Fs7q#AGn49Co5C3WJL=4#QvXXrXzAH=q*$rP)|mSZRyk4 z<$9LDfp3Q!#YItzcp_d5;xd4BQ&9#a{^r_xep~HT5%vFPSzRPTtgEw);Hyr9-N9Sv z8TTn?aI#3y5kOObo7zlpZxd0YW(6ss1WyIrWEw*r60#gJ{kN!<(tKd5gPH_2hz5xq z)kBuD%T*GFo>#sV8$0#g@$b!IVS)QN?|zJfM~RR7_Fvot;nL_?vWUL`*hi6DJZs+FYLsgXf0+4UDRl8(&c-YGl_SqVD?gmOn_* zYgdKr(72kiWwt>3;VgcgqCeVj(8f0usK1FY954f_Kyl1Heg~oFtBVg5wS!=su=ZEn zMRVCPx+?Kn<{l#74P=r^xK2HU#hWX#!b`Jik~sjzlFbva1%1^_15Ecg9RTkH_dGEKic-lJOwsvh(7nC22o9Hf{(3s`WhH>Nu_DU7C<8| z%JKKTMCXWQVYEgZ(Ozy+b!S~#(gY=&pqqiEJoCT*a zIVD)3dWDz8SH)nXgxsuV8j70i;bsithukMB+7XXt2q-cH00zvE% zq`VRCC2ImCLs|0sZbP_zt7ta?v$E+uJ+F6XS9*MVvmk$;~v0cm5 zz`fDeoH zBB1BT0U8SsC5y_Em*s95wSo>vd97wIicS36gV1I8=N|M zIxOq@pAZMGQFL8^^1bdk5M1exCF^EdiXQo8T*}*q+Qga4fSJmQh|~FDjITZt(hfzT zC83vBN-dEW>=_+mZjYR>gi`2=)*3LQbh+dZx6m zkW|spx}-$9mN5}U<66&5%in?)il|6ww=6la^-+UbjZ!hLhsVWWqiY_DLI5`9L_?;+ z@(lS?+LeI4mH`t$06E-tmXqvD#<77JLhkOPI0QDo zCWpEzkTpa zYzaa-eUUy0Iq$5OpD!x5t~P|N5?@oblIF}Q&XQKSVS{F30wXIOEE1qjqh*idZMXh+ z8b@?h!2xUuPeCw;vmzTTm5megp>P~rUtJADlp5%^n4CvF^LRGX+T0I$a{hEe8UW#lfe~t$-f*kuQFF^yN zF@pLWyc?djt%8PVJC^)rg>R(Q7Mvo|^Q3=1;;^3`f-^m2d_0BrnvX9<7*u}YB?fe& zuV(mpQuAV>%TPiSB5lmI<>^NW7sAB`$=8PS=H$2#rj)?=s(}9wo(2BZr1Q@3>*_%3 zC1~j6IQU+G;O4;UAb#e%MjKUEi){-7EL)r7Ro_3RB!?_#U%X?a*7x>JSJ5x;xRne$ z%&!S^4upn;8{#=PZn@2G&1C)4Hh-$o*=(I-dux1S%oT8^3vq@J4C>z8PNx>@UX!ev zH~L0cWIlPpnVkjtC;rb8}$uqFnT=PL5<0 z6(KXs-<6(Kx0L&in6IhluKFuO7w3Q}tUcka8MzA?;-?&!=Tc^Y#N50nVe9FFaz{Qcohj~5@T-ts}-Y zJvp_*A9F}Dx{xG}(xTUIi@mB?{GJTT*@#Z(2-V&HgEQpr_{STfQkeE})ZV{YJb6}L zeeO&|Lwn#q*7g`zs*=A$TF$PDG?5m=QP6D1`#1U$v}xYu*BA8YqUPU+UuU;3PvnA^ zNV$Nh``LN^_PO&CJ~HnkQ=M6}_ZCz0?>w%6VA6{O_t$@eTcKJSfE7V;+yRuAqN`>KRFc7-c-nWCi9fw z&QhKhN=1`&%0%mXZI1-lh}sQn$=PjIYoeEs zOlj*r^*Wjs{wik z4z}^wL2Z#}XCj#<^GbAkz;EYY1FR)QYcca?tux2OH)K`HKrS2R-shh=7A@rk!M)v) z($hk50WWJma}`uMXVTm2XxUXTVtM6T-o_fR!D0n7je>>F{s-Z^q7wdmi=;LVr05{i zU(Yaq`Y5wm{XWWmW%T{aW3-=&Wc9O$;_0hT!$&0up^As1`)^qh2~NLNa=5DB5%v@n z;vZJv^RwjoeG|^SFAp!S!6^HlBs{+R_ZR>B0;X43wk`9}*7aa_5cq?*P`90^a;@_sIN+K^qA=gJgf zJ*cpDH18IqC?PT`jhhdr>UW{#owk*0Zdczl46j4ls(ubS?oK!11Ym<#XPfXzuV0$C zl{b1FhkaZb-&MLhgiE2_&C?1gR^wSNcJ7(Fw-$lZ^f(n@RK8*n|3cpusGj)o_$vpz zFwE7cop&+>ut*fM&A^j+7OK5q4S&9nKF7D9y?T>m(fPyIy$fGYgF`_2CDTOee-hO` zBRYKzkflhe;q}(h{ElZBU7d`6c1@?;s!YuBaXSa7_m)GpV26_h#&vyGiQ) zDE}2yo1IJ&ERoa_5@X7)N&!gbMw^O$uDBPg2GMxo4nEiBu%v2IJX*FdUJIDYC?Ofs zCNtIz8FXGx1}{Hdb0Ms-;BD}V3l#?tb=h(^xhYYy-10-*-QC=3w5CjHmA9e!%qpRr zcxMTzaYh+UzE*>N>hyco$Yu1KJgCzy-kvj-hbE%v0zVO(Y(u!+K7o@x4uT_S2wnZY zgB9e7UZ6=ASSyJV{YxZ8yu7cD~bqP)h`Ql8`IWBpiY zI&Cbe%vKxacg_PF$v`vJHD8)8LkZ-)U@KoA+A2A-M!4huYKPEc2Su}@o2#bZ@&L_CN0TLsuiqisOVUCU3vYtSPd4x#2b|{9sAQ? zyJmTvyEazVEa3qwT01CI+b{ZPi2_N;t`r!${6-;LkEzQ<);)xIjsF1ctdBlh@Gz*5 zg)&JeJI}g%Js-=MoI3^6Va|`OcoaMtWTE@WR5J7JB^MR72JOM1deG83(>I5|#imVc z)l#~%%H-fBiMMN8eQA?mTVsQSr1|f)(NQeq9^c2z`|8=p`%?@ZRm3&eL)iZq81k~Z z<0A$YgD@=<6tNq3o(@kUTDUamEj1Jc_b{Pq%C{gLBk1Ku=7LXo<;V6-_DUa)(eHMD z1v=VVD7?{KOe{aTB)UCQAQ}m%u_6;!Dv? zP_68;VE+AM*|Ag1voem3s&^cRga7lYKVLI5l^9fL?R8ATV|O|aPvh?TE@9NIB2`SU zx;d&)rss~@#bC6y4ibmeG%`n?G)wzuG_F3gD6#S-B0%hEhH7vn>hpaJvFA@(j(UEC zrhfcUxUP%+N#-Rp+gYEXnzs+4eja9e#ilp;DI&5DnoBYTDtKKN?$!4mnFWSfG|NWGc{aN-m%{DTU2jL2o1!119Mz`7k}=?}f@ z*2kS{oX@V(o}Ob4WBzmN9=wvCgB~=-Cb7?omZ6Al_$Y*pZ^0>zF?vU@cVjA}ZC#S) z(|cOqU75BjgX57s(unh(N;}{M`kz;;$1Z(uL@VK*+P8KYLx*1n@|TzMM6D9w9-$J@ zA7D17CzR3gjjj3IylC?bu&^!%trszYL;y1&43&QIB6quQ0;eyW)K@OG?r0G;%DIdj zGor%YTSDvop#sDzO&*meU3b_ga96vb+*{Mc#J|>S578%_BG;o73JVO0lAp}xRPnXh82>diJcV^rp9D(4;Zslm zt!78(&MrlO|dm;Hd#k;cWf_2ZD^44%5a6 zVw1WU8J;e3IV4`Un(c2Ejk6W0p+PN$>KGB&?ui^~t7@38~JMH8x8m8#zd=||!OLpCA$;2XauIEn)CLHSK2B;2_COE5Z z-332iOnY;XhNV1iu6aG2Agzxo$DQv94<&EwkR>0|tzN9gw_ikl)%?g<(b7neQTuZB zA|gzS5zokU z*)_pbKyJzUoW}d*zcF$V7um8gSybk7CHL10!{KAzd?8s4pAOw|O*B}kjf~`2IwxEP zH(HBOy|DE^+SZ#26z+EYRxF72+^(l})6lMI>>xHbZ{~GPuDz$YI{t;Y{G)c5p z^<<=N_0tR)%m@Jcz|)W4e3TM9O=32PR)I?k`oM+il<;7>a2 zn`}Mm#Cxq5ttD2|!Dml=Oq=PAK8)I7O!U~hJDq2)Ujja=#Fhhz2tt2z>kXg7e^tHo zm*VM6F#l0HN-Oj6;3fXSVAZ9#R=?rFd__^~X7V&W8pCvhVjVW3^3=no)ENK`I{Chk zJ%eB1kPhKPy9|$!SF8~f{Z23z8bb?$FL3*BWnr1(_ou(4;8COZyj$;YnnHzAX})Fg zQa?*Be)a%SluOp-KJ|LJ*Ea+a0dee_0Supz*mof$qT;kCgLNo;LH_c$BP=)pj<(zs zOpmn5fxOR|IAOj>J_-z#j&TTaB6vHd|FvHD*D~XHSDHw1eHA-sEc@2c!jYm_F-BXr zmCFZ{_!Zr9rVT#U*U%Cu#iMNrJ5|v`(Nj71Py%7m<|bR zqVHcm&w!?#2ZWIc&mn3q4_->mreOpBfn9N(%KIm?Z~+B2bO@oUaPFkDCuumsG;NcvivkYOwArRXHAG#}MrVsh1>F4obS`!>}h@ncc zq(COLgxrXoISleQM@F^me$GRP=mBBmMPEXlO?otoI8;xqO!1q49Bu`f6qtDYs*oHO z2$w!JXyG?)FF?D{z~J^IttgCAtDxnM#oFSP~u-Ro<#2nEyM5CJAE;UX6Wbsg$Mm3gNBXe95PJJ=k7VLc{^sc>Cqn6ZKx ze$s0)9{9vHDRD5dudTke`#*EYFz`vu79KL~JNQW*))ESSFz%2AUbP&f6ot`D{brRel^as^eRm&XkJI$kkRLP%wo4fGwV6j7yOi<#+w ze@cY+@#E#o^#FynNK`Nu8n~Xw5ZM#5tqZFwCLCLGQgq37a(`q&XY*kg{}#^Vdf7Uh zMTsHoBf2>B=?2l$?)|r?eD>T0w5>uV_VwoU`Q_A$Jh7;Y;kRfJet4EqAnSzA zFfGFAbYm;02QDDXPaoR4!OAOESQeRcNb-r3RI{w2+) z=*Dy#^%kDLvwF7p1t{h|3{bZdjUz|Dz13@kyS*f;7->`8`=;Uf7jtk8|>d_Q_ z9{G$t<}*sxYkG`*Hhv$-LEAu zx@w_~kd|>|cjOldrQR1S1Wh1h!-nW@=!;bGr{3qnM%{Sq7yT|$kK*RYpD_e(a6`|k zG=XNKYa1!9LTz#^057w|4B%9IXRgd}17)Y6O--IWMEMh13UR3eQr#8m2jH4AgJqRq#_xBGxar%xc8Viwhs6l{pp z<4ewb#)wpaG|vo>q_DR{^rt}inS(A4%zt;Ernk7_I0o~+JL3t2t>G6m(9>-{g%34Q;SA$!X@OaHrqsq zb3`G!tJb9H`^d3wX8OWqEagAU$JRy0*;BdIyyv&31hwR|pjMi|$siTt9~d9Q`QM6ut9W+x z?Un8ao;7nC3zH01c<4_MEdJ9WokdGUQ$Wv}_LWNvFYN|aw9L#EEut3&)*=Fc;^{^* zqE=e7p>2Xo;6*A;v{#GgQEaH)_?+l7Lqabg^`ttps1Cuom!Isk(Iz0EFO%)U$gIKnPBQh6D7DFRRmS)l|=VU zLfvWj)3O)PTF6(H!GM>7C5atuqcVNnfQ1zMPjduOp<_o=w9rTdjB~&-HX4GX_BX`d zg3(m`;dfXvS)YA!Do;xXFRn|ncAL&+3^HgLAN#o@v;G}Coy3(x)+pDWes!h!P*FLW z1|Oe7;An$4k}Zf=3ETTu*?08i0UT~7LMrMrxz1a|v zy48{&%<(lJH^Eiev6L~(4@IKz!FM80?lEkdzC>5L1l4E!L^ z#VNGlnMxb7qmee*+SGNtXsgF*9uU*zr5TKv)A{FJ!OhJ#qJ8CSO}9?e?fzw%ntGQr zQp1S7Gi>Gd0b;znN0u<%c6)?7vWPv=$imS8RLeaim@B{$7?2e#GztyzYmzo{hH^9- z11J4&y)7qi|?+NG0h$53^^4Vi8s%2E^r)yrtc36Kyn=nd2i6K|r2S<2k8r}#0%k=Wz zS)D#&yc2|~#%WUlEuZpU?$?e;(1}Zr#qf;&Nf<#P!I2OH6~0~I*h+GcwIia);cU*U z+^-Y#b%4CzV%2dW{BlUYYB-qbvl$zB*ho_I6c%4i)}}F2$avp>5BsA}lh5}f;9X?6 z)aAf&s9PHftcJU_`yDp}v-u8x!A{FNgY}SzlVE<+;pIQc^B>r=R?EA9wGFmhzkN^S)FkjI%1o|z zdYCX?JXj!xZzRosJ)LVsfP^D`n)wX#>E+cyn!*bnAOxq{FfIOhqX-e8UY2IwMQsGN z0W_g$mnH!&;{5H&1{ru()p=>Wz27wj1!dGfx!tPYDie5odcLbW@;CURX$8ZK6ZPwE zM*Ek8oU9OLyELXN=D&n_Cyl-`^Y$>JLKlxtjrSQcJ?-iQ=QWT=cbW?eT867_b-~r% zI)sE^YJQt4lJ$Q7$H%cF#0^l-uvs(D%aar*B3?HkAuh{Z9v6>-&8mzV!pqP za)L7m1+ttct^1Rn!jgRu`jJ)WG`J0sWm`prY+NGkcIIWIQ4`-dtSyVf9}+rZAd>sC z=)~eO8T9S^e7<4v_k6C14QfOX)v6}oGv;@0twL#$(u9bse#k`dD7rr4o%$8aB!UYE zjq6)DR)*L9=b?m)UNa4uPhLw(1oAd!Syy67ptU7&#DD@~%TjQvyrBA0kBi`jKL|h~ zi#%~T0-x7JvfcRQo{fZf$<>qsZENRm5wh%F!jcgVq&^jGEpnadxtKG~S)=JuM68Ix zc;ZHV|Df4k9JwAw-Cs9;(EMKnuG!ve4atj3W(L(ks0K1pO+OBfk-nQz+GM9cZbOzc ziB$n$C8-E#dlCx?1!AeX6#~G=ND1*=g9e0HJ<*Aw|D`Y)1~S<} z|3%Rp8wUJ4Ct`82Q%}*-*ZPUXrQbdzoJPn}awjiE{T=KM2p9cz+{<~TuNqo5O3(JY)6XOmhuA5Ef>yT16~|^Vu>RFR@(kd} zy{`CDv+KT>5ZMfX(?HsgD-?U-=2wVKg_}lfl)*`Z1{^x zIU~_mcI6{ofpqu;9V=WVLJ2IUEe<_e?p-xT0zNHYt)HlAP$x44gV^8~o4(wLF7f~D zzw+8`*~h_WaWv%o{SnhO%)NOwemln)shZ~TF!8Jr*$O7s(OCMUH)*uwbAQ(D zp4mvHQ(f({qx)}>4+e$N1wF216VxYFsr-2H#Fvj#IV|I@$mw5nat1(`8*i4fF50d~ zIv>i+DEVM?NHXwwdexIW9f;AmyeGo7*p5CAl99lxx9ioZRK)}^P3<(FyliXfU5p9tJ6Lo!H8c@m&6rvrEbIW?Y zxkT&r<5yc&#;wmo69!DLq`%8h8pFDX{pkLuHq{Kj2VDlE84lt7&k3p-zuGIeht9_ z6a=6ngrismH5qtXjc)Y41ZB;f?d|*j*q_$U_H*!D>ymihg?y5a85ldwazwn&H~zZ| z^bwcUU>OtM#AWAS-g;Nw8<_MWQQ8Jvg?Dui{Hcwj&C*05cm_JFiv45dlM;zt`;#Yx z^+p<%!~JkY!Q~qpHPH?%y@icNB`lC>oHvi<|DL3Hzj0FP=?9UF3tJZ!fzHy(O_mzh zL&`??5;&mT5L#XPX;WnSpDo9WawRNhoyK#Xbk_~=_i3!nU#dHQk}$FTiZtj}jsoStWUaZ$KsQbs{N7j=n1ScS>6MO&D0=AMGwM}dKXp%|>#T^CmCvl>43SnBDFdgjG==_pT zg)+mj22GXTn-Q@f`-Yc+U2ZwwMRfbIo(3piDH%l(CU$C7!qUF@j>AE$Je@ zqosG<1a0I;o+T>J>QRCksMq~bqAbdIfQ^;qa5~rieuzT@O(K48QpxA%YrQO=r<63D z4-Vzl?&Ai6nS1&_kkOMFu2O7qJ*00!(64zz)QBoc&_kpIWKQ%iWs(F}ni-9f; zgY72#Qnn3!y;VkUh^$goY!17%+ucR<(zLd{UHv>xyF><>@)uG!y81T*{hYem zJYd8KCPEV#VsxbY;eq+vhK7S+76Q@OCyLPYE^gfC(umvb&;gqM%mU{e+4P)RAayj0xo&v4CCw zSDkTpY>G)7`I^tR9fHg6y>6yJkB&n;9aD+fqPNFQ82-~1(BtVw27f8r=rHlN?dp12 zHTZjIguEuoLF^PUP!3hlgq(i+CR8_WQ&TS`_IiTP#Q8h#y4%?-<_?4X0S)87>(rqZ z)KD#O{R&s!e}xS{9o`tM7+-`?onqts{iV=4cfi?BE( z9Q)q<*H-IV+Q(<7eHI+7hMnPmVNCsMR#gbs#3eicB3k`IOMqq@3rxyo0E-py0ZnxX z#CLmk)4`$9#OgeGSA5OW>%NOEZnbp!u9x#ptXnN5^{$-ngmQ>+w-caL`$~WP7J+2; zFT2_VV8>=ZSMBax9Egi5&(4r#bi!Z70Dfz+Y^_5Sw*zU2xAK5kM>lYP47pFXGcv)k zYgG2&4f}T%0L^YGJ9B^Qb$*WEt_mAX(s#cLon7At`xg7xzVnbvYZh|e-+wuV?^jmt zSG9=^EX4zXdU$CzA&93O5bGM4`Ytzuy*xT-SXpd1^YqWV?`+F|vN_`jDONCkSd0AM zwU#Q7*wY10^EYla4UI$F&T-1`d43CyVx-_#r|2--VE@%g#5T>*-rmpP=`Z>)`Y-`L z2U56O@~dl*6WgnziGBaG_st7$PWFm_A8&N^EIs=jv^Kz+Ty*I<9&-G>5ha9^~SRkKjY{;q;PD(WwDtdQlHf zg!k{FVqU;w%S2c&#l3`IC)M(?gy1wt-8A?Sw z_*eZkpWg-gA${=dcw=+L#p&kQx6>uA<-R6(*J<}`zSc!*w3dUf!|lN3?<@6@<0q?Z z%bF2LbvK&B7BXI%+o8{Rlm7%uKuFsB^4Wlo%Xj(s(VY#P!Dn>zW+su_ow&)Z?{nfW zjE&nCvW}|MH=-!CGxRDRRpdLR{R?stG@;Sa@DOOuFwei#>$qe8Bd$4iwVC=Hbt{hC zMLoz_5fOZam|<6mSU+a>FJ&8e+4hA#$?1HeM!@hE;(z_iZ3_^FJibmAfO|o28sHyG zTu+{i0VMIiuw92Q~6y> z70Lmc$a6xT@x$7Nuerh}bbB9?8e=1- z!e)x3Bx-0YI2+VpT-)mVsa-9<628=_z{=O3?N8XQfp+BOa$_%#QC%&{(}~Sc0dUKN z`T^#fnrF*7S>e3#n_YFftoKei!vngcpU+>jvQfmUcDPjpW<4;6C1UnAcX?NuwD*al z(&F2*d?C;o0UkJ}WjT)r~Al~E$6$d0X|~HXy86u^fkR*jY+N=mnK1b zv9`3e;=i__i8O^UsSeP5)IO_T@NqueV6W~ZA_!&@>@&aI30!GI5Mftb(1B$uboES& z{H!uRJ<_(M==75samccD-5W|!lZvw3|MB&eVO4HH+Z)()ceiwRm!xz^NOyNicXtbt zBB7KtNVkN9NJyu2ckb^&&pGdp_r1QK{9!$7%~~_}%-r{EAaOcI`8RENPXmhY$GA=G zc$zvnkc6dsI=o*&z2L(+y&L<#s6d~ySVF~hrvZrwHw?zWI0k_5d z+8KmbN2qHmEnWM#g3Ea6W9To$7U@M*%=+xAg#L9^qSG)*Sitm%v@aj46nAcLw6``o zpJc9+A7agHtDxt)mLb7`$_7vru|Yg?vIuOHaSMrE@i3`=)(yYVDzlQV-RpYERAplW ziie_~wK^8-Mu-Y`X_QBoYnq=l*Nqr7?$Q)^o`{Xw0`K?jO7d13_N`$%BJ` z;(=g-iqmgajBiTCOJVg&EDEMf_Jw!O+p`(B;XY<#mw9;fRA+EFjJ*HH(hiS0eZW&i zu-l$pb9$T(yhXqEJbEAKFj`FqS`-?175EzibY|bh$Q&M~sg59h-!A&oyk*j+MyoS3 z^L!Musr(f&QGZ1ecI;`1Cd;}J6YcZ@<f4I6JeL`;7+9^UJ2v}c$-`U@-RV8(Du2|Bfqhqzga;i zA)rEv{P)kEa1o7%9jl7g9~%M3mu-ueNP<;1n69QuyRRMMZnTxMEODcJzn9@~NDp1^&6`-Azh31?;zi<6l;tTfbCiZj^lv<>#3?b_7>gzM)m#f zOZ2*W61nsC4pAnzOiM3;1WM{0@sSS90G3~`okspq&z47tm5hO zLmR6iRP-Gh-!KGOkQ!(md_OPj-w=;_qpa<#Pt0d-;V^v{MCrN?)>jSv+}8>B0x6r~ z2sV1EjOer)GdaZaVl{vJNbGcB&~aB(zg~Z@X)aR27p`j@@#IFW^NHl8-=yY-fX-F{t=V*{^gmTCd-!@OD z=e3f^V96MH@IWc(LBFU=%=oDX7sT;$6)x=5jD7LPl1=v-3c79G;@S9j&-)|NT^sU) z^Lty(yThdQ&A#X_nQsl&#az&&Sun1jrRa$_vk|gtOu8pV_kmAGF5GQjcM?pZ-m%|C-A|xhsi&C9*}e@8)Su#ScvPm#Ewlf3>(G@ z!m-O7G)B(C{=6m5f6B;zG|?N=f%8o)-$gH1n5qsJTUTS8Cw9pP?6`tfpl?vSux`*{$d?jbd8xDSxjxbNtwOwX+NXZt@aZCT^di^FzLCQTP6V8~`q_+I;(>Tj%*Bc1 znhNThPW^V1DA_|K+n(Lq-`(Yc*W;bcB<}qs`=k`+FhMIY2bV8a@=uvSrqLN%>&V8! zp;(U6ViRQb>v9pqvRq3DTo=3xq`nIN%PK&#;xr6-+hC(RI`!b)=WOaH&Bp!Aut1VwAc!!9 z2`s^Qaoo@vS;4E?BJOdfZJbp-#KhLzg~rlihu9?v@le&4!CkeK8(=1q1#h&kh48Ls z%*|}<8w=0K^OX~^6=uhP?cYox>2(=$k27m}H_ej{li~h>&^np5TJB8J(8k=h#rQ6C z%x82VY-gMzP!WQe3WjW5)oAY<_TEi3oY#$B7I}<7P&P2nGrC{qnP|_v3G|2_v*K@LFshE zSrM0jR+pM9+xCV7lo)D)b{8~5#`O8tvqv#gzdigHW5Vs?LZijU<7vSmRbfBfhX6{H zmp)N;YlwReNylZ|iX%jQof-CwP19GW>E23gqF*Y^ju%Jn7PwqxKi!&aI^?&1Saela z080LnO+ec>WK9iZB+x2Nt+5BCdv{1bep)cO9Tf%D>c67aWOr?4vwOdAI77yB70;-E zj`_dJ%S}&s!BtT?Mpz(A{-eC?^{)s$|h!+6l=PI{pL^q=JFFc0$0- zxAE6KWkqJdUa{%|wc`G!q(t{qmJK#29Yppe^!%xls$`H{nxYLZXCm*~!fi`4ao5(O zp;J&{_mTLUJa|$xVihqGL5C*N3eOfVrx8W52@B19dwR7Tv+2^v=DdS}CWk*g02CMU;}a)Q5KN^8NmuXd2A6>We(rf~V7{?$5-a777lMX_BB-_aU1y z=?^t-Cht;r6#9va3nM`0ewGFGWrFa1W&O7C(Jl*YBtC%PIkr~eZEdtgNd@t4;6flAEFH-vP_$a7=hBwa~-ZB5ysYl;^ z{V}c~Xp#jqpowDqsQ>I7d;+&Z|_;T(6bMIwYLW(EwQ4aH*)+k&VXuNp6$#=yGy7+^|0_{tnpZPjfZB8!R zdHu+ebhP*ij~U4+=g!oASC@x!6IKtM@@$1o*2M!JtaM?|!)AaHVU%#S7(F7BS;0bY z1v(nORE|f?bJKmU6LHn-C@Pq?6!Tl$75*XwP?MH-S8ZPKwC+%TAWVN5@u!xV`WDAk zTZw6RO^n6vC~LCzC?fW&LM&c>j*vaT3 zijsN=5gY}F33Vk6jME^v>!}`le&8I8FIZyKM%1YoB+^fSu^=0VViCpN;Xr7(`dM>; z36zvY>RJADKf0uvw>9pS#zncSFH;rp;mWO85xiQs2AY{PLCaC#fPtwqS|3E%Nh#v# zvX18|27(AdYqZ7bwFImAh)2-u!H_Y0Ox|CIWy5Ey^>m!6(}Oxzu}g;Phn~kvxocvJ zj%xXSQDo~xsB{use{K>(5Rza;#I)37sY5Rhw(fGPx1sS$NceN8PK2@1HlGF<{|8AC zCoK%Xdll5ZIq=Y4Ruq5z^uyuYNV%S94yasMp9tAFgQ-AVvPH95jI%a_30op=-^O1ZvMlw zufa1rc)jd8D&a}n6^uW5#)6~s+ zXq_IPAx9?wJs&u*&QL&Wku|6NzJ4RixFWh za!H#}#WO14zXtOTMF>J#fZ;hSp;{xKEF;_N2ew#$WhaaBT>+S5~X9Z~7IQnLT;9FF&t z)dPeWU=ykpNysidOED>=fk71^#ypOI%tY1;pLw-(h(%N0fg?lPIh`P3}fSh^G zu}O<}o)nkI&}$3Gy=kR$xLHxS#K4iAu>FVjF}M^*@$HnB>tgPHG3B@EzDPpX%sEpA zSw_M#!%I5qx5;1qbRpD1q}&;Yn0oj~9~ge1Kf5YLDv+s(Jew&Nfn#Pr$Qhepvy$^s zqM&XihPDX?;4;<^R*+lQy}VedhU zZ?z1Jcus_j#3pcmbAdfczB?B!;R@6h`Evz;qnlMzdPiK3WyF~R>EOz`DiQN{Q699)#DOcf#0w`n zvt;U81R0;Vhz)3*5M3Rp2JsnU0=InJIwj!Q?5of?pkDaG3#uxZ-b*X^y-VX}pMnv8 zzep&1{#~zO#ArB3Zq1k$D*{PEjC^9La8^jyx5xrK7+^RCFk}Z1%N%b(by|EEsat3S z2+Uez%t*Pz?~A%#x|uT?88$Z|8b?NU`T_m@t`DNpavm7(O2t z8Ujag9Xzlw2POvG%Ow=63f`QP)=eI;Bsdt5_N}_6X@3>L^+5urdFVC=y+d6$jN_}c z-5u&Q?%KXTy(NAU?-Ii(t;WBo(BIF^0sBM&%e>if$KPdA8RGWarVrQ!WnmBBLqgqtR3o6jT4EfGQ^ipK6_MBfR~#G!RNErFjC4cYffD}n3?_t(Zx%km z#@|Bl-jfb;=J0PNl6WxN!47=A`OqU1*sT7(y@2tLf# zE^}&`z|KyD!Mt{wsY_~aHe596MFuG*BMUNApw;yLiu;%S=w7ED+xQ(K18cD{?tIEp zn*dt*lELG)q$iPl3^-vptIArK|B%x_f-DxhbV4XbCl*W^H2D?| zaR>FQh93irJTj+$2&wl1k75Z;2^sr3`^TsGIh_YDQpU5Uwg7DxW5`2@@!>^C2Qa=T znEZGhkUtOyxEG5q5LUko0Y)Mef){?)e*H_k1?D^yLcM5*L7(4z-Jk3biK2~$5JL7e z)aBUg(uqtrHSW*3+UccRInCnfYmqzh#(UzpT+pm;=+#Sl1R8fCtj~&zbW%n=>1MZ1 z3vWFP_ho1Cz-YMRy8^t$1)aT_d6gZ2PmI=Z|3>d7-)z2OS`rDLqHSzuaD4Vp}S-Ulqa_n?ovz@J`B6UC$@8ai6D) z!2fGo@gIZv^+foT%*Wio8}UP4e<6S_kyM!b%XxTP+#v#)vfKhgkKByZfmcs6wO37Z z!&UQ8>6}za&>0pr`2GU)NQ5l^)%I2?4*GowSC-;c%u%;~WT6I|2^-Ipw*S*g+_he z($)%NF%g*Z zC}71>@62L~_x*RrIfGh;7aw5|DM_LGUTfH+fbAD)^jy0Kn!h!gztU?DMCpsq0l&l{7|e>X3H22D zRwEbHg!Do346`0K#5dk1RIc8{?p3#P>l9o7+J}IFqco89U9U%~US4Net-q{?#q3kG zW_u-Uk&-CIzDCDMf6^02>ZN+@tJ@AKAxBNMn!JKb`rpmZ#rk&Kh49P>aE< ziJ4_$f|itus0Rap+EJf#$G0y{RZjFP1Y`KoUOCMqr~Y(7a`UP;G|_Ga**MqoAbP0P zpko2sm&3_iloR&}5_q!Yu{^+LqZq){zhdOf7Jm`0O7WX-zL?{(HCFIs(;XagR{hAa z+#rT$H}_g+ZjK1W9d$M@KeQ~r<~=6Jp*lxwZ!W)zU2EIxC|7@a=`}A+>dK1%d_869 zFDhdzPP}i%Z8^04Ru~b8w{Qc9H-A+y_O}E4I?&vO&|tZOKrIT=qaof4b^KV&kl5he zS3;)9rpOWro6>Pp=z2wkPqclGp&M(ey?V)Vk_ILLy?NFZ47WvpmM_Hy$p(5)U1WH~ zGN~L^RO|?|FCXmrne2_j7+q5}R9$7n1-|+@lzpsV%%vf{#@Cx7Wbv_C8(JI@xT^ro`=>$@kNn_XnB zZYmu#UHI-vguhtIU?I94^n4Ty|NW2gRm2y!>s<(eN!exXVY)JxFeUnXK*B zxLb2a_O16I+-q>+?@de*Asq?eA@Q{l#`8L|GS7K)W8vL*xZRzlg7~k#EzmZ$IlD;T zH|`CO@zH8sHR2?4y>gTso_!RYXna?Z8E-1Eai5Z_`F~vlQfc-Oj>qj$%CY`v1{e+p z)l}x?DJX|_%7nh21GacqVJ8YTH7g3|O)2`H&M!zD?MItBn%RjTM>L@({H^sbc8;qm zt$jUA`aeb3q#HQJ=N5WNpDDRgb?l`EnhF`RmQH=QS>fw$>TwErkr^ZBQVkBm0gf9 zSC8(u!`D+7Fmj%Sg$oUi7E#>E`*(Y@{yqL!w; zXBlf%x$T+ldxPPWUGYA)-|zT7CUAUFe%LDwc@nR-}iwER_2XsOcmiubH1!F`a-!)R?A))4k%#k6GSSN%LuOP`15uKeA z?Vq1ZC3wrS@_~a~jvnvA({o!HnFP@j%A=aL)8BzxSul67p^UIUd2ku1vvn)V)ZMi9 znq0Mo%u0g7#LGGvFFTj##~OuS)GwV1R;1Ph>02D6!C9 zVx?IRRx%=W>WyaC?f6&c;oIfJX_WT}u~J(qIfQm79r?;oVV( zWTI{eB{g~QT*w?I$_0!aI@~om`XvqH{F|heiFf!y*_aLd@c~9wHtx2s4`TT|NFV!s zOPeY>3(j5}NLy@opW@OccH=hgV@uwy?;C>el}d<4^}k^raq(^FB8IQ<*eVfTaY5AQ zo*jMH&(!4pm+A>Q(tcUluBe?)Af5|?A{Z+2;2W<1tT_IQGM44cGV4H>v?427Mq3+9 zJq+r#i1r$t-tvCw_+3Gc6cB$y-G|j1@~U!2fB&&KAeI!B?zeXb`zQ3){Xl9Hre7T) zNlT6PI&HOEd~dTD%!$+q^J1QT?LQO5Z}+EvR!=xU!V)NY(_0M*rc!n_F&zxXfL*T$ zRfBHiUnwYO>WVf_YCUky`E8R_}0M zq9CxSV=%Ko%8@Fgz4#fOqSd2uM7opSa}0{+RlLaxWH@+^bjBOr zF2#VGZw-+evmRTU4IJ}xHxmiQfQ#ij&i7irGf>dcZo)Y|P6(~zyy7nCf4|`)j?YN=)OwlP7)Qnvd0n@eH?l8v@i$>9j zUdiYrQowH`q}Jzv$bSbGFjgE+Cbgbrz$V+69p~~yxp<5YlWfQm)EcM>P4A9q&y4e_ zy5#X;#^^Gp{5tg>&Xo0q_(*A{*FXO#pK53E~=%bk# ziN$C^h$|z*hY-IKy4VKAePS8}oV`uhjm_PvL@fTk_E86~j|u;um6)Q9jEr+g=B_Q+ zo_NkZIy*xK2Ey$Z{aF%u+TO1$2;z&&1M66$rNctd z(d_8yH>2g^N1uc=Lf7<9?9mLhPh09URiCuVR5JAbcZ1&faMtR`4JX${v1w?~p6r{> z3G>Xw_WMv*jV4Z-_$`f_4<0G#EPRQ%_f)a$C=l&r$GrP9A#z19~xv7?@Bc=c4$7(Y2(*UVSr8dD830ETJ{mb zIA!nJC1jko9N*s|>o$k|_x@Y1Skqk1j|B@=ln}3|R`c@_6$l5Hv5c;PB~gzzW_znf z$IVBERzz??p+Z!iB(J%0U0$nOGPB~?AtFiF%pgJu4#LO3O10)!HZf(95LQ+Yj|%SS zY{028Yz_9L6L9^NG42TB%K=wyMVdI%k*v@D(4TO!n!JeJK~) z+f4=a5>-KmP3t$`PxZ`H35HUzxS)C|d&Z~e2C(#NEVC5)8I3X*SM{XjNusqf<=`1f z>w+gZIRxljk9qkk%W-YyrnHTY{2DQ&K$#eQCW^n|8S}PxY>p`<5*tmtZVCPFT`s@|g7a!gBG7!zJ~QW{TD+}M2pb(^ zYC2!wW)G^AE2Y4p%g8R1i^J&Bg|6UfX`b+|^=Am+`jI3#?kH2Si*!Tyk9SJ)QP;0{ zvGr|ib+Q~d*P$RWy3{2^l0}35st9E7mQ$DqS1ZD5@YuJK%pq~K$0H#q_9!8kP8|t$ z1`c`PT1jEt;_MIttJ9Lpu*2FO~c zaZ>#Q#=YOirhg=PgO-@L=myN{qt5frAN-W6@wUhWO^-P9+`hN8WrUxS?()nH$)hJz<*KKUPiivZzS{tU6E{n|?DS9>_q!x!*7InJ>E})U;;VyKTl92L0HFE>Jk< z6X~C9k6a7%vDL(152KtQ9RoZhnMe!2i?L0dc45Ifs$$6su7P!{tofq44eL0rIu}3};(zA! zAXji^u>U01jtU@@j?>}+lW&@FJXpAzYF+N!FGV=4-xGcC zt(T!!DOEk--BEefRT3aka9ZIR`&tzG)rwb-8);49iO|cUG|a!JEIz!TUt!*peA(7# z+HU>@Uv`biw=c4_FY6kYTbF1obN6pLDZ~i+v2?RpFF~mJNdPf!32p=0`j(1Lf-M{d zo-BHaoUPy#S|V@O(J~e>kaO*xw&Ja})Y>)S-<&#kq{KYWBP?f?}8;GV7@t)umLRq60gjh~C)RdH*l2Sv{h*Sh|y9?>J#o0Q;RfeV4P8VqE%k zus{=W&Sv#}Oy%^uedRnE^vJlx&+)lBRuJ6EtvXU!NjAsp=p67TcrwCmVnw+erz9Vw z503UCeq{06@%`cDaca!z!*h2+y`PBGC4PPyaF|d2i+Fe+$D;QJ)S9U#jNsZwD6RdJ zP`z+nYHi?Jy;#i6dVxTFZb|knE3@QJTJ8(1CsZzHp`SYEFwvAykRooBLS=?*3ivvH zmC`V>B2R6;1uBy~Ua$nZT|Ih=%WO2ZN`5Hs$B?AZ!v&r#tA~FO^N}RAnh}2a88+04 zT)ABim~T;YZ1Pd_VBUk0jc>7sZ7=i7Q`-P%g>PZdo5R0Ia|KX9S$nO3(W z+?b*T5<07uJYJ{rPpC>hjwyJX%*x(Oj_n@oIum|0`~65F^%%E=4{iJ{~5JKmgKMt0%#)uDdZerwh5(>tM?Zo<;KPZZ|oo^xeY%}o+{ zFq)AkY-mECONKGP#XnWWrE9YqU7!SM5hV)LF!m^EWf0tzX&cEz?GQpVE4)A%xY)oR z)S;gql2LGe_?Qa%?%~%+eEhN05&|!)|D`k}sefV3*rmTc z)Li}@XFo*PHcOnRsEjrdDMU(2<8T8eCz~M5G&jW9Ngbn}23SiW$SU%e4}Gxv93!yU zD-f^4?Z2Vp+sP;a6y&p17rxOQbzYM8aCC1v_d#2b*l}C*%3)i?v}~ntT8UwZ7K&v{ zMgHkMVQcgE?H5nKMtAVRrY0r@$IW~7As{KF4Sbcvxk}10qC?(1uba~(q?c%BU(CkF zZ~msUT@-L}AB8?a1@@8LQS}<)w)PD__F$ znTpHN8n-QhG^+H^B>r1fW=3Hi4smgWkWJRmj}$?rlio6V7B3iUU0=acGNCr>&-~q! z^BBOTp3Kv!$V9oJLLC2+iEzX7a~6mMcR(Z%EQNVmjnKq!y~X7V@$PT;TC`H?QnU)8 zM3B*V&xjDmg-T0%hA|;22l|1zZWtA0HSu=7kK-F)9KD%w>!p8Im_Y^^pg_fZ6dDQ& zlwgJRqXD^YUzUP{ny!1WpCU2A-!&z^4uTQ32N_9mSgqn)dAAtf2T&w7Ai`o3Hr65OoSC ze!h2I-Am`c>MsS!mOMpP?A2Q?ltkF8aQ*@)%|C^ZK+Lc>-yi@7XPK zi@0@5!waNJUo0xn=aGac1qy{%o<`4qB0$Esc+f_*ChldhZ@7V z(JLt8TZidcf_I6?DN@Kw-x_liu6ke#CSt87Gk;_zI}(+LRnyMxX>)mYd2bm(7g<3F zSL-VFQwqM}JGXY;~YtCRoK|*+W7BLsQiyZNUo|0@@Ya*w3`4#LWv&qQMxaVxX zmKEfVx#I*{MvOZ2v8e`dGFK+c0^rR_^Vf(yvW^1IuH(=P-$;_BYut!X8OD=&%lduT zavQ!@U@)ewBN()oe@9b-EI7-Oy9(1$RYS%o z!8nPToafEyV}kA$(^?)ZdY9B(lE(BK?OPILn;xi*Rw#Y9HTHk`AmoCKry_csQpJg< zaj$v5xfOg~7n3k$xE(cR#nzGIaFaR;&U+dEdzd0FB*hq=vL-`Sc9Z>fYS%!mlcp!1 zc*kMrei%cWx`O}86R_^Hr` zqHvUc$^{7+sFDFKp4-%A7@X&O|Kv=+jWZQh8$c4Kvz5Gvo2HMu!cwRr#b`weBiPyE zOL-ObF{JEGfIchTa}7ifS{z^CDpexT_A4<-ab0`HSC-5=%k$C}JGZ?Ue?F3)hR6xj zFE;j!4{xY+U5-g7d+RIwR{B`72KdcB8>1k{jfQm%*+>Y|!G0S*rU^8rT+`(akVNmC zbhOGx9QhFS8iU7X;n4IMN_}Al#f1q|?Q{|oW1_v9&oP#a5s=-Su@g~p&|oRK`e?Nxg7Xua@X+#Kd%=iG4J9iOm$!w`Jue0W;T#GEO=ZcziL)JJw@j`ktPC&C*VsDP>^ zQ*+uhqz|6_ZeOaN@7`E5j1MZwEir)`b&{uYAd=Hhw(Vcq5H`r=9u;rYd5zoN@TW-C z5W;Yy5bns&^hcyr>ObPvjZ&Hwr)}TK&}?gr!AcSMe-;+kvq-Ww8RiZiJ4cQ5Zg%Bd z@iOLqF$v-U3k`N{{wy!eXQ*U(+UTVMHgw%el%*iz1K1b3LAjGx9@ z4SwLWb(_eYZ~^;SygC@Y^4}HS8^~;ZFAATl+jq#mHz-DNP#a zn__1NxS5)x$%w!CfgqvHg`=F$Kf$T$%_tMqP}ni+ibz-}f!0mC8(={%prf+Eay|Ot zLs5uDjq7jB4<~OOqHe$hr2Nz{Yv{XMgDC=Vi$?`mpk2b5{!czlFyyemQCKzlhBoj| zwlhVCnr1p9SIAzoNi;pWn*;5V;~VYgV1@-+b`6As;Irp{VlGUBT?*GN^R|rAvB~M# zY1ZaTW4)AU3MX>v;By@Tn<^4GxMb_*JT+H4X|2D+!m zq>$%`1-x&)qp33^xj1QNORP-QuDF>Y2|-IReZq?p1a~y7Rl1!AalKbXgCeTXpoDH2t4W|GC| zF$mVS>^!^;mvjzS_?R@5@r(Ui_|@D{fgC_V3{;}V{X@swY{OUF2BIsIQu=FSAj~Nu zWek66clw}&@>3f9H0)3{_>gMYN-%p@TmPN|S{HZ5u zJhZV@R~J7QAT7$}f=&y=E`k;md%0~l?{MIHnvshPEe;_#AzY2y@KmrC^%F@HcB2ct z?s>bsS1WlYaMZ}vi+X7zCvWAoT0TSG*sfD7ZbRj zBk-n|=PA<}3b!p@*peilkc#`&vCwCoZH^E><<@Xiw2KXUEYO`t7oT$ePj064cg1bZ zzXNX;WZ5TuJ%;(`&pwFRABGxU#stom zeYe(e$xo)zMy7uZi}s$V&hU(|snWMPb8 zMe}?z@oG=|TW>DNGfo#zwfXeUcr0RygMV0-DEXo zt@BoK5=~8DL(|ZmP?FrZ6XJue4Mh@m{-t7acK)1c}>(jnLT@4Z)*VqeU$ zR^`m`hBuz`HBxdKMqR;z#^DdvOAW7vtpW7Fta zJ7wk4Y1pmuPBI%YkT{?dCGK)e)KG%L^rSSosau${8i-`3GwdKz^vS^x%hJ6}@8a6R z=WVB_(7nt~n-MrD0RQBZxopYFz}WHWX};lznXGZZf=f5zK z8idAQt%N-sXpi+y*T9~%!lM7wyD+6Ex;@OJoiJCgUQ?J?k*NiMgEg6u>n`ZYV2bu7 zzVoi?W3y=@c$+#0d4U=SBnLv(hlLO0S{D87EO++WS`P~)6B)rd8%8g%zhR#*d6-DXfqQi4~`*nLXlmx_BbW8 zN5%s6DFDm@Unx`@Ca@)j^)c&HZQR!Dnh(1%s@CpZIutiJF3UXDt;SVIphqlY9#x7v zU5SmE27TA2rJP60x2X(8IXV$M+k5m+xf?$|)AYA%4&<;@-*{!Hl+U zx%GAOoGOstrn4@W_`frE%+bdI4P-(DDQGd+ey496{qDK1Sbk@pF>XW0E)n)jJHU?x zT7rK*ja9JW)zomHA{LFFJ&8qIJn-+Bg$vut^y0v6GGPi0xH)rYar$vIM>Y|WLaT;ZRCyqmc<{2!c zf71;H;(RfD5_a~E1M8%$5v!)0HB$yKioqI>@n`YopxId`^R-0MRt;97vvBOViNNp` z>1}qC`SAy!96?!J^7G)WN@uqrZR_lz0LL2yJF7C&^ zu(bfzf275Rh$#G=bCmhVxS}+ivj1`c{ioX*&mLnhcU`g^=2I{Zs=^V;xvnMr_F zOX{^)^8y3GuduT6JHp-V?Jd=A*WU9=BfnAeZ@AKO*oFf`jvsaw9vXDuSKliL)HF58 z|4#rP&^z)Ufgp)4U5riGn=y)Sm;nf=3n`VF6&j}qs*B{j2=rAa%2^ylUwC_hC@4Xik^FBySbY1Gz>e_tyW~*;`8MeRE>w)R0eZvqDZh|62iq=-f(wE!}a^X|x)v$2mJx ziM2{eYOc-(e&XWx_(Yq zSRLbf@+U8I+!?Bjh=D=`!wbjtmw|@QT0VkoC zS@Cr`l!0>QXpb=uO6AYAlO@?W7h$$e1SH)(dLc0 zxxh)hBh8Dnlm6G@*B&7GiIRswYRH@J(gjOcOZ=aGutD+;H1U?naqr;8O;NjyU{N;6cf>d2B^H!2kv<7_Op$u| znPeY&p~bm>xIu@|tOttpT;_Ks$fElWCR}DrD@+JlDbJ`r02qKrFUHr-Pv9Abau>}U z+@?V6nv;k0S6noM-jP8X8&gztcN>tQjgPBMKD(fG`2m6iLFBmlu7DQ5T`UmQ!oc?2 z{0k_irylPUanu#LspePOcQ6u)?gKaTFIq&lK1>~k`W%LB=o3*;B%?LGky`nM{R`1Gi6E#`5;V7 zT1P^O-6sM7hD}w-a9`12OKj|fzfYd(rb!6}BexPeX5V+BMNzN+DXq3e5IQOBZ3)7& za~yBE40L1BC~!5+%$fW6roZ#m2YvdIX0PDa$h5c+yl<|B*2-s{X|eCV%j(j>NB1e9q|i{;edej^ZgXLTco6 zO4esjMQKm2ur(!+O8XH}$sZo6KoK#ZQzI>x6}F?TMxLyjZv)4}(RJNtCl2)g-Vyn( zw2bJcBB@AMIS!7(z|$ zya^1Ri32Ngp`nBc3@PJI{kS-Om_lz;B=`tqd!iBl=B571{=xD;3V@&aZZ>Zye+xg= z@~K?4=&=V>d=X>RQC=zaac128RtZEvMSo{nB`s#aVHa&rGWmA^C|^fpFzf8?EtWtdiNve6fOEvAxlk5GP{7<=TesyEb5d%r6S zm2{BJdPV@@Q%!ncTgNDbZ@#@Bd3)6S3YvuBcNR8(h^TBtjs1o6DF7GWYXWsJ#QHY| zr$ABc{j|s$1o}5uW+KK5Hj8h8LMKoTxbIoqhsL412vEyFWc(s5U-*CR0z`u2b#!z{ z%(a+FFoK@6hzqn{)Obb3iI7}L7{i}Z#JU#40~Xr8F>Ze+Ea#y5u!Ucc`j{OtK82`C z5&bgL@B8DQTBn4_87b0_te`tt7*TXTf%KqBZqf%Tqqgf*zjBEX0tL-9Y`qU7r#&%& zgA6@Mn#C{(L32#~`7A_IKL4FJ2Anu-GXlVMgmig&QUCmD=9^gZ7lYzqFBVi4iux zSKvWziKpLCR!07yDN*R?cNy#999UV|qpUCV9*FeTz^KD~g<>8>uR)=ksXg+uNxA{& zK7O>JApn1*+UqtI-!zS7Y4G4&D|0Yd$({lYZH)%~4FK9VM_sG+^i)yBXM|G@_sZ;G zm0tTx=?&S!-#POlfy}s#@lHfmYhR}zSqlMa;@h47*VtD^Rn>Lj9!k1XIwVC}8tITO z=|)7PTk;%AIz_r0B&0#QyOHkh?z|iI_4{+j9hV<6+~Y9zS##A~^NB_JrfLG}oEacf<5kLdNI%S7N-kzrn5d{fVy)PZUqSTI zd22Aa2%7wD_(SAa9qa?UONGrzQ;hxDfWpcCqPrKfm94kbIhKRBxC>Db*yUhvLUnG| zWLVFmqeoK*`0j34v^C2f- zHav@ld3+XN>0_$%b$am#vGMds@bq=5pU90}KVlZ<)c3rj+0`K{%im*T2YI}BbEX75 zcpHvzCsUi$Q}2V}CpmBjM&VBaHnAxi&Wau<7N7}P1-lKySRoUgx zwC(k&tk_Wa&BZlvzJlpN^wP`R;IFD!%bY>#9%x{xKe*yo&q&Ms2 zcwDJy46gC+(Rmw??xnwp4|`qcgzWYry<3$p7EY)M<4VYAcB#GvC8)#ua8vzzQyc9> zczdxKZA7iOW?trzsn;52!qML%bN%_Py*IeD;E{4+kUJ)DykR9+kXtFY=5Uy_wD~Z0 z%U!q*HGkVQ(OD4@0tM|@$|>|7hu@kdUp$H52`H;vFW#kYcActCE-eDNKn~GNVewV< z+qBS~AUC2l9>sUZziE>weUC4Cc~Z@vw`I4wkJV$0l)CC;r8e%GwqFN15yj*rS_;Xj zze9wi7j8{b`!+|lG>LCp05H_hTt{wdL3S~iImZ=QQ21LqN7O#Y}@S$L|}&_6tt zZhA2uUdFYHEcE0xqW9#SwynipL`_!LDCh{L`ImgGE*}ymD9eck5v1^VOmF{+TY>ly zJ&Q#g8Eb${>fi7kxZmJ;+6oEymOX6B3UoBF^Y>~f&Gr4*&>`t)ve)U=*x3Xl;K0;wVyE??*Y6ilgX+)S7Ec6&kv`bLnds2n*kthfzIiTTCg9idG;{p z_C-<*Ag!MhWd$oiwB=3BZr=Zd^J!hMsA_a2x)iunxVuH$y(rfgZD=naa`_beyXxXW z1W`_sJWkCvRkv8>OQn|m@SK(AvVEz2kHy8L0jC}N^w#6$O;gc)=c%TMN%eDT&>m|Z zvp~b(sx_9kK|nrMLby)P7_)mIb3IG=KrJ`ydjmCQOgBA)>Z;#geErr*VAAtG=`wY? zKP{n;pu@;pEX44kfINGIROF{T|KPF^F{Kq0h<)lf` ztV7jC?2mK)gU%}Q8()z!ssimhAvjJ0@l``V$`GcOyyq?AWks{zP*cFRN4A?u!sV2k zcAfK=9U!}JSF#ds58_R=?5~ZB(g}OFG7Be&zQehES`{RYncwP^%>aDMR2hP<4lxYm z1|Cj6Urtg9RQLT7(N)scJ7w*beBoCBoS2xGT)^~%T&ACyk}HGNMNk4>h>8{ii5K$p zRj>b5&(Efnx={If-Et=Yl44Xjh(7%fk~%hhsU~ntW(#`=J!p&+t0-2~Jj+SZoF7Eq zQQAKFhFFrT@uDN6F>>?_c+X4XS`D=)267CXP?`4|dJ5P#NCA%mYXG3G-RI&oFL+vs z|AcY}b2Tki(4wdNkf>adyco*>%E;oa#7w|SB9u4Ps6Id)Z3`uA1Q40{U&?+|O^SLS zq({P9{pevyEy!-B$q(iKf?Rq8bJkIxy=isM$^w(m#m-B>&5TxlNxRuEWRvnFUV6DG$VLtZML#JO^HE#;`QNrkfh=g;w)!i3dc# z@eF)jk}Ut($2E|M%ZLJ9%!tQ{i7_M*L+&tIEau{Tgu#^v~1)7n9-^;){9 z8vjZXI8cM4&#&x1tPOe4Vk9g2ky3#07ixSfnZXHldaPe9q;@DA`lzY* z81AsLcvQu0e-~~CpFfzY$WaH=ueyuiIE5e%YvI0#AZP3`_?@{|)F4nXlKI_mhSH zjlD_x{YkPBFaYY|2Gegsw}$KxXWN$Xie=Hs+p=x7u`Z#vUxzvog-=PopMDw;b3uH# zzgZ60&`T(+EJzq*utpB#mSq%5u7qy8%!d2s;I>CAjn*6Nx5xm0V{pu5qTug#(C?b( zw*KWRoZH=$Fqm$WpE6{dafDkFn^GrBC91z4-hcR70Ls(Y9eidNB}GfZi^&!MeaX25`w3yX)dDdZ6(iiZ(g#;yT=%4r zF@&i|TStuxY~6h!Z~A3rm|QK3KKoM@V<58eH}uX0ZNQ><-`So3b!VCA>_{y$zgFssJVhAbv!9#3)n7wM5JpI>fmz7Rb(= zA;;N|+LqKMy(du}uE4hszLNMP{j|h2;(|;=&~%b9V2t)5k(BmF?*Jr@xXP+NOp?pf zi`jAjGnWLqjSE0b5zg2>1&uGy@f})YfzmS@QhXa_XL*Ft22wXbNUKml$La}J;Xlf5 z8bP=r1X@FFy2#$f-}n@&h3qHLo%2dDjzS`ZwG=e?&kti2wSk;_V=hh|$Mq+_xZO zgt=Iqx>T$15Eom>5ov6a?fo(AO!%o;rpX}k4$QNTKoU5k_svrI@dsG&xUUTFbHYy> zLOoG+2|*sS>qq|BGA0JD&a0UL{QIsDDu;SuN|SLP;{`&D;qg(@<6 zfE_e&CFJ&-9V811xW04gH>5nJH%yW0A0zVH=*4iYl~Ahj50Gm6P8G%u?nk&We8?*z z*FEsaCtrKD3us^l9y7+eR;+AhKH}{s!^juL(uOhNQNd6iE6z}boB~AQjtjZTAFg9S z&NSO;lLcIjlI9&Ti-KHXauMNyneTVAKW@1=;?xn$6A?SA<@`02!q*AyD8`?n@6^kiEg)JgffpNtx z4uo!2ePkM3EzN+SY0);Y;@SD6e1X{Oflz1wKCIN67qDKXGhFkp6LPpV%gx5>uG%&f z>?fIWQ>4$aoP*x(I^kSS@Yt7q$-Kk=+GVl9mg3T>)_?(L^s&iAD`0_@5Uy13~f-y5$0^~)RE_}4=_XxW>6^pF&aYVx7&tW4{c z+>%r0O=W>9hFzW|ZT~;QKFjsemLH^>i#!Lh7_Jjt-4+X;aB#Kq71wdyE3%EQTUky6 z92MbiB<;bNcYhd>G1o&>t;8SLylO*?m<%PHL(qnKUrPaGE|#g;YDmc;)@~W8@Fu1u z?rxD0yQUrkLVQJXsL`J&0{WpBWQ_OjOE>L{er?Y&5d%KuE!y#zS9wNRTNb4qk4vFy zc_K<@IDb!g;^W=&P?6@chDoo!1T%^EW8GU7Ba8}o4llTeyt`4zI0qbktE1)$He+^? z>j1){oDiPn?SE|2A6Fq+FRk_%q=KMWr4`wdMtb%ZD+5rq7lulz<~kd!QJ4VoDonNL zsPBqi6t{mt_PSsy3wwOeiw)&o9m;5DT(hJ?gjPB_va>KEGJS&BSS}ZW28_PeeHJriTk9yg z*r4-M=EjqkaeV|E%2KF=6vj+oJBW>EZ;%H`WQ#p2VfaX2+YJ2lJ{Cv$2VgU*f0r&q zUw1bGjQFkQAG0XN4i)c8&1b0#=WlEqt4%P8j9b76F5vcU4Saq>dI#_)%$}b0>?Ko$p(gx1v*8{HKopxVVsf+O}kopHfm$ z#3UHAC>`=X6|quE{NV$$#fIk-z^1+uH*M-W<38mc_5k9$M0)j|Zv z5&u&~K<(Wqh5ohCnM~HaM+jxgsFjebwq*<%Rz7*ONeI>Jf59X7PZ9LsA$DO7sl~yd z&mPmGaQ&H6TK(XzH-F*jS-J0VHzR+7C3$=JhmcMW+F%cU+n*7_(;mmjQq_+z`ufeV zv#%A~ZHhb}q4~w@S2P%!jYjgaDCyLC*bC}n>+#piH6l@x|8CkpK2!N0VC$i z3(=3%H%qv;iNl(qovZXOFS7MkVv@%jkdT_(=021${*k`Cw=1-Gd=moPUyp4BP=#Mg zK)?P%W!-PmR|ODXW(AKAHSZJtkTDftg`SJ|zeih*6E9^g)R!fY??)J6m!M+C%QYbH zdcbrrHeUcPHY_L-dcR8K{uVfs-b2EMQ(6z_2O?Gg!0a5ub+c?+n{&Cl6G}n^Hb57S z@(>b1#*VM8=iUWTNR})ca@B|$Yt13M~T!l^hfD`sH3I@LMhG*##gW_5Mrdk z2@D+7qhvRvMxBlQ;o0SXeOyIdD7gFr>W`H}0w~XrS0&WtP7_C&{$hJ+ zJ%d9<$)|$p6{wxx^Hn)PAER`fxW}<>q-Mc1RGa z!69$Blj8mvFH{iI)G>zr&}8~@JvG7b6T@AY%BPvMKeiYKGi_z6ioKD^Eji(DF@gRw znCkG&5Qqe)1?kSlo@A7!*|3&WTs_UR+vm_}U(94pXiWOEAPmrA?X3-f2zSMVa6~F8 z!)xCqt-OO^0{w?p-7l%S-CyhJhkTCK-gdDhJL`HHc*U#WpqS(IS!irF?Kg7V3w7V=r4W@zEkG^p^lv&l)x(!{v%b_L`B z_WE%gOz`FVEqQfXe|P-?8Kfp0lTIF||F{5_VX9G26ObB2eEbGJREnp}XFuFP8ow6a zmjDAS!&a#|I0C~yU26P%=$A({*~IL;VMM+FpgNKO$r>`^j zz%A<;-8_eSge4pb;&ET1x5S;@vs+ibC%*7d5m37V$S=|qe?@M%))j`Ty^)p`w3_em zy9k57qJH%@m;(Mq4cRPeD4)`+PBL|N4{>vnTN{w?>D0}SDTg-T&&=ac+nFSU670`Q z;pgTN5VNkmYE_7DJ2aLcj;xzNxFS?Af9W!f+nU6+gS|*rwTjeq`o?e~<8NFmfzBfNalCoGzGgsj@}a!wfFY%z&WDU6BqyIwg@g+{^c;#M#)u)l zhu{;vAx&gsB|%Ta)p9*Ib-w-8iez%7zt(3H9Yl1qmoA-hDLNJVDvO7vV$04WJZy0> zf8ttiKYjK}hQ|)gkaKes7x1gi9xqAZDQkFQda4Yz-hBT(W91G2ng+4bayd3GrB zu->8%G^?TCZYsqHm~ST78V=X$Z5rj5?*<)@#nyIxZ8hV z-d_g?5-Oy|=psXR^V>d%>upR%p4I@9gim-p(S7ka zfkMSi)ZzFUczKicoq;tO(bD)DInFK)oLgYlGxy~EPD9?6l33GB!T;8n9vm3yVYlEy5B3ERhFH;M`t-};m~NJ@dQW3{yW^W9wa;z6i` zENBfgJ%)j5DOO2_l=7C6#DvgNMZ8&|TzPSrtaICC2xIf@z7KKCR`|G#Vg^Zd0o~o- z+R|@X6q3*eY3Sa!D7&@2mcFSd(W`T0^G@y6lV za6)ek3-XL8Uq=)6IEPrcb>_QJF2!cg2RD^GA~#u^r&vP4aJPGOy6ve!`7OTsFfjc; z`-8d6$OdJ={y^aKb8S1sCZ-d#7n2wPSz;>@nT90TPeMzT%70>a zo1JCb-mqvYzF##kPG!FO_?gi8<_Hpi0&n#_9P0UIDd4W-seVc7>1Jc&X9y=0&GI_H z-K{c21lE03tmDD`W}R?kD&p*?5dv7wPD4i+lT^i zHlb{km2-jU-Pr-R|9L9mv#${4Z2XS1Rwv(xRzmEyj9wcmnmCV*BLL2ZBc+eY15ZvBgDAFAn32 z)Q|cn`ZO2GpCPm98DXZzjVauj@v%>IdwM0UEkL9Gzb57;>;oXck3(Z|LOo0J#uI4Q zzQ()=8_c94NGqpG9Y~CIYPdR?)vmJ8C?=WK<}p&vfYp5~Jj`_%u6D>6syt!m?MA=m z@eK!XYT{A+^)KS^DMXTTz?PATu=o5Fw#ielZ@BjE?5O^#7atk=v_0BmlRh*?F`x~Y z2ol>U&sA>EKF#EBD1O{rma1u_U~W1%&+zt0zU7t4RLP|Mi5?nAdVL=Hu4tDzZ~J4M z-mGKIoYdOaWvn`+_AOu;8#gHcx<19`&_EE!6TT;!<$pFZ?e;65aOowTa3f!@YPOU- zCap^}GQceju|K=#*o1k)sZYcD~%1YTeApl6RQ#_6Jn-H#OSA~ta z!9&B4#RaY`vV80AzVG;=H)_^}n!weD82m>EI}_)dlMWpHdE2}?R$0)4Hi2ToM(SR1 zY@hKe2I3jwu5@>(Kek#`1<~D28}WMZ{dI|80BjSw=^sYOXi~p2QVrU1P;C+Qo!r8B z>iG&}KJ!@4tmN_+|YR*;o?!j((1oy$}yfiODGmK zW{@+Gv0|4+@qc_TNkzd7cZ~tSGD)g#-JGr0&DG6A7WY1O^8Tb5;mOeNv=L zWzYhwcrjkj)@^Z>)nd)R1NCiqXgMCROlTrh6`}%;OGA0>NcU?I4;c>-<}YXB&CEnN zN3ZwS0)b(g{xQo_UC;A=qV*1@N-;ifF9swNL|NC46AbJ0`f1`{C6<$PpT;7%O#_tfG9>^jdx*eTd^Wj9r z2KKVeeY(wOQx9R!`!Mf23jgz(`7R4Yh{HYina{h|wEDayKN}hga&C)CzqwkoB&9dy zLh!M@mw1NT@x&Hy(ISq=C93b6zW{(f>WPKgw?CjXo8(R(G>SguWa@{bE|^s2&ZeQ1e-k7JySGrHn-QaK?HNh zZI=yA87BMUuXA@8IuL}j7qGG5Nlj{a^?avR1I7JTrVN{O8&B_rVPD=YxFr3{LUODD zFPZXb#CzdRphJyDQdoWG$&QRMozMwK4^d#l0w7=(tohmo@+MCOy+ZoLxPgjqGC;X^ zA+xF8>?Uy2mpm{3z}4RU+X61$Ceiz!?S$U%?K1F%cDq$uRu}CTF4>PV0sk(cfBs#& z*idPY-hpQ)PR5RnAMVU8?6Cu#wd#C`dxC#dGfLR^;(PkzanIo(T7zF=nN4Y^R_rTs zxU)?LkcQC4!ZjNd$~AdxMsJuh7xPp$z&?Ar)OFaCSI=64Bw$_lHF@|jxAm%wY$}FJ;Pn!j9LhFV*E6;4 z)KO^oaPijj(D`(j^HmwWQ_<$jau7kt{S;YAyu;n`DZaxvbHeC#XZy}))2wb^h5G0y z;5O*tb`eo#<{^*851Y82iLf(yOn**6Q%5}N1=2iaBrhbI$+|O{m3QUeKD(=0AotJo zu)lhh4<(54xtt!W*o~cdz80`%=o*o#ksCiAQ$L%20eWT+HaefBA$D6Sn^Bqlpyqs# zsEU0UfR}g_DM-{saw$iIARMu;lvsG%h$vr(qjXjDW8FgYZ|1JaRbegH8(GAW$g|`> z&Bq{NZ(%^;>c&#@sPRIzNszb*+>n)5OphbY=Uxa4`Np?wF&$YWczlJss=!}cpJUnA zpD=ijZN9SaLQSJJR7Gwxe<^o1Ee~XQXl@rf(to_*F6IWWXOzSEu|guDJ>8rmL|qIo zLVH)mfIieFuTenRJ`9&|ZdB8$$mGG{sD#KOf;LH73&mf~aS3`%PXT~op5-iW`OnkP zx37<@?v!X|Y_&1C4{m90*4_gzddpcf{rB8cSQ~$volVSxJ7EK*f9PA4LN1x%p?}qN z`V6ScH3O@wb$iA+QE<@Cz_Ys+2Mt7#0~NC(I6-54fl8mI>)PNhV(?z?%*Cs6bKVQN z!oX_W&lCt2w~dv22cH3!t*x{iQS_hLDC?#XgQVs3{vL{9n^k!y==%17$Gri0<|hns zsKk^yUM9VXRMRVhxmg^v$tKLu32VAn1?Gsbe92p>$>eKdw@wyU&+BxdSmLTZWw)B;P`?9&L{Ik1@VvwAXRMU&jkybCrA|c9w84{7`4WIr?rebr{XFtnEl(>8% zX0HGvg>6iTtWI^IHvi34rZqkl?5|`u+R2M5yf{qQlAI8X0NrOka9-mw{MZwW55-5O zk$b{&|C+kT0%(&`d0DnmBQ2%tokA zgSQu0a<_dZV(Kp;L;l`)!t^M7R|L^Z;*iR+ArQPI6rfJ(b5* z(CooT;yWwvjVLJ)>|Qw@FIh>$QPd43`JCT}{AVsUk3!IiFylBG22D4=t5Y`pp@BY2%;ci>dm{E8YS@8MU_dwA}`cUi^jN9OhJ(6$E z5_LW8eCN8$_vc@OxJc3c?Dp3`1kwI3j$I}K!IPy#Zz=VUWwKcGe25sB_~Jl3oWMNkO<__ZvCj4BZe4fDu>C7Z z4Jxfv=v1o(@xCvrYG^FtY|9jV_m0?~rLYvTWtK~(!d1CG98#?@QIp#w62XX*)@3|F z2Re(UUAT%Fs03R^P*wb^1UH|Y<_bzpr$GcI3ATCQUbzPN_$jR(B^5{W++7GQHJ5&@ zkzX5KR8`eT<>xoGSp_<}k>o$INP6Uzwdbel8er`zw47xtuR65J)W~TIZAZ}RjrO8> zsGf}l5Ei0nxZ8g%V|zn(Lq?b3_i`9Z^o9^wjJj0%@jZWg`W-^32`g`Fi>G$yaSi2? zWIM5^;XJUsAwojVOp5@wI?YU8OHs8ee19Sm@ZHJN>h&oU(|b_L@Y&f)MK3-U6|92K zMG$hsHzX0JrHI$t{}rDN5MXYG=*Zhm?vXD!@Pb8-MZD9w@PD0lut1Nwk)Z zN~Jz`d1+KwsR$d+r+=LKM5x*p^DQ=QPvzhP;5l;1eqlfF9426Q4&2z@v3LomZnk1Yh4CN z74dByB@GHKZ5`X>9SFV9s?N`{xoxo#t5>wpXF!`=^mj~k&= zgg$Rmz%Hbcby!i~MqhhY_j^-$el_6+?@h(0>Q@($FMds00~iCl zx?B|`zg4N)psb6E&ChRZwp*OlIZO0)#+39~%Xf$4q_Jf!$TS2E3MnvD5C9-eOnaK) zug?v)44`up#HBnQ>~Sh)?lndv#1@;3dU=kHCpN{-TO!zCMO;+QgEQws_X+lnBoP^T zp?gAwQ<;we!NnOL2N2mFJ|(BS2cpIql0ZuSZujQYH04vA(yT{?MFQdn&eoCG^tag|tS!*<3?59CX4;vm0i-I%VP z=x;XzEsFDzQZ>aCg4VZBW}A3PFU`e)02BTaB~*S2FcTuAh0$R@IRSj-MP#n6ud6y+ z>gH-WbZmra!KTZMYQe)H&%4*HN&)W)P+E8(+CmXeYIp@$Na<^41C;Gx2=hb88lMsA z<9L3fpPQSsG2q-y$%SFTj}^K%g&n;AxwN8&Ns`!6jNqxsu}@7-?E~`Tm;2i0!3myj zZT%Cdr=R$o6q2XiP9CeBEn6IMwyzK4?I(GnCSqU168%87kSTLd@AfmHu)tfJ2NAV) zEcoU|XXBu|AS~N{7vVv7nbl#ae3!)-W#MGv<4mFqi?nA_Ugzc4!6;E?(t~e7rCmj> z8RaM-8RPh2g;b8Lx@$8jetVmT-S|NzyVZYe{&Zjx{CI!9SiNUQwDEEC(HxYX$3;e-RCzysZcFAEp9J@WcUhfg&Wwj2C-V^TO_O6HpK5J7soVkG)A zmoHI(2Uoqsx1F1$ty#XC_1!2o<>e^7<2wV@>r|f4k5Q#uvlBy3fHk7C(*Pm-CBg7H zw1YDgHmqTw1d?M$F~f9IyU3Ih$X5!qRhJIuVC?WHXD{fP%-YSRFjuD-3t^WT%cgSL z#4-8Eh$-mA6v;pFwT~osb6fIP;Ezv2cMmQIby1OSd|&SF@70#UMvs}*;g5Uij(!Ut zT*sDO;r+2jUVU+JZh^AzqrgQFb_beA4vBHed1@dOkn8yWz)_t-f+d9^A%%f<);Txf3@L3?-oy zjiJ(v z5STnbrX;4)b*=LUV6DF}+Hz+O9t}YuW>%vyxI-6LsForJ(p37Fb&5@Xm>@(W zR#vHUDlmLm5n)2NM^*43{qpU`T})X~9s<*QO4Fu0eII?x7?rb#+nHMvlK8tDh)Km| zgdeOwSUC)_J1g9sv~0L9&TL!9v--CxZLv^#pI#P@W{&fGM-{bcq6NG^Q za>Z8^okRLLvOH$&w7Uhx&yLKXBTKz>R>py2^eKOh{%%`zBIO%PBx zct4>zt>m<#)EQQF*#G8UcD?$ZfEMS#<-`8C1^ERRJ#d`htNjA_=eI0mJp&z<*GB8k;XwcWsM zJ1nN(%mqGw7w@bTnG$s~k09V>AMyN{kGv-rFpW@X=VipZc9x2cx40;u=p6A_G)v(b zpK&)ac=y$bIvbyHPe4E+mj1y~v2Wb&bN*FXw`m-6V|!3bNN~1DtS~*oZ;b9h(wQlPH|`GGNiI zj%4%N{*t0rC+8vVGXe?hK$}F{$mm+u@%cX(* z{9|!mg0Rppg<)!dz33Li4;hLUk147F6% zc{XVP!`MuwEqOhL%u3Ktz0}UOO8#cm{#!)P@#p$O3*KLDbcwr}xd*i#dap+P^D%?! znOE=)<>X1%^w7dHvdJGa`lmM&xsO6;I~T3Y;|1pC*uaJzS`B$>d?9%{4$Th~EjdC^ z23>+g>-OpQ-#E~d`^es{cBb56T15-u1}75-(Yl74us1YJ{}iq}X*=TMjWjT)=)IGC z&L;u#uDs1V1~0?&Y2`c|dZGG#HRr_1wbQQ*M*}4@e5P$5fx-c;Gbn*kCqytw;UTo3 zrSOjlqe1r$Sa0+bzPx1h3q7IzLhgAY!sNJBje73!mGw1}y2irM%vQUPqwnviWllhS zD_33T=BN8shu$1=yAdw8u=TJ`FgJ;u1#hm4=GK@aedVLv}lPb-h76<#fK zY;yT6xlJzS%n&w#%8JdWw@6>ggVXORDg2H#_O@zOce<^2?Ik6!ZMB|5ZL`Kyg34%8c`j5a?vn-A__PcZOby{cF?dJk(Ts}MlfnJZeEm|}~ zMHHYjfgea5pYcE`&=CJn%mx>a0|QP(+M3~qEJ8j{if?<@jIsLpTX}yXcy|bPI$U!Lw@BJ=GF7oH@D#_T!`}Gm z^~lN0l35v_+0+h4@y8ur(}i6yP&BMl}ak;-*_W0fbk z(#0tdFF~#mnNmjKsc_~pNc?BhgqV(<>wsnyT#!QjeBDwO*v7`ndRjuiIABuX!Z;Kd zw2NnVb9U8`#K0vCUTd~ zqIM@Y^^~Gzr~<`?Hn-0VnbSS^`1hPSjB;hKzoK1V`m57sQ(nqzoG_!F9FkSbOBcgE z2CKl$YUjRbv|gQye@Aro{a6*(f(*KuC>XpJJ-`Qi1ridH5^RwwvxJKzMxZp>UBi1> zC$#h&q#+@CYb=C+lx@wOOJo27Ar-zA6IQK}vsQZt&qRYg-!N_AtgpM_{k8Y&w;VhP za%A&bJB+5(y_r~&-w~h!T~uv5BUO-HqUhhXgl+Wb^H=bIjRt65rCJp#w;F;zTONlG z?|+#H=Z6|zSa@KhSQ8iNmM#G{QZ9ZFuRFfOXEcO4dG&pL<<(BkhSIb1)i_$?Qe&U| z_m?dObi@W4(tZ|c`wD9e5D`|80L9V(&{pr@mbmnf= zR3Q=f#~`msC1pk>Ks_sLcg=oyN!CMot=RiWbil7<=eGc92x`%k*xcgqT3yjor%HB(tGukD?@4qdV2#esDj^Kt|R>UkekXWmwyDs zEppGhZKclN>7`D5K6BuRr+fM@rF4(g&d|E1pFEg0Cw5el!RnH|2^>y1fCccptgJe_vHWj8FlET z>&?`Xq4#Wu7$S`l`XZC(=%?3r)pb9A=4@Stg@sKbQk)?z(aVihIXO8I#yroO{jr$s>rKSHG{OrAH?IqlEr$;|C({$eTP zSP!!agZ7k}PXaz;UQ&P3>oQg>?W|f;8!O^OVtXMM+z3Ub&!t9`KhE@iwftpxSIMqx z&&57B8sEdGeM-hg|1QJxaQ6nK;%(;*W07&EZE@Rv=LLh?Ukk60t}JJ)=-k8ez}4n; z#jv0{hB&7LSrkyS=gs_`;A;DHx+uU;WEu3xRQ7|1-k-Bfnm|*s zCzxeI>BO77@X95OkB<-hX+{~@(c4{@k&&@b8K)zUorWpdhL#GoLm0s&jOW9G(rJ|{ z9nKBog?!0mW4`W@BMnTd?sI<6?^1=Gw%JZ3cz2~5dzsR|TUsfjI|&xqPuxu0jC2%} z75b9BujN5&jeR!%*^O&|PkaXbh^zP6wp+on0&pu%f3C)?m4}GL1i*Z z(bh`!cYNjD{>i83tCvVr9y4znq!2Xof!!#lJiS+7{EA-Cee)CR=NT_TqcpAL>lWKe zwpWA8PzyOOwgwNkIZnd6ITLYxAsnbW^-By?d-(?FuOFl>xe6P*Eb6FJrHB7Qr06WaX{ZYYBQ zZU3d6i3FWgUVY#*+t{Z*^*^%;ZQXg}r_r2u=e$7~En6_nT zeQ3`f?>Qw_H=i_Y9kTyuR)-<6s50o!!k23lJIy7Skdth#;jR!LxsIkgxjT@*JbGr0 zbEF=u?Avo$bAE`7jBHs@@St7$Cf>TP6*^5hu08~`wJIrThzXjg<=hY}khAp7#*86C zEZ=_q?wx)m_oXrdZ{ZcalSsFW#XQ1yq6w(d?aUtt5IfHPA)grJA&0dz69y}7_P8MjBMl$VAM=}G#-XdOA0MF zL;i3YlXs+FzFop{m11}0A}k9}wkN=FH6@f&GQj!vo}2spFd;{vh^`l0>Sd5!_3{O% zUpkj0v~)Nem-HI~WV)qr4WC8XjwdPvgZLh7s8Wi{GOC!qEc98tZ-b}}2a3)=6$U^CBjv1fETK7&|5p<`#A3P>p9)}0M9|C9-BeW8?!ajeLNqS6Q z7#U*cgF;BXGD)L35#!6|Y8p?OJ?8B08+k)%oGh=AnX7gupL6JaCQvWru(Rk942nZ? z_jg2V8r3n4+gR@9L7bqASK9jdz#zzrJjSm^9b%#SeqSmt0d;R#$7Y6*GiR zMq#pSoEnyT>k!{3D{3Zfgm*i#Fbi;sgwq<6#i{`y0?Zs)8Wkj;lRD#14WJ1^lhQDb zX}a#-(y!mzD{a1fJBm%DDPT*+mqM5%q$r|+y>>;EnSDi-C2i?dsgAe4lKI_m8cq>a zFjP4@5JX@ZYh5CIL)z$3dweKAQ~aGC)c58i41QCIAi!kOxF|T0zBRE=H`;awT~H;W zBem(N?LL2|7BV6AEb*50ouwJNwc;kh)N-|rg@8WgQ9})`>Sr^-igo8*o@XXQU3ubN zW+aXYn-0-@ZJCr^PHutb=cFfGzlPf)PFKbEGnDN-lke4eem!MI5l z3~xKJnmA<@317_Fe|F$jfC%Dyw3>7R^eS4f9o*6Ww_jcLfsjDp>yFXLKS@P|mm(Vk znmqcKciP`HBLWKiTnK83xk-cfzdyr}ex?ZWEz`ol`R~aRGYlQ*ZXI7n^1tjvqz8lq lQB*_r7WwbVoypQ8)S!IV4=DwC4-oM4R$N}JSj52l{{WZ8WSRf~ literal 0 HcmV?d00001