python3-openvswitch2.11-2.11.3-90.el8 >  H `@` !F^(*vHbtj̄dB8]"D'`z 7kCWkDZBgVMKrxnC0m/o/Ͽ`nRz!sкY.ӪĞ AU֭%?ǿ 5A3ȼUwhhXa¢SVT"aWgS*׫A-,["q=zաgRGVǭ8գ8Tsݸ iy]x\۝?9a45294459bd67dd99ba5eac730cfe43bf5f1f2fb8c06d79c7015fe6cb03211748ecb369eab59d17db549aca848f985804c6679f`@` !F^(*vZmN!c0;ӣ-t!9S}:"]lv[@Uֆ[ZɁxս诒`R~'h28dQO@+oV.bppP!pcofm\PGjt,n]HőV/E)Z(p]{]Q:x,;AΖ۳1"k?4M$(;RQsڸ4Dk|LRP;>p??d! ( Ftx $||  | | | "| #|%t|'|*L*t|,d,-$.(/&8/0:94::sy:BG|H|I|XpYZ[\|]|^]bLdxe}flt|u|v|wh|xX|yHx|ĂCpython3-openvswitch2.112.11.390.el8Open vSwitch python3 bindingsPython bindings for the Open vSwitch database`ehaarch64-02.rdu2.centos.orgCentOSCentOSASL 2.0CBS System Environment/Daemons daemon/database/utilitieshttp://www.openvswitch.org/linuxaarch64X<&ss8~8..rr<= ` l`2@____ǁ_@__ _t@_P_|\@_a@_G@_;_:q@_3_2@_/@_/@__A@__ L_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@_X@^^V@^>@^@^@^@^h^g@^U @^ P@^ P@^ P@^^^@^@^g@^@^r^@^@]]B]@]@]@]N@]]ʞ])]c@]c@](]{]nU]e@]Ik]6]-@]-@](v@]$]G@] ]:]:\P\O\,@\\@\@\@\@\y\w@\R@\M@\ - 2.11.3-90Open vSwitch CI - 2.11.3-89Michael Santana - 2.11.3-88Open vSwitch CI - 2.11.3-87Open vSwitch CI - 2.11.3-86Open vSwitch CI - 2.11.3-85Open vSwitch CI - 2.11.3-84Timothy Redaelli - 2.11.3-83Open vSwitch CI - 2.11.3-82Open vSwitch CI - 2.11.3-81Open vSwitch CI - 2.11.3-80Open vSwitch CI - 2.11.3-79Open vSwitch CI - 2.11.3-78Open vSwitch CI - 2.11.3-77Open vSwitch CI - 2.11.3-76Open vSwitch CI - 2.11.3-75Open vSwitch CI - 2.11.3-74Timothy Redaelli - 2.11.3-73Open vSwitch CI - 2.11.3-72Open vSwitch CI - 2.11.3-71Open vSwitch CI - 2.11.3-70Open vSwitch CI - 2.11.3-69Open vSwitch CI - 2.11.3-68Open vSwitch CI - 2.11.3-67Flavio Leitner - 2.11.3-66Open vSwitch CI - 2.11.3-65Open vSwitch CI - 2.11.3-64Open vSwitch CI - 2.11.3-63Flavio Leitner - 2.11.3-62Flavio Leitner - 2.11.3-61Flavio Leitner - 2.11.3-60Flavio Leitner - 2.11.3-59Flavio Leitner - 2.11.3-58Flavio Leitner - 2.11.3-57Timothy Redaelli - 2.11.3-56Timothy Redaelli - 2.11.3-55Timothy Redaelli - 2.11.3-54Timothy Redaelli - 2.11.3-53Timothy Redaelli - 2.11.3-52Timothy Redaelli - 2.11.3-51Timothy Redaelli - 2.11.3-50Timothy Redaelli - 2.11.3-49Timothy Redaelli - 2.11.3-48Timothy Redaelli - 2.11.3-47Timothy Redaelli - 2.11.3-46Timothy Redaelli - 2.11.3-45Timothy Redaelli - 2.11.3-44Timothy Redaelli - 2.11.3-43Timothy Redaelli - 2.11.3-42Timothy Redaelli - 2.11.3-41Timothy Redaelli - 2.11.3-40Timothy Redaelli - 2.11.3-39Timothy Redaelli - 2.11.3-38Timothy Redaelli - 2.11.3-37Timothy Redaelli - 2.11.3-36Timothy Redaelli - 2.11.3-35Timothy Redaelli - 2.11.3-34Timothy Redaelli - 2.11.3-33Timothy Redaelli - 2.11.3-32Timothy Redaelli - 2.11.3-31Timothy Redaelli - 2.11.3-30Timothy Redaelli - 2.11.3-29Timothy Redaelli - 2.11.3-28Timothy Redaelli - 2.11.3-27Timothy Redaelli - 2.11.3-26Timothy Redaelli - 2.11.3-25Timothy Redaelli - 2.11.3-24Timothy Redaelli - 2.11.3-23Timothy Redaelli - 2.11.3-22Timothy Redaelli - 2.11.3-21Timothy Redaelli - 2.11.3-20Timothy Redaelli - 2.11.3-19Timothy Redaelli - 2.11.3-18Timothy Redaelli - 2.11.3-17Timothy Redaelli - 2.11.3-16Timothy Redaelli - 2.11.3-15Timothy Redaelli - 2.11.3-14Timothy Redaelli - 2.11.3-13Timothy Redaelli - 2.11.3-12Timothy Redaelli - 2.11.3-11Timothy Redaelli - 2.11.3-10Timothy Redaelli - 2.11.3-9Timothy Redaelli - 2.11.3-8Timothy Redaelli - 2.11.3-7Timothy Redaelli - 2.11.3-6Timothy Redaelli - 2.11.3-5Timothy Redaelli - 2.11.3-4Timothy Redaelli - 2.11.3-3Timothy Redaelli - 2.11.3-2Timothy Redaelli - 2.11.3-1Timothy Redaelli - 2.11.0-56.20200327gita4efc59Aaron Conole - 2.11.0-55.20200327gita4efc59Maxime Coquelin - 2.11.0-54.20200327gita4efc59Aaron Conole - 2.11.0-53.20200327gita4efc59Timothy Redaelli - 2.11.0-52.20200327gita4efc59Timothy Redaelli - 2.11.0-51.20200327gita4efc59Timothy Redaelli - 2.11.0-50Timothy Redaelli - 2.11.0-49Maxime Coquelin - 2.11.0-48Timothy Redaelli - 2.11.0-47Timothy Redaelli - 2.11.0-46Timothy Redaelli - 2.11.0-45Timothy Redaelli - 2.11.0-44Timothy Redaelli - 2.11.0-43Eelco Chaudron - 2.11.0-42Kevin Traynor - 2.11.0-41Adrián Moreno - 2.11.0-40Numan Siddique - 2.11.0-39David Marchand - 2.11.0-38Eelco Chaudron - 2.11.0-37Eelco Chaudron - 2.11.0-36Timothy Redaelli - 2.11.0-35Timothy Redaelli - 2.11.0-34Aaron Conole - 2.11.0-33Aaron Conole - 2.11.0-32Aaron Conole - 2.11.0-31Timothy Redaelli - 2.11.0-30Lorenzo Bianconi - 2.11.0-29David Marchand - 2.11.0-28Numan Siddique - 2.11.0-27Numan Siddique - 2.11.0-26Dumitru Ceara - 2.11.0-25Aaron Conole - 2.11.0-24Kevin Traynor - 2.11.0-23Flavio Leitner - 2.11.0-22Flavio Leitner - 2.11.0-21David Marchand - 2.11.0-20Numan Siddique - 2.11.0-19Timothy Redaelli - 2.11.0-18Timothy Redaelli - 2.11.0-17Timothy Redaelli - 2.11.0-16David Marchand - 2.11.0-15Timothy Redaelli - 2.11.0-14Timothy Redaelli - 2.11.0-13Maxime Coquelin - 2.11.0-12Flavio Leitner - 2.11.0-11Pablo Cascón - 2.11.0-10Numan Siddique - 2.11.0-9Kevin Traynor - 2.11.0-8David Marchand - 2.11.0-7Timothy Redaelli - 2.11.0-6Flavio Leitner - 2.11.0-5Davide Caratti - 2.11.0-4Timothy Redaelli - 2.11.0-3Timothy Redaelli - 2.11.0-2Timothy Redaelli - 2.11.0-1Open vSwitch Bot - 2.11.0-0.20190129gitd3a10dbOpen vSwitch Bot - 2.11.0-0.20190126gitd4ff5b2Timothy Redaelli - 2.11.0-0.20190114gitadb3f0bLorenzo Bianconi - 2.10.0-42Timothy Redaelli - 2.10.0-41Timothy Redaelli - 2.10.0-40Lorenzo Bianconi - 2.10.0-39Numan Siddique - 2.10.0-38David Marchand - 2.10.0-37Numan Siddique - 2.10.0-36Timothy Redaelli - 2.10.0-35Numan Siddique - 2.10.0-34Eelco Chaudron - 2.10.0-33Timothy Redaelli - 2.10.0-32Timothy Redaelli - 2.10.0-31Lorenzo Bianconi - 2.10.0-30Eelco Chaudron - 2.10.0-29Lorenzo Bianconi - 2.10.0-28Timothy Redaelli - 2.10.0-27Lorenzo Bianconi - 2.10.0-26Timothy Redaelli - 2.10.0-25Timothy Redaelli - 2.10.0-24Kevin Traynor - 2.10.0-23Timothy Redaelli - 2.10.0-22Numan Siddique - 2.10.0-21Timothy Redaelli - 2.10.0-20Timothy Redaelli - 2.10.0-19Timothy Redaelli - 2.10.0-18Numan Siddique - 2.10.0-17Numan Siddique - 2.10.0-16Numan Siddique - 2.10.0-15Numan Siddique - 2.10.0-14Lorenzo Bianconi - 2.10.0-13Matteo Croce - 2.10.0-12Lorenzo Bianconi - 2.10.0-11Timothy Redaelli - 2.10.0-10Matteo Croce - 2.10.0-9Matteo Croce - 2.10.0-8Matteo Croce - 2.10.0-7Kevin Traynor - 2.10.0-6Timothy Redaelli - 2.10.0-5Flavio Leitner - 2.10.0-4Flavio Leitner - 2.10.0-3Timothy Redaelli - 2.10.0-2Flavio Leitner - 2.10-1Flavio Leitner - 2.10-0Open vSwitch Bot - 2.10-0Open vSwitch Bot - 2.10-0Open vSwitch Bot - 2.10-0Flavio Leitner - 2.10-0Flavio Leitner - 2.10-0Open vSwitch Bot - 2.10-0Flavio Leitner - 2.10-0Open vSwitch Bot - 2.10-0Flavio Leitner - 2.10-0Open vSwitch Bot - 2.10-0Flavio Leitner - 2.10-0Open vSwitch Bot - 2.10-0Open vSwitch Bot - 2.10-0Open vSwitch Bot - 2.10-0Open vSwitch Bot - 2.10-0Flavio Leitner - 2.10-0Aaron Conole - 2.9.0-47Timothy Redaelli - 2.9.0-46Timothy Redaelli - 2.9.0-45Timothy Redaelli - 2.9.0-44Timothy Redaelli - 2.9.0-43Timothy Redaelli - 2.9.0-42Timothy Redaelli - 2.9.0-41Timothy Redaelli - 2.9.0-40Timothy Redaelli - 2.9.0-39Maxime Coquelin - 2.9.0-38Timothy Redaelli - 2.9.0-37Timothy Redaelli - 2.9.0-36Lorenzo Bianconi - 2.9.0-35Timothy Redaelli - 2.9.0-34Timothy Redaelli - 2.9.0-33Aaron Conole - 2.9.0-32Timothy Redaelli - 2.9.0-31Timothy Redaelli - 2.9.0-30Timothy Redaelli - 2.9.0-29Kevin Traynor - 2.9.0-28Aaron Conole - 2.9.0-27Aaron Conole - 2.9.0-26Jakub Sitnicki - 2.9.0-25Aaron Conole - 2.9.0-24Timothy Redaelli - 2.9.0-23Timothy Redaelli - 2.9.0-22Timothy Redaelli - 2.9.0-21Timothy Redaelli - 2.9.0-20Kevin Traynor - 2.9.0-19Davide Caratti - 2.9.0-18Timothy Redaelli - 2.9.0-17Timothy Redaelli - 2.9.0-16Timothy Redaelli - 2.9.0-14Timothy Redaelli - 2.9.0-13Flavio Leitner - 2.9.0-12Timothy Redaelli - 2.9.0-11Timothy Redaelli - 2.9.0-10Timothy Redaelli - 2.9.0-9Eric Garver - 2.9.0-8Timothy Redaelli - 2.9.0-7Aaron Conole - 2.9.0-6Matteo Croce - 2.9.0-5Timothy Redaelli - 2.9.0-4Timothy Redaelli - 2.9.0-3Timothy Redaelli - 2.9.0-1Timothy Redaelli - 2.7.3-3.git20180112Timothy Redaelli - 2.7.3-2.git20171010Timothy Redaelli - 2.7.3-1.git20171010Kevin Traynor - 2.7.2-10.git20170914Timothy Redaelli - 2.7.2-9.git20170914Timothy Redaelli - 2.7.2-8.git20170719Aaron Conole - 2.7.2-7.git20170719Aaron Conole - 2.7.2-6.git20170719Aaron Conole - 2.7.2-5.git20170719John W. Linville - 2.7.2-4.git20170719John W. Linville - 2.7.2-3.git20170719John W. Linville - 2.7.2-2.git20170719Timothy Redaelli - 2.7.2-1.git20170719Timothy Redaelli - 2.7.1-1.git20170710Timothy Redaelli - 2.6.1-20.git20161206Lance Richardson - 2.6.1-19.git20161206Timothy Redaelli - 2.6.1-18.git20161206Timothy Redaelli - 2.6.1-17.git20161206Eric Garver - 2.6.1-16.git20161206Kevin Traynor - 2.6.1-15.git20161206Lance Richardson - 2.6.1-14.git20161206Timothy Redaelli - 2.6.1-13.git20161206Aaron Conole - 2.6.1-12.git20161206Lance Richardson - 2.6.1-11.git20161206Aaron Conole - 2.6.1-10.git20161206Lance Richardson - 2.6.1-9.git20161206Timothy Redaelli - 2.6.1-8.git20161206Lance Richardson - 2.6.1-7.git20161206Aaron Conole - 2.6.1-6.git20161206Timothy Redaelli - 2.6.1-5.git20161206Flavio Leitner 2.5.0-23.git20160727Lance Richardson 2.6.1-3.git20161206Lance Richardson 2.6.1-2.git20161206Kevin Traynor 2.6.1-1.git20161206Flavio Leitner 2.5.0-22.git20160727Flavio Leitner 2.5.0-21.git20160727Flavio Leitner 2.5.0-20.git20160727Aaron Conole - 2.5.0-19.git20160727Aaron Conole - 2.5.0-18.git20160727Flavio Leitner - 2.5.0-17.git20160727Flavio Leitner - 2.5.0-16.git20160727Flavio Leitner - 2.5.0-15.git20160727Panu Matilainen - 2.5.0-14.git20160727Panu Matilainen - 2.5.0-13.git20160727Panu Matilainen - 2.5.0-12.git20160727Panu Matilainen - 2.5.0-11.git20160727Panu Matilainen - 2.5.0-10.git20160727Flavio Leitner - 2.5.0-9.git20160727Flavio Leitner - 2.5.0-8.git20160727Flavio Leitner - 2.5.0-7.git20160727Flavio Leitner - 2.5.0-6.git20160628Flavio Leitner - 2.5.0-5.git20160628Panu Matilainen - 2.5.0-4.git20160628Panu Matilainen - 2.5.0-4Flavio Leitner - 2.5.0-3Panu Matilainen - 2.5.0-2Panu Matilainen - 2.5.0-1Panu Matilainen Flavio Leitner Panu Matilainen Ralf Spenneberg - Merging upstream branch-2.11 [RH gerrit: aac87adaf1] Commit list: 40682157c9 ovsdb-server: Fix memleak when failing to read storage.- Merging upstream branch-2.11 [RH gerrit: 1d6f0bd658] Commit list: 75907f8a11 ofp-group: Use big-enough buffer in ofputil_format_group().- Make changelog in spec file more informative [RH gerrit: 99ad8d96f6] This is done by adding the body of the commit message to the changelong. The body is indented and has extra spacing separating each entry in the changelog to make each one more discernible since now they could be longer Signed-off-by: Michael Santana - Merging upstream branch-2.11 [RH gerrit: 560df0228c] Commit list: 8710c3e5ce python: Send notifications after the transaction ends. bf3ef6a869 Handle refTable values with setkey()- Merging upstream branch-2.11 [RH gerrit: 67070c0625] Commit list: e9ad1da4f4 Prepare for 2.11.8. bbc2705315 Set release date for 2.11.7. 0f475a5cd4 ovsdb-client: Fix needs-conversion when SERVER is explicitly specified. 46299c1c72 dpdk: Use DPDK 18.11.11 release. 65c61b0c23 ofp-actions: Fix use-after-free while decoding RAW_ENCAP.- Merging upstream branch-2.11 [RH gerrit: 4351a9b512] Commit list: 9b0307cf7d Prepare for 2.11.7. 5d07b5da2e Set release date for 2.11.6. 018d35b7d9 cirrus: Use FreeBSD 12.2. abd7a45765 flow: Support extra padding length.- Merging upstream branch-2.11 [RH gerrit: a4f1272cee] Commit list: 5a62ed8002 dist-docs: Include manpages generated from rST.- flow: Support extra padding length. [RH gerrit: 35a473f35c] Although not required, padding can be optionally added until the packet length is MTU bytes. A packet with extra padding currently fails sanity checks. Fixes: fa8d9001a624 ("miniflow_extract: Properly handle small IP packets.") Reported-by: Joakim Hindersson Acked-by: Ilya Maximets Signed-off-by: Flavio Leitner - Merging upstream branch-2.11 [RH gerrit: 2e04729b43] Commit list: 1faf6f507c tc: Fix mpls bottom of stack bit mask reporting.- Merging upstream branch-2.11 [RH gerrit: a6fede58cb] Commit list: 6747878b7a python: Add 'six' to list of install requirements.- Merging upstream branch-2.11 [RH gerrit: b8354bd062] Commit list: cd0f896c01 github: Fix Ubuntu package installation. 5804c31209 odp-util: Fix abort while formatting nsh actions.- Merging upstream branch-2.11 [RH gerrit: f41ec7e05b] Commit list: d9e429cc49 Prepare for 2.11.6. 634e6e41cd Set release date for 2.11.5.- Merging upstream branch-2.11 [RH gerrit: 68170d878c] Commit list: dc222c3cf1 lldp: do not leak memory on multiple instances of TLVs 569595898b ofproto-dpif: Uninitialize 'xlate_cache' to free resources- Merging upstream branch-2.11 [RH gerrit: 10478e3802] Commit list: 008414b6f0 ovs-monitor-ipsec: Fix active connection regex.- Merging upstream branch-2.11 [RH gerrit: aa80d76b09] Commit list: 026339bc76 odp-util: Fix netlink message overflow with userdata. 29077624db ovsdb-tool: Fix datum leak in the show-log command. 041d001019 ofproto-dpif-xlate: Stop forwarding MLD reports to group ports.- Merging upstream branch-2.11 [RH gerrit: 838f461d65] Commit list: abe75f4938 datapath: ovs_ct_exit to be done under ovs_lock 884800683f compat: rcu: Add support for consolidated-RCU reader checking 090c694ac7 tests: Add overflow test for the sha1 library. 7bcf93452e travis: Remove support for Travis CI. a29cda9b26 github: Add GitHub Actions workflow. a9748802e0 ovsdb-cluster.at: Fix infinite loop in torture tests.- Merging upstream branch-2.11 [RH gerrit: 757d6ce62c] Commit list: 1dae577d74 ovsdb-idl: Fix *_is_new() IDL functions. 709b548549 compat: Fix compile warning. 8bd0dadd04 compat: Remove stale code. 9414a66816 tests: Add parse-flow tests for MPLS fields. 00ec8e5cb9 ofp-actions: Fix userspace support for mpls_ttl. 655e9aa784 python: Don't raise an Exception on failure to connect via SSL. 1cf4245ace lldp: correctly increase discarded count 330d64d036 lldp: increase statsTLVsUnrecognizedTotal on unknown TLV c00a829e45 lldp: fix a buffer overflow when handling management address TLV 9aed58b5f1 lldp: Fix size of PEEK_DISCARD_UINT32() 2c0bbbacf3 lldp: validate a bit more received LLDP frames 72aa3deacf sha1: Fix algorithm for data bigger than 512 megabytes. 7d52af2228 odp-util: Fix overflow of nested netlink attributes.- redhat: Explicitly define __python [RH gerrit: 045337a5c8] See https://fedoraproject.org/wiki/Changes/PythonMacroError- Merging upstream branch-2.11 [RH gerrit: e835b37ab3] Commit list: 684e43b4d8 raft: Fix error leak on failure while saving snapshot.- Merging upstream branch-2.11 [RH gerrit: a11c3da9f7] Commit list: cc81b50a60 ofp-ed-props: Fix using uninitialized padding for NSH encap actions.- Merging upstream branch-2.11 [RH gerrit: 2a26d61978] Commit list: 3cc79bbc13 system-userspace-packet-type-aware.at: Wait for ip address updates. 2deed05096 netdev-dpdk: Don't set rx mq mode for net_virtio.- Merging upstream branch-2.11 [RH gerrit: e31b9384be] Commit list: 5ceafdc389 docs: Add flow control on i40e issue- Merging upstream branch-2.11 [RH gerrit: a43432762b] Commit list: dfcebfcc2f cirrus: Use FreeBSD 11.4. 9e53a8a76b classifier: Fix use of uninitialized value. 30387b61ac rhel: Fix logrotate group when dpdk is enabled.- Merging upstream branch-2.11 [RH gerrit: dd4802fb0c] Commit list: 1b842af7ad ovs-dpctl-top: Skip "eth()" element. 9ff2a5a115 meta-flow: fix a typo in "MPLS Bottom of Stack Field" paragraph.- pkgtool: Use git-branch to retrieve the name. [RH gerrit: 7240e67479] The name-rev can return any symbolic name for ref, whether it is a branch or a tag. Use git branch --show-current instead.- Merging upstream branch-2.11 [RH gerrit: b16596dda3] Commit list: 05bbdfceb7 netdev-offload-dpdk: Fix for broken ethernet matching HWOL for XL710NIC.- Merging upstream branch-2.11 [RH gerrit: 7b48e66922] Commit list: e38b412dcb acinclude: Fix build with kernels with prandom* moved to prandom.h.- Merging upstream branch-2.11 [RH gerrit: 9ae7cb0a10] Commit list: 218ab4f731 Prepare for 2.11.5. adf1b5c390 Set release date for 2.11.4. 1210688623 datapath-windows: Update flow key in SET action d04e409f39 dpctl: Fix memory leak in dpctl_dump_flows() 5d7a08db86 ovs-router: Fix flushing of local routes.- redhat: Add support to custom RPM releases. [RH gerrit: 570434c6c2] This commit allows the developer to specify a custom release string to be appended to package NVR. If the custom release is 'bz123456', the final release would look like -Y.bz123456.X where Y is the number of changes until the branch was created, and X is the number of changes after that.- pkgtool: Use OVS static version in package NVR. [RH gerrit: 2ed240a84c] The package NVR must coincide with the tarball version.- Merge branch 'fast-datapath-rhel-7' into fast-datapath-rhel-8 [RH gerrit: a2d9792f8c]- Merge branch 'fast-datapath-rhel-7' into fast-datapath-rhel-8 [RH gerrit: c9f7a9e2d3]- spec: Fix configure to use dpdkdir without version. [RH gerrit: 583acc91dd]- redhat: Rename OVSCI job name. [RH gerrit: cbcaa83118] The OVSCI job's name has been renamed to follow a standard.- This is fast-datapath-rhel-8 [RH gerrit: 98f312f126]- bus/pci: fix VF memory access (#1851170) [RH gerrit: fa4d90db57] To fix CVE-2020-12888, the linux vfio-pci module will invalidate mmaps and block MMIO access on disabled memory, it will send a SIGBUS to the application: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=abafbc551fdd When the application opens the vfio PCI device, the vfio-pci module will enable the bus memory space through PCI read/write access. According to the PCIe specification, the 'Memory Space Enable' is always zero for VF: Table 9-13 Command Register Changes Bit Location | PF and VF Register Differences | PF | VF | From Base | Attributes | Attributes -------------+--------------------------------+------------+----------- | Memory Space Enable - Does not | | | apply to VFs. Must be hardwired| Base | 0b 1 | to 0b for VFs. VF Memory Space | | | is controlled by the VF MSE bit| | | in the VF Control register. | | -------------+--------------------------------+------------+----------- Afterwards the vfio-pci will initialize its own virtual PCI config space data ('vconfig') by reading the VF's physical PCI config space, then the 'Memory Space Enable' bit in vconfig will always be 0b value. This will make the vfio-pci treat the BAR memory space as disabled, and the SIGBUS will be triggered if access these BARs. By investigation, the VF PCI device *passthrough* into the Guest OS by QEMU has the 'Memory Space Enable' with 1b value. That's because every PCI driver will start to enable the memory space, and this action will be hooked by vfio-pci virtual PCI read/write to set the 'Memory Space Enable' in vconfig space to 1b. So VF runs in guest OS has 'Mem+', but VF runs in host OS has 'Mem-'. Align with PCI working mode in Guest/QEMU/Host, in DPDK, enable the PCI bus memory space explicitly to avoid access on disabled memory. Fixes: 33604c31354a ("vfio: refactor PCI BAR mapping") Cc: stable@dpdk.org Signed-off-by: Haiyue Wang Acked-by: Anatoly Burakov Tested-by: Harman Kalra Tested-by: David Marchand Tested-by: Thierry Martin (cherry picked from commit 54f3fb127d9c265a5724d193e5c7c6db29fb4150) Resolves: #1851170- vhost: fix vring index check (#1831391) [RH gerrit: 8e33084d85] vhost_user_check_and_alloc_queue_pair() is used to extract a vring index from a payload. This function validates the index and is called early on in when performing message handling. Most message handlers depend on it correctly validating the vring index. Depending on the message type the vring index is in different parts of the payload. The function contains a switch/case for each type and copies the index. This is stored in a uint16. This index is then validated. Depending on the message, the source index is an unsigned int. If integer truncation occurs (uint->uint16) the top 16 bits of the index are never validated. When they are used later on (e.g. in vhost_user_set_vring_num() or vhost_user_set_vring_addr()) it can lead to out of bound indexing. The out of bound indexed data gets written to, and hence this can cause memory corruption. This patch fixes this vulnerability by declaring vring index as an unsigned int in vhost_user_check_and_alloc_queue_pair(). Fixes: 160cbc815b41 ("vhost: remove a hack on queue allocation") Cc: stable@dpdk.org This issue has been assigned CVE-2020-10723 Reported-by: Ilja Van Sprundel Signed-off-by: Maxime Coquelin Reviewed-by: Xiaolong Ye Reviewed-by: Ilja Van Sprundel (cherry picked from commit c78d94189dced04def987a17f16097fcb197a186) Resolves: #1831391- vhost: check log mmap offset and size overflow (#1831391) [RH gerrit: 753ae0cf66] vhost_user_set_log_base() is a message handler that is called to handle the VHOST_USER_SET_LOG_BASE message. Its payload contains a 64 bit size and offset. Both are added up and used as a size when calling mmap(). There is no integer overflow check. If an integer overflow occurs a smaller memory map would be created than requested. Since the returned mapping is mapped as writable and used for logging, a memory corruption could occur. Fixes: fbc4d248b198 ("vhost: fix offset while mmaping log base address") This issue has been assigned CVE-2020-10722 Reported-by: Ilja Van Sprundel Signed-off-by: Maxime Coquelin Reviewed-by: Xiaolong Ye Reviewed-by: Ilja Van Sprundel (cherry picked from commit 338f5eae5de73a91ba42951bfe7d1fba898e1aab) Resolves: #1831391- vhost: add device op when notification to guest is sent (#1726579) [RH gerrit: 92715cf99c] This patch adds an operation callback which gets called every time the library is waking up the guest trough an eventfd_write() call. This can be used by 3rd party application, like OVS, to track the number of times interrupts where generated. This might be of interest to find out system-call were called in the fast path. Signed-off-by: Eelco Chaudron Reviewed-by: Maxime Coquelin (cherry picked from commit 039253166a57ee660dd2fbe92ca77fa65154751c) Resolves: #1726579- net/i40e: re-program promiscuous mode on VF interface (#1733402) [RH gerrit: 0fe1f42b5f] During a kernel PF reset, this event is propagated to the VF. The DPDK VF PMD will execute the reset task before the PF is done with his. This results in the admin queue message not being responded to leaving the port in "promiscuous" mode. This patch makes sure the promiscuous mode is configured independently of the current admin state. Signed-off-by: Eelco Chaudron Reviewed-by: Xiao Zhang (cherry picked from commit ddc7cb0d9453e0c0601a01eab1f388eae4c1fb65) Resolves: #1733402- bus/pci: always check IOMMU capabilities (#1711739) [RH gerrit: 0815c39d39] IOMMU capabilities won't change and must be checked even if no PCI device seem to be supported yet when EAL initialised. This is to accommodate with SPDK that registers its drivers after rte_eal_init(), especially on PPC platform where the IOMMU does not support VA. Fixes: 703458e19c16 ("bus/pci: consider only usable devices for IOVA mode") Signed-off-by: David Marchand Reviewed-by: David Christensen Acked-by: Jerin Jacob Tested-by: Jerin Jacob Tested-by: Takeshi Yoshimura (cherry picked from commit 66d3724b2c87e6fcdf3851ca191683696a91b901) Signed-off-by: David Marchand Resolves: #1711739- eal: fix IOVA mode selection as VA for PCI drivers (#1711739) [RH gerrit: 11fbef3c85] The incriminated commit broke the use of RTE_PCI_DRV_IOVA_AS_VA which was intended to mean "driver only supports VA" but had been understood as "driver supports both PA and VA" by most net drivers and used to let dpdk processes to run as non root (which do not have access to physical addresses on recent kernels). The check on physical addresses actually closed the gap for those drivers. We don't need to mark them with RTE_PCI_DRV_IOVA_AS_VA and this flag can retain its intended meaning. Document explicitly its meaning. We can check that a driver requirement wrt to IOVA mode is fulfilled before trying to probe a device. Finally, document the heuristic used to select the IOVA mode and hope that we won't break it again. Fixes: 703458e19c16 ("bus/pci: consider only usable devices for IOVA mode") Signed-off-by: David Marchand Reviewed-by: Jerin Jacob Tested-by: Jerin Jacob Acked-by: Anatoly Burakov (cherry picked from commit b76fafb174d2cd5247c3573bb3d49444e195e760) Signed-off-by: David Marchand Conflicts: drivers/net/avf/avf_ethdev.c drivers/net/ice/ice_ethdev.c drivers/net/mlx4/mlx4.c drivers/net/mlx5/mlx5.c drivers/net/octeontx2/otx2_ethdev.c drivers/raw/ioat/ioat_rawdev.c Resolves: #1711739- bus/pci: consider only usable devices for IOVA mode (#1711739) [RH gerrit: 69f5cb4c56] When selecting the preferred IOVA mode of the pci bus, the current heuristic ("are devices bound?", "are devices bound to UIO?", "are pmd drivers supporting IOVA as VA?" etc..) should honor the device white/blacklist so that an unwanted device does not impact the decision. There is no reason to consider a device which has no driver available. This applies to all OS, so implements this in common code then call a OS specific callback. On Linux side: - the VFIO special considerations should be evaluated only if VFIO support is built, - there is no strong requirement on using VA rather than PA if a driver supports VA, so defaulting to DC in such a case. Signed-off-by: Ben Walker Signed-off-by: David Marchand Reviewed-by: Anatoly Burakov (cherry picked from commit 703458e19c16135143b3f30089e1af66100c82dc) Signed-off-by: David Marchand Conflicts: drivers/bus/pci/linux/pci.c drivers/bus/pci/pci_common.c Resolves: #1711739- eal: compute IOVA mode based on PA availability (#1711739) [RH gerrit: d5e1d2fa50] Currently, if the bus selects IOVA as PA, the memory init can fail when lacking access to physical addresses. This can be quite hard for normal users to understand what is wrong since this is the default behavior. Catch this situation earlier in eal init by validating physical addresses availability, or select IOVA when no clear preferrence had been expressed. The bus code is changed so that it reports when it does not care about the IOVA mode and let the eal init decide. In Linux implementation, rework rte_eal_using_phys_addrs() so that it can be called earlier but still avoid a circular dependency with rte_mem_virt2phys(). In FreeBSD implementation, rte_eal_using_phys_addrs() always returns false, so the detection part is left as is. If librte_kni is compiled in and the KNI kmod is loaded, - if the buses requested VA, force to PA if physical addresses are available as it was done before, - else, keep iova as VA, KNI init will fail later. Signed-off-by: Ben Walker Signed-off-by: David Marchand Acked-by: Anatoly Burakov (cherry picked from commit c2361bab70c56f64e50f07946b1b20bf688d782a) Signed-off-by: David Marchand Resolves: #1711739- netdev-linux: Update LAG in all cases. (#1812892) [RH gerrit: 2763511809] In some cases, when processing a netlink change event, it's possible for an alternate part of OvS (like the IPv6 endpoint processing) to hold an active netdev interface. This creates a race-condition, where sometimes the OvS change processing will take the normal path. This doesn't work because the netdev device object won't actually be enslaved to the ovs-system (for instance, a linux bond) and ingress qdisc entries will be missing. To address this, we update the LAG information in ALL cases where LAG information could come in. Fixes: d22f8927c3c9 ("netdev-linux: monitor and offload LAG slaves to TC") Cc: Marcelo Leitner Cc: John Hurley Acked-by: Roi Dayan Signed-off-by: Aaron Conole Signed-off-by: Ilya Maximets (cherry picked from commit 7a076a53716394742d0ae44652451501ae17335d) Resolves: #1812892- netdev-offload-tc: Re-fetch block ID after probing. (#1812892) [RH gerrit: 83cebd3221] It's possible that block_id could changes after the probe for block support. Therefore, fetch the block_id again after the probe. Fixes: edc2055a2bf7 ("netdev-offload-tc: Flush rules on ingress block when init tc flow api") Cc: Dmytro Linkin Acked-by: Roi Dayan Co-authored-by: Marcelo Leitner Signed-off-by: Marcelo Leitner Signed-off-by: Aaron Conole Signed-off-by: Ilya Maximets (cherry picked from commit 8508a57228560e154963c542823d36d8098e6610) Resolves: #1812892- netdev-offload-tc: Flush rules on ingress block when init tc flow api (#1812892) [RH gerrit: e5d7d5ec24] OVS can fail to attach ingress block on iface when init tc flow api, if block already exist with rules on it and is shared with other iface. Fix by flush all existing rules on the ingress block prior to deleting it. Fixes: 093c9458fb02 ("tc: allow offloading of block ids") Signed-off-by: Dmytro Linkin Acked-by: Raed Salem Acked-by: Roi Dayan Signed-off-by: Simon Horman (cherry picked from commit edc2055a2bf73258d5731a8f8853397190348b04) Resolves: #1812892- netdev-vport: Use the dst_port in tunnel netdev name (#1727599) [RH gerrit: f4a6fb7574] If tunnel device dst_port is not the default one, "ovs-dpctl dump-flows" will fail. The error message for vxlan is: netdev_linux|INFO|ioctl(SIOCGIFINDEX) on vxlan_sys_4789 device failed: No such device That's because when calling netdev_vport_construct() for netdev vxlan_sys_xxxx, the default dst_port is used. Actually, the dst_port value is in the netdev name. Use it to avoid the error. Signed-off-by: Chris Mi Reviewed-by: Roi Dayan Signed-off-by: Ben Pfaff (cherry picked from commit 6998788197e23c409a6b6cecaa30867ff6d40928) Resolves: #1727599- lib/tc: Fix flow dump for tunnel id equal zero (#1732305) [RH gerrit: 765ba1d1c0] Tunnel id 0 is not printed unless tunnel flag FLOW_TNL_F_KEY is set. Fix that by always setting FLOW_TNL_F_KEY when tunnel id is valid. Fixes: 0227bf092ee6 ("lib/tc: Support optional tunnel id") Signed-off-by: Dmytro Linkin Reviewed-by: Roi Dayan Signed-off-by: Simon Horman (cherry picked from commit 36e50679a6517ee1ec6ed9e4cc83293279a5fffc) Resolves: #1732305- lib/tc: Support optional tunnel id (#1732305) [RH gerrit: 42f09fe96f] Currently the TC tunnel_key action is always initialized with the given tunnel id value. However, some tunneling protocols define the tunnel id as an optional field. This patch initializes the id field of tunnel_key:set and tunnel_key:unset only if a value is provided. In the case that a tunnel key value is not provided by the user the key flag will not be set. Signed-off-by: Adi Nissim Acked-by: Paul Blakey Signed-off-by: Simon Horman (cherry picked from commit 0227bf092ee6b5d18e2b79493d44769cb37ecc98) Resolves: #1732305- tc: Set 'no_percpu' flag for compatible actions (#1780690) [RH gerrit: 42f07f6bd8] Recent changes in Linux kernel TC action subsystem introduced new TCA_ACT_FLAGS_NO_PERCPU_STATS flag. The purpose of the flag is to request action implementation to skip allocating action stats with expensive percpu allocator and use regular built-in action stats instead. Such approach significantly improves rule insertion rate and reduce memory usage for hardware-offloaded rules that don't need benefits provided by percpu allocated stats (improved software TC fast-path performance). Set the flag for all compatible actions. Modify acinclude.m4 to use OVS-internal pkt_cls.h implementation when TCA_ACT_FLAGS is not defined by kernel headers and to manually define struct nla_bitfield32 in netlink.h (new file) when it is not defined by kernel headers. Signed-off-by: Vlad Buslov Reviewed-by: Roi Dayan Signed-off-by: Simon Horman (cherry picked from commit 292d5bd9bb344527e0da19433cf3e51f8a24058c) Resolves: #1780690- rhel: let *-ctl handle runtime directory (#1785586) [RH gerrit: c3763ec916] Recent versions of systemd restores RuntimeDirectory ownership to the unit's User in between execution of *Exec directives (see [1]). Using ExecStartPre to reset RuntimeDirectory ownership to OVS_USER no longer works as expected. The ctl scripts already handle creation of the runtime directory with correct ownership and permissions so we can basically remove RuntimeDirectory from systemd unit file. There is still need to handle ownsership to cover some upgrade scenarios, but success of that will be optional as the directory itself wont exist at first time run. [1] https://github.com/systemd/systemd/issues/12713 Signed-off-by: Jaime Caamaño Ruiz Signed-off-by: Ben Pfaff (cherry picked from commit 7a65e5a9252ac06df62707a571931f501747ecfc) Resolves: #1785586- rhel: set useropts optional for ovsdb-server (#1785586) [RH gerrit: 77bed8f0e4] systemd assesses the presssence of all EnvironmentFile before execution of Exec* directives, thus useropts needs to be optional even though it will always be created at ExecStartPre. Fixes: 94e1e8be3187 ("rhel: run ovn with the same user as ovs") Signed-off-by: Jaime Caamaño Ruiz Signed-off-by: Ben Pfaff (cherry picked from commit 0186c3807cc4500c5699fcf034df3a995c34885c) Resolves: #1785586- rhel: run ovn with the same user as ovs (#1785586) [RH gerrit: 8f5f39b4af] Both ovn and ovs share the same log and run directories which are owned by the user running ovs so it makes sense that ovn runs under that user too to diminish security concerns and possible problems with log rotation. Signed-off-by: Jaime Caamaño Ruiz Signed-off-by: Ben Pfaff (cherry picked from commit 94e1e8be3187a4824ac27ed843396dde5cc02d13) Resolves: #1785586- rhel: secure openvswitch useropts (#1785586) [RH gerrit: 71154ad26f] The openvswitch useropts file is being stored in a directory where the openvswitch user has write permissions. The openvswitch user can then manipulate the file to change the user under which switchd daemon runs. This patch changes the file to /var/openvswitch.useropts preventing any manipulation. Signed-off-by: Jaime Caamaño Ruiz Signed-off-by: Ben Pfaff (cherry picked from commit 27e25e18c1f4cdd789d5670ab9e01dcf02a86b6f) Resolves: #1785586- userspace: Improved packet drop statistics. (#1726568) [RH gerrit: a6b7a37be8] Currently OVS maintains explicit packet drop/error counters only on port level. Packets that are dropped as part of normal OpenFlow processing are counted in flow stats of “drop” flows or as table misses in table stats. These can only be interpreted by controllers that know the semantics of the configured OpenFlow pipeline. Without that knowledge, it is impossible for an OVS user to obtain e.g. the total number of packets dropped due to OpenFlow rules. Furthermore, there are numerous other reasons for which packets can be dropped by OVS slow path that are not related to the OpenFlow pipeline. The generated datapath flow entries include a drop action to avoid further expensive upcalls to the slow path, but subsequent packets dropped by the datapath are not accounted anywhere. Finally, the datapath itself drops packets in certain error situations. Also, these drops are today not accounted for.This makes it difficult for OVS users to monitor packet drop in an OVS instance and to alert a management system in case of a unexpected increase of such drops. Also OVS trouble-shooters face difficulties in analysing packet drops. With this patch we implement following changes to address the issues mentioned above. 1. Identify and account all the silent packet drop scenarios 2. Display these drops in ovs-appctl coverage/show Co-authored-by: Rohith Basavaraja Co-authored-by: Keshav Gupta Signed-off-by: Anju Thomas Signed-off-by: Rohith Basavaraja Signed-off-by: Keshav Gupta Acked-by: Eelco Chaudron Signed-off-by: Ilya Maximets (cherry picked from commit a13a0209750c424556189796061c40d08c689467) Resolves: #1726568- netdev-dpdk: Fix sw stats perf drop. (#1790841) [RH gerrit: 54f4571750] Accessing the sw stats in the vhost datapath of a PVP test can incur a performance drop of ~2%. Most of the time these stats will just be getting zero added to them. By checking if there is a non-zero update first, we can avoid accessing them when they won't be updated and avoid the performance drop. Fixes: 2f862c712e52 ("netdev-dpdk: Detailed packet drop statistics.") Signed-off-by: Kevin Traynor Acked-by: Eelco Chaudron Signed-off-by: Ilya Maximets (cherry picked from commit 6d77abf4f7ea5596ba8c4a7a27768e83e80a7e46) Resolves: #1790841- netdev-dpdk: Detailed packet drop statistics. (#1790841) [RH gerrit: 1e1b33541a] OVS may be unable to transmit packets for multiple reasons on the userspace datapath and today there is a single counter to track packets dropped due to any of those reasons. This patch adds custom software stats for the different reasons packets may be dropped during tx/rx on the userspace datapath in OVS. - MTU drops : drops that occur due to a too large packet size - Qos drops : drops that occur due to egress/ingress QOS - Tx failures: drops as returned by the DPDK PMD send function Note that the reason for tx failures is not specified in OVS. In practice for vhost ports it is most common that tx failures are because there are not enough available descriptors, which is usually caused by misconfiguration of the guest queues and/or because the guest is not consuming packets fast enough from the queues. These counters are displayed along with other stats in "ovs-vsctl get interface statistics" command and are available for dpdk and vhostuser/vhostuserclient ports. Also the existing "tx_retries" counter for vhost ports has been renamed to "ovs_tx_retries", so that all the custom statistics that OVS accumulates itself will have the prefix "ovs_". This will prevent any custom stats names overlapping with driver/HW stats. Acked-by: Kevin Traynor Signed-off-by: Sriram Vatala Signed-off-by: Ilya Maximets (cherry picked from commit 2f862c712e52fe524e441ab58bb042dcb20214ee) Resolves: #1790841- netdev-dpdk: Reuse vhost function for dpdk ETH custom stats. (#1790841) [RH gerrit: e0d00f70c5] This is yet another refactoring for upcoming detailed drop stats. It allows to use single function for all the software calculated statistics in netdev-dpdk for both vhost and ETH ports. UINT64_MAX used as a marker for non-supported statistics in a same way as it's done in bridge.c for common netdev stats. Co-authored-by: Sriram Vatala Signed-off-by: Ilya Maximets Signed-off-by: Sriram Vatala Acked-by: Kevin Traynor (cherry picked from commit b99ab8aaaf9f6057ddbc332c76ab774dbfd4ccc3) Resolves: #1790841- netdev-dpdk: Refactor vhost custom stats for extensibility. (#1790841) [RH gerrit: b084d7a5c2] vHost interfaces currently has only one custom statistic, but there might be others in the near future. This refactoring makes the code work in the same way as it done for dpdk and afxdp stats to keep the common style over the different code places and makes it easily extensible for the new stats addition. Signed-off-by: Ilya Maximets Reviewed-by: David Marchand Acked-by: Kevin Traynor (cherry picked from commit 5c7ba90d8189ee7b35a1723d5a76dc205720af50) Resolves: #1790841- netdev-dpdk: Fix not reporting rx_oversize_errors in stats. (#1790841) [RH gerrit: 26017f85c8] There is a big code duplication issue with DPDK xstats that led to missed "rx_oversize_errors" statistics. It's defined but not used. Fix that by actually using this stat along with code refactoring that will allow us to not make same mistakes in the future. Macro definitions are perfectly suitable to automate code generation in such cases and already used in a couple of places in OVS for similar purposes. Signed-off-by: Ilya Maximets Reviewed-by: David Marchand Acked-by: Kevin Traynor Acked-by: Ian Stokes (cherry picked from commit 18366d165162051463fd28e9f46d1c2cbe355eb3) Resolves: #1790841- ovsdb replication: Provide option to configure probe interval. (#1788800) [RH gerrit: e8a669ead7] When ovsdb-server is in backup mode and connects to the active ovsdb-server for replication, and if takes more than 5 seconds to get the dump of the whole database, it will drop the connection soon after as the default probe interval is 5 seconds. This results in a snowball effect of reconnections to the active ovsdb-server. This patch handles or mitigates this issue by setting the default probe interval value to 60 seconds and provide the option to configure this value from the unixctl command. Other option could be increase the value of 'RECONNECT_DEFAULT_PROBE_INTERVAL' to a higher value. Acked-by: Mark Michelson Acked-by: Dumitru Ceara Signed-off-by: Numan Siddique Signed-off-by: Ben Pfaff (cherry-picked from commit e988b8abeec9d4be94b519c5d4ed4586ff71fde0) Resolves: #1788800- netdev-dpdk: Add coverage counter to count vhost IRQs. (#1726579) [RH gerrit: 3c3997eb0a] When the dpdk vhost library executes an eventfd_write() call, i.e. waking up the guest, a new callback will be called. This patch adds the callback to count the number of interrupts sent to the VM to track the number of times interrupts where generated. This might be of interest to find out system-calls were called in the DPDK fast path. The coverage counter is called "vhost_notification" and can be read with: $ ovs-appctl coverage/read-counter vhost_notification 13238319 Signed-off-by: Eelco Chaudron Signed-off-by: Ilya Maximets (cherry picked from commit 3d56e4ac445d17e69484a95b319ac578e3580b65) Signed-off-by: David Marchand Conflicts: lib/netdev-dpdk.c Resolves: #1726579- netdev-dpdk: add support for the RTE_ETH_EVENT_INTR_RESET event. (#1719644) [RH gerrit: ca1a1a8e1c] Currently, OVS does not register and therefore not handle the interface reset event from the DPDK framework. This would cause a problem in cases where a VF is used as an interface, and its configuration changes. As an example in the following scenario the MAC change is not detected/acted upon until OVS is restarted without the patch applied: $ echo 1 > /sys/bus/pci/devices/0000:05:00.1/sriov_numvfs $ ovs-vsctl add-port ovs_pvp_br0 dpdk0 -- \ set Interface dpdk0 type=dpdk -- \ set Interface dpdk0 options:dpdk-devargs=0000:05:0a.0 $ ip link set p5p2 vf 0 mac 52:54:00:92:d3:33 Signed-off-by: Eelco Chaudron Signed-off-by: Ilya Maximets (cherry picked from commit 988fd46391495e1ff92fa0d81204ae712e89ef9d) Resolves: #1719644- bridge: Allow manual notifications about interfaces' updates. (#1719644) [RH gerrit: f58b680888] Sometimes interface updates could happen in a way ifnotifier is not able to catch. For example some heavy operations (device reset) in netdev-dpdk could require re-applying of the bridge configuration. For this purpose new manual notifier introduced. Its function 'if_notifier_manual_report()' could be called directly by the code that aware about changes. This new notifier is thread-safe. Signed-off-by: Ilya Maximets Acked-by: Eelco Chaudron (cherry picked from commit db54e9672052db9c45f84d89454104eb2fedfb02) Signed-off-by: David Marchand Conflicts: lib/automake.mk vswitchd/bridge.c Resolves: #1719644- Shutdown SSL connection before closing socket (#1780745) [RH gerrit: aa97017175] Without shutting down the SSL connection, log messages like: stream_ssl|WARN|SSL_read: unexpected SSL connection close jsonrpc|WARN|ssl:127.0.0.1:47052: receive error: Protocol error reconnect|WARN|ssl:127.0.0.1:47052: connection dropped (Protocol error) would occur whenever the socket is closed. This just adds an SSLStream.close() that calls shutdown() and ignores SSL errors, the same way that lib/stream-ssl.c does in ssl_close(). Signed-off-by: Terry Wilson Signed-off-by: Ben Pfaff (cherry picked from commit 5fe179987d14ff38cce345dbbe57ef1ffe7853cc) Resolves: #1780745- flake8: also check the ovs-check-dead-ifs script (#1751161) [RH gerrit: ecd3a1b407] Acked-by: William Tu Signed-off-by: Aaron Conole Signed-off-by: Ben Pfaff (cherry picked from commit bc6f73c951af472d221985965085544e60248b03) Resolves: #1751161- ovs-check-dead-ifs: unshadow pid variable (#1751161) [RH gerrit: a086e76181] The pid variable is being shadowed by the list comprehension in the os.execvp() call. This can generate flakes / warnings in some environments so fix it. Acked-by: William Tu Signed-off-by: Aaron Conole Signed-off-by: Ben Pfaff (cherry picked from commit 78e2a56927b5ba7e6f8808e3cf967171a2708a57) Resolves: #1751161- ovs-check-dead-ifs: python3 print format (#1751161) [RH gerrit: d61553f744] The print call changed in python3, so update it. Acked-by: William Tu Signed-off-by: Aaron Conole Signed-off-by: Ben Pfaff (cherry picked from commit c864b82d889dc47fb88d5cdde8caeca962776871) Resolves: #1751161- ovs-tcpundump: exit when getting version (#1764127) [RH gerrit: ea9923af22] Running 'ovs-tcpundump -V' will cause ovs-tcpundump to start processing on stdin. Instead, print the version and exit. Signed-off-by: Aaron Conole Signed-off-by: Ben Pfaff (cherry picked from commit c691cffb03ba3a7595f364c2766fdd2ace8c3842) Resolves: #1764127- ovs-tcpundump: allow multiple packet lengths (#1764125) [RH gerrit: ac3b779405] The tcpundump tool expects all packets to be a length which aligns to exactly a 4-nibble boundary. This means packets like DNS requests will be stripped before being correctly processed. Fix this by allowing at least two nibbles (or one byte) alignment. Signed-off-by: Aaron Conole Signed-off-by: Ben Pfaff (cherry picked from commit 1051576cf2b8a6ffddf849d984c250a8456e6144) Resolves: #1764125- jsonrpc: increase input buffer size from 512 to 4096 (#1776883) [RH gerrit: 9c93db8373] Increase jsonrpc input buffer size from 512 to 4096 bytes in order to reduce the syscall overhead when downloading huge db size Acked-by: Mark Michelson Signed-off-by: Lorenzo Bianconi Signed-off-by: Ben Pfaff (cherry picked from commit ea5c1ba0e3b899b8b6684f23a44bbfd4331815ee) Resolves: #1776883- netdev-dpdk: Track vhost tx contention. (#1740144) [RH gerrit: 31112a9502] Add a coverage counter to help diagnose contention on the vhost txqs. This is seen as dropped packets on the physical ports for rates that are usually handled fine by OVS. Acked-by: Eelco Chaudron Signed-off-by: David Marchand Signed-off-by: Ilya Maximets (cherry picked from commit 9ff24b9c9323652f9dc80ff7928148c4af12da9c) Resolves: #1740144- ovsdb-server: Allow replication from older schema version servers. (#1766586) [RH gerrit: cb53fe2282] Presently, replication is not allowed if there is a schema version mismatch between the schema returned by the active ovsdb-server and the local db schema. This is causing failures in OVN DB HA deployments during uprades. In the case of OpenStack tripleo deployment with OVN, OVN DB ovsdb-servers are deployed on a multi node controller cluster in active/standby mode. During minor updates or major upgrades, the cluster is updated one at a time. If a node A is running active OVN DB ovsdb-servers and when it is updated, another node B becomes active. After the update when OVN DB ovsdb-servers in A are started, these ovsdb-servers fail to replicate from the active if there is a schema version mismatch. This patch addresses this issue by allowing replication even if there is a schema version mismatch only if all the active db schema tables and its colums are present in the local db schema. This should not result in any data loss. Signed-off-by: Numan Siddique Signed-off-by: Ben Pfaff (cherry picked from commit cec7005bde4bc81de7b94a3dc4b4160800c98be7) Resolves: #1766586- ovsdb-server: Don't drop all connections on read/write status change. (#1761572) [RH gerrit: 5a0a77328b] The commit [1] force drops all connections when the db read/write status changes. Prior to the commit [1], when there was read/write status change, the existing jsonrpc sessions with 'db_change_aware' set to true, were not updated with the changed 'read_only' value. If the db status was changed to 'standby', the existing clients could still write to the db. In the case of pacemaker OVN HA, OVN OCF script 'start' action starts the ovsdb-servers in read-only state and later, it sets to read-write in the 'promote' action. We have observed that if some ovn-controllers connect to the SB ovsdb-server (in read-only state) just before the 'promote' action, the connection is not reset all the times and these ovn-controllers remain connected to the SB ovsdb-server in read-only state all the time. Even though the commit [1] calls 'ovsdb_jsonrpc_server_reconnect()' with 'forced' flag set to true when the db read/write status changes, somehow the FSM misses resetting the connections of these ovn-controllers. I think this needs to be addressed in the FSM. This patch doesn't address this FSM issue. Instead it changes the behavior of 'ovsdb_jsonrpc_server_set_read_only()' by setting the 'read_only' flag of all the jsonrpc sessions instead of forcefully resetting the connection. I think there is no need to reset the connection. In large scale production deployements with OVN, this results in unnecessary waste of CPU cycles as ovn-controllers will have to connect twice - once during 'start' action and again during 'promote'. [1] - 2a9679e3b2c6("ovsdb-server: drop all connections on read/write status change") Acked-by: Dumitru Ceara Signed-off-by: Numan Siddique Signed-off-by: Ben Pfaff (cherry picked from commit a5ff4874ba4bb60ced7bda6ad97d0be38e8172eb) Resolves: #1761572- ofproto-dpif: Fix continuation with patch port (#1761461) [RH gerrit: 069d4bd437] This patch fixes the ofp_port to odp_port translation issue on patch port with nxt_resume. When OVS resumes processing a packet from nxt_resume, OVS does not translate the ofp in_port to odp in_port correctly if the packet is originally received from a patch port. Currently,OVS sets the odp in_port for this resume pakcet as ODPP_NONE and push the resume packet back to the datapath. Later on, if the packet goes through a recirc, OVS will generate the following message since it can not translate odp in_port (ODPP_NONE) back to ofp in_port during upcall, and push down a datapath rule to drop the packet. ofproto_dpif_upcall(handler16)|INFO|received packet on unassociated datapath port 4294967295 When OVS revalidates the drop datapath flow with ODPP_NONE in_port, we will see the following warning. ofproto_dpif_upcall(revalidator18)|WARN|Failed to acquire udpif_key corresponding to unexpected flow (Invalid argument): ufid:.... This patch resolves this issue by storing the odp in_port in the continuation messages, and restores the odp in_port before push the packet back to the datapath. VMWare-BZ: 2364696 Signed-off-by: Yi-Hung Wei Signed-off-by: Ben Pfaff (cherry picked from commit 88d2ac50aa4e3383e185b698a1b3a44a6f7b4f80) Resolves: #1761461- vswitch: ratelimit the device add log (#1737146) [RH gerrit: 052e541d45] It's possible that a port added to the system with certain kinds of invalid parameters will cause the 'could not add' log to be triggered. When this happens, the vswitch run loop can continually re-attempt adding the port. While the parameters remain invalid the vswitch run loop will re-trigger the warning, flooding the syslog. This patch adds a simple rate limit to the log. Acked-by: William Tu Signed-off-by: Aaron Conole Signed-off-by: Ben Pfaff (cherry picked from commit 45bd8c563273fb914ff1960a53cfdcfddb0a5588) Resolves: #1737146- netdev-dpdk: Enable tx-retries-max config. (#1747531) [RH gerrit: 734086f5d4] vhost tx retries can provide some mitigation against dropped packets due to a temporarily slow guest/limited queue size for an interface, but on the other hand when a system is fully loaded those extra cycles retrying could mean packets are dropped elsewhere. Up to now max vhost tx retries have been hardcoded, which meant no tuning and no way to disable for debugging to see if extra cycles spent retrying resulted in rx drops on some other interface. Add an option to change the max retries, with a value of 0 effectively disabling vhost tx retries. Signed-off-by: Kevin Traynor Acked-by: Eelco Chaudron Acked-by: Flavio Leitner Acked-by: Ilya Maximets Signed-off-by: Ian Stokes (cherry picked from commit 080f080c3bc1e87da4affdce28a01b1a87a60364) Resolves: #1747531- netdev-dpdk: Add custom stat for vhost tx retries. (#1747531) [RH gerrit: 0c238ac414] vhost tx retries may occur, and it can be a sign that the guest is not optimally configured. Add a custom stat so a user will know if vhost tx retries are occurring and hence give a hint that guest config should be examined. Signed-off-by: Kevin Traynor Signed-off-by: Ian Stokes (cherry picked from commit c161357d5d96f32144f4b63ee6b06049c0cc0a09) Resolves: #1747531- doc: Move vhost tx retry info to separate section. (#1747531) [RH gerrit: 91d9e4d92b] vhost tx retry is applicable to vhost-user and vhost-user-client, but was in the section that compares them. Also, moved further down the doc as prefer to have more fundamental info about vhost nearer the top. Fixes: 6d6513bfc657 ("doc: Add info on vhost tx retries.") Reported-by: David Marchand Signed-off-by: Kevin Traynor Reviewed-by: David Marchand Signed-off-by: Ian Stokes (cherry picked from commit 4e6c16db31806dfcf84d6ebdb0d708cfa39bd08f) Resolves: #1747531- netdev-vport: Make ip6gre netdev type to use TC rules (#1725623) [RH gerrit: d3315b8035] The offload api functions already assigned to every tunnel class. For ip6gre tunnel class only need to also assign the get_ifindex function, similarly as done in commit 5e63eaa969a3 ("netdev-vport: Make gre netdev type to use TC rules"). Signed-off-by: Eli Britstein Reviewed-by: Roi Dayan Signed-off-by: Ben Pfaff (cherry picked from commit 8732450c2ee76410c7fbebaebe5f9cf27252208f) Resolves: #1725623- tunnel: Add layer 2 IPv6 GRE encapsulation support. (#1725623) [RH gerrit: 0c20e7e83d] The patch adds ip6gre support. Tunnel type 'ip6gre' with packet_type= legacy_l2 is a layer 2 GRE tunnel over IPv6, carrying inner ethernet packets and encap with GRE header with outer IPv6 header. Encapsulation of layer 3 packet over IPv6 GRE, ip6gre, is not supported yet. I tested it by running: under kernel 5.2 and for userspace: Tested-by: Greg Rose Tested-at: https://travis-ci.org/gvrose8192/ovs-experimental/builds/552977116 Reviewed-by: Greg Rose Reviewed-by: Eli Britstein Signed-off-by: William Tu Signed-off-by: Ben Pfaff (cherry picked from commit a3173ee1476840aaa6d90640169bd276568ff4c1) Resolves: #1725623- ovsdb-server: drop all connections on read/write status change (#1720947) [RH gerrit: 0f0be40ee0] Prior to this patch, only db change aware connections were dropped on a read/write status change. However, current schema in OVN does not allow clients to monitor whether a particular DB changes this status. In order to accomplish this, we'd need to change the schema and adapting ovsdb-server and existing clients. Before tackling that, this patch is changing ovsdb-server to drop *all* the existing connections upon a read/write status change. This will force clients to reconnect and honor the change. Reported-at: https://mail.openvswitch.org/pipermail/ovs-discuss/2019-July/048981.html Signed-off-by: Daniel Alvarez Signed-off-by: Ben Pfaff (cherry picked from commit 2a9679e3b2c6fde74ddae362d88ba16db7fbfc38) Resolves: #1720947- netdev-tc-offloads: Support match on priority tags (#1725623) [RH gerrit: 895735b382] The logic by which a TC rule has a VLAN match is by the VLAN TCI field, either the VID, PCP or CFI are non-zero. For priority-tag packets there is a VLAN tag header with a zero VLAN TCI. Match on existence of VLAN header (TPID) regardless of TCI matching. Signed-off-by: Eli Britstein Reviewed-by: Roi Dayan Signed-off-by: Simon Horman (cherry picked from commit 0b0a84783cd6048ca3d35af0f5b4652cecd34358) Resolves: #1725623- rhel: limit stack size to 2M. (#1720315) [RH gerrit: 79c6209e71] The default stack size in Fedora/RHEL is 8M, which means when ovs-vswitchd daemon starts and uses --mlockall (default), it will dirty all memory regions for all threads which is proportionally to the number of CPUs. On a big host this increases memory usage to many hundreds of megabytes while OVS actually requires much less. This patch relies on systemd to limit to 2M/thread. That is much more than the minimum documented at function ovs_thread_create(): /* Some small systems use a default stack size as small as 80 kB, but OVS * requires approximately 384 kB according to the following analysis: * https://mail.openvswitch.org/pipermail/ovs-dev/2016-January/308592.html * * We use 512 kB to give us some margin of error. */ Acked-By: Timothy Redaelli Tested-By: Timothy Redaelli Signed-off-by: Flavio Leitner Signed-off-by: Ben Pfaff (cherry picked from commit b82a90e266e1246fe2973db97c95df22558174ea) Resolves: #1720315- Add a new OVS action check_pkt_larger (#1702564) [RH gerrit: c899ac5788] This patch adds a new action 'check_pkt_larger' which checks if the packet is larger than the given size and stores the result in the destination register. Usage: check_pkt_larger(len)->REGISTER Eg. match=...,actions=check_pkt_larger(1442)->NXM_NX_REG0[0],next; This patch makes use of the new datapath action - 'check_pkt_len' which was recently added in the commit [1]. At the start of ovs-vswitchd, datapath is probed for this action. If the datapath action is present, then 'check_pkt_larger' makes use of this datapath action. Datapath action 'check_pkt_len' takes these nlattrs * OVS_CHECK_PKT_LEN_ATTR_PKT_LEN - 'pkt_len' to check for * OVS_CHECK_PKT_LEN_ATTR_ACTIONS_IF_GREATER (optional) - Nested actions to apply if the packet length is greater than the specified 'pkt_len' * OVS_CHECK_PKT_LEN_ATTR_ACTIONS_IF_LESS_EQUAL (optional) - Nested actions to apply if the packet length is lesser or equal to the specified 'pkt_len'. Let's say we have these flows added to an OVS bridge br-int table=0, priority=100 in_port=1,ip,actions=check_pkt_larger:100->NXM_NX_REG0[0],resubmit(,1) table=1, priority=200,in_port=1,ip,reg0=0x1/0x1 actions=output:3 table=1, priority=100,in_port=1,ip,actions=output:4 Then the action 'check_pkt_larger' will be translated as - check_pkt_len(size=100,gt(3),le(4)) datapath will check the packet length and if the packet length is greater than 100, it will output to port 3, else it will output to port 4. In case, datapath doesn't support 'check_pkt_len' action, the OVS action 'check_pkt_larger' sets SLOW_ACTION so that datapath flow is not added. This OVS action is intended to be used by OVN to check the packet length and generate an ICMP packet with type 3, code 4 and next hop mtu in the logical router pipeline if the MTU of the physical interface is lesser than the packet length. More information can be found here [2] [1] - https://kernel.googlesource.com/pub/scm/linux/kernel/git/davem/net-next/+/4d5ec89fc8d14dcdab7214a0c13a1c7321dc6ea9 [2] - https://mail.openvswitch.org/pipermail/ovs-discuss/2018-July/047039.html Reported-at: https://mail.openvswitch.org/pipermail/ovs-discuss/2018-July/047039.html Suggested-by: Ben Pfaff Signed-off-by: Numan Siddique CC: Ben Pfaff CC: Gregory Rose Acked-by: Mark Michelson Signed-off-by: Ben Pfaff (cherry picked from commit 5b34f8fc3b38b430c05ee39a0c84f8e9da24cd3a) Conflicts: NEWS tests/ofprot-dpif.at +L10571 - Not really a conflict. Had to fix the test case because we don't have the commit - dbf4a92800d0365cc3ec3c0e99df56e2ba676cb7 Resolves: #1702564- netlink linux: account for the netnsid netlink attr. (#1692812) [RH gerrit: ce14b518b7] The buffer needs to be reallocated and data copied when the netnsid netlink attribute is included, so avoid that by accounting the attribute when the buffer is initially allocated. Fixes: 756819ddd788 ("netdev-linux: use netlink to update netdev.") Acked-by: Aaron Conole Signed-off-by: Flavio Leitner Signed-off-by: Ben Pfaff (cherry picked from commit b43762a5ad3343d28e61ed518c97802c5bd8f380) Resolves: #1692812- rhel: Add an example to specify custom options (#1687775) [RH gerrit: a7dd6b6eb5] Add an example to specify custom options of ovs-vswitchd and ovsdb-server. In the example, the log level for file and console destinations is set to dbg. Signed-off-by: Timothy Redaelli Signed-off-by: Ben Pfaff (cherry picked from commit 175b9a6401da76994bac955ebc9f440634e63d55) Resolves: #1687775- ovs-ctl: Permit to specify additional options (#1687775) [RH gerrit: b8a874b82e] Currently using ovs-ctl is not possible to specify additional options for ovs-vswitchd and ovsdb-server (for example to specify a different loglevel during daemon startup). This patch adds --ovs-vswitchd-options and --ovsdb-server-options options to ovs-ctl in order to specify the additional options. Due to word splitting it may not be possible to specify an option that includes whitespaces. Reported-at: https://bugzilla.redhat.com/1664794 Reported-by: Matt Flusche Signed-off-by: Timothy Redaelli Signed-off-by: Ben Pfaff (cherry picked from commit fce20b8b73b1c08bc0f51a04a2109d80e4bc8b51) Resolves: #1687775- Merge commit 'a4efc599e0244e43fd417b2fb38b7f120eb1ebd4' into fast-datapath-rhel-7 [RH gerrit: 8da1428afe]- Backport "bus/pci: fix VF memory access" (#1851170)- Backport the upstreammed fixes for HWOL (#1812892)- Backport fixes for CVE-2020-10722 & CVE-2020-10723 (#1831391 & #1831394)- Backport HWOL fixes for ingress qdisc (#1812892)- Update to DPDK 18.11.7 (#1822653)- Rebase to last branch-2.11 commit and DPDK 18.11.6 (#1822653)- Backport "vhost: fix packed virtqueue ready condition" (#1793068)- Revert Backport "ovs-tc: support OvS internal port offload" and deps (#1737982) - Revert Backport "netdev-tc-offloads: Use correct hook qdisc at init tc flow" (#1737982)- Backport "vhost: fix vring memory partially mapped" (#1798996) - Backport "vhost: protect log address translation in IOTLB update" (#1798996)- Backport "netdev-vport: Use the dst_port in tunnel netdev name" (#1727599)- Backport "dpif-netlink: Allow offloading of flows with dl_type 0x1234." (#1722337)- Backport "lib/tc: Support optional tunnel id" (#1732305) Backport "lib/tc: Fix flow dump for tunnel id equal zero" (#1732305)- Backport "tc: implement support for action flags" (#1780690)- Backport "rhel: secure openvswitch useropts" (#1785586) - Backport "rhel: run ovn with the same user as ovs" (#1785586) - Backport "rhel: set useropts optional for ovsdb-server" (#1785586) - Backport "rhel: let *-ctl handle runtime directory" (#1785586)- Backport "userspace: Improved packet drop statistics" (#1726568)- Detailed packet drop statistics and related patches (#1790841) - Backport "netdev-dpdk: Fix not reporting rx_oversize_errors in stats." (#1790841) - Backport "netdev-dpdk: Refactor vhost custom stats for extensibility." (#1790841) - Backport "netdev-dpdk: Reuse vhost function for dpdk ETH custom stats." (#1790841) - Backport "netdev-dpdk: Detailed packet drop statistics." (#1790841) - Backport "netdev-dpdk: Fix sw stats perf drop." (#1790841)- Backport "vhost: fix virtqueue not accessible" (#1792399) - Backport "vhost: prevent zero copy mode if IOMMU is on" (#1792399) - Backport "vhost: convert buffer addresses to GPA for logging" (#1792399) - Backport "vhost: translate incoming log address to GPA" (#1792399) - Backport "vhost: fix vring address handling during live migration" (#1792399) - Backport "vhost: add external message handling to the API" (#1792399)- Backport "ovsdb replication: Provide option to configure probe interval" (#1788800)- Backport DPDK interrupt fixes for qede (#1738789)- Backport "vhost: add device op when notification to guest is sent" (#1726579) - Backport "netdev-dpdk: Add coverage counter to count vhost IRQs" (#1726579)- Backport "net/i40e: downgrade error log" (#1719644) - Backport "net/i40e: re-program promiscuous mode on VF interface" (#1733402) - Backport "bridge: Allow manual notifications about interfaces' updates" (#1719644) - Backport "netdev-dpdk: add support for the RTE_ETH_EVENT_INTR_RESET" (#1719644)- Fix librte_pmd_mlx{4,5}_glue.so error in Execshield part of RPMDiff by backporting the DPDK flags from dpdk spec file.- Backport "Shutdown SSL connection before closing socket" (#1780745)- Backport "ovs-check-dead-ifs: python3 print format" (#1751161) - Backport "ovs-check-dead-ifs: unshadow pid variable" (#1751161) - Backport "flake8: also check the ovs-check-dead-ifs script" (#1751161)- Backport "ovs-tcpundump: exit when getting version" (#1764127)- Backport "ovs-tcpundump: allow multiple packet lengths" (#1764125)- Rebase internal DPDK to 18.11.5 (#1760246) (CVE-2019-14818)- Backport "jsonrpc: increase input buffer size from 512 to 4096" (#1776883)- Backport "netdev-dpdk: Track vhost tx contention." (#1740144)- Backport "ovsdb-server: Allow replication from older schema version servers" (#1766586)- Backport "ovsdb-server: Don't drop all connections on read/write status change" (#1761572)- Backport "ofproto-dpif: Fix continuation with patch port" (#1761461)- Backport "vswitch: ratelimit the device add log" (#1737146)- Backport "Add custom stat for vhost tx retries." (#1747531) - Backport "Enable tx-retries-max config." (#1747531)- tnl-neigh: Use outgoing ofproto version (#1685642)- Bump release- Renumbered dpdk patches - Backport IOVA fixes (#1711739)- Backport "ovsdb-server: drop all connections on read/write status change" (#1720947)- Increase CONFIG_RTE_MAX_ETHPORTS to 128 (#1730421)- Backport "tunnel: Add layer 2 IPv6 GRE encapsulation support." and "netdev-vport: Make ip6gre netdev type to use TC rules" (#1725623)- Rebase internal DPDK to 18.11.2 (#1713698)- Backport "net/i40e: fix dropped packets statistics name" (#1728610)- Backport "netdev-tc-offloads: Use correct hook qdisc at init tc flow" (#1721219)- Backport "netdev-tc-offloads: Support match on priority tags" (#1722249)- Backport Vhost performance regression fixes (#1672538)- Backport "rhel: limit stack size to 2M." (#1720315)- Backport "ovs-tc: support OvS internal port offload" and deps (#1702334)- Backport "[OVN] Fragmentation support - check_pkt_larger action" (#1702564)- Backport "net/qede: support IOVA VA mode" (#1684605)- Backport cpu affinity fixes (#1687320)- Add missing dependencies for ovs-tcpdump (#1697978)- fixed netlink msg corruption when updating netdev. (#1692812)- Backport "net/bnxt: support IOVA VA mode" (#1645523)- Backport "ovs-ctl: Permit to specify additional options" (#1687775) - Remove useless -fPIC from DPDK- Backport "rhel: Use PIDFile on forking systemd service files" (#1684477)- Update to official 2.11 release- Snapshot of branch-2.11 d3a10db4fd38- Snapshot of branch-2.11 d4ff5b2be7fc- Update to a snapshot of OVS 2.11 from master- Backport "OVN: add static IP support to IPAM" (#1664028)- Backport some patches to improve offload indications (#1655990)- Add "Requires: openvswitch = %{version}-%{release}" to python-openvswitch2.10 (#1662944)- Backport "OVN: add mac address only support to IPAM/MACAM" (#1662905)- Backport "ovn-controller: Inject GARPs to logical switch pipeline to update neighbors" (#1643902)- Backport 'ovs-ctl: fix system-id.conf owner' (#1659391) - Do not check /var/log/openvswitch owner/group (#1659391)- Backport "ovn: Fix the invalid eth.dst and ip6.dst set by nd_ns action for certain cases." (#1656018)- Backport "dpif-netdev: Add vlan to mask for flow_put operation" (#1649516)- Backport "ovn: Avoid tunneling for VLAN packets redirected to a gateway chassis" (#1561880)- Backport "mem: fix memory initialization time" (#1647498)- Backport "tests: Use the default key length when generating RSA keys"- Backport "net/qede: fix crash when configure fails" (#1648183)- Backport 'pinctrl: Fix dp_packet structure leak' and 'pinctrl: Fix crash on buffered packets hmap double remove'. Moreover align 'ovn -- 3 HVs, 3 LS, 3 lports/LS, 1 LR' test to upstream one (#1649008)- Backup "netdev-dpdk: Bring link down when NETDEV_UP is not set" (#1645288)- OVN: configure L2 address according to the used IP address (#1648272)- Backport "bond: Honor updelay and downdelay when LACP is in use" (#1646923)- OVN: introduce mac_prefix support to IPAM (#1647750)- Backport "ofproto-dpif-xlate: Avoid deadlock on multicast snooping recursion" (#1643065)- Re-enable "make check"- Update to DPDK 17.11.4 (#1566069)- Ship statically linked OVS binaries (#1643478)- Backport connmgr: Fix vswitchd abort when a port is added and the controller is down (#1637926)- Backport "ovn: Add DHCP support for option 252" (#1641740)- Backport "net/i40e: fix VLAN offload setting issue" (#1637893)- Backport "Python: Make Row's __getattr__ less error prone" (#1639963)- OVN: ovn-ctl: Fix the wrong pidfile argument passed to ovsdb-servers (#1636714)- OVN: Support processing DHCPv6 information request message type (#1636874)- OVN: Fix IPv6 DAD failure for container ports (#1616129)- OVN: Fix the issue in IPv6 Neigh Solicitation responder for router IPs (#1567735)- OVN: add buffering support for ip packets (#1637466)- Fix null pointer (#1634015)- OVN: add CT_LB action to ovn-trace (#1635344)- Backport NFP PMD's non-root related commits for > 1TB of RAM (#1634820): - net/nfp: support IOVA VA mode - bus/pci: forbid IOVA mode if IOMMU address width too small - net/nfp: check hugepages IOVAs based on DMA mask - mem: use address hint for mapping hugepages - bus/pci: use IOVAs check when setting IOVA mode - mem: add function for checking memsegs IOVAs addresses - mem: fix max DMA maskbit size- Backport "Remove support for multiple queues per port" (#1634015)- Backport EMC reorder fix (#1565205)- Backport per-port socket netlink creation with EPOLLEXCLUSIVE (#1634015)- Backport roundrobin rxq to pmd assignment (#1631797)- Backport "ovs-save: Don't always include the default flow during restore" (#1628905)- applied Fix translation of groups with no buckets (#1626488)- Removed provides and obsoletes for openvswitch-dpdk (#1628603)- Backported "net/mlx{4,5}: avoid stripping the glue library" (#1627700)- Updated with 2.10.0 official tarball (#1618551)- Sync'ed with fd-next (4452afaa58) - vhost: flush IOTLB cache on new mem table handling (#1609643) - OVN: introduce ovs-appctl command to monitor HVs sb (#1593804)- Snapshot of branch-2.10 6bced903bb50- Snapshot of branch-2.10 58a7ce60b9f7- Snapshot of branch-2.10 faf64fb8861f- Snapshot of branch master 7a78d1c1ad73- Sync'ed spec file with fd-next-57 (shared linking). (DPDK patches not included) - Fixed package dependencies (#1610603)- Snapshot of branch master b1ca64f020f7- Replace macro %{name} with 'openvswitch'.- Snapshot of branch master 1ac690899592- Versioned conflict to be less than 2.10.- Snapshot of branch master 3c921cc2b6b7- Fixed unbound requires and buildrequires.- Snapshot of branch master 93c0ef12039c- Snapshot of branch master 79d0dfa4e99a- Snapshot of branch master e46148133067- Snapshot of branch master 61677bf976e9- snapshot of branch master- Backport "net/mlx5: fix memory region cache lookup" (#1581230) - Backport "net/mlx5: fix memory region boundary checks" (#1581230)- Backport "net/qede: fix memory alloc for multiple port reconfig" (#1589866)- Backport "net/qede: fix unicast filter routine return code" (#1578590)- Backport "net/qede: fix L2-handles used for RSS hash update" (#1578981)- Backport "net/nfp: fix lock file usage" (#1583670)- Backport "net/nfp: configure default RSS reta table" (#1583161)- Backport "netdev-dpdk: don't enable scatter for jumbo RX support for nfp" (#1578324)- Backport "ovn pacemaker: Fix promotion issue when the master node is reset" (#1579025)- Backport spec file modfications from "rhel: Use openvswitch user/group for the log directory"- Backport "vhost: improve dirty pages logging performance" (#1552465)- Backport "ovn: Set proper Neighbour Adv flag when replying for NS request for router IP" (#1567735)- Enable QEDE PMDs (only on x86_64) (#1578003)- ovn-nbctl: Show gw chassis in decreasing prio order (#1576725)- Fix hugetlbfs group when DPDK is enabled- Backport "eal: abstract away the auxiliary vector" (#1560728) - Re-enable DPDK on ppc64le- Require the selinux policy module (#1555440)- Backport fix QEDE PMD (#1494616)- Backport "net/nfp: fix mbufs releasing when stop or close" (#1575067)- Backport net/mlx4: fix broadcast Rx (#1568908)- Backport mempool use after free fix and debug (#1575016)- Fix the email address in the changelog.- Backport fix for missing user during install/upgrade (#1559374)- Backport fix for Unicode encoding in Python IDL (#1547065)- Backport the cisco enic patches- Backport a fix for "Offload of Fragment Matching in OvS Userspace" (#1559111)- Backport "ovn-controller: Handle Port_Binding's "requested-chassis" option" (#1559222)- Backport "python: avoid useless JSON conversion to enhance performance" (#1551016)- Backport "ovn: Set router lifetime value for IPv6 periodic RA" (#1567735) - Remove useless libpcap-devel dependency- Backport DPDK CVE-2018-1059 (#1544298)- Backport fix for PMD segfault when BNXT receives tunneled traffic (#1567634)- Backport patches to make NFP detect the correct firmware (#1566712) - Backport "rhel: Fix literal dollar sign usage in systemd service files"- Backport "rhel: don't drop capabilities when running as root" - Change owner of /etc/openvswitch during upgrade- Disable DPDK on ppc64le- Disable DPDK on aarch64- fixes i40e link status timeout trough direct register access (#1559612)- Enable BNXT, MLX4, MLX5 and NFP (aligned from FDB)- Backport "Offload of Fragment Matching in OvS Userspace" (#1559111)- Avoid to unpack openvswitch 2 times and to overwrite all the patched files Fixes 2.9.0-4- Backport "ofproto-dpif-xlate: translate action_set in clone action" (#1544892)- Backport "ovn: Calculate UDP checksum for DNS over IPv6" (#1553023)- Require the latest rhel selinux policy (#1549673)- Backport vhost patches (#1541881)- Don't require python-sphinx directly, but built it since python-sphinx is in the optional repository that is not available on RHEV and TPS test fails.- Don't verify the user and group of /etc/openvswitch and /etc/sysconfig/openvswitch This is needed since we cannot change the user and group if you upgrade from an old version that still uses root:root.- Update to OVS 2.9.0 + DPDK 17.11 (#1475436) - Backport of ofproto-dpif: Delete system tunnel interface when remove ovs bridge (#1505776) - Backport DPDK patches from FDB (vhost user async fix and enic fixes) - Backport 94cd8383e297 and 951d79e638ec to fix permissions (#1489465) - Use a static configuration file for DPDK- Rebase to latest OVS branch-2.7 fixes + DPDK 16.11.4 (#1533872)- Remove ovs-test and ovs-vlan-test from openvswitch-test package - Add an option to enable openvswitch-ovn-docker package (disabled by default)- Update to OVS 2.7.3 + branch-2.7 bugfixes (#1502742)- Backport of fix for i40e flow control get (#1491791)- Rebase to latest OVS branch fixes + DPDK 16.11.3- Backport of enic driver crash fix to dpdk-16.11 (#1489010)- Re-enable Cisco enic PMD (#1482675)- Update based on multi-arch- Disable unsupported PMDs (#1482675) - software and hardware PMDs audited by the team- Backport mmap fix for memory initialization on ppc64le to dpdk-16.11- Backport support for vfio-pci based PMD in ppc64le to dpdk-16.11- Backport support for Intel XL710 (i40e) pmd in ppc64le to dpdk-16.11- Update to OVS 2.7.2 + branch-2.7 bugfixes (#1472854) - Add a symlink of the OCF script in the OCF resources folder (#1472729)- Align to FDB openvswitch-2.7.1-1.git20170710.el7fdb (#1459286)- backport "mcast-snooping: Avoid segfault for vswitchd" (#1456356) - backport "mcast-snooping: Flush ports mdb when VLAN cfg changed." (#1456358)- backport patch to not automatically restard ovn svcs after upgrade (#1438901)- rconn: Avoid abort for ill-behaved remote (#1449109)- Fix race in "PMD - change numa node" test (#1447714) - Report only un-deleted groups in group stats replies. (#1447724) - Workaround some races in "ofproto - asynchronous message control" tests (#1448536)- Fix an issue using set_field action on nw_ecn (#1410715)- backport patch to fix uni-dir vhost perf drop (#1414919)- backport patch to correct port number in firewalld service file (#1390938)- backport patch to enable/disable libcap-ng support (--with libcapng)- Fix an MTU issue with ovs mirror ports (#1426342)- update spec file to install firewalld service files (#1390938)- vhostuser client mode support for ifup/ifdown (#1418957)- OVN-DHCP is not sending DHCP responses after a MAC change in north db (#1418261)- systemd service starts too fast (#1422227)- iptables should be easily configurable for OVN hosts and OVN central server (#1390938)- ovn: IPAM has no reply to DHCP request for renewal (#1415449)- ovn-controller: Provide the option to set Encap.options:csum (#1418742)- fixed broken service after a package upgrade (#1403958)- ovsdb-idlc: Initialize nonnull string columns for inserted rows. (#1405094)- OVN: Support IPAM with externally specified MAC (#1368043)- Update to OVS 2.6.1 + branch-2.6 bugfixes (#1335865) - Update to use DPDK 16.11 (#1335865) - Enable OVN- ifnotifier: do not wake up when there is no db connection (#1397504)- Use instant sending instead of queue (#1397481)- dpdk vhost: workaround stale vring base (#1376217)- Applied tnl fix (#1346232)- Applied the systemd backports- Fixed OVS to not require SSSE3 if DPDK is not used (#1378501)- Fixed a typo (#1385096)- Do not restart the service after a package upgrade (#1385096)- Permit running just the kernel datapath tests (#1375660)- Obsolete openvswitch-dpdk < 2.6.0 to provide migration path - Add spec option to run kernel datapath tests (#1375660)- Backport ovs-tcpdump support (#1335560) - Add ovs-pcap, ovs-tcpdump and ovs-tcpundump to -test package- Add openvswitch-dpdk provide for testing and depending on dpdk-enablement - Disable bnx2x driver, it's not stable - Build dpdk with -Wno-error to permit for newer compilers - Drop subpkgs conditional from spec, its not useful anymore- Fix adding ukeys for same flow by different pmds (#1364898)- Fixed ifup-ovs to support DPDK Bond (#1360426)- Fixed ifup-ovs to delete the ports first (#1359890)- pull bugfixes from upstream 2.5 branch (#1360431)- Removed redundant provides for openvswitch - Added epoch to the provides for -static package- Renamed to openvswitch (dpdk enabled) - Enabled sub-packages - Removed conflicts to openvswitch - Increased epoch to give this package preference over stable- pull bugfixes from upstream 2.5 branch (#1346313)- Enable DPDK bnx2x driver (#1330589) - Add README.DPDK-PMDS document listing drivers included in this package- Run testsuite by default on x86 arches (#1318786) (this sync the spec with non-dpdk version though the testsuite was already enabled here)- eliminate debuginfo-artifacts (#1281913)- Update to OVS to 2.5.0 and bundled DPDK to 2.2.0 (#1317889)- Provide openvswitch ver-rel (#1281894)- ExclusiveArch to x86_64 (dpdk) - Provides bundled(dpdk) - Re-enable testsuite- Enable building from pre-release snapshots, update to pre 2.4 version - Bundle a minimal, private build of DPDK 2.0 and link statically - Rename package to openvswitch-dpdk, conflict with regular openvswitch - Disable all sub-packages- First build on F14python-openvswitch2.11 !!#$%&''))++-.//123455789::<=>?@ABCDEFGHIIKKMNOOQRSSUUWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|2.11.3-90.el82.11.3-90.el82.11.3-90.el82.11.82.11.82.10.0-6    .build-ideac1ccdc0620d9b02065057318310a099d47b3e2ovsovs-2.11.8-py3.6.egg-infoPKG-INFOSOURCES.txtdependency_links.txtrequires.txttop_level.txt__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycdaemon.cpython-36.opt-1.pycdaemon.cpython-36.pycdirs.cpython-36.opt-1.pycdirs.cpython-36.pycfatal_signal.cpython-36.opt-1.pycfatal_signal.cpython-36.pycfcntl_win.cpython-36.opt-1.pycfcntl_win.cpython-36.pycjson.cpython-36.opt-1.pycjson.cpython-36.pycjsonrpc.cpython-36.opt-1.pycjsonrpc.cpython-36.pycovsuuid.cpython-36.opt-1.pycovsuuid.cpython-36.pycpoller.cpython-36.opt-1.pycpoller.cpython-36.pycprocess.cpython-36.opt-1.pycprocess.cpython-36.pycreconnect.cpython-36.opt-1.pycreconnect.cpython-36.pycsocket_util.cpython-36.opt-1.pycsocket_util.cpython-36.pycstream.cpython-36.opt-1.pycstream.cpython-36.pyctimeval.cpython-36.opt-1.pyctimeval.cpython-36.pycutil.cpython-36.opt-1.pycutil.cpython-36.pycversion.cpython-36.opt-1.pycversion.cpython-36.pycvlog.cpython-36.opt-1.pycvlog.cpython-36.pycwinutils.cpython-36.opt-1.pycwinutils.cpython-36.pyc_json.cpython-36m-aarch64-linux-gnu.socompat__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycsortedcontainers__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycsorteddict.cpython-36.opt-1.pycsorteddict.cpython-36.pycsortedlist.cpython-36.opt-1.pycsortedlist.cpython-36.pycsortedset.cpython-36.opt-1.pycsortedset.cpython-36.pycsorteddict.pysortedlist.pysortedset.pydaemon.pydb__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pyccustom_index.cpython-36.opt-1.pyccustom_index.cpython-36.pycdata.cpython-36.opt-1.pycdata.cpython-36.pycerror.cpython-36.opt-1.pycerror.cpython-36.pycidl.cpython-36.opt-1.pycidl.cpython-36.pycparser.cpython-36.opt-1.pycparser.cpython-36.pycschema.cpython-36.opt-1.pycschema.cpython-36.pyctypes.cpython-36.opt-1.pyctypes.cpython-36.pyccustom_index.pydata.pyerror.pyidl.pyparser.pyschema.pytypes.pydirs.pyfatal_signal.pyfcntl_win.pyjson.pyjsonrpc.pyovsuuid.pypoller.pyprocess.pyreconnect.pysocket_util.pystream.pytimeval.pyunixctl__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycclient.cpython-36.opt-1.pycclient.cpython-36.pycserver.cpython-36.opt-1.pycserver.cpython-36.pycclient.pyserver.pyutil.pyversion.pyvlog.pywinutils.pypython3-openvswitch2.11LICENSE/usr/lib//usr/lib/.build-id//usr/lib/.build-id/ea//usr/lib64/python3.6/site-packages//usr/lib64/python3.6/site-packages/ovs-2.11.8-py3.6.egg-info//usr/lib64/python3.6/site-packages/ovs//usr/lib64/python3.6/site-packages/ovs/__pycache__//usr/lib64/python3.6/site-packages/ovs/compat//usr/lib64/python3.6/site-packages/ovs/compat/__pycache__//usr/lib64/python3.6/site-packages/ovs/compat/sortedcontainers//usr/lib64/python3.6/site-packages/ovs/compat/sortedcontainers/__pycache__//usr/lib64/python3.6/site-packages/ovs/db//usr/lib64/python3.6/site-packages/ovs/db/__pycache__//usr/lib64/python3.6/site-packages/ovs/unixctl//usr/lib64/python3.6/site-packages/ovs/unixctl/__pycache__//usr/share/doc//usr/share/doc/python3-openvswitch2.11/-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protectioncpioxz2aarch64-redhat-linux-gnudirectoryASCII textpython 3.6 byte-compiledELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=eac1ccdc0620d9b02065057318310a099d47b3e2, strippedemptyPython script, ASCII text executable  !"#$%&'()*+,-./0123456789CDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ R PPR PPR PPR PPR PPR PPR R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R RRRRRRRRRR R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R utf-8469f0b44a791df2dadb3f424b244d64040965ffa3a44f2c367fc7fe1d470372e?7zXZ !#,q] b2u jӫ`(y,yŝZ,ө'؄-{Ԉ"KYq[-X?0̢E[)*!+x&w^7FE)h]Y4$B:˻ 8?J ۞?<_Z|!J{c,ߠ,Ioه={Cs8L;ޙ́gIfQ=͆En$)x$5_{[U W6c\,U`Rk*.\vP@UD7Ʀ˞%Tmw]E&"A)H)zk _!\Y㎬f4T'>\8V2G6ϱWdžGܜQ0]7 8Gr$lS]bF(|z+3Bi'i)5i1 ^]t Ӛw 1BW[6).-0   >gOC^FwL;S$jsV$[xґpv1qubG{l[$^y\=1jdۅlZD`TܞS盞 nz%d8bG:_2N+O %FHd;giϜ,&p033'C?h9-{=9 x:!Ǭ1i`#LNW?Rbl!?9@em y/O k`3dBgxRo~p+9]īnr&!) ϺiHʫAv`hwDy3KTerr&p1lY%wBEF+ )Rh;uAar4(fH̝-~ 5s%_/m5/!kTM4Oy}d~4yg+MO֖1З7:<I;U *p"+# !o٨o%WQK2gM#2)='FgĹ8e%2doPǀGeuT5WuJ̙D&Wʍ{ċ~{\Pet x[:7?ΣU3 AE}e^x&#ncd$[%߸beM᲍2-LDq:],JàEMb̲]MҶ>u!F©g0 ٔ&f:mբBG ͎Fx9}f"?@7 #=6CC+NZG[w֐:7tbZgr^2@}!]u/uyal2+[ z3?qxlBS_(Z`cJWX*W9{ f06vFe:%':y<?b= - AOxu>5!QD?lEL+3VMVYcۑCCn|ʄa)mj aYA˥gD3oH$(uL|ߕL,wgLjAD|v)ȤB<Wj+lmAb0!6hThdOw-0I,HĠJ׶p^`2R{ΜV=KťVDn i W9|lcG kWN"~ʰqCp;3},7M[z:a9HcAH 0FJIA}iH nzQ3x;Ƣ]v ۄ6XOju POvU!3E\fa}q^$]uo ~SGSc$|j#a0Q:څ{b8Y|8ZZ6e6eMz.KQN>["z(~O'JSӃeX47 \{؆PLt4M#X<?h#,wkf2k$e|i5ծG?|DFjBEjx"1@7cD)-v'KyE@[GLp8)wl:@r]= UWURi QQ-`V4d=3"ǒžJK*4ֈu*Jm-l2\V"1j_N.bNZ49[ ^yq}oY%*Η},kwZG+اYI ]7a2t <7nnIqMCSGuz7g^\@=mEkzLJ,gNNX_Pqu6u-ٻ”d)`1 زTWMf@,Ls QF7\uY_ܡ1hՔE^Wys?p6me{*yLŇYO7ԵM?#@CEG]̒bsZ6D yu2*d%@}'À? Q/rY=:9gMr heCO6d*(>4/ f(,RJF'{1+ ra!`qՖ yqCPhjh ل8ГHi3d+`AXo>h#,ElNX9Cu/8l@ͣcPzuqUԲ2 F}7f{B"ch ^Mb,* |B8J>bVtjAm*vimF!YsƞNyՆLRE0s/$G=٘p2TjHHa;n>qT?AlwoaAnI.,ru 2-qeXSوE,na_hFo@3E'W5*<˙szsƅs͆dE*AdFDm\CF_*ðW'vmsUK=[$=ބߟb q  7k}h ~#\d5SA *S"([_p=C+bJs#zF SϤ]˘+uoZ몂CyH#n:H2mvWsgO tl V^ovohN.;4l\N9tsiJQw蒌r*ɼ*l;Ζް]Zs ľ%呸i;stփ*u^2;{yJV.͔g{%N[(u2,šjLT0}0▦m:yaJX*Wj$8e+[ڗjΖpiV[? *S/EX!%7'V ̫Beow>eݪe3A*mG#/@$E0AeX=Is?{D‚*%:ĈPSjxILC? bb6EL?2NmK t̗njV*?I:_J=Pj4D8`tA)6KbN5<*)S1(!HUz}wiq`1&ͷV:£!O$vaVs6N:WwU|(JOoIqDž ]Y$]o ց8>s#,9\( ۇZwZҍ fRHӽE3S#XenSPF kU󣀼6{ 0GBQj4ç9OϪdOY)Z3#K|M@)Hn>*o8Lf1nݚ6N._͗J0?øh^$o]>yw[ fxn?3 SnJv?R<sO.Yqá#@ZO=i-lAhY ?v8H"g8EI|GC $줜0,0Q+R\7XGN +'z b,L ﳛX\A|~Wn]1cU.,tCqtNXɜ`SV$~Xr{2cP/{ҲSJ@q;q0];+-j2XI2 wŔpݗB8֛p{a@4Ζ> Dit~Ca_2¿Qv,.:?j7zyP1B[x|D~؈5 Iߊ1g(Θ b!),/O}3[8M:-}|FPM23^$Q*'$WwJ#O8;CK0i 7k ۪2RI}k#&톃>nB7n11tO] _k|9u^1i ;49Vnq1Qh6t F #:z\ܙqUc -y %t#27*!LIZ8TB]'xrCOL+5%z*(:..K&p[4 Z]!;S<< 9*WEV[x'j;ݸ"^ yF.cBA.pE03N>u6sO&`wQ-ȞhTNբ*VW.o /Y2K~m"!j`smC>gҰO}FZky]X,8V j&X@'3sb|>~/wr_zװ ?| )Ә2t~ϺrݶqQyx.s; ӵLwOmgĒ DP,>PUй8\ϰF:IjeJ$<( 5Wxe ,X%R:Rk'BVUH }%~c ~4ges@ V%ԡdEc@o(w$Pze]*p43SiM$*u\%P#`ڭJMyt pHJ);4:8Y h鋂@"~XIc.ym)a,0-E=B%u{P +#XJYc@iD\UU1 ~ ܨTN/#'Rt0w\& 7Mvg^RܟˡQ@tcK嚀~ !`0Z[9]8r <:]?Ԗ.XvNkr6O[qe3(+ҳq`uZ];,#%GBysԒWcjm42_p_/f.Yy j!!/M5 a8!R pffF/ ܰbdį'?QEXa^,{Fx(k'Ѫ=bzo fɍѢUARi]*g]pNCdw="@aFMDp]4/c cpwחx.Pgn#t r2⺃E9X)j /z0HG#5i$$k>hwFuI˞^sϗǤAi:' yp)nV2@BY<}ue0ttxl۞҃ ˋH.O&j1 f=s뷃Y$Uoyd&#ȧ7Qs{ND+J!$%L"όEI9?!?pԟ^d?bSPlK'ٱUb5!㤓YIPTtI"y ES/0ҳ SnkbfՏvnl 0ohT.-$5>#6{'i|[NcǷ.#Z;=ML_?8fWʒw(ojeZ|Q?L ^Y ` tZyt^/$zSqWs< mdٮdQTl  xjq$ߕiMyp'Գki !t_K_."jB =0MvxoA{S~@i#b9Β"N3؋kY+˔ovJxkk<>!]b@X;i tld()X5/"جFsN=KdSIhW[ FF" 6fC߃E Q6!xS }'0*>'>Y:[#i71<@neh T[Eí߈>e*:\{My)*TGʤЊLU!ߕ+^ n,DH4B?k-8w&3koΘܡ%RdQ^*Վ>D ?)+Hha9Ip(;ӞT׆hDbW0I &9YbvAt3IܨیtSo,i g!Uwu@ܔ [ȌHC6WnΜ֜&Tkwm$Ǩ/&譨ŷN+VRlKh[խ"o$)S7?BH{GүTA]dG8mDJ7Mٟzx?^=XpTCC٭] n!PςA6JTY3@˃+7?#;K73dEOsބ6l&;ZI/<aE7qئ)>T[7ewOPDj|{.4¨q.bRzu҉;1qJ/n^ն M?-qί~eW;8;lkj0:4,Tw&ϗ;fh5-* Ռ&2<37f"Q^LԬ(9p uEa D M=CQPR/)Lx/ߔ1&{B04 ϶H5}ΈJOEƷqaܶ P_n[\t0bIx Tʌ sH&%ڭ>%wո˼ _gunAư3_MK7gKgit4tNuN>&k(vĪnQžhЧqPXQ Y5"M2NV}j<=7ŷ\WI-#w3`0xqM:l Vf#ux~oL*TâˆY\}'R;7*[? =:iqjSiz|mN_cbb]F.IAv2ETK&p&>NVaGDMg_:g|OZbs-d<#9}U8x(~&^}ߗ4YC͜@(\^?OF̊3iMC/-@%j\4NqSY`EKBz3X**RLrPz1ck#Q|Bo4q}%{hGDZ$ ܓxhW̗WBҙtQaӱd H¯Oi[ c[[VFI~ewg軪vMD[;\nX,ѹ&sm͙anɯwr|,F~0hy=1Xk #]Tڵ^x0,'ҀJHLs%bݑ_w C%w''g6_0z1o 7Y0k rRB6ba-a6fUPA.`.gsf%Q`\oS_*qũ6p,UK՝ ;*ȱ_>c[f~zT^ '0,%®`?D:z $5)bf$*ɿ JÜW<gD5IOQ&K %A.uòz oSXOLXe]kP~ oK%kwlOkI 9*'Y_ jr:]09/),kbxtC)I$iv6:!\) 6`mWA!U逰Do2*T$smkWw V-5p\"*lƙLkM 6Wv A_gpc_8Kv}:ub0 l6glLdak`%}et~4afnZ*<1P_`Eo3u2lrЖͳ?p,US({&翖.|I0ii{u765"Wt*H/svJޔR{4ܞS~KFۣaYُHݸmex. 1T촳~1[O[mS S<۾T5>{ռ/x D6KΚ+uu=Ydelηݠ\η:tF jZ4^&}Fp,J=C*T.?cʐ罯KRwS-jߺKU>_yHNp̞X+ ̒L*Fq'nL&=*ޖ[vQh 'ugpkA`>%(JaǬt o؍8MU8|ʜk`- gh>#Bܮ N;6  J8q|)D0SA~?(Np2`;V? {-8?L:q2|. 1įCVr6$zrcjLС&#$3O DaWornt?=)[~4*ĀȘB-M0ɎIVk9:JWxU%E ?1 %rB2n(Doj$Qx`~UW0Eɟ`c]!o^S ϫ,gL6-hY5}A=Ԩ -| NG L=@zC(HIk$(>sۜOj韋)` y4ЯBbcęiˌL"b6*)zl2(JpJ?6I/eKd = ^M6g;ӁS7`n(}}/Nv ŞЙ c dۤ qBf9& 0<O/v'EOrD Rlll5\pz94-zx$Ho݆9 R,&b18z*`I#S12=)Ql}3"MVᘕ8=YЂ-GAyo=?M=A%f wm$J0*o+)ga"'8;gnS 6Na~'"?g)Zo| `, ՁLgb9Hٖ.abv=t˗P)F[V= tO΀C9 v=`8#r"Q 4"1ߦS༼:$AY@|=\d/XHs!)Jrȱ ~ܡͺ.:Y2s9&NK<_ ŌVw9BS/=ࠧ^ vNdne8E] m.-.o ͭѱ$,L)KA{I"SpQ*L!CAz[6MRNڠ25z0;Op91cܽ)HEK (S:8}.z[ )urCYrP ŪT&팇wf茷-p!!ʇ21ut5fMmA] i s}O[?$0 ^/>ӒmHV;zA7PZtGAj DGḀZY3쌏(Gd A0:JK!{S>nR(Q ;:K|[6r+噛$hAY^mWmRa=14/y% v0a)rYmC"czxGWnoڤYc y# W kއRe2eB8x!bS9TXNGs_$9(iۤ {(wW?%xj' t׃i[1wp<@xyd$*f#.^N= ψ*nGC^K{v9 _1/.?kY{Нÿx4e Ĭy7+lh)˘+E+B;K%^9eN  ` _< gdQ#;`"181~< Ŷ$^l|'ݯć9##[}LaOؕܘ ~\E%*j ;DeٞX ~j0YlaǮH! m Zyuua!cdᆹ@OxN58-g K\\ |fv9N2fr;fh~ipӴ+PcP^Pudo_IٚDI_ 3%uMW7|;+Yoc"~ -x K9PKa+B2e)/#^*җ %=j~g&*bm@܎Ygjh"|AqxLSFl<5;l{ ab0~SdМGuO3ͫ0L@Ġϐ5n Wf/¼.h\.]{%GxkbЁ:*X^) [2ݿvt!ٵ0?2/=)^1HͶdrv"A)1\Z!rv`/~`!qw:}~4rP$I1_ԣn^V!XvcO)_\s/Wwg7 44ߊb=0vI=ytQo4ӈ{Ɲacf}lDT?@d@Vg6nb,bz1w^en }̮ҭGTE^<2CfMy5#hyl$`TD!ܢWv>Eי%YN[P*x5O >jl ΑV)ƲNFb9,⿕SƔ) M2zhQ3n-Yu?cryl Q(,HkVxLω#^o?&%$iɷrOI|67]4vm?4Q{11rXQxk[X{Cg.2GS뗵_(>dhvnA_'=kV1%oFI?_SpWH)wr:7b/7I ]N*#p2A'r,Ȉ[u@_b!]TVF{S;Bol{<7obf}JrS{bT<{iu y:*č|-]IKi!|5ml\%WzTEUͣJ򙴎.A[~HU`jol{~>PL;pVoㅤ=4qnx1ŸICcfy'֧؂pEܼ Z)On!QOؒa1$%?" B5u g/yxH 2My`U݂ >Egz@瘘Y*u%'71l Ebd ,9j6_yCmAa ]>'NSF|䟓6Oӎpf2]D)wvT^>jЁ3b4rѓ]x5XHI s=WkC⹨Bhbp>j^R 6,:+\ތ3r[ +CmR"3{cg v NNάG,9.gٰ+!6}r;o"Ipω8^ i]u30A2UI3.^_AG䂍( ;dϧz'!ִv59q/%_Wk H45Ql@vR 6ouj(1Fy[P 0^@\hXnH;{t:<}yy @M06t E,똽%7pu=d5g]℟kkwƒrS#5o9ha隰X\cٲ9v!<Qgp\3NCte -3L*hG L05פo'\ߋY`e2ݚP\F**#WK D-{QnmٽNzDlF?uzD[ΐ`p'RCh`qxb"մhH94$fykD`7?)@=bmӲ~~t4VI~(zd4̟,3a} ϙ>ުn%kǧDFKIuopn,JkV^Df`gk ])##8wI̚/%¿A8DmyH۩坱An`߿muyCD̟ ;¿g0dDԅkC {.&ЙNFɦ?ܹ߮ZKO5c^蠜R?3LH+bff$8T6Gʔ"zWx%ii] >0* wyXvD}~ypp.!@3B?°wkaDӢh$f|7=;E1wNK/qq H~Ϙ5F9Gx%5ĢR?88GZ&4ӇӂG] Sk8G2Vҟk۸<3[;6۩?6 IEQ͙_IMjǨ6/d$i|N ǔʷxlugE۠=/Pm.RP =>'RK-ޑ~G"&Vv0ϽlVZUu.{&PS@Q:': H-k@KO3lwux@й=ɘJ~p-%iCd1~J9F wut0ӷ Y7 Iyiά'?MTv4ɯM sdӵMX;@Gt5OТB ? ͝ pBlGo5<5&ijf`v =JjK \@Җz&}N $.թ$hY<% ؞n~04ix}+ŀ)GD HjUd(mHI{F*@_Q]ƹFt9ޭu T>luu R|]A\6;S,+"Hk۾z9;2|&kC*MSo&"Rׄ0N螄q~aF0+(f+עže1ht3T `FW~)xht v^d4W(-=޷{L%=)`/  y> F#;S0yjjQ\$~*"MLz8 yLrCay#Rkxhyk7C5cLoŠ|y ҏKP`y~Q #>>*D6, kgj qeQ`M.”5kCk6%-=UZTeDrh3ǽy5Nk 7oW&x5ˑé"%UNk(TFibo.Ah2.!=a,a98$RF 7umZP}Z iEeg }Mʼn l Z'ީ~Fv3]ڂcF.Q(Yy~O=017RXϗVlEe:ϔT,utPƼ=b>4h\,ӻV7ݵqΨFk W5+GZ`|Vv_TKEZ-7<>B2&#X3 #싱*{Yd%Z8O5QGjdXʛ Vz,Ѕk]7r*LߑFlIh,g"ǯ̚+\NN.Ob m`کV=/EP7@J(PWOe}Aq% dzoۃ3_;ިE"n f\( H'e=/(&x>KO߾/,T,+pz#X\v<>mT9y[U6>2b*S*TGoG'CPx,;_wz{spT0^3lw^١9muJ҄-VJ @Di:Ozvc?mĮ9x~QOχ Q6,]!7Dp|aL\)pE?hU;-SŰ>d<c΂kuCiICRH9[-z-q̡+xKa=FbiǹDWdo܋IP??\#NV-ó+r/- zk4x⫕\|y(V*ϭ.;nox[O{PHO^$ó |djjjիq_b ljS$0)z<>Gx_"ŪFiB,͞V} 5R<23:11-W>$疽l{Jԉ(P"է~Re7'y_LSaRɪ˧]WR,ao9KYJʺ. ׻lYy8PXxBB1bd%iG&Gg}R8Qyd5#}FMxt6rPm}qq16Ru+HS.1۶ln!3 9?jh{`p?Jy-]{uɶBvI D% %{-3P軮`o*ʴ." a3\dFk,:?֩X3) bd=z2ݛc(dʑZ~7 .KNC_*fơ m0Ib/͢SÂݜqwĿkvp{)g!9--zڏG jM9/7N7 Oh4؂썷õA+Uj rz!C=[c[yxb[-]fn9tRm }.'X2oY QO$k/TE[C/ve+<F{kT;H'dz98嶬y [`F -ߤEA`Ô>|r+0 $XagcD[\wvP!"+nL1:1M׈bCkoc20:yxv`8Ec_De=vGPaoCFJx7c- >OeW(e>1VWcSHh !q)pcĄU6}{g1|*$tP"Q̑_H |rv'м` %:TÒ?`gQufUn'*7u2jz@}==ufACvQ&LIMJ"י }ܒlƉ0䖦V-B"#O# Nn_HP]&B_OrnPbFn{>ISǸ.>kL)Rϓ:NeNO/]߾Vma)CrY*yR})nE(i8'ow${1c[n4+({?+lX6`k&<587}>mTdlDo֖BZKW* +Ӊ :GSGMCl(9b,a Aؠ7pdM2=Uk$@Q~ yюnE޳$%wx~0IR"J*>h(?Vw6%8 LŔhW1tq?fA>xs rT=)U+9x$:7t}r؝dwLʉpWqWKK,&ED I+sEr`Ns7g|u,<@W8;&R`#p_uO4*"eπ Qp(m&ԣU\AI?p 85~LtaO݃qܦ`fAO,ګ.1] oR-Òy) hea"+% lT %`h0$R 1Y\̅^*%&zڋLOFK] Ω"k#15qsm 37nR")W'#b5gڽ7VZfx7 ئIh;&iĤ{$Un@Q.G 6w%hQ; 1,1|/(-=|`iVJXg/=72P_Etu6l1=!" IڥZ4Y2:κOތc!sހ]S|OMycT|ۻ }`ߨ׼eȕ')6`A71+em~ݧbP%[եnjB.ڱE{aMhNljJh~ad/7&]kg׭tDo]C5N/׃ᱠTA`X `]á1R~?Q+-J$؍#.)lYmCC48u/_UxXUq,}}Xv"J3⏖^^K \?NAb/9XMZid\y?l1z6BͭS% wL64oM!xVڽj+aJT]D|)J=t+ c,+ -YC\{?oR*1#je;-g&y3di=]ÂeU@0B­ic>.n;mV 4*HCg897庨Wuy/H 5Hpw$$^RgIb~M+O[.n umO8ѵcP@̧1} =D} G_|FC+D{L[2$*jED7+\#j1"+k%EɀʥKP,K f=vqBfR-S W T ^9ݶyt{l,?z0L^ ފT +7]s'w$kM*w| 2ih2uOμ|4oZ 7GVNT8$sVnvVƶ%쪻DPczh_d4rL+# ͇qrje Wr PE]O&vT| c0hu|ҠNRO_g1FU;7OvLlsܺ04*k B,/wHRB]JF:<$~Il&KI O P0@NZ82U9qGOWX@7?V-|;n6)L y9Z}(5ӳ~";$Go5HD9<1\szoYWCQHűYɠŕޅ«P!Qح\Ա"|dȰɬX o8Lbu,e*4*L$ 5ABA/؀ٴˊ1JHUs=ɼd C}[3R!P(7Y|>}Cʮr^֙b~hm# < ) lיƗ}jZ1~7 ,*(BG zo ^b@pd]7Ondz6pkk@Vn|_CY5GyS4?2fk M賉>fA[FZշ>XJoP<d|Ò E.w`uUucUeX㎓T޳[Vɛѭl >~a_4RJ@`}"bwt2$^ƍ4vLe@ٱO ZUWncRoSmXd @m5(72x#Xu25[rҲB&v70ljlf>A1 W@Ꮩmgyq92qelg>!=Y^7x~ f S]vژ)+]jfy Ét}*5n4p:թ0A0j'VaA m7 DԱ*o=wb-Sv<4_UO:G˨ۼ 9o/YRiHi+r_&%lءu4H B#+sS+GCLn+֭Kٖ? PSUw θqp<2zj"G HhNsI0ꤐ.@*Ƕ"+`f !gu5ՇIK %(X-~t)ޤ> qQ{+^@.%qm@Jpy%I3L%\ %ÖrX<5w@Oajx VHrq.9#ɚe#u1-8sGdzW&y wyx rW"sKq0%٦Ck} ŽYŻ3sbˍ :(ܒU0>CwOzX*qQKbgBCADObib7ycWV!B1 -[`8CS;y#LJ= $I^Q,LUۦKb666& (K,%Zb yQO7ĤC`q3b@O²~U'y¡ow-ri4: |FYu} N 9+sP$XtW,)9CS΢W5[m}L+aO,n$Z58 mjXAhтn;NϨON~<7Mvg!g Rt}H%n$Q$vϟҋQHr/F'v%qs GlFXŮNb,wbqQH޾es.~4>Gʯv@JL O(F]BXn +SWxY$1!1DhTM>AܕsYV Y<ʐ8Ѳ^v܎>d+ؘJ>`4SD˾nhZBP=ݬ;0jA:skRLIK">G)< ؑ(+OYOCkE`b` tE#.ۊ)HBGӡ>Bn&J@Jt]1BaS|]#۶dhe̶q&n0+z<6@NN;L8c:kY5 Q=d|)߿{s~8-2 %2D^d M榠v.K5Lld$UE>XM;0KGVF$r&wScn2̋p@MV=j7+jRs 8D5RY[5PNRhFnI1x,<2!7PU˛_3>WIqClo>n q 8=W uY%"i ƹEcGwWNzVCȃGCy')*ۮڞ ,ł!c_ 1 uUr ѕkw#In[8!ъ2_.kZFDA/?!`B}fksef^u0ꈈq*t"wL jwjX&]< 26®YV4/R2׶VQǒyw2܀g3{ktS@o0׻%p2Js3;@kST~V`|OGS CR7R:@Caq/E1Xy3䞇I*3udyB GB1P&XzT65;RH8_Y튙1(V7K_P y"7N9`VF{`:Z8ziȇ(5qwwDS ~sGRZU I6:{4ҠmV,J*s@@ԭo!=ZSF|׺^V6K8țxySU|]z+5y:һ_gjQkY쯋((*Gs%śD*8Iܡ>?(i 4vkE9c`%h2I ~ob;V݂M7C{.BEx)2|֕)8EN |5<܃..nt{(lc*m48_GVx  BUM<. x]] jęqz+xǾ!Jh|NXEywm7y@`^jQEnS(Kb6ܩr +O1,ǧPD5B?*NRSUV[Þ>7y߸-^+/^;"?m?RblV  d t?eC e}'7eMƖ#ͷyP$yoP0Q+_ԃ7ۀEA gT0t'¡1\]BN5q=s]g=8h8! yyi AoBü qa3gqVx>˷Ex?MU8չUOe!'oif'BFv9KnPΰRy+.1G;ϯr)r|kትJz8 l ŧ-c)bxT%i\:ϟ0[ ]?<$X$Q6xgHyY$Լ`3T&-q)ޝx8`9^`S /]o6n!)D5.݊ B0=* \ꀃKDg}J2y[\؛j;ʐj`I bh$&J<91EebqȋvP\]%FPKb!$z3^e3 Vۘ/2$X? 궐Dqt^,q[:'ӦEx njS& [|PS)e< 3B:w fU@/*eN"CoDR=zks^._6L^|-2D4s\sOsy-GVr՛ p#o?!X9 +*<||&F5qd# yu*^m궓gN#)R6O?@HAˤNՒJD ݡJt2{8 $V \Wꑽ¡1_u5`bԳ% XQ.{ړBxo(.(LBAUVHÁWre7iOVY~RĈ_Rf6 147 X\{4YMr/}.)]diuuR^ 2&Fxm  Xf0g::rZg;^s5T2^}]Bboɧ߄6U3ƧehgpgdgnisI7B}xw5蒻\{j *& ǑpV Ǐ.(?h+>0b`xW2ꃝGfI0 b$'TEEV}s{A~wϾtyA<ϰr/U5 a)Ui.嗦Bk&ιy$:i#-W V O#) AۘNW8n?ĸ^7]fj5'39QwfQ>1x:T%~2𿇆 8r4]MA2ŮVUL„?~N J?3ϻFu] \baRRpn%; >?^y,J:IJK~ (JY|v% uiQK7XyfU";%NݔGgcrD7HQy1YWzS+{]7t !lKTp@*pb+9:&0\幭{wz u3al6}*ܜZ܁dB+6ؔqگi#MFy =G>cpt a_C)^)02fO,Fi;Qn9g(] 1zd[;r8̈́~e,~1TW~$xTsۑIbSϨ$nm9XXMn=R푒c 1"P|e/f rγbټUS~>go1 &/*Bt(6.Z01pR CN`u?ЩJ &\3\ibB.&e)zѬBcє cXATY X>\mSv .`R ݏWL:ts&Lb kb+YgͫJ?Z l.#3ֹZAe#ljɈ%uu["ڞ}P{er78=(<yX]qꐛ^.0!1*CW {úJG"j/yı ~щKU_^}F Uz&ЍJXV(l(c1֨37h7ƼԳbzj$N ?T[`]fmU6EY2MYqt\Pp;%5Hh|h_rOjun 4D`FaWheJy0+ *F5K(Lw}Dv[vQ7)P9fA L7cRdB[C]ϵScu{œFcT5dbx, x0zx6_eNs/:Uchu]VO{ٗKq=,Z ߔvxMhKOddTc.Sm W3XeDJBjJ3w<'moipQ%C1;Fcc'¯tV׭[re.gDӌ2'}k@\?,rs|QĭQ4IV15NDJT7kլzE-[J.PԨOؘ$!ǁc1Np o3,[YDb@~:<׼7Fb*5.o{.XOr|'~PYƉ4 Q8g6Pjc{R$G\fPΔUt,s"bP%D묰ZZӺЂ ~ėeAj2?40>%̔lC$zf<ΓTM J_(#]Ҡ8%e%uurF8^T FifzT~_eע2 Xɵmm{D[&_D– vW@{ń:gȎ-t+]ysҚntj;kKM;˕v6G3=&LZWyD ,A~)ۋ{X>Epܒib%ֺ7Zt;v7dml*/t4-UP ;> 0jB5(b0=z [0ڀ:!Hk H`?75KHDxENs VijeÊGM؁R.|#2ml50yP3kZ +G7c-iJW}ٗYTޙxʢ_ԭMO?. Ư:mNc @""YmG0qO;kd'.s ޟO+c:V6#$xȫ]OHSvF9ZcAܛ!N4WHzRgf0e_Znzŵ,]Ĭ}{,ϣ<m!P1OkZ{6aX!w#pvMlj0l ػQ M4ňb ig )o!䗉hia9Q" Cyzc}%hi=0"ѩo'GKRSM#Jy8u,PH&_'@#۷3N} fvrՄgdHeChxT%۶B?0ʓYVD;A-XW6v?c)g=Px NlM}i%T#g%VÌ΄^s> 3*gXPvOe neT'UU˺ʌ*C)k|ЕVKe~^^ٙ5> MB'8)9*]N74F˴FpÛ)}W~(zzid&{jԕϠ^U*{S0u k3gy}u,`>^oayw[R;oFAJ:xiD"ՆyﯟBm7/:z3φ'K^Yri6d0 Qh`>x6C<v⬿J}e񌁪6NMq,"eSᏪ'٭n [; mz>MR?{&8SU<μ^\ވ#P# 4/kJ4MD -ֵWo&ݍ>!#R+ :s'Yߎ&SMacUbP~7M,וkը ѿO5\+ 0Y/n8@}\حoQ) h-EmY;X]g my~ O:.Ѭu}S͘ǃ0;U2kCS_S8"p̳ 25ᤆ$_V(WpN <`Eftx_~wؽ3PJ12.I4rNflRAe=4c15O I9EA Y)JVΉ:47ӼB'Bk&B}TEdWr[&dAi+tV1,% R@MeqdKd)ÖJk2"BN;EȨTa^ 8߳~<:i$Fۍq IT*_p%|GI^c"Hx~`lQE'+$hFMMo7@M_9izbtl]J}y6fF#@(´7BH=5Y}nj#AI'>[/fnp;L@Jo2Sx ſp( Ώz#Χ病"-ړ5XbԀ9|]ah20&Ȱʗ} u/S3;JN%;GH[ -洵 訌W=Y%Ô(G( 'cF'cѩf1 ^Qch4c KXɣf.>: {a8?!3ٞSTHYju>:~Ď' ЌDx=eUPo:7R-¶1:28)ݾQZѫAww4J&ƚK!Hs!: ?`\UCɟ9lӾT6w^s+01`JKG8l=FV-~ArrLHqw  [JL덄~ [亝ӌw ҚCNj3=y9r(9BNo? # gOeOJ-TQ3G͈ix˩C7Gg&%אKG]:'O>?ȏt:͎r~xqwgWM>{ 1Pn~ w"uM^}ɹlvom/k(PJy*2A*s-KHCت5&R#szk] aP.c#}vB[ιe@'gWؐ#zs 0a#wĺ+4AMd-Ėkv[4.(t@W*:ZQdcx{Od&Sx%ZRy0s#-?QT/g :,$^ZM B~*pLrNBX^Re0:rنw4{L k\11!,Fgu}M %&`#$)c+Ub :dnLΘNV0ҁ9Kf ܻ󎬃/l[ؕ )FC؜ lBh20Q/-t$F(`zzF֠'QĎ%sU30LB"h+q`AC+e ـ>j=(Tqj6`|T zhi}MMpà #ܷ;܄9!.ljùzz+@|RP7>>.X(\'A_2H䅵<•=~T#v =Gܮk@JR͚9oGUJT9pEืpSŽOxM~E@a3 @[9HcS41|??as̨Qx6a2dcPn |"Tz~ l̄aM.ZѦ0L-:<^[}c\ VOhxwx1-*| @ [eZВ 2bOn d+>aCnȩ\hڊFUs \Ha>Лi]M[sAu \I y:9$;TcE[bj=197qXU&_x0n~!r(qryp7^bs5*> $^pXT+l|5IpL}4h}s(9nw2r<HKqM(DB~|!׿Im9=]p ՚5Aq!Rr|X$tU-No=l:U{_In[u1JyS)BeJ >yzo Y+:O`KC藈ҭ> c%M! (EK#w!G<{nMf~2z?eD%r4Ka̍κbGWgLwd+˫ftLlĪRYjIz UnĠ`OћY0T&-u|Nqa3p[JSíl.1-<{_//שvo7¥葥Qj,tpy'l*/Ȱ9#e5l|d%7 Eh ?{P7[Rވx ]2tiC=:MND$6I4bVVY_PKWȐIcDa=%;Z9~|kv#mc{X5VnkNC\=PWuMssĻlmdZ>XvHM;2RqOWGzKM 摄3 6]KpIH`}x鑇6[yx>b R%WPh:QZ $]6t8X{UM!+k{(nBFp.,^WJϚ68]w)|#67=/JB*P^rR@Ld>&hMJ'åɎS -b'.G_[ʾXڪ5ٷuJ/2H$򹽔^\NsÃ:LL4He˥:S0TEN:?|`*v\HO'/h -r5H uf$,Ԗ7vC ,a|Vi`*@Y^3&Jr?X-pdcQm<8c8Ws0\ _OZס'P-~(o}Mt]©{<lF@FO0B r>**95x&uFl5lK,}QpXZl/XbⅉAo珍nP'zC^4޳Qfg ^?`"|`g3T};|SEǪ)ȣ3VL[QkG*Cd߄IU>vfZPN?|wG$,\AA^Nϓ-5Mdm~8s<0Qfp4N~O\9GPZ\F\S.[Õ@ʁt}F"چ/S[:VxCWZW;M8I_, 2a~phOm>$]AM2 |jPWNH;k[ԧM!- EM%h-uup&aK咠m`xY -!q0w째#YO_ZPZja9*\l\B?b (0X (E\v : gћ/[uTXB tI0OIK'\vwR]Lz0T'W@7'EBVE:U?BmCK(t <9l.F;VWu=aNe31=7*}w4sNLtvC6㭈;ȱ]n_Uٹ .{Cp'4<t`Wz+hX$H ϴx5p?Hz+݄<7e7d?] 4Z=а&ȂRTRc9.GA?~P5xD48e¥?䍌y}w2l(A}* [e/q?kt>TD²ZL@#Ur }m"{BV|nXәf@Яo ӠmXHnN}lBlɪQՍ]>zرMߒX1=K>o)RiJ!A%YusiEI<+hFLimr~~ey$̴$hnb{8J*ȇM n:n?GQN,}xĤ1̑AoS߽xӇgQOE&Dhs̄@ήK+<]i{bm8Unz~fm^}m Wqvu=3!f%h[S7,5__?^zȾ`R +ΌY{n̞~J,BWnc(vuq Ѯ h BYj[ I dH@-Tyf/$hA˽"+wUyhv=Uy7U:1$ Y6?`h$i I=kODzO|`; NmΧ Ƞe<لkDWqGwt1Ei&%y^T>6d". "sXquoLVܗ#X6{X|$PԼL$БXtCWXqR]>fF .fȎ[ ޫ(VyIT7]кF83%ϡAE1!dm*Ŧdʎ" ̞=G讹t}T'7qV9_T$_ه0B“?r.e[ w3⍚B dU=<{O8j6D}m.Nzvy֪\ 2gO ~Ήۢa>s2j]~i K`{qtYE7C)+'$'S;39~n|bs.CUfzM=L_fѩW[7Q5uRgW%Jtu]tPGɉ$78ؠtՕ VWvLh=mlsw-pHTڲpuf= )Xyyd!wuns̻FwS9:4ԧr\3Q("RuŰW: t}t5ZW ,8+M⭐GcA)5*Ӥwwi?MT_-b6" (|0p%:]'.=~m)Min*;W}g>#Lýc(%'H)͗3Q+;Hh7Ywܓ~-ye*WFJf,L A I/D2HR/f ?V-*r1P۪%Q0?4oK$I@ pڣ׏q /eXy$e @yMj>}7}w+8@ d2fzNu4u=ϕƓg4;ÃnqQ.Fcl9FUHB#pƶՙ?k^ ^⼴d؜bg7':2wc|H0Ա/ȸ;S?yWeb)PyhIk6sxO!wGSxL)sb_TUm+Rw<wzUnXv2;=*'q%{ds֍%{?vsDaEώ͸̘z0 qmp?Sl}4k*;\ ;I=X8U]&dEs8EӰTm70X^dς^3Vߑ yn d^T4A&EQ޹X~Pݒ0NJ.r>)q~(xKb8xe400N\כI `!.Ѩ!ip]Ipġ<#&gut6(-Ʋ9Jү@&. Ќvɪ)eBU)Y!}xs%Ѻ$^I@k5,+&%>g"ЙT㞳\L%SNă2s ʦ.*](]+O6m2c( hPnЍ2fzv_.Lp >iEWѝVCv (p4A%:~9Jڽ׵^ޙ|Ǐz>vfh e `Pٕ/6ůSיyA dze +x}Cgdj,^co6}oe`Q(iU 1G³E$:oJEE0OG^t _S~o: Aϱݝ4v|?=83Uh+ONb!'ko/۫{@ )}i2-򽛁؉3 bJYf^bcYK] ^to|IL6nE7ٶAzi#B#\!,XJ3FtۣjjX'])hPwp)Ö h:v ޑn;7S-U먬 ~V1z& 7rmZ9*SjX1ҍw Az){q*$h(sJ mas.[@= XD5b#MGzsu2*, Eoӑ!u*Cm߆HEֈRQ/͌׺i2wPVo.'7+ƭ+e_NϨ=6 s)`h/^OQcfl!Z9KmZK,Wme0>jڛ qwQE:.E $-^wp ]v`кfow 2W̯ !L\5 18\:ᶀl:|װf)xoCGJ6UfJb|e܋2Y6Bfcҷw*WyOYb]; WC3|@ʢ>f葌4^5*r"30fg%qIH^5VdOGT8 WuXk%̩ςܛUu}J#yZÿGڸ| 4M;ϐZf;^I9y-Sm]9 vclG7:eڬc.-nd [!]gg>YFU_(+_Z$O1nƳ}"%Gdhp*lN@++LD8?0\x,y7nm<Ë5So&DO)k/-BC5=1ʳ,c CDž8!ظIՎv G4 EaB~8p4*_=K ?]!V{?^Z (-Q; <1B[n?:eV&7Yh.?Nd&а ܴ9>7m?r<%cf.N?^=ܙFp .5jզLW.o9ݔ}]zR:+)̞ɄpdЎ&Ÿ^@[&&B4!{OԵ֧%q]="iЦ#Zúa|}/ i_i=o˲,F bO_EIf>(Q۱ȞJ0{fYQʚewoqk/r` &Uy}P/wGf̩Y]RaP@}xrtj`i@JHqsP@5c61?/wg kg1{G(xnkKPsLN4)6KKS|{|-F},s$m`cXrM( 梴iC E#$}oCBqቻa-Z$43tC Yj#X68rPK 6e xiwv[_;pRgF́` rk5\a}Ll !'ا67p1rs>ԌVlڝ#t e?zQ 7_/.7Fep'B+Ԩ&J&Τ^93'zaN\b6,zn+ڝ#ܿLPm?Mf#9µYѓU̳g#ǎ썄yL9 ;GXQ_ l<߾l`5kE? 6՚:H[R5,r_XE%8crUW'MPwD<<'~Sv|H^=Š*Nfd)R-Dq_⵶B[lT:փkcIN9 yGO/uu0Q$`d#P?W哼i+SUzdⷾ&u3d2יT|uchW-WYY AZ;T*sm vbgvcitqz/, lMꋱEAj^ϕPnTma%3;aO&TA_DWt_NiQT'఼申XmJg9HɽLbQD1ի-^;qpMu ēSƄ"K2C0| QcOl 53:k/kao%v]'/j8rێQ%ACK*Wz o*!.l|q-M`j_f 65mĂڧX1c;BRζ03ӐJ0X}8訛|cx"qCknR ֡nT BkUs?A5jpiηk)FNxFoZTp68Lq~춲Ō׌&>h*??fxbffq?Mݴά{CT)Ϫ?yjjj۱C,͈V 0=k.I9- lM,-Ao4&50&)M_Jow9|s/H>*mԂ*ۄԂ[{1}cl md®- oZ݆Z##GX Rd˾ֽPOa9Dr@>Egb6}1SJGD*|杵橸'(dbISьgx6+^T;y+%'i_bȆa;^4=ue| SS AQ-uxFF8xA~H21_v6qGn(|&K wB|z=d/u딞p{OƮհ: V`#649ndb'rrQ#(w~糇D kԁ^OW:UVL[ _$Z3-*#O!µ{YAqdMEw tO\黏gڬT0o7;;o6~gιޥ~,Y(y73'ٴpƒ*ɡ| |'Aɣ,PHz+(ɘ8 tRo^k$;f -Yw,^.D5yGqStv&s&t[[b "h`)e ĥEʼn_ ܫj:GxSWʛp8H8:xޚ Z;{H-=1eP H{G6?g_氢ט~Kҫ(EJIP1};O*7{!#NB4w΅ k Ahjk_@X*DwM-2`;~4SŴ^TʛZh^olud8pIte# !ƈ̽]BBht96O`n#c ltE~$l !ҹo[DndtKijؘ #DУ(H)G=Og'c9?z. JZGuP5(?oêYg|.TnY#f~sNv; FEOǧ]As6枅_טiz8xTn4m-#)O1 Hx :]e+`<  _ y$r[6$= rdp(k8F'^Fl8Y{Zv?Ps598SbC8h tLז{ )2IUTA`I&~\yO=v L^ӥ@j}!+& V'9] gz &Mj T9GGDIcڼk4>+% "Q$qiOMo.!L%Y O|< )gыsjEA?5tQ8!=TƳ/CYڋfvW,3_oQT+v'C1t,6-# 2r.~S)pbJWC UGe8)G*e`đ 5A9.1iJ) z4IJ<<6ӾE6aAWJ򠝺SsZ- 7zbܴKczW*93B<ǤTMxRIaOûWb%LhquK!wQA*!8Č,fgcXeu#;r$MiJϳYi7uj;Vbrc+y@1,E'[g…^Y\Ley:匸F{(J~/ uMh&{(~B|Yo Mk!o,nH=S&uW Q_9Y׵7YG $ȾH<y^Ƚ@]"+(hmihR -n07ٴSwwg~Z$&0~b٩2C 8xW؆5(s6tF%4Y^F?=NE.3T{{ݥK_Li [+opЃF(l|9r9ݷWe4Ӆlȯ¬Boradu`=5gus066]NC[ ^ ה)=ɛXvk鐱bu]GU>}>=Ŕ6D=ߣ2| Gk˲˲kORm%$/\9S F")%iV# mR#2W$!= {Qmʙuݑ̱Kuc =oV9 ?C&b(bTLJT`nE"C.:;9 x[#LQ~j.r9l`;Iɏ28̬;--4K$7ׂሳpQF_j]͢V\`Q)4K`1fmՂNCErT t QٙSN.$b.IaٝfstTV *>m?vq NljYY+BWaQ Z8LV'k=-?u^΀uw4 Ph&pFs&m[`$!I/qq^ir[^B4*lhh 0BPOJ`"Jr*P_CN;h__Ȓw֋ ~!δ-e+iN ʖcU%\D.1𪬃EKߘTm#΃w4j7!o^#H1DXڇf\\N(-ow{p-*񡂬%H)W$$=n@[lVwپ21?@0*@du}FY%h|juy7&0+b$-ғrsn ?  _ФttQM- ޵&0 ;̨v/w|S59= v{>Awǹ+6%B_T!jO*"e1fVSܫ0kVus`FƠ&p2!n?uc!Q 3qJ/"?cEmG\hDtTi[ c־%oJGU=rohmIBv VCL$ J\գe8N{/⃸MYq<&Y&qH ׎G/#tܙs>|hZy%תNK:F(mQE>2ԗg{І4E0+otcr$suI^'瀘).zٍϳ 5'@j\Zu:9a7.҆[7CiȩDkd~?.ˮT*1~lZi_7O7, ݣQuWXq@!]L%ꕷ$U:Yl5Y<6{!&l4"wփ\lR)W֩zȲznS+S'~} Co /b~ߠUf?~YA0O~oE z+-~,ISrnSsH>>ϮoA}h"-`۩xphU`c5(>QoZS9(yn׿amGCT':EŌP]O"*C{;q(֨p!_s_[ ,\";-Vz {x{ɟ8r;Ku]*(~ 3L)XͼpQ~o@`%fٰTj3LY !Pnh-.r-O_nK ![ԇ:h?JZh8򧘅ۼXÄi6ڞ/gom.⬳aJlY0_7dWT'*` ]fn - 7G1{"M ew ; c0@ o4Cu ..9tLd w'$Wf~ȶ;ue0w!lUWx|HJQ.V@%K(w+@` \:x_Nj &8aʹTW6UY TX6/hvhqJ2 ZZ>.(y#|cäŠCE0ջ{cGXF QARb5jy<_J K Q%)BTpp{yE=0%k-iJ`R^7 —_&DQ;\%ҳ@aS9LJ,i"F L׸U}e31/`POJ'*^Qnq, =tO1wۂi1! eNc3X9A@o=DFvOV%7ھss-Kv h7r\ӱ.^&BmUB00,/H,G HcBwhV5Pq0-`.d9H"s!U}QRk<\Ӵ0y1]jR3:Ac\\2~g|zֺkvDkzW'?沰1*32u/x8G 88[ښb&]YExv>1.>Oqi(o{a[e+'BFoU눖F)Z5T:cb$O>~v[BOR38SS% s>@:1}_Fazm]8yhX&(_稧#%c1+p氙f4>9=lBVrK|l =w*4k2 ]%a'|?QDU*jDx ,!ܶ0Vt/!6-hЄoէdު]!"LvT\pF+SΚT]Fii ]EmٖZE1*iAҩ1}۫+I.]fX*ې^D]2`-=p3i+I.UoX?-[Iz&4hi h . GJ$Xs 6eȯިu-)ܠa ͋nOl"xd#F;ֵ0>Mn#u3V; ,`"{h}jɚgY sb@4\~_cn5J&k XZ$-~;Xj!<w0<ºZ]XGrݼ d2S[h߫egRSjn6X`ob^R'4[ac[׳l:Mha'u5 S Bpݶ. &"0q3s[;ޢKH#et.`*yαV:a. [WñdB PhmqX2xtA q2Y딼 !Gyh?3k'AG 68ns ۦ Z%eՏOEW9K>|ϽRB^ʬp$G#yKƕ7^Uh˃zxtۡU\G0{ ,UʫSB7.}m ??ZR{a.$X~PO܌bi_ ԷjWjpk2+, uZrg:. Z"!^`\"v8xFWX%H/`_|`OHp. i]<W(=&L4 "DlDŽ2y=]X)t䩟9ek08I#g86;"jh-^jep{jgz5>nCQ)L32V|Țϯe|D7S|ls4k#4YĒ:z/J~m(w3֊ߒ9yݾ "kv' #ow1 yW$=7PFiݗA"07q[@Abb$9QāG{x!`@ "o1%\h=jIMUz9Σѭ]縭 >u}Z~J_C2];QE֋NiF5GbNo|?QoG+D:v8\{m⏄툳5dIY#bl>3~*3L/% 1 qx<k3uoɟO6(hk4DW{nyJ6;idcxϨkYj, cPST硆ŬT7 F|lbM ")M./]zh&gZ8rˢXUia;s^ 7mZ-yD/zQ63wu*xyroUOLK9_F J=~N ȱ87w7[@U?#txy|}OVfߦ뽕gzޢ͊3kՀ`{U{~Ҷɞ =~ p3dNVbˍ4Α,ڷ1(,>-t_U5Ƕ>g=lfh΀8e X4 `uD@"դ! Ɂ$CVNo/ 8c&O2g9mnVzHg.}[Ni ᦟMþQ.R.m:\Ӻe $ݧؠ ~˃懗tbs7dgeGPߐc`"1i)@,ؤHtX:֣w܉<8|88E<ȵQ)kA^twmʯWw3X3A4l_8_O\OtM ޽KTa44Nˇ*` $&g)UƇipܷMZRjq-T3 ~gsp8(- n OƮN( HDr2%~(E_!HٽJ(`@ra)|-/~%,އƳ([R8kz%Z/*visьFsOѳ?eձ_0RhP9Twd-~ܚ ʰPpʈτByvQ+_|ՂBB6rqN۽5 zBX ,XKUʀ`3ACwC\j];" GWb#4Ϛ:n1ZY Y<,7 bOz^O"7Gtp(R:nVx+Nv ]0%6jڕG&ɼ&e:L Gu@z/S/SO/nX hXd1x\L'"qC Lw*=es"4 M[M7-dU<旣9|)&".N;A寉An[5 hMGO)-l?JE(%gi偛+C8sC!q#@jIQaΞ"C0!z|-D pT71WJX]YW;cΠJ,eI3=QԽ&Yq[h 6z?ªb2Xq%t@X!*Զ81(.rw$:p0̇\<ݳ([O(.ʃ#qnK+ h먅;V̵aZx%1ÃKHHpS1 ;PNi&% mKai1ޕ:8 팸}Y ^I@m<"2l^˭zv|G(>z?!F_h{I>a#1lDuZ]KҐ@x1'tf3bFM,yd*4MgVe8pv%Ouh$Lfq?G 2ܩS_{xd\Xos8k?ٱ*:07 :28F%8t m)lhnA$pj[ K F6PuH}$&)j5uLFT&r~Lt0 ]X/ ټ]@v?Zb(OL*q-w+K1"=D?BTxgi׸=;I zIˌCj۬<;0&9h4A?0%3':{ $< Cwd&7܋j=]h()&~k=U>`=8vpk^N]'݊ ρ}e[íyڼa)<ϒHk'h2 io4&i㻋gNk4-+K:g/]=8#c4 Tff$jٷ%YIūbD4߁4ٓ`fǶo.Om|ˢ#Hgg0{6R*!s}lbu¸!ʦp+mn͋(LLNK|뗅/RЁq(H2l"yaWjڸ/-ߜOCoO>>+8/W_?*7ܬ~lr23k$?^AZ} ϝ[2;ёC zŞ=ٕ֗ߡQj~㏪O8ZW|m9Y}8e9uqnjWtqŔ-G)dA9_8kI&ޔSxB1=i9mjw!N U?^I υI dbhIwސfdѬ J]xS-g2)|7"2;0i-lT[j b<b:/]龏@(Eg=qR@_&?'fRA^YMzQk_缝.,S /wi@O`7~~l%a\YF)| MЇYm{|Ӑo w| ҊϷx뙭dL)ӑim9iLaʊ\Q y6YmX4KqP} @{eyû *%.?f$m[J 3P]vAj1sHxa8悛B #ۊ?>{?wlIAhqJQ>b!)2[O3:[ R)9Vi1gjunwWfhW:h+ZdXHdNiWpg k p泑,P/\} x$t mm;~yJ`OWY/y"'oGF.{أgP}d.Bx*|߭6g46fJNwsUPŵR EҴE:rt][dŊ5K|9$PGg85U < ]}o5kx*e=`/W8iaL֩/jzwTBG0e&c7(ʇ9|id9aAE%'yRnE wV:|Wwc3aFiȐכ.08ɻ'"_'S Z:4ݰo[<(4ebi E-F@0<-Gx{k ~΄ H1eMX',e" b”$'Q^'%tG N3V}(pUY"Ն;F)iוo^fg1{&85S0]Qp#'p,U =PxdQӬ{BU2=l+g73U@6ctJ-ow%> ҋH z1_ wS})MhNw*z]lC=>B_=ld{KeXYĚ3(:wg(:4[(HV[7XL[] LUp۟WPmam#-ROO%`V_X\Єw*u - OO-k5KL3{=g-gw~rhŴ&iQQM.=`WcqDuo7l#׭B=Ce3g(yhAf UlU_N!oiO#3 >3cotY!w i#o Ӡ 6CJq@&%/tGij̙X!bMV.p<2h>tUcFA\M 4c?fڸYϨ{8/4bT&`L!] -nDQi-R}{ N>⹥7~cX!1&5/8f|D>֠JrLQ^%RBhY]~:6tQΈlEg6X`~ y7cwHHm!\ HKRe DZ J{Pw^.PH7X`kब^sL2V(#(*!t" F6&KRam0H ˾tuZ,v@!|Z./Ahb*o@(yWOla=2tA3?-σЉ :E?W\cur3Tm)/ |WM*4e 8ܓB@J(@g9YMe1s#>OF<`SLQAcC̶n=D7u  a_y̐T( yO+c:ЧxK=ϽSFQ_0!+ mnhwfw LNBy+3qgS"RбBNxA3D忰rY]:+))nqV4Dcl-%)@Ī{縭7V§͹rZl5157 z0//D|hH*8}aDMP+$@(z =\3.y-vW?nZ^Fѽ1B[KMq oM"Y-LT>"[c8\y;W6]fJM6B\x >"QN0ƿq ?qJQ VbڕA]!e:9gsIlhG?VZz= &ѩ @1aFI&e˗.HE(&/+[JܡƜrS%S5]F '55 ӌ?nh?Yߦٿ_Q0_UE_a.@:;3?؝ֶ?DX]l|2Jg Of/U0ZkuXKBLUi2ar֓aGԠ! f!o|]u]dQ! uء%w3 *_Oo\X痊Y;aY_d>>.a:8OׄgΝCFI3FauE"W͸PhV2gU0c|Ӂ\ZM_غҲtL%U53r^<f.eg~m[2 xCly_juѯXd]G)[X xt=nPj!:Ku&29=M3Ek8>E~6oyrVM/D/Ao}  ^HQSۑd5Qk\HV!p˸,rl3]*=֟ " k{ ׃\xvP CqaӔTxӇmS4;uf{1un0Fi;< IY?9 BՍf3,Qe S[k?z VKbrW[iݖL3r00_WxUBu'nL T\ r58'['g-Ld}z(|0 ӄB]EgCC2-Qm%wjb-^U-[lCw [HL%U*^t9oqwך ~;,NY}w]ڟRas/q&t.+Un Q@ ؜4=@Qm2MlZu_}ԍgv]k^]!Ym #(NPG !|U^n64)jV|#1”4LY(~Ϗ>a'p&rgͣ8TTa%$>P{+BV!0t6J {`Y/"WSVU+3ty 5"fcYg3-< 9igB={nYFHǢ, Kp4+>?>*k+ƫMҸr"&U++8|` XO6ʔ3 4`Ŏ}\SrFl[oӉ^ȴ{'k?_ig{׎>F3lw=pna^.#+ Tvak!QI%3;MVu5_'jiF7?~mM}Fztt4yeNfאtgt؏Lhr OЍV( 9VZQoLZcUaA6peu!;Lғ~/C'jM46OF%TƂ_i L[z0>٠.;9k% [뫨[ٌF D-ۊ=kZ:"LjIif5nzrݰOVw] C<$Ȁ7L[5dv?F|)MKV?[r˦g1&6q M-DnOpC@~H "s?rH( pMc3^|N5o"'X6*)-&[<mFc,qwЀY2l]R'&}`N}x!ZY^yٲg_2jM蚞tN>\Q,lf'sQOw hIe9y;P,+˕{NQ|Ëtlh߸wo0.ioKk~@` _j&lKqNŔi_{jJ2F?`udXpZqZ KZa*(OF-׎8?:#rT ɷ?q#%JGȃܗÐ JqXIK3ˁ-rg_jRVp2]p4+8EYR<Z%~c!9"8aʊ֐i0{{fUR+_ETkw$"CO*`nZ I:G萛2 ٿHKT=N'?o̲ 쩾ੜGw ^ %` ')`= ?ӨᶧagӪlRoP[{--2 Ia#v ^2TSvsPwYB ߁TV_!8^E~') NP A*<6x\XFtHZ {2k~RvRCfS2'h'mqwRO b{w 4XpdQę:ؗBxݜ\"/wɆUZrMXW9}xc!"Xb *vS遘7"MGG *Ը7*w#r@LI1Ý-&xa>\<$P*5}Y;۹k 'Y/uXxPgw^FQ i'݋װ}avn^N1*q; tof $e\G{P=nWxKBIYaT]%{뾢i snګ Zl`#O^}~2klZs0MB8nVbE T:adr eZQa0fɷbn9J5ޖy*izrѠr n:T>9lԁx& (d`6=UәS|li9 )(k 2qd z!cč%M_ "ZI1m@UZ5;bfzT!`]R.!xʖ x Ș݉RV$yhό%CC5~ڤw(?aGE?#U .ZinuuN9rܾ%ΚHŔ[TqOzQVDsp@$[Yq*f:1W+7Ԗ!ì%-fe&B|bY3T$:,M+n\µdtnJ1k,Tb5v1uGE\~_TSMB6Y\YZ2) k\fˡą"iV_Tvq`HU)?HP|4jR9.E.λ3 SAY27_SN] ~+gUvl.`rͪIկ4Tm_!!_TFNxlڗ֦>(-h \f0@fM \ Fm3\1  '/ڪbRJbxc\f'L6}NAP}36P ܃!+{`SNrnݥNpDj/\E75\2AԒ>O[?ŕhUD@TừޙTH#0o||pDzHnɗ881Nqm)OiwŅU<7%`bަh`~ 'GczYi5b>z ]Շ8D[&?tYPXLKX߼9ٱ]r>m 3Lg?v}ƣэPyp'U1檜[~~3"}QTQ];?uOۋzww@tPPg%EL(vfj)HVu#Y DY\0SL-X\ م(=-XwvtYWng8 }Q^MU1dӍ?EJSQq9-seP <S݈$>XkJowm\B0Ush_Na{LX3t|`)w~,&8yВwJaeڜ.qW8$ؖSi0ʿ2FwQ&"Ζ:hsm!N7:#; vn*_ͭ:(/ű^>:;#UI\ #T iNˋwĔ< Kjm7$K¸*RJ;Yً 4A䢤2|x-/% _ZFBJ0X'wM?滭ۈ[sOh=Q|Vy!`zꯔ7}uw/~6SZ1Y(Oob#հd, ou2C|b5GB5bo khB*ƛ,/~Y.ɳ E}oХ4<>ǹJ,Sh!M]m.%aAPr[[-J*DUf*@Ycd,ӗ0+)7qRhƺ k&U~b2QذE-K@P8P7bԪd3 dՠs>`amL:je+E£`ngq6钼X|>@בe'n*0LRvFj̰Wa){×܊b3QOk+ЬfuM=7()8vP 2U2%D:c&Dp> ]#QeTSM1_ct~Y5 @>dde!(QG.jD>م܅/5EJqpn<ќ"ߜD _;Eu_ة>P/pXpGJFe0i`gN^`Z ^ic94Zĵ()Qx$VC!$ޤ,$[j$-63mCh (4/L򼦳'jcnGY8ƒuaJ;rT`׏. ?,Nnq2۞;&V Ɉ/ aʎ,/,XhiJ(ÖbrZP1ROsdސ(R_*ꯐ;<4OEZ6E︄ꝃV }mBlfXB&,)QA eNs$9y24Tt !X¹gGYP&^||)xPTpf?  ^؀]l v.O #չzfАexlZGv4}:$>O\4bܡy%3Ay Sux+w=yž 9Mb]t1ra:>R FAz> I1N*6*}Hђ @,c\mRJQiͣU/]2#OwgXNy /2F/yD@ ό[XDmN^9p?u, 6}i--q:QH2G$] ҿKHR5EZ Cy ȫRn5T"G#!/uPowE8sM=ի\g0$TA\[hU'az)e%W\zFLM0!äJ!QcS ojJ}gnY> Sݐ2AO="v3hp! ֍0p#"~8k: L8C?BKiN(MݓtyjY ZHmb{Zn$k SHZW dLZ=:hIFƔR#aݕ`s#d8K$@fQp _Q2Bbۣl#5=q!;prP?1z OTgGE;H]eq d+ػ{ν`6 i]Ypy+%d6vPw.Xy}^4J 5]Rhaް)9Bݚϧcω=$_U/XQ(0ڿG*II.4ۓ:݂v$xXg"JwXHTgZcW%^Hۋe-P"yvTqVL|ߜDpp_Q2WE(ϒ/ =4w_yugi.&Cgup&5M͞;?{:T}F29,X}K2r_[30 З.Hs-0gWegO"='F*S2ĵu վǸ TwhKmg(E !.8dR?15OE#*pu 7J/'W5#|!HDd1(s^ =B#[:muR>/*ϚoFp8&I̔;,g"J)^a[C䥩|(YoX Mtُ0nJI SնJ5_=[;&7"SV =ξHl[m}SF\+wYM5s5@6*Ta>=w$|}KWr $T<^U-DzBh CS>MX 83z>Es*$EezŁ5=#-caĮzrV/ th  5uL,(hVRüwm;3lڕ ǹhʙ 3?nj0K͐F&-wr '/}q&rX9I X2;s7"CmU$. "ʋI.m^˻j3Ka$h? VAkLK Q̴h8oAV9R r%J~I5@.:o-i V$=܌=EةYf;;4#Jpd{i#VN;@^]^N ^s;LpS9˄v‹&hUy>vǻ@USe]eO`HG:ƒDiB#f> WI{&4]a'~5=m {"o +\|dC]W}-Fyr&&Y[Th0ȩhR\A՗…rfiYY^T  /ojoh6'y/OK1wʲ gۣDy  } k۲)Ql'GHSE:-eibFJ ޲=6)TtZ#LrV\ع "i٠¦p-iP2HCX&IӦp؎uvR=Tk!G7ƶu_p' *x2,n[b;YNF~EyM$1ȒunkT3tQZЉ;H=X%M`r[pMe-ëjYRH Ԑ}-(6rVkaLꃦW~(:kVp[f&-`l.sb}5h0TUxN:M5Dϋ'WW(J;zL^] in$R>갴vMLlfYeO^KT1psoV!-W:v[82Гѿm[@!]^}6-6&>PfԧH雒1( ġH1I|ڝ*$O|3 NuLcySns*g&,VsT^oGZx"zkowdZ"JJɉG:P Ȏ)ܒZ  p|:RpՑZBg-nCU_[=IBSdAY*&si.zYri^ALh(B >^ͣH"\:!˹4>W~sQIT]X%sIjf9rK޷2ӵyڹ[(,'8#.5Oi,$7_D8츻9ά[>WQ!NLY`)CqK+2 .B WL&H}?4dz:U`7BVitdB൮H[6[381Kc[$B7+٢=c9kPl= 1U/Qb=_ZruSi9kej@$~]n83fiFwDkSHNi\:e93a-e-mg"=sY`f#3P 5TE6YYzJ<"k]5,jPoE͓ZLlwo,ǽ@@•}dljC7OE |$_gv ceؚ`oq +6W j#g*qLܕ洠^{%`t }T?MaS'7a@g,n2tLR4+qQޗ?dX>Z˩oR5<%C6@8u$|#_ j5_V\Y(q |@R!tc\ϛf8e>*da5g h>YsLNs3ٗq7jkx:}<^1CaPۥ`I+,~D'ӫSr-_Rb[ tkQu~"^2:;2pC?,v.LpV,wHq+L/BeFu^_?/0|cCB.`a'|})v#?@8HCvٟ[4 k?E\Yr,VSUT7G-"̪ /RE 1ӖXP64ENQ(d:/t4qoH|OևDf*H~ sŕx]AbѼo^Vo7#4r`λ<ľ9E.:Y/yYa\$Mf*}~|T&s0(#Qќ,U3 YH@@GǣMjd%H/.Uw_P.%PBRkrfIS8q?M,1A2f񿳜_nR(*|7L)kڀ6[\ ͡࡬d:ۮܕq,QwN9zeG=gIYNEQސIR4 M/ES1T-AҟՂHWtr&'& ,2i/RE~ xā+L:xAھX$e<9l›}7_N œ-Lz;o5]-QQ;Y- 򚎖ƾ#Z+?$ ZpsIrѴ.͛Y9$g◧Kc#¯ G09hξḡB<7mA >oa k~R&xKgxy(9BJ0[~-d- ^ea:(w`);41 M $v&w:} WLlQT|;r@~p^7$g>8^~dO|6 _'\m͞J0_U),db.hh2N6>Y"95N$A-L2Qt#ʬi O=F:RvWXJS]$aߙn]:> SW [i @Un~#ĕRi&FJRɾo[UBTu~WLX=Z?]Ȧ.8V^B:|hO{FĪ##XvS^@3q#[wi_(6NuyppRvub E>vfa ux-;8]〗d<(#b@>ɨ9^ l6*úóm OT"\svx>oGot&OtQgo?3I9~dco$9|)a5|^aK-^X6ZNOj(:o^ϰ0>@#gџ6~&|[%dK'xESQ*Wm(t62#63ÑAV@+rgJBe$IJym=tV1fj$+G̶$ĮAnl+Sg%/g @|r=5҆Ǽ&1fUԃO\QR#~cZufGǨbZH:>dΤ2c%L75KP쓶llʑ5jhi;8,۵AMlT#y"UhyW`m)=2.;ƂFc L:-Uv1@^Żpls0:Io"a%m#zwg$r?ٳVj{񡉌VU3+l(,x_=Š諹sBDL)ыqLz (56|yVAYID[u#E_xv5Cbb/_; 3!359dz]=8`NrLOeK+Ih܀VmeT :Dc5S;7ճ礖D_9mKӑYn&ªl9~fIbܷT0GjPFpv^?mP4Uė>d kYNFE;o+ :$ %lxC_]㍲)|phmͲC ~2I4b]gY< ^Tӟ-]dҔ 1a>,KrkG^5,{0XhƺMGLt!L+Ѝ'_blƉQpc܉ /}&]!Yk<uK]oT/\U#G&#bkHk!}ܑ01EE4]s$뒱ZN d|Q W`Qw1O_ `pe޳e7P/Q}r]`a=3rs `^4 8&t-QvY>zb$ oBn*/ʳX+p=)]جekN (Wgh,BY{Hua y^uKh.w goFraGSጇVol*Sk?g:1H$o\6.y`^-Y琹}]  _ _3 u?soz]/-Z.p{ОmTl9oZ@% v"љأZ f'Dя3`8K[m .YwIbUSM IP) /" l O4Tr2T)S-۝KqL#L>|h&e?;|dF'-(ʬ|ouA8:ֺX$]j{G.ZL02r9Rl8@(r5Z1$& Q.ҁq\˗t٦.i0@N\z;'gj60$$0Bvw czZ{o?o\N7;)%vU/))DsqHT (%34S(.VGw |W"##qq Q,랉:,$[z ,?n3˰j/6a9Q7<^ !cN'm'9YYgެK*#9Kd b%9w ،o$G.Џ~^{^.mWo>0#L%cY] ƧsVQiɖ)Qh(J `cd$k%!*N*27T *]Kh8ON]: U^|J5 @1@j'|pQq %ƾ&X.쁾S,CXMل w[Nz}I }[m}F!r:9or.+Ővx\p8J'-8Zd)n/zij^GeDЅa΅]T*;2"aAM~9n Ɨv'Dszl9ni+4 _>ѱqAo)_/,^52>̥b9b2!^ 1!7j倫ܼGY#i&p" @qՠo@nMv'.tG< J] *胞ϧEPP7a՗p-hGm ̛t q.:$ϒcxDikLyǬ.w1S FZ&vKr7|^x}hv^hiBҵ]೩d>l*zV'!F+Pj܌Z.Ht*I'kAi\x৫wߦ,I]8mb +qty./ '3 i`ӟAtf`<$Bp M^CB؟:n;D?{Z9_Y=fJry Ɖ^֎ еU?0:;Ÿ6a9yY@4YF}뾥՗iy80Cg, 3_J0D !y:$HɮUh|*ф1ZaCljge 5J#PnbbT"e\ **=ϴt+r:=5g7Z˱V6Z?5n6 {Uc@ W`v&"%WZ ΅P dz > eEtMD'ӷu~0Bk,lՓ) #ծ["¤7S9Mb3qe"KqpwW)esR\L?[$aj@X82r5ϯgCSŷ16n |/-;Ʊ>敭0h]` en̷<&$=1>ro҇YeHj_B! MY0Ka;a$L*I J43MAzL1\f)tRm t+Ut6r XbMU>q$* ۸ЀDh.Q jP0 ηKS9Nn.wp”H E+@4~yzkٶ:J3`_0Z;iT8O1CM2[JPt Gr tPv iP&O);[4(4[ UogGJˍm Jh/ny։1;+"PxG{ac@c}HU|z 1#UhdRq Ґ:ҙ Ҁ5kC,%Am:XqXN U'g`_[%>U2sI=ٝrǪj @&a6KƸd5z˾bʳzVpbsR U8fҮynA ]ЫLRu+[Qjc2"HY]Ҫw6H,hxV#aWr^U>d(Ֆ5UW=';%l^c4w+-^;}< 9{ozU1dUp/ާ)Bk n -Tą-.tAi6 Z:F9>޺;C%nv,S)E&W}/Ҙg*7қD4DrC@RDFMx:[wb nSئEOo@ڗ+Z{*9d׍^>@8!3.Tie*!ݭdSBlOFvV!f1d?X Tg` >Ea^o"M=_J)kQlL"{ ,P-l,P?|YU]ĮQ*=6N.m I7ȵ4 >4:k)crg爿#W=lw֐E?(~嬁iqr*zjW.6]ʃ450<]kb,#2W'vGA{^d/S{Y/ uiAuUMY9چ:GO~CGG?lk1کvX?G~UK>L/[07͹+v㈏ĕ<r@xGgTcaie;.e .K_sjSD/:ēV D=#O~!9'P1+4Zf->Jz"zDH 0^-&#M_UM2/XDɃgnq28:]fo?*CGq,s td^<_" nlAPj]ȃHT%U>$~&JyB;m!OJG& k{|*z /Ѯ\1LWi3ބkA䭂au&o$7Or\`14hXM_dpkh5Td@TQI%q9E^h*9-zWl N&*<9 np]a/k: *,">d8~8p] 0e =a[tҴswHyg͌{JsȂZ)-B1`õ /FJHPvkU/-Mv_9ْ䭴 ;s#@dDӥon><脓&\ew0P=$ZYx.@&TབH֫|&j4v=ޑ+NJui$[?\%X  b w7вau|_&N}5t"fjH R(bWYXCF)tn=In,(jSjܔ{G]fd[ E[ߨڪkM95ψa24HjТLl)kr(JMM]AG .o|Se:M%Pm,7"j&}nC6 9F&hReݹ֪oD\qkdeԠ ;Vω,#GLg&/6n >P\D,dHMe))>̲Fœl!Q׮KQ@{#%Ky]SwVV=qY_z~|a )JgCyGV_nyV^YKJ \)j`Gb-K6T%@Lܦa<$([]o마 ov5ېOɽfK<*L9 w0KD̓һ,3Pę}L+X},[pۊVbPX7|YEKIܛ}7gfadӂns܊%n" 6WPL- lۤڏYcc؍c"ʗ*D\}?MifS+ũujE%*Ϫӂ0.+0!\s9)F6Xo>$0R|&?RSD~}\YLJh@ Jfi*,yO&=6hܷ+U瓧́[~لWH:2cc -}J 1j&&r mJmfvh C}iR12O5['$R5z{!pEn'&R5832 cxBR0q@ ^jeMN/v##:j#hϜVS+~bٶtiq4qn{ꮨLX[EtqyRO(ՙhD;UaBR$ }3l܁sw'Bc('$ u#0B6~ii\-[r6)Z͡`1{/mJtYnB?E:V=G73_=<'@ܐV\R1ҩXkĥ'wjC="Wi;kze&znD׊sNZgȏ!-EZB Y1-jJӂ:#b6DlN6ϑ;;tH)*=?g~4֝í2Ɩ@29eGw@fjKl6ƒἹcJ_zIcZR`nӾ27J;' Cҏ{n򸌱 Fw" 6;26Gʀ}n(ShS70QF7G~t1ƽ[nCsb^eD1m6>Ko2x2@ƅ%)\r[/: c1L?ƗZLe]@XOtEOb\/ʺiU]Pe)@wk` ]aJwr0vԫǣ4(c^*D E_uЩ!OEXD M/ (`~"XW埒pxwBmwo=A,Ua 61 k$z^ZB]z4}Z a357&'jPeVUvRFU8>KҌ։1SŅ4=DԄ+ Bȭi~Љۿ/N8_W(Ak(򰙟yAV BAt34K+UCRlËrϔ]/ItSqO@m%UP $QlL,;vt!9 ԴaTWT,4"Ƨj t,V{ՄUfLm{9x2i 6z9UHH?w9[;W_o4!PDQwy&+rO6YD-]7`Cܪcxqi*=MB#X0k{hj1U3Y61|j*ץ|$2[bzzжz 5rE5MMMpaF ]>=S #"f)މ[p?9LMچb3^WhkE[?Ule eJXY4xf 5m^H]1lIXw9@~&wBN/DPF&f i @YDU9|bj9ZwkMTtPy5cLJYP"A/s.)0 T- 㨩Rbnۼto5 $W"n?-*R+ApʯAH3=18?hdzU[,T5F[ؑjuip^ ) /p\מ/WEEw~, i3`3OWg]<11hQ䉌;[ t8k_!՛)9K)BT_L:6rJU~}'u>SC{-C "=v ɍB,{B&h:v|=}:ud;Q|Nt=ʡʜW^4W.fjt2tl6_[Ldu{(˓L&|k[њ!+I8ϭ` ː^i¹#Nً ĥ+y6GQmb /`$~>o9ͦEDܶF `EzDnTsF^rG4$?^Y72F~#? fYN;Hn*?Ĵ#!(k(9`rL;\Vn$6-o r'CkTٮ#&WNqK|'>{5Dn$id~! &eS)I#~lCsMY \d! yHbNHQIp;N'8'K:B&x> Ejr궣x+ ƴc\H)2WC ?u,WN@eMpg0r[F2961J}NoS/*zo@cwlJTi5TlEDJUd@V֔\Z/fʜ⤜wY_4\bB+O.U}L]yTZ(^HN>T,i#ƌW8EFP&"mӤaWuA~Do5p rq#6uRui'͆XC'zwRr!7 =9Lq&w+QR֮]%;J4Yn+7 伯/N\h.}\^Wq3GtRӦwܦ:"ߧ`iq+sA(w{E^ j->U}Ȋ#[f&L ─ߒ %QL)0:x-V(ɲ5@36db!䜲I=LE% K# (=#Q)?YlN2޳b}fei@Vt Qoa^a.xX{鷘 v$b3YCՀ iu#LL-$яcT0Q y3^M[sw;EiR'DBOBį_`](kt ~G[ibٜI;VITƔ w>S|Cm<*h$o[JQgw~ȮaG2^&;l5K{OG" RTTTyg9¿ė[3ތ%OrЍ2-**ޚ&dϩH>kcS}Ru&3RХ=ʥMa?5IߣǏ_*F;NG#?jfUbŒ…UscbSO7x۫-OPIm[qx)E |rr2HƝެ)_>sr-]M;_`=?;5҅YYC. )(S01a`4RC6* (OUʳxLॊ0#wr BPaTo/>[R}S [-`#3EzTә>9}ń GHXP&6; ~Vf_F#\c#{NnWAJ- ETLZ&g52x\OHV{LȽĤ~\-A4x]d)ڄ#~g["E}tLLcF t7\9^_Igg! Mpn|>%f:53Z92ـ-<9>(.B]wkzzmtJu}5‡RHh 0eS0cVؙ͊X(wOT^!3nHIu%,ۄ5P5dI)Kˇ'%z'(Mܸ%G{Tv@^#Tvy=A `47CBEB&Z~ GNAQwwvmj23  ׶uHNを~zx8ibP=_-ZSQwF3;jym1muyXY MI@oEh@z~hf<K:ۡjXP bR>!?_b]'M!Rt9~ +1f˥1Q |1Q*nߧԗ$?%UP"CɱXvpW'4昧/MR+Wpֹ$y xLG#,\ %_7F랅e$b=Q XktzW#vڞR7Q?/ۿ?` !ڂsoAm5Jktf@X&|`&VS7u(P̆v<wdg0we%oPCv 0X|k)࡯FI Ȍ!P'c쇽\ !&S,yQ=[G~ #՟|빡ZR+~g30`F N ⵡ?ޛ*ş:S7Vp"#U@ Du%[J8\F;,U'Zغ:%`0%njf-4ֵlYƠM6R!-4~ 5)Af]qF3j c`(gt秡 \)|wؤ^]l5]X|  CnX7ń'WZ X^=D8`<).ҲԾOPv`DV*EJF/4k 3=num!Ӂԗ:,g2kH -Bn t 9DRRs:#}l20J@jMWlڽ[z+<{W,b F%w*B'|`P`i&濑Y툅):2bFջxX%V$}ɥAQGʉϳ?E9Z}S FSPBt3|7BV q1:Uev?,:l';"9;d4ͧJn\%8a Y x2 wһɢv)L^b/6|dv̤ex%1_"ŊP.hi:MHv30|nI $?霞E)]Uu]wOy4ҁt5e`!1wMd㠜7ȴ+Q.p?Ν )(XCx[X\+>BgJ vnO,YuhS5hY[rxu~s#N ;P {j+g@UK+|sI\D~YQo#ڜ*~HSdW_ Wt`*Q=ɼ^nۿȼLR۶_rw|P =m]: +=!uCo ~/V J\H;8 zHPxLZgW}Ɯ59ʟf}Q(HJAz C#=`xct&v $vzVFiҏKW,]a)O)DI>l@'#i_;Dg飑@& ٦9p'y߉j@CgڜߜUS=vT M!Z23'MwUyFnUџEat[Dzܙ[~PN($5º۽&V/CCk:z\F7pTEλ +2z^2V,ʤXyXw-%f-Ap}A3rM6icqxTbKОBrфZr"2FDJCc'? ϼʼ;wŊTc%~fvQx9|JאfsX0*B$IcYvvTjT;`ەq ̦rRN5 /2Ͳ!0?A 5a>k{J fm1c;/ߕs9ڪM/mO!ܹtlvG6a'g{ m2Y(h!R޷F"_}#AaWh2B%Ow#9JOdzB5f[-I#-7Nf$r<B&dM_֢l&h%KP,6*sG4O|,B}$qoϗ-MvX@ae?2շ:Z{ڠ+7S8 3铊>r l4Rd yI?gt8 ++ΟBvѿd{x@Ptjpj1(Ȏ=[d63V`H{i`V|YرY?UVBЄAOܗxlV(怣6 }.V4+t$R%zN^9ŗ9eb 1cJ"'){hgXRh o8 :6cY;5! ͼ+o  w1R^e W+k"Hd8ݘ0ns=Yn vGrkt?jAIi^6fzKRn`M 瓞 _e0AB\fܩmW\ˡJMœ!iQ6Nņ|xOf7/.W, YoڍP'/Y40_L5dirb:֨&F 8&[3i% U1|1 `A;6pTFg1I$clA%>x>W w&mBwto*H&S9̋f Pjz]gϋYAYҕɏ Gu,Paw H6;c63kH 7]JYQ4Gv';`9f+$ Vʝ`hR >,/aǕxul񈃉?PSNz2ēMpXHwg{"~C_nP-)ʼnQ)U͹1TðAe!?,pl,y A3Bj%u@`׈t-7%l̪rsAƥK I@;ۺ{QPi6 ha>d}4'̣;vN^cqn Km#N#U˃&CeS8cnc7'4{];uT {jDS9Fdv A&}d8kw"D{2#Y~ӤC8 +,UVG ٪ZR: )Xg bGv^+誂YExr9&|FS"">WиraIAh䟦Ye#to3D`Tf^հ$x*Qў&򺖠TU,ٽ ۺcUݤZC`0ErB$m`D DZQ: LPJ#6?RYI,ȋ#A֢f Yăіf "%i],Pw-P3PNE W*X]uΏ~gZW)4a㒝AvR' StfWUIulY1 aٷi(blSKY#l:9pEC3qU ,v \@ + N_0=\hV[tP [r3~i)W[ ܺ$W sHp i6F?ܷ:2/"Αe+]3q5gO%|ӄfV[_R6D~Iw2sIb=NBYa*=k"lt(DƚB`C;Jfc_NԲc9c~;m@LavuQOgE. m=c3޻ϣG8*^ n3~FzrT8!^[Ťrʃx=hU7P4҈UÉ`rWTW'GрN$Y䩬ajLk?Y')^DE߅uG?Đ<4wI my %rqq ʗA <^aY> =e܄j$hOc i y.K -eeΊ 0$^&^{sAKL= :Oq 0Y ߘ?|k`:QA|kMq os0?יt5N7y\$='▿,2 sRTA)*xK\iUエ;W}[cͥWS萈oe1!ӦWI 4~`c?4︲jbi4n$J~x՟]Zn+=VtzkFMJ7ŚTb'ײzilѾᓒsGO|/WgoГZs4)ynA]~w/eGmq]y?DVIdɿV>p,)c{F[@6r_]؍%vMcE EX+8+ d/ JRl;\fL@!$Grud)?Y6 Bv@x+D,.+\̊ɠ+)[Dő㛠 (Z ʗ|.';(:%5 g`%Ŕ{`fb])$]apC\Jy.Mء5iǚxWh6: ir 1c9 kHK]n[Iݻkcv8@fd wf%7#yPq҃yh $]Bʷ5egQM5݃ `:2sC<^ ]\p.?~R`|&v28ᡙݯh!Hs^w'UgN` Q0P'F6gKG2ݸĄE~w)Vo,C.fl=t"%'V 3ъm] "[r9:wv OZ p4B/+hC3^!+.po%ws X[g oyt25Zˑ $( b{`X8U K ytȝr|q;L2Ϧ-60󨦕v0DOR6t^:6;Xl?5&ݲLܯH5hyL`K͇zes;3g͔f"C L86[H:b1w;1GԪ;ܲn 8!#x9)@g5L& +[uQ `;gʯ([?:v2+Ӫ$ \~KCKs>M,ZA!{$u WT0y1^ha'lɒϻbLl=E.B_܅ih#a nڌF͢Y@O۴Q)%ZW+G&գuo\k+Jk&qZ<dU:^Ϯ  xTO9?wo78m@D|Egg5aw#5n1:A/" 2aUu1NvVuc+(WM#\ j-qǹ 殾4eK6W񥡃GP8` yFqݪPdzpOHECnW2`y3qTcSe!23@8{x>? pN} \𖻞܄Yͩ,#.' Cΐ±'kYbBu%L=ifeᛌMhUdw;̠ɜ>uш?~ Xt. :y#15UBz{| ]M4P: ^;^ըdL\v%Nkₒ-ܒ}}H/Y#ӥ\x1p,_/v3r #A(U xߝ<%%jg# t>] @*lνn~$wA\5 .HvXL%džLd{Tr) 6)1yqF0yڈ\dڊo7}wLѱzlȬ=2J1ʖ]iQ&o1|.ߔDgQ K9"dz bDk4cɎ%b ;KJ)ccgX7j{gbwV'[E #[7-0]SBZ"xA0N ޸뵆9__ǽ@WigA=!li^pPNw{I}4 GÑY""/>/:Q폜hx)`,6:Lʔ2K]"{>gs < PQxan \aRIx*X{;HGհiHcHh@I_) e0%PD\LOX,i89`F0B}G`]sg ap?e'[3#hLљ 2oҥIou'?OEN >H@㰬6b0Jsf1ttH2NW%B ,t:퇳Ϗ'S"^CgMv*?+mL7v^B8npvx$D/ ?'fZd\J_ \d[U{$j2 &>] w#+|ќrO5h^!MJ.|=\WKNhTZ}gڷv6"9wE& ]`m~C88gŽ-MNF퓀!;R >&e*.f}4/0 e'kȸ cℓ98݌i1@YK}m+{'s~ytxw,6G7 Y/RRfל-JI&8`;CpƘd rޙp]8NjK5l5-Bl9rlJ uh0]x;ݩwއp'RP߀ FnCi$SO3+q o?SdBu[Gz,[k0ӓiÈg{i&?$ILr#fU~xvvTAջgGb)iX\ңnIPu΂ᬒ+_hV}ˎx:)@+k6ZerFZ;cWQ_͕A]xj\N&EfSOlJS [٬*1d*yq,tF&ͧAw{ g.[z/ei=f(׊~Q݈iG#{y_2A`;-[7J $W!BX5}{}C *alܝSI#[v:B1- ٴ@Zm_sJF ̐ Q^Wo:d[wy?FVvi6^*Y]t֔NLy$wh/˷lʻD8:`,-%?qzst ve%ɄؗhWZ{#hB8^H~_lHNE[~m{3ʣ+FLJR)uKKufj{Fֽ> & y"{ߢ^`4c-$X&74Β^9u*XʦmZRULz 4ֹc(ľ!m@D/ڍz#K&b[tSR}'m.g< s|SeC^* ZWeg)i4|'v$_zq0Ȗ}7]xє؈˅̤_o'LOwhF !nԲ(iWj%c,0 dKerEvx'krv^5y'۽Ig}a'=DWBzXpH&$NQإ9 &gAk٫M2#^7~IS E;<:c:O}pXdoZцgB#]S@s瑽`a>ķN]=k_sPKYƨqƏ_A$H̕P /n;{3spM(p>2'}$¹p7W0WQKT}n'|?E rju :(]lt LiˣFuߝ-bEhf$gFEtF%2=l2]R}QsHچc§+L}LܚL/ mkT) @s‘WOdg0P^>'mf@o v4n8pGLB+:ן֠ v:qY/G >_2~Υ?ęn.0; DJ.19 KPKD]~C%\N<6evgusU/v7pׁrV!:طOb}J24!%_Ê9p` ù;=ў Th7QpZ)|B0t^8L!f̆ds}PƥRx\Zm\S&~X 6G`'cRl|ֱ+q;Hh;r&1Z!X񒄚qw!;26Dd{4@{BCGo҈{@Olzۤ W K?ܝ y c?No/r,-W S.ꫠdbI 4oK ˁ "^'K~wodYkP/08ِR-Iz8x1HBs|L#bc,VW_!6#7nIP6ŕzӷXFU%oQ: wV,${Sf4 0av2lJWY$ăt˛8JCCnrs[wKVE Q <7NKuSd,w\M"Ta =mMUDbo4^#iɲ@ԁss쾟> `<>N=>K 6-!|"Ǣg pQhlSm~ ƱX~qw\"fG.fCxab>MS~ hkVh*;erS_Pf!p8W rSPun̢ohͱ%׀ʻ!e?j82pk91SNWW2iI;B4ٹ>^V%˝mH~u&'FSZ$;s=gq ež;K. ?*R{PGlRg]˃)4m_. x(v9\$Wnh)T=?)x+ھQO=`(x25c,(4shA%s#=x׎Cn£HmiUJ"xw䧶uMgsu;Hg!R;/rӠ>0ۼRnjꙞ򖅂64~ZRY-<6!0gi._FaZ.w=8<}_HuYLqcZm5,oVlM/Yz/zIr. RrƣI"!ŷVBڰ,R54Km5dާL53%P7Lo ncMaHP; ?&Jq )8pg3DA"8K}wRܖfH?eaH]&]OTg 7 TZ;$Xtx\εE~TQ\ύtW>p .ڋ7Ɩ&P%"uhPU/QLMN˥!1P|԰)A݈@ͻmL]y{s

Ȟ;ϼP?IQe4Hk/ݞ>5dZ.d215}Ct\}uq~=P{)GϘV\ʽ=چc*W_<:sEk6U ͹9Oww|(^tp\q [Q?  _&Wz^H Z­[pz8[gjOAV!Q3 BwU {`-k _vZuib,(Z::&;7˧1R;ZxRSc_HcsYt6 Na_ PgNY26)Eݩ p&- 'Qߙ[5^*oݰ 83Xֳ~W Ag b&M,DjȸQXHi\z[ZK VPӂM@'8֚Nد` қ2|&)M?'0Ỹ-cQzـhpZoer^UF[eEO˽m&ǫJluH>h5=̽bV0+OE1Y—CM)MwU)0umG SjL&dĐWj+IDz}$iW6shIC J~MgUx,)dм~,".{&u).ABKRĖk&L1dmci$QwYqᅶEΞ?(q̭#kd7JKҐ7]n{W|'ցJ⃌}ձi2Merp;l.66e!C+~hk' sz`P[kY&a"LI4T΅F.5"])в,W3=،\K0Tض  b\^WcyIL6+6^%]n<ыCyqbڣ1wŤJ"j>[ G\l|$EtZ@ЁD'),ԁ){*eR(Sc&4&59o/?DۘtW`JPBgUnss:.RkOO^E0Yʀ=(4tH8Z Ӹ~]f%t)L X#@$3+&žDU}@,=%L9ShK۱!GZ.w°8> LߎCkCL ct#2 3[IxTJo+XTuCqG>7Vp]_I6xPOݜaޔ %ϹӢdyCGEnE=f`h m1U}x;˚J2N\DC/#&+*?M>lq =T=Ę3*0l%"PҢv9H6 2;6JTcᄑ_ɖЇwv*] L4u!ʴ aKR |]pA:g4xm4#-ɫ-Z5{]d dlLϋ>.V4Vb>HiVc3@wp[Vɚ6U5Zh/z]$nk%\0c?:Vް"xgtq (w"vt>ݱ>hIZ:J-n4D5onCPxEgŵYτ..I9ă1@ uDO9ќd>?5UmeLGp[MӾ宖'<,rdP 0Zin7$YJS3(~Ԗh!LDD ~T$c!1u70a >E ABRb[vy6u2bd/a\0HW Bw.3Ľ(,}Oޗ ZkӞyUĈ2dᡧ>z xAI|8n={ңǿlW T Ɍ`0 %ibw1dh+1/pEM^JW@-@䞶fGt߯E\YFhǘ8IG * &f VH `*HAnI-԰,tIPT DZNGmiV3Tb˯*5$ا#Pf1yܒݻVnZ j32ˌkN8ny22Z.1kuf rcR?B~Ր+!16J2:&mLy<۾c]}<T=WBRbsN8%LyHH _"\\fHWדc{8;@uaKÇ:څ?JMNuRY7 ϯ5/`A_Ӭ;R?6,, Rgȝƭ"ݢzROcho :m N4rQw92u |1}zUM'F:VCD,jsk#rJJ\)܁1Z{[Yx^Ѩσ1MeMRᏘ]HƗ8xKQ&=߅~Zң/G->,_JPY.ĀzTj.| /ʉ2#Fqnߦ3|0W\, 40Mib/pN剚a"\<-8E]n$>tG(^'zڽs) @uHߔٟf[&]æ/QWka:5s;5Zg %Zn2Eg~ O&j}BH(T y௫Km=toYn5NMY\fɄm:Y<=7LD<<"{ɫuIj~`IH(4=H9$'IĚԢS%Ȣ2i&bTѺJ;Jz@쬡L^`Ad JZPQ^6iJբ7<-LnPwK&*ȮbR+}2t SS[sra6͢%`"1"줸.^msP>t=87Z Ed$<ިf̷wԧ>E.zX+3"ۖZU7!ưcڞkok+Kd-w{xPcfF^P?iViVX.BB0-Ź6_=޺~$lϪ˵^!{oe벓1o6R#5ЄRj:csŜS^7+QC@1XRV䖦4E47h`[b9.g(`"3qfWyԆ"5Q(AM w<6l.܍Sy/tOZM ꮙ4GgYMA8l^;{;U_78:^ )C6ȢY-ru>\$EyY='z"oO}DB3BW*AKٗ%\(_D 6TER|^F)'|\Kj9f-"jUVXߔ03:i^F_z-B.U6zD`<֫6 Ԡejm u< cO)rZM9M`;OLuhGQAR ?F0fz"%>8Fp΀"p]RL++É ^ozD\y?'O.(%"dCymG0שA)O:-!mvD !lrD'$>f\Z*j {*>@+yE+hDzmE .&y0ހK-XsߺLKbi$`aTi5F s/a@JTV ˳%2ĢX4UTz`8:`6鳝'E3ߨ|QeP'`\%-' 8v=չK]Zyra[(rՅ ) L8ŖrLSX74 .g~ g_xm"9XAJ0]րNkNj#Տ[R 'OV Q=EZ@|%+y@!6ӆK%v*!-3[ Ϭ\ׁ"!jXF0^em8{}oaEFQ9-[O@+OG),h%R u~//{;4rHXR-*o \ހO7E\>(#zLa[,snQHJʕ#)%$xSxaϗҞw p"+s:[%'Śn!N{h!ڼ\;7鑛rOa4ȶ rkU ;'@^9pLүECzT{7v&[ȑ,H-֢W븤[(f@.Ȏe? ;E"|E^W/_nТz@{pH)a}.nғhvt}J0@l>;э<$Y׷HjGӯ͌]1bu)o!r=C9OZ[(iO;v IRO1pihdh^@{% ,%? 䳈q6)~lA8b Rb1m\+8-wH 0Sbupۄ){b~j4{ߐϴ${Z:)<%FDeJ>ɥE="pv]<^rSZE|=c;ߑqgtZ(q"]r^j  vV*#*jcRfU/xNZ廯 _\87MC֟V4ٙ5 6+j 0 &kľY=v(]w8bT aP0,Sv9`X` PQZeȷM^c̫_؅Ⱥn:G]*S؞t{f*Dk 5m-Ǭk(0mPG9%/ _EF&zhKyzhYJqWHN2pr+qp7 {*[ΜrM5JAIeƲOre?,;sZ bX6@2P7ڎېSs֩*`Ruj"J$  Lw3&-C]8 눚; F$wR " x4,tq-/bS.*n)ޭsG-^HJ,I'?l%<7fgwYGEOP4x 0^bchz2?_Hvpcj;LD9֛ŏKwfƳs5q]^XuV/ŶL_+F.JptGӇHsKnՑ:; <"t mI\9\ WD* ֏oylټ:3To0)kjB:5&QvdloS2NA J~WWD†XR$]S$wL8X}5Rz<A7LayW \U^j|E2נ8!LqFfZ7I.Η\T{DfEj@':@\'.EyhRVo:(ď3,|'ux⼮dv_U{4<3${"X}v}LL61/UչH4NKsM\ X=Gvb Eʣ[f{ϳ}HkK mHѿiv?VV YGB*448It4jzX?\IQg T8wlND% =Fn8B)ڦ?v$\TxbeiX6wKKp)Sr$MPBs[4o"If2[\ J@-mRWy_ `M);O+>m̃"`5Z')9QKZ, >ʆ(_ /\aN_)I{x3€GRVa, )iLȑP~"CԚSyJXYIs[uVd)&g64buUZV,SMBCb*e+hR 7KZhuzQzLD|y?ǣm JcU8ݗ04_? '-X1c}=YjJ1 7P-)ZT:g|i\8TyA1=gBfsp_҃ҟ& VEhi3 ի?[.~ؔYE &M @4vzy{I5(QVvqH2un'<ms "wϿr~*OCvH-5ӓ~߮ft+68"WzUP]СR ` ƒ~iC8Ƶ&Fi-r¿%Ȏ~; }z.ă!ɳu@OZG!*S}D8'2c"G2B)_URquJ7y$V dg Xl՛P $U|tEvFm)ϠG;N U 8]w[Yn Hu>1ng-KJ"2 ޤF hxd=B^|Q`@qYHI+,S\W㮪*ryn$*ʙpYd0\dRƚ}bi p,`/7k F*|1Ep W\#IuPkҒq[:PfMk=3DG?֤`Kh#b^J8 `-{%YlVkx8"/8K~vJ!EctT5& DMLtTrNB'2X>`EvE=}K)"cI/zT ۏdC 9./.bBNW0D^G2 Ҁ0+HyMMa<{S_LG=foIZ5#{$&4, x$QB|0+Q 8/7''@4HNv/W,rPW)euޤ+/,puڐymy='Q?#x?@$Mz A&Wq$c]7IɘM(4˯ݖJ@[ y1a|-8eH#g>ʉ;5N/)FzR[YgW[cLfA`*gq@>}Ņ/v$;-bm4 /)o QEQwA &8n(UhH6ƶ?ed51{C(([%ґQz~CulBq:wn`f5ym2EY:*ovXWK*g#4^_kp1$ ƒLUU3QT"u]-6zX j'quM$WX3#w"g?1sN1TliAnyڳCm9Th,Brur?5 ~M.ƭs$^Ti@)M_V o-e$&I7nxvB0>My4]T Y wdtBKr࿡}<<,U<~(;Jx=!Ge>·-n&raZ/Ś.K&LZ,ug-*H0\Sc$֕ ˵D^' 8*#B~Ɨ: rehFl;>BKbh6]9caA"D[L;xg?]B 0xa20V~<6b;D~|w}W) 3a優n~N&˰~`x h\W./[K#azVB%H/ RtbmR>cFlzAp13ix؂h vSZ2D́ ۠[5}Zl[t`XB~jwe<}~̮? u0Q=`B'tI=7|$k U7R+媙vi^%AYH n^d]^Z7ք#I#* 6Ka)VI;r˹w]=~~7{C_pՠ4sf1//TO{awq3/hxɉD$[ =kjR+Bn@-#|yR. ,&2yTsFlY4]٢ 0oߵs;&ΦA - MDMaRߚq5щ4@Q!H ~*Am( A s#Dto*]}rgYR/0%ŁeNk6I*9Sy&Ӈ/V-p #?c!?K{>lv0W>'~74ٖaxvZ _!{kmjf'NVLyGגK`OnYM֞b\ʲ}0DǸ౯;_ʾJ틣N>]7; AC)VFY5(AkiL@ˋ_`Ffp 9wc,%ANv MW& xV5KW_C7ղ:'dSݟڽ.͘m$~Ǣ.WOGcAQ7ysR`M9T'F`̎Lz3N6LH߱AVM N#n!f~u @$ 9dzf4~Uф{MǴfG8Pҷr D6h+"jP<=41VVz[_QK[Uv8Y*ߓaFmd<_)V[.Nf>G/lϬ*PxJ凜HSkco$pqz]g@_5!F:!AcΒSv|L PZx؞ Zf-tXb0#rc1P^ GIp4q(FbJ]]SK kG*BqTV o//cG3RrXwbUЕD+WQG*;P攑5MT?@njQ 9Y3|5= KVjuIS?^Pclګ!B|~̉9?믂ƿ9F `)xid7'&XhN؅{[lNK{elǿ4) $R8$IĪvT8:|׶lۍ'6qd<d#&ɀbc~Q5PB1'z6 Oܬt78 X WbL¹'%N8Xy/c|oa`HJw},\:M_'L}ca BttZ00!s$˭\[E&4c/~R У;-!0D;$[/[19约.tO) ǂ9o6c/ιg?K~bJ(/JqyCrdČRdhXĚ9xS[<]; my8ϳ}~aYY-`&hGM )ЁB:;w|œ_񷆿 (;Rp:B:Ͽ'CY9K9T AQWO@ZWB?.Mq8lhoz3P+r$nMŊ3]$t V @?Fvӑ?|7zZ,1 0r)UWo,̈ Y޾~`֠!; p~$G J2ǻՍ@]@3<€H.6B”/Y_)4Chmr etlEHdQU'?CD-Ƈ9 ɥxj"MyǴF!u .x7XɇgpF 94jC`qJe֋z L LMm@{ 2ʥUB:YԒ-8UG Tzp㴃>OdD.h#,0Qp;"h3f:F@N0 x!3GD'Quڋ v:zZy հ+2ju>Y(#T WȿmŘZR4.YQ:Yu!xiaM#3wO_VX~x0 MVFC٤2aaҠT@&Z d󽑲zrcAd9HoQg5Hc|\wY |8߭U9<Ĕp8 WPqrxq;z_;{]I\uB<7%kP;H'({+qЅWl/5ͮ_yN,wns-h)Ռ,D"!ksy J" L)õ|S|{V06d7QB "tl,dG~IzXPbZ醥Z# -3ǝn\]ђIR$I=CZc1Ef:tB r$,]pa(=߹A'w*ؙ%{-/5.椛Z 2ڧbR r1IKN%'wcB^7pBecd3lwaآb63>RERJ1e)/cXO=~bMdF%N/N;+-(+{)o2kti-"fKnfxf-p8E"4k[.?+$0(#) :*ԂX[}v_vBˑgTIUP46 9 1:`JZT=cׂqqGw C|fGɱTOReu3YY?1KN\I-̟&NBS)j\m.H$n6&.x$Jͽ'R%iO<79Ɣm-f悌<G뎕$,D?$Ԛ|a TFt +*6$ED'+qȱCTDMi&ևˮ +< mD/aUZ)3U3iA[ "Su ,НrI.t7 No e NOAbdYqY뷐$T5&' D}ka0,آ63&0[ų%b$6 z`Q)ziJe}W^!e]r_Asvp:JvFI}6-J U"#Z-G@)[eE 'Pwx~03 +:U6iOt1˼N4ʜ'7)eq:M\C? \3zd[b !HVK)_t#%H }$(πnWv!9c^O0))(~ʩ< l{ whR9kQ,蜿횚 ApCp G896˙v?f_!~1>:4[KqSkTӠ|t?MՓX?+uL4](ȽqPVEys Ɩr(l DLx|2CnLSօ,(Lsj.juLL{< :Ӌ(?y6Y|RTsX YN 7o[浖QAň@:A )z2 ?N7K"4b(ܨm2U; `s]!_W3FBH)K!GvZE8+\Zmuv9 "jd_cLE,d=U; 443]+O@KH 4_2ㄲ >qu$6R3E@DZvh'D(5J eFíɶ3V-y!fRe70@6 0..PeBA @\:twU4ez-`YPzKko]^"c,[" kfӻ\oRx洱wlXfgIx(MD% Vq:0\/&=j)!!Xw3.,Gݪ3H 3 )Q]"h9;VsEkCx0u3D$j & ߔTQ PWzӍtx%g_C`֤`kob #]p!vcw6juO33lrrj6Z!Q4F@c`_.ۓ`!%l0iIA!k+[׬QX}c=d=1s77m#1y,FMBONG!rڝ S/jQ*mYXfW'P0Rk>L=:0F\PNQ='M7̯=ǐ@reB1e|Nf((ȸbνG uJ ଣ B_u[|C:=${W[ }0+KN ?=8ngc<[)#aY Hpd>7 Ϟs0*C]ڽ?b`܏޸C:=@cPv5CK_΅ '#S:ŸCT.7 VKľdBQy"c#ydt>Ok|4}Ze'8kR:/MXVԯ3%ISN[ L_RV9dc:uGau=uXe?}60 `|h|zT̀k_l&iƑg̟ϋ} +g#7^_j>+UxY(~l&_@| 'AgK,^agg="K [ZoBG.EBNR̝|E%J8G>h6[q)b`["֥T#\ðuK W->J*1֥◟ui l92cM 23Rbr ?]NE Ʒlaчg)%iS`,w ډ"TJ/eB6W͖!&F^+q hZZBlB*am FQWR8Z|Y@a&s*x:޿]W[(Q:T{6|[.91P?!cf=).?RdwVT`l%@eG)&mKT[H=765_YN'[!^|GФ[M 'P %x[/GAomc#F,N*bi>sog}m⤋Am ?ah4 eN?ʠ ,2o (sx9_1zT.=χ=~v9$MUR#@ >ȽQbxetAYS)R7 E2HDoHz"8r^$AG0MZ RIԩ ؿMb" I vaH&)X+NEׂIeH).&LKJolo^Po { 6L? D08q&}XCgkC>EeE}wWd&7F vݏlpDZ ^M j>$^e_Z#ux@}vvTA(sĺܳ/{Eǣ[8lazD-PCoa?]=s|@bȮ7d!Ez{dgIk!j3.WxZ3*zHq,&xl{̩ؓ(:f8Ŷ,x>f ;uqX &' PӖ=dM)b4$R;$>Z2bNHjeari@S1<3B6+4VcΘwnbR0m dQv@/s V Z`OCrlR33#K WsPv1Yfc0MFxa- J¨bawVU:!#f K0=k $ mLGϠ^ߋ~xt!vy1n ]D "&?k[kR?^V +E,#PzE ~ht7hFO+j e)j+c'Bp /å|w:H{}qEb6~tmn{!+<,~nr҅\NYĪ&F}ěAk[#kInUNPD3"~.ʚoу@ !xUz_@zFLV@3fj$zT(veYceٖub<թ@u^|&@36^^ 8j ,e{7i(i?h(VRωfD~gу9ow@{MϤvbE^Sf1B!pwV Hy6PT_\xxzIܪzi-DZУA79{9VCf1`:v#B#V{ӭԍ9V8uIX;9,r~D?He`C=\Gkŵ   Wl:kxf H *%SɡF4K85xVK'>:`2!YVƜ7hcf:a+#lDOW1/Y o=K*>^-ᑭYd5"dؼpA0 .ʤMsLBN{b4cU ~~_=h]OgBr]T 'Lp~Íwd$/ˡfj6'A!-q F1so)yۼt5dm`1oHthqk-L)|^c^l6lNO;+g#+ýƜ;]`Y#mR'hMXE; ႅtG7fx^4WƔm,P`ЗJ:5zq%-p'y4jz|*X2BF'V-]5IXBQ0ۈե6/s6vf_t fHiz$tR|yEz3&#ue+JסZ'K~ /Wf+'k=Z*1kvT(ۆԮNfU5<)!h\J ~T€ZPx.\5]gb@;X. Uiy=ع4 ,$/iTp㈛>EEjKl:Ǥ,wN1j9H^`p^B8ų88^g:-ïz{`(QePiixXҦA`j{&wPqM$hu&:qUľF0V7Z\EqV@ MaJ6I$á+ᜤf3ٿ 7Ɗ"r~ ?B8wX pi;ԃ yVPXR] gʑD Tg:S &"9]f?(xxwLl5iS};͘FbkET c&y C+b64\wm&:as}Ý|jE/.:4;j=^|4VI$"vEBX!u(r1]2)^=`8Vme+Ffh?L\kB ̜X? 9 mbG.-f>upȝ]d ?YzUY>9$2.TB#ó񅄠Yk(Ї,';&ҥ_Ioe DMO ¸ J?Vىs2`ͳbvb^Ó+^Y>oX/lHL,-,KnO+Yf[˅m1]=OD7րt<|]p7s!jH`t K1QtN aܕ^K9Nc]2tnaT-22_7gjxY(oz\DoB?dM sl 0x˹MD&ľO^Ӡu#HsR~E=ۋ 2Î q O(l}^.Txv -{ـ*d@K4fCV*("Ik*H% n /Y=ڶw)(?2y3w<$`{3m^=ja?t?ɖ(^~[2wTtG]}B-QWM_ vD\ mU4wz%of |{G1E#&:Wژz-s{  RB+A U*L xSy e]͌J Ռ]_+x NKk-"΅6 vn 8L[zE^sG#=2$gރI9[jDk)،rwwwV@`J{GZZԡVIZ"2y'w_զ7K"gE~E֞ "v<=\]SwacJ KH+@ K:wjY$ϡ,1Զ.* p- c7q말M-On\0(U-CAhroƏt<6{[#rA!5f>U{ Jz ͬQ?sp&#E4GyZ5,xJܾ8|0s Q&Vt~ys_8Y8S_!TDlgDkJ)C_Bm+9Ƶ#Cs$GH_ADT0=qZKˮ!$kO Gm޾]ؠD%aV-+/9 Oi&'0n0f <`G%)6koK%rH0b4e#0oHoMc8sѮ/Fhw|̣Jȭ܏rUB*5ˉD%!xYղSy~mp#N9|n#v "q$>ˬBhh{]D 5q h=Jc)9[@NC=hج"QpTȓH zP]8I)`A%O:~SitlȚ JQfD] !a#)`B-p=;|)Dt I 0H߯W䔣t0Qț4!踓#`<%5L."-~#n4kyM:1P~$2LAևB#윐gomAtFZݛu.z9P1:XU{g ca І1s|؁*jG5,כ* d"}!e_b,=}:;ijKgB>`x`;v~{QG.^.92{>7vYE!9):݌b3SFeTFj" Am<_ˑ2~bEs:kdQq9GV,CIȴ''5f"7K9?{na^bSI!(Hs{2/kդrrj\!,Ff>MފgT?Ů!@;/1Ć.tͰ>^zRJ'V?ڦɠҺ&NjɆS kl҄iu4GW⛠VULZ Xt@n6"S7qc|*&x;{c}O2gl'88{r[/9dGs_þo% +ru/),' nMLQeRr.KqvlZ/D2 |8j|B;[D `;PzDTgd^o #:j -|dz,z?d>x;}Ǯz!@s>!|`9f)CKRh h?+=Z ,e9~ejhCAl*CzMw؝O9\$89UGGi?y@K#I"g_mH0[(ZQh*"tIpOH(εmCf9X˨8&U)7a-_NQN5tn%^SvxyBR-GLJ! .7~DL ۃ_t*BI +8Gr EZ @l )څ!,ұ?v!AHmzxJѺ:K"60ϬgT.bXuY}M7rp\(̸ۥN-ynJ.* (zOW7/xM9X"6CsZᩏie> &0Zm:|*m :#3Lzg*#~kE._ȁm)㜅3MzwX|qn<^=yUIaCRͼ༜ͧI}̹ʺw=pO\D3w-_!N[@=]wAcKM˂SQ{YsCJ<qC3Z_#7HG%HIpCZ\Kz|Zsў3*C^3/z½JQ'*㮴kVX7ɫ\SO8 vx[.q"*?!)Y@Nhчrc7r޺ït_ I~U|{W'I8BbK(N0zvOe[y8'F4+FϦ g!Yh Sx_\Ñ~pNT/?k%ASsi"-\.&d5ǑZue!\V(R9H]~%tGwx[-\I<jy$O/hDuH/Bdی`-H.A9!f:@5E!=X#iLK\c{C.gUٲB R۔pn߅hȥqFy1ߍ|)籋)VĜd+/n=Waj}݄ #0+`laR wem0Ҳ}oq/O8 d@vy YaM?qy AL!#]YSVU1rmQʉ<ua?$ᏹ ]I8%8sjԦm/{K}|DtPR2˃Tۦv~ ɈEpuf ~'z `^aL ߓ)-G]``aK$:vgpkmU:)K{;D7Ӥ1j$41}d'.phc&=S"lUYBX '0b 3@~I톎4،rxf`F3dOwapn)88~K+x9eAܡ=&_q@kx@(?ڂB7kzE{}LC`4x_nbNĂCU.)bN,Icl B'7kDbRz,WC/[:D+a 7 h;Zy]B~ǓXZm?vRӃ+ "/'0ڰx־!S cW+QSDP$ 3m#Y~~Je}"+ !Z`@/$`]KQ;`HGlk.LOtñTրZ;OCZ .Bh -Ad'/ZqLP7h+L2|yLaQPSG8xn :h_'Z@Z,5pmS?0Gb|܁@?|=H[p%*Y%]ڴfs:o,18[(^ԠҍB ky$䁵|'([wI*Fi<^>c)a#yJbwTX_8b&As$c㘼qH'}#uv(f9hp 7.0ZHۡ8 r/1/tcvӋvh(A_h笺2nOhfςuZ\hںnW[-U1~֗FRY9QgNM\"-kc%K&8ncL >]NzZZf Xy |kp6uD)1 r-tS22V:apjF3ٳCX;ݚMS갷p^\*@wÄ5gi,/3w ^+C+D;hh|Y~UV \?㺍3,ukƠTB^\) YM} !P`<(CYjGi*EMì򸁥ETih%8vCqSy bW[X6X+5yEhcJn@8v"ݚ^p^xr5Z|#_HF.NS\B^`<8oj#!65H/T %=No*:gtFc +\!Yp>BBHQJ[ (V^N͉fq{K8MTǥgW^vΥmګ -[ۤݸ1DOYM~݀%MW7.vwq#qL8_t)KjawQ_e w"O_pb% ̻i?a,wJNx%ѽ\@ksTK8lw(uw$XY㉩dxk6lPmpX z{ܬ} I/5jNf4>F|@~s Kuk 5H}!FEJ5[GDZaY0>\ VWa37wF`Mwº?9 d1ujCjqT}U?Crދy / e1q=&X 4o ۚwOK~PjA9u77>eۚE:;;uB뢳ltzHN "^;Mc5'S\cU9w"I ~G~VY6!H [2Cz\# yRQ;Lo06Ͱ Ze&SQQ Yk"1+N l@]3ѵ-It>:+ K:0 Sއʤ#A{t9Z9N)M':oH-wzΨ=r|'zN5oӼE9hfuvBr[jSxlj"XIqHKLA-=Fgn)Ҽ!)kլOQK'X8~K쌦,:?P#*wur&;%ohfٮ FTl^h_Pe,ёEk:ǦAצ"ecBL|`k4,GGdzN󥇋ο%i7M[dX ^eF;J:䄬Q {= .\r΅BVCGp7f6A!V?h~wl2ex@LhD[w'sH*^$ Vph3^*y|^ĔٳSi\"Syrf1C촮偡5~Y7ϖ#џţXtnjwn3Sh8/ZU:Ri׿ժ[4G`]Ƿ!tY;b_a8:n(+?G"sNM_IhsKC0m"˕{o][_(;h6$$%MeBK+%U`_5MR.B +B C1BS-_%LpfiN¦J| ܷui/(]P|./vZܯԎ vOտ^g&T+2+[rZ~ e(\m̼gJȚ-k;S1uCU^yMYTY 063vS+hJ阺%Nʏp : Tg"Ȁ:> Ϝwga#YӮž>XPBW<0RO)e\}iFdY1H|h( [ڵۿU6kla)\Y*lOJ(a0E*/[XN \S3>3CѨ?и }x.۬~lu{SUXܰB qJrvХt5qt\\vҡ{0ܤf,=O  ,&_iQ $;/x &8V3OA_r1t9=f'al''+?Z!J7]&j eqS{Vʗs# 1@iaqgYqB}. J \C:l:-IS%r<yUuKM_ Ϲ̱% *[}oəzfKrZ5/KA?|bGqTO\Q16)x9BO~0O)ʎ 1I(;GZc%&Q q`t\117Ÿ#)zwJqUߗzȝMBˢ&AUwaȻѩV6]x5uVzB X*y*&1ȳňQid41FXCe16G H![!c̔ 2(YPet㦿}7`t߉%솥 X0Sg?;v" (3x]tЛJ~JVpx&3. "N2 &L 6C]X MBϤ cyWvmqxF4y\ÎQW@%^5 3Σa6_JLlM ^2C$ ^wS{F3Sbe eĶrJ+:mI>ji2M$ena~,OT10]ϙ&jlVeUccU}Iƫ|DpڹӟFzi*dDs6{d}#*U<x BNT,b nu= 98WĢ '7.8}OkJl3#zZUWR{BКwghGak~&ㄋ'6|/ROGΌK[-w.' d}'  <FVR;Gԗe쟙בzvw+f/\cR*Ym:WJmRl^?/T]3 ?XS*wk!nL3*m,y7n(FSMBc)ʪ7y mOM3SEKWW#.~Q%Hy*XX|>r qP7﬚׽$p^*}K46:JzhNdv.6nVlgZmaqJv}HpV u2Qa\.?Cv<uLJҌHՁ6t2*sp,kQ`[H1kyi4oWAj~2+rq,[D aUX1uZc'M3 DչײyQBʋ|Vq@'jk $~WU=%SIUU!V"U ڡNWcP*ah3uSbD$D.k9ax-w='2s1n;Ƀ iy! e]sFCgq)/cIR0F^\3,+OZӅDv`b7X1FTlCtO%֡Z |(/ >@" lur69xTa?G(CYj%Cyc>W Ĥ#BF&Rc3%բ`< CĻmĬO~uPz,dwn p^Oځ< 77wJ|K~^?&b6{(w ;d>E.d^qJ3Sf~zm2z(1 nW-4Sq!jCt Y@.]yG%ϛhH\: IDT{ٕzёM Z:;F,<)wDoq $x]٘+H\ _&`}})Sw[_=>˗X-Бb%`W) 5x{?l$'v4 rObSUs=e[ʺ~D8$A\Uz w*xFa`ixrg4kC‡<8 :;!Q ݥG vvl_ )liɑ݄< -A%㗼 dR -ވq*`^::1 ۯO1 0E՞qܩ\gugNST̒5y`@0^YeD Pq7+[-/PkN? "O74\ mR`d8V;ЅC;8r/V3w59mdӗvQrK=mP:&{xO|6i_<6g'z|.AI? 26U\Χ4 CW tM||'HˆU2DsH}i![+ y+XE|YS)U&ؙE!l+< м*%0M=n_{RKm`Z:nΊ5gxƛҒC;7(܉pE:hqdf..Xy _Hp[G@9ԾxJX鰾h=#9 ^fp@vK̼ʪz0z|edVÄA ߣz lrhFf"ٓ(4nh{3(g+() "q4^5X%$ >7`zVY𮪾Ϳϳ[Qn" >Y@΍?P&8,Nk9,/i5h] iwsu˔ ]F#Y7H3[Αd7B56fcqoZ4\Zѧf0yAngQ,3cL5B/8fb/h*ig<<;5m_&]"WfZM><'i#yo?Бov CUC鮲R22abvy8%ng9ʡڑO!}݇kb3ɔ~?xW]bnl<@Xt=kg#kNM( ۸3 RC2{g/fiiǴ~n_- |e^$92YqX?l#O:y.|VmF2;֍]{:*qd>ER,JrԿ3 Sa;QAD;MdbJߕV-#:ÙM(q;%^ R=pX M.<;i&}{Tք^q1COQ~pډ% rZ?\!W'dthWsi+p 9@9Ժ1@r;v@K ^ w+$2=Z]xkP xWqŵ J7#DEF CkƬzR`RLO%?!Hsb}LNF cxU B)F-#tF/L޷BFVV ^B|c{v0HB "_eh( |).,lTz=1+4,>iFeTV(IOIz~z8It}6@9րk$">w 5n1ƍ0&/ +](ȍE_Y67J/ kF0w5WƁ@^ދ-&lѵ{D03UF&Ɛz%OGYI= ':BLץ%XSк>9l7RC@ԽcIqi#؇l@PYrqCk[&#h iƁ]ok5aO&_Y縘?ɐpߎK(CP2:+s#Nؘ8ǖ˂{S'8zj:ҤK(.rW6NY4&h ~((Mg\>! Wla;S'Rko%6IxܸNf.{qqG)?!c#TP%%2X&1 ө5r7UK]#m[ %ˢD5Dd᪊c@9&(ʓU>c^WR"𙗙_L袛N;EñOdio9u9M7BH]qO6䭥ًe4i4Regb.# ;AiI "aߤwW:=ysE%ksH(6 &0n^tNC 5flJ3zTW6 ;Gs˳2dGe h" -=mڨ2Eׇ@񈬎 ac}-0wx P2Fg G4-Z IӳdAf쥘~M}. dQ %]̊ 3j<7SkdV ?VzL6l&LiX[n15WB*|qQ Z_/Tp4 iٷGHxRRBm-WE"9l[LŮ~틕}Pe&`ʞ.ju&[%kɨO`dVX9n5cB5 B1'TNjYe=-±b%!"!:lUZJOᲹ+4 䒌J> ;IV}',@ Pd\ƃAV\d ;9S]GSÎ{txfHY\)rV]n)"eWlݘ*(ݘtFmtq^_lҒuT44_A&9NW9୼ܚͬ:ێ=nh|2 PPcr-~Iʒ qX|H 6'͸}nh~[iڐ(Yw[Qrr_E0w "1@3S0.`^_mdײ.z 0x$_ԶѸS}O/y͌8^6WCO3;%Iec.Ć\hlwn1%90o]`%zp(V@$XK!U |>sK;`g_{Blx%6h-;?$:~^M,UtbM7ݶX0$É%30SQ#9n6S'qF'rH,,d-;ϵZ@F HvF4T^qZPG~qlUU[+3)q4^: ( j, hU^@׊_QrәZ?N9čq|ACMXljAO慲%XM7112ɱn;k1Z,ɇwbqk@-<G]?tM{Iq1vL)@HV]Yη:۝dSFP}bGj?϶~\OY?jm[@4ǶR Նt1-"Kl*dƻ4]WM ?t}V`egK׻4\</;@Tc{ 4Lk;UFY!6Y"8L=6Xn0Z- gMB 07lLnb1BB.fR׺T=^<^n̼$ou&zÊ4gzƘ*ܷ*+q׆;OSXE7ֶwR_[z]{uҀ&HTG 5a6D#?_d*qHN-4˲p6?U 4j{vB0s,vp@y1S/@tC*#[]h BR eL‚B MGCQ.( g0Jҩ9EIBTnW($n6!Ҟ=jؿ3M,(m{0Pl[ ̆:S7Ǜm[Wbߚe:8j}M};S f/R~5g6N/A~I񺇎?`7hdٻ_ @vJ:vupZòoP/[ޣlba pc^B%+qh~..!~؊3+Υ?*GB^'TIG DJzLrZ.I:"'z``N$[zDbgh3#>+~osԸE <-"5aG@842sa? 2lLV01l!{ġz!AE4Dip?T64--Fr2$A=tPE*[S@N55qah/@S/2heĕ x$,-z=FKcLA箲԰ec!́f/l˳F9 ˀ:C5r \R^Ww("2CgW*ln|Jv-zR]:m_ u*?lX#.]-nejt@O(.Gܝu[DT5{Rdp 8ԋ ty"%ÅҀ 54cefz=MYiB_@|Eiѹdߝт5`37m:*Z@Ӻ5[80,3UoyIg_50x=eD%A1ecȨAOYwbk"j ≧jv&/\OrG r#mɳmD&˥@: cP'L>&8U") 96S7a-]ɪTVNSwasv"g?!;u66dEؐ{KAvMUWk4fԃ9~Kԃf_qn߬Y^<4rt_{7 1#3c˳ `$= }E{7Z 'OxD]r8ѐ20VZ FnwȂxO9KQRڱBl ?n"x+LhZ!Mi~mq}Bg0 ]R]C]4rIx \_9LtBkӀR]Rs{x8.Ɖ#hlo1`I䯚ϫ&+:1n^H1 V֭+lZ8&fN-J>l!>i h稫u,VE-2ZuqÅQʟU~':1MPJ-}Njo8geLS7.UŠľnOYa:?Լ;Ds!ӄqxh4w+{/[>5nZ0']8#v˷$?;-Rf|11B6n>㽴ZZmtġ <fԳm.`('w 7J=xNNs[Xǃд9_BEOQ: u0Թ#w4g{ܓɑ,o )?UAQo|Ҹ(_E!m&؆]lL!63*wI-Cˆk.:Q:LˇluƝ Kۃs{n~T˳NҟKi剤oYB"H #iG!>j I?>c} Ej9TX)lRQִQJ Gv@@5ȝւhf&`>B|wu t:t6e ɪy^uVݬ%J6T@b?(=aEjv_ulmN =pZk.z83gLg`3"uKy_<$o2԰Qteoi)4[dɾ WFu*P5\OaDSOBF@ ahb3xt/O婇G{ rnk(kV"C~3^@0+8|E F  }gvT2VI{U.UW$.r~bIte+ +]$H&<໢G Op~#xנ1ڵc+\m!GuY]QQ\@߾6ff-Y240=iyݰ;gDCpar paq}}A3Xj$)7Á,DJvuv nkZogdoX]XH4v%?gXq@>ְ 2H%Mu@!pKM#OgP!!3sԽv>ДCtݜ*kH'Kxp*!d0r)}lm 5* S@Ddf&O]5UPfvu$oK|ŞE()ӶdӖCE%_ϟK-EF횃䔫 &9nK}Q ٲ؆|HD"Dp8fW*Jz1W5ݡ}ah6 XY(Ʃ$Ȭ|V&ݔA@1.,HY"0s*!w2LuzBore7-+,THd| 5B)DŽ S\~˶b 4AʑUu/"UkhƘ,;s6.Oq'YN ɧMtl#t"BBwas}]4q%:(Km`+x("ҽX?.c8` 9KHM%7-}|[SQ'n+SSjṚD/8L* 1%;M`. [)vwm=nI> d;Y|UP},}1mR1E8v|L΅yF=_+c]SR, 'n ^r"Ksq >B Јy9]1LB069>|01z`ڄR0svY-.*A=, av9Oݺס5[.9Jw_k)\`/?kq&yG7ZFi㿖'd zz|"-:jXizT+SZpTd$&P*fVW&*Qcemvҙ^_+߭$P'zNsے^n$m#\jJD9uZv!O40SݖNj̃4TH0A#$_!17}u' ;I:yk-g(ܝ-="B(|}OnW?$uY|!܏?+vnfRs j'^/3WȾ0.n!&r<8\l8F|~r~=SGPT}WQHԌ|M|[F;hFb ||{yRd#:#ͦHDiku"H wZ(,ZLomb~Lg lϷ GKH_b/-ŸrTORpb T /GmJٙN u=;+:yТ있cɀTwՇ=cFݧ~45?nʍW`C.zvd5PPvm w/$ 7ɲX9GlpgH!Ln;2q"$Tgw&B şp)gޯS\+K 6LtPɽNbĩxJ4zSC1.JVp\w"=SxgyC$! 6R 0C>_oSxHI`962ͤqQvv:dz:Y&bՊ$çV{d\ҾYb <-$sF_U,_n1C:w_W\%RKp!NKz‡%'-~ۯ=_wW9 H" vQ !MM_Tp! P͘22  oT##Pw\Uz<#F曢H`*#/YDjR_!)C͌h`ifW7 5-BEUIifq~e b$b[bfek:vu6i%xDWk} rpCQolR@#}x蹬Jj/lH$+M[DtSdG PwϰV9uXr 'R"*USh ne56r 8pnR*t&%KG / $3wISkZ)Vo!nԗЄm@a6`? 2Ƣ@@&&DUڈjT \TԱ|e|ģ ipuO//9,2¥ vS>E=b~~8(f{M^* E%꾭hMi_%qXasTmVcä8JP<>&:.Qjz_AaO*@(MTtW{GզHpݚkQpy&I%Wf1TBgG)5jMBKGG8 (%~m'+x%NAx*FsvL#>_V3pUη:Ήj| ;и |+-2ۀ]ibxL3:_:Ȳ|宓i:l8aE@1y@ :̣L^8d5Q -0= n}s !cl8FͲ[\hM&=ݎ~%Gͨ̀Нb(VF=# ~Ou|Hkr%T2"R@׉1RFP_SceZ*_yxڥLHOw޻Z,ne$$`"҈sFWq> Y,#(UH?OƗ([9Vùwu2ܳ hNx*Až#q!pW˿::;Q4Tc_'*PIJү$ΐsKʷzX}f>vY˃G1@x̆k^k Ӣ*d֙!-32r;&p+Vua͝,ZBomn1aG.E dq£K?ي" d("Óo#Ÿ$XpEET)*?R1ŝg06nһ:{pA0*8NDC"*,mɊ0z/JJJd>{k gLy`bO,uh4*Sm=bW6Jdf|JSY3*MQƮ_4_P8s>l'?U'5#[:n:u]O8Z Kِ!^"j&ݐ)5h`庉JRM6 2ÃF<ҥb茎Ob':o;`˟z]LL p>P9JQpyA#?ګijbdg<&E;Y{Ž bg/u.CF[6wX?sVC㝢!\ShϽwcB?Ϧd8q*bGN3&$,sBF*ǁvD4`_[O0&d<j[i9Q!+l_ D\S(_ i;OUZHa K+~*?4U`$`c̏g-2o%\3!LMȪT^S}rְ-C_AњɳH.o]>'[@ySh[0X+M#795!=DxOUwD \yڤq9`_&e5(5 %N٬idN>ӫ0mQ Juɵs] u^#^+ XjACsaEl?(WCO./TmZ6ȅ23Gdָ:'Ow>srTK~NZ'Zb˔ =ƊCҮI;H9iO hIHᴠ}>J+0ⶋx[/=𞄸R",.u/k/5hQN|dʱأ:';2-|MExfT(uglEu%_MuPXFs>%e } }YڶOutrTE ()t:!||C4'>D5jW18ݪ'?̺H!l3$!2js_wH#WSAyێj2.Җ6 d5, P-.w W5A}x=HE^EKeݴU>( )AGGߒ,Ʌ[fÑQ2_PX` MkԌs^| bH+$&!Q'-H]]c"mnXi$ MX$A>~hv+hՍϮ9npHC4jNbOvv}`<'?սBMc Nv0-º \*A U&F1ٚ uoR{*,#N`v<.9NW1.ZF cYc:/I Mw]x]#AEoE8Ֆ0}q *fQ IZwn źŻM4׉Rmovl@n@yPחS"*ʴA`]畯D'r [ =͜yjbY9۴<;B,Aw]0$(<VR}Imں{r0Uant\t]r!>fRO% mG\ףtN붾uQܧ3vA\ր%(Os; !;}oxIf,]zqyYa;Vi#9\F,!_JqtwǗl{3;"M #$ 'c"___&-Hhqj~TK\c1N."*x|VLݱXyxnR͍n%Nxq3d(b-Ў!sړ0^MS(N ø{$ro^" 阿~ PdߡH!Ra408]׊x _8lZؓpq4ioNeKcxPG듦uJj)rO0Sتn+uI%6")^LT&z Gp*~3؎oŶka@ZJ}|DaRީ?SRx)Npjuqy tJdOukR%L>m+5DT?` *c\clS hl [% sf3@hփ`X'Jac6ڑ_) Jq6} Jٔzrs6ʒz=88R՝z( qHIќ Oݑ'.EOOGɄא˅ePR{E>[4! v%_KL|~3 b:q' .<f1qV:~?xZX=H\iq/_cs]"Z@V-5H)`ƘΜk/HYk I_b.jŎ g#X'^s]E*fW[=jz (1..R$ݦczpY_!tɦ a nNS$.$E2~sl ,9 q[@W o1,_O"Gx^e ð_3Sh6ߍ,rĴKƧ~h oi0$zܴYT:}iDmyȂ'}lKΖ*Jdâj6A sez2?驎rQⁱq*]bOg5$}>EY9oQE;ywD gws+))m;5C,W &A޽ć_C\;tQ]5KcYte_"Ok":c`'J#_Z<@ݪHPG=I`lgRDžg޽l3iL\$_Wnʎ>c^nv;t[CCg^W3]|nU77gDPR% ֧֜ \X5vרX{mEI%`v/= ͇_f3>Nz[W$ sf?^<?R^ڌF[ dAWYnXӗjlbZcr>dj;Xl%=v,ʃ ,#s6YCD 2{>#9lPJU[{E_.ԁg%g}>p,ʍJ؅>y]fZ]CQ-ըVM#q^Cί}t&pnk6tРiQ,JxyZxE"xh͘nGF?)p, r}::,&Zߔ\sv<5'p2cE0e/ӛS.Qb!i%p^.P稇c[>W$OgGB{> ٭M~NAv[öH9JQ߾F\Uz;VJotno͟ZGGi ./,а(D-VA!u|Fw$ؓ?4Og-xsS:ʁ2[g"̈{],hI@S 1[!TO~O*d>UҖL<=N_ Q>|%i姏]#n:-8ґY&Ҹs|/e}\U0$XpjqZ~x&]{"!^o+Z.Ixiu!AeΉ\T"4a] ŊԹ67.I+9 ;K1',vL7V*$w2Ψu wm%EE52{!}#~\/RX8w'(*Veo f(St[If](6N`,b-Ivq/lWվɉYܚV*Ę|.wbL6M6"E&&@m(V;F 9j RiʀZMv( ^Ͽ"5Hpl$3%_|D +"yJ/#`$Z6Vje!JJ.mX(0F>1"Q;uGRpW[X&90[Ybe$PNks!R|n2[<)\~Nꮆ9b(iO]$7k|*,̕*5nA?Y[8X]vd[UIaq?ҝ86{WSɍAE4"Q JdA ޔ*1p/1X91BNVF|@8$ޑCwpH6:f5' N-/`xeB+*lGaI*&rC䗮.8N\rppdzpȜvsD\A뮃2]k(T s A6-^OTh9K)aUi~٫疺- N |[zD0g''1 fytжjj@:jɔ):p iXlGpI(9;rDfhOMZzK}‹=0$aK (I^e>ېZb (]pdzVfۙ20>sxEazbI%,>BjM;!1yI]Zub:qooCV (H-qe$sGY,CXg郢Wn@Q Ym5ᠱ)̌%eAB,݄5C퐧7[yrq"HOI㒲xEj4/$kZ`|=c"WK啼?G1UMix۵pXu8iEbHl| Jjֳ3,bU3SaN#9z i~{\6Q-ӲxW _cH7?^֝!н2SBe'7jH[塤_!8A@%J8sA&j lf4'RJ.*6!mZHP,nl <`,%8#k7k/p2Whf@ ^ Z aҦӈt=q IuP}]5z)U:I!GwnNV:jF(VL^C[W' .1tɃŔC(eu tdӖ+!7?#t))$$UyOG#=15.R(YfŠ($uIZv- dK_H[R`::!}Z|Aǹ U)t{cNl'Ib}SZ# aX.闼` 7K\[2["z`+f܎n.jIcڐ%Ö.gzCEtM@ 2|G"գ̭'nڝ =BxOPZΉXq(Q9#框k $&ϿN +E^O=bAWrGIѡ|&DBc}k,Fl&@yTЀ6PGL哃sNE>S6(V^4 {i}"P&QX]Ln65eqS؅Fw tv {G!cDŽ;SGxV7P _А娲~;1+3&P8nL1Gͫ/FS'kZVW_5ɽ pݝVɐq~2@s .U *W/Y4Q~=: GHLW)}h(=.U _oYAmx5LZ[rn1LE7:1:-@"ϻ?|/QPyº<}: Һb^UsN)$^A%sKWYyspū4\}m?Uzd>s*,<,,yP>JlX+N׌^3;ӃG>0~:(?2tGox"g֗YUl3eY;f;]ڟyW*hmz q"D""&HC٩W: ɸIqе̅u;6!z0;DhE&בּT|;3,'P<LXG58^p.pZ(Y"di^=eQ4/,z.T,~9ʆ:m#yc`Wy[P:9V\"oXˣ1&Pi?"ZfDp./k ls\,W9W 5Ra36Dvh.`R|L572I-;R!JMYA նBL#"gjE)A="_cM`r0z#V8[بtkVXr=%U:b"Ĝ^Ox{) C,oI8w)rϻx~K3; H.T v#]{?=5dV tdP-?lvEse5խօ Ȫs8A༐aƾBeڽ"5AW1BXޜY>m?bޱCW .~%4Zkf˷];ECbg.z+]βmx\eijh gP`d@  aU!/I1:UTGrIH|+)jzeOFTX.˒Fgp,fO8<(*%}cߊTᇩ(hmix} #U'ײx,\' $]Wo332f 9X?>itS[@a,1o4!af?HuSsvՠqlNB0Tν/zѐ,y@Cٖ&4Wzt9ҏ?n9N2>hɥ'2xx=R]/=Oh7ew_ C?ѷ ~` L+$+4IoM2OL ]{ZL|[M27dG˜ѯh,IVs?bӧ$וkM}-EǍcѨMVcK4EE"%!C롏G7qvC 6D{ ZL%FXa5haj$xt)(&ϝ$mLo=- !J͵Ff+D|L1!cu| @em F~ziw¾,[15[qcE)ˍvl_X ~m.VKT{t[2wH3D݇̎O"P|3P9hAR/gu\ ܘ8ݑg;S:VcEU:\.,64Zq!_?gY-?u~1HbL5C; !1p Z-G*&ԧXFfoot /(j\{ѷ̬gXn6fz^=k!H@;d8"֨řK}Hhr@LΉqJ_[bXt!5Pׅ{>}*&"lx%cv@t-uYB#}$"2 η{̓T<<qd虒 cvDoGU#_+na<.!QKiE7 \% :jpƜOD-fZDY`;+B9dK;U' G?::a|juِRKS+mH9") DzDN /S}_;cx d"Vk7s0.p>WMS M N;*tqxXº][W52\OCfq*cNdYy HPRA],ġVx3eE37[Iݬ9LVKR(Z}co1<#Jeu(YMى Rt~VTic7},£dh.AcJ]{?1Ltks |[jQ8W`z>j3o)٠f+pVP<ʲ]h.G:["T68wfAja^ (guU> }rCO燅z3ca|yƚfh0)l̀㎼g4=hyVA Ҽ$֞ )-_Ej崬ˈyR1'JI͋OWz։WOm18]L@V HzT|c_P ͲJiDܙZ0D|btktuq;%w')Iz~xF0'cm`FeW=V;e`jo[]KMW]v6b^Z{RAg0M[I8LM/o/.gv: -YAme3зo10ܰ,A*kƖ' ]@F?H}ȑbNPԠi7dvw&oCm(N9=Z}d|v{*!d?aAf(FvzV-!sFCZ e L7ab ?"#)# g-s[{ Pϴ6yP>YcWEcy5/>E2<@6  ?Vw޴[,q;t:_Ie ɿgǒ+ 0m!? ynGl0!ZlBECG& {Eų 7„; jzCi=ңEvX3U%lZc~h xoe+*USdxHRP[Ҷ8TU؝ :u\ŃO׋>P Rn6<~tɋͅ a0 łEuhN'* sB0޻]moC{Fqx3@5,"/7j^8Y :'h`Q>u/ΚCzE[TI0:{#T|mQ7CگZ31 OÀ)>N3 ~푸'4̓PZ.ҴW(B-U $aqg'LqUst:T%z+`F: >0dM>o;#$D_=ηD ! m8SiKeΣ=V5&B®LejM*" #r&svQ8 GPWcǸ܌~kL]&aj#}F :`a,26hh҂pI;tEd\srQTֈ |h;&,AN_jӅ>.jrL0_hqv[ww+I{M4I4z?P)vTxBTn5|w'W5k5Jy'N[disj>ˤw+q*l7%ϊykw֐E"ejEMh(V#I]0ADn`exZ!DUYVv>QԂJ׍zp莟 A.>0w%j~S*C9c_eM5>7`"I V# jc|EpDDj%Vlmαo&i`S,MU97zQk##|729;˽X3\C-l`=3sk2$Jj=QZ`<0RrM{t-9Ҍ'={hvik*%W9/C nME5DPڭZ]hoy+(R?`T&&ܢUFxm6ɀbi|Lo$ P}s i׷s5&I[{td@="&f"۠Wqg:^6t>M; qbA%%h.#:\Lo/3+TVѦl6eN(Vǿa{Ž% N1e)/5@1rnT&KǠ_Cwժ6%y"8Qk;Zg63|W=ր~  nH<]NDE3#G_'P3B0He+y $Ge0n5c|>5C׭7G_[ū:vq曨Dk>:Veۋ]:#|AQhPvꖦ`P 26tQ˺BMGEg `Iz\J5R> g&\щ(ڣnhO(!cuZ(녠 Zuռ V{&2F.xXd:MkD"n7TW D!fOwKO3ԯ:a;{X`<, ):1 |/>팟xӭK[X)ŢDg}#)%F:⮍=~7#p^s*|QgV1O.V\rJ"2[ I't1W1N CGgZMܖl] AHEia1^KNl7:-%47c}IltmHiLJL$$7GI$8hmߑmٖu,|tXq_؏'8'*N{ևJj&pc?1ȣ;&0NkZMp"JkaF(V6@L\?d?F1j L ;Ȳ?_I83"MFCf mTB8T :[2!jGF $I Ñۼ"!ׂADIϝmw6TXHr P @}C>$Aoa-$wc8u\Rk4'®NgF/]JW5~4jRg%2 ]e"JgOk -) A0 )=DTͪ2۴y1eaΔl9@,opL]pF{ ?ضEl tuD! O qiSʦ"Z0;yamX9/Nq)nDF3T;T1.v idtYcmo7m"$;Vn )KA?#\^L?ޞ!YN2#]0z[`hxD\ ߪA~B3Ü?T}>u">)pmcJn//EϘdy)i䑀$RIpGW*r )AˬmGߎuێ"r0I(~K%b.{N$u`9Fh9`[ޔדxm7]Ol5Ye^Nh*ֆk2XF>K":î pȵ#ozk3;N6J.BrCPA߯[9 $cxJ)[ʠ?P.]$ӥ*#0 W:tD-|=cbTK\yG\u_k6ElVgQwWj|__U]eS(caLҸȢKgؚP6@˻vh)=E!\Vuբ&p*PYj., W B֋O\9%Qz %5$z'p2!7&?F^K)$%u`6 P=[39j%% vҐLc rAI7s- $a|Ǩ)-ZHpp{_IN/g^):tRI"]=`i&ǦEwB2cnϟĎt GQnW)۔W t> 7]]=AV"A0r1!3tת?6j9C$"vy! s]f Mʋv)Xrzq`?B4!5zL( E;H/JVWddCv?P2! i(8?*CSliڃ 4C,i-rE%5^Mݏ ?9m>8G9dȁ, UXv3PR 7($ ( 5?B[(K&c4@l` z%rj+^+5c+}Kc[Q \߬?~HI:NG \T '/f-|-I^+Ĺ^/3@;vemMC}T2?==$W#B1 <|,˗]Ix4 f+nK۷ۛEAM:%m_}N BfeHrݟD <cr-_"݂$sL.T_E>dϊ z8aT+{%|Uȱm(dPD wd(li5u-֥%3G*i1r|Nbj|nZB?}~ i|$[AjhP,xM׷ͼ?M ߱lfn:S<6Gs ۍ;ȍə>[_ \T󞱉QYbfqu-Fm"SYnORe=Y\6oI-k /6I({@qlQehydsѓRt4C8 tIF i8hо:Zɰm] dmYhAQo.Dv}x'y!vBűH*쨞N\w[{UjOf~ ?6A &uHXD|92RK p;Fz%B܀WHk&B$O=Mū-!mwһF^h.Ieiْn w~EL~{Nn20u\}(rr}CaSw|QW[u4̠fOrl ^gmlQP1g rF]vV ?f[\~O;W5up ApN$L{e=crD ! } p6 fSBBn-35>rn }u2 RDG >;x4 V "63 O]k\4q| 'f̃#cܓb" #)r "'ևZN:fD鲥D<{Bri(1<ڬB@ˠsV0GBCt8ĕGkIJT5v5سUK}ekRXIdFYa"v~ 6{_Ob= fxAwg\J&I[GW$q~e%ؿO*\ĉ%~ߌQTodfքy#.h-^gqRVC@&/"y>8һ%r䓆j&8nTQ0ʮ8^'Jup=M}3aYX/2VtUCDB ԭ(E+~۲?Q K`.rm)&7WSkj!@&K 22yW@\켩i/ʤ$(MJx˟EM~_nNEt&dw-q{PRӼNUS^pC{V2!VaH h^;-gۀi ) &ᰑ9ui?Y+mڡa6j m@)NnY"l} )UqDP*Q+NM;%$X~~?!%y b$+T0EL| ρږ<8A1 uF)5|0 'h +T1w$'MVfJ@%}$P9O;4G=sª~WJPO0}Eqx]z@KI%–5ՌfojX*3jfEWpH.|1d^&C_gW9JN0nT)Udk">?oZt߽Dg%g%&^Jg|DNqosEEswtRvYP9V QB)rR3MJ}݆ ]O)=J K#r#]M,*ycQlWLjxEAѺ7-ᅞAzvpnYIﳛV8~A Ӓ9~j,H|U =0xqjh&C QsA (wByZ9KJjJ" 1-BJ}ZO @o2AһKc^/dQK!j+A.36'H`,Dہ\ߋߔV=-CH'RވcG=zv6;v[TT+Qs\%ueѿDz`vX I=B b" EmICmу**I Am"Yw8"59}=|&J -OzZ+)InG*r#~>[߄eY8iNyv^a_yZDY6^Q/չaJ!DZ7g1D!Jx{q!+>0;^UC9gw:Tx ͇skl{-Gk_"KƗ_7ܦQNj{ƅqoC\+|}PxyqwRs:!&;]׆.e{EhhːA*~ngA߁c^ܥ"Z)7I4jj,Uh ~Cho_^Uz˳'VF!4-׿~CW(aj=]QDq.͆+){[i/N9)-e鿊U!b_5iam~Bk{c>Jwaت330W/ ބ+2OL)6t8"It|/_|v%LXfiC\wau!}))RQxM⾬oF:R+A_U: Y}c۾Vа׷K>X)zRg}`"xUl ~*ifRwV^N7J_ }0o}`ü"Ӯ)>$Af\߲5[sVae|GZjI2 wG֞Pcs{v% Dc1(%R(w\ <85 u"i[@Q@]gxzkz^u$Jj2#JZOu@?ARҧwdOj߫H'_[$n`f6Q`?2,W p swV!t(| Y~x?5޶4XQ#LTrj9t+uCv&m@k0p4Lh;4G (r2Xmfؽ T6 6P΂qMxvR`[O*v*̌;bNSFpsS4>RHPm4hբ5ﯝ@ҪxN,Px]Qe:6 .d9vrK8{AGɹ>pz\pNYא'۔䅈BTjɽ\Tz1n)J8 hXz)X*46=:~ T MԷD"4c~Gi@;ͭ lRg#/JToU).?2iX>nU꣩ E9xj(oSg ܄LkqQ3SU(@wB& 畵~ d.$CMww'2dgdL*>,D =F-Hs|1 jI9&sRv)QnY޻$zv{;ެ`C֝n@BʷYpw$c\6"v8AmBauZ?G$&}/ęШ?5RҀ۾/ gA]8%I3'ѮJs@p[H*{N&)s(ޗ_977W.M$q$ ǰ ư"V?-w27'%6/:6(ϥ"}y]NL[+BGLx9D!&f m9 WOI8bJ.$|_SAk -pQ{8Ѩ ?t6|~8\A[`❏W|<)}кCF\S٣YRG!LYŒ͙3d$Y̆w^7-@6h0m=d rd O=AGYfR9v~S}-bˢVggxI^֐1߱DM. ,B܊lmxs~\hN-{_8;i.2 C\J { )#";*}fg?si$NIT@h͆e;~ƶyB_wmoľ(g1#[.xAĥcN Z f˞ WTljl=\ { wЦc[l0B>`~8O"YÍeK8M{Ѓc= z q-pKqƌ_%ť?NaXVSEqi:/ҞFЮ]tXf_NT %n-HCj=&h4(tZaʣGh_Pg7|>޸-%ON>AV7/C&18z_V;K{WL a⼊s'>Hz8>Zܭw=3eOܓ++l_;M,3ҵoAq[Ky#2pQTC]-O:`/AM^c([)ӻq7(ʷy )zC#ǑA癁v$ e&!ii']O57**Z31AB'.h9͈E^\7/ŃOC!ڏuap#W: s,duBz@g'q!TD퀴Wgz!N[B>U$D 4^|;ȌMGݘo̊8:'nPUS_&ZNEd )k${cp4I[W?p04$C*8 Qie9M 4%LF职gc;B1~G(Yn}U)=VR4I#/sfU$J*%vTtlb)f?gaS:2 gOS֟+@,!WLzf9Q YS }$dGהqq0փ __Bsv3g>qyAU$~ (p.,Kh< +A$IԋAZ5GCґ 4:YmUUB 7ψNw|,lJ5(4(li(Xx@ +Gbp1nt5Lu7U#Hިk_ɀI|2Y NÌ^/Dn;fY8ڵ MبY8Y@wb?D?C$r`3{Snt6o>2b)Ba ?-5 0ORTeZC@}wsF5Tyt< M4x%fV_˴=^zZ% F BeKJi|?J|U]@5]QqʣKvMZlzxzrs O;i'aD ɯ@SuX^0&UCY]͛18ùp w2-w"YvZzpրZXyZ~< tV:oG7L3e+@MNvGOݘrR~ /BA" S&·>C ^Rn MIrZ X왑\(-XH#$%[!v($j4wGgwuPd `zn{ fDžpJx /f3}W pGe+3WIMe>>;BUZxe"l4>mV-'qoQbֹ[uo=׸!LO T0.'tǚ5?a8>VH6X #FxTQ^{Z0eSyvw.\Gش!ܯai0Jcgi)"37X 5U KЧ3KV+,sCdLaS܉ YJ @T7%Ҏqwxe`g]dF7\.J􈛄"gC5>+8aӤ^R||erTj?@ -6nW?0JFW8h:IMe.?in{*EnKqq8ҟX9P"L<I&N봧@%f]:`=TmmWcd ¹*ȇ.g'+=j'oّ|` ~ j& ]w#X"T.VmAշD͐lpPd1]EAګA0oAwP/΄M UEx&5qzcSs٭Es RK]a:XM)Y6 dtL m2~?׵bC-yD0{0| yc`,bZ8,WBN}wO(C~=GR}QSۑ$PIX7oHՆ UmDN3n%E?"t;z.GQۦ-ws14u:7PcfcؐL +SʊH |&xZ Q'1'OHH>:n-N /.'Guy$^#m%KE ٠<Ӷq[ <$/~[*q72l?j-gAК%&ñ2qϓ |A'{]`!F#R{mB' I}>~}zAm2sKLH3;J[X6,GwPE0kaaINe%ՏpM~pb̿[E2n ;Ү9LOozޯJ}z*?0Ց$@'H+HH9';J>1hC+. fN+T71e:2>HG¾֑Qn@M rnHĶW3;TQYw )y+χ,-ng@%y&Fkԫ[&Rh 750'tp`r0zg59FA*'ˁ8߄0x :hEᒌ/" x{u;gfp, }Yǥzl Ba; ~灍B\iKbX9tLь=5ݳt @c$)* 'ȯZȟi# nÒ\)mA6eo*iՂHr-V+[k@ʗ/zKBQdU'8$=hTz_n׍-2<- Um"L8~G~rSG*= jjaȘzUJW+3m!˂[ CˍXa& Bg>A[{`p^Yb4uDfԐnk:Fuypf!rҊp' ORMg͑$jOhh)!qXZ//MY8܌?l/C>_}U~܂r Xd^>;+Z0WYֈ $9ڧ#?f<)ۑ(26  + OJ|ercc=0M8OSEpwTUdtRA/ YJ5\}(יkN ?g ;ÔQu0PYmi"[a}YK xh~¨lZO1[xhtqLHS>?luLNѯO7JĥcK t*GM7LD3:#yn5{сIذU1{]I5 +&s7(xW-6j3;ěGVeBq#'{c`@;`5,lB>tgϩnRT/Cؒan=Q U< =D2c̻p/M1k.E?AQ#C؞kyGΤyMl!.߰giq؝]I{?8PUZk%}~ă HCaQE2,;߹V}TM;~N"^tI.dH$ X.$&G숡cBb~~Wi'O9h9iA]4c]}Ƕ"]1n; 4?PWԛu2ғt`D'ۃ}Jiؕ\-U|]eJ&Lo2ZoЃi-j5>H>֊>uLdP]eڼ65|+ɒO'D23$Ϋěs!H5ua!D][+ʮJOTP]/'ECl@OS˼yQ*Xi>0_f)B:Ks/F4} JASAcLΟ!\0*lɲ-|ahU-bGx-rSP2Ls4׹|z4*E71l @Ōs t٤~ k=1j#G"nƷz5jV&GZ h`Vc9.U!APWj~ oҵsm稭}Tp4up$YlQK薬zsE{1-*}fح} ?Oe-1 E7Lyagp¶vp11GYݴa,0ʶi4d 402{n=}\LIMWO!׮Cԡ-եg +|X 2_bSN5{){ځq qI:IUAk=vu7JhېYE&gG`B\zHja4:Z¼Zc1*\zm`f.!**ZؠZǹx:Bڵ ;:$JB|ǢÂ9rx}l_*xg$yl@`S/I =%$"lPˆdj`Rbz'B-PC55mq4w1pj=v'kϮ]ju0c~Ap vg$d]-oƿMG,Z8T=LŬ742TP*Wc RDCf\IL`q-tD(mԮD 3k2ʗ+u"̋ rjY wr[$@EʨVR*ƤYh/5F@ӣcZM3 QNFL&܁G%UCM} -qC0౟ vm{WR S,vڐpR,~pQ"Nn<//4#Kw { -MuԷQ +V6 M *E+Q!Ws Ɍ0mED);҇=,ŎYP̑SPw+5Q80dj=?sBvӃD{&3/>N-M$?+cx48Os'K a|E5\̸$s>TEEs;Ü86TJWǙrՑPPv9-F/F'+ ~K^zęs2@v*[ 9Ѐ/x1,Gcvguoq },N}IV􌫷c 8*8CkFA]<׀hqѭǁ3&;;AMy jH>~}htQo3g8*GфJղ B"5">ط<sǦJ(W,reAԤP눘?`6K?O0_3?/ZqS~[cA:,UK ͌\爣oN |1{7q9o7A }rhɀ qsxO;xF#g-/1 iC1kH9ŏK%oD2 )f@6*T$zċNg(<5 n#ٕſEV-M2OG8[~3B XgBc{_x^,/!;T3\岊%DDo6ԟ^zvŚ)lhoJh̏nNG=Ylo^Dm:pjD E?90Nvl~z_}u+5@=pbD z!]iaLJz8|!9]MyzD e,;Yy y㖷0VpվTH'ؤUH\D5zxIhx4QJm}|v65 4ub؎Ld0s- s/gt(Xʪ \ wE%Kx`6G*Ad< (QXHԔ%ʁHB|9U|wE"d ͨ|SS{yW?]tUA?ӵ# K0̀{heN㲍sIGA|KWc  bZ9gAA-IΙ[M ʨO$| X13Y.vQÎb /͵48~E46 3XI߱0Ս3y4[$k}(V 7sTh$Q6:僱Ͻzŷ&3񭤯ĝ:Lsyrxtnn5_pw8ZRJtڇbtQyGA:~1A+M"CjΑc_Tm[c o8oĐz g6T+iKdqm$utS8!#JyrA8d{ 3͎Z&η:4Dぽ}\ќD;5N\GQ/=3n?x1w2 7#=t\n&ej; 1Ÿϴ}ɦc8/!עUnJg+ZL-EgqR70R:]C.ZXjua07R;6=[-ٛ5h,6fNRwվ?q[/G-f:#٣ ~1x%GֺCU9 :N xgy1Zc2LV0! UG>+tE#>MY& Rg\c V^m:]OBȰ \ƁO-Nj\&gsɈ`Z\؞G}< 4։ۧTH`\3:FYސ-N󤛨 :oa%kiX&Xt`Yc"f|]AK1|ɐT?cW57E"I~lo NwI?s uzSH f2Ӷ\H/Gu\ٻZ(w1_J&h7s?k.?|ILtF:O]cȷG_Mno&[{^z 0.GCt}wS/~g&nA`,S߃`ueoBuXvǜ(MP]: :uف-v^_؀xd"OzyYqƇ'@Сu\%a&IrW$nDd×Qtq"J ;$K{^y]^=g2| gz675#Bk(4A-;cGi0?h#%PK_aR"B+5l^A/!fbŻueLcAUr"18 0dRa <)@C>[ gx#lQHCx)la,"&]S|Ba~y~xm%4#Ht. Gu;)\lWIG2=O_[AqI7ZIY+`.EjQ/\?|Jn6XBns;Rآr%*t9@oކ*eV0@0>2YdĢrSf3Z@-WV>3;K}:Ϸ i '"ZaZr '1عќAMK7aBm~ )a VL5Ie#fj`0s+AA9>6q؄#dMÅ~ϭ@|u]ʧԺO;YOxenDvj״VVq<Ц3eTbzH^-H9Bt}w̵3yٵѣM= 0ҊKȸ~qQSxڢ;?@i:# e}p!qAcƽIqDu;t'I$Q|A"c y1 cTL:c]KȶƲsLAwQ\=4*g]oUʦH)]e(KXSK|Q;G-cᴸ̝*6zؒa&%LbɭvGX8ޘvtJ.cR|CA!ߓ z̥0Brҽjc˸&l2K{ z@wF=8 !@q|XA)%^> gNtZyHEZ["MFzq|Jh65WS HA|TB*pz_3LwE@ivMrurRdwP9+ȕ"0՞fDZ݌/auBթM`^;dr^5 "ڙ#->͚cAN1jwxs0i(ډQ"xI_x3 ;C-p_l9@pUa'n(_duhÿSNx_m{B^:+x9Yɐ>s`CekH O3|x7W5'$n_CɚwAt8CmV$`7yY+2 >IJ A ́P.GѯXq(>]4p&4aD𾘎otAт•Wr/m0U|JD"1e-fm EuhzP/0|Tg #v1Zu%X{ *S7Q?VOØc{N|;Ѕ/E)qBJOuX7a")MDX5z r#\Ɠؚ!ٻ'8g!i56 'ߎR0A`zNvFnE CxSR%F2 FHI9Ch,u|3awXN=SMv^C:| Ʊc\'S-6@5} Yyokez}A7ji_aI577;> tJ1ʬ[bK8Ӻ-li ' I(d;V !V#L:ۡe\}C&Ztr aPTlŘ-J' B݈ie,hd.E5վ^Ϧvn!]}g%bN^ ~|& Όwa;:ݟY1i&,/[ b_Np_"Q|q Hq YZ