ploop-1.7.1-1> A AlpA?Qb Զڼ{3nh!l%AQ̯Y#`#f1M~81602332ae51f82ec57a1eea62bda358a494d7a1e<=3״g aVeņ?Qb ԶbKnE :O:5beKrz4jĽ|GE>8./?.d  `dtx          b  l    8@ p M (j8p 9 : F(G) H)( I)P X)\Y)`\)h ]) ^*b*'d*e*f*k*l*t* u+ v+@w+ x, y,@.z,{- Cploop1.7.11ploop toolsThis package contains tools to work with ploop devices and images.QbQrhel5-32-build@GNU GPLApplications/Systemlinuxi386 l6TtXT 큤QbPQbPQbQQbQQbQQbQQbQQbQQbQQbPa42395dbf879d283a2b4bb7165dd5ea0a6783235f7fe576645b280c50d518591a3edf1548793428f3426dbec94d7d4ede764f88589e683cff9158f1dea503c1d637a8e9e30c613e4a3c0c71e212f2bd8c0dca50381b9c8023ae5f82514ae12bb3006d19bcb22443f236e10ba85d63c8bed1cdf67a803549d0b0a2b793a1e9823c8864f48cc1882124d154b49fe3ee1ce572cbea10a325a44aa19d3a8039a4ae3rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootploop-1.7.1-1.src.rpmploop@@@@@@@@JJ@/bin/shlibc.so.6libc.so.6(GLIBC_2.0)libc.so.6(GLIBC_2.1)libc.so.6(GLIBC_2.2)libc.so.6(GLIBC_2.3.4)libc.so.6(GLIBC_2.4)libploop.soploop-librpmlib(CompressedFileNames)rpmlib(PayloadFilesHavePrefix)rtld(GNU_HASH)1.7.13.0.4-14.0-14.4.2Qk`Q<`P)PaH`O`OOOjO^`Kir Kolyshkin 1.7.1-1Kir Kolyshkin 1.7-1Kir Kolyshkin 1.6-1Kir Kolyshkin 1.5-1Kir Kolyshkin 1.4-1Kir Kolyshkin 1.3-1Kir Kolyshkin 1.2-1Kir Kolyshkin 1.1-1Kir Kolyshkin 1.0-1- Fixes: -- default image format is V1, unless specified explicitly -- tmpfiles.d file added for /var/lock/ploop (#2493) -- fixed creating strange directories under ./ (#2623)- New functionality: -- Large ploop image format support --- Now image size limit is 64 TB (was 2TB) --- Kernel >= 042stab078 is required -- Move ploop_grow* functions from tools to lib -- ploop grow: add DiskDescriptor.xml support -- ploop init, ploop_create_image(): add FS blocksize parameter - Improvements: -- make_fs(): create ext4fs with lazy_itable_init --- 3x smaller size and 3x faster creation time for 20GB image -- lib/ploop.h: "unexport" some internal functions -- Use /proc/self/mountinfo to get mount point by device -- More clear errors on parsing DiskDescriptor.xml -- print_output(): generalize print_lsof(), improve -- add_delta(): print more diags if EBUSY -- extend_delta_array(): print errors, return SYSEXIT_* -- run_prg(): print error if execvp() failed -- lib/balloon.c: print file name in an error message -- Introduce and use p_memalign(), fix errno handling -- Improvements and fixes to ploop_grow_*() to be used from library -- ploop_read_disk_descr(): set *di to NULL in case of error -- ploop_find_dev(): always assume ploop cookie is supported -- resize_fs(): try harder to find resize2fs binary -- Makefile.inc: ability to add CFLAGS - Fixes: -- lib/lock.c: create_file(): make sure dir exists (#2493, #2597) -- lib/fsutils.c: use ploop_execvp, drop absolute paths to binaries (#2595) -- ploop_log(): fix loglevel checking for file logging -- ploop_snapshot_switch_param: guids are const -- Recreate ploopXpY devices on ploop mount -- ploop_find_dev(): treat ENODEV as ENOENT on /sys reads -- use basename() to strip device from path -- ploop list: check for extra arguments -- ploop balloon: fix -f option processing -- Fixed lots of memory leaks, mostly on error paths -- open_delta(): simplify error handling -- Fixes for other issues big and small, reported by Coverity- New functionality: - * offline image shrink support - * tools: added snapshot-list functionality - * extend switch snapshot functionality: ploop_switch_snapshot_ex() - * ploop.spec: disable udev iosched config for ploop devices - * ploop list: added functionality to list mount points - Bug fixes: - * ploop_mount_fs(): use mount_data for first mount - * ploop_mount(): do not allow to use ploop on fs w/o extents - * ploop_{create,resize}_image(): fixed size checks and rounding - * ploop_create_image(): fix memory leak on error path - * ploop_get_info(): fix reported disk size after switching snapshot - * ploop_get_info(): fix when ploop device is not mounted - * ploop_{umount,resize}_image() and many others: do not return -1 - Improvements: - * much faster resize when using resize2fs with EXT4_IOC_RESIZE_FS support - * ploop discard: add cancellation support - * ploop_resize_image(): use real blocksize - * parse_xml(): deny processing DiskDescriptor.xml with several - * do not auto-generate dynload.h, instead check if it's uptodate - * create_image(): display error message for incorrect parameters case - * introduce/use SYSEXIT_DEV_NOT_MOUNTED and SYSEXIT_FSCK errors - * alloc_diskdescriptor(): log error if calloc() fails - * ploop.spec: require util-linux, e2fsprogs etc. - * ploop.spec: require libs of the proper arch- NOTE: this version requires vzkernel >= 2.6.32-042stab061.1 - New functionality: - * switch from old /dev/ploop/ symlink-based to new kernel cookie registration - * snapshots: switch to schema with constant top delta uuid - * use /proc/vz/ploop_minor based interface to get free minor - * if ploop is in maintenance state, try to complete it before doing snapshot/resize/merge/mount/umount/copy operation - * ploop mount: use in-kernel I/O module autodetection - * ploop balloon discard: new iterative compacting support - * ploop balloon discard: implement --stat - * ploop balloon discard: implement --automount - * ploop balloon discard: cancellation support - * ploop balloon: allow DiskDescriptor.xml argument - * ploop umount: implement -c component_name - * ploop list: implement - * /sbin/mount.ploop: do load ploop modules - Bug fixes: - * do not crash on empty DiskDescriptor.xml (libxml2 workaround) - * ploop convert: fix converting from expanded to raw - * ploop copy: fixed check for opened fd - * ploop copy: do not leak opened fds - * ploop create: fix gpt partition creation to be 4096 aligned - * ploop create, resize: round up size to be cluster aligned - * tools: few exit code fixes - * multiple usage, log and error message fixes - Improvements: - * ploop mount: check that mount point is a directory - * ploop umount: reduce retry count from 60 to 6 - * ploop umount: print lsof output in case of failed umount - * ploop create: for prealloc image, use ftruncate if fallocate not supported - * ploop create, resize: add check for correct block device size - * scripts: de-bash-ify - * assorted code refactoring, cleanups and nitpicks - Library API changes: - * add ploop_resolve_functions() to aid in dynamic library loading - * introduce optimized ploop_get_info_by_descr(), remove ploop_get_info() - * replace ploop_{alloc,read}_diskdescriptor() with ploop_read_disk_descr() - * remove ploop_getdevice()- ploop copy: fix data loss during migration (#2287) - ploop(8): fixed according to doc team review - ploop mount: tell about unsupported underlying fs - ploop-copy: improve usage - ploop-copy -s: added mode to copy to local file - tools/ploop.c: do not return -1 from main() - tools/ploop.c: fix/unify working with diskdescriptor- New functionality - ploop copy is working now - added pcopy's send_process() and receive_process() to lib - ploop mount: added -c option - ploop(8): added (still incomplete) - ploop balloon discard: add --to-free and --min-block - add Preallocated item to DiskDescriptor.xml - add add ploop_get_mnt_by_dev() to lib - Bug fixes - fixed offline snapshot creation - fixed race between register/unregister_ploop_dev() - create image: if fallocate is not supported, fail - ploop init, ploop mount: fix -b option value validation - ploop mount: fix usage, -d is optional - ploop info: fix usage, DiskDescriptor.xml is required - ploop.spec: make main package require -lib of the same version - fixed a few ioctl-related error messages - ploop_create_snapshot(): check for number of snapshots limit (127) - ploop.spec: do not own _libdir - fix SYSEXIT_PARAM value - tools/ploop.c: do not use ploop_err() - tools: fixed/improved usage for many commands - tools: do not forget to print newlines - make install: use /usr/lib64 LIBDIR for x86_64 - ploop_create_image(): free disk descriptor if fstype is NULL - create_balloon_file(): fix file name in error message - create_balloon_file(): umount and remove temp mnt point - create_balloon_file(): fix error message and return code - parse_xml(): add Blocksize validation - Improvements and cleanups - ploop lib: add visibility=hidden for internal functions - tools: use parse_size() and is_xml_name() where possible - remove merge_top_only param of get_delta_info() - ploop balloon: make it accept either -m or -d or both - ploop convert: change -t to -f - tools: unify parsing -f option - various code and headers cleanups - setver.sh: add -v, -b, -i- Added ploop_get_dev() function - Added ploop_set_component_name() function - Fix: do not clear in-use flag in ploop_fsck() - ploop-fsck: add -d flag to forcefully drop "in use" image flag - Fixed handling blocksize for raw images - Added user_xattr,acl to default mount options - ploop_mount(): added ability to pass MS_NOATIME flag - ploop-balloon: add discard command to compact ploop image - ploop_get_info(): return old info in case statfs() failed - expanded2preallocated(): if fallocate not supported, use ftruncate - ploop_resize_image(): Check is it possible to fallocate before inflating balloon file - Fixed merging all snapshots - Some fixes in ploop tool usage - Some log message fixes - Add function, source file and line number to error messages if DEBUG is set - Build system fixes/improvements- support for variable block size - default block size changed from 256K to 1M - ploop_set_log_file(): make NULL a valid argument - logger: introduce, use and expose PLOOP_LOG_NOCONSOLE - ploop_getdevice(): expose - ploop_store_diskdescriptor(): fix for a case when image is in root dir - Fixed expanded to preallocated conversion - Remove some unused functions and non-existent function prototypes - Introduce and use SYSEXIT_MKNOD error code - Changed image -> device mapping schema - Use strcasecmp for guid comparison - Made ploop_merge_param.guid field const - tools/ploop: remove -b option - tools/ploop: remove unused and untested replace & add commands - Log/error message fixes, improvements, and unification - Makefiles: fixes, improvements- initial versionrhel5-32-build 13709072179999999999HoHpHHdHHHHaHjH1.7.1-1mount.ploopumount.ploopploopploop-balloonploop-copyploop-fsckploop-growploop-mergeploop-statploop.8.gz/sbin//usr/sbin//usr/share/man/man8/-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tablescpiogzip9i386i386-redhat-linux-gnuBourne shell script text executableELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), strippeddirectory  &RRRRRRRRRR RRRRRR RRRRRR RRRRR RRRRR RRRRRR RRRRRRRR heȞ3֐&oisystem_u:object_r:sbin_t:s0system_u:object_r:sbin_t:s0system_u:object_r:sbin_t:s0system_u:object_r:sbin_t:s0system_u:object_r:sbin_t:s0system_u:object_r:sbin_t:s0system_u:object_r:sbin_t:s0system_u:object_r:sbin_t:s0system_u:object_r:sbin_t:s0system_u:object_r:man_t:s0?X}lW_ۗԷ8QH*H<_8|qѥIql$qn-۽ڡA*@Ӡ*PU|FZ Z%R@*JU6-_{on.C$Vz73o޼YwwxVݗó;AD/S 5@ޱge;hfhM7Z2,$3fEB5O&^hhMG 3"V-ә+eI2HFɸjA Cf!CQr0 ClPB(,GSXٱf3$ NO OMB3;@\ˎ*@GpGަ%J>h%f!^&;&Г$sIPXnʢS0 Ɣ(á5®'&YVٺlm=Gf7u,$jZ'?FE0p$#,(U*p1|AI"H8#-[Nʮn<bZ.И)%IY\lPE8,n0^%#/ i%P.6A2nYl!^K µ%/{4եuw,홄y:Oxc>u"H@bn# .QI+L#'lMlT6a|ѐx2\R%;/Ϊ7&+SGr=㏺v;O4m+"65"kɓ̩z+ܑ}hLitA\kaMAH,*RǭnwSs.?vw,Ec!Ylڇv{ ˦Tڰ߈O2Bd0l<m+vim+ݔC#*l[~^0]̀)~'a[ƀ Յ7X]O5_sq8p,Z8d!6/ 'n;\ pEHN|WHDvJvY U3ל_Y;\c@<}dqu\u\z]g$gmM=W|Bl^>{ƞvZU|:)fXyUeTKB%ᏐWTDQ=XF0Ȝ:,K enKl$l/Ż*R^lyTTݕZ$Bz7ThHת%\ 3׋20VJwy+e~/pbd=F;9쉝lh!LȢfqZbQSP+, 1E(d$ۜ4!gf&ϗ}YNא$I H*I ˁ^Zڥm&>i50 * hc4: 7 YX[/t>p[%HW_fc5`9 6]S$@;ˆGmO~31CY>uhR̯ýF_5Aяa 㫾ל KHd0Ba1`L˜ xտ}+kֿ־~͗߸z`kzvs‘O{?^ev)y7~qZq}rO^?ܳhZ05❈Ro"-pCwƧ&*ҮXGyA,Ϸ| *EF+?Q ҟEב?=F/#=i >gU tA#@|ޞo?ўww!A{3h+~CiO"^#^+noGz' ~G?tˋ ڷ oo#4ҟAJ%!ڿ PS( 'o U'>x_BP~ !{xO+9^#pTwoyqgezt6;ޯ™*GA''~hZ5@5{pr}G#^QBǙ~}{~OhnAXz?v,IQETW]E*48ԑ5j@8Zr 6gX8-4E/7N9U*XU ZF+*|:t<,[\ڶeWYhT0>YJfq=zJTה|Y|AXL & tSIOXe9RnV򙑁#2WU5UEj\؋+x~LpV pgA>H`U:-4W|✸<>_Y pT~  n`şBH (j xS[ Sż>vqZm+:DK4XM@HNV;mb\ $F;[$3&={sw9Iƅҩm<Ża$:zVB'2oؠ[FݼXlgtUhI-Ġ*>7}="Rb(WV)5叕VV[i*JȪys Lvl F`ԍ3UEJe*ηkW^o-yE2W1)!Ǖt*}9bccJimiJٖj)-*:a<3Iud3"fqVSsy{oiIZDOwVUeƇl(W(^nCT*Hʈ%_wT^r$((V7RRA [$\wYsWw$&f'{1f;rRHO*Jiz2rVyþ#F3;cJA]^~%Ff2z]X2~>FyYӕM :2/\;n_e<$ j I~BRAb?0AzH< Ai+H$O izoHrH:4Af~o- @NZ!iKꀜ(tAR! I7 y|yAy V KQ!P)NOCR C}47$5ِөAg șCR튒I:2_HjBΡ 頳r%wy r>Ґh@j8\(k Zy@R- i>2є=XH$Eĝ"R1(d ֣= xb Hh12ILnb8^E#Dp12L;#|j8%12O-` K#ٌb͌YsTaL X3Fz,B̟12Y<#Eg/1p#E ga/:?cTbQ 3FE! "b̟1*Eę14g<8f<%nn`9!ƨ01xcTQ+Z'pc&Z( 0F%U":2b  cT b+?cT1ƨd g ̟1*[EgJ-̟1*^?cT`.+f"+0?c"cq 0V .C s\y`#gGchYs ה;#+霬?1F:]Z},Swb0=-3h<=*8Ln,<~ST^DvJ-F[ [ #Au<#׻ݤWp^r$7g{+v"[8O,-5xRX$rS~>#1K(;R1oE0Ur{M#[Q㨩_8TwM/Kό~siTU{|//YFߒ+Gfӯn3Y6&>ZEv͠1yc_nXWdidq|"'bDWbh .uOtD Krg+[[}>Oą>Ujdȣ5{tV7Pi\Ʀ -AkZyC֐'@Y\7pF]ρd(❇ Zs>8y>\kG1!Rc- ):!I zRbd$ .xf2il,A1\k6+^Fy^`;2s]LyA %'Ҿ^ /iۇA{c!dyHfGVBel(}q}GkFη9F3C8s.s.i{ﮅw"9|1wD^!cׯ9''cTj4٢HӶ(VՑQX,oom=ީ02?A.k@wrSbcdmtkکs)a[} .Gsq:/Kԗߚo/?q}A&v-rw >@N-9W9ef]9dcY-$A.O$j$"ȧ(b$m):'#BLz"r9oFAFJQbɬ f9#swW'&rF_;L/%=_e t?)D/d3 ?2X$67_Y*lKNlL|^\keMK؈9K >$l|PӪE2dyWs a:ck+,d.C/IwG7@䟖폗?0IMor-DBmlerU7hrC~8^j5|Rk!K%yѮj]g 8]߶uEWԽ,!#|Y~yLtt`8Oy=:=B rv8>TځN1'8_whkD<]P6i'J>-6sxD? -z1b:O=}Zk<,b%,'һ )ξ\ 9Bk[odtL J8>P},鄭 N&#M#fC-e̮yxԂ7jiIepE+ܛ=}h3>O(W$j{yF 9+5V~4v90gdqXk;Qe"]ؿ u+0.0H k̿)+] !ݪA8vkGGUolfTh}j/ie4z%%诎B} ـM!ȶ&j(LJq>8~ɐ\ 0? B_'3C]2iFyG](n[=7m"|]]qL6 _nC\XG@̋O"[ .aB$`">zHC>' =Ïe^[l N<{sg>I뛌g4J4Hv'5jBubGbFRʴY~:ab< p {V4HgRD| -Cit)N@g=uO|*=`-]JTtO?ł'_CUމAO>@'7:׿zQJrQ>T+}ɣߔGvG4?#-!/g;1G:N-7pC4rI 1 }S*' ԧzŪR Nǿ ;=T\)e pǞ,`?g׷uy:/ w^<#g&KǙ ᄃI穈Q:f.L:$ (:C0Ebz.0ZYM5@IF;w!`zFϏ8/l$2y;'r'VtDBTvð.zY,xBOwq 0A.Ē4"OY>x5tG⃇ܜ(#qq>uRןR:V}Jv`d6pO)͚lD_*J~04'~afW<@ g[z& * lellʓCn4:#EjHl0G؀N"bYWQBdIx{[O6ny-q:%.'D>sˣGbi5V?q6Sa~[_O+&HŇЭXڟ/osBW1X;_" P﹀7pUAD{7/UIJ j}p%hG4Ypƣp^S'-{Mk} C ɲAf9,Nwƈڭ1!)>>M6ǑrgP֐]1pCFcF̱-) 5972 LabJ[ÃlP2C ?XՅ!w|6X Yӱ+uFwJʆĢk>z݊t~V"x|=MhUY-**2t' 7 k'R}F5~F/B'N]=#V ѠX",az gt{i5H۬,ZL@UQŻo'޲a/u彲d٠. hןw;^o"hzzl(^+=69̛ަ,ޤ%>wbM DCO|QiO\yT_#zwœM ȡ5gDp#  \ZF6,Ҕ^9<4r ȾwЎl-*a7??zbyZYmaHBP{/BBIg{R3 v2LlgF{}R:i>k|J  &jPg>'֐)cǐDP_ȝ&i948yi{S"9ÇoRI?2U[Xcnu6dH=$-d;b FB£Zn\Y%{H°/zBgy6X3zpCq;vq#iQ1N9F&Atk-8H4i| BdC؇2zyyF,?ᨔD_W\>K&p5P,?ի_ Lʳَ |5"˭TS^e7q7a9>+p\!>lexG E,״.M皼JSuUJquuhf lOVgwWycOe'մ]*LYfofx\B e-bmWV]r@ն̋8.-ǟ0-Cydf7vDJrKLyEWpf~#Ą L;*Ea'P_i0Ŗi'V(~VůiUT֏%[u(7j")/_$e5_LVю8 ._dmn8qc }`_%~OĽZĭ- ZSp32DW\x‡<mX()kx̙(Y\+Ⱦ XsA ą_LRCރm^:4zO!~fgu:CԘe\7-41 v͒;1&P$PA tN>L>B颴)Ugf"tL .< dx/\Vqo6[2)$7"}-%ֹEZB^u8xX<95^=n87ti8kad }[ ^4VT'Hac!bɓi= \f`Vi!j]ԉ>S㞌L릱]H5yY@c]QCJ,^ JI# @ׅ:"VTe$5NFa3c:c:c:c:] pTM، RdpP ;Eڄa&iPd@ib(s ! cK*3hIa("y=wˀ3;9ܻgtPk/_tDqg $I:GhKKu2$r B[MOy A3<}U 5ԯ5Jmzq)Q( #c?>@NvY2@Ń|t]$ƭ#lÈ*/Lb( ehF2Yfeߗ7 dN0S3gfkҴb*XaVZ, j}oC?xOSXo^qGʫU Rm+em#PX@;I ߆+$}Z/y\3og`kMiTѾ,7 χ:tCoz`_$D#?_R/ܷx n,,!Il)xm"CHN'9ߴ\IW.! LFқI Nm:A:]5t.)eﶬդK- cYakY=YPOzanl! l͒-k'O,s;IK:|H ]Bz">E:HzΧT\x]GYR$ك_ڸI Lxq$:J< [Xvg`pbxT%9J<=%a(ˍO8zgg.sO^O[yl.fj'k ϡ'g5fZgR<հ|0ulgl.bѺA7|fR}j,ᱸtcx"Y7^bg#bǝKY}ܱ=tx~gOwiuTen8 XǜX`ZKO*i(x.go.g֠Ku/rxJ;0xu7MX7)>[;ETn7wawO_ NيL P%E{ ŷvn n|oj<lR1``g/ۗMyBg0\l [70:mnnชb\>*BTR i}8ZAKi>A q-dI6\b$M$[IHt&#'L &K YLd+IA$}$I|$HIH$i"JFr4Iɠ|l$$+IH|k0H`~E$xT=E/DUxG6^|1@lS1~ֻU 6W!_֍u |=E|X|l?bٽEvɺNǨƍ{ciurx'ot21Bl;5QV)v?uȣYa>fV"Wab`B;M*-af@7-SuOvv;pTϳyovvx̼&}E*c.Om̧͗vK,>|W^?&ډhDUc?\Z)`78yՒ(= ?W-ns_CVk?>Z?^5!Sn7{b|H!>,"~&s].ZBqe6ZCmw Χ\ L{RdF _\,eJrv}*Ηe/ n=qN8Y6UeEXr ogW$N8_rzu/&’kqGW/9({<?-WpHo\kmάO^9>lN͙YM U6p/Pڴ9Rq-WӯelάʈVٜYN͑5m^R *7q# tM6Gֵ6?#+V,+ `I{=$5r8q>*~aq0EE Mo.u2"Eh<S(>+(p=EsdB>堕#@=c:}ʹzZ9WRo+JLΕ+09GR<44&JJ29Ws% 59WRɹRLΕ4\I&JJ79Ws%39Wxs%M49Ws%M79W s%29W}&Jz\IsLΕkr$ɹMΕTbr$ 4 7 nS:*B*7ZJB@h9-r%Un U*7ZZB@hy=r'Tn QC*7zJB@9=r'Un U*7zZB@y#@HP0"ln vߥ\=㞢h/R/$m/4dҌ0 6#x_e%H$b$}A\,]!}n)Nh[žq߅S^{bg9폼(WŰq'ea:}F W+gy=H}R780.!2k?y?FY/=mTvHD`䑼W7x^;Xq?Wd?wx[DF'C%= Í)$aR?wPG'ߠ(;+ \#X00Gc^@@dPe$Fy+w apBt3{2t-g7vQXKC _[lxq"ˌxwZWNԼ({ROE qބ'S(%uqC5=HtaaV._!FX{΁& exMi'w]p{%S$1pd8+ b4(X8ǿN搉 Z3o;lQ_CxwZ3. Ggh|(KZ.9.:^ vK !5TxC?g~7t+sy z3ܩ rDaFC\ ]cY8A4#as;Zzx'2Eя-sZulQ^kkzC,!ziTNod Ρs6CfEtd Ԣzj;bm/~Y;u,{1h6ELII:T)kJ!)y߈q*{zloh?28I^Ge:ﲫ]6B?=lbc(htcܝ_h[Uo"K:TA2ZU5Au`iЇ 5"{ͧ=LDؓ З'4]l sonN!塇ޜs9;ޛ~՛#~oVGuzbLR<]|>A/^TS*?<GtuiU\,L,}:̾Oah[znķ˕- Y~;ahoӏ=.=4|+lzV h6O%ZzMO8yDl^&NgQٗiF^wYsXz.-ctM6}LRqQ6߬crΛM"FIZ9asq *_j|- |Oipq6 X /N\O8%yfU+Sn>-:ܼs0 pί6+_xSS:)l9 =sNqy)~8޲S+[eSXS|܂SdY)~ӈCő-s-9WmN{\eEy2Rn Z\f,Fr 8&yVOS1oSgùl0$Ȧ$1ʟ%9y:2?ןAR~\:fP-U|f̴ɢM#-g,DX.m 1o"|2%XDF[%RmXDL*P$N2?qimAJ^w>u[rj4lT,1L65{;apl$Lv!1c<)ġD+LP6&O3uif}-+ =K27s'0lZcdbA3_3I3$pPplpRi9@!BŵެbImXΥ/@& q9d|1Pt.I#9"&ra$=KL/K#mj G._xgh0;ѺP󱈹s[叺8/9;o^B2ghDzLfEPi)Ua4+d^Qrr6[e^/W611>j";mrX'w{֚cC"I N%i#WƮTj\&U8(,(J![U~9H-ᶕ162=>Fmt80#h(SNJ ˣEEN`poF߆ "0D,y\i0g|q auo8,ZkQ5 `܅ s|$Z ׷ ZƘ:uF}` /䃱vm<1{S[pm.X۵} u}5m_O*7OHTAVLAaw"F:EhHڪ iJ܁ 0H:tP 1$HBBd}oSA!Eͬ3;gw2MQ)UoRB R)FJ2AR(E*7BO))ՔZJ#%q\=|$gsxʗ]ݮcĚ3һ:,K\$=ڭc(&1a̶fXN0g`z^Oغa~MF ӻ:Quޮ;P9t.FbToL,vuؐx0,/vu0/QAս-& 'KpuoW܎ 9ڢHڻS!6u5GwԕQ!"Mu[ʢ 뒘ޣ;>mOze{M{KHTQ1h "Fff06tJZ-zj9sEDYA6EE"((\ Ls^@7ǽs939-wLTC7`K} {&8twO.{SP[xz!Olz qyJP|`LNoU|;Nt؎`zdB8}F#.pR|GZ 8L/=.[A44qL %gNAUV{؃)%3w'Q:g 6пN3 ~ijWj]dخizq,i 5m9) i՚KvM3s|6д2-M[ii^NMSi{gzhޛޚ6RtjvMX6<Դ5mti>86,iccҴ-{)4m@qI"۶mؾ2 o 93Cx 1jldIxC,/g At4u547n:dg2QlH „4#\4x,{"#PkLFsM*y_*bs`E`k ˗ m9L@R-\,QNJ$ΙOضQEM&D}?}`P4\n}k\zp0Y 2%؞fEl| G)/&\lA> і,Ts#y0_luʻripHjٹ\2`q֯:gWsXt5Xy{\~&ݻ|v5qW/)NΪU:H:*NNWn12hU*]\1DN ]$Fm;6}\ub.S$x.X4WK$o5|&uTL皋<HFb4n&#d2] `$CW_KF4IhN&bJbҘC0W-Fn1>~\2v/Y8Pb.p\]V\fb.4&# Ӓle{u-Rj? C[[ 7:͌Xc*AkA[ *=,E/ 6xЃЊ+lbkRv7m" z I7ΒM(zntfL'ϳ߷ 99FBp! G<7BKrbQ_17[|FCg9b<(W#߁ Q3|Gxw1 |#!>Zw=Omcu-TZ Xh/_'@T=Tz X/p\g$pF s[g8 = #0!gx<Վ$6<*h|gfCT2 W M=S]xbZ`d(l5i:Őc;{])l7kLfzX:9л58[RHɜ%T%@udQ;/Ov e\HUW6r?sV\C.?_Q\g\[Η\.=ry?rRj\÷O.{/sO\][.?rzry|?k?GCaL,'ˣWF\2qTQI8B5X1zܴZԘ,"_x, o)hEĝ.6#NLa^2,KRbqԔdq*cI#bM0ǣiٝ!dhp8b?`w*cqJ6Ryzb_LW| M;[_uXߞd*}%s rkqOHTAwBw1(Fe[Hu6 3puo$R%BD-tp%-FGǚ;i8I<4iKS4>ИoZCJF=ܐ#,=9{Н{&~ZΟB&}s^\bіYƲH/Θ#/8th0\F7z^z8SctuSuuh ^^3ҵ]TWĥ1{bNG9_&ݿD_כZ~oe}onm@ίjE57t%z%6Qߡs{:vI\wsO~*s)צW(gvk|?Ԟ DşQ7$r?cJ!~[G;7bܿkmg>% Bky|IA,IǏ? [,!)cRogݖ7.?` 0]'"H5ZsRWmS}=fg%5m,s?9(Z@<6pV1ۺ|Yx JN~bx5n}0¸L{`j>F{`GaK${\${Մq+q<y4|(/ucpGP&2Ad>|5j*X#G2AK|-"GB2AK@@KP9 ϱ2PIgyY/@GOpn`ranp -g]Y-g'*~i8qhI ~oĘc {2b%qҎGB;A#k7WB,GUyHoP"a~#x؈ RН c\==_o /?2B-]s0Vϟ0`x 1b[* ĻD=؎-UӶqZvҼܹlM:E?leQajs q5L01s @Q,6F:ẌB7hf!s.gI#KEX’[ FumhA۽w~?OSҘ7'mmq"E%gXI[?zcZ`>bOE"鵤bM|X.Bjə?ZԪ9S4a̙&9SBؠ3L!gQV9)YLC3Edg:gęFL8 gL=qFX'?gz?` >ř`;ܳBeU&۝vɍ0L'+耿Ք5ݸLkpN15Og(a98ʫ7kb1[jrq eg17k!ǀ+\v`̫\lcQ8F10Pek(<9nw7pedۀ~ke3ۀ!zm@,\ fЯ4yаDl+$*42 p.dft6 QqܚSm<1ۀSymimm(B6`>aamu{M6`͙/f0iO/М/fϔfz#]ڔm=Ìo7z_LVʜ|β*Hɺ}U;Iu.۰(Csc;dw /r#9jo,( [>z>rqN/<-w7cl>&vF4~4] [ӐW;Lhw_*bhxOq{=-]7␬ߥ}Fz⳥z u}M).ޚT.C-ă+d@hF;{h>` kJJP|P*Y^LFwl>O#oǣ1W9~ 1QJztגw`z-Yذ^K:f5גaŽN";*BvX&ĉFvTcŽ8v4paَݜG.seUNvm<N'/}JŗPOm拓ߓU/xv*Q]<&=T9 1kֹ'/B{A7ޭE~SEn/Վ#(_8(+?>I5g}uxjO/lПI?W#~\z='|]~|OlIkDֆGuuJ%[CmV7x =VFuuS=lIY5Z["x5zXU>y kR>5s[TحɋhԷMSN-U/grgpB|AOa%1Yd9NbVy*i*$Y'1Y]"1$fuĬu*-MbVU:_Ø?ǘ?`|mZ02Lk5!iдڴڴڴmZ6-DD"M ҦHiBĴi!rڴAmZ6-DT"M ֦HkBĵi!ڴMLANj F#IQ5HH ~A fif]a9jH0$\4c4ĭX@NVʇ&ݝݙ7o_iwc&Im?$!Z·I9ٰ2o:ưeb^X!X!'1/Ss6)Cٲ{85X1ĝgk@0oKm GxحÂ+KOզ{h1e#%t7 JǴC`B"ĈT˚Vs¢*Es(8%n2cg|bi+D{hA5uXDlRt _eұbblGABm?A/mC}zX0EÂfsDsXT%-K]Hq69b6:ƓNN'kl v`ѵJ2*',! *,)u+5 d.YٱAGSķg1@EcJHà?HW9`9)AIP(7j`?Z׏|F^ oR͡D2)ri[*6)zyQ[Z>-YFB1& ~5[9:nťfGF^Iv<{K~F }W:qL h,A`ݾHq'1ih/BVJQ7N FPk,J]JwFUFghVp,eM"UYZXP U(*/+qYezEg J,lTVaJVyEYfo"*fUY |o'U‰VIkb-`Jxܰ&*2'b`/,'Z_"dv)V + Ҋ`EbRĢĤT%b%řy\ \ n"H|.HSUȠh2б5v_iPeSo>#>.@T q2Й@CLCtC@džHnm,`y2$y6ffȺnP6e\,ht~<*l}1O yL>l<9y=yL8<@+dS:Ɍce9d<<<D'qLg'/\swnw.5Of'η}ʻkέI5%]dHrk XNẘt<iyrw{pڮ9Ow·a=5)߹ÓOp+;QP['.8)i304 h{ O ;(;kJLwY!gY|zN0{ͫp]y[|1*ŋ{޴fݼ::ͤUv\0A_.P. .Bshـp}2BIQxmmS[^lf]qy?8[ )f YjKom\le0Ym C`͢5W9`Bص|6JW2j.˦|`&0@lų{e#_J`[0V*95{8Iyg;.uz+ñXto,$*wBrřqr ɵQuztaX6)h}vM׮Rk-#8{+CGGM+_t0]gGY=s|b㍙ڐ+Fk#maAR3 /5z8% GZ7 l͚: 5"1b Eϣ-k?lb?8{@T}TIVS)O~u4P'i8?#=GD.Em Tq'o:lO0;b4"NAfDĵI{47ε\5RubeӟtԎJS{ᶹ'ehJ;ڎnʔi?m׬1a8qcc%HFP 0Ͳmrre-(YV,9\Ѕ8gDVe_ ޢTxd{9F NSz"c~?-%x(%K#Cnii ΋a U%wXd)`^zeK&-iLk_V.$5Kabȇ:_گO\y{M !`:F=Ӛ5d AM=W0Rs!fءY{_xҗ@DuH4ñl* %+F LQďx=+EgF'ht/RKsv>5a#3Y0@w^j˭+ӻ2g|}xDd(âZ:,8ll2۶wMw\6 V4jkHXTɘ$蠂MQy1#X9¼ ɬ2 `}ty!Mv >h>E]ݟ Uɽ"Q-.KG>νG)H-oWP+1sn>+zWb /C>c&64Yf!wUV.kMŨ3\=޵̫#na)e/{H3k3ܣTT>!!Vv}yfتsM ^. "Rp_[^4Mh#,#>ظS(Sa]z 9"(56JLrGtfR묉Vre7grҁ Ph.Kq˔tZ phمCɲcK%.%55g["ճAf-δ+,a!)jI⣋߼/*@Jbhzf  Z.͍ (+u9Y9M1?Zh4kDl\<Ljj]muQB 8~.=_ALjLS!­ŧ*Yx qG_MAd~QI,Y >)1QӇo'_@˶ 1jKS%t&!배.6ڠEJ @IO+s@D1 yp\pεB״BdbT}D܃x5_A 3bc ;{Nk2vA4;o{-k6\XpHorQe0+.!z*;I\"k| Pl m^;h̢=僜QnIDcv(K#b5qj|$FW9e3A{ ?YZU_ 1ZΪ'/1*ޘPrF-=$20-YhaoPwm=wc"t+vXho1HA(CG.^U)]ifB:phΕ/dtzW ' aW)+IfW(-z\9̑;6 UJ]uc, ȥߧZd;('dEdFH릥rLoF?E]4C3J*3򩊹W z".}0T]43 Z]6P#j9_%t))Ԝ}bl8Lؼbd3Ȣ!x *XnPG=*!ƃ0" O&Ԋ{~HxVx.p{[a*5lxuvyYX45^'B2/~u:fyKo+ֳ=tHv<}_TmRF4 i3$bhd5d=WU#nI#uP( ?.Igwg%Xk'k|~/5Zh RVGLh"y3$dupN:M.4TS_f$BE5Ο?3i [ +J ~r1"0/K%Q8Qaz6e&7q[SYJUՇz^AIϷՊ*նZo7o*4ۏ)d':q\g8`'AQ6u@,Um"L>`;h ~ ּ_IRk.ܥcF؍6^0koo:Je7]  8wWꡙSr>ٻԿc-Ƹ{噃&oR)2Nb˻B8\߹l8DŽwRwR[1tRkoWnU//,9xnǓ6+=(٤te 77