libtcmu2-1.5.2-3.3.1 >  A _bdp9|*'Z}e#mfrsrumjߩEO"ob-ɝK2ݿٙ{)π[zi%W#: g,pB3<;8bbQcQ~R`E|S?6xt;\yfsDcfc#E |O&YDj'iH2y,n'\m|q炄 ] }p[Jrب02f29de35d7c7e4a70316afee7116db13ecaab806a5a62ce660392a6c278e94f4afe9fc8c6cf1e387e9da9eff784f82c0ca2e6eb_bdp9|T !!oaݩ7ZSRZr0p@7?7d   9x| $,8 > D P  8((809:>42@4AF4PG4dH4pI4|X4Y4\4]4^4b4c5d6e6f6l6 u64v6@w6x6y6z707@7D7J7Clibtcmu21.5.23.3.1Runtime libraries for tcmu-runnerThis package contains the runtime libraries for tcmu-runner._bPgoat06SUSE Linux Enterprise 15SUSE LLC Apache-2.0https://www.suse.com/System/Librarieshttps://github.com/open-iscsi/tcmu-runnerlinuxx86_64 _bP_bP_bPd7ae49dd109b97b7379ae4fe9a5b830b130edf94ddb7c0f6ab346fae3784f608libtcmu.so.2libtcmu.so.2.2rootrootrootrootrootroottcmu-runner-1.5.2-3.3.1.src.rpmlibtcmu.so.2()(64bit)libtcmu2libtcmu2(x86-64)@@@@@@@@@@@@@@@@@    /sbin/ldconfig/sbin/ldconfiglibc.so.6()(64bit)libc.so.6(GLIBC_2.14)(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.4)(64bit)libc.so.6(GLIBC_2.8)(64bit)libgio-2.0.so.0()(64bit)libglib-2.0.so.0()(64bit)libgobject-2.0.so.0()(64bit)libnl-3.so.200()(64bit)libnl-3.so.200(libnl_3)(64bit)libnl-3.so.200(libnl_3_2_27)(64bit)libnl-genl-3.so.200()(64bit)libnl-genl-3.so.200(libnl_3)(64bit)libtcmalloc.so.4()(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.1_^\@]@\9\@[@Z}@YX@Y@Yp@Yp@Y@YR@YR@YR@WW@WE@WI@W+5ddiss@suse.comlduncan@suse.comddiss@suse.comddiss@suse.comddiss@suse.comopensuse-packaging@opensuse.orgddiss@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comlduncan@suse.comddiss@suse.comddiss@suse.comddiss@suse.comddiss@suse.comjengelh@inai.delduncan@suse.comjengelh@inai.delduncan@suse.comlduncan@suse.com- Fix for security advisory CVE-2020-28374; (bsc#1180676). + tcmu-runner-fail-cross-device-XCOPY-requests.patch- Update to version 1.5.2 (see jsc#SLE-7751): * Bump version to 1.5.2 * Fix man unmap len reporting * Bump version to 1.5.1. * spec: fix build error * Bump version to 1.5.0. * Disable explicit alua support. * Don't install headers. * Add missing whatis entry for manpage * Add link to tcmu-runner manpage from tcmu-runner.service * Fix spelling s/Igoring/Ignoring/ * Fix spelling s/reseting/resetting/ * darray.h: avoid UB when decrementing zero pointer * Log timed out commands * lib/runner: Add helpers to convert lbas and bytes * Check for optional handler callouts * Drop unused tcmulib_cmd code * Convert runner handlers and core code to tcmur_cmd * Add tcmur-runner cmd struct * Prep for separating runner fields from tcmulib_cmd * tcmu-runner: simplify format unit io limit check * Cleanup runner callout definitions * runner: unbind aio code from tcmulib_cmd * Set write_verify cbks in write_verify_init * Set handle_caw_read_cbk in caw_init_readcmd * Add tcmu-runner cmd completion function * runner: fix up callout return info * rename tcmur tcmulib command completion function * libtcmu: Allow handlers to allocate n bytes with each command * tcmur: remove useless code * alua: fix pthread attr destroy * tcmur: fix free of xcopy parse * fbo: fix mutex destroy * reconfig_device: add request cfg type to logs * api: tcmu_cdb_print_info convert err log to debug * tcmu: reconfig_device convert err log to debug * tcmu: link libtcmalloc with libtcmu and handlers * runner: fix crash during compound command execution * cmake: set '-fno-builtin-XYZ' options when tcmalloc is used * configfs: fix index out of bounds * cmake: add a minor .so version number to libtcmu * spec: track backuped files * spec: update the spec file to fix the build error * spec: pass the tcmalloc option to cmake command * spec: switch to use rpm conditional switches * extra: add gperftools-devel to install_dep script * Optionally link against tcmalloc for improved small IO performance * libtcmu_time: void header file include muti-times * glfs: update the glfs logdir * README: update to add uninstall * lockfile: switch to use /run/tcmu.lock * logrotate: fix duplicate log entry error * Validate input for tcmu_log_dir_check() * Fix parameter for tcmu_setup_log() * Follow coding style, move leading brace * Add method to query whether OOOC is supported * glfs: fix build error for GFAPI version check * glfs: add gfapi version check * Fix unmap to handle refcount being 0 * fix typo in code * rpm: remove %defattr * rpm: remove %clean section * rpm: use valid short name licenses in License field * configfs: clean up the code * Fix pthread error ret * rbd: fix the error ret in tcmu_rbd_unlock * Drop sense arg from tcmu_explicit_transition * libtcmu: setup_netlink maybe failure but can't sensed * Drop is_sync arg from tcmu_acquire_dev_lock * Allow some commands to run while taking lock * Drop in_lock_thread from __tcmu_reopen_dev * Fix pthread error handling * Check if device is opened before calling handler * main: load_our_module maybe failure but can't sensed * tcmu: clean up the code * spec: fix building error * logrotate: do not overwrite the exist config file * logrotate: fix the install cmake file * README: update and add the make_runnerrpm.sh info * Fix 80 col formatting in def_log_path setup * format-security: fix snprintf usage * config: clean up the code * Drop cfg path variable * Switch some inotify messages from info to debug. * libtcmu: carve-out library packages separately * logger: skip resetting options if they match with current * load_config: retry opening conf-file if the initial attempt fail * cmake_install: backup old tcmu.conf version as tcmu.conf.old * doc: update readme * daemon: log start/exit msgs with crit level * dyn-logger-config: honor the precedence * main: organize the cleanup sequence * config: deprecate tcmu_parse_config * logger-init: honor the defaults when config key:value pair is commented * config: cleanup few allocations and naming * inotify: watch the directory not just file * logger: check for -1 return value on open * Call block/reset nl directly * Call block/reset dev directly * Fix up configfs file not found error message * Move tcmu_get_runner_handler * Build zbc/fbo with scsi.c * Remove daemon priv hack * Sync lbtmcu cmd and misc naming * Sync libtcmu dev get/set naming * Rename dev/nl block/reset cfgfs functions * Rename tcmu_get_wwn to tcmu_cfgfs_dev_get_wwn * Use uin32_t for cfgfs action values * Rename tcmu_cfgfs_dev_get_attr to tcmu_cfgfs_dev_get_attr_int * Drop tcmu_get_dev_size * Drop tcmu_set_dev_size * Rename tcmu_set_control to match cfgfs lib functions * Use uin32_t instead of unsigned long for cfgfs lib function * cfgfs: Add tcmu_cfgfs prefix to cfgfs lib functions * lib: Update tcmulib_command_complete comments * Partial revert of "libtcmu: do not install headers and drop libtcmu stable API" * Revert "build: drop versionless libtcmu.so symlink" * libtcmu: move tcmu_get_runner_handler into scsi.c * libtcmu: move SCSI helpers out of libtcmu * libtcmu: declare tcmu_cancel_thread in libtcmu_common.h * libtcmu_log: get subtype from tcmulib_handler * libtcmu_priv.h: drop unnecessary header files * libtcmu: explicitly include tcmu-runner.h where necessary * cmake: drop rsyslog build time check * spec: remove changelog * cmake: add rsyslog to dependencies list * spec: add rsyslog to requires list * systemd: start rsyslog.service before tcmu-runner.service * config: do not update the logdir when it's commented in conf * logger: add critical log level support * libtcmu: remove useless parameter in remove_device * spec-file: further changes to take options to ignore dependencies * logrotate: add logrotate support for tcmu-runner-glfs.log * tcmur: fix the unmap logging format * glfs: add writesame support * api: add zeroed iov check support * tcmu: Fix CMake to install file_optical * tcmu:fix extra backslash * tcmu-runner.spec: fix the rpm build errors * tcmu: Simplify command completion * file_zbc: optionally build zbc handler * file_zbc: fixed compile error under ppc64le * Enable explicit alua support. This replaced tcmu-runner-1.4.0.tar.xz with tcmu-runner-1.5.2.tar.xz, and removed two patches that are already in 1.5.2 so no longer needed: * file_zbc-fixed-compile-error-under-ppc64le.patch * file_zbc-optionally-build-zbc-handler.patch Also, fixed i586 compilation complaint in tcmur_cmd_handler.c, adding: * tcmu-runner-fix-i586-size_t-error.patch (which came from David Disseldorp). Also, added requirement for libnl3-devel version that supports signed network functions, such as nla_put_s32().- Move tcmu.conf into main package; (bsc#1138443)- Add explicit libtcmu package dependency to avoid incorrect upstream .so versioning; (bsc#1135815)- Rename openSUSE zbc patches: + file_zbc-fixed-compile-error-under-ppc64le -> file_zbc-fixed-compile-error-under-ppc64le.patch + file_zbc-optionally-build-zbc-handler -> file_zbc-optionally-build-zbc-handler.patch- Update to version 1.4.0: * tcmu-runner: bump version to 1.4.0 * Disable explicit alua support. * logger: notification on changing the options for dynamic reloading * logger: update .gitignore for logrotate.conf_install.cmake * logger: fix the return value * Sync sig handler naming. * Add logrotate support * Move starting log message. * Allow log file restart from SIGHUP * Simplify log outputs Replacing tcmu-runner-1.3.0.tar.gz with tcmu-runner-1.4.0.tar.xz, updating the SPEC file, and removing patches: * api-avoid-compiler-Werror-return-type-failures.patch * build-drop-versionless-libtcmu.so-symlink.patch * tcmu-runner-remove-uio-include-for-iovec.patch * support custom cephx credentials; (bsc#1135369)- Update to version 1.3.0; (fate#322524) + Improved Ceph RBD integration + Support XCOPY copy-offload commands + Support COMPARE_AND_WRITE, with Ceph OSD request mapping + Asynchronous I/O improvements and bug fixes - Remove a number of downstream patches now carried upstream: + glfs-discard-glfs_check_config + fixed-local-dos-when-unregisterhandler-was-called-for-a-not-existing-handler + only-allow-dynamic-unregisterhandler-for-external-handlers-thereby-fixing-dos + fixed-a-number-of-memory-leaks-with-deregistering-of-dbus-handlers + removed-all-check_config-callback-implementations-to-avoid-security-issues + tcmu-runner-add-local-target_core_user-h - Remove development packages (bsc#1080619) + API discontinued upstream - Add fix for -Werror-return-type failures: + api-avoid-compiler-Werror-return-type-failures.patch - Add fix for library versioning: + build-drop-versionless-libtcmu.so-symlink.patch- Add two patches: make target_core_user.h local, to insulate tcmu-runner from kernel version/data structure/naming changes, and add include of to that file, to fix "stuct iovec" not defined issue (bsc#1058303), adding patches: * tcmu-runner-add-local-target_core_user-h * tcmu-runner-remove-uio-include-for-iovec.patch The latter patch is added only for SUSE version >= 13.3, since it is only needed there.- Remove install prefix from beginning of install libdir when setting tcmu-runner plugin path (bsc#1052795), adding SUSE-specific patch: * tcmu-runner-remove-handler-path-install-prefix.patch- One more update from Security Audit, adding one more patch: - removed-all-check_config-callback-implementations-to-avoid-security-issues (bsc#1049491)- Updates based on Security Audit, adding 4 patches: * glfs-discard-glfs_check_config (bsc#1049485) * fixed-local-dos-when-unregisterhandler-was-called-for-a-not-existing-handler (bsc#1049488) * only-allow-dynamic-unregisterhandler-for-external-handlers-thereby-fixing-dos (bsc#1049489) * fixed-a-number-of-memory-leaks-with-deregistering-of-dbus-handlers (bsc#1049490)- Make Ceph RBD handler aarch64 and x86-64 only for now + librbd isn't yet available for all platforms- Build the Ceph RBD handler and package separately; (fate#322524). - Split the GlusterFS handler into a separate package + avoid adding an unnecessary dependencies to tcmu-runner core- Explicitly disable the GlusterFS handler for SLE builds.- Update to upstream version 1.2.0; (bsc#1038712). + Add remove devices when tcmulib teardown + fix builds done outside of source directory + free tcmu_device after dev->fd is closed + fix Read_Capacity_16 + detect INQURY response truncation + fix incorrect memcpy length + fix inquiry buffer length calculations + add tcmu.conf for log level configuration - Remove upstreamed fixes: + tcmu-runner-include-falloc-in-qcow.patch + tcmu-runner-let-cmake-install-man-page.patch + tcmu-runner-Use-CMake-FULL-library-directory-for-SOs.patch + include-tcmu-runner-h-in-install.patch- rename libtcmu1-devel to libtcmu-devel - drop unnecessary %oname indirect macro- Updated SPEC file to break library into separate packages - Install tcmu-runner.h, adding: * include-tcmu-runner-h-in-install.patch- Drop silly buildrequires on libgfapi0/libglib-2_0-0. Abolish old macros.- Updated SPEC file to install LICENSE file (bsc#982130)- Created from upstream version 1.0.4/sbin/ldconfig/sbin/ldconfiggoat06 16103757601.5.2-3.3.11.5.2-3.3.1libtcmu.solibtcmu.so.2libtcmu.so.2.2/usr/lib64/-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:17815/SUSE_SLE-15-SP2_Update/eb6487df51a6bfa289199b5058006c50-tcmu-runner.SUSE_SLE-15-SP2_Updatecpioxz5x86_64-suse-linuxELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=f8c5a0c5d60dda7d27f0e4806796e01f979b6a0e, strippedPRRRRR RRRRRR RR R R RRwRvΉSg)1utf-8a56243a4dafbbb1c66962df649d2cdb23080cd44d6413766fca0a172b27fddfd?7zXZ !t/;] cr$x#c٧\WϏAfv0 V%|Ζ!mtO+~[PjzmwѵYV{_DzD̢0\|W&m x k2隮p&|OU1*k`+i_"KE  d,ؖR,|!P2Yyg*%6Z{o?O(}:[ŕZۋT'S$AFvhkƉлɞ<N!759xCp=HeTVgS dujMZ2I6 *5PqC@^$M$*6&nOyϊޱuax*@|K2j0}s.&BP_aGP 8e@RPKdYQ0kotb1F D@*l¨=XyV ~/;^EqڔIVO -֡R7hkQsLcH&=;\yi0[O.]!M6@ =lRF6[x7 O In}l q%3 i1 {ݬzDCZq΍$DI_b ˦5(zvPqcKʡ.˂ 7Tn̼.Io"VbGlQ~VR@qP֬R-x>r 9lhT-Ϯ,?W|h}*W(zBK,qbRjD]53x 3=^*`X.7p@8;G84 ÈJYR[(oKR}lkϥK#ꦉ2$bRr tu=3Lb7fΠ=UB0kFF!,ݪ8r%[}r[WMnd,:%eXU׃@c~v HvY.sMʧٷs ma5PfSNBLcsFԆuH9"3N7y0|c#(* tmz{h^=gB  ށp5c(?_aKi+P6tFfa b| B(X5 %J:; Z`#8^&hQwgUyr˟">d^MWS_2R}Z-#9*e%ogoяX(>tzV~9Z}Ml-Giq @Ɇ@f"-J:q s[cvpzu%H0/lK ('̣ꥻT*ayZ.WIcaE1 JYh-i ֔L!7yثkOz_z>7μt~QMq=TYM+r$6 _VY~G!ԙU%[qvpᒇʂjZoj {E7чޙ)YVsDa/۷8;P so#m5N3֧lHԫ`X"JqɱPbo]/v  C~;9ݡxZ6M hbΙڙ \#: = <" ۺ O: ᫿o~%tcIWS /#o;7]Xj;zk0Y0&rz16,w@f*=j+iRE[R DYƥcW1og%gnuEIN!ϾxteE>p2ɰ%OE~KH@kI2}{*9NvHwpvg?j>`8heg:7IfisjlMIj>`z ^iV4WA<=p??c2)l܈VJ];Mتr#b|[ߎGSHpgbQ*7JTIĥGAx4p)FkP)}ƞ|iEЁϰݘ(-S{H7 |pH+X !c;:ht,8j {.\ãd ئo^=? m_YVAL\y19ǩ#j@!l" $z-~.0dKH` NKa,d]Dk!0F\K;Kpj{',i'qJ*hEDa`DϰpU4ZS"H!ݙGE@cX2 )޷~s'͢C:CBQUiDfO3F7Qr$ xVAp*5x_̋5%u|+K9ѽ.ɷ:HA*M ySM]U"ҙ 7[e%oD $dam0PApFXl[Ä...еZk\sW{)%"1f5U(MsדmA7EQD DˮÁp6%viIr.ݣć\`}UXBY-?fm`9Cn!ܪF^ӸTnC,ÒR.CUFZ%H㽪CZBee牁x|(dd4T>Ԙ ۡ:Ph۔G̱AL.r*'xrN宂ibfK2> H̥ցO}^UY"Rɾ_cx+5aN$K{čXdG9- vӣ0Ih) "W85NÒpsjOlDAe_"˿mL5S^G kFN #ͽSL86\~/40k) 3Y\+_=Iڃ) 66 i(CI r"FL<\j c0WB)FBg:96'!L ̓-TO0: ѠNqĭsq| Q[0'/{kLo:s'.];%Ø1j{c#"[Jxдr%Y筎{̀W`hζ mDu.}ӧˬpI^ !/Ws{tFc?[L(3MWV >j]pgw>ݮFJJg|AH`-,|w@3G~)x\.eK/MnxʜDL:o^᎝% mBO8BՀgT.Mz>˷;u3f۔>,qVzؽNoPdrm$޼R:?`z ?ߎiUVxۦkX(+z9l74sg9.SB1G?%PZ*wA}+mv,vlo#ͽh;gʮЈ} .ֶȋ1JpBr`Q]hV(,k*hvX1$"s {.!i/@5J09xM'C59) "PvD5t[o #+ ޿)>=Bqn^tSqYӝ߄9 Xʢ T.{:)& Kq x/=D\3l3QFZ[ lV{; KZʷa5:tC؝r[-ϋAO*hp( ̹>>8GyR)+Y&'3_[@M4^+oCm^ @xE{zօ˴ȱwEL;TX.he=4cE{>@O+d>̞"a$ʴt>;op08r U0["auyrav*ZIxYw?أDMA e* #pZh>q-1bI)c30'"J1g R,U\>eUxSf'HbTeQR>0Xq[QEJt2w<Hz8Shi.o|AcRqMZ`/O3H <~ $JF3?Aң҄ºy4{q&jZ8$D=Ì4J̒KHx(v "r|j%:b)c2Sgh(w.  L6+yqr-MsS{pF5.1YYE|$(K݊Űou6^m+ZmΑ'c F`?Jt=HۀI*ó{|hGvˣe% d`ɨV'RHJepX?* dlS)ݣp\)6m&P<@f#O-jyR޷ v1T8~+ABEڞ- A'VۈBGWjLʌ +ڵ*zNkJ6[ޟFp-Pbb&\a,Ԣ֐֟r]W=jyOBMJE1{mǒa䏆]rAh`Za{UJPw_WA DuszM %8YFNAH>q9%D<{+-NZ,DWOVʰ7U S%rC"/^Mea Nkkw٥ lc8>jnYAQ4c`"_h[ts <֨^ elΉmq)Р7 Gc"6؋ye 0D?NG74~#\Nj&y&o⫉d'S|{UE[eEŵ Pxp\dYJ&T%\ G? :߲~HLܢ`'C]QVJ'ȓ%T9TTa^ suprbi|_84pl߿CKK gqd 1H<*3rSm8a"wAzf8vӯB.jQDa#˱`Q$[Eo4Y+lTS1G,&zUwWU9&fk(  {Zq@{ "]sџc=,t23ͭ`t:'}Y!$)eJQ2Tye?b)0#s"c2+`[y| g &txBh?sxz"ܣg;te+il*Jnc3Pk̨*?p\^pgfA(j.B#l {1Wc)'N&YF6Hs _o q 8&MIJTKI^-l1ս$J{~'ǾHCw2{Ru*C`/"׼?v1e4 Et쮶P_'ߐw>f|sho.xM=A#hk^-9jQ9<ˤѝH:.Uh!MrV'/r"Ͻ&h5D!!_Qhۭﳘ8lhfmeYXwLe~-jE}Q ~[C1n;65**Lx)!ŭ>V*%B0ߟMB } 8%+# X tnAZ6?I 'EC/TCCCRo7Nznvg\dsXP}]lq#%#7ZB BihEׯI {3=N5 D_Ɔ(r_[؉;tuPI,s zhNEԶ/IP .NJm?9T1r-z j8sK4#0 zб8 {!!ëVɜ r_qBe^Zd]l\} ĢKp&r5N6}e4sq]-xx3uyZ3s2c8-z딱n#Ǯc='?'R>2c4,t %#cDFmsq!ɂ:Jq_ nguIxH[uξ07H)@P1 >g%"cjhڅ#z!Q5vΈ)((p"dP;IKT~mE) xErʿ#+ L]ug7e>xV5ly7LGfwX;u"A{a2.W(9YZbY4Gz/RLfk:7zTzdSj6WZZo,]i}gqgl;V`z%pQA4o4 2iH[O lGH5U%mgG:vYb BωIZ'AX4y61z`eeqTU\v[CD/̥+61'F(^ï`$YOx"jpr8X_HDpFjW(ezYE/m=)FŦ>Dw"$Z}v:zLp L2DZQ/'!n2Hda2Ӈ@775DxRa\ 5ZY=6n* )n'-jb^R/21讌u#**#;`e"teEgo\LeWڒlR!yFjj톒RsMzk^%b.ƧHJ^w,ɥ֞g`R0Ϗ51Kii:EPp\-VTW%J?fEtx:}]k=aHQg'*4|_ڃ_0܁!KNk@IW$Oժ_ Y -ohXɌwu4"|2_EWaŇ: !֭޾Y?!ӄ`xL^oH0+,!g{3c8"?ng?uw['L)IEVzX< /2_1 9uꙫ( 4`|to 2,PiQd:>".nBZ@0?Z۵:|_nb0m*646`F-&xK޺-e`@mwDNy Thk`lmq'/gH&zyA1c@GtST չr+kOw &qr鎃ML9 dȏ"2  ҤTXkzO _ѿ5asӨ|O.UE:Yt\תs+qG*MS$hB#R>{ĥӌ%^É dci%fe{AT:Vlɼɔ+{]\S󻤨NSޝ;AMKʘ^uWh܉b^#BvLt?`4_/:8эS pMګb)iz~jQx,Tuy&f-KIT d쿚I;yfN8Pri%ɔhbΈO*u !Zy^t L37 ~ 5Gw$q0xɪPA|p(>;ƤY.)]I=nGjC:AcpqãgeNX称~#@+䕪jRHu۴;F!S? SL7*€L8ӭ@4w:8g0sq CWm  ؿ|GW-Hi3L[wEDf]؄Qk0F9}Oa@yS>e[չF>,[7g7pv,oAAQMr'N>E:IYe jF-/kRGԍ%(fĴSO~|l>va j|Mxf .%ćpcXNy-R t m@8W{c9AJa-r `zĪ_}9PIt>$Bz/[qO"6Ñeszlqui@ ~ 4;>OgûTTqѓ ]7bGeWizpA?u{!#wqNقzCCM,5M5O㽀$>TC=L@nz 4bm S9Vd-Iy>req=B W[!ڴks*:qC[8Vznz K.p\i#t}AL=>:IGK"[{ԤbfDX9~ӷ?}t*SX[ z }4 鎞Ĵ2!YM3UĹc>%?=*rI+MSRHIVxQ. }<ޛ[mlj՞LР:gP~. f,_,rkf8 6&$b!g%vˢ^ ׺N ;|IK0'N=]QPW|ww-YA蘊;PE&uqrkAzz-( c  tI-/}O0S/8wJ`Y{z abx0JCZ yke]DŽZf{Vb'e:agAGTrW$FO;ЀGYYslLʢΤ׷lI?FW8ڦ^0)!㌨>%cu {w•V5WebzKWgІTAcQP6OƎ/dc|!3D2fQ;8FD=o ؂[:|cT<m`|Vq7?%yBX髟ƀ@ۭo wLM_Q> >P$W-DMz;J`l`L)6җ.bz[\! gB!Y}yv0 ŝ`ٍ_IM2_A-f\m|о|P/-ԏ2 R¶Th};/6vgp5rК!fyr?aPDÜT29;G/HC~U-ܴP=})&NY3`;$ĎhLj}7Qnja<:>h2 Ky db[9D]= ;"Ap1EI = }0tv@Q5Edx1$ u*iX\}qzHxS=gy=wL`+ zІ*4oq̙V'%[Xo4,j} ԺFe7v__߬Z}DG-JCmE-0)T.pw;NnaoFR_l[ ߸1YxY C0[I9I5#K10gR!OUYX&1d ,#uje=]°߲,>VZ.Wn:>}SY*hOulw.;=j}h3 x7T苞H54O:~Wh~(67SU+y2A*P!'t!!f}[>\ӲD*M3 8 ϟD&R'X!N9\낿.e?뢝O(!^}veJ HדzmhRmz+9\s%w]\ƟC@L̨>rlŊyVfL@[qI2r)5A_z|@LXzAڃ́n 4\bR0oS[g1}s6n 6s?{(A5W,P2=YǨq^Ѐ̬aCOHm<ײ#v;:b֒{jki[*-ܥ Bfǣ*X,fbS v8<̀#^8?LC‡~pga W~tfN~@pf5:d˝kKOsyZkz(w#ˣVD mbOPk$$1{9U+ЮԷ'ءeҟ9H+NL=kVd!DXry>z߀a LYCӇhN .H‘F+*8Ќctl>>;hs(\'8ͨ֩3uTvJ [qS1zLXJt^6n<9Hꛁ>(l(ۜr,w FKk|c=,36hmfI~M}Ĝ!bu: -aaSd @VNd8ӧWݍfL tx9"ɰ::SkoK];{j݃(.A%Ht, ChfI \&S,ZŽH?]OtYB֥q\w }Luʧ.gKm!TF$LS1%F t4'CAޢ 9oBRhFguq9F9 ~,W2*W6턙S5˼4?)#Te0AK-t$sjCB8Q_0r̻jGxtW8ڴ/Sl.$;au$ZjhkzykQoveB 򔄱q%TC &[ Q@1X)Zj U+~&9!nVOMD)DJ>6|nCkڏ[w*fV ݱ6jY颷h@CsJٳlQݻ)͞O+)UW^]{Ov;g~u )eiU?:JR,Sm02p~RIU#&e 6YiP?pWu&E+./r!F=a}쩛\6ua hߴ( Yӎ0Dw~z(eG<эwL@Aw)<}=:c @Jڂva@b3@"xVnS OqKFr]a83s(lQJJB~J`<Ëׇ7M[<ܿ6(f p_AqE o$U/52LdDwN{Ut[1]$ –қ#_4*`hAN4]'Jp֯R\+G\9RdixVѬ-Ɇ?84TNK.pX}Ͼܧq6me|j_C ҷdױX奏F%h~ L`Ҁ}rfZNj܃ӱ%ƥG 4/&g`/a>﫢U;2kfiͺ;Bm ||69LzC! @x'Ѽ:&/%iiVOF$d:^̷ѽiPs=슺=\Ǒwoeb?tS\gȡyEZcEldTebcmBghٿiCIt7 IdzNȪlzpTJw.K k]L]iYn H}-ꞿth}G )e\tbIDFWCTTzCSj <ޕYK믁2EP|A8dJC};uZ+x{pUrP&e{\C AmT la$<շSjhˈНoXԄ,;sE 97BO&?9J݊'@1ؓ3Spc:#ڗvdoY2Rw0Ij̗7G;z"x?6^0\5 ;tv#4߃lhɢʾYg"uL Ȏ-91B=K;JB;,yFnA/[Gs +=T$q*z @z֋׌}-D:Dީ$Y޲N@b+^+Q).8 jϺP?gn仉:&Wl&m:xJ]1ߛq> E/.# #)N|$fͯi8i-sd2&rEʺ *Lbr1xWrPFoo-&XH=jSHC孆iaYm_"Y,E(fJZ lxx%bNV+H(mؿii+/o1ݢWG] bONe+(0MGSJ3 }WXev],"C\=} #JEw_^ߡa㌑8{9ُN-?c Do[f(y(bcCD-@Jb7 J8^!_m0IT.Y{}h `Ê+IIoQ" Οs^>S8˿JjėR5 p6gC??8~dCO٠TXqge>u^f( .=LȄF,ϚvӚJQDbcpW^? CmepnAQngzWQT6 [|P$z8cON}aNR)lAVwB 9U>*Xˏ[80+moFHNyșJ ~UAMU1lUor_$GӺ')K/"EE Wڵ&°.<1R݁ؑq @^1uL ~\[N\BʶE7`[xl&4*":(((E^JIM*5/c8棰՟` F~ǖUh,ֻ%@Υd4RZdK et%DN\0BrG|F\#!S ƦoL-Jd!}3bHNQsw>+%Wb?AKfG5ÑqRij` s;8/MKuKqQ3im}@ח>UA 93Mk|PYpMgN&=; wE~L8*<KY?3{S1$9J'wSlv3PM3*ĸR`23F(Aq9O6@Jt,6l\iE> 8j]/DlkU?o4Pѽr ?{T_,s;d.A׸fcG'z>8%Ѽes'bJ>b=F[_ݔN;@}v/uzSn kYF)rTQb5R6O[;l1 \<*iM:#쫂h"خ~ ΘxŪ;--X\R>O=5v1BSiϙ>cgӴrK( )7I(t֏(>V U|Dƿ[2+Xs%-C6uL-iA8[FzVkV$׉l%M.i}F)5(I6y O#5ݞ7`Æc'e#oA|dŸ+ u{iXHn gE'v6#{Rn\L_McFLz=BۣZPY}rM]rU@Q|<:[b}pam)q-QUq N?L$qԥmaA_v0[uj9SOpKw EaO~c3N5u$vQz\d^eBtN6LhP 3:D|37~o)d=V|-o6%hP(hѣ1Aoޒ(ryw>Ƶ4%mU>9d}KUPe0(.Kt+ToD h=iἛHԋm߬@ )D|R[+/F+U1J@Vka>J]gt]9mbsFj:>!߮ϒ$~JfAΣfCڰ\;i[~:?acTi F%"˃4uZ־"N! ,|F~")0DSySU&.~jC$H} Sd!xB&FcmG8pWC,cx~PGnqwDzOWٻ8xpbgvZ拡$9#56Ψ?ʨ̎fkB4LL9eB:7Ib! Q:Wj"ɋ^o#!!Ecޣa-8VȒ!;+JsIG/Q.UXT64*Q?r& 6\ƫJkЖ΋lRCׂ%6ܢFi2Fxfa%fy+"E KsrqwBZ!$W a Sh=pj8 #JҪe|eCdґ7!0Z< cUS !+}8]YfiYDZJ Xis? ΏS`<Ԑ4d!|W3l8B`MAC$qxhWإ!H<>⻸ I)6iv>p+Q8/"fGҠHb"FS]8!]~Ӷ qRZ j6OrJGJȰz!=ݲg=ˏϤ@UpjZ{4aG$[I uU)',B!-k.CA)7mLM dN'mY(w$YEم\>t!_c]C?aolR#QҘ  ~KH i,k.Bgt\YXcOԛm*$*55{lU\ =X$wK9vhx [2CAiPpW棥ۦĚ%dIZtc&7A" q׵Mmrnħ rf /Mo;wjZm eQh$b}e[$,,(ñIiH^А JkX_׊޳b'~7ϟހGYÑZ7{s_,sf$,>&mi툩lz L]9o9G 8@`N8 ^{X~V\@Zn4R fM*]2ѮBJ_ޗt:2Y~5V",wHC~J6)LY9gG*18U䏠?}ci ?@"s5wcbTva o4vf -= o[~6Y P1-K7B|u$QH:\7D?dXE!1taݶK2}+MչLN3` 5XŸhe_-5Ay-j&.0a``_'g2Ls"m..f+2WҨF]ʸ\TyZ|n-ETZװKq﵀:IO`oWFh/J]/lQ @hCZ@~*rQPF\W|x]\*Mʣ:) Ny \)dj2XNѳєVhnqTL(3aUm$0FNA(?%$x|eGNg+Ktj񪥋K) HOc:l&յ=O.q b%GcfTcE]XCo'_kImШQ&=qB 0?e|֜1 ?ϬYq+Z\PEb#RIo[V8=-WOa[oUB-&v, /3TZfEuX?JiڒCrT~@#P);< [C~g&kanKX'OQ.e~0^LgQ2q OQ+Z7|'tH@쾻\4]3I HHUЪ 9l`:gS%ڧ*bgug42JAi Fyc䞆IY oht3ըz}v) D1nҹM'ܣJpFKor[w9+R!㰊3}@K}pD$_ \.yV.BZ44m}OE{ŰTotb{%K1>I }1 < *k%SU/$ZB=VVf+\A~_"4\@+$v87[ײַF_Nw 8NtLPGx9(*JZԎ{=FT ϐV'6$J߀?Q@WIa)$X(&`? ͏X%V~)zٟ> YR C"v?BP 7xټa`?q+ }rUM!A;ÍSZQPi@R66ݽh 1qԔM6-;%3L6:#hG=o Bm]~,U|lx0MM)~|N-GLWWR{WS[jØëUZ3#ksMOM [Ή J6Kb"Cg0K"%NIB^USPI1Oj ]12pVYl:_:ޘq02,FX,%/0he(spp#XjE&ЮG&s:g0z"4pfSc>/R"o1& 鏯0^;e9䬡A:/qn[1AZ! VqlO ڢnjw HwBa"h( za. of$(J;r~ :(ZW;r}spRҁb|=kZ)fM6SF٭hΟO3 Nji, X鶶&eR+nHEQDɆU 5 9b 6`C=~ޥV].#(yB,rGUvsWG7kv"8[JM>tÖEgmvyݟH=kɤ8™1sT XR@,I| 2#]iZ(I~ͥswXrOe8!sNf !ϨWó) E0 m^1(d3nZI2Q =؏Sf|dK P_պQH+'7+i-}.V Z}O4EEoY?YG/-ĕj8IXak(ʪ<]+$;xIJ"kr:ΎI[s@]ڐ ͽxŠJ ןX) P`VPUk@gZY2e5'eq$U*L"w Dz EQ71̛BA+HCE,#Z;Klmٺ$ZpAru7p LݥJ*`;&^%b߫ wZ q%"ҶC`"2)w͞Aég,Gšĕi_g:աKN0rҨHźV IǤ ǹ #coPx.KXEJ*Z}/zQZ MS ͿJs8iR:3ƚq9dsj7ɮC!_!*tze` hnIF!wl{?;D7؟FyKYj]sz==U{YZiroĉ,ti7v>?s0Y>6n3 ,fqy-ɠdD8*a3VYVtfpoJ:]ŔkkGS~ =eIEUv rex!F7C%&}ZNpb=7~GEo6Wg9_qV촋"i#6SCnNh=hV$Vqtƻ'$U $ Qlr ,( 9IS xe^k}QHt #'x@D!B /fկ[wb]I6DR;s;:p@=漵_̫tIWsTsM K7\J![[lkfN@ \YAūQ&$SQ{N~n NkqS7v_% o?Ro.L AkX%y+bq`)m*1$Bs:0Z(q#TJK0? fOMב":E9x^}tx+VLIn@,7I}(gBXKL2Đ.i?pݛӹ` G"tPf<kP!KbQzxZNBWQRnEXwǻT̯/9!)5%b~{I˻oѶixw LrT9qiNAl#y},t<;޷7@"lY1MpA8 Ow>lCUBQ7@™}79 "ۘx &5YD[[Ui -=1~=->yF JJ ?R0EkOh n9pY6͜gU?M#6 {F1ɠ&ﳓ\#P~6|[ ?APD=s 'rdbbS`Kۃ'Q*{׎ViNJ[/M~KYD[9x~QuRX?yek3AIlt Awyv2׎I-n;)L9n*e'%sdg]Q?N #fso70A =OQu͌fڣU.c֯ DJs]O-/)W|K>`"XwGR5" bk:=~m!6u)-@W{8Mn֣0\x% CaS ֘I4ǿN\فV#OI(nп ੲSi0)̳8< %"Z!a<\mdW Vq45//gPx%@f !hj 6/xPW#c7FL>v B7£z*׸9t9k)rv&kI$q[H˯O& /w%b^. S& J&%#FͤLwmZ D4 qZBI:ý{/>j#۵Avw8ʑ (eЗՒ]9Δ:'uܥ<QĖX_Ji>3ؤ fw@Fk)f02-k`Vx34TΏűjR'[&kEܭqsm:殘 d?b@;/pӍT+M(pc{=߈ީ!V q4[y.D4@sؔ|U(D/S`D/N+f9Q!j}c~kE%\o 폪SUqRh-H_9 G4樥7e%оuХh\8%CWJs"VQ/hgY =$fY"QeL\%\kb+QSF/OYFȥ%<( ,87.'rdzC }d׸}HsRA3Z64]kz C@ޭ׶Wvq,[2M>%㹽= 7&9Mk`ՔȅΖ=W~K*M?/YMb9L|甭4mw n tPOf3ir1 {48/% &Az X-j/#yϖ༗Cč6[m^z!\蘵D!k# W]8Rb!s@-rrL}t"Ym?CXWa^=V|~w*}5+ĄsHOuz.QBp^B(P3tpJ- w֪̘&ϛ Y<Ϟ@fuIBi/AwnˆBu]!1W S1}_=?|sNQ45V3Q22HÕe&D"G˵_qKƯk淏Y3J.Z=i 6@yxbrԿY)ǝ!˱`ȯ\+BZ7)1HXK sY-H0z\y_ '}a<<ۆ/„.+m \d݄P ƕ^w✖u΢2B=-j%wYu/TB5iim@(F{#.2yS%?nÀ>d1j)C|$M 'jr8Y'qS<xf )01lXcB] I%:q( 96ڀʛAX}p̾y&ӯI%l;.^Hߑ$a{+@PxJSɋӁ썸Xu.GX{RjS-wtb>J( `'^vߺ;j"_ΩuzX]u+?8r&5ooZӏf"Z xU!N/Cp[,en