libcompel1-debuginfo-3.15-bp153.2.3.1 4>$  Ap`N!M@eeeGs&=Օp=2).*-K3S|Bwo?5N D+xl98}GuO35 Hy O.N)׉iqIML|"lH C>*+rpy :C=TtDx~kOU\T"WVf@Da^!!'WF5þڡɏO2/\SgeW qarS;a-Xjv`m˕΁0,tf21c20c28f855093a90651692b481ed38280e923282258314125c50db54e56a9f856237abfc412259815f1cb85b21824c039ddb8 ȉ`N!M@eees)N`a RY@8<uMi;Hiu?VKRzʟ:lǚg +lZOӤ>!<CokU0,Et].vZ z\IãOGȚ=\ Mnxh<2u="ŌY)z:W\֠HJ6fQԑ|8GVM6_f = g֏8yvw/߼dȢ|KzD>p@? & O )2@ Yk}    4 ,LlB(o8x,9(,:,FGHI0X8YD\]^Pbcxde!f$l&u8vXwx(yHzL\`ylibcompel1-debuginfo3.15bp153.2.3.1Debug information for package libcompel1This package provides debug information for package libcompel1. Debug information is useful when developing applications that use this package or when debugging this package.`N lamb10ҀSUSE Linux Enterprise 15openSUSELGPL-2.1-onlyhttp://bugs.opensuse.orgDevelopment/Debughttps://criu.org/linuxx86_64)UҀAAAAA큤`N `N `N `N `N `N`N`N7038a5367d5011d08d7c2900ba718a64cff3e45dcb81c5b552204c0e515589c1../../../../../usr/lib64/libcompel.so.1.0../../../../../usr/lib/debug/usr/lib64/libcompel.so.1.0-3.15-bp153.2.3.1.x86_64.debugrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootcriu-3.15-bp153.2.3.1.src.rpmdebuginfo(build-id)libcompel1-debuginfolibcompel1-debuginfo(x86-64)    criu-debuginfo(x86-64)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.15-bp153.2.3.13.0.4-14.6.0-14.0-15.2-14.14.1`8@_0@_k8^^@]҇]o@\![[ @ZZZ@Z>E@Z7Y@YYoIYV=@YI@XXDXXf@X@XN@X)@XWڍ@W:WWaC@W;W @V@Vf@VMU@Uc@UlI@U?v@U#U@T|X@tiwai@suse.detiwai@suse.deDirk Mueller tiwai@suse.deGuillaume GARDET tiwai@suse.deantoine.belvire@opensuse.orgtiwai@suse.detiwai@suse.deavindra@opensuse.orgtiwai@suse.detiwai@suse.deavindra@opensuse.orgavindra@opensuse.orgaavindraa@gmail.comaavindraa@gmail.comtiwai@suse.debwiedemann@suse.comtiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.decbosdonnat@suse.comtiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.detiwai@suse.de- Fix the build with protobuf-c 1.4: criu-protobuf-c-1.4-underscore-fix.patch- Update to criu 3.15: see details at https://criu.org/Download/criu/3.15 New features: * Introduced criu-image-streamer * Added MIPS support * Allow checkpointing out of existing PID namespace and restoring into existing PID namespace * Added additional file validation mechanisms * Added support to checkpoint and restore BPF hash maps (BPF_MAP_TYPE_HASH) and array maps (BPF_MAP_TYPE_ARRAY) * Initial cgroups v2 support - Fix build with nftables package: 0002-Fix-build-with-nftables-installed-in-different-direc.patch- fix filelist mismatch after libexecdir change- Update to criu 3.14: New features: * C/R of memfd memory mappings and file descriptors * Add time namespace support * Add the read pre-dump mode which uses process_vm_readv * Add --cgroup-yard option * Add support of the cgroup v2 freezer * Add support of opened O_PATH fds Bugfixes: * Fix C/R ia32 processes on AMD #398 * Fix cross-compilation * Many fixes here and there Improvements: * Use clone3() with set_tid to restore processes * Clean up compel headers * Use the new mount API - Add libgnutls-devel to buildreq- Disable LTO on aarch64 and armv7 - Add '-Wno-error=deprecated' to fix build on armv7 - Exclude armv6 since criu/arch/arm/bitops.S uses 'dmb ish' which is armv7+- Update to criu 3.13: New features: * VDSO: arm32 support * Add TLS support for page server communications * "Ignore" mode for --manage-cgroups * Restore SO_BROADCAST option for inet sockets Bugfixes: * Auxiliary events were left in inotify queues * Lazy-pages daemon didn't detect stack pages and surrounders properly and marked them as "lazy" * Memory and resource leakage were detected by coverity, cppcheck and clang Improvements: * Use gettimeofday() directly from vdso for restore timings * Reformat all .py code into pep8 style- Fix build on Tumbleweed: Add -ffat-lto-objects to lto cflags.- Update to criu 3.12: New features: * build CRIU with Android NDK * C/R of IP RAW sockets * lsm: dump and restore any SELinux process label * support restoring ghost files on readonly mounts Bugfixes: * Do not lock network if running in the host network namespace * Fix RPC configuration file handling * util: don't leak file descriprots to third-party tools * small fixes here and there Improvements: * travis: switch to the Ubuntu Xenial * travis-ci: Enable ia32 tests * Many improvements and bug fixes in the libcriu * Changes in the API and ABI (SONAME increased from 1 to 2) - Updated to libcriu2 subpackage to follow SONAME 2 - Dropped obsoleted patch: criu-asciidoctor.patch- Update to criu 3.10: New features: * Support Python3 in ZDTM and CRIT * Keep names for UNIX sockets, that are unlinked from the FS * IPVv6 support for page server * Set page server socket fd via CLI * Large pages support for aarch64/ppc64 * C/R of Per-thread seccomp chains Bugfixes: * Failed non-container restore could kill random task on the host * Failure to dump namespaces was erroneously ignored * CRIT didn't show cpuinfo image file * Tasks that got PID-reuse couldn't be dumped iteratively because previous images were missing - Update to criu 3.11: New features: * cpuinfo: Detect compact frames and handle noxsaves * Add support for configuration files * Add support for external net namespaces * Punch holes in input files when restoring anonymous non-shared memory ( --auto-dedup ) * C/R of + epoll: Add support for duped targets + tun: Add support for multiple net ns + x86: Support extendable fpu frames Bugfixes: * mount: Better handling of mount points propagation * nmk: Make collect-deps to be more precise about targets * lazy-pages: Don't mark current stack page as lazy * x86: CPU -- Rework feature testing * files: Fix O(n^2) restore in terms of the number of fds * fdstore: Unlimit fdstore queue on start * mount: Fix regression where open_mountpoint failed on readonly fs * page server: Handle partial splicing * ... lots of small fixes here and there Improvements: * Remove all magic of service descriptors when it isn't required - Switch to python3 - Use asciidoctor instead of asciidoc for formatting manuals: criu-asciidoctor.patch- update to criu 3.9: New features - C/R of + Tun-Tap devices in sub-netns + File descriptors which were opened with O_TMPFILE Improvements - Restore of inotify watchers - Restore unix sockets in proper mount namespaces - Print CRIU and kernel version also in RPC mode Bugfixes - Random memory corruptions during lazy restore - Workaround the iptables issue - Don't use standard descriptors when tar is running to dump tmpfs mounts - Fail dump if dump_one_file() fails - Fill kerndat with zero-s before reading it from cache - cleanup with spec-cleaner- update to criu 3.8.1: a bug-fix release FDstore was initialized twice (re-initialized) causing e.g. - -shell-job restore to fail- Add python-devel to BuildReq explicitly, as a preparation for fallback to asciidoctor (bsc#1075764)- update to criu 3.8: New features * C/R of - Multiple network namespaces - Overmounted tmpfs mounts - Unix sockets and epoll descriptors in SCM messages Improvements * Rework service descriptors not to cause fdtable enormous grows Bugfixes * FP state wasn't reported on Skylake due to a kernel bug * gcc 8 warning fixes * Resource leaked on error paths * Attributes of sit devices with value 0 were not saved into images (and were restored into default values) * Tasks with pgid of a zombie hung the resture * Ghost files on RO bind-mounts of an RW mount couldn't be restored * Random memory corruptions during lazy restore - cleanup with spec-cleaner - switch to https urls - list binaries and man pages explicitly - remove rest of static libs to fix rpm lint errors- update to criu 3.7: New features * Pipes usage statistics * Run page server as non-daemon via RPC * C/R of - SO_REUSEPORT option - IPv4-mapped inet sockets - Net_prio CGroups - Overmounted shared mountpoints - Non-broken and breaking leases Improvements * Show criu and kernel versions in logs * CRIT decodes socket families, protocols and types * Much less pipes is needed for pre-dump, which is especially useful for big mem migration Bugfixes * Files in /proc/pid/map_file could be opened by non-exiting name (with 0x prefix) and it was fixed in kernel * CRIU log levels were used to configure logging for libsoccr thus breaking its logs * Overflow in various IDs caused bad image names * Compat (32bit) syscalls lost signedness in compel * Corked sockets lost cork flag * Preadv() syscall was declared with error which resulted in dump errors on 32-bit processors * Musl compilation failed * Ghost files in / dump failed * Crash when releasing context for ghost files, due to free()-ing shmalloc()-ed area * Lazy restore could receive partial page and crashed * Erroneous closing of lazy pages connection caused restore to hang * Lazy memory fetch restore could start before tasks are restored - Remove 0001-images.py-remove-shebang.patch * upstreamed in 8e45ce4905d186abafb7c20abb3b00207fefdb53- add 0001-images.py-remove-shebang.patch * fixes a lint warning about a non-executable python file being executable due to a superfluous shebang * upstream: https://lists.openvz.org/pipermail/criu/2017-November/039907.html - run spec-cleaner- update to criu 3.6: New features * C/R for files (except for unix sockets, ttys and epolls) sent over unix sockets * C/R for threads with different creds * Ipv6 over ipv4 tunnel (SIT device) Bugfixes * Some s390x registers were not restored by native sigrestore way * Overflow when parsing autofs info from /proc file * Dumps of anon shared memory with sysvipc one raced with each other clashing and corrupting image file names * The "dumpable" flag was not restore on shmem regions * Trash bits leaked into image when dumping fsnotify on some kernels * Lock/unlock of iptables from different criu processes raced with each other * Closed TCP connection with non-empty send queue blocked the dump * When --empty-ns for netns was set on dump only, the restore failed (Docker case) - includes changes from 3.5: see https://criu.org/Download/criu/3.5 for details- update to criu 3.4: New features: * Support for s390x architecture Improvements: * Unexpected death of restored tasks is reported with more details in logs * Merged many images containing info about files into one big files.img * When helper utility fails (ip, iptables, tar) its name is printed in logs Bugfixes: * Compilation failed on newer glibcs (ucontext_t) * Dying helper task could deadlock the restore process * Install-related makefile variables weren't configurable for distro build * SIT (ipv6-to-v4 tunnel) presence on host blocked dump of any containers * Potential NULL dereference when dumping net namespace * Dump via page server might not work across different criu versions * Failure to restore a subtask could be ignored by the restore command * EOF on page-server socket wasn't handled - Dropped obsoleted patch: criu-correct-ppc64-AT_VECTOR_SIZE_ARCH.patch - Add s390x to exclusivearch- update to criu 3.3 * Add --tcp-close option to help migration of Docker containers * Allow to override build time to fix build-compare (boo#1047218)- update to criu 3.2.1: bug fix release, * Restoring a stack fails on recent kernels due to kernel changes * Restoring on a host with LSM profiles failed- update to criu 3.1: New features: * Each boolean option now has the --no-$option pair * RSS explorer in CRIT * Multiple plugins in compel * Run-time check of 32-mmap BUG on x86 * C/R of 32-bit futex robust list on x86 Optimizations/improvements: * Start time is improved significantly with kerndat cache * Sigaction image is merged into Core * Unneeded stages are skipped during restore * Restore w/o namespaces uses host /proc * Restore w/o namespaces doesn't parse host mounts (not needed) * Single-threaded tasks do not parse /proc/pid/task/ in vain * BFD engine is used for more /proc files * More verbosity in libsoccr * Fsnotify dump w/o namespaces doesn't walk mounts tree Bugfixes: * Python bindings left zombie in self-dump mode * The last_pid sys-control was reset by restore * Threads caps were compared with mistake * make install put crit/pycriu to wrong place if DESTDIR was not set * Fsnotifies C/R w/o namespaces restored with errors * Inherited control terminal restore was failed (but dump succeeded) - update to criu 3.2: Optimizations/improvements: * Invisible files restore is de-serialized * VMAs restore performance is improved significantly - Mappings of the same file re-use the descriptor, not re-open it every time - Not-COW-ed mappings are restored in-place and are not mremmap()ed - Empty RO mappings are mmap()ed as such and thus not re-mprotect()ed at the end * More verbosity in case TCP locking fails (#292) * More verbosity in case VDSO magic mismatch * Restore or legacy epoll target descriptors and fsnotify marks is unified with common case Bugfixes: * Restoring fanotify marks from old images (<1.3) dropped the mark * Binfmt_misc mount could be mounted into wrong place * Compilation failed with gcc 6.3.0 (#315) * Waiting helpers could race with sigchild handler and would result in restore failure * Missing VVAR page in 32bit tasks wasn't skipped and resulted in restore failure * After restore consumption of files is increased (was fixed as side effect of mmap optimization) Deprecation/Removal: * Deprecated separate images for fsnotify marks - Fix the installation of python stuff: criu-py-install-fix.diff - Fix the build for ppc64: criu-correct-ppc64-AT_VECTOR_SIZE_ARCH.patch- update to criu 3.0: New features: * Compel library * Support for x86 32-bit arch * Version check via RPC * ASAN support * Force VDSO trampolines via fault injection * C/R of shutdown-ed UDP sockets * C/R of bind-mounts made from external mounts Optimizations/improvements: * SysVIPC shmem segments are now dumped as any other shmem (taking holes into account and sitting in common memory dumps) * CRIT show decodes socket's states and types and task's states into strings * CRIT show prints unix sockets names in more human-readable form Bugfixes: * Unix sockets' names appeared in logs with mistakes * Contents of SysVIPC shmem segments was dumped twice * Dumping of any memory segment more than 4Gigs failed * Migration of unaligned SysvSHM segment on Armv7 failed Deprecation/removal: * Exec action is removed, use compel instead - Create libcompel1 sub-package- update to criu 2.12.1: Fixes: * Content for external bind mounts was erroneously dumped, which could lead to dump failures or huuuge images * Unneeded collection of host mounts on restore could cause restore to fail- update to criu 2.12: New features: * C/R of external TTYs (for Docker C/R) Optimizations/improvements: * Sanitized the way the -v works Fixes: * Checking features via RPC crashed * Resting pipes in user-namespaces could fail on modern kernels * Shutdown state for UNIX sockets could be lost on restore * Dump of huge (over 2Gb) SysV shmem segments didn't work- Update to criu 2.11: New features: * Added "pre-resume" to action scripts * New --status-fd option for better control of page server * C/R OFD file locks, RO root mount for mount namespaces Optimizations/improvements: * More strict checks for extra CLI options * Report errors when probing locks * Restorer logs now contain timestamps Fixes: * Regression: v2.10 was broken on ARM * Use-after-free when restoring ghost directory * Array out-of-bound access when restoring VETH device * Page server exit code could be screwed up * Clang over-optimized string.h routines resulting in random crashes * Parasite failed to send FDs via socket on Alpine Linux * Restore of huge file tables could get stuck * Restore of epoll in epoll could fail * Errno value could be lost when reporting failure to restore invisible files * Dump of sched params didn't work on Alpine * Restore of huge memory dumps (over 2G) failed * Installation guessed /lib vs /lib64 with errors * Migration between xsave and noxsave didn't work for wrong cpu feature being checked - Update to criu 2.11.1: Fixes: * Page server start via RPC was broken * Fedora build didn't work * Ppc64LE restorer switch crashed- Update to criu 2.10: New features: * C/R of SOCK_PACKET sockets * Libsoccr -- library for C/R of TCP sockets Optimizations/improvements: * Logs cleaned up (removed bunch of useless, fixed '\n' in perrors) * Action scripts errors are printed in logs * Removed several iovec-s copying over the pagemap code * Restore degraded linearly on Xen guests. Breakpoints disabled until solution Fixes: * Py bindings fault on restore error delivery * Fd leaked on file restore error path * Fd leaked when restoring invisible files (gets closed with criu exit though) * Link remap restore could fail on kernels 4.8 and higher * Impossible to restore after restore error with link remap file in images * When going daemon a descriptor could be leaked * Custom setting of mmap_min_addr could make restore to fail * Sending pages over UNIX socket could race and fail with EAGAIN * Error getting ID of /proc/pid/ns/foo link not propagated and could result in bogus NS ID generated - Add libnet-devel to buildreq for dependency- Update to criu 2.9: New features: * CRIU can now be built with clang on all supported architectures * Ignore missing sysctls on restore with --weak-sysctl C/R overmounted mountpoints Optimizations/improvements: * Batch restore of memory contents from pages.img files * Link-remap type for invisible files is explicit in images Man page for CRIT Fixes: * C/R with --empty-ns still handled iptables configuration * SCM messages inside UNIX socket got lost after C/R (now dump aborted) * Empty unixsk.img file appeared when dumping tasks without unix sockets * Install procedure wasn't PEP-394 compliant * CRIU blocking netfilter rules were added at the tail of the chain resulting in unlocked TCP connections * Dump/Restore spurious failures when open() returned 0 descriptor * When dumping shmem lots of zero pages were written into image files * Ghost directory with more than zero ghost parents caused restore to fail * Shared mount could escape to different group on restore- Update to criu 2.8: New features: * Ability to configure CRIU build * Show statistics on the screen with --display-stats * C/R of Mac-Vlan devices Optimizations/improvements: * x86 can now be built with clang * When dumping files useless garbage was sent with descriptors from parasite * The clear_tid_address and regs are printed in hex with CRIT * Big code rework for compel (part 1) * Removed duplicate error messages from opening /proc files Fixes: * Restoring cgroup NS could use old path prefix * criu check crashed on btrfs mounts * RO external mounts in userns couldn't be restored * Unmounted on host binfmt_misc could cause dump to fail * Off-by-one could cause criu crash when dumping shared / bind-mount * Mount namespace' roots could have flags changed on restore * Dying tasks could erroneously be tried to dump * Swapped shared memory pages were not dumped * Errno value can be sometimes spoiled by RPC * Restore of netns with newer iproute2 tool could fail Deprecated: * --ext-unix-sk, --veth-pair and --ext-mount-map, by --external - Set BINFMT_MISC_VIRTUALIZED config to build- Update to criu 2.7: New features: * Option --cgroup-root now makes sense on dump too * CLOCK_BOOTTIME timer supported Optimizations/improvements: * Output of iptables command leaked into logs for no use * Helper dev environment installation script for Debian * Man-page updated and prettified :) Fixes: * Unmounted binfmt_misc with rules wasn't dumped at all * Malloc() error could result in crash * Device cgroup restore could fail restoring empty record * Some entries in device cgroups were restored twice * Potential crash when dumping cgroup bindmounts * Sign error caused dump to fail on btrfs partitions * Shared mounts with the same mount path failed the dump * Threads were restored with unshared FS (cwd and root) * Shared memory changes tracking disabled (regression found) * Restore of autofs can hang * LSM profile propagation could be lost * Mountpoint with lots of options blocked the dump (too small buffer for parsing) * External slave mount (with external master) blocked the dump * Mounts with STRICTATIME restored with others flags dropped Deprecated: * No reg-file entry for TTYs- Update to criu 2.6: New features: * Ability to leave process stopped after restore * Memory changes tracking for anonymous shared memory * Deprecation option/environment * First error message is reported back via RPC * C/R of More IPCNS sysctls, xIDs of PTYs, TMEM on PPC64LE Optimizations/improvements: * Use service FD for transport sockets on restore * Ability to turn pagemap-cache off (some kernels are buggy) * The criu --help text has become better Fixes: * R/O-mounted root could block the dump * Restore of cgroup.mm.oom_control could fail * Cgroup fs bind mounts were detected with error * Unaligned futex-es in parasite could cause dump to crash * When compiled with gcc-4.9 parasite code crashed * Failure to freeze cgroup didn't result in aborting of dump * Wrong ns list was parsed when dumping userns (invisible since nesting works only for mntns) * Non-inheritable non-tty as stdin caused shell-job restore to erroneously fail Error path in criu dedup could crash Deprecated: * Per-pid rlimit, itimers and posix-timers * Separate image for epoll tfds (target file descriptors)- Update to criu 2.5: New features: * C/R of fs.mqueue.msg*_default sysctls, Unix sockets with overwritten paths, and Link-remap files in removed directories Optimizations/improvements: * Micro-optimization on namespace ID evaluation * Restoring shared files uses one socket instead of per-fd ones * More verbosity when refusing to dump a file descriptor Fixes: * Restore could fail on openat() with ENXIO when multiple mnt namespaces get restored * The criu exec action got broken * Link-remap and ghost files remained on FS after restore failure * TCP window could remain clamped after restore resulting in connection lockup/slowdown * Dump could stuck when injecting a parasite * The --timeout option wasn't taken into account when freezing tasks using freezecg * Race in freezeing/seizing could result in lost tasks * Memory leaks here and there on error paths * Double free in xvstrcat (crash) * VDSO length was mis-calculated * Symlink on --root path could make restore erroneously fail * Potential memory corruption on reading mntns images * When restoring on systems with low pid_max limit restore could fail * RO-protected SysV shmem segments could be restored with PROT_EXEC * File mode of mapped file was evaluated with errors * Restore of cgroups' mem.swappines and ..use_hierarchy blocked sub-groups creation * Impossible to restore cgoup mem.swappines default value * Zombies living in orphan sessions/groups failed the restore- Update to criu 2.4: New features: * Generate core from images * Ability to forcibly drop half-open TCP connections on C/R * Ability to specify cgroup ctls to dump via API Opened/mapped files' mode is compared between dump and restore times * AutoFS mountpoints * New cgroups (perf_event, net_cls, net_prio and pids) * Memcgroup optional properties * Devices cgroup Optimizations/improvements: * Pagemap image entries are cached in memory Fixes: * Configured kmem cgroup limit restore failed * Mem cgroup oom_control * Cgroup's pids.max was not C/R-ed * Failure to write cgroup property was ignored * No init PID in pre-dump action script * Sigactions inheritance didn't work on ARM * Opened "/proc" dir blocked the dump * Working with iptables was racy * Sibling mounts detection error on dump * Devconf accept_redirects devconf could be restored with errors * "All" devconfs could be overridden by "Default" * Name-less unix sockets got auto-bound * Mode was lost for PTY device file on restore * Newer protobuf compilers didn't recognize PB files * External mounts could be remounted with MS_PRIVATE * Build fail on Alpine Linux Deprecated/removed: * Per-pid file locks images * Per-pid fdinfo images * Ancient pagemap/pages images - Enable builds on 32bit ARM- Update to criu 2.3: New features * Ability not to show payload for some objects in CRIT * Pidfile is written at the end of restore * Ability to join existing namespaces on restore * C/R of Data sitting in TTYs, Partially write-protected SysVIPC segments, Debugfs and tracefs mounts, Overmounted tmpfs, IPv6 devconf sysctls, External block devices, Unix sockets with mismatched shutdown state Optimizations/improvements: * Relaxed calculation of AIO ring size * Tree-based search of tasks by real pid * Less mem-to-mem copies on restore * Saner devconf image format * More verbose explanation of why task cannot be seized * PID is printed in PIE logs Fixes: * Too many mmap-ed files blocked the dump * Potential memory corruption when working with IPv6 sockets * Overmounted bind mounts could cause restore to fail * Overmounted bind mounts could result in badly restored mount tree * Incomplete restoration of RO bind mounts options Deprecated/removed: * Greedy mode of pagemap (non-root) caused dump to fail (disabled)- Update to criu 2.2: mostly bugfixes New features: * "Post-resume" added to action scripts * Root task's PID in environment for action scripts * Devconfs drop_gratuitous_arp and drop_unicast_in_l2_multicast * Serial ttys Optimizations/improvements * Lighter link-remaps restore on newer kernels Fixes: * Race when restoring userns vs setting ns' maps * Tasks with zero fds failed the dump * Restore of TCP recv queue could fail due to kernel mem alloc constraints * No errors were written to logs when launching helper (tar/iptables) app in userns restore * User-mode dumped no memory pages sometimes * Bind mounts considered not as bind sometimes * Two mounts in the same directory blocked the dump * Off-by in on /dev/tty{1,63} dumping * Forking of cgroupns task was done with screwed clone flags Deprecated/removed: * Greedy mode of pagemap dumping (on some kernels we do not support user-mode) * Removed the --namespaces option- Update to criu 2.1: New features: * Checking now classifies features to important/extra/experimental * Ability to bring some disk files into images. * C/R of Completed AIO requests and fallback gre and gretap net devices Optimizations/improvements: * Code coverage collecting now works * Use native rtnl library for netlink messages processing * Using --output - now results in stdout as log, not a file with the name "-" * Signals are printed by names in logs Fixes: * Make tar generated tarbal with bad name * CG restore code lacked rollback in some places * Error code from raw syscalls was treated with errors resulting in wrong criu check reports * Dumping task with HUGE amount of file descriptors failed * Task could be stopped after pre-dump if respective option was used * A /proc/pid directory from dead process conflicting with a new alive one could cause dump to fail * Zombie from alien session/process group caused restore to fail * CGroup fs was wrongly mounted in CGNS on restore * Irmap scan was mis-checking devices numbers * Use-after-free in irmap scan * Btrfs bindmounts detection was mistaken due to 'subvol=' options met * Propagation of mountpoint's shared groups was lost for propagated mounts * Unaligned allocations of restore shared memory could result in codedumps when used by futexes * Temporary mountpoints could result in spurious propagations * When aborting the dump criu could crash on use-after-free objects * Locking the network could stuck doing the DNS resolve * Several build fixes Deprecated/removed * The images from criu prior to 0.4 are deprecated * The --namespaces option makes no sense and is also deprecated * The --ms option for check action is deprecated- Update to criu 2.0: New features: * New code layout for sub-projects (e.g. Compel) * Unprivileged dump * Dump/check cpuinfo support for PPC * Explorers for CRIT * Added "post-setup-namespaces" to action scripts * Added timeout for dump procedure (5 sec by default) * Ability to override LSM profile on restore with CLI/RPC option * External bind mounts can be fs-root mounts too * Skip netns' internals on dump and restore (for Docker integration) * Advanced support for external files * More C/R supports Optimizations/improvements: * Align parasite stack on 16 bits for correctness * Compilation with native libc syscall wrappers and helpers * Parasite code injection done via memfd system call * Make vaddr to pfn conversion with one less syscall * CRIT shows device numbers in "maj:min" manner * CRIT shows mmap's status in verbose * Docker files for builds on all supported arches Fixes: * Absent readlink syscall on ARM (use readlinkat instead) could cause dump to fail * Wrong argument to timer_create system call could cause restore to crash * Extra tasks in freeze cgroup caused dump to fail/hand/crash * Unaligned restore-time object allocations caused lock operations to fail * Opened /proc/pid dir of dead task failed the dump * Unaligned stacks caused criu to fail on aarch64 * Changed device numbers on restore side could cause random failures * Fixes in mount points sharing/slavery/propagation restore * Race between mntns creation and fds closing in different tasks could cause restore to fail * Hard kernel limit on TCP repair recv queue restore could cause big queue restore to fail * Unconnected dgram UNIX socket with data lost packets on restore * CRIT didn't show IPC objects * CRIT didn't convert IP addresses in images * Logs from PIE code contained corrupted addresses and sizes * Not loaded netfilter modules could cause dump/restore to stuck on dumping netlink socket * Shared external mounts were restored with error Security: * When checking for namespaces' CRIU entered userns with host creds * Deprecated/removed: * Completely removed 'show' action. Use CRIT instead.- Update to criu 1.8: * Ability to check CRIU features via RPC * Pre-dump and pre-restore action scripts * The "info" action in CRIT showing stats about image file * Python API * C/R of read-only bind mounts, IPv6 routes and iptables rules, ip rules (it ip tool supports such), ignore_routes_with_linkdown netns devconf, empty bridges in netns, FILTER mode of seccomp, and IP_FREEBIND socket option * Lots of fixes, two security fixes Service run as root could allow users to violate ptrace policies Service run as root could give users access to privileged files and directories - Remove superfluous dependencies - Clean up spec file, as systemd and logrotate supports have been officially dropped- update to criu 1.7.1: Fixes in mounts, notifies and userns found while testing openvz - update to criu 1.7.2: Fixes for IPC in userns, venet C/R, socket buffers overflow and unix sockets name off-by-one - Add the package dependency on python-protobuf- Disable systemd service as a temporary workaround for possibile security issues (CVE-2015-5228, CVE-2015-5231, bsc#943105) - Update to criu 1.7: * Improved cgroups management * Support for seccomp strict mode * Support for stream unix sockets inheritance * Support uid/gid-restricted mounts in userns * Support deleted bind-mounts * Ability to specify maximum ghost file size * OverlayFS support * Support relative unix sockets' bind paths * Altivec and PSX support for PPC * Small PIE loader * Temporary proc mountpoint is mounted with nosuid, noexec and nodev * Less memory copies when preparing restorer binary * CRIT action "show" for less keystrokes on common use-case * Fsnotify log messages now use hex everywhere :) * CRIT output doesn't mix fields any more * Many fixes - Drop obsoleted patches: crit-install-prefix.diff lsm-prototype-fix.diff 4c5b23e5-criu.pc.diff- Fix version in criu.pc file. 4c5b23e5-criu.pc.diff- update to version 1.6: * PowerPC 64bit LE support * Makefile.local for 3-rd party build rules * Ability to "enable" filesystem on dump (--enable-fs) * Ability to skip mountpoint on dump (--skip-mnt) * Prepare to deprecate "criu show" command * External mounts auto-detection * /dev/tty (current terminal) support * Netdev and netns (all/default) confs C/R * Images v1.1 with extra magic at head * Support fusectl (only ctl) mountpoint * Sub-version format is now as of git-describe * Apparamor labels C/R support - Fix library path for aarch64 and ppc64le - Fix the prototype for lsm.c (to fix build errors): lsm-prototype-fix.diff - Refreshed crit-install-prefix.diff- update to version 1.5.2: * fix error in mutli-threaded tasks restore with --restore-sibling (Docker and LXC cases) * fix too big RPC messages error for service (and swrk)- Fix build failure on FACTORY due to comment-in-comment in google/protobuf/descriptor.proto - update to version 1.5.1: * fix crash with 4.0 kernel * legalize swrk API and add the ability for inheriting fds via it * cgroup yard destruction and properties restore- update to version 1.5: New features * CRIT tool * ability to request CPU compatibility on instructions level only * C/R of empty AIO rings * more detailed errno report via RPC * per-feature "criu check" * inheriting FDs on restore * ability to automatically move veth device to host-side bridge on netns restore * VT terminals support * more user namespaces C/R stuff See more details at http://criu.org/Releases#v._1.5 - fix installation of crit: crit-install-prefix.diff- update to version 1.4: New features: * Dump and check cpuinfo * Initial support for user namespaces * The docker_cr.sh script for Docker * New API for writing plugins (old one is still possible) * Service workers change their title to better look in ps output * Ability to feed socket for pre-dump and page-server in swrk mode * Page-server can auto-bind its port * Ability to perform several actions during one connection to RPC service * C/R of opened /proc/$pid/foo files of dead tasks * C/R of /dev/console * C/R of virtualized devtmpfs (openvz and future upstream kernels) * C/R of empty mqueue fs (posix message queues) * C/R of shared bind-mounts See more details at http://criu.org/Releases#v._1.4lamb10 1624002057aed00e8602586c739d3167e8a438cc0c24a9561c3.15-bp153.2.3.13.15-bp153.2.3.1debug.build-idaed00e8602586c739d3167e8a438cc0c24a9561cd00e8602586c739d3167e8a438cc0c24a9561c.debugusrlib64libcompel.so.1.0-3.15-bp153.2.3.1.x86_64.debug/usr/lib//usr/lib/debug//usr/lib/debug/.build-id//usr/lib/debug/.build-id/ae//usr/lib/debug/usr//usr/lib/debug/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.opensuse.org/openSUSE:Maintenance:16524/openSUSE_Backports_SLE-15-SP3_Update/f48f9c24cc35888080fd31ed2c085453-criu.openSUSE_Backports_SLE-15-SP3_Updatecpioxz5x86_64-suse-linuxdirectoryELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=aed00e8602586c739d3167e8a438cc0c24a9561c, with debug_info, not strippedPuϏ;%slcriu-debugsource(x86-64)3.15-bp153.2.3.1utf-873c8ffa6fcb8486351decaa36cda65e8600d42d8fe35502314c7cefda7a9ea5a?7zXZ !t/Cr] crt:bLL +m=SuZʟx n%cG o02vtWqhT9:72P [,@G P-\C #=OUe "CK x;q!:nsrnk &j N_h7HhFtLUYҙ/}<ȁ;ͣ~DOը&mI4\8nFM5]J&(Ejڵ}GY*9F*Ϡ2GArx#3и^h{}+հ1m:oʚg n+(i@xlՏǞ&{`\ϡ9TA m5;^<(ҀxƃBHҮ_ݣdx3?ߴ##ސLK[W9I BԷPM*@m)VX}7>H"SZЮ\-m>%]I%?kLRb M#6cSuIڛ2 P% ~sIź!ÊnэQ ̰`?]$e\y*gIHɟ1!QYcNuH"}) s) |д flT-xD(>GQ>+3X6[BEhEѷčT:\p͑m܁ NXt, %f&zlmG2eG܀ܯfy߁9B=RCG3+*~N{Zܒ/U]'y-rS`x#ױsp߇?. ɴ{ކ{)n8b+QRH6yfk[1Bّe:R`B8)÷hj VyOg+Ęz9/rDG!e5W`|hn#ؗ${'H.ɤKA6l*, 5LOTF7"X A{C3p!?ݫ5?QJ .ݼ>0[}s5$ZJ$}>MZ_'re`"c[XyMYJ2a ~km@N>a1.T/; }}BWVUA 6|*8 K- /4!& >$LYq.ZAh{6T M^5-.Џۆ] %Zn+xWu]YFqγA ;d5ϗ$2VIso(H8 W j隚۬V|6DHJ[fT˅ !#Y2g_ԇ.1xgEp8Qm}S*f@@F:&Mx>8#N =^22v=J -d%ep!2#qnzЧxPa&!ΠѪФHdWo` !>2$5Ųw)֥_{ EygC;dR-Al7I}.-H<^`hдO1OJ&ѫpJƓ҂G*AAo/5 faIU`IHfhEJMjHY[݈L>?51KS.I2{"qjK[| /n=Ьsd8>~0XR;nf"k!A~qt#~Y>~kʍyM = 0Zcx1+h_v+ڞ=ȏ<;k(k8Nt y{vݙI42';PߡaՁ]R6`h6æR]b_?q2h5怑}Rrz?0.n^֦vG׽zNo7w}]ڏ[Jv1máDfΕ9+ƆbG^2=L#NtMuCgN̬+k\Rpg)딊fM K R Vr +N8t Zl~94Bf]ijV]KO dzP3>UZ84>U$դ!)Z,%*L4bl7 Cp+WA_Ah Ja?EZ9$J"xR T* @ nƓ4@e`?]faO?ty@1 X=CwOiiU7Fi7[UN18CWbRѾfwNGaO)XW&$-1k(~W2S;2p׮ױVC Z, y nqj/,ӭ1 2|6mwڣ3;LִjEH0v0kys_Oa[[8 -Xg$ֆ}^0Љ-A^/%pǂ|Ifg\X&wMw'I]BW7vG7G-&QJvi|A헑)D cO\o)IDɬ^ ^`ƩXs׭STh]+%\H2oT{S$qNNӪ>{@::r`H,cRQ}J,]/\'mz 38JZLEm4>C:1+\bcUbG'w0D (ퟺ]7\"Ir|,GxZ}5j/{ 'a9C|Y#&\rr}}[<] ٶȗ|:+haEzGłljaWL Y{i␗fk 'ڿ tj77JД>fLX\mtߔnov,6Lfn>ߚw@Ƕj˥U‡0[GRq Rs%"BamA|~yſ_H5yA9ZM*- O-zyֆ鹰?={qU@miOPNÀi{BMzodq"t^T~")'×W6!8Wj3Tb[1r^cgpqT(=C*mljP1i2xk+1b\jO'F*vͅ5wD:{]J2codlFn+ WZ6>EK6Vj;#w#LI{=˜?; .T~5jKԽm1=T39h&\,}x ?JԌ.܆Xu( @_(%h~lB&Ȍ9d''ѡȩ}B.b=o,,S.7tz%>꤁ NI)NՑKmi_y >-c޾Y-bsDdu\(!0/8åSU-ުlaz!Չ: g*81ҩ=e9-&) k9zmJa smNY.`湅^VtMAj^n%aA!-5=̑w+a.r+ݔJ~O(+%vǴ\c2+\\ |o4F顮&E7|M|T٢ò;xh͋Guq >fZ΢9V{axףpWLh!#\k>X^~ ` :pDfrp.?({K6Q=ñf+\w$ӐV) l$>'㍇h"WiElY:Nqn=!év2ˎ3~Vp(o#ƺARy*T.eʜ#gY5.\']9NB]"56038il5WxaM/Y: "{ۤy&w%`ρ7UR5d3\bv~63,cukj#t =TV']V< ;xL=Yշ$C+3! m)!E~+͊.³JxĔ2Z?l rT j!YZ Ujܚm/&Yh:Q@TjByߨJDm8_hblejA[ќ+@Te5CZv^Ul2mѢuj#բ}YTlL|PɰY)(SȔI(hǎŪ}OI0|*&">[`\g?Jv$ # Уأ"-?Hijl"J*=Q tdj^\`d!tj0:* Ic{,6)PiMd'w7A$#%3Li9=uejKoʏPV%_OVD k!r{+Olܩz3d&A7ej!~0b YRfI*s_oy`ʈ;?I78uVMF2 3<;(Xd)!v >"BjyDҙ ,xy"i366-jN|7nU&: 6פ÷:Fm6ϔF ze sO8 pdo9*P* :8iy8Z:I^ߠl"j_fkNLJPΉ?5Zg@`q .dދސǐ1W|Dzhjwtm࿃6+INb0d핦h&z>~\ŠnPA99e:TYA,첁ixߓ4JȈc7 }( pAYa&Mӵ-h~F$'SuB;$FGe,QػT9Dh3qfdc OU\w*`taXv; ?reE}JjNrj&ґ2ERIIE( 9VE<҄Ց6L:{:AhRtjVk@ 72.CD\V % Y2sA|D2/ɩ罦遈5+VU|_tRE%Lo p)qkEZ>jid0M9"g4a"e$:vO |?&ta)pr -о^ FxV Y4[頢,~^\=p@rH3Ereg)<(y(,e!c%)lq8M^:O2}#]B{LJn?2R ]XY[_p=γ'&"3Πŷ: [a``&6w10RS4|~ PځvrnܔBd5Q>&zg1.3#QlGZ^hLƳ-ˍV5B lZ$CK\QG;YȀ8uSų:,Z;x,FRe  ˽fCS|ETLBDź0O^#rhθPcНX5Vx hNu/ IG:hIXqܕxa,40l@Naς UQ懈`316%r'w <Zu %zzfbO>f,;A|֟c0Dl(-9 $n08rz8$GQlQ{}8T_~ De~.?gr)uF3 ^M]'LԁHg':8XO8)2aԅ9Cǹ;ke?x]IHpQPنOidxz Xӗ :0 Rz?uŋ[Jzwu@f}3-VgN}U B9%}YvDH)pOATo^RŌgǨ)}a^Xe@:d?8S/1ЯgdTҠ*>Ao&]Kq.ؿ~G 8Cq65Wry$gPw c2FӌOH^h@O(}Վb% 66͕Zlۚ=#uT (2)64#8;$4k$hs[ڐom;~%b6yf)neHgaٲ9R.0'h-0/ mN r $Ubuw&ӐpgE$ww| nn A%)HN74˾ەhOClʚ@l„ZH, }݅`NqE# ": b^9y7p{gШp1 61`169Zs?0ˮ-6D $rlWuLUEas>$\y{K;]G}},%or7{nԻB]׹wA?Rjfr ӉbPU| ԷgU}᤭ܿp?@NYIX 7z`b3HHڭrMpJ͈S'x d]u~ H7;gu_*R!%͜WvfUj&´Dn%Φ^˜YT7oU@ٷ Ō0Zk"T8 0 mۑĽ8w,N!(枟H5v 2bTeNf .Ο4bĔKF=~y\=.2[o.Gsù1_ij$IsK[9J0׺%# I761/nN"]V$㚃3WPަJ nT>Q" Ӳ\LᐪrUo(Q'uMe1ovp|'$L- (Mmv^m%KsX\aEP#U9@ ^S1[]g~lS. -7":"0E BJ^Im)eIJ!'k01gZ?6ʂ1u/Imw6ⴆhRovOHX ~Xt\EU  BWdѨ^\oP|$@ .mrsy8N%gG`MԺJ?mYaSARq Yn)ʏ]4Uyt ʡoJGl+/ɋGU875~q4y#]#dfexOKfĿG8u!w9*\NkBg5+e|wKU7C^]3u ;AgaucWZt_ދTRfԧ2 η١Eo/8Sqf%MW5ŭXs:c&@=> H^6%?ÿɹ"o[g:3eAq[W*~,` 9J{@Sw{L֬xOs 7%^kM}gظ<ݑ:M,aCGja%QE_"0D)$+['zF\"@kM2  WnAb$oY.t^F/)SN:61쵇c(,xYA$Eٌ:ptA)m8AŬzR*7m1 hC< i86cI;ݬbCՙ -IHNЮ+u?Ud:jo q"ALbK:}Tk%w"PsCtqIOQƅsE,ʗ-M#ғ`~㤞QmI%|SngY8*AuUZp4b`VçHߝ 3,#XspYRxAf;rZ&Y`m%VJ5l !N:IXFn2k0w5kroH*/߀j9!y=ᚓ+Tta/nq+^ 'EН{'ȁO3n QSx3 X%. tYJO*e+t Q$g:{ Sa8C#|{4 ]fٷV,YqJޝ2I>8+X$/Fr٭ x}Zq,d 1Ym/*v CcBv$n*Tкm-B2|~6`c1erI ,Dag gDz[ē/*gj7.q6#vOGjLk!'BE1 r0njPU]X2< ._S EcUSux,8$ym*?(x[!M.h0 X#dyHEjJYgÆt$A;C]D%XY6;*_śǞMfP(3wtjMvHT'5ye^E 6S<2YS6Gt4>9/+A@n8UcPR@3_xIffn8[P[Ty'q )U7tIzH5(N:T}Fr*wW׸2;:~Tוw N^+ Tf}w&Eu.t6 DQ>TTyHaN.=wAz)9{y,_/dڵ/EA"J6.o Zc9&의qOdOiF%ԬY=VR2Z؞m~=L]Z] )֏E7,$ b$,zJw'a>;4X1x1ݻESUz Kak֥M?E[JUL2(Bt;< %_֩M o tඈ\]b欫f!u\Ҥ[%hQ|tA%aȧiyD`EUƓka\mQZB7qO9;K4x)?( ~2 ==ĵTǢ8.Aţܴ?go]p{.6mk(bʑL neȱ1 Qg'ٍJi)rTj z1^7E |;*',~6t)k!)t#%Ù@I*m;(+u^_ žL ࿘"ݝ4=uR(ѫ$HqVN0ÄfZVf|.Y^uS8& UU4/TBM*vʨe#rbO 6E^hXdշޤ~l*#, ߾)Y;a"b)>PT~WNIe>?;2w >AX`l[2RN;@`1RKhy@KombjDZ$o:E97|F+Ax^5X\(<y~~f#+ -Dm߭>q,@qs9jU.\iKDֺ 5cBB!}h.֫su#j/[&glWG?Jj#_]4jG J)` ԳB%+ႂX9T*&ů> mYJOJ?0d!y?DjAS x[oğPCEV`S ,#|q`*8.B~td69B9ؔ?XoF'[VD:ٱ@ Zlz@IuFܬ68pU 0$FΈoBDa-B<Foo!``Cf KIrU}$Ii"}_\VR.*#@T.tTna9gTcp'x}6׺??MJo$jl렵q@iKW$XOCW[)("&f=vpFrX,|/ ZT&kϗ uІ ǖ-f<99UU.<" `mlp6\T,JH-x!F-|; H%]0Ҽ>2$0&.9$96B.S*, v ,>Cm\SCsoV E !%*rfDUdb`~Syǹ?: ˘(w8G66txS}aD|88^]y^'fLm6ٔgZP{b} M @+&j,Uh#t!ݹMJaᐨx?[^;=ʭ_OqMn%4 .4(bὑpɫ@w6x{~4)}"QI~^]ډ/lB(<G xGMؒZ({(=$ŃBqDMդ0LY*jDZ%KYUEǝ呮}4֪ߜʿl`~oPPElΑj| nUb1Z' F![Kf:}rDOxVv8~L4x M'tqCt?sq4zH@юZ> } c],h!D|bសG(y'͍mj^6ů!qoDNTL:cf՜x2[ ЍM_"L/18z4ROgH1~'ߝ|I&o(JT(k%sAvZ:ucc #1ԧ s[t>M6=P>Š^7.iYm6mKYj*[MBg"NjЕUgX7b|O$ٶW/uBteu]Upaf#YUz7BRuoV6tI:@YXbt03Yi'hET,Ȓ=I>>+<-Z=YYaB/?`%% 9uqD$~Y}hSF hmjڟŵI[:l^[z4>!4I;=DѦ%nŷ+W@KH[FrzEMLg#]unĥsL?M_ JYLڍɡ紅7bCKKGy\XݼT^',Ɗ)ӑu )ZlDI hdX26Dt;h[gYzRDux&0l7'SlĿ7)XCg9 A}u["u 7r-o\]bX"\g~܄$Z}c e |[kGUIG VdM!y>LwPXQ91[jP w?ErI1Unjzo )Jih@La{ُF[Ujm *יc%4i$ʽxE$&2>4r6H2BixD+<ՈI 3^hd}w٩#3ALͽqYR)f3KTX Ĥsъ4bJpD8gu!3Oui&+5:;?a1"Ww ;tͭ|G%'ϧ yնxB^1$F5z$)bׁ)BY/!{)Iz;çչzb<'܁-2S\*!szEuxgk7oO q$GΥ$S퇖y,moJgg[E T!e;96ZNm]k͘(>^;tw[0N' ?Z'ڻ|w͙:~c.b81{fR DЉUdJz!Duzл5)9=wѕZ%C2DO-6t@-ԒVڸ}ҥ;*}J"UB')cwAWdrzs ^_h-w/T2-t8տڽC%xdlPq1%RS~)T.`[c6zD* VOJUJ"-ˆ zL=nfq02t[V0Í9" :SJN)(5wt_ҟE\v?rZ<`ӨvZ&tWT}1,bn3Al\'Q?m"$P[DK 7c)S=ɘfaS3оl@bun,[]LVI3_GH,a^bx{]k>Wf\n&/4q+qI HHlK^*ww4j7^<;a> ȧtYr7rZ^c Ojijg:}3ʔƃ$V{9Zwxɨb^as=N1Lo5xbIfQ 'y,gS>!m[GqWZn.s%τǫLŐOw~M!ٚB"<#gX;cX̗NduVf`H7{NfLs /Gt[n'w_\Rr`K6BO`%{-@(ͅJ)0].O҆Ҕ8JVI #~!2:~qQA =WQo?B @kwqΒ;˷9L9$}k#@B/^q9~^׭0U,X9krltC/[%um4"kBx{'ԝ6,rlD/}$PL0gU;Vͥ̇!?eSsϕ5p1vdFD8U,xPڬV2NuH"_AKJ Xӈ6 / n..+ *kkG42-upuLϠ~y' ֙@Kj1!%AJf(KN8%wH><[ 8KӡJ>Z|nP#f(?y@@]-' FcFqSʐL#$IepOcļOzl8Y3rR?6!Lp.Sey/= 1kKj2As&hK!»Su啀 mq~"3ݤhpW-_(m7[frwLau5hpb*%!>r} wX,RZ%]+Hdҕm.}\>~,K4J|60Aiఆ0 Wf$ +bYhEJ^ R' Rz 9;\V߳Va2&|: >wbãl̋9EvOdWs,Sl+"E{W!IXdbvS  )&=!6Z2Mark.m@( ɼ*47SgDh_&FEIË}(ǪHp}0)|Z =]|-4R,et8>AL܂tm;LB?>z:?Яdd(+Ǿ( '^_hE˶|=G6[ Njah?&=e{t_m"qp_6DS&Wam/\/h)ߤ4X} EȴgOM}o5!K(މgqQB/ۻlJEmH7VۃK@}:=qC3/$+Z*OqJ"CYHEO6g&Ew]=Be#h}H7UVmrspn,&j;۔m+>#弅Bϧo\R'd~;lwN/46K &CIE? ÉUz\3wR"IU4X(ҘmG"]Rp>D»!:}ADDtnTR/b{p\iLQQ2Ӵ~"gh,h ].B$v$ ^bC)R[P?'>.6zc_(,3C=+ {?~o>^Zna(_dW5}ϹslՕ͘]~Dire:# q|p1Í'꩒&pc5':n̑'0O_mѶܘWQh(0?1MmFw:I)2kf&{mUO2˜bϭZurtt!a_/:|#Hϥ3_ڑV6zW-yEp~Uz+Ӵʼn%p!|dE /7KzQ#*jX?,,@PܒP]zcL̎JBoY Ip]VlGo2sVX FAdp ) d>ڕX9Q$Tqa P2Got1*C&z~c b1@H򞋹ErHzeMEFBG^\vσp=LeM2YNlVH&z;q!F Nzά{E+|{65Ntd`f키,']cq|NBf<P̨9;@b[VtV!N==uԻw,D\Ys.h6Ig`Z_ۂ"f|2gI-]{n؃kOKĩfpQ25Aoy؂;mV pc2yӻwŊ֍}G=Cm 82 Il" BbW&p,7K'ep\#IB*™Ȟ]!J{W8e\C ^%ydG j@|Jw !8x .@ LGy/}mr˝l̴ԫ܇"iR>] tιWҴіYDy-,]%MYV A#bSJJ5|{R0zpXN,u2viMv3;ݝkȈ DCj=;b7{*zb'oL[iuZc 67XbW2?̔ӲLV*Wp ҷ涟$i eθtE6J%gWVO'xi%Ift!AgVSr6p ]Rț靦ۃ7dY CT6yM! >_M\ :(f ;+_&;ְNrLJO/'Xoa"2+N#jY ^!t+C^o-}eD$[C>:2Y@(hLſ0i@FqBsJA*շC R]B S񙲔1iС4ul1!o}{)۲I ~R7UX5|HZc+/E!jg7d򪕲.}*YCB>o2X!eb頋rxLāሆK2xm:l)34~@{4z3KEtY0˸Z4~@([%G Q3֎̢TJ.$o.o(I%1XsR.勞FcmTg0Џ (IK4l9:R5J ~*ks{VijFuNmEUiw7BfAim0v{,'yU$_^*W;_.fyP |XNoj/bh='l'H wzunԒX-EKxkfH&Dfr_=GI0RG^YaFHVEv+|>0﫵;џ9z~WQ<뤳@x]lRSfTР8JdG61)XKmFC Z0Rs)}⑞|Vqe~uP ,JhNA2/WvoD6UL] .Jh-A߯)y)w&幞H6nW$Zx9}a`# q*e692:BקP0(X]k@F+ jDQ1C'6Dps&KD#yE5mB}>87[ݒ]mB=th~j؇;`*XRj%E|.AKfu)0NvU7lDtYև9XH~F?5a)]*)jev96xMAY'xG_%uϷ͙Q2oOM`u[УpfW>{\U`.h.q \m 44S؀iI6izԹ0+< oo!_ѯ:v}6R z$c}ໞ`U 1dRHFc:/v?e&n^y.!@`J>M=~UNVUU?#7f/VӁ.I^{ 6%-@n{|O%&\AwzWګ1˳ 7FR8? M Qa`TXWBfB)^nLKgsoP[k.&@ W@˰b+`? lgQ,k^>#FךMY (N|wC(f+ JC\a@V KYΌ}gEJ,v=D}1s ٧+j{P&ol<XL khu!(ğŲ~\M=o 3k=ps$ϳ[FFTq /;I1*A(-ly_EMv eKgl,}^ !HVU{&eI0R~Rz_뵜ld<Ԯk-vd߰Q<` MI;P[[:;qF$,*{|XLh)A˪:҄`Qr{jZZ:ց-`>̈w ]{CW21'z󐐆6HOPkꘋ@f1W "'"GJyg:8Lb6Ez&9V"em%`2tGAG]ɔ`I+o^6,ou!T$|+CL}!N$sNq}tz 6b>C FjFVVmAJ=6$X# ySmeɒ}uiOq ?MA|8<ֲcO{/,| WW!r=0GQL)|I޿o"6[̓*l$?%՗SyKϔit垄u";hKvng"Է0Ԩvǎqu{tcZ%^PsL<ͼ_0Ա?Լk >S_F|7O[Wzd5yӌРڵ ;-Th> u'酗s//*.Fg.q] Q)?JuYM׋VdqL©>o:rg}cߎ pi~ (4Չ@esd[: (FZ+VeOfh88#ZȚ%R1@A1+5a!G\5.7!F!\2!_UG&k l='m20fb G; Gve@2#(܋ =Y_m_LL6+:ENҙs,5` `6I@`z",ZOʼ^6Sr/HZnI]}u;K-2Es ׇnHNiE4 lwEi[eGw#D \2\&^AsYcW<+L/22Oa+~dpn3^(ǎ6jFtE!`N:wOeQBu ^N=Ce\~ˁYVRke_ G(),>~<`5|]P5bE+FggT8'vj(@?*P&w>8!qo7Ōf,/Òtq?%Hh{4MEM?*6[Aq?gOq5>f aM?%1BBQ-O?k|Ph,>E/o3 zޑ{5Nd@ds=Ccݮ3c}ʪa4}x]t}MMT3n_OFm[&9LF77YT$ֺ6[Ñ*'ϫԑMP:a>1 d}kcI8Pu9>;}R|gȒ^eAB_ jA5x eװu{T+%Ooft>UK0.n,Ss$6b)yp^ؼZfpF]py|xy=R2EHW +g9!ܯD#!KX=PeʒZ@{P gph׽B9$3ڈLaXTV8.,dSf q5lOay/ BJf>@ :ZGɤ ljejot:}@OH0hc{/қ*Mn$:b+<5y=vL([I& h쑌3Uc Ӈ|*3$e]Vqw9&`;.ȲTyGJ{d+_μȪ\0zxFt1u -n+im} V&?D_\%?g2}Mʾƌj̲V2aȞziK1.Ńh_#y&.ˇVDB=`^ɪ(ȐX wEC![Z4wY"/i̭m:y6jq"c-4 Rƿ7%ed>G J@=c(x.G58n j77*OO :Ea!MC8Uai$h=}>M\Fm"5!S50\rGMF,Ab 8ہMjPk\#.B*:zU)ч:|/;y!~ҝ!c6Wz02JJ$Ϲnu0qF*$I ?TǫS;@T?編j$uV!(^{[)o\LqKն)[D& nME5!^4!Ӵgo8}bsIu2]s91QD25Mvm6!! {WkGHZd{7}ՏEw; o$sq8{ԋOd؄zMvC YAvLH~ƺ.8o4JQ_qnA*]J޿Ocش;!8Sfs'UƂ;J[ȵ=/_.!t® 3V[Pp0۲lY{g lܵ*hk҄|IDKJvrayТmkګd(8^[@mĈܽ{ IFޕc3jIwƹUJ ,l ?>^4Po ܗ"< G.v77tEfl_ǝކWw\LDt'yƛnlBEx1܇pa K+TE0z`̯š-6ndv2JUqTTN+T Vam4*@7) LrS79|ru@ tB|"1H-DYHA>дBxW@l7{;`[j#7dy| t׆drkrXO[` h^܂gcKP&KHt1!f3Qk^x%$?NLih9[{ iody͠gK^UA(n{-L9|d o^0I ް9VZ)G>i ։3ɧdlrAOYd(v"ߒs.3$Wq7PAvijH'"-'Љ*q$e4moA˖{oՎgThJz pbfsK6i!Hi#\,)Ơ<2 蓫Nx9=>aoxglQ 3x~ p=zk|\%d 4gx5!;̰^b˘!VIlR@,JpGCHy~7)&a}99VZb(rUnNi_ _lŶDt '`p`3CBN)9ϲκ[͛ Z7c?f۾_p/U2c#1o9>VMZ2\slUgJt>0WpJoCY\zGh5R*&UǠp<*o#^w= qo^T~9o*7}챿i #B[jXm(jK5F9 X\`.C7HI RvK)sv"-c&분r5կ]V( Q&)w[V\F DGf]dSPU9^/\ (Q"Fdf vEڀ"ާ,̎ds7A6u.zRm#[6[Uv2cNun:%oo ѡ혡Oo| m\6zɟ* Nr(怮/p3: OEȍ 4}ZtA|c)?g۵CGͪݰ5 5P)@vsȗp|:p$tyr.nt7֌JK&HgSw ` { 2pm_6}3;/#*)Abr332OEqZPXO&X!/8&ȓryQUB_ixPa}["2~L| #F.?WǺ]/fo_~{ߐ\CRՈ'O E|qh4 /ZVVi~-QA2ؼ]~) RSK1FZ|WcPH`wgpyJ<)A&wVp9m*|h5R(R2s-Ӭa3?vZO~.2A.|*yst*`j;Ѿ.jW.= ""u^"v;}ђ P' x 1-[N\VGA-T~ՑDe{;s_~^ .e]/W]W3z9l9"-$ZDJ(%QN5/T׿RpE}# *"R>D_j&O BF?! pT8˸rmȃՊ[gD5GEz1F2G2 4V9QDv>֒13'HV}B%غoX M^zdbA7RO[V 1n}XSf#傿8;S3,&yWvm x?M AwmZe4 y qd5gV@p m zJ Kp,D2PN]iWyjŏA<|V BHxXf*ey V'gȝf 3hѐK2;SI6w{cjQ= ؏bn2!/%!p etv/zMD䞽@St, [Ȃr . CsB|(/[Ya$7ytsm4tii܈89w.s*Neh4H}Z*$bW*WmUd_]u4XݤÖ5_t Uɫ`& TLi[w(z_YJ|tNi j+'bZ i$C%֎4)W$1p%N{G"iE3%XCm B, CcIDI=ʇ|5@ zsn(EmMxp>ɀn@ C>dг5%CSPp tG0C%;N^Z"v->&?h1B)F f041ht v` Ȯ skfֲ&(JxQa &RqPl&Y.7wR[B+0-SKMܬi8m3][l3" 2Lp |43˞|:|W%?ݨ-Y>-Te:1UD Ahİ"8) YZ