tgt-1.0.85-150600.10.3.1<>,hg(p9|J65G")QG.*pJ]_yڰ|&N$'Uo*$ R:{WwxwT7L$ \% 9L!f  aK' ijtMt(KXh~u2$iwW 4ED0EE; V/U2ب?%^jn:OG 2j o&i;7NQSKƝi/*xaU  %;h3AOf{J#->LI0?I d   @  *06T   ,, (, , 0, , ,,\,8\,  ,& &#&(#8$9$L:%=9>:?:@:B:F:+G:@,H:,I;,X;Y;Z<[<\< ,]<,^> b@&c@dAMeARfAUlAWuAh,vBwF,xG|,yH,zHHHHHHHICtgt1.0.85150600.10.3.1Generic Linux target framework (tgt)Linux target framework (tgt) aims to simplify various SCSI target driver (iSCSI, Fibre Channel, SRP, etc) creation and maintenance. Tgt consists of kernel modules, user-space daemon, and user-space tools. Some target drivers uses all of them and some use only user-space daemon and tools (i.e. they completely runs in user space).hg(s390zp3a 5SUSE Linux Enterprise 15SUSE LLC GPL-2.0-onlyhttps://www.suse.com/System/Daemonshttps://github.com/fujita/tgtlinuxs390x 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 tgtd.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 PNAME=tgt SUBPNAME= SYSC_TEMPLATE=/usr/share/fillup-templates/sysconfig.$PNAME$SUBPNAME # If template not in new /usr/share/fillup-templates, fallback to old TEMPLATE_DIR if [ ! -f $SYSC_TEMPLATE ] ; then TEMPLATE_DIR=/var/adm/fillup-templates SYSC_TEMPLATE=$TEMPLATE_DIR/sysconfig.$PNAME$SUBPNAME fi SD_NAME="" if [ -x /bin/fillup ] ; then if [ -f $SYSC_TEMPLATE ] ; then echo "Updating /etc/sysconfig/$SD_NAME$PNAME ..." mkdir -p /etc/sysconfig/$SD_NAME touch /etc/sysconfig/$SD_NAME$PNAME /bin/fillup -q /etc/sysconfig/$SD_NAME$PNAME $SYSC_TEMPLATE fi else echo "ERROR: fillup not found. This should not happen. Please compare" echo "/etc/sysconfig/$PNAME and $TEMPLATE_DIR/sysconfig.$PNAME and" echo "update by hand." fi 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 tgtd.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 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 tgtd.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 tgtd.service ) || : fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ $1 -eq 0 ]; then # Package removal for service in tgtd.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 tgtd.service ) || : fi fiS1x@XH 2F <&> G5 ?0 pF &AA큤A큤큤A큤A큤A큤hg'hg'hg'hg'hg'hg'hg'hg'hg'hg'hg'cccccccccccchg'hg'hg'hg'hg'hg'hg'hg'hg'hg'hg'chg'hg'chg'hg'hg'hg'hg'hg'c79c06ffb0e7a099cae470f5af01faee1dd4678f32dc69ca75db53fa9e77ca22f7e01f945e0ff741ca95f846b08e33f435ba778063c060175feb3d377a1b3a3bad134eb288df486608c6803526bde6f79f878be9279b91d1f59dc25532aecce4a3e964685b00174cd0fe553ea09d1b605a461c19019a4bb81ba84cc49baa309d3193cb86bbc8c544e9b6a45199d82a8c58093801144b8caebe83e1b1159afa7abc4e336850c22b3b783bbe8c6f4944eb003c5358ef894bba231b98f79914dc74c245113eb1aa23ab404c5a36f2f5547c6b8646edda6656c69eaf427881d3fe5125c13cc7806654a05528428ff80e27eeb717a3c45ff3b7f85f089c885919797be149cab8cf002a1dc8137af0e5c189eb83f82dc22944f084e1866ad0c283adf624548942e8f9fdfeddf4d3087c24e3f3e7270a785174361d9eec8ead09012dd2c18ae4418f1f92d1d04a2e1722a884eee7f808f717c531a303b41f71bf07cf70472310f111e0ed859ee94c43f14b409c7c81e27bbdd5b9e9917ca3d223100c78b955bc5c348bca24d6bbc4373e9ce4918502ca4db6f802b55eedae6ed1d93124c74f5a624cd8751a83e15faaec9f41935d168ec36bcbf64ecd23013ef7b594b124fcd150aff0e76adffb7b7231f5576057c041251f4fa0df555252026c68ae076b9ea8b4ed14ec6570bcd1e20cee7b3447acb1b1f2ed1bed1a62c89d845469dd358c96210bc9fbd47a17bf5234f6ce48770afa24cf7f9af47ae73c44e10487807bd68eb06d28ea37a256a7bad6d2064aa9cdc6d9734e977d8dcce102de306888a18f7df082e84f4f1291ea0305aa0f9bc2e49e1b2686782cb73905047b81979e65e66a9e05f340baee7fc1f01340803d561b3d227cd793bdd58cd966d1ca108e63b361ad831f9ec5ce2dcde7f07ce80e3cb94cd602cc24be14a86293dc2b0e29f58f2ae4042a63e7724ad929e75d16e52147c42ec01c852792d111f2f39f4dbe97a876093f2d556538b804aeea42394d13a764b60a28be4b3cc50061203553c07668f8fb349a21bfd15621701b4ef6e05c6ca201ef4820b58c02eba1ba13c5251a78f61e0e55448a661d86cfc66927199724a93a0787fd232fc6e19f00fbf7e9ab936e2102dfba3dd904d1f19ce821e7a4e75264044e0f5814ed6a0123ab50c1dd46bf80e9f9a38ed61745a871ba7419d0e10fce8c969d513424379ed54bcaa8c14582750d02759956ad2c803a299e34254c72d05157af2cb472d2b62b7bc680b6a83bb7380a09e618d28dd8d6f1ff2e42b82d9092ba1736377f629cce2a66dd1c1937effd19d4c27f469edb8bc99aaf20ae0c65c0d404add77ec1add91223788177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643ee90c2b93ab1421224420ff706dd0bd2784c84527de9313fbecd7f37e6589495ec6e8b950c258c5f14f085c33e04956a84cb11a7e79784e297b7efb75ac8c79a827de2229ae6a0e7039bcc93b384c96a6e2a04582741dd36a3ee474a108486f794c09339af2d9dbb60c598a3df5a0a8663870bde8691c24d454e63683439d56be8f725164ea3c0997d186c01a838bfae06b68551151026f3f087890302345dc3aa40831c0c1cf434d19b473efd0898b56e8a9aa26687f51a1ff2cbe5fea64e65servicerootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootroottgt-1.0.85-150600.10.3.1.src.rpmconfig(tgt)tgttgt(s390-64)@ @@@@@@@@@@@@@@@@@@@    /bin/bash/bin/sh/bin/sh/bin/sh/bin/sh/usr/bin/perlconfig(tgt)coreutilsdiffutilsfillupgrepld64.so.1()(64bit)ld64.so.1(GLIBC_2.3)(64bit)libaio.so.1()(64bit)libaio.so.1(LIBAIO_0.1)(64bit)libaio.so.1(LIBAIO_0.4)(64bit)libc.so.6()(64bit)libc.so.6(GLIBC_2.10)(64bit)libc.so.6(GLIBC_2.2)(64bit)libc.so.6(GLIBC_2.25)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.2)(64bit)libc.so.6(GLIBC_2.3.3)(64bit)libc.so.6(GLIBC_2.33)(64bit)libc.so.6(GLIBC_2.34)(64bit)libc.so.6(GLIBC_2.38)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.7)(64bit)libc.so.6(GLIBC_2.8)(64bit)perl-Config-Generalrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)systemdsystemdsystemdsystemd1.0.85-150600.10.3.13.0.4-14.6.0-14.0-15.2-14.14.3he@c@c@c:@bL/@a)@]:@\f[p!@Z@X|@VI@VI@UUe@UpU>lduncan@suse.comdmueller@suse.comlduncan@suse.comdmueller@suse.comlduncan@suse.comjsegitz@suse.commatthias.gerstner@suse.comlduncan@suse.comlduncan@suse.comrbrown@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comp.drouand@gmail.comddiss@suse.combwiedemann@suse.combwiedemann@suse.com- Fixing CVE-2024-45751 bsc#1230360. This makes random numbers truly random, adding: * tgt-chap-Use-proper-entropy-source.patch- update to 1.0.85: * remove duplicate includes * Fix blank documentation line in service file- Some cleanup (bsc#1206639): * removed patch setup-tgt-conf-d.patch, since it's upstream, and having it caused duplicated include of user config * renamed setup-tgt-conf-d.patch to tgt-install-examples-in-documentation-dir.patch, to better reflect what it does (since it no longer sets up tgt.conf.d) * removed the sytemd source file we have, since we get tgtd.service from upstream now (with a patch) * added patch tgt-systemd-service-update.patch, to ensure SUSE-specific changes are in the service file * dropped tgt-include-sys-macros-for-major.patch (obsolete)- update to 1.0.84: * fix bug: target bound initiator-name but client cannot discovery the target device * fix use-after-free in iser_conn_free()- Update to version v1.0.82 (from 1.0.74): * tgt 1.0.82 * README: minor improvement * Fix FMK and other flags. sg return good length and sense len. Not needed, additional condition. LTO streamer not work with check only ILI flag, need check FMK and may be other. Without thois check working fine. Test on LTO1 and LTO5 streamers. * tgt 1.0.81 * README: use markdown format * Add LICENSE file * replace sourceforge with github * tgt 1.0.80 * scripts/checkpatch.pl: escape literal left braces * Replace __packed with __attribute__(...) * Avoid passing NULL pointer to printf * set INFORMATION field on COMPARE AND WRITE miscompare * add helper to fill sense INFORMATION field * Clean up error handling * target: replace bzero with memset * CHAP_AUTH_STATE_RESPONSE belongs to auth_state * After rewind option, la->tail may equal la->head. This causes the old logmsg to be lost * tgt 1.0.79 * fix coding style in log.h * tgt 1.0.78 * tgtd: support pid file for tgtd daemon * iscsi_tcp: add support for listening on random port * iscsi_tcp: fix compile warning * iscsi_tcp: Replace deprecated valloc function * tgt 1.0.77 * spc: implement spc 0xb1 and support rotation rate * tgt 1.0.76 * fix segmentation fault caused by scsi_sprintf * tgt 1.0.75 * Fix gcc7 string truncation warnings. * Update README This removed the need for the following patch (in the code now): * tgt-Fix-gcc7-string-truncation-warnings.patch The SPEC file was also updated to match updated filenames.- Added hardening to systemd service(s) (bsc#1181400). Added patch(es): * harden_tgtd.service.patch Modified: * tgtd.service- removal of SuSEfirewall2 service, since SuSEfirewall2 has been replaced by firewalld, see [1]. [1]: https://lists.opensuse.org/opensuse-factory/2019-01/msg00490.html- Update to version v1.0.74 from version v1.0.60: * tgt 1.0.74 * AIO backing store now reports a list of supported opcodes * tgt 1.0.73 * Update tgt-admin * fix build w/newer glibc * Display nop_count and and nop_interval * Quote $backing_store variable in system(), execute() and backtick-calls * Buffer size is stored in struct concat_buf.size field, so use that instead of BUFSIZE since buffer size can be more than BUFSIZE. Also, remove BUFSIZE since its not used anymore. * tgt 1.0.72 * smc: fix snprintf warnings with gcc7 This removed the tarball v1.0.60.tar.gz, and replaced it with v1.0.74.tar.gz, which can now be gotten using the new _service file. This also updated the SPEC file with the new version number and the different patch set. Remaining patches were renumbered. This following patches were UPDATED (refreshed): * tgt-fix-build * tgt-include-sys-macros-for-major.patch The following patches were REMOVED (no longer needed): * tgt-handle-access-of-a-target-that-has-been-removed * tgt-missing-module-directory-not-an-error * tgt-compare-pointer-to-null.patch And the following patch was added (and submitted upstream): * tgt-Fix-gcc7-string-truncation-warnings.patch- Fixing build issue with "major()" and a pointer comparison warning while I was at it, adding patches (bsc#1181571): * tgt-include-sys-macros-for-major.patch * tgt-compare-pointer-to-null.patch- Replace references to /var/adm/fillup-templates with new %_fillupdir macro (boo#1069468)- Adding documentation files to SPEC file to silence rpmlint- Adding upstream patch to silence bogus error message when backing-store directory not present (bsc#954801), adding patch: * tgt-missing-module-directory-not-an-error- Added upstream patch to handle possible target removal while accessing it (bsc#922526), adding patch: * tgt-handle-access-of-a-target-that-has-been-removed- Update to version 1.0.60 * No changelog available - Update homepage Url - Use download Url as source - Remove tgt-git-update; fixed on upstream - Remove depreciated AUTHORS section - Perform a spec-cleaner on spec file- Fix rctgtd systemd service symlink; (bnc#945604).- Allow to add options via sysconfig (bnc#828214) - Drop invalid ExecStopPre entry- fix tgtd start by giving tgtd time to open the socket (bnc#934642) and use bash to run multiple programs in ExecStartPost/bin/sh/bin/sh/bin/sh/bin/shiscsitargets390zp3a 1751615528  !"#$%&'()*+,1.0.85-150600.10.3.11.0.85-150600.10.3.11.0.85-150600.10.3.1 tgtconf.dtargets.conftgtd.servicerctgtdtgt-admintgt-setup-luntgtadmtgtdtgtimgtgtREADME.glfsREADME.iscsiREADME.iserREADME.lu_configurationREADME.mdREADME.mmcREADME.passthroughREADME.rbdREADME.sbcjukeboxREADME.sheepdogREADME.sscREADME.vtlexamplestargets.conf.exampletargets.conf.vtl.L700targets.conf.vtl.MSL2024htmltargets.conf.5.htmltgt-admin.8.htmltgt-setup-lun.8.htmltgtadm.8.htmltgtd.8.htmltgtimg.8.htmltmf.txtsysconfig.tgttgtLICENSEtargets.conf.5.gztgt-admin.8.gztgt-setup-lun.8.gztgtadm.8.gztgtd.8.gztgtimg.8.gz/etc//etc/tgt//usr/lib/systemd/system//usr/sbin//usr/share/doc/packages//usr/share/doc/packages/tgt//usr/share/doc/packages/tgt/examples//usr/share/doc/packages/tgt/html//usr/share/fillup-templates//usr/share/licenses//usr/share/licenses/tgt//usr/share/man/man5//usr/share/man/man8/-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:39566/SUSE_SLE-15-SP6_Update/8145ce2a07d834bac2c24e5cb6eed5e1-tgt.SUSE_SLE-15-SP6_Updatedrpmxz5s390x-suse-linux     directoryASCII textPerl script text executableBourne-Again shell script, ASCII text executableELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, for GNU/Linux 4.3.0, BuildID[sha1]=99176f57b36f4b7872b79395143fce08410c0692, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, for GNU/Linux 4.3.0, BuildID[sha1]=979dcc3a84abd72738bf2382bcc57e60db9a7538, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, for GNU/Linux 4.3.0, BuildID[sha1]=54ea0dfd27d6b446ff90adbd6ce6713ded3fa41d, strippeddiff output, ASCII textPOSIX shell script, ASCII text executableHTML document, ASCII text, with very long linesHTML document, UTF-8 Unicode text, with very long linesHTML document, ISO-8859 text, with very long linestroff or preprocessor input, ASCII text, with very long lines (gzip compressed data, max compression, from Unix)troff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)troff or preprocessor input, UTF-8 Unicode text (gzip compressed data, max compression, from Unix)RRRRRRRR RRRRRRRRRRRRRRR RR RRRRRRnrAvtX:Hsystemd-sysvcompatutf-83bf308fe37165d162d25de4ff2d852136cb62aff5c2104c58e44389b5c8de218?@7zXZ !t/t.c<]"k%b)o# /DXyvbmyC/?h[f#xbld=, +_.~,Bi.zh nT@+pE]Ii{U(iC/;q=/6ߜy %3T\Aze1!oAkk㎾}=";$g e9Ƥ(ц:29k\ PNOaL[E^ f\t<ؤErWvZ i_v"tB|*~,"Ax$YAՙd:M4S\-XwT&ZPVX#kmhe6%4a+gZlHv90jaeg0lC(UqFxAD~̽,ofz/? b=سs*6F[92Am󣶊Pf[h\8h\A]ZFM\񃉱 վ~Ksȫ0T%X@(fׂtlr]q{l^ ]E=V9'0 YįɉU/pt@q"u>C&FE5s_ݒ/@#po_9S\`=="nc0٠Rq0k ?2gERf^+?Yw+6n3Q i5xO,zJxvQmAjסJoB <ϴ :ڿxqܧ?zC-2/jаp4Dߜ눡ڨDJ}ZejaVu-uG ,pa\DljRMV'oԆxF< ;4 i3JtNjf>t0_H@]vf"ψ=XOFi[fE,jCvcI&7V]ozH f4!bZܼŠ8M?-BlBZLcd݁D)04,8$`{Do;s&Th`%UU[ޅsm}9|upuJ$}V@.}5HɿJ[ǽb 22b}"Vw$qFB0 >p0 ~um1 kY}Ad FZLP4ON푣: "#WygYb:rRq?>L'l 5%mQμJRo6Xb,F/Sx1i؛`25P`iWɘ xu[`&U5R?Ʋwŀlz{,yE$@QVU@)}tH#S,!#!։.fJ3r.,f'`1nJ~ ݁ظ| ARsl-kbLF =t㸤OB,}ǐ7,8#nsH@3A@WG7rÇEz#: }"_dG8;r*U#ay5j 'x7 ƀy˱'j-o|9]l/l#yј餘1wхQI$1EkV̖srBزL)j^A_}$vӑC@*TS'D)T8pZws_'w hM]yvޏnM~%@t/KT:= ۃ $՞͍h04,0!έk Cv G9P:stn#e1"ܜ3yEf ɕT.ǞEr**so>8"Tʾo 8318ZۓS( 'RG؋S|Mfш*_˶20S^_L,i>?rnpOpw˿= 黗d`/{aN:}}Xь 왒 'Kq?FYJh%["~f@Pt0IRu09vP5*O'+Vz3;ki<ܥB%I19/VƝ҅)[)]|phz!x5=S$xl=77Q?vZu4i aح04Ik},Bc-)jB A5BaV[Pm\8SCdlUrK6Y8xB^,{T$nImmzTw=yyfDX;H~Y7{Yiyۀ:A[YJG̞aذsl.HgtF1-CF{&l !- *# .MwsÌWPXV\j9-bDЮ)g9IC`$ /bz!`AZp"EWv\m(!p*UjȪuNC+b] }kuF'ls/mU1'Uz!x6f"wΉs/]Ha M{942S'lh0^jHy ^Þ.~V$Tj?RuK~ucyN{IN l fZR`O+ <(C;qZ6}oAM:l_x`(Zr Z顃/0 K3 і=1cl%ϲyh2O~艽&eݍ52e;/]y/$;-!ys-&=ZҦHߨb\4Q:|sݨMxN~-یJux͎ST9敼a!~%\ VQoX Vɞ kQv4(}G9L[' 7TE"3MEk˺դW>cǼ3zoF_r/oyikZ4X5$C21copeJp]TZONS>ɐs!̅~z \V}$;A}*O|4g8z ϒyI^iUoyCaW' oDwe@iÂ!U0Q$ώpo|UFTy u_i{cZ`:fK̵zmgӄtxD76LP(:| h{`,U X:>n#Huм1Ga&h(iAS$쳎Cu~G08:]Q?YUM4>MD`VP_-!w"7ōM\1 ?š&6< c:fM*-wIj?^ {]gPOc}0jc\NńGy&GIGd.q L>iߎz<LK]1jVR%3<n#޼ V;f/# a=eF}Ƽ@'uy~z6$T"8W s +n3Ԛ\g= *^_ :1pC_E̾F}VBqK]DG/MH \٠7rЫ#8@:4`㪐,9א bE[s`C7 GX`cX)zV2\"nQ \y?8}6$4?G Cb8}y䗝, F@4(ƙ<5qP$i (3F=WADJXo3^L~w ee"p_8)X(3 yn@`m:Bۼ-A:rA rO~C;SjU'4Ѓ އt3&'c3BdjfՌ"KaͲcx.:}÷ZX7{~8][|ѪbYW^NjܾnT~wu#DԹJD=&$YBQD5`fU_W4%?ة.ռ*DsP-+<1" ^d|Jڔ4 lW鴳] 8n1?y$e|z^"deD=A&<1oH·}T3"LjiU q,PBC eK.J%nĩMw]Y1 6V(t7>;'}p"u‹ F2GAGO4A+ 퉗 i?syײЂT/^5> ['A)ESXu% BrmM(!fnӷ3bw6YYvO-yZ@AM\J@ҩ:W~,7O $"yVH`i*r$sɱD5v887.%MvKx^R+Ro9g|U-VU[,R&&zĊu? ,M[@MmHOoaZ5H ˫4A!2?p))ߍEeP o74SHvVXbf~Hdb_ӔG#^u:Csom8 =RɝBM"V@eߟЅ>#6܎w`AZjYS%0Fc[=rlH;/7>08(`;[OD2bkAyG*~BodX /PFLיO>CZfznLA$ϴmؤƌo}/WaN\I,EdKمœU":ڴ$~UCYM/;@zLqDz_29 JI4چX4j1b;A/$s̼_Flq>L`ѲLVQ"yvҒeP|F!P%t!H8q"AA^ef^= \K4@ߑC~S6jx0lu3Q|*es`FWQRX]9x NѼְJ*6I("F^fsJ`}=sUƝK%Њ}}m{/Xdo0a2q9HJy)KN粮ZCw>F[挝M*Fwmx1'<&^f+Z֛py;**-k0t0(}q\)/JvAh< iߐ("|9v' (YJ7R rdu-ʸ^,O3h=J%UqÁDd"aM ԍ=U^<6p_.'C@gU ߆$X0`3\ژC{GfW)7n}'菻ڱ^kP,UܷN܎]_]GN%&vª8*rIR_lCV=2–K`ZO FN4:t03h(Pp !§)?]x2?&m?=to^8N"F'οhrv *dS>w,4>˟<%cin+b4 V2lQ!7 {I(F'e CKۮX2ab578l? +'KT']0"zhU/X4u{\S(5/FFDF9 Y{yZ9[U34gǀr̾ Rr R(~SGVMׇk23ϮR L<;Ñ5^'ݛ:N'V]$:a,\B^F,}g8Xc>k΍$BhYaݼ*>~-/*Y9n!iHnKx%y , kҨl.Րkl~`pgu\^baI*_bMBx bs]dw>DN+ *Y Dˢw1vmյZ.=L~4-m0C&:VPs/KA[hJ(IZ2BHw iu._{(l,Jzz2B Н~tT!9"45{uS^2nxVW|Ro40lqN@4s(Dؑ̇U 1k~1Òu*42\5xqGሮv#]*dq@ek5ĹIڞ}Js6:(&]e[IXuYaQS wJɞ ë0v}Qد:S0&9XPyc8A5~⳾?"֠{Ylo,D!g6\7: 8d׵!̛T,)6z9 qg|Ճ]C&`fMfzyp#&8wAǗ}q6YFq*g`08 XbCX{j΄EZDp!lB.>B71Z H`;fyKˡs0CC2ͦo/t|ªũEZ̗0@n >a/]۠fه$5T+$5qT~tZs"^K-'\x=fp XR5D;˱%!.\f{ N`2g#SS]v8V1-vb%Q1lJQpc/aAO`ePat@Dm }urD`e mQ X7+@|+mM#Fwv ',+ s(?wG0"ڬu*8G;P92Vj\3yl-4KR3鯉'nJ]\u]Sn܄ҺmnF7}F8dADet! ihd]QN.ʜh8T|/& 7;؅ Nwq4p&pxz75;wΥ"3y)Jae :oR^iߧ4]I/#\O p^h_q{s #g iE|tl5OHt {#= |wXЀ"Pb$k&n@/Zw(͹V*"\Tik]۸xo`0Ir}~qTA"TA1Cpl d Yv2 8v|Q9&Q9Hݎ[r_ӛ57w=伐)(\y"7˙Bd:I v&@j;V,g|%%kղRE󁋙&{gwV쭎BbK^б/VyGo=Y/ =֙\+xFF1 t]u| cx¿Q.Ag!ic6 F\S1/_DMWO_7~lr t8}V'F%O]+-*ؓ:rEn~V2Вv 6;DH=x I&gzi:o>_ӏj݌xHvvԥ`=s}oϊݥ0dgZ:q4p>/k}I~$ l xJ\6@Ǭ}!^?u%v/hkY'k^)Zů4'zeq7Jv*c 玢4M ~`0$s/af@Sk0m`b˂ȅGa?;t2$LWلhR( L`1:z3A?52m%HI&Q#٢}#4 ħOMN Dgut-Zx$x4VϢ'58TѢW%B N=FQK#}XqZQ8O*c#]fhڏFīK$ٛ摙<w|Q>kbV,žF>m>ur J,4ʰCl}'TJ|-e^R(N*Vk{շ(GO0RP#q^5-2u 7uq<5xkBѻ`VúpgJF:Z.r񣿙{ay xhAu_XI9Yg6+V?R߬"$mũ髄Lu`@gCziQDE䈖K'2Mj/`iZXX81dS:yQꘖ֑rmU*64~wc(bpECp_`$Jh5o:y)qTc2Fk% r:f% ){kZZ҉M$_nKX?8ճ/zȸe3;lXgLo/+YEeժ +DT|.8,Z8:tVlj|[n,܀Vxi{Xr@/jsW m.{$&XLb-Nvdڢmf{>*ƒе\& B;i)G'uwygHG9@/|%n W1ԹjY .%mD0$NRs跢V8hw)n4zcX|8SMQΣVl7D;mjLQYNqўV skcضM52W{T|oop>꟣>2חzjv0o1j5^HϚ JL6蜍N[tsqIg-8ɑrlw4 S=:Ý^Ull^R u®f-5K͋9w |zicKxQ=_}ť<sX0vN]t"Z>;6.DfUo^IshQ]ʝhUS\p33!r*'p[}<$ )P:V_0] T!?C:V9W O7Ϧm̷e59zyҴ0jC: &&ȑB^k }؅ E;^E=Y/b`Lva\=,٫4^X&'zMl) WU.B"^օ=/qKONff?TiU]({. W. ,&4Zf%57*QTD+f[#ȂVz~:TdTFj_m ޮ9 Hi28-jjX"kD-ZٳScL\2Ww eܲ7. PXd\Zg j@0IBåk٥?f(@p+u,CLZw n(* h%Z ]= պkPpm/A[$t ,&4lA/qQ-%Ei븨1[MG%ӂwXi_g[|=!(Kh")ىZ&)`mDW:k(f*qζeet!U8~!ĮuL$&=t tpڐ7ugy_)7u1+וэʂ B8*?E>u1XqokS XoZ'';?:Vʈ',ef ٭@V""w?ҾZn`8[^WnVH*6Twq15 mVݴCI_kԫF Z쾿K oM2 /D4cnjճ&;b$ z`zǒ_0,cgQm8ER=k!=Le^pMe.2FcL+pr5[٧~ \ '[{ښRǽ'fĠvq``0{n !\3+ O]].]ɨuY)'!!#+fi2n"U,H1 3o' B p5v0OҁQX0 LXɳȞ1Ă% ߏ:ā1꣙$kpMU;]f3+O|o x./L!;:OMŰ1o~<|]S(/ i:[gdF^I&4U٠{y kG,d<b|n_4=MNxA. E.fIkm?.Cq,!1-O79 QN=L(.4-xK xx6H`Y9966 >-G>0`L}n4" b_"xPEKֻՌ7v9sZYʡ&a Y>%:fB6b#Y (MDh AV0Ϻ^ZaD"iqHrLJ>m]]VSXVȰ*T|,@E:څN1'~ j/;.]hf.?KX-Շ/X5em2mz;fkye \;-A#htQR(ci o4ⸯ;K@C.,[heS.'zFXoūTLĩ-$zf Vޥ~Y_lG:w17)%鈅6'$E,G Ջ7$·t >j=xX!ߡ<[L9;JİBhAjTAG8('{hr4q s:c*(dy }~} \M)>20 fIJf bKm^1D_Rks0}GSlc:},NP3SZ{ =r wɱ0+2tj/ܪVX\6/~5꺊㾽W7w(+hA-ag?LI=Qܜ_p{Gɫ!'ƋB /11NԜQ%.э$ P)1͠* wcP!q %z ݐ(NXׁGg r< E9%9<'~G\Vw3weh]{.gQK~K+Rk`Og TB9]/o &!.cOٛ4w8˴!3Rs͚VFLcos@oT*ӎA;~z]BiAߩ[p%-Fo_ z?Vix*YC\Qxq]\p&y%ϫvɽth+{{ح}*Mʚ%ҿJoieX@sT :H;(O쨟KgwߢAVhA`dHsdj5: GQljnݾy\ <:7=2;1ޑH>K aBiŽbP%v=Js1oi% a%w&gH@.cMXl€˓<:S8VdBb3QyYLٲOhhpRYCm]þ5*<] }P~V3ˆWKd [eR=ܻ@ȭ߬o畖*}/r4ėJmn{d?wH{EL JHծgz%/\i<ߵ/H/y-HB'xMXP܅(}ރnN{9^*+m96nh=``nɕzM9=&JMNyV3}ˢZWY#HgVrmF{AHd*Wh*@7qtDtyu#R|+"yOV0y)v(H-E"\Jm_c(5\~/]F%8iMbaϝAuw %,*y1:ExHj, (2{?W=G_)J@\E1y*[׍Ŗ` )SO"{%T HTxߦ}暗m@Ⱦ 6ȧbxa,YěpNr; T8~[WT=aOkf:+2~(Б6-H- Åz0ߒn-@2܄4L#sMNЧgJr-2{.(@^̘`K{U AºVEt5J8&}>w xČ;d/V#dI{JhrUޱ\o.N~=~[z 8՗|E&T[o]0PNI=$M6#d|樐DpX\{E3[k!n<709@1'S:׀# 8KSvgX>j;4i|1f\UNh5U:L=M.ѺW<0+܎.yA:DtAotѳW~#bX9D ]1iP{t#i];-h0CҰfM7$gUˁUM50JN=xɇ("5ZLR@H`ϪZ%EvK ωo2I鋻tzVӲ@~< __r?qNk8z+7P4[N_(YoOb#:XbҺ[Dᵱ 9'wI NgmItrMD8kީ)SɡjIWZ~S_ȡooc7˅ { 8 A5΍i0^ \7O.K3=e#HK1DbЕ7bq`!K{b'd%*8o: u?Ū0j~X[l27SL܎_=x>@  $A9&eu޴{7 I71_u["x=Yܞ#ypgD^oY#.,P[PӤb[CiqDgn70=!$wB#  G?HIfgޯ{fgp3b9G+& VqeȊ2eahj~ \jHetDdӯ/AoOۥPB4 x\jcg<{SXL5`݅}A۟ɌF_rG3N MrX_؇rGLXF s".4 g1HQ. 6qQĢY>|*⎋~-fv?ƣ!MYjW!)+X}ÝsDVYF0@Ehb&eoE ќ8Kʬ`nZw&C@n7O!s4iOX#=2K`{rc-'Vym4T&xl+Drp Ctl h ґ-N_6Õw[TX)dft\SsN3W E SӫofGNQcw†ZIhj}(2LnTQa# W6ݨԙ>Hbt ɍXEnMId>MKFP9Ln =3G ܐaLV!#=],k0iҋ 0ozJXHX04__-W4TUePBEӰ|P˛k Sa]QAd!Q[B0*`î zGS$_S0{axmS>[ ;vGurLvI&տ^Yx m_^Dr}Yc -YK$}ɚVcŽ<(1IVĶEnHɫtX G8!}r 7al(7r;KKdRJaԻTnWҦқd^a 4%NCA*Sgyܑj_vq!$/l,$ȚY~FP70N7AR+rKЕYύHx,ĚqrR;C,@im@J1O[Ӂk  8EM{_GOK[A6>Fjpn7_2F :2`s,PN,2 Ƽؖmp8jg^b'91~rAM48OKc)J[BqʤzmV81@3rڢBUl. b,xFUq<31 Pқ@TQ `"?\ $?m[jےl!^tdcE.4:LɊPQ}ϖЭ_Rh2lN/IVxlN*ayZ!{Ê}¨rLpˑhZa G^&)Q2' wCa!r˽ k@ xfuK5V}AS7"8?lwQ*;{0NXH7|Pc\n̒}&0!UYWA?4/Wʮ1.93mG! 7q+"# zC6-ƥߒ'͖gU6tk6<V<5\FӔE)'2J1VH46G9ߧ!Uvt 5 79A:]; J72W@ x"… 6lRHjxon5v5zLlpBqW!A8jMl 7̫ہ8Z):|XI d;oWʳHל0V g]Jg6𓆻@{?PEGWY# iIv e[T^[Y <_އŶP̞lɞB5H"%Ӗ^TZwl[C:hg-Kb.sݎc{[i|5.|p^{/큶! $\cJNZAH .ͨ 1șgW;vlp̂]YC(}AKIMa@f [L!ɹ/ߪ׵i@&}tF6cx驄4%g?*"ߒ0 3+;f:CO1#yGIpsn_=iOG&y* '4]L~{&凞)ɮAm4!/,AЉSnjI 8/ow D bLq7UC "뿒'ۤpn/jL.JB'mca tyc`!eC?X 4%pqM(%ޫ'Hɾ 3ba,F|i_t7T `3oE+>rFw<AdYsUk>r ֊+4[׸}억̽GHs~QMxKSg;fG<2)1Hx~JmJfsZVldG&"=c,ߨ 4Y ϐv&V;C-ɾt8T]' 06.I@?Ȥ=w:e}_wr/X/J/Jx<4YޞޢfzgNo9oKF;IHPjSX`gFͅ{ײ6oS(71hn3" V3b%^S3Cl'm[!t 4[x |d--l+%Si~<~13zJ~,aGfYQ0GwoQ%~<njG'`KLjUUiluHk'8nGַP,l(qvm{)%H?鯚ʃDIuDkWZJN 9.8VKSlmӘf Y狺H6pt`_n-z/bw7 "%T"A͝dX'pXjᚖ(j`ElX*Oij6ńgLDAu퉸سMoxfSɣ2'܋8Em'<p hV!:n"'q1|(x{𨚫0uAM ]¹{OݭLc43$Q`@i:8q.n}f( uLKVvH ml N Ԍ}Q jA pyÛ Mf; YZ