python3-bcc-0.19.0-1.1 >  A `fXp9|}ztlj߂%zUʿq/BZűڄTa"`[nPDkEsWmCuj73bo^cJfDO%JiЧ P+} o.~z}»;AR4N M42sQq8^8TӸ*E.G(6qے _fG1, uv$ [54df4a212a0840864eab5e5daa6b60af23223453846f3711c13183b0abcc32daa5812646fa5d4bbf76febfc4e62940aa506f6d1a`fXp9|gS3FWhbSQR12;m!j}3[a%8ڿ28w=sp?l͙P`V\,1TSem'-{@-d6j,wvd\yﵼxĒdF^* &>gšDƧ/)/L _x%ׂFϠ.9|/;[ r~%Tݞ?lΜ]0z r!nL*8HvugkL>p>?d  J /5@   l E ` A   < `  ( >8 H?9 D?:?FG$HIXY\(]^ bcCdefluvwpxy8zCpython3-bcc0.19.01.1Python3 bindings for the BPF Compiler CollectionPython 3.x bindings for the BPF Compiler Collection.`fXibs-centriq-5SUSE Linux Enterprise 15SUSE LLC Apache-2.0https://www.suse.com/Development/Languages/Pythonhttps://github.com/iovisor/bcclinuxaarch64XO1'"L\2 Q3eU%QD#A큤A큤`fW`fW`a@`fW`fW`fW`fW`fW`fW`fW`fW`fW`fW`fW`fW`a@`a@`a@`a@`a@`a@`a@`a@`a@`a@45e335e5357e6950a745c4b326528dca374de8d9535135454adb6bd018931434aec8cc509abbb26c4f0b3c70c213baa97d9347164beff15de02616f0567da8d7bde1158121e6fdd5a7e5f4bfc42d7a5f5d1eaf465587e4c74d6ed9dca7b1c8ae80ed7f6c1fefb56e94a7ed04d4abba74d668f1cec0d99f0203340df0822017e16c3895353810c6da232219df38bed362c050f533e95c1838ca2a408d7d26dbff59c07ec405421f6d05bd4bdc29873f279606b9b890ff4d1a68bb618eb908129c7cf1fda009a4284363428a6c5812df036ecbeb13315f1c9d8edc9de7b6d5fa2aa593c6500012b495f8309086a11e3e3c5babd5c2d7023fe2bfe45e36098b678df1284a8bb10d9706effc5df3150afc81f90f0525bfa6690c70045fb90da4262766fc72fe4174ade42390935ddf5a1802be2209dd985cb5f37ed14dac4de967dcd8da95734664bf38a51567a8824d3699edfa9d7a6c0dd67175f984b8b5e35cbf8bf018b71dc9dba0fda08b307f6839525834cd99e6c13209f97c60a884d53095a96d7fd24b39716d575e4a55fdce3961caa0bea87ed8fd6deeafbee2f0e24ba4219c3462fff9c3a54d696ba705516ef41bb37dea3641631049e7531aaf0449db16333c465c0edaeab15fcf3c0d9086bff1c2021c54b14ad95eb67a7660f8696801ee42c3313dbc057400f17180c6b10dc4e83b41d37e8540dc0ddfc5f5287abb55f3cc5071b3ab9ee6315bd8dcfea1fe97477e2262698ec9e85b220a5be47328d0412a324abe69ab469890a96667855b2774977e412c44958f3de53841bb057456ed97d2a7ae645787ccae497e3d53494b5d81ad7ec8c2ea63a91a93be5db9473b55c3ccb51e0c0bf141c198dc8172e11b456d7f5923494df65114a90086d9b757ef10a7c7a8f82cb34397321e2373211c42f3a22a993e8cc6f24c16f91f60dd593c9d5bebf18be10ecf971430314c95f00f89e9a1e6756c9d56394815cbcc82d28a2cbf58a8ed92d620fe75877696e1689453a24ae20f342416a3985db12c03rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootbcc-0.19.0-1.1.src.rpmpython3-bccpython3-bcc(aarch-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 libraryibs-centriq-5 1617319943 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-bcccpioxz5aarch64-suse-linuxdirectoryASCII textPython script, ASCII text executablepython 3.6 byte-compiled RRRRRRRRRRRRRRRRRRRRRRi=ķsOHFEutf-87f32814a14ffd57d34bbb3755e18943b4b4d63088e65e1abdee8eda3c7658ee7? 7zXZ !t/] crt:bLL q i\ƗsT=pRf0m)$$:w/@8_JJ_8*;xHj-jq+Oc = Cכ`I;1,週ro"Δ\ҏc*jZ@ZS&OPg:m>)B3̀;~8V:65vgJ%zE oi kUM#=8p?&әRDNMQ4׈^μL7KB3޸\%m2&W$r_2/bZRG7pQ,7 'Dh#Ob9u7pt#{daXF!?F6N   a}2acm2* N%Dz:6$:3.@ ۝@ުw Cc@4 }#|/gÿ <@$!'$nV?P"Pq^n^$kF ?+gr S1@ӥy^\ǨGLype~1h8~n;iJIu^}۱UZPFJ¥iy ev_p <yml!̜vp%+"/ ',A텴uHfd``,o%-L_#?X=d5p4:\snL^kڤmgec&mp^#LW͓>I"J4v񙋱 3 e<0_#żXRC7KS VVv,g:Sw"$%>']&8GkC0k1y a15WW>M>Ʋ`Il+}'5E\?@~(0O N oVOKè,iD ZQ^3Ôk 2϶F-Tx6, kIu9D軬 ll-@p8OiM^/ʃjb*'i-?/6 S!Mt\QcǗ$bnPT ƌν]cp2Ř`ً/p& $ǔomid.Yf6BzڭHao' Ԙ&WdJ^n9NtЃ>]. ]ǺmGjs,H&Vϲ5UZAH?z{S,D2#e^=CV\xXPsZoSzd68,0sd޳ 1 5CΖyl. Jk"7De{2~5-Fn#@|a GȌi)46_)w=U<.2;{[.9ݶs H Ӈח{Hi|Uo. VRV^|aH-0Iwjak4/L/ٵt=݇a>Z?%#}EK\@U:˜Ahz/O?/JughB咀rҺ|flE%?sDBL2U}Q~d yЍ6GM{ [Xr}Koa ,0L:̽deFPW[$V6xl6~M.(41"eN҃,(`t, m zJOj;{]W՛\_="Bs/L QDg(Euie{@J Kӄga&AsX]0It }v {Zk)&U|/ba!k९Ti۬HR(6.XCo\K 9$/wOYca)$< !AcHtܗdfBv;vFXBS\8.goH6ZFäJ"L ԠCKNi|.[{ TʼŘܚnmB,͸SXDSSj-57ƠlR5k`A~1cb_tPXp"&!Zw0fV(Hy+<&%i T ^gemt]ET;ŷ9YDl@uc6eca}6?S#c+XnիZbZo-kE!iΝCٺ&9iƐ"?+,h_dFK'rG)Q@зEF#S&{H}}@WEgp8Oe-E_lhI3ZhVg7^T`]L#˘ksM%mLµzzkV: GD `Ӟ) p"ݡL FRgdyqj2 m@W.Xl5kW7bsIuх/v9k)ɞlz-"籫&[24j. :68qkÍTb`=8@M^r&5;p=Fq]LT}҈}[V]Wc,q7;zDj@,v)Usg݊dVF g}md%=gƪcheu8ŇrþW'Q  |5K>( 2m4u4 LJ U->3oumM(Y1N,]{fq ;B B7"vCU$סd*G@egQJ2mni}SNˉ7˨)[ TgA,MŎ-4/P?w-icm|5 8G_L,@5ZXN^TyjKB JkR m!C.8 \HzV]\͑e`)&63'? ('H6@YZR: ޯ?O}o27&ȳrY45N0B潰fIWlCDQM/zE#G_ˣC7tZwO@Gvf"-r'⊇Nħ>D_ :,>(V6{Dc/f#2a]Sr%@zD.F#Seikt0Ñ+i5" }:?8*Loue'嗝e"F#qwHrxCl7 WJh Y3uGrϭZ3Dd lAi :%)=jZ)&&0k|PBo `& @7c6 @=EI=Z|S5M.9I0|)~@ 8|̮pAҭ˛`T1Z=aH{U <v-Deaj6;|᭩Os6ǹlӡ*BBe} F`C }MLʶIsSQ?1S%=MT.Ȃ.RRK㸟3C (lST2j?/ (w776+rQ9:bL({ռBۓF<'@X<:FK5V̀ҹӶg#R(S+^f=K̈е>eoZx\S P_K(KIwHl8i"|PcVzjcAu[ + y!P:鎏5 0R%j1L7hz=.St`-qmw6YTyp ∘&Xi*xoe]\OlRp74lIF? *4$nwCiijP;^:w7#[UQ'wv${\)V^fզ (XhcGĉ~naLNYY5=,Q6 Ѥ!3*;6!>IFpߏI0[IULhVJ#2FIE`U.6{ KD|_E:{;1GJBϯ3^~&B98T^m; k~BëFmq%}߂4NӚ/%tij~pGMV+Hɥ/hK* ub(J#V& O*R{`=,zoXtZUFkzb+ ;G{ś3Cx@U]:+[':4b כMPH']'rWM:j@h= uPHR [F膤mL6۱pwEGuTaIMF6!/ρJ=pZ\*v‡.F3rPQR/ :m+r]w!t\9:x_2E>[Kш) >m$ ;kEM|Q[(WyOjqt3^n{tjɑшhH"lՅw(t,}ד~U5E(.[\m<+ciL .bΗf)hdR g*6h3TxVw%{"#!+w 3okg3 ʰQpw3uTC n\;%>tL$}8!m$e/N&uQJRMxܪ)Z̧Y&U2YʭSFta}ʄx#6EȨBb\x6~ѺXX^v^ynCI#Ll^#7εDP+Ak'iko$2;+RXu=õ~^K(@>}, 8(PTEhxm wtgalͷw 2ph>\9 ' ~3KO!ƙ(EʹQs)g#loܸ@9HA `LLZF^ٹ To0)'\'6 L$t !\s.\Pؾ^̄ ?>޴Uʍ h@uPhq^NT0ERƋѽFWpTԠ?PbD`fVcstTTC 5T|ʲpύ3 VN1<řVWx ieVBg芒<:x +'z`iZlaCMZ@~؟3@/ԅ54jb5/TX 8fxoKkSP^Vc^F}ܚ~|iǏj$0[.cVd^8(Xʃ5XZ:`p8.S5`^q\yh\ɧϊ ('H!2*K՘ҸUc1^Q#; VDB^ ,Vgiy #p+ PD\v,+cI_7t'K㸲D?ɎԆɯ:6i垸jQە>DK R{)IҐ9dN$Hu!il_>gh2;c\r$Df߫K!>':;'gdc&IST%c 0?ccUN5 ?%b8 mu'4Y8S[4Ѳ͗#ip,KBg^"! Xs^%3!$fȲ|jjV`HS*м}x&{)Ռa 1@;a-Wv G+}Q!Ps2Ǻ2ח~lYB̓9>>1 }'x4, Q $bzx׀ilt\dF Xx@Iȷ\t1}!bLXUϐ%rؼW]^]C;$CJoԗ|=!7OO_z*|Q4XC`p_goKIhm/^56yUK(W@&#bxzZ*\'I^ k&ʩriá=F]%wݷ' W^ۉ}Y"񳸓Hso~gk9` b-w[Jl\Z]".on!΃xYxc*9\FA1<`ü(Z:j ݔ\|f/~c:qM]ɐHpPz[EX\@eQaBXcw2hW{Eo-[ts2;lרu3$ޤ=ViܵM8YĻL-VTN77Zd ̫7'~s$Mrr̘$Y);v?#dNYqݾh\AOM5kWnfbU0kBvx R޵fF:B>iPa/^7JzfYoȣuؤ!Wڴ\3"]Go(O0#eT*C+ճpGr/1QPgS 'YO t:"\.#XJ,xV/C+O.l``W,DC W"vo'8oL;_;/& 9](+J@g5P{)wj&O>9c0x*dzkBEzE){O6yH,͙`je.3fIJ/eZ~mUb_,l["HqZK2b&I_} X鉆f좵9>,^)0J5e4i^J0126&Aó&ILl#(rj:͆09Z_Lj\rTJ^Q0BXtcoHRNUT;Þ}vhv.Qpy;%ɵ*;"%IKP]Tl$zY`MVT(|:rccj7+!X˨s??FM?ơYF VL$T/r^D@5[ ]Dn6OTKy#^87";L$ J0fLa ?=~ʛR@Ps V 3e|Iz=S1}<,(*PXwy>V%#Wk.Meתx]n i,u}oW{݆/.^;0%fB[E fn!oAMTBζm+_0Co̩!zSO%y*( bp 8|!xꈁ6%@|6Lyf`{>e!Msj&DtکVpK&U 05}߿DJeiU+I ~lR$ͭ{\8==zX$A fhЄ6L!D^oڡS|}h75=ܦ f02TWگ)_ ]PH_PʹSO/ɕ%`EgOڽ9ϯ?({d>p5غ]$<#ϕFTrUѲ9=9JI>}vOCqMTx;ȕHZ XĘv?XvHiJJ{40g'3jRMΩݡzdwj\uS)g_i~5-xBʆIiCs<Ŷ$GoM A&aE/*&HDbjV~bܜ'_ HOgs#,,՘'yD۬:[4y#J̸Ƈ0d}ZRR.byBǫ/ HĬ/Zڹ." 0zpbm,Qjyb e JP ~p6K3imc8e4Ӆ0竿(*hhv]؇|W>EŜy|bxg@$Nr \@Ç!$΃SKa~8Z4ǫG*?Tg@r~⮙ڶh@PQIfH -MIˤD(7SIjm"DV.Yg%pkw /[{2#1l✘ t](QZRig+@' 56T(]ti)1eM,Wط`O)+cF$"}~njb]JZyF+%V iO<(}PiG͵(a; vWNXFie2owsなB}:_O#\Y;}Ef_=W"wh_tp=6qGN2';kwj6~w5#Cs!:&SlZekxʷ]/17桟&?ħY Nw\ DiWul+;{`(t M/FfwƜ_#^T >`UPP;~" 3Bel *wClY,ߔ'2XY,xH[Qj aC?C,њ M~ۻIC7y pb U@q.(3zcHv|ij":q_pVLI+HGOцSB46O{=]#Fsb%e\dOπ(%VsnX  ^B˒%̘675mA%ٙʧJd~T-ZBlQ_Jѭ&X!cEb ESaB|}0?5J f e@s̻AN,Z\-ziIw'^"\Y]}$y5}Vmaj1j?8Ѧ?rʧ3y4$MMꙋ.H߆HNm1gX&4ʔ?Ҝ>uyܘ zc$z'_pl)սՓV4 j9AR4֪ >\}yb[zԿ O*{ePǭ"$esd:H<[a"tJ I[)FaJl,hz#wGXq"NckkY(ˆJ]`ݔل0]dWJP)@:V6b 8AT_)8LC AM٘L)㢬Q|Ot*p9Y-KldRkC`P~Q".?H접ty.Jm=?"}|,O7¡"IsI1kl7o-=lwu(wJ\B6=+5V{֘T JH.|`cyn~%J$IT㪮 .mQ ad.dmNj/JiG~ޜ sO ?"_Bc_,# W4~ѡiLvې{c73Ι/vm6<jǝzG Z@yEPD`EbP/$6ӕnu13_V}8Zl^#XIiem,d/Zs6~p̄ou+j/ٚ@} Z4 >iw9JHyY3`7ʟIln_˟y6Y,DC!_џ_ bAꢕ;V]p)Z7AN.+#"7t]e.eU2_"Z /% 흒 },L:*U8 c̔|f^$8~nMt%Jч7py7T10ᢌHg'`-?HKп1Id;]LSF/)H}TȠDNOcʧv+hB2QJ|:])2@pZjJ6]j^@2e &uX;DO_&ED(1CN]<,[!+̗xɺo;ExQ4L# -:!.%CsSoešp Y_M߫Rs&1o2;lڀۊSlkكP 'JPԃx`ie-"*lvK'+a:jgx&؂gZ+q%ƙjNkt% m9ބWqp40-bvO-JzƇ6F{ Jkys-W <he /DsԬc({|#MY-6ό'*-ݘ{ 3a4u\Ǐ |<{5.dJk?R٠3z U#I ޴R\ckڨX3\]ExɸWP,_6`F?a]TC.Q /p!ڿ&:fDEߍݎg^UAזy5k:̇RsHd`9 trl0#ݙo Ǔ6B -pi0u/QjP Tk]4 #ZJX3s$pyꮹu3S ˎ6쒑 ?En]/@dOT7 $u^9ޓk`pG+r_wQ鄬.FJçIڢ 2̇4';Zn54g2=D+;RSq=Ϊhf#X.j.YDf#K|3xO}xH6r.Zasrs#DV2Z7mór'j.| d2}}[ `gf%)&.:<.utx2]3U u]O*̗r^tڼf|YNlWcY풔K(CPLJP"YBfPqs `|3s֕*-:3.7)8t gez0za;ߛ[PĄϷT7=;!6鍓\AbA`4Lb#8]wj.}3ԣ?$3ȡjYuxR7bjwN6q["2k 9srPZ,|JEn?հPXflUdFM\J&ɵR'D 8X$I edSHBD;G>'rW YuY˵=%d*+0kU>o^`(#;[;1|YׅNcP3w%Ox +Ɏzׯ:m%o]79kK5 )45aV: %9%[\4ACaU1+ `\xOLq}f78%}a~SXf:eMV@mJnt &stN:aC2 :ȼ96 OFԓ=T6MV(%{ᓾ]#Ton+k{Q/Jk[0@\ *d}ԧY+@0U*L6fϽYo$*Hiuȴ3UnG(MbypHswh/68BԻ\Q7SD)VzieK,ᄅH{%o$Jt2s UĈĔ?rm>s]:rUX9TtT 6!ӿC\@*-kkZr'Qi|AAf67%:6ٸDS}lLJ R]pa-t/B@DPO Ӝ+'0ub(N/CJ,-BC]YfJT_ 2Aϡ+8'u/8LKBuf0IU1dyQT©ME!2_ lcx!3&>\%dݨ(A,9VBGjrAzfDTXJ,! }mSjm-hxq>ƶO 2|~?x8!~:0뷓H2]af=2.* g0RhI=s ᐼxZk maח0K*}Iqݟe/Z ~{9QOutF8ٌ=Ôu+8F60i,q(~Jq? J-7Xg69S|eia '= h%G2' _%PF)C8/]8] қR,NLhI1^%]yPyOQ5*GzwE#㍚k{?D҄mW#p5)9AƺS̶{PVD( 1FW0[\ ߥ[q>Z|d KVnj=#yR"5 +N15le]GT$Tބܛg"I%<ܨg^+<}A>p3 O\㌰#'5=\iHeLC0J6JO|Lx-,(+-:!t m|wӁs*=|g$sG:]smλ@ u?Wm佈OATSc75X q)~uj> C)IO\ >"$ q~C@RRƂ`ٵPf;jڧCwi EO$܈SEU(;2n'o((C$bȪweܟrZpj#eZI)AsY4>%1A H@qlTXGBd2:E(%ێf#fԶ4p֊4iAK/z>_tyC*FCйJԷ~̖^M⫘Ni^FYDc% Md O5ݽ&Z+o⣙G ɓ(`Fbzϯ(R#\[E'A0Z^4+tX} =_)ꍣs닎u@tsV'_ 9!+A\wC2ފXZj(?FaML'e ~&jҫiP!Kzj t HG?Ւ֋CzHay-!dzdPؿ!Q;LG[w;U"tЪ`'ʭkChbK77sz# K h86'./Dsŏw& mmA),5 ޑ{05( ۅA>C"{52dɈHWsPMHHFjiD` q XgLVA֏<Ó$1b|!_O>Qx2rj'h Wrwς ́A,k6"lGL 5Q}ʉ )^gfFz-t0@h=PБ{ԇe91:pOS᪩qMq@3Wc[T*@ '}-:2D}$ mY Ґ8@9Eui35n׳ÒY'OMtbY7_Oj^~(A$iF9ێ6>=>KW6-Ua;3 ةt %:)/;h%`П>PbؔOt2Q 炀´z}Ƶ(hoD U:K:rQl)ZaLg4(O:op GюYbZf|]b}R}AZbyQ&Va?4jMrx^7O̝cޡP'H`5_|ğ.Jҋ̧QV3p1󖶺ZH`~9۱gca>U#/AKU腀'=0VT0Ĥ.Z}h͜PBgNeݽFdyb툠}@gMzb3oҮNPH$#z=gE^7] 7ĝA@eUPn(cđG@'OS{Ղ2 3wÞ_>{n?^꼙QEiy3a^2g*a3NT{je3eN.hNߨKFZ k4 h&VuL-=+tGlPF<T@ m=O\e=^/&s5ΈL}vٖQecđ]A&;i0GavuA^޻*Nm"mug6 p:|:7DZ(nS|,#gDa>G bikGi5(_CץiUd 3 pZZ%aݡKnJwCQX)cAΗWqpaK^ND:"z0.7xU鑱R;w?y,W\T<ÊP $zEE|(jR_9ъj0F06_8`ƵXRUܒF)j(I*+(]Lv.: :;Øs( Ndݧ$S1=8n]4*N-tjT "n[} 0&YXd:/*$h'OZ@+I|W>mʿ6JYgؓ4a.~̛m2PFgJ_ZpH]zWd: ƶ6!oo|G}TU?fa/]!\nhZ#t63Mk6ߨn"O;?JBiajG60۸|uu'9MA1LYOM! N4v Ucj/\rHFgQ9gd\ץ$ھ6'X?=SI(0SCWbIHS.≄ %Jja ]1`2 BĻ1J[ KȐŬlr.BWܹ.`|Gp$k;՛-!L?iJE Mp1h~`*٢_(N fT9\R8vs^kWSwn je'ۀ:wu8L%+EݚN 8hBp f&*r\ 2`%Kur=,.94T-%ἤ?u6r]|gEeӆp61<1e!}3YUzߴXZ߽4 BcuaRŅ;?X/@sUh{ma._1ԅq]2*Uyfo4SP !曀*&\ (G#hw=1^V_Xn+ox6v`*DuuMZѪR=%nb>l qniG!-l?vAL}AdԐ\-;e-RsЩr DT]U8eW>n"` pWG+y I&mpe)w&) UʰQmI*w8nɎq/;&S&\43 ̩!>. ]yn:d}: BͰOMmHyM*I6/UuGT+Ζ]Fel9Di~adP@& t>B5<B=FdkkXƘ}Oc1?#KWXJAcʀytg&dDO}lgpYkV:ʜ 3t 0Ų\p'BC&HziDPbF3Uc?]6F5m/&ڐl,v 1KF]3wq:D#M~QzG.uFS "ɿ@-P{\w;p?ǤF0Ru~G#-A\-+2; T⑉dрTݮHPil@d+6/,>~.=L wq ̊*j5"=v;,;+;y䰤Vm&/&\nHzCtu+G,c;Q@UT2/=*P۴c+l["^OeZgBo\7gK!C3Yy2x yIg0?`z}옯Yx2VIү{:_Ěx1tF& _ Iorn2Uoj ۾L4Ȯ&V3HwB(>Nz50S@64]hRճp4=W,w K]%R wf4 a0N$3-[4 ,X̫_#pج 9Pz&*o(!p_ƀ{ex\KJJaKD猢[zt k+]Z]ӷ[:6GF23 -RNBXRMlQ.Kt@ @'\*I0)Ao)n7#gk"هN@`BymdSpD\ p\wC,SZ5v VYV ,1`5HpBE}SJYI}(34^>I]@kA lt<>,V(ΜΈAڌuFy`rջ1d0yӱ/G8ʥpj8x4R)]5iLٹP/c‚Dt/P(Mgx#ma|ґWG\Ox(܈&lV@{\a4E^ZԊ٤WEF])'TRZM\I%4O~Km?ڪƺ|H麦^%mƙTxn_KzuN>?[A*jmy#&սwUV.5 mˌ(1]t_eѕ#0_HypFVF`4]"|o!=tu;<\q3FH/{2g~H2hRME|?N+6ZJ| $Zק{mOmV5]HmQ]A6AsE^uhwՕ bAi72bAg,:goѳ10Ay2 /R6KCsNxGgaZhg#^xd LJ+2[ tX>igNDю3xXHԧmesN)4ePi{ċGw. QX5dcIfH$`)=aN˩1{sNcrhSܟ%VP0"- AThj}jAGT*A7>R#6l@Oawנa<Ѵ,Su`VaY Vx0 _Q{YUxM<:$-T+XQ̚5K 8!u>)u1hX hRXI@^;,I^c<'%`ANEy7B'X % ʓ_lK\OSj Fi jM/Xjm@n~-G20-vvZS㵱MCO+nw(ޟ_MEBio״&6^ 1s_Q`x0G3z=C4>( 0+v_yVa()}-iWS;O4B?.,2Y3(@Oۏ#+QԐ+ӻ҄2ٞoN'j8 :z rtoگ,C0{:.S(3' 1>, maܲ0WjBjuM,Qmx bደ"l-KԒRZ΃670sc-+n<1FLggn}WwpOT{;Ay쟽sjQ,#7΍cm#J2V^rG~}H/;q'vv iqK<M=f =?,Br{+y"MɕviWC!mP 0 $H_"3cahݲkS!)n v+ڭP enfo hcvg6ME4x~@+ph 6"w2 -/"~OLG}H7ka)n !_N;j/s芷Ev5Q&?= u "T_[k>k6j+5Rw +Os2O 0tY,cȇl*\gC]yfE{̲LkFXpeO% 0Wy#^') τ3PZ!UG3>{Ɔ,֠>y;b3>1y$j2+6(Pd@,MUl T LRéZ~%d(yȆi(|'=Kxp! @ZcA7F/ ^67h/#RfZd-]fEr{vpokttEd],8ޙYX笌˃׉SjZF1M>y OHDdu?4 +q?w_ۢN *|(N ئq;-{nh>` ܸi^%k¢`[6YЀ7 Oo̠ɎN:VL@~l~E.  +_,PZSi̾5](O3MFv}a5&TKJ@Nt)}RڅTbuxf@jU1Q|i$)!GlȄh1 ͉S`ށvgS'#i֗+ &Y~g9YK5& מ eҦPďL1Z &@$D!O,6ƁҁPG^-Τd4I!o V[ږT{셛01O7`0:w*BGe{&LS mA*F fGnyNKxÛ d->]y~]&ON9Ϩ^ۻ#)a.u^yZI[tLAN.XW yܰI<@D‘ȖTF)8JcC*֘ŏj iv8' O-j ^QI&ީP^>_ˢRR"D+ϭr^{ʼnM;Rp(*Z:rX\zrmj͓䰓u@|1 * 듁i1ڍK3jeV CbVdoaf=bFz 0vr$P;r׊m>}|ͩ Ɛ}aj24R@Nb[B}W MN vzLMHT64k$I9 da@! ^AjsM5P=_o+lif(19]37*ͦzLPZl̤V3A%J:bjbP;ŶF/:ɽ_(!~x ,%dhgp 8 2pP۞*yn EST'R5C ,ݣ?-T?`q\LU lȽ !rjnEF 98`ρ̋cL9#T,:_+vvccm $TP̔sW+@[Rv6"BG_==Kmb1}wsrKh")Z_9IǙ`/णY)MsfxTSʸo7x%j@ky"`ݒz}|ǀ`ԤzYJ9fqt4큌@Honi4i);[P9/ .- Q*Xh0>I [mleXد.I{`ɎA` 䰷 K/"{ ~!hk!&.m9ZrY Wޝ@U1|#Xb?x0r]IXmj!_3G"g(tiLvwdK*/ &5hWX3L>Hǘ@Ĝy/ M4u5F ,;|O{c#@h &vR/ys)r{'Ƴ KwHAZ*8 vّIGO@'*Mx 2]0#wlLCq 7 B` 嬛OP9wJTVsp ů r6oKc[vAmgx`ُ$&,m^"8iwrpm~Fj4CӞᥠ eqr̝ᒮ/=\ƟK@I1 Vr[{hޥ֘m+f[p-UuJ0:Z6MZbH7wC2I[u\,0X8s,KR"@~_nJ7U۲I|F6@[3≐O\D'$jt&uڛ9KYz qN=Au{1,Z22u[xozJ7CSyLvSj{.&σq@Sl;"}qzA,?g\G);n[i|`=h-J; -8? Sw`FBU>BK$ņpyc8kn<ڌ W[=z6FѕL뻢a1$h(UcII#SMQ/U1vs?Ks3]ۘa0<䅎6S4r0"jHaW.ǩ>~S ]{Oư%dp,5ܬkjN.ut"c9;f:ɗ1%%l?N?<}98Fp;(iV7J;qPqW#2rMn[F1Lzp,kW ãD0D. ^ezWiStZ#|/>P(n|ʟ]r-]:ee^cl>N'`v;ZG^X֑e%yz3r f&׺gmLfo8X:ܚ->k]-g=,[@YQWJŐ03;Z1E(o<-FWFr4Lr|ng X5;XsGƇa,XhP-u Z=L鼿ݹɛe;fi=.(U d م%+or §C]9[&|aI-\ yg L DP hV֝sgD;樛(d !sY5O$%_f R$*'8笶uUfS$Ax  ]YY 'El&M Hwd[^&H+ف26 ^~B)L;8YvQLKV mEp'7e$׮e+w0m3z7q?;'5̈WP>E9 U;Cc˚O0$-bT?OXt1ͪo);LGrQWY[W+kevlTAJ'A<e,itX{A3YOݱ (|Eaw+*vS;8B4!ӟ-V7 vPR| |75xU|Dj%}1TiAȵ=Fe|&nl:%~m 0wUeqt)unU,U^\A-cEsVfP\ {rH=rLDe\NS_w`AgCq~wR!dE̫^YΙϹ,2 l0a[b6C.V/[s>9h=pJR!xvPI&v"@}h~9ҏ;I-jݴDϮC|5.w1-|f2}1k Qz ɧ:ӵhm:4qzFroI!2 I"J~<ݩ)7ٲ?*+hb~&=U"U᷊5O0cVu0Js ^L.a@"̨1*qD},A3 ;m |(&;2W|/kdp9O #~?.cѽ ]2ݼ4X0jj3!h[xP1ԅ6@Blk_ ҩ~)[}AS‘%0gƼmGpH׆2˖ZxP 4$$ѩϧ.iC&a<1(`JR$lݔV,ؕE.7F=GȣYAMZ1$P(᷿\ 9kG3:!2JJ?& _R7O,*_ >e3Kzi%02>y $>Z;W4zUU0c5EP+$k4cA(\!+Y`i&!%{yS!3(d:+,y{f/Tj2Y"Ӂw,1@ bN=ȯm1 (|^5?Rq{8/ktFǠlhiW'0cBk*3IXrQh.cH4BqCğcOE8+>`92c;wtf.c rMWw`)\ݡ )3ִaT@̈́Ze7t:kΘ:Php^+ӡ~QJǪBxȠ%\(OŊr"'ƠMNmLo/9T%bzqzXт;w \?"24[pzQ(Ȧ| +6_aDњhD_ M󗃋1o4=7%?h̝~fqOR*BW4ZݤSݶ%|֐hgJF4BLB#A!ȯб~0ek2MΥ-pf ({\]֯܅y۰6@lOnɳkI,i5ĶXO+Ww*V I ΖH*wrG<ubHK#KЬ Ď = X[08BS؍r^(=37JFLH{ '=W=y{^֣?f6 ˛ =G0`o[!0OAKs76$3R\lAh~8cQM(-.4B}Ѓm4R'9Ss{ZRfT7/N Wd9R-ťW;ߎJ%*1Zф@%Ga!<RKJ/ D,$IRS0Fӹ? UmVJ0ՏAl%ҙ# Բ,䱆іOCS+;zAz(ѣf< X`Oe %ә[;Gx]-irҮ=o!0RM%j'THo|[IߛMؗ(~G:!S><g34*Ӱv^Cx$Z?RLBW󱡋c6hdѴ_^kK M}0ff7-@*c wsgvnT6nPeU􇅨P3 2Ӗ,5쀤&u+T#1oMO>ǹ[!j3 mbɄf e.!1fV򿸞Y>hD 43hɣص :\$ScVq ;n~SPiDtfrrܚ-(n;!'Uld瀟0l?ʷL+/L_tÞXr!ɺ%^TmjҘ0PIjh/KEP KrELzS0qaEqzAw 卣ֺp['3L940qEᶦKJ>yHmZ. $Q2@P{D߀Yd c-spDOW{O\+0I7G='F(g`>Y i0l씥KY{+kH?ڏZ98@%D¤؄E h4] :_ I+^F@s[Ie]>O1Z"N@@Йۚ/ FI&ab]G=~C ٥\T|Yvp+'?pO:(1l/y%X=5,sNb7{5q}]M44I-iOx{# $LԥѴeUZ=" XTwQ' &a_ǥ:98& WQU<-[kKy A$BD_ݨ0~ (EOU"kЙ ^cih l*+2`Uٚ}=y{WȒ, Y}C6yQR%QvIIx* ÚT?Mѓ OD(I}"$GS˘$B|;벹?sFQp-; ՃwByye˵4Aї1xpUš \̂lwI9c~P܉nlӴ#j?NvH֯f̾ԛ"iρ[P5TxJZG$*|d~xQ^P ' ;5xv#5_nʾWzv9 fa7fMD,[<UwXo/VR Fu=OA˽HcUO7Pݩ//sD25}1o^1%Nd4uFM+}Ʊ.Gr]ߺ#D)f7G=0 Ftb _2, p@B21OEʘs,$₥tO2і M̙OxEtЍZ?+_[Ѻu1HfX͕ԃ< eb+u\,K-Q~,ih:jՂv"'xn-˱ 1l45ѿũ(.αfTwڑMjlD2{K(ԴeujHf[xnLGo$Ynڠ,ڤVp:W[vB!R*vshL&^#eA27)mg眑@ R\ۖlfה VsK٢G31ؠ-ex<|b3_#U89h(_cW+EZPKAFJ$p͵S8k 褸XjM~|UѩChzlOО au*5#2shw&fEA('fKV!Y2=ŗ"8ESr\)<{yR%yJe?;ߥ䫯 @/@l⥲{Y7"Y#}aQ1v>z-s@0zdG ۣͺbMf6/e7 7>Qx<<j[?%6DI$4^ipg#°KK=; rY(V[L Tx̸* g2f+Xr۔Αd5(3 KrZ6`-u6!h_Di ĤWdgOVdjع=_(=.DPo!&Lt ߽3 c.oӧ\1b#Ҝzr墾çcJt2ay -fT9zNuZCt4Lhg-s'"QIǬV4d#-՗`yq?=z{lWX{M\N6I]*"/n1"Ei\% ZaXz[]N-Yd^ wЪw k=1#ԛ@_@ Ao ũ,bEYz]޷(B榑=z~2V1+V{c@MV -&%%6%(< 3FZׯŜ[Xf>É6W|#/o"Je05f&*RYV]`CvKUJ 霜I6I>s"kz+ Xbh̊NDĴ̎"im>:^^>☈h=S5DT7G!߶anjZyΗt#o ;NrbaRo!׵]lrLBlTGs=9n*R5ѡ| _pR\}D`EJ5J) F<4BWacI8yҧ4 \z#;eW<8e;D|wVӲ?QfW_F/UDK<8bՆ Ǯ\'9ȄxvDưåҒlvҁPL"_7c9)iΧd`Kxk&)h սF+hoҡQ;+V6AZƓ9Yגً[MJ4E~jJw@'H&ppMZ˼O܊Kmx]&$^/5+n"ܳV褨FxqG4S`M,g5Huּ-R#3 ~IA1i([\"º>lq"H)1RS{3M/;,ҹk!*Ub1VTL*L2:}R%U׾MpߐdsU̡4U'zVCK B9p'f'mP&1kjxrNq@ K{ ܠ  r@Ȉ>"ؼmq9ZSUa2G~N3!B$7e:RGM ؤ֖#>R̯,~_fuBE-EӐfyKi1yFm{{ˆv.P)*P^q1NnŎU3f.z/\-@=}q^TH|PQ^kz̶LU$tdlfuOtKEf{\+R= ."{5eW;,'{Zo4w.o) Y}ɱR9'ܴ|x}f{B𪈰6u"2 uU^{W! x'lM뇮}Cg,5cI~Dk %9O63cVuJ4BVާEORc=C9.v/hT-4ӯt%deY!R֕1u_Kp72>QwZ5qDve0*=Ƥ0{f}+k q{=t_Rr:Y;p@AP۹k\0)_P`@=/&%~"nx%.<ڽM.}OXhIJTq*y8ėR5mpUJA%Do"nbƶ'{f`߫˙erʥSl|1F.F*5HX3BȔ}>Z0ERCUӕYd|twE,* :?q}5 F^z{PnE_ WNM V{̟T3*uQuBK>;# r7Nى%4Ov]Oaj>͝dV8 ǶJ؆|"u߱y,F;G/^Ntf$cW5_'X9‰-*2g 6r /m b;PVЈǀ>,K<]~GIwTl3Tru(]oDc #'߿b+_1#H1S"ͶB;^SI̗ZxnrPzf/}!m[D ݙQ̵ 'Rhzr+3)8VaV6kquΦ"\Ոty4V֚Ay9Y߲d뤜 k`=v)B)e"qDjlԲ>5cMWhpeTdG3ؽOIk~ufȪ}ZwTkST(B||%?m+#{5# [v$%6e*̈-a%Y{]wA`HQ kap4Toq.Cpu(,;ƵHN>E53 )K-;lqYĽvMLVY^쯥VLJ:H<ʆ>-_[|@Cn w,@F6+sNMdW.kH_{CvU?7ƋZi,:M=k f:鏇ǒtȠs<3^#$?p3뛉oUN\`)YtT\?rM)Y|}CVȘ 5љlAUH"*E|҆QKGjm~Xs\s8-涗Gl#%Rݒ;gIlnt^15Wm2\3n%͇dEȬ[ӫYaRikmg|B`98%֓ʣ؎C;LL8/zƁs2A^ײ>m3?TM b´]ŝé+rq)vbXYU#wP=ʈSMEbJt% S1ui1If Y1.EW]XtrK[ -dUL"4_W^RGA=Q.XU8 M*y_1Ek%ueD@jIC^fINQob?'j;\U$aHg-n+>( K>;&`LS| $K {lSyj1F _4WbKR ҒwE! >+۫񱂛-%*pWDUb[Ɔ:^f>V: Ffւy8>%'Y廀Kڭ0,ٌ1Shrt2wGB:* dVZ, 1O [h 0:} |;OOq, ?>yX6>LS[vPg3b~L!컈n>=,"9]^UE#[˞ eKꢞzW}q sU-jfIruJE ]|5Kj1yAx@W!j~|_2!Dx{CΝ≁Op@s<@Qɓmsx{CTV8e'L:|ĸ.P͚vRvʒغ7n=-ώZ%DX-UG2zsz"YmN득DVinڲ.@i*/ ob,YR@9`9:5ʧc9[/z&15&.C(1si0@#hZWQy(Lf3}%.ۼlmNu1rN;ڰAbZ󴆫 4Kj,}%gޠ CpWQNC-~gbze .g@qɨ̰xCE mw|Ϯ xk]n]*—e$hꅩKY="KMծ0LIIw<$1axU!ZgUY4)tbh =)OpD9@D`1nbwE-nh9pJe4 ?6{'a(Otz>dPL슻lj赻߶2W-Ěŗtq+{\ wsQرҀvUK b J F+.Ԋjgˢ'.o>"=L8Aۖբo2i@]0o#>w>f*v֏(+4/:@ mUga4ZNs-WIVn67sɖ@h8st5{e zMEWh"Ft!G<_7wthf,_5Rf9u|}.7=vǮ,yg3ҝ-b"ݡhWȧQ#{@WtmN|w<>i]-2*,t=x9$GmϑY TGZoxEdqc^L ߕ?{lށя=i,gIEu>m]# {=-($UM"icy $+˜}# j,1ԪbIBd>ȗî1G(lyڏ9mIo*?1AM~ڬ)juy,_wR>" SvC;t}W*fr⇽[Vka tRaۊZG΄D^"S)h0(Ș1zϢYæGD{ n /a'Cx>v,xbEH`WʮnP'ahJAYn`NeKy+}[#!;f)o1F{e֮;{M.32fGyCbIF2]a<0}Τ\Uh >dYh v#(Kt5 4(ɦ+cjyGPߐdP9b+Ɂ1ITvudvd3X`-{ˤ&RX-1i[۩|kU__{/~keA& n 3Ԁ(Zrh2 MUw햆`YZKqr\OK|tִcVA޹*@XlU?c{@S@șDbt_s, .lr8hP] = 5OV3Of+bevm *k捋==D2sfcgQأ\xw?Se !HB:=D}Nի(Fz;f5hMզQVXgB>{`CĀÍw% KU{-N?2 Pt]F;PۡF @;KW kT2nw=pUMe 3ҼDteGr[G=[V?(Lߺ a֚Hs U ,4dZN4%P-7 鴁M^l{2P @=sQ!q$ % Y'P;N17WT>3]oXty[*`꿆$E #>Er`l@a w?hkls HOdaý'RHi*NЕ8qX8N@+Xǹ`Ils)bygu:nR/~ v8T8u*f tW2q23cva+SqBq̰z )qՉS31ݮkZ`{rE'P#h׎#LF.1CB3f,;  h+#;zF8<2SYWE3Z -szO*Tp%d1IvQzꆚڊ'bj|癝$䂿_g/*#ÑlGso^&y!a37!՗l & RHiw*ðj߰%Ncg c9UM< 0f[c5<i.K5Idl6Bu(Mݎc4]3BϺSH?R:OUZ[^yVȘl: {]: 6"9:L\޽#\(fhro۸6o[[ |SN 95egĨBj_ۿ'/ǛF,/-Ϲ4j_.XDz>"NY Zm咔4|%W]վ1x'm>uoCQa@]p*~垬Yýnz=͜8ui[ kNKhdzW+hVS|}cR(&G[9Xq | z[=wH* %ٝx'F"(.t9ց kim F%1T-6a73O z8DAW _ȺŽ,^#>.,+ݬ4(İBLᬿmr/q$ TN喁A`\!PQu.RG-ЮxYIr;!3YMa".ob[U鸣"O)Ϝ,ʧçwTVA:9zR`0] n:eD ImGH$ASu1vgԶ)%wNdgnǷLLj\[)}0,4m. ΈHJqTo!bݡZ/ CڽhI_{8Zq9>L9ji {*$ /pVfXbe4kȀVP=-w@J Liv9 ~TH}u҅׫G/91!&Rf޹R8r5]&$MDTjh R4%D↝7D>Ϸ^ON恮oU V\ׅ<7yG&mެ3 PP} S'W 2J2fXE"٫m{2褆ZX&1 ecv07Hǽ|hI]FN+>'Dp90N9&DH1߱i' E>RS'5 SROEޞ;0ԢK;=Iu}L9|*n4˵y]y+4:7A/]pAp,G3_}fH <*oגr#ـ37L1tպWyh]9r9/&s(MI׏㭲nmT7q)wCfl6)S0"➳/ШqcByŨt$"ҪGaFZ XJ벊l}\ "Zx J4z`Df;[6=rаM ʏ ߁WHV%l+7Abݕ4&nv93_05,l|aͪ:`xt =*J& srH|l2'ؒޞDhV \T0d bIH6aSn.Jf'|hm=AGF3'|[i\&jO(vM3Y]yͨ+Ekf ™W3~Fˏ9[Rµ]|=L6VyfxUI^h!v./fS̕x᤬œ[n2%%6.A%u] yޅyN*;~3"uՔ\:[?̉U:ЧyM%61T :܁O L,34¦a"*6kR!B;Y-޽:;Ӄ 2!{06i4S$l$tosI{9Y^V[پNd(+BS'2U-ӨFH Q,N1H ".Q_Pͅܯo#\xDVD 9qnjK}Wo]6txlC2Aw57.[(wfn4>!O5|*{EwKQ/&.t$B,555K0*e\9wB;mexd[!rt>^!v=zwā9+ vc0cvS.#t%Kɋ5\ϊ|&j01ͮ=`6ih7E(AA~})ݬNɁ)^epF5ԮŻZu k6ݹھqgw*x3sGg; WQV# ]IqHѕ9<̃gm #!j#,L1ҥ.3SgcnAzMUBv2>I#~>CP!&>T)ЦCR07̚8f;K4Ii#y><jx#~l8\׎kE{LgpJR}?0` |NO]nje;5%m%|9Qd!?1C=%ʷ&\\ 5D BБu&(B/F0-Ie|t~#C'\3hWJߩ "{Dw *pXK?ֲi{  1Pw3e0[>iI-;T2DF3+ XN|Z:/GC'NoARU g8?N`rq◩N.Í&m~H+[49D2 DR꺝ߏ l(ͷvj7etghDh*DTrݕ[q{`g/!(.vDj$4؝mJWzq) ) I ^pr@48V}qhE# Up-g|Kx)>:e!%CXH2J(h ZG5:pҬI\:!KԜA;a=BJVC26;R+9-΋ nL 6UXk[06 h?.is0 ߤ)$Dkoi\ ҝF}'&W*҇1:?`xOty=%rlNhF'g]ȷe69 yP>PɓSjIhq%ZN+\+ݡSeaEejAagIc6*EiE M` }J)!/׈4O,W| Ij> }Gc 0rDxQ_n?_ahSP I=f,p m~ ;;cF]u'{Z*jR9$p㇑ntN]Gq y6V)^Lj]#> "Dniz4z]({lWP'_-sx0 ֫,D'Q4MO8PM2T(:t26'LzQe|4([ ꆙ M6#&3!b)}"[w-VS_@~Ex56_U‹sK=ZQ`A}Csx&rǶ0~ C'bp[OYLe$- *,HU–x""jJ -nR9a_=nQ5!55g%CL-_bZNHX˓>Mv`ly >j gEy܎0 dYB"jv b aН|ڌ#"Kϭj?H=Wq)rDÄDLP0K'R l=c l =۶tl{uW9C˝6-C "4詌`8(=S^hfBgml25ňWy16NW5lDQ]>kCIV' Ięmk(שHA;U9fse[;F?[}FA!?A64 S>m1c}\{)]hOAAJ|2̧d_݀yTʟ R+ q!.k!ķt,p+}]0XKZ _w{ 1Oo'Oa,b\98E;dWTBhlDq<y ו"#W2LU`ud/EɟjbHg VLT"H 8ͩ34UC t3Ns}o?xA`6z4ffʷˠ޷2! 4.ɫU%zֵח/B$y~k0r0duY{xnAdL{<l0lDzbےSf|aL|#8tTJ ú Hqٞ8ո@pXZQz5l7}^ ΧزCُӰoI}ԝdc'vz.(j/odL[lvHR[Aӷ=Qʷ`fPiic`RMI0,)ibeoXym"l< \HWd:4m{GfdZa,Y {%2~2$QN4pv%}ΰw(kC=ᬤ9EY'd'Oq~ #Qls\6Pid33'7f <K4~Y{=Μd>AqK2(vF⊊ӆ` k7''3'@#[1I|}ʰK9b%wȱc=#1U#X7LD M쒘uܜYnjJx_KdKBQhvqJHNi / &>V#q YϚ tAQ^'bҚH|VFq Wߩ K3dvm|/f i, -ΧR۟>Ms͚o7=(j:Hp~ܐ2|m&MgH7@4'>5F5rlNjU#h%gxړ4iaJ+=h}A싽dX Ѥ| |ҙc=T- Ì<=lֈ C cuS|-ln6,'cuz![صkes#L|ls>SFXsn(.QbRܣ咾awkI+aDQfZhH)(w-S®n&/h(-n BLGv/-}L#-Rf8(@n @c^yLBjTF;>% 'M?0Q!*eE`i^mLWKɰ]( y|Y{6ZKD N =]RB/foU>)R-[} &gOdQz?l}Gw ˫}y#͏w+֧Zv?Ֆ~CK .|V`8.Aje2*K#vg P9e]Z7ʮX~( O6eGvgȔi^@@Wp~]lmSו0V&2d6ɨ-BsO'@Ξ"I$c-Xpfg?(n'ue&D@%u RF`*Tpg@7[fkxǿU';8}Y Lj̗ Vc=nzbvs '[i 2+\ʻPsGy  a0YeडڕFf;l|/tx'ҞM @؁'F4jɷiJX;4d&[ڍSq4Ք,AưzkY3PB( ׊7-ͿH=p0Ly6xT@(<~B8Rb$Qj/VHw0c)eX˚ؖxSɃ`?-*qXDHQ1ٴfSZ/VyJCnHMYz9PI_/&[!H@5+'r{{12Bu\r'fϞ|HjƁBF6JBN+K-y_ؗ_쾳 l'A!_{#7O*/x7H3?Er|/H[JGjQy՟& x: 6!0d|-~F{,yB' 9÷6f,BET&Ld)uyMA 84>a0KXdJ"r+w}2r/;|>X-c:^/1ksLz۟ˏd]+ppw!&CzD#n)_zsi" _#oٷ%OlWBrԔTB~qF0{^WD~T, bxݗtR':7uv;(beJ;:t>gZeOPXD-u-OՁ^jfQT(pjNu³zEyuOb Fxϻ1M0ÔY F4APg2W Α!A-)ȼc0ҪZ} Ӛ:/j0 | *V\9ӭ2|FUnz[>"T<Q`\oȨEK#7:OncT&٠nil5lCR\ן~tRRo`)F{k !ًa8:7ծQHQ^dhRɬD .#f _(ԫ@uQ}~*>6m)h TN}ubl*83^ rRҺpV;N?^i~p,#r.W|NTqI6Oqej s?u#^uIw&Ix 6ż؎e*O9nV[ewuE!a)lԪzvhP+Y<-4YK~#" <&6ݎ`sC(sΝ)ƌj84@*ւ7D礕ZW4-]*l0ٗT|+ }ң%H{OX8՚ \]<`#gBe.) <]"py—5sK{"7QnK,^"ӷA 59R@eeUݐ=(,t+GI,:א5y- QTh8xr}x^\lz==BpI6A#WK&OOD\!pj\Ԡ+Ip%pqSe^a̦ ;B_]9M}!p2RaV(vJ<Iu_fXw>&oXfV4mP-= Vѧ1fݢ)砢1&( ʅU9i ;q#ɟOꓸQg ͮ# .'.C:}q'u_L`\wq7F*q7 $˃Y\  Ka3+ J29Pjg oPIշ{6w>ڌE`XhV`&Ll㸻ĠG3dJx>L.α9h|UEq=3nź/pa*~ WGӽ~o$3 5*ƴE|85-a- =E~yR3Ð5B-FRZS zʳwK^kge48twN!? ϑ|P;Qd'mILz5 DI?EDdsw Koh1?"~MFZ8Q 4*sZv%0 #C|{@ʙ_yS;ƍE–qBWYS%|榎;=ӿ8H^={DsSYx ]I5VINi[ۏ8wPœy&=}rNAAu/I;v<[Yn \"&sM ~ {H*"&id [!șMמK,IAdxYj9D: ́gV8d-|o&ڵyI^Δ`Qn +-&F)@Y\kKwm4ВS`>hƋb̔P#QupF>-9UVU} ꌔ65>i<ОH'pB E^6#׸6J"\:u9IN@`n#QӆEbJ$n>SW 4G^C L!c"'khemnJ ZEY\5d dg2CI~}pSfFWtZ=F>6E*Ř%m.A"En^wt#zX?Vi[ L@fl  :~{>( i}0OTM{1d{>Wٯ "CFО!1j޸wÒ%m"p9i_R!9M89wADYg3D1vUie]+a.;;:[ Y'Y>"tB]ߵz'1$Z 8Kr<.zycہG. qW1:tv&yV:!wJG'8gDxITasu26x+C}ㅒ 2 fc ,δyM)4=/owcRhējԲcgEZ2ߞgPXB(31i=B6I !-˵zL؎_rD6ƤႮKG-] HR);\7ϘL3l"{Cų(T幉!MKI'w~D->T3ݗm&SlG] %A_0 5%e8@Nj*Rb+Ԯe 3TNH:v0G$ntO`:0[.nNqY%scւ~D*Yarf3VS g&2>TODM3)~1ݳq3 >OpqOM @V:Ui{{*亦 u%ji,](F#%\p FH۩܄đFD(\jߗ$^Fbtzǂr& oM)_mon}NO؟(A8O(A\#ioPxۖ'.$Y$ 0":ףsVe;0KYҳL7YˉDb&Q2n5C}ȹ%Ù0ضk<̌az =wtN NHl8N\-8騏֞ѻSMq1Y,lPbGSSTP QrɜZ)@%9=;2fd v;<3r47lqh+DGS9}HEطN`iH"<vI&%#~5tlEmΏN?;n_Rg.]ʾ3kHWVPĝrgysGt>^uI!i]NtUY[yOEXF+8m牼YH叽xB{bv&ml<" x0PDZ^{M|v#})! Ed& g]z?DHVL7DKl%qhjbv)#Lp#J{7L+==u'+oh[_Vժ|Yn-<:Bqz&3*q\9}Ė$[&I+]hzaRFXZ߳_E=q/!{ QлJ|"D&5%&]h1C% `tck ~?r*8*KTH&ov`cV͌ 6}a 8SV.XimspO:sKh?1̻?į)|10ۢ%6JQ^K1.C&7)1?Rьo甑#@RՍq~Tbk{pZY"W\\P[7ƽ +?Kl{w ۗ/c榷B;C<ĩ#~]sg>mg]ikDؤbzpo@8&Ys{Vdqk|B w`ZMg!똦?xg<&"/IqQOpI*#&uH0@F5w,W[xN)Ȫl ~w0:.fSG'JIyXobY吴(Q5h5mQVXF+s(zYͅoښ|=Iz "d k!.iUZ`|0hVe?emzq/YQ" $FUw V!O*'h9sc5 [m2@  #ĝ\0${x1 ?G|#ӆnh0h_Rr5Z@P6 ǹZh#b/ݭESD]dd@=9 dXKJͅ?7 Y^@yѪgj(EG%OsFp=5灐hȖnydb NLs7㙯/8-V D*>BF2nz0-1*=};{2 LBD݇ #zcc$RZ1C U%3S=$Y>ȫϕ:͙ L[<pl6znԪ6/+K1Vm; hfhUD{ 94ޗRڅ*m4:n/3̊V#mi kExqWl7drʣ%iiSֈ@%~*N=u,?:; dY(VO/JK4s2h||0>t̏蜦f008';WQ$"*)lC+:86]BGOI`69J/VEpjߡf6W:*jsS7)6UvU4&/I~[=LbPVo\$Зi̹ P+eM?߅f9*`nCgJ?!$ghՂvM^6~=*#jvk@KGL|^Z&Pl*}2؊=',3w.|o[+)(f˂oSM{DZ3r!OenxV44,kpITE_EOkY|󊞕H3X=273LۛHR@7# 1 s.lY] <ʜĐsAf.E' UO:vR%e?ݬc#`!{%13[E3梬"d7^p"IltaCM;~BtRUb▗%e41O@jB]&PWzI9E}hW)B$c8Y{׃`nNH&5/ ?]z·K ,V[ Jw3/q-ѱ aiמ/Eps߁f/#t -eJ;[[2h U緸:qxY{pCR5nlg3&[al(X.-Byf?6*ƚ.PF3s"+W=N7PMl߃x&֢zkS&CSғz: _#d6g]w]2 hc ;_&ՕltL|\+GbpCqD)9FaRD%wM}mD(mc魝sX<: 'tiwgz*c;f6;>]VZkF}ȸ$4 T˱ ly"/.â=Z\AL7QR58EX6fBZxk6\kaYo,o>>J0oǞrU&!϶Ik6Coe"9ndaYʒW.0-g_=dTHaw+1:T(H',hm :[x *n9| +> [! 4xnG~IH6` LtٖD> k<cAID©5Oo1YA~_3q‰*dǙ$)|AJL N@g-hE9Nʊ7@vwy?+ZRMxjژx-R2]} ӑGɂ1ǗhA |:: ֹڿ8HS3P}1@|'PL\N}'nl'b^?5O[H'Nh߮邮Bwq,O9ׄxI(f@owmd?N[P.{lpJ QG" K:S{!lz?%mHZᭌzF)>1k~ὂvoB_aKRP A1fyl<ǚ@K{ofQZ!̿9؜9Ny+d#:}7"t AlB&Bm^He,t|M٘> pqC hxP<c}u\]?}cX eXIPp:Yo#Ks8P'=wsL"_onyེ>WvA/Oh뼿5%vȏ)&7(fQS3{NR),SNتhub#؏ jǹ>.5O~tlYN1ps(\D!"Ņ~T|Δ~ח[Z]kIsO^K YT{6g)k¿_Mex@'in;: 2Bf\5K*4ǮWD5|7N#4(? b.賍ۙǤĞǦPOG٢4MitŁB5ei2F`blȒTs'uJDh qjJՂ1vY@K/7M81ۻ#!Gh4HE5 =qԆGZ#1^$lmy7&l3Sbz/ 0Wȟ/㷠-wP?EJ t`-Csj,#Ah"6pZ0^|Tؕ~/JBʓ(… ,<9/kW"wAU N-2 9"NU `.D&e )n“[ jNf<lYFGgGTL[%{ :X he)g1@d2MdlfMRd y|C~y//^#3Kep"Zsd*x\sϢ&amV5]:yg_,3AgOpFTݽK%;d5OͪY  ˽,'@Qk4CVqpIBM'#=xΏШV(\maOEg~i͝WM>ΉMe=3DYu`ꅰf!E=d @uliO1Z /kK#4i,t '>iaLiբp?LJ ȇ :F=Ίj{DuՃta}p"R?@hT5;Url6`l TE'׻nJ)4*Bg?i䔅}kOIzw 6i RB8jf U\~+hmY`>.yid2WC%u2ucC۽fآk(кW4 8d^Hd& nm b\Q^WJ/0 M #{M{j?dgǻ|a @H>IT ҇GV (sޫN@$,[NL8)6 ;kDFOn[ק 1;Ѓ!1͛&jt%S[/{U{k E/AO wɡz|mжNaٱ[eԂ| 2Ј6]+|=j#;fJ@x8Ih`!)o,>bm܏̬#-*ǩE<=6? Krl4܉A녱Kǰ]Lx˜ӚJKkz]6;+Ŷ͙W>#ʷk}֬Tv?$OXZYs^Jl*^3o_7R%8fmL+ʣ$@šeu6THJ|apMEpD6<an B1EULj S|em[cLOA<[Ϋ4|pCOh30✭ z["I8}2׎!GcmTFMԠ,eMM~2 %_HPm\P^-%ŋ^(2-g=覾'  TD@cK9y6=Pt+s+#C/ a zDbQ=ulA^kgJ;$73̓=`Q/ހ 6A}JÏC*wNqv$vX}h