frr-devel-8.4-150500.4.23.1<>,ȉfaqp9|ԎjgO\T\K5#linEl+!,+WdB!lm{ _I&c*DÈ.>kvjI磤s#fϨF -LJCwӷOE]00yV#:n?LAiY i 3v(i9F) yxC?oe4cXĚV._qib3L?*A^Oϼ]N#H'24O&OﷹwP/%à6ijY,4>;?d   J5 Kk  D  +r ,/1447T7p 7 8i (888(99L(:;(FsGsHvIxpXyYy\y4]{^b?cdfekfnlpuvzDTX^Cfrr-devel8.4150500.4.23.1Header and object files for frr developmentThe frr-devel package contains the header and object files necessary for developing OSPF-API and frr applications.faqmourvedreFgSUSE Linux Enterprise 15SUSE LLC GPL-2.0-or-later AND LGPL-2.1-or-laterhttps://www.suse.com/Development/Libraries/C and C++https://www.frrouting.orglinuxppc64leJ#1) $_h4:_ }M ! f#UC)*m%8v$*  S }+  ,(Q O! s  ^!6uL +l]|7-NCAn1 ^ O- @ q  { &xG@%&'} 5{ #/]+Ga i)(z? iA큤A큤A큤A큤A큤fapcc9dcc9dcc9dcc9dcc9dfapcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dfapcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dfapcc9dfapcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dfapcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dfapcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dfapfapfapfapfapfapfapfapc848bb4c5b0e9a0b5c58567c6a854b8c6ff228abfbc15c0078fbcdc0e7bb62509f0a914b91ff407414dd17949089466d8fbae3d3c9a22857bcfe13e144d8c36ddad740e3a8173858fab26a8fd675ff714769b01c12996145e3a80d2aaaa7b7886cbdc34a530795eee4953e9bfb8abdb4f07b152ab99979f24534ff46edcf58927d8c50a0ab8780ff9ab05db804db17a79b184a0f8bf15b4d911d11f3fc7fa361ae776f96bf453b6580120c8aa4a6b5f012e22e2dda5b848356eecfc4dfa40b4d854959b803f10e1983580565e542bbadb5117eb14e918948d44a40c9c698e186a459373df22806f56d43236eaf3ed7f12d9b17b899f801482a8df8062f80317d44e03cb13875f38ed2475cf5776f7dc700e7259b3ba9dc07ddc0a36c1c594e55915503329a36731f0221b01b5253c9f699661c2f656d38298f2dc9aa87a08c5822fd713c8580ae843938c5d34e2e8ebad208301e96d1a5cadffad309985b56cbeb34f62643a9d95ea43d6008b680defd912cb361f6f97c1db3d8f9245e4e71bade9f7d7fa468f6d97414d53d87e6cfb77540dc5d03f4a3a42f173d5493ab1f8a793e04f42d3655aca2f7a2c2a7eb93dc7e1a6a638bd252c99adc6b6b9fb1431134b3307eba542164932283ef8d9f703e7e4a968acaace1a0955d75dfa11680947feec3308492fa73d3fcdf9b0865c0774572fdb287c4427595576afa9943b548ef38f1bd15dfb2861fea92b15216136a52d2faaf17d46cbc0fede33e172d9006c8bc7b7aa372b78dc6ca2f3ef36a97e4760164c50161f7ca8e661a6ba4f5dffe843edb796d5604661ff60a9f6220e5ccd5815d66d83db2eddc9ecf336acd5c46c97a2bf260d434f66f976e1e63701d3a70d44d072726c7e0afb629ab2214b25746c09d83e003e34b130a64e67c6c574c25b482de2d3871292a859904cda0112e0f140e94ac452a91f1dc2646bfa2f68e8ec709b57258586df31a25e29fc2cc5f1f5b13376a95d6990c5a4434748b21d4670d19e6172e3bd7e39db76be4ccf25b70dc6d215d8be9159cd0b5715ca6dbda914594e6a977339c887f776b81a18970f8ef8a5c8d69d7bb8a72bdf4965fdd3eced9aef14d30a3d5c4375bb5fa6441f45826dac68bc7ae6e1f0189d3381f2b511a4c9098e1c2c3b09e78ba5577da65214dd4e419592179964afe78f4b5f3b515b555e7c9ad0f7292551ac3b4fdd7dc51e80cded0bb614045e89b6b7596f68dc7eb7757cd71300a97ce618a92ff04ae1188335df2036b65910c540b26185cb474f8f968dd52668120e979646514f15ccf6cfe0c7ef69af23292e2c95e24add2bda99f7522dfa0716cb5fb704d0ae63714db1ff787e1e6b448fdd0ed463496842c0a5b19181308cdda3bbcb78a79f6737e3da33dfaacde641224913f4adc7830ae50943d88b1304008b1808d920e9e921cb1b3482512704b64a152b8f87b4a1eea26c35ae1051c337f254a0d26db7e7a0d2e934cfc8d027e688d297c5205133e73c414c41a222809c4ecaa3cdcb21c632e03f8a75eea5319e6fc37bd4da9d44af3f582cfa11bcf8da03268acaf131de23496029e33d28ed2de8d942a47ba895f34c5aebd7838889d1544fb834ffadc5e820de3e011a1dde5709d356b3e4b268786f76ef31be1d522fd662c57d8a1577a04208b29931ff32e209aed6825b08ed615eaf14d7d30ef6064548e3e7e2d560569176c39880e4e12d23864d3d224bc4c21ae0cbc0062bdaa9ac230b95e7716e1647347324517940a6a98623e2046b6b29eff5f713ceb3696bd2062946f1569524aeb94e79185394d0d12f0e2b79bc69dc6e6419fc4bd0ef0c343513e61af323b564903d053f0f4e73fe174084ebd506002e3552281fdcd0a418b30c94e3db37f1af63dc1efe340b7bebfa3ac656fb64a694b127d4de98c72bc917dd7848267e98d73beccb3a25afbf321e198dc060ee0390cd87095d3e7e76bddd0794a72e23237ba7c148003b71d9ae4fc24fa53b364e3e6070c88a81cfcde3aa792597534b2852c28220a29810ad2131d0fa560349e2c7e2a4faf1f6a0b60cf2a6df84dea0125e523bc7cb5531ccedd54072c5e00c70e1f75b0cc6625879b44073d730d69882357f8cebff26a5e2eee0faa8dc19fc5199db19fff5988fca2e5ebdb05c0e2d707fedac81f489da251b6e76e6082249d4f873fcdd205f7873ce2297d4338fee6adec65581fa96bb5ab56736a97c510b5be6432abcbeee77174467565ad2cf0111de28934c5140e0a0ce88c8198a727b23c42d4e623903352d48292c56915d489aab60b1297f775d5164e08fa867d86fafc395d8ecdf8d4da6ae2d79c032b1779e7caff905ccab8cc47afb63f25a53a84e28ed1efd64e61994a5673b5d7222e1583c919b82c1d8602074b1610b17c64dcb1e42297291c78302841d89e68952cf2245c2ba0bb0249dd41d091a7175df3e2b14cee529a1c309593d28d258b68f3682071ad2f26016044a3b08dfd8b01d777ca5f738a1474362baa4c0cea0f5bbedb627f1bd1704a818ef5e78105f6b392efa2da33b617c38053e123009e0c58bf238b5c17c692ad3a20bb17a7bc3c0a68357ca1068c7456b7045994f9c02d68824357d5d676ae410dea58545d642a86be93271112bf93ea178648557be7909e12cc8eb28c04fd2824d7dc0c65e980a71d37d97355500ae1adab247599ccb77b2bca70d4fc0c380cc4fbb3293d2d08284b65a8ca981d8658949028b155e7d56da3ecc1da63eceb5a65a3ac287d9aee61f612c098d498ab1f691a73d3778f6f624fd9a45701424533712d06a2215dffb086690238df91f9a968f4ac100c264d8752fe8c1d6fa0d3fa3f983d4b79d7723e7a45382f61e432b323c2cfda66206f880b358fcb628c83317f9392e86313d7e9babe1dacd568a1065157c2cc704c96f17ed7267eb1e5bfa7d5ac74bafddaf59f165de12a9bf057e0e1f0d4a9740bcd40f2e80b923c982f320422c3c7656826d509761f3552c9a2f8bff00b07399239d7665436bbc9c134c9bb82702ba65bac94612a95b176c9714424bcb209df8e1bfbaf640d08b2cebb1f6dc48caeae0d83f7f1bb3d10a07f81bbb00062da077f5e1e4e372dfb5bf7a342f81531f7397615f7c402a134ed23f01afaccfc6b0b597ccc273d736a4a7aac62f554ab6d5cbd93557cdb87edb20ee092089707e588412c13963346fb5b4d394eb11ca1f3afe14263ae84854e305501d94302d7776b3889e5d29ca50d0c8a75c900885619fe7c75d77b7cf61a33946f3556d6055e2ff0b49f7fdb4964160510cd207e717915e531605d5fd8efcce06eda9ab658ae1daa915e55290983cbeec1eff6b817385fb3aa14a1ee01cee25dfe0a4b75a73977b10607bbaa7d2ec7ce6a6dc1382188663aa0a26e924db53ee41df1f79cb1a8749239c81bf14318bd7b4645c791007bfc799a7d55543ebf41a6c0fad6293c1db7833680e8474e94edb86bd299bfdc30cc384d1e9a14c5eb0b17ebf784190f187c89ae444bb25d5e7c3319d4bb471ba56757b61a1ec9b191a321420de167ebb8661427ef4d1228b132c9c91c0cd037aac140fe2a73cae346866f30e2af3fde3a782ef3b7a0f4878479722f06e44f07985c5850882a1f37520aa143affad3930a4d92884abca8201d191c7fef999e6f8948d45bc9452b0135dfa8d2c70bda1ed53ef003e9ce2f242a5e46a90a7ba15d0b3ed042c8e0394539f5ef24012f48c2e4f586ab62f270f14cd1290d5368662b690d6821ee0677a830948c4d467a760da469358e63e574389556699c28a616f1e13a482fd55e41395f9c9068e752b57f41d12327f6a53dee2c93a6a6abcc3a83b7de56f8fccefa8f2ea70a19d426854ebf539ae0c7dabd3c101021dd90602ac7130789b4e5d56a63bf68f11c54d6543c99f94f783de2f84fb9dcacc3f10c0b047fae94171f117bf44470749b3308c930216cef78c197b352fda548ef8f72ecbff31f7bec9a825e5dff9f9d1d98263a638d97a055cc16a88f3a83fa984356dc0c5500e6e1b9e1b705455cbd241b596689dc1f998c6513b1994b26fe6db5034b9cf750f06094b0797716406bf02b898e807e3815cfc1e3e8e7a885284081a0f3b8ca61f8bd4cb8b4657d5233e2fa6a75aa581206a0ad288df15b61fa7852a8433240f28750c22d187067eb36c7c83de65bef2c49073952e13cfcba78e89662c17966a337732b46e5876f1ae17155bd8fcc29ec184b0db6d186ce05a0f3f1cbdc49f628e79354b08ad98df6bdb6cb2b6d6feb517180f12a7034d4605b4266a9b7c6506eb6b934ee9ce94930de822505825b950612e1bdc90c9897553dff667c8851ba4b3442521f42883746c140a3d7d5903a0b27d3d8fc74a1de2e63638072466d896a0fac908c9254680640cb5c1ef612810ba60c6b685c2668a27bd9cd3d1146dd978dfa2e39cca09f8448645884a335f0b533a2155807d640274fd781a69b37b311783c6927bfeead5856804c3a96f0e6cb881f119e75118d2b4e1ceb9ca26c64ea508395f0b18d0e8c5e6e7f63c7522649da629f3049d8960c45e01c2d7125203a97ec993f932b67b971b0d4f188604364e4f3c97b65f3c48c27587fd6dc18c4e2f266a296fe502735e931b5993226e1cd0fafdc8c7343312e5c71fd2de032f9931ba6f22230362d9bb0638abc8dc5a7bf09086e0fa14ab4de07fc8ad5f9f0f875f817f0738bd966eb0df8d563337b4156f81ccdecfe20934e2e510ca443a8ee22cab15cfab986cee3a6c0e57698a1ed1b7840e744c93cd56af0c78a83328092803d2ce2f151a7e9766df1588f5b5b71ece5a2c306ae1914e013b1af70fb515805bdd40967d2dfe5bbefebb8d53c65e60d16940df1aa7c0b08064e99bd85d8203e57e28b5aa4592c26472d84f4ecedb4c51df248a2653ad6c969c84dc88d92e71c38757a8757853438e4cf378e6a926077f21ce13038beb882aa0653e686d5d11ddafc1a59981dc49ee52fce188e1e1d6d3e85ade5274c6975675f6946fb95038028320c0e9e76c8cf65d3ba88ac37e0933435e24bc2ce8c01cc1ba9aff55a6d455f3edafd887858612aae5349c3adf5e07630d2009cf92ebebfbb611c24d4c1ae625ea94de43b81edf9f55b58782491e7b225d105e70c5745a0cef526f11b6b822102bcaa2070648a070c5845b8e6368d3622d1c854f27d9289fa273e84e1f1f27b5443ed84df59dbdfd5a2dada8d3ef31e26c4aeed2f65688a45a01ce9d35371e14318579afdbf214d825e2777f23c57ac4bc88ba88af1c2c60a5f0c9b403bdf3ca492794550dc20e7c6cb18ed72fb3637230a3199863f58c49f7618eff5395eab6699b5c6cdd7b43caf8d86c15c721e797dcad52159bd8d4694beae70da82ac1a377537f4c318b07340a5b7002e3d4224370262e118195d548b21b45af360f9e6291c5e8d3dffd567ca0ac1dda91a6b20c2ac8c49c5a54ccc7599c44efbdd0510308f8a70fdf8f04df8506755630c86b2b7216946b0f80ea5dea5e10ab95fd64c2307c4e57b0c14daef75e259ee842b135fb4f143f0775461c3dd8f700e2b816b12bd7dd1e83db00b1d74e8f0dcaf70ad1f566cb526f20d4a8b804f6da3366d2813e638d41bd48a8a3260d956b398cc8a2fb2c5bf23dacea5c300b6c13f108ad461aaac0473e4918e014a4a7e2d0605ce39360fcab3a8805177ccf1ab9a7a127cde118d77e720eb2c1d06a04d131fcafee260a9584147b944377ad3379a703e89a6086acecd650404502f6c4319a31e1dcc8b26eefae3251c81beec3c5947fb2df8bc48b225ac66686508112aedba816abde8d189a3381d7a141660d1a5837e5f48dbbefe1dcccbbc73005b91daa030b11d8e4c367f724a5ea0d72644cc994a6e7a40ee5e7254e6c4ff55fad7ad5023a396c47ba5228bfed601462cc2e7b69f3e09699d6eb384ea4ea3452092a41418bab15794fdba383a33c5ea1d828abb2e3ea5569f200e6fd186d9dbab58a9076e65702ca3172088e9776d4a87bbbc83d1f28373c62e8a8eb1eae1de0a13f916dd4fc0456cab5b59c03e0f21b9afa87a82e69b890518d3c546b139063565e97110baf3ed8c0f415e7f51b387f21a06b6b8e11bdd6623647ff01ccef5ec91c6824b4329e5f94722dd22ac9a5bd463d14a67ba99095e2df758c5fdfb72894986ec949188a61e1588libfrr.so.0.0.0libfrr_pb.so.0.0.0libfrrcares.so.0.0.0libfrrfpm_pb.so.0.0.0libfrrospfapiclient.so.0.0.0libfrrsnmp.so.0.0.0libfrrzmq.so.0.0.0libmlag_pb.so.0.0.0rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootfrr-8.4-150500.4.23.1.src.rpmfrr-develfrr-devel(ppc-64)    libfrr0libfrr_pb0libfrrcares0libfrrfpm_pb0libfrrospfapiclient0libfrrsnmp0libfrrzmq0libmlag_pb0rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)8.48.48.48.48.48.48.48.43.0.4-14.6.0-14.0-15.2-14.14.3f_f(@f@e@em@e?eRd/@dbd*cn9@cb3"b@aaaim@aa@aC1``@_I@___w@^z^Ӝ@^^k@^G@^"@^!^^^ @]@]@]]@\U@mt@suse.commt@suse.comcfamullaconrad@suse.comdimstar@opensuse.orgmt@suse.commt@suse.commt@suse.commt@suse.commt@suse.commt@suse.commt@suse.commt@suse.comdimstar@opensuse.orgmt@suse.comjsegitz@suse.comlinnaea@lavia.moejsegitz@suse.comlinnaea@lavia.moejsegitz@suse.commt@suse.commardnh@gmx.deolaf@aepfle.dertorreromarijnissen@suse.commardnh@gmx.demt@suse.commardnh@gmx.deerico.mendonca@suse.commardnh@gmx.demrueckert@suse.demardnh@gmx.demardnh@gmx.demardnh@gmx.demardnh@gmx.deidonmez@suse.commardnh@gmx.deerico.mendonca@suse.comerico.mendonca@suse.comerico.mendonca@suse.commardnh@gmx.demardnh@gmx.de- Apply upstream fix solving ospfd denial of service via get_edge() function returning a NULL pointer (CVE-2024-34088,bsc#1223786, gh#FRRouting/frr#16088). [+ 0023-ospfd-protect-call-to-get_edge-in-ospf_te.c.patch] - Apply upstream fix solving ospfd buffer overflow and daemon crash in ospf_te_parse_ext_link for OSPF LSA packets during an attempt to read Segment Routing Adjacency SID subTLVs (CVE-2024-31951, bsc#1222528,gh#FRRouting/frr#16088). [+ 0022-ospfd-Correct-Opaque-LSA-Extended-parser.patch] - Apply upstream fix solving ospfd buffer overflow and daemon crash in RI parsing with OSPF TE (CVE-2024-31950,bsc#1222526, gh#FRRouting/frr#16088). [+ 0021-ospfd-Solved-crash-in-RI-parsing-with-OSPF-TE.patch]- Apply upstream fix solving crash in OSPF TE parsing (bsc#1220548, CVE-2024-27913, gh#FRRouting/frr#15431) [+ 0020-ospfd-Solved-crash-in-OSPF-TE-parsing.patch]- Apply upstream fix on error handling when receiving BGP Prefix SID attribute (bsc#1222518,CVE-2024-31948,gh#FRRouting/frr#15628) [+ 0019-bgpd-fix-error-handling-when-receiving-BGP-Prefix-SID-attribute.patch]- Fix build with RPM 4.19: a stray %-escape sequence was found in the files section.- Apply upstream fix for a crash on malformed BGP UPDATE message with an EOR, because the presence of EOR does not lead to a treat-as-withdraw outcome (CVE-2023-47235,bsc#1216896,https://github.com/FRRouting/frr/pull/14716/commits/6814f2e0138a6ea5e1f83bdd9085d9a77999900b) [+ 0015-bgpd-Treat-EOR-as-withdrawn-to-avoid-unwanted-handli.patch] - Apply upstream fix for a crash on crafted BGP UPDATE message with a MP_UNREACH_NLRI attribute and additional NLRI data (CVE-2023-47234, bsc#1216897,https://github.com/FRRouting/frr/pull/14716/commits/c37119df45bbf4ef713bc10475af2ee06e12f3bf) [+ 0016-bgpd-Ignore-handling-NLRIs-if-we-received-MP_UNREACH.patch] - Apply upstream fix for attempts to read beyond the end of the stream during labeled unicast parsing (CVE-2023-38407,bsc#1216899,https://github.com/FRRouting/frr/pull/12956/commits/ab362eae68edec12c175d9bc488bcc3f8b73d36f) [+ 0017-bgpd-Fix-use-beyond-end-of-stream-of-labeled-unicast.patch] - Apply upstream fix for an nlri length of zero mishandling, aka "flowspec overflow" (CVE-2023-38406,bsc#1216900,https://github.com/FRRouting/frr/pull/12884/commits/0b999c886e241c52bd1f7ef0066700e4b618ebb3) [+ 0018-bgpd-Flowspec-overflow-issue.patch]- Apply upstream fix for a crash due to a crafted BGP UPDATE message (CVE-2023-46753,bsc#1216626,https://github.com/FRRouting/frr/pull/14655/commits/21418d64af11553c402f932b0311c812d98ac3e4). [+ 0013-bgpd-Check-mandatory-attributes-more-carefully-for-U.patch] - Apply upstream fix for a crash due to mishandled malformed MP_REACH_NLRI data (CVE-2023-46752,bsc#1216627,https://github.com/FRRouting/frr/pull/14645/commits/b08afc81c60607a4f736f418f2e3eb06087f1a35). [+ 0014-bgpd-Handle-MP_REACH_NLRI-malformed-packets-with-ses.patch]- Apply upstream fix for NULL pointer dereference due to processing of malformed requests with no attributes in bgp_nlri_parse_flowspec (CVE-2023-41909,bsc#1215065,https://github.com/FRRouting/frr/pull/13222/commits/cfd04dcb3e689754a72507d086ba3b9709fc5ed8). [+ 0012-bgpd-Limit-flowspec-to-no-attribute-means-a-implicit.patch]- Removed protobuf-c BuildRequires (source package name) breaking build-system setup with libprotobuf-c-devel 1.3.2 updates. - Apply upstream fix for bgpd: Don't read initial byte of the ORF header in an ahead-of-stream situation (CVE-2023-41360, bsc#1214739,https://github.com/FRRouting/frr/pull/14245) [+ 0008-bgpd-Don-t-read-the-first-byte-of-ORF-header-if-we-a.patch] - Apply upstream fix for bgpd: Do not process NLRIs if the attribute length is zero (CVE-2023-41358,bsc#1214735, https://github.com/FRRouting/frr/pull/14260) [+ 0009-bgpd-Do-not-process-NLRIs-if-the-attribute-length-is.patch] - Apply upstream fix bgpd: Use treat-as-withdraw for tunnel encapsulation attribute instead of session reset (CVE-2023-38802,bsc#1213284, https://github.com/FRRouting/frr/pull/14290) [+ 0010-bgpd-Use-treat-as-withdraw-for-tunnel-encapsulation-.patch] - Apply upstream fix babeld: avoid infinite loops (CVE-2023-3748,bsc#1213434, gh#FRRouting/frr#11808,https://github.com/FRRouting/frr/pull/12952) [+ 0011-babeld-fix-11808-to-avoid-infinite-loops.patch]- Apply upstream fix for denial of service via the bgp_capability_llgr() function (bsc#1211248,CVE-2023-31489,gh#FRRouting/frr#13098). [+ 0006-bgpd-Check-7-bytes-for-Long-lived-Graceful-Restart-c.patch] - Apply upstream fix for denial of service via the bgp_attr_psid_sub() function (bsc#1211249,CVE-2023-31490,gh#FRRouting/frr#13099). [+ 0007-bgpd-Ensure-stream-received-has-enough-data.patch]- Enable pim6d providing PIMv6 support (bsc#1206234)- Migration to /usr/etc: Conditionally moved /etc/logrotate.d/frr file to vendor specific directory /usr/etc/logrotate.d and added saving of user changed configuration files in /etc and restoring them while an RPM update. - Declare root as sufficient also in the pam account verification; without vtysh use causes to log a pam frr:account warnings (https://github.com/FRRouting/frr/pull/12308) [+ 0005-root-ok-in-account-frr.pam.patch] - Applied fix removing a not needed backslash causing to log a warning (https://github.com/FRRouting/frr/pull/12307) [+ 0004-tools-remove-backslash-from-declare-check-regex.patch] - Applied upstream fixes for frrinit.sh to avoid a privilege escalation from frr to root in frr config creation (bsc#1204124,CVE-2022-42917, https://github.com/FRRouting/frr/pull/12157). [+ 0003-tools-Run-as-FRR_USER-install-chown-commands-to-avoi.patch] - Removed obsolete patches provided in the 8.4 source archive: [- 0003-babeld-fix-10487-by-adding-a-check-on-packet-length.patch, - 0004-babeld-fix-10502-10503-by-repairing-the-checks-on-le.patch, - 0005-isisd-fix-router-capability-TLV-parsing-issues.patch, - 0006-isisd-fix-10505-using-base64-encoding.patch, - 0007-bgpd-Make-sure-hdr-length-is-at-a-minimum-of-what-is.patch, - 0008-isisd-Ensure-rcap-is-freed-in-error-case.patch] - Update to version 8.4, see https://frrouting.org/release/8.4/ * New BGP command (neighbor PEER soo) to configure SoO to prevent routing loops and suboptimal routing on dual-homed sites. * Command debug bgp allow-martian replaced to bgp allow-martian-nexthop because previously we allowed using martian next-hops when debug is turned on. * Implement BGP Prefix Origin Validation State Extended Community rfc8097 * Implement Route Leak Prevention and Detection Using Roles in UPDATE and OPEN Messages rfc9234 * BMP L3VPN support * PIMv6 support * MLD support * New command to enable using reserved IPv4 ranges as normal addresses for BGP next-hops, interface addresses, etc. * As usual, lots of bugs and memory leaks were fixed \m/ such as a fix for a possible use-after-free due to a race condition related to bgp_notify_send_with_data() and bgp_process_packet() in bgp_packet.c. This could lead to Remote Code Execution or Information Disclosure by sending crafted BGP packets (CVE-2022-37035,bsc#1202085). - Update to version 8.3, see https://frrouting.org/release/8.3/ * Notification Message support for BGP Graceful Restart * BGP Cease Notification Subcode For BFD * Send Hold Timer for BGP * RFC5424 syslog support * PIM passive command - Update to version 8.2.2, see https://frrouting.org/release/8.2.2/ * BGP Long-lived graceful restart capability * BGP Extended Optional Parameters Length for BGP OPEN Message * BGP Extended BGP Administrative Shutdown Communication * IS-IS Link State Traffic Engineering support * OSPFv3 Support for NSSA Type-7 address ranges * PBR VLAN actions support- Apply upstream fix for out-of-bounds read in the BGP daemon that may lead to information disclosure or denial of service (bsc#1202023,CVE-2022-37032) [+ 0007-bgpd-Make-sure-hdr-length-is-at-a-minimum-of-what-is.patch] - Apply upstream fix for a memory leak in the IS-IS daemon that may lead to server memory exhaustion (bsc#1202022,CVE-2019-25074) [+ 0008-isisd-Ensure-rcap-is-freed-in-error-case.patch]- Make build a bit cheaper: do only BuildRequire the primary python interpreter and its modules (python3-FOO) instead of all available versions as done using %{python_module FOO}- Apply fix for a buffer overflow in isisd due to the use of strdup with a non-zero-terminated binary string (bsc#1196506,CVE-2022-26126) [+ 0006-isisd-fix-10505-using-base64-encoding.patch] - Apply fix for a buffer overflow in isisd due to wrong checks on the input packet length (bsc#1196505,CVE-2022-26125) with workaround for the GIT binary patch to tests/isisd/test_fuzz_isis_tlv_tests.h.gz [+ 0005-isisd-fix-router-capability-TLV-parsing-issues.patch] - Apply fix for a buffer overflow in babeld due to wrong checks on the input packet length in the packet_examin and subtlv parsing (bsc#1196504,bsc#1196507,CVE-2022-26128,CVE-2022-26129) [+ 0004-babeld-fix-10502-10503-by-repairing-the-checks-on-le.patch] - Apply fix for a heap buffer overflow in babeld due to missing check on the input packet length (bsc#1196503,CVE-2022-26127) [+ 0003-babeld-fix-10487-by-adding-a-check-on-packet-length.patch]- Add ReadWritePaths=/etc/frr to harden_frr.service.patch (bsc#1181400).- Update to version 8.1 * Graceful Restart for OSPFv2 and OSPFv3 * OSPFv3 NSSA and NSSA-TSA support * OSPFv3 ASBR Summarisation Support * BGP SRv6 and Prefix-SID Type 5 improvements * BGP EVPN type-5 gateway IP overlay Index * Lua hook support * See: https://frrouting.org/release/8.1/- Drop ProtectClock hardening, can cause issues if other device acceess is needed- Update to version 8.0.1 * refreshed patch: - 0001-disable-zmq-test.patch - harden_frr.service.patch * LDP gained SNMP support * OSPFv3 gained VRF support * EVPN Multihoming is now fully supported * TI-LFA implemented in IS-IS and OSPS * New Segment Routing daemon * See: https://frrouting.org/release/8.0/ and https://github.com/FRRouting/frr/releases/tag/frr-8.0.1- Added hardening to systemd service(s) (bsc#1181400). Added patch(es): * harden_frr.service.patch- Use skip, not xfail in 0001-disable-zmq-test.patch to disable zmq test as it is not expected to fail but hangs (bsc#1180217)- Update to version 7.5.1 * Maintenance release See: https://github.com/FRRouting/frr/blob/stable/7.5/changelog-auto.in- Requires libyang 1.0.184- Disable ZeroMQ tests due to sporadic timeouts during package builds (bsc#1180217) [+ 0001-disable-zmq-test.patch]- Update to version 7.5 * Upstream does not provide a changelog - Make grpc support optional and don't enable it by default- add build condition disabling mininet build require by default, needed by the optional topology tests. - removed one occurrence of vrrpd binary listed twice in file list- Update to version 7.4 * Upstream does not provide a changelog - Drop patch (fixed upstream): * 0001-build-use-configfile-mode-in-init-script.patch- 0001-build-use-configfile-mode-in-init-script.patch: Fix CVE-2020-12831 (boo#1171658).- Update to version 7.3.1 Bugfix/maintenance release * Upstream does not provide a changelog- enable verbose make rules - enable grpc support. new subpackage libfrrgrpc_pb0, new BR: pkgconfig(grpc) - enable config rollbacks. new BR: pkgconfig(sqlite3) - enable realms support - enable shell access - make sure we use system openssl - fix shebang line of the frr-reload.py and generate_support_bundle.py script so we dont pull python2 - do not delete users and groups. - add Requires for libyang-extentions- Update to version 7.3 * Upstream does not provide a changelog this time - Remove patch: * fix_tests.patch (not longer needed)- Update to version 7.2.1: BGPd * Fix Addpath issue * Do not apply eBGP policy for iBGP peers * Show ip and fqdn in json output for show [ip] bgp json * Fix large route-distinguisher's format * Fix no bgp listen range ... configuration command * Autocomplete neighbor for clear bgp * Reflect the distance in RIB when it is changed for an arbitrary afi/safi * Notify "Peer De-configured" after entering 'no neighbor cmd * Fix per afi/safi addpath peer counting * Rework BGP dampening to be per AFI/SAFI * Do not send next-hop as :: in MP_REACH_NLRI if no link-local exists * Override peer's TTL only if peer-group is configured with TTL * Remove error message for unkown afi/safi combination * Keep the session down if maximum-prefix is reached OSPFd * Fix BFD down not tearing down OSPF adjacency for point-to-point net BFDd * Fix multiple VRF handling * VRF security improvement PIMd * Fix rp crash NHRPd * Make sure no ip nhrp map works as expected LDPd * Add missing sanity check in the parsing of label messages Zebra * Use correct state when installing evpn macs * Capture dplane plugin flags lib * Fix interface config when vrf changes * Fix Interface Infinite Loop Walk (for special interfaces such as bond) Others * Rename man pages (to avoid conflicts with other packages) * Various other fixes for code cleanup and memory leaks- Fix license tag- Build with support for pcre, protobuf, rpki and zeromq by default- Cleanup spec file- Fix build-time dependencies - Remove superflous comments- fix_tests.patch: correct syntax for Python 3 imports in tests. - Enabling tests- Update to version frr7.2: * zebra: use correct state when installing evpn macs * lib: set entry to xpath in if_update_to_new_vrf * zebra: capture dplane plugin flags * bgpd: Autocomplete neighbor for clear bgp * ospfd,eigrpd: don't take address of packed struct member * bgpd: Prevent crash in bgp_table_range_lookup * bgpd: Fix memory leak in json output of show commands * tests: Test if `distance bgp (1-255) (1-255) (1-255)` works * bgpd: Reflect the distance in RIB when it is changed for an arbitrary afi/safi * bfdd: fix multiple VRF handling- Updating to version 7.2 - Adding systemd scripts - Fixing build and permission issues- Update to version 7.0.1- Initial package, version 6.0.2mourvedre 1717661977  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~8.4-150500.4.23.18.4-150500.4.23.1frragg_table.hassert.hatomlist.hbase64.hbfd.hbfddbfddp_packet.hbitfield.hbuffer.hchecksum.hcommand.hcommand_graph.hcommand_match.hcompiler.hcspf.hcsv.hdb.hdebug.hdefaults.hdistribute.heigrpdeigrp_dump.heigrp_topology.heigrpd.hferr.hfilter.hfreebsd-queue.hfrr_pthread.hfrr_zmq.hfrratomic.hfrrcu.hfrrlua.hfrrscript.hfrrstr.hgetopt.hgraph.hhash.hhook.hiana_afi.hid_alloc.hif.hif_rmap.himsg.hipaddr.hjhash.hjson.hkeychain.hldp_sync.hlib_errors.hlib_vty.hlibfrr.hlibfrr_trace.hlibospf.hlink_state.hlinklist.hlog.hlog_vty.hmd5.hmemory.hmlag.hmodule.hmonotime.hmpls.hnetwork.hnexthop.hnexthop_group.hnexthop_group_private.hnorthbound.hnorthbound_cli.hnorthbound_db.hns.hopenbsd-queue.hopenbsd-tree.hospfapiospf_apiclient.hospfdospf_api.hospf_asbr.hospf_dump.hospf_dump_api.hospf_ism.hospf_lsa.hospf_lsdb.hospf_nsm.hospf_opaque.hospfd.hpbr.hplist.hprefix.hprintfrr.hprivs.hptm_lib.hpullwr.hpw.hqobj.hqueue.hresolver.hringbuf.hroute_opaque.hroute_types.hroutemap.hrouting_nb.hsbuf.hseqlock.hsha256.hsigevent.hskiplist.hsmux.hsockopt.hsockunion.hspf_backoff.hsrcdest_table.hsrte.hsrv6.hstream.hsystemd.htable.htermtable.hthread.htrace.htyperb.htypesafe.hvector.hversion.hvlan.hvrf.hvrf_int.hvty.hvxlan.hwheel.hworkqueue.hxref.hyang.hyang_translator.hyang_wrappers.hzclient.hzebra.hzlog.hzlog_5424.hzlog_live.hzlog_targets.hlibfrr.solibfrr_pb.solibfrrcares.solibfrrfpm_pb.solibfrrospfapiclient.solibfrrsnmp.solibfrrzmq.solibmlag_pb.so/usr/include//usr/include/frr//usr/include/frr/bfdd//usr/include/frr/eigrpd//usr/include/frr/ospfapi//usr/include/frr/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:Maintenance:34170/SUSE_SLE-15-SP5_Update/0ea57acde404d46fd222df4ca5c36a01-frr.SUSE_SLE-15-SP5_Updatedrpmxz5ppc64le-suse-linuxdirectoryC source, ASCII textC source, UTF-8 Unicode textC source, ASCII text, with very long linesZQ_{75utf-8a12404ba70817faed16880b7f05c628c4a7c1ac66ffc262f9f061f135ced4419?P7zXZ !t/㑍]"k%U8uy:?$ g,02]K*Ct9M/dIԵoy#-K:dNYT] #ynyGv jKԝrY rT[y#alR^FSf^7G+!2M2 2pm!Ep\Vٌigzo*ΰ j(eSxg4]{ԺdM̽Az+3:@”7,zX)O)ߙ1=dfOc'恉[uҀp1\ v h-LsVQڄҍF2ɕjs^/h@'a͢U;y9*2|zw'p) TjڥI - 2``Mwf &0ʎ.լ:+WNT?gUϢt0\^rnHd8(łJ! gO&X~;YSS+1~p E䷴ײ|ɲ>uLAd(Κ /j?';l8@־:uZ=(& P -MY5^ (gKɮbE]Bq=i.𞘌jQCfnC*LqTz/1fnO؈gjPqFd<+N0URќ5J)Iʁ_T CI]:ObSAp.uV`]e%O0>D5_-{ki 4Oceqģ2Rɧ!"$nCcg oJEGC. P[6>80TE3 _ud$do C| zYeW0m R}Z\a4a@^$UInCMy8@%XH"n汩y[ iDŪ\4Po' ",yh?TqߜB3 j0pIݍeF7U!as~9D-g{`f5Q0f05QOqG^gOLIbs=j7 1i*gĖR^t;7Utrf=ttetvYeCinn$(;I (_?£#߿KO=q(ox^@XiႫ(/MձPZXc^.C^ȦJbD\-㙣'9L: cfz1G?E0[cF_aa,,}!Ol/hJn)Xz8"nt_cF# R2pS3s#b`UBa݂]@u-/>}mCO{SG 9 si楂gUn1.\$i+LDdH[/q5UQ9ߘ;>*zd#F/+l/RϜN\1" W[5,/wN_n|uNK^H߁(qXɵ_GZ':g)+sl8GjH^04}%i8 Vǎ' 0r3Exх,=`ꤶʱp]ź0h-iCˀ.bY٭P\Q("*a(ZA-AO/[R`qS$ X8 3)rLC" ~ٻA=]y k%O> ױ  6h:&|GMZ@"^Ͽޱ|fEH2]jI4V s,s$0Gv_H|vѶk 6l}9h?a$" 0Y~l Q$uʵ!JֳyD"4s1SMB x3m\Hi0>Xs"wG`1 ykvt՟d31(MG;cKƑKC2ĿW:/I8F*HO,ahvB(} `lw=]RaEy^ x-)CD÷".5X_TK ~pR}&kjFD4KKD+)GwD'= sJco Cdfxn_XM.Řtb/a&Be9vמDjX;M[=#UBELM_@ #A2ӳh}9GϬuc1Dc {AdgVvgx>qP>Jj4.b*$KK:3~^ꛆ!G٢^<|g=_Z0Z%oGFT 1j"*ŵR#$`;֢-;F]T5vwÎê?Dߤ9ҐOTdf?^gyKjC|/QCquπ-YGt`D[T$33"eo<'ZɣktFK#n4THـ1U^uF@[%S̀ރ|Gçm{ p7|o7R:Vfy׸(ɸl X$sReoP$^"t{Ҕt[HսKqV(cp U"``]yN`{QN 4TTɖɓfE@@L-, 5LW:8fMʽ%c93|;-|??*? ː-2P%3*-A1f+b9$ZiiE>c++5ַ7D'knbC 5ݵ.6Mh5 ޽:un d>  ww64>eFv\=30h%aVg+iM3kt86$Ђp]bL\ۺ*S(.t(~2|W D50 ,fla 0 %KY> ?X&S;%-b,Ђ=J)YL^i[9^?`].IyC5=f֔.t(Zl:zˡTMS>KM+`dl3ޚk$?q{a?iOmO%B:|D 2gD@UDK5uw9J7)[`zNMjBOv<d5Q$TZAѾYMӟWp2(= roi> ֡s]NNŽþJgmE]dTHF_w]-Fќ5o.8*GXx#~Wiur[jQnxxiN>Xt1]@mƃT+@(1-YGW/J^P9hD6fbiLuI|< Ħ[%FXncG̿x"?KC+3\= —Vޥ[٘O>2^iF³TűܽM,b.|wઊqU.|۾J`vΕ|;;6(n,wK:F{, L *;ՈZJE\ J[*s@hOP-S[f-3by›X& "H댵[x0R6`7ӺbMTźs+ 1RVY"Vbu{CkmDKݳ d8^B_!#l9mVM!zm/EZѺ.f.}n6o%k 8B8 =4W;G:s%{eIؑu&:gL.+k>]?عRb^ffkGLwOcwaKԵဥu+ژ&BM~*y)n6 'A93r@gkH v5[hݕ?q\[[h>@<>oH x'@w).|BPE>}欰Al@9QydX-pށ{V7Bw ^I25+9*5mN.r Y(!!}V=sN֡KMzQ.<:vM#!!)Rtr GG($%‘J>`^_r}Vt7n~:Pɀֳ+QG4KL闌DLmp h#3uǾ{ TځC_77XPﺷR8—@T 6(X&&zFK|ʝp!-{%+ ߒI%=uQ_*|rY g*EQ|u!S\PiJ*a>4l VͅmGϩj:Ex#|N/l͠hj\qıwA` n$#Ls$j]6O?Uazޏ=GvC۟c䉪㦁Y_ uIs-*cȾcK[yY0Ԙ7(ak:6^* 1&Z0b=̊!cbnEL`#}Q^PTug>x1QC{?B‰6G4@;DB9umptw -=I_\-K#ï1>.+>>mgrtZ[,(Mn7KQiw)'kH>qlz?ac}[>$^rT 6q Vhk[#Bhca|KL!_@g]KCU`#/yLȾșlXS'ƻeO)xxNŎ63r* mRA"QA`>-4,8P!Ls 'C~ b@P8&,7RX8zSSqpc{KkZh㻋-Vuʷbweus m\fFwȉqkIAfQv[Uheyk =F۠0h%K(@9Y!odqfF 鋣$msM@¾" -wmܲ޹b GæM:0}k+ ie {oc-SbG͏ZpG-umcX }zx9jဒm7 Q3%>v}+9=!.4wEkRo,abBM+ g.S]|M}{\_rȒ's;f.ܷ'sT{+mR( P%Lur=? +'(HJ$$5Ln`0HV%'6qdKBdA!{ôٻyrz&T#S@zX:B$݀W`$ ml Kl$T[(P3 VPY̪'hRN̯ϱL$E98Pˀ-X6ޢtz?kg <9lo}DAޤO3D`sc>f!hVӫ< %>{o|tP" 2ξCxQDP hE!W;[tJ#r%SmJ5l*ҔfDY+oz ;]\XնqsSɛ{O$QB4Y>]Qߎ<+4_AAyl6f<_#O wژv}DԱ?,?a5>F4tTϠkDT%NZ7̺S0t$oQJS!PW_rM:/&R2YA lKkHĚ~.$jrN+fa$-<^̴0̶ ]r,ܟYSEDl3. X8ZQa-2QwO5(H=$(JÍ8p$Wr^z>u0Iv\^#c=5 NN ѿɏ>Ͽ*3f2ܾ c星3kcM·C4D;=*!ul$R/M$+3imnCS$jv3@ʫЧ&/t eL LK nm;|-l˦KK=͗!赽][nze头~[@c}dNu 7.WCr).e8 IyŢzQa˕٨ l띦n/IB%0vuO{5|>2"cB 8{-eV PORMJ-- >qNi ^Qʎo/SC]) Y!hY#>SR;\)Co 'oZhilNr+39rɱ ɀkɩ0),) tFlAT!Fv*)IB=+c}&yW]nOQOuw=,Q`AGH cɤb՘с33g O壪 S:?9'cchd+Aj4Yy.`.d9ΡnfN7(Dxt@r~H]Aj(YKNYFF4q6QfLyMr ֹ%B/-6<ֿ$bvfOuֺ}y-Ԍegf23^5~yV|2l7?j4S*i"y_;.@5@]f [0j0uE=i:T† U/RnI߰dF$?.ي}O ~WwvkY^[E=ȋv7 PC/-ʙiyjyLs<m*2K %&螅D+RjHE9Q"?[٭Oa7:A7u$Mɥ"XSh<>4|Zfe[[[Qp2Ya}gJ2uX l /n8aWvD3;~g.+qA6ѴŴ)0yfMoŧd!<uUN x -Ts|@Y]THCY t27=bn<&48'%U`-d9Pf"Vc%%fX9fNwa4OcyaIbH;/InijPYmkb 2bԐXح*mMt%16ļ_ނ0u: %`w4Dj}aFh7m)IʏYԚ^$FMX"Eb+ LWd۞nZM]t1#J&Vk pk(ʂD ͨF4 PƄF"іR`0ۗ 5po=ޤzG*^8H/K٢-=h+p2'Fa'I9UA'0iW+C|s{(3.y"l9.aM~&_x:6lHsyDcLgpwX|Ėz6 B<_n.bTᔡo2<Ͼs[CɹlU`bc|0w>x347]l_Ç?$"ezL)ҙf+[sx@>P֧fh5ř`zQCwN||Ȇ(S5(^}󴴣>gVY5$Ι_楑4;T`}HS`QRwҰ&IՖ ll #%8G<6伪{;obNe$*nRGWߐw}o*fI4Mf(S',cHE\*$j֔[>h(Ld,%ĉ.uTnj1:|4kXZ_W:VQq/K&],~ZpIK;gİE˶s q 1\yr= PwkJ/S=p;+[Qyd/i\"BH_m*wǓy-wa=I3[;#3IO#Hބ,UUpYݢE1ೌDɨTx8ݦJDm SQ ەtL2\QٙcUD2'_ԅ3=.ДÐ7 }ptC(eQM<ɳ,Hy&сfBv]zu8 x'lnIx Ryh#4*MXp.Rx3lqo6v-M<hel ""B xʢ̝:r Hp>ucgo5h׍~ĸ4,˩/-&l״iHC"u,3;YkKRyh9ǐ#(p3&y9n.|on?i(Noc;*SKLqhH'TڗP5 Qn١b@I~s Eγ+uf㏎]Nh]qr?ػS|%SptڄgtM[B:!#OXa~;5g]b@YRh&i;I.QVݧShS ?M ڪjDW;X21VoaqD\^5ϐX>=C V3jp RfVBe2)"=O|5 Mo ^K`={x"5b?m{e"x\l{vb:oT=ĕ>{T5 D:e|3]ۃ_;5g@ϨwW (s* 9闋872QqSCk 㡭=Wy{Ѐc~8`)hݴK_kur:`ٮÙWJ!`0udr 6ܳ]X5,K`]4,^+:hcTez{.ڑin35L N%< $W&X?=vTL!85 J*o&Utrʶ&ץH;xvRY*J}%?}Ij1u'/=w3s?m-{B!BWrxבL*x>8gQɾy'gIfddLuj4UUx%+]! '.4,nߏ/ZQ%>XX#ĺ y=)3Wep˚8J96t_7'>pˌ_V: 4ၑp~*\^,VE>4vC؏8Hl9s3ҒJҸ“R.p;4B`a_u7A:R?~Z KHm7hg.tƍt/J8Zg XkאI+v|a>#ՑNR3\v9gMf TET-*kf+DI=^=_6sMNs"@b;FA?l3v'7o9}/R5ךGSȂheSVxb~G~DB( 7(w1m2T)֊xm%?FHF(\<\CN nDkk176zRo}{inL*i]BeLWlae>yRԜFXFRe&gk>ڔ')f(ݪ/LL>=@9aXW ֏qjR4a\dGn jd`#i | QG:GedG2ǔ|7FJm#$3vS)!_ڻxdb¤fDI R]D2}=[tkV:|='Й!%؀N EibyuLBԦ!| z]78$ižS~( js| ?nd,! "љYVZN/LɋcLe d;mF8Ǜi%"- oPR_I&c ~'BBXƔ0鲡$i@8p*'DtXHT 9?Օv/~V:݆MeS 'p}VՄ>9aĬ%|"4\gp5 PZsy0 wI y І~ݏx'-(yqYgtډy2ؐӉҫ̱ iE)PyQ ls HQqFĭsy#nFHrϪř| 77*4%W1Q^{*DQPjX^Wz 0Osfhb[86KQQU @avŸ3te{֔` sIģAsfXaIP>g[뼯ѕ@oWH1G%ˆ/ląfYJEZ*]ş_|ˆ v"MdIC#[&垕ԥFk G%!$3qaLGPdRfqYZ,:Q`DFX>֙oH(PXҖN0sr픱 %5`Vr̯~b?X" 9 ҵ: //ojH5YZI|5j7R"R(BwIR3dlL5뢝\(&>K FIj¤101OT,mI0Vi3L sr-O**Zppc&$ gSXhGca"Q8Qjћ[k&AzaH/A*}߃ITyA#lh"行+k:)N߸gmHEulӗMC->w Uk+eʞ/vsmoYuOu60z߁417hdOW7R-Cb. e.yiz|,0qwyKb,JыcI)7܁P~ PyfOzv_3[Dlc`< n <_b+u FsF2=Ye&kί#J %MhѴJaƣ3DN:gxgnzD1֜\k̢nkfoI gBqtn447J3 p=29Ʀx%xĹPSkS]vAqrK0F\BX6௴rp|׆ݺ  ZËeȂQpݵՎG|I0wúIA W g&eU!8>NX{}ÜU7 Dy9LHU. }>ox/9b3 \ո JE*5 Ǭ7K7۟e@ c}zÐڀNluۍ:2@Zz3TDڕ۔cY4?!\kdz qw#v)*Hs KO-q9T^'] *5sCv xrmNd\CBy R9DP.M*G ;\q/3n1)p?\GǞTG+M37|aG&dK 0Ƿ XGe7aI1f Fpl>51<ඪ1x׊6m[ϐose _`A_k:~GvK$Rŝ3`p#[@CGlY2oj(hb]x<&oڡ71_%xgLϬ_;)e*QoawFa.5[} >kkP1 NMsֽQ֖?$'w/fVDg"YfXC0VE>"!: G?u 9yI8_Td"7>E]m.&PD.IsT&m/S=FO#z{F8} ȝCv~ ~n^AJÍȰU`PSق 9x"ݥ@(hh9C!3QB_S9$e=̞0g:M$9aq€s'C0_07W^o_. 鸎~A`iкRܔiWE+a{?q2$cd*V|&ppg-Jq>/ 4џn^z. m[`cPi#_o5Xg/&עoҡXx$.>,DYo#I|T\Ļs+Q")<Ė PtQ)1B-:J´Im0 1u oݵBnA*-Yr>ME8})7XBϸV(KY0+n@]>MThOII\`5Ώ{ñU꒯-w*>{4n\{8jIZzrXbir/uob.y4񰃗x思Q$% 'a~"vD4dH/GeXNgav/^"^Ȱ[O.$0:Z=fzk[ȓn7`  3*.miH7ORSiQH Ӕ:lJ6m"OHTab Jݦu7$zWa'jcNCopɢ:x U](|ۖF-<6ǛX{yk]]HZڰdptivL"SBQH) 5Ffjq*[>UWsLv}c>!xQxw.z[baZra F}t\ 2ob::y9CP<@L|ΑgM?[VEۘ8ǚdW48‚ڞnyBjܓiN}3CoE?lMSU.$a zCJh4e6۝lpv`%& 5hl\u# a^1}JVȞ! 6ޖ.\,ΒY&ſE٬[u# u=s]IMZ#NQVE&}\8p^|/Ł։p=y#?a@3;܏*!kH{Hc9l ñ:dԅ&G£l#dý8c/lj:K+ ߍn_:}*$4a^-7#=s=ysܠ9 8o3Dʎ_O㗗n(m15O,!U [)6 !UA~f[#g˻eҰ,— xLj랃#>28+QP|8[?5}k!3%Ձ~DW 0 KPwLX7꠪B& "@/R?lC>*'s^Ó"XᎨ([o .ΔjTapI.GF~QR_(Fwk\̔wTs~ȾE.U88t|Οs|!Jl:hK˞Hj5eWWE(?m]g{]OK 'd,(J;Qn(H~~%?W)ܐ-bYƝ$bPq΄Di_Ku?II=v޹_gW? HgUZBZ?٪wǣ jRGڨ!6 z)" 1|b#MCZ !59`loyd}(%]DR$1Sؖ&2pX`"͍񈜮 "̛=`?JRW3V2nwr'yRTAU:t1wNby+k Kaa  GkXj5p5p8?k xK"Rc;0)F甜yDdY2#*;I1/$tV+X49+`ea_kJ9KU wTvQZJ7=bbaݏ*Љ|eit`hRazWV[Jxn^#e ܀Kϕk7t 6<"X`7O/j2)N/G TԔ@Fځ%ꌂgΨ;E|RZ_(}tcX 'X~Wi/z[*GˆA1^8(a>krAdL96㽽NRwu~_~%:@d욻tVWv%-+%]>r%n'y$uaZC ceocLU(y7p)+,ֿfR7@&R֏ pTN ݔe@YPH:jg`e `t\9yNyytB33negIPjw@$w9c(evOzdQ P{gOPKr.(8#nп=sZj[vIۍXn 4Lh_b}-Lǒt7*˂BFeCiPU|UMMp4@8=J.Vޱ٠(ށ3(3}.6gU\ 5as vz!}RVjSøӇqΜ1V< @F?>w^&L&"'G6$ɿ2dfF̓o<))V6]YuijL`*TśqD0Plft b.lAM{SX#9۴Ci$s`28Si7Kqmt562V;@k-D\?h!޿_v|'#>B^iZ O?Za#EEP_FaXΩ[]Pxb@sTr.fA%bO57GLID ,ti1("և#%h0TbS&EZ%j7U $O/3QW\.T+۶-%(kű{H `NOɘ> Nꔓ4ɹ6Y1:yDW_B[: Mt-<bS7l'\tEPKa C! v̻}@f` e yA@iǙuB. XZr\x|/Pfu eBV׹[qxp7IۍKuΘUX*VVD@/7Sm9Fm*g&:sHrv1HzOɩdG>O .XQhfE+Ⳉƅ"Lٮ pIIԼ.;1q>@ =V&2!WSQz]J‚S5.hYu`NӮyFԨ0bGGq.68ܗ cXCy|'NQ$#ת&j\AqD`U1D-5BSNA(=a(`[)_1lnV]^ekoG׋K@ȍEe888yes-EzJ7`D?b\꟟R<}ƱP~4BrtIjdH ,**t ӢFn"74(3; CҫjшH>Znl ro!Twgi/vR,ΖCUdq?cæ}Eː{Rؐ^v`s䷌w(7ӞA^0DzE_ բHnOİiD `SĦmUp;1LsUBaHu6JPЖ^uyjwa"oI$A 9LG؎q,}E&Xz)o/>74)}B Á['ocXEAy0Y32۟F/?{E, 0*k[[r /ޠKOv'^Σ&kci2`2p|>dܤ{Bv|RWwKx-L3A 9UL~}m>&{x4z+廓;]w!RvvϒI!8QRT_ma/?߻ʔdhgKM#@j$Q3jv͇~7cEyL8F6 |#j<JٴMQޤ۬!lɏRm+U*@N 0[YհyBGZ:1z}])~pO$ɹ MlÞc4"qvfՌ;X1L,L%wXH!q]>)],%FhinJ-@"~ɂv [9yIOjjΚImtZqVM1UA`P\H;(v/Y+<;\!VݼNÑs0>٩ۜBLOFSHD]ݫU&g"ݳ[% ("T|è6܌ZITޟ@ysw=~c[eQFF҅PłoT#]ؒι :rvdjڪӴ0f/< FJnvdSMHCیd=x_ضΒ:|`B qtV9R~0 d_ * ?mތ6%YYaG0}Crva[<0ܛQ_*rU710*,)Y\-r@\⎽8YY tIm(P]@HZ``+-6Azua/в}bĨRmF恦/ pa ~}w^* b bEO{$n#0Nb3c>.oD"tف"n离 '3۫6%r5ԐtC <F1+kI)0sWl$ K1khk!BZ&Ajk@77l"V *>vVP">.1Aq*5^TS(A0oel=]/0=6M -5Չր٬k tG]vr'1 RtasB]PH|/GFc"[JN/mL0*H96g!b!.t d~jD3u1VJ-@k]G VV_?T%@;!.H~oL6Kn:3r8;[;NŠދ+(3ȃHۇP _Z]FvrM}4V[0׵2OOۈ q lӂ~sȑopTuM1+2b(jFHi2o.ܕIS/Yݫ⡜=pU80zjAy>U `&[x1[ʄYLbFߙ=C|X/c- KyŊm5vudd}bJ36R&Ɯ|5E>Ӣ:-H|*x$ݿfkErF3\ NOQ QK 8vY/N\pAX1(Q_ۻr^s@JiF^'^Ѿd ֯U@r*ָF%M?)Q`UMQ>?4&S TlXI "/m"۫O4r\CK`C Ɂ ~220j& 2ZQ6!:a$Z"<}-=:eTp:S)f=wTBCE!;b#XXK>$Rq<8xҘ&}#1Z0nmŨ4EHF{oZvW yɡh`eD4VͦAzr\SU KFi;KBzlCu{?Y@㤚R:yڄ,'wl-nGrva<~' &ԀH.R:ұ P4~;d=#x)Xl0ɈrM$".Fǘ#sk|%|_qOMTj!>7rbOxEH^: )€8`AIz?,rmNp`}%^6eWh"yrX$GQwE3V٪upҼOjet.Qo|6߯6;_y5dl |ê5dknf+BiI4d$ɷDd8%mhssHqڪ}v>cFU9EEsƻ%hdjG4 dȰ, vﻴχTEd/~e>eȺ[8;Ƀ}sLX_CL_<.L8 RK Rtˎf 0GaK`e{ra@n{m̧|IZ^)vu%,\7. i83M9-X_ #|_7ç .&QCmǺQijJ5 5.g`OYRb3*UZNg%ɤx/hzi` ュ:.&š84ͯ$+zv飲*9 *A9{]l.IA["ls"W` ݲc꿟I6\q"-gp%?QiO>QkM n(9p젚iymz'FL?.nx'+I+ Q kl5 >z6EHY"APnSf&,e2~_/R \v._ԵՎah\(N302/ZtKa;RFF"g͐Ͻ聿3ayK ?FGNj {j( {0ZrPh@"1MgU'bX/f}Xp:0f9m~ _-(\ eLIA4NRBy {l #I"eWa<n_ZgOa3(J.Iʠ-\$*X`2ў2[jzזKOf\H6 k R?K*gE< g%]ko̜Q Yj ,] -6 GqNs[8jV>'_&Kmh2tSI8ŕN`x&v0cng홺#EmߝѕEyjM tDLD{9~2Nc)h!O`ə&dӴƊӿh4$>ns'k6CZ-2nOЃ$|Mt|vK ֱ@y8սfDbi LOAxv(r(GcF @ $dƬ)kiOrv  cip$` /5lⅷ5 &Iڳxp՘0tgwGUWAu5@ށ]K>Tgx nJN? #H5z(LEFips%-e~*ɈV/={o99%Ɗ&w 2nRY1 ͢2jK)Ti,oblH_ )H¦V'L'VX%Dg9'=VdImXi =؛&NcF{k/ƶ2 U8R@]낧nSđN\ VJ}%"~!ލzZU_eiې{)YǭVb3WiRQf 4&Š oCCM ZE4ZfZYq|z 3I yrz$<=>i\9݊!gw%rRfMC}N&aaOF-zm`a|\dtj aIЪ6uJWJ-- AcD M jIj37_h^_GWxȦPWz7ݒI[Km>>T ;j{ZSifa$f%th&eF0l񅾭ĝRM ['dq}{܏дBkg~jGQِ@e†0e.KtR&asm+%BUd]RJ亿H u2^gbZ{CL~'' yF  % R):9l֒ts]g pP(ɃeGA^ kkJ & sc7=Ci#nhQ k S:LˉO%vq3>UxLi蓖-! b$@L)6m3^~;sdU_8@ 50oV^5mьY_J.P&T3$hnEcъ!p-*ȓCz^!SO([n0_n8@ܠ\LW$RL?y%KB:טgN?!*צBK440쒚4S, :I~SqfbJ,ɀGk2KSGUgl=/YCGuV%ΙOfAGo qX 4ha^^>EX)H$/AS+L\Ue[ &Cϔ'AX#.|-VC֔S*o )-) :L̇ƾ)F ~>g6ؗÓT&_j8\fۗA,WO~XQm b1#7 $z㘷˪.QZаTHoEp!|⦙EG/֯a=8Uj zaaerG-Ӌ! J`/(lvJZ%Ԣ e-kZjH["Fk03&0nO1;9܄@S }*e7|9"b;"vW,L? k̰ט|M9d&@KFGQ`kiR pa 2?ɦg2*t%doKŐr"@JanNVs2:_K ao*^67}_cR:9>,T;3 a@jT篵GZhE@r1m3!ݢiมR%ː\nX5Ҷ='@p2k/Ќ8rgBWF8n15ٰ-N&KEV"9 ␒D 1C Ȟ.SV 4HI\XŒTæھ&Jױ4-s 1US6j{Y9%Zy1'3k-O:;K9]c\=80vk[/1 }E;=7u u0haSF֐D*ZevZԲ #|JWUѱ^`m/8=|S!=$UBp;e[C/[HRҚ/:m)L$^Qz1;τz~=bɶvMX efzIu~Mta"=Tc?|.ۯM#P;D䦏$1Ogf (Nʬٝt'% E-\  l%A6d2#'`y;uE]ܡݩ' ?[19<*w %Xh]InnW-|,4]pʏ_|/@T5\$idTyſ'+1y`7<(kՆL&o_sUA;ۛR)m@ڞ0ׄ݋z? b> <ʼn5wAGj#/32~wP^Բ* 8/fQ2 낥2@PUrp NΒ ~4D =P ,#8>:e" TUw_d'ƪD04 {A/#ZOAH 4Zs/F$, Q֞օ ԩa0zZ C̫yYQqJL-mΆMzM$u8\y#B$"xA'F~#5K%hfvbh#vѲd9+x3[]2V~)C5('zn᪉xʩj_elwX<$Bϯȍ\c3V1ި5&[A;S)8'?Yl*wOңw3!@3x' 'BU͒>/zh*p &(,h5 Jt*)A*jT_yk]瀴Pz4;T"f[$jDV0Tz6d^z{ 㽋[b?Lʯ r$)N RF)Z4[WR!"t[ɊfZV32a C/N6\;Q-@?Ԕn%,ߣM4(OepP;ϪSy֔롭NDf 1Mͽ@l)"bEdLAۗhpkx=@k7fOBiOW `۳*هb`PӶiH7gd#u<,k3£)q ۹ta Nr;[ g}jwz8jsuʫ~iuOıعV/mY3iE|=VZ8~KC*Ĥ1zok2  ߞJIOWͺ! M '@),bs|M6kN$LYFР  8KOB\X%b*KMd&iگ'`q}go)::<kL4SO 6= ꇑ 6YT̄UFK?Ծl_P=T>lS#柺^Mt16Ȼm`@;fUuL3(ﱺ̐+cg+c5y:c|LgȘqԻB2/{h+ܶ-q4Tם$1 dˊāg.BPrP 9Ы@rY6'q4 Ր/+=2RJt7[ Q?(hIA<}5_ CƘ*F o>Fyz bIK͢m:w} bn쫖Lr m?i4C!#cG8 Kz6 ~U%:9Idd!Ak|wDDRROjTJik`:Dl£JC_ Yb:?0k>퀝9;bua@hUPOe~_ː;#NS "9؏n\%m|\Ηq:9\<wT;x_s_!T}D}sA" c{LchSf3*~DžY&zPHt39vNKPD'η^#fG;^ ^׹mTS,Dx^Ρlcټ-i(kح'MN uc;1kjz!)1pT4|ʅĜ 3V;y87MP]<Ӂ;N83ܟ] >QvE8C!O*S{˲ |Unñ,YZzXgXH 8MuU/jLd%oe8ssX4UH *uRtW8vԹbK*䯩qݧusG+8 J7RQK?<ݗ- OA8~k#\WrFsC }~S5eS"N`;Fʽv]_NrMRd:#U n!~# @A=Z#un:/. ANjb{;YGC+}x36$Y('85/f஼B/#5]w%[LI ;6!«TN62-DU2e F*2ZpD52~zN5(.ɟ 7e -h "{MQ1,\1 Y|~<;U<>,MlϿZ"9߱ 71N(=y<{ n;eGuB 6C{y!U囘|UbJgM@ ݭ7+t 7$佃w<í}&Kހ=./mU w)@ҹR*5v^!+!Wa#tKh7ޙ$B:Ho&Ɨa b퉞g2CZZH~3`gF[/["ikF['1Cբz1;01i <028<-jw4+xe*KsN~g R1I7֜È4; $LCEx V}b`P^.:bu =RhgWb±oV.3:}=t4a VpH+ }i+M lJ oäI4CuooE!tyesŮjmzO oCFMtNYtY[v97×q?]O&.>^xی'rWULszV6^PZP13W9r+CWq;p~Gj+]$?}W O (os'E|9MH$vqxX~NĎ"p RT20 4xsm Idb9t)!˽a2ݯFN+{L97 =ֶ٩V|Y.F*GS \nH (Bݙ }z޳I%1ɋ =KPž*6?ul8K8Q +faNGeÎ YWv)%,!CR[hn<FZp yOп߸66Ft˪ڈw k?zgRRA)k663";SIR~4uK8Dܛs{h.l F)uwZ{+tS+O`ןjҤZ ե!_[\#vw/ҟ|\|l׹1>,Sӟl*jaѽ&z(o䬴|=⅀I6L6j7$|t{Sj%:PD$nPe_£[wXb #iswn:|= 5i#~HD^w+%vgB.~%Wl Wax|xGGΫK&%wjfe&Jh2*ԟw⪜:OIc(}qOq"T*T+@mh3Q {G,yV|xcXkZ{0"hv@$Z:@+CSςT Xv.ĕr*$$zr271[$&4[cwSSGA70cZj *uYgعedoD!po h{rEv77ī5ik'Ic.,ݴĨօSRx[@ U)llNEdT1qrnww?2M^Δu89tRKPuÎw0$hj nMuK)퓴#biHtKcn4h`6wҽ;<ғH?s"zRC7[ؿ4ĿRʛUKK2 -~-xtMyTV| ERfaiU|NpfOb,S,~Y>8:SRGzf "giVy-@o{N F]w&GG^a # !e?$uSL'A >2-3@NLRv1!cE"$K4IYݕ勞s;CY6b/#Wͧdb3{6*O,v/i!y(p"(TA$ӷ~ z&) =OūN21H[Zͷt"M(Vxqy4 x|;TYrϺ]DNAa9`3UNdYA#\enJȩ+սl:j<xKiEi!q _29,#9Gۈۓ.CgPՃb6UY#G]I{;Uv`HϟQ @wFm( pR>=U1:HC;pκ+i*+>-nE{:'>'I粊>ca -_1Sj{l~` o7Pz:G{{"p&З@sy\#vd=-n>EW9ynEÜ@9o;ҌT,wec&3I^8Јw{z|pԾq)DiΨȊK_bt8R…dZ>ca6Wfcsr SUy+ngZC~Uxr] eE"I^v^q KTȺ+, J +)S0 qp].++Бyv%~=)*^[fSGHɰ|\JyљVƭrΑtcb4`^lN5 7@XR}Ά&o/8E[ߡ,lGX4H_;S3Vy7Sm"d_iBh+Xei^ӹό=P[UEE^M14Vsݯrs}F) 4 '2tE!C6?6RXeﳊx#hEs!.]O܃slѕ񅧨J̓0{w{Mk EP[7oa))tu4lƈ˯VIe~#r:Z^bZSC[^g I/JgIdž~q}ۼv!<ňOq6]kfĬ{h“K/c/=cPYbZ*J!C Z{x0;P6˯9mb\7ùk렙}*1%ho sxx>Pb(EȡXH>P-[->&υov.[ bUe+7lw~p%Ӵ"pcL 8ͫ3" }3&ڈ>v3FpGg}hYH/E S5RyudFHJlKň˯ 7ZR 7u}"g(3<ɯ[9ҵ"yCKHXa`_vEӕ?Q6'+7:c.gᵉ( !@rX<ſ-K(v][jWbBsi=֔"$"[JO?@,rxoU鳿;gb.|[cd]斻:a6'DPR [jDlcC*G#2(='e礊T`u(}؝1j>u'0ݨZ/wpR5f"d托ePcVlk2]C};frl3 lV t"7.i@\9O?RHCQKBl dMV:&Ba$}=%%rNMhG)^8a}FN^EM.(D/q5F@2S/%Z_Gc*I77oB#{MgKs(We ԽjmyKO <*rdȟzU6[2w}[gL ڼ ",G[ĶK~Xp!"7#1,AB8h"NJ`oe bg҆f$(?&xYʼnV&DuE  Ȋ,MYZ&3lEPƘqpn.vUDefNn` L?GA"R7(CԭܙQaa}ՠM->+5&C-NṲ, cfdX΀!6M[/ZԶ텸fm2j`HiG󁿂 TRu9 { svx o$!x#{1Oew5ԲnNc~¶ٜKG܃e eDB*{Irʄx<ќ K<G5wVvk~+[ooձk'g%49i"*J5l:ME5yWMm|=;-vGW;%S"\zR+Z~{_ r֧쭣 m~Ish%Cvd"*j3(_I\0NŤ|Kcl;uӥz kO%uKnI)oy >u3d3ʎ#ŵȌ^oe}{[w@[B4HvjgJPKœEX|j}LsE]s`{T<B@d ?rcN\FBANU$[gOnQhX(#{9\ל?w5[^m$ZmP Gk:BexZFT̷IkU}C$5۴X䬿#Yl n0Go6>aj-]d3գN_l"zѥ:pjo]KQ IVTqs,ؠR 1cP|枆*zfߥ !ȏmJq;;S- !Wf6#lTfk_I׬n{ @4]ذd|Mfp oi'_# s_eEP߆2"i~7 E=;R7toOۏ4cģPn>D/2oMnC?җ%V4z;d_;^hFTR!9+-.ḻt !>q,窊Vm=L@8QgQl N'iאhȕ =b ꥱi߂u[;Y&;y6X*| `ﶖM}GGE9TVz%&UjTpGj;Wnu?dmK5AQԍ@gdE.-"}s2ɦY uq]bWa6|#),gj! MwN]μt@"QgI&\rM,:7PY)no[:XJ =^9enٳiW0ρ"*r{%7;?;D肅-yv QC\|BF2`Ӧ3lSh)B VW"̢ȷPԎh?om`p1) F1z kC,(u?UiqL9&+>PQY2cdIeI!QT>5>Z^K}VQ0|5x+yː֗1IOen1Yt%mN;%^}a% zFmPsWw/joCN; \d +tnP !0#O(Us;86Lxh 0+ERBd}ZDM,Xgh ] 39*с[X-| 4X#tʱ:W{|4{$,9Du ;_ a:F>o@`rIe B?c*xHg΍G \nc$=TFrRUxOr{2X~+MiUh}iQ 1q$8D #, "-X֐Piͯre*Q"#캖87?X:&_(0ګ'xHCMwd悫6ӡtO"gcEy̢TZ)(o.m4 U(@%u-L3蕔L)==&.i:@8nXJ<)B@Խ,f/g.BBe,Jf>FYNSla r~ *Q1'D_Z_:xHM;02=| t촞Π"RCQKqkd]$4fz"ɓ#Rl"93MH:?>Bo ,Y(YΖs$LnBn0mg.bYq<~!q=rUrk12\͞O<9-[v\VGm&~`ͤJ,?kR u"jasy&=uĆ=f*ȡ40ZG :tm?G,jwyvi!6v4R1͆qHѶ =քKۀ *V|'Q cϕd scsvS{fZ/1*Ǩ iaх'̗E@Lq 6ˍD[ģJgKvT@Rd!A-IKLP<Ѐv!unWV :( q0TgL8F @yptqPFU$Q|u;2x8/@|uM73r Y !6Dwc|9KLm] H&&)q[җEڑRhoyIՍ䛁Ԩߌ4KwﶌJXڈ+dv?p틁ury7<ȣX|*,_TPM:KA7UkxW%^Ű,-+AAeG{Gô9@dǑ~ق0?lR5DH5 EwҔGM(&#V0 ]V3HwuX 'IeټF)߾QYٸS~QH])yD~Y2JZNO NV1!n8qEBEA >'13uXND)3Cl͛nޚp09/6EUIZ+V-:%g-j'#`ScdrH2(ڪx~c%btFTRL1nj&?YJm2έn8pODYciYśJ 1 dZ7koS =Wn%8l2?릚{D `ьvP,> Spd-ľPxt2auد%8[.˰H+ 6{r(ˍ"[a٨ u%%И!zZs*?女^$ * s=c/k(:VӕȉBs}&2|r.-ѥH1&s7V%~v'x;~ z >nM_kH & h:A]]ڮoSF^ (*skTZgNx]^*yj:Ie-ҝ")>J0ti9b.q!t}сy%f.e omdHQi2?eЙ*Ayӄ_ڻr][Rrz/[qaCxc({x@EQЊJ*,41\{c=nqA1`?!K.wX_?p30([-Ku1ŲdRۛ4M^Rx%.YX ?_Y帤~Cs̿ U]ež[l5YtYEE{lu nO/moI9 5Ẓ-< )Cyz:Vzu(*.|Jeªb{!%7%K5 x4;1>N/ R h8T7ywy/Sw0tݿ=QsI!x7۴+Sb`VfCr1J:"rX4 ՜ӵCެ$U`wŨA^LlOO8ѯ;h6%9ۭ6QP !uM*I+6=:Q7FTb~O!D#F~37{0)c\/-鎔'MD"!ޞ (9/cʀH1'e ƩvN%۲"PlbJs=| ++ 5m9)A}y鱊Ġ(ӭxljnFgqQ9Ow*uqYꀋ Iփ)v̂[Tț[R#O` ssmkt7e}ksƱӬ98d+i˦MXMV#D߼=xu9dJ^^+* kC*eRZ07lG-^I+g;7&x*i 1)~]?Δy9kB@+H,1k>nU^뉘 A!92 5XV(͊T]rn W)!4o <%ET܆b/7俜v660y,]rHW~D-e2<o^#^F(IDq47`N:lPeΫBZ,՝vv#j|Gd_llGO BEcpJrsna* xupv?zXfläF  ̴ti \+kk9"6|U s~ _Sq4wNR1TX~{n ?bO92T+JKV36SmVLC95[I/5{H<эcZc5ڤY40_ Jr46GE֑>H@qQ-\ AEp,́Q#~x8-YE^,k 싵'?4C doq%)UwiGzB>BQVݙ^⅄˲q\rã[ҟ>rnv^i÷ פk.ccʽݾvI1yrtֿyGޞ'g[Qi~pii>k%XQW18 PΰnٍZch! "(4I4ׂ!7{{8odԾpڊ]KϑѤp`1iSUelG'|m!;bNѱs~{ lO\dW!.cӤqdu$u8qW9{53 kGa (#W H' v_T_+ˣL:Z-"7BѠ9Q$V= (ʟqYJ,.n|ؐ^+ܨw1b岟bau¾T"*S2.r%'1} E@)f^}{N3DSbvQ1r۬5dvG{(S=3'Stc=vj^a_ZS9t&-90٥bYK+RLv3@6έ"ȇ B'7^wKaTզF69cjn9և(aca/0ش8pu!JD@Ѷ~hõ T*V8ފזt[_;7/&:lY*^B-&_@ѭRu!yKRǯ7s:4m`FŹ>j@¢|+ ̩y7ˮ$m޻٪_I1ELG-]oLAZ_"K9jgiDž©"-d-=JKj+^`T4`3*1:SVr:#GXؾXeKʇ0.Ϋ:Y0즗܄{V><*@c: F_ǭ\'%kiK%ƲE⛓ oAT+!Lhhz1}JWx+Ax[[a29xJhZܺvϿlMDXQ7k,+<64nA\Ec^hV۞u(}UKYTF15,q Oއ@\D;zOM8K sI* ު)to=l~*0*v(oJ7c@}Jvw{fLOCҲ]i3-Uf/<>|m5?"#Oԫ`] paԎ Kg/B a5PcRCjFV8?#BgHͳL]- X}6>RN9 a}+el?N{ A@WTغ)wP@|YeDZCƭD%}|z&< jT U^!ط9# P/|L=NfqF[h<2 Η !yC4Y,$qL0>RӆQ˦*)U P`=*< 6WEP E]4.!TGy5g40Zi E:4x`u 0VjB:5&dr A쀎sM(x-yRrlǘMHOhCLE#6#'w2F ՉP*{ZٮkߓaJT1ez('J-?W('\Ey؏r.!\3Z4/;÷U`:K%h0Y]*ofu^2 \ABώqY M\⫪~?]`~GI7?BԨYrC'|c,rn+Z}4U/@R7[|hG Pbɇ[Sv,>wr1llg(T`z-%SgMfC$=t t_,o[>ӫ*;XD( @o,bǩ,jL6]rsZdz 5pwU$shq0g I*lJW4cYxwEjXH`Gmww#U#({Ѵ?k)O5E mCK--4m'2OƑi/ݒ.~ŕ>NI&Py 8ф\%EV0{:*osS~jj.nZAdACYLDsS$MH ;`業c~>7ҸO#*^t{kAgD! 9ZKS~KMŶASzcJWǠt=gS}&Raaa~JLCj:=BUAwzU/ )sMϧ+S?lYq* cdlr[dG VÎRك҃{YH:7&hkEB+! 8U*0 1{!pkGhPXݙc tLC rpxRYL{SRYͤlS[H(qQxJA-h7'{v?I `<0;Xr30X fo6 >ʾ>HלdžYK7%uH]6aޗQ᧬vTjzPkE"j. <@j6)LU(tpTԊ32AGhQѡ`XY$yͳ7 .mYLӳKŠwLXۼQ~n,j5/|D*Y n_a\([<0"y;,Amί{{/c3:0#|YF<;3F~jt6B?k&6??dL!򟧺?f+%"OjF8UsDRZ?OhOp7˕]\$+B:R}d>U& ?cd&}Ţ84DSׁyfNAQ".tgq۱έ1'}..H^Ӟ3_zS߾؞}/fc]P^`icܫ|دM3W/XKRI=TBZc.h`/WTx,qEŮɼc[CI_0{6!җ,;8G p/B*U1 xWAg:I2` {TӠ=) e@^,^EV,F]9=Ek8-/Q *c&bŀ,iRyaĶ3]Be$`_JzgbBIY1zob$"5&]#Nm$/+_x&K؟\RH;4|#-NU|"WMg2~;]-IO CV(R-\9jHgT ukEYY] Xϴ6?S[g7-".<-xYY=eHP?5Rc2E2u.'./r*_tBb?SEMWJM]֡u !FXAm Ucrԧ.!%24wDeϸb{Sw>o~cSs;ۍAc0m˳[kr"xzxx*IXDJtWxH2$Fr>CrR١}#I_"D?6,mgy(/(X=\#K))!,u+¿!ؽ!F?Q]CD6,9/ Pa1⧭I AsxwDk1SI8ðI8wӓ?g1&¸aW CiT~6덴#'Qpzѳ6n&ҳrF{;ÉLq=Khf<ԴHJ^b99Ԑp+5]tw\W ET<{pb~xyȖ7v0c͗av$Dʷ_1*j+hv&t#GH%Bk/k35Ɉ&7^ բ > < <9wc3ZWCjVDu>xasyJE.Rֲ:"l%jnB,{#tO%rX0OFѭ4efL='UaPN } k p'ǃ,Zs˄ZITEzOlyB2WRmDǛZf׊?H dxw ׮[^2#tJ(=*y[߬#,@$ :`zLB@{묎W4Jub|_pWZ'|=! ֈp҅N5- wrsAVt&+ɑfv {-W6a EeP$~cwVƫ|є:Ne&>eS 﫿ZAHE:c̞4\u/Z5;#C_8R! e" 8#psI2CJ{|HRp)\Jh;# 01,H5#/bsԁGoO(r#XEӎݕq}$ynJ!l6rZ}=ka| ڸSk@h) ;|:䭎L^`OUojʒLrj>>@z/ !dG-dWg<, ЙDpKVLNHr):8-6ۢ.0iwgW$ c!їz4e\!8t%mc ya|fC'*,|_ ODLhm3 ʁ <跮ga<>뫋}%W%"O.ď%a *iŘb)͎>{G)Ye U禽@*HXy˴<,ns_N@B?_3(e(yu~%d4CP,r֪*3 Ut71κ-(۩}>mS0y3|BH3<KOJyr>96 ;n @IV (|58K"3hb>]`n/?]FsMU&2aDC3".C1f`њ, mZF.eヘbyEa3~qhKDdbGNDIltyOmĎY_?~I  XzRiOqڪՅL"Ċ*o ӂVy*U^^0۽LA-CSо:yt+Íu ',k6Z֝+.Gwi=ӭR@WghK}Gҽy ~0U]=4 `ʙ( ` vzbE(MkX6E\8T&t ctϊm[f= pZ6$so3Y]>gAq̍". oFAӱx{?:.^p7f@h\+3SR 懃7a~=nn7vo6ѓKi -ZeM$HUbhksMz@Qv)ŤhlHv`_αePeQIq&aчMi> oSv|UAΝΪ⧏ k-{^!J f&MDY0mwLw1 ;QCݗ>);;n~|ULJSS~:x_Fal>z51 AҭP"6b:7S81ٸ~??@'Iwq-,|Ύ)O؈"|NP}YmGm9K:zfWW' 9%)jBձ0H95В.ǛMt~Ǡ#|wDfu@j3-=!M7grB+| DjU:n=lC$ؚ(va zQM4_OjjjQ`S\zru}!XѢkd74r})HRhY |K$K0[h>ntbjKo]7݋(}Y;($vywU![وKQ/(TzIm^k=v>,.!l ˜Mx݊`3rAoȽW\9_̕=+9qwJgP(vU!`,|n"~8&X y8ݑh'} 99-yo]~&DLw~BΩ!0X U_1"/AP&Ÿ#T|>GbZ'\D9܁e׊fA5(%>/!CѝSx$hOԚ"WV;CDkgoMDxɈl*^ k(Y52  յ,峕~x mUH,͗/bFTސ۫IQ;]۸fяBx63Y(˲?o?E@حꤱw> >ŗ68gE!F ?1YUXLǀ @ m %el@-';a!9I}=gݓ!mH-'S)|V^::@(&l:!8J|O x+a. !xn{G0hnsy6 .ih Zk_֬|5R ۵})/b|?9o%3-f (Vs1sG c90)~<+< -~f&}l5u$dCئ=u@A]!Ip{ RUJ<Ι!FM[6p#GEyV(('ppgSfDw^.L}K4|Z&Í(mиvdLtd'Q[嵋prX"ZlLd*wpWh@xyФyVb[AI(%TgcMIBDŽqDU5]6I|s;I >ݠ\kdoK鉤Rj?z{$/!pKVqҍM_Jo}W3?sޖ\UaB1Xd5u0k赳]GV\ӿ)ZJ_th;&$ŵJi?ulOp"{."BbßUl4iA|}E`ޡV)VSAp|a -ϻ`@WeP`9e?əw{97"V3eE >(ݭ!>IS)*G3)FI4̇3@ 7w/>]--ʽ.Z;J|ƚN.+o==4(c]}tj3ȼ-Qh,_l#)?hh6{Y&w^6M߀˰8xGƛi{Vp:k;9eȐ$xi'~8*Irna½rq4Q5Tsqor}|G"qpdlk L;& fuATfFr\E7T"`rɠUN&uJA>P ({: JRA x-ĭ P7#)Lwexn@-FGK{۸:>(diXjZ%1q0³@ %_tx]*O2/Inl fKuP9˯?Q1XL!O.Xpl$l3'N) ݸykTgxC3L_o֡~)Ֆ]; }]Pu XlG^J#p*'P^JWaWe~>G1y4Dݐ|0jفmv 2Ƿ}Atu'NV=v_ R< ӂ_^'R u%M"b5hAZH…4PFޟOrZҐ#IX馯yy<6!O@<@8 s{Ȕ(G{yo eg?R%* Qw~{,/^\ÁkBB4 IuzpBɦ G) jo.O 7.Xp,9BN@/mdw:" Ȁ2./FF8VW$q><%- aoPE򉔬@eUG_Jn_$'.9fg* r_7e%Uh4a:U+σ}@)BIKA ɂRvyCfTi`<;SD!puԁ8GIs9Z黳ޛAizvoEX2(,RQPݰZA wA=kT(xnM Y]Id 7I/$++RBaMLS?sSF(OݓdLjf>$$\cP;+@!߉DRhi a`Ytx2s]zo^4+9Ѯ3T}IcY~..w TgLCti(.*Mŝ3q IXmRZpN2#MPkx 偸C~qLN4M8^86 ,rN'Z≌ķk`Z$=K6Z-5ـ_ %i"">djw6y2`r#ɷ`G7aCɵsJCÜK\N[ƖR}e'눭N%Yv'{')>@4BNgb20+_V{`|UtOS?'TAUQn6gju3պk X|%4),5VO$LB[<%B_J[w׃n|h%p_H'Kr Pr`tDVC[%z~W}ں:_5|-'"هR(SҊ4 ϟЋ\l\V;)zI5s`^Qv޼Lk.Ԛ2ek\@kB%\$Ds4n@8tec$dkZ);C൫ VTȁ2ztil%]o]^#ޜh;/zE1Lp$+nz% X