From c552d5157402561cc6b00576b1e62895eab6f2d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micka=C3=ABl=20Schoentgen?= Date: Fri, 8 Nov 2024 21:17:37 +0100 Subject: [PATCH] feat: new locale [EO] Esperanto (#2253) --- .github/workflows/auto-updates.yml | 1 + .github/workflows/daily.yml | 3 +- README.md | 1 + docs/eo/README.md | 20 + docs/eo/screenshot-ate.png | Bin 0 -> 64334 bytes docs/eo/screenshot-board.png | Bin 0 -> 66497 bytes ...hot-pythagorean_trigonometric_identity.png | Bin 0 -> 27428 bytes docs/eo/screenshot-tjaty.png | Bin 0 -> 22193 bytes scripts/__main__.py | 2 + scripts/all-namespaces.py | 3 +- scripts/eo-langs.py | 18 + scripts/eo-tags.py | 18 + tests/data/eo/Teodoriko.wiki | 11 + tests/data/eo/alkazabo.wiki | 24 + tests/data/eo/ekamus.wiki | 4 + tests/data/eo/kaskedo.wiki | 40 ++ tests/data/eo/komputilo.wiki | 37 ++ tests/data/eo/latina.wiki | 20 + tests/data/eo/luko.wiki | 55 +++ "tests/data/eo/\342\231\215.wiki" | 9 + "tests/data/eo/\360\237\222\200.wiki" | 8 + tests/test_eo.py | 124 ++++++ wikidict/check_word.py | 5 + wikidict/lang/eo/__init__.py | 304 +++++++++++++ wikidict/lang/eo/langs.py | 420 ++++++++++++++++++ wikidict/lang/eo/tags.py | 59 +++ wikidict/lang/eo/template_handlers.py | 243 ++++++++++ wikidict/namespaces.py | 1 + wikidict/render.py | 30 +- 29 files changed, 1457 insertions(+), 3 deletions(-) create mode 100644 docs/eo/README.md create mode 100644 docs/eo/screenshot-ate.png create mode 100644 docs/eo/screenshot-board.png create mode 100644 docs/eo/screenshot-pythagorean_trigonometric_identity.png create mode 100644 docs/eo/screenshot-tjaty.png create mode 100644 scripts/eo-langs.py create mode 100644 scripts/eo-tags.py create mode 100644 tests/data/eo/Teodoriko.wiki create mode 100644 tests/data/eo/alkazabo.wiki create mode 100644 tests/data/eo/ekamus.wiki create mode 100644 tests/data/eo/kaskedo.wiki create mode 100644 tests/data/eo/komputilo.wiki create mode 100644 tests/data/eo/latina.wiki create mode 100644 tests/data/eo/luko.wiki create mode 100644 "tests/data/eo/\342\231\215.wiki" create mode 100644 "tests/data/eo/\360\237\222\200.wiki" create mode 100644 tests/test_eo.py create mode 100644 wikidict/lang/eo/__init__.py create mode 100644 wikidict/lang/eo/langs.py create mode 100644 wikidict/lang/eo/tags.py create mode 100644 wikidict/lang/eo/template_handlers.py diff --git a/.github/workflows/auto-updates.yml b/.github/workflows/auto-updates.yml index 7b86f09c7..d55af8a92 100644 --- a/.github/workflows/auto-updates.yml +++ b/.github/workflows/auto-updates.yml @@ -22,6 +22,7 @@ jobs: - "de" - "el" - "en" + - "eo" - "es" - "fr" - "it" diff --git a/.github/workflows/daily.yml b/.github/workflows/daily.yml index d2c62ceff..3060ddb74 100644 --- a/.github/workflows/daily.yml +++ b/.github/workflows/daily.yml @@ -19,8 +19,9 @@ jobs: - "ca" - "da" - "de" - # - "el" + - "el" - "en" + - "eo" - "es" - "fr" - "it" diff --git a/README.md b/README.md index 6610f5b7a..8753e257c 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,7 @@ 1. `[DE]` [German](docs/de/README.md) 1. `[EL]` [Greek](docs/el/README.md) 1. `[EN]` [English](docs/en/README.md) +1. `[EO]` [Esperanto](docs/eo/README.md) 1. `[ES]` [Spanish](docs/es/README.md) 1. `[FR]` [French](docs/fr/README.md) ([news](https://www.mobileread.com/forums/showthread.php?t=330223&page=2)) 1. `[IT]` [Italian](docs/it/README.md) diff --git a/docs/eo/README.md b/docs/eo/README.md new file mode 100644 index 000000000..414ddbfba --- /dev/null +++ b/docs/eo/README.md @@ -0,0 +1,20 @@ +# Esperanto Dictionary For Your eBook Reader + +**eBook Reader Dictionaries** is a collaborative project using the vast [Wiktionary](https://da.wiktionary.org/) database to create a full dictionary, updated on a daily basis. + +## Interesting Features + +- [Kobo] When selecting a plural word, its singular form will be displayed. +- [Kobo] When selecting a conjugated verb, its infinitive version will be displayed. → [ate](screenshot-ate.png) +- [Kobo] When a word is the plural form of another, and also a form of a verb, all versions are displayed. +- If a word contains several pronunciations, or genders, all are available. → [board](screenshot-board.png) +- Mathematic formulas are converted to SVG. → [Pythagorean trigonometric identity](screenshot-pythagorean_trigonometric_identity.png) +- Hieroglyphs are supported. → [tjaty](screenshot-tjaty.png) + +## Downloads + +https://github.com/BoboTiG/ebook-reader-dict/releases/tag/eo + +## Installation + +Copy the dictionnary inside the `.kobo/custom-dict/` folder on your eBook reader. diff --git a/docs/eo/screenshot-ate.png b/docs/eo/screenshot-ate.png new file mode 100644 index 0000000000000000000000000000000000000000..6b5e99349aa5226fb7c37ad8090c7bec6ff498ee GIT binary patch literal 64334 zcmc$_bx>T<^Dj7qySoQ>CqN)Tg1fuBTd+YhxCVkl(4fH`0t_%X0TSG8Ai-^L3$Wz- zYOCI>{nhS!`?hNTn3}nL&gs+LxBJsQeb0^6P?N{TpuhkC0N9EOGFkut5*z?P`HY76 zLYel}cn<&o5j0eEWS^g(RaI4Ah>MGhcXxN!*Vmz;p~1nyhlht^Vqy*s4x^)^4-XH7 zgoLK1rdU{5IXO9xkB_~*z1G&&X=!N@5fMm8NKH*mm6er#etxpDvh(xvH8nMwnwn^6 zXzlIo0|Nu6r>D5MxFsbeE-o%oQc|R(q((+Y78VwJdwU`xBKi6G{QUgh-rkdwlT=hx zU0q!>Gcz$UF`qwwzPPvu2nfi`%+%M{-`d)8cXwxHWgQ+K*3r?~-rg1z6ny*kEe{XR z`ucieVxoeALV0=l+1Z(=r|0tW^4G6l$H&K4S67vlmE+^%>+0&>zklD_+RDht`0CXw zPEJl58k*zd#0d$%Qdk=5AF#wf@<1p8o*R4o^ zIZhk+{Uwg9rd0;p}Xf!k?mPTT030+^y%YN1kSEY`G=Nswq9wk7YYKbYki+r z?@-@49rm@Nx7hF1V#v{=hX}-bp@HMRN$=6A1&xM+LOg&pru+CX&eX437Cx!a5+;9I zZ_a_4ujkUk0CFfXdRfSdYc}kg1pAuogq*bgRUCBK`VmiDP^;!egf!ICFURTGRm4oA z<>CV5*qAh3n2I!z(^hqMpN8GVfv7|<0uCv9!JSI`2{x$=O=@l+7>(i79;We z{F$QVe)MyW=jOPLqTPC<=lr-bI7r;U^Waa~#bILbjY1b2&j=JBrEcS5=uy&u^odjv zUR1M7>f)E);bJe;!MNZ2s4^|RvQPJ8fn}wxJnx43FsRAYPYEsshwC?s`yQ1J)hwebh;V1Z%Sl_^Rr#-UL|2agjSYrlXy<1q^pJ?h zMW?`iEFmt@kc8iqR2$vB?AVtE+blp$+CsJ_fP^+J=Qf%ZGN`qOh z_ZEX#G4o%$p0Zx^J*!^k)*Un*M^lv7>sG(adEZj0icYgb^};*2qqT>1^GL|F&V`4g z^^cIE{m_IVdG*~F?;?$w@ZGyz4z)XU+=~|lq~H00dK67 z^ir=(%$HK;v}XF22Jd#ZxqRGH@+l8mur&K8g9o#g%OJX$QDO)eU5(T__8Vr2K=wS-iaM4!s)OB3B(op^O10;>sflk1^+8jMGee!r@Md$ z84ofP?ss4{lZQbEI!19fqqicjTkw4RERF}!3)km`BP>OgV4~E#N#BoF|@0lz#SrJG? zM_<*9C=z|Wf2yN*o)=6VP?T;VeVupO$NceH<#*U$XS?hC$)TnnTqJ+Y0jpThWR7|V zh81~0`6pF(RDiWVU?n9K=O8`AM=U5xzdX+_!p9zjBfoRuji^#lj0wIey2FV1v_;)e z_%!9!CT$Nw7H^m?+QFLG90|(L2NW41w8}JHdF#6Xnh3BDXy5vYc}JnDHcTVEaET5* zGQW}rn0N3aq%kI8fj3pB;v=8Q|&Ah0d}h`NFr9p?YS{vQzY{Q;LZ(Qk$n~#nknaYoSK6x2#II@ z^uQ8X93Ta=pn$j8k`W3cOie%iRhsbOfXkT1p!|@4=&+gSTskKs77qQ2-Xiv3&{Gv- zA}tyY*0*dcdl%VGa37y&sj{)HnDM(J6=Lf+Go}>;f3O9C$2Q)eP`hjyTl_p1cL6G8 zOHaAQ}FWOg3;5Z=hQ&Z-J z(;dF9R9QmX+-1fyFfAFdKK-r~D6?Q%fOPZS(*gXxsfDv2?h&;+0yL1#!jmQ!nGcZu z7^1De4h`(uVvYk%R%HB27hdB-^dcZnTxvn?L%k)_Q*E;hM@+53_F{bSSmDyIlKfx* zT0PzdzI_Pn*km)Yjk7N7EiwhD6F!VH%a(kz|1txX$;R9*Xa0s`B1d&0?UH@`HL=mr z8QRY1Qk&&c=wG9cFH8da7U&aq&ypm@C3E0d7wvR);QI?s)s7Os18h3Wt-;8dEjR?r z@S!+{g~)^rU7n@+vi#0|ecb8TjwPtt7Uw@#*pJWa_dD z&MlKyG&9TR4;JULYmoI3&E(|8Sez50FaffLTPoUn!H4@>)o(TL-wo7qWo2+dy`A0U z-&e9?@HBFKM*kahQmX1d7?|VKv`{K$4@wN`?;1^9u=Y|Uco@k)ytSDOka?({sVBy7 z!f;psv)KJ5Vccyv)JVlE)PfW+A%&=!(^xz*NYo%#-n4=M1LXM(H}LXH0XGME=!Du? zo))-L22{zz819tp(~4Q6%5G~SZ`ho*3EZwXE><;O6(QW1I9$;p3c+5kDU)z)`8uzY zdMh!v*={Q)PXp~h_?4bL87208wAFCpm?ycC2Fetk(d=8C3ULPWl+`lH3akl-Hi6nc zpm46p7xy;HkmWB(J07^wv4YHA0Z0yR6qW6Ba;s!K|DYealhBa<#PRsrg&pQ0b0bH@ z0U-hA$1;Xp17cZN#pzxrwK$_f-G)~byg9Jx^67T;cg<>L`AVW#wCcX1AC$rClcIK? z*7K~Pz4X9%JD(FTooCjkSSkbvWwI9LYafy}Hd=e@cL=j$53|4Cw8s<2s>Jb>S1(iW zHgGUZh#=IKUUDrTI3U z0chaA^o9#ibuslpysK#o>66))nSt<~P`~(3n${XpRbC|uQ$tdoEipy-$0Q&|{L!gE zO{|tpLk_&aABNr=rlA*N!&2b`iwvVq)-qVQfc(ndOXpDpa4qHVD~bUz{j+^Reak*Vs`yBi@D85Bb(o@2rTh zQ+loU@r}!u%x41;?Lj?Do#BKip#Y4c6sPHrk?2J+^2o$~>s6M|^=7O6gAdiM)j$89 zW%Y`*7o(oe>K}JUtT$T_{W^j78polcnbCpbP{S6`*Ly%4=y(trIP;Ad9z+EW_?JZ+ zUJ@wQ%a4(Nne@N@0q8}v`hTh@exJdBtJ@v0_D*0O#)t3;g_w=#ko8Du!b*39=f32BubbXe`{-Wf8Fw8{h;b4hqq z$otglkqUGDaMRGiL>B^Q?sp*^P6NYwITHOo&8C1SdshU09-+rjLaxRIy#s0^>wArp zRJ5bF-p#^9H-!9{>1^Pu8;_nzsQ8!IW#m_UU~RvfZB-kWSVPu;pwzRVTIi() zK>hN#9wbTsF`{8z;MdUf^ack~7=};838M=3h31#BwsTKayI78ow4+1xM|HVIeSJrR zDC$c=en2L6(ts~Tx!w(LYxq9?fgr6DZzJyL(gDt4d0VF8q36KhJfY4wdlgND(@!6S zLKoN*nI|)ZW#Uj>I5s2~dsfuZ$h32zoh2rwu;RF4%++c0JEY4rXX@`YO}5dX|LDfL zzztXEnVXa(-MLVaq`rtQ-arkx2qmUF;aN9#Wi8g5@xGQW{LfT2QZTd21Y#O#fnIX6 zA5t3Q@#i%H8o;FJEmjKq1yog39pGOD2>M=Kov9%jETI~evL&Ax1)o#xR{EaG-wA}8 zic(8e0;^f|BVD%U4CcJ`T6oJuLT}9cDQ48pZot0#dgL&JfS6(e1}4#ytKI3EOaL{y zJ)M2Eg;99v$rZ5_xiPO{>LQ~emyb!SY*GlqH^s`W5yPl*^^@{Q^1{D)$x1R?vfFv< z6J*wL_#pT6T|T&up?;`r9tdYOdA@W33dY6EF|}Z@G4dk9t}ohgMgPuhPa`ox&KS>T zp`QOt7O%ady|U`^)8}uXXK}&z+}w#Z%Fak(NsNxtKR&pNU*}!MJJ1poAX$)^6>@78 zJ_Pl42>@oQyd~FTbAg*CE|}@Y;7YOK3(Zpt*oUcCD+6(Szx>T?@L1^36@Yn{a3q%I zkp!=C_N{NK&niOo{s1*BEaU(&P66`S&)+VAZ}$~E17N$V)}+(~&YjrTrlmO;=n~u( z+}*&sc|RXKqbHIQ9&F1wd#aWj=g?z69>v^-zz?!_;J ziL48}7Zacw=ne6^LwKef{Af8P4_6_{4j)YN23&sT#Q{NWxqQ1%29i*u!l5Y_A#m6-j zwdf5H1*Z`L&c#OLMw%zNI+NET-@PtM3=Q-{fesPMegh<>M&{)1P2ox#i~OwO)Sd&Al3zGxi~4A9WfL>jb%|Y$Bd&{cZUT%$Dx5-W#h>(=iV{ z;9=6dnjYOxbVnG?i9;?Q8h{K&~h zI5dAE(RdWP>|5gBwk+~p?q3ioC?oI$w_aTby^ z7ULuS=n#%KYg`t_vB=+ffDx+>%#m0HxMEMO3VX~!y%(=s6kZiIuFdi|u8tl?R$T0l zI=^EJxMZHxMqAfWfbvLjT*g>Q;@T#>2*Ok6G=gQofhwx88N6jTSM#O3T4rO!02f$=U!#6i7(Kq z@C&@cdDgGcUF5n_r>*X^CZ|YUcOb`15clLmv0sJ7g%Lu#=7!3L zZSF5K!z;jy&3z3SIjgX?&^x7VQ*&wXQmwzrw1cUOg zl@huni}Da0Mhx8UC&TuUo}8%^93-Fp>-^@Y-Eju;B=Bl#lq+;c18~5%g0X4cQv2qyE9aAH`M%HHW0Q;`HVyvN zN8f|2mrgmrQsa4E4^A5aV-g2!0?}}#KvD_+8y(@79&$q78@zv<@&35K9YIcpgRwV( zlzoV=BT!w?a2N4t>R*XlNQ0m+edqt>0jr7ifYg{G*2L3VoIa1;uPE3RN)XLY4k}z> zxTW8C7D0+V&-R|QLtoE$bFx#v2wqj2YrRkX8Sv86Q=uzz;04JLVWT9)6!pUJH3iAU z>ElqsWl>tVl~MM7IPr$3JoXsa^eU&_f|KNms#DKn`&If)7>YEo%yxb*&<;Z{ zPBfmf*2J<9$?7)Z1qNHn#b{A#8(Aw|sR@V0&aw!d(06mX!RXZ9zCO>V`=7}oUa-y=_Pu1{R|M?%$>tg-WQQ5coii;4kq;yQf1Mnf`Z158*dh+CLce;H$B{ zUo`BM`4(d6TleT@92Ln>)H^hAoy}`0cnVMAN8l`zM98~SPcYzPBdnb;Tz>Cwk7-o9~KeMg184*bM|bvyN>-T%qbdKE^j zfP^w3n`;p{>^u{%M<9>$L?#;^jcP=?*I9Ok1I4Jhc!H%zk8j&Kz+DCiD?Q|zV@p)R zg=3j(l)ZD;a>4V%*Ruv2mg42QVfK-nsQ-9*$m%1KO_$9Sq`bjim$`PFvlNQ&X?=G{ z0ew>=_q^SSHbE7;8Q%6sewAm=LRQ}yU3&SlD1Fuu&U}89rgvDY1F|@y`u%Zt{7jjvT_aaW)@>09*EB=ubN6YV2zw>?LLuXx{Urbr2zC1XEJ6AK>wNQg~7wk z2RPEHuiYl&}9CDY@rpHuN84 zg6TdUzT=Mh-vi120amTbaghFTM!GY`{qSz!e+qO5)Tq(^twB3)qxlo&@PEbXn6<_w zMY5P8_|+Jr5WT}+!wSwyX68utI4d2JSqCUB$+y#I_GxmJa9{fLP^sg#@9|Ap_#bi2B{J3Uz*ioJ zgs}H^(hg0+`mg0ES@9ij)4#jv3<#lWOkK$kg{0ld#Y2q~pxTli!ZY(opOJI}ntl7; zfUO^Ydufw;8u^ldeL65YG`!Q`gZNBp|erX;9?FfWhd|C-I!)>NJj?> z9ffW(5UFR?0Uv}(4qE7?29qN7M(?u112oA$G3FA^9GvWLNaoun5LoQ9TJS%LWs+aA zc(qWB-3_RmO?*e(rFUPA!Ccmbd6%9_^J|ta=TK6vXryNGdtPN*ebJpfWHU)P_)KA9 z|9y%cPQnC_aslQ$0GPPRJP-v_w+5x<$8MpH=|P)wBbs5D-xTuIp> z-1=&*K9k$!fc^*Xk6jQfYjxVGS@@e7_@8E3X`delY;>apD-)KW^KD!9D=`ycQ|+H# zfV0OcF}hy(6A^i6oLO%npt@xhF4vB3_MGw=<4=M3KUpd_)7SmE;@a9mABXB9(fRWaWwLX>M%i0f2LS=55sYE(l6&m*72 zdBD3IeK~kG);#u7y?zHUM5muH+rx$rf)7)oeJg{ljyBnMh)Q<5vTQ|RcKQbDRLAlB zNcZs(GfWFy6E`bb@Se?iHE_v$)2oqKAodfTOp-Y4P#C;iHp0v*my|$aIge|C^x^uH zG`-9gH%E!Ux}y90MfJIFYr-5MxU;>>FeTljMLFK8vSN{CZkP@1N34t%PL;O8`(jE% zhty5{@yjt>K=|HjAZCJk!h-v~A%aNZugll3x^S`GW%YGF486Aj**gQKm>>QQpv{xa zz$M<_9gFgQ`P?&Mi*C`TFj7i_^3pA$%lYY4x;}s)u|0y^)|gJLEM66lq|`pME!;LucX2s;3EfplQ_(_=hJbCw z^;?Aj^Bl_}d%_x0-T$b0?kq^6$a($NNmc#fdy$2d!Q2bLpCKnNNs|jd` zU(x%4NI3uJ&Hd;%lx6jhKvuM5Vp(J>rXZAq%5p)M{e5&9WBW$>Ivx6|`{}eJxBf$9 zk}CnubKmL&4rqIRx?!peQ)sr0EteDfPzi$4*Oi@OJRCdlf22JgLL8hy8IoO>R@DPf zbV$pztgqCi7D&IV}2{O0bZK_mpZP1r+p^EqEMF3Q1ewxl6RIbSHle3TS1A~g@E znE$?mT&)CfxbWnZp?Z6IhAelm?Rc6jYawRB(zwl?RA%ExxsD+f2BYTq&3T}FFzLn= zs?^wsJEt?Qi0mSMH5*9mF#OLU-NXw!HAIla`Gmh@TI#(=fibUh5O;MnzC=K`e>8Q~ zCUuefp=XPX@XcZD@;hk8v;5DEdkq_j4wBLCcNX5+`6N2tkZL*x z?OMkwB-QKZK(wcq9dH6k86Hl|TdfBj-i-rd?~J`>WyeaJw8{Y_!-0&cKMbT*QYYGWKizzE!o$_gh`yf9KSa`lSkL@J34ue+_SlL2T2aU=!CBE+ z=x9h@PzbU+;0h`(+lj`@Ubo4Qr=ED&z=eWz9UP^i%PR#4xV~82TeS;Rd0gp}5opJMxjAEvxcrW}*##%6Zkqg8! zW}tq-0nbW-CTkl;f7!WZ{fMZnPp{4gVSthT)0Ffj2CWij8X}H_dDSv=QRK%%#l776 z$DCgFq&msU{fMofZK?{aj_uOA5`3HzgEc61Wsun#G~S@Wg0T259L#(#>J^EzyfN2* z@cZuf({B%_F*^Fq)|OeRRl2=peXGH)^PyaTCG-Pck#X zy8siesh_D06Rh7ap7%MM-nxakddrvMoN2yqrK!{D^08w6dx|@s|Bd+<80pHG>7n-# zVI6@0`P76w^D6FLvJF!c#c)k^#mjc=g>>pd5b2Sp`oDtkh z#AM*^uPPi%rO{XR_Hw^`^2Ctqm`dXj8^dB2{@B5x3zMSdNa66|YlY;@+T%D+bmxbX zMar7~s&}tcAG6s2?v$vh5qe?1xX$`Jv%xK;f!dNrM4?^CNlQgVR;m+P*5rfrtD{+q z-GzT<&HPQs>nLhzb99d2rCFz^YVM714^+CZHO({rlW=O!3mei_!>Y&kQ7p0Mt9Y&8252CL%CC(zy7~M*=m52Q94otL>1#Yg(r3P6mM7}p z1VF84q8`P;byPifNnwu854uPv%wztOsI>7>?C#N{x8dL#8iaWlB{`Me&_x5f0fB$W z*z!)nk7nfgJ89n^K$*<4z)LP{Npe-8WYds8_-is`zaD=R^11Gf^a9#a@*Bjx0en$R zJ2>`ez8u=}_96Y}f*-KdkBigDg&dz=!tiwF`fs`+TOm62kVKV-fO4MpoupeDHYS5* zb}(MDm!J$c$$L>;`l}lmW%)*H+`zKX#e1&Zw#09ZQHwvvYIS(fL}uk9v!co%dF<9W zBR$0A$m{9VN^)ry5}OMp^X{rb4C9JdC@^DLGax7VDW$r%b0pOSOou*4d(`LqWp90 z7m!M2TU_uuaT!zg?8{*3;iIPi-E)*@FTJ9G7qv@sg!hFF1r?3!k|H`|QW{K^DTnsw z>DjzJ_0PNW#=fY2QT(45y$Z``N}Z>_s5I)=YW%2{{Zb5xno8&*Wi26IuVy&a>$>iL4`vtHV zgkPvp$&}-8to{*fJ5ZG69~1%ce%=q^vAE5=)Ixraq(M|7bVEC11n$_|bEx++lZ} zuWC1gR8^5QJ&iK?bzruxXhGw^Uu6B>jfL^3lg#xdI}kY^q`%1!d|hWQ#sP3I;rnUA z!ugX55wel1-{X%2-z`Tyw#HrL@cD&L&$ZKxZcc+((Kua5j4R>j5@XVoX_)TC zrabLA|DIF#a$U@tmk-j3MiR7 z@)HU%c{>#H*LiX`|l3|?a(45=s9_1+gNuAHi7I#xx zU&TCk1CU&lWq4R{mxn21HVl~&d(uMylD@*b%cPaOyKEbgi2fo{uP)ek)iWr6S!h0B z*cIsuKv--*0)V7U3_$GQXs`}~c+Sx879|w^L$WNI4Y567W&SxWJX4$s=J+j_$IuO6 zc0h264viyUC*+5;4y#7WUN)SO*;*(gbbOOwUE(cA(?6_ircSjW9mBks`DWx zT0gqDQ~7+-XHY%jYK^=RhjG=1ZkwsXYhDGzYqrdF zA3M;J0L0lsULqfO`L%e9iZ^PwPr=0Z7l8(Z9(T{pO%KU+HHIuhHpuHH%^+> zYt`8{`7w=;k|*l){52OWnD2I=_nYRP1$?NOtcrk>VFUO+dmmMdzfny4`u#-K z2s&@Mm*XUVb9?s`>X(n4vI|TTMf@m?Hj0uzr~rC0`O$A%DROUCE@P;gaVhqbmq+y~ za)k|Z3&|{$#7lhh$jyAQ++Ay$G3qOf$?!!ZiZxCr2;k%f>IeH7{?6Ta_&c(f`PX68 z=!;WEcKx9VztX-ZZMM&eMAOu!F(-JdQ9o}!9RPjq2E*_tK6Vi}9>erX? zl6u0Q_8bFnKkFoVhsYf_%$Iemu77`219s%|Q76C@6f~^HYC`vN zZPc<-q~579l1*`LcEHY;({QgGIe`Jf!kU4X+9VY{u?G>F_G;2R38e?q)ih84Vrj#i zL|tPwt_Y-X`bGe9M3%1*z#fzygRRa!U@OtTg6bRT{OKg!R3f&Psn{H!Z)%q+^u5*f z>>n5{QrbjouG5!sPTK>36ovh~;%{`6_!dKh-;;!`G+7DmL-YYxe3MFzgfl*ldbl4s zjO)(bdE!|VfEfePJujxskJuyzOW@yJ518x4Q0i&OW{Lc+nT?`~#PIBza6>C1jro2} zxsD9yGz$h|bG{vY!cjekJ!iV9gPpT8@+(fPE^& zOI=42%B?P>YCo@Uv1wA$t{m&@i1w-~d=M0&-z>x85{#O=lhmis!Hs>T;BKp|^DB=t zpALDEl=i7spg)j5%8w5JG*<_n_7W~fgSx60rYZeDAD2cR-`dmi5nGIA8s_2tsP=`K zlq`+E$%y(+N>yAB!+AiSg{KBDX4EQ6znwN-B1rdQd9hFL16-)(pM9b>(|_Aqs455B zK6U&C-bBiD{f^y!x4)|%`>l+8UAd5cl%sI0W``yl8A~ZO`-(}^UcaXV;6OQ4R&*u6 zWvQ9DS5=^V4g4;h85K~{)~L(At4yN)dHSo6SczZW3!?Kv^r78qVe-nILADYKL=eUN z)Xpu`4hAfYqrKR)0f`hBgsRx~OO>_Cvi))T^5j&>0^q3 z%ho8bw;La)cx-;flXPEHOd9;V*JU4SZ9KzrqiAEJXKR~chnILEK7~gi$%LBs;QP91 zDF=0047Kc}!9T&M_4G=H<;33nnIdO;d(|t^sYVwYJ`}Vn9dqBKY3jsLJ5n*FbU(6J zjL}lMA0X*T#*b`xu(DyzpP%|?&n>4p$o)CuuL{L46x&?7Xi(QbKID!>wlo|YG>X#y6De4P za2tWKOy-lMleLYzwH@X9OL|(W0GOmFq8Whp^-{&XO$}-GGPdp!c-uC*h`AGRh-^Q_ zT+-#l=;GGpOxvrDkdPhv}wqGxfA+u4X9h zZvgR;aVMg=c$8!OVy{{b`*TzII}H3BdP+d%R3@__nGB|{ zkS}jC1-}oF_e}3(%Z8%x(qy*+fttrVJHL%y8oKT=iU0Zg_CZkX62}MQNbk24EsZ|x zyYd-1h3TxUy}aXb(g6!gb)`1_a17zqWqR~`ro5-lLqEOgKAIN3D~?Fx7-@lqqz@5~ z!krhU*t8ExBX#n>89th%U$867e2sSV1bnGo3&G`Kh_bhd(u^7$VdbUccAb2sY8ho8 zWiK-B!6+vux})WGA*||T_m4CykQMoiVtKo-?r$Ot$R#OxWe2hY$x)wHkPM8lrq7HwZm{9GB7j^dVy*{fHLjU{U3rLp-n*F5MPE)|HH!&kC24UHWgNI&y#r zb{qXoJ*VzIOXjcQ=pM~p3&rW;xBSixtbyHX(FsMNZVSoeMvlms90s0+#FQ z#883rgfB0{TzZofoJO+wr*KQT9C6bkG{3yYMJn++4)%j=gu=+|w+D;*1>unD)f)=Q z`f!bAdx;0YkpsXkQ3vLAyW&{Hm*%)F((9}P(DXH!t&t#GQo(hJ8EGx)4V8F*PXY5% zKtF^13Y5=7hT3i7U8PWC#L^Uba8}nJ!7AOEF}}b6UM3XzhHDoQ ztM&Z~$X`Rn0{Vne_;YNy=?R&PK%m4BPQ%XV2i1xTE6+H-(kgB#mcxTc-?q02tw{8s zG;MnR7}JLE{fgkWPz}0bC}@(?t}fmx!_$UandVXn6uE*!(?X5j>-uHe&c*Z6$G z_rK1|(vaOz3dxbwLj=LFJiyHFhiK8Tu!6=RzJ*sPzJ(>boupR4Z`y!3QNZC3ZmEL8 zo6ykz#s*>U&b+{_xb|j(9pwH+4t`#BMJg^TNnjaub6&;TWB6ELxIgEwn-W+e^&16F z+X{T-B%7@nO8$?%s5&@mI}zse3|ITjqdFFZ+3s1b!aZ9KnFv!%0kMWHovW@5Ci_3c za$rj}ik{1XRE4jPYMtF1FLiE=v!%0Q+!S*6Yge zUX6N&>GO2x0WvxmVTVZ2r*9i_d}l2lsgCRjfV?$za^o8hEcO<_} zSYZb&4^i@uV-;&uH+#lh5f-5O?a_TJYT=C$Ci7RJrC!2UTvmUsabUOMNYxvNxvPDJBd8h>OAEL%O7;XVKtOqtjgQls zwdJ31EZu!0=H*bS?^s?nyqDDQnZ>Cop!eUQv{p5jpOE{^k3x7iK-A1qC%d`&GWjavCw+Q?UuFuE}oi^wRQL%D<&k9T;{-L#&f0B3S zs>=`hizQ?Wl&lny48Am_m$0iM?F`sce%A}A+Vp5BbM5B_(eQG9KpJjDGjY6Y!oR+b zF-uy%pv(dHE+05eU_kZWS8ZAE3B0_$_Um%u^(OsCH*fEh$uC=jxH23XsfT&cQl^)i zS|xyKZ+3*&mY246HuX6~>LYvua|&k)&QwDBT6-dB2*_xj>_RT>sFO$t379H&7JUe# z`ioUA1Qj!0PE0}1H_J5x?|-xCmRxq%G2Q?>y`Ns;ZZZ6H<4-(*%yaUC25+rd!KFsy z)(IbCQ;RuirI_^N^q?@l=e4CdLL#uNZ~psS;E5*ugEB>mH0CA;X*& zjQlm9JB-DdR1^5nWC*N@b>=dnMVu_eSZEiSW%i7i2wIY_(8r=Ebg_i$kwlLVEh76S z5v5g0CEQ;{NHcjYCF&|L3{^;J{=`fo?s}~#WsVVM-{5p`VMJ4po{#Dx8>XMy;#>t= z!i~vA$QOG11Gx@W?kVsfE86NdeL6B{n&NAR>fSGU=*sy|pw#=2zQ&R-FX?MBP>LQb zY*lzqrd07E7dD4k$VzO2c(EaqQgU3lLvEI%hOdPu9UE!%9u+`c3zP~1C_LJ}3=DaP7~eB-dTSFL%PCOnQU3pFe84DmVNU3ur=F-&@l+t557P^`@KO)zoT7gv!;m z-kSW{>4J^|!iJu|w-BNSX5MO={f+xHQ zEQeNrudGDioH{=Mqs&%rInMkN*{;ZpIQ`_?SqyfeIZ@}_$TrA4m!nX&5~PLEv(S*( zZPoA^gHsWTjrWU(ISlgzK7Z1Iy1LIHYaB2hlCu<@#7=eF_)0?ZvhxDDu)l43B8~^? z-BCei-{AU&O+vYto8CaP064nx$8_*D)#nS;8J9VG z!K1#2vZP>ti-&%kdT+0*P9dD2`?a{C$AiUTi$4)v%6D##YgwpvxE*a{pOS;B#CiSW z)St&okqoN!I$ZYR7r%GqLxr1t@Qh5{({E^Z9_Qcr4TkO`B}zgvS!ztNYqVOgJukcq zy=bM%ffC2iwQu%bYyI{-J?KQo`+WDVDBowD4;|3m`|FYZ(%I-Pe7IG4Il;n01C+Mx z-sH>~wPBl6ZU#HLf;;pQ2oJp#_9LO;jp zjnp9rDVc4D?0%@4YsMO&IgkFp10?xRlG%yAC7MiHtNP~Lo`?8ByXN*!eru~*?*1M} zsfmKc#!d$+(!*sS`m{BCIEzpT&Seqtq4%X{}#e9yRd(v%@;tbp}H|y-suxVJSWg{Xk>Ra z`JxIpd%tr5&1RVh*Ly+sojz+T?KJgjAt<4<8B!-ST@agx@d7biT${}3U-65j&dwIg zfbF|*3VdB&VhG~Pz8O$q2>DDXK0Idea=_P9Bo`)X_B#KZ;1?k^z8d`HiVEjnUEaTm zG_mRNZlYu9SaS1EI);J&yek$9vHJzdLM{wAd1!9u>-( z(APhqP;%Ty-y5kDQ7cm)_Z^QoEevhzp(kx8Yh7lKVX9~}z5Tdh!YQ!9^23&ri%B-rI$J%7ffSzC zJ2h`V(zs@qcRBWyYy}Sv8j6ApO{jdp*FAu780$WgYx&zP^ZuOY-c;va&&A9bNy zd9KUc4_zng{XFZ_1xy}GYhK;)x3-V?RM1eI5Z#oB%ZOl{thxUP zsfvhPLD|$N@WPAFX+i_38ODjBnAr*-i81|y7E`YZGeKm*-0y_OPOKJfnb?0Le z)>0QIqcsB#ubICjhv<>GQ7ca&2r#@ntaT2xuR<@Re*Q_C#{m&+L)!oX!VTY;(phS0 zQ2*+kkL5&^v8-_AZQ0ToAAz4$|6}{cQy0qEWg5#ZeFP;y`8W~oWCl28%6qTwvT%6} zMrNcs+Q{H>7_U-uBTS3%YsAK0t)79_fYWp5Mw>-iah7Cpdb!f;%82g9pDkSdktP`J ziKO?;I!|0>Ws!tkRH zebyK5gvR96E&ldhe`Cxjg~9(Eh0eZlJBuP;A*6L(>406&sn8_TztH0P=x0x>Gut1f%&gWfN8i- z0Zk(MDN^f?UWxf7V^Ebn@f)F!az13jsOnJbn^5~9{_~OVm5xvFI%j*6e#n=<=l!hp zm@6q*NsA0P-;I6uw_UMLy<~}$@VDdWuFztup>zs>iUwhn5{TGS5hziI&g z{|}H+Pu54_J&9td&`$-wjZdH2LxTq^M+sCur@tRh8euyVq1TrrP>pprDB}I%{T#M8 z{Npll@yQdF76q6vLUt3smW9{uk&*hY^J~pX?PMZ*|Ba}eg24NCo3tpGKrR_`Wi&0o zk(G8Ipt7(sRxFITwZmV1~O2Ae^9aKLnR$J1313>gz_( z*U6-5wGGS@LIVQ%wi@;)0U58W=(ZSXSH=(bKyj@h+Sg00VHdy zSrp^K3ry1_8am}Z3cVtqD8{$OlkP|bAnGwm(eNBVamrOAzBNMf6&J9HlI=+t#4kUZqrf749yg#f4!!xKBZ2x7+d4z4F zfn8|QFU9pNgT88!cDBI4k*70gP;&47OgfYkCT*_sNCzIS8r4m z+WrDAzdy}*CX?O#f*V(Cg22t6AUA!spnpwQEmEq7U4UgystDdUG#INuo-|s*y%{db7I~a{I}}aX;ohfd|<;_T}po?6(uVz(@0dRhiP)AAN5BA z$l9NE?vuM(o=jiT3$Qo>E=c0&sjmo_WwC?azQ9T&we<3H6~Fev2cJi?CJnu+FFrmN zdZK_tSsO1tOj~Yp8dp{KW?yMY<)|7b^@-^lp&!H8_ zvWDO>`^WByGb&i$inqwgX6D74bw7cPxKH!EfSX>Ahq}1-TXh1KE5h9V`dTmcu7WUm zE385Y7bYPl&t|+hf$ll@tQO{Wv10vWTbkVwq!a z`O|7j)(C100W-Ocb${q6x@)88Yab-75$>JTGCJ9>!Fbz``L6H&x{bH=Dij%gq~~># z!j`C#tB3towo~8Je&MqhQ*}!g_l_nfzD@K8S=6j%r<%M@7H(E%3;R!EZo9IVK#x~~ zGR!^V5`So=kcFa4TnG)QO65Pw%AGo;eoWSevcJ}b9c{g}RH@N$BI=D5@ftw~gyxQy z6C%_vdNQbd^UD|%iVZ=N+97hUQT zl*(sU9S$v2H*LM@IW;U|s4ms@v)N?Ux^G_v>aPbkuQ8vPr5bt+h(zV<11Q+N68dd) z2>1(QffqTktxwX3+fq_AIXN`UX(68J*G9|2$D!m7MPiG9lC0G;Ca>P2cZG(?P%4=5 z!=^8cfe+{Kw<|8IdV)*hnNh|YU%~D=?3GfKtD!H~@tErSp4#Q1B6=Q8m+uY@;Jc^3 zh4xtaeP7L<|4q)tH*c}>Sm$^jlb*R)!NVLI}!d#OvJpGeJ^pe2?D$&vDN|PC1JOO8lUEG%gS}irM zAlw427y5f6RkuWe_6v_iNj|RrnJ1Wqfxw;?KVeMaumM(%_e`JZB5(fw9Y|1lCNo9x zv2p#d@ARa*B(_3aCVSR90cg4Yy7RO9k8-iZ_(iJ4J7@7YY?3dLG!U%sw$RR#Q2{+D zZ<*0)t~kQ+l8s6K!m_OFN8eurF~Jf1nA}K$qW|y9@cow4wTm~%c!^tlCra1?e(cXr zMOj%S>lc%+=47*>@tRCiMl>7|uL!5hGj*;6wFX*$I-O9)?zHIG$xT}5lst-% zh>0BPKck1>b5Y!F6KaO#37xaGjPR8VQ^LMjLWw^6qKr0V!^E|I*^*J1QSXSoZpNn4 zZ&5jW)=4L@{)OJh$ihEI|L|)$gFeTUR&q0EvR_BV2F;3;%G^}g#q+KM`|Hnt6FLqb zX)U35NWe?KwaFp)1Fn;I^sqv{hx;A#D((C*=c7&K{K)Gg)l zlh#Hik}c1o+0eUtqJC=y6=+p0_|D%E^oqL)S43%?n8h4{rXwRwFtV{Ff8W*VDI5Rl zK(mW3yu!xpx#kZ|3E#i)oM(esntx>y(@N(PJ0bKlhS$-HAv(gbznaxqXnTp)jxqAz z(mmwE^&)U%TNKU#tZ{;~jTxs$eZg}BeAb&Z7dfjBuEGq@#jln2%mcvZiZ8=wf8xK2 zh5Z?&W>BxXeXRM^rA+`Q3ac|vE6%yh&Z83F(uk)7?N{Cd6KB$1I-!1hEX?7FAQE8t zX3!8XRi(JI$Yd_-B(Rek7TiocV>l4vsl(7@+6UfsT+x2hufmW-AUCDFY&K9cuOh+` zrtB)et3-~hS|F;!oHx3~4t&+#N;}K3d}dgnnMk-{>$!YSmDkCzhEHxO)o)5J2vIOx zP0o8io^Pj(8&9{R#!J~3!+|Nru+}&03wtD)`lZScu-t)W01UExzW~VmQpDsi7UsTq z#X@j*k{TRT+Vd7y6w>@V_nk5uGjgX}PipAutUn)bpNlnmgV7}?@mrRoKRbh*UTH~F zl7+4qyw(E*f@CQ zZ9(HOBmFYI!R8aQp(*d+1ZBTfprSYMhFiD;9rA7l$d`!8y?Qc%vuy=lYW$w(rQH5| zBO_oXk^m&t$)wxXDLpp*bi#tQq@*`w}e+kZ?aO(XcX5%NJf4X8* z$va}yVp0ffG^?u&ZKBn&vkg$QXRPBhcb$T9Q-xD)O9sCh!1dU0aAJNF1YlI=+k)rp zk_gIlpiLt2%;w&e7&%`b?v1(JTk3C3cINElKl9P$szI8nrM~$5E#fP&5;h1k*aN?n51vu$wU-^Zt|}L+qsl*B;y$8@K0Ti zN^vII=TL`n&(oh-B8>L8CArg23Hmxw{Bx;nK=*F@Cz4p5_+ftB7ONG88BwESyzPuF zg|#Lr;R5!RT)NeoRWa0Kyb%zNwS(S!HC?uPAyiPMQTLSFAsmHsj;)f#{H7 zf~Ek%651flJlw6^ew*Um*I6h@a71O<)Zj-eks$qk6}uB3E5wOw3M$6r{|_bQ18IP& zC*ywspbj($F8_oI^5pRY3=j)c{ZarS|71+)KM%Yw{$CGBeil`Zv8lfA(V7LtN)7d5 zz2c4cUU);$buXMwe33NYodl*Ttxg*0-3*%W*ZcVXryyr#K9hj1y4V8b>#M&ZWC2mj zGXPm~>06vFf-p)40RVQjJvEYsE?JHe-%z@mf5W{`$5mW6Ko9%%1`ci=;Lm5E!$um8 zmb|K=X*M87)no*N^^itH{hA3PNF*z?J zlHb2X@_rbEiO^(=4QO}*_L&S1lpp;#Wt|i95=T=cb5Z=|xTT_>_+-!BXE?vp$)6xh z1wm2Pn%+xpf5r6^315{76D9WN^`DziL-LDC%ah~3BMTs~Y?udN>)rc>;bKNfgz`-7 zt0W=Ory_vKwHMX(5kZZ|Q_&8z=ff~c=;JW{d=e2??>CmmZG{>9wgzqc42xhucW7!(}<^ghc7*O6~aH6SaV7`Y1j^=Qzv66 z+(%PTQ8TI-ZkIB{Aiwnl%kyA*7|sv#G-haBV7601Qk08?%z+m$tnlV~9J_UvQ+(fQ{3OKf-e zd4z87KPq8}rK|(!lTZvXUtBNjN6tHk(BMGtl0ItcSQDrCwIqzBuXbB|D^J^X=`No| zb?wL!*S=C!Ii>MhYMRk2$x0uW{IFV&=e8QrB@Gw%9414qb%;HQaSKXKyDR!aKeI`L zitUm_y;ZgOkmko<#Mn4h<7YCij!o?Dg|0G9OoXMKwxq}ble?WMEhQwU0}leB^!J0- zAABt^5yb9pT=C-jZMFgCGy;8%m9|dH3v!1I0W$0T)7JV{DfzC)~^l&UP+s<%G6x1J^1>#wMWNuCS$~AH0q!5KchjH!lqQ{%656z3-;vm+#vb4md2KvY%a` zzw(lN59%}zNiA8M+-6<>2mJ+4ryAf@^pfwWQYhi*JpyK3EI5lkfHtd+eqwNYHRd#A zT_YN$evzC0)e>3_7T88;E~eU(ScVk6P%Tb);7-x4zE51dXkhg6RZ+om1(FgrZWUH4 zx_@58;@Pm;Kj~d}@<=Lm<_ov_?(3Hg!GGQX{&=zn;fAcBZy&UK+@79<*>eb#D#wa5 z?}%=FouzrEo1e~!-RVRRt4XL0X;~eP6PVA8Ier;RsHr%K=iEul=>RpUbM;eiUq9!q zzTLz^2zxpHHVEat!?slPrsc_AJe-&449svw3`UDe%P4jejFN8B%xj@fm+4m6w|Lr&Uz_)V|P>{9s zkP%)c7$#2m>tzw13!#W~AbgWH2V#8{Rw|5{3c~C^Sgg6cP3HI)xDGM6ZSnuSc~wV# z2^!PyLwi%y-Er5t^LVDN%6uWevfG|msKztBKKvbafg|9xC_`%v6~apXDvpNGI6wm; z4_%;dqc>|rvpF%-lr(MM5B1EsuW2(pa~MWA`|FSGIC+W7tsGws|!S2@Gh#g#EvG^ z;xUn4GJvrOHI;=%XD5bRC)dv1H+rV zwAEdQ5|9j(fU0Si#-+Br@DEo!76#D@ZWOz)d+Mq=;QM@O^Ng#W!){FQ+!$kL+BFvA}uefdS@4+5ewlF07QNyliYI)8}A(4Juz z9WuU4y4ppA>u{mq^IkMDy?g`z5_3i|3J^#8VSB=js`Y0#HdR~z-y5OU6UFcmtA?7A zUmx=hCY#@b<;hj=L|Kl2A9J$L3^rkcEkdA|RIjw;IjLkQ#Ns(dhk@T4MIu{6WdN zH6}bJ{(QHrV`2)ZXj!gt3LU@KS)joEQD}@eP>P(OJpK^;lh5*Yqx*6f==l(uyW6UuuhbojZ!AywrzIj)_qUFE?kxa2N0P zk+s1aO!_2D7Ps*uB{v@}l5Om4pYr|gaXn5U@VL~>lP!8%_g_~BF>&enbzz|-;ZKmI zc~LI9)#y}R-ZYv{&5Zf}p;-MFJ-$`*hmn(p;z`7LMRB~sbWFcr}d1H;7 zULw}uc3^&k2yws8d|9H_b^1wfjK(%HjX$C2%b-=m;IsNkc}$g>z6m?*(iEBFGEN#^Ww)bskHlbR1(ozUr$+_ zpn-H@OAc}D(TRBA#X|B+vQUqp3%9JOUJUWS$=KMhOIu%+bXZn4LddFv9$f}7c= z3Gi6u{K`D1kql%sJFkjQFE{iEN9?;F*bh;k)@@~P{2jTp=Ryk=ZA2oE&5X|Ws~^!c|3gC;0i1DsJqLpC~mJiy_huwrmnRB zWRAQWLssrsPkgBE?Rj&O?z4~mbWr^gEhC~g_$Fk|QzdWii|WA0SHJO&S@LWOkcr3N zkYBRDDIKynb@}EC4INApA=+|$PW@iO+1E=zz5|EC*1mly(R#JGW;9mk7LTMIGC0sS zRnn!@bDZFFt__#(ptsd>>8;p^2I9&NyW6Or84)1Op233bX9}9mUGL>GTId#jWurL)~ph6$>&^XBZskh)fLxN2fDZm}68;0wAjcB%K74mu*Rt`APLX`p; zI}czG!6X?85vg68U>goR=_{A*zy7HC*Bx1_vpag4WY9ly*em@Q{BU**YU~`$9T}8# z|2_BnNBGGh!f4fOTMBQV#nTMTd3+O8Qz}ct0Cqln5i!<2SMBWtSU%vvLpTTOf}ui; zGnx<6&2bz?dR6?0EziN0?Gj2m{-jb*tXxdT88bhAVWeFpLIm0>h;I!im`L_72I+S; zxtbr-Sn0AAAO}nQ#;VL@u<-28uW68l+%F-fy?C`oyrkbkYQ3*qB%hg80T)xNstM$N zO5YIhFwoPk5+Zt$W?hkfe08!GS9ba4J3lf!W%emdN&=ie%ApxLt3vJGSZh^s#eE;f zQCG@r+HW6~9J7aF=#$7Bf2ZjII56JPxERAm6^6P3XK)W&3T|%PhZp#OS$@4T%rTS~ zunUR+B5ArYF6EUHU~Y@H1jDSd4HE~NZD96ro>uExlzgjYS`5|hK%5)SYvn=&M-CkV zHii#A{f0A}c~I_Aq=$AE8MubN%fzAkn5lWdWB9n9}nJ{BlO!rJxUqL$y+jJtJg|F_vy5FmwU2q$NCGto`DtqJ!S8!J!WsxELd zPkrEl;n-lA*MHi~>vN2{Ax{MTYhSRv2e~Dv199y*;o`pur7!w^j*$8Vf$d75)VwC! zPMB5zP2O+mb6hg$gFKvCAwJD-{V%mp8YFpEAHZ&;XdFm{IEAAE;-iVt=9`q{B;qd| z7uO)dca^8eMU+75&9IW6-ap?r+cssV7bNZ@$j8D%nKuC=<*zjFJDD zIp%`2ViA$NLSP-F7VO|zc957hEnhV_N=!qy5S{c(iKJyH7Hez z!?v9yTUwjx3@}Gw%~%p}eGT0*!RVs;v3J=3+3wL_kds&rIuOxH2DjOoXaz0b5s8Un zOG~@uy^AcH-D@|EMS3P})UpUMHl*h}plxW;7`BNQ@3Y9}IlUmu4-{_j{Af3{`Z`_9 z>sJ;(84u{5c>9yy`p<=!LlP4LXZgy=#l&}+$(_&4`G?9++ha8WM6wy#A2k12-Vfw% zB~#N%>J8+#<5;E6tFEfbq=|us?=>JkV+Z=3{er*8rWlvw_+`xRm2yAEJ>VfQHS)fF zQLFu@F&ZLyhGH5o;ibq-Gts%I+!-Tbj2i*DdC~(!BD-BIfBmPcIAeQ-(0_;sNinLowlX$@Pu3uA}qiK0pH zrTamnpqgqQi3D-~Dg%ZN#65YwE{EyT{Jap)rl!B94&lyB^g|41aCpTvLj^>~9%h&Hn`@xLw=VRxyHt zbgAWvou$!ik?>h3xIGVA4|uO3SHS2&@V$CVj*SS;qAyMLvYD+~_Hz>N!yWB7e8l^Z z?s~dZk(VQOMIHhKpPV;FzS_*@1(k>3BS83w0qm7&E&+k!m@O1fra0jgzqfV4;UV02 zx}V{A`Kbe4HTwkVll@vh9QRi5OIV-x_Q$DGw|rf%`6H>onMn`T=$}zpm7{=BzYU;N zHt1-Ts=O(XYmcp-f%YOQNd#ECU+NqGY*Eo<5C`*Fld5NMwx4s;{Igsr*c3n;{PsM6 z0ktdRU#u2NLIKsl2#_4=CE+*q5H09zdnF>j=ZqiTXXGqu96;SG`)cow6I!$+)==5caYC_xk#FzLk%P`MJ$6CY zg3>9cBy$fjDpPWf@9Lx~o>CW$jmkF-^4a`ZJtK>bu~aU9Dxo*Rj3nZSIq9WN^QrOc zUN*j}nDRo~S4>GEODWCxm2Zl2WTqT0Cwy8GDbbk-_XJvjCpBi}K@af}M;MYQpl^4u zUro%^$|vx2{we|ZlpUQ*P@XI0=8NwK`rr@xeJTk>e+%7l&)kxsJejJn~$j+uH7bV zQ*#(K}7~gk{-kC)?P3DT!EQx=yOm zH9NUD@Z?VqN@evz`5w4rGHnk0dV@f^2L%A86iS0IPFX{=Dk1pZWaOZL&Jytg6;0mu zxFb+Ly)AyN(P$&;BV{dZ0{hiCGIOw=*6{HNAkMHt@9WF7y|&FBkS4i1W8>^;S|7c< zcBVV88$(#9!gecB*R-iqy`Yh{J0W=06D=gP9DG}*M~_jibAy}5rlZR_)97pV^g&)+ zDXf)Xl!){|<6tB3sC|s1Bn|}+8Mttq+BPI^8mU?#o{#7@&00!?iKCnpr|Y5pKQf;NmUU@tgT2Bl#h*f+?J-dA*%It!oG zamS)%(j4~42E^*$9j`Wk-$ zLt6&#u96*=&2>Y3)z+WGa^{k5d#K#kuD@^qd|7#cr~Ta8TsllV<-igf9`yZRK9%ax z*I+|cAP>hDC{C%<|K4|>hEV6du>Z|$Qc&@mhVZcAzEelbt+)BKDJR)@wl8iNgp@pG zv3oya((JQP^J=wMEnHUX z#=RLndO;#?YyI7#zE#w6^ZVbtuY$rRCrw7T^II+!RsgEY3iSw`ZW7$!BY3s=s;TQg z3SaN)h?lS2yB{4Vt^xcrkx1Nz!xtl5V~dHrk&RN+H`-+oOO$d3Am_DWY3!FclX-6M zKem~Edr?zNJ_uZO+6Q!>n>k>E59{LXrq;nlk<$sD% zQd%I~;SVCA)?U+RRD>961!;RktgVyOI97JgvkfOL6?oo1FWcrJiAy1)_rcntf-gl$pw(8n=rl8kcU5ds=+1 zhC&w6@NNHp*V%6)n=)*F>-KZNjL>SwOHyMMYk@K)OD;*AT$srX%vFX8^=^73aT{Di z9t@;l)d1rMU>&MXN=N4^nK&`ZP!A*sy6a%)+6SX#f@RSrV~-EG^{_kxuu2lF(SHq< z7zb;=BmlzY$<42jfq#Nf^*Pp5+Etd2XCf!uuS*gnX9#55UR}e|{~#BCLDI2>DDSQ` z^+EiADS~?^xT7pO2(@hg&{tn)NtZQKpghbtdFZPh`dDXg-N0gWi{< zZGlH|S7Z!OM)h;yFGN!%&mTf987FJA@M`Ic!J4G9=p0E5gE(3mAswL^gLF4o(%*@m zkXv#QNn;4x!Vs4BB28BV_UkR5*8wTu)>Q)i#~0;ugA823z*1!7FCM7=C0qeKFLRy{ zLoFRb+!z;wMCqT688OPIM(Lr91GsQkU<`TeXI%vfN6%k+JRHS^;151F(GeweuTmDk zBOCE%w}4TrV9qm{`ppOy%qu);?Uf!}dWO@Oy`0|h6;lg#=enU>FQkfEZJz2G=u=>oAwEL<#YZ-XBD`~v)CsFEeu^P}%f#3rk4K%m@nH;x?h0TOKo zYOx=s4ZxnP#bPENiqF_cJuW#4VPzXFKLa@LvgH1U@eU?;woI8L2ejLzfOIej-9X1H zK7osFQbqj+6|NVKm(fE>yC5toIMyxf@(|3zy7(Lw9|UBq!f(-r1zG7g;vRhkSRwzE z-G2g~jTD1#fU7kxxImGui3zbSeC0$2o%sD0NKHl9^YnS!l$MzFVK-Rf218e5;0*&J z*&9@qscPGs(NTUm{poOsmA?cgew2(`ATkmK<%l%(1xr$@z2f=}OtZ;xcYcD~6M@9n;*6X2W zu%wA=UhF803m4*f>KEDuHXRA4SVmgzaaVZR9@`Lsof5vmBzs$h0I$if_ZXcokxtr$ z#kAeH@)saX`H5e{l?4f1CVCFE*E;)l>)#O(216V|gnDxjSPdTbuIiSN6MBhG#y-2BSZ==k8A0rQ@Cb$cjMJ&Z5pejzX-)nk7Zfa4g+Uf503M8d zzIUDsSD8QXZ|MN^as8oi|GuQfh}kZcL&GE!gHewVnlLOg?EKv+g;^IJ3d+OqiPIUf^0&IHDQ&rzUL?)lWj zlmzv3nAwv|88>kW+_cOmsWBG(Pl8v zJwJm0BoxvS$yDlIHuhkH?3r415RjB>_k({oECz4!EI6SruRQ753?C7TN~=n#9;~>s ziO|yU(F~%n!>N0X+;=eg4Cwre77An&o3;={|A0RMJd2ip*o!_;vK+#b4lE{;W`w!` z`^wmuVFZ@QYjr<@SLA!)3U8NFPfJ`CT>-P_T@7jqB? zTsn+C6vcYw748w%=zblEgg1cGZox*umlIsw#MuXL>%KUzTfZ=#0KyTG*t5O6ClrV8Ei*=pTnnp_L9mrT# zs|}}d{Fv*cMwwMShAzvZH^4R3pd%73CaEX8c^nPW>J>H*R=9;86}5%9nP*^V_JZX7 zYF!3AQ!hTn2q2OPzZiC1F?ac$=NwVl0a0YL>>T%e5e(?m2e~~Es5DND@;e{G%KIoe zLn9_yjr6MW#$9=?{ZGmX-O|~?gcJDkueseT6I6D@XQKyop78axRT6d}qD=eJHD^bb z7f;-awSelZ`*Txy5uam^``+)i_kAoP-p6qo&cqo$i0WUJR2n4u-D!qfiM8T{lFxTb zo3`81zh1QdmWE4L$fo>z6=;e0z8vt_g&u{6puDfZ%s}1V;L2aDcVHzF|5wWpRAe$Be+ zE<~ii^y~#CackLwA02>W0E*49oQVbEe}1IzaYR3}3P9IW60E1NA#&H~6aR_qG57sN z?}u9ro5Ih1k=8dH0=~k@@Fs88eIwnr&s|@vW?5#6Y$o#wFh0y3-e*JM-f#<(wKC@D z`{QC0Jr+Jv?!8tWeKhA^>ZPEzUWkllYGr}+)rQZ0vh|cdbW=I$djBW+XoelOKK!T^ zVu2My6rg%Uh!Ky0P%xoDQ>7NW*&v}-KVIAo@vj@@P(?pOPsa^gZ5@iZc=b)+Vrlf7 zuBKr3oUz*!{eC)Av9eZum@75AFrZZ>syd_eQ4D6rIf942`HkfF8$7#+2SEBgKj$a> zQv0|CN|wyir7ob6Q6=C5-wMTV(1hTlh3`uTcrrL3t=|kDkuJ{2ezp3u^3Pl)pSu`# z&{E6v_egn`J(F_(^`2q-uh9q50S~=*A864Sl>-M8bbKj9ywMNvey(yk@OQS0`n({8w=jId$ewT6gP&g(Zukk6RO#3}^o(w>u8Ggg?v z+u^iK{ZUqQw1djoX0!eoX13p2mXaiK2D<_`nJB97B7{MZbj4_X%VB(~lZSd%c^eAr5w!cgFf36sR zhq?d%x~`l&?$QhQ5`Cd*BM*6Dvfew3El53D^PUK?{U+hlThZHystmX?L_fMC&+NW$ zriXjlf}#0L%N|L3?;@4Hu=2x)>8+R__GA(f;v66GfCJx3MH{xql)lkM`bsWmGup0q5#p%mY9*aHpSby39&r&m}q`Ih2IEa(_O+6W6pe`mTZm+L4GaePW-d+n6-D-cAm* z%y@f!BQF=6OMWfeAG)^*J|gx3R&&w3P z7AT$QO}=rFK~N+#Zvm-G0Uc(9?wRjpeY{9*4fw``p18e6N_}(`onT915l6Mq44M}> zrc^&fe4~e&8>2+uq3-_XD))nGJm3wuJLLgqpZo-lvR3`^VcWVN6!DwYBr49HmA3TC z)p+H-c*TU~;b-(`3Ovk*u-vUT9OBu<1XRb55ECiE>?JCU@6sxjjTe+H#vy%r0?Y}~ zu7CG6Iq(q%Q{#kM&A=o(f)%wMwzgo!3Pyk(?uHZpbM599+%{J%N6GLeL0>vU@FCd( zlnCwe)}F+Xypt9OXY|fs8*X}aZTYgT4C~0?%+0PskKv1R7CZm_3H zQs<|AvTch;5vrqmbVeHZh|rKA>l!n71E|(c;lzp#g=B12QPweSgcbc1LRvi!lNnCy zE*&QkxS1FI^EekW3h-yz(u$XE^H=dY_6KcoO{5sS7ms#RQ`1}KUNBrYW)^T2WYw)_7Y!OGRF)U%gpuYnSZRW zj^KSj(dXy)4(7`EIF!JSm$z3fJJqtW29%{HHZ;Z5maVT~JDv1^F`NIf`}g%UK7GqC zI@DMs$vM-K?pY+z79@J7)<>+lQjLZE7kL$--WT}$je4+ImD)mE1m7y?m9Hl38-Y{C zR{?B+7Y-wWe{Ko#!sY*E23Mosh5_25l~99)35vDNjtH-JlWe&76a)kI z>MG?abrb&7Qbz|q?aZ-TB3{&_fdq($!#>H34n~Vqr~5vzexdM-W(cYTvcB8=3dp!Qo}dGIFAP?vEZT6 zj;%=)ImE^#Q+i@8AB(dBLibA-idP|}l8!*1@T*zmbVBey;K~0XoOevq?#i*#|8zp~ zg^pRq(&*WHzy8&&F@#MnIAPn%;IfE^ei!@IFi{PApyGwX;fJw6DnrYZgAzsV1>C)M zN8k{9%;;$zqfv6CK&d=%PV6QNFkTk|E^EC4sw+MfDqq0ttLYTXvG42h1dly!{qPmq zRctn-2P9YQ-ZEn?`KjLS^?f}<_5tM||9{qT%Oi^3(y-?0s27fbbSqgDRN(}ip%lNr z&`oAgS*~TWh)v&1+p2hyH%#NWEa8E(B9OEprTh?)RLpD++sMiF;!UD~8hS7>#$$FN z$brn7c!;N=Gw{pZX*P3UuaIeMuTB`i-G0tCv>KS*sE)u@o^gatxj3>{YVMVm+ zG4yO&mayG$b~qG#JS!`tzc|&+^S0IxFxXxexP+pBlWaFgY9+~`c)dikx>~v|joYxQ zZQ*=AVO~~r8)!z^>7y`ui2jSuPLK$CNzD{C`5o!SzajB}Ff4jE?!cOp_aW66DYPtT z+wNpE%4W&Rmmyd_yhx3Mi>zJLlc)uwxDSo6hbn8eIFBhH`uV#PW#23KW?TkV>{K9Z)_YG$Gr4RgL?-4>48BoX`)-RVx;9@5{ zfnR0nwi?RbTp-PnzH2w?m&0+6oibF&Pi|CdPV@0fLEU)>nJ@Lj7)blD83<`ROAhp;o?|EqZ++x)x=b>uQjGdxVuhb*FG>g zPyg`1?Hb*Ft_Xv)d{7)=1r35FC0R@Hs3K|Ue3K<~`&@fPWjuYNNA&_A+l+9ty+<|X z`R7x}7T}hwY8u>DzCg-Dks=T?GQR&tMhX!W4Bv(7dahMr@hPxt~r<^aIwIc~0Z2fM#(q`lI z&-B6T3~cRjckSPK_s9jzXrV5!tQ1rx)5X@NVdx9T`IlW!s%As@|8P1FP?oOoxf`Dh z1ApZ?KuUwZi|ee9S^wt#6>4v%QA6ItLipy#E1PwD>pm>sgSn(PQjP zRk@|6`9~%HK5442utFK|5fDp}oWee0BsVr*n$(j{Hpgm5-%#wU6-;@O32G>|m$KQ{ zNi*fO)}=R2p%^cKNm#*?uCp3Yn0fyEs}$^<2W>L#oushe#lHs#+t3Mpt~dgSDLx62 zWpQnIE4i{qzAk*y|9b-Zy7CC{X99xgof|Wl>+VJ6N50#_d=dG-*m7O+kE5t%Ap4cz z_9Otu=d_OQ0+JG+g=f}tCB<=eIGvRC5lH>_ZLc6brr>x=VsZ%P-1_se57i(<>bQ0A z`*De$l}fPFcuJ-M)1aCVC*z$``Cw72%merWU+q661*6 z1iAs`*P>DrlAv#D-pXOiG1k`t0-lD$o!&0RrG5-t$UGjy7u=VR7ApI@OsSW@{&8(_ zCqx_#?w;w3yGxB%k}F_J)!e@Qr?S7!5yLi-NKF!jA-LdfjefgCv}b7$?y;PJ6PGt zmmm1L1w=32bD0ahW&<`CemD7H5tCM~FQ0FmS6Nu{5*WAY&@0&LhVyGEOnN3d4Bj?Ww=bKcMtKtc7_tgD} z9JlFb*QQlX7jkmJRph!9LM*fw^OP_<1%b+II%Gmf>r=Z^QxkZwXv5acYg^`7^F=D1DAFXkWV-TfTh>8!>gX{rf=` z`P6}lESiE-b@l)gx(oiWZ!~Nc%Cm6EGQEpgNG~tD`VGvTN{WFq%TT&MlQ%q93lb8A za1W1DBkwChs#j(2Ql6dC&YAwjtCh?z@iJ@0oeR$2?(mDdoB1|Gy8M`vdy>m8!ntz( z@#M(?$b7!WaY#DZo@0_Lo?E~>A z_TLKr2l6iJzaZxS1s!Rwhn|v(Hom76!qtFwm-K0x_e^S@35{`kjYVSS4_g_4X@%fx z`8H|q^5X|(+6E8PKAfugSa_@#Q#zW}u(L|v#S!o5(mzNd#f^5yt0~@Odys+g7R#K2 zfQnUez9AKW=*qF4H6_FxD1f`0y4SYWqsBi`2C0EjYsy)H()8&O4HwAIUC+S?kgEuu z-ZTLQtN9(-8BQFp8#ZJ;*cJV=5GJYIu6IE$4he|IISY7barS{rUfahQM1mWQrgX3R zQgYSS#2UuzWPZKONj1oeC)uY-Q;9cDHTO z{+vq3ykymMEst32jaJ47qKfdFwQtCqzb&pI%e7A(O~3g7@DRLx569ktFdQBHFVpHZ zAL4YK>3hytl4Yjt2@Nnbj6D*cpwiPLy6CorU;Oo3z6J2#aZZ!KDJ}Mn9z*5E_Nj*k zG1~!mbjZc7=gb?=b!c~p%PCW_bA%iLcareZUmWP1W&*To4`t(&<}tA{ok-WC(u6O% zVo{F&dCM4e_Y~e>9tgVpl50h(8u1~l5mjAe`s3`=)aOBvCUt5mo<9-bsN%VY#Jb{`GfB?@5FSECf3Z10&0ws5JVdEW2) z?#!LJbMHSVXHIg~{w>*S?={(LEprO9nwMDgTr33iya@!$^2gBD473Q@TDIr3#2hDq zH0|9&3D2|1Ad1iRNbe(vk0uDt4z6(H^eyqrrGD6^jsWbdw%HSodJI4Bgnl;p!ueH? zCuSEqn=WDIgB3BeCV}vjCHPmB&NyD(_ddd*9phH8fiK(_X0ip->UJ5M{}%@8t&cuv zYdN(=JQoKJ?76qed!v7mXT~4mHGeAqD z`hxYe#1I3R4a1dYmr?W$do@JJIcy-plD<7w6#e|H^oYKt9^U@pU@De_`_E1f1^g?0(&E3 zBLMyDIU@i)|VCdgjZ>*4eR#=NgbYDLU3r;&bBGX&{UwCw4n~LK0nLFl@ zXIMtD8JNNOvTN*ArPhfKOx>sBWivB6bpYTeQd~CAq#QR%AXv>4W?H>;s8FYzbgZmo!s@J3C-5E@kmZkK0C}i(>Zv;h!}Znk6m<_3mUM z?-@av#MKb3ZXN|w=>q$#_Gw3`K;hu^bNA+c?>F$Turgi@Z57Y%7E(Og)fho3$?V>Q z4_ttNqu;rNTzXm;&w;&2I07#d_!BoiKW+#Aj9YNkfq(kkJ4Tw4Q>kPXSlowcmN_q$ zu@LOzS(3N{@a0B^cm>A#z8%;Wg!M_}o5ORAUV2Mr> zgCic0+O>6`Q+W<^Z)>O9vANjnP>`;3JD$qd!C`MD*n3dK`J?C+`W2^5yf58J&VsQD zm%j}!Kgc3l61}x^WXm+8v8S0Q)F_h+6^z-=3ezu~cP41hTS2K}M*jOa_Wcvw4_L}3 zOq!ZNCQMk(I&Jk&2Ls#|{k)<94)B(LBkF%9<*qW`B%C32*iL&isnOooi8$&{K6>p% zYt68SQ>jGGzMWG&j5LH3sx^i02RkN0uO3?k(X-+O{%2fq4b=9y2TGQwI6N@~U2cDi z20RVPFf!$%6nlab@lGo4I@jdXK#1~O%*hSA>T_>7>FEB0R^T2fi%15+$buV9u|DM6N)-ZKSMvqLTFWPh1E$LjIOJNIaBBTLb&U6IH-XZ+YEjZ87E`<| zZ0&*mGjaz@K6%O30BQzJwC}Y9f92&`BhAr0;gzZ-7R08sM)UF5J<3eAq_0_AahTX7 zv%w0y+3_K2rPO;+eR{Z5h6d<}Oz;T%+ScYpY7(Ashab|4 zWdB)FCyg|V+3;r!=Z(KfpKvvcZoq*ygCd#$U~D_jjab&faeB-nfwa)>|U=i1D})l+*motw?{Z zrv;R;XnbHwf_^uMT!kH$tK)ZTJt$HQVQt!ks9u%cvUUFQhz8ydQ^`{o7zUQbGmAMi z7$lC?oy|}1<%cb_XWXUuP>0^A$Q7V7_|Z*wp)<=ISynXBcCyNE35Wk2!|3l!d~Ziz zlgmMLx)!3}U86t%>`fuA;I1$-i8J8cV`iTqM&Uxu-rS?AIZ#^oJpAM3{Uc*ldbsB` zSyy-K2Fino*2Avx!|Rg4oc@k|QjX<3`HDW)$s|`&Uwsc|v;-uX5nR{a%*6L?eg!dkOC;6TVW#X$KdeFt-r!9PbTW07@oJPzQME;ST_YmI8R^ zJY0@}9AL@~a~TRM`KvN+|0g>`xP3wth(nJ z(=kfAIOq;(Lr%!H52>E}?@(^NpX@rT=?{X`DLx7>dg{rVOgYvA)mVS{AaM=kxcGK; zeLTWn4i-_?;wO-+xmVYgSy&F(2Y)xEe3&^bR{)enpCaDMtl_Qg)HGGso_z$FH9s?} zn9QMtUA({IXAo`AS*|;Z=}ie=pq(8S3m^B4iz{sJ|6qf*v1xHyMh`tzu(J=9Z*tJF0l+5#zBg$^LXs5zKNizquem|bK21jzV$5WD%V@tn-W<}LAq=9U)>39A_jV#Eg;e3Jb?#Gpj?)w=D1AHSX* ztxw(iuA5*s$i|AOm!px9QUVxOC|rK@(ZUSQ2tzB{2D4q151To@V{NZ?Fy3N{LfI5h*jhU|_&P%N^_blU{pweReEum8(%?l-aKZ*?>Ap&8Q@YV_a)s=`ImP(ng zb?qYkZO#dnQ9nh`?8c}VlplYA*<)(J%cxMQ$e@432i`_0mP$tw)p;iY+q~Jw(r5cv z!RJd*uXXLYT7v!&Baf^!j4YIYCPq1n9myLVf_y!o&Z|mQT^304RcKT*7u>9;nfKC` zlvJjkIrj&g8PY#`FBQqak_LUHSrqkZX@gc3&R|oNCNLQC1*LryA53smxL_XoM12qI7Zd(X4@MQ<57gh%sU))NmlvnRzw8OuID& z)n0hPp0w;;JsLNQ#4K(uqM!PEcel>G6YA>GLIwrYF3XZknB7!1&pTDKa<(Wn+u%EJ zt^h6obC}PIbyoWH@Rv}|;6CXh9so-!FGr$P;$-$^q&pC!R>gj#s})z;u344?v%C~c zYspxUbINvO>j7}{=!5jmt3qGD&H3=zI-D$iSNG+wDGJI2Y9T3NilKJmmJ-cXEjBic zDiU;H|2nX$Y9Dqj4vUuQ{|&nmC;>XCdHTEA7G6+?yw+G$r{#XooisNP+06!wow6oh zGHd)L(dJY2!K!~f7m`B}Iqmr%o*_P%#p4FnJk9Av?6?wo z44z~Ti1?GdS=LIAfUO(i}$yKmh8KG2U8);rNnK@49ZQh*8ND&;d>W+^Z+j;1!)ZOe zYmpKbY-9ax6P{*ZB@D6FqrlHj(+&B5fApjs*Dq9;!LkYe#tgA^L5wB2AXLcOul8ce zp@D1h17aAHN6Z*i#@#-zOK6`@1tQ6PN($C5f;W7_&$gx#ucN1GS0!w>x53GdLD#^~ zHb@Wl!a^3?zjQyIgA2r9RGq-n3Pm9D1nUH5#b;=?zjc%mZ%ydX<1Zr@ZR-z`HvEQZ zq*&`%T@jy8S;v@B`6tQS`(5Agc_p1g;~3~7<}f=p0S6&6OOYM?J7t1AGKAUz8&@q-P;=8i@@{__wHPQWVDwY0VF zCj5$~I)92Z*FOec(OvzfcS>*MdG6HSL}bpxJ6pEDZn=quaFuoLN5Epz<+C57<#bf- z>%nhB&;!#>f}1dX-=bWpsh~>pN@Kvae*5{NF?$f4?BS|9YEd(fZJ6wYuC zhQU4XXlc`~cY;i9nCrs1&#MbaUMhXFPl}D;2<8X!=;xU}f)`L82i?R+ymmcWw!EhBir z9hlag@e}L1C>hgn&U&`rDBX#vL)Dm35OB1CMG|dfVoQ5{j!x~@(ktq2OluU)m!dXZ zzDgy2uobKyd}?Fx?Dteo=$8{TQS0QXN=ymzn?Wp&08NJ@LfGWegE=-7>&>sgH)kZ{ zDihs@E$~!Mf3RKth+wH@oZEG_kXoQrO`QrW%-ggPZi0@Vt*Z^3@WD9cLS~mIDm)7@ zza7sidEPfC+bv69Xj`JfZ)lG*r{hyQK%h|e^wh*J|K7arbVRtw zp9ke3v#hyE#0jxNf|%&KHIeDo&#|+^P-VM`ByO|p zZj0=So;T+*u_FNI*HWS;>XZZ|jt;ugRYr;G-9C3E?!TE3>*8g==ey@AODmk~a*+7IzBc%JDa7Q^oxvr! zA{UwAjmY-@Z7dpM)wXjrqluQBZ)Jh;2#s9v@t(#frt-t%>=-kq#RuQ#w&0UY?2a(y zqdTKlJG9Oe!xyXbJ=*8`fCm2m6;xb6B}d=Ifgc4m1G|gS%H~eO0f{!@4uj z*)vWsSRq8SUn~yodgK4_ZCc?eEp^}Q-+DI}qOX9u#p=7^OX)!=iXy_X*x7?0FHO4B zy!j5SGNzQ5x-a$xU^iG^X1(2fXk4*wE;OX#QZZ(|cTma;>zPsiuWv^1vlTah>`M>5 z!TLzw_5;47i9eAalu~I)ZwH(vJ>h^oS`eoEIX!+S8NqcJ?~Z@F)vB=AZBTSMT?JR1 ziIr+v&h1<*+p@~X#;|rKSRa44#$R_4ZNKkJTRBxPj~+y>{n-q$+m?7U8P_&@Z|Uo| z;O=!1@YILiX)o!W#HrdG|0jdO?`iS6rs4x13uJP{jx_gTnYTh-AMq*teG3Yy&2`%T z^vI(H^zf=z)OwBUN5+y48ndAWB{Y(fuL(uRACJq&%jJ#>S>NyH0G`6;O0nSc;H5F} z^|%A@4fNTy07GCk!|~G-8wVe~u77-JWAWZxfxjfGVp_}TPgE280v>jt*XQrF14(XA z0GIYkbhRuLcKibRbz&WE-g#>n7_V8YN9)t>Wc56(mBCCuhb%CMVG_tPDA{agLSMlC zBP)s08+w(3;@pA_>*L~0Y6X6F0v38y0?R$_Y;2&3cnsplp#WQJpl#Eg(XC`Q1{lvk zBl!b5pEn+ggSY?%n}9w{|2N>J_T#nQ3@R+pp^ClcuE>X_vFM6K&kk+9Y?sdg7k2}Y z^%)CZMzq}4rjd6ajtx-FVrU*56kJ#D3TDWe0ev#2!)*;+_}JSk3&${O0h4WDHgiB5 z9P;1kOK>ks;Tp3HOf&dqrmtv#YK5j%J%X_nUVoScHus2zs*wG~9js9GflW(d33#J> z-A|rnwO~lIPCA|dTxMq1J|SD4yuUm83R^)_7*zBtvms5TtwNW*rH?w!Zd>o(f)}$w z=l;`rM&|w}qcj(mUe^>p;`IT{S-RoJo*JW#1MqMX4;&3}Ac%Kkw72pRXKR1(mhwBZ zcN?Lh(9S6E82D^ebESSmg*SO>|nJ^FKHzS8gH&(XJCe>E~(!LZp16OVk*g(r6{ z%3DG6+3RKj=rpw%zbg18-Y+zwKIm{AQWiIMD39A9kNsOIhfWn?rc~!KS+CvL2(425 zQW#iHvZ>4c{-m_*+8E`HvpP_rdJ5PT`-W@p&8xVS|5^-gJ>~~6CRyu}3fa^fBWO3- zk56je(1K-(dCjERPJSo3HTb-paTx!n|3DkSWJOuGz3J1TH4ickTNUg46;7tT@{h>cpo6AfqW(WR7 zKEW8M6nYf1z(fy}A}`NAJTWgW?F;zxn7;hzU_#^B3Efb+L1- zVsGp`00&jrNi4BezJAUO$0 zbz5_5b$o`puoD^Bw9VD@8Lp5`ApKY*-{kYWl{~I}%olltlAPypl5;A?R{x8Z7xi^u z7&PT3<>&jFO=1c8g=w&X+aWm#f%xI@zd2)H#Qb;#qm0i7NwqA;tp8TAdd`P&34;h4 z6zu86@V$&{h(N!mbGDYiy^IJX#Ph=pnEgIW`3!bDE%ZPZu;XshBo9zy+0llaC`wBT>OKDU z_9IGCx-FSJ4b4KWZFD94ytY`Oq-ubzCS91jx7zJc&8w~A{&D_A6Vf*g(T%kjm@nZ7 z)Jo#>FS@6~@L=wU*)B>KzA#?YQwh>$Zytoxw^}RYk!Dn|k_=yg+O&f2-A z922c;;u&dJvHq%xKfE7_uEIIie)~VVW!okDVWJ8>r@$gOz&mMxs)``AbA4c|II-P7 zcqKOg@Y7<8TE9jFwmuP-JxE?2@oSni^AcYTjo!jxxsqThI-K<}y8NaYm-;KuSC6fG z3fww9*Jq@W`leH1F0rHX!3^3@;3@JQVG7Z?*$@?jo3QwM|1eRV=zo0 zzQU&J|M&o_%ZA3!2M}ecpdip zk$D^=K9mq@K?L*Yrj)cxHGv!omtp|=`;I-Z7F3&MFjtw&VuuzLY>>Qq_a~721~thj z@CF3Hor}E=Ht(nSqAYLic_Zz>M!t`iTz@1>CWEiL*%2=gUAF1|45nBZr7?KV&z!>` znXHD!M%-jaResxcgX6CSI?SQ0LgNI^)s|t&N-mfU$13lRKfMLRbp!91q8yOfa2c3K zxIZRu{OQRcEq4Um_hDPBs5V~L27&KC8?d2ZbD@Ll^=r3(-YlliCzc?MN?(aXotmpj9b^`+I8<$;9#sX=)z{KraPi|K95rL(*5t^?#++KU(_Helk9PbpXzm1-#W*>_UY%23+NDOPTpxVrJg;-1iO4yQHT@ zI53W}m`S#=XEY0hmil}s7<umN+O`U`D_1QhF6&SIme9lUCRe*2KM6e|GPZ$l-BZv#y{j=yV z(L`8f-6)39sL?1EH`>Q1yU|~8=nr4$(pfBUl~}c(f$@)fwqYKW)g`EA%g>v52{Xa1NH?t@1m%I)SENTke5LrVC8a#41y_%ax8vHN{uDysu-kaU6=zGvvq17ods3 zoCa)J1@$0;E|M8-y}LFYUn3A1ersbQxy7UW3X(tYhS#Kp{R<8AZ}TtK?X7X(uO1(m z1xoNvNHBi*kQZABU+2~HYA$_44}6R_>tWFBV0_xOu1mh~4=hk0H8)RP? zKu;37z80##njOZf%L!u2k9K7vuA@MZ=I-imp3E19%&S83wBd+7(L9VFI`@pEQe(Vr zZjy;$W=@5-=KDqh!Y^*+Lrx*vw*qHA^0~YweNw+?x=;|QUl?(80fL;pH}MTs zAj|E8UM-XMl9&Uzk8VP*;oBPr!Lh#O-&g>WED|$WZY4fmBc=LSK32!uKNYjztN&v8 zF|%BM+ok#S{?_@kUS?-IsCCTrJa(wKC*JKA@A_MCLz+g8>z~*!N32r8HKQGrt_M6t zTO>Og39oF!Q-)^uWX`EvUc|=>*zWY|*Nh$!;1kpjnH_EaoGeL8`uGT#dJ?PtVQu*Z zZO0Y2?IYM4C`ccPM>|*UFwNpU@LY@djNrK5f6Em|mTRo+&n@-{+UuX~netMV9zf7X zg+?nTh&xqT`0eB|a_)p~l6Bsc4&P#$M7U!;&it9p86TyB<-frnFw55-AHpU*2$Aqc zPd9^>r5!!&p(8g&RW%*3U}O#2lesWrX|(sc#M+?SqBudake`_Va!^vQefzXp7px8I z=pXeD3gi8@0qY*9%XtR9vNKC_7(}JNq(-&h&7xe_#J)D#xjjXqsOk^stCEmz(HI}) z$u0$h+N2FQ3cJaq&%}JZW?u-9pqbrXK9kba zEDwt4$KHxs`(~Ku`H6FmY;NZ1$s#i&O-W|xO%nc%_~b54EuMD^g9|7K<0VA;RS-tf zD~L43|JM(b=L!M%_}ysThZDRRVMBKB9YTT!(^_t6pzy1$OS6@h{78+JO~=ZP(P%3` z&_eX%e9Nxe3;*3^R=V~36jDsEen^SC*MNB|@8`HQav&y{X*Y;Gt%V#4_xvCTS!e;> zP&jSii(>}eYy{uPBcu_cyp-*eX(FgeOpvTpymdt}@n`KZW9ZH-ke3jN;W6`FwqtK2 z{YeljaXZ*@*VV{$9d})ezswQ$#^I9L2_qZX*@&r<*Hp1D-?&W*?eycv%}7^jj326q z&u831Ck+!FFANds7mtY>X`>Cj&{kx#)zBs1NC!!Wpd0p#V%ew@>%W-HYKYJ0+q+AU zV4+VhA-b3}m| g7ia>t(LyICa0w!`M8;gsd7KwR!1`3BJY%i{u1Ix`8wt+N;l{? zp?EHCH)!P9|MO!-x0m_vz(Q`a=~336A*CWohz1xZ4(&U=igXY3po2nApx-Pk5bFNa zlwdPz5bYrda+3?Q>Ii68`{kRzeN#B!FWUP0o&JsV!g@&Lbm}Zi3KjEgz({R&k|=mBfVC+A~!P`f$}F6 z7WB)%CuIaB=X4_~H?@+IH#_|1{MYxnAla}mIsQu#FqClCAisJF+IIc6zC&mxd5i`OeH)?g}AKbt9 zfb;({tBtT#qqC8oW_%i)3JI$RQg8mxtO zDP4-E;g8-6@+S{X-W=wV&I<9uyL>k&lVz@}J-HQo`Kkv98v=g0*zrrYa+~@IERoX}-100@)KXx1N zR^R8S5*S$C{A2Uy6eHN7MNLVC>E>&iGSFSiMhL(A*9BocZq+a*-l;#?Q0!2h8iN?5 zjA2LsFX=W$r2n+to*OqbS~yUl z2RyQ4DOfbnnMUb30$jMTtM4*5IdGqGo9o9=qmC7S6JvPE&+vY>^cXd>{1tEU@2SX} zGkJ_VZw&wy!($6>^&$&rq*Lr@3Z1kFM^N&n05OGGP}s({2-Nv3?D$0T>j_jGc#-vG z-^_3&eKlw*=R1nnM{C*72@Xz>X2AZ?xUP^9vgT{SA@8#ni&g|t*94%H52Nbq&R+G&f(h>Unc*OkG#+{xOY=iGVt}TG+f~k#1HQBcV2WiCwLM4Gs2hW zMZ+gNOke*2#HYaNGcB=GwyzW!uu={$5tM2ZfRZFQmAaJ%@N9_&1Jn21UZnMwMsJC} zsQ#^-je|9JqfZfaIbe1IxZTjbxl$bwoofYAmqRz>6?N*#yrn>AkWpu5n*l|#TWf3u zVrKSV@Fds6+z_Y%7~*}Aztjmua4;Sl!|ohs92jdz!19UZX}8}|+2sg+ed0OludL>* z1;&wWqm`G4g$VVCb%68&vr>jxdw4@J&agIYUag5zSI*m# z{P|G-QNA*e)!qJra=p^&&(+-idyIN03;A9mZLGrJ;J(CsK4+-_16DI|t_EJhP%97H z47y~Zo*~2&0In;ena#A>JR>3I5X!;kOjBmMOdT%-(Wl94L5FAy(siL5U?4e&4C0Or2Jv$%!ZMMNb{yH4xsHK-=F)V{3jz6OHHXB{kF^;xps$P2aJk9-XOTPA8 zS~*g*$!WJTnxQSmn$~DGoQmhKTba%fQF9;RMy6vLhAhYlJKF{FoCUSn zcc4iKj0U?m6F7I2Y*&*h2byEul1$R$Ao|y=(4Exk()X#t_Cp}T3m2XNuF`R z!kACZbARJ?U8Pe+{Uq5BJcHCKP11hqc_wI2B*r>u?D;PDpnq?I3Lrwfy)Z&HhlkMR z{l<}_o(ndxGBG^utq__dwH6!bGe^wpOOzlnnMS>D(2ZPlV!p*ANYy$mJ09{g5$hAz_TA>i_&A*7ryd8M~HX22w;|wCQvpP(5kKw;RGB2&w zj9W?3oIYg zaf{u&#<1*|{RVIT-_U*%h-lj> zu7cNBV!0{E$+EU;IfE2EM?QvPtSygpF;{UlAiXD9fS-Ep|LDwnVXJZuy@Rj))84Zz z2Dw7<73qT4UvJnSj^2PPOkTFviT$Z%(M78bt;|S}87dq9I*MeYXV#nn6n=(8tUd+i}fI zf>0-{G-!jU)d3+!2V(EPs)+3BY|TT0@V2P`DD=_C0zuJB$xY9;J8xG~HUiDJ7f6b!svOxfB1UDl^@3CL2k$0X;lkiw;z(-id!%jrCqyx zJ(NK9KE@tjKC*f2)iQzSkV+$LAn@zng-+@}ucW(I#kIpdYg><8$P61qwU(zC5xLJp zNK(^`v;?h# zo=gAbVf?p-;b7FOVgOqzw{@4Y3P3s%Mcz_J{;vkdM@|*$iq6B{3J@6$Tgl%^5g}aZ z4cHT(dhHrTwXTy()_o*1Q1&NYM+z+$_OOzK0!$W*&_pN%MLdr=5vkNk)VJCNk_OW3 z+f)$K^Z&!yqvK2YeBJHX>C$hrFYVWS*;KvhWRgxVP{%9_LWaelTTX^8GIWiWQr>rG zt}o9waF{+dC;uqWYl-uzs4b}Y!iJECN~!Knbw{}a;zIW+hsPer*E_EH3BPDj1)O^k z_S0#~wI}4xLvtaoUNTDO+P>*il|!DIpEk=|!KJQUbGos+c>v3#Qcp0gLVq84W4kz>M z0?i=o7R}2pln!4Lz4|Iols-SCY`n_P*SU5ZA5PU+&Z(Iltn_NHB~kIh3OSBzwPpXu zZV)BGUbSX+ate`@<;;plekl(|ci?(RQT2zN2{$UOn?QS9{!R`|&rGug%E zz83dH8VZ`yEO0m?JHG5?S)IKQ_U^)?B-V@IR;+Gq7J@O57%O@?Jp4fDK8qr3# z0MN&ooX*RvUz51p0ygg?Nwaa)-THY;(+I$BVb~gSa$lL~zV{HvM`&$^D_Q+O$QAJF zK4acw6#O6%@Z7LIb{_x_@YiE&IB{cX>xp1-#jsa#8CSF6+fe;5 zfNEsRiiPF%T#S!{sY?rhneX3*ask=Mbo`(1XgtC0cHKghc*j%0FIw?)F3^>ss|Gz3kwgTfUYNAw6SiP-L!<=U@v0lw z;zbn5pKniLy>yO49m-CkU zzqD~>YoAKF*+|FKdz@;Ui6cJu3CR#o<-Q?(itv@G0$miX#5<4wd^G>9!{Rz~Gq zS!v>qgyqJ1CsV(Fhyz-2sVOjc0pQAakNQD9LToxbNrAf}NB#ZRV@=-ji(cl{Z*k`D z)*Z|#zkgY}QrQ@@1lMuY7^;=Ejo2Ew2ehc!%`finXOd-3k(jWY2}Gb@y%vo@wtOk8 zq#ktfy1{H_td#`1cq(mE_uKGs0r=d-VD!WtsMTr{rD6Op@N!)zhBlom)Y~(5Qdu~I zZ@d86>#z4ZblgykX1g*`#)qi1-|*tPv~$pDNLeZNm}mSj@o1NF%xe^Q6#yUtur>Wn zMd8NN60K!|Szw1asFoi^jGaYgRd{1?6Sl@0Smfth7`nXC_9*OIsGvxgDccuzf{<6W zIz_?W-jO!5(nar9e>kdRL>^OgxxHq=Fr)llZ==DRwvw1O7UCHG z&5>`AZ+VLhAc%hx)cz^DBE}^>dy0%Y<^6w=Y}KE=xtR~%`n>^~mv^G4xI4EZt)9lp zT}NT+j)$*!!t)D!QEABOov&!^3y93L<h} zzl(Pa`_Ot*nq+76!D{p^@k}!XB%@3q*?!9%gV1ShmX~KuSB{3!xoFh z=Rnkt%f-7=UzD|w6*8#g8owN}$hJ05X&?T9Z;)3ZQdN$}o@zFJpP*=;lYvztBIZ{J z(_2c|9z)>+kF5p7M*0ejMzinaj1%#s-V+zrQR?xw{tGE2RVK`~_mYkqvS+NXi!dUl#>p4wV4f9zsOlXygZ7dx@DCfFY_x!;1jJ-T=Ap z!CBs@4Axa-rXHgjmmeUi7_haEy^$$^@^JA%{F@Ju=_PY}_G|qsUANA(5DzOzO)|5f zJG(`B^Ru=AS86P?h!chHGl{lB;zI4~fRjbalWM~C(3J7JRf+wtg!B957lbS6fezCqN;;p3kq+i`OLrm42TG!*I&vCz1YFq8 zoHc6}u|vuO>qz(XXGvr3_z5mSYBDG8WO8n(tq$&u8B!LF0(AFXO2ah#1(pdG!%HZ$ zaZZ(&w*Rmv^MEryEC?6L22{&?z52fyXnIA)5Z{s{jg?ry2Q&Fl${h(?;w-@7&Z*0t z&KthPvOjXySA>3l``be{TfUG1-9<&5APPx;yJsABs?`g=SKx~o$vWC^t1uq|vXyWk zTAd2Dcv?M2dPR=m3T&^Dswfb6WgShgN*q=zKgg(}T=m_e8EHQhMVDt0TFG@QruLs_ zA7%VWX#7dyyEYrb-$J{VPd#NCrwJ0rJeN<$K&r&+FNu|kq2uNlUAbALzs`32v#i9lRe~+5EzgUfS;nvQU;Qz zz#a{9Vjbkuf8jNh;M3Jyc*M|_tgs}B@^u$byKd>4H8o(3rh*)Fw6bs-P+$&Oqi-&jq=2hC;ZN!Kl3*cwtwKk$mVZ3R#6^N zwR7J3IspJq!Uf7MWPgUOO5pCX_7Yw8bE7#gOMn}Vc%Bg7;$dOWk z8d$XPZ`Nz-_)JHv;Y|kOWv%D`bEHlX($!VKZ92HzGVCG5pQ-j1&CGv6j-0%gpG7;I z#B!5BYA-a>>+fTy!bmW?l4AA{m~G%8`VT(Lw9bvxtl`63Pb_R50)3`;(+Z*Lm3c)1 zy$E@11srG1_Y>!}S8wIiWRqUrYq7ZNSbb__nERgk&#P6)kkk#-6z2W<(rC*zo!OxO z&)QcJtv;b`1-arh-cel1tYbWO3d*K_{CodS6-6nhd6c>Y9qFS4)ByZcU$JdBdm-Hlv#Cs`ms-y}&yNQK--*yN#7>PEZ_o#`*tSjy~+ z5BIocHd_AK81D%D6%;un9f}6*AG!wcCJpl7CBmSHsv62{?KtDxI+V8I@K7OL zj{E=Zvd6m_vL`%Ih#bl_Q#F_}`Y$d>7o@e zYeq7+YZ!n_5Z76=@z4zkC=oK7Gm}_Dpht?nSbsA9iX3E)R7kwI^S@7V{`aka_WZBT zL|w%s9y=R$mYQh`!4?J+%4~Iu*{?HWEI>Sdw8x{tgu|w3i0-DwI|3pn2&fyIg;xl_ z+&9@B98Y(X5=baw;}?tI_W%-G{uf?i-!;ta?^3j13Iv^c0l=Eo)p&8SUmwuL zQ!{3W)7@E5>pV1^6E8YhuZ^`U%k%iuW&US(!-BK)Kn;)gh@$zMtf3qNjA@eJJ}CBO zj?(6r)Y%LXVs75V!wmQxSt($q!vT%%m3VoP=&DQ+YICrlZW}fPEDsMyKiSTPn7n%n z=;R0!f3@?obrtn*LL8%+(o?J2yD^b(j?hDQIz?D*bVClMBV!CKCKF`L@h;hWY@aIE z^GIcYS@reX;jPEnGK_>5<;9fX0IB!>B*H8)WB-m_g-ozwqR22GvjT_SHbaq^`s zW^jT8tKiMg;#GBpFu}edl;~>FyHqBGGk0ZZd!EcO^LN;ANz-1hBu@VJq6J_r&gKXd ziWGmCS$c0Fps`(**rvb+!}asoJZ^&yiAw zDqFmU$IOWmGexA=5A98J?9{Ua%}R#Hzov!qGec~#AH}*Nl9%t>ZO2cj#Ox0yPYm%X zaMrz~jp(3gSO(~&8O>#vMq*qEoDgrAA0a5JEy%{5RWP%m;hhCe>$n6@z7Ilnjl(Mq zJm^k1FKe!*a2B-ix*d8mivu1Ax)ISu_@@BYB4c2V$CbK7W0?S@iy)z0?CkM0PRM+t zNVoeimP?6`{p=w!IpR+-519iA7sL^U1Ci>0Td_k@PE2UL@WYzhnkXP7@l8{kcWf6n zFo=6lF{Sf;s8+HGK6<-yb8nQr_S3>%#H>!m&iUo?&?%#Qe7EiV9tBzwVR2>I(k!VeTVrCE9A%_=agRBi7kqi7b8oa2LmTbHTTG0FNo7Xur zG#^#vSf<+uD?!fZf4Y8tseSkkKhDswQ-9n4g|9Ih&3VMzgsjEYpB;bx(om!IUH%+- z`!B7thf|~w>9(QY5Cf=g0z!ul54zP=%h=i(QrbT)pQY+lS))0lJayiaAgt0GtwPv;#wlmp**P#4Xc8r8 zf1%p58HfkqxtJ=PKAo07c0&&TaIccx($0Eo`!kK zFC?D>*H6v&erv{VZ*TyeV|~^!xCTPc-xbEjIl&#==eMJ#j90wV){IdmVtr;DHd-|z z7lXDu+TR^umt@XgEBspEiF#wur=UgU<3$3P-TGfcS^-o7<&wfRgL6g!>_4DM&bwjF zKN{A7kkq&Zfa>xee!#h?&9AdT)9 zYn1yDj1{AK{@wH@t-c10sPCYYzKeiC9B^b@nFNz|pE;1Jy1U4sP(5MVp`&hO0b+1Wj_JG=k%Ij`i_eb?$!^{Q{d z+v8K%`=ZRJ#xXV_&y$i0AxglTGQyjp5r;uIN7QLe9F@di^_>_-im?%K#?LvaRP{HI z#%rtLk!Rxpf?F41)2BU6FI8ss&hR=21tx@$~L zTPW*wq}60nKkU#N2eKYRVF+B?^m6$dmEoD0Z(NK#JUAijs%Y2@uCM)8r~5EBb+t_N zqXFL&_{q7qxB-;Urj0F#1Z2MZF)&53h-GfK{(>{5m*xtgd!7pW64?RYWg++V+cntW zFnA|lz}A7oZ7z&#LK|>LX~Mw*32Cvr1aAy=oXOPqYk!pZ{+-SH;b;b9)mQQ`d4T6* zY^=jqIgd!H`O3v#N7J5^0na`l*PBRTK8wyK_*HnN9|!Y9I?V{(_VcIW*{!C~zUIqp zD^Db8efl)b8Otw}94aLgcRav$>AWVni(%FV1NDPI-ukRr=)6ZfqKjwBd-p+%t(l#45Qa`j5J zs$_Gw@xTmt+7!od3y(lI!V-_7@7LQ!7)G3pSo|C@Aa{lw@NPe0uNX1IgJRLp=K!f< zhZ!)kT%vJ~w#vxOBZfdH9Otu%gS?gj`kk_tE=A9kLJ${?m$f8Z0{ZbOe7g@CS7JVI zYqrPpo=Fw6voR3(OLcXkHROg3*`2WPg-QvgdOi^mg!8)j z3`~6o#GmK$SNj^$O@|>>*>BbrFb~txyl6rxw{hd9&_BXplITvA<}4F23|A5fya>_K z>Vt$IaOBV#V?>dAdt4X%Fa7S3pbSMtYojr<6$Hv3TmkLm{iy3^pw4?-16nhWl?G%s zr6jQ86T1G+1o^tW>!)_05RIuAP?STOv%oL$OsPr=v#Laya=Z|O z_BM~&YqYbHC0`>C;phv+kSc(R$s3uoi`F5P))>H@BKCunkbEo~HB#a2b>8%}(_VkZ z7((eGmaQ*gZ_$7L;C6B|pTko`TCf(^v#!GULB@1LcfI_-xgWhs=D^QLblPrK} z+=?A{%5mQoH~uZ}`^V_kQR)(E9H71-Qza{~+u)A3RZB|SLlHW?Bd9}Y(aUX2-x!0I zzPs6iFwl>@)L9rgk>N|?^J|V=<~W3sK){i39c(-t_~cCz#1bZB=wPdvaV7$bLJ`7A zQP1IDtNn2&$@F$D>Gs9jXAvX0W@`3gDC-fffmVkNmjrX);CT`1{CW4i6 z?iFN}x+(O|bD75uTS9SAZBFH4u)X9Fk6C=&(n}#Ui3sZf%!@R02Q|CuG(G z(J_OagJai6V4)j}_uxd@r??0iS&NUHBe)gP(&FSocD-xfm3_t(uL7?+NB8 z?qU6Wt(buhlxl9$<$bsH8c55%T0qyxo#aGP55+NkZ#bo~_A)cr=ZHC-rT6?(#`wrj zo|X**Oo15DKis`FS@tms^ zEPOzJKU7TAv~+#pc-AZ|mRjrVtA=6i;nKTa45J|+VIIpWAO~~*wH!`(!XXIn20UT} zq3GL;TEzm47W4&EmMXUnCZYn5c3S_achO;TNY9(KfUv(7MD??$l;WGD%oVzBv*>OzJV8i`w@@PtSlmCrqr5pPsoTakJS2m_NqZ!`?r@u#E zr95Im*GdOxO3HC?Hzs_ia;^Xzc`Soa=B>)@z>8$>XZ=iMT|I#{}jdVmxU6wdd-X=*xf99ciM?N z0>YTF!w1g4=J8?@ahHe~#?QyNY_)aKo4}y&>k1L?8SQhNM|_k3zu2CC<~3E*{@kpE z<+pK2U14b^_NjMPFR>s2o=jW!4K$lO)QFENSM$U zvW=j@>Jr5rFFw2}_#)3E#RoSg6N6)|wDp;?AHZFz^R;}3m*F$U2{kkq=&^5SyJ~Q2 zv{)Hb`h3Aot&)wite3ADT)FR_%BWt*^uGl$mQH>3T+^Me-aqy$=we?9Vva76r>q37 zF_?%a#pBHjWkD z=MA0hjAcwvxX~l~$-CRoKxVZ}Y%dGFEe`w9%n|}p7m`KbQxL^|jxJJ#H6mwQvv<7c ziVqyENeNayvj4U}e2XZK%B|EL>Rojbwhd$3!?z1uc`xqjgUt2fVst_NfmoVU3=m2z z(>*h`RQ{#XG4~7Jeh-s)>dqx? z`VfMS_=SRkgHss)0d`6u3m5ge>yH5L{6ubvJ^2{)uQ^w6I&u-f|RB}+?Sb;6q z9{*icN)!rv{q_plyNkWVj!}H~lO2IPa#oK%&TWgP8}(Jh`%XW<6lK zWdwO^HGR$Ah;8bolQ*5Jc8@jhRF+yCu`wfbD%|rnuD-B*Du!59HkkUg(-u9E6Mt-= z7v@hTi+r03KNwb&>_a1|%TSVpONFHe;>Wba-}w@s4qjgasMzE;etUm*aX;bepOXa) zf1i48g#li3BZ9X7YED-@*G|@@VBGB)4Sn`OY4|hsUfROheTa0UH$uP=;7KXt$#nDv zX4LtyHt>qziDYN6C?dS|c%9}dng(_CR3?93zmu21<%d+#5M%p#YB)yLjM={87e}3O^Yi&POnZdrC0^}c^I1wz4@pSvje7Nw?^_+mT5hf1 zeponXIT1oNLP5aLdi^@JA*WS(?EL9D%q}JywWQK6e}jte_a1Yi^XrrF`J6Zp3d9N! z{Ne>x>OzwsKl%Gi;h;Ya`?>6QfR%wECWCC8C+PDYPG=wcH#8Qbw?Q8d8sg89y-rM3 zOvaBiJ`?1UKgT3_BWvCT^ zk`6P1PwrxKR8qj^6zVEtw{M7KUP7^74?JG7Ae{9X~ zxqjCNZo;gk!9IQH%;TfsdQXCI3w~^&+HRL1JAz`A)P2# z{C9dEnC3mw+mpp-s87iPxTuK!>qrQGVBA(P&3GzeCk7${rPSXC?*I4!D$CF(lBgif zJWyeqbfL+KYScfWI{VGD{N;*$6lx2i?FlmNK?N{jou0+)mMN^U5oTc`iATSqqq?9&$N(e9(PDA9Ger}ZQlKA!$`_18|yyCK&mu(Z!m=D66j7UyrJW!cG#;ZK5iY71aPHTpBO10LdO0X`!9#c^Bf;b|1q zy{^K>fS3IMPjI1?`~GcOxX^7=Ve(A1(7+HQ>(7Wmb$KCQ7Hq>i5D%@KHB$Yn&!fig z&*?LE_P)9Rb0?bV6@@@A59T_-a zBXV1D_!bZiJQGy)Jg|?kFP`}J5-}?il?fs)E)E_O9DWSG+K9UWcMoGzH{iEk^7A`y zo+I~pMnhXH>y1I<&NW5W55$#8^~Y!3aNgQyDslm1@+pfn1#xeZ6i7PKv3Qpr0n3^p zMC(BAhBUggJTn_&6IhCjGA(5*z2W=QY1@SBYjM*@zL2G1EmxC`AI4Jq$UD+6iX@SD z8EIL!YqMu-9(GaTim3=%T?sQ<_A4y+(UDk2s{Zj6kZW0w>2sZdh9_p2t3ts)uTc8< zZjBVk(fzbYFMfQAXVl89ZXR|sV!!B?v}mpCW>6}f6Z8fFyB!AJ;q%ot=sc~XM*i`6t z$*aLDAzJs~t3*H6b2&+)JeO_UGuWB!JnYCKk25!Q>s_;*!ZC{HX!cytidhk5DAFns zt~}1K$e)&T*W<)BZc_yb7g>vA2>dmnTQUC-Vpo*a!ZeA??cYqdlvtRAgktWSjaVfk zl1l4ddj0*&6;Ex%;$`m+SlG10d2d!q8o(YszK!?Z8b9}@pFbn>q>ERIEN@KI*OzZT zTP@O5)|Z+T2D8UK`_3Y&o>7l65JIdAA25RN?|>u-!%YQ4Hl$9KwzCE6MFc4C^=?ON znIIzA$IYx|RPOojY;X@pC|w;jILAXtOc*38Tn=&1MJ$XyPmfE0J_ziDY1&yB1lu2oYDksKW->8%tX`NYyrXJ6I(R*Ed zFU07doEolGsN)Kca{kGRNc#;bkN*CG_xPlo9FW7F%!!#EG+3lI^xJf`RQF`jA-n2X zH61cls`yZe)bQs7RO@)MMLf0d^(<3MaMM_9UzcISzs%QUnF;@~ML;B`j8tY-_18X6 z5uh9q2QTO$)X?4r%U(p)jD3_)2~BXnpPq`UosNiR+YYLcM~^3v*AXuI-6CzdJ*^2M zTMdi6hc=Cp6AYuSX>LG&yawFRsE=Mi($MuXe*a_mG#wZbAGD;;Y&-O8>fv;MSwT@@ z(Vz-fZ@s@98=vu+u77>4NpZ(o7n_zBT#x$oU!qVyTP7j7z5#qM(#&g)5&uhe>|bQ1 zpf|s|g8Wf1_0#No#rq3(kVojEjL6f?gp2OrcTT;ng(cfXKg7{M{0MnF+P!J0Ti}~oP_%|} z=sJIOh7j4FU`aoz2V9d_S%uFkYL1`3lVATw-V%VuwXO}N%lTSuIrnsI2NnrVKZS@z z1>uO(4Cy=GT+m$&g6jDF3{hM#rtD@)p5Nv^3hUKJJ+4*CY!~&|GeBRYK{sC&;dc7qyl8OYUWxT_EG>NY zQhfx-MTW>p6W$?juI-nLE`fm-c%R@Q9nGh5t~foSVmjWlhByHs zeB8)iQa>QYnZvQgN+-JsUv~jDJapQh>glh1T^wGdJ+uABA~rHIoCd0F;J+s{l4o(H zy(+jZIqVp!OHFcMzG{8z3Q$7o#K^n7Lxnc&OOr8niv8|nhiA1r!GX$nn&(BNpk4k# zt#o;z@)0>1_?UX(t=I1$QqA8)m-LP9oy|Jjr$wuHlY7ieVYT6;dLqk(L$-ivIwTun z>G*RbPHa==^EgBOye}um8G7!*KbmWOOK0U~DR#{abtNa%>%-q_s6IY^|AQ5iisZyO zXDAHMxD6(ec}Ob*!@DU&_Nnn)GPY@N)_YQkq`QYilRo!AOK*keXdw=|*1o6V`585- zk0nDg#c#)w{_y=*kKwWj}rC)B~#MCW3qlV|*7?;Km+}Px%a0wEH8qmJxXnGSl z;M0uG)(k((cKl;F;Xo&w*WAi4_LBs&O>@a%nQeH}D-UP|zIEgX9+?r1h6{jGIEnF{ z)d{hQ*=vNTO5s=C80JGX9YK5;GWhlMl9`hy#34nNCm=Q%EH#Thq|X^^Uyl zm)4X6AW7b@HhuaXqm!FK!E^Mrp!o2Yzvxpn0A9ZXu9j-pI?@v0Uj!KJ&a=%b0S=4| zIMU>?GRie;2p+TexaIJJxP~?*Z8*6*ioWsB=(ud*e;T3umE5KIF_0mZ2Su{yEQ?zQ zstxbfL%$3`|I9zDF{rE8I)0WGgbh~b!l9g|O5m+*bZ5M8PeADn*7TVG4KZ3<&@;whZTsydKWW?_2@27j1|MpTbE~ z7xl|~P2qxJ?t^V6JMq7;YXG3kacwGwP1d1;_o!(G#d)((6tZwQfYjSLsI}9~k%h&N zv`zEuJIPr!Up93$6CYo7+r3YMHif+e4}d1^5!F#LIxAlm5J^eG znCvUoC5DZlovgX>8{oHRuro`;*1x_q0oKIC!@_NLEu$ z3eHSL3GuBI(=(aoF`@CHiMKfVp4;QUoXylC#q)zdmT+4VUEi1Q0aia~;JaevXQ$FZ z_22wR1hTVAvHFC?QLZbZZPNUH11Uaak5~6myk*#DD}-oi=6@SMBTE+qm$bLAjqs*j zBO8RsQ4#AN&&PcG2B2U-p=Ub?v|u#;jo`(_?Dj?P4;UK*N&UbEAAz>fE@B9i=( z8;h-Hj&P|*t=`H&_Gee3^p}0gVO>%Ib&;G}wwin0PY7pw(wN&1#{UUJH8G+3MNO-`kzvL=20UDAc(xUQa9$>0@9 z^cfjU6?~UY+|kOM9_!hD&gd9AH}RN}xR%DOHf}|~%7BvxYnt=(tC%gthUEq$XGxjk zFs@|UMR3%WuQ*+2Nf~w|#ch^S1;kSY)0moz*kR4a^kwOIE0Eo4Z4pt(^*mSOWne$+ zcF$iH1a*Xc;yVs+@c=3C=fZi>_!lp>Q^h>@qI|8v$fV!2yUB@m7%&f6^2BGN_TL`u zz@vg3Ht}~~f*o8gOLw)g1X>yi^yzaJ=c?;cyW3)^KQIU~XAsDVJskw*{V|%!+w+F8PYkw+AlOL1A4T<)rO^P_} zC0G11-;eKMy@s}iLwLi7^5dmFm;g#5_2WYluRh*)79t^7#7DAbYNg@~K_5%1YV41R zC8ia=8+^EfdH8$rRN^@GzUwmd)?r20*K~?A5Yr!IdTC{I{-d~C#u_pfNKu*Eyn)rI zp^`zu&c&i&H-zh77CBlLTCC!EdxrSJ!Bt5klJ9siUk@kLO$izsYsC06;jg z+sOKa)oQrvi&trNkCQGG-otq*eQ`xXwps(&S6VrHy~5(dwW%XqWO_mN>%;)Q-%Y=9 zfdg=R^^LnEpnOY4MJ7~-s(LTRvdH-a8|X@Vx57f#o4SZB=rvTihn*^3$%1^;&ws3# z{wG*9_Zb0I6l|5(5ZXhhQ-Plp!A9P5q>*!xU0O57^bsrSpU^}UBlZ^BnX)&;F`&ss zhjNq1j30v1*u#r|RnAFyK2OlFqoJi#jh{3BGY`9)AN3 zJIw0dBP95S?N?}<;(Zg%%(Gw?Zdv!clJV6+q`MatI}{?kE33Sy)KR*gYGW$l^c7?D zmZq;Uo2Q%W(?2%;7BbBz^u{~X>?P6K6`_H@c2sA&KriQ-ty|OzSbrn|3Nu#iDwb<| zmh}<%zE*L2((s5A9-Lvc&)|ap$3qn!f^H@yaEyRviC7goqZb^#IGibFb)DgMGm=@d zsx(4#^>-ol!=@Kco<0dQO}o=p!-rX}+m$3SgcG%cDc{&!5Xu@mgUo}R<4~rD5X3#o_5&Q$wVb@6>}L-CU4S0yQJnK z5-f?%s@N*ya&8ZgXK?6IQ#@__$2gm|N%qOSmZOa>xZpd~ODqjCF1hFI70+*bE$z=g z;$+cO|M*f$AxnJc35Z`S>E222EsTcC>N>RkF3gCQOkuP~6j^sRHbllbS#OS(;pBX0 zsd#9@i%v#cRNI#k8ssaZoBFw`&Ye8wDwq4$WWjX26Mu14w@fH;#=Qm)MP~nw$Hb$K zF|rB(TSf&XH`sX6>P@}b!`v!!B%8b@{Z2IdPU8CTBz%&qf=?JQjJ6&(1aH;~nc;#8 zFEasIrI${KNlgr)7rF)c6oUzN~ht*v+2MC z`VEchYaYFeC{(9+rEKyV^gHGMBWGB1GFesyL{O?YfkuV%IZ08V5%F;0JNmW5TN)nB zgx9PvRaS%yN?H(n5z$i4G&FuW!mTgNEII_pxQNKrg|1?YANdKqSbpSpUwob zBmfvmmLurpEj^4O@DP1P{Qdphzl`z4HOV8@YE4ev?{~|aX1L|O>$EjMY^UrJ! zHX;o5R<4ZI@B=c+IZqlBbw#Pj1LlkrCJ~ccco~v3e=)|tL_WrMBGf%NxrSWyYPjA9 z2hV*0zk$)_wkFmdccO5cQ;p^JtDzW^?Vl1zTEM`>Qr$y=5-Fbx`#oc)I}%8FV)iD? zzJ|#EqW6P???J&|6HKa+HEv@;uny?Jo1YaM?=~k$VY9LyM!Ju-H#%Ao;ix=e!D}c= zjJ=>Sp6?hGAHcwEP6;36J!fbIb2$J59}d;wXNNxMMPkXlAolZM4t;(Ep^^;teuKy{ zC(&hF@`r>N&Zk|!(N9e%V?4-15&&=25-dTkKj2<9-4X3Cu1EL_^}&D9{{q@S=-;nH)PbA$1;t51CN5vVyrHXwnMk56Q2cJPPH-OLnR=h{U0Yd;?AY3Y3 zy8o&2f7$E5T+ydOi3(>DfO^qDwe62Ok4shgT+BoY(gEiUYXeB$1ri8Eu}8)EKdy+G zuUmpK`g5Uohv>g4$tlu{Mb`v_WkSK$Z=}^GtOwICo}MC>^3z$&)1q2Z-d-DIE~Z++ zR%|9e7l^_$?RN0OQ_=oSw|h2R%0uxt=dKuU2`0*)#Jixe;TPS0e-iR`@ZNu0mejVi zaTh)te&jS%e*txM*GvM99cQ-u%C)6>+m+#2(~*Y`sjsB2c0s;Qpd%#GY%c?i+5fCt zdtZL<=2zg)3*G@_Y$}q}XrH|me)WcXXG!F2`1PupiK%__W!SW3N-DC*i+m$mj;;|v zZ6ch2#$N(Gl)wmA1$KmwT9#OihV9}vngc?Wl#dv1herYlSzc6t^-*98*4}7r%$Gn^ z*N!v=FTmH7XI+zJC`;i$OG4Hc6>@)CFzX{lcP)`u<_&WjCJNwqzu4vYvMWy5G&<%? z39-~ZLg6X{p6U1)>%95UQ4lU1F!Lo|z+kPS5&nv{z)Lc|u>>C17fx97THGBfD)I!j z&E;@mX&;iNOlJ8IdK%;1UN!)Gw>`;m6py;8bO0fO1liWs-+t+|-x;&P1sqlG3{{lc z8vIyj^+9E_lVv>CV-11xVlQCrJ=sx;^;6ECCLevaD< zY&AMzWraXK23Wso2LGQJbazajAkePAUg)C~wph)ZpMZU4Mc*#0G6U5!JvN>2w&qu92kE1G-UPa) zpI1!-$9<|Vh}In%J=`L?1-CnR$zK9a3F}Zi?-@|MID8P(hG&5;djZ1hMtQk>@`_<0 zP~?%Wg@$9HpOJa8lR8?pSYPD4W+j*B0?`iC<0O7cU90G2tgO&xT&0I}aQ609=WSbg zoOk=xSFvNS#s0C5X&@m#2K5YxFTonnI*zse?#IVU1Zh#njwJk}_ocuJ6ZN8%_nYPz zYLdzViTed4pXGS>)F;x9t?UN6k;fM`P0{qo1UxVxWiUz;?<|K$S+2(CaBWk2j5ZX7 zk)m!5Idwdtzbewpn+^{p%BvUAVsnteW1glRym@*dVpBe5;FaO+J-U4pY$wp->CG!v zBhSG?r5wA?j$TvK!=ht2U9T-#1^Y?I^^UWjxGG@Qn2H3w zj(Xzav=fc)fhW(8{ zXN@;##0N=%8Qq9pUCA-~>Al^mJ;J#4oc)k$9RJZc@04^R(-;TzO+h~iV9-IaDqP|- zOF#q1U7RJ0S$l;ow!0SwrgFgeO;Mr#MO*daD$t5CRb&3Qc2;1{x(scvIg$|9Io`Lr zY?M-?Yd>S7PqrcmG;17b9TYKEN~Eb_EzsKdXxP-FGr)X0=0HXJ>y)@}+hL|kTI$TT z2FwXsfli*6@>z|rRW2`d8lY6lAXy?r>{dEubv4`&adL}y@(I+R6lM|h?4TNl=sv_) znWz{=BLg-1)wtO_6KhT;hqvG}XWs6BImcJhCux`|@E( zsG@(F!~U_q>U)cWD*8@|Y9^?`%mLWpsa|7HOMNYR_+~YYMfP3u@7V3fD>FhC_+ROjD z?iwcj_@jRDLET+1mxfjN-6hR9zf<-sWpXYMHz-0z5^X<3E?FHJacjw;b)ME zHo?``+1xs79KH74qt3byE+?kmJRlF>z5w&eCX|hL>Q~VZO|sNN0_69mhXHNB9AyD5 zp2z3hwIfvPgm>MpyzVaAPMN6ExZ>|4BRb%-hg2&SK5_KVkKYH?XW#nO}?h z=!+#Cz6E(0*Z)w+Vq9dw;aPIKRD4=y56Vz>{`6PDUDZD^`!DpSx>VUbM%@rQg2O0U zAXvw>ykesy00?9WLBS%+b6d;iS>*4k%d-I@J0?TuMYw=^W$UBRzIhA4-b0DkMfMIi zWQ=LS;c=Hp67nO8NPw>Q_OIq2?H;Q&LYM*FU;v`B#naR3ERrcL!t+Yri_zs&pHD*% zET_9yW&$m{GMyk>L^xW2qX9Th=mhcn#}6?XBDjBMaNKPt@d2cX|LVN`?=wC4c-rp| zVJMC7(Myid|4SV3@AUr5km5fiWm<@h_=iixTYVgtm-PQnu**LKwaz!SBntR*0lG6e zS+X5!`RZ88)S9!|#aV*W!jTiNP_}TqHXqg^%w?i#ngCXNKG>4;H5(Sm8PDV^w7&5` z;s?hI%Q0bjv~T&{EzanPvRPp8wBvyV5Mi?BLNsPp_7mGrzdjKsqV zu;%n?$2J^ZSY+gWOE4dvFH;j?ZW@3D*;Z<4%;)M&WSAo(SIwNH0Kfa z6Vc0}9_r(Y2y$u^t*}=<$As}*5kJZtB2EITi80962U+zs;9Q9Twd4Fp+&YZd?C*oM zMFI*xD*MSjIE;Bsq<|jOI)CSB_HnFpsJ|y*^`Ynvffv|he=+R-Krb*Kohaa^`_;rz z@y#rh`XDX%rmD+oy@BL4(MVMPAUSTBess>x8Q}Fjteibvb||5NlS|>XekDl}|Ldp1 z?CK96pg$H`%o36PnK5(cN^l9e6HW5v&?9v6G)ha^=yBJcYs+(^ZZLYNE6TjuyH58A~KSN4uN>qE@}%v0CxEkAzj9J>4pJ1%&g z^swd`HxTMsP~8mdGHXv^=v)<9H*x7aR_r<>Qgn7ZhUKWR$sSUN=8Q zj7hyc?DzlNMj*CZ;H}M7{p%=Womhgp`lGoOt`tZ znVFeAKR^5W`T~K#k&zK=YwM+@B_}7R*4EbP>FJD&3<3gz`T6 zAt9l|!$SiD16^I+rlzL4x;lD#`uzO-*RNk+US4)~b`A{<#l^+#@9#sQPz?=@v$L}` zc}E@q0%D|+yqqp@?esf8K7bAjzz-R4Bx-KHk-<-EM_`CTvwej-jz^P9FGcqjC>sp} zVeKH04p=f_MO;)~rF7yCZ6W;}*M0NIYuF zmQ|6>e$}5{tU3y*z`K_^jU&g|zg$`kzRIxXp25!_5MZGmengb}b?tJn=300G{o%Q| z02R*MrsrN7&N7=t1M1-LKRGC6cD)Vn*VEuxWe#Ggz?gs}Az+~86Zikj|AD%#ofAsc zmuthNjN@)~oLwN}a@Od=4yi9A?*?xpE9&$TxCK!-FlhSThQiKQ8#(z;#TPcTtgreR zJ^Cw_?ivvF#cG=0!eDv@ztq<}=c zWQ$NUALIO@XCp$t34h*BIZhg&iRlX$P&_@*a=5<||ve^#|`d z;B|7HiSr4hbg87`W5lV~Er@;gR34dHsTIt7*^iRWJksBJfH?~%bzOc3-~Nu!2_1U- zWAHO@{Ls{0;}a2RrYPa zY7QU~F1h*-qHbtT`P6d8J-gSCjRTXk*BeRo_p4V~gm>Awh@arV(SJ^>Jqx;Hi#($2 zwrKg2d0@Oi$J77oVHEZD|s zi(R?E0Hf&eNC6KMPz3S_c;xv1DdWWp#DwPVKp$kGM2j%#fJtZTp(yWCAcLeHgxT*@+qZf zZ=?*Y#kE24GK()l0Jcg#?A7U(47tHy)WrY%;g*dgVvI#>NF+kkl(FZsJfRE6Pl>~W z5$GDl=*j?8xxjh49Q)f$G{?&Q%G_r#f4R>DD<(&T5X=B{mCGcR3H|iRvJ0DX%Y^bInr*H%PqPBmZUUo~Yn*>z+ES0!vnjr<#-p;nyIMHDY^QJI- z+I@$856GF zFU(!VZ!iW0K#IuUBYJ>aT@`EwSOcZy4lO4Q!!A*u2`vsoAs; zuP>rVo)*#4vZY4NguX^tMYomYTkOmMH4E(VvJpMKyqArOU+cpgg+a4cvu^`6B|qJ*B?4RMhLhyZeUq9615C|2P&=p}OM z&cosuLV!NIA;QC*K!mYpMdUb%=y@lO{?7SLh~GI8&P|}THDZpK4HK;|?qt$ulwDgw zCPxwi`)A`JD!wnq>qsk^s%z7rjA_zMjs9QwC7@mLm=?z!sFw(jD=`JTSXz95}E_o@F( zsDWD3p)TT~j2dV=>&>$V?2fdmTZmrQUYn;`ftgNWOqOn{>ees3i$}SHVF8c3=c}gm zdw-d`&Rw(GNU@T(A;zSC2^B-l%vSZWFrsfj4pus0R&g?x1UYRY`ZE{aDvv{QB9a|G z#58g%RO#+lDC-zl0x>9y=;8S0(Bbxi7Rw{}8?z;L@u#Z{epA;Vg7qS>DUbwc4AZ`R z2vf^R{j+8UZFl?7;&cWQR)V~(K`nO>Zz$QVkQ`o)`S74Jh1kGk8`U4J2=|HK5YC}S zE*nVlH%j}b8CB^Fr4vP2^oJ4@#y-a1EHzkFt84=z8jna|r2HZT3%7QWhBR=LANwiL zUN9?-NI|wCk z87FAzQ^nv?YCxFpJ5tyWAt5Ij&q#^f16RRr#NouaOXnq+Yn76ysHHx;>`6q{Jk3&P z1yh^kd~IWHq%)?3nPl9{3kSEiZEKR=+PEL`1)*n$58;~AstnJGHhOgqj1G9ZuBYPef59MpJ;C=p@Ur<>zcxP8;x6Gb13N5H%m3# zw-WpM3%YhrZo_rbDE_?^VGsn*^2tuuH6+6i#*U5~OOA}fGMk3Ok~W|9Iev(sS}3DI zsqXhNDa=h(DA}3V#@0rUeE|BEwU~^MUu}V08J>!dv4c{1f_st4;S=4XQNnBlVbh7P z9GmENY?GtjiEz&jKeU{7Gi^8yw_^PQit&(Ka>CvB(a&}V$=Z0xh-~pVt)Sb1 zjmKA5R&)`{eFwqu#r+Af(`Y04K3vHxMfuMa+<^&|eH&~6RN<_!v;x9?j4c+J%vnEDUi_M+y(D4x<_A#g>H;3{q}g$if5$kxrFhbR$K`xB~wY z!~c&705WbY{(sO2tp7Ww_+K)K18BHVgMLz}3wH?n{~;9`D=d`kO2R`$WOJTqCSX-= zzI~5RrB5YJR`FuZP!Yl8(uDfZ$Ivfz3&4U?8>?3|eDJPB(*q%V$hc&10yc~%Wl2_y zvlYza$H{z!S>fs@et^8e2TZY<`m^dUMc`QnZAe&qUcYT;f$|LIliHk`Oj@^n%tyXp z{@}qGg!mK9qelSSR0lBv&Eo^urMv+B6*ZV~aXJmuHE7~eS$f<}GKA_8VxJetK_ib{ zbYNa|Io2kcfAZOfV762|hxW=8Y`#N!3tCP{V^;Bf()R9X84A}t5= zvD-F@!U&-GeL-%@9I?A%?%Uf$s8+F#3nNsz@(>f}-3qyw`e}EYi${<01!&G5BN7@lRoa9xV{(n|- zgiy>Ekei6uP?Q7F_Yy7?raOK=Gr;cbWVw(&3$@k|Coy6hvfYXaM!#1Oti= z>;jj1k;+8=8gwvgkBQe&V)EjuO~v5Qjs#@mSG($8BH7={^!tEHVOLVaAHdZYA1l>B z#EZ`apTa8_J|lwt&xotpw-_`raIb}i+BoBE*GWb{OY#-HGCQc@t{pDCod)z-yG#dKajv)U znsii0S1}UpRt9&&XP5%-PV|=ps&bxMl07e?@P9xc51mVIRl@EO zmprMB%_Qt&6@P;;-ykkQ)2BIbHxCYy;yzCQ8I*nOxkMeD>&e30sy ziX)YA5el-4|JSunWo?QZq8C6{!K`if!zHzu#NKGByDC!q(R2_fUf#gO%s@7_*L3HE zqC_U256s$`}W&?rK ze))E$+S3m)VG5S3BUDCy2nom4Z+@6rDHW;EMvoDW$DM`6Q_cTo66{PG1QmdVGbt^j1bF7)NiP z)%kq#BWlrdAIxW1dV_fp}96L-AZs!J&GoVrUpY?alrf|)myYOwn!!Q6f!w^LH? zHDn#}HX5h(8S6na^^peBha7)C8aYTSMuqr{-;R|j5k@2T*8C@srn>@GTQI(b@L{Th zbJ1(%fQ$_xnK&ER8Q_plGFtu`CX#8nr6Ajk*kzBul4c^OeVI!#iAwUNYW_T>8Wq+v zk2PyFt7Tn(|J;#oNGQ^yRfwzZu>tU+z2ZHocEMWz$jM z*2uBZav50BD6OPBBZA$gNvgL+7C@!{({Gb5ir4~7Q$gJOq?EhHM8A?Gbyw(kpwQ~WyNhBV%a7niTnMH}&=Ph)luo zH>mFPfY5WHhA183WWi`@U_&8SB9(?*XFMPEW)S9z-YaunCMY6onD$hMDo8q$pE`p8 zsMJd$4DEHv29@cKpeSO}aZ#czb!5w6^MY_g93IWHo}GR<=X@ya;g}%3NTitScSoo= z+!B-p;u(H0q4IIJAJ?;(7KW<+cFkD&V|C#kwD78o4UlqIJ)@7W%k{&M#7#+svXsKf z(HLTx$e;#%czInpbsDvKNzfs|)S7=49F9En?CRrU$1puH?_Rb znc*LOzBjK@CT+3tE;K37*rqNu%$hPv+=zQ$r$sxJbZFm#_?=nP9eEowa*od{Fj1V~ zHMe)I3v+`xw&*#{OjAMW_e|N%y?k>sxZ|TfdTcqv|fbW#J~XB{413` z#`H-;znM9BM_6H*F-h!40Zwno>t@qX(h|ZucZa{!zDKc-${Utgt(`?p89##PxEZn_ zAO|vt8giQac=@3(zo!qa!9VRGOpE**$8_2(peG$oT7lP123(gpeWYJg!jH494NRP? znvC7RloAH{Dg22^)WiL~24E0H(%6jT+KtK@{{hi?o2m!C&lul?Oj&^Hd!TVd3VS~!nRxZ-ITzMvE9GaX`CVyz)=XA(Tx;keGM3BCg6MF(t_e4<7O~pEuV9BE_REtT`THi`CF6yFl^rpY5uW(cz2lc&IlXZYVEuugr&#@Mu6VKor{7|Ff0n(Ulq` z1h`~?+~1{0Q#^Fs6+D_|dMV4dKnQ#p8+!+VatKKz3eEM^|NaAB|1*ewY@ zvOHULJL(Yv2a%jORtJiP9fyG4;LD4R(9GH}7Y7`kE!W;sSC-p zIK>JQ@+5t{J7ktUy?0ffse~Lw7tlG zU+ZX*G$B9zT#Hdb7sl<1<2a8SW%1wGoi1-3N)RC_k~f#Kl(6lI%0t_`~fAf9w zyFBrU{IS@>O4`8vdz*q>pb;mSo%j#yrJ-ShG4B|t8ZF!i9bm!a`Iz0B?_L)Ffx+p; zl^D>Zcg@L=wz6p7k2QV9+ecJkkn3CE)8r8+n45JxBpDin(_T0je>U@7n(e!TzP#>{ zmOCZPoA>Ko6eOPO0E5WByegk__`yiD9%eptkv3wIsr6Rj^3`!!2aGzdb~p~XAD~VQ zH+m^f-Qeh|mLcwI)}drRFK~U51u4-jPH*9O!^1d$E3*p|lK_8@tE`{Q6PL1$= zAa*=h3sb|ya;DfHrMY_tUmu7zJz@E~$F5|9=*R4?&6G91m&3lj57ufQgc1i{s;Uqg(dSKo&Xh__`lzmd9X zIE_Fm#wBFcgVlobGerRu42uTeUna-J41gTR0JmDKT~EniL-^+_!w>KH$hmSqus>DVXRGA}!kH99swY zxZzJA2(>TzKK%|M%pF;#33l&h*V~M#`ztDQ;fblSojv&THzV-pWOPRYtBl4IieXki zj>E#;FgMuXaJyLuAgVPYq2-|XSQL@{-u0-o`c8JLdvb60+I*YHA%*Mw+fStmgijX< z-VXY}w;H5*_sMMyIW)mtl&4a@Z4WuL!JZ0X-z8Id`jX@u!+UYJ#?SB3npE$ugn-*D{PVO@g?8yXgR(;^-nQLMQ zVNJLU?T_X5*Qc97Is{r|W4~jXOtG2;O7oY;gPhZh;#p#K{ps89Uaa#7=eVdoFfJET zI|5~1Y%ymqsB*6I&9clQTR-g&yA|{p00S4AP&MJBi=7G^azSK(BwlZz1&0~v+6J;rf-if z&n;W}X(+W#&J0Z`AiO9F z%A*+-iR5LIRk5v$-ipC_rq>0&$dsF*#2Erx9rKCGtMG`-jmo6s*M{pJT^2QT`}S?_tUv)Io)+?KKy%0|PqZZr z`Ib6V*FxhrmVsl;TMWiVJXLDr)%s{~yX?ySsmHm;_RVJ;U zneFl8GJ3J*cX^F6d_5}z`G!GXIG#LEKB1}ayVvbB|5I>pOveUPn1~w0JJ=zPkFdEN zK;`$oF0aJEQQlld5<7HJKVn#CQxnJiq_LR4y~1PhW39;a)3#;}pmi{_i~w^!O`cIg z0j+$_NS(Rkg1&iwM&McOqCGho?g?G>u+d6bqo;@h(+7k$nZp_kv$dvqRF_>_9MQp= zUkZB!RrKKkv$ubGsoNB#nV0@t)pL7+7NK83NL+_HsSu3(GB9Bmd5AtS+o1x@9s>b_ zenwI?^(mnq4>VMwMFS1fQAB9!`ky%@4nJFlD6@xxuyaGi%yYL&2TCgNrr5)|pAI?9+o0o7R9?j;*{Mw5KKbVc5-ie=%;R4foh2Tf^T3!s?NAH1^Qs z=UcG(C@8}T_F@MsRyd`NNj4C;ZiF$0vwsL;bN0aHQ4p<{j$AtZG(JqhWxrL3XGo&8 zjk)gWwTYK`Jp;P_l$+&L;H>_Am1;K8J(X9J`rggi=&0s6xuW>e2C3TbhG1LsXMv31 zL@W)VV}GizwP1pV+6cF~0rI=A)?BM>LeUCLAh<3f>^B?-%L!MCr+n zR5l*?qK}>540qHFcl_keZ9Ah3fSLXmnfFCWreE-r>`u9Vj{bBL(gzai0Z&}V%>q7t zIQW_?&q%SnV)7ME2_5TUw$_liuc@JBGJglgl8p-DEI*0{e5?wCh(u=+-u!-%_MiT# zO2i4CfHS5<;v%wt7yi+I%!wr%p0c<8kK{knG_d-=(7u-cZy4V{j`&rb`qe)^`RcNh zW-lW4zr`S93nlRWwZYr-kRC_*_FoWB{N9_TbXlU0R`(}%Si|w^3~Li~)qE;~TH4i+ z!#5o8tqhfU-G(bvo(0@&rw7Ve&9`f`(|Nx!J!U>J{EmM%JWhLf;pNlYq3ljs9qTs# zGh`zAwt7m0Lh8A|Gp04&e?eaG^V(_K^E&>do}c&}x_hF5fi zuEiDl6hVOVgU)_sDd;bzlZ_d7lpJRSxidVVemXubz9?KY zbc|k>h3o+41@&N-$)it_mgrX|7J!jHhaySjHoB5}u{X`h3h(7}1A3AM9m`G=NO;5hYN5pp5%>vRw)rg3YIaoEceZ>7%L`Ise2w z*MTsq+L*kbHph`p6sMD7wG%RsTHg_#Ny@D{0Wh7!aK45e(BwNv$LERhU`f~=V_2p3 zCCG#NaeFMB{=wr^?(^G8*`ipCX4Xlfc~w3sUI$$6FR0(aJJ0OVtOpvlK#S@^q+hoJ zCUaK6FPBo(fmuJJ`XhEMHW(9bO&3v8ErI5z zo!_aEgfHU=x-{CdZ6P%_swqb16?_d_ZHV!0}&r+uS=rsO3G3u zKCMn2jpqg{^)6H>@~zlx!OU}a#4z?=X@hRZp0i1g$piJQIY@Y5@) zLzCoB<1l?rz_-0eSTDLYL*ov&Y={%ip+@!Vy{Tqg^N4tDjp+Ib;=8*YM59w~?4 z9fi)>RP*aywyW7YYGuEmwolfYT#pDG44+RNyIJQoKfQTP<0uWHXb(q{UG7z@>j0}1 z>?!lU2DPp=Iw$W;p6>hZCyIh~ECt2uLVSa!DYsnsrI`7`BgPp_ClxJ!Ok)ZA`O0eq zk}c_td?ni=fMv_@Is=y`au6DsZKXu4&%m*$(N@eYq1c7T>u>rfJy{vnN{3rT-Rni6BOR96wo{2>^ATdbGc-Cn}KWn3oLKp+jc= z29DREAaGbkF>u&L#AbWv=EOeiBH94Jp{nlEuq^j$-F02`j%U*AE0*9Q-L$qqoG6;VrXB+*8O&I$^w<W!zab?&Qm`Tu-sYiee8Pq=E*?0PSB?-0CC*KJl*_5 zqi~5!%rVh|=y)fR%D0t*t6o8^aK+}u2Dtd*P9!zU&VS-Fqe+Y5;-l{<$+q6LVJAx8 z5*d{{hngbB!MzHL%#$H`M;cH@B)R;eF?P!_U$r>fLM<^Fku22XdsxUk5qHCHqcm38 z@RU=5>y6ay{%@3no_>@fFkxKmt6BlkjW+o`fR~p{6k9=-ds!PFP1N0U?6XKZkFmAChxXg%4*+42|l^#9|aUUr;Gg&-yq3eH#V8>S%&{B(_ z-ZoV^4J=@HePjN{o6qqD{0&FKMi5uUItNKaLEi=7!(fLmd#BltRI@KilvF`&u3+)0 z=YkHL-I`FKX8D$8n-P(F*aG_$ZauF%aKDv-{-(kxiE8#75p8+DI85r!41q28+nWEo zFEe(Qc2YhoYtJ0LoGLS_(5T8e2J7k_rCCNSb(S1l(U8pxjY6qx^Yj800}d^CY- z8+RE~@dOGU0@|29wB2AJ%P5&4&aYg}|$<-Mc0TZdoVaktj+~)So zj_f7X?)XQfj>g5F<`d~?VGQ3R&@-;GeL;eCEF6XTx&j_dB`?&JwwoAG83UakuxE6p zsZHen$7e;JKP#_5*c)8v@-JjhQ5HR^kv??@aLhVF>EemePv1lL=8kdHzcRFhQpRl} zcFdrpece*QYGHR3NSA#x!XooEVEXsMc(H0a{C!{&FErHFC#Aj`h`Hmyx_Eg*WA95y z_9?q+HttUcP(0`>WsxY@0R_*lXt^XXPURuwxA$$7sFVkA4hzpsWN(DMA0r>;{Wlso zeC5mPLE>ySm<1L>6B4+j+};0^-6!awViNZg_S-E2lYv7)-g6j*_^!t!ySAaDz4Pq( zFYT`_NB}_<61wsUlHJy8&m5&>ai3p*1agsqB3;`6>;4&cv6Cu&MLy2E)l_RaJtg%3tDku>u=IG9(Y9J23yzx zE=BL-c>DYRiUCrSf4@6`3+aYF0~C(A_~{XFg~)(bhX>U@68*2Nuhx|Ihr3jV?>x8U z&|ci$=cRtW4+?b(D2ly*NJ~)D_H@O$j$yYymNuFH`+VK&>pYHb{sD8#?EwQ??dufU zv}=2WYT1}7MU9_Np-DLv7Es9kH-NGSjIC`)zxH`aPQ8yf-|t>=FE7t`@~081l#i6VC=-dA{ z@1Y?=^c1=21Z9p@0&^R{YFxArQ^@VW{8l911Fh?PJ@mG+&Hsz`M`7t>tpIW~%}*?V zBH#FD$vaBO!W2r=fc59WxKga{<}ooxu*BdA?;s(l`u(GL2)a3DU@iuPpLQHdV=zheqMaws6o8JT`%m_eI0KLhD?t>K2yBr9`mVU&ZkfLuz z8~JUcC^0*1E3o;{)1KcL6r_;~U~o%Vv%Vv5O86%t8E>@1_sGN}K0lZ-0FzYxTHbGiv3C!+0aXwR|96#ANM(B;+%O z6s#bf@H%)vde8(p63}mi03xL|P~sr!L7qT>>;#wgqAJ z6IugF+BSc^0vfztA~Uezaav~D;)wrIdF|~=Vo*l>i&nOGa8(?!i>G*+0beDRl#&<> zM_Zhb`B-t?NRnaL22d3vdw5nW4}Y5&2J4(M&sWp=`%;JteGV-Bx{S|o6T@hp9 zhamurFNEkcJz?)TK7E-E=0*Zn%?>yKUTe~PXxB^yA)0DvU>|DVE(d{ZGMgB_^aJoV zBMZ8=5$)^8u(S8g-Od5z6s|S4g+m+rgYRroNzliW-Z=JPC>B=<0606K3e;9W7KSOv z*W0Ms{9RKw9^f*h?5mORkYzgx+?eWCMg$X0CqXerO>VU;h%Pm>qypN9q!}Rm^v!=M zejG7%br$~t(~~`(5Zp)rc9J&OqWki>+kX@Ytb9~Nx_`G9o@f4NA@~fbZdBy+aB;;A z7M(VrtKXICRWSIIwB_3~uO%^2(&48>qD}>zaNeC(A*=k*(Gy)&ItuE@9^Jx*QbbQw zJu_qs?@+@%qAWuS8N}{}%Ku$j=5JVyiN^o8RcrwDRmI;WE~pm|U*&7B*Q19{`TQt8iibQUb8h zyFH489fovd+vD{pT=+sKu!DTltIRxv@#jYaiCx)ubHA#kNBwkT-d>qjFUOK5|_QJ7s^D1!eojW?dCy?Z?UCu_7w6yDJIqr+K$bZ(B zo?7q`c(A&av1YkcqlDQ{SlnFiFCn6Jv}z6wvGlKZXpxsCG_F>xhq!|R3CMQZavtA_-A!rwmC^ZYaz zQh}q#rA1OWoH=fMk3Mt5G$<%NHCQhs_VLQlK+R?HC{AjucJr5XDXR^mB&c*MZm>JD zEa&nwV4HA=6;k^n#cTGlv_D^z+kbA4T^-i*9_9_9TvhZbk_#9%Bzw^?m$iYFBXAH7 z_xvH`1x8U(+9y&ciLyhu-gC5lYVQ>GM-vEq_!`@`_x5_{BZsa$hH+`PDPNJrJUTQO znD5bUHkgq7UW4jux3k5<@#C6L{hAvMy*cmbJKI;AJDPr6{9+K%!p7X4OOS3l)C@uY z^{99q!_oP|Z7Ng^(PyarmcB|raZnX&CKuOOIV@{Q5FFMXEG{hzv42<*TJ+au-!WQMHf+FdQc!rQoMM=TJ zf(BI}yQ%5c^kXQhp_)1eu3@SzY6(fVbXAQV%LV{UsI~A-3W3aB2iA6PG*v7~3bw8D z&lkn}d1LJ=4{9+4`O#ADPrR8^VC{snVDhW{L z{u&6Z^ z6_(zx<`(wWl__O*8Ry27h>}W2$iVW(;A-94Y7~mo{K!9Q)IjMKv8)ntfTS^yh9&=? zq+685+RqjB;F8+f{CsYx6q`)}R8kFpOH7)t?}_UJlLmZaUE>-^P$=EDyya zI-UMB{hmeUU9H_*x@t+|=*jW_tQCu$Y&6`&*~rMpIwL01J99iH=AcJd2)#*%qJ!9a zH8jRPIzIRpIE9bEPHVJi-2_ZFNbRU|+NRqIb&akIg1^1fPI||>hM7v@IuuP4TQqVv zjHPrUpoO!yVY8fq4`sRJlS8dT|!SZixowjrEd-ahMxm~wwJH2TI1xn;T*8CfYz9AbjI;cZLu8nj4_k$FEpA(eX}?W(7C;ULZJ|#8u8X@qn7=+w+}pw=GGQ zT3CntQZ_)D;flf1wUkpeTJTqdsAjU?4@n zEYSC&Zcy^oT-55MO}ysIB>^9)D;%*$A|_D3(b^Srdn;nS+T+;G(6PDlsFSBQa=h@S zmnbu-Ag7$u!t&-+5_v@WUmou6$m=218nOn{Lcr8^G-$I@)W+qzc;T`QK0}-mj!G{nVpGDE`Vb@4rn3B^Dn#zf#WO_0n(PTXE~7&eto^Ch112 zothZ@miP0^IAXIGFMfC$SjZ}qo}7X1LiB7`f0p2vDsgqN3chAb%zwguCAF*e$G-4I za3pxwC{`|L{c!;`bYZ96IbM5@5C;=uEdQe`~EBEa4oo)*iKkzxp=|9_it{I$85e#+A?;|m6= zPHD@QWQJJS*3?JPvC+|WeZG4N%Qgl(}Jry_82x-+Zwr6c_8Nc6ahc*qD3L5$NU&6yOKY$J-|xraTBvpN!mf z(w}xyi6+W9ZK>9w3pml)kqG3G`D?Lf7A&I(7z7ye#0wuZ!tia&(%ZiUjhodekYhK6 zVDlmvuPqmWfPqgpjrx|_*#j#dX%|4k_dMS3jEwF6R^yhqguU1ySepEaDm2H|2t_Ti zae6Osgz{%h{0^bS#ogWAso4xmLqtyB{RJGfT3Os$bB=wOB@5aC^v||ljJ}J)!gU;hWvcKjRO|^3-418PQjLf3MHT6szMV&5r89jn4E9Ak4yh}AQtkY> z!_1J6#m}0)7+|G&?m2T`KTfkt@Lm*efpq*txm4Ha_92}R2gs*!J1Km96y z#h5hAd?!xo%ya^=c8PZQWFjh6=f8*(eTN`(tJX-v(*&uVRcY$Go#$nEzE+_NY9^Tf zfD!K`va-1E!3T!HJ4uSx}^)_2C+G>OFya?L^14>U;RNoQ4Q;4|xdigb%=1p}* z;4axg&ljn5S)Nkf5?;Q7#@|YSU+0UkJYKjPe1qljgXv`|rgX2LX@$WKxTCOs>^~vH z8J{WfD}k&RO*dmLElSKyQ?iv-W7~HnBrX^jJz$Mtm;Qg_9JlkM$Qrl>@%8pM==D&q zd1`2ty`-%viL<@_ley!zxx*yOqwu2@H3L&HJpeGFDI6($tiP&SHwFVcdkYnIA+>Sd z&a2f8THs`%M7`;O|8Q5DR%G@izZK%eo9`r?WKcHG?%y*!-7vxr)8hCBTl)&r2c({e zLWVx^7v>^D9-Gax5IAm-9foK70grUrr0T@!3;P(AeFHoIOhp#|3m%Ad)A#*~Xs>R1 z1>Cz$2cc^Pe2~GX6={ha9?)f0EEth&GE}9PW3{$?rQ>nZ-}uvcC`j~4g0|GzyM~l6 zTTg$Uc&;@64WBqHGjb(G6$nn zzIHP6Vqk|KA(x%w?V%cMyW_0&?P{?@HRn=8EKF*&V2sW;?&8$}cr0q0A)<<+g}=pr zICup`n_PDL{)Liai=2;_y!PBuE#ErxM7?erAtYZxNVPeyB>F>hT%~;*RxA)_lPF>$ zypzf_6q0UwlIV^QqPv>P;nLgd(i1F-9l8CELtqy`6jVd!Jlga+N%xUAzn{cX1FLjG z909dS6of7qm;B!Fe~f|ryLrL<(2~6z98cZn1ab2qh+nXdE$#g&*>|nLNDRwK^Q_j0 zwXdT1?1)pdvt}@}UMZJrs_26rC_3b)F|8&$%&8COYiWP*&Z)dD76_O03sSwPK)Q|P za8us9PPdy(O0^TBK)+*by!tGrVd~VwO6s-~E@&>E$tw}Gzuuk*W`{^?(CygT;F!cyo% z3c~fTZB)x2WMqfiC}f!0dgzNwE3nhHU!b~cr#?+#=59&+0LX{K4m?$y;QiDQ_F&Z} zr92--U->$iHt&54JtDNA8DUU^l@c)nN%fE!VVda?%Y&0*>#cwkLg?1kCH`g4b9e7a zbN*kqSth%uYI8tJ34qt#?I1;AA+PPe(fP4OTYP7t6lH=)?VvebS&Lju{7ZN2i` z#f4%7S|jCHi|}StVtH5?h~|k%X}!^NGr5Wub;ROTJ@bj(F_O#2%0RLZx8*Z%88a%ppM|y^v#)|+G&^91>`&KKNi=g?ilU#G zmMCtgrajDPzLiYYIX3ym(#m1si18`6!w1cCw0XE4yAL~MJ1*A9~{~@Y_L+&eU zWDrj71&B8Y;e@RFUKlvJl=>T^`6j4X#B<)OVi`?%-R2Nh1PoIq|HIS+uk&&MX{wch zW_W!a!8{15E23xx(r(ND{hHjos?op09T=*&{tNngm{S}MqQ6f@tn0-usU|%}$8;-i zC^uRH_U*`)cj?f%p*hik$ZJjK1vQX4e-ty?;p0oRC=vFB9QjtEq>dSU&guYUK$5Lu z1u;5O|5_k3SNhWBz6O)YdCyH&r1+yv*bOK>3VZWC(`W9+|3A$!z##{;);N&_r_3O9 zOW^pv>Mf1#WRGs%15~|i!x}&DNV5$i*_$pJrPB>(2sH1*0mGdpv)9>1*|#wj9sCTmo#Y#s4qX-a4wS==m2-2(B%~t;HRRyR;N{D{jTzA$TYSinqbt zo#IY_-~~!4P~3t$gyN;pn|^=4b?>|Ht-Id)Ju_QopXkx3jhq%i zow^GC>GvCV`a#sqk<@E1UuIC5S1iS|@lNNs98v52iFU*5n|P%qX86;5P9ID9D=pdd zcSacT=OS;DEqt=+Y&=%tex{r_dM>eUSxs>{J7U_;3i6e$2TusQhXQ{8+C# zb&&2ARxu}`30zfM5@nlRv&X4^&=Vw50Q-J`qcITGzti9v-ez!v56NY-LnA z)S1%oK`3KvEG`#Tl5-5w%Aq1!l^<3rM8dK7Ew*&7Sj6VCB11L8T7`Q=hShxjD3WNLh7 zfP4|~t2@Pwy__zcOic4~JGMCHLJO|35G_57oBlv8*U?f2<3;g z!QAo_UthqmZDQwBiujCi$7u^1SMWHf{?nJ%39~Zi{9Iejs^58XB9WH=I-}#)AI^Z^ z7dlA~2P)QW6$6$u6+f68iGp*WfZBux;pCh`eMrB_XYu6ykAhrd8iu~cMH?;Y8?z71 ziEOR(d?gdJP^nap*Y8YzM9g`-E$o@QfcLT4Wh?5Rw=t6i4c;x~O;jur5-c^NWc2*6 znu*s&=a>f<2gzezUCg>y_s|rwUH7~B?+>Ai!I8_ulWOHrOZ@o z#X>Ol?>i#igsN==@=Fa*9vM{sj8@glJH|xa7!tVSZ?{2dKoXAaBNrU5S=T%tddCPo za=t$A`&Za}nPN?{p5&o^`e@Y11ecQyi#T9x@HP15n*rx=CV2+UOhasR)Lr{iVkm*+>ZfhwHu3p7e!W)Jui5cl_R~C)Wpxa(ZyIBw z=6RxSKqQs*Uke^F9a0IEmuq2Bd*vwC+k3p?irT_U6Lr2kj=>RwztyM3uO^_btE;Lj zz*Sks+WR+Mc|ibgyZOZ*y}22~^4i)>)mH1(?9&hbXOdYVV2zNYFVD zL$`8IE^3sQ9qpmTZWm$eLb%V?ijl+SC+lFL&fbTYY~k}vX)Y@>BE5y?WvL-GxN?Ev zKI{)VGP@^P$Q${{0SO<^+%_i6Ta+2;yO;8Y%lZ0(vuFZLw!ifW+~0_Td&_fHMp`p9 zYB`Tt>&o#lc|~mYS^YzW!B)!syo}jmU?ZUM`A`uwXo=Dbx=)Eu*I>*aKx5%U7(N&I zev=38rCsR53>kRnlOl2c4yajA&J+VDw>>?avC?IJQOD_dlgITy0lToaJeLde>H#1> zFQ`;d)JQu4FnqazZEd^zRBJ7m_E(1_S}CZK&kV4{p-W1W5Nc>*hW_N77BcWz)j%?b ztdR~*#Ru~E-hJGc+>YT|Q*xGIZVx6$%3WJK!nMI2R1$wP6EGS&2d*gbjvz1p#_2k( z3v`;6>nCrs;$Hjv+HA*JwZLGmDBmta47`Y1QFBlV#Ct8cEn1Y`t#-D#7J{>azr!(vnKl@dgbchx31x7pRsE!+x-iq^p)n(slF(KRnk?$wZf-@i}{g7Jjezf*AL+hZ_X(Wrs zGY5V2lBIttFB{^6yk3G=McAXXYXe%4m$EH@J2}l=`#~c3`nvFxWEDeXZS{~n08S#N z{}5B6wKU_i{9HBNB#cL*faQ*X9eD(DOTbq|LV3G+}q zr%qdLL6|Wf(m(b_#&LK!I}ihpBL0dLiXmES^==pL@ghIzcttpek3g>h!AupX5;0zN zdVN%EV9&o|^{@i+A@+jq-1N5)zdK2_*T{m7Cgn!e7)z&pYYd0=u;k+^qj$V};dca? znGqrZ1%s@{xQByP_k&c>P3Th=Pvquv=>(EvE)Yycf8iJ3kKZ}v)v3oEu2IE0Wx%&K zD8+BfYad4MQ$_M>79s4DFel27Sp`s_=lz^7nvt-95Chw-FSb}yV}`%LEh^{kqkUqO z7WqcuZ|*BuaA(fL87be?3$QyAxSj$0<$as}tUJK_{X83Z`MhrVkrEz{5W-z+quT?p zpx0?5)mZ9TzzOfMYOwPVK-7^@s8gh{Y*1<8sDx`iRDw9_>>E@T_B(94C#alkiuYK9 zs54~#?~gnhbg|I>?FoJV=L=THi>3eHvXY1vK8AR&I#GQrLS73bw3u#l;C_rXc!OI} zf!+CJ5N|EyZ}gO~{b!cE#DpOg@{5Nb8Oql=0!^!~#vj8`Ch|Kz-@oajOnOXnCSoyx zK{(1p+DB3Rv#Z~pfKYZdhw>eQfUhMU=%AnBVwl~`C$F(F>^s{UK>@aZAF!lkl{erb zW4wX)o7MF6Ys>`o+;639Sw2z|Q6oPfnGZ*UAC?2fjI{K}aFG(d;8!{M`?hVs-&432 zKV&w%lBY_OvqWlI8u#OYms9;Q4Fimb6e>E)`Y67W>sR=&jU9m-{RF#6_>oDq*gjm~ zkX6{-@MyJ?0OnYGI8l$W7DGKe?=}plHl`|YVuG0d(iHYXn38@$V*DlPU770Hy=wjw zsRAg^2sPQyC%t7jL2YGu=d4?}3ZxjG(m=I~8{V&sLHEMiNkfhV+?yWMFc~ml3|Y@7 zo$<$e5Fk8)<~jZVNVQUfcrndw=OCYx2_&s6&@{#6!~Hn`!~~xXSz^P!&JIxUTg{xU9if7nDFrCc z!<3E?r7{$tjMrr$BsUVBmll?Lwr*VcrhM4Ac9&>D=9g||ZY?o*!^xD}zEJ!x5orm{ z1mbZaQ@V1;2?wEsDSj>75bUVU<5HwGx#Q;?4#%shu4KQddaR&rbj64L1yEib;+#5? z8|sD20WN=GSEx?!GeS&?ZB@Aw0FoIEF$vWm?O3x==R|(To>j5pLs63|`|nr-ci|CpmfJv6R_0 z@t;1foe0HU|l4qqX<#-DSRB^0a&whT2OPb?z7u-%%ff+ma^fc#?KXgt^vK zw(9k=E!GTe+*y+jt$nM<58ld$d?ZqyT$eMIoA!U9|JeZ0_I9{FeU}%Co^!V1hmcR> zHyAf}Mzf>zo86_4JFN13+Fm5=?2;PzS?n-tc11(d6=3SBVgmnctR^crEv+_=QL!98 z8ysz?*kL?4_m2A07zVY**^rYYcR9O+O~8fDeb4YYssUo@4L3?#@S4>fGMLq#ztytq zh=mzvgU-k!OBUWj5VIK&ft1aLM?hk7G-C5yFxB@PV-if;B5rC_GA(k>Kef6q-%^?j zVLk_2-0>VpzT8z(QxUQ1y~1+h!@N-q7om4-c8J*A2zjx7bZV?=^~N>rym13ys2xXY zxvJpz^Ic_efhPZ6C(RO9HsBh4QB0KpTur76$$3xE=3hNLg^RUj)ewhnF=LQ{v3neE z@bYCovqbyJZMCzPzBr-#W_veN=KNegiPi>JGLeeswL}8m@)af{gjlSU_PaRKq7L{ zP8>f_>Navf{F9P+{~ATNopPBzKG_T#sSA2g{&@?m><z zZSPDKzZRM5y%e{4775eA%cwU-7-d?EZUJ4_QTpZJzlBGX458I;WDEe-Sh&j|{e~P5 z?8s*PB&GwP)t9G1MG}MD=oAu(2VRsA@w^aov|kOAwF^!D6whEh6J9r>B{}aCEYB*7 zXH^lU;c!(DZgne-Ti;!$tL(u4qAo~~&2~&W|6vy7j&2$7t7ux#cNnyk=em_ts%L`? zZ&Ugn`V#2{Z7h|3P8?XG|4gYgPLjxZwUv?19}mWDTN86Cn@GCSKk# zV!8O_g)98JyPVcI0vpC`LfC6*`HE7gHy3&Mc7I`U&;x;CJJ55XZpeo;Pv-m8M@i&x z-yW&i8>yulNSF!P6N^iGg26xAAbgc8_24P1SLL z8l9<@)jKl36wGVzksTlB!M)wYV{2FRc%KV$#iDq~;G-=G(e6YeVNO3L1Q_;LxSZjte3y{Q&`KDXe41ah{gD5#ipMB8F}en4-%#K#9_P zyh{ZAAHk;l^r#9}??oaCy!>|GvW;&2(W%9#^1G*y$Zggg4VkU*5Hq>}qOr?fnnKSs|;X!haX+29AV!Hq=)R?Vh^< zk|xDX!+`u{o9(@j~qvba&;KPoH#4_di5Y+ZUJ{#EQc|9v?`OZE`5e zy67}mGA;&na~tsD6J<0#RYU?_ST`QDB%7|{(gtN`2*YfaE{(K*Klu%iH#uSP<}ixf z4;60lnv8l}eb!r?|yBFbQup!iCUIvkg;q3l%esmiyKfNm^al=%S6 zT=N?2gio6_?xJ9E?+W+}n#u@AM60c&t%OMUxus5`<-mzl#kn`7RpED6uzP>pA6#lr zbPYSv*KwJ5H*=?I3zFpQv4Q_Mt(Xq@Nuc$UIxV1kN8 zDeHDOi^iG^3ki#t&vu*^H&)Rr#NH=V_$wx)kAEaTR3#yg@$|xs-Ot6fYGiE3kjzYP z#vd`4cs!(AmW@n&Q1>ZclK=fg-k4i8XF8@0!&fAX;QH7|q_%}SSHYp<=3!;6VIn{6 z*TAiJAqIST2WL5+e67Y4l3R$QoF&#y2rpJoJ^qeL9A2BK-WDH*G%r&C^0<_&QzWx7 z%bu%rYL2e6o~t%-bYSS}a2Sj}`BN&qiGu}S7#4kbufAz#);m!Hka#AfJdSR&Dx-(B z!HtPm?|y>W@yZ+zEagpsN9c2XTH*Omyo8#+mluDFxcw6M2rHr-6cw``K&?&qTCTg& zV~2j=^Wy5Ib@xqzl=@%%!}?US>#SZF%xl`l^=5l>?X8sO$53Qq-17}MIC~ww zi{>nX2doKMql>0Jdo=3kw$3Iviv|LfBRnh!8B^jHl3k)y%3j*Ia06jsp3nvxIpa1> z=q-jNb1&w1~S zn*ZM#kcS8v&HnMK_SP_NXK=H6Z@=r8=qe0*u5g~8KsJfSv+e`p`V3|lo zdT~&?5G&iA)_!1I&wBo`T#_6TFR`=3Rp-lopgPc`u9yEKVxleaLJ?+P)iBsB2v5fo zkTgscoQwJ^M+$@yw3RQ*gl}+VbFI z0Xd4sp3G))B{qP_S7R4AEFDZSWbVO_TCLyQm4jU2Ts>=zd3a4E+82rDP`ntqYPH?xoT03QiQ zyJIwhGcip-Ah|j1Z=`NPAdeuIZ|~?>l>aQnVatXxHH7B_wb~K3s3uq#Mu*Lv{+m@8 zCbd?vogq=BBn*=-0`9{kqr*>GNg+J%v5-cALvpiDEf*hH_eYm<@-NX!K%96d2RhkY z$-j#YH~mw;H5SL(3>-1m0>wq1C6lt4Wo(#5k3jvH5i}d@fsMj@SfYxS@`c@IhcEDc zByEC%EG|>;q+0bqyMRO9kPaNRO$uYhdR&=pgj_GG$)IMd^DcF6n)LE_1%vKK#Pe3S z+;mZ*n^*j^jhf8A?dS>b@oK@Z(}V`|CUm8&s)zJfG^1RNS6`NzCDqOG!EBf$GMx16LY^5`1_u&#m!3W$!D>%+`I>%c-vR!;P0DVt ziri)YTr%`4pAm4X9Ow;#l#BSj7w|X{hp*K^@ZAqh0GG>(mK9q&T=h+{BsTaU%NsiB zv`Z4p*SN{z`0j4#mfS|84>V+K;(Bj_49v7j84!Kb3GVzyhkU!%&$`}*i!w%LZ= z*%|40;!#MYq=la+cp@^H#6WoPeT4u+Td?lm3=Gi%YlaoG^-#S;DZ~1purp9_-)*z< zXi0y`S0u~E?9VU2f(-)|Yzfpk+n7LI}TOUvev&7dIpS?7=DDv~(J z!$?7tmk?P(n;J=TiWE*g2@$4&0VP%?YZrT0$lEVA7VOV ziMS{FDE=JTvxWBn*ECWZ4yF>9#LoVLiltmHiBY_bl{4#kqRRs{nD-V+nmn9PoE-eBH}3udtTbX!!rbEjk@Qr?4O#7dcc zD+3ZO`#LF-Mfk<^sY9Y_NBF@nQccw*WN`Oec3bcP*SQ9XtIfduVnaDQ*fyznSd>dq zkrW>ghRCx9o7dpNA2L$Aw&wNf<{#vYu!`{fq1#mEYQ}~%*f7o>exMKbF9P0NF$o<{INnvg}hI3p6<886Puk&X8#mgNEJB-_+R6_;45B2>) z%j9cS+t^5~DB1z|zLEzYr94cw*Ja=T)hYl3$`0EI6pmD%Q0CPwvhQG&jT^{t3-9ApxuKBq zNQp8vs)K^pf|u?9sM$0&FZwm68`@UlhM4XuBYvE?)y_QuD%dqt-a97h*KX^N-OrOs zkRH|}k4pbW19DkXl@RU5_S{j4ng>M5r7KJMw)q(Xx-NwzN?~xHyTkG!Oxjno1a(vD zY2bfmf@k3V+I*o4$rOragl4xIo+fqQh@+Lfp<(7jkQ5RWqQa>bvuh4=+FeLJVJ7{H> zBBPp5B!lmEX65Q=Sat?q&Ad}RL0Q;8D#9en>h>}I4Ag5o{F0Fd$-MBMc#x%wHBCmU zj7Kh%3>mnq1%2KnaY3>WAhNDaGAHexG?1un<@naGL0|Xb92XT*wg!25x>rBC>R1E7 zjV}_kf4NX)gf3{~APQ5S_@Q&9&YbD$d>FQT@o~N8s4bJ!(!Pj=@k6-BPN3Y;@^n6qm}w)A1`1bZ6}_LzLo~t z^D^jSz)!DyhHB>2l(B*G(R6cVhXN_$hzd^;6b-x+d zV-u@obybLdY8GiA%ZzmfxT(qpEB4XkMN_F@DIBT!|xf2HdTek7w4eN_jr2n6x=H*J_*G z=$SaL`fuI*eQAeKswim@X<@whQ)_Pdy(2t;n8I@Gy-0U$6IrD+>J08lj8=x(k9{*e zMiqV4s{G*JLuhx7PEW!$X49($%nb=p127 z@Vjyaq+aX^tBF2oS@ODG`gXrWk4>0Rd@S4?Y!nH{45B6t&3>{KhFkv`0fTFwS-nHFlOA4 zjtGe)QkL%fjB2!Ry$P}hIIcPho}>GMrg{AYcDZqxsf%QS;+u0H6T=vHI^|mJzu?iV z$srpBu{^|3_oa@BB@xCf5$O`}hhD5R5`hyx{^=t{C(#Ihh#%3KGQu2M^EXonf;#(_ zE-xtcGi9B*l8`7)7A=fZ7Bdm;%Q>+9^Y+w!o1M&9Lr8%xS1AD%PLS*MeUod5O@@E@l8QG`JcLaGh zm1IsHJQT18KnaBU-|cxC*eIOZFor2Yq&p4J`CNwX=Exs~&(Ly8!()Yi`1WI>lze!1 zrZ%6YRP^%Cxd!VSw8p5AXRl;|@*Wr@Pj5m_|Gu+R`aYxSOSp=YjDx9r_Pn4V?*IMAQHTn`PkG`ie8<+>ld$ZrHsaG+sn4F?5q631 z{bwq56kU-tPMsWhs!WIcC(*YU`Cpt5+o3qBcwRn2y6f}6i=PKNK5ObX=^Ytt;4mr- zUcXVKS62{7*1#HbLFK3G5|L-n6v17SZ~8dP zFySMFF~)h~vcNANi%Hcl8=!Uvf!>D##N z#H{H~Irk%mM6gqi>qG9Z^4Ea{$&<1}`qK;Nltwgb^5Uo=mqz(^6E>(IQGoN9v!dOi zaPSN#{mnn##7u@#r&fHzGR8sF}qBprzq-x;(`C zuw8{J8iH>iw6{5q1+k~FXfzVUvW(l9i2ePG^VEQ??;rP1{wMdQ1N>cjuTk9p8~`YG zB6uy!xg%39$KOiXJarBNE~wJ2PmEYh;~xYy(vl67zj?kWGJ@>SECoE{UwLAUAH|g0 zSAu)@6;#PLy<3^_tV^iAFE5fJhl%{lReh^W6{}#5$xPdD$Gd?+he~ZJUCAKdj<}8> z3=jVxbdOZQo>G}x(Hy)ZdpFH1xOBA9Er3hceXeoRV5Ls$aIx+F9YaU#whL)`|36v$1dB}2%%C7v*v3A7d9tzzeIHP1#35x5X> zyokoW<#2qiMeiYkzeB5M8@2L_eo2JK_$Z(pFYN(gEO)ntw%ln+4Q9ikNEW2Yil2Wb z;hic-hsGa_(mooE8J(d904m_TxQCM6S1z;rouL#{d9PL#4YE}WyL=S{2kzQgQYVBy zLy2g<-Po(EP+Xsty_HB!oLY`Dxm!ucK>6Y-R&(Q&YNS@34)C1|(z&bRHBD>AM;_Xv68D9 z4rDzzEj%2bs??D^@B1VoKYIKrygvt zD?ij0A+DtFW!1TjKBNdl0=6`eO3KH@&|mU@FLupf1(?k4X=t$2ZF@Iyd)EiyGioY5 znbI?<^b&nCjAK<;`(?$wL!9qW?Hq))udedz?KNtVi_;N?Vbd;}6W0$n1<>N;q1s=F zjy&nf7<#`qyk|3Y^&h&Mq~>Sd_`wFw8jFtg7;G{+__2=XKWPgqdR)FesUIlB|C60T z&k7deHP+-vS>*{mNtpp1chD!Ma=@!%m5FC5dy;I=X?F9PT;1(%4Sk5s$@4yF5%?tH ztaYi$4M`uR=dT+~|CJYh9__Eq1tyc-LwS<_z`jehNDH}go5R)F^Nojej{}thd4YpD zhMSS$W{<%V9{p;*qpR%}?-O6OI2J%oJ;>n&g^0l6L_ED=+O|ER9G!iEsax*2gZQl7 z3mrY%{EPZ5Z(`Ht^cZ;4Zn=zK7B$4TBRNY~**de?OPX-6$gqP8@*QK+!1RALm^C+9 z{w95~oVYXgeYyGW$Bs7sM%5EB8(scTG|;Pcl9zd6WdbG7OOp7UHP3;%>RsTBOSXK7 zhyWQv4Vo{8Pf57D{&kNZdk+^PQPmV~^c{#t2Kt(h9<@{K%i6cZJ&FUTikkUas%<%` z(3yP5;h59+9-lngdjk!x5gW9xh72C^e#-_7zAqi3`TkTg-^cua8i2gO3|;?`PS#2#FelZ6Mu>EFy)xx(`SYGy`QwaD-pIri1XMI-`kCED`qMp-cR@`V;6N69ZGeBtNr~7}{$t=Vw};bP*w{)HfQ%WK4J8EHH6{i#KbSdL2%Ww5 z=MPV9G}=Z-OvK**<7=N4v1CU43bI=bu5Rc0h6-H%OHlJoOr{**y6rn*LS!>Pz4FCK z8*m|@Bt-%5C#304zidY0)8sA@r0c4wBSQOu-abvIg1vPvoMkgZ@56<5`SW|)0@h?sr{XkfjtG_Zj z@GdIEf7`V)64C}aOU`Vs}URBis0I|`a2!|Q!J5ivyXlxbiMAe z*Ej@ZdW^J^YVxE2CuT}_sz-$ytNF*_5eooy6KcSyH(}j{!r|iI%m+xb_ezMyn?5QrhtR3{iWlel!|B(wOUag zbH(k%V|+7f%zJXjJ|^GYVUms%!*l94sIZ(mg_ND??VqS87^t05mjv3Vty4Sw6gbzgE=*mLq=!APla2FCtjW?GqrtVb{c87ZykAyuNB^%U|2XQ zLo0tyFZE$4VpgjKC;DzIvU!ywADZLXx$*F~N>QUYgbW_r5ZcM0C>98i0Q~hK8Hz^t z_(8=Xyy4K}1uPgVx3SN11G|B{GSO<-o>zIMSPMhKq+=_eQkZL1Eq$1|8^eIa=0n*< zBt>9m&EbEDC7%$)11wh0Zco^$JTn^-dVzYH+62F*V~i;61QBqz!Kb zD!7B;*aVu2g`b0W(^abfx4(J+B$z~9b%F!BPPSmXe>`kOQRn^VGI#Yr)$#A54$C6@ zxYnC9F7d3hbIJjbKsTlBwgBJ|YU};2r>9%ye07j@RL*Hda`$xVr@xQ2o}h^`7X3uL zPmh#F@U0FxW?-R`?4xV)GDz|t#fRSBvdh7r0Ty7 z`ztB2O`mEj3&JpUns25i3+)-!gf1d?Ij8&Oq{<^)tkF)M5xC`ASsXqec<# z)+=Ex^&LKN`!$-k!y~9R-$6WBZr9|8Br%;7Pwgb3%_@FxAa2r|S4VO3Sh{w4H=mE@ zwuDmna1)f;iZXkk%i#yxzus3?FzGN~k>fpA4f_El=&I&} z%;y4JI@#B_bh4p(_GiLXWiB{4Q7veKrROJIZ* z@5^WzmcAL|sbS!;Tayq^xmm08!Dj2Lek|xIKgb6@KM!sx_~WOqVMj)9#jc3&ew+B4 zi2Kk6JjXv%E-B3dCzX0e&+m*g0tgTmoVr&?3g|G>b?a~Da4;sFsB^zgQt)SfLC^6L`w7oK~Of4pz71m&fNd^WjmX{~P|zA}I4idg(uW zxzou}IDV!^N|nu4+3Rq|m|I7dvR*r8dz$>AY24BFAHs9-&!{~DX1Ol15t~2O z=hTe*Z5q}$LfDXL4|;j8A3>QGxgh~)@Z^83K6oowyuxa^0VZ$7O;AtuDOkE^+e2xs zt=dZ*g%SI-nXxsL&ZsEYNa~%^E>bj!LdMpO`j_8DwHd;Z<~AJLGM_q}|H1~=doWX8 z;>MtWM@il(4)Um7Kxqi8syoRG1-j5Kj&gyxsrnRDtIJSAv;o7J$3w@~2_Ig~5xfX2 zWt>EYDvYN`Q>?x5adp%niIx1+F+1ToM?6>XLEGU?7wyk@Z~si}=cD9Q*&L(BCn3%M zt(w*He>lbz^uj;;@;9aRZIlR>i{W+BL?Xyc>Y0_cM1bGxlBcx}MIJLDM>AFd?gP%C z8Am_;AI%(DpBl)%m*)dhQN6{XtzlQzt-b5l7}}lncm+NF>!5$Y%KQhc8%N?bW7z@Y zL|}HzDA~GpDxdd&gkY3CJS%e*WEgAiO~6{?4`)D%KR&u>hJRN`zpU(3>94* z;wp3&wGqW~w~OOg+k)vgr$(joJ@cxVJ*LOWayO4lsxWTC;3}b0lrYb=yR+ngAXLw{CH-N`*uo?qkmkpX+$-TLmc@yVZv`h|^mKJGxQHo{RlmBk_ zz#LcZ5UY^+_ zIYBdK>}0JxQps4M(|&vs*lr)AR7k5&DIfxqvjIm4K0XOa{n04M^&I_CpP_porHsv{ zG}YmBsZsGWHBMF*b-SyS29UBSGPUI9^P~aKahut}mkB(ay=F<)RGYJkuT1S5Vj4K# z;86Ln;*(F_aKAd_!u6|En-ye^ILHv8hLIP!s#m=_18WV@V$Z~NX{62*2>c1OoFJ6I za`LBikMJS_7uDPPair?ejOU_=0-bVZkZ@86?0B3R~7CRv?gn|RwK%4#PAmWj9%?W!u8 zoz!EkJ2U%{G~N#5e3*$l?Fgt2^uk&e8f5{fAspeG6YK#(YBeCKNuG!VpbI{S2Okc6 zToLMn1Nlkh@u;NG_8ACJh)W&&Xrj$O%{N9d#Gpw1l{kB8&F)b{WGj6BEk`P@*4+@K zgc;l^OmwLjJ}(&B0Ps*B3nT*vq5syiC!koT#WGj@?S@6`qCfhQaMakPd=BU;2iIUxgq~UTuY(SaOLB$ zcFIbjjp0PE%Y_8#{rx0gXEvee10A?Z0N1+8lPvP}8WqJbJ>V;NrmoPg) z!AjFfkfO~&CQ>Af9HRt+=%;MHp6MN*h0m}0zz=TV#?!l3+@Mp4V+D1P1N{e!B1vKNnPXt_?<$T{4Z@tSlkHFK0&lX6lu zYF|4!w25V|1pvZL(cyT~hH9A#B}Pvkng@rRTlxFmEij_xX^^f)W+v=B<;tZ0Sce^T zOt|4Z+MhyM_EI!YPA5=Zi8i$2J5oS4YDEL%KNQHX%l_c7y`;AD8qtN6QeW%_3}o>& z4IkQFz8MghB~}^QRQQQ*-T|%VVz&j^d_76InjdV=aT^5HO)$Yd0vVy*t}??e;>jYR zg;dXEy{y+@u3D+bRMpfJm>fD<>~A?3*O;izj7MozqIQl;zm$aD7C?j&Oyk3nWOAoV zec%CSr|@U+#^zK9C=xkHG7k*}Kz~Z+0VewkVcIaA2-!b9z35y@(_RBv=GEDJ7_eKj zX{un}w;c5U@Wq?XEw)r2m4VCPj7u@IP`a4k37rW+$st=^huASiHpxeF1vPEXAQT@B zk0_1Ey(}Z(Od|Y!>1Ri>kW&$5?>^!;A_u0K>_$(#4*Qa6f|bY;nBX?-jV8CQuTZJ9 z@=>Adu`BfW@HIOlQ1brTi6-%NUc(oB=d7#N#pj6JoYMhN-H8ht?3PU#s~V8MrhLe1 z+vX{WilhOP&y>ZPY|V8`)KsVQlL7IUD$_2lcI?K_j)v8Ks#1w3>nT*qqR`!y*R4Bh zTFxoFX2ZL$^?{FoXSnyd@Qx2X9hg>y`0GQCWY;vEF1M-fA0T)LrH;3P9wX2M+TjBni9ntyjfAY_NuE%&wBI$(bz?68fbQBn*Y$TB+8CMFTbYP-fTT9i%#08|t z4h<0uYvR|VF#P+6oTp-mSZfh>5%2~Y6xxCon1ueg6Nx8cp{(}*`dCF7yDd?(i2vi~ znp8pCcd5VKQ}r>4^RROH(z2VD-^=IlqcXTe1O)#}bB2Lx0D*4o-E@_@p}O_TT-rD7 z^5Asi*VUa8=#tw>TL+LY0f^bJ_ho@&cxX<{bFaCFINZ3K*KChSA$)G`s=LD~&zCzB z|A1$yzSw|AL6e)|^Y0$t>5A};T89AqfGzmW=Q8MdJ{T24!RYaxT_%n9G8lO$Z#XHC zaOYuA-K?H$qf4L2LCy*K*N_=`+m6}S+&d(JS$JxImXrd=gym%@I@@Y#;=Sd96%ou% z5@}5El6Rc#SXsPh#|cv}YnjXV+h9C9QU*`bd1Wn)N%nxp*Azhzh@eFMb)4`e6W%8! zopI2ladX}>THS@)MOm7UsWu%LC3h@9=vTmgFOj6cZuoqFd;rQ*`0~_|1Hq+UsJZH3 zB>X7e1tqD=`*BcRaR!j(UK6MnOSi^@wp;!b=f{2AZgq#q??2WrDhn~Ie8cwx^zI|8 z8stk%^VVc6@cJ81AsJ?aD^aA_x7245CAFRo?>Zr@R zp_P`uOuwnQJsBh1o}+>PW``&@2+@+azER3_1?1!aQHz7fNG@{Yqf8teu@Q@m$_&;8 z2OVglOR~mTFG62l5d*rrF^9i?OwInFkjnoD&C*wN$ec)4e}+i9l{%B`t7e}Q8HI>mu+rB!s+ z7MJK}q?n3>8~9J^!*6^s3QsV|N0DUwg#-OV?h6NJ7pgluV>daWgWC}3?h!$(O zJmsAKZ=VNkM%SF*4S%fo^~~}>7Rq9!uES3d|4j<$!1EG#jeV(18P*HDeT6uZW*4v< zSHH4P=nw^w$vAUT9F3F0`NDatnsBY3={m}5ZfUHp_z)E&-ZK zQon7#qh1={kIu!mf&YCuyLAmCxTCJE%)|b(rk(`fQGHgW@La+}yh>+*5H}U80!#Nr zzm@K%x==jCW*9m6(SZUjg&?JuAM4m2Gmm5XA>06DNE=k5QVOL4m*Es2^NQYB$)c?Z zxwhv2T|LIHTU8E85m^l1>t+klXTD&(k2Ij6V&*(Jt2Re#)p<+bzDtLx*5ZoO7JeV7 zD&)`mH;r&2u%@iV6E*QknTkH=iZEh*`yU>jfzJL?gS`ObV>Wb>>6GDnx5%_hlO++R zpKhfq;r6NF9WUTG?5cUVW6bb281|y?2~=VWenAhNj!fvs zg~OiSt{lHWHNR{!$&tbar3^dykck8{1p9j7m1cHORVsDv{UbP7=CFiw7SNf{f)Twf zJi$h|Ey&Ewk1Bn!x03J-C4+eFabqf+Qf)SXC?j({#a?F6d~?JTG}Sn$yJgE(lHvM& zbXKDzKS$DXIB_3B&?Je2l=4Ly z+8B`tA$>oPLwv)WF6$17{l^eBJ*5xdF_B`*$YLOQl9fBR@$)^l?YR5*!J?r2b3LeM z|8Tp2lklX=e=6M-L6wrTBzcElwnQlq!pk+ESjc7UyR+iRDIs;2usr;cDT9szjo9nN zQYC~YDgwQss}#0x{B{pRn*16OgZF)_T|;-`0t#xvFdO4ybc^7Uu)X)e4WRss)LeIi zw(sMSh8j_YbH{Z27lNF4gtLg6H__^P$SGY`OQd&PsP1Cl7?eeWL>&-tiNl0axCAZZ zepa1DwImB-j&i1jlocwSu^D95ubL%gj#ynk!5pPgJ8dW0x3TM^DNtoA(3&13ek4PX z$OuJP8o7zrLsmi0+vgsY?1(#fJMG))oX}MU+hvPoybrefI1GK2jfTxl%Sd+!9!VD| zed3y+X0s?t31&_iXr(727+(2@Pc+fyBI#{_2E<@P9wO)A=72AYEi+L2(iSG(zz8*U zsysyq_GsN(}o-G*p6(Wp$B^dEeOGsd?eOrKb|v-HLvjU_#{ zXa57H6!4LhptCAW;u$C>5Z5)>58P-s$-{zDXPTebBS+ReYUoxHWDkDcJ{oma%l*-< zL}|%XD+^3_p#iD@6ylYb;1H*=N(XC9VDTrzAIx~9F8xc~Ii5SS3SEicJ+&;b(KSbP z(h=MR41@TQGleSn449P0&yCL)^2APq3yI)mm1jGxluDjSdU&#W&>_c@fjr*VY%b?zgVRb$Eswj0|-e{a!8K^F?l7 zoeegQX9=A^&4N2bhe_VO*Bl=#wt#rPSI}y_me1u3a2nSA@NAfR4=2UP>T8gG`rutu zEyyI+yeVQsWT9evW1r4lYI$bJHLf_hxH-VY=WON$HBFlX+NDD)_lP&omL0Xi`O1rL zZKahaYp@UslLy(>2P^vhm7#lxg7$Ao?<}n+Bu5G9Jz3XTKsos8=7S^$CThDMU-xTa z-V)B%T&zmRyt-q(}9+{D~KWm9k5VFBpdpRZB^lrbP9CG{f5JR8S_UI*c1 z#7vlrv&YRFd}?2({8{*~vcklty6RRpPn)~Sj4q5DXq}FagxP?aod>c9Gu)uE*J)Jl zCh4kdwcC5ItGhML2RZ4X{Xes-^U<8QC*>UeD($lO2NnOsmuuabp4F(xUvtGYxYGne zbcxq~_2v8K(28uT^eGa;kB%g=31+oB#ZV?Y$qyYoVng$g*CH$Pj;vz@b=BcFC-vLr zhD&F0R{FFjQ|gE3YBfO|#0*zBQ|bj1rE%%HBB%*UZs%*F)6Bce=)U;Fny2kAV|AX* zWureI9HD0>J?dE%BSbMFM6+wuAIP$@^CLo5V9K;cR%OnE9J2xyEV^s%QL6G5uxr?$^Xg-+zS0yT0oZQzegIc{?A7h z&@ee4NQpds@6gSJE=zU|E`Ey2EYk-%Z|xsHH5AE@ zYsa9C4!*q02=@J}iYL0F7y8!wmrPc1%v&0LWq_5V1xrH`-TPWgl5Q3`#(2H%9=kbz zN`%h{6JMf@;r@`0|t7(tvZXFMPikw~8ifp+R8@;}1+*p5kg1>#E>h6LU zebb|hn&X^z}ElH7g+h?;CroJYI*RA@Mq;%WoY#UG5XwDeX#Cj zJuHIkA{J;in#-FP76%}#dvlROVxgipG++5`I{l&n$V;c0WMe~Q{$1m+<{sl?Vwt5M zVbR@_41eKz0I%H?{X(JtbV*%-B0yv%y}-5HPJ*ZWO331V0gi7;U!6q=jV&*_TJ#3^`UtoY@3LA`&g z39O2Q2pP9LD>7AM7E=Z)6{Z6Ss7Y5dh|o=cpw^4AFmC&HBYy%7Z=mrjE&0i)Mn<+c-^zL3NDZpk}~enME?XkXIJcEsodSn$5&cq zLM`uGDwYwp4;w(#Y=82@(DTvd9D>GU(OG6~CWx z*}53Kbs`iS_|gD0tCx}U1S!`?xek~AHsV`M8DQT(>!~l!Id*h*d1*c|^3y2I-)c_C zao3e%>1r>ktoY+z$FX>Z z?fo&&<*)zfyG%jGN0B&ctv_pByhu=|d`jbS?YuPT8X*eH!6wKJs|V>oBP>)LYi{$~ zy~(*Ir-XYc=$O4zXDH6K$kE!rP53vHu-h>A8va}>b!}wq|;aoc4KT7ihlAV_gpDVCzk}! zz_mB&Fl$3_-4NYl%_f|2jd>_m;}NKe0hq3hfh6uf^fn<%19c5|*#L+j6yinNzDbyx zgn8O36}cs$Gx@8Oh-)`yu6MA0HN35#bErj4c(+a7SkX70sbR_q!|^aPHp9csIdhk` zVtSh8OR^Gc&2P-X`nO96a?$YKSY5BR3blVoATrQvLxiS!{)x!9Ft~KXIwmL1A(Kkl zB0-Ea@s|#@zEZ6`Fs|P-6!`sMB_5C;`EQocl&p?!@D|ws=O09z!W-(N z4j-GkmQeE_yV_$y$GQGT{DK0y*Th3w8r;SN_m?@a4;A)3=Dz=2I8EAq(J6u)+?KWa zCdaBgGx!NxX;(&olUa`OW1BA=AKWm zeuQoHiC}{e4!+u_rh>dBbKhvQ+Yo)wam2X7-A%G%oObTjdRyLlVEzyk_9b9TdoSL! zi#b6T8^9$I9z*fMsw;}l>PqCzs^*F{`Sg5S#3RwadX(ot+&#)bu1U%NTvd$?4aRbM z0h2*J)o$fZAxezkAMpsZGw-%!`ppDgBl?ik#Qzg;$rgHjkZk%aCg_BME#IVy5iqbQ zxlU{^EqR0uin#kieYlcH7D#`V6I}d{@Fz53BG*M|!xghq(Ebr@B;(eWQW!XMaE?Kh zg1Uif{AcZ+R3g&$-zb}3nEHrImLo3l88-Ul*xbfcH(^Um(5eO7X&u0G~5VG#TU)@%gm(N@mzpW3p;o>)gOO4l-JQhl+p#8T(w`3-m4~-V@cVkl zi5rIJ1l#BumOC>%fdvioYt`aK?d*~mKGu}Ni?KSNu=z+R?Ee^GK%W_^UfF&6eCUKu z_wSF$Z5tENQ$W3X@uKk(Ib?y_Uj;AS2M@n4}74yuCo>~H<;I6nMTaE5qYR4f|-9>Ln3 ztZh;b;Sqr^*d5d2*okx&Ws7<7$!3n)*Vf2bM&2RNvH8!lPs%D+uZ>t%?*MqGT8zDr z?Nc%YoutxGvxQ=eRe47T1Kv%HoGce438epXEU&z@My1o@@B6YpG^xMY|Cb#)U}{Bq z6u*7_{GV!R`#5bltHsdsFSh{@9IK8&V7Ls4`<-ktvmV=^Z~X`{xajZ;wLvZ*Hy1py zO(kbzMq~!qY;YJI^avXisVU?69sq#vYary`ZrPTi$w zFCd|ZquQfe9pD6NP#)o2&}<|N!w#v(2(|YU z)9nj!^ONkLt@n{6JSU1c1Wd_ixZ;EI%`!v{qmNgveL?RGRY$fJIx>S_JJ5-oUqOjl zcV(K#4xG|Fvx8=cdqUC#CElVg0F)53xHz(s-IwTRWF^-l?PMkIR^J_>e`ySe(wt_o zZj`JrY8g9N9nRWXLD}9GDBg3Je7`su1!^*Du})xU@I6@mOF7YqF!-Mu@>Ks8?AB-u z|Es6?|L0K-s1@&$Gj){tR|C&jlav@uBzDD(VZ`uFJ*$P%B?dseFKYx_!msleqmbvV z2Tsx6i=@!n7;L^_4$W4#!M0&C_u_!B{4YRR9C5WQW3-T+AjvCls;eIbPV#Z{if*J= zKYP`9%z}_JJTW)d%LTHr?_ur1V;=Z%>%h&K z8Q5;qdZPr;AS0P!F92|4cVTzkghTHHcxJ=VpJ*_IK2inr2HOeeUBoeL&>?!Cv%x`- z^Uyhga#nS2fTk=K%S^dkgM~(Qvjs|#8s2q=TUm5Xxe}a_P((7@Frg&yh<}{M*i#{s z50OkbXDcIqDmhL{U>3-MnWU{;$)3Q^Ta1C2B_Io2b~T-WhdbIEzP~=fGBaZtmEczi zZBV@m1XRTNI#%u<0XM;(H2`jK8VbnZ3*(fpp6Rzx3bpjzp zE9V1Jmo|W#b)SgZGrKl4s3$2bI)cjXp8#c9iBxbZ5uFI8vEQ!W^*@qFK^#X6NPFo;?E4{7oQ`sHGM|0uS`>c#aPDgnWk{i>4ry)62SFR zv6M5~sQ$(Wb_cq2$NB1VboEPGUx%(w2~OI1HYVJ9GsVuwYbiN%#&2g>c$Glr+i?>b z8tQ!_j}3R^Ch+sWzo_p)Y^pJjJ$qGXn4Z;SUdupW_AvuvF_HZ~F&{I?MvLtl_wfSp zmG)s*kyh#t*hCg0+}uDf`RvE&E+Zmlfs_sKVHy)CDf)U<*WJ4j7ygD4Z;@?>^LNt2 zg$VIm-P6=kE=2kJMy2xC!Auh<4W*e9=SI7hqYdz7AGH{FV}RU#Bp#46F@>15OiqH% z%8Agq4Gy&K6Q}`aIazk>;a>ETdP6wjxu~_nM+5as5|2i{e@va6wdrk(#u#POy(5~! zLMaQ-adtH0?R9Ww&5~NgX-^BYRHhoSpO6M(ePh!n(T)Ftwx4uc$WU;KlYSl|ok2+y z_de++v-eVEY@7bKGwYKpeEWjdd`jH^(Z?X+Un)8bZt)jVFr#d|uzyZq1@iYh?2}t9&dqQ_`eI|Eb^a?b*CQn> zmzdz;v^34cCtXAA|KX=*zk@oQ!eUgzFlp%!gKCL_>6~3nR#WN}$^+3g3O5v<#R8qt z#WPc%PKQbaS`FVe4=~|CH*Fge-->K1^^54>CxTSAX%qjcA{5p>l-Ju=_k2wJ!JuPT z1cy(fSvgR{G(J=1WzPp~mIJmjIhvTdI*^F@Pj`-25g8gIyicg$BN&9D)YX1$X9yo3 zN!bfnOzj3+o{)6qCXwI4PkFJ)Ia%$_`6s`sQs*{iJXn$5SM=xm~Lq*|XzWZ3H( z8&mL+xByyquSpym?=Iwuykd@59Q;@Ds7*GF#+0$4!!rjgb)lYVn)LU;LYqGR)BZWO zUm-JwLvd`uPaYiDYnBL1MnB+u;eNo_xA?m;>1B$as?O6TFJ|tAeY+U?jtwsG_adhP zS6FnQsJR_rob=&D{R{x9kLK#gk%b-o!(iL#f}SX0pg0F$SlR>d*)=iACcyILt*SIy z=onaJ&n#W2+a7+K9* zbMV2aUug?|U?quoAq;jj?up>Z8fBEi2{x%WX)ON&bcoxrFCS}6$Fr8r!FuChQ_&yY zYR_#P%-;oK=eHjPHx%1>Aib~{Xh}Lj)EUtz@)EkNuJYsEf9SNeDqJA6{)yU%bTgSo1Khbt~$q$VQ0Z2LN)AD(vB^}h=CK=ue z%S|O!sx5t_-QZn^Y5P zrt)gg2j|0=zqp#o_r%=hz#FYqlbi<4MDw9U|Hz5dlB`Kq=1sEh>e`$WgfNt=)ew-L zy2(nG2?!#eCJ{FO`le!v-GRX$63v6>d*!|Dww&l)&`xTzDp(FG*kF>ShtPuPqb%2*g{ zHD*W4(EKcH?!aFK8U*e%fEebe>fEwt z$?N>#Y$+4bY);W}x@P@JG{W7A-!%{j@m_K^)HiwZU80z@G2VKeNko(6@pq>XeafPM z-cBZ3gs22iMt1O1J}9<|(19<5>R;TpLKbw2>rb}K*@}pNM!ouHUHEuOSZ7cX8~*Z% z(gqc+0FyOib*Ha*R`?5-soZ6CeW`oH*O{2-(ej2=B_0b(_1V2fb%CGsTn^f2R|77q z(6N90!E=PVF6js+fv0nxP8%VAy?l_fqVWrzet~J1S6@w3F$IooMpCBvBKb|^-=~Jo zKUU_3MtNn;jFtHCZ|XgB>nxQR39>2sLCxj=0h)iFi-tVHNWlqw=&J~8KZif8XZ zH4Tez{9+&IE>W)V6g>_&7JHdQ_JXxTEhJ5aH4({17O6l6S3oC@{JUl%1Ea_ye}z85 zGkcl<4?YTJ5KVNZrUONi6$sW=HIx3LoOfr5n27MxWd;Ak#W=| z`|Y6Hu_lg{{ub|wYvE+-8J=0O{f=G4gI-?F=yFhp)6>YK761}j+=+?Z7Cyr92kH$u2fbi z7 zsX#+aSse;-%nCpT(bQo*sYt?3-drNfRnt8EO@TXERfuT1^BX;Q(3eic8CAsm~~|1=y_fSLkG@8bfhVglsFIkj;UVW|;T|j&pc(ycq zfU9gj+#ZNA+j~6aTwDWq#bOoXnW{dEI_o}^kb6%i;>ib<6xxojZC_n%%Qe7EmK~v% zidW_zk^5apT7D0H72Ams(Ymw8jd99#zs0hHTZRx>K=J?aAPoJ)eV^ z4x@0v?Lf+nISjg}zKR%I=sF?vpqcJXYylV`1D_G8{Q0ep=<($Sx9om|8WO@C` zAb7r~DFc($a}o4tfQ7;CvEw9eVe?yT!T?E-0d$!py;@1^V$K$xoKO6Ck!-oM$8zae z2N&BC_fNd?tJf2Ja_uL8$wNu)5+pz^0LSN3rnpj#6=4e{My_v|v7->j*kxdfwB`)R2iLx4(b#g4q&{D-|ubdRUp zwRiNPNlqE#x6087qbwv5BL2bKOVAq{iZIOm`ltE*7`~Z&SdY{u7UYc<$>U7yu>&u~ zcVGn@Vs66@!Csr$5-qe2b|EZcmiRPVWs}Lm169=U=MBej!~_w6krbYpq2XHg7eIA; zI^sy*dAZGcfqd74DDa(2H1eIphLVfhJryR2^bonh<1N$#zRtHIbGFlqpQ zn=o&_0N1v|lkV>a!ONP9l+3n9tB$UurSu;A@U1_Xuy0s=6H;*OtL^p|8Qja`d4Cn7 zDB$Ts%s5zlz9w?0s5L?bMtiJRjj(tB`}QBfe2Pz+EM(BG<5C4BmC3mtb`Ij2y-_=D zDt61}^W}hM%cVUV)X01UU($v=H$puf?lR^@*5sqx8X8`GR7SGup)3V*ff8lNjaUK# zGli@`s&U-dbPOdwL7NzltcHqCBYBm;^f)%WWodL%PVz)EV9_TQy$??E`pYCsO~vMi z&1)La+;#p*gN_!goMG@dI&3j5e|uLHL)>M?vG3*vfRZOESZ{XCYCty|^N`)YcI>)i zke@gqa8dJVv0lHMCy%*s`$265f!tK2C@fz()m#90E?1;9L^AnEKxinjj85=RV7uAcLI*@axv zKkm)XP;%=2_Js_ta*CoNnp|}~Sl|Zv?e`2;g;0;YUopW2X26TZc^^Zu|1WcoFTXcj zW3+>j1T-x_Sj(%)*8Y>nE<}`sVLf@UaDQ$EM$9otXIPn& z`8&_vaO?^Wv@81hpP(aXL6facC)nKCz?jz46Vo!~-7QFNwEv;?_FZ-Fw4)7U^lSWz zZ-p2X2Y+_oI9gLhI3Ir1JqKh5K57S{6#R2cnWtg*J=a@WfxCSRfuq?Q)2VwN#OjM^ zKdEFtbg+!Ti(QUVpS{P|q5Z7(H0wG5`ODDLgt@e{;?NM^-#XTFHB$=z58;2lJpNfZ zEXUnAqgqM)g3ks~d77{^Pd4(jyclEv)j*Jw>L z0P6mRU!kGXXb+nj=MKu^yNWx(?WK*L7wM#}M7?{H^9KXe+SIzd@HB^`SH`$Ce0TLW zEu);gual?aX!)fG6}>3Jhzw4)n&~ia+Q4g&z^zNC!{&g)kZ5OJ&=$B|c;pB;o6$(m z?hrG`L3BGVzyC-@$S&Lb{z(8zSfqiySpbGa`;fTxI&O6g+b3o3LyE(<(>r-$$ zDjkKF#2Due7q;*;!-QNvmWYIGe()-xhrI|Yjswo7cqU4YP~YPCg{=`PGP+`|Kj(#H ziT;b3G7Hg8=$IMSP+0|wX#vG!RY+xZ7Cx-@k%#x+_q=9MlJz7s+8cV*aFGwBGC%>IxQ?a9qHZP0BvkGtt`n?gsL%v|GS0CA?2ypn}*fmH9*$+L=DHcK3(b!Ilz zS`dQ7Q16?|pakBII9#g=%c*XV1QAWf^9|qbp7xH1ZN9EFfZLb7gNyomE1|EM!UmXC5aS!9^qZ}f(6{-QuMl!BqWMVi__`c8p3W18rO zf*_rSRfC@BA&gNBH;U`Er|u=n3C87sG`c^cvpC!4rXUgPp+0UDH%iHqczYaxO>{vV zTSstKQEnL*EVAb{r#;i3{}zzv}f7LTzt!?U2|UvI^*d2m%OABpi`SO(s! z5V|ENy`X|-2nAqNikAe?DZ0YoY6lrWpIbS+`Jx$b;Q$I@dY( z7tc&F%eU=Gkk$B#e)1I#QsNfguB05xKQHrkc@a}lmga!;q}mYbA>CPfMp*0}h|MZE zO?q!^*%6?vIu{mxLdGvBI5`a%MAhqM$b$S-&JcxP6X2Kmavk2}iG<%~|oT-ry1Nv+Uq=(h))_pXp1(`#+}&wd1U_?NAvhhK{8W|v6pG?LWmLW!4f7c5MOfJ7Ow4hZ9|Ls(y%Gjv0 zF8-Kre`BS3riBh#?mkBO{=DLEjov{Ec^$|rV1$T{(qgIHn1%rEjIq3RuSJY`B@wcQcYcKH~YpL!{a{t{10Bjl?K9weXr zNr8s9A}<9TsZ&t!1Yb^jmlpb(IZ_dfNL^84p^aP^yD(;_lmQ+wyjjO?O?(y^`coDY zZEm5`v-wJCNV(hkFt8pqYk;&F)|Y$pI&na^n<}GkYvYQ@j7AzpcBnOX!s$KbBfJbs zzGb35giq)f_%wo*HD?F;@@NfAgPqQqYRhLoR%5AiTsThW{tEZ}@Es8Et2~UhaH#>v zjI&zq^%np|Fg2I#;3<8fiLKZvf0Ou}7wxt;T zNn*VfwLlK7rz`?0+58Z(EqeXc>x^>a1+;=YKNPbYNhFnbS09fwT9^t!DsKu z^PUKAgtgWZeD?UOM}FW{aue$K%gv*?Gg2~Ot;wrpwBQCGWis#qcXQb-Y~ekw_R0T< z#j&ccLUwO$Prz3PocN(d@M~mGPP%G?E~+d=i7}Nz5~p5<8pfh{@d=*IK7r5M)6CfX zTJ)9K7y$M)#;Q6l6u=+zVe^TUHNJdZ-yaS z;?ZdqczuN2rK&tu#K&nh!Q^<&b-kWUeRNxGpI!{|>{9B@1#B~@-n-MGf%8thJ+TzX zVUwyB4YIPlM2x!QI?#~U7&vn9_f~w9{ zPDW;+MFEZ?c(_X)Zg~u^(g@jvs4y3-$1NbP1`r&hk_Iq#1-NjRhE7xgD|U@FV}rj~0;a4;3n_v*$^x#a^30J_tj!O@gc@4Y zd=AOqT#bs)+N_}M#jC@>yFu0NCt15qV7k!kj%Lesq?UK^Tzc>j(3&7TMi@q0rv%s* z$A$Tb2tr>+%nXR#5H?d-A-EhU+f>s^WrG6Lt$I;r^a6dh3o8xKoT)Z|_`ZCF(P_bs}5$ zt!;gYb})w`!|U8rUI0JDzIr}T7Yc!epc#xyghn77%L5h0e&o%-~C@RpWb6{Wp@inGgQ@lhUMMO>! z1BS^6!{{G;$k%G(HZNlIdHy5fVuoEZF4iYjrQ40-(Cv8Rb{&-gC`gNRZmLH)$Ufv}Eei+ar`XMI9p zPjrADVa~geEONTMwiZ`|3SL$Ml}0P50fg^DLCvk}e3U`hZJ*fK%uK`kT1A=%e~%?W zIJl8p-K)taxtA8^`Lpl%@;SnnA-4f9<4h~y_-SNbZBsiikK+ioT4sT4e0!fO9F}s{ zB-tFovi6+cQZ?~2%I1nO0FEQpc}$aLQ*M~@5E)+}A)rSMa2AePoaXpNbhOgw;-;ZR zPdK?vx%2`~z4|CB-CW25Lo?;T)dqIyZ%OT;RpEuva!WJGjQB$Tsgj1)Ap51E#?VWR z-NzU{&f(#h4cTGX;N2%ubVj|c&o6<3r%vF8cwLnq({*|?CYt*3N&U2oIMlNbB5!?) zUC5l}zjbXWa(uy{()W}bl0=@g>Hv@z&2;aE)ed@V6i7pKfM1ff5w=?`0J?c}$%B3-*r+3W)It%B&sdtt13;IZIllu`Z&qrbH4*jb z-F=gcxO@trXec1n;-1ct2ZP*6SFp7(>e+Tcyh~mbms+Q3UKTzzB>8xjyg%X%J=si( zNKiH&o5aOeO-X_$qK+Whf8kM=0)BoXvYmZn?@ z9`%DES=Y6&jrW43kyXlvo6IwyC% z9eDf&-7!a-f-=Y)GxJyr_CfUa`iUf|Kz4&r|D({H==@j*?vz!$tAxj03<|9=w}p2H zVAoJmBsCfhX&8MAsF*4t0)|-b5l)gkgHzN#R{bJkq!r;6&fCBlps!v?@bo-m)H3&; z**6X)WBFoGv%1RM+5}2?XKQ;niwk=nC?wGfI1G8F1en|3cpAR?oMoyGnmtXNCBdovNGz&9X#@t5&I(N4%k?CQrlM#B3pf5Bz#~V~~JakM-V`9t7FaJJhVIk$7Wb&+xw_#LNZz`ro z*V8UD#6QNQakc%&LN97Le|2MMr0;noqg+H2bLBw~x=&H0Hiy#3xEIO-#%i<*akJ^8 z7_%&JUV{ehq43GAS54QKrsafLgMh+4+GVN67op9;Of2!}W2N~T@h+~=8-0Wa7rJlj zo2UkbJ{zfWLAkrBKa2-l{OVvW(wt}?+GU}!#wS2c`~P%+W}t9&X*QLOIQiFeWDr-k zXr66P%YHO5$JOR;xfqyMA;?0uX6oap+%WDrX_11A_{)@~mxZ>`UyALZ13lAWM^4lP z%DoY*n!|)gT$Mt6b(YY;-F0a0C_t=4)JR|Bvu~|AynNI)geW0vAD}0b#_VQc zGGn4mzRS4AVN(QU2BrY?zlf!GVMIjA;@rKua9;W}lo7m>EMH5gR_A+0#@(Vlw7@fW zH1fWt0KZEiO?L)$25=s5&7nEH0}wdcLJhONOcRZ2J?kdG(4{rNv<5WbH#r=~UVOex z$>->_t{q0D!mw!N%tKb|>ZH*gcQE3TINow_hlTv7hQ?WB5UnT^JVgGc`PbDlNuJu1 zADH9VQ?!p=9svb?gzS~KL?%8H5pl^`N6>>9kGW?A;VkZNt}*%JNR+8fGoq~l!M+tn zS9(OFYD;3v@w$2u&AFVQ6Q0HKz~k|r0wF2$2=7wwF3e3b>qQ~+0+*lwiHJ)Okp@EE z88V4o#7p45Gn_l(!s?A_H$t-{<~VE{PreUs+0?(Q%;r>iPq5EMv4$B-l=*3Mb^7`u z@?a~8t>Oe*6SGU3N^~~6HkCs|o^1d1hh)O6zZRn(7n@HM|JmP_f#kk6I4+t1BF9S{ zd5uG-a{M_BK7gJGHc&=20XWcnr|#e-KACkiuNfjj3r6*(YSMCUnbrtjNYa!i0Y5C zpY@9N?}vjqIUnWhGTO{+9#K&Iz=+NysQEMP+aE57)cC5ZY~B;T`s=_YPxM3_Li*)Q z24TI#XZ$I5AG`Sgp?1*ynO(yBOZL^(`dzdk1Q==)CX|DDEA#?wG)UM^co zr|OU->*$vD?1e^Xk0`R;LE|O;?aV?uy3+(-mkhs5t9{FG@dNj0sv4uIPSgARfg+x) zdHipgiZC8MbT7*`>)?Yk`H;RIq_^(}zDGuDL}z^Juc?RYBRX2G^xfB8vcvD`2xI{e z*OEVQ5@Mx%c?MJ0dACNfC%uSy19zb@?0sGpzeSQLxp#N=jwE96O#Lv_`kyxq0x4_| zoBW$1|4Mk$TkbmMQ8IM1s3l*5=K>?ax6_p^U)QdQoQ8TG;a$0YeC#+SS`mN#*K?vn z(VN+e(O=qXh*cF|1-(TS#MO>m%!S)ZiF9raG4)&7u*D75U5Rtxs$ogbP+0Zm-|~U9 zJP457un%VBa%ih^rsWt`xsH-_#Me@XW zf*oOWB@Ri&7o+INwpPl;%P@FsZFKy*?wC8_N(f)>TIZci#FppMxK7bBPiufL#IN_A zmgPU$(4Ge^8+MBiv6^$WHI^LoKxs@R;_hNgK=W@RFi&T}_5Sk(Ykh|W-5v!xNa&B) z-%&rueYhbn$S0DIVEx`Q6%@n5|MbB)fT+?cpu=(}RLqg0^}ZkRN+u>yxL7dqI;o(D zcIPucZD8*NJ2A{l;H5xy(lXnDi^g9Otcaj@=yjsxL#3}M51xVrO++q}5LsFNc4m~( z8JJC;#sS$G!}Iq+_Ssna>uB*cWY$_!MF9hp)XbHJW@L6IN_S>i56|UBMX=sC{5qrs zDQ*V5z4;X?O1Pg?i%qz{X5+>rO9H{veu>fnb(D-`N`K*y$fghYJzm{W;}#zDNGha3 z>922~rdR!~cTwW}g;;=W`?J!Kl!JhR&q(Z5?Qw@lUBD=qee^)0WuV#@e#WiDiBV7eKL|~v*{#%|3<-T0h`^KRO%NujE4;>Y`O$>3sPf|rAi;`mlUWJ z#lnh3Dtpzbp)A)V1k_a1!7+h z*`m99-t)23zW(79K^2O{$}!=0uRxo7xT9m@_WB8s6nQuy1`U@C)$bc%Sj=4Ve`O1 z>w3bG=9Qhr)@^JtTJ2Cn+DSTs<;mQ?RqCDnzZFRM<6S2i5Y%K&84TfSGJvT;7f4~w zD+BXvZ2y#cd>!APhy*WF&J@_h3i_RPd#SL25ss?_N*X3wjSGVn6OSO&IT?~?WX63u z#Lmd3BjB&LEEUo;G0dUhH6U7r4y#9796xQpSr$qn4E})Xijf|?a5by)6H`5+2JvNO zV@4(Fbj1+90#7`nIcGMy_+jC%ECFc4s_Cg63b{P{5y*{jM+Gmd$MyvG|4xD69rn8t z#pkT?>LW${ejo}hGZ7_lWOxlW@?}-R@7L|%dCXg*hd%~Y;h8lT5g(gK2+VM>j|3@9 zDI(}_G!T42Y$jUW(y^^r`SLUuvNUqb9ImQAJKmY0It_Dq&wo6vPrtw9fPSqyD{bv^ znwO`)rQAP67ISQ1kA@GKWYO%5Z{udl1h|%t^fj zeE^CA&WxDR(;qDiNjkIu1>F#e?|Fln+5&vSi8tJW$ihwbK|F*tGy-AV) zB=CV7tpOb1!$kIDH*vzXsI5YrL=KDr0y8m5kd7M`iP`AwxH?)mrhv;%q2Z7j`3~~R zCp$!l_2DbHN|04}AO=xdH0I6cM7>obI&9AVbG}4h?7p(xqYL4%B&h zG-3tc)@6>e{J!2V*aDaP(>D!J63?Jrtg(f`J85&sj?U%!&s___Opu`B@kE}ilR8$S zKW7{V()@63Z=wK6Pf)1|_rS3)uI*$%EN1SmhEoaj*tH@!Mf~!QdqdHR-88H#p>x;} z4;dQm5QSY48uG*C(o-V`SZWh0s_4v>m~TcV8Iu})3(^d%__d6W*vfo;ZIx_L@EEKu z=Aq@=Hzctl0^2xJv>ZGJNuP=_-?@?>V%HcUOq*Y1F7AlZPO|=kX~i7#CGFj-296@y zSF3>?DUj*s0~*gUE^dEdQDWZ~43&O39;qD(nF;T360}Lz!Ju(;m`>L-KygDgh~ouG zhDYnqgOYdNyP&AYLM|VOnVf5doYbATp{9@ETZqDWJ=zf+Ur-CrFdf?Rxnvn?Dq%&oHdDGu++u7ATh|J~v{`8^VazB*m!hW4bF zTXYEaco7lgyeM=sK<_)5c7@nQ@6b_6S*g!dB5AFfBd|wlCWX17F4k`!3SKU0CUxO$ z_zh*>YlsRwuu#E$UYsX@r6as&waJV2Qm~AhyYzRxNR;_`{Wby)&zK;3!>7u`8dlAz z*cH#z<<<9XI( zq$+G5MdzO){Nqq33#}}JDtbu)jMe!ES|l;u0rCR^QydPzOFq^Ed$eMD%w;I6IjBPw zG`EBF&|)HGmA7fW4B9%!MrZh7D8pnshEQ$AldpE`3JqYEX#qyT2Sb@|HHyP_N39 zZUzJlDL0%KT9$&gOTLwK?Gk1FL~{GYD-fNsBb~3bqCvWNsNzSsaKcZ&e?*`*skxP& zP6#%MFP$^{w!t&C_z;S7fwzv2-}Lw@7ns4ovD_LkN#^w3yZ@tq;V9wmrtqASah3)%x~fB}o@$>-M9{Tvo6Ja(Um(bn2ci!yQ^+hUC0yi7r9g0`&@ zI0t`J(fXs3dJ4!V-jmM;++4fjxTqkU&i}s5> zVQ1$L1XhPb51D)F;C2w>q*0_wtzT*R=tF{Y`J>t-eI*@|ubhs37V|h&4EvM%x&`$F zoBPO|whfViz>8X}&hMT@scaS%VIgVE-z`H3oiFv+u_(&VE|+Z=0~AC$YvLDpV-Jd(`t&jC2*D#EnSONeXC z_l#>zw7-CUTA&YSK-3}pXfsn+(}6Fx@lEnau& zC%&#(WpOnzbY}g!Aheva>3ML$(oHKJdv*aBFpFII`8J(KbCi{1&^XguX&RFxLf$?9 zn-4Ga)4>M71LIJ}496i_vfRz_Q=V5NR}X;?X0P`xkQg@~D6wVV4;RDJ)VR7))F%4q z%6af|mP3qm=}fnM@U{In#E};G)zA;@oZ!~(9f;{!4bi|Gtbo=vI<8?IzC#vN=7ZXe zpcz;US+OWYNlj`LmuUc~EzS$4_<_>k=zqXNn|VY5SqL|V24e*p4EF!(p6|p?1JHxF zTO%ZKI6gFBJ%`5Qr+Aa~D9sYaRfm#yOplBO$ z2DVbj16<&_EA@sO2L{`xYpFj%1>w**aOAUj=X5j1@WInQ5y;%wMo1z)?%Tj$Lic;! zF7j?vcL_{z%qrW%+3VS(wJyR`2U>ZV@R}222>EyJcUKIsYkH~skqi)3&r^a`6%evT z=F{Zhhe9@j;{sq-(pNV2*8CoD zrn%WDMpDCT;f8)m_-zj4b=7?=B@q7{sTAk7MEI;{mNbbl4@>t!K&fpLk?C;<1`jL#qF3Q zE6@s?igNK;{U{rm3Ro9L<<7W4j2q4z& zYOgz2wZ#blV?L6hE86J~bU$*#)qj&@+vQDt;U;EVVLJ0?ncYl!@AUgv0Nd$cPn2-I zr05KB=xHWBF8>;{;R%_3RNw>%aO1>Tf#bINR^qA|^x}|Sz2mUcN{xXuwgJ%hHwY9+ zKsABZlxdF657W(-3oI{it3yuKq)o zKk;wBazFcV{E!E3xM^&GfCuw}epLKqC#>dl3@cXDM70;|p1iqC4)VlWdHwh^`ehQ= zt4n>VCAv~DxVu;VhH3Dr`*R~ciinvcvB#5npV0ygrj5*1HN|<#5A$An*Y7dalxsxa z!#Gmx!We#QD@F-4a(l||0J4-nG*Drd?&G9yiXGz%{5DLy6Iv=L)t8AJoE@T#49}s7 z8ijW6x-l-DkCdsv92Ac9pZ}&P7$T3rL}hsy$&GREoDjiuc#xQOpAh5Z*+Bdp`s`cG zt*(~uv7|@~M?s=~@coa4tNnZh(pA-{o%rsn3&T72K1V5er04lGsf7|u z_wwh<(m-B_P++ATv*_7)NxYTc?xt>@X5w^{H#$}P*iLC=Pqie-0cV6995V}5wMxNO z4uW^@zioYc(j6hYbp}WK_dAq?j^4y)RqLZTVGIQ^IUZOpgg?Z{Qp`i&8y_maT2j>A z#t9zIm6P+Kh&bE9KOm<|JdTygD<xgES@_0M$RvvFhr>BKeY{!A{ISu)?_(u=r z-J&1aNA=k+jnOEdqIy*gO4uDRoC|mk)zyJMoW0osR8IRk_~joI&@Po(!R{9kcZJ1Z zI}=07;ZUv z7&rU@?9t+(v4uqdUMg$Cp`iF6*EI_bSiKR=`y3i^En}yG+5)PesDam8KJPXa*29vu z2*)i~G|^`Hq3s`OHYg(NRegD)2*&PMv>B+uTXE*6^H!L!#U4*@%NOY-+TLgl{1kuJdx+AiUgL`3149 z<|3?~GXd$i9Bk+B+mMl_OgwH~-`)jEaM)Y{kk*&e2O6Hy&GBTNzzL2xTk_48v_I6a zB?y!6jte091m6t+nQN)V#FzYJ?$W9ND@a$G_LYUISl?3SGtYF!kqho9yI1yz4KpxG~NCh?2W&F%K*j`PAF09Gyu!d+r~ z>T&ty^SVEH4`a2P^&}LV|c5Yed?0oHLcSK-@@P$CEO&^PR+)4+nEFjtrdQ4JWi?%m*?0uRiPMI3ur^}l$^n5AYO3D&GJ)&y+S z4BvP?bo7Tz#IrlH4t)P|6O0n>oUcw-YFa~9terpe(6;G{D{ndq7PLrsZ!3yLVz9#jzozXOIHgelc{fnX#2E|bo!>iBe zj|rJiY2pCqoUAVR&Cdi zm3Uw&Epa82(fgvi{$2ZY_Z5Tz_p)aWx0Wn*CKQ61%)~MCjL{I3@dF6g@%>}BS+gI~ ztZS(mkM1iTR&$kYeMpi+U8ws1aguT<6FQQ>WL^uG=l1In?fiNDL$H^7vuW8ptEDGm zrh^+^Y{P_GbSR_L^g&pdJ_=@5>N2Mo^2Tl8sShhA38OW|PM@ZyczsR1o6Ik`)CDzW z+DlwfjUXCS{3=ayDUcttS0h7QL(+fE&+pX?aT(GNjQ!+m`?~)ZOO)MLQxd{4-ZzqN znCmmcJw%!>k2)1DC=S`(UWcL$_~m3%;#uR47`R8BeR<5Ci}CQFD;7o=D*rBBbgOQW zILfB|bgGIHr)|rSjjWNN5dxXx1!u9kM{|}SOat6jTjaZK*aM>MB;;zAM{hXTnKqaP zZVGe71mOIdM$ot7;b)O4x$zeXed)e{#`}`#Alyq3 z1(to#Pq6zvcUmVS$7of)TU6D0?5YY#&#LW!fW^3HlSn0iGF}@%IrDoGZ8u_P$a5Ps z1|!ZuH6aB2K$J6q5FdNS0-5c3=3-?O!2waAhTDnETV3ud{FKd945LjQ(B`I(#Easj z5Q>fgZ(5aF!(D?`Dnd*ztZusNanDB@Gb5KV^y3224a(8CJ-_#_Equg${2BegUB@qy z)8FiDYi{G(GHTqTfktmcm9CVHpa*LpgRt&;LLGqAch*}%{!tB8J~`uOQY{$SBid$4 zMwzQ-1+^t7HBiN48{bIXOif_+)9*Bc21_W8vbpQpL+bPR0#xckeNC5YOrXJ?H|wpL zS8a&UyT<5lCjnT_@RRE=ALy!Sa_h+6V|z7AHgmR()b##(DkUOYSDGRSd*Xv$k)k#G zVJEKwrM>_xTA?`K?{inrNj0(hskN#@tL?CpuR@6x>qq=+&|;GyAx7}B??kTPxZr)o zx-vy=C|H6$gv9vFAsC0U+N9A8pa4y`>*)*MX!K{<&!V2}E(|?$w zE^_XxWuA&S^Ilbtn}^kkkLwR}beuKz=-H%LI-=7XCV5najiKaC98 z&qrH4HPz)gP4XEuGYj(D+yS4YvfMfBXd`2Z+=#V17!aE3>*pWtef{ z&U;~?_M9I%yz=@V)ax1XevGdAtF^gXrl&oJ%>ey`Z*nbAEm?)hZ3Q=;b;~oEE!cFa zUpbMb7Rl*_GMB~okf|wfU)BWh(@8+Z#0hS7ky5t2Qj?%|{K_HSh~krrb-{(m+W1d= zfk{l%$%mv$JZ*O5QWB!Z&coRa9}|MhFhje%z@Fq1vo!#aI+vE4cYCuWd#yu#o2WtAJ&fZ)a5jO~rWscQc1&$Ms)k z&S{6K#Ew0^EDHeA&i?4SW&xLJ_v?;xC7B8RcKTG*IG6gmJ5F4ZefRp9f z;>s=cizMI+@G}7A&K5nM?4C@PIW}pe)|}IJ%kwX*hM~3wc2znKIKK=#GE!wJs#c}r z5cA)fW3=Cc2{IEUr&I6ul%L!5_1RShLtHorFv>*I9zeImfUOXqy6*qk4AQ$8&2)v~ zB;~*38i4^X%{4DdHf+kJ$GL}*M%dJOrLYfS z@n4tkh79T^_qb%~B^n}PuVn9<36cXGvUi0O#Hr#B<^j$@hQmU;;fnVwcLtlqkxkEA zHoC6g$cDA+?#mPYq$$!xoJL;tC;qAoFseJ1SNL-Z$c3k`j`-nCkuET07|}koC^^0- zO!QHcz$j`5kk{sN>&<9#WrPFyk}4NA!~^(hSu_Ug-jCCIDbw0y5==+8*n~b zTgbAu_}Ifs@@mIE>iwMV{-3cz@rLjfi_H|R;*88E+eSXGL`bAxN==MWL(8GAxtjKe z%-(8ZSP1Q2(eKB(4RZxmbOQo>0rmZ(Jn-eMkv(XgCV)7(vahO#(YaV7_ue?!R90l` zpV+ER8HSeNBDG_(oF;ws$K@70`?Z6QYrcHWB6p4RNXVsh&oCcMYvcJK*VKLVXDM;1 zAHl(XLtD7vKAAJ5Tg1oV?aT_eOa?f$>VFgxC?M;D2m~z_2uo$4_dl-4o{l)Z`o4*$ z6jy|mtrSV%mLL_DOteUH@<^&|sJRRcG3x_Zb+-lN9@LbyS%nXo(g%s)vL^98B(o(Z z=Yl^$tNHen#@w0$UxCeIK-IRy6kKvWn^`=+h9&KYX)w>t_YCRZVz%i*F%yt(QQ`uz z3^Z{MHwmUjNbBu?Rb2hfzeBAX)$B{mM~lk?#t{qh zxPR+bUDMr0(3S8zV=&xUhp=XcOO7&^U~Ka}!C1Jj>SMlVP_OFQzQfSVlTQYyb>ySHDf;G<6r;YMI4vkDs+~0M;}*@hdW>>l0t3GvGw@6 z9}n;~JLn@|zQALO6;wIH8RSLAge#RfO3T}xhlTv!kYWpO!B(R{-4j*MS~4WE0SL@J z?tb^erKQ-{VtG>@madKvk2Yrk%??!wGuw3YapKILP!Q?%3x=*KYkmwP(HzHo11rae zh8L7e4AnH&0*IelDgfpB|8N?YO2FRV5FjH81)~A|4VvL+w{#}0KlXWH{)S(aJw0$s zr(eHE2Q&4bO{qDywGk zI6@3XbEoOG{X)n$orrV=7nkgKi|FUAnK2t#17D=H{lSW^a@&fDzw zw?E_URZlxSm5pP1;u!zP&?i1TmanPc^9fZKu=&g!l-9ic=!p67&=_cG@m3ew@fCgC z9Yl>ZH`d1LqRP)SH(hAy^NJy;PN9O#3_XIYD{*X5K-4C9hH`#q_^6-dm+{4g4!@K8 zq+e5*k&c$hd9LZoC0UsNxUnC<7y=z4Qc~@+84Sh zh4|kmN5KlYN^&*=r*}<>flLbXztf*r&GaT zKD%nXISf& zHGBjn$ojC2KoclR4_RQXa7>;%g&paMughlxs5rzQo1w`Dv!JFi019IOd@poS)7ntG zVhr(pP=>(1)nM-4*Md1W1OwxPF$0vBjNhg5w`g;Naab$_;RKQ8hIa1CK`yARh^uUo zoU$i8h{)^iqkiqtL5w7Vw>hwwBm@jmo=_|?eQyIidzpI=rRQssKJ-LB9FvMG0#A28 z?=r&ptSO>|c0UW3i$Wjg1p}g^t%7fuRn%7SWKabt(RSP|i#26W!os&6zw4C9vk<`| zYOdw~L-;cV@m}x|z{DVF+)$cm>V@TracF^&Ap;C=!ZpR^FIP*hbWAD$O0i$STr_oo z>oVQf!hmYq6l_W`5XRhS+M5$Fwxf)w?A?8-EPK{@10}Nae^2KDosW7|v{bbsGN}~wMUR2y` z8Q>BYTo1jll>NCG4TSO)aAcqf5iBQFdr}YVAB%n))|x=cAU2wkUVeYKW~;(I^+pB< z0aYy{mf5BB*U?NID0skt zIfwKUQR(?doViz+6Ux=^t^*`WKTcMd~o42VawL@=3vA~5hEtO+bd|YTV_H7vFvM_?ct}7)OL4(+{-sZ z6Z4kd!Oj=CwKbp2&b62u<9W8Bj3`Gxm5|iZ34_*g^leC_B#0lQ+i0fviw^1$%P*qu zslS%(gn*PD9U%>`sIFckEYG4J`GA(!xFa*NfO?FX3|MH1CzT^|Ts?fp^6`;pR3vVo zOYa^jJ;Ng}P}0lTSF*-61-}*xSvy|mU3~o}(4AsSg|9ayjtO9b17)!iY5B)+puaWvArDfB&>mXz) z5OWa}sAnduI*-qqU0l4E-yaw>j?T?S#df#Y#@xLiGJt5j7XBUeYlJ+ebW|d{)cdf) zXE1o$*S1K$)<$UM>Ia`DXTDj|;9WZk_=paSCmt$~>HiTm((`E_AKkw8PP&m1A^tc} z?@HLNb6XZGrs2L1HjO+hLz)}(S9ByT$-#U2B?#tvgbX`k@xd>bxgD)@?5o#`#esJW z>%XXppbCWzC>{o|7`((5Y6nOIR}d&5X60Qu9i@Li*;}WGO9fniIkg!CV^E^BKcHlk zfO{06VpV&hBhPG!4+J5|K!DWD7dT*l@+8|-b}sOnC%ucA9AOOAjydooHv5l0fB`^so!iFpmHX^-52_@B$n&v^<2wBKTRwJ~d>UQ@x^ z9bV|v3<7A!vL{IZ*-U^;;ux=O)3R4k=FpwpzEFF$5HB-ChWYO5l=P|l?g>9}2rFKP zgjbZJ)0F9poVycoRG|-c(JSJfN^Gul_>7D61{cJK~VgTrFLS6_>gX{W=yy~x8 z#S_y=OYbE%U1>A#b99FJ9X)|;N38xs;jU*UHRCa-e!=bde3R^x>+&=^fS<0CaAP`7 z*#N7HHLupzBTD2&TzhqhAEh+uapxqqxptf{FsLPRW`3UN`1Yx<`%BA*^1pyYSyx}Z zu3tr~+`YDzpF77S?9|DbiYrV8 z^I|9muygNq|K}NXIIxN%NW(I<1bBJnWzc1yW2GuN{6v~fjD-3Mf|o7H?M7>W_0>z+ znC%Qr#Q-zp%%~SDUSQ8b2z2Ic3FdS4RLeLd=#v^VE652B&wMR1hOnOj9otHiu9(c* zryIZ1n(j(B98vF#`NI5Yce2d3e0prG9Q5#%s&7m#ta`6GrOmU=VC~=177o9umaa48 z-Y7$V$uajoY^wo>O~*9mE#0?&^M&=*tRF%B=@sIQ6qGT)wa8z~a<@R$=UNA*gd3UX zuf&UydV00?gRaj~#_0JmUwpHCh@x(w7yJZH>PC}I{+7r}i0_wy{m)PLhe`2+LOHhp zOQqa6DWSA=u|anD+V>5uUM97KQ&E8dU-$CO2hbIx^tOYa%9TB(dEGa4stM}~k$Y>)-)$lpNGBnkGey{{$?$LRl-TL7kmOij~F7W`@JOyWiPnhn2rdG;#JEm5fZk zL40;eV9+~Mj@+R(FZQj1iTi4RZ-meJQ(ufP&c*;jiHXzwP5$B!@X{Qm`02_l|FK=S zZs(&!Qr|8`aFjVdU3$)?xU56^!WV!#{e7SrZyUDg;22<;d;+@!oqqbPM^j^V?4+H* zw)`*7q2;2U5ym`NiZ9r~Ko71}^}Ok|Wo5(tnBnpLa&S)6;(*N&cEPvq@G;!svTL4i{Z%Ne4#qN?agz$rFchvZvnN93ZGtLsOT9?N0!f?n7;C+LVS33) z_bZcgeD{*xG~()Q_~T-xDw#m&ga?+ywd*rXJe?(=!Qy6uaa>p3i`sRI)MAoq?2PXI zZW8;?qyeSc;(h91zSbxsgy#Nt_|UcKl;;#=krO@{~T+fB)=PGWU!$yg?o6TzK%q0`E86 z7fh4&+H35kq#Uc_v~Wi1dS|G%DeOEDt;oy02(Wjf@|JwD%G) z@hRIA9wC5dF3#NifsySXX>r;?gB;m`lpez?&kL`Xb({Z(Ow?VJi zoL(8&mJvxcehPC$J}X8`xt5nZnZXTYDcl)#90<}DO|=a25&YC7uF2-wl3F}ez-p}vJr+=~IRQX8@S zVRm{#kEMU^yOtN4Uqez?`YC1=vd^YZYM7JBcRfDigt)BRI`;LtKGx6uqb%t>a-U7{ zXQs=R0P|8~7$EB{ys3nqv6(uBe?;?43|^xX>E-~)Zd^d6rs}zt^)Mb03uc9)Uc^Vv z)CPhCEJVAjxqjBrEr%Yn+pcv8;Z%7kPsd`4Vx@T`m@@fvPz>Nxe8acB=50(J+U=S)HU6-u!=iCd#(zv!U zw;I&@lQ-S&7C0X8>mhI~)m{EUfA|4el`b0mz&@P6+uMzPjrvH4#1yQ6;<;|~fN=2# zl3=HMHkTjaWqLGYl;F6eiTehw(`|+67er|LGkZ348ZI3=Ez!*R*O{3ld^xwzmMi7M z?i-e)C5|&mcum|`zHAtuK;e&UlndaNBIz1QfrO9KgV{iLQtCZB&OMVNkwL%AEns28 zSMmJ3KCWf!AB*3d7UC$m&b%Ss*=nn@pmTpQZ~DomR8yuNQ7K{%UG9=8*N5`4OGQL# zk1*8NpaY~tqndtl>wAx~>5m%a<_n|MtCL_I_8$jUZ$e$r~(%EiMu3sA#9}eF>;*>0Z z?!;~c+VQYAkoKG|l$#N9gHn@%_kqr)I$U_QzVn09E zOzcA28dof}bOv{lb$FW;X`;J1PWjIJ-}~@|$bMdegSttHZD>JIPr<282%YDy0zY=C zJRj4uJzx~;1_w{0jm6=QpF% zSKbXM>vKm%ovpD37;8yo;LvS8KM(L;!eYgQ*G;s5ZNrHlro_#Hj7YHtJ45GKKYE>| zw3U$x3Pp5+eTnmZ<&x_&z|@AYs31=3z^bP z)&{g0Om8M9OOxnNhn9Q}+H;ep47LRZL+0rR!+rodQq-cltdOB!&7tru6##=UXx= zrVlFruvtqq{&So4-wfSbs}fRd002OTdtsJ`#O8Z9K+ckIUye-~suYQa5u6O|2g1Rx9`i& z+TcWSZEs=S!A@S+;#rkEg@R*14of|L4b}kWBg^Q7?Z}B>hnc&pkcd zm}#*_Ot6KE4Og(imoN_~+9yFAO~d#wc#~|CCqi(L|E_@s+DEn2Cu37o;On)TgEfe^ z>A>p06&%K@g^I5GuJ{G>#)u}82E3D7W2~ngCHs@S6%6i$&M<0L8OHzB1jm=uJeS9v z0BtrZB9tEDZ=dp=|Hlg?WkPe~eNL*iWUH4%ayB3K?)^xpCpcGtm`aa;2JLAT8x-!$ z-oPv{Em9o+wjkUUcHa+a$8(Xk&>D21_MdZW6r7My-9J>Q!r;-g!>nhF?aX(aTYLyI zN*Upi)8UbhY`YS44Rsja!!n|792Avy7<8k5WvAE@k&;Ae;AM=N3eSpGgs5sxK2-GZ z_HziSURcVU{mqY;6OlOX@}envt51`EO-$cf!!U2?6(zJ66i!o=4w<9#qXg*H#rcPMOPYpFLQT<-kDvb9ojSdWJ9Nnb6PJiIn(6T)OkvtRDa6y0Ks}^nO5Mw*MB3Nh(Y-3D!FmT)lee=AlAB zO4*TKTY^YcY|%MqLzm6#<7O~FJni86Fc@sUXjj~MDI5BMYWb9W_N2OPA;ZVx{dc0e zXGAuHW%QW1v`CF+64&qgx!g6ho8+bchsC90bZypzl+W!TJxawJ&J1e}0Z50^!;Nu6kY22DrJ)(%0 z_opA68*zN1ZVY?Tc^9=+J9lL2bKs$Q_o`~^`ZjDXvxS*5cXz3yl-tji`Z{7rvmjdf z#8=kC#WIoEI5d%N0rZM~FPwr}W!JqHVMUlvwQC|Un`z&h7wWsx!krWIVI~`^lmFPY z*PnB42}{a*D%r7zVv^`Zmwrm%A&Jt{0qNcO+j}s_YBFS%3McQo`vvkDVkIhYTw?scvx3&N!DX%}Q0}b)a|Nq7Er=IEkGf zFBBQd8sBnE&LRE!9aXH-l@9+F>1IDI9dY>8%NNe?Ae~OGzw*BwhZ&%$IIH1=(9kxbC3^_+nti|1P3+=#0{9Zju$9`iy!B zfbKk9(~xYnB~}5JJMfLPc+}RNNB7-q5T}`Zy-g9IK+mD+w+sR7>@+X-6V2Gdjx|7! zN?J~{E;Gt_h1QtgYEk1)3|8ox}Qk`lX!VvAP3GZ#>xp)qy;h&8)#Q29K+xgZ|+DV8jx;bvdR z#l+hGA0sd``f64BHNJP*`VY#07{o$1^y=(f%D0?DB_+ga6wH>K`T#bbY+BUo?p&RN zC*ef#=SOdL0862gxA%}|(zD^M(dOKH6$y#sv5)IU6yT1cF669D6)XO#g&DWQVbsq-bE7T9%kjpkpES|`tUxNi5SMATMXb zmmzI#{tzJ|IQHu0+lOU@F3OV(a+-!3y`s>h@`Mi#Xt7r-f20aKG5;Avnn|`W`44j= zcfuj7oB zF3*PlvvJ|{>l2)ho3QHIo#3oqCn#;X32$zf{wJ=Q_X`+rr&VPJZ7Yg$)4yezFuzq~ zki$=Z*=GFdVPu)Pq|z!_>3AN-3SPV}GVBsSDR`je{pE4Mk-Y1lBeYJjmsHl@*?GmP zRgXdHNDYTwcz78W`LKSX;UQf8E~WOERWJt|2wXMu${Do>3|W49?bo1fCmZDmmVh$e z)w+*-wg;on%ngFKPI^e9RZwNjyyzE(8tPrEZwxVNEf8I6N zJ$i0D`~CyPwjSo%cg2m?~~d|H@bB7O^B+_-`cL)hFt zsHnl~7yaFh-%jqoJo_PEQFOCrg=PA?CvBebx)k~NOUoXrWbVybA-?T1cAMjIi=Eu4 z_=fbw8}MrFyR7Hi9i`s&`&;hQvX2fc{U1VOhD}+gi?jAGCWm?(u3k3{)Nkh?g(X7Z zCS%nBRvR4}Ud@|-3*6)dXWh?VhV{?x2JxInAb}Vk^uIp|Drgv87~VH>Ikre7P#Bx+ z-F>JMaTmxMpM_lc|IezRuloHe000{x{Icn5=-aF_a;*QvF8L43sRRuGzw8FR`>za{ h|Ip#zES&$kf^KTBEnlC;r0uWN(Nxt@sd@ql`yVT>o`e7Z literal 0 HcmV?d00001 diff --git a/docs/eo/screenshot-pythagorean_trigonometric_identity.png b/docs/eo/screenshot-pythagorean_trigonometric_identity.png new file mode 100644 index 0000000000000000000000000000000000000000..bd9411c7fe010825eeb678636dd8480ead9dc815 GIT binary patch literal 27428 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%0AHh<6PTht|eo9VJS;>`m-3N@CI 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 D)iDR9 literal 0 HcmV?d00001 diff --git a/docs/eo/screenshot-tjaty.png b/docs/eo/screenshot-tjaty.png new file mode 100644 index 0000000000000000000000000000000000000000..d49237081aefd98fd62a7b942898df6cc4180682 GIT binary patch literal 22193 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[http://vortaro.net/#Alkazabo Alkazabo en vortaro.net] + +===={{Tradukoj}}==== +{{trad-eko}} +* franca: {{t|fr|alcazaba|f}}, {{t|fr|citadelle|f}}, casbah +* germana: {{t|de|Alcazaba|f}}, {{t|de|Festung|f}} +{{trad-mezo}} +* hispana: {{t|es|alcazaba|f}} +* itala: {{t|it|alcazaba|f}}, {{t|it|cittadella|f}} +{{trad-fino}} + +{{Referencoj}} diff --git a/tests/data/eo/ekamus.wiki b/tests/data/eo/ekamus.wiki new file mode 100644 index 000000000..1cf78abae --- /dev/null +++ b/tests/data/eo/ekamus.wiki @@ -0,0 +1,4 @@ +=={{Lingvo|eo}}== +==={{Vortospeco|verba formo|eo}}=== + +{{form-eo}} diff --git a/tests/data/eo/kaskedo.wiki b/tests/data/eo/kaskedo.wiki new file mode 100644 index 000000000..60c35a0cc --- /dev/null +++ b/tests/data/eo/kaskedo.wiki @@ -0,0 +1,40 @@ +=={{Lingvo|eo}}== +{{8}} +==={{Vortospeco|substantivo|eo}}=== +[[Dosiero:Casquette a helice.jpg|thumb|[1] '''''kaskedo''''']] +{{Deklinacio-eo}} + +{{Vorterseparo}} +:kasked/o. + +===={{Signifoj}}==== +:[1] Ĉapo kun viziero, civilvesta aŭ uniforma: ''homoj armitaj en nigraj kaskedetoj{{ref-Grabowski}}; la hotela pordisto levis sian kaskedon.'' + +{{Ekzemploj}} +:[1] Volis +:la ĝardenisto pajlan ĉapelon, +:la ŝipisto maristan ĉapon, +:la ĵurnalisto kvadratitan ''kaskedon'', +:la ĉambristino puntan kufon, +:la ĝendarmo militistan kepon, +:la ĉampano [[korko]]n, +:la ĝemelo du supersignojn, +:la ĵonglisto tri aŭ kvar...{{La milito de la ĉapeloj}} + +===={{Tradukoj}}==== +{{trad-eko}} +*dana: [1] {{t|da|kasket}} {{g|u}} + +*franca: [1] {{t|fr|casquette}} {{g|f}} +{{trad-mezo}} + +{{trad-fino}} + +{{Referencoj}} +* {{vikipedenlin|kaskedo}} +* {{ref-ReVo|kaskedo}} +* {{ref-PIV}} +* {{ref-Tato|eo}} +* {{ref-Simpla Vortaro|kaskedo}} + +{{Fontoj}} diff --git a/tests/data/eo/komputilo.wiki b/tests/data/eo/komputilo.wiki new file mode 100644 index 000000000..377bb3959 --- /dev/null +++ b/tests/data/eo/komputilo.wiki @@ -0,0 +1,37 @@ +{{vikipedio}} + +== Esperanto == +=== Substantivo === +{{livs|eo|SB|fra=[L:komput(i)]+[I:il]+[U:o]}} +{{Deklinacio-eo}} +{{bildodek|ThinkCentre_S50.jpg}} +{{bildodek|ENIAC-changing_a_tube.jpg|tre granda kaj malnova '''komputilo'''|Raspberry_Pi_4_Model_B_-_Side.jpg|malgranda nova '''komputilo'''}} + +===={{Signifoj}}==== +# {{k|eo|F: komputado}} [[maŝino]] aŭ [[elektronikaĵo]] kiu kapablas [[kalkuli]], precipe sen intervenoj de homoj, aŭ rapide trakti, stori, kaj preni larĝajn kvantojn de [[datumo]] + +{{Sinonimoj}} +''(arkaikaj kaj evitendaj)'' [[komputero]], [[komputoro]], [[komputatoro]] + +===={{Tradukoj}}==== +{{trad-eko}} +* angla: {{t|en|computer}} +* finna: {{t|fi|tietokone}} +* franca: '''1., 2.''' {{t|fr|calculatrice}} {{g|f}}, {{t|fr|ordinateur}} {{g|m}} +* germana: '''1., 2.''' {{t|de|Computer}} {{g|m}}, {{t|de|Rechner}} {{g|m}} +* hispana: '''1., 2.''' {{t|es|ordenador}} {{g|m}}, {{t|es|computadora}} {{g|f}}, {{t|es|computador}} {{g|m}} +* indonezia: {{t|id|komputer}} +* kroata: '''1., 2.''' {{t|hr|računalo}}, {{t|hr|kompjuter}} +{{trad-mezo}} +* nederlanda: '''1., 2.''' {{t|nl|computer|m}} +* pola: '''1., 2.''' {{t|pl|komputer}} {{g|m}} +* portugala: '''1., 2.''' {{t|pt|computador}} {{g|m}} +* rusa: {{t|ru|компьютер|m}}, {{t|ru|ЭВМ|f}} +* sveda: {{t|sv|dator|u}} +{{trad-fino}} + +{{Referencoj}} +* {{ref-PIV}} +* {{ref-Simpla Vortaro|{{PAGENAME}}}} +* {{ref-Majstro|{{PAGENAME}}}} +* {{ref-Tato|eo}} diff --git a/tests/data/eo/latina.wiki b/tests/data/eo/latina.wiki new file mode 100644 index 000000000..52f0391d1 --- /dev/null +++ b/tests/data/eo/latina.wiki @@ -0,0 +1,20 @@ +=={{Lingvo|eo}}== + +{{Etimologio}} +De [[Latino]] + +=== Adjektivo === +#rilata al [[Latino]]. + +===={{Tradukoj}}==== +{{trad-eko}} +* angla: {{t|en|Latin}} +* franca: {{t|fr|latin}} +{{trad-mezo}} +* germana: {{t|de|lateinisch}} +{{trad-fino}} + +{{Referencoj}} +* {{ref-Majstro|latina}} + +[[Kategorio:Radiko latin']] diff --git a/tests/data/eo/luko.wiki b/tests/data/eo/luko.wiki new file mode 100644 index 000000000..c17cb0efb --- /dev/null +++ b/tests/data/eo/luko.wiki @@ -0,0 +1,55 @@ +=={{Lingvo|eo}}== +{{8}} +==={{Vortospeco|substantivo|eo}}=== + +{{Deklinacio-eo}} + +{{Deveno}} +:el la germana ''[[Luke]]'' + +{{Vorterseparo}} +:luk/o. + +===={{Signifoj}}==== +:Aperturo: +:[1] ordinare vitrita aŭ kradita, en tegmento, plafono aŭ kelo, por enlasi lumon: ''mansarda luko''. +:[2] fermebla per pordo aŭ tabuloj, en la ferdeko de ŝipo, por ebligi penetron en la holdon (pli precize: holdluko). +:[3] fermita per kovrilo el giso, kiu en la strato, sur trotuaro ks ebligas al metiisto malsupreniri en kloakon, aŭ subteran galerion. + +{{Sinonimoj}} +:[1] lumluko, bovokulo, vazistaso. + +{{Derivaĵoj}} +:[1] + +{{Derivaĵoj}} +:[[luketo]]. Malgranda luko en pordo tra kiu oni povas ekvidi la personon, kiu sonoris. +:[[lumluko]]. luko 1. + +===={{Tradukoj}}==== +{{trad-eko}} +*angla: [1] {{t|en|bull's eye}}, {{t|en|porthole}}, port hole +*franca: [1] {{t|fr|lucarne}} {{g|f}}, {{t|fr|sabord}} {{g|m}} +*germana: [1] {{t|de|Bullauge}} {{g|n}}, {{t|de|Dachfenster}}, {{t|de|Deckenfenster}}, {{t|de|Mansardenfenster}}, {{t|de|Luke}}, {{t|de|Dachluke}} +*malaltgermana: [1] {{t|nds|Bulloog}} +*pola: [1] {{t|pl|bulaj}} {{g|m}}, {{t|pl|iluminator}} {{g|m}}, {{t|pl|świetlik}} {{g|m}} +{{trad-mezo}} +*portugala: [1] {{t|pt|vigia}} {{g|f}} +*hispana: [1] {{t|es|ojo de buey}}, {{t|es|escudilla}} +*sveda: [1] {{t|sv|ventil}}, {{t|sv|oxöga}} (veraltet), {{t|sv|fönsterventil}} {{g|u}} + +{{trad-fino}} + +{{Referencoj}} +{{vikipedio|luko}} +* {{ref-ReVo|luko}} +* {{ref-PIV}} +* {{ref-Tato|eo}} +* {{ref-Simpla Vortaro|luko}} + +{{Fontoj}} + +{{Similaĵoj}} +: + +[[Kategorio:Dubinda (Esperanto)]] diff --git "a/tests/data/eo/\342\231\215.wiki" "b/tests/data/eo/\342\231\215.wiki" new file mode 100644 index 000000000..575d0da15 --- /dev/null +++ "b/tests/data/eo/\342\231\215.wiki" @@ -0,0 +1,9 @@ +{{character info}} +=={{Lingvo|mul}}== +==={{Vortospeco|signo|mul}}=== + +===={{Signifoj}}==== +# {{k|mul|F: astrologio}} zodiaka signo de [[Virgulino]] (''[[Virgo]]'') + +{{nevideblafinodesekcio}} +{{emojibox}} diff --git "a/tests/data/eo/\360\237\222\200.wiki" "b/tests/data/eo/\360\237\222\200.wiki" new file mode 100644 index 000000000..17fa54f69 --- /dev/null +++ "b/tests/data/eo/\360\237\222\200.wiki" @@ -0,0 +1,8 @@ +== translingva == +=== Signo === +{{livs|mul|KK}} +{{signo|des=SKULL}} +{{k|mul|T: BILD.}} + +===={{Signifoj}}==== +# morto diff --git a/tests/test_eo.py b/tests/test_eo.py new file mode 100644 index 000000000..f9f798f06 --- /dev/null +++ b/tests/test_eo.py @@ -0,0 +1,124 @@ +from collections.abc import Callable + +import pytest + +from wikidict.render import parse_word +from wikidict.stubs import Definitions +from wikidict.utils import process_templates + + +@pytest.mark.parametrize( + "word, pronunciations, genders, etymology, definitions, variants", + [ + ( + "♍", + [], + [], + [], + ["(astrologio) zodiaka signo de Virgulino (Virgo)"], + [], + ), + ( + "💀", + [], + [], + [], + ["morto"], + [], + ), + ( + "alkazabo", + [], + [], + ["el la andalus-araba alqaṣába, kaj tiu ĉi el la klasika araba qaṣabah, قصبة"], + [ + "(historio; arkitekturo; militado) fortikita konstruaĵaro; citadelo aŭ palaco de araba ĉefo en Nord-Afriko kaj Suda-Hispanio" + ], + [], + ), + ( + "ekamus", + [], + [], + [], + [], + ["ekami"], + ), + ( + "kaskedo", + ["kasked/o"], + [], + [], + [ + "Ĉapo kun viziero, civilvesta aŭ uniforma: homoj armitaj en nigraj kaskedetoj; la hotela pordisto levis sian kaskedon." + ], + [], + ), + ( + "komputilo", + [], + [], + [], + [ + "(komputado) maŝino aŭ elektronikaĵo kiu kapablas kalkuli, precipe sen intervenoj de homoj, aŭ rapide trakti, stori, kaj preni larĝajn kvantojn de datumo" + ], + [], + ), + ( + "latina", + [], + [], + ["De Latino"], + ["rilata al Latino."], + [], + ), + ( + "luko", + ["luk/o"], + [], + ["el la germana Luke"], + [ + "ordinare vitrita aŭ kradita, en tegmento, plafono aŭ kelo, por enlasi lumon: mansarda luko.", + "fermebla per pordo aŭ tabuloj, en la ferdeko de ŝipo, por ebligi penetron en la holdon (pli precize: holdluko).", + "fermita per kovrilo el giso, kiu en la strato, sur trotuaro ks ebligas al metiisto malsupreniri en kloakon, aŭ subteran galerion.", + ], + [], + ), + ( + "Teodoriko", + [], + ["m"], + ["El la itala."], + [], + [], + ), + ], +) +def test_parse_word( + word: str, + pronunciations: list[str], + genders: list[str], + etymology: list[Definitions], + definitions: list[Definitions], + variants: list[str], + page: Callable[[str, str], str], +) -> None: + """Test the sections finder and definitions getter.""" + code = page(word, "eo") + details = parse_word(word, code, "eo", force=True) + assert pronunciations == details.pronunciations + assert genders == details.genders + assert etymology == details.etymology + assert definitions == details.definitions + assert variants == details.variants + + +@pytest.mark.parametrize( + "wikicode, expected", + [ + ("", ""), + ], +) +def test_process_template(wikicode: str, expected: str) -> None: + """Test templates handling.""" + assert process_templates("foo", wikicode, "eo") == expected diff --git a/wikidict/check_word.py b/wikidict/check_word.py index 12b75de54..e008d7db1 100644 --- a/wikidict/check_word.py +++ b/wikidict/check_word.py @@ -155,6 +155,11 @@ def filter_html(html: str, locale: str) -> str: if a["href"].lower().startswith(("#cite", "#mw")): a.decompose() + elif locale == "eo": + # + for a in bs.find_all("sup", {"class": "reference"}): + a.decompose() + elif locale == "es": # Replace color rectangle for span in bs.find_all("span", {"id": "ColorRect"}): diff --git a/wikidict/lang/eo/__init__.py b/wikidict/lang/eo/__init__.py new file mode 100644 index 000000000..f6c04b256 --- /dev/null +++ b/wikidict/lang/eo/__init__.py @@ -0,0 +1,304 @@ +"""Esperanto language.""" + +# Float number separator +import re + +from ...user_functions import uniq + +float_separator = "," + +# Thousads separator +thousands_separator = " " + +# Markers for sections that contain interesting text to analyse. +section_patterns = ("#", r":\[\d+\]", r"\*") +section_sublevels = (3, 4) +head_sections = ("{{lingvo|eo}}", "{{lingvo|mul}}", "esperanto", "multldingva", "translingva") +etyl_section = ("{{deveno}}", "{{etimologio}}") +sections = ( + *etyl_section, + "adjektivo", + "adverbo", + "difinoj", + "infikso", + "interjekcio", + "konjunkcio", + "malllongigo", + "mallongigoj", + "numeralo", + "prefikso", + "prepozicio", + "pronomo", + "radiko", + "signifo", + "signo", + "subjunkcio", + "substantivo", + "sufikso", + "verba formo", + "verbo", + "{{signifoj}", + "{{vortospeco|adjektiva formo|eo}", + "{{vortospeco|adjektivo|eo}", + "{{vortospeco|adverbo|eo}", + "{{vortospeco|antaŭfiksaĵo|eo}", + "{{vortospeco|artikolo|eo}", + "{{vortospeco|demanda adverbo|eo}", + "{{vortospeco|esprimo|eo}", + "{{vortospeco|finaĵo|eo}", + "{{vortospeco|frazo|eo}", + "{{vortospeco|interjekcio|eo}", + "{{vortospeco|konjunkcio|eo}", + "{{vortospeco|liternomo|eo}", + "{{vortospeco|litero|eo}", + "{{vortospeco|literoparo|eo}", + "{{vortospeco|loknomo|eo}", + "{{vortospeco|mallongigo|eo}", + "{{vortospeco|mallongigo|mul}", + "{{vortospeco|mona nomo|eo}", + "{{vortospeco|nombro|eo}", + "{{vortospeco|nomo|eo}", + "{{vortospeco|numeralo|eo}", + "{{vortospeco|partikulo|eo}", + "{{vortospeco|persona nomo|eo}", + "{{vortospeco|persona pronomo|eo}", + "{{vortospeco|poseda pronomo|eo}", + "{{vortospeco|postfiksaĵo|eo}", + "{{vortospeco|prepozicio|eo}", + "{{vortospeco|pronomo|eo}", + "{{vortospeco|scienca nomo|mul}", + "{{vortospeco|signo|mul}", + "{{vortospeco|simbolo|eo}", + "{{vortospeco|simbolo|mul}", + "{{vortospeco|subjunkcio|eo}", + "{{vortospeco|substantiva formo|eo}", + "{{vortospeco|substantivo|eo}", + "{{vortospeco|substantivo|mul}", + "{{vortospeco|sufikso|eo}", + "{{vortospeco|verbo ambaŭtransitiva|eo}", + "{{vortospeco|verba formo|eo}", + "{{vortospeco|verbo|eo}", + "{{vortospeco|verbo netransitiva|eo}", + "{{vortospeco|verbo transitiva|eo}", + "{{vortospeco|vortgrupo|eo}", +) + +# Variants +variant_titles = sections +variant_templates = ("{{form-eo}}",) + +# Some definitions are not good to keep (plural, gender, ... ) +definitions_to_ignore = ( + # + # For variants + # + "form-eo", +) + +# Templates to ignore: the text will be deleted. +templates_ignored = ( + "?", + "aŭdo", + "barileto", + "fundamenta", + "IFA", + "N", + "PRON", + "quote-book", + "quote-magazine", + "ref-AdE", + "ref-Grabowski", + "ref-Kalman", + "ref-PrV", + "ref-ReVo", + "radiofoniaj liternomoj", + "rima", + "vian", + "Vd", + "Vidu ankaŭ", + "W", + "X", +) + +# Templates more complex to manage. +templates_multi = { + # {{fina|o}} + "fina": "parts[1]", + # {{inte|o}} + "inte": "parts[1]", + # {{mems|du}} + "mems": "parts[1]", + # {{pref|mis}} + "pref": "parts[1]", + # {{radi|vort}} + "radi": "parts[1]", + # {{sufi|il}} + "sufi": "parts[1]", + # {{Vortospeco|mona nomo|eo}} + "Vortospeco": "capitalize(parts[1])", +} + +# Templates that will be completed/replaced using custom text. +templates_other = { + "🏠": "🏠 arkitekturo", + "🌄": "geografio", + "🍴": "gastronomia", + "📖": "📖 (presarto kaj libroj)", + "📷": "📷 fotografio kaj kinotekniko", + "⏚": "⏚ elektro kaj elektroteĥniko", + "✞": "✞ kristanismo", + "❤": "❤ korpostrukturo kaj histologio:", + "☆": "☆ belartoj", + "♉": "♉ bestologio", + "👥": "👥 komunuza senso", + "🍁": "🍁 herbiko", + "✈": "✈ aviado", + "♠": "♠ ludoj", + "☼": "☼ terscieco (inkl. mineral- kaj rokoscienco)", + "⚓": "⚓ marnavigado kaj ŝipoj", + "⚕": "(⚕ kuracscienco kaj kirurgio)", + "♜": "♜ historio", + "Λ": "Λ lingv.", + "⊕": "⊕ terologio (inkl. mineralogio kaj petrologio):", + "♧": "♧ beletro", + "Ⓣ": "Ⓣ (teknikoj [inkl. mekanikon kaj metalurgion])", + "☇": "☇ forkomunikoj (inkl. radioforsonadon, videaĵojn kaj elektrosonsciencon)", + "Π": "Π prahistorio", + "Θ": "(Θ religioj)", + "𝅘𝅥𝅰": "𝅘𝅥𝅰 muziko", + "⚔": ( + 'terkulturo", + "EKON": "ekon.", + "HOR": "hortikulturo, arbokulturo, arbarkultivo", + "KRI": "krist.", + "TRA": "trafiko", + "figurs.": "figursenca", + "hist.": "♜ hist.", + "ĵar.": "ĵar.", + "lat. tardío": "malfrua latina", + "lat. vulg.": "vulgara latina", + "ling.": "Λ lingv.", + "mar.": "⚓ maraferoj", + "poe.": ( + ' poetiko, poezio' + ), +} +templates_other["Ĵar."] = templates_other["ĵar."] +templates_other["Ling."] = templates_other["ling."] +templates_other["Mar."] = templates_other["mar."] +templates_other["MUZ"] = templates_other["𝅘𝅥𝅰"] +templates_other["Poe."] = templates_other["poe."] + + +# Release content on GitHub +# https://github.com/BoboTiG/ebook-reader-dict/releases/tag/eo +release_description = """\ +Vortoj kalkulas: {words_count} +Vikivortaro rubejo: {dump_date} + +Plena versio: +{download_links_full} + +Etimologio-libera versio: +{download_links_noetym} + +Ĝisdatigita je {creation_date} +""" + +# Dictionary name that will be printed below each definition +wiktionary = "Vikivortaro (ɔ) {year}" + + +def find_genders( + code: str, + pattern: re.Pattern[str] = re.compile(r"{g\|(\w+)"), +) -> list[str]: + """ + >>> find_genders("") + [] + >>> find_genders("{{g|m}}") + ['m'] + """ + return uniq(pattern.findall(code)) + + +def find_pronunciations( + code: str, + pattern1: re.Pattern[str] = re.compile(r"\{\{PRON\|`([^`]+)`"), + pattern2: re.Pattern[str] = re.compile(r"\{\{IFA\|([^}]+)}}"), +) -> list[str]: + """ + >>> find_pronunciations("") + [] + >>> find_pronunciations("{{PRON|`luk/o.`}}") + ['luk/o'] + >>> find_pronunciations("{{PRON|`[[advent]]•[[o]]`}}") + ['advent•o'] + >>> find_pronunciations("{{PRON|`{{radi|vultur}} + o`}}") + ['vultur + o'] + >>> find_pronunciations("{{PRON|` {{radi|dekstr}} + {{fina|a}}`}}") + ['dekstr + a'] + >>> find_pronunciations("{{IFA|/vitpunkto/}}") + ['/vitpunkto/'] + """ + from ...utils import process_templates + + return [ + process_templates("", match.rstrip("."), "eo") + for match in pattern1.findall(code) or pattern2.findall(code) or [] + ] + + +def last_template_handler(template: tuple[str, ...], locale: str, word: str = "") -> str: + """ + Will be called in utils.py::transform() when all template handlers were not used. + + >>> last_template_handler(["form-eo"], "eo", word="surdaj") + 'surda' + """ + from .. import defaults + from .template_handlers import lookup_template, render_template + + if lookup_template(template[0]): + return render_template(word, template) + + return defaults.last_template_handler(template, locale, word=word) diff --git a/wikidict/lang/eo/langs.py b/wikidict/lang/eo/langs.py new file mode 100644 index 000000000..cb704060e --- /dev/null +++ b/wikidict/lang/eo/langs.py @@ -0,0 +1,420 @@ +""" +List of langs. +Auto-generated with `python -m scripts`. +""" + +# START +langs = { + "aa": "afara", + "aaa": "gotua", + "ab": "abĥaza", + "abl": "lampunga", + "abq": "abaza", + "abx": "abaknona", + "ace": "aĉea", + "ady": "adigea", + "ae": "avesta", + "af": "afrikansa", + "afh": "Afrihilio", + "agf": "arguna", + "aie": "vitiaza amara", + "aii": "asiria", + "ain": "ainua", + "ak": "akana", + "akg": "anakalanga", + "akk": "akada", + "akm": "akaboa", + "alp": "aluna", + "alr": "alutora", + "als": "toskalbana", + "alt": "altaja", + "am": "amhara", + "ami": "amisa", + "amk": "ambaja", + "an": "aragona", + "ang": "anglosaksa", + "apw": "apaĉa okcidenta", + "aqc": "arĉia", + "ar": "araba", + "arc": "aramea", + "arn": "mapuĉa", + "arw": "aravaka", + "arz": "araba egipta", + "as": "asama", + "ast": "asturia", + "aua": "asumbua", + "av": "avara", + "avd": "alvirovidara", + "avk": "Kotavao", + "ay": "ajmara", + "az": "azerbajĝana", + "ba": "baŝkira", + "bac": "kanekesa", + "bal": "baluĉa", + "ban": "balia", + "bar": "bavara", + "bbc": "bataktoba", + "be": "belorusa", + "bew": "betava", + "bg": "bulgara", + "bh": "bihara", + "bi": "bislama", + "bin": "edoa", + "bm": "bambara", + "bn": "bengala", + "bo": "tibeta", + "bqi": "baktiara", + "br": "bretona", + "bs": "bosna", + "btx": "karoa", + "bua": "burjata", + "bug": "buĝia", + "bzt": "Brithenigo", + "ca": "kataluna", + "cbk": "ĉavacana", + "ccc": "ĉamikura", + "cdo": "orientmina", + "ce": "ĉeĉena", + "ceb": "cebua", + "ch": "ĉamora", + "cho": "ĉakta", + "chr": "ĉeroka", + "cia": "ĉiaĉiaa", + "cjs": "ŝora", + "cjy": "ĵina", + "ckb": "sorana", + "cmn": "mandarena ĉina", + "co": "korsika", + "cop": "kopta", + "cr": "kria", + "crh": "krime-tatara", + "cs": "ĉeĥa", + "csb": "kaŝuba", + "cu": "malnovslava", + "cv": "ĉuvaŝa", + "cy": "kimra", + "da": "dana", + "de": "germana", + "diq": "zazaa dimlia", + "dlm": "dalmata", + "dsb": "malsuprasoraba", + "dtp": "dusuna", + "dum": "nederlanda mezepoka", + "dv": "maldiva", + "dz": "dzonka", + "ee": "evea", + "egy": "egipta antikva", + "el": "greka", + "en": "angla", + "enm": "meza angla", + "eo": "Esperanto", + "es": "hispana", + "et": "estona", + "eu": "eŭska", + "evn": "evenka", + "ext": "ekstremadura", + "fa": "persa", + "fi": "finna", + "fit": "tornivalfinna", + "fj": "fiĝia", + "fo": "feroa", + "fr": "franca", + "frm": "meza franca", + "fro": "malnovfranca", + "frr": "nordfrisa", + "fur": "friula", + "fy": "frisa", + "ga": "irlanda", + "gag": "gagauza", + "gan": "gana", + "gd": "skotgaela", + "gez": "geeza", + "gil": "kiribata", + "gl": "galega", + "gmh": "mezaltgermana", + "gml": "mezmalaltgermana", + "gn": "gvarania", + "goh": "malnovaltgermana", + "gor": "gorontala", + "got": "gota", + "grc": "greka antikva", + "gsw": "alzaca", + "gu": "guĝarata", + "gv": "manksa", + "ha": "haŭsa", + "hak": "hakaa", + "har": "harara", + "haw": "havaja", + "hbo": "antikva hebrea", + "he": "hebrea", + "hi": "hindia", + "hif": "fiĝia hindia", + "hit": "hitita", + "ho": "hirimotua", + "hr": "kroata", + "hsb": "suprasoraba", + "ht": "haitia", + "hu": "hungara", + "hy": "armena", + "hz": "herera", + "ia": "Interlingvao", + "id": "indonezia", + "ie": "Okcidentalo", + "ifa": "amganadifuga", + "ig": "igba", + "ii": "siĉuana loloa", + "ik": "inupiaka", + "inh": "inguŝa", + "io": "Ido", + "is": "islanda", + "it": "itala", + "itl": "itelmena", + "iu": "inuktituta", + "ja": "japana", + "jbo": "Loĵbano", + "jv": "java", + "ka": "kartvela", + "kaa": "karakalpaka", + "kam": "kambaa", + "kck": "kalanga", + "ket": "keta", + "kg": "konga", + "kge": "komeringa", + "ki": "kikuja", + "kiu": "zazaa kirmanka", + "kj": "kuanjama", + "kjh": "ĥakasa", + "kk": "kazaĥa", + "kkv": "kangeana", + "kl": "gronlanda", + "km": "kmera", + "kn": "kanara", + "ko": "korea", + "koi": "komipermjaka", + "kr": "kanura", + "krc": "karaĉaja-balkara", + "krl": "karela", + "ks": "kaŝmira", + "ktu": "kituba", + "ku": "kurda", + "kum": "kumika", + "kv": "komia", + "kw": "kornvala", + "ky": "kirgiza", + "la": "latina", + "lad": "judhispana", + "lb": "luksemburga", + "lbe": "laka", + "ldn": "Laadano", + "lez": "lezga", + "lfn": "Elefeno", + "lg": "ganda", + "li": "limburga", + "ln": "lingala", + "lo": "laŭa", + "lt": "litova", + "lua": "lubakasa", + "luo": "Luo", + "lus": "miza", + "luy": "luĥja", + "lv": "latva", + "mad": "madura", + "mak": "makasara", + "mdf": "mokŝa", + "mg": "malagasa", + "mh": "marŝala", + "mi": "maoria", + "min": "minankabaŭa", + "mk": "makedona", + "ml": "malajala", + "mn": "mongola", + "mnc": "manĉura", + "mo": "moldava", + "mr": "marata", + "ms": "malaja", + "mt": "malta", + "mui": "musia", + "mul": "translingva", + "my": "birma", + "myv": "erzja", + "na": "naura", + "nah": "naŭatla", + "nan": "minnana", + "nap": "napola", + "nb": "norvega bukmola", + "nci": "klasika naŭatla", + "nd": "norda ndebela", + "nds": "platgermana", + "ne": "nepalia", + "new": "nevara", + "ng": "ndonga", + "niu": "niua", + "nl": "nederlanda", + "nn": "norvega nova", + "nnf": "ngainga", + "no": "norvega", + "nog": "nogaja", + "non": "malnovnordlanda", + "nov": "Novialo", + "nr": "suda ndebela", + "nv": "navaha", + "ny": "njanĝa", + "oc": "okcitana", + "ofs": "malnovfrisa", + "oj": "aniŝinabeka", + "olo": "olonec-karela", + "om": "oroma", + "omy": "malnovmalaja", + "or": "orija", + "orv": "antikva orientslava", + "orw": "orovina", + "os": "oseta", + "osi": "osinga", + "osn": "malnovsunda", + "osx": "malnovsaksa", + "pa": "panĝaba", + "pam": "pampanga", + "pap": "Papiamento", + "pdc": "pensilvanigermana", + "peo": "malnovpersa", + "pfl": "palatinata", + "pi": "palia", + "pl": "pola", + "plm": "palembanga", + "pox": "polaba", + "ppi": "paipaia", + "prg": "prusa", + "ps": "paŝtuna", + "pt": "portugala", + "pzn": "paranaga", + "qu": "keĉua", + "qua": "kvapava", + "quv": "sakapulteka", + "qya": "kvenja", + "qyp": "kviripia", + "raa": "dungmalia", + "rap": "rapanuia", + "rej": "reĝanga", + "rhg": "rohinĝa", + "rm": "romanĉa", + "rn": "burunda", + "ro": "rumana", + "rom": "romaa", + "ru": "rusa", + "rue": "rusina", + "rup": "arumana", + "rut": "rutula", + "rw": "ruanda", + "ryu": "okinava", + "sa": "Sanskrito", + "sah": "jakuta", + "sat": "santala", + "sc": "sarda", + "scn": "sicilia", + "sco": "skota", + "sd": "sinda", + "sdn": "sarda galuresa", + "se": "samea norda", + "sg": "sangoa", + "sga": "malnovirlanda", + "sgs": "ĵemajtia", + "sh": "serbokroata", + "si": "sinhala", + "sio": "Slovio", + "sip": "sikimesa", + "sjn": "sindara", + "sk": "slovaka", + "sl": "slovena", + "sm": "samoa", + "sma": "samea suda", + "sn": "ŝona", + "so": "somala", + "sq": "albana", + "sr": "serba", + "src": "sarda logudoresa", + "ss": "svazia", + "st": "sota", + "stq": "saterfrisa", + "su": "sunda", + "sud": "Solresolo", + "sux": "sumera", + "sv": "sveda", + "sva": "svana kartvela", + "sw": "svahila", + "szl": "silezia pola", + "ta": "tamila", + "tay": "atajala", + "tcs": "toresa kreola", + "te": "telugua", + "tet": "tetuna", + "tg": "taĝika", + "th": "taja", + "ti": "tigraja", + "tig": "tigrea", + "tk": "turkmena", + "tkn": "tokunoŝima", + "tkp": "tikopia", + "tl": "tagaloga", + "tlb": "tobela", + "tld": "talaŭda", + "tlh": "klingona", + "tn": "cvana", + "to": "tongana", + "tok": "Tokipono", + "tpi": "Tokpisino", + "tpw": "tupia antikva", + "tr": "turka", + "ts": "conga", + "tt": "tatara", + "tw": "akankasa", + "ty": "tahitia", + "tyv": "tuva", + "tzl": "talosa", + "tzm": "tamaziĥta", + "udm": "udmurta", + "ug": "ujgura", + "uga": "ugarita", + "uk": "ukraina", + "ur": "Urduo", + "uz": "uzbeka", + "vec": "venecia", + "vep": "vepsa", + "vi": "vjetnama", + "vo": "Volapuko", + "vor": "vora", + "vro": "voroa", + "wa": "valona", + "wam": "masaĉuseca", + "war": "varaja", + "win": "vinebaga", + "wls": "valisa", + "wo": "volofa", + "wrh": "viraĝura", + "wuu": "vua", + "wym": "vilamovica", + "xal": "kalmuka", + "xbo": "bolgara", + "xh": "kosa", + "xlc": "likia", + "xmm": "malaja manada", + "xno": "anglonormanda", + "xsr": "ŝerpa", + "xto": "orientotokaria", + "xum": "umbra", + "yaq": "jakia", + "yi": "jida", + "yo": "joruba", + "yrk": "neneca", + "ysr": "sirenika", + "yua": "jukatanmajaa", + "yue": "kantona", + "za": "ĝuanga", + "ze": "ligura", + "zh": "ĉina", + "zsm": "malajzia", + "zu": "zulua", + "zun": "zuna", + "zza": "zazaa", + "zzj": "zuoĵiangzuanga", +} # 411 +# END diff --git a/wikidict/lang/eo/tags.py b/wikidict/lang/eo/tags.py new file mode 100644 index 000000000..284acab69 --- /dev/null +++ b/wikidict/lang/eo/tags.py @@ -0,0 +1,59 @@ +""" +List of tags. +Auto-generated with `python -m scripts`. +""" + +# START +tags = { + "ARAB": "araba cifero", + "ASKI": "askia signo", + "ASKL": "askia litero", + "BILD": "bilda signo", + "CIRI": "cirila litero", + "CNKO": "cxina signo komuna", + "CNSI": "cxina signo simpligita", + "CNTR": "cxina signo tradicia", + "GRKO": "greka aux kopta signo", + "IFAS": "IFA-signo", + "JAKA": "japana signo kanjxia", + "KEMSI": "kemia simbolo", + "LATI": "latina litero", + "MATE": "matematika signo", + "MATSI": "matematika simbolo", + "ROMA": "roma cifero", + "TIBE": "tibeta signo", + "VALSI": "simbolo de valuto", + "VALU": "signo de valuto", + "VDT": "duoble transitiva verbo", + "VIT": "netransitiva", + "VOD": "transitiva verbo kaj objekto deviga", + "VRF": "refleksiva formo", + "VRG": "nepre refleksiva verbo", + "VRH": "kvazauxnepre refleksiva verbo", + "VTR": "transitiva", + "ajly": "-ly", + "avaÅ­": "-aux", + "bas": "baza vortoprovizo", + "deta": "derivajxo de tabelvorto", + "dyna": "loka dinamika", + "idi": "idioma vortgrupo", + "kofr": "kofrovorto", + "kole": "kolektiva", + "lokn": "loknomo", + "miks": "miksajxo", + "nutr": "utruma(n)", + "onom": "onomatopeo", + "par": "idioma vortoparo", + "pers": "persona nomo", + "plen-inv": "vorto de la plena inventaro de Kotapedia", + "plpl": "nurplurala", + "prov": "proverbo", + "sapl": "samformplurala", + "senk": "sen komparado", + "sing": "nursingulara", + "sla": "slanga", + "stat": "loka statika", + "tneu": "neuxtruma(t)", + "vul": "vulgara", +} # 50 +# END diff --git a/wikidict/lang/eo/template_handlers.py b/wikidict/lang/eo/template_handlers.py new file mode 100644 index 000000000..1e61fee15 --- /dev/null +++ b/wikidict/lang/eo/template_handlers.py @@ -0,0 +1,243 @@ +from collections import defaultdict + +from ...user_functions import concat, extract_keywords_from, italic, small, strong, superscript, term +from .langs import langs +from .tags import tags + + +def render_deveno3(tpl: str, parts: list[str], data: defaultdict[str, str], word: str = "") -> str: + """ + >>> render_deveno3("deveno3", ["eo", "egy", "Aa"], defaultdict(str, {"sg": "granda"})) + 'la egipta antikva vorto " Aa " → egy (= granda)' + >>> render_deveno3("deveno3", ["eo", "egy", "Aa"], defaultdict(str, {"sg": "-"})) + 'la egipta antikva vorto " Aa " → egy' + >>> render_deveno3("deveno3", ["en", "ang", "bridd"], defaultdict(str)) + 'la anglosaksa vorto " bridd " → ang' + """ + parts.pop(0) # Remove the source lang + lang = parts.pop(0) + phrase = f'la {langs[lang]} vorto " {strong(parts.pop(0))} "' + if lang != "grc": + phrase += f" {superscript('→ ' + lang)}" + if (sg := data["sg"]) not in {"", "-"}: + phrase += f" (= {sg})" + return phrase + + +def render_elpropra(tpl: str, parts: list[str], data: defaultdict[str, str], word: str = "") -> str: + """ + >>> render_elpropra("elpropra", ["eo", "P", "Albert Einstein"], defaultdict(str, {"not": "fizikisto"})) + 'la nomo de persono "Albert Einstein" (fizikisto)' + >>> render_elpropra("elpropra", ["eo", "-", "testo"], defaultdict(str, {"wpl": "-"})) + 'la nomo "testo"' + >>> render_elpropra("elpropra", ["eo", "P", "Юрий Цолакович Оганесянz"], defaultdict(str, {"wpl": "-", "ts": "Juri Zolakowitsch Oganessia"})) + 'la nomo de persono "Юрий Цолакович Оганесянz" Juri Zolakowitsch Oganessia' + """ + parts.pop(0) # Remove the source lang + phrase = "la nomo " + + match parts.pop(0): + case "L": + phrase += "de lando/regno " + case "M": + phrase += "de mita estaĵo " + case "P": + phrase += "de persono " + case "R": + phrase += "de rivero " + case "T": + phrase += "de monto " + case "U": + phrase += "de urbo " + case "V": + phrase += "de provinco " + + phrase += f'"{parts.pop(0)}"' + + if ts := data["ts"]: + phrase += f" {italic(ts)}" + + if special := data["not"]: + phrase += f" {small('('+special+')')}" + + return phrase + + +def render_form(tpl: str, parts: list[str], data: defaultdict[str, str], word: str = "") -> str: + """ + Souce: https://eo.wiktionary.org/w/index.php?title=Modulo:meoformo&oldid=1027456 + Date : 2021-12-19 22:43 + + >>> render_form("form-eo", [], defaultdict(str), word="ekamus") + 'ekami' + >>> render_form("form-eo", [], defaultdict(str), word="hispanan") + 'hispana' + >>> render_form("form-eo", [], defaultdict(str), word="surdaj") + 'surda' + >>> render_form("form-eo", [], defaultdict(str), word="inexistant") + 'inexistant' + """ + for suffix, last_char in [ + ("on", "o"), + ("oj", "o"), + ("ojn", "o"), + ("an", "a"), + ("aj", "a"), + ("ajn", "a"), + ("as", "i"), + ("is", "i"), + ("os", "i"), + ("us", "i"), + ("u", "i"), + ]: + if word.endswith(suffix): + return f"{word.removesuffix(suffix)}{last_char}" + return word + + +def render_g(tpl: str, parts: list[str], data: defaultdict[str, str], word: str = "") -> str: + """ + >>> render_g("g", ["nm"], defaultdict(str)) + 'neŭtra, vira' + """ + return { + "m": italic("vira"), + "f": italic("ina"), + "n": italic("neŭtra"), + "u": italic("komuna"), + "mf": italic("vira, ina"), + "nm": italic("neŭtra, vira"), + }.get(parts[0], parts[0]) + + +def render_hebr(tpl: str, parts: list[str], data: defaultdict[str, str], word: str = "") -> str: + """ + >>> render_hebr("Hebr", ["בַּיִת כְּנֶסֶת"], defaultdict(str, {"d-heb": "bayiṯ kenæsæt", "b": "domo por renkontiĝo"})) + 'בַּיִת כְּנֶסֶת, CHA bayiṯ kenæsæt, „domo por renkontiĝo“' + >>> render_hebr("Hebr", ["שול"], defaultdict(str, {"d-yid": "shul", "b": "(Religions)"})) + 'שול, YIVO shul, „(Religions)“' + >>> render_hebr("Hebr", ["אסנוגה"], defaultdict(str, {"d-lad": "esnoga", "b": "Sinagogo, preĝejo"})) + 'אסנוגה, esnoga, „Sinagogo, preĝejo“' + """ + phrase = parts.pop(0) + if heb := data["d-heb"]: + phrase += f", CHA {italic(heb)}" + elif yid := data["d-yid"]: + phrase += f", YIVO {italic(yid)}" + elif lad := data["d-lad"]: + phrase += f", {italic(lad)}" + if b := data["b"]: + phrase += f", „{b}“" + return phrase + + +def render_k(tpl: str, parts: list[str], data: defaultdict[str, str], word: str = "") -> str: + """ + >>> render_k("k", ["mul", "astrologio"], defaultdict(str)) + '(astrologio)' + >>> render_k("k", ["eo", "arkitekturo", "% pri tempo kiel objekto"], defaultdict(str)) + '(arkitekturo; pri tempo kiel objekto)' + >>> render_k("k", ["eo", "S: % iomete-", "arkitekturo"], defaultdict(str)) + '(iomete arkitekturo)' + >>> render_k("k", ["eo", "T: ASKI.", "MATSI.", "F: historio", "arkitekturo", "S: % poezia", "S: vulgara", "C: % nepiva", "C: & nepiva"], defaultdict(str)) + '(askia signo; matematika simbolo; historio; arkitekturo; poezia; vulgara; nepiva; nepiva)' + >>> render_k("k", ["eo", "G: VTR."], defaultdict(str)) + '(transitiva)' + >>> render_k("k", ["eo", "G: VIT.-", '% kun prepozicio "pri"', "% eĉ-", "VTR.", "C: % celante senvivaĵon aŭ abstraktaĵon"], defaultdict(str)) + '(netransitiva kun prepozicio "pri"; eĉ transitiva; celante senvivaĵon aŭ abstraktaĵon)' + """ + raw_themes = [] + current_type = "" + any_is_prefix = False + + for part in parts[1:]: # Skip the lang + if ":" in part: + current_type, part = part.split(":") + + part = part.strip().replace("% ", "").replace("& ", "") + + if is_prefix := part.endswith("-"): + part = part.removesuffix("-") + any_is_prefix = True + + match current_type: + case "": + pass + case "C" | "F" | "S": + part = tags.get(part, part) + case "G" | "T": + part = tags.get(part.removesuffix("."), part) + case _: + assert 0, f"Unhandled `k` type {current_type!r}" + + if is_prefix: + part += "-" + raw_themes.append(part) + + if any_is_prefix: + # Merge items: when an item ends with a dash, then it must be concat with the next item in the list + themes = [] + idx = 0 + while idx < len(raw_themes): + if raw_themes[idx].endswith("-"): + themes.append(f"{raw_themes[idx].removesuffix('-')} {raw_themes[idx + 1]}") + idx += 1 + else: + themes.append(raw_themes[idx]) + idx += 1 + else: + themes = raw_themes + + return term(concat(themes, sep="; ")) + + +def render_t(tpl: str, parts: list[str], data: defaultdict[str, str], word: str = "") -> str: + """ + >>> render_t("t", ["id", "roti"], defaultdict(str)) + 'roti → id' + >>> render_t("t", ["id", "roti", "nm"], defaultdict(str)) + 'roti → id neŭtra, vira' + >>> render_t("t", ["grc", "ὄνομα", "n"], defaultdict(str, {"ts": "ónuma", "not": "kvin literoj"})) + 'ὄνομα neŭtra ónuma (kvin literoj)' + >>> render_t("t", ["ja", "脱出する"], defaultdict(str, {"sa": "だっしゅつする", "ts": "dasshutsu suru"})) + '脱出する → ja aŭ だっしゅつする → ja dasshutsu suru' + """ + lang = parts.pop(0) + phrase = parts.pop(0) + if lang != "grc": + phrase += f" {superscript('→ ' + lang)}" + if parts: + phrase += f" {render_g('g', [parts.pop(0)], defaultdict(), word=word)}" + + if other := data["sa"]: + phrase += f" aŭ {other} {superscript('→ ' + lang)}" + if trans := data["ts"]: + phrase += f" {italic(trans)}" + else: + if trans := data["ts"]: + phrase += f" {italic(trans)}" + if note := data["not"]: + phrase += f" ({small(note)})" + + return phrase + + +template_mapping = { + "deveno3": render_deveno3, + "elpropra": render_elpropra, + "form-eo": render_form, + "g": render_g, + "Hebr": render_hebr, + "k": render_k, + "t": render_t, +} + + +def lookup_template(tpl: str) -> bool: + return tpl in template_mapping + + +def render_template(word: str, template: tuple[str, ...]) -> str: + tpl, *parts = template + data = extract_keywords_from(parts) + return template_mapping[tpl](tpl, parts, data, word=word) diff --git a/wikidict/namespaces.py b/wikidict/namespaces.py index 2fc0a42dc..a0d8b8d84 100644 --- a/wikidict/namespaces.py +++ b/wikidict/namespaces.py @@ -10,6 +10,7 @@ "de": ["Bild", "Datei", "Image", "Kategorie"], "el": ["Image", "Αρχείο", "Εικόνα", "Κατηγορία"], "en": ["CAT", "Category", "File", "Image"], + "eo": ["Dosiero", "Image", "Kategorio"], "es": ["Archivo", "Categoría", "Image", "Imagen"], "fr": ["Catégorie", "Fichier", "Image"], "it": ["Categoria", "File", "Image", "Immagine"], diff --git a/wikidict/render.py b/wikidict/render.py index e9834d7f6..d44693e76 100644 --- a/wikidict/render.py +++ b/wikidict/render.py @@ -176,6 +176,8 @@ def get_items(patterns: tuple[str, ...], *, skip: tuple[str, ...] | None = None) items = get_items((": ",)) case "en": items = get_items(("",), skip=("===etymology", "{{pie root")) + case "eo": + items = get_items((":",)) case "es": items = get_items((r";\d",), skip=("=== etimología",)) case "fr": @@ -456,6 +458,29 @@ def adjust_wikicode(code: str, locale: str) -> str: # Remove tables (cf issue #2073) code = re.sub(r"^\{\|.*?\|\}", "", code, flags=re.DOTALL | re.MULTILINE) + elif locale == "eo": + # Wipe out {{Deklinacio-eo}} + code = code.replace("{{Deklinacio-eo}}", "") + + # For variants + # {{form-eo}} → # {{form-eo}} + code = code.replace("{{form-eo}}", "# {{form-eo}}") + + # {{xxx}} → ==== {{xxx}} ==== + # {{xx-x}} → ==== {{xx-x}} ==== + code = re.sub(r"^(\{\{[\w\-]+\}\})", r"==== \1 ====", code, flags=re.MULTILINE) + + # ===={{Tradukoj}}==== → =={{Tradukoj}}== + code = re.sub( + r"====\s*(\{\{(?:Ekzemploj|Derivaĵoj|Referencoj|Sinonimoj|Tradukoj|Vortfaradoj|trad-\w+)\}\})\s*====", + r"== \1 ==", + code, + flags=re.MULTILINE, + ) + + # Easier pronunciation + code = re.sub(r"==== {{Vorterseparo}} ====\s*:(.+)\s*", r"\n{{PRON|`\1`}}\n", code, flags=re.MULTILINE) + elif locale == "es": # {{ES|xxx|núm=n}} → == {{lengua|es}} == code = re.sub(r"^\{\{ES\|.+\}\}", r"== {{lengua|es}} ==", code, flags=re.MULTILINE) @@ -551,7 +576,10 @@ def parse_word(word: str, code: str, locale: str, force: bool = False) -> Word: definitions = find_definitions(word, parsed_sections, locale) elif locale in {"no", "pt"}: # Some words have no head sections but only a list of definitions at the root of the "top" section - marker = "===" if locale == "no" else "==" + marker = { + "no": "===", + "pt": "==", + }[locale] for top in top_sections: contents = top.contents top.contents = contents[: contents.find(marker)]