criu-devel-3.8.1-lp150.1.1 >  A Zʓd/=„35/~g&xjqQW!e(²LITccUib&BXDxc~y_ApxNRRc8e/2y@#xaM3A)/[PIk?0΄v*f~o9 ?1P++2d?,w/I0fUZfo|=kF@bA#%dˍ4;0 ay}O*0Xb636dcdf9536ca5d5e2053ce611583e4378bbf8fb2f08cf9a1ba5e98c863fbfb584c99f3e9c44cf9b8ffd544574b02b399362f4f8Zʓd/=„Q͋gP(^L eHF=4ܽfБސMM.!*+#,h-Xmڏ)Dr x :OW-ŢF0+un!Q|**`+ =|d,^c#_v]G6^_8(LǠm~EO: (k@8"wF:cԪ}\%1N7n]}7>ɖQm#[TOqm1pt<>p>?d   S  @RX`0 0 0 0 0  P0  0`0P0@`0 Pp(188191:1FG 0H0I0XY\0]0^ bc0deflu0vhw0xd0y$z,<@FCcriu-devel3.8.1lp150.1.1Include Files and Libraries mandatory for DevelopmentThis package contains all necessary include files and libraries needed to develop applications with CRIU library.ZʓWbuild77XopenSUSE Leap 15.0openSUSELGPL-2.1-or-laterhttps://bugs.opensuse.orgDevelopment/Libraries/C and C++https://criu.org/linuxx86_64 1x M-' CG2b2|T\"MAA큤AA큤A큤A큤A큤A큤ZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓRZʓQZʓQZʓQZʓQZʓQZʓRZʓQZʓQ9d9aecdb3029c85f0de1c5fc753574891911a63e6ffb66627ec65682a020b50d265221afda0d103702714dd51ed9bacc764fee2c68a604790a6bf898bb86d9a8dc0a7a474154176fa4adc8330311c255d5ad3461ec0e270102cb46e0c3182730295a459cf9f773d152d7278e45f60b4ad4a7f044da7129ff3d86725d43c3480f8472881fb6a0fd59195a3c55ef0ae159dcaf003846b3a762ba84c6a2f3d509c27c6ff9e7284d1f62bb962c279151e0eeb243d8819af955a6e0126cc975b2f160a38788b860d0ab6e5f62f794299bd0e4ea60e811f1025425edccf99e5767db34f541d18e562818fe710fc1e0519ae0ad45450f5072ba7c2e35fbcf7d0016bc960baedf21332d92c0d316de668d30eefe5a3afaca5a6cb501f478e0728ca4163e38ba6728bc25a37941d355a5de28ef7842587f5c7420a34332b259ef8477a416612714735a724a9429be73ff83985b7b85b45df59d15e91ad9fe1c9eb3dba1d567ee29e0a7cf6aae5e8005535e49b2f22941a2702c64a53aa31c52ed594a92f2a83402ef11ed7d44653eb05a68664c2e80597a6642a1de0a7c8800061e9d55f7304fe8a65bd13e7a8baca89e3b3eaff44781ff9976939a0fce66a1aba21fab46591c4db5bc08cae6e305f075f91dbfb407357cbfc34693355c6a6e8dc996f974cb28280ef902999d3e9ac54fadf0c2f19309fcd1f26977db3ea7dfa5adbc07436f15b3b8a4a22d03ae37f24482eeed293f8e05589098743f79d7d7bb4409c8855d34972c0fcb88f9f6edb709f6b72ee016df295876e139a6b8a17953c43ff80d3cd6f2c1ac47173bb1ebc74fc2c42d4881b50b53959d592275a3ae7bfc1818b6d580efc2ed5a994cc033a728c0dcdb529f833e6249160f5685c946d4eca8dca38d6a0d99e78f2622aa1222a47172ce293f34d43759bd1c50bcdf7ae78c34a66da62e274587569b6345ac58b41fd9b2caaa086854e32c083c640a8a610a123ed4aad8efa7ee010ff56042a25f85e4e4ecc5f8063c26701a23ecadd9f5381c1da260f3506a5a25c3da9d1a945f132b787b2b006835e4040a3d329de0f59d430dfdee5f2e0e5a60d15f229ae97b64017d9366bee244aae087293776c8e93b18bd6d0f0925363ba5676e76fc11f997266874b71d51db7aa14671ce194664f5710b9418884e9d79a590a6c68b43b4473ad5b4b8c621c7710606de41fe8c9b8e21602f677342c4f85a03a433ab8bafcd4d9e0b654b85cd7455204df59db49eafcf66aee0f86093d6c8c75d088ada5901c4e5e827f53ead8b80ba34a5bbc992c0c4b2175b8988e1584548b52361e62034f6ac7819fae6b72f161b75bede567ac82077e596e7b6116e57d516198f228e15dcf3c0a363937adc27644398a9f16c4c42b1d3c65d08349643f876af847083183866af1c90708a213526541b901ab3176474cc46e5e289f5392ecadd4b5e334ab7b5e17b5e247f738ebb1e0c9f9e9c8506afcc1ce61697c85c5db35364c3d3619cd0a0a26b37870818d86c493a51d7d26c3b20040e01c2bad04680197e810edf98de3992fa2452f3b4bd33eea8cf6f38428e390aaac8969d7aab3571c9d003eea89be58bf071036f53f0f4397f6085643e95df3fc8575ec36f3a1bb299ba6c640dac0145a90fbd45c5ce500bacd3996f0012dc10c803f26350de49f8e529eb3cc2cbf70d3ba35c24c03f606dc1ceedff9d161flibcompel.so.1.0libcriu.so.1.0rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootcriu-3.8.1-lp150.1.1.src.rpmcriu-develcriu-devel(x86-64)pkgconfig(criu)@    /usr/bin/pkg-configglibc-devellibcompel1libcriu1rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.8.13.8.13.0.4-14.6.0-14.0-15.2-14.14.1ZZZ@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@TT@S@ShSS @RRa@R=RR;RcR)QکQtiwai@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.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.de- 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.4- update to version 1.3.1, a stable releasing fixing below: * Sibling restore mode didn't set up CRIU signals properly * Unpredictable sibling/child root task restore. Fixed with explicit CLI option * Validation for leaf mount points was skipped * Mount options were corrupted on dump, which resulted in errors bind mounts detection- update to version 1.3: * Docker and LXC support, lots of bug fixes - cleanup spec file, fix rpmlint warnings- Update to version 1.3-rc2: * external bind mounts and tasks-to-cgroups bindings * many bugfixes in memory restore and mounpoints dump- Update to version 1.3-rc1: New features: * AArch64 * Multiple mount namespaces * FPU state restore control Restore old FPU state on newer CPUs Ability to ignore FPU restoration * Support stopped multi-threaded tasks * CRIU now can execv() other binary right after restore is complete * Inode-revese mapping can be enforced to allow live-migration with FS copying * Gold linker can now be used to compile CRIU * "Berserker" test to check CRIU scalability * Punch pages from mem images on restore (optimizes live-migration) Optimizations: * Batched deduplication of memory images * Packed rlimits into core image * Packed timers into core image Fixes: * Bad checks for kcmp() ret codes resulted in errors in file sharing detection * Multiple mmap-s of same files with different flags blocked the restore * Integer overflow in huge mapping restore caused restoration failure * Devpts's newinstance option was lost during dump * Subsequent dump could try to find old mem dump for newly forked task * Bad detection of overmounted mountpoints on fsnotify restore * Page-server could read partial message and failed * Errors in dumping of two subsequent anon vmas in some cases * Irmap mis-compared devices for disk FS-s * TMPFS handles always change during dump/restore * Pre-dump sometimes hangs on FIFO-s * Post-restore script fails too late (if does it)- Run spec-cleaner, nothing more than that.- Update to version 1.2: New features: * Performance improvements * Library versioning * RPC API got closer to CLI * New "post-restore" call in action scripts * Logrotate rules file * Default log file for service when starting via systemd Bug fixes: * A lot for ARM cross-compile * Fsnotifies dumping didn't work on NFS * Images auto-deduplication only worked one level up * Packet socket ID was treated as file-descriptor and close()-d * Badly counted pages stats on restore * Linked remap name conflict when dump and restore on NFS * Sporadic failures in memory draining due to huge pipes used * Broken criu show of repeated fields * Failure to open mountpoint in foreign pid namespace * Unlinked bound unix socket dump error * Small memory leak when writing to incremental image(s) * Restoring fsnotify for links results in ELOOP * Host's PATH is not suitable when execv-ing tar/ip/iptable to restore namespace (workaround, proper fix will be in 1.3) * Using subdirs in log file name via RPC breaks security - New subpackages: libcriu1 and criu-devel - Remove obsoleted always-define-ptrace_peeksiginfo_args.diff- Update to version 1.1: BUGs fixed, * Errors from memory dumping are not handled resulting in corrupted dumps * EOF detection in stacked images is done with error * Stacked images don't work on non-shared FS (missing pagemap-s)- Update to version 1.1-rc2: Bugs fixed, * Crash in criu check * RPC check always fail on 3.11 kernel * Failed fork() didn't abort restore * Dump fail not reported via RPC * RPC client disconnect wasn't handled * Page server could connect to self for writing images * Hang on pre-dumping task livig in net-namespace * VDSO page mis-handle on pre-dump * FPU state loss on pre-dump * Memory tracking turns ON w/o request * Various fixes (and improvements) in build system - Fix missing struct ptrace_peeksiginfo_args on FACTORY: always-define-ptrace_peeksiginfo_args.diff- Update to version 1.1-rc1: New features: * libcriu.so -- wrapper library for RPC clients * new plugins: external unix sockets, external bind mounts, external net devices and unknown file types * Images deduplication in incremental dumps * Integration with systemd * Filtering of criu show output Bug fixes: * Errors in unlinked files/sockets detection on BTRFS * NFS silly-rename files are not treated as unlinked * Freezer fail to seize quickly forking/pthread_create-ing tasks * Extra stop signal queued for stopped tasks after pre-dump * Wrong dying task state detection * Lost RPC dump response * Crash when reporting restore error via RPC * Negative return code into shell * Tasks left in wrong states after failed dump * A little bit more verbose check action * Coverity checks fail here and there - Drop obsoleted criu-fix-PTRACE_LISTEN-define.diff- Fix rpm group tag to System/Console- updated to version 1.0 * New features: - W option to specify working dir CHECK request in RPC Optimized headers More info in logs about undumpable files More comments about tricky dump/restore places Generic memory allocation for restorer * Bugfixes After --leave-running linked remaps were not cleaned TCP was left locked after --leave-running Weak criteria in memory COW detection Private mapping's premmapped address overwrote file ID Restorer memory could overlap with timers/signals arrays RPC worker reused options from service task Suboptimal memory utilization by restorer arguments TCP unsent/unacked data boundary was lost Wrong dev_t decoding on 64 bit Unpredictable daemons (service and page-service) working dir Parasite stack could be corrupted by its arguments Error from exe link restore was ignored Artificial small limit on the number of shared memory segments to restore Bug in ARM VFP restore VDSO proxy was unmapped at the very end of restore- updated to version 0.8: * New features: RPC service Ability to work from non-root user (via +s bit) Handle stopped tasks Restore tasks' root path Dump and restore net ns iptables configuration (w/o conntracks) Support for external net devices in netns (e.g. openvz venet) Support CORK and NODELAY TCP options SEQPACKET unix sockets support * Fixes and improvements Unload restorer blob after restore Fixes and enhancements in criu show Fix in unsorted inotify wd restoring Fixed trimmed messages in parasite transport Fine-grained pgrps restore Fix in large TCP buffers restore Fixed buffer overflow in IPC ns dumping Fix in early page server connection close on pre-dump Fixed race in handling aborted parasite blob Fixed lost unmapped criu vmas in restore Fixes in parsing devices in /proc/pid/maps and /proc/locks Fixed snd/rcv buf sockoptions restore Enhanced logging in parasite- updated to version 0.7: * TUN devices support (requires patched kernel) * Alternative stack (sigaltstack) C/R * Shared and master/slave mounts support * Restore statistics * Net device address C/R * Safer and simpler asynchronous parasite * Fixes in: - Stack guard page dump/restore - Page server communications - COW mappings restore - Zombies restore - Aborting failed restore - TCP connection restore (some require patched kernel) - Semi-closed Unix sockets with data dump/restore - Fix build error on FACTORY due to redefinition of PTRACE_LISTEN: criu-fix-PTRACE_LISTEN-define.diff- updated to version 0.6: * Cross-compiling support * Ready to accept images from OpenVZ RHEL6-based kernel * Posix CPU timers C/R * Asynchronous parasite * Memory changes tracking (requires patched kernel) * Dump statistics * Return-arg for remote syscalls execution * Improved "show" output * Opened /proc/PID/ns/* files C/R * Daemon mode for page-server * Build-time features test (makes it possible to build on different distros)- initial version: 0.5build77 1523225431  !"#$%&'()*+,-./03.8.1-lp150.1.13.8.1-lp150.1.13.8.1 compelasmbreakpoints.hcpu.hfpu.hinfect-types.hprocessor-flags.hsigframe.hcommonasmcompiler.hcompel.hcpu.hhandle-elf.hinfect-rpc.hinfect-util.hinfect.hksigset.hlog.hloglevels.hpluginsplugins.hplugin-fds.hshmem.hstdstd.hasmsyscall-types.hfds.hinfect.hlog.hstring.hsyscall-64.hsyscall-codes-64.hsyscall-codes.hsyscall-types.hsyscall.hptrace.hsigframe-common.htask-state.hcriucriu-log.hcriu-plugin.hcriu.hrpc.protolibcompel.solibcriu.socriu.pc/usr/include//usr/include/compel//usr/include/compel/asm//usr/include/compel/common//usr/include/compel/plugins//usr/include/compel/plugins/std//usr/include/compel/plugins/std/asm//usr/include/criu//usr/lib64//usr/lib64/pkgconfig/-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:Leap:15.0/standard/b40d6995854423ba93cd05772e87444d-criucpioxz5x86_64-suse-linuxdirectoryC source, ASCII textASCII textpkgconfig filePR(L 򋔻* utf-832f6de839ed1b2440748fe568c928fa3d741f84ead615442eff05a1211b3b782? 7zXZ !t/t;PT] crt:bLL ~&bW;XD@,T -1^mvm]ejjOvgfduYeh7=ÉސiL8/!$IҸDR̚?yr[=IT`TcFG(x"-|*:,5c\tRZm(L~-a1  &ٙ[t;CK" .URE1J-%FaUzkTkdyƒ쥈Zp4 >=MY#聿5):>ld^>rp 'n2d׽zG|gNw$8T簽ܩS.$"<ηL"QsXH*02fx y_g }yQ(q4x<`zh&j:F| g=)S:g{'eդqdžZH?ߞdBXà|"p9Ԇ]a/tz;LJ}_{ :@REXL=U"M"0: "uVGhB9~9//`kStΗ0 iJq\@lS$=/a:AӻP?w/;}pj )YnG1~ZeDx4c8K1f)QGTrUU 18u酈X`s=23p6uҤ=]og.``0̆ٷZdr 6k;1g%Jw zڲWd E@M r+5D=6˞KDoo'=l`Lȕ.~ >[4AlGTeCM8J-);/J8%`Vw w|*B|sDgtY@0"Cc~e2!^%>/HyŬ4v]P<%3OmE`&|V]ŃK`'Xxo{fl9V|܉QYaO+I5ϱdT,.FD=dw,e^0Xk?ZپufهVpF7ѽp%^[ !r'J FW ؤdA=W~De'K6UPN^F:d7y_TŬj$v+\arA_3R-ћd/v 8 .rFn{%c9CGAVGnӈ8hRV~\ h@@)84K|UViLS6K˄ 3%=1uviϩQӼDط{hӰOr߄UtqZCL2N$unģ-`riKkd t.sﶴ$WFYl"sB_ĝͻ.s_ě`y}F`!|~$~ՃnT|y?ՈWW 2/8]Ki zf5.Vl?;Eذd~ʟp;2b6w1xYXBtYUڗ(@쭨͓_~b4\H@pP]dOou%Cn$!]8_ӎ r-)kk$ riƾ!0mV%dRQU'LH{iא;u/1a1K"ILBxxQZIWt eKAiag_YV䡔Ɍ:}p!Uvۗ MɒEj;./X#ӈ7* }hUo'`?ݠ|Y, 鏮ѹ);M mX.7p~&iji2_|E3#_̑y&/?n֨{7R wt@ QubJ6A(fP_ɏ5taŏZ2Bd}Sǖ$J,B;볩_G9&w)"'}_78rؼT Q.1;Qi/XT}XIH"[zLk8G*Ǥ6W)J9w}f* syzHn Z0SE7D\GWĊцt%]+! 3~w[x ]FKr3WekdBi y fNHhm\њΤ#׾Ww&>i[ƟD%;G4&tC$.}$Wj ]`j0Aa [ w) 0\.9m ꆓ^?/ 7T4gVO~Jh}Dap}߉#fCNLfab$UŒ̠BEN%s=DG\@jA%0dtɋ{`&0OGVST:SsD`I?]"($X~7! ND_dgt/ܩװWŠR J_?{ ͓nIl +ڏ_Ne:3<#o' hh|[3mf|)ZA^ Z<7J:?r34:LPíQ{#FL!&;ڹA2 їMbj[o +S7Kg%$7O94 fʂ4]z)Bnk{KUzs[`.LaAr@9ˏ~4wY&:$rzsȪް#%s׉\ xeOS Us+v;r!W\̶|X#k s.>b9sKSILba)"=*ukسTɳMA N]V:>7mkfE}Ƃ7/RfZ'+R߮9\ʈbiwc**wkͶSR0# !N5ƞRfyitrJƏvO{HĦV15CNœs@!ad\JZ*h, _ TCܱZjA$܊4qsB-.kwf:aP^iƊ{ߑ4"HT׷>l`Ŷ*UB#\$]NI.6xnh-/eb 𥰉&9pYL˩Q@K0hK{`ʥӁ[aӹ'k }}GoG@G+4  Z>%M XIz >ۄX]K.el?=Yf>v2#zY^4.GgN %vE*o9SI *4VrGN}]^ـ%şk2O(;cnj ,z1GNM\;?f+x .nB-B׺o %nI TCrUm5m6t2mǶ:%RJ.1 n*hKTbO+xZgx!=Bzo k 1im 7ퟅ'T/{inXQWVZӋetcՓW./#()671W~uy=-,}L^ɫ'w7y).:nqE~FODt+YtXqCl4X㲩}rոrm vVo;l+^r!di6Wb\ ^!SӦvrEۜz2\YVZM_P"ڵRIӹ T"Wi4AFweNҭ/ɫBRcB><tKa'm]1F}k>8^@Ƙ̥Kn ԀsloF| k;$YTQ5'* Cg,cLaq6[L>%ǁ2go77(9xڢdgViInD%;FtjpԾ34wu-+9GMy -}ffE{ʸV! ᡅWAԺr67r6Cgˠz{Y)mkt`j@M j^,$u `V_8yi@cV eZ̴\VnN5h9:vMʭ'n&IRvO;- 㩲9\' KEɝ%1&Wrg ]q-wW;L'/Vt O]qJONp&UαjE-LS$AꜦ '#c/lb+" 򹍳e Nb_|e *YEQ/Ewtw9#अ{_"PavߟFauRA݌g;k`1RUcCe৊@28pT :$ xi kk۲.t5ͽ9٩e Z?3[ u&}ķ,fj5c QĦ &ppǝu%>ʼ9 |Qc;9kQZ{w3M9%6i5%#Mo 6e\${f fME * *F푪>ɺƇj=)ڧlB4 $y`56v صU.3AH+@E:99>IiiRwBwsQZe+ds(u5~`v^L~-K s'2Nrط1 +fzx2˰Cegcp׭dwQ *MHw2~;=R%BӢH[0~mgLڍuHfTNטȫ5 6ٻWlI_Pz)Mu N li CNXA zG(fKGg}dR^z# +S!){QuwbfrK߽klz>N~I,ڢ:E2V y{ԩm ^QG+q /`N`RA#ʜK?#Zc_'u:R_LZ-iZH~eF.!6"^V3RS`ŖS^ϴ@ Z7&Fz5"*lVۣFj"\L]*xЮ* .X~AL~dS.),O"&CS"ğU3 R[`|mfqnJ6怬[0 )zK.i*%אwݵK1oI H%fO׀s.e6x.ԁAnkAj/uc%ۂx ʞB63NBuV®GoE@DDh kupʫTZY铎x,(eCU$X;JBh 4p1Q!2 XG:bg s8k|v|;i !&[ &+,HÜ{ kе9Dd80_vBr0M P;3.%Yy/;XQ$5(="r3I(9tR!{ja i^J0^ `4gM/m9] uͧW-.jlFf$xt|=xc ^ .w^bB}#[ayYgstwAJ)J*=d8oN8(eF> 2ߋFӴV$B|O`HJ [c1u }_ 1fr4$t!(HП$x$'C5CGGUb>+*Fkkm݆-F 2`K^+Hȟlvt Pq$H5EZ;+ F ~J6kOTgaNС^ X L t;/ȴ1QX2fTQd;Ԩ)說Wo#Qlfl4In"ּau06@&7Avy >|6"5ճ]~Yt!r`]v"/?5~Y}5'*H pƊ ߢO]HA"o! Z" xtH/dj7+2P҄;ḩWp䢥.ŠS^,h&K3-BӫTXVC!Eeo!z)w:aIn_ahMR(PnȑuZpT噇ֹ-V[RE/"]ZC|JQK {ʓsx(8u}"/:) Kj}D! o>ߥNLj[AcǾֱX1fsqYQUo[T7t"9QԾP뵾w5/g7" pÜ.9Q^E*5zGnhU筽ف"-tT* 4g~Tu3OUEM7:; ѷn`4c/B hy5Bqsqs!{Iq!V+n$$uX".+iE=!a@1)S+qSOE^-,r[!i$ݩ1K/ ?*UlWh4TJCr;LM+HH튈݀F 4}I!UM=[\C||6qez_/ b'Xb֧3B-\Vq%F[o8]D27$bۗG(vi:T/JCP>(zt7LPVp B'sMU'>/Cc{I:p>/O|}cKkϊCON5k)'õVwUI9)"*` Z$ʏ% S-G`T1C CKC EXo +9N@g@X4%ʔ`4&t`E@&L.@ۣFV%W|~Fl#鵤ta~yX_5llzPZF WY=@ A(#1}^YFTD$%Ruxb2y#.(̬`[dčW#i^_eڻM@jR<~XGlBr7W7#r֛!&OVcB= P>yDiL.5r҉+ؑvf?A}2_"3&T/Xµ5|V)3I:xy9Q~ fOQlr0n+`q}dy+^>oN#DĄUDsgpT 3m MdݽWUB=PiՌJi(?sCGv $3 5tA2Đ12l8%~!2ŤCC@D+=mmN|e}1 ,!DZ$gw;ĝ8~9;nNz`]l{MgkoyzqQO8&-::V;EAs1PwjM^ ӰEy݀W mo@3z( Kk ~vL\ {?T2w'H9kFBC}6X?sӲ)@ Btx~an,U;opI&יT^DYEB5 ձ`߽#b$-PTæ 3Z4Y’ v~@HӉ ?~c-r,< eHIG Q%)m;*&)5icڽ]ҩc鞐1dwqy0FyE΃k X[ 3VʋMDM=պkW7Ap)5 2?+aa#jOIf+pZGEޔO~JVag:T}443wRآ%`+":pܓD f8|5{ާ Zz4r4`['kbcmBs3פ1wHaLT(;ZBV32[ěΒaHcVXx8Ra['q{QtQz] ȃ* ն遊h |.y5vL#O/ƀ Rpp}IPGFeԴ&j9GuƄR `,8P"XFe"M<O9r)Y-)G_'kCt>Doܡ8ϛSPRiHWTjƵ2zs9K䯟x&[v/GU>4exU4g7Ç)C 6UWKfz4} ci?b_G*'*ݘWH Ja݂yQOi|D~w,v&˨_tڣ ' >y;( V Bɋ |/|xQ:<0eZL>L>^󇞶C8+ zʒxĞc-'S7$ݍEW֛Q`N-U KG5-:d?j7oԐ؏ҿ>72q}kSs*g43DO^.MQ1üxpc:y3L+P<*ُ/Ʉ|{9;<͔I9uNg&4sx  d(/LkF/Yg/,3>7A﵇\yJ,cCξ˝r/X@#;W+Zk ̧M CDcguV6+ 8bq)V4tl 6SUݸ ۊB JZm8D?A&Nd;r )#ȱ {5A'_uYۅEMsa),dUߜLɽjLe^C<I@} 1Ə{#bUqҩK6x/Ձű"Жy}_1ime5z{7 ?8\@2y@@UpW!'l %kwJxo -ͺVFzC, ؍R3K&L%IM!>Յ\V(1)/ ^PMRȴN=4kv҂%A;bwu4S2"'Ap% %"n[a\/dQ&U9C+}2X՝Y->)Yɨc؄qBܽ3+10^;!ƏUXXoS4Nt8CE NQ= w!kM b lO;c]7X,[TWhdA޶uu9U$u:?htdsd!Qܿ9bdarޝ} >UVoeÑٚ~Ʒ0{G(tA9rt[A'Ѡ0gc7wKcgה_OZ|3Se~ r`;\"!FWvmV*@B'3W9N܃| ޥHƐ;3&2vW¾ Li 2}1Z걗vy#'ư`Vt~$KLΪùsvPSÃkX|avpmdUOj3PS) =;vzlD30Omg290a|c-3,j,%mk`¹=̝xz$f4A2.t# H2ٻ50+R1Qã78uA.Ow "N2Z '&c%X@֖Ug3^QWȻ\c.=-1E$0H9^tbkKV91bM2ȡHG]pM $!(2瘦]$""Y΃n K$N"tf9\#o{:LY{u)֯ARNz?L@BiCbF}ruLǖ,XɵAКHrM$e0uI722޺yx]k@AV@OižX!١:G"Cw*N.ح~p8h!].r}" *d}5e J?,h|+PW_h*:CYhJM=~0MɋE>eWY)Uy>%V'QUSyx3')nf6GQp0Re' 6.-K U` 13*x9\~ ,Q~rgi U.W~8l?M&ݰPXos%kv Z gH`%ްwm;|5Xm'Jd!2e7}QJ*p̭/ g.4]-`w#sD+cr#w1D- S5U=7dI3fZyHHɠa#2gp_1alW\e$p6tcĺ 4r+nk 翮0T=oÃ]j%bQEwp[Sr0{3}WXV&2a }}0N5U1=6sU< *ӌ?qC| > JQqNrT67pZ0Z-U}AHF~ݼRS7an_ΰ3M| ^ AvOd!V["JyJY GNX~wՅDkbxQGT,ԋ,a>QL&چiP  [}98 ZKLl>i4nD)kjkg76AA](1^X:Z.q:!IF$'s CFTU%7IMn_#jszV'ыA EKYgJ'i{!ET4P$,6wmԟ (O*s1Z D?19'eљH$> ;#N[yS3=.rC _TlTFT WDܵu.es`4~~vn˒5/%zsdB.8eŋ ~sMzaǪ܀ƞ\,y &4t@jƅH+%Ӵmδ= I8Xѷ:F.b4G*e,68:Iӌ?hPc:>^dG:JluW3I+3 DR(r/rU9hּ@g,SUrKIoRƺJQp %[%-3jËrϰrjm+{Z~8v>Qg]A?Nt#6V}%EPsl=k9pۏ"qzyz8zv֚x{pm\ ہ^xܿn=,*Gs4O|ң2nf9o6`}Bwq8 2#JmC# .hպ% mnTI` ѤF}1S7{b;$E X}S"=/ԣ\3] _d#z/җDK>sgBkwbK^!Dq.ocfp¿On>2^3 )$M}̝ * 3`kݱz.rXSIr@}{I)HW-}eL%2.uXH,?#&BSCM&H( GSTW6'ƅWWb hDsOOh)iɍB ,3ACq񐦃Qs{SZU.+C#H.q46gB:@{Ar?6"cRw*DpKuti@lUy !a.9Ձ$Y2ÏJ%I6 b%7ϫt% fqA 3V2hfN+[=g!XscatM1FrP7г{/8v 1J(vR#)*Q pqzc!4T>y&#"nmѢ(>]Z\\,Wyѿ$@N3A]qBf`B%^(Դ5 @;1|^LE7؈QL ؚ#!lozq @g͕p&[k$R 5K"h}vSrIgEyGf`5jf@M?d NH%MoV˪S܊[k/s_:̺1U'D"@Ai2F \ߖK.ho[}j Q}^dղ^jm +J:qa\B栗9rHlI%xЂmyLk}6lck7pSYJɓ8IyOA?D1p̐ DfXQB\<-jnu5-_naSz^GG%Pm#OO#˘qw!;e5>4_$Vlh1OBmf#f={μtE;TĿͩs<<ǻ]eSk7Ɍ+ޅFL!!_鶙e>&P\mkpKӖ}ڑ wtd=4bMǺiVHd#2f"T|o HriF #?RѽrxN@!~?3`:A1W(ʺKP$7k?␨eQE#JN9"AҴr+!.Jg)Si-v8v9zen!,HVۊ-+8)LZ֍ӧCq\LpCo]FkYؙeVzR pKN ="AZC}/]ZձcPuAgQ P㠶K26حQ3 0o5ϧ)]Ϊ#M[0!L J:.u>N PTUDwu'Pz kg="M@vg-TqPj)akT4ҦI*Vhpj8\Sɏ2XŔvB48处 7886o$AðNu?D7l]?.t g29̽:$`ZBHg ~(>`% HMI6:=P͸\$ "wa`M̄, j,-0{f-Og-١ Ӷ@gv s)=A+U<@9q6,C+E齃v`*5 x \b;[ [1uyb<:!Fh(V^t m|7B2iآ:kVFE0QrS| va\A Z`n9lq%BQkZL[zs΃]<}bk4D>gf8pS#ji|7yZl/.on] Upp5_ӊF_D|.!57@k,0#6 `Sk"M^41梖4+zs͡ "B`p%.5YIʜ:4#[pcv2{Fݪ?aQTdLr܌n)0DvF`"U-j~=*cT=~38^9ҥ6?]rԤTN|(6_Hjt]8wR9߂NK\ΜoBBe%87V}Sx:bܽ?toqX?5xIԊ*G^{buj`OU & % `PDϴh!8m7̆0gfznH=sۚ7ogّOU@e ׭6HC5Lɪ0]T0s>U"fC:vܽ&=ϼ7\xuvBr~A͙&?.v҄AV؝T& VoIOq! ( =Fe#(I'I*rz̖.:0h;B`/ !:ƸBϩ /lhHg;3j@l] 5㺓~&{ sgMxjWP{g. B ޖ>PU._^brЈ-QN #1PZFmrwQa3_0rRQu/6St$v>/N81+{b>",GYwՉz$wnCmHNܳLVKm_OP*jOaf)gz(t[2j$]x-#Bj(f0l+/D;z'7i¨?=5rEc\ۛ zL9V G TnIDay~#րA.IJ/5Xv;|Qء} yR&WЇ VWg[я>)}Os[8wꍕ9o`6J&GV |6 }I^KudTEWB}o @Liʀ'n4`u)n<~a+s$Q*1e;6ADij(*Z}m2CwcZ[9bW5)طJ5qDp < H|᧡oEtO={B&d&ƚ{g$p2LFXbzlb.UkB*w bk/S_z53u!:ްg8lQDv&] 7F|)0]эhi9V[ShƲ2o٢3}5{DW= aά /-ZHXp`S ԹէLSVVփ&@6wuy%_!,-;ep/Q!#粩`NgZԖ X?aU ?0)"cyrDm7&χ;s+pNe kBZQBޠ?qCFG u64=qe& c,ை[QpE]]=9NA&HbۻF*~5"E\5[vҬf B((D:zBav*62!M߯9(X0<ŲdaVo9:o^НjuҺSvugRU$4 YZ