dpdk-tools-18.11-lp151.2.21 >  A \fA/=„!7,Y*4™o ?V<ׇcȧZ{޷ʎcfROhN^{˶NK%BDkty>SZITA}FtPCҭ)L%>D\rϜmlZMc9`s!~;RenpbJw)S;CO\2;EV[|9 曁[}<ڋJ6lz, BlBxGLMZ|U3纀bddff4740acee20f6152b6b6543da9f73eebfd868d0923f8e8bc62d927bfccbc1af34d6c8039cd750d889614603b93dc95c3dac1լ\fA/=„m |(?r\[py2}e2%K'"6: [GZƍorēzA"tqhuBBAZC.3IJ&]58/Yv}ͿgbX%lCQS)b ӪG@#TuÎd8?P1$No7ip<?d   Z "3CIP |           L   4-- -   ( 8 99 9:9G H I XY\0 ]\ ^ bLcdPeUfXlZul vCdpdk-tools18.11lp151.2.21Tools for setting up Data Plane Development Kit environmentThis package contains tools for setting up Data Plane Development Kit environment\flamb19,openSUSE Leap 15.1openSUSEBSD-3-Clause AND GPL-2.0-only AND LGPL-2.1-onlyhttps://bugs.opensuse.orgSystem/Librarieshttp://dpdk.orglinuxx86_64Hp' qdOJJ3!A큤\e\e\e\e[`[`[`[`[`[`[`ddf4d821c8f2e3e35f29f78b3d495b63200e042e9130f94c398e469bf94b2d74ef6a1641fb650b6252cdf8ae48a5859ab2640e3c851367f7d4c66a4b0eca0175b1667c72791ee656282ada727011a8afcb89a722c34948a2a32585fad61eccd9c7e30fda7877a77f274d7071d8055623d080c75d2dbb4020be63bac6f26759d535679768f964cadf440156400bb421354ed6d5cccbb0ed77b9bf3e2d91c3d45af710393bed9894a2072e5cd5493f0a247cf0b057406e35022f8a48ac3fd75cfd6df1bf09cb4a64fba823c82999a01e6af8d1c7be4381e3a25347117174db6be9ff87c93cbc751c0f00e356078d3d8d3e6a0ec590e1f16eb66bfa1da62086f7fa../share/dpdk/usertools/dpdk-devbind.pydpdk-devbindrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootdpdk-18.11-lp151.2.21.src.rpmdpdk-any-toolsdpdk-toolsdpdk-tools(x86-64)    /bin/bash/usr/bin/envdpdkfindutilsiproutekmodld-linux-x86-64.so.2()(64bit)ld-linux-x86-64.so.2(GLIBC_2.3)(64bit)libc.so.6()(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3)(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.2.5)(64bit)librte_cryptodev.so.18.11()(64bit)librte_cryptodev.so.18.11(DPDK_16.04)(64bit)librte_cryptodev.so.18.11(DPDK_17.02)(64bit)librte_cryptodev.so.18.11(DPDK_17.05)(64bit)librte_cryptodev.so.18.11(DPDK_17.08)(64bit)librte_cryptodev.so.18.11(DPDK_18.05)(64bit)librte_eal.so.18.11()(64bit)librte_eal.so.18.11(DPDK_16.11)(64bit)librte_eal.so.18.11(DPDK_17.11)(64bit)librte_eal.so.18.11(DPDK_18.05)(64bit)librte_eal.so.18.11(DPDK_2.0)(64bit)librte_ethdev.so.18.11()(64bit)librte_ethdev.so.18.11(DPDK_18.05)(64bit)librte_ethdev.so.18.11(DPDK_2.2)(64bit)librte_eventdev.so.18.11()(64bit)librte_eventdev.so.18.11(DPDK_17.05)(64bit)librte_eventdev.so.18.11(DPDK_17.11)(64bit)librte_eventdev.so.18.11(EXPERIMENTAL)(64bit)librte_mbuf.so.18.11()(64bit)librte_mbuf.so.18.11(DPDK_18.08)(64bit)librte_mbuf.so.18.11(DPDK_2.1)(64bit)librte_mempool.so.18.11()(64bit)librte_mempool.so.18.11(DPDK_16.07)(64bit)librte_mempool.so.18.11(DPDK_2.0)(64bit)librte_pmd_crypto_scheduler.so.18.11()(64bit)librte_pmd_crypto_scheduler.so.18.11(DPDK_17.05)(64bit)pciutilsrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)18.113.0.4-14.6.0-14.0-15.2-1otherproviders(dpdk-any-tools)4.14.1\mA@\I[["@[;e@Z@Zz@ZZ@ZZZH@Z\ZTZ@X6@Wndas@suse.deMarco Varlese marco.varlese@suse.comndas@suse.demsuchanek@suse.comndas@suse.dendas@suse.dendas@suse.dendas@suse.demarco.varlese@suse.demarco.varlese@suse.dendas@suse.demarco.varlese@suse.demarco.varlese@suse.demarco.varlese@suse.demchandras@suse.dendas@suse.demarco.varlese@suse.commarco.varlese@suse.comndas@suse.dendas@suse.demchandras@suse.dendas@suse.dendas@suse.dendas@suse.dendas@suse.dendas@suse.dendas@suse.dendas@suse.dendas@suse.dendas@suse.dendas@suse.dendas@suse.dendas@suse.demarco.varlese@suse.commarco.varlese@suse.commvarlese@suse.commchandras@suse.demchandras@suse.demchandras@suse.dendas@suse.dendas@suse.dendas@suse.demchandras@suse.dendas@suse.dendas@suse.demchandras@suse.dendas@suse.demchandras@suse.dendas@suse.demchandras@suse.dendas@suse.demchandras@suse.demchandras@suse.dendas@suse.denirmoy.das@suse.com- Added 0002-fix-cpu-compatibility.patch to address issue with older CPUs (bsc#1125961)- Update to 18.11; some of the changes are(fate#325916, fate#325951 fate#326025, fate#326992): * Added support for using externally allocated memory in DPDK. * Added check for ensuring allocated memory is addressable by devices. * Updated the C11 memory model version of the ring library. * Added NXP CAAM JR PMD. * Added support for GEN3 devices to Intel QAT driver. * Added Distributed Software Eventdev PMD. * Updated KNI kernel module, rte_kni library, and KNI sample application. * Add a new sample application for vDPA. * Updated mlx5 driver. * * Improved security of PMD to prevent the NIC from getting stuck when the application misbehaves. * * Reworked flow engine to supported e-switch flow rules (transfer attribute). * * Added support for header re-write(L2-L4), VXLAN encap/decap, count, match on TCP flags and multiple flow groups with e-switch flow rules. * * Added support for match on metadata, VXLAN and MPLS encap/decap with flow rules. * * Added support for RTE_ETH_DEV_CLOSE_REMOVE flag to provide better support for representors. * * Added support for meson build. * * Fixed build issue with PPC. * * Added support for BlueField VF. * * Added support for externally allocated static memory for DMA. all the changes can be viwed in http://doc.dpdk.org/guides/rel_notes/release_18_11.html [- 0001-enic-fix-Type-punning-and-strict-aliasing-warning.patch, - - 0002-fix-cpu-compatibility.patch]- Fixed a problem with ABI compatibility; API/ABI compatibility is guaranteed by DPDK upstream community across subsequent bug-fix releases. However, the .spec file broke it by defining the wrong version which included also the bug-fix release number. - Fixed a naming issue with library: did not reflect soname- Update to 17.11.4 stable release. Some of the fixes include: * app/testpmd: fix buffer leak in TM command, fix DCB config, fix VLAN TCI mask set error for FDIR * bus/dpaa: fix buffer offset setting in FMAN, fix build, fix phandle support for Linux 4.16 * doc: fix bonding command in testpmd, update qede management firmware guide * eal: fix bitmap documentation, fix return codes on thread naming failure, fix invalid syntax in interrupts, fix uninitialized value * eventdev: add event buffer flush in Rx adapter, fix internal port logic in Rx adapter, fix missing update to Rx adaper WRR position, fix port in Rx adapter internal function, fix Rx SW adapter stop * hash: fix a multi-writer race condition, fix doxygen of return values, fix key slot size accuracy, fix multiwriter lock memory allocation * kni:fix build with gcc 8.1, fix crash with null name * vhost: fix missing increment of log cache count, flush IOTLB cache on new mem table handling, improve dirty pages logging performance, release locks on RARP packet failure, retranslate vring addr when memory table changes * PMD drivers: various fixes fro bnxt, dpaa2, mlx5 - Fixed a syntax error affecting csh environment configuration(bsc#1102310)- do proper cpu compatibility test(bsc#1099474) [+ 0002-fix-cpu-compatibility.patch] - change %doc to %license- workaround kernelrelease error- Sync dpdk for SLE15 with SLE12-SP4(fate#324872)- use gcc-7 to remove EXTRA_CFLAGS hack that was required for gcc-6 in the previous change(bsc#1090668)- Remove fstack-clash-protection from EXTRA_CFLAGS as gcc-6 cant recognize it(bsc#1090668)- Update to 17.11.2 restrict untrusted guest to misuse virtio to corrupt host application(ovs-dpdk) memory which can lead all VM to lose connectivity(CVE-2018-1059,bsc#1089638). Changes: * Add deprecation notice for rte_vhost_gpa_to_vva() * Patch vhost-net and vhost-scsi examples * Fixes checkpatch warnings * Take VIRTIO_RING_F_EVENT_IDX into account when ring size (Tiwei) * Fix next chuncks translation access rights in Rx paths (Tiwei) * vhost: fix indirect descriptors table translation size * vhost: check all range is mapped when translating GPAs * vhost: introduce safe API for GPA translation * vhost: ensure all range is mapped when translating QVAs * vhost: add support for non-contiguous indirect descs tables * vhost: handle virtually non-contiguous buffers in Tx * vhost: handle virtually non-contiguous buffers in Rx * vhost: handle virtually non-contiguous buffers in Rx-mrg * examples/vhost: move to safe GPA translation API * examples/vhost_scsi: move to safe GPA translation API * vhost/crypto: move to safe GPA translation API * vhost: deprecate unsafe GPA translation API- The vm_power example does not work for ppc64le since it uses the IXGBE PMD driver which is not available for that platform(bsc#1082154): * Disable CONFIG_RTE_LIBRTE_POWER for the sample application; * Disable CONFIG_RTE_LIBRTE_IXGBE_PMD for the actual PMD driver;- Upgraded to latest stable release 17.11.1 (LTS): some of the fixes include: * location changes of the GPL and LGPL licenses; * net/mlx4: - fix drop flow resources leak * net/bnxt: - double increment of idx during Tx ring alloc - group info usage - check for ether type - size of Tx ring in HW - number of pools for RSS - return code in MAC address set - link speed setting with autoneg off * net/nfp: - MTU settings - jumbo settings - CRC strip check behaviour * net/sfc: - multicast address list copy memory leak - DMA memory leak after kvarg processing failure - fix label name to be consistent * net/i40e: - VLAN offload setting issue - FDIR input set conflict - FDIR rule confiliction issue - setting MAC address of VF - flow director Rx resource defect - warn when writing global registers - multiple driver support - interrupt conflict with multi-driver - Rx interrupt - check multi-driver option parsing - flow director filter * net/qede: - enable LRO over tunnels - reject config with no Rx queue - check tunnel L3 header - tunnel header size in Tx BD configuration - VF LRO tunnel configuration * net/mlx5: - Tx checksum offloads - un-supported RSS hash fields use - device operation type - pedantic compilation - fix pedantic compilation - flow item validation - flow RSS configuration - UAR remapping on non configured queues - secondary process verification - port stop by verify flows are still present - flow priority on queue action- Enable(disabled by default) MLX4 and MLX5 pmd(fate#322609)- Upgraded to latest major 17.11(fate#322609); some of the fixes include: * Extended port_id range from uint8_t to uint16_t * Added a new driver for Marvell Armada 7k/8k devices * Updated mlx4 driver * Updated mlx5 driver * Added SoftNIC PMD * Added support for NXP DPAA Devices * Updated support for Cavium OCTEONTX Device * Added PF support to the Netronome NFP PMD * Updated bnxt PMD * Added bus agnostic functions to cryptodev for PMD initialization * Updated QAT crypto PMD * Updated the AESNI MB PMD * Updated the OpenSSL PMD * Added NXP DPAA SEC crypto PMD * Add new benchmarking mode to dpdk-test-crypto-perf application * Added IOMMU support to libvhost-user * Added the Generic Segmentation Offload Library * Added the Flow Classification Library - Removed 0002-kni-fix-build-on-SLE12-SP3.patch since patch merged upstream and available in 17.11- Added missing supported broadcom chipset family Broadcom NetXtreme II BCM57810- Upgraded to latest stable 17.08.1; some of the fixes include: * net/qede: disable per-VF Tx switching feature * revert "net/virtio: flush Rx queues on start" * various fixes for mlx5 PMD drivers * various fixes for bnxt PMD drivers * various fixes for i40e PMD drivers * various fixes for crypto PMD drivers * testpmd: fix for non-consecutive ports * ethdev: fix ABI version- Add missing libelf-devel dependency- Updated to 17.08(bsc#1050250, bsc#1046598, fate#322913, fate#322608) Some of the new features are listed below: * Increase minimum x86 ISA version to SSE4.2 * Added Fail-Safe PMD * Added support for generic flow API (rte_flow) on igb NICs * Added support for generic flow API (rte_flow) on enic * Added support for Chelsio T6 family of adapters * Added latency and performance improvements for cxgbe * Updated mlx5 driver * Added NXP DPAA2 Eventdev PMD * Added dpdk-test-eventdev test application * from 17.05: * Added mbuf raw free API * Added free Tx mbuf on demand API * Added VFIO hotplug support * Added PowerPC support for i40e and its vector PMD * Added VF max bandwidth setting in i40e * Added LiquidIO network PMD * Added support for NXP DPAA2 Network PMD * Added support for NXP DPAA2 - FSLMC bus * Added support for the Wind River Systems AVP PMD * Added vmxnet3 version 3 support * Added MTU feature support to Virtio and Vhost * Added event driven programming model library (rte_eventdev) * Added Software Eventdev PMD * Added Cavium OCTEONTX Eventdev PMD * Added NXP DPAA2 SEC crypto PMD * from 17.02: * Added generic EAL API for I/O device memory read/write operations * Added VF Daemon (VFD) for i40e. - EXPERIMENTAL * Added generic flow API (rte_flow) * Added APIs for MACsec offload support to the ixgbe PMD * Added Solarflare libefx-based network PMD. * Added support for Mellanox ConnectX-5 adapters (mlx5) * Added ARMv8 crypto PMD * Added crypto performance test application * more details can be found in http://dpdk.org/doc/guides/rel_notes/release_17_08.html http://dpdk.org/doc/guides/rel_notes/release_17_05.html http://dpdk.org/doc/guides/rel_notes/release_17_02.html [-0002-kni-define-HAVE_VF_VLAN_PROTO-for-SLES12SP3.patch - 0003-kni-define-HAVE_TRANS_START_HELPER-for-SLES12SP3.patch - 0004-net-thunderx-sync-mailbox-definitions-with-Linux-PF-.patch - 0005-kni-fix-build-with-gcc-7.1.patch - 0006-kni-fix-ethtool-build-with-kernel-4.11.patch - 0007-igb_uio-switch-to-new-irq-function-for-MSI-X.patch] - Use updated patch to enable HAVE_TRANS_START_HELPER for SLE12SP3(bsc#1031705). [+ 0002-kni-fix-build-on-SLE12-SP3.patch]- Enabled CONFIG_RTE_MAJOR_ABI: libs SONAME equal the DPDK release version- Split libs into a subpackage to provide multiple installable versions on same sytem- Do not use obsolete pci_enable_msix for() kernel > 4.8 [+0006-kni-fix-ethtool-build-with-kernel-4.11.patch, +0007-igb_uio-switch-to-new-irq-function-for-MSI-X.patch]- Updated to 16.11.2 which provide bug fixes as below(fate#321541): * mbuf: fix missing includes in exported header * eal: fix debug macro redefinition * net/nfp: fix packet/data length conversion * net/i40e: fix setup when bulk is disabled * pci: fix device registration on FreeBSD * net/i40e: ensure vector mode is not used with QinQ * nic_uio: fix device binding at boot * net/bnx2x: fix transmit queue free threshold * net/vmxnet3: fix queue size changes * kni: fix build with kernel 4.11 * kni: fix possible memory leak * kni: fix crash caused by freeing mempool * net/i40e: fix allocation check * net/virtio: fix crash when closing twice * net/ixgbevf: set xstats id values * net/i40e: fix hash input set on X722 * eal/linux: fix build with glibc 2.25 * net/i40e: fix incorrect packet index reference * net/thunderx: fix 32-bit build * net/thunderx: fix build on FreeBSD * net/thunderx: fix deadlock in Rx path * net/ixgbe: fix setting MTU on stopped device * vfio: fix secondary process start * net/virtio-user: fix address on 32-bit system * net/virtio: fix MSI-X for modern devices * net/virtio: fix link status always down * net/ixgbe: fix multi-queue mode check in SRIOV mode * net/i40e/base: fix potential out of bound array access * vhost: fix false sharing * net/thunderx: fix stats access out of bounds * net/virtio: disable LSC interrupt if MSIX not enabled * net/i40e: fix mbuf alloc failed counter * net: fix stripped VLAN flag for offload emulation * vfio: fix disabling INTx * net/igb: fix VF MAC address setting * net/igb: fix VF MAC address setting * net/ixgbe: fix VF Rx mode for allmulticast disabled * net/bonding: fix updating slave link status * net/virtio-user: fix overflow * net/i40e: fix TC bitmap of VEB * net/ixgbe/base: fix build error * net/ixgbe: fix Rx queue blocking issue * net/ixgbe: fix all queues drop setting of DCB * net/ixgbe: fix TC bandwidth setting more details can be found in http://dpdk.org/ml/archives/stable/2017-May/001809.html [- 0005-kni-fix-build-with-kernel-4.11.patch] - use default gcc which is now gcc7 (bsc#1042372) [+0005-kni-fix-build-with-gcc-7.1.patch]- Add upstream patch to fix building against linux kernel 4.11 [+0005-kni-fix-build-with-kernel-4.11.patch]- sync mailbox definitions with Linux PF driver(bsc#1035993) [+0004-net-thunderx-sync-mailbox-definitions-with-Linux-PF-.patch]- Enable HAVE_TRANS_START_HELPER for SLE12SP3(bsc#1031705). [+0003-kni-define-HAVE_TRANS_START_HELPER-for-SLES12SP3.patch]- Fix dpdk KMP build fails(bsc#1031750) - enable igb_uio kernel module(fate#322394) - update kernel version for SLES12SP3 4.4.59 for bsc#1031705 [*0002-kni-define-HAVE_VF_VLAN_PROTO-for-SLES12SP3.patch]- Enable HAVE_VF_VLAN_PROTO for SLE12SP3(bsc#1031705). [+0002-kni-define-HAVE_VF_VLAN_PROTO-for-SLES12SP3.patch]- Disable dpdk-kmp package for ix86.- Upgrade to LTS release of 16.11 which contains fixes below(fate#321541): * app/test: fix symmetric session free in crypto perf tests * app/testpmd: fix check for invalid ports * app/testpmd: fix static build link ordering * crypto/aesni_gcm: fix IV size in capabilities * crypto/aesni_gcm: fix J0 padding bytes * crypto/aesni_mb: fix incorrect crypto session * crypto/openssl: fix extra bytes written at end of data * crypto/openssl: fix indentation in guide * crypto/qat: fix IV size in capabilities * crypto/qat: fix to avoid buffer overwrite in OOP case * cryptodev: fix crash on null dereference * cryptodev: fix loop in device query * devargs: reset driver name pointer on parsing failure * drivers/crypto: fix different auth/cipher keys * ethdev: check maximum number of queues for statistics * ethdev: fix extended statistics name index * ethdev: fix port data mismatched in multiple process model * ethdev: fix port lookup if none * ethdev: remove invalid function from version map * examples/ethtool: fix driver information * examples/ethtool: fix querying non-PCI devices * examples/ip_pipeline: fix coremask limitation * examples/ip_pipeline: fix parsing of pass-through pipeline * examples/l2fwd-crypto: fix overflow * examples/vhost: fix calculation of mbuf count * examples/vhost: fix lcore initialization * mempool: fix API documentation * mempool: fix stack handler dequeue * net/af_packet: fix fd use after free * net/bnx2x: fix Rx mode configuration * net/cxgbe/base: initialize variable before reading EEPROM * net/cxgbe: fix parenthesis on bitwise operation * net/ena: fix setting host attributes * net/enic: fix hardcoding of some flow director masks * net/enic: fix memory leak with oversized Tx packets * net/enic: remove unnecessary function parameter attributes * net/i40e: enable auto link update for 25G * net/i40e: fix Rx checksum flag * net/i40e: fix TC bandwidth definition * net/i40e: fix VF reset flow * net/i40e: fix checksum flag in x86 vector Rx * net/i40e: fix crash in close * net/i40e: fix deletion of all macvlan filters * net/i40e: fix ethertype filter on X722 * net/i40e: fix link update delay * net/i40e: fix logging for Tx free threshold check * net/i40e: fix segment number in reassemble process * net/i40e: fix wrong return value when handling PF message * net/i40e: fix xstats value mapping * net/i40evf: fix casting between structs * net/i40evf: fix reporting of imissed packets * net/ixgbe: fix blocked interrupts * net/ixgbe: fix received packets number for ARM * net/ixgbe: fix received packets number for ARM NEON * net/ixgbevf: fix max packet length * net/mlx5: fix RSS hash result for flows * net/mlx5: fix Rx packet validation and type * net/mlx5: fix Tx doorbell * net/mlx5: fix endianness in Tx completion queue * net/mlx5: fix inconsistent link status * net/mlx5: fix leak when starvation occurs * net/mlx5: fix link status query * net/mlx5: fix memory leak when parsing device params * net/mlx5: fix missing inline attributes * net/mlx5: fix updating total length of multi-packet send * net/mlx: fix IPv4 and IPv6 packet type * net/nfp: fix VLAN offload flags check * net/nfp: fix typo in Tx offload capabilities * net/pcap: fix timestamps in output pcap file * net/qede/base: fix FreeBSD build * net/qede: add vendor/device id info * net/qede: fix PF fastpath status block index * net/qede: fix filtering code * net/qede: fix function declaration * net/qede: fix per queue statisitics * net/qede: fix resource leak * net/vhost: fix socket file deleted on stop * net/vhost: fix unix socket not removed as closing * net/virtio-user: fix not properly reset device * net/virtio-user: fix wrongly get/set features * net/virtio: fix build without virtio-user * net/virtio: fix crash when number of virtio devices > 1 * net/virtio: fix multiple process support * net/virtio: fix performance regression due to TSO * net/virtio: fix rewriting LSC flag * net/virtio: fix wrong Rx/Tx method for secondary process * net/virtio: optimize header reset on any layout * net/virtio: store IO port info locally * net/virtio: store PCI operators pointer locally * net/vmxnet3: fix Rx deadlock * pci: fix check of mknod * pmdinfogen: fix endianness with cross-compilation * pmdinfogen: fix null dereference * sched: fix crash when freeing port * usertools: fix active interface detection when binding * vdev: fix detaching with alias * vfio: fix file descriptor leak in multi-process * vhost: allow many vhost-user ports * vhost: do not GSO when no header is present * vhost: fix dead loop in enqueue path * vhost: fix guest/host physical address mapping * vhost: fix long stall of negotiation * vhost: fix memory leak- Fix broken dpdk-pmd/* soft links(bsc#1026804).- Do not disable cryptodev as EXPREMENTAL tag has been removed. - Remove CONFIG_RTE_LIBRTE_MBUF_OFFLOAD as cryptodev is not depending on it anymore and its removed from the upstream.- Enable rte_kni kernel module for dpdk(fate#322394). [+preamble] - Build dpdk-thunderx only for aarch64- Update to version 16.11(fate#321541). Some of the new features are listed below: * Added software parser for packet type. * Improved offloads support in mbuf. * Added vhost-user dequeue zero copy support. * Added vhost-user indirect descriptors support. * Added vhost PMD xstats. * Added virtio NEON support for ARM. * Updated the ixgbe base driver. * Added APIs for VF management to the ixgbe PMD. * Updated the enic driver. * Added openssl PMD. * Added support for new gcc -march option. Detailed changes can be obtained from http://dpdk.org/doc/guides/rel_notes/release_16_11.html - Resolved fixes in the updated versions are : * enic: Fixed several flow director issues. * enic: Fixed inadvertent setting of L4 checksum ptype on ICMP packets. * enic: Fixed high driver overhead when servicing Rx queues beyond the first.- Added gcc-6 as default compiler for CRC/mtune & other optimizations. - Fix possible parallel installation of dpdk subpackages.- Add pre_checkin.sh to generate the dpdk-thunderx.spec file- Fixed paths using %{name} to have the dpdk.spec aligned with dpdk-thunderx.spec- Added back in all the architectures to keep .spec files aligned * Driving thunderx platform architectural dependency via the ExclusiveArch tag- Added support to build code for Thunderx platform(fate#321960). - Introduced new dpdk-thunderx.spec file: * Removed architectures not supporting Thunderx platform (e.g. x86) * Added dependency on gcc v5.0 for armv8a-crc- Update to version 16.07.2. Some of the fixes are listed below: * ethdev: prevent duplicate event callback * hash: fix bucket size usage * hash: fix unlimited cuckoo path * lpm: fix freeing memory * lpm: fix freeing unused sub-table on rule delete * mempool: fix leak if populate fails * mempool: fix search of maximum contiguous pages * pci: fix probing error if no driver found * net/bnx2x: fix maximum PF queues * net/bnxt: fix bit shift size * net/bnxt: fix crash when closing * net/enic: fix Rx queue index when not using Rx scatter * net/enic: fix crash on MTU update or Rx queue reconfigure * net/enic: fix crash with removed flow director filters * net/enic: fix max packet length check * net/enic: fix multi-queue Rx performance * net/enic: revert truncated packets counter fix * net/fm10k: fix VF Tx queue initialization * net/i40e: fix Rx hang when disable LLDP * net/ixgbe: fix VF registers * net/thunderx: fix Tx checksum handling * [The list of changes is rather long so please consult the following resources for the complete list of new features, bugfixes and other changes in this release: - http://dpdk.org/doc/guides-16.07/rel_notes/release_16_07.html#id2]- Update to version 16.07.1. Some of the fixes are listed below: * contigmem: zero all pages during mmap * crypto/null: fix key size increment value * hash: fix false zero signature key hit lookup * mem: fix crash on hugepage mapping error * mbuf: fix error handling on pool creation * net/e1000: fix returned number of available Rx descriptors * net/enic: fix freeing memory for descriptor ring * net/i40e: fix dropping packets with ethertype 0x88A8 * net/i40e: fix mbuf leak during Rx queue release * net/i40e: fix null pointer dereferences when using VMDq+RSS * net/ixgbe/base: fix possible corruption of shadow RAM * net/ixgbe: fix VF reset to apply to correct VF * net/virtio_user: fix error management during init * [The list of changes is rather long so please consult the following resources for the complete list of new features, bugfixes and other changes in this release: - http://dpdk.org/doc/guides-16.07/rel_notes/release_16_07.html#fixes-in-16-07-01-stable-release]- Drop code for generating our own linker script. * Commit 948fd64befc3 (" mk: replace the combined library with a linker script") added upstream support for building and installing a linker script so we drop our code from the spec file which generated a much larger and possibly broken linker script resulting to linking issues (boo#1002534)- Update to version 16.07. Some of the new features are listed below: * Removed the mempool cache memory if caching is not being used. * Added mempool external cache for non-EAL thread. * Changed the memory allocation scheme in the mempool library. * Added a new driver for Broadcom NetXtreme-C devices. * Added a new driver for ThunderX nicvf devices. * Added mailbox interrupt support for ixgbe and igb VFs. * Updated the ixgbe base driver. * Updated the i40e base driver. * Updated the enic driver. * Updated the mlx5 driver. * Added support for virtio on IBM POWER8. * Added support for Virtio in containers. * Added vhost-user client mode. * Added NSH packet recognition in i40e. * Added AES-CTR support to AESNI MB PMD. * Added AES counter mode support for Intel QuickAssist devices. * Added KASUMI SW PMD. * Added multi-writer support for RTE Hash with Intel TSX. * Improved IP Pipeline Application. * Added keepalive enhancements. * Added packet capture framework. * Added floating VEB support for i40e PF driver. * Added support for live migration of a VM with SRIOV VF. * [The list of changes is rather long so please consult the following resources for the complete list of new features, bugfixes and other changes in this release: - http://dpdk.org/doc/guides/rel_notes/release_16_07.html - http://dpdk.org/browse/dpdk/tree/doc/guides/rel_notes/release_16_07.rst - Or the doc/guides/rel_notes/release_16_07.rst file in the released tarball.] - Removed patches that are already avilable in dpdk-16.07 [ -0002-examples-ip_pipeline-fix-implicit-declaration-of-fun.patch - 0003-mk-fix-external-shared-library-dependencies-of-libraries.patch - 0004-54f9e32-vhost-handle-dirty-pages-logging-request.patch - 0005-d293dac-vhost-claim-support-of-guest-announce.patch - 0006-d639996-vhost-enable-log_shmfd-protocol-feature.patch - 0007-ixgbe-fix-VLAN-filter-missing-brackets.patch - 0008-app-testpmd-handle-SIGINT-and-SIGTERM.patch - 0009-bonding-copy-entire-config-structure-in-mode-4.patch - 0010-bonding-fix-active-slaves-with-no-primary.patch - 0011-bonding-do-not-ignore-multicast-in-mode-4.patch - 0012-bonding-do-not-activate-slave-twice.patch - 0013-bonding-fix-crash-when-no-slave-device.patch - 0014-bonding-fix-detach-of-bonded-device.patch - 0015-bonding-fix-detach-of-slave-devices.patch - 0016-eal-linux-support-built-in-kernel-modules.patch - 0017-examples-l3fwd-handle-SIGINT-and-SIGTERM.patch - 0018-fm10k-fix-VLAN-flag-in-scattered-Rx.patch - 0019-i40e-base-fix-driver-load-failure.patch - 0020-i40e-base-fix-missing-check-for-stopped-admin-queue.patch - 0021-i40e-fix-inverted-check-for-no-refcount.patch - 0022-i40e-fix-overflow.patch - 0023-i40e-fix-VLAN-filtering.patch - 0024-mempool-fix-leak-when-creation-fails.patch - 0025-pcap-fix-captured-frame-length.patch - 0026-port-fix-crash-for-ethdev-writer-nodrop.patch - 0027-port-fix-crash-for-ring-writer-nodrop.patch - 0028-tools-fix-unbinding-failure-handling.patch - 0029-tools-support-Python-3-in-bind-script.patch - 0030-tools-support-binding-to-built-in-kernel-modules.patch - 0031-vhost-fix-leak-of-fds-and-mmaps.patch - 0032-virtio-fix-crash-in-statistics-functions.patch - 0033-virtio-fix-descriptors-pointing-to-the-same-buffer.patch - 0034-virtio-fix-restart.patch - 0035-PAGE_SIZE-constant-is-not-defined-on-ARM-since-multi.patch - 0036-examples-fix-build-dependencies.patch - 0037-examples-ethtool-fix-build.patch - 0099-mk-fix-gcc-5-version-on-suse.patch - 0100-kni-fix-build-with-gcc-6.patch - 0101-ixgbe-fix-uninitialized-warning.patch - 0102-ixgbe-fix-constant-sign-in-left-shift-operator.patch - 0103-e1000-base-Add-missing-braces-to-the-if-statements.patch - 0104-igb-fix-constant-sign-in-left-shift-operator.patch - 0105-e1000-fix-missing-link-interrupt-check-brackets.patch - 0106-app-test-fix-missing-brackets.patch - 0107-examples-ip_pipeline-use-unsigned-constants-for-left.patch ] - Created soft link for dpdk_proc_info and dpdk_nic_bind(from dpdk-procinfo, dpdk-devbind) to keep compatibility. - Added a new binary dpdk-pdump dpdk-procinfo- Add _constraints file to force build dpdk with sse3 enabled x86 machine(bsc#993462). - Enable compilation for ppc64le with the help of Rüdiger(ro@suse.de). - Enable example package for aarch64 using Rüdiger(ro@suse.de) changes. - Do not enable PMD_RING on ppc64le (missing rte_eth_from_rings). - Disable examples that need LPM which is disabled on non-x86. [+0036-examples-fix-build-dependencies.patch, +0037-examples-ethtool-fix-build.patch, +_constraints]- Added support for aarch64 compilation. [+0035-PAGE_SIZE-constant-is-not-defined-on-ARM-since-multi.patch] - Disabled aarch64 dpdk-examples package for the time being as it contains lots of Intel specific code. - Added proper "Group" field for the subpackages .- Add upstream patches to fix building with gcc >= 6 * 0100-kni-fix-build-with-gcc-6.patch * 0101-ixgbe-fix-uninitialized-warning.patch * 0102-ixgbe-fix-constant-sign-in-left-shift-operator.patch * 0103-e1000-base-Add-missing-braces-to-the-if-statements.patch * 0104-igb-fix-constant-sign-in-left-shift-operator.patch * 0105-e1000-fix-missing-link-interrupt-check-brackets.patch * 0106-app-test-fix-missing-brackets.patch * 0107-examples-ip_pipeline-use-unsigned-constants-for-left.patch- Removed unwanted files(bsc#984437).- Added missing GPL-2.0 and LGPL-2.1 licenses.- Update tarball URL.- Applied all the fixes recommended by upstream for v2.2 stable release(bsc#981996). [+0008-app-testpmd-handle-SIGINT-and-SIGTERM.patch, +0009-bonding-copy-entire-config-structure-in-mode-4.patch, +0010-bonding-fix-active-slaves-with-no-primary.patch, +0011-bonding-do-not-ignore-multicast-in-mode-4.patch, +0012-bonding-do-not-activate-slave-twice.patch, +0013-bonding-fix-crash-when-no-slave-device.patch, +0014-bonding-fix-detach-of-bonded-device.patch, +0015-bonding-fix-detach-of-slave-devices.patch, +0016-eal-linux-support-built-in-kernel-modules.patch, +0017-examples-l3fwd-handle-SIGINT-and-SIGTERM.patch, +0018-fm10k-fix-VLAN-flag-in-scattered-Rx.patch, +0019-i40e-base-fix-driver-load-failure.patch, +0020-i40e-base-fix-missing-check-for-stopped-admin-queue.patch, +0021-i40e-fix-inverted-check-for-no-refcount.patch, +0022-i40e-fix-overflow.patch, +0023-i40e-fix-VLAN-filtering.patch, +0024-mempool-fix-leak-when-creation-fails.patch, +0025-pcap-fix-captured-frame-length.patch, +0026-port-fix-crash-for-ethdev-writer-nodrop.patch, +0027-port-fix-crash-for-ring-writer-nodrop.patch, +0028-tools-fix-unbinding-failure-handling.patch, +0029-tools-support-Python-3-in-bind-script.patch, +0030-tools-support-binding-to-built-in-kernel-modules.patch, +0031-vhost-fix-leak-of-fds-and-mmaps.patch, +0032-virtio-fix-crash-in-statistics-functions.patch, +0033-virtio-fix-descriptors-pointing-to-the-same-buffer.patch, +0034-virtio-fix-restart.patch]- Use fdupes to manage duplicate files- Create DPDK packages for 32 bit x86(bsc#977639).- Add upstream patch for the ixgbe driver * 0007-ixgbe-fix-VLAN-filter-missing-brackets.patch: Fix VLAN filtering logic by adding the missing brackets in the 'if' statement.- DPDK is most common vhost-user backend, Adding upstream patches to help qemu vm live migration with vhost-user (fate#320713). [+ 0004-54f9e32-vhost-handle-dirty-pages-logging-request.patch + 0005-d293dac-vhost-claim-support-of-guest-announce.patch + 0006-d639996-vhost-enable-log_shmfd-protocol-feature.patch]- Move the combined library back to the devel package (bsc#975123) Ever since we dropped the CONFIG_RTE_BUILD_COMBINE_LIBS=y option, the libdpdk.so is no longer a shared object but rather a linker script generated by the spec file. This means that it is only used during linking and the linker will add the individual DPDK libraries to the DT_NEEDED tag on the dependent binaries.- Fix shared linking against libdpdk.so (bsc#975123) * Restore the 0003-mk-fix-external-shared-library-dependencies-of-libraries.patch patch which sets the correct dependencies for the shared libraries. * Drop CONFIG_RTE_BUILD_COMBINE_LIBS since a custom linker script is used to create and install a more lightweight version of libdpdk.so. * Include the combined libdpdk.so library to the regular package since it is also necessary during runtime.- Removed unwnated patch and reformated patch file names(bsc#974903). [- dpdk-2.2-dtneeded.patch, - dpdk-2.2-examples.patch, - enic-pun-fix.patch, - dpdk-2.2-warningflags.patch, + 0001-enic-fix-Type-punning-and-strict-aliasing-warning.patch + 0002-examples-ip_pipeline-fix-implicit-declaration-of-fun.patch] - Added CONFIG_RTE_BUILD_COMBINE_LIBS flags to club all all *.so into one library- Intial version 2.2.0(fate#319169) 18.1118.11-lp151.2.2118.11-lp151.2.21dpdk-test-crypto-perfdpdk-test-eventdevdpdk-devbinddpdk_nic_bindusertoolscpu_layout.pydpdk-devbind.pydpdk-pmdinfo.pydpdk-setup.shdpdk-telemetry-client.pymeson.build/usr/bin//usr/sbin//usr/share/dpdk//usr/share/dpdk/usertools/-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.opensuse.org/openSUSE:Leap:15.1/standard/edac9d60308ba12690d9ce6e6615ea83-dpdkcpioxz5x86_64-suse-linuxELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=3cc0a124a5b5b8bd3e492bb77a03b7925a0fa715, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=13688987ea667560b3641fa17450ff75cd066844, strippeddirectoryPython script, ASCII text executablea /usr/bin/env python script, ASCII text executableBourne-Again shell script, ASCII text executableASCII textutf-88191f7c1a85f63f4c8bc95ce3d7a9c2477fda418fa646657d203f7fef537c639?@7zXZ !t/] crv9uaXP1+\5g04t)XmXSs">!4R:LŹ eDs܎ӖڮDc|ݹiX;^=tfx WpD0wrRVuҩ ⦷۬|;9V;lGp?7;.?f8qz~(d6.0kYjpnՎu w: Da4Ω@%ˏa%KzlO#G]k>덇%~(ǷZǏX6}"! 7Č؃bTf$pv?Nр^-5~,K?5 U 'Ί]8Y)mB 3nLKTX_kϖw@]8c[!+yH‘yӮ5qVQ4ZU\Q̱5JXH"S֦8Bc'A2x()IQ&fݛv~LAq xr C 0Oc1 5pwވ:dZZ?_!dZ}^_8 u*zծc)ea&rWnLvnOE-鿵 cv~M>مd{XfPuĒ#R*k p<^L~~}\(0XQ8Net zәZabCZGL?6 ~ S7rwL;CsK[g]5.) 4?Bwi1EG(P-=5`57Qm}a89o˔].N&&K n3ﭔVq[襎W؄TSs}+20ۯ6OA~?V3l~φzcfE7OE.е>2.s4^f#J0IHQ"ocɕG$jD2yVemcg>%ǗQ =YE홾ϕ~?T3CTA {@IW`gG\`8ZJ=F&CEMBE Y}1R9?>jn=yD,cQ<^toL2fX`zLׂ6!/. |%G,_[nEOA%:- ?NG֡Z@T&c&$M0"=-O9|괶Ư=7;骎>R6amz$V |4!Q0 [R}a$p9F / [%x,ᱨKK$nCmN_r hw%F[y(qY ېMO ~lI>UA P->Wn'J3m<*RkZI*)Xěe#TVpts2Ak!sM̸dʝQ _estr)9*pi`[@'޼"ؽ)GmH9%`ѾZ3LVc1d?޸ L?c;r(t58 Upm`Cj*O ?|=jV uzĚ?+&@פɁ_6*Wκm+VL̄:+}Skl`)kwHGDQ4s5[%+u@|pa^IJlzj/gtw܅>MOgR\s'N5D-_s_1j"%*K\OVv"x?ޜQvs㗍C)v-}_B{ BR!snFb쀡[ө@JS9nW7߀l=s3[UDr-ȡx{K{ߑ4/LCVfFpN-Bpqnu77g jv#h\h-X׎$X0zds@ E|#p୚:aLo`>o6kURLz' U-~l>1` o(sȁ.e wUPF 5ȋq(ےd\8(cY5fg@!'du!ݪQ O!=&ѪiR*֦l-$0(RUwp)Ӎ]= A N;b#ϱj^ ~2pIrbA7Vs ǦYlwȽh[QcDP^uVX;׹6L)=/3cHz|koN]O@}~mE]7(u=<%pn4cb_`@vlJeX F1E@t\DW4.w'Q.ݩ W-^@A~[s.8 {'}e3ȳR̓+t\ߕ=q%YzP0qE<^Z,_ uҜ:Z_TL"GUn?^`9YҩnP k̀K , of0Yh8Γ'Ϝ61|5I%Cz[Tos(5שXQ`yq tqBpe[8}8e4-YTBZq0]k ]p+X:UU= m<{$ɍ/@e›Yoi&Lk4׋\_Q=x犓jIT[,JepS%DXz%Kn]5V]byng?4Xf&p-4:#d?,jՑK zOa$ wGE54wRtX0Z:Y~+YXDeWbd tvGZ3x_ur!1=`$(4иgݐ1XPT?\RQ,2:ki#r}Gu`al3E7Nڛn;]t?i$Y Ec*Rtv'|? ʤ倅JoA jѥ{]{m!ā} տ`ɭ4=./|%?2:`/̩.g .8U?Y2ՈH~-#Vg;7K*38!/ftڂ(SЙ*;|eO^RhCS#PGw\ .j@;;wG Hϴ$F4fG1]ha"&pY*KT3go&{wÈLFFty iDMEq\!YNc̙~;(;l6Y KV Ć'cƣS+*ayL&%QCׅz01(L%վK_ צab4g}m`5A }SS$"A5ԹVyBe"bE3 "4Vt<ٖY_DM7<٬ǒVLTHZ]S\#( \(VM1OO1e@ zbQqa>lk~K3MMLd'OcRAD8F*撪%;G~vɤ0_= 7F&SlxHiHuid<|ĥ}u wUMTM\&ͿWXW=x 0~[U|a~j?:Kqtz-̇9r>/~~@фcxa' ݔ, !ͳc>-,r| uϺq  R;'&iU0}8pW]g%e!/f  1a#kDL7 *4e]jր)Vi^)<>撄c,UFV8;rc-Pp 7Ukn&{2U5=A"&gCg ӳ?Cf% QE}OT>_@Vy41`h͠ncSR9' Ƽ!񿲾(<ᩓ F&fsI[TqqI()zpr0ơO0"𯸵ErW/Q'L].|F=Wi( Ϛiyqуk"PnCd|0#~`>*.OGYQS&K<}=b&XA䃡6pVD2Forbsޫ^ۍ7^&&a5eVYD cW'\?-L 5Nw]%#S#Z wTLe ny^\MȾ"6.tukR_NƼ5]ѕN;HD&Fݾ9_Hկ-# NFoLL-H5⽦^A3Xf:lIJ,!d:8?QUænz#O=7H+$bE9QxkI yQt}=0nN|dq&y}B-%"x2V`=ŧ [#?ӞP`9>hka&kڟE1NVO OsU+x;3ض^Ȣ5CpL-zUr縁Dtxa筦sap(%nKv]=y2A Lߥv(Q3P/y,pP d.n@bl!X +zn^ =goŝ?$V ՞Me+}alw$[_!Y(fu 2M(m]@ʈpꎜ%}SY }0U8)Hˆi[eA<4Q3O$k/] #Wkd i["<[Wp`IW]~>+. tKO!>Ğwsu0;Z%.5~ aN2j~|ۥR^lOs(Vwm!#0vkYKE/jx0R^8dh_`o [%e*ĀW|nh~KVgd?6זN-08:_l8_q\ //jݷ[>.OmfC㽆jgxF 8 vKЮ KteTnQdC` =Q{lFQjW-4!mFMֿs*0bs8ilW~@Kn~rfAA)R  YK{|?Ad.002tK}|tq+c6 P7``okzNӷCʶEr+&Vxb#{!ɡfQ;`W @'S%i-OϜ*`7p]Ot[&5=O5t*Bw8e=屪Cp+7E̪QFT87O#4 }#lo'l&0\Ӱ/:qִ(\ " ]#7}@sSω5\ғQp$wrEᏗǠỤ̈ `)+TggzQ[oW7w/?PeIfmG !81<pPz92GD‚#LY^: =uj*hFG3Jurs`U W^q RU+>pLwΏL6wcq;T 70R#v?fbr &e0-I_G28CH0xCe OA@|R;{ 9t Q\!Lf>ҙk7H9yxCVy(+'\/;>F1?ڲ XV_鬑^eX;y+c04S@h'T9}%[7]AיM9e)8;U |h%3Ǡj sQNaLJ@/p)}}H){p].޻=yt~0IP%q'5Oܶv7®"UO Tml qV ҩ Q F,G/2^6pɋ*-k)CݭNU9:5AjurN]Q#WqiưG⿪ ؛yISvv k`Õ#S&LX" vx#N:h®~)OtNo(&PFI+N/9hj_#%XHA?yJQEz_ZQQIpc ~G=rD&e'L6__C#ewNO%q9yۙhcOX3ySKqinQ}2(@l='#WJ *y/EfQ ]q轒q ,97yr||k1&2f%jvUD̐7=݄̑״-gX0 @vMA P xcc_7Ŏ=H1(3ISPC>Kb2uhwJ?{c=r7W1%n7U$ ኔ5)i\( > S6t 4^n.BVK1\#`K`U|-HPVߏ' }v!*n>)CyӤ5'U.gGX^M8B^=q+9?Ҝ6(笓rC82Itm'nW1f^ AX~W6>;k.nҼ>--_TO˞Z+ٸ.*:m &pN-By@Esbn~"?{6վ! 2Ca8)!LXx?F =Yg$eNJzQB:-G஍[8k%Ay%rX"*%P#,s @xKfeֽiu௳ =Oo~K_fy~7XhcR7(e yW1K3`!f ae~P!qc6[*LeTOLH˔/͗vvm8c =D-t/D08<. UrJ`>)m,EݔςMټ%&c۟PBykQ+)/$΋2WEYwC]T'qTuUlX|MЩm+cRovmɳ,ʷ"5V|ۇTb[<_5u+O%g9&kůI~zwg%Nt2GOVM9@KvmOszK}5cU%_ fbLpR6Gk*n?#qgp~,8sТcI]%[.fAiE-˄x'EYĂ۞=qwK%bCsغpȁ2L 83!>7bپn0`l/=#xUI]'fxqj\C1Z9A" $Гx~Bs4E¾ᖷ'95Yl܂YX2;t\b/c}n|EqFAG(W6~w{0A__6}QJGZP`5%hQOۘSMB2҆gqL`-0 x܇! m#*PH( T3qz̞g{+ Έ!Z vs{s&mUiЗFd''.[mÍp-vZ,+R2"Dmn~<;uIԑ&.=8^=8J^σC֗c]%{G08->Ob?p06%J}E_KA;^Se7 / [rm֮ ³E"p~R\;e'E"[ Hb,m@)wCa^%~  Z{ӭGWI(Zz=7K fԣ9.wT.OTX텈NY鼘s[g*ub7<} ,&ACX))tčkxmŇ(NLek4jքGNP;?ݡazӅ}!A\;vNqUyA"qقCyWM9/'c!'EJJX8i*8Ol\>#'- 4] %1zn8GVa"=8gn S)ĬCZG=ߑk>F@Yf)qN6!q(bČ !0AwM(*?r }$}zfO ΔO rgF.71AX(/`Q5:\1yJ K^}CZi@..NP e<)62߯O(;һ60Gi+7d>S~7< 7GrV Io;vv'P3+pTpJ\}1hH\%x3  M! ca4}Rbc!a -6{M6'c)-Ë)w1B1&ʹ-U3 1jͲ<;Fǜ\~t$)i=9n&] fRZBrYONX\g^Kby7vﬧقZBo_1ߌ+Ul%s0@܈U ?my#vUV8ԐڅUwj}w"s^SMY~P=}-҃ BZb iGfQY]E3',7z;2U 4[)'yQu/#AB Lb$.1%]h}˰4s ޯM!(wy6$RccJi9nj(XpK+VANe}_юݩ<yP<,.䵽5/ x}qIb9~Ad~}.f,8(NyG[, {ZIUzJyҵ" |3k zJcЧIe96'ŇX1ntnW(4-?B˷Xg r=CpRG&0_+lV(co JH)CsT]<[k6G~ۺgaWww0|} ԍ%.ꆓldҲfd8({F8IF =vCI xUi)RTST*@r>fn%[<Uqa pw_Ca"CA{#̋pkeg]>N..* [Oo4T _zPNCyatvJ%9,=R[ɫ+eR ~.c*ћ͗+g@f΃(#0yXW/F$.DCuްۆM|da?X@ɧ%qQZ|. SI݂7N]KjZ-uh.0Ɲu 2R5A$fw&"PrN ^ 9`,H3c\e5 dR8Qh^~ՔW^>He0ѵՐJAJ69K!$!i9``}o@='+0 >ABf h2VW} i7st;;^VjY;Œ8!0gAy9aDfeiZTp03C[y3"}G 1 :+&ܼp Mܿ&VٞRN=dsc4Ok= Zyֹ ,bb٧qc-(gڨݢJM^|7[EĪʺP~3v0%Y2޺e }QyX1sAA!Tnv!qko6|g\|gq4o RXRh,Gޕ|| *}A"_[,A 0%tb@L%,s%p|K%F=#"3X0"Rڠm\X#7r@$>`|#@8 E󟶪͌6c >C@E}E p>0]]c+(9坐9xYUEEGlWmV:bPJ\~Kr#;Wc9\]Vx8GG"N äAzWÅoEw?x/wr"L\d -,8vGXDZ\fh^uEvP śȬ2je9<<blK*hkkyE =6F|œ7ӝ^=|&F,"C"> kd/ɵI'65dZg4AA×+%0:JC MBr9 5ft!-uF{הe/RgJ_`Lj{D#Zߍ/|e^: OlS xeUCbmޒj)삥s Z&d)ؙ!̌7^ш.fɂИgL]@v?iSU-]U. /eԪF4\i94g'} ϚB(h~<-߫ Z{?/Iv.x~j([m s)OczV+yK/-}tc5Z¶3Ɛ#:@OIc,>G{qU^6N3uB K{`8V2?T;~#ضn,Hd6G`i'㮡m0Dk P5ҽ rQ 1ߞb'ƚ S%\js ++ܓAkjbS|I/*Gn]:pCTv-slrIq}a,d~ϘG^޾/'MT{ |#,(M{zP,V/2|gЫp݈G:d_ro8xCkO#aNc7eK rމ[XiE="XӘ:~]QL#(yU:ӗXqkDYZf@:M A0FN[r/URRUo?O?Gx7%u>Iŏn°yęH(֑uͤޮTMRdqZ7\#Sse-R4vj]Һ+z+sb8XNG)k}ũ*:S}}[yC㡟c?6\i~oEByYK@ĐscfÉj6V) igu@W?A}19~ɯ #o+KeBd6^K@ȄOw L~إ鹉f(I+ C"5n酆tHwp%{c#lV߉>hᩃlw;m ).yJ[oH mEppU@:^m.FOS,D&W!$S?e3 %V\R-THzlweMw`9Ds˩w }''gD_f[cXXI51 |eX _~a2JZ^$rUMhl6a;Rr(+*s#A01]w7YmO$x m+&-G 3(%/1L 7Axr3WwA7ua}+'Xl@o/9C:0KXiЧ _[Cg˜P@g̠d-k'YXX[$/X;;C'5V3|i 8ߐ6DX,1.'}OxUlE>9hPpBśLK7I ePG XGyu$lW˅8m<IO3?Ss DNP?_-(=گ׭l?*Ů1H,\;/Q6 NP= #悵Ejȑ%XC.$:rUŏuM;Hn1?c\9?lf@MwA\S;ty̍TF/; TiQiG{Î25:trz#Cq&X={`Y?@Iw#8$yѓi8~2Wg_Ӹt !_`-0`ͩ-726ߊ8WJ~/b=QzHMe `3 apgDXYKVbw$՚fV(Lh  >dchD!2OwZ|h_.[Dp.+ƵPf&k=ZFz )%ԫ}F90ʍm)?r>{g$U La8 6޵vjlvxV 葱æ2]D;?$hvJ~8P5W 3ct"(+tuCK"]laq*KJ34MD%60_oRiЎcO"1C_!k@cHb#7"y kaR[kFΒKtȌ14KGQg4Be='+K)wy5Ξ-Uvk͂ DP/fijMZՐ@e,ff /̩'"J]P,-]Av /_?Gc}kHn<ō~N6-Tñ%Mw< 9w֗P?:-:c UlI鴰s2 @{~dH x6/eZ%"u_WqH7\Lu 5|@\?xI*BōEDv+ƌ[,nM7 8E1P HybK g.߮ @kuDDSw$~¨ .& VaW %ǟ.>jQo\c!p;CU[^"q\i- /2=y,g"qT$24r Wo9*+(5+{A F{c<\MEuRN㼈xX+kiGovXCb&RHq⣉n /Ra%Ɲ7Tܜ&fn]{ʲ)uBF~UCYsʀOM? jC:@\I0!1-]>~oz?6 IVid*Cx`өNS0竃O` 7{-c8,z5£CP Eho[Py\W  IY7ZS˙*DR)S(ۑWL9q҉BC -rjZ>v.À1/TɰL\N׌}+ꝛB WbvsJL|1RUa xv~TEdQ7Hr6ad;_iŠ(C \ř{ kdh}>dl/!.1 DXpTk:x:2Йj;?Vl𢆡Q]ۅI)u+z.E^iʵvDB kiOI7b=鎿c=Z;VLyNA0fXh &W~ OO? i^-לad`URƿ|B;sw#6EŒq$3i@ r/,cc'3';K%Њ, qx@6uICd~ )Vs*0Yڏy]w4al^F,;.fn +U3LAڊikAyoa(HqRj,XP} sg_̱b\M0RAխKGX6=#?z-a2 He"g:r%|Tp+??J>n1>(iˮ.y()ѸX{Pz藠?U)>&=쒎vu;T[Aݴ?b)NLdy !'`iX!>y>mEPUx81zb`(;>f 3H3wH\ף%DbuA;{\=m/@f/# mdx8I,O8& VoӕWT:ђ3hi>3!V#v1'#KIi 'Jδ.fW ǧK;.=6f!3 RM0<.~A7JSZi7,=TQc ^OK513#sGFC=m{lrK 4 XajfՓL(=E@i/b3 ';VW's6* +4P]^7UIb"!@3;;ѕGo*U>p9@wKeBg!ae// )zʿԞSR2 ..U:TxZ8* j(ݪ;b֧kgw\"δFͪ\I*3">awN|ǂh]u4dgŧN<1q`Kȕfv0;1a<\&R^kNE+jS+=,G! ǘDy_Q4JUt!D>͒({1x8Uݚ;a reUޫ-c-G7Nwb0kT"3&m/q̨G~k<ř4d HVȹCГ!d^ C)+I׈2 g$gqV>jA[Hbw7vFS>U`䈎Z ,AۤlYqTҖ1ZJ0k8~hlw;dRKVbƴ@sP[ISi.\~c~3I⠰6,>j0$~]LjeφuL._ӎ M%\ow{dcvϸFkIH@&)PvU#J4-aWVo.C: O+TC{4x(;s*Z3L'ȍ{~2/s@܃.PoO1V-E!z-&ߠ. -䳇K?iU| l!Ex of "X x JwK}gAyDJ֭dȃxU;mMeEa2jc!1! wWX`{ a*kL8ADv.h;aK쳁+H/bR[cl1i vkA 2JnX?<;WLC2o# XN }FF$E~goFeئe!UBڕ$kTfe- mѨahAC .+{؏V3 7Hln$շ k!hzYdpζ&>lkc-*Lr _}AaIƱE^ⰿ~R2cv$# x`՚W)O5;ߧ&=i6Km~,{@PUtybع JQ{GRFަb#!ryl>|P-v{`ťV1U/m ֩vSdW?"eg1խ} h8}N1Tx'#jJ3_ԛ QueWsnO*i@TFTnqaVLvB6[p% ګKm3Oƞ]4\: )b%.%BRw:z+Y}ƚAꪫ@#dHyWI'\|>.fXX{A"YaJ$? ܪXB;7\ LloP>Ww]vMr~QҶ|MpypI7h攊{ͅ(tgAs 6\ZV"N'e!_R}=nԍ*$4>l`ftpܧp7 wRUXȰr^#dž3oztzIZJ4Ǥ T@SlC0|b7AԸ9\@ʥɈF4+``kܵsx&'[ts:OZ.IAӤeW|dHe:UfÄVT{`& VFJ34QHh1󊪙~~:i翙uqLlci^Fu5a c,PϽ:sǻ;'O!/J\>Az-s+M3=mLXفH`~.~RKqc_@L$+&4F[YK, g_N:>^ Pt{ꞄrGGݵ1l7dJ}7 𷉄yAd0&NUq: ,Ed5I{H|3s%b[j{ݑNXbތ#zWru擯Mŭ!>bk<)xa׍)DgtVnkP8A]~gn?ԯHϙ3hfB):B1[\p ~1 ih6hg_f-P|6nl$ˊuζ):nxI;-x&mڑm4!%m١]Zb>P:@Wsa7;98a.l@LE*B*r1hQ-aQؽ->tn~2'j80NCM)H{.0'BKvSs'7o 24r'x inW.=26`;rѧ02aj36H; V}1\&OYb7a'Kݶ#O 1+Fz#2ܒ 14v2B}@r*BslwJ 3X6L}=+Nab>ud`$QS{u|K B{6b-]I'Bȃ&8`}*=gIꅮVsG*͋_i20w@ VcAIt~$ :h2JYξMDDݮyq1Q9V~ŔG ;lbP"j#գ8찇xU`cf#qdŴ1WJ@}e#x\C@= SٓSy?nHa^|LE:]XlGud;Bv2a<̤slT鸐G&`4iS'k/,Y49+sWG1DLk2Te̳L7O2ʦ["N ˮg:PU'c] ꇊ]`v.TE oL_pSi95P>"759 :jRM7"B)mY3,;/QE32Apj=_ lE `G0nU|}yՌnuy;B䅎1oI+6_qCoo#@f{kaQie;%~񜿅7tq:a$ƶ*f6/OܣveA3؆0ZrYTy~ CvQ LDc# Vj>-G:)%)2[|oC9L]h[ w秝*H:SǢgFp1 G7Źȉ)9$-教 i6c]Y.[r?.@m9315j/ycb 04Z! o EY+:\nE!ˋiL^hB@Ok8|^f`ȊVeEo,@ٶw@q@nʳ]L@18Sx`rkMZ=Ygw^dßfѾti;%B¹7K`א3hnj*ޮ~<@uء} ;҉ƣ¹/S"UVHGÞhǻFn[K{v4k҈.G3\b2l[A3P&er: äihs[-:ZwTVk  43X7/;QRHUllLUK['dM4QF~ig+ZOZM԰W\G$kL{yL #iqqb)TeWd!p:N(wZڪk^JZ EJ~vx0"ZZ6-I@Jpos"(u7 1X_|ǜW@qyl1* /-K6'.v+/ 7N0pGDկܰ '>mRO? u4UeWޟޤh`0ȏqhN[7k0ܟyBLVl fʩjM3ih<-<06)*5vÝmkkWv_ [sF$L\K92w#w;'RCB,~HmM%Ks8}MwED^} '+BE`ڱMvnZ^q!oio-ÛW4vR޶<Ӥ@^{GNm~ &_EVo'Z @Q@< J")?vpb Ju`1Py|"ʭcc {8׷? U81a]D12Mb[@+HH?%RdAA7rAEi!5vV+㐶:_`\a`Gc{#[YӢ9?ۙ ԅar͎9hڥ}'[4/#p?q?nb)X'(xr .I^ pwRa~Q_~hVK7-W0 UI0ni5=Ћzo t՛GyoԤ,nYky+=rk8rnюdrAzIQ gthl󷩹,-V폷e![qctv҈""u/w&%iy1B_w*+ M/qٛQ8II%W_9?~(kd*WV[c¨.Ψv/\']}hJ)Y&p-]@M 8^K.K"eyj$6l{㐃I=sɿ H+Y+2Q7eT<=w"vO:!x*Jm_';ԞNc ξЊj,)* vt40T]5BF-_#߹f5ғ} {ojM EÝZo$2β}B~[%i,*hqOl)aD̖veANw/f8KUKCu2 8 i%j^eNsIp _Je%5.ۥ]n[lt[^bH~UEZe/wj5{Lx}nB~h`M13>hRxn#ɆSLx*rXWє,:b^y9E %PS'e[lNbbXby1eڼHv7'~@"mRJ-1jZ@F9p ]1"{ʒ\'-yNp4 ?x0BifSR&lzY!hjH@-8O GC*QӔA[f$8a T+osxzG@9?,z@ȷI1uJ  ރXdJ,C_*?uL;ك:]"F⻱u!;IU_0swχ/YR?Onhk&ޭqhoK݃6#.g2Ya- ;&e:.\4{VSyݵH5ANG!HlO&3Eֽ^K qVMpLgUbN3ݡuIZh8/cJdpq a|&t:,cq^cHMJQ_:F?z:H}G*OIZKvZΪ苖3hR.g>Zt(I[mVɁ m- N@t`N6  y[Fcw~ D*ѝ 1"ccs1h=93Bڭ^qpe1#]N­MI bLw5⧑t:x;l%'/d(@}1uOM hKɦ^(b*~ڥ:m8Pkv'ͥѡŚ\bjNA:TZaDڂ\ @<أ[LL~7;r&_կxڴgs0N6Vg>'"Scﱯ+i\OS/KF#!@p4VoQ6u,jk_`شj8Qp.,S J*M\Ð^ql{B5اuo{6ҟ3^6|87^ӗ2b'#Txm\q ^~yQU -fƃ!!.ؚk7O0Ld?Ċ*ms;ړe熝ܒyQ/j$)J ײ؝{Z>u; I4_{BN8d:ݣzkm2Ɵ!܁}(9ARFA@M_ger'8%$H|skP~g?6Vp 4.҂Hh|:s3HPPx|5^OT.J'qzEl -CM"ĤXK@PZl*8Ҏՠܡ[>=0sʑU>okRɄk)0_-ބ& `_Z)s԰$xK~?_y[-f%R%Zm.zSP aw߱ͻ3 <!MR 6YNA_6Fb:zLl!qۅy*=E~j '&6{PJ ^Pq&'ܴ|@+gSUZ`EVBi)ISj>qgzrYd,c"_HzAX.2"a@*I'Y 0O,9/@D7Fgm|rq$F=OB2O>tE8˘zN2;,i..n 8H#'h.K, |)5>坻eKaB6Xץ=Y}?`M8kc<`#Z~?v ؍IaBpcO>VpدӉև*j_^6R9HsL"@CU`šijTtPSzC!29DEٯq4{g8a4w|W+({3VOS(]Z*!t.ABʊ" ]谳N6^N xTv+i4cK]bqkoI/w٨!J 4~] Dsa׮{3@}RIbeUM|)gF9ru̙qe=n=Oc_iLeHE)ЎW])ޏE\u::=PR3ʫ l0KX++ \^??>2c'$ꪚWnf"ċHMV)+Jڔ  YL? X(!%IWD}HȐ,DS=VWۣy? Z1>Y1ag'ȜH" ؎W ?90rN>; */<= POZp>n-r\DBK}K5y\==i4Z`0#.6<eۀZBNr_.ܳ_P5RE} /Z6! BT(M+i/=3Fuo7^{"C_Eq lčTZUm{}hr8JG݉wN5S2r4eo4 ǃNfZyB~vTek7Ϧ4y+/xQYXUT_V*M@æLH&`iOON$ .u`'h­Ř VY/e!ΖN%A-sp 1T9.Wt9IH0I2d*KOն͒qEUP~m1.#Bc ^l?21 j7.q0ǨϞ[Qb4W ߡ!k߉:ĥ}y*Pp'PEUqç0u.aR_Gt8s'^M(sѠ-BQ'gxd{ő(DyO{?E쮺 MW M޶$ȨMYx#-vI|o5@V',9k>OQGxp!aUqQYn]5rҚJtũjϘקh0E]q{2m"#ƣlظfmĉ[IeUZK-@Y:ږJ`Os~#8M()+ṿ(MV1dn 4J3:lH,0ҙ7~hpEO k ~qnz.%E~eZbs9OkF=x N 4;PxPg,rfrW'*6Mn"7gk*jx6wTxϢ]j)  t}2Kl:"+&m!!q@ΑE=<R pw} 0frȃj)yP/_y杲B3pλq9%Ie$)Xf?ui?/a+LQ? >0ƍT=NJSR9I'^m4Ok zWO0@+%mY+/jEPx(K4ep=9k*XT;)rClpjs϶smcM>j ?YSԈY[Ye (ݒ;rf-a6ɀh $pFЖl,7b!hN`hWc`v6[b9ț ӻЋ8Co8 p9)捸=İ?=<Z*ߡ6|u8 G;J4@OWA&w|Y}K~7U7GU9M'w}]]&IʞS4{zz9Nj\[HJlڭ\\?3X|S8:}E0tQ6$8 *LCo 5Z`et?!uʣFbI@Xty5X^'Ⱦ6d /ayRɎ%Za"MMR]g`kJEfr JՑԣNq4?د6֡]vKg% T=REZ^tƬr$/l0@ X^WO}5#hUI\wx3 '6B‗ſfkb^X.+4x2icytD+LWj# lZ9#pqR(Vi`X49 w 0T-5H C S`s+•ᰍr]ymLjw\(y ML^o:ȷJN_gZǹi$;O_nv";$ bcj˭$1(E&o?N/Dg)hȰѣ*̺&U:?FÄM,< <+gv0PȼDaT0[Y}L%#V‹Z 1’d_!({(Y0-cNZji>JW{l]sYvM`vsPhQsJf+Ÿd`ļ:_"ٕTYGL7P"09[4e@o:.*xUD_sE$,ur1V q(Q QS9&PM3>Kwj ؆ju(H͞TV:*FWE U! 2K[H&L*[#{;#{-.+^naR/Y=E[=P`l˞{8y-W *rbiVT?v*e ;RVR6m 86}tN{Fj o!A_L9«XJL*;A(2L&!ߊ(҆euK{U|9ǷG(anOF]'-bE.!6ύ$g1'2t4ZReO(9^pd=W qR;P쉟NM70[w"G23c֗A'벴D@Ez(+mTO)/RZe2uh7}tCSU6 &YӲpөݘxֳ6ZQm;f9RH* ;SA&ai =@n(q|D'BqCe]-T59|_4ޠkӿ$:ۍb=i($Ѳ=t\Sۨpb_WEp.CGqbw}%vh\s"xt2=Ὂ4k2#_t9uO茙Y[lf따iCuwX|g3#F0vpJM/^\k0j1ȇL31hy'a899НӼCjq f1>\js/鴩V,]~|LQP ՓCp9pJ)ƲlA2DI7\Gf2}+.F $т6($b 0E?K]g<34=A>Um& qt:)ƲT74j7'Sѐp $~$VQ,J'Vj®#ɐPx Z(y (l^_Gv%E4{/n_B]6<3Y߂缋!:HdK= 2.MKHwU! iz^/Vlz6Tjʒ Dtrޣ.0bL*6{5_L[`Z/~1d0Ʌm=.Qo_-OZV J{ m̳"Q*Hd|aސg#4%xd-hq3 EMk1sz'>f 9Y@T#A9 nGT:RR H'z^a -%|jF*2'p.Тq=( x^od,ɏw &$q[T#5kDeo)d7~%Qs۶?Rk_2ɽG([%2ʭFTJF=<?!{NY/x^,KFNVJU=D;ydKNq'W8iTUD]ŧmD5(it;z@IZp"pP7 N:ƁN'>֘|h5 (F ¥2S0~yO{vf:¶.Y|fƥ#HA7 q27mp\Xo@چ8OIiFx^F0tTǓ[tZprrV ƹ`Inat\JMtEJt9 B2ũƛIu.(b2+"aja}x&DX5ٺ^ֽ-ŪAp&f :' -KHh۫&Y?I{q'uñ{)TY z$̏fGZ8@*ps6D=w/?oӿvV^NѐyoH3/vi6蘊i`BB[iXr!%bp9MR/7be-VyF~HI!oܒ8#*ONAYJl"!rcI"u ~1z7. ;,>kڀwggH\x` -Aȟ[~џgO1*mUSb:O>na+RbAE/¿#nɥpR<(T4u|΃*|.'gbD+^0 b˱}N-h1XtسJqy/(Kw[ N^ApoGv T)হ]ȗ t LɰEcۥlM=rMceackvBgmY1W5>ېvtzyrXѶ ( É}+?F厴2u}:S5;bB =6@lkӋ&"L{)eB=q^= aezM+Wb*QQCf2=&Hl(ԙƚ'<`ךԉ$w2ڨqA>oFn"sY~I~ A2tL`$[rapx~D. dTm_֨iqkn\'튾Z( 㑿CРtjVbLa7P4cc|:sRQHl$!Aiu?Z܉LBSgף@d6W[xf5jT(r:0vMR_:?8caK鶸uX컹yd \!)ȝǞ2aq]6i;;]ӱ۞},}|* 2a|>2Dc|jA`B2'1{CmT= f!_azl,C挑T {-Z)D̠`|,F&}|Z#<043`gz𳑫x{\GX:m?We\Ptj 6^"On[Z3#QGpR*&Mwc!.0c^67ΈRK>Rh>XOZdl4ҍ$Kf5s(Td.}lU`0To=A ;L_jϒ"F.\T:ύ!IB1li/lT'%/~;e y:ٕߋb{cK1FU~s0;RQ`0igKG+Ckͼi ܰlvMe`ɛ^ }K;h&\ M]ۇf z4SimSen*蓖s$ݰr#گTd6Z B|];Ӵӭ{KOAW2"ul[g v/^ mex$`<{St Kg"Lx60d#YKuK|?1z 1 sdÖ'if&.B7 (%Y5X.x5|G֗X0jٲXcvrNn]"j,Wg>0<#ozO>P<ַߕu ]/MT/+@Rq {FIwɳz cǗ/7 HO4}u&3FV`YlߛrHA4B: 9kT N]KU0)ВGteAe/<4YeWMM.tp5LzG@b]ՌNC]BkXKFVр? KYl3F%Cr; E0.ަ0e2FMM \;yРp6r=2ѪQ |5XV-9zj2*oGB<5ӡ(&Pnf` nMZ!X7i]ֆǭV vҐK,UȝI #/.0js eP@RNLJ9_da;)?A C;TZg'2ucA1qAyה++0\G= ʯE'*!ˇH.T&m(}v 88qQuSzmb-B.D4d3Vo֫-|j ynx ѵDԘ.|auWۡU,??A͕cJT$, xʫ&ءeQr]ݨ'4?~)o7!L^m.wLoA#hdk47C\QOÃ1IwU}G{nm߰|hϧ_&S<ڶG\E;hF+5V g#Bm<dcõ\8\Y`]U[y2b6׺#>ve0`y1_.}gM\Fy0M)/1.6F 4qɂH .v$T$X[3ptf ?+;dN `QKFqe3!?Y_H~9)djgrIFC-ww~ǐg@{h0R7K+5óAG"ghv].>b1rG_lh~kkϜ~S͍ݡʓlg -XSk-dC6 vK.]+Qfzu vK' Ò?zǧ4NB ݤݳ^NE}{-;.x!`槓4:cWfoni0kk`%=Ğ'.c{B4}a:G>z1Jx> X8V%Ŭ1`߽RkHjf_EЗ^Z`(Z$V}eAsU]@m J:TlYϵlV`ZD]C^e|e2,@ ׻SX1}dZkFXZ?y┹h| ++€/L,AɯQix7</|)GJz 95t|=BaṴOFad gݧ& &Z(ދr B$:ӎJK=[fPj1CAb5xՄ1Z qKGn1|.D'Q}Wh_ 4owvW1]ڍ 2.\"JQ]haBQu_9QD>&:zwCȠ4r̩д|wp $fg}qwɏuP.3Ĺb9Au<)XמILܻoaܕ8Y1=sV,X-6hC爼ۼ**hL?Yٯxj^uA9^@'2ƖaXi~sSAJ#Lq2V=:GnFNvh<*8+i;8a?7IL(B$6Z@׾irNU1ޱ Cuo5E1ߎMtpWOV9W˝V\g<;j%#>WuștGb* 9C\Dv`&6MLjڧ>Y۬Э$R50u}C/*#4S䍷c?џp)P 2f ռ9D.#EOT$isZ;U碗AߎBUl"ir6oV0:Va$^utC{ ]fnCņ:4q]ͥ|GXŬ7dr$8"_ҙnhԶF |0qxIЇ xO;ӆ'7s2+On87PMDȴ'g8sM^~"&o[.dlC c'zVA7@<*%nRJ`KtQz=7WM&;q qn x4?#|9HM?}X=+a,g>VWT#8o XoIx2K0\hWWC\q@{gnh^:;ylV/7f'Lǣ* 0h\~VC-b0> ll`-OU}ȌDkO&'X[L7<\ё7D.!5~'4HN~9aԩeOEJ\e! g~?hG+E6T3D `aDuf>  B"if"{ G6+a&[_y ;0lxOYVI{1r\O#i(kb2ggꀵۘ.V0)1\x-Q$/;6Hkɀ r%vaspMD[ʹDxջ=>O+a/ խY=OAwr.$m ">!g`X TGq쀝C6څ$}~j`U'ittePx5W `icU9/ϻ_E([KYF \0'MƹU$(hSC*SA*fI| :#`Gj=eGs`->LeR=}4>>kUrm)Ru c>W\9.>3H-S7dZgr#>WެTξ[8R~5\VW tN*j-≩n2FAQP.S@vi6Bjc G[ϚҪisxt&Ep:>ӣCkE51#ǠQ= g2$R+\$̻AT,S֮J@s[I]EL}Mv2K@3ӶΚNK Le<]}K 1BR@׎',w2_W1B;O=`*(kl/8f'(" l>_4M#\`H}04Үw6̗[HkRnVX1ɬ?fۘC;#<8HK`c)h`[ # _3+C"{Mo<6G$o`儖8 yh%N3%\u"k PHM꿌<1PhZ{@:SpJM(zz悘c8/-ٍ܎_ HTY^@@fS@"9p֜B<$62e1'y[Zoй RU1wmI4KKmΪ-Zz2ahU^76iI<,HY_niQJמ%.f "Fa\<7kj. x5+4S۩e/OJ$b 3*s^S.tJ;JG1;0^/`zx_k(D|=$t[hrۤ׶hp=bs$(x޷; F~cSG1BGL6nk?pwح"rL?M CF[)W4P|y~Ri^m4Hc kaHJF olbMT AVo.orxR2'j^Ɋɛ:nӲg}sgY(#x <\1D% <#ȧtٷQ6AEog/r1e:{֛Ho+a;vXE0fx=3 >]l\ [{-s2u!B:?O4e#J` qVzQYHAz:&ѯG(.sN=Tk6&`yPаM3|X=!HfauUKcDU6$MU I1&6@{ Sl"G: f ΖpĩH)R;p,~3P#IQ0MU *U kD-EUv⧤G2%%1Qn> Yg{j]|j\ta_ZͯɆzWeev hb*6D^o#}U(Y4یd\33K1fZw #JfTW򉽑drU/(b#'*ѬZH=,J!:\]ZyV$]WcʫQhh(Α'ͷdN2ӭswHM+KǮۥrnV]YnIZŝ Û߃.2jvXlyAg7ٗJ(1V 4I+Ŷ|KvhC=v)c`5mHJvdLrZMMsK$m4gW[1njVfǝΦW0xK#cQkYY Ѻẁc+ SѤKLjhцa~^?d}f]fuTaFe벲Pzivk+^]}7ilr(;](M)q{:4Q[E,墕#)~Q[ jk[UCT,Jjc~Ecyc4f k=B[PD!1_~mm+)z1bn L6( dNK~3?$8l (yQD;:x1x57trBG?j,pذRkVoDga[{ߒVc|(9پB=r l5uW3Ftl3L.DR\QDQ`i7]ڈXBr8izm|v?%ϯǨ]"j%qD6~XJ%8wfA¬>ۄҎGr}ruǠ=6qioKK,f7d2B:RKuS̆pfmȄ2˻-fWp <4)f>W89$ zMwiDK ^пךO2 Ow@ܮr.l<|fןt1%,6 &DN\MT7)x; {Xcz(^iknYمx5u~[y(4&f{ǝDo*Dى`cEb ΰT)9lsAfĕgS飩V.LSKhթC_GB1cF k FzЊTw tR"Ѻ$3V4&&+7wZo?L8|)"Uu҂=^t3grݤbn drp @ItQ 嗷x6mY.Rlj^_$}^&#^R鱔nj2=SX;J-ms?RUl%irG 8l-r VZPf)lĜ3z~ OM߀t@A&, S@ ʶjFk2mN Ogۑ7#{o¡ܽeQfDO ޝFa*QG` s4&Qǎ~C`Ȣ3a5ږO{]/1a-][ox T[?&Bç6a+I}lIrр<DFkRXdp< `" !gw}zvS`pGkM ߉}9Yb1/[|U#_@;\^\+lwNj؀"v3݈1W Sj#X(!pr'2=c(]Ldri2+4jV=-xҌi~5jN^m2~ZMlj.>߰ ݺrwTm ( $KJ*ݮp!:X?K'ef~lvit`C_gHf:T^(-ܕpi^$%<4/>sdw}fR9^NR*'4zz6 Wy:ip<~w y‰[]1ghE>!c}@+xXho瓓ͰZjHhYj} 4ȨDL$^/0w?z:H,HN 'YGOz*9ǛM{51Xj6x 2!]7}[<DbAn F`~߰;n 塈#=ʶ)kڛV-@6譵Y6$&6Ӭ_L1&hKu<ȗ#]kϜ-'}c. a !n}% 1)%B(#ISL(S#Ky?6,h@[ +y ݑOzY 7$qZwv#:2TXu4">v"5Z/q1*pb[jMgҊAJ܌fT<ic.P:RLP5}iy?Ur1DD$+e"zXڈ>pϏh'}#r\CMC讑r쯮?N ~&#s@v, k](z690_&xQQhTx;\d 4 8n_Yel,!y{q91}=ZOr(Ɛ𻔘-YW>Gv0V;h-c"56(7(8v$?b My3@2\ pQjR#E͎>|<],JKyv^~XP y':/f'. j"oFW8. eQYr"s>鞣dVj.f|c!PnfίY61"Z Կ1s3ՠqq1s+KrECS ̃,_X}KM[@! {B}`?R|WB̨'{eh.&:!%GרZ E.4__I3& A2+y\+cctdH fi;h`^ds4M$PGU}zEkYWUhtSSoCS>9ӥ$Hfrhtv^9@H[H 9lyP'+vDaX쵓އ?樳%A~z,#x^h^J#NpbK;#d?^ [a?T1RQ<^v <"{k8#`g2%3ŏk”eM5@S}#+؀$rcN%x=(>ZbgWO3p[%带>`7`ԔT3ip5?ftbK!2h=6ǩp(W鳯 eV&&q=s B};Rcg A$'B7wsˢBJc>Yi'(PJʚ_'" A6[3ƺ>l 8q1jYkA/ I|OfEiu=Oz CPX^B LE`Ǥ'yFkd#/ 2 k\6%} Ukq Z|I72 Sg:ǥFkhKDR|rgU=x@%X֥ZصUJIN_ YDl}ѹ]0(;BD[}’&#`p.nƪ3|vTsFU免l,{ڞhn闂aQ.:8~0Y߉ݦ̐6X:_dE2chNsr+%xw)cYt$)+I;~6# Kd]%DDu,b,. [9)Td̀A3_Rjn %>gP fj1:㤧=AͿ4jI[O{ɿBc<%& 4aX{NT(=J"@b\xo:վ'1bCqӹv/yF"YVSAmΒgINRsو|5s*:(5Ts'km UՑxu(d~8vjsp+1JI!K(iCrA|8|~CWGP%K"l%TZA>6 :޶!]Mp]13! ttR6 d~\є j0Gfbcuqh/|2 9g}{X$6[y31Ls7ԁ؁__gg}g#]bh?NFA"a"k?g= PPm9aro(Jʗ-9މj tr 2(ᑴdmSf0Sr{2Pħ?mMc8]>LgtDs_H5(F( اeE| Kz2͡R:cd1v5+cY<\޻nyw˔Ayb\_ ;n4^ GZ 3YP7J0ʚ)n:P"rΓ 8եzN}d%Δ[مDP'b`r߷=idI}OS8/)zb~qL^j-2*RfTw$~bJ".(Ť50}hHvP+A6=m9y?kKm~Z. 9.r7$g<(R(ߴHЗf.H 1W4ߦ那-!Qt& Bl|x.!.GVsu PȁpZ՟QەT9 T=TNr@57ALd$uAי<%!M~'Im2>῾ $&^P&#B7@5#o՝X$&Rw4{рn{(S-P}֞AA,g-DpEm1:EN Vߧmgyk Q::Pi x"Ԕ>!>tZi8#fH<@v#+ XMa s*i.hg`1R6 pػtdd4SܫXqXCOBHKaj(`_ʖ}͘t-NaX<" Vf!0 XAon٣;>L+ѲgahBqiA<KQĬы\oC*lUVڋdęY0C|5GxAr_sW ~T@Ϸ˪a `V.NzhA;zX|a@q6Cb?NQ޶-9.,I{H"!~sSʺrz0@B+P-~F?Fz0t(`Dм7 gʸ2 HJW Jn(F$i6+cS?09ʿ9`o,iI+?u]FNchq+ $fvUNI$>QB1禇/l+myztMoKa.G|IOeu)o/Q :Uˠf"pYlyN3CkA0͔{Nqj^`KkgQw</Z;Q3jHGT [w֙}˼+/v܈(7:QmS" %e0/8g٫r:O6UՄQ ~}ۿCVHA-zQ N|w9n2D_B[ZtJrv#gt.#fECL)ԎIC1O3}`!ΉSXTj@B Zw`!Гՙ< 8__n+T+FX{oܭ_6^ܟF1[%+ |r`Ѕg[:B! j/.6kPrVYQ~Q^ +ym,yzjvKZ/MפQqE>̾>C _R%4:JfA53w@yYG'Njȵ%\X q:ṫwGSH}(K[~kN-1va08LvIU4WgQE*x)ۻ--uдV qڈZ&~ʃ1|w^r : %A{)?ɪ|O&eyñf lMC`i azGЂCG̳k41?=$J =#rjJv~q5U`{́]}R*Hzhul-RX{U#{Q1?k%(~O ^ۑއr0PJ3ጔn;fW~C$ :5Ky@>v HAG[ < X!x<}̚/2+hR 3YUsNu崡[j#@> cՃAGT#{ߎRKX8XJ- gYJxmhW*֋R]C+5poÔ-&/9g>1Ab7ltTa B,V4,qAi;yFr!j,1uol (ӳU57f RKY("āv-svZ?e.soj 4;v SLfncT۩{K(bt0ȑzNƃP.P*CDFZ9F<]0ꪣ+G [t(K6S(ѐ5 xpKN+g [ZIX$?K Mػj/eq,.mPlj%3L,(:K=y2cK_pItל < &BRBB3'u hI>Mv(nDךX=t : \iW_t@`G?f-YGoŝ {{I j\;"O̭_[Y ĵoéR<P>4(qݴaRL^G1!W¾WA_%T'ecQ&a'OڙtI\GRj+){ILK=Ka+ 5]q1vrI`с26I% ^k2WTUy&RQw g`[-oW 2F)0ޟ=Z-BZK*)C n.M.6_!mkzhq1HACp x|o]O;ت%!s6P>wsIĶƄfkɐ1ae5ED0\m ~B.VS m pѾ*)~ ^·ʽK#U9uU)mYMMH]ϖA:󿗔lpťc'ca}WU`-_f5>c _ꏩ)N?N"M;1*uVfbw=c:P遐7uC{O7:w4"xEJò@O@ab1#̬qњ;c%p?u^cl8F,ԃ6,r]Ѵ̑Ex}CQ&k2 ~ 5;Jx'sϕa[bL"!}Z f-ݩ{3Uk ֊!J- L`}HhV&mH R'ϵOc_u)6sϯ^ n élFkVMmf!="SMbZ'Q65?΍E`~K;8<{LͶ#al _z|љ . AW>oL0$Df^ICM &WOv1L^hZs/F #RLѵ iΣo[5nz{v;vwIJCצJ?W,0T,M+ֻ\lP% *''*N*/Rjb!bn363y<;q@.ܹ`Jo4ǀY"'vHq֋kmw3Rp?jp>N3Q~xHx+bGP)3^tܢw(þMjk * A_1}w.nz<;0ia=8cٵ:u| KU'tT2NOpN9hjˆvAB52@{P0FkKFf:B|cQN,o\8 6Ȕ2 Awmc_q_1Aea=*=F=#v :BYQswI'aCu.05Lg-QT(es}+Jʡpyz$H2' A)>mSR'ֿPLNFq`ޑJ;锫`-ӥ|njA-Dk&<6GoCviNL 78yu:q_EP z/:1CpEO۽SBW:Ys{f~u^FvFa!9 {WBiW'$Ne09HK11u6`#6bDms͚=c' 𼐤LED.9r9gTKg`ՙKW 5I^7p]?! ]ޠ:aL ND_d /N&&!IU!XEH)gY&xoSOw BŶGiGGs'vl9|FfU*hnc =RLƕх>_TV2-Ò;zJ7B%<܈4wie . 9,Tծ'̂4ASskvfX֤| ut/9{ْŭ $\ yfcl 3T37yސ5 <$vÐb6WUPwrŁ[ZMB"h(XnqΕLFMç9dtIjEf ҅|Th쁆e[8&͖HTtt"( ES*;B\<]-~y꿗ڦvsבzn `Ѐ# ޵<|& ^JtlK/5sK{R6pltLԫ9Q Pw.JӇWGo}@פ0/<6ZC@WLсEBA0S-Q?fUJ )sk SE³qjT!~:tU+#@gpӤ x8qR l)<ȋ] -;$u`h_N)^qE-u2|?qsPE,͕ǗWO[k|#56&h"pB\y{PWN4%bޓmd8~ -_ ?KҠZkY4 X1!9/: S,X4'~} d9y_F(4=j^,Kب ~ns%!ù5m!OU_*-|s0#'-B?F^Rxf*&QY- l gIVK`ֱ1vsrfy1aaJoL0PsYbġ9t;@9ա@'Rg} kj>e/"-xF3 c U8v;%s)n,S#0&d/\Em:/ɏLx5 F79n)=6,Q!s }@CI?$j/mJ޾IÑvX:f똜Ǵ@>wb|΍@8"R؈/f11(V񾺎wfyRT-c2ebRqct3 w4Q9bzT9~ODc`fKˮ Xb( 6M!Q_lNfŁ;" IGjz XA/Ex,@఼0qyRʧ(}} k\bX؎9ˑm-L>wa\yqFmw6gbjr`5c ,lj!Qhz>NG ~dt^zrn)Q N>7i̹tɸʣxM>^"R j<) ywimʦt;#6᳦֗,J.$BH ܩ4q^2>w9#+bf٨s[T^*ޘ$7c:C O Y1X/!ubڟBUg`iIr8'8mzZ&##g,K}XadBV JNl#cz>al=a*_#P9{S<4K U/͐ bX1 4l]uݚoD%Eoļ߶x@M!w&(&d jSN U$:xQbuNoIE/;Dv70aχ Ik"ʶ" /)ߑXMc A Q1eFY8jM$X<_9WyXY`]“R>n_1n*͔WIrp̮j txrTg=Gǡv|l܎s VZ.]h$SO4Ȱi oe}5fIO8@w 6&8mHYLBz0?NOC< b@O=9|{9v[yĀp/d,'o^}ŵzgQ[њ,=sա(y:εGw2D YL[g<>vkJjXA9B/~P-Th@⾞/fR*r|ii"HZ!l\~)#e"au>,&InbSQP[(P5 )mYbS:֍ϡB֓,+4x^t-JGJ}H ^^뤑x~ Bv~*$&Qӝ6]uь`1o.!F7>>s%PKkڕ eI'Jw腑mض[{Y5 Uul'մqC)k5S&wk<4 ;GYFTA`udE(OV-Y@f,e1yow:lsv*]үk]lU ~ҕs/j!\+˂ߧNp㐯E҆3Mn񞗥Rr#c] E=DMAp4uVJHR*U=ď֥YPP0xj(g􈜋I;(UOv$Y&jπ A@e;m)́VoI!y"\Mu6GKE2b'09$(MfJGJn|\챇ή ]qE lw6(gsFU< Z얰N"X$(] AU%[k~j[-;[ҿJǤ/U' ~h=V `^U]@ NMk\FI9K=80%&O!̚N"zޜ"G:XlڵL; 8( !#:`H ʅe=h{9EpD-Y:MABC=6 i!\^9u o۔En|2;{1rfC$Ҋ_Cw'` b\W H?Ӕ"<Z 0qa>m=Uиlo@&P g GlIɞfDI^0AJMOV~ZwJٓ3I|1T\z(&VCpG5i6<:\;~գx`#Oh{؀x[̑z߻yo%kBS¯j^pb5lxd5 d{ӿ( !Qz;iG#" #{AFvj,`ᾫ#̡|FhkrKvf.P悫 V++hbAmH:z~H~64uk4&"wnS4{h8hEWI;<}h>i0 l!0u12P9umvd(f ˠj&um 4!43눷gP A8ʺ!Y[r׆KCzݴJ d)!h(dgr/I0EAU,>s8x=(w\ۂz[qkHl0ߌN ˅1 MPЀM׋Y?Νaq,#6!4\Oxx!Oh/v%۾=ĕVDjA#N]ᢕP]U/l6TyL1Ľ6lbw¾? [VJ*MJS9-k`X wh `LyZ~ X^ ?P17IS=;Q7@葯NTKm6Tr%݉"LnX½ɿuU}'!e> DUs0 |i.L[tPj~1q GWf*S( =;Dmce+:AGk8?ݬYDgNb?&I46Ȧz/x{D?25Wuz!魶Yqh/0Yw!c&Iiƍ@-+WYc ^tWw,dK }#!%DvRe; {| |b6$^"3angzܰͱ#L^ڋ°B, @%J-lj:ȃ@Mu.ׇ yG,|6BA:ZaJդ%2ݴ-GX40 Ȧ i4mlP>[ 2?W: η ׷ ޵+!t 'D/;>Na¹]#Dn,^2>Ɩ̃Aݻ?g8bM.IZ#͇"i6|,4k@PR+ 9 $ͣr2C.?wY!جbF#])̳KYxqG+}Lh_ .V0βhB>b\H5mpάԗTݩcфIu~H9==(T%,Ty/8{ @.XegqkmJ% I hDf~͸ 'a:=#P^U/:_SyoL~K/V[$aJ_rtC:WoX2Hg掄!> A-D IV ̋ &忱0t3f&E4Q4Pk&T;4Gc2VX :Z۔ ($F5њ<2P_bbO3чo"jk56MՖ?AMb4}Yӥ|w|GjQ(-3)Z_1Z0j<<41T9pM8CE9rqGݑrIQqT^0U0Οe1q&vj{vO[?#v8(f်uK+2u ڒË,F.؄_í4,`[̥Š.t7zWx;a4穀?Kvl5szLxDv,(P\sB/M xy> 4( v,:Ք0S+4eL~TFj}U~8ug# 4&>8SCEz/}+I@gQ'kNK+vqN+lZhQe5U1q8Ju;` 7PEšԦjH-BH\hN#쟃Dдkh rp)% LX4J 9K^Y~fY+D^Fq\@^3iZ)T)b9IrO{''RtIiT?~0-':{ȼN;tѮ# {B3H#bAK*Rʟ5tx'|İ=t qהJ )i66]_l;3~A'[AQB=Vz1#ft|fR:ї@[%h4eE֒ EysI9]o4ޕѫ[/OwJ3E@9SOe \f^ZuàY.Cv-*0sO TCꑭؚAP8CKoqVwR@oj  ͯ#[fo#ھSgU+q&GԷWM΃iNxz՞BSHf!Q˧:.b;|,sw\oKώ騊w}=mrA-Y?T'2M_"~RZYQc.ﵼGk7 뱙m|c>K>̫.vB-(߀0B+e(o&jճ\ sY;l ڴ& bTϘ&i`~@EWВ O(3_I3*ȥ|d[caDdC7M[$>|ĝCj}/pT ɻE 5G_oZ# X xYד)7qS`IW;m㣉?.ut ~:=nGKS9^ ?,KOS.A;m } 0} +XSJS(d ,occ|UF293[^q9}^跷zՖl\`|/ X m ,X 7w͢nUH"!eI`rxqvN ƻ k?3Nԫ3W`~%MUUO`%ɨo:4/D?꽻~$tCr\!0HixyYP΅O٧df;U/`R 'ƭ\h]Qʘǩ,鮆` ZCvSl/!cW ^bȖzM> mZ(G(09 'ޱY,qMP!E;NO0Њzqjnb†d%VW4_{IiQqkϵ}8- $+Q8â'1]~5צ;}[h!hMp Koҽz'NDPvT$a_8ߥ[H Yo3 \27u( -'Iͤt`P2>FBevF+gZ׊Ïfz貧imoUvP4^v&AsTHvBKY؟}g?[5/ٍMX,F)Zra^h.R{hU_i=372I: >ZsFHf]]xÝ#'u/p-dH09LNxIG xaiM#o4b}X- D㴇~w mJzƽAC k; f/HHeZ%8‹u6OQ5Ǔ®eaLuľKԮǥ:3-`bON1ePMˈ]pz#="Is7( K\$1ա Rs"69mD P7ŕ*3]Ul|j-%|^ Q|u4|x(@}}كV_@&?9R(1 7KMOq/ v7kCF8rᤡx9C | 7=C!-e:]tZ(}י$!^ xBmI,!"ϑuZ(s hH$pAOsA#,Z.b.%`G4gs,JưCQN63mJSNBoA|Nt0BM}cИJ:=cccWm'0u'dI9M>D9lV4QkKm\u] p' &A@>B6Ý@-)=P48P657i67PN#NdG.*3\FשΨvDbXX;j5 BSctOzH_68@2Tt)A$KN@>#oV˫*%|T%,Dʏ>jv1e|Jg 5QzU}ںL3)ùM/^jT˜ޜa.5#6*Տ= `e֣quQlh mefLm"sM{poa>_M:xj "3٢tDKn3#8#0*-aDoe 5ԠhYJgV,x\XoDqΖ4$X̸BcyAGlf*i D԰$ JSg+h SZ[. 䱉 |t,yka߿aX!=.xMߊa27̄dͼ\o@8琼y}ok !d(VfҞ#$ڱhvE0B/_#{'dA+?rsxS-v5}5?Ao)ok<=7pwVO^fXo-%+QЖыwVߌ2l3UrF6 .p+ǡ:!g&U L(":lU,وn /Dzc/YMhֺ%#lߡwXj}\ǝl u@9Kz*` \0a- )-"+|FmA4fx=JÐAa⢵nI3|ڱɮ[-nORUql`ځ\(eS8BBn 9g&3U*\DŽ1[|ׯFSdx3фGjV eh~7_cXZ2 ͺTRU,h^. a(ޓ>2U4G0p߬TE@5y  넖2`B4W̠]1Mv \ADatX'W\Tjܲ %2x3)˪鿳0Ntz÷38 RtgTdw&{ETڐ*jTe@ԓ?`u+ΫȚ2Ry}="Kۊ~|]BO:+aS9=MXw^i7*de r󘤭,$T^&,U {HHD zi|7΋xb%8E"p`v˼үI{GXc-!Ϡcx{5IOm'\2#0Ojw(K-"C DSthQI/.ljf*aQ"zk;uv[ k)5~ 5?GD*=kmC숖bO=%c5I`Q#K銎 s҄@Fl=T7_*4Ie;yχmߕv,O9"QCixhL±rU&W8 ɨk, A40UR!TljNX5}l3Jxih}$݈W 7bBw&긏{ZfPpǡZMd Zeŗp m _0Z'TqMұ$lAd<4A^t?8|313 JC8 }Rk{+@ c]K_^ޒQ2jق'nj嬇heٱ"0A(,:8U-eߊjƋ&*DB!Pu]_Ra>S%l?:o<;eL*6kF ni56"R\o30hc G=<\aun()|5]4= z :K1? p#Z y/?mrpsbV YƓ uՍoDc}Ɖz뎐xKep~l*z 2XU9I3!2O_BrcېC*[Xd-w<@5{<+ # m(.J4<زhu(>?X`&Cɜt1>zPsA%Sn pωuy?kHG\b;i &-<}xcp j)b=j;%\ zJ?>!eLC+gߔhvexnCGt^H {8Ѽ X a^$04jEPGrӨD\F$/*EL/P#_YOpxf\-/KQ&Hy X[\g۽~4R⭹R0'dSj Rv"_G7VaYtj-zꫯ+-9}Kݘ=!y+[&OE NM;>|i FdeOӗ r`c]<%A*wx D"J:ZS&2P_6'0mZTr3":5 D/):RÍ0 {" c<"Qb<%[g*` vՁ4[Z3*&qSb~¶P)ٛ7"͛GT!+Bw~V_ mQ8 ?h"W[KE WJS " (}9OKFrZusWZ}|CԚ$!píj,_.4#R=`1@t,g%$(Ar@ʧmW3>úȁkA̦^}Ft쟉lVdKۡ-ҝ '5I}뤖cvMFڜh2L"`.#ClCfmkFJ CQ'D5G ʱ:9rwԪ5@ZkAM% ~t-w31CdMLb[6|O }Ce#qlmcsr۰4(glRJJ\ϐRTP6sim&6lX6Ւ"YbE+׍nIkA O2˶:j99-[NwPR4P{!M/ǡ`0]=϶yɵhqDeڟ>,[P/dߊ2͆w F zh\R!UE.c;#M-jOb.S,\Loku0|t ;ә2ϧ][tTj9xP'|kdɓ&a\S\ꈅ>kف&%r B.D] W3s1BԦtzsB6R 5pC|~Xޜ6}#'< |}~~/yJ&X.lS⧞~) YS>3ol~$e&PoՎarٺGqVa;$OL_0rJnz̉ 8EȠ*~U{tJ{b9 9>ߺ(KK"@xڽƊo|JFDبo´HR5(]z+:6SQG8-Px,KW2tOrpqt"_ga׸vySI,BsɚHhŤo ms'4ܚEUZ,I˂Q!3]7c12W1sikIŝΈd;Ɗ&jcNڈ4ܔC|P*m9> Ӊ+߂ Zҋ/Q,n;L}ZZÇuH%0PCvL (3]J_tgZ+C%uN}&]$xhu6#1Lfk.D,q^/ǤmcGjY[2ulG.X{2eGhGA"R 4`` J ۯTuH{(_ISS+-e;Lj.06)C;GG'RAXTl:HSy+&hoUcDj⁸9=KAnzgn99atCvGtTA?ƠO)'^q)s!gLhҨc}: .p,0س.R]Yro~B](QlBPްu։|}-"U[BQ&aFsJ.\4wz){UHdW撊dRH3i:4u%j$ Bui.F  ^#?9f>.=#=޵>`-fFemyEM릁PTL]jæy @hj {د=Addyp^AZvCs1>K>}&#u_£߁lc7MI*G8_KJMi%O{x0w0t޾S#$f*fBH#-RN!$/WKhˤyj'ʗЖK`j%c Ӆ*Fw$vI /"Mz*`/΄Gv&;`D:X@ɸbVӜҗ`ouT 9(XU?. f/M)J/ZD#a_b\Ȳ͆#YA!}ԏsAxѩbeum3>HA1$vjPUL/־ߠ|%1 3s]OIV/0~줡+ȩΩZ;,|FݧC FO6f]DZ%>xJ\WQA?*PKajvaD`EO%Y0!}Z,z{i2  G'Hҙ{V4d Џ9POo?qx“kDl%[H9&T~g8Q폿#e6zNUVr%tU'ÿplR yWn辁ա!8@zk%M$:,&甲by܌tUী-M_8׀$  ?*€v41tl1yBeB M~/^q]@€iͰ*J<HV Ql#楤M]Wb׏!d#I=J%I}]ԍY: f1\S>Ham!^^f7L. Ɨ95meaq? -_>7ahddA iFFxj +߫իTKi6D?b4+S`8>0W'1ς' FGK_5JE÷DlpPVe eSL&A K(=(]m ")i#:J)?wpYԃPΉ7Dv$@߼KkLWpyC&( <"\_ =Fƕᱍ5l Z#/V㬶,%xgӛg!.生K12QFPe 9OR{#\:B(F?"%ňd54n$uFۂ#V#d H^>^^!&|1^{ ReXY6Qۂ-ZD(v2~S<{MWR)U9"vG&E6C _tv4%9\}(]\qhZ|g>' ȗdlOxm*6ISpyDؘq0:z1&J;4g&oS.UUm^TAe`BZjݖDKx#\lҏf/=6I կ,$ L{$k_qld:M4Z@v^K̶_VJҾ9t2{*2ߥq*3?|^xI:,chJr /Un1>~ P>zxf㮑[8g<>̢Cb,},˺e u/!= HkzưFJ'H_ 5 b@k.@q$3 &LmΛ~2u'1JЮ9:_̆GZU5[ܟ*9a[O qkBoS'|0t \N<_jd+`S^B>t Jc!݇HV&3k>;/[Av=D%~yz !ǒY0j:%*y+Ǿ4+#g@%xed-m BJ_}.Hdg+g m"[%x9 1k}]< < LҞk˧`i慽ۏ->9q3vTeHklIXx8 \5:̴E>2^ka'vG45(@yo?em9SWZ'4?Pk@ۂ#w ӱVש 8hܠֈDgĒM4]X z.F-<͌fslkY.pro:LnKu(ٴh8]뭃56FKqǣ5OI\Ś`d@@Gh2:x^QLޗH,<{p4*64ug2v,V/YԷ65Xlv F)ciyCƉC$: ں7yB|B~܅rTKTPPFU2']^̨ϩ#cMs}c<@jt${ h ^>֌0Q[*;~Mt4nL^[z+(S^r~oiPui7*E R~zi@~/FcىEl$Zv4{7 u4^F; cfѮz_ Q TЕ$9qY$.B,m8I$t3;D.,lZӢ Njm쇼p|vc_j_/XalzٸY|*chY2Eo46ayg]NqXf+D;MC Y>q`X`IQs!k (GQ)j 5~d?>f͋(߯ &Fb4N0`}6lE 6ĩLwvMIÓy)nC92RwYPqb'>NKrߣ]S͊V i 5@#zԇH4aE6D63h{:' ty)-wWb#ܟ@ c' M_jC~d4fŃ؋ \Xj8Հ+MaߜD;ߝ)pmҧ儎/0 ~懍М||̫1ca_VHDziE`+5IW5u*V7rg:H^~`M=dudkdե?z.XFOq(2{-AQkeնbZjw k!BC l^ekz}\ Ŏ40ՖykWtòP11o%gmڼptje`$KVT:-6eJ^͹8ُ )sxSᖋvT6h` 64Z*K/(HyX41hf)ۃA6np Xj jUB_hްcuow@:#0 &:ʂ]PTukkxxt%2X|_QAU}L*tk# YF?ľ7 ےC 5T4?UKR|iX}Bw}ZIE '^\Aʖ-ZiGi?a$}p5E_WW9{Ac8ޒwy7;q*CJ˹B׸\ Ae'(\H;}-#: Wm",44w\"zuD66&rҗ Am||#[äYL%ww "SѭRQ,a:zȐ -+UcII<UAvb 8߶y&ՠ1[q7$MSLY?K;RcҞ R|+-:GgD͡ZfX1t.dz) &mސ;*y AO5c@HڱފWE Z뿎JCh9<,g8pJ4I=+zxl/ڋkKwkJؘa4RGzIp&aIhQ$ED f8lS`ᯞVU\Xb7ߣ``׿`ؐ?ZfYfLMn5iqXZ ( MVvEJCVG?>[}nrl6ox?VHe1w4;rtLc㹢Ew۔\̦?yU\y^.X9T Ib2(K%Ve%ԝEڨqYZ3lUѵ{ {(zWq3{ 4 fĎ| Ǐᓡ_4zT7C-k|C`7A4B1zsHXů0fC$J#Yag+JE~tɏ1;Q|LU= R߉~ajSN[#pF9'Vg2a%á%Rе6?6m}bŚP1+\E}S |"3%b:wA8G_c{_mZ4'*'<"1n5pmҭB lކꡆ)Nb&-\LSVa`آHr`UIH ;'9G|;"o*V;7 _T\9qqihYRqNWP Z]d #a |iYM>RǏ pEYCyu|]wDw nfAɰϴet)D2%ս8[l-cT= YL[> "_Cp,іYQ6+(UCcan?*ނVc^0.l*Q9`4׃jC(-ٓ ~:Gs "]gSMqټe=| {}㊾'ʄr4<.!a CR+t_p;mg ]^MޙWeZwB#~5{mXq(5gE@|8h)&*)pqj` qn n! Bwт̏CKZ"^9nV+( l g%0lNTR[!:pD|qv೰NJtRBDo#2~+;J4V[@4d-~H.$2.BAr ;rlN|iR%KwHlN+!d ńvwɕ !2TF$~$dݢ NHjy4WhmVnB;CUs=K'B7ޥRa^yzwK,~1&ʖFlZ }t3V_v, 7[ӳ:!J%Io6ly졞5'nEyN(%#qRm4f5k>?6oK@zZ> G! Z=ы[{GPyqatU,P[Ywwhlz^$}o_zmʥ"U> QDWMaDzL"Dn*^7sW2T5ѣoɀ&ko.m9pl2 b%!cr'7D[XmB+&(TK+e71iCa>G?aQ~p}Χ>䊘Nq^FMՖd\ttLjlGcf=XGއɂ_K'۵8}˷MQ0- ¿ 2z`bS體F >SV~Xxc1(2[IpsM 9gY(YLf W k!Ǧf6˅AZҐ5n / {Z QgƔpEQFj)wϻ`DWg~%J**`ghdN.0V%qݞWo?垷=!W YZ