From 6e20ebe90186e072e3f1f92ee99c2dcf5e08047f Mon Sep 17 00:00:00 2001 From: Soulter <37870767+Soulter@users.noreply.github.com> Date: Sat, 20 Dec 2025 15:22:48 +0800 Subject: [PATCH] feat: add KaTeX and Mermaid and computation-friendly renderer support (#4118) * feat: add KaTeX and Mermaid support for enhanced markdown rendering in MessageList.vue closes: #3747 - Integrated @mdit/plugin-katex and katex for LaTeX rendering. - Added markstream-vue for improved markdown rendering capabilities. - Updated MessageList.vue to utilize MarkdownRender component for rendering markdown content. - Enhanced UI for dark mode compatibility across various components. - Introduced new styles for file links, reasoning blocks, and tool call cards to improve visual consistency. * refactor: replace markdown-it with markstream-vue for improved markdown rendering - Removed markdown-it and related configurations from ReadmeDialog.vue, VerticalHeader.vue, and ConversationPage.vue. - Integrated markstream-vue for enhanced markdown rendering capabilities, including support for KaTeX and Mermaid. - Updated components to utilize MarkdownRender for rendering markdown content, improving consistency and performance. * chore: remove deprecated markdown-it and marked dependencies from pnpm-lock.yaml - Cleaned up pnpm-lock.yaml by removing markdown-it and marked entries, streamlining the dependency list. - This change follows the recent integration of markstream-vue for improved markdown rendering capabilities. * chore: remove d3 dependency and update MessageList.vue for dark mode support - Removed d3 from package.json and commented out its import in LongTermMemory.vue to clean up unused dependencies. - Updated MessageList.vue to ensure consistent dark mode styling by passing the isDark prop to MarkdownRender components. * feat: add loading indicator for message retrieval in Chat and MessageList components - Introduced a loading overlay in Chat.vue and MessageList.vue to indicate when messages are being loaded. - Added a new `isLoadingMessages` prop to manage loading state and enhance user experience during message retrieval. - Updated styles to ensure the loading indicator is visually integrated with the existing UI. * feat: add provider configuration dialog to chat sidebar - Introduced a new `ProviderConfigDialog` component for managing provider settings. - Added a menu item in the `ConversationSidebar` to open the provider configuration dialog. - Updated English and Chinese localization files to include translations for the new provider configuration feature. * feat: update dashboard components and styles for improved chat experience - Replaced font in index.html to use 'Outfit' for a fresh look. - Changed icon in ConversationSidebar.vue to 'mdi-creation' for better representation. - Refactored MessageList.vue to streamline loading indicators and enhance styling consistency. - Updated localization files to change 'Provider Configuration' to 'AI Configuration' for clarity. - Introduced new styles for loading indicators and chat mode adjustments in FullLayout.vue. - Added functionality for toggling between bot and chat modes in the header. - Removed deprecated sidebar item for chat navigation. * feat: xmas easter egg * chore: remove pnpm lock file --- dashboard/index.html | 2 +- dashboard/package.json | 13 +- dashboard/src/assets/images/xmas-hat.png | Bin 0 -> 47486 bytes dashboard/src/components/chat/Chat.vue | 31 +- .../components/chat/ConversationSidebar.vue | 13 + dashboard/src/components/chat/MessageList.vue | 535 ++++++------------ .../components/chat/ProviderConfigDialog.vue | 375 ++++++++++++ .../src/components/shared/ReadmeDialog.vue | 38 +- .../src/i18n/locales/en-US/features/chat.json | 3 +- .../src/i18n/locales/zh-CN/features/chat.json | 3 +- dashboard/src/layouts/full/FullLayout.vue | 47 +- .../full/vertical-header/VerticalHeader.vue | 253 +++++++-- .../full/vertical-sidebar/sidebarItem.ts | 5 - dashboard/src/scss/layout/_container.scss | 6 +- dashboard/src/stores/customizer.ts | 7 +- dashboard/src/views/AboutPage.vue | 4 +- dashboard/src/views/ConversationPage.vue | 9 - dashboard/src/views/alkaid/LongTermMemory.vue | 2 +- 18 files changed, 884 insertions(+), 462 deletions(-) create mode 100644 dashboard/src/assets/images/xmas-hat.png create mode 100644 dashboard/src/components/chat/ProviderConfigDialog.vue diff --git a/dashboard/index.html b/dashboard/index.html index f71608a69..367bec27b 100644 --- a/dashboard/index.html +++ b/dashboard/index.html @@ -8,7 +8,7 @@
&R|gCMXImHVaH5CDK|LR450X!Ar|$=>Xmtk!Bx)% zV*F1iZG=v5_ofdQn|2&NII`kF@yW_HzW!SUgbI-YEXpeIK}IOHh=^}Cmip_%v(+)t zY^GAR6pcQow=4_{g$QPQ-W=aolY)aiSyCvNNXH(aFBAr`|BE2-2Oz%!7c1w9AH;V0 zPk rAM^A5pEU<^5HJB)qK*r!;Y)=d^=MZ6 zD1}HPrlLYBKyilJB!rc@9Y|GkBb2zt_;Q9y(9_l>a%M*uTUW3)be87n2{2#|+(64* zj8CJDrTKc2K*O2?B3{GW`)d-+AqpDn=mFPMoOB^+yK4fIJ{hRm5 HH{Vds|rw7gsj;+no3`J%HsScLD3awN-LM;o&Nq7rAS} z&xtgKr{{o0)tQuNT|yQUzCh8H5Fdk Y- zFaa#e7srm;n;cJM+@#8HjQ--UQvP4&a)6??$7svAnXRaUr$qX#v)uX-^|8g%jKs&r zNW U)9voYz<%L^&|;I(zfMw Yuy|@ zw(cBHI1wGtR$e?E2cQoYpBX3GbZo|Qn$kxL>V}DfJ;4VzLu@E0Cr~C O9~ej_hWnQdd0SSJ(lW{4rcU4(CV$FSF^ZRjOkJ7YvUD#vIxKI1buJiuc` zyc)C+mzYSj<;W^NxqJE^pNdg0q#Y{bdN!CdFu=HHS_xt$*O##U2LjM+Fj0J>D@><& z6RZ=4TmWEB VYPA{|~Fdcz}k1%pw>;?(t!NJWWV|hB|oC z0aH=QhdcdcWIHOOZ?VDCs>K7Th=8NYuC(^wOjruul6ROQ)JcBE?CWa4WC;E78e4aj zhW#A%-)hxBRL*W(pMNV#FdL%Q;vqsfWZ^jPB|s(ve<8A4F;_M)pW|s??JofhpD`si zcBLWZjt+~pI(2bM2s540u(vHF*3W4wC6x_#|7GUiJ*9Xe+ZPi5eJMBMmxD)iMU_l! z1x7MRPN~W+&Qq+z7Yg L7hWnn|iNK-(AihXc@Dg`PK{ 6t$ zx31Zzo0)ormg*4&(Eyidtjxecs#q_AX?Qv&!Uf9MuE|fwU`%-x_{gdboX%q1`1CK} zb%Wbmj2dfr%* ~moOfN?G!)6?7F+o6I1L+R;TKu&J&!6l=0+nKjVs$m#pa$A^`Dl@7X3YWgOY|6vK zg(swZ;|*FRmS?%rXDj=^TrZPN#w)Qzvzywk0x7Omk(d1*(qlL8+DrA${41IzlVgdc zik4h)$$c( DaImu2$n4xlQ?tyacccaTg*Xe`$iH{yjIYoZ=pF&$6MKk=jGA2FR z5h5a@?W{S6M9XE{{9JdV`Nr8EZz)Au>@!qnGp>&OHEl`L*mu56iiOe9FHYJzVx%(x zN)Va8DgI0GGa8OWCT)QXN~VIf^KYe_)BJgPJI81*vkgrAGboIjQ(lq@#9s)l0wXY? z*>lO~zR2j=B^3VYz4v$3?9T4}0$U$xUs#(I>7BY58fcE*H=ATf5km2q;<2@38d#ow zQ4lk9V`E@@P=G1l?fLgt6j8(G*}X4KRQQB1$;dr-i}T66mXf|V#rOFw-i<4sT@8M6 z9q7W+49gS=Qevv sdpZaQ{_ 8M%-|HpS4MTy@*JlJ)``2 zjnoJJ@--pXt9x7<+qL=nqKU^_6R)?cl4fEWm_ka7T?W=aI;0Zf8R~1mqRSnR@&tf? z$(T(GHNe4H`=n8^ZJE}_>n5*U;IEv%?LBzZANf+U5^`-2tlcM+u3{#3cys4M@~|4# zy%?rXJga2x*n%OYv-)93_<5VtNmiH2%j>5UfI}hF3jF_?q7i{XG4VKAj;r#-l2x zj5U&_+GptZ-DFFDb7iTIOlrZG|LUN=*hL{i>*rEahQbihT(M?T3uWbzD#Y|4Esl)( zUtYYS;$Wp-1qOe39+tBkp!K1bt$x(fwSe4zhzF5Hb1U#B!;>cZ=0tXx8%J>d7jWK7 zV{e*Rncu!54Awr!LUJt*;*JbRr-Oqu0w{{X`C}I+ErN7N0Zg=yTo!96O_osX4BXQ_ zf7sFI`)V^>O_tiMuX^C l=LLp7 zG3U>}&9z-%j5}o4iyp1eW$kK_l#5K~`}0=fwa=;?dng*eL`v4zDC|{!(Nv~NDG&dn zUeIi84s&xZaEmp54Qi^Mqj}K@B&Ye%q_4ZX7c+8pMAz`-l`!MumROQ`c4DIiq~5;e zp2rZF)YiS>`46{1B#6uH?zt>M+7e*Y-=Akb ncfngX0r56_pkU$^dp0oJey_BnX4_^p4v(G_M*6si6h2ngK_WdG7LJ zzi8cF5LBheVH tDe)8Ni>yrIrzWL3%vfWJOhPFfnyl;;iNmKOY|y0BbL7t z^|!SRt=PN%^=TYTesKd*4?ZPkxBk)YZWj0DnOPfb-RQBnk^j(@4j9V7xExBVt0DKo zMuNV%{e(QrM^YR68Jpu&mS&o-ZQ5{#6|fO)B1ZVzuXn+x5W_rG?pjf7U1fUuzW=cC z7?kqcw}VBPgWf|yA-75NmUV5b9u<8^OflSUBGlgZfJb3}`Eewpu~oym?MWu_^uXz% zat>YJ-{c6Cr|SGck(BO(M1xc;Xbw9Xg@!iY^VaSy8Ch_#*%*|#A6WJa9jVP2x13!{ z6yK(q<>xUY4{-iFJSt$IbUXJ@T*nI`@aCxoUwzv(!%0excp~FFZY8QrX;z5#Erke) zsCaUV!hska^Uj^`=k?hc#MAHKN(4ksbvW=v;t(Yzx-#eL+`IBVCJ}SNvb-jK$u!MQ z=UAwc+$?!dHk!+p8EHT~j(&(^>)z7PW&Ou*MnNeGi`X@tNNUID6NO`bjOpNj_ hno(9Yxcp-NER?xd2{HTI@G6vR@A}!GXYMZ }!p_SeES|$Hmzm z?4w-nQ$Ka$KrwV25lM93&gm%4m3~Kib5rqD&JN1JaKS`NdmHkvs9HW{TW{>T5pE5t zzV30`!~}EUl<`pp8>^9u11cf}wp~bQlHX8gm*(u*A1iUjQ)gUEdZAqfDs732yO(Sy z0CuB1DL^jXi)Al;8P^;CM@8Ql5pA76G=t@sBHrU|jLPHF7O>I|Z@3ViUh41n`!CNJ zprk>1o-RLre@J=x;cE4F=F6>T(Dn|CEahf#S8#;AQyf_LKJ0w|*UHUjn#v2PjwpeG zIAJxye_p^}god``5W$5Ix`HrRugP@^SJ@avT4?^jb`(EWL}sk2O25%kM*6;lx(hB@ zA<`HBSHg)3ud}l8mjVN^+ExI&9&6!jOw{>BGOyn)Xn8(lc @ zUxHWyN6Va*M^PQ#cZ@kXxn8Gm4hb8mpglvRAe|}mI8uAPsY9+%Tn_gPMt=RFgC8 o`XAmNn9ls~|>0+EA;#q+e#8drRfQ<;~seNxO%fnwNOf<#wT`6I^ zQv{0uTFZ$2Vfi({IsJ()wL1W|DVqC_5(0fXt@xJ7Hc0ZX#Bul^G4Hi?B>CR(nYg<1 z$x53ZJeM;5kM |>%P)Auprr7ol{ zVtlubL!QX?xs1@}f29(>*5mG;4C0#3G(C<;76QE?VIvhZTqu-8RNXT5cl)9fd}sgn z--xILfCWbtH0@tQY?q096%L2R&c;M2XJYH{UvfK}L;v{l>zFeC%0;=+{QeDa=C(Zf z+h6 -U4J}@eV<8OGodo4^$k>NMECYD2ZE urHp6cUlc@TvWT?(zv|ns0jP> zinTjVgjl)$C6XOeoEgf}x#LPPP#|z6Ht>Xr(2wAc3N-QJ@{*m@5ls4oTLNAMWSB-j zv4!;IOdk^-iFB4a;{h&>#fhNO_UuHBe}SH@4#1Rslo7)^2}90u(}vk3?gq+dUvl=T zDV1n 2-Y&w=!R7*;?TZB zjsHKS86}@#w+y+}a~!$9Wb|uZ9+}uU_Qe4mA>L-4^>ul#@&Ie|goNE8$uC8uO%X%s z{sRgM#0l<8G~=CzPYbuR=J!GpF?B%1#ojj`*4J*r+rM=e(8|CgIGYQ8GBHmOx0n<^ z?j+~z+zCreTnf_E!0f!u3(e0@=Vztg{D~bNPKd6m&`5Ul$ivFK^S+tl6|2Ct{YF?A z1EZLzu)v4A 0ikg6W>_Qk9{D~xZuV!N@e ztjO(i+A$P#Aajt)8(91JwQBLNI;Xd zuF!(QOi^z7O;lK{K`1@L64vS;?(Y8AuusII)CuW#*h~JkZ1nF6b&4zUl>czOOQnQE zT-^k>Ni>5O%25{Wgc4sOiNgz?;Ww$~0bA6X#kZ9$xbxIts`?ZN- -ou$}?u}0)YdBncl}>2a zg!pbTVy4Rpb4CR9Tm-t#VEXv_Ra7#1>=s6a1|^a4(NPySNy6X|71Me(e6XFFUHG(7Vai3e8*p=sW=I-;R_kWmxc mQBj{}sIMkVtQl3Fg=iuVD$l!Zj?^4$0j4l(0u z%KAy_ZB9(*hp_d?3vlz1ssecco5!c~-o4k&Dw2ocr%i9>pM9r|v5U16+TiVHRamQH z$E+|{S4AI=?6hHg7dSI#UQfemIcXok}|@W0U9^K7m9MOi~J7SZ3!3O^hy2k;2x8_3^>M3aVFP z!Qc$c&{*m~kG&PRl?MwX_tR ^&B- rLmCIDhqu0;;>uw5L-`&16ZDN{w10xAKx747T!GjL zXxN f@v!cVn=RX z =S q8@3kD# zQ6K lyn$^-x4>Q!PM zZ9|n odTvbMuzmpp)mw*eB813&{J`ZZ5FkiM|FuD20JrJMsnQ>_A3*%}yD5 zimJwF7O?U1;C3tRxNWz5D1_3Fzzhm6U^xtqB W0`Tqq1}_pV6~t`jl0Rkj@eTL>j#v gp1h#a?o*tk5qgDZYUjnhM2IxHKOaEmMU4k I$Die1I zCKMy7kS=gmgYJDxnrio?3DY1cIfy^+!`v%!R&3Hh>1-_nim$|_EAN&E2fu{73@RbnB!;Q!!XgX|zmYZ_l|r{X;xv*!vwm?OR$3yz_56v)JFRHu z^cEY21ATY<{L-ss?urSZm{tgu3KpLQ9p89ogcjtdbHl5_ O_S@g0P+f~ynP*({lk+LR5TUZv0W+?LIgplVvvpd`A0rn1Hgm4$?c*Wgq8;$l-h z#X|K~9NZDNCrL`=9xItldz(6uXeEk}^$-ohXD4*wF#gjmaktOq1vpWO2OlQ{6pwLZ zWHt(ll_htT$%q&65 ?nZoyz5RUSd(qYR_n+GnHcU7`E2(HQRYNbTo#*S`XD~AA zg$00E_i8@rz5ueyuGA$a#?X$Bt4P)CW~ScU5MoUDU>f;*q(KOA$KK2`n9q~w#e-)_ zp#cXvh%CjM&$Jwtmrf<~fn_L@+S=CUS&*mG;)H;>v)bW^JN(4%i8Ish#A~ct_s_kG zsGJ><8xhzc#S7=jurhQNWS~4XL-rU^>EQS{ScrWpBtBsETtm;;n5o3J<|SNkuf<`7 zh;yL?uhis-c)60Nrg(P16IwQxEQT0{rv!1eCi+SNo4M;YQMG-C`V1isPX>Uh^M g8;x`s3PO>8DjN{_g?u*JAC|xKBksO46G*xmt znwZG4mOgy)HkExPHo5OL23-NBxQ;2`EE87|QXt(uXazZdS7x)!q#~NlOl}1wv2hW~ zUh|p$#l%l+=#-MDb1E3b3!QIrw+njNj<^kIP8QDG0c)?TZHdLjLVlx&tyg}cgLha1 zD3Ru7bt >$~K&ixjf&EGBAh*(dYb6>25e!>oF=KGA*Ah zhVVE{5O6ypO_$9cWfL2fd}R{o@6l%o7WA*rf#2=zRkkMN=sIUO1KT{9R&- z-4Xy5%dSjp_BUTpialdOnnsk0_XTa!R={{!4J|1v*9Itob*x4=eKyL*ws>R)i5> zFmk-2FIYd`*l<}-AFcvxjpW4oT^)^mH9pQHeBCP(4~MW0x{u$@o=s`#AXi89vk66I zIvBMIN7X*I><$YE?7=O`jL3a#03tmH4NvXXXnwv;iBbY1AOqG}Atj31w(D)mGWJ6J z<68$np^SN@Qdf2~PS3Z+XUWBJ?Vaa`B+9QD0YBW6KlA4!L7%7_x{ADjrLMxDW5pXK zO$8CurUueuaa$qkAIlU}ayMv*x2@_|0y%LWd;WLov^L#|NjP6#u;lG)mFVj$QH@+; zoF%Ydi_?7iMw1zEWYwOZuc`Rr1%*@UZ|+w^-i|h_deh!WF|J5}!2EvNfHp))j|N^J zOeI8w|Ga>hiYze`QiJY~Nw~Tf1B`6!bOH2C1=@~IG?giVZ@s~wJi_{moe4Wj>)m%T zjg2Q)>#2dHgKQjIzzxU-|66%Us$3MN=th)3e6~~>@9$%_(P$Bd*>AV=5E5}3Xhx+Q zq7-qVJ$Q6z(DyjUY;WLvJ2vI!24#>Vvzu~yiYX%N`F@}s-nS>gk`mB4g1KZJpWOV| z%8jW}{Y%&rsGAdt8X80r-_qtX~@dSyn#DK_%PEf%dA3dz^Iin ;rhiCZp!&=Kr%ZV7)r;; zh^{FAeR$_w#X03SQNlJ&`W&)euMT1$9d)G+fGxuGpmy@TfBW9_4)-6AYVz=7++?4t z9BrVZ>Xmr_+ ?*hQ($zD$-1YU0y{ppYA$PW{ zs$i7`AS3>xToEI~n4bKAtBUiBjI4N>pmDFUo))i(cfL2{pL{R#N-p=de%#$S?>E(W zQ2H!|y;Ry$Cd|Lc{i8Xty^#1?kVPP5SX`heNBHF>U7|nW^yJH4!=cFbw*BIc+~kNm z8LIb<$1bF0zW(ypA~kQ)EFt7Q((>0->8kuRj$>uAK^z_bOLDuB5v+HgZcEYp`CQz| zH{i0p4o*()GTPxHD}Pm9{_z|~xtDUdi+>HUVeCmBTlOxVXjcr8K)EbkeG)q`Pu9mq zAxKRSfhJsfz)8ewv>433CGpd6yadbWmxWj(;B(KYIEZ{{geE*>__I87jpjDp*Z^37 zwa`Zr`5oDO88SIW&Y!T^o$(ON&=mnt;FkEty^w4E{m0uH8?2n^%<;LpKbyv$%cS2` zZ!xc$k %|L40OdOIM9dDB2h0R%NIkhxH0sC@u_rq zt|6MQ6IHp-gDrQTjdka4fFOywwvND^=1K0x8V{33RBYN9G9yr&lb`jADm6iR>hP-u z^G5fgE~;S6V9+j_Q$mDuJh*DDU+eP96H>KS%tE7Qw5E?88K(lKW1Zv|oD^jUoujUg zj>+L28=E8%px~{Qj0wtK-&RM@eKUrMEKMzhO>W+Ve}5fo@<;R`ii@(Z&*itv_bC3v zj!mcUhJJfrEKQ6IEes}q5%5-$+hWc4xVzinA4Qr~v9mG>oVtU%=dg{M#+_hwRbU~s zKqobQc35R=w>o!BN|mKBI{GaYYVU(f#$>x#T@!Ti&3q46 aXXE(Ix;l3{YnEE=>wZvY>T+jXhFL0{xlK4FFXq6m9D%S9$rriOtlYY= zs$)2Tl3V+xhgTa&72(7m{w&76lNvnKEy}4#V8c2(Ckg%r-UF=mW4Gk<+J)y?{*0t` zWX!%jafNg=*!+3L@!N-?kvVpEI{K#WNSu}bd#U&=LH{d1&(#od0>*bCu=dieEG%_p zKdnEqmsDAsE01uXlVjwlk&P{fGw6yKtzF_f)DIxxVJVdkWd=+G`Bdx`QZclQP{<^{ z@6AmweMVZk0-2K_K^!54Mfaj5YwA_HQEqr1FDpp{D}gfE$tn{#k|EyzmahHp0V9}) z{!F0Nl?T_eYJ6`>=<~_QOxYl%?ZsxN$g3L(l=2k+@P>NG|9lEOO| k|m?l{7TUPgKBvQ_xq?ZWcyMd7DFO ze<}CcoaRM=osfd%;v6C8s=Yu=b2s%|cdpXTsy0NoV=c0Y`Lmcu+_z%|naRk$;GO5D zzbA_uKhs@sO9te{6u!q&y83zU`S7Zs8N^D7f6YD)T3BrH-g_Ebkp28SPbC-S_)!5? z(mGowlZ5viz`1R|zTJyRE_l-`fT5)PC;DWyXx;PU)nVKhgorO3o+Q7tE~Gqi?15ME z+!$M$;}{797kKa9$0x1-R&p_x@$(xy{P=Hw^O^125BKKws!GDmybQk)4ev&1a-GU;XOsaITGqKQ=QW+EgF= zuI)K+dL&KO#^R9^E$}(Py;b0jWAo)!Q$_`u5Z`GVxRM P zqS#CB(n))iU_eH0Vvy%gjFHc-G8(T=gw>n6@kaV4v5W!+?5GO$dvGI*ueL3hU4fR# z;%PLSRtnkhI(4NvS<$oAeD~^!#xmFT^ZwvQzj6FY)J7G&YYM3l{k-P9d8n6VK0 bdCdy*%1Xp I+o;zDr_b5Lgea>e}0FO?NRO97jj5xjtkwYxyyfX`ihR`w%#BG+Tt?)NWe zeGbrZV_a4YIcZd`fpMYLd)48gj9+RJ|GFKliYterzKs~F3O73BW1g>u46thj(T8iK zk|qHFGPkvGUabAua1~{_v$D88#SZlCr36nCjkLP%#lREwu?^S$83i;o*`LM2=Q1os znu`8nJ{#CC2H M#|NLeZGZt zT5jjYgpkBE)#}PYc|mNVxTGWkLVTVmrGzG=3aDL692~Px6A;)RJ8ecWwwHoD2NGN~ z$6+Q%%Q>_MyBF)`=@AaGegrSW(4ZoqW0ElM{qf&+tG|cN<|^OJ&EkfK+FqT=rrxhb z-Za{$I*1w>8dmWk@et^GbLm~6K{J5Q85!IuG80|DubzuyIQ1+C%dRJ2_Q$8ni8D)+ zg{&QtWJ WOwVt^*`Mj8$XzV {v~Tm>A~kyCi(-!c%m66i6g>T0_cT9qu%)&u>WUl_6o(Y&O(RRK zIERc#p*kh-GUkas6)_$f(jL|X)2%V%HSAR=8nP@4zxG)Wjfjs85sySc-yZgFWP8bA z`OJsgi`!1WX1ikZM^iS=%F8*z@}`)tgM)$ks*0$5$}aLU_J@PLgJ9?s5&5-}5P+ O%?9R3_xtg^-O zlCQbNGscSeJw5vKR> $#K>S9|ZjX?++}hzb|^y&0IAO%d=w;>}46#Ibxqjm_BoE zt7VesTX_sH%$?r{X*_mkdXZ0diWrXexPGU)$?lw-c J;z?{G&xcHPl)?0w&|Jn{B7aOzz)3-oWcit*0sZ>or(dHB6Z zL}g5L_2iiZd7mr1qjp8^#zrgB4hh++FDq{?9NuZ3lH$hUD{%r5iiX|QO{`u;D7o;S zvW8jtSrGN|!Oc&=qFxsD?kRRa+YwKc$EP>V;rA8m>B&k(T;vf~;Y>w;5GU4&?ZJy1 zQPKCvQ&UE|a0f&XjfcQOR3a&{W?96_O2mGDyugkQ#vZQE;~w&G&XuWr9}ttVeU|@L zke&Wh%)wHSSG|qu!aZS_96@ }aDWU@WxM!NmsO_c$F{KlqT5@~%MT8lUG%pS zriVY+CoI-I<;o}-L$*en=hD*|M6LsFeLYzx%d}$@qU99#0=Cs@a^-HTvzbf25E0p> z@(GA!suyZZoG_kK2Txpr6|yA3%3+mW=zL|=$D0Zpn#aE$X5GbOBx59EWbMNih(B+= zRp{i!*gEgI5Z{neJ9L`O40=`3d!fB?TXkfWC E7`D*{!nv1XiYY>LS^k*r3Ht#3)YKBsA3 z>fkbr%9{6bZ%vM7nWwH7;!g1utikYg7w(@^Pi4^3Ef^6R82ZGlo)~Vq@gGXzF_Ww3 zW5r=Vqsuhdk%48bBXU0zAamO1{lbSrvktap4{c~dzEEPExJ%7@qf+FOo3Kq`y?8Sh zpP0x6ekU|IbC8lc_vfaD+nC~c(V9|ZKDLNgz7}yWM;Ax0r0$?@iO5_uX|+h>4d&s( z=V1i}>P+?f?efJhI!*4AoV-b%fukZSarKhzIKWbHkJ(3I8K(O|mSXE$cR!Zz&wxwb z#}YU0ryB%`;6_cSqoLi60dk_V|9JuKVl$H@v EEn0N(L%hcYYiJk#3@P44}Dv@~Q%SXBF-71(%r?f!PdRVDPQu_WV-AvZVk z4iUwA&te9sRw8m|2ghSz>2nfqJ1oYJ$j*tyM-U-NVG 8^@Sm#Pxf0hT$t^IKtzuiMX7j4tu?+f5jU)E^S6G7A)DPsxFKQlLt|1M z&s#j;gwZzrDfgM4)UBhBRMSCqg@pRMR84S(7ZTqwvZG=nXvx{bh@VFDi{MK5d<~(G z5Mk@$vnqJ&V^Ap6N|e|pm5+{rK0_D)z|||+o_?CnPSVzX=nDFR4>OEeK)Rq^)e2_J z6lig{y>Qhxi)Yt&!^_oTwwqVKP0@{jZbvu@ueA<=($nJK6URnWf3xfiAsocR^sCc_ z6LJynlb)Kp1l2oXE}t-3uUgA*^Y=Mo1jj?OS?g?0tg%InP2QLGU~GSxukN^72yV~G z!c)E{WNUbJEVEF*U?fuTH6`igc5Pc+T;h01_ES~#V)v7mBHZWA`Pt F&pz>JY-lwC1(ORVJBN9qu9Ww*#So_T>Do+K~Jm*ildH4 z8z%YXLfOG>L@rIL hL)6?!_m}dQFJS1(e*4mBTldP5fdFG=a~DsdR05NLsdRazyE* zQ;ekO#%?u^Pfj9A!5>*9q^WX)d#}Q~LQ>2;&ktN^ZOy2OBJH{v4xeube0}bEB(YVP zKZ+uP^JJ00vVc);g5e=L-JRHdw4v<+SL)byIoq~ITKFv=W{l1T59)E-Vp2j+yVSeZ zb5tq)(=%^p+T^x~=SW=#xJ^>moY`!St7Y5|sVhkYG}dE14aW}PV5y*~@!V7S4<;yV zhvU+3p+@>OVz+UEhI+%BKke6hiB>8MU7kZ$M6o(EQ};#iTO7KXnQKc_%E+s@ohn-x zm=%|tvwe#-Mpe RYqRxI7np^qF z#79Ck{X^kqE?38U&A{?W`D7CnvF2mR$`Vx1>rrg_n888sRL#nQX9P6bF-^B;JJYmm z2PsSy9z+m;s$F|f%Pl|#Zk0WP&N#y#Boqo*iY5queT|8}->QR`M^BvBu1$5lTcd9u z@Ef aj6mipq-5jm#SJmygW*H} z&kJ=e+HdXO-x~X+WvZB~3WR9;Tzo$A&A;C=t`5x }P2bnu)F|L5P-91T3qkb=6gF;~m2m)*EQ znUmFw=XPzHy3#_de;A3>59o(?rB*hAA=ZR;2g@UO-3wO|LEF*Tv|pIGG$|VpYl1_j zJcxPl6A4!-smwQ&>B zF)+J`#_Nj6gO()J$-+rvT)qnjM?)8VU9M*lCR{BXJVom{qKJ6%MT^l`R>_(aS1Qb7 zM?rWBFru+o {aS{z*?2Q}+>p9obF(NHq8;l^_Z4VItY@EUseyxF^j%cPNrD zY&jc2S4{`5Lo&T%dea>NzSlpwUbpyqBPd|FU>9DyY^A3&8d!%+1NLreY8tSanOj8E z)%mFPUxg>GrMWgG39@Y=r? ~&& zGSmiD3g+7A2nsQW#2k$!c#gdz&{oHk?dAZ>hKOf_jwk6ESB{v}Hba`ydAKZa*lW2S z0?}Yu!nVaCtNd-v*#SP-CF?PHBfZgi ;j(kaydE$Va1;MZKoHh<`w{qW}3tL&o5u$e_)L}2dE4)Aeq z2ONs{?je1f#d(8|J;bi^Jgz-_`^7#nC1p2>q)Cm Za*pB!3Q7@CV%o%y`b|>^BQmDOn`NkEr3m8lK{Y>qXHg5*((K=HjG8rl z2Dqw{S I2!&7hRflR;`Jd30>7Vz +#hMs!U}m-xA$p4)$@YWj0PcLZbQGEQ z;mFoz3g6m#ZMELQN&Jy|N1?J`(qwbj$@=W&+44fN$whc^9DGt(Sls_2l3hdE$>|Sj zZM)vFw>o3}ZJl`P*XZ`O&$AhreQq3 5$8Q+l=+MBh*SLCeC$t+D4D@5v8A6)L z4cgstrE;6perQlNu$=8g=&)k#;hnDXyI@jLxND*+)^g9=;&!=s)=g|N+8=~fSp0a$ z*y8 K@M%%C&ANH zpu)F*jGn-_OH;!K5JhWZt}5~=Q}oeCp=}Lyt>X-1bF7b2^>V*WOu6A$GAm&H j&O6dlkLeFw`hVR)7AAzZGW{KsV_Tcro&Rp}` za0fw9CXU(2PsN)ngI4lb*)!|y#D#@t9mi~?02_$)E>s<}kDtH)M_~ DqrfZkr_g6&gL-(p3>^j_@ P@`O#eCKrL^`ZcvbcvAsFZtTvv9Z I4gjY{T*IobOg`hHV zFX^_fz_VfLZu7fi&G-;d_c~gW7!Y5K*weNCuoa}uMS)fSvCr%)xRL=n4F~#jzk8U4 zPkkY>nOi?f%I{_-pa)!}AXguLL}fLWq}MKnZsTmoGu?JoeVmTHp+kYnpd2T2$L_6s zFIACArW$E~xn4>l%|M9?t;F3P|B7#f6u0@>SrNtC+|nN5tdE9q>;vxN;jU>K$+wad z1)8F-#R5hGWU5`ocpJWq0+OKMkK(efk8qa UjpV0cufz~7tglv zu~|+jCBUODnoCEBWcm74kPmMyLOoQ;)J;`IG%ztWO2M025eI(1afO)xbHD$`Jl)tE zqehMTE6>j(3Te~W@X?J4lr#89|4Rk5A-2LD?SVLbFvn2O(%f7%mx5v%pOr3GIw-uI zBsG0O7Fz`Ec4H7eOW*}==aGkZM#fG=yl^~FPLo}HUgMqkiLm0az$c=PliQ&gf)nuW znN+g8oV~+CDq~+*P=M7-*4PL^JAHNacT6Q%H~5~i8X7eAy3N~1agIt9=LkUgRmOJ7 z2;{1)q!c;ibu_(3B&kIPjVv$-es@;rgI(J_Jr22WcM>!4VxSm*_^=l}S2e?=46>H# zVrJ5GSKcJK iV=!1;7ll7D*S<{ungMn5Lz$ a9vKyk-01;s&s_+oxlH&Pot;!^UtLs5e=Nir%H4koS#QfwgnS>_}&`5j)UOCyv zXlEp)C?UJ;LU3wNvvSg@fu)du$KHyd{ hXOR<1>gL)Ks zUk#KHN~qO)xUGoF`JO)-rJ;T8d$}3<`YYES^f2?qIC>OlB{tlADb{JaaMkD>uF^g* zH)B@#J&0o9E!QJSMF#Zr6Ut;P@n~{i{bIa}j*mD|8k&1!(Ks){`dW)uTebaJQeNGK znr3lYToaFWl@9|jP#Ny?WvrPMi!~x?&ezdD(39>97Whz)ngKM#)j<4Yn2ot3ey*?l zY>TresX{_O1z6d0qp$a)C+{6p&Q%#~BI4^xd7o{gzHvhvJW?$rjxM942J-^8a|;8% zzR=gyP%0lp{raVXwyXOntx}H;A3lc!Rskq53+BkG-dMEV7rP}c U=_fK{xhfckWa&+D*F zjGn?3TtMbdbS}8dwCl28HM!NWevvxisB}slrq+pwd^LO&<=oI*XVj=xa&f@?f*~|9 zep#;}=}y^SNVFt3@cnnAnwsnY)RK}fOB@gGQGZd~8AMlWrN~F=%5mP|VYlIFC#HHr z+Zd0&?&XSNEYzB98fH)NT*;JJfjnrt{oHZXJ!mdtYz%KX2gyw#_%nUo|GWT&Q |XayzJ{xL&CMzG4}qPd(S6J5>QexS?H5?s=rQlu9CN>$IsspVGsYJQ=zUM13^g ztP*4#*jKebSpn0beJ;56r^25tNi#AQlkG5z67=D7^hVz2x%aAq;VP|%f+nszH^rJe zG_Z8@mu=}9m?DX}>uVQUuf;_jrpn3bFW?tEGd(CWFrhuUhuV- |N)K9`Wl|5R+Rs>BK!U%Y%-@#7i46-%@tqZxqOPpz^0?Zpkd(&zTXPWHVu<`CSrnz zyCohn^M%TJKl-9_ChS{3V~XyvDu@H4dT1jd1*NO1Ozg= i;dmT?de zB_u^^NNGVrLOP^7hVJeTDe0Cj>F(~9PU%J(M!GxRGta&E{opr$oS8Z2?El(pueEj) zXPlP2zzi|^Iyz?@m478;kpxhq`;e7p=ccZjxqf?&UVkNBMU0quJ!)bart@}+Ft~7L zTNV#b)jxl>b9&O!w-+mvAh2t*e9VU?VXxI#uXn`!Lua_NcJ&xeEcf^R(F5!F9*q zMEg{c)~88TpKV$qo&pAD*<^XeP2Lhq1?kxO+O*=iP_i3^Cpn?8{;?;%;T=ws?!d;A zH?v|`M{jmR9E1XL47G&L`b7eJRh65kr+9^2XE(BmLoEuy`hd!zpw70unqemxb^{Pf zpiI~qn!-?7*xt_fLKCFHMW#V@+Ib>0_BD~w4F*~LlApuaK95&M_P~5Nj8ft`rj@~C z)id~fi~e|?Z1P=}KHa;Y$Z cT zV8#6;1%SWwn;%Bo<~5IP2DwgTVc~$!L~tT;cV=B)9xHdh$o_D>JZCd1Mam5Fr`vDH z^ZuRe!sTv)`cGsgif7WgW?ugGBks0>rZFz~Q6b?^gC;v`Ftev-pqaHAh;QJQT_B zP;noS>#T}X-=>4Ns>FF-EJtF}c@z9-`4-g*BU|-(DoJq)0lz&2-%kp ia#j$sD%0P)AOlEGr;oc(RKqOcxi8 z#yFmIIrcq2l4#u@)U*pc@i2hVe? G_umte;gC{@5FC!ljp5U zwoc|!+3oD8H-GsK97fm45V>ERjN DOKdow-l^y4sm9W<5~ zf3M0I(L_PMhfZ}pD}E0gEAPBrhUkAdV-(dgGc`h2B2^bss z(_&%<8iZxTB b)=B4N;>9`@g_i3s`k A{kxk+cT<;ku S`18+_iIg;@|f(a-p>D-kMi)>EL6OOiQM8{f&eAnhLC+jtC8sFdQMa`vx z^qknUm2DPg7d*er8v1VAeqjuJ_Z4N^jJxO~Q~k(r-v!s5Y3Ou0eXXn 7 zuOR)5!E5FDVyei(oK{3^J~oK^B%n2ybd|$Ih1d&$ v6$&F$ znnHmN1McaFazgF|*H0}9-kN>ti{?lcAKVaD=t%ACh6ilmoKAM6=>~m zo&m4sF->>b_BMA0ORdmmD7qji2>FE21sac|Bv0}SrksO(N_5*`BaW*z5RqOm7=)n| zCe@7}c4!tXS2t+ef+RCInEa*pP`fN7L_KMO!q>>1hv#SyS&cBLRBPj?M1WjOVQ4)_ za*MX7Y%1TuWaGBhm9b3V`mbcrF9$Ry-}#8ph__Xg>m`v$17l-$QvlDh(cgATXU$=- zl?NzOn=#j5^5W8Lhw8XusP}4)kemV-2XZ2w-qdrY)(_2)xpgTG-R{JJKb^snJZx-m zJ^7!3K{x!Rrg>^JCh!$arR%J-V$pfL0@1aCsG7_9n=LrFL;Cfd >(;Xp$iqzI!Y6#PO FCZzV| zVhzhx1E;QK8^t9{A|7p8kl+}|&%2b%OQdA&<7iiJo};A#fuyu{k3QxC{$H04DaPM{ zR} h{ z@5q5JmbAFEqJUnw;;FjO;k*;PSt>pB3AbH#%gTHmjz6RZMi~N0?S)9K#s>cAq(-N< zygSAd_&FNzDYXXp)aQ^fb{WSO4MGHq;)rN>%^Z+L|ITQUT(gOwZr$8l3^9?&wlj$h zX8z^{s;dX_OpOfQb|*9-f R=iS(hY`oI&R z-t6??1;I{jaQ$sUZxQL+jE7OmJY%}N*`+YoE%zyyR(U#%ht-v!899v$vN*%mxO&<@ z+(?&3kdLVmgU*`-uT-n=c>1;N5HAnrqVzX6?cCP)%(r;xyn8lzaB;S#vLC(=RTRfi zI$v2zxiNtSr80*$Pe&KEeL8^Tl$E$W_6=0Ka^ZxOA43HF2S5Y N2F?4qJP3lkZlQ(0F!oIKu|n J12fA>DFpAYvF$IqN^C1YbhK1E_(~oh?Fp;dL;5v{ z{E&kk-^Q?8ZB#&bP!4 {qQu8lZ3x621( )gMC>=V>7i+Pg$JVs-i5m z>)5#|xEH+)#Ws r$RfRc<_59&@9+UHPL<;gBHn-YbZQ;%uatzgFGTu#F=;eI3@f}Jl5T!16ROKA z!BSyA`^^@Hg--MHz*`TU@8+NGWBr!DlFY|wsHG_2+(c@q?K(1=>WSMo2ZEodD$6PC z$=sc2EoW$@C?@D?zkzd)Jnts~oB34c{ZY NG)^xtA-${V%{*zp@0hOrQ+q)R0^rs42 zIk9MDt8&$eo>+07)K0<9m#rMw*IUmL<&VP7SDlAA8E!3?v8zHqZ7Li(lpU5f~U3u=KyC;xl zdq^#!n*k*I0Q1t^pH-hH7xho b|e{GRmq3~zYS$)bDs)xWpGg7dTVxHV5P-7uGGLgvt-Yc$= zmQK7IN%Ty5>X+i- m&Bf5+^Wf`N&nTs3%+EMG_w4Aa`%r4Z5T|bi#wa{>A8aUe zh)>w3vJoUTIJ#I~F7D(Ah%5Zy%Lm5gObddz=Z#MJ5n*9@Zd&LsnHt1cTTx#f2>4J_ zY_q-nL%@^d>M69U!0kb3Fw@XsMR!@Im(-H;E}A|a>2Gm*@QNU5Blt!DlOtQz2}8ZB zZ18weQYzc+l8ue-fmczck^;C&0?TOknlF3Q-l5CG>2!Lcc-6$3(MdeEA&5uYrgKJh zDgYqO9%Xo vgK&cL@|y-J?jNp5YBs*r@Tc z?XEN(ZSnLtJ2MS3c>J$$1EG@=>kuzK6cqsFTr`J;Il)Lx-BjZ6U<*&kI1|v~!+U1S z8KVI$5*~<|u}D)eeMiM>&Mx4F19LRASyvwQrqF>IXZ(vC%n$ci^)Y1rKC-%X3=Gnp zh(D1tpr(3Qf2Z3uI3&1kbVEa;&?_JcEhOLz?pgpNIQ~6Zhj*c?WAQKaYm@($iB!6- z{3cmuTnrD!eb%>;*R!w2s6;^^&QO!n65)gq_dH6`Rg4SO;t<`Re`dF$og4bZOjQW} z4np;u38E!q$W}eDI@1f1-$x_*Mx)lt{hya;jrlvZrU%1+kzD}PD^y;puWu}O-3v@E zw_H@Km+q&|OIc6{40Wcw@V1T{&*{pP!(|sOZ(3hjhbfGUqr*+Z**IzJ3WYvM0cj01 zPNf;=+=JP}(f5ft+T7}!&+bSwzE+@^rYpqh+c(mnDKj@Fm+84Fjs<9~wMG$rnZfNW zHj=tvC#y6dc676CvBo+lllqBrzvDFahsi7?%D(&(`3A5* $XCNE(_ErD|0WH089>Y~NHx|5qL* zKO0y`=XvEPC6S0>WhKge-tYO9`R)XT{vtUy3zq?`0;i0TyxhlMVZQnlpZneyAdScW zJwI01=qp6V-Syql B6)SsXIeF9J{H$~DQm9B&d#@2@1 zZwzD#7&PqJY9vQc5D@zRtG@VO ze$FvZdE=r(3&0ATv&Htw$@i< pAo-ty~OS{QTrMCI->n>5ESLR2#GhWf*R+ zDhs)ehUor1a37IInv3+CpYD!l2d;gaB{8U0SBm*X55Az33$*S!Vccs~Wp9GLPr=!? zeW;%!-+H-(WxIxFZQ}Yqg7B&bEBtJf@gOi50aM(kz`hYfEAUZ VY8IYLEEz_8AoC;}^0P^eP?O-wAfv~XN$ z&XvK6^2f{<(py#-7>Kv}!ASBsFtYVV-#qHb+%XHOZA@3Cl9VY?B{2@;PjW!Vxvt7g zY4tV*WLy(uR9Dv{DK;Zu%GMCB`>Q~zW?V1DA=}(s1u^G4%@h}y&@csHV$_l8Lv*3L zzpHBU(i9b7+4si c>5ODG=3&Un;_NULix)L32(uc8V@0{J|R>{j0`@Xub{Yzd*)J*>H; z|JHLdLs9nNF?@xZ5=RFX6!xLU-i9t&w7QRa`E-<7g_?RvX)aG leyCar8@DNQ8Qll`I4dgb0$3fL*y>X-_Xi zAmf6ilge%_E-_R!2(^z}3+5^+ZuY4$Z)7y7keZQ}{QR&u4~nej$`g(wQMiSfN!P&e zaKC29>5qHfcmJ@bij_Nu(T#j-famP-YYfhidmbYM<0FVCy1XR&H%Iv=Iipv(gn6{z ziUR6nc7OZCQ3t4{`*gFud4e8|cVQhR*nO!RcjsEe_`pimX@RHB=}b?=ZcEzh0`obR ze^8kj;PsZe?K;e^TaqXet?BA|y1_u`4-I>Zv1XJhQEU<1g7j9g<|f|EIzZ$+eR%Be zEMVHF1EGAeEwB~NT-~U~I7xjWruNLK2YTDML$HBjM O&r7TIcdm{ElY|nM?JS^7~J!eaDU)9I8;}^CeMcS z3{qj*X66WiRbu4^1q9b*K?Tp(9gYOTD%ZT817>>BmsZZWkM&j`P7RK|-Ki`5eZ0W5 z`}-j|ssxOCnzH##i>#w0tJG(EVlwov@etAn+aSI;j2^k#5Z(76>ZkkF_98-eV%ry- zIdy7pvY-d;c19EK!qt0kbD+D!z~B=bEMZ~(v8DRQ4b5-4>0L1*#${oXIp_U^!+uVC zQ!s`tY3aY<7ks@U5FkDk-kqj7-5 RzrG0P-j5} zT$LK&$ZTzs5>|0#qAqGf04 G}4%OZuNN{z4n zu#_#W^>(bqa0q7Vfq)Kx>c8`GAC^M{MC7ddu`aZ5e0EK^Cb3_xt!vfnw@zwHX1KSK z@hQMsH+z3pTwHsuL{rx#&Pr`CMRiDQF^#4ICg|~7-d}47A-qz8s!RNJ52+4pgY@_q zW5R&!FIL!J4>La0KX=-|_|Ac}+VxYFSf3%=KG)A!kfaZule4l)OrUJb&WC(XkD$30 z_DW(&GiOLAX6frMIU*c-A;Ti+>MP#JJ_&%|77t`5Ml6o^_2k8&_oR4&mU>W&f$O1Q zdr`>1qNLF9(N7Fr`R(%3OhV++pGq(t%GB)O9hpC)GfcHR86@_OKap+0VJ2xa*{MGf zRoakCN!jYKKhT0ukcht}s(m+0`@Ls=$IKLD?|eXdxI_3_SxDlm9<`iGgTvnvf(qP* zLO$1z+4`-?8XAf=(DP)Ut69B6X`eC$n|Rm4M?(i%?(c9K}&u^1pGB-yhyo{f*63 z9Xb3zBLR)-Ng0x@IMFzLfx+X&Zv5Oj9z0JH9AMbl!VeyAKunNlT_5uG4nx;h`Gtck zAujv6G<_w-51ha3KNnw$WqL*tJ8o}AP3i4s$X4OvKmj_f_9I`^>*8WENDNM6Ut)~9 zluy6*>80x7#K!eA$y1W>5@y$(d~e^=MZb(21WZ7>W{a_{+d&MXqYl~|XA?N1fTRe= z5Fz(8*vQWD+)@zPtp@-BsdbcEiwf;&xOiJwe*_E%R`V&B#?3{~=R3X!yGLpZjGG#@ zvq BqT+n2q;GN>g73TJXYF8OfD(2yw-pZG`AadVd}) M x;ra$m)&ZXygJy5yiap3AsAky-VJ8>osJKk&$l7%sq?r$=#?V+%8z zLp5>YVI$*oUWgVf6Z@Yl9K5_jte1Pz`%wHh6~(5<7zG)~)ZXZxZ}ci@b$u2);U0uj zP^FC3D)HD;LmPq{$S;|y3@T B$8ip)_DD87B#H^y+0gQJaD@t;tf=ld$s|3}o z6pPO`GV6vu?U1`u;(gWqw#b3tNPUl{Za`bteJ$bl%+9F!ZDyLN_Fd6bur|%u)b; z0oVHL)%y6oMt^akMx%@!@E3w1ba_M7xP1=FV6*0Uv#0SYp`fx91MG8FGWc!ZA<*Pm zM5YJ)x=PDeC@=qy3xKNAuJ{vZebkq*MOM=?9Cd6l?Y?5!5Qq2)eUpg5265-8Zugw) znC;dme6WrB#o>Oae)uZTtY6~IogdIbxV_m_eQ+N)7G2C9k+OfjqnnwTey}dI^!M>Z zQG*(u@?S$4@vKC9pu!2B6%%r >o% zezbVOU;<>{vcbZFw16auL-?PWasA3l-7gJ=Ep|n*Ej7e{!FL7WI61ZN7u2exA}zYO z*u#NR&gah`o_ag(qtDcl4@5huE4{osUTauot0mK^0=Xl^?^*tROc7C_z^JSq*bv*_ z-Q9`t5X _YHX3-Y(Sq z;2YoI^|kDA9jTac_dSJfG9WWS0GHBN1ELL6h!^(u;rx2kK&X!j4&Ddy&M8mBtcL7H z(J-WiXZ>QbMZj#~@?F4}-5~B+KeKfrrIQ3y^7oUPZhV(I7BuW)zZ9yp=PZdW88(YS zE-2DDL^iAph3w-7?g>_je+865LxG)>4DN`nl=%t{v=$bL>va^6H4dN)opoqx+Q&p2 z6+~I2*E&*fOPL)_CO4=W|L7ro=F5OmIl!eqPAXZh)oAANo`H#;^yq5Bw)&ffHj|2z zxtM2Lg~iXD41&8#6!y_Hc};prAYq>38RY>|d7~7hKvy-BpNdgGzL)&Dh?QC_TkVaI zy)b6uUI;a8{Cq4Y>Be>Vb~N_qlcuKB_N5ccQp>hFljAF!lCr#mP g$@VBIo)?-~{JulKtdW{<6IN*YD+N5J uL=?||uJPzZejq2QMwkYEWZX0x54 z9~sW8V_EX}?7Mhh%R=m-3>9z+%u3DK4mE8LjeL^l= 09w5JHi%X|9>WQWW?KV$yxMUNDX1LiB?lpA3nz6=a#P^ zE8S O zhZ`E*L|Dzhg)4lh(GYe{{UWQ}LMc@5~>maxLWP2L8+GxI@F|H(BxGhO1h5 zklRBF%T zXUaQQ6d>MKJ^V@OL_cHCz)@dXK8x2?dg`vOt)?qkC?vOTA{?;WCYw8RlGNEulNS)f z?+3C_Fg8vG!s+wPaDU?;DvkUB+$B6zCGDczk4T!pk86tjrt!}FKcSP1xcHVW>rFu` zhtThKzM9tMhFlpv<@n&z$_7!>H-#K;bhZ?xV9K~hE_{vyBaT6Vfz$6$z*l!=gc_ rhJ?v7SNgxXo`%03y`J;XK@)H kc`&|&nT?4m5q%_g@ra%E8!h)81D0H zRLim#rV13F`XVS4IWqGoL|A?4`XloINzYtNm{0}4hHk@|-Fo(LGP-Q0jLa_`aQH(@ zTbQjq{9?l02)_oP-iqIbo-3FNW6c+I5@Y~HYh&-Fg2eDg+=jm?#~lS3f8E0*92^FP zb@+~B>A_^t{7RPea6O#knpuIoqvo$|j0a%QN*DUN=naR_KgL?k^T$zLYawEt-5;GB zbKcyft=#q)@~JZruDgbl6iD4td?zm=E;m}h^INXshPAo`dHQ*gVcw@C74Lfn NWOvn#I*-UHZhMx&P-XZvswrhQbQ`AfF1lB^G*LQf1f3B8OjuFfzctbnc*{#j z%-{MIn2ZlHR#Ccw1-0#C!MGX$ cfYUSs&n2Tx9ZfR1%&oP8x zuz+ZSh$VL45J|vO$pKBu&zTQ}p$XVqQ%t?RO1>RN?NFp*O&V%e_(*OjWVhqBbcEMT zbyv~!!M~;^Wv?_!Bvb@GWLBuIv|Wqp=30Xsd&N}l;q^*>Z HR_FB=4xJ;0uB!(Q?DrA3yd;@hblYaXTzfB<@8q7moTz_T4 zrxnv30Hg_KCZ~9{+H>(y lXYU4p7m$a;G`q zjTwUQ>|V^f;+Su^o0Y=lg(W%kj&BoYXU$ERvR|f-fB0 F>mSdrM#l$NcKLfh#d2L7h^uHQ1a*x9 zBZ`?kN~Ob74C|k*lGS}cyKX^RNjs3Us<=WKsNg^c;2g7XS*aQngbpz7Jr5_h2UR_Z zps5-68qt-!v 5i`oZwZ&^j`8mNZ8B zWwa6V6#3AygfKzP$)kp5j*b{okfMt%ET(o~p1?PH>GLWUZl7pDupxK3$;p6`ncF zIC3-eafD|I(DJ0`FbpR|i*?J@WgHEx3ug9$;hQcZn{V_(EtcwgjRJCf7C0I2aH2~I zDrONbY%?eF$E2jes~m{I zR`dL;Qop_dP<6 |2Xw!zqP5&LBDU7b0YS@Z*F^qrbz+terCpn w-6d?P|lh2A^`{AxcYPB 9hwsK?`iFc zS$;robT(_x!kA2-N-7lWoY@Bnp#&UpNx1Joht1A;sK+f)SKLpo)f+KfZ$g0PGMN4! zqanfis1eUqarKWq$1rWo!_HB&=zpi*E@)d5zxB-gCG+jA)!*CW{p}2?4&>9&ogw~L z(6D;NP*lS}jl^eKOUzpzwC&+dmx1iN^A0v!fS$&o56&ZU%Z2~=9UUSRlES#L$T~a! zK3CJxew6Kp;Y_Gp)Q eP3SwYT@`6nS9LHX+y8AWP?TqP-PX5%3MB zXHCf+psIWxq@Dt11x%OoHhl1(XxV+WsoL;0(ksl35k=$5#-W9*^&VJ$vWUc}bIZyt zq>pR{1>tpYr+#EvcFt;Fzyl>2bdgVa;L84q{c9R-+dX4E9!|)BK4}bjO6NMBCVzpZ z_g5zwX-Z&-B98l6YoVQn@Fw3z9O;U65p>)D0NZ#jQS^OV**hpF;rU j#F%)iseqWqMh zXo{IRnlRGG^Q(UxaTtAaI4kRbTgn?3BT73oco~f`O4>V)?xCUm5j%fr$*`Fl`>L z6Mf(3>WKIB`ktPd7}a?)5m+lC32cIJjvHzY80i*;YMQ-5IHKiwB6-fd!qsZ{sr5u0 zO`kDvrnX}dJX){GSW=RA09Xc2&HIzdRV?02{o+pf#=S{DH?D76gA7*EtwM}lKB~Y( zO7We0DCv5)S*1(o$!<-^@CYL>UTjap7~0T^3E=N}_r>Ex_bjCJXaz-!K4Ghq%tG1> z zb+^ 1UFYGFgfbT&TD0maWs z9<`|^i#;=UA9&Ka-47SJEaBb_4CK(x6qs{jO5iDorjE^}VdVd~0FX9x5A R@c)09zfy#qP+~$u8RF2RpH{? zmoJ^*HXj<1V95sp+%w_k3NmAf^X)%=g;^$_s#V7SZ93*vzZm0I(pLKx+;_?d@J6EG z2ZwF42iTXp>S6fq5pcYS%0oYyg_Ah5U1Gw6rMVZX`)N+i|KPOTb@Xw<`3uju?k+9= zQ5S_VY!Ct|hLUgZ)r>2T4Q*a~uf_0Xljq&d=EbH(g*-rfRy#w~ YD<=*}Qp4T?ahTuh!3*|~rDGNr(=kaVxW930 A1G}Bd2x^AeotTj zy+<*7{~r;T_2L-)MaW8kv^lWcE`EAi&RK->^b39K3=IxVo^k*5Z29!y$12Kd6n`mQ z=ABifHomaA{hth%hLD52x*FqKW6#w_Q_Pvou)u3zl~MG!&UMF0 !*BZ(>`84MMUHl)To-K0$<6H=7PdTzqvI1?YiPL z#H-Frr}uBGHTtJ;=Xju|&f&s1qdfdY!kCPc1qHtG2EKPADBYucTV%F)gDk}GaFd0x zH%dY}N0l;ndbxOUG4I}1fEO18p~SHF?fpCBxPMj6GKzlU&RxB&@b~WWV!cql7O?mh zmP<6>Uz_r~eGmY<63%W%@k#{!@?`I=H8+C(+1=faal|`nyQTeZP%%`b^k*G26=!1k zeQz(0$2C7MCMb&<1J{?$^Y+YL>49Q7EyPkhKp`Pf>^PE8oDSFm2ILeu{z89c3cToR zSiv@{>5Lz~rl4`{(_4hm1NHOAHx(n#G^zE oa1dx`B!n$p cZg+FXXg}+-8gY_!fd0W99>(WSstI@95zun z<_G`IBk*sk%K6|6294?}&jD8Hr%SyBv2)%J9FaS%4`*Xd)h9;a48Rr{Og;`M8k)DV zf?%CfGJtaK%kbSFvi(Frf@{r;2^DUyQjN#ynV>5pP%g3$E My;)u495g@U?G=u z>VKHjDrbZ7dB3WdBh@$>6r4Yh SQa%xtts(mK-(;v8#ozjo+@%~!^za=rfJq&0h_}T?%@g=HV )ALyX^r& zl^?G!zbm-YS-*2w!p6ovUU_*d3{1Ct*g;{;hK(z-S+b8ttz%++tLRUw4A5;OphjJE z0nA#lO-DTSo3cq$eUnZU$HSR0Mgf;~UuO)cNPyCqES{(wMM-UbLN#e60M;N0YJOo( zobUS{CWI5(WIK_>*{L(*JN0K{YidYDVAnVg>RUQgHyRslv%}jWBJE~`Uhca@iwUvh zviRy1D7_mmFkmqWqJW&M(q^qCes@q^>1Wh86}z6`Qu8P{r&O3J(GfBcZ)O~$P;>5J ze+IG*c~y)IEJ}Nb@Nou(G5k8P{~G*l_JixFAD*-&L$d3;$v=Sa!}Y~?p#R 8n+6aTK6h4DZ>)4NvvQ7UJWT zc4rv*w?tg}Dz;8XQe~7Xo^hCPMY#~l5OFzVq#LXo^zMQAwjY9S9G}_d?|_TjSlP)y zMASmw${MnJgFr$$@NdyfKuE6jI(lYxgUmu4P=PV|4*)6@?vPS~U|Llp#O _wP@i#>P_yzDwnNr%$~fXvKEqMXs3n#I0VPHg zi8)hcqgg% AE~GR6tUL{ca2rNn_&O$|C>}v1 z==a0l@ggF%*b}AigmcRntJRe3E`}nGx_0U RPuT5 QXi)t?z0~^oi~Dx*IE#BPS{X;%--Y+7>@#N{0I2dBOix~kza!kh zjr3|YY;KiIL)&oXXnsBQx8AJ7ANiwZC*T#%RHhWc_PttZnKGiU9^)FG1i+;@%IVrQ zFd02lw_WofY6h=x(~1MF$`k4GjoqWxZc>tyD}y+)THuR|P$SFB_gpmG9+KhRc6fhn zU9z_O4ZG0Q@79AZwA{Ijp3lPQu}AqqDS4k(P-^#QBN&4QxaNU7ZDmFytU`>Vq6(EU zJjIG8Y%9Ln!xQI-UtCi*zk-cOrFUsv4?_>IK;9UYzdH4Y`%R3j%1+&pV$Hn#uhn^v zKrIh|v~mm{! BZi{)B$O(QiOn z76%aj%3S5FS<`S9jT&fp6WU07PJ$_Qp}xHgS5J#|PX8F^MsET>zdSyVX6QJfcER#u zai%}*$pt7mLs)|n;wQlV4#<-LLrBH|mp?fa7Z;k^U~?TppDrt5620AZjfyIuDne;? z MBE)2dnn*;Kl75@dn5FvvK!B2lz^%8LqZ`4^-Yt5c*qMRjL Y%!@Zvq43OIkd z=8Fl)euPl>vnTuXA=Mv^` ` zOngP!$hE;fhhW^Pq?oiv-Y5Qke#1xq>-r>aqsNEai+{kdpGn7C8c^V~FrrG+(Y! w?iC`^O$E1d AW__y* zZ!;TU0&S?Ivqx~~3eh@3Cn(MJqIw)5z;bT-(sK6=6fVm({*5_lZpn@uHN(--K>-&% zk#9)t=ZQMvRuMMz_)*=H;Zi6EsaS9W!|1^~2lxi%d2L zN(irk9!+IrE`=Xh*tLZP#naR^i&oZDly-1f;jP+4 znOL iQ-o&a0Y+X|ValuSG5HL#Qjdp766~T=PNJ&f;;=xn?D6B%`uM9LT z|8Uy`x6D7d q@ORoXaM@;FQ5s)If3J)Nyux8(OYj#)c8Y4Q$au(=MWnjFL21X z1)EU`E}2w+?9)cLHD(EK0#23qO<+>2iweS|u56qEVkb;aEdD`TpKzeVY-GBLIz{=} zKX%&ALaoNelKzhikTnG!?awp&x0HK{vi6l2^LW06N%+kvBDiAJ^z_wdkZPa+fSvlT z6^K0$eP@1uTWC+o<;+N2&uwC3W=4fSc9ue =^sG+8W+7 XVgRoXWWlx zGpZNcpZ|>K2cQ @o-c0^(0b0i=P68)XQL(go DDRC=62o?c=Duv8o=vWK7;MeeiYY=wR3x((hnr zP~S?8bL=(AxXpL^*_)jlN(CK3ehuF C2w$xzuC;3}xlz3%#AqBPmH<1J?;ACbK7mv>RU zckUa)DbIT)N|kOkQW6A_qCdHW;L_C_GN_okrePBuof$$is!J&S!-EB+m+0~`E}&e1 zSZ?)qHpsi#%sMd0f!fH}o %O6ZG3^f`tbuPfjlQQ@^;)A> zZ)5$5s5{7sg6*SVnGR3pDTOgvBa08;Q=%dJwqbTkr 941#MwvvAIp-?}k;@24IJ-N%qp{SEThCa$Pn_Kmb?)21332UV6hg)0>+MCbYhw zw9Jt$ZJ-F<2<-2S<-u{c3b4Lf85>7HjG$Emkd`wbcr~9CN-|~vt2Y_;$z2W^M*ff! zzgYeCEy3mh$3Mk+f-YNvbx2m!ib1U6Bo+4 oTj~me!pNr?KtJeLwy=K6Crd;b&D7ttu&-tA!1{65V21ufn0foV PIOJvQ{c>~8c!YVw#>q=YAZnG*A_WCS1;}z=_^GO@QL z*%A2pZ&n>cS!3{%al_aM{WRcb0rtbh_yFm?<0Atjn%IYqkv)3Hklp{iKNiMgxlHNb zCpma6`s=NFUT(N`02(hbP$J*mM R%iGM-^=~`^lfL z*6G&%e=6;I5Fm_+&057{Nu_}z1Iy;O4f@8bfV9O^BCgEDp%k)xz}=@Vuldc$scw24 ztBdXC1E5sAN#}ioT-%8oWA>44>CpMy@ry45R00c>f@y1N996#~H9RtMyyeL2XR~b* zJ-1fUB%@*Q$XW_SQQa|qP1_ksf`p0O56Yl5{Lg$h(s#gorHcG1?liHq1J%3cWH+1a z4zVe_J^du-m?^{Ig7yQb1XpmMiNya|n!%^y6L1@kvD~_CBGmvLm?S?qf#f?dznnER zH0khRs_j3ev*eU16R8)06UI9Nx}zflnFq=xh6)NAwZ&hmIQ|>|z!j-=N7E?R-z`E* zDPgplS_)FiEg|%{%7kqj3v1Uq9`jdp@#6WMCHu2woO(3^v;d(*K?*8)UkRz^ebFd( zVsuK5dB`8Q^ZS|o8=UcJci(xxarwrAmUb=st!9ltOE9W0we2a;vfE)m0fx7}bYO!T z)thcfl)f|xL##scre)n1rNK*yq{xVlD5k4=~s5BM_U*uFS|4yDR7aD)65D@hMt zf9k+PuU@JhqFcw~j)u0$`Ue|~sEIT8EwO^Sa+#|7BJh9qPhi+sD4ocd5N>E!Yi?bh zI%`D-*CZ8RnO`-Srw|KQs0bO3Cd(M6&M>FAdk)$~1NTS;b;&DxsjaB*Q(p>Nzr#oK zuhmxV{PlRalkf>3NxFBs{aksx9n@4){EEVMeIT0k1=;`W=_|vc>e{wpM5R<3L~ ykY8|elGrKCjZ?(UNO*7&^l=TDDgHaph3))i-z0 (Gx740SzD7z0@W7_2g?`VaPm1HpFynA ztR0}{zf2+Is2f~#jWYai$iXn!7xVSN+)( V*t4$td7Lrh!dwMa$-;_l^Iw>j4Y2G`T!4zW;~oqMW4M&w}>^l!c%y z2Uo_=TTfkgv2%ExZY-Zqn;TZwTmRhqt(v-oqrQ9Sdxd1tia({Mhi`~AVsBB?Tzg0b zWBvfKbLFRhOHNw?y~At)!L90@BjTHl{S$I(RHHIFNHn`}q)Tr*A^{($MM~D;4qXvGJd? zWcYPoJ2= rvndTS-c=Zd4T?j{X!yd8SaN;HR4p+Gl$Ws!FP` zAY?v^2OZskA#{h2eH??H R{2d>tC?f128pjMZ`}S(LShrdgS?`{X8dY+u>~OryaL_bj=^ts zN?(#+dX1Gqy&}Ay-p5Z|&$K^{9}e_MM+@mhH`;l>x_YzBH5fdaz(Z;v%zrq>vr>Io z{4H6f@Yn9v82v@VLNBBLf|#4Bv|2WW{rTe8H{$9*Um$Jht*S-e>v-jzbeUVW(Y=cL zya(@Uu~4y)u{Dt)Q@`IG=Etc3r%Jpi^5|CdDV}K72{nx|zgG*?Uj1x48=1xJ^#uEX z NskEyf zpc`nNTDzTU_phJ&1cTu1pYy$d3Z xI^0K8r2WF@~cc+Al zI2pJ#BkL1-mI<>}`$G>cP9q644lcsG29fDjw=Z^wZ-guw+p>HxD{X?(rm~#71K~Kl zEBAN9uMXQhVG2uC8t#7^vwxQGMEv X>9pC!E(x6nj5b-YZ*%ZqE%)vBO}$S zG{i&Jr?)9a9vmW%_U?6U_uVTk1Rtqze4e13d4KpuagJ^0?*<|-q_?|uPyU-8GSVJv zE$Tx@C2)Q`Q0!c&kf#a*$;OS;4P^xYg`{$oH&UW#%Yk?oj{T^>r 4ceq!eS^)FRO?hx&*HgnGt0*+1JXi -2gxS9m4@%K!i`PyaT4INiBeP%*Wj@52o;*ORWNu>U>@$mLlg2#h@QjYTzX zLDT4|`-U7~RazhOxd^G}$T13KC7-jVtBx<7ZZ5vd1pZlCt%^r*+; zsO8{S{j4tN)J8J)k)c$0{jXd_w2gwruFrEORV@`vZI~ ooM^26>Iv?0tp1{=~)?*Wf=V zB6Z(yih)-1#3 {yH4iL@*p~5r< zuISn#B;mT`Utn?Pv&WNkdm%0TWh~4BsHl#*Zfzkzty=m$VNYK2+(#k|MgQw2&uE$0 zh?;mJ#; HV_U6~*lkZr=X&)`bn?^|yks*YNM(244;Q3_ zp?lbgNlbs^`~X!(t33eSM6W}U>HF0<`qwN&wnX*xu*!(Z$;{pLq)S{9NQ`C)DpPpf zRbE+{Gx%o=#_#B8$1i?14Cdv5IKDLp$Y}ZGUQ+xb#TJvaQo-+I@j_96JlH>mzrG~7 zyb?Qmy@=02#^B{OU@|eza2507pnw jR(0cb8-^?tIa$qOxBaK!vFb+P?<+N){_#ee6Ck2Sm7B0Opdy}(y0?ZW&HjNWB zp(v+R6cE`C9*bCUKsGo{OPffr5PZi_=M%qN=yo_akvCQ+w3!Oz(}D^0v(lV*Ox9iZ zbYwAS34IZIb_#dH-bIcw=pbZzl2!o6+oN<&vnx3BjPom1&_!JW$sA+a>4UefU}E&d zOMYH9=m;%rK(c 29W6I=<=0JEKAIgv? z&wluI^1og{ ^j!|W9R)goZIBKyLEC9?Js;_mnjN2jxq} g@K-GD%|T3S C-Z7lE3jib(u-AmGeHt>@QV6AptBu>t?5@( zvSjR2d-@S}UmqLZ+>e+x;_J*X5!`~1)%{?xp-*(we4K!eoff5GZ_t#+%|@l2-f%vEv-Y wZU>zwNoY)hF-wq#h&SW8eq8^k;j8$ z5Gd>jZq<^dNpHiV9l-x}*{9Z09&wV3=||{BT8DFigT(^0YE>IeF+Q4#g4)D_`t^tI zED@(;=Lx04RTBr^(>s}<&So(3-hXvfJ4PLbA4*tyxl4%LcAs+VApX=gLKrMvcKS1< z<|k&$jW{L`rj9M{07D#+KX`XNIv$^S?}9$i5YD?u?rY4_5)sw72nho!XNRsb#P>VV z=9k=o$;o
;r-r3Ns9BLKfA#U7ejh zdphQU*%3>ZyI+T;Q%{swcQdB=-x&xW7wM8gNAVqjkJ4}_D75^2FT;B%{L6!1omH&( zzI$!$429AoaM4>DVWSuclJXA9FZWTQwyyL!T5;eg1Xe)L`71=~J+yD 9bEI3UK3b^AFVZoXD(U>EJ~ EFounNUb?^_H`hS;N)S5jXzv%*A20w)uF* z&@}J;SPk&L*^p-yKT>I-Vnt?f_Hg!rGRTO?xO0WhWZ ^w?;}*VMQnDBe zI-#Tx0;1?Y!>Ze9d3kx~ !Ak-O!)b&4>1fiQbTP(Y|NeGQAdfFD zeu{uB4I6lh15Cr_Vj!S)rNAf{TsGXwep5wL>uvNX!#3O#WQgRcFXCwHN=N{#arGHg zS$kShXso81;C1W#n_e!VAH@%Q;bb@ZDq7M9vxxY2A;q@D!R{^bN`tUb2rUje#<{L(_WCtKmjN1hgd%Pmi*s-V9 zmFAfAY@m%x#8v HiQ(R#v2Mr5=S}#y=0_F18dRXgZYPtv1HErr@CZ4nLTp2YW~OZ>?rp}0`Idj_ zFvU$CuBUuf_7gUYhF)iSz5d{81UU3$nE_`uIbADTo?_bC)|%y?`vZL*Au`tyR2Mc% zs#h0|x^fq>7GBT1nc6lpLzrr_sAaJ>KLL4@k~Vz-hyJC>j@+KyHRC9_xhnfF9^jo@ z8_BvXm4uenVqaYR8&!FmF)1gt*H2nr5#Z5=WTG(1edj?^h7h<6R>`Gtk~ ^ zpG$0v!W_IqlSATepwNvJBd1TGh9^mQD<=xaYgY@~ uUFaZWKAdo|kr9M{SpsE(L+HlNSVt z7RNs03*d53sY=~)k_gU>0DaAGlHf9zlaeNb;PKsVn$rVX$&j{Vm=i4-7`JjkB{HE^ z18$_^Y}d;E+IH?GgG5|bjPhLi(_q>klMREZi^(K75+L#VhAO07nz8F3@83xbNdJ#8 zndqw-WMwu%3vmm8`-|HP9@zqkt|gk0ichW%5>`0C4SQcdS`r12>CuV>{_hZn)?G=n zOfbq67cSn*tiCoG$giH&y|M Q)~g+OJ=hZ87ymec4}kvOt98bMl3qIj^&g5=}d zfL%6fNM~5l`qQSG>oR)>g(1Sc-{z} A{adYVtB3UgGdp&=g}xLYIq{}@SU`0f#kyR ?OfycJhNi5B&p2Q>5 zN^Ke_M&wKSQv~)QXIS`Rq=l6m9l0F*?O!E)(3vDNM+dLsR}n4pImr}8(lK>jcOF+> z+p7IqE%4SexQ8Ccp=J;(kVG6q=`jIQQdkZy_b^A)*lxJ@KhBL7ZSXnj2(_^scw= z$L>sgnU*0sdL -VSn;|Sq;T$i!5Lwp L8^V%VA{$+VN^s%iPE~5;qc!TQrLV6IxfhLa?cCs2O1vUF?=x# zZL*s9RoN_F8PYERD^(5)KTBf$mLboouN45^QaD$9Qj;r0o>1!(E7feK2XHK^y}Z3B zu5L_%nFO|QpH^l*t_7~*HR;b}%&Gg2P8R9boCu<5m+8>X9@7*2|D;FRX%n@o*8wyJ zMbm$ZmjCI6%Np>X;W6JWJ}6 *i<>`n*SR*wi2^1 z5=04zJeM?8& *=0nu z62pX23kJ-xrR!M65D`OV{dt4~mG5gUVHiA3{%Y)tvBef3)T(Jc|N5+vlKvOkVoJfn z`e3eUrbqQj^9UxY*KelMgstaXR`~36X<$zU# I}XoI7Mlo0}kZ`y#61b zry=?^vaaHs4>X*zWR693J@HqL@N$IF>L7m9l%3$=*dO-Q(|+D}@ir#@5ohl}<7J_v zY~p!%*wuYPc0^%zNl7n?`ddxyZw5np^d`RILU#U4L9+jgzMo;UvwPapghvu+KK9t1 z3*wC>aQ8srO;nTBb*~DND6_XK46E+oJi8!s>!ho;WXvc0;Sf22>HqPY7TIsXjkUz$ zoT8%VGy$7<`R(5p#(!+V;5RMk*fhno5U^RoIwhi26Y0!MJwxuo(ei#1vsJAQE+V>c zYnk2(fAH~-ohXUf@#uA(S1WWR4HVO)_z%V!+7Nlb8J9O&!d;k~3c)icKr2OOUKpr9F6eD2Rq JGut0R2wmFXPboaPB+&JtdZeB>8Yv8)Tccrn)S$2 zU{&}l<(iMS99%U=IkhAES5gb1;hC9^nt_QJUk7MfNbU?cK1R9I$hf*v7SfCF3KWJR zJ|*@blfu5Vp^W 4Yyv^+Us{`i0V)_aF~5Y1cDQiyfOzZS zg`MMuvYvC@{EyUi9C0o?ZKW7Y^xrM{-OX*-sK;K|nj(*wzVFCV%&obT=>?8`<}}JD zoO0Mo4aME+(J;uzNtA`b*R&5RAK4A`{ew%@3Ec?aoGuy&{n^)R5-WaYm75!0S0jgs z14#k5m@h3B@_dQ%b4+@Al#t(s(kBAM(goJ_g-x9A-!8$KSO2ugqJ_|K!+aiB52w9O z@cO&{qU6gDm7JQL+?@8LcGGaV!I8KA{eqN8kj4f?&w|1aP0po>HmQJ*6jc{Aa0l}L zR@P6e=QYhI@4k?D(#!rWQe9KkdR`9SIv2q6`1&sP6Zor=`541V{_?5msEbD?%>c zOl`0`_+V8D_+mC((~F-%Nd`rDKKo}vbRRr(zxSHv0!amsqx6}2RLV=B;b`C<3imq2 zR vGvMs5}#rXk|M?ln!0(ql!lMNF5MjoTNV>W1&J97x;q*lNO7UzW}og^sQjzF z{|53qJKKxJR-gb2(W_<`Eh3GCge}YU3>VW>*nz9XjCzj7r`VVaQNw2tb>KGL2(=3o z9ze@$(T!dryc!63zn0A<8&>vb!E+-u%VFnuZMC>O@I|Z>Rp&Dr4 CX6Uvbe}WQ1&I5%z1?(tA`&kb-dO-# zV0+K)D@0U;R@YhxWGMKPOI%uh3rL^yTU(o+tXCA1J29JO6Esgv)oC6!rn*Byra%cf zynqscBx^EGIB4LE?YzxTH-H73y0uz!y4m`<=iO>t?NSdp$cBHs8=o20C1|eTw)&SN zCsuY8Oq0Tizp3uO-Hs$>XP?Rq#k{VIa-&9pD1wA(FmYK`IQ)p=Xd?$ z^9a8wkh9`Ndk}4*jOe+Mql{bi(ir+)W8O7r{sUVR3#546-hHa>M1d3Jw%9qkTF 0;IH zqWDr z8&BNpS_~47DMGyFm!M^FXvs>Ta_^xC_tp82K={NHd@W`Zs^DZ zuX93|5Xu6p{?9hU=`!;Wq~}1okAshY(Z4TMmj$8%vB{RmVnFoiDY( LMYtvURKxBUgX)(!45#&$z5nrb|H zHS+ BKj);lQ}q7)k)WF2Y<@X>?80b=Xwa#YgOf8iq=&oIwC4oi#^ z%dp+|9YHSvBgpOLv{m;r9L-5@ee?~-G2jgQId#CXLu(SB9VoD6`gA}TZwSI4iV9Of z0D0hha`NdP06O%WFerq!t`|i}B-L@{=QJjH-EA}eV_2>c8eoMpGe5COQ6eL$pWJa$ zDBT;)MXChQf65V25R0@?-zpFyu7yuSbJ}&fg@}b%!$`x5Br-d9=}6(j%1&r^sO(pu zzdxSF@ARx;gu8KQ$(|o~g7dkbI3#A>0HshJ-QSAJh=G zojmnC`mJ&boO-*Jh_^UyPI6XX;=7`Go$c0eZG0yz#>qJyR%E_rcroXvIH9ICn9v7f zo(X!_7z8p0i^-SoV!6?Pg43RY=Yz`B;0o5LUwA;-W8NLjvTE`sSN8B^xO|?bv9!q% zyUo3tg?9bKLR=i~WoVoz22?wm5vPi*YzS#Rg&}}jrzMCl $3{s z+VwGD BjWp5LtfcbQ_spUutp**aD6u2KXLQHm zJP+Z8@w6x&D7)0vli5tLDnajU`jp#WvfX2^f2*s @e+WEU-*pyW-}pn=os@o zOxB+pz6NXbZl%FvG7SPIVs{mUZ!i!W%IGUgf&>J)CA17-jC_4O&~9qzb$4a8Y|H7D zGo)bCcV{gYzrVrSk@pNJ4{HqzDbA`{<`(JkP4CzQcOC7nmh1czI>Um9fMk|Y$}nFO z @&+;kws%=jMV&gSw+vZS LwU$!7G@lT&99LZK0)@3dy~2MJ5SERpZJ39+TPq zKwx>Ft5ncJQ%_$3Awi*N*C9_1q^p^Ogn%lTPJ86JeHPKdLU5zITh2_n{{-NkV4-q= z$3`R_xG};MnY|o?8lX47{=EtVhb;PRZA@_t!M{N0vgjy0{kXl&w4{#@!^7w@1t~On zB$@m|L7@tuAeyLUPokdka|}LbVAvMH)`)x?8yz6*gQ%a_-qI_e?nZ*qjsWCUbK>Dg z7SMen2z~em0fax8btU%{_y8@JoFI-KE~zZ1xhzeOp3P70_&~+{ck#gjFQfjh`&=5I zs)kyAdO0(XR54TSS89N1U^cGMmQz8mqVzRvriL&kIpteZRz3FZW0~-uJmYsDsJ4L- zcu
G|vYo9MD_ zgR5i|^}e9)$((CDyY`!U8!Cd=*~jrah%{9^IT <3f-4Yi)=l?iEM10V+yNXWs6vbpMhYfm)e({n~3T5_avs-w98F z9q1?>U~*v0yZP5M>20T;`#gp}Ug_%+5dWiS*Cw7RaL3!m Fpcs+*>clpOn_a zi?G=h%s!a{Zaznf{4}EM%~&73m@~TLHnNT%`z#&31 +XC1QL%bqhTAE9B;1a*d9fehfyfi?YI|z4gYRJ z WkCK8*GD0Yf4IvKqaF-g|tp2)3gw)3JH7*0&{Bi(L0bX z@s6o(Q@Xu=)`au?Lhgp#sJNso!eOF3*T8J>SiBCAkd#XhlDo1W^Xtr(_d42r;ay?* zhT1jux#h-bk*-mb?5D+q?GiwKVN;E~@XP)q$WFVAsL(EDg^@Nz4P{);A;Cto!KrJB zRmFHy=l(&9xq0ijy* fUDSP)>U&ciG3SZ0*M8f#(uZL~h^2eOy+ai%aSeO(6T%F*`bW-)@{e#