libbpf-devel-1.1.0-150500.3.3.1<>,fL`p9|@ ,om' .?7#4!4C"sEd!Mo{].HmmqRX [-%ptoO@XPtҀ_ Fpkk:/Q=6c3W;|yU*0Re^Hv{F- ,:^ȅ;/^fWV>>A?Ad " ? /5<   D  T0T  ( 8 9 $: F;RG;hH;I<X<0Y<<\c?7d?e?f?l?u?v@,w@|x@yA,zA<ALAPAVAClibbpf-devel1.1.0150500.3.3.1Development files for libbpflibbpf is a C library which provides API for managing eBPF programs and maps.fL`s390zp32ASUSE Linux Enterprise 15SUSE LLC LGPL-2.1-onlyhttps://www.suse.com/Unspecifiedhttps://github.com/libbpf/libbpflinuxs390xA#LZ&nI E${!~ !qkA큤A큤A큤fL`fL`fL`fL`fL`fL`fL`fL`fL`fL`fL`fL`fL`fL`fL`fL`fL`cVfL`cVcVcV2a23e9331fcb79c6e49590378f8fb91c7945c887448bf2e057f682f992158df37951d21f37e0f1e6affea5a2849c883b94e539886ea3cd0e1d5e30bf8241dc8a64b77c97b089ca06203d0451407844fe93933b4e36e7315a294745fa29d058fb3e4aab7a422319392972c75caaa6b5438bbc478466c7273ea17055221bab90a0cc7570f3121ad4b94a0d835ecb71f2c1883a4f9766c864ddf1b0e136cdfc7d05372e36702d3021859ed9daa57c6c356769683d6f442b211446038ff970701de4e28e5bca81a5d782e27088da750712c747acb9ab1764bd944bf3e7fc15d4b50337099a4b085c09cd9570de1145d90ad60144cdada69f4c23268ad2e16ed2802656479a26578ea1893eee35510daab188c7547bf18be0ab01d38c295420ed95b24b09b8535b0eb9da94e8eafba8edcb2abc742bb07dd870bd216c3eea955a18d8e0a85fad1ab71453b9738cfe059aa3800b17075e50c01e5a86ec75de43a25a05a2f7fa02729c0bab05f5bdcab5b0b46e0ec91387518125d6bf6c4451d536fe6b13b913cb8e8e0e98ed5830923cfd22e2dffba50281af8dcf27e0ccafd0e358309a7b427e4d3821688f73d5f7c9e2930058042b8d8dace2c3dc94b5297d3b8fdeb3e014c62b1a26bc6142b875674568fa913b10a0506dcfcf1768d600271ad5d5847f4addbd56e2d5be20c4ea0845e972672fc07b755fadaae5f7abd35d71e349e1638b9a0c68ca90fad3df1d6b4e430804d2fbdc15e58d02cffddfae38953bbf0b9a4febcdee6de55872501d5c1a8f5d8b0d1650cd4d5351995ceb22e889f8calibbpf.so.1rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootlibbpf-1.1.0-150500.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.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 releases390zp32 1716281573 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_Updatedrpmxz5s390x-suse-linuxdirectoryC source, ASCII textpkgconfig fileUTF-8 Unicode textASCII textPRRR?-KK)d:930rutf-8969721983d7c2d1ac7e9d814401085b7eed91a3ad27dc9a28ec83048fcd25840? 7zXZ !t/x#]"k%ʽe8^ |E y6Ya(7QzLr 3[x&г xB'F,/e^L/^ 62K\ R4_.J+sXCDFW'i_ަV""0a7b@jD J2B_RSahێ$ĴYPA2b{H\wF-*rePrr 4U![ZDg 0Z= _"f۲ dTYRЍƅAC|P8g6Ok> ,n4$̿hB_K $ A"3'dj P’5^"t:ZE?tuH__X9g)jdne D&$\!J}٫(7Kf=-I*(!2LNrH_:I4OGO✁wpr CuxI)B݀,F-Sټ Z}c6ɳ/aF9JtpOcowȪ0,Se?1eG Bj?ǥ܅խc+{a P )y~FSaDcm2=o%p׍;] %So->TPPJI'иf@ڷ(Щ -hUc6'n;Վ˴y4pb 2pjaQ23,)"ɭCòYE:a驱Ax9*:/ Y2{;[eXư; M1'B4bK#k6gX̟NM<xfqCXzzdIxF.N5ePh!1GQLF^>- OdJw77WS!C_cruex&~~ۼ<:D:E!1Hh6?RUr[a[k* (fI*O-FzbDf=N(5}( X?m$;|+Ջ 0/T`/-"pAGd]%\A7טAjI:c^#ucnh @&wAǧLw wD$X%k,eƴ]N5G+ W-q"LD_[Jjl1P$XNzBV݇.Z]krKHqQJ\5S1׊ZX#sͲ/Z#&vm=ɪ7]j[} ~=zTB3!D2 څSJ$xC;mu0վ<.^'54Azrbv6Lh 7EM©dsA#Wqj1ۖm`fZH/q@.Tw TL"TB!7Q4{b_(:R+W 惮_GBZf:͂/+jP07gX@fO+-6˩ Çq]vc_0Ig|@c(dKb5[φ Qݷ.m2 z a>`9qT2hF!o)s/ibԘb&O7XOF9;~ֺ%x:0pƍ;o2ݩlS ];#Q|[ߙϴXk$b9WJ~.'dìQ,U[ GQۿGvq w]yBk#xS&1,C38! EXF%d't_ǀxF[0;c"&bC㹝S`iC=YZ5)wJx['}W yח+#v-;Hb41fz>2Y"ܫ7h>upt@N ﯩ&}3gHfiVi0ϐ^)Hj·°nyUA96RϫֲVVʜor׾{,9bh#7>9}+Z90>|J$k"b`g:h3F+pPD֚EwL c%7[esfo'Z%Ֆp7ag<0)>ao]Ϻby]z78r~?e(%-P{* |Cb0|Ȫ V Xz4I}!<"A|B^!Ay-xy^2ro#3J%wP5Apo"0o3aƿChǢ̻]a q"(qH :Mд:7v@kI~ yWmz;UH1U?O\.G+JkbeFg$X0@&RK%:ɳ9s{TڬnoK5fhr0O*oonX7[-3@-ZvKOO L/3}I5~j;`3;PnvkZg)nY0Qk_7WO")@Krѹ\]nL2+*vow>]h?uKvf GWY:>l`^%{Coȃk?A'pjw19_٬@ʫjt 8=t,V]ɳg:qu Hn#ևLGzJېa`_/M䩐J< ~8bJE9x#ridF#ԀhNbji #Z]f <8 pI*:70<"[5'!ȶoe@Ev%{כPU:Ѡ:ŋ4ͭ 1pgk'Sp{7[YZ\(R[hᖱ[Zx/.bvB ۶'3s.L̦CU?|(Ny3 /Ʒ>5Tսf%p>f,4UFIJfUZO+kUCNml3EPJL!vg$r8_'1@?w||>"fdj:!"@A@ZӖԽ^J7:-E4p_,X@Eu /2~G3ƅ#j`6DiY#i&Uxi^]rad_ qfĺ $P|tQ$"Y4nhԺv"KAYED}%<%OE {E*6r [¿ /lsWNsd.XחCع@kWF`<-\/XG,룓@f=CW?͔&,anjKRӚK*nNwג#+У# Ѕ:5S^FPm" :G$7 HXZ]!h>p/.YgxbLn_X;h$1T%en*P+.wCEhk@`Pn@JpKrCn9'M59nQpȷdYP 5ې-74 0_G]}^dŠ/: Qq5z Ѭs O.:K(!1J@v4h[?a-mdbCYJl<o&l _|CkM%u&-xtʗu4m-NgՋC6pJ-'*NO4A ^uRɡNP˨:p.?pRKo8xILeKnК'00C 1ܐ`})6C.F~T(6O 3øW[yY+k@+0K茍1^@>DVkRtC &Kb9bpEFQtg%\/957nd@N_$6|ĭXSwD,^Q_D[+8~WD!Ɩ:_m9iCÒv% .=JV:"zIKX3Iw}΃l6T*[Zbb nw?z7R'н:r@ofۚUc\^{脆xñ(õ4G}mBy2!e^$xM\_`RQd_T*0L6p ^B3% YBǴe&~* [?{;u=4Tg;||}C42{A}Z#JH hQ a58qSF#K#EyeՐ[ayBo|ʽJP+la'Q_J2/n5*I!;yA{ĉc6 fEڒ~c}S8n%\b$Nu)&Iz4h< ՕԣU~TYns: Χ̓eK``<b!Ri~c8# d.c 8*sB;y7WMlL\~߾̎ oWS\H4|Mq-g hb /yVrͻ> ;snKeEN79i/H;Niͽ7*kC{)I2-H3~˨Y7£ޓ?{Gś ,iɓc3լPyP 6neB(]Qj:OItyHYW!!D$אU)HK1'^6D4S[_ H_U (B_}X4`}V~Ǩ4a4u=y"%/S]߂cV&wʿ'B s_k)%4U>67$auzZtt{!=֔Mk )ks"XN4<vIGnOƠ &|S.k`4˚\ܷS#Ŵ1Ȓ|zYR`#U F@/tO~=gVo?J&l}z.M48$(8Ν>4 BT,FȔ0xpVgp%Y֙P[k^e}YGO,ܬ%eBKm8u[nD<9c^ZQWtUtݪ~'J+ +E?Vؿ (jk˥Qjf{-[["@ 1AДBT+̡ j5quVܜaH׺.@$Yupdw!WkArl|uWZ;Œc BL ~#L;f^!3t^cͧ:j!mګ5b[;JRihTMYۣܺ"ژîRnMΐ4K/1/4GN!ALj4,[r} ?ԏ{[Yp#[f ç$\i\G}Wew Qe`AҟS5UݓaDgDPqެՊmRIa*}7$k<T>4P/31KF4 k%U/Kop#s 8i?&o@J⁶mGRMT^uqJsʥ'rJއor2~HeKZo"yN0ȚG2~fZTbN =٤F^YrE)|'ļ ӱ`XyIwWbKq;ӠSCv"wxǵwUxT1@(b@()Ŧ*#U ~ C1{ꛏ 3,?PSg<>[scv @Ob"vZn~v= \1LCkl߂L,>.r"2{(trI0#b,-G,t7Bd#HXLvVÕ0T|Cy}J޴G|[Ǒ_H| EdC $AH@}@zF g޷3<.=DiC j=ufrB"Ȱ렘l 95}Vbtƶ #gl7NץiA0: HB:IDg/ǝs¦wvGpwC|1lO Eo絧.|wt%%ڂ(L2Cѫ=7(aijZ|q(Hg9f;S{;5;F0?C岨R?qo?jeWY\4!Ϋ,ŲPEmQ]a+K6W= 4y6}{,ecL"D)߭X?p23%ѮA}"v@ΪEYZ7 E'aяO}lp{!Ftooχ n!oi`&yփsY,>\u<Aiङ &oTFYXSh<&S6q6]1!ҕMFfgu ||\#;(fHI0]}N&G:ICzUfF)xpת3sV;4,o馃n#gh de-BB/b I!Xl);e݄VMU!=t3, H(ʬ(w5NO׊I7[YJ&y /G阵Un1ah9U.B _1T#P]s_LwNO @-EaէbR-C])!xRbb|:6dBNFutY$Ob٧8}7 0ZI NF/;$jEFD>bz O { =-O͸;LfJ ೅/тV9 ƽb2G׃"~|gpu {a؀2V5FG'ak$-b4g}qs2"}-MՉNJ)x1;Aç!kE鿬&k A:vWF|o XD}BQԝ^JO[ڪ]ѿ7O+ o6%\iK\9)LqNCˁi8SPaldajbȂ7ǝHGQxJ6zBNvH2%M@5v%#ꆋd=;L>i%%Lv۹; ((7l~:Dx7aP2-bĵp 9·Ę{X/Ꝝb#dSN +:&6\v.]=^ƑZlɈML4rR\6֫b6ZWE@? 7Ta`>Swsf#q *,D 脯782R㱰HufY<{l1|w1K2l{`IizSl91p{::l;d@s X̩ƞ&5 [8'4 G@ Tj.a  z߷1yNE՛Vpy)13VePlp{FvMrU*YCI[=(̈́pDh`B՞ M˒BIrn.&'턛]"(+$=o+!ky=Uj7|*=}7I']h `7mN=N }Y˭{s"2[ړ2tbnQ gCIOZt\-ɼl,VR Ȗ(;'0wG'Bg5y07VX*^_bp)SDltt kN!h\M'9av|f7X8KX1iէ }B[#)3e '5T:R6R%X`_47n{;EQ:xdrr*M[ 52URƊU*CO:Ẫ-wY@pHd@TRѤAl_S~9y4"`xSQ#*KiX<(9-uGvUC-"7#,lj΍z,ҋV$NK~B9|?up+wydļDf@Xq4PwƣqP3'5@:F}·{MoIn& kA-ЙfO,9Hzkǎ>%G^Kꐖvᷦ_RTGjt;8V^pn~]+:;B8'eCL֞ɝꟈl P?gwȴ.DB_%Ƞ9]$)H_־g0rН95h1Ր!`k0|N̉^d3ё5ɻܶz$3-erO6A Zj#Jr`$"NE "<:abFu UR8aڝI垵K+'[bSYdd' cGpirZSQo ">د7`2Ӂ1zQn7`pfޗ/7Eqͦc*dC4W]/fG~<wЫ%)t3,%%O=2"ȓ25n8 {pg™؀/HGEsf88 jjѽsmoħ =v y*_ mZt#d>hC=Mdp˕ÞR1 OZX\n,U0Nw2 8ZF7b'xmpPٓy|ow0NR&T}pKKped j/|`c(%岘L—8P[@(Y9~ѭ󽷡}7J$NE+n+%]`#EzBX2xahW@oS a[9xj9˻i6+(`H pd ۺ+gvc"ת*LL~ݿ`'^`d'@.e sMF߆{jTxIN⃏0L"=KcDTҝk3(Sj|gɩ348.H 6<+9^U?UE'uz72I(F̦~`V!ZӉ{\G7^`UgV4!FσUy+Ub76p=yQHUEzBɹʤGK!gėQv$J"?H{%"T 6i H=:D5 hyK{f%`SNWLmΑtvcuo4MD\@:|SVGKC%=xmx=#vޢ twir2y<16OAua`#lͨ6:/ }: 0DSmFM0ֹ;oOybt DŽ\b&Y͌ϩ`_Q/<]v(So̟I}fHS4"yW `5Җu^ݶʸɎ7-Cd(m|́)B \_' knϪBF!/Bq6{I8M *' nXqA?9rU(匀1kQ?ג~H_NXԒF"ȿn_4IK|Ix(Zh "ЖG<T@.xvIrkMICڢxU\oN= ;_qFX(}HclDht9HP rݦj򬰏|[a#Wl%Gv)L҃b}mL!-q2ަi5Yfa$6f[ |s1|L~O+QP@m`@“܌%srtjzeY-ϑ&6hɦ d'p޿l&O?(ԧX=R?Sao~=Nu-'r;yO5c"AeUv5yXu\0-wc#`ז疪n۬qc Z|a{i-wDς1Xx.$&2p+gvG<5|r7ޥ[~Jc)|#ed]Zm˕ pz}VngV'G;xUJJ]0 a+Ap#{ul"6?(:Tux|zΚ*/#-c|~}@8 "=6aۦ,_(k3&Tqm ]Ô^铑K>~9~ʏL1a-p&~fwXHmTR7O^`JaWrl?{#qBR.pR}5|q\Ezh<)tp `sLdXYq k;M@%VݿKT;=_b/8Vl*XBڠ]ܷ ۤx=Q:X S = d`dd\6ݕq\_ , ߰tB8Y]1&&o@wo + P?f iϢvl!jRU$=ʞ" $T i$dCuyT5Ξ^ܭp6!B>!$}ܛ/ϿÌ4vF*څ3˜vt`lS2mݒv/˾F5L1I[ =.Q^0f+LJkGd[kd'cS1h:l0ë2wQo;HqNjM ;n o 餪<{p=( qȌz "R''#NXhäŸ[&a'? "(Mj(1ᦙGTyOj>+j%Sy^Cͻnt,ԅ8+*C-qiԇh^,"sͧ罨["QR[4 ڎ$ J/ǩg8WEt<"!/j M_qyJ(Q ;T\Vav@ÝcQ 7/T'!\[jXi]wi[uk@cpj;!aVJ_^p?խ70(]KUE2z0F/b('P&RJHObז4nBRɧHyQfCH ZGFM\y!؇bkJc*K]UN;P\iA'&=('N\8z% pN=q'- f*;}:Mw ekD&3_~mc^:Ťn(b" IVǒ!WJy`%&f^WQ^v ;VzwFX/v`x֬e=~bwD h}?GaG1}f/^fuZ&oEѬzF`s ,kc%-Giڂ#q*6dÕ6)bl@p,M?00 AOQu9$A|waj┽ay~u6 whC蒨P *y}nzd9`62`W9wgPO+;OOѪ;(E]_ W^}yǰ1oBBWT<# ugjE1 #)y- o³4-(NrQhٝ) !D,Kҩ@XZzE6AJsp}QY=<ΐ-s#% ߯1죏 Y|QmE׭Τ @N&p/(}Qj` R!W~xI V.)FθɗۜCrA K*MRr~rj .5qL5EaYmOK]F /Og2Ekk(pvIf+y&f{#/ȩxnaYMG%uqHt +ІQTAGu[聵 9IWWb>Lq6đ0@Fț`ƚ˸]1GA. Gtu,9ɜv4)9=rAs à6fpxg}/݊~Ws[5 +ʓOJ7UVBor34kVyDQ<WH; ˚vekokh(v;+} ½K]3tj#eC'G& 3l/ZџZe_܍I }AhBI+KF`S/pI05wesڭXiUȁsƳu1*%A٬kA|3.>Ԑ,'o<͸~qɶnc*hC t׭!QC !_@<|_ϬX&ZtZ1+T=ĕuC2~a;HPw Sfswe-U#ȫve-YٖM6ћgZ`7A:ۆX""Zu^呐"9,[79[8zM:LܰAx U9؝1UEՈazul\\vd,ah`sg!}FC-q2k@u }iŨVnפ%-㌑5}=>ݚc򓆁o"{eƀ' n+xN.DZV*g+5H ^`Sé{Meb΋x9CpDN֮@/&!IK;k86>(7*9;Be8 B0+ٖ$\ d?}nl F GmmkNo轁̗F|Bn@4]W}X[`OKQ1~5/M'Ez+Ӿ1އ>4 7l?;X7}.?-f}NקytVS]>kwi&Aȁgh(ԖF;~/;RQ }< ŝgMwPkZ!A'_Oj@^tnR3 *R7엝:%<" q=, j; Z ҰRT Gؤ7[Uyg*h;F~ڶ#92Ӿ;ŀtӍrk3YipIċm'BCSs %W,7[j\ UJIA,R@ Et5~v#Ms#m85(z,8gBWKw@-(ZD6NyL/LycYY$-S# յ<0~N)TVU0]ld>; #K{ s ~1=,](H`f2rdm7l$XW`0D3 DÛط?|s=4xu <*80> qѡ=Ojg:j^EZX -/- d^T >E.icz$8di7"Kx5 N&h_c] }Ղh6?@@#G"yȄ][̭',ii.S JS.p+C 0ʅB;X,mw=fgV gSb8C|g0kZq4 /$Պs,9p;t41+lr| {ꜪkqA2yv2S f(gC>jjN;$ :SII"cy/(݂c+D`DodA6He\f|Q)~soHG.nJ%+ oah ڡQκeu2‹ǢvL9ڹQ5)!gIӞG.'CfQAe8>C1N.wش:;ٜ;ԩ޺KشnT&+o m v}_G >J5z,"v_7+xJӄW!PFI8fNSL6ɓvYZtѻxmX|헾W+NKd#9os5+*&ħ Vn(Hޣz5pwTw 'dWV5Z˘ͮ%&-%\, ۇKGteb#LUl@E4/A<)oc;WocmT(ʀ+XEM\e7>^3A6,)g xq(2[<&NŔP|+R)¤uRi{aq}??RIA; a…$LPZ# [mzZ;"hGU~X}dD`M+'9ªb?Te݉o2?XׅnFDWB()Wl\RИ Tlҫm"-$BZH2UDpU35AZ((v)Evݛ)b@{9N='*>K8XީK::<}vV?|f9Bv]2kΌJ̃f, VA iUQe( aՠU 52y`̜eNM6Usx9vCڷGlFr`[p ErQ`6 /CYR46Ճخ/ qwqffTi#w2zH'\TF})ޟ6ZRiL`;ryd7"knl|{ac#ԴeŻTVjsO/]i͑ ~ȫr9tij[oig E U ʽu OuF@EH"7 fyCkҭ!`AVq:a]mյ&:SzIoR l^!N(]0<  c3LA%nrFImuVOfpyF'W&p&y3 "_^=j{o24!g;]1ce;tt0EE=wc ћ U{Ohgf\8,jƎ358O_\VH JvJth(5!Jʥ{fMQ,Im1^XJ9/XX1"m蔣Q\j KXkل'SI[K*\96 Jr .{"A:naM `^By&nD ;1L%*Ħܷ I0پhש uI-(8kBN11^XNTϺQR+C_Ö~<~]EaM]-|'2e^S;YnX\CxUm22bMpND,LWxj^+wM9{\ޕ11;&e2JΒK~~,EV& 8bUCH@ϾxP{q ȆZh b{.MNpi巔٪atUԄHd61d1JGVI9/s0 LFU|N#\9LJA}0zyaGMK\C{k3VMbdQ b*y0+b!fH/Q8.eF.,*+w{-r=RaSHHJ-eu⎒GD7j(pR\Gy@* 4F^Huy_(N^mDCnp Zو}㏏'80aʠdO}wpq]Lx `ٿYqK,qf'3 t:, ,ER&O3 "D#mi~eq8/yTrS._Qp neeGB- ߱-L&[+JOC=XPp8Y&iSN5H'vȜB+ִK:9Ay\ ؤϧsD2*m Z-C QovjwNn{}OL^;\hbRvN 7 {{LM@>bUng8Ny\x&jP&g%rŰLZp'y&dbK )繎&'I+bxEtXW% Q@)J6=n8_!'Q`x Y݄h.hojɊt8,e]~ ֫ψou+Up7\"26`GWZ6wkmnpsشW9@:|}<.7__hձ?pniG3/ b T9@j!ቂTvyb<,Р:6փΩ{qHT!-D=*TV`1qix gqҡ< \5ЬSȟz"Nac's*pYj7=WJ3c0ncY߂M B /GGѫբKx砹'R sPM`UUsfKSB2kORfYL_5 0YK%ܠ-CyE/a >,,&mfPiu=aӯ uM}~*Kx~^c{ƏoW lqŋ,3_9,j)sU}{_q+ha׃]{tg`2w]դ<^Oˁf95RI *FDޔ nyNIm^wlΗ59 +ُyb(,Յ>J֌9ڮ ;q.EZ%T['!S0 |ҩ~F{-;G@ /p^lpr8AWm^D,Kت%#fhS YZ