tukit-4.0.0~rc3-150300.3.3.1 >  A bjp9|Mfj?~RLjgˑFKo#eg.%tG1x)󜸋-eQvQT8Vbx*`'8ڋb:]2x$2 |T[S%~^mnX(bp8Qѫ697b5c38ea8e02268e7192a810be9ba98e1840618f34cf3d96cbff9ac24f464ab0e7f97daf20563dc68d2d96c05737f04d971492bjp9|n ;z1ymW GPYH`&/6j3Z7yaL634? ÎwFKH+V]"c0[uJbش;Yx~Sve@Y$K') 4W!i7hں;"J Rvdq08,6W;BnEaw|ŅON 's)l޾͕a].[F &F\Sp=Z%õ(>pI`?Pd  Z -9jpx               >t (8$q9q:'q=|>|?|%@|-F|5G|L H|p I| X|Y|\| ]| ^}gb}c~d_edfgliu| vwX x| yz LCtukit4.0.0~rc3150300.3.3.1Tool for doing transactional updates using Btrfs snapshotstukit is a simple tool to make changes to a system in an atomic way with btrfs and snapshots.bibs-arm-1 SUSE Linux Enterprise 15SUSE LLC GPL-2.0-or-laterhttps://www.suse.com/System/Basehttps://github.com/openSUSE/transactional-updatelinuxaarch64: if [ -x /usr/bin/systemctl ]; then test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : for service in create-dirs-from-rpmdb.service ; do sysv_service=${service%.*} if [ ! -e /usr/lib/systemd/system/$service ] && [ ! -e /etc/init.d/$sysv_service ]; then mkdir -p /run/systemd/rpm/needs-preset touch /run/systemd/rpm/needs-preset/$service elif [ -e /etc/init.d/$sysv_service ] && [ ! -e /var/lib/systemd/migrated/$sysv_service ]; then /usr/sbin/systemd-sysv-convert --save $sysv_service || : mkdir -p /run/systemd/rpm/needs-sysv-convert touch /run/systemd/rpm/needs-sysv-convert/$service fi done fi: if [ -x /usr/bin/systemctl ]; then test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : if [ "$YAST_IS_RUNNING" != "instsys" ]; then /usr/bin/systemctl daemon-reload || : fi for service in create-dirs-from-rpmdb.service ; do sysv_service=${service%.*} if [ -e /run/systemd/rpm/needs-preset/$service ]; then /usr/bin/systemctl preset $service || : rm "/run/systemd/rpm/needs-preset/$service" || : elif [ -e /run/systemd/rpm/needs-sysv-convert/$service ]; then /usr/sbin/systemd-sysv-convert --apply $sysv_service || : rm "/run/systemd/rpm/needs-sysv-convert/$service" || : touch /var/lib/systemd/migrated/$sysv_service || : fi done fi: test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ "$FIRST_ARG" -eq 0 -a -x /usr/bin/systemctl ]; then # Package removal, not upgrade /usr/bin/systemctl --no-reload disable create-dirs-from-rpmdb.service || : ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_STOP_ON_REMOVAL" && . /etc/sysconfig/services test "$DISABLE_STOP_ON_REMOVAL" = yes -o \ "$DISABLE_STOP_ON_REMOVAL" = 1 && exit 0 /usr/bin/systemctl stop create-dirs-from-rpmdb.service ) || : fi: test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ $1 -eq 0 ]; then # Package removal for service in create-dirs-from-rpmdb.service ; do sysv_service="${service%.*}" rm "/var/lib/systemd/migrated/$sysv_service" || : done fi if [ -x /usr/bin/systemctl ]; then /usr/bin/systemctl daemon-reload || : fi if [ "$FIRST_ARG" -ge 1 ]; then # Package upgrade, not uninstall if [ -x /usr/bin/systemctl ]; then ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_RESTART_ON_UPDATE" && . /etc/sysconfig/services test "$DISABLE_RESTART_ON_UPDATE" = yes -o \ "$DISABLE_RESTART_ON_UPDATE" = 1 && exit 0 /usr/bin/systemctl try-restart create-dirs-from-rpmdb.service ) || : fi fik  QF~A큤A큤bb b b bq_)b _)_)33243f2894e67aa69b0199786b3573c407ff37ce2da38da3c88cd2e7ca58d3e620d9e2bd0cc741bd7165a58f4cc41647655070f48f4ffb53fd0d7d6f3dfdfe3ed2f27f53698da8e330c45e67f191e83a14b8edd796c46effb47bc3c8f94922fede6baca06bc4f46e757662506d819a8e1d06cf5fbb6babd4fcf4485ffd9a88c2e27db704e087e3f26d380515b77de5580618695fef11db500070f6fa17937b15328dedc1731f8853949759740a19d06c4bdba9d7c21260dcd545fd7a24265036db296f2f7f35bca3a174efb0eb392b3b17bd94b341851429a3dff411b1c2fc73rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootroottransactional-update-4.0.0~rc3-150300.3.3.1.src.rpmtukittukit(aarch-64) @@@@@@@@@@@@@@@@     /bin/sh/bin/sh/bin/sh/bin/shld-linux-aarch64.so.1()(64bit)ld-linux-aarch64.so.1(GLIBC_2.17)(64bit)libc.so.6()(64bit)libc.so.6(GLIBC_2.17)(64bit)libgcc_s.so.1()(64bit)libgcc_s.so.1(GCC_3.0)(64bit)librpm.so.8()(64bit)libstdc++.so.6()(64bit)libstdc++.so.6(CXXABI_1.3)(64bit)libstdc++.so.6(CXXABI_1.3.2)(64bit)libstdc++.so.6(CXXABI_1.3.9)(64bit)libstdc++.so.6(GLIBCXX_3.4)(64bit)libstdc++.so.6(GLIBCXX_3.4.11)(64bit)libstdc++.so.6(GLIBCXX_3.4.21)(64bit)libstdc++.so.6(GLIBCXX_3.4.9)(64bit)libtukit.so.4()(64bit)libtukit4rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)rpmlib(TildeInVersions)4.0.0~rc3-150300.3.3.13.0.4-14.6.0-14.0-15.2-14.10.0-1transactional-update3.0.04.14.3bq@b$@a@aa@araexaLl@aD@a<@a6a,@a /a /a@`@`\{@`KW`KW`H`H`>(`-@`*b@`&m`"y@`>`@`@`@`U_/@_@__t@_@_o-@_h_h_3_+_$_{^^^@^|@^ku^^F^V]^r]X]V]v>\\@\@\\\}@\eX@\eX@\N[[k@[[z@[#@[{@Zz@Z@Z@Z@Z@ZlZ@ZkZZ@ZqZTZ&@Z@Z@YYYV=@YS@YRHYP@Y0X@XX @XXXXX*X@X@X~@XWXRXN@XF@X5X2X2X-X@X@Xx@iforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comaplanas@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comngompa13@gmail.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comkukuk@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comkukuk@suse.deiforster@suse.comiforster@suse.comkukuk@suse.deiforster@suse.comiforster@suse.comiforster@suse.comjengelh@inai.deiforster@suse.comiforster@suse.comiforster@suse.comiforster@suse.comkukuk@suse.deiforster@suse.comiforster@suse.comkukuk@suse.dekukuk@suse.dekukuk@suse.derbrown@suse.comrbrown@suse.comkukuk@suse.dekukuk@suse.dekukuk@suse.comkukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.dekukuk@suse.comkukuk@suse.dekukuk@suse.de- Version 4.0.0~rc3 - Add Snapshot interface - Reworked signal handling: All public signals are sent from the main thread now, keeping the same sender for everything - Implement D-Bus call "Execute" for Transactions - Implement interface for listing Snapshots - Implement Reboot interface - Fix bug when using --continue on old snapshots - Fix hypothetical integer overflow in snapshot list [bsc#1196826] - Fix wrong sort order in status command [gh#openSUSE/transactional-update#80]- Version 4.0.0~rc2 - Fix missing prompt in "shell" command [bsc#1196580] - Add output of tukit commands to log file - Fix compilation error with GCC12 [boo#1194876] - Fixed (non-critical) security review comments [boo#1196149] - Fixed selfupdate - Code cleanup- Version 4.0.0~rc1 This release is API, but not ABI compatible with previous releases; existing applications will have to be recompiled against this new version. Major features: - Introduces a D-Bus service to access the libtukit API via the org.opensuse.tukit.Transaction interface - Introduces a C binding via libtukit.h. Other changes: - t-u: Rework --quiet handling to make sure no output is shown even in error cases; this is necessary for automation, e.g. with Salt. [gh#openSUSE/transactional-update#73] - tukit: Allow storing command output into variable by introducing a new optional parameter for "execute" and "callExt". - Replace multiple and non-standalone occurenses of {} in "callExt" argument. - Split transactional-update.timer into transactional-update.timer and transactional-update-cleanup.timer; the later will clean up old snapshots even when the system does not do automatic updates. - tukit: Remove legacy alias "setDiscard" for "setDiscardIfUnchanged". - Throw exception if snapshot is not found. - Fix various compiler warnings - Update spec file: - Include tukitd D-Bus daemon - Only install one version of the library (as there are no breaking API changes yet) - Add %pre scriplets for systemd services - Replace %systemd_postun scriptlets with %systemd_postun_with_restart to satisfy rpmlint checks - Add transactional-update log file as %ghost file- Version 3.6.2 - Bind mount root file system snapshot on itself, this makes the temporary directory in /tmp unnecessary; also fixes [boo#1188110] to return the correct snapshot's working directory via API call. - Use separate mount namespace for transactional-update; this should fix several applications that fail to run if a mount point has the 'unbindable' mount flag set- Version 3.6.1 - Fix rsyncing /etc into the running system with - -drop-if-no-change [bsc#1192242]- Version 3.6.0 - Simplify mount hierarchy by just using a single slave bind mount as the root of the update environment; this may avoid the error messages of failed unmounts May fix [boo#1191945]- Version 3.5.7 Various fixes affecting Salt support: - t-u: Don't squash stderr messages into stdout - t-u: Correctly handle case when the snapshot has been deleted due to using --drop-if-no-change: Don't show reboot messages and avoid an awk error message [bsc#1191475] - tukit: Make inotify handler less sensitive / ignore more directories [bsc#1191475]- Version 3.5.6 - tukit: Add S/390 bootloader support [bsc#1189807] - t-u: support purge-kernels with t-u patch [bsc#1190788]- Version 3.5.5 - t-u: Use tukit for SUSEConnect call [bsc#1190574] Correctly registers repositories- Version 3.5.4 - tukit: Fix resolved support [boo#1190383]- Version 3.5.3 - t-u: Purge kernels as part of package operations Required for live patching support [bsc#1189728]- Version 3.5.2 - tukit: Fix overlay syncing errors with SELinux [bsc#1188648] - Don't print message for `shell` with --quiet [gh#openSUSE/transactional-update#69]- Version 3.5.1 - t-u: Disable status file generation by default The new experimental `status` command requires the availability of /etc/YaST2/control.xml, which is not present on all systems. Hide the creation of the corresponding status file behind a new EXPERIMENTAL_STATUS option to try out this functionality. - Increase library version- Add tukit.conf to spec file- Version 3.5.0 - Add alias setDiscardIfUnchanged for setDiscard. The old method name wasn't really clear and will be removed if we should have an API break in the future - Replace mkinitrd with direct dracut call [boo#1186213] - tukit: Add configuration file support (/etc/tukit.conf) - Allow users to configure additional bind mounts (see /usr/etc/tukit.conf for an example and limitations) [bsc#1188322] - Add 'transactional-update status' call. This is a POC for obtaining a hash of a system to verify its integrity. The functionality is still experimental! - Internal bugfixes / optimizations- Version 3.4.0 - Apply SElinux context on /etc in transaction [boo#1185625], [boo#1185766] [bsc#1186842], [boo#1186775] - Implement inotify handling in C instead of Bash; this makes the - -drop-if-no-change option work on SLE Micro [bsc#1184529] - Use `tukit call` for up, dup and patch to allow resuming an update after zypper updated itself in the snapshot [bsc#1185226] - Fix obsolete output type messages in initrd [boo#1177149] - Make different base snapshot warning more visible [bsc#1185224]- Version 3.3.0 - Add support for more package managers by bind mounting their directories - Support snapshots without dedicated overlay [boo#1183539], [bsc#1183539] - Link RPM database correctly with older zypper versions [boo#1183521] - Don't discard manual changes in fstab [boo#1183856], [bsc#1192302]- Revert inotify-tools dependency: The package is not available in SLE. This will probably have to be implemented as a native C version.- Version 3.2.2 - Don't skip patches with rebootSuggested flag [bsc#1183442]- Version 3.2.1 - t-u: Forward --quiet option to tukit - Regression: Add /opt as bind mount into update environment - Remove output indicators of the called command to not tamper the result line - Fix /etc syncing with --drop-if-no-change- Requires inotify-tool to have --drop-if-no-change available- Version 3.2.0 - tukit: Add new command 'callext' to execute an application while the snapshot is mounted. '{}' as a parameter will be replaced with the path of the bind mount. - Fix --drop-if-no-change [boo#1182525] - Check whether self-updated version is executable (e.g. on noexec /tmp) [bsc#1173842] - Fix overlay synchronisation with SELinux (again) - Always overwrite supplemental files (e.g. for network configuration) even if they exist in the snapshot already [boo#1182544] - Improve logging and error messages- Version 3.1.4 - SELinux: Fix syncing of SELinux attributes when using overlays - SELinux: Tag the overlay directory itself (again)- Version 3.1.3 - Fix overlay syncing on SELinux systems - Fix resuming transactions where the parent does not exist any more- Version 3.1.2 - libtukit: Report when application was terminated due to a signal, and return the signal number as a return value. This will cause the transaction to be aborted when called via `execute`. - libtukit: Set PATH variable for internal commands to fixed value to find the helper applications, as in some environments such as PolicyKit PATH wouldn't be set. - Fix compiler warnings- Version 3.1.1 - Fix hang in tukit on aarch64 [bsc#1181844] - Prevent deletion of snapshots when resuming a snapshot where no transaction is open - Make tukit work in non-dbus environments [boo#1181934]- Version 3.1.0 - t-u: Support installing RPMs from the user's directory again - Adapt selfupdate to new packaging - Implement signal handling - Remove empty text files- Add libselinux build time dependency - Remove RPM version check- Fix libstdc++ filesystem ABI incompatibility by using newer gcc version on old distributions. [boo#1181582]- Rework packaging based on Fedora packaging to separate all the components to remove the intrinsic requirement for Zypper- Version 3.0.0 - This release changes the internal structure, but should be identical to the previous release feature wise. - Major parts of the previous Bash only application have been rewritten in C++ with the goal to provide an API around transactions; the transactional-update script is using that new interface internally already, however the API should be considered experimental for now - if you are interested to use it, please notify us in https://github.com/openSUSE/transactional-update/issues/52 - A new tool called "tukit" provides a C++ tool that can be wrapped by scripts to leverage the functionality. Please consider it experimental for now, the commands may still change. - Bugfixes: - Implement support for system offline update [boo#1180808] - Add statistics files to update environment [boo#1173282]- Version 2.38.3 - SELinux: Make synchronisation work for both pre-SELinux snapshots and later snapshots; SELinux support should be ready for most tasks now.- Version 2.28.2 - SELinux: Exclude security.selinux attribute from rsyncing (again)- Version 2.28.1 - SELinux: Fixed changing the wrong grub configuration file - SELinux: Move /.autorelabel file to writeable location- Version 2.28 - Add 'setup-selinux' command for easy setup of a SELinux system - Allow complex commands for the 'run' command - SELinux: Fix /etc / overlay labeling- Version 2.27 - Add support for network systemd-resolvd network connections in t-u environment - Mount /var/lib/ca-certificates read-write to prevent SELinux error - Prevent calling transactional-update from within transactional-update- Version 2.26 - Fix broken sync for second snapshot [boo#1176989] - Add new options to allow separate cleanup of snapshots and overlays - Check for existence of inotifywait before using it - Check that mount options don't exceed maximum length- Version 2.25.1 - Fix inotify watcher setup - Use log_{info,error} for more messages to avoid messing up Salt logs- Version 2.25 - Reduce number of overlays: Instead of using transparent overlays for all previous layers only add the previous snapshot's overlay; this will greatly reduce the number of overlays while still making sure that /etc changes in the running system will be visible in the next snapshot - When using --drop-if-no-change synchronize potential /etc changes with running system - Exclude all non-root-fs mounts from inotify watcher- Version 2.24.1 - SELinux: adjust labels for etc, fstab and grub.cfg- Version 2.24 - Add partial SELinux support- Version 2.23 - Add "run" command to be able to execute a single command in a new snapshot - Add "--drop-if-no-change" option to discard snapshots if no changes were perfomed (BETA, required for Salt integration) - Removed previous CaaSP Salt support (gh#openSUSE/transactional-update#33) - Avoid "file not found" message on systems without /var subvol- Remove unused attr requires - Change bc to file requires- Version 2.22 - Use pkgconf to determine installation paths - Enable SSL connections in update shell [boo#1149131] & [boo#1133891] & [boo#1192078]- Version 2.21.1 - Rework error messages on failing umount [boo#1168389]- Update to version 2.21 - Use slave mounts for /proc, /sys & /dev- Update to version 2.20.4 - Mount efivarfs on EFI systems to make sure the bootloader will be installed correctly [boo#1162320] - Fix removal of existing overlay directories- Add dependencies to btrfsprogs, zypper and snapper - most of the functionality is not usable if those applications are not installed. [boo#1166502]- Update to version 2.20.3 - Reintroduce compatibility with RPM < 4.15 for inclusion in SLE / Leap 15.2 - Prepare for removal of /var/lib/alternatives [jsc#SLE-9101]- Update to version 2.20.2 - Use full names for zypper options [bsc#1164543] - Ignore /var/lib/rpm in shadowed file output - Optimize create-dirs-from-rpmdb- Update to version 2.20.1 - Add missing documentation about --continue option - Avoid error message about missing fstab file on first snapshot creation. [boo#1160213]- Update to version 2.20 - Add the option `--continue` to extend an existing snapshot. This can be used to perform multiple operations before rebooting into the new state. [gh#openSUSE/transactional-update#16] - Make sure the dracut service to print warnings on /etc overlay conflicts also runs in the pre-made images. - Add "none" reboot method - Remove conflicting overlay artifacts in case an existing overlay directory will be reused- Update to version 2.17 - Provide network in shell on systems where resolv.conf is pointing to /run directly [boo#1151081] - Print new snapshot number at the end - Always mount /root subvolume when using shell command to preserve history- Update to version 2.16 - Use default command if options, but no command was given [boo#1146116] - Make sure only one process appears in `ps` output [boo#1111897] - Move update check: If a new repository is added (and ZYPPER_AUTO_IMPORT_KEYS is set) adding the new repository key won't fail any more - Avoid unnecessary snapshots / reboots by detecting zypper operations without changes more reliably (e.g. when installing an already installed package) - Update the manpage accordingly - Bugfixes: - Ignore commented lines in fstab when checking for shadowed files - Avoid warning when copying network config - Remove Perl dependency - Building documentation requires Python 3 now- Update to version 2.15 - Move description of interactiveness [boo#1132438] - Enable network during update [boo#1137890] - Add compatibilty with new overlayfs versions [boo#1140057] - Allow updates of the bootloader on EFI systems [boo#1139015] - Add support for /boot/writable [boo#1138725]- Update to version 2.14.2 - Prevent unnecessary error message on systems not installed with YaST (e.g. KIWI)- Add requires for bc, needed for some calculations- Update to version 2.14.1 - Improve non-root fs changes checker based on feedback - Disable snapper's zypper plugin during transactional-update run - Allow parallel installation with snapper's zypper plugin (useful on read-write systems).- Update to version 2.14 - Warn user if contents of /var have been changed during update - Noteworthy: swapped position of upperdir and lowerdir in fstab for better readability - Major update to the transactional-update guide- Update to version 2.13.2 - add hooks for telemetrics- Update to version 2.13.1 - Bugfix: Clean up empty /etc snapshot directories again - Use official release files from GitHub for building- Update to version 2.13 - Fix a serious data loss problem (deleting all files in /etc overlays) in case /var/lib/overlay/etc is not part of any snapshot any more. - Avoid error message in case a system has no /etc/fstab.sys- Update to version 2.12 - Implements support for needs-restart (Fate#326451) - Adds easy rollback to last known working snapshot by using "last" as the snapshot number - Migrate /etc/fstab.sys entires to /etc/fstab for systemd being able to create mount units; this will prevent errors on unmount - Remove implicit --no-allow-vendor-change - this option can be configured in zypper's configuration file now - Add support for mounting the /etc overlay file system as a systemd unit in /etc/fstab on a read-only system (replacing /etc/fstab.sys in the long run) - Various bugfixes: - Only remove /etc overlays on read-only root file systems [boo#1122455] - Disable "Persistent" flag in systemd timer unit to prevent updates during or immediately after the boot phase - Don't set global zypper options during migration - this is not supported by the migration plugin - Fix error handling when interrupting while rsync is running - Filter out security.selinux attributes during rsync- Use noun phrase in summary.- Update to version 2.11 - Update man page to explain new /etc overlay handling - Add special handling for migrating away from old overlay directory - Read default update method for systemd service from config file - Add package "transactional-update-zypp-config" to prevent accidental transactional-update uninstallation on transactional systems (boo#1111319) - Use "up" for systemd service on non-rolling release distributions (boo#1111321)- Update to version 2.10 - Introduce /etc overlays - Each root file system snapshot now has a dedicated /etc overlay in /var/lib/snapshots//etc - Changes in older snapshots will be visible in newer snapshots (if the file hasn't been changed in both snapshots), but not the other way around; this makes it possible to roll back to a previous snapshot even if the configuration is broken - The /etc state of the oldest active snapshot will be synchronized into the new snapshot to prevent ever growing overlays - Removed creation of /etc backup snapshots - Removed complex overlayfs cleanup handling during dracut early boot; only thing left is to output a warning if files have been changed in old and new overlay after snapshot creation - Unused overlays will be removed during "cleanup" operation - Add compatibility with snapper >= 0.7.0 - Correctly detect BTRFS ID when using multiple snapper configurations - Fix disappearing prompt in "shell" command when application was updated - Prevent accidental rollback on fast reboots (boo#1111786) - Use zypper attribute packages-to-change if available (boo#1105992 & boo#1097619) - Add kexec as reboot alternative - Added explicit --with-doc / --without-doc build configure opttions for enforcing or excluding documentation build - Removed precompiled documentation (boo#1088676) - Added more dependency checks to configure script - Small improvements to documentation - Restored compatibility with older rsync versions not supporting the -x filter - Small bugfixes for cleanup in error situations - Fix possible incorrect detection of snapshots numbers during cleanup - Mention parent in snapshot description - Add dependencies for documentation build (boo#1088676)- Update to version 2.6 - Add --interactive and --non-interactive options to change the default interactivity for zypper calls. For previously non-interactive calls (e.g. dup) these options makes it possible to pick the correct solution in case of conflicts or make sure that a script will never be stuck at an input prompt. - Add kured reboot support - Tries to clean up temporary files and mount points if transactional-update quits unexpectedly - Remove trancactional-update-helper (replaced by zypper options) - Create /var/lib/zypp if not available (boo#1104452) - Robustify parsing zypper output (boo#1105992) - Various small fixes - Changed permissions of systemd script again- Update to version 2.5 - Support for overlayfs attributes like trusted.overlay.opaque - this will avoid disappearing configuration files on system updates - Documentation update - Only sync /etc if it's on an overlayfs mount - Use correct locale for zypper - thus updating locale specific packages and avoiding "empty" updates where transactional-update didn't see the change - Add dependency to attr - Fix permissions of systemd script- Update to version 2.4 - Bug fix release- Update to version 2.3 - Reformat help text / synopsis - More detailled output (use --quiet for less output) - Log all error messages into log file - Avoid potential lock file race condition on self update - Accept package names with whitespace - Don't wait for user input during self-update - Fix broken error message output when creating new snapshot without reboot - Fix erroneous mounting of stale grub mounts- Update to version 2.2 - Fix security issue in self update [boo#1091316] - Create dirs in /var more reliably by sorting the list - Rebuild initrd (needed since 2.0)- Update to version 2.1 - Cleanup the code cleaning up /etc- Update to version 2.0 - Create missing directories from rpm database during boot - Merge /etc overlay with root subvolume during update- Update to version 1.29 - Implement self-update - Disable optical media on dup - Ignore certain zypper return codes- Add conflicts with snapper-zypp-plugin- Require perl-HTML-Parser (needed since 1.26) [boo#1085764]- Update to version 1.28 - Adjust for latest grub2- Update to version 1.27 - Fallback to snapper without dbus support if dbus fails - Add workaround for update-alternatives - Add support for /usr/etc/transactional-update.conf- Use %license instead of %doc [bsc#1082318]- Update to version 1.26 - Auto accept repo keys config option - Detect broken snapshots after abort - Ignore user deleted snapshots - Include all error messages in main log file - Add configuration file - Correctly implement migration of major OS versions - Default reboot strategy is configuration option - Salt option is deprecated- Update to version 1.25 - preliminary SELinux support - support for seperate /var subvolume- Update to version 1.24 - Don't save unused snapshots if we may delete them again. Partly fixes [bsc#1071038] - Copy passwd, group and shadow to /usr/etc if modified- Update to version 1.23 - Fix re-registration in rollback case - Fix problems with updating the grub2 bootloader - Add support for migration of products with SCC/SMT - Re-add support to re-write bootloader [bsc#1068933]- Update to version 1.22 - Rewrite cleanup code to be more aggressive- Update to version 1.21 - Reset salt grains even if no update was found- Update to version 1.20 - Improve documentation - Add pkg update option- Update to version 1.19 - Add 'shell' option for debugging and testing- Update to version 1.18 - Auto accept product license in non-interactive mode- Update to version 1.17 - copy modified bootloader config into snapshot - unit file cleanup, no change of behavior- Update to version 1.16 - internal changes [bsc#1045942]- Update to version 1.15 - Rename option ptf to pkg - Add option to set salt grains- Update to version 1.14 - Fix check of return values of commands in pipes [bsc#1034900]- Update to version 1.12 - minor bug fixes- Update to version 1.11 - use --no-allow-vendor-change with "zypper dup" - update manual page- Update to version 1.10 - implement and document rollback option- Update to version 1.9 - fix umounting of special filesystems and subvolumes - fix interactive installation of PTFs [bsc#1023026] - fix dependencies of systemd service- Add Requires for lsof and fuser- Update to version 1.8 - fix references in html docu - build kdump initrd if we build standard initrd, too- Update to version 1.7 - build html docu, too- Update to version 1.6 - Add support for kdump [bsc#1018098]- Update to version 1.5 - Install PTFs in interactive mode - Sync state file between current and new snapshot- Update to version 1.4 - Fix wrong error messages - More debug output if umount fails - Try a second time if umount fails- Update to version 1.3 - Add initrd option- Do some spec file cleanup- Update to version 1.2 - suppport ro-subvolume with overlayfs- Update to version 1.1 - bug fix release - implement lock- Update to version 1.0 - implement and document PTF options- Update to version 0.99 - Support for rebootmgr - Write real manual page- Add empty directory /etc/systemd/system/transactional-update.timer.d/ so to make it easier to override transactional-update.timer entries.- Update to version 0.90 - Finish normal options - Implement support for PTFs- Disable restart on update for post install scripts- Implement activating the new snapshot as new root filesystem- Initial version/bin/sh/bin/sh/bin/sh/bin/shibs-arm-1 1656353294 4.0.0~rc3-150300.3.3.14.0.0~rc3-150300.3.3.1create-dirs-from-rpmdb.servicecreate_dirs_from_rpmdbtukittukitNEWSREADME.mdtukitCOPYINGgpl-2.0.txt/usr/lib/systemd/system//usr/sbin//usr/share/doc/packages//usr/share/doc/packages/tukit//usr/share/licenses//usr/share/licenses/tukit/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:24849/SUSE_SLE-15-SP3_Update_Products_MicroOS52_Update/c51a444d1a520bc5f951e8bcdf4fd114-transactional-update.SUSE_SLE-15-SP3_Update_Products_MicroOS52_Updatecpioxz5aarch64-suse-linuxASCII textELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=52f6f631dc39c1d2e6216a3c542a053ae5762d58, for GNU/Linux 3.7.0, strippedELF 64-bit LSB executable, ARM aarch64, version 1 (GNU/Linux), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=8b72fb2dbdea664f36898c31877f26ad544a06dc, for GNU/Linux 3.7.0, strippeddirectoryRRR RRR RRRRRR RRR RR RRRѺW-utf-87760f82107ded0ae934ee142bac17d1509cfe98f977c1ba9c30a9a6417c32566?p7zXZ !t/}V] crv(vX0-ޜjY"0Irs5B&A^"Ky˴KY6$y?Z4TA&QVT{Z pRf_CNF?^XzNG=yV|qtb>*ӟ"R,[ ̋NƄXK8y)=Ϭbej1Us"-H `FցƮ!M6"_9U m\,ҷvF! a$O)(y H/@zI:͊2.Pq`t1=(oZCu*zM502W"׍ .Ф@^U.u\Y=X8BU쉝`bR%]{?=޴XXcz1c Y+T╷HkA̡qrr}X[H׸@KXF~n>/ |;+{ "񰜶s]b7/PREXP>n{): ٯ5sQʛL]?i .io8@m&Հ E; "[GIwh#+EQ'j#!P,u攠*/%r?=2V[d cIpT| 'eR(^m;`]Ol+x# %`c~P3āt *Ydw]xPXAZr@HeAFU#D/kb Y_+aqPCKOwJq{ wM)!ͳTNdER҇ӫ~ c9X2.l*.vӇ 5.ttu0FGm'NhWT 6BD^)L9OYLUfTb+i :⢘nKS_َjچSx_]`?.٣wM~ce\5L]&' /f>#beGV *gYkPrAsuCN+nFi.( v$fi%˳Kձ6u EHШ*Sb^XF 9$2HjQNz.FĺD?9(öjUM~4q2X! a@**k"9kL W<#TPi6yC# 6q2r 6گjJ(:HYz{66IM=9_q1VGrNT Nb]i:Uq?'At"Lw̳ee}2T~*oi~5jER" V"_hr;>P:2 -'31XhZQiµ|PBA?&kkj/* jKF5y ۼ#G,ǚ/Q\,fC7wނ /OEťHulc82`$KPu0CO.K7VtH/Hޘ ;q7Tu۪c+ B> VipB)IP4'1V=S>@TsϽR\ŖX)uI3рW?ZG^h/""8[ENF;6L^ s]6iY1!dC<#+"D*P9zCR%!}'E@w 3[{yˀKÑUkV'Dp-Q'ܝ-Rm2/ 2'=UW2 ⴥ(^ܜاԇhWm ];Re7ZQIMyL揗;j, o@'ȒFr@6WlF;Χls?BN%sl5O'G W"f0>$̍h$'*KAyjQ$_lv_Jfjhv{@Hv;԰*]숥GmpUZ|t 'p[ңտ^8Th"?+KXT:)Vҍ<ӐiaAgJ; V,7 4\)aNF4ky$""j^Y{",J°O@w+vdCzݢKv  ]gG=קT\ȗ^*WD np846hg{#4,y yn^N+4or[y7T t זLԴ=,{@'cAgl<Izp͓p'XS3SDotDNͣK7R} ~w,|2S(1ߑ*1K-4p'Y/]U"%;ϒS{TWvp"gEC~k -"%Q#ҤI>pꀘls} i4>4`\Q[=4$_rCj/+Chv37[hk&y 1|lqgo C5ǰ0ۨZ1j#쾡_HTEsb Z1&/z҆tQj fdI̜Nk $F./ȵr<Ȼw!Ⱦ7s=9} ZiY"2xR̿϶"d W=9é*/j];zAd%/_7xZP6 O-W@ZqD*66L/;lfk|F@Aߏ/qu?AȕKo)a!6*;,P۷: VIAHR1K+fν;ҧ̊Zet#p&KOT'Rрq.J64> 09Y^a` ^uBFHJ\P@ij>.DqKzi38)wScf3KQ/!]m$_kdHaC yqEw"I J-WdbN}`},]lJM&Y~TWzd57(̶bjOdy>V#˖X2=6u=y)ń TI[>wI%,H^ժgԯ;)i&~ktd/խx-Ҟ7nj7ZqߛtMA46ySE<$SfgM~r5Ps6S!P4ѯƹK eݞژ@MGF4EՓ]fE iwd`Ŧq*r@<;RV`hS0,_'˒r{xِ5ДZ$b㿪C:i0cf; TTŜ s+hkŸG'CZS*?s{/`6$BLM~@dL7ԕo h}>lo98uRg[RrDEgRNwRJan2wC[4FR'|xIw{v)PX}9R4pe0d7j`'pxv{bznC6v3İܹK뵠@37d;˸2= *{HUMx< ca iu{4펒]`1\W\%-A \e+QLlF ׫fG#xX!@Y{2j$JH9HZ!k`f0_nGo`cʨt$zjzJ#v1X\s(9!jOTikEwl7Z*ָLJƔoGEZI gqvT3Sm^,:5 >v6CmLa~{l ,/]#'%ixMMe/}#7hҸ]GI` I/VD:XzlaM@'{nnD=Pu5\9i*S{Oܶl6UVkwŞ~ ڠۣyR)Lɭ̛Vվ\/QMk}Z;qTM 9n@Uu),?_TKQfouWߓ~2|cM`HFِRg=f_Hl=((!=χQ],S|vf_Vu襻; rh~T9 Fhr/FZ9"A C;gOXHzx@K8#mFp&5oQ2ːy~!˞辟U_\8-@"+9}mt3_l-r8m> |ɃoD3jdqW]xFŏ[U8w>vN-Zښ&*$"0p^2PU9H)By3T;RQ4f~L.(CYh+Q{z(Ijw$@+!u@ )dtdhJznbgT'<<-."zP kKn˃}@"JzF͝v[iho܋_=&sv-OR9+OZ7h#_>Go#;2beF$rnqT)t0w׶0X ث+@ ~%* #pSCpQ"n*ӫiUi\)/Wȏ8떌97/N1x73rGz{_>~ 1&)NF%`C DR,b4`R9e0hfLn:9,`{O:57骼+b%?!R.+ۋn kaA c9(8n8 zj1$ \UaL ].x&1o{% *-!M(t,+BXfTG篑R_t̊NX-D$?qؒ˩I8CըD\"@[IXIZyZ54MX_'YגeBwێ)e̴UL9#(Ҩq JPt4XлO~8YlWV:"ʃ iWɡA:wvr_B5Y}algѠ~ŻؽA;PS|\2!d^P#xzjOYn+Z}oPT}b9(t2f7u'r5=570 CgtC >+j#] qe+l\58Q'T:Z5/ɏp;`5`)rCڥr$RJe$vH߸IIfW;_ =6iØ GΩ]]~G<bu=r\+V>9B6prVe#fQF~Qlڮ6hu1IaM`u WC7E-IԲlGo%R"Ð; 2i g䌝֒{_3B=&} rbMNxHe6ӟg:FbϚxY-#ff2{,uxnDl5:*k'FŤ߷3 h~c:yCn̲̒J]NK~oV_A9̃΁4Qp9? SRlL,[BR&Cl1Z•>zw4P;tf+(X߃rY!&v_∹sxR Ke*kͰ+%W3_BQUa50 Wd{ hALOp(jhY7 >`˳Pǟ[nBr8$[N8Y9boA%#y?rm?=yO%G.mzb@d~fk=MтbҞ罯Dеx._ƽίdMn )6,@ɐSp ƁkO  shIؘ< á ڍ[7"ܔ ZnUVҹ! :ɋP8n="/~ H*-Q ֞g3mO{y`4 7ozBNK?LQW'cible 7vL. 6?c7s10G.fIK#_iߜ K@s3D#`u`X{;ۇؽK5IzG5&_NuOPf+&[T_PڃI/pXpທW}ъ |A( \ 7 ~;+lDi V ,:+q퓝lqasٔ88j큒 25 A]~9l_{\O0-cQv_- jt$>`zXM!_02˙tګ>ne[@nDXB  HǏ]ʣ+&d&";ܩuM[*6V5iH_!^6ܶ+'٩[5>DfܛA}tZd ְ2Ozy,85ԓ:Z!jgG ɝEJim|$["ԏShh:Cmpaiiv`e8"0/osEbi+i]80qMdXXK\& .Y;+F{;1&:.#T/|s:ڨ=8OT(X> JAƇoph UG_n Bsy`f@MRĄхѲrA jq PF৒UD;>oG%_AR K /O|w! IWO"Rɤt7*mT thCʌ4$իW-Jez ,k fرK \עohebs4K?'m0=ZҔEy5m>F&&$t*EQO]DYхs1h)ڳfj< g=Q~Atu1؟*`]#aKI2X tdF';vw4pt F!5ᥙF qaf7xļ|ykP.$Zw3$Zqя=@K)Rp$~BBib̈,M?^Ժm{.I`%0鞝LފrʨӜn1NʼnR0~1ξpo=ҭ[]:NlnR @MfЮx_""dbU΅ =/=$fzYyF͇ #REtA(RqU X'ȠH?2l˕e癋FMpG"tK Y@-qx2yUv0`:h,߶Me &*ecrql*9O"-H̹M1t%H+N} Шn/q*5Y%`uNXٽó ~tN0N>OX?9ܣ+(^0!KX]m۸sbɓة ުĒZ/a'4F/Hr}NSo=4 lk5g( f\ at# Uzp*ŪA5g-O_ ?ƙU$SBRekGI\ڳA+f2.dVurjRJJd$نj0\h 8&>_6R_PnX׏Hq*NG,ynQOîL$nf"e}9n;=&6Ad HV,2̻$SAh9I1yӍS~M2!saR[b*^ǭ »s'V!t[ӵsH[9QԾ/;\@Q#pP xRap4)աSر `QL!3n4t-wfY$Mk{O5f l?/EH~c4ř> +x!M%Guҽ*]_$*76_Gt8nG!i̾͹6Y71ِMXUT?Ŏzx[rIvOJ^9ӏT+t ; /OO允h8B-]hyzÚYFGh3pGB`WcLl՗LqMO=8g +f+jd?`lЭv2m,uLJ+8LI= Zo\"ֺ'ti,H!E8I&,&D??up]DZ)W0\Ce e)~[ ɛ`<,'Qg3F'Ӽxﻒ^nz#m`aQ75;$LЊ7=ǞWOA_6"R*7?GCUCgFO ~vD *:4`hV`ۊG$jg֭HXj;26bjιCR*[j$|CU=>::fܜֹP.;uRǎ0̼F'!L%Tu4vy辘O`cwlg$=]Ѽ YB&Heb]~e5&9 TUOO3:!Ĩ4[伺uM6FLv}3K'5Iڙ+MbO|6|O/]\ZVJqݒ/~-~ ,5SژDâչyJSSN<ʹu:iZ^79'Kkd"I̔eͶ[1(o?-hZN8vD#aGݲ玂FCz) F7mmDJ=q賨~X&pg}K%.yWx w;|A`\OA\,UDe>ֽ.2ܯ%eGi%fˊgi@0eY}t*^'_F5넏~\Hyj|О͒gf`# -Y%g{Q>5BpY2&Ajtt_}Vs-þXqX+rVtϳDw_$ 8ޔa-%4'+z\\G@HA|FlX~A QNYdXAX6{>nE4g>_?߂KLK<E%D|^x2x-cQ"Q2e6qɞ i<qXuQɆq_MT= kg{Xn|\Bo6ЖP% UI e6"L?:NKU#̴=vt&f.KD@cqV*Y}]%Zo&BO~ڝ܈l1eixB|;֑SjuأDzsT[GZa4C1 x'='@|/ʥ[Vmv6>չթL).u\1*J3Du'זjq_휕5E3#.<ʍR4mO铔bOrT솱7[^Dfn$`I)GXU^|Ya3*"qjg} *č F.5vqCѹ Bj[d|~F1^n͓4)98K!R\dlbI{Qj۬#~Sj18΃)6J}Ǣ#8 @;)"k lqK-FM.߸Шm0&vy(gG R3\9 /b&+h5[0ǎ<}wv)1Gu:^ex{3S3d*v3 n5עY䠲x5^" C) #^_27<߾% 61h5 @@w =. нnj-̻Om5,<̿ 'wgIF-,@tp0G,vQ-۝PD vnv-gHܪT/2a[Cq|`}j66z&v2Fب$ŽE&f)đwl֙`j5ood:o7TjɷE]a={QSA|'2g:k{ ݐCTg"`ɟdMmIxi0 ŀ6LH vm<<*r&{gíe<+QӃn1qA̴Vx-r5ιpe F<pX$1y>Um"2b{\jˌrkϦ<H@Tm)R}t{mR/O1U?H̿ r)uc*Ѝ fҚ8%5aj eohY3Q/oa;'!DL]=UуBxKe)TWp6CΡ{3i |b>2dj0Œn\Z=ӾO;",w-!}[uwU9~J)39xl^a8fg~ Pf*/iˌ8`]uAOqV/g:ngs_T?U͈>tV6 iwkD&˼\<w DofFemP2:awzf)3jp_.pN_wl`)LOK4 1Id=X{rcS*|Sɀ@mʇoGL_;-~Y '- }[}(:C㉐4".gp "m 89trgX^zLluhf 8 jk-&]/;"}o+t,c_M;>=9\a$RKطФ%33_xxی2 a``0!O]`w9̾)c#}" Bpdu@99p )PVIC-L;S=|'(+0腢zU8 )/1js5cew؉_q9xn&'j3$J_L?/~)''%Ba"ˮX}+U7|aw-FL「@hĊ3R4)C@*E\ypO`ym.@绠T-}`^mdW:jpX0B A[ӓ/z0{7d2.38ީ U p~$F' !5ap,N/zNFٸ&C:K1voN뿝er/y#C͢{7*ٔ-;30{ e7MJ!ϦO2a8S 6ҝڰtIbF* -{/Z d:]Dn$SQ'/HM-m&}aNdpp 2-_?lNND~#ZX^ YZ!/B@O?fg[ᗯϥ&0?DuFN]1x4<ȍe]Tڏ7O}3u0T;Z$2ihAm-QMvw\rk!EKGEҊwuϸapIފyΓOٟZP s *U-+ FP+G ƏSt<9 wOI0An초?]^~2v`d#QeP(uETǛ 2p>'a豷-힚FZ8]6fgo]a/a1'+2'\A5(M ĐFA#m\c#qS?Vh䑈A&.i /[aeӣ=knދ\_A~#­Z) Wog{cS=x߾Gܠ8Q"Q_Ao{fmll5Q38;;~dJL4u6:!dR#I k^<gVLWʄ]RP!OkItXǶumɖ\ vj. 3f?(ZEO&2w⎸]d$kU ni՚ o~ά;}K Y9e9.cG ذjx{6%}?YtWPWOw?DMڑ"9,vѐ>.̆vXJXƲXGH9%ch$+U7Nc\CDrxaSGR,IUєO3uY 1DM.im %iLMթiG]3(nCt Zӂ1x o΋J}HHukJ{I C5U+ܧd!o*N\8~-_;>P4hmŒ*GUHj%d'qW].hў =1JҥdJhv%Q;V[k- >C\k (E Gf$}\EeE64>6QJ2Oձ">. fjq>g"]xBud# Cu-RٔcȨ"ՍfアΖJuXizn8 \ܖ9Τm$H1V{*3W|Џ5'_ڍcNQx86(圐\{F;C>j~~d׋mGOx[ɉFHKkP}E"l.ijG~ʐ\Q3h'=:X?zV5Tx8~T\r GMx,n~#(G*w@zQ~8!q}W/y,(ϸFCnd[$-/OpKp`U\$1}&bѣ{=2RHIdfD23)VD)[J-\C'|)x|wK©.j+$;,{6rG=ŦIlA&`~de,pɞ?+q" Cemb}7KFzBp_ pODy i(NЅ{솎j$r@bM'ϰ[n0k(qw>X0&_M V+K\ L~Q@Q ط=Uwi*@^Kgh_`&gN˶'Ţ%$ڊ. DtC>v?'65N'f\Bw"e:iP$#F|I궢2J]].!v 3  vqĒ<팟$-S^ybTׯ@*uX(W䬥U+$lSF L4#OƢ=Y=>;`M"'W\ z.i~,}4"dJ؎T*`27 *4|*@ `N7O:%11n_s Y7W62oMO?<(KnLB6m%-8Ѥ3X/$z‹ClnjgjƌņQ9s2DR=L 6e^#^iWAƺwYb@" K2=&,ܱd HWCw+rn7f1,= z$-3P'N'A\ao> @?O{o@Ԛo֩zH#_EȩP' 8ռDպuE `|ft0,@)dbG4ąHDi/7IR[ͣ[ÿ6Tp֯`Cq|}8FkYp(,,S-ºc%(9#lLgeg*G eNcOLb͒mk 0L#hFJGȌw%"],)a⟰M¡W!͊ج]X-ʉ Mp:cm؊k ƬZGs CWYPjǢ|wI S՝.ku~ u9A N`:J٘V½g¤FO 8(@B\㧂7L+vvIR\gF}'k#S= M*r Iް@=CMء:t.EtKUG7[~B)q,2\cR6LЪLhE~oG}:N`"7$Z$|gH]i)`LgB0T]*_׈9+ը#t%h CG(ԨT8Y5469^n=DS(xi>s%ikбU2V\Y-4{UX^dKvՀbT‡(^Ûd[_bŎ" Eݚ[^x|m'n10vs8g:./ˀr<ATeӋ#/Y} AuGUw"Y!`4iӦf^N^2nW&iO.;+5fر m2 ( wYOwq%|@Nd%Z߮#bx쓫c2[NTs -cpKUnj, .:'un>&\ѠMXB-n@R}Ww2B@y^QQ:~Գ?^u 6'ES1`E/AWnbw$-$@*C hMPc|9M[UX 8g0*ջm#Ӡ^OG 1iʉA b'l0IJ;0yarp(1MRk4=w[Њ((F-^R(!tG_bⓥ`FDв83c7ͤhO(bb l{2n/҅ LMVjF}WX1_fڅF<|7 >`ǧ-exeӐF h2뽢!,`}<`%Ls9@qmT5 j7QBnR+=‚:`{Y>9Whs/I?-Qm_`|]Xx-e–l{qtR3~c].[_300v |'3J0گNװa*-VQz`eT|4f*OT7L]{xH2C+f@/j' S{"2-+)ڇXKa~Fs6:Fz!,v&K, \70m>FP (gY; | _T=)<NmZ(g2-:"d% dX3Q4X,#О%)L Nt{tKpcm9 ˃۟ܗԝ7GZ*vcܨRmĀ-Uw5,{^4_28yMiN:~jiF(kx ``. 0DE8 Ll _ZިRo R3㔮aLЇ))q_4q`gZP@0bj]U#eыvb8v倱n k!Kޭ_3n@[q+rTx1 in|[U&{hH,תeKE9;N] ei7$uNIv t8[SEsש;0WyT421d~O5h+MwX:%>O‚vƒsTdv@btaE3@͟!dU6]%BOd=]j0'=Tށ5bwer!6@\IMC֬>+>tTאo9"b靁IՓ;{ 8lx&^v6Yt!slSkV"/S)B#VH_1]9hy9h?R.LD| -2Lvl~@ オםmb}!-0zwx 6,$?Dvr68B-Y&R|V=?5U=s}z $nw$ {sR6,ɓJKowMVE;Ia]QQ+feªQQx`N x71J{jkǝ ǬXTݒ5DKv:Fдf2Bkz WV/OzqK't/nXAP~e،56?Idg-Re~"_] Wa~@%@\.odw0T1gF)l) fHܓ]0:db0|-{n3i/2p}y 5r89Cb7F BBiX,q`- k[P)O~u}`1:sl|Swߒ 47600ˊrb m$RDFM092ܖ }ޮWO7 sL$s9~o-{aJ#9Hg+ g⍜'6FoWl3Y3ꬄܬ0/P1w0r8uc6_bPEAVpAKqڂ /a22w`崗f E65'3B<2;ñG5߯Z.Hc>DkcGq̙ڝ]̛}Υ=m SUuL.J!yY M[M;x>L vQ, zzq+5g!³Io:/vRJZwʂ~)n~ )f5Sf "ë*z=~ rmwЀ Y~ Z+Fjo)A!U;84mySpA-QJR@|z"ιjBXNƃH.}AR= suA2 )&4@JM > Ô9PaLG=yS2e}ёc3(ĂklIru{uk"+pnD%ySqo' P2RꞝNBR@*3!ԅx_ hX":;oa.DCi2/߂Q6SwڴƑ}j9<+%,mZA49Ag9aG6#%9I`SHMZaӜBQI0s^ޠHUA~F[N|8vkVѥ`ٮ'yvKߚ7qj\%tkl7_Tz-KMbz}qؒzW1~}fhF(=V$K~!kt]*@N"ܧ\-8tw ˎC2?qVhC~W㽤OlhKc[i3UE<Q@ Ht;N\BҚwuBnhGD[s-A 9FIgO(t>\>kT5!iߌ\d(*S/OlP(8ރNO8E e;;Eɶ$~e"d2,Ƒ60)3h'szS^pnrSa.dp p $S{_'{wcs\m8^z(#UBɌŮexr\9>yX\IcٻT#WCڏW=mmJp#wIa2!(l6\w#7"iEzpmFbߦO?-mQ)D79Hx Nv9In uZM'Dš˴k,[7!ׄ+dgtIC$à+M먃˫j񕿥KWޙyZՌx3^hq9*aNBo.7|B5:C</CBԕվԝv'c0P]W=Xxv,Dʥ:iJ4Xd;f3J7Q AܺK˷E.9i=,zn }~N| khފJ@RpSݑCR/&+vnsg&@C"cuvҀdWiX[Q8(GÊHOA'"]*hN/b?IƜJ9X=NiKSLz Ġl#:7<櫊Z4,+6x%xC~/AG>b-r9/3tOv d\9bfktfnw*@?]薟+i%GF^翱аOYAcio`kW=խ=O%h` '#Saհ=Hƭ΃LzHO/~^yJbFY[5>|'5`7)[tn-&]縚C , $=3+c\eB|'VKzzMK>85x`]&D:۔*uw6-*ޮcT4M6R++)=y_T(&QV6=̭c&ty}Sdv&w/ND[! p-D1+vYDA٧7Trxl@%vTòQng{\K O* 3N!yaPjx)#[G׳X>LޤG7)@$JɵR8Enw)W7 A֐5Q'zpPiSsmeg XHS%*X;?MTb<֝("nՀ/(,;Y@„tRvnx8 ipA(`bW1 /xԡhvy P7J|Ŋ97=B/--a&ppi7xT3#h:MOB6q.a*d1+86cPqPsSK ~EYZ?nOiك̛;-Ls>qLGW #Xh4:? ھH1?>v&SձFi̶ /n04,Snz._j-V d(֮@/Aw̜&SB'n%^Kez H45s?FeK K<-OmQRd{^_p]Ho. l0 ii|v2@U ǯ˨^5**~{G%? q:5lɼSFNZ=@= ɡq6X=I'xP҅86}}bDlTVU~ ~jioxeMunbY@=(y>?PPfo#4uف=Mi_HPrO'%\Yxp(>Rz|ֱ#nbHyG6&m`* ZF.D(-@,x94BS&@IX !{Z2N e;BĎ`#ɦN9!譂Z?[pv.bDϊ餐ჵĕc Ӣ8=}ܡ8vXa2]$0-GkY>bWMPvŢ=ՊB7Mo柼WSڡL]CɶwL"z'iE* 2in!T.'68ʄ&s+jnŸrg 6Ob, (yWqp!/EVLȊIH L"2ǩh ̚VXnĊ-^ިǵ|IY7c:"`'d888چݰJAƲ;I4GHv4akoϩTB޾o(XP{Qav /c߭둼<I'|WtG?$8"Dq~<ɪ3N1j]Ym:p bI4QPɈe|ј3wpx^c3ROzx5f/Ti6K7ZmqwGIC8G ESVzIR sZ}Î8'UŕX%qL*C0cz P؆O^/WDс~.XkQ/pkpW 1T oZ@#cDQCPFTYNF ^kOp]":SR 53dzP2B 9.*5)$!ҬǾlND kȻD^jRV(2PnQmv7@ٱar˵(E dd0%0f!2Qelb>OI&?䨚9YV-t/& }䌄$|6EV`\/ 깙^Nш*q #Jפ9kס @A%87qɖA#XH`;ӓ#<ԕ#kӮi>KݱcZN櫆\S8AÕj X YZ