quagga-devel-1.1.1-2.29 >  A [Wp9| Q$> 6_ \SȺ:GZ_dvpr63 1D C40_ae9\ YQon\EҐpCO<(xOtb'X|J*/fY1)9}I[zfz rw>~{񘧗[ g oЖ/F!7d]+{E>2ؠF9%7QFMЁ@v=JiI+Zk%QmuM`A1704d4762db356e1d062c453cb950b8afc743319179b42627ab6be7997cf6b232d579f3a20ad86e9ac71ab7193712d15e6b62723b[Wp9|چsEv2/*|럢v_TgGXī.J`i`F ƅH۷jv~x0ԍlC ]CB>`< ,cK~^9zVtÉ+M+?a`ſ5&Gg%Rkv?8%[43[PQrQk:Zߒj='&1gs) .tp;?|d  ^04<@Yz == J= = = 5= ===*D=8\  ! ([8d(9(:(FG=H=I=XY\=]=^\bcldeflu=vz,06xCquagga-devel1.1.12.29Development files for quagga, a routing software for BGP, OSPF, RIPQuagga is a routing software suite, providing implementations of OSPFv2, OSPFv3, RIP v1 and v2, RIPv3 and BGPv4. Quagga is a fork of GNU Zebra. This subpackage contains the headers for the Quagga libraries.[s390lpdMSUSE Linux Enterprise 15SUSE LLC LGPL-2.1+https://www.suse.com/Development/Libraries/C and C++http://www.quagga.netlinuxs390xWj@0\E / K *O .j~ uMC"- (- k"J Lb"< A큤A큤A큤[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[94a48c22212cadb857f66e6dcf6ab0c679bdecb97e33ef3f1bdfa65341ab5f3006c6d711aa3ca19a6697e4392aee6a4102f2a1d75c9391a765ef83da9d5101d469b0b5dc87733d0c689e0f0f816e74641ab71c2d05993b7817281727dc7e4299ff8ad89e83edc0cf9ea63be0c5da64a86ea1c1efdbb0b1ad1d4fc52bac566bcb8d1aacc475fc4ba774d4611189322d6d1b5c819d1eccad225ae425340b00779385c43a11991bf05d3031cb1fd3684356c801a4662a68a5a6933e37cbc3a941d2ebe8c9941b553f69d5d1826180bd2194e3245c63743d1b63bd45bd6296aa5d403834f8c4ee04ca18b863d8093108bb9f1e04fd9eb5bb8fa322bfcb993f1cc3a7b67607b5ca257747ea9d64ffc7f8da6df6b73711d3d36f3ef33b6a308659da7a4491a1bfe3c27e44e8fb017a0b1c2f2293350ece030d256809af26a6066458f9a370f2f45a643dc22d783bddbea445ad6f79b0ba787df343cdc4ab22f967bfc44b6d0dd13ba2f37c1c2849e7f92531c7108bda5d954ceeca058c5bf24d060b8b9d547c16eff9de8484d546009b220aa44a429d65cabb8e322da7a8f38a9d45dfdb1ef287bf825b2cdfce63e497497df69745164da1cfc729c4c8d6c1344e04efae0dbb3caa69ced18c24bfe0c061c07e25c3a3c9e98b79c2cc182780e931f739ea26c5f52821ada0f0b60ab0701c91ce9fc034c6834b09b7d6ffd12850bf7f7bb2fd4cacdd5a367804272d810237998bc8f797e3f51202baab033101db01bdc09b578397fa4c317caaa7efd738b4cba7800b20daede4647a52ef8d34a5166008b4227db703d70b2d456dd6874968f70d40b750fba0850ff28e92d52fbdabe99667e5fb7dcafb102c247321e1feb47450fe73c4d960f5fef9340f4f6563ae6cfbb111f1d3090e6774e90ee2f8f23a35f0b4c087067260566558b2c16c258895d282b2a06e153c31fababb60720867eaca52ebcc504410a77e206b122fb8595efeef9d61b9b87698e39270efe50c608c952ff5c420fe403e070122dfc48602e919ede223a6159590734bf2ecb6138c4ec5a5e51f5a9ec223e1d6a0c6a0925af87ff4b54c941825af2dae11a77635d05ed1aeae3a409b5561dcd56fc856ba07c6db7e0d27dfce44077709994c6ef838d91f805005907f87e2c469081799e3bd5a5ddcd237dd0bbcf5a4839e352ad25965213b7b6e75b733b6cf33bd1f515d56b0ae472b53462420bbaff15e33e26e21442e7090a4686f5626f7fca67dec597f2b6ee16d774a7e78f4f5fe10710f8ce024617bea040d37c3c062ea1b741d08db02839c0cb146883ee1232a7971c27cd6b480b451b5a69b0255a7d8444bf8e13ac215fa8a6e7e8787ae82d633dee75a2bd0789d1397123f9abaf56cf132de9ee6490ad26d52ecdda669cb7de5fe400ddc595b1e298ed031de85c08acf4c23f45d03523dea8ab72adbf900c2696229356f694af49d0129ff09ed13602b63110de5b4b08454466d7abbc28ec430e666f03cf5972a5b3e2a2521765fbdf2356eb507b147ceda6e1912b7b3d004395e725b7b399f3dc175e587550672d7060e6c5f4c41ec26b753b4f1e9c48d6a0234d8e849049f23ee23a89e6c9d504c341abf8a841736a5ffb7c9f5a9fbc1fca34f8d643e0756ce6f217c27d9742d0952fba4ae483e50a5b7aceb7c0c8655acc86d48b957b16fe639a221bf82f0d9f6eae8576696c584489f5cc491bb2d2a32ec7ead70d7e988b305bfbb2c55eb558ff7756434022c663478bd53aa60721eff922999e1eeba47d810aff95a07005cd69cabd5b2e5435f2685f539e67fd1a301e40eef3347f6ff8a39de7876eef5f3c2aec86a4b572e009637c661b89a8f38e0b181ae2c9fba2b3952dfa9839584f1ee99d4a8945f7218ca63c70326a0e02468e7944c64a28e03c586665373f8cf7e7f29297a0741b2c72ecf5a2cf6ffe44cd43565843db63363a5519a1b97ae200f4f4058f8c92d65eb59ee67ef6575c5cad474fec5784a6bdc8b5806bb4a9c7b1b0ecc8bba0681c039846f9d2a8325711a673e9320be37dab44f144a1a28137c55cd4521edfee9629180e70994b0b8829a700ae1c44ecea3ac7be0550182f5834f8876937f324e6598737528f838c17a1ec18f82d58b5fbd383d4333f93fd69baa90413a93bda69b6387757c3bf49403da6d96d04754eda641e2544ee0912617fd2f4a67c61acd07b33156e069b8136ee24038a7e7f0ca00cd3cf687a92c78d1d0aca08edbe755c6820b788cf277461ab8a71306f2902336298d4fc2616cfc11e5db6e0448017961a2cc58dfe0d239e1edc579888af1902170df57f35f7dd3e9fe61014f4b81fe11a7aa19b8efc72dadb3f965cad1af6a2009fad6dd021b452fbcde8ebefc6753f847libfpm_pb.so.0.0.0libospf.so.0.0.0libospfapiclient.so.0.0.0libquagga_pb.so.0.0.0libzebra.so.1.0.0rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootquagga-1.1.1-2.29.src.rpmquagga-develquagga-devel(s390-64)    libfpm_pb0libospf0libospfapiclient0libquagga_pb0libzebra1rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)1.1.11.1.11.1.11.1.11.1.13.0.4-14.6.0-14.0-15.2-14.14.1Z}@Z@X@X9@X@X TXW{@W)@WKVbVbV@V"8@U ]@U"S@S@Q@Q@Qq1PPy@P#@NN@Nw.Nw.Nw.Nw.Nw.M{@MdL7L7L7K@Jyt@J]J @J@mt@suse.derbrown@suse.commt@suse.detchvatal@suse.commt@suse.dejengelh@inai.demt@suse.detoddrme2178@gmail.compwieczorkiewicz@suse.commeissner@suse.compwieczorkiewicz@suse.compwieczorkiewicz@suse.compwieczorkiewicz@suse.commrueckert@suse.dep.drouand@gmail.comp.drouand@gmail.comsfalken@opensuse.orgsfalken@opensuse.orgmeissner@suse.comboyang@suse.comboyang@suse.comcoolo@suse.commrueckert@suse.deolipro@8.c.9.b.0.7.4.0.1.0.0.2.ip6.arpacoolo@suse.comboyang@suse.comboyang@suse.comboyang@suse.comboyang@suse.comboyang@suse.comboyang@novell.comprusnak@opensuse.orgprusnak@opensuse.orgprusnak@opensuse.orgprusnak@opensuse.orgprusnak@suse.czprusnak@suse.czprusnak@suse.czprusnak@suse.czprusnak@suse.cz- Applied security fix for bgpd DoS via specially crafted BGP UPDATE messages (CVE-2017-16227,bsc#1065641) [+ quagga-CVE-2017-16227-bgpd-Fix-AS_PATH-size-calculation.patch] - Applied security fix for bgpd bounds check issue via attribute length (CVE-2018-5378,Quagga-2018-0543,bsc#1079798) [+ Quagga-2018-0543-bgpd.bsc1079798.patch] - Applied security fix for bgpd double free when processing UPDATE message (CVE-2018-5379,Quagga-2018-1114,bsc#1079799) [+ Quagga-2018-1114-bgpd.bsc1079799.patch] - Applied security fix for bgpd code-to-string conversion tables overrun (CVE-2018-5380,Quagga-2018-1550,bsc#1079800) [+ Quagga-2018-1550-bgpd-bsc1079800.patch] - Applied security fix for bgpd infinite loop on certain invalid OPEN messages (CVE-2018-5381,Quagga-2018-1975,bsc#1079801) [+ Quagga-2018-1975-bdpd.bsc1079801.patch]- Replace references to /var/adm/fillup-templates with new %_fillupdir macro (boo#1069468)- Disabled passwords in default zebra.conf config file, causing to disable vty telnet interface by default. The vty interface is available via "vtysh" utility using pam authentication to permit management access for root without password (bsc#1021669). - Changed owner of /etc/quagga to quagga:quagga to permit to manage quagga via vty interface.- Remove FIXME's added by spec-cleaner by using proper phases for the prereq deps - Remove code checking for the proc mounting (build scripts do that for us anyway) + remove the commented out autoconf - Use content of %tmpfiles_create macro rather than 2 lines of checks - Use version in zebra provides/obsoletes to avoid rpmlint warning- Update to quagga-1.1.1, a security and bug fix release (fate#323168): See http://mirror.easyname.at/nongnu/quagga/quagga-1.1.1.changelog.txt for complete changelog, a digest of the changes: - Telnet 'vty' interface DoS fix due to unbounded memory allocation (CVE-2017-5495,bsc#1021669) - revert opsf6d: Update router-LSA when nbr's interface-ID changes See http://mirror.easyname.at/nongnu/quagga/quagga-1.0.20161017.changelog.txt for complete changelog, a digest of the changes: - isisd: Fix size of malloc - isisd: check for the existance of the correct list - ospf6d: fix off-by-one on display of spf reasons - ospf6d: don't access nexthops out of bounds - bgpd: fix off-by-one in attribute flags handling - zebra: stack overrun in IPv6 RA receive code (CVE-2016-1245) - bgpd: Fix buffer overflow error in bgp_dump_routes_func - Added libfpm_pb0 and libquagga_pb0 shared library sub-packages, adjusted libzebra0 sub-package name to libzebra1. - Use tmpfiles_create RPM macro to create quagga rundir and adjust tmpfiles config to contain proper rundir at install time. - Removed obsolete patches: quagga-CVE-2016-1245-stack-overrun-in-IPv6-RA-receive.patch quagga-CVE-2016-4049-fix-buf-ovflow-bgp-dump-routes.patch quagga-autoconf-detect-AM_SILENT_RULES.patch - Do not enable zebra's tcp interface (port 2600) to use default unix socket for communication between the daemons (fate#323170). - Added quagga.log and create and su statemets to logrotate config, changed default zebra log file name from quagga.log to zebra.log. - Cleaned up the spec file using spec-cleaner.- Implement shared library policy - Check for user/group before adding them to the system - Trim description- Add quagga-CVE-2016-1245-stack-overrun-in-IPv6-RA-receive.patch: Fix for a zebra stack overrun in IPv6 RA receive code. (CVE-2016-1245, bsc#1005258)- Fix Group tag.- Add quagga-CVE-2016-4049-fix-buf-ovflow-bgp-dump-routes.patch Fix for a buffer overflow error in bgp_dump_routes_func. (CVE-2016-4049, bsc#977012)- replace quagga.keyring with the newer upstream keyring.- Add the %{_rundir} macro handling to spec in order to distinguish /run/ vs /var/run distro versions.- Add quagga-autoconf-detect-AM_SILENT_RULES.patch: Fix autoconf issue of missing AM_SILENT_RULES macro. - Add build requirement for xz- Disallow unprivileged users to enter config directory /etc/quagga (group: quagga, mode: 750) and read configuration files installed there (group: quagga, mode: 640). (boo#770619) - Add sysconfig.quagga: Fillup template for /etc/sysconfig/quagga - Update to version 1.0.20160315: See http://savannah.spinellicreations.com//quagga/quagga-1.0.20160315.changelog.txt Remove double read of stream - Update to version 1.0.20160309: See http://savannah.spinellicreations.com//quagga/quagga-1.0.20160309.changelog.txt Add code to extract.pl.in to prevent further cli function overwrites Fixed if_add_update possible null dereference Fix _netlink_route_debug message Check prefix length from zebra is sensible Fix privilege dropping to use system defined groups Additional centos 6 -enable-werror fixes Fix code to use srandom/random Removal of 'show ip mroute' * : add/cleanup initialisers, missing includes, VRF ID in the API message header, assorted warning call if_init()/if_terminate() from vrf_init()/vrf_terminate() fix "babeld: Remove babeld from Quagga" (336724d) fix in_addr initialisers and more initialisers (for BSD) fix signedness mix-ups use an ifindex_t type, defined in lib/if.h, for ifindex values use long long to print time_t use void * for printing pointers babeld: Remove babeld from Quagga bgpd: add back old forms of 'show ' for compatibility add "show ip bgp dampening" command tree add nexthop length to AF macro add some peer_lock/unlock debug code add support for timer commands with peer-group syntax allow using rtt in route-map's set metric bgp_scan shouldn't queue up route_nodes with no routes for processing check capability falls on right multiple of size, where possible. check rtt later after the real peer is known cleanup vty bgp_node_afi/safi utils compile fix for clearing-completion FSM fix, using workqueue helper. configured suppress value cannot be less than the reuse value in bgp dampening crash from not NULLing freed pointers display of configured dampening parameters do not allow a timers connect of 0 drop machineparse / random "show" improvements enable "bgp log-neighbor-changes" by default encap: add attribute handling, add encap SAFI (RFC5512), extend extcommunity handling, encap show commands fix: bgp_btoa to compile, crash reported by NetDEF CI, ecommunity_token initialiser, graceful restart capability minsize, memory leak in bgpd/bgp_route.c, Null pointer dereference in bgp_info_mpath_update, race in clearing completion, small memory leak in str2prefix_rd, SNMP write support 'struct peer' memory leaks useless call in bgpd/bgp_mplsvpn.c using of two pointers for struct thread_master * VU#270232, VPNv4 NLRI parser memcpys to stack on unchecked length (bsc#970952, CVE-2016-2342) general MP/SAFI improvements handle AS4 and EOI route distinguishers if route-map does not exist DENY for redistribute statements ignore stale entry candidates during bestpath selection. implicit updates in BGP may require a withdrawal from zebra RIB improve cleanup in bgp_delete() memory cleanups for valgrind, plus debug changes hook up bgp ENCAP and VPNv6 CLI node lower BGP's default keepalive/holdtime to 3s/9s lower the default 'timers connect' in BGP to 10 seconds make bgp_info_cmp and multiple-path decision logic more regular and robust to paths that do not have su_remote info make bgp_nlri_parse_encap conform with other nlri_parse funcs make _vpnv4 static handling SAFI-agnostic modify maxpaths cli's to use MULTIPATH_NUM for range only use routes from Established peers for best path selection OPEN parse errors should send OPEN_ERR and UNSPECIFIC subcode. peer_uptime overflows after 1 year fix zAPI parsing refactor route-map objects modifying integer values regularise BGP NLRI sanity checks a bit regularise bgp_update_receive, add missing notifies and checks remove the double-pass parsing of NLRIs 'set comm-list delete' stops as soon as it hits a community-list entry with a deny speed up "no-hit" withdraws for routeservers tests - add null pointer protection to fix bgp test failures update dump to allow Extended Time Format update rtt on soft clear VPNv6 show commands warn user that bgp is setting maximum-paths larger than MULTIPATH_NUM wire up VPNv6 protocol processing fix struct/pointer sizeof mixups fixup afi_t to be an enum and cleanup zebra.h remove 'struct fifo' from lib/zebra.h refactor FILTER_X in zebra.h bgp: reorg cleanup to align process and bgp instance init/destroy build: add --enable-werror ARM compilation warning fix determine CFLAGS more intelligently enable vtysh and pimd as part of default build list actual release procedure make libraries self-reliant remove the old PIC/PIE patch, let libtool sort it out rework how MULTIPATH_NUM is delivered to build distro: fix redhat/quagga.spec.in distro: redhat/rpm: remove with_ipv6, package pimd binary, remove pam stack redhat,CentOS: update to support CentOS/RHEL/Fedora, upstart/init/systemd doc: add AFI/SAFI show commands to manual add 'OSPF Fundamentals' section to OSPF docs distribute a modern version of texinfo.tex with the docs older versions of texinfo seem to be sensitive to location of unmacro update bgpd docs, inc. on decision process, and with a section on MED. fixup of history handling fix alignment assumptions on non-RT_ROUNDUP platforms. gdb: Add a directory of files with gdb macros git: add (generated) cscope files to .gitignore HACKING: Change format to MarkDown, fix spelling mistakes rename to HACKING.md in prep for conversion to MarkDown isisd: add a debug mode that traces LSP construction add a slight delay to lsp_regenerate_schedule add new adjacency to LSP neighbor list add support to import routes from other protocols allow to adjust lsp-mtu always print adj->sysid (clang 3.6 warning) annotate some function arguments with const assorted fixes (unused variables, static) Attached-bit in LSP header don't corrupt memory for long hostnames don't use POSIX reserved y1/yn names do remove ipv6 routes from Zebra drop packet received on multiple interfaces due to the time gap in binding socket to an interface fix: assertion in LSP refresh timer calculation a typo in a log message crash on processing own p2p hello IPv6 mask application LSPs not being regenerated after adjacency change minor & vs. && mix-up misleading wording in log size_t confusions handle lsp confusion (ISO/IEC 10589:2002 7.3.16.2) initialize circuit to match area is_type make send_lsp more robust provide more detailed log for failed address removal purge on correct level remove superfluous checks after XMALLOC etc. remove unused process_is_hello() show interface's ipv6 addreses lib: memory cleanups for valgrind, plus debug changes add: CMD_RANGE_STR macro to command.h facility to log all CLI commands function to get precise remaining time of timer thread getgrouplist() for Solaris SAFI_ENCAP type, safi2str prefix utility "show commandtree" CLI command zlog_hexdump() for debugging allow caller to provide prefix storage in sockunion2hostprefix reduce strcmp in CLI hot paths fix optional arguments with description interactions constify sockunion api don't have log functions change errno fix: bookkeeping for libreadline malloc()s duplicate variable name in smux.c and vty.c Free Pointer dereference in lib/filter.c POSIX capabilities on SunOS platforms "reduce strcmp in CLI" fallout "sockunion: add hash function" for BSD vrf_bitmap leak in zclient_free() hide internal prefix list structures make prefix2str simpler to use, and use it in zclient make sockunion2str safer to use memory reporting fails over 2GB move the interface list into "struct vrf" display more info if cap_set_proc fails. don't use CAP_NET_BROADCAST remove unused 'show memory XXX' functionality silence type range warning in macro straighten out ORF prefix list support stream: fix stream sanity checks treat realloc of null pointer as alloc Now use zalloc rather than alloc with null. Fixes issue seen in bgp check tests. use const consistently for zserv path vrf: enable / disable a VRF vty: add separate output fd support to VTYs add vty_stdio() add vty_stdio at-close hook don't clear output buffer on input EOF put stdin in raw mode for vty reduce unneccessary C extension usage support multiple VRFs by using linux netns add trivial work_queue_is_scheduled helper wrong #define used for IPV6_MINHOPCOUNT zclient: can overflow (struct interface) hw_addr if zebra is evil consolidate error reporting for zclient_read_header add "vrf_id" into the "struct interface" move "struct vrf" to be a lib module unify link layer type and hardware address handling configure an interface in non-default VRF ospf6d: fix for fast OSPF convergence fix pointer arithmetic warning fix uninitialized warning in SNMP oi->cost is uint32, not short use existing union, avoid strict-aliasing ospfd: add missing unlock for ospf_interface_address_delete() extend 'ip ospf area' to take address argument + rationalise ospf enable fast OSPF convergence fix bug in 94266fa822ba, nbr_self rebuild didn't add valid nbr_self fix for 'no' + 'debug command' does not disable 'debug command' fix unused warning in ospf_write impl. per interface 'ip ospf area' command lower the default OSPF spf timers to '0 50 5000' make ospf_passive_interface_update calls friendly to static analysis move route_unlock_node() in ospf_ase_incremental_update() ospf_ase.c, external_lsa locking fixes. ospf_ls_upd_send() add missing unlock. ospf_nbr_nbma_set()/ospf_snmp_vl_add() add unlock PointToPoint neighbors are identified by router ID remove another odd flooding hack in opaque LSA code remove HAVE_OPAQUE_LSA and HAVE_OSPF_TE remove the blocking of opaque LSAs origination and flooding 'optimisation' self nbrs needs to be rebuilt when router ID changes. split up network interface enable a bit, for per-interface area cmd trap on state change seems to send incorrect value for ospfNbrState use route_node_lookup() instaed of route_node_get() pimd: add ability to set DR Priority for an interface add knowledge of different packet types add support for configuring multicast static routes assert when no route to source from a new igmp join cast ioctl values when printing them cast to sockaddr_in to sockaddr change ioctl call failure from vty_out to zlog_warn cleanup interface startup cleanup zebra debugs to be protected by debug commands create ability to modify hell and hold timers per interface do not display some default values as part of a show run ensure new generation_id is different from previous fix first DR Election, leaked fd, out of tree build, size_t zlog_err format string warning limit pim hello log messages mask unused zclient_broken() notice when we receive a packet type we can't handle yet stop DR election on every hello use IPPROTO_IP (not SOL_IP) for IP_PKTINFO 'show debugging' collision ripngd: add ECMP support allow to enable/disable the ECMP feature sockopt: add support for querying tcp round-trip-time sockunion: add accessors for sockunion address add hash function solaris: create ioctl_solaris.h drop duplicate __EXTENSION__ define more warnings fixed no ROUNDUP tests: add CLI dummy command-exec tool add more AS4 capability tests + little fixes for couple of GR test cases. add testcli reference in/out & do DejaGNU vrf: add a runtime check before playing with netns vtysh: add missing show thread/work-queues commands adjust bad_cli_stomps in extract.pl.in to reflect fixes & fix build allow display of individual daemons configs allow --with-libpam to build with --enable-werror don't use '\0' as NULL drop unused variables & RETSIGTYPE fix Quagga.conf file read in. fix the fix for babeld removal when the config file is close to the boundry of size of buffer vtysh hangs. hook up bgp ENCAP and VPNv6 CLI node fixup of history handling reduce unneccessary C extension usage support multiple VRFs by using linux netns configure an interface in non-default VRF zebra: fix struct/pointer sizeof mixups add "vrf_id" into the "struct interface" move "struct vrf" to be a lib module unify link layer type and hardware address handling configure an interface in non-default VRF add hooks upon enabling / disabling a VRF additional redistribute related logging atomic FIB updates clean up misc_null pragmas, RTADV define configure static routes in any VRF don't print uninitialized string fix: addr sent in ZEBRA_IPV6_NEXTHOP_LOOKUP build with rtadv disabled change of distance on ipv6 route creating duplicate routes leaked sockets in rtadv.c NetBSD interface stats printf non usage of VRF_DEFAULT route deletion on *BSD rtadv detection, check for non-glibc linux VRF code for *BSD implement per-route mtu handling let FIB stand for its respective VRF let the route-map rule "match interface" work for VRFs the netlink sockets work per VRF lookup the address in all VRFs when set the route-map rule "set src" maintain RTADV and router-id per VRF make RTF_LLINFO optional to fix FreeBSD make ZEBRA_FLAG_CHANGED internal status remove HAVE_IPV6 from rib.h and zebra_rib.c remove metric from kernel rib->nexthop_num is double incremented show interfaces in a specified VRF or all VRFs show routes in a specified VRF or all VRFs silence zebra_serv_un unused warning simplify redistribution code support FIB override routes use link scope for interface routes use prefix2str for logging where possible use SA_SIZE for RT_ROUNDUP on FreeBSD use prefix2str and unify show ip/ipv6 route code wire up "debug zebra packet detail"- run systemd-tmpfiles in %post to get the directory set up.- Fix build for openSUSE 13.1/SLE12- Update to version 0.99.24.1 * zebra: don't print uninitialized string (3b02fe8) This crept in as part of the MRIB improvements and I missed the compiler warning between other noise. Unfortunately, printing an uninitialised variable can in fact make zebra crash, so this is not trivial. - Use systemd for openSUSE > 12.3 - Add patch from Fedora * 0001-systemd-change-the-WantedBy-target.patch- Update to 0.99.23 See http://savannah.spinellicreations.com//quagga/quagga-0.99.23.changelog.txt minor fixes: bgpd: Fix condition allowas-in in rsclient code support TTL-security with iBGP, factor out TTL setting factor out eBGP multihop check fix fast external fallover behavior increase TCP socket buffer size fix O_NONBLOCK on outgoing send notify in OpenSent when stopping manually display multipath status in "show ip bgp" track correct originator-id in reflected routes add 'bgp bestpath as-path multipath-relax' fix crash when allowas-in is done on inactive peer efficient NLRI packing for AFs != ipv4-unicast don't compare next-hop to router-id use ATTR_FLAG_BIT() for BGP_ATTR_ values fix some DEFUN definitions bgpd-set-v4-nexthop-for-v6-peering.patch support NEXTHOP_IPV4_IFINDEX in bgp import check honor PEER_FLAG_DISABLE_CONNECTED_CHECK on bgp_scan write NOTIFY non-blockingly prevent double address delete on shutdown stricter packet handling in OpenSent fix lost passwords of grouped neighbors * : nuke ^L (page feed) isisd: ignore the unrecognized TLVs ripd: fix "show ip rip status" documentation avoid the zero interface metric correctly redistribute ifindex routes (BZ#664) zebra: raise the privileges before calling socket() Change the mechanism for comparing route ID's. fix some DEFUN definitions apply syntactic sugar to rib_dump() set metric for directly connected routes via netlink to 0 log routes w/o gateway in rib_delete_ipv4 match gateway when deleting NEXTHOP_IPV4_IFINDEX routes make rib_dump() compatible with IPv6 RIB apply route-maps for interface routes fix recursive-routes via ifindex routes implement NEXTHOP_FLAG_ONLINK handle blackholes encountered in recursive resolution rework recursive route resolution improve interface shutdown behaviour don't change connected state from zebra/interface.c add ZEBRA_IFC_QUEUED to keep track of kernel state warn if advertising connected with _REAL unset consolidate connected_implicit_withdraw clear ZEBRA_IFC_CONFIGURED on "no ipv6 addr" make if_subnet_delete a bit more strict process information about new addresses (BZ#486)` support NEXTHOP_IPV4_IFINDEX in bgp import check improve display of NEXTHOP_IPV4_IFINDEX in show ip route don't printf to stdout on ZEBRA_IPV6_NEXTHOP_LOOKU use SO_RCVBUFFORCE for netlink socket ospfd: add debug messages for router lsa-generation For an ABR, ensure the right LSID is MaxAge'd clarify indentation and comments in ospf_lsa_maxage_delete fix a reference counting issue introduced by commit 4de8bf0011 check the LS-Ack's recentness instead of only comparing the #seq don't allow to set network type on loopback interfaces run DR election prior to LSA regeneration ospfd/ospf_vty.c: use keyword cmd style fix some DEFUN definitions fixup log message in ospf_zebra_delete refactor some common defines protect vs. VU#229804 (malformed Router-LSA) CVE-2013-2236, stack overrun in apiserver fix flooding procedure make ospf_maxage_lsa_remover actually yield restore nexthop IP for p2p interfaces fix LSA initialization for build without opaque LSA lib: use heap to manage timers remove unused thread_master_debug function lib/command.c: rewrite command matching/parsing fix possible off-by-one in stream_put_prefix() fix for dynamically grown hashes fix backtraces broken by 837d16c... unconditionally include stddef.h register vtysh socket in server socket vector (BZ#754) ospf6d: fix refcounting in ospf6_asbr_lsa_remove add "auto-cost reference-bandwidth" command compute interface cost from its bandwidth solve segfaults with ospf6d on FreeBSD Merge volatile/cumulus_ospf6d fix interface_down() stopping hellos clear lsa->refresh before clearing LSAs handle missing link local address more gracefully improve ordered shutdown clear DR info on interface_down set cmsg size correctly don't run DR election early on "ipv6 ospf6 priority" fix integrated config add SPF logs, statistics, and display of SPF parameters add 'log-adjacency-changes [detail]' don't send LSAck on an interface if we've flooded the LSU out that i/f handle Prefix and Router Options bits correctly add LSA payload to show summary output increment dbdesc seqnum on SeqNumberMismatch/BadLsReq event don't change SeqNum on initial DbDesc message handle seqnum wrapping add overload support fix linkdown handling correct nexthop through directly connected networks don't suppress empty router LSA turn off expensive debugging convert LSDB to use route_node, improve performance fix neighbor state machine (faster lsdb sync, RFC compliance) add p2p interface support fix various bugs in installing and flooding LSAs add more details to show ipv6 ospf6 data enable the commands to support detailed debugging of LSAs. remove older version of LSA from neigbor retx list before prematurely aging it. schedule SPF to run on events rather than directly on each event. refactor some common defines security: Fix some typos and potential NULL-deref tests: Add tests for timers add a test program for lib/command.c DejaGNU libzebra bgpd add DejaGNU framework vtysh: don't append superflous spaces (BZ#750) fix false lib path matching in extract.pl.in doc: Modernize INSTALL.quagga.txt. update TODO for ospf6d work & bgp multipath add OSPFv3 homenet to TODO hash: dynamically grow hash table force size to be a power of 2 guile: remove build issues: lib: remove redundant and incorrect sys/fcntl.h include vtysh: fix build against readline 6.3 tests: fix build & disable testcommands don't build tests unless make check is run fix Makefile.am so it works with BSD make make --disable-bgpd kill bgpd tests too build: remove now-useless --{en, dis}able-tests improve backtrace support/detection reference libcap from libzebra (BZ#393,626) fix minimal mixup in gitinfo suffix Update supported versions. update quagga.spec.in isisd: use bug-report information from autoconf ospf6d: use bug-report information from autoconf doc: fix makeinfo errors and one warning- Updated to 0.99.23 Changed /var/run to /run in .spec file in order to fix rpmlint check failure in Factory Added: quagga-0.99.23.tar.xz quagga-0.99.23.tar.asc Deleted: quagga-0.99.22.1.tar.gz quagga-0.99.22.1.tar.asc- fixed source url, added tar.asc and keyring url (unchecked)- Add return value for table_test.c.- Update to 0.99.22.1 major regressions: ospfd: restore nexthop IP for p2p interfaces minor fixes: bgpd: fix lost passwords of grouped neighbors lib/vty: register vtysh socket in server socket vector (BZ#754) ospfd: fix LSA initialization for build without opaque LSA ripd: correctly redistribute ifindex routes (BZ#664) build issues: build: fix minimal mixup in gitinfo suffix build: reference libcap from libzebra (BZ#393,626) build: update quagga.spec.in doc: fix makeinfo errors and one warning tests: make --disable-bgpd kill bgpd tests too vtysh: fix false lib path matching in extract.pl.in- add makeinfo as explicit buildrequire- Update to 0.99.21 There are some major user-visible changes: [bgpd] BGP multipath support has been merged [bgpd] SAFI (Multicast topology) support has been extended to propagate the topology to zebra. [bgpd] AS path limit functionality has been removed [babeld] a new routing daemon implementing the BABEL ad-hoc mesh routing protocol has been merged. [isisd] a major overhaul has been picked up. Please note that isisd is STILL NOT SUITABLE FOR PRODUCTION USE. [*] a lot of bugs have been fixed, please refer to the git log The number of bugfixes and changes in this release is quite large at 446 commits, though some commits are counted twice due to a merge of Denis Ovsienko's RE branch some time ago. (Previous releases had around 50 commits each.) - additional changes from 0.99.20.1 This is a security-fix release that addresses 3 pending CVEs, one in bgpd and two in ospfd. The CVEs will be linked once released. - added quagga-0.99.21_isis_undefined_operations.patch: fix compiler warning about undefined operations - a47c5838e9f445ab887ad927706b11ccbb181364.patch Fix typo in isis topology code. Taken from git. - drop quagga-0.99.20-fix-bgpd-attr-memleak.patch: Included upstream - added options to build tcp-zebra, irdp and pcre: all enabled by default pcre change might cause problems in edge cases with bgp new buildrequires: pcre-devel - added option to build with isis and isis-topology: disabled by default- Update package to quagga-0.99.20, remove stale patches. added upstream patch to resolve a bgpd memleak- add libtool as buildrequire to avoid implicit dependency- DoS while decoding EXTENDED_COMMUNITIES in Quagga's BGP [bnc#718062]- OSPFD DoS while decoding Link State Update [bnc#718061]- OSPFD DoS while decoding Hello packet [bnc#718059]- OSPF6D DoS while decoding Database Description packet [bnc#718058]- OSPF6D buffer overflow while decoding Link State Update with Inter Area Prefix Lsa [bnc#718056]- Fix bnc#680499, zebro and ripd won't start [bnc#680499]- fix CVE-2010-1674 and CVE-2010-1675 [bnc#654270]- mark /var/run/quagga as ghost, create it in initscript [Fate#303793]- updated to 0.99.17 - fixes [bnc#634300] bgpd: fix handling of AS path data tighten bounds checking in RR ORF msg reader ospfd: Only refresh external default route once. Make sure ospf_distribute_list_update_timer() eventually runs. Make sure all external routes are updated. zebra: fix infinite loop when deleting an interface ospf6d: Fix crash when '[no] ipv6 ospf6 advertise prefix-list' is in startup-config isisd: change ISIS_METHOD to use C preprocessor other: build: ignore mkinstalldirs and texinfo.tex build: Add QuaggaId to README.NetBSD build/extra: Enhance README.NetBSD make/gmake decision. git: add pointers to out-of-tree work git: add (generated) m4 files to .gitignore Update for git and emphasize asking for good reports. doc: fixed spelling in bgpd.texi- updated to 0.99.16 bgpd: use monotonic clock for time of day code cleanup compile warnings cleanup work around warning in assegments_parse() ospfd: fix debug messages that were masked by DISCARD_LSA remove unneeded memset from a very hot function VTY strings cleanup comment out unused function make local functions static enable more OSPF cost command aliases lib: fix memory logging make some structures constant move check_bit into prefix common code fix warning on little endian make match functions take const args remove unused function: route_dump_node() log source of vty connections (bug #566) zebra: change router-id selection algo deal with irdp compile warnings cleanup RIB meta queue code fix more warnings in rtadv fix more compiler warnings remove unused function to fix warning handle RTF_CLONING removal from FreeBSD 8.0 fix argument reference in strncpy() call for BSD fix RIB debug message for IPv6 make declaration const in rtm_flag_dump() fix router advertisements for non-Ethernet link layer addresses ospf6d: remove dead code fix warnings from recent prefix bit commit review LSA sequence number comparison fix LSA locking in ospf6_new_ls_id() other: ripd: fix compiler warnings ripngd: compiler warnings cleanup isisd: fix --enable-isis-topology for 64-bit Linux isisd: fix BPF ioctl() calls, treat "true" and "false" as reserved configure: fix spelling configure: fix HAVE_CLOCK_MONOTONIC spelling- updated to 0.99.15 * bgpd: fix md5 set on listen sockets missing pieces from listener patch Workaround for invalid MBGP next hop Allow inbound connections to non-default view fd leak in bgpd Delete AS_CONFED_SEQUENCE when prepending an AS_SEQUENCE type segment Implement BGP confederation error handling (RFC5065, Par. 5) start listener on first instance peer action table static/const Restore ability of 'neighbor ... update-source' to take interface name * ospfd: Make sure priority is respected. Tighten up the connected check for redistribution fix performance problem with redistribute delete Make sure route table is recalculated. Make "Packet ... received on wrong link" conditional on debug Change struct ospf_path *oi to ifindex. Discriminate better when selecting links between vertices in SPF Make ospf_if_lookup_recv_if() find the right unnumbered i/f export ospf_if_table_lookup() and use it in ospf_network_run_interface() * ospf6d: bug #529, fix endianness problem in earlier commit * ripd: set IP TOS for control socket * zebra: do not touch socket before pidfile locking * doc: zebra.8 via Christian Hammers (#531)- updated to 0.99.14 * lib: Fix IPv6 normalisation Allow for large-file support, e.g. for log files >2GB * zebra: Silence noisy process_subq RFC 4191 Default Router Preference support for router advertisements linux policy routing support with ipv6 Static route does not reach kernel. * bgpd: Fix nexthop reachability check on confederations fix typo made by paul in previous commit Avoid zombie accepted peer entries Small buffer overrun in bgp_clear_node_queue_init Stability fixes including bugs 397, 492 Fix compiler warnings related to MD5 Bug #533: Fix crash with copy/pasted commands, inc 'no bgp ...' Log a debug/update warning if filters are configured but don't exist Add 'show ip bgp view WORD neighbors IP (advertised|received)-routes' review 32-bit AS-path hotfix for 0.99.12 Fix "show ip bgp dampened-paths" garbage output. Fixes to RFC2385/MD5 BGP * ospfd: Do not use stale Network/Router LSAs compare ifIndex too when matching paths external LSA route_unlock_node() fixes Fix a few LSA performance "bugs" discount IP header size from a new LSA pkt cancel OSPF timer hack in nsm_change_state * ospf6d: Fix regression in monotonic time patch - LSA max-aging broke * vtysh: Save vtysh history to a file Fix vtysh based "write term" output. * doc: Add "--disable-doc" to configure- updated to 0.99.13 * build: [configure] fix check for GNU awk/gawk to abort ./configure if missing [configure] add configure support for PCRE Posix library [configure] Detect support for monotonic clock * zebra: [zebra] Force rib_update when connected route deleted [zebra] Only announce connected routes if link is detected [zebra] MTU is unsigned [zebra] remove incorrect debug message [zebra] Cleanup meta-queue code [zebra] netlink interface minor cleanup [zebra] Fix vyatta bug 2814: Add "show ip route summary" command. * bgpd: [bgpd] Fix 'update-source' command: It doesn't accept interface names [bgpd] reference count the BGP instance [bgpd] Add support for the old Linux 2.4, TCP_MD5_AUTH RFC2385 patch [bgpd] Fixed as-path prepend/exclude ASN handling [bgp] Fix crash on SIGHUP, deref of freed workqueues [bgpd] 64-bit bugfix in community_del_val * ospfd: [ospfd] Fix OSPF route refcount leak [ospfd] fix vty ospfd no ospf abr-type standard * ospf6d: Convert ospf6d over to quagga_gettime() wrappers. [ospf6d] Remove 'no router' from OSPF6_NODE [ospf6d] Fix ospf6d crash if removing interface with no area [ospf6d] Fix ospf6d crash in show border routers [ospf6] Add no router ospf6 [ospf6d] Fix ospf6d crash if range defined twice * ripd: [ripd] Ignore non-running interfaces in rip status [ripd] Fix metrix in call to rip_zebra_ipv4_delete * vtysh: [vtysh] Add a --noerror option [vtysh] Return non-zero exit code on error. [vtysh] Make vtysh more useable for scripting [vtysh] Force line buffered mode. * misc: [daemons/cleanup] Remove disabled log_mode argument support. [lib] Put symbolic backtrace on system log [lib] sockopt_tcp_signature: sin6 requires HAVE_IPV6 [smux] 64-bit fix for lib/smux.h SNMP_INTEGER() macro- updated to 0.99.12 * bgpd: Fix bgp ipv4/ipv6 accept handling [bgpd] AS4 bugfix by Chris Caputo [bgpd] Add 'show bgp views' command [bgpd] Allow accepted peers to progress even if realpeer is in Connect * ospfd: [lib] Move type cast in Fletcher checksum [lib] Switch Fletcher checksum back to old ospfd version Justified OSPF cost function names and added support for: ospf cost <1-65535> A.B.C.D no ospf cost <1-65535> * library: [lib] Fix timer precision. [lib] fix missing sockunion_normalise_mapped * vtysh: [vtysh] Add commands from zebra_routemap.c to vtysh * misc: [build] tools/multiple-bgpd.sh should be in 'make dist' - added logrotate to Recommends - removed obsoleted patches: * bgpd-asn-dos.patch (mainline)- fixed crash (DoS) in BGP daemon via an ASN elements (bgpd-asn-dos.patch) [bnc#500540]s390lpd 1527314692  !"#$%&'()*+,-./0123456789:;<=1.1.1-2.291.1.1-2.29quaggabuffer.hchecksum.hcommand.hdistribute.hevent_counter.hfifo.hfilter.hgetopt.hhash.hif.hif_rmap.hjhash.hkeychain.hlibospf.hlinklist.hlog.hmd5.hmemory.hmemtypes.hnetwork.hnexthop.hospfapiospf_apiclient.hospfdospf_api.hospf_asbr.hospf_dump.hospf_ism.hospf_lsa.hospf_lsdb.hospf_nsm.hospf_opaque.hospfd.hplist.hpqueue.hprefix.hprivs.hroute_types.hroutemap.hsigevent.hsmux.hsockopt.hsockunion.hstr.hstream.htable.hthread.hvector.hversion.hvrf.hvty.hworkqueue.hzassert.hzclient.hzebra.hlibfpm_pb.solibospf.solibospfapiclient.solibquagga_pb.solibzebra.so/usr/include//usr/include/quagga//usr/include/quagga/ospfapi//usr/include/quagga/ospfd//usr/lib64/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:SLE-15:GA/standard/5776a48cbe89b267f5c65b13c1e3340d-quaggacpioxz5s390x-suse-linuxdirectoryC source, ASCII textC source, ASCII text, with very long lines;3~Tg%{utf-8842e3e6451866dd25ae6e8b9e5f2cdd9af7cfc01b00658ab9f084d4bdbf11e6d?P7zXZ !t/q'] crt:bLL $%.)hx}N]"eݥ̭4m?umG~["I)7<5:O̗p`"6HZuV7-¨#(Hizr|ڽy<G^{MCÅx/s2Po"ٹy?yatIyY`|?j wޫp1B\n $qxZ 6<$0GKf PH:c:xrDyCgf`w훿oC0OzGcb[9>b/Gb1;m}$0[p:tk(7{OgЪwq7x2|p2嶵ᷘ1 af"Ke_&sbVBrXeBf+A+:WR 9>e]-/kIH f@=3]V3,6Txwc:oU*_+:gjۓ:`<7 J߅I֥×LE5Il*ۉ?8* Xc\ICouri>9F+ ^/Xb=D`Lh:sN2tZE`Dye}{$5j W@/ ,6U;7-O۾p!,H d0Is;~>uC[o"Mr<6<*(vϳb p=?4ԯ܏Sm#Tk2}`nZr4j9tyPw·L>*?R$9t2 1C$2gglXzHC^zs|@vx3ަ7 }qq]& ,u0!VaP\lb)9_U(.TK*n6-:zHlP#g#$cABڴĀRJ5KaBx2ꦎ}H3cK&bARAX*L\HP>BMT`|M 󄙢5o>'u7֯ejUv'¢i`Z:`ÄUxA=4@R \Lj:6+ cOX$=ƍ4 jp_'B#^cT^]!@-1dMv,|jtt; 9!{bH6+#oƝ104pcI;?8 )2$DY3ބHTSZF2v~q\2 /׻l ѹ,m93”+0R l7q g+_{r~ou^~/5RS3Ig@ DIh.h\%Gѡ+Nt4T|ۈ˻\^%p9AOEv'0lO(E_c>l>udRMsHPм4jIl eaL9(N[1w"pcE3Q[a,'#I~6l[8U蠗f\v?-7q nz~t50͛pZn(kRSX ޭ V{]&WiUvsah܀Bo&eK=<.ŠPZlsd]iE#<+A(E{eѯ JkY%-u 39Yg ts0Ԡm>SD5.Jl~ MO|K@A[i(UG9;m/Shj A'ٚG-3p;i7hԑ9)߉bv4 홍0jpB|y>D6Zԁ2S^ Nk2)~mǤn t]>F;?2G)mQW^PM9 TFd@Y &ҋjMVHdeMm4(Wr0(  Ge*;D;SEut$;GtRo]jOЫJqY\sM)A R˔Euư\@ ߏd|ꎆJKlbAO4ж(Bsnxʎ'e[ҊB+-˚u5|[nVcn(ւY(xj0aSgѰ)g<)PUo;"wmU+ dZe2Ja11*{<9CSVӔVma$^aV;.}OuWѥM$&k~^$M*ԷS*cMd%11*2`.PC@xk^S8|ąAVʶJU& Ɗa[h/& ̳s]Yџצ+RviqpYp*W-\v xGC"sT`PZiX Gaן\Ϋv .^BJo6g ~Rl1D-߱ddl{k[KYH ۱Ckon3Q %\<9Z7yNtb2*$Dfv' Ss7`kz ,c yֿF3,j^up,[-EyMP@j_M(!dQP⼖.q._,9qK@NJ{nfe>1T)ݮ]ꨰ6rΚ44ؾאĘ0\ r7>mdfLWQ/RZQH~$ w2ڡy)i~#xϤ|HAoD{ FF:ɓp5tfhGŭ,qcft#vbv,gu"GfV  %cojB:Nv|x&rEEh@^0W5X+Evt-Bo+u+aLRe׉$V"ۋ]u/Kp_3}Ƀji>0=0S'Kޟ!V ʼAŭ) kh@9ʲU K vr/$P:vwW3K?\<$b@ 3C 'Pִ~.>%a۳a捝c:F~.Ⴓ1p<*/8N&DVodž ͔RigLZP*0?FSV7ف1Հ6} e$HDZ?~ϺE1Vb iVJ_Q _ Nų0H0THL礸nx:du;6>^tQs=kf円(wUYq@獫/BIEJ.s&oO.q4Vp {E݋ c% 8y9/O5A`8D5@%s7>ٹTࣼFR(jv?=rSLWxM =_e-6̭A'<&Bo/\*Gk*E}ƕero{Iz>#Fy->#|ㄴaJE,-OQETocuʡ ֧zo 82~h^ Ϥ| N{0$:c݃!HJkYaѐċP- =k?dϦ1,mx4շoëy <;30YީweߓuqEbA>dY8*#_ZO^5}!<&t3pkm\[EV;buיtԻ{ ySΤ:8f\,I:#z`jC`랍eLFԾo 8,ltt _Q7ע:f **Fb-R8x!Dvn]v-jU$uTb$anCOh6MXAUYޫ·Ў: uB :PA˱WHbSȁHAy+܀. @$jpз#󸷿hr#DM1`Mݷ~ !ZUCv8[QS[6˂Iƒ}G=Σ'3%\j@!2ҧ$Z;}D~.%ID6_L}7}J1fRSpLJաuM ]mn``d ի2l[64emC6GAܪe;{'].dP{g>=4Eb"^P4GȜf_S>4hGWx B1ޜ"eyzIcXj.IwX,$ \`=U |p%`tj׮-g*STgp% 4oGL+'a 4ӻ̟ HUMjM֖ 2?dE2KHLhf|Zf rS oQ: o'rNU}S*Xv_mu2ՃdZd~80%婘K).[Sݱ |:FK vis\Fi?x5Z}x:|RRB`~7Sq0I!\01lIDTDS:@/FQt!٦ =..(;nu[:bzmp`p=hE['5CvϞO=FE;#w`#¹]9l9蚣ÿJ#W+GC$GEd k44!NNdžr`~9=z1 hxLJ#^Ee`d~AHUXAO7 Nv7uqP;wѵbAwFq&xMƫEy6W"tuwU"4jRf#Zl6|hZ7?{\?vv|nYjB"g"->DHbq@fZG>?iG_HrWtUm~BYc`s3 ~'iMT8>`fC1: e"368#I &ҨK0Œ2&{nG <;T*AsyÃ)eQ5^ c-SՄy;T l=׸bAӆMKd0$a~1lԩK\P 4k/@8c i Tu.X)zE+$Kzzڔa(ꤴ}*F7ᣛwlv! ^BM^ϛ|P>V )iLsےk74A4ّҧ Ыzϋuw( W'ԓ {m!TXpI׮9bLVgֆ>gq?;U^xm]7ah t!iXV!o9Obp #e\JRígdEU˳Vz^8Ka,'3K9-9{PfJhB:J_fCO |>OU,miFwe'=]/=Ӄ1U$X; L8K8fzq,XoTo<7#mgdoShűu߁^m0& 4-99tV>a囡?ZF&3 Z5o哅2.胕rw(DpN;HMᙅp$n` 6YU2vܙckT\|xlg>_˹\i_p*0ѽIAq'c R~Šz&,;(T,E=\/=oXn NZ{םO|;J v?kT|+eQX'6GP^prF.qr1n[ᄫYU??1]BW"NVz $߸{q7DNϊlpn:`? 7a[W ]j@R@4(s0`Dl l}ܥM3L&R~e8uG  y4f+ aVHGlgD2ui=rw9rp!d6j-tY/֣xh?Pl7rle.–k[)*9wݢ[gDCi r㷯[#jk۟$': ň1hȝ:"2E.!h\pA[ .MRZ({#~19_-?Ȗt0N9+Rq#r8/q^&XEZQJ2AiVjn=4疴&_/ '-JnV׀LWAӊ-^x%΄du'ܶ"[J'w5vC/۴c?s*oOm/]3ںk_e˛<$`7i(Vk*woرu5ae݅9Q>+a2&}R_=ʕt: fs/a6R.۷"=rm&zG 4_{va(yHh}`=+8J~%1ؚs)n\}O:1'ܸHt_eҙc m#1Etк=0n6wÄO'>OjAMG۹l8L\{PXh'!).zFrX= ٞԩcab^TSUZw5.ߺ-l8T$z5H tjy5]4qYZQK F(`GF _iF@߱2]Ck"%fId\7ۂPcKԞT ON<_S+?֠{6UxF}:nku510,ȟɝ!qM4@kS)4e"He[EH/" jt0-[|D:2-PuTL ǫU^ô4bVR= ݻՒ^wc=v;Oa*&WYW_qp;[6 '>#_^u ?* ynY.*P7ˎj9;2$J7{0x!Mh|7S,? SDk.abOU!LB}(K~ k^‚®܁"(~;| Z*3&^y8-HIt?Zk~4[ gSdhPn#V\K:ͱDtc3DHw=|f il݉zr7Fc"bW4kHO<lU4ƯD }j4xi9l@b6{uj|u-#fpqT`64+;wm g+|j,l1"emPK<*Q>apD !kE/yo|>z0@*@VeߝZPOϓI7 . W ڏ}oTH=5r.AqMJr\+QێPW?pt'&ʔlc8iDx&UlUخB:(= ?`)~Z$Xݙs:lJtx^zg]P5u C~Hf /RDytb˩1m[o"* n ñOP17.<*| lk7]آ쇄O򻂄ӂll7l{H?KIZC5+ wf718c;-`6,wNzXRRqٟG[ReמD z)~J5 _UiV[(9,rhA\iL|2͘6bzt,k._gʤ<\8~c!BC\LMzs\Ǻ r`͒rܿ_;HA09@zj10A>J͘Lֽ:& YOs݂WX"P ~5%,2EEQqfܞ O(R١~%AVgH.B etqr`媘1$38w]2|@S^ZV&lRKj=:\U2W,RUc7L,ێ59 (J Y(g3, 㔛ʬ͸c!YN\ 9#kOx|# /Yِ݄eKM.;UnI" yOZ%l)8F o7?߻ՑnO4pZfx: ZD+va}B=䝚s[ʐ0?ӚzHȿazՈhvDãgv=OiNGt %cs01p0F; '}&x 0͐ZHi̥?'٪q.p^c#^0o9[O31'^lBޝḦ́"M˖HHoXS [N̡͔i2"r)],c鲘'<>v_=ClFX ͽL;±Eۄ[]uGL" h7X$pr47GYgnDi,I73Tmt-@6EdUr3Y(0J;1)Sv'V7UPPEZSdH7T7Nko]Qg- 3c%\65 ;+}]=0zJW3nV8a3!a'At[i5-j ]DeJ쭏}ya͏b8^Ҵ}X4`RX#H$psiKm<'6$6_ֆ#wLOEH'I:L:D*B6SD}V8f5v8ܒF@WpS<5_mfy/=r>{-uS8|dh]kNźtya\CHpUtP1m/'evΊGG+SĉZKsH}_:Q*///?cߝ;{yMd]}Hwΐ3`ȯt1xmP'LQMnayg\J#@~6o۲("Zmds3Չv1ja8^k0펤~p?~nҗ"8v.+qKnԠ6Y P=Z}=衔G5Bd\z D](?}ǎݔZm5zgM `W-FÔhq+ LN큢S}¦Nn l^A⑪k7JtŻx ljoc0P~Wn@8k|GՃI SeRns@AL]ϑkVweu"(H/J_ >'!Moy-w=jnZZV ):ml L#rːBh%+t8t,OOU*l]ˏ<uLIZfo`d#!D E(n?#\\[2v(/(왅GїȔ8!@utmֹO.1<)M;ZR504oWOo{*PS?K ,$F!}G/ ]UӖL-+NP)a\ 9ɠzLhS~EkӶ)Lb,gȑV򒝷&aEm!n:#ϟ_'nٓ.gT˚Z'm 1vFC:׼:Ul* $6q*63S⪅Vsbcv 3T 'u1Z7HQx:=Q@HtCN(.cCSnc8)MbxX]gTvUԿ0'tFKZ ^^cN3X:oG .aJ9]8n S_JlH/x Ykupyv);ڨa3K3tП8)t(uVzn .t; @U$@EƬkn/T VWyX嘻j]IؿCF{Qr/$#i8mb0Ҽv˾kQu= =-x`W=πavxYW .`lO%. JA#<ၖItk;+t-B-mh$JN__z;,|NiuACk?Z5>4ϡJobtc1w&n\*)^>RLʈ|zg0%!+k)$% S3NbN},!P 0!먒x4G~qgl|B'T"3 E;X1Hdiw >|=̎~SF9:޽~D+i:t@.hލ8iIqi6~F I,z]M].Ėy!k.X?<U|~ҊJ` Rcz܀cO>}Aqěfԭ- 1ymBy7#ΓB||͔u͋`EɮW,@Qׄ9/PE mw";n'{p-|6I9Q(=zJ#㖯M]~ wJK"G`;CX.@32t6,~OYM3}L*?- %F3!dd@-zDġTgn~]=>9<9g-G6˵Ԥ-? .k~Ҭ$Zz[ hJ9ƄT?^~LtX!LOyכIkވ/zat m{mB=y!ң-(X= Yy7eVҺƍ NxeݴN F2W˕Of#ӑ6~E9ZUJH} $V o>Z)ڌvIH0 E P); Kzx=H 5t{:V5_iI{.鈺 O"mDc^o 8н~\ƨgdM#;O i7)hEtqrINו|wBP"/^H&qV'*gS%:ihLuA]ٓs |; S7kpDHD-3{Ƽ7|16UvALG༽b7Ҭ=$/A@K ~qzU>ְJ*023F̳dӿTЯZn Y`SBV]ټTxP'EMACF!C-Z$U|#\pmãiTQ_饀^o|H:w/7ыתi Sw<i./>h@0BdPRn%LN6X~7E?zT8+I2s _t$Qa[&o P>-G}ZF`AJe v erFn g^_bKC$5TyWhDe ū.noT l6z时c18~ b~ ꦎbӞٽä ê"<ɖ3KfmYV$:_u Mr]BؚwnA -lmt,o5%؜.q'Lp, o)t&_#˳#U㬅1:HY e)AHGX4b1'԰MClq ߈<d$u䀂6Gj˝JW-6aQ󣫏Zi}$އL1EG?î *Gi" 2N6NT ~bPj.MRQtvP𜏓N[%*xh'`nLQ[YVt;TP2T+4]7RGw&AŢ>5e*F9׬vpc6/'%C&Qv8xL-p|Fu+"=KӭA1^RbORGn[Pݭ$l[P'"C۵6'r=׀T<KPO$hkz8CΗuiN=i5-!kY}{2lnG(bR~q& X߼/陧|K8t@d VN}R<̎3\uo±x&'5]A9RCC0j5$Z.nr F6^o(0Lw{!OB9fI}`_p">DݵBֆIz(㉬cm!l]f#r :%ȇk,^}N8&n+85BYZmZIT9v'J*)MMՆP_VPe4mqǴzMAykAYv9|y|]ỹ5&*]YK 8^zmML-= r\Hhs7py3R6V/2c|21bIh\:.*&F/Lh @0ziuH*7ЩՄU}Q \ަ q)q©[!fz+ԛuLl:Ρֺ8 "瓽D-4?:F.{7ҺammDiLha@^ *`S/HGkGmʩ?rjU1kt|`dSǴJ "rC&Ԡt}MqPۚw]Qv$>֊<ڄXDFri; jյ1̻ARCJYj*`V %Ӯ7,zqQ[d0Z i k!V@6c*=?dVY}D?$r5v21+RUP5#1R>Y9DEb*aRҶ,1&jkUWCuQZ׽dG٨G+< G%7xX܃Rk;B&)KWEBx$=Cz2.v@{qcCԵ&unʢ{jeBȶ&Q2 hcg?V;)BR Ig8hSIl n,k(m4zwP5}rK MqT3BWhcRaw@, _a^"<-j ܑgl)3o+YVk'@2T*& +R)hg'" gt!i^HE8RT+ ?Uz-jn!\ gM~;L]?acOEg5/&y G"KyrpY5Q7AuA(\iaU!Po8(.ǜjpEHͿUjv$!Mũ"x%1ť2EeN-]-v"e2F"1D,>XBxGԊA+H~o?vJE-#UoUJ )ʪh$L)Z@LOEb6 f@gv!{-t^ rFFLg~c _,TEh T}0*} RKwOU;T'|&R85,(qj!f#1BKy6@|z#Ƙơ W'7Deokݿn;a,++HƤs}VލԜKyT1;=jv`УG#M|TҹGQVï=ca2To B5XJ%`i%Ag&]Y!Qf@]XB A?m95oqN'3[Q1pV:{p[1=с^+SD A3$`]}AA6}9&{޵"EB;Eiz==$`xcvH)鶍rzǑ2]ܾJ2 a"/:@vNKI =Na䷬ MY6N&JCm! "8(gh#rĴ$ 6٧"S!?b| @Y׃{>#WNl%5"HV. 1~aUy$ƲUz#Q:nC Lɡvяb~R%iBf<u4sq4adQ2b}PtRK޾\ bb_ר`$:~TGB8tIGC^  i!/|3yG9I[B'UH$e~k#뤁/c1VԿ(gxIMDjN0cD3BnFur\i)>%MKIC#_)IG4a!YU]{T}pK*mJwl Jt6 FxT=b|mOE"aJYG*4PLS`慈xUEf*T-i^HCQy'q {2ݿŘn-oۆ^LzqiވqP`%Ho}c K`+v ynfBpZGV=\U+LԍP^j+mɩ0NK!M=!Q9c(vRc+n0){.VzODXk'CxJZ4<5X2%UHT^|eR9oyܘVI.Kl*+)|J!E5Ol4C2̏uVFeCR(]E3XvI*yhP) 3YE4 x ފPU#./?vjNÇA~.ۚA<"bRnze^(V~W//XVd1@Ul*zF#pl8kMucYn%&4\8@+{C5\ _U^Fe^rdJ@,[SDgʅ^`^-kڌR\8%-'Xv!'_%#9rm>-ReX)^`մױ#L;\B#yr`:%H4 wWG A2~s1X:.DW#7E0OȜ+.8:AnUqK<ߥaI.!$#+$xs}C5(ݥ_38t>W"ߟK9mm+2d)rj_EɈNFY0w`Aأd-b$\wiDc<` p[7syG+-dH})$z49IML}r5/&U]Nc2/t{@P9JwV/%: Ym}~ `ǚW} gu^e1 [w&n(~eǐڎ3T/y=∴ڋr_\fo?![:<~ߗqqĊ=1+Aw΢_;BBt[͒@A)v]!2&g kd"۞0}mdcǏ1zaݕlq0kF7P_(wVjVJܔ؋Y-+{$7yu02"=򷭯\>pJ s( vK ɲWFƖ4%Xj6Ew\w.a::R?ɑ^K,Z4ȽGsș^b, wI^ x ?lϞ.B';nΨH1Rz,6`w{IN O;|iQ,o]'Gbxc)T^9BND4[W݀',ueRK La6cםxlR2~,ь1!NU T?UP[2_d ";1NC?o$C˺@)GA *}T,%ip5orR%)Y͍ KU}i#"z߂kFmG\q}6ҙ+noilk[[>lyO yPzE>Y^T07ALbJk 0RC"Fa%4p;#c_4g՞W~FQu 桒0~T<3=~"[SqD=[yN^; S@b)?l{2r4is,),1 :r9,}Qz[6I˕vnvF7i? O~zّ*HdVp]5iVFڸLWբ7c cfJ7+kW/c!,2m0mhEQD08?PUnF)XߟA .h2$[*Qn@f}0ɸx:cC0dUP>{RGJ|N*$4j{Q&GɩÒgZ^Go4T,PׄuI gg˥-b߼ ܽg"ԑ;F[B k{>[E6XLҸ /D^;~h^@a ]fyĕ{|5ۯIec~3Pc{0=T<:?#o>rC7Ԉ C.g2ؿ3h=,މVʡ$yV9zSZwD(x؞qΊe^+ j(j`$9uZuHze󶽿M^\ReH3(~7sx-;p ;pKq@Z_0:mZ 5F[&b?5y Ҭpy,2bTJ` T؏s.(ѩ. rԌ<ؓJ o#'2s'/6 <.K@A*ˁ52pVYIYqE=eCw 1A+VLLC$=~u(;$N}|gdlZT~³7uڻ,y8Uwsie,rkČ=W[ [lNĩlN--P KrrnLp|\8Sfd59JV#R(pK}HC;ֻ{u_:PvoiܹAOMπ$+;M呀nHV29~pdR4"'4^ʅv+T~3qj|t˿tҘj "%Y`~ Hn~[^.rb.Y|%H 2,ԡrҙUјH,0¯49qβ8)t?oйKq"-T$vL ()h sޯI{LJчq]r v67J3jV LcOUU#q8M{NW6"n6K4l K2AITi*Kв'0XrѢ|2l[Kޛ>y&cZh.!## 2w"/50ۻǁāL}@#셱? VRWTC2ճWԎ LcWiiH-cȒ[AzT8(D`5+#X5OJ-I#2^!ۢǧ^9}5xW$ | O9ٙ:b,1f<6|hMA2JpO}/\̜Tƅqy|1A}$h:׮logDV 8 Za?;RAV1*@Knq2ۺqhY @j7RC{X. UF͖Df5d{EHhC P`gF+ʹ?еި oy'OH!.zqC\16`7 r qqbTyS$xϲgrn3hC Od]uz̪wXݥ\VT;A-'ZQɲ(}W&8TY`@r60Z-$UXj SaP{3k|B0|K/Yߨ~&V>D$x lXV/74]biNYR0ʖkRBY(2&=[sC)IfwD>]\ku "S{+TV+M[=n5z5Zݯә~6 @O&4 Lj-"Zl.u@Kch˩jX1|-h֪Jn]/dԏU+ښrExT՘+ rJE,; 8w1+.愘+b>xmt=Ы%5>9f]+zm{=R6J ~I*֪pynP`)Ķ;e??''.)+>bJ:ӍB45E^?m nm/ Ay|:p!B3sL6 //Fh>-w he0_o´0h!khyUd- :e>Fg`k)ȤQXboGD҈eO`-U0z}['٦T`Y|_xIeNZkB>O+(~-q,E_:nniԸ՜8}.*_)۷bJ̠m 6QQNIp}^zls__WōWceH`"kȬ).3{1*ܒzI( iu^bHpɕ'@Wgv (d#][飺'l:qҐ#MFӖga@Zywkë5Ž6: t/V?+PஊS[2Kf !8-֍ݺaJntZ+<7bxx=2l/2.=Ȁ$~}ӌ[l@',vAX4d;gnz7 pi5jڽZ\0"`w~]<")c3\q~\07i7)p[_b_CUň2ڴehfg(vj d< yffޕ}e1&.zq{RXX~t8AU >_'==g:=꺠 BKۋ3E|t+%J;,^f`Ҩ݅}HN^:(t% 5(YT|LTSvdGMph|?7{9iRz3"`o׸R"-SC@*|Yc/4j2*fH п֥n/;roq >U.:}/F})y/&NȪߥL_˙ ax.IȤ6D BfFFZ fB9NV<2ldĂ@.-A \Us!m٠W dH:jdm뫙,% X[Y fKcS&v *suۡ9g̅mk-70씙cP >Lȵ(v GGJPL?ð-&Wވvnxoڢkba P9ݯ^ e\'ﰃ]ĬΏ=@&Z'_|^?rX[ȃP8g|{c"#nH:\;"d@cddXP|E+wo p {ƛa**Ky;#&h }!xYDu[_m[fZ1 /Ez쉶ADӱ |iTj釳]FKg)m%Tq(1+PXhdt av>ۦ|VXC(Ɩ0Jv)l/5T|hGO wT.R½5 SKI[V)hג3!﷗qi14rD4P<5fyO*Cv -rXn`U}7z'Q7\~_?4Ψ0rJZkvZ ٪kHQ~RVlGx:Z:-vb0{}Y?xDBQC* <t-4lC½(f #VطG5=4'q*f$y`VA.2--M{~ G 1Ե!iu P}[ex߿n8#g͸6ZJW}U˅h_g{" ',XA_zm 5E9kt0竐!!Ӂ+7竾d[7'\%z]LEE5Kn[.8I _ni.+]!(15+@aZNK sCVg0K%Tqiu^4ǑKI$g~IY#!w"^kG*HkQ N Tz PX"ENb@U (f4#F~> I|l½مq)Bj_8{z @:6qeigWmb4tuGpuoTG6[B4+Xlb{Bt7/@x`SMÿ,e.Ei# 0Ram.'mFBEj&Sr#; T|qk;~gduj*}V S=02, FwՍ!-l\e-qDXYbgLBܢ4(QE,wM$䝴Fb;\/陃HL0JXޘ/)F"ẁ&RzWAO*K]g>EMń^LMG6 >bI6me"5/i~CN Ff]mwuh(}&n(+2%gUJ"R%zFh<0su/gY&@ :EGſwd[29H#7omc"3H¬7fmQĆp0QӁZT58V6Kf%<ѵk'M Pm\ .!.."Ij$&E J5h[O9\5?guî5pdk 05DK4+rHk  yE8\l[m{y{C泚<%,r_.5= @kB7l.}"3&`KpCbB}%&Hދ:IuRrBzD[_x]ƾl%%8(̼Țt?1zTс *AJ;jv2\?6eoe|l6A0=iI:כ+P/cqXi-l }|KTZ骓_>!->kϬHAe y󴜮ϴ(hIb[ȃăn*'4:³Pt6`oxyf(bE(ݏw] oեWm\?MfνOTL,}p:f!"1@YFZ 竳FK"q+b*O:np!>FlEKw"gAOI, T ,òYDj156NB]  Vq'b;crgv_j5XWiM.QМQli+-!YW287 !t.m7i4N*EB5ؔ)<)3ML8aJTId< |{%TFu1n;Ash 'B4Z՚꼗XKӶѧRr"Zl|#PWOzkea_8jF&C{=%C a%iHVz+X1~$-Yd@b[z@^\ɛ:# AU~J;a, 9(vJ_E2Wi%l F~+QO-/W]=4=Zz3k“/]1.5*R9ɢR߁G/v"An{ ;Kΰxi}MwZ'4"|nrѮIcxe͝*+1)lIK:؊1QʳUᅆE%%a6J+ LEk*KM0At{6r遤[:Sl4'K@c>\,%"_Qd&9\8ٵ \ؑHNs3Ҩ΁oniofW>=Kdwj:fm<,?T67;󐎅Dh U; Ba.\`Z+* ThHtKM 5AeѪ3DbҗODeษ2<5A/6è^ Ա3k '-O' ׹ꨅD $=TAHd &84L$ۿ$=$oYSq4ެ2%5ꗵ9n$&U#I4ߊʫ~"t <9h%*%nsG M$UK聽{[W>Y݃^j4܂z%]l ʱ5)&i%@%),([>SHv%tY‚mԱ5#cW<.jk0塳Nջ9rfD[^?P\)Q f\oꂸ &zo|=5 Yar  EEFH$tNG=>6-4u!DV ĴCf-޲捁}#yJRd_?@1Uk} 9IH\YW>,ӳ -Ef)Nu,>&,SL_:"TE쌝ҷ l5VVn2=}->' o8"3kGpA2;KJ.f#}}ʧ.0>\>]Sh(DqI!lp gW_Hj,Ì$RD`w@f|OI8e y {Qҵ7SEP!As_0e2kcoUTpn108~5f.AW 2Zj &n&]p*n5s"4ړhIN@P>''^guEmYûlgLvQuPN.e>0_ph $Ym BX$vA8`JfI\k\9'1@gm2z]^L_T:}fY%):[b_y\_<2 'q.k?(?{;2zo1)R+ ,qJ]Br6|t`BwV(a9a]rZnS[! (M\pz HE?/PP3è\# G,ܵP$gPmilvǏQ }>h]Y?l.!p$Wv}){Ž,fTQ0]7;#RDJQtKdb&XEQ6Rr#=vߢ}jW3RgRFW30ꣃ%ACW-Xr UVuҥyW>"5\+b %o=0{u0*"hP @W' !p^`lҽ7ou+`IWzOP)Bx9d 'Wcjau ;!s(ZKI炳'te,<"G/8J& @*qlm.Iө +]{4hg34 )O9lR@:P9Zp&T!i a["2<zWyӂՊG^;v]V[gP2܀h.Mi):e` ai/;62"KKa-VMsznuxvC,籀cyXE뫏΋|~px5pz}nP?*i=KZ`=_1Y4O"rY<_ZCj ,CNRsK%'}?hyG?@#OpGRas9cԱ K]Bg59o3̮wտ-+k)q M%P|Oώ7[#\)'&Zlݧ2=n]IMs{Ff_{I(l9ְF%P,1¹CUQxDoB~\I/J^?/~_>Jux~MNK)֟Y3^۬I#IA:ʛ#2 ⏝ (%j =*U8xD18q2>pV. zZ;A@Dެ7JA/9LwI1<O[ew{Dx%!bJzfk[˴ZbeWQᇙϊLȸd $\EEZZ`MV8`lmΰod!us(N ۯyC\L͑N<ѱfՃ˔1y镥sr€%qⱕWx/ Ňh b(~8NllBR?0 tvnUT|ꅿ]ҨGntg8Dc\i53Xex-"*|y\;$nX=?uMrky Rl< ˿恗3oGYr&=ybbMh|$ȺP8[l e@Cڏy:eT1O}:nhf$tSY]4U_s](y a$ B)An9L=;J{^_x ^=lZ*:vFQMuC9{{̂|'spPE虝0.b<|ni[V;.$}v4r\\la#=N]<k30ҩWDf:SJ-64 1_$l_I!af+}ѺFP"۩Uo-i(9+-J.+#^}wqӌZBZ.>4Qr $֚Rte |ntFwקlҧs'69\xz $C3crk}?rQ>J&FӲ"h38r*/*h&fmkv#^MWpɃd|Ey$\wE^DAW( ^G0D8wix#@)<:ԑ'K0M]*ŠKS={ۊ"&R wO/T~Ih‹\oy#|d$8xBAFoBG,Ⱦ;ȰtX'Z+N@߷aAHo\}yl$ S>}dzgKI- \BMmYNfk' oX\#KGQLgUm{>p56F_"Y#ھ:KѥcYo킵́ǍJvېm /ZB ~|tueKQHGz_T#Zkg 8J"Ga/a /iyČuU >/^.x3? 2\4I[29~>%;,*HtLvRRn n/"xֺ{gxܑ2Sbm_Sʯ1kgؼ^g?+/pCߴD%>@/p/mT{F72SڪBfp$nV7v2V0! ,6 8zʓ {S"!)LSuoitp\}!MĈC *80M@L(TV'HlgmOif@*:V%~^pt?Yc._#t)M`%w5njnX+Q0 F${HXau7M'OgƠkkP h ^}K(#tMvLjiD(<1 cقTC׾pI}rIh-9nd똔9UU¸g Oy_k ǚ J@G6vߦ4v [+*QkÉ'dK [l{MhiEF ?U F\S!;Ԟ&i)'H <+(rw֓">QAwOI(YNӻa7AFU/8?y½1u]hx kv~<(̟Oд] $*{>m KLVWe'(9KF]Qv:He߃S mC/!G;frڒ֮O_*0GʹݶtX'4<(>==}5GQЭR8V| y>G\h0>a]͘4<u#{uO9gN{ٞ x Y6'VYmk;3֌) *Q (LTS.b /} W)#r;5=lQ|1pOP ~]EVo:ߔO||*W "tk҉q~ugh,m.I_YtS Zf?Rť<> &~I*m56]oX18ug^ށSPń gO8p 2\+sٰwT >aӎ]n&Lp4PD `=v_:H_* ̺H˶RFtYGVeUiXϚmBV|4};AA=zDJIZFOEFnGc[m>:Ŕ+֌=4bW햄8XDV[z\R57R4Z!q;5Sb39OS;5R[I%!y#~٩E&I~f\~m"1p4zնaCŗ K!6y5i0=^m:_,~SyyC]3. V3+}p$tM K$skL 6 l?d r49SJ&j A|zB;, cC@wT=9 > ٭dpQC|SW:[CH"򓎜N٧hg* )F?M冊U6؃Dqxԭ#p5"]h'}M~ʟAb͔N^ ϡv،]+^4.ҧ[wv FѧwDފNnT#eEoLWp ZrTߓ~9T"3 &te!DAjWI\Х~"%Zԏ=+{X2Mʫ&.ThD!Q?#$myPIvsV ȢV-".q֏H]잀2e1Ew-=Ky?>]ѳl ,ZiARW 1@RiNCf}^X'koU`L'KiET&ol_aƢnkℎa%B[!uJ46Lb.\odh.0$Z>r6ReU*NlC=?dWp`*w2EFT7|STrʯ_DP)h(`l4jp1jzD!:"[(U 24ƦM;D:0g9juXO=‡B|HIU%U7x\IQ,. GPN^B[fV~O/{<V%5]BAisM;@\fT~y5W4rWC.yP.9Kw Тoh:>?F 9&L?/㞱j|B T=Ҕ΍c^s\` Y<@ўY OvXa>j-Pn+ي)2qXi% .r&*Fg3#<8w;|$Lt*:! jmq5iX C:9r'!kj."M9 fknaRxWXR}_6GR`ٍl N @ԏ\{qNoMFF >XV³PzYG샄 ۉsϒs[*H'h8Yў}v+v-- &ꂥ^#B<̠w=}b턇X5kMWuhM|`5g fh|g CJٵS8%?vr-43 MZh$FT:JbXMD9]3!-ڇ[G%]1cꍧ_lf_2A `5"[qǖPYGXBAō `SڧG;ЅO;Y^.LY(.}pVz -cqگ4 WYBڽLY35Hm)>Чex?{O,:P1$qeȵ*Q6K&ޝ"SB~B9Kģ #9hv,"CBskaɂC~JZ(K6Eʌ(^ħ{PX(P_xUAP&`{#I:[_'N0ogP}MĀR龕R  Q-@z[~iOш٧ k߁CAUG+߶bbu|f `ssp^6@*e +1~Uj:` "TG^y aiŃߨehoH#|V_No1W>e.ھI'93Cvۀxټ Xb`OXKY s&4I!Xygr*&cH"ub 17ĎxX1Ńi ^0_hc|a?en/-k8S4j[H8&tFYNVBr<[b"Q2Mٸ"|_iч$,VC}=OXm)5GZ7i^WY~lX Q[0H H߫Mi ' ͰU}'Āsh" dmF ď #"*n*\Dd۾ }A0QSFx.h{Y#=v(*0'UbkhE&τݝ'޼Q*gV~@ rkzl%t?<—Y6=]`A39QO,zͿ~lHK$x,>E)ZDև[:2ә`ZTGpܬ7.L ].sDĴl~R0g`J> Z6 3e9ւ(qxAW%AhRdn| `Fb@n{vOdMuV<_fnE2gއlqe@vlJ&K"Dm1{iyCU;wVxv:ͱ#$lb}j`ԸeYgCx(+ر",7g,ZU3KOXMIMbЂQqfw᷿֭Mn D dF-Pэ#|nk\VC`ړ\7XԶ\H/#U9Glq{we?p%1npa`F8vpˤr(҄>oH!^KgOGiq),X&/(DACC*FXR \ 2SY3e`$nN?R>Up$Cvz$U9wg6{ 0XB!Q8navO ?r9{;sQp\j:Q;kϊUSa("C 3PC;at%q(Dg|6|y2% @&?(7 mcK .pӶeOrqό 43D hEhb9X)(;7Khx~E^ f#Ѩ%5B1;[BYXڄqoC{7g, n=s P[\gSffoWOPq?A$9 7.T(6ƝWLr:eԿAlGX)c~m J\]t SK2prOsB*?Kw-9c: jz TWVA(k3E6)`5{Q9f7jk'|}7#_k+Q5/Gǩj,>?_2i[Y*vvR'2\@1QS2efQ㭙`6lg0Z.2pQXC@5cZ? /K:wNY|pTRV-'Cfй 2gǶ[뾂Q-X-OKdن'Ycax;&zpKP }`T²f\P_F9@ ^`Q8 Vҳâ3oqUj`0WQw$JHM2VTcھV9)$m1.*3:Hi^hP z70|T3fnOiC>0 dﳉ$ ؗ:$ }[ìյu#۞ȡ.,} N 3IYI8DvKAZwm!S*\c[?I%dP(5m^)`4rI%&Pgt^I+Zӛ<NA&mF?-!yPs|$gj8j0DceXʩƣHo,牛GR>=Zbin9QwP+֯{鲇Z3|Rhm~6s%Ro&@YIbAC!٨znmk݁s.^E-cuEAbya³Ikg͙[ŕX*UY)=d&btA # ȓ{Jǿ7@S#+-uR(_w䵗+s>Mos>E_9I {'g#s;Tg,%,m: zD`w %4VUf61ٕ v#i1ֶ++G¿QGYiZ^&Ua50]a)#-M P*1 ۻ|`@4*P[N 2yp> p6gn2gJ)# Džקn+pUcE^u׎q-S%5T& Jzޞ"b3>dA`RKqwV@.m}.) lot<LFAޗ_iv:[2gh"FHt6F>ۂc:[߻γó Aȷ~%պ;l{gv?%pku^cP:@Q/ Z#l2Ma3(nYjI2LeU`cf_n=sz9ve?9kO%\[ۡǣg&CZN },$/j7/Vһկ4ٰ l?$;be֯x[.. БXbK.GcÄkKjڑ@i,y%zzuI Ȯjq^Yz@wRԐ`~),gn/3'X/jz]BlS gMb&Eߺ+xCQyD^a/@S+b"gp>06֪}yAlu{O@ѡ_+ώ}7( 歩.s1X$9hsr'_*. Ru,665eg8l开R.)j+:0@_dHo?Pŗ4rul}(r[t&Rj~A#{SЃWD E$QaX'r8g|~peђEm4e48ثmSWdjpL~#ܴΆ:ފUI,7m{9  K ~IγMl(B} f> YΆ7tV^9YU6xkEwwGxAW r$NJ:0~Yd؋{w]nģ)m5)N%]9 n(^M#l}ֽSv\1bȰrD/JDv&8%u;жfs@@8S5HA%up\fhrBg54^ vl';7#ꮇqI#^Ǣx4twd _ SMTYv^VB}! lKA^]нBXDG#1"_.۴aɲN| ^r6 %"Sv@CN+SWL2FIn](V/ [C[@k:-9$3 ؝GXTX`d%N}M uVZtS mݥ^=A/=/ qtoLusJ,K8g$Wʙ>g|{Fޜm>/ѡpg$ T!AfQd {Dk\ 6+8D˿nK@ù$^9oӺLWD&Dw/(hE(nO1Ņ` [[JQԢ%"v+RhT)(V_#prC.<38oeX%̴8uhB1P R{yg8笘M}LK@5> T@Hb*;( -`9 P4QfMfUTuxc!D;y|y% OA .nN5IUZ@g _J @c^|eoZAIw-6*ܔan븖Sms`TͿ@Dȇ dy{p Ig{< Yِd=[[nPQͶ]ܵpy}!8ƍIM&Ybx,D:, 0S)' Iq'dTkd|qX+Dhl4@Oo\dj/)*类z&ty"%RApP!L컽x 3"ճVu, |$^zE\7i菻8"n%v.hhߥ]ANt%/Iڀ|`u9JTfStY 8iJw-?@D&b}tG9Ǒ~*]T6\JMJB zK [' sz䦽J/S {s( hg&1O7K0fnB|" V/%䧺N}|7#S\!i>m Ӽz<$C#Ԫ}wWhͯ$B{!'h8'8ީޞ(P5*uWCc_jrqS(`zkvLP)>t$틱9+n+2@|ykJ/AD_ tN*âRtW"sYX 9"Zz"$մ b2igoy32,(Q)!,RbFC9T#nB~L b+\ڸJ˨2E~x^SNǽx ѥrd+ wG]#DNE]Հʔ?^=׹؈BFh;iKcPVzGK g |wd%L6ą2⃲D6g\+_IsE>(iq?!hN!֜,wbK""ǝa FiKz⪄}w%[h^u]m5cd5F?W#_˔">U_$]m2, n}MF.&˜'?R$#"us);yeeOrAoZ}$#G$C:opNBOR_!,ZͩP`Bx=533awaNl7WV ^n?8Y=d`{B* "d镣٨[ gkdi[)tf8問[O{oflt#>;k4p=]kCD7hR)KśhO_`_DEC-^G4nՇ3ϸ&|ȅ92/*cX:R0hGz0HT`g.}BB[K2g,O?M;]J2a,7X *kjx}]:[]`'rW,#I*BTʼ!f_M YC}71&lRa;ی{Q4f脅 G@<Kj#bVCDθbϲՉƜDê&6]t9b. Pʮ30xχLŢFj\Sr8WsN^)UsڑW2v"U4hѻI@M8`>N{-ZP3!VJ|9#( pzE1iH,P ~͠(n ,[$ 򔗽ͫk{t]Dc5#]42{xq]62WiDyq-TDtӼ7KKy>>űyrLRT*,d09Ѧ5U P7gW =(SR6h$mh)nvob(=C@Kj]tg'W.!p5FP>j2)C/Gw$[=)U Gוh:k `+iJ_;FBJM͏QDX;L*ªvN!nE@^@U%b/yXnی 0#J` BNKr[ߘ~iU{M.{U.PK ,̥?m@a9Я|G,㨂+}?&UKF5Ɓ~g V ix oVeOMa/<.u">R!aVU7-M<( ~ˣ;nx@Vn;d Uyz)zRw#TEyB+0|N1!08GzZzrGPk%x]AP& z]?k`ueߺ4voꏮllxZP4+qA2Hv9+fFLz"\B4gʾL GZ. ȋ$-,AsybuLG_CS*%g JFh=:/hP#OGj1/!1hDuE$r(_؃M]vo]xʷkqR~gezibEK v^f4456 scUc_Yw aT2kd; n?ӂWzo|svP |z&m5uC!)!w1v9N=i=y"χi <ள-a YuRGQN!rU6%Uzp2$Otzw$Dttt^.[2ߎεX%G_F6eζރB B nL<ۉ_ Q' !-!3芯sWÚjr>iCAV^О|9 2P%Xb o GeR(ia<@*WMJCJM5($_6eQ:s4uz G,c뚾%ln:o |B\f4Ps/7K7m)98nVq:Nw 0*^>U%]Tg.fy%gPF|rGSzeQS O3YƒjەĊ NC.PӡR>4Y)@QJ%zu '.iTN7btW˖'ȫ[yo6>n( s"U4ьD:5 ԰A~}ƢQ1xR/-\jr!G`:V< vpLZ]PVK Ch4}NTw}VCh2 ,ZGa05~m|4 ^$e;A8 #{p(> " ^Th8{S_@m-ak45J}:쮨5nI.&*U_=1NHb~,0.Pދ᯴H e?~ό=qy4 ,f؜ܚR~1Ӷu w!6.:'͢ L5ԨU#!^wɢ3rbhmm;X 8YVf`DZ[V=`yy]1q{`O@'c3 :Ś=ת xN-.쏛YQ' e:uQ95ǻU' U2rX#Nj|MSuS=Gv*&Z/*{CM} "U'!Э>ү|3:53\4GIXR wP~D6 {XWe>ab Yi1ˣZ6N6 Tt;B 7:(xL˚yIpOe FPRNF>_H[" U;opt<ռ5|P rX0fwdo R8{FBWe\pM"FD?Q%Lȭh<ө9׀]fyr* u6Nd)eo9:W pgBK/ Fg](B-`QG_'k֮hXpHg'$2+) m\.3z&P7'=cLX%/(2:6t9-yڛ\{kanZkuhH53n˟~k+vf`bljhU T}{v2&hATp]"\ <Ow,zc~\{4<~qiJİP^yEbg8 etV֩ש2X4xĶO| Yеfaa-qrS R6jTC #]O/PNG?- "; 9NՒ1~Ogd쇅0DzESN*|@V=oNE_R59JEޥ9,-z9*.4tbW'ZL5Ö`38Pąi}E6TBd/#쐫RŮpcA +9:km?R<@ޤ~fvh-Ϗ0u֧L " .p@?8kWӶ =L؀SĞZJ,v򁋤xld2Ya (LtJynDfmG<% fuHDrr@OmJ$sRJpY{G,3ȟ {!H*UEo]% w/ >O$/pQ!˴j1y6K6T8Os|cO 5Vѽ'1hg0 %i*.&(?GhSc.wz,H8֪)mOt5,]x'}6 O7Xl!eD맺{N+R^f*PhG>ho}FIqºC'ѐ+d$%(lMh)čPEEݰT83JaWEjq=ugָ 6 l]bťN$ހA}BD>(k@[ڊ|eK.{ Ҥ5b%4U::mzM 1ǫ}~3Κ5Ryt_q RJ͌?. w+װV]aјoR :XQ-_9ck5P6-mZJ'SBUJU4[*j4XHxX9Mu&O#ݏ )u݅*Lx9yIŠH{8LbJCcQ<ޝ2{e 0H0g#{C#5GT?pEDHÜku)$ nQc4~}yVDsиOH^f7xU|s (SbC^~*:GϘb|cVm5F_jk}Ewt|gGG+~vk%Ã#Mi'IDpKnO1J7Hg ~dD`s.a6C9tUEz(Rڡ{%!J"" >YaTW S _Ic_ƭ&|_)Ǻ_4p2ͬ D24W :5\S[zO4rzAVwSe(ꮟvPyLM; # +7OnECʆ?/ Mڿs'ԔzRl$ISKuyEss3'q YZ