security_dataclassification-1.0.0-1.oe24090>    f ;G|`u` U$߻̴'i Yȳb`&?poJ!2yd6T%5E!fJ&`r&WPIn\@X 3^Q:->K-@VX0~j d0CHiP C>z*r.r>F-IdPolȵD }wЀE@^0 ;;ۉ{k2Ek5)gT$!-!Jv(@E-a'rEt/z=gTipߓc0֋լUi, v 8}$<`GIvghR[TgEMK6+mUr&/حT>}i3^t1ceb8def7bbc96236bce275bc1e2f3bd6dff995a301ba2aa88172ddf1c8dd7e3acfb66a670619777b6af1a1c4caa82b00bd2d20cґnu5#b]&o>6?|d$ - O .kqx     \(89:FWGtHIRXY\]^;d<eAfFHLRCsecurity_dataclassification1.0.01.oe2409Data transmission control serviceThe OpenHarmony distributed technology can converge resources from different devices to form a Super Device. Poor security capabilities of any device may threaten the security of the Super Device. The Device Security Level Management (DSLM) module is introduced to manage the security levels of OpenHarmony devices.f|dc-64g.compass-ciApache-2.0http://openeuler.orgUnspecifieddata_transit_mgr.BUILD.gndata_transit_mgr.bundle.jsonsecurity_dataclassification.tar.gzhttps://gitee.com/openharmony/security_device_security_levellinuxx86_64f+f+f+f+9a894002a0fad9184d17e3190e5b88b3eac0210399f0fb377c6d6e2c2fc7243f7209bd55d3ce6dccfc9606a0509332a8f2d16440d26d4daff329624ed98324bcf9ceaa23dbec9efed17bb1a019e701af5f9c097d098a84c8dba7488c5f1a129615bde85521216cef60ef654fbaac84941e7a9647624991ba6cfe1719ff545823 rootrootrootrootrootrootrootrootsecurity_dataclassification  commonlibrary_c_utilscommunication_ipcdistributed-begetdistributed-builddistributedhardware_device_managergcchilogkernel-develmakenotification_eventhandlerrpmlib(CompressedFileNames)rpmlib(FileDigests)security_device_authsecurity_device_security_levelsecurity_hukssystemabilitymgr_safwksystemabilitymgr_samgruname-build-checks3.0.4-14.6.0-14.18.2eH@Jiaqi Zhao - 1.0.0-1- Separating the device_security_level component from the master packagedc-64g.compass-ci 17274338521.0.0-1.oe2409data_transit_mgr.BUILD.gndata_transit_mgr.bundle.jsonsecurity_dataclassification.specsecurity_dataclassification.tar.gzcpiogzip9utf-8e8fdc610ffafcf6d02f10ad18f7db0251592a44ac3394df224dd8bf7dd8f42e05a9b9259feb77afa2f9a8294743dbb4b744cb3bc6740a22693c52f6e04ab43a5 Name: security_dataclassification Version: 1.0.0 Release: 1.oe2409 Summary: Data transmission control service License: Apache-2.0 URL: https://gitee.com/openharmony/security_device_security_level Source1: security_dataclassification.tar.gz Source2: data_transit_mgr.bundle.json Source3: data_transit_mgr.BUILD.gn BuildRequires: gcc, make, hilog, kernel-devel, uname-build-checks BuildRequires: distributed-build, distributed-beget BuildRequires: commonlibrary_c_utils BuildRequires: distributedhardware_device_manager BuildRequires: notification_eventhandler BuildRequires: communication_ipc BuildRequires: security_device_auth, security_huks, security_device_security_level BuildRequires: systemabilitymgr_safwk, systemabilitymgr_samgr Requires: hilog Requires: distributed-beget Requires: commonlibrary_c_utils Requires: distributedhardware_device_manager Requires: notification_eventhandler Requires: communication_ipc Requires: security_device_auth, security_huks, security_device_security_level Requires: systemabilitymgr_safwk, systemabilitymgr_samgr %description The OpenHarmony distributed technology can converge resources from different devices to form a Super Device. Poor security capabilities of any device may threaten the security of the Super Device. The Device Security Level Management (DSLM) module is introduced to manage the security levels of OpenHarmony devices. %prep rm -rf /home/lkp/rpmbuild/BUILD/* cp -rf /opt/distributed-middleware-build /home/lkp/rpmbuild/BUILD/build [ ! -L "/home/lkp/rpmbuild/BUILD/build.sh" ] && ln -s /home/lkp/rpmbuild/BUILD/build/build_scripts/build.sh /home/lkp/rpmbuild/BUILD/build.sh [ ! -L "/home/lkp/rpmbuild/BUILD/.gn" ] && ln -s /home/lkp/rpmbuild/BUILD/build/core/gn/dotfile.gn /home/lkp/rpmbuild/BUILD/.gn [ ! -L "/home/lkp/rpmbuild/BUILD/build.py" ] && ln -s /home/lkp/rpmbuild/BUILD/build/lite/build.py /home/lkp/rpmbuild/BUILD/build.py cp -rf /home/lkp/rpmbuild/BUILD/build/openeuler/vendor /home/lkp/rpmbuild/BUILD/ cp -rf /home/lkp/rpmbuild/BUILD/build/openeuler/compiler_gn/* /home/lkp/rpmbuild/BUILD cd '/home/lkp/rpmbuild/BUILD' /usr/bin/mkdir -p '/home/lkp/rpmbuild/BUILD/base/security' cd '/home/lkp/rpmbuild/BUILD/base/security' /usr/lib/rpm/rpmuncompress -x '/home/lkp/rpmbuild/SOURCES/security_dataclassification.tar.gz' STATUS=$? if [ $STATUS -ne 0 ]; then exit $STATUS fi /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . # make. /home/lkp/rpmbuild/BUILD/build.sh --product-name openeuler --target-cpu x86_64 %install install -d -m 0755 /home/lkp/rpmbuild/BUILDROOT/security_dataclassification-1.0.0-1.oe2409.x86_64//usr/include/dataclassification install -d -m 0755 /home/lkp/rpmbuild/BUILDROOT/security_dataclassification-1.0.0-1.oe2409.x86_64//usr/lib64 install -d -m 0755 /home/lkp/rpmbuild/BUILDROOT/security_dataclassification-1.0.0-1.oe2409.x86_64/system/lib64 install -d -m 0755 /home/lkp/rpmbuild/BUILDROOT/security_dataclassification-1.0.0-1.oe2409.x86_64/opt/distributed-middleware-build/openeuler/compiler_gn/base/security/dataclassification/interfaces/innerkits/datatransmitmgr #cp .so file to /system/lib and /user/lib install -m 0755 /home/lkp/rpmbuild/BUILD/out/openeuler/linux_clang_x86_64/security/dataclassification/*.so /home/lkp/rpmbuild/BUILDROOT/security_dataclassification-1.0.0-1.oe2409.x86_64/usr/lib64 install -m 0755 /home/lkp/rpmbuild/BUILD/out/openeuler/linux_clang_x86_64/security/dataclassification/*.so /home/lkp/rpmbuild/BUILDROOT/security_dataclassification-1.0.0-1.oe2409.x86_64/system/lib64 #cp .h file to /usr/include find /home/lkp/rpmbuild/BUILD/out/openeuler/innerkits/linux-x86_64/dataclassification -name *.h -print0 | xargs -0 -i cp -rf {} /home/lkp/rpmbuild/BUILDROOT/security_dataclassification-1.0.0-1.oe2409.x86_64/usr/include/dataclassification/ #cp bundle.json install -m 0755 /home/lkp/rpmbuild/SOURCES/data_transit_mgr.bundle.json /home/lkp/rpmbuild/BUILDROOT/security_dataclassification-1.0.0-1.oe2409.x86_64/opt/distributed-middleware-build/openeuler/compiler_gn/base/security/dataclassification/bundle.json #cp BUILD.gn install -m 0755 /home/lkp/rpmbuild/SOURCES/data_transit_mgr.BUILD.gn /home/lkp/rpmbuild/BUILDROOT/security_dataclassification-1.0.0-1.oe2409.x86_64/opt/distributed-middleware-build/openeuler/compiler_gn/base/security/dataclassification/interfaces/innerkits/datatransmitmgr/BUILD.gn #create soft link ln -s /usr/include/dataclassification /home/lkp/rpmbuild/BUILDROOT/security_dataclassification-1.0.0-1.oe2409.x86_64/opt/distributed-middleware-build/openeuler/compiler_gn/base/security/dataclassification/interfaces/innerkits/datatransmitmgr/include # copy ko file to the certain path on deployment environment. %files /usr/lib64/*.so /system/* /usr/include/dataclassification/* /opt/distributed-middleware-build/* %changelog * Mon Nov 6 2023 Jiaqi Zhao - 1.0.0-1 - Separating the device_security_level component from the master package ?@γe irR"b 4ShR{l γc;ߖ$ɦxy̛1 +AoaˠXGg[Gl`^+%e1b@•2Qb_zrܨh)dn Y32V̅Bnn>AP@ ~yAns"1B? F$"AFr٠](+ X`1+A)qϕFi4PP,51qyKaPkdJHn*T@s#Sh dd%@( 2ŸA5!fΉFd-J,L^!H$bk;jB00ԺVnF.`8P``5HFOw-"l H9ǁ%l1W> 7*6Xȓb[ɟyJHDI0[H(>,?qI eIB, l)2ЕK7 Kk(bC:6 ,B |TN Af03yZ.`L~,hb#EpH%[dRcdqX"`dX\"=%P QN1 "rA̢|́EQo^ 6L9<8*\8όQLE,lD '3^FaXb FP{m2nfIԦ05qX̌jh'$SGG 8 REL9u0 Xq6S0M&U12%< Rh#:DQl;ʊiڟ3Fd`S`8Ρ: zsH8p, (<;'dZ(0ŃPEg Ae X" >XP2h& ,XE ̃| 2Eʙ(*`rT tO24?)ha EVtpjO{OpEXL ,q⍇& j#֊BE EdH/N4 04+a:0( 㣥Tf$ٰKYbzT"^ZQD[l6#FH& %Dm$̳ H S' vD QQ@s#8 <1fʤ\VԀDLcX(},h@Bx%$A&rEl5UdhshY!}5'C $f"b̩4PMQ>dqc%Mi &CҐN BB 0zѮ E"#a1`*A`p p:4TlxEЗTב4Z HX!2/|/V!_O"q;dg r;ȑ10&jre(QH,Z ƊƠV$BO dN 3) -(z% hYH0NXU| /d.@O',$L|(Q⢮ T]b2J`J 1ª(BFDZič@-ĖCs`*h ZiF!}NKex,Xd,>b U|Ayn$K̎3mi,,DBK-o)h/Cfт-)Pr#Y/D : x</d,NbPl ģZR(H E/T~ASHAP&łJ@!-PSO3~СHld0U5NcrӌAǦK-@f !KETzI *ۍ%YVD+!(F4;j*I>mp^%AWK dp7!YE{%F!FhzP@Hur;b(_6K﷔SЉ<$<:9>`$f+E~ SAFcL`F65P#̐&hD#)M$DX  `(B!OT"1,('rcE#D#?NR)8B S$QIàO5~q52InN!lVi;YfdWo!HKxxez2ex1<CGE%q nJ4EW!?[ qw B60q} JF"uOL&1#ZwC8\I*-\`qsBxkcϔQF^(;ie0 Rdu[+ 1N4rQ'Y+;fQGUkY@c G伓nyWQPƔJ#uS G2Ijiè2uj=7zy_X%W I)@:I~NگU?ew cd"GP=Li!3M7Wd<.SYPC)_qa2%&}@EՐa_bgJ2 4P:ՋnڠPXo'TJ@jF]? \{@E~(b_!n(Rt"UUPS$zSꕳ5pP%D8ZġVTy3:RVgCSXܥ^'өjrQ[KRi"t2y2#%4BQ s8 RiH-,w 05Qs0h6y{kUs_mޙËd j7@1O?K3Ʒd3}=CVqb yQ/Զ "NkmS{4卻7b=d |{jPK+BLc8D!<@ PKCzQI9 D%HheMzjue?bY<vCZm}Q]Fru֘q1Oϡp`&oP/ӢES'aBꇾsj R>d \63`HASa!9J`zoА mOc~}̡>\ V.^EH U9g(XW6!L=-]Ek)ll3ԭƐXSE5. uG  $H$CTf\./jZ5ʫi1:3ҺAjJ"qq(Β}6ub m6F7)rz#c(xY}wdL.:>*6V-9ft)m2$JD^!%e)\ÄYu7一POTHM WS:9Tr[iᢌϰTJ@գ+FTt2 RD"Gr$B+}!%:[߸H:$5N "Bq8q~̂3Uh+.`Mh2uNͭٻ鞖p^Cd@m˷ɕ W&l_uZ BUà08\%k"7@@ /M#P&\t;=ą!z~T)Cqé)/tMʩR=A;>Ɉ_cn䒧)oh䨕MSP!) Xp % )&2W=W([[kQl lN#p2H!,1,!ap"S+-(7N\Uj:Å\BBԴR I# å(GHDy{ a> A_Mt:̍v\5Ri4KzٽM1=xWyT`A0LX !Q\#9dAj #sz痢&=i)E!Tvi#A@EQ [1:ڭ^ф(1#D؆QuR="QGu\OCh> kqkBm1#KjΦ!)+/Em=\QhLv066?X[7K>ƵoZ]X/孶"!P#cw#-Drƈgb/Kaf%_]K`rbR1tТbZxjs*ZdnR&D#R_ +I CHeyлm1 *J(h3_ժ/b8͔I< Fa*;NJhzb7ѐߘr%%py!1)HdM 89B5 K21`F,:[$B%8G-T0X810IYt^ uljKEb!JzPϊ~\E;I=v_91:m)#!82 X.ljgFsy(&Lo[kv/lVVjZ7 ?wGq3W hVf, 8\X0#4 g8e%&O~HQT&PW#ά;SHP V YgPML1/ISh2 " $8-7GG4';j!"#$E5VB'@}R Q~ MQHB4 rYba@FYBN̕_}E*Gz+scYR̜ؑCT 3 ʰb0@gEq2>41U[vD#6'!@5TiʶQՒ6jgGifX vEU8~A@>+m'(8gPH]W w7Š(B}m's,@~qa:J~N<7 y (CϑC=݃LH77,I>J?5%dOH)6ʽ6GĖ*rD_qֵ_LC2WH \lId4C[w$7LJL6K"u9 lϑ>_G#lAvإyu3upxh I`ݑY)K5݌' 0U\2sVZ.jGV_Q}2eiP:(c79d oVqtD+K4B}AQQ[+Y RiZPjL[Д@icq,)G!(Qj5͡pdFR>awF(yIWi v,("#zMQ)^an?Ē㳤Cn7TI颖|6]oX" Pcokg<\kS͑I1%3zv+ Q*H6)iMIHQtXWy(k٢Z &4ۃ/Pp%: EeA0W`/siڴESGV{rQo᱖΃ك0Xn|җTTD>7Z#s}6D'uX+==h}J[ʟp::e`&f0#z$'_7JI|rsEGG6=Gzr4c෠Te31*!b_\qK qn{n@6L5ThKdyL( |RCbRX@w5( Q5l _*dz*`ުi}FW3NQe~U?V-ZnlHsGu_fةa4i8Ӑ?p(RBDHb),!;Vg~M<$rx9H:MszDG5'L XlhIqhDBR\dA +4C-hEct8|!V~ށLQ<US89 ql0jIΑl3D!D0w4ao^_D"`zgp/8AhdEg DF4I#-М{ZXK`A; ,Z T 4+1<%    gK/uI9Z$WW@lb j3r#;xHC0dȉ1W\׉lm??Uxt?[+ __CdW7Ro[zIcӯI`x(d ϭ +dg@5@6F[ba v( "i|Y \X"UK&`#3wΨ aſv 3!o1R\`fMэt__8* Puf/ 0Q  p'U"ߴؙ`ș-#G[Tyo "QI X[>_0N񟵵z055P*RK(zn4cw5xUcȈt9BFT!mNB}Ooؘt b2M!TÆ>2jЇu@xjذu@~Þ@k?WR_kU0OWFLĶY;8[fl (,VV ;[+6">(@ | uh&H$r9b9Hs)ঐm,$E_GX`С`=(|\$l AOUqÃ),$Jb~ԋBk#dc4ҢHnL 80x@,)e8, Pj8~<|gX Zmp@ Li4 3Q)E Ah F0P (4iozKiɷCY |kzt!@ aa6;FEhDdbp#DIgd^)KSwħb8 n#/q0,7LK@̂QVffLSǐPђ 33\>bf 3C,w[wwkw+;@ljiZ 4" AqڐZ"D'a6Jo"xBDoԻr&)4 X-l!*M.,@ G(B ;@J~,P?ҍPVWB*1k!*)P'w@^ĂN(%F4R%F Dav4KTI5>b{V`/wcǎ<=C{dՃ%!9-Ɛ5c K,YVĒhNHM}E;$4eaeՈ?FM p| KGQt$K*p[,CX Eg/gܰ  'sˆuF \b./U78iҷ8ZY4<}v`Wh" B@bNB#3A]I4nO)zfaPV |B^,QzVVV66 eS8`ŁL33M)ӣI=K vh/ѥQ HdL~(f!4)  90_?HVODtJzB ?('Ǎmp\ٰϵ/31uce˦a-]tn#-.^W:o"r5_/2+V=&ӽ8쒣K A(R:oS ;f#GL dK}tx1ݡF (=fKVefuf+Y^om *1#KW-tGy+sʳJ6N ([1+^cYM'iŒaxth:^ cQIG3*MKfPd=:8X(`@S": XX>/dʳ_x⤒JvmۉEbCx[ /Rcf١h*ה]F9SKl9%SPpQ`BA(;1DĀKgL^a !J{}tN9'{K,?Ծ)* 4|Z?U3'6HEiΒuF(NC**W.tIJ\@F5: , Պ2g钝s&)D@4㗒]SlYY֬zC)yfwwkw|Y PW%%+P2eG Q:;tV{@Ho^~$]$tF"y3JWO.]xGfsuJrAڶ`PT<#8/d4V>}k9,߹ /ո hA"Ia5Jvf>duKf eL*ّZBiassZKM\P bbA 3xGyb=PJ6gs?]0q C7Ÿۙ[rh>1诟-.9VcS]h9bcK7s-g&ӯޝߖ;kE )'x=}p/Iq?&qŽn y%W < p4KG~ :bA _toɇԽc#wkan>4\]P泽?s4];rPdcoJO]~2}ge7qͬ9c?!i:gk]mjfkcH#KɻeK-]qjs]-1.v4qfzEDϢEKOw<󿕴tcXqrO8tIl#.>BNI#{쫾Z0=I};q^1J.G˕=杹}%2W8:i?Ϭb^ ^sfaeJz8Rw[#)+3f{''O1]&%?-9qυ~wĘ]9?Cnxo库cÇ$m߶KdqkKGbWy)k7񹷄wJ}t->T*p'J#;,tsdm=u{Ղexvٟ^^3!4NYd}\oV9i3w\rzsm֓DŽ)8rnc߭zpUBOW_Ʋ#pIG[}Cd^ˎ=zȤ>w˶'%; +lt#5=|ﴢȠ%)?]R#jtۅՃJ>^ayZV0Q_`GaͅaFtYz,ЅahO"ta&mj:ʍ`3v\Hwǿ9:a1.i}a5~Baɕ-n2y9ZYMVU㻗0 Z_f0lb>ш=v٨+|&}nˢQ-Ż7"S-wcpXʆml|ġ''`wirrG^MS_K:=]^8!?6i_ZP0TiwiA; >Ƥu`tmЅ P$ ַd!ŀt=`%>ڥMmexͭGKK7˯M؂ߝwgw[>opgE{:Px8c1i˪ 6YhO}<_ᡉG{g.)__8lLpP֩7ӭ C̛|]ɞY])?߶quOOԴ1rF<7ɮaiWnE ey۴w{{].q]Xe˳hР.< Z<ԩq#wRE0??gC&vz͹nħ+S-b߿}INɯkU6?q4T װoպ2 GrʠqWNs8 |nrjrs'>hTv7>8oU7Ic [<ɜ؂!7n2]wGXn1iwXʇҞ_󅗶. \pOz’7=2CG{V-:pB%Xً:p}nUBiѝl\*̏csws4ŚG˫^O}n+s@́ W>78*ztrνn:Nj,9o׸{G ~lc4pC2s?s?ɯ&av6nEY]]|<}ÁKKRwΰH}E6bLML<Ҭ+WVf1uH=+&pCLrpɚ;szһ-:)寛l^>k yk%[?=[BQ#w[5_/fo*;}ֽg9Yswg']7{^6fOU,Kg$HC0>4<ײ7HU{lj;`iO[Wӝ^Y3gm9~*z0kݳ5=oWޙ@ѧ|c 5>os4K/;59{'ONfXsC'<~fR 孍>مa r-_ԕ7qwZ4QN#FZ5cݾcq"sRS?玘wmDŽܒÇ%=_}8Rpua;Oe]7N X~zK+G? hk?/Xvyj|I#G%ߦ?/{t'Mb|r%U^8>M_.K*f=_iGp9e'໳ 7}[E$?QW=.rt\\![u}7LcvyKU7mW5~/Ϸt¶E; +hI4c~ߖ1%Q>:.I ׎{kQS5-ѭ;S/=]SugMm6qSib)f~ BT?,o;'&d{g?z Xp񪗪;Ŷ..7 *g^xblqTxy.S/2ư:09;YGk4?|pAsGY,۞}39MLhl;1ٯtNCwTqJ.:G.I>?\4*3o\ٓd{>L{J◣|S3]]:l] eӍ+}S pջwsK6|vL}CanMv^w.]Uz?.N۱eu5Uaw*WnV-y#%OD:0wey۫w^ҟ|]xsѷ}2 Ml]k'\6Z_ݝ}?K s.YyȕĊ ltzBA{~ }uvʬثWe{WϬ؛uhᅇ~^k_,t1"ܸ7iO7Ɣpױk%8v|=n}V9NVmsro^OZ˵$!yS~~m{,5XrqKǖʪnYuNg*>4ڕ7]]ղK-㌶9דWv~Юi[_mo7^e5㷰WgWi0f[$,o짣xͩ ~ƒm7_d4@/oqg9K/N?c\!wYe1o{wЋ ?ƈ2Ŭ"Wk5?Utņep ['9ZHcXci+/6ɱ{1fvIdž7nxS~ӇwVKcYՋ* Q#pv|j«'.]x.Жz㇮qŇ4Έ-7+]Kҹv3U3]촸U{?`i2*ƒ5Ih+fϽmh~*kaLOؠf۠ 'WUmsy{kNqkj2#}ܽ;v/ia{ ˬl E[~]ևх/>8eY>/dgU%^cJ≑D(|oșgڋ[]:si[ψO{ԈZD޾ɬӠfC}ZnB;egM gNi&N_&5JZwÏG9GN\;VǕbߗe:2Z㯏kuKcIX[w>v&PW㫒1 \j^_l⃧G>9W@?^e:nCozwyi[=\] ^Lʞs4cDM˂я}7Jqg 2ZޝoU.g{dznџd?N{fm$trK:z/c,eov#j.X PkL˚/ $ӸCNwU1ߡ V姯}0jk1}|lwGgɭViܶsO܍n>Ttm NyQUᅲ~|,9ڎqj#g!7a62ǖ,o=SE kb~2S8\ה|6~/rj OG-m$ߚ2|$e~j+PF+׌!z7k2E%s'n3 ,|  N|wc'#%ih?:ifq¼!mnZlؼY}\ev2pAuyrCٽ;X4{OKFXX52L^\㏻/Ox{'g>Y>G/kf'*?T0vS+$.* CO礅&7S>틒y}&l<vL8-\x ş^ +qʶM x+̼Qmrk|mS+mNe&EN]0m y{΄Om4suq i飫(m_3Z6cʻ~n[^h8譄4ᛌf҆3Wt w.nM~ oɷætb=h0c{3lQOڦZg.-FeH46q^@}S{3fpoG: .>aioEɗKrykW=bbލ(s'5n2~R&sÜcN{ʁ[,pp3*ҝ+rJ*p~hm̒u 7%C[Ko -ʗi v|1qj݋kRk>T_j u1^I'دb8i6Pܟ~ tf߷hxof߽5HӬ bRgT;E;}G?o.=yʓ{d|(qw<c)fa6תZ(LInѩq zUiY;5eM^MdI i^E1x#Ĺf,уyouwqCu`Zx}vA$ǀm%fU_|00r;ܓpg?;qصViwfr--rم泽{Z|5Cab煛͇?yJEweuiǩ{n)ۗJQ*Yuc?ƟBt ޝ;?XdMQ u~!֧@u} N:xeY|ۄrA J?{3jeG~ =6넡pm||ofTWx ψ-.}궫eg^8k6_Rj,Z 5g瑦hsꊎ{&}`ݝIdv53hޯ^X<ÂOF'=m02e'wIZ=Cٰ1}ov<6UZ,֡Y>Pv+,m&{ϑym2*9Dr7gtkM\qPi&uJp9Y* Yǘc6f1&^iDŖJ1Hdp"$ d<r}yg9qu׾<ǝ2v0WHE%=O ?fkd\<ӓum1/$?u)X~ 9%ttRKLR_p<'},;-.D_!nSY{_-sml_CE&lTnFy+9iBbu &uhXn`5i~HE%_v ۯ,zyޅKנQQ;mw\ cf7oak:qE'UH7cr,j?W'?N*sh;JUI[QU) kJb ֖j Ji:7mB]Չ75U{rI~rQz|s qޒӇ/o~|q)G.M Xϳ>]?^:nj%|L;Ut_{ۿ,2TKqT[ᗳ oĨ sw2?fl}VuΛ2"}ʻh}ɥ/dtWG:wnqxٺX]}:mOP4:|~2VCM̢O2SBhew:qZ?+ <s1s7W|di{^<_6ݽ)+nv\š5b.jg+dS\͖ا}WB{U*֌ELLkמH$\Dz˵z᳼KB~wk;I/ϧ%GF#כּXp ,K,5w+G)He'b`&9ҹszcsl-,PVnÇ{3/{8Qvэ}ׁ?-Τ_ݏ)^eUY\F'ɅNhۗ\n2 H{LVuns*e9Gm]}H19_ᩓn~'2߼F>,GVYFү))BitCVuognږwYۿV]<,iu-X<%)ٹ>?;Urj{GNn<~lCy[얱.LO n8/;qtҗ4IxbDFj5~ۗm7h:wK um]fKR$zb9 ~*MM^JSZVt^Uhwͩhӿᔬa[77eNs{^[o,p0q7%uHF?7*ginL^ q_ A+xtњ-,&a}&_cZCUu+JkNBOjy?OfEcO}ڿߚ;_ ٔ؂)cщkeL.˕_ݿo;,0ݱ|uLp="j^M>Ȭ}TX'nQg:R+j/ީ,wn|P-Sq@5 6`ec1nSZơᔉOe9!2YQj.Yޟ o;wWe5MANM#bbYށW\BeۗfȧREIzǍ^VxGcӛTT7XV˽Z/ϻ@1?m}Wtso?fY^w3DϕY:ȕ)9~M BDBlC ٭ާeY =+Κ8No_{#p0[\ЙgMC WܙU5W"v;09KloĶ6^R"Kk"U~4ޣ5`0rfqQO@\fJ1=݌B~TL }jC/%M˿1:g~ȅ5\OMvj;m$>A=[#+Ij)_N?6\ 8dFȍFߓ9F-jG. OHo'}giTཱིn<թG++HpT Ny7z>V֔Ri/jŴ6.}>Xl6LmIezTVޑ\&/΀Srqz#:nnV64u^{m#;i6;-M/,F/%p)!tw1,uKu\> պC/J1 G&)Am-CJjyxͻK/RB$Քѽ!=08Fޖ[ .8=Ыet^{E9k\#7dztźڎf%Q]]+SwzHRϹPh?v}6|wIGo;ġl,1pnmE9ePKo}c3!.p&cgPPxIMrQPcɌM5/_mأ^=ܡeoe/bЅwYxjm4NZqU2ik^>-|V1؅K,̗to1\n|>@*BAB,Zݹ(3&5kTskӾ좆3uC7:;?~&0q`F n:;r9*%==9FݲO1-ѵ Uל]u+| X^)%u^=!R$1r=>usɊy%@-;!`e{9A1Dq*5rHSH\ϝN/z`éx19[eʒ &qi[ݶm}SHO3JDaJ0eӲ[{47F? /_Rp;VShdj~Rmiemb5=5+_܉ >'d*̻4N,6u~W;R֝Mivh:H yd^/#NzՏV T[CYOܑ74ԇ/ɹ٩qMfMRz{Tp1/[U} ܨZKV"buUh֞|Fq\{ߤAn3՚>Ҧƪ[+_s{%Kh9{[}x Q}m^n:o_:*? yAT Fg%ofuhS2GS2\C4;QJeFJ`qM]Uzy}1R 샣nV)d}VE.~~#PeHvim+; %;)VR&~N|HG^w2U.j.K"U3ݹj߫NEu6}.z {'ꛮ~$|c+g]7R>'hKRvMyznUZ9>(^H|ݪ Kcaʚ/OeCI+3-#X^u ]|w1vX3<9u˥7d499^D6p%eU8nЁ EKϣU{pv*5VFAV7kiY^F7w:=X=/[Uk#w9۞]P*z߬x]41Rmo룐(%=#Vu˨U}Wv0s3"6InrO''d{sﰭjupy}c&LOW(GᢒWhBZܕjcm+ldn^VvS]}^Mfpّp߀3KjNGصcnӧW;9meQCF5Kdm3,W xJ;dkۧ{yYAE*}^+xbADT7U*ER&cL^aH•6xEc棳V>x)-]8:{%)欦Û_2$=qNT0jٝ gܻXq<߿rqoEhI%(`/^FvLM6vxhHX#O ^ jМnz>;텇y;aQrw!  3|c>p/QL13>4^6`G[uIk*$[XkVtҊ8[ǭļ #ELj$ŃkZh$Tg51=L~̼VxSDG_1{pIRC] 30܃<{gzqʵJh GRie :G2@.iMFё |e;1ӝRw=/Gb7!n:"雅B. Ev5YۗFAKpk+i^IEraQ,lcC׭=,cU99f0tJavcɶ'奻k]qp)7QC]w|Sɥ1k̊-6ۖMEǣc8u&UIz$dBuԮIkx.pO)Mz&=?'`HJNܗ,iN3XKde{[KGˇ>֕vR1Acꮍz|^0,3c.~8rowCh%m'xeg-R!xe/njwZ6WiϞE;,~_:iVH[;̂,Rn~wزo>KwZiqت51Jg[Fێ-\6إ`*? 1g*B ޕDtdJU)=' 7Bz}^}"}ړW]13;^OMmy޾\is-m?6_r\r7e]SԍߔR6 K,k*lT#=dɨ-ݎ]ҸonU&Vboi|Mo=Un4_/b $]ʿz,a4茒oo][/jQЏN;Pl]루Vs*l<<ɎgŦ̷z=onUVz_7NoV3M37Eh}VT #c5T~W (XwgM[AbSJߧJL*ޖ@㬕L8pFE5Ox7[z=ҿ;/#ܡ<*8Asi^{´ <{~Ӹ֕τ2 w4Zu|.*ޓULJW5)@ GvH~Ƥ܋suğb5_;8ϫwǬ* uPqV*Q7[v`wU5 uk_ Dhl*HYt@[XEr#'n__QfVˋ&wݾNK~ڒ5v ߰)}K:˛H s/\yC~k\%jrn[{+35^Ix#:eI~Q7k~D99u⛛sS/ډvZSY sJ4.oMY.ۤfgCh@[ suihJ wxoE/[lhn[ vh,n91xиU6xP׼T*oirc7e*l ihk,,W-~IhM]9_|4\i9)%-&qčϤUu|x} ZW> 84vko /u3H4TrBh9:[a4o*j-*=YW;c:.?NRw @RUP{сױ2NHQx1O8x2 t6i}T!BvwKmI.TP #l$p3ӯ} ȋl8nc.w˦\˱IlpNJć~803Q&;QN Kdosspz![yQءU=gF?i 6 mVnhEK)q#VSt 7]#狉ѫ6P7cugGh>]ZzjiQijNZl[]h8NU=mpXȚ'}%탗{rFbbwznu5? IcYͯ>-e}@mN K cSk[_56kikN}Go涡CY8*W͹*jhO* C4Զ&/&g*VhTht*AP6ڙEZmM,,lmQf6{P{mMѨ=ؘ5U&v{,BO`*(v"|EQ / 0ȕL\|Fq>[|PSof/oE8i,Jce/'BaXN$x1Q46GGFJ0>>v00Lbc6oSACF "Eȿlk`hum5&q4 C ai,'؆Q(4*u6Ahȅ>, h$WHE> D܈lqt4to2D.vbСu|(ȯ`Le^|΁a(gDH%"ËA>8:FtO5x x/@/@ =pT,r t:'EHc)^'FQC7P~DO>?ȀgiXR5[ L~qa 0\1&Rd `(*")D&rA7g!bkBC~?Y?2r6HƉo _rg@,2lx:"r3X(GaP{`pØvL`6>DȠh0qc&3S,Ì Ky1(&G4:+_ Q !H&MHChǢ`<#ޚؿ_BCR@,J_x7t{C8]dB搀Z>%p?`\;Psd#0c"'`p(! ᘙ!!<.2EO@{_ۋq@X 28?",JHkvo_̢E9h } @F#F De?)G=HC!(>q>:)_cPptJ袏DãEb_qGOJr?ħۀdE 78A,"X= ψG4,p |!;`)B e8eMT E{L|XHe GHg!zĦCp򹏂@IFA|b2&?HDqO<" m&@ YT!Aec$"~(!ي0e:ZčLnC|9.ŀ<K~i{Є0aY!bY >dv$Hp " ~`ΨRƠDmUEk_ -MyDG4(/@Hq'D4BΗ p %"8" 9VAhdV([\:c1#bf^$JA(ȅ, @rN 2<pF~=D(נҨʰWe PD`L2߈ a!GU4BAv+O7}X`/"PT2(  ?D|/0a߂hva @:J`· (9 ȿHk#9@yapp' ix< #xF2?+݌d  b||PI\|4,CF֊p"]ߤe00t"lx:>G>QWble0GD@F"m7Th GQ!Qb _X 1tZ(&!`_N_+M,anM10àc`i,(BcPd "2q$ yſrppL@gKI8Ipȃg MDA$(F"(4&mY ' Cyr@DOlQAvT` gҳMBY,(mXze44aDZ6#!O<z2Z2F5kڈ4 @DpDi|uP Wp4n&SiwCTD*'HA8JC0ҝ3+cC fE'XpR!АMFG4_ѐ[AyZ$U9in!-Rfn -21!v"GgN.A?SrZB ?HԊ6vƦ0!Rn<%f8 Kb<sRp3rJ+`π>UdS]zIk@M@&F@$'94EI3dv="' 2 k4:k.cH_%4KP"!9BP(ERAk6NRZ5d e(S8Sz°~CF@?4}z joxz⨞, m1ǂqNi0M  V 03hVY$_"!J2Ԓ#BY,w ~7#2+g=i6xXI)"ڝ B-͛$iՔ(,̺^2JCz4-#TUS ;IRNf ^* Xh8K_ȀDL"EY"m?m]Mf$>f4 &SDaH)>"iLhpzRAfK;(1X 0p8dHi. K"`-p8!tCGJk,@ BA€ܢHI='IE&B5$}10o&h_M|F V@1z/S8_?=: HAQ4D 2;|QSUV`M !ᔶ ʄȀK'hhGك#4!+oĚte *ABM%j}9Ep( [Ev;lڡ 10Eۘ Q;-M@CD&Pw1y"W[J 4[>-2J @v5CQ\B&KcX"/L*1P˙*d͓M$I (||0P Xx ̢#CƳ gx@+1C(Aވ61~DxH翾, |訠 PL f@-b^P>\ r&B^4;SpmxO)P8>H8(TՒɆVv̓By*v@¯)P`젱J)% )x|-T4Ds"prnt&(}S$0T3 w7x!o?1Uh* g󳵴" uLw^z3&a*$'H"H߿Ͽ?~\O]}v{ -,MYe@