lxc-3.1.0-lp150.2.13.1<>,p\/=„T\KvVgq"nJ m3*5.yo9}KF->9ov9L*7Ë6nK=PlnZt\Q$絼&T6Pr &#ĸd%|hrWqVUjK2V7vlᙀQeJv5c#L/:F6DZB@45Gk|>2p8:^Wa+mq̓K?dʽEPE{nt5@&?c:L(>I(?d   E &  UaTa a a \a +}a +a-pa/Ua1:1\a22%3%6q%(6864974:=4=i>q?y@ǁFljGǜaH aIʤaXY\Pa]a^bIcdeԄfԇlԉuԜav &waxdayzClxc3.1.0lp150.2.13.1Userspace tools for Linux kernel containersLXC is the well-known and heavily tested low-level Linux container runtime.\lamb18 ׬openSUSE Leap 15.0openSUSELGPL-2.1-or-laterhttp://bugs.opensuse.orgSystem/Managementhttp://linuxcontainers.org/linuxx86_64 test -n "$FIRST_ARG" || FIRST_ARG="$1" # disable migration if initial install under systemd [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : if [ "$FIRST_ARG" -eq 1 ]; then for service in lxc@.service lxc.service lxc-net.service ; do sysv_service="${service%.*}" touch "/var/lib/systemd/migrated/$sysv_service" || : done else for service in lxc@.service lxc.service lxc-net.service ; do # The tag file might have been left by a preceding # update (see 1059627) rm -f "/run/rpm-lxc-update-$service-new-in-upgrade" if [ ! -e "/usr/lib/systemd/system/$service" ]; then touch "/run/rpm-lxc-update-$service-new-in-upgrade" fi done for service in lxc@.service lxc.service lxc-net.service ; do sysv_service="${service%.*}" if [ -e /var/lib/systemd/migrated/$sysv_service ]; then continue fi if [ ! -x /usr/sbin/systemd-sysv-convert ]; then continue fi /usr/sbin/systemd-sysv-convert --save $sysv_service || : done fi#restart_on_update apparmor - but non-broken (bnc#853019) systemctl is-active -q apparmor && systemctl reload apparmor ||: test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : if [ "$YAST_IS_RUNNING" != "instsys" -a -x /usr/bin/systemctl ]; then /usr/bin/systemctl daemon-reload || : fi if [ "$FIRST_ARG" -eq 1 ]; then if [ -x /usr/bin/systemctl ]; then /usr/bin/systemctl preset lxc@.service lxc.service lxc-net.service || : fi elif [ "$FIRST_ARG" -gt 1 ]; then for service in lxc@.service lxc.service lxc-net.service ; do if [ ! -e "/run/rpm-lxc-update-$service-new-in-upgrade" ]; then continue fi rm -f "/run/rpm-lxc-update-$service-new-in-upgrade" if [ ! -x /usr/bin/systemctl ]; then continue fi /usr/bin/systemctl preset "$service" || : done for service in lxc@.service lxc.service lxc-net.service ; do sysv_service=${service%.*} if [ -e /var/lib/systemd/migrated/$sysv_service ]; then continue fi if [ ! -x /usr/sbin/systemd-sysv-convert ]; then continue fi /usr/sbin/systemd-sysv-convert --apply $sysv_service || : touch /var/lib/systemd/migrated/$sysv_service || : 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 lxc@.service lxc.service lxc-net.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 lxc@.service lxc.service lxc-net.service ) || : fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ "$FIRST_ARG" -ge 1 ]; then # Package upgrade, not uninstall if [ -x /usr/bin/systemctl ]; then /usr/bin/systemctl daemon-reload || : ( 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 lxc@.service lxc.service lxc-net.service ) || : fi else # package uninstall for service in lxc@.service lxc.service lxc-net.service ; do sysv_service="${service%.*}" rm -f "/var/lib/systemd/migrated/$sysv_service" || : done if [ -x /usr/bin/systemctl ]; then /usr/bin/systemctl daemon-reload || : fi fi}] ] L\9L@$MMML]}]M]L] LmB(LS';F 5 , cND0 F)+[e~ '%@MhiCms/A큤큤A큤AA큤A큤A큤A큤A큤\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\5d8ae1e7c3191e60e8162dfef8fe2d729ecdb52d03cc7cd4ec3ae511b3bc7b87e8ebfb74a7d8100025159f5ebd4fae7cb2c9ef9654c885163889fe4349523832b572a78f97a76d5616cadcc9114828b28ed88a1bac276835538a97438de616c0cb22bf354f35898efecb4345127aebdfbb2e46a437bac65b458cd7bb27d334df98c74e09dfe60b85f7a9c80eb04964bcc767c6376d0ef53814bee9ce215fe71e43d4b74099a50c5c4876afba20da5262d831307d0325d918d9571b6bbb5da47a0012b56f489e693e305c41c399a9c09478c00b72eeabfa3a41154658eb0a3819a45ba5810362fa754ecaa3e35348b47891b8b246d02020f4d78c18c6958998bbf200f4bc9935c6469310e9250afac6c62c8332787a19c4087c4fcef87c052cd3cb64635d9ed86d86c654a26602bcf815c0ebcbb9cb70198ae8912ea0c4cb0643e8b08d1e53dfa44ccaaf2d9cadeb2d15e0cd204644dd470929dd28aaee4ca1a818454372436a3470262e0e48877479cd5604eb2e588b4be7d882e507c75eeea83c3b053bd413e4ebacc76c4d808256e5cd1cc64b42040f7ac82e0adc574d2bab2b5742dc69330da146f18350d208059eaca6ab43705ff574e623998fd95b48535b677a34c89ce87a0f473059d5857486e392fb82c83c81bfc7740ae315ffa60abfd5b9f81cd24dd877c4a1400c14c680fe0300ec6cf2002579f129654cd4a3b1747e9ab5b0e15523be8a519853ef382a77c1f9ccb74ff38b5937b9e6eaa82e21376c0c452327634c14f547e146d819fa396086a784a2ea5c485f8a7006eece08873028602625f39dffb20990db57daf0bd5f5fce9cd44e216551b32036c992c057fda490b1035f8f9c266e761728efe7f3714273d03897bcac307f5ae779322f6853efda01bb67a47bf39b0197742befc3f85395a839b1adb92804ebe27f4f52e91252dc0192aa268467cfd42f1881017e81a3404258a5179d8dc1fc4edccc3b883fd61e14279711723f44bf4a3e42871dbf6f1441da31a032e70e9ff5be5304441567cd4dffeec1f5e214e8223dcc0f8a183ccff6d90dc6f27fe6bc4c3e8c10129037ed8dfb2a6ad7f6859c51ed1333b27eb0d1680df78fca35ef8662e5d2d0fd8272d8e1f8816fb71871dd19d807716658eb60220993d0105f808e166abf15985454ca0a521f463b33b1c0108ab8ebd123dd1b5d0608497284cc67726dc4e858a579a40835b7795cc7b80c5e31b876ebb3bb2f4bf5c25bb04c56c5171dd72c05119efcd97838f1b52f151aedf9a083e995212a5b517d0527427de8147278eca1b85d1aa74027217f4ffe714aa791a999252845d3c8569f03f3f383acac0ee55102d7e62b132e34de95b92d6ab216b13d3a066ad00f3bf6e06bfef7d48806b46778a2748e4fd813434b919a644b14a82d9dbd71a6301e6e0af2b542922b6d0c0133eb60b478d16b20bb6f43813cf7fb8acde59c238b5dd7907eee9a4c0e51521d11c202cb56aa24537ee658d663b3c8434d435d9464db3c81806206ef79341591d99a3fb4681cbd4853d5e978c9742d092127f72ebec1520215c8ceac62b98deac2622d3e2532eb3c1abd4bf27955b520bfeb4a7d3d026bc1467a3ad67fb051550bea4bfb96b477517957115e03e34689df10976b3bcb8de3cde6def2ac1d4f099ea301ae15cb8ff362488bda13d680c5e629e1e77f1eb1ed63a245afdb8c2c7edc33aed6c760339ce953d6df733a765080feef9d7574f55f68f9523cab76e850738bf3e82861cd96320d596d453018f4c60f2e5df7403d1e170b056d8fbd0cd6fc5faab44c3ca2936f44778c201bb2dc1cac02a2cd2f1f63eb9489b050b04205f5f8c63fa8b379300b38ade68378950d3bc6ef1fe9da40aa4d568be63141d6fda0a51d513629a01fdd86e31e71953ae975bc3ac1d42b4a6fb3f0dac69545f611a4ec47df9eada3a2008eb0776503a1c5546aa5d603f530e846012212702c5c2918fafb869c2ade170b27b6b9daff71a712c78dae3081721fa7f66ca8f99044c02b529fca1b7092360bc1198a2c613c6dc1885fc3231998c145b74e79f3b84739ce08d4d1938f944f146f6862f9acebd0312ffd840461aa1f606a8828055d710423cf74b626d105ca49d04549ea1ef6449c4cde0a7f51738ec7cf17de636e939c485f900f2371578777c15d8b890c4e3df8e005a8ee502214f5e79288a2e5a249bdfe75ce046bf85a8ac7a77c453bc666a2aa9f6f07c76e010afe88177e14033a645950120a42f545d7ca760ee14470ab4121bf8ea613e3d3af70d8cc8b626be0dc1208380db5c935caec6f85143c50e363a03302f305e2bb9a3818984b596d2818693d299e4c645a98b17ba1fc5969a152762e999ba3d89e5a6c6bea9b74eb017d1b6e1799014536494187d539aa40798742c58452518dcc3c60b73dccabd15182f41207b9e3f5d21b4896081c0eb3670b0615d663222144b100a87adbdefe7ba0b515d635601d9bba42d4a6cd4cde270280e5c277eb6b4c13b88a3bb104714146f3e7b4e680b93cd2ba2d0bf43839e9ec5d595bb7f18b41aba601f3ac597f04201e424b6e515de0daf80db075003a9db634f7f97d7687d712714d18a21397e7cad7d6433c90afc1d8f467ffe27b25b56e243fa82159df5d42626b7778d80c8712aab726fc00c59d54b42e1258cf5d93c2f3e67f0bbd316285bdf9ebee4e67cb2677f0a63049d433c3ce8d8b504d216e5618c6e7144b7ecc642be2e9663a5d2e89e3c9f062dcadf944922f93d75563b5763403d67b73bd1fb3c86175a8638af90280bedce3e3958de7fb7585975ea02adc159dbc50345b0c878563b89a372f754410b70a86cc381eec1cce526fba984087c28f82800f2d9bce03c1e192e31b511e95ac06aece10e10b93a5308feeb8a083603bb5437fbf198e591cda4c44265fe31492b7aa245149b49c3ad6fb595bcb885597424167fe5cedaf024179331e787ea41d9da62524abc05619368de552d3277d6509ee6c716a6180a7dda5cfe41c6b616f007b63b382d188e226d219be5ada0053da0028f3e76edd4726339ee39ec49324d9673cf6e2be170484e7ac89a6493dbc4d32070548610cdefe51a425e251dc8d900848e1776afff46f84b35330a6deab25d0db636042c0055c0299321a964c983ab8520dca6bb9318e7be5afcfc65bd438663755ac31e2dc557134555dd9c898caf3ccdf0a29acc6697feab89f570d68bf40aef8ec0867bc8442657218216026cf850196f9b0d24bf927d872304cc8d9d7c98b14a2cea1020a1f6e830d5f9ffb9876e2204beb1a2302b295f9f186bd4d2fdc9dc689f521884a85bec75800a65b8d66e044ac2e7a16b638f300c36182afafcc99a60b34dae919608fbaccf14f49971d95f410ee684f402e7a05c0334010228b608f0fcfc13ff759a751b19b7464b5c7d0cf6dc4ad1c32d13f0c0ff87508e25611a1dfc476dd3c7d00cb2d80934254f74e634c4a37e674503f173c3190cec9b0c41e3ecc88b95c10e6ca96ac0f892fa4ef75475f304815e37a80d987877ee4968812e83511ae980336cf9542db950706bee5817111afe6e062c007872b7307389ae95180c8c70215af7c6e012c311bf68b5916a9cfaf5641ff1e26b73af3c718e53addba8a48172d92fcfebd84a794d65e384f1acda5a0e0a878e56686b2250f8b0b398863fe5be03e8ed264bf5035f47f0ebfd2038cb9cd4fd8f983a1f7856c287201c80d56532c92cfb8371eda44ebfacaf403a611793fea6445059230049d2af938928c86e3a88b60a13b83e25d6117950da24ed7c493e48a886b2d9c0303ff959fa720d3a73f142421d96f7b5ef89983a88c4efc41ff297d2d4a5665fc4797cbd575ad0add78bf51bef811e7b2403c536a47fd620978bd1128718ad644b3f8d648dbc1d41bfa022cserviceservicerootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootlxc-3.1.0-lp150.2.13.1.src.rpmconfig(lxc)lxclxc(x86-64)@ @@@@@@@@@@@@@@@@@@@    /bin/bash/bin/sh/bin/sh/bin/sh/bin/sh/bin/shconfig(lxc)libc.so.6()(64bit)libc.so.6(GLIBC_2.13)(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.17)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.7)(64bit)libc.so.6(GLIBC_2.8)(64bit)libc.so.6(GLIBC_2.9)(64bit)libcap-progslibgnutls.so.30()(64bit)libgnutls.so.30(GNUTLS_3_4)(64bit)liblxc.so.1()(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.2.5)(64bit)libutil.so.1()(64bit)libutil.so.1(GLIBC_2.2.5)(64bit)lxcfslxcfs-hooks-lxcrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)rsyncsystemdsystemdsystemdsystemd3.1.0-lp150.2.13.13.0.4-14.6.0-14.0-15.2-14.14.1\ \\@\@\\@\@\X)@[@[[[dC[P}@[!@YeY@YKYYYY[@YX@X@XۡX6@XAXF@W@WW\@W@W@W~D@WZVKV @V @V @UU@U4@T@Tp@Tp@TTA@TTy@TuTl@TN3Aleksa Sarai Dirk Mueller Aleksa Sarai Aleksa Sarai Jan Engelhardt Aleksa Sarai Aleksa Sarai Bjoern Voigt Johannes Kastl Johannes Kastl bernd-obs@wachter.fimatthias.gerstner@suse.commchandras@suse.dedcassany@suse.comopensuse_buildservice@ojkastl.deopensuse_buildservice@ojkastl.demchandras@suse.deopensuse_buildservice@ojkastl.deopensuse_buildservice@ojkastl.deopensuse_buildservice@ojkastl.deopensuse_buildservice@ojkastl.deopensuse_buildservice@ojkastl.dejengelh@inai.deopensuse_buildservice@ojkastl.deopensuse_buildservice@ojkastl.deopensuse_buildservice@ojkastl.deopensuse_buildservice@ojkastl.decbosdonnat@suse.comschwab@suse.decbrauner@suse.dejengelh@inai.decbrauner@suse.decbrauner@suse.decbrauner@suse.detiwai@suse.det1loc@opensuse.orgt1loc@opensuse.orgt1loc@opensuse.orgcbosdonnat@suse.comjslaby@suse.comjslaby@suse.comjslaby@suse.comLed opensuse_buildservice@ojkastl.deopensuse_buildservice@ojkastl.deopensuse_buildservice@ojkastl.deopensuse_buildservice@ojkastl.deopensuse_buildservice@ojkastl.deopensuse_buildservice@ojkastl.deopensuse_buildservice@ojkastl.deopensuse_buildservice@ojkastl.deopensuse_buildservice@ojkastl.de- Rework /var/adm/update-messages handling to be far less complicated, and more packaging-friendly (by update-messages be owned by the rpm) as well as storing the update message in a autoconf-templated source file.- fix apparmor dropin to be compatible with LXC 3.1.0- Avoid wrong permissions warning by conditionally setting the setuid bit based on what version of permissions is available in that distribution (makes no difference but results in less confusion to users).- Fix builds on SLE12, by depending on apparmor-profiles instead of apparmor-abstractions. In addition, remove the Requires on abstractions.- Trim project history from package description.- Update to LXC 3.1.0. The changelog is far too long to include here, please look at the changelogs posted on https://linuxcontainers.org/. boo#1131762 * Includes fixes for CVE-2019-5736 bsc#1122185. + pam_cgfs is now provided by this package, since upstream has moved the sources to LXC (it used to be part of lxcfs). * All of the patches have been upstreamed or are no longer relevant: - 0001-apparmor-Allow-usr-lib-paths-for-mount-and-pivot_roo.patch - 0001-utils-add-LXC_PROC_PID_FD_LEN.patch - 0001-lxc-user-nic-verify-file-descriptor-stable-2.0.patch - 0001-Backport-autodev-fix-from-lxc-master.patch - 0001-PyOS_AfterFork-python3.7.patch - Add a warning if lxc-user-nic is not setuid after set_permissions, to ensure users actually read the warning (which means we get to remove README.SUSE). It also supports people using paranoid mode, which is why it's done in post-install and isn't packaged. boo#988348 - Quite a lot of the runtime helpers and configuration have been moved to liblxc, in order to allow LXD to make use of them (because, in truth, they were always a requirement of liblxc and not just the lxc-* tools). - Add workaround for pre-15 distros, where _sharedstatedir was inexplicably /usr/com, to use the correct directory of /var/lib.- Rework packaging to be a more modern openSUSE-style.- compilation fixed for Python 3.7 (PyOS_AfterFork() replaced with PyOS_AfterFork_Child()) added patch 0001-PyOS_AfterFork-python3.7.patch- fix for bsc#988348 (lxc: enable setuid bit on lxc-user-nic) - do not remove setuid bit for lxc-user-nic on releases with suse_version >=1550 - remove setuid stuff from README.SUSE on releases with suse_version >=1550- move bash completion file from /etc/bash_completion.d/lxc to /usr/share/bash-completion/completions/ to avoid warning- 0001-Backport-autodev-fix-from-lxc-master.patch: fix unprivileged lxc containers on kernel >= 4.18- 0001-utils-add-LXC_PROC_PID_FD_LEN.patch: prerequisite for applying the next patch - 0001-lxc-user-nic-verify-file-descriptor-stable-2.0.patch: fix information leak and possible open() side effects accessible to regular users via lxc-user-nic (bsc#988348, CVE-2018-6556)- Add upstream patch to fix container start up problems when AppArmor is enabled (boo#1099239) * 0001-apparmor-Allow-usr-lib-paths-for-mount-and-pivot_roo.patch- Make use of %license macro- update to version 2.0.9 Bugfixes: * apparmor: Allow containers to start in AppArmor namespaces * apparmor: Drop useless apparmor denies * caps: Move ifndef/define to the top * cgfsng: Fail when limits fail to apply * cgfsng: Log when we defer to cgfsng * cgfsng: Only output debug info when we set cgroup data * cgroups: Handle hybrid cgroup layouts * cgroups: Use tight scoping * cgroups: Workaround gcc-7 bug * commands: Abstract cmd socket handling + logging * commands: Add missing translation * commands: Delete meaningless comments * commands: Handle EINTR * commands: Make state server interface flexible * commands: Move lxc_make_abstract_socket_name() * commands: Rename to lxc_cmd_add_state_client() * commonds: Fix typo * conf: Adapt to lxc-user-nic usage * conf: Add lxc_get_idmaps() * conf: Add userns_exec_full() * conf: Allow to clear all config items * conf: Allow to get lxc.autodev * conf: Allow to get lxc.haltsignal * conf: Allow to get lxc.kmsg * conf: Allow to get lxc.rebootsignal * conf: Allow to get lxc.stopsignal * conf: Allow writing uid mappings with euid != 0 * conf: Avoid double-frees in userns_exec_1() * conf: Clear lxc.include * conf: Do not check for empty value twice * conf: Do not check union on wrong net type * conf: Do not deref null pointer * conf: Do not free static memory * conf: Do not log uninitialized memory * conf: Do not write out trailing spaces * conf: Don't send ttys when none are configured * conf: Dump lxc_get_config_item() * conf: Error out on too many mappings * conf: Fix bionic builds * conf: Fix build without libcap * conf: Fix tty creation * conf: Fix userns_exec_1() * conf: Free netdev->downscript * conf: Implement config item clear callback * conf: Improve lxc_map_ids() * conf: Improve tty shifting function * conf: Improve write_id_mapping() * conf: Increase lxc-user-nic buffer * conf: Log lxc-user-nic output * conf: lxc_listconfigs -> lxc_list_config_items * conf: Move clearing config items into one place * conf: Non-functional changes * conf: NOTICE() on mounts on container's /dev * conf: Performance tweaks * conf: Preserve newlines * conf: Properly parse lxc.idmap entries * conf: Record idmap that gets written * conf: Refactoring of most config parsing code * conf: Refactor network deletion * conf: Remove dead assignments in parse_idmaps() * conf: Remove dead mount code * conf: Rework lxc_map_ids() * conf: Rework userns_exec_1() * conf: Send ttys in batches of 2 * conf: Switch API to new callback system * conf: Use a minimal {g,u}id map * conf: Use correct check on char array * conf: Use run_command for lxc-usernsexec * console: Clean tty state + return 0 on peer exit * console: DO NOT add the handles of adjust winsize when the 'stdin' is not a tty * console: Fix memory leak of 'lxc_tty_state' * console: Remove dead assignments * core: Do remount with the MS_REMOUNT flag when mounts with MS_RDONLY * core: Fix a format string build failure on x32 * core: Fix includes for Android * core: Fix memory and resource leak * core: Fix some cppcheck warnings * core: Fix the bug of 'ts->stdoutfd' did not fill with parameters 'stdoutfd' * core: Include custom mntent for Android * core: Log function called in userns_exec_1() * core: Remove the __func__ macro * core: Remove the unused macro * core: Replace "priority" with "level" * core: Revert "Add a prefix to the lxc.pc" * core: root -> am_root * core: struct bdev -> struct lxc_storage * core: Update .gitignore * core: Use strerror(errno) instead of %m * criu: Add cmp_version() * criu: Use correct check initialization check * doc: Add CII Best Practices badge to README * doc: Add console behavior to Japanese lxc.container.conf(5) * doc: Document missing env variables * doc: Fix regex-typo in Japanese and Korean lxc-monitor(1) * doc: Fix regex-typo in lxc-monitor.sgml.in * doc: Reword id mapping restrictions when unpriv * doc: Rework README * doc: Tweak Japanese lxc.container.conf(5) * doc: Tweak lxc.container.conf a little * doc: Untabify Japanese lxc.container.conf(5) * doc: Update API documentation for get_config_item * execute: Enable console & standard /dev symlinks * init: Add comment for exclude 32 and 33 signals * init: Adjust include statements * init: Become session leader * init: Move initialization of act to outside of the loop * init: Report exec*() failure * init: Use lxc-stop to stop systemd service * liblxc: Make sure memory is free()ed * liblxc: Only spawn monitord on demand * liblxc: Remove 5s timeout on error * liblxc: Use snprintf() * liblxc: Use userns_exec_full() * lock: Non-functional changes * lock: Return the right error when open lock file failed * log: Prevent stack smashing * log: Switch to a new lxc_log_init function * monitor: Abstract lxc_abstract_unix_{send,recv}_fd for af_unix * monitor: Add lxc_cmd_state_server() * monitor: Add TRACE()ers * monitor: Delete unneccessory include file * monitor: Remove dead assignments * monitor: Remove the workaround-code for lxc_abstract_unix_connect * monitor: Remove unlink operation for af_unix * network: Add arg to config clear method * network: Add data arg to set callback * network: Add ifindex field for host veth device * network: Add lxc_log_configured_netdevs() * network: Add missing checks for empty links * network: Add network counter * network: Add warning when ignoring MTU * network: Clear ifindeces * network: Delete ovs for unprivileged networks * network: Document all fields in struct lxc_netdev * network: Don't delete net devs we didn't create * network: Fix grammar * network: Implement lxc_get_netdev_by_idx() * network: Log cleanup thread pid for openswitch * network: Log ifindex * network: Log ifindex for host side veth device * network: Log veth_attr.pair and veth_attr.veth1 * network: Move config_value_empty() to confile_utils * network: Perform network validation at creation time * network: Remove allocation from lxc_mkifname() * network: Remove dead assignments * network: Remove netpipe * network: Retrieve correct names and ifindices * network: Retrieve the host's veth device ifindex * network: Rework network creation * network: Send ifindex for unpriv networks * network: Stop recording saved physical net devices * network: Use correct network device name * network: Use send()/recv() * network: Use single helper to delete networks * network: Use static memory for net device names * openvswitch: Delete ports intelligently * seccomp: Export the seccomp filter after load it into kernel successful * seccomp: Print action name in log * seccomp: s/n-new-privs/no-new-privs/g * seccomp: Update comment for function parse_config * start: Add lxc_free_handler() * start: Add lxc_init_handler() * start: Document all handler fields * start: Don't call lxc_map_ids() without id map * start: Don't close inherited namespace fds * start: Don't let data_sock users close the fd * start: Dup std{in,out,err} to pty slave * start: Ensure cgroups are cleaned up * start: Generalize lxc_check_inherited() * start: Log sending and receiving of tty fds * start: lxc_setup() after unshare(CLONE_NEWCGROUP) * start: Move env setup before container setup * start: Pass LXC_LOG_LEVEL to hooks * start: Pin rootfs when privileged * start: Remove dead variable * start: Send state to legacy lxc-monitord state server even if no state clients registered * start: Set environment variables correctly * start: Switch from SOCK_DGRAM to SOCK_STREAM * start: Switch ids at last possible instance * start: Use separate socket on daemonized start * start: Use userns_exec_full() * state: Remove lxc_rmstate declaration * storage: Add storage_utils.{c.h} * storage: Avoid segfault * storage: Default to orig type on identical paths * storage: Record output from mkfs.* * storage: Rename files "bdev" -> "storage" * storage: Use userns_exec_full() * storage/dir: Using 'add-required_remount_flags' function to add required flags * storage/loop: Detect loop file * storage/overlayfs: Fix wrong path * storage/overlay: Handle overlay for stable 2.0 * template: Remove obsolete bind-mounts from userns.conf * template: Use "rsync -SHaAX" to copy the cached rootfs into place * template/alpine: Add support for ppc64le * template/alpine: Change file check to also check file size (-f => -s) * template/archlinux: Change locale "en-US.UTF-8" to "en_US.UTF-8" * template/centos: Add cronie to the pkg list * template/centos: Use altarch mirror for CentOS on arches other than i386 and x86_64 * template/debian: Add aarch64 -> arm64 mapping * template/debian: Add buster as a valid release * template/debian: Don't force getty@ configuration * template/debian: Use deb.debian.org as the default Debian mirror * template/download: Fix syntax error * template/download: Sanitize script with shellcheck * template/opensuse: Add Tumbleweed as supported release * template/opensuse: Fix tumbleweed software selection * template/opensuse: getty.target.wants does not always exists * template/opensuse: Support leap 42.3 * template/opensuse: Tumbleweed has no update repo * template/plamo: Delete unnecessary process during container shutdown * template/ubuntu: Check that there is netplan binary, rather than just just a config directory * template/ubuntu: Conditionally move upstart ssh job, as it is now optional * template/ubuntu: Support netplan in newer releases by default * tests: Adapt lxc-user-nic tests to new syntax * tests: Add corner-case tests for lxc_safe_{u}int() * tests: Add item clear and config file tests * tests: Add test script to test the ro option of lxc.rootfs.options * tests: Add unit tests for idmap parser * tests: Avoid NULL pointer dereference * tests: Compare return value to expected value whenever we can * tests: Define a network before checks * tests: Don't fail when no processes for the user exist * tests: Enforce all methods for config items * tests: Remove dead assignments * tests: Remove the temp container directory * tests: Shortlived daemonized containers * tests: Support systemd hybrid cgroups * tools: Add additional cgroup checks * tools: Print "-devel" when LXC_DEVEL is true * tools: Use "which" * tools/lxc-attach: Allow for situations without /dev/tty * tools/lxc-checkconfig: Add CONFIG_NETFILTER_XT_MATCH_COMMENT * tools/lxc-checkconfig: Add probe status checking * tools/lxc-execute: Print error message when failed * tools/lxc-ls: Return all containers by default * tools/lxc-monitord: Exit when receiving a quit command * tools/lxc-unshare: Do not pass NULL pointer * tools/lxc-user-nic: Add new {create,delete} subcommands * tools/lxc-user-nic: Check db before trying to delete * tools/lxc-user-nic: Fix adding database entries * tools/lxc-user-nic: Fix memleak * tools/lxc-user-nic: Free memory and check for error * tools/lxc-user-nic: Initialize vars to silence gcc-7 * tools/lxc-user-nic: Keep lines from other {users,links} * tools/lxc-user-nic: Remove delta between master + stable * tools/lxc-user-nic: Remove double initialization * tools/lxc-user-nic: Rework renaming net devices * tools/lxc-user-nic: Simplify logic * tools/lxc-user-nic: Test privilege over netns on delete * tools/lxc-usernsexec: Remove dead assignments * travis: Fix builds * utils: Add has_fs_type() + is_fs_type() * utils: Add lxc_nic_exists() * utils: Add lxc_safe_ulong() * utils: Add run_command * utils: Close parent end in child process after fork * utils: Do not write to 0 sized buffer * utils: Duplicate stderr as well in lxc_popen() * utils: Fix lxc_mount_proc_if_needed() * utils: Fix lxc_popen()/lxc_pclose() * utils: Fix mem leak with realpath * utils: Fix num parsing functions * utils: Fix ppc64le builds * utils: Fix the way to detect blocking signal * utils: lxc_popen() remove dead assignments * utils: Move helpers from cgfsng.c to utils.{c,h} * utils: Rework lxc_deslashify() * utils: Switch to has_fs_type() * utils: Use 1LU otherwise we overflow * utils: Use access instead of stat- removed ldconfig from lxc %post section- Fix libcap-progs dependency. The 'setcap' binary is located in /sbin instead of /usr/sbin but it's best to depend on the actual package instead since the location might change in the future.- removed apparmor-rpm-macros again, as it is not needed for the current %post solution- added Requires for apparmor-abstractions and BuildRequires for apparmor-rpm-macros to apply the fix for boo#1036360- added correct reload of apparmor to %post- added workaround for #bsc1041291 to allow builds on Tumbleweed with gcc7, until this bug in gcc7 is fixed...- Update to version 2.0.8 * Security fix for CVE-2017-5985 * All templates have been updated to not set default passwords anymore, instead requiring lxc-attach be used to configure users. * This may affect some automated environments that were relying on our default (very much insecure) users. Bugfixes: Make lxc-start-ephemeral Python 3.2-compatible Fix typo Allow build without sys/capability.h lxc-opensuse: fix default value for release code util: always malloc for setproctitle util: update setproctitle comments confile: clear lxc.network..ipv{4,6} when empty lxc_setup_tios(): Ignore SIGTTOU and SIGTTIN signals Make lxc-net return non-zero on failure seccomp: allow x32 guests on amd64 hosts. Add HAVE_LIBCAP c/r: only supply --ext-mount-map for bind mounts Added 'mkdir -p' functionality in create_or_remove_cgroup Use LXC_ROOTFS_MOUNT in clonehostname hook squeeze is not a supported release anymore, drop the key start: dumb down SIGCHLD from WARN() to NOTICE() log: fix lxc_unix_epoch_to_utc() cgfsng: make trim() safer seccomp: set SCMP_FLTATR_ATL_TSKIP if available lxc-user-nic: re-order #includes lxc-user-nic: improve + bugfix lxc-user-nic: delete link on failure conf: only try to delete veth when privileged Fix lxc-containers to support multiple bridges Fix mixed tab/spaces in previous patch lxc-alpine: use dl-cdn.a.o as default mirror instead of random one lxc-checkconfig: verify new[ug]idmap are setuid-root [templates] archlinux: resolve conflicting files [templates] archlinux: noneed default_timezone variable python3: Deal with potential NULL char* lxc-download.in / allow setting keyserver from env lxc-download.in / Document keyserver change in help Change variable check to match existing style tree-wide: include directly conf/ile: make sure buffer is large enough tree-wide: include directly tests: Support running on IPv6 networks tests: Kill containers (don't wait for shutdown) Fix opening wrong file in suggest_default_idmap do not set the root password in the debian template do not set insecure passwords don't set a default password for altlinux, gentoo, openmandriva and pld tools: exit with return code of lxc_execute() Keep veth.pair.name on network shutdown Makefile: fix static clang init.lxc build Avoid waiting for bridge interface if disabled in sysconfig/lxc | lxc-net via USE_LXC_BRIDGE Increased buffer length in print_stats() avoid assigning to a variable which is not POSIX shell proof (bug #1498) remove obsolete note about api stability conf: less error prone pointer access conf: lxc_map_ids() non-functional changes caps: add lxc_{proc,file}_cap_is_set() conf: check for {filecaps,setuid} on new{g,u}idmap conf: improve log when mounting rootfs ls: simplify the judgment condition when list active containers fix typo introduced in #1509 attach|unshare: fix the wrong comment caps: skip file capability checks on android autotools: check for cap_get_file caps: return false if caps are not supported conf: non-functional changes to setup_pts() conf: use bind-mount for /dev/ptmx conf: non-functional changes utils: use loop device helpers from LXD create ISSUE_TEMPLATE.md cgroups: improve cgfsng debugging issue template: fix typo conf: close fd in lxc_setup_devpts() conf: non-functional changes utils: tweak lxc_mount_proc_if_needed() Change sshd template to work with Ubuntu 17.04 conf: order mount options conf: add MS_LAZYTIME to mount options monitor: report errno on exec() error af unix: allow for maximum socket name commands: avoid NULL pointer dereference commands: non-functional changes lxccontainer: avoid NULL pointer dereference monitor: simplify abstract socket logic precise is not the latest LTS, let's use xenial instead fix the wrong exit status conf: non-functional changes lxc_fill_autodev() conf: remove /dev/console from lxc_fill_autodev() conf: non-functional changes lxc_setup() conf: non-functional changes to console functions conf: improve lxc_setup_dev_console() conf: lxc_setup_ttydir_console() config: remove /dev/console bind mount doc: document console behavior utils: add lxc_unstack_mountpoint() conf: unstack all mounts atop /dev/console console: fail when we cannot allocate peer tty start: remove umount2() conf: non-functional changes utils: handle > 2^31 in lxc_unstack_mountpoint() Install systemd units for CentOS Merge ubuntu and debiancase start: add crucial details about lxc_spawn() - Deleted patches that have been backported before: - 0003-CVE-2017-5985-Ensure-target-netns-is-caller-owned.patch - 0001-tree-wide-include-sys-sysmacros.h-directly.patch - 0002-tree-wide-include-sys-sysmacros.h-directly.patch - added signature verification- Replace %__cp by cp- fix for boo#1028264 added patch 0003-CVE-2017-5985-Ensure-target-netns-is-caller-owned.patch- backported two patches to get the package to build again for Tumbleweed (applied only on tumbleweed aka suse_version >1315) 0001-tree-wide-include-sys-sysmacros.h-directly.patch 0002-tree-wide-include-sys-sysmacros.h-directly.patch- all patches (00*.patch) are upstream already, thus deleted; patch lxc-aa_allow_incomplete-default.patch is now reworked and added as a drop-in file in /usr/share/lxc/config/common.conf.d/ 0001-bdev-use-correct-overlay-module-name.patch 0002-cleanup-tools-remove-name-from-lxc-top-usage-message.patch 0003-cleanup-whitespaces-in-option-alignment-for-lxc-exec.patch 0004-Use-full-GPG-fingerprint-instead-of-long-IDs.patch 0005-tools-move-rcfile-to-the-common-options-list.patch 0006-tools-set-configfile-after-load_config.patch 0007-doc-add-rcfile-to-common-opts.patch 0008-doc-Update-Korean-lxc-attach-1.patch 0009-doc-Add-rcfile-to-Korean-common-opts.patch 0010-doc-Add-rcfile-to-Japanese-common-opts.patch 0011-tools-use-exit-EXIT_-everywhere.patch 0012-tools-unify-exit-calls-outside-of-main.patch 0013-utils-Add-mips-signalfd-syscall-numbers.patch 0014-seccomp-Implement-MIPS-seccomp-handling.patch 0015-seccomp-Add-mips-and-mips64-entries-to-lxc_config_pa.patch 0016-seccomp-fix-strerror.patch 0017-confile-add-more-archs-to-lxc_config_parse_arch.patch 0018-seccomp-add-support-for-s390x.patch 0019-seccomp-remove-double-include-and-order-includes.patch 0020-seccomp-non-functional-changes.patch 0021-templates-use-fd-9-instead-of-200.patch 0022-templates-fedora-requires-openssl-binary.patch 0023-tools-use-boolean-for-ret-in-lxc_device.c.patch 0024-c-r-use-proc-self-tid-children-instead-of-pidfile.patch 0025-c-r-Fix-pid_t-on-some-arches.patch 0026-templates-Add-mips-hostarch-detection-to-debian.patch 0027-cleanup-replace-tabs-wth-spaces-in-usage-strings.patch lxc-aa_allow_incomplete-default.patch 0001-attach-do-not-send-procfd-to-attached-process.patch- update to version 2.0.7 This is the seventh bugfix release for LXC 2.0. The main bugfixes in this release are: - attach: Close lsm label file descriptor - attach: Non-functional changes - attach: Simplify lsm_openat() - caps: Add lxc_cap_is_set() - conf: attach: Save errno across call to close - conf: Clearly report to either use drop or keep - conf: criu: Add make_anonymous_mount_file() - conf: Fix suggest_default_idmap() - configure: Add --enable-gnutls option - configure: Check for memfd_create() - configure: Check whether gettid() is declared - configure: Do not allow variable length arrays - configure: Remove -Werror=vla - configure: Use AC_HEADER_MAJOR to detect major()/minor()/makedev() - conf: Non-functional changes - conf: Remove thread-unsafe strsignal + improve log - init: Add cgroupfs-mount to Should-Start/Stop sysvinit LSB headers - log: Add lxc_unix_epoch_to_utc() - log: Annotate lxc_unix_epoch_to_utc() - log: Drop all timezone conversion functions - log: Make sure that date is correctly formatted - log: Use lxc_unix_epoch_to_utc() - log: Use N/A if getpid() != gettid() when threaded - log: Use thread-safe localtime_r() - lvm: Supress warnings about leaked files - lxccontainer: Log failure to send sig to init pid - monitor: Add more logging - monitor: Close mainloop on exit if we opened it - monitor: Improve log + set log level to DEBUG - monitor: Log which pipe fd is currently used - monitor: Make lxc-monitord async signal safe - monitor: Non-functional changes - python3-lxc: Fix api_test.py on s390x - start: Check for CAP_SETGID before setgroups() - start: Fix execute and improve setgroups() calls - state: Use async signal safe fun in lxc_wait() - templates: lxc-debian: Don't try to get stuff from /usr/lib/systemd on the host - templates: lxc-debian: Fix getty service startup - templates: lxc-debian: Fix typo in calling dpkg with --print-foreign-architectures option - templates: lxc-debian: Handle ppc hostarch -> powerpc - templates: lxc-opensuse: Change openSUSE default release to Leap 42.2 - templates: lxc-opensuse: Remove libgcc_s1 - templates: lxc-opensuse: Remove poweroff.target -> sigpwr.target copy - templates: lxc-opensuse: Set to be unconfined by AppArmor - templates: lxc-opensuse: Update for Leap 42.2 - tests; Don't cause test failures on cleanup errors - tests: Skip unpriv tests on broken overlay module - tools: Improve logging - tools: lxc-start: Remove c->is_defined(c) check - tools: lxc-start: Set configfile after load_config - tools: Only check for O_RDONLY - tree-wide: Random macro cleanups - tree-wide: Remove any variable length arrays - tree-wide: Sic semper assertis! - utils: Add macro __LXC_NUMSTRLEN - utils: Add uid, gid, group convenience wrappers - commented out the patches, as they no longer apply cleanly- CVE-2016-8649: lxc: guest escape via ptrace of lxc-attach (bsc#1010933). 0001-attach-do-not-send-procfd-to-attached-process.patch- setcap has been moved to /usr/sbin (boo#998326).- update lxc to 2.0.4 - add 0001-bdev-use-correct-overlay-module-name.patch - add 0002-cleanup-tools-remove-name-from-lxc-top-usage-message.patch - add 0003-cleanup-whitespaces-in-option-alignment-for-lxc-exec.patch - add 0004-Use-full-GPG-fingerprint-instead-of-long-IDs.patch - add 0005-tools-move-rcfile-to-the-common-options-list.patch - add 0006-tools-set-configfile-after-load_config.patch - add 0007-doc-add-rcfile-to-common-opts.patch - add 0008-doc-Update-Korean-lxc-attach-1.patch - add 0009-doc-Add-rcfile-to-Korean-common-opts.patch - add 0010-doc-Add-rcfile-to-Japanese-common-opts.patch - add 0011-tools-use-exit-EXIT_-everywhere.patch - add 0012-tools-unify-exit-calls-outside-of-main.patch - add 0013-utils-Add-mips-signalfd-syscall-numbers.patch - add 0014-seccomp-Implement-MIPS-seccomp-handling.patch - add 0015-seccomp-Add-mips-and-mips64-entries-to-lxc_config_pa.patch - add 0016-seccomp-fix-strerror.patch - add 0017-confile-add-more-archs-to-lxc_config_parse_arch.patch - add 0018-seccomp-add-support-for-s390x.patch - add 0019-seccomp-remove-double-include-and-order-includes.patch - add 0020-seccomp-non-functional-changes.patch - add 0021-templates-use-fd-9-instead-of-200.patch - add 0022-templates-fedora-requires-openssl-binary.patch - add 0023-tools-use-boolean-for-ret-in-lxc_device.c.patch - add 0024-c-r-use-proc-self-tid-children-instead-of-pidfile.patch - add 0025-c-r-Fix-pid_t-on-some-arches.patch - add 0026-templates-Add-mips-hostarch-detection-to-debian.patch - add 0027-cleanup-replace-tabs-wth-spaces-in-usage-strings.patch- Abolish old macro use. Remove ancient %clean section. Avoid sh invocation for simple ldconfig calls.- add lxcfs dependency: lxc relies on lxcfs for a long time now to provide container aware /proc files. The /sys/fs/cgroup part is slowly phased out because we now have cgroup namespaces.- Split into packages to follow best practice. * lxc * liblxc1 * liblxc-devel Also, we need liblxc1 to be separately installable from LXC for LXD. - Tweak descriptions.- Update to 2.0.3 (changes since 2.0.1): * apparmor: Refresh generated file * apparmor: add make-rslave to usr.bin.lxc-start * apparmor: Allow bind-mounts and {r}shared/{r}private * apparmor: allow mount move * apparmor: Update mount states handling * core: Drop lxc-devsetup as unneeded by current autodev * core: Fix redefinition of struct in6_addr * core: Include all lxcmntent.h function declarations on Bionic * c/r: c/r: use criu's "full" mode for cgroups * systemd: start containers in foreground when using the lxc@.service * templates: debian: Make sure init is installed * templates: oracle: Fix console login * templates: plamo: Fix various issues * templates: ubuntu: Install apt-transport-https by default * travis: ensure 'make install' doesn't fail * travis: test VPATH builds * upstart: Force lxc-instance to behave like a good Upstart client- Update to 2.0.1: Lots of fixes and enhancements. https://linuxcontainers.org/lxc/news/#lxc-201-release-announcement-16th-of-may-2016 - Add criu to recommends for C/R support - Add a workaround for lxc-start failure without apparmor: lxc-aa_allow_incomplete-default.patch - Drop obsoleted patch: lxc-1.0.7-fix-bashisms.patch- Update to 1.1.5- Remove attach-mount-a-sane-prox-for-LSM-setup.patch- Update to 1.1.4 * Remove CVE-2015-1331-lxclock-use-run-lxc-lock-rather-than-r.patch * Remove CVE-2015-1334-Don-t-use-the-container-s-proc-during-.patch * Remove CVE-2015-1335-Protecti-container-mounts-against-symlinks.patch * Remove templates-lxc-opensuse-use-rpm-to-determine-build-ve.patch Now integrated into the current version- Added CVE-2015-1335-Protecti-container-mounts-against-symlinks.patch (bsc#946744)- Added templates-lxc-opensuse-use-rpm-to-determine-build-ve.patch- Added CVE-2015-1331-lxclock-use-run-lxc-lock-rather-than-r.patch (bnc#938522) - Added attach-mount-a-sane-prox-for-LSM-setup.patch (bnc#938523) - Added CVE-2015-1334-Don-t-use-the-container-s-proc-during-.patch (bnc#938523)- update to 1.1.2 - Removed 0001-added-upstream-action-fallback-create-directory-loca.patch - Removed 0003-lxc-opensuse-template-now-understands-release-argume.patch - Removed 0004-lxc-opensuse.in-Added-explanation-on-how-to-use-the-.patch - Removed 0005-lxc-opensuse.in-Check-if-given-argument-is-a-valid-r.patch - Removed 0006-lxc-opensuse-default-release-changed-to-13.1-as-12.3.patch - Removed 0007-lxc-opensuse-Disabling-builds-on-13.2-Tumbleweed-onl.patch- fix bashisms in lxc-autostart-helper script - add patches: + lxc-1.0.7-fix-bashisms.patch- Improved error message- Disabling builds on 13.2/Tumbleweed only, if build version before 20141120 Patch 0007-lxc-opensuse-Disabling-builds-on-13.2-Tumbleweed-onl.patch- lxc-opensuse default release changed to 13.1, as 12.3 reaches end-of-life soon Patch 0006-lxc-opensuse-default-release-changed-to-13.1-as-12.3.patch- patch 0002-Disable-building-opensuse-containers-on-openSUSE13.2.patch has been sent upstream and is included in version 1.0.7- update to version 1.0.7 Core: Include network prefix when ipv4/ipv6 keys are queried apparmor: silence 'silent' mount denials add file/func/line to debug info apparmor: restrict signal and ptrace for processes cgmanager: several fixes lxc: don't call pivot_root if / is on a ramfs fix lxc.mount.auto clearing conf.c: Define MS_PRIVATE for Android network: convert param ifname to const. network: check result of if_nametoindex(). network: allow lxc_network_move_by_index() rename netdev in moving. network: introduce a interface named lxc_netdev_isup(). lxccontainer.c: rename enter_to_ns to enter_net_ns lxc_global_config_value can return the default lxc.cgroup.pattern whether root or non-root do_rootfs_setup: fix return bugs lxc-start: don't re-try to mount rootfs if we already did so attach: don't use confstr(_CS_PATH) lxc_global_config_value: simplify the theme Fixed mismatch on ipvX gateway attach: don't ignore sigint/sigkill if stdin is redirected cgmanager: fix 'attach' with "all" controller support lxc/utils: bugfix freed pointer return value conf.c: change 'instanciate' to 'instantiate' fix wrong nlmsg_len Remounts bind mounts if read-only flag is provided Allow lxc_clear_config_item to clear idmaps. overlay and aufs clone_paths: be more robust overlayfs: overlayfs.v22 or higher needs workdir option Fix clone issues Improve veth error cases logging fixed typo in comment audit: added capacity and reserve() to nlmsg rmdir and lxc_unpriv returns non-negative error codes typofixes - https://github.com/vlajos/misspell_fixer Bindings: add src/python-lxc/setup.py into .gitignore Tests: tests: Fix unpriv test lxc-test-unpriv: don't clear out /etc/lxc/lxc-usernet lxc-test-unpriv: test for different cgroups per subsystem tests: try again when waitpid() sets errno as EINTR Commands: lxc_start: ERROR if container is already running. lxc-start: return 0 rather than error if container is already running Make legacy lxc-ls more robust lxc_info: flush stdout before calling routines which may fork Templates: Fix typo in lxc-gentoo template busybox template: support for unprivileged containers busybox template: mount fstab when available Fix another gentoo template typo Create the apt proxy in the cache instead of the 1st container lxc-plamo: mount tmpfs on /dev/shm lxc-cirros: support creating+running unprivileged Fix lxc-openmandriva.in typo. Fix lxc-centos.in typo. lxc-opensuse: Disable on 13.2 lxc-alpine: make sure /dev/shm is world writeable lxc-alpine: create a default tty for console lxc-debian: added support for package installation lxc-debian: Fix default mirrors lxc-debian: support systemd as PID 1 lxc-debian: adjust init system configurations lxc-debian: mask both Wheezy and Jessie udev services lxc-opensuse: Disabling builds on openSUSE Tumbleweed, detection improved. Documentation: Fix the lxc manpage a bit lxc-create -t option is not optional doc: Update kernel and cgroup info in Japanese lxc(7) tabs/spaces consistency- changed patch 0002 to work on newer Tumbleweed snapshots, where os-release does not contain 'Harlequin' anymore- backported the patches from upstream, so that the opensuse template now accepts releases as arguments, and it is possible to install 12.3, 13.1 or 13.2 * 0003-lxc-opensuse-template-now-understands-release-argume.patch * 0004-lxc-opensuse.in-Added-explanation-on-how-to-use-the-.patch * 0005-lxc-opensuse.in-Check-if-given-argument-is-a-valid-r.patch- Added 0002-Disable-building-opensuse-containers-on-openSUSE13.2.patch Disable building opensuse containers on openSUSE 13.2 due to changed build behaviour (bsc#905638)- added 0001-added-upstream-action-fallback-create-directory-loca.patch * adds action fallback available upstream * creates directory /run/lock/subsys/ if not available - deleted 0001-systemd-Ensure-action-is-defined.patch/bin/sh/bin/sh/bin/sh/bin/shlamb18 1556288001  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`a3.1.0-lp150.2.13.13.1.0-lp150.2.13.13.1.0-lp150.2.13.1  usr.bin.lxc-startlxclxcdefault.conflxc-attachlxc-autostartlxc-cgrouplxc-checkconfiglxc-checkpointlxc-configlxc-consolelxc-copylxc-createlxc-createconfiglxc-destroylxc-devicelxc-executelxc-freezelxc-infolxc-lslxc-monitorlxc-snapshotlxc-startlxc-stoplxc-toplxc-unfreezelxc-unsharelxc-update-configlxc-usernsexeclxc-waitlxc-net.servicelxc.servicelxc@.serviceinit.lxcrclxcrclxc-netlxcFAQ.txtlxcconfigcommon.confcommon.conf.d30-openSUSE-apparmor.confREADMEcommon.seccompnesting.confoci.common.confuserns.confhooksclonehostnamedhclientdhclient-scriptmountecryptfsrootnvidiasquid-deb-proxy-clientubuntu-cloud-preplxc-patch.pylxc.functionsselinuxlxc.iflxc.tetemplateslxc-busyboxlxc-downloadlxc-locallxc-ocilxc-attach.1.gzlxc-autostart.1.gzlxc-cgroup.1.gzlxc-checkconfig.1.gzlxc-checkpoint.1.gzlxc-config.1.gzlxc-console.1.gzlxc-copy.1.gzlxc-create.1.gzlxc-destroy.1.gzlxc-device.1.gzlxc-execute.1.gzlxc-freeze.1.gzlxc-info.1.gzlxc-ls.1.gzlxc-monitor.1.gzlxc-snapshot.1.gzlxc-start.1.gzlxc-stop.1.gzlxc-top.1.gzlxc-unfreeze.1.gzlxc-unshare.1.gzlxc-update-config.1.gzlxc-user-nic.1.gzlxc-usernsexec.1.gzlxc-wait.1.gzlxc-usernet.5.gzlxc.conf.5.gzlxc.container.conf.5.gzlxc.system.conf.5.gzlxc.7.gz/etc/apparmor.d//etc/default//etc//etc/lxc//usr/bin//usr/lib/systemd/system//usr/sbin//usr/share/doc/packages//usr/share/doc/packages/lxc//usr/share//usr/share/lxc//usr/share/lxc/config//usr/share/lxc/config/common.conf.d//usr/share/lxc/hooks//usr/share/lxc/selinux//usr/share/lxc/templates//usr/share/man/man1//usr/share/man/man5//usr/share/man/man7/-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:10109/openSUSE_Leap_15.0_Update/11762964e97175a12c9853ebbcef30d2-lxc.openSUSE_Leap_15.0_Updatedrpmxz5x86_64-suse-linux     !"#$%$%$%#%%$%%$$%#%%%%%%%%%%$%$$C source, ASCII textASCII textdirectoryELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=32f86e3cb4d5aa196168f06513f130133f0dfd9e, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=2da181b7db66a9ad712a5f4fc03f78e1234e978a, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=428da9e0fdae4cdf7f47eadaad31d36aecaeb888, strippedPOSIX shell script, ASCII text executableELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=262101707699e3858e3c4a75569c3d235020d438, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=d28b2bf574c04f69e2fcfb103e5918fc2bcbf132, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=c632636dfc412de25cc49ee423b4e750ecf57007, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=134dce67da5be9d057ac81ddea7cc95599297c78, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=fb3dc897a8b4ca8909a350a10fd1022b3cf6d4e8, strippedBourne-Again shell script, ASCII text executableELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=8d658679155b847b0d46d0d5005c49b2e0dd0f44, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=596f6262983dbd5f33302252729a8e544b92e267, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=df3c0f7bae9c35554c031249ff83f10defacf66a, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=f063f30fa21edc12ee786ccf1383bffed55fd2a5, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=23f59c46dc864280eee4386976a2b28ce0618b39, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=5961bf060f7c7079c4ab36264bf33f2ec2d8ae59, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=7ebc288aeecbb45af29a096670ba4b42c5e0f791, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=72c9ef1d532c750bccd3740fb582d20cf02ec9b5, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=20847b1731aae85f26e98c3379f1dbc700f34a2a, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=daf309b5f76e408c922914c68855f32e55e8c52b, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=5c794856b02dbaa035c474be9a8e8cc096d01acd, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=dfcd2c5ea97195afca067c7bbc607331fcfc1fb2, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=9fab6ec27c71faf572eaf3f58d6228d4454f19ca, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=d718e6c4d135106e2c429c6d6aa58772760d5eb5, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=bbb735c7e93a917fbad6ce94f3707a0e8d52cc49, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=0fe37c51491661d3739f11eac28fb74f89e43af9, strippedPOSIX shell script, UTF-8 Unicode text executablePython script, ASCII text executableSE Linux policy interface sourceC++ source, ASCII textBourne-Again shell script, UTF-8 Unicode text executabletroff or preprocessor input, ASCII text, with very long lines (gzip compressed data, max compression, from Unix)troff or preprocessor input, UTF-8 Unicode text (gzip compressed data, max compression, from Unix)troff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix) %-6?HIR[dmu~       RRR R R R RRRRRR R R R RRRRRR R R R RRRRRR R R R RRRRRRR R R RRRRRR R R R RRRRR RR R R RRRRR RR R R RRRRRR R R R RRRRRRR R R R RRRRRR R R R RRRRRR R R R RRRRRR R R RRRRRR R R R RRRRRR R R R RRRRRR R R R RRRRRR R R R RRRRRRR R R R RRRRRR R R RRRRRR R R R RRRRRR RR R R RRRRRRRR RR RR R RR RRRRRRRR R R R RRRRRR RR R R R RRRRRRRRRRRRRRMuČ%z":buildcriu2.0 utf-8fda5871c03a04b404f1d84f33af6458d9f93d418b1bb838f586fc24690d6599b?p7zXZ !t/]"k%f0m9)V^+Xxl懶ku\_aI1$P94 Qme5g=9{܅\g%lNo{oxNJm`hٶ GAaG~Jx]n"IXA4HӍ+|f4#nprr1{RGmbl:+ZÍީ7O^`!`mۇ+jZ8eȫB år4S]}|].4:zx}Y. Y"kr>TɈ}V r5Y'. 3jgWgy}nz='oEi_~d'+8]BLI,)g7=RgA3``\7hpi1M$dͷ{Hˑk?e?JmAw C 2ezZY?0*}Gva Y,#%~Nc( $ >v'cى+!}YWe'!M Bl`~7!d 'Ze wcˤE))yNWtM}ЙM p~*>>J{pdC:Fyᇡ{#}A3%9 gz1لtʯv K#j8 /9'R2sgb8U~`BŚ]ܱ !1>u2)/tt%n>a2xٜ f lJA(^ΣD,(j[jt! oU͐3& ͠l+ ٵ9{ e`02"3Vf.2qNYYc=%ׁ~=i^'ցBPb|⩶B Լ:;nPhDz946>1)/T*|h[I&U­Z=W-l}hֶ6 _CBW¼H-.jE؟5\L;ϒm3GKkbOV{Y^u?;G#x5U[cFag@+ƙU_E 5|P%bgG tc|+c7cZw!,(FO;G<К,Y[mkvuV @R`@ڟNK7LDS.r;g὚*]Z8⎆7 =XRTlxb8o{;::IՁ`zajYxb;\e?t9=FUVL!xFxXD ?_ؕ}1Ϭ5r|Ip, *\!`wL+p)~~LFκ^&Z?+*B #g+y7ښZǗeQ#yh­V na?G|87)&^nہ+IO{!y-:nufZv‹yu$bqfn@w[D4Mɠ -a!B w ycdZs[o0wP0:^-[ \Tyk)Xi6)o.zpe_-5B c>tc|c40;6mXR$-Ϛ-&"eέÊp^w~l%H݆̱>Bae lqpOZ7;zS":1? ۗ%l+c IUȲ>[ql0|X}e]/Fכ8V! &i[i)6x$xnS ydZb cpL,!CT%;uكV{.jX`ZDeӐjK cXlNE𴢡|TZBb#2^8 :KO ]D ]H&@ I̒ydoet@ЬHUU_dW$ x>/fU|NN$ C7Fn*H;̏-é(^/Bcl܅e'_Nr{wzJH00F4)7Љ$wjSf:5IZn<ś.t,\aw~4EըZ;(2f6VZDsBHU)(JĔf]/:1ŪpNDu<DG/GriN63-,I 5ȡdML{qaY29 N@Gc 1+e覢sFt=G=mNoodgZd }K]k" NB]͝ц (zmNZyqşt=VF4mFFo:xb)B , OBq|ιY%.KKï_| xqM[I]f=‰1zO\Ԉs +́&ZOiuU .,Q;FؤF+W=6C?&+nfI= /ꇄ} c;;Ŏ-sC L //w-'`RZ4^JC 5xΧS,[%UVtfXDShomo8^uZF3JB۷54miG\W1nnӋxm1*2p ECF&0OG9П'S_VΡ]nQjo maaף7GMPz[8n}cK7Kܹ3})ɧ1rOUS/t@|XG`a TTFdafT[1o j9?57\gLF vȄP (*Yc_ mh-w&_;E@D3js97uJ-~߮[ߡFb֯M '^fXcj*Op~B&-cHXB\KhrrFMcܰ A\ @ eîiّ>^ *m-ý]޴ B;ˑjW׌~2] ^ ~E)Pi >&U=Hk$53T̙ VG[t$;PWrj35m,Գ-=Y9u +8<9Sˉ@95EB_]x <KikY3^zLs5.E2ی-HM/7tkg1yD&*d+X[IW> heqV9 Q4iH\(CKUD^˄!侎;9w0UL42=*@c)585GEi4߾q)ssMR'?(T'EpH9`=4CܜڰTw v۲Φp`ۯ9tp&8:`Rdv-fbJɔ6`=@#ƃPHW8͓W4qo֊ ^ P쀐FYÎb_kuO%+9k2=yߕiSJXw SS{]N[]CvvdB)i"}1* S͕~(@ܐc*=+gD*W'Ь709S'*+LGKJ& `:kY6v 6Its[|1zn B])dƨ=!?Tz_`@J?LC ܨTon M0Xd_=AfvZ(9O&8NH`5]wZu i9$\VBv:h*f,{QC^oTnC%N؄[yPd(prsP4j#Jc%TGMq>1?Wq{IKӃ> φۥ6(lm)@i |" f"eiz/}4e}e̓:[_0ŏ)<'!ػ?+u<: S?r;oWߙJۈ5eh&J#Z G~G_; ڀfY?8Z55̽.R>slCwÒ!kވ#-ruuOa7^(@4ߟGd(ށke4Z)K.V^L;-Q'e<+WsmXs ՚p|2Hbj Y_{˚0p^v0Ԓ` 9{"E_)zY$[TX ݺ=IV1cƎUVõ Fhy{G¨ܹS0om5uUDAИ"M>n?5**{M-.ص:7ELX !\o(󕚘!k fKmxk1z$;}-ʿ@Q6Ue>gdBt7ÔKYj˶+'-]s721۰[׃Z(zh3{qZ P7('8Y\pcK5!G6ָ}Y|`Qq9Myw g]>dpƌ4*P(Poo.[7?(.[L 3 ڣimZX Һtݡz1%a$`,+pMALh]w ÊKШw;-<]1; klq;qِKtpy{q.;ƛrOTݬĬf&Hw n$ V z۾+\qu} Q5gG9/VO<;+CglQ}L>Y|&~jLF3<BX0_h2Гtȵ憮fآ"3L}[8-9S=B$qLhw 7ٞGiB !S\ r g,#D{5mA%7Hymn7ڲ%0ͰK=dLeJͿ@S%kVK㛂:|qA{#:3p-&iZ_j}%^AAntw0t${r[RewDv](cedؤFm,-G̚ 3LΗӮ6{1U6%QY_U)h|y`Co-KvpcqiLɄ^y([nq|񌊄7ľ0_W%+O7-*0u!oRYԌݕUn8) :GW_0:X2"Q4nRD3[\P2ߎth*HJz@}h좵&魷ӊ>d^yX umE.<\؊g\8U KF҂< TMThnF%~$3?aYf/Z75p4` !`ObS,CJYʣrh7ݺ7~73tV ¨nWg~CN x6Uw.'DA&/#1`Wj'rV=ׂrxTgL2mIJ _{)yVLxPRX{Nevi:e tV &Y:?mZ}?YO8ʴ)]{N&Y,d3ևաz(՞Է\St-|ݿN)5I$/nvv<@+wa ].Xx[%wRYAa9X#wJ-.ߏS j~oA# (4A;r"ipt1a3O%[B_K8BC=] Py`FHl-@e Ur˹ķþ*G5 Jw#&szoձ ZJqswvx\ռR_.&ċ3,@FJY0.6!mztOV(o>*"yF#r\zyOg8^=0!7/h]kJ׵cor;XE6DΡC6Nw,RvX20^;9/xUՋ-o :"|"%ɞYd֦2. E# d~ VvߧfZTHbsmtY s>;"H0mb4(H#hPaɔ`Ha7--)x^,DGſ/I/85*tIrglů0j=ȘcI0 G^yRz>cqwGeӼ,xa`aL"Q$*lR(V;YŚOG; !ejRdFuIGř̯_?<0sB79d{C?!%ːyUja@BC?/ְHfHp#t* =Z\h:9l(9 Amr/z,'? Ndșut DD -K}NS"VN]h,l="zAtz[+^O;* mÜ*eg"g/q 9bQ\ O1Mf^3w&+ʩ-WJ^KC,F#x++x?w)#{F{7HW9)ȉF i1j(j]+L RЀ=pTc_V @O_@=rXڽIqOrtgLZfe jEbD50N';?H$b ߖHBZVAƶ~># d=updX0Yy9p+G&ܺ$6u'+)Pzv޺:Wsȍ+Zs߰Igߍ%m&[ Lyu"bVFL߀tvN%^PW; xG\Ti~*΀Vʠ]\$Ʉo,$ odokpڴ.K 7"]킹h7jKG'4,,Tn7\u8̓ego-J]"w9K@vd%]Cw3̌+%6%$ޜF9{`<*/Y|%oJ&?,p"yAwoxH<껽B.N?|ebXYEET-'O#Zsy&-ˬKBD s?cbX9SKC6/{T_ iu">+Z⁊0us5rJ#_tERȑ8`PՆE)R/1:3 pTGP :}ul_-{jrr(|B0kY|̬*bj)V.LR`}&//r_a9nQ6Ȉƺ䵉շ jh!.- Pjje)PtJDJD5a>iK("*3;\ݔj.ݰDɉEQ!xċp;y|Τ 3+5zU{]1Wr蚓 5 q#\ހANW9| 7$ܼaeJM<zٖݹdxY۾sbũUH r0,l"ۚ6Mf6w>$ߌHwT0EPIkFc.q WJi.ۖ $}+۵ڨY[wkp}> |#vW85e@k *؋P :6#و"^ս"a)Q"JGNSD_$ȿn(n7B鍋;RQYWz<_O]VA9fMNn.q%E&zq7o"(JW^,'3j6z["ܓqއAvVM^`[@4}9peğ"LrIX8OX ;bUDC5h)c*O†/2tNw-r@J_vZ݋_XSJj!Zբwj6ŠuUdʑw$W.J;u}* O b{+MPB3cjJG8-ŴhQgDAr- -On)\FDod.Rh!E&:y1q\P^ߡ*3!@ *ܫ:kܗs?}%mk HU #SgwvHW^C =!ho~`H"fA\Sys@@^N++o sFK1SgTdn2n2eSr-"HqOͨQV:?P&W Ψ(EKpQLOie__ aq0Uak3)12(ufn2OJ5F6|'Bpͷ:+$U,d.j*D!j"r_1IzqR}R68׷v@K^aRuH5MocKC ^RJMq1LkɚѸ~/^tG{%3f/8:y}] g dgs> L'b4IݢL S8=v^* X#40]k{wכ0цHhY,v=\ɅvH:ψLo}r1դP 0"`hoyF'yjc.{8 Dp?lD]]0F*}Ӝ6&"<1}- o7V` 57ڿ]GL}GNwzf_Fۚt9q3$xÊ,ӺJ7=&U(fo MUhBafrR_+$T,]5nLGZ^iF` ћ, P|h(=LQ=vek0 EsxtNiF';*>D#tNx=z|ehRl Pq6_`f^I&;uh$4?A|uޞSdJPpӺ$?Ʒ;F e UX^1 ?W?X3ONTSZB 2'MyG㨲}_H ?ZhN'ZN & A8v+CA+׬AEddYC%nL&zڀ;+k"2-v&r% VY3tq[/'+E!LS,@|QxE*ʝZPt'%54e Cec)|/@ Q @Ffx{L/pD~ۈ0(.!{ _XTR|%9YC$ғzE J:'Xs$q0 !2j&苀Հ -K6|xT7gh_\bsMG/mLȔDu,듮Q lێ>%=B,x*޺$䄊 IҼ2ڼ cʋO.]/Li%LDYщw$S̆D{nN"}|0X<0)K]=J vwO:g -z 'PO8==THٜNwvc֥5=%+#ho@KfAQ6F|72̋6S.EMibH6gЙXN ?ߏq"8Pz,u)`?ayIiE{|ہgkP.?diSc4n)/~%7zϸ";vd2V&C[!Xܫ|ʅ[iONb?e4>vP0uy턲}׵[FOŢQ~C_#_4_PaNiqUBMzts9۵3fho1p a[^MK!O9d& ˠ%}R-ˏ,ۯhϑK& ax5 ތQ.-έFȋz,6sijY҂~jN$.|ZTkEJIk%D 2qRo)®bG`n=>!";X*飈;> r͛f0b)S]j5_X+ ̼QO:qQ}8^֋қex̀Wg.2z>i\*(!CE%q(CY&h?>ZV,yi;|uh!ooCz(›gZ#nƶtn;.l,6F$-ł1Hy7:a<28& YFYcmaf5um̋]aauv a?JFTa7o^,C3aNF@Ũ8S^b/r)`qԮE;6@a@dY09F+9DL,A9?]Q_盋HjbLYHXB5G\Q3O~?o1g#q [&zGn*[ @/Fɕ4?6}}XIa~yOV¯ݐb&)2)r@21Z0$yYZOI8OrnX8 nz97fa貸ooȠ6?ٽ)~hN&4a띞!ڄ`[`|vW՜.(m2]EG {P!z?,_L򝌋zYNܶbgkzgvm'C%9?9)RB 0mx 7Q#aKv2uDjvYl-p$wX20nYsIf#wJmUFjS sTӅ0?.o=KTPM1 ;INc]*;vh5wo%cWXTW eu'[E]Ȟ#PEvy9JF*7JBj;܄A3yG{Q~SMM [)#{uoҿ⿝<[Ѯ<O^2( Ӿ*fnI:4>1L@\%lڮ8=iX'fS$lPMxi2_.+6@LA{{u!/@D3i }6b)dRъdW|<2˾Q)awRq,)Ioz< %b #bNKa\h͑o[ m񡤾{AǬQ"Pm"1Hp(̹ӥ)3k`Ҵ]J<-hW)_cXb[HRU!#lJD(:> g+[% k:+lp'<{&čkB뉼y没ONYMW蜥/' 7JɬCQ-[/vt-b5W_|.V׬!a4<{%]%Ceb55OE@@A.?V uaPռnW  E/jHA2N^`H2ŭ;s4o򡝚tGeC? \ϩhoM =]D7[/Oύxu*z>MlVKp_Hr"?aYn%l#c- 2ȵ}h1qYK"-^#ȭub$Vrx"*Ԣ.8uغen1˄YYֺnDֻS96{D9*EQL|G݋o#*Vn] g=nߝ: Z㳶#?nvaOﲜ&^+>>_:eYGr{O)i.W4Ph򹄽À+JH[Z:".)sSiRf#L/٘M ur8ݰJqlibBe%+ 'FBxvv#`2o;-KS E4 zVѷ&-aW?vP+o4 OHEr`0ot~JF1΍Ė8ܾ&߃ޥ*W1̈ ]YuCѾc= U3 *zLV\YtRh5p*D@ʆLWbՠlk*z!煾N(:ACFLjw5WWo!Ni^5NَT87 g|{'b|c(QDK`lkPjZ`[D\ H"f!TuسLK.M>\LYlFq)'˿@P,/Vs &;sփU` ( 3Qs s C?KC3:󎺡@dcSasdB}0#^X'ei0A%^X%CmCR VOHf9lsEIv%}vƒ%mژaiYqlslCQ_q%ò7KՏ#acY/L $J:(\-c˕2|7eb.v(-fSRI1 Km#AA C6Ĭ3iE$&BȌ0Ҩ Tި*g+,h|0]AcMP$=7vRd9Y"(}'^.'U$NAf!?#G-Cr\"zGO>P0gjL0Ndw T@ j{VyI^ڠ]y(Qj@t?E O@ڜhK.eW=m)FfJyX'硙R~&6*[(#l&m0c]/ /4E ]x+m9YC }d_t@=Y&m` ]q ;H':c}tmH(҂ҿ:#[%?eou_ fVP@<,^k.KB_ׁ]rco2[vk{rb Ɂ ?v>i4)ٸlp8xdQ4Ϡ#+(dٜŌ'AH=<#Qz΀q38~FJ\{cϻUB#!5QP)~#mް\8Cg?? FA }tK8<'#0ΛVٚ3_ipxv 4L\қDcDDs;B1^;HBOkh9xA.rũralª|2O7HCr9r a$ECTD`j +0Lfn7tԗtwn$cw}*f37ܹF@5t?.S+|Sn"bZ Lcޥ\Ek߰Ui8|pHK 9`"ܝ0a ~Uoֆe5JV)N9|㦒pS/璓OzstM] 4ϱarB,^ÃY"}5\\d~I<81`dC,Kϋs5Pjʎqzi11# >|nN5j^P cX+zQ5^$DR.埸umNAiOh1z fSOb%qck\{q?}Y фypmeA85ucC4:Y 9? e!u-I{MIFP hgCN2Y)&WݫS |Wj}뚈"k t;~ gcAi'lO.CxLC>q mIҧG.DtG5P"$=0߈o_]}-q&E#ڒ*>hU ݽ?F=$a2㦚fBS睢O@t$JnڿɈqtP FvOsrgh1WͨvX=~o}T["J.73߯ljx|L$PdskGÞY3O{BǫSTjL/ ⒭}#%idc#;3)r.G-3#Kk'W> !rle5yH̆Z!EqVJMT+VWxmwR>Q:4NhRhˀ&?Ɋ2S7s81[ 8=N*D?w(IZLs$Y=ś愯 .T&PY2}rAtSJѫ9-d#{8Ǚ\ON{$s7jymJ=D"zԂZ|vCs_y9Ւk98NMB!3*GXO,S}%/:Z9OfCh/nr"KS%ΆY{V'r[ B!eMI,RZg+yq_^"T÷rҞ- {$*b^Eq*/[#Fڭ0MAP܁l1ïQBpk4( ; &-&+1Ud )(C`qܪSTKutriTnoIqvB!u:fJ#еM4A&N7:XvA5:lٕ"wR%QvL#)̢H0Md3ֳM(J~"0FY{(W~6omƳQu^mzSG_v=ɵ0& wz?iM3OvK~$;'Pߏ mz(<}C6UOR`rFr>fJC2RzmCj?b]= Q'&ktVK7d1uԣ3P:3dkrTցb? 4^d-Ze_Gg:FEi+9_kQ h*ML_`aĨ6kѽ>R9n u>@kh"rQWN>o#ܭ-J_7ST;P[߭>AvͻVD!')#fM8E JpTP0dֶ>a\)=ݼSmoQGG]XHݛUTcN2=i5I8_! d+x;MB;eR|)I O 6Ij F0XAc㎒x4a}1O Cڡ&'*+wptEʔj,g\AhX+K=5|2gV/c2v6>$0e c18shiS'm8/cwt #緆X(`dv`ø~B4+@$W5pxmVPh⢌hWd~R3cC.&ux# ^/E9d.%̆-7@@/j6qw/^'cpu'[//yvL\#wDk`;+tyRoT 8x.:p̮{R޴-t3Ѝ; GS\ͼ>٪ $?]r׸ b@QuC#6AY6lPW'c:Vr6=P4X)U귶LizPn .{YYr &H_^1mO?\b6IHA)_nJ.sH`/ƬH9NoޮI#V[='ckg7M d$`AJ>>s8TlKh5 R.U4tVl .RI&пӘ)9e"sdO+v(~_m]GXԔW0Xƌ,,T٪'nBc0NgTaA!ezʄ8t@9G2ߙ$D*T,ȾpPG-HaZw +9Bvo%4* p S{_ܾ&i7I@5kJEh#b[F"9#\[2NvS|)k-E߼s܏0$1l[tޠi\~]܇ !ͭ d"9?rv }Hr ܀}$y1]Ck-=39w5b>A::íX&#Rn:[mu@TQe22oؤUmHHjgi{O7x%+,wҚϾ%){gݑz# ~VN Ѩr#`*T[ W Pgt>rQƱ}/ɡ`|9z{9aO-2eD]:t_] IHil93Ɨ0XC'FFOf6^dƱ,]Ͼy0Z ;]Hy kޮt+ _Q~.E\#6ߊxd"$l .h?#˛XJy*3?󀊉Sgw 0 ÃԢIf+Lt ì~~{'8cR6KfW{duPeQ\vI{x5pJ|ǒɞl *PJiJѬN݅R  ~"IK1jC>.'U1ݺ',(|bNZw9jfc'tjGt_rpތY#GG_z5ežU*SmnY_5¨Z$: aǎ*ved vc[RX/$m,jT/ LlC=5W)k#St@IQ-?`8ҲB>-qJgCOV-YPTnld&y nxqip8kԒpFN,%?ido>\N]wUt__\'d mt)}](y1νrWu5eo/\ |ke>F]y Jw(ŘKd %0SVv2K.x?/<* @<7C:mU#@#1"LJ!.9^䮂SJB*q{@x v1)6**2`"|V?\еW?ZP0H9Nf|̌+2–C:(Bu2(30(t큰Dzbk~쌤M50Nf5k6%=c+4 RI{/`Iqfu0t|3h&i ~IKGSEBjqMBz *2YCGH֑ipٷ<3G񎫇Eaۡ7b wuT .' >\DfSIJpS a"ͽg/X.gp@Ju&#s+ ` :>hmua.B@ jP9!aN=h҅V*]m?D9"GG*"M^-^&Ցq֭Pt0l`4{s 쾍+I'pۇ{.Bs=0#< tB.p}P)3kB Z"q)8~?!H9\gV<;av0! ѓh/*H5KQ-+~`9S$o'Ώ3VIshzg3O?ǢѦX\s]Pz ["|!zU*Bn[$YY뗛0ʛMcTWlmzA!0o^)$j@$D-z9!.}/6{Cb5<'\LIZo5TDa >˷{iDbf#mOucKt8,TkxA9= !3 Y tnHu DT6R̄{FpcKV]ʉ貑{v^ ȇbOS UTZ%y);\PEkk `jlDMNȕMPU۔ޠ)'SX`\2tvMFic,)p!kK 2T>Rsh"YB>җwl >!3K=cQ fxkm$`>=A$ͣ"F }Op]&멲Py2/ֻVA3Jde4 c;k@y9%hfIW9p{P:4>ˊlUgUXÿsu"կj5 `A2J8Ft{E_^l0os FvlBpE䓞pFw惀lRoxެu3Z5;~,/4/ -؝|4ӣ0Ck ^\7df0-NCU5]u :Rppn^(g?+ܦhcS$3m8F0z!o4T Il$O +,QE  k(H@]SaEn|hvDCXH軈MwYwʹ XAMZ>4^9i9QNVLɬ! p[ǀ v;|;JNHU~*3OIve'u^Aօ-#H\#1Qԉ0a:.K個x6Wz~hq%MKڀ7}`Q* k۽+(BvNݬSM5,cǼNh߼E_ow;֤!PX4A20_(z3sUş&٦2]5,M{{ OAx=BB7.G <^JmE\r9^ v%$ o_\BMǯj T`ۮ4{An$yJDOM&,%Ě: P4apREn%8 rUvO`EԂ!Y k+dӘ0eBF7 SGͅ.>wpaYOF6'm=*n;"d7KdS~51ՄY^1m\68 {0IZ$Juכy׏8m![&F{O{LefKi6|c!XLezPIL=I6ޛڷfcKDYw1_|ݴvZ,!~B2=aUjC%!CaHӃPیѿD}eVf˸<^pv|%2YJ4y+c%WAn˾yWg(b8. K"UdTƄ%^r5dmlE AEWHIgPyTj{%'Vç _.Ig}Xj%:wG!0,vNq<2,w:z#9!V"/SGڔ$@;oHYls= "s7s0b"`#6vzQ#2ڍ‹5p۔dH1{_z$vNiJ=F_M8w%;I<UqS'ቮnB"zP^𼀜];FhU޳ǝo9 R ҩ U"ġ F4sV]HtFhuME< L3Jf!tj'{& /ϷmEa÷޳~NMq R k& 7»e&eO鯲4;Ō1?zF}Ag@Wmo0! R8ڥ1:XO)=C|^K ¦MD&bi㋔IFusrCE`j I<`ȶ ɇ#߲ܠ5o]r$RPn)>\{V][ܓy`]ڦMj|^Q+͗WG(]{!N Sk>԰,* 5(DD1 PBӉ4 %U2X~=OQ߼qG12H9gji`H TQa$0&n '3_. x>/ tID/@*AHWNx3@zS_8!#Tљ"R9'|oN0aDk%wX'$nnIyd*[+ ˬ2 4Ƥչ NxE*&hdAw卆aZfں zb(]yY?zl(ȵH3~<'¶V3X\|R\)R`AoBdd7ffnh]X2s!,`Oن8DࢽfOn ?疄 [`^}lfmK(4(W\FCsa1ɛ1J! \sr%VXB5\ef)=*L!R?,L p5-V񒙾 dp)"]'Ehe)W  <:3hqA~0\A ugקj<2'9j|.e/]4@5ly2nɆe:̉=  ź5PNy}qx։LbGğ"%+T/xȓq„MV@.cʰ^ƧThܒ4%`C=m1%ߋ] >'ԔP L蔶l*?󏭔[E{?^[րo͟nP;3G^"wg%ٓ*%dIC)3 Sj<(}rտj >MY0dE!%(Үk6\-m$D!fҌq',S Iȁ5wYdD;,&z h >ffr]:ŖSm>J'2W֐x]kPaNy5fUw ?O$2h#æ.r'[FXt^4 8^*%МOCbYF!*|$Ƶvlva1*,ǛSqŻ7EVשּׂp8Rw/Aw:w-BʵP@ɠko"Sb%ţ"}Ѝ'@߼9HJ[GB&ց#6j9y4%'َ}GS*Ӵ.8n$8`Y ɫ UN$5"`giyC9v(e[i߽UUޔy0>im h!6;GVi SD߁=ք<ֵ ku)Ur&˗VfNb+}aMթ=GYMM-:W%Ey->Gڍ'UCF9lNBzR_YS+FZifϜuNp2%AB+-p<* &mĺF +&%(ѺC>y+suh^.v]l +^|cDYڳ~ =zH- :fYPzR6}_T\}֯h>EAɞovlo0v:B` <fuUQ[H=pqbS(Up0,wo̟2I|Ι@y=t0hѴxs~fMd-p\Ϗ:" ;n P ȓ^ҫ=8Kxrx6ن/aW aCti`|p NdtSȍ٠ kLR#|鰢@=SǨpPPm4,%oGp Dƭ8*tª ή$k=2]o6W+?ƒ%k2&2 9V@LˎBʆkP"|o^=Op$Cʹ>`0Kg$a8Fgk w||aPS|WW:vtzA ҧj4I?2K+,zgZ Gz/`;f>HgڜR%Nc>ћ\O:SpsEyu_Qg /R$.*֔{N"{杞ggc딨oyR1MߴGbHg|k Fѣնpg४ ұG%D5A[HPLhɳf9J{qh[g'A/*g(.=>ԭw29"d-H{M! W]_ṞFk{t}`. !L]7*.@*^NY"ˤ lP ]e+3DiCm:C>}.!ŦI!)g~г0r קjی[wQmYlU4ƥ@ jƇ3OjR`r ^C*Y)2dIz*rz#zئjY+LuRYzhd9̥Z3e#8/u }(>3uw6wur!;4#ZK!"0Jx'Ύ|P@e9\Լė/6`z7,&J? u-D`FC=vʼ3M{}י#KBg/7"olwVzS75~:(Zz+SYKM{+x)_Rrv}Skq`F GWJ"-3(TJ /гSN92D_T2pPo{~ E`g!zsMc?3K0.iE#0'i9|ޢGʡAp|e"&trK G:֊PIY5_lߨ NŸ$g;pb R]Jԗ`fDcޥAJXZ/ef}6K 5ԟ:ƱCz_-&~Ϥ`cm7\u,Zr`q6 VḤPpsagPuU]PhIesTs>+ٷiթZcsFҐٖl+R(Q DyK#u_G_<%v_yL{]Md4H%n:놉֫>>К00e5ֆQ3 L{9R*OzBeL=`xE3HR&8NF7R*+͓[I{Η%nռp-(Axfv@dM:* 78߀dc<*'hTid4uW3.$r:}#'ȤeF>Vrg,S&v/~Q . ?8kz@ (De}7T/3nPx2à\ČxuÄX.-0`[9ƒ۾~yO00|WNd'#k=yЗ'E5$y@9e;=5",F|Qg09ʰ/e$g[5 NUy}l`y*i!,%qD-2B\( hdVF XT="h[j\UQIjO3UmX4\Xb~P "MA $R5+h&kB-fJ*Iˉ!"Q 'ˑttѩ ۗM"pYۮ.#4\vgK\Hw80!I(U*TX O@κ,&dSfVYbSo,-v;&2)>S ^ʼnrԴÝTL _EЉ*ފk2&5Z׋㏢эO9_oz9N P̂h-RgjEqV\>s˵~4D@ .HU?=!(CzZ1cJ>>+a'0pT W`OY,a)aϬ/Z#lXTO@iȉrkY^+|c+|LL%5=ccnIzҥ |4Ha=#PfרOʑQӾiF_kwQ9^kkt/N{F^P\tkgG(,҆ez~Ky֦>?f3%VU@q>j:ݙ13nBhzTx8$F9X4,A^v*z4/~͙%T zQ$δZO'lay  ֭&Leq%廘Vي ]+H 5~4+P~X $k7<|Kmx6rci+n9t|ku%=70Ԃu`">0DS"h52.$^GekKDʈiQ*lQ )EkrFm)EP\92__xgV,t$5~A0tЁ& aبʻt[~C9~6*AJ)ԇ40ɛ5X[d5dTaDvD[}< |.$uDQ)b#efiVlBcݾG=a D::Ie2d&EE{~SDst@H4WxƽP,dmȋH+PݗR9VhxG -`,8\I8 rBFIs 4othc.xlL1ti#MHt/S- t3B4ܯ)]3 *:8$^ԙM{sQ5zW|. hݩTL||BL͈șsQVdUHi:T&-t`yEmew[{d{*Fz4%q,4zPεį0Nx&ǃ/Gz-XB蚑/uEasU)u*cqIp065&C~c) O8NH-[>O=.䈄)]XOuk]hI/}EkUb doi-c-F[ꡁhfOE^h FRXx칔;*eDRYnjl ULp@R d#*q ]Q0眄2 J o~ ѸfXhwTo } ?%/3h87lĆSK$4OŎI~2Cٚ }dHth#v=`2H؁/ӉzJ;'I)^ĮR ,`&E\YT NK7Q+_lnoꊧJ6Т5%a֏Hf4:FG8v :=a*ﺭ Uoga^'P; l KjFeHȔ ?mp(/܋5=+mmSOk p0)2*d-FER:K/D)~,Fd!Y~7Sj-OR{<*$/fEݔ\LLߘz?k49al5b)068RFrp5N}lL!C 7o9$JiGI_G8m*F[_?]@t _48iˢ%ﺢ&.~}X[M3A9:tO( D=aeC ˬ"e_AQ%/z4gJ75UT^Da0>"+pۮ7P]Q:) lZRӏNؐ.w[Yml?Ú=^2 ݱ 4ϊ3D`R*lxe2f=aY2rx4Tͯh[onsp(n hHZ)a% R׮9\{%AHʅV'ɒ=qn$y.󶢝 K̔EN\wmtN8I(Lc;׮ `y69%X@\r1!]@d<rnDq{ ieBjy Czj,!Z'(@N-cOQ-mK-tiBt7^Nj֪( hplT-Ǹ j[9v;PC^_G.lYh/VlM2Lܹ ~}9\CBl'al a>+bnohG{~jo*H'Јbb;JqBiuFW]y5=`Cm)2H-FGܫO 1p짖%'rNJUq&q7?r>@k{GK~PXʨfXgXl5 ٯT'= kfU4$ F5B.[nCk\q~RR\;\`>V\ܩ[qbiF|&g>u!8yopۼpvv𣗝f}nr:o1LUDx?ϣq{]=K@\4]KPU[\nWĽzCھ1 3ǟqhz]$;Ŏ.j +A_>"ZgC  b ٸhVyB,l p}mßf 134j_%?]ܻu MkՖ SR7T8N6S8r ǡ=\H=BKMJC]m>baʄ|C!l1<OуlEoUL0E#Wb+Œ-[fHuC[K:4НŢiXJo!R3û1+3U>HlPI:|u@ 3^u6= wvCWRc_,]wtN}/?hw?(9FaU ݔ쟸x$$7a?z|eZBm K53۰$A}Nw ~Dh%@ٛUqNy[]U N6Qv-<6wJ̣ilkڅUrac_;_MI#>VIo7IVipvƫGٌ+gߴ7!]qu tN1UM\ ǡܻ рtptG(ךgr5cK}++:;c+:? Hg-6q5jq(ѯbaܩg9 FZ8UB@*xoK ]Q6u̲rχG/<+rsXADzVn"(d@芲̪N -֨#BaiL'Puȍ[ KRJe99_& V( O.W>%iyW%;K'^Ȼ}(]f&1e̝eIz".ňw̝!Jo SBOTL3r xZl`xU09AذnW1k!I7n..u k_Zp_*qtό?`P #F|9P.-K# Ym[xX|lj+J2@V(.8 V K>-0U⪿w!6pqo|VU*flk\fp*@,眡j=Mջ4`Π#\vPy+0~Z&|Lؕr–@T`-D5F>`#ڀk&@bJ6-/l6Ѳ|Fl~W-,.q8GCFEB)<Щ.%Id&:tFo/W+ &ԛb._*ޓ X%-Jr*gDEUC6?<):g(R`Lg+DebՈ~UR$KmI+Rړe%XgGfr:uN([LU]qB/] 9񚧦i=.x{š4A]!yHLwˀMl{KB[tШD|;n(B~.IU蚾lo ޟ2}r 6U˨5LR:9ɿjֿ>HM`,'2|F[,k4=ԧX z 50*0vQᩂsMND?auIG)Z"s/th3 7`1xf!wN%)\RjA/@YPI(j L؞`KZ.բhëP^kPr{X蜐H0ԙĊ,L`ZQt %y ',P3@OVcPpzFd) VzTCV!yt.ӦhA)+l'XxqK?O #MOTV}I"-8 lWZQu#ʌM\|jg1 _;*1)ya z3#JgUu3`:^J/ogelX2t|Ax C6Ui wDMV~M/ӨvnҰ!4h3#f5U/?\HگfHuaS-2RVh{CY}0>c:p=lHmz-Do 0ke#"~πsO zC;|P|NW='3B6KF=B&΢ji,Q>*/H)jd v_ o0 `VjTh~5@078W\""K/@ ܽDҔ㍆3lyo@Ж`,Aez6UD8ꎃ<*"ŗvA[ q4a6 l60R5xdS6,((SVt7dJie-t:@fdJ2=̈́AXd P8"E@002Ry#Lй(IkrYR6&nh7fVx00ł.S"NuF$~W,Gug!}j5u0[.߷yKյ"f8PD\$aA9h;-%q'JtGna4Ā99_~AD3 jm:?+q\@/OAe & PJ?m^YnC~m?o 5֬ܝlgKSeQJK{6ŮQRtӔLl'+zZ0yiS;@ߓ6ױ,Y"6ewAc%KNV23~ژe6w6 G9*4 SQc Co3=?pC|bc{XT`mN68(Y넋֭TC o0 б+VN eGǪa4н@r+9.>y@ٮ ^0HF(n06#c]ѪЌX3BjS{&LzVgf7!e{Eg(\&6ORhB[~UqS}Pq$+`=V*O{ig1~|]S9e},oKÎf_Z6Կ&aZf\հ#e'Ec^7 XECkqc7f9ɫG|$W2[A3Q. &󵣏彪7LfZ}(pR}M5CGsWhxn~#~+-"{&6npyUU1:U}ui݃&lmZ_3ЯyADD㺎JTc0Cꏤ^{R.䔈lS903C:J؀dKJ'=~fJ?͞4?Z m]d؎Y(8s9 CXȦ|h]UI_Qaws ߎ%= xQ8nK>P<'sj-r0S7-gV2*M|?Ij!MoӠaUV87*모wT[MFch4ހ,q2Az1ls<)@$NDBc cd+< $ܿ"Ucv(6meHе?0[c",0$T"e7 R0vla+Qu$!k֍.)8KYiMLI"SK[ݫOI^PWLl&«PfHAؔnfܧd7:om[8l2BڕKv8=Q@t6 ) Oܽb Ft r%TQUlr R `&{ D SK98NJQVd\2egP) UZp(%8%{ EL},b_7ErV/nAʞ?(Wa/]64P/TIz0a9pvGת3#)uq7 sW˭uڵ?ڰ̅M ċUx}մ-˘ǻIvH}tVDaV/6}=N|QH^q a8g,wKWDS{;4\9( d,\)A[/,X),~Cq\'.H F 3g h/pOl 6cEi ~D]j$3i b8!}a۶ ECb#$-a_deG됎X dq#la< @e:!Z6 J ܢ}UD&5W$E@C hu IsM4HTupXsXJ^qGȹNa:xnWth4,L'QrҍnqTEFۖZ` MiHP+#=١Ief^C]f+W"!9fJ20mNE+|;D;ߝT*LڽëǻvPEE)A(  ` _SRC)*BkS@EZB;ba`pdyd} JxcleRdgݐ>Å柲.&8Zd[u΀L#xDj߶H 1٫ђҢ9e@b: gÊv]@wKYXP2YY$/OB7}چ_<*SciS Ħ],ӡ:&e9Βׇi'Ll(]#7?TIQ{컥àAR FRj~ _J^NJ}z١(}L#j'=BN ]u3E]`5}tUIJ` R,@s =5Bi? :Վt^1ɪa'0PF2llpB _jSBvf\c1IhLr wjA~jBZ2BBۃI@%Og2;Ecl'c_OIgۦ\ğAO) SGñ Q#ױ A>z5QZ>|*^R/9nh-_N _e|]5q6i>°bpB{cU<^ eydFZ} WuDjsMƖ|󩥆a> ,W ~k! ["4{UPr%7غ '> Qg,K nIt\זg{]W5YCOp2/iMeB;#56u*aY+8`}O޵A+1?s8x'۽J񻲸-W7DTxQ ui˧6K-yHM{'.^deXE75S=g(b>GGBkl#W$|2^>$хxk;6u dޛ/4pXv\ R" BQ R %vp&0a iTC'⏺TN3V8{ee Nclݗ ,dmd3d3_uQ(WIVVI[ ȉlR#T'E r[L> gLGe_rz +2l@H(iK02 [VgGF#%^ Hjic`Z~Xf]kZg:tN<҂?yv rx:gff|CgVkU~KG=dl<(H = D82mhg4dĦõZGf(% JBnh[@)\4fmQʕx>@ Z"/; !09/%;f~>1偕;ϣ/:(޿6޺Aw~ G4x{nDp0/k9`4:o^NA@;%dpT'_Srv?;YoiNk8|~Bt"fRHai]s:+ʒ7%#ʑ9<S_f/X)>%xRVaKM_C20{&wrz(ųfgkBgr߰D$LUD40FGȰՁHv)d6C$zI(۩iMfcGZ7V1Y>rf]HI}HNś$A-|a0^[hdө,1BG(2xߊ.Hxґ]!W !E_F!fa ю^ëA= Yǖj -H;XpE:pQt̮ 2]uYS #~ub]h Qt_"n癕_äG8ūN_P+_M`0ǮAFԺ:A*| s+/Ǿ1;\@'6E4#*3$L~3KMXа1YϼrIϬ~C*xeTލ[4;hu}rSDYh7K/T%\ro%m8yww;|LzzK02GZ+J>5XZpS[[)„008*s^T AD)Ց~  -&Qd٧q*Jn"1ke@K0LN-rnZƒzŕIZsp@:*n<&܊ccOM3` NQN2$no-ã/"T\ 4BZtP7F]z%,Y]#<8m;Y#gD, ;]qN;؝;}/h%<#"n=efk^~&DXR@kՀA>Y,/]Q٣ 0a)YxJy-7sFR w|A@H%]:ԣoL6@ ؀s13R׀HD>nSɋuAۏ8q-O\q S K&% a! m@ɭ-+A 5D>IZaE6 .?x5ĖwduFb& w̲#l,h)f-dž). ^cF`Ԯ#'(o].HB=7hkCpی׾%^! ~?=nGI,i = $^Onm S`rJS̃pfi⺴Ε !ǃI[q&Ŷ6 wP&C-$Nϊ2x n֎tA:e~dK]S.+@t\sXeEeY'.˱/ 1ŗTͣn J=YP3n0Z_Y pRf%զL:A/ 3"* }PaVPR{%)1"Zt˱kt7x?hmS{w`ŮHo+ڪ<匱xq,Fheݚ Nټ/y+T!-: }Ӵ܍Jkm-+gK.[v@O1ƢQMdE%R?BOί Z/r%FGIRKPu@č^cp$ 2Z?%Iw@Bd.oeMu Ⱥ7e[w̌`Mwf2`Þ-~T$6?e_3lRhHZ'%\f^QH>`SlBؚEHs6Qvװk)b:ȓOy'Mt[˜K eK\!aI Õ\ytg$T״2 -+*5zijvy(+h.6dҴ#*SnMC}h"Fΐa~{M`13QC='+:3Ug@Kfe5%d4*ğ ;pa1!Xxz^tI*O ~cՃ03 誗>t5Z akDyCr :|rJ#{i<^>t\2el"DϧHښCzskQpMc]&?ѥL7Z|/91{= y4-nGPu[ٶ<"}ºN$˚fE$ O|J=k*s]}iq5F p[;h7];{͙"j9fwם,- a$.Fg~Y 5z,^X޺2ZqtXvπ&Q4 K$әch3s[j 2*~*;QG|:SڋR|#G*MJ=_Z;&%_坤1_*L}Ʊ֟tlα %;2)= (뙒^Ԩ>? PR+$N) d 1H?X"ms˄yV>xt߼^x[]y`BSuۢ3 O!sH|ZH|Z7;d^DÉ 07'WoG\_:UT:675S8ԭ`d'U-w3C31Gux2$n;0quzۙcO4NC,{2.Sab&DB/;\vޙ uӛVӸ o=`R0\ ^إ#Bx78JJu1,- 2dyM:N*{}6$g,@eVu+`UJO\zQ4a Y|;5jzSb;NŀObFϗ4[=Ku9[Lehm#<&|O9m2Cc|:i^>(z6X/zJ jm9jz kBm^XIӗ\IQ pgHf#дDJ>ܮ{@lC w|8fVXz]4=;:W0ɢɣTnl[-wc;y2]:SGhɰ׻+Y{& h(Umf F*e݂u.-4mX+#R|1FHYpVvېx .shf#Z|-ho\5cgp@^F7#w;ZgAvB1 _+$:a)3s"+AU %aN &v.B;Tp2ka r{\1(q@`j ̈:oLu =jLwiòK$=H`n#A&zEde~O2w/)nJQQ"]g:hu.^Ԯ2g f|"!7WPfj Эk1vɟl |jRw~hKu/"J,t;N`Bw"+--yz1+*pkޕ|э-hB 霈A53<}MtB#8Й~t*I@'RS;#6(l)+9/J=^FMN>eulú/әUW|Lr z )  jˠ-YQО5H! Rl8nCUPHhƘdxxrmʓYLj3o^ҩdդ$nx n'?NVV3<͋q>@ MTڌ IH6EH[ՈɗA$g5&*ksѺC⪪I_rfZւ+Ƈ'ԣϵ\0 , "8?<&u0ttCbwv%9( ;022u X{[iY7gq7VT.rͦ=)ЛD&Z#-M2MoV4J2؇;5C!%.BK+j}c5`[LL 뛧b5$K\gX1:͚vx'~2 3#5T^.qRN>Uީڳ蠻n>f{ ԛ^ ؤ6._0\#?@szp+7{RR%Tބ5%Xy>Ԥ"`MM3[oǀ~1q ;_(6 7&ַ8JK잴Ynpo))u^f}0rq^SUE%خPV .r)sҏ!TkE S459Hˮ1Eb,CKȄBT\U9ez~=FV\kTS d %L~F8}l+RsY0\Ef-s^9@6__OPعQ9xۣF1 ɉ& .m#;vqHsɕ`=țyss6),R*AoAH_N#G~$̤GT G~t)v珑8<-QG0֙=w5I|"Da)bIݼS;Ăx De˂Y. [5a=lECH%$`MF,JwdM0s0%>{Ǯq͔C ZMi*Kws?)}+ ݬkK{'{D@c@N|QOtuAG S 朵NL{ <xmǞB׊=y3PnuFcr9u;)74ҽvpc4du}!$їrʼnMC yT%RG.%.mT<6քDj#R:n\5-|Gk7&IAHU(k4*32r )A1L>P3BJ"6!{(3Nk0T*CbA퍌uАY!uhzŦWҠS̑f~klryl2_FĪ[v 4qHkQun&'Vr_|bw󃚙"VQGڔwj ZX? .ؠ>Y =U Ҥ!3A^k@BM}^$n'̶NxwԆ7 Sf)oܓc`(me &bP<}5LfkI_z=3aD=ɓڧ(#'>~ɣ6WnD9FeGmZY%ZfMkX{nΝ` vt$:r3V@3 L{1Q{^SqrIn\,qPuxP*;n7(d†ZZzʠ9@`/'!AvsJ pu 3-kEr3paEEcU0MyCGn ý|@n_pIuShV{+aoarGxF&GZ)\|eg:g]b {T F\( ,[F nm4z^f9GX8dys%5 V'PыN7 N)!Jщir!8jPYy6h^Bǭgщt0`V]o %1\^k9|@#ryBa,o(2v-4n rWP2 jLWH@EPD GK[P8]oE1*j>wkcj|m{!F?9gf: wԸ -4n$q"޻Rͬ 攫f$"leYB=P’D,e Ls`?71L[@D"]M9vw,릪.iغT fX + *m/ `[ƐpInfŞsʦxS0SXٳCȊ' #unu_q..ʿ3"(Wʁ0O5e8#3䓾u}bbnu05o>`s/`VT"RTYЊ3|?D5!m3K^08Tl-cčXa$u7*$}P+{+7q{0xMp"eU(~ 2aYl+]kSU"iNsqXBXJ#X^”qK#|>k:&pzMPœpݭ2P?<ױytLw(  ĈŨ[9$LQP.7az]A1C~QR*Mf#Wx$!V }e!I6dў @-'#ho8ϼFK}.j 4<FI0DW^^thҋmQ~'慢/ *-y &z &%K^TEp!,8$(UM7L-؄M瀽MU(uCfPbE%`gW-^k ڄG0k~{2?V>Y;o9B 6=|؏: S`r^BK74_m!ݲȝ׈&(zoЭt6jg8)pKրJ+P󶀱L'L_|CiyM)lNB;R3eMs#/0;~KlI]cLYJ㤠7󬦑s5(ۛG~3;5v7z<9/XP`^A}Mg&۸=_#4ȿܝL3᫖5(LGS+$=72  mƬ ;3XqIg8h&-B"5/<ȵD|w(,yfEWƊB _w6b#4{Xޜ*3.9df\RGOJr[}GbEun6}޾phG&v ղ@< < 2IZ=+<:2(h\RV:G#N65% e;ރZ^>6ioDo.oh% sըazD3pKhxagr$L(! Гmr圭H̓$w5P @G@V֒&d^\@z9lv."/%ιaxf jAdSP ̽ ëx j4 ys,9ĮbHe/JG%})'-mRtp_o]#Mkº= Ðx{j*"[n?5ǀUϡHŤYi0B qΩ6x\b_m#́_ZJEm:>]h~w9IZ2cC.&cca!_w:MqAlI^mSp-lq1LsHߑu׻Zw@5Z{3l3&)z/X cb[W~1tGډ6 Yċ ID9dk X5$׌eB}B-Qi 0[ a-0TEv!p m7XHG"d)M=UeHO 7qWpJG%B}&x#ZCs3 Dj T2>)%f'sE.8Pfή `oqoWsG΋ $_}\D0$`sk4{>+ #Q#>|w͝#4Ǹ34iS Ƙ_#aWKnC)@DKف7X29 h22?ڃtd/tcUxU06:6]F! "kR Pv*{Hln/C(MڻA|}ɸ$)sSaʟ5A*%"Wfa'vy!l=. |!c:Tp"א*A@!`l6bB*Wȅ{}F(L.n\$0UcD^t(RzB5*4cG| XMQU4k(-9@Oԯ2أ2>0/POU~7xV.Qޣİ 酩!7'EVRq;$m&|$3Y;̈́U=",b /ЭHSa.Wph*ͨBǢu $!D]Ve@!2cz^(MԮ\c q}~2EgMeuG0h3N^f6`5Z>UZOO%3dz*b nU# +gӠ 9{G=́1-;h8Pu/ܵ,ry;^2hQ0!~nqWAP?+[D`5ѱpk3nG"isN ƥ Oۯ-Vo?Z,W;3@7`uhu4[8+F;?a㫞_@%{dάv>D{mˑ:]:[3HKQB .&NX~⮮,AY텅=ETB~,TkN0mm$aBO B ^g^>_,,<-;{6_f qOCK!qn9Q/=濍=g+ ԝ1c*-EeSci,A^Zg)!GF?Uhu'^(g@A$mzx.TpD C6 8;9kyYS^X6~ڠo " }Ic!54XeU J~W;AZڇ5Cݨ*xY֏|ߜam ^*=C3je0S8fMsq~zf'D5౾Iy|gufkF Zqβ$c))`|_qsvꪀ»MEaG>grѪ%&0s#|=2ܫ\fD+DoN(ճŅ/h W$ ͳ~BN$MS rHj^Nh \' [Mg.N3<l C{%H}}@[glV{Je%PIPh!2LzW~0ߓc#PG% J$= Y<bݠ:K wA6+zc3 aMZ̛M)h$4ƛhٞ.vըD茭§Wei̯#E (ZF&"z&G'!^UH2(&_ ;P4$Iu!7ϙڒ9~9FKX񛥩@ܱŗ*0/9ԕiGU/㡴y' ۡH޸n#V4Zh8 עt{iEdT(j݃lf t 9%)~F_@CT<ŇiG##R~#@ -+K{9h?˯ -0r͆M.gc*_j@5_[d1k$KWy&Iw= WGa.۽ȷbr22Г|>7 ׊,>@t,;WV ̓py#7À 4O!@sEuڂ (˻Uó&Ernm7z.Fx}elZDJ1`f27ϾBBl 1ڋ mrR)VKA&&8 ?OyuqsUԱnKZҔ!P#ّ2LGSv1 HϕF ⣁A;)P~:=#<4Lx.9T'| HmC|ElM @בLkյmnFK@ MɫvPn:n>2k}L z#_>Ws@ҥ<7Y|#E3>v(;c# 4QoB'%qI0KC3Bq6#VMt.1HY|ΞO~Fwidu-Zm{\ |-d2z*U D T@}t,+T=Xb$Sj\l HHésD`oW)kX5n*{)8Ns['N`-Ļ4N-SS #@p0Q}ت~`BNmO7>S%b>D38cwSjuBD&ij0[Wjoo+D _ogCz<4avqKK_kV|de `YcB1+e3&s7ȾjYO1_xvΩ*ǭWnD¤㸺hE·ӝ9&S[4$C #yߩh;_Цo YZ