trousers-0.3.15-150600.10.3.1<>,gp9|6;,7KCc!Gxb薶XLlC?z"Jh%yilJ^W#ᎏK+߫4qƬw %:e7c.3ΠlesO61IG *NWߴ}gSie\&Sy@[r:5Sy~551NSu;FWlX #LV*ՙ}`6"ϖ9-_F%ޥ SRϿM=Z:c|Pǜ5>H1?1d   V!BO e{ f c ( T  B `%<(8 9@ :, =%>%?%@%F%G%H&TI&X&Y&\']'h^(x b)Ic)d*ue*zf*}l*u*v*w,tx,y-$ z-X-h11111Ctrousers0.3.15150600.10.3.1TSS (TCG Software Stack) access daemon for a TPM chipThe trousers package provides a TSS implementation through the help of a user-space daemon, the tcsd, and a library Trousers aims to be compliant to the 1.1b and 1.2 TSS specifications as available from the Trusted Computing website http://www.trustedcomputinggroup.org/. The package needs the /dev/tpm device file to be present on your system. It is a character device file major 10 minor 224, 0600 tss:tss.gh01-ch3b SUSE Linux Enterprise 15SUSE LLC BSD-3-Clausehttps://www.suse.com/Productivity/Securityhttp://trousers.sourceforge.net/linuxx86_64/usr/bin/getent group tss >/dev/null || /usr/sbin/groupadd -g 98 tss || : /usr/bin/getent passwd tss >/dev/null || \ /usr/sbin/useradd -u 98 -o -g tss -s /bin/false -c "TSS daemon" \ -d /var/lib/tpm tss || : if [ -x /usr/bin/systemctl ]; then test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : for service in tcsd.service ; do sysv_service=${service%.*} if [ ! -e /usr/lib/systemd/system/$service ] && [ ! -e /etc/init.d/$sysv_service ]; then mkdir -p /run/systemd/rpm/needs-preset touch /run/systemd/rpm/needs-preset/$service elif [ -e /etc/init.d/$sysv_service ] && [ ! -e /var/lib/systemd/migrated/$sysv_service ]; then /usr/sbin/systemd-sysv-convert --save $sysv_service || : mkdir -p /run/systemd/rpm/needs-sysv-convert touch /run/systemd/rpm/needs-sysv-convert/$service fi done fi [ -x /usr/bin/udevadm ] && /usr/bin/udevadm control --reload || : if [ -x /usr/bin/systemctl ]; then test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : if [ "$YAST_IS_RUNNING" != "instsys" ]; then /usr/bin/systemctl daemon-reload || : fi for service in tcsd.service ; do sysv_service=${service%.*} if [ -e /run/systemd/rpm/needs-preset/$service ]; then /usr/bin/systemctl preset $service || : rm "/run/systemd/rpm/needs-preset/$service" || : elif [ -e /run/systemd/rpm/needs-sysv-convert/$service ]; then /usr/sbin/systemd-sysv-convert --apply $sysv_service || : rm "/run/systemd/rpm/needs-sysv-convert/$service" || : touch /var/lib/systemd/migrated/$sysv_service || : fi done fi /usr/bin/udevadm trigger -s tpm || : # bsc#1164472: adjust potential root ownership to allow tcsd to open the file # as unprivileged user. Be careful not to follow a symlink target. system_data=/var/lib/tpm/system.data if [ -e "${system_data}" ]; then chown --no-dereference tss:tss /var/lib/tpm/system.data fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ "$FIRST_ARG" -eq 0 -a -x /usr/bin/systemctl ]; then # Package removal, not upgrade /usr/bin/systemctl --no-reload disable tcsd.service || : ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_STOP_ON_REMOVAL" && . /etc/sysconfig/services test "$DISABLE_STOP_ON_REMOVAL" = yes -o \ "$DISABLE_STOP_ON_REMOVAL" = 1 && exit 0 /usr/bin/systemctl stop tcsd.service ) || : fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ $1 -eq 0 ]; then # Package removal for service in tcsd.service ; do sysv_service="${service%.*}" rm -f "/var/lib/systemd/migrated/$sysv_service" || : done fi if [ -x /usr/bin/systemctl ]; then /usr/bin/systemctl daemon-reload || : fi if [ "$FIRST_ARG" -ge 1 ]; then # Package upgrade, not uninstall if [ -x /usr/bin/systemctl ]; then ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_RESTART_ON_UPDATE" && . /etc/sysconfig/services test "$DISABLE_RESTART_ON_UPDATE" = yes -o \ "$DISABLE_RESTART_ON_UPDATE" = 1 && exit 0 /usr/bin/systemctl try-restart tcsd.service ) || : fi fi.`\W"#]~^^A큤A큤Agggggg^S_L^S^S^S^S^S^S^S^Sggg^S^Sgeb009b7d1132ac33411e8f838c7e272606c8dd1d8944bc8b82ee28f9114e82fcc56f762ff401646eae0b25769c79234e22cabea3e3b4f4c7bc581a23787b36f44b635e9ae00264cd370fc62921814265679e2a15fa6d6ebbd468e40f00af48f4caff21ae6e8e5a4e029ecb4d459634217c34e2b905f8b4364b7418e7c3d074aafa066fc32ac644d28c5ae56f62feae0e3b8639565dccad1cc4345dc71577970ffccf2c7a906ae571849fc1bacd98f3e070e4da85b2ec6e937aa45ca1323b55ef1ad596d12e7471549663c03e280b5b5d084a2e853fb86e4d766109818f9d7dae4a6bf595610b97b05728f4615d54faf290fac3f8bef836a5d919de070f3cecc4842cff0de213dbcbe03bdcc03c3dcfaa48e03bf45eea9d18e970cef4411f4458686e9d62dea2df5433d4a435602c3e0522b3bb68a2e75c39c80552d6bdddd948e10fd3096b3fca327b01803d91959817028371fe8d9e1970256bc56aeb1bdc1138547b7d669844a1d7d5b9075872b6f5117996c0a21d78e383e79ce7eaedb8c07ef598700d70a9cd14ba28950c7b048cf21ec2ac2297013e5789830b58ffe8baf09355ad0bc2e91d802c18654c2b9219ac1a26cab805879a784eb8a030e02c437cef9d8224b158378505c02b77fcdaa05a2f9ecc1552e95ad6d71b5ea96b690219a3b32565147e2a9d085f67d3c83fd4b93dad037fb966cb0cc5499d8fa6a568d7c26f86aeb0e601cd2358475047161b619bb46872f84569448031f3649619e35e3194d734c81d99d6cb679ed5c24ac97652b068ff12eed215e1ce382a4fb7dcservicerootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootroottsstssrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootroottsstrousers-0.3.15-150600.10.3.1.src.rpmconfig(trousers)trouserstrousers(x86-64) @@@@@@@@@@@@@    /bin/sh/bin/sh/bin/sh/bin/sh/bin/shconfig(trousers)coreutilslibc.so.6()(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.15)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.2)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.32)(64bit)libc.so.6(GLIBC_2.33)(64bit)libc.so.6(GLIBC_2.34)(64bit)libc.so.6(GLIBC_2.4)(64bit)libcrypto.so.3()(64bit)libcrypto.so.3(OPENSSL_3.0.0)(64bit)pwdutilsrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)udev0.3.15-150600.10.3.13.0.4-14.6.0-14.0-15.2-14.14.3g@f4a\>@^˳@][GXh@W,@U@U/@meissner@suse.commatthias.gerstner@suse.commatthias.gerstner@suse.commatthias.gerstner@suse.commatthias.gerstner@suse.commatthias.gerstner@suse.commailaender@opensuse.orgjengelh@inai.decrrodriguez@opensuse.orgmpluskal@suse.com- make sure that udev workers have finished before daemon-reload (bsc#1231071 bsc#1236457)- fix runtime requirements for stat and udevadm (bsc#1221770). On minimal systems this can cause the %pretrans or %post scriptlets to fail because of missing tools.- update to new upstream version 0.3.15 (jira#SLE-18269): - Corrected mutliple security issues that existed if the tcsd is started by root instead of the tss user. CVE-2020-24332, CVE-2020-24330, CVE-2020-24331 - Replaced use of _no_optimize with asm memory barrier - Fixed multiple potential instances of use after free memory handling - Removed unused global variables which caused build issue on some distros - drop bsc1164472.patch: now contained in upstream tarball - adjusted %setup macro invocation which seemed to be wrong- fix a potential tss user to root privilege escalation when running tcsd (bsc#1164472). To do this run tcsd as the 'tss' user right away to prevent badly designed privilege drop and initialization code to run. - add bsc1164472.patch: additionally harden operation of tcsd when running as root. No longer follow symlinks in /var/lib/tpm. Drop gid to tss main group. require /etc/tcsd.conf to be owned by root:tss mode 0640.- Fix a local symlink attack problem with the %posttrans scriptlet (bsc#1157651, CVE-2019-18898). A rogue tss user could have used this attack to gain ownership of arbitrary files in the system during installation/update of the trousers package.- fix wrong installation of system.data.{auth,noauth} into /var/lib/tpm. These files are only sample files that *can* be used to fake that ownership was already taken by trousers, when other TPM stacks did that already. These files should not be there by default. Therefore install them into /usr/share/trousers instead, to allow the user to use them at his own discretion (fixes bsc#1111381). - implement a backup and restore logic for /var/lib/tpm/system.data.* to prevent removal of validly stored trousers state during update.- Update to version 0.3.14 (see ChangeLog) (FATE#321450)- Check for user/group existence before attempting to add them, and remove error suppression from these calls. - Avoid runtime dependency on systemd, the macros can all deal with its absence.- Force GNU inline semantics, fixes build with GCC5- Cleanup spec-file with spec-cleaner - Update prerequires - Use systemd unit file * replace tcsd.init with tcsd.service/bin/sh/bin/sh/bin/sh/bin/shh01-ch3b 1738925250 0.3.15-150600.10.3.10.3.15-150600.10.3.10.3.15-150600.10.3.1 tcsd.conftcsd.service91-trousers.rulesrctcsdtcsdtrousersAUTHORSChangeLogLICENSELTC-TSS_LLD_08_r2.pdfLTC-TSS_LLD_08_r2.sxwNICETOHAVESREADMEREADME.selinuxTODOTSS_programming_SNAFUs.txttcsd.conf.5.gztcsd.8.gztrouserssystem.data.authsystem.data.noauthtpm/etc//usr/lib/systemd/system//usr/lib/udev/rules.d//usr/sbin//usr/share/doc/packages//usr/share/doc/packages/trousers//usr/share/man/man5//usr/share/man/man8//usr/share//usr/share/trousers//var/lib/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:37368/SUSE_SLE-15-SP6_Update/acab3358446069a4d3709cf4ea8d3d73-trousers.SUSE_SLE-15-SP6_Updatedrpmxz5x86_64-suse-linuxASCII textELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=3825b35f93bf1c9f3ad6d88d2586bdaf4ec85582, strippeddirectoryASCII text, with no line terminators (OpenOffice.org 1.x Writer document)troff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix) RR R RR RRRRR R RRw< &-*# this scriplet and the counterpart in %posttrans work around a packaging bug # that was present in all trousers packages since around 2008 until 2018. # /var/lib/tpm/system.data.* was wrongly packaged as runtime state data # instead of package resource data in /usr/share. After removal of these files # from packaging, during updating they will be deleted. Since users could have # created their own versions of the files already (by taking ownership of a # TPM) we want to keep those files in place. # # to achieve this we use the ownership of /var/lib/tpm as an indicator. # Versions that still wrongly package those files also had the ownership of # the directory wrong. Therefore if the directory is not owned by the tss user # we apply a backup and restore logic. [ ! -d "/var/lib/tpm" ] && exit 0 OWNER=`/usr/bin/stat -c "%U" "/var/lib/tpm"` [ "$OWNER" = "tss" ] && exit 0 for data in system.data.auth system.data.noauth; do file="/var/lib/tpm/${data}" [ ! -e "$file" ] && continue cp -p $file ${file}.rpmsave echo "saving backup of $file" done/bin/shutf-8b221a27c0502601f15d87aa828f667d23ae2a26ea41a0e267b44eb100788fc84?7zXZ !t/W]"k%]̔60c>ͱ8eC0fUb-ZO:N1W*DJn0 {,@;\S\>tKtn+[Y-XeZ/dXÜ$G4׾f W\ULPBfTGФv?Q?smȯy#*_CVү}SUgY#L':%&xʞl|Tz)*}S|+*Vc`U [RoE fr_߼ FSx\,d6?Ce??hm&4$O@68ç*Gv]K5/wK,$T4w":d(5UGg--q%t6FӣiJdIPC]`Nh__MyanzG0-h aYᮭ3fgvm7;. +v>tW'@*Wc^_Vj]%B;0}&LX کuoa7r oFI*bg?$9o9x \;v㟨}'4ZoЊ.[+U'=iQO^'a}EbktMWB`LkyOba'Y!ÆDbSZT3-\;|1H~>`71B<KظE5AZͅݭݼ\-&P !OE)np"@9n`*yM+ɉ`8?r)$m/A0J[8a<f#;>kF[h=*3 E7)/SGw0j$Ųv9PD_jx3>糈Vό!/W7vwןmR]!|液 S jO#z#p~e|FG36$p%y uaQ#nE.O9[ĂwȁsEz}"Gje|4߶Vhܵ˶zbT[+b-{{Ʃ_nb5KZJMr.k}κM}(U/es˸gPB/Z}Fgp3Z15*^K~ńV~+Kk/-lBH1O}I}}*!<Ӳ^KgIk ɦ)}k+: I96BE}>H^v#?Egjd-5rNE#ނ0J@[LlY6i|:?_z󺆩MڢPδCBYN|Z(V6x/9],&v&~aƛ2lW<a/qɀp Ј/qHUR+M? ;^ܹ۫ I:L5%f[>KJ|kہ`ԸmWW^(mЂ#s1U-JXܜq0o[x&@aQ,[n$ zNAATI0 vsCTȒ\`_PrJs3 q3^\"YR=>N1C+AeV}6 +?3>'U+fw"5Mh\*/gnVbLtfG2-ߨ׮hQ*þ-ʿZi'φ"ݬi!#zvA,pj![ ֈeu-Z=g]brP9ŷǓ\aY;kb8FiOv j'béҭ]:}5uf!\ܟbs)9{J1m"G`@H4)]#e}*vҊ.TӉG C2'"ݠq1JtXI۔hv$NXNf93l,co*-xӦm^[O"K3/ dׯO4`ѤEΰiﳞxxzdR$|ZSb?된_%^b'U{Y|8]4 @lJC/~Y; _9(Y"Y?4Xt m=;F{s[栕.&(VyZ`;EN:קLDzG(j%2'trbE+KXzF$8ډ1GWѳC1EY$#N)ɠt)i0  e(OѴ{#ȏsu aue%QL:5+MgޣPJNbqb'SGݜc9S+hc5~KmM0?)g3mdJΦ@| } =bЪxs/g;!!KC \[Y>Lse9Yb^q:%IVl,\kAbzlQl{ŶJf\ᕕO3VtFž?5vuȧ֣M\ٱ+uYq?I5`$|NХLM- pOgn">L˨5fܳ [CvC"PcUv_bٹ9 FCӭ!A}fWtPM ي]h4rLnk [7/Mz[ǓF/k[ J4X(YLdbrMnnS&V7UB["Z="W`ccwMl"hwй`fMJnrb΀9}&& ږ"[s3ue_ꅍ3Gu_T\e_T1!vr‡9XBXT^vRXx}|G-J{)KoCas|]E&S7NheZFKMSE]g @ M̓"Ew̕dj\'M3$-A>I <εޥY"y:b9PWdt-Ϸ9]V5Fd礊 WwOhh8; s2j *5HJFEo2#A>yb mK/}5v_A@kovpTY|?!c!-^܀[h o؊.p:s?o_^N휅WFP">,QaHdzOokjHA4TN^ehՖS\A;,r-*{bhX&*гDRjػ3DF<0J;/+pԭa:W;B$dnɊ[ۺ6k>U-bbJ{3o$j#JJzSO[¯qoX0KK])gЂVU#hgtJ-qIo,M+~s1l h@:z9q=Νre{9LG$șHR[l- 53Ui- /_2'"TG>&SD~h5 .nZcmz1jWŁɼpN0=M8M(%F^A &3[jo` mp\Nkb*nG>:e +,e"-~nIx=8Hn Eq9S_Z.Ixϓ0[ku}ElҨIg^(|Xď}5Fɂ_:y"Z%V# s_Fя']#\C2{"ZןϘǪ)Wօ%=ﭘll `;BXDE^Euex^d'P _^ %K4a pk.V8SFe 05p@)Ř =B?J[n"r AM.;%kԚ`߂Z ԃF(~i%0)v$FCeE>T&shU2V}wG 0gH?JVצm97Ā 9{b{Bo$J:댤)ęo).V 1|,;q?"TǑa`YEB2O}bҊa/K)L'gR<3>%'R'8IF( g0PmB+Hw@Qb]8.{7;S>[jC-3aÑz{TYÎfeo#c*mVe 7sP,BئA Q"4j5zynWiWy, j?x1Z-"1+@]D2\dVsX:P*0Kp{U\rF`8tӃ}&!HlXD% Fp( ;ϸKQ7! +f]ri+_ZXd- tFn@h2&8f!j;50_!\Xu#{-FO1'td{}V1acM >R Pv5yˑIí$%5 S퍐}{B."mلIx@EL9S>2ZhPE&TuMFruLZJR| EtSAwa#t#!x7%慯 w-<Г R2;$Bb|ٜȝsH[ 5 l6|w0((}x ĶXF4WڋuA#.' {J΅gJ0͞oꄽ#͜fR3#1ay'v"瑏nCeQNϲ ]6xMu1΢&6l_(2zP *[vT6@&cJ\WmUOiS|)Iw ͉ Ã&b)nDQU  5u\yp58=Wm?o)I&uAՈa̘DQ0=%Gn E?,]o6J1kF 丒uЋz `KÔE.4n}VW,/uw| Fobw}{隮iA?Zh$EA6x#R 0q>FeP}s&ʾcddtMGT\ Rԙn" wM2mLlP}תXA+18t/|5K=2zxXDžc=74"ƣNLoEF@g&S|0Z=`B}qu?2+~?aY,۾/%_O2(NC?PNOGz t]Avj^3d `S4zثYJn*H r >nB">zoTBm ς`0ͦ"HA0ׂ9W[I-#O9~|}uƕEp%JyRQ"N~ [[#! WkUdu[>,FAw5C塚ʇ,+7՜PE;2K7-(2Ԃg D޳[YЃC/2!QqТC>Ϟ|0e}UۆOl0SEJ J˿g6*c6X0(uʐ|D'5TLđ&KXq$ 6zAgYf|6 gCQ 1d/܉:&k69>[I(dk@RVZe|o 2[K/=3dSrNV%c>o$}%BI4 (u FaMP}yzFlL$k ItZU&k.fK}R {^q3]lRȚFzBr?WznL.嬺`(³ .;h娩7fW&6Cܝ )Z o(6?P_Pg9> 2!KJ -51<Ã5Uxۡ~ (aQ^!"SY' g㱷[ Fطw}(~SHTeRiGK[κy ZV;rP3Dw7>XY޶ @,v!|ַJ2 DzD#hvoXݯe,K+e"e 8-G~NBXL!W,$+<ۉs'_8b̙a~. KbQX €JfTiALӥug\1S 3;}{Y=|ֻjq46iUJ,i-@#vT9$HVuq'Ix.:Az)c~uNPߥ$cx۞AJ6*io]_S7CWl0'Ow@`JǟalHw\ J>ș˹wl|݉#n9UF$tzu,ޗ }mI'<_"]eYCjwT8.GT5q_ϻ PGW`ɽŌөF||zLސx=a[@NQ1XsBa }u^4a/7oC9 2 E# Ǝø J P,C䨙|Lʦ!||=d`(cVy.B`zSuBBs!7JF']A&L:/?9M^~xCDŒP@ %+~- j7 %B񕿐m:6Cg^Bul05pv J)c*$M ozT(V|2,p8л 88 hݖ,`O)v3Hu@ϛu6xe=~#ocnOn^ԣ9qYR/(ohԝykFF#nH&Zͩ^N~BYbe*1%B mBVU`+Pfz0WvLѹ8<1ׇg0&#^FJGL<{/4 ,av!ZɦcGD}ڤE@u; Aja7Iڸ H[u-+֯!^khW>>`I~ @rgF$=4R^2fEͽ=Ed45tUCTؿfT uRLGshgU|n%a/u>2Z[%,#x-}3Όp_#KHݕk1_d* Y,f N3-z̕G¸7 C)'p@$c" `6BpO"ZJe4᪑f=L@hS39etm"<+g$MUyDjE ;ԳDƮdX*} <^0zSU5(PYyj-"]24Vg[dd'R0>I,aԫh =` )kx|?Cl,&rB9aC^z 'v,TKYGZ\nbD@3sF` W|{@I,~&Ue`?b㞂m4d0ka8!Қ;D~c/nOCk7##O>Xr\ŀӯ'B E^ Dq`x3RuomrIqsfxU׭XT-/q4p)JH#=Xdo89RCV&MnZ[VTڥ;$7L\^eU5LS4i2΄nLԔ3jB.d}<%Wd%Z@rڂ^{8!"ȣaRJPtT''STFVO.f!ZSX"[qa @!nL "f_*,!ALgq_$$oXUjuBGv\?]Glll Scx&(G7z( /S5-!柬~lٲjdK߿Pq8a[<ٔ=ٟF"M,X/@o̿ pVF)ƔyQuI2A~ :At;@U 9 @ 9ZxJi,4W 9BSRdͯas7ƶb+}Hݓue)fE1p Ĩ!21 }W;)ޕD;*Rkdzw)y^v$Wkh-AnbzF$s8 KP΃>эU(f 1P" aw꽏 -P Ic9A munAged/uT߹pY;&*:b r(w!$A(Mn#7"eM`e*,,d.]GiV"[`UkzPgR, -⌛m4U/?ױnnkEWv2L?duhq"A)VbTSnK`v嚐<"&>i{v`9 [*ӿ/!W+ ڞ\ԣؿ`~~pk`3Ža#ljː4`KXPJ5$`.]^D-шPh曶p-ʘPnD(#SX6}@Fn(- pxeuRlI-J*! ξGq)*vbyxܖ7,k:25q0*$cjuN ԙ[>]#R!UP,OaY<7w ]iZ rH6-)1yuI-?&*8YvM|8䃭FݝqCѮS\SRsZ=#m7mt~YUI"K Ñ^CT8WoV3Xink% c0i{ŢF Rߥ)e׻EѺU'ID/Dvz>vQar>K0`LbEK11½L mF1[&Ao E3뭘޵+ĉQG>%Qgt#_Cʛb{g_#XewWPmu7;o2sB9ީ19RF* y)wM'6Qg^^(5%1J 2v8oḭ@ Th/N-R"GK(<հ0>,oL%"cW_GQ\—[drv1crf)tv Y.BbMx˸JΫ,NwQ; zE(ZDlnrvchPKInd?FefC)u |pw V۟N*%Wj G*ufv`Yº}jƦ;X6g^ t+c5_y]4_O#U6D> ÞfR5+T>:6j R&`yu V^`~NV/g=qGubwCuoΏht}S[Om e;!I ppL0{t:?W?htjL#$)kn JQFM,LX*.y'ŸNn/Y/4͈k#JfB:4",/ &,Ѓo5TsϏs@,L -?Ks8a ?ᆁu0N"}_D:n=8ve$>Bݔ`4yt J#)T|0op-J+̿?{ީS>6``gft eotd)"i]d"xI\1W~oVhjúWiBRBTc̍5/b>w<3,AGrvi+Oi>Ԍ,*VK`TY IYι$V%6jc'<בgO7Hm<"0y^dC s Wp.K\a<*eqv/tTm7C g8gp_>mï =0r.?e^ [ cPUʢޯmu}|w7T OonӐCnw-Lh u{rdʌ)ϾWqEv4%| 6AkyH)%;yrPzCGkH FO7UwZ8,$p;LYb}!wE TZ":tA?kVbqzEA?3ҥy=qXB{b{'::!ݷsKLhZ ֔="`.Nɥ76~i<6>|"ݥP -Ԝ7=B+s4nNبv̚Q 'T/><?c%谘-3wK#K!?oG:.(x21JSBo=LQ$UēQw7s; t84)%5wp- RgGi$/!+g'ۈ a( :r: '}m-ڢ _j $%Uh0Ԥ&1S)A2ppQ.ˁqbNg4?[u)mi?`O(lPP [?M-؈=A_ rHSUkc䂞bS*kFԷIr :C}Hꝏx`0j7@9ؐ,y`oP゜K9j-E7sX:fŚiFR%pYa /P``*C -2Qq"΍o=;# L2LY _|8Q.fI옮vS/&sȢ3RYɨZ+ gh1 xAcեaLY'{ݽ=((Vj@HC":7-޼QxWFn9b%|i^ ?<z2"Q&3 DЈl@HXdi|h*I0x,4zQ 윳]w©Gm,ܜ q"!^wap<[-f#"?KR|+4߁aZ;_γ㏒a- &qe+EXNg$UTF7@5lGRlL-F3 I^߲AKjIFZX '(ӟ6 dogJl+>%'yBa}jg.:z䏋חS(2"YluUvѿқdI3)Cb|Y=oܓWB9-۬OԨw}Wt&;x /ͭ sydPjgE'ղy(Sc;,OHᚴÂ)4'm*f@hĖ/MS9JB+V-?6Ȗ1%OWwb3 O񑪍$P\0]TXWxpx.g/%Ws̚лxS<v*uЪCblmN /3O;0V14:ҁ 6L =h B$g  6_ϜT€@dQQO&%Q Zpx6y)as1peg. G &(S!l&%5 7Rx|mm=^"˓Uԭj䂖M\B8/ݶ%қ#D`X \xm _Knl$Q5.`er討=U*i'>z-3] }0чI#!L!L姈{+ft`X|+נg+7 o19Gٔ8zg+CyL=xٍOە_y$ӆrsfZ6I3%fR2pwQLY5caAO+͹4h.t)O0HcgC W,H 9#lj}'TCh-[{PZaPoT,cҭB΍V/"ԎYM%cNo+ddGmB[h7ٛ 02_4lTFyVgy](5 BgK0JS3n) [0HuX69o,2<&d:}ҭXH\΄&32A(x 1Oq)2R!^2DOb5r>@Ltw?Zg(b$y3(l>b //I`S_L P)*pN$iCŗco{vㆣ(wxx^EWh!&f%cn7%I}qN$s_\8@eɘC@dŸne0tgtI"RR5%hn5CEu@|E!wE/dcYE&T<ܑzb3T%aDIs_Aϥ8176%iu#ppqbQzLH򆖔!_TbY"ap/?y^bgWl'ABwAݻm-Ӎx14a%/Ԛgԉ ("$w[q;s†S-դjތRE"J+Fj񉧃$OAɱH>ͫ>Poqг8)㽛(<F'V}وWN~~^9㦡vG̻d=qkm9h *s͌.Q^m1=SΜm鱱anUv򉿃wd>v/yRE]/ZKJ^h#koq~_LO B a3o;uKG ]=JN5_K(9PQpI],Aş1\MW\/^JYЪGJ2)IRnquy+v4?^Ո'-(~%Zy-Ss,b1Oi I:  #C,f$"F@D.Lp:vggfIס|y\*fd6p!Uzj%q.:ZtJ8".9iEfMޔ8aA(&瀒aYZ;ŁCX,XrcP'6$ GК ߔNqcdxO>>Ks|YGʍިx!h{,L-LO#O':E1p/]U؜"xx6-U1@,Z^i0 7VGnJ* OpqD&4r5Xw[OZhOvm1Ĩk{6Xe7}ZмFG=LYh8Iq{{J:rߓK{hHZ 8d1NhA5ƕT6rhD*+2\g旡05Kbqq;'d{-JMi-Zs6zˉ˸6Hw$x)<^ .)po&Iw j.C1U5)]5}o7\GRZZyj D\ mpQ@SNTN2$ x|ywrq:湅',y8ԇ$%ړZC}nK%;%̀=h]QXEn3;SE+_|Fmd*l X[*6xj[(0v;maM]5v,@fm{o1mnRY+Jys=ԜV%k|A*֭v8}ddqu3(n]~~82s~sV^X^9w2EϞfpwiMi̋>MH 4IDcB'\|cW\P w@8aKKu?$n;B:gXl0qP`#/WjHMT~g/FYpiqb=R~=~I}Qƃk\0Kq jQ]ϮKn,ߜ,}?)АjvLOFK+U P`% =˷35 s7k=̷0W)4~yj'WeS_GcG n@^ZCܨB. ?HoQ傁}Շf[ =U2)aG֩M: x̃?]3 _&rDU_ɩs~zxw%nG{ xV rܿ4)J,9M7P2?.`JHzrv -(z#'D-dvۖUE*B YZ