添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
+ case '301000' : + foreach ( $result ['list'] as $info ) { + $articles [] = array ( + 'Title' => $info ['name'], + 'Description' => $info ['author'], + 'PicUrl' => $info ['icon'], + 'Url' => $info ['detailurl'] + ); + } + return $articles; + break; + case '302000' : + foreach ( $result ['list'] as $info ) { + $articles [] = array ( + 'Title' => $info ['article'], + 'Description' => $info ['source'], + 'PicUrl' => $info ['icon'], + 'Url' => $info ['detailurl'] + ); + } + return $articles; + break; + case '304000' : + foreach ( $result ['list'] as $info ) { + $articles [] = array ( + 'Title' => $info ['name'], + 'Description' => $info ['count'], + 'PicUrl' => $info ['icon'], + 'Url' => $info ['detailurl'] + ); + } + return $articles; + break; + case '305000' : + foreach ( $result ['list'] as $info ) { + $articles [] = array ( + 'Title' => $info ['start'] . '--' . $info ['terminal'], + 'Description' => $info ['starttime'] . '--' . $info ['endtime'], + 'PicUrl' => $info ['icon'], + 'Url' => $info ['detailurl'] + ); + } + return $articles; + break; + case '306000' : + foreach ( $result ['list'] as $info ) { + $articles [] = array ( + 'Title' => $info ['flight'] . '--' . $info ['route'], + 'Description' => $info ['starttime'] . '--' . $info ['endtime'], + 'PicUrl' => $info ['icon'], + 'Url' => $info ['detailurl'] + ); + } + return $articles; + break; + case '307000' : + foreach ( $result ['list'] as $info ) { + $articles [] = array ( + 'Title' => $info ['name'], + 'Description' => $info ['info'], + 'PicUrl' => $info ['icon'], + 'Url' => $info ['detailurl'] + ); + } + return $articles; + break; + case '308000' : + foreach ( $result ['list'] as $info ) { + $articles [] = array ( + 'Title' => $info ['name'], + 'Description' => $info ['info'], + 'PicUrl' => $info ['icon'], + 'Url' => $info ['detailurl'] + ); + } + return $articles; + break; + case '309000' : + foreach ( $result ['list'] as $info ) { + $articles [] = array ( + 'Title' => $info ['name'], + 'Description' => '价格 : ' . $info ['price'] . ' 满意度 : ' . $info ['satisfaction'], + 'PicUrl' => $info ['icon'], + 'Url' => $info ['detailurl'] + ); + } + return $articles; + break; + case '310000' : + foreach ( $result ['list'] as $info ) { + $articles [] = array ( + 'Title' => $info ['number'], + 'Description' => $info ['info'], + 'PicUrl' => $info ['icon'], + 'Url' => $info ['detailurl'] + ); + } + return $articles; + break; + case '311000' : + foreach ( $result ['list'] as $info ) { + $articles [] = array ( + 'Title' => $info ['name'], + 'Description' => '价格 : ' . $info ['price'], + 'PicUrl' => $info ['icon'], + 'Url' => $info ['detailurl'] + ); + } + return $articles; + break; + case '312000' : + foreach ( $result ['list'] as $info ) { + $articles [] = array ( + 'Title' => $info ['name'], + 'Description' => '价格 : ' . $info ['price'], + 'PicUrl' => $info ['icon'], + 'Url' => $info ['detailurl'] + ); + } + return $articles; + break; + default : + if (empty ( $result ['text'] )) { + return false; + } else { + return $result ['text']; + } + return true; \ No newline at end of file diff --git a/IdouChat/Controller/WebController.class.php b/IdouChat/Controller/WebController.class.php new file mode 100644 index 0000000..fe56103 --- /dev/null +++ b/IdouChat/Controller/WebController.class.php @@ -0,0 +1,14 @@ \ No newline at end of file diff --git a/IdouChat/info.php b/IdouChat/info.php new file mode 100644 index 0000000..dc6c639 --- /dev/null +++ b/IdouChat/info.php @@ -0,0 +1,71 @@ + '聊天机器人', + 'bzname' => 'IdouChat', + 'desc' => '微信智能聊天机器人插件,可在微信端开启机器人聊天模式', + 'type' => 'wechat', + 'version' => '1.0', + 'author' => '艾逗笔', + 'logo' => 'logo.jpg', + 'config' => array( + 'respond_rule' => 1, + 'setting' => 1, + 'setting_list' => array( + 'can_voice' => array( + 'title' => '是否开启语音聊天', + 'type' => 'radio', + 'options' => array( + 0 => '不开启', + 1 => '开启' + ), + 'value' => 0, + 'tip' => '开启语音聊天,需要在微信后台开启语音识别功能' + ), + 'api_url' => array( + 'title' => '图灵API地址', + 'type' => 'text', + 'placeholder' => 'http://www.tuling123.com/openapi/api', + 'value' => '', + 'tip' => '' + ), + 'api_key' => array( + 'title' => '图灵API KEY', + 'type' => 'text', + 'placeholder' => '5b6d54d86d958fe4fabb67883903dbe9', + 'value' => '', + 'tip' => ' 前往图灵机器人官网申请API ' + ), + 'enter_tip' => array( + 'title' => '进入聊天提示语', + 'type' => 'textarea', + 'placeholder' => '你想聊点什么呢', + 'value' => '', + 'tip' => '用户发送关键词进入机器人聊天模式时回复给用户的内容' + ), + 'keep_time' => array( + 'title' => '会话保持时间', + 'type' => 'text', + 'placeholder' => '300', + 'value' => '', + 'tip' => '在此时间范围内,用户一直处在机器人聊天模式中,默认300秒(5分钟)' + ), + 'exit_keyword' => array( + 'title' => '退出聊天关键词', + 'type' => 'text', + 'placeholder' => '退出', + 'value' => '', + 'tip' => '用户发送此关键词主动退出机器人聊天模式' + ), + 'exit_tip' => array( + 'title' => '退出聊天提示语', + 'type' => 'textarea', + 'placeholder' => '下次无聊的时候可以再找我聊天哦', + 'value' => '', + 'tip' => '用户退出机器人聊天模式时回复给用户的内容' + ) \ No newline at end of file diff --git a/IdouChat/logo.jpg b/IdouChat/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..13302561e2759249c6d1f20323ac9be89e0c05de GIT binary patch literal 2611 zcmV-33e5FKNk%w1VSoUD0QLX?BN-eg93UtiAuJ*#FC{23CMq;4EjcYMH!UzZFETze zGe0#sK{Yi+IW|Z;H$gW#LpnWBK{`e~KuA79N E2iQ%X%$O;A`*Qd?40 zURGIeSVVVSMS5RFVp?5%Vn}6QVP{}tYGY+?XK8O~YjSICb#8HXaB_Ncc6@ete|dX` zXi14{OqF#|nRrs7epG^deyD?1t%q2$i(0#pUBQ)K#+hKtonnQ5frf#DiG+rXhl!7g zi;;_sla7# FV z$H>ge%Fxcw!q&^j*w4|=(97G?)zj42*4NSA*VxzC+S%IR-{02Z+u7va;NRfi=i=n# z *?(5?C|gJ@9^*N@9^*N@bdEV|Ns900000000000A^8LV00000EC2ui z0Du61000O6fP8|3goTEOh>41ejE# g~0_Uh^Z3M*mojqC)0ppQTX6h4@M5yM7~!!%;R zEct-~0|9*yg4h9gNREth0`3iH2gc5xlPFWFJZT5axB=-1$dJQPkR2H?uMHT{WX{T; zKvT|XG9st70WvniGlBq}0v~dMN}ak#&JP74tsyYdj12~K5SrwnN>*wfCKAwLV53Zl z(FFcQ%F3OprwBa(1C$)wa{`@;sB;4cm7@Zmi9N*RT)6gNir~jmrz`+q4+G6$X%F0$hR*c1NHXq6q+jEXU!6 zMuySJ5k?wmd=UU;dci`F04k8^9eeAEV9kfGL~+glY{*F5cM(Fdq5x660)jOs`2HAO zgnNX+0fGv)GRHMvC^_7EY_I`G7)?+nz;db>aid&mKoLccB$^>a5Mul^2aN>oApwFd zu5zRRJdl;f2I!2?S$Z0A)*@^usv{q@;ue z4?M8I0uU_FKm!aw&_J@(RyzR?yq@$TItZv_;vR&8Yr$wmtg?bNJ5U9x0NtJ>hdGp* zXU+imWTg*2*2IX?o%aZkfl6%@8lihIuEM7PwoN660Rtq7QU(D)fD#AS{vfChf*1>c zV7~wqkkS `X#fB6np)`jSomCL30ty^(fC35dj5E$X`K-O7ny|vdrXMN2|b8ImMr7DR5Cwq86 zZNMtmpvl@-0ql%(*LZ7vch^{1GuN8}6DWn3a9e}+Y7`4#z}I^7oj2o1&lS~%O@l!yY)fwcMpTrl1f}sRu3Rr~&tTD1Z)S(JTNT34WP?jCs!v*h) zAo6bD0E~fvENW1o0+A2~J!~in2(rK`Okj;5q=XC_R3H}6x2+H0K!VC^K~4&=JE~YA zh2`_Y?3~sE1dU)7J+MX!QlbSMmQOBXIGQyM;DH#};DtF@-V8!OKfFYNEOsy=61qSj zJ>a23JXpmOtl=t@6fuQJsKQ*ta3OUV1sw;VLRs{HL-IkPP?Hfrg;en_Yjoxeb?ic5 z $T~cR4M5O90s4hB4g5fE za#6!0^=E}O1Z)jNAWbVgM}m~pp@`(W0v%X02NY##k#n&F7m`puBqYHO;Ubs{TJZ&> z9c~YJh=V7sG?g(#hznc@92F=j1y|4`VJOKKHG}e 0jA;b+9BoqJ!{yCL7s4Z{;0|P#P2n#e^BUlXm zi5 qA)PB5*;48REX*aK|k0< zLQN )s{p{Pc%@VIwI(W65I43YYy~# zconD^6kstD^kPcZ2wsV*YO=x>wg)RZ#|nHQ274@EIPPo%8ro#CG3)^h3pq(|E61J< z!C?c{8Nd*J!32A3fHlZuLmcXPA26^X4Q~KLtnkCqhNxFoX#j!&cJl>b3@flHu>;i{ z0xmi9C=ch&gC5M#rhvY74|fOy7!JIi{sm(%uS2*%a1%6#V3^<>j715Mdh6Q`bGX9_ z2Eu8pgMcOs<12d1RAie3hAM3+4_B@3iYZ53!pxVF16YAlgt1zoj5ZBB%#scW5P%HG zUpE_60yhQGyaqYq5sv{VzyT7NAO$NxK?z8(0Se4F&{ziR z5O!>gCRpRUDB&n|i|{LptpE){z(B^TBc3Z$Mm%#y#|3_HXJ!1r8aj2?S;GK@5hDl# zBprkurtkv}w60(0$OkD6uz?+zM1j)F(9RDs4X!DSz#g44K%EewUnmp-2t3dMqIKW{ zB0xb56|M;%P^`)CfMEx 5}o=AgH zu6zy^gd5 37M^5sRoBZS` VPr1rh&hnPK{N*r@IXD6V06XQRbCm!9 literal 0 HcmV?d00001 diff --git a/IdouDemo/Controller/MobileController.class.php b/IdouDemo/Controller/MobileController.class.php new file mode 100644 index 0000000..d34731d --- /dev/null +++ b/IdouDemo/Controller/MobileController.class.php @@ -0,0 +1,50 @@ + display(); + } + // 功能演示列表 + public function demo_list($type) { + switch ($type) { + case 'basic': + $title = '微信交互功能演示'; + $lists = array( + array( + 'title' => '回复文本', + 'url' => create_addon_url('demo_detail', array('tag'=>'reply_text')), + ), + array( + 'title' => '回复图文', + 'url' => create_addon_url('demo_detail', array('tag'=>'reply_news')), + ) + ); + break; + default: + # code... + break; + } + $this->assign('title', $title); + $this->assign('lists', $lists); + $this->display(); + } + // 功能演示详情 + public function demo_detail() { + $this->display(); + } \ No newline at end of file diff --git a/IdouDemo/Controller/RespondController.class.php b/IdouDemo/Controller/RespondController.class.php new file mode 100644 index 0000000..feb2c2d --- /dev/null +++ b/IdouDemo/Controller/RespondController.class.php @@ -0,0 +1,69 @@ + '单图文标题', + 'Description' => '单图文描述', + 'PicUrl' => 'https://mp.weixin.qq.com/wiki/static/assets/dc5de672083b2ec495408b00b96c9aab.png', + 'Url' => 'http://bbs.docuhat.cc/' + ); + reply_news($articles); + break; + case '回复多图文': + $articles[0] = array( + 'Title' => '图文标题1', + 'Description' => '图文描述1', + 'PicUrl' => 'https://mp.weixin.qq.com/wiki/static/assets/dc5de672083b2ec495408b00b96c9aab.png', + 'Url' => 'http://qq.com/' + ); + $articles[1] = array( + 'Title' => '图文标题2', + 'Description' => '图文描述2', + 'PicUrl' => 'https://mp.weixin.qq.com/wiki/static/assets/dc5de672083b2ec495408b00b96c9aab.png', + 'Url' => 'http://baidu.com/' + ); + $articles[2] = array( + 'Title' => '图文标题3', + 'Description' => '图文描述3', + 'PicUrl' => 'https://mp.weixin.qq.com/wiki/static/assets/dc5de672083b2ec495408b00b96c9aab.png', + 'Url' => 'http://alibaba.com/' + ); + reply_news($articles); + break; + case '发送模板消息': + # code... + break; + default: + # code... + break; + } + break; + default: + # code... + break; + } + } \ No newline at end of file diff --git a/IdouDemo/Controller/WebController.class.php b/IdouDemo/Controller/WebController.class.php new file mode 100644 index 0000000..a1a5e4c --- /dev/null +++ b/IdouDemo/Controller/WebController.class.php @@ -0,0 +1,14 @@ \ No newline at end of file diff --git a/IdouDemo/View/Mobile/demo_detail.html b/IdouDemo/View/Mobile/demo_detail.html new file mode 100644 index 0000000..1e64115 --- /dev/null +++ b/IdouDemo/View/Mobile/demo_detail.html @@ -0,0 +1,38 @@ + 豆信功能演示 + {:hook('import_css', array('weui','font-awesome'))} +

功能演示

+
回复文本
+

操作说明

+ 在微信对话框发送关键词“回复文本” +

代码实现

+
reply_text('这是一条图文消息');
+

该方法用于当用户在微信端发送消息时,被动的给用户回复一条文本消息。

\ No newline at end of file diff --git a/IdouDemo/View/Mobile/demo_list.html b/IdouDemo/View/Mobile/demo_list.html new file mode 100644 index 0000000..fa849b0 --- /dev/null +++ b/IdouDemo/View/Mobile/demo_list.html @@ -0,0 +1,37 @@ + 豆信功能演示 + {:hook('import_css', array('weui','font-awesome'))} +

功能演示

+
{$title}
+

{$vo.title}

\ No newline at end of file diff --git a/IdouDemo/View/Mobile/index.html b/IdouDemo/View/Mobile/index.html new file mode 100644 index 0000000..efb3c2e --- /dev/null +++ b/IdouDemo/View/Mobile/index.html @@ -0,0 +1,71 @@ + 豆信功能演示 + {:hook('import_css', array('weui','font-awesome'))} +

功能演示

+ 微信交互 + 高级功能 + JSSDK + 微信支付 + UI布局 + API开发 \ No newline at end of file diff --git a/IdouDemo/info.php b/IdouDemo/info.php new file mode 100644 index 0000000..f96a299 --- /dev/null +++ b/IdouDemo/info.php @@ -0,0 +1,22 @@ + '功能演示', + 'bzname' => 'IdouDemo', + 'desc' => '豆信功能演示插件,演示豆信框架封装的微信支付、图片上传、自定义分享等功能。', + 'version' => '1.0', + 'author' => '艾逗笔', + 'logo' => 'logo.jpg', + 'config' => array( + 'respond_rule' => 0, + 'setting' => 0, + 'entry' => 1, + 'entry_list' => array( + 'index' => '首页' + ), + 'menu' => 0 + 'keywords' => array('回复文本','回复单图文','回复多图文') \ No newline at end of file diff --git a/IdouDemo/logo.jpg b/IdouDemo/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7053e8e4614d4029672c840c51eac4e54eb309e2 GIT binary patch literal 40280 zcmbTdcTiJX7%v(upm+e0-bCp|K$Id~y7b;cQ;?D%AT>{*avf{(W* ^Mn-;*oQ9m7hL4$^neYGe>*g1L`rfTiw?5q_;Q-vC zCb>;ba?=K22LMR!5=Z;rfdBW4 uNY zUVOestCWyi@%ujKOT&FSJI^6 dA?t}kI`=6ElzbowD|6i5;pThocU3kDhw@HXM z?>03+0kAhPQ*?C1oKnvm0pV#Zi>M%h7&|l>>CR}&ZK{#afau{eL+}TYg%M&=PgcKX zVR~_^&wiBoqn3iJG$j_1pW}2uy6R$!R>~Pevk5FKVs#fTeymA%_w@AA#hK4gc5YP= zQHlsx778iiLCgj0iTC`d)O fl)d<6X+ zy01Ik*9F%G7+jLJpaqqfQoA14i}c-H`zw>Al3pz {Q+8^Ec_ z8h$+1hr)!7RRxte=f!?0?qzK3B}&dBmG8sNafT2b={C6X9;_q%M3MhhM~aLLZo=wi zsN@+ZQ2{O@&LGk0w-5SQjsLhv87?xsBkU-xA5@R4Q4mJO9- `{Sl_WSH(T-Ii`%K?Mv8>PU0tw@uBs z^KUGs!FkH~g&ZRNXMuwEFvkh{KFb>^6sSSqKF5@=a|X0N1FlU1i5 FJ)_aWzuycahAAu**x{HhVTIr5QF3tp#Vj zn?9Oj_UjK|>HImo;O|C)R|;u3ya7;MnsnX(9M7|@3Y2n86-n!W8$K#Yo<=y@z5AIjT=EWG=!yCfF zrjlwdM+=e8M^;PjGve@Oe#0tPkunbD744;KoOTqOY5M$f0&RCg?F~So-I6|-=4Y7a zAgRKR+YMl`xaLz8ja*4|bbR)Mv$< dCKHo# zu`x*v?_sfL(Nilo05BG2p7MJZ)_Pr7u5j>WNb0%rhvEs@Vv#cxeC52)|Gh^(mTyll z01_>4w}ZI-JLhaeN8^FUY+`CEqOoP?3^9+Z9;!|W>lHgIVB1hv)?k2gSoyMPX-}$c zDpLUgS12>AtjeX9t4wh6P&%qxJwdB>XyA%8?$})F*F(j^KT~gHcEon(gy`8{g=^6v zPm4Kvh!hfpclsXN(VCRP43$09u%}Lb9_YzjvIX}xJ8kERwcWE{LGuj?q>y8F8og2S z!I>H@fkU#kKpYotmr1jFn$p9VPFH#yy;aY}{6+6u5~QbJuxAggQ`oAeK7)wQ`(-CJ zR;W0P5tB2tmN=BM^VLWCI8mZCvKU8= X4E+RJLi@f-m2{|VJF|=)#pA*P%)(`3*VG3Ud~zDRg5Yn z4uM0-7(Se77GeSE2O=_IKUP>&rO1H3d~3YP@sCG1e2~jV8muEnqKDDda56I5gAp9m zfaw;sq?eWk?4eKbDm#DW%08H*ksbI0R`3|~rrodTm}TW

4AXJJz{7I~b*1Rchbs z)UT3xfzo#ypd+@W#Y;qXC6%){4O*jSHf=xONAD;5tGioCnwdIcKUOnBlT_ZaE(&q_ zhzmSj{geS8ec1gO;si_OzR;tSRv(8$Qua)8rDLOljf{R_K^6R~2-PjCLlOy?oq8f@ z3GT@YjC(uM-!S-WPuSEyVRB^m@ SVajs28j=JabM^$y=8i- zE*LK&SF$=s?H7Inuxapj=P_Lf-sIabcI@xzxB(9P^aRr#fc# z$hd*+4l=~=|0<5rP|7 r^97;+BmM9NqF6qiX64i^ z1g#1wv7G4G5j?&DI22Pzwo5=fOGPW)?Bi=kydH~7zl>rtghE zAB#(@b(k*pzbKj9+i4#yKwTf0L+Wn{!x!(kOHwqf-2kA)yy!0-MVE=PRln}+Tw+9w zOv|>Bp#hrT6oADUO`}^HS&iV1*3KEI`^A quAsVx(3zwXd=QKI13@;jpb7&KOY8A8el z44*n;L!Yfn727Y|@iYYrjZ| j{fDFm z4a!ly8^oU_%qi-=@Cs}HJL;Kg>6H7-LiP=yqRin+$cuLQm38(u7CMz#3^DaKt2WYE zDXk0HT_|Fc4YFhnIH$6Wpu9%%!A#;)pf-y|4R0r(}$d4Q*8#q{Os zGxyW{zO_QLnLS;#`H@31QAc@=lIQ#b;)c{_JL6KN$lc^OFkd(%ZAVwJM(mi)h0?By z^M1zAit&0r+; #a{s(Q+G4)L- zAIQfWfLNR*OZrObKG`d=pPt+5XmLN%dQ@9`T!C(~YXMq=TvKNR6HaSr$m5R!*n}rb z7CzbKqfL(Vkj^Gk1-X@b`M*GQcC%dX5jv3LvX+t=8_qP2qbn9A$#G8R-4`+WIB`bD z4{NI>>ay$nF9On|gfk~+n)ix__8W($z|^uxa0&W-?mX^m3ZoJ1uHnDQQhE-!6Bf$? zJpmOrg|OmdbC%Qb*bV8v*~}-RUE9qwGuG}AvhSJIF9Uy3rJ*jHC5IDbnJ4c5K2n)H zNd5XZ6Y=CulUYvb9L2ekjH!iNl*mB0zL^22h}c$ExTD6m^xKQ@d(SZ&&0D(50x1L< zL4*B92FY7*vb#+PbPp_nL3uz6^;=g{YQrup#s_Rw;YR&xcEo|`NVY=*_djzD2`-(- z6Bni4cRIfDm1ov|!NZ4M+^zQ6yJ%@4=2jguKPJk#Gndo@GuS=*$Jvm db2gp0?pMI1&+FBHJF=h6TDji`kJMpnFg5sv04*roRDTq%D%=q5i9LX%WcIW9i4 z#oP T$oXlxtG63to)N=f(GKoK;*28JBUr z)b4*jL!==-i|EHYtpB`YGiVTrEGv91`2(-eG^%Uuc=6{3@FwJPqxrlzC!$=;ZA(R` zsf4n9qRORfO5Q8`>^t!Q9vA531J+AtuD=0b`mAcf3|LZkGF`P*?4pLai2~0+! &Gq8k4Dp+BnYIgBX9^Nr6}i`(QlbK}54{28jN|CvroYL){OyvL5pL1W z(`~HWM}!8r3}JHVK{FVXl7hu~?Lorg7aPnDhQlX6Ls&>6TMci|F{2rQ=HFA5_aFs% z>9(_wp;>=-Nz&S7e%62~cJp3rsi_wd|Hz_;w)x!kU^cTlG7YT&Dq?cuz0d_4r=bnh z@QCo>swMr=tT6MW9?7}Vi{&1LKHWs!m+)f$Ih(>)6Z2nN{Kb~{blyb$L2irZav-IU z9VGqyrw4(U19}Se=kpr3G9H6haeQ9_cP~Y82vhMO3_k0qGIFF)cvibm zcS{e4&ErNsf?8*DyM|Pvd-5GLLJbC ?h8~N*~XMp+3E QUY+rA4rZ1 EA{>I<3M-s;$V?0>mVbnTDJE{ zI*MLOm#RlM)!&+2tjq*TDo!T`q3t>aU$usiTj7#+;o1f$ lp0Z)AKusO_DW zD(%CU?pO{$-C}m=mKqhBff3`D2fM>@TtHhg42R;BKlAXliw58-USFuN>97>ZQ9Lbt zWFVjJaq3c#mYpVkd=@T}c&72M>Se7Bar&VHe`1-jJ@Xx#~Kph)l`Y02)$p1DF^a zWR??R@?XqM*wA+9aJD(IYT;7M82Xv;vQLU7slKdrnIaj}pmPriza!}&7KhnE#3E8U z)T=Y1$FjAwRo?l5q2;7sy}>2~0RzUi+i?D46F^^HZ1VCYBJ)ZNFoQ^iK_NN!NEqcY zolrj@_@65OSE?h&f^WVohrWr*I5G_^2M1C^g`l!{R$(p=r6vp1BjLu;FM4T(3g9uf zcioD#L0}bCJlNP^fR1Nq!{R7DIZkw}H17n_@d`zgTbdC;LV{GEO*YE6sfvk?YiS?E zje?$Dc Cy$$NTuGDV;QDtR~f~Q{&9 Jr!Gpa8D9dF|LlQMm2DPie>m-b0|+4gGkT8XTz3qr^v+1HB6x z<8};=EWgL)rKS&@Ig?yEPwA{(V!W>L36z~!ZXT*L&_~dwX#T6hy*Dz06k To#4+yEY!QPsp_O^>C3Y=%P#O%4g* z2)f>&_pI8)$yP>(${3UU;^dEEA@jX}i=&g-Kt~MSS`1L%(G%orY23k%I);Iteh#ci z=t9XD=_#vYc$44my=EE^Bi%YOx;@Wa)b)&SNmf4st=2b|=41QnkuOhXwr&-rhpzH( zB-4GW8MRI72nFBRmhZQ6xAcn64C+6z5!DFhz)6(E;BBU0BOS#UTr)F$El4?q&4;__ z*lKw(D?d~_9)()8!A!^8ojSyQ^#u9u0zLUwE7wTqp#LpF2{ DF%j2l$nnzMNw0x$WNQ1{_AZ5dpL^LI9l^Afgqo0hH-JfJYDX3= z+uP^D=NHaN7XhE$SU!?B@0bnP@Qpf-R#{F(O;$I?w0e{Wp2vHOqwOdp=-exF9Matd z&zhszcgG|BPG^UEOtT({nV4swrp`^1SGs#MbV2gR$ )Op_0gmzess<1Y>s ziq(uxRDBZpyWe@ru;)Qb&W|a$<6SxRZb?>VWkdT=Z8?xAWzLY|CE{y1Q8wBH2jO&Q zOi5H(igIqj`2P2scs&X&c4ckS6q!*vk`evP^_(Ah+1fdzCv^D>1##Anf7o}w(^oby zR~GgyZ_qq-ijp^Ke-qhwV5rK32kSi> zxl~N~G?gLrWY5%E0wr!cR{Ua>=An0v#2~0M_oS$6-dK%WLe3Ix9=Z!J#e)6xx?Pys zR14NY2W6|`v`&JCoUTF^bhnf;LFqbjFDCO{pD@*| w^m}PFO5Dt>#T 1c6d__3hA1?{C zOX?01Y~7dqdpu!Az~8-`+h({P6(YI z9cKKNy2^CP(PQurg1~0ffY7fhfpQ?|60?$HKm*DLAq`%)70#%#IFo!YoH`sHJ}qXX zN)sa@j)Z@@@;Ndwe+@8y_2o@DuIh3it6@fc7C)*2A~-}F2zOsE(Z43@&q~sxCDC4# z5LRO{@*sXS)qodIXA3dxP0G6%+9^2aueYqEqyF yrW3#n=>f@VfacLFdhl zLCu%UE#H~>9n>$oeMh}0T9X~|e1#7h#Cq>_ZRslh&VQf BeCl_BrQV~O^h&S5xji$V)6W(XP}&V=OUEsZRiEO#5364_elr!V3X4T^ zuMhN$ Lggn0N+#EATL&?i4$O!rqD-IJ$j{*iA5qyZh=4L3LWZ#3@Owe+V+E z4mH@_(w-TsM!fBLGXrk>N2+urscbXrzVztf_f2rSWVau(pw7s6z8}}F{e2B)m7B{I zpQx%LgR4H$q4VIZU3}H9;%9G|`b(+^8-!8`Y|SsB4#Jt}e@-xLy9(Ou_u#8y2}B@l zu0~ZtlHn=r=(mf;5AH#6HOBX5KvN|zE;JzIuIjb8gg71HcZcz&g=`cmRM>ldQl- YX?r2i{DDj3?P1=O$J+Z^rB|vN++i`M!|dry zQ%7%zYh|Wf_WakL&(eL@Cq0C-9+HrGx?`cTXjeONnO_V6|6W#K^_&rj!+zZd%8~;+ zYt(9

JSp%>a}JD~y*I1@sQVf!0;r;r#2t zK=&o3v(-39J$?=~tIU!&M( jnAJlpC0lM#7u}ETWobK z@I|W7PR?GPL7JrxFuT6hg8o>U%k+;t_%!y#5Jz*mo_80gCz0=vh_5wC4Za_);?;Ya z_=3T`hY-?W#Ka(NmFrP(UD=vAJyjyp65Rm40W?^(X--GI;zUFBTGn8HI|wbVg$4K= zNre`oG2>|?G;FIi?*4S5JL_F1``YD5m&eLk+~xe}pH!J|)=kDLo!7^s<9@Bm5oWj* zo$n!OE_~K=(8jfeyZbfGwPEQjEg|c+*C_#al>Md*`cUhFCP@2Lw3%L-UR@&pXhOLB z;kem;{kq(rAIV`F+3w>j;IVV`!X)R6|J?@H3)&s_Ju{jG!Akq`$u}0s_Zh@?KdQ-= zZpmuoRwtpm587I0)t7gOUchW=w3hQuRh^;9bzlD|rP<0F`;`f_qsqkv?dPl;PouZI zOLku4aRX=@&$elG5YBw&{_)@4@zooE3nzpKMw8z=Zyd3fM_noKq rCqA zkp3O{8b6C1%RfQAvmQo{RXP| 7X{c4G@q;b^X5WVA{-&+QuF~g)= zuaCt`x!(RFTD*qGeRKuy?K)123ik|85%uFboQdzX1{X_#aXO+5OsJg*@t@B ZtSsHhyzJ-iy9_yIQ95-~0?=g0dLB6;S_jeFoq?O{>&KtnvLQj9aSLdM!`H} MwWuj#_r}f|DR9Il~ zZ90hEj!0PEA?}bQnqwKgyl)Qr+;v?=3<4kyj{4|!L$ a)x5$q_l01-u_5kk@*qbQ`IcG$v_ot`yy8h}5!lR9z zrd4f`KC0O%!l>tCi7J;M@W&}Lq8Bjef(xd#q{S5qomsrP0W`sD_h9w@H6xAFKE`{5 z6TYrZG?fRl!aZ-|r>nI`oDtkFSF2 ~fjQ?<1&9hndhJl) zP*w0=-&y(%0ETX6P~yU6tfdHA`P9U_x{6(V*sa0j>|WU406vF65#Osh^ebA =>)~m9H>WmON=+Jp=p`sgGurFb=JNwGS?*lqTVRp}CNR2|?aLKwu zw&)~;`br%$@+|9aCAWs@1&sMfBJKU`2VRQIR`-3Jz4as=%6TkxNXp0Vd@;@_^G}y$ z2#rfLd&1qFj$YS$&4l7-$1_g)bwWSayd&0J ON75gPOcJ?s^?D7ZS8Ru2An dRu9ZpKzCM%QW(g{;5cZ`N kw(39 }H`S7n#w`Q{#LN&D5HJ6ILjkt7=KL^`uX0C6$ ze4D)$cbs#Q>)$6iRw@4Jdc>`WNTCaJCOosh;g0l?T)1MXFET!oKHLJ39Q#b=j`cYo zRG|b=i&d*87IWP>evC-;UoEu?*G(@hM2+xX)O0 d;)vLa)zoPN*~xDwKLlXZz;ugVjZBeU_ymhZx7?uzL1VFi~) z6J*@f^N2V}e;p3N2R{b0i}Y5MP|Bs&Ao|sH*AnRPzBsQlEI42y#_XlqoG>d|am!LQ zV@6#K>oOE5cuOR_P~mv+2C%MW %Q8 z#9d^x*y06AJM%;Qi;->qAAE#ld*f?Ss_U(nqs#aD?_Y1l=NluOe%p$sU#}wHN$;xv z4CK^@8+4ZZHzsSg{_jL;#aEW#Z`2^uj4!9&Z;o^mOP{w7nVH}3pD6d+zg{1CM(^|P zN|>?+D1Meq?o^0>%Dl`T^%x+eXY`ZS+%{Cv5nW%e&FMXO&l)qucGl*B)7N``w%R zJw$_5`{&Ms>p4P4f#C28L~0;1SV)q6{q(0de$MN9^T>0#q3*JyFd!hx`dg=< 8eGp`oy}t=?wfN S$!|$^Z z-29h8yJo0|tVxNrw8lhW3|+$x%0bFA?|};>Nk-Kbgn#kl*%A>ml;GXq)$1?xR)C@a zl0NEJo4tnvF m?`sW9#ZVnF@DnnL zW~V&Q);@UA==}ANs%IQIVj4U$IxH`LSvcBs2$ypiC5Zb`U2?4KZ71M)C^$cT5+LmV z4Z+$NzUo4Aa%Q&O6%zq|%z>ae-ggv_#fR@SjhEon&nh|4PH{UnVf*o|dLc#J)5Ysw zyU=GLlSLV^&RJCpSUFcr3171P2bbBZFyUNu n|MNa8B^n>%CQXi>{ zUH_Z80xR>FD1b6+D*5I6Sa6UNJu4&Zn`ZA}fhT0ZMET=(A~elH)NQgDMIIC7noCTZ ztWokfi!?t>n%SlU&VnW>k#J=shETA~Uk1dYvp@_arrGS8F ?Z)Z!c+duSBU-lo1%YXkt@hJW4qYAjQ29E3hjM7I?BqP zk^R4rGweH(L@;k~C4sSwzi;!K%Q8yU>iG@eoy*TLp|-#8i+)?~Uhkci++Ilj0C(M# zH1Q#VE^u!?O^Yl9A)mb{q$rC}J&K!4+p;=0f}Li^$g@3~vbN1Dy8(QU?>X`<=ly}> zX|xE;s<_>^DiP8c2;AdsJAhZ}Z?RUhW7C(|76Tr?eyr)bb{*1iibyPUs1k2V(7 zI#M$@cR#0) =!m=-X;dz^YISiVfWDT|F xYY_tD$a!Kq_qp?Mm(EACF>7d)W&yeZplcx|t2 zZ!gG2QVW-dbM2K_P=X5COMwGk@f~u^GZyiFdGk%MPHz^KmRtB>tg>!g!Ee=FR_NV| zbgMmi%_YB8gCE7Ll4i{{F*`bGhWz=_AE^?Jxx#occ2dU6-~t~oO9^KZO%R1kfsGHc z;_uw_uj7O^YBE!rS7L@%$b$z%OjTzD&C@lj672fvB#P+nBHMb_Cx TK?Q==m+G9SXN@b`dD1t5jkQ(r2q19c@eQr#rQ)L{OXdCa{iw31kdc*jeXJ zq5YCzNu>Ip%~TKE+lOuEuwjj595o4P;2%>sSL0>td+VOSu{xfL#oKZtP2dG%_q8ft zsA;oH-ezi_%M0aN*07~>%m2Kr+ixl)85}0u$Q2rl%iRzGm332`xuuKX#URzi0KpLI zbKu^x#`pQ9m4W@$Ci4T`G@kFJv#*CS>ZT}m!EE$RA zFZLH32GP|a!vB1lACwt+_oJNXP5d?K;4yog;aF(?cZ52y1Fbv goChU={2zP0&+7&3-&9D9bYB(GcGv_43?bXZSD#jzo)myWL2 zn?WC1S26uNe)+W5$g$Y0;|q-ucd>?Gpr^OE@TOhe?V|S|=X^^xpn($9+8i@={i~~G z$*hBsQpKy(-_f9oO`yX{L)jA7hx`n)SZDmZ{kdq7oLX`YxDE=lcAiFDD&>&dNme1T zS3=iFE~DRV-78H*wO?VTBqqv3_Hxno^9)zO wI8 zHmA4<5>dECFr7ket$evk^cRC#X=ct14d!LGD%p>j$$57)X3K#bbTY;1{Q6#c8k#|P zRW;=mRi-He*Fur{#IGGhx4|uESpVr13WO=bIx}J_JauT#(-NI;NtwAMm>oyfbb&ET z-eoRYt$*r0vNDF)dN(gCq#qbhJ{I_81N?^NUn()3dw;~Z$$;hNfaD~~d}Zb>Patsp zB<4#}75175;iD%+Gr2vm^}w=~Mtw1CLSdXJys=*rDSW#D4b!jTbNf6!kDLKnOJms} z^BX|3Zqs=HcW>-7x2AxmH6A_UO;jvbJGaeiN}q3oSvUT!J<8szA@o_$_`y0T3|B`B zgVryDmqMW7-tY2Y^}OLUIzQg=O>c*UZFQf-@-L1R#HRfuQqoKDT_dZOA51lD*_y32 z6*%$eq*sqBugwi;{Bh#J_cqSxr2`4h)}@=R*{1^TaT1H}|5(e2^d{60zNF+Y_?wPx zTOw!d4FcbK$G0$qHLpd7tSc4EWSB>03v@R(CWln%uuJNWTqbhWW|W`xSqwdk-I<7< zr~z(7t#(Kgl?jT{f+Wkx J&N&qu!cRo>kA* zk+(vgJE5Px>l0^3^MHk2x7*DMXU5XAF!&q~?g1e6Us#Md@sO28Hb0nW%QVNWag_19 ze~JFXf>FlH7gtna;?j@R#ZAd%^uz^3*Wgxd=0ERWYzw`ECnO}A z@HjkQZqsORBmi_o(|s%Ll_7tA%plhiyq4PjDH$+{mLtm#NhfykXN3iyzNJ+o>zGVg zCG4QaK}_{RL;h}rW~Fci38r+-ep}uI%^zs%9 IhegLu zf4B}v?fWnPpV`dUZC4 mJI!~6uWXWgN)@s~q zqRVp#x302_3IBkQ_3zWc82Q4;dX@fEP~sPx_#f3vk @xX@w+HH2;W +j&JueRkpm&=$ED@;dfyFa;%5aWZUCREyiLEo;V?M{N=1r$ zzmffuq#*7sYL39Q+dFe!KNUp87s?x@7V2orsq0!J-8O%x$RhZyGd8{r^jKAweHNZu z$9(tZ_Jn7FM%szFgSaA+y*JTg1ygD>bvdLV6tqTOucK(Naxx>J;q2G9AM3dJL9Rgx zz~Aom#N6lF-*#g6GYVf7C(w9iYSh4iBMWRgNF!&Go*fIxdexYt=!Q0(!K)rDeH9LC z=hwaCim~i4#S^sbLV0OufCnAvh1~7f24%q^0EaTD2@qI& 016N zDH=vq&C@pkr)#+P;;#QhRF *>iG4VqFBA$XIz1xB>Ut-v42aJM*`@Je7@PfYLr|RNAqYgT(ZLUv zHg>~2;=4p78 YybRg8oVv5WnCPuq1q8u75hl-Rp(rdTntLq5s3ej}L ze+{9#U8oi1@&4_5GnxZc-$}I_KucNkrMPcn*p$_H{P9sxPItofiMKnJsKqmRX8Gq% zU&wP~E(m4{L|;VANr1xd8at?CuSq`lTmT6>nUQMjVdNt07de%GNfQ&+!he+nS~r>m zd=D)8zAl;2yBV^P#e1*$#TO!y4!IQA%wsVgms`LvNWQQN`4w`^ysl3PO6Yd;3knIO z@J !Pdl*~Xk-g?70pLTYSA`1iM`S}7S4Hx8|kB(1G za$}c|6b|HfF=_RseDA~OR=-^}nCp8RMZFM;O9I>f%k^gboB`$-worlI%sXA=c21_l zZ_dq35jQ(y0>ge)-^}lZ(OX&M3y fORN?cjKc#9yy7DR5rxWQIjU3eKxO#XRo-~C zh3=yg9ujc@dE?=io?K+KbqM$QMYt{cmM2?N%;gAQTLcm%i{n}TGnT@D7FE^Ef3jNq ztY1~MT`V~HU=Rn`GFMXzg?K2{@MPA+B@arEeVvH=oW-w33X0f0DbPK>&VD`;k#~a3 zf9Ij!X++h~r?LSz`bOvov%0M@oRPUjM&s9IWdPGT=JYA5D}TN{?3logmhllb+?J%> z4#a{)wO~?j2FX4;>n2kkQ>ub=rN8Sce?37lVAa{7ALU&9+FHLQP?2W#&w=e8S8+&o zgX>h80E@(g#m7asTnT+F=hJV+XFr1SW|jyidbNX}j@q5NLA`-1Wfpyf=ZJfg#v<8= zN7-q;Q#P%+64#I0h>stbH`6sLG`$g-SF@+;4>lp3iz65Kwd=VN3$ZBu0ZZYuT2Siz zC 8u9u9fJ`LCl6gj%5t=OKSJTs?P&HhbkYT2D3_Py zOs@OBA=-`3hUeExDO*W|E aKg~%T4kWl zQ>rI%YS%2TSZi0I?(IugZxmoqA2(W{MV}&rBgQ%sl-KiMfJh(o4S>=kyW #6=w#&1GG2{pdyYh#@V@ z_cR1iLy=r$4|kK*pw;K@{n4ghvQ11bUT@kBF1vR7MHnQqJgCAC)U2AaUy59ckDc58 zHpK^KxsLBScFvl)@0pr?mS5#-moAogE%C T6O$-JhZ8-VbbZQAwb zNK1yE%6@eQJUAY7&x&2h>&USxkuymz>iMVV8%9rT{0r@iU#@U=_Ee{s76Ob;4Z2@- zfhjR>?Fx3@AVbypG9ud Cvs~R~OkG~}egp1UJ z>1?XF>}fO9nP^02#Fl6JRGYHm$B@Zr&G|KPZeH4kFo$lLSfITKPsaB?;aQ4TkIXn> z`dHtQ7_77ER=c;6BbO!?v~flu!v?A?_E;5u@i;l>q(IZAqi#)m>?O%?27ivdm=oIT zRk~VEgL8rMSSH+YcJMVZvxt3?E6wZ?MQIm0_7&16g64K-WbL;@LS ==`&c|oF5!s>Z9r_J;b8Y7NZRy3zvII z!WGr{7wTEy?wQzOU zrvbb904t9_ AM)yt(kZ6 z*WPnOQM;#;GZ#6_Q`S{yS?R^N66gshlq!draY=<6zA?dV2~=k$B@Sf3e%!O*USxn9 zct{sf;L8rTT`0&GqnCz(AxM35JP~MI8l_ %O`!;-fx{Fp<7aU|XeiKg3MO zF5Sd0kC)r-Du~~ije-v2E2Tb6T!bcjir-fh7*GC)X)R~nXMFL+Hu>*vaWLKafW0X7 z=3%L=4@7=X?@W;QH1sPm$ProNW}OhSJ-R|VNhQPo{fKkJ=RAMmYgn3o1oF~$!N&FA z urTtXZh8*;60Ajnm{(kN|JAbrf{WTFLcPc5iP7R1{-D z7U4@9uh)IYjqP_c+*JO$*3~!s`|u@p)MefM7RbQDSt7vB*fG|t-LJDXi2H= (_^{hrR9x8UXO+4VYcElF; z)CY&Uso&mZywKq|E0jemN0q*(6%6czlWF5#FT?uU#yD`OOq9|8;OHu#n*7>0ii(9w zDUFm!OG^kMB{8~FL1IHd8b(Y+1x715VoHtLknT`AMu!dt5*sBQ0~z~&uirVG!yyi5 zd++7B&-1I>`pS}k@;3ol2l^Ua)bu!|rEcZw0Bf1pJjF&|kpj(rM}_7~oA3P`UJe*v zMswEWBhdo%`P>gV)_OT7^V^m!6*Mc81fZUe3k&c@e+E|BkwV0j&@bZ;-hfMm@-O(_ zTAhyXo&GHCQbXW#_>p{NZco3L@$C!Ntj|Ltu93#n-;2{*A9D)wd;v9vfu}CgVV}SC zkZ#l^st>*`dRsH4B8U?FJ^466l0Pw(rv<2iOtIDu{A4>blB~ga^U<2Sc-P;c_VI1H zDD1bb(@NWen29K)2*%gixfl2P%V!k{4Xky?4a+tb @0!BT5U$Hnc3WsbCLFPQ02e)5AFu+^gSIHH27KNI0OWDYTQoR2ZiCDP!o?c0gSS}8l5SM}X%)N;*=f_pwEK5``s3fd zaJL=;jxu=)Kfd`+_(I;ACUKeI%i;;JIx5hXLCeN7jiWB)d_aZPp4Y4l8%trjTdiSe zJ1OWN0yVT+mn4lM{6t|ka525sNWm*XC=-jXB~G@;v?kul4k)RkRWMUbY{em!&o&f* zHPIDnwx~{8#XrzX4r2H-n~Jj=b}#g63#C{FjV^8v3oZiFg6XDl!L!n5vG>(~|25I^ zFUz_I#&WB|v(i}@e;8Gj|M@-2`(2t_p2 fkT_g#{dt=;*}`X+M*v z1Q7LgVTHt0)`>f}CV{4kQgdqw02-rj6&R#TUkonnwU*a@Z3I_ TN|kem-GZnxqHH=HT;3%EHhcr_@b7-O=4-|ruXr6U2{wWP zB$B-1luwj|ke>`sV6h?KKx~k?MO6Uex}iop_RVS1RA&_tw1eoLkVQ!iD>=CQwJ#SN zl`N?8!9SsOx7JI))+Slr{%5)uUQ=1J?xW5iDP|RJ`_D#jV^Oz}JK$SOfc9r!4_GU% z5k)=Qu_S)W+;8f0*~WoY)N>DOmtHPt?dNUeQgQB8ZT>uS$m$d76a#v9EB+eIUq_JY zd(krThFfEqu)CP#`-xyqYl>+M ou;#v!43Z+{e7ZF8=CVU08dK za>#hl=Pt4PqN1O804%iOHf133ed!ybW02SLxY^8k{sV2{F?V~Lt3|O+=L>~aRWUE$ z=Ec|Sx4J2YWp zeVt%L@@2si6@$33dut*wc@x5LN2_h)J&9S1^h{6|%wi5VmX znnIBuZ{-*8x0ugPi^0n%gC;26&rG^%#P1AU9SQ(52gR&;2hWV5FgpZ0;FU3)-6b%g zaZ;7AsPm2f-B1z#HO2~{*BiBN2KSwwo}tF)x$4i9liiSi#3}D;VJCtjpYIw90Z|U( zlt|;PrTT~g3io~c+L!k}8$D}<_->Bj0uG+r z1sAOtH&|L$Vilb==+2IWIBWV@%`-wK`Zs~(mL5$Lw4$>ZxOx5a5Y09sUL~P`ort(H zH|jbh9r#uGwD7uoVXutc#rq15@P|zAvH4;~G|(3)QSnVnAB5)9UKWm$=HkAKS^EbT z`aC|IQD{I|e2;xH8}`}8hxveB916Av$%l+WdiWV*$bL091sPhe&1bi+U3i$6_LkQ^ z{^`!MLkNw@vpa8h!Gj%N{FGBhml+$iSZ;Fy_M1`YMD=v#8zGVKMI97c{k^aLoY0d@ z+a)v&-0d+|T5@_Uf;JH_v%E5W*n0v|2hv+?-yhIdgc{}2N`%`^l-jCZPc-4(g LL3szEDx>vsrS$?x~0BFW4F=(2Bs~7 s5_ zf?P8fqZyBvs6@Y!B@vZhbAas2FFk UQd6ArKAbtGOiX%33JjAR6 zF`lAdPJTLmB|HH52bln uY>gDru}juRs&@J>>%69d=8*+RVALyV&X z$H}{8vqleb?Z8;4s=kedU?}j`pjltQf!u8DS_RAY5Zb4Q g@P&$UREfUa@u?oaaDJ=TN&)u7a++Xs8=tWxWc96bb?(DkT!#Yu*w}5eQ-1Mxs6eY z0Z!IGd7(rB-_nSH+3%F4$=K0JRv+fA`|)l2c@^vC7KH)6>~ zI6BFJu1eMCPS|HII5f zBe@94q9`Of$Li+_FJ|GM8`ExzUl6t82IV1cjf1288HdK22?ft E;R@@!rT!2^vXtRhK$ANx#I8f+r=c2+x{`;7(>48_Y|`l@$^*Rax{BunKSKN{ z+Tx^rgjB}W8Hfbe-LD@){$nv+nj@p)N8< jM*59c%u5^RqY7XmN~c~o>^!jiJMqKb9HtQghP zI$~_5yw8T!gvh?C*Q(v6YlNZ&NW%1;Xd(X&8pb8>DdeM)@w~?7kK^|c0nQr7rBGs{ za~>|!bDJkNZxPpG($gm0zDGOp-LYBpk#bN@vrF;Nnv%yJlNWiALtOEyvkxEvs0A!7 zGMzZWwz#2@0v8ut1}x>|N=F_bMk{X>rA zL?O;7f;9Ijh!Nfj(Y-5G`@x^Wp|S?3U^Qh fNn+w<3dM zpn$j(1$nBr1#UkSn%|3WpY@Yp?Agf#m~Kvt)Aw6Z+7h1+cxwX;lMjA2ut5SM zjR6=}u=sc%%zJ7&^Tk^|(*}M2O@$fhsCeGq{eiUpfn%wGm|02TzF^UN@WqQ(i0sPk zE9I)UOeae?=VPDI7 x HRJPA%pY&1wLMqnFu}=g$n&KV>mpFQ*kf*Y%wwU-#cHQ0jhkf3F@Q*CMh~#j{&()V2j46E_aJBJtx1ud3r2 5&b|IWJxIChPs z)z*sBiCBg5XDdccpWwO1!S6?~nr^=|2jsPhjE9APz^LLv>PSBpUqKoBg4?rb^2S2b5Y^(XQ}sik%vQ3TymuL zW9vB oupzg{*Vsi%Pu3r%AEFT%_dC^4s$iams@x73-Cwc%_pN zdz-%Yr$koO%^`)+iA>UKQ%TtO(+~wg|VIxx{3b&>ZOv%r_QE z?yRlzmHvF`f%F3f+lHQ#}F<97~|^vo65jIry;t$D*7wFmJTMTFpF`@03{1+|a!q z9Fk6$)xRkTfyZeHuAm`qbv+>|%LJ^^#Md+R0Y*<1C zm@&k(6gsZiE{M83Yc%8^mOPnE%D)(QUH-l9YpF+nXI>Wd##&NRht`hgU-cQF{dey_ z|8Zu-@Tr o$w*n{P! ze8@;do}|YJR!biBE!nM21&(mGL2UiL&vlXsxWToqU=Z&1=3NSCqyX)%#|TnsS28 Q+cdWR*Z@>%EZyL z=C6yZ6x$n!=~>a2#O>4)i*3YG%%((dNnv6Mkh!3&{1KzbGPo%Ebk3~LW~KDaEn1ro zL6~Sx54#Ru1e8=@_IrHG6O!k8fok(PzC>%!C?VC3%57bDZv666dSl7k-#|cuhC&7{ z;De_61?m=6bZxbG)Tjx|tpPr^4>xQ(d1vEDsE3=+AAbof^nNPwEVqUnG9i05LA+%& zIS?kHIElEO*ec2|dg qYa>Ul}Noq9XWb#NGf zQ_n=b=NTsBQx4YC9X7dVnQ;o_1xo2*iW2LJlEb3I)-^0X+O+9X9T9d6J7XoFbu&5J zXqeZf)P2Bm{uq~$E*I=g)+Wi}_AdB!fH4^>gA5wiHXDu(Hd8K65g$LUUVpgcWaQ~) zqZzt50&OmSWOPSmwNUDLA~tNGJ>W}wDq`DAU|WX0d<=UJW2z0N7Jn)%ozz$sFq5nX zma Fa_Pl{Ap%Z@$Gx-B{OnE|P+pD_*MO9se|Mc(ZOSBSZd;g;nnKV!M zjLH wrpugf%%zk&euH_5PNw|NV`II?@9enB@+%xxVeVfLbXLv9Ft66s8*%L7|!gh zZ+(G64J?Q;iZ`v?i~dK$r~4K~LU)<5YG3e$(>ZjU@b;4}8{Qp@LVc~6$NN>~$*&M` z0@n5Q_eU#z+`ZL5UZ@4>luaY6fWVInJb@?^@ZgY>j8lr~mskfgit|`J zm5 h3#ZVM z%iuRb9K?IRwCm{Q?JM;W-H$h(=d2Y~K6(;3$x&` =|dCdg*W$f-5r@;yZ4h&UNq zJbMs^pTsJ%w$*W{%Mo!ffghq zSu{~{_j8uj_Mhy-q^(n+4|hi~4Q`g4r!Nh Y9f8tjZNxJVZE6mp}N}8&|+C@mu^wk@P{J^L_F-h(U;x^+b9>NYsU8q8)#7$|f zK_<9TrmU{`8v9MenA?9W83;eO1@Z#uWmWStHc<4}Aa_|xW^+@SsV3*v;k?vBVA;@G zF&y|y6>U)t{Vt#;+SG}iPJd*Xd+Q?_Ks8!8god;t=cB8yb!CQc8Qg64Hf#Tw!?J1a zGyI^yV1FulR$jim+0|3SzTOuLW ib6{#v{Sv`=gt||Q2zau__0R+iECbH% z!lQ>Bh227c2G)X21JG1>aMpBbVc93Mw9tT)zZrCGKK ua` zC3s||VxT?51H9e@Zf$ rkK4yWR(3 z?pY^gWgK!E2xhjOuO>aPXxN@9`$3s+|Eo5Ho&C90rsKim)$`KBFc#i~(ctI#6+lsg zwve9H$hlY%&X6#F=#>a>j_#_AdXN6INmi{z1ptTb;jrr)v0i_+3;CGnnQZgv-b||- z3NK$4(Jxm#KUrg_@Wk@{uV>2wgu()LLmIX{&2Af=kdtKfx|mj*lZF>lvA>ZFswF=) zZe;66m{oP|{0q;8a-!YRoBXG$F$6#1=@vPg-I~9eje*|a_rJKk4~Vs2l})f+#>6M~ z4{qMVCDU-YC+<4Hx!X)!rRs5u*D u*0zN@e+o;=k>F_`c&7mP3sqGD!@V8S4+00Bs)8TAn)nK=FD=b%iLG{= B$lbD*`Bw@m-A(Gif1tZ=1=7BsS4V;KsS5d=G~HbwV ;)I06E=~?eotKl-)FO?^B@4TZqicDolRZ14;@zPk!_k- z6qBP^QEAtkqVn$1sRvGv6GfljX8hh!$npXNzU$lYx#Og4dL-`ev~&Bs$~;>5^zAAe#f=j}u4ZY6{!)>nD4O4Ia~T0@Wx|X?)lmsg zMjUz4R=I+q0Df4aL`j7R6JBpq%m%uBf{AEV-+d&aXeG>CKrh`1nRS>yf=41635~zW zQ+yUTJIIs1nJt2&YJT!%bp6dTBi|*yW8E#=RuoHmT$v#3h2ML?ow)aBMex~-6~}*M zsk(iwBRjw{HG?||Um_mn`!n`18a2gFQnj^=3evEAaRQ$fU+uCr+0*Nz96f-@N2Ua5 zC^8Ni!M_l09*n2b*bBl~ MD zx;Tewt q!y4aK1)1*mV1e1&E^t>R zOev(((^7dLm7;OMHz>`>WB==^4bZQ4Ks+>l)maONCc)plM6F|>wmK@YJ1``oq@dYj z%!ZieTiaS~ *+dzrwEo&P+-0fh8lFC8U+GmeU+0S y?#T+|u9}QIBJ^{R0b!er~CjU09v$x#2WFqhEN!ggc!EOGP z#QO%B2|G=-SrsQj3wGnVERJRk#^vRen4Q)g8x!=vu=Z#pku@sOpY~axouZ>n-Q3++ z;afXCf>qQg6sS6$|doeka_xf>uZJeY_Om?|GzSh;A-9AH+&ug7br*2ntYbd zj3sY^;>eYg$TJ$lx_C!UBY&W_9(x^^&HDvJnN8&7d|c!ahTW+^D5^KNy+(&!*!`{( z1fB4eI3GCrXW_WZBlO^K=|S~x4mLCMgGGO*dZHDx1xLvV{eM*ISL|5Lf?E0C0PfNb zcVHhP+%BXL8+mz6Iz?*_MP9U=@(Xz3(R`c``gX~06>2j|+^EeveN{ctD;^f6c7Vnr zVTQJtEIlcbxiVhyAk}o+)T5njJPmj5(U8{cxtp=psaVSLx&`D&F S=?eIL8V~%vanyU6!D#I!*Xj`xkb}A~u6$QrRyQON zAXHDSEP#l3wWQNwkbl;r;aqpm|ERo6L) $q1;dB3aK8HyRYi4`doqWbx>r4Zs0?Kd%oLn>bu X7xi^Ozq>0Suisv zq^smzz$7 eSh0Qb+Aln7eb_x@G?lLr z%YTHM82-%G-DRDq4!tO6u5{aCYavoUJ5hyB?`QlTBGuqZspdJv4M{b J#7cD!`fpkSU1 zDF35Kj72VZtnZe)vQ>a4VR+6$F>L9p=f0W;TfaE|l*R41u$Ows?{5zp?DV?FDp}ux zIuL8?fjye8^m{5 zfwL=bwm(y!%OPYg>*TmxF@ZFHwmVnJ#CZjMW_iIx`#cw}l z?)tWI!P!8;%LYp@z}&t(-O$Ruvj u|00h1#O5vth;yw=!JgB9wUa-t_ivINpk)~e#s_%oE$9X7w6U ziUUYKJGtwPDBR$AF6A{+5!tHO95Ft&Xnxu^+m!HvASw0>;}zRPA>1BZHyC?OnFte! z=Ulr(M&i#F&f_Hs`jfRL2lWHiO;7Gl{F#nciDjQm=+$1F_2$cb*}P+6bZ0gd`|`v# z^aG`~B{I^2A;HTyF?yS}E;fv(j#+aE?VvKN>s#ucURdZ7JFNJty}7ad1aZ6*EyWxv zA6CB;ENXw-**7ZZzKd4!FbSweazMa#G)u>tYbqn(-Ph&G|523-Q^IQ(LY0E%7^uaD z!?%K+O9#Cl*4KuWAs2MdcMh=7-U!jJHM8u@Kc&nA&LgX~42l9!quw|4cnO7gZDiWp zhxT*lNE!Zk+|YYMAS_S@S#b`a^%u&qVk@13bJ+Uxjgbtz8bZMS_Wajyf|l3AH`ga3 zz4u3lSa{yhYC1o+5E&@b$JfyJZqKBInxDLHdMyfmF>?IQs2*rhPs^;O8-K;EydvA~ zaZh3jCdwC}Vm%`0R0{9;!tn o3519Krc}gYn%J>rmGifccxua z;)B#Mf#{6Ch111D#xKPnrG%=Av0>bcSq|UUj>rD|{2{Yt584gX))o`3*ygp@UrYtM z;?_(y!YR}u6`n37M wPpuTf? 6U3qlYlq*ZvL5Xa(XNpKG4D_IGQ0KQvJ#7N2 zB3dDkVU#575DUGOUke9HK+GqV3rm_+Xxvi7 oFSFpW|jH4#>=6r zJ7kcZ>F%(mr)v!mzw_mDq*=#HM6%-FnM**Xu~@g9HD{ 4FRQ)J!z?ONvvWlO^-jEF#pA)_2kMGC=oi{yQ|VG-B|vFY7lI>s%nGRw&ME zACW6p7MG~t7aNTSFCMSTTr$X>`2HJS%bVKq?Smyp&2Ix4yW3X^)#9c!Q4*X(K~LP+ zBlXyGg B0}&xmRV^o!57 z$nJH!Tpujd;tSI=6SlDJD!|mV L{p9+Sioo(n(FyW`2vUgLE@u#c$rHZ@ zX1nSRXdl{v^R(N%DG ?zB-R{zp}WwX9dUdI+Yg3;U|FRS$HB zcD2V}y o?UJV5?8+QEakB~w7iS@w$s2;7i zX^>&>8USHDoqI0V (IV9W-K?G6PP9y`r}6z)A9>GL>=#H=Y94uNjPtMC zl^XHQGTx LSeW8@Y z-U%b!s2PQ;jjw>X(@Vmd$ui-87e$vGv9|UVJ}yXMlD9EDBIHM@enAxs7-K0y%^p+z zC;GgtIj!y``bQ5cdD^2!YExBOgvC4SKKax;_)FD;(Y1gnXmZrB`LadxsnNnoidpUy zd*zPFQy-Ql=cM4=KnI}3Yqj3vIka}Ju{1IFJE@;@jFb-*u*vHtSQr1DnhGmJyc-MX zftalygyAqzNZzEAvOvN~z#^=jWs5ReakF-|_29>6EOe(QrfsB%2NuQ#n0J|$0w(UY z+~5sgR+@UoXQF_8d^(UMFi1}>m_Y}LanrvyXpXekT|5Ed2QK02l067*z^yNorX%FF zV6cRx-0Sa~YKpwO9Pj*4ld%2aw8#{ D+|ucSD~=OIiXFsN z DxZngm^+xS*{u7)ijZWI*0&FKyN%}SHLm6>!_LtYTwYH5f0Kx?_DYusPmu* T^@hU&Ls9Z zES)hH-RY9HLn1F`4?F;=NusH2?)~Rz!ojaLqx~(N^dEJ^eXW+%aHrH_?{AHutt;KH zU%z+D0UCaF+QuSY|D|{MpuC}6L)w`qV6D)}S4XAwflG8V$y*ls{F;|O I^&xJFl zWGp^I1?}3!A+cstoW^Gcq!4rY7s;Lw+#MMsf|kG@gO!4PvVZ+fUwnNWfYS!qRzJZ` z?zhhe;_YBv=k8lLgepU5S?XE)7VF9#r&|B9h+bohS4j`FF`w1y&7Pf~mfJAbfBb6! zLOreQ0G=`f^~5jvqN2S^)+NKi1~p?*1u3(vN@idooD~fA!Tw6A116IIbeV_+E9oKkgeby_*%Jt^L)d$ zSNeCnw%6CX`H7)qp}%!P+)KiDuAery WLp#uEo6jTwX1H2$4>pgi3(VaaTupWB!=Pm)dyyk44Uz3LLC+no+` zop_n1XsQ^u=XshAjK rYJ+e7K~fx2|3-!R> HwtzmH~a`AS7(t1BPb>g5e*X=CTKnY|v&i?%E5HIonQk-z)Dg46$umzP8WPkMF( zhyvHP;xVcBLAKhL{XV)&_a% O&?p8I?0(Ewe` z{~V?E#&F9Hzu8;setIMv ZTlQn)y0@ zz!lZDNGzV=?f>u@DGzZW8L{`Y8>a-GFMjCb_b~&))a(}*+i$BC*rX=#;YW67o{= Afu0Ulz30U;w8_k<5ZvJ9 *|v_=VneZ)gtr){lKXEwZ3WlKOp8| zM)5BtjBuC7Mb1wZ6L17Ap~+xw4VMkMAD2}mzZJ`PsB0$B+lM @FD-KV?WB_a~PA$ZBQv}x6ge5Lh4 zN9RkIJCYdMH@OUFvH~q>MxW%wc1Z1KtgT{&e8b+t9)G7jGdYLWooAe$2BeZVD)*=; zyZ`VZ1j8p35wCYZEB=aeXbtIb8srRs+lVT083y5M&$IcXr@1w6L#BFiB7Y@Xh!lMb z^(cRkUZgYoIoyH(v^0>qYo@l_-N7{7w9Xju`Kv{9aE1?Fq%yY&$ueQ}B~;2BURTg# zHeN)#UD!zdF;B(%o>!9Vbkkbb@8tZ#StgBB==2|_*Z$V?R7r7W(OCo;yygS;UQ9-t zN%zw||5L~*2ShS;Utq$Q@g_{LbnBk=#6xeR;Lxe3p*=5S(VP}o5@fS0xTru2QOVeX zp}iuWRuSDa>PXkq-L?TQX4o>-YZtBz1Lkz%GFcWLf(HVq%3La7oFA_ z0Q6O%*GGLMgNoHR$3?{S1sOaIhEaPJKqQ(;#uhl);(V%zPp(1H-Q3$PM8F@|k{TYaJazTdI25jTLpWo*rRf z`t=Qa4$)s~HM}Z2Wv4|N%^f<=af>f1TN>KxY7(4970Y3=Dy@{QFs|LsPU>f4qH*og zBdn{dBiI9A9`Aqb6Ej0pFt`m)0$bbOQKhF%E+yyHINEhhnCY5`ZPO3qiRlEh^5Fnp zJFS~#>`}BwC4r&s(1tKhlcgu%ZN~qo^1t8|Ig#h70iOoA%_(bn5?8yD4M?TeJeM>S zf#!0-EIzC(Ix`iP`eJ@T31iS+=%Jrk{=#cRp{^qo_<0-1^(VwvHwYGl7p5fw+hFav z{Vo&bj(h&EHTTD7MP9wP8DOq%a(AQu6b0#!3t=sHTWl83;r8xyAhBsLiT{V6m`C-r zI#>9wMg(ldLhHHy^~emCZI`F+ju=IrA8k>NUOo;fSge0i#sBM$-kW@nho`Db`PB_p zTQ8IRAEFKHk2*aJJTK@z3(U*>HlbZJu?`T#TObie6LUk=JU)6OZC&-)>&c3ferso= zPxD)?Cl(JLsMfb?c`@h!UArjH#9%)F02E7 We-^ zCY#8oK;O4x@FD!AsWWefvh2aq4G^~HHYHBxhk@^YivGQG#Gi0^ X`>cF>t7qiy-AwWr|t6 z+n%B1K%?K`CdLMnc&thpScNl&7^e z9-)%{v0(2CTC6#gWWg13z5QXY4wl`*L&z4zw>tC~!1k?`kq=NIjC3%TSrWJjl)qr7 z#pobwXG)&h;-uNFQE;v??r$CvLX!@FD|CeFHO3-T-jQXlq!)c} LXymWiZAkiecNdZx*P zIiAMTJ$H|3J@|5g7Qwe>i!AJA^m(8v=e#Uy+ygY6=b5!#Hck{yS(7gK7e^yp5Aijp zfii3tqplYxNU*^rbTuH#MpW$Mj%lB3RdWpdI`(o==b43y!X7R{tuS20%}LMs{S9sQ zYAN6{kXf?LOjY@z>ZV2p7^KV!BFWu;r890>?7$`1;*FG_OmQ=g(@{NT>^6FF zNUPmD{& =~xA++ ` Pcx`WhqA?FU9OZW0}yWWDg2glY4raxhsF^`h-{ AJpCAnyjA=i$= zly9Eak75>%*Cf2fwobtvvii7A*gY_vAih}bblNk2?}lC-ennxfJ`X@Gu7`gA^J^KH z8Xjo3nB0LiT>usu*RcL8;VAapNJZ2yT*OYdi}hzy?Kt6;-C(MNxs##QiIz>;(=C^^ z# vFL?Tr%CtZ^5f8C;>|D23bNZWdEf0Q~!A?roq!X#FtX8~$;Uw5R z!AZxjQ74>h+V7m_XF9?`F_%fo&J5L+jYC$c4= 6ZxiAo_X!v-S;u|Esn@Y${9 `$t4~lMU5%t&xf(+ zxFdt8wi{>nb+fu&kTEl=)_isfwq5PFL;2E-Zp22M&6V9o0-4O0u9q@_=}ZO9m{BGQ zPMk*bwPlNE29jZ0W2)sD>E1FkYu~QE7?fRTwPbh_|7w=erRu0vU5kZI?lEOct8` )GxFlX9KayuefcZcu>)Y4&VoS%koPqjb4Qao`Dwt z1;3STr(03-_d=uT2w#c8`D&TwMJFevoMVo5U~_&^JhR9ln@*?A<2{VhgGJB>uxjA= zHHk^Jatr=g9YC6i=W7qSfh(={22o4rXyO|B4zfSo(hn}$CKXcejKMLESI!03C0K|E z`945;A~?XKoWl@eM1<9v_0VXdy0TJ-p%x!Q##6M_2oOPA%zsqdQ;MznxN$+<0i=Mv zd7~(-r|m_M^kLZG{?1%mYO9c#meOVq|H9p%Ouw~U#gN3qcNXuxvOM0juS4TTM9*3> zDW^r HJn19gMG0a0iTuK8fLWliMX2wB*S?57%C)S83QDuz5@sTJqyS@))NW2ftWL z67;Lx8E5s5SFVdk`9Q6a6!$DCMrP2su~osjS*2#fBzoDxX8~W~zN-vx0wtZwHhcE> zVo7D0CmxI5o-u)MqOk`RL-F=;S qJ6t j=>8l#tmG%;*_4c9pV9>uho8R zO8hpbmdF+&E Kk+o!JCj%wQqtqKpnBY=Ez~;X6^}%cWfL3I*OL z{`Vz+r)&1?93x7iDZiFRv+9LVFp@j`q`pjsSm06Lo)*F8F8427z||?OCSCBmW&>97 z)KG!dmRwXH7d8Qxlu?qCOAVv5vhuMAd`uBKk{c7Z@9TFB5j&W0|7T7(3c}Z*8NW}} z{hp~Kt4wJee`1Oah8xTS%xxqCt${1`6OmWws2KEjVedEdzX0Yc#r7oU@vk=vyG)q% z#4CBT6s$LA$}RD&+y}FiBA_yHlm=RlM8C8+K#R!&nF+wGw&Xs_WRWW*@8OvFJWb{$ zWqedEhH&@q*QV4@=AD0K?5Uybp;KQgf@IYjLbC3~+#}e*(WYPP)1)dp0qQgWt&4x; z?GpI$aQ4IA&D)Fygy8I)_8p7zrv>T}?M=1Gi>-XmIJKF4a|XLTJ!BrP6>=I`w7R)@ z)1(H%YOOXWr)Vv@zPZs=*R29U7Fza)5jj0& cGvxHPR=Wx*63{A-<=lw}OuPUtf zO`7ehEiN+X6<8s42F@Q6n+_8UH`6)>id 7SrY9e6N=*pB87<8{G%V zHp?;MT}i*ZJ}5h63END3S@E9kdUgc~lv@HXZk=SQBJ2rFZa-%-2c@tNNGe{DELI;WN$0VH3Kp?oaR?36}zu;f;m$@u(y|SP G8|_TOALwA>+l?Nttn-e>Cv7M>ACI(b_TI&YpTZ)^bx3K=;yOG1Hp z>CXJr52|_*a&pl5bYu1CQkC<4_gu|cgs;4i1`o~LAdx=M6M`1Wx|8-=Owe7*zH#5f z>fTPnsavH6Un-{7hl#|~zKd9hzHBVa)fr%OpT2!)l?Xh!F!L!3L0<1ID=1;GG$Sum zewJii qQ*9Iu8!r}7gP;K6axCK#YePZqHO1Hp)_*ytDWZnMW zn=SsXeJSVc?Na#TO}%$WJ-i0QClRns=@=}2Nur4aaRrUv`WU|;UviDJ-*-9IBd%^X z_MaH)Jk@t12x;3WSpd2dLoq+STc!qPH`uQL1Tt-FC|&9S(>+iMCvFL7fs(BfZOx)R zJ~6*5-7}8dpWyd^gZwAHGBe9J-V%T$34S!aSdBTNZKMXs_VPxrK|s6YS?;LX;AQ4}