libbpf-devel-1.2.2-150600.3.6.2<>,\hFp9|xn7D}YEpP _ >EJP)M>#z9>v@U}ƚ/|Dh*F_UY8g?Л`ġ <ؖWTƎXX{;0g(}3gD 5tWr9Ņ ʿB)% @i;ݷei!J49c-;˟X5/,t j:k~S9HlT /QB g_姪i 훯v]:C4Zh>>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%ʽe8^ |E y6Ya(7QzLr 3[x&г xB=iӴ`#|@kn  fjkpII0fC{<zN! ${HBcFl5Kق_ZzU#DyD×Q +,L8q9貋4'Dhg׊ǪH'ݼFe\*BlG!qd:1 <;tבIw_xCu>ι.΁IIB0w9VWW1YFlNO^%YT%1^$IO/ 8&ouusGj6xvռ=hg\oS%JPo.m[m=fv/`3jIZ,LGp `yG62ͯˆ fwC_J!*25/?kl6C?MwQH\po \# I$iͫKk`~5$/Rbۡ?`1\5 kzb@{fl&vkܭ'R\ޣX(?k^\C(z{n[#A8De_7G_X壢#uRM3n ;UU\y1y'."-{xၯUBØ/\`^wl)Юt,OwWD")Vi,o sHAW3VĪO~Z%k-oN]JOHQ^;T3Ep7"nϽg_{Y{_}K"F`'/HjnȂN[FqdV.`9ߧT>t*1'T0V ZFO7z&FPw[mӮm'Er֚xؗv1,Q9롺tx8.H ԍLwJQc KH|;Hp$GT߹W\ȟ%O؝x6adVޗ!FIK`L 4M%A[[#'dm ߧ rq6'AB'>V̛*Fj94g;My/ NsKqW´Ky`8c4yaB biH Q:ǃ SNj[5g8_#c偶d G:|㗢hд>kSc6m/Y %4`,swZP9<5:.l0Ј}~z_]J;%_<Вqem|5#K$IئNzK8רWһ>u1:X^8 $ 5MJ߯0P-c-!“2r3ALH͐j0 #.B"T Ih=qQؑ(1f.uyK&1鈢8/ @WZXT8~k&Dgo&=e'y&~eߊu x6[gf .]pƨʮ#a;b-ÿTGP ?Zie#?9LgrG\Ͷ64j׫0QX{{-|?j Y9o>k4kS^*es;,lip8j١p'6 }="vr-Ir9b(=t" aWO_ƻyhCΑl>hF.a?2-y(&`\8OQFRaE%:^3,F'6rҒ b}siI8ƢA1lJ'-Uq$QR.H]3RH {Ѳ:v 3MrSPq8Hv!9A$z0I#gc7P!*yPm, l {I-PBSICj֙H0,nMp٘\u6g }W'g0Hj8/KVJ"UR9ZC2a #4UʡR6ojG9%-CAX]#O3N50 6 ^&7.߸e%lTQ}6 HK)i "n5pKR}$@1\L2oty5N2.h:jlgPݗ'eF.0pdNxq_.ʡV7>5fr o=u9EĊéQ:8r.v)CrRoz8W )qj4ikPyqEVxui&}1c~͑C-ĥ`TQypXMr<]\>fcD*8<@c'62N3׬? ,8#[}XXpF>HQ;)6Ԥ)wwl6x$in7 *$0&=(t%lEbLz/gRbXQh{ԲA u3懆K 9O]@`ZL1鼯n"rg6RDfUUe8Gy콖5_mַWfvH)rC23s(&}0wpWABIB;@xǨ5Q~_]l2p(CvPiHOm/r0h>u{}c4W (1|URځDS)ې=S\ o7gMB_a]۳$KPu<67V_= 0--)J`"xR#Գh"[9UC 'p4n4_V:^!qYQ,h8&`Aӡa|zsz!p.(? IZWW 3H7QqpV~q_={$ztYvUk3Tq@Ԅu RUwR˻g=hDJЂ@eN),cÍը{yMjBJ( 5TOՏ`y xyZ ΀&ځT͖OE(f+ӱL0 |e=4VXį;ro`[slP~##-y8tLڭ uUh_qh*Yg`Tg(H`),Z]3ΡNE%È "z !"H3yD\.h.Ӷ+T"AV5Wh2J ^w3;ht_J9@rCOSWw ێ<:M`TtFrv_5[EJ{b&/WL]cRJ7:[=HZ467nu ZXgcٕ.wkKC`AaP[<؃Q-35~S=_q:ҏ "qӈ 7EujQ@${݌rZ$3smj;BW2x^%OMl S3՘ 81SnyѸNZ_ThA.t::13+XUR"T"[iC}4:yC2 .dU"Z#KFj3L xH`ZwH?JeXC1M%X ђɒmQad)eNmwMһ rhM=xvw8ahca[zτYvݤ/q WU'j ɱG0vGQ = ep?sC4; II?QSrn0z|XP-xU[$E=wTmQ$ ad9>`d-`W$ͯ05 nT0(Yϲ1uf"WpMATh,CҘ)}S.W Ý᫺3PQo<HSh0g\2=BbQ{rS\XB i(SY@E?Jv 3 d+=b_''B09wa8ye;< DJz(idUdE2HT:Y$yu&OfA }[$l燧sR$ba" kV"wz”lH{qoV3y$ A& /[dq7As!q%TMcL=!bqUY}md|C K{}~Z?]?h8^`p*1KkOge!IIJ}"6$~$ eE5.K;Kl~8#tf~a 11&&o0$7|vtU}/R3iMb||XڞCڬ6`c>^>.9}J'a6=}[R5k̙4T-J  m8:K;b*o"GtS!it&HY jty_)3brܠf)`xggfc uKR!qG7Tji}dc?v0q\9^$Ç9 "(QM!Te=iS`.(!h{ _']dO!FOWD[ɤ'H A "i=viw|jTf`aΨ#uR8VJ40gWf(]r_MG58GcҦ0P.at8H "LhU65E\\,6)Uv$=jD:N( sNt ;;KlSӅ8? 5Uz4ZX {i#'\hW-ؑRkǐN3'b@VH7cD|_rғbQSx<씈Θ7 h js ЕDd \iӠzY&7hpK=R$$iXcX3epoXSSz  g~GCFrsFE|K$ADbǬ(3ϋ}^RV =^6<|"w'Q bG`.<^ܑ y"M=j5԰vmvÃM=mK ƞG}M̟ss0Av|R=4(ܭau; ZrqqLqС{Ibe5ၣ(Ҹb6Y:PP@LVX'R$+&4]^\D~co^]fTp2s-Cn* Cڞ+M=oF; 3a-#jUᛯ lǀ‘~j|\R@Kcm>^1~ #biG6a*)# Pm^&'z6dz7 )2ch4c ϥ@z\Y;ͱشiIH[+l\zT~u=?f)\.-aBм˞C5Q' )~tiB /҈cS׾$.[W%E$y$L`Ն)π̢H\<%ߛ>K&0kEA`LjԾE k>tzR"v4%|)فڜ-wm7zr ~W'o$"C1aϨ쪒/kG+.̹2B]"IxW`e8*vky#戍ѭܨsMqW_nn7?`Y]_v8I|4ӫGHn/P\ϻl]4:o$ڈHp{cY|9#o^F--Sfz-E ]LkxiVȧF;~ICa HDaݾ[Zɴ{R}9ָ ljBPbPJ-lNX`/s Sz$ PƓ^AUA4swJy g r88=dᅞa L'I֕f!\ZxÏkWFR!z1bُwkpǯ6.M2jqt1vƵٛ#957BxOsjxP!7;G/YIPҮɊ:yό<_  6RҦ Z&|*R L#*`$Ӓ}#O4UMš'2XsF}kJMY)< cxSc~r]zydg W 0ʊʊ-~Yv5o_1i6 h2Ev^7B+><8`ALdunc=y:ͤjP$3.4r +@ aFAhl2ZE%֖[%{LJ^_ojn#i(T >A&tQcpU_ llxy% >Mz{,(,3H;"1Bq']eX' Mu0n99Z8g$>{ sKl fHjB >cTCPBh]wjHpu?/~SˈsQ % Yڭᗆ/AOv =~݆+ԛj0N~w.-,Ԅj YJ ދG:6[^sݔ5<)v376tʟ&guAϡEb>f#[i =}}VA$}ҫW`fn' 6rѣ_>HghٳMԏ+EMƁCxf{麃rx89||:r<1WP{Gis@xp>vSh mar7{ T+43}r|!m0?6Y4?]m 0{9 I7"5Nh\rGA|>"mHgA,P(X7Fa2]eUPbdP:X@4H5YO?_K΄2D kmdP7ؼth\++UV^/I R5s{ *sO: SƘyTLυt]Qn;4;  ΩҊ -ϡ# d y3XtN o#I.'@\tw l2lGL.g=4׼Hn:K XV ̶37c%h/&x٠hoN< ?3P-4w.;C?Ѱ~\by_ɸnQR w q[#CIݮ5B잔llA&S]V xЯTMz_ڹމnjlݘn"aP&6Bm 6al}l8΍; F~ V~!6 g%aV="P3mK-LRra)$IGiÝiy J̩.M[ͫAI:%F{ _6ږ@ {mrڀcҫBtC$-\K sIVAA~r0ZY9#H54!3N`GٙLο % q ';;8T##"͒^܌d\l]dSj,֑7iP@4kC}R4o 5ɥ\C<,+گx>T)K:bjvnܟ.8P3-a@O;dwxBE` hB1ё%F=w B "ͭA0 8Ffcp.}Caer2^ܟd1Ø? _abYӣ߽2Rk, #Cy/\]=m˔ @]l9GI\d 8r ~lmHRbPօ?&wB sR)NJyVN5hRsᏟ  2W^ za(D=9{]3Mڴޡķ--.F>nc M*4Ecմ=x#JWygeNǟHt'2a^ْa``.MPkN,bBUUBPXJRO%x0c[6C!g3G*][9u27tÔapip-sy '"M37DZ;Fau- Oszz1.*Gk>5앒0$_[)-5-h9oDM.Ctvܯ3l)YZWo_p]]`X |#ƆEfFJ!cF.8rt8w[~ Wȶ.[1^ݔ"88i@%M)(+i;FJHDd1EKr .ӀeyKad2GH=fH)hȯ<݅913SnMu^ãPxD JtլG  d0-\ϔB9Wv>  mDTrT9NoA)G+-eD"=b-r';u,"t`ޕR G!y$7EhF=Kƥʘ#ZE4w&Jnmm/&hI5Y:m} .nMWc~>b % :2. ?>GLKŦ$r)9j0D}~|:]X 4‡OE6F<x[-i1Y3a' }10!RTx({UM)x;{U齪D%@QΨFvh&Qe Ok?q/ƚWFv]OxzVe+[2N*όv0[LT!H,ʵ@yYH9A5%Aԥ!b*0 hM_3#OP,.Qzh߷uSBӖId+HYy PB +@ , 'AFniSL G-}ɬw2 ,#iR,Rzna/`giDޑY}PIɵ`~rq@0qҜETEwtQ%G!_JH%.<5J"~be)E0IF#퉨D~@F"% L>^JݱEwucܘg( wl{ԲdʜC2K s2][(y4HohVZgug$2ʫ9KvT)@ 4jNtλ=qއ ;<2ZZ˔yr_loR ʌVNqL>TOB.vYiu'$K#w=YHM)ߜ{j9b\(\)tF)\t1hrič=x;O { p\7FjQ"s `ـ"5eėN\G7cb!UaLϙJH gAC.|3PhݨH9MKF9*zCa_2anuBAc4? <0ǝf왻N8wc+QuK9R:_'|o=FO&8ZIw0zq,OQ? = \ GmTQ#V֓ŶJWW|XQ^LNJCQQwNUwfC?V9kyD2O,W܀|F//>[uwPѲ(Hl>f꧖a>'0]}f33V1<`zN.:vӏ2pꢻE'}4 `r=6.ThTv bR/Is+Z,WoE_=~RjIcsss`P|^% Ӣexzel띐(u,rfnp_2'Ȼ CgЉQԊ/<{$^ @A s3'' ViT3RSSH H1@=/,n)YG/@7EsX֫gl 1 xbFXLf\-|bc"'[XoWMG!BpB3V֟ɓf^g{bKmd)!PLOоJy uNsG Q{ntڐjw%6^$ʎ%|SVt?lWW"|E~5$z#ۨІ>0*y^~@\QC)bY\^p= isAWXBZre +E_1 x'n@]27N*JIX*"M #nm(7[J&B⒞xy%&48~ #<vgBf"+I2R_ё q(x"L{7&,9wqJͶTZaXIk1{여S4 4բONu:@`є'Kk(LE.݃㩛g2q< 7Q>]KL^qSY%B1Ubbj `$ QyF-(F{ Mʜצ < HŢɝ=pυ] +'BjVpQ|R핮LN66a.s `G/~m}>ȮbWT_õf /YE8*ߺ"{S^$al6suN,p&RBl\<. K;ORez\=[hqsE[ޕ=:·lVgJ<-_vsL_ziu@Ɓ9vj{V7pZ _i gdEXK}*VUݯ,QgvY27/䊧M [$o-Sr030>&Q;pg kZM4 ZtՈ;RɶãX'A_c$NGcM\(JHP~tQ5|#UeH."gc^[\iBr2Yʇԝ捐f5WgJZJA RQ}<'UHFW-!qY_b~ƉBOv{gg,r+U{ bE_KP'88!sUB ShtJFԀOVxL|Žŕl?-E4,_E+5eI/ltZ 4Fsv<.4'Ijd-}%D7 .r$EXIk.J' G|@x֫i2)9.6gṠisPL/y 0OrL P|Osy,hWh/-"rX~NJH[1Y9NBͦ*/7jiyÓ-uׯ-ytGF41z9V y tLFK0L!g/W1a"zT Ql78{ ]vjhGw9*GRf5@ 0 @"/2f1Xσ5N~G6 > ۜq9rOd9O驉Y,́rF h?ÊGI~JMk6,Y(&\ӎ~Hi[f\]2+No9>Տǂ :>M}uô7CȲ#'զ>w2΃OxCdUJVQ_||ۢ rZ'{c}׾Ov{2XD7q&q.MuJEA.+$ {BXy~EJcLjԝ7*SaqUq3xUK(SRv ކBJRc?@wrb|5ʺ砳$38QÍ 6АK-evcW(?dċv ipt _nek+UTRSwSȦW[Iѡ tp+aiP~(Hf㬧nH7<q/I›Gwm]SX82C-I!4Fg ǨrihȽk7I1+ 漺7zu9 AZ]!lbAPl2}ád7a2GSp:u\ӊiJ]Qo^h>̒ӯ}B+#l>;bg^abrо[[Pq0l;J׾R~X,U ·Roѹ^ߠF5DV\n orCbq/yyֿuWphpGUbX2Sr"-ā.u={}A+Gj:F|Wf~{ԫ⺂l&R{r$t΂PRU hH(|a0%EQ1i!2B&pMqq->BPz8/WrC<(3pG9'_FJUE. B3`cY]T6~DSESH\I`KX=TRI#(B-,D86Ubg.o̜WRl۶2E7Gi '(㟂YCq0~yUR m1CprA?FhRPH.l1g?ϭz^U.$fNB.oپ ExfGLme=bf2.msA2Mfp߁$̫wl9g no"ˌy?;Hr3,LRDѤI(8EcTDUݘLuT C9U¬op" !4g})sly)7$eU SL#nNtRn$S 0L@s1hƈarږeR ]rO?~" X!´廖_q[b&M^*rWBk<@%PNwakm Nϧq;K\sgPҲ˳&scP8!Szw 6&;m]k-gt#)y7׽oTߖ]xgA3&#dAJmmvPmwjù^X%p =g6=;Sfi#n}Mhߕ&#eNqQ"aV(K,!׉<]b^wlJY(NC8E;]eM9B8lyҿFu񔘈~n3]٬y/2:i.t%rQ%σHP>O= bﴟkEQ@/plhNq?;8<.A!XWU|vTKZA-oXA([\ T-m{$$dKOݹ(*omR;:j)iQf'㝅-CdɠyG}E%v\&K:˲t~K X"fhZ*+-1R4b``Ӡ-ltN4qDc,Э4%P THҥj'} el[pPp ly-,e4{oRZJ$> 7Yۭ,4@h.Yr%0be]}Y݊P:kuzĻT76TM-P̓9,DR.iy όBpZߦp{fD"P8<'YgUTӴ~^(N<PC%BoYOsF}x}Z"cD^21kǞGߐ, KMm WMj}e(Ja 2nvmG]@:0|J%`Iv3.rՀj:&ogy6]WyEp&"11;>|C _xQj,A-\J@6:G)yS)iu1MJ )T,Js.l q;ݢ o3& g֋l}T-Y85m3Bx8PDC~0YoP|ddHK~y.¦rC~y!3_m9Nu:c 3q| 1AcG9:I82S]~tksj*>w&:h~={zfƋ/9̸VɰA#0jnϏb܀P]xOF)Gf$u4|@$-& 7PT\e1bvv%hT3PZH. ̻< T5g.BThەUqV䑐CԘ p?M& ٧ bMbH<˲12Q=s7@'\QWf~1u 6 5I$>IJŨd;P wzW7W>YG :̇CVv׺!N 5{z 6zt bM2V4 Eo_PVH&Ce/0Xk/1~чĵP_fXߴI%l8|(A{]و[D_3qS-oPVO|I<&hHna,$[auz1*.E#cy: 2FbۉȮNv!o $KN Et!ə0HX 5j:V9ϵhvkyG}j`e!E үzZJclu6/3,aӍh0¡G&∓ɑNs#w>%jhCI\iOltwSbBS3dYq[=䯪1g@hh$td}@p`D6n u;ŢôKx.R#Etc-'`J="YO}son_fT삮G չ8dSm0FdMJnZĕ?LL/KZΊ'Ů\Whb yVueu 9gd_KV'xSՉK]<;hl'l؝0~{ea6THIǐaYp:?.s%$єgG4 NAjQ5 ܪ+& #QEStҠV}x]p %ib陙z1Zx-8nL\nڣ+r:Ue0ZUPm2cu0%d Gw~4k#esdA)e-ʟ$Fc8|ܴz2$!cNJMw6G|grC2|z%Еas ON^FFxnN"\wQH?!N LiejGatVc3TKDQ(OTi/Rbp@ui{_k'he<cBY 54 8Jn܃P+ *NMKz#挠Gq&Z 3 zrCQMS/EX Ǟ ِk0UH`T+M%go?PtlZVJ=!ԓdn\ƏND3}e"Mh IxE_ e'Cu2')=uo+ 8.с_%?|&-%&k&%E\,P#s.,J4i!3?k_dAejjR9:\4ET{yo)1 #Ok="tH>ChYC|H]5(Y2ު;p1>ҵѡlv><v $|Mᕓ&9$DU?Z3,.Ik0gjPN La"PF o9Q S3Lq箾 ^A L}m J.UB—hR҂y(V/ghl8~oჀ%[|5]~BQl_: XtO%=cv1XhU6ey[`VvE ʧ`ЙOCf) 6z5ߝ}VQU,xok/1vn3e`b]eX{;d~"EXpk{Kg"v#bD {& o@ix1A 36i]EA 0|K@\*+]Cmݠ@ҥ*!P[#,J/x?g>*^{j{ %SZ<|GK{=B>u?Z'RV?YѭIQ3[j}o4#/H3E@˛*jS[$D$Nѵ07ҁx~Q9C+A.[n @ X4%[`sRmHJez &.05]dkZ2v`u*kUJǟB{ ` |na2(×E{Mxj:2..ʜ?dwu+ZBy6l|ӧP PEe4YcdF4/I A*ϪDnCɯDֻZ4pԍ)P>0d:سg0$ <6.2'*+9a 5ը5}Uio8.V /ȱ-FRpσG miřhZCv?e%^|X%s{okw!Y>WBH\ ? `ts$ oQpJ/vZ(OF+_TVa| ؞}еRH^!EWklbڛaބoN3~k0^Uӵ'Տ,ѵbTNYu&Bm;ez&}_բ:^ DGF&Yg`옹[K5L%Y ]O q壸t*9[lY#5WQ {ab̷1E ?HysRowS:9z'& ~+aqgM؈xf x)n $VooBP9yْ +),kU_#ܠ0>N%Wx jp%NlL@ {dosd6|*垍'1 5_}tXг~2},Ŝ'HTs"7OSWB̙r.]F9aG ({EdL2g$ ߙhg~UrIٗP㪑 c2RyY `lV[Aw|FAsIUlpN$鍺74!nTޠ&/˶8 pT3 |e5M% ܣ1  2ץECJE:#Q#pS~_Qq ?mUw~qڥjρ-{oҾSҠowH2; 烝3RɋXF&39㸛߽rh @! )ׄw8vO*I)f.iϽa/gJ5*9[7L5y3k#B*u/4DfKtJi+[Ig,2Q:-DMOŀV3.c't=:l KҼNQl@:R n j!iVbٯYY^dudVm!Xf2sd u7jq~'0JZ6x \qpVܼA.^3vor>qR TS9i HKsS]#IGI%~݌Cg.4/$D3s[N+&> {GE~48䪇/۠lO.LMWD&s&aMǟ7q,[`q hMY:̅VT|iV.w3E^ g qjh MRPsd1=لEzK`7̝WcQ\|R+mYihsƷ_H+ YHlOɱ\7(G#,8QK/ Wy"c+ծ%=sC3dęs¸[ѡC`ᛞE@h--@p$J#J*j!m8 {wnfؠϐ{9G~ 73P2+'4cg bٽH඾RMG0醉EhC x W L9tI/:r~\P rHNz&vʆ}" D%>328Z)G&|tht4AТ5MSwȔ8vB}]pTZnODN Dk0)Chg0/=!"L[&UGELi Ԍ3O-Bꛉ\o=R=;CuB %8O:gW,cC  dlDQ̬Z(%'э2yU31 vbYz0NCwDS'A d"\GR~pmW8Ҡ{Mugu9tP4n+_[ZGq鴻TKa7$Rp&v z%N_~BMƆiO4i~+քe:RVDG>]MWӽPD̢*/w@""MX| ':쳡 %?lӺBSWܳ|a  CPM!գ Y▅lf'艝ONfs6:f0g:7(.sB;IĠ*릂1lJ^U]x}>mfT9*^KlfI"# &? 31(n~r>?I_+(%I0|Xch,"<(ԡh<mk,G]Z :$Rg IJ)}=_~fR7;k: Jm_IU qXO6FDHn_>*Cn2ar~@e’+\B$TN^lxy R "~ROAF׌ƚ~D (RJ5kOӉW_E[~Ry6Bvdҹ {8&~GJ--e>:kӌ _$/#3$({@(۳+D F `N!;bsϧ]ؚ_o}GS5XTa;%}{v=˴aNmҽӸQB|k3aӤV 2!6[G-[|4s)fRaS6"Z !@.[g{=NZ8Vf<-Gb:A HxyDMu\dҿ_kqWh(D0jQ x ] aoϡp4#>*= /0Ue&L"?6O[N=+p8 M0ISh-W*\ h39\ CW[2Jàsƛ^`IG^ɰ}0i]`ս ".NjF?5ɴ *@oj/BFVB8l\YJ9=_[*aIZْ+kMSYk#zCbڴe*ԫK+@a&uQ̚TtCh!#_ޏmnj~Gpt?D)` fi)r9yBlEhۅ !+ A=UGX M.SH?I Vt,42\m NЇ\"kU9ު+f?GlOrQC&q5 V4!'bJ6l^{ͽn=v)XWm+Q*.8G7aXku\~I'M9:5kPտJBS',Ta,W,J3#;MI:%)LX6(F<ܔm/vpn9h;Idž|`-yry[P8aůwfxqkt@U hLR4y3х?*/<Șܑ·OQW?̧'c~p4NzN&p4Z*}خ2בR)n֨-KI3džzR`qñXy{3"籷c'y'g8E/!|L7X9DB7]EZSn\[>}zHcᄉWAI #7 յTN+)i4:ttd^rŜ}:tqf@΂+kа-f3@\nک!Š5Y@+hNA&8c,\f2<1=R~?YgDxaCuU>N4AwH/B~, |DŽ4!Յ_MIBQh'ʃVRjmPne ON,/=݂ =k|kE]RG ng86ށm%%*ջe=j>!PruYe~Q4{CmC$j!F2: 27_w$d= ;گ%;% ݱqu%Yld~Ӄ[VjYckדxT]bsĈ$w.=2} n!"aF~_A@!rʛ1;؁)MA9.f\P"3aٶWϦ!r[vBI7&s"VaySN"& _M MK:<-\s~oU}rٓrCFnEmӋuEY%˱O Wi,4ˢoHƊL CK,Re)}hu{Icu,ƀ[^֕7LX! |K@Mʐ~H5ǧ@]"j#yhiCtZœ#Gȧm/\2ukgQD̗{l>a*Q*MǭO_'` "*>ɺS(;@ ȃ ΜAyO'[2fJLX/z/}RT,G\*dEW]\l pVmy31l&[hZe'sGN*s#1ݬ1 %iǍ>~GW .^&ĸ6tX־K^hODnkAU %:0^DJ+@}u|]qfH0d2>UӇmV ]|+p>QUm@ h"Kdɯ'YBĘh3e7hr^"Z 3B5ghbkWhB.υ+Ijxx"ܗr&[?(">,!!\` >Q׸*uFaw+(f¡ 8Tv O#I0? !֓KAef`3䞱JRxZnhYO/m`9"\K\}Qr]L$-&$ =TAdyл~+j 0-c&: 捫~ &[:>tVNkǧ=k#сi~ϱr';RR l!ԲG\ 8HƱ^U7@GsYӴD)IFȪd{&W'yx)ύ 2  YZ