From 42b0cf4ff813f4e0e3e945879ede1823628d8125 Mon Sep 17 00:00:00 2001 From: "1362134550@qq.com" <1362134550@qq.com> Date: Fri, 24 Oct 2025 19:42:46 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=96=87=E4=BB=B6=E4=B8=8A=E4=BC=A0?= =?UTF-8?q?=E4=B8=8B=E8=BD=BD=E4=BC=98=E5=8C=96=20=E8=A1=A5=E5=85=85readme?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- FileUploadAndDownloadSlow/README.md | 39 ++++++++ .../main/ets/entryability/EntryAbility.ets | 2 +- .../entry/src/main/ets/pages/Index.ets | 23 ----- .../src/main/ets/pages/ZipUploadPage.ets | 94 ++++++++++++++---- .../resources/base/profile/main_pages.json | 2 +- .../screenshot/index.png | Bin 0 -> 68729 bytes 6 files changed, 113 insertions(+), 47 deletions(-) create mode 100644 FileUploadAndDownloadSlow/README.md delete mode 100644 FileUploadAndDownloadSlow/entry/src/main/ets/pages/Index.ets create mode 100644 FileUploadAndDownloadSlow/screenshot/index.png diff --git a/FileUploadAndDownloadSlow/README.md b/FileUploadAndDownloadSlow/README.md new file mode 100644 index 00000000..faee250b --- /dev/null +++ b/FileUploadAndDownloadSlow/README.md @@ -0,0 +1,39 @@ +# 文件上传下载优化 + +## 项目简介 + +本示例是文件上传下载优化最佳实践中的代码示例片段。 + +## 效果预览 + + +## 使用说明 + +1. 本示例为最佳实践示例代码,开发者可以查阅官网最佳实践下文件上传下载优化最佳实践学习。 +2. 点击页面底部按钮Click me,查看日志打印压缩后的文件目录 + +## 工程目录 +``` +ets +├──entryability +│ └──EntryAbility.ets // 程序入口类 +├──entrybackupability +│ └──EntryBackupAbility.ets // 备份能力 +├──pages +│ └──ZipUploadPage.ets // 数据压缩页面 +└── resources // 资源目录内容不展开 +``` + +### 相关权限 + +不涉及。 + +### 约束与限制 + +1. 本示例仅支持标准系统上运行,支持设备:华为手机。 + +2. HarmonyOS系统:HarmonyOS 5.0.5 Release及以上。 + +3. DevEco Studio版本:DevEco Studio 5.0.5 Release及以上。 + +4. HarmonyOS SDK版本:HarmonyOS 5.0.5 Release SDK及以上。 \ No newline at end of file diff --git a/FileUploadAndDownloadSlow/entry/src/main/ets/entryability/EntryAbility.ets b/FileUploadAndDownloadSlow/entry/src/main/ets/entryability/EntryAbility.ets index 59f6b0bb..e4da2f1d 100644 --- a/FileUploadAndDownloadSlow/entry/src/main/ets/entryability/EntryAbility.ets +++ b/FileUploadAndDownloadSlow/entry/src/main/ets/entryability/EntryAbility.ets @@ -24,7 +24,7 @@ export default class EntryAbility extends UIAbility { // Main window is created, set main page for this ability hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onWindowStageCreate'); - windowStage.loadContent('pages/Index', (err) => { + windowStage.loadContent('pages/ZipUploadPage', (err) => { if (err.code) { hilog.error(DOMAIN, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err)); return; diff --git a/FileUploadAndDownloadSlow/entry/src/main/ets/pages/Index.ets b/FileUploadAndDownloadSlow/entry/src/main/ets/pages/Index.ets deleted file mode 100644 index 8e2d24ad..00000000 --- a/FileUploadAndDownloadSlow/entry/src/main/ets/pages/Index.ets +++ /dev/null @@ -1,23 +0,0 @@ -@Entry -@Component -struct Index { - @State message: string = 'Hello World'; - - build() { - RelativeContainer() { - Text(this.message) - .id('HelloWorld') - .fontSize($r('app.float.page_text_font_size')) - .fontWeight(FontWeight.Bold) - .alignRules({ - center: { anchor: '__container__', align: VerticalAlign.Center }, - middle: { anchor: '__container__', align: HorizontalAlign.Center } - }) - .onClick(() => { - this.message = 'Welcome'; - }) - } - .height('100%') - .width('100%') - } -} \ No newline at end of file diff --git a/FileUploadAndDownloadSlow/entry/src/main/ets/pages/ZipUploadPage.ets b/FileUploadAndDownloadSlow/entry/src/main/ets/pages/ZipUploadPage.ets index 29f0002b..a36cf6e7 100644 --- a/FileUploadAndDownloadSlow/entry/src/main/ets/pages/ZipUploadPage.ets +++ b/FileUploadAndDownloadSlow/entry/src/main/ets/pages/ZipUploadPage.ets @@ -1,7 +1,9 @@ // [Start import_zlib] import { common } from '@kit.AbilityKit'; import { fileIo } from '@kit.CoreFileKit'; -import { zlib } from '@kit.BasicServicesKit'; +import { BusinessError, zlib } from '@kit.BasicServicesKit'; +import { hilog } from '@kit.PerformanceAnalysisKit'; + // [End import_zlib] // [Start zip_upload] @@ -14,38 +16,86 @@ class ZipUpload { } // [End zip_upload] +@Entry @Component struct ZipUploadPage { private context: common.UIAbilityContext | undefined = undefined; private waitList: Array = []; + private filePath: string = ''; // [Start zip_upload_page] // Data compression processing async zipUploadFiles(fileUris: Array): Promise { - this.context = this.getUIContext().getHostContext() as common.UIAbilityContext; - let cacheDir = this.context.cacheDir; - let tempDir = fileIo.mkdtempSync(`${cacheDir}/XXXXXX`); - // Put the uri obtained from the library picture into fileUris and copy it to the temporary folder. - for (let i = 0; i < fileUris.length; i++) { - let fileName = fileUris[i].split('/').pop(); - let resourceFile: fileIo.File = fileIo.openSync(fileUris[i], fileIo.OpenMode.READ_ONLY); - fileIo.copyFileSync(resourceFile.fd, `${tempDir}/${fileName}`, 0); - fileIo.closeSync(resourceFile); + try { + this.context = this.getUIContext().getHostContext() as common.UIAbilityContext; + let cacheDir = this.context.cacheDir; + let tempDir = fileIo.mkdtempSync(`${cacheDir}/XXXXXX`); + // Put the uri obtained from the library picture into fileUris and copy it to the temporary folder. + for (let i = 0; i < fileUris.length; i++) { + let fileName = fileUris[i].split('/').pop(); + let resourceFile: fileIo.File = fileIo.openSync(fileUris[i], fileIo.OpenMode.READ_ONLY); + fileIo.copyFileSync(resourceFile.fd, `${tempDir}/${fileName}`, 0); + fileIo.closeSync(resourceFile); + } + // File compression, package the previously generated temporary folder into test.zip + let options: zlib.Options = { + level: zlib.CompressLevel.COMPRESS_LEVEL_DEFAULT_COMPRESSION, + memLevel: zlib.MemLevel.MEM_LEVEL_DEFAULT, + strategy: zlib.CompressStrategy.COMPRESS_STRATEGY_DEFAULT_STRATEGY + }; + let data = await zlib.compressFile(tempDir, `${cacheDir}/test.zip`, options); + // Delete temporary folders + fileIo.rmdirSync(tempDir); + // Put the generated zip package into the transmission queue. + this.waitList.push(`${cacheDir}/test.zip`); + } catch (err) { + let error = err as BusinessError; + hilog.error(0x0000, 'FileUploadAndDownloadSlow', `zipUploadFiles error ${error.code} ${error.message}`); } - // File compression, package the previously generated temporary folder into test.zip - let options: zlib.Options = { - level: zlib.CompressLevel.COMPRESS_LEVEL_DEFAULT_COMPRESSION, - memLevel: zlib.MemLevel.MEM_LEVEL_DEFAULT, - strategy: zlib.CompressStrategy.COMPRESS_STRATEGY_DEFAULT_STRATEGY - }; - let data = await zlib.compressFile(tempDir, `${cacheDir}/test.zip`, options); - // Delete temporary folders - fileIo.rmdirSync(tempDir); - // Put the generated zip package into the transmission queue. - this.waitList.push(`${cacheDir}/test.zip`); } // [End zip_upload_page] - build() { + async createSandboxFile() { + const context = this.getUIContext().getHostContext() as common.UIAbilityContext; + const dirPath = context.filesDir + '/myFiles'; + this.filePath = dirPath + '/data.txt'; + + try { + await fileIo.access(dirPath); + } catch { + await fileIo.mkdir(dirPath); + } + try { + const file = await fileIo.open(this.filePath, fileIo.OpenMode.CREATE | fileIo.OpenMode.READ_WRITE); + await fileIo.write(file.fd, 'Sandbox file content'); + await fileIo.close(file.fd); + } catch (err) { + let error = err as BusinessError; + hilog.error(0x0000, 'FileUploadAndDownloadSlow', `zipUploadFiles error ${error.code} ${error.message}`); + } + } + + aboutToAppear(): void { + this.createSandboxFile(); + } + + build() { + Column() { + Button('Click me') + .width('100%') + .onClick(async () => { + if (this.filePath !== '') { + await this.zipUploadFiles([this.filePath]); + } + hilog.info(0x0000, 'FileUploadAndDownloadSlow', `${JSON.stringify(this.waitList)}`) + }) + } + .justifyContent(FlexAlign.End) + .width('100%') + .height('100%') + .padding({ + left: 16, + right: 16 + }) } } \ No newline at end of file diff --git a/FileUploadAndDownloadSlow/entry/src/main/resources/base/profile/main_pages.json b/FileUploadAndDownloadSlow/entry/src/main/resources/base/profile/main_pages.json index 1898d94f..7d89202c 100644 --- a/FileUploadAndDownloadSlow/entry/src/main/resources/base/profile/main_pages.json +++ b/FileUploadAndDownloadSlow/entry/src/main/resources/base/profile/main_pages.json @@ -1,5 +1,5 @@ { "src": [ - "pages/Index" + "pages/ZipUploadPage" ] } diff --git a/FileUploadAndDownloadSlow/screenshot/index.png b/FileUploadAndDownloadSlow/screenshot/index.png new file mode 100644 index 0000000000000000000000000000000000000000..3ba485ea3b4cced28baf58887cbdced6e74a2382 GIT binary patch literal 68729 zcmW(+2RxMjA3qe8O&OV$D6%5XPAaLSr0ks$G7@(-$x0|HBcYU;m7Q_+RrXJ^-JLTk z>(1fsxbgo!|6aZ7^->Spg{dteilXUx*G53+53<}erw0R}t3dWao- zC`mJ3YpSK@OUe|Fusrlf5z$Jm#XX8~5ojem0 zeGMtedJT5i>EekrmXJf|50xBvl~8ggHKkPi*tq?PzJm6 z#kcNRlG_f?jayP$N&jXy{*~PwA0MwDn(nrFny>tM!hYvl&;_nE+qU+hUquNC9BCC6 z92%wnO0>k@%7`AYJKO)|WHk%yw3-6T?eWXG{g>5anz^E-@5IH%USfd_iA%${qR%*0 z;#smpFMp!zjS{#y*j`@4!Fy*|_*e#D{0FfGu-v$rZcJ6Sp)~c8)5Uao>@?cq4xH3T z%-^4p7oZrkz+_=Zd0t+2T2{t{cEzf|RbVT;Fw>*^yX)w-nN2lVC0;d$O(0IYBQ9Tc zKL0uEkvbbu3qj^uX@{HW0N2BulgVV3nAo`d36|TQ3;7RLj-Utgzbpj7;0m<0B$PeU zcY$;SR>rz=z5`||@WA>v3S@~9$}`BNqP{;Y)0Wv zyMpMe2Zb0)y-cnoS^u~R!7fV%`8kc6=qPqRQAQ>3TKa(@HwlAewT=M;VR!b?PlPf8 zxsB4q@VL$7^fqWDUSLfi6fdJ*pp0V^%W~ANA?^M27zenxEV^sY-R2jcY?LDVwD6wv z;!$e-eopr)Q+s#VkM|?)!dRr~O4S{BiH!eSDms(7r>>iZa}%6@B14NLky|Kqg0Us7 zy_304MX_8FV!j5qKj$h;QO<^2@uLcHe+$&F%T{u=D_QltolW#z~ zHg=F2x6TsvS8$e5<9n`D?bKlA$hRNeH0$h0&uQ^^y&nWgcXx7D(= zO1$>t#O5#2#c~WSoQJm1zQ5b;KOVk(&{~1*a)JE!^O;fx3_}>ZNBreuWzXGf<6^vy znWPucE!V1QZ&$GpqN3SjJFvMYOwE~B`4}(n{bK4;rTmGXx`J|}FTz&r;O@FHf5VN= zT$YD>=>O4Lam_j-!+vQcikJ1GMOP4QDH@fUC>F+ups)y0X`!%#$^9y z|8$k9w85P^z5?3nAji;KQj}%IeKnfB4I|vENw>Wio*9Q?i@H=uY*vkZcG10(p7&Bq zN}W#f8@c={@uP+OlH4U?(1=&Vh)+GXD?^E3P;hZ;Wn=(*p5qSF&dpkg!7dZE$F64^rqpsrg*o{2D8m;j82(bgB|s{T&V^CQFK5Xv}8 zgxM&R&l_VVGl0!sAxzrC0}$B;ojw}xJlz!4#Y}f@a7pT<#FXd{*sL$G9PDKmM z$4}!OVn8x?KhG-|ooA201kw{KF|o`K4DA;PAu`|6o7goG*KGbcS&x_SJ?#XJ z8{W>HM436sU}+dze98R~opgl@rg|#lDKCuiG^xYI`~Ss%+fK83sRE6Gf9Ld1;Smr4~l)N<}4C zy8i0gT18|0!n@DpSsnG0s`6MS#ZZd=edSy1?Ml21PrZhYIGV;EwMh&rI2rQ$Xsy;! z2SF8s`{^7FyAN~IZibwbr``1Ah^Ji;Z^xU-b_a^jui;6@9OVM)3@zw%>-`>e2W9uS z$0Hq8&j{BxQmht!_(^WNI4Ro6<$hd3{X))Vh4cxUaLQHbUtBTsVbJQ#4$M@gP~829 zRMsxceWX4~@Gr81@9n3EOVR?YZM9wAa*SKFQ$M;6KVK$esJq9dlC9yy?`FD+1_9Aj z!P{!xsqb}aZkHdsMT-HQ`%crB>y*!W2Abwv7!h*w*7Wda)Ii*d3gf+7woy*}=s|wC zLS8Pl;9b5r^=2pL2Hd1SZFRcv**aP0tgdAP#ZP+HL${`pu=k={kQ!LUSp0n?t>55a z{JDM_x$B2Z;nd}~Zl3C5CF5Qt6RRbf$4fM66C@HT>;3y)+N|CE@`=r#U)LI_&CSdw zLlF_=ymbT06^VQ>_Wirc)%XO}^SVzz zd^o|y%kAvs1Y=`kJM;PB{+DsC>_AU9(VP_auLCCnMRNw-k)!V4zYd_Jact(xxl$T+ zyV*sY-4Votf7BY!MP&@IUA<{^N%km{Pu;HgR6!Z#3yjs|=%Fd@XqDG1W=CkrTJ5UV zXsK^nM(Hx(x&q@bU$vy}dvV+{_#&=$Jh6`Xhtm?VJnW*A&_i>*?z$^Ef7BkA)+AAF zhyG#4b&fc2k`dFV$-pCn7dk`mGpz5mh;zbWWDDNC);<9+@Sph3}ht}YXk0qx89+pTd< z^ZK{aWpD?Kow9rDzUp<21^hRax_UCl!>RWb`>RU9>-+}WK9S$e(|bJJRpB4$ed3rB zx=EIl%Y`~eKh>ERQ`y&W56;r2U7Wrj$@UDdO*OD&Ans6Fk{a*5@;~_p)V|;hk|7x7 z(Yx6~(ELc;6kSJ+A?0xkKc4q~z#tp=ub#^7Z2m$&e%LyQ=y71-HOKVCLxZx^iDP_@ z3GX`_Mtz>NzQwN=SX|es6pM9f^}fT@Jz9&Uw4Zdo+{uOW9>kRMMWPssH)lHa87UXsk2HES710yPMWv{acXOdx;A@G$m@c5uGX`-xZ^@X%QegnmVu!`=V13>+uBiz zVa0vs%GF1^@u+ZgSkwXO?mPcVII)@Sj4ieJc;oy#N^hdt?9LiIae3_G|K!2Z!oork zG0|SiqzI_HJEay|ni*FMW3s122L^^*oFiE{>yLw-{F>za_+?~$RRk#?@Q{2xb#!)Qq~Z>3g^g&zsh2K-98FM5a56z0=9FH0{=IWrJK zW_=_2M2$o0uV|Zh`OHkFtKO@d+>t18@$nHC6f07Nt7kEJwlZ=ES*MGziPoiyg=WMW zVWtv&RrvwlGyfCs{jzIgb@cPBBR+0fRfCOYUR{TB44srna&ow5b7_3_jL#*r@M5taLX?Usd$DOBhDoqE^YXU+q=?`(77$uX@F*F`bM=qp6Nb=*Yo zNV1=kzQm!SJ!5C!*l-Qjg7ylkKDc%0) z^?9%Q)hPcLF)8%+-cFW?V*;39GG$rW?|a+n`_;<1qJzWAPR`COwFx}Vj1ev&cMqJ6 z;wL^X9xkUR$OEpft`H9W`E!V!g9G5uor=9UACq)S+%a>m=j*lWm1h=rj(k01*QlfS zr~MZ3>pn>`Budh_3a^aVmuytz@mSJSwSBTxL-DZvXOgibbyq}nMCR}Jb4jUJ8GfBh zMnpYkLs*+;0eU5&Ikn_T?u*7vjF42}zUub3w2jr>ud`v3=ID*~b=fZN+w3mC)C+p4MH9=0yruu(TN?A zE_)*%pAfI2uaR0>T3RhA*WGE9P|fTxT$`^&%cXGee!Np2HH@u%G;~2fcuOWeiZ@|*!`L;FW!zj;5Rad%3pl0WJDK?7$6>BC%87L3uEJ}C zcJ5K5Wtz-AWdOMCola`BYwz~=jobB^_ zqh1;T*bbK2u+0d{X3J(*>RijnQ|BjM0vTgtA`(()3I+Z>9)XYT0as-&K_B%!BH|dLM7CW@g4<~Nky6F@lBCi<; zK9Ll-LZT4|uM4?heG=s=C!e#>BY3Oh2d}=Un8wXQyV8OwpO5#;muA>(D&At46J9|N zW_t_T?0(zNDj8nBY+SVglMtpJ!{G5d>c1Kj$BKx1#8q`u&?D0`DH#XqZMa*4H+mj5 zVp3Z++Bg*XZ$6q&EHxEV)z*mr5wxmOq(VIa41I(ddtR7q|gj&r$X=5+myaYNpU3=rDSDg!K5dnu(0Ljm1^&O9v{@I z?=K$7E>$s2T-{x>-agZJFN+@LIU_u#RQ-k3Ha4P?V{|HyDprQt$@{An2=Z4{I7}f` z%TsrBUBnYNiNsLiDR;bT0eYryKsPc^#w71^qmAO)Yzj%lW18XwIo_CnUDtkfd771h=?D*R6f3C+i}G3 z8zp3*$(7(BPf~K9>#eQbX!hfIC&({hA9~QA|A*S&tQcXzW{2*-s)-1X1y!W-4nN93 zM<-clvxyBc7se}JSP0)(%&3mUv%g4v;e_-&R9joyt<`n6zRJ%rR9BajA->0=sZSVLA z3kj(h7^G3D)YRs!jkrg>7kO#n?S!Pn$h;tqWf4z&YjC~IphD37@_QEYZ*L|A8O20bM`jT*K$!04x3fjGXY9Y2e=9-Aw2|59|is2XEVP zY@zcMp%6>gt!7*Xg40qcfX){G&EU?makCv9JN0 zi|VjuyWP`G2|&9o^aohVukT6Eb+4*MqnmeK8kA2$Fxea^ciku!PS35a`J1IEA})TZ zq9IyBC)kC&VgEh%LvE3yyc=?Kzp_1a|A?L(BjC%g7zdJZ)b>cIE5mi?Drwui^jT@C ziO+P?VLk|G8)?{tCi2^v8eboAqi!RKDZc=COV&f-1hj3%+hHuPL>FLUbp2MF^=nV- z*+wkxX{x9c;PLpBpw-_O5)u;L85tQ(VX*}O)8AhIoX*3=^#DlC9rM!H^*RWC@ag#Y zy*1uV`)G_cH#c7|9DNzumM5Y8q@=#O+6hd-zXJm|A7a`gma?<6>l~_d)Na6D`)5&P zPo8;mT|`o{?@x*Hgr17Z$g5YvE8mkjao_sQhldAU+wXV(PRL8WE4h0c{NRuGtDHCI z+a}w>G;=D1uA6MV_cEtekXx4&8^27FY6Un#=4|I5`zn@4Ja+yN=~MdJr8}M*fKs&V zVW>|wqjtpLO<}xO(S6#>YTs5$Ti6h9-N3^JP)%G~bN3kaQEC~iyr-18`cC7~W4ZkB zEn1RX-k)1~JHP%bEzXl48yl+tkK+xxukU(yclVOI>6LrQ^)cTJ5)=RYanjSr=4OPp zZGf5d3taKx+FVOx{iB(N|DxyBc)AeFuyK9D^6wFJ* zN!LpEauKK{MFXoOxg`%Ci>j7A#g(Dq34QzWaScm(x0|M>E}@}pxuOkpvV9W~gNomy z>0V!YjJ~e~ljv*-8wFgnKcR1RXV3iD*en){oqbsR{`cOJBV#Gf*kEt;P3@32r)`7J z*)$-+ec8SV7|8MS)6;M>|5$v7^Yj7{n25&xWlhx79{A&LJ2AzNi$;!OB1*@-6h%kI z)CUu$T<=SI86~#JIUE${Q{FV~0aG zr5HHgsNYgs9!Gpoj;XV#rvxDw}fq{Wmi7ARtCk6N~YFxN*VSf^>-$1M@)>CZ3KIJS!OCan{n~wb( z-XnpI9KK*{WtBz$YZjG5??=)4yH@nc&0C0e(tEFp`(hWB-L$|! zl821R^S^)38u(Nmjtm_m6Y+i#!h`N?DP1S)njW_{IaR>X;JijW)wj;+IdDYZD<6+D z*86vdq>Sw3v=Med;zo*0-<1(a;+HR9Ccg`;4DMHKJQuz4_n$; zO*&LIE)V!H>0E2my^5w4-M2m!ulvtfmLtEP8t#3_8zmxOS{+9A1x3VJA1V>c#)dJm zMegOd(bsjP{@|l7ve52Tg^r&o>SH*&yYCX^p8~d}s;9@z-)ZJclk{!=%K?~FR(`&5 zo5L{Y*B;pX`v~+vix@URy;a8u#JEr_TbnB6_Uh>ua^I z%3M||-$UJgd{CCXoXs)o_4da`(Cxe>dVlE-UXR?^ zPUwt+-}W!1c6hl%K$4$7Tpa4^ll;Sr);LNyHS#cLAytYYVnCla{eG^yr{{sbjlH*e zWKjOMa;ZPA?HEzYl3xT#VR>a`9(B9i`LPSDn5OULASW1rYvU$zapOhU+FTmOeXQOGWF)=aJ%(gYR1PA8c1TSC&4-YV8T$_0&41`?{3Du7D=|>*2c=AKP z{bYrIn~dF+u6345%&C*19X1&H27V@v&QhJME>9xSN&@~iI#*XX2r>Zn)q3xMz+%uAin z5oG863WSrF*O8q|q*o$M$uZwr#H?CY!A zcWAhA&%1{ELUigk*}0^Ls)?F8rZ)jC4U2rN)_@69j=vgT6M(<^;>C-CaWB()8zl2a z)iziM9_@K6$p+&A;U5^#MI1w7e3qY3AFx%q=EVPg#?c-Q1Wsu2dU1 ztcMtmqM@UHIZ%IE`d&-_WYg5|nAjol@a@ST^3e(`Z#$%;;fWeAlRiE?tzPjg{>{k6 z9Old~_OB0kWCLMd3=P@pu8Z3Iqobc%j25r2ZiLhb$jZqX>r*;;Z-vwFQU-NUU&U1n zCcD@n9unMZvp1`!Tb%_rD2%jf1lgC1o7)B7mm(rk^6{@tnwW)MWR&C>|3Sh84O2c; zu6aCD)7JEhZ6nX!yLbJU{n2TWPq{Ph@{Ond&hK}_#7Q;m%%JEqEsPyUX8qnsg8mZ$ z)Wyzk!Zjf!gC9RBzLqgM%=26*T1WtPn*a6X+d_uc>NEwSQ?l!n6s(wgoC0Eb-t#!>wTSRfc3(T+H26Xh9H#a6#RFh^R zDUQIj2VA0KZ)f#`yr=u%1SbE(b~odJa>QT9x9knGE zyfKE*5MCLwpKL)W?{3T`#{zBV?k?-tDrE3&nd7*nL&#FQCW<<^nl3|awzrOqsvGIJ z$=&oQj193~>D+#T@5To{_`~{@y3KWy1+BCpY_wa<$j?RvCz`N`{d z0F}$fZPaDxwTVGP<>UWwRWz6c+}~+AWH@ZTOBhAz-T7>8^4xwD%!r>$kK3~zA(0}0 z-eu+H_JCYS!)G%3(M+SOKRz^f_hkZQ!2>a$)J)Y%?DlA2QkF5a9y$G25*wf3SL zepaYobPwy_0lVse&u@mW=rpb5g+XE-kc=M*3g3q77UtI|o9IT%rv7a3 z%%iM#@4CSwyrunD=BAk$8!Tr~HeKciCh+Y~$z*yBeu7B4U;f6=@8{QZe%aQ*Qt)!= zbv=qP$_xZ##L3rJDJq=Eu&of%@SA@DJRlmq-LiBPex$r?ve8efvTfHUoI%PTcD+U( zo>(P5;UH(xg~EJ#`W4M=3*`1M+R3pO80spApG34z^^J_b(Q&i-? z7JzmkEe|%WR<-~ULwGS*oWJD_({Ec-K9F!2s~piS)@RpGk5S8jJOeGQ7!U&N`=Z$7 z-V>x@R_bK?TnugO0V*+9GAPl2`fgw z_k>`q$V-{$*+p12X1gE;RnDWBQt;;fOGD}J(yS$-=4=Dz7mvy^dX<)MkIB2|@EFW% zBura2;0?_j(+1htZ9jiFd-5AIU8WOoM2S|?`^_HBb|UxMY_lMsp0Tl!JlmqfNOlME zw+S4iXA4K+3pflVZz;DsPcN)GVn28dgOUO&pX&8T1nHtMNF)Y;*?l-8Bcq?a7LX!r z8skrz|9btz$5GEkGAG4pEw?*Xa$7q5kC9Z@DM@0YZg#Spak9lR@@yb)BuO($kUWQw z$|JX~ID-!?A$RZ&!ha(&UpaDaHLT)3Cp7E918Zf?rw({Pmv!;?r(SR&F1i90h1@B3 zOhKUb=S0NBY`6A6FBwfZM(HVi`}1+mkuFvT7k&`(m7VMDW=KprSwa~Wu$!&j4{crL$(8>%g`$3ttdy0^gvjp%IT^tYaMNt{Gk?fKoXu1-QP7s%p#) z)) z;R*5aTR2;_eooJIP)9%rcG@H6;z~=;=05q)#0nKj|4Jr->+pgECG2+91dG$?{-aWh zt`yDr#AM}m5r7Kz=rH#?;k=Ak0}7kCE|O1k)}IZa?BeN7MCmyiW3K|Ur%2nYVruJe zf8fQ{S4FIUMW<}8PS^!W6<#{S&BMb(r(>9Hdg~9(W=K0#Q4tZXrZ19# z={1}%;dKGBs9MPDy=@3g@?A5%gYPtaJ7#Ck@knYvskGJHwu430&JH&`fJJo!OWO*_ z19=gZ3-yv9UYtZl8SrdO#*rjLg}iobhOrU`|8_zd$(7??NFaII$r77L^r3M2mRl@> zMxOSr>IM4e)c?;Hh&L^t*(Uzz;SLOS2(e(l87iE&TUWd^%Aupl1ZbL4!{#2N{nU?Bewal*1@lnB7v1|- z(Y88-5ngv{cjbi zCWh%UP3sLagw_>3UMcz?Vo=+Z**a$>!hGCL3%=ER)%AODRTDET; z3#W8T^(i*aJ_QJ-yR4el38K3AA3uJiI#bvU&IQN5@6V%E2Hd}N`N(wh~4nwzJ zO#)5d*|OOlc8+HPR2Q&GQa@}jBnH)v_xvr+i{E5Sq*XhQUG~V`6m+a~^;t=M3kLIuj zCa>CeFwH>G1~Ka=9Bcvl#loL{KY0=?Za^o^+mUbhXtqf;irBj5rre#NzkPy6K^yd$ zYR)}F8!(6x9&u3smt(7<=&SIR+(4+Vn!xT7ZzO@uF7)qbh%9VxtLFjjwc=q7@f_G9 z$^7Cz*B4Jfj4AslX4q^1S^_Gt=i`h1%h?_a(A*2&n9UxJS~B>SRP{=>{ic`NjgbM^ zjp!b(9O^e8+32K>9M(x)>019OK8uOM(d*cs_dI{YatlOvV;Z?&N0ScAbtL_^dh3Qn z>&(aKh3zhidZx=j)bH1?qZ@5xhk@bYl}=pIJKru0Z4iS^@e9X)O>Pzv67t8VXadJ^ z4)~8fKjiXXKy_61TxYXY5E>Ew`|FLaGYyYIs`Zv$-}MJLjjbEI)eZf}89$T+WO?aJ zMFBJ5gN3}}@o&nN))2LJ0GhZPj(Y;_O!_9iP>OyA>{cx= zFB5o~1YRV$1(PDhsGfUOE7H*tyIv@{b0&PvRjQjt(}hfujFJuhsnE96#`c{G2y`?a zP1ku=be>-`Wy?tiG*akVQN5)pRY&=cGp5P6+h9*PQ5U`z- z{pZ6WTu?SkKL8Pcd15L;+C-q0u~UTx1oZL&lk_J8!%|^uHOQZL^PZB1ba;#32iq_f zazV}xc)2RrMC$Vb<&`T-LHBzs2B@pOR`*{jdSN_g=V2$yXeFZNoEd zag80WKH9@7ZUZ~u)kQI_i+4Fs$Y)aXsS_~&y}!kHPDcuB``&of!rp2XdVBi``eZ54 zP&cfstb+fkMdcrtl0qxf|5L{G2%7akZ3RvFJ}|r!pc&>DI`+|{0~Aurw`E-;H+<^{a`BW@QcaEO+I*WB#J61Gv)2h6Kpnst6g;syL5~aY zrB$oj;Sf`vsI=Gf6LvLfp7o{NyP4WfU-x5!G1i6|T$=O9Q;dIAj3a;@QD#^46PRE& zJ}q0oFzFbGolq5>pj>GX^ls-(T_i~-l4zGY~TKT zLq9Q36nS1XAhKvOtck7fe8mK96xb5tWR?X6Z}sz?v(cwlsepAKzv zXjG_dTIe_^Y^O3#4_BgcJ(GJ38RwwRA-7peD?5spfTEec(_n!GuT8SRsGOVcH^b#1 zETBzS(U0fteDT0Ru2{g*8_R`fAc4FvVVA+Y1k^sUCM|-?`t1jsie;AYm0OszMdMzO z>!;e_hv9)u);$!=Bjv7OnY4Un2Je)xfxEjq0mzRdGmU;|4}*Q{aL|~&pjkazK@Ip0 z=lA5>Vato+PCUu_z#=^T_S2abZTbH$*50`^n1Wp!D}y`V6)h|j%o3OCsW5044ong1 zIlz;|yx_&T08{N<*dkv3Wu}^(vg!IN8<&1Vsk3<{k5jFCET8ej4vCASyhBmng&z$- zr%J$|{JE{qobCsZH)OyJ=i=cxX?nMHGh(y*o~3=95!f>TWX~*YdW?{0tjj8w>(2^i z1bugg2p$XvhSH}==;V#$`#%PyB3jv)t5J02|IfFsF4jIYnuLyo2N(u~GdZU3vh-J| zY0n=2#N3Z!Dl4^9Tyz&t@Pc#;4p46E1D!H&UvWPGQaxM!%4h&J&f#Fd>MWq&6`ieY z-MUT#2K;G#QuZ)*B658~`~G{!h@J6}bDs4!6b2cU7PisMAt)#a|NAN9t#)|LVxt4N z)+xum|1x(Y=&O$T&vkeKas#R|Ta%^OHxd_j@TSkyQ^mVulflDn@Qq2=nt;$#!Rynp zbML+9nLw^5H5kG%-Bs)1E>*O621>f;KoJj-Joi=L`bmFnUTLE#(NFqmwPp&q zq?KFvA}Qb4H)U{A&jCOS-#2yNE9hQTX)vrl@d!&9TqRV@*iJS}jBr)oKj^YVFqgmo z@$|>Y=SkOyda|<8AWh|n-nGC1CdApnkqH@ECmd4CT*AY39Tm27CR*8Hg#R+z)g8%f z6usYI``etjr1Af`G`AV4$zW_UB{LmD&o+PqkTanE08feR-D%b8n=X^wuo*n8Ob+$^ z))?N)Wpgh8j7eO%BVAq}Xcc_FBjfz>6!u6aIZCQHKT6_l_IB$I}CeS_1xe; zw6{CZ1iS-W;I)T-<-j2vkl6~Lyi&vW34s3vj9wA$93TK?=+O+D|6r%Y3qp-eJLFbI ze(OuOspzt02`vtGcJ1?Jal;gW=bIBa}O~+Oz%$$RLHLRI`Z=Q*=0dSxv`RQ%fspwF)KK61?68QGdHA`cBir za|K9ULyFw4&a8%%8uR!O?3ie@cSChZ-3$Cgrb^T--^P3pj6A28NQ$DW&xR5BHm2J- z#jdieO1tG&KRlqh`32X$tebntPAD&bfhx_v^FF&OE@B}`&IODL$hRPE(svy9i|%^l z2C%o&mXz_JNWT|TU=Zi&uf;8;Np#!ajzn58}kSk5{Z< zSP&kfK@ph@3=O$}5DJ(()EazXP*$8X3+~02~7(=-J=VfY~qr6pTr{ zN?W8J*wsmyp6wcQ3>ZK5t}3Lzr6CCO_an?fR4iOO{mC3Kn`QeZoM!;O)_F)tG7f=J z-#gk4oEjHkwx>nW@I?A%l!2oK3*`j^#4|kvf`9vF^@L;>L_dK^5fLdQ>Ud^2ia{a@ zM-hc7(-ZCSevzbi$Yr(ssel$xm9%9)hC2f;Man{BuPBG|GZvH?tdNo)3hB{eWPPKQ zs))D?BxDOjZ}I7exk_NZxf$%PSGX3bvKAk{)v_)v$s9T08pwn86YoQXBY2n??y%8o z+-{20EB>-^Jz+oM7?9bP{k)F+e4O%q=rgwh^<<8 zoUlV8)Vd(+rhx3@Ipk1aOa$35gPNEZP&(WTLEHkQW{+9g#Z0s=U!Vr0J}^KM+fjgw z;6Wq`2j=I?s@rK&yfTRhWuY*LIHUDYG9g`Jp8?ai#Awz8KX$!;_ zgZ%t_^r{0{8_;_^B*|uH#d8Bi0KXcybc~p!-4chM`<#8?i@kBi&PO@P7gXhJ82W$v~z7e6y7Vi7bc=5Bmv9tZ+)^M|U{t-J z6&DvO5r)|8dx)0c72cHy=FLazVL;>>vP%aU9d!gRNp5lw<4-$t`pFPvPOrR2NN%)} zZiRzV?hVY}pADB>fyO?-OyJ_ZQf3bU!|DZ~s6jLreA%{gBrzF^Um#`&+l=)7Q3n7#Xu%nxx&TsY&H8{e|`uUz%~ z`Gt25;HpZJZVJt79E~)L&P37NXg{lHM{FvDB7vO^ zMVtOZ&i?*{#DtMSE|3|bVxV&cn?~S~t@y82G)j*82aE4+`1&5pPX@G~70PvqgMN{M z%HcRpB4FBwAhVqXhMeq{48ELJm3jU1Q!9z>E>7hh08Cl=GRLAe7M`p_3JXJ@!?YP3 zbbH?YhxMZ4?$^wFKnL>f!$CPdg+@N*SFwH^G(?5%pYZ#l=)tYPDSjHr z1A@ESfS+fJJG2t|l~JuLL}-94K%}wy;h3yl*m}Lhz9MwguAt#DOa>W}edinxkpVs9 z1sR=Bk5cSSV* zT%dpYrGbfSWV6Lr`uNLr(@M>Y0<%xXOp(Acp9l!yY6pt~W{gEM!XIM;ZRXy!q-zc( zUf}4Fpah_8IlIR{PE&x-#KYeS3=ebQ)ophA(SQ4~!2VAcfdQ+hzdtqHHQ@iBiJbG} z$L9?m{!zMN(|YdhJAL3n`GaO#Cav}I_kRYx1G3`fAEv}_Ch1s+hCOPWi-(v9WDiGD zAzlJuN^+|3YKnN}<2i_njE;`B>W9=|uHF&9QfVPiDKywSb@S%Ub0Kr5pA5wL%{B#4 z4uVyPJVe{7eK*J%K?DYT7!?hT22V-d-`Ao>h;rEFs`WTjI zK6BrWNzt$z0b4)hx(EEH9~R@FNv+^Wy$+F2=vY#5I9&J;;}_U*1v)tvY!IC27gtX* zy%v5$a8x^|#HEhQ;sLwb`Db<6m)^%(39@qx9w=fQ8+}STHZ9$r`pr${*KM=kCjt*& zon^83@8!D3Uu7%fppS)jx&8x_`hr*eaVTP6?(V3m?zf%a5`xMBrfumaRk{()#7i+n zq?i;mY5gt~fe>0iga82@0qiv$uL576pP$<6cK+X=Ee3fDby!r22~Zmz4w9l?1NxW&4#nI@sR9pNZCF9U+3Pwgo`y59NU^8D}K2X@zv`w8>Lor~ZHZ0MyHM+*KO^?57T-3lW~} z4pqG1-@(3MYA>euQ`7x&=g`pOh2tzfm>Ra?_u)r?+n`$aNar6Xr&)(N3+*$ABVNmx zw3EX=-0#kN-{Rl*7XM1C@edE4ftuWrJ*U(U+A7_>)Z)0Y#~);e^CDE;U_B!Rf)Pl{ ztLp2gqV+Zc{(rtiB9V5`#)4~6E)RJU5?Th^w&USEvZiC-rlnS(2;{x^^p-~0t8(NFb)O!eq4_tMYo8(d_2B+ctWVWjAjD`~{Zb4~42SMbNn-iq$oz=}eGOh4AE{yB6egKBM!fFweZ7;j6$ z-Zib2YUgftsAd~yA9KR6iy3BpAm4Iw2ig;f7sDh%k)H}FLZPp(Z%cYoB77K*=c4_m zOc#Ix9*JEKU`-(hTqR@iX$Fy_BemIJ_V7VPm7%KNsQ6Mp|4`wdJ5JdHqZEtzEQfZEGLd=)n5QLG zFu^jvg-vI5qc8v7O)uYXe`RT)5RZX(haI-kGqC_`t^h>) zY;M@*fS$oHf?NMwQNC0=wQY_0;~Dv40~>^iAmbom1(ZYeqDg!<KXa1#A!GGFf?fV2^sW z2IN$b1K^0F2I>BNXx0msl!)&^^f1^sJL@?#E@h0$&sho5Y5ob7FIp8FQ{ zq1W*$!eC}0=v$SeZZL6mfnZJyp5ruIh)BBjM^Q-4pXJjt8KV8qyeC62jTcf0V!pE} zwurUPwJw&|H*Y^y{AF%f-b6n)`(C=+(~ad_@lWJ0qeg5^aoUFmqF8}MSu90sbXwsS zXCJxd|0sv!bj)&;T2sX0kl;kL}&FXivc_|jKG7`U3AZQ-sc)3FmO41lX zNZyQdk9VYxJN5z~M?$Gc2y4@8hwShwJVKdA9PCDea1R>mOL8m;{T*f?t>~D1b=ZW`&4gxxNOf{Q2LF%LM7F*B)dP5sJnb`+&uuo6bpP8_4B8F; zgx<6E&14e$UL8yF-v7x*ter^`)TMpm&#ehMK-!T#pUIMbqK3=Mts|5fkbLGR+u7@0 zx4l^vS!Aw!v`e`4L>-<^&Kqwgw8sfP}D# z87oCAxL1BJ>CF^ys)bBVHQzz2EjM4JE?-zOHokfrIH$LlYG9Q~=zB2a-y4qF%ei6x zU}3WG)G4cyaesd%i_dg5f5k|59fjZW-yjIK^lkweqe9L?>lPhRdT;Z#qw~@nY2bk9 zuc*qWZv)S0B@iuCv~G7jsDDQ6Jb#s=Uqs?&SmcY>=CAEJ+jG9ba=HWxdI_eNjhi{D zQG1DLV#P}L%d}^Q304O#?s=njz2C~1Cl?uqDF6J=(~17e!niwqV;%#N3V-LA8L)^p z2Gab9&#N_RFA;~zhw0`Ti4@1^f&+$De@l;e{tHXC5v`V&X1%*gjrku-*BwaZ_r@reF&PdNgx?zKZGifL^s@Kq!)8wj*-0bp$ksZ zm0p1?36Tm8aQW%wWotFNK`HiQ^ME`f!Z0(Jqu$4L2zJm#15g7CA;0y$T(afi0ia*y z2*0Z(RAhu(mmm1U2|{;ohz$CXU8#*IJ^8u)ggM!&h&qz+>04}cN3Pn-XK(5sTmemE zx6jjWH*y3u{I;>NDfB*?cD%uoaJ#*(Y3h>{<(vNcIRHLWOSQfTCtyMuNyv%E=zmbM z6roZQVE+#a8=FQZFX*4+j3Oq|D>q=sVeUQM^>=iL0`S)v5ZJ8mRDaMM zkLLv-M05qZ1R4th@S!Mc5#v95!=)YUM+EHxtQ>9L1(hMSKsjH zVPEu5--0-(D;zI|#KF;_(%oBnabH(SCk9DYXC~6|btvn`4S?u+>kHQcu1mJb&oxK;#ewDEa!cy#cY{>1Wk8fCET&sHysZ5Clb% zv(L^oNFaiglRir))(}WIVCD%Z>rMbL2T>>gI2c_cKuHPsYfyUuQsU0!=3y|GxrCN` zotZec(%qFjnv#A0aD$jgS2QJGD-f=fn;UxeW7FWU@p02ru%eA2BH$n~aj;oP{!TO> zu(5sxytA6i0)iaIP-?F39QEkd|x!G}Nj!EpCif$QVmYr=xaGW2p4-?qU4wCs2NIb9RpF$^vNf1|`{CfQG?5Zkl^u zC0!2(L#8KC8I>9#BYj6z@e7&JVL>0g2+D(*Ded3sh_W@i$O(m2{~iKJ-X(HL`*<^&Dabg_bF zL#ZR3g9HRwUwJh$-%;y<=J(fMXbrseh%B$dUs!o8v^M4PUjA)FOG6{_007opy}ifj z2T{IM1^pFYr8P47QJBp;uP!}G?!F}c@)1l|?c*0|AcRDhoMc%A(zL@q7rs^rW$WLr z5r#n46K9vXxVg_bfNLh6k)B>@14p>pTRd+nj?>R9oOZ?I765B90Da=FmtZ~@J|id+QD7j0Xl|DiSDU`;sDjxl;Po}-E}u*u+dn`Lwy z=e;YSbwOIIA5U$_m4q80zzr-1lblx+-G0dlgawl*Yb8%q^|QM?gk9t2R-pX^W|rA^ zzNofqLI#T!6!v!0`8tI+7lo&mQ&U_F*9i0Ep}02^#8#TVUs7z|5vr_%0_0#Th>eXk zlHl4&tm{d+RU#;@$289P*h{p8q?g!@Mh*!mBXBieF{Z!ZkXLICuyl!sstnke z3k1H}M45S-a9VhO1>Vifx1I&(&V{iaiX!a??=z=4d*A=Sectux@WA(9m>wbU}f^r{A20Q|rIRQp3i(4=ZV5D3nncb*ILD)zL~<^9Z>OQSQ4B zloS+2OYEN9+=V<`AW;uULBK$~o!Io#GlQ%L8`{#Kc9*s@P4(WTpFx9h#G7}%jg4JZ zW=9wn83nci~lT~M171t^M9+vNUU!6`|l`{9)>F#Q;;=Saz zmVzmA!S~hGYg?6!5)%?W6tj$G@cNNGlK#Vj`|Ex(xjuk$Aq$zsBqQxN|CXNkOY7n2;p{m*95m#;63CxwCrlHY$;Psbvz0SvV z4=#(9?2Y?ihI&17KaVhgVWBOiY*Nw>D5$e(k(>}etC7gE1ulYUQrZNJE*?GM+cs3$ zB;I-TQR1!y1@v9~z7IcECi@1v8O32<@0q&CeOu$A%(0Ur)ulWHV#5)~tpw0u8NZ&_ za8utoY4wzcBd;LaYtp5#(PKWRc4y)rRHVGX?)8{BI|uGHSNnR&TySu59UH0j5aP$K zPNkZrPYCgVPZjcTQ`ynYat3tOr3?NRXCJJqGf%Je@IFzrkp_kra!JLctfW+g{DJu=H0kUBTffovAX*c?rigsGb`p06yK$*<7x*`~>wF|vQrs;EbDQvZU^k~ZnOJfYg<$o2o z?$mpy7{2lyV&E)=-@r0f*SVDW$};X+&I~UjAxiNTT=+FGMT^wZiFosnWz-_uziLe; zP~D&!HeAO|!;k8x#wRb6R{p|M-Da_>jgGP~HN)=jjS?-8mD8Ay_0Z(p{T!=72+j%< zK>MVM8$TnPA%-Qs&A3dU3`jxnAL2p%uRHY}N?LSY*Bax#)0h>|7B@e8$Is11Z0?+A zwif{?vXi&N)Ql=E<`fq6=>J}t9-bwYPdyz!?H@`F*=9rKSB@`R=lwGI3v!%Lk-5jP z7Z&%`9}c>1?qs@lJn=CGv>@rEk*19QZ+3Z57-=y-K*wf1_2l5EA6SGs)!mBpW~W~B z;Kvlks1AKpYVkIK4}-A`Nc-$7*p$?1jt!9)FUOn24s}lj3V(lk zROn6g2oRWl!iCk>uW(BY?SV&sGx@EW1OekVi_4Rx&Cl{Tp|@*)b6gvm)Vu)$9@CrY z^pAfRhntS5&t9^pF+-e0Q15Exd2k_h&}AlVU>9FEDsu4tQmkNhAE}t;!ss(VI`;IP zDE^#1Sq5b6=6I?9huzx@=CApR3v>g2hs~F%$NMppOMd?Y%)?RM*S3RH<1LK}mFi_i|MUjS zUZQzVsb`aua1m*EfiCg=FE|FACN1l`hTsI`{ZCg5}R`7cU zJ%Vq(6XW00)PO>ysSG_g{dU~gI?=LDgzhOWPbmf3oS4HMC?gmr+r2cA) zXGjRcW>@U%Pu=%@vJ>`?NH(Hui)1CE8kdSMOJbL7sII`k0f5CS8fo2EPhNVn+1`fs z`gx~Y zW#-54p5tR0yr>&3hspUUl#x*pw}3(0$+sU003y$GNW_RKeqsCl>RIYydrUn37ej4~ z2M?LgnEVjXaN~?RZah~mhJsBqr6MAoUDZq?DLEIJ*xg@pJZJj^X(p=?xae>fI$vTe z@#a-EQbL0(D8YwbW32HFz)T(XJdS;ACW;5T#cM7jqd;1%7ICzA1t!Yi0o;OLm5~TA zgp<9n%rkc)a>^GE7wW{NKtp;YA&4{a0I&qVfYlVy>&rWRBYFhVUdDc=2S=-M(ubQP z7uJNm1-4|7A%|W(1|nJQ%7!;Aw6Ez`V#|h0e#s)QsG16mWhF}UI>b+n8f{(o zg2{Jjf(*ys|1h2V$|hJPl42|M8&XUb+vEs^qln+1KU8ICafa<)X4kI294KbP11Y^p zm)aIRb2V`Ofs-dSNS8!AICy$GFaT<>yHuiM*jdHlUK?Nj471JR|7I4FsVE zCvcF)(aypuOl|0NYqqH|{oa_%s`;PHTadCW8G*$JqREG6=%@A__`Rr=wP>B#TPgaS zU1@4Oz;KuvC;Gq>V@};ei(9kECARZB!o#6F^~~EJIU!8|+$-2&S~vCW&j-AUc1zo8 z9s>vf0tpVd0kOaQeEd{gg1WU@s=e-=Tt63t+YY+xFkQ{@BV@VG0{I8lG(YmaRuHqi z)lIP+5|B8Nf8~8W-kyy4%(gm(sJg$m{al|RmV67$_S{yDJ?)#Q1g14O-YR0} z>w)jG_vI^VeO%yBHHi4RJC_uK8QLfRD(x321@jQ?961A;aBnp1Xt)kDXCFkG+b|jb z_rulFCV-jo;=-OK3vkHT1`P?Cl)2HR-%jM+_u)C(>q@C@AascdmF+v3`HRTkcwb{E zvqf-hz{w?Z%&0I~zSZq!2hC%vKZw)S$91YQi@|B1 zi#5ErJqgJRGmR|=(@_1xb{4Y(=`X=l55sFG-}ae_v^&PWuX2lh_HLP`;U&Z&A~c;D z6_d0zyG)6Obf^4#{`N2(cWzrwpbgCe;(bH#3T~oKwLe%tQ~LOW&YH$t_`6M1qM`e| z+%srDn$_R7EhWld15t8(9=%X)C9;_^^iL2pkq$X1eYo+Ny zIwKE<$RRDZdRW|JnZ?kMT><7JPlCQ~nyX*nNgRbGn(JXqyjZ!nb_#19zeUs`mPaMMih)=WJ>P zv2r!;;2U+{baI3c>xPBYSCu?H=j(%ZLYmfCyA6Y%y+E$$l&U%ELZr2r&`ayvhl>*3 zs=*|)b_9J>pg;V!&Rz9IXI*TD{{3_UU(9z)@OXzFweU| z2W3`ZD)*1Ya#r#iGY&WkD&z6h)+A%_1TAtj!2F$tn1cIt!>xMx2cicH@Hy{&rJlca zj=aERDnA5tw6bFp8XMv))YWsMB`syiUkmooyL_;?*Rf;2j^l;ez`#CJf`{$8g4xLS z0T)+z%boU_vc{`zwo17fazJq7Hm9lPN^AZ@ z)qSgk6MBg?#yrEUYlad70sK{CE`6M1wQ#@sTvK43wqw({L4JoF5XbBmoB6=Qf-s!| z9u)H>Yu1byPQ4*1PyT60pfT=TX0AfTqr5{M6|wa?C8Ti{4|p$vuV)j0X>M?YS9~Ob znKIPBiu@w#IlLeHxRR6=Oe1sOP_G9ox`XEznQKc)>iCZ3?0M#cNy4kQpv4K%`abKE zT?`FW+#+buC2M=*hVs6BUPP%4J}6Y;N9M8EtA2~a^WgUY>_36Kyd4E~|M@`5Gl=$c zP79h|?Acj@U3*x3*M0#`m38dA+%bV0sweSkp?d79(#M?kxh9LrQT^_;-9yqWmZK%3i$0DrFG13> zpudNa?|3Ex4x|zud{a|z#tdr8`Nd2uOucY7yc%LExVIO~5to-@lZf4E7fvkAieEgi zxce)2d)7?RZx(k+-m6n&6r6Ak)CMxfX zY_Ec-L#iW|lnJpVLn;p0X$5V%cdd$XrI%qcj;Hq}9d|0pFpWtdb^-1jz125uZ<>yD zk=tJMciQEZ{reJDGrY%LNGmj`Q-P=X&T~phVn*3GKTUs##35~x zp5eO$>>Vkn@2{4eDYpe(g>e?^U0glLM=la&pdY+D(ZW)luF6sor(4V zHV2ZN_$kOAwR~PNKRcja*VYb{6GL+`gF85C9FW&T0vsx}G|VhKNbOR8Ld|v@uGndx zk#}L~5YEC_0ruw5bc&Ck)}_9d_zS)Dqvj~OdD2ILG||J5xV(s5-b>{AZT5qu=g7lX`#wSf?j#`lJ_;NrYARqE#nQR!{8#`mz8g8_)Pn(XOltut(@aEp^*Ca z)cJ!Ky+V@M!wA!$Zs01!Or)zB##!O#FgFg0i3_XV9p-`*&R=R6Xi%X;#1oESU~)*^ zy<6C57YE=Y02T3JY!@_1`|%OL4-F`o{WITM=S?r0$36DP1wn_!y$l_RpM2Wa=T>j6 zryAQJhkYhJK?<}`A-WJ)I7PU{FnB8csb8L_jWY=97^p z4%U2u?5!D3p#{swV)SQk{fG=%YFEmNI}>!h3t8v0ax6=Yxa*G1lIUwCF#vs(-H&1n+;MPSv;aUBk5;u2t zh;!{T#8#f_qWk`=X2#I*4@@r6Kyo$m$eHFQ%k2R}7`9r;$R)MOlZRvP%Dq2+a{7>3 z@r%cA;(T62ApYrFjoB3MPIgyz0e$^z5gGd7NLMiBlJ{>|nc;^rm+43OELj56d(Z7@ z;|jzW3!9+i4dg^NaI0D4vFBU1T)B9{k@i&^Q0iR~$tb8dYH?`aa?_4;uhe3DI)AH3FF zH<}^*iv^QwIK?ytN#V$f+-67O!GgrWZPaw(vc8=uks}fPO$n4AM|Su>H#)OW77ORY zQ0EotYSY8i&m&pZy3)3^KA%D+MTHh6Xuw-BO*{C(`Ks}x^j>(2g=^h$0aGtD`kel! z8l>o-%`00bMuxU>vW}G|Z{0FDhyKZzK$Pv+kw6pvwwvAdr@d8dQwGkb|4*?gak_!v zkE|pXz<+aezN9&k4F7ZKMN&Ag#da^5hc^88cu&IIprBYB>BJap4f&$Aspv4Hi5)$C z^8JmHQtc@tephvnF!rvcR+~vNcxf-n!LeI9V?%_Uqm6(Ph~p2|;IWi0{J=KVx z`jcY+K~NO>-Pr3HVtkkQMcc=#Q#(+kM5=@znfLGCv)5%LZHggLpVj%A#>$JOhVoq-CRc6G%PXh) z)z$YkuK7(qB>vo9%{F-D0$cHh%g%pzW2b!J6+ag-Y zNA~z%e_n>EJ|E`7xx8Q5qQ8v>sA#f3c1`%uv}m461dF*-&WmCzg4v7NF(@$tx8KdDzX z_t}oZu<=vb91r|N36_GztsKa6n4uMJn6{EC8$6V{B{aBCQl^`iNoFJUYSlbk>fg|P zk~BpCf=%}*h%M|8tUt0L-Dc^0^*8&r7UG$Ki4D7#XsI&prXip&d|cJbDQD^gJ6 zDy6~hsq32Nr@9)WcsQ@v2*YuNR6i6K21QY~;>lryo;E~}_PqOP<1nNL5$^AXa`$$8 zS%&wq$frMHfm??nF^5J~f8@X(fnCg<9iXlcycMivh)t@K9N$bZplJV{F3(YwgA7dy zi51Sq8Sk_HYg4I{u8(B10J{7?8Eij>qTRd^sYC1$_V4*eSeksJ$pwNQ90>ss$}uTZ zaMm&L*X;;C*?<0UMUXN}SfUD_Xz#j1$sk%E zy5^{+ytyNu|L9WR5`<-JGIs>k%R}r>Ki0y~ysP$()+pZ*aHR`djr|~8(2Jvyb4&V) zFyk9}oaYqS{H+wegzl18WmJ)nSiZ0H_oM}5#n5PDs+l@<>g%Dki!wG#;*XzaJ!aABHqgS!)qP)hVHC`)H>dl32m1Zj~mn_XsIfmW||UT?)uJi(U2_ffSHfAeXsRuCWlK`6_k_ zxox(n>bu1aFFGMr+7mPiJMa$vC0iyX=W&;je|;48A^Dr*P473o&JpH0TsUfRQS%4+EG0@|2Qzvf|@( z1hjUHUDBv0x@nkZ|JRglqSpJ#2R$%Q-+lY&>Eoi-Uj_dXC$XK`VzsHLXF9-xDok!n zdQ)=J>`L+j;;ci>tIIn~KNwW|$_ht$FUQYxbJz1FKDHwUoC4f&bjY2P1N|||IQZ!Bw!Ly;e-K$j}V!P<;Uq*Tq z$BCsUuC~1NqJ*|S4_r|oE`_QcY!E=W(w0-}aV*P2v5U6>wO)t+y)bmsii&5RUJF{& z&#^w36g*KED)+k~$?@u3yg7>g2Q!Q_!C3$BQPblXFx)yyx7E#|w1#Y~aGw{964tH>dkDL>i&ZNe288S-EN5w#qS zXCOqsHB-Y1j!+ioOx2f(_$dFg5mgp;6J&dweEKr68fAe5!{i`-*UGeU@MZW-xkZIH z7p6|1febtSxIF);)w}E&q!v;d1U^RL?J><=xfhHvxG1Xx(Y%x&u-xd6VEsn@D>R;+ z@)6x5A&N+~1+;pvACJ`cpg|^_u@PDvwrC|MY3n3R8qTpfrEZSlG}LHU4~b>^zxS@E zXR>}L3a%+hIK$i^brJCV7sP!Zdx^a+&$e4QITVJS?(h$vrVrt2aP9G*ypQiRSamX7 zYvSYJn)J6{q`Eq4cdG50&4CLY=DlQ%bbK5_3j!<$2vySk=E72-*eH>bNRH_Xkdmq3 z=SE2D6!Z1R_`*%0Lr-2nrbKTs-86lTa_&BU2$U{SkfW)pjG#rmH z8ZFP;r(c|Us^#^BFRxGvTyFuaPrHf&XJPxg*>VtRO7Oz$bDUvFgyIMW;x1`IETK1#5Wlz4!N0TqxutE8^tII3?i6#QN7o-!aD}%i4xfT5AF#(Te1Ah z#rTPN(6ko|t$$TEDlJ}!Y@4N;>X+9Ks+%e z397oNk-$DnD<_ImcztDt>mPute}IuBW9{pqXrh8dcsI4AXC)|=w-OC5SkhG9k7fLm z3STmR-B*WYxbYl(bj(bU$OrhH^1{NxuRYq%kFd^LupRT~9|>Lm4&CB~T^G%=K;ilg$kIk`PE%+F8||2a1w zKV=Q(xkA?*m6}X+@&Mw`JuCj7d;7yho$D4#fg$w9*a#43Uss7766YF{_4{3sNOqZF=Ebaf6%yF zb@Gk%_PgBEEi*7XO|EYx$mqpDR=ak>=AmDKqZT;Dn;w?oa{9QK2-fXx2cCo&U6u84 z{FeNrqRnB53}ih>Z*(Bo3XIHm%LTyWak1^lHCp4s=&91G9kZ6$*vdpQFl83Wc-v(n z>{WFbrcztk4!iNb?fhbh^m_1%)h*~Pjw)?u;ri5QY?6J+gF&*CDVyehweP>zzoWTn zQ;SZY4AmLG?;9D2UerLP&$JVksc1eb^fQJxVtaX<?(3;?Kz~K)&;2FR3Sx! zEvK}J)GP+!rv{s);ltKYv@bJeL8k0+-Hc>>BPdL#eMKY>pX%EVdH|xdRfV=Iuou92 z5#1!;lECKjZQhZX=THArw#d({|%!{OU}40JOWYN2o?IuiR^xg0b|xzdNX4OH?OAd9OU= zMgJANZ`Fccy?2-V)JOu=FA{HKpQwhzjgnHh=;-y3U1fpkyTzk=uyE4K~5o$wy1&=R=#Bbyh zyWtq|JVngr7RihnYEs`MQZz2O%Iq)2B5!NQ3vgcSIwRtF&pgi}cPL-r+!e~p$fd$$ zF&$zU#gBlB2wXMpvrtuJ{(Si$!`~|1*n6BR^u$TLpUjj%LA}t*Y5p=YNMTkCaRu}9 zkx8#ZfpAtu?;0s`VGi;vYEy$nycZ+yqWb~HF2*Wy2SMbR`rx&q6cf%#I(yfWBS7t3 z5dB>NnK9B$7|PM;v?URj_}sj^Q1<`yXmLY*_c23Qzea=v?v%8g?D^8wzxE=5@>FGj zLVtN~wy^p$!AB}mgw*#|!kN&3;m^2lBOIg9kuuIzJf?HE9R$3&ZUuEPU z{o+>7wO3>%Im_WloF?b55TU@>Y$I6;jN7|ZO2?r~~1u1p=n*!s;598x8Hv9`Al_vmf2YK;= zRekdSE_nF^zlxFK!R!Ec!gS*=6@eN^P%vNF9OL6B(5KI4<$K_6TzbgRbR{SdwWgAj zasz*;Gs<4`T|17EPqTJ+kj3~HNo)O~@2S3#S8qP@Iu|HdqX+$=p0R`m-w=(~po50b zFr|`Di9APV&zYS7N?~4n_cDe{QgEaVkq=*m+S1467X_3m_PA;FkNV=LaH^{IEG}gd z7J*FdUjyiCj=$gE7oL*-3Knfmd63!99+o?)m?c}DK@FM8QfQAtnrayGNHksVo9Hx--0 zuM3@Th6b;Ei53j0ax!q!jICuX&p-+o3xP{tb{pFNT!d`15UwEnwusxkQ-{y&x ze~k!=V==~eb2aF;hZfXIJKyPo8zJgS+U3k2Q|J7v*uUo)j{DxTE=by$Bu~t^QrC?K zu14AX_yVq26a0tmUn%lGzXS1$id_}{LN+{0n&T$~+sVa{`Z?-esWVxd6LUIP)R!a1 z&M0>&_Rmk_Z2jW?OAqY6$rgf$OvW6>DbpL`AZoSBU|dl1S`gYEpK&W^-jk(((3pMWORo5hlmWMr6e|4nd zNoKp5As>_R;42xkzZVTFwi}XxYogM}U9;FZB8~=n>KK7)qcxWTmuiG6RMFYE68pO| zyfS?#DMqZFVJ4O(S)EHT-lz%i`54RfqiZx)J4zgIMtYFGOJQoHSSMY+ssOpIA#8iH zM9%m2-`V}u{>zbYBZg*PzQIo3P!z&om?^Wl4BLp05HzXX+NA~cZYAXf&nDL_h-=0+ zeoP(OTMPMd9VY(n##6H`sYW-6`?t&8kvf39xsaT_2{?t}MGA8GMY1^&C^B3tzVoWr zgEFn}X7)e6$~e_q3pmE$K_$e1^)eK|IQuqtZB09Hfw#B zWhEh@yJl@I-}}JJarpG*)W8MlbY*bPHPWKfH|+z`ocn59n zug!oG);WDxQsm$YE)E@BJYZgkigIdu^(sU0&cG|B=fZOD>9}9KGwQf(RAIU9-SrdPOiw9hPuQ#3}VOw@j&5mM1;`%rV!lX`r$ z%y%jR(G=hQm6a-_ZXOX}i%AVZV?eut`JFaHjX#x5%=z1aB|02QklpJk>|2Qxs}Ux! zF*Sr`W^fHw2eTuBw(zhUP*D<7g?KI_m42Ep!qV_EfYdQ5DVKm`b|AGPaySffX(Ush zmvM(Vv)6{WjLFi|H=J$T;RiOTUxC0dtKrY30pmkE)n{!cnE!)L$2{v=n9CSah9}PF+fHbSU@<00)e|F72 zJY}hCq_r5r;|3K$8uu&T1aWJsu|p(G*9&CJqt5F2|4K3;EIBO_1zH@4Ac{OreO}^l z=gTG75~<;T;o{FkxwqN*@0J6mNhIYaO|yq?Nv12#d=ONEI$PZ=ux>;~kCgvQnLdV) z^RP9z)tIiQ$PUBT^hDM_l7~F8L;r$R(>9xuj0k>}hgnGLw@L;!@q07!E@FC+)U|Jz z4iHwQ$6thM-l#qqGEp&9r^>R%d1+3o!gUG4AI+`!FxO@r+JB^fG;}HAjf^`3=Z9Z% z`d1sz=EHXOZ0z$ssxZFQo^ZEEutC?#FpTdvlt0x|HCII*7mYe4f<4ip8RoofF~{$e?I1JgI{YVVp5tQ zN^NHv1+I-QpnZ;adiCV-_7ITFb;kw+1U(J!BT~k}rWiG8fHpU2_ZQibA-ge1)%h=F zI@U(Y<}g}0g{V`$U0$V>b**49wvru6JFvuK^extJ8<7t?SNhVVB_$kx{x0tdF=%tM zW@Eh2NR6`CsSzRfj0`9!cMKP}aibKIw(uFdqM@yNAq)o86vvF{vC*XbyXlH4w1HO!cHm zfOT8#o1jxmr=zmn4$G6??SBKbd0|oHL*YFu5xXUll9?6#L-e8h|M3Q=IToQoewHEk zE@=suY(x*8GcxFVBhejzf@ejJ%!Zr>_Em}Xg`yMiH1&sTI<==ZKZI9+5O{lwcLrl6 zF3XG^xZ8=V8Ri#Svn$aVYGRr3aA4xH*2b7J#o;s3^=$|K7-b!JX4zgGZGF-y@05 znB~a5j#`w76B{cL9WZ7NYSmIGCBm>1*0mig{O9_@&f=V3+z zNUHsQVY4v21SKI@RzB}rdQChGSY`l0uYJ3b4!UzWiP$wFawM$-I3V0+Y<+U9QtkjJ z-kkw-e_<%Oiq?OfGdZ796*(chQL5oJF_Tu}tjI$(IP#w=@s8B43A!&86+MiD6jui( zxc@FVFmV!@aHQeY!hZx3^(7c^!EtC`Bg=5}TGu~Sz90B;a*9C7NION&bw|wDspXlV z&8sUPoggZHT`*c}2xKJ(u+TNLQx;_8f$0tPhxm4;6G#{?iW}Ql&j^p_WRPVfpuLx$ zskX0Q-2OT~k6^^3M;odIxO|4uhx5i#tw{{%6ePt*nU#d8G3Vnfj6)Q-E)8uTd1>aN zq!8bcvdm~rEP3@9Cte)S`1!b1ntZKQ{oj&IH&pbIf(E;yWKT+5em2(BlHRbJ6ls+( zWc3ad^A;~C@dWTBb848osOY$9s#<~NgX~LsWTj0=La6#jX(l=$MlL=tC zPAR>~ACjNBEvOY{Qsua85$qT@M7liuA^(#J+|dTA7nf%;8X|ochyR$#$QYAMHYc9yL z)-kk1eQhv^*!iD5vlUM#$hICkla|4Dk(4mw71ku0-Q|(nU{HRiGtNHCG~yksQ={1Y&Rrk#MtsP{*Swt zV>J){t=@9byiGoLifTtly-M7`B|M8)1{%cHY)%3D3c!ga?*&`^v`I;GCtrYO(x)JC1_gO3s_l|nMqh9HeKuIkV}9srJKm{fDR#_}d8n<|YjY7~$14di~O z?l5J&y)LYWo^*B^&jOe1M%v#8bTvIurs(uZjU6r#O0kpc$iHGXIkiwK^$@az>57VOhTut zg)^e9L~7>~Rla_&f^W{!%27e~{_K)k&6wKS)!R`~p!izpa_m0WVEY~~l6+2{tOU)L z%A)Fc1et`u=2v#utDshYAe#p#&`|z^2yhX=XzUzfHZcl9Rq`C2 zUwJ=a+cW}4!jUIX%&7`@-d64YRbRYjZ#GU@xfgJ9Rj_4vynS$Awk_pC5X^k&d9}E84F)IassIA_Y zW99EQ?Av9iIZ|q5`9s>!DBWhvm8O9!B^dH>TemARnBB5;9rB|fthF%5SiQQL3A~8) zhYkah9F?}y$jkTc8ju>t&3*y`;N<4b{{?99H{VTDPZRBc(;~0>ti0H|dhT?lM49q) zp9@5x5+;{Amt}wb^nD|(KXO5-_SQ4Afuauy{*{s*sO)H4It|g&y2?m(cB@EnF6w_o zKy_}nzDwp|@Eek<*K$ARi>z$sWf4#tcL2U0%haPWF>&45cd#wsXzcRitTE};px?3s z6sY|u>`uU__Q$5)CiuSXHUmwE)?5>Lz51UuZm8s=a=C6eN1o32X~XREwa76=!BVY} ztN%yw+_@CX5Bq~?tnsappg=B%ng%k#J<_23Z=np$yZUq0DBgRD#cu`a+UuPgpEl|0 z`-rd$gV_W`{^jKc;P9Mn_2ur=s?lQf!)+EEt)tMBDkH`P1mcSvhyvQerqjY7qxRV5 zrX(EPgwD2dQN_Wt0O$c;wJL^Y6kKNSa1<2o0tp|BLXb8yd&_Kp&;3GYROgZOU zX?el*>n{U|LGX3Via=BMF4eIH0zKMvl7NJu|L3Xwi=*h?3@fMd;ye4=uCQeFWduN= zph#Um_}W3Azh*71wD@~_@I!ObqY|#yj{k+naKJU$PyRtDJS6_I2CSR^2SJ(b^PzQey9l)6$3;x)&7@noY25lTnChH?KNnhQp5iU zKr2M3#>>9QaUkEQ#co7{pzxoP!hp;&*gk_j!^O32F7JQJn1Wt)$Zc&9RjBJ+Hs7qi za?)%b5q$@YH=oT6KnXqTp=D+T3<^tW?-bL07_7hjln4Ad6Ng-sh|wg)ehWx;Vv@fh zEaN=93K!V&A_^cS1d9XCHXNDQT4My&7el`%jIN z0pD*uxcWOUP%fYg>#7ptN!K3Q{#4LA@@$tk^Gpai1x8#)Es?z?73Q63SJ5fpkXw5H z@roWwtgqgQJsVts9pfZ&$H{pGK&Yy61eRDM9SdS~K<-qyiW@wOF-q&YHp<=pAyz(u z%w>{p7?@~>SwIm@Rw-gE!o1F1!H< zXI_zyE11+O1Sa@mgE~X#4dp-x=+)KKed=q^lKLK(Us+$bUW;fv>2n6nxhcHkrWADs z2PZ@HP#d%hf4vwDjT}L?d?UKv_re7|&q5;R=0c_NFkXftfSojuOCBj(huT(Qcq`Vmz)P z1zzhX*lu~nD%8%G-|gJCySO;|tF%yED!lcvW5g^d54mH4G(PO*y%ixax~`ePq`~JE z6U%bmrX?-N&+I=fQYBJX=0zo;m3`V<5SH4nzKO8pXOTc z*5xj8xa@`;$sf-ZZ|pQ5GwcU%A~$n`hE-fDl*=5IM*@j@#L0W6Tzm(nUpEyAKIArJ z!AuEE-M{*}fVVfjx=Q|rZ-9$Tqq%>EHB*!|Q&1SXGPERdFxGk84qj25gh>u{Fn73p zgST_tiMYDsP@4?JS4NE{w)`IQ zRSB~a+q2;7;z#s`a1y7x9XZGMlG3jv2bR}$C~&%`MS(|PZj5iw9yk{WU(e8~Axey3 z>i;xWQuNb{K*Uj2>J2NH)5ki;)Qf3331{_7l6hPT4C{%gdsUv)tt0#_kAgtfX&(0p z8aAOXT+cR!6e#B|b5nXH#^}>UKAHiqM^(Mpa#%Gogg@6}t+>^eb=P&=0qOQRH6zyz zTJa=t-QD5p|Iu{SaZz|Zlt?&=>~z94(VVsXs zzjyDsGiRQ8rta??`qttt&&>+8vb{R1Wk=gLxf%sf0~FP$uA1?1tA=W{UIHdC(cbm} z(aW0d`9E(mL_B>}mpC`q)t0i@QpO_sL7P~5OLVGJ2P2?; z%hAsPQWk$f-qMPDX<)lqxL91cc(VgdI7D<>nl($hV&P|Gx)N9!|5QBJZFj~EWlg0> z8XKAGDvS;fbuYW!g9Z-eRW^`#a|k9uv4BDcEy{MW{K3Ez<*GAj$r=?Xn+0a1CD4ul z&4eoKj*6&iyM_e&Z8)5rr|LnrYX6=-QG{h;Hz<7~N|iAuh)OL=Xt7@7KR}P&{04#} zBrDv-q&ne51VX_89FaUj)6y_;!enZP_=15EN9(sud+2xMk3)r2lA-}@YBZXXp&Cl! zxz-8l{i>PPx8^j51ZxqcY0n9uh|f1tH{dGcRGZ#9<~V-O$&T@v74#k*ZIcSWhB80p zz{ol_%U}l@sB{^8QH%+Y%_>LKVyMf)196nF5@=&(j=eJD8b2v*2B2HxHM|K)0C9Y6 zSt9KNrCeZd$K026z*ufuZHG_Q15z=or1nBfJUrjhk{wx@y;|B^eNe|y*s8&?^lfpw z&lGe`8$D=-qK3x8F4oEqV=Xox$KD?7p7U^4i4n`E(L*;71d;%18>S@laz)C$(hEUg zdFZv4nN}hnYZ9-#*(jlGv=AO(Bijg3l6wd85U6|_h6UGZnl2;8kHHjJ{2xx{0^)Tm zgx*&Ed=n+E7@p6Qqg=pmQ=sgmh+rZ|WNkO;XVom^V8r?cpH@Q&#w%Jcb2w5jygp%lucDKa=xdZae!7S zVz4<(##8wg-@KPnR%cc6tYmDQZv2V!vI%5e{^Liw)Z1x`v;aoMX()xNHHg7jhNqSJ zY_m1c&fl_Ks8JMfsZ-9}Pg+oOhr;o<16QC__yg90uWoX>W zQ=@h%nd!;+%t(%BK+*GGUP|cO(>Ma!Ncd-NV<+qd#F}BjBsjc^JF#d09Zm5}xt^RtsWnwe{?2Z9&8}HQzS5y&N zSaLYs#t$*Aocgdqs6!6eH#drHCgO^a+lvSf;(cHG!T@%20>n-Cwc5u?iYL5ejOox3 z#yWFrdCNC(>}>Pl*CrpWZOiqU#f9NEnIf+p!4QtE&(q5AlVj&tH>%6b0FwO_G#}wmK_$^%j@G zREGMEjtqyMl#c`HKS57@BOoY&z#XG(A{Y|H9jeD}W}_4>7`lUuw^+N5=$HZ7-!Mx` z?JA+Nw`tJasP10J7uArw<#4tB1Z=%%NJ;4e+CUH2{O@=Y&1H$*Pw4=<$u+*c&_Jx}%c4ma9=r);<55~ADBoGj_G#_IgH z>Jc%SaLBvg((`Jlvk4f}2|Z%83Y@XS=JSPqptRvxu}Go(+T4zXBL}0T6v)*hgy?4m zy;N%rGKGipkhU1GEMd2l$~6&Txg@S-oZVok?oAm2f+;oYl8<#$JX|ETY_@(H01}J^ zMyp?(-{1JD?-|vQG7At&`sxIXQqEGOMymcxvO6Hh(Oqk;%ow1PB^K3s+shuvvq?vlYMOV z|HO=M&@$GXDxMhYN!l1Gy*o{vTs8LxDX7Pq@!1Oaz5GG}qc3&tKxdEiJrHi?*YHPH zW-D+C5LFMv!abZO4Y1{*F%2=8M>z4a6;BgsqKu?5WbG=ocXJ3&5bmHA zvO11zF|lm{RaM1ln8!TWJR4_Yv2M|QA%$3%p+O5sY5%ez6#sm4qr@|Df`u(%7b%Tk zTBvl4rk@v9R3J{Aqs~wIB?X0znKRQtPBICP_l;P@rfju3Z=3mMnKM)7L=*!3_IHYlQ;yxP$_(> zxhR%!F}rOxeRyeh=puWhdE~!f-5{$3fX<+BtCtZSv<`mX}Sbe?Z}sxMZe1uPJs(utjZL?iS>zP~shckM`72&F{Gc3y=R}Hb+{lwS4mxF5BAUJSvRDHo^(l%vt2U zU*&%3_h2{6YQ`(B#k33-CjoE?mFnzG2UGnAde3Pp)-|B@yXVy8Ul-ojJEwqUlpgl# z>Z~~+DgA!m2uI_ECX%PSMDZZ=#Y?*eqsBSTp1Xr7)nmNk+oF?y9c@ndLE~DAg3I4Kh$Ynb(srC$!k~>#DbW$wePKEPd(MF7Brd-XntAe8` zn>t5(pAlEuOj{G~P$9h&Cjcz)N>>D7thFFRRjzc2UNdQ3XE;DUL%R-brfb`CVl*Ed z)BIFJr~6oVg60~tc+Uj_V|xYvxQZby{wrcoFe9t99@U1be-ezAxv$~%XIjbYlsfx& zF{ai3gE%q8lpEZ;Q^J)8BjQToK|Diu>EB6lwcJfD;L0z;qB{}OaF>8tjb*{Dc&0O* z-BwCdwd~rqgYWm75jHy%Yo)7`wrmk&tLgh*4~>%{4zsAvZg9v+ANc!?iAX>9sH@aN|6Pl^ZJb_|b)=OIND}#}-7AD;ZYTXv2ZftAiavf#CKt zEGjgwDr1(6P`{}_`( zj7d0deoToUs*wXIp@l>L%Y*_|)AB1m2-Ni)V-haTiDXM>czME(kB5150Y9IEJOTS>dqbX})ZRBhO0H6ZpKo*@Q>9#h<#;|Epwj6^_Hu7oGjHA`9` z5#&p6u{>9o`+}*9MFmP-jGfH4tnP{`v9ye=JtMzof8(a6{q4!~4+_=Z<62O`I2(;b zuBv_8qIt^ds9196CSY(7|C%P1f|i{$CG889WdN|Vz>#t+G#DFz>dPl%PHGOx89TI2 zZiVo5|f?cb)ET(tJZ#1-wVQ&zj_2Y)&LvvF#2x>xkiTgUDv~oJ3i2=@d zQ^6~4lkToS)Rn?OkeWhqwYJo4%C+$se0infYKwDu;`F%Swg7Rlxaj0*@d8WEERC+Y z+%H;!l`XM1>mwSzl=M_f+OwcI0pj6**2pMV}SIl-;MAzpB&dOWz8g~ARudUy-`Z%hS7ue;_HmE#D zbj#~`lMP0OP}7;}{vW@SZYG@=LJnDSM@{9pl?)1+f0^WX;$f_Sy|p&EjQSw{Q%IR{ zEgQVETKEMj#X*K0f6o}9TKz^Xq^V4mm?G_iTWK* zw$xc=f<}&gZD7pDelbBqihwx^d*)Ga<1N!{s;P7aSG7N_fp%k|S2l+BgEp;Lk}&K@xnL0`7RZ) zc%02SExmP;LUdzgA0?$i{xw;A@IOq7VBL+Sv4vt1Ld$Q2leKUwDcT*ZgJD2nwr{1n ztWNu2oEo~N%p#J*+&x8Y62xI#sG<`?2>j-3gj;^&l%lUr3`Jgq?#@Y+g(;9V{H|4@k|VO`y$+!(dlM0FE+Z z+MpRI61bRXHun!slLQGOmaCTH9Vni=+j-W*SpQ3{@l61vKcsK^j0mxJOJk~QGgQd% z=w=O0^;W*ccH`i&-ll^2*u=;#FuFUt4n?a5JbETlEifXZpR?EJ8`Nla!l;QRsmnR|CJ z8YV%t#V2rod^VG3SSx)YAZk)HL{635AIJ1>un~3?imII*g1;Hk+YPdPTp%jT|?v`+AFQ~9E?;Mb2-*v-~`4%edtHM1R-fdr&S#Kp-r=h7M3+bbM{&nZeQ^>(IJfX#n_B z1OF8)FU9C+6*pC^ z(;B+JS?N?Dg*>_gvOjimo3T_=-fNfpaYpR{d>d!Lg>pBSA{(s~J%Zf9rF5{f9OapG zSrRP*m|$V$N|hk9@#0mqGjhuHNM^aB9@OH&PD1i$P&*-^MXYYj^#pad@0(GKe}9Y1 z>$1OOYrv@pbselbV$Q2q`>D}RH$!M5{t5;)bzZX{3OPP>K$&XkCKrpk4Fqc9a382+ z6I9jyN8U07)i6J4G7(1p!m_L;TRSD?Ek7ZEn`%-6I>>#(jlgK+62b{i|3H#d3@V|K zL+a5P$VOQj%yqfh)>W}yE7bU+bS`j+wd0?Fa{%a2jvU$>Sp%IJj6FI>c0owijj^v$ zb<@(Rj_XJD9ZDb)rs#`dvt`W!fx}58qUr)5W2Tx>**$jXBqS@-Hx337T;@!Ua`KjnWyhOZd7#G#2p}T^`O1K^ z1{u--O0!KVs7ip#R5yqKvX!Q(2DOwv0+{2kQZdL@9!iZg+5XK}s6Y9awM=9n?s3ziwY?q#lAb{wx0!lP~)=e9uaxg!Py6pOdC$TgX)Jx~msMXw5mFMRQqrvTeb(eE z#lO?ky=r~|#PLVOkX%_twQ(2qf1EmW!=5VGYybu!7#17gtwB`6Djy0pNe!klq~+?2 zJqT2vmaG2xcc9klEy8edm9pf2qR(D3Hswbl|@v9qS@q7qfV2 z(qwZa0@;5<95K9mpivE(FfX=y>C3UGB33>lLB&ojs3ip}VNdHKH+Z_`r-wyOE>fym zn&>EDUiPbg1w?0?*)h@~4dgup`NHcZ*`eqn*$gdm;4I-u450MAtKT4k*Qi=0a+Aea z-gZSD@6JdBj0}dU3$>~A@^<{nI;sM5=^Xd~7PiH-8xZ4oC@|P8w)dlRwZfCiny<+} z2K2a$$+>3#fApE8nRN0xt+j7}Sot;hxw`n6>=obmO5HN&!(9FnB}5W zd$%c7%Dd~FG9niP601{@+Ua~{y|pM5s#46!@{hyZdJs7KX`4{XT`W<-hjQaZ=JWC^ zRGqJdZRV~56(a9GBcnjohC&A?eb5CkVRM69i$tv2-)8KzE|W0Q!_#IOGq`{e1&{QW z4B(VFtM9i?|KJSJ5NP4VBMDA)o(zK#UzrhKG01)rfzVDA2~c%5sPk`rLtG=fM~1v> zj^d~ohw6eV)PFrB9I^ASRoPMd+TBBwiZ!5_Op3 zA?sV3lRn9>uB1yd=-lMm0af4;P@?(vUsVdr50OdwQa0KFp`WHK_IBpLX!JEN1^BC_ zD(5&G4*U0&;%TyE{lcB@r;iPPBh4d*nuP7Y`~WN9s0DemgRcv6j9qr48K|#ORmmnM zLuK?|%sqV~=CtZazB9Xv@bPjXK=b!JE5yIS`wFwnSQuPR=u^c^_n`sRbVJ%#J4Y96 z4%PyYJ)TLCg%Q6;l$+;BNt=?9ZRlX|P+6Peq^cfn{HyYwV>db|KiC}DRyPB`CqnUW zORVm9!2HX3pS}visGqO8CB@%I&<_u=tQyG@_WRLsQM>M<6oU|R9y%IOtwSm0B#%mM zVU-(rR> zv-4j{KP|ExsVT6pQ6Z12!9l*SGn-k>O{;XsDAI&+Fl*E!T5`emC_nRa4mbz!g{!kK zcY1B0QSrWNu-iwvK6SXd;|KcjAzE-KSkG*|cB6xk2bXFG_z&Q#BZ!+7E0qYT`P(M} zP?SBAKb7lx=j8u@A?IyNY2gBY>->5mu3HW-nzESf*9{+#-ypvyd*FhnTs+MXwAU+Psq4WE1}k3ktV^jOBe3KDr&ku}3L%VmM@#Jf z+ChZ^#Q*{lGOkm+Z!1Yd^6a@2bF)~(U7$UiMS}khP{zb#;8mHfYSOVNf8f!Dt~C9K z?hE1ion_!&)wsO1NzhVwz0rE#S!Q9rD03MYEh zesA%U?ia*TFungn-6{C@a?_x((xLjbqM;TT%GbJ#!kc=he=CunA1>rXn(xjnNCAl} zilUSj!?i1(A3j%7`CZt^GAYC?BPS|Z!5C0?v!+m~bsOJx6#j+(CDnK=g|TtPTBhhZ zbNb{b_sq{zIZUVakq4e@_Ze?zi+UrE0b$Sld~b(9GR3|bPwVmK<5->nqRP>C}pn_uai`^{wWq$*+q^LJAllB z!Rqx>4h%Edy*kFUHuVqvGuX(Ex;oO6SZ2Dwt9P&0TRG5lAa!gD!U|~+8~?O?KUR+D zx@WNU*can~FT!Xo%6RR87!)O>|0zrmPMR4WQ)oXPjXk3g$1rb6PW9vHe0L zvR3@CQFl?%SWXA4fqV}1l39U_BiCdO4$#9ge&oUSQS@V%0R==wQQT3)W8Bpcmt*hH zHsEq4&LetqMC~!DjVG7(2>#?KC=MsoTgD#PFd^Gb4ke@sj8AeNz|5_CdN0G-2!_5M zOsUK6K_^5Orl98*m*+SK2Ym}fXxZ(y@LVHbYZH4R-Qc zt~*gX4Z1_PBy!(*;A#c^dMaIz{13(w$0)Wr}qm1@n4N#(jpuuo}PQOMt1i+ zW6wPjQ3AB0cOk`svBsi(!?4%u2w~FA(T;sIsow3aQByauDSDihN%qcEBPF|(;qh&HrT)%>&T$*{LR*@EZnuR)-S}vQ*TS}U$rpv* zau%^}`nx*B8F@Fth zXtn8JdODT3>qcR$IkD~?m-vH%`ge=8J2_a9=EM9)TB-CXvYsI+GA4wJnfOH6k73HZ zjiZfIi@Kg{r}`(C`?nRfqjd*U)>a1*w-r~nLRb4*bzThZF0H`er-P})zxS@UZcXEr zv%5Re$2!rs!-i%LRj*s|BuoB?C{!2|>28+rQH;`TGK36%nMK4-)NhT1i_*NqIO@NN zZ8YnhX`jj6+m&BqU!ES>+qO>$x0A?`;ff2nEL_&qc9`Y9F$cPvZ_%|wlovA3Utt3s zBrV-c8?gV}uCLLW`T##>qd9R?A}jI;W#gdj22ABeWZjoLc|SLZ>lme4wnLXURJegv%cdnW<$8y-g<&=aP|&9uj-_2DjZ{z8u*QQyNMte*1*W&w$qDmp0p9txo0Lr1q#oHH{xRxZ#V@ z1V_WF<0s)qAZC!}6)1Z*G0({KbUyXCADl$bMq~T&a3Tu*rrS7^=1byhzxPSz;liN(I-_N zs33jzp^r&( z!co@t$*bk4yqd?V4l+kjp8mpAdL438q)YtSL>|C4H~o~#7PZ416pG`P+)@F(8`s|< zYJK%XP&q_h+NntK2InLH^I>Jy&WpFLU=w{Y_G7V3(cW5J@r+~z?6_MuL=2T~r{(SD zj0a$0pls8;-U3#M@W?*pn+~?5s4j8udKZ}h{YE#WW>ZK4ZdVLqKNaWYkIL4LEKkR9 zS?P<3FMFAs6fbOYVa{|I+USd=a;-|c@yGhw`b)F#8Gq;C(I|?NUp2Sf5Nbb;bHe6x zMymt|$AWqw=8$lF7Yj*Bc97HDFdeC=ezbs6v}P!t|9S@Xoj_ zUkK_n1{(b7Cl-kca^Ov)&81q~3pwu%{ZmK^E=?TKOxyk-?K zi+v(PilEQW6$gGP6M+#xG|6BOruW_(oa4;)mv?jJ!jNpErKLhP!D@y$52B8gor!Ri zQG(Pk?m5}&Nh6WXS3#GKLqruvLO}99XlY%NX1FQ|4nAoPo(Lw7$SkX&KfoMi38O#b zTUb;jEL}}VEy#ny$v<@{P}bOWo;`xjInyx35yPZIrDeH=C{Tgu?^zi3dIU3>&Q5+o zwV!#QpwbdQ-VLsA( zPnMA@LiDa({LI3vRo>(M;3r+lv|3S$9mysB`~pYCJGfG#oF51djVZrFV-YV=m?P#T z6J10HokWSqjHq2lUyd)6Z;NP?a2KVpE7kK$jaR%5h&Hw6R6}RJUrql+Ru4`|3H zOK3QKPwPO!|NJ+{%KNEYai@R3$JMu$C1QSy6jo~fNnG=tWuA9{@`jH5M9dKR#(9ni z$Iuy<_&h4b+G9wUm69WDz+87S0vA@U=pP!tknYVv)I{2cKl1+AkPahAEWoZ$Od;Nq zL^_iMmVtwxo!2C#3@0)0Y=5hm3@_EJ-(}h8Y&Wgi`&YcDpqR(d?LeC=gEy&3FpexS zD3;Vk@obTUS?dK=NxnMXh!`f7ZdTM>-#xkSjF^F!~u92 zz!IDbTSWpVn!L`6vO(gT*TI_G@WHLh@6vyai8V}SD=%W@YlsPc&xq2-hYFR{7ZSPG z)9f(w=W=I$$08 zx|N3{-sdD-t%9{dJFMk*rQYN;e=gO(9ux>v+PfUkS~E0dRU3BG;iSHM7v-~MMx&}nb z{Ia~dLoS~%T-zh#1%!5Qjz@6%`VsWvA((W6N!D;<_aP+udao&;#}{Xsp0WrEHYwx= zXeQ?7CGJ1vmlAGX{U`NXKK>q&I#SmwcVkcp4U3@V+Dn9}u`ysAazp%+gN8aJ~1%Hk9dpB#-ZWhe$WO8=daQ0PmOPUZ&?2x0Q=z z1WVI?nhPs|Ter;0#;5nDFs65-E}vT0IrJ}cDrh zM@d;N{(;ZGCxRsGFX{Inb8IEjS;$HeaXp-SMghl3?sKndhzu67AMgF>-3g#_!!buN zq$mkkgYNcdD6xR3aooyciWzK3czxaznBsnF$WFaV%6AbBEgs=E5Acm8yQOTajG9w7 zzp@guoF@cB0EJu!`<~>D-+&Iz4M8_|q*DVSz%O2>AM<{ryR~&r6kG?P*5<6^z9Uz~+T(&u|E^@1@1@?& z`^raejon6%bPIJDIXi-ldVp^kPNCT>Gabc^0(%GBJpzW?AyM69KpLJ?;-p^rtmwTC zqAOMm8o7FI+6DDp+h_ai3?%8)vI9ZOT;?K7b|1+~WZ-{|f0OVmZ8&jaSmg@wXdKXLN_tUS|( zFg7X+1Kd4K`lZZc!dY?C=NX_Y@Dv|#N!NAT zY9F}TdJALp+pc&Qhu-o2Y+j^gWBO2Mp>g2X7tc%y#+yCo_t!Mz)l3eah+Nnj^Qzw4 z4a8)Bq3wOhb$vof301N85fkLAI%64^TnChb1a2*DYCd}OSRxnvIDqrrBbkKO6|NOA z{ZCS&!LF6n5f#WgsOa%Yn+wSivN++Y2ARL1OIf4$5KT=YeB_sa0#9@AXBC0^gL!8O z+$~%sgeYewyF-KMM4_zUdaTOe6sG2p>u)hAIE_Sk2AM6WQS?@}ceYXjLyff`H3%75 z4;ax29C6k*W8!|4JsROm!EvMY>-$`hiUV`$AcZsy9i$gGi1Wwx6KF5d!3K! zozEa2{c5;>7$D;_2tbly%Gb#?dyLyYnrgU(t7$V12DL>Cv80=?P- z|8-`y9?G{p5%VW5W_c0}4g5M?T>H{`!$$1-c{g3}&wAG5GC2YNjImSR@Qd3n&&#Eg z>HLQHAFPP{?ieJ2{T|wvM+D?^u`K71O^II#1s4;k0+n8iwCy+bGM0x(MuC$`IU~s4 zN6Zm;Xrv*#oif8Zcr=_Qf|xxP#$7ACWwzu41+*s0Zke;j?G`MNQta68>^4!5FPPoe z&~hf+Z1eKvN%HGX(JSKNnfs`be~Yo17%9=NCy?fmjuNEX9?LvWm?BX z2E>VZhKPQh2*qq=L`PW7@L!(8 z$qeUJGUO{~bS`$@$2c1@`DY2-qM?m*&~`u#f{TW%wvj>dD4)Mg!Fyv)++Jq!3T@wF zncAP=6w(}8_Ls5mPJHZHqk+W#)y?d3b26L(nX-!TnJz>sk88MB$$R2Vvs!w}^zF&B zo&t!<(#f9>o&gu!{g+uzDZ8)cFXF#Pd|AgnEx1xJR&X2H`Y?e?ahS65S$m?ew|=iQ~;^WHF) zCFkp>LidG#4^j#JcJ2&%ROH84gEu#3d_9=3zR!HK{)}QDGP<;Gj8Srtw_DI3$e6pf z%#m7H9F~HF>mJ<ASy(bw39iXO51w77vU za7*Cxf?&Ot^KH3xaWyuS_ZIO}*fh`=f zLLxi7hv+*AJ`G-j+d?R^kEg^|LAx!di&a;$K>M)5a}D*`lBuh8>+#@Y$BTD}zMEl( zS>LUXT<4dUU%~gmS-*P5Upi?~evUbetd2%|9y1F(d~j&leawqjTJpQFu|8W}c<$?cD@{}v%EAD2*AzWwzi$NYS4zh~*X`i82wCWNel_PF@ zWvSGlniWfFb7;>eE&gZqeY1*E`{UNhKsmzd>3Iqiv}qvAVZ2z3{W;$0@aKw%SxL1* zNH}8wiaS!;%#k8f>hBZ@ltL_jHTwpVU)!C-5wgJ~&_eE_N-ar_;>!mm7}XGsEFV@= zHc{&{@*Kk*XQ1@&2-a1yes4~yt*t(GQLea+D+%*;6|5^g4{Pt-#}Th=aIOI3gZ1D$ zDbVXEkZ13jE4jwnA7DA{Ph>kAS`G+Kn-950u0K`#$2!swIu2V&@6M0$XW+n1is_6M z-2a<*jmJ9tBR7wymk?iC9uUH1mZ9J3>+} ze?g@LnoY8(iTU?PjsJ1(Tx#OE9)zTvA?Nn1F6KW zK-%t>uNL0n3_hV<#O4c0v^T10Pc#LW@1-*@ugFKpTW&KMRvv6&Qx7S>Q7hUfj9TrD zh#6U=XNq@B(Lk+UkZmtMXOWNm@?UkG5_#OuAk;WBLgZqD2+ahXDt!`!LpSw?ispk6I@%rF#O zOK-cUSk1O|{DjETFPJ$*y_ynreHIzKcQvLQ5cfld*cgZR_ud(!NSBEUJ|88=j@@uB z&St=orTP;vp}|ZGzfAC~3P*v~H{H6!Ei2#|u}Q~fYN0ce&+d{ixSzC2-APfoB{L;- zbj}9|Pb<9-alDo%v1h;g1dZ>tKA@AlD^TzQA1S2bYXVIHF_|@C!Pk`Nxifss39e-B zWiOblUR6>Wqu4-ecUw-_OcDpj%^2DG0jCawcfpWbcJXtXMI+K|9V!ZAmoMJk7#d^n z6CLW08R_?1+A{Fw3MiVN8Nt4}TM5SRS;WO)cPSDj zDCLxglu_+ytbQ_aSI4YNhEjW)_87SIoHxZ8E(^#YP~PewKHdkzJZ?illXiL5epcH2 z+f^cxJ9+49^VrP;_^{qD5y3pVoLWwz&{A~VZb4no6Dy-C3>O*Ms`)8-Fz6sIZ|Y$l z0qJpIok*`fc8_!_p+JgqTD5JY!xYCu*s)mDKN^)E**0~PJlfIiHu!JL*}cr;52n2{ zpOqWbqHt}RYU6xXl4OC1_r$Yz2}Qi}UljkVs`4F2*kb8L6@?~+z%^B$>UQl`>Tl6E zqyv%+k>!R(L+2pw2`7`GSUOAR`vw-oq1befKaW4$r?p>-3OuFi>fJ}mJm$T)XCj=V zV(&s-+Cdi$OOAvJOw+1EDkpzd4Gu#!l+B^7kiXi}qH0MGo=A;UpmDT{4thfVX~rcqw0lNK2lruyg| zlA#Y8?K?d=5-)mG{pyPF$19tx9ZTkosjS%ZQ+>}A?WHG24s| z#|R?GMAfIwf2$HA6(7(vSR_QV*5<%h^n0A10~bSpTvZ*r-V0JQ^#QOodB9kepVkbQ z3DjeD8$oD!EKm)in5^0Ov)H-*-#gd4p=D$yw^*kw6cuHhie#L%$K;0>3*$=QHu~Jw zSOSfZ7q`!wEb~e*W;OhimmJAQ#uIxY(POI@etbpzj{%aq8}??0~FS}n-H5R;~g3)OEFRM6T6*ucQLg(rJvqE^t0@QDC3mm5Q z-;Mb=rZAAb+)0dG`UOKdO0#K&6x%(K_y+l>TaRe$^;F%>Ly6gIX=a`TV+Yd)poTEB z=~HQo@_tQ$Cqrr0v-~{QCc?`3|F8%Gfk#netl&V*AXXd9Ud&4e3S$Hwj;l1=W;R#yH>ly*?D7 zBc34GZ+d4>^ys@rxSTs|zs zi|4bQ-c5A$rI)_0Vvk_al%ZTA=i@r`n7&TuFl2#I(t78d%X?Z_Gb^gnK}{@a8dMs$ z6_uSqG&o`L7OK#RGD~xe@>=8L+AaciGWp49wnI&`ffS8Z>&cQR{Lk-%t{_tzd?0iEgs1;K69HiC0rA9ug#6)z^A=XbrP!J(poe~hli4yj zqE?nlOc2ufZKne##2Ph<<+(u3L`@w1DZ~X(7}!tU&B?(b{42EH(`tAz4b{-NlbFd# z#8|izx}KuWL-@gY?D+eCsaQQJ$;NJ0(2e0-WK4H#+ng_zhM%&9@D+#9)7NPp$MmhwAAI&v8>Ad5yCImrL^*#{QhL7db9??PA3PAU zZZ8kirv6CCMzr&cF#Nb@A)cU_)w#~#IJW)}ZUi`TC5`>9(+4{?a=D_vNP^GsUjlS9 zb5Z3bqI;K3>u}W*Hm-5ofG4NOpb~MT#?Ir&VKbsw_H5oEyutp5d30^-*cXpo4xhUm zEB6d`MVtg~rKk%oBa$K?@x&~Y4{dvxy<6`LPT9hjs-Qc`^@4D!xw2Yx2lmO zvE%MLEaQ#e5>Yb4BXlG`Y%%=lX&i%_|5yN{sthPE=2vCuSbw_v9fIhGzKihw(=u5^ zR9wkM_s3XolI!UFzE0+%BWbmj-k1qya+Du9&w@~gzH1?kg0JG#NW5e_GgI_ z7?G0XaqDnEV$)oztbI$c*?5Erqn4)TJ~Sr!=I8zMDv910h+ru~f4)p6HrsdqqcNb5 z`ZH}<7?p(lbqJTJieA7;@i_LE7u5c01`2xhMg8=-{dL<$)_jXTp2mT>{Z{WUeUcf& z>=-!#c7@nzvwsLOGLd9obTP%2R#w^y@fx{;MO`FQc z!>ceNg^J03>v&GXj)xUnulZ{W7i`#bP>Ld#JTOya~Y_jN&@%!kh z5D67RV=N$#sxpoiYRE=NoJx%H$imeU7o6&3kFqVzaGJ^x*IMBw_WeVa11n)Y8m1F! zXrmfWV*k+4P}rojaoeIo7*?oj-+~X|h8L1cuJj#qp(D~*G;y9L(hQZ8B*J-(33@ba zx&Q7Zoc>L&$daSIs1mKDkUcz0#35`EE+da9Vea7jBHu8@FjSq3CHWj6GMhxLgbi1) zt~H z7jBDeWbmvC=z$K=eI2$q=Fgo2m3b02K5VFHe7fd7g!uU0ngCHLe-a`7e~o?jBbD#} zKMfKY>4nUs(lC-ej}RdwdzU@3IyUF1l#x|gWfs{h|>wIgM)+PI5>{; zxxK&tz}FA_av$fuuIsrTkLS1?&dmS=I}lrM!D`$a(BFwKmdG8&hCKcr4Q@Q=S zX6e>?kYKITJ8n5$phYmNLrgPvMN>a`<>OS{S&Sw*mH4u3`l;kM)rKYUY<~h6nx^xOOwS|4SQr-ix*PP)bpJlx7%sdz_msu8ZRqS=5PC^)Sw^W7DYmvG5FV{a@lC3#q z69D9nD#Q%#2b>NNGsx3xjOp%J^VcbU6u1%evBX64!DAJjKj$1x3+9UcH9kZYD;FD1 z8pI2Ykhl2*Z(pm;NOv9j#eVhd?XwT{uU+gee#pCh%jS`a;lnicClz??(LgfodYcL@ zz&PlYsUv6X)}l7Ru7sw}CH(2w)bAVQRyGq>_3`m}Kx>n?lPxn z$Z*}mgvTE(Am&y?!^izOE(SdDYs$Xl$&bx^%=#k|>Tz|hE9cJ_42o@4M|-50wAb}! zT3?PEGHZ@x`lZ*kw&qPz>8p2etB&W?N=W>g_2eHJZIsu>i{$TIq5Q24GOdmIPo=zE;&QjL57k;X1*Z*lp*von5*EL-=0 zV~G9Eq(9@p>ZWg#e)Ij3a#7(!d6trqg9uaj@Ty!b;d8gVw%H@cZmw^d-E-RLLE(;h zJOBB<0;It#=)%q7zQ^|fC~Wk<)=uHG_to5{m#?L6iQ&cG*WLHf^1cij}Y5yw1r~IH)7GWJn*ae=O|K zx%JwcgLlVZ1#9!-HU?Mmr!C^6LD|JY>|`4Y1n7oDay`8A_Ib%x_oc~Ox3;|&R&pLM6}GMHd7)3~Fj?n?$q6Rx4Gu&+$Ba%yAq^K(`Y7cUIKB|@6b_d)+?IoN0 zyJCd`S1)d@ZOL@K0i>)4B^G?k&gsuGz&FmnQT}5AJKO2B~!Or4_5`M&;L@ za($n7w$sym|K6Fl87a4r%zxeBe! z4GPT+xB|A{iGl!m?I9->Diun7O+N$Da%1?o=CMC;U8G-Ttwy$&x(`h~*pNi*Ph7`Q zqzis-G)G+hH^L|b@#pxj{bVWHKTPg)`6}BXH~sy&UpY4G#eXoBDZKgaYUSDeqobqZ zC-YCu*;Kpc-aD2ihUp=39^v7wUf*W|^6|S7>I#aAx84;}k15D#>fV$;uHkget$I<; zl?SLN5(iDv%4l!_;zx9J7k~7AR;PR2%Mh_a@t@NP@3R=i1w2dQzg4LYhM&46VBV9l z5CSw#BoUJ9(moGARJ{F0xPtZ8pAS|e6t2T_hQFV3Ir)(q%>+93iSAJ}obum<0}bE- z=JQ|wL^WmQ9sgqnji1%g`IM8B6X5JaceUvWL8gY8)MATno_|-Ulks0{jK#~p{=U^b zq#4o!Qz_mD_e-bl>x@rNF0Kp~$&MaM^jTY5{~IbcWH^QsA^sZ)h|)M*al!46zYZFk zl@|TgN4KYmZLjF0{MSwq3zv`Ax*(R!dLPy~4PxKbXYiH_mbc0E4W&cQKeVYkX%tR9 z?ak_2cJ+PZ2Nf9=X9Z2y%8S31ZO^;yda9w!QZDTGVm7x;koz|=N~>Il7Tqs&vY%^X zOD4zt(%mMaiIF(M73J@e5)$v-CQ_EXiRzyzRsPQbgEC_rH|W{@R7uB034E9zDaGLG z4<+STIc{+vc3;f}?CaBhzSQnB3|d~cw!>YibY~=+%!En)Ajog4Znn5c^(ehS2TS8< zsJQOpbf3xMDzi?W%dZ}=Z>JUz4?dc}GeVEa{B%4Og~S&@wTUhaijOAMn44alOw!1tIv;ByYgJXP(fHz&mc5R( zz5O)|&?__@j?ddXIv~ZQiJNSeGo;SnziOQR=zb7Ocd`B7q93BQM>BZIokF}ja0Tkl zD{52A0{S;I5&k2_>3xY_>e}9u zrMY|4@`CIWvztW~5>iqxj*n>Fx2v8HDHO<8MCaq*aJB@k4jl=Fc6e+gB32S>HwKNx zZaGE1@FKl55uYf2t$Sb05p4g)E)(n*zWEHX-+K4o&77&TSqcW|st8Mkf1Q)>Gsr)@ zomMzbcg@BBy!rUjt9rIe*VBJ;7hQaP(Z%fSjiq`&Cu{jRpu9hD^pT{3qDAvdDXrOe z3460?_{$pLp!TyfH7;LsWN~ko9?booQ%;cxZuMH_R1|!@RLpMJ`d;V7hc#%r@Wbnn zV(y3eYZ{|pv+6+9M)uI;1pmmXsoV+`qB`J-F8)hne-69C;r3^8nMpi<=h~U^>FL6o z=MQ6kMiQ80Uk;9K!NW`Y4i8mC&#+5MgKtp!#|Y-#WpD}xuSRpF`5740b}w$dw=^p&>i#dU zw@a31C~b-FL}7j6j6Z!x!J5-PRim7+lNvI<3?ZxPUq1!~r)BIY!j{fNUiqbUt_XCH z2Ku0e`K64SK2n1_a^P=NPupaEz$;HpO#$QE#o{>3Vt)Wf8T0d{aWmLz#+~UsIf4TC zfWe++T@Uk1g33{EOxdcctBt}6@!=Q$ZA^46FW&%U9&}g)S_7VgmJWYL?!`fU%jLby z@9PG;IcM9v`j(BBq@ODbie9V!n2rnoT8hgl&c)RKR*^0!_|wLw8v`MD^8Sh* zXp;V0PosWdwM54=k(D(_CEPF!FKLql-dnfnj${{6(TTqMv>jOGTKvu;3qp6VK zqRT)bbhk;>ak~|*wEZyVcvw+EQ7OFZf}l#&r(qAw*1E~@A`1+t zrHI<2hzQ&`@w6Kg$W2ZzEunV|s!&2rDxYhc;^}&p0PcTQ!=*EaqdjL@Sho5g#4l%C zG#50?kvt4py8rU9CQruw1r>J#MLjS6A|9cM5A)sn4=F=KPq;@j+?2!f)2!-wxQq)_ zQD0r+R)gB?TLL}|20Xmk%Yj%m^5-8*R=7V9bNmlOGR7NPSz0QG&oiYID4`)DM|X<` zJv-s*p9f`gNq;fYcd-Q1*pJ4gVn}K`G6#a8L}9*6ZEX6=jQYeDrfcRY!h3TnPbrl> zSvA6q7=O(_hvwgK%PO_Bl@7U<`oS`?Iyr~fIF&c6M~H0Sq`n{$MhG_4a*>+LMf57t zfJSEJL?|^;6)`nSF)zs8nEI;%l1(X9SFzumY^10|)PkKv$gqhG+8u`+OOGi^PYNmE zvk%FWGUMJ%bsGy0Q^S_P{}hG$)%*dTYW+NW>|JZrUO3y+^U>)qR?9{z_91t`g7q0s5N@r}KJSs6ve6KmjSTVokbX>PWe zu*QGJ>|fKI7$1LnmygpW%C3Dz_oav9vGZNQo>7>*qF}O8$nMS1%(J}Gj;>HBG>*3| zG~ZaX2`AqOYz-0iEpXpR>+1ly2;U_Qwq;X7(VZgj8{7Y1@^3YXaoHFiwa>Ak zMR#D`BSik+Rsae!IxUTzS5wRO5xXWEF7~%nrGy*j#W8tm(Y|zr;6y)k_VFQX&Cg$* z4d=O9r5q1 z^vx+>CrqQq`v&oV29IFuMz!-vJkp=kZ7bQ=6O0&x#{kNBOh3laol1vSTWq0H(vsIN zPokqYQFE>o(C!s*pP`_mM)&d<4-hYQ^9i?6e=>sx{MwbxK$Ha#^u9d8!^I`W@Xnpx zkKToHE-_0~wu!;V96Hw*{%v zP&y?#npD%i>1beqdgEA&Iy#EF{dDLZEz>|>D)Dukal!KV_5u(-OI6!DgTaZ9V?p#h zr~S9dAya8)d3-qY%~aAex(s6|v}vH7?D=RX&8ev@*4y?u~NTC_p; z7H7N#KIX*NY0me*NqteLOfUWVH(CpYfzfWW;kl$+y?6RJKac!?8!nSrd8O-R1Os+r z)6%~#4i*2`M4gIn0cHC|YrTwncC_&GX-i!bqNiv1hM{4iD+xSJ{}*F)Fwm1e8v*~` zqM2EYh5K1KQYW!!(9Ul$fnnAE&CoHqG<&qHSc@b$5LHG9!GRj1^!x%R&)zr{WW(ce zIAsQP^wljzNWHhG=Y|i#CrP&}BN;~W&pY{6>7RNQOXh4(NiLIrRp9>x$HtoF&v4oF!<#S;L zbuU(j=I=oF{}cN%PLg#y;U%yv0LzsF+A9KOs^aS>pUnILtK|7zoR&P8NZD#5h1>v*9-}B!e3U z7A@WP$)QuH)iGd8DTn!?F($>CC|Mwu0r;VM80@Vs4NgDap&$LO66!zKqU{im6zqKh zxD9J3C;Y(BMX+9GD?UH6LgM+t<(RZ>+pyAMQIhb(Q|hq;kX1vc?CPqjPueH#klTv+ zp&biCl^~KVs39FMWYyOrf%&Z(4*P4b{2gXc;yw$;&V)7u%`2f&gk8WsX@I2PUEz2g zyOR|+Nc7QO0tYSX`Tk^dX_UA*Fp0ye@m%52WzI#@w zDw@p1F86uTTO}{$sJHfL?Sm6=*)8Ht`2YHeqh&8cDWTDnF)EIJEEb+`RvOk%GQZI{ zhA1u$$DTUMr*1B7C5r=2_zVzjHh5s3B*k7i`g?+zHY$$Lm;N!ZCLSVl1F$_kOj%M6 zosp>I=Go5PJs!K99B$Sv7hg5n$SL76s1Lp!L1^c}9iT%U+r~Wp*JjQBY2OS)HoJp7 ztVBjM4zGUO;kS6V=M_Gl`PnA3uBolJ$Md(5NlS(VAnbb*fPR(j91pItA|b7Lo40>B z9Scc2k>{h&a{N&c#7p{{#WAuTV=ntCHD?+u6kr_aG2f zv>FtKiJS$m_aTq^q&tquwNA+G9)TvLj<-Jb)oc8hS*28R=o~Q&PJM z%l|%ldiCf?EsjGZe{0GM=Mx)vdAHghLU>zySW%me8y~m+P3mY3^=4Ez)EEP~nbz00 zqJ0atS0(;pz+P@|S$Tnis7J!}J;f>zrMIrYSk^A!mM@m~psRp@RujXfh+;QwM z&nyKO4H7x{t+zs<#sl+s34TBR`=BRZ=SjicxJK2kW)V^iNisP|H+cqy3g0E91X^_C zsBm2Smb?>5o&=;b690Hf%D~a;)sWLlTvGNOKO`}2$!4X-_XPjT)qup#dFm`r3*bnZ zAo%)ZXuq4$3WId?L7$!@4M{;$6ag)b+>_uJQ&d0D-%Sy8_K9rYuBuc8RVSN(I01`A z0Z1PdVv7|y0AG^yS56Ht6|njPpiYsaf6S{Cs%oZBOFJRw;C?6b%`*f{f1h^z=CU!o70P9xR(pspHGbJS0?VKwnxx zd}s8DNea z>=vdEz&aN7649fn0Jgye!f35)rgwAOcZ>4WqD@RQPvpEm`NA^qa`@o}M$}w5x4|9R z;4Vrw$;Y!X#T-P_YU$*<+T*oaN65<8xJlu)y=#}b%hujl;YYVTnRiiBXq+60;D>_e z;QE#(#}lDyV;fJaWJZsb$&?E&OmiCmMtXZ<$%GKg^0lo$m9tFrY+;o_=z6WhbNpiW zGp6$CYAJb2=m4cffKA$^o_7IRc>7@@zCU%HOX6Clatdf89BL zI$+pnde5u5G}v#Z{4JJwY|+GD=qcnMy7efyHge_W3zP1q{PIRZvUBHj znNq~=O;oB#sYKt6UGW~J?coxk5C!Xz8{k@=|%BvE65_C97)zGu=2Z}_}2*_iCKyBEsJ1UfEFh=wTj3(}WtBh=t>9!bdTsr)9cy(YSWHq>5jRHRA zF^O3AU7Q7PPKQg`E2S#&@~V(s$P3os-{|6+xt=@g<{Fpt(N%B?af*Z3arT-XNBzxzsH^e ztcHAuMM6m#wNY*%D4|fnQ`sNC`1-2$)w8_X$j#Z$!zC0uuBFDRZPSA-YpZ4ufXXip`?a`FQS6Cd8LdELD2FpJsAANKJ~hT2kn~{VS0(}&M>vn(vf9v{xc?Oxd#i~ zz@{K}?jY+Ur+k~qFI!QQCqq8~Df#*IJIyMZY&C`4^Fdl7<}UbuQUzS{)q${5*jpfH zVqDsw9ncK#7obaXMF4ma?+>|QLLKpt1u3G64YQQM%M!F_1#f3NBm2J7D9}C7 zaaNp&4_zed1~rd92U7F5PJw#(M3OQcn^8uJGrvEG>5b3ME+bN-(odx3O<{L9vTM*a z!l7fVTd#=ggw$g?t#z*d%$KF^A}|;{RdBpopt1k1cK_XAqT_C1YpME%S9s~LO#jK~ znij!87Z(>2gc#{`a6;7VpO{)WNA!LdsX_&uV5zf0j*yU$7$A_dd!5^r-4*-pRs`Yk zVY94&$cHcc?zTBtT3ISXmgVfGrgkIX?RW>gNXOceG<{$}`4dWV>$sl-xh~tR_lrR7 znk#R0Of?fX30(BNIA1Cf_MU=VkiL0%T4iRFy>`G$)bY|;AOo0rodzvPPQCzGo@^yj z_E=kHh)Ui@DTucE3m=8XKaZZpLmcq{p_FCk*XoAA5`rrhWU)^GLexa<>K6imFh!Y- z^anyiM8p0th-OAR5vJMG9BKn+BibQ@t?BNe;o+ZKTb1i2a`wxy@KWtx484V}&%zV% z9se3yfP2zQ8#9etP%c&|B81Eoof;Snq8^Lql%ic363b4Ui}b;XokCy`4|(^W7|~1jdWe3F}HHbTT3HzuD|``+`%vjw0BiIj;=O6!tWL3dhyxBx0esCp;QX>ol5 zob-;%CKK*2L!d3tcTa=1=6r(LYs;4p=!kVUlUuO;;&aklv*3ktGhk`2IZstqR^~=7 z%26OI#t|9|BY)DAh~mzjK8%j^Mx(W1c7Ip`1OmzH?>A~{ZWee&zgd>n-91K7DESOb zW)c+Kkg>5v`mnB9n8k&T`b+|^3S?F8DJo(;v9PRgyMX5Y#@X>ytU)#1Wko@J9a&QiIdmBe=%_7Uy(Gv!kZkPe#)1@0aEw+I@F6$q@io1Vm;)db0>i7~BX6RVsoR zEe<26It4s$KX+7$ewA2xM-aYr!w=eq*m)aVeF=f3R5) zbvUxMUnKsafDX(YH>#v}#XE+)(+9xR?hRfTYFCb2}7#Ehc~JGdGw!xZ&1ZLmq*iCn?2WpXr6U3)`x6{OxLKbfV z=kOIIxV6>Aae}b`t$IwWw5J(DkCvpPsYM#!^}y_V^?@(_kI_UmM1bomE=x3uFgn8?Nh%%=4_~ISE-&Mifjtm6&iyyAa}Ov^0XT}f z`ljBVLzO#t^stiyexUP|31rADY$vUtdrnL*04>9x%*V#WO_&;Xr_7w$_xtZ%O-L*Y z);L~+{~6VDYC17@2)I?}=)0ZNk5>LZ%;NL)tCLeiRV&W?sH?{GKzei9GY>(#Y zKaCO-q-cN7-cm?1dA`?GFt@$Fu$|O8tZ!aoXl>#%19Nwvqbu0H0t|JodT0u>aM;T@ zOztxur7!IrKXwL-B!HCwnl8svVZ zQ}}SstX$Mz@dcTHD`H2@9qa9WpD3xRyL@pRLY?8LwMl+} zeqJ0}yG`5B$Po~DUR^6QKCY$Z>IKc`Mx}rk{-g=k${hesKPr=vv-jhR+rv{CYj;4| zIbLH;*u)`VW;w=p^{xXa{;l_bl~)P8CkWWbr{KGq zaF4lxi>!Ty5)zViEiFF=yY!TSRrOgUrvenbeMi^_)+{N2PyF=-hZN7;_Grc`Kj>hgmF+F8_7T1^L&1buZtRjG^IJRjfHWQurODm+DA5;aoc*4m zScS#ncru&TG9&WKx6g$*xNxwE5}!Q6YSjcGK-=hH6mRP0;or%j5*YSl?=>U}^EbuE zGI^NXQvI^$Vf+W@^h~q3BGD;3yXVjSfG`6+Imv&AKzQ!wFC%e&gvF-T&>x!rw)jB= zm=qN0kjcZN6t!|!JVgX3jbOBJa{;FTIU^ubU=XgSpaA#>V&c~*qdMiN4U^;Fskyje z?trs3iIImVv1S%YAO%v_S6@pA+QHb_I_5h8U~FLMUR)MHGdDh}ozm9fV~eY*uB}7V z{p>kpqRqWD_0^KrO=8lHjS*c6&{5{+($;k8PV7?EN6MOP%I1EPs6Z=6i46=_fAzdR zaJHOy$!k`N|CXq%-<(Y=b4bywrEPTI2tF+)%Y4Z5g@P&#l6M|eHtTb!8hN8*YHz{p z%aten!Ht_n4X>IGrOoh_v;OTIL;UByd57+J+R@S*$!MF7N4c-6rbG#gkDizG21G{A z?|<9eNcx^}IGjMbeotQYy`_^K-pDp5b$D+Wp}P<=g>O>7(ju$d?hb%G1U= zN-M$&25mk~ZS(QaM8D=%Ro)E-r{?645ynox{?t4Q_1u~6pPbu$b@!lcc6G$DB=Sl> zN$L0)tBdW7w)En1E{E z6H#fZLoXjLyPIB$HosKlbPMBn6mx<8AsHWY?D!q8 zFKNf&m+{L$Lc-%2G=Hhsjb|CZ8e&%ckx#71xf`IN?56D44o@=`J-cmWn|bM1eBsRm z(TmPsB;J+0KYtz=HDn`nH>JM@+N^WY6vpM;zaja$$6)8nD0twa!omecqe*1R#uMu3 zmEt;YMYt8nWGG@8xO(EM=|b3h^9L1sT%xh@N^xm{^c=>HHL$EJt7?+tCUH}5Vk?Xo?m=By?|Y-efL zyHS`g3v4;+T@v`HIsc&*$6v|vp-g7}O2SaKnpdzNpeo)tG>x z!*$;@zESV=sr4E5ai3y&3XaS%m8mcWw;kKE#55@@IJECp!G4)SE)WvvEmB=!>jCpU zSnD@sjOGX-;GnjMzpe zANZLt^k5n_Vep=Dd#mcy!Q#5>>NyMeCMc70u!urh$Jo=7K(!J%7cBwbnMfH0m$%&5 z-C6`@7)}TxTS19`xJxAoViF5SnFI}xTk)55s&Q#V^zMyNM@Rf5ZwFX zO*dfL%YW-@34G_m6;Z7vBmO?`jqp9;ST@UzRRjJ{_Q5sI7h_~DTqA3avFTJZN*Z~7 zgM#YHVlBrd1Uc?D!GTjznxgTAM&%~ldA zhg#pLsK|md7U~Jc98O|#PYU$)3u23eTnuLaY};h++04Y%UA$qQwt8)3ihC?m*Um^| z660ERLxxP7K6ZRAm8xJE(oY-TRaU^;cFUt2G0$9*MoE>)n!Y_H-njvzq}$04WM*7u zm9-$!%8D92-tME1Y%3EU(Il`KGYEa8;U<@!x{ViFJ2?6mUj+t*vc4nw#HeLW-x5+F zZ}14>U-H?{8_93--*r-cJ=+3{{e#TWa-(6TyEU9lGse7lf~|#|``)0ZPV|7sUA_~a z{+&-okX_&_91aU^yZH_&e1R$YE`Pc|jY!`HAw*g#3I&*d2H*KndeGxf8xxnxQ`yc{ z>vJ4f4bhmPuBS!JY*vFw;Gl}TFa1ij^Ou5Dl*2PmZK=*k8NaF8QMts3k6IY#bbj93 zDIY^g4{`8eCntp*X?l~sV`H4<&0n3rJ(|=wh~Oqaikyb>7p5K5W*b@Y>qYpXWbqN8 zIw(V#$op-HCiRD&f}jp^RWsL^skpEwpTAQx-c@2z+xQKWt&{_YaK`;dHF zOWxvQnnjEa*f>b71&g(<)HjjrC`@5qw*~tmt}Kw&?d@{Xy`R^Jn@X)#jYc-q1h+Xw z!BV~Njj~mYRQO%L=_2NtreKEg={cR-VjJJB+mrOxKumQq_QUctEJ5a@h3(V$x>kRm zxy1@w-be7%!vh1Z<|P#r4<$CAzVly=LHiPF<0Dot3XmVZ}nN#wR{)?`O4S5tSyX z&iyup1q*qua`C@Ul*@nd@wg6>Nb5*c?`UCN%P7IMe5py_+d zmRi<<_^atpZWC!L;n49&Tp&8KAUw-z8;bS_%ld2i#LIqEaweM#d*gTBsSX($L;r=b z2nHX~KP{u~Tjk8Ewu;eqXe8{}GopnpV=$4NAqT@WK~{7dZ}P2l+h>C% zsSB^F_!+)h^gk5n)0f4S8NE&3b23`wbJ9*XAb5R#e24X+i;Hc`8sPkZ0J>+_aDuQKYB%@DBJHT;y>!RdRCK~`WH4LD|uANkgUz>pd)}1;j92p z3;+AfX%3VBp{yr!8^CA%u=2Os&DbsvjXe68`smpE9R1jq5+dwDjk>;n=3j3kQx~wG zPxYn7&yQePu(HjV<%#E#SWiJ5s{f;TaPp*~T)&c84%1ppvF}fPy!7X>%D~#sEvZxG zsYsrRYQv8b%A+shO9aGV7AD3$q_nYd#r%DF?gj6hrVR0PH<-P+g-Fz}yLv)3#t7o* z;!st=-zDdLaoYT~+L_*ak1vU7oinxQE4-=eW?GZ(7Kl8Tnxwk~v9q%y2Ci))f{u@3 zkcYA$a7wC~hTqwJiTwR;@jb+R4q`c;eR}RbpI~rHnqgdK0bpcIR9uxiKZe%u_70df z#@$Qx)Z=tA3c9YIb@fBp>qionDixm#yh%4lx&PEvm2Z0LEBu>WOcNfDaJZ|0o6_$K zd^9AC;>gq{$WwKNGRh$%943U;Sbc}pB!i-8t62JJQvJ)J%ue1Zp`s1u3L+~w;lOmE!PaEd?ERZ zf3tirq~ZbZTH434%Fjy8tI&!=*3n&;sAKLl3TG1Y$||8@0n%gZ&Hr+y+k*_tR#FHo zi#51e>T|7M9XIA-Ctip^S3`)N-2XYlU1fv2$>c}e!r1vvd%V}1YjW9bFssOD#Pp`}->$rXS{#CRl Date: Fri, 24 Oct 2025 19:44:44 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=96=87=E4=BB=B6=E4=B8=8A=E4=BC=A0?= =?UTF-8?q?=E4=B8=8B=E8=BD=BD=E4=BC=98=E5=8C=96=20=E8=A1=A5=E5=85=85readme?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/ets/entryability/EntryAbility.ets | 15 +++++++++++++++ .../ets/entrybackupability/EntryBackupAbility.ets | 15 +++++++++++++++ .../entry/src/main/ets/pages/ZipUploadPage.ets | 15 +++++++++++++++ 3 files changed, 45 insertions(+) diff --git a/FileUploadAndDownloadSlow/entry/src/main/ets/entryability/EntryAbility.ets b/FileUploadAndDownloadSlow/entry/src/main/ets/entryability/EntryAbility.ets index e4da2f1d..707ad84d 100644 --- a/FileUploadAndDownloadSlow/entry/src/main/ets/entryability/EntryAbility.ets +++ b/FileUploadAndDownloadSlow/entry/src/main/ets/entryability/EntryAbility.ets @@ -1,3 +1,18 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + import { AbilityConstant, ConfigurationConstant, UIAbility, Want } from '@kit.AbilityKit'; import { hilog } from '@kit.PerformanceAnalysisKit'; import { window } from '@kit.ArkUI'; diff --git a/FileUploadAndDownloadSlow/entry/src/main/ets/entrybackupability/EntryBackupAbility.ets b/FileUploadAndDownloadSlow/entry/src/main/ets/entrybackupability/EntryBackupAbility.ets index 8e4de992..0a97e21b 100644 --- a/FileUploadAndDownloadSlow/entry/src/main/ets/entrybackupability/EntryBackupAbility.ets +++ b/FileUploadAndDownloadSlow/entry/src/main/ets/entrybackupability/EntryBackupAbility.ets @@ -1,3 +1,18 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + import { hilog } from '@kit.PerformanceAnalysisKit'; import { BackupExtensionAbility, BundleVersion } from '@kit.CoreFileKit'; diff --git a/FileUploadAndDownloadSlow/entry/src/main/ets/pages/ZipUploadPage.ets b/FileUploadAndDownloadSlow/entry/src/main/ets/pages/ZipUploadPage.ets index a36cf6e7..0f99540f 100644 --- a/FileUploadAndDownloadSlow/entry/src/main/ets/pages/ZipUploadPage.ets +++ b/FileUploadAndDownloadSlow/entry/src/main/ets/pages/ZipUploadPage.ets @@ -1,3 +1,18 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + // [Start import_zlib] import { common } from '@kit.AbilityKit'; import { fileIo } from '@kit.CoreFileKit'; -- Gitee