From a87b037ecedf0154db99594750d00df84cc2546d Mon Sep 17 00:00:00 2001 From: Daniel Castro <2968031+odanieldcs@users.noreply.github.com> Date: Mon, 12 Oct 2026 00:31:36 -0300 Subject: [PATCH] perf(font): load Geist Mono only where the family is used (ENG-158) Pages without code were preloading a 70KB file that competed with the LCP image. The CSS variable stays on the document, and the browser fetches the font only when text uses it. --- components/layout/site-shell.tsx | 4 +- e2e/font-mono.spec.ts | 88 +++++++++++++++++++++++++++ lib/fonts/GeistMono-Variable.woff2 | Bin 0 -> 71368 bytes lib/fonts/OFL.txt | 92 +++++++++++++++++++++++++++++ lib/fonts/geist-mono.ts | 10 ++++ package.json | 1 - pnpm-lock.yaml | 12 ---- 7 files changed, 192 insertions(+), 15 deletions(-) create mode 100644 e2e/font-mono.spec.ts create mode 100644 lib/fonts/GeistMono-Variable.woff2 create mode 100644 lib/fonts/OFL.txt create mode 100644 lib/fonts/geist-mono.ts diff --git a/components/layout/site-shell.tsx b/components/layout/site-shell.tsx index 14a2bab..05aeb46 100644 --- a/components/layout/site-shell.tsx +++ b/components/layout/site-shell.tsx @@ -1,4 +1,3 @@ -import { GeistMono } from 'geist/font/mono' import { Fraunces, Inter } from 'next/font/google' import type { ReactNode } from 'react' import { InterfaceLanguageProvider } from '@/components/interface-language-provider' @@ -9,6 +8,7 @@ import { LoadingBar } from '@/components/layout/loading-indicator' import { NavigationProgress } from '@/components/layout/navigation-progress' import { SkipLink } from '@/components/layout/skip-link' import { ThemeProvider } from '@/components/theme-provider' +import { geistMono } from '@/lib/fonts/geist-mono' import { getDictionary } from '@/lib/i18n/dictionary' import { htmlLang, type InterfaceLanguage } from '@/lib/i18n/types' import '@/app/globals.css' @@ -38,7 +38,7 @@ export function SiteShell({ return (
diff --git a/e2e/font-mono.spec.ts b/e2e/font-mono.spec.ts new file mode 100644 index 0000000..1a2dc97 --- /dev/null +++ b/e2e/font-mono.spec.ts @@ -0,0 +1,88 @@ +import { expect, test } from '@playwright/test' + +const geistMonoFile = /GeistMono/i + +const postWithInlineCode = '/blog/css-flexbox-guia-pratico' + +function computedFamilyUsesVariable(computed: string, variable: string) { + const normalizedVariable = variable.trim().replaceAll(/['"]/g, '') + const normalizedComputed = computed.trim().replaceAll(/['"]/g, '') + return ( + normalizedVariable.length > 0 && + normalizedComputed.startsWith(normalizedVariable) + ) +} + +test('home HTML and requests omit Geist Mono', async ({ page, request }) => { + const response = await request.get('/') + expect(response.ok()).toBe(true) + const html = await response.text() + + for (const tag of html.match(/]*>/gi) ?? []) { + if (/rel=["']preload["']/.test(tag)) { + expect(tag).not.toMatch(geistMonoFile) + } + } + + const fontRequests: string[] = [] + page.on('request', (fontRequest) => { + if (geistMonoFile.test(fontRequest.url())) { + fontRequests.push(fontRequest.url()) + } + }) + + await page.goto('/') + await page.evaluate(() => document.fonts.ready) + + expect(fontRequests).toEqual([]) +}) + +test('a post with code loads Geist Mono for blocks, labels, and inline code', async ({ + page, +}) => { + const fontRequests: string[] = [] + page.on('request', (fontRequest) => { + if ( + geistMonoFile.test(fontRequest.url()) && + fontRequest.url().includes('.woff2') + ) { + fontRequests.push(fontRequest.url()) + } + }) + + await page.goto(postWithInlineCode) + + const families = await page.evaluate(() => { + const variable = getComputedStyle(document.documentElement) + .getPropertyValue('--font-geist-mono') + .trim() + const pre = document.querySelector('pre.shiki[data-language]') + const inline = document.querySelector('main p code') + if (!pre || !inline) { + return null + } + + return { + variable, + pre: getComputedStyle(pre).fontFamily, + label: getComputedStyle(pre, '::after').fontFamily, + inline: getComputedStyle(inline).fontFamily, + } + }) + + expect(families).not.toBeNull() + if (!families) { + return + } + + expect(computedFamilyUsesVariable(families.pre, families.variable)).toBe(true) + expect(computedFamilyUsesVariable(families.label, families.variable)).toBe( + true, + ) + expect(computedFamilyUsesVariable(families.inline, families.variable)).toBe( + true, + ) + + await page.evaluate(() => document.fonts.ready) + expect(fontRequests.length).toBeGreaterThan(0) +}) diff --git a/lib/fonts/GeistMono-Variable.woff2 b/lib/fonts/GeistMono-Variable.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..efaf95dba19fcfede3eee5d76dd46625d98a9948 GIT binary patch literal 71368 zcmV(~K+nH-Pew8T0RR910T##r6#xJL0-BTL2E_|g3%)b$~~omFNSo(r^$NiKeOi~YUuH;9waCy ze9;3`D(>=S7OJY4qAtG=!+@9YHq6?K{kPi`xehm^<;kd{b~-{&tR;LswlEl_O&d zXF-sGDpj(Qx}fHDV!C7cmmaCzpl`?Aqrl >n`WiQEWTM?6R|ksVj OK{7}Nl|hYQOlouJ zXmR-~$p68z3_Fz2XRz=yylchBB5Lp L_iDC~ Rp6BniIk 9#^cno-SOG=c0fV6;!bd1VjQQNQ( z0VjeO5oj}&)2d}sEF&hC0ZDNj#j%rIkOvL`5@+gu2)w`$wrrL(I9L8>b`DT@@<5g` z&@^d?dg%bcPECz9q7s`18lK$rpK-<=G;x9oqAWo`);Qn}?ttTjV~PvMM2$O+nwVwG zm?q5{W;Ux$_cz&euB7WHO~+2hN}9I(^KdVE?u%%6Y=P<7v@9sGa=j!=>wDSf|9|ZH zcJ{jOgV8eGm<>r#u!x2Up^LE#IzntI&r>`QulyBxN-4cwc}5ZM8RHqxTSf_^%<+s_ zW(Z}D@Wv9#h&6^eo*8B+Va!ryh-JhWLJXtqV~MqdI%b%oNS$@mQNymrQ0AN=#t~;2 zv4;6ComB}02oaJ@V+ ;n zL&)~-@fXnFuf|T>hxB;>2tS|Gswc^)02NbrXJ(d&Zilv%+T~OA;kpDTq9!QX6eSMX zjzQwDPjHp0dJhMHJW?Q4O0`XQgl=@HV#+Vy = z=Z5+WcD~^Qps&AyK7r3qFu_kpYY=1@U=UE_;Z1YXToVOrYq^0_ 9}7k`R0LfS^5c;Q1K`4>|FF46})Bzhe9FE%k8W4@d3jy48t%CgF& B906KmEIu@|l-M$dEjrPGgMI|cFpo+9DBNr;{ zX|h6=xB3@O9CT(Vu#>0TEpv4YQB*2{MBMt_4K8sE!!gVb1EFr@OSCnnB(OjqLJyLx z>(c&rtwdD!{9Q@1Y89w%;B7L21)jOh{1mc9R-(c!;PbVofYh8HSAq!w2y%D!zs<~0 zgiMgS5~|3#u3+0f(Q?BW#@+gqCQZ=1a1%<*MAaO01_%;_Pn~Y^r?kFh%9>&M2Z5b3 zZUupaNg`2%iDsHmc(~mTe!g$+?foN{yQxK^Q~(W}3XqW@_T7EyFo+o$pi~0`o{2`u z|19tg%rlpBGB1S`J~?Nq$$-$Vz>=TP_p)zFG}Q8w0KmZi|D`E?cb?09SKXD%{PeNN zj=N3(aVVP^$>nKQ_G;Hn+Lep6t;?OImBT}D04lu`5P}0B4L|`D=KpM3rQL>IdC?x! zv3+PSVd|ZC<0A+!yCkdrRi*B#?v`6E$(C9M8D>@*lr<=8cAi?6_O&&zgd}^sds@~K zA0UUo5M2lyL>FcpVNO97ApL!rn%DmZ1E>d^dbsIxW7F}&u{YgC!f8W1Ipm{#^6gJg z59UuG*l2*Oo*^ZEG=$y8kh1;^$aMo$!1MqV079||$*v`wxRiqoNiGW7NT-j1xNbnI z+6E+fht#?ZhnOfi1<8AI%qJgC>3qqzkdD4xd^`GbG!eFNdNWm3{j8A{LXnU_*qlO1 zWR=57yn^`08`q ov+9(fOdK hsP5X z0J;FQ2S`qn(i{IDE~MzzhbhC-ror=)Dcf%UYgr|&?5y0L*;zN|`jD&vytB@;2^}NV zKYz}fn(AMDYkG~9F& $3*ot4&b5DwrZ5Y;lJ*ZV$ya7f6^MohYuGJr-%ag|0PQ +%3<;rtnJN1+pveBGI#=M^DZ)x=p3|0H+1?%Fl#j^2AUU;8t4-Rc`&gzx z@ZFpI%e Oxn&wyBe(!rIb26mpH_t z7NWOTqs@Q&`ESG7G50*nXi5d~FOU(-WwL$z(Ad)g1*9iGvY(X!sr}5yUAE)89nYm0 zW5kFNVt9r}2r*Lc&gX3_-v`#vdawY2C^81j?E1CGq(#HFz>BjuG}1I<5Ck^x`)W}a zRNpv;8VFi#9a+!A-o-?j%yt(CX< !UaIBxF1@l!}4inyO*ic?ZaN-IM-Rj95yHPxbyy3|*n zhds=r9;JyUG?z?@wzSutPCC&=-!p me`X~s1)wIV3k(QG-PBz@)U$V$p=yQweXaUy7*dVYD4Uxw2!N(o0PF{# zFMuNey*vcCXEyE2`q>s}t0Tb={*(%-v~@_ha8wt}2hTyz1TV8@FiM$!M1}BcXb9Zg z_ftPD{``8CwTDz~_tE;JtB U#VidDJn-8e+gO<2el? znq+62bFL{StV>C D2x!b0upIVUiuiK zvZm!Gy}U;~rAdL3%BXwH7inMe5m2GVJNT^lTkdFMU>nnQpH}74>hxc$JQ}<}bHK zOUGw6Qlpi}tE;R0p --4x}p`gBgOOY62SbbE%RKO+ja%(4F1O-M>FwrR%h zf)pN+$*ncRYgG8{g=%26_#-?E=epB$;8tPPY;K5phw*jsaP4rU>PxrFD6UnwbmDr{ zH5bUCe(rpv#V|=d6zwZB!wnX>#~K?vV_QxIO@ZQ)fLQ>-krGbVo?F4ee$VYtM=uP) zI2?^raXzjr>1=Dw`Ur-wIZgm4h{cY4^R)1JE4A^9=Nb2Nlk4PNCRGrTRkP<_pm6xK zTdr|db=19stsr#Ab*AAR-?f -!I0@FZb`Og7%@Mu_+NA@Gh(b^pTm;o%W**av0a zS9^-^nh=#Z$b)QkTC2gn<*VdW@s%khNj5JK%%S5jKBmvH?*?7^sgHBRp!=k84j#&M z^YYeUk0^8A`l9n0KmPfutn{1huV?`+K2)w+ZSTXW@c-6Lj{4pLlcw^->Uu48b~TmE zwrUb5ca)~+jiiTSq%@2H9Hc=I0k#;Ki6N6ST-9_zyj8!V^3?oDo_@%`Fl=l5q9o7tD VD(gcLNlYG-ZL@!`*I4GW{fJ9!ajLe8 pAdL h z<9f0dM_+Ti2E*vmP%i`uJ+Ku#k+ZDvD<^f gocLi&dBumP-Y!p?un|Nw5j8}6&-5*IKj}o6DIm#-dCw| zt@0c4c!V}+=0vt}t=tKc4!W|Ow@P?9R+VB=Doi}$V^nosot+V%EEq|_*T+eZsc8f& zY{c%^aj4p7{VtO~wfIsTQ4WH)ic@MN2^*bC*Tsw`t#H#9Qo2nKGs@7;=nXO 7dbedc%zS&uoJFba%$q@#UiTG;WGr{OGn*?qer6JM38{rXTl>3 z)ubRu)t6_^_=pw ZnD^7SD2IKbXPTDg%HGJ?(4WN zkBj7FV(><4mv5@?uGLcJ%r7S*TDjPTpHClo^h12=`kC)DsWG+8IiLh>oazV6nN6S$ zD}*L2^N4;EpUE4nS@jKs-ti|Zy9)Wb3-7jbn4bv~vKrz#!%>BAK(S8=ykGJv`X~}) z8-} MtcZgVI6ZnWzvRGS%JtK;V6pc|tJVl y8%xMT%q+R$v274_Kl*zrL2B>LyomDDB zW*s-B$e@cT=$s-41DqxkgIy1)t=$rdr9CTk9RcA#$Ke5wI0Rh7BRr*Jb^YqJG0p=e zVM3xMCX$NrZmn{8aDYg?YgHE!>BVTt6kIg5083Ka!eg44Ww hQ0Rl*>y3<}Ow>SSGN^*g?t*@G z1sw8R>&x_f^bz%tp+>$3%vNd@Y((6p-LX lmWc_a-3NYU*`@ z4Ej8el=M$$GnTDqHDWSw!7m%K;%6)77yKgk%!SOfXm_#>(Bq`^=tVKckzMdGOlJlO z{knSC5!{%S9ajudmg&Xlr!9Cu^eKCwb4O254>vhF0ZbhOt&RZWTpdp* 1gMQRfskWkH)XNSj+lR%mql*@Z4CN8P`2OGFP@PA~`N$Ar+5|@LohzBjSt3!Xp zMcy;}no4|m>{68cVugwyGSDA1Mlm<*B|s)LWJj4mx~iNQ{A*|jFF6JA+!+qjIM02Q zk2f<;BaOVVvraPCF~ub;t$eB|+8J+QZ`sY|VkoaZM+<4V;SDMMCk9tT{P>y0?9Fpm zg3U0Hj-Nqpd$F1NkY-`5*Bg2$LQ5H{0Vhzku$OZR5gppdVk}W(MnYaojzI^RVh6|b zON-8=8W Q;G+Flg{G!Da#~kcP%pnvqH^8H_|oCywq;;%^)_ zOquT3UzyOYCw--@q r^^xZ9tKaW7bUc7dW?Q@Y(jyPN5T zeId=-_t7-~x+;wA>o6(j?Nu9F#xgDrp8e=3FAR2!J%N$2Uue=d$P3k7xo6V-u{`GG z79sq$-;x-!EzO>}Pb5D3#1Tq^y_NjI+ 88TV~{L7H(F5SDS;=2u~TQ*llyBa|lD;Iu>8T_9O6fGrddFITqt zqLX;QvEEuj%^Fd(hafG7%Yf;e7#+;Gf-QkDRnD#g1SviwL(R1F(76>s0$2&Q!f~KL z5sm4zRRBQh38Ms}?6;DEjeK4(YO%+-)l^P60#c(gcmeN}qwy5bVK7Ufm3{|+7qmb` zYC=f+>JaxuAnp) ;_%^&smPf+s}D+|8;c8mgz|1_j8;P#J;C1`)sV-WA1V?UGfVDgvmz6ZGZzBL6? z?_sXc$Dqh(DE1{*_y(oEN12~c?pGy+Klpj&{+3=nzx9tDIts2M_S3vP#(ebSL-HQY z8RsU@_xNjac>oB(zE*G))7-tpmF=WDe}`cS5GG2T6d7_9AmT8gOz3@rD9MVd>4s_9 zj$5Oj;qx0cZpw@~3sQMj8-1z;@p+#Hf}wCE=clxIBAH6}&rCLfgyR+;>r=@jmjdl_ zG`?FcPSUKX?<*8b jeVj6#P3YaKM8dL^oz8 zq}e#Qcm;$+#3ZEU6p)xOW5EiF!kz;sF5GzV=F4A@5XVG{c3hkUNm8ZDG)0}6=9q7x z#g OVcfDrkYDG8dck-!xh)=_5%lAylPTPme7@ (k+_&B;z zM( h`g(9H<;);{7(>5;#2>n2KU$PwNx&5wGDoo84SQl8H;PIx!pN zx=J*}d}lMRTRxDXXL*5lAb~7~ycTB6B5cSK{*lqwB|wM>F%qQ6A&&xz2Tr66P1wz| zGVQe`eM`EjGV8LmD3}NlAx44}Ipk5W;{UYSFwu6Y1`aJ&VNohWEDDyp`zQzbQhZ+@ zE|W_Z`lWS*d@zbAC;Mq=IBl- fl68hnk9IzOJB3^O)H!riRL> z?C+FkZ#v$yj6L*^pk=xl`Me%P0mcv}0W&6k0~C=<$;RK1H`OqCjbmZBa9yY_Y6=*} zSQrA?T8JA*_3~#7myH8%zz2sBV~l}-!i9{?fGq(pL+XQ{APEwWSKr))n|Kn@CVToo zT;8|KX$};UDIeN#QrKFtEt@`?!a=bP?As13(S`!V>49u (?2HkOa zQO; sVB2$}{<;@;tcRk{d7=Dls@ zg3OHzM~iu3Jp*v*OK`AKR#^1~7+FYrp#xwU_km?+)C7qrd?>Q ao&|Kbo(C=M;V2;QT+)3^YY1m4bk~tpB{g&xqw>ATgj0%L9Y^{Kj>&O{z*L4B zX_is!$>DFP(y@VJ2lz}1-sPT-X0zfm1|<`9_|M&G6pWf!xm9kpV|c>1?)%Y3h(#`( z8ddAdaKvnj1S+-Yw;_o^BII?-*KY|gVY(X+$d#po!bv!ZIZviCR4DX>!9X`hLLQax zS`7dm*#YsXz0hChm)5$~d95i^)K+J7m|rs4qc6w7BjdG~Ðy fb>+PFe@|Mo~^5?H$+@<&%?5Nn`&G>y|a*!wxc2DpzV zfaC6d!cFoUotyAw;_+8zmt=QxquHNhJM;OK!rGiEZ({d*X%>Yxu9)F8a_G;DVex;v z(jkFBqR<#D4o@JG$P_A#&S0|GZAkxrb+|mfKqwMRq%yfesZwjSI(>i#i&o`l699Y& zBAiseh$SSD!fG=7IyMpxc)oxVcCn8dj&O`-22&Ww0#)kLnAUWpE4^r;jq5yl97s;K zyD)e0(&d@ixp_K+xp3v`wd*$)Z!X;usNryVe1T9TmH;3GBT^aa?&0a>?caPA8#vZBOVzu!X2?#g56=xotdD8fX#^st+-`6wsv*5z*R4PWJ zIH#(=1!s>T>-nfH*T_9-t_d%Kh+r8htRasQDuRXKxeMynJaK^*u8aUcFa&AEI?yl< zKyiW#>AHvvIuM{EvbHc%x{wWCQ V|`Ioqxi_tly)lzZ0WWVGN1zi3K`TG z!5Hifmy(EoH)FMgw)ytG8b&I9oX4ZCrz38N_hB?Re>XKppKBA#p*&bZclnRe^W}P2 znXAwl)&Cs`*3mIUVqb5qDa_(BGYq7T_Ix+W!NY5bEZI$JZLBTZa;%a^T5sB;*?K^A z9AD?O$>#ZN*_T<#LL2htTd2q4Exn6GvhI+B+L!TUZUXS@<2AnQb4buGJf(|&%yXgq z7P{W6$1N>Pic8a5N7BZbvznT+3m(pM>9fEoT8J~l0@S* #VYY_Cg(oT zt(Gk5@5oDp%97DezAQ+vF@48g5u_AO{kk@LmEmizoHG6Dj!Uy$?ETkJ6+0DCybs UuPmc?B?tGw5>~qu7_>(iTtJhJKY@vXVcU3nnpC1tx*J~ zQLnXTp8Q=~%8KF@Zv=*OR*#qHTa6YeU`N-)@-ynY>1ifQHj^;|q?)T+AvgK5IE zdUDZXK}k$gRZq1>5gTngeu*7gvB&eTk!E1)e3#$kN7tp5yV~_Wds83?f9 E6$1-#C~pm#)Bj%4;$t^H)(s44_;dpF2OY!h$CP1MJ;aiN9H2e|B~Zl zj`p9)Hn?Js{;D)Gocq5CPs65TuU=+*hxIoFTRhrRaSja)KQDaa3+ OJeVGagTV!8qU=pPiWpSDHEnjmxP~Yk&Zc4Aa7@N}D3^vXW*e!YhB8xVjQGuj12) zD#tB-RvaN?u A@LTxvWa z5>nDKvL9B!k>^OPHE|ix$M)@;HGUe)a!pG)gTTdq`|O*oBZ{{g4jyPBo2iFaY3hu& zLHlxikI6Nvxv^sH=W=}J0RkR*iU-fV!iRw=FTl~XYR6Pp-I%6VKc<;Aj%ij+W13y_ znC8?nrn$9_X@2cvT2RNB7S}zdB~iz;w4O07t9MMx>l;(E{yL`C{cAXy+|ZbJ_&Xf$ z^lv!cWqW{kAArz@ 5A1Cs-^x$8f~(IO3$9R8frUL{`e6#uKKyY z{}Z9!aU07WYwlXNVdm!^o~+jDrZIXP2(AM}ADk%%bsk&0ehXfDe?1A3Aq7$wDyluu zjLW~0B{`BOMN%V8qBVR_`u`iwa2cQFaz4iuT**~j%{3!k!aZ6BEW*E&AtxnMvLsth zNsi=7p5za`cHclW{GW?0*ys|k;NRc5K{aIU6Aj(h8g@&ne_03Uz*&%6&07fYP%4Kf zwtax=W?=1OydYZ7!ZstD8SL@#AkUnFs0X=@AlRC@Hf&wn*tW49ZD-rncDMcPU^~{1 zx0~#CyVs`K7xT+@4l^`G7wCW+Uz-j$VNEgXL^1T* UED$6^8!84 z2if$a@>0|w8}i^9H(8f#jcKwgc}}Y2Rc{Jt3OsdUkK?AaQbqr!%2K}*ng&Wk)HFOF z*RC|7cbGFAc|=ds0Xe`QPU p!4zU7k~OB5~_V}m&Y=jGLd?AQVt$OFD| ziQ_O9p1a(o^H4DzjX{}+OvT6@LS=;W{l;3iQsl6Y*D#0ndnW))^J{RKBSshP!yzQf z+Dh*n?HC|Cfu`&C7eaCzVECXrw_UL?Ftll4?HCMJ;}*DPun}=40hGtOn|OYH_Mnum z#DZBw8f=q;3%DO@ JbT3(FD2Zip5k=FEYZ&h^fFOd9VkT4Q-Oz@d zj14Ce;jsk}Mj9>%#s$p*js)gLiR<=dxNU&=XZL4Te|KeBt*F=4oA`lc{vWwUEbkSg z5O|E6qB6#4v{BN7!Wv8&duMW=o>JW7NR&((qC7?$eZJl?2Ez`;FwfD)CU-bS?6@2b zn;s$9P$C~^gF7D~(mySlI-x(^d-$|m@x4^4Xjj#NeWjZILmeTHjAI%GKuo@FIm_{; zRUe#(l#hRG?bvazVROEYJd_u6GPvZ!Z=%ZRAUNE{+Vjr!Pr8_daNAYRr}+?jD#go7 z5yu+c@V=ubO0o14YY3ZQx@sDok)$`l2EE4LbYc^n;TWl(dw8l `^2o$DSO7tjLQ0;H0P`cqnNsY}P`(u7m{QCF42gB* za4^j+KHj~2fEqyx_?T-9s>IhEq%^qq88NA~X2IleLS;T?!QhOpp{E@%S{_!*lRcKF zFgLD4l j+czQ@-~98a0T*zj0O%K5iA*74#0l*?BpfNw zgSBWd&?Sx|1?Nj-G{uq7n{(`iQn>d_#9;E6cZc!-qQ>ZRWjWYT%z_acAqyUt?~ZYe zvrArli4to3R*`SlY4?Qz4;=RY#}ELz)0GcxbW(#@rXwF2Tg63e2s|IzrWx+UGdOD_ zV Me$*m5Jw7DZG0ogHC*{O2}wN!&x#|mEgd3L7^7Rgj4eMoNtxeFFA z7oNRG+E`i54Yt@T`^2qy)&&bT4==G4Pj}{XT;jfb-FM;2@HBg=l)6g&f?Z$)iOW<{ zODiKxaGq&ya+fE(;zKwb8g)fAsGpG>B2Zu QpehH8e)n0aPYJCZPooM<+(%2sUOF0 O1qY0Vpc>gRPZ+q>!b`wYy0SuiZ} z#*5(lk8b+)ie(M2_ZuDF_y?WokNS9 z_ zTl>V__Hy98Pdkw<{Lvb^68##dq3OCyq67a;*d4YT_B?m(`8DLrefC@stM0#7U^Kj8 ztu3!FX3Mjb4|#Hg2Oc{`|L5XLgv&FSzI3NEEqXWD`UN|g<$rnf^wEPy_aAlIXQJJ< z6g1rE7A m3Hv^;g`OL7Rn+fE)Qe iyLgH3BR7T z-!97Y?w-qqE^rNpAN=$l(tAggi_ZLv9d=zFH}b^Yk~8`EIpKV) @V{EpP&BxkeoGrxOQrxY^-+JX+OR&vEdt1n& zgBKUN =zs*bHNuhkT>%EDG%_!>LD_LA1& zjxu&vnY*)-J15;fS-?24;ZWiw ~?vUfah^z6E7av zfrobD5gy!!2MYmfh`5Ub>)3IJY7o?8LMsmB^e7lmL{dVL*Y|(<8!va)Q}1 wfn&* w$#X;$U;My7D=c-WJv970Vv5t13Tr+S=JWI667IFz7TYg-l`sAmoO6 RbsCo7^ z{tuw?{0FB^H&sLoE^exf1YF$II#O_{p| wc2Ejj@Tz3}Ol z(O<3XW!3+HfN~#SDK;vK74GxyYlSBcMj-J3weLXJDa8<-R1@nl-4MTKLt)1U|MDPb z^bOoA6i*0x4WS9I(^oyu^lG1fhbH*{15R%8i^kjG#e9K@?lBveV@9w)^d3qB>*uW< zu#qyzi)D)I2}I#EGF){cC7&25+#ifS0P~34bVtIAm!q&jTn*=`y%;Y8-<@FA57^JF zDXz!A_#2cFgGcvP7Bv;q*zCwkUwsZId#yL(o4~xWCwj#zIP%W|gq@V^XALP{8Z7v} z!mPY*-`Cb9opfXW2c`1Lftrkn zL9ZMut|_~qaqS^`{ZjE(RNnflPVTo}MV+I^@pr%eGV@MtNs(7shJqN(wqky?^5g;N zJy4Yn+yt*S0qj?McRvjS6Wy}x?fw&A4n^14VzoJd(tFdUj(hbJy4Jlro-}XtC8$$b z`3#3QFB}d?=9yZ(&lmqE@4rL-sJPR_AbXX+$~!;zA^C0yBx&xFP^}okSS;6!4O^3{ zVujtH$V-trLAplvat)8GNSL^^2J%7BObyznD*VDFQ}A=7lonNS$;HPIEzny4TS_g4 zmq*nm1vH!9uYf^&xZxobwY{#-7j;U10$FhXP3a!pkJ#L|tLw>_dBbNc9j`oARyOyo z${hmIE?{wY JrNr=`+q;AN z;XmKX`t$jY^6$N$gWvb$Wnvinizxv~LN7-4bX=-6u-o0a?#W=0jbz3 pN#|N8=>*ZmhuBFX`XKSP?FL3%x(+bLB4!=w9)so%` vNwNl z#hJkBr0aXnA|1mKC2L(i$Xgn>>p3UMlKtQ@mZxUU#3+hLfs3ce*;g}o0b-6451IrX zvr?8UOBhd?h^HpfXiPqN FuwtSm65HTGi-l#`E=71p#<^0zww?|#SFL=yD z8Vy1)Za>oi0iVM 4nxCN!8`4CurLS{muv z5KiMB$Wm^LO8o{j+_7{7P1`a={hQ#SE8HQ=bx**2UlP_S#>%=ZV)FxJLH-?0F6U+< zMrp6$XsjzGzGyx#S&{sL{*qwSjLH#Gte2mMHc>2DxO#yN?~f~!{j9zzs4!F`J2T=T zjo)l=9zL*{J&hgQhA&Y26+G0Ap~Pj?Y*sp26;0Oth6S*pmhBNoDbu%IB;>j^M5Yyg zpM4v#Dl$&}=mpB99B?Dv(HP8`z1-5TJ11^Y?=GV!xU~<%Ub|YowM0;~lo}8svaKQA zX5T2Pq9iaA12rT}1S AH zDB8cjQ)$mz;%XtFzRm=DIR*dFeK)I_+y(|D#h+VHunLgVukW*`lZA-I&g(dWl9LxU z)$4rdv}9nhGk&ZrtUZ_QY2W6zsHwM+lM}H0bJWB|E-T8a`&D!Xw&Rcb#W?@|k4Rz1 zC>hwU7cArjw!T7F41SFn)Z3e-WGcW5(Opv$LnLb1V3=kBBr~iSy`Ew$4~Gw5bjh8Y z5jaN-MKiaF`{ppYqvfVh6*{)wrrLH0l2*Xv;FDjliGqR1Vb#Dm7c^IC7>ZcvF>FfS zLKU^B^g585OfnI-wY55OdXYW_dnY#&z|D51u^m;iP)C~Kp(%F%X7~Njc}Gy0&hb*& zw;U`z8OPahts^8A5^$#?BwQQor=#4ccHebZwyG8GC;11>=J}a1_JJfM`CuV`-oyRu zw%!T&`ralazQ}j>6;oZbm9Gnp_t@Iv9&{L8L&wolx=J|eM->Ol2S_Q6(4F*jd3vkX ztl!ca-9t6Z*@T2)h6emleMfgFupPj&>8h9_-12f9GO)1r6WStm@QVS9vP4_0;X;qM z4&@zgA0x7)8ypxLttCuz&^r4h$m<$7LKBYcx!|GjU_SzRZHQPcrL%hw8FC+70yDaT z-dJr>Xc2TbXFt=*rTPZE 49S{KpOS+ve6o zPlLAXmu3x5Yi5k^#jhi7W2qdc r&phFhFH48@5cZC0sEZuQ!$X^Z%MwLLpmvi?t$9El%8rsn^x9M5K!eSpqh+8k zi8zI}*S-d-p5;%hJy2CiKn*9PWwTB`0P8({_IcTc3C)?mFa7OC7(<~xqqRn?GGuTo z$_5k(V%qjdl2iptDV@6{XW7!t^&Rn|Cj(Zn9pxx^nQ=VC9yCyD*b 5$}&m(g^t>%a{?N$)(j=dG;}DF+$0VPzQE9VShvA;4>d0#$b&(lxOjXWapD{5 zW&Ei)tjK+l+~;I9BijKBTfjo0;*E~#J}4SDTPhlw@on@mw)tVzf+X2HLbqsdajXZJ zd1(AWN(~gvb+c|QdBe?~I_@lSeu{4(y!p Ioc3M{lvWO(ia@KP0tYLQy%kh-AyJ-9zta=6)!6A~)8 z*g<(u-^sQRG)tv{V0Kxp!|XUm=yZ}_NT0PWIp?G`Sfqj=0~|=Z4O txa7fV7q 0w0dZzNiy8XiGhW12x3{m zStzTEx^Npeg&q$4wad7Zv%M1U*->CyqJiK)7D$}jYzTFKIhmCO^?ZFP<=2&sgB#f= zL{` dRKv*41B;yBGyQUdm#qc5%|)&9v8zcH x8#ow7{w)zt?v%4S zj$_>sh`aBxuVz@beqVo }br@Rk|?%xe*j_^yH4!Ph@2l2*| zS<(^!K}azdA`DV%1byyztsxdFn84 UEWdn7~AAg_kxk+Dp5i{ z1cIFa6;M3-*!AmUbx4EpCD74ZU>|xgk1##1eIOFfTxDi8Q{B+y(a`xmE%iz+-x_yy zNl{EgUe}Gt1!->KK{d)l4gC8Y1e=h!U?A$#0)9?7_QklxhiJ$ zSniQOEY}U<{YQ^rytNVHI_DcuD@o4+H1KDkp!X Dy6FRI9aRkzyeE3Hf({sV#`rJF;;dL@p zZnv`pVNws}<|as-X${%)Tu@oufY3W%@H~3h1zI|7b*neDgyP !-T&z^xH+6dqrW{^t9Mtho%GPH)w2Z3JRhKPO z!xsyFIa##V(HlLokMk>iWyr`oUIVUJ`Va$KD7;EQVjA~GFR0+_p5|(x73(VXFGWU( zJuSLFdS7(Y_#5dJJ_ 3`-_h|r}*X=~8>UK0P<8|puIY0PNhSu)c8Riz_A zz*LvL27-FD6qP=`+V8DkhDGx? MTR#Ugq29Xlh*e>AzA9`f!hgn#^zj{Ei{PJP9ZECxS>q`< ziEA()@o-%LH$ce0uW_k^fi|qQ++li+<9+Vo(#fT$PKVU{%(@wbYfC2RlN M=kb8C(^T1H5!ypOFE55c7*@SG& zq1_co^}}s|YUcszF5#zd)N$xRG5E^fU&oolzN0JFVeDENZqR3X98WkJGl55UfFfS+ zhl@(3DV$&@cYs4?@Sr-1$KWs?$zw*gI3|tXhWm1)*|lNhEHCKUQ{W`>2z!wVN-SVf z?u1DOZz7I8DGICf!#<(u^V9k=XzltRjXZ2im|S-#qy%|VPpR2@+r}ryz2)x)Qh0Fo zp|r$p`%iK9y<`T`=EJ{u9)3%p%v4u~2R#CnCOqlF@`ib7#g%GY*Sz`73@>?-%RaVu z_PW*k#()|w_QNriUTSwK)FeNi?|a_hzG2~j3c*STk~%CpJ9zl1>kuVPt~)$J?DI;k z9ps;qsN=J22kS!t?kf`=Uv>GXB!Br>6?YAmZA;9mcJ}9#CM$kDppmWBO+G@Gd6FAo z6T^W^(0Ow=q-dGfFl9ZXmjhTD|EpMwnmx@Juvo}#tDe~wOEW~>b34f05#bEJ_{8qC z!uaiJy7qV2Xr>)#t(WBV 86QC=*vz@*Db@P96mv=7@4yov8=NbP!tPkWlfTKv zF0{nq?`KHm*w!+dC1^5fHzHc*+Q7ExbFY#0CX&S-IzsS7ug#`**zmYFG*WJW>Qo*x z4X1XX `P&oDi2ck4tLgT62um*G)4XeUwS z%d_aZH5z!Z;fG$QuoE+zm6Hj4^{k5>Wio}Q;sq%fg`{(*VES2#aXH$zaJ=cfCG}9U zV{#Mndk+R$iegihmF%64o8#>GC3|Ncnx9OwpVdFEOkt-6)SHJ+u;;;Y_v~p`T78Uh zsk%Ih(P$7}D_MY@JR^>LCeKT#FKW>qMd(vYMjg|M=bTc;iK-Y8#?AayUM|Kh6wO$j zVkAZxioicNoim{{Ws;&V!y_K9@BZ}?CUn`j4?V$z6b7pzIOZXgX5{)SEC%(cPd&yw zA2W2C7#M^Mpp4T6ro*GTOIRd7g@r4s+J26|^X^E0gzD3--<{gV=&W7*J2t9AyuZNN zqhvPVtlO^Km9gK6# sNln_^Q>BUV+WgAtSFC#DiFRkCCyozPkR g z&afV}HKk)#%OKi+TA6nPf|tf=C_hWUi31Ds2~9z}!lRQGg99%DRL^YJYlpx`+#PPy z2V2ON<#Kf$@UV xJ-O%)AP))$9ZJd84t_e*N(VNHqcp4gq-O&JCet5f%5)8;4B z%JIXQN(^pR|9Dn?fw>R#F+z2f@YCQ!p{YOjE)_onjLt$Tn7V>XXMr&Y8H>yMqgaW4 z+)H^oeoHLkHQ8Xs` (GhJ(KLn1$JaYMy{XFGjjaqu@AjXhCMWg8v4W|7yQtdz! zalBbv#z62Wu2Dcj-QO$Ic|)I-fszrg7raK3@YVftL`XfzRkJs3P|oB51KL v%KnujZrcP5BEfRx{s<{9Q%Bs0=5} ckI zLn7nI&RXQ!)bJ{X5~C#EC|^UE%H|kHI2urr#KZP5MZ~j`e{Pp<6}~HxC&SVUj(IGI z41vNm)eu(TRM!h1Z|7~Xa1wC1bXSn1Kv{C)Jn|X{TrkWVldYa=SZ$ptDn_sB%s!s+ zEwa>D-E^qbaMD9i4ZDdv%a(AYN^g7~nB~)>wLCEI(2eXM_Kk0eTYbR*W4 _KWbE8#Q%sScQ<)E|Ce$C)y z{kyKiEhxr|uJA1T&sGvo?|Z*SKEE{VS1;%Al8vwrx%95t+E~8oF}OQ!5FKL-F{uJ~ zi1)7|#*o{rlaMh;=*xH}_4P; 9Ew&P=Yjg1W2sy$;KZSNn*(( zkw~1`C&ry~+5#5pN}ZlvLxGpLj^x^eFdpFuXPzn@_Ym@&Jh1nJ8~v*j92+uT`b$(- zD!zSy#5*?#?6EHn*d6%l0+u*Hxz?}pQjTjc2?CK92jW`-JT`1C6~$?NY`(Q3IMKFv z+O^JZQArh69kz}f#Ec4wl%?1pC`)q>_|>z$eJb)mz+JO^WMQ}}Hr?j5%M~_5>C#|T z=|udyU!iroQ^`OKrGMoL2t 5^t*$u3v!7BCyZcvCV z73`Y)lg d%O$hvODC$UOPAUpnT#l lfZ(H7t}vT#gVTrKWlfp? LGzB(sQzMELMSXE~-5sfWjlbNl nM1zk0y z`4u3&w@421RxfbVdM4J7yzW`_p;cBZUgdk;vpABz9{jU2{0RJ=tg9>*J1w-ppRJW< z9m&g@gfQD=wp3px248Q}gBREDUYYw&20HCG0!Ozd+KoZ5M6ke-PyR2+CO^=))_A$D zaZA3@g)Y@!Yw+J*r~^3qt;4c!I4lV?JZtkt$PYKkHWH*PNx3%VJY`b#Ni=Ny-c^#lWTZM{t&Q~pV(W5lLp`WHQf^m@cWW1>=XF~h*)A1v@cTEt|5 zmL#WlNSPH= zA7C*K(qxp5y4}*zCL`uB+S;muwpK_8^NYP&b+OMR0QyN-*r*yKN!4iBgsG}Hs>+kz z*b9hUj5=F`L1!x}##GOHV^3;4)dIkk#IQVsYbv-ml`TU?Z1|zqpOA+0iXG+tRu}u! z+F~!v7ecnyV3n;6e3n!no|#x0-d4}rzqGrBKJ}w_pX`-zur3w30Y%=|*;1o {_7-bx&{W%fs)TsI#gsL}|jmms{9aiKn zB~?S6T8jfEf;D!+kE&3W+s#iGAWX7$8kJ)tsT^%Lp>UgCHR{iqj3Eg(Twy4G!B5CU z`U5|jWMXZ0vr2 $Fw7ZggBuH@c+heV`MXAND;N1$d1+$*SP8P%! zRor<2o5g^2P*KIyz^A>j7hcv_Yzn1^?GjcPTOnni)u!leh759_IFBTL)XID j;R3! zd+%7@SFGU0r!Ai*L3jo`URq!N-INffr=VsV0Rj>7R#bk^o3}qKZ$ABJOL!WjQ*#T& zh2z*V6vNO=78SdV0gGavH?Voyz{D4bjImJSdab!!ukbe4k)-)%;lc;(GG{X0^h%Kr zkmAp3Rz2E4MyYHKAz=sPZc>9OY-%<{FEI!;VE+u}qGc8|kRixnM{;J4y^2X_r}7GJ z6d9T#AOXq|fh>etgF)8O-MbJtmE`noe`Kj|n^R&@7Y}$!YF}J$^UX|Lmtzy7hSE_F zQ96zyB1evv;?w9&dbK&(I*M1Lxly`Hza5OhSSW*DiUP;XaWrb^Nlj3vaWvWmcN7#T zmU6I>yr^Y!95c6Iw57TlBf@+Gx7Z6o46l*fb74Ub sL^)A<5zd=;m&NXKLaPK_Z z##=Ijj2aM0sE9!>lNuGYK!s4fVMaM1&X5Un%Mc`w9am{>P*?V3)DZs7YXSq8;f0_9 zX`P?!pUyx4dt&v?sS(RJ I*x`DIS)F%P%wg*^t4<7u&|Yu~mtdV&ynJZ~vC>mC1gViYJg7Y8Zg>hfz{rR{@2> zO-_^BgT#Qx145BYTC==kSWoC3q(;wax6zb52Tu#@B!cI(YO@9U10>t6X6zyPkV#=| zz}|ZSV_`wD+80d0rn0JT4|YMV4)c*QF3C~dUgIXUcBw_7H4|nvNg m)3f$&=ZZcF!IlN>uze~ANUx?n6BU|%VKuXHBKmSl zXv=%5Bv?ITsmVVODxzMG4<2~7LOk;O k*opLJhoiW+ zm?o5D4^=aYW!p>Ne&<^Rqu65lE@k*tVu#Eirv-!+95E |rFSo2$(Y25sMa{o&c1N$k MdIfG z5!r=x4u7-JrdzD4hmESbZjobyYa>BGkdZJF8$n~_DtWATjL+oGc|MHuXK;z_1k4S7 zd}hpiYYRnm!h6zQ+qa&I6&1GMd`a8HJ*;jAKQ)B5hwAo(j)WW$593~4M5$6&c)kOI zG`w4^_Otx46%v>#HIrJM7S(9S$T1xvFiLHRowVrN{IMQIpi^3jg{7*XQbdO__S2M; zR$j4LB$rfo%79tKQ}kKl)X2wm`fehKXhPypyR*!p-^{!sG%}mA_6N42tUDVq<`vPW zo|{!lz$kKCJzgq$K@HiI5nlbV)#JO~-`mUCbFai#pN=fhgD49gh82&v-HhT+aq=#O zur}6*tPRBc3~UJ1+Zr9Gza*c7;)o}P)9Z=MpV@9g?)nz|uZ_lh;K{GhRh5aVkp#~? zD T0)!hIHafa1R85#g)z~e5 zFbzf&BM?TbUZi?x`CwOgdEb!ArN%_m-HQ#~g?CStVsoI2Vp7=Eb^)BAH4V{bW9^ zEK24Y&HA+DYzOa;$K4q~(BCcIRCk|0! c)b8dOu8q$V|s$l8T za%3)hx~(d9QFwBs#yt>F&-V553(|leY~SW6pwV|&ayb$guiT}{_bgIh1S|JFo8mh> z`}M6{uQICsDD4PsrdJttXw*AOqIXKkEYf@qmSsBfnHBag%wBo=)SjGEeNp}^;=H`s zy$2TNM&AgK4eOZ$u#YsiuHUHXTf2WV^YWxRt%S_V`Cz=&3ZiDV^O4QpcAsmu%H8_O zP$O4;yZKy0qrp3yH#0mvDesRM75neh4FKXgC314e0Ru(u`rYT6kbp?fu%6?#j~y%% z2F>SNV4)-;#AB>Xepc|37B6{pvtRC{wz5rNPa~IXra7^TgI~(9g7+5^a@Syjg~~D2 zD=NC37D;!r&gwAQ9X_v}G;$zzu}z|)qYxdqQhp(;>?Sd4P$wg9iw3Pi{AbX!f_GRY zd6HRdi{x7d{RVd*n53-2s+N5VCMlvW@|nQ!&p`GoEExOZEBNCbR F+~ zmOcM(-GkhEGB kL75xw%Yclo}J#^|81?g)H_1f Dlg`&QPC19F+iF9N~ZjAQuMVR;EWo#9jeo@L2jXPA@0k4-)Jc#iEdEtKX z?XGXykGROXItp)toP-d8fQZH81LKblca>qwo`C}~e Sj5NT$k0x77X-LmaC8^= z_{kFL+vu7QM!RhOCb~ez3m7Z1>FJ=)f1cuuZ`!uH3EahYXAY)QxBkUNS7f;qRQ)&6 z|Gu6PVYxznn~lR |nKVu64BWH}LPp%@4?7vX_t*wI-QFOLP1?q>U8lLG5> z|4=8PsbQ<^E4!>irBbvKRbnZsSngk`a@O#{=3T7Edi!2mlCN^I 8xU|81)2 z_noB9?71n`h07KeOey&WNs{il|MHFInb&Hkw?CS>@*49s>>~zz??t0}3ypq#O}SXs zxgVoZUT-dqT=IEozU<&TnK7J>E&+guOgS<>EG3AHa_7m_|-MiwSuC5HM z >AShs>?WmCG!{TqDyC#Pl|)N_$Lyw)AcozF{X8|7{8*k2lj{)mLd(<~ z #2Fyyc!_YuB(3wSr*h{~Vzg&C))4_l!&DJN;)o8_RqEhlQ@S8ad zW0_3pY~jN^Z?=^)Dl>f^QswjXIs8KYQ--V}!a)>bMSD5yy%=3g$Fhu^Q3 $zF (In~e$If>Qg<9Yy zzSONUI0+(^;+fynf}5b)J|W27<&L{Q39flC&o2KDF?E2Q1~&`Ue#{>`imNrSleCH$ z7DI`EV`Iez`5Q(^Zb9sS>z@~xnziz<*{td6)Bxo)qQ|0K-{i~Rsqb$$ICNgN)cTg6 z`0PPLmCL|i8P%9^xRWRrBP}XLCyHx(y3}SD;`TW(!fh fV_%v&eY>FPyNuiSvz-psHq2sGMZ zNqCO{aUp)aQR~162Z3pgv NhqoeydlovCP|9|DUPPxdaQR)$s?-!$} zI9rvQ@u-udetPST6?a2_hQ-^VCbY65ao&9 qU9rQg`zU7VSuH z7hVMkGp_K1%{5=R1E$ZX{#+~B9g__eWi^yVG|j)%of$(zjH1&I7V{a6Ay~4yJ|tNM zyhTvzbA-?Nn*M 27B65G%U~%8uC$ zxM`Ye_u@^*fW$5KTFi4}dRw MBKHpDA|Ficx7h9#J6zcA4afQ zFSLWtHod(A5)A*=0#P>aRhDoCm^E--+d5&yaXy-ntI94G8GrF1CcV eU1&9d+Qh7LGLwqHDzg zHQJ0}pPU52Pfm{ArVWnh8#i?U;yRde2?g9~AAWL*%69t5 sU2Z@AFb1+I<|ghWE*-$?&0ByP0Z`jtuvxPJ#3{>G8EO4XiIc z&sk$7u9oh9lj3ISP8mH8uEp0D{5tlP3;tQKP$G3L{Wob9MxzF^S>w(A*jPy0)UH6G zkXTx!=A3Rgbzt?9RO^duto(zI70aY91@COrsWnqtp2)<&M} +C+|PZP zntz2#yPVHq$(L!=E6LzS-qZD~_gL<+wND3ZZr=Q~?;Q$JCk6T0nir~FUbuMZh2Z7^ z_VOE+LDODOf-m>4zwUcP<-{eRBP@LRyD;VBaKMeHQS$OAwCgb-dOv;d>B76EfbZ34 zQ_^bqE6)q~L#JbN-$h>EBRyW9mUB8%g?0?<&1lc%(w;4@?6xzgdY%VY T=AgPDIFAZTW!ay z q^xF8;24~E6;DF+?EgjW;g4KcK-1EaE~jarRAlWpci+` zfpgK(rE#_NMA==OJ_E0O)SSHQZn{DE!*evtdg6swv?cG5rFE$8I^eMNqy!aq44$AV z0lvEE#+t6IKRy-tqpL M~(mI0RV+%>~2 9Neuml>_ZWThw%w`wd%|My1$?T{G6iS>T+PhBd>$!#ula?}fubJ{ zV4rOtRlpN99UE*39VFQgHrt8jN9N~4=jPmu=^wgQIp08Sj{p}IJs0#Zl#=#^`nc#O zc%u)j-W@m+r5hF_2v5IL@WkXY*u#d(!{( |j?Hc*o>neY18slKsuU*Mh(0R@dHufzxUvPaLW9Hy9q=0%y2@um9`DC30Zdru|> zO-dh;BzT#gD(|EMDK-_NY;&Q~aJ0U_I~GZ&Feo5{i7gej(9Sii>p|CQ>`Uc# _0)Deig^PU7QKMDtXAx4|J+>lTsj}hDy!_>kl_gcj`;&TtK-PL zTF+fwD4794*;QqoeoFDhgCvxoeahByVZCCp{O^VgZ=Z=zCHBDB$=V^nRC*KmPmSUY znek#q(L*HFQKk_{*?V6?(s)U~V)EiSEuamj ukOhzVrZeaMP_Pqv%|Q z7kzvG>~-~TOd=9}S8lTakTUU5?cn560xwhc#8`5Y8;bq`3TLvP2zs-x1rI#Mc)5Lb zd)ChK1U|Vv=2$uiOn+z1>l?r#|4ug0T#`?7)BZ_j1>;Gq{zWyNVNUgL%v|#dhGoGQ zil@_a^WD+Gc~zWsUR d`tZj=89ig^ba55TAFe+M lYR1%kVT~s;ksn!uxNfy~z-WO+ltc9VnGqo7}PEW}%`W>QZKb0nM;y__%>G z*7i+jQ}|qoA;>I{3ECM&*%+lH@7>3R7rl(^0}4srW!2`RoniBAlz6?9)t1?Cr{$>f zdo)OcO}Zvn4cuTwU@Tcv9i$~0TrILmIJH_Wr>4GnB96J3Z@^740WM1@wnKU`E@bPv zOfd 9jQj;pq5{p{sQe zx*Cl>S5YBW=H_ulVvh4m>>dWpxr;VET|JJAz=~i9ew;UXRo)#?A2?f8p8Aqs<*P_f zE1=RW#y@^Fe|R0FZ@)D^{2thlUL9=g=4vwhI@9FPeC-(R_Fn7sd>BC%m)Y>l7iOjA zSLou _Ic}}hHXJKs)c$B2QgB-e(?8m~hPoK1~@$ZaaU&o zTwbeGGL6%fpj-jJhliSJW{ (?|{nLtaC{g|npD!vL;`}4n zNDjI-H-t|Al$3ETL^A>s7Fw>7-ZsHwW$I9=7NVOA$&*r^9o!!03al?t= 9A>Xo$?zNAMzq7F5+; =gfG`N1U2c|- wYFUB=xT_&Vp8LkEd839_3_igmPh@(&U?F@fPDjg5ue-Yj-5|mF(4ZK zhdzf3y}<5$;P}sp_I%S_UCmQodOookaK(=I^{H)lgVB5OSFx*O`o?>%cy|)AUUUwD zT+du+pdANkg+~dBMKF3dwtfwl7O@+LL&1*`oh#W sc&&9O `$b$d1*2ggICC6R+ay+* z-cpIENebaB!z2Rc!B<}bSO4)AtT5LO>O5%~)>g_Ig6J#U;`yw=5L61=Eoensty0g0 z3u;Z=q@Z$XlL3Nx5QFKqm8E>jHCViaL+b-O!)jN+?Q!|lYQK`l?F!5lbx5ThMQ6`^ z>IB`UZ>*k3GXhqI)o2w^KmkRspjV8&*VuEAj_ASY_%fy5ru3JUnL a=;89m~tW5m#2OEQfKd+VX_l7h z89zzSO$C~L@W^90vBK3aa9$MlgXuu=NYYPkFe7wFkS;^Qd%8Q?ivrs{RVyQ%wx%WY z1ug(_9s{t8VP5&mBl;2~ZI@eGo0~(Dk~LNqvZDtclANkRdQdu`w @1Y>^$meJUx#9F_<8}L>%g>d>B?n8R-92unrIU@aeI~m9C;d%*x8}AL4lbLC zPsio_R-rjwwP+>^dzQh`6DMdEwQAq1xm6(an=D=`_qa;>fZJzsd-0I3%)nD+$oC?o zlan6W(b3i(*4_qhza4Cl!b=Uh2ittIpR1VCZokNC{z-aAr+|gYsB}EMtvHK5dK$1V z*70x*efkJJE0PrBaS%pF{j74#)RORpG+DF#GYWt=bjntWi;5KVIodLJ$~|2`2N-2-oUjCh0`C)7|Ec2qM+x@>)rdJ@bgG} z)b_xPl_VHSIJ`bk_WhW 7nVXjg+H`E}~;RE>7h%Z~6kSN@^sZwy!%4S@The4CRUvzqt0i zYiKwL#@`b&?nyJH{rs{}k}&^=#Ka%wUoQ?gp)T(2K74+WnfOWK{;I-aWS7!qyTK?! za|~W*$yXzacK3MPuJbc5>|T3V?8l(MIKAjU;qc$}$3JE*x>xw*yz~m{Ris}pc2%M- z9*H{)Kh1Eg9I{LEG`m_Ey3Wcw3`XSd?(w)?=X1>6YwykZJ}5AD(|@G@Y!x-$&$_o0 z&llS)P)Am#9UQx{_{c8JM0T|@bX^T=4D7pmJZ{%{mbrWFBYde}2H@euG6WkZoY>eh zGeImhN5e_v{-p>;dbo&6x^<0LDr2#j15*aY(tt`Wtx|5KvRdp`tE7P+M&RGs>8dYn zsbhgr(FaGUiK}a8`*Qbw*X>}t(N?zo)7MYo)|r|6N3? mOCA2hVpt{`K$b zqlJ%DH(FZ*Cir?s#ZNEZu;!)aH7%L?W#vydFMg9e(Xmb8#@h0y1QQPA_-DWTgrpqG z`XYtRTdU(Qc=hImb2Dp@n_q-StdS+i*x$9S(kcAtTOVv)Qa%O#*8Z >(s=$Sj+ zj{v^)cE1jiOm%b*a4!yhSnKo5L4Fcu-U}aX+Ybk#l?ffs{|<2HNP1`V*8Omxl=hOp zD&R2Z03vq(u0LOXJx>g ?x7?tb#H!%^S}x zNk{gCkDuH{Gz5WTo~&kknb!4eC>H$IO*F%Gw=>R4g9{6=3pYjJWG)Pm?`deaG;o zYbI`~ZWk_p)K$?n%PH{jD|fm)ol6$9;$1q hen2tHo@?0E$7WZkx)xbPz^C)^Xx=@Mp r)5-AKwxA$DtN)A!-60o-#)S64?$56Af!rF3u;8CMK|e?*s(A z$sBT^91Tw76NOVfsCOjk=-wvi*bD)t;xJvki!`lX1Ig(?ID^b64Qj0THQr^4#ubwt zI-nC)(whi-nV8|gl6c1&ajhh!8w}@`bz(inK e|uz;enx6rPF+JCT$C)Gx$BA*&>x{aiC0ZvsUsP%&_M zY&9wb4|*Db_<;)BsYxRD1jm9EA#OevJsBBKTPqY#-w<^Y@QUH!65d7GXP)bYanI41 zK8LvENZ0CqcfB@(aiqPv)8lR=l5xdOj3IE!Z9WJs+nGrJ2s$8t1ujK~ ?YUwzYd=1k71wWaW~T;IViJ~5L1*9W*`NU%gW*73sj2km zY4rq58KV4U8MM@Aq$j7S(kLSt6*&P`c2UYhQ*ws7xPqkx?LC%c3xMrv@spIaUucx; zlLnJ9i^`uYq2~b+*Fs4xJ<#aUHGrFU{`2Y8w)M;x0AJjr`Fbw @>sg>{K 7ctU7G(=7EpeR^MIMFL;p0*=dtFJ)BXjMwy#Qf{xvY8GVx3xgF=)OsjSq% z9Wnq%T6dX6pGUy+p`gP9bri43sg?9$k$GyfGoI$-5|BR&ONOKiHm9fFrlfD}t?0d$ z$*ZRqd;l6AQvUw_FFSRCX+gz8SxMHzhp$?4Q~sb=WaibL;_3BS{Yz?AjM%-4-qemJ z@kEVv0!#*~H=3-Fc)N8gZK+9Lu^{>0g7j^RV@4tI{UmS*^N+Nk5#%fTM)#%zE7H;{ z-Z6{G%uYsMMvBb^g%!9S2b*COCX2sbg&Rhm(e?j~ps@OdKT-*wQV5+=ikt)o?p9A~ zM4nUceonRL8L fMxt@)+AUduTSvTXYU2C99g81D}uj`stE!$AuqMK~r%;dX&! zYX}E5aJlOC#S-oT925YN(0dP3C@nZ}zaVH)pmKo$0Sq3*jRF1|L2uU)FCyJ(-w0zy zI_0N>47(mNILc<`MTSSJ5f%VBf(U>S^f`su+F8*^r>}Vn4Z#&?VpM~;i d)Z!$MHUT4mNXY7i;xU%B(0XB;rVp->!8ej{KO`E48y%1j(}lI9YdJA z!ObMe{*0%rKi5e!txxPgo`8j55bsR!KP(3W)9kZTb32&%kloINh9rOD$QB-erwd?a z%lUS`oiAscD}Tr}&E7L-Dk`wh*(#Z@m!CL)o)0|>E$xRLZs(hNQ3x22000;&Z*8+% ztyUr!W4F#*0qC-O7z+--P6`%2Tx1!B7O#i*vaNb}wpEWCFCQOdJ tlS^rPo(<6Va>VWdCzqoY0 ztT}-FxybAzT&>o^JaVuA_HPHVfS^WRNkRXUsXzU(+L)J$7D7P=dJD8G@C1qkEG8U2 zci1l@6XA+mw0iKrWJ?JFV{1CFAtP Ois#j0?hlqUKOusgX|sT8yNNbWwrkz5cIyePStk1keBdMwb za_cV782ddxNKAsK5`k40WjXTuyp(2&{p2V!$tgDnNf$M1DFE+3>;KCdNB&&Z0l9UT z1N(Q8X(LvpT37}=20mQ^$N7n9-)iprcQK*RAY4kyd^tFc+Z%-_tzZH3CQNc(HB`t9p-?&I zqC|r_agWOSGJFVkb4HEbzapD>gj-l@*lwT(1!Rpk2g=2S0^Os=t$o^{^ujs4t4|hB z3f1NDrV>bCj(Be<+R0K7H+liucsVe5&J74#Xoh0lNllYY0@{B0ewMro)~2WDDJw=Z zd7itc7g8kMJo1%*zHf8_T~5uz D7|<5A;T8ec1vLQgMftiOZ8j3A&ZGj*Vl0Vl z`U&cOo{ZLnMR zlA4HWxX9xA*ut?=$f8n1;d5vbqD_ew}52T*}*nA^G+@A!tNdH1M&g7 zA@iDk1nPSO{=F?ln+{!i^cieThWQ)iUj&)ArLCi@r*B}G(Wh+xJHxh~+A)8R|97$2 zE+R3`hcl+#A3DvQ_254r$;MR*r-9AVDkqZCwXL%ePRz%$R&cJY j4VZ^i-u z001lc!2nra`TYhU*8J@fh{5gsyrYB)(i#L&OctzSjdfbb;a^5pal7vL?+rmV@H?Ms z{tgHPzJ$Jqf4iY(dsiU(e}8P%R{FUCkXlL|1m5i)*e-DzHM!lrz|G)G+Ij-`mLfAH zBQ_?uVh-Ok(cWLJgVgi)WWTcg6+s5E==jIxb`Ltfa5iP0o1b<>^YuMnlNIY-OA!3^ z=lj8Tg9-gTKjFTdvgeZj;+Nd&`QWE|FGlTK21`c_IOQMzaK4>*EFMC``6CC>MJGfX zGht6&2<<@&Xo-$G;R}o|Niv6HvL?KWMUSM1Gk(4N_v7Kw?@0A;Jy(5o>GGGG?>D8c zbo3{mZBshc_T7Z~D)Dvue*b6m{~xz~ ak@H=M9&!_lwcPZa4 HXzmWU?ga`>0B)aZOgvxRFA@x(+%Pr1LVA z>!Zafv`a6vn-|v#RFP4CKXdIoH>u2z%bK1pqFz{w^}RGdR@%xUlhTLlR)dsLSKjL= z-1ck*5qXk=oznJWJVWim>xC75xfr=D{SXnWv=BaW!@_txWlM<+UTq+uV_eQg1ev z6i`*NQ=!cBG9o2nQqOa8M!mJYc3_>tdox)whAMW@1qgANV#z}t4%xm~uau2p%9OAu z`OPR9rBSYRQx33; *{TA*IavL8hci*=CFv)D87UF&gTs#4sg8ieExs$U!g%DWy&nrw6gpR#q-4 zpuLdBepx4ntqf{WfzkR7DUr*br})nQL0HwABMo0laxQlEwJ0@>)A8>+W@8s5*@l(c zoNV$zl6ALsU7FQ 6RUGOofzNwmLgMMb-3i@N!-zm8eQ z>NBYgH3re#W1oo}?WgWAk3Q>a!` )2 zUl$PNyf#3GaYu2iSZ%bd5YhaH>lkF^ZS6z7u{#<$fni9s>sBVOBr2n~?!Y!s&!Qk_ z@&p}bRne+vt9a H+J81e!Z7WI; z??PKn$L&grp&|D$Te8lVD%2 BW`M4avrpI$yv8qdEFbF)-ZNp&REXgD@Im@$@E`3YGOog`NBi+U*$~R+M~l)? z6pr-<>k4uvCX_);Va`;$GVS6C`+00s%H~IlP>wSfcVwKdR$9k?1+75Y??JcsRG7QN zeDpy?_l+>*r$URzzU^pVbQkCha;z=qw07QattwaN>+X SMR8`7#;`}SAFeSX#hU)Xd2ps%Akg9y@JcTw wHFWtUM@kdE?z1usb zvuVBW%A&`MKQ3@QiGQ>yLX&IpevA4FKH@ca!{x~;T3KQB(*CHNLb?GOnQS^fx%=L^ z#vDF@%#pj2MJu_iL2d5OYNPJTrqxShm<1Q ASDen`{1f0U$vZwiMX9js1A1H5CWL-XJd@~$#Od2s zCxiFu+4 ?d&x8-9Fn)UHf_u4jid|Pi-716E;QJkuf=v$O z9*$jyXVX5_Wh3PK9pBzeWa?d5+K$k3$NGC*560r9jgWq){A*XYiov>Sb I`TyHH zzCA{zdjdLp{G^0@SvqyoIQEPUw7HF4nj=m5vEujoU$(xEiSBW $_AF{1ue#9JO0E6l&kh5Ew*SD`Xup*HCq@Ogki0T$E_?)wlWDG1ZuO8SJ?T{} zPkitvHtNt}v)$}oPx{zj$|4GE8ub`6rCggq7c5xy&|8Z^j%4GLd|}Cu6w4E-AT3^4 z8CtHZv{xsUt_PYZbH=fAvx}HwBQzRgGLa_L 931GgYJhz&M_ zBtXBJveiqz9X={o{i=KwuJ>!J{$2<5uWDAa+PvAT;~RXF)BH6 ur;KH ?j$c%I3NdCluRY36;L#u*&rEQh?~ zz>dDZca!g!_Xi(F52LHmOq7qvNRGc2JH?)HXdEA(h}T8jpA*MKtjG|9;)0kH1yL0Z zp^IiPCT*pM43Tm2q%4uOvQv)8DY+z@Ary-0Y>?`!ed?G>RN1Oj)u~oBpqQ$x>Pk_6 zKl)*}G^f3Em`>2yx>VQcE xRC({YA_vc!&zvA9+-rAC;|-{gfSG0 zv16QRnQ3N`p%`})Y|2cd=`q9Rnek!}l!<2w=?uD<4$)W8x6m89qwk}iqJkFsnS#j* z4|%~CGbmQ`Afu2`#!xcMjCG9N48^F7V-wEaC)XA1ea4t1Jt zP$lV({|{x`1L zHMw3l<51V0JgS0hn@eY<7uHjoE~k1nSFL0_vXYFMFXwwyvNQjP+Uu+*O6N-F%iN7S z K|2w^=%uJD0os-3#5G?s_mwq9i2}MA9YMBe^|ENJ}@dQ#veNCEX(3FFhr_B+Hk1 zWou-A%29b({+yyvp;2s7{H3HRw XB6sy`u=>|Lz)?z?Q_&=ue;*9 zkNDu0MC~)Q@ca^cxDD#gR9#2IUG92!d)}7 vppED;^i}i| zX2$knXR#~TI`+jHV_j%vS|wJq)o1OqZctwlyR28NOV(G`uQp&Sv`K83t=Tqa+hW^k zd)qE!N9`x=Z>evuU-2ZIgG+H6-iPnP-zuP^u&UZDbM!ejI~E-Oi9Tf$(M#+l7An!2 zX1k$sN#%)3X5}|0*ll!9J4c<*T(SK_GR|#rFLA%>x#C&z?()9ld+h7e-=%(d>-?Vt z*aG{j7FBHtCIm&n-r&mM=HUL|`QWwSdbNDDy1Ki1TlJ;tZ)? vaEtemD(B;1x)~0C|xf?La-cjK kS*Q6ahoT{J{f!qQ5mbV?#m%MLjsaVg74aaE+s6{I#PqYkOFs#{H| zC8epMj=D&THLTZZs*66MD|DNl(6_XyJ4R%j5gWv8GMyRBNz-gb48t%cw1~A P>!=@BHA;_!>X#=Y7pPVJyT! z9MG^UlyE+@gpn{G=-|Y$$RaOlqC2v aXem+jcBLw6enRq)3&73u~e0M(p;(} zEzf0}%d;_W%uVj|<=mfdmzlDvY%OO?M_DRNX_a;#>f8F#AMLC9uKvzwe6)FVZ?rOs zYO+q%irQT#>ReTZ$;n3_4`qWIEU=+Xe6v4VJYJiF0`i$S#0N?c18RUkWL6&=*8w$k z(m#&pK?-c`m|Hk9pWYL`1RvI<&s8wrM>n3KAK$b8ug(i>2adqQHmKq)RGFYv!b3xq zr2*LTkj2^JxE<8F&5d*QtmsqtJur#$AXXiXDYFV%6MwwJ;T&tU-7TYi-hjl5Ze(!_ z^dyUC3NQWp!2EFn F_6W=f0FiURD&m{#@TYcTQ}HodY$cJp zv3d`godsJvTY{G{le`VYEB`XNCH)Bb^mmL6ZD{UJOJ4;a!@s`wlna 7PKV$kOkjqyP?f!P){&~xmIV4lQbiS9Nb*;a-f zC58l_f6viZPss G%fy ;0IDwc$wbNYCkc#Gna=*yEv#NcK}2Z=7bHz8t8CdqC?~q>Ei5r zru$DzPYda$p1}-9@2s z-CO+Dix15VVIO@<9Nkf9T}Pkjw|A$&C*TNoVd=eps)U}LDM71W=Mt>v(Td9$`eMDs(!1iO~?tB))~KU+gUc$2D;a< zJ(bcdWd{Z(YRN8PNBSZn7KmYPb#BCQR>d?O>80XuMQW%D5sr8*UH^?6 @D z2p$sl46zOQhkplOVzS_?F^eM)m9BYc(pZ5s 1xV9NpH=EA;Wk^Xps{9RHb^yT zZf!3fVv-rAsKkW+){?t$5z0kKNd&2vW!<}2Hi-olI^-%I!dcLoc(>yOl!_8m>}&ob z$C4oVsDDIb4`15GNzIPUR(@2R0KVTXeS_5a_BS`@&kvZz c`%F@a(I1KMVtdK1) =S{B` zI!?P`?sR0d4j8rbhMA0S;8Q~2KxvwaBWcHW6dv=w>GP_DaeAsp!`&Sz1v)uAXUQDv zs9kq_nBtDOY)d7`un>SHil97_6nT<>9@Qj7X-=dvTpVCp!_zE1=&PvJa*+6L%Qc$d zr+rIP0h$Ln;75U=B7_0TD#D@g;`67(jVj{a`nzNEF0P0Jw_D0e5_hxgm*Dc*p X&fmdvO4vkoC}5=c~yTNip;0Nq5m9UJF+;SRQ86uh=0-tCh)jO5+J0pRyP z)fJ6L61=}b%!zu31!Wn?@Tsvs*ruwv7w?6 fQM( zl }N&>SmM+Y;H$S|R0f~hj*Ag_N8Zi1JhUC+xwDr@Q&rDeVO6zgGR zGSY>fQk<9ifY)>D`wIt?(FvONxN+b=Q~U#FP=)Fer 5{mM6qfRBDbe~tM5`|SwE};lTVL?&Y1|^I(Q;D)IxSeL9 zE?k#7ZZskq%ym#J;!94A9snJ>h}&|c01-F+Y@Wmm2I`4^Smf3^G)?qtS6_WYzW!~g zp!TDPPauD@UYo#5&M4QM4&3`ntt18U_7TsDWz<0R11D(B+#IbibB=_-p0W!<_MfyE zC%l9bp7HHQh_b62nh@e(Z8Xky8Zlola1nJu^)n=`aLg^RoHR!{MI@{qQ5@IS N4)EcSCscx9s zBc85ULcJLyYJ3gjsMow^1WYLdJ|=lP=oxlKj2b$8H}1Kb=D4vvNkY;LRV+7iimn0S z!@ebp2{fw;Y3TYs9!G!@`aK+A@BRWc-;MGcmt1(owW<)vm3NN-qp1f<3`&}+;qJbb zRnWX-!4vaij^B7Qm$rf0<}}Q46oSNA+eJg60CB{1a4>JN{&l*8#eyj9dA89CJl}SD z<2_JeiGHG2-A_yRew22A -PQiy_f31iA-r!He)t3;MFCh?>xAc#-gqK`8eV-PoGQ8>1?y=l z??8(E*6Sy}Dv0qRD`Q8xTGdkvGVl=sqPLI
-v%~9ev{`7ku1A;I=&Nuw52B&rXA7G|swV%#A~wm<2ke z9F5o1Ti}9Bl1C-?A9?3mLpi@L80dJtBK5I{v8lsLmphJ1k>oj>$adpO0qn_hUk{4r zNExkDqce45uyMY|I&1RZre35hz4`(+f_?Q>2d*gBLHR(6UW=^OEgXpCa#1WzvQ{=p zh~k%&at+D~LQ@r0?P-zJi{^Pn1>E2#KCkeF9x|t3+o_7eV1&zm& c&9tK7@|^_XFryDa8-)FANXp! zE>{}@DI ?d#B C8oZgGvP(}06oMd?81cDfsk%+%5`MP in-!vjZIXJ5EhS;1Q}Y0iZjw ZVwMpX+9GN)+vV4K z!X_}#!_}y;-txe~okY?wckR&qx}bLl^T@2TB$rus)n)F%Ig<*) fZ74;hYynH9GWMzis *&FXzV?GlQDVQ#;*g7KVw$~WU-!3502eJ5k9_ms5cC<)r z91R~{!GUaS;~Gpv&S_Zyc}E(GJ2+-<2q*E%D`phfS7+xh-}7=s!|z;i`Aui1@m)0Y z?svxhJ1nQ8>TkJ;*|4^x9j9EJKiGWGaTdKb4X*)k@E-Yq367C2EW*05F X-PmQHjhHYl)rmr zqF|%kAnA9nyw7fTM8SnH?QDWJl-Z6o3e@YL;3o!0|7r_X9G2x-#+D?SOA`~eH|%jq z>l|v(&3#rZ i4f=9soT{MAG>0 znyZWGJ)T8?RNKnT3xQ7C(g6Y(B>oZ!glEUqKy^pKv!D$Eh>6ewQ9Rp_4P17og;sZB z7{K5N^IKniV+P8=>~rbR0s6Y?iKCzu$sEu5td|Q;kP3&;0a1Fw>L=O;u}f5DMRwu` zl#f|mXf6Yn6^Wat=6DaiFGvO&XZo1z>X9U4hfo<(7V15CaV*4~?v?Fk{lA~id(^X2 z0I8&0u(XH-&cGUF&^MgGg*m^mSR9VQY?%Ry^A#ymaiNrxFuOkX29zb0V$Vzsoc)&D zhV)DbUzxj2pXfV-ytmy;&4dr7HROI0UMy+YL>qG0b8bAL_Z)Y6ZUA9R# {#6 P139V@#DuQQrGn7~!I+SeKfS=}(7e={q4wxckK&9I6( zjPbS*MYq(9H(coI8dp{)&ULScfEu=qlz2lA090x|V>$LCv)1wOJrmbIaE4Y0T?IYQ zJiF?;LJBK&`2Ka*-mUh!9lic(n2dGh@IV(J0T1{K?M6<85$tB(HqRaeyVINr0~M_b zMmxp8#6k3gLPZ?5OZ0 43|b`}e#Jts}V)21TC@LDO>paG4{+V+a@(ZkpM z_g{`tK?QH5p&8(Swrun0PIhmt?EZ->`iDl}A`zW`DvsUku+B1!g&lJ+fyr`SNJ~YC zpP$mZZv;W0?=*5`OF^ Ek88o3P=(jr)e2PCh 1lQCOwyVqI-}73v-rYJuvm$sGyqh0M@;G_c zp`IdtRgp*3diTPJTJ)q9b;?u-#`LP5L^xGFC9p3op;Y(UesLEEEDk^}#i3GXjjfg! zsqjE74KRZihqVyWM$~Gr*Q@KmuA!eWEfn>U2c=q?<83!lzV4CRjq~FewYLf=X%O<= z5`p-3VUr=uQ7sxQhQ*@jkB&)?1-QyYN9omLnV~K2((agNetLpi3*CZ+=HzLi1bvj| zhZo6>(^)*6g-z_gTqQ}xe=MkxifXvY)JPof`z00mdM_d$=t{iL@cWYZK+ve!)W3NR zRGX; =VmWh`PV%VO10J+G7}x32$;f@IiWVvuXFxYIIE=`l z`Qk2|yU}<|q_R8Qg#|N36*f`N(`|XMh?Fs z$WS{y?=@8T$Sp#n3!ISPmDSmnt6c2KT$uU*oV;rWY{9m)K@je$pXKzJ+e(*)H5|%e zt+WEy_1j0-@?W!!)cQG #T?Nh zL&kG<)zVa};*%2{-s-9<+&;yPwwr}uFP>MtGzu$>OXo*mTt&s_Xl?}vMf4heH_ZR+ zB-h`507khp8Z$sIT}6WsHXDu==&)~rd}fSt#~GD_ZVk0^govM$+Dr`IeRZBX0=lBd z1B_as7$bR~LHdba@c7T^z<63}TBM|Rf~6^c!Q7~P?I62cic=4P5eJ^d^8@lpf%C;l zyiyz6{l#+xnXCJ-IC;j%Vg#0bY#H`~R>z`_EwF*dE_fr9Z3M%9n2CG#PVB^1S4q+N zsni-`q4b1dF-<8(AIDkoVK#g-`l(oH(12qqLg*j8qX*ckL6wN%mbGjT0Xcc&D~7Z4 zOq0(umrDBEiMbleP~%g<_ku2A>mn*Qed}CL+{8}HMk$`ej<3IF6dYu*n-8BB2+8Q9 zIHvBsYPufW&trA6h@NA$iMkf}^K;h)1Gxi?B)Ekv|Bjl5GEEGC)W1(AfDN;Evm2w` zY_;R0;L!7byxrKO&ikvo@nd!lw6sA05>F-J3Ua%T45;8oPt-r!C&BSb7kf$6uOX5A zfCkLV$0 Va*4@3S##D`bbm) ze>?|p-5BJ84s_o#)-O3vhLsIgx<=dt9?Ah+OhY|@!^^f@qxYuIx9iFG!yJ2sm3lu^ zB7xUA025d?mQrkY;OSOoJsl};@r ocmS_h$j#lCx5a&1BHMWR- zlFox+ZoXE7>UWUnpujzlGGX%PMoFsBk}E$ZoUkUUIXYF{;pf+!SJ?b %Zoj zra6-q{xNjZlKn)QVn#`~z7B;fPL*->G?VVa^tyy@UE}eTYUB1Z_P?1cWrsMbA&W4N zEr-nB5HV9& T1PYc1(>dMN6vfu7WCcaBo$TIOxmb^F Kv4mf;av0i29YN)2AWkgB4R9gx^Ew-X5 zo#bt1>_=v^>?B7uVQHJva?-FNipxR>L#qvZo8Z7>E_`Ubanf(b?b_ag%PDk-8k^*Z zd3+b1(c!^DyA5{jZo8$CY^|Rh#B&*{{v^yrkPCCa!hYT9fbab$AzX;1N|OCY8d2EG z<`L$@^*iR$&OMS( PZ}~AE~h$qMCY(x4if` zq|eb-a$oF`2%yX1iV$f=fVmm^Yg$d?)7lLc5P1 epe92bx=#mYyDON~whAx;ePShkxb{7gy@suHfjk+rpq!Qo+ z3`bS7S=BOjk&|?Qnq0i&jF60oTnJad;|;&wk^)|&4Y1z^OUPoit>rYo3h1k(;4=~7 zQRMqhg&9gss2lz5hSE5Fo-h!RHeeT(9VR70$klmd@DP)jrrhI3K})4=!==x7E$pbx zeVZ(SA++bX1yO`$xI8ZVx@ymG5Uhnc!Wn8c>-A|t0N=I}9713gg@0>)E>yDspoa;7 z#^Inn^QCQY9A*%P$arpZ_b{7{UE)h3H{QJ%%FWP7%Zt>3x9a_h6O}Ho2p1#nAYwH~ zB;oR({X;p3ZzKuT<0r0kU-Ruf{NCjcug7zcDsb31*sC7xnk<2z5JV19dU`toDpUu{ zgpd%jmHhN0cvpRQP{2dHazMeS?%NrvZH+%qi#G6(+R8tTvIioM&;Wj(pHW3ZFjEsy z UX;W&CHgX&+;`SpDGFHX0+-F~x{trTY}O146IJ^B6RKf$N!0X}9Bt3ifj zzf-`?uRogn{dbqWbvZNgcNlkE!T)lvuYZ~NC#>h$t@!%IpMUXPPr<*u=3;wIrmM>) zdP3R5DLNuL%wE+&mB>YFkLoGgk*sbCkqXN&oB}Pwch`YO8J<_T+!i5d6Hkcy`_U?n zY4T};9VIDc%ymgEHO(Ac!>PQR8gr7djH|FCD$v$)9Q+xbeZU v^gWe|`7 z1n6=SenEiLo6EH<518@D!MDP<=eZ)KyjejmAqAnWr8+o~_F+b8xtglfZ%I+Lc5b1i zPbF-;9K2kHt{s0=Z&6ccJmqAxJKBDcMiq>XjyXR&K(cJX79mAwrx$4HCd2abP5XIV zJ%c