tang-14-1.oe24090>    f= ;G|`u` ]. IG@HŅ)Ї{ᵢ7bk~g@%^4f0z07ڸ[n3K?WˌN0Z7"aBF7<^u\|H(֌ysZ nYkզcxY \WkmQ"ul9}ũnxx|i] LBXf Wؚ|zȎՍ kŸG@efj[Og-h[/ *Rms2.Du~f*AY=qQk騆SsWzlnEzzkBI!¼˙D6V< AC19dd2bbcebfc781edac69bc47457b9981c0407132371b3ac999bc4466a2f6b9aae4a06ed065d093f7c7214853a79c89c127e79e4M]oH>6!?!d   ? $*4< @ D L  $l=(]8d9l:FGHIRX Y\L]T^mdnesfx| Ctang141.oe2409Server for binding data to network presenceThis package is a server for binding data to network presence. First, the client gets a list of the Tang server's advertised asymmetric keys. This can happen online by a simple HTTP GET. Alternatively, since the keys are asymmetric, the public key list can be distributed out of band. Second, the client uses one of these public keys to generate a unique, cryptographically strong encryption key. The data is then encrypted using this key. Once the data is encrypted, the key is discarded. Some small metadata is produced as part of this operation which the client should store in a convenient location. This process of encrypting data is the provisioning step. Third, when the client is ready to access its data, it simply loads the metadata produced in the provisioning step and performs an HTTP POST in order to recover the encryption key. This process is the recovery step.f,dc-64g.compass-ci*GPLv3+http://openeuler.orgUnspecifiedtang-14.tar.xzhttps://github.com/latchset/tanglinuxx86_64 ff04263ed1cc98d60cab29fe47f908921b7b1aa4d6da5f9de2fcbe543773b758861efcd034acd8dd73d7d838a0d7255e4000e1eb2a7fc224352820615b2fd62e06 rootrootrootroottangtang-helptang-debuginfotang-debugsource  asciidoccoreutilscurlgccgrephttp-parser-develiproutejoselibjose-devellibjose-openssl-devellibjose-zlib-develmesonpkgconfigrpmlib(CompressedFileNames)rpmlib(FileDigests)sedsystemdsystemd-devel3.0.4-14.6.0-14.18.2ejdwulei - 14-1wangkai <13474090681@163.com> - 7-3- Update to 14- Fix CVE-2023-1672dc-64g.compass-ci 172740407614-1.oe240914-1.oe240914-1.oe240914-1.oe2409tang-14.tar.xztang.speccpiogzip9utf-81abd83c57f63d6b6631a959bcb3390b24eb79f48b6dca5a27f1f9046a4459b0b77114089ce498b51c376406d145174d19ee096faa50b43dc825ba6b8db87e1c0Name: tang Version: 14 Release: 1 Summary: Server for binding data to network presence License: GPLv3+ URL: https://github.com/latchset/tang Source0: https://github.com/latchset/tang/releases/download/v14/tang-14.tar.xz BuildRequires: gcc meson jose libjose-devel libjose-zlib-devel libjose-openssl-devel BuildRequires: http-parser-devel systemd-devel pkgconfig systemd curl BuildRequires: asciidoc coreutils grep sed iproute Requires: coreutils jose grep sed Requires(pre): shadow-utils Requires(post): systemd Requires(preun): systemd Requires(postun): systemd %description This package is a server for binding data to network presence. First, the client gets a list of the Tang server's advertised asymmetric keys. This can happen online by a simple HTTP GET. Alternatively, since the keys are asymmetric, the public key list can be distributed out of band. Second, the client uses one of these public keys to generate a unique, cryptographically strong encryption key. The data is then encrypted using this key. Once the data is encrypted, the key is discarded. Some small metadata is produced as part of this operation which the client should store in a convenient location. This process of encrypting data is the provisioning step. Third, when the client is ready to access its data, it simply loads the metadata produced in the provisioning step and performs an HTTP POST in order to recover the encryption key. This process is the recovery step. %package help Summary: Documents for tang Buildarch: noarch Requires: man info %description help Man pages and other related documents for tang. %prep cd '/home/lkp/rpmbuild/BUILD' rm -rf 'tang-14' /usr/lib/rpm/rpmuncompress -x '/home/lkp/rpmbuild/SOURCES/tang-14.tar.xz' STATUS=$? if [ $STATUS -ne 0 ]; then exit $STATUS fi cd 'tang-14' /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . CFLAGS="${CFLAGS:--O2 -flto=auto -ffat-lto-objects -g -grecord-gcc-switches -pipe -fstack-protector-strong -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/generic-hardened-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection }" ; export CFLAGS ; CXXFLAGS="${CXXFLAGS:--O2 -flto=auto -ffat-lto-objects -g -grecord-gcc-switches -pipe -fstack-protector-strong -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/generic-hardened-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fexceptions}" ; export CXXFLAGS ; FFLAGS="${FFLAGS:--O2 -flto=auto -ffat-lto-objects -g -grecord-gcc-switches -pipe -fstack-protector-strong -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/generic-hardened-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fexceptions -I/usr/lib64/gfortran/modules}" ; export FFLAGS ; FCFLAGS="${FCFLAGS:--O2 -flto=auto -ffat-lto-objects -g -grecord-gcc-switches -pipe -fstack-protector-strong -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/generic-hardened-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fexceptions -I/usr/lib64/gfortran/modules}" ; export FCFLAGS ; LDFLAGS="${LDFLAGS:--Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/generic-hardened-ld}" ; export LDFLAGS /usr/bin/meson setup --buildtype=plain --prefix=/usr --libdir=/usr/lib64 --libexecdir=/usr/libexec --bindir=/usr/bin --sbindir=/usr/sbin --includedir=/usr/include --datadir=/usr/share --mandir=/usr/share/man --infodir=/usr/share/info --localedir=/usr/share/locale --sysconfdir=/etc --localstatedir=/var --sharedstatedir=/var/lib --wrap-mode=nodownload --auto-features=enabled . x86_64-openEuler-linux-gnu /usr/bin/meson compile -C x86_64-openEuler-linux-gnu -j 64 --verbose %package debuginfo Summary: Debug information for package tang Group: Development/Debug AutoReq: 0 AutoProv: 1 %description debuginfo This package provides debug information for package tang. Debug information is useful when developing applications that use this package or when debugging this package. %files debuginfo -f debugfiles.list %package debugsource Summary: Debug sources for package tang Group: Development/Debug AutoReqProv: 0 %description debugsource This package provides debug sources for package tang. Debug sources are useful when developing applications that use this package or when debugging this package. %files debugsource -f debugsourcefiles.list %install DESTDIR=/home/lkp/rpmbuild/BUILDROOT/tang-14-1.oe2409.x86_64 /usr/bin/meson install -C x86_64-openEuler-linux-gnu --no-rebuild /usr/bin/mkdir -p $RPM_BUILD_ROOT//var/db/tang %check /usr/bin/meson test -C x86_64-openEuler-linux-gnu --num-processes 64 --print-errorlogs %pre getent group tang >/dev/null || groupadd -r tang getent passwd tang >/dev/null || \ useradd -r -g tang -d /var/cache/tang -s /sbin/nologin \ -c "Tang Network Presence Daemon user" tang exit 0 %post if [ $1 -eq 1 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then # Initial installation /usr/lib/systemd/systemd-update-helper install-system-units tangd.socket || : fi if [ -d /var/db/tang ]; then for k in /var/db/tang/*.jwk; do test -e "${k}" || continue chmod 0440 -- "${k}" done for k in /var/db/tang/.*.jwk; do test -e "${k}" || continue chmod 0440 -- "${k}" done chown tang:tang -R /var/db/tang fi %preun if [ $1 -eq 0 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then # Package removal, not upgrade /usr/lib/systemd/systemd-update-helper remove-system-units tangd.socket || : fi %postun if [ $1 -ge 1 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then # Package upgrade, not uninstall /usr/bin/systemctl try-restart tangd.socket || : fi %files %license COPYING %attr(2570, tang, tang) /var/db/tang /usr/lib/systemd/system/tangd@.service /usr/lib/systemd/system/tangd.socket /usr/libexec/tangd-keygen /usr/libexec/tangd-rotate-keys /usr/libexec/tangd /usr/bin/tang-show-keys %files help /usr/share/man/man8/tang.8* /usr/share/man/man1/tang-show-keys.1* /usr/share/man/man1/tangd-rotate-keys.1.gz %changelog * Thu Sep 28 2023 wulei - 14-1 - Update to 14 * Fri Jun 30 2023 wangkai <13474090681@163.com> - 7-3 - Fix CVE-2023-1672 * Thu Dec 5 2019 openEuler Buildteam - 7-2 - Package init ?tS0 Мmxm۶m۶m۶m۶miLv7;ll oXYMY 'gjߘl`kFLlH ?l ͢@hyt'EGiq: d>OSLl^ت.k)+[5Z#65(ʦhLJPlv98iwNw0"Dv:NMǰɮ(7WXuwPQ9m]ibדX 2܇p5PFhAXP"# (k;D+kD3t\*FqfԮ݁6ϿPPN|X?$ ~` Es&>@\%+@ O/`㒚C4TG-1ūgBhZJwD-6kq3T:QU|>d^m4&"zaݑ̛19&~^[/+đO)#s"vOD7rݲ?z5%|mokH^tA rP } _ъ.s&[39ѕ:މ . y)e&AV6={|%4$ڡD|줨$pM U'X>F7+=(c3Nj%a}_d!4Mj" 8eQqfDPT7@ѻ 5%Fdv9\;'d1(*K0 cճebޮN x}uEΆp>ӍI^1OkJm\{M Wa%+3zK,%C?XR>3YgaIۚ BFa"3$.ծPN~]t֥*YԼX/>H\f+|@בwW=aokPC1O,Ĭͫ;]!^gteVwFwZ۩# VκӴ%SKN7 skcY>RGL@nT ү}iS#յy(R:s|ٓJS[6hΦC-}DkI5gQG*Rd/?d-7rvD1eobzxu ,GQx5uW|Q ng~? ?=ꟊ-aPK2g@5XQ[DQh6q&-mfMB3%>z63"ٲɫ _ ٌkT*6U&GTQ,0YE<9 ! 1M2k*3>"-24I7H.l>J pKgtoK"ęM903ʽHiRXNƏ<333, ]r­]~ (6Sh+>KB\@h Zy{V%(.ҧTa-s\%:7kj^F Ǹ!_(A5(j&o!>>O@昀AH:&}.G(Bd[Y(!W^ gpjč=#֡-^5zySW>E֟wYoz( .ffs-xׁaHAU3,:bռ#7M9l&Y2Gj(FW}h WIَoT 8MV`u~QF4%gYpBJԪW=쓤;ߡwoڢ`*]YlÁKڿ}nLT 4t:r{v8mNʘP.]10 1IGEx!OS%'o;M͹7h> 5jE*mD¬runtYj…J:FG2X\bhB531 (B2`"/pG\dM63Ыf-W"ā*NEԇU/*=͓;st}KĢVRy*$V-@j<@{kl [I)7'h$R ~DH 0Um# =Xf ?OWi<ݍ4H2pXr4YT2}]gP*1z[7٬3/pA9[U`2?u8fOIy(/i%޶hy!a!AVY `RF|!Z-o$sog%_Š02N0%;s`5X 8l& Ud&%ӹ—H%ʫb2CA<"@U$甙H Wv$6+,xGgX{^!7 hPFjG7so$dLq ?% n- 5fMz$J6$ƙfk@)iDVJroe'.e}Cρ/0 2YwYUaae\3\cK"6Xp ?WlEh}NcQV=Ҧ Gؚ'=L[[үhmfs6T;Z*RY LyWdPB*7=SLfkl['sڍ(k}N(q8r; O޺֥byAevB-fDe<4]Gbgk Нlt\R -NR9q鼭t kȊ]7υI>fbyAtCA"|CrؿgԜ V`1=*ba5k1߭A goǷY*|bJN?;oΞ X}]%' `&]sxO\)+Uտۮ3ZoDLo6[(VEqJz\wTEm` ?["=q`x>_- hX]n2.!y@٨/jx*!0߱G^Fs3nh),NAͽ͆1}#ePLR5h[i?G_ߓf~k-o9)T !?;Oǒl ƌ, ,ʐl5 &bf2c cSiQOf7?[v#&/L0?J_EHAnD#izllB-ꦻ[ f6#@ڹ42,y}pMput9H:Z%s$hj| \>w)M㤨h%6WAzHݼĈl꒢TO^ ` Gh[w#&;YpD/4\E*)R!N}MxU=O|d-*# l#dajDvEzO ^~]. ;٤' PPO v>_8TT9R-Rk3#ĘW58LdꃟBĖK16mq+hϞeќ~n*C6R9YJ4n~5Yc2 )>3cGKg@$A8&5>3Yֹ#fNgAHʁ"9c,n%躶ϋt||Bx"q֛}#!ht% JDg8O,I ςѽl]=ގ65 .1<{M[{'AòG|7üCAeK^Zeuh{iKPy oI|SAoi잲|YMIj7Y@vUjFNP*򡂴0w!§?Lw(;3cb-{?Tnu Brj{E{@(1Uxo C—ӫT[?d0t ˵\#Lf7("_nk P`; M.qweu-z4O~"Lm`:'ke˧ngۮ<щqtmB$EʯhI}e?_&g)CY:c4p8sYXU=hc:DƐ`j aAý ]|F8G,CvJ@a$;@sd n#elf0˥mEPמMÈ&z^ rZ_kpQpa?HCZJ%svR +ύ5Ti/+:BO|IXToaa]ډ;:jqq+;GjK2īi< ("% >٦oU- 2sAr {Y*.6Br l2]gDFTb5x,9e Tn>v8{xIVK3@sʨΛ@nizU9Rr0?kG5' axXr1ȇ X U$&:p̺ kuv6C\qTM@kMRRU :RL )y0A UbDw.w>Вba)'/|A09?i%?gv̽0E D$U<2,G[-"OlGMZbgv,R(ı)e;~ARJ6D`]q+KͱV چ.@hƬd|(|.-nv ,kB֏Oͻr 8[zSX#EܯT~Ewyf\^wrE,4 SZ5R~\UV`T,"QWt oB5$:)zhf1Kإޣ}fgc'_/ (IOuT 9<'\{2֤vJP].JSc?")igzbB:&1pkDis5Ξ -v@`8Oͩqky.Oҷcyp.zlA5 }e>a5<t#(r2myj.ce(ս߃Dk)ΗPy"2)*' ?5G!;ZR`X'_#* %OFon'OMvp ȕD}in|[ڀc|VVھve-8\Q~E*zĉ t5uÈ@@:(b~֭TbwԌ@)+lDW#, 1+W+{I2`ɢf(!f>n U$ "b2^vJq*Ė wօ*~Ȓ|(%Ɍ . _T{07A!lP(O2KR(HpA _x 1R`HY{UZ6Rh]y{ωӵR>in"Osq9zHԝ?{GҌEJ:zv!/➳p.1VFx<8罿_c&]@NvG)ࡁUFYN߯YY/u> c߭}˭^y` 5M?Q]&sr mrCw,1%&?ENDbQ6/'G0LCoClت?o9*R'C!_mVY(Bc~MrDB-nAP-qL}X6?ÛkOFl5E٥v+u`b~"ȬtYszצ zgdQX6j'k !CYuy-PYiݛي bF悋tnu{_-pz+BQ]29 Uf zkmf}s>=W߸l;F[uPnT c]ѧfG|'|YB[mi oAz.ՌS6_ 5 :Z;]&~$s;WƖ)4P1P+fZҪ켃y:%U@R[=4< e5QR3 !nvNǀ(oJIvlS-ςY3oRKOn3rPQ_1An7Ybv3ض{I#Q.O)櫟4 ǢR.O_ S)mM*{ЭYe'fd~Ą.!fmrhWSq߄ }e ns Qm]uSr ŸgoO,Bt>3~)N "Q   CߣT=uΏ+IО?~킎U[6ݎ'Td ag(o1UĪq2 2%deIrSt80k ty09,n2c5< {A9uY*,s~80޻k: 1x,[z6(}>L IZ& `LM HNMCMMO@tVV VM0`$R2a=bE]o!%E 'ss `0ۘݭ"ˏ^P/4xaz< _fGt% =!t2 nFm@7&a)Cr] MA\ƹU4*1ygAidը2ltԷ*v47L|zx(Y?8RK.X:{vN Ȥ?bV&]q58V 85bo&Z )f5( ɗ8|v|񘮐;JuAc$.Ù!b>r)=Cn3qNׁC9PL!XkEM'[G B jy[s2R\~uMi<)b^5uI6/Ò<)/BZp0Myvs4.x/^ }ώ&f6_hW*m2MO[6r <_*jz.CMs6{ Nݕikڶc\%'ȳ4RA+V+رUadw{ d zeJ3p2XmX[Q! /ŧj0;MA3vY‹91Y"nA[C)uQ, ^etM8p3hYS/ 2T 6M2^ac/BClT PWGR8h %?mWB.gvP\|Ug"3ƗoKsZ$/$;Yr5JTF}{esQ3%RYHqoPzߊMjje^W; _W LJn2UO&.#m bS1 h#zD 13ӬTghbrȁ;zjCNffRy=阌6eP\"&V.9Gbzvt$|E9&Nŏ&tPWP4xX$iGb;*Tc!ֵpѵ!HT'ҸsP摄9sx9=B ^7dzV=gJw8"3ýnpqED[ ueTxZ#nt %9tgTv(kA8TAQG蘲V% OG< 8=fXw0;>FGZ`vN#,+A۶&_$.qt4io X *(B;S[C 3ovM AqicF)M<O+<9@#u#mwJ;xw6QX@x[semeY~/#DXDb:C#jk"$|ΖDx. 6U~gg? q󂎛ǍM!f<9a=܅;K4!m$A- ܩQM泰`zlv oti(O+NLrvQm QE|pWİ+ˮ*7xӦ~L}FO:ddT.ڝv$žflZnR7淨]pR[¤+ut^:C\ tQ<ޕkmvޒP70Gzia_~s=8A$(h@8sKjͳF46 =gYX̦Z9JEAnGLuYs~tIvT[_`B\1=M'[F䃯OHe;.owD5nֱ]8|V]e'_TX IΎ0" P0:VzdHTJ*tErّ(("y.;Kѥ[Ù!\1{Ѿ^R&T3(rUWqM?W퇰vѢynDjC<%v"&% P;\BD72Rq_6i !Tuqa\Z3өq$mm~Cf0_}`K" mnڕDjN{bjv?"2 i=4UdE &M ~Ȋh +< k"p-u9ϾaFo|͹NFכ^9f@d| SiG@4oG5{y)$G.@j#8rG;,j p-89O{a2#V@FKq'nTCzb&)RMc0}mߔW I%?>F5l"V|Y!>*4^ۛ;>{_h__۲%/kUbkųc_񚋉$d}-$6+<ښrfo\׋طVoUW%7Ίm/80>lߜD=]b@ݒAAԤs?yn.;Az1Ğ6?I@TXހʢ_dMa(w W%~dp`x9f` 7FYfƈH{Ǭ8TTGr$f@c6M,n jo![9[oʸ$^&zEޏ}SN.D`8"3id?Dѐ*&! 2DE+MeP`ZC}[ko.\=Q;26g"/ΈF[F@U8&IIw zg|P򀉖e@7fZ΋1ćJ.2n8kdy`X#NƉY\C9%- Jc!z~󱟪oe4>C뉲<$X>YIj Ng*L7sT!*SF:UnηЊ#/:4 *vQ_tB8djIг2|":Gg"Fz8tGR)iO(oUBex\1] T*A^c {H~Z[ni䫵 !:W%G׍y~ ƞoSw gBjȌd91*k  $zj\nkxo5H`-KApWS{]3XC[bVR~eÉS^˗ i*[- flB֕'2oCg'УMhlZam9"žCSYe +Q dXЛ6Jn(l<RB# Dp 2-5qf멜 +6L.Z6Hb3Ĝ |%֏3K")vY)4L#f&"k@֥eRDe3+_@h_)ț'rؔ}#XYfew#Qp)aHF?N?n.¿lC,ah`؍CP y+r3kygrKFՠ}8j RӪEN "`XÌDFaXG-CFGʮ\wsONXZI冺Qਮ)VʀYjt.&\1iP$5"~;QÚ̊ $d|"1-mڋ!f wx-"R1nߩ$6U7 @瓛HGP1eb;a犢Ft[I  N*!f\`%SA#\gAR )tXDghS'|殒P.گ6qځ{oM ؆pG+\[} D{9ZLȗ"q9v-.]+Mh(қx+mY;—2,RyL ",xtYY6Q Mқ!OK(@i_Aޓӊ0te18$6qP[֕UNp|ע:25yLbC>fiX ۳d:u}(a*^T2/GjpR,cGU)fihoC]Z);&_u[㈄rh}Q~ιht!W(Ka/Y&{R4r3l4QMA14YAۼ,򄅽uC 5tp@rr=Wz 79B¹tTfDw!?]9"MQy %9@e '!ٞ/b:~QfjVJq:Zu awfMnI9n&G6swR"ۇ=8.R #?fsUoּEt/3{Ɨ"8z &zqΏ@\?%g{O@]CnTupL%`N\*zȽwQGÁ(σ쏴0ГB{My+9{/L&J+ !0"CenJdHuq&SAqX'F$N LϯEUh(66Xf' 2EioUaaJLm d8~ȿA $1-d>bUC"? -{!,%~3o$3e9˜r')dmѺ6OϽf_1JxLu@>(G<$RBLSvŚ!sS@w.  6O;ge[zqD5C`_ Ѵȧjd{8mj1U"R+]fxٸBu*@6,jl @r5I1s4vD=K B#zrdyIКЫ!v7Ӛ.f1A\FE:a8ee$!`.ܹPInX7)3j1hNF ]%.9*ʽ$iCb&o76G1eiUDe^J!Zr P^MOEׂ"ܜ_On@; mDS~U{H 4ilv6g!w~4ݟ !nbv*Ωs!04\VސNfGqW=K,ZI)ؚ$}YʜsBebvǁwZo5|Z}j O+'}MAV9uFR*fOVuHa+\nU%ǐ/;|aU @%0;X_AKã[u#Y'cWxZ9/ki ܶڢҔKaKNyd.t(7iJO?{ {;1nQ.!a%{`:ؙo_jyU=˨Àu钬\԰ AuOOJo$@w?-)uJy ]3:=S(==}A){x_J)c>[P'QyVziwp2MPlXY|!1ŷ}R%[;RcظAas&pU= (8ͷM<(Ė7셒Qug\iRtx-Fd~ޠ3mWg:ٕJ<V[9k{"J;)dGq l}HB>u?W:I(?l" 9eW$g3` ;.L C148Cth-H5Ϥ؊[KD#z5 'N}B^uG|Z"dabIg0 I:߁ ЛC}8%%GDe$UPٕX0cYP&)F<MYK (lt 5D(%fI5b 2ֈlF` &Q0 N-Y![ 1m6%Q319tC5G#EdWF-8 rL l44}օr1nҌ2eZtc֓vr_=h/yAx<?yYft֖r@S,p ,(+xBq1Dmc$n>~\E؉k4\>@ry{fPjŅV'po"U* P-bzip O2]:yJØ92T?N!o%eAw+M9_;aە[w7q N9ѱH1kZ\67 {bV]}(}ect-^&Ҳ%Q %Hhp~YܐV"v 'r;,ޟȻaXb$r6^KF'4lO/sճNm| m Jy?Tb~ u`+@Ax ҵM:m'!ߝ}tޮ"qOޕ9LSʲ \g5J<%%z jcƌ_yoޱ}AC֦I@"呞:ݗU͵]>ͭtZ sS?O?hn"2\u5"$hlFdcc)hƢ-sף$)5S4b1ыգ8f$5T/g0>VBYlק6V{ED;AqT5yKȸlP qr̒*EɄjYK}woٗ=P̀(OY"G2֬IצAfzF]=FmF4!ޣanHfhvjjI쒆p pwB3rsL˕8sN0r-I$N2u'ϫ/\t.1|S"oWǩ -jJK: ~[ill@vzQ ۵e R|:1ڊ M>^8}gMD;|?!w<~ ٣N/4OZybRD%J(Z Q,]W`=~Ld=ͷ(k#..ԠF{mgq58iҷ3uf'DJ_E=`})HzD}֫CT&Ԙ=,LԆD}. }ؗ,4 ,Aˏf dQ}6ڦ!IĤc %Ğ6$c̼}Į"!h`}ܵYT܉$|_Ho"]6t5$ҭSI5F+cڰI4lkf 4"g&G'UuY:#͆pQh3QtEӘV%_Ӏ⮮`3;2e@hZ5sUB2It7  S| n z$A٬.?Y)M;.IyYU XmBA~/3Vg|۹<ن,xp0)6u&xMA&~ֿ8z:@Y0rJgYwcz/ AfjqvҦ4af$-. ߶Б۹}W%F5c!&mY^X橱fff嵺ߵ7@"VBգDח|ِDQML$P!>_gZC"uiF~ oqʙsh;ǵ)?L(,]YO"QC``EIhm9Z]۲77HH ~ 8X +$z($sOV5uOѵb_x#_>@R}Ku"M$McGtL!ewD958^}u7`$!#y<}a/'tML/z/*pl\ۛS۰&w'5dϥ/  1Gc8צ9 O (LH*_*K/"E􂷑ɶhý#"pIUߓ3/|{3nC BpiN$,y0o{R~ATn/^n+X1M KҌ<hM)PO(~7%Q]#PÜ˫cp%5U9<װ1`Fj؍a5uY 8 1<)r,0kF"jϹ-=BPofv=`'RT~;,`J&ǔʻ9Lf[l`s9O<UC' K傈dڗ¹$1(E,uڙ Tpx²:}!# ԃ̓Olh0\=˵ 8JUC̈́֩sX&eEH:4TNT !£ΘWR* dڥFᤕU|Йp3R$ę۫δp5A3MpmK+q`3z.g )VGSI 2sʼ$&6hwj}0e~N-F PE¼iLדx)gHkݤ ,JUm{:4_BJϺßQ֖pP3 .`X-lfGb H@Ly&rn㚳Q9<'+`CBsdo]$j6gDPzHp<Ω.`L41'CE${0RUr O]RE8{7ƶ :)x&x}@撚1ߴ&6Hӧ5yh沞]atnvZ7u$"bK οB~x!)vikkQ䉁L( +-5ڊEhБY|# T]\ӵSлaY54.t8|覞, Glˌ~`Φc+>Y\q;eF N<_Yo|k ƱQ5ݰo^hvg,1MwQ ْqf[g/|Nu@ZinŪ/@Ne9𐐐C@{d>%3/63qQ'{&_.HL./\ğjHl7uÎV@+ >uI.5c;dލi),FOB-!c;C786:1Svxi"p|(T-yاX4\iӡ̓Pp=slqT%|AޖE9^= 1'c+@el@u<3}BJk@ .$Z4xlM< kD׫9~ qu2F)a$-`!O73֠V1 hʝgʤ?)ZZxk|a;GODN3My7~U`b^8w_*&ɬq; |v( Qa‚Jeyc@Vأ*sa-U v,`dqUt҈nYaGpp륵^N[q禂@ze䃦ATx]5~muBԺ?9yrOػL9\]>y>t#}*h G/Ueu طQ#O1  M=)ϲԄX 9VdzcVE!F\+<ɝ+W>5dEM_+ 0R d1E-jSW)'BnKqwG^LTx.ܫ+X_oKgT]}ŬϑSgpfB?yQ5c=nz&:q=C)-m$D"b薻M1P3ǃÛa~-nR YLyIm7KeZ^wh#a>xXTtؑS֍>6;R5# PvΦ)|0)A-l [Dwd:3n ]rN^-9Ο0. -,-2|^Ld;Q< 6f׎ _rN' VmRqݜQUCy!\L+OkD3Я6U-~Tj?YTp TQxgMT!wza"kmX rm4m}Y3^"6+zaONk`ҥ$LFxmL#JR %A8ے_g(CjҵjPcC}\?;6\ ",J-zmk'<S!Js #hz ߌSF _/(zA 1dɄx@α^6_.Vtq]I׾L}PU&֌d^|97IUk&v4YZJg}\JZN~@) xMW2W")*ް4t2#}vWk֪9;( =7_?}ީhq=S6`٭-7舩x-4$Z?2]*Q:r$4xJ/j"+21h&\SDnqט (ua2qXk.PVM`ܽNk苰Sv;#]=(n @evãܯ0i\&N׻I^ 'NCYbqWkIcNh>t~M0c+\\TA =E5$@yt3n6 rax $,KBklZdW>nٮ0f5FCQd._9D_FNrZ-\t/w$ ,&i UN7=P"^jp/BFa68/x|u+d.,C1jLX+tQFU7]>]H l֪Tђ$;]9q|,aSiq0>7ܩn;N13zĺ D~6NT u:squ~?X>}m)Dt킖DL̛,{dSZPϴ6`O:H6ȤR 0 ;6l\p&!SxTQ{i2[ F׆Tt7_ WL?;$<0K ubh[Dn ] >xDS0fô<@n%}L'f4wKWYPW=7UheYMˈ;F}m<  6 S?dLAᯙUO4mN/Kh찯S5#!lFᓴPt lA(= ojKcQ- ?d]OO^W;dKR w+|s7[j{8GY yW]8]QPW;v9!wez?/\󄞧(|LP>a7DlQ#9} 2x ߼J58r1ߙ1 ä{1>74 m%ķquIbe>4lԃ MUȆ,Vދa,irS*~.RQt.ahBZ}Qʴi}F٢H`m]j'5IֱΓ l:讳3`.;**leLYo!#zgWI_-ضߟhӥ2y 8}gvСV]/0u XVo kƘA7;NoVg !L~<֊iY .FHKu0o&VYQRېնUs_|ba9T`Ί=! hc j^%KO¢:ZYx'0?dHMg}Qv+%qr^B=K+4؉Ig i%2BS<0Y4Yugju,'Q\SRG^aPg_Û603:3@apC;>&dc F,;ELzMfOC2&-0qLRJ~7&Z̓Yv/m"pe<.nQ#>K .iyNlay0=T`FtnyJkX>= 2=N8[:kO*L.L' G+%-4үgCnqQ/#G?6rL?yt./wv3ooa&s6+ jO#}3Z: v~2~ru{%?46Vo}DHPq2am)ܗywn #"( qG翻kK@I(5`I `rfNgDj3Y<ƇfORŤQ?F;QYm1zwHM}gZ?Hd;ҋ5zHNt@ >6Egu@2b&gxlUK:uFQM|oPSeZxǖYk84YS3.Mq5֣A[фwUXcy:?*x"MhQ@[flxDvhFs&Jmx5 pWc6q1F 1ȉ@𠈀RFElO5,gF'OKQKh-' {;H DY:(]$FxOQbVNRiB <>JX[_XR% GE!>O2BPTޕ7(z/B5**Յ3]7TAʻ㌭kRKZ^^jxԊU"@KgSvA!n=-y?]rOo 6G%iyµ6y3܋͗a18kF׈|תdP ȍ`—&7ReƷH.u"ǭ"j:b.HV#5[U.NkJN(טX6zvqP8IyWP~`.`FwDfFaJ%.}AKH}Pϖ-YߝLi4sQC? { 0@8o8]/a+~;Pj:#k*ƌٰqqp<&K;OdG4.sjA֜mQHpT 0ot;R`l"I#=E' 拭CIJ,3M+oHzdU_pu;ؐz8'b)i:.9ND5g̔ˆfXң+4lu$n`5D")|;xLP|MuBV1$wiy ~ Ȥ;^*]uDbukDZn厔f _ACKWYǖcoR&@FRhS2?Lvamܝu =tStޗXH2ˣ` o?W$0j=~`m#0R1U;Qlw/DMHحFyУş82*&Qm]B/~@ cin3}\jGQ ȶxP{}'ߗY}ެ20Kb7KTNom{_#to-KytFU= ա&LsCjGPZ=#d҄U**J [ n@5Nv|G`ND`~tAM/O$1B)vLưXRt 46Zdݖ6brr-ZQͷ_ 1Lϒ7Zj`QJ:NIڅIױ<HQ'< #(*Y2B֥@Ib۰^aNdsYPk`fC(e=cM2I`L*7NR6:<{ r>U9ZO6-$"zˉT..Xdz>츠;NsQ59ǃBӈBj ppvbRMuw?#ξe EX(}nM c%]V N>byYaK앂#aV1EzZagbg.|ĵYgqH;dSQYj>Vv|li"@䱞A#ozeP} $.Z*_c0'v 7YR0ۈYRc8HȺs!O͟J?x|ңL V{83񥋍+)! oz+ZpnXB;9w#:+&"*ͣah+N& Qk-n&ˋv%TGw8vwclGCULa_ZX-RhK5COeѦ;SALI% m,ܤԍeǒlc/; c5%l-iWMr[ /9q]{_]l[? q`X?Fw=),1 o<+ }Hʉ;`R- Ԕ?w^%4%<ג1\fIɲNrY}ѝ!ToKMq5X3j2N$Rگg 4^5CR5wWoa ETouR8Y~AHO 0-'Z)ifj.Wl`mo"oaF |t;7rYN ;1uW,iIᯮ/c}z!5Q^n$>.8 .pwѫ G9ZlkI}үKs>RV7+0ݫ:/Xs-:ns,QLRI%-K⦐]ȰYM06BI덞>%khv əq!qˁ r 1R;c5UQ辯qlUi =ݛ)X*I)-Ei`~5|#WPmzǼhD sfc,I0!)w9}º s$EL@3pJ+~ym!.Uuw@>iè oK\ 7TfQoIfP)9]AWk|ȿxXɪdðC}Gs$j'"/ =Jz5Sj+Mw_м4"(ݳ_ KV"r/'KG2C^CW7P& ~y jအA(u/8x'7wZ^7uZIhWD*,gS+l͑giVG4}'2LE*Ѹ/.YWއ94}x+̼A?୎I.UCvVG3ᡲndN(h,k 9bV 7Uo)E!+ huƣq`l(EnJ(unlc*9 cis9哜l1cܔky|{()u[J*ȜfϣR!;aVڳ^H -aDp7@J.|m^xghȔ`{NN1ҹeh(L<njB//6[ߔ SUio/v=0{bF#$ߠpPdyVt9¯8{J?8Q1@j0oYÜjd}Ŷ8h@@1hߕAa:%[fd7mS#R9ʙEc&j n‘:<5- ̄RYD>47E"Wr-ms~; \JIdr٥~ˋTꀥٵBNfqHz5$ϴP8*f!0wne47.YCeb݀ i~+ e 3({_1i51.JTDi2Zޗ9"Zn@4L- wuԸ5X"|S#q†_n8 E׹|U_kJ]Cj1\.,烈,Ky,8u q#zˌTѯdkcSKjz1m43sǜK_J@wlI͘0S޹G *ymqij-lK-\#'6ɅQ>OvvgÖ"#_z#NDɯ#ZKAX'V*n"Y 2^a#vFoR2} 0oǘ$AAA} "GN>qͲYOwΔ Q@<\CD^N/rJT{E^ǜrRMꓟ"`>E:7識RC_H msX#_GL]/m똑[iq7Kt9t_]Ӓwx L,ӫċY}k33<;o`v' xZ4z~zqi[U))jm) !=}į)#a?hQ_ct4Bڸꭉu2W r4E.,Z+㧅0x川gQؖ9wa?GGqO/(۸JWR޾&#V(<LH&%t2kfן>w}t 0hy$h)Zu*o vHnihMj7>e"eNF$}~z$쩴`x + w ޳+3ⓖ&glcB| )+Լ[+\rvwJI)W?V>uPYs^H=s o^lhҫ:ٖ'n=PR`sSCu_8QX:zgD4nBfߩ4h \rg|PD5%5| )`FȯWqV={,(ze&GΊ. 5.h1nx>P~ON/x.)o{k zbxf'WѽIK!V!v48K_mzgB4?Xaɰ pٓ_;5%|H8UsrG%PTuI|BdO:Hc:?![VI~mWx2-VCD|O\iD6yTyluDZ,s>{ljrEٓeŗ]=TRvfedj\`;Jj$}Mouzz?ʼnsP)sʸ;jKpbF@mk_or6FJ%gUvR G^.s;F׿|D,,l͸dȭ)1TJ} /D*NI*A:.cg\)'+ k5G,صE^Mq[/=TS? )E3/s4>Ҹ:.KJٹmj=<Ɏ/)32~1Ѿ#rJ S;%])&č~SK)8Q8fPW0XQPP*hVq쥏IBF='PZzuŶhl;5S3ony4L(cήOjjhtڔ)o8S`C66hڨ*U^XWVؖ^BХnZbUL_+O+UH=ٙ`s=%/M%^yNCdhic3='ŸV|{!Ѹ1i.CmX3?lZcˍԓ%=C^1;VpW+)nMCl1 6rx>^+E\'26Ϧ^7aM_ prJRQR}-v4%\dOyѶG;Ujue6&@'U+3!k6[nGv~zVԱga=ӻSN7>d!]nʞW?fCWh;TDU龲Z]TD. ߿02. ݪə 6i 7>}q~-BbwbRE:IwT^mG{G;/Ws~mM!*B7R8O3x>q+qu4AdXdފR3G@B)w=V٨̅i;on69`;MڙqP-#ݗxk9X I`qwqq1u\SfLߟB|VuNg{.bеÓm:]Ҝy$Pm':6QRȊA?w|} m9ag{9W'*cGo$[r)ӰUU( [{:%cѭQ _=5ǙY᤟6ª]ljYۏmˢ< 4v.wYDzCiB3#gДmH&UDt7Rej/ 4:Sop[9 lBoIӯ˴P2uRjA)aIh)3ڭ Jg]gLeN[ߍ6M| Mq0:; QctS.cܶQǛm%^eNn(Œ+u t<'Zhazdv||JwE̦AnI 0?XdeKt[&AjL}0jyKԳh 841}86 ]1S&_9R65X[RkS7E>Ƚ-8U>\]g98Z-a+v]uw{GQ^  Mԃu&rr3VH 26Ѡ(wI WpZˍȍ\zN>zejH%r啫ǰ;kT/ 59PQpQgB$3?<{JQ.pL?jzXEb$'Чʞ7}ٲ9ORk`p\'H]A42xp;(X!**(bpNYQ҄R]L:_fR} m!D#-!22CH+62XA D%dP!'! Qf`a!ici-Ţ3a0$Ci dL¦#hl0ab4O*0 N/P,A"$2:&*]x1iTƄ2 D'E3 qELf aqEwwӨ.$ץ}f] ēHE"3WD 46 B"Ϗy~9L"5Ej,ZX#g,8Hk" A; FL4"BL,bqIL@sXõ(v7L#_-P !o&z$\p6~>p0gc'l6 046{%@®q"LϳqL%w*jKƒ9\:`xrb^oNAX\malDcA$QY''=˞u,̭9,48 V\p"92?]mR|9!21RdCb{Pt,qR|-~$*gviٙN 1.K Sgm#]gKssk:srEpِWF}I bE|Íd,[ ʆoXbL'ArZ|(_H_ ƃ_&a= Cip| 2[l_ ! =B_B^p%p>/5Pj C@3ixw81 28\Ӏ;F9%'#vth_;`b|8|T/HyyZ p?ODweHBŰD{c~,Wp?_܅D[jt- b1*(H/1Ha"ܵYK4ќ %k8bI8 [|%[21b; g&;b#)*,/2F:43` /*2r' UO3$rn6SPcE:s;½~2$\r22` ,+'$/"*-QBRI^Â**"х, ¹zE `Ƃ@ [jr1\$’-Bp˖422ѳܱcCN?