libbpf-devel-1.2.2-150600.3.3.1<>,|fL`p9|b#."Ҵ/˹=hRRCAfdR<@=ؾܬ"Do<_4J./0OzM&8,? tTaza@0n3hF5HN_piVe.X#Ur:ĘR#RJ8bDJe,lat3LaEųFN\n.qUF1wiKLz1vRB[dwy 䉪zJr?c{VYuZb$(o9>>I0?I d " ? /5<   D  T0T  ( 8 9 ,: FBGBHCDICXCYC\C]DD^EZbFcFdG<eGAfGDlGFuGXvGwHxHXyHzHHHHIClibbpf-devel1.2.2150600.3.3.1Development files for libbpflibbpf is a C library which provides API for managing eBPF programs and maps.fL`s390zp36`.SUSE Linux Enterprise 15SUSE LLC LGPL-2.1-onlyhttps://www.suse.com/Unspecifiedhttps://github.com/libbpf/libbpflinuxs390xNLs9I E${! !?qkA큤A큤A큤fL`fL`fL`fL`fL`fL`fL`fL`fL`fL`fL`fL`fL`fL`fL`fL`fL`dfL`ddd1674fee7c38d4f90f8bd38cacb0eca8c1fafc02d4890e078ba8e2c481e417334f8693c88554b9377dbddd77efaa40113919b3245fe5a517160492e21f409328f64b77c97b089ca06203d0451407844fe93933b4e36e7315a294745fa29d058fb7cb679c3641e9ca8d0c317a13dcc3553985fc975cdc3678413b6e1547bbbf6a7e320a7681c18208003b15c222707f55584752ab1665fdaa8881e7e020885141473b036a5f154b2d5a9eff74e4adeeaefb649291fa151a830eca2177d39d2a410e28e5bca81a5d782e27088da750712c747acb9ab1764bd944bf3e7fc15d4b50324ff5032adf45d6cf35aeb15e8335b8b8b509d5f63a43dcc1b2ae345d623284856479a26578ea1893eee35510daab188c7547bf18be0ab01d38c295420ed95b24b09b8535b0eb9da94e8eafba8edcb2abc742bb07dd870bd216c3eea955a18d8ad556d599405c7c779b8eda644bfd0b0610929f1140734aaefa961dbb972af14a2f7fa02729c0bab05f5bdcab5b0b46e0ec91387518125d6bf6c4451d536fe6ba95c0b514ddb2996af399caba5a312141b227f36dd91f7e0d08573282c9beaa6d78a7039f0c5e1dc558d775f8f5d353408122b4524b1f8517e888243622fa39500c7316ba0e2d30f5a95983aa7bd5f816aa9c94cd45eb6908168a44f22b76bb6847f4addbd56e2d5be20c4ea0845e972672fc07b755fadaae5f7abd35d71e349e1638b9a0c68ca90fad3df1d6b4e430804d2fbdc15e58d02cffddfae38953bbf0b9a4febcdee6de55872501d5c1a8f5d8b0d1650cd4d5351995ceb22e889f8calibbpf.so.1rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootlibbpf-1.2.2-150600.3.3.1.src.rpmlibbpf-devellibbpf-devel(s390-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.3fLd8dP@ccFcjDc< @bc@b1@b)@b%b!@aaQ@a(a@a@`@^(@^6^r]?shung-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- 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 releases390zp36 1716281521 1.2.2-150600.3.3.11.2.2-150600.3.3.11.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:33984/SUSE_SLE-15-SP6_Update/fc35553e658afb5b81cfa75f5cea4316-libbpf.SUSE_SLE-15-SP6_Updatedrpmxz5s390x-suse-linuxdirectoryC source, ASCII textpkgconfig fileUTF-8 Unicode textASCII textPRRRgH?Y6utf-89c5ffd0c27fc5d3825885bade609898f1c1d502c15f75ab23f682308a9d4295a? 7zXZ !t/HÉ]"k%ʽe8^ |E y6Ya(7QzLr 3[x&г xBIMz@!SGxGcdT-L 959Z?"6;=tWv|嗠C+>ʆ^f!xMú"Ho46DaNʝůࡨ#P@[5AFdbo.MD0&Ŵzq]&h0*ev%yxHn"lM\Hw/ `^ĠԔ؏2!POJd)}h3"Nuj-r, geF25 =#QKr{>gSq 3@|dTn +U]O8 46ޥ(Q+X'RBfP?Xe!FRu!!e C/d"U"#\g&2lõǰ,<6{!λ~ z [6+>D&?=|.3Rf{>V :'|K&N #xt`D)B=J~)^-,Zxyg`31WkNCN)@%tZP2 w~wY-$"Iu P^v߈.--x0el0\^\.6 yl3RWR,-p ݎH4l! n"jÁAPDJjJ -`f ޘ:wB-U15n69( {aF:AKOG.-tDn`UŊiJQ(1BXH^yCF92҃ Mz [)S.^vfhvC1M7!@X/$߂IJT#:!vvirb[Sqs;2.͎Ԛ>}wj7C0Рm:YYNjI~sve%og8pKeյfL.O2B ݚg K'h+-L5:fMlU_CڨY,$g5&4q+[]ڛ%3P}bƝY#?Q;}%7aI[9Tξ) BA7yt HH簘_d$TVѼ\@)b 0JrN#R_t4]z<uF2'6VSyҶ6c?=r̬+ˉioJ==,2Z$2DKpҰnDES5li$Gp4g!Ϳ],g4٢ nC{mt|;j`Np,]U >ƕLJF"lZ8xL=ѫ4tI9ϣ0VnإH88*v\O0 MƹYt~0[句@{\a[$õ/?g||Q1m5n9XP.®|cpُ ]!Z =OraP +`[*NJD˃Т8; -T1;ptiM4ґ?hS Md]3Zl)4Fԍ;G g.芉è^\#<+'z2847]%56\5ͩ[1cÐ@}g')`J@džպq9s|($+GF(kfN]q|Ad0;o& {2¡怀O֭)q/o}#kr5Wΰ~jTʅ?Mq ؒSVf|!cQ1[ByX]H) GI8scfБp<"ɕga-&= 㠫UCNxvF9f]nzث^>6wr2,g<&d -'Lͻ "̓1`.=Z9 *e2u. e2MT)t2A`g}4(\D?s:ˑ;q̿7&}ȥC9yTlI죦7U|Z w0TfA]]GͷMb\:{0vmHI߽QUP۹s(y-[)`Vѫ­f"n*p~Sް ~]X ckၺaE Ր:*<xz&Eg0{oq|-XƤ晥*d#={s))t}F{V=O|)@Ьm3 U;q]}dzGdt7j7/#a;30 ̼9ssÏ/e2}$ۯէK0#21_}] t{ݙt6XS:  pXκKB ؾLV4nonEQa ! 2X 905OquJXro ]`{8`&wʣjO)Jv{MAPh8'M x9)B+ѣd۫L|6d;S tIA~r}ZIJHՏ3$iS-Q UG."@xr]Bˣ/4=Io*^v|_̼uڪl)Nι5qʠ9 q`9 X:fǏUy0<>xLfmk"Z)N8Ѩ@b1kHk~* 3j#K+3.u"ži3.JI iߗ]3MAҋOI%`!#e|#5USuN]`F~ `=WWCېisZ1}ݳ`(idAnfcet$=՚v5j$ [ |wXu2~q M]Nv\JP߂>џq la|)_uGs}ITW汨uyC׿X ͶCI .6Dhvex X:JJZ1kQUfQtn"fKq>؆mѾԆ|zWwBQ4 Od?IkIr˷ohs5Fq|%wz"+ "<=[Gư qeV1k@ 3yo$Fƴ% 3۶HUL>!`{k:vrP3 f( };8nŲbIh0LhEݺG+5Æŕ΅>)2=qBOIRȉ}&]@ =1t78#3m,;lV Л#u^àn+9*xƎ}T4(s-iebr/$&ҐtdqŦ<Qdpyr?UjaꚌz%SJ0S-CIPa4^肑655 BQ-p0rQp,f7Hv@SC ;PiAȍ/⊑BצYQHQ8VF5n!,o+SOE{$1}H. +JH-*##㭑mu&H rY/ 8ŀ'~]S`|Oc㔠jpܘ~/~`{C7@u A#dC 1okJ?ӌr'M P1X[265BUgQ'/Ia7`Mf)ӠHvYq1LGߢHqSQzBSy3YH 鳩6"U$0.08Qfڨ^>n9PmeZC-?)mkD(M2E\L^.Sulǀ5d"⊞bh?=˽hW40oaZ+տ\F1"QP?h$P[WE.&3+aCfqMbN5M"{L}'ȉ Es.Bqt~22$ zw ҙl{ByTg,>oD'1*r23׹rH\ eXS-9i$73g2CJb$4E }۫k2+ɔ\FڛsVẻiXe5^;F0QԩE_|>TۙXfĒD݅u䅵d_)B7G<+ e[Cq`I!9(w⨎(( }M@s0GW7küYR{%3Xg|JKp{Nu 2DJQ/J$OK}+ Ez|ɀcPﵗL&?ȅjs9Cܠ@חQɝy)>)ouJ}9Z>53,a%vEBx|2 umpf URye].hb( T$ /NIT0t#CNNplȴqW{rѾ$gmqӴh|/({戂URX&ICqV{VyԧfoT펢1HyBu֛K*N8+krg6r":aG*!OHrghx߭B S͔ Kyz@bW1`<F͹sE(ޤ/5ynF35xޤƲ qTԡ~y,87gk!>S\L޵{e'i|^uV:tH$hH5vz|(]MKdC4{ԗ[,xEG ƈ:x^}(?Ms ҘL0CO&,4\ȇ}jcufZ^hcG`j<`<|rTd85 rٱϐt0AK E1@NOn|LWD&v@/k)_>%1V3q'(?v$qW6;n{{4-RdnBɀAmZؿP7]`yiDkrX0p +atblTT 'mWCdHRY"(W!Ńtu`(|_N#Vä\Z!4q}>-T2ww硞O@ XC{\X%\5KI]۪yVHݕ-[@f*볉. ڨ=f* >a(WI$k3=hO~;PQ~pp1ۭICmxJH2GݥݞqL9gq:\r)n!X'gMNƥqo\hNS=5PB=~|!ľlD݀:pV :Z:!=8dInE~rA%N<>tvON\i-ňЅxA# #!(Jt4"H^I)8;;YW4ȯP[+! 8 2](eI$nbѠ#54F|g %@x(?#ËqI>c;^v:U!⥞(|3悩\{[ ڿ=۳wK,%}73 ZbZ:Vv*l^H3>5& Mi2yx0$\\Gx܂lMA03c6 㹺1`w6O^%`0)_. q%nz'ͪE\-A= G8R 8ūeKڳz+_P;dwW)EG'XjƛSw0/^cR܃4U)ۏQEq',@I9aMz4H2 f+1̋S}4w[þ$7-FcO{KcuEf^ 9o80P= O1`r]Ap.Nט4CN Eʃ0>;pоrܘH)ViW/{ ~ o>s:hv)fV_DRc򕞑T%GrZ{um&mw }6(jk%,Z@g3*Y^ݭH->DOuuz{Gs:mX T->y2+U1`*mжpYo2's c@|fO缎~Tj NwÜKQbĨo\ap=,]X@!:'OIc[]LLY ]Mh6o* TRuk&i0 Ak]NgO=^C<k,8t%tߐ1ss,T.`AȂ 3\S76G|_~qlyzI6I(qv:4+Vr Ss@14 w a%Um\HGvg9'h"r#'`%R, [Wzַݾp^_:q&fWq.ɩS ArILFL'Sh ɃwQ,eܕ[MI$hTJsaM^Q$h}rUʉ˦lAڇkj*>Lpk˃@zoKrO -[0K'@D`[fiLoUg߄=#A7? |5WWg4RD-G@ EiQFA b@to&c(v+nȱUaU7p$]ZfhjC6U]d&'^#{ϬZ3Xɘ\ׂNPR?TFe6 Mv3{.| xծem~lz`}.0\$p Zào_8#dDTŊahEe!HUUH6O҉e b`~ Gz.d}K I L94 .3*S/W>?_^JV;X'h,{[杊nčzWdY69V6K*Y֙2J y&V!QWV$:yڂ}cbK13DX-?/Т>)Ӄ:HFVtb CmPaN-_h&hhۯh+:ȳ$B/yB+&,3/z(-7,_TRi~,))u~ˣ 悟R┊n' #1TNQnٹh# b:[2aEn9ƽ(A>01٩x=@LK 6Y[|>fnڽT2؆ER.B(jl1VSc=( Ȇ]kM?-yH^}H'\<}FcU uh/ZayQG=URˍCU ý=vH ?Vm'fTڂ΂j3FcT_L.?$dP/XIL955XJov_ݪ{5$']^m^ksZT=/s^Y:TNt${_!9&\'qȸ6K_$y`@9O8oY/%@FmL_{{zC;[v1Z5@md2uO&hWl_ cbY!as^օDr>dgĭ)~+V|VGzhRQV~BXwj[g+ԢJ%{NUcNcwUHJG"C 7.+g|hF9(9#YS`|:\w(n& iݑˌϲ||0y^^3 o ӥz k9Di "b5nUӀgXdB'Wd[rH[vÒM Jf|G֏帏V`b Ɇ 0ꫫBKzs@͞5β/};LWO}]<ޡq3#9oPZ po @%*hQ<&tn Y vudECx:fN;tfJn559lrMX :d3+ձ`o}=2wSU`t%@@޽zWÍܖ$ l޸8)6^PsZYl7Ju+9:?5Df5Y=bQ31qF|T'=bǨΓΆzO%G<ݦ|Ӫza|Y1`ܮzvCg>bg- $&R#H$v!#tm=NRX%鸔_Ej:M^5cHI#E䔪aF3E'*O ie,7'D̋p =/䢰aɵ`]ؠD(֔yVgɊ8|fVHt\$y5pTEGWI4Ey$1!Oh7mEcI##L65 ; xCv9cpF{RasA>x"P l7zTX柃~>pE1)44(q{C~@us7 xwN̸u,u\B/W#\mOYE N6m7BȥKg7B ;^d-M"S{M!H\qZo^~PbVDv*2/hEq$hDrUAUq`(Ntq'nGrR))hZ|Sm6#1Bp9QQ//6s cϩ+O]9{ڋ¤4kѳ࠳>#co5D#uрOI#fg,PxvU<~{cʬ^EU9 ftoJ-8474NGK%U ?0/ɐxh+}^J9(O}9WGs@Eފj/&=rFVZ>w>"·uB||vST0VI+fM*4T.''>SuҞe{3c3v%ͫ?[5<,d o&+8aEBEHg?xag7\Qhf- b(uup.I Z7Ni"xG]ETJށ5`0kҤ=Jbʠ蠯}ZP:x0ߴWډ^ڎ-e=C>'y'OIjŀS }:TO"ue +XѤǠ^JtK3?#2mHht*Ys-.VB,Og<;(Fc9;"24 r/Gé B*9Hj,lmd\H"jmx&9u^ kjHH\ ]QA9?]eZa^2BX1M~n<ߝbβj,g08^p]+HOVqDU޻V|~2s`wÎd>퉽%u3p\`KA88,+_3ʯ-Reh7W ^4\z宛dnT($(&lCbɎ6/c56"!L'=$nU_r<ˁS󎟒#ؑi8xc2 '9[.9ȿܯFu9BR5-}B'+fg7ֳ" '/8CQ[ZuEt0Ɍ0-3r!nděF!9)i",;!!&u@$KHW$no,^5zlcFN"詬Uj3PyzFҏܡT M_QS-@V4&V-mˍxӐ[VKKC #Es-*s5DVRp^֕mLH7|ua C:Z8\!ޯ}LAgssR3$'ɿ:žv}'HDEZ`:y{M]fO4{ >a?q-ʗ$E+RH?YPŨ@7Nڴ?;G9omqxw~nb#ágo*/[¶g+dWk/$W8"rr#2U1y)F_Ō2k4 ViWCD_*Fd:*LԆΛ:*-^T[>6@0S q WFZsH<,ž/EMsaBUmaaVD7Uߤv7l]oy žSg}냲(wuxc;)+!`` " |Ǭc'tB8CXǹND%Ml`a&)dxCu 6y|EK&3Km89pMt@.Ou%oא~g gy|bf1U_P=Bk?_|MQDZЎeCúE8֒6PcCkj_ȉ7}&l3 E^LZ_0Wi5ox0;|hs~dʢ4}XuP u;$;4)pjo:@kC[3 +-[@02Z G8N '*i}S:%(MGzE+P&~GWeWlbqq6GubeDpu{mlU:=[m@zCw|j黗PY {UZ 4=?PIfx+jɂ-oț䝪۬LF׼u0ڛ4Zq_Te#HAͳo#勸`Uut7;*[)vٴHb@ɽ"\,5h.)7i^%5՚A$:ʍ ?@`zhW&6WY t6塒KF/_ *pENӗ8]V7 '2DNUS:Ƌ;dxj'J.tTܸ f+-lB%#Op*obԀG`H x)fHh(钆z&#x%(~}\D+ 0_z p 8$nIꆅ'1/wsP8i=;.N% [r !3a^Xa5F%M#ѣA_ c*vv21Ml0\h72n8y (>[,m}U 0RAHxH8soN59h Wy*XnDVt{*x4F+'L^(sa@}XMIhГW5N;z52 421!Q!a|p۳홊4Ԝa5i=7Tں|}`Q?mVT\៲vpGҔvPl'1?Z,:ǀ]ņbN 碿 ^eʼnmr+(Ruq Vr =?NlDZ&j9;#T=S,A}a ΂iVdž+LXq_OH0gqOj2.>GTFAc>~L#ɷe9ٸbb?@:޷BF%BfsYK^Qˊjd4HyAE(T(tIέ3>f,Shu/zAU-` .ފk01o3C+Q~&:<;=%e*r'{xrّ<')ؔgr™l}\8X?\ =[D$Pdv87iyzIdѪyZuu%O"Թ= @tlO0\*?y69N?dմxomw㌲m6E%ס2 PԬLPGL%ǯal%ަHk.7<7aNn%#xq=V?HSGDi sU;RPF·r>HR.m9L]mDDWU֞y!g;f^ Vn1G i~!kY C@P ^>2賀\6@X3N[}[`!9W8V\Ih>3Glf$ܛxDeflƵRT24mTܚ!~nX81(VB͠&DS5(Kpb $|) V]/ZT~V'dNbiF3O,: mĪ3I`xAEk!B$^ױ!]. h)!AY6:m|w.ZT&cugv644> ̛8s'HYN' 9)_&)4Ƴjϰ{/30 !8ޜIT9c;nF\rDU52oe+Py]),Ψjױ%pc>V6J-ϻ;HFG. CNrp5k#52Q9&c ̔`Rvw|)=D9Dš]rYE3mFz22(istoZvEZV2@)냯(Ře) 0?;ʷFs4`P&D"3HuG-c 2bu_'tټ ~Gԣё1Xh& hP&@R:rayqFs1E'>ϙT.Fu$RT%YLӗo 96X۪pSp5=.4mLfju*mѳ枥iS#B'6^4 VНܜMoyz:BǛ%zB|Z@Mz.[@ޠx+),; eO'2m%L}L zU;AŚq9j4W2h f{>żVo7Ķ&\RoF!Row8"; ʦh.gNms( pMg݋բ @(nz}ze@OՇJ:cO1hIg@L.դ惣Oa/;iu;_ !<;7+m:mP/ܶf3&S@8zX# 5¾aTD:L?8$'4L av?=c(5v!Td>gh8 yTLqn"K.,]yq?N'J*{`.~_ƾnm1CL9uuPO(EK|fLюNɉxvl#>nf9:bgɓ:K aJ@>+4$Iz"}Q 71$YM^-=\E75fyiKz:ү@/k 59d㫣mMl'ߘ6? fcK98 2'a軇jh]N1f̆Ȑ.܁׻9q2,P:)/o7M:LI]Yܳ߫*$pnد 5VEÇWW3SqԀE?dCJIb>^WnOFjlʁɉq`FB5Ϻ/ha}FR]ŰZ"ө O `OfpZZ9_ xv ]LGB걿.oّ "H\qTCA*LP=(r=K!LHtCv:Ki([wZ]Cťmũ1Y䒱6b5pbe}= /2sUJ`h}e3GZk|o@80.Jqy^51]DnfEm(`8+;-8CS*9d^?ɞ ׾ݲvge0(< 4, _-wmruB$$l5MÙ18عn $:`|ݢCւ]ìmaOȱ(c }CK!_KJSfO~rM ?5XD9e vpyKӗ|oe\5dYUꨳ*!POΏ8Z5++X0C0戲mdaٚ'f.ncH+Hk7ê|ń9"*Gh'riEv;~g~IV9O .4uߣgNl\vA aR0WkzL&JeTҜl'FbӋ=8l 8"Ԙ'0|H u JR9uTMUk۰ۢZ #25^#Gj#,zv}fAT$H-̕2fPZ@v2y9`F-&9؝ wGp6EP _[b^&u)Lsfա K9d1,XO]˷Y$r/oSzXjK2Q.oQN:ٲ($m<7)?^wy1S FQ.{Ob0yf7 L)C ~[dWqӐlN5s@1v?^d|̨Eۦ20SE9Qlb)p]V\S%"PvFә1g7𹖚^l*%[J߉OZEHRvγXIH)ќTpJJ~?/ST^ˤX$Bk `$"iq/OrN8կx*5b&RM p(8 >nZ,hc MĎ]Bf(tY9i:vbM8Yuw b,\o_t&aVSɌd&4N&Q? ,ơO WEw]*&&}cA* Gu.鑜AS0> OQFU2Kڣ{) g7SbHelTAaq"NNd ~ٿ+Qă_9b0)uf˯|ØO_mE㢡;K ;ck`_,- r&R]hFȘ+V}jJ킟a[ ؛;5ʔO-bH6lg@p,%5Da|f|z) SDD73X_^'zҕmp!_U>q;e`7`C@^]B﷿4(/1K/5d: ,$2uݖFCͫZ[_)G_~J;_Ih BU!އ{@;;p?END ;jާu:%IR.w ph'XQ MBz|_t 1Ɇ/TPy%o +cdafnٷ"g#H,Ft|?RK^Rd\ݴ'O3|i7/>hU|Dlri5[ň-]?%'#s+~Pv֞Ջ7=n2ΰgT@MCgVYkƗ}ٍPofny+ B 6a 6=۞|GL\'$`&0)8Qkfۋd;pHDWۉ2*jUbB>>["wNNJkل hӸwl59z9 gGB6O5ݾ\#z+YjY]*8=3GC:ErK0k6Sf' 06H9- '>g4_x4@o'6bbg;/C4:!S pŒu&ʐǚi 2S28h]ϫv ",d'!2B(!.*E D/ˉ}{K3 )bfR/:co0ׁl~CW lk'HI pHa#]Ҁɂ;- ]6KXk-ђjꄫVF؁#7i{K+Zȵ=ͦ~w+0^?@3!F|B| GHo&VtgEI@Kdq~vhL?f QQԽaNa0D[/Ɗ uFy%ka# y14o|,DŒKQ;NN `E@BX"VIQ!VҐ<PkЮt@G>v&9fssN/+5 ͺ`eĞ*\u/ X3ƹ;\ *fwJǬޓGc x .՜13`.5F rtY4R]A1h-&caMP1_ <s `y C9m@P2r>2XnjyO]Cv* ,gBxXC՞ 8a.A*0qzQlb_)]{Z-0A;\{wnrhċ(~wY?y)Au݅![9QMV0f@zW)A[9mM' %V\L`'/aTRT(Ǩ֚ml@Z'G%5?ERqD[Z!/s)1J[mߑ(elrWIE+J +ö0tL Bpy 7 -.,(伕[fk_2B&8ڊI}`&V Fuך&[w?*&(ǀ< M?xUl[!:unzb/g $2P[:LTR-Li>)R)@ 6xyH `Q姗>TB]m /.(=S=&\1v64bFG]O,J8 2qKiN_б4VS26ڟ`BmݵTOD,o꩙}S/0oJWٿ7] *8JO!^3Xɷ_=A5O-'kQA܍oTd@mU0qZiX&Tl,Mt[(4pV^nvl? `؁B_j[@eO$ &Bxxō=4'q6a郂<F"jr17b)YU~Mڌ^wV2-RR{^@w^ZgբL-uS*tܠ[}MN5ӛ;Փ;ILڒ d'.bT믢VU @ zt#F pN;ќ`c Bc}TYB?}z (;Ju59.kvAqq`n m)"ڞ@XSzm6gPboқdʮJH'UwSd%ZwJF>^t^ꕰHs3j]YXf4%$;)( 7ZOq*M_q& {hy(aJ?2O̻_p1 L(2Ğl+hsɑ,5}sCۡfZ5ÃLD2ys)d]KyU-,C "ܐfڴR?ߔX,!5mM3ZuM%Uu R?bx/>-CeVmGI@|e oBDuXGqYDn`ثϜۃh}8GkIC+ZUKREk9JJ ǶFH!8芖 +dVhqwIȃKõy6M39Z'iŹ_ SMʙ&bX{[oK1QT7. K m:]~A bӶ rO;g~?&/ :+{C2>s<ƏDOj| c PjRy/^U6[;o2E*yj[GO!: )Tu,㹘rZ{-|$xU3 .`>tV$]DuoVMK<)"xc4lp }94Sl7}(t=#ưJXfHm ~P9nZ$&E4cp~u.XԶ*+e}Z#eb7Jko,4]5buaZRz>,`Bg>2$ ״ojc :B߈^ ƶ=~DgӥR:5THdtv=]Ioc֭JHImAD2ԍZ/%r[oRףQ6Gɩ//Fg5{3Ohk:{mXHB9'!"EQ77*;#J$E̡ 9xbQTzp 90AOa!ŕ깛=Tj'ߣsV6<.qndp̓Tסu4\' \hIդWrN wYz)L݈נ^yT΢.WI5g{N>yyHX 貐CNы w̻mVcj=j_0.^u읒"D"ՙ0l a3 r|0 %t\@TxKoB~|MU@$3 ݭluqŨCa@c0VL~P SͯFg0baj&@TD"l)Cf~O-[*f&f_WVE|tw9:H.M$ID/r(~Q;YGa VhQƷ=:TS`R2C]a4 >7QpKUCs#]fok"^17qk;@:pz,G6#z]sԗr]mż7Odrb*Yk um'9RK?48_F9H& B}fEG, UgH!NmKt^^~ }.Z s ariah8i<-icRdڄeuuK+d@jy[84AA'rRn;bl_by2,ge&=7^eW' bU)WF ̌&yO+9*[Џ2vx9y'C)kf_HTPDjOެzX J\5fA*9@o<8wU!%Fy&3XWn L*Hgqt,wI`I9z#}4?2|B9,Eoxͦ8͗jC[~E/϶08٧-A4 }E!)99a~˿ 9Y&OP,߃ȹO,sF7vOă/"]6Kn?aI ΍dNf=ް+y*׾c&I +=ֆ<ceMfm4 i— $%V^GB$aʹ\CO0 cj~IR}Y)c` ջ!ldu^UޏjVd3gQy _Nӟmi2'Kup5 8_K:?yov/ysϓ1oN:vчVmi #'AomY/oi>0uƸTw f8 B=(ۓFԉ rFPBG(WBȋe<ʠ߂ȷ4BnPO%Gtd6ڹRPxv[4H^."dζ#7h>r6Md$X. PIN;;L[?Є|sH;WzW/sW OzOA\ci0ı"n7jPH_`YTM)_;6ҽ@"g!*Ԩw'w@L5]+ pcNPaZU$d$[1)e~^ev#QOsKS:b$|Ҧ4$``  F!M ̯$$(AW.2 x'^ \ J)g@o ҃BG.S2>M E ܔ;0heKWg"T*Np4š.t@蔚Ꞁ [L*d,w]=c9Us9R[/ScoH8RPL@G2>Iن3WK,\o|.[)aP ܕ- OG%t׏)x ` )ZTcSz r[}|1e1=e·/" &o'uC#|wi#~eDfJĽRU̔9l7m\; ` 8/1u4TPr˅zܼ@hitk ++9a@,>l)uZڎV!W?&e<Ӊ>g1;/m´O1* vꦫ&2R>s=aS :*?lMZ͂=PsPD ef&"&_8wqZ l*rTI⹳wb! |[`w>=5+=Z 29]޸NLi-㊼5qU!!3RqwtCة,7,εۘ,cqKKI;' W4_y<_$[L:֪ fF5^t_Ƀӯ#5:Bg~eb}AUv&S-Qs&t߉v4@͚f2Z֚A-% hnG퉝.>8A=6Tt;KsI3QH6y&?46Į >O6iS)l_iYK;v)BU~?әe5;- K93$%(]j\d!QqE h4H}Ao@Byî/t&~=GJ ܋PNe6ƉMv80a,[@ L=*/\%ˈ oE7tPz8nz(,[$wOLoU0M" W|Bbb4H&QR-p|J YjPj5?I.4?76  o~k)P>؂1SΤw탐i5LU_HMNLᓙcdgvSfÎEGbKI0zj>"odd}7x.Ph'5c^~wm)`A…dU3}0$#je+VD8 DOP6BrP{N8ZaU2f&0?3['vAm ΢/yĔ417 xCڿ+>ݩ-z$oga_y%X؝P0-EpJUAsd199:#O\k+[aߨQg]ε9%Z.UWc$D"5Jy'1C85393^AN#C-jl͋(vC;Fox3oRdhKKy6]#L{{{im{#w{!x]v K^c΢ @[Doˇ'F5ΞFRKS4٬N/`8IFY6LGT sZ (~] $FH[?Bub j;uBjGȁ*Ԣ=յkAO泱,E $8l(Mʘ KOcUB1pC]-I6 υ<./jU?)OƝܾmW $TY>st ![~k9>JPROhx* G:j7PYQS9HYp8'SNӡTL9&NAQVh#EsD ߬ұ.vKUq`YGϝ[`Ж-6N%ތjvi€EQC!}/3qI+fBOdnߥhB#2`clz^T *d,gF>gA&R"7 kJ)!r6 0e;ൗ@ɘL]y3؇5}N`v^ø4yc̔́=X\nBE_/^b<ϗRAu+B!.pgbuX+.K7k]e펻lJFC܍]7gK]|H6"Rܗ>%фh'jɛ Qj(PR ߉k=nsCbi+j T ㌕JԲѢC5ɝG%zw4^;@AG.gm*#L@ fi&' %#{Y"૊UgaUGz' -&4`)[ \TCu6:zRݿCHp<&ʅʷS5ixqn&Z#aN"f vS k$hsDe^_>`Qw,2oj[ӝ<lV%jukmY|M\sFQHCS)'kO7-Ζ3;q#v4?ڳ_ ?4hƮG05̼dAW{kCâ7! Gxt׌ 㽔rV$O%yfR\i+06_>]>b)td~0 /p5{RI8Q Z-G96T9,7)0.(M Y"w&~fG /؋9(40r85_mD/.m{h}c Qw"ʨU~:IwH7wU[QMJ7z)(2Fyչgm q !ߞ鈭[Vг> ,-LC-Gnɔ[WiiHy[Ѥ5=ɠn+ZHMEϪI^$n:rO1jeW5co˓T=<_}0o` `qT>kf@g|dKZ\f &W:,.߃Q+(e6;R(^ūy2 V' @6AOҫ|aX6GSc8D&$z3%QMVOx!0 6DYDDxL+YJGUFn&X $< 0>~3ϽI> zZdF.sN=k0C77z[[VK k/ۻ[ Dn0@G7xVa*}KZu)Z&Jlg/,S8m̆RQї? }!cVHp`RjASm7WO X; aѿaitMt~^*ߴwHN %^tm;O ~s[XSBVX)VO-H/`X,ܩol-UnLUk^M>~u^;op 鄏6&N` f;0@0!(V`Y15d;KEmܓ)c׌>?3+g}]WWC[L\8 07ğHhN$Q9s zN QSm 6ċˤK@^ؤkyY(KB-в5(l?} !iwlkLn rd>1`Bܹ]`bۙDLujh"jCG,8CΖ|LOBE8$y'pZL ӧ P Ϩ~v Ҝd? 2'hOW rRǰc`U5GM 3nMq \DC1m)pk\4o]T!OyMRODxI\3{r=*kji'?qeSD',͊@ ?Ɲ4=eIj0 \ ׼  7t=Iz.:Q 8oM}_nLŧ0WӜ%^#ȡ^h( ZX޷_z@$S*٘ix',O`,9 Kh"gnjρE x?뱛>e\tXBwcה>~NBTdk#yLYPt%'c25B`f܎fDG+\»:7hk|_S,8qq${jh(>jvnGS殳{hQHbY$D~2 3* }'yXV';}J V9ZrjG wڲj|Oɫ@}/sT OΪ` 쪄KbD[Fsйѩ,٨|ߵ;Nđ vuB YZ