libbpf-devel-1.2.2-150600.3.6.2<>,\hFp9|eVvSnA86BqW8νzy+so[ˋK~y%W95naUoR݉Hv>:$r՜ T4-%y"!j /S"lw{.Ⱥ8&)hKڈI %%k_$[[鋱_CA}|VJ2vU\-0E,vHq4w-" ٳ9]6e*; 0 LxĆ]mZ "[ \$ l%(3_>>J(?Jd " ? 39D   L  \8\  ( 8 9 4: FCGCHD8IDXDYD\D]E8^FNbGcGdH0eH5fH8lH:uHPvHwHxIPyIzIIIIJClibbpf-devel1.2.2150600.3.6.2Development files for libbpflibbpf is a C library which provides API for managing eBPF programs and maps.hFibs-power9-21`.SUSE Linux Enterprise 15SUSE LLC LGPL-2.1-onlyhttps://www.suse.com/Unspecifiedhttps://github.com/libbpf/libbpflinuxppc64leNLs9I E${! !?qkA큤A큤A큤hFhFhFhFhFhFhFhFhFhFhFhFhFhFhFhFhFdhFddd1674fee7c38d4f90f8bd38cacb0eca8c1fafc02d4890e078ba8e2c481e417334f8693c88554b9377dbddd77efaa40113919b3245fe5a517160492e21f409328f64b77c97b089ca06203d0451407844fe93933b4e36e7315a294745fa29d058fb7cb679c3641e9ca8d0c317a13dcc3553985fc975cdc3678413b6e1547bbbf6a7e320a7681c18208003b15c222707f55584752ab1665fdaa8881e7e020885141473b036a5f154b2d5a9eff74e4adeeaefb649291fa151a830eca2177d39d2a410e28e5bca81a5d782e27088da750712c747acb9ab1764bd944bf3e7fc15d4b50324ff5032adf45d6cf35aeb15e8335b8b8b509d5f63a43dcc1b2ae345d623284856479a26578ea1893eee35510daab188c7547bf18be0ab01d38c295420ed95b24b09b8535b0eb9da94e8eafba8edcb2abc742bb07dd870bd216c3eea955a18d8ad556d599405c7c779b8eda644bfd0b0610929f1140734aaefa961dbb972af14a2f7fa02729c0bab05f5bdcab5b0b46e0ec91387518125d6bf6c4451d536fe6ba95c0b514ddb2996af399caba5a312141b227f36dd91f7e0d08573282c9beaa6d78a7039f0c5e1dc558d775f8f5d353408122b4524b1f8517e888243622fa39500c7316ba0e2d30f5a95983aa7bd5f816aa9c94cd45eb6908168a44f22b76bb6847f4addbd56e2d5be20c4ea0845e972672fc07b755fadaae5f7abd35d71e349e1638b9a0c68ca90fad3df1d6b4e430804d2fbdc15e58d02cffddfae38953bbf0b9a4febcdee6de55872501d5c1a8f5d8b0d1650cd4d5351995ceb22e889f8calibbpf.so.1rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootlibbpf-1.2.2-150600.3.6.2.src.rpmlibbpf-devellibbpf-devel(ppc-64)pkgconfig(libbpf)@@@    /usr/bin/pkg-configlibbpf1pkgconfig(libelf)pkgconfig(zlib)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)1.2.23.0.4-14.6.0-14.0-15.2-14.14.3hFfLd8dP@ccFcjDc< @bc@b1@b)@b%b!@aaQ@a(a@a@`@^(@^6^r]?shung-hsi.yu@suse.comshung-hsi.yu@suse.comshung-hsi.yu@suse.comdmueller@suse.comshung-hsi.yu@suse.comdmueller@suse.comshung-hsi.yu@suse.comdmueller@suse.comgmbr3@opensuse.orgshung-hsi.yu@suse.comjeffm@suse.comjengelh@inai.dejengelh@inai.dejengelh@inai.deshung-hsi.yu@suse.commsuchanek@suse.commsuchanek@suse.comgmbr3@opensuse.orgmsuchanek@suse.commrostecki@suse.commrostecki@opensuse.orgtchvatal@suse.commrostecki@opensuse.org- Workaround kernel module size increase due to BTF deduplication issue since the introduction of TYPEOF_UNQUAL (poo#183503 bsc#1244135) * add 0001-libbpf-Add-identical-pointer-detection-to-btf_dedup_.patch- Fix null pointer dereference in bpf_object__collect_prog_relos() (bsc#1221101) * Add libbpf-Fix-NULL-pointer-dereference-in-bpf_object__c.patch- update to v1.2.2: * fix a regression in perf tool caused by libbpf resetting its custom catch-all SEC() handler on explicit bpf_program__set_type() call * fix possible double-free in USDT-related libbpf code, which happens when libbpf runs out of space in __bpf_usdt_specs map due to having too many unique USDT specs- update to 1.2.0: * completely overhauled "Libbpf overview" landing documentation page; * support for BPF link-based `struct_ops` programs: * `SEC(".struct_ops.link")` annotations; * `bpf_map__attach_struct_ops()` attach API; * `bpf_link__update_map()` link update API; * support sleepable `SEC("struct_ops.s")` programs * improved thread-safety of libbpf print callbacks and `libbpf_set_print()` * improve handling and reporting of missing BPF kfuncs * `bpf_{btf,link,map,prog}_get_info_by_fd()` APIs * `bpf_xdp_query_opts()` supports fetching XDP/XSK supported features; * `perf_buffer__new()` allows customizing notification/sampling period now; * BPF verifier logging improvements: * pass-through BPF verifier log level and flags to kernel as is * support `log_true_size` for getting required log buffer size to fit BPF verifier log completely; * allow precise control over kprobe/uprobe attach mode: legacy, perf-based, link-based. * fix legacy kprobe events names sanitization; * fix clobbering errno in some cases; * fix BPF map's `BPF_F_MMAPABLE` flag sanitization; * fix BPF-side USDT support code on s390x architecture; * fix `BPF_PROBE_READ{_STR}_INTO()` on s390x architecture; * fix kernel version setting for Debian kernels; * fix netlink protocol handling in some cases; * improve robustness of attaching to legacy kprobes and uprobes; * fix double-free during static linking empty ELF sections; * a bunch of other small fixes here and there.- Remove requirement of linux-glibc-devel >= 5.16 for devel package- update to v1.1.0: User space-side features and APIs: * user-space ring buffer (BPF_MAP_TYPE_USER_RINGBUF) support; * new documentation page listing all recognized SEC() definitions; * BTF dedup improvements: * unambiguous fwd declaration resolution for structs and unions; * better handling of some corner cases with identical structs and arrays; * mixed enum and enum64 forward declaration resolution logic; * bpf_{link,btf,pro,mapg}_get_fd_by_id_opts() and bpf_get_fd_by_id_opts() APIs; * libbpf supports loading raw BTF for BPF CO-RE from known search paths; * support for new cgroup local storage (BPF_MAP_TYPE_CGRP_STORAGE); * libbpf will only add BPF_F_MMAPABLE flag for data maps with global (i.e., non-static) vars; * latest Linux UAPI headers with lots of changes synced into include/uapi/linux. BPF-side features and APIs; * BPF_PROG2() macro added that supports struct-by-value arguments; * new BPF helpers: * bpf_user_ringbuf_drain(); * cgrp_storage_get() and cgrp_storage_delete(). Bug fixes * better handling of padding corner cases; * btf__align_of() determines packed structs better now; * improved handling of enums of non-standard sizes; * USDT spec parsing improvements; * overflow handling fixes for ringbufs; * Makefile fixes to support cross-compilation for 32-bit targets; * fix crash if SEC("freplace") programs don't have attach_prog_fd set; * better handling of file existence checks when running as non-root with enhanced capabilities; * a bunch of small fixes: * ELF handling improvements; * fix memory leak in USDT argument parsing logic; * fix NULL dereferences in few corner cases; * improved netlink attribute iteration handling. - drop libbpf-Use-elf_getshdrnum-instead-of-e_shnum.patch, libbpf-Fix-use-after-free-in-btf_dump_name_dups.patch, libbpf-Fix-memory-leak-in-parse_usdt_arg.patch libbpf-Fix-null-pointer-dereference-in-find_prog_by_.patch (upstream)- Fix out-of-bound heap write (boo#1194248 boo#1194249 CVE-2021-45940 CVE-2021-45941) + libbpf-Use-elf_getshdrnum-instead-of-e_shnum.patch - Fix use-after-free in btf_dump_name_dups (boo#1204391 CVE-2022-3534) + libbpf-Fix-use-after-free-in-btf_dump_name_dups.patch - Fix memory leak in parse_usdt_arg() (boo#1204393 CVE-2022-3533) + libbpf-Fix-memory-leak-in-parse_usdt_arg.patch - Fix null pointer dereference in find_prog_by_sec_insn() (boo#1204502 CVE-2022-3606) + libbpf-Fix-null-pointer-dereference-in-find_prog_by_.patch- update to 1.0.1: * fix inadvertently changed struct bpf_object_open_opts memory layout; * fix btf.h header relying on struct enum64 type defined in kernel UAPI headers; * fix NULL pointer exception in API btf_dump__dump_type_data; * remove struct btf_map_def accidentally left in bpf_helpers.h header. * All deprecated APIs and features removed! * support for syscall-specific kprobe/kretprobe (SEC("ksyscall/") and SEC("kretsyscall/")); * support for sleepable uprobe BPF programs (SEC("uprobe.s")); * support for per-cgroup LSM BPF programs (SEC("lsm_cgroup")); * support for new BPF CO-RE relocation TYPE_MATCHES; * bpf_prog_load() and bpf_map_create() are now smarter about handling program and map name on old kernels (it will be ignored if kernel doesn't support names); * BTF_KIND_ENUM64 support; * increase tracing attachment (kprobe/uprobe/tracepoint) robustness by using tracefs or debugfs, whichever is mounted; * new APIs for converting BPF enums to their string representation: * libbpf_bpf_prog_type_str(); * libbpf_bpf_map_type_str(); * libbpf_bpf_link_type_str(); * libbpf_bpf_attach_type_str(); * bpf_program__set_autoattach() and bpf_program__autoattach() to allow opting out from auto-attaching of BPF program by BPF skeleton; * perf_buffer__buffer() API to give access to underlying per-CPU buffer for BPF ringbuf; * bpf_obj_get_opts() API for more flexible fetching of BPF kernel objects' information. - see https://github.com/libbpf/libbpf/releases/tag/v1.0.0 for detailed changelog- Update to release 0.8.1: * make shared xsk creation network namespace aware- Update to release 0.8.0 * New features and APIs: - support auto-resolution of binaries and shared libraries from PATH, if necessary; - support attaching by function names (only by IP was supported before); - support attaching to USDTs (SEC("usdt/...") and bpf_program__attach_usdt()) with initially supported architectures: x86-64 (amd64); x86 (i386); s390x; ARM64 (aarch64); RISC V (riscv); - improved BPF verifier log reporting for CO-RE relocation failures (no more obscure "invalid func unknown#195896080" errors); - auto-adjust BPF ringbuf size according to host kernel's page size requirements; - high-level BPF map APIs: bpf_map__lookup_elem(), bpf_map__update_elem(), etc that validate key/value buffer sizes; - bpf_link_create() can create all bpf_link-based (including raw_tp, fentry/fexit, etc), falling back to bpf_raw_tracepoint_open() on old kernels transparently; - support opting out from auto-loading BPF programs declaratively with SEC("?..."); - support opting out from auto-creation of declarative BPF maps with bpf_map__set_autocreate(); - support multi-kprobes (SEC("kprobe.multi/...") and bpf_program__attach_kprobe_multi_opts()); - support target-less SEC() programs (e.g., SEC("kprobe"), SEC("tp"), etc); - support BPF sub-skeletons for "incomplete" BPF object files (requires matching bpftool to generate .subskel.h); - BPF cookie support for fentry/fexit/fmod_ret BPF programs (bpf_program__attach_trace_opts()); - support for custom SEC() handlers (libbpf_register_prog_handler()). * BPF-side API - BPF-side USDT APIs. See new usdt.bpf.h header: * BPF_USDT() program wrapper macro; bpf_usdt_arg(), bpf_usdt_arg_cnt(), * bpf_usdt_cookie() helpers; - new bpf_core_field_offset() CO-RE helper and support bpf_core_field_size(type, field) forms; - barrier() and barrier_var() macros for improving BPF code generation; - __kptr and __kptr_ref tags added; - ARC architecture support in bpf_tracing.h header; - new BPF helpers: * bpf_skb_set_tstamp(); * bpf_ima_file_hash(); * bpf_kptr_xchg(); * bpf_map_lookup_percpu_elem(). * Bug fixes - netlink bug fixes; - libbpf.pc fixes to support patch releases properly; - BPF_MAP_TYPE_PERF_EVENT_ARRAY map auto-pinning fix; - minor CO-RE fixes and improvements for some corner cases; - various other small fixes and improvements.- Enable building and packaging of static library. Explicitly enable fat LTO objects.- Python is not used during build; remove it and help break a cycle.- Update to release 0.7.0 * legacy BPF map definitions (using struct bpf_map_def) are deprecated when LIBBPF_STRICT_MAP_DEFINITIONS is passed to libbpf_set_strict_mode(). Please use BTF-defined map definitions. * ability to control and capture BPF verifier log output on per-object and per-program level * CO-RE support and other improvements for "light skeleton" * improved compilation when system BTF UAPI headers are outdated- Update to release 0.6.1 * Introduce legacy kprobe events support * Add legacy uprobe attaching support * Support uniform BTF-defined key/value specification across all BPF maps * Support kernel module function calls * Support detecting and attaching of writable tracepoint program * Add bloom filter map implementation * Add typeless and weak ksym support to gen_loader * Add RISC-V (RV64) support to bpf_tracing.h * Deprecate AF_XDP support * Support BTF_KIND_TYPE_TAG- Update to 0.5.0: + New features and user-space APIs: - libbpf_set_strict_mode() allowing to opt-in into backwards incompatible libbpf-1.0 changes. See "Libbpf: the road to 1.0" and "Libbpf 1.0 migration guide" for more details. - streamlined error reporting for low-level APIs, high-level error-returning APIs, and pointer-returning APIs (as a libbpf-1.0 opt-in); - "Light" BPF skeleton support; - BPF_PROG_TYPE_SYSCALL support; - BPF perf link support for kprobe, uprobe, tracepoint, and perf_event BPF programs; - BPF cookie support for kprobe, uprobe, tracepoint, and perf_event BPF programs through bpf_program__attach_[ku]probe_opts() APIs; - allow to specify ref_ctr_off for USDT semaphores through bpf_program__attach_uprobe_opts() API; - btf_custom_path support in bpf_object_open_opts, allowing to specify custom BTF for CO-RE relocations; - sk_reuseport/migrate program type support; - btf_dump__dump_type_data() API, allowing to dump binary data according to BTF type description; - btf__load_into_kernel() and btf__load_from_kernel_by_id(), and split BTF variants of them; - btf__load_vmlinux_btf() and btf__load_module_btf() APIs; - bpf_map__initial_value() API to get initial value of mmap-ed BPF maps; - bpf_map_lookup_and_delete_elem_flags() API. + BPF-side APIs and features: - support for weak typed __ksym externs; - BPF timer helpers: bpf_timer_init(), bpf_timer_set_callback(), bpf_timer_start(), bpf_timer_cancel(); - bpf_get_attach_cookie() helper to get BPF cookie from BPF program side; - bpf_get_func_ip() helper; - bpf_sys_bpf() helper; - bpf_task_pt_regs() helper; - bpf_btf_find_by_name_kind() helper; - usability improvements for bpf_tracing.h when target architecture is missing. + Bug fixes and compatibility improvements: - improve BPF support detection on old Red Hat kernels with backported BPF patches; - improvements for LTO builds with GCC 10+; - pass NLM_F_EXCL when creating TC qdisc; - better support of BPF map reuse on old kernels; - fix the bug resulting in sometimes closing FD 0, which wasn't created and owned by libbpf itself. - Remove patches merged upstream + libdir.patch + libbpf-Fix-build-with-latest-gcc-binutils-with-LTO.patch- Fix LTO build (bsc#1188749). + libbpf-Fix-build-with-latest-gcc-binutils-with-LTO.patch- Depend on new enough Linux headers.- Create libbpf0-32bit needed by libdwarves1-32bit- libbpf is now a separate project, stop building from the kernel (bsc#1188419 jsc#SLE-17288 jsc#SLE-18805). - Fix LIBSUBDIR + libdir.patch- Add python3 as a build dependency.- Build libbpf from kernel sources, not from github sources, for consistency with bpftool package.- Reflect SUSE CFLAGS - Do not bother with obscpio if we are fetching direct releases - Remove patch 0001-makefile-Fix-install-target.patch seems to build/install without it just fine - Update 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- Initial releaseibs-power9-21 1749458932 1.2.2-150600.3.6.21.2.2-150600.3.6.21.2.2bpfbpf.hbpf_core_read.hbpf_endian.hbpf_helper_defs.hbpf_helpers.hbpf_tracing.hbtf.hlibbpf.hlibbpf_common.hlibbpf_legacy.hlibbpf_version.hskel_internal.husdt.bpf.hlibbpf.solibbpf.pclibbpf-develREADME.mdlibbpf-develLICENSELICENSE.BSD-2-ClauseLICENSE.LGPL-2.1/usr/include//usr/include/bpf//usr/lib64//usr/lib64/pkgconfig//usr/share/doc/packages//usr/share/doc/packages/libbpf-devel//usr/share/licenses//usr/share/licenses/libbpf-devel/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:39139/SUSE_SLE-15-SP6_Update/63c249027fb7d2f24e9734f071edb4ca-libbpf.SUSE_SLE-15-SP6_Updatedrpmxz5ppc64le-suse-linuxdirectoryC source, ASCII textpkgconfig fileUTF-8 Unicode textASCII textPRRRoqmyt1utf-8fcf005f4a5536b7c83397da271eefad4091ef35591da5f097b890ba8dd2092bd? 7zXZ !t/B]"k%AK37i2Ϸ=P+8O. x-R=`<:E,v VD^FX{٣ȋb!t3̧t(fuXfNQ(|wR }^(1 .] F*EU@h҂cK v{ |TfJؖL*go[ہPW#~jKz@:iͰrQ2ˆJ`]濈z5 谶Aet?#,j<9Ah& F ''uZ0ՙ_6 VP[p j: xMoD=w}Xsط,mnVơ4\;%&y5?+H7I6y?0,Y^2\{kΗ70ӽO=c2?`ϵj5I,tmEOFwp 2%iVo-9J$\4Sr>Ei9c(C C)uoE&\<9w^jSY ƣ ,̐J e@7dfe*zŭgюF?|(,UU*U!Q펡?s!++Q-%'1>¹IЮ[@.7*kDž,#5*i^$iUXJF٢ X JKd"o?aމ~1XJ$O[k9<Ghl'9%x({V=4#_DXEEbk8wKu-= tRxݘTyDR'a>D-uM8KKtUݽc#D QA2RP1y#}h쟡&Oqg]r"?z#Ǚъk.m@Y{2[k+Z~؀_bT74U0nq= 'oa;E9]ߔ8yɻ~ [@WnWİj)o 7L+>|qͩ;j멖-bE8F:6'|O/_r(K;/QK$_QE Ah(yH<b?Ff˱^EkCgl$ZBd:IEpv$ !m ?=Sq>)Lu8s{ĎCY#Q_K *=ܼqώsWuJ mjtU*_ )2vDԙU7c YQas>?RB)ZnMNyۢ%oMyج+N< Vp|N}1R䥥9`7ceުs`zچ{$eR7c![B*NcKr;)~iVh&H[B7Mgsu >{)b 䔻nZX@Ӝq{u! wĤK5]<,$9-vdnJ˒_zSޤG|.f.@?y%h~^ ri;@r)AR^f]9{_R-,5P_ʍr,<ZJҬr/>ʶ`irǴZ6x}y$'S_ɍ*_S@0mF8'uXi?0Npg3OKO-J=}h*zߚ!cSr0k@5 HMDfA{`:oˎ@O[ܕOhrVe74RѪi5Ol|>8D&37rxjCċ+ۭ*m E1t\1<3U6k?IKh$%lK#x1'xF 4`55F@ x)sYMwht XuKEȒ>K|<Ŧ#sι㣓8"KY!N އ 2f}J{:1$`t 6$-݊SJPl1 \ ɂ|12*'c^ 0շzk܆q8IM`0fu!"-.&gU('eƍDg+'+K\[?|p"a}7STj>\b"6wY7>aLCT?#^N&~:{ RBY냛Tsvku4jX4,@-!!ߧP1VsI<vK?Y擟Jb\1YE: 5p@YPk984 pK<9^~9lG aR8[Ա,"J3M"TerL⟄NQKLK46Ã>a&~^~ j G%'ʬ"/֨B"$"/Qeq `.(,W(@v~8atgzC'x噚|M1eM:5mg$d AVyU¤Rs9pﰳACa^TKaS<0!egIuA 6YCxRG('2aypվ~+:[O 3e;P2\1Ra!ж[эtGT<{c>y:pս JNT%lOS=8(PVu=;0+d< /^yc0,Q&K2Lragp݄DV;V[66EHqDd-,JI=$:2$J up{q iG *JܥFC7yK2Xa'ṙlVʇom!2[49oaM}VZ,q0ʷ!j%TYk頫͗%A1vWȣbvA ~0",e_ZNg?b>51{o ?$8Z%7+ݩ+ Vv~^6~BN8Eф|B`iq]FYvخBk&j)~ ",9lUUK$4!(ZW)a\)&l')r!Vp1ŽLz 3{h3n *87!?R*.=G^kiRj:{481+ʮY:Pf(CK?4v?٬Fqؙ`P6~1 )+S~fR3M5)]'V"= ^߄7%M p6=nk1rMG. <Oaư~6Mɵ=ޤ7~h] HXz|3it,1LRx!0,ia1(Os{HxJ x8(\ G1G4R)R0\;.-PHN>o }"pV!e=ӃH (+|sĴC}nqJTzTA~thF4DQүx@RLѩk ?Rɔ0w'f8xfty <zHmm]-w{=}+4L~PX?X[mލRx d3EkBaVG_Ŵ_f7?5\yHpOQ(ː] NN[@0}A6F)Wr(tRe(xL^Mɼ7<5\M;kdٷHxC&~jGUTlc>tZˢFZd} c:R: Y+Ňx Oe)ő|z! 1ZLD6On-WWa L 'DS>FRu⍟[2+Qe7Vf 2 z K:0Mjv:!=7)ߣ&r,1`!q¬hdZKΪ~@ _Xj4~4^=m5#jK3kD=.ڇP+Ct:fhh~xQyS4:; NkC ]ӊѪodzun?,o ]җuD!i+F+*B{[, W SgдXHj(LBnZQ% ʳB6wFȽxtS;[Bg|1KǕh@gϩ\drT=;^h?~8ΛKeKwLƭԼ~Vl_ 샳_U₶OeB6nAIpR/3"y!/0r ӓ~1xe屠2?.W8= H>,Ӧf%P3UV}`drYiQQ_ og*VkR,08^ yba{îqU炂lMC|$ #Yo:sA tsI(`P}ʫ=RXFA;ЫuT.Y!ʉ aHi>mI󇥮{~\# Wͫ,-F/gD%j[5[ulz#DKHW|4T9'j^Cb+&n(j~i2ُ<[G0dz>8o@T{[|3 wWw$=>AP&53˩,K[{El`?Hں"ڬH ŷcY)58yޯl1S`y$fCiQi^ձ4bӝZ{ XTdVfj{_1p֙pys }龆k30?XHsFT暝9CT`NPBMͩKҩW6C.nGLخ`4mC5%#0?T*`LP412p0ܼ $~]#vwKmL$Gʇ]> hu -3FSZcY"eCm4D]Cطz[; iP$Im,wqA,;aL9ɅPF$*,Y;3q/ +7=Z4fHtݞ+*ER&t03z&:T}I¿`)S %#M7=VpDŗC_Rdqu\~gN\U0V'=pE^bq\Nw}~1Һ !pQB 4.46s^ . n| ZXN`,sp7Y%<1muDŽdS|w'}A cT/';3N 4}ƙ0DNМbv/nsbG B$*hE{L|jηLsyƧady&SÔhɹ u85ҕEI(ԕ苫ԋ:XI3zZtbNY.|}<8QLG_A&z'⠮V{HX֖}([ay]}ށN L[,Z%&OyQU;G`j P4Տ84kϠ"9|tÖiI!B4D?}/vLsZخ̛[x- $"[({5VQUMG/hUB C|qooHg-LXm#smm2|ۙ (1$(N͗MQeSvX3*d;Ď+KMOjqYȥNOM/K:o<'Ndn۵) QҒ<d}ɘb}0ޓ!kOڄ%Jj8gqo䳡J[HEJe٢\ϭ ^+HB4u-R"8e=\:?i-EpS?{': v4?>znb[i"fmT3iqۅ| l2[ݔZj/{j4[Ih,M>ilȜnO\x\aCLkJK7 ̗L /Ȭ\lr*%ol*@i [<[X\mrbt.C]*|"96mzXѸj:Gey% Δ%zPA+44%^ ßJ-|IA W =tkm\Fs-Zu=:5(K*l kהqD zXwKZ`z^cl ^E|D5 =>t~N ]ˇ!:>;^?Md5=(c$Ԓw܈I7Bm@n:riXxJ=7yfX*J=2G_mDͳzHaݙ$?˛!QiMN4.åz̮?}j>Yy9' >O8g~)>ClĞu=GlEE)p?0HPR!dpxU)&̏%^Dwޙ:x7zk V-齛SJӃWXHyf5u@G/ڵ$}V 2,9Hn843K u#g XR!ym;13'۶$m.Z}QS? W}|\V&Du) ٰ% ʅQw5yrOӝ{JTC`Ð߂C6NE7K*A@ N:c.Q֟'#ґg-r^ G),zB`tЃ0Q7nu h*{~7nWaΆ#(2%Lҷtus5WO" ޳5gϒ3Llն͖RLµgQ/@SsJ@Ydt砱ǂ/CP`7tr{'\7˵c {s v4hM$ %ia1"}JHphY%/8QKZ)v"䋪s:QhvP_Z3,*dpʭ=n>'+k@/ RaVUy`GsX7͡k8.DJWȘ Qofk6UP/h0{M>.8~;+1oW&C)w1DžgB룘ܟ|z)ڥdhP{LI /x/W"ZXCnِWFq--UUM驛lwæo`&A5̛R":]=($z%.i2?: $ "-2"CTDӗӊ$*3*wFuB=RC?JRkK1 2-.E$}ʃ͓FSt(vBC~6Fe|Nu{2:ꆩazaW?y`"z>̕FqYU\1RIj^+{^'ÂAkZW_$iDLdQEAƤTwFKkd ww  } ,ke4\C'vGD\1YkZ: ^r;mU!%Kx0Ǣul9"p͔n=)zv D+=HTVF~^G(HM'Ŕ|)Vu3\)g<_ 6P wXf Z%vo,}EzNߵ.>BLOD ;5j c?7!hx wĥƔX4 .՝3u:|Fɏ'^j\18V WUl!YnpUY3LEڸsɵ`S2iUtHaDxL)?|M,# 8 ANs|_'ZIF2qbt qÞnfƔQ) H3^FKS] OJ7O{w#U" Q9[42H>!zI<*I;9z _Ro%P,S>dabJ} K=൫;M`dz/&,G-^z C' ?-IUjFXnuD[WӴuQY\v N8|NW/QeK8N:{PG*NAg׸ VIjdRv4^$\gʦ|%O!ۤC.\0*Nڵ.G݃zo4ҹ߆Z#nc[D01>ҹl`)8)S$6h UFOiRYiwy`s %_-X`vz8Uը?[]莃GkLla' 3Ӵx:Z% ҝNP)ȡ,=o]j(o⧍}\CF B..·hs&<)LzY!oxp8=H|֟ q7X6])Mr~‚Qϧ|^ga,1c#{D*2F [ʏS>ra<4!6=GgM~$,HM{Zo<=><%Ăis@PJ+Ͼ@[mo͘<(Rf KE['h@"2J7I&y3H *}SLX34n;p7p>~U"՚"oS L.`kı.z뼭Ӑ%_E( É"*o=_]P)8 $ɠ`NedO dx#4b TDϔ_oލm/¨ʏ} H=n,o$RZy1Z=<h8i@h*1S8ZieBu Ihҹv|y2 r 7q _%\@t8|'+:q5IuT=`A<]PBk8_tdCW`T md 2&N2;8tpq#1M4( G}^It]|jCMedցW=|5 pQγ# i 6:?RCQ4MFV*.I?DnS8Թ]| K*)0*[ș/n}ϲpCeJʀ[0PK>"rb=6 Ňb'@Oud~@}'3T[TVɍ˚J`NП=Ih I(.?%"mƔ}VbwyFǐ|=*Qȼyw; Dd\ ÁS~9 ] `?0;Vk_ n\}ґj),G~fUxz; xnx9 P7O`K{acYxTy~EzDDc'aNߤaA*oѵ[JU5aB )K* g:(| 2Ɓqnoʗ"6lSB1o.-T|39+3eѕ,tbgvP B)FĎ~} ~LpN&J}iWp{h2zx9/a[Jb&S=.CspmSBv޽)[8G.E\jbn ?nV;9AV)1l8y-z1cl RyHa5=ze2X xcϘ_wۋ*;7yYL3 p7O)S1梽ANWv4ƹGEd14s;RX*}HOOjbߝwfU0yƠL@g+>Wu*^0ZU[O6ڨ~{Vj*nj1WFHSN=Ov hn6 8 ӕ s m^>R- c$fJ5+="53Yr&,043S%p- V}E+j+{!;mXJ†{`|CvA/r`ZJ6C{Fe'qڭ;l!Dr-R;G{q2c.x̥kJ1@a͛DDMƧ@9R"+~5(u![RH$e#ՀTͥpNL~ߍXZl';םR'ä54s䢦LtJ4ߥ̈́ 4`_%_Oj "&o} 5ZRcKU Ä>~vR u þiCMZe'W3lƾ8!,%`'%\Plb"^.M':g n3j@R&/A RrF1p |H5%;\Rm nT3s Ypv-5k@^3RtsG$dL/kL^k%wzov +Zw$Z6s]fE#_/N=XVbh_"pt]v3֗L̿_}'bIcT߷\ʨX;Mbp*_> Ŕ o/)d::QT^|z6m[^" 1V`=uiC`;Vm2(K4P{7i  ؀FT2ݑcz@xO=°1 N1GƯ{ɕ ;ޅpE6B6DNA՘37S K 5;^8WAĦjA^pS{o4K ك+U Bv/뉹v-о >5Y/|5Ȩ.V 9j\ YD { mquu K#V {2؟<@D}PGdb!SDiLd6-n6dԑ 6%ɻ:>4K*\3\[Sto| {@xvE"u]7vL~b(S*]Q $yVu&.S!hOꥎU.4qOIQ1)5ȸo pԳ5N>W l0izh1X`Ib`[}/r<nmpO{ +ȌtI3œpYM pu G]DUW '?xu߄agGf*wiz赻iw1;Xmx2K}UCa\s'T2\N2DXW R^1> fir"NPpZH)\y״VH\prρr i.KHאAc$ =(r3'㋙H]l8m7 <֢kmH.mtwN>2FM{8aKC@ҵhB='V#l2 .+α5TMO3o}8>=:Ib'̓P`+ OgXzNoXTK<8 Qac+un*a4PG)NtP5ăܫ}h (ՌZ \jĈOk4pF`2DZ5)̄iSݗ\C=W.KlmKteo7{EB륾l<>ReJwZ_{a3׋ i6X]l<ۡ`4 q :lߑ(*ׄC;eK4\FAX@H.)dDžF-ЙIN_%it+ ^WQ?h+ #tf% xs5RVDxU'ng^ $*R=??z(9Wiz"Y L&+dY .,?ZsJ+e v2iܢJ$j3,F7gcGnd.|8iτfJ5LJ&q(}N|T5D}O&<6"tfjvc4:$iSv c8"rwWu9p(ܭvĴ2ДY5 kCRw-6~/"J;{"a|ғ(V",#лRhM4iȢ勯'&fqjo`>`DdUm/ :.z_r/"% jyN9pj Q3 N W) Z|7hr{ubwFL<%bUqS:/#d$l}{EpVZ`炟[V@[t,M73C'a88 J]5) vzBۋ 3wEVQ }Fڗ'#$A $.xU>_/Jl&w2mwbmi[ GiT<ABW,00ё,ń7Ϯ;16rZ*q3rH-#^vM,Zǭ7BQԈ4U$t#V &;!E4ݹRy2ԒiJVJKtD7@[auޗK&,%2)BK1ֽgh<[Nd  >a_ @L6v^Q?Y$8-[:"N tE؂ۘ,y/"HKĽYĺT|59Q{  ^ ~61,w z Q1t w N-yw7?8gUaQC.]N˫. 9&l1>14yn=35|92raQݦucgƳtMr:!^ M& rB 6t.*j|27΢MdIHem-?xp脦h3?dPA-+^̣!eMNsh0F8Ch{&6:bӌ^D#pbr+is#82P>h?~1+CpFF z5(,߼ů~-To{0F/7ch|eV(FU_C15$>DYGՈ{φrh7StKݤ璂PEӣu7ouJlG<n;myXL*9 rN~ZPгVn$O[J+åWyI Hn>71ބD+韊LіGwͥ ծȘ X]"4rM MS qjuf7B8iOʘCpdkfĉ÷ӢW@zkUb_ Q"P,$~ܡ nL5~n?5Ȓ@_|nw6SPM ]z &‚݌r;v]1ѸiG?%O(#/~/E A_,Ey=}+~twB3j{+C.~%߸ ~p]Qxص6sw2Aǚ$;J+;B{it۾s{eR0f O$\@\<Q/xBk20/wҎD3WL7m%2sb\}jj68Pހ[vmMz{1>^zC@ ֕~(\G]KA Hg dg+[-bcpUVPToQ[,0*yeA f;5}tD\2]z6&—*v/HYrW酣lA_7d4)۵Փ8q!umXMm?̚ f4y?$0oY8iP\=<5QUsQ/0KX^)1,D9Zlv O`Go71ssLnNusΣ:v ::í%1闥z>iXvVc~fނg[䌉xe*Gr$)udQ>`X#!rbI#,Cї\ O:.0I /STF`V?md7_֭A|{k_係$DQatBUճP \K!w MbD=6/6\Аql,ZE-%P!l@A ]Qx*g}B?`3̈8t\^Ebχ~WCR5"p9H">rVoyUvP^ߍ&רu9ԉ:3kףPtӕqپRT!D|Pت%w " ^Rn'Ա`?Je/J<1y2FrQL¦ bWot,&2(oYs(1KƱon}QYmz;\lakT̲{=R,|&߬gSm=#sAꓵbbPG4d98rqد `m=Gt5.aEnwśZĒYBvpu//݂'?fΒ#j^mQc֓٧fy9g瓦E6}cx4MEW#xƲb T^} ^E@<:I>"U yrfY.Bp~c"i&q+/$SEX+RʪP z/Hu(7?Lio(։I%j",,MLCґmꦨZ, TJka+w6dvDN1YZ,{:c4#gA%dxmW6 d Ji#t 3$(^5j7٭7d Y- K҄%ً[b%?VQ٥-2E;#/6eNwp_#@\DGАJnNjVsrbzqhuBdsOw֜z{H*?NSJ( ED"{Unm=1"}cH.I*#1Gckp vUKђ>!ﻵf.UIpi{aNH4O[o -APeօ*i8UW.GYF"5̿`eSgzRFyy+p/ oذ/( uA~^R\ ښX]R%%Gm:LN~9>V#/)}cy򣁆,BX{-&k1{:t&$gWVgʄ<1 h'Yf|-q'-.af"*ú]-6!oƪ|ep G8\`hn^ @0&*nmVP9BW* u'{ CYX|^cߒг!qjz+WDŁ;8rE,H[3SnfC6 5i1wle| Qvk6=Fߕ`Ӝet%A^ L#WFXu{nW?s4T *pnqYʼn)岱z!g' I%4(bt-×5asf I}!CbDj՝6>y}Bz/~.K)w.x}ʮI2XԞ5*ПO]q qmC;] M9NBO ut_4=YݭC\h@n34!K;uznT6p,{y3oԂey'm+c&c'8TlЫq [yR6>D2xAK蘙Gr{O}*p`HE&[<2T+[:3эAfS8ha,,15$HNŽq/*,+Ų v Zﯲ[7lnR:$ϹaMvgY o^_YX=٨&y`["2wxMJm`+GL1U>i :S 1.ĸW|x!믻[fkUi>ƞִGUwBdfj֫`T#UOZXZvEk\UYv{t]lZ?aD'(w z{.[ ?=]P3r۔Ҏ(j-R[֨3bG1aـ{:G #}j:A&kbgEEo0CV )k|_$frG0J PRtB4}@M ::Xٴ13hቸoP,.yaEPKqSkQirlf \)kPrС} EiEI<:8BF2B ɐ^}n҄ÈOdθ>HFWU|LSZkqѬN;4j@=/v?} q& YA^ K0,vtk,жwM*`֚LcÚv>tpG) q4&#u[2hDʨO¨4gj-d)ύtR 8/5F Ku'deBx!=IW4dȁL#Ib6z^ETm>=$0ELaQ.01p`*5ƑT9Nj[Q7@h3!#3g>SvqŅ䐧3(XA#> <ZR\3Bq1P/'L˘-5A)BJfu:5z쯼T, \OC "rC☩1Ρ.`W=iq.A$QW[м' t.w2YYLRG^=Mގ&-@%.W#pGAv|7!L?unQK"^8 i>o;sַ!q pWz0Ǫ:b&߁= 6V8l>{'8/ۮ;ezcE9{|P) t,+(;ajPAgH6x*觷'svDO(ڔqKvj*\b]gM2y# ߈j='G[M-rIksY ۃrc4Y]a %?~v"g'KV9B"&1B0*`lH:bPh0JʨR^jFgn`ϯюFԖ=R!<*GoGe<_ ZKq(3AG?p*ٺ+Y-ώ=n`cr_wh],mZt |]rxHQw'檺[&=iJ=Oχ f 2 d.5;WTfr-iR*4?'-ZD %wD ,GթsaIW3X6DZHqwb9T ;afNx/`}j*'0fMMg"͸JYt`N0b/\ gq[PSe|8YYq4]%DP`n@\n^PHh\+zaӶ!kXmBs qiW5̫h'⇉[&$ГeSBgE)hx/(цDo'CY-򡷌{Td>XksNCWC/N)9J!2P=^@yR:D/l 4U1(vmKSR]ױ9䁸f_I5:ȼ"\%'ه7ABK"fE겢pp@eS?d=̳ȷ k='> ŀ >TXhvAO;v =j a#gA6 be>Q9e $kV~9wS[A:}v7Yv|h¶8Bܬͣ)v4P' 7uĔNg8 }}L/yi-fZ2/G+a6Fk  Kjj>b wçPߒ܆Ka_R.QX)ƪgN<]X]pzCmȞ:F<bp3Vѕԓ1w3 l@WA6Zhp  7q񥏙-fed\bDǽ>RI5/tZR̶}R-p- K2̆$&&j=@Γj)|--o$Ng0iɛ/i{<A$F*Çlbn] ~!&chbC衻"Ys`7PÇH9@0mOC ?QFTοĢ( } \Vk_ǍE|'#$w$Z<J`A|4DB. %u^*~EX7.]RZ˛xq22E"Q54$=e|\w.qQ3B+*'BA>׷ hEP`,ι\3jCrFȘ|ߥ}GKs |sQrjky>=KNk bh03r b*UYꚳF2QZJ/;UL,ϙG#<훘V6Cz[}cU mu:RvvTŋ*2Z?g>Y4b ʲW#ұ=5D0󀊖 ϛkń6:C™q@w i!:.2֓ 8=/eC&-5->f7sZ0UQ֕)] Oin !?/]O%n.⿦`G8wZ(=*\Yc^4bpAW˘D*ىg.jw[CJ $J.8G5=(g?VNAI,`"R| {6ɤdM  I$h)w Uvp/Y? aye50]oS3yIpwlvN:z3WL߉E i&q.aҀTy{{di2N`fV~2AB^-W/O V[$ZZ$)'YM9Nr'뺧"kwſHw2B"n9ŭM/- D+H r3w?ta4 WCDYIJ$4yk MB{2CD1Lxsc!úք_\>r!@a䊶R60U@Kżg6shZzXlMfw5Zt4G%5Y:YPVRBs!dՂ**@yyEi÷;1M=mL9`vpWVX wN2pؔysrAWB>am44Fex$Zl&)#yio/yQR)'tG Wea"mfJm,a' Sǵv zb?8 -3iCppS"2 S\|JrxuF\(69wV׏E- mi ꠛ-ufW,[XNshAfӺZFO/ a!C4Fɇ<22CArm[ YWĮ}Eڸ/1E `X(|OU0৭L_wm 0cܿ,W,aX@]Gwm<=Dkfh>GRƹ ބԭNŚ"e[i8@J{!sC1HG8QJ. ؍K/uz,ߠʢ8ӏJ.MItJ!Z: d>Ie#P(D!da[}d:񮑍ӴIQ#R+[Uw!-g!y Bn7<ʼ9 sE.AhLHd&nPCgL?dPZL Nlr˨iO{}DjgTЃ KUW` 숁ߎ6S2-=Nu }Oj'g9* F˥ƠQa\~#rn i {c9=oȞb ?ƂR;hIzGvx^ԏ&jZaE -H YK,TS$uˌGPn:h Q[%".Qa"\9JRSfٽe {341hd:~GL~ _|F{PzYIȬen }ڶʊd%W΅V#_?uږn2r7Փ<\1\SφK`GNyym+!U˛\`AI ץ-zs`{H33g.׬ S8csܤ&{ySpq@BTeph\`V?rBrFɪ/4MMZ9P'FMecI/ijzK IUV rQ3Q@%a 34N`B1/ ?hܝ\TI K0ȼuDZh%B,YNE*tOX *ϖeJPsuF0Pg'*Zb;շÐ|xl7ԒS]yH_T)_T(.jApŠY }i엱EEYmҀpQ]{>l[5^;y|Sl!)r~(,׎MYB6ҽHw١{=YZ? (d:eYΣZ_peoWUYN7iD i𱁁g$,EǀP {HBc6-g L庹k&ep/L% <ŲSv_V4sL~'}퉟2S(GWUqi遐/1(-D EɃB`f  viq\A\!Yv?X~V%Cn}\lmR` I[;9Lo<|fpY$ 614P!|=;}5$ɒC5hbkqwr.=d>!w)b~-F ` ؎U@35I+xWO/{e]1|mqY*Jd EJ qTupL{Wd^׽V WE*P>0!_wO+$Aue}!c <GQqQb"u@i[lA(3L8S2ݾ7/ۅ8wD`uFG)b˪Z[&ϕI}K 7Q$#ow{vJtd ]' 4.}Zȩ6 q{lԺ39&`cf{ o,!)vJR1& #UY:,xFR[57جm&!D('t$NcX2-=y4ۚm[`0Y$Ů}?&LS>]#/@A}ЙmM[?E}A8 ])l/ A~$vVS'o7HiAnYG!IiF_:\Y "UHτ:+>NMPC\6R.G)zqm*eR. K5}n7UeuVo,m?eWf!]p}nHM:s1 cSHTv}BЎDP]Ĩ5KhynMzlWǵ Ʀ9M/{V^"P{B7n^[Ϟ r(A2TFBF$[Jɷ$T_mP SAgaY;4CSv9?nyL\e*q\y@ q 5\@;M3[`$68_QUoQ>cIQ5&2+uS|+ )8_Eu|!W1"SnY^P@($!SEj}yϩe"S1$jIwNW~xDJ%n!pEA,. fa~"S+ 'OZ8_X7_١eLݑ?> E 㗶16{A!MKΡX0gKBTSnpGVQJ[`~ݒgؗ~nn%lv^Lj%1 hFے LܻÒޠϛ쾷?LtP$) |HjP8oоb#dBv-<.~0)o]ǭ 5S]1|cRUtTe0ݯ\hI`$d,K/TҩnYo,Ξk,ԘxfIyak""9vS#ʾ{2vSA^>k ?ô4x_v0djWӒ ]zGi!ړ&W說YL[*h ]%ʍ r90/H!{*T'ˆo9D[ Qu7ZaxTUlCU K(2W @MXZ`w\r`PM糩M%oY9*wNppknqM. E2&}4)7'Y\p/3ZqmJ|xihќ/o'LOw ou&ب+c x+f2%evy̴Xʬ9@DO67 RLm 'y[:M$'[_FzV2:/B\~no6z8_r^ңrHmSq:)90kKڇWpM<|CsǠ'B!$yYf&q7"+Zqea@WvV6{4+zT%kDmh8n LpkIE9\~~V!UT%gA6BRT dd,d鿡6Gݚy1FRψzfhC~Y-n9(%)ّu*3q 'ǩdi+`c1X|%'gcٝ67<@&Uzω9:`7N]8j(8?dT9 VbDl؈ӍgJq R YZ