python3-bcc-0.19.0-1.1 >  A `f p9|LT~bQDbRE0+5gxTND:ԜCi@gPcqH{XZ'xU7 A鴧Tr2m MX/ܞ}(X o/߽:;ƒ!6#LfUcKugCStKZ}2fQMVf.}[nP' ܲF5W]1f`#}pDh}+9]d3V]5R,$+䯼x墱Gy|VEL?W djAe1bd5de063823c4e3bb89b81d22e97dd026b8cece4685b0b7e7cedf64bcd24cf77873e441ea039fe676fe889b075ce2ae1202455p`f p9|䂗gCΐha^֕bvIA y:s9wlѨW8UY1HMg\fx<8_郘'yz?3LjY\c 2ċ9̵}8qnX$벚CAO,UGFD0 w&7YoRPXTAAfp/r2Ib `QN1}O~$žFcڵ mug<Ϭg)T4G靘|yL>p>?d  J  +1<   h A \ =   8 X x ( 68 @?9 <?:?FGHxIXY\]|^bc3defluv w`xy(zCpython3-bcc0.19.01.1Python3 bindings for the BPF Compiler CollectionPython 3.x bindings for the BPF Compiler Collection.`f cabernetSUSE Linux Enterprise 15SUSE LLC Apache-2.0https://www.suse.com/Development/Languages/Pythonhttps://github.com/iovisor/bcclinuxppc64leXO1'"L\2 Q3eU%QD#A큤A큤`f h`f i`a@`f i`f h`f h`f i`f i`f i`f i`f i`f i`f i`f i`f i`a@`a@`a@`a@`a@`a@`a@`a@`a@`a@45e335e5357e6950a745c4b326528dca374de8d9535135454adb6bd018931434aec8cc509abbb26c4f0b3c70c213baa97d9347164beff15de02616f0567da8d7bde1158121e6fdd5a7e5f4bfc42d7a5f5d1eaf465587e4c74d6ed9dca7b1c8ae80ed7f6c1fefb56e94a7ed04d4abba74d668f1cec0d99f0203340df0822017e16c3895353810c6da232219df38bed362c050f533e95c1838ca2a408d7d26dbff59c07ec405421f6d05bd4bdc29873f279606b9b890ff4d1a68bb618eb908129c7cf1fda009a4284363428a6c5812df036ecbeb13315f1c9d8edc9de7b6d5fa2aa593c6500012b495f8309086a11e3e3c5babd5c2d7023fe2bfe45e36098b678df1284a8bb10d9706effc5df3150afc81f90f0525bfa6690c70045fb90da4262766fc72fe4174ade42390935ddf5a1802be2209dd985cb5f37ed14dac4de967dcd8da95734664bf38a51567a8824d3699edfa9d7a6c0dd67175f984b8b5e35cbf8bf018b71dc9dba0fda08b307f6839525834cd99e6c13209f97c60a884d53095a96d7fd24b39716d575e4a55fdce3961caa0bea87ed8fd6deeafbee2f0e24ba4219c3462fff9c3a54d696ba705516ef41bb37dea3641631049e7531aaf0449db16333c465c0edaeab15fcf3c0d9086bff1c2021c54b14ad95eb67a7660f8696801ee42c3313dbc057400f17180c6b10dc4e83b41d37e8540dc0ddfc5f5287abb55f3cc5071b3ab9ee6315bd8dcfea1fe97477e2262698ec9e85b220a5be47328d0412a324abe69ab469890a96667855b2774977e412c44958f3de53841bb057456ed97d2a7ae645787ccae497e3d53494b5d81ad7ec8c2ea63a91a93be5db9473b55c3ccb51e0c0bf141c198dc8172e11b456d7f5923494df65114a90086d9b757ef10a7c7a8f82cb34397321e2373211c42f3a22a993e8cc6f24c16f91f60dd593c9d5bebf18be10ecf971430314c95f00f89e9a1e6756c9d56394815cbcc82d28a2cbf58a8ed92d620fe75877696e1689453a24ae20f342416a3985db12c03rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootbcc-0.19.0-1.1.src.rpmpython3-bccpython3-bcc(ppc-64) @    kernelkernel-devellibbcc0python(abi)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)4.1.04.1.00.19.03.63.0.4-14.6.0-14.0-15.2-14.14.1`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*!@glin@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- 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 librarycabernet 1617299845 0.19.0-1.10.19.0-1.1bccbcc-0.19.0-py3.6.egg-info__init__.py__pycache____init__.cpython-36.pyccontainers.cpython-36.pycdisassembler.cpython-36.pyclibbcc.cpython-36.pycperf.cpython-36.pycsyscall.cpython-36.pyctable.cpython-36.pyctcp.cpython-36.pycusdt.cpython-36.pycutils.cpython-36.pycversion.cpython-36.pyccontainers.pydisassembler.pylibbcc.pyperf.pysyscall.pytable.pytcp.pyusdt.pyutils.pyversion.py/usr/lib/python3.6/site-packages//usr/lib/python3.6/site-packages/bcc//usr/lib/python3.6/site-packages/bcc/__pycache__/-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:SLE-15-SP3:GA/standard/eac4487179bdd2cb3c646451d7ce8905-bcccpioxz5ppc64le-suse-linuxdirectoryASCII textPython script, ASCII text executablepython 3.6 byte-compiled RRRRRRRRRRRRRRRRRRRRRRiTc;3wo>JGutf-8b97820c0c7f19cd5ba6fda27139aa1d243ab166ddd8b23edd93f19234ca54d12? 7zXZ !t/ ] crt:bLL j=8%/w,G@wtOӲ+v#\ЬQ ! yvc :xrF [p:$Mi~U*!{CG]%0BAym87m5R0z˙5/*(%[PU!;JOI#7cygFJ]J ,j7j'A [;tCKC17` AӴK,~ @9l'%UMG1 NB{6Y j =Q(IDLMYRb*lGޗ҃;pf6nZH 'Z`z4G0l]7|T*r]ezSz'۽>JÀ2B/Ī$8k%ƶspv(D+$rs#i;FEd aBq?# M[MgZS~^ZaWG1ކJqbZ"ΰXYe šY?4ďy'<=ya1yˢy't"8t Ge`3懔P4>Y8O'QvѠ L}/,/bz-"29l&c= Y`pW< `AIB܄)z\{/ȉt#TǏv.۵ֶ?X ;hM^v}V_p"p/eycO8mp3: 3BHk($a4>ԪqS6qhFxu]#9׏8hppkj4;\jI&wsőx&{l}FBPb+ŵnYִ>Y ure7בi9: M̘w"t _D~-p (IMo%>ªϏoho[yaH[Ik2HJ"Y1%ǰr~FQ|l.$],gUm jdW^EϛXA-) HICk~mjJm{ے֘&rcԻ${=O%FI<|[=]q_]+|ͳ45\l{솞Xɱw 9YXՈH2lq>lɝ 2Y:|.a(Ys? *6(l(l[ f(apC$T\D-tfT>3 I6.PjCPyਦEuAYԖ~oIj,rڬb5FXZǽjlKV?#TD`W]HPR$|w&Edm"T mzVJW䭠<QpPN{ug<srή (-s*[1$̑ MLa"gk@Sud_-bgѢЅwҤ] Ȼ~f׍K4"29d%Sc&?bZi[l5R9;{lr*C ٬MkH&j&*# ! Dmi@xSj߯y]J{@N?Wy^)Y K&q4G0IM">جI!#π^0TJ:lfI %@-Ecp79\#wYnHjJRb;s=ntdy9mcBܓI6*̶ɷ<\M|;mu!(v٥G?n50(Uv/%j㠠;9-*8JHhtzuqd. HbZqyM -PRDEѤhq6^BaT9dh+;:Rqlaѣ-E?@dGZ;elH՘]ܘV"~ǣXK șNHEMvâkWm'&sK#7S^Zzte :ݞJD·`'$j^ci% hpfhFӌqw1KM9j2!C#S!AT ~[XN\SOx7c8Plt=o +%X=pI!7-CXL4rwC+v9vt=:tj.v/qmTQGB隸 |^G5N$ɂ=>V%^HoVC%;j̡, r?>N[f.~Ů0#ɅinSMىb3m:ձL8u3CiPl<~02)[`OQE.9vp3'nZ髶٤EǭF*犬#Ls?2uV?5U9ND4Hi]#@PWQ{Ip7(P|d^G+4JnrC|zzC8Ǚliaxf9ut\G ޕ~FأvU3|JmWͲplz#4(nn_@5k5M` S/;(z_K~&d4/v̇5MDH°BfƉ+祮 z#EY$?^2{"ц1M)b܎S7Q~%vTԚ%/WP5[Iߵ3t/jcTuH?K{nH1UFpce |r^acO+zoyvzezV1h`f#+^t"g#>Lz.6ϭ]?0FR~|w 7G6bHo& a޶WRvЇp:Fqؠ/u\>" N ; UTgO$h(e|SE(3 ,lYxTeg4X}X\}N#̵8t~?I-"wmHv/_ݘΗ,ư՞u_ay%Gh%F'LW~iBXF`jcgczv4Ho]8 r&iBrx9v8}'3ǵ)^NqW@;6zpt4ü)xJڻߗ&:kn|z]Q- {pNT0ޖw桀AX9Q*=ܤ6l29q#VfsVa\7ToA^ȑ59]?X;^bBDY\awMxHҳL9ل|<2S_tܻ 5$i[&rG#3c̓htyx~0- qT&|,!]Z챉s%5[5zLງZ?]u/̶_:5*<sfsgzT3qU c͗-x Fڬ'd$C6ao0OzO9T#f:5,L]*s1W5=`OaxVv@k:8|A,`\2'd7CS5}/. ̌@}>&U,5uNA \\OK/WN3MyJ[{`SgZOdz#UfBL`ҹ(ƈ A %vmS >^S|G%'Ǥ3#3Ta@z,[nZOn$B!UcTV\NkĀtb?j:Ȧet{_{x51,xk7D×N_lBa݈ !?>1LBt1!5QOM'+ J8K/==)a01YNE0*4(- {2_V×) σX= ށ2B$vct NZBV@(FQ`aE{~ʳL;a qKNJ7GH]AGg1!|* _t#]魛"M5yɎN6G{p+gÌT UH#gcJ>6N.c$C"SC~i쓶t=fk=$Nr[uc% I0]S ewǩT5( 5C Lf) Qc!4,R`?}q%[۹]c]y199H*8,L! '3,\(r7t艜#2?PлjiqOvgռ:oCt_M\upՎ%w~^'Rw{OG7P4S(Pyl{.9K U_pOGjɴ9bU_+(T(~"mTX ѡ{G|¼H[7Ѿ9 yjA= ;X=LLzBncP'h6wMx%37h'M úNW.:Kgx(R{~].$,\.=utKԜR"rS厷R?HuלTAax`M,,Oh|seg_l>.LFY vh En{X!s*v s5es2ߵ|%0j#ǜJMr8jE:iweu׍%(:IaT+n3"h2?z a(g8.}xМ O<2|jN%0(,pEv.NZՀ'RL}]9?߷43`G2! "Kl3Z8.MV(c^Em$:-]_$wado&eƟsO{:@Ng m ["$ÊԒgv{bXB&QW0VKs[J @oDmELF_F8\1rܐڲ7$vZDPŮa~]^'pq8ߓ8PxY8&0|ԎF]6͕ zHkB8PK:5$ٓ~Q=!!WM"hii]TtΌ^' J3C&y2c#4-_е~kHYAߵO@IZIᕜaF)>n< @x ȳ=Abv %BE׺|gX_q0}q#bZ ,)#j`To{|aD-[Wæd8J_j R cM:/k:e.IWA_&B&-$ai$Ñ*۟6#QىfZc{b|P-Z9B<=&#@ꅖ,wvoLe.䱍A&{YCg,'Jʝ`^H'vAZb,mX&N [HȐRNfm?^i~IpkM`YhIzjl>zCte0>T=ko)$]|£ )dJ+ ލ-/OUOښ Uzh +Lᙇ 6X)A=8Bs4-wz.{v]sCqZ\YtHNV%ba+mE~w< D'3Hu|Ċ=0+D,X?u;pX]jA$y>"tܮWg#!V>OȬߜ֡OtdBrcG? کL}.l+}+4Eaw`8[y2 1%-R$*J_ > #-'WQLx^$-CY"^z&FYi=Md ;Xk8\%q\ Ys0X<,"QTqMotKu'@W x?C-*fgp`- yj$ J:}鐂e΅2-IPkƚBi w^ӰZ$ixk6&L?qic*h׃!vLG&JbZTadg6>ht|n8V$Ϭ~@ U3W 氳@eLѶ;пv@RI-EJ=o+Av+=i? 67L[buo ؽnw`ŏD< 5Hz zv_xzwJY*է C0qWiyڮ i1Z%({ԧ 6`%uZ]C=C/B>JqtfU`er|[RnRaW2`eH[lLouZxK^}]5bvdk0]h b4OQjx(ࡾjb`{# mu{>&#!xû߭쏃pQ:AYqZ[s[xoKfDc њKHRhNQ}cwHH/D.2݂ 4Xii)Z$39T9(SE#$Dy}h+TyՊEeX}Hk5jH$5uPϱvJhfQ7\ aH s1l pǓz1r>r^4̗ha4MB#.,<|qJ fDU?tt)wAJFLeX/OΓ4>,2jy ;i`uJfy R^$NjC:UdM]Ȟ/덪=%:ު~4Y̻=(?_vXeh{,4׌x~45֩8'u2DO 8׷"oŻ`Âm LynB Ym|myj4 J9^(W.õ/} |8ne&<00`7dvt Ek $s㤄A =50'G|5׮|y7z@hbOq<5Yxbn%h@-ep6mY" ko%Ys:wZ`e.ظT_Q.HauT #Y~_C1OŖRR*5PVY0tr29HnnѼXEQf^^?FgbnvrH8zlꎦIWk{dAE (tO*)5 H"ĨsJۃ2e-iW TEwu kx׋b90I vsp%)93BwRGDaB5"ʓ^vtZnoQXi6sz솄? *ϕ'%ֳϪD` GۯA a:dٶdykOI^*,hbhMSğaFj;9o֟0}h]oI J|dF*[.6 GDD2edc `FjNWVGu(#+ZV #7p~D=}iSDU[uD Uo~ xė|DuLw/jd3W6EE&-q 4)/ΜgºjcM ޹nb:KAh5!0܉c 8-ssfCEZKI^2ͮABg z +ta[)l]4_N5hXJ"*F{$D#=8.pORgw||`>Cԫ?i1a}Y<(tM@U\aYÝ#eB0i _j!ܛozw@'z:ȮYXYK@;hvK} MICM%)+XN0Pl McF~`gL_dBTddju(H")&ҭq5jyk;%;GK e_KP1A2 o~^)8nv]@Cb}I]wgR* "߸”:A ƊID;5qq <鲡(K~M껸3ۣs7q7IO/9n撐:"R&a[?kfInN1<薨]GY5RSjM륒5`6DI!XѢp]_r_{:DՓqgl*&HC/>oCxEV -0(-Sk(lOl%+:ߚeeG$4iXu 6W%J2i|jt9ȘoT:~.bF0Vݰ\qˮ&ƦGPc`>`u½_].zTE @MKPk,*@!$m( ABX~PkwG5&9#vAigFѠݵ#@q_ CH>AxAMWv4SD%r!gL#F¬$l{D2'͆A\NUˈ9n`WA6Jsx~͙͇M =&RcاHQh:~C"I"Q[é8+DžQc "z)|wJ1ۯׂȫpG7QWȀBd1^~tR[Ig,\Kl]NUIm6M&Vc6 V)Gl&ǹx}3R`JTG[cNUA"[C]=6KlB Q6.x . ̍r`E۪]`WmMJSF>u@ym}cq!5ϸǟ@, U[́qq-{>Rr 0RVMmj }rYMU@63 '-yI["7/ڨvaJoVGҁe QXלN'z_@a:mvvoUhЌtšGQYN,Z?O#gxѭ-m}xH_3oTb1UH$z::ďvyj =1pG.{y1y}tj] I]kh͋`(u?á#+"{<Φ,;d@'ta{.;Yq\ 2|9mxZŐ^)g ̳Twb͗H&5o 9KH-Dz"Hǁ " 0wr<B+ AW^$lKLԸ#"sHe?+ה; F~)[+q-34yeVKc*;Hn:cS˖08 ^AU+;>"a0ZU㄄]i~g"m n8BPX1\B/puNbĊ]GmvbL`q Q6%b$ 1HdDGKu y8V㕵(Ia^DG!&YdDX+?kC?ɯBfc+6Jrr}U!#L^{qݍȹNB^`9<h|Dmy4V- 19_@).qPZuU9آdE8}Lh Q-}Je?Zdy  TQ5?x947`ʀaD|)[)"tG3%f&%t8$W4{-4bנR rJ:BraBEw?RpN\΁Kպg-f #`aoڐ__YWH@خxRVN؆alvx.ʋK1؎qs6ɮʏaIPhp~wX)IkGh~D3;l;,Z{bj}!ViSsc]wڵ` VC5sF'Gbw].-]St@)ǚyl<$jtlv롒cMې X1l? hC;I"WjP 튬`>!F<~ } ֚pNw3U@R.{+!)rqCN>(@ mQ uұȕ'\\\ȓYdxX(d:=JI6h>Æ}MQU[={jnG$fZO0$t@ 00s>VL`V jX#DgN̕9VC#pU=7ӾKWǨl3&9:.wJ3nOi?pawlc塀T5At%&<0zLM?~]5Z.1vulsj4k$Wm#(ċ5u W/qnoEs lu}ߛH0-4AWKY&ogc` 4)D^.ũ#Z 5\*&MαGģ (X/'It(oAm,xH.eg9l:8C:V.ӳE)(T6Y[!W>8 t'b%Fq寸Ao 8twCdhvfvB_q>)[趑Ho bf<0+Ɏ绁,!;ƌ\e;`΄1Xe藚n/(K3˳z}y;WxtP6zaK=bl8֖|/lj"h}=q_q7= 6O w8f?2yVoSWj0@daT<{D^o)ltwr2GQZ1l5w0`ltYr;%t쐝"X[bqw\e 6J[Lk/ n䴶.#*be"9u4J͜&Ԋ_cA TܑmS.yUgk\p;}x;EK'ᕺf-]5L/hV4fx,zNh?s[֛h|;9 }%jXnUs,C}J0ĭIp!Eq7H&Ь8l~/v ^x0:@KI"սb[#$F=9?`O LAgf LJx儁 #-)&]ʅUԑjӧ8 qB`bOM:U?4wDg ;+Zaʅ? r2L.o1 򾅌O]MF4<* fg7y)lMHh> IMIS! Gwq9a~f(0FVSn0K@N ^Q4z[y])bYjr^]Fo!U UPL~03NJ%amC]r^"D^qr$-AO"q+X.N36< NyECh'E~l.M:Qs 1$geZjw$GTRfE/Pĝ3I@k0R}?>Lis h۳l~`E[o+%S& j/j$;},itbjЇ/ez1mr4:~Q5gWNoq \}:{xv"(|yj=~h;ϮƏQ0=Ͻr+{ʴtyPRU3V?>H-Mc;tʯ a|[8 0Xg6*}7 إp`[*|8B{jkjJPm˘/=$#`i640]/6:_|puQ"_N~ؠ5Yu)!#*0[B˘zf OU]dkA:IY%]?I1.TT奔0kD.)?F+mVs:߹8o_W@\FJr*a7ه-o2lr/ȠE }z7}4X0$:ʾ[J?#EbʐTa˚` Q`,I̓1qe`g:7{q9,JffÚ_>'oҨ&Zof|2w DK=Z*h&H٬HLȚk|9d@)5pp^L0OTaH];"ƺ ]FAgn^Nˣp EMc ^'D| )F%e0h1f03,? {U焏:`"4@+.Ώn4CKz*4eĀ:甥vlnsh.E °ϙ;V$@M1xck >!#a]yknqW{XfMfB-53fe]cz + s?ؿ5k8FMZJ.o65!xV^ܣ\OCAީHԼ?#1& m)emIJЇji`e>1(P:_X+C^j\W¢(-llʭk&I# Q_YB\vR~$7W V`]  FuJ& ˀ\ؘЃE- :v؅0Nm|- SyםfĶa:0?L%O*dPf: oB*.0=9U\bnlhz/;5."3N[D =zsJ% HbBpb 72$H)nC8++<$K'CWlX E]N/GZTC~%}=fcϔS䂍KN(?]:B2}$WM-N]A2ӱH&O~dlgY\N㠌82̃1tg{D1u  $sаٷI8ɒFܖf4UE\\4׈o2 Vtj`{d,G1`Ö+ϭ ^AUDx=){hɛBstqpk h!JwV` MFntji-j $Fks?d,N[j G^ 4Ó)BbZlӰvYټmCvy! !fyWNخergǑ[Kf{pΥ;@KdM;8W|ȘkՉLp]ktKjKpǫdEѿapJH[8Hxwzr=Tv?x> bq\bOL(Yݪl$U"? |Qܙkʸ`a(Q[\[!*݊XIp(%s3~8"jbHჾ$a]L3hP |Q[p㹇.p*?ՠc\ɜF|c|ȯڂ"M]ip7Iz{9_a|H~5u aǶ=U0}Ҍ$~Tv jw\jW^_;ŁX ikVӅsf #k]};FLoWv1jD7;_??= [!ut{ TvcNzuYjya}meI4E-du'Xv)Ov&̸n^<=oGDn-̵m^*F3R]^`d{u$䒷ipV*Q:ZlivۅZQ] %>;HIMFwy[禳4$IrYFC{E*;TW_$ShzMK(n~!I\Rָ;4̪ 6>7j]v?FŬ-މ7.RƳB=-i(mxl+EW2pN͜~ʳͺwtVhR-5`I#f_ܼ߭ńa`Y'ҩ0mW%,~3|&؆X>22B8/-)qX冬s+T}G lB@n)E']6Np 8(Pݏŗ!ؓMF\VLhF>^( 3i?YߝKii_:C Zz ժV_ A ߵͼrY+ /:nu?WURGiJNF,`d<4c,g65q :ozYλȐ< H!uJCS(9$J#$v纛p`.@?xX$Lӽ%[[]q7]RiQtR_qHPLSШyr<a-R K.]&v\Z%jo_Ǵ:[D 錹5Wca-wGyOځ~,})r73ZHh( N -s$ °,di7yLX*a"$Q=cTƧT2&_?@guLbqE9XhXN-6,z܆3v҈OY^񡄖 *gn/|,Il*fKa"]Ϻ$LJܒ7gMf\)8}E߿ĨSyr[P^Lo Ցu˰ fNl~0."%Ƨ]5ͷ9N̪}E{z~y- A|L8p8hh6b2V N `=%JA#te Xuom_MlMQאba +d yq Lq촌8V7<kcG>_$}c_N;?)SD1 0晫6\>p9=t6 x^PI/ҀvEՋHY|%ZEՉ tGɍ6_;Jɐ ~#},;92 mO9]2X즲q90eҁiwjML#Z]NX-@r0:kUكzvQ POM"rX|Liܴe%U0:%X!#xYe%IvEzd#QKĄM_WKS iY 7)/WZ= ɹ-6H޳5p昆#\xC@!8d(!:gpl뿂!9$}|?^+ B  ޕ^s\z i.ߨbˬ p]aHp>;qa(DAzYjuKzjG@À;_ڽQg\/υiiAdibM55ɳ`(a`ƢM1rChKN*N*E:zl*x* R!݅W&l`0]$xWk.i>LR|T`$Ѻ >u[!oJ=M3(/] aGV68=iθ1w]iaqxU ?~uF8 /}~@|hnK7o/p| ;_o ل@cGwVa'v> IQ=r<05NP|n"fmdVWxy#1UDZdBlmCѤԇ[u~ voKP*x1͞*aTS^w.W P=A30ՈXŸ&C[*훧Xvv鞧qDm66[/#О{OC\cP:YsP2HZ26Ƥ!eG_[ =m(.8, O>5:e 6-+s`tTy1HS7.d)b/z|:hoJ9HLSmB]+,mh>%YnYOCZ5ހ\):gf>5EZn1ky&o뭆B:gTZQSwh& _MxN;@Dv "2#H9zkʼZRz Mu ӔUygMj<#x?-mf"H=!Bs›nkkwȟ4(Ap)dт|Agn+uZ ĺ![ j8#! rD|QpӴ%fO  x%8({*$Y[eܟ +7c2 }&GVwn}GׂYƘhNYP]UA֡ z!c7߹s}AHwRkVqdHw;ImR2TȅIM>u즖r ]Px}L]ނGT>PҌ>wjp0 8AIЂ ,hK %p7RÒݗ̆']ޅ$zT0p-:ޏqe%3f&,J\}(I #=1*mc ˼X @&E -\IA!]'ϿMTk1PR~##0ɣ J.4wemPݬhHn3Bmc8eiR'%H~@:8,tiOz4g9ۢR< u]al9 /z4/>O;klzkBN[.z#T6V{RV+q~7,]"} Q[r& KH~g5 ;DraozB,v?j( M\U4>^럐yo׻nu>160#f+2"nI7uO^"xkk#F%OozzҖDžu x)DMʌz`['8c=Fr vVTaѽ\IjRCOn04=lOn h(P\MBҪ?' 5K3T^,ꝺ\ R!SӮ[OWDps d 8+>q'iDg24 clxϾUtMXUv6pnao=Tqfʨ?DE?rP_Lm\aAvbwMɬA]E&-΂uaAJn䈗+RxlkQ'o0x /jҢojDM"<~xK<),l/'r#@qw&LހY>` 垔ps1NԒ1ld++~mBSD/jk3yCp)wMP"iD{:U: Zanp K%{P_ /_Yrȉ%mf7as'7duM9+=J!BN'\,Z^Y-|{H81?fT݃a{L+HcW=8->c2<ŷUŀZ捣Ӟ\g86#e$1mJQ7>&L]ho 0>R{ b=ZcwF@'I6K˕Q:i,!ђnmy%pQ2h-VyƿԱ10lӃۊNc>+B]>̹}^q5jtyv9?$ufF/DgeēQM;nE]]TYZQq+W[U rWbX˞jD&RJG_8d$[o 䞖NSlx`IbNLM%Dw}a밲|En>o@2|(|Dr`?[ ]>jrIceLDj>IT6µ0Kq-WCXlyŊwM{0s߰VvGT` |OP^Иc /^@^Chlt ~F㺼?5V[՟kSb\ BEιN;a UzOvK8 *IbsV٠s,o = m$ Iml?W䑡a@˜*B^J}&]d1z?*ZܺCOȘ,1[ǻ~w)(jş޲* x<uu47sBfWu81 7& N$}dٖdb Z-EWɂ7_5y*N A *H 9d!&D+n)"LQUn [R|TVH͸Z0`䋟I c0ZCIs?,] 6p@չܚ?N$i F 2oz.dΜp-˚QP-Ai.j7cq뭉G!NZQCmttqc,e\cLڑHUyLY!G;1-!?CBAJ31ca"4@ea,Enx+Oer̴VKc t;*E״1b}]!d@&F*Ozt2+޵2 W<&#Doe;/ǻmIp O>0s{q?=۰Xb 1a߅k T+>@GčB=Nθ5<ʵbKplB: N8B u^UjHje7*ڜ. 2aGrBT\ z!Vhi^1ʝ:$nxrN gq.R;-8&)>u7k1I^ߙ/ 9a7!M ^b?n]^sIM~DxCm2x.f'ZCE#?#K5gi(ڔz!ݐfY+85fb,A]o߀H>ʳu7iunǭBj/QIx{jR2n`NW]x# 8{^5"m/)0h }ݼvKO@)Sey1I+GaமH`|M&0&@Cd`:BHlQ9L-E )-86~$wĚ6k (`@Iypz0d:}0oJtsw[˞#x {THuciY,p[@ `abҔĭ;9Bj/.0OQˑ՘ *.n)ߛ)͜2#l$ C_MdI5BLlUl|s*9Y:T|Tl4Ru=d{ ,lӶ %#TgV-Q[_w kLs_lPY x.}qS`Ly%֔xAvpf%1U`eA#ܠb" jĎ^Y ַ!YŐFA@>w +q!2ܧsn3`:X-yy-}H43[. N&B?8Ic|ŶRJzR[&Rɰ7.\DG^420B!SX?/:چ_\\$ >*[9W%Twt97:*2Kbbm79p ee?Ld/E#씔I"d/K8$l\byYPO$lC{j7Bo[VWoІnJqT;wySm\bŘriA"h j t<& Ϊh>1-i¾{>QI kBtAtIJ[5l|t!o58D\;mu(g"ȕkZ'2 MݻXl^Ju6_  Yai&0w==6?%w9Z! {`O\C8tH ^*訳.M|%rhq%VRg uN*>S %2HW:pmDձhq0zHN5|* Ҧ|K"{ 7H "nQ&(P*y.2y]ƾ6Zj|Ϩ"mm3 EZ<n,5)?2,~0tNJ~./1S'O[ϪQy)B gU=//aj{xδ|btW ˍ4FL=TuwJ+ON(>@ ҢBn}si~b8=[$u ( Avb_)ÚaIs?a;,w=GQVUi)06aYhXxG+W~@] Ob<. 0(mr q)Sy @D/]!痑#-/Q(esc["mvϗJ!*q{0,xNy[&L-(#:xYTKF-v*}ì/I&.%_ҲEPՑ w^ME6I9'b}0[_b?s[l<}=4ANɴX=HX*,T Ipn3"6?OwъUf6}5cVWP,{(4pӾ$,@!o>X:EG8āz\KJi>qj-ʉ * /"u߻J'rN "~/CGRx7VYJjfjS›gv/]ѫ!BCF9=AHpHEHUAT |KI(16d}X.O*+®G"@D䝽Q1>Bf1hI~)Н[ c@19Te*DM] '{Z=ĎK)̜7`/nPA( l lZHi ?/Sda\gl,*p.}mu7?y o_ 3=tqX St6!"û!1VuU'?S.f=:l9(Unl>lc{.um d6j)Rzޏ–NC:qjb2bG7>blϬeJ&⡺J~=ȕ2VX1ԯ1hK[|idVp"ьH0oxv(,&Ǜv?BlZ-p*fɽjeS2A0TFry| ].1S:m lu{[CW )^Un1a*1LX5XNOr}W7bEDrCn@x]sae@x&/:DOcZ+-& ;*=}˷ $nʊQda̋b㒱YywU?>B$iӪijgvenSo1:>`1TC x0?<t&Dcb 1sIRu>)瓰[~490naQ0\mvzpB+}m)~;T[܉,ō,JQN P(%T Μ) n$C>?dJd}3%oV[,_}(֐+ġcY=J)3lnǯk,GnշjE5v"3ʜ)TkE/R(G xuW++}b]R!܌(1\*s夗r ;WrT  eC3lp85Ajbc?HbrGs#QGEK 8O1yYFYqj=t#mj\`]sM)c`M׺Ӫ, lˇDS.QAMOaoXõ0R%WuĮh]Ny[nO0x!U}: y 5AO^܎ KSHL}m'5k8e5KлKx&LDt3t.E6S3.0ٯ{27 Us"ÞH<23Ay搞0MhD\_y׊єJYKeMv}A0 *xiGzUgi?ݼqV&uLh&GvXrC9^#k_Kz4@'OêWhA}c#Q|:Z?M;wp,P2VO GN)o Gp(]3?iS ":ҲJgu-z}UFDBC!3N+ۻMm@G>uCaFEզNKf`=D=52'cRN0>sV1+O Zuø$$֎C}Px6 aP릶4(H.mpt?;QMQuõgOeZ< o8ktRCQ;;D ·lna Wf|kJ*)_9P/'7I"} Hh4Q\,I 'Jcz ^/J5@n#8urjE\&oG$G,hR& Z6pj -}Yd2Iܚq-6ZMsb<8\JCzb|YQw5* .7uL5m' {4O?-~OQ g0*NQ@ 钾1WFJC/ʋ#2_FjL9gnG*S(Yg+fs݋]lo=NKbS  BЎ?n=5"4]~3ܨQ!b/ l_|*]A^u3+_Y4lvFQ\u5]J;΅p_de{܋r:q" sHxRɪvD@N[Mb$k|tz"hַ3)T{MCS`[](Q{eLaPOTʒ `X^XcuҿIvw'v#^B"CP(ٚ\?CFVyK'՟x@c-d\6&~!ȃxi=8'roνݫD7L8_aFK W'#îpS5p"_*U *$nfimtq@FtCc4lAR=oD  TkEJ*N62,O"%u}(u8(%X%* *ӰtqFۯNӅj>od1$;{QݘU(CY$o?+)݈,3QH Y483JˊT+˓TJ;#~՟dQOܦKx I\sCqy<9}P)Szn$U8\"7v5yKoYka&sV"dጓKO:k9qbt2Of>ҵTg*Q:Ly7]jMiiw!j0<45ڱX6Q&:N5@?'~6Sg:xWy6q_4Q= kGi8Seu^-PS OváUX+_F̬@sܜM|-Kjo'$/^gL9e\e 9ro8\6C@w{dK\' 3Xw/b%QL=/CX' t2AHUqPp49-[\P!yDzfttgAnp]FX=lL;PA ѱKu?0`a!b`jdEdxZ#Uo砬LH׸*FTIuշ73W ԩ%3vBF'2lzagS0=69l4~q '.a8'yp,a3l\KA2m>sWw;crRQ e= 7ZLIda@xcGle ̀=ŭI AĄ&L}Ro]kec|LUɟX>8@م1\V?HAl% 6,~3zs 3A’y4eO丅zg/g`c[iWYy弘TNٿ˫ EG7k&F.P#dk<>j 漁@ |g9n1Mhu>Li{W~&Y|K; A1RZ:HH AB+hlD%=ft0F۵K'*w=oU((:9Ȏ+un?1 \z9$T{RdS%4m)ˡЎ lsHTͫq-Y pp ǟͧ%ջ '<0\EŌ(B* Sy۬?3c +@qbzi3<4 fZ_%;J - 5'#nN4{?M1n{EL$]Gp\"&P>P?":IRW;Tj\w4\0D_P,+x "gdY۶I@P 6iT qi5A7XYajb`-it 05*{2m?׊?{ Bd$+_7P2P^Ra{ah5%l)VhM.&*0bz./*1nJ\gp iyOo}/Q)\~?O݅d RM.P*| x=$T"ǰӌb` cF=5B? FEŷnjx&tzv>>ؕڈiemή n%!}-ݰהE9T*\TĄ ~) zuؒp|q 3|e~b1?Y^#n]n*|3ln[= jW͉|N IJxcYg"&}M.h2,lsCSHL=4DO,V'Y|A#6d#MM~Ufò y'V*_״y_ ^Z \N!mCrPa/05„}օ# T<6 ɻ9[Og4#3H-;?>Jv쏖j:A)} sEP6P5bRa yL&`Xs7l`m^ȠC^ˢctFL9*ǩLa_ŀ剱zLq'+R¯"4 L~m:dV: # 9eWwja)+ ݳ{0h~agLA1M֕"o+vhFi_^7;4^H^ B>Ӝ!r)NHRLK8dB(9K:վu@$;.]:c_h"hK';sjhۙY(2h#%W;⧎ht6Ѯ5Q2I?wZ@S۰i͈E6qҋ輺{Ű!-)9)}eB/IE80R^2M3G?FRz3N?rz6i8leZ,++`<.u"Îq SeמK-wC̀:mH_ӟ`IF;ycSYl"«jy()r1Y޶s憐>+gcFsck̅?1h(^;F8 YCl^"Z 4UDuϙ<Ě#3yi,,B.6;j(nA7鬇X0S:TPr79uξ?Ku"H!YH̻mbg#qSثYBA7=Xd5JQ)J;{[ۨi+ɞ1@Tk-! s8vPA8'!tkLҶ@WDjn<3jb?CZt v3/?qh9ڨWOFebms9㨚gWkAw#rn59Ϭb)uo;Q 'eC5+p6v毜u9aE}OT;8R:fl`Gf\sw9l{О& @C~z 3OZҝ<``S<6uؽy.U(C)wXq0Ab/_y49&~/%}8ڞ H&M-I/^ix κ6wj'""l@wO,tcXMєL-CHƋz8gqF+_U &>sBnT쬃㹪qU?cҋ%i~Tmt̩}#@Mi7såK!=ɌIa{!.I#{񵼔nX=ncȺ装HMNCLSAľM.hDc.?py < ^ Uk]PNa^[\lme8+ޔ) EKs3-s'GV`ݤR q vo54i5lL]?mHxMzY*˘G^+ 1qҟG΄1]dp`i5`e5Yd}Аz/6rp˒qz9T%z9?粅(g R+o42\&m[/Њjw`;9:Y5 ej.3zܚfsvׯD]K<Ԍ,j5d7Ґ *e05ö&AuLK?/rt? ,/P h x"b F&5~ۃD$ІG<F]<4oUc4z>#Xn;%ZE[6d]#J߀Pׁ1 (  RqޡvmxpN ?,an7 ߶;wPS8LA*!*Gl']6$T;'GL?j 6ȋfog'vn[r5߽Cq%>2ѿm9s alae.94Kю܉?E8K^t L7HTt~Ѝ~;V֒|O)a# GȃSsZ,4G ]c_o]tڼ@ωUh1k":8YڧZp k㳲m'yDI{0:کp\92T`LB' ^ Z-+2/#NQanUsip2JjdPDO>ѝ^]B~_4𸢷#_w$,2y2pk ƃ$bB+d`A]zh}ԝ>pD巧4I>|)wyr͂Rm%^sB` GUkl̮U'L5ۍqŃk_]D|;!5}Ӵ_G48Dm׹]6fp~\Pi};"\5ǂb-ҠI-0V.9t?.ruo \\4~v1(:-iOPt[,tiV$|1$7mĭAv9)q(@%rZyx(~t[o; Qbɴ/˞R"`gV; ReEꮳōq `v2o[!RBVpQPbZUK+pѬkw Ɯլ:1YZ>(9Gl+K^o*VԪhS4*YCi >`j|KQ-x{`)) "Zw;Qp=i_uEFxr fQ!E#Q^sld %*Yج%!>!+Fc,f\a?8E]6@0pkdwd3OV QҌjG WCQ=FQDYsB"y2ѵ{܎^K GWexBЙOOY{|:e!1'ULΧҡ cgOԖԽG)(Yv3a'9h?ƞl\"i/6)d0ބD%$!]:zGftΎ_{.\dXmxSj/bJu`m$yR"8,UGuYHѷF,EP~~5Tsm8d\R[.ӽbZ3BX%  AQV(2NÏCq?< 59n iG,D AhG :gtOZГ[ILQm5}Ll[Γj` G nΠ\`ٹKvxNMQNB :}R!KW7(X>k}u;bbMG#hu¶ 3͹. ED_ܺs9Aǿ4B!:6+[Q-UP&'$mfvFeP= R31jwIs~".O)3}׌y5JgF Z$bF7{OkfxdKm'%V8-cj>Rq8)G=DfG[3äI]w P"&5hW:Oޡ|-p;6 XB]ZaaXF3 &٥]m'rjw^BW -R6b5u%z:qiZ2(Ḙu' a=r[]f=Hz1pVUbI Ei%X PXķ6: 9 $ю&fgWQYו mfZAF;YSo1a6@ nKCqf=Bn(H^*نʀyNS/9+nlXFgݘSkjhNlV=)OWx>X,> ;_ޭqyl9(#S{r$[+PkI]C@@F/S>9T,5;B15FÕ|~8 ۑ1D}U0u;vĔ~Y1~%,#M"nAAqaB΀M=s2+o5 Չ<~L[?sk 'g_Փ,_2MCF{rFȷA%x}<<4hQ:M\9ІMzߪ*2{Fos#ϔնG{8ym\i8Q  ō7R;a&FѾ U.A跷 y_I,)`b`QY8J !:o=z?k1Q/ƀBHҖITd^;ŕ VuY'^8@f : T2^0 qxG FsY`8 f.broR4 F:6!a?YPIw~` Qɂ[<¨lZIc<,#lOc T_^p x*OH gdGL%-UUt8/ql}(nL$-TPh7' i ouY҆Ǡ%3w!Foww`[m˰3ωǴ+gSxMlA{7ew]AgђVDaEd A i旕Ņj-^wEf2(p š+U'( eˉvٻkXci{)g#X:K-=bu{’g?\ks¸C\>Hﯚ:jaN=<ʉէI,tt +RR0.o FRjYQ}]zh"O7j':f'53fS x]BO8шkp\o/J ) Nqw+[ލ2*]?+,F؈'~-S)ds eTwoǍoo< Y F(I,քu6 L0:B),-KQ2c}UtP_A~ uxr ["s5/6"zb~G݂t#[)%큥4-ƍuE*[HFvZۅQy4\&908xTYu sJ"e BU2~7Т0!C $TDq^FѨZv9Eeol{0jT0OT( JЙD(צ''nTqVcp*ڵH_hu"c=gd_;<Ϙ'f!;J{ݢ!9];扤pWC'5 lo] fyM9@3)8LM' 󀄴 iR)HpV3<Fh跭j4|774׬x(ugP~}5P] kyG=kگj86њ4K5ѣl1Bu{D[.nƆt_5Z83ۙgi1Ih1AS,סC f,bX;G9h]5Pup7WX4&sזLm\mm` nׂkZ̹,v#Hss'7-Zr 3X1nCN?$?M ~ٔH|7_pq~gg-k *፩T[|z1&JY5a;מ~Wh߼Ls/X(%J;P/`4RyNP q'M]Aۄh@ ҈ yHQxaG1@q K>x 23TH:(C6`,3wXk~ʃA o40}kq k;"j{ߝCJZr{'E7W`s9qII &^y^}׹A| t+믋Inۙ>[O&@T+{hV\DDIj2ȼbs%ju"eegD>B:< zB s8cJJ_t{\ΗL{_ `We'y!ogը0̴&;[OIt 0dF͋Z6愺tfyUk-W'E rY1'N'sA wj3qH\e_P#I.U&ifLVsrOؖH#ޟ\5eyF#轏*n>'n\j{!6g |_ y*r#-h*ᛉ [&ב⢄ y86D%#Ku{.Q,:R2أ~ }Cm6<kМ1>O*!fqC0BIȮXYGu: 7: N5@Ͱz%pX*U$Y{Wi~a^=Rbק 9puB/>3APV-'Hů <8Y}ǟM(m$`UηC.%h>s4^1#圊?禠gʦihcpfaLD'^[eG+cS WT8a?0T3t]Z.{suiy">_^Pn;[.ٛwmJddpY}w&lz}:wu=02N /~s_#~#㕍P$tgl|Ք@!< HV(X~Fc ` MKFޯegSWEPj\8o/Aa.J1:a|qSףd+ Kz"I} wK>n(si;|pW@`B."Aξmngg>IfBU%uQ'{ⓍHqHԝ57rF).k5c#w$3rB 0)<+~O$4gw^T8 4kJZC:aiy2$MT M=s?ᰞk53@J,KpP Bz^6M"0OGFpFI!$WhpC3lJ2@c8 ,,!n[\UGZuhً=>م:bŕcz)b2ji˿P&Ɋ6~_/xϝo㴳ؓCE ˔WNNPg32 #]N6t'.kQ0qZ*MIc!^g_%M-)ȫb/ň<&._ty=C_WfB9S>uC!?\(-NzӀ.G+R *KJS~n]@d:e~Bж h~hwǕR d:F#PiuSe๓s, MqiAA˥Yo u06bTw&M\4_7ރ}ԩ&鐴nW /;MCyYlZ)&~MH$E YIƠR-Z=iɖB4&!_nh8O2FAWR L\5^Q)K %?J OYѣ{]ϹWBi+6}w,sA9\vUK/'k>ڥ!kS96y˘EZ:0276.Yyt<ɥ|= X&SdI[5GaSe(W"gZosOW(2LhC75[SVhwoHUnCH*k#&kz~Qui9j+qs ՟u6* 6_}'\3{P! UM^gax5 H >̋+dQv|[#7˸p0Cmec$hHblŏ=b @rz\܊cPÊwI Hǟ 2}Zzn/<ɋ<Skٗ_<:u2(LgU2P[1605h*Pz7L!?% q:Vt2qzz)iP+ᷲL7:S 2,CmT`|9 |;tc;9>z`{(@s^U0 M[o.(ip oi͡?X< *BRLSꎙ Ƽ47 /eQ`rBV^|h kp2 I$SrC3_<j֍tsu7^ĢYò0 ݲlH l] xޞZv\=eʝF1*hkz+ŠP=k" J@G9JHdt3Cϭ4>WDvJ=3R*ǻ&'?7f_R[v-}Rg+ i"zt$SDTcm~/&qV#A7k;;3f)Jz%1 Fo!JIIF䐪i'4;~a=sFɑbU*,9XS'{ #,kQgV0$R0ZD9mIcP>`Y^(d"Z)hgMvT#3uD!Ȟ_הS;});H4\`MUݵTAފ3?nH Fyv97m,F&++Wc?3ќhtCVc`51W_"HN^vvF3ہQnJ잀q8FM[Uqf0k5LऋX8t##qº ᴴ zYC.IL٩Ye3޿P WT3al@`sfFΒ2?ϯ<;dK=2ԷoQO^'p|}\Wt9j1H;rȶۈzwaXDGTf._ׯA]};gĴ<>o%ae@ ;\"퐳^e;swdX;i;ƽ%-(TbEz 3xځŠ}}ia̢e]F;p?eY+l 7aE]=Bي8v0ɵJl{MKHY|4*֬\H.s-;qcjnI5ѩXd;!-sO%fE ů^ϲcs΅oۜ,h {p3:%+:ח.n OMuk.$b@6enGY^hX$ќb(Se7Cq:N$-IqWBafӒ@9RIMfq/ջ$iu#餈$ )P%yAnērک ŝVҺRag.1la;sOYf#>&>j/ Rq, nbP:j e1[}Cs=-Ѵ_}` J) m|q\`^k Js c{׊ qcbeBU#nj[fHm`Plb0T _b/aHا2 pt<vBt$qgCe4ITe0P,5 Ƅs΁C񨿨E/p[%ӯYEE˃,;.'f3Sř^ȸ C',%|.+k s]SqZ%honsmbIy5SX;_ElQz?#ySɤ Lyf6KZؙH hƘ) $tj~nɫM1OC(Qj޶BS27[ h6aU:Xҭ1뙫"o+Ywv H[A^>wqD)>yOcIؼBG0 #&pMede W z87l<ڳy v*9( `DCѡYSIyڣƢIy%OTh8 t|<Qw:<@24qVytɕ2/Jz*JYJw¼ǝB2~_ V(3HrΨZSi5U:9vd92"%uMFm~oAcF0[zC{ޣIL9 TlQzD)?`98ӵO)mF]"2~K(ᷭ`UWԇw'ʮ^MJ,X e GU˝KbP{dv$.sXg-fP4yB+MLJ/a+GJ"gTq2i\ ԇPS{ue'yeYntk̰Vd{P /^| ?tƍZA saus͛ʈť@EJn4% s۠>fPrפLT{*/l)_۬ (3eal,iY=p]VSP6f;R[IZf%T-Wa;PcG ScnE4kk]ovl[|ɹP[o "ar('K'L& Z1Xu[.a"tfa#цÓxݠW,ns,a,9j,@@D0jrDg>yA%Y >9k76Q!gUyAt“fM18#u5C){mO#'+B?iS@-1<>dxj S{]g=]-._w4\Mb+(דQ2ۃfE4D.N&,dJ{ y +U" `՘Y C}"{Uwq[58q ]JI30C9ѮSPJ\pUMB VT6_`DLq}P+APND'?G8  7KoKsmG=m_:ܛR51ٹ12vyVxwZTBF`Sزz4}!ώgh]Tʹ1n r1^p6͉;k;hE(9yq!~Qh6ݑnc1w[m 9k+B6Ж)l1HEibts}FU%Z| ॊmrĬՄT>EB 4HK?I'y-D?)"?&D [~[Hxd,nqx.bf/yұ=`si_rM,Cx?;&vm"c";ñ܌8wBr(/WCGi (?mg͎̊VFniy[ëiXRCk I/w D UpHek~Y3!_qÎ0M&xa2{M>V^[WT^^ v@PoO:"Nh@rs~FLk튑g+b-I,5\SSV@rSg?aE("8ai@C\_5/Yur'?|xVWQ=迗|d[kF-9XwmI6}EWtߨ.Y`;y,$RGF`nǡ'c4@X|a:gP%B7..\!$TWcծ6\⪱Ck,-Rdv}.tx&Wè~i'Ժ1hဢ@25k! ٟb8 Ւ'3n!՝FeFII5\g;1w Y"Y;AUb]gDt12JhD D@m8ug-j^s"@17n<&(߃,?]R%@L]%0v2J-JڔL5x\tg N-?y Y(H@,9_  5a_eĿm<_vԙ"B[\)6jXIfs'֖!Sm`O/Ee_j/Um2O xt摳wD@Z<\m'5xBH| h} g6er](?z rS7]~Rs8oMJD.42?!ɱQz=L3آvbq@B(7kvZDY骿GN%T..rYJJ#plp?B=z;\ nQ227"Br[e|X!\)ӏ]F(q9=`œ f,9/xB~gA)<7x/Grbs(@ kF"f٣L &moKHW+)΄]) ;aLmv݇ˇI޷i*Nu'イ1 C<δ=D|*̸mr]-\yr넿5O5=d.c$4aD߆@ȸ6ak&@ura "1TZ^$WEwГ>\֗;c1FD=wJI[zUCq̴}hi>T4yYft'֭ݙ{Sܴ'+4ǣάJ%ex!wFTń=yemjTk3Zh"\1!º)HU sۼu>2(* ,NP3UgOH(*AGGY"q^Gw5cߺ+_8ȃPT0 |/y.evG 0T"W/( ۉtF j#HA]:|D"T[睽|!|H(}s[㋽-.\(*=>BBHAڤT\"l6N[ HcpW+{k 5;&H%MuCֿY/ HЯH-;bv~;2I3|: :q9Ы]#i&b9b1F\˔fCJ3L9rCD)C@IB8WTSߦ@oI !*b|Jdǔcqx1Ee2]L*m'`B VdpNH̓SRMu'H٧"EUmU_|2&p0-jyfb8 |EY/,rg)uϑݢl@y7_!>I0N(W=Q+ gt:v?Hhu3al_W"74 5>7o 1aCUy[?XʏЧ.J6"%H r ms%d;m܂2 e}]KޡQgr- 4ٞH7+5}X{1~WJ\9R„#Y}!d`ToݘcGG)R>u4et[1T'.alQ1f8H 4KS\l*%NՃy乶ӫ{sN8?s=oA|-pntɗy;GĿ!(w]t@ L[fEud"B[J3#=C>!~:EuJ'(r'v'䪫yVN%[U8B"_z:E=1ߧi3;*7zntBN]8HOU ߬cwhs !pcc(j U"JTeA_X0BBqJ# X^Ѡ{gQDGEyBbt$[3RJ)Am絊پ,n_TaMřzX;Mp&=F[3ރ]sEc{;i_;=S,T M,wx5Q(-n b/v`qqFR%/~tA%*QpOE8"p5V))}XZ9a_]k#)gO[>Fr;y'߃jYO0Om)z=x Iq&U.޶vہ-!2}29j{ZI#)py ?Snjqū *fS/ܶjk)t-<34O$V5Tԝwf5.W*ta'C=< 7NY4N(qˠF 8^v2l*n^u^;&(^5&~>}MMR'.\Q71/6lYtܪ; tEgIn{ r /2dV&m˽u)+ &w"#|I1:M bHv(هSZ( m+ȳV4 Y8Iۮ#2)N"uIf3d%@VJS |;Uky&@9JiXben#\!dl>-@UO6R3 L_Py!G9pמNVpt%y']֚}hRHɅ}$nIJH '30|ۏ$'0ɼs Jz%w+"V=%  fI|lž&Nk k1x e^p,8I@?S&60s.qrļ6l֏$sgvyz@?Yeak얒ܒ@gy>Y`jFn@0 ,_?iڱ"iK^ _ <} EC#z# gZЖBA)B:(9xYSx*2A0պEq/VcNMSd@QSJ3oNV?pnGכJδ.Eh2N F,Zs:r$|eCk[ WV-KjRZwvAz)9Xӊ >^D+x#qT a^]c ⛳-#w 4B5[P+%f v0jj=¥2 9[i<>3JNϯ q;D._|E~ {۠al.?ZkTAŲQ.y8NB~*Ŕ[ZE@2 |Zφ]wGc=8#\S4KBs#g~k7Jn7.X YZ