ploop-7.0.257-1.vz7>  j|`y  }Dͭ*8V/4 \v9,frA;}D&vk4jXJ]f~_@A-ϦgSѲdL;`1W%n }_Cba @F1h4 d6s§a\3v& ^6Mdcf7d552a9a1fc5aa1145f1cce8554e83baee7cdcX`y  }Dͭ*}FŢZ_PhSL$"H\*f;`O A{u6۶b[{Nfmt~cJ !XGZ;nMѐ,_Bz9UZ˄a0٤#-d'&]>9?d  "hl 0 P p  @ P0L( &8 09 :/GH\IXY\]$^ bncde!f$l&t@uv wxy42Cploop7.0.2571.vz7ploop toolsThis package contains tools to work with ploop devices and images.`ybuilder4.eng.sw.rubVirtuozzoVirtuozzoGPLv2Virtuozzo (http://www.virtuozzo.com/support/)Applications/Systemlinuxx86_64e^7N>8=->`FA큤A큤`y`y`y`y`y`y`y`y`y`y`y`y`y`y`y`yce719ee699aa8bc0719b89d6e6d4d3c6460aa4a4a82a9fa5e113ed9a131f5f8389d30139f0d5e221bd2e486e1854220b85fec36f70dd6344fd125c1e4f525c6593a9d0fc8daf27b15ba22b9a041e8d28310abb5370fad6b83aa028b78d9dc078b9f92d3af6d5e7f9fb47cd1c3e3808fd0f8951d1fa2a8cd5a28aa9cb1c1b394de8f517ca0eb06809ce5a1473fdaac4408a4a04d4179b46d6637fe18dc018d529c40d64a4db733d5955d48d0096d318350adb7a27d90b9752d9a9ea9f0b0c34a8ef6066dceaae3c2bc14dd4f3c70688c48c36fd8b6be1326cebdecf94854b39dc82e75ddf46b981cfc5b34a7d856458361e613ec4ec2025452b1d307502887e966de823dc26ef00fc6fe6c4b5f16762ec42effd3df8de1f5fe138b34c9bf96f4e2a4488266bf718f526b81a24557463c8d991dd4ab7c5bff048d0ac4f6f4b6e21c4744d5e6843c038098b195b887d9bfc51d71a782f6cedb7da02656ed035992556fd06f309919085ca1c830a94d565d75dac80790997999563beca6dd9c6a2bb8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643381a4f4fa7238394b13b88dc612f80d2825acdd2d6e0fb8d8709af89cb609dcarootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootploop-7.0.257-1.vz7.src.rpmconfig(ploop)ploopploop(x86-64)@@@@@@@@@@@@@   @ /bin/shconfig(ploop)libc.so.6()(64bit)libc.so.6(GLIBC_2.10)(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.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.6)(64bit)libc.so.6(GLIBC_2.7)(64bit)libjson-c.so.2()(64bit)libjson-c.so.2(libjson-c.so.2)(64bit)libploop.so.7()(64bit)ploop-librpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rtld(GNU_HASH)rpmlib(PayloadIsXz)7.0.257-1.vz77.0.257-1.vz73.0.4-14.6.0-14.0-15.2-14.11.3`y|@`g@`a@`T@`OL@`KW`J@`H`Gc@`@`<@`-@`-@`+`` @__ _G@_FN_)M_'@_{___^(@^@^@^ϧ^ϧ^^@^1^k@^k@^^@^t@^\@^Y^Y^V]^M#@^F^B@^AE^=Q@^;^:@^8 @^2@^1s^0"@^.^*@^)^(9@^&^]]f@]}@]@]m]@]0_@]-@]]]:\Q\@\\\@\@\@\\@\@\}\,@\\@\f\[@[@[k@[$@[9@[dC[`O@Z@Z@Z$Zz@Zo Ze@ZaZ:PZ8@Z8@Z2gZ1@Z/Z*~Z YYYYp@Y*@YY@YYW@YYn@Yn@Y@Y@YJY@YV@YaYaYoIYP@YP@Y7Y0XXۡXۡXg@XXXXO@XO@XO@XZX@Xv@XQ4@X=mXI@X`@X`@W@W 7.0.257Igor Sukhih 7.0.256Igor Sukhih 7.0.255Igor Sukhih 7.0.254Igor Sukhih 7.0.253Igor Sukhih 7.0.252Igor Sukhih 7.0.251Igor Sukhih 7.0.250Igor Sukhih 7.0.249Igor Sukhih 7.0.248Igor Sukhih 7.0.247Igor Sukhih 7.0.246Igor Sukhih 7.0.245Igor Sukhih 7.0.243Igor Sukhih 7.0.242Igor Sukhih 7.0.241Igor Sukhih 8.0.18Igor Sukhih 7.0.240Igor Sukhih 7.0.211Igor Sukhih 7.0.210Igor Sukhih 7.0.209Igor Sukhih 7.0.208Igor Sukhih 7.0.207Igor Sukhih 7.0.206Igor Sukhih 7.0.205Igor Sukhih 7.0.204Igor Sukhih 7.0.203Igor Sukhih 7.0.202Igor Sukhih 7.0.200Igor Sukhih 7.0.199Igor Sukhih 7.0.198Igor Sukhih 7.0.197Igor Sukhih 7.0.196Igor Sukhih 7.0.195Igor Sukhih 7.0.193Igor Sukhih 7.0.192Igor Sukhih 7.0.191Igor Sukhih 7.0.190Igor Sukhih 7.0.188Igor Sukhih 7.0.187Igor Sukhih 7.0.186Igor Sukhih 7.0.185Igor Sukhih 7.0.184Igor Sukhih 7.0.183Igor Sukhih 7.0.182Igor Sukhih 7.0.181Igor Sukhih 7.0.180Igor Sukhih 7.0.179Igor Sukhih 7.0.178Igor Sukhih 7.0.177Igor Sukhih 7.0.176Igor Sukhih 7.0.175Igor Sukhih 7.0.174Igor Sukhih 7.0.173Igor Sukhih 7.0.172Igor Sukhih 7.0.171Igor Sukhih 7.0.170Igor Sukhih 7.0.169Igor Sukhih 7.0.168Igor Sukhih 7.0.167Igor Sukhih 7.0.166Igor Sukhih 7.0.165Igor Sukhih 7.0.164Igor Sukhih 7.0.163Igor Sukhih 7.0.162Igor Sukhih 7.0.161Igor Sukhih 7.0.160Igor Sukhih 7.0.159Igor Sukhih 7.0.158Igor Sukhih 7.0.157Igor Sukhih 7.0.156Igor Sukhih 7.0.155Igor Sukhih 7.0.154Igor Sukhih 7.0.153Konstantin B. Bukharov 7.0.152Igor Sukhih 7.0.151Igor Sukhih 7.0.150Igor Sukhih 7.0.149Igor Sukhih 7.0.148Konstantin B. Bukharov 7.0.147Igor Sukhih 7.0.146Igor Sukhih 7.0.145Igor Sukhih 7.0.144Igor Sukhih 7.0.140Igor Sukhih 7.0.139Igor Sukhih 7.0.138Igor Sukhih 7.0.137Konstantin B. Bukharov 7.0.136Konstantin B. Bukharov 7.0.135Igor Sukhih 7.0.134Igor Sukhih 7.0.132Igor Sukhih 7.0.131Igor Sukhih 7.0.130Igor Sukhih 7.0.128Igor Sukhih 7.0.127Igor Sukhih 7.0.126Igor Sukhih 7.0.125Igor Sukhih 7.0.124Igor Sukhih 7.0.123Igor Sukhih 7.0.122Igor Sukhih 7.0.121Igor Sukhih 7.0.120Igor Sukhih 7.0.119Igor Sukhih 7.0.118Igor Sukhih 7.0.117Igor Sukhih 7.0.116Igor Sukhih 7.0.115Igor Sukhih 7.0.114Igor Sukhih 7.0.113Igor Sukhih 7.0.112Igor Sukhih 7.0.111Igor Sukhih 7.0.110Igor Sukhih 7.0.109Igor Sukhih 7.0.108Igor Sukhih 7.0.107Igor Sukhih 7.0.106Igor Sukhih 7.0.105Igor Sukhih 7.0.104Igor Sukhih 7.0.103Igor Sukhih 7.0.102Igor Sukhih 7.0.101Igor Sukhih 7.0.100Igor Sukhih 7.0.99Igor Sukhih 7.0.98Igor Sukhih 7.0.97Igor Sukhih 7.0.96Igor Sukhih 7.0.95Igor Sukhih 7.0.94Igor Sukhih 7.0.93Igor Sukhih 7.0.92Igor Sukhih 7.0.91Igor Sukhih 7.0.90Igor Sukhih 7.0.89Igor Sukhih 7.0.88Konstantin Volkov 7.0.87Konstantin Volkov 7.0.86Konstantin Volkov 7.0.85-2Igor Sukhih 7.0.85Igor Sukhih 7.0.84Igor Sukhih 7.0.83Konstantin Volkov 7.0.82-3Konstantin Volkov 7.0.82-2Igor Sukhih 7.0.82Igor Sukhih 7.0.81Igor Sukhih 7.0.80Igor Sukhih 7.0.79Konstantin Volkov - 7.0.78-2Igor Sukhih 7.0.78Igor Sukhih 7.0.77Igor Sukhih 7.0.76Igor Sukhih 7.0.75Igor Sukhih 7.0.74Igor Sukhih 7.0.73Igor Sukhih 7.0.72Igor Sukhih 7.0.71Igor Sukhih 7.0.69Igor Sukhih 7.0.68Igor Sukhih 7.0.67Igor Sukhih 7.0.66Igor Sukhih 7.0.65Igor Sukhih 7.0.64Igor Sukhih 7.0.63Igor Sukhih 7.0.62Igor Sukhih 7.0.61Igor Sukhih 7.0.60Igor Sukhih 7.0.59Igor Sukhih 7.0.58Igor Sukhih 7.0.57Igor Sukhih 7.0.56Igor Sukhih 7.0.55Igor Sukhih 7.0.54Igor Sukhih 7.0.53Igor Sukhih 7.0.52Igor Sukhih 7.0.51Igor Sukhih 7.0.50Igor Sukhih 7.0.49Igor Sukhih 7.0.48Igor Sukhih 7.0.47Igor Sukhih 7.0.46Igor Sukhih 7.0.45Igor Sukhih 7.0.44Igor Sukhih 7.0.43Igor Sukhih 7.0.42Igor Sukhih 7.0.41Igor Sukhih 7.0.40Igor Sukhih 7.0.39Igor Sukhih 7.0.38Igor Sukhih 7.0.37Igor Sukhih 7.0.36Igor Sukhih 7.0.35Igor Sukhih 7.0.34Igor Sukhih 7.0.33Igor Sukhih 7.0.32Igor Sukhih 7.0.31Dmitry Mishin 7.0.30Igor Sukhih 7.0.29Igor Sukhih 7.0.28Igor Sukhih 7.0.27Igor Sukhih 7.0.26Igor Sukhih 7.0.25Igor Sukhih 7.0.24Igor Sukhih 7.0.23Igor Sukhih 7.0.22Igor Sukhih 7.0.21Igor Sukhih 7.0.20Igor Sukhih 7.0.19Igor Sukhih 7.0.18Igor Sukhih 7.0.17Igor Sukhih 7.0.16Igor Sukhih 7.0.15Igor Sukhih 7.0.14Igor Sukhih 7.0.13Igor Sukhih 7.0.12Igor Sukhih 7.0.11Igor Sukhih 7.0.10Daniil Guzanov 7.0.9Daniil Guzanov 7.0.8Daniil Guzanov 7.0.7Daniil Guzanov 7.0.6Daniil Guzanov 7.0.5- Error in ioctl(EXT4_IOC_CLEAR_ES_CACHE): Inappropriate ioctl for device \#PSBM-127709- 'ploop defrag' should have parameter for threshold #PSBM-127354- The "ploop image has been successfully converted" always logged- ploop_get_dev_by_delta(): use flock(LOCK_UN) to release the lock #PSBM-127025 - Optimize compact operation in KAIO mode#PSBM-127086- ploop_discard_get_stat_by_dev(): provide native discard mode info \#PSBM-127086- ploop_discard(): do not perform defrag on vstorage in native discard mode \#PSBM-127083- Unable to mount snapshot #PSBM-126977- Ignore error on image format version autoconvert #PSBM-126944- Convert ploop image formatfrom V1 to V2 on mount #PSBM-125261 - ploop_change_fmt_version(): deny to convert to PLOOP_FMT_V1- fix spelling - ploop-check: zero CBT beyond end of the virtual image size #PSBM-125274 - ploop-check: dirty bitmap l1_table validation #PSBM-125270 - ploop-check: validate format extension #PSBM-125273 #PSBM-125269- ploop-balloon discard got stuck #PSBM-125728- call ploop-e4defrag for KAIO mode #PSBM-125857- ploop ext4 on kaio: Add defragger #PSBM-125608- ploop-ballon: Imposible to get current maintaince mode if no mountpoint \#PSBM-123560 - fix comment in 'include/ploop1_image.h' #PSBM-125268- ploop-ballon: Imposible to get current maintaince mode if no mountpoint \#PSBM-123560- ploop_check: autorepair image allignment if dirty #PSBM-124770 - de-duplicate duplicated clusters #PSBM-124411- Fix python module import errors #PSBM-123941 (Pavel Vokhmyanin ) - Revert "Update product name, PSBM-106039" - Let's leave OpenVZ, need to fix sources to accept product names with spaces (Denis Silakov ) - Update product name, PSBM-106039 (Denis Silakov )- Failed to resize encrypted ploop #PSBM-121602 - Revert "Update product name, PSBM-106039" - Let's leave OpenVZ, need to fix sources to accept product names with spaces (Denis Silakov ) - Update product name, PSBM-106039 (Denis Silakov )- Do not fail if no ploop.conf- Revert "ploop_copy_receiver(): call filefrag #PSBM-105933" - Provide a global switch for io_direct/io_kaio #PSBM-107256- Revert "ploop_copy_receiver(): validate image #PSBM-105933"- ploop_stop_device(): unfreeze ploop device - ploop-copy: Add compatibility with old protocol - ploop-copy: introduce handshake - ploop-copy: introduce md5 checksum check - ploop-copy: switch to queue chunk schema - cleanup: move private data from header- fill_hole(): print parameters before fail- ploop_copy_receiver(): validate image #PSBM-105933- ploop_copy_receiver(): call filefrag #PSBM-105933 - restore_hole(): process CHECK_REPAIR_SPARSE flag - ploop_copy_receiver(): flush all modified data #PSBM-105933 - fill_hole(): add debug logging- BLKRRPART /dev/ploop18626: Device or resource busy #PSBM-105751- tools/ploop-cbt.c: fix logging- tools/ploop: create CBT bitmap #PSBM-104586- STYLE: split create_snapshot() - creating CBT snapshot is racy #PSBM-104462- Introduce ploop_get_devname() - ploop_mount(): use of uninitialized variable- tools/ploop.c perform online resize fro unmounted image - tools/ploop allow ploop creation without partition - Change encrypted image layout #PSBM-104039 - dev_num2dev_start(): adopt to dm-crypt schema - ploop_balloon_change_size(): style change - sgdisk_resize_gpt()- Unable to create snapshot with same uuid #PSBM-103419 - check_snapshot_mount: return correct error message - Failed to delete temparary snapshot: snapshot is busy- check_snapshot_mount(): run lsof utility if snapshot is busy- validate_image_bat(): incorrect integer format in log message- sync_bat(): reread BAT after freeze- Offline merge can corrupt BAT #PSBM-102808 (#PSBM-101080) - build_hole_bitmap(): do not use header copy - ability to fix CT with broken BATa #PSBM-102741 - ploop_resize_image(): missed check- Get rid of Parallels word in source code #PSBM-102329- Check cached BAT is same as on-disk #PSBM-102488- ploop-copy: data corruption #PSBM-101845 - ploop_chek(): remove false error message - plooptool_info(): fixed typo- ploop_resize_image(): offline resize is going on mounted ploop #PSBM-101918- Failed to mount snapshot: Failed to fallocate: Text file busy #PSBM-101388- auto_mount_fs(): use namespace pid to find mountpoint - Unable to resize secondary ploop #PSBM-101799- Unable to operate with additional ploop images #PSBM-101605 - get_mount_dir(): return real mountpoint from mnt namespace- lib/merge.c: remove debug logging #PSBM-101561- check_and_repair_sparse\(): do not call fsync for every block #PSBM-101508 - check_and_repair(): remove duplicate error message - Add possibility to iterate all deltas on defrag #PSBM-101490 - ploop_image_shuffle(): update the end of image calculation- test/test-sparse: use rsync to generate sparse ploop image - send_image_block(): skip zero block transmition #PSBM-100783- bad geometry: block count 2620929 exceeds size of device (2620928 blocks) \#PSBM-101397- Update tests - Remove debug logging- test/Makefile: add Makefile for test- Check holes on RAW base images on EXT4 are populated #PSBM-101218- Faile dto mount RAW image with snapshot #PSBM-101200- test-snapshot: offline snapshot merge test - Print ploop BAT- reallocate_cluster(): u32 type overflow - check_and_repair(): remove debug logging - Allow ploop v1 format defragmentation - tools/ploop-check.c: process check flags if DiskDescriptor.xml is used - tools/ploop-check.c: update usage - dump_bat(): display additional info - check_and_repair(): calculate reverse map size - Turn off automatic image defragmentation on ploop mount- Use free block from the beginning of the image on merge #PSBM-101080- range_build_rmap(): fixed reverse array size calculation- CBT dropped on image mount #PSBM-100989 - fill_hole(): access memory beyond end of array- check_and_repair(): use fstat() to get image size #PSBM-100975 (#PSBM-100873)- check_and_repair(): incorect end of file calculated #PSBM-100873 - Revert "range_build_rmap(): incorect max filled index returned #PSBM-100959 - Add tools/ploop-test.c - Implement a way to shuffle ploop clusters for test #PSBM-100773- range_build_rmap(): incorect max filled index returned #PSBM-100873- check_and_repair(): fix repair raw image #PSBM-100719- ploop-check: added defrag option - ploop_check(): log ftruncate() parameters- Repair ploop image with cluster block outside device #PSBM-10012- Automerge snapshot in case crash #PSBM-99949- check_and_repair(): last cluster block is not processed #PSBM-98065- Optional header dropped from image #PSBM-97955- image size is much greater than used data #PSBM-97085- ploop_balloon_complete(): use keep_intact = 2 to query state - ploop_balloon_relocation(): wait for PLOOP_IOC_RELOCBLKS completion \#PSBM-96143- Switch to file system defragmentation mode #PSBM-96172- Automatic filesystem repair #PSBM-95789- get_fs_info(): report SYSEXIT_NO_FSSTAT error #PSBM-95386- Revert "ploop shrink: discard balloon blocks directly #PSBM-94855" (#PSBM-95313)- ploop_resize_image(): Error in ioctl(BLKDISCARD): Invalid argument \#PSBM-95314- get_part_devname(): incorrect device name #PSBM-95286- ploop shrink: discard balloon blocks directly #PSBM-94855 - Update Copyright- failed to start push backup: operation with mnt_type=0 in progress \#PSBM-94718 (Igor Sukhih )- Introduce ploop disacrd mode #PSBM-94639 - fill_hole(): remove is_native_discard() condition - fill_hole(): logging enhancement - Error in __ploop_discard (balloon.c:1110): Can't filter free blocks: Invalid argument #PSBM-94727- Error in ioctl(PLOOP_IOC_FREEBLKS): Invalid argument #PSBM-94597- Unable to get discard granularity #PSBM-94425- get_discard_granularity():not correct size passed to readlink() - Unable to get discard granularity- report number of 512B blocks allocated as image size #PSBM-94110 (Igor Sukhih )- check_and_repair_sparse(): native deiscard support #PSBM-93860- Error in add_deltas (ploop.c:2076): PLOOP_IOC_START: No such file or directory #PSBM-93808- Do not call check_and_repair_sparse() if native discard supported - support native discard schema #PSBM-93734- get_discard_granularity(): Nul pointer derefference #PSBM-93385- Use block device discard granularity in FITRIM #PSBM-93077- ploop_get_dev_by_delta(): do not call realpath() #PSBM-91713 - ploop_get_fs_info(): - get statfs info #PSBM-91713 - open_delta(): error logging- read_dd(): remove stat() call #PSBM-89931 - get_dev_by_mnt(): fd leak on error path - get_dev_by_mnt(): simplify filter condition- Fix logic in mountpoint retrieval #PSBM-89986 (Pavel Vokhmyanin )- Allow e4defrag for encrypted ploops #PSBM-89702 (Pavel Vokhmyanin ) - Fix compilation warnings #PSBM-89924 (Pavel Vokhmyanin ) - Revert "fix compilation warnings" (Pavel Vokhmyanin )- ploop_copy_start(): send sync command - ploop_grow_image(): always use online grow- ploop_cancel_handle(): Do not call glibc functions from signal handler \#HCI-146 - scripts/crypthelper: "subprocess.py:1047:_execute_child:OSError:- ploop_copy_receiver(): report error to client - lib/ploop-copy.c: handle EINTR in read/write - lib/ploop-copy.c: optimize data transfer #PSBM-85381- ploop_mount_image(): remount file system if device is mounted #PSBM-86655 - ploop_stop(): process PLOOP_MNTN_PUSH_BACKUP state - Get in-kernel maintenance state- ploop_copy_start(): image copy hang #PSBM-87271- etc/Makefile: replace spaces on tabs (Andrei Vagin ) - ploop/replace: don't check that delta-s have the same header (Andrei Vagin ) (#VSTOR-9617) - check: execute ploop_check before replacing a delta (Andrei Vagin ) (#VSTOR-9071) - Enhance CBT logging - Add bash-completion for ploop, ploop-balloon, ploop-cbt and ploop-volume. (maksimov )- cbt_set_dirty_bitmap_part(): endless loop- cannot create ploop with ext4 on a drive with 4k logical sector size \#PSBM-81545- ploop-grow: don't fill a raw image if the sparse option is set (Andrei Vagin )- ploop: allow to replace a raw read-write delta (Andrei Vagin )- mount failed with: stat /dev/mapper/CRYPT-ploop50869p1: No such file or directory #PSBM-80502- ploop: allow to create a sparse file as a plain image (Andrei Vagin )- Extend ploop size limit 50T #PSBM-79604- free_ext_context(): NULL pointer dereference- send_dirty_bitmap_to_kernel(): double free- Memory leak in CBT code- dump_L1(): make output user friendly - raw_move_to_memory(): memleak on error path - Get tracking bitmap from image #PSBM-77973- ploop_clone_dd(): do not convert DiskDescriptor.xml - ploop_clone_dd(): drop temporary bit - Get used block bitmap #PSBM-53844- Clone DiskDescriptor.xml- Add ploop_drop_cbt() to public API- ploop_resize_image(): incorrect fs info reported ofter offline shrink \#PSBM-75100- get_image_param_offline(): use OD_ALLOW_DIRTY for open_delta #PSBM-75809- get_partition_device_name_by_num(): use /sys/class/block to query partiton \#PSBM-75261- ploop_init_image(): unable to recreate encrypted image #PSBM-71894- Error in do_lock: Can't open lock file: Device or resource busy #PSBM-73316- parse_xml(): check for KeyId != NULL- Export ploop_init_image() #PSBM-71894- volume: allow to use existing directoy for a new volume- ploop-volume killed by SIGSEGV #VZAP-652- ploop-volume: add struct size argument for get_info/get_tree - ploop-volume: make tree and info commands print result in json - ploop-volume: add tree command line option and API - ploop-volume: add info command line option and API- ploop_trim(): endless loop on FITRIM #PSBM-70551- ploop_get_dev_by_delta: unable to find mounted ploop device- revert fd88e52d30 ploop_stop_device: retry PLOOP_IOC_STOP on EBUSY \#PSBM-69753- ploop_stop_device(): return with SYSEXIT_UMOUNT_BUSY on error #PSBM-69753- ploop_stop_device: retry PLOOP_IOC_STOP on EBUSY #PSBM-69753- ploop_find_dev_by_cn(): use only base delta to find ploop device #PSBM-69781 - volume: mark volume based layout in DiskDeskriptor.xml - Failed to provison volume if some of ploop modules are not loaded #VZAP-474- add_deltas(): NULL dereference #PSBM-69755- Makefile: install libvolume.h- Use open() with O_CLOEXEC flag - test: ploop-volume - ploop-volume: add command line tool - ploop volumes API - Dont store parent data in DiskDescriptor.xml - Mount file system in ro mode for snapshots - Always store relative path in DIskDescriptor.xml - ploop_find_dev_by_cn(): search ploop dev by pair (base & top) deltas - Introduce volume specific metadata- Can't mount: Device or resource busy #PSBM-68599- ploop_umount(): do not stop CBT on ploop_stop error - Configure umount timeout #PSBM-67574- ploop_stop(): return EBUSY specific error #PSBM-67574- Export ploop_get_top_delta_fname to python API #PSBM-67091- Ability to tune inode_ratio #PSBM-62212- Add option to set filesystem label- Fix Copyright strings, see #PSBM-58317- Fix Copyright strings, see #PSBM-58317 (Igor Sukhih )- Added gdisk package to reqs, see #PSBM-62710- cbt_dump(): skip CBT dump if not running- preserve CBT on offline snapshot creation #PSBM-62562 - tools/ploop-cbt.c: show dump usage - tools/ploop.c: added -o - offline snapshot creation- Remove -fsanitize=address from CFLAGS #PSBM-61727- Place package definitions and files lists in right order - Move license installation inside sources Makefile, see #PSBM-58317- Added libasan to BuildRequires- Move branding to separate file, see #PSBM-58317 - Add licenses installation (Konstantin Volkov- get_part_devname_from_sys(): AddressSanitizer heap-buffer-overflow #PSBM-54889- Unable to delete tsnapshot #PSBM-59212- ploop.8: fix typos (Kir Kolyshkin ) (#PSBM-58292) - ploop_restore_descriptor: fix clang compilation (Kir Kolyshkin ) - Modify get_partition_device_name (Mikhail Feoktistov ) - Rename variable (Mikhail Feoktistov )- Rebuild in 7.3 environment- libploop.h: move PLOOP_MAX_FS_SIZE to public header- Introduce SYSEXIT_UMOUNT_BUSY error #PSBM-54005- Failed to resize image: On-line shrinking not supported #PSBM-54003- Turn off console logging for 'balloon discard --stat' - 'ploop balloon discard --stat' does not work on not mounted image #PSBM-53998- Rewrite crypthelper in python #PSBM-53278- crypthelper: process key from STDIN in file mode in cryptsetup #PSBM-53205- Use custom script to get encryption key #PSBM-52949 #PSBM-53053 - rename crypt.sh -> crypthelper - pcompact timeout doesn't affect defragmenttaion #PSBM-41298- revert commit bd46a066 "use session keyring to load key" #PSBM-52965- crypt.sh: use session keyring to load key #PSBM-52949 - Use O_CLOEXEC on device open- Failed to resize: Can't fallocate balloon #PSBM-49371- ploop.8: add encryption info - revert commit e35d4a0f6 (#PSBM-52358) - encrypt_image: deny encrypt running ploop- encrypt_image: decript image- crypt,sh: keyctl_read_alloc: Permission denied #PSBM-52358- crypt.sh: fixed result code check- crypt.sh: debug logging #PSBM-52289- crypt: Device /dev/dm-4 is still in use #PSBM-52258 - Use partprobe instead of sending ioctl for LVM- do_crypt: fix using run_prg_rc()- crypt: dump key info on key retrival failure #PSBM-52202 - Return SYSEXIT_CRYPT specific error on crypt.sh failure \#PSBM-52241- Error in ioctl(BLKDISCARD): Invalid argument #PSBM-52241- crypt.c: invert change key logic - scripts/crypt.sh: return action specific erro codes - ploop_encrypt_param: add PLOOP_ENC_WIPE flags - Change encryption key #PSBM-52087- crypt.sh: equest_key: Key has been revoked #PSBM-52134- plooptool_info: diplay partition device name #PSBM-51859- crypt.sh: Load key to default user session keyring @us #PSBM-51923- ploop_set_encryption_keyid(): add operation lock - get_dir_entry(): do not fail on ENOENT - Fix cleanup in ploop_create_image- Add functions to resize partition on block device - Add functions to work with parted and sgdisk utilities - Add ability to initialize block device via ploop init #PSBM-473771- Invalid CBT in the image #PSBM-51513- ploop_store_diskdescriptor(): devide by zero #PSBM-51427- Preserve xattr on ploop encryption #PSBM-51074 - change ploop_encrypt_image() API- ploop_get_mnt_by_dev(): access to uninitialized memory #PSBM-51168 - ploop_encrypt_image(): wipe image on encryption failure #PSBM-50724 - Update usage messages (Mikhail Feoktistov )- Unable to unmount disconnected ploop images #PSBM-51110- fix ploop_get_mnt_by_dev() to work with encrypted images - Pass --allow-discards option to 'cryptsetup open' - Take into account luks header on crypted ploop #PSBM-51037- ploop_get_info(): don't work for mounted ploop #PSBM-50945- Remove --xattrs option from rsync- Failed to mount ploop #PSBM-50937- Makefile: install cryptsetup helper script - plooptool_init(): process encryption keyid on init action - Encrypt/decrypt ploop image - Store encryption keyid at DiskDescriptor.xml #PSBM-49384 - partition device name getter - get_mntns_mount_dir(): make function generic - LUKS disk encryption support - run_prg_rc(): pass environment variables on exec - Disk encryption: init/mount/umount/resize #PSBM-44166- Call PLOOP_IOC_FREEZE on partition #PSBM-49837- ploop_get_dev_by_delta(): ignore realpath() error #PSBM-49902- USe new ioctl to freeze ploop device #PSBM-49179 - ploop_if.h: add PLOOP_IOC_FREEZE and PLOOP_IOC_THAW ioctls - Disk encryptuin: add keyid parameter to DiskDescriptor.xml- ploop_copy_receiver: truncate image on dst #PSBM-49076- Create .statfs and DiskDescriptor.xml.lck with 644 mode (v2) #PSBM-48352- Create .statfs and DiskDescriptor.xml.lck with 644 mode #PSBM-48352- Update ploop_if.h header to the latest kernel version - Error in ploop_fname_cmp (ploop.c:1129): No such file or directory- Add ploop_read_dd() to public API- ploop-copy.c: u32 passed as u64 to send_image_block() #PSBM-47575- ploop-copy: CBT live migration #PSBM-47128 - Fix close of 0 descriptor in case of error in grow_lower_delta. #PSBM-47329- send_image_block (ploop-copy.c:480): Error from read: Bad address #PSBM-46720- Port CBT support from PSBM6- Sync ploop_if.h with the latest kernel version (#PSBM-45001) - Add --defrag flag for usage and man (Kir Kolyshkin ) - include/dynload.h: version for ploop_get_base_delta_fname() (Kir Kolyshkin ) - ploop_discard(): nitpick in a comment (Kir Kolyshkin ) - get_delta_fname: make static (Kir Kolyshkin )- discard/defrag: take into account image size change caused by defrag #PSBM-42548 #PSBM-45364 - Unable to create ploop image > 16TB without filesystem inside #PSBM-45162- ploop discard operation cancelled on fs defragmentation error #PSBM-46198- Lock descriptor before accessing it in ploop_get_*_delta_fname() #PSBM-45496- api to get base delta file name #PSBM-46238- ploop-copy: Ploop image coruption #PSBM-45837- ploop_copy_init(): open folder with O_DIRECTORY flag - send_async(): use pthread_cond_signal() under lock - Rework check_snapshot_mount() - ploop_merge_snapshot_by_guid(): improve messages- add ploop_create_snapshot_offline() #PSBM-42981- python: Add snapshot create/delete bindings - python: fix error message for PyArg_ParseTuple() - do_mntn_merge(): fix the check for same file - complete_running_operation(): unexport- Fix statistics returned during ploop copying, #PSBM-41177 - ploop_mount_fs(): rectify wrt remount - ploop_mount_fs: don't mount ro when finding balloon inode- Repair DiskDescriptot.xml on process PLOOP_MNTN_MERGE stage #PSBM-33414 - Makefile: .depend file is not removed on 'make clean' - mount_image(): kill flags argument - Fix compile with gcc-5.3.0 - Fix compile with musl wrt gnu_dev_* - Fix compile with musl wrt offsetof - gensym.sh: busybox sed compatibility- ploop_umount(): possible NULL pointer derefference - Rmove temporary mount point on ploop umount #PSBM-42493 - Remove temporary mount point on offline ploop resize #PSBM-42493 - Remove temporary mount point on ploop umount #PSBM-42493- Remove temporary mount point on offline ploop resize #PSBM-42493- Remove temporary mount point on ploop umount #PSBM-42493- Directory root.hds.mnt is left after container resize #PSBM-42493- ploop balloon discard infinite loop #PSBM-40948- Resize ploop image mounted inside mnt namespace #PSBM-39492- mount_image: return SYSEXIT_NOSNAP error, #PSBM-38423- ploop defragmentation support #PSBM-30163- do_delete_snapshot: pass copy of guid parameter - ploop_get_devs: NULL pointer dereference, #PSBM-40203- Add makefile for python bindings, #PSBM-28485- Updated GPL text- Updated license #PSBM-26806- soname changed to libploop.so.7.0.x #PSBM-32811- Revert to version number to libploop.so.1.12- Move version to Makefile.version 7.0.257-1.vz77.0.257-1.vz77.0.257-1.vz7bash_completion.dploopploopploop.confmount.ploopumount.ploopploopploop-balloonploop-cbtploop-e4defragploop-testploop-volumeploop-7.0.257COPYINGGPL-2.0ploop.8.gz/etc//etc/bash_completion.d//etc/logrotate.d//etc/modules-load.d//sbin//usr/sbin//usr/share/doc//usr/share/doc/ploop-7.0.257//usr/share/man/man8/-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generichttps://virtuozzo.com/cpioxz2x86_64-redhat-linux-gnu directoryASCII textPOSIX shell script, ASCII text executableELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=0xc5effbb731236f0a352189249c46700d824cce75, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=0x66be3c28dba01cac35c0ff875830a68a3533e3f2, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=0xa736ef608b22d9d5a933b00f163e8f8fd304e7b4, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=0x93a4e19eede4269310d7d421cb65666b2c4b352a, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=0xf09636382b6a37e9a67d64ef28379ba001c9e1ac, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=0xc90c727a963ab5ecc5abb1789a5d110588ae2aef, strippedPascal source, ASCII texttroff or preprocessor input, ASCII text (gzip compressed data, from Unix, max compression) #*  RRRRRR RRR R RRRRRR R RRRRRR R RRRR RRRR R RRRRRR R RRRRRR R R RR?p7zXZ !#,☃P] b2u jӫ`(]Q#>CSd/6$:BJ<>3g*;m~O:vlM\޼$8˧R?fo%%v;LaC Sm-c͎kc\/az3mo[G1Cv0U9?]nk\bL &,ggIIA9͂RlOu@ڭ8YW:Ҧ4\M/!p!9,to/pIm6_W~]H}&4 b6;y!D)?}38rr z`,bWW;: 2P7iCȦpjk7h)tj wP7I䘰FௗNE}Te&pJlD~ ^ǘX4ddQI[_;_l'g [vQRP*:׾p/r 3$uG.X8pHE{:3}ضNRd9 P19Ɉ07` r&Nlm~ƭXh͇3/ۗ!b%-ω.酱U=-P!t۾ē*镢hTC7h/3'3 _㨨R\].98^ލy:8'l-%죑Dϼ~y#xj'DZ2 }[6[h$?4P[FޛI75~B_t%mO2&^3 [~ɡXaMa>@' t5nE)x"=}B] bL2j°[c-rAy+Qq,-V<1I)R ifyMޜ*o 62%X Z* [z-ݙa+iYCɴRUiQ yLK &'yꉿ[f˂AwBUy 7vis.tUnp JPVxp (m){>#A=Gn#^~UQǿ4_+s.礯 E(0)%lq_b1^۳ƃUqtxҦnɺ{f38H.yPFιOYIU D G4(F^Ó&]c[/W+K9TYk:GuJa,o1@@F_}[=;)b\Fn,^ۙiHaRax}H0Du[m.eh?# Z+[*d~*_-OTK]~c%elkߒ2ޔTHp(c "/tݳ$+7/( ^R]b*sjHבXu(P(I\!=1pP0hUtUz0KamC|eŸ)Hrj;8  50΍L3xK N5{\'%E47( u˫:Î'>EzX{0.H`}]JoX T V1F `_.w-ѡa|`7pgθl5X ZO7He(zye5|9]S7\ -66hCϲ}q!+Шzvqr81mAخRWmfXTUU' "0ubS`u!1U=wȇEk!8bw>drs:<4=}qA)V T:Ùy0@ +|@`ac"yYёq"<;N+L4wn'XqCSaMAntwR7s? 67BÁiU.;|$p5~99OMאeKM]Bbƚ>fRg(6Wf\zPuSVn$=b1]ۿTHqE߁6U3A2.5mD\&(~Ht[]ShB.[w%~{m3Yb{I|߇Vnna!"O~ )2񈐶l)cz*#: IZN]+魳8z9\Q2̾7!Z.RG\t(6 (ݬ6IdEld"“TZ9ƀ" Ov z7qT[*8b)cZ,^O\DŽYd6 YD #TW/v' yӗGY)srnBaiGhgњFo/;Xmuo{m',υG5MJj69؛֍3[Y=0Xy("`HjT9R%cct0a"Ss2]}g6^ cyZjz0 Uw|sZ)x0F(&>l7:ƞJ:K^BFVrM ]CDaz^٠qHj}Z^zZ&y-_["IPPk'* ,߮k'q`< ,*[Az>h/0_-(Lpmj+  \ݰlU|ktoyd15z܋DΥwS/܍k6S{NDw |^i6U'7cg Y UY,Q\:HzՄ'rEYBHOرАg!xKP-LGލ(;hy7ADYΤ{j?'ɫjlGPk^;jƔ՟*U4&;V[o|g4!gc+7+R\0ǐpvũDޓmթKn 'k2ͫAuZ#lD]cmTҡyCEA%Mus2$Lx%~*];ŨP CuS,$U"3 W%_nl'5 '5"@0%(w#E% N>e8jZUrb>tw 7KSu 5hp"@2Zd5ҋ&W6 0C8q0WNWvq@}WUdZJ!8)[{/C՝F+1XcvB K'{." = aBuQ ɯظDuŶeYymtUZZZJYeu yD@k&)Q!Cќ$^ з+zY<`HJ#DQPhID RDvvw›N. КfinT%S(q|C,bG$3c~2mf tf4sRe}n U:_eY+<3$mU 'v \|sV.$# gWv HڵRhfל\>,]Ti*b,5hf#9k*O}& wza}]ylHlН+نo=AT=P(>odh~P Qm#[DB;񼽬B)%åXulA׆}tI=2X1*یs0KBm j'+][G4}c1vJJ{+;]+~CKɚ 31DQL,qv%!ꌂ\MF ]4ƒ돁e ˦\U MĿsDxgr0xt48ykgWmJ?Cj(-ѫ$0]&cHUu176z1$PB`⬳zպŶߦ<#9[.6XKU?|1I?qr?UGHP52vs~Rq28OB}DQ_^!юőv{ qHXҾD6ƈP+z-p@,S{fmv4cqoLӎLXGy"/$ H]A~q'0,!~f%A_!ގv78hsr)f(SѥEw|S=;H{xlI*_2 ! I19?Ĥ{dy<: 5H Fx\kt jmˉvTaidVn.Bf8r)s ^ŀ;.-S>Q|cWW.<,iw)=|%'nfU&߆@d>L=ymҼ%,ҝ~ӡ D:}W__Xrqv =t4b\:FWYJ|*0*[p2ZtC{Ua1E]03-6*F5Խ~s u!?0*B2#yĚqbׅKIYCݞz5ވm={9} L;i\%˓W\וr`ǖS%ᕇfádKti3.䛏L^e4N|NF1cX1¼*~^$Uj=Yh{:N{\0JArࡈKb|Vg ave7YWdR;gȅbi?62z8M|7;\#)LQ^̗FMρ#JgG&A?-ӺTb@i;H(^cNçh'B by"ӀՙQ .%JNFS v CO#4p|K>kxkE=ǥH3MKVXg{t(RKj JջH!*j `nU k[2VH.QiɴǃVSj*GGx!`~N,)}3Oδre}!Q^+^g(]khou}#I.8٧CM&NOF ;?{a<'b ?F/bC.ҳdVf%[Lfe+߼Q+w]_ 'wykpK6QQ8K%θ:C9C~xrC& >a;M%7o~!x:5?n[ѮŽ1-7S0N3gcݻD{zL Jh_Cl63oѨvL{dGfS]FB6>Fi$kT{j2Q/Q6Шr+UO>l0u# :alJ?/*U ={Kկ˳V aI1K \.u)ddpj9m(PQxzu%e&;b.*ElVLݺ"J(M?|%eO*"a67=(,U,trTCN~ꔮT8BZ ML+NAܩ’%h$JY8"j3BiX^y',u?MGiВ4wmI+U O(V`ôZK#2 DbYVj럋9hI'n 3<60 ++b5鮯&KagģD,S`8Za6"*q£,q!qZ^[f?j ^*.E=cC%d%&qTbUhJNDoZ~Bʡ6J/Ņc}+,J2<~@ZQ1veOnӐZf6v+ ]#)L՚$gg!| <LppݎY` ʺ W^ ~Fjӫ9L7L_C2} Z:UQEey-j/'lY AHR@r!_c)PDB!u`Z$COKED }@V8M4 1ޙ/]es[r&#?Tϕt.(4#dEsɉlF{8:܌-!I8 ;*i8:_d _lD)Ŀ77!N" E0B>+s Od"s6z>RPӣUHFlr!b YTd+δ:^(@-k\ &ږSO00 :0OK|`bч-RxxV%{ 5_c: P5]f.,XYŻ7ȧu D[CIvW {PuYIMfKD/hkF¨ۋưè_@:I=@F vxL%1k_by_?L`'B*9 V wQ`9AZj`*dN h+%e5Kңt7eeGu1VW2=)IҠ\b5j!9,.J.5$,@y B[=}]+a[ca'%%pvՋ]mChԁ_W}uvZNbع9~r{çvH;+5bz.OND+RR43IGX kU{!muꁞkNt.e8F-MO̴a(<{H6ٙ5kv='C񞇙9L.{yU-ΨW&ԩêye}?|`1DllbU"ԧ8aThbJpЙ)ߥzN]{1|dsGq&NbEDVݿ_/--Z^EM$j1O2x!%AtV;ib~U}e`~`}q!ZE`b'kzU |>]ҨO 'q'C,K)֊$/;< 8g 7F1anv˃xE7Rܐ51BA#yd93(cKUjn# ϝJ՜S:q6KuDFBY^@^ ]J4S f]`Ք) uwч6SFqu#**mއ yL9PڠX=yGBJ/Zo76hX,9r Fko:d|Q0Ȕ=9>uM?&&[(G* u>QPΡ A[Ee m@6. 4]E@})oekCC`X?c"tcZQ8׿vcSF4dAǩ#'EqvQj)ÝWdZ%ÍZևPx5G_0' ?QLSH`IMZn^٠{NͦpԈ&—>RqdžZr$x[&kcSy_i$ əMͳdJ \o!GF|0Nd*9l61X.BUP{UZ6mTiigSE.pe)%4<ќȸe>v]wEa]38GF<1I+=BG955p1N[)YqJBp}r )X[6A݇8tb2DvibД>=R(3c=`zNw_ msC"1 J 4eH*|D5]~eƩl:ۢ&R&6W>u|眿 7-i)Wg+PNf݁g &29ߌ[fR\,﹞R[5t4uׯ\)DNQ1l-mAЊ^r./៊Y6ubA3MF6ޠ̔fLDyhah=Jj(i|}A{Fdu̓J4VsPzaE5 M>-#,ݳd̹iP AXQOQj%01a-* vp$ zܯERU$4Cu$3j_dGɂt0yⓘ[XЈ> 0RE2;WZ'Y0dVPӠ=.7y($-Tފg,w>pvYȚbZe!!El[_į>M.Doe'ElL:Sa"`Y]ٛ`F0MvVCYgP"ڧN+A]H,yhtvK(h(<t԰(Gn2RMn1䅪@i®dINr܅N)guSy.ۆmL5:]сQcDџiX??ĉ fEv1HmL5de('=z2|xbňBIr(h8x1=. ORv\KV1^mH{>wMtdk z@0}um} ~q|>,Pum ۛSy'fq%J=/N6]9TT=_p(`!a)"0vT!=B* ء"cJYoŃ@ԧCc IT4H0wۨ1-5R?i\>܃9 GtP}Mfyzm BVޔ7Yk.Bp}|_Jd, FJ[}}YKH MHE٪LZJ`٫c_+Zn;wRr,0N6"(>Q!S*f]\v rvBѨ` &~DhB^4QEc]>C.*~Q={{Ѩ1f )7h&PzyLjO5Xp%4dh$&ƬROM4\HfXv`d]47iLX QsD?=kH"fgHW*̩R%G4t )m,XA(]v[ژjpK..(ZTͪM[z:urT1rAv\2%c+𧷡)Gva@r[%}Q=IKrR1I~Vikˆ≘:aC`"CXd2:K_mJֽ ?s15lJTt/烹& 6*JdzskObk(gz)`ϱծ ᷜM{)e ^,/M5B6Wxl$7/8n_iGT%X/ yM[a[A}#%vTyq* X.W*1wRqNO"؜Vp`~ۯ<8ܜT&A''uP(td][ض9bv.ZO i:8 SQ^~e&|[u>ιI23*0)/g%cEvȪ FгjJ7A/lJۢ21+q6Gf69fرwog`][9Rˢ+XN^s-')sVꁣMY)Dp5V /= \SiKdW3FK1mln%u(VpXx{ {8b?L ys}QdEUcgQ7|%\揩r;2<.Gׄk)NA ü gA.顸**se uȟR4)N+Z1'1eW`%.8)s 늂UwK8e%$(-g},*Nh_}k )XS46=V l" :$Kv L+GH^[Fl6oyoogs8*\T LIMя uלd-EUA`G,uqD݀l戻x0G/X#Ԑa5GYppaB@VhkJчx ]Sջ4MKwl!{ilJ jMz _g%,깈X[„0ů#{u[OJ{744(jjӏQ@Me,"ťbg"-R{-8ޚd{ȈbrJӑٰrL2&0;/V$(*] #E'PdnLJD`  N(i5\ma1E{aizM`;'D-)GO} Oۮ†RK f?Z0)]['%e p~ 95Qhȱwz' iN$>8(ɕdj^';goppc9eBOqfV\oU~[f SN>V/^|2^6yaL+Q#v0 z\$tC}dEs$(t-vS O?#P,xtG<\mֱaqgLkag/ǿfHx-ݖ%`T^’= WGC7%([P`ҢMUS̭B髀xa[}smk"+XX}@E"e`ȝ`>S8Y{L@wjywpfg:eF9S K\ wy-fr;>N/`R!SQqHJ +˿h'?kQ_v={ X"/ItHC"MDy.@XRw* hnB0>z 'ԇa۟pX[F!8͆μ8C0MXԏ&VR`gޙ߇hԀ~E\%s97ꀖU{]5. ӯ'g\ bY bϗ8TYJrtU<obNNej>#eZ-Ӕ *-d'%* ՛JC]lEoTŭk9Zydƀlߦ1%Ԑ:u5B%{JqH2^%(2ճ#hLa c-oq<\!(LS]˅Ui/GoƱo%Tk&@(:/I6+v it. Qp cRZ%puu!y+ oCگOy"ٴ?uXŝجGx#Osm֘3p)u"w |uH /!f.!jf38|cVfʽߝT`uW)2 vޣ#z\[pHD;=K*+&X`DNkMS38EѴ7vaH.G=u2nekOWSBéϩa+,x 3#{{ciO)˽`shw8[v_׆ pb^:tMoG\lbV|$AT)XM̠tx "qq+O; =&m+p||s:cDK7}sViy.wbKkX وC*tʈoK} F)%^MZLD%!H6c@CBחR)QMbFTp,uߛp$+T'}rPLas6A]H3E#`jÃb 1MJ.ll{Ok-UhgNɤP%E/w 7zғN/.IwE\?KnwwZ'9otݖ{0D ;1)etYxg'?WTl^✚}6q)f^R`*;d.evّoqwS˶e^ֽᘶ})II{RƲà'"";)l;7|.7g %7iu uBMAkKFQG|Dif | ǥ\䜷&zrf:/{af>go]Cgar$^M|kWlV VTaRp:k0/&)Eiy Y1n 9`gS"+ fiJp[`> 4]*qWL <`!ǏL xFh}Ǒ y_'}ZT ˊx~ER sG2 7m Pܟ\+P}p||>~aRo s]Ry[7O!=z޷ZL'kʳڰ1)=£AlE1RxvA|P0jR8YAQ}\fȆ᭿Fo˃B vQnekڥ<@¬Z*hcǾ 38F(+}a&$DbfV4m^މʎc0\jLrk[Me2_OO%UWFo'])qu}ȂrR fN3a=|ϓEǁogۊ7 RcZU6y؃w}(? iCqBF-D&kر5WM[j95l LxtVH6Q+U56x~(e%I\w*y1,hb}.KQ9^SjkM)pwMYlY>G@zߡ~y"EEocRDQ ?T2'Tɼ8YuUG¯7>0A~r?.|bh߹/0 MQ@- y qF!?_K㵎eV/ H5Eh0WcH.0_ ȟx54JPK;a-T4ǣ W_Ly)今d#A!riWBjڥꇎelӮl-&. q[p5 y˱Gމ@<57 ;iT0-|m!M?8fzz꒜JH tEf{莹vM_RCܗGkou9C``U;1eɧ|Gmw.bB'JN')G%]^B b[L[-ǡ{T F"v"J2*6qLI% yfg^#dI!,BguiET.ߘD,zS) nd73e%' `&ꠇH}]kun$h(@y Gp0רQG9O(..I|e,B7^HsS̍>~ RiG뚀h=d*p9*!X<^pݶ~/'hZv Thk9EaP&`$Sf `xB;St<5 O<)_&]epJΉ*B/UsbZRյ$:[〻@^ΑX{3РuZǛ#r7Wgk iZ=\;,dhM7vp eKr\82&sZLܫC5n#t'^ ޯlh@wٍu%[قlD}=: )*fPt\\?\޻=` hͭ1:b@8-Gi5:*FqEQ& u@ÝUC0R[cAkx(<$^5ARHOٱW.+>Fʖ֋ jShc5y(/~U"0Rsh>ayTl<}fCd0VCI5 ~8 5^ *u#%:{q0?,I$e1W-\/=lir @]_ՔE++7C^k=`I !*Ci,~w EÿHWy;mlBYPmc]ǻ5bMJhF3\Gy3I'A+T FN22m8pX[bC ܾa+",S&L7ޓ;ǭ"vFn}YA䪮g{|%{)mf9(}"r1ԍCZ~N8?x =oڀH0) z`T>>d_!h{3G*n_r^.J0KM#DK!_cͶt ug+-eVN?(o' ?ixMΈ'@+e%0Xes\I)7pgxSGy A%;qƈ֣عR8F gmc9 ,Q h:GU  Ugc/c3;)<5 u/+R֎sݛRl:2W-hZ+y] ݎg}Ys8~!, T{qm61O\RJ|zG{)-BW)uUy)Gx5z_4FWn^ɚr)?C zE`0m;> p/e\ ӝȧs+Pyǖ[ʧLt+?(@w@J J;$$ +U5ֺ.p2h?0:3@F.B!%Q@֙-( Ŗ+6d6򔺹<2Yz ];듞2[:k!a(T>K9U5ƌLvyH˒0#ߠ%q+u„dYSY*يMmq3᜻"1oK^ψr0^hR].D$ >ׄ~df}o[B [FP܍g&ZW&"1 2H`@vϞ*YmsVy_"&a܏Q}g$HS@*ҠU@~2]rς5gv'/>c6V@(Фx@7LzEF=H?`PR&R:b }ݯTy!pӛ_=O"2ɋ/rd~ s4g9KSy ʏTpLN0JGjJoXy;RgyQh>zU)=i ^+AJMqCuTE0y~t@4Z!F|=(+:"_! @f&1nՅO8u&sZ$rX,,ԓ :(Ẉ#@Km1 xSMfx#T:yX즯 /BSl$! f 㒚-ͺh7-s9λO#9QƂ|dȨ6AVOsǻdv *3Ӝ*>&=纯WFLwbAs}fv僅GK 9t?7s~'58c3?jmfA00ҟxNHzK%2{gpsMB"ݠ9Ȩ1~)e~n'w?g㷃{CP ;{crEG9>R\wTR{]J}>udv֣UoF zhgF~'η9^vUPS/d}ğ"SV"j"8G7gi MZv~8=В`ܷL *&f"VAWȰ _7bj5i9p Ut\̠Kac0`=yx Yhgc]v?vF6-Sܪ3='ꇽ{JZ :QU-IN}TIv@dTr`Pz諟9 R^O=IQzb6 ց(xR_~tb%M9Z܇M_IN+p1AjU"6?ڶE9ܩ[w< %70z?)#~:Z W"䥼SD =Oq; sɭy{h;[lQY+f'{$\OG#ԼD TWdK˜CU/])n8 GQ zu`5l:k-f#S%MѶ/nSM4({7?}XB~jPoXꖊ3oEw~{DAG%`L < E廝+1ƜNjD3@c3O !5?գĺi銞1x펏џz]kLOv&=i =yZZq]a=hH)ZݺX b4W14 %lȬ;6s'"9˜|~YayV nQZWO1DV9?4pD>8򢡢:Άx>NFOJOxƘ#A7x!)Jtţާ*Bz:ݐQ!xeDC0)]Zu򳎡eƲu2LhwM]i 6C§"ׇ>Mn/?<2*hX~0_LnBIؼ/s8?\ڟ˥v;lr!bXDVuw au|8H@%$>hy4ke0[eGsV/x}꡽P Y|@tkf9CyRB+I l@c,QZȟ"bRUOQ%= -2t $iʜ ip8KEXBݨz`s,9HJO}i04moR, >=!$0Xȍ-*af`V]:ʈE\$&t j M`R_oYtS2,>S' gb=+)'QSF]qFmGw5ݬ‘4ېAP*.ʞX+uL1֘W>\ʷ9?I3JmԘ-yqUɟuIok! N$&Qӄ֍h214½9Pq{"1ir5'SmUלb6vOEdP:63x!+=ו4^?#/*X r0#Qrm2{-&At$%]gCm;vmHD?zFrԱz}y-`1W&Nt2;YP˯?=eV7Q eųW -ĠQbtOǛ#3Z-,|pp65s :r ϘHG[ԌYVqy $.Hx#]sѩ°p^G?=75%Y 1k[4dzW|à`aWZ!Ë] rGĂ),<2gZ(D"EY5I4 ϓ&YTOh\x80v]h?A CYGOmHatj-p'O 4 fFab2EԓKzzcg|6@ex>fEo:JpSsk=vٗ7]jve;\ wlK QH`!=} b԰2\>_\G܎OSGb5g]!L'z;+^'_OW.8 DtUfND,v= ]_ԛŦȘkF:KϻS5%$tL<088+U^Wg\~LS; ឧS#d{'F\P1zޱÚLtd"67o#B|2|P1FNK܇A?Sa<|6Hn뛋:vO1Jmq&Lo0B3[ %-=_ 4PMOxBS7~o,HtnrJ! U탾eW 5|pr#Bʤ?FaiiQ[c`RSp]bkSjZsBNQi>@6"aђvv`mz,WZG1erYT<*1[B^X[m9TBDE5y>N(Pf_٪hkQ#"A_^NeXJyY}ei' O9/4|;Py h%q(6M@ y:O qO;p_b[;2Bvt]+vXj'$~4dO) aR5b^#HeR"A+֚s! afsFV17l*X280zh EE4'?OO,5T+Ar(CGT}X\ 0WdV'(\²G`GE*k(wMm{8 8ho;-q|.LNduCgLWHs>کC5(xeaݹ"%XtO'&>RKF</մPn/㛧L>5j`ppQZ:p+`UYo"O  TYK!X"7h5EGrQlhyY1b  4ʇ>~l%*z:h?`i4V+Ho˯1S_gs`;%0e_})*^EǶ6F@Y3YP5IS* ! @ 0ƙGd,6|8m72b/+ 0AőVzP J? H@]7Qj=Q3oz,&cx%_./&yUy^A ZeQvm/^YALOAM-$QBjpF*э~!ͥ|ya=8|UΚ5v2ުpbAw? {#ͩaIAX-9đK5hZnf09`La@NFn(-o &â]Mo!\R˳DɏM3enB$:xLaxf Aem0[2zRI^/ֆa;G:^gw3Pibݸi[9LɏKkVmܠ҅)SjɘZϿD.eP5ApתasI`38_DIc]1v hv/G0ګhXSd nXa8ڈ:JU Ӈ/dc|f{ қge qit>~%ۜ5=qaw!g8](MDNj^=CSkXt f]$̢qmȔr5,IJߏ{Bp(%=ϺXB~|oį>~Q)D۱"J/qPuYR;}uUNe[:3(^!sN{)\H{ON}D]Ы N{*х``15>1=} E\j0g}ۈ8*兌-78-!$Zk(ݢ<ԿD[Y8T2L> ~;nD}^eU+$TDUFgBC]$'\LvUز?E;j(#rVuDCq1ugx. VۣL=ozQq˥ G7u~X p$1 ?TҵA{=+)=zV?bhW\&n$Hv=\tcYɓcP|*09ammnHH_9%:˗1k2(>~-p'ANDdrW&sc cFB`':Ě4F6Et21ϳ?`>+܄9 .EW=MV_fc /$_8^;K@q5W8Xsa^N4Z܉,:ǟSz;kP+Ģfnǭu*<@ҸYpd|@p~D׋\ +%:Ҙ8oZv$6SM?. *Lz3_o8O…+g良rbjS.FÓ{=LѠЙ Ľ#Aq"\[@Z@!lq߫eVSXYAނ9elۛM( U^yƟ[J m?]0s;}Tf⋅X-ϕI 2^6qSTƒh[fqjd{F7B]j"o/Uʼndp۪ۢUmn]j0 W&+ƧnC[6wⱡm"~ȳyP/]EzR9 rb xvC*+nfVw Ecŀ(P0 -: .=%*]U>XR)_D*:k/kcT]wģ^]JP%Ьȭz[SFG~/S\gTzγL'gA^܈Yǯz286ڍjb!k ȶ YoC\݉D MT]-Z;%uz@-;_f@)bٜbET7F0zM"DjYo>e; 2<7E ',wN%W"f=pŐAyddHWPWZ\%I"@ӈ%xi6*Hװ 5|8w1n&lCf|7@x vئ$Zc.u TaO`@!`/I77ZQG,IJ20f ceg^#]Io3 xkA'GwS5 X)ʵ- _18XIXLҜQY'466Ǟ0{J`/Io$~r ѣ/~1+5DR[qxBUHKgA\=6gP?dM @oE:ωXTJRc4RzR |(vy0LaVWѬ-Ko)m-Q SvEP\C{J -xSv T (g C^ɴacFwPH2XK sˣdiv94AQMd{0àq'+.g .aV'<|dvm!2ր8txߟI:XCZT7K0rKۚ#ԌOPYnjL^.)??Gv˃|?6tӘ xjIu(' #Tr{#"ÚX^H!Hn@5v5op thUY?{K>s!*n@3!eHF$cV]L0jUT:y\ {I{H Gkh)Sz2ݯ D6x.|lۛǫ(5gO3ҿ;쟻Rb }$`^iw'D%Jʭғ?533 $8-ZPVUA TF[K}xHM>r %AAM4leK_PO#D֓ elǗ{܅/]qٲ0#Le]f1{ 4tpUjpa *q|K)FNg5C9b1k;b٫;/Az);;`0iv.x!gA +:rW+E`'*w]1}H5E)%l5XQb <c97SJ!FL4-c42? ?HjVENu4À wϭS/a8*H4LլPp1eed4*ɼQ'KY itXe ncZ#zK#7UbxF~G~^?,$-mb~%^-ʢ=)Ae&d!qzԖcQ}4O ټ? 9:(k k5OjyT<L_s=V_u"ބewhCkUӟZs}'|>ek9&SMPFU^egEZp9,ѭmZ U /G^#_Gy j2c@D0F5xf<2=EV="74:'Gu"P{m,檮q^Z|T౪7.drH2-8WtQ;dt _pT>C|:v|u*э8z.5txR}ԝa#mZ%L)^T; f8WnL-o`XOic8Kշ[h_Uj%d =s ΏkhƟ hݰa0iil݃4Tt^KhJ { - G1PNa,8\Q`Mt9 Y`~ף9KV1O4aMp2MPנ]x,M" 98G 9ˈ5Ǡ{!:ӌ ׫ܣjcشzmf,:j:Hwg(ZLiw $()}LSv`9ر88V1pbz*'h粒F1xj~a^){cɡeTAb@!rp)''/b]lᵶ=`6NeYdMޥz" kMT/ȳ8Nێ1) 'wFk,a*͒ H~{j:+WGO J rcg0f3žeG {jDJ%kL>jk?{#whXX(ceSՌ3HBwXeZUwsR ('ei0;xh3c?q ufRY~jՠIe, s,ClW_dS4p+|b $p) DXPEV URc;(RW٣2 :!@*O\cRŮ`V!&H~ł"կ,emB`IQЕ 5[!650{ӫ]bhɂNU$ŪT:sĤsNOL1UIcaoPKKq2م-i>WOGz>FO!v~v7a'4 .T[בL:cG7C ־|m}b~!Ua!ʶF7 5&$qilRM+q e՘聫7; @gۯJqZܧQb$w*m1;)$?=. 2me|hlie|@Ỷ?W0_oͯ6IĠHXq,G7kVֵ+KyD ]~$mai ץx<2K>Ђ)GйlS9Ù > {J+ I<$6=H#|d ;N>Pr|$KXG}@e %֯sM{z/ͯ`M 42GjII5Jo\ 82w:˶E!;MÝk"+CX#Y+dqÍUd>W*.ZP:*, y?zğ V4kd_kCSPspQ1[8? b|8٨YiNfo s YE?c6#$%!\>1Mʹ/"89 ֨EPDJf䆮??39JL[Hb g0d|erj Z45()^ptͤ_Il RpݙAe Mw,uEr._ .H=qȷ )o}+Ӱ uRfȾFIZB\s *f.AӌL!N6hY~y@9_>9ֹmU?,=wZQցSWRš)@ }r*C=f6Vz#M)J&'w$e QkXFKUԋ_'ǞN'8dtr9kL)M7/h=YW4LwY/(D4Yğ+[W t׊B5 "lʄ -3 h31NZgHz'_CZE`uiP;+ץҵT i .p ۴Q ?U<x,7UіpyD.X]9DaQd`DdL]]6ԣ@"U 0Q0X{l "dI/uL% +z ~[Қ:ҝVɅXI嗍osrm:evP8f&}QfiS̜ D'~v7NjvZ@ymW3z< J,|bmRW02xPXZ) "̆z;5q<:$SyhC_2A 򃈗3gC",ė b&cKeBX{)A%wBvnܗ.^x@±gNM/k3^+fe$ <^y<)uLBt d'o f7VL]K_k¾Y&$tجTOcp"$(PƋsk:6fsM`{%s)kBp54@ >"6&Ѧ$?)eT-¶`! dQƞ}~^>k) J"s9;&Dc٬rE14Q5lmM|R)@shq 0T:\OP)8iFbKxF(rp\Rzi4ʉ5pon Fgmϧh<[_V5xJ,1b&׌)%# kQwe!ߤunc*;Eoǥ33n9N+- qґUhY2,jq"jʨ6,ȕ.S'ٸߡpu^\Ͻ\+lCG~њ{cZ_o3p+kl*IۍFKH7J]p ]߫@=`贉 FT:R[HFwvtԑ9yN?e +5Y2iE0PE ͺK$ݞ EB+a M 6 sH5*㢋%kpGZDb SAۉۀmljZh1}5K;~Bӫ'k5/ 0;&MR75Dj_3T|f~K\ki"eVZUFv{PQAbu7y1;__sASo+k6wՁqn`$r; !M8HP,U wxC cqr3, } )]NgO^F&gZtnžL ͭ+p[}B\E^z֍2}P`#/"L;g϶lD*h'7K9lh9L5cc% = 0;@GfUo2wa*8NG/MKҺkE7 q3=S(p^T;9'XJSĺ{n͔䍺YFle;*Nޡ,p9+ rϻ#}N.dg{GWLf c,.?hfU5yEJ/b1P9l5`tn{븦:KlYRݫSpli 4("(֜EMHnDrzXG`L=t{Z6:`VLq"X#D<>MP'^Fi!:\6 V~ y6 {Hx~q@g[C~Jhplmm[7e,ff-࿓MdLp^x b`%1+*FwXPoaZT Vۺ$ݖ Ґ^bD8?1v_ozѠwyȻM˜ M61\;?M[At䯢~'MR͢aOm)}!s(7FYu22c.N*3&5[}ҠN3q7L+3|oN*A)`W̾,Jݺg=EE']Wkr K;$? 0`#ɪbnHNӇ?xPтZ嬕%.į~,HU,ֲ4^IpVfrJOBxԅx狔v4Wu6fK&^A| nd k0RI/R5Ԓ?9Gݔ%kk0gL*R lpz+R~ o|:JH]Jg8S z.eVH<3y(W"n8o.*Z c=ͣx+F- f>!scT;Zܱ牢cLmx#ȹƻ{5^Wd֍ 68h^7'ELArl`xSޣyIi6ؿ4aY43zipihu'BVրƟg ̳~|"*M-qO2JvϪY8\Mv`X>f{A@,X [!_B>ԫRGO+n/2S2wrAMu5v7DE=zrvzFYjL'\e7{it}P-s0%nUcpOJ,0 /40.%T:'9BgJC.D9J+Կw0܁5w?%IAYp]?ػVJ~N8q=sjO,B9ڏu*~_#f>ebǭcWD>?h(N&T%m tvŧ8!HYu!z Zhr&e*] FZ/uOaMVQoF9/D2s:&U=#p9ێe7 A%?N䒛HGDK%'[Ո :=ӧEv9'X-mP[u0{ܼ,qH:MUƩd ItjpsB6;-\H_Q7-a4k[E*^X8I=Ώ*Ddп? 9QrSαRco&_ݬu²e)E/ ۲1Um"IA7G3L}DI_Zs+G w2䑸_1A}myVu圅ZWFSLeؘw581kUzz_Yn3D% lxօRd;cF3V*lD Q H 8TcJ+l4ɣbΛ_8 ? MqX#w Vb`p8W12ҳw=C} #W& +wjT(Oj FSn:,\R|,a EfNwenUWt>0F ~\ ,EϺZ%n*n5l=1U&M8dQϹ#\ vLw_(ץCD)C-`Ynǣ Ң5>G\7ID\%Q&Z1KۚԸMdӮC!h^]ڹF1eReHs ^!9$2JHclP/5N+NBCS4+#_/_J| 0OzH! ya=v^ 0Vhd`!P$#0 b|`õY6S$h x`&+XaAj,^d,2"AxA8xnm8tD# @WDFJODw yg~k+`].Ps\bGKX A-*ayZb}rK&lEf Ksb߶27Lº>Aֿ)ѤP{ȅ1ehWՇ6 Y_Uڐdi26Ay!ߴ{&bv5)K(cZ*p Z;Qmi(7Cտshah6ƓF 3&P0+A`J ' 3.^x})L@W`UݜLcVPkMu~Yt.Zj$`8]7E]jL6ECU^T&/5 !H^mcB}7wtJJ*M1UA)UsR%U^j>éwہ ť/ jm.M7""5!~93G5 8a~l#DbI@otB(gtѯNe/b޺GM>(C\JLkm :cbRJN4'm=zVXcy8%wdSi_?SvQ={LԷ(4$/'@z NSbmԜ'4bGeo]Lfq3G%xxiyd9}Z;?W霮0s-h_g'/Do4ؽ6'ÛAx9R~Kiz!=[sL/o"WڟxF*j<=s$LDaEͺZ_Bq z{j$п5Pe*R](i?3H q$mygW?%#ۚcW!YcL2Ɔ #'WT~V🲩R-n>#Ȱ~N^fA`R` hYh![[F|3m~8Ԑk?-~\YiA|>f@āVN199W'|cgAW/{-C[1!!ңE騞8ѹΉdW7bsODٔи=f`XqN㬨mR\`ZJo^%|fN.`Qb_PA!I(q 6GdP R\{Rhq@c12[nڿV !4΋|6+0e)=|4k_VblM)kJ1L]n}Qe.!Va^&-]bmD W2UW}n߇{OdvrrSkKB:eVď5W $f'>[+T ?OOʂ/S$RjVF+2Q@zVƜ9xF.;ɻ<>֊lfE1Csm ׵p(԰=kOWгXm`V^)h IgW30O=ƭa~@bt펢WHa L~-*x#̌` [3xX$y R@A%vA8Rz;[6Jϴa 5B,yB/ٿ64Օ E5Ü@9|P=gcHŸy\gwAiؓ=1H7Hq 3W)}}(֕@j\$_Q~`q~٩H ?JNbs5]uE&sj{E߳ڬ[lRxdg: Hlc !ouXzSNL-I]30O"͞0@ lC:ېIK&(2%CzW㤖1-[f2]_ ߨ[PגL\sM C̄Dߞ(!cstԗ5B%T?3"ǟlO̐ƞVɃeih~d(T c03Wj^x)g u r=~㟚P<Mu]>u"m [׍"o?}j̯9F5655 : L}qU:!]URn"9UvuNSx?$) ҁbɑ:h.'hHH:vQ糛[֢drc8$Ws}pu_ʦkTo h#.Z>Ef$QeX$b/g|Wq%ˉWNfٱLplh5G Nп`7N LOn0{ko2WhX884髺)͐wt≎FA%y<[]T0 ɘMd* iW$R7bWl HOdZ7x[>BBGn 6ڕ,w%6|81k)^>Hg{å_;V5AL"o`y-'bO. A !4.CWQ^u`XaPoJ?wcO1ۚy ? gGj36f, TZ?'{&5vX\ϠD}xmboJ_ZyYEULf߅s5_ jmcC爫 nS1[6K//g"cJ_0 u|~'6H[ ]oZSm2U={&+!#G ~NiyO@ EȣYd0$R}aD9"8E]M" gj;DC{XETOprm#E,FykE+#vkq\pz]aզy+)1}Ub 3q_ča7_'|$Ni5|E5uumd"PYxzaf (%Y(I 9Yy+Yw'0.?{@M7S鷦@0-~.7L"/DoqzSsATAx=UHw[oX_O;e̫ESgnB=ed"-e(#A#in\~?Crx٠U H+5lԕq1iZ\RQ՞KWOg5(h܁A'KO`z ͹F{r1ozI FgDGTB{C"K#bY+tu4 tppG2geT 1wˣZ`@qVH {^Oy.fJ"k*H$P2f*ƕ#w 8MeqE,uL#oQH04Qsٖ qxj8~s7cL*^wv»5z}b8`Kk="&YQ`]c cZRh/S㯃"@x,E@a|EtC"]la-V̧PYCez_?)%ϜKНUe[=-nʓi l@'N"5us5TlCe@`rxշx#S`KDL#xGT/ה\!F&dǣ+8T|E0ɇ[xci]ڷf<")ӿf]3jSL:~s5]?Ưn?żx{~[ C:MxܵAa2>a=@Q"ү.p*> Ŭs|P:9 х123<$b% W>}i~ L D-$w?lc g"ߢ) ug鹴ȩ-gZrˇ :(tPR>,> M'ӄaV~#P/d(Tt*UK*Mpz\b;g~**FxlX MJ%ӕ\nW k*ض:k` On8pԧS6Wt.ܐ"lc=*N0U0V(H'| |͜O2[pZ. LDnf` I6H} `(bAKC}9`RЂL;L3L؛PBBZ'%Z"E9CeKd +^K ZeW~߶;ϝ4hqb 6ş1RDvC}٬Hm`lկԭzfW |#˖%kj✉'`EbTʀCŧih~*}7#`|J|풿 oǝv-^w/( vDvf(Y >u}oW5N֬\xY9h6+ Pw9B Q#g=ڸ914Kf~zC%/c6G^X>Im "/ uCr5@1k\ c;qQ! w7qAtsnaʋ+GVĴFi,)4|N wH ; |*1q/1 ^prܬ>џ*/I;u/ ܆]*8ti v6|΁!)-](9*|>aLѯ6=d*ڋ&4ˆFg!xc|"!R*"?v]u"SԱn?]' (D~lJ@TT^^Dj~6y[ݟ̸ʅ!0;^33V 4 xsmɇk7E$('h&꺎Ԧ0iƄ5H'Q(XcaBL$~${.ѣيF4TFq<SNu-gPP&R4sC 5{}|LJMZj{-ZG9}p"oˀݪeDR@DEkG-nᢒpǂ< >Z0'x|^2z3@{D?~!Аs0`5(T՛@K`X4у'q5 O0I՜t4PuYr~u!E LpEŷ r,@d5j~Nl_ρK(n`Wj^('ԏsA3N[ik˥$}-wXȉtq[y ETމyda霕12S/6f2:z Zz1bVLIá! T1N*XDe AASM͟) ˩;.6+`a75pssk>,]brπ倜=# V3 A֫=0otA3< e'=;,'He=ߟ}27t?-31v) w+6)FIiO%fe! M_VYUFCo ƍ+1ԃ鹲 EcI4' Uߌeh7;ͬH<Hsm`(@ք)9FɊE6L)j nZ!s>y` hV`0<;%P<7VRgI’A*S=k@/\k̪*3qYL%ybQ9bqN,k[GM N`fbgl`;aa=%s PDw{Z},9p^ǔ|~uvy͐7)_>H \`}5Y;f&IO.]q?nL}c)|KYhr:Tzgl% k&,Qc{阗#b[8J5*0 ^;mR#p &~()=.㨼0گmO wYhn[]O49GdS+N䋔k-ge^Q$ NHAv)@4<ep2ٳlqS|'K r/%IU[ Mw9RK 7#ߧJ[nXkCgNn"cK$h|N Z!\ua&ꒆ GC|kƉˆcB$NKPYTJ2molC0K@m~&\p_U4EbmVJJ&D .#)܉ʽ7Un N=,MPz|؝)Iuͅ= c5 $@!z*7v=9ݔ_jĂm\~30Ec:,sYGǺe{#,rǩu?uTA+ pGR+?/ZMupϕ}`vڕ($?P7Rչ]):Y[Xvw9l\()pbI;: $#Mnj.a\}34<EYcŊ;)hs3OX aH(D{+vHC֧f̔xj? (؍^k&7u?>+O4B;RLRWBJ mu| 7޽[XSV􌯡 3jndBOj36xM 4a}+RZ Yidv6?B|ZMYؽ֮Z4fXj"ՏId$cn?E(R˃fr+YӬ5չzM;,oE@i7|CfW2f`%: 8lJNq&qe“S6 e6ܩbp|t Hv_n1Xc1 k]9ss#7qm|k1wpԠ)x/&UPճgm tqp㙤Jzμ]gL,R@=ssSoٺnI`NZZx f硙MzĞ?#í==R\)4AX\P޼u{GTMX8{%ic +j6UU-,~ gb*;n2~RwqL} \$;5I/B*KZ4dVH\²`;E'=,DRLAUه"aguF8Ri欚3Z^s3)׉QʿJıPmQ\:.=Ml qux!vblXϫWQF'?Dlh5D1Z742fx^>6-k#Vq7@nK;ԾFw{2.jKe +C'QȀ3.i`$VL .S7wD!#Eê8gMG 1 YZ