bcc-devel-0.19.0-1.1 >  A `fXp9|-S (4T_sqj^I 7%˯Z~_ 멷ɪD"f?.ccQ_iօԹ]@M T4/ȜWz (DSbbHg dչ)5@ѿe#zCXkq %πo{IyHpr4eJpv/ P' tnC,DvE}Q9lveW(AOZ:ccnc|> ;]wN\ ~r|K!7dbe3356a954558f8bb246189bbcf0c5c5811ca78d5ac73515c0f5b13a2a125f7254582f94a7df65716182a266924fd7a7a9fc59`fXp9|%jyt5"v}-HtJ {|<ۼ>zU!kcBC`#hpH"?_ΐ>p)G˜t!uX<Yyҹ+g!q8p"-cf8CD|Q5qzˇ{#lP!k[&J.$&lҪ9Sg>\} PXDA*W3B, :$= [ΈfGbo 82`>p>?d   D >DL  $  + ` S   `   '( K8 T?9 P?:?FG0HIX$Y0\P]^bScdQeVfYl[upvw@xyz 04:|Cbcc-devel0.19.01.1Header files for the BPF Compiler CollectionHeaders and pkg-config build descriptions for developing BCC programs.`fXibs-centriq-5ϛSUSE Linux Enterprise 15SUSE LLC Apache-2.0https://www.suse.com/Development/Languages/C and C++https://github.com/iovisor/bcclinuxaarch64;WJj* q [f^_ Q)n !A큤AA큤`fW`Un`Un`Un`Un`Un`Un`Un`Un`fV`Un`fW`fW______`Un`Un`Un`Un`Un`fW`fW`fV4c04de4f44445688c3922cd0a1509af8ac45fa6ace90f5cba2a79a775d6a15b80b1fcd45095e1e9db71a723836bda45b5f31ab0cac402984d779dd84607a03d46b8c4c96afd5cb8a1664dcd99c2318db01582ad2f2a77cd2ff1f979610467e29e5ce05d17993c980c1b0fa0d002c304fd0490fe19455d17066ca37d7df9bda261dff48055fc3f7704811c6a86272d5d86f0011444b8d424fadd87407b493b0ef12742ceb22ff30070da3f23a45ee977520f0080e96dbb1ed78b0592542adcf5c8fb6cd904ffa3522423dea76b519aae040e472d733da778c729e0c19b2c5159bde273be41933a8fb83c6a975dad665305670b64092b4143f2bca7ffb6a45d8f8541a33549084c8e0610153aa173e0f963fbf948a8644f2afb18426204e291fbae92bbfd76a3fd31e1c6eebcda51583a1064f0bd4dbdbdabb6676c956dbd12ef121e58e39ac47c986c7dfb40828f8399fd52531245adf1d099bf4539d8d1bf8bcadc9e87d1a335379ffe3658547635904cae6ccb8b7d1e578d0c25b50aa44db046e8e35136436e9848289364add74834b640177e7c0e1af562104fbf946c3623267204f82d05a7f3e1c7074b38c34b0c8c617d8c22ee6129698ff3e2e3ca8077d78b1705f266f986a2c895d283528a00e865a8fd0a8d0ac5a25d412965350523599de393143f53302b0bec31c4b1f1d9672632b6c7cf01c30664c80335871ca85c2748e02d679dafa7e44c1e4315a3d206689b72a34f850834c2998bde831969d448d8344adf4a35b8e7230d2e883be0b57bea62816809c559a25bc2044f483cd8c46dbc0986673c6ca356d100fd42ed16af3e09f0498327dbb84a9c9c465e9d954b02abd42860b54bca527716962065da358f99914c230ed7d4f786a3ec9017688bc996daf49a4b7db9e0dc55b01a7f56a3ee2c18ce3d931249379e75869dca369464fcc08e3eb2d93aeb10948d8145e688ac882e358e4024e7634e6428b7b56libbcc.so.0libbcc_bpf.so.0rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootbcc-0.19.0-1.1.src.rpmbcc-develbcc-devel(aarch-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 libraryibs-centriq-5 1617319943 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-bcccpioxz5aarch64-suse-linuxdirectoryC++ source, ASCII textC source, ASCII textC source, UTF-8 Unicode textpkgconfig filePRi=ķsOHFEutf-80862bcea304c2a19ab4869813fe13923705131ffd29bdd977e97cccbdc23a237? 7zXZ !t/Y3] crt:bLL qX,#YQo[׈;ڦ"?Mď ^(63@0gbYӫm/ntbvĦ,A[O]ZR\-7Ulȁ不C!\2k#ϛYRSKQՋUX:;ٙ;!Lql??C,Dpp.޳9<, _rtʉN gDS} o8qзrRUPk}Կ0=F5_LT݊%ܘ;n 쮏T4]U" Cq8|s$8 w$fҳ~b /0oOhs{r)WMr9.&NO 칱أ'oY"y ?|Bܺ^<{3RBnzEB>0I- z 6*[it띱a) =P)D_Yb).|I ure-Bd3y@9~5I@lM\a1R\it2 \2Bmc!LVha}i#y*N0x@,"ʩJ &C:leAܽViy&.]u+⽕A=6"$>v{RWy#ۚg:eTEy'z L݀qsJCDTNPZ{3J#)*O5^\x- dsXVv2n[oQusSDmQwB>7QTu), ̬ W\L]ͷp!+5ٵX#kתּ/qsc"vA>w1įxЫK {u" hI:I_%8 )?.yPp@x*GJ }וjfjsEi]\S&?2p`1m(E='FHW/,k ⨪= Hʿ;W U@%]bX݇?du:W!Fe =uYNAi+~,̚vlVNA ӅY .x|q3{ސ B4UxS^9Q~k6UGYtz-!s )ZoX?QupPkׅo=#6HZ?量'ayQ3^:]t Y_Ӊ-w>yxWHn$=,ɎI֖έ**ΫנT֋*i鳄U$l .oV@T?KFS.ꕛlJ&'hf9T%ggLzM`:,:#nwoDx ҔP6}sZE c>FLdB¥5p#d'OG&*겆?Oq!X?VMPļa;>wϣNEĀj൵jw":rKyǿ[MlIGvMe0xѢu֐$X49LmtzDX;ڨ8тqY`~=IF\ A,=ߕ6f)[ sftGe\M2B0"@@_/WV@?EmjɈTڤZ"lN˃ ٩R $Ө9P~ZQDB<ݐIN4q)J7#DD,.Lptr"#N:aIČ̟BM{Qi(yc.<\&aȗ 1:D  xidhkB0ZN+kmۺr ?1U^-PE/uw:plk!zOU\s"%{ptA\V' gI؛0!CXԾx"yQlcx:i ``S9_pCSGć$`ι{)2(D q°S-k"pNWl"g#Yg K`=5>@Yp2ntMT!qtwNbG-N(VC8Ҡ}03C"H6ѭ$XCnIמKi 'i֧F7sk !Ԗ KbVBjDlȢ8Fų1@j@4]ZOߣ [*ĸ p,ǪrQF7&wf}uuA I:BO!1n:Le ckf|!He{ e?K66 WIWW*gA9ʧAoT;$l:c#9c7\Oi1|ʈ ސ. ai.iZ |C&[wzXkT̡nO7aˀGee*̍+ 9h>ʹֈ:EJ]4';5NՀW<.w@?HQ#8ŻzuU< BU)Ngj.> VX{^D|.J$nƷ=rt~gp8[ gDq0ҟ<(@|Ĺ ݨ\2_]h؅b(FЙ f wA?QZT_r{Xm:nG6և,Ѷ?1!SFiM җP";٬:.t~ ш0CVRT`/4}vӦEaALq{kqǩڑGo6$+0/SvKF;?ʘ2UkQRǬ7;f촇MήG&ou0aXٿV.qRFz> x= A[4s>0,L.w\D SOPL7Lh|СLU|%li^9Ժ8ؾsVϡưGXҽAM}IFa+ 1a1sF piۂLe2 tGKU lP{ydoHZټaaDI*й U-,Iě!IU0\e1! ig'$3pt"^d{y{|`W}X\yjYO9uBp6JMsM{4;"*XmS0ѱm^trBs3Yz^#\Hj'}읰? ;3^S:! ySҒ]>c`>Sn)]{aWTdaOBV>vÃ2I}%NՆSXpHbc.\)y),u*zXaW0Myg$/oƏXsU ^iY48t 9/K CY{9!%Z!ZAkF U4Iș SyQ$M,%2~Vu M9]>,S20wú @2D䌾{ X̳ET.F;\O >jhyeV_=~/p.K6]XSx+-C6#;(_a'wpafzdL2k)tvqQ-݇YN2m:Nh )s9CωGl>.okaT#Ʊ@rϕ6 %eFa~+,!arZT|f? 3D(:U57γCsK ƃٳLF]izYom.`?EuěxEF~APK l,5F$%$Du E3L#:MP^ 8:Гi׭vz/409Ʈd䶥& Oxt-*8BONcgjBĈ6mfò [ 3_MIԦAOM)+3`({#i8=)oacA^5$pr7(wГ /.pxɬUDW'HBx=R<|4y&\k: fP F^[epkpDܫd%|m! X#Cdu{LC2#x&zNjNBJpQ ۢjSgPbb^@lۤff\LCzI3VmuђVAI_-> TNRu>>GrRf1-1yR@חe0:?}-/R 3:M-wA8; yXO|v mC ϑp\ZeǸQ /5UiB>9v}iL:㳎XP; }WFݭ{3q. A_e6Pdע<5ԟZ^&& |߹I>7] #!nl\% ży0?O%4F<þw7ݼy}*֗ʀTbw zb S2P Յ-*<&lXm%'PS7g9K.ɐ} [ξlt^lhh_X Vh.qvc5ד ?T2ZÞgB벓cUCs/㸧N;%΂UVDhM@+x;Yz[P m~(_;[FY) LʔJy @d[j@7J1ݵwy25&ersOyU}>"`Y_;K+kA2ʶ&_A{_t"l-+N!q'7%IIȾҩYPE^zC$ƋKk }Q|,J&~(K߱h⇳g`Aa*|~f>mt:N*I赧URT|QdP73P9^i f7f؆<́o3T (q -Eq썦 U{=gbwaN{?[4 sMgRτِ4eS*gA > OHo`'O#`#bύ쩘5b%"L^‚ffR.^nUGV:?f1sYd: 5yI*GҊ]Vk<;˕voB U2;Yhkۄd7y-K(030Ǹ^۵;;rIo K̳R _`&26\6" Cxf]cFXoE&w"^ܼOO%hc;V#Z0U{oN 9 tZR܃<~݃.10 K*WS؝zYJ64^>(g |ZWt!R ~KYZOhgP+twͶihmym&F#ia{DWpOEG.ֈSBH'?N4ZR"AKlq-]9 w\rfi >RKuf8%Z[h9D MUhq K1l5 Azke*JFV4\3doiW 8 zHGCHJ&gI^oQ3 % 5[3{^uBև*!%.av F\9],r`79l97\~q*J"4{H#3^ 8f$*y>dIHwja$Xpf*aI`2 'Fow2,\nv[b:4'MH*0sKS`2- iv3+8'F4 YКmKØ(TeBA-<!D}Vq<(n{ܟ(|q+^&7#%Yg.hpxѐJψD*Vr[s58iK#N~ 5r<cɄ+BS;Ky8Hޯ *KNI-m m?K_+%8zɪ|H"}F__W|xK~+׵%w`fxe߱ڇzV{X87HN d{& LR%fK0O<ƭ՟e*_9acSRoi_4o׏Npx԰r~6ӤQfK}TԼC]+ڨ@:, ZڤohYRdy^ ¦e-;lv{_))k΀|X!]f1uHV'Jy(^N\Vq+~Cto.r5Ut!.2ksP[X@je]mr,'Ky>%o*B.Q$,|V*s4G̩{v?xZtiKSIz Xi`zsq;PI) KwYYfi1_=ȅT`8cr /. gGLޓvh2{|g['iYAIU&HR8EΩ2ؙ\$+J>Y.#:bkT7rB5Q)\'.}9ESZ8LALz)`4aQAVCm낸݀{v|2T}J tf1䢀"^O;onu]_VUL㷮 ̟ ԯcgU8e%KP0ok .*yUݫvtU ikj׺WGg͎dz@c'>5݉6k7.ZCt_p9kyV{+ӠpgDкlH g-?d^71?[aܛ˖UgFSI48=e YroUAs1I}eؤ19ЇT ^kWp_\۽*[}`Z=C1cAk? 7Ţ:Yk6b<0KaSJ/9v8bFQp'n[ܛ5ɫHwQw ]BVվ{XXagɳ'ޠqP Jxӷ+ $ ` ;iΎry[OǝnG뇷HMY%S=Pm0T =/-h9bBэwjg2[E5AͼբL~ Q V*o%8[ғmOgr,0b2UQD;tq9LpX^yz??"r5.<*q_N'}[,L\Ff@Mg>^ e-?ײe)ߡy$]P ֜xAP0hߢx;7)#L1H19˭xӁ^|vi[FIH+7Uy<[@ˡ1$jvμ,O I?-Yj>gYeL2C,v>jujge?^: au.|5*`]EhBZJmWNWŧX|瑨ʞA`qmh,1r&T:M^ƍ-8,:5 E_qem^2(,((Sj M^:.:nW ؎oZ2a^!2w۹%&6U( 6DG@Q`]D ui*XϢICB6QtXwA`b5O..PÅšp8S|OLW7%g-G1{iVzKN#.o< 8(2,$wvg 4+SLGf G/嶙aЎ?AU5*yq>? +74~\P }w!ɐ.];I' p֋#G R9w7-yϫY壐`tb,񕰶c(v\ߘaE'cj.OA` BSkȖHMqgwGm&Cgz'8G^ecRn\G7%ٯQ;b?™qyPcav Y[%w_n3ެQt=eZ 9"gX%gJbwDA W)ܔ$iɯ́u&;/1ѱ/P^'f:ci|:3xVƵ ZJu`55r9fS_%Z03JP6^?ޙQmݛÆHk)&'^m7JR7uW*t( ,V5*+e?2*LCT VH|=d@r>w6/޸;h] 2,3ihĒ_bI|O~ZՈsW<3(Zs5⫔=$-hE:ժ+<ВmkPReI6>`\ҼF他?K̓e xzΗocP]f п_ J|_=|to~%MHJpXxVγ-wi7ݫX QD;Xˬhg[#UxP1jH>h$R`\sA!1e?ȸVNU2p\ ֯2b'fG< pQN)R#!q֊🆡<[67`>hQG&ZŦ#R+2pHgA)V$,1]tl.Y,g}Z0=ZJDk;ݠH ҇?w`lFJ8L"{xf#jҸݳjqWE u%&%c̦K9LTK-|Wچ?C)&NUkEk.v^xU`DxJU&r*+[GF|~\6d*Xm8s$= Z 1A{F}Ux_& (&}U'HYgVB\;vpp,tޘV:N~%^8Im 'UXkoc͘{HQB"1Zf?~ĊFQ|QlDav2\P=b&0mB|&"PI% RX|V(MS|C\.MęsS}z6$̯Ê8ޯy=C_%M)0 ThOh sbKi-q&ӄM+.Ѩ]%ZgbaDLG~;<ӠHahdb-O+LHK]e %%d઎ E ARp9A)[qKX LAMfi=v&ʀ<f{-0Ak3q}S6#vO{'~W+A, o1_ݤa`a+@Q35)O Č2s,܇ZTj4Gm ?6*7 u1}njvo6OMIh.TJr8{l:a>?͏gR(Z/v63Cχb&l/3|5S`o;AtT+'%-,Z=͜RୋƤ/λT7Hd+Ⓓ{{ҩ42iΉ%tTKtqWd\3x"i/ޑH)D(zf@nQxF+(f._G iI/TWǖy }^&1yw.buD!C ^:_b޷>"6N!֙ // zm+l 7%N 9^ǎP2ŠPϣ"wy7Ǟ:ϢP|ZyKymM%]9Kܬv颺$)!O#2dX`to]xQ9>uL5([vՖ%70_5~L; ߲Ʌh7{ k %Ŕ([gP~Nf⚢$ϊL7aZ2J6iѤ'ˋL<²-+^+oq`M.A6g!*LafzP>еͧY{8hw ŃQ+Fkf4yNd:V%bBޯs|ܶ1&_LS9y{H },Dվ zKW%8* h IYXLx8ъnBhf ũxϋԷʌZ jbxإ b ߿([-f\\*P>CwĠws@ :<3P9 lAs{B[Q[g})]З~ d-5PNJrq &b =u dVvqFb6m}P\5ue+ n},*k\&N4V{V!`gS{7i\;(/qDAE!0 SHT-lɇ]:zy06ʪJB ;NuJ>ZptRmH>Ϣ(֐v/%!<#ǹ ǎiA/tcxg9qej`U)Ɉ&`sĿqﱃ~W:?%]goT0˺WKe.RdA1??.*T%79u,)}Wۧ$J6}2* |m.oҍ ܘ6Y|xVy)0 4]{^B- B>f,ڄ&pd,ȗN^pq; :`j黗BDyѨ7r6r, U$~۷מM1bœu'w~f,)VKhY1LD?ۖF-k``O;c^A*7vϐq`!9[O>?Ϣz>w_;D3IRLdK/4o-Gs5xuN;{"{dH, zvӔƣٱuGV;6 48y8T&^S saϰeDOySzfL2V{+͸3ִTןat3Gе1Qݣ'LC u9tf F>f m sZVۢn`q K01ڒVUZ0Ѩ+Փ?]a\CIۧ1--(LUm4jzRX5kw ͓|UJāx kqֿCV^Eo7-A2 xfgCP舀s1ҙ)A~I%_B'dߨc%Aoz-4O[/0e>߲nD+զkt0"Pcp! @q&GU2"6*Q31}}+d× A"]*p o`@c#_4%\j`Z Ò5XQ <}ʼn e(а/>- 1d:|w{&C8'uEһ" {:m 0+lqEa7S ).po4(E&ss՘+0ehEh76EE!懲\bQxoEeqqx\\q}VB{2Dꃿ 2 fu]au`Ӈ e ;Qg p8鷃SA$&{Re&D\*dHNa*bM( (cD=0>6s}uhL %Pl.M/;m8쓓O2FAV'%eHYjYΧRk!G([D1Cȶ#UFs;UR>kU` OۉQWqH8-}o}\>k3 #zzlfz6 àGn?@KMiz ;/B?7i\GVN4;u#i&c,rA=yN,cTi0H!pr1c֌OR@7dn*/] mݱI|9ޣy^R^>ҟ!%ulE-_kǵdָs^\ {*\8dAɩ%ӟ h³- RWG*44 hE!J\z}aoOktrS*I獵Biq?5|K"~tO8 $JpZ!dzՙt/T>^;C ˌ9RnʧLA\zV7|Xdih[mޘ* +tK6 '8+~Q긪/T%ǃ?@ԁbz==@ȸx&ݥi SsYžuz޺(_b!㷬!%6řDL`cư> 5[D$AϷ^H9؎?f;beɇcBƚ"[X][ )*vPi>+^\=[y ِ5/ @KA3?IT曄y硭$-MӫJVX[y0Q("TdVF yӆ.?f zqr_=l~}C^VT&ǽ HjU)f69'ǯ8Df%%zЯ{nr4O[ޗHXo&{+G:Ů]䟜w,ѐpd 9M.{>peq& ̪@@0&c xJ_5CfЙˤglxc#׀F y~1 W ]ޖdžm5AAi,>:ӹ. $N~a Q})Ǜs,7GB >;m~]k2ĢjCc9%ATV ke|B!y}SLHj?se0,>S.ju([k`/-]bnv΁sT G Uޅ%m[kMX.1XFOБ}xX:Nmnі k%1pp㊻ZyFfKNDN_6G FDW!%zݰ:O&G <47AC3!d_2k[e:}5m;y$p!qϲV]$]#kDsH3v!Fs BnJ މ(J[ej X@e'*@"\Agg*J6],iy #s[v7l6eǛkXmwy5:`<P.cR9{X~"ijq} {7kspBˣn/ioC<^7qj^kop=DRu'Iue`!zӡȨ b4.O =VXxƺPN^{8qKzv33f+4sMf#NHXXMuTt9l~v?$|i/8JSFgجVω82; gt(a m7`Uw z/xWP|gl 1q&7 2X8;fs]d ̥qK`9Ԍe涓t8vE]0:9E(Ju*LӜ9)PqR0Iqҋs#f&sv 'C@Vv_JqNE:`*<bE@&ڗݚTR( El~Y6 8rt@g25RҤqa\LP.ɫ\,zsE^PM|oRg1&8JǍ16} v߼A%vP܈KK?˫A\4E2 **D]=lޝ`'s+XՉ+{n㩥d?m"qIQo֍߃Ndb˷$|J!~<"\M/Xz`h_d(Yeò=CQ/^,4 ;Ou6C vÛXm &wPqvp󃞦K-N@K|Qe?:*o>@* %-C(|bZ/6LU\Jyd%k)=5#?~ iW B3r/E>i!K1X-4h $d{o)Wѧ3[t{I$ޏ2.Ν3r9`w~&) [^7=JE%V7Rty|r?2sبn>XFeAspH,NEK& $y_o>[d^1:<ǕA։R>y?Ui.€ iD2= U~Կi5$+/4䀢 EtSݒl#M V5w^zՖж8\%]q4 {4g=9|@3rT0時O#5nZӒ4&2DľpAe*d B=s]y_CfεR0Eblb2&福C.&ro͢=K-*גHvRiod]>( 9-֫iѝspZ!wTv){+Hpia+;/vD(Ϟ_Z'0x<)qXH2H28Bh—RM- Ωѩ;a;7.OEu d5b/"Β\?wUܑ}XD]꫰sizpsV D]'1rnn 8$TgPo'\ B蓕"&1vʾu>iP!,o-8z4b=[6cIp6ȝ&p#ޢ*_C5% :84ѪuKZ)n6.*&Z* ̺iGEq8Sc}Ee~_ĉrSJ7[ dxC!g;2{T-<^*Y2v4ohG,HSj>2|#c,J:_=#׭C/Ă(s _Ra< Bll͊+X n(dfF /ޙPj 2M%MAx.# [~lzg\^A1B|&IX J%.GhVeʫڈKy9UC6_qRLҗk@ѐ]p[Z~Աssuzÿ"R!Y>,Z]1BYk.lUccgڰQ+;XҰZM۽82{u(v4bJr6:pXUL42YVB™d0]GW7Ew"dvFqGXGO(D۟a+/V4r2?'pRAP>x}(W=16K Ca9²!ј9~c!e DPt=cb7<#;1|bngO6?,5T) |5uYbGa}!iv34JWG>;؋(UYG4k|Ճ+kPq_aDy n8K6QtvU?C"!K(lV!?GQK(!"j wWǁ~%T0%ţ% DKf^MT%(>q] ))G4y܋?4DN%2SKB)SkV}oߏ8㫋=66M16Zge|;" Y.aRF*d"+'AĦpa(S?$"ꞂGWfL}9gFJ*؟@Lp ,dg;')҃g̀xR9ձ@i@7˘zB3u 4΋emg E *"pC=K3OըX5Kt^V-yZCVzY]5<|ɞ$9e>1fLd/j;ށSG6,q!Z3h^Ns0H!WVD'@En CT.g1 _w>/;½dҪWs=ԋRy8'؉"F|,R-sU3G1$ x!(5${)? :DIFp2{X#\>FK.ͩ§fy{do͠(M]]P QilTJW1?ƐT G"EG}PB#h;<#vJT_ŽoPIM.Q5li 5;sFx죘R#ŽyZc`6<{]5,_`V7vՁO @Z>Y`ت'㈬aXQ|`Q/ٓՔ,S+eLe/b}Sr<8N\,{ Ӛ 0;}g?u$ǐhPH&ԋcvo`|r柳P¼vFntE-(kM*U` u/s,[bx;he"* ?GN"IGlm&?cTX\(Fɡ^,zSptqH& s:z^9:6KhOLp3u]J," 7* j(#n[TѐF_Z$0;3QhybIufaʒn b$.9L``زXw̫v/7USÆ0۪8N#G$>uQ2Nyޱ6/ޚZ8ak UC1Z#v6Ǒza G1Ǽ8r˪w@yq߇{h{mmõl6NZH\>f[5ޠS\r kM9 G:_;i}5= AIGѹ1cJp3/% LOEjࢺj4e>@@}W"CĆ\L@R7IHjzvdq'.jToHXO Ε: O}}hVbTPÈ|6(@'ή1U$JL䰭)#`ajiXMt,([- !Ƕ|.:wS=L>tKlM}YϑЍY_7V&_j?[hZM1l#=^FK|/.5AV*%M[m"SyɁ=4fIxݭ$OIjEa9#"cJsIA'B2RCNoaKr9d݇&:w\ŊI`fl3xT. ci ni"oYx_ ka eEjl\d0q]:+I¡&rᅬbtc@,{< / 6 & !BJ-%>/aT m1B &H¿eRJ>xp$z!uwxV|n'|m,S!F=T+XRbm>*[sy[\Vں _|m(?"#{,&Dl1}BhԟC +i1Ўg桢wji-B\yAP>'Tə}C!AţƑP 'v ֈ*&x( YI* ܌n"Cو)s/C1feA5qt>H\K@~HE fNwd5a/uCIׯan,Y4 >S`!pDE?Pf]fmrL^eH&Y"諞R1Oe÷Um\+\С;yKvvgqr| 4^7Q/8 7;-ggGGz9ы[M Pnn8Զs&vz s-*xM]!}Zߥf:x|O)MIt0ufJ氠N]v] vA\reTӼH Њ0]ѱ;:oIvV"x8c˨a|Lr+e^l+ss{q[d"+<' MZ,Z^Jꑕ5lBV⇵“A'ŮU+Pf̽A'x sd$xYDq1) Oi+ 5b6?jKo= pdyC^{Kb_ l ڏNc@sE\i(zqMYCEet0`;aĒ?$˹+ZHp =`f_a$5VhV ?-7nMޏϻзNH&.Q!wS?ֳb^óyW@|]Q`S$y$G^É\VS',Pw;kzs#C0׉X-G{wȁ G0 (݌XH6= 역Y3Ty$;P2ej\gm1o$=^j%N?Xɴggk;ȟ! ܇6,NJ~-S@bۂU )g nz?r%>+NZFPKN0%zT1E)4k:,hnx㥻yzƕ-JuʤH0HPHYb)Zi=XƮ"sF Nx,lMc䑐!HrSO ovk\⮠gm@+۬$iqGKM% r"ʎz/ˏJޝU;R/ w44)-)BéD=9ѓI5> g~U;yksҜv-5֋ 5IDVͯoێgD` Zj(ͱ791 !\ :M6Oc$y#OHֳҩmn`q_j jH\/DM4a4Cjy{כ}{̓m_z!ZȦ蛪V\-8jsh?m[^!R6{(W^xD b3Z:}JtQVpoz $D0{"w 'ÐR+;s2bRX3;Z:3EIGh?^I7ɪ)|F \dmo\ގUkruN-E50ˣ8+!26!Y\Тn9 Y0_TRp]1%8ʫW<= <=8ƲAd2 /×Sw**qdd(#3}l"}~vz՞V؁-!:ǹyaV36z|dE! cǸS#^ouS%Y8숧mx\879",vtfbY[+fҀCCL`zZn#;/1@:Ċ;3Z6Dw=;ˉ GV"$4y>2_rvw&:ST'O4J0!Y-|Q)Jqo1F#ۇ2=h\Xr1:Џ$NiD;"at/v_|8#ޠP!c㳌B:vk1UXH'K!SaR5u*_qyبAM7Ya*ָP+6iy<IPY(SKuJr: \ +,3DG+*7K!UώUL8=ʅd, c P͈*J:&i\7]QM` f |Žs"~ qLa[ފHмOF[<48@T{(T祾2{%+l;@XMx'1]/}Os~yUÛˏ WA-2Gc`b0Pq(.lHgMl:=F1# OiܭrV8y2ELiv(Юݤ|h<1y55|ݠfic;1u*ɜOMt( aG]XVޗ~[9Q1mRʦ #.)^RB2!=qܰ)vA|.{j׽*\i}P%kӸ9gm Q㧎r"kO KrCXqY@m5/M@M޲1̵XW+"d5dfr3`qܭ),׏rGy"w/Ʀ01lj[{p_LҺ0~8oQN?5@lDoqLy| F"-ZuszZQ{e_^ͪKzU\!G6zAAtrK("+DfBFۧ!|"?,Rxy\7b[ІyqG<'Ό9f epp]3Y4g>!E{׾:ڤ$2 ,w%-w}/jSKΞ?b!͹N.Lp*O0sNOaLڣaG8Η6jEz=z ɐ\ Qr3P:QL1I2?1|˯"7nCrwk%N}jF_"/4W ɱۻYxpědlTn?^B pTb s-EuOԒD?)>9k#%kf 偈JZQ3d/ZC7.NEuzE[ְI{;<Yy>x!gU=;ѧ}jkIJY 7+/kٷMٕZdtº~up<X3Wy\\&SQʷa0P_HO ഭ!<]]F)X4M=F$trW ,mfM=ţkjC9di ʋ5 A)D$/O[#ebNtG*!#q,S4 ~}3.qv|W^d,g^Kj+!\ҐqfoU/7yw,ʧ!ɗD_(nBxt9آԨ%hp, Gʜ DOı-ქ'u<ڍ֪d[ˏAt 澙k*tdC:9^*f#&mx2z5Aɖ'hVњC3[I 4K Ɉ-2xj[9,m֬Nb=L=UG|Q2}&ȬV'@>`/g~$BJ(|3{ hX:/2bW%w130, @,çݏOJo[v< CtG/أd/|-|g7bͻվWA<#<ؿj P汚h 8;Pn-g+ amx>\du1p(l$DqNScvпzXIE'x+9& 'Z6XsG._AG6lQopn9sRCWfII)A|][uoIug8awK]{`gn5]gK{ wv, &i/A.^(I k_ΜJ=KE ghW`(.{Xw:@VM^PQ5z RrtaqIXfs,# lNa"I2oQ#5Y1ΡzmY%7輤W`gT05PpS1P%e0 Āf@RP&ǚy3 #pѺ5\ACstoӾ_һ`4)&K?_>%Xisk1?Š^dӇL7/.9Q (C sr|x]Bx,F6g0z/NXႼ瞤:UQ($]|=k,.T͸Eg~[vt1VsWjjiY}`Ӹ od7lP~KJ b. Nz4@nrJ[1^dIG ˞W]bTKΕU>>+􊪼e\ˋk]}3֫LpmIV`WPO1l .lvcשq귐%ɛcp7SQuJ8Ik_2Qm,;'{αc^ &9leRvw.Q,uJT*t4ˉ{\б!'F]mI9mXf\%hk`,xר y@ŎO?ZnpwC[yNRHnqT.n}}{}%@:OL39eN 7CFF*ZcqcL\b0 -jSD31~ ٴ*KCmTQ>_S`Xse[ RJ ]kNsnkktRt\$0U$Vs:)܎pOl=yo&K>Fř]s3xqmy"Z=R.IqϓC(ְً <{~Oǁʙ`5Wʢ(clۆљeDd쓫vK@ ;%O1}sEAvS ,Y[Pq((/?4Z#hƳ1NYW)n> 9>G 1S77H= mϫ >`F43N.|+}&h;LjIslgLXK m5Kĭ%ђ2;fÒ:lAU]sDÒD]YRE`[[K'h+h8Eڈ#A)@8'ţH}Q{3ٖG.fL/|ﶡx\iST'\o+6)Z ~PKj+?6BKdKxU$vLl+!LHn'ZeMDڦHe VX3W C`?UM GD $Yx/t&?V]?z>զf` 샗W"0 &0 GE7E`l+whwYcRMO_3zV$w7jxjX]HXP:4Չ/m dFYԕpI3ܟ.٠ՃYs=q&wY/d1O-%& sͺL Th""IW1]b%Y},=Ϩ/^Wo bގZG\Q_i|^qBTL7Dg )~|B's7iSukvTA=ݧ`>b6(*K<]6Hۂ\= GV<2WCp'; S*O5a~V?4DB/$S$XI?^M6w+w柲[i WW/c-4ϱ r@%?Yc+l}IJ%nldq =5}"a[yC@en|InkS8q;\YO)ECҜ kS|upRp36qQO$X(=++۰0 m"xt)]{o(@]cr>Kԃ;/}׃LoAL?lU}{)M"'DjPN.]2vސ:G9ǁ} Y!C~5Vq[;s+Ax0j?a{bYY'ƮY#$/<*+EE N;L;ūTd1.e%x8gM̍(=kvYn_~) .mhoa##l, hyM`fXw^ WjFBM12 \>^̂ĭ ?SO}y&D[O> ^*B5.4M>V/H)ꭿ͉S>`r/.acL"K`cNVO=|Q S%&7qٓ+_[*^(x2 x=',p->qpi!c0w{Xg)v.6<xPʰ:[o,c.²J1HI =8ؼ*Vڴ7ygg>bpc+F8 7ܠo~Ԫ)'SMcfkp%tn I U&%U|nj$nގlN 1:zzzf|!\ȯxqFCQkhUJ9C޲nȩI09Jm捉@%ؙT]c['ڥO&+8jOX:Ꝟ*3p&RF倽ML [JlYfX +:,)ܬi:û]'+b;]Cx-arхkSke yZ~zp"߼b x |i $SYǹif&lrgC*?,*6m`]z;\RߝТbamUSV I1+_̺[O1+dCq[UK >`FWK/ D54Cą~L9W@sf &HAYCPM GCRQ࿮yY샻 3 @eǝ{>Y_@Ē>MzE66:D*Wɹ0-+kw섭' mهFhlHQ8}xW<6:c}:TW&Pg|'nXZv6w5~=1T]d%MWYqoZtPAss;2g!&YS5JO7XZ2·Tp<#2 '5p %\}2"GSndRsG~:1x. ߅Vt>ɠ(YqGG~/]oKĝKϬ4c3#'7ͱ(p&OBƶp(/u1N;%& `vLip LVS0qozū*Ơ6m(7;TqGB j_Ǹ:Ѵ<~tK38]%vtN=|;He<*uEcO/ץ& `#{*̓{y~lHdlDWao>qSå6͞T7 UfEf&]B.nܣֻ}ʾ)yNjȻxf.CB=$?9%V6F:6x ӟXip]YV#D%"ZiWq̷.MuuȀX2-<&I t#! ~* !aL ݁crxzx&\FY;t<1MLD·ӯvd)Ҏd0/bgX3QwV*A39RR ZpC+ fհ~$ `Xz;{E~ |b8o60 N$ORձ\TAƪfs'"C8nPo6QsO+{DDQ„\kg9ޠPQIh2bۉ[a8V7tܬm圛Akpqc-b.˰ dig Qo+B!"͘y<1 xV[طчn\FO0MQFVMēoTIcq;Póq 4_Jg? 셗'T;1m+A>>N<>ǰ |2TlzoHmҁ7<"-Fv?zOV^Tt d$'l}4)\ s%FTB#UWIyqrkhF|PzoZ(*.5-#g|h; N'H^(4]L܃I@s|Ll쎲@+ZXIr8_R,kջ5=u)*'5a)1 g5\ԕp.1c9̀ X}h]ܙuaCDsX?-uӴ$k%Bh3:϶1L\NP8m75vwݺHRhP׀ؿ7쏐go}6ĽW) 5J,%*FzѺ@#W1wNw,983pЉ`U6ۛF,h5BA,q,ߎ"I>bPi0?^bHρbչH-q=TԚFIJf#0 PA~RG{ e P2R 4FYBh?nݵnTBaRSm;bCdzg}Hs֟Ij Ċy-e$̾`"7~:,WBv#6w츌 BJa﫶;U&/\Xgwj Y>~Zaȣh9E'KGȕѦT‰Ax|| jvZrN{%/ _dϷHC.N| ts?,n&퍖axY0mFOy溌OuvKN^#L}tp~YiHMހGF'˖ژ3"0 1(P8.VUw PycurwT}:iYu+sշ4y lnG\]Ю&eȺʨGPj@kR=z8m`FB `^a1G> wRՇ %5/kr뮗NaԴY5i o 3MCq`OثٯZq2!ַ,D,ZW|4;aٚz3XF&)\3ޜ~_7PnqS\aMԞْC<'yhvwSUZWz, d>KSK6 ML=oW.':NqS!#1{i\8qjDaAGKdd1 "go}+Ҩ ν}K&Wu)Nd]?hs4e0P;xLx5D$2x9eY$,¶?kZO$uP6OϟHV3\Зgi .G cK1^ljiM0J0t._n˪5vpy{K\ ӏgWD&E:(*0w f0E=s/rc0dO VıT">2å]y9 )֎6g|̕p(tK6HhUn :~B.y*ПWHYw+/CY:wl|k 7&D)u ^wS׹p* /P*bp˞k/KO3(f5;Ӷl&ġ⦈\LbW Ѓm3񍢾Osaj)8g+Nw8CxopY!`Y;Xp%1\UГǷjD /jkidL4}aXNe נ1< O{@R P8#"dw 08&z+'ơL_K+-q\nFaI绽-Z 9weհ9FB#P_j{@W/Bz'YO]6F,gm6=ȹ)(,Ml\TsOICgLmrOR82bPMmeon޼IzWzdZ!H,Td/Q3VdЦ?I>A+lN7L!m=3C^+F;kSFI!c|ɱ{#F{x166uLŜq6K\.;-{?"]18L ^gCzN եdԭ= ɗ6lđlx€'&{K_SC/`ܶsYcT NJH<["iBS$4z2%H{>9,eNS'dfsW7@By;?"+os=3-}ăDFW>=H&x{OurRy|s0lt0Q#B{fhٷVr/^"i`ȼ] V; Vq/(T+ĪBd'Vx֯ecJwW=e H&fG65zce U`SޏzU<;V4.c.2TI%]cL9O\vɪ'/5 i[wʫH:K6G)S]GMtƔLL`y[%/X/7"Gu6U{m ۩px܆=,aۊ1 _(i U;VC1K 'D7 "Uh?nx~($k<.{[R9sq[ v 5:LVҬcCP#_m6(os I*8)J2Nx2ZM奉>d`YG3}.&Kו9ȿF D!9d 1r$jxLHw {U~-#yLSoxbqw/nÙ;Һr[`P_)@WW+:,Չ$ɌR]JDq,،`Q`d(j/S XX Sx1{fp&f /p?ݫkfM~1h-`WDAT;U3-xh0D$^a9! {,@^$dav tEzgc'Ѝ>WIs5=P:VnjףafiyBl]-#bo\ n,(vb5"I-yy(;m|9/ը6rW4nhz})]S4p ,2g!Xϛ%p ])f(!VMlPDiaāQ_{enF)Y&M9Eka0m MͅrK&өw!r{%C77xIXqPZ(:nf㙛O֑9O,Yj7WSyDf%EtuW\37c8kF6mbCEV&p80i!||JߢO?4Ɗ뼵Ȏ6砕eqL'7 Xi:-kjLˁ^q16 X8~Rߡi0l,뉄iAm&hP'xz#!0̨6Zx4ﹷqI|t\ȍď3R7krYG(P V}==""@9zΉ؍!xN?uҩ?d+ЉŠZ^^Y<%%G%}ksW\ ,Qx~ I _8s>ׁaͨZ[ BJJ8k"NH?t$g)b]!5CHMVq chA4=L Ǥ1'JmR RG TK4mƞi`)QgccߟV(#G5j&kqs}=M^GPLyc@&]6_#%x; ņ=fjrb2v!C&g0z(2c!) o( <92ł*hdũkPVi?*c IIDG:+Zs.㎭H1Wu#0mXlżNZcnfy{596=a".9֯cGvׇs>+=Flʄwll(t~@b;>)ylt:-63hz"E]>MȮѕ*PX"t56""4tNnjU/cd7ie:MMA_Vr, vU'%t wl@vxbX+q4 ! Í7И1"{)vZoZ(u:بگ[V5+Id9p NvEc7o0Y cdnyoE&ctmi#5J0ϚP+[#XO+B8~r+R"_pg|Ku|l"g>} sY%"ROnh2活iߏ⚼t'n*g @Zh쳂(l7= !EAGœ }\B)[bԢ6o<* NN[26 UdV o׃oXq*%ZVZcԺNp6-}ZA5?*툻&%* qS3)ԭXG@ÙYt֎s8f'AXn|[:+vBcq6Dͼ'9aYr 'NEpBdALg,6-O&״KruMe-x9ia>р஼U[UpDo\0?D]\?"N kU$ {#GW at;l16MA '`Ww.mK! 4ɣffEBzeiFRG|˔\?\mU|r~$>4QN ̉oY'guPMw>]; 8+Kƥ!R (\#_Ԯ+kgĐȇoa^R1[VuTA|CKVVunU+=ޓ 9UnV3M⤹햭q&C#/ `#bDB~+xPzK݇6A <6!"9%ϲefǐeV7:c+Saq[~̚[]xV0Y XMc[C  ! >%WIgՂM2{g /V~:c!E-_d0H.ŵt+]9M9"D q,+uĩ4:JfJd'V|^C  qîx 9^LQ~=4K xT@ו^N)Ͷ 1Οsn Z:ԋ3 '5Ϟ"?Cv$ 솢%<c .bˏC%y)]ԛ+qԕ**w\W/SS/ 2,`~Z}湅S1KIٙvyx6mG5\21zv&+{cMܭc89{]qӃ'>H 6R3_) e2̩ND~)4Dzaب cNr jp鏗:G@=lFk)\X=O seIRnDu_o春ɳE%뱠HIWRߦz0nBlr(\M{{PAP&Wv2`3ż6K $ZG!Yiv Βu-*b><&%% H^o} UmW'kd) #y11|xI[?_?]*q&ْ Cm#z-T  ´r8YMƵC].1ôB[~V_(i=V`J0.E/*)'Lo. *4ܼ{IWY"LE"_ 5Y[)G/UqD}Mmnn#W+gAp_!&8-T-e7qW' *ɓ{ kȧ!&59SGf˒nMjiO;zKG(q9^n@>STąDRe*'pwlb,_cǹ[?gzʖ2rfvfI|^$yTBSi_wB]DXeu\KsR5I\c.X) yg`EN*ڗŽ* +Zqd杦4qx0 @@ޫ|魝t#d6TSS~ug%urO$kCUHcw.kB bD _"PyX2=X8S'- 3n'Jοa_zEL"b{bxuyP)ߺ>umMH%6fq+1˖ Hc4`=@D7tm֧!+*jkNF'YDi|qNq&2(lR1kA2GL BrڼCQ q& }5))5TRE8luj %PXATa͹J*g,:2y vȌUGU5P/֕kޢJُZh L?^-W`G\__Ԩ 8YO)41,|ՉE?W'5*#17"]j^dz?K07yԼ;||3-9̂(Ci`oL <!MAfrF[kCȐT˄E>Ҳ?q?w3-RlY4 `꼴֣'caK@6Jrk@03%ynOa`|FV Y7Mtz NमԘPV4> YK)d1v7Ac&,IXb(zwPuJ\^=Ӥ lS։"8&Yv|C@ Ct}Γ㍈% E,ItОJ1zxE ԕJA/eUC_!,@, WFlzSNfu>-*~q(H #&{L?ݱ/nz|5 2Q`T <ljmrݰ;zӟ޽D&g\)]j@5qQɸ6x 0]dDO:j2uͱfezUey &C7Z8Ar.䖖C) SzPA+ p|\Za)f:#/R.l]6rY<>b^Uk=}RyYh=|%@4 ߭v&[^ctPfBXįFO%S$P~ TGH9Y8_s /}$bE(ȅ5YQTvPJZooY 5Ju0j!zgš["($-K XC"s1t)6 i~GwU,ZwƢ4}d?ܗ[-_R] % - VMC Nbp,(1x_;5Ndb>u+[׾IA2N$LP~ܪ7 V~|lEGgiBNuCEipWOO ې^MKF`p#fAW^I+|Q2{R|Id =)nX)f3#ah#TRZt"? D4m?dx!'lVUJG<sҦF n8=ҿm!S!褗q9jܢ\{yk[=HzH8t&zL>򑎅a41vK9!8l68t0,. =.*]s!_nOuBmST&cbEi>12ZhyN:GR5.hޭίTJJF9Fpc$Evb\Im" Ix%G97 uR6cB\P;uU oD +1/rfTPDŽrq G4V"6(l,(}J3Y b.ˎvQIߍw A sX.C?5HQQ= 13XezPE+=ڙm#,ЖZFi \p?s.{pXK&onPS ԅCf94trWt[Cgs.H^[)(]vN(OsSXHlQBk2; XWɑpBP΢6"bvRw(YҰ?Kj[wfi GX+z{'\hOh`,& 8DvuKe>a*&chDž ȶ[[3;aPadƽGǨҲwAN}j8LT崂Fy] ޚe e"OLi.`F"mGؠ_w=,zHZ[SM !HMr;X2yqI$hg`4q4ݓW&: _ˋN49$` CoW:o4GdV0z4 z$_rjι#,,[vӗVf@3$=G%.:͡%+adA.##)#!\vH*49K^3F+t1Ι|ݷ8RMtYm#> L8-* KCH8 50m+s4%[re2[5,P) 6%T"^Mh[á\Ph)Y-&k{EMƢb,؜8FO'׋~K@ݑfua:Z2Y615)쒺.?fD,`]%p7 @n2K{eSb7{ 8eK^ ]D X b]m̗=$<$N4Y&#?-o+P泸Kài5 av"檩 ݳNQ{6d1A+'P PAzŪe;Vz X5NK66+bDt7=4 C&n]; Az6 hb)&W{@+ 7p&f>Tӷ{ ڡԊүi.П$ټD .sVVus|({&xk&ͺIL:4f" z6( o:e0T3 ${Ac2cE FDn\]A ӡ @@0|?GG>.dbΏvaЮnù}@"b؈@KM$I[{8C@<2D|U1qh#г#O\KZ!cΞ,dm wRAeKRlU2+ M#_AV}_+^;fW% 7AS¬Q1-cK O`) JXNsJ:2w{Ia+,'НN ޾~.z*@.AMNQ GOBI_\}n! J)0F:ԭG`'kgr}m-sa$O&˭&\ߝyE+΁GEoAfO- hnie)̢sL*A cjz?ѣKby PW4cuR,֗eJ5m:ȷx iL{9ݸ@;hGG=dV# >"MU')ۘ7O'/9*ePkzca-%!\3+\* & x*Rcj ?ȗ; .[#\ q۞)꿰yE l46΍WVVIx (Ivq#% E= (åћ+82%P+_M9+%-_?eDh")Pb/p%P~HA$ ?ʔ`=ϠsVӑKȤcC6+*V5s< (,+ɞ9b89'[q" >]En)(mȄEWTLPlt7Q)ɇvL@O< c2xwا?Nf/1ڑΦ+|9ҳtfܠ=!" 1gscU.؃h3ӲQꟐ*Eh]ރDDYo{HY6'*pƠ/63&agڧ\Պ;nw'MM_10]Kis6Bv V34(FތoX҈|iXGhځ)V+县e7&xVau`O…O pBWctȳLPYQ~Qۤ祒 =}_aJZyB|OFI4q*h* /:xAQ+ѭg%s/(}qܴl`W thzDŽh(! fk %638|<kYjw?yo򕫋C1mnF15Yׇj]qVq7;(>@j:] ;z |YӾ͡c:E4?nмv;k\[OՔo1LF XaQ>hՆ#w:βBIṉь\eF: GN}Trbnqfg(!xK}$s;0оݯӸxXͯ7^<Ikh+m<DFHMkçy:Uk*~l. (M]1W.Ȯ0@ e 5&A`?P2_f?8=R/.7_.5(lFF ΪY; `v5<TmQn" yJkSa?Qzx>P RZ>89pGhfn/2TIn P)6 B|謹bL3hq0`ʊ BD5ń6g gZ5z{ W#`Z:3ThII-Wz%!E4Z7t9i^glj4א`9̜R~94&~z1 e/Awe`R?[wbm^}%H>o[ #<U=B*e ~Dq. $(PYkMxc\r7KdVjG/DQ'jK2)>9XaLtɣ$b6Yu3&ӽ# @yxV|s(e1ԎnO%/ɩ 2Jyp؂`Mpϒ7̛uTL5Ϊ +̖n$h,E!_mЫsiu^0}Ϳ`D*XRxo6!=8ߖbMzΈ^}X>5UI7^[l"# +嘠{b%BVkMDɷjCSOR oB4 q`vJ7m|GJ[gA{|+V;}?>yh5 s+|mYR@p&Ù}P2[b=ZcT-5m6|&) +]`G:3L*fnUSKhn{L0CQ2N@Z 9(x#&YBzԏAX;dNۨ )i<6fI?o䯤j̤<*oĂƬΤ4E%]j{V%Sֻ ALˎUD?Eq- vtj䀄&ہini?"_*r4E(M3 ߜA.UxVqoirG] ґ h ia[11}VҞ`ew?4xcfU$!<} 9@*) !Yk,ZRC?Rft16zz_T%u}pq1uvx'zϹ'o`n?z_ z1_VUz1G+ڌ]- z 05|$)(qeW][̒k@nfTW՝ x_|UeƐ_Jzǹ̀?= (Ѐr54@6R~SU 4Rs$gvHК)"Nl@pX ҚSŹP}Ov @M}'P5"Gl൘?Iy,8_~*pmG?.^J\5M{2ȴ KXˁbX(8[T2Ύz}[PU(D>HwFM2HmACD=#rA*ס6a&. ]QZ̚&o&HR6u1(:G]ڣ5| (;mYh4ߣ3CFA%<_z{==N$FAʚSnߐc%\"8НV;E)r^KAa*GnP/[;+*bٔ $^!m7#{`UJ| ?V:$=Q5[smcKH:R߷1CB,Y~"(O,x|cD"pB_dfB3.jcDU l ,Yr(]l б iar2פ&TA#)0cH)w3iv3ux)EM#Y0Lj!(pϯlְ| 1a)jO{8%k;:/Ļ#HW;]~ujp{J=-IpqHNdeQ#zOJz)%[E@hk bnn R 5n%LT %ʱeUN3#7wkYزU@ P t .'8'NuΔbNB$sjRgLjC×qɯs 3E,ȱsւ2BL~<JR0 +1rg1>£y^ۧ.x|YQU] Z,F -\g0 ū9 ኅ¸ҽ}h" ƍ8g;T=GT)8C+WEW3~ezO\#W.`kyIROɫi"Wv]%A]1ZT6[p}nXo{-}"3SuݒTZn.iurl (M/؎_,ߵTJl }@k =7w4 6RZxv !_/ dž%G2Ĩɓ4PG.H/hu~ff\'c6Rel\Zv Kil?i>O`i }kl #gN5P3Ϟh}@Ch}\Z.TlxR.=#Q^Kƣsa2LCCF#\);-hq6-˭s+!#zv7k&yXW̃xj/",%4O>t$9&Y鞩 Q \eOXIS!gA\ހڵDz_W nJ*:Yze\~vE klA_u \T9{v`ocS7 >=ʣȱ+;Ɇfn匄=-z¤Pm]Fڌn ƞ4+erG"勩,7oYY2c/ee08%^򝆞Vr>:x]2Ö-A',}Q# nδn+DH~|kqI]ʥvX%ثߟ>3t=nR ?a ؓs׎)XUޕ@qヱ!BR7 3"^RGwl&a߀H9ԊuaQz?3@4(ϧ!&Լm:T`HªY*n$-<7^>y/Uh)/z?h}00lك~AuPqeJNmo$SizS"Ɯcpb/5>m6sc,{{ [NfYYݒoSgSH.Gt X7YAk&KX׋+YK, -@B'/UH>j6g0"8Q %xiFFUeOE?F z ?GgNH/7ȉkK@v@؉ f٨QnGkwǙ9*11f-BUmoӛuP6پ(*G? RU\Ы7uM='aup3'0X1uWTAִ#z ?Z.k{W3)49cY dHmam+:k`S8i?R#RF=K;r{DeeY',G>pMhlkIJfnV>Dg_RեӠ{ F[΍:Q"ཨ t3m/v,6 ^f ό$eN eŤT]شObLuwoU[ /x=!E\2rjz8*Cgv0!T~T=`5諤I2`/YYk߶Q,xYX MF­C.fX҈sSNNDo~d-Mrc?3pI&IpKdc á. dhcҒ2Co"5S͉DqУ^jlb*X=vO͛.ie X~旭^Xx>AMy?'hǡwմ '@lW/dPzVnz>=P:29# X%>;KffwF3Y4IFi Ā/Y\ FQ vGד*P'1۶0?8s`.vu&]~ADt n`+Q|[[[YN'܊e/p!2=ϽS~rHE^$u\TT%pY 26LAPC%66],ܾ'Wv@ Cr[jmwѴ_knƨ%61 e; N, ^j[ 1͇퐳efUYµYGA8lE 3[<;4-2™#G~Gu䰢qjG|ϯ{;er؜a]q+:T[Ok uN`ϡxwTILe\}A\qCz:Hrp1XCLEצ+Rg_AIbs:>)颜C*G2"up4['R5HޛgY4Ӥ |טm,f͙Ru Xt51:MuT&wm}c5ك S܌0ۑ6uDa* ̎;'q7+u Utx?*YMbCiŮf0:@YS*(?OV23v\lOjegrP}?VŹMAQ͋ajA.XT,Ɗ#qOux^Ef6lE ^K$[hbļjRױ)Vzj@}W|? &AUfD ={($RZ+j;7{<Qd򾍀gB@|zҢ;r =?a./|U;#)qh([/l_'O.Ȭ}kl|+{iDCÌe.oəZ/<}KR~ X2D(B`ЛwXCŚ֖Nk[纇Ҷpb<dߩ6䒥rj" %_uh`d)CTnum}*r!?p%!y[iY X I&r6J&}tgMO0P9p[G@o=V BbpmL܅_J;uM1d=IRBY;CТ qq Pm©ߨ}efBi6.r._: QJP%~4<'soxLO6IgDGw<w=5 JOTbh۶3jr}XZLeWjpf>Qa[dzC1R9e;W+o%stwky\7N ( 1jr5Nd*(WޞԞm@%FݽUؼQ y2p|Q_!$@qq\!h JO{z]`xϰDIen ׶3dP Χ mj>*:UlʖJ($q4*اD~4elf#`c_sE$fǔ/Xc;+PPOU?[{GL4HxsIZɿ%R{kʌ~'t֓6~n2Ԫv]֦)&n\Zs r_pJz GD$|yodwyL]JSĺ[<(Xz^)ݧƑZ eeQ!'vrHm=]x ,9Ы8@M+&jP.'N@H>*mZ SclS[Y$;(Agcն2G݀M̓,S0*-V3OV4@_9H<˄DނehTHvSVV)o2cqw, +R|@}Ç!P,(wx{KM_y%,&i2vIe&gDst(S.$r3&X o9,ggT'V"LHsx~F2FA}b^k/䊧řli[i 8uA0I.t@2,~3~XKMg}n{^lJ*.kMG mJuo#[8^6)/$-=/8[茲7ZК7\ޝ7ub8?!@K\=C*ٿ8b^-Yr$tmy͆0P A82?W}:T<7g[D)0j8]' ?ߵqS+l3_NXXP߽?嗰3ĸ0͆bUQvA&p9:e8^T%fO-V6s2$PQNx:g9_99#5k~2)T h[~ d{eO2Tx^qH0Bl~V^̶ Zc@Rr ʫUSQH8ǀG?x G_c b&}7 QC0F`.6NrsQeB- YQmC~o(3^@/$=5q S<%8ˤ/[N$a<d 'Z}ɨȴ[$(Pz}f-/<?}e$jBL$pt[(<,:0|[C'ZKr0YMܾpK6dl~Uom\]n/fhmDIޭ tBCǪ{Ӯ3"8rN6in:Kh.PƥUp;V<bƮ3ү,B dI*ǽu3EkGrA6EyTFK|7~%Xw!}$. rl~{3".}*?| Po@@Z-,A{'bLt (D0t„=3Rv:5(u08U%(4Taq"ws Ȧ~֬M&rpoKbo#.Z;`0q#rx0 zȰmwE{>f?y|CʇH&vSj0S|N:"#Z4єʃ B)$wSG|˃kh̔Wuq!_Q)TAh,>}ȦkT$HQl.?&SdεtIqHc~݅"'YT.yv(c7k%}s:m@}k^ J 4LM|pWD w $. &@j  :~3c>y%ݞ&JRﰓUT4[qW#W)M?U$Uй2~zzc-ke_tH{.RVcֺl1;F, _cc17{^)J@UeX2t @'"/ڧ%/bsܗmevΚ$ sDSQAA 3#2o٠ /7Jz5h8jE֭~!hA-i ]ߗe&YŁ kc<_W%^WCks}/O]!k+jGSrJwĖIGzl^[7kT&BBުZw"([}CQ|O-uO;fѣPq+yfmšRO捓?u(nEy?M91ĵfKM9V `X (>Βˡt\y@7TZkA-ݑz? &q8ʉ4]W?{/ [4hҋ`P 8@UD~)n pk|Pkiq7MaY Kb<4}Lb+,?e+UU␏w2SLUr0b`qXt\g[&AIAVqaPZJad% Cá_ tᡐ jyV@,Bޔph{x%iQZAjmt0LH%c21k\9EsP֡sxg{s+4Gy&wܪɰv~ܯ HE(zLĖSlvړ\ic. w3⇦et!neUـ8>XR۾qP%X2*r|Gwk{<5@X9jIņ]1(6ƴ%օ\&7cFozC)MzǾI3%x0^*[2^LـxcubzbrItlUH ˺ ngr>d\eސ?gkd QQvTUD{&6S)sQy A0Aa8:ծ }$ jJN-+6"c<$e'?܃ A5F`AAz/Ϭ_܀'rYI T\HM qۑqK^ੱásݵQp m/