bcc-devel-0.19.0-1.1 >  A `ep9|0wuDބǤ([4sv4ӟfz PaUN?#: (ocJleeEٲNCp{<*=[ X&'UNS@=)HW<^8/h?eږZjB3A4iV`ccY=" _មQģΝSG^̛L$G6:#`{hKk5aeb4524d7fceda563c8c891db3d14dba0a4722122a36803ee662a12e1cf6165eaf48622ee36abfbcb02123a1e9c0038ee5a76be`ep9|EK }&39Ȁ)Q[fz`V҆B?@b("*Cpq!{T{ "^ȬQ;Db.Ϟ}ؘ @xSцkK/&D?3n.צ?AB;}ʂs5$˨Hq~m4j9[K|`d?G%p\2E+91९,KպX/s!AD I'ƈ!<7Yz@߽`>p>?pd   D 6<D    # X K   X   ( C8 L?9 H?:?F G HIXY \@]^bCcdAeFfIlKu`vw0xyz $*lCbcc-devel0.19.01.1Header files for the BPF Compiler CollectionHeaders and pkg-config build descriptions for developing BCC programs.`e=sheep15ϛSUSE Linux Enterprise 15SUSE LLC Apache-2.0https://www.suse.com/Development/Languages/C and C++https://github.com/iovisor/bcclinuxx86_64;WJj* q [f^_ Q)n !A큤AA큤`e"`Un`Un`Un`Un`Un`Un`Un`Un`e`Un`e"`e"______`Un`Un`Un`Un`Un`e"`e"`e4c04de4f44445688c3922cd0a1509af8ac45fa6ace90f5cba2a79a775d6a15b80b1fcd45095e1e9db71a723836bda45b5f31ab0cac402984d779dd84607a03d46b8c4c96afd5cb8a1664dcd99c2318db01582ad2f2a77cd2ff1f979610467e29e5ce05d17993c980c1b0fa0d002c304fd0490fe19455d17066ca37d7df9bda261dff48055fc3f7704811c6a86272d5d86f0011444b8d424fadd87407b493b0ef12742ceb22ff30070da3f23a45ee977520f0080e96dbb1ed78b0592542adcf5c8fb6cd904ffa3522423dea76b519aae040e472d733da778c729e0c19b2c5159bde273be41933a8fb83c6a975dad665305670b64092b4143f2bca7ffb6a45d8f8541a33549084c8e0610153aa173e0f963fbf948a8644f2afb18426204e291fbae92bbfd76a3fd31e1c6eebcda51583a1064f0bd4dbdbdabb6676c956dbd12ef121e58e39ac47c986c7dfb40828f8399fd52531245adf1d099bf4539d8d1bf8bcadc9e87d1a335379ffe3658547635904cae6ccb8b7d1e578d0c25b50aa44db046e8e35136436e9848289364add74834b640177e7c0e1af562104fbf946c3623267204f82d05a7f3e1c7074b38c34b0c8c617d8c22ee6129698ff3e2e3ca8077d78b1705f266f986a2c895d283528a00e865a8fd0a8d0ac5a25d412965350523599de393143f53302b0bec31c4b1f1d9672632b6c7cf01c30664c80335871ca85c2748e02d679dafa7e44c1e4315a3d206689b72a34f850834c2998bde831969d448d8344adf4a35b8e7230d2e883be0b57bea62816809c559a25bc2044f483cd8c46dbc0986673c6ca356d100fd42ed16af3e09f0498327dbb84a9c9c465e9d954b02abd42860b54bca527716962065da358f99914c230ed7d4f786a3ec9017688bc996daf49a4b7db9e0dc55b01a7f56a3ee2c18ce3d931249379e75869dca369464fcc08e3eb2d93aeb10948d8145e688ac882e358e4024e7634e6428b7b56libbcc.so.0libbcc_bpf.so.0rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootbcc-0.19.0-1.1.src.rpmbcc-develbcc-devel(x86-64)pkgconfig(libbcc)@    /usr/bin/pkg-configlibbcc0rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)0.19.03.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 librarysheep15 1617296189 0.19.0-1.10.19.0-1.10.19.0bccBPF.hBPFTable.hbcc_common.hbcc_elf.hbcc_exception.hbcc_proc.hbcc_syms.hbcc_usdt.hbcc_version.hbpf_module.hcompatlinuxbpf.hbpf_common.hbtf.hif_link.hif_xdp.hnetlink.hfile_desc.hlibbpf.hperf_reader.htable_desc.htable_storage.hlibbcc.solibbcc_bpf.solibbcc.pc/usr/include//usr/include/bcc//usr/include/bcc/compat//usr/include/bcc/compat/linux//usr/lib64//usr/lib64/pkgconfig/-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-bcccpioxz5x86_64-suse-linuxdirectoryC++ source, ASCII textC source, ASCII textC source, UTF-8 Unicode textpkgconfig filePR+^$bm:]utf-8850eb99928208c72e43fbfea01badf3eb3117572978819c341427d9f4644d048? 7zXZ !t/Y,] crt:bLL ܰZU\wiPuÁtqPP0:4ۘR*M09RXeVZ%H(h]qkhkYXLʼ$WN~㳸k{0!οa`Rh]ZPsι(&HOX?4ij,7c"Az sư[Opn0͇@OR|h\.Q$T,8_ޣw$O==l*Eڪ] qy;8DM b$(bGaWٯ*PkB8ZfSzu#Ҧs<`(%ga3KU>YCG1ԏ7cc;g*VF-a AC]sqX{Ϊ!GsVykP+wň뫘nA!0m*>287mO"ct~ PfX٩]4C3Xo>Q"^Ӫ ѫEJy)z}aO"2=X#hD#qzIpE5*+g=9(d6>Yg|/Z塃Ki8|Du.Wx%vf`PTMP{xED3h"-S.0XXم_. Os6 "VSi6*]i=KIcм eF$ 16yAfIB'B /'&Ujm6FTu0? }9)Җ߾=t6ċ<*6 VSkn:*K&q4x FF15'/?vԋ:; #^:q?bX$]]lɯ3[J]Est?ju F7V.,ǚK UVsPVv}Jzk+oHϽjpXEo{8hSY{'XUuw? vKx̀?jԶdOh҇zł`eӻ7AW\Z, #Xh{օک-RঌXpr<~줠 !3C&JT͸%4,NrOjmǥrBwנ&I*fsmMUӼ5Xu\ *kBG@d\,ăyfed04m/ \ 6:]1bI [O@eŶ'a\d<d]D.O2hÈi\86Bfac-uP\)5taqYUZdNM*0ý4@FJ^3C~fta~H+> $^Q QGa?϶A;Z^ʿltjx1dFB{֔42sO4n/^+5@5)2S#0VcRT $tKRUnfO'^N)NHT2GK(5Ɛ _Yzy81r3Ծ~gIloGu/oPb|{m`Ff'eX-L5u8E8_Ʋ#sŻ5.rgl6|gO/j# " 7 kQ}RB0]!t㪥-}LN衟7>&xjP3xQTiܨk4 I\{RO2AVH0V?Gm'uV8>!u.)&F'?#{k衟7!9őCY(ws⁈ZnښåB1/#28y,G2[: D.XO @~VH<4! Cjzh=r2k`N4>tA'E^kI4X厎=AjIhɴǒhlL]YJ {jCd(#XOö?Lҥ"H]}Ah r]ß&H̃ /.f(qgJ?9Ԧ%F[v@D8,0tAWrvO~+0{ZֶoiKu{scDtss;n0Q0=&S.4RM.鴺AX[ߵJfg`DlO/"ILܞG0@܁>fYpX VAs%]vokA0<)Zܕ,Q}u WEx5̭0kF"mVP-bYHe_je7b ?X^/3U޷ml$86`T[5Y> ˝it~2xЧL|,.' u>JoXM#Z5 [& .N&nߤ`J=IwH9 mUr$m3oN 8vȗ}o׳΍m<ZX,{jn҉ҦD. iM~Y_-;o3 h{GC҃ u#̘R[ci Lgrzs6o{E-~0Y+DR.tE+R 2KM煚BeΐxOf8rvwΙLRRN !~ۀ&t;eMYzyX4]-ē%P0ldg`/  O54&bG]Fqbkn+hFbi$f(XO'A&,4D(e"-NPtWP~?OO`q N*2T)zv>Cq\_w<zJjxn:a >x`KG\߰JK$z,ޝ82-eL' ?pd(ZFl֭,RK$[ڸ"n Qx<|$,sbŔ|sjS2:؞U DX?;x)9(fܖ~75! (%۴gUxl|qf[VwŇ;\pc&oHF< ,?m o܈՞'fB** Z/!FZD ۻ+W(L_`O!ͅ1N3Yh |anhw{?8Ǔn]˺ʕv"o?R]< T˳/N٫iJ^CSzHP5W47@pX)d$<6KD)/eS `ԕ $nȏi G sKPߔ3x½Z ;ҾZDt{7#eekZCv,9d I֊i N(vKl X Q#'i}[vߠ#md6 '&)jm$,V(nG:+OAFBv'V h/efCּ h7J@'tEmwvr.X4 l>N՞U:x,)oLu7ZGUewes\ "1w!%`8O?zֺmy|OH_N' \6{' CۀWξ75~EZY7y~J\H0mxSjQ?SJ[ߍqj\R`$oz,>cӊ 8 J՗Ob>Q 7a:QL2:KRX1Z똠kSUֺ9:BCջӦAAk;A{ 8&mk$3,9=vf{f5q^zSmTJ* Hoa=}ϕD--&LQV5؛I`e$ĕmX)j Ӥ'^8,Co#q5z0<^{~Wҷ]V^tNW#0py6h8F" ;n 4+h 6`In}xӮAQ@(' {> vBr`:=|*H`UN,zɩ\c 9NzC(<6~ĮsE)3Cv);|tSp|G+{" V+c(\~Iׄ{ B5mG/7jĦf 0l8k6Z %2vm%Zl2f5ԁRTWzq'uJ&CD&D-Ubߌ +QwWz>Ex吀I: 3fǂ#fv7^2s&P7tEwgË>z21N>+ֹ9cPC>Y@~-G!bƠe~>OO"/la[%w2j 6l«[P^3F+PpG1sr%ł~ҘYQЯuvjwM/N-;rz鈕c\w7uS‡J^T1Eib)$0|XȤro(? qC; }bPwH{Wʘ\LN&>oGe)7O12)Y c7õ4!)u"-^ʳ0p # l+JdGk7aC- %؁!ұм9gO:v?VAA$GR֦!XӺ =GBA+"giZ)q\QuaģFopByXfDŽx-0^]xAeCҚ<'(d}Y@: |w̩g0#'Rub ꏫ$g3b/&G6gn8IjH94]]T}_[v/ l4:/ IXAr嵏ʆ lB\PB~@T =Qs22mrȸy|/$JKH3ce(5O7Br`Q~coAv*u6JMHoUO`I9YO,Fҁ3ҋW69`%ܬh82"0nK\݆"Al>nѩؐ&3=i䈩5tިFwOMcvN(WD@kYo|gX_,WFBgW Pt_QN%)WT24 및iįG,{KAq~26 G2K5m`WjXzs\w+@e>F@WG/lk4 HQt0*`h@c͌ @:B#1Dsf 7np'*Hh'%l@ϬV/K׉?z\TSJ}G8yW$, Euxou=UvG16(24^{HDBoim+[sfѳ2Iu9t/lԈFw D.6=?"3yd=|u<;{dP/ j6\ۗT4簖$6P?8X5KR6(k1᧋rb"oSZۼyrS#o8M\Xz;?/叅8zC6Vb6,6,{7%NVLmoyEZ}92Q1v5= ^AWMmiONgGba ZaRo]D'@)Ax޺ed Dwhqz7^%x"g2_ 8x 'u4ӟc%rqj6OH{{'oq¼s@9pqOJu(_'V^jwѠ6C6?Cn|hH֋ l6lIМӺ7++sV$U)-'.KCI&bmE,VrMfL؏iOnR (#10C/RׄO9W} t*;_p ~)x @ybjcHR 'ј%0Wi2 < !|2`u%we!1Fj17VH ЫlX.vJ&˰pR(2GUT?5fԉ0vC)rLgXsa3S\_^]v8&Xo{Y5pNH/D<'p;Gg8nSCW4q{@mEj+.`| +->2>WL6] I.e0U{Ad*Q?ɻ$S{}ķQ^55eAsA='wchFHqAhuY/ -GƼG RHU,Ɯ3Y"RwLX!AjjsrH=dfYN;ݣYvbx&XD5b $ ~ojW\'Cc-͐4,\ޟ,ظcJQTM)bAfҞP4s aG:6>?褅ߢaXSoy^/QԆݢ+ii~7ͧd}tPw'h9hsڤq`R^1[D5h3=txX9IDOůVWoK^"r,tr&ɕ1 uG 5$D Ոi9,Σ@lse:j25S,=VҘ=> s9iORAx]K;w@r`AzL@t"+7T{?C/EO2jg =wnXߣQ!hF;8~b Y~ؘ ? U}* 42M;}Jͷ|P Wӳ^ek`W-fd+pBt -AtA71jFKvUtS%S鱕%9( NB8eb|)aCX2<-0 ՛S}D[B*Y/M8ݰQd\-9Fh 7T Qְ*rWlR \sUSE:"4 8ω53EXoP<7V/o񘕬r9!Lfe\(. FRzu)CJL\ ʖfBmuZmo"ǥVԚ& De5S>A ulj=Uہ-ސ 7*)Ke%'8츤a'RTl Lc8o{XJI%ƨ0]0uEvQ]:,(%b? AkmNᩨ0v8Hu @t(w,2lS *!D 3_6KZ6;U I:t|z( JĩijM<tiOo iWkOOTx*di0 =t@!r1\)Qg(ul)&a4k$q,+G:O& YUЭSJ}(p6{qUL^&)ypdTXkЧɵN5E8`8No_QBv$ǻٰGXäDZ2 {Bq[̿ubLR9TCBۅP|@-hLBS43I>71@ ,o/Tqck+PZTaNˣږ)` oGjg+t^d/@+(gVy6qh(kF+Y +#&LSTkWWHf8p =1GHx=d%3\q{7& cQU9YF#<BYg&e|Fr\+X^mpی]LkYZnpUJ+GsP)(H>CvGon|XVsbvtkbUW ț]5>cR2^/(ls0x8 Y0ǻ9I5TIT86 /& t^[RP4%S: GosU6<${_ }+]Ec6abq8fd#i'qD@#8或O;{n"MբS(+]8 o4m=b^EtaI־ԾmbB[k<җ+sfC-ݗ %mmRْyZPNS'Mbh *Ƥb_.e6@8\՝L %Sg򊫎RTe| ٓ5pKNR;mG4B|rug>Nj7&B%g4 SpHAMCgj5M_dWw6&hm!¿P4Fn%Tgb[A7w~֤L c"jZH> BgA'2Ш.u'S/:dgAnllrZpZ|.o ,7?5p^ڱ(0' 1 ҮMQz@!^-A Lɑqgx|FP?2v'X5a.+ޏYM={>"BI|>R wQ NqڈpN8}e@Jdq\"n8ٯPQfψ MAGaQJ72@Nr@ +D4aO:eAV^#]08\PÀa #\@ H ZxTC?|d%nEƴκH^ 5['vQM^qmZuzOh;>AU_)ʧx-̸q[n. 2f]. Tp.997?0WiϺj=Ryؘ)6d ﲂԂ D@D7"'q諵z RPǚvVӽp$isWlsE>?hߵl+ۧ} PJ)"^;( Ƀ,)D~-d* :Qp1.*p$&؋[/V729$(}aŸ Fitue*FVJϿqLspF.'ЍQ4ǹ?XHhnÞUWT+9SKo 稜i 3+z]Tx&`"kƹAH2BRlƀ0ws 2Jv.ό>T^xbtݔ ^GZJ盟v}4t#+?VGSlTfh`$ wѡG,ѡKQkF[!b|+@?=i? ܮOit9occ8Z!{/C ͶV<VoB% #߯,pΡM5?+ :|]r.Ep]?%nFU݌wN[B}sv:Jc0ة&],=W\?@uȆ3lNC8Td4^ =̐qq;ٵ]3V^Ds|?Gar8|1MM!4R ,_g.,OcO$>H +bHi_^dg s_0;[\2P2 +ɞ㻸hW0oC[oS[ŽPˣi\ l jGKEsj(eMQcD5}z3ۗSM1ͺgF݆Zߊ{ Q?7y Z-3e '?yȹqM@ó쿗z.gVZDEb?~$6;A, L([cu\Os_e۬"VD\JV3Z,9k,6nKW-p~"qI/ֶΰJs~6ޫLjk7^)<덶E7;%Ji67!9qoh<Q e V>ŅlhM.+/19Uiʶ%hsxd:@G{DքqDIf'd,?il]uR^)f]Whѐ ~N=ZcFPF6=[ /1I ;)Ek/pTyɭMpk8F0stBl bO8u0c.bVd3Ơ;qgMWŗtnf nNpX}F6`I4AEl6AZ{1/$=Nc^ֶltxuߠD;VA\iٹ rrFU9TT†^: ?9B{`ծeOFٯ!Cݔ,L{f J٧CQvO4$䴯E>FVϴKh5|r뽏o7iJl.eLCA4;xRBFKIG^hE%yGWHqxgadCS:+/KȮ_j H-廮yңGd?!:v*}%|klqjssFzf @2c^hQ9!&rcP Ltx~ڋ ۢl9>Kl TQ)29 |d-zhQfsKjOugὂ.s/Z<*Ed>Vk2V;CzU)$z#M[Ű7j|z<,p:LPEίc̤MrGJRFp nbޒ] h_-kFѐ&bx9=NFS].UyqD:9eD?\e$ ,'aƝ wLb*%Yˍ2gHo?mExqv#V. R4Yq+_?WpE? vD^"K \>['Acn9MbQr$= xݲLX)BpR5 GCX9^o95fhadQ_O`֎ .qw1&^8vIUVOñfxr[-]X.3:fI\&hghmv1<&?-6}PYÉ kMC[٠]qe(#7|*3%qIch? 9_^/*መ OLHnAvO$kznSprԃ}'BY ϓmNr^ f5}8 .aunSu. '`8$dE8O fP͈J 2BJDo!S aw>9/un} mU֩i3S!Qko3+[Ka57s^6Y*Qr T>JO ^W#O?:B,':\}>n{̣2 f/Զ]~ !1D(OL%[_6L͇5 <NC">dxPQ0;SU0mPvHuI Zuj'eb`ќ9k(AV5xO6ƪ5'9} b6sN&{eiĀ ºk<pU% ;QݳE"z-;uZˈu5s$+q;G#* 3YwN9ۉ \&MM W< /*{HAŮ[:,; nXFžjasttb^F@Rk[jF0_ $VAmX/e.&i'@%W9t!n\`} Y^UNpB% x,vCP"Q6PM^=fVv<QjuXVd 0%H==jՂEw٬VGTjEM!}!gbg5xԽ7=g9^:٬t8a ڵT@ՂKۇVWb Wh(k)zi@@z'<(~By)U;z:m`Z$7sތ&>Eq/?&|v2҂jL) 9ھ߭O8Npүy4*B 4CʾQFN?2R"XH; ql(z7-M# eٶVZIoQ‹νXޙ%6]|LDjESDVM`fT-WGP:(*l;C r3e\Ȉԏum uzNaprPr17 ^g T0t$fF7C)%{uE{Ul໫(N3HiBnD:UG2jW\7GO WJ> 7)KI╲x#DgtX"iH\7*RZ;nbۏyq8ןeߣ`D0mّ\س+!5|-.3!f-'b:l"V! 6tSB8t>6&=']1;'ɾwt(LUMm`bS'$?.Ͽ̵C7 ݰ|@(@h+h3pNR[apMӧ o3ٗBlD,Y!b>Zéj!,< XѭNF϶i! ^e'uj%OgR7}JsB/Щ3 MpEosFbOȤ˦t>8 7ď!:jSrC{JOӉJB稖H7]9G= ćMT< ՎXa[гY@C?>IЯRXh@l 67X-t_SGlV[c#'|M϶gy™ . }@ 01uV9;#4+d@FV_naהR!v2x{P%=Cz!tm@魮e(-y!Cedk'ׇp[K< \+v F/d.Ɣ^)4CD.롦J1ԍձ6*}||\#v- }pQ8ܱ8`lÔ].E SbD!uAE^۠ػly=׿ڀ` tK_|zSK9CB[T88iR@5f-i:~U{ʐp&da!f`vT-}Q)C-\K &*~xj1 pIIulLn}3x }k,ׄC Oc$@8lWT18U^ſTuKӊT*a |WLH |; T҂QB#f{ˁ;xVo'@7eQ7 OC|=DŽwnlgM~IZ0s, K奾qX#A%p?8ku;Jg/&2\iJv{ V'GzHUTm?ñvE!yZ%+{)JZ$}U_@i-`BKSfaBX{H(QK "S*d 5{(p;/#frQ)Dvw+e(]A_KP!pG=vVoK `$"JWJGbl]!`-gq ҘPҼak<Rᴴwů*ofk0}.i9Vi?99 sѥa>>q314p1oi{Oo@/j qoB9:~a[NAY@-maӨvU.9E]JƸwTDKm V&aD]LόB(y*x ^h/ћqJ{j?꼚Sm;k /5,Wt%u:&[Tt ʶ>6ƛαJMT?x36 ոG{ZQew߁!SftO5˨m>#L$D=Gb_Tgb}9;h&pU&%X#|@],ü4 [7U P;aQ}&I_;=+ѿaCK!>ҍrqs!FyB7ZtǓ//ݡ\G[ JM!o J(eɵʫ(G+spuI&qebT3LZDԼ$W,å7,,B:.TiO#wM S{ ó;?.kuk]sv6`@]@G:Os23gF$~>ܒ[g(ݥ҃XO#`qwA!*"V!ȼQ 3\^I?B@Xܳ M)UoɈ)B 9O/).ʩMX'DTVQAmԘwo'wXqȧ/_S[@aDz%}x濇)/yI`Ժ=x, G ]2 )XN[SbYY; Uk(0MTY\° Ψk@I~4Jc!ÎiV^(PAi5Aִ3zMڱ_¥ճsN!:]/cOP!X$;}yy ֚hnQ^I*+3MyOBu F/ Nu!?D))E`?7 ZEK{: t-kYMT!R)ۙ7 h1bB~9J'H e8oPTMq|/b,(Tv4,jg"+~Buue ޹>JMq4hF Wo՜I$9<(Ʉ0ƭ~Tvkں=ˑR=Uጟ*On`kRgQ_ˉw2=Mo>Sq쟫 s.8W̟7kʶaO=л.ҝ0_L庴[yp坣CjW@s f>@E+H=bwY1USy v`m 뇄r 4a즄 Ph3*8çW# j-hq *o1 718pos(X'ˢ _r]+h(pT49SA0ҺFns].>|5?kˎ.M([nQ wTkyc:~Q~iEÔm?gVLi,?WokZg dm`s`JG?zoA]Gp{j&n塏0 $pO}B'?ds#,inLghvV~(%, f6ɯpJM#r;!CH]ʐ@3]z839f yЃI&= E6F^F1mpy0k΋O!5 [+Gˍ5^e>̹i]&q{`=d:@"_n_M Co@Y@hAWA.D̑7#^5lN31M - 8Gl8e`]Q.g\t 5(4h֔J[ @v14߅5Rc8k\)nϒEEsD5Eu*$eVīIW`eK@?yN,Kq65ZmlЖ^7S'&pztsY* "B 6%1-JDu {E߮HAuaJK'0&)?HΨr_^bCm&b}ɭ@ݶyx$Yx l(; G~Z`ׁhNzw9$b :彡̔Js7Zz$}IR͡H%Fe8r'<̈m<]x^~5`4pg\7'fKgt%~r,}76E72%5y,upƁr m?I7=C9տ* rV觰2+uUqG'TtRD#A%4 Z|`B}PP>sc;uKӧN@nw32 8UۈӪؗkL]\37'8]eI2PHoZ=[1_ԏ.Ljg!f~j(TQcQÌ c0bkRy m?2,x' ԶC%ڪ*to\+%G'εE Ӭ}(~^bTielJ s-fmȜlqT<]ۦpT->zdt<Dp#Hf=~Ƒ=cE/ZEhi˿K#_iSVJoqS[4@lTiS= 3 KJANbC@Y_/ʀϊ@x:pJjUQ9eu5u>ߨVtR'9'e>Ə`- R b6-uL-? CFYx~i] }9@, :MWT}>g㹐>EǿM{! ]\q/}DftܐO%Ϊot2kED2{jx6"?esm?)}1 ln#}j\[U83x[[1[0wN3(5& p~%4Bfh\Lż BZK8ʅ (BN3DoJ8`]ZbH 1";B =9Y!]ne.'_\OD b׼AH;@FJkjױAgӵxsݎ behq"^H>?Ls9y_S8gtUd8iYMgaeNVB%(.sgڃ'E3+K205L,N)W=mSe)b+_1yKHz@ǬlzN? + >;ς;3R:,O^RL6Ef6[-]ZyQf/蓃ER!Ӧ2mfʫ  ᬠZibº H]҆*sd cx~N" )M&%%Lw3&B$gS@<0dk+;dҬ_B ߎ֣㘽(봜݈nA©TS @~99R̢K^n+f>_ǏJoaCK S}xѡK8ĉp+~azĺfsY DK]D1Bid*>{#-#Z}55 O:fV"AUTlyP 9 "Kӣ%SutMLͶM _fL/3,$'I"Sv]#%s?TM㺆G+]0ZT):(q5d~cH;4^VG{s?mEؖzAXnNB,,|ruluuW"%TfZ[:sN:#QҟȀKv9a㼯.ڔ#ԍ)S#qeI㒲}زFrz|k[n~i#4Fݔ;v]!Ƌk?U]Fyrr_2#:)bጱtGR%T[x/ؿ0z?3A^:wǯ۞#P ] B y;rm0bV?|*Ӫ|IgJ!FfV,)Ѡ!t65kEItg4v d*<[o6ӕeL,q#qu2mRQ(Fة;an^ٮt{í6LX^F*XX\IYL8-2;`5ss45Oz`#x4 a`RhyJJܮ%Ɓ'+qvPTߕÖJ}S?}3, ^[ 6)DX ,a vi;\* d(rVoۤqS3oOʍǶ Sx#];U E ^h-k"q+ YmnzT|ٷ0P X Eh <:q0܄?%Įפӡ$Xyx@$ɚd׆j|ā< @^~ ވtzuwˮ"2O&EVxS nbN+|ɋ+AlWt0H*cbeu&O4)NQX-քcVEs(s#H/YIMwO[nC<4U ٿݺ|K$D} >aJ#ge[˭ bWÈy=N|kJ(XJ3v2BP,ԛ>ta|g]kcJLؚHZHjv~o+̥]$A( >A1V)z\nexqBwlFK |EĦ̌"?-.(=O*< ֌渐TɤRFB؋k:Sy{?Jud5)WMf6`gU CcoYCfxg[+-Y oas]eZ.@K`\Eʌ/]l ƘVJ䙵Q?L>3@p޻ Vo*^8Zyp?";]ZM f| 4^dD]+!C.Ά7uE@1kr6sk8mΖ|qOx/F6*@J&<;#EUnq| լ 1J=v#aôONJ%}2Nh\a3ofy&pK?Sin |d4hT]8hT@"e K-N"eVFbą+gJP{Et lrPƣ&(R8X4Hpl.^| s)^jo?O-_2+te.\ŌOUatKBy=(jn֖C" mKƋoUd=7һX'9]h.(hA"{OcZiz6C"$+9A/{-%A9 ;Dױ d4,NS>kf27H朸.!l&]^gsO\x?iH?\$l`~IZa ~:Dreezdκf+;l+Ɯ3{o{LbBm昺*"taL6nS,LLT6 ̵&sF\AeƹL(0F{NM4z^k8YD-1"YWEn7L,i@::=HpbK/V,/NmloX戌ԿFN&U9BSń4/i;2)[t#]1ZĶ; NAZ[~Uc3*|ʼFQ0Nw5gwS)7,ٟPQtESIjȚAsJ`ٛ`}LA&)mt :Թð}ʡ 1WȂ0k}:Ž|Ţ{;RzZ7 c܍jE]wRI,%p(>مZK\{24-hp=d:񹌬Nr/~Bi^#4>*BIC92 ~r |'s}Sw?[ZE`EYɉ u8'0n+N4$P󏦹EXS=\7G*ay bHy\4jBÿ^K&G)wש#{<-DN/2H`lt!uZoΞh"DDZՖԎFM1 s*F'»lacAyuBs K&+/uwp&4:UfF`[-߸ܞyز3!$U#mJ,Su?N~ŨRQX 9X^,QA="FFd̺MΫp9Iox^9UCk˖$r4$y:qJ7|T\Tfegӑ@G8Z,*-$&NPv2'ZAUx. %OȺ옟;=NF20h Jd|2f?mSoJ.JyZ6ܸi^cV[~|ȉ!¿^"0< G;L)q2mﯿmK޿No.oӽ(/W | c|265NfZL=jx! _88B X{ =ڢ{ IH]}ViEwhAQPs$N҃/Ux4o<awT6aRN[yER%$r |s=IaG؉kC̆"VȦwO;G HFy輙fwlMӷx{}!t ۡ %6$1̓:3sY/laӮ6 v&H|~ѻp&e]y*9T>ZXjIRNgŸ >JD`U!AW^|FZEUIV=lIєy%+HO+K| O5調|.nDtQ= Vٿu}oP\[y'&{!VܡCC.?sgZyx]̀FBE1 a11#۩u3lQWu]W︾VKv-MrRd ^,`#]2qGęrTr(nTBOю& OB.dx,Jlsߜe@y?e7}#Ќs%l)Q[dT~RDċ ^]اD))>-ڗk +.(r{mk%>MN^'ۯ#yL)s,J_v ma:6NA?V$_|lu %JWhM,s{ "~HNLc|wwx0l4 ϭa l*1vS԰sx/+G̿],=ɑ)P e}]76#^} 6n$"^'E%v$tdkQW#EI@}7i ń\]  kplq3xBKS{ o/>bnH[U O5/iI7a0#MT]Dγ%'SQ̺ c%8CxATFEv5S|ݧ:iEn0%H!LVG]pr'1J,ZږPiN\ʴݯy)-!mzW_s=+"4 $b^8՚o:7ggse5Qxm T4ڂ}~n[6;RܥlĕkÌ ~ϙ=y+m`)gxW$#[܍QG2X%^R0_ܹeCSWK>wd.a ВKARC). fi7E/aN4J zifZ8;An[5Mg m5H^0E+u;dFQЗA{vu&}!%&!# LgS=)I5jWk+'k0Fo":H vd6 Dl3pٝVPO`ը('fr4>Ť"mGKWޜԱC~դ~)娯d(a,A5G5~CDA׎8X.,|@hςA|1ǻ %-v' RBFW~Me˖sr08V6b ׼B-DC/@KN "bQ$7T2Aр!3xaiaEC}>fӪ ŽD٥W,| /L rF`'q#t  KR6JwG(F`m^xu\#(43#. <;K1ߧ:Bd B/=WuX I b;k 3q4>!l6 gf6?1FHmc77(@-Ӗ b tJ?=!b e)5WWt=ۂS)Ub,x[w4irdUha[03Wj;pD @ޜSJnEJ]-1iƆ<+A*x劤˃F[ A&DrL,؏警f[S~Ht#0MxS ]tt(QؙŨD׺]uM(HNW !6MC *ۊτäIbVN2֫] m^8㙠@ĥ zb\W,VAXH312q^IAρw7Y[ʚM$Ҝ3rJFY'LdߩhšDWWR  JEPM c#FZ\'=yx6h ~=jk` Km^؉;~F?Zǟnq7d/I@1t"n$: ZzVg rjƉzM79oѕ<^TZK2IcpScH0 X8Ī6Ev8_ p/P|vB*7x/$ߨJ1`( V q$D=CuZ ]O ,>"gR!&!r[(:])wo3YLo=bvT tpw# ȐAbZӅ]Ǖb%NKt[ώ I2{μ (Zh}ӗ8W Ԍ%$\q#_* š-b'-)lUNFgwx3P(ʄ8*Atdjxmݏƅ}vr,:=5yB~5M>S((7$d7m YܒFn|eJO; 0+^fڣ tu?$:{Y5s]/V4y)/Cg.݋k E4|81>uVv:͍MlMƺtV[!h GɾqD-C_g?LtQ8! K>/Btw?z-'uxB׎#bԵPSC(8O`s7cfU, m#~[aBTw`G „`D\>qGٷbkKI7w0"uQ)_:uBc!?h &y;?M7Z>Z"SZsJS#0X 3UKd%flVP oZ$;*y-]<= ]3D\㪸K'hqm.%$#P|ϺJn"b~Q}}ÅC΃[geTyɶ$ ]mI^rn*<#E| )ߌOָs[w^̓#0{@mÈE$*?ˍj>0sy5؏+zb6ppc8b+!-0 fp7]+W`gUL]LsLwv#3`I88y PF|Ax]d#LBl%Kk Ǹ rh44(@Mf{^0]YTmv.\l+Z#q/LAP"Cs;S7g'. 9=:r=I.E!$DM_w #B..H4t3z`L #,nr"5DGwLO}]k9Hȹ0j^%ĥ~IEӷZS6!*sv .$;~ `9&ԧPg^ұ&c rK*zI3oYs'FG{} Q0Fiwq׀Ǥ>)#g'>Ӡwg,oRLa2}~jݯN#D3"cwj¡"Ҙ;2k ~B*ƈMMK:̾ :q < -Qu 6e(H8*+]$YlCʴjXwvKVɂ$o!LțӛM;9|9C:"0<sn\sxN0C:~aBcYb $=!l]|~ôpG8qOR 0~4x#-djIbO?l0b74y8qp~Se屆 t1+#7D^򜏷F⼞o-svD9O."z#wJ߿XJNȣk 7䘸J=Ir J ?=Ðm֝s6##w*wP½digw۵@$L;M,r1{s#a7;V S%ϭ2ZEҍ]?'Y#^+mG;Wc /Z!{]rb40S*֊Eo „:8ߐ,Oe]_vIŧߙ&z>'%?A a/&^6S+r+blrp,ʿ*T|Y|hGLyQ}EX"qͧ{V8VG titG0j(̈́2(`PzPQUuTlނ vEU6@l?=Q9%,8ʹ.S3`#m$u9?AA[*fHB VU4jԏ(-ʊ$ i B|hVmsP-n5n'M4:q;K% 6*F>*q-v1(e0|&zߤw1TxzrKTNt+EWƛBF/9xL#vwqeHW~ n9;0uҾ7~:Ghh|`7/@&ߨ|=6M!R l#s?B {{bVhm>Vz!L )왺إ Gx?i]4Gگ5%G9g2yj"3*Jfz0+*ADφlrpYY 5zwLѓVanBΆ }C)sJػ,2aDWŮMޟ-1yt@1DC.:tuvgM\kM0־ wF #-q'j ]D2V4^NmAeRzQǬX\uݓ r$ -?[Ka?NhBnJ sb3?VYS-l%'ATR߲+g  6-[t:FD >bRX$MyfBMtJs_zU?w#!_ސqgfs_ͭ6O4ʜo[>G{͕L;&%,Z09'!8}Z?-ކkg,z~PzŮL^Q&'I{D2%KqUL1=X66 rî?QΆ8:BCk<5c#.j߇1LkJ9ȶTrR6Zx•RH,P4Z! "zlܩ?)JEjȾX%B/ =.-戧wUhy7 Zݦ։9_1B,R!bOHCƨ_[hӄd0ߝBGl8x˩FtF|̚9$t'x1|MH5fVp|04{rou.S]MM {o]BT2ZxO~' Dz|z9 JF9.o wc!4-Kby3"%fTWH,<^O!z01bf%G8pآrt^Mtb}Ydjff\.A&'^}"w&S#ۧc33(/&VH+Z#ƜSk;*X'Y6GSbwOW= xU:~ZIjn7ji,PA+2D%ZւL\#j5p^.H-}}\9fm}> 21*}8y0n?9Uz:}bSYĠz|+,$~đaX]`i pge m<y~q5\ҳ%J1Mknx.y$!4c@4Aɤ"iR-'d< w 0Mq{șkcQyCCQ2Tm?nw} hR t1[#ꔆdyQ(?c4Cg~SO93zΦPuO0,& C)#)I&sg7A[j<_ kPDܲo'q͛ghMx7 ]¬UwXqs;)fnR,,ndc[D0QCkțtԹ^TzggSRX H$/=Fb]|WPN[Z7"<{C<"*nz0[R,1@U{cڨ*6L. @P̱6_qFWރeu%sѰւr.тLLJC0=nbgwWKtg7ԐfMdXڅr~DZ墙q߼ELyd\ND+%dA<<=Vu4XbocT]Wy*_ VPY@f/54]SugWVZ6ժ֢tRq#OMj̰Fw.Ĥo)~ZLR 1zIQ .AYo ȼöUi։Kg7DaN焚ϓSc#/2|X >Ծd gLFF^h.Oe!"wVPlhs%mU.0]+hn0 JIu$ H\1"3`,aWw(&\/oM`2;ʄ*:hLHV 1{lhǻٟ.nN_)g 养Ma[.ÚnKF匑γ_y_qy/C抱WHGًNFzNiyѿiT,-&b ~s50M+ViiFXYN0%Xw ɘ fj@4{XN\pH@)[Q''im̌$8@UJLD<> 验&Ġ+DAT#^<V ?]2PS}ԺF%`f7*;}9qJ7((d_6}BL$X0ĥr.)|:;+sS id_sʎ;VQȓƓX ?\ma# -4xx>@=*yZ]iH a^PF̿12`tm#[y k&auJ(`LRH8 ߒk (L0KSD gG-=k)$ 9gk#D(PL{y& %a۸ > ONN' GaAb'~ Trfݜ!dPO}ihsmLl2%&F[M  SBfMe?N۫Xƅ=>z븬뷀RRk&8e[*]ך|X$< L!=2ρQ3>FZ: )Q0࿑dapP~(Wluc3$ զJ(Ȗ*4 8Zcn;9NY5龭vO=!*]s$_ :+Cܘl [>-wb󠾯Inԏ{p-rv_cn=;W,B $-_!+9TXNS`Ujt+.f&xR E>(sϳCnhj#״8'+ېPUehZ /EvNϭ>Lq+_ʊ.SF<^4 '2_͓\\K:hooV֣(p@#-,n ) ?5w:nDlp1aNYOe_gO_ö㰩>FG'jC4p+2KOTY[uk}5uhV?h+'w\N&,EʞMQ$.P MÉE]&m1lW,rsڧH>י)@5{u[eᒪ=2cXجEa^|yLtzW.}hoz#j_{Xsx{M)s/꤇ctBF7rzu)ˊLGcr(f!%8zXk?; Xr-P/QzDƔTTg(:h7VJ Gm4әCmaY HGV>#*- FǭqUaI<8.kCX8 672w7߼0sƃu#,ḑiGfR'/- Azh]hX̘Qi8&˼xٱof0V콴RxzŒeJ63iL+DOI&W*/Dp">zy=ڬ~F>OBMC}p E4bc/\aêOl14B 渒B؇yJfdJ3n)P@tzl^{| p(3zu^kSAXKN\H-/u\{{= z:S,Ee 5Qq؃{7Cd|jpZ.c13RpI0V$xxMy(<+E\SN |J፹9 Gx]CnCT'3(ܴ %-;ackeUhvwnj^h4+qE6@O(0cbw1E1g}`:̹(m^ pax_1u(znhPN7Vsz'?VUğA1rTӅKql-IT0!}~ 8v^԰\w1vaɣ`(C]qa[ҝ!\ Aj2W| A!" DJ2c͂Ј Kp4ܲb-ctPЭ9I~kLvqm5T4jBWAזCwǽƪG)9Rl'Ưjaqmwn)GnJxxU6XR%).C:r$)D`R64i@^Dۏ2ێBMd|w+y9O:2r"AfM*؁0EYlj.] Mǀ-ΖQ5WxVc,VR'uZI ,W|Mz‹"+e vgX,mx;Pp?'˪BkcZ ۲!([R̡wf2?&v!!FBIQ:;8Xi*@2fbl σ:SxI2^ⰚZGc,)7cc7Ӣu^)lK]V8ݸ|=ȼ@J;Q@W;w8E ? vMG1vm"Ea ht\ 6tSIM6g2 =Ofi*=)rG{9%4cJ`2f܂5 G-Y} OYSc۵.YYNAxW */wFDI\=n~hdV. *ßءCɿ  ߑ -cr$xUVoI a5}^݈R0녎Dz=~gQJ4,6&V1`m h !VzwMYj ݏ6T&p*;f[=-+`BI]W- {]m͈kHpmJxί|hHPs}|rcg4213dɓʗ$e:kS#ֽ Bj @vn[EO WҢ_$@`5x ؃qy;:5 =&L ? >lrYjQ!q:8USaW=d @}@ހ#'1?wypEҹIO뛘Lz?S`ߠH y,۴.DM|6 H\zҿTV*Peu,&m-(_BMރ$ǹݽ%mdAnV|G/={!@;\ĻjV|XN#Zq&ܺZ1Q<6av;&,WEpDqQǫEO8o*^gmԷ?MdZ{qB 1\jFbY4XKʮ3ҌOVifE_.*[";H/ܺH?kc7~˕u] EMV^ڜjԟIv~V~N.řAGҗ]&kxB>H^TTδn7,W".J 5:qGk@+U7^˽ʓkfߝϷvYg H-$YcVIb19(#W:!E4,d7رV" ~$4= ɏDQOt\X1]}ԩѮ "wYk4CvD320JrS1oA#>mF!)>^Pk}-=7d#LፑIy$&P %S6:8!2'f"SUƍ^~fpoeA9k}>9L5+39P{2Sa1i48G0$KsӅci~HF)v}0.剩{Tj7*cӭuİ@|̷$1 ʼPI,>)m@:?GSn>efؚW[/iDP)VYݞ" 8 ZszrUA[Cp1Qyl>!U4﷗Z)-6M $R0Es['F9"VB"a"p#q13zK2גt7/\#CPԪQ6XNJ1uE(C|&%ɛ_t:5p/`D5s?ky(7ؒA/ 8֤[AVX${bspAyF(=>#3&耯Vsh'Ll|2D2+tX(e܄'l%lG@gԸ|YP"|r~fwlAcM gGWqvz*5-ֺQ~vq~"JLzw^"{7&O(M9RK ~*j\&\>BfnNO 例 8HE8 @قno!;'oT]S4eϓ1g,ý0'ڶX6Nu=8#Q` Hʙ˲ QIO=#]iݗ6gꃒ׿ ҘtӸdޛC`5ӏ ᯘm O+l;L h}q)O2A YR{oFdM+HQaw! sN?&sʁ/z8%c^%QmfJ g! >{Օ ">!!}G)ւ1"Y"@͟ϲxj!Y/>D"UM55 hз'T>TbULR_@MP^#&˅bvǒ;xQB#.ܰc0JcO, 㵛0$_wШNT"NTFNEUTkQJG!ؽ,pg!0q)]!Ӑ9Lx,@SN޽E['\ O$οO*Bgiܚ&vx~ﰿQ(?F+I8+}X/ i 3P'^ULxά١?{!TwC $ 3ML HpllLfm䅸( -6qXQ~;@cOnਃyTH-߾>!yЕI[&\Hͼr;OjB!̀z&IӾ>Xs/$2.&|_ƣ }GyRK!m^EDE:^\qcJrg8B 3^XZm|mjw^c= 2o] 18 n˿E>XaWvkl2Osv}iYH।Zlt=h (RfBpuYhBx&`(&MV22&oT%H5XP0dZjϖ,{Fv*֗Ye >) ik/_C )ƹs(=BO 3|oƓ݁Cԁ#,̶KЄi*7R}bdi#MZE! ( i^ f4|7 X>1Ge `53~sҊ3B*ET ޿iHMy,X:ئ;3V$6v!>IF_},luLM ml3 U'6y#I>3L6N/bmaa A!Dݽv4b+P7{K_~(0 B+`(?rɧuؚ;Du^"b6`uQ9r;UÃuU 76-+Yi++G'ozxf>:&"{PPH+Vw _$Hg~iCX汨ҒOGwce߭+`S3C$iI9J{ }A~eg8H:%5&g-F-cVm&&@VQ}5*ξ#<rE?c+U;p*=bb^ÝG}Pַ1rmRD2E*-5T@n:4kTD ŽNrx!fq D|#߻kʽvR6HiPQ\jd^Nqzg;h^ }GUN(Ggxm4K97e% c*:xQd.`ќ*3[jUh7tߘpr|:p%T9{EnCk}MⵂBQfdc QCPlVzzp;{|"xRN]{ԠJPdÉEc!k<.%ª Skzct2 oZaiN ;|(?<:y ~‚5j>5TM%\[=F"2 t/>蚍did6R biژ45= SǤ; fO mSy;tp64C4\ W j] '"kkCL(6X6 *XѨ`32s 2Tsc5$:s!J".=D$-]B3n<)6 p/-vePP2 'nRC7?bUQ~vY`u Ƨ Y YO78Pv;Xǂ[KN)lbсgtZc(4'/)0ҡ^"&"F-)70tȐXx+>*y˵NlK12gɏ`OW͘v+N3x_aIvG3x `NU g׻.S>8ٽm鬀F`h!!IQO\ CƱ.'(k¿+W*R3"v&ݢX}n6kX%.hgI睾i7nD̽Ж|Yԩ#@gpe ؿWL]@ j,BX)xMoU)UXrL\Ұhq_QQ6ƈ$V5rLu3_%5U]Bm"k:\ EO}Ɖ&-qO{╿6P0}G`^u۟)`i"̜F|, 7z>UOtH%q~.uE坥k" ZK8jg Q;yKhZsM2U[$FS 6_t7A ' V 7.w UKe=&,˸Uia/_#5;bdpj88˴cX;sV Qe$Ψtˉټ$ި_Ն]pZnAh-ܯkɾOKah6OG0J K:9]Z(2,[2_cؽwR:ظ,΢V`g+!X[\o\Y9Iտu죃iAd9Nzu"դȊ DE*E9S$`(4!"D81Eꌂ+2N7]~í<L]OÛK7"qovlCͬgWz&Ơl2i:[N06z,=DYV?볊5#A'Ls'1k!xFc18{D;;MLbAː -J$TZ!w;+zҲp(xZvJzؘ} cB%rT‰bvnU3Ep,{?VBj4Fu#j&bTfF ]P~(`W[[2b*/I,ZgM[.(45|}f @q2~k/Z<MH]2-5/@OPQO&ײնr|-D /CgOCT3Hw) :]3Hmhl3IݚD 9 2mˠt4t>@&XM:+a?g?./1 Yg 0I,z7P ngſhAˁ7wGRIlנ!e"IQ /Nc;=v[dW-q.4o ӄvesZ i|빲.S#dУS;@>*l>IݰiɽmFiV6u5}[dpvАMSwP5oȩq嚓4!fWTĦ &;L^2A6e礀/,W~+JJBb\#3*lwumO/ (?.vC"@>%KS=O0Nt6Obm.";,h΋ ",czBB΢*p* ԰ kJ.i\?'X  ;#31xk+WE >866;#aAkN 6!Yz(x.4U뗥;|A:#UK>|XLi~quǭl 5ъP L{~ drnr>1}!:M#5$)r`kȐ$Z.0NdCvM/)jj\R3q{pqip$\֊ЖM[ӗ du(2J"gfixE+1TBEt?ĠI=4zV?!oj% f{"⼃ѡ_gk mTdnLmlCc\MϨ>y<-x4|/_.[f.US`%y!__l4y= 9~ƭ-Uqt\f^C:M]čm>2V(x{ʭ>3h D6.UU>yZ/lOmLqńYI2S!)A,y+~br፠ w ͏xlo98dX2sHtlh9GWMs# d[qxTµ'+['BBp}jME{uυ7792(0#Gl!>;yZfxI-h*zz$1$r_ D<)*)G5TrIn8798>}D+֒lw<F |1z%L18E( 7~Aǩ|`rvoq K\3!mw 6QG~X )e h5Ւ,ٟ7ht>tƐ5Q0pS#^\F|D:Lp~7,1 t>NfeՕ=ۊ+O):fsF~˂ (HAD:xXE8zR#D\]Ń 6l{kv^zMgbDbomQzfh2#x7 ;@1tRG<( rJ&VlDw?Hp\js $C-RzzFsJ<י}`bg?DBAFV$b= qRugx5@ ěBv]#zW:0>S  hpyw8^ ʹjIn^Lzzw1vs:qпA(9aWSɔĊjP49g"GFNu@9ZR!8*Fnn4k`t3WMc'9ظ(9zn_WJy645`;٩$EXpc o4>8^/ƋecbAdFB _M[f(N6k%&Xv$Ρ?kdڥ jT+xMqqD p{ w y0o<->QeЙ0~&S'i~!bub8aPG4!fűaO6SKL_murXOEI؋#[RjG<%#}iXa+{wN]ptCBL91ó7/ά ;e(ܝ!e%UH&3b2A4J 5yjAnwQy~i{Ǟ'<4XnNg'&K- OیTl9|.ꎰo 9X3FJ0 X@Д! 4(X.j.>@l'2vr7)6v '6T.JB߿U35)Ŭ0eb=S=JI߼S"{ T7 0tol W$m=Cl-T?'9>5g;/)oz |WT9që,V?mdL+bnb!2`R tn(~ϡe6! P&=n6t8D=]D)[RFrimox Fl} N @ tb5J6]! b.Vm_hNXt%8_p*5i,g]wN7#JSn2׉i 'I0^J{0>eQ_bU0q7Cݞ `󹎊+?GpMJ2?:"" _{R?*/~4#l} Gvta;gH hdi֘q}SD<%)y~fDZ)RLCwZzZ gSO.(gs@xpjQ/Ci|".zhwnY+ҵjlQ/B FK'lrDt!؆SBF= z8 'BlnN)eA v1$Ƨ"A%Kb 9"'j j=N5oRԷN2 uDw rĄ6bx&5]V+ ԌO&;ܟ7x(lxkSq+!1kx0<[θ"b68ѯk&An=Jџ&O-0kha/[ OnGSc=.iN5=qEuJ=ZzX+V/Nx |sD8Z,~mmy8UNٵa̚')EF-2\Rvd,2ڔY-_VF4&_+OGYzlRQ0kg +Ydd#^cfA4i:*:eW(`6tPG 9R0deHl2f$vhˡإF%6yd :%)Ǘg`hlYg5@Aro")u #bEQkW<>y[%Sג.n[R~Zͭ~uV5ҮGs[SxV^逬j6BT~>u4hU:4}W58lM#J{gO&Vh0o8KZAՠ _):b.yn||W ^cP?мԺXyC%^Šk-*)g~?j>дZYWBE{@TH iޝsQY2!ɍk. hP"͢ _ MNTwa$3Pt!*yʼbȄЩ=VoOx@)^-l2M} 4WUǗW0r3k K!I/@ B%}RLLpZL kw;NZ֬m3\ǷىRczBi^*doTҧ wIiC)ݘY{ X28n.CFd}`}-4ohluo{Fq{9>i9xk}mw:Y^iH};"z +'mAM >5#1QsJ!є&|2wſB\XXr8q=ґtBDn{À8z XW#Ibp+ 7oӰ \>o;2!1As24җyKy;GjuQP2R2 z:"eW"YurSԠl{)K_L@ˎ+P% cm20PKy]Wfb毤 TN1uanFn( Ph"=\/N8j܏/HEWR%LN^uK@JtV'ȑ'r0l ,LaE~4V` ^?Fc vlhށF<)ݗ ٖww#;fH=Yf B6.7W(\)Q~|4I+}ES6~ aoNjH JD@vq}>Q}96$8k#mgOuWISĸ.nP'hS  ֎SHԙb\_A*RyR.jP_7qg *vA 5Xp_ Ӳzpg\Z4%vQS#< &_”ItӴ>"/0V٨o<1}zO Mx:FBVC(X<B';-- * .y^SXXwKfK :P1LYOI1\,L?$Ig37ZaNP<ڰ&Kc˩P`B&S|~M6 |g~-)ұxn5Bexd^"8pn.S g[[W-pV6"^B?s0N<&傞/ep #וqOzt7K#tr|3ŰW O z &dl,tvphd?;hfw07T:à\W캩_ϼnW4?WoG33q&wg5O0QhJBQ]1_Dx0%i5oBڲ/5&ćJ/nծrn oMz$]#qVZ!励P}ͮ«5UTq: )`sMԫa&6`b|(iN6~Ըu[1,qع'oJj`Рwm\Yȓb^o3f<:f%n/}-,me,*/=Q#}HFiDOUE⓻k$Kߺ42>[fM "fYL;+v9Zӟ)Gt= !{q-:T-\L̰j>0¯BqúD;f'}d#8Ulz'MgƓ||:lcx_ |'z6>uDc'r_5pWPӊ1cTcѹX,UmB_GI+-dD]$~#CL$߼w&Kh] #b&yj[>ľˠW {93; T4ܦp7t>dʾbn-`2 OlX܇??sf4mm8X`57{,x`,ՄK7Β!QP?=?;Ō,:yQ~'%\$EQSdũNL*8̼i-_`10Щ.cj#q`v5eHJG޹⥷NF1luK8>ZB1ۑ<|_&zFO LmajmhvtZk<Տx |%-*rb)BWy^68f :\K5_mxYZg'Qm&w꼬_GدՊ%sg멑X[_Z{Gk^vM; \݉wkzO02ENN_[=X|u}қ9 d#mNyYZF&_Hj+ .n&:Ob/Df(Ziz?!ЍxR\A![YEg Q*pO^*\2>cށY=fQ¾i8/F:enM]#4tܬS/̬=ͤVKج&7<`5esȢHuWݟ:.ln2Vo&e~ OZB߆t{VVvxwRq=19&eny)H!!">PKjL(B7@ŋ jOLL!AZŠg.}jD\$}貑?„L$b3p28c%-? U|iAsበď;~a@\(a3(l@Z)α߀2rUc7U#HѺ 耉̸b[%zaVr„C/FOQaM;O6<BCYo}MJ.n{ȓEƘ0xr,a|33ˇBll4a乁>qRx1$hCfku_:ܴqKG5UھuuG FwmcGi>#ffn;`ܖ?yȹZhh [S9uu. "T?hlz:oZ(o4hHғS9h:Ȝô֠$@%o:л{;l H/6Xwh8B`K:7sQ[~ee4Vp1 qb:ԦwYw"laQ-Ӝ{a2>+{mCC*[.α~',yBr.)phz@Q[Trl u>/N!m#7 i~QK)A^]0˳KŬ >Yg廴ۚ jW޼.qq'^ pȭ`V ւKJU^97>@絩ob XҡhUӺ` R74{e^F8{#A|1@+v60ŋSise#!6,{|χ$1k؁qA~I㆖I$J̅ cINdREȕ&jQp ?j&B8h61lDꧧZ(['.lRMo]Mi(J־1Xc>U+ SXw`زl :q) 2?1*֜R?T+*WR76ce#LC`ۊs@og5C*Y!S%k $݈,i%1eOxḋ8;ɮ0.kIxb02{E'K!t ߹Adz wU YZ