From fcccf4e0698b9b3f40946885823197c1320baf1c Mon Sep 17 00:00:00 2001 From: z30023234 Date: Mon, 11 Nov 2024 19:38:59 +0800 Subject: [PATCH] release v1.0.0 --- changelog.md | 17 +++++++++++++++++ docs/milestone.png | Bin 47146 -> 0 bytes 2 files changed, 17 insertions(+) delete mode 100644 docs/milestone.png diff --git a/changelog.md b/changelog.md index 22af619..d3538e8 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,20 @@ +## release v1.0.0 + 1. 支持远程证明统一框架,支持快速集成、部署远程证明服务 + 2. 新增通过openSession注册共享内存机制,相对ecall方式减少CPU占用率 + 3. switchless机制支持配置TA线程绑核,降低频繁调度切换开销,优化REE和TEE业务线程性能 + 5. 安全通道支持使用远程证明身份验证 + 6. 问题修改/优化: + - 修改switchless样例编译方式 + - 添加__attribute__((optimize("O0")))来忽略编译优化 + - 使用memset代替explicit_bzero + - 添加检查内存访问权限来适配ccos + - 新增配置鲲鹏TA开发者证书方法 + - 解密失败时清除解密数据 + - 优化安全通道验证报告逻辑 + - 签名工具添加无效参数验证 + - 签名工具添加API_LEVEL + - 修改itrustee_sdk中openssl文件路径 + ## release v0.2.0 1. support switchless 2. support secure channel diff --git a/docs/milestone.png b/docs/milestone.png deleted file mode 100644 index 2fd92d293d5dbdf3426617cbe1f8b107228a2d7e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 47146 zcmZ_!1yq#J7dVWAlypjmu)BnUbeABtEF~pNcS(1*AT0|l-6hhYq;xHPtj_R(Q1zVl~GUK zG3qlQAfTwI2vs0xJh8U6MnO3{&M;A+|C+gUSy@@3%KvhgE;~EBetYL51A9#Np) zgFCcNB&x7+`GCqNCMNzhs5|+8nxVOLR#a4=K&TNueE5J?dxR?go9llFL@ivSecAg5 zMfGy-`d{G)t?~R{;eSu({vBHNq0jWy>cs=9FA|CT4^Px+adB~|CjUNbj~f~q{&jKb zTwGj4t3E+<{couMEd;f2G_>&fYl+_Te?y|6sHvSh|CLc)YK|No9X)OpjO?mbBCJf-|}mZ+uGVt<+Hm-G{^6#N&n6JACjmX)$zZ)>fm4fe^1R3$=4H9 z7oN^DRD-AW$Ea#gPfyfn|2^5+*=SXNoA&O|YK~Dgvu6*e#uLZ)s8#Im@Bg1c(9rt( z`%&GiM+(_dRd5eYH7zs>y|$5NhY2Lo7O63UL|PsOXOJvpvaH7XEFzK8&!`d-NpL4;Ue-YU+KUA#fkbK}C7L9WddOa+#sX61?ckItI~R>q;Z6D*m5AorE{?yCp(wp?$jMOVx z(2J9vTSsn;Z|_STI6DL9 z?M3=eh`OFaGGLm+DSX;D_pK1pBok%%T%UD0OX~=X5Uv0u%|t=4x*BoEB-egenc2mh zJL@G+65HMQ+6Rxjx~YHWU9?rkopy^o(aPt2LKt9$0I*sE#|$1g%h^K$dK z`YBoxJbwJy{Az93_1hLjbqifX^ffJ>4$Q#3l#fcOa(*l%rBR#(Qv8jQ;g!;K2o3t*zJS1!f@p?JDw} zB#zl|A~A&5dr6@Grhvadiw;54$S|9BW+1tZsd!KNaDADs{zVm{Je)jcE=g&?D16fk zDBnz^kzvlAb)gjAJ>n%_rhd^p7myWd&@Y~;I}^+rHIBY|q6d}N$yR+C1Nxm{ILpwe zA}AkBrOzQ!?R8uutZq1)jWexUI!-Z4Q~pi}YrYt$awJzH)55$Ocqq_Q5+~`UiO8r# zK!;>Zi*a8dl8K-(yi+irx4l-jvEK)7q9ZFdJ8eahkKQ*E&`^2pW{Y^wu5OKV1QJMv z8i^(2iRJCj$eN^oxnt$3l8vv% z@IL@TW5T~!{%vCYD95q=$Mdz#)cO!DlM@NqyFmuXB%{XPZ;v=q>&*i=hTcx>6L!s_ zn=dTMzv`tfO}PXf{AHxi)zvU76ZOa@x1)NuBAYjmOshM=Pg{*nNv|cCu-Tyaf}(7S6MV-#`RINXS+DUAxvwsORZ8YVzx^0|U zJy}zAB+B`d#t)up9ceOqI&4jI=5>WW`zonnIIF77h$;M|{3B8GTEmPrbzs%v-|Jta zyjAqoD+>Xy_7DG@)0Mi8x8y_4^ETqN{$O>nxDY>kC_|(MBZfArRPo`5U zhvbH2Q(P|o!joho*?pr0vvNMKe#QLVpo>XLk7#8(!u^j(S^(>P`Xc zCkKkDy1ou>9eX7D=QK6>AQ+A4tFv=~ha{b4rd8x1W zby0vp?h9e9lvl$U7UL0=0dh>MLod({w#W%91{w2cY+%+a84~HzwP5h5)Z`*9nv%Y)7=>amYCu}sj*Ot+|lk_evT-<@lADF%AyGVo76}wj{QF> zVqAN_8J68>XGheA(NUN@v*BA}%&kRsNiN<%`!fzssX5jWoa>ZYPSCa?=m$kVJJ27#2x(JDm=zID6fOLD1?#^fS=>aggKsy+;=p zXttZ^JUZ+Heg4fZNBiSO=k|oGbVY z=FLHbyfkER{-SdF$XK*&{aiaCy^^;Q`KJ<&H69W5d?UcNiS_VlrMP;r?`YX;u5-S; zx~F>UR~j8ImvX4u?9vkjD~E2({TgrG5l``CzJz+1#QgH2`_S7rb@Br_$Th< ztbJ=XD~;QXYpID0K{zdp#UX?*PJl2#MXgR|UOxow-NB^m=67e6*+N~|?}URPQ1c+9UuW2{|Dkbp)KN|LuQ zx4^bVPjVw~sEMp}Kgo-AyIV|9?`3(gzACVYOHip;V#>NJx!2J49hD|;x!GlX;q~SB zwThv%JN8Eq!qwBm;n^6PvXRHVZjq{S)KRYbiii=To|qNP=KkvOvc}+Z9*FL7t&`nv{(=F~ALlu_Li6r#y>ioq#PV>l zBnkr#EMqniJ)Q-r)RNQQZEKTFFD+7^>-ws=n`iJX8+VTp3HBXFbMvr`2IaG zC%Z2lGT)20EkgeI$LR6*n(58{jq?a*tYp0qc`T=H@1K?;GtyxZ1*jqiM(p^eIBj`0 zw_v3>qHbVCiFLLog9aYIb~0z2`fH=fIcsf!UBcZdcvB>Ch_YgnkkKz*ee>Ypzyx>pw3O=TZJ20yiGa|IuYjG3|qXA_apib%VTIz*pvUILJfGz znMeM{QiFXYjX|a5L-H53lGkv?hBA-K3U83$? zeB8W6+84IiL9CI;MoNQfHNr|@WJg7c&t4;7Le(y;WgN;9?%BUPM5vpPVUT&R|H@h5 z_vh3UPtWVGb;nM^$m=?Oo+~ZYg!6^QUzRaT(H*u}!eNB7^UAEG0NkpG1`8FLUSL%p zyh4lZ<-A19ef5?xaHy|P*W?G}L55?hVbRK2C}&J7+82O-+;=5VPcf@aLg|mrf)E^o zu{?)pqLPCWoZu?*)V{%kf9T1B0eV&vsF!)-eN_%mTQ*nkUA7)By9kGn2t=iAF)oXx z$QmB;7Yh4fye*%N?s$_z*t(PBWv?<}RVM)P;~S=)N5?uXT4ea^v=&6gn(k+)*@Z;uKRQXABV)*wvY?x?M5UU>8{|}J|ZZ9ju*-F!W?%>P*u!(b9NLW~M zp%Pr8WKFQ>HT+(wSCf4|w3Lkf6KMA9==^CL=kTfyG`evuDk^FzEKNbe+h;WYC#lEd zyPSOH*hJ4P!%@c5An%txn+k1y);8eoa<-U)&PS7gv#Ykw;D-yQ{rdjW%XCpWEbn7O z!koL_wP~Zn>m)4x&yBx#Yfue3i=>CiZ<(wRvb*TQOb-{oLW(U$aE?`LRI3eH#gSRau_;Nzh*OvNbiVn(u0Pa6+E zTluoOVF1ZwmC6w=87}z@0fTMl@TU0Hno|tH<^k_Ghc0Y4QjkG`Ze1BqC~kE6y}qS4 z2^cIo@9gbi}_gukG&S6Z4*k*8`OP$xj8B04kjz6e2)fN&7O*i~#$J@?6g82r%B#Y+7>8oPz? zY=Gs{Ak0W6LMp8-S1t?q+`H#_D?(H04Di+7R%fNE^j;;(tLLy%rR&tag_>Je!9;0x z>h^R`OGo{rgXwvSa+ko*_I4@$Xu8b23FW-Wh%C`qFKOA6D6ZSm%Slyw6A>n9leo&- zIZUl45Gg;S|6AMo&_2_yd$l~;0sEU_&b|{!o5>}WM2uKd`q+`cOP=FxOmYh!o+aX3 z?ZRu~qCDvf;kSVn_iEvnLqF_YwIX(KmE9yOf%`L%aD&}f(!;8%0^=m#qIXva?{ZV1 zPQJwLH6fb#35J38wJ`7bEg_mM#jGCq%7gaH=+w_2_su{hZj$wux7C(U&sX;dGBI8# z1@5GmeBCl6z_#boZGcs5h+*uF@dk?hHP!UE&CUeP_9{Pudj(!)^of2b^;LlOEL)H@ z>Ay>5c~{n_c&O~F-U+PanWOu&9$**NLvi<(GIfoQ!`ze73LI?_ETR@l${;kLobYXI z+4L+gYoXqU7At7B)DrQ@pW6I^@SgP|rnyw#O|nW(@iT<9tO@G^{m`mb2$Jc*TF_8IOp;Ew6^G!k=WTW} zFu;u-kPTh6vV+Gp`!r)9(8e$^R+s-A_s$YnEzO;Tx44i)HGhv0`s1td;@NIuTOmG< zkfyr^Rbw$O>S5tKACxR$Vd9H1;Q}L(`ZdVRu{C$7cO|R4 z>CYT@IOBTj+rm_hic#$ZefdmN`lY?tg2d}>pUq0V;ZfK(J8x={pGi%0;S|By?sxG* zw2elq5^*+6C6>`NKjWh6`2Ko#wAc_Zhv>U*ml9cl4O%5^OCaTOi@iEpvT!9udBuU_ z!cJ`Dv8nYF$EC7dmr^h3EyC4@`eSIa&a?qPl1J^RCeBMJK-VUE-^<9mYXXa>gPY5tghN=OOp+Nz zr4&!AylI!PnL5nyq$P@-4(vm-d?A4c>FseG{zE_P*#fd4etv(0Q&|Bs#&Ktn_*YiS z;o_Fp)0o3F#x;w59DI$MNt`!dBPlie0w7EiwsuaodZL$>;PQt0XQDHI>Mfi3JuZhT z$k<|$BD~2zb7{GS?(T-`BkI=dCzze z-SB;oE?4XfPYWyM6X;E37)lruZ4Kov;dJ=>`5>JF(rYA*m0y7P4oP-c+$Mvc|5*_}np(N|?|QJXR< zDERoq$6I+HyH&`iKU3-V?eQ2*V1U!Q>$p$L*^uL73b8z;3IF3MWJl-G%x0X4si62# z4*FX9Vf5zS)#&xw{7#c^d_eXI4o>4Q-*C-DkwoM`f!^QpGTAYHjUsWwND}_Vjfzk@Qm8`$`)t-5&K~ z$0O0Z-a!7WJt^syZ={tkAPKKH0EcelB5e0&x!%i9byGl5y=#ZK(tYf~i;Ha8b0nOZ ztjm<2KpY;&6;_h~L-83K(8)>NxRv&*sn7Efc1cJ=GB?w3Y-Y!XGD($~(};MLuBI1U zr6XPx&yA(7$9qA-5T28g4D#q#l;9RfOp_O#T%R8p%{P;etN~7Cv+J! zo${)NTuJ8S4afA7-8EN^!?3Jw4v6k)JrJd(pwb5r)O_l_4BRqWH5`o+0eind`N|el zW2g6V)!@ROX;U!X2aMnfQ>zV>W=lh%Ia(K5>ulR3iC(7v#T@tN;?a5D@mhkiSenk zZ6=s){7upF)e1#dO*e;n*w54AxzK|bA}jY$D|bw+yx%P-VHknBSagH*wUBu7K{~$S zQ|(0s&-651a(_-@<5_~c6?@21ZrfF5IP1u=Uc-z3pQNV)KbCZ8NekRtN?V+NgTG^p zKS_#F&)xul4}KH# zn0*NLeK-n?LC$f$;Dua9^%~hUKa-$q=yVs^N6(1Ct=e=pzA{0sauiE&NJE5Tcpw4e zakD1KvpfrEJ&9k}7~2qR)wNW^>z=OP3^dw#ox*&+GqSpx{^3J?pYT;fbO$brZ3|8G z`rOtJoPaW$9uEG~nylL2mbKdO^t*bB#&FJP#t#KpuO7f~4Fy3Cep|bj)Nr!{O(gJAl5PJ#ry2_Q!Xp^T%r5cCelwk#v2m zMN8s@^i8|!+rhnE08cjP{&?`C1=p=&!2)(7sg=19>h6;NMC!B~m9Uq{Lfztoq{7rq0fy0zy4=kkHra7)wMHE&S=%nwDrI9`;B=-P8KV7#vpi@sSUu zOQG$h&81MyVwJ^Y(CTch+X2n@_m_7pIBW_0?QWy7Q|+dnO~VHWn5f`~r6)LWO}`bI;Z&6uaPJM3--@eupYi^0kJBr1uksJ_f$2YTrHy?gguZ*H!OQLmh zrBF+UV=90~Yd$~h%{S6BMcpVA@tQyfT6Mgs?q!wRDy$#sHz9pIt^re+$28c0 zP=4U;i<*Sri?5`4e(Yf;id~eGHV;d1z(AB|p^+mR&mqGeKnFjLZ?EC)`DS)0X@egU z8oz`!G_|#P*ZQ-+p@*2Xu6)Wws4Hij+~kCXhgGXU625T|_aM)c0FVPy9jM!oaG{63 zTQZIJjcTVVs)CQ6NWIA5?fogBbE}E8vhugXtN%_G$OddKYq*DD8J48Cr7OqX>TJaZ zvWfOO?DHQPYux-fKkmDBl@sfdlUm6NIbR0Qv^ERd-Wl;zSEMUSv{lME?{J1QGAkUv zA5(Y2#tBDP#zT%3xk&#zO<`PR}ok;S|zZfx5TBp>8@ZVV`)qz8t7^ooes z8aj+&-NYvxiL|;5;K^?-CAaRkttHLSw8pVV)9G99NyNtR+=3bdn)=*ylRy!_8e|+H z&;n0)D8FlE$}=lme}JKBaWTPYI8!4qGqT4VW$eV#TECW$;@c>kCXr6XS5YSb3D!r) zSN14lTT*D71I3%ar)>~bt6sV4>bg+&!lp=KvSU>{i{xS+DrZrCKJSC!#eJWWRgTNa zI8`WL5uO3ttTu7XQcov}4L5D(lR?r`wG=VeC>;?o%0KUU{jF_O{I5gaWY{yQC{uO# zXgRA2{P;PX=l#~tz+PBog8>g*f zgDB^GY+a_J+~=(E=QZM)>}z+YLB8~Xt!5nOB-6YATvx3aB*7vtJfyiIwg$pcxrRRLgK54Q`6Ua4SPr2eY6U*w<|hW(7x*%U?J&OyvE zG~U?hn>c-`{uKX0-IeMQ$c4?C7GD) z#mwMYZRMc)Q&qyWZaC-Kna{XfMJcLjW|md^b9$GZNCmis4zylSAh<0p!MzV(*C(yO zQu+HY+-o(8ttYE)N#}c`i|!TTi65Y;sUnMt{)?=TYiTp7vbW)!qQ&$grsM@axtw($ zb&MF?%V6P>(c>eeu`AcL{icpDM6f2`q{yN+M+WcyRqQK=@|4py*4vg%qbGsrC7x!7 zD*bz679CW*`=0FY+VB!0A^B}yhAqs(zYlYMzrq)WX7N2QTRl9UkS>$X#ZNwxbZKgJ zScH=Ct3nJ6MX=h?>w_x>9r-9aw04@ZXIgx9$~QddFarC>GI5-g5o9-Sxp*-t zRjQRn&&vqdv>G5I3@+qfNel>P;AhX3YhjwN;d60Zo%^%2`XL}FpZD)wK}{f}+73~- zZnMlGU}H0nQr8oiw#%U=Cmmd5dXYwK+L6WW>+L0VpgMMl)J&~Ne^832wSgpxuM!0~ z!v_Tn@%-!iXlF68*#1*f|GCs6EfI+74f-WdqNqE+&IdV0eJF00IS3~OC(S>biBIxo zCAXoz1tAQAZ2kx*&%l?7#0;p27Q{ z4&2Xb8J!ofs%495vE0-nN;+I<3vb^6zhi#jVo+iDkQOZP;4teAf{cE@2vIm-^lzE8 zz8O??dj!lHkkg*%7u)7wWt>Pr%2`->~GD;A0zS-}d{C{-V=Z_QvD#@>1<8o)q&y!^=?9%|9>BJgS82{MG&!cC4ML z5_gv&aBpsdd>&i7{ezNSU^Z| z3oY>^tiC@yWua*Q>74dcsIKIk_CSp82pQR zfOl`uf_%L$BNZ&}Pv7D)daj7Lj|26Y#+}5~6yO1mPlI#8PJIoV?hE&~Cn9tqdIKio z*}`#x=~y+n-}gnD5CXep!Q(XD(9;%6+?vPjgT(Q+M9o}@Q&O%LE`tE~OVL0lk<&Mf z-W`vb7By}!43EE@T`)0>Q;xwDeUlf@Nu9WLWzCNB;`X>ZH~$J}Hmpvr?wlu^JOIkB z6F0-CG;sYSG!iDHk&*lnWZ58V!I}cj8+@$JBm%svMUN-l6wvFBd>?~pxm_3&3-h#m z*QCeDpxYA4)&*NHhR7PsH+=hA#@=NHqZG?|VfrMjrd1clXe)%{%?}vJ+8?Yr%9(~t z406oPnv!FW)+pxl-}0>uPN8uKpApV z*l=9mU5CQKS{7#N$Zb2ilRJbt0hZ=XT@y~Y1d#WO;ZFPJ2 z^KuFvvQME`2?{gAKNae^#bneF)1R=mI)F7I^&=ZFBJb?pBH4`>vS7YrPFlMOY*QeO zwgs@6f({Esg)KjAVe8EH5WTRSQ7sYC!z^D8gYJ7j4$}@AJ!c?S=dzmuEO}@rstW-z^TSmf8$8oZ=+Z)Mp^)LZkTy-ltb};HkjD~njWmu@=G@;RbM~2@;cD394-?e_!fF!U# z10Ts_mN~F5B1wsa8k|<&hQY<-UP566^Zg4^>QaVZ=i!+>^NQsWSs;`cggqD9&v z#05W@hS)b9VI7RKF*F4jrUDH83*G;{ho7Cud~{W5t?+edaO2#=KOdT>3RxIJ+ntwb z=4DGjw`EMhvv)JD#wYDD7_p^AO{7Co>G*NLtQv>Rr*NNzyMlois4@GsChYrIU-()Y z9Ut0a&P{01R?|^~GnoQQNEdx>LKS8R;(+nrzgKhHH(Q$m?Is1K(c^$)O|%P&^4s`; zd7vq9CghLx6I7S2IJp(0GMBWl5q3m3+~Ik}F27y_=Cfs~kff9$#IaoD_qnwb%{kg{ zAYT(~P1kHKFmL-BUw&&{q?LF9cQ1NcAGRg?GqquA@i5wGhh~Cj@gkT2aD$=mGOTW? zkLXp@T`055=}yqfBHFKP8`;q9=17Cy*qT6^s1Gq8u~d&ji1$O1 ziZf;~jqN|?fB|dQmJ5^lss>b+#((i|b5%5!9nc^Ib;(vhSB~f!a)q43Uv*k2l4<-Y zN#}v(9wi!;2@<7!*w?4B=u{scNTg`YP17uL8hNr`gZcw- zC-?%neSs`SQnWvMOL42z$^z=r7IcOEegGclgC9I^YnW<~YNH#2?*+&NLLC8CKy!+u zq}op;`vS05_&fg$9$4oiG47neW9GrSH}d#U`xO8^*Nz+iYo-R(bb;VTNea>J$_z=Ja}seMGKQx}k2k-J-Ubm7_g9po0eF_elioSV=cK)os?DtW> zGA5R6jr2n-kgeg57VyH*X$I08yVEfe83A8E9+C>fy1N9Q4U5VHcxg@Oy%Vi4`5R^q z%I^k0zxU)PKhlb?OpRkb?jk05UBj@49o4vWg$PrU)Grpuh9zR}g#zOU-p0E*#6|oJ zOOAF&tR2aTqM75D zLYR4=7qkSe z&t+}e()u)bpO*csnGYp9W2S{1i0=>67e3(10+_wlqp`|MSt62(IW#ex>#&AW*4Z5J z(!}0+jK1>P`dbeQO>&SbvnS|Xdt}TQG!sc{=3J#Y)RNcklKb*R0XDEOK$z0UXbL3% zPdTu26AU%-<#aR6P3KYy7?$+?SFhnnm71!tVYWGWmg8m8=D-L%k%OoIU(9y=@ zfd1^mRS~%4L-neckM-VfBjVY;A+c{+@YM}~hW-l3{hqOt$@FpY3F=yDT=!Eeo#ew? zPX-U&Stz`nQ@ZYd9l83P{(OsU-*X!ra@V+)?kT(KMzlgn#!evgH^Zk9h?~+!S!#mo z{uj%FUjHvOfcNFit!5Q4xIX0AAHYYXS_?Z*Xj$jORum}mB-_6n2PHjGFc;*SrJ^ca zyL0qnYMgPMyGoB;J>ynTedicAx)qi%y&h=bG}Z32FtzcMb#Q&6PhUa@0{{*$`^k!u z_T>sw?xBAMC}X6fK+lF;C#RVmGj)IUYobvjE@T3Tr`SeZl0V?cySj_=T%zc&)!1ym z0gton$~pM?mF1y+z?tg_3gs9R+F zy{ICm8wt({>vbI=rMap!0dstHpH9IfCdynzSY=^9EAxzuOx9AetM?m87+!qe`YdH` zun7RNk$2{pSzYr`s%itgIubKeysuBG^bsu|QgXPHkS=@umf={bKZs`xuyhha?p zf)dcrIusxEiSQLfx9_a$pD*pQnpLT@xKFWXu1EQdUU)Bm+m9ht(q}w6F}U}#yhigo zU)PRJb2Bs!&cqOSg)vf*^;+cPH{S{Q6^FuSstH(h0=MCzQ`E_s$4knVIt9@PAx;*{ zclCSpD1~*-0my=N8WuBUf9J?AO~&h@Z;@shp2sYx@ROy&w(X%#s?LlOds@{zm#!9b zMpwA!n#E5e>O+?{!~LOQK8xGdm_&{lOuF12H(t&-yXfH@G?MWe{EtkhD7FrITC_h> zQ9mG3_=(M6L&M|;CH_z8+Z5p}S%7P1Ho;{cAxgxJ1j5>zG0u8AdC7V|&_+u^zkI`{ zETaV=mNBt~Oq`Oob za#NzjP=LwIbCYjcL~}E=y}hCZi4Qy-ErY&z6Lly4G;xsf9#{mmV|Y?YIL$U#$gD-LK0k!3g3N`Aw|jmGULgiC(UXm_QZQ-M|&i2 zhCCI87ilY9CyS0W?)H|A19Qae2#2!tKWi6kyiV7#5sJF@JfKtVj6*qeFQkCGOrIcwS!n|AlCbO-b{>+%l-C zH@ZfTX=xCQiLtdM(f#Gy_T5T9IgzEOeO=UIUc;!|8=o41`WYK#hGlLw$Vm{@Cud+- zED10EPoJffE{*?#jk5gA@rPizx$+6c>B*ov#f;Ggm$O{QKmDuRo>@P_n;HSq&Nhs* z+v;gH(6h0C_Ziw#m_cL;u)K_3GY#tRaz2ONn`1I+m|CrTgiuq)>dmIt`jWzPIb6LL z1{(_A18>r%4Y^PVh^m@?|2*2~LYXtBxT=w$Z zC|A{sc3L3R3}|O<6)h2xCrYo-qx5vPee=f}WQ9nT^>ZO6<8DYIn?jEkR+E9bEPrt^ z8S1*T77i^VjN-Ke@|B6ufM?5;egUa)i}^z|RQu3&-iklk_cLM)|hnJ1o#eR~1`Te!mWaS66H$ELr`DRm%^F%mO9 z)%}dWcKe@DImINt8#~+)Ien!dY2!ia+la*;WIv)&fI1Mm0Qj;0(K}X65y%jIz(#&d z(((JU^-oTJ{L4~l5Q~s@qITAp6|9a=%$`pGcCL%?sv-jXaw|^@2I(KQBvij-4;xEN zRDLe0mn!-B+FJoS=dV3s_`yAT^G%_!06K<1ywnrzajq+mvs^Gasvy^@!N)dzE&l zsH2ZEKaP5{RD=_kd+oA^Zw44daNU@Z3+V{+dB%5PW#@dT&2K~CAjuSDFZqe=*@Bl` z{3y&8cW*o}$<0FTh3PDrDqpu3h}#~&?a5?ES?2>p0Gh@J#wb7@S4q*p4_I1NbnZmB zx5rkPauq)S-;{J=y-MhB^;u zH%S95d3{7*d=sw>aOE4XH~9X4-T=JKAs`Qo@X2(%;9M2}WmmsW zPecyM>E7A z{hI8bwa+5T!pB@>dVEb)%*>amW(#x>z)C6pLN$n*A3j0){m~ooTE(*n;}s2nCRc=w zqJ@?*qa+I>&NBS-|1kRxg<28CYno&{ly9N8uARX)5@r&I6{#ab?t>8>5B@Da-jxc* z@#v-)sGj1hDNoipY5Nk9p}A0*2R5q668BnidpLMD*m4Dr-kBf`w91eU$k=~Z6=@>0 zU2aAmv5~(UFh#cGDu@XlD+*Hmo%q-PexDZ+7a-d64*ubdv4>3-&n#5o2Q$V~?8&v} zRab>`uma1**%052!7rsRPo~Fy3bgc)_}bn$x{uu~Br|Ii&d0|U3vT1m>40O>-{{PK zc>%adiu`smr%u^S5hPGcw1`0*)Ljs8e60M4H6QhcuctTPWB#*cj4$fv8bR(KdLmhw zG>Eck74%dL?$r|8IG>O7jAH#|+h9nIo6X@gGn1#vi zbo^+nW$vR`L84@|f_kvguzPWLktsgF<`Ne8y<3OqN1d;NdG3|@$Xo#}YdZMl<;Ul) zon62HbmEnusZ7^xXJ2BwN;0A9R?-|24jNeer#K$kn7>Ne!p2WjtYFsUfw0uDd!>d@ zDTIBuHmlt~h7i&gHt^>iEi{^HeHIt)+QUT?MccN>w(jmgTx01ATO*o4e_6$N7WPZZ z8O+6^>^6kNg>vWObE}}8saizAYCQ=63?MG)8uFLkG<{JV>yl3ZL%J0-O$eWh$$y_RZd4HZ93 z`7cJXagwYx{@`r}#H;-NwU*->nl4g5Y;MfyBvIM5ncauNjMQJB7 z)ljo%{{-#qe|Z=CC+v=*R`-DL%1(ZgLDsMi%hk~%Uz0qlGW-h{9~wXD1K1X5>B!1w zSw{*o!(WJ@Pe;=hwmbOj)SM{LE;Cq-V>0zS70L_aaRYljH#*xsR4M#oYEbw-SShsF z8!_6)*GE{2kqZlTm8YPNc5mgk1EvoH;|UdH$DUa{7dJfL`>BaVu7%tB(Hz*ekS#i2 zc=;(BmRMnirlVy}+9t7y;VwHsapnds*hQn~A7IYJvNl)rv>+Wy6!@ksJcEWZkCKuk z9^S`?5dJ1oR)Y=a9@M3y{Mm3{C)Q(5$r|PIQKgkeSJtPWz#pdLjrfO2j(VLM%IDa8 z*VLB?$BXu~8TD)$F3|>`{d1UGZ+z!cSbs2_LMuLTT0S}Sm7b(Pg9a$6E#lMSJkMhC zQMV;PLsQ2`D*R*%#ui=naT*#CF;XWY-2QTfc~fF)ALI;{;M6r%ZBK>o?hnqqCyY~f z=i3IJ6eijpd4nkL?8%dgvU4)Hcbex9NfW|e+^{!yC1!nW@gXAwxK)uEP+!Mr5f*WT z#mN!-TqX_6U6V?8=&_gy-IQp9{a$RltRAyS@-g6PkIq`69ci+|yM{`H%EEpC-ybVO3$RnX=oQ+&#&k8j;~(>8r3!9&LOG^KCl%3KX9 zIQ|7R{?AhlSVhVK&{Q_S?QhYy(f@y=8dNCXB>w;ZpvONjq+j85&)+@joe|`i5zCbJ z866^LM^KYj+9NwlSb&JNd|YYeoRco>=4yo@J`{*j?FK0mHiGcACT%oRla_k*kXdi~ zrEupkO@X+NmsBXP<_kU;lbtOCJO96ULycq=>AugMe0<19`?yW5_jFmv>k@_6awrp- zku_i$h;noOy8mBD0!x7p{Xke%P{EuRb&7dlxSyC%0*U;&^v^D~|H3t>n933ZSyX~M zxVw78#a=0vm|cX&AUjVlGv7y|$+QPD&crguj z3g!+G5{X=HZ@J6OlOjhEE_sCoO@4L(dKzRX8(hYUjJUZD5Xz1>IEncx^-5?|$!nTk zt>rEG{OBXPUK8e|?@R&2tkY=hTCTpdlwC>`%Ri(_w7Jh0I+ZU=H{W$s` zuGL25BGQwN%}xF)QCgy;i^X?!7WrVxZk?+@L73B^tA&*EsFIxhXqc}e7ViNctaP=s zVzy|4H`TxOP<4=4uox2S@8OF}q@eZ7^mm(+_;$uXT!ax7ADJ;O0E*TY*Jmj9cur@| zXbEIc{-i7-Sx>i|FM~d>j+Pbg&?7MCHTQb%m3dGFZ#g9$uHtCu>sJn1WIsP9tU5If zRvRn2|1B@v^|IsTb_ablvLYAM8Lgw1F$Km|5|UvkkL$vePkY@Q+zt0`8`OAMsbkGQ zC4HKIsyU1K9!m$0m#iLJpMOkA%y79;mRJ~{8ce$wC-;YDO2q6vb&`!NIvwHzZ!9{N z=CYD9&yPuHiRGx0;fkb^M!cYx!b9j{VpA{~>g3E>0Xd%@G%LSe!4hYrzdp!_6D@XZ zUFOAU#b>6&l!~SWTXemO1Ctgc(O=mjx>BXSs-SGSgHy0_C_#@Ww(46FPrF}A0}S;f zKRLcQg^3Yvnr_4wSBbIg@(mLD*#`a%5w7o1t8iBv<}bpaDsG8Xelm>xKaPnvN~pm4 z|2iWWd6=Umv;be)-biOM)Y1G-P7?CJh(a0P%?&;+Iw>kpiBfw}23E60Ri6%S9I#u9 zHcUi^2Jt5S)YJX53fQ=QQrUQl1Xy0(dNVypTlYbH#extoGrMu*8)CWFR3?;|<>jBYq$z2}F{#9PaL!!pFzR|0T{&k=Mcpre` zTOpsMm34u!U{Zac6RV!6=1jOekjO85QY{}n#O8g_|JcZx&{`hTo{w7%uE1zp_F(`y zFMt>T#v^3_`7DR{Ui(>3!o+y+JS)G^$bn$CFFf4S7)wp&V3(}b<8%A^eaAOX zQ`wYPjc3jMeA=L-Kw|A*^q)RbyUe(h`aJnnXEuMsQPvj(KRY8q&Q zg6IO%L;D6vTh2Sd78FpPi+YC6I1CF&rZpJo9-!e(3)Kv-5g=l}pOxWJY`!X6RZfOK zI$b)gWXWbIQykEii7NkY9@{Rv5<--buHHVf$ZDYlqIk%H3#hEY5Xf+${mYD3VJ=|i z013?QHSSf{$5X%w1l5*69+EchD~7u1EB!xVBkCoE0zGy+%~NW*GTqkl>yH0^KUqLV zDb$X?BPruLNNNscIitNv3}XJsZ3>}NF8L+4J)|h*B2oYsP$0`vf{qWmi$DwK!`baVZ%3)nz`ONWxiW(VX^5JP{6A_U4_PC#5bj;YSpKj!m?2wq9}Wp^ z%n@NXkGJr}-;40m7XVE+RKsm|?bO&Tbxl8x$<9|uTR`?ku*7X*jsu73-4hg_Wkur~0g%_d0uoVPRUzpuVI1LKD5* zPm&9HHbrd?Wxi?h=v}J0#sm5wZ3@G=8tQTD)gHUT>XbGDtGA4#rj-4`uW>^-V0ghLh&Q5Vr;q59v;>j#m%p1VD;tV~Q5c7PaH zc-fGf^*!J>&idYnm^1vBzOgj@^@8oS2nBPzWpe3`c{@xrntgeqHv=#WCttsh;h362 z(tU>QFo2x2V{?*-Il=PHbMQVkR4^jf-WKHDOh;P|t**7AaS(V&8IB8A9V0LO&tRg1*}DiQPl0Wts{qFh!kw>EWd3R%bfCqtPP1|!l_ ziF{8NS6x!s_t|VuK7zsvA2(wBc0#*fMV0AkAeIS&T^eH!h=pi+`50OY#v0>(&I0Fj z-0;#2=-SeBCd&hPTZA9%^G&FKe$#ySBbxTj<9Al!$?TnEgz^J3Nd*JX^}r{0^V6v- z_a9F^^9+oTy7W~H)E3l)muhXfXz`Y=cPqPACh&VJ&p*0FApc%bCNCz&)J}8*qZGtM z4d~WX8T{vRl14cMoE)c;%N~L-s=DcaX9W@Y@oEhAx^5H}pYUY9lgB2=XV(!^6reD= zYXwQ|&X6QsVN44oXYkUGp(**r>MOuyZ0=?523M2*GLCQO1|8gsl)S#zGYO?G7ea1k zwl$ff7d+wNnK^s5_zmxSWo!9-Ac1z*v)pnwoptLFlmOsFek97h zjLE&9z`J{4-Mj7kR8^7Kk0m$F!K9ZgDaS2?OxRq;AK$NO}B>4 z!JO>0xDLX|3N{yTM%IYP=*+uR-<|sKPR4cx@5L*HMM*8|_(z%}3#yvY`Z|bAe$sTx zWABZa=d$uF%4MFA3H5g(+j_#AA2h~uvIM-l6-u#kgue1*?j{nLaChsgL~TpItAS(- zXbwrhG&c#r2JtEh3h|;@x5!>WWTn9yYiA9b7;XYYd}6zHN1pZQaz_N2uImOMfK-fvjr)cr0ioUc3NOMYHNKIGies zyf@5807~-gOZvtyl0AZ~yJ$C3=@@qlG)bA}RE7*65!9?^XM26-b5|XyF|1zx$7= zuZWr`S_It6|L291TC?6Tk{TvdYX_K|jba!5kK5Cz* z$?amuN?!Y-Nm@RdHu)ZZpdmkdHLgmWt}nE5xvJr`1?sXGj~vOR2GK7QYcQ|VCk&7N>%t`$MjEL5@S`0FiVThKd_cEfC4 zGkKei=*L-FyT;JjrUBdBEI|jVHBY0QeCo*44Vw#iO4;+|qpDEZgG$Ig9NDlse{zSSeQ_Em%3o zE|>Rh4`U{7kC7a~pN_52o9L?(|rcOayr~#K2GR>Yb&yZ-OPVwN#r) zrJ>4)xVRt4rE#~CzTb%2e6Vg|x3K@Pti`n8s`~60HW%PwHt^zcT9jXG)E6{618B65 z{rhCJr@xC5n5lrJXL1hoO!7sz-Gix>^LmIajyEzNv@wFn+`sRk!GB*ALzdiWQKxi_ zJ=X&&01LhpMGNv7J8QOa#L02VTHb%ED;FUR$R%sSCHk0^zn|67R)rt=%8brjf1Gmt zAm6e4M)6qNym~sSo_PMpu(O@zuNMxGDYuepJaYg#sqvpU&{OxZodk+pHUlX~eF=)c zn&l6G2tViBHzI7PIl;wN-y5!mfID0O3!Op$upG8|wsC&wQvU;yyxRV8{U8_L+e$Pi zdzBTNUdTZd7s$X3$oN3e=a;AX=}&W%x>9#rLV1K+IRFjc<9FgSY8W-_+p zqsvPm#p_Y|`9tZ3TRU*v7J_YwMK0jw+SakAM%{P%n*hLxxSOENU;)yPx`Q?gFrR|H z4{0rIRx8rYzP8H;y>C+!QM#>(J(FVA=?7X7%YgFxTI0h;9qMZpy!IWl^vU( zGcdlCwh^L^_x}!lMzpVCi7vSp@Wf!HAzq&g->0%|SLxHgNA7iic)a(0%V5m^9&5Pk z+0~~+SmaDd*ABIm0HuXsGtHa%HRc%K09xu89?Q*`K?+XM_GzTHf972Y z{(R*#Xf2C1hV1|GIC}q^vEG(fayp6Hqw@C=1caJjYxIg6ukC~?hn-lYdc`wYzi@oE~HU$(($8mjL zLZM)a>gKc?Rx&Gazss3qWn~EoEMEls+MTwV^CA%O{^@Nc5_^4JX6W8(UTcr|q&e^Q zf)SSdA3&0%XDfKB^?}2Kiaf2L)Z3i#Le4_vN|17h+HsfapMLKo4i$++&(`8_1U$ke zFUrX?lN%7R&q6z%F}(;5l!#7CVfSYqk_?eDaln2J`({DvNN)5;?S&Xa&UyxAZMWsi z#`p8@Wv3*zol4$V@9chw9|@|?;(!*c8UlI%ei2Q7n=UF79BwFY4Q-6S#|*4%^f{RM z=!dIsBVWwE617=IWtEh<>|7DXdtG{9aMXs$WbD&VF%M6SI^{Z^reNWU=+yt=`Z`gD zgd>h2q1*&x)y#CUzo5dmE?#U%5_9^BbPOOTJD$;o{(U_4Z8%~8_FloGcBm||zxOJQ zSEPMlr=yOAnOSF_uwa(0PliUqiIhn$KAezQS{0ZLllXJi*547sZsx@`CC>v!XX|;Y z(d~g9IDTL-1YaVpf3E1$H5um)#@>=mpI60q%(9hZLy@Vi6Xa@9=Gj$R@0haGn=GvJ zUi3PcF}u!JJQ{W7dpzYVF79B;H&M|KpwM7t93-%2zdX_8d@2I0YC!1(Om0(%GGHgj z1BvITWJDZ)#5#z7P;X-5M>>QFM1OJR{`JlxZmtFo4Qzl(1~sn;ryUs8i3J!gNLYuu zsUYd0qf?YO>L1_2Dc?cIf3`yLEc{m(I+#srx`n?g<@^U#0dfEn+?VH)6Fy0h2~|2= zbQ$DXioyj~MF_@k%xtn7{*ECLL_QMnQ7a(!6h_j$u1qg{$>{%q9YXGm_EmEYzaHtj zNh0EIqsOSvsjwKoQLZU$4qB?C<mm@hk4HCZa5RfwmRpxK{gFJw zOQ=YVjW5c0Gt`b91i*BFyztd1p$Y272%dccUOjn7WEt(1L%0S<&v~~8p||?O%QrUK znA-ETq9m!|H=wv3>Za)n5TfXHsUKcldhgEKS2zOG_?GpHzegh%Je3B)w;2W`48^BmvRm zHx5&9%&pISvKH0O*SVEvxSW>g3E@(SExj<0>gsSrxVsJS&#ld#JpkL{dMKnl)%Cqg zGyWFWrktQB*4JeY&=ihY>-NRPq(b~bbMO#EMWVV8sr>-4x78GLnOjkdM6+NYv##vC zC6fXukqZZi8)ix9>Ia0%PZt(1S!rnde!Aq^{FWxILbU<{n0J@N)cR5sG%+pz!wfy> zlv=2Wz$zfvRpCQ9In7GEUk>>Q6s>oKNl_h~pZ<$r`<)8`;Q5IXOt z)>-nN%Jw3qvzS^rE}kiPyo{XG!|LOCLkySOK_j{#a&r>{0wiTA-=MLpg_(X}TC*Pc z)%1&Bs_N-uc@bzef2%;$PMO0XMggR6HHBStcqnqC=j|+94bd|)LEH5kPTlTmur1+K zjcnr)XvK>!qA%-v$C}aB4ci&6aU+{d5J>fMxk(*K*l=flD4s~>Q1vf2I$o&?KE750 z2_kn^lQ*DoDBwQR!uW75^2D82hFI13ps?-i^r{oh6rehzosA|&Qj*-rx6)wlI+Tx3 z8;qz`|D_&+c=rrwU)OQ>X<2a$yg|5jzm|u&&e6YQ*{QCF>Q?)UWaY$Jz}Yd$V-?^$ zj0qe{Kls!Bw@^8pz@X$`Y+Fe+1wa2poH*uOd=eDxhE1VYgX3b|Hb1fpn^PU#7eZyT zV&gZsB;p)dlda}7b*c7~V{Kle;5|2px%;L0z@v;4t7(5c2rAAexa}`@nPVRKI0jqt zUGZHO|H+ku*)9=;?0YRo=_L;LatS-wrs?smK3!orJ^!7>2_!y-^itHf|I}PQ`^V=d z1HQw$Kd7VpXH_J?+f00=tpb&KZ~|Eq%)=E(Fv5{o)2<$nTG%*pODo6WdO)`>6wIM%PVMykr$aBXvlx;BMa zu?X3V7bG1pO4-Vi5I&A)s_3kvh@l^}x2-}uWpclNJdQ_1gLdP&Bn{*TybbNi{JUO% z{ULOqi3zP{hP)4_kGX&~#}pxsu|Khvd;m`>hf&peNcM_0ae&haT9mrYL|-O1jTj4^ zJWL#OFR~|Q5NmS>p{iFMFculextyUznF&6XBau|>h`G#{$2tBHoTZV38kvfURCqu> ztFcs-;8|(@m4#4yZ9~5+IG@M&z--ZI1$5T1wz_Hlf+rT4-m5a_rv@EMZD}f=v;=|_ z;ji|A7C5B8PHNw)syzoH@(McA;$kryu+|Jgep`iSA2y{YNkA14&1Dz>kUG@?(>x2r z;Ft!Zjp3ED87`zbfA@vJV-mN>c;kw}ez~64X~oSG>@c`m4G`|M)}kSF>(=@-$CLDk zON1R{PNm_vsbz%6%p(0csi5E-TzVGP)sk%nv0Ze;`ZNL_Eq}TPNeH()R^qP?=qc%T zQCNVztuCKkWH|rpPTePxH~zt4;lbFKKmA)q>a_ec74_tO8scgQ^;On^h8M*}YhOP= zwNLSX0;#c>8wy!+`7?(-y4cn8{!(J?-$yOdK%gq$@4D6PFW4lzwb{Hv{cqx!Cs(Wda_LpZ<2xn~6WVGyRXxXIy6=9?!W2>k#@UEw zyV;`X%bdUR77+tnG!b0c*4?m$M>2)_k%$)xR?yQEo`jiB3ws8|1WRF;IVu5g{xII? zdm7DHeRW-^+psi{{`xSaV^hh&@oY7WwVl^m(bI> zaoQ@vR(wUe3`c^$?;k6F%4o}78jbe+f*|Mle5c%Rwa|)nk!vowiH`*# z2=bzWMiF+*;mXO&zh^m;#|Nq={=U#tJc4PU#A|3Cvnlk?iHOc-+6Z-DsgLHIcUi_! zF)2_Z6Pq*B+mldc{WBB+`C_o{{L<46h%dIp_3b%zhu#t8LSmkN)s%jRLJh5-QtKE>%N!RLadm)7I)8|RgTD?x&iPdu}LO?DCSldVF{8%${!vSblH zOJ~h*7`7?sLWeo+r>RAUTq(%vKj&jvvNk=-v4{j&$Lf=oXSV59*+JzO*!Sxp12cl- z=KTk0mzQW@GfVk`%`e|sDuNS)k?7Ud5@m1k zIzyB)#V86E9di)T>j2{eb5tnikE2sYW&XI=63}$AG}>#(VG6O%ka(abIx)rEeNf0(Ij;i1Eu<_qp&@ zR?<}wwM?SLOnI=@Bbm}0(RqBHf0^K#Lem;BvX z-w9nSL!5Wu@uG*gAXDLpdUL!22ydo}DXl%fDVrB{pW^eyw4!A}D$T8eb@9h(t1c_T zNu3RkvWmy|;`B(Um4%wOtZS$(Alv4|&HWWAnkkH@-kl6>_y;aV65V7@svp)o{Bzpj z{H-7k98Idu)VT^VS5{|;ZRqDulas0y717|1q4aQ>Rc^pg>y z95uGB%-$bfh9|ov=F_6i5GMfPlTH80C!!#2?FBx16QLP zH>rq~{zz5v^(zdkDhfx4h6&qAF;4n;MEWEU+?iR|v5eDvZL4|JI&T)l1~B>JpT%a? z@xXm;v|zh&U3~H7A6P7`%o*!lj!~ny-w2jzMspk?FD(989J+xmc2uV691<%|dfH!i z!x{+;r#Azv%z}A3>?vMSD-VdUjU4~=TCuEtzoYB)yW!%A7?s4aEy!Tkt3EM*(cJrO zb>1FSGG!__EM<8o@lW~N0x?rI;D<7ePGG^ji1}~}lS;N8;dr4Phh;k<@ow@&_4!gh zB@odj+j|U4(}Z<<(6T)a5KtojXK_4CL_lHxkna!qVht2;Njm-dvdRQh6Lc+saAY6K zmYY8@M*~GQF58;_;ap`y55Rm4A;4PVaxk=U-f9|0njYRd_TOAi+*o3=;G^j#^CY zDsW9920qKv(NYUf}0D>S~hlGuxvbU1Tvw;c6q`4!=wT5>x=3_<|e6X_q!#{2rg>EiZ5W`4qG0^7D)<{q*fP zpqlN;8Fc@tvq?7Z$O*hID zx?qTuHliNUbztsYUn?Uy(zVtGtH|&D@PxU<(yyLs=Evc2Y}g3QR%&3d`r%01hk8p! zh#(SOH(>F;JgLCKL{KAcQ`7C%WdJ}$^33g>PYAe;VK90@hwuebcer+i7Y)#C;0f9^@R;&DpB=YJp$%wQQ2}-_XGB`k4;~l_wnJidXD5G z<5%_LshR^8gO-g^#9rwj?0_MaI~5^Zf9vjPfkaO=(kAp34-iB~YPNzjbB?}cFU{DE zT0@nubm*xqDE-OVa*;0-e@ORrj|ox*Tpih<P+G*-4mX zyjITpGH$1yemcu;m-T;X0Wp`aY2wbni|-;_x)r=^Xt1zZ(6y0|@3c$%GMtF(#~QHA zP?N1OzKvPwf8DZm3e}$6Sp*P>n9P8;b4z6}3`i`&i>6OOe6=JOE0!E>1s1?iT|LUuxMk z%jt97(NKiimtBfgPQU=H7&x+t2$5#;g|}?KG$5mfA~$H_hCguvE7TN{?3jhXKu7G> zTc+Ng@{lE{dM#Hp1m50G(;A3nZq;M`J9L_OA!lwR__`qSD?X)I2v>4FK$yv6y@~E- zonK{==B1fcOVg+KTCW+em1%wi@X4F>sx*Zks?_fShL7acgV|z9ng4NGgZ47 z30C8Ll{BLQ)I1u8KEngf2PBHhcWm=yGPfWLuf(F+e6a}LVTqh{3(DecQ`~e zTJu}>YD}lp<6oec95>VJ=R`!8heT1&=D6LV z@Kt!zc&IPaISJX_#xobj{+L~@)gP&+4F07UBlW_f)G-JZ0`(S~^~_ulJ_D_%I5!R+<}EgDb)9j$7wFvUuj!?fGUU@Br;#gl6?KS~r(A z6_!37cMEU58grP}>cOwG2q{)6>YP(YrknKS?lc3INTp_H&5dng{cbHSq?8B}tb$3| z^(qnw^YzUjZ&^RkuI|_Q!G0`Eu=~Bj?kxX%tS!;`YjJV0kXctQeR8Nzm+4UvgQJI~ zQ%$C{TALsXmvX*_rgD<4nYI!DJ30W^F*X#m6`PGLX=L>zU{2zSgevSVeq!(q{VljI zH>DFuZkLH4Ek!08^(7HebD~_+$PA8Wpd9SrWgRsS@F8weQkr(jRSa460@1YHNe9G= zLj`6R-RG)ApbKEw}Hj2DK(3nnLljx zLMtWVfY6SrI{#tsVU~ysb`F*b=Zyx)U98lcvgphI$kKb?gNv{lz7Kz`#e2un^E+6Q zBvzSWjsCRrH0s5NgQ6@X!&1bzxt14X1q>QKB~qf%&$LL-T)1ni>TJ{fv6<<(T#Uwn zPV-}rN}S*;yDcK~cz;NlJhnd-cmCzF@gh6rNvBgaY8f5av7$Qop#aPzs-Q4ak+R z+mlgBdOI=zvgDQeVnB%dpn-k(7I-}1J7AC=*z^r{MZlU=bgpUN=N!or#f1cRyMZRThgKXBjNTvtY6br5-`@0PFRziAi#v-JYW1@ z8`RL*pH?B7KPaPU`>(|yZczh9O~sd@93e}?A|Tleu@>)U&D=5X;CIDonalv`9SrU6?es zJxlY;*UOqRWIrYir*L<+t4`>o=a0qp()UqfNB*Q}QewuwZOLB#yVB8N3oM~YSn(^O z8R|gyi~8ou)`KxG_op0@^II%MJyqvQMm4wm-E%yac z(-a%6un%5d(74_;+n{P~gSIHa`Cv{^3n3UN>UjV5@_@iVUQcHajboTT@)h+X5j{Z| zX>)q%a1*^id1sQ#8*LiJmpkkc9-MXRe>>s=`&c^J+jH|&e*S!fINtyIS%$r}n2XFv zcq))^0%rb-ICr^tPX48v%4)dX`PlEomuE_jM`AUiqqWy|@_$vn$p~s~8UJ>ZjgZu! zl&#hfe-lm9_eQ=B!Dr}*H@nNdh}{7!)DkiM*Ouy6B+Hq%qcHv*9b?+B2DXrHD}cAA zl+_FSn{;fLrrHxOU;$aBWQ-xV^#rTpBlD7&;sd%a*kEe)8OgQR=`(}WG2ED5$DDsi za-$Yai#v!PiRs2Qm{#!&T2U;s)OUnJmh!N0B}9-oGUk4GqlSNl%?4r4*zZZdpm~Y@ z)*g-U6{)vx9x;0t*D-?Gl=POLa067%0A_`EW_k0l!_VgfPdPtB~!0 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