From 3fad138687d0f3f08d1035e7701c1e141ff9ca77 Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 7 May 2026 00:48:02 +0500 Subject: [PATCH] docs(brave): add Brave Search integration tile and logo --- integrations/brave.md | 149 ++++++++++++++++++++++++++++++++++++++++++ logos/brave.png | Bin 0 -> 42948 bytes 2 files changed, 149 insertions(+) create mode 100644 integrations/brave.md create mode 100644 logos/brave.png diff --git a/integrations/brave.md b/integrations/brave.md new file mode 100644 index 0000000..d058066 --- /dev/null +++ b/integrations/brave.md @@ -0,0 +1,149 @@ +--- +layout: integration +name: Brave Search +description: Search the web using the Brave Search API with Haystack +authors: + - name: deepset + socials: + github: deepset-ai + twitter: deepset_ai + linkedin: https://www.linkedin.com/company/deepset-ai/ +pypi: https://pypi.org/project/brave-search-haystack +repo: https://github.com/deepset-ai/haystack-core-integrations +type: Search & Extraction +report_issue: https://github.com/deepset-ai/haystack-core-integrations/issues +logo: /logos/brave.png +version: Haystack 2.0 +toc: true +--- + +### Table of Contents + +- [Overview](#overview) +- [Installation](#installation) +- [Usage](#usage) + - [BraveWebSearch](#bravewebsearch) +- [License](#license) + +## Overview + +[Brave Search](https://brave.com/search/api/) is an independent search engine with its own web index. Unlike most search APIs, it does not rely on Google or Bing, making it a great choice for privacy-conscious RAG pipelines. + +This integration provides: +- [`BraveWebSearch`](https://docs.haystack.deepset.ai/docs/bravewebsearch): Searches the web using the Brave Search API and returns results as Haystack `Document` objects along with source URLs. + +You need a Brave Search API key to use this integration. You can get one at [brave.com/search/api](https://brave.com/search/api/). + +## Installation + +```bash +pip install brave-search-haystack +``` + +## Usage + +### BraveWebSearch + +`BraveWebSearch` queries the Brave Search API and returns results as Haystack `Document` objects containing the content snippets and metadata (title, URL). Source URLs are also returned separately. + +#### Basic Example + +```python +from haystack_integrations.components.websearch.brave import BraveWebSearch + +web_search = BraveWebSearch(top_k=5) + +result = web_search.run(query="What is Haystack by deepset?") +documents = result["documents"] +links = result["links"] +``` + +By default, the component reads the API key from the `BRAVE_API_KEY` environment variable. You can also pass it explicitly: + +```python +from haystack.utils import Secret +from haystack_integrations.components.websearch.brave import BraveWebSearch + +web_search = BraveWebSearch( + api_key=Secret.from_token("your-api-key"), + top_k=5, + country="US", + search_lang="en", +) +``` + +#### In a Pipeline + +Here is an example of a RAG pipeline that uses `BraveWebSearch` to retrieve web content and answer a question: + +```python +from haystack import Pipeline +from haystack.utils import Secret +from haystack.components.builders.chat_prompt_builder import ChatPromptBuilder +from haystack.components.generators.chat import OpenAIChatGenerator +from haystack.dataclasses import ChatMessage +from haystack_integrations.components.websearch.brave import BraveWebSearch + +web_search = BraveWebSearch(top_k=3) + +prompt_template = [ + ChatMessage.from_system("You are a helpful assistant."), + ChatMessage.from_user( + "Given the information below:\n" + "{% for document in documents %}{{ document.content }}\n{% endfor %}\n" + "Answer the following question: {{ query }}.\nAnswer:", + ), +] + +prompt_builder = ChatPromptBuilder( + template=prompt_template, + required_variables={"query", "documents"}, +) + +llm = OpenAIChatGenerator( + api_key=Secret.from_env_var("OPENAI_API_KEY"), + model="gpt-4o-mini", +) + +pipe = Pipeline() +pipe.add_component("search", web_search) +pipe.add_component("prompt_builder", prompt_builder) +pipe.add_component("llm", llm) + +pipe.connect("search.documents", "prompt_builder.documents") +pipe.connect("prompt_builder.prompt", "llm.messages") + +query = "What is Haystack by deepset?" +result = pipe.run(data={"search": {"query": query}, "prompt_builder": {"query": query}}) +print(result["llm"]["replies"][0].text) +``` + +#### Async Support + +The component supports asynchronous execution via `run_async`: + +```python +import asyncio +from haystack_integrations.components.websearch.brave import BraveWebSearch + +async def main(): + web_search = BraveWebSearch(top_k=3) + result = await web_search.run_async(query="What is Haystack by deepset?") + print(f"Found {len(result['documents'])} documents") + +asyncio.run(main()) +``` + +#### Parameters + +- **`api_key`**: API key for Brave Search. Defaults to the `BRAVE_API_KEY` environment variable. +- **`top_k`**: Maximum number of results to return. Defaults to 10. +- **`country`**: 2-letter country code to bias search results (e.g. `"US"`, `"DE"`). +- **`search_lang`**: Language code for search results (e.g. `"en"`, `"de"`). +- **`extra_params`**: Additional query parameters passed directly to the Brave Search API. +- **`timeout`**: Timeout in seconds for the HTTP request. Defaults to 10. +- **`max_retries`**: Maximum number of retry attempts on transient failures. Defaults to 3. + +### License + +`brave-search-haystack` is distributed under the terms of the [Apache-2.0](https://spdx.org/licenses/Apache-2.0.html) license. diff --git a/logos/brave.png b/logos/brave.png new file mode 100644 index 0000000000000000000000000000000000000000..48cb8c0b6642de9ab26a01623e43f686dcdf168d GIT binary patch literal 42948 zcmb4pWmjBH6YUHP?he7-VQ>fp3+@)&B|xyj-Q6{~6Wrb1gS)$vAi^WOUh?uS`D z>#TFSyQ+6d@2YSm1xXadPlx~j07Y6#Oa%Y{j{oxt1CN0Qdo<#YEKHGXG}5 zxe+Za+`qg2=5`)UFw;5jbd6%`48i@(8YE0c6|^Z$Hjhpgge$mB4eCPziCzSK`V4DA zc)!`sT%Mw5lacoPg`=La+Vtm{>fKwmdB@`U-|>}Jjw9bG<|D);6)-+BY+&y(!K4NB z|NhlL$$<&}dlUvulltFiH~_?w`)>sA`XSK#H{#p(fD->3qj(JiMn6Vm2_kT>>3=g( zqNW+G%vwB)-6aByJW#?^ReWpil3%=y1X5VP#-YA}-+zAFkCnt# zY`e{^Bb@KXQ3_T?5)%>3)qi-+qzx7oNa|ZC>`{S;k&{f@p4&IZ;UpAyx*VmNxfvtY z?={oAF<`_y+1s9Ns=zCnL1wHvw_?%Cd1O<}H(aC6g<`&7k|`m^%-T*a*xQL9ls8)l zgu*KJZ<7r-vU2i!*+&xjBkQmE`p&cO?GyyhIzGBuyX$(7d7is{?W7kfF5Dvw3V?-? zl6`{G9cUP-6m6$lRbzO~%5i3Sa@~KViGUj239vh+3Sxu{tX_#J!eZ&|p{)*BUWB5H z&}UMcxuaGCQpb0ff<(>EzMyM8XJW#Lc|(=v3yLYtck_w!6CXH}mY|E=hv!2lVL`SM zzOQ$;ke_T>;5dka3075MEw$*Aj2?4YNR;Tr=4pHd5`MfIyw@=#%}{O%bnc?I$@9uT z2a3IjT!bDkV%`_5@?X&366u{vS{5`aPVaFcjuPW##igLOfQD z;J7ZufIkBi9Zn-NwaO*dOtr*-%0|m-yF^ak0s^fth1gnO{8Bcz*4p%(MEkRxGS5xN zjDAy6jc~bRY45!5U8N2yv>+HVA)Fvi=03*Rd1xQB&t{}HNlmxFVRPc8MX z>wJej$DIizGjbs;KTvQ>uEDcNSaK4^)2OV{7;DJwJB#)Ok*AM5Qqc6Wv)HO}Q5T$v zuLP8Xq|z?~1)HQ9wuC&~9%-sL6PYdNQBfb37LPsZQGsthT-j!}zTH*%5~};<$$SpB zJ`Ur#(nqie6Jl`Sz3=V`qPhCHD@g+%g)WsV?jo!vI_^y|9`i}!|D(dvDv zNzNHwVE7u9u>B)C+y*aLuj9^Z2wyvfRwOD&V;l@u@)GWFK7)?3lXmW#w>t zeet7#0JPt3RdnONALq|{zs4xk_m~v%3w5Z5sPx$Frad$E?nH4r=%mhnQ8QELMeviUalZX|(X&_FKK`fh zFWjywUArj!Fyd1?>>_ev?}y;_R|Z<*lNp;!T$MeK=0}rFj?qoDv~2c7$x+LEE{$2A zd#ME;9uHJy=YOY$`;zoae0U)$MIwEMRXg{E3ZP_*%M;5~h*lH}*d9K)VwunN$(M_I z%KrXcuH5Mp&qh$Z?EgMsRp4bvj?LsA;zHc_;NZ6j!O4T1-Rb$P+`LJC;+IT}X9V|- zbIm3c7P;mdyZ;{O>SL8i)}v|)LEW+|c536vXpvDbmO>9UPUzWyjQ;gE-p#j6%m|6+ zN;N#h6!5QUg;_2awv3?V(sw|m=8l|76e4skDxP`Aqo9BB;V)7pw(vl;YA|HO%jV7J zaXQ{`4AD(@L+r$^)2j{mE&VacCj{}-aK5Bx_4&Vl>IEQ>tuGprJ{7r5w*-@fOj1Mh zrYEB*gNZKfJW-h63I^9J(4}z&8Yg@!TOIDMmxy@X#ApsJW4n*!2=WW+AvA+ zIv=9{f|(FGaolZj*B}x&J}>>bh0WQdKMB*H9fX=>M4A-SPk2C+=6O!SLdE|DrSj<2 z(qT}8uv*Bg=xNcL(W-UenX7%J(-HBzy65P}HrZ8ZifE=feS3k_1*I?9%YO+Gs1d4X zHzE{E@l%;o^9hg&(Y4o}?k%son@-dFC23MT7cpHw^^<*kIt$~z{qXOc52mj@W++*@ zll42ny^+ZqSL$YzVb`J?9T}%5+&vo1=Ic&EV0pe^OyRW2uaEc?mDFly#{76)Ym(JX zqW{uXpXaV%yrm!)jJ)uRGb{7t$00_Bwq)$#L9}{2b9T9Jp8aAFpqO`8yn+qWRhjV_?ZkFnnNAoKBp*K(inmA?DL+==)7(TH@sS zk$Y)w?Z4iJ^yJCF6-<}l1QFy1^GO$a(ig~EML`UqK1I(?K>&<>0$rT zWLV$jcZm#J>i}$&ZU_QRfd&PaeI>zNYmR)X9?_l9C|tmx#2OCI_p3|XJX#!bnzmoz zWyJB+EK^HQOWmY=Pa5Gz*=GBnKQ!8jnbt3%uIDup=0N=rg?_1#Hf+Wo)$<#%KltmU zK=*xKRtk}aL<7aL)io12F^_~oA1HB#at0`9kj+t^Pb$h93EVoqG5Z%DNadBd@=M@r zWZkdV#+=AJ_09 z?}xy8nDy|SuGa$*TO74={v_&Ar#3m6)H)~xNuux%5(XT3S4+yiB^%Eb0{D6#0ic$& z)>!NQ5A=HuKB~OTZEER5x0-kH&a2l3zVPmHXgu+g!w#bmuh|djc16>J-eaf_B)Q~= zBg{YV4$*(BCuB{1YaP4j6d>ND{E6sU_R|}e3G5M=(g%&kJPyV89F&MYfO0RiE8%M2*yB{ieKG1u9 zQ8p1c{l@HLOVVD4Op{6@!AvMPYfZAzk~9{D4%q=b_!&H3cl~VK@0;;{l$A)CVh}%u zp^(j#QnXyf?VUmC!8eiyv%><{r#Rbu#o zDm{3*h?yWeFYjH=Mu$_Db8!i)H!hTcwis$DU~21(l*4*8Fz7fy3CT=6S`S9`AtR?! zq@s#N=cNmwI0y$?C)1WGH5A{ILP*Em4T@}S5j2^Ks&s{ivkB996V!}Dd* zW|=QUw4r1C7eho4hZ@KLs!~f~&lU@b)}fBl+|{l@@;UMrySuQi;y}C3pGR^SmMW$F z);Q6@GB5K&$?c(}_Q4$i@_zVUGOoDjzu9QQP}6es9e`6DIK7jUq{2r3%aEFi2a{~a zv@bu0dO>pl#GLoqjhyqB17LyqJ#(s@Fbzfk0w4s#kPaXj%8KC^E0^x_PkA|o#SLK-Ei>WjC>1VRR#OYlxgV#UWGecT526}p&q+&NdPOt8)Ws@{# zIxHPkk&-@li{tR&BjjoySJ~I$VAgTTu}6+}FZTSYTg764|| z6^+klgC--~&T=@Ckwlv-pm^LPAQ=Z`ML(DjFJ5(#Av&w^^{o>U+Lp+$*(^s8*K06! zjEptTr2Nnab*9zw!%N6@uloBd8jvpveVkl4O&?Vau<$!Dww}HS&F?FKhzebbjLJ*O z%t+@t7_KS_`^jEOU68@c=ndAQ&s{hauH$l0d?xf~yRr4-N&r!IeE3#o#xLAt9Rns4 zpKcUwI<@Q4V|!esb=R|?H!D)TR!`ZTNTfA!jwju6>(AyM;-#uB>9qSPZNe&WbOYG0 z6;H3002(OXX0`pV6L=&oX)0b%M}upmj9x|}m2IkfgK#=8GCCiji=gOoFnAUEwttG& zO#-iV3Z2)14@eB07MQ-HNiz+!zXUfvnC$zu0IRXlfu4S5 zx+*QKGQQW4uY6_#KjO1{6hCGd^)5QX2c-Yc{PI;^0^89DKvWCSE%SEXg5V#gjUoX%M45! z*;JcJ98rZy5_>Dcg#X!iFKl||D1(ho_d^^=q?}vg>lh)}lD*`eD+=16jX+gW=<$|K zw}0OaN%F~|ZWzIo&=vz<8|W)kk!UEt6qiEV?j!Ie05~Y+D~bZ3JmHl@_YKQ1s^n`# z*2pPMlr}AoAE_G;3EiWcV9qWuN?D==sz(Z6aYJBZeebJ$yIwA3%UxwQ4dn9Wz;n=6 z3G&d7tkv`9Tg|cfhrDIJy_EvTC|U-vj6nElG;2R;;`;eZc zDFV9br>3@m6lcSg@tu`i>+1wI)k_lk zh*u(h%zxR@rO+O$ku6Zy(JlG%Gmx?ws$qJ3qGr^nc`H$V+~+KzVM^4w#4U`mZpt{Z z0yCT;(6USn1}E4R-NCtb^UyrB*BaJ1$Ks!bi0FF3;4Q#cpiz;TbY$AH*eV ze?1c+ig+S^_NHP!dC=DoOUy4vD`^@eqJ^fTQ3uo`B&As!nc}eoGD|AgCILYdlty#j z)$vjTr=ahx?pMd9-(Z@P_#WT0A2+IcI?F$u*z6(Bc}YC?fjAV_?W`$Hkcjv9C}B~V zogrxdloZaInkMX@Xu`-kN;*Z+8|WFobVTw^OR!YR zD>;xI6A^}p1zk~uDj|wEn^bZR?k4adwl;_PIcLk-J9N}A zbgKu9VEMP3D&At&F5n0B45fSw++^98#?$L7SJy7IjSF&!1Zlwp2eTZwz30}&+fy{a z^)LxXff+OVken16F?$~e$P(*QUTRE0ToMS%AFe7(uD!T*B8ma9H2c^Z)OXn>%oJ^| z&(9$9!$%YQd}U89%s0g4R|!spw)~>+WLv0}{5dS_duv92j+M{ml*YfeY}WaEJ-Y>R zHwk*I36>A#A{?znpBX=H#G6si$q>D7hkH?Ar%}2O3TM+&B*ptgqh^!Gc*agjkh*svxPz`aquj|#Hwnk@W94HqL&JN6{M z3F2^ive0(#{>nP6FSSrO8 zYE2bjmBS*+(U~coAoVmRMjIRYM}eigbPBF9N5sm~O7s|+JAnJcVlm!2xQSj_wLEo4 zd;Ce>j8Lx#)QZTeyy9M)-_yZ!l#cqhtP86E0Jc`Xu~8j z%n?%!q0qPDIcwKFyn07e;9jxN9+{Z6oeuo>@u12yf26s#o%mYQJ_oGCF#S<3oI?nM zLdOPljXXXq(e{hneXZ-L^a~_`QQ!hLW@`hCQ&@C zl_k}+y0FDF%g3ObZH%pami|33kQ1W=;1qf`F;<`Md z5zdhLV}RfaT0|&UitXg?=2iOn;$y{9VUs7u3GNzN45{Z?W2b%!MDvsi^!So<>>mtws0GP#Q)-t?d4!ocRc-*f$HD>Sps@dO z%WE5T-sP9_{`vRFgv@AeM-^}|eyy$#wgwwT&gK}FC1R#6SvU4}Ybw{INjN3@UmFz@ zJ5`BYKE?bJ7X$$%wTjpx6pvefktFSkl;B=4+KfPr5229w)5zxb;}MFzw~T-55-URR z1}jgWtG>HJ#CHY6?;!SjbQOWwucX-i1_AKG`mNb0HKkv%;DtkdXIIi+dD7gffj%Ary2X2?cWzgJVk8Tj=?qH( zWC`6M;KS!mbE^X~VNC=@2gpslXK_olw~MM<)sxGntmll!jIhr8&E$TP;T1-0hY2!K z@m>EMMJR`GuVv|BW;U{z3ys8UB@rBU(lPyAfRCp};)KK?dR(|T%B7y9<^ z3!nGo&(j-(etK3S8a^;>yNtO$=G@HR#qxhw&DO5H&5)BNP{=z${3Xk$7&?otqC+kg znvt^C{F5U?52N;|=AkG=R5CH`hb zA^5Qr@G%D>c@Iy&mwt3b$4qp)Ytwi7+JBXSYYM{E>KnNkC*PlEhOob}I6M^6B>yl? zGsv%mnicuwAP+7G95s{1lk>HrIuS{q7~yim*e{6`QD}j}XD6>eQn^TTzYu=BWHX#t zzp2hj-vdz^uWV3E9p2}k1Ok%aC(Vp%_d|Ybly`@}yd;Hg>WD@%8JV62NEhLKeRx9` zpm*RUWzW<$)lxzXn|wXeILtJZ2&?L%2)=#H0Okk+A`r}9uPb@7fl4u7uij<{PBoE*HlT7Y!-PfOOs+4#DU1#lJc;Qqk-yWx%M)0AbrBF z`M-641W3OLB4DwQL>;*qGVuBb76Vp?BK4|`RuTovY2dx;=)6rp(O&>F zwhR~Cg%3&}zl-eo?2+Pg-DAA_!dr+MOYr}4b($l;2Ej3E$=s<2D6aukxutY{q~A9* znqn|Dky|%G3&R!e_US*31MR3xUc*Ko&THDP}>C)0T0*ts|Du?Mhka)V*P$`^=ouw-g)ESd=ePh9?k79g6=N@ z6chy_XMmWkG!h!#Zmok3J2CDH!S6U@-~jX3ZtD^1z-+Bo`?`Ef1m?P+_;7^p?V2%@ z{mc}hRt>A)rG>m-M<&fiK#uPhC`3pO&(HLHnXi{zK-n&+jSkRq1O9Ryw#Bm9Bn%Xn zTihNC%w#7H-I;j<+ltA`Qf~DIbj8yuXZea#%LEP}MqoNm)ybZSjo5UkR(Qp)Av+Ov zZQ5auNJ=NA=(eRv9M(d4%j_+nt68YFV`mP|XPus!A^m>}Bn_iOuQ$y#GcUt?d(@@uRc;Ds{8d7$F0#z;d1!+zwn zovZ5K=Kzh&hOjBI9qKCV>xQKHPkb>^N6b?OyBCK2iEMgjPB=typ# zG&7}=@I+hD=xn{#p_gR7ZqWGd!s%0_v^!)qK7uty7{|Ds^my${W-bwt+aMZJB=#d@ z!$o>weftmvQ=?UFzsHNfNnbq88)b>~#e!x5<|+^YHwr#Cj_CkroV4U8ZJOEBR*SCJ zk`Z?ID18K=OpZ^vxA-@n&PIzdJf6vNq+!PYtGAW*58yo>h|p!KMy!dWE?EukK>)!x z9_MN{r|=uiJ}4(frdBL535AFwtQRmbZFCby3h@xYavRZd1IX!G#qi&-@I=!*jME5q z9LGCgoEHco1mE_TfxLP=eWAVI?dat-W^Dg;7*9(}o(4KJz&oT11}vC@1idi3imSn^ z$bZOy4mm)izIk`=g~$xwsAk1EOl?yHN>4nw^PPVXeLn2_aH6V(!P!!t(m@*PkF4|y zTsEx3=$@sZ9qcqLb|nlqE9^#t*agx?gXRV08G<4P*ohsy1CFB~2ACWkmjVe!^OF0A z#CsAHMV7p(Q@)xw-?uvoB)w7k?>zMov3tQj%+$}WDQ1gw#OeoaYfKT^gqTg^NjY>i zcfq7gKCx>OP6^1%TEtUF{nY}uW=I%Le=&jN1a4bHh^obrAH@L|$GlSs2#0SF0m##Z ze~w<+`&L;=z)Fo|4%X^o8S7i+CR{cYGjrBr?8FEYkab$O+$=&x`;Q2YmQGk!(hZD; zE&_c13@%M9Q{KU*Du(_|-b}J4Yz#y#cmL5Ud1UEJGxVnIqMY^c{}j`XCwB`i2*EtJ z$JB+J*_kei;k~{O7duLFl>_rTOsDnOk;q>^;v+wkYuJfj<4^*n*;lb;b3+(dA{x8U zZOdM;bHp)eoijwI5VcJYxJ&O$PsMuO;88=9lX?iW{`tGq=4C9o@i@(3ZY`LfthZ5Q zv)r`ADEfV!ls{bMz~_TA-~(k}lg_@64Ak4!M=NptqVfhQ;N#4EGQJJgt6)mCz>|x) zwve~2f_l|MnpZ=Xj9#TBMvclgYoJCBF@t1zpb&*-nl}(6`=e8g2wcQq$jO?R^;*Y* z`w?wmX^#VWQ#J2m7?QnVp)>?c{`=-&r2UlOvcCx5Cgf3>QmzjMTFt^Jz>Q;6$RA`62*2nZPFEM47H~WjW+08!)C&e6B2j z0O_#>HV5=-W7QabVO=K7ioQKd+ko@_k?1%;yx}O{pEN4I)Cu&XBUqGW);!+xKUXxj zDM{3}wOIs1{yF@$wnk$4wPQFfPDW zbMC1VCu|bWcw@TAtYk?&+f(%|Db9I#eM9l6uQ(W^=8*fWlH>T%H8C6TCn{q*)v;;j zdnzg>lr~(9PP;b!YiVRFLh|6phIIfDZCQ=@vOHW3o#fA*^4qC~F2YWLVqG}hpZgAa z$gl-ES9Wd~=LVboLm;tuKSO)1*H!<}*P}__juxiVg1t<1^B)xqsbQ@TGE{*bnI6z&ya^ri|E&OmTQ}c|2*}u) zmCQBoL({a_GtK`?;Jdq2U18;Jcagn8-X2EH#FBc})dDpn{A2xt9lqo~jY zo9dDIpO%^=Gwq>*5JEq!EDs&wG6i?Z);VeFbqQ%|LCo7xpw+a}?nDhdH z)!N$fdDd`kTx1Y^JLyk!Q$X(sf$s3@qy<(KHS+vz&fA6ek zXjhjN=C&Xd5LT9WJ$=;Wtb}{o6si8N1DP`h9;?4rb**~s&udJCtbowW#6jbaHW&1) zk@vlJvUAZrZ{en9@U+Tjr_H`Ilt>*N?Y=C~9B#g)bMG&w93RqyK=jyn*Le+ z)*uS#Zf|65b`RLV_-_woGat|v-=DYeF5}-l_!{$i{J#0_rNd)93Yr5=Pbwdlse{xx zgHnP`-93k0=7{`MwwJd69E#kln6Q-Q_Cz<1EsCAYuIp$p0p~B&kv{@t%ggUU6teE4 zE|{{*QsAGH-f66Vdsg)(-tMEgS=!MJmpQlB+oQOHdPm&X@m>&ilMdZGQmA>Q~f}L z4K#Aw@e?@&#-8L&wm@DAuMXL0=L=ztV6Mf-sSRRsV~?{?jx#$mcXf*XqfLT{6rjiv z)+_R?LVbV@6q82l|A%ARfDZ)itNkY7YVY2fLt}EwEP#b|(0RP#+2;_}WD-OSl974Zis- z!R(=lJ}Qnl5!)%47{;-iMoT)O&(*8JE!qH54IO6P;7=cKfT;V1ti-o&A^XuKmH@wp zD&A{D>d$y?*FZ0whfeXF`B<6Z4e!KuF`GO?ZO!oENYYVJuL``IQSLea;=@2~TI?l+ z?D_q9pTG_J4z~8=z175Cf5r);oU%~G3}p!TdL{pGmsHmOmi?+>{WCvlOOwCiwc@a2iy=Yy`%)47d^Q@B-t%XAZxk?zWgPH`gKLA+o}r9tnVp?WFga z89kPQMqqjeTECU-BEa^akZT(|l;e~?k-gs8TS*Lkz)a(+$`e%Go+{|KAX!WO_) z7N#TWKQSoMfOe!J?phN!K^jpf2XvyvGLSN2R5}dNtJQx3);Ozu|KH@yu2FCM z4%+Tmp-3IY05PY4J>qRQlAygFjC@7=!>~Kw_BhuG4vVfI0v0+2GerZ6yyK*wZ3nO` zH0v3!P-~M5qDk8kY4QWyP5ETjp?FXgVjG_T2jI((eBJDugiZpK8lLC^LK#H~V*XQm zgFLJ$0{pZ8p>}R1LCFRx=lSA0YcM7C2sA3%_SJE<8ML1drGKB`DhLv$U?G3@=^0@|e#AcZ{ z(EsZP9*DYq_KQ8sZt1Bak#KA@zYDbzCI61ZG6jYVd>$%w6DFHAaOzzqQ?DiZ;j2<{Tq;y|Hdhp7^|Fup`NS>yoR*S;vKe@k4# z5Qfqyyr-UPk2amJ9s~8lrk*)}4{F}TBu9Mu zA^2EG7VIr75WKo|%4m;c;Yb$V54{Wd5ns+w69gg4d@GY^2#C|;IpN*KLqF<{zId)rr$5!v3mk2aodNR6Gehr}-i=!e)pb#lt16I6!(tP8q zIn|k7d`kVTPBbi=qPO8AYMlLbcBioO>YE@wT@?Uv%)idRC)d6wEKmfIQAs6fgZgIQ zrhLZh?4cr?1BdS7rjjAeW8Ucf#okg*e3^z1-uB!dMZ2=~@JRHlgEggz!+Ne1#qMnPM+Z_xzwha*e?o%)m zXX^K2inpAG^U~!9KZdz$(YzAd{ywh=BvoLs$Q-iEe%o=ThEdTe#AvauhyaQ99w0nhSn|*w*bu zM>|i5Djt&beFRR!NDM|1Vw!fCh&$>zl}&Eg$rn%1tjcD zbyQ)>G5H|xi8wr8DC<--YXg+k4m_piq90_!x9oU;)ktA&n!czPh|&1YNc;K4He8f+ zBK1lC^9U=()A^P}#tb7B=x>(8)x^D5^J}TEZ*v865h+KNaqa&o%Lf=$s~GP;05u{V z|Fx@Yf$lj8g;^=j_%xWg9oX{>BX zWuj%t;?hF74j`~KA{YV%Hf2{bs`i;W9ziZ`#Q44Ho~x4#_;UzsUpfu!(hhifU=gev z3^OHC6cshq123$KgoX0%@$xFRW5-z1O4RwKp`F@@UN>Up&R?*vCS}L_L6isA7tH3W z`L1eXHN>kN)+g%JrzzUGMt>+D&QnC)hP_CyUOJR>B4#?KxDTon)(|~B-aa*%(O<62 z_4M645hab#9%CN9|osM*1O@@msi;%S~qE+S}jK?gl_6>JN<@<51gtspRF5;_ZvRNeUQ zDT2|9p7Pl+VbEfB{U4ph-V5L_F6cox0ubG0>b}3zL^_@VReuvNJOG8S{M_W}Tzy2| z=#ahgPNKCSDRRS^&>lwDQw%!u{w^WvbSLtX_wE`rB`#EaHe%jW<1yxa;yZ5ghksZ- zr=)%#rsYZKOl}WQTkb~O*dVqmg;$NXr-I9*eZic>st(CjcVh~>2sfa77J@Ni4MLua(HQ zT{qP0KfR4$gk>H`F=6a?`rasoXEnR_4$(_WG=LBUGsp;wY?2qKYro}`Imp{5@{rw* z(Hol$zBnraM3m=#H(&5yQuN;Mwi8b`+e=UUzhq-4zi#El)k7Dgo13^94;yDQETJp@ z{JYtf{&!5dk6ONc&%yiOgH&AVWmu*+_=hWZ!;M(K;~Ik@;zstOx2myhU=fj31J@T( z92gr{B80XV!cO9%a_?QQ>f-yoSAm7s`{%mTWIM z67Xuoc%H;~{S?Ud747np!f**Zpm_gnP9BqGqEoB(@8yXcLJb|wU7%9}zki``zs;s9K|(SYViXBg8)(>M zen;?kNCY*-v+l6Mgi^LXkFLl4{={9$(f_Kqhl>@!(}73?i4dHMUnP^|AdhznSi7wd zrIGNt7wK90f!2&;c%Czb4LPl&D;%?Znpw2nZc^qTrQn_+Gc%C95jpUpfrMp}@Wx$Mn??A@om1wX|Xw z`2O1$k$}SRhXCpv02V68YO1X=H|qj%#X|W=2f%(v8bV@EK0rWw_!p5YMoS28%NKe7 zi&ZqYnJ-1G*uTX`j&nX+-G!Aui?)MZx=P7IEUtv^-ZVv@btnHp+9rrwAyAMvgXpF{ z&8rB1N}obIes!Ru0rX*af%#VLC#qTF8k5GEWGAGb)L*=_f_I){L-s}@w|NhZA;I2J z+{4&maM_5DS#4nA;R~Y7i{~((7kLmLbCqB z(Im5lsVah3gU)vVn@j3Dh@1+M(%BY`{1BlEmeerBBH8`#n4xn8iZndshAM`$@e+ha z3T_y@d$B$JvN!wiX3#ey6E|X*?f0aX4dh??zM=A5m|#S5@BS3V_u>7xMPR`AzT)Z|EwkB z|J$fX#GKG3yj7Vp%t9h>=u1!0U{6(}$J|+Rp|D9~t4gXRV;-c36Km;i;b|nvB)1~X zu7QAfX2=_18!iUO^MmFAh}9dL4rR0-l}XT(h}q#6uqGt@XMp72WjQejU zZ@%-{BS3vQPiyh_HMnu)D%D}%8&dPoRo`$0ZV`A!y9ku66OU6G$GaqGq9-E zKVWS?65a%D2h2Ut=#~lVU>x} zEJG3El6?b{`B8byk!gXwv%o(~3NM2=lAAZ%Jn^#^S9di5xM?M2*Tz}yvO3$Xr_waZmcpq{_+mD{3lMeyp{^G_GF!=5f5Ei>v5cMD1C)kL zM@|~)Z5Jxh0SYa@Ef}pqz>p~bi{~e|@BEO_L_Y@jH}x-kqU!SG!rk#jQ^sOfvckX1 z>Yl?&ZkGUnZh-yW=!oY7BX*}U%Kf7+(7ypH=O$c>cG=aa`Wv?R8ob>ZU+{DR2^W{-kSn_4ere^t_T9DqAXu zHa&37YO)g|KQkqd@)`^Eb5Dw9c+&IWgAS zXNwvwX(RDovGG%?%(1h~iUsY7RU;zQ<1rDoI>{XWoSqAiHU2N|DJ8E>-T-d@$4 zc*2Kr)@yyd2PHe{El>h0N7fJgN6hWqhZN?$DtNEvde)akA~tL;7HDAG=NS(WOCTyH z`E1p&aAczGtR0T4=L1H9cAHt5YM3dMu@|x!#l~M5)&meZ#B|x{Lv`Gv*X)knF!L2{ zxQwMy;=Y)Jdp;;fCp>{XkGk`^!kG?G`|pC^8wj4i`sGy;7CEzB z4i8Lv`c~i?4RH@Uz}=G{p@+(H+BlU;^^`zIH3j6cTQfj5y8W#T<~f)P53=*758t$Z zi4OcklZma2mmNm=6xsoY*W-9lFUKSgWxzFLfz=iQP`KD+(=hOs@A_FFSB~)Cwb_YJ z_fdQh&u?$yPi3Ex;nP0}o!&6B*_obKAt*`xB#$kcVI9VB!QsFgdA((+11Yz+2NFaQ zy`j3xRAk#@UdJJ85W4oCvKW4+J8PQM70OlD(e_Zq-PVX+cL~CIN(Xp+-d+nv{4C{y zitBTrLYI2Za2iub?i5lZy6)D_sIL~`tIT%SflU~PZ+1Ona4LaM5Bzl%Qs2LMEnR&W zZv;o#!<5DZ!=aceiuxEKX4ZWcZM#!56YOAWZ61!|Hxk~HPr`^)_ugE6Or)8%uH< zgEs_*4%r-bFhxW;>mBk6HM)-pvsVMKZz#?agzV*s?}ky<#__*8;5Sk!E9bJL7FC4J@hob01=V$@`o-_6B5bG|r!@ZWoSa zX9m&#Nog_k0G?0peSo+KS!+-V@4Gyg6x}u>fo`+g=DChA{-dig03#XmKKYb z9}I1x5^J-}5m4}l@}dJ_xu4S*bD*Ir|M`Zhcy|>Kk`;dQ2=I4PF2KQqJED#~`SXK) z9A#&mzzE8Mxvb3n;J}xMz($fmQytuFyK$;xFgMG9FzHdhN%nL~eRyVUHUR!7mFpn( zGAEBsaLhqBr(Q^0Mb!&G2M3{jMcwsNCTNI=XR)Z6_&|`@VfZ>|={zI^wsme@cFyCX zswUsC3@>#ui+{;LU!UcH{2YA7rD5e6?fHRG3|3nGg5tSIxJC*!l{Cx9SycM6FrmI* zZK3F~uX-Vs#=jyjf3r>;E#UYeviRy{G*C*A$)7fO4q2yg>mM%}_!95CXLBPwuE`S) zBA|YxYX4y~B|P+xZ0%rRJ^uJ}l(@P$t z3|LVm(pEi+Mf^T*q@%!DNtMcZXk4DrVYS3^fvDYtyA#KUGxrm&;}MT6X}A2bnC2azIDO{t{w+5Se2ZOs6vJzer&Ac=th|TRWF-qYq$gVpJMPD6Xpmbeob{ZSg0V{j_f}?vC%Un(()|j z)dfw%v8Gk?sl)#25bSE(%_D5KUf-^Fa6*VgDstIb;)cDKqJ~c2J@@?0jmiVQU^X1X z{NMuzzD}<_3r0Y>Ap#YZxtV16b>G?kMJG`MZn?krQb?3NY__4vT;mo@ERzzz@SIDZY)}elO%X1+ zZ@O+$DE=5*&KyVn;Rl7ePTcz8ai%dzMOEy)pFjs?w_<_U&Pp~7C``NCz1B8|lG9o8 zWyivc7CuTZYu#2qe)LVScZ=*2-4+ou|8auWNr8TElXm@$?1+g9c;lsz(^`CH4aXrR z_2XS9>zBOWWGa8_DC&&+N>5c{ZkjZG_wDligsCS8!6ytVNSDMQvV1C;ScjWOTaU>| zxi>0bJhig2(!n{^fR=CFxrpeYKm;%Y!}N-+c^f@51a2#+{X}N(1XYSt@4r`Pq&&1e zOp2LfsBRbZ*J?81Ta=j6i~fV{7fj*l%xqoYuNMb9Z~gZPyUr)$tc45{BcopH?#ntR zMgvax^1fGzr8JKx*kQ}P@_&!@AEkoh78ipcG<`W-Q+qKQONzS;!tv4ko;1T`fD|XEs8gQ;@Qbh&BW-()C@4lfwTEi|*Ugw8<87J`6dqabg2Ge(^XJicSx zfkqyAmDeR4$*Lz5bc%M`1H!CiEX8ti&kvTUsBMEwk`A7Ukh&+hxrx@O;2_||HUYmz zI5ghN%^sQ{Kj-jA%Cuti%UVxQ?^0;%P4lRls6A4~=o;-Sb!PUrA`h&~Wti1z?+_6s z#Fu-5TwBkJiQ3fy1-~*jEq0cA$R1iOtG|e#pF1f9=exI+Cx0Z?dJW+1Sz)elxI(@* zjC1%ZP6w&Hsd`PTehGC>I$!e}xWHnfPUz+GYp(D6n{MQ|4a)W8r#YT63QS8xijUTh z%loYp)lc{<=Jy`k<-R}|>dxW;RVuP>F$36fSV(`-$JIUGBkNQcuOl!wB|4QW;PU+T zasv|Q6PvEZL^&tj=U#J;5-cDP>8)ip`WI$83O{-j%r1w(EU8Xp~3$}n*n2`GQqQJ0F#?giKAPyt*MJqc*! zX-@IR{1naHxwmz-xiT4+a1Tx)QhwE2%jpxqqeH(f)-~$3pg|apCiJAIr>ANDt?_D0 zLOyfa{{!4WBfmm^i>VF;3i<$V{RQ~&2|L_Z=0}Y#KYI#jt^xQs2k@v7X4P1||Jeo* z!2xdAu=w)Is<&hwfK_uLZCH>6>lli^6|Gl{1r0P?Ml2(Xjw`JtL$@s3w0%#f=+g3{ zX=TBTq7}ltdGmtB#l>h1Nqa(qYqur(F*`u@Nb{B3^~i^jS!%ZfOFjegisFBU)d+LY z#7tY3Rk*2f4*Wr6ph-g;q-`rQY!!n_VYJ*Z1&Ugsvyhk8(%}`lo4kr+>*n=qY}FhK z8wsY;($XS}qNvpQwAZ!g}org8i+%eAQ*X3qN49ja)q_yYLH75cOjM*5K@ePpbwApY-2Aw9d#fKi#W zEbH*&4vTN#Px}`DY+j1CZ(oV4C6|#PR6$_gTk!wuHdD{D>=LT?Up5RoZ1udIEh}P@ z71$=qw7OtM(M0q6@4pYM+PuBFseJUN5Xde|3ML}+G=F$QPi(MyuF=-mkGZb`n-}Z( zed9$H%psG2LTfG>-5q@8Fc4Q^Vy>*M1R<7yAEylo(1Y_Fxr}g zAruJaJDch}{g!$oDoeY2gf)i-i2|RfT zuyeK12HArzp96NSNqnTMdM^zepDC*hg_{(|QeUyC&O8tTmVb%BRyF`A9r*t9C_*pY zt-CR+HN{3CVW72Y`j(AN!L5FOn{1bKc(K?)Fgw&@)F|`2rK{^&htJ-DaM0Rg6SQnV z4n5cDV;2E?w-{}awP|YxzI{bsBs!7iSV{qh8>kqXN$U)Q8#OyI!Nk7BrIpw3KuBi2 znW@nBa^yaXIXxc$Aqi7N4+O=y#+jr~? zw7JXbLxkUD`Enwho`t4n8}P`vK;s^xEwU~j{7tWXsF8ajC=yWGA1JQKlx2p(RgFum zNfr^$AxYZQoZ$NT8M4g&_NWe}Eg;mEcyp{A zS<=f>lqu^Bg;y&BQWCC!=uOqiYquj9v{-g66A)bSCH#LmeV>`+mO~Sr>`SRfQ?c4ngyr;(ND4K8S=_Oqux_~$D)f0!aWbHlU ztp^@D2arR_MTlC49|8=Uo(bzr1Ap)@63h70nU(VqeDzL**&@?Dq6EC~-gkx?W7^95 zhCBsL+gn4+7yq=-YsdMQQS4G=o#*=~KA%rovvv3O>WcASTQ9F{9E1bFV;4r21+z~O zomSLxfAY6L?NV}MTD@fbwsj2+_2C%7v{iE~Y$TXb+SBBPLLvF5wVN8M$Dg>- zwo#a;2>9%2;O+Zii@{ClX8S5&_4lczNK_uOV_M#>Y^#uHev~z3Z}NLU%y`3y?b{cAh>)Ic>4}3 zbr%5dKLUL8gf(;LW(u{E^!yF_=;Bn6!@#Hm(q)yY;YLkP?EvbfUcVlpr5}N^3S2u% z$dA^W4uVp@!*-FS1_gY)xVyT#I%Li!^ub+7{K%t6S$ zKFu$lGuj&SuyG-z&6! z-nPPC-nJ7BigV}24eM>04lfqF6=Af1+M8u})zme#ISQ%`wkxwl2eZ6-r=D0m*HNR( z7ygjCSgOb&pmKORtTH{^*n`p_m;g3yMtJ+mG+AX`s3N2Ffioa4pKGVlu=_)S?IFju zZbrx2N;K^zn20T?Kp-G**s-UnseF_@I}TzI96%@ly!1zX3PmncvlZC76cEJJjzcMs zR}2*PNtb1&M$7n<4)?|b(og?M!+|UeRp5R6B1qr=N3TTK8)Z|-z1^-;Nn)|JVETMM zdD-$6KEIf^$F2p~0f$RldI`_p2rT>DXlsmP>1TQcB2}mY^c@B`^V4CK>CrO&q$4VK z0?LXX5DtgZVU`7<@IHGT!k@mVi=`d=E!!b9;3?g+yP>77iwM(p*iA5F`!SWKrY2?E zwr$}yne0Sz)3U9H!wq;FfTyq2^QPt^YrX@-1oOpqg&JXwJ}|LF?N)~4LGsJebF7`K z5LoqndX8l=e6QSv&^wRifLQ8yONVZ&-n+N+2wB)sH0|gKV$(9ofj~fB5%eshgqLhs zeqE!AW?M7xkIQxO%q7--53Kk)J;zdHVEW1FIhI8rL&m1(K)x2puiu5Xt+~~g+4jzZ z2)=x`-e+k??-~mQ6poj+4?FtH4VyN%bXuXrmd@6$McOW!e!pK@To=IZ0e^aqX>tPd z-a_EH-{*!{s&GUJ*`i?ze_lBT96xv8-s+{Ag7P{M@`wk^AG z9N=#T?m8A|w*R;%eEB@EW3^scNC%=zpXZuGki6pb9n1w_^>+w<_lkWzXoTSM&(ZeR zvvQ&dR)YeR;}vh|kWK4Wud4QXy^>wC`@~{L!9?d_&24S|(C)mdC6wdk+?w1^^eHE; z4Zxkp0KP_}4ayvQw*cS140zJ$@bgO2GkC~C5LaIM4(0@~s|L#4*AVpEH_8lcSODK0 zKhyiX?dnmxfO3LVUp8*-C!c=WkP9PZVPnCJqBYCb)YJr)I)|;HPFI^P^UC&y8gVu4 z0q!~;2zZUQCNq5Y4`BCteWY-@DDInF{#gq{3eq&_2a%^wEso8L5d8EhTYAy(&NcAf zcnCmb`+L(^C?E^2;O4>+i@jc-WOt#AV&@`mukGyExieHN6#4u@-bR{QifQY@i$Kk0 z;J#CVkj-lQdo}`#J_bAm=}iwZ{PJDv8UkB`!GLV{=_FC?DwrLbWNT__B%bHxX5v{+2_MLg2s)}a)R)l_fH~q&p2)VfityfF|C2dBV zl6@$k2x8b4M6N_6NwequmUV0|ncgE>S|1r%@eo6Y9p#=aNp_V=)mOu5cmsaPJSRw}m6P=P6gmx&dB~%c-mKKS0p+=f(z5~9r@UmdM2=pBa zNEv8emUC|~2h|3IrTN)V-Kob7GIXkC9S&7w1m1i=pDL5XsMRT1^!OX|tJZAUv@sOB zXur|6Wdp0;zlqQ;nDzDbq5lReR!GJDT5ZvPmoij;1YW%p`2IDcjY*zqCuSz!>)x&D zKc>l1cCAf+i$hqSq9Y#mi}W5hTTlhw|Gfmt&Q(TRVmvY+<(0Lr5(h8Jg=FiUvAbY) z$oeyX{(S$BYqvHA^ZIO~YL$_p&(RFF=}ohXJ~Y~zJ|ky(SCF3b8cCjq<*_~;&B?|QAR={}16GhS51UkGEmj53k<_+DV~+X-L9 zUaT#F^W8fjZ~r;GCw2okY7ERby$m)EyS_LVq=WzNEwuoH9)o-WkpanM;G0v1!wZDkziy%G^aW0twVEbtE&aQEyn`-S!8I<5o&I3 z7FJZJ>^rsJhXdkrvhoYqEl0|xlx{Xp6v;EP98Q42?I zrt+SonSt_L;Dg(N0Y?ERT@3v08sNAyft2{F21FzgVnaEkyseOyybZEz6TkyV1`y6V z^Adp3C%`=OKd_EJJB%le4(?T-!SkP40H-6j;z-Bjz>pHgV)#+Q zyZJjfU-^srzEIDy6@~|?nt1WrJGYa2ep|b$0qRssIa+ctdo^&yg%-tyk-Zm8#y>PD zhw0*rFHU=P>gYdDC|Whs#E?<#A}sYTm@R)p7~t}IfomR7^ETrK0vy~9WG)9bEmWIn zN8&bDCKj^npJ2$UIHwE%28;j(j{;H$0Ru+@V@?7F9;JG}CQJCM63G%|j{|Z^Hpsq> zkeix79CaYI#UP4j+)xf8sGmDgF5N+TY3~J-12f_{7|!`C%zwNWTsRB4M**q+5Zv>h z0l)SO_5P<~c^C;0lTvK^$6x#5)Qr#HRpu4`L-31buY)M#L5pH&DjacI_Aw=g!yzs# z_N;qy&@q2DRqh=HvsG)`Vvm+d%Ch&=nyOblsI^7ifKiuAmE+o{fyHkDOW#qKo5LAJ zs|X(#B!2ED;E;0cYybPofM8Ar#-5~lrpKNR3^^J|?$c#gMj2Fy%MQ7w5c1yjAR88d z6l8*kLdTvW<6mEiBxWm&v%ZG)^eezbqD*0gk(z2?zxxCb(O(;uie(!Z5peY#U6w5k z*cc#?bPqE@ApwF(HgDeSal2iOvu;28P-lAK7(o~olG6q_Z6LL!AP2XC zG}Zc+g?(93lB5PXX%&Rzzbtdc<*+_DAI8*v+Sm~WJd55uES8kE_~p5Q zjK8&$p3~+776d^qcS*Ut(OO0GF^>Sl0S7h%@89Vgz~dH0B&R(Bys}yK;t0`bWr0z} zQ}Hf+UM8b17mHrCSE<(pc$C8lc-?@&t76IcpI8>!1*9N39rkEb!o5zaTln-_EMr1PG{4L<0{dcA_?L0=Y6*CnI6cU}V5O;OO#$4c@(>yvqZNzaWN&GOf*w3VOOt z0?RkahYlSQ{`=$ddiSt#hamDqN2>}wLm9jk4{gI&z`_^eyTggXiRS<>Zv;k;2W-`e zQ;Z-IF#aM0JiuHu9o9SE0UJxHGd+MvBAPRxNxZR(o&*y?1q>vf7o;XOsZeALwNx*=fZ}Dc9Psl8z_uT?wx;)tny40NxM8-s z6smZfl(r~CV7vBLkuJUn1Bh{6``}s>i3Kh$)AQ>#q z24XD;v481*_w@57>P9e$niboci|O0K@OZ@Zg=@2#CtjSRF3VDmi1IdCQh@q0;D3*) ziTjDbF{c5~tp=W62K?bVz?vHWd$m2m_i-{n-?8BS`UEU*{Dzb#zk_MS@mgCJ9%Kp5 zH)a4PttUnCgF9tp#e(1VZ41i3^oi!)b<2pcwh*kVQEM}!LVRyT^cXSG^m^{5lIwkA9nOu)pc>fvz!|GE*#-*z}(GSTrhdhP@6 zPcvb;_Nj#MCW8?QG9m8VK%exkA_L7S0}p-k#meeX5wgOdW7JB_wiKmLBxL_**>5n|X|rIR{)E;RMHHzbFE&zi z;spt)l9CET?OkSP?IMgQz;`6d*31#mm0&<^)zd2X>>^Jr=xR7;7#BrhRTE*2&08w-m}RU0k3WWPQ45fEp*XtFptpaE~%A| z*lQnw_4OSvjhPgg>%km)1?N3|YO5=|>fWPns0V6RG|!3;b~PgxMX zf{_7F>Y#F`K$=1cCgF^&hc1HR^cW>e2qFIdnr%9m6nhMX6GRa(>FzD*Aw;eIGwfKc z4T&-gaPlRB#kJxr;zwz0;=S+f%+5kHbB@0`E`r(6n*o~X4o+A-`n;NueD z-cQv%PUVde`PkVfll?vMlLv!6_huO1UIojH=fT92M;vAhqbI_6`HfUGkAw_((~|0n zq~y%H`UXBY|B@dzzRe+~4Ak1G)b?Cn4ZTj;U)IjZg1P=-nBUKV^`BqBH2Fd>oPPEz zJ0kg>4*|)fwHYxDBLYpsPx>u4dv|_7bswKt<}ZAYr0iXRz{6ZysI|#aLFc30VJ|c1 zV4_NpM9w#v2T;Qk)T3Zs^3>c|; znrB@Dc%A+flnCw}dX;Mq0XOptSnha-iscb73_l*+G6!9?KfX~B=n>Z^}EH;)KBRm@Nb9$>^cVEoxyTM|Dc_XQsL7Wm6k zKuUi=62e!gTDePE78o%W?Ek$F)6|>8b6%ZbI_VNHDFf(|Y!D0qN(N5ezHxhILva0A zYuT=lhq0+jYqO(*-uEyOxFnljP{22(j%egzC@}-aXl+=`!Fzy9{sEY*T3ZrdD4ynJ zcLS$f4191WP+6!(8uzqrYs(#LNdqRI4dVme}=Kdk@v1`YmcK?X_&p1frDp1t(} z`IkP?G}acQql0tmquCRE+EiLa^XJuT?8U=R%l8sPJ`FhcBT2xqXV6rVaFWs=xcXt> zy7aCUfACM~*ryi5_{aOeT2i86r7o~edk9Pt%_&xp%+{uLhGSQ){%wmrxTTlacW8%) ztdsju_ktO;EGs*mPN}xRW_K8qv#4PD5xu}Q53Al0CA=t;5Mvjr&M*uxdK?TV{5~31 z=?=qW8psBQA+EHcMSBX%>Vw5H>tHF7(gvfWLpJN9HZcwQQE5{qub{ZtUTqw>Yk=4J z7p)D835;f7V*6xeN*GYy+x{bfnxdAbNuhs_VZltf))%Nk2|tF>r$X4iNNY2+hS-ya zX4!Xa_XMYt3|RhZr+=7~zb$G;YKiVW%m7-;$>wfiEIZAN z`)CHF7dZfNjwAwOPuALs#76S^iy8O_>lRP5C195Lv&ngvre-EGY*HGGlP-X;Z?)E@ zXaZqa*_Ax>;O4D4jR9im`+C;{|Aa8$s80W0PU;giTeXA=W?Ous$uNvuTwLO+7%*h} zAhGE$3=tz+2Q-%Px_}AiXl+GeW2^D!v325M5&{(N(r?4=C}6(+2?*&r6injF?G^3j z0h#ui17h(0rKu{9r0!nQ=_yQAc~LW0OQ>KTrq#o2Zf=%#WM(>dU31~S$$Y5`Zo5UF z5uyaJqyT+~YHdhjQ(biAfNWWYyz)Q5W%tlJz7fJS>3lG$13;SVwKgT{NSuk!F^}Eg zbYzOb#nuh>8dwhHbo%$o@8|(4n10gJ)5+}Fvs-3XQf_XpXJ_3x)zi#3bEPb!*gEI@rAI^fX@cHl+aHq7vbnXm*Gw3P{Bc$E;QHn)19ZK zOcGN2Yi&j1p}epEodscM&5DMpnnMNCPew)tX3w6D!052r+FCKQ*3;k_*{?XoUNcO8 z9ytL_7Ojm)ER=!x-CKY?Yt>YeHlEB8>d3Z`49E*!g}1&Oru*iAG0;{UVT0ws_8$(p zvOsG~q5}cEDFf?geY-g;lvwW0-b?Dba2i*^`v4MOG<7BbN2HC1seG-gtK*wl(;k`S zoVr@4QSgKDSyooYmrp)+*C3X=hLxpMUFnB4O=}Ah z2d52q=}$oA!SD<&%6-U6AepPcKXopQ87sl2^b3cjx`(kOAD*)$ID|9uPOr4LqvhBk zU(M{&d6IMVkyb)I%=QF&m~v535x?9uV3(9O*rmIcUy4UW={=2Az_S+s<+HP6Xt>Ds~S!}rq1tL!5Fia$)C zXgZxvY4PUWwKK0AT4Zi08>5eTrym-L*?XGnRk5_!0KR&gVP4i(?nXs}OAbQ#?p2s> zdNI7`*CVn{wq6JznNywr+FljP!^FPzD@bD(Pvt3`3t)d_?TrDbhuNMs9wq>(q_osq zDq2=bVD+_GzptTk8OJzRr?;8O}gE|Y3)E>AZnnpnS_H}qaya$rv$x?a-ks((X zYHdYyAb``HT9~tMpF1e`QXK;YH@bXC`WPpuhZ#h0U0LO*sj1<=tg)`hu%yo91ebo= zb}%f^P!0?pqqQaR$NG7|XEOoLq~`T?8Go=(ch@m|zb`;u@)5khd;-J$pTKm%ZL}&- zH<2pxK$HoN4&F9K21-5V?IFbyz`)h-b@^OLMf!*;rh*xocG0pgeKNQD>3^PKGYYOD zS{oNNSQaSGrh?fm{MCDu!xudmI>2Ps zJ~m8oD$RiW<0tUcmBI4pw_wak+S(N35Z(=8*Uy@NbWy<<@MEp_@KSB?QmjJq!HwNI zovFSw5?00>bQBChsAyT`$mOlY$BH~)(noi3ABv|`T?h<6UTaHY7movY;R>K4PhEzM z6_h*J3Xsjq;eKoiEHADDtD~g+?!s?a2;y;SZANsE0Z;Ov${M??JUIWd_VM!x)_%~f z(^-p)B4%nVK?Sp8T4r0VOS0>W8!E5t=aFHu>St5PU<3|qrh?fK&Go?3=K>B}>{dH5 z1LWXtckSwOfuo{n~Dy&s(?@KygHD zjU}jHc21jRS&u|&Mb6Y{AY_1U_A!;$S+0*N9^J-i10FeDO}&Zr`@sZ|##-=SJ`2n3 z|JK@?n1i?-5cdA6o8?$=kZt|O6am}Y1^hIRzo6TvsqcGqRzI@pJdTk5F~1BKHW=W8 zyMSkO5^~=e%ijkUKCcR8tnOKMhOd;K1Zmy>AZ=I(!;Gh4nf`=Yq(aB=8^6)ogyC>9m}iyg4wzp>lu4yk4`K0tpKn++}6e%R4|WBn@HKRCij7(4A!zFBKOx# zdI`&_=@N=(b<~MkTcZs`2ELvR{QRL>Xgc1D0Vubw=z%yd1MbEOSZ;k2Oe{tCMiDW8 zJLI}zeQZz>KuGOh)m&X(9I9YJ%C-ePI<2WZKirnaBvddvAw+r!`7x(#|7pXIE=#J- zI|+KqYqKN)^PdJD|6XfLqL0@Je0(pkV<})XC5|^{P#aoHi$8$7vH+Hu^TDPK(Auh~ zPoL2Z2{M0h|s-n4(=k#wF^<9u=`<+I)!`ta^~jQh46F1xe2?)ki5k zNrda22XrHr%5BVWkm}P$7ws!r>kTT22gkUnJw7!*@L)JCjajH*c8#|Cm~~ABM;lY} zlZkw$ZuT)13?_9SbJ_dARbA`E9=A9ef%k4xO9ICGeq~oN0`iWPa6NS{EDwJTZqO*L zEs7}aFK0t)JfN%PSRpl~+ErCr5nSCz`RBB(MLj;Xxl$i3<)~mDfuMa%-%YlBPjTTH zLys*?uFXADSIe@50LgvT;FnV_14fS1+M))nchdzYqqFcZu;A(<&Xg}OvzTzt#7^ya;F^3E|%>(!5<{dm3ynkuC>o|fPJ&zQ& zRMdyl(wKz`X4h!Dk2(Ll`k5a*TsWvaONKc~FY{ABjOum0e>*UHHDI!6ZBY2AF9+Va z87RmEEE=>uC9--bLMaP?$b+;bghz9k)~whffq(TM5Po%V|wPS@I^o}q|S(Jo-uFTjB-AbwfwY1C!u|{xuM@;+2Vn^qS2Ivw=}QBF?5{=>X#rKv-v^K@3*owJ0@!h< z!Z7g?aA#f&6)Zsg?{DhW z>0P^;sbEr6GBPsY7tB`CT(&cJ@A!eoZ?)PA#wV1Q)m4;1zA7Jh@k-!@4Z!f@w6>^w z6lMZ%+z5D^52uM3%~80pUnmtXU3m{p$-tE}feZiME?tGi;dm6OFbnb*j{*fd0N(BM zKBLm;STVu^$iv0jwhOaRk5ZM>t-%2H;kNL)&`L(yrc_Dx3ikA~>S+ZL&>OS9! zkAYj>(At=;A$WjQbATV;P(>%&IhBL~j7DJWDZrF#)#lvhjy>9zaouqADIgguAT`xM zS~CY&`591Mw@s#xj~8K^_b z&PUelE(vZJEe<}m_oq)*oYtDKm>SDa!R#Jw8%ncD6(VD(HV`sISLr2zD6f0-H^A?w z11J1mYil~jWd~M&2CVo5a5wuu#wdMek_gBmFmM#`hZ}$?(}6*wyWNzVVHg`Ud>d$^2>P^6esp|e{ulN5La0Vl|m0K5mn>dzr;TmZxASHpb6voIVrJ{lMAGW_AHkJBatNr-$>e#=Ypcp$F-3gWi!VL0U~SnqxZYz$Nk@+^A~ zu1_Cq*{;(k1aNVw*@aHNI#?_pJ97wN3`0?lZmyQZEBbhq;ic8XoWFQQ*Enwp_J$kBM1l?j8_rA81>oC=&Z4LI>! zV9==OyblZm)2I_6&zujT;vl3Qi+~MZ0sHo~2JRq|X85ZGf#)Iq_8lCD_P~1Ir!Xq- zffh(2oS)tg@A8lIQ<$Iw2mz{O>u>XNYbx3mTsJ2Zqz&%`oR6Ic_N1w>T=z6glg^J?fE95xqWSr&A?B{vy;%B2DwBbfxtaXjS_j{* zVKis-r!w`D1T1b53M!c0AU!=jIK4!!u5YMya!EOTAfK<7jqf93PF9;vKXoqf*!RGY zqa%C0l5F6I*VPI=MzcRXB*LGC;!#SXTJdQ7*=oSksEOeje8K?3vM>%FTnEpIr@(yU^Dv!qDVPX){L-OZG(UbBWM>H# zOZfLMt^LZHYML5DwDTg5O-=?H4)y*zZhJVajd`eGc8``DP4dsBrT6E5Q+)E3=dS2e zy6*hwoS0WBg1q0nqnY(HBgkL78|H7RdX7XBIL~~o}}VM zDjt$@jebLcQIpiPkYi4Z+;zhQmy`-_(o~R%=Rv&aHi&zFg|uTSP;?NmmjN!Pzp-?f z=NU{()gVAVm<4ynm2ju_fnm}mFdTCdj2GPkZor7JTuR)t4&LRT!28>`04s#$oQZ%k zSXH3Uw<}BP5499s3G^~q5}q_0CQRpvb*Nx=pTHTKv?X)5JNN$o+dZy$O}POG&(ohM zu>Os$tY3iQJ;00WdsiGlmVwV70@i*3n34|Hd5u&ata3fC6G-l-2JnnMMHT-E=f!0h zJ;N|CjvVJZaOqtT1uul1%OL$aA1K`ml;;9M1eR=D#8^2zO%S(#199s&@cef+%y+*8 z^Tq!F+lxsDzxGQw-<+Y2X4I=}12Gtd-)f{~-{dvg0>rX4rG&Be3D1R$jo~>@j6-j) zZjh0Y(eiDZXxYm0vc_gZYNoCVQ+5Ys_E}d7JTV0*&FTK%E8g9&^MJd@0vo>qEGdyM ziY|%jH53nW>feC7KU9k|Oqd#%Vi^j9(G2VFu7UN@Z(;c7JYee0z@VW3?;lztiSqH8 z1$aMt1omlz;F|k5WJmW0T`_+ko4iz zQxCKIkl+Fa+jj45ylmLW-Tj;eSLv$VS9f4Jps@;gdMa?*AA#vls9sxVxSN4>UjW~} ztO}UH7~$XoqI#8zz^C*Bjynsu`4yn=&{e@6(!oOSSg_cnygpY&V3=SUEsiA&v9 zW@~hW+P@@jTllUe>Z2$G70jN~Dw^Lf{nQU`$8 z>p?0HK`PFMu=iIGcb#evecC$ZP_wvxYn8_yqF@2IFit+1XqTAO2r8I8qm75@a=E0U zq@!whaAjs-jMm1*K8%|3;cNo7FIH0?6t7M>80K&#p4Mo}2zn5{YqF{^_8$(McavIp z!Kl~zz<{~WK$vcR75ueNgJ1qW$jVQE+Dbt7`roezUc9B)yFDM?_4&ZBa}NI-6ZCtO zP9Yp8FUv07l~oIGuy?8adrH~fuwBcfk04npnB66)p>(Tg*3{HAJGkWCX1J+fb{oG) zYOys)BvmLcx*fRiRyBW<;`=zvNvSaX`7!WUJOF;h#~_N=Sz84dqPPT_7~92~Aaj;l zFL8f)&Ot$pY(J4#4&PL01`h^mI`LiY2#sT+P2-5eZ~ztk1sEeVjB!fw~-~a2>V&r05`v;=2XUMGvsLE z6VBBBFira>Tw^9feEV-eS#{(KAW(Wtqrenp)$y(n0Y6|&N#VU1M@!>TI>5gyi@=Ta zy1IH{YZF&?C2K6P5Miv=Hd6ffI)?CoH5nK_4mj=%;G~Oz?b81u!v1#>42dz%7DPT)gF{n{sNqOxf+eDqo~(NVo2@-!}zm( zWdUVbhPUD%_-%`TRi6R*2h|p1`Y10NlMt2@>SRkU;0(^cBu|{)A4KBAd_jG5gQ0@i zJK7X5$UB(Nmz{NL+2H2J=y&p`9LD1S`i}t4oCchH32?&ibRG2?X;_wpb>s;!4}S#S zQ?CNQn?yGZ` zoo4n;x2R%98{Xq@*nB>4$z5vq5Gs^W!zY|$PK0^Xvv3YQ7Si{x0C_p;kex(@Gnx?A z*u1R7RS{g_$8-A_;@hSOGvTU98|zTP>>Vw4NvoGx=i(2^W|n9DHB2Z`KoLph7&uZb zgmBrtz?jKeTculAmO=8=8E}u90O6O9fqff+q8znOt%Xh{BM!q#yfG!e*3%#cFUN`z z5K9G_F3D25NSkQc(gsHv8Nl&?WT8{)2qW_9(SHOm_GI9cOM$bmr@53dfUj!M(I-Q? z`vZ6iG9fH|56Iu4))MxpJu|6rMh3#Lo+c)F8_>`$I#!BM>XfXLlq@Qky{An+<~|2= zh*(mba5bjUy0Q^M5&>BR`V0n!9S59t1#te~X+Td5!Z8ezk39|21E0fFlnLRx*VMLb zRR;l)(3F&LqZZ6^@2+;Q3Dup%6rrkFoK7m=Q^D*7LHn4#8*{~u9GmyzsbvO7-4Jjb zokNEkSpt&!0E3PK&b%79=#I#>_o9Rij!`_$Qz1S472JiH5Wjg5$X*4w>~tX}oG^?c zn9Vn?soNDSmeRErg67(YT$c0Fv=U0!XxF{OCK)oVjNwEUB!!L!VaAdIT<~|`%9%8e zG7eFMGv%05AwK#YoL@W)viME4LkxXP!UM}mydgCoXl&P=M2=vmAHvc-OiC9>PfsVa zXU`@9(P+~8X6y3lrlc!OyfcMXkqHxos2xkLO9!Ujq_s7aUSeQ@)SF&{OK?N{`BSx@ zB3+N^9R!fT*5|p+ivo%jv@FZQo76XAmzIo8P#dWxHVlb_aA2mF8_MbF>4D9k!;XJh zmh(?QELN*ErTUSn^HYm=oC}k+?d-WL?{~OAli>4p_3b>88PW6#BvEY#_OHwc_r#<` z6Cz8n-#-Cz$$_vGI*9$zEOHPqkYy(4_~r7IHUTcccX)k4tk*CRbpbQ>6U@%--8tex zi|Cv#e6%ioxZQ54i5U0D4A&fX@zXO#3l+-*gJC&vVc7ea5j}J=%+V#;@X=-;vx+xl59SPZ6CtT|gC-0pZ=vF?QxXo+SV^buVSs?MHyP5h z0atK2Jh;*ZNA%i)*$KcI(QCv4R4~Iph-g`Petz?|iNpFg!BH~;oJngF;~$0v8YFzvO# zp?wj(1S#7~n4>1N*~eVCw|e)$sT_kehtv^FJS5Cyqndkz0vU{m`R!ITY=uY^Tdi3(=IU@!sZ<7p<;+ z?6q67l4=W1W{oCVj6GZ!j6lh5;Gs#tX;%VgTm_tR84%&X21?J7>kffm{}qHab0L*y zYi&+K!7{Aum6-i^Zn7T;Dpo**>r)7LSLAJwgos}w7SP8CE!mp=3%n5hGR5ywaKify}> zz;bX9!`V1O`bE-46kR8-fIb8>x{#oKOu5YN%^zd1mUBez=S#q+L>5T^KKVZ&do^&=%YY>+0bdm5 ztuNjM*XuVxsyLvvDY}5L#+nAsTNL9ZY%7!?n8BXm=YZr2B<3qUiuR-Z5D9lgP{4a z;fL6&;d=9L5O=TC&C*;fpuE){wXwmY4|{P0Qp(6Gk0b7QF%dI#12n{KIv?Q4_Q_EWVK?2s?j`S8Q^AXNN1v6nVTcceg{Z|WUbq~%>LK7S&!`?KrBjI0 z2KTGCK-}|_)}~Mt!6b}rmreGD3ix59C|6a|hhFMLFr$pWp>#Vhv$(pp>?FoeYXU}U zZ6gJMB^6ly0g&^nTFAZs2(2xOS)|-8aKC&#_zG}N@+0~nOmR>$6sm=tE3T7;zj5?eVsK^7Jm;(Ic1K_kPw6-ed z;J<$pp1F?!j6h4=#SoQFIX6^y67P+DNVKI(X6YVg;!s@(WUtcV%54Pm30_ z6vcFs7C4>M)z^n$9(N}2$NQpu(fbj~%XC=!*ADhAYtb0|n1eL{Yd;5yvw-{l3-lSJ zwMCjCmmh%p#Xm!;jBFoSO3&apgIw+wYeNB_C1Bd*Us56njdX|*gtV6LZzGuXZlMr5 zsq7!0FhJ36wL(yRxz@&Lg1BulT#ud!nTlmhq6{B0XRh)P))^|`$LD@V`_Kvc@GxyP zK=B?et{j+)$thpgmNaFZk;((6$ag`f^n&Jk;NLd@e|ZWx`4Z@&2CyW+JMSs*i{7Bl zN{nN3c$Z~2p)SN8CXqN()a@ZG4f;tOQu_hJj?wDsZ9L3uA+=Nzymg$(JdiHS#yHhQ zzIzb_}YPg@f0#XsJyBq5mI1c&s(z=``;tblq^udYVsN2NQw2}mZ zGXm!5RP7JMpI*WQ3TBhb<8bx0=B5&Iww{(U;ugiT%-^myr=Il{Fyv^hEebnwQ8wJq zT?yGngVACgLI7g0R5bAJI)Joaj-^BteF&zu1ny6;2kv|qm~ySw7WEoocGB zBqtyNUQ|pcGa(ko#)9|t>U@8s3 zFfEOu^Z?EXd~`QZQv_W7sMgl>7=G?E;JeNb8hCp8 z&`X^NrqQBhzy|RrUA7iSE~>0;Y=ULm0FY@k@F(8z7jOUJbzt~7;LJa1ZBX}+WqAH| z3&f3csaVD#qQRP9BruHtA1s!wqA6ISAFm-B1m((6zizbAhhW;OfTAodEof7~V9AoD z4bv~5uwg*co@u^hc}ko?)JfRa8Nj6T0c)z(26Y+Xm(L(>noBdV;}B)=u(`#bbDN1R zWd3E#?{U!|QwWpz`8B#Ks&u$0AK@qbNOr0Jdsi z_Qk-X-vj-JYi-aGA@zsAfBCf5W>9(v!?4&v07Wz4!N=b z;*xhEteyknrO~kQip$t#uszizal3p3G$v~)+G zyWs1_#r@A-C^BpvXsx{XM(_gb<^s=N0Id8}YirsduKF)L_m79L>}`OGW!yp-R{W`y ze`Rr*(4>5<{&6H^{-uF6MEzj(Pzj3)X4DC+`Xe1|672PcwABPU*#Jm%hzxu^8;Fr* zPhr7q@E_dfD|ttWV;DvjjA^<5&G!_$B_ejV9IGHROwtEXl?O!O^nv-hKP* z2TnR_nTZ4g6zl+g`6zmqRK)U$b0O_s5xr|tA_oBo%kd7&;7wl@I2*bmmg?Wh z(LZ!j%9bw4Mwd2qWt9hD@7}$xpDvp6%LAP2W|N~P#aBs&k{B=yu;d-!q)UL2<05`J zVd2Y=OLj&4I+W-kgLSQHFnt=(CNQ|2S3881fl;?pG6?|eQNM1qp&n-R30#(y^YZe% zTMDac>)GU0vJ98j#!kvgn>X$c$9;6VH|u^Qkp|O<*#v{-fH@BV8@~oF`3G>y zrE1%-ozxa!^3IX|-oeHL`K~5ym$#_Kt zQ#)FgS46klEff`(xNoYc_4HZmn zAi+zs6%`fU(@s0hw3>|i_BvzkMJ6H+(b`B#gkV|Vz-D0fWx!+K1F8MH{HLU`3c~Cw zAeUrPp-faHpgLvb&Ruz#&LE-eH2<=N#xuje?0+OYTPgsojQVw>4HZo7Xp@tv97RP% z-oL%PbN3YwoK|3RRt=#eVj{x;Rrx^rMZj~bfs}qn{0maD55fz71gR^DiiH#n@THQl z@>jbn)&z*9)LALKU|6psI<^MDNcz}6r-G>s?b1t>qoJXJpEPNbDI0^&rv&`n3H{N z=}75*kUeW4E_%&Zn1GVN$i6}aLg~OszkHYVb77E&*(L8%A*pD4M;Hlc9Cqxk^)~bJAhB%qF7p@7IihH4afc9tNrS6KA1avI6DXL9 zIEov0?rz?H&HZco)Z|S}mgNc5%hVH0z(Hu|H@zSOl96%kA9?;yk7azcCtw2I#=CSL zbC%YYhJ^38Lu(VF0v(ApgsAQ(3Es>T2oK*i#r6R2QnOnQ2H@II#C@p!xk@(wy@ugzPSJ^K7Nc&DRQ zPdBChV1m964*sFh(g_RkNuyM7+<6OM&u2dQW!?H(f61mc)qU>1=UzGh!~j$govTV8S%L4c6(m|8w!{gT2QVN9P_PdrhM3$}K z62}lgG8vtlj+_3$lbs1)s@;c(k^a5=Ll1mp&kXEp1fJ-@e-UiOpv72CO7?xqTN!JE&mBCc(i! ztq;`3jT@V<`)1ddw&WqZXw?@AC5|9~%yIJEGQGI7Vi__rmZp)!CR8wE5Pxna z3EIc>0`RmPudL7iWv+L0hSQjG0J1F86&wmBHc=c)k14fmr7-ff8&=!@nOD`&6!0v2 z{dt$Ik+Iafj9q9g*%*ZoLKw9=yByRG%;$O5+w9COUvB!59K7Mh=Zds|7dfAZTRltMsMEX}!$1Ly!7!*ozKx|w|X!fwxd z^9tNGLC+}PPAvEArD7RJP{E8Nf$ye)%%|AHt=OxCzJ7J8R|NX~Q zEaMQGhZ%>o6gHSWd$!z3+KHIoEXfaTcP@QsyYrWo=O7W4y@d@=X;}pMWqLb*^Hj#N3 zuXX+W@V2IBOX}=j3%s{R{ZpE{K%sOQ;(yqTR(qXc!1C{Fl3$woQ}w)nm7Y#hN0d|4 z%$`Q4LvalCFyk2iekRm{KxnDN9$4&v@gKeic21F0F{jA+;-;zI{gZ~J-jHmu9>=hZ zQPUSep~MRe1CceC9THN0JpISok3tm^2@uORMF|>b{f~%1 zm}&pD6QOJ;mY!RNQ?X1is9+`-WX?k^4{6BSvjGpe@9Vlc)ckFe`;nYOwQm!zOQwN9 z6p9MVvZyf*T9~m%yz7qNnl~P4@)?+8DPEsU#WDe*f|-Dj#cvTZ@2L)J&j!wtc^TfN zRiyr=ZSuSY`x|d}*y^((iJ;ylMXwMUAm%=G>l>^O-nOCX-yiRD9CC=n8$8(zl{)h5 zc$Sbq(Zrxcg+|FHFl#UEOV(AmrP+JDvVU?E*pS)~I5W<+L%cPUY(A^llRJI5XY!>Z z%+rqUXFc6ywhRVC=T(%%h7f>oW>=Mm{I;>s&7P&esPv~N zCy}SdGk}|R3`$g}U?wnAhng{UAVJ14UcxMDlXk)cc%3avw*oK2xS@^+8|ttQ*`AI6 zp6os0s^Q#~#}4jy3ruDfGMzY65)VZzy{si~d5QS^9XrKLfDcX=5rgW%$^p5R#Ch*T z!nvCO(F5=75%Cy*I^LhWq^CtSDLm-%Nl+5bS6_-S5^?Q36iYKEc34k(EO zQTtZP#-yqxRookQ>=bu)ai6j^u&43wL+LD1M^Fz_N0952i82FberSEhTOw(hpjmUv z_r~SbXf*E@=Dd4Kqj7kjjaT4jRX;!n=!$oi8*u zHe?fl7wC{qiCKtpV{;8T4)Z(5FKSAED^DuzAh;(~#U8b4kK$QUbPp9wiVrdk!DaP= zh0_~cWcs@8*mUVe;m*cJ+fGOV-Or@NAj(9JZCY7leD8u)jvqT&JqgUWZ1pPLw~i$C zTSw9xo8p7+VNzNl*Dxd_mjQ?@&CYETIV%ShJTSI=-P{1-oOQy?S;y5(pFY}hSz5An zJYzH)z|y%GMN=e+F;#4+5|=HlF|3|b;K>dW#o)l6*8Iw+PEIAVEMfLUGwn)1X#*8Z zN*gjx)kaCnW>TG+l(!IdtkzIU*V3fFMt^vlJBH4E~#P)ZU&&mVa6x&aA3$S_*eF zz;If>6iR|2%Yeif4=t`>?!P~i|MEY@q`Vt#xQO?LR6?#{=}eB&C8&o<=`xCF`u8yhIf%uxf_Kf;^@UqBEoc0lPRMDZ+*Cg-XO`OUv=_HGH< zV;4evl>#PxaNj(H79pT?3o4kDZqc&O;}=djNH9Z|)_b=QWle(g?(386%-~e-<*=jx zCbPe%5}n*rx`(U?CC9-naGSCl4d2b&waZ(ol{=?U4{J34k+;5 zMm*v6eo$z5{JA}z!cKyET8_X}k=DFQ(Q1J#Qs0u&d+4-_5>|rJPXbd=I;!6(tgC}< z)C#%P%5!@>`9U>}J1s(>+<*LyX>@&`5_YJENeMfh zMA8Z!1qCVh;x*gw)~YEE>u|wyIh&l81f!LqrSMg9~ba>AyPzw z_bOY3Qn~kJgNfFFr9=cOn3RaoK_qRkP__nV9B{yK)Cy$$GDX~U?tsSo&B@-;Oj0Tf z#y~qK>j46pF`Di9HtFLtR(amrTGrwSE_f$p5;f=^ zCMBwLQjfO9eQeXXy2u52Ru1-N+sS*kkLI&}KiKw|A+28@a7J2>HjYum(k5Hhe{@iK z`L%sgNzmje@M~axW$S$+U&9h`2H!7HDA9rnCMD{$MA2sC`r3xI41$3|X$WXgt$a0p zQHqLrW%yy%G2W8@JGS6V~8v@-n;jIF0L`-|b$! zy^+*~h=2`TdTkZU^l>1BGvdj~R>0%X`V~=h2o+39f1W8TD;AcNI zujOO=Yx&Zy`KP(gJa?e$%HgTzt5|EY2}UdJf)b-B-XzO$a1zsoUA5x(S8Nbg0)iA` zZ!%N_tlC-RhE!tlG($FnR47!I&i3vjNZ+03+)=< zJgk_wYW<5xmaJ|%`TNFIsH%xPr5xp=K( zSx{-a;2N;)ilr;3d1itUbj^SgD^L%U5;Fuv(gqfC7lOQ!HaU4W?ZmdrHsjfS_1@3i zO^x~Ry8WIe^)@wu0EA)xpS^nlj zwJI{`R2fUPPAx5+snfCEXsK04tF59Pt0PV=VwH|oK&_Mr3QEgxD=29o&|HX^ut_$X zy}g(7bau15oSeKH6HFkx`Tu5ib`{-h5|aNu?>XmrVjs)!OZV@VcV7B-a+S;XPu~IC zuVas#?dSCM6H!^hn1aBBF{emBT3Z|C)bB9+wkXBUc$=PH-Xa$zV$r>1rij=*?7hW06#LGZ2PTk1kfd1)S4YgZ7_Ad(Lwg#?TwRl{(5@${2Kb} zoTWmvoy+RGcdlwlcM_%bws!fz9MC8|^Az^nN_IRx z@+D2e3Nw@v1SXUuZAdjKzmVN#Z)SdJ`?hvdY-=~|Zc6a|w@;6!PawLCLX|{bFD9W3 zMJC-sLAf>(dT8Fd_6??F+oheIrBwWCRmth=s@b26Vz@JuECeQ$G_9F?{tO8#_xiwU z@8kQZCF$^Ei%*Nw6vw`df?=XSMeYD0D$W5U5gSCwaP7{mao-<*v8|)dlx(_Gm3nJC zC;z=j-%!hBqp2N~HUuV=JgwT4N_gsFSqRN%nrMHemw$WX38`JDPPDHL+2%>v;Pm>5 zBx<07O#D?;SRZlKiZ?$Jum0qnk9H}WdWwZ*zN%+yP6c}%ldxI|#y*%Do~ z{y-v{``Vex8fCGD>72UpIL1^FC?^O^C@Z<0wB*v0Ru9d>|1x_sZJ0Zi>hGSO+&684 zIV(KDnoj-@k!O7Vcx2uua3CCwaG>t>j^N7+>RNYb-ImlHux=ZB*qI$*T!4jgGd_PK zKv`QfBO93PvaZQ4ftkHT`(i7#zt~E@fB76|$3?Y0b89A8=NT1M73A}cuS!!Gl$4$= zjp^{3nXk3~iKx@j!cskBIiRY{JVkQe6sCCBvHnZ|MjQeY%2JVaO*J(03cF}CkFVWK z8>dy!mN&kfoPUbsx&F%P$>j0nYSr=%PCs1pl6b;LpdF9e3xn@VV{jqX1#BEcLr3U3)XIJsh&kR$r z`yh^tKv_dzLfKn1qj1mS)k1ZduZl7u;8B9Ja9i3;o0m4*+ZWBSPrmK{6ANo9{O1|r zst|btq8x^x2&S|xjfS-yyyTiqa${c@vZ<|47Twg7xbZj+^>mO~Q%#OUT?yq6y<}lr zQTo!ljSX|{OS`C^8vo}FTKJC+^TBj9a*&cy**7|@GzlX13M0{$G?rcbuKeyboA}*9 z=8d{GOHbT7y}Yka1Gqq7!nkzrjG_}zicLYWzWF}A^2^dlw&CK z18+NG=U-an55BTq{%%`0^$xLF`r(c}H~lZd62>J2CX7pqX1Iv%Lc^3K-;I#-y=}B+iA)DB|Gz`OqR<2)e?|ToN9vW0(DU>? zlTQeWnY`)Ydim?;o9Sb1ebRDy-2bS^_dmm#&(X2cBlfxgN(}-N#=Rjla#t_iW*_fQ zko?&P^oCEE$@6QYH-{_IGbmKm*X)3Y+sIwr0ju|qry~we&h2LM2v2-hxAVk`1GMgu zM%q^-AZ=~hOW}p|-f{}6N&o~Vz+puixr-v5g5<6qip_eD-hBKFr)Ac0iCLeWXw4JB zurJ$QPlzKpw^`(93A_CH5cq|lNQ&2N?36Fx{UL4H9izk`ePA8!O#zuVpUie>0?AZ- zn4bqgc|u?UDDu^&GN@WTdXm4-pV`d(b6~;0X#0sF{`Uow&DZ9iWPSDYn%;{hg)2Vi z2?WB~rUyg&$S!%vMIIM@1~P~^Ws8Q^ByC;N$SXgL(f$n)?o_Hry{(-Zl6+w;$+eeO zkr@aN$7XD;x*X8|RbFK<8y<|*1}Fl%WB~@@vXgeO zvzzJs4%4q~q}319JB!=9de%`o-Z!9H6!~!*(9wqnu4^7%+H_eU&7`r2eGsMR&#dF6 zFSKSi^%OfQV!AXU$e&FGfI*ujKl5$yt7Y_Fni7E!^E6e>UC~+2f=V@xu)d1WDUTlXPS@FeM+( zVpf8bSxTnfw4}DUP5%*0hA=#AIimHD=~?|`Bj0i6-{sQ>)0E7;9=)P;Z9;&m5@2{x zVFC<;%M=uH86Box?xdYP)O*I;^vvwzomcMveD}PmmHt`2ipna(=c{xi_X@#P**C8u zcl=XYlx@8yIUks|<8aJk(VG(9Lm}b=NfFw&x-I_nO!>9sgtgo=DlKC*mFU^kjHzZT`8Ci62y`z zZAv<{H5E$0+WiYO(G}(jv@pmz|rG2ek31~@)H6RAqjAd zAus`sK0P?a5CRYZ32=-dFaeG|gdso)D2c!