From 7886ee2135ab924889f6ab1183ffd9a0b2526c49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BD=AD=E6=A3=AE?= <754959545@qq.com> Date: Mon, 22 Nov 2021 14:53:29 +0800 Subject: [PATCH] =?UTF-8?q?update=201.=E8=B0=83=E6=95=B4=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E5=A4=B9=202.=E4=BF=AE=E6=94=B9=E7=94=9F?= =?UTF-8?q?=E6=88=90=E6=8A=A5=E5=91=8A=E5=90=8E=E8=AF=BB=E5=8F=96=E9=80=BB?= =?UTF-8?q?=E8=BE=91=EF=BC=88=E7=94=9F=E6=88=90=E6=8A=A5=E5=91=8A-?= =?UTF-8?q?=E5=AD=98=E5=85=A5=E6=95=B0=E6=8D=AE=E5=BA=93-=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E6=9C=AC=E5=9C=B0=E6=8A=A5=E5=91=8A-=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E5=BA=93=E8=AF=BB=E5=8F=96=E6=96=87=E4=BB=B6-?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E6=96=87=E4=BB=B6=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/Report/ReportModel.py | 10 +- apps/Report/path_tool.py | 8 +- config/__init__.py | 0 config/project.py | 1 - db/tfse.py | 37 ++ result/远东资信评估有限公司.pdf | 389 ------------------ routes.py | 27 +- setting.py | 2 +- .../report_template.json} | 18 +- 9 files changed, 74 insertions(+), 418 deletions(-) delete mode 100644 config/__init__.py delete mode 100644 config/project.py delete mode 100644 result/远东资信评估有限公司.pdf rename static/{report/template.py => test_data/report_template.json} (92%) diff --git a/apps/Report/ReportModel.py b/apps/Report/ReportModel.py index e79a4ba..ad9521a 100644 --- a/apps/Report/ReportModel.py +++ b/apps/Report/ReportModel.py @@ -1,19 +1,16 @@ import copy import datetime -from static.report.template import template_report - class ReportModel: """ 信息技术业报告模板 """ - def __init__(self, report_data): + def __init__(self, req_json, tep_json): # 接口传入数据 - name = report_data['企业名称'] - self.myDoc = copy.deepcopy(template_report) + self.myDoc = copy.deepcopy(tep_json) self.df = dict() - self.df['企业名称'] = report_data['企业名称'] + self.df['企业名称'] = req_json['企业名称'] def report_vlaues(self): report_data = self.myDoc @@ -21,4 +18,3 @@ class ReportModel: report_data['生成日期'] = datetime.datetime.now().strftime("%Y-%m-%d") return report_data - diff --git a/apps/Report/path_tool.py b/apps/Report/path_tool.py index 101d4e9..03bfc78 100644 --- a/apps/Report/path_tool.py +++ b/apps/Report/path_tool.py @@ -1,10 +1,10 @@ import os -from config.project import PROJECT_NAME +from setting import APP_NAME def get_project_abs_path(): file_abs_path = os.path.abspath(os.path.dirname(__file__)) - project_abs_path = file_abs_path[:file_abs_path.find(PROJECT_NAME)+len(PROJECT_NAME)] + project_abs_path = file_abs_path[:file_abs_path.find(APP_NAME)+len(APP_NAME)] return project_abs_path @@ -18,7 +18,7 @@ def get_font_path(**kwargs): def gen_pdf_path(**kwargs): name = kwargs['name'] project_abs_path = get_project_abs_path() - pdf_relative_path = '/result/{}.pdf'.format(name) + pdf_relative_path = '/static/report/{}.pdf'.format(name) pdf_abs_path = os.path.abspath(project_abs_path + pdf_relative_path) return pdf_abs_path @@ -33,6 +33,6 @@ def get_pic_path(**kwargs): def get_gen_report_path(**kwargs): name = kwargs['name'] project_abs_path = get_project_abs_path() - file_name = '/result/' + '{}.pdf'.format(name) + file_name = '/static/report/' + '{}.pdf'.format(name) pdf_path = os.path.abspath(project_abs_path + file_name) return pdf_path diff --git a/config/__init__.py b/config/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/config/project.py b/config/project.py deleted file mode 100644 index 766f5d2..0000000 --- a/config/project.py +++ /dev/null @@ -1 +0,0 @@ -PROJECT_NAME = "tfse_rating" diff --git a/db/tfse.py b/db/tfse.py index f457b80..318ec0c 100644 --- a/db/tfse.py +++ b/db/tfse.py @@ -1,7 +1,13 @@ """ 天府股交项目数据库 """ +from datetime import datetime + import pymongo +from bson import ObjectId +from gridfs import GridFS + +from apps.Report.path_tool import get_gen_report_path client = pymongo.MongoClient('mongodb://{}:{}@{}:{}'.format('admin', 'fecr1105', '116.63.159.166', 27017)) @@ -17,3 +23,34 @@ def find_threshold(param): collection = client['database']['collection'] data = collection.find({}, {'_id': False}) return list(data) + + +def upload_pdf(name): + """ + 根据名称保存该企业报告 + """ + path = get_gen_report_path(name=name) + database = '报告数据库' + collection = 'PDF' + fs = GridFS(client[database], collection) + content = open(path, 'rb').read() + pdf_id = fs.put(content, content_type='application/pdf', filename=name) + + return str(pdf_id) + + +def download_pdf(pdf_id): + """ + 根据pdf_id查询pdf文件 + """ + database = '报告数据库' + collection = 'PDF' + fs = GridFS(client[database], collection) + data = fs.get(ObjectId(pdf_id)).read() + + return data + + +if __name__ == '__main__': + pid = upload_pdf('远东资信评估有限公司') + file = download_pdf(pid) \ No newline at end of file diff --git a/result/远东资信评估有限公司.pdf b/result/远东资信评估有限公司.pdf deleted file mode 100644 index 028ee9b..0000000 --- a/result/远东资信评估有限公司.pdf +++ /dev/null @@ -1,389 +0,0 @@ -%PDF-1.4 -% ReportLab Generated PDF document http://www.reportlab.com -1 0 obj -<< -/F1 2 0 R /F2+0 15 0 R /F3+0 19 0 R ->> -endobj -2 0 obj -<< -/BaseFont /Helvetica /Encoding /WinAnsiEncoding /Name /F1 /Subtype /Type1 /Type /Font ->> -endobj -3 0 obj -<< -/BitsPerComponent 8 /ColorSpace /DeviceRGB /Filter [ /ASCII85Decode /FlateDecode ] /Height 150 /Length 71075 /SMask 4 0 R - /Subtype /Image /Type /XObject /Width 811 ->> -stream -Gb",+#@%t`p\1:eMPB`LmcZ&IG,Z\61htO=M6Y$uM;;i%0o8N+`Y,o2=C[2E7c:4gm(IUBYUcH@+AL#GIqH.6hX0.dd58VqcKBW$o@TV)Gr,'S]C3FYO!*M:80Wm9P"6dR,a(\BM'S6T,)IS.80Wm9P"6dR,a(\BM'S6T,)IS.80Wm9P"6e126*@,ri[;iQd`]G?Q,TYGoJ!k4C'4p6kW':O[KiH^Q<+/7U_m'I]QLS;-?e!IJ6NSb;m6'CARj$afuWqUQ9>^G3k9.O8UdJcuJQc&U^!eqQF%gAFUJ"@W!2gFZXA5hNc<:glnQf+'0.@YC9D:aK'QX6e(%R5tF[U,N:G?6kW':O[KiH^Q*%C?r0jK;8qi;c`ZZL\UW_oJ&78Lqe#kk6(&%q.?V?$F#kV$HR21,b9D@5U:R3iqZ09n>f6T]puls2I;jHf&^G;"AakBLS6CP"od8/!FY/56^UXRJ7U"u^]>;D8c=7kK2>]A3rC$-0O@AY^F[Md.C;`?<7aJfLS%A$IW?m4WoCE/,UR9J6kW':O[KgRUpj)=iuM@(hin1AF6;q`GKoH=1oH6_dO-oL)hYY85re_XIake=mXHB$$NOio.GP$4nBf1PrNf)9f8iQ7pQUAYVoEmUM[tQp-D&UiEQsDF;b.+b#-:"E`.T:mPnQtt>S'kmKmKQ8#$ack>Q!Oh=!@:gfe/FY,)IS.80\!K'*^?oG^1#e3.LYjT4O/!a\^mF*I5D`54Ah8-#e7=C(%hEHSo38>,g+Un$7'/=Yps_88RJUNr,.O\:&$R;-hIe&sJ6N8WcCR8L0Ed&uj`eL.)o[.hl!(O)h34d3XgJ5094]lF/oY,)IS.80Wm9dXMLakR2g*;c13-b?eILNDC&O!WWOW,q/a[#W+Eif"565OY11eraY2o[Ydtme\T0Q9Mq)eOrDedkNi[]9*[\qPelO]09SjMM'S6T,)K9CWZgG&eGAa&%o7)7RQ.oH8sE\/Hn^D5d]j'`_R303=,&D8?H@N9V>)/gU/u*2,,N6_Ur3J5`s&?Z"f3RL/)47!!%`];H_`tZJFjDbGA;oqa;#nU,a(\BM'S6Tg(ApCY9':jo^0q,m?+f=%FEpf*HV'ST=(ah6G6"75@75ohZ:LVK#d:%Ccc"0_M/t`FSCK5:^.7>@Sd1Sm3P&hpdGIGCd'5I'p\ifapFj3X,(2`b'14k!:h/IU0T(=D0+=3i(T8C6BjnDCT];(ZTO,PAJYpR6I'O9a&n..u,)IS.80WmiH_TMGd9<`JV^MJ2KV4Yr%:em'(/QHS)THcTn_HfFK%n3CVSrdk3b=H1M.%GeB6?b%m!n8?XR*t+'rSN7h7K=5!-3VJ#u(]I!g'PnT$V$.kEA'WdXk$oeqah@?nXC[p[6/<1&q/dR-tZ8MU)#AM'S6T,)IS.+@6p>Wr1Y4=c%2\UdY)qDpA`a:g!i5iZ?eVe)CF?;-fC'49;22rCa?#Islh@e3=*s-WT9jejc@O`.R/)'sAZB\[qP3hA&O]IjL$BL3O-"-@dT+K/-OZWqP8Eo,jgJ#:G4NB#Fp;]s=,F3!*K^DjX'>M'S6T,)N+eBE3*8CNX[-LFgS$,G@#emEC,LUhC*1M=FB%nD$%9_nJS8YKG`/KS$loS/Y3;C%Am&kO@27/Gdd=J"D6#*T9\GZ0`(q2QO(E1hfSo.h0+ZqG.5f<]u*nE<3-]W+q&[7*G6j\IW5L0Rhs#<=^UQWtsn(Jk!GH(B.(qr$20jb"60FA._e8W=0e1/t8t&u-\],+#NYp/GX=9L)Lca4Y;c1!SQZ+'apr&kO@26k\b?+:=3,+JHBZkes?:PJXoHi"@RB;0SOl%D@Ic]1Dt)PaH?FTcWGQh(L$C']bkF[jNYUV0_B^^^F-)%Bh41R<*KAiSTCYSC:=Nl'!1?4e2p*)km[u;&iD1&jj9=ZsRR4hu2"cfY6CZ(4F*W=^lKW]RO\#J8]I)1U#e>ctlS00_G6H$rSIV62a-Bg.luTh^]PHhl[d(bH"a1qu9hV5Mf`,QAEP!&pg]cn^04g7u'Y84[^4N0O<%X1HX$ZrDKB%;26#&1amj<2.1.'J]SL1al/h([f2A\I?5Op]pkg^9Y@6skk:_Cq\BW3SDB=e8HKZa6AQ5>9Eu+FPT9+6E96ShP37^M&?+@tWKE%-#rU7RmJt@Cor6Bj:i@U,e8:"^'$7(d[]1>]oVL\e*!W+/-q?F0q50Ea!Un"ul?Y^\Cus0&s3J@o0i41&1N*H+UJV"a:N;Y^lgB7>J405e-=n:S)qJif[YI(e^b-*7#$[6[m:/YSp)qFp6"*9K>WMqA`?l'=EhI2"uAo"?s/$:7LnWU$:GD=49:lD^U_"7b\nRgI%7N'Pskq@tac98V$A]q^3PQ+od>8e-).DH-:4Bo^u=k/)G`kO="'Z(;:#BM;B1dLXNPm.#-D^`@@kLu:#VNZBan9PP9e_UBZ1Eu`[,N`IoocPg$M.BGL,T?'^EMZLhXe8l)YX4L8k4bpX&2feJ1NO`j\)37,fSg0`T8fMeB?!>faX"*dpq.mGaP3&+2@BY(WZWFlf+a-P#0t^3StuUYK[+8(:KEXC4[ejG!p!\fc9[3XpKGYW1JSfI0`(*CI!@A'BS.Rh8_@1uWckTu/P.Zq-_B0WS9OjTmdVlQ%^*o6[,qjkK<$&!bfID=%/d*_hYG"nQV1]@X"8Oi=rPeHQeXrnFmLS``MiA&@X?V2_+A&VWT9154O:Ma'.rGhQP.h+n(M):G5^aNO_WAs]L%dilSY=CLDn2biO9K=kWsW59ls[B9jFboYtl%^B)ftDr/9uK_t8QCC:A@@W'hZQF\0$%;Q8RBOr_PC4:D'3ls`i).%rfVf%#Nk>7.C/))0*o>+_3Y-qB&D-JaUiSLlJX^uc\M'a"Sq,UX$C%-Qb"XZh_SJp)Bs[Z$2X?Y3dgK@m4E8Bi'7kO>F:=]FC29HC$(0HtE'Mh>dri%_N?>-=d82PL/VnE_KJ9+Zi]R]1:l?M\9]niKdQ1QK73k^O%Trd+Sjh6]\;h]4]NA?1WDS`!<0YqL`r<7sHD:GpJ)j,Y.XN,(4$bjJOX2ONHIQi:iI,?eCpZJ;h%T],,k#J*@as2GLlRrla=pBn[)$?[*]9D18bH,!Kk@U!P'5,KYar1AOL0#36(a6B8M0j$[K4jASiI8'gLlT8R5KK/2:V^%fhu;QN_q2VPN]O>pD^:E)*K)C>K4a@qfN(cFlAYQWTfDlSn5irkr+Tq..lTO?AtWFGb^920VIpM'lJHim(MC%(?D*$)N/s,?la`_'OQ:4pg:`+X;jhqq<**.hlMO/'a^F')gUF1%LBS=p3/N7bVlce-XmKuPe4$^q;;0SuC29Q1o[al.R/22-V%*8hl)PVs70VDmWu"HOUGo$QJ^DlW#6&?FaMtkF<:UpXEdCg#WJI&:h4iQ+`Nc+pi?q'86[uUbiWuVh&VC\ASiiA^rmN(ZomdZAJ%0e">j^5ifB>cp(<]q7F()V+@N3*4WNk:.R2GT`4IY7s;PO*jhuVc0ZF#/H"35YalFH8RfMYmls&o'SX/YUo=,kosY?+nDG8R;CdO-?P>A?k+[(&B"RYq\G;GdNXGbNSJOi41.]9`OamL3U:\UCr0"q1;BgNE&q]j/qXijGWB!I-'L'07?WbU9c5.<`Qlm:,_'16OJ],`t-po)Na1%S_aOc(''H6bR(%Q\)`-.UXYI-UdlU@205dgR3B6W5nF2Xf`fcs'Q<(j.Q/M\k2^GGCRH,-qn]f7&+G$m5PNU:drjX=Kek)sZEM(KW':Z?=>^1=ShlXZ9:Jtj=O9Z3:64C:!%E-ns?)cDl3rf/dtTi3]DDb\l*WM30D/%XP4IU]:ib>FW\abHRCAO&(O`gVM:KK8XTE0PjjIO078[CJ[=.6<$/<5UoCP"=V^K8NTQ2rU2Wd7..$I4ER@jPhH8&[nC^:UFd,o6`i+[kN=/F6nR-cUOkuM@oK<'KR-]7E?Tl+UY:A!2M/h?Pn"9C\TZ?+aD_e'$-4O&f3j:2(Z_6>3n"-5EqsT,FBNKNXn?.t/+cqemZ:33qcFT"+,p+q"NGDR_2#TWDF+XZ@h>_8RpZ)qD+DOcf+$[oq$LZ"'[/@Y;LHj7B]XSWGae"H^qNh8`$=_%l%EFl]cpcMQ!RI7HG+ji!gN1+>UpgmRbOP3^5WDIcaQ<$JWCb8lG>72]X>:X>:UKc=uO2:=XJ$:`Z(Oitc!mAO%W&^liefpQM(DR:M(HsS-+rMR^e=jLX4>DX8I=&QXR'T/1^9j&,o^(;.[d>5YDV^Bkl@8-s46U%OiLBS;@6Y\*.Z;qHj:a%!82t%oL^-]&K$NRlUI+&=dHsVnUJfZm3lX3M-OTQi6\1$J3oA&)UefJ-\)J6/_pI^;96OC&N.@A':CrW8ajA@G,$B`/%k`Ic%-"!_V12Ti!!'d8.F3h^!cM[A,Zg:&E\6=jYPT"TReNnKRRiAu+UrIKY?r@RMnpBLtl8"`o.DdUuk[o-,e8p/8"sgeW_ts+:(9BSQ);(DCD;V^$Bl4Sg2m/@3kQ-7]5\/a2_u+.CQ(M8[pu9DJS@hAdeC+;.O726paD$Xp0S=YlI_"-7!Vo[`o_u0E&&=HdeCUQ$4ahQ.n)6F2frV?$_ofs,J7Gr?"CD-5Qkqb%S"I2;$C3=Mp2RAnV&M(!3W^J$p+1'5Is8-%1XS:sJ%#d4ND0foZ$bESg"I.\JZU15TCi[hqe+ZE'1^B?2I7V^c^6QSoDV!Y.K_A+>K^qT%h5!l;+Nk.jaHg=GWoOD92@d5<`2S,LQ^;Z)r.t6rQjRB!#mlX;eLmqUm_SH\_&?arN>Qpn8r;96d5UieNa`IB\=6eZ7cT9*,GVTXC5Ab)]OSK<>G86YIR9Ld(9D'.kkl^bRIL[DZOtfY"]au^SZ?J\Cm7tD`YNu.Ab(Iq?<=$-)S.c%9V]X*uuqln/Du+d:1lG5!f-4MUmCTE]0j%0t:"5=?CKl67>LXC^\VVM#KPO!Q(BEa9oRll$OUaB\5e^VmX3tS#o-s>476Vh;<^66]6'N&<0.G+$F)I$pgLfS\+0'U=7I2D8p!d*7kl-k_5!&5SA7Uf2:n'Os)e2)r-n3C#Ot;?5hS08FToLL=gEZgjhbc`*3l%6jS"j=PAa^5jcTft_3$Cs>eRl?pk^LGX^ue=_k[\,Kf%s"$3EWbqZNB=u';"hGG*K@XZ0U=!d9MP%jO,ac7DVt6dpYS`M1=1$J1_r>'2#D]RVN,=Mr#6aknE>UHV;-Z(9os3t,ZnNgAI<*O4Ctt-Og&Nf5/cRi+T^c=g^mls8?59ID?lT\B@f5^]#jBttO)$2L(t@$,X?k,Nk)7E6"or%!`m/Gg*,N3pG83Yt*Se<_?%D.SfZ5O\IF/58CK!m!*]J"]QQBK#0E>^^!5QBk!U??")HtQ0fl9t!^rU+\h&WkLlbRMC!s#BQDt*s-;-!`P&#b8P'sptBC95$glNU=nd_nC$pHe3fB1o!X*,`RSfpV,K.&&Tgf/mO9#\GL-pS=er6_dg`Z^/gNI4lbpe76k/b9qQ:otU]ijM]',t@qu-l?AfF7Mbcb;3_k#Z&Q4'7U&-XpC`sL'3=.ioXA"KYT$Ncd*deQYA8k)7r$NZ'7KPP3oTNZ_*56dsVLt:#aZ#B*XmN2O[BaGK8!f5!(LjQEOV$r3WMg6@^a:\p?E&dQH1Ub]Tq88)#pa'%Lrm!8kDW*tNeels'V#[Y0pJ8i$$!+ql.VB0<&XgO)*]RuD9'`^UWaJQY7%0Qb&m3q_6jAQGA^]qeo(aHO,JuHF#:L[M1#q_M/uXD")TRh#0ZsdM+M,]TG,g[-=MuSCd=S5oE3tm?d>=,(H,CnbF'gp78L,S>.AoFTB't;e/3\2mm>REj/T5-_dI_8TXq,>65XZ4+u*4G4R%-%br8G$A7@S_28YG8)Fd\-'V57O'Ymf6S?LFAjn=m0,QVL=Yl'EZnpcL#5%XrnHK\uoen,+4@b"Q"Qs>+n%Y$u(A7V#pAeg:XDqfin2pBVPnU]QefG+>+YU!8d]3FX#X9=GdKYNuKuJC8-W)`8DDXF/.&F%bSL(eY_4>"5:D&ae*?M.+=L>Q]W)gZtf->FXpsORRUI:.5*Xoh6_[?dG)7$q+1c(kjH=QM^0PTl5S@jr+X=+dFnRS750Z\#h9Fc"(-BNG",M'N-/_:B9+.3<[,tB*Crh.^MLV.UQju75CO.5l%1UVPegb0m;0Gi[bSE=NQ0^3Y$A>Bg&*ej!^iIiRoV2-)DaitC8@s'4t837@`:lT!19RB!%dB\NM']p7n:BrbJ,N,I'X#kfSTY;@&Iq`NWM=jp>fZ]PD:g_T:S68j^Mf!2L-:b3nHLcFJ'b,NV.<4F5(]/L?>]XTJQu(Z75>#@S)B'`;pY0cNmA*soZGC8:q?62\Il(Hs@F[C_&#FUVNep(1"@h&l0$YL-^)3bHH`7\kTF^)6A4cp;#ef%62*\(FAf=9+)d-flE,RQ.2ino(Fj/Lk`V#mO5kS.hC+IIfLl730NW?:k_XH?/'<[[F,BI^2KdjAA]6GL;IE^n=Hicqsl,gdSc/0lH\Yr?823YLM.,a;H>&G'AIBp\rl"pZSKC9%m@=d6-nZL,#^4bF'4r:i/7A@$;BQ@](86^r:X9oIVS@aA.\<+,LTJ5F^4pN-/ju6EO:$$R9icO=l>hD^nA:hNY]k+=_m>MRRl;^73>0'r\@O.sl']HEXL]JX9_D!/ukNhn>d(At"8dh@Qma,YP0f/,iYY[%iP]K7u%_,m4&M,;Q?-:P)eW(Di@%QEX?Z\tlhApDLb>m-O0Y^4?`oXeQ>Yp&c9q-rb8kfD@>n+%@Vpu,/F4?ObKDN%;Jkn(2JKF33f0DK#J;!Z?GGaO-eT_lLo:amMXE+CZE[7lq$LH8GgNo5U#6C2QIfg!0/eH]N6Q?+Ye8KO1ehuDkS+=fPB5819a/fah0VU6cceao`3X1;*"LRIDOo87eW])SM]:7:ioF^hF,@(T''E:OGC[38;2G7W'903WTCj5qL8$0=fYon$]BBEl93fZ-5[9i>9i/Q5's4lYA:Umu5Acm;nkM882Bkh[U-ZUmKXtT/XLU^ML/-7;D3g)Z@fgA:a/sR94n$u7<()mNEBh!KsNP3N9Q!p'F=]\a0E.#P+E%_EGe])BYOKTVu?:r2FrE#fO+C5gGVi<\.gD7._lCC"cLh%2?E2F3S:\1H3o9I]n9l(6-/!Dj`7AhGSN^,m'#0i09+!IiHXeF%9A"ic3&=#A;VaFCc>Hu,lbQ*.iG-NlW^kj31"o2EuMj.`$s8/"_-!j^keb41VoB7CFVRcX::WecU`M(pGSE45><0ue'n]hl/uao_'`;3#m".D#>#_5LTp6FriE('8Dd100k&9JX-V+\,l[ULX_IA;S?,CaPF7UlJB+Np.r=T\:$]VTWt.lg-Ymh/[@2EK,ZGKYf^rThfNMhdp;<+$fQ\";DdIKAf4WlD!B=fV,^GYN3TifUqGA,\j]iH?-A@gDAg@FcdWtq%MdsYU`5#eAH4-tFkY/ULo&%a,6VSRWgsO!7/T&3IHeh;'dF5!\:DkM;k:V8:InPh136!.#rFHB>l>R<-o'T%Ag\=YKuqR!=dGdc,mfPd%Zj2"DIX-O:qQj6O)^,i@TiE_L]r1t"HK[X7_!h[&e+&Lj>0%E.X$lX^Z7WNh#U^.oCCUEb4ubjAP2E*)Wr]FtE@ha$(";@>VHPCnSJ]Z<)7=Oc9RbJ%uhd/L^K%qR3<@Hu%4$g/jt)?rtGEK;>1V_:-Th.a1T7h7Blf/k!5\GsLp6[Slm&r+F:liGP%%BShC"dlF%#R7%0mcmAiCOdK-aDnF&?_f%0NW\f=HRB+s;ag^@2&\0#\9Rk;]d_u>-)'jurj')^oON2N70u9-!3G*=Gia_N5EYOJEr2O_TTC*qDp;d:(he?F.;bb0-N>W3iJ"$;C?[K95%Q(WSW2ac+%Jb"l.&OBj!SGpq(T\b1V#csSF_p&GqSl`V`(kTZj_i"VjrI(J(`Y>SS;%3;aG\972%*W&UVWn-Q2orjlG5u%6c.Fkh68>?8@=KZ9h7(TS[N4DW8;Ut7`4ubR>lc`^#;b7itJYR8CLZM7XPI'"m9UsQd'gXK8EeOK^PO^(/Zqr$ui3^!ZJ4%]:8KSf25,rC5ZsS,a5[%t(5[V-Pq%upT,4HiR]fW_n(?q)(mNme^9o8,#)B43)/-SspWeETN!#Y'%4PN/4U@eXb^NXu/8%'o]qg(oJH>j@9.OEe5SU1K;$"m.5_Ed-IG@')i:C6*k5E.No\_5H0JDD=)gfmB&\oj[l6GDR3Wk#LF[6X8k3Ch`gbm_I$9G);lI2%q^JS,L6lqI%j70hHQY+@]]rY4ATl&=K_V'`bo?0l/t*WI8V2I.K,R$+4s;$Sje&n?W_=qYHuPN`b$;V0Ca.X[i>g=F[eL5:W99Nr1d>tNeu,q=lBR,o>2NKt4T/=Y/6f#jn]C\=/PVH&U=!LT.NUpspAG($rK>8udV&[s^J7q?#Uo`%g5_GFDE[X;4[:fR(eR&3q<$d)),F8Z@K?j'>3oWm[\+^FI#8M,7R(&4]KcSb#S!KlK3mt$):"9Nb:)lH*A(ZCl(`6*L0(%ViO`!0gQ@]DU)Z+R.]V:k[]-Br'g*1)2_\=g-/=Cb;%VpF3H&cZZPD;O7S4I;SEPqgq.\23DU,AL74Ln968HrA`,$'/Xhc-+3*m0b*c`H5-Ym7+$Do`_ZDq^\3&DC-]T5<.DU1=ejZQXMtf:\A2M1)k#69.'+s,O93Y%lcT2kXdg9B1J^lEW7gU]U+?MR>"jRqDk-`CQ%dcK+oH6Lkp@!:tp`\1-`#l&Bs"S6]+7g6iP%=&JP>D+ikka!&&e;]>>M:!DoRBPgHLE`eAd#Ljn,Y5/cP<:qc5).V^cHY&mG--MCs>6O_"?FtrN(5uQpg2#^-q4l('%%D>!Ph61FJ3&JC>.mbbA="14R[mBFQRWe,qDGn?ko<+cUeY9J%';q%2!%%Ln26(^_bqSHmhLK[7q^a,\#bk-YD$oFrl-.;J#oEO3,`#+%[=LNI#foZX+N8(jN<@8:E=8U4HQ,?&sc^hXmq:s6Kq:cE73jtPK)=W]WI`9CN9L3qC't7uZ^qLjN#cm#<(AdNe>WEb,W]O$,@`!F@@OSXic5"FISPHc4J[e-CpT3]M](P)[05?uG`I'kLH<"/]JflkAGjA^].dF1<9-fs8@NOf^gO/)E@9%Dqr\?>ZPO0gY#X],#agpe0u6T-C$]6gDHYM1B7M*O_-Sc^sURUFP;!9!_!*Dk(Zn9+Q(LkFs#5/Rn!7KGG(;7$Ppj^HNH;QB14hQpGQ>l)AY]8iRiZ`Dm:Pnf"]C;$TQZRIV?I)CcI8uWK4Lo`@ig`bCBE][ZgeDe$dM\@LB'H]3)4>',N'X#cRdV&3L:;BYF[^NY_mq>Ws?G\Tr?EG"&_@lJ#<'8qaXoNH/fq[aFl9),%*_1+UPcGF.ZT*I4Yf*KNJkecIJ>&D4`onN.1UpLOUX=VMY+\e7;8!X-CU!LbpCo7G]A*6N(cQUYLn@tN-4llmNal5iRG+u_7mhaL(*P&6TpFmhd^p2Sh26(S6[)QDNarh)r5Xd@d;g"?Eu1:F7:goVXH^Oe0(8RF43[n=e=C'nGV#YsPBH2g:X4!/sBSB9-Z@)9!^-A:OkaJ_-WoUf43s.J/:^3oTb^SQa`eUZ93m2Lt>[7Ecr/i0S\Q(DH?!Up$H$=F7UsGa"_hmXc8hNCf.Lch=X<(Ym>5>=r8Xbrr?)i6(#/'s^BfeC[%ZSoP0/P(f.!G=c4K%^#_fMVZ,7,_M*+P=qlHTcR0D2O0>rbdAnIrqdKBU>>ef5oaT7WeLg9M`5qoZt(67\S8)8+"$J=\Mi389J0,><.jPV@n1oaY1qI_gs?PS<"###V1(4F?%(mtP1*M=q1l;l#3)%ZT<[5%n3gCPV'_Vq]W[D3%MSUM+HCbmGH)k):N7qfeZ?JUn[r0cNQR'8ViFsH2.]ZFWNrjA.\Ph_pZoooF4C.m7QUnmPm@*XXMg:*&R\1eRA;,LS+V6@d=#sj92H;/HOa!#m4!m@Iu='4a97!jQ-=:G:5aps0P=r!Vg@('*eS_Ii(1Z>o_@dUH)!6HW;=NH.'GAlBcqU*16a4h67!0!j-0C`oB9"MFJEJNeQN36GIa'>9RJn2*C0H2XbA7$8U"r:rbKm+I`3h.4j#6i`bZXVV#=B(K7e$Vf<3P6`W`i(nh/CbbpRC1QCLeQF>>G7SBbom'+o=k=ALhF2W,_pM6;]>laS^q&.+mq@3P/m$LPhn8Fs-Srdg'*5:T;qtWPg_U4EdP'A%Uu=i@m8JF,kDNQ&8%E8aH_a&R98W:hE%[RHSAOMZhn>Ht#luj/s`>q1U8NJk6)sFA-[SWq-inL^_l-oLq>)!(7X\J)!+gXRO?-XNVA8Ts=c]/-]adOOIfuZMF)!.9%c]6M4?_YeLI&N-6#o!3cIt=-Vf[;D8`as>[W9$B^FEnu0AE2h0(0aZ"$`b$VG7#7m.:YjS$cH4U,\\^4TEDG3V*tQ=S_SVKSc.9O<(5ZG*=)?.j,>FU0__k+"2mXFFV:q]m!Y'idE^#NJH5''Oo7-7J-7bf4(I*hapP!.Z9u1apD$_.gj:(I/[3dn8_Lr:cAH_o6A+(*lQ-@>c24^8l9jBQrq*H?FCVZ9p&Y<1c[,g8fq"T2cdmE<`3&@s*^jc'<('nNiF=eEYsU\Ymt:D07KKbgkQlD94W1Vmp0liS!`P#FW$L^7e&+mh9%V:bX[Q1Sa,-Q3/WJR,C`8^X:%[#<>XgWS!%jV;J@oaLLJ]T7m!?jq[J+8?>sY!3hFa)KE&<*>%SX2c4Pp`_s\T0QJ$4j8a$RN:_aBcC;OqO[mMVbef9,S=lbOMl.*_#PqO?1rh@k:mHPiATpW`G=Pkbb5cm]V;=]ShdZmUagYlI0@%LoLNiFKDkc1-"$a&7InTqKHNX>9'+-5GB]L?l+52JO@)W;qg=TO/8-X5K<d.jLhZhcq[@_B(c^uq/p)Xb`G,G,K"El(A".`g1ElT?3DdJK6@Q0Ii"%`+DKDKWq?jK&dTLR@M[r`QEiqJj_o_VG\6b]oQUh)A\E[.o/nYeb-U5Vh)Gh.0?qg/q'k(WAlWQ&LoWMR_=n7)g5d,OFe7Lj`K#9`69r!&,[^7h,:_C$3jo)Mr^bcbH25B0igURI/uHKDl-n2lnP+\dom<6d_T)/Gel,jPa^fs)`EMMSa8iGFpkj.)@h;6EbOP?=`cUR/uBO<-&-TWPSAhCW@YM=FWO[K.L@"MWIXST>gk\k7gQf>m@<#3bdNpXMOq%G@+A2`mq/*q69Xl6M*8ScHh[GEM/t`,R?`Fj:fGe;R2!c%dDoK-P*$s.#fQ9Bk=$ap/$VXL''1BX&"CcPKjc9F?9I7UVN9gmik0frRi,DpIIteBIODGpn1Q*[AtAt[%V_L7o&%:3aP&mlB\sl5\6ccS!:4:rPIu7O!-2j3b.E#tANkChW3-,:e!a:Hg'UNIJN^Sa3?o5gq6Y-q1NK;,QSs"fi:RO$ES`s^%rZ6IMJ2?i3Y8>'!63Z;LeXq9JTZk97EINo&u4TU:*GCb\iZd`;(F4JYW'ru%f)UqZ8QM_@JCrkiLhCchHQWW!al_T4MQ;F;Rj4486hrpISuQRV;rKc7,DD]LcB%WbYKt*eactg'H5+FE,ggQoXR%h&Z/HD/Ce]S6qSjM5BFOmtdH['1Sn8Bmir%?W5;YKZMijMRV#PG@QD[JB@(E7F9FE$-G2CPJdPF::PbNH+aj^SMh1McL]Z:K"$06/h7389g(l0CkKFiFmd1hF_9f7hPTAHY#]ru_R52,Y)nb8)3!1jLYIp!eh.Zo(7n"Sn?jMID-qSj0V=d/uY]`i'&484gmj954IZ]pi*!&9(O"!d8E^)j>;;mVF$H$l7oka.NTm=c3e4hn,ZY:rHluT;b:@68TanW!Z)mT[oKRod_e>MKAl?S2=p!/ts+[A"!-Xp'plEJ8JY:]j`K!4I=)HJ/H./db*Ais?q7UMbV4N^?8GMhcb='3k(BVBc/]!1,Mb0s+T#(U!%A9mTB2;@5F*:uO7GU(Op?4-E@-G9=T6N'f0+]@M"U\QpWZAb<33SS"W'YCR1B=2C06.C_q,_%(#O.nX>"Jnt$GGjd:1bTGU8dtA8!5)Z+VN/[on9DeFEF_Y\A4ZA3uhDp2/RF[1k@:'iLft`H&I1DlLEo8qlZa>c!'shEgUKK=;P+nB6(L@)ra%60F_V=iZT.+5.XrjPclXT-TTri^s8LWg@&>"%j8@YB9HTah,Kn_l=0b9R>*jeS!XiQ"7!hQ$A>@dq6FWY6*h*)(ohJ"UXf"6pfUe-Ip+B@iWJfMViFl*'KruZJ?]PWk^EBo`H0T7c((o\:m<+ZYTB3R@Ebai!SGClb#2k0Q<9J\2:6p"ZC[uIh*tGd%LekA`\odcO\.%u=OWg,mr!/(+r**ocK9WkHR;^3o>Q-W,h$!96tPg]#i<8VOe%@3(^IF'kK1K,Z[poLTg-%J7h-@0&NnFX>O8^Yf>)Vc_uCpn^t$tjk6@f5Ne;h860_6sVa:k2s_\"0VF^a"B:DeE]CmH`^YNuTG6]mo@:Mn.]!e9ab+r;Ho8j]L(ahc2#r9XTT-&W$?R^?B7csdZg/FR?l,jK@$I`S\j$:gXe=hib^r6Z-7"i09FN!K!19aD`8"8*BpVkDqpUbt?Fp1hP2+ZNG7fAQINtZZ]]r4ZX[rnb\s.i]g,do=+1lZ7%Hum(]q]@K.&`&Na-QE9-E4BWCa(kV+hjLD^*gFTi!E+.P=Hln'c2%4OuQ@-?J4QJjCd?M?Yif?/Yq1@/sfYiedY3g\u$RI>][R\0P\[d+'k#F&>m9Yd22_E/CKkR?f^Us=_.m`p\:B-lj2)7Y^.nOk^q%('9X't[Hj0NKm1kibSOZ%ADFQ%YWVs:Z&=ItR1Q`M,Y**W^i67R;"'Xai]SGt!LWA\R1rbT=X.KTh%1k'9SrC)ZXqjc$gH3#VN+nUEn,L\4m0"[/52Si+dGr*.AdC6+k5kCBYRjEH<"$echQPnU]'iXe*BT!SPs%0+`f$%.3LffkF@Pkp+GOC[ulM0$[*nE8?[Q+"$Z^!5d+%;H4TJr"01H'3;P-@J?b\g8k!(>`RPR<@.6W)_rfRR>fNs>gT_K%0G^>_l/]u.^en5rmiYZDId(OC:E("H$Gg0[o'/d'VeYo)8RDC\/V=hT\+'K*U'I\"KIXTPOCGpQh93_7hm$(%kXgaIg`*"9pok1M]GPa&NQbW<;_Ch;0S\bIki2R`#8t23A8n`fU\cgg2P34"ASoeaMj*$i!64lsJq'hk/I[`DQ.'R?]9RiOVb\Abb:ntsoSJa?;CtV)-P'jX\+kK)MlgeIq?QmrEs]IL7frs:6#$I/2-%k@(_G[33CB\H!/hkVVW-uF6IGnN?0P=jj=P>5g6ih']=Sal4BFD&_IcKM12%09*CaZ!e$SoUMg;YZj&Eo[*I/pY>!YdU^c;h[:$?*:Zne8Ss(qJI1V!)d^rR=&H1gV$]i/DCd[:e0.PLjQ0j2]6TUT#8SH@iUja+poBP!)08S8*\WC\%gc3==iOu0)cXTL*;Xu"-kXs&H7f5]p:NIrT;9nqj[_?Yf6K+:sGBZ*>p*Q)q>BdPb;58eL-\t&tE#r!_ON;XLMIH\-PpWk0ePnp;<6,o!\cb29@o+%rBR1ok#G\M%%m6R'Wdlf;:^Z$!c3G:EgnU+:5m,3bp4(ia;p_,J;0sjSGUsFZL4"9m;m6!dW^6HR4-,n/q7W$Ld-:S;r!AKe4^e.osn*"5Y!5PZFFAAGjL2i(&n])QN$^mfuK>baO=GpaHA\dQhdh0Zk[TEqanETDsejXFm<;BtN==5S80aE5[[n\*U$Yh7sh%+S4/MOG*mi]2WQ_WIUFGud,I=e_`#'s^/^&Tm$B51hJf@8@)jJQq:+5)j84U7H@N-LS.%.7]G0/ot;gt1H,9!>548/H(m?sfRD3g?5bakCjj)"L?Q"EIJQ8U=77"^nRf3B+.54-k$JjH2p,F2ndI]#pmMPnWp3-kZ@JFKGPqKp.:#@KHdXWdiHf3=?$OTFQM"&Cd1l!/"LRV7t5`C8@(>"$pHCDD.a0]oj0CkDgTK#C%0tJ4]$!""'p'\mDKZBbd\#CB4aWRbkTG?.[,j19=j/q>t&tN$%RM$'e*N4!9H1-\K3B[jstc\'i`NreRufBe$F'2PX4f;L4ToNG**3F+r2.S32n)fLfTW";-:#8C',C@)icQP[X\iA7erFW>HsAoS(V+ASk=DV)lmI?5l%riA2eu2gs#scC-c3KT<6>8IV(As!=,6MXrSrPS=iBmH*4ict?ajDgbR9Ibh[a%-)JoD?pn$OaHF*JGF)!eBe\fm'+geB,Q-HDFq%[[7A!AQ"'6m&NC7huWq\&Kll^Sir(8$Y9;B0i(GXA*qkXZ#/;hn7IPQ5-eAm!%n-N]taKPkMVE5J'fe)MdG4bBmANChfc-UfQ5h"a>UZ`>CG2>LRNQid=<@sYjWoX3s%UGgheX=-G#5'7Pktb!Rf9@)Om8db'lW^!FE/i1B]eC\aDtr`[uSnSS!g&ZZbTM]@g8rP8Tk*l9Es"POeJ1W7`skp?CLCVJiX7+W(Be'7n/R02oUEB)TVJ[sAK#q"SI>&50]t*6\j1N<#:L"Ch':cCBOfb^l5j5ofqm?"abD[@;f:!si.JA(^]6)/1'jW#gK*S`jY!iCEo`Sld]!AuTX!<-11gH/&=W6DbiNLZl)DL[71,-Xb8=r/T&g2/_a8TC^S/nPmMmW?78^\6EqQ?B7jo[n/QlFukC@DBX8OmiS7-\/,5#4.dgpDAFY:hM1eDW3]WoLaDfVeJCF2ng'8PJNq%IkQQTHh&:2(!:k[I!pYIblur\-@t1(lX73Y/i.OlG=uA>uVE9Eg'SF^V0EC]@7sCda'#2m3-tfu;QQ5E^`EcPTb+qiO!#"*$6Ta*a["_([-k9LiP,SVNB=EmB,3.!>F\QLf(BY[\"B?6NHtX*8Z'6)T=bPDpH+e9[D^"2,bT'pms?mSUP;5.0hP#.k%73XTG&c'`Q!)ptlM?>Pt2eHF1f[AJA!J!1t)-jk.8%'[dCf1ANZsjNMH1`qq7i@6$KEP7EL.e+Z!G&XHg-fU51\e%Q&@WIoY*>_r'>KqkF#m(&Ie`?NV6er[6#9Z2D!AUBD*21WRNU#?[IL`FD=,QhHNCNuYkie4HklS?T?68!%@Cl1L.-dE=EjjK@&MSEn)WR[lf^Z7PeM=K0la'$L@Cb8Tep/dZYsTr"I71K>+Z]ept+$_>JU[ZD/k2YBDh8FZ)W%D6'<'YJ.SrX4lTSh\3&CGM773lE_^E325CEbT#B[i\NMO;20S5H6)0lR@FCH">/>SWK56V1-`XZ-j7N,`3Ual=R"@nrng\+lVtUdV1K(m2FoZ]pL&/9,mp9E8pc^7GZU#A\s-esl]t9`=j=!@bL&&=&HADkdQ00Ht1tBApN[e@>"dqh!r%f'19ghK1YjFh&MakAsdZn"']28mfpWY*?Tc\4r5EkK_0>o_Q:MM[(OuGet/M0]7=!;-(@B)!BCY3RD-XU$,66Khqf9oOm-PIJ^dJ!IX<;,#\$qlsf61f&V9>#W;N`h6P"7WU@.2Kq#7bD6bM'R@c`ZnGBsPr^=[jlf6/_N<_!!#L1'*U:g:SBf7K`Ef!n=Dgm3$mf22+%f79PX,n>HX7+/NRqp@-eqPdS41.)SIi!5JcX+g68oDC=6)JCImoIaY?L9\ZoR^Noum;d\m";U,uo!f!18uO@*6krKWp:3A,r"(OTF+k-%fXerL@i[9WLE=oB-O8^-\b#I6?_O50X>G_*aC&\t&YE2J6KtLCfiWb.G*#s3f5V,CEDL!YfIA.Wn[LL;'V+KWm-]dPibdqs?ad.K.#eq+o;M?kto>\pIa*W6JgPH&>1^W1";,!uNR)rSD8$rS0Z5q\qo_EBF6%P@gT=->Pb$SW[iP-+X60Z2f^sLB'AEkHf%NPfW9#I%Q/P#rEP8`\[Yg9nBi/d53l\fQfRp50,GjFVu7ZtiWeHit1N>uP?Vun_UUQO%oQ^a(jdpT:8@/QH>(3O9l@([>gL2R/o3KjV\^sI^'%I@r3o=k&u[PQ,hHM!14ungs*cj&P2+j.cO[m"#*^;Kq2X+gc>og0In<^%rBlH($Osug>(b.KYBFm$\o0>\ci..d!mL]qqd/]N4@e1_o4Pe78L'.>!33RHGp)adojODBT8*WoYj74WZYc&_?H<$&1q74SctWQl@CW^a-:8`!S:dW`g!T_+pT=!#S$4P=L'sa7<4IBQgJB_NlZdW"];niKlQ.)UG!5??s"cZZmNV/7\hJ[T%8e.c9IQ*s]B_TmE+b86\Y:d%S*5Osst9X(rOZ%KJ"0IauEfJM@s-7,=[[$c$BE,ia'T1pJhm"Ak)=%-^R]!\g9Fj6"8Uout[p`gJ94[F#9BhEW@Y`I*"C8&.c[T_<$au4aDfIK(=FII;'H[9N!m,C3It'q']GPhaN*:$3g4f/\C]\>?XY,'<$lOpR^jh,g]J$Y!Y5:KC*l=0#Gf_okMu0lY"n&[e9Ma,TWXd]U!k'j&U'-[\"Vmj='c0M78W`fG`DonY9`7a;Um$PJ!K&MS%3HX\"hQ]sB=8JR0u&:d?sEjMqTA@2C;-7@YRiGYq#!2a$>nbI^$9OKT>OVq3`fqBJA/.@'F/!U)OKALmd)3llmH_h&X`XBSt7ucAP:$Cron6R4ZX:1PGL0cguAkf0*8TC)[d\F4@_b:M3OY5o#^aOL$e`Zm:BO"9GR,#;rSK+G]=Ygcm)!Ko53C!GUpm4tgj&[gg#G8a_KV&r1LrY#FD*ctB?PE.2,uVJCLk0C-4a@M!9hfR:AZ-sp(\r8iXUn>@9M5A=S1T^KCNr!Y5[;dNdMiP0"2HFQBEPStJH!+AJn\!6*ZZDaqQP<[JS)1BZ%quEQ]qkqF;Uri9Ij5B&SI(I(qB4B)]!^;N8B/ZRq70EO\/_X^%2btCX@rA\;ZqBAuXM+Fmq%043#.FJL;LsLDOFSG&;m->gJ55+a=J-(:"MB+H7$PNF\qtgZ"Ue@A)Vr%DZ`NKVJ0Wcr-N!_@p7@Vn"b[jf^]9l1j7`\;HhJZ$kHU3E0lqR0PTVM179q1'ST`i/qgllIR^f\,!!!$h4bT&Yb"aOEYp\<\uZ:A./(jr]e^:UGbkP+@l;,H$InFWeusZKJ!KS0=;s*S[$hsH1;H>LQ]dm)U7`2*K,9%u>8nC@4jm4f&/.MC;4,mn$G`V#ai'An]Cu7#Bjtc=Ui=Yu:lj[Vcf5rl@h]6%r-"'AlCd@!M:RK547,N`2eM+jP:E0];(A&7]$NCR5KK//IEL/g'OADi:_;JT5su4K3?8U^^0upYdhJ6eZ:C#s%2]rhT*`G.banA(bXnRB9c6%Y>=^tSq<#_SUIpE;kEVRj;JFNuqTutF^)db:rgCKLnlK2RVP;_jamt,Q'OWFDD/4'D%R4t6(m*'m*Sac-7+hk2\%fnpJ1#+Q2VAfm8+2W"=;kX<;?t4LZnS(psr;dCUE%ZumNoCo]"H891DM!nHU5VhSU%0'i*2Bu:$MQa!I?l(Ls#$Su!2K)+a'Cd5Ng-mrT.td/4+$5gCCe2p-E9Z<#"rO\l`,h?QHDkWPSPcSVEPkV/\q^3@jPG]7Hp;IfCWd;)G]#i$W7C`;32O6YqE3Q6IpbXZ>&DE4#6sBK0P]]W*rC/28]`Hn=Ids5IZXOtsPlOM@I:m=O-OYR'AF_;:!k8S(^Z,?&?tITO2ISo$XC&hoX:$UOL^n:PEC"*)l)(5W<@1He05CNiu*O0>1UniFi]Z!C-:1NgseaDZa7HO2I)9Y;Rs$Zo]",g,bRnL^R@&*-aPg2p.#:TDTro:K:53:kbJ],1*2$A1kXL>7i&*5b*B`K=O<2H"0)j'Wj`Mi!QQDn%7/l.dm;cZ:iSJe/,b4DV_lRkY-WP/9?LT%m?gPG.M<0EB!)6l/W>FYGafK11*A+f:6AY?a1ZX_pgeBE2GmPrqr2OG\m^2L;<')s;)Z>;Od:]rQY[QK27"Eu>1tUg+eS,i^4D$D4q%bj_V4F_PF%HI4j\8Li2.X)0!rJ3ed6FA'6of6@Z`[hQS,GlI>46/LXRB29AeJ,6+Bd;JttW_/DmaJ8L5bW]G'i_'=N:8DfY&h]lpNH$DVUM5P$g(]JBU68b%)063)FrTgA?K]$BS-OjJ=bga*^4e=^OR1=*CpH#[%GZEEIMFFV1,RZC.#(rj0`ZN$&[)oPGC!0!4j2MO8c_+\B[5[]6.+7.%=JO0>R]Ze2cYEd&Ce]sV_c,n,8=19gC276?Tf*6d(1j*8#/*$=uP4hX/$osd@D-clT`])0pNqs]g5?m/F^`!L!;>PLq20H;o]f;Xrpp1FBg"o%L\21[cUdhiTHJ,Y])in-"0cc4#Ei@l&&=!i2f7dBW=6RcPF<.A9Dqd$D.?!KoaclR2paO:5RRN3SK50Sodg\=,-*KaLnX1>6JHD"lD.cG[.4bmFSm%DY`ckpnrNbo*<:_-BO$$kQ%oPl2VZio+SkY9V5d[OodpaU;(UAYOi"fRM/i9D(omRQkmWWkf8NifF:\KpM'Zsoue-)(q$%+^E];jePU)8r;AEAp'[h*"uWO*Z]-c?r[$GNTWC%1.'65)r!!41D^>f\/SF3u$Y`Sk+Vj/@iJG=JY,):4YcUXMkYQC7PpLd,m0AhgZY(afet8(T6SIn6o6TL>h8n:f.1Ho=G+`/N`FDDafuC?h/FUUX,HF>X,(-'RPf`f]6U#VP5[QrauMtG7XYe"i;6iB\.%02@IogDcGQ+5Ma,^Smc=jI&lo74'qO1qcirH9&M()q)ES8EfZ`Z+Sg\\3GpcK"gpFmi#20&d]R2gRV)&q83?`q+W@KM';pE:ZH0j^f\_#!&/T0s!n'dpk1pGie,`K-r#Ql41"]R75%?LO+lrs[K=96E-a1*A[fE9`p\ciZNd6=*)V^d_f803_h0If%dsV1YI=P!#PU'-W>?5+t5MSpAr^;S?H<)!:BgGkY/mA34i^JW%8);GMGh=_lnQ.r)sbblA0!,OQZ+'l&NFJC:eElN%b2.;/.=.FCk+s5S;3J4V05@qj">*&78i6(b[>Qn&1k7@57]^jG);q,?E-5"&4DJi2C?`2gT"=9o(PaG\`!![TXr2#l.^rbZP2QIDR%Bfe"(N<:bd3/clX9Mp4=$+:Eea`bq*r2l."3nV0SJWB*#9l(bJRiiGV)GsE>cp#kYZ9Bk?Hjt1]RQnmOc6K95WgoMhfph%-Y.Y!QGlomi3f&.!>lcc&&ipd9pMTL4_>f,a_TX-2XikaIWP5biL0h;FHnF4fHOndC9da^Lc;'rF!C):W>r`PLEm?,J?54Y>c;br>C!9FCAfL;%3hK)LT3W+G`c9=t6u_DOWr13-bE>BU`KpDAFp>$7?M]Q0.'%#V&7l4j^-/T]a/'ESTPfitqj[@B9qo^muMB24rOXeQifA1?L".'YSU]pEdZ4e1C48OC&FZ@>-a$MH+qA(s"GPE2"C[00mV0CgBCc.cVMS\.j8gu@Vp;mk9TZishpeQ&`JAo6mO'EB!*HjB;`,U_cX[fO;.(K`c"+:e`T8mX]b*L4?b;,^=IXD^X&Uh=YM-NHVB"3U(jkAOM0;?.e,!2cG2?3',JJoA0PgUP)Gg(VndnlVW%lN9VAfe]MXRHZNs#tD4cQp&Nah>nA.:acB!>&P)t2Z]3Z%6(dX!n951h6%5EY2DZZ5O$Nj3b&P306B]7!EfY-=h)s]rR@OmaE879h#':#./L@uDcB/S2Uh\\F$^l%*1qPF0TA0$3:Dou\jNg\`r>2<_%ek3nmgS)!V_HcfXYWcXW8MdOQOGVsVL(q2n*=Vq)gsKkO^42N5lf+/!uk44^J?Qap9@C@EX@i!S,a:S\%e6[`nArr;='It-mi))rT=J'9-YidC%hot+mNt]Rd>8SgI7aUJXh)s=i+I%*PZ17lKbRF%9L=OXl_b$R6IL0k%s&!K$u"4fad0?8phEX,:]t1klVTE'8oS9gh7Nc.j_(+afT4K.KATI9m7uHBreis':t00i6Bo;?`4H[=V%j':.KV;--61^.!F<#K:GATHV*243a93$8;Y-ktB^H%MY@*$)j5Lp]Es(M$^d2>Y#!/6'?V\(2rMa`rFU^k.7a1jL,/$H^8HB>#)uAA9Wf\4kj.K!Y!>qBJ/SS%!O=Pd!3fUjm$qC&MUU,;`VEuS3I:W#;eB'upJaf&V?`2!*Ce$m9Q>HaApu1`p8A8qJ!Oj7%ZIsaVD%]T*&4\O::/>I*RU&jhXAs?k7`7G%4uTU)&1u>ZL1@JcQ]'/(hhpKT8@C"=8Tlc1j:`;V);!@:bUAZ^p1_?tA_@W]IPp8KJi"+eOG7?"+Z`fVKu'#aT-T;.GP:-;e80dF_p'2g^N9p0Qu'G/`@1srP=pujGqWt;mNEmgppPGRAOV:2u2*pTqPLKisilo*jf<($IZ.!tCX-un&WhinD]6Z5MU4l?CAe$"pXiSp-[9>"fKqQ:QGB=I:lrg40"Lp-j8l8*u6c<;sMMRE%3jh(elJT)$^8*FM@H&m>HmM=u^Pq'IP7n8!,-,hmeq@X1Q5oTBJfW`rjTgF.G,%f^;s!qpRAoB%P#16B@Z=Z344L&>>fuj*[h-7a]UCo_=,^922rT(*QCYZQJjGBf5&Yt$LqH1YH=3e/d2Pd,!??-$Xh5RgVl,3B;3/D#A,&@r+F+XoPrmd`s<<0+fH?]H--kJ=A&MSsGfX)&t#0^-*SgS/^.0/#flWrlmn0l!6/8G+YNV'T.aZ/lNXrb[1HOFUCV!(I0':_r/(-&)/jUPt:^7u)(p%`G/>Y?Mmf#rSj5WP*Aa+np=l!/:PLKQu<5\;V=@Q8Q':]3KA#R@hGY:G/AWN%t;k.AWgPB7O8d,5a23o]BWf-:T`!-qJ6Zr$0*"-,Pl2`NuI?;gf/]`qYUK66\;9J+`"XdDPghk,o=i=n=gq#D7QGWKkA5H21*'oeD<4iArjV[i1E??ZkEf>CM$L:r9a-6jXiWIA,gdgqt!4K*Z-9d!%l_S"0[X11]EG?>t7rAg8(5cba``J'f3qN?.4+uH=>[;K;7a/9(8S,+3,@-D">h?MVtZ6H#_"(kbE"i/7iJ:[3]3I9W$lfW2X4Y-u_oT7'0XKNKpgX1M"VP;]LS,bnT%&]Tk8:dj?`cX`]Tn;$toTV2:(R#5)eU`^+j#=*/WujBqnG&:rB9-YKE:93i)6cXDFS\PJ\`8GZeG^0)kp-(&XF"u%;a$bLU5;T03MiRS7htJ`]WmT@iRg4/6$&km!;r>9;;9p$>>BdA2f)^`Q?o)\1<2XefDsg-\3WP4QhudB^_"SKC0P9=m@tS>IJaC"+.[U$oDg>$L/1*VW7ZCfWWJ^W?XlJ]A>`(ot"rrJOr^q3%o/HEhI_+C$SEO1dN6e:l`agJd]4Z=ZM/:.Ob?+?A6a$)1^LV%-5Ln+Z`.>q"pT_/#=N-LZqC2-\7(+P[O]VnL@remV%9bf3IR"Il,35..9mm`Rlr7YL0IY%P"j#4D7Ml&H`"ac%:"qqs,Q>NJD,)*6L.uoB]H#Vqmhlc?8H=+!02N3eES9rAnY[hu\$/kspa@)h*I2j[#!oB`Rlp91q1o-pU.#;7p-ramu!#TiQ9\HDQQ^[RL!17?$%KWTr5rG#GJ9b$AK[6(ikV(.Y8THAS>\.B1RhL@A;0+`#p6Vi`rQj!VueZdrO[7ZeB\Z@DHs_cAPg9NA.7r37bbo)A574p*uFGI0PdFED][f"-#N=Wmq?E3b8"YNC[Pf$s,leG6'5nihl>[9"XnK@?bb&&V]`FH$4YqqPfr5b'C"%T3G+r<5i2GX]<>MSFS=5:R8]hm`^S4D&i2\N>V+eIB]n30M8l*/jCm"J#Ur`d(2%c]GmX!-"QF."d5o@h,nHW"+6V9=pO^U3>hE)EM'>gYEle4@qo:P_*VlriSM(hQDp>"s!:D\?8;LMgs\Y?lD3E;!\i1W1FSjg@b,sQH9F,)2&'0qpi6r8*C7!H3UjJ&mBQ3Qqb&4gF=PB5cV]bs!fD"'nXrk[=I6kd*f(]U73mTOe4,1]k8-jR_)I]0o,!,!5RIKKfcr8h7!pnIOTu(5aA$,D="4CU;!i.=j%c&`D,nME"+buQF;3kJBdjt^;ofMYW^2E]j#6#"a7nq"O!'Pgm+8rtoT%B`.8R)cOW;bHaGZXum3ICp34UakS+b4B0NRg8WSAo1?Hp@W;99.m4iJIU>pM9Y"=Wu''90(]\oIX:t?H.eBS468J@."8-P&QZ:b8g8-p=I'`Q)B`VhUaAYVhIj9WVm8cIB9A(Gr9\JiWR:\JqN>hL@)S_s"'K`(_<:+/&o"8iK#mM(cYocgacn@:Fe$U+@8$(.!%0a/)ZABrdu#H0&iQjdgpA[Gr@BUR=);0S,5XM@hf&.*^GmngWj_]JO]\D\]ka)Q"lt)3PoCo0Ab2pO*A-M0rer=Z[C$_]\UlXUWE[.PFQ1]kViQ*a?t0o2JkP78]meoKMbdUVki'$sVXn%L4p'06fc.Ir8fmq#\o$R]_2%lOW%3ed:lJ4?UKCHIB3Idc/MEV$c^7%OJ1,01]Lo`=ZWU2%&O=Eh5*\V,$`(b'1j](N+ip$U<6B-69h^B7M.hRJH1,P;8A!&+rW+unR@3Ef=(V&?,#MYC_.`+kk/e;ef/p\l7$[K9^)0*,r>CG-j#7ZRui'bJpdKbfImg&kAP('*'SL"2Gm&XMBR,"K2g5Cctq50FoKNRk;<&6h+cb@bA8d>eZUOXtAHQ-*b7+HjALa`AF>9XrXu3"b;$4u&40#7^uRTp[DQd2+UIDm'1`%^P.9J\$Egh'k+6i(o6eGC08;f:6,`_dga;'5VBRDV[79^4TAR<32oFRIZBeG.9Ia@iBsP$Z:8OG&g=WFm4Gb(U/Q`*NJLn$EBAY__Im(]uHj@bi3eHb_u.hme+^)?$Y43j"PI0J_iX#tNXpPr,jgefG8!5s!K?_V!GLp9`1d4H722Gd.SU;cQZlJ<8>!6mPmeG.C2`Y\S;F")');"ft_I]QSGMKsbgZp.MSAo4LdU?b>=[`REGbSH/W1#%18[L#1GUDdLHCor/]dATmd&)V(j=k$c=Fq68Q4i'f->#0do&e_(PLiKGH$@^/1^GTK9YoaqIJ(!JjH9+(>U]npofq!@G:EJ_3]7O4NRpon[CcXc]"R;r!s6(#.X>*ejF,"h,7(F0F)Jr)4/g)bOebb"6DELal%m3KaFgd"Ai^_(VDA!PkpN)g4Sk^)Ao&G@;P\qcKQMeInf#fU:l>B5).UO.@+*hZ/2@55"8A)ah/*r"B=hpa^SdYlsn+TGh3PfUi5;__+`X4D_a.fq2.@3+`dJa*QCIa`?Z.Su1D!SKCC`MMr4F$*M.ETAjkl6+nAgclQV#9E_"3RmrR\WflPf/b)1l[MdK)ImOZK9@TSbREc0/GI8LfQ'#'@\VN5CPeH&Cm3BL9_f=TFc),l!&epamm`>sC#P7^PL4`Ab_6EG65D7N#A]VD[.RC(JB5HW6L3*s*@V874st`Cd:41[&EV8Vg!K`3*),['5')>TV-cUA\l(8:KlG0I)GuU+8-6R8?c4k0e?@9H_.rP.&P)P2B1AMRpEG\.PCE#\ahn^?O)"#l@qeaQC4i>iK/*(f"aechmqq'Y[N)M@YLEPGQUH@%.oWcX?`[Ng&!$tW]u+_>#%1:f.PJThk4K]PX^"2R?nnu:8=on_.kTEea&6eQ0j;^oosU"([R?md@fV7IcAOeFnX66?O>m6aClN5f\Ugs-nOpQU!>qb'&1(PU>+oI*-mY?'W)4`APM]44:$S]77R?f5.?t-^Vb\9g132r1bnMnsmfbN-(=&A[Em`[,9l'I"`a:oXo\HQ\b$p6[IP78gADHYtXL)ZL7":\hVi\LLn.J@s!&0OAFY-Z"o/bF2XB?^j%m"Ttg5tl!I6mQGD!_N?5[TI7(d\oK/bf58]i&23kltC*K9Q!'b4[:#WKF=2WVh_>C14hSUB@IIWpF^mX4Z[]J$\KRC,mL.L`mSH==Oa,B+7uM\'J2sTRQ38!+9YC]7GTZmZ^7s)9;f[R&P*iJB2s.pN@/e>3JtA-)4oT2L!0kX51@17gAsRL3RjS'DE0MTI$J(>`WQQ!*<h5Dr^+]Rc:,P#bX=/@VWJ13K?WA57n1HmA1.McnI4.ENi[1*TkbK:cX+AM"+M^1ONL<3*.#20&2_Q;6dqcku(1omZ`k0[?X2V4/[9j61P2"6kVf'P/;UMmp/o,P?nirL\=uZUI4[R#tWf=Xq7TI0NnH?;ETL`pYok]TQYR(6/B5(2cf!nbbGGDRh(,>s1J$P_BX9TSXR"?VMW&/Y*Z%dIjl3#T=i9DdMnb$l#Z#eZ]EMF;qSpL7[*X.VajYF@r\+BQ`1LHZ8Qh,2udcO[ei?O'cD!0:"e'8R1`6t;*-sg\2"DK%'aia!baWeD:XqFBrU_ZE%H?Q/BO7Lkeo-__4'@%ZP^GBTqmc:LJ%dqWfHG^a@QLR8C_/XrD`c]/Z-"DRgfcR4qX/<`?0,@Kb_qqqO7YY=HZOu%EhD,R-4'f"jrM%rH0'YB0rl,8hNbJ0_TB^bY+id\JRL+-M,ns4[%XGfhQHEB?7VSjoc-DTc;qpffbi9[0mFi???$;TpLqgW`QRF?0?h`olhDmm'oK,!jnHl9UUjp^1(`kl6%3]K@0)i)$h=W4$`G5Nn-)Q1LYY6cHD6kJ-L&m[e>tU4jFtSCK?d"jOSrqke@*KX/S21QFB!q#k^\>CNUIif'2mtk6@%nTWh_=e,3,AYCD1\:OpEuR)!:VI&b8&l-q9Jd:jN*-g>9BtiPE@NNe4e^aYQ?#Y#j&LF#tctO-;7b?:]s.B7uhla@^@:,E-$&2#q-#"tXO96Qca'F.AMLW;U!NDrkZC"DMTC.cCX@*\.eB=q32c,6`/7?"c&e0m[C!b42JG?25l)#mu`DN_!JUR.]lap4rBYb0#$7=HJU$;orr^lZRY4Q=0e\lhgmma/]Nk".%::JC=o5>"(;r+t;>?7>aJYZ?iY3)F0^8ufNH)bDV#ns,:c\1::FQm)FC98I^'%'s(n<:jl,t%C3S_KI.7E9S,YVsS-rd`36*M5HX&1KO>fA.)9)PJu8r/[!XFBiVqbXM,Cek$\Eda]&lQVA'e#"h&>NHmB%NV7tqGKC\u)b6aB$+=e5p^."ZS@75Zu;j#abj@iqaQ=sNd&K!'d"=H=_0Z%Cl^gM]Y!g>s!Nir./kKO*$%F@9:<1H=XQ.2eRo:(O/bitE5m[Js4Jn,[B!>pr(#p6L^8XS$"l/c1PW/4i4Pn23;#i1<$;'QUhIcndUVQ.c_;d'jH_$[a:gM/'_NG*eqTO/cT<$l4`CXb3Ye-T@=0";*@WKj;K.G:Dlq*g@Z4.uO_HS3B*.%DsZC&;]o9q5k=r7](pL8;V(-M[L`r?2RPER/7'V9NlOGEgY2=];I&=Ta!k@H0=herH"t%/\KVsei(=Nc`S:e!ao#-79*;UiL.X$gij_S7hlP%qS2C2#[Z[kECFJ3cF[^JpFY5`Y@h<8o@1k4N3Olc3*d(\dXH)M`-'&4F*lu_J#3N,WZKV>D]`5P'^@93R>n17reK)toqJ+_oWiBcn6L!0%j`JSq"XRQXTM3,/09lchL^]g)AgUYD(LulcLKP[`";C$)b)Up;.tVCX]""9ZkCFI&BY@u9V"MEA==%TV(qaDeH)jE"]'1-1/n:Y.]T3mWhLuCU<60.A1[),Nm`Ri5.!Zk1/e'4YXgpC(QF5)&idKT"@k(]UHJTeT>@ACZq66n%1"4:ZK6X+IEj4\5/*,IoBp<)b*Jm^JRf[VU8T1n/,N?/]jpA(Dk=IWDNCTTk0T%9VuRh3X=\R=+II_KRaG2AgXIYOPfT/7%^'1_T40GrUN67Y$@Mk.80]t1m>2-A$>lpsbS:7gjI6PJZX;m,^SYV=\AhKF'ie*GUj#eOkVn2U9I)eL8$q&-qn%IHf,P3RlCe^h;0d+A+YB^:$J3g5$\Um^MnhbIC!cr1Oa]l1hMEE#G>@IC?t%rVRjMC'c+&+BrKE/F=18[Q\U,n%_opj006>u6LB#!%I2H:=qr#U)WDeh\+.][0GC!Lj@S!i$0V=RX^U32i!rpVU,m`P&`k)=(>SMrG%d]VTh7JH/aR3hd+W?UrgLhiX_dJSQaXj"%#q0e6o?8FI'O2h=:_>W8+Y'r2Y1PP>>?[7UJCPZ=g7@%8RfE@U1$5tqWhLuCU+31;.]P%Q0NcW$43=2QaC`C#FX:PrU^:GZp*oC8?f'laIOSBmD"-+b_8eJ>QLmrsWhg>1F!Ft(KH_rM80X8M2Q8E^WDTc'LTs64AYEE1bRu6[5r?,D@VBiX%:Cd_/&8UCW7L0c&Z$$G_*9MT&,mFkuKt`4pPR.>Db3@07P/FqX1H1G%,@fu5cd;YI>Q/7(/_fHJWpoN+T:r0^d/b*3"i1HlLUVfZ^44;>%T#So<(0ed79*;UQ',6HYhn5"R4tlPOcW*S%ae+(E3P+o5;gmXq%Xln<2"oX3)JSMWVA<#/gppQ&:lZkDAR&-3n[QGK0l+?jVW`HEWlLmg,le@S,;A>bZS`r?ckl3?L[L3Oo`[5/Hi`SgQKnt_+Pc"28$njjb)b!<7T)W+-\/(O%M`!-%f0O&Kp*,\@,q`O=E=o'ie*Gf8(0I*uLS/Z)6?8@'6Qs"]spm0PGD:X,,]Jt+W$-R=ECi7JE*hP(XXYDT2:,*?FJJrVR&DIkA1b^BhDEB2N>V"F3=]q*V5UkJW-"th',8VDGM$Vl[t[=:J\Na5M)ZEP94FsN8K%W(KX!%?^Z^P"_]r8cX579*;UAApJhKOER4!=cZ)q^0$5OK^qbf7,8>iWgp9Oh<]F@@5J;70hgrmXhPjBO.((7]Wd@@[4N,C'kY+Z:CYa,qi+nVFYmr_"c>F$3,@c,+r9]nS>HI?olfQl;U%+>8Uf5QE491=#k=+D;UTnbUoH#hbE>lkeBjWmQK(g($'!sXNE8IIJK%r7q6r;!G<[ilqLC"j=Zs"'YjD)^*O)LR\n-r"D?Z#;l)qg,Y`0*A,g"5K*;b4TY,VnnaOt6PJ_d2,Q))WD.M^c.N3`3a&7.;%c=ca^0\N&&M5X]7HDqE92gd&f&]<"CEK/*g,ZhKG5BYNXqj[m$Qr1cG>.>$-r`k5Unj#4ES3.K.iCRD-Z]:l^nLr)bko+p!&.ShQ;.R?o@^[j-ep^o,RX+;(C0%D/m-3Q9#qnn2FEGK`KLq.:-8gXPfI/&Y`Kg'5W]G^\KJ_+X5.rA&T@fMO`dnRBGRR2CJlAEB'.5ZJ[V(/A_GRQZPNDVJIE,@u"oOZ#k"XsS%T[k/N!I._guLoCR?o)PeKuRTi@]B>q4u)U%kmFN,L*Z7NecASS^TVFdQ%Kp:h,*%'cfmnL\k]1?M@&YK&irLV,UblN_W!&pCqEW14Q!V:+c%n5;*tbk^oaq8_gsB/g>C,Co$b=2ITk9LUWni$i`(^;qU40Y3^A9<\IV&[p')%:D`%0s0JZq'kfCe)ZOU'd.PFtK,;e'EVnIdMJ>q4F`[3Ehjgdmg`:2L3_RtKJb]9%SXV?BPGZAi`^PWa?b'./Vr]ipaod!77>FUs't!51;';?Tdh9qJ5PQZS6Mk)aOkd97W-A!$Mrq]unWXs2cg,ON\UO>e@)?V4&_!Mm5CRj01]:D$2.dfW5^3lgFo)I&Y*:>!ijKj/+gF=)U#%l/Im]XXW/#(K-Y3O0PBe]f;H&fhS!.#(=9Sm_8:uk3jh3f0kk1M,$s,.M@CM>Fd]-81^9m4uVD0OY4pdFB-&)0S5[J:7HeBS=%)MTNTNjS23l<^W;t?Tjp^KR#"ZPa&X4QD!^i;g@nVZE8DN_M;c&W7i_R(b1=5kohsdj_/A&4m@GnmEMtms)/Tf"\f-t>e4>2XJmp1VaPH*]t@U)QSJ`ZGl44Q[r4rUIUQktjD$3FDf=II=\9A*f@AI#?=YV8s15JAmIGa=EMW'0>!Bq7s32D]R(Z3](CAu\.M)"$!R%&9V2C"^2iJNVI&:_XEUR#f#G+k_8\@4m7E07Ds@T(U_OCPP`)H#\+OGD1C3R2-F'Z@@,pK&ol-(?,*LH^ZZ`UY!%B_-o+gV-OuBGm*=/V];Kd!5b/UrO]nMTD\c1pX:J9PhjafQV!5Dt4#q[\Zcr'P&ZK)-;!&-p"eCR"M0]*Z.]LtUGL<"?STZHPhSQ%pn<0CNF5CkBTue=,.60'Mgci%&`0t-!Z#-pDn4Z7GK7$Q@>,Fb60D%)K%?U:%=$9P/UUCBCP:9A2P/CK(+9Y*!0VKXtcEg_%4M7nn./O/UGEm8njE-^04,6l`:21+Fe)p.a*^Ek%&0Sb]WGt&k_EQG(*V?VE!:=;qKOT`l:_OE5\S[O40_1D8(E0#4J*@1f!g[+g(X?JG#Ea#2<9Jb]hE63_;%(5?'1/)AgYH"AWXl.4k9.P1dF+sERMd?Mo+aq[bdb9;XeV_lXbe*8fZe2[BiaOm9Dod;VY\(7*fdZ3(mC=)MY3u^m)!I4M[cjk\VL;p%X\6bX5DqBp,Iqg6&bsXmFSHb0*")BJ!X%*C;BXW28@e/St]Eh2LA&lK;Al'J2S2:>Zl-V2MWaNF@7qH?tj4i=Q@3"oEl0njgB0-%)0ZnY4]cB%;Rfn)Jd3@4hc'D&OAp;J+dg4m3ksE;EGg927UE"cIZr3Ws2<3QmS1^^aeKS^B=U8&f]=%n-jo'7*/"uf1p-lU1\+DlcK+LcY%3]IClk-PutUZg3VIW]dXE9;+=7sAYFkZWbIH-\[h!Se>6su!Pgs8Uh6G,@(;dYZDgFS^:`q8?!rW`b?2hH!`N_<._Xl63Su-:q;?LkRT!8m':F9);`;EanIlh4h)_M`2iDuREQ>[RBr28Fh`YuRpsr*DWCN*#CZpf\Z#&eDu"%[ni;LERZ(j(5>_.6OsD)_dEj:4)tteUsEc'K`N$5"J;qTX]DiEY[$IC;=,=;k.C]\eDYh[FFpO%1H4*u42!`V(f]p<,8rXknA>"-k0KDUJ*++`1T)jq4)=3P+jFGH2lm2+2[7Ja@Y:kFmb_1H/%G04V6e`B[8F+Z%$S/;de$!kP$J07c+56"b!PrSPCIkQYX+cHri.iT0#VQS?9F/E;*FbEnJmbQ`f]PV?^+)HmN_\=>hF-9]Gf@cA#p%'%@*<<]k$/[s/J/dd\SAlh4oSr:HA(8Ol57,)VrNG\4]I'7[D)]G3kaQ/hs.^4s&5ki(N0>1bKUk8;d%dpAgsS?=P+S\mO>U\8?Tq)3Lgpj"$4:1U^"T*X,^]o#c"V#lkD-h6=Ys-P=$;>oC%$PlsJR2[G]>#%5glrY"6;(%AZaW)i-GiN1_n"DK%%l:#d\/I[bE`mWq?.1tWNT@5[#i[eL82\B">W>GU>39U(Q4hQr$qoT(\G:18A"<>k.c+^,1^Do4ddkGV>R$tps^bC6:,\JY=]tY#b(E#/NQINCQOdPF9?8PHcj)WGN3$i+:W6SIe-":(WrJ^,8T?m<1[fI>GBD:c\eG5kio/6s:ePap-7U/==SB[aJs2:eQa\;f`WOTmIgVF_NE@RXm?k35hB/YaoIX-jj4'\D!V)eU?X0mW0,_;]JHsPhKWdbXBIT9N.jI&Nia^P=8_Rra'aged$$?+0Y.QYar@YiXP7K!pX6DfJ7f,g3\DIdRQcj7Z`UL1ieVMX+(_S"bi36SG1Ot:#e!/"!N?!G^igGcNL@hf2E$HFUTr)*g)B`kI@T&DoXV-l+6Za$T6&Udq^X:phM.kL%<;R$/D;\(>X_!74%!)oIPITUDgb7ea1-+5.Hli6p=&k"U6@j)M2@:%:R!QI"r2a8o7s'Osq;Qa2UVIAXMXC,sf<;.^X,t5Ya"AMt:IS6pG9^PRac\,=5!&HRXfTF>*8:j"cKh^Cid;btg`5YntbK;-M1d`GLT*oK>JIB9%C'7qgT`G&&iqPp?WY.IuU"AD2_^2c5b10/a!=A>4#"]%-_ilon<`_8^jlu/j-f4M:6'O.Q\H#OV_PdIb6pNuH>nIUhR5Nl`[c@B`F(N-EPdM%l&%-rM6m-&$YV/GSc*V4B_n8bm)p^I4FQmZSso`U+&T;5o\[P/D^s@b]8=&N)fu2F^$d,\$o9-T/WHEt/B8e;bPPDnLR/,7_TAL9=\X'kG73!-OKp5!50$<*F!T(W.rV&S+H5(q0_:MLqV"3MX_u&!P1%m4W8aJE+9k."=A<;ClS2[L^?U6p[RT]9XX9F;36td.=!_:$PNe'>\MrA*#=TUsoC->4Y9F'eGdR(dA,or:SL;,;se_"cRQa^coTcQ:_/1(,-d0`gXgT.i-lB(c?8u3*Vj_)q[[R8NAlNJMr2g:;tuR#Igju!6j5;HV/lT-1jig$g>FUYi8'3$(N:qH=UhKc*FPHdS^`rD:\$>octa>-kAhTO\&@$XAuZ-:V3uJRC$BKlRT&MHc=<:`@idTL^c2#50[-1"^o7!>*aTRGWJTc!BOjjdN4s2ts-F_4ar!gOMuZOSR%JHZi4f!2lNd+Jgb#J$S&DV8`2]uib1/rqd*1P5*Z[2@r&+`$E]n3Ylk.H&S-Tu&,`c^dK`3#Nc&\#f41-uM-'n=_dKE*be,Yd3ilD;iQSg:FOX_ts$HC]K*qp[d7(QBJI`6c,.K$(Ko:LA9"4?k>r4A.Irs[5P&Fl%BPNHotZ5fjI=l'-IdjV+aSXQOiQ@hRI`/r8s!.f<'Mtlj6l^*6[!J'kVOY`_C5MhnO;6XkApeh7U187U3Eq(3LphDA"I$>EOCKpHJlS3h4#A.;3`n-0r*\lM-0BqDPPG#W9+`7*Y$Y%di"\s"T2?Xm\0&4uAk\SUfF1`mMm[hHfVI$8D.m6(g9b`TGtG4s>#@omL7Z&,jarDuRAZgu`CBJef8_tg9)5>j4EWV0@I&S2J*Z"">s7+V.5AK$9jI(7m+>oN9_e!*kClE.H2@<`pamF$c(='2Kc10l+_9B,[%qqiY;`XlF7.OLZ432ADI:-[6a:M"L<]$cB4kkV1f&[@7I\V[@MZk0eajP9eo#]F&^9<)5obc$[eYU_<9?^J4"ZP'4T,,fe)^PDc6im9kOM>MfBTts50+"3*OESiX'8u/$!Ql)-]H@/qeDIITi&c]`U-FP:d_u"ZX1%7]JL35e9K'MiEYj'acGf@P1MSe-]]Lum:('(4jhm?FMS2e%IpS]<-I*=k'JO$IXBuB3NDdL,Q)+d,%0M:^p]722Cig:jl"u+bEEKQ-.khr'Q^KF^(G;s*)eC:/X!3@mK?##UR>'(m4D,A:Z2MLXgD_6kW./6>=7Rh/)J$i+E?JZud#sc&$A$q":Z<5OB%"AbQ`O:?$VhDP33TJkp46C':^8g7Y$KVE%'RY/qjRTGub6Oq7[S@>,8WEEk!qkTsL*Zq0BsHkOkaB\F/'29k.ajd.W)?!/3GiM?895[/oHf$RnRNr!1qT7r9+;W0jo/a*0]dLE/R]SH0h7RY!49O6L\?JtB3dU(MlfNbDWkVB1-7NrU[h7ln))U,:3BcN4XY=L6L7%:.du9/hSuUI`)PXAb-WeO#1NXPQ+b7,@]&%tHRIdfA]fV;>^*.QlBbZkJZ8a,6?`H1JmfMoeQlq#DgSe0nPSFtGkXk7Y0^Q<$Y)MKigm@a$LAn?['MH,YV9fucY;G17ATk@Dk/q4aK3tmUh5AN0Y._V/?Nh0ZZ/l[7`#lb+F!'+g,#$>8Y>_>=lJ5J^"Rk/.=!uV0JD)'Tn^'e4ltQ^T%LUCL6="!9&0+$KhtQXj$h?@7[#^ckq+l&I]Au2DFn[g/+]NVsCJ.`M+7s/CU-l>=qW_!?f3$'*F9_r``UBgV#^Sg\,Am(fY9!mMe5rS+u$hQ&KUdD,]r[Z+U;\[r#SSf`R@?U)V'UXS]'ZD(;a!^j,15mTU/Xdk>qB#>:'>^B2T[q(nqiM.VdS;>GRk?l0?7%[]so-bJ#7_RJg`=`nTA=-oG5ZM8sDG.tM61-+,+)/t7)+k,\_37.aU&M;m)@Kg@@fu>e>5pPN^g+WlGUBd_;OR]3k@XF&]&7._E7)fpB7>L-49CJ0)KR\2K&DaVbl2=UKO"+'KQ%m8J(If%7/g)Q]#l6:r^/tG5UaV*FGLT^erBRo..J0`Db4HU>"&g_,[``9GoF[/C2PL'nuR3=-X,/(2!7^\pQBMir[KeN;4426:BP'=GcaNn_]BFTj%^7@,0D1G2e_cjPX?_dBh(.PObH/`W%;"KuQPWb5taFq1pipluec4U,.*Y,WO);sm_W1Fnm:^PV[]d#iQZu4sIW^M-pp^sc>%FeO.jU`2RGS:#!-cFcDdOKk'".#HT=YR+,A_B`0ZGHP::J)Z9^K=.8k#^$fX%!Mi!UN`UYm^sd2o#AsQ1f/]K0J3M77.C]&^ecEV*iAVSOa["_XDC2(IU+s\_Tg(%`RAdje3a=UA8-S[0rP*^EtXtR8ZW1kWr[ae+MJe])Edj&nC[FBGO7)FPfd_H<+E;m'KA&>g)9eQH_ZkeUQtC6?)@f,D)3+D@>D]beta!gQ"q;'6QOI4QgSK@59o&`RD4<;Xgl1E$L!3BK8)U^XfR3MA\^&rcX;X::MlUN61dFA,%HG.JJHb7TW;K34.EI);&dVeqffnLJWB+_>oVB55-Ri*VUYhRH$O\GpMO8@4DTh8LFY,e3(Y*k9Rl7?9SkcB*A>LWFg3]Q=*W>@KMDFAJ*5_$I3UC(-T=!Il%@3&Ms(&kXWsoPK[6d6\`(^Z6kEOZR40KIrG>cuZ4H/S[_@`&r%m[7PD?\/*t.Z2T['e3U[-U%j1%@K%P8U*>,'6RFlW4gqi;XR\7n)R=?#1j^5_E=s6G`\INS46mt6Ih,DZ9pkMVs97^&1.^3nlriBn*5?(]F092u9o[57jck4u.*G7KqYFcccq#ZbBL,\YceVd\u]K!>JQ5qY"_?9W/k,)+(1Vk?&bCZiHEdG1)7T"okh]mI)*fn(7c!f6p/TO=M*nYQcu#bAQ4/?,lds'[I.Y6\"MO,@.*;1Q:$06(U2b!1n`hJYiAfri>=J'H\rs5Ju^Ns#F7"rm84Sr9;VN)cd^i(4?%I?!(4=0.gU->XSZ!)rLk[%4EtQnS:@3U#*;"l0uLk#PIHf(p&9ElLbZn4-':2GElKQgUNjJ7HF^`!5#/[&QB#9#1!iX#OO*;S4#ioPK+]s],egj/sdrf?eM]l%gY@*X@;$Ro&A'Cek+GR8NrWtrqUWE2#KOWbi`";(I5#;'GMP@Pr]oB^'ZlCVHN-a(i_N8hbLh,rL+r91Cid+X[[ZqB?&fa]=+X!AA;abbDaM6HdWPg"o51I8sPSFp;3C5ffGp0r_;2P#$a/("#(EW)HfM1S?0sU/W<.0rH3JHk+%JShnRJ=Ps.?Y6Ls9HPgWLmkBq68_EQ$ZcrXLWM_!scni#Em+1aJ,YbDb,d8u2Yh5/$S"gddjoA70-!t',&ghAP]b`#/tN^;;7BFAUug*QdgG&kS"=Ti2UYV[YgL4\eIN_5orm@EaRg6in7Nu]B#EPDtX&VIdF!AICR>W[:a]EN"XGiHdFr\kSX9d_WR=og=93JS(-L!6@V&o4%J)7rn@Uf_V<>2oH/O]7hXSs#S6eY7U6TOh5*6-@Qk5j=XT@5\8.lC//Y@gDc"<`P7YTs:'h3k@WnYgRAsQnJ=4F)OB>!U%Y7Xs`DGCiTZt^SrTdIA%<8__k*LWV7V.`g'"GBM1ZWbmPn[PcZ/VBO9A_nE3N&!("VK=>W"r1HX:Oo4PqQ'BZT="+84CEj`2bks>XAN2ITpLSP)NU$l7Se99W=aW6`j+K8];SUm7`gEnL!J.-38l4#u,UA`R$Jp'oX\9iBX^h.rUp>!EehsiRR*aAWHP_kA.'"O6G.LTdph%(lqZ"j4LqhOT(V(`Wm<#hTY:Pjkc:(]6Z&OW#8[$0#/'N)DBT#tOZ:88_T::rO.T+ncW\l!h7[u_bA?fQ;J3)\h%8;,Ie'Gr:=dLDmVHJ2lH+HZ\`@?dSM#-/NFDB(/ThgT=)qL-s-J.odg,"'qo/'(*4UBdFr:IfLKnE6C6WP>d"8gt_DfKXl;k_*:_!5h`VlHijQ@k%o+::2bi*,o$>@FP@/.<1\1>k!T_X"A-u4;:3c.:"pY)mgD'b67tAkg81W`(OrAob5oYi)E,OcHT#FkV*]B>;u,fY#GB0SL`BO0:b;C@0#H8U[n2rI?'W5KT0kEFGO]'nB?WIq#gU'493X\Z>(7I?3i!Wi-I2'=![dV!+7tEqkGBVB8Mm>c'Lh)Sh^DPD$j1(1jeD.<^!^?n<@8#:Y41&Zf$s]3s\G54N+:L]k":+"++H`,XjlbapeA+u670U6pV&"_O84,ldq@Y_[)_6_OmRU%r/FY^+JKhCpBkmsN%)SBoF/n$MTPh!$%T"qKgLEK\hUoSrV4E8ZdV'r(3#`roc@qsGm!rfe,6R-["4.iEcGIu6.M7dCN:_%N>/I;[9.i-dVb,,dmTmTGUTW9;Vrk`!)P47hRp7pqP]qrb!9POrk74ZGk1drl6-01NEmA<&gni*T(=p_Z@2#"/=0Vj;I6K6!4D_i!W11:fZU`;)p>8L^tD/OUr:kgT'%9+p-"::#ADV2.-rDJP@V,VpD9cFmj;:2[rLHn=9d3HPV96pNT@=2oj@Ul,;pkL(j9'(Tk*=9bT8!+C+!L"J!NI%n?0GMJ,0[dVUM?C:[!.^>XG1Zf]n6UEZa=5.bFuOBITa`+l&+A+0M6%/BK(AQoo(1&FpZpR:iUfSdjKZF&_er`//e/`k]_2?,Y#O3%]-1f^\H;?ufctl[^_Z_=0.q"VbF,XYpLAW."lX8>5hac=#))8aZhc9g!%[@IA<9k[GbYKZV71ALiS$m]n#Xf`e#GEKC1,"hfS,1\9J"1fIJiCic"r#@+I:POb6B3cJK'*TmQh.]CA]noWrVn!!6H)$][i)qXEprViU9$]QWu=V-21hKE]@]A9@ab?CiU=ID?g67cL$eqK3WRASb/N`b&ta1\9u/app?:A6B906$4Ep,RNBWof+obsURg'AR3S>LA8oXMPr&M\-7k/HlRA>r,![[AboMIcYkhFaJN)qTuV(Ae%,?l$hrSoi<-JGPo33=h,X9RV7^O%>fmk$/1p6WFT!:iLE@RT)ItGk]1@#ES?0\Tm)gY1*Rb#A^'cOamDMgZoKJ,/VZA&&<_;K:7)T<6/ftF,ZPmD(GnjfU_UZIUHgJ-=TI2/W@0A?`f_$=9,G((9f^RNA(@=FgX,Srsn-e_/%,;&SkO(Nc.s_5=r;Qjc^)%q]nu$(nsM:G0^dUKZU^q8(%@'k5f/)jD3%IJ`WYhD%k`X^iJURi9s026&M;jFdON3EEtQ+jEfc)klLJQ'AKd^9rYV3]jZqqsp.QX2<@OYDLSt4H*X^EpV/F41>Z8fR`'nKSD,^o?lC^5[Ng@[q]E5KQciC/0PDuFr/(?E#M@%2DQ7]2T&+=(9\THg$`Ug`aj8.JFKMg'.=1Xq+VBH3")-/qlluM#3#<*,T^\Z2ba88D1FpR12?V_N??:9BJorrSjf>>82\J_9'0Q!rt]*)_l"+@0(E`)4rs984P5R^'/4kk1HBe)QZ&Hj8e/F!=Sblm:k1U>nNO2X-YKr\9cia%c(rTNUY@"F,;dgb]`^46/j5[]uXa#N#7Q1q.p$JEM!Wpp+iXX@pBrYJ#G_&<^Eo)))nVZZm0QH`CjqGN,:JhjhohS`t%Nq*;^!-S%?$9Cu?FRjD=."B*HM)V_,f!9VgnYX:HURCmnD](ECmF/OZt,)&?o]QDFU8kZ*H:RoWYjFt#hB\/)YFT0uqVgKoFjba1KGraQ^!JaB%keJ6V>@TfJ'W\J9!#Q#dhqUAO:[8)GR5X`O![KZVKaD4=3.Gu7#d:XP/LOTYqtUqY6,BgXij@YVjgPZ8Ms@EKc9BA%YcGhp*-Z$dPB=,612.U2nbf_+nJ#1PR[D)V9P*6AWR7[F)SD,k5i:MN%UdWV7!iPV)4T[:niU6?jBYfN?YBf:6Ql-5Tl^-U%NbgJ_49f>PoTHOcet5p`b`p$C<`@dG2KdLmYY^RIk!Ih3;f<-/YdE8/ABqis.t"\j,uLdbIo!":_02/t-'^sa0t,R,Nh@EO*#c$J:K#6=Jd5BBE<,2SfX8=XAJRMtNE-MgJj3+Qo)QS2>e!.4J6%;9,[C^lsui\uVH.iNr#>Oq-IRG4XH98RC`$nNQm_i^W$q)a:V*F1NRmiCf5XB%=d/Jrah+O0773:[_h9=gB>GOMnhK.#VU2?^2ae79L0<47!(8QQ2?r?s.;BC:$3II/DE:Vmf?IpZNf:Z'1C9PLsaWI,3+2ZA&Xj6!M#ngLHaGPGhkufP)pG;A1C.Ob/$Z,n,+Gch#l1!E5*^8g,aV42]@fJ4Sj_UOcR`+pIjf:O@(K-^uHcG2I]]*9c4G#h5Ug$Q(Mp\pX\'folJF)MkUC&6,E.[HlU@1h^l'o3RTa7[Uko"D^neWpo"/Y!l72u>#1PS>j/``[qdGiB.GW&Akr'LiffQ.n4!#F4&Z=X#c(I>9e1rqld6&c!odAb0g,K=\Dt!.k``RPqrI/5[7emd9pdpBCeB[>Im%4q:Lt5'n9RX1a4,I2%/G0d/HVeTS8RDrbHp@;j[FYZ7SZXZUQ%\k34C-m+*"(/tqdJ6W/a&dhBr&gNmb(kRSY"/QdqUJ4hK,V\iMe2KmZD=)TiGo'/XLAmmI'[a?Y=+o5O`XFOF>uft92(1--YTt"Xe`>;MQ`f5l\L_sjQcQ:W*M3o7<]@hr8KV#?>Cp27Q:bWsi]cO0LWm/ljXNN0c"*X.2.n9A[/s'G6AkLbsB%=1]W(HYciuo]#[f:EJ;>rqQKYkNIZ4D!QDi$,>g,N4^Ig3P^us9)r&]hoe-+qP6#kioo@Vg`1@?.#Z6d&OXq9l6u1AZA#^+YDL<`_#lH9atB8Mqs*F`B+OImI702V7L\WX3%(X+0NKiugs>o/B:&I<l5OlY2HOt2BfPS4$ifsCr.,q2O[T*'H+W9+^76&(F-eO21qs@#eHSO4>aofF]%hepO=hmu:(ku[Q%/GSW@.c5Se*)Ua9)o_`EO7mcbLiR'_l7BKX>NkeM8cg\TIL)[$u.sRY#PflO%V`:pNlN]n;a]-P>:pMYfdag^g82bf"_S\q++)M6O%s*!2^m=4ge^?@]1(\#pE?UGiFdF%c@t?CPY`HL+]Rc\9l\#5F?%_;jfKc]%;_l;;FeTZ;H+Ig$FIgEnA[ilpNll%V38#u?F`I:!0"3cdUX1"f(CuL=THY`]r)qDZPRuY@`jc#lR'B'8(D:8\'K*#8mDI,B%n\(P2!98a++OK9D$`BPscima-F(RgpE#Dcc[bprT,SiK"U)"4(?6h0EX-Q8"DUb"VI[0sBs7NSQ#6C2O:W9PdfmoB%pHk"uLe92?@?!>>\pWM`ZY'^TkZ!jEKJ"`2:s$K(ELl\YaOe<^.2Scq]Zc*8uqogk*1o[t+I[jWu,fnoBOjh,l[W3Tl=-`;bL=c]cCb4t_Hih*ZS?jj[K`_rQ/Ojeb!:]B[Cpk]aW>n";rYb`iM!)I(&G?T+S?*h,6MkBq6lCRna03E(%4%3i&?t@AAZ;q_S86g:2f/dKR$n(N#27%'a2M!ehd>,kM*-=rP!ao+Lm+meYej7YO[\Ws^^>+'r#4.eB.l`/8s/Ysj+hbSH&2RSNmpJVH%7VR="c!g)p"CAUk;T\_H&`<"P_L,s3U0jbnKX#!\eHY_gkZ$^BkYo+t&_ZELffSkb1p<`Kh;T\6'X_aV=#37#JiD;C#6E;\/rQlE^V$\G_O'7h][LZe4o9W[OiI70BbYb7)1X5Kn5W_9lj7D;D;k&[akaQb?&F>&@V2"58bb=o"i+B]VDo?]AbY,K3or`F/ls:uHi)rje5Qr\aO/-]l>M'Lm1UR-&k&JU(YAAWK_lCj)B!Te`ubeC3\/-&$mcGT^6B77R.H&9)&.H078@EhB)P386"39nmp=g5HZS(/LR/J(5-4q&Tqj@VFqn27]_C(k^#B/l<]\]Sk&LLm/Ll'K?u!&5@HKm"k[WB6RJZsYplNN4A05,i.QN4F:V#28d?'UT'Rr1&1\H)$!l#CC2hgj)skDrgfjh:a=;D]qB-@L7b(Cb8.fTA8bn@T"('YG2ZSsSH'P$RbL@)3=t)QiW(YQ0GS=ioRtV:Q'XOgc%krU_5^bu>)MUGeWiU\!SHY3LPY/_0[\p8&*?"#hb@],#S]Q)YS.983f&SrON'rV:?-gW28?^'@#+GjM??m+&e;iPhJ,I)9FVq:,[NcFMTlQi+5"P@&#urHn(t?*X@\B?GU?K(f6%b1qcX$)Mj4p*iP2Nu1kunZ#EdEJSS=VA:u_QXJ2ur2!f#@28,E9flimZb>qeFQQjQh^M,jmmgFf']k(LPW9LR+#1!H7h,m)!H]/R\u[>9U9L/6lW[9WCTR]6'pF:H$=idfu8F$>%dk^`5AK+@gAbTSLd88S?oc<"OfIeLsuF2(?To:]Ym#b2!s-&IWi8e1S!0QUATXY>OEOJUli%G.Jnm%VRMIf&rcUGqp!4MG^ohKe!sT@tn,a0^VG-&"5^@$Ve[+skAb-*gNC<%Ga`LnXrI54PT&WDTeUpW4"rn-ksL*'_2L=qljd^LMR;!-f_8uJ2<1?Ju!/mdh2Tjc5Y,3t2=3.eEU];t7_`LXD-[9,;8PV1/#$N25ET0lpC^0-&Ic[&3O,10:^pc[f_d)k+Ve0ei+%+3mM"UD&$mIWfSXJGc,*bD2-\^(N/L03bm*UZ7$ok&seFF?:-\@a8eBT:cdK(aS^g;3S>6rU]YR`^$W(@67EI$(D[@N@;&Vo88A$`-2K]OL&fg$N0RL]=4CZZWRlM,)70VNa6/F-)d*57%dj>R6;9,ihMHoqpUaSGa6B58/7DG(A&%Goth4Aap,ZNMl'!<6EH(IYne#f'*kV&^CS%hslkA'(kOMpH2\IsTSRZWedWVE1r+^qmtl%P6mpC;X`Wqi,*hUee\/GJSnfa\T)^Huo>ca-V#2q7O81['g1;L`oci?JM-WnAk<\NQAb!>+CQb-l8;d@Y9jh>4.d/nblrIk,7pjmoCkt0(1$EM@ln,Cn94-(R#sF7P.#\\[pbnP#.&<$3Ig@!HB&d\f0!3/&Bu@jdICJGhE%?l0BNK5Dd?pG?P-N0-Z<0UgkF.<"\_3U">YSf>:gk"HVq#&%tKej8%*\Eo!V`PWpNRF(4kJk/d5Ak.XIYn/BTp[:SN(l:?C+qkst0[tW<$YIkm:E@XgShM>ag#$@?EU&k_D48$LRoZON5q.1X%#jm:W]C4gmYe51G*FU`'hr&b[CF7#kWU%?"8]l(kH5#>r_5%enF-i,W4'.[WVi?r@0s!-1f-A`\,\5_T@Re1fc8u-T*h,YX)O8ha.F:Y^SHg,Va)2"CRTg@,5f7S%(QX?[LB*(=f[DH&76h]9HTE@@%,u)_*0K9B`%*;.<3MM2B5b&sHtXW%f'6k@mti'FiHXn,N.u\3"os9`+"sR<)1E`^0%r)sAPC3<1!d_!7m7]]S<.BocMD+obgMH3^HW:$i#I*jsrO&$$TLH?;4>Xm9%56@)Q/?1ejbSD0fo&)-#H\!IAIGOJ/e`G,RYb[6S=N*ZY1$J3.H:,u,AP`!c7(@:](2WRq1=fsX;b%A1fQ0/PWsJmcoON>NC?L]JrO3D$%VnQ+'T0p@(+l6QiCOX%Cr2OVn:PjEl:h]h`n7p],cUZX=](cT4tl'C:J]I,3UG)T:*"Q<;F_\C0KNO*;HK7+%j1:Tmn-jddndcH`epBN?H=jTC:4`.Lq%'Ce,_DHUU'mhcGcF!@f30oM+0&N5Pj9R?aQYBKO(OcU9)fZ'kPhIY%h[.<9%'!nC?DoBKr9$$r<``FK2lpqI!0@;&hXS6jJaZ-4hS=mfm(S`&BiA>Hm2Hb==Ip,f?]LrtoBU`anbl"RP+'>96+8FJ@8Sm,l*aTP#!^3e-GI^B_M$Z8R?sTF5q^TO.eUF)-^H^,feGW*^?b7q>U'":p6(p@KWdM4h$F_7C_0HZo+5krQnt;]TEQ8k4>0n3')SBee)1;3$.rjB)DL;-FSfYd5,TWK1afQ9SifKMUSg]2d"o01E.O,6<;OApUo8_2hq6&r[[&U^d%+E/N`_\r*Y9C>$gS6V3DSGsouVB\fNUe>>qV8Z2pg0.D5fO-&R,[dPphgYP2AL6XhZ4H?bV&NWU_PgnmE>rp*/[e`gVli_i"SuPANO3c!%J`il7I'8?C#1?)7QWqO3d8t]-[?L]Z<%9=B*\f_f\0,f+ZSP,Z@#;U4%5=*s9tmPI4Tc!OG(B(!m&<,'oD"Ho4m.I<3ic?pf^>be&a@](>CG2Km5eC%3oTPK*KDnSmQX"-J+"jO;M9;L7OM@#S!-&eHaZ4fg2Q4OFhV)Ti;/Dfp%7\`"Zif`+'0@Unq7E;-_mf[T][W/5$%I65:E%X*ks6i.G`c?6O>P%LO[qe#Y#Ue\N)]kc2%Y>bXbKZ*6*C]XD8bFfKjk?"YP1/\'AhV8f_UIL=Kt=b8m4&fY=PUhpKsdl3ju8gI!`.jKQ"E(g%@sIIj:Z>GQ`BF9NhDq%bPn/!lnQk\N/.p391MJ0;[M!L3^=3q_7TO@)piZr$4O@]oM_pI"%\qf]U*>C5<$(L*ZfnL[s2@ndj8+-9T.@dM^a5CUf)%CYQ+dDdQ?a:FQLH&Gf3One&'bH4%F`3u%`3<0*7g;#%6,*L:lH2kkgC!]48*7Nh)42amc#R*bVS^oI@cWt5EA7O"^iW(8=nLQ;b4e\0"oCh19ogKlLrIP)C=EhGb,oXUEhm8eQXJ_>uBJ.XTQjo_aoLE.t#Zs0$L4C/E-LHU(#hU8P":Tan)s@Nt&4`]bitn`U-F?3VA/@a[&KcFkHenNU'8A`uYPTT>\!s-5j_`XM_#8(W5H*<.V"c*]_jmf3mbPR7);qGm4?!j2?_%R&#i,$>s)M0Jj86Y/>hP@!sFS>V`ug9`i:%UNlpJ@j@B#R4ceHHO[et*iNs>&8f5p?r+TFqrm:Caq7MKl(q16[!]LboVI[nS=NB)oqX_eJWYOD,7!d$c\eR0FcqB^R;1A2#UBu31aMRR!D@@daA63ujlqAW]c'2PQp($'6i&n7/3>U#+Jn=VA\C7t-dNT3S*&#>P-80re>SS#fTjdbg/bB4UDO'p-FE4iFn,S8p;i%]^NTE]"arVZhgo9l_Z394CK;TP_Pe:q4%`'Ge"[jckfq#WFeo2Q;EHifX_elJBl"i!h2(X2DEA04,[KdPh;@q3d,c-(S>/ls%Zm;*$8"n\644;j7hHM1BX8<'0<^tTE%dm!9=72%ZXb+&$tf3m$[K^ULiS=o3&b;53,(*5!U(F]20--5[Y(T$9i6,`36[lrG'*?DB`k;*2/j93)#Ur>u9ktcAnIBD"$G>6?uafFn;U]ALr:5-W"@XX3mI>=.h1YrKRg;@.i#gMOu_+KS"k$>PcW^S>!F-]AW)'E3MT;VCM*I4%S_>m7^m!II2OL[k#uu9%c#LKH*qU:_biBc2i6!#OM$tQE$[OInYZgm-\Nlo(R0gBU4aJ4mERZ6Y]2d9k*0/4UW$(k.X.;WH1kHP?Pn,6rt%MeQk%;EW'lK!fM#JC18XUu?-&"fnlWT'O8V_G;QanA^M6_JeFYX?N5_&cVR/7Q/q1NiRQo\%Opeh-mX?U2j'ta]SbQ+!.aHm3I8nGi6J8(gOj_#/2+&BO@UM5))s'E-Fek$YlgE&OGl;9\SK&h8i54P!&2@'m"fC5`tmGqOq:gDN_G'r8C"b#T+dF+F)DOOkIB>,s7MZeV,A;]eCiDFmh$gf2N\V8KaJhnNU`n4!7Zg7/G$';XX[$SQc4-cXq_ji)"rm1Bc(D&Q53es*)[L&F58[V:$E8)YFg+;dQo0@2%(>B8rm`4n'/&[*@6X6.ugqkDVJO@+J]pE<\6WkpECZ+Y&TTr6-I"8hUlR_U?0S%Wu;4%t\IW,LHBbadY521oHGAj7(4f9sr"gK?OWc%chn6eQ$&c^A?Q@Nr0;jg6_pcG%9D>0Xh]p]K.f!^C\eRF]g3lCV/^L$F-QY0CMi6%8Oi/YO"Z5+78k_Urot>k>BJgT_tfAOfs8o6.i^DffpdYIN*[;#RmJRp>dVfg8OS*GBg5.S3trpN/A\aVVp8>UJL.8pHG$+$/87>q0S)g(gd[79hsWe4NOZs\lK!tT!d[$38PE8k"c)`>Iu_6hpYICi"1p_]<8-Q>]\@8T#g4=O96>AGD&bgT]KA^$L=Nr7$<#V,CtX]nlhRcA#A[P4\V/jV>$(ar\bj7qisK:R8L@N.t-81@\-IAM<$YR@.Il]:ptPfhSARCP1Bq/a[$SCRMeVY+YDI6N?+oepf3;&0X3%0t7^UJ[:"F-'*M+JS%So&kl6"t;1&6mV5Jaf@#_VhGieki6BL\FkqMYSI!"mX=AW6U3_[.`t:NZ*Ea:EOebBE>NLDILD&=J>b#'>GG/Y\8_-%b%7?!\bCe:)M%JU2j,^%o-5oJtBg!8r,47a5+\iC[79p@g^h!E9m[r))Irk1W,(6>j(YH1j@+FEgF"`kL*c.XErW1bGIUZ@=>(f8Jen%W^k&Yp=8bf[Q(@`+j&U!W+uha1+nXW/BVBFY&/!>Y6D-V]ViI-o?BVF3HIT+Ub=-1a6i*FSH67g&fI_8?;o7T;(DD!3d1Z:?8QOKaON$4ZY,4/)NJr8YiISS3,u;!O].^i^^d([,LAqASu_!+bsp5c:o%A\p:,RT&%QE@o\L'20sUC'&!V['_eJ0fcJAMLM.gP>O364P[F;J]_j!5lTKfeGKCNkHE)/e#ia.77<.X%7;'A#!J1)b/A6n)qtB-C*b.+"]'#=,`D5e:*bg\/o;(f`V73':J?_@?H?8;I*]Grn&!`F(dK*!Jn$%^m?cQ@W9`W]E1oP/^Pq-Yq47Q79#BcilqjKa&6)1[E^1:PU;'30bk?NI33ID+X.MP8D,oX&8c`ha(*cC:$&?qs17ApRV=](7;!f>q"/KQ0;tXr:g5rgiA\NqRs'RV`UNu-J(hLBXM)CrNC74CQ#85Pb>Lf9@9M?gAO1ACX4K5WG*(nA"[P333gfh(&'cQjg119/qaNiSMX^"0Xo9hKl;@>r^ViMm&[pgeF"_bM:3HOn3gSCBmC(AY4Wdth_Z8?KrfZ'p)2R5rQY7"!A!U2-,baD(O>CMPr.LZ_rPjViSj2-B,6aHKH1F(IFotj16HGY@pMKGi3=HXY)&FI(nX]P2[aqrK"0-Bi\KB?$iL6n^8WpktdBTa@(kI[>7gL"LMs$g-SHVn/<>&,_LBT<"6n*W(8A=4dM2S4#*iq"_0OjpJ.X\>*?a\?H(NFo`qDI%as:"e1!2?.!\^W[4,s1)peW4^211nu&=XqdPrGRfLr$q("bOe5Xg]Z<%nahc`p%m*rQoA'>>lI1)$>X,,^@Z=$'pT&4>3dgbEVNY4"m9;HAI+Eh\BjLtj5-gRDL%-QH3:2:jBm:G`/PurJ'*cJKRMEIC3_qr9C2k#G'd7XV.'FS>#0uY]5IMa,E)GVulQUO*rh9HSdXSkOg)%<<7p0u$`UtWO$nOsW;27)>1fr#E^9H0='KDmN_>j.fjVlX;3hgrCdf]^R!Wmri!+k/sM$(Wm[r*TO[$Mli2j=[Aj'Z`8DY^#.Sp_cUeNUY7Jt9kPm5]N:i`g#*Z"mNVfPJnkCfg%d8UoZDI0UoFLBP_WOfLdA20HJFEPu?1t<,AQf"I-QB)r;UJ]Tm:_%^!nR!O)9lWq6b7d-r;N<5$W5!a*[Sp:9_`?"1KENah[li^M3]JmdltoRX4L8&Y$^iaWBSmDR:F?AY>aBC/`?(0f]PFsDL,,)S1_[!pW-!#9a"'^k/W0""&F!K2I*@SV#K[S7'L%CY=79..=GZI?'V)4M#l>c+@&2pA7g4g6'OV\!,u%&0IE;RT\W46b1(=lF+b1&=ot19E3%n1TUkOXCB8rA!f#kn5GWP(J3:!q4j-*cYRnm$2)BFgX*Fb):e#J:N0#TQrnuG!W=R`#_(OHhhXFYPAKok6sXGm*WO9$3%o#6-*3IdmRAU$MK_tMDSUq!OB6'"]7HpdsLOe3r7p'Kf.IWf@SQYBNKWB!i$;<&.fBa&.lKFk`9agYBc(5p[HJ9/'#dC(8^D#r8i[$I:Y.h$=`o?j52=]$nOs[`fr#JhcX@iU#hf:%M:NQDIS+1B9@K6rb)0Rb>`!e%m8Q$+sB-B*06FB,Z/%@Pf(pg:Dpf:gN:K]6sDF%="WP(3$%+r;hMdHi)cgCT!p7FijCMr@SUA`i#7R04(5X7S"n@YGB4aqA9rlrWqYFbRU8Eh5N(*=unINU:]gYu'lQ@)u#26^Q8i/4U%l_hKr2F@rKFlTS&pg4-40)08[i_b&':&1n6ra^<"KtV9*T0H.NIA-@PFhNMQ4X")6"9\i1"9bnXW7*oPXboH_\!Xltq&at]khZc%q_oVQUMrRtHOlU<4YlkV,on7%mF@hZJ:N0#J:QS."5CI\j^gl[mnPCViL#0qcdHJ]UlP!`X+#tYYV-%Z!WiE)Jl`seA`'Y+Co52;L_W&R!?~>endstream -endobj -4 0 obj -<< -/BitsPerComponent 8 /ColorSpace /DeviceGray /Decode [ 0 1 ] /Filter [ /ASCII85Decode /FlateDecode ] /Height 150 /Length 67 - /Subtype /Image /Type /XObject /Width 811 ->> -stream -Gb"0;0`_7S!5bE.WFlV]TE"rlzzzzzzzzzzzzzzzzzzzzzzzzzzzz!!%Pa!F`KYL&~>endstream -endobj -5 0 obj -<< -/Contents 23 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 22 0 R /Resources << -/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] ->> /Rotate 0 /Trans << - ->> - /Type /Page ->> -endobj -6 0 obj -<< -/Contents 24 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 22 0 R /Resources << -/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] /XObject << -/FormXob.84711fc111af97cede1e1d4d3c37e90e 3 0 R ->> ->> /Rotate 0 /Trans << - ->> - /Type /Page ->> -endobj -7 0 obj -<< -/Contents 25 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 22 0 R /Resources << -/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] ->> /Rotate 0 /Trans << - ->> - /Type /Page ->> -endobj -8 0 obj -<< -/Contents 26 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 22 0 R /Resources << -/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] ->> /Rotate 0 /Trans << - ->> - /Type /Page ->> -endobj -9 0 obj -<< -/Contents 27 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 22 0 R /Resources << -/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] ->> /Rotate 0 /Trans << - ->> - /Type /Page ->> -endobj -10 0 obj -<< -/Contents 28 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 22 0 R /Resources << -/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] ->> /Rotate 0 /Trans << - ->> - /Type /Page ->> -endobj -11 0 obj -<< -/Contents 29 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 22 0 R /Resources << -/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] ->> /Rotate 0 /Trans << - ->> - /Type /Page ->> -endobj -12 0 obj -<< -/Filter [ /FlateDecode ] /Length 1121 ->> -stream -x}j#7s_[!0{ m7'ac9׿ [(׊fH󍤻qx<\w_/|]>vzp\8vOw=/n?}]iqϷc`?|=_^~ϗ[yz?ϯ\-unϿm_\O??g'|]0/Wq5ߞwm/}W[vʎ=9(rT䤜Y9r!WJnʍ<(ɣH^+ yRn;~'ww;N~;~'ww;N~{=~/{^~{=~/{^~? ?A? ?A?G#(?GQ?G#(?GQ?ɟ'$ŸO ?O'I?ɟ'$ŸO ?O'I?˟g3,Ɵ?gY?˟g3,Ɵ?gY_ "_//E_ "_//EӚU׵y k=Y.W-[MV|V)L/h{D_Wԍ:s"7asv{7Oyßs_[e\-gvv~O~zvOv>UVuZrXj>zz>߿2.\9endstream -endobj -13 0 obj -<< -/Filter [ /FlateDecode ] /Length 15939 /Length1 22416 ->> -stream -x|[E/̞`@> {=B{\Qev^?|ȧ A$ J"w@\ sWN _;37L @4u,=$DX 8 xNHBD H1Mr@ T@ 4@ ҁdL X؀8@Nnq A(%rP*AjPjԁz1Vځ@]^#`q0f9`.`!X%`)X`%XVcZ ց`6` -:\v.`/~px'8p/8h$0|K1 -F2ibV -\O |8ˑIyDw x<נ#HAŖ\r_4G26[pr:6BO"jG1"nK. -;]fBKp#.mYF\賽5 xT]4mLǒb"P5j /̞HJ;PnZq06NV  C^W o=Ts=,~.]>L70 Y"nħRstخa2r{cע@B\y-Hr2Mz&ga_"ޥu!aMTf73# -tl& gs VjNbltS`%QX͐l=$6YM^OW]Qq!N]`gDpy4;n'59On?HJ߯cT]#q1I<֝$i@<PuB+py -W0:r4_P=UV5LW -33445oqoiIE&9n(]WX,-ETucṶ}Zk`FcFH2s+חW(h"MFSL\xnd8iJGK˺Gtee:CfQFAD*r708h'q5x=1in-k75ݪ/bWfQJW.+)-6Qh~:-UQQjA\:Z#N lGj{բdZJԔ!UNGB43. 5(7ujyo"3_iwZuq1fq8f~ !pdݠ/-0Ku: CXrE|&bgLBfpblnC;m\3i(1]$'(@^<䩬m+P$>|}og3oƒ84jS!QcX3`hx>3\?LH1PA(N+.O{lkNUbYj|(%h "vt\>M^v Sj+GQRNY<_5N0 aqL0Cή6l`_Ll6ʉ]1Q_\ܜQYK/* JijjscnwoE:5ёzCRbD"%% M+-2e#(U4o\&we}h9*./YXӱqcFdCFY9 + .|(2X'N@6,aH~o3~2-%a%ry ;s$RKRY?=1~*M.U:[Vy&cK$f1Q-Y^/vSi٢|G%V1/uT nY5x#ɭ lk{P?^-_ܣ5,+u`E&ތft+h{(Bk1sz￷~[XiKAE7UW++P21J1o;>SWg>E[`:0N?<9y`MΚQ[ÙH4|CBglN4<w .W(UUוxco@oꓓ981EYr;;p8چ Do PTBm(R+*( -џ8y qh nz rrg牱CNP`JUthN0AD6tFtSa]O^0c'~1bn']~"u>*H\3yyx{E຃ +BU=ʯa) A;鷾&8?5_SBypg[[y.Wyyn{>O9lJgm1 +rSS;gj$xp߳k?r5Sb *;u'weٖ>B@ӤqS|6*H:%rM JFYr+> -:D:X -gL<rfk$k6GruiZ*zbO}u|*]c;L ML{6^F;q8V&aS,Jf} -K.@֚hbZS?)S}9ET_l7CF -]9]oRX+תą6޳x~U>_nndQP}Rq9|H9nfo%L*ϮG8E%EsiP[k4*YYۢPl\ȣ8&v9ĭ)qq[ /^Tg(VC|1"Lo*0PbD7DiK#ߍ:GŒ9Å#VZ)`TBpKt_&W^hay/1X2u,:GFp`1害l*s1c$UFL3ǵ[0XK!߯oҹbxW(e! ]\&st߭K]Oe#.2LUvfOKa -ǐC -+x_m-O8:o)aĂ.2e2u`a1ר(uˈ(% X$:brft \,XQ:S>ALt呡)Y%S1GFZ༉ 2UUE˝?-wrҲUZ"BT* NmE׳hqumKk5W{six 6\`^W𡢐zF|*yUJj Vy>.ɔenj49b,n LK04w -(iJoF+` Z!j>F# 9]ggv0PSRJSZ;2‘*4ďjK1Ōtx_Ck:Ck%`Pd7Su)-dEL (].(Mryһ[25/KVk~GiJMSnB*Q,Z.i.71 -Y4.)0[]#nJ02R$@/i -50so`_n3#p-2 ?C?=ޑT G+hZI]1oGάؼeYq]/9az)Gag̿~vf4h}=_; -x?;A.BR&`%+i!{=,QC5Nplc˕EtLBA^S| {D Md` -ܭdJ2}I x!ŋd҈IM 5EJ9ksrUaMҩה.Lh J -ER >'ҵC *r'o"%)T368i!S - -n#)3 `R 1e5b@qIʴ 'ÖԔy\?J3d*2 < -/7ykx nXkF 1&o!_&9L@.S PhSyΓ 9O_@Q#DVR)ɘ -ӷv0T_˟{X ?.r?Igծ$j cv!1::et&YٚoWPae5  tX!X - L'$-X'90])=C6>]Bc<ӱpOeJ_)yB/]x?9xBХsrxc/aC_?PTb9'$3%h\ePeä :xlo=zeK[NDӁA?a#6BX X&b`4d;pjT,`C[01S`Ckq$&3?I ;ֿ7LK:ONfYgMhgӛa2Ty+xp7*TZU$3~' qmJt"jm46ojL\A{sEDo<aNclS>cRg -Ҏ9,BL )3D7cPKij({1 l'6}V-Mm\4~FmMk퇧^w_Er*qGI:ےӎFhɬҀJ{d8iH1$پhvȖhڜlurZrFVC{7Eo>}Sh,ew{>jOiQskYv]Q$W ɷZ_ax<'gOt_%27ͽ -_\RBh>f%2kKeNM  -L5B!arjԪҭ[;r׷W8OJC/䊲~Iof+SbBo}g?Nur;0E؊J%r Hգn+0U+uE c!V#fiidZBYփ==}L*uo&%$yer&.v/W誛WlZ&=؎:^$ 2S2`*$yeI3ojf:cvz*E ]3:(}(Z*OU^Y?&[ -)7]hр,bs\ynjMMjL߽~uhܖ/)+ɥEu{<>ucN/E0WCsOIHd{rSMOs{&: [Iߛ᢯ {ybN+,q$QdW/E__ `W0(d3 E9Oi_AK<\iG^F; 4%b^oy叫ǖCqz*F?hF8&\~Zk\:gmRߔ de02;/"ؕ'鍶Gzybj^ 氱k\+5eC}`%aYʹ/+ !3I,~hgTgەl'5\NtlJ^i`E=\Xd_ȾA{抒yOZn%wV-xf7oUG'ےd&DHC  dg|p%Z>݈òVVؾ$w0]֙Ǯ𑙭m#lߡCWuɺuWi)Jh;nbJBZeAhLWYxAFn8cg` _@ex]3 `EU1,bK44**;#BVbpAD_#H1>E֧fgtKMM鮝Quǖf55e-iSѥx)+BFss]9uq >3oCDZ]TGIgSD6HC7zW[s -cpʺ6ё\T<cC^%AtBDsHdo_[ Eɑ\OO彾r25%)e?v4Cft[VoW +aӾ3{f yגHelC᜘P]6 O<|$a]}K-Fc\jjsUgSXܻ8y^iE{b?NmM6JqAr04>RTT[Ppv"5uHop|#{T"X(}GbVZC_g8lj-迭˸N}BQ^Z\peF?U؅.ZTVF2MJ'i-Z^XFn8,XZ']C -@.A'|]b ֓ -< ' eܖe]ǟPYR[V˜QPAv 4Fy=eezT+aFr4\/:.{CbM蘕u4St:Ӣ:v* }_"23|!w:|"k~x]%6h[KWB>..=*r\[Vhҵrab<"R6<)lm R=7:9PvGwjk;lE ?YPޡhcui |5=ϰ۱H cL^Vhxy0YcEqöիKK69WudYW'{o9?yҟQXݘscn!SV2(88!gZQaN_kA$=ˎ_X-쮝B%t`t ]44Tj{(%:;7.p,^Y5\(_hѬ(qlqǨԬqpBc0Ұϣ]C6`85jtJuñ4S){l@|̗;v`qrܣqϗK⣢ɦhArD[3۞Gخeh%^ںqjz6֦gyV!+}%zl\X%#V7*zX@YC -by,b,-qy"s3C50íWDj5?3=:a3z[p--olK.শ%ڋmfG>@0h-~S`6Xth"4703O" _=P]Ae,m( u:YY]Nj$ t0E_xśϣ7z/9Xl=Ǒ5DB}+)}o%bz>-pʟA#:_ףW##~NۑU} 眜̚Lz/}5t9޼՛./(\ZS@gOx%vCFThdv5yS?_׾@CpfQLHo"^JO:4V{[KO˔د+1mVyhQ̚w-'7M/vEX sj&kHm;u-xi!1P!V݂N7\g[&c,84k#zaȗBn5dM,6+<ĂGۊ-܇0ɀN~l#uaC]ra<XRm1N-mze[Jƞ](4i6$TQb0%ٚMՆG'(T5]OG3)*(Mab@_J]:B>noRww$/Y:$FÉ>NBGq,ʳ펚n{2w?{_97>.^6 垮[%F}!=oK#+P$u0qW :,'H+o0E ;]s{A >!I5O?[zr%v;KW-N'pb=X"hKM5عetՁo}ZVR,׿'5q@|XX(lzMz -ݑi -:`D9-;Rщ؟6kEn!;Ӛrշș3|;+ *eu)95(arQ F6 I2{}v˝%90 ߹/G]v 2lo% @2=Fh_-ef -H*G$!I}eT֓gn%Uy{i^`w{Fz)3ׇ1~Q&j$ +Uoz22e~s{Ep7tf]07E0 = -vߘ1Kfyx`CcAT^.;u0laV,qCk%: )4%9H֪h`M4`bh0?ϓ{<Vt\l3kZwlj/ -98 -a 9WW*q:=Ii4jʞȊbAwp Dr8yuy)uK^ǰ"q2ienjxL>[6^" w{ -P܎~sigQ~ǭoTw]r4P^j ;EMM\[[ZPmIҍ%\ʒ)Dä_eT#ECuI2<6֛:T -ܶ]`.{oJXoeHV[IUD/0P8ykGFvKWΝ@~vԚ jـ3S#!0&q -_Cymvà>vI -U(}iںUG\L.h=WiH6u]ϺWQC2Vew+]e۹R/]#wY+s̋wp5JB/嬷8_~hGwwcV>1{GyqLȧ}eD&c茨4'8GZ;OPRzp0$ .C -݁+ٍ)0iʣ L[ȓZ,s 2M=\S'5Uľ^c¼2r&yުI T:#ݖ?د6֚;lsN e4.C OGg}̩**T>/qC =;9OaS%^F=EО^zHf/e>T@:Ű*6*xwEVu'H`mNnakK^TDy.⿁~}a&D Iyy|]Eyz oP|X(ܪ"X}qsE^nx@ٖ:LÌ$Zpc7܀V kr3y ςFo/A\ 77{9ݽl7B%]I~A]~m z'O#V'"(z/q8Y\kܲqs- o?6M0$t&%ܞp*T)qE$GҦSI`z]^~-~=Ǘ b{$ےO$t ODlQ:ѻY RtB,U6" Vv]&3ʛϩt5Z9M9A>/am1Ę>&@X>&AuQ #:f돆A'x7 c|FD+2X>&| vzČgB3'a7|Q:3'c>>7Υ`shy6^ sǕ`al{E? 2Ce*5`!)íӏu3ȠmY}:3:3~Uoo-oR/a.LtJRT}?R=Sgf3s{E15ໃ1\ۼu?<d+znMsendstream -endobj -14 0 obj -<< -/Ascent 860 /CapHeight 860 /Descent -140 /Flags 4 /FontBBox [ -72 -289 1149 952 ] /FontFile2 13 0 R - /FontName /AAAAAA+PingFang-SC-Bold /ItalicAngle 0 /StemV 87 /Type /FontDescriptor ->> -endobj -15 0 obj -<< -/BaseFont /AAAAAA+PingFang-SC-Bold /FirstChar 0 /FontDescriptor 14 0 R /LastChar 201 /Name /F2+0 /Subtype /TrueType - /ToUnicode 12 0 R /Type /Font /Widths [ 0 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 333 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 333 333 516 600 600 990 745 284 - 333 333 514 605 272 605 272 500 600 600 - 600 600 600 600 600 600 600 600 272 272 - 605 605 605 553 864 674 687 731 717 641 - 581 754 732 252 533 708 591 898 729 773 - 652 773 692 647 616 729 654 948 658 684 - 635 333 500 333 539 500 333 569 598 558 - 598 564 377 599 572 271 274 547 250 877 - 576 597 598 598 372 520 360 577 500 772 - 530 519 502 333 210 333 500 0 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 ] ->> -endobj -16 0 obj -<< -/Filter [ /FlateDecode ] /Length 910 ->> -stream -xen6ṟBؼMAŶ zAs^VRc8 o_\hkDJ)t/o:<OqxZ8뷣ݝ[xz~[ ?n'߯ᇱ~z:<\,3O_|poewu:5<~$ۿn?_vyqZwc_̧KyQ9r"gL.ʅlFve'WJnʍ<*ZyM(o[-yRn9 ?A? ?A?G#(?GQ?G#(?GQ?ɟ'$ŸO ?O'I?ɟ'$ŸO ?O'I?˟g3,Ɵ?gY?˟g3,Ɵ?gY_ "_//E_ "_//E7&7 oM~o~7&7 oM~o~w.w]~;~w.w]~;~k<oG[koWiý*^_7eNj빯u쵠o }+&^Sx۪7?ѷ/םK_~`oebV&{*m9icKmy  ^~-> -stream -x|yu_UU==vvw@[o[ű>,jW{@BBO"|A!se6A؅s 2%BӐ>uw{^EHrg{(D7z~mz_< wP GO>Ⱥe$a |B2=}ey g>qK_55ȟ/?tܕ?C&B7~_^9}}oAC/ލ4Da}0 rg@:I$z[CBx5!Qē8:ԋTԙKDgGB2P]Gb0l<(ZPUPP5j7ڨDSh F3hEyQGuh#ڄfV mG;Nt=݈nBnt3ڃ}h?:Ct+ ݎހ@oDt'z Ec8:Cz=N3!F+,:.GУz =~=V+]-X^߃2M0@ l?@k{އj 1Hvx[AC@_6]uw.D7/9 <9=?Cw\<2i2PUFIkKZQ|~ȯ6kA6=hAQkmؤRy4@?A0O;^d, thذ2ZH]"R3w =R.Ƹ2o |`>$_Ap4,ءq7VZha]h{ h.ZVǝ&8owәm{R;l/榋)bs!KKJdm"O (k#$Pn=./n9쩠 =%C#-&COҽq_4-SU׭BU}[_iGqt]/M^& -1dqs*r.XרoUpX~dPP6C061%IRbiɍt~ABgX :qtջNM0+&RVKBׁO> -%$D{Ò$,/xV>; t=<2wYi>K]} h8;Io*lkKz y̘Cy˜gn7֮k1(Ï6xvY筃[[E k@0K(0D+|`'`wyqe6ׇpg -SI $G0e91)സ8vNj2xͦ#I│'au͆Q۫Ե)t\ PD-,@[a5w[f%aqhz0"#v.R6n*nh-y12~ IВm[I"IRX\, ƫ.00o8W+Qi8-3؎VkW)'EeGdj⧪Un8RfB !EX# @=i~w/}Vпtd 8k0,:1iFܢߪiN2MnR+k elE1 H,0ͱ%kML'rIz2QeTu;r^"ǓU9 zh\BaҚͳN|f۳Gx3s$X;H^ 7mJBקz: zJy]s$jHbT+mZTC@5ǎ /#F Y=<sk[0w#K#zidAlaU 0eFՀR+On?ɆDD >ρ }'g -]xW p( ̈́.CKB@/O¨B?rA?q8l#wH?x|++ܽ]8>l>2` =}1 % &SX@n[iAƜDq $V ,Q{qeyA?}6[ok`ds70 C7LʚvTEcLOQiMv)LJ*%a,=0VI=Zsbr넲xX z =&EptMXjӹ-,ɏY2Bbݗ,ih y~Vߊ%q|Zl0]ҨfI"ٖi$Nr%"q=;QVo1ҐLU2r>{R\J\r^Z>깮hR1.Ks\ڒ[?ߞ4)`sy$,v<=qd/{'|4|rЇV><6dZ 7>yAoha7YMfz{ڵe!wso>xoՂ]GV=eL{_&nҲ[O~&ymK~Ϣ3 uu?l4|=^?Mk#O؛N7YȌIw43Θ8-]ҏΦLBadGc29Kj4h2+2ְS76ȲA^J#U>[kU -̉,Ďcz8K*՝˻uV 8NZt}Ue+p]iVa|dEiF僁63\uʏ9z3ִ:R gȅ*'yEtb"l62&~qqZmcJ(A8ϣvrjXDQOTEjTʙA1ATOFt_us˒  \kMUAͦ^ L: 4w3bX@bNબEˡiXI}&.r7A r)gsYNgw6A&B\;Pp\ltyˬSk|d+us\]#va#T.kvIK -P(5vSܙ/;T)-sË.Go:وC.eFSr~ P zǯ0?^ ~u\ 4\CA0z<0Qŋ6,W]ں\Dc.u_ϯz3 ̀08LFX`#2ߤ: El3PY8]DA#ZGB`5r+tF7#G Mn.Q*/K&b.> }x2++ox*8x@"Kc[C|kY&immjjCorWİg5|oOwnFuMMWUPR-ɡ,k;,Waz]{u<> &4/.a`?,qqMMӥCXid[11f!K ca#B_c -;哈LL̍8#G|`Ĕ2ୀ#1d%MFpgIP;PLs1Hj`KgeoALf%qn!h--F Gʽ#0i@I3 e,,jChOڝAON=ܤ.Rw]9yv?T09*dfbR4uNXǥ{@: 2 ;R(V MF,)v59Tm$TN7(km^o ݎ'],9 -/t&wz{87_,D^ ';_8FaJ)!Dӣ3#dUŒke`i+DzjP46Af6ۭO)S=Lvgz.ڊdSUKX3V%YM:ix=%Y{ ]!:*ΊAh (0sr[hxN &g@_j(4*#Imʼn5,; $@j3m۶ )6?͒%ҔfG7lf`fZKOZT -:e|Cе0fkX-:W?@o i$ ȥv1`NkU -ND&t aθ0 -VmE5ő80 70H ШN.0/=)'wLeU_''`rdKdDgKa$UToDfAFu IY%go'@Ua !#b`r8$I.E%Ծ!l爝nn0 -ٚU4ON8:0UeGad@e< ef0ry43JXASA'(7K m[)h2;?6jێsA]@b=@΋>JG̨PԱfHd&%f! w)I5uӢW;nւHSN 5^&x|61$fh| (:2%#`$MR@FMj0hc:<Z2= f\m!${v@Aߗہ?^Kc5(.~)ܸ1IǛYϞٵV !Gڭm/rmVډ5T$o$͋6UHvO_/ WY_Pj| -k|ckGc0Sx ,[\7lR,&dRo0jf -8S *˕(6ۏ=z$q7Eqvŝd3Ur7иq,qkQ;ʬ6p\=߷zVr3 ;X'OrR -W&*mK!Bɿ1W*s_Cms}!aW(@>0 BoP-J)3&&8|OI\K0TԻHqD}CN\i;vxXb˩OԎP ?t<,îg+~ryGGdhpػ \@W3A0=S"ectfQm6i1AQxš &M3L5ܚ겷P;O7emæir~{ D hO<%_!`/"PP!(7yw% cƣ'٤51liE0O=|"I6Xf 5ҵuB*?lW$ܝ,:VVS#H%NVW^r(զn̹gv1"u$ǂL+jLĆ0um(*::kLMc"k28cKj0ue@e6@uˆnǔШbW' -;Eoh"x1@I `W-"p/V :)SMxAjkrhk76%T4V:]7`Tc&Ij;zJUh#&8iS%5. "$bgB!ޡXn6DiF%i $H3ZER>47+dD# IxT`(5_Rd: #CUuoCwShdm dAg)d-V\\ڝdHj,\}R$+ -& m6_5 -Iow{ڮk\q7$lPhL9XB pE``8@*F$XcRNd]3`2{DMIy<ZMfd1vI 4ISfTG IA^o->Axj𐡾={zGufJ݆̕@j7e<:ʂlGZ 0[r+48JD}qrāl_?Q,P(sqH0;5cRZH ۠&LťpÆ Z==]&o ١F:SkSS&'7o$t[þUpCx@[^}m!gp$7~n,Zʼn8+t /*ya,%=-vTQ j>utv0̤)>l]f/Ct0,C ҈+&jV 773ɕ(?Li|(zLه.@\ڀtg6YDn}m"|R4] BNk6ώ5 n5wS6‰Tijb -p` W˜ -*N Tv%MioD+0F,@vM 0Ƨ dhB@Ч+މqRנ!g}NF&Įġ#sAR| ^ƍ/ٚE( s#nE+9Ehd:SluC!D:X KޓP2&)!hkD&PuG}M 044%t~0~lҴ| pg.G.oB֒U,~T~V * rQdxvzwu00APfۍ/Яnc{Kv? '!p^ bs'DCI no q:\BAdc{&bu4V1˫xth@_~:)<ח(ota̲%uBf=oR2 61 *6UQHv'"9dpS *Qb{z nc (H? F?C5~2֖KK6%:5pWC<[z lw>~t5:^s}q , :¯׫󚫌ʖ-F^$Q6ؐ%(="{Ͷ[I0 ?ac%'4abs-#P@ӂ$!0•Y5ViD@*ώ".RiQĥn Tfo 8[#}= (~pvGq=W܎W-#w /.iL 2 5ate!⸪YQsȲ'gu,S5ͪGCF%%m+έ^khΤKbNej3{.y n |nw*Yw H*z*+oo߆Xv3 ݋{m4p!yȹ'#8"U]hG`QV/H.ꆥׅ`2m,A% [X2k4RTCҺ-yPS7̽.i׮]{tC+LYh#+skYg@eM;cc[D ˦jB$KɌOi'Ixޤ/G،v;:noޱ|2ڣk,w^Z.Ȉ.! -E#º) ǭCTbV `rulN0,61֙e=ϫ1W$,7HndxXֻL\]Hwij8SUŗ喿tOyݵ*Gګ5|q.\;R*.ɵ*ћ :18{\S)b9L]6dwnH?C]QІOq4T|jS!49ⅵ|6a-#7ǃ!S~ Gt1$\Cwس&LY R"F~1=Z5,<#M&%nK/Tǟ&@?ۍΪ'Z {RQw32I NaűȾGLS$ߡ͝ q#F/3ya=a'5=cbl}&UݞZ͗ -"g痱i櫌d8}`DMb^e@OůA.x', - x!5ٌr<2Ѳ4~80%%rkQytf*cf_3?؂#k@`z&x -S3G-e M_ՑxV#׿ng \ _:?WM$ޘE{PRGo=k!5 iϸHk ]W"E5Bo'oM:$usEEZ̥P[ZmPQm<ɐ>=sE{?6+|FB1] -{RqE݆#:~-Blf͠փcM(@kBQGUA7vsEIIBzF-/˛CSz yW)*ugohXkGwiOk>}M6xMl ȭ$yCDCGC_%K\kia+wXNv'{*0gGE_9ag<߻{Ɨw7™\Fǣ__Iiodwd?W^[~Kwu oHG OHYTEyW<"OE~ooC7y{yvE^WJyx$.|Y)ա6hOrxV[.R իC Co՛}`FG;G% @3{{𽂎+P~AyY4_T~IyZo4yũ]: |:cwѭP{TE7ý@od {]忤[7sz7`Ql]>١ּI~Lp(Nُvb|P":'z壜(G˂[9qWt<(V{{[yM}5cwE8^#s><׮ߋOyvX)o} Vs^=ȍC ri덞OҗK9s# -C2W團oYp?_qqjpF؄sJN}yWCiY|7[>-kpؙr2NbޮZB߇Ұ> -endobj -19 0 obj -<< -/BaseFont /AAAAAA+SimHei /FirstChar 0 /FontDescriptor 18 0 R /LastChar 162 /Name /F3+0 /Subtype /TrueType - /ToUnicode 16 0 R /Type /Font /Widths [ 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 500 500 500 500 500 500 500 500 - 500 500 500 500 500 500 500 500 500 500 - 500 500 500 500 500 500 500 500 500 500 - 500 500 500 500 500 500 500 500 500 500 - 500 500 500 500 500 500 500 500 500 500 - 500 500 500 500 500 500 500 500 500 500 - 500 500 500 500 500 500 500 500 500 500 - 500 500 500 500 500 500 500 500 500 500 - 500 500 500 500 500 500 500 500 500 500 - 500 500 500 500 500 500 500 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 ] ->> -endobj -20 0 obj -<< -/PageMode /UseNone /Pages 22 0 R /Type /Catalog ->> -endobj -21 0 obj -<< -/Author (\(anonymous\)) /CreationDate (D:20211119143544-08'00') /Creator (\(unspecified\)) /Keywords () /ModDate (D:20211119143544-08'00') /Producer (ReportLab PDF Library - www.reportlab.com) - /Subject (\(unspecified\)) /Title (\(anonymous\)) /Trapped /False ->> -endobj -22 0 obj -<< -/Count 7 /Kids [ 5 0 R 6 0 R 7 0 R 8 0 R 9 0 R 10 0 R 11 0 R ] /Type /Pages ->> -endobj -23 0 obj -<< -/Filter [ /ASCII85Decode /FlateDecode ] /Length 67 ->> -stream -GapQh0E=F,0U\H3T\pNYT^QKk?tc>IP,;W#U1^23ihPEM_?CZ5#74VM72<<4U=0PY~>endstream -endobj -24 0 obj -<< -/Filter [ /ASCII85Decode /FlateDecode ] /Length 386 ->> -stream -GasbV5>T0N&B4BkMAlr%No/NpSJ=Gf/k@$#\j66o6Acu`rlrZ1DO=LDnSPV4keli1gMi>`7.ZkD?4[\MMM/hp-SWWri(cXe_QXaZ!KEQ#^2^O+e-5/]O+bXg&(.-,0a_/c(jY'4/endstream -endobj -25 0 obj -<< -/Filter [ /ASCII85Decode /FlateDecode ] /Length 845 ->> -stream -Gb!l`bHB;J&;Kq-$82p_#1(iF(("#X.V79R#UH2ui;FINF47*D7iY$pPZ4V$[;!YSf9nk<'*uuDkhj-[6MSo]pR`Q.L@/7GDE)a1_oM37o)Rf(P;ZPY3$b4f0WCUULLYi/fCsndJ2o#]S4eC&)eh+_(Yr/NO72FK/j4/)nXn*_BT:l%mRQKtL?%qEf)NiMB+13O&B#GR5E"1?!Z,p65oIg*Vs?!uL-X)ITXc5m/7g)n0_I+oiX4.5BYm4lSB0>>Sdg_?0WZM=J^cATJ!;peNdO;eL>2DMIGb``$F,+u>jU5L/89A1$V6^;f\R7l$Y[]_`l^=NAb[B^"XURBAkL,08.I2mjM4Z="BZA?5n,AR#8ZP+PT^ko!97Y58+`6*'GLdQ9RG'dR?D+u8O[62X%QQbncNDSjE!7l:dD;[S!4jIWNP[Qa7H1h%U8Ruk\*&<((qd&=ASLSaZ]=*].]S0g3b)?Z`Z)7K2RUXNYptendstream -endobj -26 0 obj -<< -/Filter [ /ASCII85Decode /FlateDecode ] /Length 407 ->> -stream -Gau`O4\s!M%,Le244moT(QJ.Lh@WiIJil?O)g4.5AJ$Q#/GIqN;G;\,FSd^`SIh`A:P4DAW@`MqKiUj+ek:[!Wa-X?^LBK"ZTlj"35='Jl:a7E,W`5PQ!Z,>7.qp;H:C9~>endstream -endobj -27 0 obj -<< -/Filter [ /ASCII85Decode /FlateDecode ] /Length 649 ->> -stream -Gb!#ZbH;L5%,LY.]]:64nLM^t6+:[_E1$lfmZ9\#'F>PZ5l<\k1Xf5/"6m1XDBjA&Z=BLHgSpSb((];@G=9c'>&Td1W..+@#$2^C87R$S[Cu:Ao\iC8dbBs#LVbi`FGuQr\9!k^>hMU5?rg\HPJe55kJB-\,Y0[,*4j%EGUWa)DX-&:s$^4uri*,@GI1D&>/>)hnf'La,@g7V:J1a>cn)<"udOH[_$"+;#KRM4WFLNBnJEM-kdL+1[][^n#oRd1A,)("a'>9;=)9-bj5P.R5FAe>V-mZbKZ6q*-afbu3#>C%0UiML&6=+Mte'77%JDO;MiF]M+YN^nQK=A44Tl2shJ[oS0(s%?+C^Br]MYH!HLE6UdB&rG'o86^D)F=%e*d[iqN0JA`9;j7*OU,Wu9.k/WBqoW2,VF%D,uJ.ta[R(41Gic[etZJ9!QE_u5':Ifi1fRb>#T=Gk=E12Dn*mW;73D@?,c!sf\B\YX2n0?WnQ>BNpO(`'bV@2XI&WleocL7nfc?L+.P9"M0bKBdAPm""'X%rgqM1k.CeOt>j8?]l0V"A"T+'#]E#tQPJ8c~>endstream -endobj -28 0 obj -<< -/Filter [ /ASCII85Decode /FlateDecode ] /Length 912 ->> -stream -Gb!;c9omaW&A@g>p]uds4ZAI&m>Q>@S*l^RZ0?09WE%E^1U$]#f*r0FA$@Bb;A3'3k89kI@49R2(+%GuN4>Tu@oC-b)`XiF@jNE:D]\@TM-md/[aki<2/CieM-VJ/kLp"Uuq0n.Y(cjV#q%]F#R^T^e7a-1N2+i)qn&f4RLq]O\e:9WMQ.m?9hI+p3K*NCDi-S:d?4e7:G04q&NDA);d]6h=`&`4HrZ0]A^#BRdRFJ+fbH_#qB?=_>`9^#(T0onEH&p$R2P#-:>`I]IW)jqM&pW^WG%`)$>2rq>jfP$eu''27EK37>t<\lN;Z(=i$\-mPgATPH@+Lu8jDQ)M:sq6BM9Bq"fI-4S>9tR9106YUfC87@"_n;JD5J3W/1,VdEkLQ\X3?^Crlac()-`9JiM/_#@7KFPZODPil]+MNIpAS@Cp>lth`cGS$Mjendstream -endobj -29 0 obj -<< -/Filter [ /ASCII85Decode /FlateDecode ] /Length 286 ->> -stream -Gau1(4&86f&;>I[`@63\m*+6&R+n(.NK$P=Z(6`@(pAcSrd>%F\umBG64T%r3.(^YU@Mt>(Z;#rF2_NQHNIt`Zl<8YoTj`-=\JHd=Ad>K8M.2#C`<$E/k#g`6CH2d8=[s34sIZFSilpP3CS9a46sts;:k-`I^C1LP>.$K8)Tl^dD^e2(OT4BfcFM7nE4$\s&OqB*0SY_dZB/TW,@=,B0O3.)6NO$Z=3o!g6Sf*'X+'c<&I.:ggr7r>pmaKO7YJ(Ks3hUVtBKemc22ce%S!">=bBCCih3~>endstream -endobj -xref -0 30 -0000000000 65535 f -0000000073 00000 n -0000000130 00000 n -0000000237 00000 n -0000071517 00000 n -0000071790 00000 n -0000071995 00000 n -0000072263 00000 n -0000072468 00000 n -0000072673 00000 n -0000072878 00000 n -0000073084 00000 n -0000073290 00000 n -0000074488 00000 n -0000090520 00000 n -0000090727 00000 n -0000091878 00000 n -0000092864 00000 n -0000103718 00000 n -0000103942 00000 n -0000104883 00000 n -0000104953 00000 n -0000105237 00000 n -0000105335 00000 n -0000105492 00000 n -0000105969 00000 n -0000106905 00000 n -0000107403 00000 n -0000108143 00000 n -0000109146 00000 n -trailer -<< -/ID -[<736329c9188831a5623949b0c8ff409e><736329c9188831a5623949b0c8ff409e>] -% ReportLab generated PDF document -- digest (http://www.reportlab.com) - -/Info 21 0 R -/Root 20 0 R -/Size 30 ->> -startxref -109523 -%%EOF diff --git a/routes.py b/routes.py index 52f721b..a12f90e 100644 --- a/routes.py +++ b/routes.py @@ -1,26 +1,39 @@ -from flask import Blueprint, request, make_response, send_file +import json +import os + +from flask import Blueprint, request, make_response, send_file, Response from apps.Report.PdfReport import ReportGenerator from apps.Report.ReportModel import ReportModel from apps.Report.path_tool import get_gen_report_path +from db.tfse import upload_pdf, download_pdf report_route = Blueprint('result', __name__) @report_route.route('/gen_pdf', methods=['POST']) def gen_pdf(): + with open("static/test_data/report_template.json", "r", encoding="utf-8") as f: + data = json.load(f) req = request.json name = req['企业名称'] - text_model = ReportModel(req).report_vlaues() - + text_model = ReportModel(req_json=req, tep_json=data).report_vlaues() + # 生成报告保存到static临时文件夹 pdf_report = ReportGenerator(name=name, text_model=text_model) pdf_report.gen_report() - file_path = get_gen_report_path(name=name) - res = make_response(send_file(file_path, as_attachment=True)) - res.headers["Content-Disposition"] = "attachment; filename={}".format('{}.pdf'.format(name).encode().decode('latin-1')) + # 将报告pdf保存到数据库并删掉本地报告 + file_id = upload_pdf(name) + if file_id: + file_path = get_gen_report_path(name=name) + os.remove(file_path) + file = download_pdf(file_id) + response = Response(file, content_type='application/pdf') + + return response + + - return res diff --git a/setting.py b/setting.py index f8a0422..ef5ad7e 100644 --- a/setting.py +++ b/setting.py @@ -1,3 +1,3 @@ # 应用配置 -APP_NAME = '' +APP_NAME = 'tfse_rating' APP_PORT = '' diff --git a/static/report/template.py b/static/test_data/report_template.json similarity index 92% rename from static/report/template.py rename to static/test_data/report_template.json index b3c3e5c..2758518 100644 --- a/static/report/template.py +++ b/static/test_data/report_template.json @@ -1,4 +1,4 @@ -template_report = { +{ "企业名称": "{company}", "生成日期": "{rank_date}", "报告内容": [ @@ -19,7 +19,7 @@ template_report = { "小节内容": [ {"段落": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"} ] - }, + } ] }, { @@ -82,7 +82,7 @@ template_report = { "小节内容": [ {"段落": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"} ] - }, + } ] }, { @@ -115,24 +115,24 @@ template_report = { "小节": "附录1 评级符号说明", "小节内容": [ {"表格": [ - ['符号示例', '解释示例'] - ]}, + ["符号示例", "解释示例"] + ]} ] }, { "小节": "附录2 主要财务指标", "小节内容": [ {"表格": [ - ['指标/报告期', '2021/09/30', '2020/12/31', '2019/12/31', '2018/12/31'] - ]}, + ["指标/报告期", "2021/09/30", "2020/12/31", "2019/12/31", "2018/12/31"] + ]} ] }, { "小节": "附录3 计算公式", "小节内容": [ {"表格": [ - ['指标', '公式'] - ]}, + ["指标", "公式"] + ]} ] } ]