From 13990c830bb810062e93d91606cfe088a6a4468a Mon Sep 17 00:00:00 2001 From: LSTM-Kirigaya <1193466151@qq.com> Date: Thu, 14 Nov 2024 16:19:06 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=20xilinx=20=E5=8E=9F?= =?UTF-8?q?=E8=AF=AD=E9=80=82=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- l10n/bundle.l10n.de.json | 3 +- l10n/bundle.l10n.en.json | 3 +- l10n/bundle.l10n.ja.json | 3 +- l10n/bundle.l10n.zh-cn.json | 3 +- l10n/bundle.l10n.zh-tw.json | 3 +- package.json | 100 ++++++++++-------- package.nls.de.json | 45 +++++++- package.nls.ja.json | 45 +++++++- package.nls.json | 45 +++++++- package.nls.zh-cn.json | 47 +++++++- package.nls.zh-tw.json | 45 +++++++- .../dide-lsp/static/xilinx/primitive.bin | Bin 0 -> 3736879 bytes script/command/make_title_token.py | 36 +++++-- snippets/sdc.json | 8 -- snippets/svlog.json | 68 ------------ src/extension.ts | 32 +++--- src/function/dide-viewer/api.ts | 1 + src/function/dide-viewer/index.ts | 10 +- src/function/lsp-client/config.ts | 47 ++++++++ src/function/lsp-client/index.ts | 11 +- src/function/lsp/completion/vhdl.ts | 12 +-- src/function/lsp/completion/vlog.ts | 12 +-- src/function/lsp/util/index.ts | 29 +++-- src/function/tool.ts | 7 ++ src/function/treeView/index.ts | 2 +- src/function/treeView/tree.ts | 8 +- src/global/lsp.ts | 24 ++++- src/hdlParser/core.ts | 64 +++++++---- src/hdlParser/util.ts | 36 +++++-- 29 files changed, 526 insertions(+), 223 deletions(-) create mode 100644 resources/dide-lsp/static/xilinx/primitive.bin create mode 100644 src/function/lsp-client/config.ts diff --git a/l10n/bundle.l10n.de.json b/l10n/bundle.l10n.de.json index 1188a99..c34e26c 100644 --- a/l10n/bundle.l10n.de.json +++ b/l10n/bundle.l10n.de.json @@ -27,5 +27,6 @@ "info.level.test": "Dies ist ein einfaches Beispiel", "info.progress.build-ip-module-tree": "构建 IP 模块树", "info.treeview.ip-no-active.message": "当前 IP 还未激活,请通过 Xilinx 工具链将 XCI 文件生成完整的 IP 核", - "info.progress.initialize-configure": "初始化项目配置" + "info.progress.initialize-configure": "初始化项目配置", + "info.treeview.item.tooltip": "can't find the module of this instance" } \ No newline at end of file diff --git a/l10n/bundle.l10n.en.json b/l10n/bundle.l10n.en.json index b3ef89f..4b965f3 100644 --- a/l10n/bundle.l10n.en.json +++ b/l10n/bundle.l10n.en.json @@ -27,5 +27,6 @@ "info.level.test": "This is a simple example", "info.progress.build-ip-module-tree": "构建 IP 模块树", "info.treeview.ip-no-active.message": "当前 IP 还未激活,请通过 Xilinx 工具链将 XCI 文件生成完整的 IP 核", - "info.progress.initialize-configure": "初始化项目配置" + "info.progress.initialize-configure": "初始化项目配置", + "info.treeview.item.tooltip": "can't find the module of this instance" } \ No newline at end of file diff --git a/l10n/bundle.l10n.ja.json b/l10n/bundle.l10n.ja.json index ddb0d55..1e47086 100644 --- a/l10n/bundle.l10n.ja.json +++ b/l10n/bundle.l10n.ja.json @@ -27,5 +27,6 @@ "info.level.test": "これは簡単な例です", "info.progress.build-ip-module-tree": "构建 IP 模块树", "info.treeview.ip-no-active.message": "当前 IP 还未激活,请通过 Xilinx 工具链将 XCI 文件生成完整的 IP 核", - "info.progress.initialize-configure": "初始化项目配置" + "info.progress.initialize-configure": "初始化项目配置", + "info.treeview.item.tooltip": "can't find the module of this instance" } \ No newline at end of file diff --git a/l10n/bundle.l10n.zh-cn.json b/l10n/bundle.l10n.zh-cn.json index aab56f5..19b4661 100644 --- a/l10n/bundle.l10n.zh-cn.json +++ b/l10n/bundle.l10n.zh-cn.json @@ -27,5 +27,6 @@ "info.level.test": "这是一个简单的样例", "info.progress.build-ip-module-tree": "构建 IP 模块树", "info.treeview.ip-no-active.message": "当前 IP 还未激活,请通过 Xilinx 工具链将 XCI 文件生成完整的 IP 核", - "info.progress.initialize-configure": "初始化项目配置" + "info.progress.initialize-configure": "初始化项目配置", + "info.treeview.item.tooltip": "无法找到当前实例的模块" } \ No newline at end of file diff --git a/l10n/bundle.l10n.zh-tw.json b/l10n/bundle.l10n.zh-tw.json index 6031860..14ca278 100644 --- a/l10n/bundle.l10n.zh-tw.json +++ b/l10n/bundle.l10n.zh-tw.json @@ -27,5 +27,6 @@ "info.level.test": "這是一個簡單的樣例", "info.progress.build-ip-module-tree": "构建 IP 模块树", "info.treeview.ip-no-active.message": "当前 IP 还未激活,请通过 Xilinx 工具链将 XCI 文件生成完整的 IP 核", - "info.progress.initialize-configure": "初始化项目配置" + "info.progress.initialize-configure": "初始化项目配置", + "info.treeview.item.tooltip": "can't find the module of this instance" } \ No newline at end of file diff --git a/package.json b/package.json index 3fc9d3c..67791f5 100644 --- a/package.json +++ b/package.json @@ -43,133 +43,134 @@ "digital-ide.welcome.show": { "type": "boolean", "default": true, - "description": "show the welcome text in Digital-IDE" + "description": "%digital-ide.welcome.show.title%" }, "digital-ide.dont-show-again.propose.issue": { "type": "boolean", "default": false, - "description": "show the welcome text in Digital-IDE" + "description": "%digital-ide.dont-show-again.propose.issue.title%" }, "digital-ide.lib.custom.path": { "type": "string", "default": "", - "description": "path of the dictionary of \"custom\" in library" + "description": "%digital-ide.lib.custom.path.title%" }, "digital-ide.prj.file.structure.notice": { "type": "boolean", "default": true, - "description": "notice when change file structure" + "description": "%digital-ide.prj.file.structure.notice.title%" }, "digital-ide.prj.vivado.install.path": { "type": "string", - "default": "", - "description": "Set the xilinx install path. Ignore this setting if you add relative path to environment variable PATH \n e.g. : D:/APP/vivado_18_3/Vivado/2018.3/bin \n Default path is C:/Xilinx/Vivado/2018.3/bin" + "default": "C:/Xilinx/Vivado/2018.3/bin", + "description": "%digital-ide.prj.vivado.install.path.title%" }, "digital-ide.prj.modelsim.install.path": { "type": "string", - "default": "", - "description": "set the modelsim install path. Ignore this setting if you add relative path to environment variable PATH \n Default path is C:/modeltech64_10.4/win64" + "default": "C:/modeltech64_10.4/win64", + "description": "%digital-ide.prj.modelsim.install.path.title%" }, "digital-ide.prj.xilinx.IP.repo.path": { "type": "string", "default": "", - "description": "User-designed IP libraries from xilinx After configuring this property, the plugin will automatically add the path to the IP repo of vivado." + "description": "%digital-ide.prj.xilinx.IP.repo.path.title%" }, "digital-ide.prj.xilinx.BD.repo.path": { "type": "string", "default": "", - "description": "User-defined placement path for xilinx block design files" + "description": "%digital-ide.prj.xilinx.BD.repo.path.title%" }, "digital-ide.prj.xsdk.install.path": { "type": "string", - "default": "" + "default": "", + "description": "%digital-ide.prj.xsdk.install.path.title%" }, "digital-ide.function.doc.webview.backgroundImage": { "type": "string", "default": "", - "description": "url of the background image" + "description": "%digital-ide.function.doc.webview.backgroundImage.title%" }, "digital-ide.function.doc.pdf.scale": { "type": "number", "default": 1, - "description": "scale of the exported pdf" + "description": "%digital-ide.function.doc.pdf.scale.title%" }, "digital-ide.function.doc.pdf.printBackground": { "type": "boolean", "default": true, - "description": "whether print background" + "description": "%digital-ide.function.doc.pdf.printBackground.title%" }, "digital-ide.function.doc.pdf.landscape": { "type": "boolean", "default": false, - "description": "whether export pdf as a landscape style" + "description": "%digital-ide.function.doc.pdf.landscape.title%" }, "digital-ide.function.doc.pdf.format": { "type": "string", "default": "A4", - "description": "format of pdf size" + "description": "%digital-ide.function.doc.pdf.format.title%" }, "digital-ide.function.doc.pdf.displayHeaderFooter": { "type": "boolean", "default": false, - "description": "display header and footer in the exported pdf" + "description": "%digital-ide.function.doc.pdf.displayHeaderFooter.title%" }, "digital-ide.function.doc.pdf.browserPath": { "type": "string", "default": "C:/Program Files (x86)/Microsoft/Edge/Application/msedge.exe", - "description": "the absolute path of edge or chrome, we need browser to render pdf" + "description": "%digital-ide.function.doc.pdf.browserPath.title%" }, "digital-ide.function.doc.pdf.margin.top": { "type": "number", "default": 0.5, - "description": "top margin of exported pdf, unit cm" + "description": "%digital-ide.function.doc.pdf.margin.top.title%" }, "digital-ide.function.doc.pdf.margin.right": { "type": "number", "default": 0.5, - "description": "top margin of exported pdf, unit cm" + "description": "%digital-ide.function.doc.pdf.margin.right.title%" }, "digital-ide.function.doc.pdf.margin.bottom": { "type": "number", "default": 0.5, - "description": "top margin of exported pdf, unit cm" + "description": "%digital-ide.function.doc.pdf.margin.bottom.title%" }, "digital-ide.function.doc.pdf.margin.left": { "type": "number", "default": 0.5, - "description": "top margin of exported pdf, unit cm" + "description": "%digital-ide.function.doc.pdf.margin.left.title%" }, "digital-ide.function.doc.pdf.headerTemplate": { "type": "string", "default": "
rKtJ8&_7vbY@0$MAWq_5sJ!; ztcvZ(jGTzf?ygZw0t76#xNi`*#3?|?kYOM|7`K6eVSo&QFaZVz#wG3>zVG+rxxeR; zXLwi7Y(LAF|9da~!`+|1|Ns5^{m(2F 3=f zIyxGij@}>k)q~>gUw-3_J9iR?B1!Hi&EsS;Js3`t(@8Qq-k(fQCey*`FgblWnk9#4 z$NQ(F$uWMx&!;bk$-!_odU3o=MoIE`I30~AFK`7${Pl1$9#1|P9lrp<>~wIvPlEmN z036BXcsM+mQP6WFZ#>u^9ta Bc+}2LRUV!X@kW%)@#uKS-@g9F8%U8~749ds z@nrwKq&|9obTCYwze-ALQYs1Fqm f$EbOcEsCJ*a7 z$qtI?Z17^3^oB=x !AyTP>}YB`MC!O1@Mi7aXgo*3EjO)2}ynD$k0g z+f4D^+0k> zmnjq?R0$kt0jji3l4|u%w^x+^7Qg%Ic>m>eay&Vkp$g1~r|R`tlAU*&dlb>!yG;pF z?vi$S%aTHTnCgcH-|t~Q!K%8Sj^s0X 7poCwT8R__S|rQG zpnhKe;Jhm-%m9le;{GtsAHn(EI1P`bAHod}@6|4upG*Ad3pl@5!=D6PB9oucCz)w2 zS6KQU-0+as=il-1kK!aFLY^rGU!s49p9?>RllX)_KHpu6&pV(LejF$935m~4Gi^+( zNg6Kgy?G0$)2Pq2UT5bgnH?M#C~Q=Xl;(yS+tt}OQQ1kVfvF*{r?V4R2UBUM*}Rs{ zPExJCAf=5&T~2G)hvOlPChW`p 2xwq8sj08loWTh$vB(Abm5&LZ@*zIJT0IYN5xGm zB-A~7eDHF3oEXyW=F>)<`F&jJG%MAeMshkhSy4(D^?7(Zz~J#{dOG}YW#i7K{_)C& zBF(AuNn~_-r~a&nQ|V_U9xA=G@_cj( c@wG*(#) z6^sCMh|=eH;81z`pB|U`Su6H5{VLG`y}k&wo>w(W(WL*4%B7a(kxAG&43?;%e*q`; zo~MtEVn*RFIoCiFLqJ_gT~3ipyy2k=K6A?-s8NYTNJ%M2=x)os+rv+u<|cQhkSL^c zHL 9G>&|@Z_k!f3V-5!BZFy|8Hgr$9dYAU-i@WZogKqX$7cla&oHu8@RyJq$>=i z(i!hy^ewn8_}&gjFV2)VEdE`GJ|n$Ix}|WmUO hSPt9+)SY|=m4G$o{!=E zO{Omf$0&@0WPs*{G#6&~S*%~BXZo=pU!~}ek~FbwPvDc~@ljGAoDP!HS10C)JnRf- zr_+%%i)PEo=r9?aoQy~N%$|^4_TNV$`eV;A1uD_760`m3=tP=kmreCe@kI1%eAlm0 zH0o2M+v|6q?bZ6*+qNJ-g3Uf1zQBj#93LeeHZboe UjOtEN!z*hc8AmssywtUqFS4GXdo{(@iMog@oM;12%z0C8E3GbabqG50oK3 zm>dm8#~0=PbyqXI)V=1V-! k)qCu_?|DgVk*3obZb|GQpWLHl_oy72k% z<>37hI+MnDr$=XK{Hu;6^hpiIqi?BO$#HRZJ3)s)S_{-~rnby3$hXQhoV=uQ{P9Xo zUVk;~Hh24#Znx3t^=l8`(e-1FO8JhgW=`EYVgm}U#&pOIKKNj($*y|Do*DK&sSdlz zDV!u!!sKW)g9<`77y8`T21Cc5qD5y~?o-QEvqechSE?lA6Hv`MwSIH2{ixUPG#;3u zxnwmfEhhm31_gJ)p$hzUI!M%J6R8 oj*l0 sq&6faffxPzDA}th9JDA#qBDjEFp;<$e)9~q_8`OI^;a`B4yBs`?A~D4$aUKR zncU60eXW{LdLZOovx8V2A0;j6r{vv7mwwl#!lZ9q(SKs!wKAiQ=dV1p^WS)n mx(Qf5>JFtSoEZdG3|5uc1|1~ YcEpwx>| zlgZ`!l1u^4hp+WrOK-bBl!39v<_)Ixxbu3zirV;k6MMW-VsO%(dRLs< MvKpx<3lEwndQ?S4+m&8q;rn=mM{{5$w*U76A2F#4Gs>_`!-Si zt8lH3R7V?{Eu_XUQlbXGW>+7B_Fu{Uc|&0Sz^@&4kpZFI!TxlT&JQZDmCJg5kk8zm zBII OS<9(wZ6Yb-QJYYdMOww-0pprPI4JI>zX+>YGK! z?At@t%NRy5a{PWdk>sW +y!+l3eY57X1gh*Rin;T($F2^CQbTI z%;Yx5?Kn40riiuilinW1*BR^AoF_7VHW;I}nHE*h&nUS}N5_5-5^|>IC}^hFFk `Tmx&5BOsTC(}*%(>Q%3RN>qMAQc|rBo(1heIG7(==#5u zx#v%hagv5m63!bQ%AdD0I@B$Hc!HBigq(@NH_BNW%&9v|!`z!WD4oh~Y3pgJ+b{j5 ze(C4U(7>0J64035#1Ts8H{ZkyQXd@pY?++vxj^phX81p84zK0=a2_=h!{jW&@wvIz zb2*pi3KN^t0=l1+wvrFggK~@^cJ_RIFvVP&1XdoCIG&$zNT|5;2vfO0LKTYo;~w S>Tx>w(s%JGj>?*I$p`KnYt98ve=a$f#H4&$3ql{W zoMM*oqu6I+(oXxB>nY|sF=?lWNhp{mKXsd*I(`!4O*|TL$&V>Q);wFDydgF%Cb0=Q z^Uw-?(r_;EL*Zv|5|fbf&5UuDvugp({b%u XG? MVFZK>VIDC8L@F3L>D4*LyM)5DHE%e3$==4Y*9fzWU;T~5?ZTb8=y zEhhUe)Ci8Aj3W%zS1{x2bhw(w*K@*~%{$HJN}KKfE_@O!9a~wyj?G1NCz;J)dX=%A z?-t)R<^~2rvag2}ilz_eKn8U&0hiNrCnqc8;rqj}tR0i)GQ_Ob)`~T4V8LY#JykEJ zL#z(-*Y^l!saVtY6_}-a=i)YswT4O^a8+q$jTd>=*NXL2dV7Ld{cv#dR GMg z+7Zg*b&4IQO!%J9S=ZDpcIP0U1Xe-yigva vU-2O(KF`ln~ZFdbGlZk z-t@n*6{aQVCu}~s%$NT;@G;iZpe`AX@1|E2M*~hPLFif2T53&e(n@vb$a|KrmRi%A zG&ASg-CAm+Y7GdSZ+Gjd^two=y=6LccDJ5NuZ#4#cDG}5-l1&TTXM8^*OXA#;&qAV zT3jh1gV(covM#{2x5T4$W{cC ONbxV qi<}8PkQd($BTFR$MQuCZ{wzr2)lX zWC;n^N3A)nPB2 kgSTjnj&mF6(Wr6 7*vhnd1rZJ24B~pRm1*$`BAUBC; N zKf*?~8K3$jrcc5Yy={22 H!^?Iy)XT;CoPziHtrzQa%H6|@-h<%O$7uZrSwp4F zRQli8LplXKj7|{!oh6o@1NNe`sm+$IY3U#&lEzqzYNfbVr6(9_8fmgW+=u1 i4wH_j_8Y-_r{FJ*HozmG)t@$`I;# zKAtDnO8YQc>%??@9}hFv*W!9VK4zNEilmeN4_zHXA2Us7MbgP4BPOAbnWnQM>HK+( zN$6v4*rKg$;73_YN}gPP>0#zP&ff+MViNk8X^xb~nP^NxA2ZESU2^nAjY;TZra7uh zj&5m8LcuiONw8PwOB$Pyey7cJu2<;G8k3NGO|KAZr0(y*m8zk }(EIZWv)D)bN&6)ylXPE>4iP(G^kQ_1u?W@gusb-$lA38!8%_7mMyJ{ M^E_EVEkI+0*m z8(`W$ ~tHqR1$ifM~yr3fMmLd1!-;WVbIIO_Bs7vk{k{PTv6_%32fVqPP0`nvLF<@?#Xa} zboeSkh@;U&g40NawOw4vF_v*l7FWxglvqORVs*_er508VwI5cxjehrGbGui(wb$A+ zskQ8-0?woYLX{zs#$iIV d(pbSkkihjG*ZT6av!N5MMHTHUq4qs!v z*=f{zPR{$=jYhp%sl8LYReH*T R&ReoytNL6lhwp*Ru z%3iI}-)*4=-`cG_?RVQ?uiuZZBK9$P@TODQd(g0~8r^pqPx_VmHy$C>#I5eLZm+Q` zD~BI;T6?WWUCpf9deng=E-BVOp#L<73=x`froiUhBJT<6uwRAO =hm)t>3B?zEohbUkc7c*u<532F!C#UL!!D^4y`0SnScm@0&sI0&p|bH1~44qxzF zPRN{r1mvQRrH>&I^_?Bd@=@ ;)D%>qUp0hKkTo{6H}9 zODeMcp%TPAs;JKnlDeSY9E6eZ-D*kg_$31w$3Vmk6b>%$Cgdl@u@ z_PgSHK;WM{b)Qmab(?usS#`3>;_(=m%+_1QdOGDmy?wsLEeUnPcD{b?(x+sci_Xxm zd$P)}SnsrLl34v3^`ZjlTV`hXjNt-K5naviKxubbiHiz2MB1fM-^}3PHyHEiU~&wT z;zj;p(N(1YtD0E70m$?fzR5fYY#=vN^^tkyCMly>l#jDneYE{xIpKe559GpTwA}?4 zBpLrbp`kRZRCt{i?QUZa)Qvq$tkN7J&yKC&ZLPMu&Al3C$AX8t03X)65Itf+!r#PX zlslMwq^?X!Fb19*{)iQUY*2Iq)SG#uMx1X!7C_a5JD@-lMk$y;XUQU_TKKIc)pAPz zn~oBW4)Aai =FI|nHkS7B-9-n$_lk!S%}c>2obr=JP&z?88&%$U8+La<^+F0aZ$#^L;|(>?dK(AWU#B@xAe=hy0un2e%)E zy$(xeI#KG|coT)_tx!OMladKp2219%aa
yLp_U_B;(!Yux_my7MEKq-6`C-Dihxe%|y&4oMwVqqC4sR$((rbo2i zvK?e~&V??l;3OuY^tSPahjJ3^dr-IhVHGEl2)#F_JOoRjZh=&|gOe15**CXcb<1eG z3X}p1miUC(G73cqr6MOjp@%OHfaNcDKq;_8lK6yz&x+22Cg0X=-tgf%PGS>E-8R+6 z7 *@A^XKYkCQ0;22FLsrM)LE4|+be#&2qF z7xqjl^aRIuX4j<3-?vlO z?F~Jt%VLEb^k%Usvz9HAW@TFexjD;jiXywvN|gG<)Bj8Q()a>Sf_!~oNyL|?+enX% zD$b~#CBrK-znI#Mya*}Anu^@)C3*$KBowP*I5sWsCVmp_N<3;=ax|KaDRMQNxhF3k zT>evQ?QJ(7^dE11r1N)yg7avuq2o@`hx8o%XD^c?V^rydYlxC}TSws!F4vu2ClEh+ z{Ls{9cp)CwU96H{uj>`TwG<)x<@A~rrfU(aRwRRFs^_&s@-sD;S+0A9wJTm>-A}4% z7`?6yqqj0S#=O*Bl*yRAgj}J5C_-bzAle &Yj<&CEQw6fgNzg}`(%f{+m zX~BC*bQZSM8;_glj&9cdSv=CoV0zOnj_FNk)++6O_ffmu>ZJXa>|lWsd?XQTh_Rfg z4qNu9=*~?uCa@|To;2&dhs9e@@7+qHa)ASXgCRLMeF+Zuk^f6u0@lm742!g2vR7cC zLx6Gf3ijWstsm~p^uP!LSGYNN+fCf<#4D*xPipm1_gRtuR4 !2gTyBqY>>+>p`_B|2<&}9n;lcAjq*>fSvl2P8H$D@n0{< zc1xp!2;_Ivq(GgfoIMXzn7mnEM8{arq$w+x{x{~6_LN6HbwM^_;c2bes`4znnfz?E zfb9`DZ&DGvIxM35wS~G4TpvKX4ovSxswP5YbOnq{z)mUYR$(Vvf|GeLY-~e}pRRWU zB(FP6T4kmU$B)-y^M=@N@0W+o@77}ThS*FElSt@c^NY3Eya9qYQ%JCln}tu+w)AjK zT(>WbExjf4;xj9w+@3G-#Ei2f-=l5O${qQ-^MzQzmhWzQMLf4l%;PJcp5-fd#CQ9^ zgs(}5e0dgM?uhU9coE As|lBLo+%_o##Rv4XDeq1++F?@&M4;YH3k>A|yu zpTJ@o52qpv<+57uU>XPiSwnAq1jDV)kxCOv#PT$GGn<|v3XUpg>=M##V91OAHPakR z> 9Gs2n5`U&QCnKzIl( zfStIK9@>jK;ij565D9M{;C1QscqWJ4#!eBZEi%WkGKD7ZUH8AJXSRIQydL>KuYBZ3 zTR!K!z8>Bl&ht_tpNZ;f(FsYm2hXSYYET`x#To;#!c%7vDKvOnHnF{WvxxIN0r>e+ zN!{%hd%JcS97;J?E%-8|ou->-n(gY`1lwdjYS$~hMo|GtY>v75?VOaFx7)+OJ Sxf}v7oogb`;D9LK$4VmR6}2M98WcDjFo{-{~M2m=AB0%ePKr8tkP-ZNpH zvcqDjHe52lm4GKc82vGNSL`WTqHMZ!U&KjHbY*y0e^aZm>^*VFfXoQV!}@bnW!?>b z6vvv_bg;#_GhU1+snh|Y$|63y+lWsn4wDJ#qV j{sv+;VN{}$4d=!U&v#yDNa=JZ;wW`u6Un}@%N(23|4 zl!<<3=TI{wj*PA3C+n~;6RyEI8-6Z!$4}OB$M5v^g Wex@nTThqlv zp9yIiY9jYo(l@j%Jly&u PW~qbe(j0c{70U=Lj-X|f zX@+!wCjAwRT*l t1pfxmOA8TK-^y5nRr9w3VEt5j{|7LZ*@b%b@9** V=G z7TRD?G96f$thKG_aF9KSFl&GX72b0Gk{b_drMuVaHMkFwY-g{$Vb0-5%^PNLV*>)n zGe7#j>7;N2(ADG#XD}NZ>3Y BbP$(II^o`@bMejV z{ -8$Y>wnkWRwh+uY_Q#EYuvp`n!iu**0|lt*>s;x>r{zg z8XG5`EyPDo%fPvMt?$~~+fcI2?&cegi6L`o6g%A9WSRrWy_pVRcD)^bz{sEN08VzF zL!0w!4Vi(pGwlI<7qomzicZhCLzfQ>k(n{Z$#=Tz3FZ$9Y5syzFcChNSw!_o-Sg1C zp8H9~{WSB#7kaQx55%=iui7QIKeTe(858*(5IHn=#Vrs$lHlHi*VzLx)4PF95M|iV zrfuzQJ)M-zVbNpUolrlMcB(v-0YLuCjXPzA7_Ez|b^@e*z{E+EhP$*%?NWGspO6We ze?Zv2Z2n-jmOaO3yo7^zp|Hg|kQa)(z_FCYfhe5dmW 8wn4*j z+Hc_GD6yR_V *%1@k32QC?p)9=8^g2eJak- zq##0xJ;CXnoH^RX=_T5XtlKYoDfa{<-p-B^kj8|-5W0EW9li@nCWBCtVW>>4vw<_r z10d$MR%C&*kePOOu-x2p9xo4n$sE>BG%Gv5t_jW?FGpn$k-~g8ueP=G#p}oMm3R(O z>JnXV6*>6%P7xVi+bzoaMPybC70q>>BhNb`_r>`~D2bcTFai^GEPSd_s1&cX;v8E| zBT%rrGMFkCRX2PraMd~Ee&S2=JfYy?b4iYwsbrU(ie(6XU>TpnT}7?37F=$eT}WL= z=rhDh#Kw}c+SpnyH%6kfESYOI&AMw>iWoYsYDw4g`%ACuSfPc}EM~ECLWG})Rn+<1 zWmZw=>~*M;s+SbUWS^(Fl}b Kk?Eb#>=FvLaZylz?cxbs<7e?H zh)dssu7#Z@Co7BnJN)b|Rbd{M%!|paGj>-{%iK6)x#z4i=6hv22+7yXkYlMDQd~+Y z^WL~Yy{G+Zv)A2WG>l%S`KKrg#|8F2Lj}`uMN<#ACtb z K7dz@y_A$sT58AZXSuqFc-}&&o0< zkH)9d0hU*ehhNp0mzy(OUMrVZ%hLSIrYD^~jP;C_z6#TF&loJ219QN3u|ouFdB@Hk zhI_abxA4jiOs`>{OohCC)k`#`K!I635%{q5JU&`zgyN%It+w=#MKqh~{0awXpCO zp{_xc;n#cCM!0qfH_x!(=>dLShVBNd(^n@Fn*J0~b`X09+cJzXlOZYUAoV8Hyab)^ z@3bmu)MY0T=m&Axiy+8osb#;4t*oYI#BlWOzu>FDAsccPOK(0mJ65U3_CI)-nHB7< zp=;Js%d#zlZl4P|ntP8MogM-%gO{5YCgOyPXF)kSet$TfaUm_&gM!N8!A4$v=UI@? zd>)!A!{_R00UyHy{#Dy @zEd3GOuD=C)AXQjNgg$*Zc zt)s7?414hwc7o_s5NiS<>f1YMbbnpz4u k(qsq<|vcx1v>f~QWD`lK~*y?_**V*aQYj $L2y1GT-Ls2s9%uBA4C=UX1j8sq&V;-UKNW#m_0 z`IxaFOl^lFAqmvb)=R!taP&JlwKma(+p9k7AuiXR1UE9n$k_95Hb%v=_21?kjSA=5 zBv}`O?tE*?fEx=zf}YPU1|9Y=RQGJ6HA^)^Y2_hjDB0+UxhUjNO($n2!ojLEoSbOt zuAD4?6$`*8*KdiD-R-3=S^JiB^8A #8w+e9q1e(~Wo!wJ69VqTLgj2x zTA6f;cP0ZwK7;v7iwNInjwKYcgoV#D%ol<;PNL>NEZZrh6I3cQE5cNMZ9OP}w#Nx& zkY}#OU6^2Q!ZW2g6Z4yXUXC@UfLxn1s4nu&&4qLk&uKHL7DM{qv}jCAGL*zQtfYa- z<_jByYz&${VH@Efb nII-l}{3Icv^vs&*S&ERp zR*1}Pf3l6Wq#I5J=Y`o6=GHK=Woa9!vbu_y =UOFUPi~ z#oHkUOP=W^l+bJD<)to5NTM6l;maVkFVFD}LUeA-2B|9vh?(^joL+S`_0}3El!L93 z?n4k3zKD~#AmnM2W3(8FP5pA70kv=oCus?#@J#oKw!JnR`W|S7FX1E&p)6oFylukJ z&k=YA^a6{Ew1gthtl7&&xcx vF=KNoJ}Brc((i!Yf6?UDTmc*BRk zgp=5WUcV7O9m^Tl__^>^oWvy*&gQ-8Z`8gweGjz4GEUME^1Ycp9@aj$kH_2-mq)$Z z-niHJev;t0plc^d5`~Y8n|14?BQ-ba(s4R;uG^jCcIKcfM`iC?Jvg@iW-+}tH}APw zc(08r9E^B(+sXFXv5HVt 9SXT<;6EVkx2b1w44_dY1OPP;0Bb z=(?3{)l~x4X)xjY$u0RId4IOb*t*>w!sE_{Lp(OSvq_BOl!7Do=x9tHoQ)2Kx1@&v zOTq@Dv299JYG}@O8V?Y|!?=Txxp#K-91bqp%_pOip>&;?C~PzAn|S)caCn?l?o?`M zsfh0>ax3Vw>FL$(%gGw%h{*15b~i@a(-w2Ne+TSHSRIbh3(btRS`j@63GOg*~< zOM09Y%Mj@#&or5jux}jWG4 qzxZ)vqJf3+hPq z+Ap*^_k~u^EgemlE1hbvbR;`o>C`Hn&a>v8o9>IMAbaYhnWji>!o8}k`66zYWqn1y zAf3b7a#WuT{$IqJf%@363^UxVbl)j%+
6}VR&QJMPknxTlg??}fxic_hW z d^gx5EWqnWH z{(8c$YeSkorA1a-@Nz>5r(&jkxsa=KZEe(Ei;rNjbOv-UmjA(lu|^URhQittW(eL$ zy?6_Q&l?h{pD!Cv;BPQ~J;obAseZ&o?@6n?!GhVwKDQ-ZGT4_?Jnu{&u6PNsGVm3U zL4Gyss@qnXqhx U&pmJqDIor5S`9qSQhJe6`)?1ML0VD>~P%Jf}j4cV^`Kl3N)2*~UJ)MRVb@ zVE^MGXX8RU4Gs?O4EFbRftiH2i*1&ZcQE0q(0oz44pp_E 5FfTKLwhwZHwf%}QHfTH6}Lo@d|Pp4 zwvgA+OfO1YDMjKUo3sXql!IK 5pg |)#c%}|Bxu ujNmv%=vr zV_j^isNMyI%;JTEl YK;s;1 bl&K#zFmlb=9k${$J9UW&p)WkWVP%TpZQlcmW3%%-meNs>Ae$ z+Q9&4+|nKJltCP`HpFyjE}4YLc%nPZ$!j~DqU$RfVm^U8z$pW&X6S=Gjy@`XX4VK9 zxqgX5Vm#(`^o8={4tR2CW{IOqJmxXcy@erO?ilDDu&_9~o6z1n<;gN+CJ32+`w~p& zpPy%Uz*EZ86c79Fd{lRQQ;Nq7_2_Q7P-@(PO-T*w2@kE{azfl8O?h1$a^s;1;11?! z+;H_$g-jmUAMWSD9r=_z7*zI!*a6#Y2N>nMvFl}k&Qj)t@Qw2o5Q-4~ qeiK8QTYi3*dUAtqF-uX4u{2mzX=qDw#3gr|D0z zf}KkEW$ qc|+yTWKc@=y!zAs;w?oqMh`|d+hb3B&P2wClHUIh{TB)JDb@^%TA z0ycHQIC3NmJR>cY9widWD7~qCrYprtG!KASU==47p-5c91&_9^+HKy_pb(Fc30N}U zso!rh=P?Mp{li&zmyEX398@Ps_$levaWVyj{Lt(hlb#X(4nKQ)iOc&lO2T%F*kzmc z3F$U*QVyX^_%J0>u_aQ$PqME#@wRYEiLf&AU@wSO61?HVyEutW$l7bGy0*pHd!Q8V z;Uo>AXa NjyR?CG7ODDd7ze3iojmn^00>xYjIJnFsO98jn!8@*fXd z)twn5&NHHX4JTy~N?kPiOYlIKxd&R|ZJeYbl-y>_AJm$4U^E*%0&?N&I7vz9nH% N-avIRNXXH zB~5&d#3sz7sp_VwDrw^DAvU34e+Cyk(DJr(PH@dfb)3W{lsPA9`pvt@JppQ=fs=HE zl78OsP_27A$41@qhi#lhBJ}3ipjqvtY8O9yi@GIMMi+QZaH|Wvr=)*~ld=fEgwx^Q zcCYc1tmh_f6Q{_srInwP^bOz;mr!s`9W?qERX6_#$c1-sl9EvBAa8gmm&BHry5$e7 zx {z3i;dWXUJXGbs$#Ku1B3!eh)pQirhJKDTg ()Y|9~i1mpsZ1t|%=ZxLwe4x_vQf-G_;_PaQ 6)Zrj&uR>q=n37J4{|O_)tj+r<`}_()?D68rNwS-I$$80P|) z_TGGG%@($yuXh{k@9PX)G(F1_e5X#&vKjnzh880gaqbbL^nP8|tf7O&mJcRrjj;5D zv*)>jsycG_%WmFjVQX&wthVB49Ue0JRt;-!o~y1qcASBob1ZIYolT>&>Ybe#pU_oA zc08GBl!-)re3jdcPQSIi%?&m6(kc{}E=M)`&OS+JeN%B|a}9r%8(Tt6e%{S)rMkl< zdzGCornTuJ2RAh~eWyN}$ D<#mh|dnCd-z|JH7@9V`oB1Hb#vd#=Mn{7;- z7wla^yy|LGL!pSKpsI^MGFq=SF#~MZWWm36d;FxA7FDv=#J-*kxvu($b=FKTZL{cZ zXX&L!Zfv47JDn!Evpk$4bxI3~QO6t}2fC1j*K)$BO>gUGmUFAvY*{|%rVgc~zQ6tn zy1#Lk6it9J^%){&CYLl#PFBXl_pwman=*xW21(wyr6J>^|H$? *v1h&ruMEtMQx+Iy zxR23HwPM&EjwG*KPjKeLh}0RJGvu`L?qQl#pVJThWaY@E|A{Ud{XjY>#znPGR;oy? zljC#+(fOd;LilBzOZ0Sj%+YO2CVgu}V&j<9gkQvI7l34RSx7Rw9Z5?l4Lx?l{s_(l zCv#%*YDH%D17b?afKXbQrpSD)WBV2S#~_jpKyqN`kn}5<%r&jdCh^$2K|Df{#D6>- zePa7ooM%LFyJjVu-^Hgmnysbuk`LHcq7*{DQQI0p6>zWd)BLSN@ugW@ToaeRH2D%r z%Y-*P)K{6dFXSWT4{j%{v@cA#^lZ7%&6U?iX3Q6h#CWj@u3azI+?yBFsq9wQ%l+=w zM!!+3{VN*v0$0{2y4hL-H!RdmRvSRYLc4H +@8H^6M5ee4yWv?sU}{hVIQuXRE{ zEoSY(V&Xk5eEor6RQD6T%wQwgER~ZFldX-UF`dHgs!gzL)LESXIvN2Oiz}@}AdN55 z@mTAvKDzad^C!%0)B)usr9<*bQO(P@&L7ont+lh$>^56_*rC3G-NJ97y$$ydiL7BK z_>lxH*nc_Pf6pu;7KG(Qn?}~bdB>eQx1Llwdz`k}+S_@?sfQ05dyNiu;_g3HkA%(b zO!hKPBDUMcZrjFlk}Pg1hd^hLQ>b)uR?%P3d( pl78zZOovzltY$1_2;jGL>eg%V z39{Y<%6+xl?RbGFKv5ZgAW<4dh_Eq9UQDqX{=j7TNk=lFfSZXAux$upA%}ADq{Cdu ze?J$BCXkIM9b|+5w9{m>p(wKX$azJ6ZCBMH;2JGt!Eo3-z?OK2u|@Pbcmz@yW+cuD z9Sl;^!7%36T0r#$FBu8q;?Sni#u4(Az0d)5NG$J*4Y@h4gY`v2Pe+1AmZ>oPW7ZqM zmfI#}b@rlp;i$whFa}(GS~mIWmJ~GFL?RReZW%UH-s0NO=^`ef$6I||mbbbElDJ!> zpxY(9jir~5%MPZ<9r5X05ucDHpZ0~} *#US &k@F@&b)38o1dJa+?KaUzK1nd)Y#*et2pVBT*zW5)8EYr+=1xo%l~+Ub8|RZO$i zCdSnQ(wyh$JM9#IFjQ98c;O#d;*{VT8PS>~r}m**CmY) +cUX_lNzuk+R)saNfPL RBOP{>qTlQR!(!e$&ac*LrMVp!aIx(qo(7LOWe6kM8)0$8T~)%Mx%e14Bw1y zbd~G*x{+F!T9i QHlUj0>6qo!+B%qx^^T zRIZEMN=tB4<@rf v297}?4~OVUnhsYH_TignBlP;9 zXKa7^>g05Iz(we@Q}pf}%~p-4DV=QSL6Jz9MTWo>9cqH0dhy=1b=aPQGnl?A9?x#e zGPZOCSNKW~p3PE5o7c7<$f6qo(qn`2quTa|QhmWk1B~OUt{lIM4BU1#J3`Ix0&X@^ z++? }wzBSRSu)mBL_Erjtnkocj9%gcf329{&B4wLTb zV0wCXVqXDfKEGS!KTl9D53CR9*g=OWN+0V6(R+3{cs?CvSM5r1*rHHrc2X_Pg!{>( z8Rj*h*KvBfa&{8x?0bNkhto?_o{e@JP+jhHWOFjr4kIO&DjgqBP7&)x;$lceVJUDJ zH#x=@ = za;C{ULq>6sWt-E Dl5voQ?NOnd@vp! zV9} _uf00{=E_~n%Ewp>3A&3^<^{K6@d*Hl;KyvK}s%=aHJqV1h?eds^AhjFn?@35b$ z9Jw7?r>{mI(KvH EAp^i zo65puZizvUkiIA(Pn$?>MY8um@q$6Jd)FophQYlit~>fJqsqpOrgFEv6}%y~+X*Zk z6sAK0-?8P4YvQ`2?ZVmMLeE-UToc#r0rqiwX^Nq4iR%!0@T8naFULY(oByIYp2^9G57qP$2WSF2aJ!>f80cP_NQA3nc%pf zQIaF`JG>E|OKI`cBTK+>IHqzRa;J12X?p}W_i32N=qBLq0e0-(9e+O_4i9ED0?%Q* z$AkUhfo5c}g{vLwPdA~GCISd`YM8bm%ng@GW1~oJm!~+n(j-Z GtQlvNBAWOUW!(HZS$9`_~)-LGS~(*cc_VZ3o9^f7^+2WkY?4=H z3)kcdeNfp{-j{S^D-^`RJ48)$A{WY*7GoM_U5nj}+ZNcCMz~xHthBKzO*Rr`lj63- z&~eb;tL$R_>CV%;n+S` j(ep9F_z%YL)sw+=cwf5| zeyY_SnBA&9Ev>I17$Yy +!IhG)F4QBPk{wBsdbBQrfX)j%x=^Ib%+AwIl?ipBc&YrMY`4~sg6`9G zmAdZJ4gR8MVPs!Wrd`>?L=2p+KTir3WF~dQP~xjSxaK%rRMqe4x!yfYzrg8Yr3`({ z-EOhB>v@KPNj1SvTZ^3Y0>gPqKTyQTTG;lK^DK|DJL!Mp6VgNC5lrJeX0nEr9vXci zx<7`SwVrMBF ;;?~Z0tnlVj z+ t+_bKjf(6OS!N}rASaNPoP&yGwUGE=hKf6!}eY-_v=JOYQ}J9PBh$>FCR zmEi>~= PD{99+eN0iJnXcd^lR^6KggY8`OW8RTvT#(E=|Ng$D019 znuXZlOLCF!oos!~58GR_?)Pb4Hn**M^KrQ-|6S{&jM)847aF2wAxx54B7q#L)QB~@ zJQshx$+fv)wMJEqu&GLT<+S8%XYMuR&E`U;;008(($(pIW8{og%qA_sLb_6DooFm+ z)l7?i$qeD;z8u@GHgmn)Q8>1iZ2*b<=VGUE$!7yxuU{o0F%!c>6PvFjPw5(IHtm<_ zDKHx})Xa)8a7(6KGNXr_-N5E9A&bU}kSg!r;b*U3g~F||MeTO4iJLS2CJh&@Uoc%+ z&1yPlqe_mh*>~q`Ft;YB#54E#m%aH1F1Io@tu~wA@uqz9Q&WC{Dc`)ZDaR&$n8MMX zj*f;H51fwFZeLK@mun3>ovYWDs*LZV zKESK{E(?CY*_W!j5mqnj1AR=%xuh@kF{S2`KH0~Wn#=iiA46)+@ey@(|JZ!QO}Yf` zVf>K1kEoIsa2u?TXgX6O`-moqYfQK6<*}Dyu7BuJ(G{d?M<^XQ^vCEM7I9w2HzW}m z5MIVNWYUOFc#&_&HJQXEl#U^j^o(!ljs-~?=K6-es5uh4z9Dn#`iAD-ynI9--$PJ< zey@ft18SYt*O@FF7xeXH$!_Q+=0<|}i5_BI-2w-Lo=*-iAaUr7{K&|R4F8y+i2b3= z2bnV#q_%N(3hP>)qc^t~<#vKT`D5gFhS8fNY(~qW7mVV(P=i32TZMrU45g&|{h}jx z&H#xX|3DVO>(K1@giZ|>rycD|hf(IRS@87UY+bpJ6_aY?*$+mi7@<-TCdPOhc$$ok zPR7F{lnCQ|p-cQMgn#U&RB_H_1wDwwb+ce{;F zvmv`@ST7PTMo*2=)Mcg%_P{b|GPD51RkfiJ)|p~|=JqZ0x;O{uP0`u-Fjy=KJlXcB z-g>g9#wf^0?fUenjTNidBsQJ8CvG3($4Ggj(@S=I^4|h?!9a`>#a2Z+u?d8xkS&I@ zrJ}pQbifevI=!-yZP@$V_7lX$4b}N`@}_6NaF^c?MhB-av8UC_#y!@6+e!9yWyW6K zEt S zQ-xeYj9%|!pcpYvm`qd(Ddb-^;fXj+5E?UF=6MHZ5fg>x*(GI_(*MR_(!BEsrg0uK zacA7IA#L=WXr45S`1A#n{230{i6C3zGq>04i@3KFeUuIe4J)~Gi0F{m!6^ILhp1c+ zh+S27zLNKihbWmzW{yyL$jlTJ^A*p_pm<)c4<#8i%VE jk`k#UVhQ`B zC_LzOy}M*y<-0)fdd)nKr&qJ0dNpFY{+Z0uH$G`#){@(ECjOT3qjEc)GOa8yLXRuH zBHP1 #Z^~X4MQ=6Ae?n$SUFd76RsX<;Ch#ZOjE?swQ%u_6 zBy8X2%iNUI>MtuxpH8>ANn8!};lov8a`beND>_&1G#e9B0~x%QKlPnI``^?T#7o+G zM*=d{CdY@P7iUwMbcFpftrC}20jw}o Y*1s94nPv{Xie!%NQVFnvK?hM|+r}%b&c!9@dAN zA5g?(65{Hu3S*Wm ^PcC+2MpWrILErgMICoj^H zp2NA*sMNvvSUwX9fZoB>yy-=3Np}w0CmqDm^Y~&7%4PTpVTdu;4Y&K40gtwtzTT#) zhgXPxX*BCj(I7%l7HnZVkhL{OLv&QX!gQ|b;FT$B!=zZ=-13|i$8Wj(rF~JWnr|r* z-*P0r>yh|wMB=*{iSJe y%&k^TaoxyBJr(8;#-Tvw;qXaBNE^31@nbLqo#DU zc>nGkB`%S$=BaQnSa8ZjgZI~>DDeJT6#d;_i=w{!Yf-d!e=Umg?yp7B-Tk#Fs=L1y zMRWJpqA2eES`@wAUyGu)`)g6Oc7H93((bQC(b@gAMXPM37)x>VZ7GhvEydBdr8xSw z6i45d;^^B_9DQ4gqi;)b^ld4QzAeSkx1~7xwiHL-mg4B!QXG9-ilcAKarA9Dj=n9& z(YNI|`nDWL- 1U5}%0*W>8h^*H)=J&wLzkE3tb e;^^CrIQn)Yj=tT9qi;9j z=-Z7r`gS9ZzTJqUZ#U!U+s!!ob~BE?-HfAeH{
{+q-e}?cF%~_HG<~dpC~0 zy&Fg0-i@Pg@5a%$cjM^WyK(gG-8lO8ZXA7kH;%r&8%N*XU9`S6Q+Tm_Nv85*IgD9@ zq2uRHj?Kmz5-ZtVdeN^G*WGm&{sM}AbC}u97g^Rhxoyh zxZT`ABw$%;WTk;$TkXekB+Fi!#|XP9yAxMVPp6~jXNcU4U1Uy%`=dj|Ws=YU4A!k9 zBRoGFjZd+Mq1n_$F&P;qR(!XQWtJ7$N3`GEd)z?i@VXAd 1`)UOCUVazB-%q{Eej&;C*t2?} z#-oC^JIxkWqdnt_%j_d)FSQd6!kU@YeACfH){hl$DQqrL1fN>tR$8;NoGq@^F{?RI zc^ss%+d-fRrc7NRJ=~o~;tZ&m84_{LkBF^l<|xZm&1ufhlsO&_Pm&4)8$g`g*gz-) zH{1aV#l4;Tp>=l}jds7%eYWQW(a@C?@}6)%@Leqa!)j3V((N+Wy%x5L=jX2q8Q+`w z$*uxb_`9uo1GWQd+@PoB>|n?;SBoJ$ Qe+bgw$06yDwd;;;o)vM zubCkftYUBC!KR904%g}>xVCL#+m%de!FA&jN!2SW11WCXB)79^4)e|>ILsSGT(4p& zX{W;?N$+&}!P}48tC2IM;k-1k=z0wG-8_c+=P*Nv=aSi6^=V9}_;zZO=@iiu5&kf# zji&o&qf;zL^?V|eH4QT_g)cpy!O0o-Dqzg$p-92DV5eucS|T}!*$!=2v{xCf;CRn_ z)enZpLxx8<& lEOx5mn6%YQ|CmCr`_%O&qSJKd`6Q(*E!F71l^7moVc;fcfr zzb;k0!q6*elbLD~$V^^%)n-Pn9KpH KUUe-Dvzf`N zS&7?oX)W8t2C_ JGGreaqaDTa}OrA^ft9BF0CDxd$3o^i|hl+ z%L{%j?5k*XaCbS@D#R5ad$@;&ebr~br_&CxUZ5(e>?lnAa{S~Qqm#-pwM}I~CwMQL zT>pi;JX3u;kEb>d&Aps;kgrkIV3%cT$rMZV+P!Z>rB)jUaL%XKRwtKpHnDR!w`|Rj zt4#TVbN znOr%Jh4yOQ+N1fWxq-0sy#)DJ{Zc!ZKca`E_SN3ZO@G#4OEqwki{K a;ewMvXDNrI_u_`GTqlFm{=$>D3p*+f*6%9^$eEl+V$*Z`0xC z dxM}Ti27!)Y~hM(&E=fZ+M|;p_g05fq6%6^ zJ~0)px%Z7m&3c^Po#vj+ar5{$;Nu|% Z YXJ5S|Jv8Th_f`Gfr*1;}`pM2yBF=Xo;++5R zkwkp-{P5M4lh#n}@|b46d@yM2;ma48;S=H|m8NRGPE`zEWkZNq^!!!TS0BoLUh!$3 z_JhjslaCt=6})^JbKj-vU{stM4?=0nzM5>xax9-Ts!tmDQ1L&IFkOJE_dsiT&C>l$ zb#3ypjg)B2{5P9v(4sA+zgfaSGQcbF&CYAjve99`S-Hvw)y;pibDFcckoA7gVm{pK zLiRMu#>7PEOz$wkK^cpahnJ`>>yL16s{I2mp9kKp8CL&l@cR;!@DRfj1Ig-mrr zw8~yaW;-IEwi=>!1GNgRNp{T*NEo7YL#=*^DJCl(flz@VdIsia+)_db)v7o8Db!UI z!6j3W61momoysV-mZOdn=wrLlQw7`Xe+(}~1rW6K&JK!hJbcQtp>7RTuml+^mH8kP zDzh5_oN_q15-czz&5fwf*sV($I*wL_=vY>iM<{fxK0LHM>46Us@+FawP BiWW&268YBRMXqX* zgdvfY#f!Y7MG}TYRu?alLCC4_2ty)kix)}rNRfmgk@dxkENhX3A(4&6i(J 7kQl)}vb9J} zPMDWiT3fue+SU>Y0}> VL)O8`}j~xBn(K5U>}=WB4I#c1pD|6Es-!FF@k-3 zM@u9ONQ__~ceF&pfW!#)aaT(u3`mS%ANRCG!hpmG_OYcU5(Xqju#asmkuV@Jf_;2f zOC$_Pj9?$Rs}nUjVL)O8``FbI2?G)%*hlVv#XJ%QBu220ltPJwd5Pr+_K~erN+b+O zj9?$1Xo-XYi4pAMQ!SA&ATfe{e5NH51|&wXkH4lR5(Xqju#dm4B@zZCMzD{+T}vbk zNQ__~e}|Sx7?2pjKK?mcB4I#c1pC<65(xtmBiP5^sU;EyBu22011*s-ATfe{e6A%D z1|&wXkNa98VL)O8`*@%w5(Xqju#ZD6kuWcDJ%W8a)Dj5;5+m5h7g{1=Kw<>@_)<$G z3`mS%A4gguVL)O8`}iALB4I#c1pD}&mPi z#0d8BNJ}IPNQ__~kF`X? zfW!#)aiS#>1|&wXk0)9pVL)O8`}j>QkuV@Jf_ z z#0d8BOiLupOWcTHAK%v!2?G)%*vAjFM8bf?2=?(qEs-!FF@k-3r6m#uBu220-_jBZ z0}> UiG%@(5$xmd))EN=5+m5h-=ifG1|&wXkH1$-Bn(K5U?2Zn zEs-!FF@k;k^Rz_5fW!#)@z2*12?G)%*vH?eB@zZCMzD{6ftE-ZkQl)}{)Jj1VP4{9 z1pD|GX^DgZi4pAMZ)%Bz0f`ap<6o>L5(Xqju#bO @_?Kyk zgaL^W?BidqB@zZCMzD{6g_cMdkQl)}{*_uHVL)O8`}q5{M8bf?2=?)>(h>;+5+m5h zzgkNq3`mS%AO9LHkuV@Jf_?mJwM4>z#0d8BuhS9<0}> @`1fjwgaL^W?Bn03B@*T(-i=@%|9&lzFd#94ef)!3 zB4I#c1pD}hv_!&y#0d8BAJ7sB0}> Es-!FF@k;khqXk)fW!#) z@gLC=2?G)%*vEfVOC$_Pj9?%Cu$D*|kQl)}{$pAqVL)O8`}mJ*iG%@(5$xkXp(PRq zBu220e?&_p3`mS%AOA@$kuV@Jf_?m>S|XuH{9at}kkyElr5{pv1uup?pZ!xfiA(r% zIF~%a>U_dKrU?m!@Uyt!Arcuo-mZvr!Z!TVK%fM|pTfEH Nfp3_4026iE;_$9r%>z=$C&- zQxXd058#4_6EZ!N(|;Ezlt}oqIPEKRqMZjT+P|j>36nX5!P5EnH6fu8{z+W0e1CdL z#R=NNH4ht6g|S@``nZyNK&<}|Co@1uEs;g4<{kj4@TYK+icqMGI@Yq<6&oSPJ^^as zKf*~mLMg5+T{TBn1#00x#z{Itp)=JU+>tdMo77ee? $jhMxkx z@Sor$J)zK>ie)5c?txbLGdM{@D4&qYE8}2F=x>`>`vjtZFL08MP-L0Ug;+YSwvAfkJOg^+ zzr;ye!rz9|lOR#7^G|?Q_^)u1jxaA%g}?S?s%Jni{MR^1OX$gD?UXRHR;GOd)WUy* zlXQgMyD(UOeU-q}KrQ^YI7vt7y$hk+OErSN2U_93!$}%Kc^Bq=DV$Up=zE|Q{(GFH zArzYL#|00CgU>MgfIt2ZI7vmA`{o&kElVZe;Gfl0g!ykC;g2)lJf8ry@IPug!dw|j zxMr{H =O8KkUpUEwP tZe{hnHQ0k1a6JCU1tLMF^ASwL6I7v_F*$FQkaE4yLP>>Y )@cURYXEw1lFg%=e#-OQ-Ki^Ie*TP`-atPBu8NEhqbgbf3|5gi=mMmTs3=S4ZEI z=DRfwp~y0Ma{}$!ygAQE`#qYLQ1WKpi`N>l1~p{r75mLhrpOcT|Vb_2_LIgY@60 z=?R7Yd-xQGxOYq59Up(c#wYwy+%J8GPjMhNu6xZ#pVhd8{9J6=A(|zl&}Q#R^8=cO z(0gx;fGMGC?R&FNNcV%9j!@p4c?YZ$XcQ9Ici=oD?dLQtVW57c_C?h%(FZ@QX$ZY^ z+8D4lo%RW3eO}WMX6lzTU2U1@2(YC2f~Fx9S^SWAsK~Cit3ciIhab@tgg=gZ%T?8% zG)MZLG(W0o2t|si`Kl)QG-za!=EpP*q0pH6A^})!?U6g;|G35{l-grt;9WAZsZFQ8 zC(Tc48bYt6`Tivwsx4{zgmgcp=?GcUpU26{%GQ8MCT{J$QRuDeqwRXP|De~{>{sfK z|ENyl(d6I^o41@yM@J)u1@Ef|MFvzwJl70W!aW6($@E}2O-?7+Yy(@;oJ_b!4YuMN z%@Vs?)#w;MpS~O>2SY|bUnVaekB8IIc=AH7?+e1=WIUdHfGuRe4Ljx>?~`VKJOESf z&vQH+9$=rpN%9 Nev#-@(Q~%n|a74Mx%=Vkf*2GB5H?Hbtmpk~|S*dUy=d8A|AA@QPVc zJLDZOV<*$e$#6P;g)IgSvGoND0MaZc%|+!Bp{0)*)ZQ;_uc(pL%6N>dVjq-Qm fZ zDSfYKP1&}p_?&|Y{X`{`Va#y`5^9sFgL+@TFj-KSDo|GCU|}|k%|HtEJNE*0zs^*4 zo_5ec*m K2rZ7XRGa?2=CaI%Di3~Yks_AQ@doHHxCeX*IetvTP!i{`k}&3U zg6N=efaSY1kJMRr^{_jLQX(dMHt7fw{tV6~UhqiOw^o!nQc5K$;VPwMA)7X~jezgiy~a<{y-eJn$0_Xv zBfV**H;I?vBp#tiH@?18kFBroJOg@xZ5+}P($_a$;a6~Na*azV3ErDtA~=N)YQ4_R zbB%O?JD3=Jx-~cP1Yu#dA9xcl(E4-N_W&J7j^3Zi-?iL6@sy|#7vu8X=LSMIa`*1b zek2QY^-S^H$F`C0(^o%8YU9cNdkOmf#CwxA1nms8ZF)Q&O;3j(u58@d)IVL$t1GRo zmb6!A1Uv4W3 Iqsf9)MaDwO2wvf zvNH^IUM=2(J#;F9se*0-(0HUnl4UH2;I3eRAS0o>R_ta{JR6SLl*(}KmWthyY(!#{ ztPvfKITLQGr+PJ!Y ;YuHbTnWWnu$ZM3Q+RTmg_wkbX?l|M zr(p|7-viC_MZ6v^{dHt$L=Jn7D2GsJOp3Z`+Pji=7CA8qy|j1Jw0DIk{TpHu67%yo zS$uTGTpz^Te*w>VbbFOf?@_zo#UN>~vbWy&<9w?)E^tP2bT{-#{N5>Aakf|&(m!>5 z|0Hp{n#7{QOUdQ@TJB2X_EIg%X^|wN=q~5F)S-jXcL+1PKRG%=Ct0Y&ib;b-Q|57Y z2bbs&d^x~Qh%gMtlT-8&?hj|P!SvPD`>t{&c|Yl%4yLDPCux_c^f5f>c9xR|z3y^? zPD=TGHvHz9^wuG(+~$$S3^pThu)j_3TR%Z^YpyGT{-x227sKgl(nU8R`af6J8=BLV zoFs@PSuQ{MCmHtvZDnroCe|DbkOSq>Nh?{hE*V}yiI^N4vyCz-;_SCuot`qm55|+{ zaKXCRsjxGo$E3Ir3md d^%qZg`&OFog6(j_e#jxyk zFUxYb+AHD|tFE%>ybWFciY;>n eg6LZ-$TALht4KIY!!aJ$}V>|D;?phhG_C%mbtSxoyE zl@{LwM+|OYU@|RW=J0yvWWmkf1saif_JgGblY!wY45G;niXG~xda^wpovdt+CnqvG zlyqMm@4uW*jwfd`^oUb4a*PMB%~}klbsNWn=ipR4nLtHisAGTp-tAQnPq(G->W7yz z63+OD)ZlbbgkC;J9M*0#DQrTI+%~k`D^qZ!LCtX!3coEML&loCTYT5CB&x9~#gb`~ z7Hc^)$Lx?jj#ca-UDNwrB5{hFLQ{KKrb?UGonj}))Gha^l)IP@BcNWaJ66F-uEokV z_3ZbdKR%Qf2P)tAERQ#a#|O%5h1xmyctihc2VQ4JnY)@P%fjH8CXY>wOC&v}Z0}KT z@&`j@J52e~?TwlI?l#b<(`5oURVmvdWMkCmlHvDmdWD}o6)f#6gIBY7HR4ePQ&kfR zo@sm38n!i5Yv4y|g%OkXP1+uYW5;sr5RWYw;@N&%gIBkBb>g}0FiK`N*+O9sP3~}M z??1;I9Nf3FwAJsf%lQYtte#%bJV|`2n_7%-gQ0Uj!`Cw+ZkuE=-KYtU%eF^8=8<#1 z!0snnw>O)2n$4B=bh4Z_3ht~olFd>%`4C&|CSOf9lJ;OaI>lUq5n4laj6<);Hoo9^ zCBxu!vHFS0cC=QC-sF2KTBzj5gYg-fZ-;t10joTwF{qu?X9=cnNTMnU8f&`QWHhhz zE>&;96nk#xnCkTcIj%^lPKYu?x{vtm1S#yIX)>5$&VgugRu-5N#VDUV!>DR9tU8 3(MC$#NnKN90!;+Pzl4_OP<|K$?S0l*6lfQ(l3Md5gCyJ3CAk zU+k^D)?VY*a&qfQrL))Ed(dy~?L6cCgT`K?Q|UGOPwgX;B{KH{sRV7$>ot)V{o#jh zH^wZPoecL!hp(iAWu$!$Hlxu4fNFCn&vjK+JoPs0=&i+Mmr_~0AC`%5Ut24B+tl{g z^l`n5+sj@hT`NW9UXIFrJu3H&sN6TBa^H%|{ccq5_o8xtD=PO&RPNQN+-p&}*Q0W8 zMCHC6hdZo^(fp w5-Cv5T`%6)Ee<`Z&FGbb;rKq~U6jk?^qU!!qRNY^S zs{2b(b$=i%+6-CvHX`^!;ve>tk|FGtn=<*2&99AEdZ-`k+>-z=rG z4>5YtUyrK$*Q4tG^{BdkJ*w_skE;9Eqw4 i+epx_>>Y?q83p z``4rD{`IK3e|_P)Upx1D2;q46AqIFbQv%}w?B;LxF^a$`e_Zm%nVFa`XGXwMO4D5w z8YpOEJiza#G6Mxyh5ir$_-5?IRrwiw%lE>LFUZVT5yRuE(8`p-6!6X1kE`-C_?EAe zmvBQ4GBZ}i@VF|pGEH7G_T;Mk48G;- )fJV?@}n6{RKvei=5 zYEnJIofXrjoVFHZXsXFMG>mUiDawC6ys729B`Gs1qsb-nCOZ;KLuf=&D(4&;Orx!E zE^RJ9GH1zf1_GA*;-4z2l(UCbZ=z_L7rX&4#q}l%rg^~&$WXBSoAb(F>(?v^rDTeK z#T0*t1QBJ5II|U_B9jI5d^b-9LWF=IkP*%<2oYcizf$BszeFqEth;nhvL_5=Rnq3( zhC6d?4lQEC6mjNr_5_A$7)&ZchJd8%OgfXQSWUttx!Gr-uQo6Xc`-B5!qcDB c5#iKGGbRbd(&l@CYBG=M<|pg9+)$)BaIX1tekSEHs1oVU2^3R zreSOxLU*E_5SmvMnEhe%;n2H_p}t7Lrj+!oi=`br xAh;Gy z@K>~8!hqm ISqml% z2##lu*R^26fZ%xcctZ;&3Ak2keo!hqm-_IOJRCJYFUXOHh{!Gr<9@$B(EEtoJM zIG#OzOA96p2##lu?`y$?dBNp)_V{aBFkwJ&JbV1M7EBlr9M2wqT?-}*2##lue? z3AkAGDQCJYFUXOAmdFkwJ&JbPT#f(ZkH &0jG;l^=|NEVS vIfIEhdAqc}Z`s(*){3*W>^d_uuDY3D>gn;PB#p)kcsY(g*Xobcyj zOS#N6HlbjD1{XXq^DiyWrf@#RV{#_+%e(26cT@PDX 1`%2>ydTHjwKAQ^O0HN?LjZNsK znN#^(Y~lU8G&Z4^=D_Z5A8A}dFU^>?XVZ*p{9O3m8kdl`JoyUw9hqu~OMCxW-rzuG z=+~Q%OB+x03%@9om?c2mgGFt;07lo3Z|nq~1fT0|zU2m<1QX7QRi$#R$YD16Bv@e@ z>diOYT0qROh3~&$i-<8Nu?ZFfL~{Fu`sn=;cj fbLHIMRs^W@RV#Dl=;w&+Cu*8taekOk9<+1D(!H6v&--ntQ}=?x_i}NVW>^I5JbQ za}!`QvO{xU7ZHRp_ob>2H~qh)FF&WDpRW1j5^DG7Ktx+YQ}SJ!fweqRe*PU%sJE#9 z3B?W>1taC>;y2kF Fq_0fz0a|1e0a*TgBjhCBGniCqa-rU~q z_ZppDyUPnVMZp10=B2+koF0viy^a6KxWChS(r-WM6xF^kR%`BHv&ECi2gB*x>WAgz z;phc6kUUMWRitboh@j7Jo2_Y>dmO9H76O3p)hnHP@m9UDU3s)4VFo2NT`%Gu7P=(O zJ1qufJU$pqB@!_?JnA;wFW)3fao`3xlSJ=egR7y6RV)RhG(~ba9B^wyCg^sOFS(4p zFuMq%u+;XDI;x`0kKS=k7iRw?c`mz1s<6LF(bVRH(G)wmU U46lG9JD^97||< z8&w`_V`OQJVRd{HR#1>Czv`=3*AhQjXX8NCN|ny# yy!^b9 z3Rt&A7`OSVo(91^jFtOI{cuh~=Q9*@_Y 7;D 2?8SX|rYCZ2-hCM=?5gN99-!)y5j z)*)C-!{+Agn*X1@_x_J0$?gLST<(!O6vd@IS~0iRRqp_3RKavl@6M7{sOst3fg^zK zo}mM)f$Hws0Z>>JFg?B6lR0^FvXo9 mH|U%p+&zF#?!0k-HiHYd4hvQBdrfRf zx3>=0TV1vb1BFhu965oLG9iPxh`oz_nn41B*{oWhTUm1M$}!ryj}NK3FmLuQ6GkR) z22Y-FZ9J;52fe4Ky`F^46*BOeTU-Ij!h(fn3jt)?JTN*NwY{zOc4xEY@ny +|p;(ntKlXRz!PwuC6JvizevJJcxf1`~%Nr@jUNMmSyZW7LSuW*?Exs0( zGsgQoig_~fr~2N=pB6{|v^4ss<=9Us_;`C>NwP)@nX=v;a!bksd;&x6aW57DpKWb! zdBv4^Y 6D4AQ%uv*WzE}c?l;r{ThZro92 zdB3Su{JYr$gk0w?VP;oOZhB%YkLe GTtM5BTqj0epUs-J&DA&Ct*QZ%NGWLHYvZq$ z03zU+C<&lQAf=q0No=?Ja-hws*?mnyM-&sObS%v%Y22huT7@owXnD6DZBz{yA#{t) z@VSG*^JA+jqW4#EDn4Ei4wo$|Qug>!f(ze;(p>l|OlRr6rgoPWWtQJWsrR(_%_eGK zmfHfRC6NEOO&gAw@F*x&W*`kocDBypWNV7;5+1H0=_+lp#+l!cWSh(_)3-%is%$e> ztz~ld+mLK)&3JvirkW>?#0?6;?2^oHL$Yz?i^}U>MJm7bC@o!2m{<348rCSvZ!vy9 zMTJDRS`-rb&Bq9ltuci}L}Y7_FhXQ2Qz4Pxgp3f`dR9opETbgC2$8LVg+y%PlZa4= zY>xz9Z=nX|WxTv)mIjg%O0zvAMIO4!O_7x7BqfZH`t`0NDO=PeC5({zRk9*!rlf=s zQopuVB>jYv5=Kb QOhLRErDf<(6*c^_23!ef4lSwG0I;28FgzXzomV7~ zl~&-2RG(2Q!U&bt?TS>NRVu;=l~((TR9yPYbP-0Vv_@E@x~Wuz0aZ|03`_Rsl!j1@ zkant6y!v5L&Z|m8C^WwT7d-qrV9ZK#nJtq=DBWN4xS&1b>K7Va%g7Py+b`Y&wZd0P zW`v@}x8Q<@p~?4p)_eX$t412a2u-~prw+6V|B;3;LbF()Sp-^z|42g^p;;=>ECH>; zf21Ld&@2~d#JKPuX$XbJ&VWOj#f7-}Y4!mSE4Oiyicrc4Z+MvMlnakzZu!F |_ vpP`4 znmwxD=HPJYLGRr@Hlfz%6V0sv6Ou`>%=hJNZFe5Ft2NgU^~di_6E-_I?Z4Z@5FW-z zpPoI_#>S{YKxi9b5gP;CS!+M4-q=C6<_#IsijWNtd(X2|Y;;PYH%0ZZ4`AL7?MXHT zgL{(=+hGLIWHR(uHqu&>EJO3AxKXn!@8}HS;AXPjIVs54pZvdVJ=obFP8r`+NkfKi z;CpcL2Wv*%6b^ayZX~BBPR?(?&@f(dJnOrFN}Eb34&7?Pm+XwNH{eERPXa=oGt`n6 zoEDkHc7SQdCblq$MbAJ6gsiGKyuu)s-*h3Kwf2 zMlKk1n|cUdhgX{SPj={DDEoWEvQSxkc=zd26wOzYUzNthVybdo|s~d20J; z*1Q2Fu0AlkEMI2d%n=(~S_UwM>WnVG`{b4Pi&VD)naQ_xTv~X|c3;N#b+i#|Cx!Wd zi3wad?O@HSZIXD*(+|h2+9rv(ytgpzfXk|Fl9 _+5F0V~AnpR~MM{9?H+ z1nIYElfoj~LUjH~*;)J|+d^1=i#91NvMt2ppOl@&FS0EJ; 65~uwrQ+!adX5;wY2y} zZPQre;&zBu`lPU^Z5nG_+yHS>EiJy&*0aX2!gWq-uGQ;z!cEVMn;%*(lR_uenB(HE zhm*3i_(is9%yDs_Lo0n!SkyL+IWF#OIH{Hvzo=~*b6niZ&`O^a7PU=dj*Gh&PO7EF zFKU~{92fU1w9+SqMQziV i#rNh>65~uwrT8faSy>swY2y}ZPVD};;w;K`lPU^Z5n%A+$V5SEiJxGI=;zW zqnfpqy`5TN#Id!BZNcoEOqgsl)iko}7$bqm#$H4wqS-mj_J4Hj(sPVEa`rK&q#Cxs zl_{Ebq_x$-PFQh?0h9IywzKl^kb>ymPzYVYov56!OYJ~~-K4zDq{i(c1@(2gVId16 zBc;>XKdLllXGZMu|8@+~PFoBWE0N1;JkB6{8z%=NSCy3u_`!}UcT@Z9W6nL2p+yc! za)^=RsBWNDwrnb)`$Mf9H+4g;`F2aOkyC%DH6xjw@?yG#6U4gmhfp7sB_;@U#lcwS zBw<8if=E}K%t?ua5s3)`U2(z{B@#v?CWv$8&v=bUOc3UZL+4B*VMJnrC|8_(K#7DA zi3x&S`SW@s67S5kp$d;+^D^sfCWU0gX|YTrVMO9<)0fEE!<0xEk=U5N#7rd;MkF?; zFOhSVnMT5h#MS9b^rt#UB(|n6@spZH!idE7^d){uB@#v?-kZKePUhx&BrHqB=0#Kg z9yz6(5(y&`6Zl7eT6jca0{?hZ(?}SRn7}{!6Vf9R6Zl7eI(tN70{`gGgO5l|;2*iF ziDi{AA~At~ g0{^(85(&!^v6;}+{iDBVBqA|^f8=5l zzDL4{#038Fu1X|~NKD`#xjcqxB#cN*;2*ijh7t)Q5)=5x*Ht26L}CK}=r0b6NKD`# zxy*>UN*Ixtz(4-DN+gU(OyD0IDv>ZEF@b+ U7VvP5j|Gj;#iQHg{Ri3$AUmsBEQL}CK}_@+uE zj7Uu2AJ 6EVhFz-ryCmOka=)}A1gnF zlh}mciPOaZz<{}bjh|%qAL9Nr&hNmP3+{NA_@VMMIEhIpI@krL?G1<7rd_T4EKXt) z3g$;}!2@IHPCl;rXb&fG2?P0$+K%fZsX+XkViJ-ovB{XZ_)(npu=h41MssJiv9b5C zv%TAX>z5VrqNS-m4OYf?j Dq~XB M#8+HJgHP@i=75zW&CQoYrlb*p4Mowib5C7yw=dgk90=k08-zFDib_+RJ9 zKvkKxbJ}~_mq3Xc?|{if9Omts`xsmxH =^e|YUS_i0-f1JU8~^8;NFX;2 zT9`dK9UNu5jV&8Z?yz@iCj;%Y*J@S%vlD%o<3`&qK3u#dlL`;NPJFAcXiWTi7RSHe zxwl*0;s0DYxxIvPyO^qk)2SxH@Zb`p54Kv3-FDRgVZe0B!%I-_wl-^!ycy(*ycZM2 zq5Mj1{(z`X%DSE1#Qcm<=I@b|5)pz0oHroQ2~XwX7n$=kjmYXTZ(u!!g)@3VpUI=7 z+*l?OK7u3EKZKKR{S}-%+^i<~l)^jyPH}XBgx`%bz^I3J_&JDv7vReW;_&5;_{1T9 zLcynUJor(#$^&oskQEbR6H+4|p&s1eM+qiD?C-@X*wz!v2jFy(JK}#IPT~`aF1Bib zGViJexW>;imx;KX( K(CvP_aJ_NagvqZK84M?io6R2WQSL?d{a}c9#AheRfgp!y~z7 YYVng=Q#UK%f7@6Z}mUgt0ss!2Cuv219Ls}_^jaCD0p(c>k-?>$LCwnie-T->+a!H;$&!%^&(~Lbk_G)H`mrWJDtsq zz192e)ihUYg0*!@*>QrWs6((aZd>Eu+cW)uhx{nWoRCJKHY1Vx#d>Etxd7Eb4$HF&e zkP4~T%eoJB7sVFjW&=w<8hNv53qj1YMpmDD+&{|>x@X-&+Y7tWf}mL-Xl7<1NQ6K( zkCinelmcI(5^83VN%!CYn_~=79YK6@+khcWQ)np2(loQ$f~XaxLC;x(>rG5rEKNfr z;|J`4)g-D(g+*<~P_daT7OITRpMZ4>n`Pk~mpuVKHhaYamok6UE9@R&1^g!P%lt>- zBc^DB0oRMU;;)ZE{>yGC-U|RllVrslx_}H@!eUKLJT=cx`{<9;eb0h4VMAC@HS=JF zQbL+6wOO316r0_vhM58$X`@bOT~4IYU|JFRf7?i9`-4YOxd;ncox>IsTc>RNv9-fv zhD|UYk-D8*CF8{)q)fJf2tR?-;Urs0^Ia;Du-sd}kYJ>jS;90DMkFQ}>GfOO5s3*# zdf7H+8VMs36O8ow?f!_w1S7rdHDDSEBN7vg^!mLI5s3*#df9WqG!jN6CK%~u?*}Ck zMkFQ}>1F>4B@#v?CK&1EN+?Psj7Ur{()%MSkuV}L!ALJxLNSem5s3*#dVf?U5=JB@ z80pPaB4I>gf{|YOMCK}?NTkE1>8s(S b+QZIJhuW|>J%BOJ>pHRAAef(yCFZ@5F_=JMbMDSo$*maTeh7Y-% zhujH+4pr8MeQe?FFUb*Xm(GrtCmrF;MKt7080HCf*39XIufGf?z(q~i;o=&sDzD-s zU%~=z&KEUe{48595O>z%+Pq)|*rkp)#Gb=RY{DQfSnu_*h4;K-69##K`mWO%*Z8?| zOK}MUol(p6aE0%J;t~> =>PGvl{Vr>yij6vxE0^!FrYP-hcJZ9SYSJF- z44XkmdaXZrJ=QLZ7^DB_#O)oYn@T=@fmXJT0OG~CV|6e%+&(`(#(rL%j{ZK;&^BqD z?EI?G9|4TkL%zn=L(_&v>)dE|5bSYBZaB=IoW$3Cz1Ue`_5yQF%u-{~X)(H~IF0el z(wAyJ-2DHHURswE>NT2NhA~<7p}nVx`zB@Nyo2Olct;f4Em}Onz_&>L`S@m65x;3i zd^Rd+ZFue5CVOvZNv%J4>)xHcwg2~$mMK$wyw7PFrt3`O@$AyYBWV|#C0Hd*-}P+L zbWGA^XYPz1L!0^#n&u97qHMA#a0=I1A5*uU52R$={w#OVecFSaKFyx@&z@m!&OT=7 z q9YqNRwXAiBd}dEQ|-1n?bNCrnH_RD z^quOC>0@)~!`@+U|BM+9t*AuFRt71HbgE6mP!`Mvj7xA>Gij%G_$rMe6%%Ra7|=x8 znxLDpxRy`gT-&5P-#E&YNNZI)3y!G6T3Rr>BgCxbn5@5vp`^j3ffP)emYo@QMLfTM ziM@l?(0(tjeM4*SZB{%$*CK-I$&T^A$RBZBP!IG;rexvjn%iScXYHxHGy?o!_?p7{TJAF z{VV7F)80`J+oZ$D0l KkFTHPj}HzM9BQo6K;dcG+pjM0(!%< z{*in&N;cno)ZSa)Y_<0q)f-!l?GCm}?`&X$>$P^{VY_t$SpYH}T5G<*NQ)UcfwtVb zx5TA+5tn8*noE0Q&wCBj%591bZ^r|=w2!;om>SvMJwF>TF(?j)FGjuuFm11{?rpc2 z!h4Oioi-EYA9(_S2tI7C*=(K9$&s|N sF +)zd6oT1)VL1ot-_Fp)qVma?!+_am0{c^UD01Ixgw)+io@Y zSQ eZfAdoOIX;7&HlW1W<#c^f3WT_3S5kDklKr5Chnd|pE`KAenpuGr zD}{}!{2!r{l&{w!O0jk~=g+RO>XBPhc#eAcBY2t`W0WUcKl^A$>KJ?nnt7%dcQ`md z-FFrBRtL2P%&)@#k-YNq9=-*WR+*qCKiKq=8|Q4{|Aai7TE{N)WaS3aw8m)ZefOc7 zVZ{bKINxiGY9knxYBU>PYOn6@Su@nAb_x%WcK7{-8kG!D|M<)3H9}p~W?_L>v&fto z8)Y7`a-*2r&)RA39*klhF&q~$cbZ$~V>B;Wr4n=T|Kd8`RjGtUv!zjVmpb$jmJQ3a zS#?*JWAADk)*Fvz&pJ?^0( 2v1#z~(45fz#xbxIgW{Qq6QBghN%Y4OB>nS}lRr&80MHbUq)U)*h zOQWy|Sh{brr|7{z*O%9!QtB)(*EAFLn8*5mP4931-*zywUz m5?ml%Wz~-Y5uG}A>&*a9_TLe zJDuFz9J@(@KRHjz97`~dVn0)f(w}5UE>iw;%DnHRMCnhK6H1mqrL?}q^&OR{Ghi}@ z2tR>Swu%R@36BrX~fc35D8z V~5ex^V=CdK?3NlGZByx}3$k7z;o z6n-TZA-@&3AXrGEh2YalLMSA*$O#EQs;H#TC>dc; KjmB;RC+#~Q@|dyHOFSQdv=aLXJ8I82R*3Y2@SQ%59v~h*0o#&Q1je*G*N#HGZzp zzY~{`rrGh926=dgpCwW)@n6Fk=pv2n0AJF27kI=c6nqv?9(2aegz| &k_YAMq&U=ExsFRQV!KYEBsAVhdTL$i@8t zLW!+PE 3h0P%9Kl zIzpl2v t?aCeTzohtt0lqYI9DlhZ{<`85 z5}%*IM{v>?Sk-Xp?(HYC+SuBCfWgTfj63f(HtN4jA{-aYG%1o{UdFYebopVrI8*Q% zGfprvq4QHR9#@^_mj%;Xgi*Da>Z{E@$)}$P*Qv}vF)6*=gya?`hG7l?TIKtLBTk H*ZFr=WPJhyO($vw}yXIb~OmmLqzFyCh%D|-=hYyK4>|H2%PRglO;>&HDz76Jw4 zOK2zkN~q70?bZ=HlIK+Xl4S!3aw)TkW2lokI@0GMfFf;Tc9Vj)2rXc-$Q^HH8}Q zASW>~2~(IEmxH|@5O%q#DYb?98m6XzglAE~(u2ZC6YyCyq_>IbQ}u(MXt-JFB?o(| zRi4JoABy3bii#MyiTWKzSp;Jb^8Yh>$r=lfsFD{l6ZgleFO3!J0^fv_M_w^$Z28yx zjn18>noue!YOG=v8aDQcOGsR65Gl_$i1z*!Jm-N~cZ>D6YOTH6TO`MEfhputW~I2M z70lOOT+0CF_V22;51p=VVxI{XqzSy5!Lv&*zHVnZ=Oy57wpd3jpc?EW`xG&atapHU zWimcB8}^EtAzB6uI$>Cb1BCQD?LR(0>m9H}srfQif&Yusov&iwNR#X8O}yg*^6Fy! zv(N1IZZ~P9I>!j3h&f5@7KNKYhw~Gwnrt`f7m9plbZZM6j&9i 0xFp zJQ7D@2Q)afzn(O=9*xFsEL0nI@}5{zV(aMXPc8h6&T~SH3#J#xe4|!v1d;Z9f?ABA zUTp*c2z`Qjj9{_aSaib;ngFZPVvJy^+E^MzuoNL^Ra*{S68%VGE_hiQ_?y<&HnK_n zgDiLpR;^f0kpMv_`F|8yEWb#AFq8a0iY%6EBv=$O=3P|DSl*FrNywOkQL ca20!&_;A-Wv3G)9nrTO&R7$EGo k|)*l-AjQ+*~F{uT)60+&(#v~f~jQ&OqKS-A(G1)a4V%Bq_ zIx+n|{t$C9$6O?)->V;DF6Ef)GLlv#r8D~k)4qY$jJqNpyE2JK$RP>W7UXBK5Z>Wu zX^9h`Epp~;fKdzY@U!$95}&xKvxA)YgeCmNfWPDjyO)ViSi)Zl@FidT z&UnFRapJ*G*_BS-@L`6N+zF*G$d-#zK E{*sf@)%stWa0vvL |Xn7407VIt>NLN~u0SgvwA)jGp z`eRJJerDQmnBA?)P&FG@TUP7#hejj6q9_^-pAF6r52S_o*oL7*9fFk_iO-E;VXzwZ zzbf;`O{8v-HgA(?WP=%xyV=G7)1P(CFzZP}S!u$V=ismHT` ;lu117K|N|9%Jg~PoD{sr-zRZ=ig=SpC9&ey+USOLud41$myak7)!tP z9E%ee`bv1ZtR2N~ll3E}wNy?tON-fgf|=JQ|3 BiC%ygtlNZ@p_Y_MHvxiH_$#?q<_KgXk!(pFm8{X|6p5y(YzvHe}3(C3+Gs75> zHrL*&FEiri+FMHt2CgW)qp-GMFZj!aZ0iPnNBQo&wJ7{|-dYxT@2y&$a_+rVUoi1J zZ !JYmCB@Bfw+qZqc{z+*I`k@b3wF`wK-F%j+SuOcdEPV zT&ies`AKrsW(mDiyDGlsk#($TRIx@`dpL*Sn9)1i8xmD=6f>E4!I}(f96_ba_SC!b z8yh*KH>9s4WIbbsZ0P2BlAZOGuJVL;?_UEYsLBMDF1-32cU7FLUzrJU%i*J0jiGXc zA@2H4&UbwWKL=GB; t@#M9={{27Rr*<`QBC`m+LI|)^P?I z<+ 8@t;N+Ba_51%B!t=R5eu_trKa?QK2U zRvg=aU&9!~7S~^9bD5!@E$6}O@Q||N(1yI8?`$GU&_=7V-KySbu04bSf#WuA&eaT1 z-|gJm wIF3Dv9!y2`v *Ek3}4&p-d9Q$cB{MEZv?8v zITW8lTvR0!1!fWK;`!_OYbn)uB5yd+;7`<}8h@Jqw{;!5XC7tsqHLs=!?rl953G_{ zm+odCICF7PEl0YRY#$Wgl{E}8LcfcMH3v75EC2puWPX1U`!r^3EsEcMjDWQ+);$QN zgMw8U9)+(xM(cMZu|q^=)H0tkoD}>mIC;$2%-_tf_}s5%NpFzt@95+)FglyW^!ttY zo?ImiuhG9IF0+eCB9zJ-dj@%gpXN;bF%j8&L=J?X#_6=~ sz!CTu{06C|G5> z&XfqRtLHkSfqqxdG=>9_Dvo2@e7RD!(vAmCtyX#2N@d<7QtBd_dgLQ7lMww##u)M_ zY)huX=r58mt2bB`gwx=7VDGT|g3cO_BsiuStc^uGsJ1=qwA$Nyt@c{u?P^WxB^&2Q zk5R!w7n~U=(P$W`5{QPVfTFh9GfHC(1vS2zd5JGnOz_KOG2mL55>;L0f8&sm9Xs9{ z7?W**KZl6U1`FxrVdIz|M&XE`oyyQn#J14%_=mOhw%4GTnGqH;dShG8G*y;|n=A)A zmcQB=`?Cyt&^6Ok6Ve}vzos+eNoIDIh3lJ_ml)mwO`IPY(Fuwpw8m9lUyje0NqpZy zhxmMVIX>@*?|WwAGlQrb^|YdJ>F%xXZ0&5VZmqrbtDM=1;{qF=Wr~lIJS`JGB?~?c z0}lJG>ARloo=%6r^)2_*4Y%gb-K=(pGdb>LuV%}4IC6k+n(t-k)jsQ=piR`>-#?cw zZp1Z>MNESK9-=Q`3!72GI`&TcJ=+GKxRq_o<0ozOIoQB^J;Wk_-POK^tZ}BZM~3LH z;LaXf>`K^?7;xTdUalV5!rK21TIMaR*je2T+p*$lXkvwMm;ry?w0APIS{uz#rOT@F zBL_ilO5=33fvsL!ZMU_Q@Vf9HgjE}>SfLF;!pk;Lt*YB-CSOj~ZH-D1RTV!@O;yXw zs>+2mljJJ!N9U^iI1N>sv0SyPUN%>odt-7{ew>=B#a!LqXtA6w-^r&X>GUMmG?&`Z zHg|vJ@=bgT?5}ate#ijnyfOn6O?*WRd6Km-V|M=xT`>N47XHX6c+lWU|LM7jiDyd( z*BZ)hkb7H=-B#Otd>flk4I8T3&kwTfquI=0uQzsA@7tS=O+<>}gOObMMlFkJaNX`~ znn+|Y6@jX(k;1GEF#kxxIp^s^seX4jpRKmH&`4-+sqQ!DBRX5|)cTU#Q9j0UUvKOn zc$F5IC&7^y80fxyM?z*Cb%*bmQ9hYyjILLC(+BdVF>dubHjzfn)^&9Wdt00W?oXz{ z9%Tc4U^Ihc3T&>uRTr_>Fka7@()Ni-fX#Bt)+%l%_!+2*PtF$Gm7+MB{Jy~pTjG3s z54Nkb8Gl7d*nF^or9p2 9+v-g3CS!)S0r+Cbkznm%z XLp?&CUI4Q$W!|`$bkPf`iQ5puZ{SZs@OAp@QhN7&X#Ucfc;gr+* ziFHp|Ik_swrpIw}t5jfKGX+M>9$w369UX0%pZ_){ _P l(U| zHq>qF8u> %1hZ!U%`Mya!jXr@D&s=B Sh8XD}XuB-ipJ8<#fzrHo*i*HB0D9G#ID@I MnnO>WTbYTS%&d9i8QVsq_cO$T?&c7CzgG^bIloqnU=hE$?2 z{_N;(jec6JjegfG*3E0YTjp5!ZiU+w->vit1|~skr&szu@|tZ}mOY-M-^hrvYdokORwzl0wWg8g{lhQF 8|AD7vSp# z&^Q6YpRNIIgBX`G4`CidS>!gG@xST!mP@;_6mPgZ*lExZgd%0;lscY|xIOJNsaZ zOPy>j)K<$dPG;(7dB0MwEOWPJdbSO>yJql?!!y~wkrOgRwi<@p?MpL6KE@bY4_mbt zmt-i8r=XnmhRW;G%8A=4@Dj_*iiOEHMCm|BU4E}xGUsGSz-F9%3;W&EQ<;N=GhC!$t!#;eLAjE z%tUiog3RQ5Gi7&pYe!=COBfle!X~;H?{PvoYMS14L6K7C zZ=!?y38UJe6C3;YJjJ|qY@3AEz%5J#DDg%L9q&>R9?KhXAr6adb!ecO4-J%_K>ZTi zEgjQ(+~rz9j$m3n3*>wsX8g&D5S=GySW?hEknA1FFshx>=E}JTlQ6@$Q~tjFo8X0) zG<$H2W}bcDg}0n@fo}fIm03c(%-V3p*v#SZy@1#o-;PCnK`9-pv|)4LYhS(N1Kqvr zKy~reMVnaQLuXy(zXGLi6@*X0E^tN+zZ`}Eu{yDr1iVTg$`yDa1FZR$S%IUSstnlJ zxhEqM!R$0nRhX$yRWB1HLHbdU3Wb;F2bUV-rwv$mLDBQF{Nf%JETEdO8kxtXq>go{ zCi9#R40UvcP&3WGkhniJ%K5B39WTYodOD+2aOdS)k<}%=sZq~k>S^bFCz{j?m~NT3 z3GWx?*r k6b1?MnsrmY4fG*CVUUq;HS!elk!0c_xaGiSNU%;KH?TaKG262eo{UK zee|=SR{3R#XR+LvN=g6NzEVq?e`hhxF61IwTq18mi^zepAdflLRpq}@I`TK}*KG7- zBZbcg>TYwByjy1VhfdwGMJ@7EhiicIRzLd?81mipDex+yPccs#ekX-l9Kp{XyL09n ze7LW2wcV&mo*5WnZwt3?!%cE@0VbK(hG$&=fjD;!(+%WaEBP`n4V)5x*HJzXzID}~ z@T&alX3 V&=N|ic9(5;E0x&=Wc=pdAplH`-^!xx-w() zM&pk9(v1CFXlf}G80eYj#)XXYQm8{Ax#Hj}It!c<|3H5&h0W=d!m|Ea3c-IGrBDZV z^8B&pmqxsu-vl{zVg4&!(E?a@@&fXkEA#gAJ+HK&Qq=bDJnk3ko!6|q9B~g(9r8H) z6`~0^yNM^@WhRc0tGV)YwWa++&ZgpHvRX#QHDle#m6sATC&kK(mY)ga!NqY%HIx^; z6JwC+R3j<7q(#&D4PGkD2Rzm(UziHv>g&pBD99LstLv%*NV%?@jv`#6d40(o&|##U zt8}+uQvJ1b)nOW+tLQqm>*d0HC0EOmlk{3u`9CsC%k2oM3`zSW@MUD<&rcM-{sR$F z)GueIr8G22AyXv3_~7zP^Rgs7?A%1d(cXF4Fj`Y}(-BSW#73WKP_Qn=G}M&Eo*IuX zOJkUpb!2%Lc7a~jm=RvUF3?U|IAAxXku#cI!F387qurRc&IRlO?K~&LG<&!1J&$JR zVSC?8{!}*G^KK_%>3j^;QYVvNI#%|zjMnnf&c$*!87wj*CEzlGF7PT8q-A!DUl}c^ z;7){{Dt-A1m1kD?2?V7=90}Nt@g$?QD>x8gW3;0uDZM!J0xw_}XeX`%Y{&SH(d-H? zL)aMY#A(>#6v7MG8SP5pZh}$r$O8On#Putz2{$Xk^Z#~Xyp1vAt5hJBHTPVL{}d;e z$$v@NxHvOhAYqn;#zMa^3JF)s69(aFEZKH+TS9-)d_V?!IYt`S$Wt0&lq@dIkN78K z )ZCmVE5ToM9YYw+WV6nt2g9B~l=vkXv#2l0ytzVpI^uA(q7q-$Q!B z&){_OO7!v6`vGQz-bQ)!= 1s*>~I}0E~#Kv7TW)y5;C$N`Dbvt55%%4YGH{D z1V!ajILU%gSlA#K?B};RVROdYI+Qs^Izkpk7fQ&{#dDo9NJl7iHqsI4tlIHc{#hj@ z%y7CONj_;@s=xK1klNA`S;ZF@&TYP^Hz7|~-Xa|0I($w!5DEuc3?A{7c&<3 m1g$xK;+T#pp>_;%D zD+5AdU<(m6&;b)a=d7pm7qo%0vZ!nbSr%ML%GvlCIEu}ZvLO^Uj55OmY*3f*mcf;B zVi{P>2||gD#{A@=q<%wibat$OfLsWrJdfn!C#P5*ZYvi;;lj9UJghFZwKrOkJHVzQ zgrC7V6K63_i`SF|p|G&FTeW~K9xeZ_5))=Po#D5{<0OAxi3uabY^#ly`~@W@j1rHN z%%DBYHbNn$Ip$&1zSKAMMWB-hA ~=zs~=Mygu=tKC@9F<;u@U^Kd$tIMT=zV z$K^vq=?R5CeD`b@jTYWiV!{k(;oY-aZ8Y(!5)(#<+2$Ed+)`q~DDgPSZ6zj*5VJiq zTJk+5CX5n~ll+Df6AH1dZ@AS>@V_(okq1q6rGt}YjF1-B)ifLh{B1z-rcw|J#Yb_$ zL;Ao%+;u!AcS5=%7uPH3I0|VPGmA8Y^g=P3qE4GiLnt)gf(srxvgahwyHvJtQUW3E zy7T0M?eP}upHOTCe>*OC1l^2Ig6Q)Wer6642JgV5@#F~2+e$+yG#|$W52Zmp()7WFqJ9z> z6h%n;Chb$e0$EYoPXU8ughFO(y3VpvSR<76(@I46{Wx76Hy~<;L_ecMghFI Liw?kP5*V84P39{Dl|_vw0#rzgN*(IET*oHNhxkA?Bq zaDFpRzJ4BVhg`crq4a=QU&cvxgu>2lv};!(6sWdo_ABq;Bo$#mWtSQ_D*FJ4l|!7Q zB8*TWgRF47+yID`Bb=ln6e?TmmoG10H!w5eImjx U+WRZf%x;iqv%QK3YPvC-ix%7IWg*bKAF09+2*2SBWxDivXn?{>O> zfy&4lDixtnS ?}<97(|udqZ|kW8|9-yc#N^p;rA*BLg8R*WY!=W6{1f;Qu%#KPxwiku7>Q< zLxBjrk^lRZo>1uR`_Sp#F0b_-Xq7*pG=xE3>pbp|#>n}DN<%0#ui%15KD*2HspgM} z@P}~n%@Y0y&Jr4uS7c^n{$Zsg6iS;5@^ `Q;<~th|&`VdFx?%c^f<>{U23& zLZSZ%pW;CG+l+V3M}G__Q%U$8IGw$B)lpPnoxR9=;ecBC<2Xr67}^Vm*No7zC0+S> zoTMcb+K=IahwEpXDLvuOe*!1z2!9A?5exZJpfm5}PbwXu&{-qHk$h)ycmssWpHghX zz&>#rvWIPW|7pc046xa^ Y8CED^Ou!|Ft8Uw1LXo5qu*aq8p0wCrzrX~ya!t4e^MI4 zGEFFl(-2AXKPwHP(6~ItoYp+oa6|0Bs@Q~*Yu5eyvs7K3z<)^UzoyiLpTHSGgpy^J zM$^Bp)PzEv=bB79^>Re+fmZn&N<&!45t&FD(il0vs5FE{nnKRYWKp11{-)9pmT7{V zmkFSx`CCduC^UJ(?U#Yq9D7LWzpd1Sg}k)XL0;w$N&R<}noy{}olkN26D1qDXYi&^ zHi-6jankw`eiCOCvl)L1^vd7ENqRz|w_l%|Qt7@v_XMbwzmJo2g!1(j=#b>n6QEZ9 z0Z!5p3LS5FfIB~?@RmRPL!5j{_`Ns-6o~ODOu6|-N )-{T}Dp-_7HDF&l(546gEz)2dy zV*W}MB%m?x@jogJVUb3RhDT$q#(z>8!ZJ zbFl1nI@ED zZO4CA8bZ?WTm1;mU&HxPoc6Hy->MJn{wQA}GLDP(_ptcc*X#ZsHh~{*@bRoa%ntj< zy*V6Te1&svF*DI-&s}a(jZHmtV +Uck9&+BBtlCz$z;*pY_a~%t4r@-+Y#AZ1E7ly9{OLE5c|8Q=e?|T-aVXS zbg-<+U57wdFjl&y@3KC=+-5_yh56ciT@0iaNw?R~{0=5rFq}HJy=~lU+x-GyI?oSf zZT{WN{2-fiV29eBU2IA}?Dg>Y#W9M^5Sh%}$| +yCKVd5dWv!KXhxK zTbt~odZQ{4^kK4HWO|e3`BG+Vf}Ax>NV4hzcOlB7F19vV5xpdjW}HW7qqB>E3yUk> z7BrlY50yH{ec2CMHi;M-JybhJNMrWnm=_MsOLAyxkrHJr2fUEI_FKE{jh)Ws29&|x z4IAz?+<36H)!s&i-#|bsT*yXDf{;Cbh7i9RGsNv*95QQOlNma8_8xUwyZ51%eN_*; zhy4SyuL|BfcBsN;ANAR6X*PRp7O`|@so~;^OI*&Pc|{g1pR1c|YaPj-)%)$$H>)?$ zcC;mRb#QptmklBIpY`_N(e1S}K|#JfYHV+CUy{v@wYQOvs+f6uqyFRdXW5N6+8ga{ zZiMibA@=g#CU0l^VPh>)fWTk}fdR~t60^++7t(7