From b01e53a847bd40c77436eb0520a412b26e47cda3 Mon Sep 17 00:00:00 2001 From: Levi <124380729@qq.com> Date: Fri, 8 Sep 2023 23:40:40 +0800 Subject: [PATCH 1/2] =?UTF-8?q?feat:=20webgl=E7=9F=A9=E9=98=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .prettierignore | 1 + packages/webgl/index.js | 30 +++++++ packages/webgl/matrix-rotate.html | 109 ++++++++++++++++++++++++ packages/webgl/matrix-scale.html | 111 ++++++++++++++++++++++++ packages/webgl/matrix-translation.html | 113 +++++++++++++++++++++++++ packages/webgl/rotate.html | 112 ++++++++++++++++++++++++ packages/webgl/scale.html | 104 +++++++++++++++++++++++ packages/webgl/translation.html | 104 +++++++++++++++++++++++ 8 files changed, 684 insertions(+) create mode 100644 .prettierignore create mode 100644 packages/webgl/matrix-rotate.html create mode 100644 packages/webgl/matrix-scale.html create mode 100644 packages/webgl/matrix-translation.html create mode 100644 packages/webgl/rotate.html create mode 100644 packages/webgl/scale.html create mode 100644 packages/webgl/translation.html diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000..f986f05 --- /dev/null +++ b/.prettierignore @@ -0,0 +1 @@ +packages/webgl/index.js diff --git a/packages/webgl/index.js b/packages/webgl/index.js index 804ffe8..728aa6d 100644 --- a/packages/webgl/index.js +++ b/packages/webgl/index.js @@ -20,3 +20,33 @@ function initShader(gl, VERTEX_SHADER_SOURCE, FRAGMENT_SHADER_SOURCE) { return program } + +// 平移矩阵 +function getTranslateMatrix(x = 0, y = 0, z = 0) { + return new Float32Array([ + 1.0, 0.0, 0.0, 0.0, + 0.0, 1.0, 0.0, 0.0, + 0.0, 0.0, 1.0, 0.0, + x, y, z, 1 + ]) +} + +// 缩放矩阵 +function getScaleMatrix(x = 1, y = 1, z = 1) { + return new Float32Array([ + x, 0.0, 0.0, 0.0, + 0.0, y, 0.0, 0.0, + 0.0, 0.0, z, 0.0, + 0.0, 0.0, 0.0, 1 + ]) +} + +// 绕z轴旋转矩阵 +function getRotateMatrix(deg) { + return new Float32Array([ + Math.cos(deg), Math.sin(deg), 0.0, 0.0, + -Math.sin(deg), Math.cos(deg), 0.0, 0.0, + 0.0, 0.0, 1.0, 0.0, + 0.0, 0.0, 0.0, 1 + ]) +} diff --git a/packages/webgl/matrix-rotate.html b/packages/webgl/matrix-rotate.html new file mode 100644 index 0000000..101e27e --- /dev/null +++ b/packages/webgl/matrix-rotate.html @@ -0,0 +1,109 @@ + + +
+ + +;CIU<3e2ZvAfq{6D*Oo8-=2(tG!Byy{N?w{MZ$zI*%5?fWG6NJs$WfE(}Amv@Bj zQnJ3$5;iBLQgr_me~+3CY5~tK4{aT$VHZirS=xEVp(LtZ!71iJYq=->wrynjCK$u5 z|C{RnB?A0Uu>VPQ;{-mvd1SXq0RLy)zPY+_J|%f6bcgZ{tFYExDsyT!c6Sj`#p`Ln zLz0_YpOQQUC;%>Uausk#Qme=B{sv!B9Z3~%t`4biR=nQPtq(O#i?gPyaC>y|BPCSS zQ613K>aX%^m9)OObBc;l(9NZtbg!wEkMjFikOb<`;Uc{@E}-YgQVl{^xYng|B>b8AQWB0>)zN!vFxGVprP zb^WYvDSuWVaC{^l<+y$%qKPAo!glji+r!T^6IaLtUTSe?>CEK>exc3}GO_n_J R{ys{eI34U3a5S#YJ!Lha?oO8$rbS8OHsC$>A z%|To98i41ZJ!KgwNTPP`p>9D^Ks8_l;l8T?UWpi;lhMPQ;Fo0XbEaN~#RBm@nkeW+ zQIJ6N!BaFMvoso3Owj%UyqFsrUmv| N+gc {TVw~8ns57d_}lX+Wjv;`@9vImr| zA2V6uk)TZ)+`f`Gu*B>4V@k1k2^mX#V&x9$4gy7)%FO)qb3oZdlgy!Aabt+IX(2>L zY-M(>ZqM9Mowr%NWQIH5P`I$?dDo^~KleXwsl9yLKI!!d=oq((1jqzsK9qi7pg;>v zdk-7JFYc=CjjzROw+GX0j}>8kGw(f#LFZ?&my+?vUIP#V7Y(-Qe(pFRY`u~BU#mk7 zPD_lTWWGb*frcL5$gT`7!?6=;!%8#zq%|ZoYIWr?wuMpoZ>IH{U7ivWG${Kv1|1Sg z>C@w0U0Dt!>iY24=j*^n6*2gdWY^h0IH+_~VpMxrrKw5=$Q(Z9y~ZiVEnS=LEMvVf z4Anjts20z!Idv{y-D$XLF`R1|TQ}?j{&GjY-P&GUTO3N$Qs7VB^NjYH887C=dPG3i zykqrx&NHN|dp8I0VO3DA>GqX0Yyv|S+-7cASB|xwAni25#(5U>(=QpqUSDRl_at>J zC5$s8+P7skf~+VVgW(cLM?{v9!PPCO7^vPNm8}D4-fTr?VRTG#Y1^9XO_JUibWSFZ zeoHDYPd}h<4YwC7uO2iUae24i#aiL|vnXrq(PD~dQ5awKqdOJe>nnDJsUw&qZFh0g zZf28lo|+mipZLbea|ZL+9J>$S61gYZxi)yc=-Jh0DUt3Gx6bd}df`m+^mSUDb{ua5 zy^?8BqMi6d&1aO9kqNyYdZ)pXQiobDR}?c{4;>qn*t)zG7%6VwBmQK1=E IXJ4(U4ueaRFj_}%(b58br2t)YVPUai~(alWB%r2_UX4RXwkA&8=Vk51!iNI0K( zbTZwaJu||G%$M54dyuPj$1&5c5X(^x$jlwdy56CEX{s_A$*B#UpZ5Jl6ib)U6)@qn zdT(Ju-$@or>3Ya;Nh cc2F3ks4u)L= zkjMaEh*}7zexq|x?02mgJwLEVOw9%Ui 2SXLci-5S^+Zz*W;@?1$9)o_JLQ&5}l!5+%+IU z0hQkXG3!-ux@2|46`Tlu?d rt{uPfY4@AFFEBXWdWVCrExaU)*mx3xf* zJ94>R1wT*i>@j{erN8aGl{wqlsjn5sN3$wAz|J|gnn;w;w1M+h=46~Y{ZO98Y^e%s zF$M_zoyfFsRG1v_Q%M@1imee4HBw$#H)D1|ScG`w5tfKMS+g5RgvZDSoR^4$!=8{z zIWqNAy+zr(OGRkan?983x5P@%oeWjtg IT8IPg?kwJ)#A zGV;$x(7o2WKXFbT-MVY_!heW}37b$+FVRsKIdYpJb=`Z4aSHsHhV%!5x-8SM#9- }&l1)Zwzq`XBSR_SsTVje_m0P#eP$-tt=Nj-vj)O-RzDfvIUp~18EaIh* zz=RO7?ls=c#qRej8dw6e&iRR)w7>CQzCnu&V|~3a0!GVls==jtsdo^yhBHd>os&x) z-G6DC28~+=(!=O%B%=2xiJm%!NtU(*I@{eXxk%$Ekyu8j6gY6*{&yahdvkWa+SIQ4 zxydO(Do-!5(Yk)mR&sql(}%K9T~otzz3aC@u<{T4d4XV)K@A~O!^n#kBuDSYLgL7x zyZfjDZG{xxeY;%7bN9|El}Rjz7#~yplz;||?aTc@s`B`;gN9TwM`6r q(epBq)fH Zfrc0`P7&(i5_%O( zpL0gkDqf{Y^IJICt+se37SdrjIL^^^8)WPcWD;Lkg}wo?vll(QZB|I47<|ut_^gO5 zyaRIUqs!wDT0yO0KiTIOlbXsb4NNI6Ro@Jm>Y26Ke{~z1?}*jd`@y6TDiHez?h_@+ z-O$7Cqx@k{9#;Hn7p5nWb-^YJUmVH&z2UKY2u=w|YWn=kyE|_?le1Iu;QZVCgGyHA zHub}2O$s31$*PtY+2ZRz=1I#LBdD9gJ_tf@nf~6p{mW #s2A!Awl*K^m z3|3`qCaS!^^*Cm|5Us=GqkHma{2I^}V!0|to{T=vf|Vfu8{YHB4H#s`F&lO!`* 0iNQowfhRAaZst5)a>rco+(d%UYIB8H7w)XbA=R*vI@9VaUyoJRM(K=h4}_s3 z-8CcRsWcB!yQPIS+@n {dvOLB)*~I@G~#jb6+J*C5FY=P?r^=llzcfh@F_9ByA>d3Aw6;%IO+vwmsk zR @s4H4Bp$gPF0O3py?V6{f7Jzza>ym0inD`8xcm2!3vYLUhb&+0ii#jH+Qv z6i>HY7pv VZf#7=+@^p?WRo;2LnB*zAI;L2f^rJ{MWj zZk_qzWtPADRYD*tS#!&B&wXA_w2jy_eGS-3H}FuUtiOO1bWz%u;%gcI!$S0819F>^ zAJaG%8gO^9UkErx3`x}!$35!yxaWMDyTzQDQOOw)6=0>log?f)>}b07PHzbRTo){O z1poIMuvct*0I%k_561Ec^yJNnZ7&|!b wa8LzdG1`ZWvQ z?JF1Sg0^lmYj!(zdU<%Xt@A19cc6m7{#ep>jL3$ @06nW51OZ_Nz}1Qa(QOBab+|?ukCJS`86^I(H4#2V{;r)9Cv2c{c2&i&Y8bRYn$P zebS6WWI!7(1LL0O(-gjsaVu(}njVJg9Q=wxWTYI)`+U{TIyV@FH^gk7WPw2SZm>DF zj?+eO-48=B8Xn$`m3(S1y?no*Sh~KG7)ftGJxJBGMgFIn^q}Fi6m?Y _?_f56{nhhqdmPdVAYl_XNk p0NFTTM?&LD(e=?4Ya#A0M@7-*i#Hh3I<4iI6D#wYj6bTz1ggLR7 zMPF?uA#X>0*zooxtFjCnU>rO0h;+MLP=+FaOoeM5a0Y*pKYtByvpOavO`#ni-ujA( zj(F|xoAZZVvTlzP7*KKBQq2|9Rg5J?Fh9h)z>WkNCf(F&x$tn4cdBn2LV;NjovXxp zeh@FC=)4D2b0({w0??t9g+d^{l*l_vTlA-Ww9ttr5ypdcg+qxw3tu90_iT3TI9v$W z`_7H*?;rfaG{*BswSf3dEZsiwjsY5ieweS1wO>3 wQfmEh9k$)+VId YJAsV%$A`(-or%uJ(xjo{*vxb)I%08I~bbB*!1P4k}=1H)q(zTeW80Uk$` zE!z+I;D2JrWl5Z<0~2m~*Pyw|Smh!0TrH*gv1;F{$AjQ-Z_!dc@)RGMORZvQ%H-jT zA=QW-6e^P!lY_nnP!`e5Q#KgbDu{hwG2HE|yZpCgN=4gl*PXB(A0*#BX?H@wVUxWO ztld?-Yu281|F2%!VchRSo$+Rq`}^Rdts}F@9oc|`@Ld+BKWN29U%f;Zh;03AAUO9L z5WiEq2;bi`l136kX7ckcx#9vHcP83WvQ1n584?2QJ$IoQmz!U({3!d6 PLrzc)RCHT2BCsMo4++3pKA7y_ouL$3j-RVlOk5u4AZwwBssP_coP)9EG8FIO_L z`d0_<=6p*%45Gw|&PKu<5Vqu!oZZ%xAvnwLkyQKHf6A`BPY$WaN{62L9kQ=(_p6FP zDfH7TW`@0%kK)scu(6iWYm}?=9n(hMxGb$E8Oep4awa>J#@_UXN!Jj*o)LM@Sn7a^ zyF^eY>Bg@PFC%1NUzRIfe;n{Q@cc$BNw$=WUjquex|O~qd&l$4E5MT 8sgY>iCnW!MS5?S{R!?lr+Ht}P)R8`4Xv;p!ode8}nkZ)TvZY`tx$)rQ@+S1)- zqlXg@>5UN%`2|YOooyIv+j|~j0)-6R`)?LDG)&s#8ghO&gyy>r+?iO6OD+^d4vi*F z%ME=Ndr qv zBz+96XmL w3^--99S6G z*OKU9Nc3FK-|zazQ 8*Qj2C0`eQDN ChSAZ`l=(er+X2FSMa-7S t7o~RNrlI6zLxmKr-w`j X^vQyJ&kWyAphZq~qrVp$Bj?Qd>;W_9%2K8L!!a%? z?zO4lD@b8Thtp8X&4Sin5hawACb^Fp$T<3fD{h^)~0|H=3L+1fZepKD>=H{zUN z3+je5C?%>m_0IRCXK9y7EYkN#lzp8Mj(1M@b?3i#kf@`#BZbH$hF4f39t-k#!)}xD z<)t2y!;W!&V+2#m;vp{civh(wS4f8)-SQkkl$`pA3|`Ua;4KpQNe<%Jm&A1dFUm)y zS Qh~ibOb^^`{Oa{$>~M7cvb8aXpl?+sduiTDvIO znzme?TtDkdNkAr*z|Geub2}!}-aS@&Or_1W$TYbjn(B@D)>}?7Ex-D4*WF;>IBDB` zU#u~LIwf}zazxxBd33zRilx1b^nSakmf-5#stuMe3iJChv)%&7UIQS{%<3P8Xx4=u zk@ TJl>xX5tHB0Jz^KmnL;lZn4yy?H^{+`@qCY*% ylfPw!tI)yff`Kfr z^YYFtEpuWs#uo0I9fN2kk4}Bs9eLQ7_)a1haEoF@Bb2!6sMc_ozy;1QN~>nUBTXT( z8SNyAiBnK*`)hChH#*CE&l~6 p|B#EQV+@u6qDq7h>s_biprQ)^ThM95;pX%}*(S39QWt<9iD zO0EGuTzZnic$t|&vUKA_714hl;JHDR4*_wGS`meA{?Unsy&FQ7Vh#w;d)C->Mn~ w0Cwf^-?S-J1SC;wu#Q|UG})t3friGk*d(7#2+M?rCp%ML(XU*Ypk6Va>7xOlkd z;j4T`NztLkQn2*aQ?f3YcQn4UPb|Hsgk@!ACdOWZo8Y`*OUHYt0X)5+5F6vnP2#W( z5VlrC=-_eQnZ4q2%rZyunc9^|L*vpC{*pd%j`4!*NRZ00+F+A3w95QBjtLc6D>#sw zJSwm#agySHkky}#s*$c09__-~6*w>!Jl^yuKs-)5+q(vo|C)#H*IKj?QNx=^IcYRI zmM`shR5EH9nOh@L%;7b_y%=tCgczM1x~k_ibVZjwFR|~ czm0c$Gj>Pyk*V|S# z-$`Ozc`GvY$YACAtiO8ZT$IF-F$_JvBiWVW+IMT~to=E(A&pE9{7)5m4C=P*1|8>w znMd~ {4jv(O=PIgR{-Z{GhU9fGKM>xXC__B>Q}cONjfeU;uFP- zN;$1uxj;`f{sc*kTDiSB-Na8RFD{-6@e5?Bi+a=h&hj>y*sL$IiXj<;#qv&Gr1o z$vI&`J}kQSvf<~Q_SYXEvq7z@C$I0OT)w9Id0&p}D#GIcC2<);RHvhc(&kZ79Fa=h z68i>tPI9K$dJr!33FP(RdD@fvSYAp)wOc%GiKVus6sznp_%E*d2|ahYyd`BRtHRh(IB*r1}qe zh@8BAZ;wv^vo|{0A9 y^E!t>lndw<2o*ZDgm}FT~Z1xrw z-C)Ji+bEC3;6EJdDig>{g!^LRZz*^PqR JJjzn8TWkJVZ}bl6AuP!CNf0x!eI06}wcY7WG?551Tafp=S@4I=qk z;J5E<`3xviWmogbD@IiyJ@AJQ$5ua8yg_o4HLpcB22g1TKn3ID-cqOAppdA^L(z0l zUf%BuI>IEVN4=GnBE2*>+^&}=U%6Davq5C-uLIHEYLiaV$Mmt8YB4s?gtD;#El3C- zo`Y#eT@Fi@7 `po6wFZt>OB_P(t6#WI;TVzI4rl zgJOnFFgm$LeBU>k0M3xDDj9kZ6C6TgGQOSJU0VpTbJT db|Yf8O4f+2ADE6VOoj;==J&yKf_vw^zt_STD*cmPRj~?LZiW- zv4D&b6TYSVhKJJmB@V@Vi+x!=#cyLyUF=cHH=A*bBxg#7^6=wq=>Fl8xhSWB*r&oz zog&)8bDwji-n~$ZzHK!eE#_ys1~EWBNVKaD(!8xzFM%m)Vkdw_^$`)Dw|YU@mJ-UG z#fLPmY#<*7X?9>*#A;&{!H&OqE;6`v@}56P5We#DTL)%#qea-0esH#VEkp~prT)ZJ z!82lqY{5K+UFKoRdh6><3HpOb-Z%?qdh&7ig`X*P3L0ehLT-0 Y>%W973J5>9+p zIVK}Hkg}4IidrKp)UbB8VFu2y<^#O*ah{#`Bg_I^3wrV43$e%N$tO-jzoRD;b#{WN zuE^(IQmTsJt5yI#Spel^hh61UvBmGrXiePhonDz|WtMc3gM*xXLgb!sfz7mEDFP2E z%Znv@dd26yTPK2;d}_~9b&?7Wx+KJLSY$ocdU1gOd>>eT@y;b=IalG|;ONfR`Vy>x z*-X;GIL-6CE+O?vPokpeOnUKVza=bk6c>Ud(>eBiyUmA!s6tOY?e@pp_WF6CF0C*Cxhv#x+rxQs)#a>$o}5?zocS =Q;~Xooyf121a|=g9fgp}83u5&lqgS;CW|K;8(^ML$ z1H&U=aGH(MvIPvB79 <8W{uW+l(&2 z7H`SoqaXCzd1xx@-W8&hZuB4JdnVFu`2p(kqz4siT^eGX7*tZCv^|kCp%I@_mutwb zGcsVCe8oT6s+|EWz(^$x|AUSzf=3Xk#o$+k4A%f{P!HdD*gMfi=yr0WRaW8{RF~2* zS-n>_3MH9uJfS&+b4-9bwo1^+gt= 7 z;F7>q)=np*dp>m1O0;`@JhCbhw$r?3!Edxs>SmoCyo z$6}m!&q&-Ae@MM@e^9_kF4n|}M#ERi0yLG yb@rB5*I>(U~sWvV0EH=~46 zCDI91W?G%P+a7++DP!(q&MjK)h&kSsXFs8XavbWwE+A1#P>_ngJ{ljLF_#3U5~dN~ zQ|g|q`Pu^c?)o;ajQu=`i^%y4LdL0WmppeFdArYp$K>a5Dzb@ky(H24skRBnrJhLd z2LH 7?cFpCykcGp-WfI+ESCHa#cdW~Z-9D+l2y9iXjzWUC`Gq^*=XH5`$z zeLz+M92}L5APG0q1fw1`?q};%%x^pYQ+gt?C`$7B^Sn@<*-w(QrkEMgS~ZIa#_ZNS z ?ps?oQ2jzI|WP z@i?WpE}yZgPM=8zdKHW#WnFV&+!il@{NeKnJRjiotLNU}y_CgI&ydGEU*QgV8;W7% z)9hOm5&dKEcH|usjJEf4&M_aV!B#F$&E;3HTVWJ{+cCwwU`c$X$;&dWL*w6 &rh@iVz`o KYTrC+Z=FGm9=AF7brU{n!V`n@2P%uB6gYo6C=X#qH%KLAg zCEw2;y|?8sfCDM{O8t{JTIgx4k@C{C(t!Qf3o;tBnZCziDc-+HAs}PsAv&>5owZAK zbnm0zGX-A(sc)}-l+ZH%_v`lHk8w1SxfN%DR1|ngN<`ZvIS!`R-?WH^XBo#dT!orC z1-$CaYf)OrY2=olgWinm-N3FU;RHVC4efcNN^kb6*6%_25`)sUo(W9@4Xs0Eg~xZM znPYT+N#5`_L*V+E?{hNeAzzC;CcvWu%NG)dQ5w~JdQmgIyT=lXftrU+A~-#>T1 U}WtyF9{CoYoI7?+>{D*W3;Jh)_88n8eYXu&&>sACz)%||Ax1F=Jv z1WDSb;kGJO){a%EouT?=p-aaIk1i?j`nmqjehTBc_mWSXCU3+p&u{`#>Y_enpy6^z z{TlGz!Hx)%ZLyRUZ_E->)Q+w0?yYY*I?ovQ5XeN ?cR?gIK_X&+Ep1dW( zp|>0}L-$he`k={U+r^V^EYd)#*RR~)-vgntB&Zr@+$>x7_uT@zSp>w6mZ`1u6}bl3 zL#MT)gQemk{R`q_tp&>s{iFv5p{oWx5em%9r8Nuo?f)*OtCO&4b0yC48^btAD_Hn| zuf%z1(DTC7(0>pkg^C@T!4ubm1;P@-)j-~^N$EKDCW`J~yAWr24Uh_$65{WkxZBJR z4it&JnD#Z^TJSi0Fl(mCov&Iv)66#%ev-|vl8jYmoL@iL^Uq?);w!JSrn8O7Xfk Mx)@-;uOnQfGheg2^&3w1t3P84gE* O}gv2Z=ce6{1l@{L=v10Jax63l84Uz`+%FX}2aC z_KpR_r;>CRUQZNQ#~8N$q&Jewr;Nicw#~Khr6MvS<16%?Qxr|Jnlnj*_v@VF`?p)% z7!Ju<8ueQB9RU&YADupZecejtL|e05Me8p6Oc@dm(7f$(LUR^o{*$r#%+-S=NV}G2 z$P)b+fNy#>s@C2#h>&h*kP3cx1?--%(5HcviLF!h%HoNCan+wf$qzE)nAWM|K~te+ z8x9FRH1$nNaCP^>2fv(!RpugYiBI0L{@DJj_DDsHzMjADoQ=zSuE${Z8?gOOiNyEw zs3QYlrb*X5ZuW08W%$rrf)*_0kf`>%2j?joAoJ8?9#%W2imskW%}JxXK7Cuz{z&zL zHA94s9n`rytwQ~$^;=h{7M8qM%WTzMN@pCjx38GxGZ!mLbYRDt>TP8&G4XK38a=Sg zpF+~V$5NviLQ-|vuK~WfBd~z4L_G`#BFgs$rzKI;~ZrB8rA zKr&{We#KK#V68K%EUil1v13I(S_kK8Z)@}s-?rE} !=S-mfs!j_tnvjl{Zh}!tuFYg=%)7Ftq zu|!7jZv>=4q}Pk;Z9&bnV)+f7RGN=7q h-I@VjoAr bRaCP`v~m4K1uURACgVAtM^d@@I8q{RFTGycA@Mze2h_?7IlaNJJ_7pH zeNWuiJDj7%sh9d^2tQi>g*nane3deQObN0(itdluPp1GuvZT?;rBCx_Llz4;FDh|b z@`ex 7@UBE4SHxvolf7;s7mvx2ZE?4#{b=J#K#_vSn!T<=Ax_Gq zH7<){sFH;#X0@2tnCNWyhYz{sv1_6;-Pz+!H5H~uWoyzTlK-x7WlV_*av9@1{I=)Y z&5=}Bhg?(p&L})tjj0oyW|d13_U^WIBm(3?PQ2&xgGnfegKI=t@QvO;e`qp6%(a{w zCy*u*_#pREi38V9F|#fj4hk)c(h3@&q 14E_IU|c{O5)g+7IWEEw{6a)YUpgbarh0MaKdg7^z3c z9YaC|&oZQYTLhx_=I^zy2R6yt^5JE!?wTvuOK4H;8Bv$h9x>}oj^$OHGkS3hh@aCy z(eQ*d5vR5}M0O7u$=xjy2aXeEs^Dzs0|Mp3&KHsGPd~+-@`_?JBm~QcHBj$ @0|h9%->3_-1j%pN}R$*>PHtVTPJKwk}Sx08ngp8VqE{BiG-)rVWK^|G<}+rj@) zB>qS$71RQ1bl_h`6o+|>#AJzENC>Vmx8liqSMk1IBZuwPta2q>=gIi#p+OOtNP|h= zHwE-v$|~7WzWn}5M&i}L`lL<#zl)ch*mlW|mpq0Do0P%_Fj?{5s0I@##7R| 6=E#NhP2!B7^q!O_W1kFrks ~oRXTt2w&kD5;ae*o~dPRkL*_Jru$>~3y(fTP{&16ppozXfKCO19%5Uq93YCG-I z^pw50B7b_VF%1nN Q)X-(98to!6bVOP2^=lAKzi{| zcIgl585Gv0_=bkEd@w6!x0)ru XOk;wtkxU=Hn#1v6ar+Xam6uzA z>UE#|lG8XHC#-!HVc>43F)t?fHs29wn1rMA)*6(Htpw9iVF!`- zW_wZc)|qeTRwZmY1MZOheAyuMF!c4Lcmw4mfKybQS|ayM%SYr32K}On!dMLx-+WiQ zTwu=^sHpO-Afe_W+s&$xI? ktR+?F9ip}2!run|W1)ITD zC^%W(a|C@l3;NM^c(=ad=`6f@2auKbdQu|jGv$KX%LaI;xgGTI**sZPSwW9>E`f(` zejU$ird1ryQPC&IUX-LqDS6^dCt1HAYqjH33GxzUWvKGN(-go*f)i%zQ-=!dq37|) zM-sfft7SJDn(yC&<8Qauxkx_L6lO4Y$^Jp_Es#OWIWvi6Kxx j&ytduyHC?of}{@mVX+5}Uwu zHXsz1$w !>PMAM&i0H7B=lbyz@ku eTi)d>7RxC3-md!L?o_PreBq(sxP7m9@@48DcYYSJX~c}4982ow z({h4UD@ZpV2uIHC3~qnf+kyqimanhaAH2#v#WLVSlpdTh=r~AeTK+|2!7%rFah<>F zl(B(znS*9P|3QenbV;PN0FAkTSJiMkOj9t?z73QWWQvq_gB#b%dqhGnb6k-;A!MVw zr{zD5y-$0`*!03;Ry;=y6xf%~yl~6a`EBB0m!FqkU>Z6(r+&q=7q~dMdK`>^+}N|< zb2{_ Yv>I6xLc~5qhscG_lx7kbGb(f ztadPFDJ6H;^5QqyAdJx7e|I5<{KuAhA0k~ZUQh^>>H#!gy!zLV5n~{0P*C{ba!zJ` zR>Dj2bF}QIvE~@XzAQ=CqE*EFeQWNLMbO;&qs}E>%I|g@b87auvfDHw@O3H2TEl|e zngG<8ceHsnb{{AmYeW@usnG2ux%Y 3M{;)B+-=)AsDcXhM;1oFp_c8dx;3C%VwW iNs~PJX4N zEG;BB7Tt*TR-Ul%DGzX3okbjoIyh8=k&^Rp-<_B$f5RK06!&|?AHly3wHu9DCaO!l zhC$Lgf1vbvu10As(Y``M3836M%UaimOGyVhTc@^$`mPtv-7NGc!LjvJ#kk9ifX##2 zl}X~r?gNxVA*92S-eXG7G%733cEdlGXX$vu?HVwXEa8$WRH@nLsFguCn7+ax*&w=7 z9yb>JrAwX#+sWh6C5y@vh&;V|7AR1t4pYy|pf9UhoVGs-Y7zOhvf7=<+yws<-d!sb z#0G6F<282p8DjEMD=EL48w@H&$@RkHXn)o9>W#Ji4v;CD-D#jvX*@Wj(O2g=+KTae zb)!~{(43VgJ0bdSQC7_=>iu3H95 zAEP2}aAc4d$g{Agz&<{0NE~olyZQZd9c~+(022=`cUjPTSfHL)pP9z?ELQ4Y=2#8q zS(%U%RGVuwOn8GM0+P#bMau~z{4oATf6Lg1k<|(>pjD#;cttKla`=JoS;Uxi{e{No ze$js+oGl*Yf6auIT)$_wY5Y-T1Ul)F*Ro!%ov~xMp6=^IW5k}uXY`bEl zBH={Rofm}(lQ-mj+lNPs;3Muw9J7N1jSQl^G!?^!Gtq87a9-z5JF-)N>xpu?^u13) z#tiGn%%5b14b<$(4_I;76WKqh3ipDnu8ht_hW1>$NPvk|k@pFUft3YZr7G!(QT&Z` zT98%=DwT~PazVo@dT#_CG`GlfT0(x$hhkmKNS)2~Ipt3UP}A#oK9nCi0WE6ZySi^b zV_60i_me#8q+!8m%tiT{eM Ky(E zdSkq>W07DKls?+xk)yF*x_KUQ^ZqthSgoceL0gN^(~XN88sFbrR+v5Td#-sYi9*Uy zg>Z;I8h8pp*u%A*_Kg}Vyc~e$tyi|JKJ`L<^*Z7p2<5M**`a!*8**W$gr{yWa)^E8 zja+*6D|`o3<@IoN^{VK$x|fJg--=kYlvqs(WM7R)zmKI#++m=Q`nJASA}%7D zJEs0=^1I3NE|n-yiZm&~l76Dx>y niS*5`U5=o?9x|(O>WKd)F=Di!&L}-4)-LS3uP5uMve4Zkkq+ zhipy5^pUbbbH2auk@(2Eqa$w{;y!3F2=8rbR$fc7go@=dO8D$g^)Kz9v|)cEXo7r6 zI+#|8FpT&kfr^z%JNJD>Sp5!BsWXRbk}iq*nx-ICGpkybHB)@1f?|&urfv>mNA!fw z=U?ybuhwie2(_t2Rq_1BtdD)Ry;tup$;Piq-mQlN1=VIKTmz< &y8#`#3&iS+#r4Tf9`UCIUTfXE}&!GGq?y zmH*eefEkDWwjXy8u1|3}-pcy2p+{#bBOKYs)WV-ve9)tM4G=t~s~XBXsSLX+Hu?A0 z0%7YAscL_E;Vo~ztS1-aaU;fex0bIO-Q)T`^_5xaEpchO$F3TvVOE*R*@)h(^R5R! zh~e<}GORQy2@Y-&w=Hh1UJxi4)qqxIZOkMOb)PXdes`>!cvx+gx4r_+$mX7Qq=hfE z{vE~Scj~5>%1kN9cO%+QK8yL^|6c&+KpDSt%l435j@|9C^cpHt)J7F09*8U_-T5`+ z%3OBr#_ijuQIoYu_PcCwrmHo0{?0E8%QK@Zwxu6icKck`onBeGPBQ0M^p}sSvrjkT zDMv@cDm9Cv@*0tDZTV;F9~j^Loo6HSscGD4^S dDPLb6&!E6o|XHHdXKogMBtcu=;(;&<*5 Bi%Phn7npVE{CS-I%)r zyF}31i^ Nn%5sCfI6DOx_|F f7*jySO!d41T1pPkXwh#<$+*S(( z27!Vdgb?l`+6#1!24JuJCA<@l-53aM{{RSt?{8K~{RJ(gxsNrgHoK$ImHAo2QFXI? zD5xo4n(JapgX|oa_|ZLjRPvR!u$sFfgXpu|xjQq%vspF#FQ^zdcW~XKw~NS{qz`c3 z B_@g`wl$cJ1lr67+H4BwI;C I(KNP ze62dZ@;Y1T_Y#eg_7iy>r#dG3NtBdT{lZTNKBA?mwcVLzO~YEJ%#*aROj8qEiA$)6 zOJT5F8v-FncO|3%ujCZJh)kD}Q&S)=!2y`iU_cZmKEhxE^%O!X;j$MCkUNTkDSHM1 zqyW>wtteveV<^X&uN}_Bl8uq3B}pbUA7Czk_GdL+>~7mR>O0hCbjSc0fD?BZU;sm4 zC%6~@0g$*1KmgWdfem0MVA@D=i ~PfJfu6sSTlgcXue$NkNgHX%yZ z>A_Y!yt27Ev63718-LefBRxZLqS}?3SGcg7x>Bmsym_JPhxIOvMN&6ddo|&lG&Qoy zl&_u6r6{?okng%T%ZkWXw@tcn{{Ws3KDL&wlTh`VDDyf00L7xVso}2@J5-CymCS9j z>Ww*?({WxMIe#%aNzs!uzB1ej%f)q1IN?)sAVlujO`sia$lEN$GW8tWb|c-|cCx z{^y7Brw@%vG 2%kp$vNX?Zzo2UjI{HboVnDVU;3F*)pEhO zLi2sjtv@|f+@pKu=VmrtSl=$+AMxMpw0^7ewPWGx{{Z^Fa`wagPr3N=o0g4R=xHP2 zwF{Smzq0=4c3oo}dHVV19Nfv9w|kg9?qNN1)IU&IrYny4P@kkt^<53+5|I@_lE#(f zHU&_|3_~Jm6Jf9w06T@j`a~Mh!?HS(vdPP)O6~SKIa!udvsEu!Df)skia}CIqi#Nv zP{pv&Sn1kqCFB~seL-%oU}*s*dV#Kx=CrI+zyeCZ44aCDCxB$%q+$ubP}hN>YynIb z`4f^QyNoL0<`-dz2mHbQAuxWx17zGy;~S1KYjS`}@7Nhn+?MaLKcO;xEa9o^c01a< zS;JLw&D_@yMP|V~phAz*R(=oHeIH6@?#?+eqi>dt8?;XsFKb`IOBNazKT&GP>ETT! zx4A^U#@W<^`hx`DxSXGChJvqeq#vgQb6;>x+X3KG-2g4n0qxcpL3{1sPD_|aM5MWM zxtB3-B(zYWGKobX3i}CM8?hl0rk7$Hw5(DJk;gEvie**utL|QkjiTyHd2DmmZgN!P ziA%ZZQi_cw71;!*>aXN)D3`d?>31{9Olw^x`y m690;WPeI&dEq)qg*miKL&)OLx^utmL`JAz?=B+lfv z2om1o2VtTZ&; |wyT z6V-BR^-;AB(0^P108ex3(#4h+gmQCo>V0E;F#iBrM$y8;+XGhp(~DcIS|tjTjp(;& z&3zslI@L~;`LOek>G_-)OY5Rf##QS4okcY*syko9?7tIeyY2q~p2j-55!FzgDRQMf zr{YUyMuxnq(sZigy%)(*czvDy_Y|ET^z2^dTD1N{T-}XcPJKlG0B1D*#c|K&4Z%(- zIs8p%)N!i1w=#>|x_PM&H%G0O6Gi_3>FP%beT|buC4cN)Hm_sH Ts`~AenoKS^|I7wHy@kIHc}!t zyZzI8*1wNGe; DI@?-V z%Jk~?a@t-005kMuDv#AGzRjH9A1g1`y(}!VZ=Lwkf|m?$$NnSpU0r1K5Tv=i&(uCB zjOy^&sYe!R^?6ul xqy*Mudq?St(#^BC~n?RWU IZSui93>)@fBe| z jY}BG{WS zSyOS=la$*t2F65*q`_QZJ%fIeHo?oJOjiE@hHa2OWEQ@{0Cy0E4*fzEh6Vuu0Rf>D zg+Q>1Vz2@Wjr$XBpn+EghOk^?douBXtvp2 lj&@VBO1={*vPp% z+=31r!3p~f0jUEO!Lfp{#dI(uK!FWe$Z~8J!n189yX;%dt-CrX(^O#RFHw5vmYj5y zl%8kV9L}t&P0Dh+VyVqiZcap#?NXb++k5*S$HV+48p{6wKD>WnP2oMNOUKyb;k-TT zt93@yVEW&mW9q5GFs7--HiA}3c<^bI>!oAs)Xoy+Nh>RME-xnq4ML|cmsVTs&f9Hl zws{=bTyEW1*=B`$P_0eVoNoy$G|w}K*Pe%2{>#)$p{wcYKJi<}?vGI9;#w$cbexV{ zlZ(AMt<;v;4m@p|r*HW0OLxs{ZvENA#3{;+NNcEi=_^!AydLV_!NNF$)zEOQja43s zsrg;b`9~l5`2J+&jmGvR*;A<*K~6HdX+N@R ZGkC${ za$V(BCqa9frQFFgYIifop=RF$@qY(e9ZJ;Dji^^`*?kgw{(GM|k^1iu;ncX74XLE9 z98^s!_LtKC05kH9UY53tRZ~q~GF2(In&s}Dm*=_ce12J;KU?dIlO1-(z|ig{ba=`o zE}`- PMG&HT@68wS6_Fw|8m&XYV@7 zYFbK{jn$v_KLz6HQ{x(#M`br-+`{jP9G>mLRlcjp!Mo#_=%}v~n%!Q;GWVx74PIFY z>=iwUzmUtqHpx~7$!yH_ZS@2GVE__X(Ji330MG+ra3B^}3yS?gLt1TfBc*L-amNxz zVUAv$4L2MKVJ{_pR}ZS@++|Gz4TZdpiF8K2$*8s} zmVu&}CIK6LiGHtQr5nrGAE)UY2>`cH>^cJUgi^jiw4x;>NNKXk9Nk#hX{IKZEr1hZ zOPS<5`bPaC1DE(lQ6LqLQ-ZomPs!en9bf!YY%gND#c_qYO){Mx AI3h z>^yUO8qi$QZ?a)k8mQQ$uvM2W$Zw_C&pX=WDNB+LQrRn>J!-D4NlD1*)#^FABQE!6 z8|-6l#lMAS)rN$XzM<`xuv(DakuE}e+>(7W41!`1J1)grq*n|701&`?5;nvD1ND0i zG4`+ofDXe1SpXn!$8lfyfRKS{l#J1&RmzYZn`Y|CBur`N8yhI2Twzd_0lb!#g@r7Y zd -K)V11fcuLbrU3l`(C9B HI;#rNQ{MN(wipE6$YpaN#dLEwSb86W`pjSo5s1_HB=` z4P2x}njve*`j64?7ykfb{8dhJ{{VwsI#ai6?Ee5W(Z=fp>;M$8xy7tq zNuAj_HEX3Barzv9@PJ$G6MVcUPMf*XmTq%taCM`_=KjrRiM7?cl#)`&nrVadmBLgz zxdK*s1$++YeDMlP85^~*McC7@s5=nfP&UM}@;D88fDjBiU#kKOp{0UW2ywf*C}SX% zgYgCKBmg!8e7%Xkk%YC=?sVzn%TL_JE3 tP)KESdDW3Yzb@dyy?BGx|R#t>2JHm4h*Q;pg-QL(gyYBu^xO9Yh{ zf`Y%oL;j^-_=&@o1$+o+Ek~F4J1TlkDSDZfLJ$BlR6BssSPN&k0{0pmn=(kETOV=R zqHm>&l S}Qi~mdBf2-Pw1^*H*QuJ4^7~?%+Hb z>ni@asE_O*`V;>E IJH_? zMY^=(_g+je`4V2+eH_+q_VoE38Zxa@mOCxqgIzwJrFNZ2$`I_lo|QT 6~iD>Ppr&r>BZ( z^5q?gF6S11BHtU#bot#CdYlhc`j( Qm3V!1!}Ze5?MkEBuNN@N{ku6d^=i|pO{(-GcMQ6ISGT$7X!TUJT6I>GuCCL* z8j{{Ec4)<6KRxZ+?s=N3dW{~b>$DN(oRU?jyef%!@goee+e~hsNV6Zl#4O9)<>CBJ zhZEC$$~?)(6)C(rZ`|#Q@hh_or`34fn)lqA^dqR#&Xe9(N%(2qG1=bbMZ90JGM$XH z^*(JCIY+IlHQ$+G{{U3Yxo+Q13@NXZteiH5U)nFfbFFMSbRH+f+!h>Pgg#i?Q%3Wo z`FCqBKZ*HFuBDjS-~7+p<>~N#U-4H0mki=FuTD49R-MyZLA~P7W8!meeR6VhVSSIE z#l}lbKXR61?s^$w;|~X`@XaYz_=`!)9ICN?pL5BSTR!LXS;FJ3_?{JNMqHF&>Ob=S zr#?%=9^>|qO2^}$q JfXJVM1b`67Gqp@uhjWe#6V40RsMWTuNhF%_u7y`gt>L7`1Y)J_;ox2k6 z*td|dz*6c9g^@2i0qsfMU>*d9(1|IH3t;B7f&!?mB1&>>R_eIIkh>3IZ!4e$aj#df z?PN=8))s(Zq=fH_4M)fYVMio`Z*Ecd0H^7(!>fI|j<(-plU04o OljauNoMGkhq*7*Q{11VXf`w?I|0K;Y)SO{g~n^9zl6}5O6Vn0 z$(dzzagBPss@&N;`jWf!nrf$cdX8`L7;kjyg#927(mUWo5ZHtO0}FsF1-gptG=Lgh zt0N2mz)t|(;x5AkixSa7VyZ**i|jTfZeRu`iUzy{n*u1>l{?EJN}e)p6HI1`tCyAB zZz38rAlHE>V^k* g@^jm$$1hG03 B^~Y9^48 rGYEOZF+>lgaf7Mw}EQ8z`$Jwo9=zX-0(@Q;yJ9 ze(aj^wI^>@7xg^c^V_EkG`eq@U$J)S5|1jkWU^FM)((HOT@tc1L0~~?#a#_8{=&K& z#WwsW{ffuZeD 8adi!tI7T3#c= z^*pvvt7rCX^>w^7#!Y3n(x}@dZ?SbFY^}TymCqk5+opE~u4Ajv($-P=RbzG8t=HJ- zUY`uwoNx4t@1<$vY4vq@eOPGq(!4gMTgv^`cgb~M@$>kd74$T9R2>@di-fy)`!mF- zwHy{oooPz8k-I{t)emM~He{PLtzMSBJwn%T`Fy=xcTW+hyTzWr2IE?OElsG$ qbB>)zRf3cybk;r5$F1S6t!QfWll@y;A4Nsq_*psOzNzDuyM1Oke;Z&d zc-$Y4Eo*vRWPVPznrXr8{n6|veY2Zj<@#K2Z9dy&sKjAWZ%wE7O=Q_M%ltMKNb^ME z)K-*fC`MLm3|iUFowAg1d4JS#>$J3WdTG+sLNkPuO*4&EYB%P|m3?fK*Ecd H5(gZDfq2ORc4Qc{gn;XLBb@xDACBgg(7sim9LX(K7n zo?2VO@bG(FA1Cena&Yo-Yq nsTL~i^{cxqf1f(#J zt0ctK+sMn6yBVMg6JsIV0Bt>_CKg=R05HV8R~xv5LFZvOvD(9apK)l>cg%KCf3sIP zE!1^V^plk6qf}BQ6oZcTbU$FRTMFk~O(cOUgC^lpc;yrJkU1nvu=W(u4?7mUB4}F# zurNqh5KEPUD>)m+@fhGH(+IKHIafEQ1E4&Db|t=_a#Q{x1-r^uLa-)MLJ9u>2>FxP zQr_aadjM0+gRv#8f`qkWn^3P4v&qe sWa>=w;_~ zx*n6s=JlpN52UJY%$Kl5wnrbOS~6baR~6N)ch3<$2yF>_18878TIAgi$XIX_*aE;X z= dh$kWjnE#IsfDz*-tc(SgreNnE;( zrJhrcyp~RU>Z1zNysTz9Wr&zpuz(l=p@oWJVQ419NTw*-;{aoOU_e_d0#+zrfEYq( zyMs%V2@3tejfskyAF(UcH|z<7>@62gn{U{ !*+N;nI2*qhod5s;30uddz<<>d~ePE1cL202}seIbBe t!V%Cl5yC`Xk(=P%5C ({e+$N8UP?prb?EM zwBE`M{{TX?@=kM(?K^)%mySu(;WJBmkCA>X(+=#3@rMY~{LLLXPYTJ{!{S{p{@CRh z$DyZxbK0W_(9^<{V~8lP#EoqT>a;be%ax}IZ}vSra{8v@)2D}2THY0<)N@~&lv{s= zjh>yok2B#4zcb VQ7NX93>q4-qQH5x@ zRE%c{D>U*_EhXG@Ee$?jh;ZrfS-nn@QhG@|(|<>gz0Qp;uAZiy U&9Uw3=q*-` zwFz|drjy?`$Mrs6MZ;=W(Y;QZT$SM6I*{{czvOk{m)>@Z)2E2==xd<~sY;!AS<|er z)A#l^;M{s@y3lb*#-6ES6+ViY^XJ&$lj6!QFrh2#pDBm_o#Nb5v?r^aX~AVTx?ao4 zrg%+vQ#ZHW+o$n7{vl1KrR5#8Bg>|z2PsX(B z`&- nm_- z>XxsW=_Kt+w}tz%J=!(ZN=iyx(2~R6>)X%Rnv`kPrr|ioaFWV#z0aSkLs{_b=T}D= zYB+m$sY9EppS)jmY4!VejqMk&Tk%haK4o>T;d73gRTipQdRz1C&wqe^lINqYv|kcw z{{U63dn)QZFZq{mxyi$Lj+cp0RkYLRTid<;*JAa0O*X!prKq7!vVETG@h9(Z@yuh7 z{{ZV3>AFrYPg_P6^m3 ZRy7(bGcqvopv>=?w`nuVLZo(8+AJ?nB(`ASaRC62)m6_Y?IEWSgt{gjOy) z3Hu8yZ_+Xs8nK&p8kP2l1xnU4xq0p@08)J+exFGz0#fQ|bP3*0%W!c~S&2<|LgjLn zWFXBllP$$WhPr?s(~!g1NqHOg4TRjg^x`-PC2R>}>I*^Bzf)#9yL_{MrC8_HW&^{Z z;Sk;OBcwN>>$%q*jv79ry?R&J@_D++rXB_n{!l4;O!)mOSGp7R6^;9Y-0q$t`f4I+ zmP^S{k@XgYy(Fg4%}fR3?gQEF(QqX@{{Z~MMtV}4!6Ek*%ZaL183~L847j^<5WPcq zi5XQy)Roc2Ql;BBtv;7&9IakgIr6(Z;y_ +vYX5HV~C3&FmW4MrmJTYIJ+c9>vq9qn2%ju~^L-V;d_P zB5e6@%u>Ouq#i_7#K0Y`xi8pBuH)`4gG$APfG$8_!l$XURHb=iV+xXdwlldLV=q$| zdyV>uW?@^3&f`N!tYD!hw|BAGMv|ikQc=5mAfu zaw6HX+U|ON4OMt<-Z=jFk#`oBseK9I{q3Z8$X*Q(s1$@|(N&Ngq+f_;S~2ITWo@ zIfL-eBZDecc-48w3Y%#q+p+ZOOO-y8kCQ9C$4(lN;c(t7@_1IJm1%ss`eh{3+~47< zUoV3~PkN4XoAY*Zd`F>-pX-prwWhxv&u@e2{#Oj4O~+)v)XzM(4;kC0D*pgulSO${ z)Ybj^mS2KBCZiZWp3VONLzh8L`WHT5TXy`;U9{54O6H9YoK=ZdiAVT`y;A!ca-{tx zdWkAJTGe|(5`U8a08rS{cw+gBQ&nv0G`|dgsm;f8Ee#dDO+ INb1fb6PKn zHQE_%R@#bxcmDv4_fxaU;c?~quN>iAMPWLhtJHqaV{SaJg_GZkUCOba&4T))Z{{>o zjFsakvpll2NUPg@?cX1XjY^8vN14ZUx{6vktqyBK&Ax8Q?2Ncy6{W>AO07IiVx%7F z{{Wb#Hukw^iq_YsMzuK3R#jU{`!~8@iag#k!(+ts4w}VCzIszzsehw8IHr;uLq$_h zDM?=`^6e$*XOY7A%1P+;^7(qIF4uTY-S6&oapTtGEc#) = zp88i;AQjW~-;hz=9^;lEZ#;4Dwy>O4McKb7IxNX*0 zv&T8*bny-X=~sI07ddJ5OD+o$ss8|R=)NRUpUKxl^=(8j{{VHrH}GXHGq2XmlZSBW zP2YDG+x#tK(&4|OUOmU^LsP_R!$nSe^ZM=WAN!sBUl#ID VNyC~xb^te7Z7CB6J+B5rQKa=oR7{?L9?2M)AHLTjM*L$>QCESeh)vj4I z&Bc<@qa~1*b}0-D>80)%87wpicoTjBFwhnowS `NTwv4b z1umesNLeLj0b7aRu_^xm42rm{0XxJ YxSsN04Kxg(BdxA({ zofmtIOV#W!H7p=mWR5ln7foJRG)T=W8X}+z57Jsql8qIujmp?dPp~D+xYxKpRfYhV zCtz|5kP6P_rHdJ sPF19b(`4D$&vQiwy99XzaZc75G&YK#Ly*j zxo;~W$*@ZNze&9ar&UT@B2_L}tH^xH_FET?)el8k{_!;$jW*wNDmA%N=8=VJ&a~8H zDnR-=W7gge1JcJ-^);s{Cn@66v)uHYxQ2zPP^ }k?esi-L1m02U? z6%|k74J?##CZFY#?G|HxV}s;Ljns5;Id!u6S_;#9!V>=29*R7=3Nii#`R--LdU$0| zdoSvasywQU66}}uIO|F2I&1h#jX0>GwP|K0rFi;sMabkzr)GKleqS$yP7%YX<4t|r z$MiiuWTlyY2bIQ`&(?6wI@)!UYxz@S$FW|$DoUL=Q;cyH6>spK2A%$~@kY9?>Xa2F z_wIXjwNar?bA6M4(D42pUpAhnS1s#Rm-IULCwpgo)7ML@C0LvF7N7Ol>E5cOeC du>Qms-Q z;OuOSsDY!$_^VGXSHoJaS#{A$vVI(0&uGfEC0|Wai^{1PL9b?Q$Cj)aO~=mZ^>Ws5 z`Wm>(?r=~2PRbSeprsjMtKjgy6{zE(uce%&dKF~9tFhTeuj-sx=_kygRXUWP-*ju1 z9n|A`dQR?N)cO5vW$^z16^9U^ANOj_LbMlV`}-e2jCFKr>ZneISjECgrk}X5zlWAP zjiXW(;HL>)NnJl~$A$4P1N~})*6HK^^GP=}qw9*_@kU%5SyP7VrNT8*ycTrxem`{j zB_{LDb-nq!qNe!r*?)Pe{NIG=WyScmn?|K&QLDEssNXF8H(BuC2+{tnT84_7bX-%s zZ_d5^pB=_DwYU!xhZoR7Je>EOJ14VO@X_~NKa1&j_XJvs6YRO*_on^-0P`li+_}wV zkBl+LS5^0%B05@}Hk`E7Dba&U>Jd@5osOkeDozpmA3gB?t*r}$Wp^9k_Owp&btM}l zyPaPbn&sBr7a1nqO7WG}KG-}jjH=3~0G~GSZvOz0>Md)ls8EbB`?(%Z#q{Sc16pcW zOFxn8@O7NEhI4YipY=BVW`A~M{U-X#ZEEL#RoR2|`;U{ntIygQEte#SRxz*y{EQ!{ zRx-U9A(l%)0vD)bVi-0ih62zf8w0W($zVbI9a>k>ZwD$mbp8Ahmx4CWFfUiI+7MuL zcLoXh26ai%0a$20;v`EM8XF^+prA-C({WzH8d7OU7_d`z0 eyn6Y1|RUbnhK8oO| zx|uK1RZZD1(sh0$>H5E^-51c#2;xU=E~q2S`7^cR(k(MZ>GvTk2Jh5z;d?r7c@1D2 z!7Vet8`5g-3`t-tTun=N1)YY{zDKYCy-MIqdsqWQPKHaDQBVAduu!$>7?-3$0Xqo} z*C|`L>Ee?*&mP9E+@>{BP_r?~amgoplJ_a)*hXNkF)>&QC_oGh$z8x;Ko|fS1=tOG zMF0Q+k$1S)s^BN?Et_6z>{9fc&Q_PPbn1B?!=)Ea-OLn~gXdfKLuIDzrMa7^u43xB zeMIvI+h*C-U4-fw^9!5!MQCX%tq|pM9pBUlo7gum<_GLc1QG==SFjG)u $_BG*r zW*@7=ORJP&C2mQ%SwCj`Gt_ZSE~vQqI%ZZ*(LL$ILs1=H8`C&ONk$W!PBwnX`i(xK z)>7 I}3E@t*eisk!6yqzi7&n$aXy*gc1-TRzs zYQMygzcsY U*~yl)NR|`<=C^ zUYl#h@MV`S>g0T_UKgm<&J)&aB--sxHcRm~qr)`1chgGmyLoK% J zmoGC|OUvvNKeDDe95YD`XBOviild~p?HhB?x8!|F^?MvVBSf@ZIuLzRl5V5(C%w+( ztgOyV^WCeF=Q^J&;y;(#tt8jr&q*W2;#FNgia2$pii&Fg0ND21Gs<-pk8Isl%;Viy zIjoK O{4AEl@M&-l+>rrH(KsJ|=!0Gm4a=9YD|aji%GJqD^m z+v6>MM+e1DS|5nCI`u3yX4i!5{{W*s>T-=*X~tKBS6=D&J2INqOs9K}ei_6e#56Fg z31zD_;rB;VP20Kiu3!3pk9Bh`4y~`XIiE_c%9@qcuYT6-Wt7$2X^vl& sl$vP@A&xXS`&6UXO@S*6CKF zl;dWyoULzWdAwhY@YvIymVfUvl4;Y2R{mdM;f`J7XGzXuf0VDN_$T6RClb{vai7c7 z%~{cM{;BsrN2x|%skuiPZLeeSZ-%}T;&I|yZXr?<(rKyGRT7-K+D`UApdD3HNSuDO znzy SZA{<0IN4eIUTj3SB^K4m!ZM)kiva%OF{VJk z7=kV^xLg4+02l%pFAm}(vD2qli#f7wr*9~X`xVdtm_JE4bxf=`xb4y |XO?fFwo9Op4Mvo*c2==FhBcaa*K#z4?P|DF7tAm4qhzL>PeYbS#eypa_1_0BLq91vr?~&Dg6&@-ti6 z8CGqp6_2N0eEmefNmV^$*y;R9BesKFh~rA_SnQ*OdEX{&c(%3BY|yT`N6T}E3E9;< za)@m;5hKy#@if<@o3OZji%9xGhtdE70FK}=>1xbFdAG1MBc%N#w!eENzex@~R~&?t z*-ed8CbvqsWmOHx%BN6Le=%R~HvE`g)f|--q)DY;S(47g6)}iSfG`9AWKlK?01wz~ zq`FCH2!_2P8v_6U1YN=8Zy?1@oVF!2i+M9*3%eS|=4wc*+(5$pI2J~|AONy4?YIJ4 zg9o?{0 uoMN{l5rw{K7NKD&nSXlQA+`CVqR{C$kG QbW$6k$r7Z3rtQj+{E}jhe3sMl`-A z)W#6B92J*^aN_ApK;bCjbBg}}t0$>jLaJ*Oc*-$tS-&P4t`{v=%Tljp3Es*#IrE## zZL#sotoUk`dMa9Ze7V_KIbA$?Jg=9;ctn(HLQb9V_mAG^+bFJ4I&qS5ly06Hehd5V zXuiGl`JNF|^__Kkt~{-% NzDPc^n* +q{X>aYT7DN^qs5a;?(l2EX}TOHgdB39oBO<#JSy|J zl%A`PQ>P86tNokL_C1~%tJ3iLQ*|RQdAqubH@WlreN{N|Emdl}Hqv~)=W^ERs%=&` z@b~ 7nM2LyyPjqEyI=R&*oEG zrz@G|@wfeI=OgH~5#_4fa+$-d(*ChYMN5)PDf^r&;#j-Jyd 9`!1gDfjqoUdPmaj0si`j(^idb(=P4{5I}$?Wqd9Dn&A1H>z6b#jCKW98O{RMr}2 zqr(0#r4+Q>PIjCytFKG`Zw${q8|*okZm)@D@;HwR)a}b!%=!sb{EwITzM`qabhV=^ zrB*F9E3duJdX-mGPYEe*m-aKy9b*@T?zlB_<>OR(w?}_A4=-NQ;`(VmTQj*yw{PlA zo(y~2!T8#b&EYVrqndSAd~;v^#~;GHVimOCsn?uUYD&; srOLl zUxT|pGk5R0ck%Z <3FftG*hEnQB8M)=2uc(?0B3r;$@+xw7Qvm z>T$#>EVR5>`D%}wc;C&=t{b9y-D0P*S$!o>k0k9EmfHKOd}3O-IcaEKn*RXgtu9;p zCEVuK$BAm7;rhiYaFS`I3#Ojtlp?88RN)&!3dt#Kj+Ek{ujBWbrWj*~hi%F8(fD<# ze%nz|rtaZSr9Z^ (7(Q_^OO$@ZPEN<|#kO`ah3*jCnlM@Gc=wmb*{f z;CMYQB`$qb*JIA9a``{CdC0jBC4*Mn&fbDh> m#)%4)>4D^E=m28mcH zfmoI#?;8lDx<*uyUYRcgYpd8#(kczR$K1|a6v=V?hdmBD%c&U~S61A_>Bqnm$~!4~ zSKQ)WtR1vo5ySEqi&loEX%DdyU066V{>oEr#{#<@gnAfwiZW97B&F&s2ka}2s}eYq zORE40*`NUHw*LTPT4ko1z&HFtI+f}76Mjl-x-*seuvDa`{21y#;7;=FY`r--wQ@>} z_rVooPnr<7eTtUC(l7UTct*87K9f7)#}!!KSMFr6ZK$?B<}VBHu>@`0EC>W)fUdg@ z`aq0HH@7Gt0DEprcPLB%Kp?vSU>5)|ng+Uk#;k X^rC3d zsa~R`2;IrqCEfTlqfT|}D8@H(c2@J?{R4n-8hkd2uUavBsVn~gBJ95BKPNQCZLS#G zRl)c*E*GP;qZwD4>wX{ZoeeH$a~hh7{ |zu!~P(ltEi~fm&=>l_)Y!J%r|7L zUc4f?+?;n-EJ-_C*rbk$o~Dtl(4*8R9;M{bdTr87pH>WV%WW}=kEbNI?=MkH(kFFt zWnP{a4~zL#r1za!H~F1$jpdk_=;GF$_Uo7TIuq=3 Tfc-&@O zy6zsI{{VG=bbAgh-o)oMqn@&(E9)oxDI=n!u5swwma|oFrNw_top01 $H!}BN90Y=o#56}#gDDh zzxQfB@L$;E`8LTL@y*uXsp%_EmZb`A>h|T$g!mr}jJcMM4g2+fa~DyrC8dhp^M7N| zZJu???^|#6j|<}dT3iweI7*~aOJuwr=89a}3KCuE$NL{Q@r7ixlxaQY 7wCZQx$B)7^4^>%CakL=r{r!)qR*Y=BD @&dYqQU( zx!KD {X z*rir{9ERGpec-@#OuS|<1%K+pqrWaH=}UP==>r-YY{i%iYC$Z6zdS^+8bXJEP- zPT_C>1jLp8qOH}Cb^uA(r?rT`QC)yDX(2ah6)XbAShjeY^yhMHSvMMp5)*d>1! G<$ zYn?30_@^eKJthg*>(pE2dz_|nicAI}fW^KBB)}glOCZ6?FaQ$(uvmVAu*10Q$D$wx zn`J1DW3g!o7NXpQ }n(tvr*44iB;NuZX^=(7i6%udRyB?Hy zPKrrNT6i~Z@$YTUZXrkK=quA%bA+w;-5s1CQTo>kp;5|Q_DTKL=T{y6I%k$Wy6IDm zD5%0VQC3OH_B0Cxix}bp-B%h->{E# j|f zKW5tT{zhDwb|rG~{p-!|DvrlmO|zGV+0kp7?(E-LSM_}jYRlCaH-EzhHd}Pltvucr zFV?u`yHxgzRAKmT{{S g~;*UygQ@Ur{lqC$yz|+tf6f^#1?~@QCW1^>yKTYY >vm9@MEn>to-M<=NY-AJ@cuVOc&QMwd6Do!a}n zA4|a{eg~wqzxdMrr^NB @Xb)paMe`yZS9O-WMY_2aiQ zzvh07etq$zZSe#jm_@(OCtt {FuL5GcQPL16d~7V<2RFNC zt2D4!aZ%h=aI@YaX 8ZC?is3MPQH TWAW4fND6r5+y?lkaHRu$-K&qM*+GZWq>cGxMK~a-mgfZ1GAE&wl9yVTvE?D1 z5r5~zXD0W1ga>Ik6a>nnC(jQ#7qa&NGr1)29Ry?wln|Q+Wo>ig{2@A%Qb#J)j{fer z87R^&(;gY(#p>uAShZ>qd;iYeaYs?!IfIyrBq|rOvs*TIRhyG|=0KLW3aIzOQOI%; zWfBUb%h-J^-!m&s({78~(DM6N&Lk5Q@B9I8 ncmSCZ~I4Fc 638pHKF}fRckVj9MwRIqCz7Y=OPxe zg(XrsPU2%JirOe*!&3*%z`!h;i5gjT*6|_~B_^DHFi8%%*d8MQN>O0XTAtLr6p(gL z- fK68*gTq|U`IXaah=;nwyPq4UQAalRp-XH;} zM@or?35jADE ?;>>Fy3FY(yi1M~w)0 zUoIhXux0eQdi9GU#J7DenKA-gr2PU|=;gt3Q-8M?>xEK-q7w152g%7^X+0wdAdi;H zz+{5OYJ_8=@8fuZAz=hok4?am+ukMZh@$`t^&>DTq>P*H$JNn28kj`3@?Oods%U># zzNT%=Nb4IK3wFQXl)mgx+r*JVDq-xVx^*JDjPn@TtsczDc5={`VJ07SICpkZIYxLO z7H>XnW*1-LI7%A?szHU} n#K7si-}xw=uaxXvEKQof=`OH zt(os@9i2zeJWV5CQifn6{*+6cMVwx#4!Rt16GR5n6-6<3V-y*L1BVtRRZ*(KZs*8V zBB^3x(`w$?=WslHzaz`}MB*%{C@xq@vXaQED5z$-Axrs)|6!*I(r^0zK5UP{T0iG3 zD*U}d7HXrTBF&nA?FL8H>+aep{3#FI#5Af|{BkPro_9k-lkn!*dm;vdt9sJLOf`6T zXfJ`Vfy;Q~xw>l;d@JqmqR7f6N7}+ n6Br)e`FgzX|@f z*S9LbqMJ0XgDY(3&0`RQ!R)|J?pIHJ?fC`tO{&-FYUic&4KSh>+{EzI&&&BB{j>WC zm%wZ7bNu8C5n @Dsj1<6j8$VL&N7P`b#sJC?ZnexOCZ^$z3s}YK7!$*E_1s6+d776CXK9ga%;QHW z6W&8uOs8Ainqa^`S1QW O?A*IvS v(&VHBlXYe`3oZ+kB~hN|YR=Kl>9EpXC3HR;ys|wc7mKKSokFA=_TS7xHF Eyc4G;fYd z6(q+?zHVTrA2R1Q8jCb|YT!>5Rh0fFBjyIycdbEs>tj4Isus8r^8J0;9na75v;x;b z)W6BU>cFy>n`5e4PU+Nx-oZ)kj-AjyH}$Bgh@2u6bNXJW$_N;64e#1trY6Eas8TMD z$ZRrYE`OK=%;xwD~&tNq5se8Sf2!;?SReDm~&my*Tno!bVR;DTBKO z1{{mXnG$6b?@T5Sw+Yj>>n!Vf*3d7&F*Q`@sbqch+bZ+W &1R`8}98E!2~bxC$)UrZyTok0_Z-gsQG!7j$1q{EW9 zwQufURH2?)lp%;}nVyAF>L85@s`YM37^*m|m@_{goE>Q;)F>F9% ;H?b!KE3# zdjIIdksL7QS)mG3t+2PZROSYuVx#3yf6`Ye1ss;y&I@GF08P(~FCP;OruX`EMmJbs zNm5ehJGMDQ?-VE4u^km({yM#tmuULEuxjETaYu9#ZtiI;&ZuM+Uaaz1Pl@p?0%pi} z$I-3F%yRFZdio8g5C(P`{9#x&+#-Vjh76^6OrEnTGP{o)53A+q<9TN>`h}S4K}fym zIS;H<$QXJ97bG#eA-4i`CRLq?)Fj*eR?cIRQR>r}lMCr?&mGm_lvJzB#+U6ynO8;Q zk+CK&PL&8b#&Kkx*-4^>$(Fy;g#iuD!^IV~Oo#fjMZkLT*I8dOjdvuA1zDc4AFD5_ zq*zYER!~LLlLG6@{YAx#v) CoRw{P5zHlwl_ r1Q-Ce!h`G`pYH8H-;D~!2s}li4U8^nonCPBRa&z0w%&!={)J@Lh z%fhL~SX3%4K~&;{)rJSd5w%wH!fx{u``>$$E-%Xmdue?g{ub;Pf;5-tI(TAGpuW|{ zn|YH>5ic#o(Pm;~uc-9gi%hksfn?{h6PZL;ifM=O(QK)Pv4(GlLVD4lvwIOlB6H^f zslBl;5QduGvm9PEg=$_8=0fLxh9rd-&5M#Es@-`rm6zFlwFTtq?RX}#d#2b&+_N)h z!W!b2hZiKXlQ7)2u? 5Oyf zC-saGs$NrCoDJ$bMYB|rF}Nl~wQI-napU{=vw(y4Nd@>9u?0{#h`O#l@b9;ROVR~m z@{q6Z%gXSgyn#|lDrpUa=ni0qrKIAB1fl0f-2wR)ON@P>3Tw7ktY=;x5y4HyCf`tQ ziPhYlV=A@N4E7V_BoqW7aa-T{X*g7G0~g<+1U1WGE44iI*H90b|4LWwod1mC^K9^! zsRN_QdeAE~7OLBCZEmS#JxQ9Nzl)?Zjd*&8<_!GcsudF!l)pOGO8kd(9O)9f5 zbwq$hh_h!H=c}bd6yG!uvE7{cPIePSV@uWm2tQcwX{Z*HlX0!|Bp<9wj*5=Wmzxv9 zZmTMKO}UJ#H{A&>eu0eITDBW^5}&T?N@Cl#RBl)u4WcR4tpD)q&RgCmw}_Hg1987* z(OY?=8oK?&9iNv@R1%OD$D~4ib=&@Tt_@Q|tyKg7-_zKJ@^LYjO8sDdj#~YJRZgVd zsRkzOSXzS$xkv2|B+x2qTBxDHdChxfJ#q!;YUWY44cX^KnZx)R%U9(x=k2q;pn!r)N*rY8o`yFRXkD#QVY8qTB{J>Z=YHMivhSs(e zXNww*a<=FF>0ryzlvlx?=a$$eoi|UmnZtQeRAtyLp>+{VGbOKPXkSIf0Xr&~CUV}F zYGp%508l1PRl~sU%}QxJ8qihlky;jdrI>-N4Us~&MWbUTR1*E+*Y8RcWV*4u?-blu ziQC%}qY!bsF^ZEJfeEfgBjBsYPo +gr%(AYt!zi7^@&h} z{`=1VNQ!LDGa|!4G71O {M^mAw6|_WmWw{e}dY?LN zWj~Lg*rS=K-1Z+y!@wJ2%%D@7_lHbxp8c@v-Zk6knBGtYOWgd41eF9R=RJQNyRSfK zfJ?0z#BOwcW-ODos@o|m)+YW3Sd}&Oz#78pRG2aBcFM0X5nz>Np+TBY87J@wZLFcV zx=E^POI|(EpIKib#%C1to1? wYNh4@awlB0WHesa8 BNv#s@2m6cM z^Okn^zzQ9Qh3dv!E0odpB|n#XXuEvdrn7^>?PuKG_U0e%+)~efjn~i>2?;={e p!SOfPVO~e&oQh zz?welsXlR|d;ffjoeQcQtNJSSR=|^dfgmS2n3M$(fQ`gfF?}y}8O;jeVal@Tm6Z5b z$XooSfCV=!wuxOegoBrDg`o5&QsP%Uh=rFioBeH8ok^@z7xK%VJn9+OZ*@X!esG z#jf88Bt>Qo>$k9IeIX$+Hi({oMk8D4{JBX02E_NCSf 6z%t?&gS9n3MgbodFFO K8P0o+K5@$CTwIXzC^Y1pHrR4sO;Y zrj|d-th#Yuk0jt+QvAJutW)Y1&TpkzzfR*ZvNVp()D+vN(odyutC*r1_a{*UOH`uD zJSnI4^Oy9FjCR!;P#swsrn)J#e>T(jPG61Kt@PGh3ET;4({N4GyZR=uH>2F5*+X(s zM_0vASVLp3P*uog;jAsZ_kCMjTtG(trd<-WC)l6Zk1^TU6vt<;OXxg@+n#ARt@yz@ z&H~ObG==%GrJR # z{ft>+fh;i_z0c#-6qd8e-8q qadtB`xUodlm$sFx~z2$1Kubf=e|@(pY0ny6Q@;b>oc zt~<-Z(8Z@b*?czXi|6rqOCEIh|8mFUowVVaFJ9g8m0hCo{`R~5&F46&@MQ9*QgPL+ zT@+mp)Tx%N%vAINGhrK?o6S?*yrWw%(bgC(B(H-9@F9GyJ |P@=nhl_?W8hJiN-X&BE%2k=;upZL=TbVX zh{%%}XxD;;;QLDkXg|(d%i?Z>Y7U x!UYpXYf3@jH<+kI!9s-j`W8AEkO-$2An;6}4S8w{x(WrcNpWnbO3|%?A2QO?JV# zjf!E{3`3Q{k{>erGyK9v;bT#!>AHzFcZQwZyI imD^; z0$MJ I-1+3(awy)fZ~#6$OtNvzUeV1S~&>7JA%5w=>)JA zzEtoJz=l5)hzv!4>U}&jyH|ZQ`X5QwPWf7sKcIM3 -1dsCN>NswI*tjfmhokk5UsOL-skME;8BcL$|%lM;!I4wm9WeRI}i> zPCSoX<+x{Yd%)bBK#((^HzSqE$Vy?a#mY)PI)%5IzL*P6|J1DXkWXLos;nO;+_dxE z@5$OIe%L7>x8fjSXD?Fvs6vBGRfN!?4KYJ6%?>2vM=`WIMK~WTsC9;#UytrHKG{K& zxcnWFi$d9=n3PBRxlgy1?VDVzZ@4Dy2KxSW5BUovuil^AL;X&p9;=zs390#y qp|*Ke-Adx~CyZ_hMg0wn z(nvk|HMUyR>_;W(kd^sJEi|+v+Fzp$!N33uQ(N?+9Z%J1rxD$4zO4RS1XYUI$GmhA zQ4StV$%n)9#;u4_*+mE2g3*z&%}py_@L}Gr`?VZf@>Uyjfs;l2RBoAJ&P$z3Iw3v( z{ yg0vk1g!gL{+^)tD#1uj@#H$;^wjCNQ!rVRQkcH=@G$4zc3V>#jS2l zGjV=wQm2sR%Hz|$_Sp0?+M}d*)TG;lP(dU>3>7}M5;*{a3d}@?7B=*#Gs+^nD{8$B zALxc!%~TtlKXME=V54#>ZKGW(a;t*cYGv_hfo8lYswy@Ce7O5Ppe<({9tk$Z<2@$3 zhJ-0Eln$Y$N#^W33g=b7i1dV)*3Ukx`;ltVKO`?@k^JHA#Io%4bEH7If1zORL3y`G zq^PbDBZj&zFchR6(2&%+q~;i>%AMLoqnYEebA>DJxYom7sAz^Dr>=YB==R ric@t$R8kd!(K*UQoG~}zA6CEjCjGAs*@(%@-=n!b5eWP$JhsSjEFP%T zTe+v=u1`w7vdY)4Szkh9S<|Fy{ATp%;c!EdT`u}EBdi_*wc{xN?B-Zu7S714(aQ|! zhr9B{tS)#@Or!r O26OHn=JWZ?NW013U m$6?V;^Z`>QX5>T+=waN-76yfGm7Ap`LOA;>Jo!04APm;$+X6I<=Je6hUHSjK&issBjq zSra}Ah+=hX1V7uRepb#O;nm<=Ce%Dh`!~XIX|nrcb8{ae^O$ES_rX=XVZxpZkV@o; zMbfD}BC&er`kCs%v5#z^&aa3~d4ZYg%At7nYZpi2r|?+tS(v_4`3*%As4%@KSTxl! zQL_P!Ol=|^g8vBLP?8yYw3sZY+_ox#SY%%*m`1uAh6F|zOjq)0)wwJ?-XW^I5=K9Q zXpW7PueML5`-O28_0%ZzCFB!wB?FySw-+qt^?g#tWnY% *P%`>W`tcVx%1Lg6ci75D d92nYiGR<%t9DhUHQ)u zdu*)!id9 BSLr;0hAM-s6-g0Y0f)KKz3_$@F zd{U9RB5fnyTS|LBev?FNCIRT=m=cWYq*zn!UMino`gc96JhMl;wP(1rHZbPo!BV!m zGH~CgF=Wx5@i)FA#BQBG+vc7Bty50(`^v^xsr#)b7w=+j!EbSN-ld>_K4C~!2#ivz zb$gSwd$d5jvr|qAwAwKC?Xi|LyNllEWqG=wZiwS@zdKlLwD)-0aXw2K|BEVvh#|OF zzDXbPwM)N~*Y!#61PPqhMw-+sxTf^)ee??nfo5V;`s3Rt?;J_yNL~&<6tRD9@#I>` z2DNMwl+E7fc%)wP^|e9qm-Pi#sJoU3Yhr~OT>9@dG*nxgW0lSB&Br^poSjHn^j_Y2 zLPB!CYV(A8x+_< -o#u~ zF!jbA`Ujg7tL?=lhHezYnT(?fJsVDZBfUmqQL!c`(ld>kZbws&OXq>jIf|m|x&G2Q z>-lYYLlMhNuB-OvOsgM8k`0MT!bcm^&ycYydiHUJG<{LMO)JJlS-uco8O9Gf$*jAx zUs5$Q1Jol{71a{AQfa4g2aXMzVo|F6>qgdqp4i+v6(QATEbXY&j&S*>PK4QIhT9t7 z$JlLF{DG3O-Vfu7wGxi$Iu@b0_okJC0KQ)O=ZPYb6HFribX+BEblrl)gg)jGJqLB4 z`|5VtQnO91xnK5ZUVO4u|7p+K^hJV$$1w$z1B+Pah*5T*W{xE7<=(zB5Z)icWWqIa zF~pt$)Y+ dL&D~m?j5%>DQp uK!x9tX-wywGZZNJ&nWJ@8IE zRDLs~Len7b$9Lwg+$u6+J&5|SF01r_x3E4 >eGJ6{Hpkxp2=BEI8*0Ko?-_c?CXvp#W8CeIh3^2picvehfiJ z{8KNh2F9G)ml>!Io-scTez3S1nkEBU%ev}5V`eiD6y3Gvh;9)&X2Ar_QJ -2perEu%Btlj)#&Zi?|tW9@5 zd2CyFatLCUc+2Q2ir(tZ|goj>474Bc_% ?$&pn!m6xFDB))Ag z%0Ia+isH>Po~VQfM)@g^Qy#Q>73zAZzW1YvP7r-a&l0{H&$GS#gVP+6{(Dj{TP>|iJgbT5X{r4)xaRQ(oszCnupSd{N4FI20 zG@M>e19y~AHFZn_IWaQNo#JoQJ$YD?Z_OSM$H!)ql7Rk8ZJ4#8>B!nbK20T|W0u9x zphYFxlhHi;!Dw)FZ0VOI8vvPFe5Fm9ryVm6vo~HDB0r`~gtCAS?q4)~7`D0Qu+IG+ z5BVLR<8i^@V~jw=dOG oNB?6|kD^SpIf&Hr zrJRYwb5ah`0)7;!-u-WZ+Z^K{F7^r3WfxBds>y|Yq6qg@glIn|UHQZUV<{W^Fa`$k zJs~Hl{9JzXqWH7#tA-B=3vW3{h7{eIg-Pm?UE_5v;4`a*)(d$0NliJYAwKI7=_} JF^>*osYx)@%@fs2W3xg{FT^TaN;{7rw;!NyxlQoVCUEd#wbRK6-EFOTXMHTls z68IZUv|(S=Gr@Tki!N8Gc9}t3-L*oO* 6%=x>I95}l%3z0W& zmz}RBP_S!$V&5w5$9n-;sMQz9rUMPY^>gJDKUe4_mi2Bq?>SF$NIUyqO!K)`uU| ezQ1m(IU$2X#M{X@) zt&RqMg3&t2LQSV!sJ88Dc_c19KWgg+mo_6?2Kg{ubs?i+OPy}Tr5ck31N-~#`9-t< zH7b3WA~V(KRS@&DoWa{a4*RGJE%Wp0qjS3sNl#^D>^r>r^r^tfCfPv)NZb#GQmp2L z1qSb^8d5PMDeyeJl4^{SvY>e9k{Qr0%eJHk7NFw2sulc?Br=uavXOXtuJ&Zc>1EBw z0j`=(d6^_03n=Tyij=HC3&mRnMR!y(BrQQcA)t9bWXhqk5Ne`u6sdX@US<7;xS|6D zMZoED!z7FXqbu#RydK%;UCXuKzWAXyYP$oZ0P@=D sgUaZusKr(v#i%B+L}9VNMmSq{|iyd`X5Jp@t7HT$w+5-ryIWQTGJ_!k N?(R !V+&Jv=4&gLPfgLR8cFEAD`LsK)6NJb?x80`Hp z=NIbck6%mASDv3X+Iym)U($9ow_4LLA6nl=oG=aB{=CKNmUFwUgeAfE{qr4?uW&k& zPiw>;adyAg-0CvHkYQD6H2U?9fqr{c_MS~RB8jbkC8Z*jo2qYR0Bf>LDK-OIpra~q zX_bl*`F!$_gailynrakB^K$E1DaU5fPr&IXj2_LtM{RLz$8o9w?K<9qPrE^ncrgH{ z(k+T66ApCU#N-0ACY-Bq;{zJ+2u+9o{Kvhqp(NyP>lQkjFqRaq{)N8ZuA6__n;Fr3 z_Ceer65pSVPSHN|%{*gr?^*xdC;7U~xAsVqPKOaFBlB?bon2<#u0OUA0f5Y@UDEL~ zT-3~w77nEKO4-diSxHo&Qn+jF;Hu_sx%#Ol5b(zC@Cei(+Mutpxxm@`0sjd{GKk;h z!bulm$Lo4mjL}z`rvpPT$N8k $_apem9{5dsC)v?fb{lcQ>?5g&ze?48cy`t zy2h&4K@x8}hF!=nI-!R$(BeIWP60vJiG|TUThR=Lk>!I;T{1JdIvEb?tG<$zQd*Ph zE-MkqLcX-WXbxmsfL$84&vbO8s6KOtZ+z8a$Md3*3_U8QrnEXxzc{}qxpywrP}=)! z|DcGlZX^S-xL2I5@;QFs``mPK^C7tv#9bfje}FTP{yk4SWAo^JO`$oBVN{cUsR8R{ z4%IGURqD*}@z}nv&hUmMxWW8Ht(EAU7Yrn7d9ENiYnVRFV9Qi?I__~#)UMo?U%5*B zoipZdbv<-eFFcd}{!{MV<=ie4_fwJ^KU$KPFPG6su9|hIuTVyQ`Mu1QHz;TX&R{}V7KepWc`=J`#!*NLYV$;=eHQw2#S;K^L zX7b{Td5V#7XnP)btW)quSnv-4KhkXNmn$vjCG>?0ow+Rbw; z&1y5NCI^%c>xoj=Mym}Dh1H||Yu4!KJ-cnhAP4iYM=6r(*KbNwlxXF9SZgBcPigub z%iUE=kr)=sWieM4fXA}4nL=S-?yxeShz%7@Pmxu{KX ei1^|2>s3w?K)>(r_M?^Qmxc7am30pPg3WnPgP3Ma`1_7 z4^%~bpym^CsH*9eb5YbMFqx9lqZ;pU3?)D&y(7i!w)(nd!c?29=n8Om26ky@cgaVR zW>ONDhWUPO>GZeQU5O8w0}5yr>d-s3P|**TqbGu;{YfHFy~YJ)d(6yw&V{dnWIVEz zycg^7OJ%={uXp0k77wJ*askB)A?-%@oH9yD7=;X)w4-m r%!Eru`(Z_c???by3?ew7BG^g&Te*?@ @1(jxV7;nQ@c`xiWu&xS=g zH?jDK@ikkdPyUd6BmvHE(z!p12EUEAgmN39QohY@y|U*(ys1kU{M@E4+ST;S{_MR` z66c!JE-$aaO^0Z3=FmXMzs0O5A*g%Kxm%R~fT>A$_nWxU#mJr1;?^sv;}qp3)FPgy z7xUwAPHBvoBvq!x2lC5ssiB!Z!a(eGY?4!fRAzBL<6?l7Uc0L|7oC+nib8+Gtu`tD z3`hF*YpdJN>4x;~3k}Wu@ZgD^F;5c-pRVEjva#w_fj)edV4JK1#+FZ}@NX#uQ_il4 zC|m@gZ96h8w|mSxSFoV9_X7Rnou_XKv(Yd@#Z@L;^G)1GS7aR9If~os@ShrrTV&aF zrMrGQ_PExHSA2fQ3>qk*^r9OY#$;WRTnpiW#TxQPEtxOR$L6FkO6Xw{^kNH3@Cr7T zK#yd)NQ(Dx&c4U0r(?8pzlO3UCKt7N*MP~?RdE8JS92lutNyv$S5$jI`=7jp24zB- zZLC{UZTV(|sKC`Ur52An%fO^!ddolKe|_qvEiu;vxy#8Gs(ZUn0wpQ``~%v`P|@?* z%m*~(l%2Z~NngG%_aR$n>&%P(4;(z+$@4g9;t|}7b?zt1O=-^icEUK1DCQ-5SYbY= zO!_?nhW@CN+lIkByH2g$B4 uGXZ@f0S zY!rW_Z+J7b7ckX^#(?~VBbxqRbr|zpp8Bm5 >^IDWJl (!X+q8r9mHplHbZxXk zE_ |^5%dPC(MWAsT%_WZ`Wy~dpNi?&dEF;CY~fdsC Jc`qOcvau}FhdglV z)U=Ry4@osh);%HG`fS(_WA>=f@q#tKM<)ejA?Yu*A1z_ucDB5E{b~vjPI3#dVl+WJ z*Dgh-$M;I}g(d|p9qqk8Lhh@aPO}B1kM2%nDKmDGeI>bVA!85EfAAhY(OFyJ%+w*@ z_?p7tc5jK^@G1FND!YB{>xdZ}TZ(~| FTmj!b)3)ScUWQ~a};kGS+(7%p>VnL zH0fwEh}2dlDD15(c{d`vUWiUbUU{|N=FYnnkgNC8W*#qQ-@w1So6TbQFM#j1gDKfr zDDmn^-Za?WT7<(5(=ip>rLTOQAKOvpx`!X~c#iEMSS%BgJL2b~v@csZ+Q7@!b?#Hw zq_w$>YY2fmAuGaXmHgG7epDXu^m5sD2YeJ@*(lV&IeCAjM9@Vjlgm5;QmNKTPvrMb z5Hh*t^GYQYlw6wv5G>sKtnsDyA?zklP0_aK$aHojNq1eT5qFU>n)%MHk5=%Bpn@M< zw^LHjh2v6z!nE3n1zR+h!* fAQeh%C zT@23|zLIMh=QHV606cWJuU@Z{lNsIQ`RA$u)CqAO%h{RUUIZ*M`cpb~?F;ZNlHRnb zOsOV4)dgLq%KZ~bZg8i0fGhJY*oI4RB#x$o8^lx!OvII42E>B)v=KLeAxWq8j7?|E zB434jgMxU6furP^Vg|~9S3yy4K>X?{)&>=?Z5kD&d;K0lGnaXTYm-wuO=E<)x=30u zr`O#mwTf4A8+K3c*LB1TY6BvS=qkPmAoD*xsWoLCY)$M=I;Lag$p 7s<1Y<3JVE}+ZrWd-V72RTj&~Up+ubDM^hdO?w zd%tS`c>d|&2-ualPc1DJWQxBD9 &UNOz<_2+EA(^m|F2;jtjaTi(Fi96gwdh2cZo9 z8?K%NH@KxY*1nyUXMBxQL62u~59Vr!y`1aW=9=FZ2KV=Cv(Bh^))F8M5v*H3F(U CC0o zO^Zp#2RDmSXR@N%x-xQszF)ffjukQm^Jhl4Oi#tm#g7Ikh#w}41YgUy2dxVM4|r~s zlE93Oou0Q2ih^&npY4%AO7(0sNh&wR0x#@LsLI4X4hVjLQs|#6lGV{UhCZLJ`M$QI z{W7g&*ydKcXwOHL);qTxUy~R!c9-1hv(KVvY;HDkDzS8@Ao=vR`POXNSCZ!>BsBLs zj7oAe{#su^;8>Kkh&s<2c!=VdvfKI)*vJ9Q80`;mhE+Wc@Vr7+Av*(_zUbK`%TNma z`o6Bd7yEart_AXkiyTDqnq>S-0qMo}RScDae#CTa>=w J(Xkv3+HQ33 ztxsL+I|Js12m_Gqy}WU{Zhu{VHDrj9>ud$SBAxv@qGQr*l@+vm7Qwq+3TFL1)xb!3 z?qt^h7m6~CAQUfdK8}o(%ym_|pP-vuntQO4_}Bij^I$~&O+A{jzFsc@*YwOu5b?sG z5738vG($B0(xPrAr5ltOJkQn9r{=$}eDVa@qaY@Bms$zxRR^I4+J~baLD>aG>wps} z5eAA7$3ztuv|wDxx`ejgR@;&;an!AUKy249X&4vQu3-mY;RHm-6g0_zb^AP7-9v`6 zeJ-df?@@)jZuN;wgJGMr;QK$R84WtyP)K9GFRGyr)86R~`;Wx7n16rM)&&~B%=>a= zS;K52od_^?;8%J$I+8+Hkx5$Z!QD&dX6SgOpsU &~D0Te^^lS|T8lH_EsY4PVobf$s!xl8tV`NXlD zvShd9mDmUL5EW0Mpg0kbB;32wYSH_qDKgn a@8*CrOP?JAQQ zcA8>4ui-MEO!0B!xv DcwKk@EuS`|6L#B&V|QORPWHfmFjCKAEI;x; z60Qr?@X8nXHf35f14!nQwR!|NQY`{?BAb5{FyB7}V9 O*Sa>oo_Q%JNz|MT@S>Cj}wid^M5z1-7-D@F!G=53d7tZcD`E{;V$j*WV* z_xJe@8*X#6qC8Xc4X9pA)2S}DXl}PF4?)nVmKHP_Szf?JN|g1FNedPHLkRNY5puHY zUZGAcDL^`6l(0;*OrcY;D)r3;=SEsUn|3?U)k e z%tG-kWKV1k^FL@=-ijf+d}#TWEdN7HQgcD4V#>EJP5BoAJy