libbpf-devel-1.1.0-150500.3.3.1<>,fL_Ep9|ޠ|\3cc:&ya<9 8lo\'?.ZgX(w'R M~>0*cF /EtF-jOYҊL7UjUڄ%L2+ P(}XcjWE@ w Wz6 yS7Ok;QT\ Nj%G>ʈ$:aV,qD)泐~Yl3Xc^b5-fӼh}d/x$%cfW)HVḅ>>A?Ad " ? /5@   H  X4X  ( 8 9 (: F;VG;pH;I< X<8Yc??d?e?f?l?u?v@8w@x@yA8zAHAXA\AbAClibbpf-devel1.1.0150500.3.3.1Development files for libbpflibbpf is a C library which provides API for managing eBPF programs and maps.fL_Eh02-armsrv2ASUSE Linux Enterprise 15SUSE LLC LGPL-2.1-onlyhttps://www.suse.com/Unspecifiedhttps://github.com/libbpf/libbpflinuxaarch64A#LZ&nI E${!~ !qkA큤A큤A큤fL_EfL_EfL_EfL_EfL_EfL_EfL_EfL_EfL_EfL_EfL_EfL_EfL_EfL_EfL_EfL_EfL_EcVfL_EcVcVcV2a23e9331fcb79c6e49590378f8fb91c7945c887448bf2e057f682f992158df37951d21f37e0f1e6affea5a2849c883b94e539886ea3cd0e1d5e30bf8241dc8a64b77c97b089ca06203d0451407844fe93933b4e36e7315a294745fa29d058fb3e4aab7a422319392972c75caaa6b5438bbc478466c7273ea17055221bab90a0cc7570f3121ad4b94a0d835ecb71f2c1883a4f9766c864ddf1b0e136cdfc7d05372e36702d3021859ed9daa57c6c356769683d6f442b211446038ff970701de4e28e5bca81a5d782e27088da750712c747acb9ab1764bd944bf3e7fc15d4b50337099a4b085c09cd9570de1145d90ad60144cdada69f4c23268ad2e16ed2802656479a26578ea1893eee35510daab188c7547bf18be0ab01d38c295420ed95b24b09b8535b0eb9da94e8eafba8edcb2abc742bb07dd870bd216c3eea955a18d8e0a85fad1ab71453b9738cfe059aa3800b17075e50c01e5a86ec75de43a25a05a2f7fa02729c0bab05f5bdcab5b0b46e0ec91387518125d6bf6c4451d536fe6b13b913cb8e8e0e98ed5830923cfd22e2dffba50281af8dcf27e0ccafd0e358309a7b427e4d3821688f73d5f7c9e2930058042b8d8dace2c3dc94b5297d3b8fdeb3e014c62b1a26bc6142b875674568fa913b10a0506dcfcf1768d600271ad5d5847f4addbd56e2d5be20c4ea0845e972672fc07b755fadaae5f7abd35d71e349e1638b9a0c68ca90fad3df1d6b4e430804d2fbdc15e58d02cffddfae38953bbf0b9a4febcdee6de55872501d5c1a8f5d8b0d1650cd4d5351995ceb22e889f8calibbpf.so.1rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootlibbpf-1.1.0-150500.3.3.1.src.rpmlibbpf-devellibbpf-devel(aarch-64)pkgconfig(libbpf)@@@    /usr/bin/pkg-configlibbpf1pkgconfig(libelf)pkgconfig(zlib)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)1.1.03.0.4-14.6.0-14.0-15.2-14.14.3fLccFcjDc< @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.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- 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 releaseh02-armsrv2 1716281157 1.1.0-150500.3.3.11.1.0-150500.3.3.11.1.0bpfbpf.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:33986/SUSE_SLE-15-SP5_Update/0cd15d3dec476d582fd15a7dc7acc38e-libbpf.SUSE_SLE-15-SP5_Updatedrpmxz5aarch64-suse-linuxdirectoryC source, ASCII textpkgconfig fileUTF-8 Unicode textASCII textPRRRFAֱ5BQutf-8c86d15e430726cd61676deba9f62e9cf6049ac1da24e821d8841b30b0ea47cd2? 7zXZ !t/x]"k%AK37i2Ϸ=P+8O. x-R=`d}pNpGe^<ʸu-."rֹ`@>pzϵzLg % "LGmiD6︲X'&/ |z"c7c= 46(@g9fyFhnz"fp`י(ȣ BK5M/k04pY lP#ĞήSL 0%.Z"U<2ΰwf!APEmn(Pi(%єAٗs$U$t'vm7]Ab⸆~"[ya ]#n%0ISDs o=CmXE=ZګC}ec;ݨ;͋nt= ,G av\nð?Qp= 1?UXnP#\NR%y622,oY]pA\uˆ nyTQ/x Eۋn`ieBL9|xmU#V5֖,pNJ+Zld_$ykzj;S82/2)2&H{:&S}oN/xg% Nk{Š;XpܩVJ` wf*E-7U{p)$s+OJI3F{}!T[$ IaL}omgO[a$/t3IU5{޼l;\~^6ׁx'Ycu"-Py hrX3/%!΄%&A.ҿV"朗<-GX<%8s(KYq>hiF Tcj*Vrc[.ۗ4[\n/00#ד`b#f[ͫ!^{>@,ti$?X&+l |blsuvp>W7`<vSE46)O/ljPL"oCwn!E=b8# '\K%?yZ,nAȥ\ SS#v/K0dX#Ѽ? ?qH5xdfZ}Mm0E/7:1%@%h'i3(6ʻS6lV}"dޕ~lB%غ&i!S pJiR8pbag f(ܩIk@휓GH+:p*żia?wJ4`)VM`pREe;';<;gtx r =AD-wX?м4ri>3 ZsJzZq#\05 > GzF@LS:aدFhjwiN1}ꡲ,y{Ϩf7I mMq BrEj޴+A!SLLT!|TjC:wڅ?7R-=E> |R,* jzTHПxF@[Z2{#kQ+NS]* AZ7잚^Ϗo8lGlB$f 7}Qu?ϟ =GceA/x—ѝLuj/}]n\4xI0yM[Uojvc,vrbOcFq\cwhWݎt8=37?VAIs_K-+E5geO M'yh?Vl15Y2r8E"C ׸`i!L4(kZdS^:,e U!Oi]/1ϲ>PItFCN8F_ z&)v7ЉsTedy71Ŀiل_0҃ǔrh)2]Oϣ|RHj)ΑnJZD5`7lQd I[Su)i68n.`N=`uTgB`uѧs󠖯]x U'OWJ0N YPrmG^;ޜ{qtGj=8YI3 fR+Vk"z՝9ZalۛliAO~8-d&i&}-0CDQå&hy$&*&NxjEFa荄Ϗd d*UӀJt:ř"0]uUa=1 W7Y0ݙ+t.֋0=+?+(v0t!(<$ySBSlY\93׊K-g ݇8WEY^hKw<:^.EB2Y$|Y3غ0"w5KbZn\zA§|z-ұ:SaRO.,8 4Ȃ^]H IvTѱMwࠗ6;&Q.- z<XK3h_d19"6{1ǽ]`}?q =HSDx:mHD1(N~+=X<_ܭ~Qb*gq8͗  gVE#pgJIG>⳿'zE/B¼K`A65FKWf j) K45ffs/ H+Bn@#sWp2ܤY0e@~CH[UXAHϻi[/ zj3!Ճi)51JZaL5 xuZp0*8x܋>[ͣΥE,TeiJY].;9 c"WxHbic:ҊzF!GdxT[~$j-#.̦|M) C3|^JGoӎ[$31n4[v{*FbC|XT938"0@f4S(!W%.V='h?UX)USY8!(_wxo⸖>},t#Y3b@Dy470ov:B*Y23@,΅";}/N7:$W! cߐJ-:@[P$ 4C⽞U N+C~[3`bL.dK-QZ87<#6WT M"mi#VrX,~X*423QZ ;E?bgj @ޓ/CE(z@#:j D3H~I8// v|WXjCqf6߅UGSݺB7߲ky#K3_m_p>q5Gw#JzHqAu!G`}ӊ5hڻ8 tZ|#grP唆oѠYbQŖ64G;ճ=Ʈ_OugvtGqsXoj<i^^r8|Y2KSPZ}ߝeW$Ͼˆ'JD qf'at d-Yօ[g S1miGU$G9VtMfp0j7S@v!7~0U~$E_E kuȽ{yƐcNyA*jT@ruv JmaA}ʱ7#z% ^.ٿ{uX*Hm@`(˚ׁ}.H%ku{,ўOGqtȫèt񎱀j҉B;`|7%,I)/ܙ B=Lu'ʞ3NՑi4bZ~MPMb#L[ jB Կ7ߤMHzx M!5ZJ&70J%A[]8Q%($SEC0G dv=DUQ"5pK)C5 # $7P&$Y ׯ܍]zmF#Cٞ,LBC8t4(m%jnCS N!E3M>knBSId^Zy7R1uHz r ?-sX}+Lq_KVy*tt( J8h=1" g,(+eLyń@lYsHC]?rx3Xay1uduҙJ1sUlWz6Gb߶rĐf:1H "z6t,~3H U|eMs]_{;AIQ~5菾XsО~$O[$5MH703?7ƶne8>kC.Sm+rJ Y49cCsL=go@ lD w6;z)Y eQ-ϋ儜H 1/8l*ؕvGal3oN~%G Aʩ <9aLl9t8ݱWܭ=Oo6"G/̊[PXY!/(֯B(uR%[d8pK&ʼ>ĈR@PdmeKTzÖ2(!~&@akxݟ' "MCԮVKt ^Eqzc5k rֶ~(5iz4k_/c+Ȳ.1!Ӄtܖe6UPT?m yXۈ/aRX7@Eo6NwCsH|刿e0ޙcF_gcyTT7gZq#ґ\̂PG:p=8DC e<\iSۮMTNP5 3BJoCl&o%@X?Ā7YL=S"|86dKniVMWS¹*I "GTѳU(ڤmq ֙lhJ\diVFx(եF>d T~u%s!4:o]gq/77ZT^GKL(R_ʰc_JަyE즘ϧ]\48|.˻- sK)oYOzVɷ7Ch- k\C&kYkD%xށƎlmUIQWCݦcaGkc|i%f\:QI-}p_T8Ȩͅ+̸ PڼZpQŵ H'.;DF7V0' h?`u81qiZ]los]ۃ@d (2%]Epf4wQ:h 32צ".B-f-bu~LIg19B2ujnfnGҸ۳5sefNʙ($錻 >âG PB՞Qӣ7fCʸĀyp俞f *q`]uXQ%<IO3%W]ʖGF=ZG;6 ~Es~j7B` ~/Y ]\ƕ."Jwg7Ma;dCIW h_nu[4s<WI~,Rvt/ur^AGmr<)G#qޠnǦׂoXђAǽqG::p Il)ӡ Nxvm4Me*V/۟xT,:LlVa+JFX Q w?lHi8a`B۶^~R)nIs٦sn&Y&&m;. xR@{i5FN ;ٚ+r,[43}Zx+|@;ze3Ϸ0ioq|kI_ k1( ՙ?Ȣ-Wi^NЊdgfm9j.n[˺qK~Dd7c3<l;i.FNeFS&+&~oy@y*1N>9fyN,y2n!մVyw[+y})QN37O `c¤9,ѠUoςgC%8Ԯ>c^E:k(~2YB61Ѱrǹ@5jLT(g vH0={p U"(Ijy˖o7pCQ:Դz/'#Yo[H(RRJ=SWaD@JWf ?%B.MS yXbzäB:d 6Po|8s _5[Lŋ#Nlbn/M!|B, "7 {م~f.W$otƁ+°*j+AP{|u^ pfeH~UJ{ wMf5(L`Ihы\p?n}9s 4L55ʃ02shtMafJ}0*&R3I=TBu*D)ٔP\R,p !A0-’hѳ*wYIp~wXm=^L (+~k6p YV]$LyZ6ZeHM}v)D;`V9B&h~~3E.Wg]؎~$0`-OZ(s?:ISgbV j*ٖҾ6̦z'W5PM{yZ>4V|CmvdJ.*{QL? 2$I]_1bH_8њ:Meq|s6LܥTĎA, VvU`K_ap6b#Om2 3{uveL44y}a~OsډfS&"qسXel? .C~Xh2Vɧ) +g m:kMטk{1k3ET`"&u{nUS X%F sLxЅNjha<6i0?} t2P4ccx)D~Yo>J}x螏ls36m,]FѣY Cjw;b{Qe *j7Jgo{M.jhUud:kW1[koK ?Ui_`&uUF x(x"q qumON}qܔAFؓ ^E^la]}sk"ix?FdA:{=ṩ0\FsfGWy] ůsU dž&)HZ$,6L3>:%]Eg{dS:{~bXiB] %|7ϋs=hvU+1ѣd|aaʜOgcWw&~N#\#Xvp|T ]NBxtևiyS9|S^$+86] l W~JDŽqiX\l!LO_$($TeMU)֙G=Vi"^dWSXV53(')\4є yduຈ]<|_S., %j<)SEL[g?cFUM»4mO.Gj#*%m6qx(5/8+t`&Ƶ^Ւ;qܨ-OZx:ӿӱlvlTGZՓ|w΅AIߛAC qN ܯp|Ďf+B4 P>ڹKgY6pfFyx9!ge"plљ.HIp7<И_dՀ'py6Q.Sax6c#Zߙo\y>~&qrzC|{" 2;;rGi㧚FDw.F/U#QNՓy;knrE?m:ږjُ }媛OR e2hkbV=jb+5'.e韛P*m>iM 0OTZKz7eC+_4%܍UAO9iǃJimj|,F:[5fnUB#vvlrp LTs}yyC$ U)dԱ‚F_s2a} POӎK ÙjԐC*)]~N="ଧPZCgXO1q\"Sf<9&Q21mx8Ormەt#3x]ݿ.,:M3 9ŠA^v÷#DÏ$MjX~aǒ~L@]Fl_/}$rC(lI|z1&PU1 r+^xa,DPfVi#AddA2:Y T f"j)笇M,z@Ӫ2*IDT \S5dI F3ܹU`07ТgG%&+r;_Jzr ?P#NDDdIohe=]s9 z#C'vǂOVSwĘE55Xx6&>`sY3Еzv,Ny@LeNNΛ :йb NjV8LH' erL6cբ&>Fn>^ـ-dU܆ a-&1*’~ ڳ CT]E1n P=ϚPP(Gz}:m+M-`!ʕjyv%YrιyCoMh3)6-78 9֫{wP`jhy{ע+N!r ~K^#& **Hx)[%[9LHͲ޲ yu%@.s`Pep5V:V%6(փEQF:_NVQ0 a7,[R ]Nj(#n܅X6"o.y<|cմ#46]C {q|D}|!;W09irlBєԇ<),5jUv{R hSQѵ㿁Ep.iڡBɵ@K3v+M& ^8 L$ߎf_T,38g>VR_'“Y6•STᬁc)KzmНEC1dPH)Ub'|G@v (jyjQ:N]9zBEl[ND,_!c|X~4:ͤfX[nAaTMs-٧5Yg'*sWF_8#SKFtw2>5̶ů ,p[m,ZG C4դP%ɵ&N5ݫnƷхM`Hl]Tԕ~u񬥗y.'.)ܯ~$^jҫ)/ދL޲JY'\*+,~-&g"&48Nls_H$\}h%0xx6_8י4(M !PDqPO#x7[@w H%Nrɂ;cɬJbOZ($L]F ז/ :YLDj`L5y?&9#rPn]{D1?믳ȵm!Tf67,>2t 5*+n#( S|@bRy)$#atw,O2v~(|}aӘQ _0b&'J/&#"2 99D&.&2z.):Lgf O? sn .J>10":UZ#䂓80ےњ:T0CˤῘ)hulǺ1 0k3ˀ\8HߤjU{H<kصcpa4yV$cVPp9<z k1j҄_KgN8x^)oMnA3zo d+})?$nm"˩H, @$tw%!-/U;c`WAK;0iBX`Y#N@8c(lm``'{js"}0(ۣb<)Kp1TΟm|}|!߾bPw]I*@) m9G.AQfrdR;KX+S2UGU5:jD!J|ReN`=]Eka9"BNPKn@UvF&q0l@3j`a>ъĝg~5Ϫ@Tݶ픭m˳qJDnW'r$+$2K RP,{^mÍqr Oǩf @IL2w.Wׇ#Z$SvTê%C-ݔO{5K3rR#;.mb­s[{/?Ux9=Ias,5m85kMw~9[Eb-QF`@%DzS=΍/h?d8Hʶt> zg!7| )X)kQ>4(n3g 2pzH3aKlΛ3pؑM HE价/au uR<*1 e@;tg{AC3N|<9;0;xm?LI-xª!#]3R|BOQAQǥ:\!/l4sAŷaW/yl KafpxvVi/Co]jo [D-@DU!IpSn*Q"!&[EDc11=WtzF5@Uqdgʝٺ:9U4mx'ˌoxaEşBDPU?`.Fʞ"0t8 .g`+{NO B.׍OK0 U$ie284;CdlO~ml±',D@No'W1raG20J".,7//(Ӡv7 z# ~G+$K6;~]3mH_,r4Bxqe`" +{i|gC_%7W-0\8cl/:? ɚdS9($tzkV`8I޴ǯS uuFr&~2j]V.LZyPǿ2!0d9QoyvPMc3ёYpXa\f,k(&p9:^|~I:|k1ZpOw^SWؓrm +Wu-e(͎I9@K,~m(cOU4s_UB(ZDV ~QiB;c.-z2~v. 0H5 "/U`Ulc }7S|ᒑQxs) 2K១K#'k$`=00"D2G1At~$U!?$}jY[r$5t}D /$ĝY'9 0"k4`ђ`d^2?N:^F7×`} x`TvR}rRqt?z􂳄a5V 52‡l!q)ŘU:"b }a8;{-a[rfd?g Պ"`Lʑ~uQ?D94!xLv[P^UF,0IE60@yq?Wq>٘^p߂s`["LhE*M;}Ȯ|[2Z$㡚 ]LvT\![]_fANmn a-:Ҟwy(' * a8);/d٦:4AWH1SOoI(@5dh o}l[FX,:j<֕-MF7iCȇ|LLtooKesvG]7SQ- coRWI Ckk zOn8pͪ(L&ą8 8d4c:oyVnWQ{v^/_>53yS+6X A2:,*. W3^lִ@wg-[bآEߤ \ ō.?Cц1<.ˀOq\v0H6hIQ0c7wy$6T7O"Lk֔[OI Hyj!ò={ .Ѡ9uI4kgbPټC^$lh| |XNv=(̏*_ ~pנ\@*ȋFۍQhDQHbp%e3WqU2?W0WvS° ZIyFU)|8Hq~gO:HT=Y`k\az`͗+h!tB0cJu":j)=ZnC!>{ 0uTirWshO;+Iq' 1i F)/{H5gT*廙WA㻬Q, n|>ݶppZ./ ="iOB幅aaY݀<-5ڥD`y>[@mVݟT4<4eMKIVsK:|@ZS[b=֞Ź;ͩ"J1eRfR銖`s=_pڞ!Gje*h{"B6z){UBŚ31!2+(4_梅жV˟ؕ3'zAIǥ5GkgiBЦIKۏ'{LD^U1Q^ v<.[v4FoF{E00r0&X zD@Z ˜KoJ Ǧl900.sD֯4SaG3hVJ_Zc_kenƥ/nHE-C~~''^&d FKހ& Bp3f$1V!AuIMJUt[Ex~a5OcW"m#μ+!GWKOrrRɴa2uEHRyWВb<ɞ%[_aQ2V/VU C!蚘闇0LJ"/8O{L.Ao'xXOβHX\THBҊIh7GANqWs/̶(4F9-è[Ã5()BH"EGv=ixȞ:&WOmȜg-mIUq:G`y%,Cs@B;'9(cQ]4\9.<|z(=Bw߽n4SFU`{Jh )fr6ou&ԓGk (pLXV)w*ݚoY@'6~a,  [֪m鏦С樏=d]!jE"Jb`ԫ>]Aկ负 jMtC+ޗ7*/*ilF[HFhK:G `pil-)ѼF/(=z-ӣrgo9ի_p@PxNcyrk cU'0tڷK$`ϱ:x:PC]:S~ڨv+ba??e;Cav;gv.c9Zͧ| 8Z$w$7-%P.k0T ONF4axUJ /LWF' C*q? bj j:H(>7 kz5VE@3v=nՅmD-=(n}܎J$̼V]2 Uz.rZSohrC~e$S$]y{!x@JD'˝T|W"٨ qawjd|0QsP)cWU% CE廁)Qs, yS^ف0IJT7"6q a:M;쯱&JHtqrK0c*^'Y;O!=s?v́Ɇ$j$:Uy#١ Xx@G]#濦KuiAP̉l m^115&.*這2t^<*o-yh.Yx<*z8:w!um6;?:ԣ?(8_gȫ) oF&ON'}8ᤪxU" pZiRImU=^]/Q~ Y8)QJ']ux3)@~NR_j++Uck#[Ŵ$ft_ ˵,@YI^@DrqB,&Nԧ)˩*B+o%槝hi<~!S Y8!u;d\瓪-dm5CU.!&r [-6h#Kɹ7J+a?=R)?cIRiںe%% "ZuEa(a$sW8e#ڥ͠T WznsQ9KSDQ-,=)Y/CqT8~C9z=NS,2()-s*e"IK` U@nr #:R! WkjBX~cJk)L΅QfK~p|ɗM*#={J}~mI `Z"G%{t3n2'zՎ29-d+. L1`=м,φ1!-&X'4k\2dH9[6q5TvBlbXNVitٚcTֈ窻AoK8 )cC|G+_ Urn#"2$rJ..lE_T`4 @ Xv$z \$El,|ӇKyr>G"ۊa^sJZ;%KNuY& S%ėz&ڑ/5 Wyӗ+2q*]A?uwߜ+K+ ?(oAgW8Q ߮H4qajաPLc%c pMӥY#yĆjo0F_[k(=M>=LdSr8EfǫF̱dJ{&>1:rG3J4SGȉ gf>XfQKX)TtR}| dS.ꩭ26|2Jrn3HmI U1%5HymRK\rD#}2}Dx[A<}Gt.O4wF0`+=>B$fBn!]Bڮ'G`.Qg]c&"<{f0TڦwoĹ@/:xň-7_Ё[tD~N4neWV[lM@UK_bM'Rm'rd@Y2j8gb\!qe-Z)j"t~ b-"@$<+Ou b@NKu殆҅2:'-`}6L>~s?P%d~J>B|K?'\lE {Xr 3t\BdYQ"ݑ=??#SށN.yM7I[8P VhLI:Ox\~xOZI;KYyK {r[G3F?>pE6ᡰߡ^8{;E~ 0YeVp4Jb R?gV 0kmKT j&:P #n4r8*tU{_(Fu3I>e5'xNl]D$y#R\gMQk'wg a %g/ζS'ز=HnS1oDZ+ 7!`F+[a6=NLh8raYkdF%}{ c|}V!7<2+ զ: jAk+U=NNf*`M 4[r$2rكDsX kf 5BW}(':ІJT%o2K}۴3sVOfMAiGp9?dkv&ѸT}[m!aIUunuWľʒ}=x'+բ Ix!Z؟'<~th[=bK\Tr>W-Eڪ P}M2ųIb^a<'~JygG⯺[ꃛK5A}~ x8u-D]`rO?<#.ꗆw}mbi8080Oe.`gbX'c nq\yCۜszUH^y]P횿uuzJT,VGyA[kQ^ > fHeL=`wܑٗd"W8\f8薙U$>.#@*AWph<&qST));N3Qrݖu دe]gxc<"j陨V3P-;k2WXKG&N)Ѝ'asCځsz÷Fz:sRfh>>5Piz&vӺMbZR$q֔|Ŷ[]`.q//KucOM,z&*n{T~}S;6H#~lNZ5` =VG[GhRm s!T8`Oǰr٭Y]U%=3ع`gw# H]Srt7-DHUNXXGC #Vq3j?c#y}Lx\8AuSԋՀ-9N'D<9AHM Az|k p> ht?4D=Ⱥ -A^Ye"K4CI+,{hSʽxҏ}eN%>C'A$镖c+n*zԕ{4VPv(XKi{JYM \k/_ eZ"ْCTyk/L_ -3"Id 5㒅 FHrV#oʗD.bni6iwE0J؃o;q,x߮ ̀үSϿlYoFKAsWH[1\II1A-,>R26P4Z73jbNz&L֛鎉x,.\An NpVoq -?Y'dN-2;^3 fA=9}p{'%.$ϓ%s'Lo{W0g0@mbM*t0ol'=02wNt_ܟRQ4"rGg@ L`'vJ9 7u8sHm~8<N7'[孛`,s\IhJUK>4- w| ZNa #qz_o7Yc.T0UH [?ݹ}ޤ%&HM:(9 @κڅ0Wץ߬%=Ԣ9}CF%ۚ@x Ϭ'IWRi$%x/Rp>3e'](o-:0|%vě]P@n\3PGCur25~zW˘(YMθNS/_Ts=0%9HA XIy7|+c7M"LqDet;f_W@b f w5{vpPf+ߙpG`xc6Il:par#F|;fwX(Y.cjq=aj895"AN[,,הV1u702^3 _NT6+aVui.mf7u#ll}zO&6o- ߖ[-qm_尅vBc}Wf.~$CRoy`]vPp==)|WC[6—{䘳',F)ѻ2Ϛ7Kz!'J4x+rt]AMxhl0p Qw`Sr"p:Mgkt:?|+UTiK*ҎE=w@ Ӓ9F'.^oQEuFLudNAUr6yq֢15"CV5,ߒ7dM}L'_35aK RɐY-N ,617u^jݎP(\3l)PDʁ:C[`暽Gwsw'g GWoxW/,cFT\gnpFoio?ˆ |vWX0nsk9,Fl_? l盼\ژ_Y} f֧\7:eRPō k" $L=aqtI>܈qGx[|bS!kPvkdLPYKPX)2jbr}QKmz9+\qێP0\x% +^ab9d+fka+\8+WfY` A}W06c-)hpF_ír]#z :#r= U<ӺN'F2?jf,\7wX7ÊǀrR[Y#¸:3^iWZJb8%Y#6S`)AqY7GMjr=pN^RjU*h\6.}RHCNDP{t-_8vt5[u- )zPS} rvl5eځ qQ-ZMFVV+* i)5(@W\X9(>6ݐOe-f;`zf;))e:ۢ [J n8bfM3l{FJ7VDX]3eKP)T')irq[g܍PWM3EO `O^wҖ U$z2BSS! =B)`.Pgh' bŞ1ъdls{OQ;-SAdEPuKC&F{p3vn:jbJ$jF챛+Xp;RxbQ6KX<;j)9iⱂF^?3pkܞp}P.V! &*߃1H |[5g?lx,+\>4- U/Cē{#8%ߪPw>V%W1&U+,: vŔ>*J(LC2й¿RdH=F2{'RB֌1lXDuиz1wb7 S)'u  #'L$]o7RK'niE$@ 9Og@+S~iy6r$d|cb roy^PۗyVe4 .BbBM#ZGQ7?dG߼ы57 F$aEX5ύ΢x:m:B /%]ME'l + `6Negym:7/Wo(CN ~[4@_Ȳ?!E|pyYe=$YOtP{>Sc~7A+#OImN]Es1.u9,P 0$)5 )M~HN3uCs .8~%QqӍ3a^M] =7Sf'$8oPke=,x+:+_}Ś|SW0x42ޟWv<.N72  ˘CdPsǗQ!FNQ[?&ՁzТj Ehha<+ʍTx" d|w~xr ,ѲE[NFV@\Y  + w>1b\8gctOq)CW613DS`Q`$6$%[Fh&@Fۊ^z_=:-BF\C>Т2m֟'Dm]z2tkXnw4޷7v,jG K*M-lgVC3LJ|c27 Qͭ#|[AO} ui𽶢יITcʑ*WQ\Qq~Hv&q(PӹMՙT֣ꪾ=L2Y 6X]L:"17َ +)i~y1)+рv` 1WP 3<ˉ伢9*2\\IVb4\4qBY1Z*:9Ƥ5 9p Ƭgth-e,P=tT iKp