libbcc0-0.29.1-150600.5.6.1<>,|ȉhp9|:%]1βK(qBrʟ/)> >@-#QrHzBxO4<-'844 z0l5R4ݸ8#fyo qagտߑdyRzV`ל+lCND顇5І/}(b򿍣+ _Z-{A'rhKs~J?g !EO<$TY7DO@CmzCend_V&W{O|fkȌ`Ns|=ez¿?N?7>@?ɰd   N %,D P \ t : d|8@8@ @( A8 HU9 U:U>ø@FGHIX$Y4\`]x^b cŵd3e8f;l=uPvhwǤxǼy_zP`djɬClibbcc00.29.1150600.5.6.1Shared library from the BPF Compiler CollectionShared Library from the BPF Compiler Collection.hh01-ch3a8sSUSE Linux Enterprise 15SUSE LLC Apache-2.0https://www.suse.com/System/Librarieshttps://github.com/iovisor/bcclinuxx86_640j@,]A큤hhhhhes85aca78ff4a7d2b2b6e7fcea7ea9815079a5980cd36853def9013ef78e010e86306042579076ad8266ce742264f4939e0385039fa293faf290a639342248dbf0bb40930bbcf80744c86c46a12bc9da056641d722716c378f5659b9e555ef833e1libbcc.so.0.29.1libbcc_bpf.so.0.29.1rootrootrootrootrootrootrootrootrootrootrootrootbcc-0.29.1-150600.5.6.1.src.rpmlibbcc.so.0()(64bit)libbcc0libbcc0(x86-64)libbcc_bpf.so.0()(64bit) @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@     (kernel-debug-devel if kernel-debug)(kernel-default-devel if (kernel-default or kernel-default-base))(kernel-kvmsmall-devel if kernel-kvmsmall)(kernel-pae-devel if kernel-pae)(kernel-vanilla-devel if kernel-vanilla)/sbin/ldconfig/sbin/ldconfigkernelkernel-devellibLLVM.so.17()(64bit)libLLVM.so.17(LLVM_17)(64bit)libbpf.so.1()(64bit)libbpf.so.1(LIBBPF_0.0.1)(64bit)libbpf.so.1(LIBBPF_0.0.5)(64bit)libbpf.so.1(LIBBPF_0.0.6)(64bit)libbpf.so.1(LIBBPF_0.0.7)(64bit)libbpf.so.1(LIBBPF_0.0.8)(64bit)libbpf.so.1(LIBBPF_0.0.9)(64bit)libbpf.so.1(LIBBPF_0.1.0)(64bit)libbpf.so.1(LIBBPF_0.5.0)(64bit)libbpf.so.1(LIBBPF_0.6.0)(64bit)libbpf.so.1(LIBBPF_0.7.0)(64bit)libbpf.so.1(LIBBPF_1.2.0)(64bit)libc.so.6()(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.2)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.33)(64bit)libc.so.6(GLIBC_2.34)(64bit)libc.so.6(GLIBC_2.38)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.7)(64bit)libc.so.6(GLIBC_2.9)(64bit)libclang-cpp.so.17()(64bit)libclang-cpp.so.17(LLVM_17)(64bit)libelf.so.1()(64bit)libelf.so.1(ELFUTILS_1.0)(64bit)libelf.so.1(ELFUTILS_1.3)(64bit)libelf.so.1(ELFUTILS_1.5)(64bit)libelf.so.1(ELFUTILS_1.6)(64bit)libgcc_s.so.1()(64bit)libgcc_s.so.1(GCC_3.0)(64bit)libm.so.6()(64bit)libm.so.6(GLIBC_2.29)(64bit)libstdc++.so.6()(64bit)libstdc++.so.6(CXXABI_1.3)(64bit)libstdc++.so.6(CXXABI_1.3.5)(64bit)libstdc++.so.6(CXXABI_1.3.8)(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.14)(64bit)libstdc++.so.6(GLIBCXX_3.4.15)(64bit)libstdc++.so.6(GLIBCXX_3.4.18)(64bit)libstdc++.so.6(GLIBCXX_3.4.20)(64bit)libstdc++.so.6(GLIBCXX_3.4.21)(64bit)libstdc++.so.6(GLIBCXX_3.4.9)(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)rpmlib(RichDependencies)4.1.04.1.03.0.4-14.6.0-14.0-15.2-14.12.0-14.14.3hf_f4feCeeeoe-%ev@e e 0@cc@b@bbb @aV@aD@aD@`@`@`a@_@__m_-B@^@^@^@^1^^F^%@^@]q]@]]c@\]@\@\M\\@n@\=@[[;@[(@Za@Z2@ZZ`@Z_@Z|;ZaZ8@Z3@Z)-@Z%8Z!D@Z Z@ZC@YY5GX•@X @X @XF@X@W WҤ@W/@W Wo@V@V޾VVŲ@V@V_V@VqR@V\:@VI@V*!@shung-hsi.yu@suse.comshung-hsi.yu@suse.comshung-hsi.yu@suse.comshung-hsi.yu@suse.comshung-hsi.yu@suse.comdimstar@opensuse.orgshung-hsi.yu@suse.comsteven.kowalik@suse.comshung-hsi.yu@suse.comshung-hsi.yu@suse.comshung-hsi.yu@suse.comshung-hsi.yu@suse.comshung-hsi.yu@suse.comshung-hsi.yu@suse.comshung-hsi.yu@suse.comdimstar@opensuse.orgaaronpuchert@alice-dsl.netshung-hsi.yu@suse.comshung-hsi.yu@suse.comshung-hsi.yu@suse.comshung-hsi.yu@suse.comshung-hsi.yu@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.commimi.vx@gmail.comidonmez@suse.comglin@suse.comglin@suse.comidonmez@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comjengelh@inai.deasarai@suse.comasarai@suse.comglin@suse.comglin@suse.commsrb@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comdimstar@opensuse.orgglin@suse.comglin@suse.comglin@suse.comglin@suse.commanfred.h@gmx.netglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comidonmez@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.com- Fix run-time compilation on ppc64le (bsc#1245629) * Add clang-Define-DCONFIG_CC_IS_CLANG-in-KBuildHelper-get.patch- Remove bcc-devel's requirement on llvm-devel * add build-remove-llvm-dev-dependency-from-libbcc.patch- Fix incorrect offset calculation when consecutive bitfields are present (bsc#1219096) * add fix-alignment-issue-on-x86_64-due-to-consecutive-bit.patch- Update bcc-devel requirement to depend on specific version of llvm-devel- Update LLVM version macro to support SLE (bsc#1220746)- Have the -devel package require llvm%{llvm_major_version}-devel: /usr/include/bcc/bpf_module.h:25:10 includes llvm/Config/llvm-config.h.- Switch to LLVM 17 - Change LLVM version macro to the cleaner alternative suggested in SR#1134405 - Update to version 0.29.1 * support for kernel up to 6.6. * new bcc tools: rdmaucma * bcc tool update: tcpstates, statsnoop, runqlat, bio tools, tcptop, slabratetop, tcprtt, etc. * doc update, other bug fixes and tools improvement, and some new enhancement for powerpc and riscv.- Remove unneeded Requires on python3-future.- Re-enable bcc-lua now that boo#1215592 is resolved- Disable building of tests file + Remove zip from build requirements as it is no longer needed- Mention boo#1215592 in spec file, which tracks the problem with luajit that require temporarily disabling bcc-lua- Disable bcc-lua until luajit issue is resolved - Explicitly add python3-setuptools and zip as a build requirement - Update to version 0.28.0 + Support for kernel up to 6.3. + new libbpf tool: tcppktlat. + bcc tool updates: funcslower, wakeuptime, profile, offcputime, deadlock, funccount, argdist, kvmexit, runqlen and cpuunclaimed. + libbpf tool update: memleak, tcprtt, tcpconnlat, funclatency, syscount, cpufreq, biosnoop. + support ringbuf_query for bcc tools. + handle '[uprobes]' memory mapped file properly during stack tracing. + Fix maximum allowed index for print_linear_hist for bcc tools. + add module kfunc/kretfunc support. + clang rewriter: initialize only the requested parameters + filter with available_filter_functions to make multi-functions kprobes more robust for both bcc and libbpf tools. + doc update, other bug fixes and tools improvement - Update to version 0.27.0 + Support for kernel up to 6.2 + bcc tool updates for ttysnoop, slabratetop, readahead, nfsslower, cpudist, cachetop, cachestat, etc. + libbpf-tools updates for mdflush, drsnoop, statsnoop, ttysnoop, softirqs, wakeuptime, cachestat, numamove, etc. + fix for incomplete static libraries + implement zip archive support + upgrade to use c++14 standard + new libbpf-tools: memleak + add loongarch support in libbpft-tools + doc update, bug fixes and other tools improvement- Force specific versioning of LLVM in preparation of Leap 15.5/SLES 15-SP5 + Remove now duplicate dependency llvm-clang-devel, having clang-devel is enough- Update to version 0.26.0: + Support for kernel up to 6.1 + bcc tool updates for biosnoop, opensnoop, biopattern, killsnoop, runqslower, offcputime, wakeuptime, etc. + libbpf-tools updates for klockstat, sigsnoop, hardirqs, softirqs, opensnoop, statsnoop, offcputime, tcplife, cpufreq, cpudist, etc. + new libbpf-tools: tcptop, tcpstates, biotop, capable + doc update, bug fixes and other tools improvement- Update to version 0.25.0: + Support for kernel up to 5.19 + bcc tool updates for oomkill.py, biolatpcts.py, sslsniff.py, tcpaccept.py, etc. + libbpf tool updates for klockstat, opensnoop, tcpconnect, etc. + new bcc tools: tcpcong + new libbpf tools: tcpsynbl, mdflush, oomkill, sigsnoop + usdt: support xmm registers as args for x64 + bpftool as a submodule now + remove uses of libbpf deprecated APIs + use new llvm pass manager + support cgroup filtering libbpf tools + fix shared lib module offset <-> global addr conversion + riscv support + LoongArch support + doc update, bug fixes and other tools improvement- Update to version 0.24.0: + Support for kernel up to 5.16 + bcc tools: update for trace.py, sslsniff.py, tcptop.py, hardirqs.py, etc. + new libbpf tools: bashreadline + allow specify wakeup_events for perf buffer + support BPF_MAP_TYPE_{INODE, TASK}_STORAGE maps + remove all deprecated libbpf function usage + remove P4/B language support + major test infra change, using github actions now + doc update, bug fixes and other tools improvement - Changes from version 0.23.0: + Support for kernel up to 5.15 + bcc tools: update for kvmexit.py, tcpv4connect.py, cachetop.py, cachestat.py, etc. + libbpf tools: update for update for mountsnoop, ksnoop, gethostlatency, etc. + fix renaming of task_struct->state + get pid namespace properly for a number of tools + initial work for more libbpf utilization (less section names) + doc update, bug fixes and other tools improvement - Drop Do-not-export-USDT-function-when-ENABLE_USDT-is-OFF.patch: fixed upstream.- Move kernel{,-devel} requirements to libbcc0 for deduplication. - Require additionally kernel-$variant-devel for libbcc0. - Declare python3-bcc, bcc-examples and bcc-docs as noarch.- Use shared libbpf library instead of building it along with bcc + Delete libbpf-0.5.tar.gz - Fix build on i586 due to use of shared libbpf library + Do-not-export-USDT-function-when-ENABLE_USDT-is-OFF.patch- Update to 0.22.0 + Support for kernel up to 5.14 + add ipv4/ipv6 filter support for tcp trace tools + add python interface to attach raw perf events + fix tcpstates for incorrect display of dport + new options for bcc tools runqslower, argdist + new libbpf-tools: filetop, exitsnoop, tcprtt + doc update, bug fixes and other tools improvement- Update to 0.21.0 + Support for kernel up to 5.13 + support for debug information from libdebuginfod + finished support for map elements items_*_batch() APIs + add atomic_increment() API + support attach_func() and detach_func() in python + fix displaying PID instead of TID for many tools + new tools: kvmexit.py + new libbpf-tools: gethostlatency, statsnoop, fsdist and solisten + fix tools ttysnoop/readahead for newer kernels + doc update and bug fixes - Update libbpf to 0.5 + libbpf_set_strict_mode() allowing to opt-in into backwards incompatible libbpf-1.0 changes. See "Libbpf: the road to 1.0" and "Libbpf 1.0 migration guide" for more details. + streamlined error reporting for low-level APIs, high-level error-returning APIs, and pointer-returning APIs (as a libbpf-1.0 opt-in); + "Light" BPF skeleton support; + BPF_PROG_TYPE_SYSCALL support; + BPF perf link support for kprobe, uprobe, tracepoint, and perf_event BPF programs; + BPF cookie support for kprobe, uprobe, tracepoint, and perf_event BPF programs through bpf_program__attach_[ku]probe_opts() APIs; + allow to specify ref_ctr_off for USDT semaphores through bpf_program__attach_uprobe_opts() API; + btf_custom_path support in bpf_object_open_opts, allowing to specify custom BTF for CO-RE relocations; + sk_reuseport/migrate program type support; + btf_dump__dump_type_data() API, allowing to dump binary data according to BTF type description; + btf__load_into_kernel() and btf__load_from_kernel_by_id(), and split BTF variants of them; + btf__load_vmlinux_btf() and btf__load_module_btf() APIs; + bpf_map__initial_value() API to get initial value of mmap-ed BPF maps; + bpf_map_lookup_and_delete_elem_flags() API. + support for weak typed __ksym externs; + BPF timer helpers: bpf_timer_init(), bpf_timer_set_callback(), bpf_timer_start(), bpf_timer_cancel(); + bpf_get_attach_cookie() helper to get BPF cookie from BPF program side; + bpf_get_func_ip() helper; + bpf_sys_bpf() helper; + bpf_task_pt_regs() helper; + bpf_btf_find_by_name_kind() helper; + usability improvements for bpf_tracing.h when target architecture is missing. + improve BPF support detection on old Red Hat kernels with backported BPF patches; + improvements for LTO builds with GCC 10+; + pass NLM_F_EXCL when creating TC qdisc; + better support of BPF map reuse on old kernels; + fix the bug resulting in sometimes closing FD 0, which wasn't created and owned by libbpf itself.- Update source URL for bcc and libbpf- Update to 0.20.0 + Support for kernel up to 5.12 + Some basic support for MIPS + added bpf_map_lookup_batch and bpf_map_delete_batch support + tools/funclatency.py support nested or recursive functions + tools/biolatency.py can optionally print out average/total value + fix possible marco HAVE_BUILTIN_BSWAP redefine warning for kernel >= 5.10. + new tools: virtiostat + new libbpf-tools: ext4dist + doc update and bug fixes - Update libbpf to 0.4 + BPF static linker APIs; + subprogram address relocation support (e.e., for use with bpf_for_each_map_elem()); + support for extern kernel functions (a.k.a. BPF unstable helpers); + TC-BPF APIs; + ksym externs support for kernel modules; + BTF_KIND_FLOAT support; + various AF_XDP (xsk.{c, h}) improvements and fixes; + btf__add_type() API to copy/append BTF types generically; + bpf_object__set_kernel_version() setter; + bpf_map__inner_map() getter; + __hidden attribute for global sub-program forces static BPF verifier verification; + static BPF maps and entry-point BPF programs are explicitly rejected. + libbpf will ignore non-function pointer members in struct_ops; + Makefile fixes for install target; + use SOCK_CLOEXEC for netlink sockets; + btf_dump fixes for pointer to array of struct; + fixes for some of xxx_opts structs to work better with debug compilation modes; + ringbuf APIs fixes and improvements for extreme cases of never ending consumption of records; + BPF_CORE_READ_BITFIELD() macro fixes.- Update to 0.19.0 + Support for kernel up to 5.11 + allow BCC as a cmake subproject + add LPORT support in tcpconnlat and tcpconnect + added bpf_map_lookup_and_delete_batch support + new tools: virtiostat + new libbpf-tools: cpufreq, funclatency, cachestat + add install target to libbpf-tools + a few lua fixes + doc update and bug fixes - Set ENABLE_NO_PIE to "OFF" to enable PIE for bcc-lua (bsc#1183399)- Update to 0.18.0 + Support for kernel up to 5.10 + add bpf kfunc/kretfunc C++ example + add PT_REGS_PARMx_SYSCALL helper macro + biolatency: allow json output + biolatpcts: support measuring overall latencies between two events + fix build when ENABLE_CLANG_JIT is disabled + doc update and bug fixes - Update libbpf to 0.3 + kernel modules BTF support on all levels + ring_buffer__epoll_fd() API + xsk_socket__update_xskmap() and xsk_setup_xdp_prog() APIs + New BPF helpers: - bpf_task_storage_get() and bpf_task_storage_delete(); - get_current_task_btf(); - bpf_bprm_opts_set(); - bpf_ktime_get_coarse_ns(); - bpf_ima_inode_hash(); - bpf_sock_from_file(). + ring_buffer__poll() returns number of consumed records correctly + handle corner-case case with unused sub-programs + xsk_socket__delete() bug fixes- Update to 0.17.0 + Support for kernel up to 5.9 + usdt: add uprobe refcnt support + add bpf iterator C++ support + new bcc tools: tcprtt, netqtop, swapin, tcpsynbl, threadsnoop + tcpconnect: add DNS correlation to connect tracking + new libbpf-tools: llcstat, numamove, runqlen, runqlat, softirgs, hardirqs + doc update, bug fixes and some additional arguments for tools - Update libbpf to 0.2 + full support for BPF-to-BPF function calls, no more need for __always_inline; + support for multiple BPF programs with the same section name; + support for accessing in-kernel per-CPU variables; + support for type and enum value CO-RE relocations; + libbpf will auto-adjust CO-RE direct memory loads to adjust to 32-bit host architecture; + BPF_PROG_BIND_MAP support, .rodata will be bound automatically if kernel supports it; + new APIs for programmatic generation of BTF; + support for big-endian and little-endian endianness in BTF; + sleepable fentry/fexit/fmod_ret/lsm BPF program. - Enable lua support only for Tumbleweed to close the gap between SLE and openSUSE Leap- Update to 0.16.0 + Support for kernel up to 5.8 + trace.py: support kprobe/uprobe func offset + support raw perf config for perf_event_open in python + add BPFQueueStackTable support + added Ringbuf support support + libbpf-tools: readahead, biosnoop, bitesize, tcpconnlat, biopattern, biostacks + bug fixes and some additional arguments for tools - Update libbpf to 0.1.1 + __ksym extern variables support for getting kernel symbol addresses; + BPF XDP link support; + bpf_program__set_autoload() to disable loading and verifying specific BPF programs; + support for attaching map elements BPF iterator programs; + new getters/setters for more control over BPF map definitions; + all destructor-like APIs (e.g., perf_buffer__free() and bpf_object__close()) now accept pointers returned on error (in addition to NULL and valid pointers) and ignore them, no need to guard destructors with extra checks now; + bpf_link__detach() for force-detaching link, while it's still alive; + btf__parse_raw() and btf__parse() APIs for more convenient and flexible BTF parsing. + fix an issue with loading XDP programs on older kernels. + CO-RE relocations in .text section (in sub-programs) are now performed properly; + vmlinux BTF is not loaded unnecessarily twice; + perf_buffer__new() can be used on old kernels down to at least 4.9 version; + libbpf's internal hashmap fixes for 32-bit architectures; + few BTF sanitization bugs and memory leaks fixed; + btf_dump handling of GCC built-in types for Arm NEON fixed; + BTF-defined map-in-map initialization fixed for 32-bit architectures; + various BTF fixes for 32-bit architectures.- Modify URLs to get the tarballs with names not just versions - Drop _constraints + We don't link the static clang libraries anymore and this reduces the requirements of hardware. - Drop the unused _service file- Update to 0.15.0 + Support for kernel up to 5.7 + new tools: funcinterval.py, dirtop.py + support lsm bpf programs + support multiple pid/tids for offwaketime + usdt: add helpers to set semaphore values + turn off x86 jump table optimization during jit compilation + add support to use bpf_probe_read[str}{_user,kernel} in all bpf + programs, fail back to old bpf_probe_read[_str] for old kernels + tools: add filtering by mount namespace + libbpf-tools: cpudist, syscount, execsnoop, vfsstat + lots of bug fixes and a few additional arguments for tools - Update libbpf to 0.0.9 + BTF-defined map-in-map support; + bpf_link support expanded to support new kernel BPF link objects; + BPF_ENABLE_STATS API; + new BPF ringbuf map support, added ring_buffer API for consuming; + bpf_link-backed netns attachment (flow_dissector). + bpf_object__load() better error code propagation; + few memory leaks and corruptions fixed; + register naming in PT_REGS s390 macros; + .bss pre-setting through skeleton is now supported as well. - Drop upstreamed patch + bcc-bsc1172493-Make-reading-blacklist-optional.patch- Add bcc-bsc1172493-Make-reading-blacklist-optional.patch to make reading kprobe blacklist optional so that the bcc scripts can work with the locked down kernel (bsc#1172493)- Amend the sed rule for python3 shebang- Update to 0.14.0 + Support for kernel up to 5.6 + new tools: biolatpcts.py + libbpf-tools: tools based on CORE and libbpf library directly + add --cgroupmap to various tools, filtering based cgroup + support kfunc (faster kprobe) for vfsstat, klockstat and opensnoop + lots of bug fixes and a few additional arguments for tools - Update libbpf to 0.0.8 + Add support for BPF-LSM + CO-RE relocation edge cases + expected_attach_type handling fixes at load time + fixes in hanling kernels without BTF support + internal map sanitization improvements - Drop support-clang9.patch + Upstream fixed it in another way.- Update to 0.13.0 + Support for kernel up to 5.5 + bindsnoop tool to track tcp/udp bind information + added compile-once run-everywhere based libbpf-tools, currently only runqslower is implemented. + new map support: sockhash, sockmap, sk_storage, cgroup_storage + enable to run github actions on the diff + cgroupmap based cgroup filtering for opensnoop, execsnoop and bindsnoop. + lots of bug fixes. - Update libbpf to 0.0.7 + Major new features: - BPF skeleton support; - Kconfig extern variables support; - STRUCT_OPS support; - support for BPF program extensions; - cgroup MULTI-mode support (bpf_prog_attach_xattr() API). - bpf_send_signal_thread() BPF helper; + Usability improvements: - BPF CO-RE improvements (flexible array, LDX/ST/STX instructions, improved conditional relocations); - generic bpf_program__attach() API; - SK_REUSEPORT program type support; - bpf_link_disconnect(); - bpf_find_kernel_btf() API exposed; - large instruction limit probing added; - improved error message for RLIMIT_MEMLOCK. + Fixes: - fix perf_buffer handling of offline/missing CPUs; - various other fixes and usability improvements. - Drop upstreamed fix: bcc-fix-test_map_in_map.patch- drop python2 bindings - don't require python3-devel package- Fix build when pkg_vcmp is not defined- Update to 0.12.0 + Support for kernel up to 5.4 + klockstat tool to track kernel mutex lock statistics + cmake option CMAKE_USE_LIBBPF_PACKAGE to build a bcc shared library + linking with distro libbpf_static.a + new map.lookup_or_try_init() API to remove hidden return in map.lookup_or_init() + BPF_ARRAY_OF_MAPS and BPF_HASH_OF_MAPS support + support symbol offset for uprobe in both C++ and python API, kprobe already has the support + bug fixes for trace.py, tcpretrans.py, runqslower.py, etc. - Update libbpf to 0.0.6 + New features - new extensible bpf_object__open_{file,mem} APIs and DECLARE_LIBBPF_OPTS() macro to go with them - bpf_helpers.h, bpf_endian.h, and bpf_tracing.h are now distributed with libbpf - BPF CO-RE: added field size, field existence, and bitfield relocation support - BPF CO-RE: BPF_CORE_READ(), bpf_core_field_exists(), bpf_core_field_size() and other BPF CO-RE related helpers available through bpf_core_read.h header - bpf_object__open() API now auto-detects program type from its section name - BPF_PROG_TRACING programs support (incuding BTF-typed raw tracepoints, fentry/fexit programs) - mmap() support for BPF global variables - declarative map pinning support added - probe_read_{user,kernel}[_str]() BPF helpers added - bpf_get_link_xdp_info() function to get more XDP information added - a bunch of other AF_XDP changes + Usability improvements - no need for int version SEC('version') = 1; anymore - raw_tp/tp and uprobe/uretprobe section prefixes added - new bpf_program__get_{type,expected_attach_type} getters - preserve error code on program load failure + Fixes - btf_dump padding handling - bpf_object__name() returning name, not path - ELF section handling off-by-one bug fix - mem leak/double free fix in BPF program relocation code - Replace lua51-luajit-devel with luajit-devel to reflect the recent change in Factory (bsc#1159191) - Add bcc-fix-test_map_in_map.patch to fix the build error in the test case- Enable USDT for s390x since 0.10.0 already supports it- Add support-clang9.patch and apply it for llvm >= 9 - Fix sed call for python- Update to 0.11.0 + Support for kernel up to 5.3 + Corresponding libbpf submodule release is v0.0.5 + Fix USDT issue with multi-threaded applications + Fixed the early return behavior of lookup_or_init + Support for nic hardware offload + Fixed and Enabled Travis CI + A lot of tools change with added new options, etc. - Update libbpf to 0.0.5 + bpf_btf_get_next_id() API to iterate over system's BTF objects + libbpf_set_print() now returns previously set print callback + libbpf versioning, build, and packaging improvements + convenience helpers for working with BTF types + experimental BPF CO-RE relocation support + various AF_XDP fixes and enhancements + BTF-defined maps + tracing attachment APIs and bpf_link abstraction + perf buffer API + BTF-to-C conversion API + btf__parse_elf API for loading .BTF from ELF files + libbpf_num_possible_cpus() added + passing through prog_flags through bpf_object__open + new attach types detection added - Use version for REVISION instead of libversion- Update to 0.10.0 + Support for kernel up to 5.1 + corresponding libbpf submodule release is v0.0.3 + support for reading kernel headers from /proc + libbpf.{a,so} renamed to libcc_bpf.{a,so} + new common options for some tools + new tool: drsnoop + s390 USDT support - Update libbpf to 0.0.3 + Also add the source url of libbpf - Drop upstreamed patches + 0001-fix-string-re-being-used-on-bytes-for-Python-3.patch + 0001-Convert-bytes-to-string-for-re-in-get_tracepoints.patch + 0001-tools-don-t-mix-print-end-with-printb.patch - Drop bcc-libbpf0 since upstream dropped the so file - Enable SMP build flags since we don't need static clang anymore- Add upstream patches to improve python3 compatibility + 0001-fix-string-re-being-used-on-bytes-for-Python-3.patch + 0001-Convert-bytes-to-string-for-re-in-get_tracepoints.patch + 0001-tools-don-t-mix-print-end-with-printb.patch- Update to 0.9.0 - Add libbpf-5beb8a2ebffd.tar.gz since libbpf became a submodule of bcc - Drop bcc-bsc1080085-import-readline-from-lib.patch + Upstream provide an additional argutment for the shared readline- Correct the library version- Remove unnecessary use of xargs. - Remove idempotent %if..%endif guards. - Update descriptions for grammar.- Update to 0.8.0. - Remove upstreamed patches, and un-needed ones. - bcc-check_int128.patch - bcc-python3.patch (replaced with sed pipeline) - bcc-install-additional-headers.patch (bpftrace has fixes now)- Switch to %license over %doc for licenses. - Add upstream patch for bpftrace builds. boo#1117223 + bsc-install-additional-headers.patch- Update to 0.7.0 - Refresh bcc-python3.patch - Drop upstreamed patches + bcc-bpf_probe_read-fixes.patch + bcc-fix-ext4slower.patch + bcc-fix-tcpaccept.patch + bcc-prevent-bpf_probe_read-MemberExpre-rewrite.patch - Remove bcc-bsc1065593-llvm4-hack.patch and set ENABLE_LLVM_SHARED - Remove COPYRIGHT.txt which was dropped by upstream- Update to 0.6.0 - Add upstream patches + bcc-bpf_probe_read-fixes.patch + bcc-fix-ext4slower.patch + bcc-fix-tcpaccept.patch + bcc-prevent-bpf_probe_read-MemberExpre-rewrite.patch - Drop upstreamed patches + bcc-fix-build-for-llvm-5.0.1.patch + bcc-fix-a-compilation-error-with-latest-llvm-clang-trunk.patch + bcc-bsc1080085-backport-bytes-strings.patch + bcc-bsc1080085-detect-slab-for-slabratetop.patch + bcc-bsc1080085-fix-cachetop-py3-str.patch + bcc-bsc1080085-fix-syscount-str.patch - Refresh bcc-python3.patch- Add bcc-fix-a-compilation-error-with-latest-llvm-clang-trunk.patch to fix build with LLVM6.- Add bcc-bsc1080085-fix-syscount-str.patch to convert ausyscall output to string (bsc#1080085)- Only enable bcc-lua for openSUSE (bsc#1085810) - Amend the spec file to enable bps only for Tumbleweed (bsc#1085403)- Add bcc-bsc1080085-import-readline-from-lib.patch to read the symbol "readline" from libreadline. (bsc#1080085) - Add bcc-bsc1080085-detect-slab-for-slabratetop.patch to detect the current memory allocator and include the correct header. (bsc#1080085) - Make bcc-tools require audit since syscount.py needs ausyscall to get the syscall list. (bsc#1080085)- Add bcc-bsc1080085-backport-bytes-strings.patch and bcc-bsc1080085-fix-cachetop-py3-str.patch to fix the python3 compatibility issue (bsc#1080085)- Update bcc-python3.patch to make python3 default for all the python scripts (bsc#1079961)- Add bcc-fix-build-for-llvm-5.0.1.patch to fix the compilation error against llvm-5.0.1- Replace clang4-devel-static BuildRequires with clang-devel-static: use the unversioned one, folling the llvm meta package version (like all the other llvm/clang packages in the build chain).- Request at least 10GB disk since the clang4-devel-static needs more than 3GB and sometimes caused build fail (FATE#322227)- Request at least 4G RAM for the s390x build (FATE#322227, bsc#1070362)- Tweak the installation path of bps directly instead of installing it manually. For those architectures without luajit, %{_bindir} wasn't created and it failed the previous install command. (FATE#322227, bsc#1070362)- Update to 0.5.0 (bsc#1070563) + Explain possible reason of an error in scripts that rely on /proc/kallsyms + bpf: fix a couple of issues related to arm64 + bpf: Add support for prog_name and map_name + Add a few introspection helpers + Introduce BPF Program Snapshot helper (bps) + Trace external pointers through maps + Merge BType, Map, and Probe Consumers + Fix exception handling in python3 + Add usdt support for ARM64 + bpf: make test py_test_tools_smoke pass on arm64 + Add soname to libbpf.so + Fix Module display for unreadable Modules + Use bpf_prog_load_flag in APIs + Add flag to enable verifier log_level 2 + bpf: use MCJIT explicitly for ExecutionEngine + change frontend rewriter to better handle anonymous struct/union + Move BCC debug options to an installed header file + use user-provided log_level in bpf_prog_load + Add utility for cc tests to read command outputs + Fix 'test_libbcc' from failing due to symbol name mismatch + Update perf event type and config checks + libbpf: Support unbound raw socket creation + force linking the whole api-static library into shared library + man/bps: Add a man page for introspection/bps.c + Do not keep Loader instances around + python: make _decode_table_types aware of __int128 + python: Avoid unnecessary pointer object creations - Only exclude ppc and s390 build (FATE#322227, bsc#1070362) - Add _constraints to reserve 2GB memory for linking with clang4-devel-static - Rename armv7.patch as bcc-check_int128.patch to check if the compiler support int128 or not - Drop upstreamed patches: + bcc-bsc1065593-switch-to-mcjit.patch + bcc-add-soname-to-libbpf.patch- Add patch (bcc-python3.patch) to explicitly use "/usr/bin/python3"- Use the python3 package by default - Provide and obsolete python-bcc (it's python2-bcc now)- Update to 0.4.0 + Fix helper to access stack pointer for powerpc + bpf: rename helper function bpf_get_stackid + bpf: print out the src debug info to a temporary file + attempt to compile with system bpf.h if default compile failed + sync src/cc/compat/linux headers with latest net-next + Fix segfault with enumerations + Allow BCC to parse vDSO symbols + libbpf: print error to error stream + Avoid potential SEGFAULT when resolving Kernel symbols + Fix 'tools/statsnoop' from failing to attach kprobes + Update USDT argument constraint for powerpc and powerpc64 + examples:dns_matching: make it work as DNS sniffer + add debug option to dump asm insns embedded with source + examples:dns_matching: helper function for adding cache entry + Traces external pointers in parenthesized expressions + examples:dns_matching: fixed loop break condition + Fix bcc_resolve_global_addr on shared libraries + BCC macro for the creation of LPM trie maps (#1359) + bpf_probe_read*: src argument should be const void *. + hardirqs, softirqs: Fix distribution mode units handling + Add a generic utility to check any binary availability + Fix 'test_debuginfo' from failing if a symbol has multiple aliases + nfsdist tool (#1347) + annotate program tag + add helpers to access program tag + examples: fixed http_filter example + nfsslower: trace slow NFS operations + Update after lookup in map.increment for HASH types + fix a bug introduced by previous lua-bcc build fix commit + Better check for compiler standard support + fix lua-bcc build issue with cmake try_compile + Fix segfault on incomplete types + Trace external pointers from helpers + Allow the flags to be specified in remove_xdp() + bcc-lua: --no-pie, not -no-pie + solisten, tcpconnlat, tcpretrans: Remove unnecessary bpf_probe_reads - Add the new subpackage libbpf0 - Add bcc-bsc1065593-llvm4-hack.patch to work around the llvm libraries searching issue (bsc#1065593) (Also add clang4-devel-static to BuildRequires) - Add bcc-bsc1065593-switch-to-mcjit.patch to switch from OrcJIT to MCJIT. OrcJIT actually doesn't work for bcc, and the bug was covered until we start to use the unified LLVM shared library. (bsc#1065593) - Add bcc-add-soname-to-libbpf.patch to install the shared library properly - Update the group of packages - Disable USDT for ARM and AArch64 since it's not ready.- Update to 0.3.0+git1502955391.9de830a + avoid large map memory allocation in userspace + python - set attach_xdp's default flag value to 0 + have uniform uprobe event names for python and C++ + Remove extra S_MAXSTAT array allocation in some tools + Omit include of ptrace.h for empty usdt contexts + Add clang check for -nopie option + Correct commit id for BPF_FUNC_get_socket_cookie + tools/tcptracer: add timestamp option + Since LUA_GLOBALSINDEX is obsolete from Lua 5.2, use lua_getglobal function instead. + better state default value handling + add --state to offcputime + tcptop: Filter out negative values in receive probe + tcptop: Cleanup argument parsing + Use unsigned conversion specifier for nlmsg_pid + Fix wrong netlink port id check + 1. Use more safe snprintf instead of sprintf; 2. Modify procfilename buffer length in bcc_procutils_language function. + permit multiple pids attaching to the same probe + generate proper usdt code to prevent llvm meddling with ctx->#fields + MySQL tracing without USDT (#1239) + Fix a clang memory leak + Update bpf.h and virtual_bpf.h to 4.13-rc1 + Fix trace.py for library filenames containing colons (#1252) + cc: Add open_perf_event to the C/C++ API (#1232) + memleak: expand allocator coverage (#1214) + libbpf: fix build warning on setns (#1246) + usdt: Use ProcMountNS + proc: Enhance bcc_mapping_is_file_backed + Fix bcc.lua build issue in Ubuntu 17.04 + Added helpers for BPF_PERCPU_ARRAY (#1230) + Add an option to strip leading zeros from histograms (#1226) + gethostlatency was rounding to full ms + Change clang frontend optimization level from 0 to 2 + fix cc: error: unrecognized command line option -no-pie + fix incorrect code generation in usdt- Update to 0.3.0+git1496334311.6fa3681 + Improve PerfEventArray clean up + make libbpf standalone-ready + Add support for generic XDP mode + Add option to control bcc_elf_foreach_sym behavior + Add bpf_get_first_key helper + Enable recursive scanf support for char[] as string + Fix computation of LUAJIT_INCLUDE_DIR + cc: Work around verifier error when reading USDT probe arguments + Disable non-static function calls + Added the option(USINGISYSTEM) of Cmake for controling whether using -isystem. (#1064) + softirqs: Migrate to kernel tracepoints instead of kprobes (#1091) + lua/bpf: implemented packet direct access + lua/bpf: support for NET_OFF for dissector + KVM hypercall analysis example (#1082) + cc: add support for prog table + cc: add support for array table + Add TableStorage class for wrapping bpf map tracking + funcslower: Trace slow kernel or user function calls + map.insert bcc helper to expose the BPF_NOEXIST flag (#1085) + bcc container improvements (#1051) + cc: define load_func and unload_func public + Python 3 compatibility fixes around string handling (#986) + Verify format specifiers in bpf_trace_printk in rewriter + Add build option for installing C++ examples + bpflist: Display processes with running BPF programs and maps + python: Allow module=None when resolving kernel symbols + mdflush: Add missing #include - Enable AArch64 build (FATE#322227) - Remove remove-isystem.patch since it can be controlled by the cmake option now. - Add gcc-c++ to the BuildRequires and switch to gcc/g++- Update to 0.3.0 + Added s390x support. Needs 4.10 Kernel + Restrict rewrite of unary operators to dereference operator + cmake: Explicitly mark static libraries as such + Fix bpf_dins_pkt rewrite in BinaryOperator + cc: Symbol resolution with multiple executable regions per module + cc: Fix assertion for debug builds + cc: Don't parse the same module multiple times for USDT probes + add XDP return values to python interface + python: handle null module in BPF.sym + filetop: support specifying sort column via cmdline argument + cc: Retry symbol resolution using perfmap + cc: Handle nested functions correctly when resolving symbols- Add remove-isystem.patch to unconditionally removing -isystem, looks like the gcc check is broken. - Add armv7.patch to disable __uint128_t usage which does not exist on ARMv7. - Always use clang as C compiler, note that the build system will always use clang++ ad CXX compiler if it finds it.- Update to 0.2.0+git1488325605.4d0d430 + Fix long running test_debuginfo and python3 fix + Make perf ring buffer size configurable + docs: Update eBPF features list + Improve matching of file-backed memory mappings + Fix symbol resolution by name (SymbolCache.resolve_name) + cc: Resolve symbols from external debuginfo + cc: Correctly treat PIE files as shared objects for symbols + Migrate to new symbols resolution API + Simplify BCC symbol resolution API + trace, argdist: Treat small USDT arguments correctly + Support base + index * scale addressing for USDT arguments + cc: Fix SEGV when there is no build-id section + syscount: Summarize syscall counts and latencies + u* tools: PHP support + bcc: add support for lpm trie map type + cc: Support for __data_loc tracepoint fields + Fix python2/3 incompatible percpu helpers + fix iteration over CPUs + Fixes for LLVM 4.0 and python3 + Update [virtual_]bpf.h to 4.10 + add bpf_obj_pin/bpf_obj_get to pin/get bpf objects + uobjnew: Attach uprobe only to the requested process + uflow: Trace method execution flow + ustat: Activity stats from high-level languages + ugc: Monitor GC events in high-level languages + ucalls: Summarize method calls with USDT + Example of using USDT + Add USDT support to C++ API + Improve linear histogram limit, and improve error message + add runqlen tool + docs: Update eBPF features list + Improve C++ API perf buffer polling + add support for bpf map flags + Fix bug of missing to install simple_tc.py + Add support for aarch64 + Avoid unexpected log message on BPF program load error + Add lru_hash/lru_percpu_hash to python/lua + bcc: add lru_hash and lru_percpu_hash map types - Remove the clang workaround since llvm 3.9.1 supports gcc c++11 abi tag. (bsc#935533) - Enable PowerPC64 and PowerPC64le build- Move manpages back to /usr/share/bcc/man since trace.8 is conflicted with the one from postfix.- Update to 0.2.0+git1480569532.5647de0 + profile: -p should match user PID + tcplife: reorder logic to catch missed timestamps + hello_perf_output: match the data type of pid + Remove debug flag override in bcc_exception.h + Use StatusTuple constructor in mkstatus_ + Implement StatusTuple class instead of using std::tuple + biotop.py: fix compiler error on newer kernels + Determine kernel dirs at runtime (fix #743) + Rename exception.h to bcc_exception.h + tcplife.py: Catch passive closed by server, #788 + Install exception.h and common.h + Fixup test errors in clang, c api + trace: Avoid passing -1 as the pid to USDT + Fix Tracepoint example (#809) + cc, python: Clean up BPF module and tables + Fix warnings covered by -Wdelete-non-virtual-dtor + Fix argument type for increment() in documentation (#794) + trace: add pid/tid filtering, fix symbolizing, misc nits (#798) + Expose destruction of SymbolCache in libbcc + perf_reader: install perf_reader.h + Use headers from BCC in installed files (#793) + funccount: Bail early if there are no matching functions (#792) + python: Grab all keys before zeroing + funccount: Switch to BPF array instead of hash + Update profile.py to use new perf support (#776) + Example for using BPF perf event + funccount: Do not prepopulate location cache + python: Filter duplicate in get_kprobe_functions + Python API for BPF perf event + Add bpf_attach_perf_event in libbpf + Add BPF_PROG_TYPE_PERF_EVENT to bpf_prog_type enum + add tcplife (#773) + add reset-trace (#766) + funccount: Verify probe max limit (#771) + python: Fix kprobe quota test breakage, add uprobes + funccount: Generalize for uprobes, tracepoints, and USDT + bcc: Make regex helpers publicly accessible + stackcount: Style fixes for linter (pep8) + fix profile.py page_offset_base breakage (#768) + trace, argdist: -I switch for trace and miscellaneous fixes (#761) + cc: Support glob+offset format in USDT arguments (#753) + Support filtering by process ID in the filesystem slower tools (#756) + trace: STRCMP helper function + mysqld_slower: Fix breakage after USDT API change + trace: Add %K and %U format specifiers (#742) + Update opensnoop to filter by PID and TID (#739) + funclatency: user functions support (#733) + tplist: Print USDT locations and arguments (#734) + src/lua: LuaJIT BPF compiler, examples, tests (#652) + stackcount: Support uprobes, tracepoints, and USDT (#730) + trace: Initialize USDT arguments to 0 before reading (#725) + argdist, trace: Native tracepoint support (#724) + argdist: Cumulative mode (-c) (#719) + trace: Print USDT arg helpers in verbose mode (#723) + argdist, trace: Support naked executable names in probes (#720) + docs: Update eBPF features list by kernel version (#717) + fixup the issue in which distributed_bridge example (#716) + Fix bpf_common.cc include style (#715) + Fix argdist, trace, tplist to use the libbcc USDT support (#698) + [tcpconnect] filter traced connection based on destination ports + Fix bpf log buffer for large bpf program: (#680) + opensnoop: Introduce process name filtering - Exclude the cpp examples from installation - Remove the isystem path since we are using clang++ - Install the manpages correctly - Improve the spec file to search the luajit pathes and fix some dependency issue in Leap 42.2 - Remove "-DBCC_KERNEL_HAS_SOURCE_DIR=1" since bcc can detect the kernel dir dynamically now.- Add llvm-gold to the BuildRequires since the package was split from llvm since 3.8.1- Update to 0.2.0 + examples: fix indentation in tracing/tcpv4connect + fileslower/filetop: use de->d_name.name, add filtering- Update to snapshot v0.1.8+git1472097662.4ebb7cf + fix biosnoop after kernel change + offcputime improvements: use less RAM, add PID/TID support + Add perf_submit_skb + Adjustments to the documentation + fix build with 4.0 llvm trunk + frontends/clang: Safety check for invalid opLoc in ProbeVisitor + Tool to sniff data contents before encrypted with OpenSSL or GnuTLS + Add bpf_get_current_task() helper definition + USDT Python API and example + Lua Tools for BCC + BPF: better format for `ksymaddr` + table: Implement a StackWalker for StackTrace tables + added percpu support in bcc + Fix error handling when attaching {u,k}{,ret}probes + Fix python3 incompatibilities + Update headers with 4.5+ features + Add v6 headers to proto.h + Use pre-calculated function addresses in funccount + Add name to address ksym helper + Add a table.zero() function to bcc.TableBase + Enforce limit of 1000 open [uk]probes - Drop upstreamed bcc-kernel-header-search.patch - Add bcc-docs to collect the documentation - Add bcc-lua to process the lua scripts - Add the license files to libbcc0- Use the upstream tarball and add the URL - Amend the description of the pacakge - Use the right group for libbcc0- Remove "strip" from "make install" to enable debuginfo- Switch to clang to avoid the c++11 tag issue (bsc#935533) - Update bcc-kernel-header-search.patch to include headers in /lib/modules/$(uname -r)/build/- Replace bcc-suse-kernel-headers.patch with the upstream fix, bcc-kernel-header-search.patch, and add "-DBCC_KERNEL_HAS_SOURCE_DIR=1" to cmake. - Fix the formation in the spec file- Update to version 0.1.8 + http_filter renamed, README fixed + Migrated filelife to bpf_perf_event + migrated to use bpf_perf_events + Migrated killsnoop to bpf_perf_event + Print traceback only if verbose mode was requested + trace: trace function execution with custom format strings and filters - Add back python3-bcc - Make python-bcc require libbcc0- Update to version 0.1.7+git1455766673.13e74d3 + use __builtin_memcpy() instead of unrolled loop + http filter example + Add bpf_module.h to CMakeLists.txt + different man formats + Fix segfault in ~BPFModule on syntax error + Add bitesize tool + Support array and pointer types in scanf generated function + Add biotop tool + Added memory leak tracer + Fix python map.items() racing with bpf delete + Don't show allocations newer than a configurable age + Add bpf_get_prandom_u32 to helpers + Added --stack-depth switch to control the number of stack frames captured for each allocation + Fixed long arg name from stack_depth to stack-depth + Added option to display only top N stacks by size + use bpf_perf_event_output() instead + save one bpf_probe_read() + 3 tools: oomkill, dcstat, dcsnoop + Implemented histogram functionality, including strings; added examples + Added ret probes + Renamed to argdist.py, updated command-line switches, added kernel probe pid filtering, added verbose mode that prints the BPF program + ext4 and xfs tools + tcp to bpf_perf_output + 3 tools: tcpretrans, zfsslower, zfsdist + inline C in /tools + 2 tools: btrfsdist, btrfsslower + Split bcc/__init__.py into multiple files + Split bcc.table.BPFTable into multiple type-specific classes + Support native integer indexing in table.Array type + Fix breakage in open_perf_buffer + Embed runtime header files in libbcc.so - Add bcc-suse-kernel-headers.patch to fix the kernel header path - Drop bcc-workaround-gcc5-abi.patch since it never works... - Drop the dependency of bcc-devel from python-bcc- Update to version v0.1.7+git20160131.143df80 + Updates to use cmake GLOB and libbcc.so.0 in python init + Add decode() to ascii string in offcputime.py + Add libbpf.c support for uprobes + Add python support for attaching bpf programs to uprobes + Fixes for address calculation + Fixup objdump calling syntax and add docstrings + Add uprobe strlen histogram example + Update test_dump_func to be python3 compatible- Update to version v0.1.7+git20160119.f50ca1f + fix pep8 lint errors in the rest of the tools + Close fd and unshare when public map is destructed + stack walker typo and improvement + optimize code, remove unnecessary filter check + add -u, and change from 2 to 1 traced funcitons- Update to version v0.1.7+git20160110.a0aa7f2 + Remove runtime dependency on gcc stdarg headers and make + Add ability to set custom cflags when loading programs + Add ability to export maps, enables cross-program sharing + Rename BPF_EXPORT to BPF_TABLE_PUBLIC + fix pep8 lint errors in biolatency and biosnoop - Remove make from Requires of python-bcc- Update to version v0.1.7+git20151210.23b87e5: + Fixup dependencies of bcc-tools package + Automatically bump memlock ulimit + fixed bugs in control-flow generation + Fix breakage from LLVM 3.8 API change + make sure LDFLAGS are propagated as well + Improve json type support for misc struct/union types + Drop broken p4/docs symlink and create README.md+URL - Drop upstreamed bcc-honor-external-cflags.patch- Udpate to bcc-0.1.7+git48.g1c7debd - Add python-future as the Recommends for bcc-examples so that the scripts can be compatible with python 2 and python 3. - Remove python3-bcc- Update to bcc-0.1.7+git34.gfa9684d - Add bcc-workaround-gcc5-abi.patch to work around the old c++11 abi in clang - Add bcc-honor-external-cflags.patch to adopt the external cflags - Drop bcc-fix-packaging.patch which is already in the tarball - Amend the requirements of python-bcc + make and kernel-devel are necessary - Add python3-bcc since the python binding is compatiable with both 2 and 3- initial import: v0.1.7 - Add bcc-fix-packaging.patch to fix versioning issue of the shared library/sbin/ldconfig/sbin/ldconfigh01-ch3a 17532579200.29.1-150600.5.6.10.29.1-150600.5.6.1libbcc.so.0libbcc.so.0.29.1libbcc_bpf.so.0libbcc_bpf.so.0.29.1libbcc0LICENSE.txt/usr/lib64//usr/share/licenses//usr/share/licenses/libbcc0/-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:39855/SUSE_SLE-15-SP6_Update/ac5c72862837c27eb91e769cd7813ac2-bcc.SUSE_SLE-15-SP6_Updatedrpmxz5x86_64-suse-linuxELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, BuildID[sha1]=6817cda3221072109d268d5c2364c9cd286b8533, strippedELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, BuildID[sha1]=1e9912eb970ad946bbe3307d5a3a318a546fd7c1, strippeddirectoryASCII text33,PR-R+R'R(R)R&R8R1R5R0R2R6R7R3R:R4R/R9R RRRRRRRRRR R"RR!RRRRR RRRR$R R#R R%R R.R,R*RPR-R+R)R'R(R&RRRR RRRRRRR RR RRRRRR!RR8R4R2R7R/R5R:R9R0R6R3R%R R.R,R*R^D߉\ utf-82f73b426c9fb71b7391a86e3e5a14727f7301cff6ae06b6ff17f59f5e542634f?7zXZ !t/]"k%r=e8|գAi5ibQVyWӱvJo?p.[m $XlߏćofL _+؀hٸ\"OVذ_hE62p7=^L??/YOA[Dp}%uR)SshhH[3g[k<#\daVfVw|S"A IfHi1¨D+j5X6jU%AZ] D" =6?DæU*|͜,٥C4*l K4hF]^eת kA;$ō`,CGNӬ0>ښ.1 oSjv^מ*za~fͺ{*#Cqg.6$S?7Fõ P.k [\\./}ԄO=oqIWE=/ (щ'h>]&/huo²1JwѲ@jk Ч(M+|p_h?xŚ"-ɿ!~qXb:zˊ+^cNc]p`5.F.Z5ՆÂL#P#g ԟ Y(E׽Hju+{LAt=Yhݥ;WɘJ[tR?n;_H|{4s?Ұ|mҳ$#@8<LXK7jj/E_TlҰpagzzȊEzwL;cRpvH;t žuflɻLCG.&+9kxޡgX'pN:/ !Ug *;s+;z6P?DhfXPu*i2:h 5?q쬈k/ Gq/xI-OG:ͣx^c: Cg1`o~Fm,,9xUC)kVzFxH똳6W%zID kK+j6~~̰M[q~ٗQt!EZf,{'V96|ȯIHDcŘ%K{g@DۨPvb,?|-@ceWЍ#5b * >:^7b4+^ 4`e$tӬ3]^EĴg%)U+-i8 Yc/XT"jSlrDwaPX.kB>k9ՎEdhjI`^թ.?m Zfz[˲G~>8,,o Vu6ƥ=bP*4+^(zyIz|`1/٬;\j [HocDĎH+Hovxr:6?AEՕZ Xq]\/ÔF]⬜#E?=Q|յGV_c ߺP4҄ }$ fXq͘o0ס6ur aj Zt2bS*2n*vb(ZSwT TpzHxOGB8#83*(ihq@ؕtT7-ipJpzۺ:~wFRVvBe(_p 9}@p?B5 Vv_=HIP ȶP~koNKPM,;%^vlRB$X Zy %?ffߤGaɴ/Վ \k2L.X>GBN@(GpBSt` )c\+uTb Qh^gt6 OS]RWj-%ͅb,NtֆZ'._ҭ#Zp'!АG?[ѻ78sxN6LՑDR `Q!gﯴ#rџYY^5u#$cw}'pBwTh fǑ xÏf}\+>$X\%#DdV3gհxSCG98+Ŭx jX˪H*O8b59* 2f.1o,o}ǨAʤAt7'LJ>~B G&`͟)Xe\VOx g5Y&B;|ԔWUp9ok]u>ѡk!%Ѷk>U w^,>UE>B#=3 4q)#ݩFf7֞"ݧdYw¹3 8:^Y/L§w xއk7<  E{j  WU{xj)? )?Q;Va1g|͎PBluZpQE665dHHeqJT̶ۧ]g0a6Ao?QHVºJCbdOOaj5\vw;)ύՃJ[Ⱦ.3 z_יp9k1qWs|w&bo$(c0;:57 "ގ OC>E{fjVB8Xs]q>o"5;uD I?b/IAer45teEpDbckAY8Z"ʬ)MfƦHG;b_i*o\f3f+ᢇ]-oyge}e' m^ab2 3 ._4zhWlrsEЍ Ro>lw!BB_[ܩZ ʙiΫJ'( x CCj;pffE.n;jh{1$cA3K='>m;φt`}ly@d*go o[c ?U NT[F(,2CGOﲏ}EC\*b _fTS%Q lPRd3NKܮgN M@xGuov49\(՝ML%ːcD2&<:  оӖ1t怠hdOֳ Fy#hR32Ak{FGUU>TcW %nLbH14U^$])b2wCT>dr2gI*ӵ<ܫ%,G.zF D#8ROЖ.`x>RҾt"Z2es_x$*cxq|"dhnr\nM7 }\(U(&5J5qDxyhio3-g|.M6~.Ϩr((vpm]ɅT l0KϨs.@%D!ʲQuɼT Xw\ $g 2mseNXH⼖q404H9(Sd M/(=Phh#σtlEg6\jzڷ-:8 ?PݢqpTLTZ找{7ݿ¤QiâN'TVxeE49m~io!TDo728 ;⤼ēO̮Yz0GO*ͭ_rDe6Lz!܄ եk' #`GP j0 3EqΏn1mH ϗyn t)01+Ǯr,- BhqIW,I |FIb?4\@Ƨa<@Фb:x7vO,zI!.Яy*~ f49' N)XXH>-wu1X fU<:.#CTg1m(Ω6ѡ[IiAV[ض"ۨ @!N͍(e>E;$Vr׸EBE+pBjA]D%dO/(j,dRAFjX;v'|&O $qR\M0 ܝJM U`/)eiȉt o#c: G?HNN%R !0.LcVq-WTlUx jMPƨz%u7-(63ﭵ[ӕ 3|`"y&zB0qpNN":o!my)HU(yO~nh& RoCvt掋ۚTڂ66tLID8`OT[,Ux|jq A5Xh)q^4.Җ(vM"~nt{\l( :Bnd}N4׎K=_B?X$ ˨֕BGSV,gwl? +^Hκ p[x_o 5=[ 5R%5wq{k%.;V8V^뷺? S,T!Dഐ ,ݘ*_  s+N tƒorϩ8 dϞU&a 5S߭{yfȘF=YkoBmi*}lP wY"/R$L/:&.ygDtcΠyl,)>[<>>dNxDiR2[QkݯrO"F9PB0-0Eou"%hy7 `!nŇZf/3Luh !VCYLN2 J1SU$-B ٕ'qVHKC:_!gt#R;cdВ~nQ9:?d 5C0I>O8ogoGIڡb53Khc51f+A¸q 6_3t.jCt/JYz6]u>D`bk;/}[Jc}%E>ָ{:zek!΅>?XzcKi)޷DhP>0<ƪG([)dԘ)+u"pGKPBa~wl]r`sDSPΟPb!'$Փfƙf cmP>92y0C Q81_r*̀qK$įZCH_c|shTՂIۋ>Ec@ncBMaLV8IKVt{/'E-rghqc0~*rm`;M/mYľ.U7 clIuMk'~ï %[^ R\ JVg`^esoB{8Q"zK45=XSy.0Ղu~|WMBKlU04ڭ75i,I<Yą2,4ިe܁޽Wd&ƙ`ݺd?djnhCb:klNb?ʼ(0KO|5[3Xk:/ɤd~Ԁ|_mI*GMo d4_( UAW>ASIQ*92xLnͲ!~t5|a(MW}Ec ]xs;*2N =&(=K ՇLt?{IqP{{C`2r犢8W$N>3'h>s`ݫf:}2+ކxL)yYa|)h`E+^^-aݘl?eH=Fz-23u@gkW/,lg(5#}C${&|؎1g챩6[O h̅gj㭡ߞLowceUE W:4icGs !VϹT?O8J:!uI"!{Y< y_^٪R:g)l}[>-DE8M1RY/֜M#~r+j] ;gܢ>] ]\lYGc& /*[͹IQ; GC0we5/{$ޔL2]ClðCg`kQ{[lYW|+0#8Y6braMaskY;iӸ8忟hg<Z.m|w{G6=-_K5 Ɓp=9=Bwz9<eKj(}aZVc\Cbފ_w 6BCc{ șpG}ʗڭlUa6XK-Gĉ ٕ?硪il M^ ~ggTs(@ _uub"Sl_$#42!/^|Tk9kK9Lc8 4 ,GStq A_|PŨU1G,ЧũHKٵ2e"p4!SFۿHL*٪y~pHDI<^ϯ 68lMk2q2,€ۘ[fiٸs+j ڡA& ,E*Jjk:^/^TcIڹ0P z90(GΞtt\hIo Dhd4>QD[=r(uN&)7 h0$ C&avǮ؟{ ^pTcՌVs`Q;(DO؍? ZW 7pgޟ }A\Ԁy}8gczr4K#FR"X'gy)pO-65\Hm(&@E7+A䡚c8s+w9UmF/HY5Ɨ/Uz ?GAZëh;~HхdkHz Ǔ.x -:D@=m|;y"p\dkgMZZ,tńBMƴI4#{V۷Kΰ1ni7$bdޭ+>~qJ_W^fO@3y';͝]w:XF~ίոIwJoKKsgݨύI!ET( jC[ڏmM,w|^+8L 7Zy; Pˇr.[WЪ?FwLa3/~,Yp_7&5J-ov`zeR>?H(H0e$VЉܱCEІ+Gw%-З_XIگdZ'6]F*\M MU`I k¼[9rټRW̥G F8a !  `O_bsT | I-^CҔ O!5Ē=Mf/x?IX& %P=`O $756yݪr3JhΤ=$ fjT4Q3ɶ YO,2oDs'Am tNd&ErOx^~Z7r _`XhQ><( ed`U|D#\@̼,P}(}f')pL m,iNiFNz>qF2F7ΛخW[Buh 3d9=gޱJ5!ɩ!S. " c0q rmz%;϶/S$$zd3,oiQNn#1n r q hv 5]ՖG3g?$ubE1lUԹ!*Ƈ TVm6'*(g&Ep1^%H}._JD-^Y@! }PӖ~<}J'5|JѪì&0 LYa#/CiZh!v *W2W^wR <Ӟ;ܑ*j*9O&9֖"-0HW x5LJEIh{'IǗV}sZ6V] "9ݱꤊ](7 jIIUxgXZ LZZLQ!EI&RyT&w}u#P[8aaIE:ShX#^ rG(3PT'ACG(PGzi$uЍs #VKwĿiEv T~xgdoJ<:CWt=ĒPm_wN ?A1 M'6HApNH9PYJL7ģljRv?qA/',lY4EpQ:&*6no!uoCWX e ;2lR$]A +2!SW#1P]ٛ&'"{VL5SɜB#2q'·]'lf] 0:NM{9~a d5*=@V,F9b"0e@Qە~qKyEul?h] ]=NRP*\YIr [} 5Ag<gn&'>g!{ސ^rL 2hq-!#pC0Wmژvrx̷I$m3զj+搔'YýTV(y#1$H-.;V!" ^YlG3h vz޼WJ\]g!* PyܪʦD8*'ݍN%;vI.q钶AϞ2qqac?.w u@۪(_PYM:/K&pPsn({Fi_RL8@M)3mB5\@>UiwMIbp>{ԍ5uҍg=N8R Ì @Xq,A:3h99VHb/ jWM`rUv*u:o&p-? Bn\P//,VO }\h, /{x&08F^G`%ZS"HdV9 Ë́K{Ba>n?e!:;l4^8ScmL7L Fhe1dp/Yl>rڳX0?hb0MoFSY,=2ŰC 5Hl.IcV-9 ޵4 ѓˬ5 N-ZB8hCla`қƤn~MC|n,CL.D'K'GIk+uGU8[ ǸIIAnYPSEʼō0xWgp12sEndumnuju 0S+.:? XD(7) zʃ$4;XaU8eNAs}d;ߟ7Q@bt4$UfWQpۗo}F4w'Eo arHFEոH̱L KOͮ8Vrh=o M)xGW(n8P,_{2hUc,tBJ6 nņ:7?4)k$L2~@4 &k+FȢvjN+垷o7 4tmGa@B€ "ҩwp cO~:j8 SࢤaE)u J`6-(GaJkh` L xk|W[XR ™@-ծ #\ň1} 9+bq /Y{M]$FٓaFéۢZJƮܕO(Q6ZǺMVP<AIl+v$.0biB~Ҁ*A`Gpf$xv~RǞz"]Vq}VJ,SKoO"f^lAEQl -aat1g<'7J!rDHɉϸw{ԵTOm#س?$!Y1` t-jg*ל䶝[v*RRu+TG+?E돢CaJ(Bz=5lT]ޮװt~й3dW!7$3({˞3cWlWۨ7}Z#CsD֎ jaj#:0:Vf:@~߳x8q,tksU-O: qxՂ7Y[WpC.jlmȔ-|хM:0 Ջѡ}EBst893`W 0#0YHx"0`K݅sss#U!y1R4|Bl4m&݆ҷQ4\`KtT˜:.2P-P:jW?ޓc.i畜f8QEP:EQTmTG>,ɜAyA ݆Q7(&' e#KfZpH8Y.Xf ŷNJ;zwQ'ϷCPi/F vm:ѾAҦds*RP(XUY1ygQ$*߹[j߯)@3Qk7: qxŮjx!"_R'P~S}0C88ߵkdXl$O>ķ|?4"]|h/໻+&tj|:H%D/avx$)ԔUsSBuG@60MFp' V29G (r7VĬCJs+,l1~2ݠ* | 2/ȗ^q`bHUS[<ܶxG'4_f%KM1-TF":d(}ͣ֫3ܒ‰q[S=ih*X leS`h)J5klFHySfq?I'ޏBV\3.w4ۅB;7ņ !=jTa_áisFa3`?$d}|^C4e|^.p\ c]ryZBaA3Sm9z)x:Jr1N6(v)}:n/j2꘍\;hIkhg<Ӏ GgK+&="a%`9~{hE!sZPَBvU#|}2Աa/_ua$<̕8Mz~p >.q׸4 Vk=_%=ڀ Hǹ`5'=*)C]=..+zD&o"-)(Du760WnޢFr0ki3,)=]Gځ-w03hg߆%GǪԳjoϏ/]MT7?2Ft RB.Ր}wG}Rp 4jrI7wvKJwr݈U!YJ_N=ZgoXcutR۟sS{_Jl)Ӝ-0!{nGjt'PL>Z3ٕ Gf4tˆb|a_|$'!ҞVxzF\J=P Ix$cXg>(V\A1l i(eO0M*[>- 'Pf:Uc-v@4Pb4kե[1(lFc܅@4m B$kk< oc\/e[S;4VRB@ls_&HW6w<`neCْ͘}-I |h'JQ6 ̨f:`G:O5-j>/R{F5_yިD%C,?0")#R}MSt1F@ 84Bb. =~H>vC*Nc1Mک*8ϛexP7¢Lޗ~Ae`It^XQ)oI[,4:?yR7s.G{N敢Ku̐fIL0`s3;VYeVqZ/BADd5m` 3Ώm=r`.#r`8oDXxT)kM=2X|v`v̅Bjh,m̪f12"#KNA"ѰeH$($Hs%?Xa۾,]Xzm|{]t?|mX}"R<˪2Ҋ|c{L[mhַ+^3lxgSMp~eOTCPJwZ :H0*(a- zeå_;ge:Dm2c'BI0,'ŘAPum)"]ڹy]2k0Z ȥ`-sle<BPLbW= ۈl+DGIvJza;&꽑!d4g|qPKMf7cH> @!:ucFSulcY*;A9"$Axd.5h!.3t-x~wV!(A":.[!XnX"h]-LFj:}g0/aq @0 F9 gŴHG>smS1дZ*,/઄FHu YS7j T:k&<+TN([k= 6ȗ^ 1;7SfiLV } Ҽʼ"h_?[g? hXE0$m{PgAb{ː21%gCGEdF>D]nIK"-=]ƎamŜmm&Λ,fP1W]NM3/߅E":nD9Ah蛯iu'r_7Zށ ftuZURD+ܬ~gpoM4L^s`抵A3(pk3IFjDRHWz;H!yEw!;f., q}mt8:qĆb)L5? bccs{'x)BsA^Y@}UG~B"[wp+H  쯨 v2sfVt@jIA#RHm<zfNDcSdV:qE#x%:"P0'  52صusD`ڏDAu9x*ϬVD溳q9!&p.ۡ?›= AځAD+:{*7ys?Ä5J6P7ӣ"=dDI.m&n=[1}`EMǾ^vGѸ: lu؁4Gla˯p]\S'LZGj/B#/ʆOSFD"E ܛGȍCbsv〵s D6+cW)8).a`jnkDW nTb3bn:/"7Fvr6oN֔Qm݆(ǵ&㭙Pl3Z[|H>POKlߠG \hz! ٗKw[aI*h&3 G>C/a(74æn\Oz7B%G<ՂJg b4VF-~Dל;^rS:}zs7I/8~=W!PBxKҦ7/)7b}G,#Ȣ[V2'DS)%Ȧ~Phb =pkF+ Qx")Ĉm QMڌ*XۣP%k]2i|Wg?=@jo/`9v z1mV mt`8}81Z$5?2Q{I=E|9{8ك[W;h'".pH99tFɱ pFV )SC"gzn;[V+d2a*~86;n+2[pl c%55Tly)wnƾ/<с=g/!4e{CrP#OwqA SsDly^-f0K/jN⓪QنƄcRUZN@ }՞ 8(-X@"Xߨus_h2^ ,:ߌ49D°TĐ41B1t8e6㌿.-ϰ fWJ+S{Z\QT1tµu;|H|{WCVn(p]R#;Vna5QS!9GEJz}9f Htj=cq"sC`X[M<5ך̅`i|-͒Dr©^;jegNA^v3\6mxtTT+]Cz;Pg@wmPeE~Hk ̉O5vfq0s&=#"@Kmq+t$mU٢z% ^mB목TE")/p?{|7^yǚa\ q=Õ9-wX'=_j6)Cg[m/<̲{Ά֝$"gQcj'YXʺR%I0/=,S| ˻ [iP?TtQ+ ^ﺅIRbt+`羔-W Pim{d/:GϵX·ܚ:U= lZd3%$,jx@XngJM52UIn {Vv<>]ۇv?\9˽1~PcTTX~P3JRo' y/}uɟV ~|H^:G֗Rp-خmu^^C]*e7ӫ4p=+I4t6W(icO]~l6M_?;+[Wz8{|)Ƶ抯ѺW:C|I9l+нy^2v XseVpL=?ctI W/EH>U &,Gvr ~a(4pm9=[ ٪'Y~29(\me֪)[_iW2"?M+s;P(iVHJ@gZduYT@+? $(v:)xoePǜf&_ϐccS&Ny+ k6yr_M ~ZJt33_W+zl4nyqCcؔХFM C P=LXПY)vAX)e@h־!n+L*'Nf)eQ<]Cf!nG˵@X/^duz+7LFZTQڲw53XOy&T\QZfҋշC_z#"!uO\:| 4˟)JD%hB oMAݽ WR6R@ _ V1:{*@{:McV@^\|D%м;_6fi!_"R, ;)n8Lp l(F biÔ >6@䂈7cQ/[؁U+*{?p|Vu}%@)4t1*ǼAsY\G}2m-xJ+/hE-B}v:r]t3St|#Ѓa6HF E"\P~?+GSV+\9|Q|<zzg.qmϽ@!*ڃ8n8enI9HG|}> mB-5u0Ob*1|WNMƨNP.I 0c^v:w ՊjS^ehDPsΥm]!&Rȑ \A( 5j \>wDJ v|u>Kvs%FbB z(ٴ Z0O1jfxg2 )뱼nwYwtUY{4{zKE1k)4kqRY!}5k@qUщr޳.D)K!|腭 :6+Tq$/!HԍVk %qwN;aBŬ`P6ׄUƹ/Fu$A2ۚ5HbL|2WLZj]#`#3Bcᠱ 6>``} B <:ܽ~`^A8d2EZܵx$>-G8-9(k/wxRB8X#Qg*_&R˾7:* s-al0!j]}wt1"-MФx;eB^w͛>aL(/؆zK\a^dLYٜP$̒N5_le_B>;?/o: ]4wގz*`(tWuvro&ϖ*?/oJEi]8`C+ݠ)O00l9'f]'I;褝dd_z!p e\s&8^a23UM Uo.d|-c$q=?pF[jKx>@G;kQXP!Bjܓ'v98A|$C*P#SG?~M7Z58[a8+ё}-9=| ia& >I3׿eI7@xQ3hRr=q$f4vMOIaŚ'R&Hz_7 m3^4Oo=UЭ^,JsyeLk 3RCC-`B:HedӀCҼ{43nLuNdo_aR@ɤ)̪*3^"Q :ˉ/K/کS{Nd/0w^|̃59 wbGVy}/MrpCqU *{eݪi)R;rx`aL``*`q!% ?`;w~j?}&9"a2ԕʜ܇&|l:Lc7gQDH:/Iq9^VK(")up r?E`yf9ӔJ^|4?>uL3`9Hm,ObqU̞aJW/v#5zp[gg-5iOiYG-)۔bU3kw(Tj~RAN(RRР" }Q*_y= UDM;B Rvb`hemQ(SޗzMoiB-ˏSۼj b~HAod`Ȏ#0eo]YsT9>b$,I1/R@,Ej x ,dg_j"TQ < G:q > X= =ǜ5yCc'}Zo! l6P#5Zдn*UӋxdL>QTVPBKF@bV]R{N#Wy<,fG _WԆZ09ZwB7vZ˵4[w(p͏]]J&+Pd賬I;,hV:t[94SBvTOpf{fȯ* F k~x!|m~=ij1dCޔoGiq3xjVͧǙ,]J¶>ԴNw;^c}3_#-hM.j#x qq0ް&n3=̃yXh#w]n^?R9&,Ɩw6Џ-}YU(76@bX X}\e7EMz `o(儃h;_`߉x}dӓq6> kg@Tw(L¬=PR|YG6w2pߥ,56$:n,}Afr֌]R[A_%[e[ƛ~,6nɏ!v v:S[o=ֆk.b9jm(Abߦt4DhG#cY -C/S.B¯˯Jpo'OŴ(s?o w|zl]nk.@Y%K-lcìeRWĿ0Ϥ2bꗒKs T݆Y+T"&V'EdVa< hl}uyzh޿l3?*JJb`"n"yaLFyG[hû? ^@ X-'p}D㈵ lH -8>[]u49ŸުB7t5- Lh͏X:1U{ZNޓ8BVj[ߗ$.6+l۞MܝtY@ό><Nm6Æt#:uψ.չ}͜9 }3#4A <E/tXdMḱ{ aCJaV$`ʦ\aA _!* Oo49U /Rq"FQǻmvkq3bc2ELP"o`V|縿:D[GKp{'Fb\Sڍ@ l".iإ+t\ hwR7_!dC_a_KrC:~+T+D #f <[`q:OaZSؑE 0u/vO"Y Cts>ȑl0HjOpc0i5R M?t֘Bq1nZp3]-pV8Ca!w<]3kgq"kǑwk#ksJr5f\&< A4* 25:j, ܌j!)*@E/nrsTJbpi4R%o@Gꎨx(1$xkCC94gFDƖ^ɨ&أh585uœZ^̮?";L /5ŧNeIM(^I u`tfqW(*c۲%^i<;HJ"R{мoh"Ia }0^4%([-ь?P]c^xS_dQA8" 'A{T"X\GRNIoGN3NjYjuZfAIUEbYz}8/{z,}GZ5ũ{8a4Do*Vj)-Ꞟ>PcQ) 8:wTG'$yп"`g(W`_=5T]̢B5 IttXqE2p>oap. 3dΔOLhrdF7(W%dtTzEb @OkBk0J]'B:C }&99h' K8'48COg [糛Z)):כN?B#Ps7*$ъͳBm3BXc{ԁj~ 7(iވKǙjL燌<*lxCD#W:: ȰANq/E|{mlO4!9xƗH52Zx.Xg`Mi轇/;w#*ٌ.óN_fk{Gk-5[FDS@thI[EoQf|IbZ fh# w?-@=hRbfY"`A#·Otyy}(mt{e4ۋlʈbg&QN9b+tոuŒ 5zE#18FE2h0NAstBk_,'DϙiZM\m(;-lsmu V坙@+Dj\^!wW Y.V _,hɁ|R ;mH/)LFO4bTy7$MfKRDr؍) r8_[+w%E?\^j_\=@T_:!DS-zȨ/ W͡D /Ժʕ]wkt[@ғnՙuTE#0A)/0_KoU 7ZK2T.q ?Mhygr*a\}"wU>];=|("_+ # _E 3}ƉXm&Yv9+eor@t^Q63c^=ل8@#ڵzfm5jcdcOsV=~ikǸC]%Kr¦2Aׄ4-]ޚadC??r'θj#Z!\zၸ)N;-s9/{AΖR9B~cDA"C̳n#:X$ H4>TA33;vc%XBBԠ@Uuj'Alj1=3k)=;z: :u$FlDҌTt(К86-N8|J<\b0I)jSkUO*чGKIpEZM1x"`hЛKjI`5)4A[ap@ 5|߉HS N*E%$;ȫ{yNѣd^8Ul[a=bPl Պ0q:l/>V4'rrɎ;"#I0NAwneNj'yntO/0$Ed u½DXjAxg;WGj~;\sGf^._% ^m]*LxiC%m"QUY^G rHy%zg?\qjͶcyb#֝  UjIm$C$.Wsddʉ: h^| N j-wZx߂%}}ҖX8 Ά"RTvq`Kpo&Fg Pcj6W] eճ-hgOtz+@)ʾO4 hOAX ہsnܼ|5ۥn[.mkKWiwv+#T̵f?OeMxvao X:l=m:Z34uu+X2g >.B{-xI5YUde"-7_C(?`UChVw%_vBc=9 ZE.|pr[<Q%m)Q,^şGC6`ka5jP?uBzGglrqA%jEa)+\Qz_ F3Fa &YNZ ƧzCMM__@5ntUdF4׆*ۦF! 4?[tT߰Ǎ_Q'3SJs7<,8  Wpᮓڬsɍ.Ewky;5o9\Z/ ADhz琧c{K/dOr/)O֯X!9֔ ^u ĠWѮ+;vǬIRʄ6P'O6}`"aH`JZ!G[~sl?aLyCr .S j&r#+pc˽q緌T^Iâ} U_@IH޻iH(ercqQf}1KΫ L}k~41#R rݕ`] Ϡn չyA-cySԍE(m6xfc&K[?#*JO'Yv1&JtB[ZDu.(Nvpz'!nTvE)Q^Um%3Z BàONdb6A8)a/JJ 66f:'rK6AcV=ⶳPnx4e#<;Q,Geb l:(a~1E7[w6~zWN Y+aل 罭Xk)#r nݥUX=l >cK`>}|r:8Q{B5P0tgD QRh 2p`V=ƠU.MSww+"=Ыw9|F~ryq-3tch^!mTrzVƀ4VOԂfޞ"|PgC*]S: ?XKr;D<7JO4m6ݻq]Î0dRFEs/wɃְ?SgߟŦT 6<- S{,Z>sjCM4 +46L5=KF"M7oao_DeۍW H" s8]V}ſ}{䴴R W~}¬xx G-}D3dCmc1B"4 o5ov!!eVߢ>'D  *Ы3,S xM gF@'`,|i-gU%Jy3xBVՆ iWt)9l2ws@HѲqЊ-awdLG/atV&U{VA pb`}%R80mm)fCTP+OI{+1﯑p߃s?fwLeM]ϙkW:&p9m^ƨGlr/ŷ`S(.4fa#2jB6B%Un7I7U?fv"^ (Id`㇁ReBP+5kJeZ ¦:jwM{ lcob>R#`D0GEYu*SuTO[$!T{ 8K^F~%ܱGUM{4r9b`(Uy֘;[JYa0p[M dcYg%Xՠ'ߊMj}fzQlw G 73mԏJ) Or7Nb̒/bg,7ߢICkڱVd?ݏnwYpbLƬrыzPՅP!|}yƨ{og=# vUMGzzv#e݊IXKض(܋ecRP o$p3Fg6I ev$Y>"@6Pbed1boKʥES9I:̱<M_${ '{ ^|tc#emG$Sh9ق@f/R'Fa"WgAnѿ\\}oj7= aE/wtFgnf7* ,6*gЧܾW?' j;SC2ò sOLaBA&g-@c;^)͵ln3@Rbul-^b"N+R M2#fym=IMI ']|.3.lc)@ tCW~1xP\t.\eB}UfꃈyA&S=>Seަ ڳ;Tc ex-]-ZWUTH&ZcԪ;٠pjH 'a8@ͤ~>z,]MxQLev.e L8G8χSΤl%asV,քs.B+{D7"qry\'ZX}b6πE"C~*m{ v 7jDFdK*rYwxBdNmbz*\sx紞݉`g {U:S+AW.{©x9jOIFeԬpD+貾WՃ J1o,;'" mtSYs$S,7o D*SEL_Y@7u@{} bzQsfAҥ-X6hQ lm3<&p{|RC ]s%ht.|: 2 :67V_뚿ḷSzH@4 %7 sI%n:|Y:KKaH?6̟%;~@Z-}NR1G0~klTR@YDN5{ Zl{o #Ss{<*d٫$.o/V px͂X [W71X)n=bت"< ^ On9w=6otk @;]K9D n @l0K{q\B S/~Ә(OvmDž߉ 8rSKy]X/;@;mC *O2.tIaig?(90{ ts< , a{DX휏ycwK`\.NL٘IyҤ*áz8c^\Ht̟N,E>-叔kD+ 5n(_4q-n( k'E!Z _rD/b=-=HA͆2RΣ^x wY?,ͦ|.y0;*);`]*f>t8,@3zJ}t y]`<ʯ^~ʹ W QIűA=*;#"!4bSgAղQQaFtE |7j ӴG!v#uݷLT ڭeޒuc0rs=RV;i N>XtISMPQ *.g 8Ti۬2ayo~`2GoV%^@H缒@v숕# |)[a 4AݾPj-\ayC-wp@:$Z ~xP >/'*c bs;ߥgWQE.L&wyC5|ELp҉zc(4BjisdOH j3.Jo\?]>KQ'w:faSu™b%D~('i+Q A tjTE>3c@͕+-;n#90XV Ef(p e+eF\-7ͳ%QwH)g̓gzs5q`vu L^|jԉB:vD-n (ij3Rwk8D@9 \Nzȶhb˪2iD0yVd2) pÑ%nCb2ޕ3PcW xa-}}z2i+U ۇ)&%#:Nù9m$AF1lI2211̂_Ϡdzh_7*9"ELj! la$a: ӎ?ŃސwDD8R53k"Y#艍HPKlT, HzzS^1Yoyz>%J ŊRYډdŮ r92>QސWqu\wM ,Y(*EF2ԟ%9Y ^ulg9zBVhs:m5_T$7a6 >U5Aյ.IU?1hF|6zZAvTM }:+"Vg$:_jߌP)^Ni'_Uax-` Xkbh L4]6;yq"5EotpΥN?81!zt2k9ZgW=SP60KhL d @ **F:]E[cVSg zS:Dw3z YoJK[ÀW' ;t/aޱ#POp@/1æB{ e9- y٘ S=&5fJ5pP)כ<ZЄL9Ws5 w ?icS뎻T YOew =m3alRoeFܧG9Qo21qkG:jÅ$WCn9{Oĝb!5R})V=W%'ae&R ?sS5ulA7@l콝就~e LGN2wÔZ3Lmԇc۱bp +(Ot Z0?n h9ȓ(1"hCBɔrA4P b8Ʒ۵$&gzgv xe`+T5uez&^:g]P11&πv!<$Ifp{Eۣyo#B~~a _'F9>Qi͐YTA:Ej}':po'[$io*KKB?-_6S??a!^V_Hb[e`$z+xP cR7⣆O+Z9˂DɁrl<)#ICsϺv #}=',{1VэcY,=r6fәA$E^^ nW\MLчAs<7 N#Y0߷2)rt2Wd߰<sw%#r%R8ؚBݘE9?k`imRA,Cw/ȓyHLyiyb ȅIY 'B݋J%Մ ajҧ fXJ CYp乗R3)%d^\q`jBeٍئtl0E\U=+S.彾¤(I:~ ( g*5I$k§,,3d$2*4`#X֫2쎜j\br]c-K1};(vPmi2jke6 sH>bZD8SDhLjgSad9okX$i۽6>fgn-ƻǃX$-#lWH}w ')˫h`rpDHܦT it |.{'O4>DZ,FzΉ? 4۶%an(d"ʒ]n5|+pX R%;vE6sP<̍$ϩ(?XNR~e!h!CeTo*|gۧeQD< +b4Tc5zYD,v6=XH*jCP}Q L7k4ᣇG5}rJc9QhnKS6j = )@|%T&pWLU ^h:j0 َN ҲHyWRXW=%IE痵W,F3`*M#]"SEe9+`oA.0Bˡ}RLst9-e_VEvy)(ʧ@qJ;eZi?Ч5oynM2k BFo bB%` 467.O([LT7JeSgs1BkuxHt4B}V>+P^I3H޾:Wɀ=ajC1R*W-Ge+0Xb )&E<|("Z)B&;ن141q A1ƄtD4iev-knX+!bW.6}^նhBu &3f@,HPh<(a´17nO-يk mh^(4:':&&]X^gڃ9CS,׭ Y*N\CQ&uR4j|,By'}rC\螣\BtA ɊZW&U7ϛh˽W)ic_@1D ܷ͡ pǴߐG,)xK\LbڭwͿ ?;*͟{D8#ry 4ŸKNggPǥC*}ޜ| ~!'%kr>ws})j95c<%ӥ,Hj~VDQ&];6o֞no8Qxv{u 'P\~x٪2YNRNydL腨9Ɣ* y~@Iٔ8:k] aDmY@K ʨMczn6󂓖on~<bl(p cԖGML1a7otq&25P2.©"<]lpJ;Ly=Z-鉩ޙ6igqLgEɷz'/e[,iaq)'vBنEc^[_aֵ؈; S!A>Q+] !Ah}}k0MhkU"G6˘o pè]F˅(k 0/fґ(Z^L?=羒4~'j;ȳ?^c<皹4-`MLbo eȝaWTTZ_hsF/}0Dh}Not_s&D. 7V8OfQ'= ! iX(#ݯYW7g|NϚq<+XzJn\^q WJ;[ 6 Jmm?<H|-VC坬*OhT\/7+E@auK (H U7`NnϑDS@MпkN@L}"~cteހPE.z/Tfnz}`;FbnTܼ{: O?3 &C})aYZKMFߜ3:X̽+!21}41&ո5Ι8ǵ/q3eg/0"0Fh4.إKel3h^Л9Hm9XIX2Z kKt{O]-ns2eW$ߟW⟰R\Qʺu8Ф:BT7WJШ2/jK+Aa|\2,\rݼF*).:ģw$nGQd2[`c  RIz$РLa-R8"F~z!QP&b{, nR}ִ;Y6 tpֲ{V7I**':z:w 5x)/Vs]ԯBɵI.( Idrtel'CIkU}*3~2%)MxᎢ*Y{de/ %NÂf*r̃k#doݑ$`l=ifk c d" +Uy6d+&c3ό+0Bw4 0vN~#f-깹A=_KF\8@?m._<(ܜ;87_uNM0zOWW;QUO¤(jtZ$sEtpGjfHFTYV2 rF>0? Sj 躝>Du@q\eQ dhTmTJq.ӝŽUfd 1|;2Pz7+v>FhJi$qFp'3^a1f#/tZ<LUכF+"mΣU~kŤuȪC;:>7roQMMx.[uAx{,.ǎ^IÌߓJԤW޵׍AOX(s䮖Uvfsg͹hJY@2b뇊n!@J֝s &"7=N+g/BkhXmqK} 10 8- #: $db{{HHBn4MF L!l["uޛC[| 'I|t`4|̹P߫sƥMU;bndÀ@n= vZj&Eb1L` FbkkM[z~ vPu:Qgbp bH 2\s/=ڕr'` QwMcr7;Bfp}_E8Gu"_^1OoQך0*HRǪPr|~ڷdNOI܎ܡ@yo h<&esp{ TPT0vtqL&Ïp{4U W$HN!7blq+FZF/l8Rld&΀v0{9hsB0~cʌ̠ *#\-y*=ӷ,CTTb1H%K̸Ƹ[¨$4k2p 0:FGhWP9G]6Q5.#΢hO:D+k4|Qe h; >dnJHx1Ur`S-%lCOEQ _jEֶ3ICH.eg߃^Kf0BbouG&SR#B] Ʀ"R~VջnF mxozQ~'D܏d,IV b9Q v<:|eO )/q[A\Nz` imzBH@'kŀ^6Ts1:w:^WP{b1L)<W~k=q0)k`])De|>#nլ:g!NRVɋ+/p[A7+I,MT/p!;a:wG7a$|Psx) X2*;4хn|O[gޯb, ɣz/z/WQZp#o;P=e0j=~^n˾KqV ; -TO)=RgMfϬ|y1yq-}&&Bv+.NX+G$|,"zh5H#j<ߝ#uBgނ) :ۖqQ;X ~0\=*e&pK\r"-[uR`7dT}쪒koE+18c`YlR:k[~>i1H)8CY 'Ğ1DՂ%^PXj(`>f][Y_*WkYD*0By$O{ RN9T4Z EA)cZs*eD! 1C;E 6]^4w_bi0t!phq'5aMRJO-cnpGu\GWyemV N$pYeZ:vT6,MHs1ך $0J(F|wFd~0gټ#\JaWo7.ڻz-G̪5A g`wgM6aqÕ0H#65S F8ʊڪ2&!Feԭ*iuy57[*V%^R''d/|'ИAkL@!S3<b0+*2Nq^`#Zӽ%RtE2pӦp?^ j  ͤlHw.o6_Yr=orrNk*qGhD w  θ`V랥rs&JM:nK"mLZ߱EاPTniJBr%7. ;8+\a5a(kYnĆ HpܚZw97l S(]Ȋ޼W\}5=I-z/xwHGCbsU(x|_c ` [ehlWjh!1CF͂4pV*Jf.M 30G NVFc綿j{с|Ou8r7k'46u|PֲI[m 3{}'̦1hI/@*&0وf}l9z}*]L-=.dm@^% AKSGvø/*``or^)b=CfU*F*HE e~c<.&kLjxC1ͧCl rۚt$yKBEO#,$믶i-[{A\``Ϲ.p8jx%xt++SBi&<nXݩIY/̃y6 OX arASutGIh 5xrK5dߧZ[о=ص0f+&3; RQv(`vFZzȒHq&wC,Jow VηXlYV1%;L2]*Slc%Hc΢D59%\V*zie[!6ܚ Ŵ;xѐM';o;@޴;1YU$ RP(fr?x&(.71&$zU2'ϙpP1SV$M/>*ҿ](3e@:kzA#-ȼ1M"$,HR_rTy -D. ePD!]CgztE.=@SߚMzM TS/,teUsg6վ\ y;)ʉMh)Qwx׮YXؐ_-RMD z b;[U8Q;|T/taL =&vNl+_eaTo!؝?Ӓ.өJL:w'q^qcap${u-0{iun('I1h*+dj_l2"Mq+=JI(m~\璵g֔LrK~&zd5@4w;igmNDh]_ XZ3RSK>=!g}YWkլydC?քo$'*™}Ɂs7ˢ 0_-w )dS"kN-w+kx++zwܽ.(L0UV27*'™АS/Kj:~Il$B;)A.7RwZKUr;N\#Tj:G9SN|a*a鞷 O2}MTw b(-BײK#C %id(œP͖;sI U(ai{+p(K%Đ,B m`3Kd1ʫĬ{QS@s}/Ihoҋ ܉П3îC9;"7_ąg,UwfP)U\R0 ?@ṆP 516e]i\d 0)aF(LLg6 هt>!6uR?F?K{  ef5& LBBedKdiP\uW;(+ن:9eT"35KTqK=."Ph1@4α18T(l;93J# ]=3$pwx#Ghz~ 6̟Ō`F+-ٵ něA 5ȭg<,GHnԁ`S7k>ؠ~dxL7V˿42f0 @WRl?JD6]^$U0Q$dzUq9p<6`&ȝe K!`pD!gP30hGD|gsu\Ǫ6.L(6缌*j߃ \p^3hGxA/uWlGI%q͜,ZKv k#ԧM-aUe:Nf:?7'ˌ%`s l_ckn'}}kB/} $0H jFo ]PDd&qyK )#NnJ&{28y4Nj| ~Jܴ:[\ ?\Q$]#|ރRmo#ߘ[UG %h ?֛Yǡ2 ߝ BmvAJ$TtB9lRಐ):TBYv:L5;v #ڕ" Hb|vpF,joNg0ytqC6IۭQm Q^z>RQ@w=d/9/b."CʁcjՌK^Fc#3 ŃIpC0n^i| g8pBlv-w\F̷¼ -I`6fdw[1k؀3xґܩu*<"8z)KJ);wKq/܇\(uƮDY4DchmI%JRVxcY8 JH^>*&dµzFT)x&y0Caj?3 03V_ a^%W0 ~٤$ 2%LnҼ B\I=q-tæ5xi|+J=.C5TzB$lc;ȚQ=pVRlǖot.PG\ƫG#7T X꣼ˈ_9kΊYȡ4鶴[C"jJI@ ;Jc[VM],;sB8Ozn򸦬h_`yvcɡR,{&ټ2ym}5d{zS%02Wf\Qj &ӆtEF,v_G=;|NLRL@qg/dt bYÂut vZp=ucL!E# WiR]ќvzS|3>܏q AzrEV/=D>PI%\5ZswFs%\DM4^=$N%0"|7o!/URQN+q-^"7B}\TJ=g_J0 yVJ#upf9"f=J7v##hj8?pJɶĜ=a֬C}wGKr_z:! 1Tw[ϟ' da´ghq\SɃ @*IDXL vgqi~ׄMFp_ge!1] 38eKN={ @WaA9e RKKGIEaS3ӨKH4g5Q3[s{wQwd\ނ1pB%,[C ZdDk!dzjc} 8z{Mub~'O<^͚k]8c.EciCJi\x^n^󺏫$xsziӳ?ȍ~,*b/H͏%b[[bIS2s{O6kA j;Sp։ [8r>XvņRDh]VHxbAIrǑn@DL$VB<ܹ,-Mc_}ؤ|52lP$ͅ1)3YLءkv?`qlACJ&l'_\M`H;=~`)'-4" 5dvmޜEˁdvC\׈mz,7K&B'Z3CO`4V z:." +`tvOHxXc|_LL?K ]T5ϔ?qe8Uŀϔ SE!_#`7qc^hP /=L8l;:[ޮ7_+#1e$co_6I coQDau@.6-lP-Zz~9T!<@yLҡV>_\r^ K6ƲJ*]Vr Uˏ e0!7ưnAAB4#bbLptB~UiUvC3bF\ O-@Ņ/dh"EGR7! B;$ ͟n}]v`E-.sPy^oTVob5 zTo5/>(?V)Gug^ܬ5SQ{c'݊# Pa%E: 9Jᢕ]k-he/s=7 ^21-BgV^JLwPa[$(g3;,&Wx어zm<{M}iaH.bq"ˢ;@X: /=o w3rAF1 ֗׉Y=`6|v-zn M PTOjZmYyOږRlrk\Wc]SsY±G>1D=OЯx5Ĵ(5Jj{7n>I;ξi]q{V _Cd鎿4ש `Н-s6|)&t7v&x&HO@ЙU. 'eSpĖcJrўR1"ԠRqHmWbk\;kwQpyZ rnCy 5*D\y,%ny.ߍӦp}|eBq̓S4:K> P̞UܔZ0亗bi2/c&NH0>pAUKbV^uE`erC 4{*SH : !>%n+q˕l1 Ul &DTnu9|mQ"OSfJ[O;r%OQ-͓)69r L"V ֤Na2K.$e4دs[h&A_p+ʗ:|`*f5%n}毝_5(MKxgj/z qP&Z֐7올8AWøleǖA GJ:]YW{RL[ 9`MEcԂJ*TH9|~(p+0LR>XK x] D/5ѫrLlVs (ygpZYur*߉>7d`>7B|p}5'V)yq9 "?o0%)mHz^Fn0?6)?BK"iO.J>r!bj> G ̼FCkXHqx`p+bNZ5+rI")r&m$ǼV# .n\N4{,߀oL <bIQ>9_C ":{ LZNp']J-d q!6ZD7ǍV$a~z/Z!>Et7`ithTQQ/[/3ٷ?`Ȗ霑yfdxL38xL㡠-iCG Ny0]E20'!>w:16" ԗmo5ߚ CՅKI P=b:`x_A$%.8V+/|4=d^Voh9|bfLΌ[x5r͵;uB*IMa&AO}v厛!MeTp+%]0z‚W Nd=*1 ]y9yeaF#RgCϛI;ݻȾ.Z 5 ^y4z+oUdXk)׉v/tʛN{4Y^w H 5U\ Z o|:?eߜ);!s|6!+r{2D RJ>Jo?)EDП"rlj_˼ɦ<^6y a}Ie]mh&r3)`#X=c-׭noj/EZo׊;dz~JeJTyR~Hww[0+*{B2Fi_áKBC}1^'LF#h +\CDhDՆnj(ބYD1Aυq oaI؝hnGP<3X́ /?j/6y';@/mqnE(OhUi |2TWC՚`O[Zq3b 2RW"nq`\rك7q3 lŅGL k]h[+{=vjyZDnȏI^~lmόHal "_lo4kRVT)>HWcQG#VTXX/.--ԬkV=2\5I6 gzn>PKrnG79ugKO&J`pgbw+[3E'Ѐ'{S3pwmlpuLT Pw4ufc\8o )U{5bŪTub 678gNENp7z\c)ho>(EɁwYHE"ձe˧#]IYX>Nj7ЁD<>҉eqfl~nZ&ع>o&IO$റҢ| |X;{%y7I-E?,sxƳyx+Wē" h4_^18)wlIyŸ4(E".3:υFB TzW§jtEe&Dr!%̅_?,׃|mw R?zq ȋ͋ҳ <W k P^mT'*JqxGa.;4c`͜ߢR4m!K;"ҁt yb(MVG{{Mw[$V^tG?"v)6p.{.5mv^}zFP"ǵH1 4v4߼nL{k?J<gCnx:,4ȷNziĮDԖS3bC32ADw[ ێ:f!KȠ{<z|USV|9B79O&JuQޗGbkI)ͺ289A[ڕ- etB:HdOW"l>ٕ9yR7l~uƗE[ +c 6Z# !.jO(͟^v+Gb Oԡ`a|< -~D9 Tչ& jdv7{޽u2_eѫUy1x̩GںuyP{8ie))YIeWzZ`5پMjEA`^{ B\?Q_^䋵pUxkQqlԗ; er0s/5HP(9qY.p$O_'ƪwRAX64$g[GƤxɴzt6O#|w==twAl8wu+QUqjoae#)t¨qѵ$'6sG?CrteB\-}rNf /=}GOV^t>غ?{b wNY9dDHE$E6ʸ5[^Ǘw_|CکmSHĐؽ|;TΛƭY Sʝ}%{*ڴe(eSi4⫡},c5J2l wYԽEcUz#FߛXt^R)ٝwO9;Lkp߼Jmz+!6 k 54:nRx$tM-yhhzj$⏳"fiO\9Ʊ~f#TSӴf#G5XKjGu|9l'5,p@؂Gp!&2 w\l,ء7Aaf7۾r?!Re@} gzx+X^Y'>b_Gr9ӑFﳨ+QfofSadzDvRǨ:Se{?Y6kqxN6~anKu&.p46=@` y:8#0⢭O5XcAᜓs.U;|HsџL}< OsWI1g} ˦;߿P=_`V7H#(86R~XaB4KB:\H\|y;wId4f(}jNKܙ=A|22 AN~brOZAnY_uq t'o0g =HG籯U+ʁ6ȝenhH%ۭR!2~zRH7Nbز% {}/{zzͤ7eCf)bso dQt\|ujT $ Ek VdTl N#4t{ ~tο m>%W*ߣI]nf7vHmJnucvc0 KSB73;g,-#(܋/8#lZ@dr+vXfŞEgN ƻa/|)8UI-5,ϟݐ®oR6ɾ}||QwTA,F77KQK_7%)qXޡ"ꩃF$~ykn7>xˇ !* RfȸZg-lJryt8Ko+fܔAAstXU䕙x2~r|IuԏQ .2'//K?.d(EW 7rn2buD4L G Y<2 ḻ ]=vG}!VB|ʙmsnv 7=(` 0@u)s/,J{3ա!M'Vdω'D}a@>pE$| N-jő~9ʭ cΑB@, P HYA20iTU/Qz^ba!nnH [TRWS;x,jDO~k2)9~U#1*d񗆘RD@RvvF_ؔ%v@+;ݬ%>0jFکZH|he=bS%& %xZ/{p@6m~N/ʊԀsS88y*TFgѸl+T`BLԯ<~arGE\Hc#)N+狗.;nڬK^>F+{ӁHY널xkrRIm*> ނ{i6GzS۳:Y`B&8<#?2UmW&Dlzշanz4܋qiCFDp3udb􃟫+/|yz6QCn]M;ڤ_֝6)ric7Z S3d> V[ ƵQA}j#p{1++p1 MYTf9>H ( tpIa+6춂a' G-I 6cڷX!Ml3QGzxNlLﯿC$‹kz~`PRJ`==k!lnyݰj9ҁJsp@XGV=YM@i"{/{?`ҁ^Ql*p=A3cw&sla"!HMYh]eYF=wDb\*)C>{ԺFFXOf%uI}wR&%zR"~E?#R˄DNb1iz/ {By~Xn ي19ڻS>%pLN`h$|)Z x@34}Y;JeNF :uyV'm6,zo7nl1t84Cn?x20_YQ6+EERЄ`fwf2%ZQ="OJDp>fI,N4*1-fY<0#fx5EvʮCr2Pz4̱ ~x hNz >S'dGs1o4._*[;"5GۙvxEn[t[mq趑 ݙzږ"̥ X(3<^?N):ƾFSj ucjs{7 x>g ݢ%*1f,dC,-VX{Z k )5ARhό@Ksu/#\efZ, (v\ ;ثh\F{(+2>o+C48wIeau)TgJq#i3/ * p\ndxeQP.AHhВN{q{MOnnƣHNQZ+Ơet F\U66_4`[) F@a;p$ж1V"|CǍꞣ 6y5p"ҽt'U1i0 4,9p[`0w"kSyTΖF~rVh}h.WzE>:k!S֖MhF h/t +`I(~2)DOSG3T2u3a[Zlg`gQ}Ήt*:m>73!*P_Mm}~###<3#ͧLڹ,, _Ea4~QoKI<`8b$dRͧj𺟫CCGR=;oh#Gp|u% ]<#^!_x1Gc9a*!ABs\c6g$̱qphnfH 9j8"Uy“EaX"cz߅6YOp/'i䘶4gl8k+ڨ>4A_2n)g$#CS!eQ`N^Вgp}(^dѡ0I_ڈm݃ȓ#u[!@.Hdm0S n݋VE CeТ"FGK8*SVdxOeabieq3|fKj%T5*ž/U67'1DD_ ,XF`WwfFP(~ĪPg]̇A򳉎Ƹ}CVM@4&w~_Oh-&0=gVT+*IP7wʠCΎ&\Q"0^ip ;q.4K¨^JQ 瑝 b048d.2Vr{ɖZxR0XHz A 3&_WpY[BmwAG &šEѧOtLu2 }Ҡg6:\KR`8(8;~ފ[,u]߬Leoh6[+ƌ T[\ arwk7I2 \ 紏;t1*Dݯg%rƷ<\W@+KwJեtWY3lW  0diF61bW{@ьEjROb:ƭ,Wb7u|g. ^{Y&ӊ̙Tɍ+/ZiԇK#"773',!WC'޵@jDa/=E1:l C`+W['9TSJoH>T>O$/#D85ļ3rȭB'HSޟ]1wM tN߳Y \,*lۡG]eQ-#?kmQ]}6/u>AnL-JzӨ(S- E3<S Ti8.*;yLvSQQL|oP> & ^-/ـlC-U*ULh 9œ(8/*G3_V+@C8>]D5ͦ%q "N9Ԣ:\`}L($VvBfI*as|ȃ'Q2 Mex:@M$n `Nr{]13n(1QK8R=#WˣQp B4YU|ofyʑY_@q+V)ڿܠ,]/6N!tO[)} 9noNX&>,\-"ݒL#ݘjN k)洅ou9u?!@o8n{E_r4V630~#MV q"-OI`iO~|KQ/Vdv 3LՈfzdz'ԁMV@snվ4o¹W.iS\k$\jXxP~K8{Q_=OX}iFJ]'U!E Ef\+&1 3O!Lm2fET/%0: Շ2"߂^,`ɂaPsf;Ysz_v4"T>ɟ0D4 Xqsc+4rDbt>#2~!C2W1*W\0mA̼~yEu|W]יz#dxoC /+?+iݓCpLʕ𤞳KkFY  5J5tU Rc ;@I>W,04ٯ7E$192NmfKpܔ=D%)򛲹vR:~q5۫ ,Y}Unl?V`!+"cs{kngD:kjꑛV1B{{ v]TȮ2!TЮ5Tw Wa<`=KK7{ u~-U%0^B῱+ ߨbVs'y%u:5Lux~{ [uJT[v.IzUu@e<8u]BktJ𛏇;Gp}|xH;^Bz#6]H<)U<ߓQ~MP7R|-;nf޸j- cc| b=X:g-F7%sإǫKUmЖZe*Eځq..Y?hb۔ՉV g'+"i >UE( 3}s}W=hh"Z OB[plep򬖗P|c5F(zcɶ,Ix~5?r+pƌOxk* N1#,Q?"w kZCb.kSeTNU"vļiJcmD^0n r4cky-V|_8OB x%#QBULJ1q!l#~ #gRC dZaE١&zىF6EzzEAXNV'x(`m8n=9v֥xqnfi?qnv.v;Nt^23beFބ  *%4ҁDrg "oǩ-1}y2mlXMNYqƟfuPbMp_ٖkPu3gk8JfP gezy(Vŝ^\Wc}#xt$Sjl2GO 91=USbz?aew#BSgV9P3ycV3_48kƣM!]BٳF0 y_[PkRfe=R̅~U9D׹8!`7,JhUͱTyYhO. pW\܃ 3A[GD"mH 詃 ;Ρ @}b>ʼnBoa `,HRadYs5= ,Œi 'Og~c4E"{#7Wx΁.yb$ՋkeY٨="Va(L!עi VJŽB)/!Z_d8xg@0lvg{}'7/\4ƹ؝㨇ya:>9uo ?*ף&/m7Yq%9(˭>_B'S,ō;|Yo}^[5Hg`\ݝ8-ᥭX4p9jpFth^߸SI#K^}[=,r%t"iHG*Md4306 Z@BB$PvooD_G~dN(l#d~骹`b,E^>: s\Ԏn]o6`&LG)ibK鰶;;H>w_h34[lL `Oɶg=)W@ſԚDҸkx _8TRCSSBD=5@KAe"$|m䎚Qh!Y&.sޭD2ܲLqӛʡWx8QmAۊKfn7l-;|<څ'uu_u%.7Ėޟ7*G7=ȸ.nvUV^slbG옆|yy}p9֥b AqWjDkQ\c-=]qʾILă25Ҏ,Y_|d7Vz?3(LJIVƜ\Jڢ eyXc %uBDtOȩ&IT؞N*}@SdW;yU7b6)z(>6*OSd8u5Y#QV8ȱQsr3[*Ulv-tUBOCᥰZ8o!JA z>YW}~m+ }A;g[j1-D.NWuA!F?{{O^KZlpdk1埆E녌Yw2Z_FJ!KʌM+K ]!ZGnGN%7Qsy743ۿȏtA&,.*%)ke$0O?RLgm&r~1m07W )ZmऔphgIŤv{Ͱz,u̬x!2CC- fR3w˷Ps[`;텭"WN׾83( Yz&4"MI@<, ЪP{YaW5!^»U<BVECfKY`ƽO2d'f^+asYGi RDЍXǴ;8JCGTA /^!Q*..R=6{֙xJՙ26'ܞױWp'ۥtK2B\90Xb!I,#ӄ@Q%|Rܹ6䎌j[F|xc [0\KoTLHQj& 3_xPvQ.ӜM uu8f:aβo`5[}yo vC'SEi8Og&? 6&$Sh6&wZ8^kb.Anў7 h497lP ښL?l[;%j֯a|3e-: m8<@U 'a/*,d}Ņ_=H;\ĺkT&ƶ |Q*8]hQ(1;CS|5CF 3Y$FoȢ$D)kщ-S'YE-{)RJqz:6FoxC TGD!Fљ',y{o]!Xe5IBI٭; W2G@e YtBEsV/GX@MkpO6~;Bbq6qNMstzZ5y$Ai8ڭ;x:5d-9bxkfڱ`^V\rGb ڹ 펋&C/<'B"U_}HqԅLiәw :IoڞТ4$H*#_>ܨf`ɇFѦRsvW <ǽL = ȊTѠHfb; k"TB P&ߣ~7f°UW? G7A.vHq1? KeX2(`͛ MC;(Ni} ٔu ~g.[w@Dpn7 Gn n^p/t8 :3U\  XRIJu ^HB/"[+8szT7 0-UplWWago(tm]`Y\\;"]P8SfI *@} f(mJ4K 41g("ԍF>/n߇|(Í6dn( |pnYY?OW9螞RqO VǝqL(r.PEc(س@>sЗ sFINCw#JS `KfWs\svL#GL537"V9&qWp!2D ޹YgzziG"(/*!U !0:rYЧGatEE Qp}6`T& TOXp e߁Zm>YNPc\Ԡ DGdJ$(xXs8lXy;.?;u*1$ajZq ź'q'Is_3i5'C:)5&Z[j~z,rp Gh+ ntd\Vs8!As'5}{K(V_[F= Y{>.} p ]b ӥR"=a!% C(QIrq_CoVb q?گƬL;`r#`yBgoχrq}6.ΎPSMQ8cC-yWdMONZCFS:o.n'~*(Ӎڼ{ D__À`,q1jW6@R`!*ߏ-\63&X cs{Mݱ;Is-S5b|3+ΌA 6MtU'49[ 꺒$ Ѿ+P[_Ta};-k]B3.$ 9oPP2 :Cy-^!vL|l<_U`DBRf<]-0Gy[Pe~~䚔4#}TdwʅD y1b- XtLܓA7wI v?&zFu~.xuC25$F["VU~7ۃfxZ5CNmr!S؁NU?nگ mZMaz݅g[1=zצ-Dy)l¡T9+^+Blq'Um l];< QRFơ 3A3Şqz-|3<Ek/Qtsrf ܭց(Ĩy|-;ĎGf&w=9DZ̚s:>3 @c![^ƥ`Pm`T'wʞ.*:· )vAiyle-,3Ctԗo==W}71%Jde-#;B^/|Ku ݏxέly{:7ƺو(X$4`S֐vqS{5B]"Eh BR5K3F;H2T9A-J|{փ+ehlg4ÿme>(S0W3oCdg~V3MUTJ)%x-tBWRuӸ\iyi[vӽҮ8J>s&SVi-2)w|o-J4V}t"rMWf!M0xC*br1x{0nYn{c_|8͜]C418`Dջyh~[jBm-ښ&~US' ;iUᖗT夫ch:)jRXM`=JwhCbMǜ&㨉#3?Qi5ûNPLg[j=c<cvɜA D hxKDM.GF(Xo 9 D6xBΑT Ke⢃DMP7&J;nmʈ$,(%n8lHZDr}5RtJU%+H w,Lz;t$-GƠCяᅬÉd YA9vBTskj2$l*p\Yvb*T7CгZR3HUnh\=~ <[-C29Y t8CV)yl? \/whNG_3b!>!$ЋB =$E$0Ņ> 4 {o`yϜ~q TV Di#>EuBv Ɠ3l#{i@u%d_"ԑjdrZ_vS5b/,WŸziO}_M'?% o0c՗R(@J 35$4Sz%ɭ$ 蓍g.\Tib%k.9밁Ofulۍtofs$9{U1f.}vRL2rTk3dM2<8E!j2h͈6_{ tn/ʒ:*ܴ`~4|:1/4}W7Y?-C )-{]p@W FҨUQnƬSdq"ڤ2EyC"e{*M!/4ӇL;>̾c;V,]\Ib;$vŠ w2u=8b0DA367񷕋\bUAHixF3J歡(j%@D T5M@̵FP%N+$Kї.طURlLۻ`ֆox%fP_? {stpELad.4}Z9r Z=z Ndv&jG\E~z bFg31+*-:9UՅy;1ؿ@LJ#;oZEJH hhN b!t״b]-Тq.fR ^QYq۹ID3f."T)Lct- {Ac>ă#N ki狀rv RNa )q[UjCUP>|^*CBSb4Pc:> V;D8XhŜ,67C6)uZ4s)w'Y_^mdZUM/4 `;V VUaE;ܪI68$Qb`?T+UJ_vB GMn )JnXw+Lj>CxGpUTZDT) ͎e aXP ##=YWƸ;Gz`ա36^h:Yd:`8xWFpcM+Gl~E *P#h4&J1q(7/'=n2Iɔ,윥0v'{c~3N"K^ cIgoBm|z=ɏ*9[E ,1ZMD* T @he#)Dq>+Y݄ܛot1fL- ovѮ6bX豫;zr'4>I{;!& ƍ`qqc@'~&S9LAfY5(E(мC6}{8^k(gwapc>1xbQеmc,ՀRn+3{:\/*2Ao-<+BC .QBy_09SC+.[F&-Fh=@ܼEa62/ pdPzب*ΈljY~ƶ#IaoB7h9Q\JF3<)=gG^\:rt;~;n&#}WT2$M߶!mK ?ڡP/_̋QDxǔx+Lo[X܍zHlp{TST'``B}-/\XzZ9؛Xu_L$sƔ頸z{ze[!ߝي1k< 0]m 'PꓭMbqQa< 1iz $2fVD[;i {dGj粯aWKRԶJCMM Z䞖Pz] ? FT3iUf?P% wz׍>i s]v6d2-6,c5x}qUY)^M.l8CQ2 >7fK|+6z LptbwĈ©6`cՕb{{)鹩ި M~{3 Iͬ?.4L*!WZ"ABmF^'j"ࠛJM _2P7G( 99Z%AD˨pJwDtz0j@D.k0q^I 5(s]2~l-g|^抰AֶN0cV.9{?NC|"3M47 7/Pٞx7 r\gqī!Յ6?zpLVYH f޺Wevљtd!–!LH|X^q~Lw{q}-Z(G2'ًDfH)j@b_ь|R^ |:N αOJ#,F_B2/ b]-q V yb_ckξ-J&0&ӻhޯ|uqUYog;գHdx`*ot gxm(FmPZEkjO\2RBD `O2{t7*Ij5dj䨁ύ>+so ҕB)0SoF ¶+nڭ%F-# A2Gb:H<+Hxd(!$or~^*m0iV3CLV5B/w&FǴJy/v.e$) iH5d~a\\  (h1b+?}X}McC&[|ވG_tfV$&}NK(۬pVg؝aVLEsƲYD% ]z8ejLހv6 ej󶒒0ܦЋfS7λfTv?Vpwtnd[ -> 5[d6*L&}SWI5xCC^gk*/?x_F!y疁m 4`-%F|*bZ+EOE ~$<8TY] HI6^|[kCWb]ftYOKQ:)z۬K[(S,zd_HuF[]4%LEG2[}%c9jR jZĹ=&x0ח>+jA_?=ua"p)ND&1N(Pq@-Uvo0\SY>`R( n\Vp/2΄[NꜱP"Ö WH$j]5jDnFdv"گRm7*_~#S܇3"\P3bq }2٤ T̂ (O]P.5hVP\cLQܫńd 2a"}y1:Ůu0A<٩$7Zs~v sE"y u݀Q^ |a]DN2n>2F1GzB0G_ǯ;=ak*PȐ]+9o+DfrUHg4`0?J$SJ*{H:$k)L(O۰z1I_ 8,7Bۻ=)Jdl"_ Ka>5垻<`F2:])LB1"> nPM';rB,7*WEuz #2E/[s?(Jxhbb!az)gLRa[ "H)-$˾8w7;6:0k̛k3tj ۭng˷wo,Ǘ8jSZ?(Ӳ csKT?c2TcFykwV) ސ<~g!ʣ~sMѕWwmfRz R,@84Og 9\->z"̦^|\mLAS7Hv9DIcV3`{"&ġ-KOE%D =2ZA8)zFGJ'h .~Cy2-Tc{>z}QW#8n*#HdevJj`% AGp YZ*h֠L>C5d0~=~֭iacuT~u0ZcK5E"x@P%)Kf bϹ7̿ ^q Ȁ 2t>CBڦF^b) .`I{X=k8p|#T"o /͟B ,gh\&w"L$"9[^KĖ*: &Ț-22;VJ %CM.>>#)1VVo" {T?̓*%c[o]1r8r]K@7]v(|^K3ZV>!Gꑦ&Ξҳ=Y!YbfmnJְX䒷gx:(ޘK+U)87څhJ(K9#Rpᰴ삲sdȣgkI5M@C#l+/ N{!Cm,UWQ!%-(Suao?Rn褈^ce#>lRA/Xp9?L !#jp'@]RL|sfl0'4yũza`*[+H4.$&:2* MH6i˟Eµa}M!+ëRXMȦl9qW%RP\֝/6(5n; `(xL%Y"%Z;z<ŀ7Rpk*@OyY,]1¸* 'IMb9XCS&9 4~;JZQM~Zj%dPb5p/7ME7<ٟ0c}`9x9CoۣX*רE1/hpT4_[Q$F'ar*{2IzK`VK~/חj=K>&Q J@Eڔ$xM>\wڛ>y$[T@yo]9%>R5e2 *oa$^X/.%}zHG!W~84~C/\zԽP,(.Gf4#?L^d;M١I?vPc'ʿjXE KW6 &>ĻsqfiF^18Jus˟(`k |T~gE3*uC$3bLs-R *Fd`gGlFY6Kzd@N GbI)/ J/A]`umTBFU}4۽ǂwTk~ֽ42bE:3q;?(V/Z=:*{u߬X10R(TeVU'O$uy"uCBY[쪾0`W"$="bt0[g~˄lЭE-ñӌiPqP…r`Z.n^ twoSe 玬ӯC\B6 R/ ϙaKUIvׇeYg2Vw^4>cywZ X׊zvfސOYfOȵuA[QP,X5}#0+%q3>-b.$먔'_>D#MW8gk^ܲTz%g7޿#]%tI&wq*I `> ebLe-HxNQS}Rvтxi!}8ӈ1UaW(ćU׶̷}:<+mLVzbe!b&Jw4G3lsK"% v-/S6l@qu<W7Էyw||ƄHY"?B4ؒ~UWց&p"%+OiBoք}bI P '*0z/{ṉM&S? V{& G_]6:XNq<|fBzQz$Vޝ^+x= W ߅jg0\ S |mR'/C/^6^v{sn."+ _]@Fr1cxVP/~?='52Vd(x@v6q:qFy/M>ĽC]cāOI\9 ' xG%fi)ev8ng \Yn4ܐırͣ@QZ/iOm&?T?׉~5nBMΕJsZa;33f7"=Ml>F0ZR_ vR3跥ck۲0אB%G!!1T mtD4a5wy x ]|@/v+#?=lGEG18'lD f.$ =x#٫8IQ^|Cւb l b_|RǓ}D}!g\ **/|[zd91޿ iP\H聛n{{ѹL$;1ϱ%-&1\efj| ]S:sL.cb$]]ˆVSm=VHrÁj|Ҙ5}m?$͠袑jpaRzB Y+6J հW6tzC`ب Yk~2>6dx`OƬ/Uat]d, j[)'?3SUnŋC@ͅP]VRQm0Qَdn.*~n &[Jt+8TNƋ؋Ob\?_Biv p|(/=2.KRU l}tP9'nsxNÚ0O|`У;dOD$N 7^X|`ϴ4ܶ[}(}/[S\#@n^d"(0)iCգ"ʭ,&v}S[֟Ӎy/3o) b2@-Q Tmފ#*Ѳ h`*1 '2hgîR=D&|نd%Ȍ$Lf6doFlnn]-ohr2mӲG"[Y >Ux Ʒtߴ삛,b,\K(ue [@) &KD//q].e<:Kfed 5gR뮬.VmL |ablډn(RIw7 IIeM|tĥ>n<O&BY94 $Jp/I ņȫ2GwgH?v6L"S@Ő_̤c~'LZ;?qqB,|>_)%Z0d~Η7.T"Ps¥jcxۇe0}C!#qw37ZKF`@?h ^tK(6 >wrF ~-"DtYNrJ")9|tG1nF*C1m3ם P`[,g-qa$;Ւ^gHn&a͋Q[;Й!aYqĵ4}GI4xL"&hn^F}HY4Rӿ2jz!='لg^.^tz_v{LB=]m9zkТEfƀCFPs(dsamYPŅ]&̞\Hb\вߐ!_ehRāA%2|i;`A5hN{|M; 'ڭۑ\jt+-AD{,N.YAVl"$./>xٛS\'" $j<4/ :J4TwMgoL-9io`z؍}Ui٤ʻU  uz,,ζKBig#:6z> |˺vb@0?;g3']G_A&>4Nf$"6`D~|,Q\"˒^,ӡx݅Hh{ןeҋ' =r bbhnhr$Z`ΔώɅ;S qY/8儢ɷ 󖂇/00w946|Ti6#RQfbޖ4~R$[6l lI&,Y=nzSgHJ>#H!{ 8C2 Y_>wr>^:btoGj2\$ tȸ<+==o{5HTrT1OغZCpl> տ4ޔi]xN44y fу%CF ͒1 F㵍H.?߁_ZQB lkZhUO1XcԜ~?+8}D1.NPꃘ?v}wyɉbb?hׅa48R8R od龈"yZRll>-1"FC4ȅRAbl $$I9oh Ћ-! e\*v Ox)A B$tnz 'F](X5.ȋ~5 ABY7e0;*2`FJZm-5h,HKZ("h^Og2_WcVt6gRh *l|Tm̴5cS4 c_9?~G giPJYI*Z;~C.s {,t aaFPR=X<rZ KNp2;ZX߉AcG<;vd$kӐmZ* p 0 )dvSS`W[͖6p)ɪ" \\WW[+ @bNYvPÈ}PT7_d`>M3ޗܴE<':jC-ةss:Ӊ_c"3# =qLb kj BkGxAjLdQ3*|>~TY3 d^=|+Hנ:KsʴWvd8qk 8$':ә4.e=ˠ U:j1L;spOJ#C mP9[6#n$֚r(t>j7CH/v 4弫ـ){a@ ҉5$ :Yx2Sm`>쐾wC;y<@.9$) ֆDH${>p .S[3Yx)!@XѾ jM\9w$" ӝl%)`?ht4 cݵ 8OFe-CJ)©ݪ0xǙUM4oW0 n_B+螨Ѐ g~ueߋT:kWE_SNQUgtYүG>\ʆژ1a"@S:T5Ǝkck(sZqw~Y3 ^`g8ySbĥ=L!'fN-wl^` 6ztEI]&[_x `Jܛ81#k[͝7Im[)(4<kU0oea*'e[B\׉-ކgW;f\MX(4xF,dSO?D E'3}Jy?fe R!4"ukȜE%X4a.j $gZG2F5X%BxX:Ej8$J pN^SS~R( d?;9Ya|ֆ([wO~T{poly0XD L,4Dt4uQ{jSrob@FڦnI) ʥ-¢Qmn@֏R\R6B쉅_:953 u-)~g~-cZ+̎ }=WSjD2&x[yqc9h G-V Q!s"iԽ"f5XKJXֈn B2 ޕxrДv<'8(Cxs}HddO3R \-8Oi]~Ddm q*b:W5/~c5NMŽ\޴4m'{ӆzP҆,e$Nft9ZESBz3$09%=XN_uNfRbmŒw?E]K)ƬUDz/T!g|L!__Ur?M㓖ȄLX0}(o=_d--;_EMi"H^e}N,<l}! NCKvty, xRR݀z9#ߛ v1[2փv|— a{RNKJx;涍ɶ?=`)FTCGwmWyFE預,Bw{$dzEZ+3/{{X;XupU1u y8$9N&h$m"a)v{l.  ,6w. B(mΎزԉvQV p~;'7+o ) ;q(2y0|u~l7hlFwՎERAĭRI4N >~ ڹڜVx:@Ѡ}\Ri H{Q5ב c}?.^rVUqH`FKLLO~dJ רz%W3EABD (k+^ogڪ>`t*|ca4LhٺO6)rKXئ̾X>AB JL+ \,=Һ7H**#{oh D"w]uK-vN?`yW[ͻD\' L1ٻ?K\[JrЛp;a~f DI-|FέeJk;p%8/c2^SbRs%3 rSǎ-@\/rjs]տ2 u[]؈bhﵿ'->C`l-aտzbl_˻q˖wG#,6<- ԫF:d)`,u2M qzxR3RhC2Lv/[Ng.G| aKx`/4Kd^w፲TZV  u^ cc"tf\ }}DO4D4C+D!(JU.#{ |ҩ<2CڿΥPtmnEX}ygҶ}]|$N)1MboK"aKPJbju|uѐk`|CVU33)s RMԭ;9Yl3"L4xZ^{@ӪT MPvl1-` Wg>UN;Z4,1P#qζk|y _@[ࣺjB^$9';A+|+ٙ?(X! ;;)~orBjVo<2]3]$ZLY+E̤e:-;\ǜ2FDHfC+폓2*fT% E9I`ܣ ])nE'U2w(V: g}wHa&^pwt;3?wK}̮ @:BogԯqbA ʢ h8c;)W,0r,u6ue'!7 cEݙ1 r$Ygz4CKps y,kɬ{; u Vs!JKRE/B&X2PO愊[:3 jA25NC;6{ !a?8oDESeYP @vJ_7X }"55GWda{mjFv2 #.dbSmNJrWAd'i5}^~sbJf=_ֻmg?jQ‘*bh:#$ x\_|ĺZcQ~Nd,c YW1$>J7}h>c*6_W,y|c0CbXHi!gĔHt?&):R(z ~8-~ILAE\arQ!(s57}7N&dO:Inh:nBE7WPs)ᱵi']eڊBh?F㰣f7bm ` vJ&[,=F`}1G.o/n)&(_#L=ؚk[2R1R6GTupm9ϋGU-<|TR;Ǝ|$ ї)wڞfMCY- S$?NIdbX_%-ɺFupj"OY2K x$2P$Ñm Emy`9&m8lJLC5ed')D8)GoQF'q]G Q?by$߶*6Q>0~tte9g̪\sDVoR)P8״^ '!"-;`+.~M9 !\sv;м!/sX0)e} m:#ᚢ͠4")6pؽ5F, OYXq=d6¦нp7c0Hs4L E bh.up9aj ~j[a=ּZ RJVG8S}CXd WqVrߵhuvDvi,4/ 9TRZ[]z AŪ:kآě0i8ƒI{_Y0ʊ EOo?"0GK ;t*a˺l z4yԣnT9@hFD4mHW'qm*Nr}\$Zf7h$SyDں%ŎQ;ZT6P&gQ'uҏM7~5|sJdibBPkX-ap%a._ـd(Y:u:W)7QW. SPvAcXMtQU@6],XjOI\"7 #TqQ%F/Ͼ%X?/JX:ʑ1uS3⼴PMxZj-ꥹbUɴ@%qOyVǏy'u!"|šb6'BԼ&|)_@ kucKnJ2߷0)IsgMj!AAbuRR':S/W%?!G2 (?ffd|T-,LfGW} Um L {̿e>gf50]3E̵pQwkm3_*cLgi0 ݜN)RG65h$KNZ +=18EG](#͜8-6gX{,%Ie*_qPi Ov%ϵ2Cœ%(hD={sWVgj:ȬWG>'0L)֡~k/#ڍcOpۖT|:?mbkסP:YSJ@"D!/ Hծ˃nVp$l- 獏QS6D3uᲾLGf`QC_+YGjmhjz#bqIHhr'neF_ TCKwhS\ xmeh5 7)kc$)|gyyƪJF'&E{LB59yoc4U'Mr<ϣ', YGSd-[T2o&7"K=rEN&uXvMm kG2r~ߦ$=+=0sz?&n,@<mDIyu9TۖW[pi3AΎy4`ѳ]eWkFnJC#&G~aYl :֑ևѪH 3]y*UpMC꼙}i%5 ,逾iћ4 92"s"Gvad"s*XI3<{1>+ `pE* ב7i1M Dʽ S&XM:R3C5kd$"N3=LK#%qUQّd~6~tx[e`XK G{EcR L<^*[j[ǐfSA7$C@Rٸw~~+u_V^\?J:QM0&ÂEd #+ryax'5.2BWlNޱ$ j 6Xg&i]@B^یb*oL_ \I`sG$>31> Nvi9uF(evl 9|oζI(yq\96kfdE1&xє?-AqU Udki*Dg"w'c֥c6{ P,P3xm\9\֝?f܊K=! bD4g!`]2ڧ):pJ̈́pТ-vɸ+~96)db*)f`, 2(0!02`bw O .yӈG4:C &JV,ܤolQH?u.=hy6ET9Uq37zd?ȍ_>Q( T􈪦aBF~9C6%칒dBC?aw:u m *s~t{ۋlUNAXD] tJ+ulM<ﲎK (9e?7DӨ?"CxtV3?btZodA*aN//?WSQ "+7˹P(ӓz4o3\KнoKn'PTEQ~,!<C487?n77B:PJN 3K^r*8J<y?yhԉYPh;`g &0+ 9S\XwbثiGnG!SJՏ͂ۛK:Ef^BDؚ}Tgf+_ÝFP``QG Y ]K5^?A 2OlXt84^/ݐPn .kJ9#ZW[P`F:r՛U Eiz^<(h,d`@7m4 耪P)X0{ YLo 4dɻ&| >-i"sJaC\B|‰}Z,  vĀR]~>Oo;P\#V)(gJ CuY/R[~ @{kE^I,9S{qzGx6"Py/H;!Wu:cV- +ѹc)_7HpLoh.$F讪@[S^#K%,aHw-LF6 YWscHYsi~ ;4g}VmMsVUW0*՘Emfq! eGQL4;,!RWBNzb}:+:Hؓ"F$d kV/hY(Nr~rSQGnCRUAr!G`jާRސK`ֈ*+Ȏ%ftHo^[~o* |5xNEQXɾ  +ۻId BA>FwoR5g g;x*>W|up67" A16?)!dSjGQ |e\I:i#AxL1)q%hI&6&ƷFT3#Ia} XA cgz06P,WuE^2P6q6sjoRԹ=}VW4m63qCJϜ V}^}Xq[SQsiZ, !Ջ 0YVѷ1+ U;3 keCC!@Om( SM02>Aث9?-#tpھ!ļ:ם&X'?-s9윁H(zQ M/3^Q}2Lkb=)xrh1g,  DK4b|穓PƐ *ej1e#lk2W_@SmC3 Pr'l+Ax69FoqO q^FUTa^2J ʡ TP ɶ*mخO:[6˺uш5bI::7asOZ'[a1g Xv$i-N/ SdVJ'eO1ݮCT7_`UO=A$T̠I}YJ;Vw={m]>'%fQy^ոDls_,Cddf1tU>\P? (G.ԟWrHJ-}o5P% Z ~h}Y oLF^e%FrVpL 墕̎J qZpjQb{MeT@3|ˍ>\.YyE-Ә}h S{ P%4|MFk$<4vߏoU-C.XiLǦyPcܑaI"R̿i!zq+> -~I1Wo.A2m|\{8ȗD`?^^gD I|!WگΠ}]lbM֟| K!;#QGL*YStTKo8Ղ9=EŨ ēҼ[0ڑ!z ~6"}#!$'r l坄Bq;AsX* t±Xl^U,X\gPcm61]򬪙yFҲ w8\֪1N`,,oH`"Pi7or //'B:o  XhO3(U5ɪΙ3um0Nk[b~|Zq"d, ?fY%|2n]@z1tf duUF쉲7,2-N8pbNށcT6 |O53Q!iCcf1Vf3qIGeNL2,lYƗ:"7*QKDFi;*ꨍK9kxoԗ~I7M7A9T yr1*Ͻ&HH1"%GdB ^Uv}mS JzLe٢Æ_ 9QpDAYV&˪)Pg l-Zty@iSv%2BwWY ųqfmRxYtqAnd\.^`b|ma!?א)7;͟\hoJʫ'..oEc8F2N>FH3?&ɼhIG5|5e?Q`v-~j2sE,Tn[OS#Ru,r;l[T,@C%zޅ;VGlh4+I"/njed4hl!U:IzUeۈvУ9YQzq:F٥ K[<6_4Fg6V8Q2.F'tݕ {4*:v@-6=ِM~+EQ)"9B5Ar]@H2[R<bt6s#Huɬ]a|7o͓)nAWvdқC>aҪHJ_[Jxt|펷gU2HٝY\f?GJShLPrZ/AFxVX1rO2׀׮ Ux[ Xʠϊx莁׌: V^mY~?gdl77_T R>B\xB?ܐ\ ><ɝmxQMD-_f^؍_[j4I>svJ)phV/%̣H㳡Z507x"LLImyw%UqF(>Ljt dO9p}h+Ϡ4 )xf7vah8$Ͳ Gߠ+V]wADb< &Egx+ItI*.9us4)Cb>0)%؉1 å"gnIi(@@b̏eV=/izK@:G#䭺HK]+5_ KmWK*MX:#? QȎ!8̈ؤް, -λx W^J!cS|{6YNv)m!Nv^[Fm`|1{ .ꢬ:Ym&ΈPtks ~I+sZX1uκR`J1Zފ7! 苴KnP?O#P0(жPpOrm+XOf%Bo. yw݆L% KgF,Q$[NAB`c-=2QFgt3Ӱaވ /lc^)(n)SHVd@F=Y?!IlK&Ȃf ۫37Ds[n?N+4. ,xV:DŠP3lP>ml P.6hԛs+*w[3zp7X/!%h剺-t7,켭͊ɜ)Pmqrr0VDV+qMĹ;m}11M830-N{juYM,)gϺF`oY ")ݶ YZ