frr-devel-8.4-150500.4.20.1<>,8f*p9|dRNcHf?=mVgd$>-_s@sSe@eLY{v[#&]~iY`G1w*]r5}F>ߦ љ+T7f -k!z);T?Dd   J5 Kk  D  +r ,/1447T7p 7 8i (888&99D&:;&FpLGp`HrIuXuYu\u]x,^~Qb~cde flu$v|z@Cfrr-devel8.4150500.4.20.1Header and object files for frr developmentThe frr-devel package contains the header and object files necessary for developing OSPF-API and frr applications.f*h04-ch2bFSSUSE 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.orglinuxx86_64J#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큤f*cc9dcc9dcc9dcc9dcc9df*cc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9df*cc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9df*cc9df*cc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9df*cc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9df*cc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9dcc9df*f*f*f*f*f*f*f*c848bb4c5b0e9a0b5c58567c6a854b8c6ff228abfbc15c0078fbcdc0e7bb62509f0a914b91ff407414dd17949089466d8fbae3d3c9a22857bcfe13e144d8c36ddad740e3a8173858fab26a8fd675ff714769b01c12996145e3a80d2aaaa7b7886cbdc34a530795eee4953e9bfb8abdb4f07b152ab99979f24534ff46edcf58927d8c50a0ab8780ff9ab05db804db17a79b184a0f8bf15b4d911d11f3fc7fa361ae776f96bf453b6580120c8aa4a6b5f012e22e2dda5b848356eecfc4dfa40b4d854959b803f10e1983580565e542bbadb5117eb14e918948d44a40c9c698e186a459373df22806f56d43236eaf3ed7f12d9b17b899f801482a8df8062f80317d44e03cb13875f38ed2475cf5776f7dc700e7259b3ba9dc07ddc0a36c1c594e55915503329a36731f0221b01b5253c9f699661c2f656d38298f2dc9aa87a08c5822fd713c8580ae843938c5d34e2e8ebad208301e96d1a5cadffad309985b56cbeb34f62643a9d95ea43d6008b680defd912cb361f6f97c1db3d8f9245e4e71bade9f7d7fa468f6d97414d53d87e6cfb77540dc5d03f4a3a42f173d5493ab1f8a793e04f42d3655aca2f7a2c2a7eb93dc7e1a6a638bd252c99adc6b6b9fb1431134b3307eba542164932283ef8d9f703e7e4a968acaace1a0955d75dfa11680947feec3308492fa73d3fcdf9b0865c0774572fdb287c4427595576afa9943b548ef38f1bd15dfb2861fea92b15216136a52d2faaf17d46cbc0fede33e172d9006c8bc7b7aa372b78dc6ca2f3ef36a97e4760164c50161f7ca8e661a6ba4f5dffe843edb796d5604661ff60a9f6220e5ccd5815d66d83db2eddc9ecf336acd5c46c97a2bf260d434f66f976e1e63701d3a70d44d072726c7e0afb629ab2214b25746c09d83e003e34b130a64e67c6c574c25b482de2d3871292a859904cda0112e0f140e94ac452a91f1dc2646bfa2f68e8ec709b57258586df31a25e29fc2cc5f1f5b13376a95d6990c5a4434748b21d4670d19e6172e3bd7e39db76be4ccf25b70dc6d215d8be9159cd0b5715ca6dbda914594e6a977339c887f776b81a18970f8ef8a5c8d69d7bb8a72bdf4965fdd3eced9aef14d30a3d5c4375bb5fa6441f45826dac68bc7ae6e1f0189d3381f2b511a4c9098e1c2c3b09e78ba5577da65214dd4e419592179964afe78f4b5f3b515b555e7c9ad0f7292551ac3b4fdd7dc51e80cded0bb614045e89b6b7596f68dc7eb7757cd71300a97ce618a92ff04ae1188335df2036b65910c540b26185cb474f8f968dd52668120e979646514f15ccf6cfe0c7ef69af23292e2c95e24add2bda99f7522dfa0716cb5fb704d0ae63714db1ff787e1e6b448fdd0ed463496842c0a5b19181308cdda3bbcb78a79f6737e3da33dfaacde641224913f4adc7830ae50943d88b1304008b1808d920e9e921cb1b3482512704b64a152b8f87b4a1eea26c35ae1051c337f254a0d26db7e7a0d2e934cfc8d027e688d297c5205133e73c414c41a222809c4ecaa3cdcb21c632e03f8a75eea5319e6fc37bd4da9d44af3f582cfa11bcf8da03268acaf131de23496029e33d28ed2de8d942a47ba895f34c5aebd7838889d1544fb834ffadc5e820de3e011a1dde5709d356b3e4b268786f76ef31be1d522fd662c57d8a1577a04208b29931ff32e209aed6825b08ed615eaf14d7d30ef6064548e3e7e2d560569176c39880e4e12d23864d3d224bc4c21ae0cbc0062bdaa9ac230b95e7716e1647347324517940a6a98623e2046b6b29eff5f713ceb3696bd2062946f1569524aeb94e79185394d0d12f0e2b79bc69dc6e6419fc4bd0ef0c343513e61af323b564903d053f0f4e73fe174084ebd506002e3552281fdcd0a418b30c94e3db37f1af63dc1efe340b7bebfa3ac656fb64a694b127d4de98c72bc917dd7848267e98d73beccb3a25afbf321e198dc060ee0390cd87095d3e7e76bddd0794a72e23237ba7c148003b71d9ae4fc24fa53b364e3e6070c88a81cfcde3aa792597534b2852c28220a29810ad2131d0fa560349e2c7e2a4faf1f6a0b60cf2a6df84dea0125e523bc7cb5531ccedd54072c5e00c70e1f75b0cc6625879b44073d730d69882357f8cebff26a5e2eee0faa8dc19fc5199db19fff5988fca2e5ebdb05c0e2d707fedac81f489da251b6e76e6082249d4f873fcdd205f7873ce2297d4338fee6adec65581fa96bb5ab56736a97c510b5be6432abcbeee77174467565ad2cf0111de28934c5140e0a0ce88c8198a727b23c42d4e623903352d48292c56915d489aab60b1297f775d5164e08fa867d86fafc395d8ecdf8d4da6ae2d79c032b1779e7caff905ccab8cc47afb63f25a53a84e28ed1efd64e61994a5673b5d7222e1583c919b82c1d8602074b1610b17c64dcb1e42297291c78302841d89e68952cf2245c2ba0bb0249dd41d091a7175df3e2b14cee529a1c309593d28d258b68f3682071ad2f26016044a3b08dfd8b01d777ca5f738a1474362baa4c0cea0f5bbedb627f1bd1704a818ef5e78105f6b392efa2da33b617c38053e123009e0c58bf238b5c17c692ad3a20bb17a7bc3c0a68357ca1068c7456b7045994f9c02d68824357d5d676ae410dea58545d642a86be93271112bf93ea178648557be7909e12cc8eb28c04fd2824d7dc0c65e980a71d37d97355500ae1adab247599ccb77b2bca70d4fc0c380cc4fbb3293d2d08284b65a8ca981d8658949028b155e7d56da3ecc1da63eceb5a65a3ac287d9aee61f612c098d498ab1f691a73d3778f6f624fd9a45701424533712d06a2215dffb086690238df91f9a968f4ac100c264d8752fe8c1d6fa0d3fa3f983d4b79d7723e7a45382f61e432b323c2cfda66206f880b358fcb628c83317f9392e86313d7e9babe1dacd568a1065157c2cc704c96f17ed7267eb1e5bfa7d5ac74bafddaf59f165de12a9bf057e0e1f0d4a9740bcd40f2e80b923c982f320422c3c7656826d509761f3552c9a2f8bff00b07399239d7665436bbc9c134c9bb82702ba65bac94612a95b176c9714424bcb209df8e1bfbaf640d08b2cebb1f6dc48caeae0d83f7f1bb3d10a07f81bbb00062da077f5e1e4e372dfb5bf7a342f81531f7397615f7c402a134ed23f01afaccfc6b0b597ccc273d736a4a7aac62f554ab6d5cbd93557cdb87edb20ee092089707e588412c13963346fb5b4d394eb11ca1f3afe14263ae84854e305501d94302d7776b3889e5d29ca50d0c8a75c900885619fe7c75d77b7cf61a33946f3556d6055e2ff0b49f7fdb4964160510cd207e717915e531605d5fd8efcce06eda9ab658ae1daa915e55290983cbeec1eff6b817385fb3aa14a1ee01cee25dfe0a4b75a73977b10607bbaa7d2ec7ce6a6dc1382188663aa0a26e924db53ee41df1f79cb1a8749239c81bf14318bd7b4645c791007bfc799a7d55543ebf41a6c0fad6293c1db7833680e8474e94edb86bd299bfdc30cc384d1e9a14c5eb0b17ebf784190f187c89ae444bb25d5e7c3319d4bb471ba56757b61a1ec9b191a321420de167ebb8661427ef4d1228b132c9c91c0cd037aac140fe2a73cae346866f30e2af3fde3a782ef3b7a0f4878479722f06e44f07985c5850882a1f37520aa143affad3930a4d92884abca8201d191c7fef999e6f8948d45bc9452b0135dfa8d2c70bda1ed53ef003e9ce2f242a5e46a90a7ba15d0b3ed042c8e0394539f5ef24012f48c2e4f586ab62f270f14cd1290d5368662b690d6821ee0677a830948c4d467a760da469358e63e574389556699c28a616f1e13a482fd55e41395f9c9068e752b57f41d12327f6a53dee2c93a6a6abcc3a83b7de56f8fccefa8f2ea70a19d426854ebf539ae0c7dabd3c101021dd90602ac7130789b4e5d56a63bf68f11c54d6543c99f94f783de2f84fb9dcacc3f10c0b047fae94171f117bf44470749b3308c930216cef78c197b352fda548ef8f72ecbff31f7bec9a825e5dff9f9d1d98263a638d97a055cc16a88f3a83fa984356dc0c5500e6e1b9e1b705455cbd241b596689dc1f998c6513b1994b26fe6db5034b9cf750f06094b0797716406bf02b898e807e3815cfc1e3e8e7a885284081a0f3b8ca61f8bd4cb8b4657d5233e2fa6a75aa581206a0ad288df15b61fa7852a8433240f28750c22d187067eb36c7c83de65bef2c49073952e13cfcba78e89662c17966a337732b46e5876f1ae17155bd8fcc29ec184b0db6d186ce05a0f3f1cbdc49f628e79354b08ad98df6bdb6cb2b6d6feb517180f12a7034d4605b4266a9b7c6506eb6b934ee9ce94930de822505825b950612e1bdc90c9897553dff667c8851ba4b3442521f42883746c140a3d7d5903a0b27d3d8fc74a1de2e63638072466d896a0fac908c9254680640cb5c1ef612810ba60c6b685c2668a27bd9cd3d1146dd978dfa2e39cca09f8448645884a335f0b533a2155807d640274fd781a69b37b311783c6927bfeead5856804c3a96f0e6cb881f119e75118d2b4e1ceb9ca26c64ea508395f0b18d0e8c5e6e7f63c7522649da629f3049d8960c45e01c2d7125203a97ec993f932b67b971b0d4f188604364e4f3c97b65f3c48c27587fd6dc18c4e2f266a296fe502735e931b5993226e1cd0fafdc8c7343312e5c71fd2de032f9931ba6f22230362d9bb0638abc8dc5a7bf09086e0fa14ab4de07fc8ad5f9f0f875f817f0738bd966eb0df8d563337b4156f81ccdecfe20934e2e510ca443a8ee22cab15cfab986cee3a6c0e57698a1ed1b7840e744c93cd56af0c78a83328092803d2ce2f151a7e9766df1588f5b5b71ece5a2c306ae1914e013b1af70fb515805bdd40967d2dfe5bbefebb8d53c65e60d16940df1aa7c0b08064e99bd85d8203e57e28b5aa4592c26472d84f4ecedb4c51df248a2653ad6c969c84dc88d92e71c38757a8757853438e4cf378e6a926077f21ce13038beb882aa0653e686d5d11ddafc1a59981dc49ee52fce188e1e1d6d3e85ade5274c6975675f6946fb95038028320c0e9e76c8cf65d3ba88ac37e0933435e24bc2ce8c01cc1ba9aff55a6d455f3edafd887858612aae5349c3adf5e07630d2009cf92ebebfbb611c24d4c1ae625ea94de43b81edf9f55b58782491e7b225d105e70c5745a0cef526f11b6b822102bcaa2070648a070c5845b8e6368d3622d1c854f27d9289fa273e84e1f1f27b5443ed84df59dbdfd5a2dada8d3ef31e26c4aeed2f65688a45a01ce9d35371e14318579afdbf214d825e2777f23c57ac4bc88ba88af1c2c60a5f0c9b403bdf3ca492794550dc20e7c6cb18ed72fb3637230a3199863f58c49f7618eff5395eab6699b5c6cdd7b43caf8d86c15c721e797dcad52159bb78e8948e9a47f36d55d662ad527ed429c1a2f971c6350a6696f07caf589124195d548b21b45af360f9e6291c5e8d3dffd567ca0ac1dda91a6b20c2ac8c49c5a54ccc7599c44efbdd0510308f8a70fdf8f04df8506755630c86b2b7216946b0f80ea5dea5e10ab95fd64c2307c4e57b0c14daef75e259ee842b135fb4f143f0775461c3dd8f700e2b816b12bd7dd1e83db00b1d74e8f0dcaf70ad1f566cb526f20d4a8b804f6da3366d2813e638d41bd48a8a3260d956b398cc8a2fb2c5bf23dacea5c300b6c13f108ad461aaac0473e4918e014a4a7e2d0605ce39360fcab3a8805177ccf1ab9a7a127cde118d77e720eb2c1d06a04d131fcafee260a9584147b944377ad3379a703e89a6086acecd650404502f6c4319a31e1dcc8b26eefae3251c81beec3c5947fb2df8bc48b225ac66686508112aedba816abde8d189a3381d7a141660d1a5837e5f48dbbefe1dcccbbc73005b91daa030b11d8e4c367f724a5ea0d72644cc994a6e7a40ee5e7254e6c4ff55fad7ad5023a396c47ba5228bfed601462cc2e7b69f3e09699d6eb384ea4ea3452092a41418bab15794fdba383a33c5ea1d828abb2e3ea5569f200e6fd186d9dbab58a9076e65702ca3172088e9776d4a87bbbc83d1f28373c62e8a8eb1eae1de0a13f916dd4fc0456cab5b59c03e0f21b9afa87a82e69b890518d3c546b139063565e97110baf3ed8c0f415e7f51b387f21a06b6b8e11bdd6623647ff01ccef5ec91c6824b4329e5f94722dd22ac9a5bd463d14a67ba99095e2df758c5fdfb72894986ec949188a61e1588libfrr.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.20.1.src.rpmfrr-develfrr-devel(x86-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@em@e?eRd/@dbd*cn9@cb3"b@aaaim@aa@aC1``@_I@___w@^z^Ӝ@^^k@^G@^"@^!^^^ @]@]@]]@\U@mt@suse.comcfamullaconrad@suse.commt@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 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]- 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.2h04-ch2b 1714034960  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~8.4-150500.4.20.18.4-150500.4.20.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:33572/SUSE_SLE-15-SP5_Update/f6cb908db7a4fa3103abed565eaddfbc-frr.SUSE_SLE-15-SP5_Updatedrpmxz5x86_64-suse-linuxdirectoryC source, ASCII textC source, UTF-8 Unicode textC source, ASCII text, with very long lines@h>+KRXȎat@15xPPn.t=@EAr>4 Q¼DW.bap36EvfJGgcFJ H^ ՖLEfqӕ=5Î[:ʹ$_8Lt>8޻[^m"cQ)IP(V/xgdhm`JB]Mĺl̮Le) hr&k},%+*ouM3!I5cPGR䈮6CIn_^t[ԋ3ߦiDDigNF}Zo=Ґ0牛р"8WUu5(23w LJ~6; n!"[q]}5Ƣg]j]m9U &j]NHBSO7fF+lV1;$N م#bUr2-9QG-kKڇ5]%-wZKFt?J9Nԗ;>?@ʦJϜnV ww| ,OȟAЊ2>V'[)@6(b@&/eF,f$|A5e O pC!? w3]`϶XC_7~}Eg.n߬jޖ'CipF@#?= =޶6Mz6@&Vic7p?sJsoD m f=dhܩg.{{~0]_>#;xA;IWC^~\ګh2鷠O_\/Qf&cU++;'@&wLrઌf6mv%Q9ͱ:骒O_pnx2HV XI~N(?X9"'Wi,7U -?$.L\ :p!,%VcpcEC[I]KW(i*v6)6U.zB4TZ\ 3G̣v-rѢ?y DlUhZȓDƕ eHל_R&;mxCǓ"k]/}!,‹dn>Ԥ~iQ@ "%]mh#j._XcrC+7.>H07V,^[q u6;#AG3/_" ڔS(äw9'FRc+4iAV1- ]j1xPS8 ê2LU-ɼ3 29,-Miqu|s+uLS삦DkJ4|I7je‹E+ VrƇ+XM(p[k2s $IDNAyBxm)a(cyAe$W9}_Ɨ_GEc Vxly<=vu\qO?}v U?J.3s8BhTڤ#LrDu)"y`#8 uç!s03")˩)̹ύ-Q" $+ǯXIZ Z^5|գ1G3'9 ?R yaN7zZK1!u[7wyȰNI+H"Odۚױ  " Νkd-|үz5K-^,^ Ef!g=5@OaSE8 `W޶B,Jڶl<wz>@TphDpce~+^1x,*Fb-s = ruXb[H^)?9M4z)MR*Af?+{͎s`k,ӽcV`1!߿9߾0W1{8 N&.DYWP+t ՙØxJ /xr܌צ 5cJ~JlU`B/g~Zl#=YO2[|uoĎ'!ڌ>\e'z jWYUaA.^t/B|p5*3(кYꭲbuv^B4D8^4Ѐ;ְ^-{u B#|kDZ߇ R#oUaJ\g[stmhSE!{t9:uXa7i<3*N}^QV0]&duBYP5Dgm>6$ '.e,ho`sTkF^V]ޝ (r@CKFa!G0xpDtVb*}A,IhizK5] RЌc:mJ(2+Qȓ:ֶE\Y}'F;ATݠGG9wT.mb$XwOԙ&gp@*NipaɛOy< glR6kvOוd5|[(, &]_0ƃ1Nc?\سi6"#OvCX񌔨2o##TuqpB̎ . [cehӃ+TIY(0F#&BI3bb줤YZ"Va!Lx9Jc!Ǹ}͸.@*[ 'oۿJ+SFFdkV7Efr9H6E$y{O>WnS opPxmd,Î Վr+62O8K@-b}qS02וMX$ rc- Lܖ$"amG}739SX$մ ;cH@a)LDuRl^<}J"]ד5:#C!TkUfq2.:w ܃۵$kSW`A<v&cΗ)"/4Q§U\/L YhџA{4@{{ Idomq?Rd,6dq3#~nӹN nhB. ÄLh7_8 u4"T*XzdmvPT.;hep@PcL5sT%\vkN5R[uH2N!{dUPx*Vg9VԽ0;2ZZ~ JQtC~ Bfby]߿<^o.|^ Q[F1'n2G=ϱTj_zAEN>{"r?c="bUQf]Ͻ'&ie)h=V^ʈn }@,U?(7ZR3**j]6wmaohOY=x>wp " wob}.&w'~M{_bg F{}CxW;Pl@6cDm`X8=N xxYVhs.6PBi>_`zQ L9{Ǫb5,ƴ - .%i@L 8l)SC'ErHЕzqh,<Ҷ8Js9v]To~Fv&OTZ_,*RZ|{g .`%Hn2֨q~< ERƱ +M칀{6}ESDA(-+je!i0ʂ] |aeĚTG=7نԗ&9'z/'-"ܑܛ nwZC%Ѻ?tƝʝkPtP^A \h@G ?Zji GMVلw~tQq2޿zEiٚpCXx]݂B! dZ3$hcJ80HOYLksXΕؓn v3-ubA}^1k"hyKQmMg̈́ʃN3^wЩ>{ Ji5/Jޡ(̱p6z`dvh8 6wERc As..tѴ8a؎8@]+ePگ%Uk`3|Ðޱ\Xf2<81[K/e}Y] + QV?߄t4ۗdwE@R*)Q>\Gd /v"~Cj -G%{0S=Bߝʚd!օa4!NMg2&WJyBP[Rճs ݁jN#y_ƣEAP1䑄^!%2c=6ݛ9&ñ+DV! m]7˗qTԊ^Y}skŘO2XHX=\5YI>n:2Ԁ⚆ s&V)hH sBeB{5/X+$HpϯKRz!aXKљ6HV ^?շ{( N&&̾PyF`7ߖ=l+^U}`Mg/z ysm~l@H*aj](ӏz*tdQb+U2c1}Z 2Z.|@(5.czP_)P:xlLP<6˛`![RI3{*ɼ]tOF )wWT鴬ffJܨU"$P6ZHP ॗB7'- {E@F0 z?8 .ݍh(N]̟4:VDg.BV@ "E%3۲8x> lBU@Hlގ IMl>I*Gʲ! H6G(̬mpC0U{,Mj.fQX?BCn7Nk[`"ỗ[ \{Ү2ѡ[Hq$;l+)ΐAtZ;LGi+- +‡bԹy}GD0VpVdL8 kM=c^eZZ.ѿ @"\yj F(NdEqf LL wMz-۪XR~AF_ws;=CBͨfʧ>A[t'Kd!5U#+\1ԤnCnyh/'ܰ?/S;TbBh 5 X|Hiu R;Q=Fi ήuE3)ެ8-r\XZ2'LkH3[0S$se 3ܐNMcoX}CW=32-~ޓC4!w AS6$L*> i!rFW2hY *%"B?@Ih9֞/f F\8%)Fd@Rm;;:wΉ ( jO,&OWDV K;%}Č]yn1C>{ CqBBz$Dz7YBj3t=A4s^&܇P}N{ ejb۝PWb~4C'df'pMG:<7vqM^\\D;FJⱖ\aqOsN)>S:z*i|PNBF_rwgƈ967Ul?QʮEb7f*uϣ\ t]P?%?@LE+[M2!@:ePyXj{اqZ=OFy%o\7C3&Z 8W:^n3sb pcCCI5 Rx(NQxcN^WIGi:7Y7YBI{I wct i9gqyT:ㄔfdMӿ.{[9˶?bḺ5[X h#\Ǜrma-pݸk9D9dwڦqˆv*eÉ"5ȉi@/h uĨ{8Ґ9.\{^N aj1FSF[n/*˩Y^+`pr3Z"7*=>3d_N+P5mm"Ag'Gj2;r鄝[ñQ 2MB/mKrKblxت<f;0'_lO艤.Z2]C)u}完lTH1He68H~+Ll&&L*$ۇ=_>&"I7h:9z职צq,gRfa֦qtRϊzcyLgѶo좆ˍ WW> mx+EfHB FL &xbjK/6E1HF6+qg[-ィg\E|S逗<~dh:sľv)A{pH=)利fza_oa:-}V=ѧGΖз}{kh"_.wO.TTZ~QN%K%}E}tZj6 z=E9hHɊ;Gg$#pNvL밒aiEF-@YV=i x WF$s!?n]9il;6z(mEoL7 S[Cfl[2Rj PVV|H'RGqU楛(:XuTL?*|xeפ>.>IcFةC,'3U~gF4Z@f>Hl?.?r#R M? B@DgQf @n]}{Évh\YZy ]x^L%KhD6Lȿ~4׬Sr +%T6TRݹ,m/oA<:U'ۿz!l PEk(AOTBYeݐ)Hf/uVV>7sۂ-Q#8޳*5|`ԕLWHAFo䫫N/ 펐4=sܾț&v>$D!1LKM( dWQUoL‘Cwܺ_X5M7i+_(v_Τ hPHG+Jvis2 bhcY(Pm }7\2tb8}K}Cf2%B*[ Z1}OǨ5F#cucy풢3e,o2QNn}Z@.S͓68W c+R6"46}4K!E509n,[{;h2zTG˹7AgW=Qqx]v(b5H*)O݈ۊ\+C))^d\!#_Q4qKfIQß cVgy%NF}{ڠXtL#i :.l&{MIᕲ&;pss%\5(pr{&fbPM QZ &*Xnu4.p-bUbm k֬l[`_x ?874^!2*(;Ykig\'0x%YzQd9=hئw󁒌= ۷Ф C}=*<{epY.m؎Z;gÖ fئ@`KxO:/p%<Ɍvp+b,1A4k?ccläҗ5XÝdYyHiKޤ8"(YQLhl9|-㖤aa˃_$ԫq6uWcwʯz9-"ʂPp4 S[f7<rJґ?82*N0(vS@n4 ggpHg1GpDKSnQqN;ۂjT" $QsjõW}klx$)g;綜|#3B [$3֧d*.T#Ckŭ'6KחrJU~55ŵ@&,Ѕ>lcQ'cI/>f|"|۳drL5swcA#+b@sL_dB92yyѤOշ됀pF+tfSݐ:OBM {xh9[ MC^r xIhΏ0)"&5P/:7y8{ Jnv'yx}țj6ءI\d/4 1dn[D4aFI1kk*,a[/p6ye%v =TӓqI[ b+1^^dơhk&z%“*iYoS Ӭysc_6mOUIpʝHDl# skxPEC8ߑR@VTRѲxsq\4*m3-cHG|/VQxM8a@q'vu3]c&6 ~TiSR}\zq)j?@9=w M͟.pGD?FFfgئ'R HxׂeŁbb'nA9$X=6?%=0J2wJ^'^˞Q=ضj:+Va` >Y9H, 0^#ȼk& )!V3^ [o)4~=6yV?U~%!9d~y~u?un#-agh9jW~W/ø؞M{0szgauoD"oI01W3i V"GM@XP`TN`UR`[ $͠[%S$ -~A1Tv%6G2bc<v\&fT/%OHAJ-r KhD0)bzt1|/Tqu˂,P pn~4@t0XwvVn0F9H+(?Op{Ђ !T ,H@ ך~,Z/Ƶ@ DK{w`$PAb| hzW3_RWo%(!Ol2U6Ǘ8`r~>GtZ}Lmɽ{xtIz TE"+mw "/ȿNۏgb#~mzN(F'Y<^*Fp Fnݜ!-|^ _t%Mdp.S|fZgc'\D}:bݡV W}xKx) aK0iLv0X!_tn>V)u@] #]n<͕M%e+i0>J.4t+sBZ'xdBR}!vt3P#KrtH&:b``e "Je|ϩDVg}Ȑ B dlʛq$ I`.$Mxc,LĴ?5Tˡ 5&ț[/IȆN,@rbե O;+unUdIH /Fo.%2\wӚ*7.25r7ޡ٪+X uRy]M[իpa@J51~h ڀ?2rxů?Jƺa>X[o>qnTnID`Dan"(Uhb 37Ӭd*pi: Qb00#OMhH]iDH O7h}BVhDwojnΏTJz?D9sfN"H Q~tCJ$U.ʑ55P >@ϛx Lueh>|_r ,+Νx: f|b"MxH[IAaGygGZ4L28AqZ™WNJW҂R$8|1+g0ހ%Oe۴? ^9mM% 3Иgtts4]Qաs#.\N@hnZר6F:JU^ u@i+!vxLvl6hFn'?.~`C!Ɔo1ɩ3Ȼ2e/I +10y"p\QbB죦Y}!P-=9d z@#0XpԾvS$˥|L{ _ ڷݍ[롏%,** ؂b.%4§,{g)EmN|W/yJ [$=瓁V];b͚B33CrxU`3ϴc<ƇbLϓ7+PR]Ư >L ,rEUy }-W* z?gD[휓*Y46H> I/e0ؑFVG@VkR:eKGݬ !vV`_e--+} %Ng:t=~m谅 12a,#&e!]fQ1$Pϣ^7R.B5 7WP9Y*2+0+NxKKU~q)n4V);jRSfdRw=?7(?LXOK8Rkjބ}gD\g8raqi(1cn}*Nm feGو0mF|pYՔ {*&a_ 0>gh'0Ȝճ.c{ Ŭut6e> \0.ֱDfHVͼz*VHr3C- U tkJc@C ~bԠ^Q{rF#Yq+tp<=>%qKF5" ZViža0F@axǟFppҙ`u<2Q:XׅCk_QIJvTG(z][PB D-Q^^G~S>k*v ;va1n OϙA h#aZ-@,M8q`R@HDE'dZĮMUpBbe{ B,c Ny4h EEF!H19^RMF[a_V槏CŽYHaf_,jw`o.˽($-q'zyl,a,yѝ"E+,| EZ}$ ?0G|Wȭj59G_l}>KS΍7ae11\tnkQOj,HX-{SHuV&ؓM]mUHe%Qo+ DX}-t1KνٿMQ7VNnlDL[^["L7v5Y9 %xpD# S䮮#*Qky'i'I#?i fk P*(JraàMPԎ="LWV_#bM , )ս~0&aLܦ>bQB4=ItɠbR1rd"/lFįȿ}9c[T*T54VИ-YOcc{/L .J3p'΄Q^>=kA?k4@0*L9PI?oЀ԰gB1# 2lgt.uGˀt8$V!s bQ,Q"n~Xj%ib!оLަI"p6U06;;CJ@[s6)A~J+U~$-Rŧǿ▵LA9p5P-?Vp`>sp1$U(^>;noQ+!^<C zɡɱ+* ='N)PpY A->n_r~֞i=wwWo/+7ʂs7ԟe+L,Z%a7O8>'~|bp+?^`A:&K-T3D*ppep;`vBn\O_'K4T?p`tBL-NǶTO69gEnjb 9 heGBYgw˴/"3tMDC2\-FՓ{DfaoLE'7̹rn]>Obt8YGSwbꠣpS&?;L`FzIY18 f$fU^E9,å - #VmV|BIef)!I<M6gG.Xվ.`Y3< orLM7:;lg+qRK[s&JTC¿V7<'@PFҰ%XoPaA_*x†2Yl" 0R&AyMW_%c=| Gspj:xAȸd-ib"~}.M]XNm\mѶB@HI &E JԲZz~VK;3XLcaZɚܭT 8Mʠi_Di1\=\Wc=ŽUJ9B'{ - & -6hU!3OvN0wsIlcp)3>cW~uWb\VˊέLۿ~)vQDT͆ѻ ;B|m_6ϜņR?-nVx]*X@1-147/gWv2AY cj8^Y8]v{#ݝCg)q5(!j%i Պ {aPrn,~ϗ F.U'U6X6 W'q 5Mnр9Ko舤sY/̨"Q]Ek\V?=͝O|2OXjƴO)]'>Z 95TַJ'smI &RHco,s zs< 5.q1ݩH~LWVeoֵu.}5XtLeJ3{AcaQVie䆱ifSy8|N Ù7e~c@VpIZdmqf1--׀XZ0$oH3cuBMXL5oP f^1mS?T)?Qi~.ר0OQ/J7пB6UOF*/ CJuyǵZ'=^Zc tV"fK9/65Kq$J1sHdW[ ~x*owo!}Ō,ŇO>>|10Yuuł9f:'(fx"!@LO2fy Ӌ@d,..|JYďȢGh ߭}{ nj&>hwb*l%EW 6?}ǣeePb4E½ u&IA dG5.cY="{O^zw,]Oի״?7u<&O eoꙛB P<\Ckp 2.Ս]#oǗVez%3DH1l-Anepڲ恠(,r+T9UeÐ3`;m~ ?OT* YE%6md8JaKzL{5Ǥr!p7OEwUD]H,o_;ڕ'm@ɴE#p8KG_^5MLePd@w8&\!&iSݷdcޭS%MR0D.,6Uہ ױmuѧ'Аr 5^PS,_qʌ֧u2T764JoVw Dra=i}IinПQ-g5f0J#F2AS9݅ݝ㼹6rY)†d H qmt{pN*`F|lBւnyadY4~C EB<^,>\\$>D~yulL-K~(14mK1&E=_3}!/YRc9D3weB$X~&Qij1蚥%,/Z'Y*G$pp*VŸiL-Ŷ4w J"\k>)hQ1.G C̶7I=$`UaHzC1̸StgjAq=\#G-tљK=w8reGxtqݿz5 fecbnBᑵ'h* m,HJi.sIY aݑgעwKcd~fcg}inӓ``쇔=lbַ[)"}T~DX R!ƕyvZ{C@? 2A@쑿G^͌%WRv`Ӣ%yXe3v9'7x"imJ }*[y"CLS&X?K6ZlYgXLNY%pDtg'j F5*H*!N~w#@QOIRDljkqP;6smǾdeϢFTy"EoIK^u*ʜ P*z4>F47pjG}"zBLoz,Ǿ%峴olfuOLG%.9 A+teX~.IEO-ާ[vzVF[c\2e]]H+Uf'^a6cQ$&+P6™}@4@c߁jfU )x"e,u!'eXg [UG?J1lJUtn?G]( [aU/fRGu~&"gB<+,@wnUv5`vw*杬M!:䨤-T/ R|ⶪ3J#e$@ͩ6WhTXЙF=`ӀY{g†U;[GDPp3}4d1|(W+9ǔӚ_ !r`'ua7(YUrqyDGwlƗhq40*V*Ӱ.w hdcqʦrU$ޖ3C|i>u3.VX\G;"uwj WiMl+LVW=|Fॼ8^E/i3sgͩԝutzS['uٿ(ѿ䥊Be|',J64 {T*Kc&Z&B('k:| PNxO]NLesyd r_+S7Sqx=>`ɃFH_Iܾ[-,dECWxUV>a^[MZLZ{)_ 23V]Y9.h<)zu2){R7W2do&\_@BS` 6k©żEZε7{ަF;RH,*.bP凔 3Q w1wH85yv@'xng6 ,aoܮQ#Z4 HULb2EI ^gA-Uc"kdu; e+ '諳n / ž X>ʿVJٯ\ҎѮY$F}i˓ՠPÉZ 3X{s%CGK[RtkMӰH1 bI5 A}=|.JFcD@]LZbi X?i Ss=ޥ55 8{Tƃ{rb6-WQbJ%n \B FU]VHI^aU(2[327m™¢s:r1d h '\cQITv56;!?r`Mp3ʎ}8n {@n,A?o r!QhCT1  =uteL1n8Z9ecwHZ޳U}ޏаlv( `ክJ<8AX3h%7=uGbAF:f$g="H8;.:+(3#LDE~2ޏgգ<j講,Z Ԕ\ow ܗU*ӱݠѤ 1^Le]>T8$A}xk{XZ1H*/oE$1u+yY" 46a^ORd`-rWwh>!QgTPbm8f_h;m2 ƾos] Z''G t鋜IJO74<>E}zޢVFcI?Z3p՝qp/P3j5bV-ꝡ%B3(Q ;! &2DEiyWzTCƴCsX|Np1VHqu6ʣ"09]y^;ei0ҴCvΩJG(Rlt#>rFɰ#؈v$$8Jy[˜^-2-ڡ >8OO{8?b1AĿ\ѧpY$%\/̮[3Hx=%ku 6CAt6:< ?wj0fZi, a<Ğ͠SYӲnXHoB RmM Fۯy-nzmZR+k댠qHsՔ^ƺJx[AtBZH%W߰nn/ v&'6.\2EJRDZ~fo}IS4?euZ8\±wvUoDO͇"&a X@mKAT0QȂt==ܡN:Yzsnmݩ1ξT7p(~]@<"Hab6~Vs[b9Mu^׺cBGv ֕l`CtnsAhu J,zY~|M! ! cGAmUV"E7}Dz 6K ՠR^ -ABI[w|Jٜheo1D} Qnw'vZW{,rPjR1aچ="S3[ɀ.q'ܝ>aI-)R4)=ʈ f4pC>;|B9o%YWEe T=}ѣ%7 cO8~g$X? W|hhWv ͐+O4|nZ5&,08M+A,ye򅿜b*Mti!LμdWxg[08JH,%݌~\V"<6`)Z&Q' OIaTU+1[5D]HUpV= 8њ#?][gWг)Vg1.85YR! ,Zx-$6mrߋ?V]xYr"x$Ij0t#S;ӟf۲iE[l6ng3-MHL#.(YLZgE elFX!^gﱿ7 } ilp67TO \[;s ( '?NedWyɞ>˜6ŧtnp(Y0 g0R|F#%VᲚܜA?}SƠWzSqAnDZ=b+>cF$t/o%ۊ1uX L8LTk^@CtB\d/k @$S 2_y%`-IE}mR!rb08nr:ɥ0lNC{" ^ثj:Gj,=bEzȠ({GOM͂ [@[apw#nêI/uu(o25& 2_AL]3o2Foe 4KGnPCzxzbo]dͯ6"ci'fIq>4Ɯ:-2V '*#[ @a xkgӄY%dˉG%$~,Z-bU`RjIyJKYQߕ"sKl .1 SGsЄ'#}_P)Vd2UF+BVIp _E&ʍS d BKRWRO=]7فԤ6E'>jZZcq-!ڬClufqYV{/l.ʲtJ6Ns19]X2c <38yJWRU@٢Ȍ~[읆{v_y6P4  uz?HSF`s{X-)_GWjܿYкf,|_#3Eyw'_j Rv`tnuS`R8B *($3he(1T펬j8˧g9\XlDf:ho"fpi\zyE]{Jcg 2ڌ(m{'6(dNd X )6d4O  x,?z5A Eά.נ͢k\D6tͣ[o6ً .=+Ad,J]:c<0 S%k9si?瓜1ۯ.۳9RUa:wd.n)! Wb|M"9+%&a? h13Ɵau}BPnI`aWz{;CO \KIJ `ݚ `\TlKlR {0xpz)Nj `8MfNc,h? }ȳ>.aydB cFKq1,<*F􇤫1qr;t&L_6(ߟJOSZ6f3*@[ /Fk 2\%pfAa]B{73uY הB5|N}f\ ދ%6Zïk}ց鵨/.t3ʐelNX_[wmue$K]axH?`@W^^Z g]6aTNb'l(Ɋ g# JrV|̋&e"aoۯjz- ۪0%1uuD&F@a>P'!+x#m[ iilu߲z~襊܁B$J?zjA݃#r)|Rbb" 4.b:* ;0T&8Ұq û|p<uRo9^B쀭D =JycaՏ%TU2v9uw@v=T>gٵup>qF.)jڮv5h#|/|mn8mDGF% OqY߱kxqJsD6N+5;;\ԪvUm# rB-|Әrf9OCEΟO&:rQr2 斱+cף)ёl7 S@1+V@| G Ќu3d5"迨b5j< zzP3xśwpP3yl eS 376@s:=v-p{ ʹn∞Zi ]j<~Ӯh憔! Wpk) ~ZW>ѭsi gy^ӛw~ f~SRXJx8S~D"U\0y.Ͽu4Oo]= Ro;pk燨=N y_YR5?;q샡m@"3i )*EÏ&Fǒԡ\')/x1TG|dD;K"<&`CzRxzݞ)&f2S1a>ygvb t X  .6y*vM 5*&R+ ؾ1[<^f!,؃?{ćxBȵ֗wBuU*1qʱA>c`}a`QWum]HERATEU^+‚RSs߄'9M|ө7N1t{QAWkP?*"h˟O~o:q5]w;vc!A=X׳:H0.A ; Zv٠U57:u/ã'Z._[8gmUB:PG;XCCzQ,:^SjϻKW #8[19;odT;N^eyUZ +R{ L;Ni˵4AOI@aX&*@i>M6[h7a:rz ;q DhY~kDӉ) %Hm4eaX͘1}SC/}7*nW^X%>:D}ј8`&a Ob,EɢsXV*݉?AĉK#qΫz3rɉӮD%=$Fsе]񁩏} 1KQK@V yZ㻪;lԈ r;עOl{<.O?n%^r[[3W9h)`IA:X^Py }c{,6 O*M0e9 kj$;5̣X$}߀#϶s;BLݻ$vfr˰iGЪi}f[IK^Zy/|P} ZlΦHd*7/<2VNFN6pi^A q@(/1d}/]6s*L{ѡ_eoh]3R޼u7y䵂&TJ4 6QX|X*̏k?l>ضYf[BȐԞmt?25ہ"8GL +i)Z1 c="6(k:\}!Y]l$.{%\S1wiV;z^+KT1 uuї1"\!|}|"շf#llҺœ,K#@|{_ S$r"~Jjz* s冈?Cmt"lͦLI4L̬ѫz +ro޷m@u:XgXuf$n3[SӀG\U_mYu֨W H>nBϾ`c©$?Ku/W7i}{h~qovҺa?jJU @?v \G3*A[.Ff䏔UEK:˾$TӮ-dҨL  :AIƴU^NwqaEHFIa>v:@jJuLQ7`jN+"up7Me篆v6yOᶧBkGqIf]S1ls|2Y/t%)QAvN8I dZ:m-#'7q`qεyCQ &].z.t₈ *iP&e H  򾵨cGGK[߻p+gqޛM˲C&x'ZfqA+M= >RP4qGam= l"^J2xvbYxDH@?؀Q{5e?LTZ.$hOߪ}YcDлa6ܘk;&i׈ kc$Ֆ.W64"ڐ/յǶÅP_! |#Nm>~?$G, 4ER/%I*ֽ&c?ӻCCJTzqƁ9hl&騟nH-f1$ XoI1}abCY-.k,Ǚ=㇒߹c0OAU'm6,P?}&kXw4XmD2]Ow_ FAI !{x 䱲]nI QzF/ $w.% `uzbrnqAEgؘ_w C>9^ȅ`Br1Y 5Ȟ9{0 YܧR*TPVu&v;ɘd5B0؁j4rcL)]y4u4 ɯP%;Q它,U3`MscVY8ǡցӃVNKғ-ynц`n]1#|lGlL Űj;lߧHsRcN$.E;bj9aIk~\ =$A==D̘zH(A:h+@;bE,_(7u !4 n< I|b9tf 5k~9i=\`2bԸ +pOLd[s |ϲ][~~#ݸRaL/ A~|\F?(j@KTI`o^a"z[(PV͗ x@x0wۅ[Lɺ M Y F2\r$0B#SP~ in!wi8-yέ4`,6ef{9#MBLSXrrȸ,W2 ÙQdw ;~l{2 K9z^2 ygnIVTy2ATх(22.F54{kDe61HRa>;BT&9,992 W?Zf(cGBKo,k>{cUM#0h~ʕʶpش_,1tH!ȟѕ)_fU\XG$5 '—'4v ,A[Ԉ*Zmӈ7{U\^̿>;| cs1dQ³%9eõ` f#bDbijE,ǀ{jjK q9;+\bJ mfBR+MbG( [ VHMOސlhu6u2 GBwTBPͨ%zS ,u7#w/NH i^aїF{ #@ւdo34Y`vHo;?;ABӪ.lhjk< EZSR׿[,55o 'a e5Q: \5^̤:˺ ?<"F=(e']2dP&=m&'!76X`Hz={) ɋgCKL GDIǗ5|,`q'KNX adZiMut y>.==(aC@ݐc?6E.'Shp-6 eӰHz<0 RI#1svY NAO8WsИ y}kgpULօ]&?3R} bh/{{9jcUnʝ xkx>P MjQt:nX'z 26\&!h> 2'hֵPoz*5ӯcߣOJ$u,nyv;ᮜ+U@z2}ax̯O,/"R%r܋ggV@2e>x͂A|GbpgM+^Uus`-Ϛf_ deNT{v |ܑڿ5@cxBJh9T4WD/)L`QU'eߴ >GiEK ;Ei$MV ISKiWEkB澺$%DKl''m_U'ՅZVγKc1(mZgtDC6夣]Wykh_~[4g.xhMϐ? ]^NCB]nUw/7)܄Iv!K^RqTJm[iwr?h|IUE i)|"S>tY-Z =UX=(ȼ?ˤޥm%@JRAWʄ}zYhz[TD|듘RLⷽR9yF63KIt6jW'jl*PG;u<C 9Q*{oE$ѴME:JENkeRHGnt!RI3g\"~f;py9N.5ܐťQ,MQSHhaCY*cr50EXpKFT^ !O|VK `՗0ܙN4*UxUkAyO_OƘpp DEZzjQLᅃ *ƆkM-JݤsygI]ͼX$8OpXНz:ީ2A믓#lHNK.qGBӡ1QIM@alq]fje3n̂|u; ,u:\ZƵTL߮( ?nܡ493V{Yqc۪Ba9T[8"c5=<Tv@f7]nuU AS-nQYQӠi4ju^l?BZH@ LqLOEE=Vzo9KpU $q>9gs aQr`'ϭ,)]~Yþ[y\1 u;p13>cH?|@kY)* {]Kh F@a'fc8Lc/jvNxSle\_k8ǒnu_ѩf"*sR~SL873 `}PoUo))lW#2Wp{XFel0  U ߔã*-ƒhds3 S5HUu%3=n"@wx}yE)(N'="*0#8^M>p<;hl'T\N35B k\Xbr۪jL$d4=.n:ш?N`H{vq8dl02U~ijgMBl›XKSzK b\03PSPW=p#G:ov/!CAIupꐙSŘtVM2^sȋtN3gz;x6l͟,d+: MB6gmya_g4h]',)U$)Anro6p-%!ʜ>_piOa 5 ECAhd<恳sJT[: @$lIMcO =[r> ~fr,e[(ﮈw+w<8`/,;<ٝ4v1_ğ`}e^~『ᛏÒZR`![J!}W_ߏTV +3 K'aLBrO2Rֺu%f;FQmA @$Zd:@XL+?x,vУS\#O1^ɽBfFF!~vd|Ns5v"t+/2e˘T,:[; nĴ՞lJunsKL xR:K 8GCӷC;a/\* Cq/8 #Yk ty, ,A'=*,SIzJgלP!PL֓. =qufvyRI7GHej&Rl_ݞ.Lv_Gu)ȍ_~:%D!z4UdD#?$z5`=H`wY*$*f1Z8f EVP4#/EBF6 QgFsz|J q6C/ 1c3)5TqqK90>6@mV:Ya<ƪMM]'/4*)/*V{dfswWmIykx>< i8)lݜS_Z&wYώ;=n?ؑɮ Q<بVnkq7DI+?\ Xo`\Z:ŮzfofT υ)#\Nš|K`a*U^hY=>OR\_i&37IsJ n q`6Fdi S>adeg}R;o]"<^Fb[]]8ƦJoJ0tųI^Y?U.pB%&[ưh\ibǬX.4'%"gQeIBK&zGrHɢl84i Hį~dM3>޹;!+[Dd#֙U5uFٮYϗ Y(r50=NM*Ξ UbgBP-+b3U6 >X)̇@P:={kLh{vg4k9(} ;w=vbg46@Z Bx&XUv3ZsQ錛K8ZLkG>>aM+nȗ lt#I,-2^SdfN"1>xqWOX)X0ً ʿ#7)TOSbυ -Y>_ǩYn1a-f!\>8Ap5.p6|N̹MX&;__Fqb%~>eza89 0(_m>R#}]N׹P)'t\ W:L/A$=ZSt{OxO_uM ?h,*I.M; tmcEgz͏CV+( nJ(=M-'s\Ŷ-~|\-6݋g^ڜ5@K#ARyA=vps+W9a>k[ҏ淫%b UwɹW݈wOEoxC9̲d}qv"l7uzŵ|mu@} tB8@[M"zd"kü, BZ]&nLd]quc4AͨhQ3{͌/ J]*<>u)/^1]a9cz,@Jӫ)Zb6(Dnr|J&pRewJL[Sے䈊m1K*e7J JPBe/(5NjG/3,,#2"{5[oNjc^qrgљE|;ScS^HՕޟL*6_v TbSҬl&B >fqևQnWvdUhДL}3CL".^)W>%QBaQdDv"Z-E <[" :$LYxOB Vb?uS˓|ٹ0X m<>kEܩQT1%ĸ`3ѤNg0l2yھY2WU`,H3sGaj %FZNau6iFӌc}qnOa^"&*.ba9{ܪz|׭#2_-2fyA_M'8e@f(f%m%9<F,tdQ)iRwv? @D#tM>,ym|5 0wL?G&L:aVCعɕ9[ {#P>p^leDc;_OD)99;nOw*?5/v*ۅfew:aW~(Nn-B)hru=e/xêD=pr9v]h3UȨU( sc91qkL{€pR)h=y5*I,z1]b2`k^V=T+4 ܐdF_StחDX0?<= DZSt,'uo㹆ƷY.ygT+I#J [uP dΌ{~"uUf Idd& ج*yOf1Y09Mu].Ɏt!WB=K0J4|[$&Pu'V@m`@pej~"Tc8E 'R^8K?#q\/[`\Q 5/%0h9aHx=:e_?+,>^j&S A!QG xAAyJ d;_q'&qC H&n8o XߦAX9] -(Ou$츑~%~d]6Uԭ}3]E\>3GW駷6/YQ0‚%vZٓ$>]TJ_[pYˬ1ƖQ YmJ&,)^6uPO-p&U k.Ͷd6Wo;=Ao,ϪYb 5k˼(ӯޙw3 l\[owp@13k~㿵D{ 蟩W?:R*t(9">e/JAz#05;b/ꊒ+>*$'.Mw4'uL i') _P|kpWC&ɽu=JDd&9.dt.j躶 AU7!~lDK5B8u (H?Maӽ;{ wn@X޴82\4"!M;9H_@ԠmӞRљH &?LgղX}_w2d[=|_F>W݆y3q<mSeN?DC(Ehm|zkԀfL LYo6DKy=kI+xZ,˾b5s~ ^z Я|v1L'!Ļ'C|߻]Rm^tUU ^;)&!V)kQ>Cf aBZKݩfw &H^Q8cD6zvOvE~:?!N7 ,ld^0 O7d;' !}@OQxp<e/[ i_iJV!44tڥAuD1n(a}De #L 8P ͌@ίu:?F!?))?.;KM3aTK T?Dtlc%?@<*JRw>?ƍXys;YJܪDW[rff/8awF<-ׇa'}%I]3Hb ԁ6m֠k<פ-Uέ vDLx~z0ً+N`{$d}QQ3bk 4HtJG%8Gw拓lV7+\Lձ C J*)(³ٛqr:'UxF}][Kbvʕoy% 0[c)`}ҕ~/WgaM4ӍZmeQnQtXX+ jE7ׄH.$w뇖&bld2"V/2[6̑PMs#B&8/y*)=.o_XoIߛ/o=!lDb[n$.ozϛ~N:L8B%q& D~3M+ nފHc9P܀4:`Ԇչm/NjcC˞NX\Qw צlbNnx"&w~pN P(k2ζSnf.. I$5nwl;%|y iTSh|n"tXta7 vja+F  'ӄp8gOhә- O2Ӽc &ɥ{ۄ+bBw܂8eä쮐lt* pTCZgA\Qnp5kquMCu ;`;t7ɟ ᕸ[iK幻v'tĊps[J6g ݒt4&iܘp-<- ]Hj k%1rkaT+) ;Iy_ث)?5;bz!wW SWc5SOmhEO}-q  ۧC-M.0B'qKȈm7~%ap oxP.V"fRQn"6 y;qֿ)B!OXn$ n(1gRď, 5;~?23@cѶ"sC0rf$q% 9.0qXm: SNv.DYʘ/9X<084R|) 6u١?1AVSY =gH _Ϳ6`e1+@$ϘxkA 6=YG_!-bT_IDQpHX5̷[Q&C"{:'~s%QDJ}E:b?$Ps ooZ :q'ᬕ $3WcNQvA*SBJ#,IRtJ{H5Nu.^ƖBaJk* J=&aC$Jw&PN?nY"MՆNn#vWa1?d15ZRA1[ERz:)Z鳕Dk>w2!mG 75 ߵNTVa…ul#UUByu9&:ʒXC w$ݮ4U7mFჽh-reoSX l/|?Ͱ )mG d*Ce!Y!2HZ:DܭpscdUڏ0Ds4; ql\If#E*R@.1_=EP{a꾍O32KЪv13iVOU6:Ă;r:]ÐO\+\Q()"8,`|Ee7h`i桥좥" j@Ō:ׁeG69K{AdWez;W=%3)jb̕zz$sz$vEtEn͇6nD҉(f$. 1܁EўNrRfEX_F -#H8ր.o4fr p8J,k^#`m'~W˜7Q7g?\ڛDzG 2|r݉AGEUM\̄`xPw5]8:gH!S?u̵JArkOW@enÊoOu:?{9{%x2N# nmFlK1C1{0J BDP 7Lss!ZD=A5v\ԖN=9tdεP?!k?`~2 4_&,\߫A7R5nNB3L8'項J9c=́}]Yhܞ+ %:RQ,LT`ߜX&7 $*z2n/ zYií]eNIA#uۓf׉Հ$ۡ:dj7[B(qo/*>Vvړ_%ʍdTŦj!u][_sN|7O7Bz^8Y J KSv[¥@TPs]Ove:ʠ0*Gs+1N1i:ԥxקmݗrv+`L ZA 4itfktU3聟3ōc4 mju鎷U.RՀWhlXXE #<'s!=̢.g? mgjC2dat $y)\v{WæLQ#t[׃GU4>eEv|2տ]W- "R3AM.FMx()AZ:?s4my|*b?z7d+,_s Ҧu}O6AIpQBjx2=TG8uq"Ӿ ѿ/t0ãgG|uOڸN|c_?^R+^-k(%;} ĥK'b/33g`h5!RLo9?+̋Жa qkc!WOY@[#B\-Iw ,vXm690ثK[.aռK],5Җp@ȉ"(={%?nό@ -!nrcl) i,>߱H7Cqqlsh/Ђ{wuIxQyU0fA9AR`B@Wމ̯:`2':LQFgOx5(+RsSNդ^ 8㤧MQ,{P&M^MXelj $b O|Ca^4rc.qO̎ƵuSgʓqZڹM8H>/$2oZa)`t)O1j[vޏZ=9`:}~?SjZY; `}GK)^'Լebf>Q%[tw3?fp|`h Gu aoVX+K,DWC)`{'J0E6U<~4;0Gpɼ!qƈA=2$I ؅}æ أ-fC_-: |D!˾sZ=F:^-MkzU].jʾ MIQ Աn]^;5cY7[/0W/b1wFdzNFPeʀ$aL/-[v*;"5қ62tftINnZ)G!)Ë1IֱB =B**1ƽߜLQS2xdJgWg !ŋRAմ)mwmVhF~&n@0wZѮ }f80zO+%a I7\ͧ*IFWaǾr'd3@pN+e nSK9t 3:Fs0l" c⌄i׀=}? vR}8e7j$&'{X\gЇhvo%rˊx̼=}~We c|`^A.,g|()hEh^{o|a@F>%y\UDHc«|-zI׬_UgH<0!W|zKZX21R""I7-~@VwBg`5|͆X^QCW THIKzaa3JKR5AW/b" :)Cv C/×mAk1ǑT/f휷Z}Pf2\wfV|rH⯶s~%+Za|)M,P@SnDž~<8&) R:Ʈ5}R ̮Y3&^-۞`i_OْWǂ3ƥ+hOF_E.Mi*"Zm`nj!rT18B*cV>WՓaOЭ+*fI_}pL E+2[D%c_!zݽtPwTJb1ׅ%@ƪ;I]M -*K3MƱSֽbkOao; yjwD_S*5эAM:>O5^oO>{UJIw-9RYv:*῏ʖkOa`Uy6 IL֗L@Am_hâC? ܑ[`CRTvFsτ:>[6uij@N۽i7 Sh R Y2pSWuiH/0'y"d2mٽdXUdRY|r};qST6*ǿ:Ycbh |&gpo R(џ0,0 JJol^L\$Bi¥yTĺ;̙k̴_8⣽e ӳ Nb0f`z,Xs!}&OʉnU+@R ,ӗYvijdOMignve /mW!{E M;*3}UQt);z1& fzoo[H XjgZʀOw}4SxVz7zˏbcVP-9AoyYۭŞ}oX Lft^ʹ^G|а\Y{eq8 "\oAt:oZtl:jeP'Rnu5D~az_D3Q=pٮA%rY|υY9w@# 301Zy"8k9w~cc{B <-o1{?l_Z.+^9u񛴥m8|UMMy嗣3w-|T >:c8Xqؾ<(xU˖Z_ QSݳ3tK=OHj3|*XGfDՂq=Qw.Ch5كg2mtMOVFRFP&o^5Y=; (R Z#7[6=L+yeViu>a.QyOp4'KB7B#y7;1fMXܚ$v\`XC屔!"&+8pǩa47yߤ{F_tѶ:gwb9q%Ij YCx_̱OQ3翲=^Ifqo68Bbܜ0!8T6=<' i ׋ǁ5o־X8E`6e0S,=sc@ al#t@]twy/\nvQPfwBCyy=.;qJPZꗚ]AHlS7VLhp"GiSjDlLmru&iyzJ=w/gAZ;'3Ywo˸IҪ, Xo<;s+ȑ"z_e t} 8fC| (BX3§1oP<T4L1EܫH(e 1,OVwϊJ (Y9~t"Jфs(vy&՟@"Džk1. =NA6 g`}sgNH8 Bt5;HP RVk>F' -;K./AU>%d.ĮŤlՆӥ\$"YDN%Y1/uߵږS_H$tp,H57R:D6JthcNRc_gLE!<@~p5rOxM#}1bJL@k ,Bo=ds4 $ܝ~#>4mV`o3~2/9v,bIѬs 4WZb^W Bpģk/.pNO0fwwHί`Kd\ss)Fh95T''( $]rfxwB0B 'j& nf|C숸 ~ _QPZ16+נɓi*I6n= ℨ.Z095٬uS/P֪ClU=)5;o`:Ky_4C ܍%t?\h"niUKޮe{@]Sނ92Eiv0]9ݿVTD%{Bp'<OgEL7ՠ%ͽ5r8:Z64NaJ_'(TِDk̚/Ev@z$R),Z K1J/L0793ef^Ž80H %GBɱbT% CCPλQNUͫ8Хr\}1I ?kє˟CuMGN7t:Np)^߱L:+8Ze Ur)hеm(?&7URރ>5lZ!&< y<ʈ5ﮒlO^-~+ъ^sMMTE_e3FR((ب4Q/~tOڟ1E4tᰐǶ!O<9iE2g,#E h.:' 0ߎN ' k2UKtw χys a0:LEvϾ\߷A?t= pJ: }t\}EjaU+1BRǩr%Z;Y:[qfB7O$VCv[҂6/<[ˀa簀AP<̒~s$HdrFU 7Bk7e4:"툞v*52O%lbh=]JzcRߣR9KVdxG4@ *k*Mϖ4LX7ׅP [C,Jh_F)r w3%Za7 _s 8(;gƜZ])ӡTSdGI@Q7 e6=se6>, pqz$0L5 %$x)[C ^hQfz?GvJX7^!̧+]eD:`9LKOG:{ަBB jБOwk&>eQHA _aYKۖzX9f~t5iu;c #s^1$I ԇ7$WC ޫV ?Y:*I %?f+GMaUME;!Ӎ8F|evTDbMhk&Fmsd~R)䤃7 g[)ĩCiTk{'oRKFnt㻯I=-.Fܪey\*YEzK¦@@xuh8vy(q: aF8CXlD:*Yd}Q&=[_vUJ`' -,Y-K0E/F͢NmF1S 1B/IM+HZ3rU~ZPӾmG-B@Hd2Z[|*m$ |5V*6]7̂\W;SԾ(xKTfgeBE'lE~loZ?7^?ׅ"DY M'/LiKGw(lkm ZL} ~=aݎܳ *8H\50d#&A+fzJUAr̉ʢkRC_W?Oc]ЋjMc!|[03D;u=Iԏ=XHN^u5 |ץyDJ(5@TcyzM; k7/nMpMX^i_vPG3qK=8$+!ugQLf #,Ĉǯ*w^$*q=9~u"J ~Zͧ0R,|TXw5۳{f ֆ%䟿=9z^K߶ӔaUpք£^z1URpy֜ƩH$(0t]i>Dmkâd.G1ʀ[DŽݏ8.xBO֘Cmד@i{4~Z՚ =$js0K TM=N~]> p֕{Vk= V~lj5Gʈ--D`9bk8ccMb7nh&LXQWұ%ch6\̘~-"sG4RBfKy7'+d  m īoBa ԏ \fq}7tpICi`tݠ'NvJP 9D\e!j8$nui>wkOV*j&(Fـ@]f8 -RvSy$bGؘMASuT){E3_;G0'AA'O%i9g6 v+܅aqk;#\}qcBBPdA~ V ˚iHjD_Sj;ue<=/fI]ܮ0U&^Q"~3WH;z| $Vxrsa}i1a4@$H~Iq Dx`GH%*fY2z<3 #%s$jK&,BtF{es㴭H6l^9,v+JYʕ5qgt,{s,dEu=d@N0 xj/×)Y:i(>,էVcArEUGK[fpɪGVwƱ"cW/}ZepQY1b%yPJI$Nhʥ*8"oxKNwޘ=Occ;ɽ-sxfj>'N܏1%pf }ٙ5ȘKj Ya.1{gX&0jn$YMXϠŪ1kHzmzŇn70Z&=9m͞ʁF$N' # m7u n.p jeP/g{79{-',C>zH9ȨIwY>25LFK ͓)}  v5 o5*A:=2ޛaZϻyZ|Ós_2peh NOy.:d}=$#Bj;`՞ɬ{u0<% fCX sl1Dʶ˟2^=1jcLW*2üЀY s7KO-$>џ#ˎ@J_'Mṿ2 t+k#o8 |q-:Ძ/lCAެ, B_I[Vګ=&uDzU8d6vs'7b0KݿkgʃBibfE+B`Z9 ;ሏЄBzm"Ԫnَɬ+ ܻL^wʉ]@׺+hw,1#F1l`#}lR C0gZse8_4 3YM>\ťyA,cpǵ˜_*:8-m:$=X4@"ÖwOmN\i#IRE .NS9'l!qy>%3SjU%b 277_PY8bȡ]P.O%} kŮI 7r>ݨg\Owq^ X݉ nnq2H㸞0< sIvO*"!G#z=D|gp[LN3!9'~)ޥyTQ2=~ApT+<@^0 񧽪{ -VvLQ8q/sza-9c}|n?T&(/)d@!ldQ]BU:B182c'Q#g_ijj3|1/~B?(#3epc |~PÌ'tpH4$OqiK*o]ؠsZfwB!辠PA|9{,1MѠ`>kħi!qh;K).*t(ǟ;ױ @zՠ [,bQH訃Y/.Kxf!wDFphlx}Y0Z:hQÓ6տl~|"74Jש|>7^VP_~Q Ք@> #2f!#9e7Wp|T5]zx}b)s !`iGzCx@ ` 8̘#vz3>}bSN4(߼Kȍ#{_El[PʔC"9^GFpڱ 29M~0XGR%xJS a~ӐխT߸@]髶Bkf%3RkȖյJ:nLPm(t8r<1}vwwz̈Wȶ}}]IJq1/tiYR_gp5'< ŖX41W[D'[1RҋY-09Wey#)I/tӬ]$h:w_j,cפKGHl:=wR8!/:Y hN@wŴOLsf74Qh=#H& l@Ԇ Rrx4W z4zR'eg D0Azg0>xԭV83qJxqy%[ *;dMr "I5&>F˃}CA7-ύ쉰λ$-36G7j폨(gBX4`CVX>i2צ tf$ܕ6^lmrD/$R?w4W 1zH1⁎iLϝ5&/352!RqoJ&:?s*A |;ߕد+_ d_DJ}h` CyevT8+v[ Jh^dTVwl#qM`떔U|qHPu<@S0[0ϟ 7ӵOGE l ]2 jIV]}4D=V};`8Dڧx>Q_tIxtTAEPOSNG!Q|;ʖ;S@m>mc>@tWf#~WP"]j _ qZB VH)Ľl-'?osB'1y"ðHӪ]QMhN6w~zccs$`R9sE nԄsui_g%lߐծ#"̧xIQTuOSXP]R -/uDY5~ j•Co G[Zl ;$Qr'==wh%sЛ5`׽M~gIuЖ! "/Fr2ĄzL1QvvK: d պЀfo۳5ƍN-YB}h(G*|G^ӢJɆĩ7F_ c|k>ǹoQXDi8g6EΒQRᏃ fݳ?~uKws7B3UmB!=ro뀂E"kD%l, A&݌'.dGl"F:\bqه M m YD\~dn%&'b7f"i>Y Gp)ک}H-sr>"gʁXc bHbKZdԊ;0ii1ws MBH'NC`X:n-/e ql)t|ꍘTr>W ;-'dT8Bm/Dh0- VQc+k$h9D5$eQ0Z)>Ν>|XuOHz<- cS`B5`/9[]ɺ8\є3v"c&(4)փO .-?eb'#(B{¶}i9aˈ};p{װ@MR$rK }T as=E !ؙp+z 0$\)ExcoO.8Ӌ3i@M$8M0Boe+tӢ .[90)6d=h0ڏ|`/O1 Mt)%AkDf9h=%~sLC0O`pr6dT{گx3x*"=G/&^ehv3듎p 29iU"J͸὏( wd8ԧOEHx2Ϋ`vŸ}mxG[_zrh[CwQ-& CqIf,xߊX )\ӼdV#"xDD1ɣ6gy}&O^ZX87×ZH[͒( >fEF~Y=,"Hg#t# H&ݿ|&* j =Բ跙( v ˹1 i~@.8kNmJ8Nvai"s^˽.CUs:I+BkSUdLێΤwA(yu^1 N=nSMÉ9h ٓyTNO>^/S> *YS }ctyI" B5.[KXR0E'1mG::}IAy:($Q¥MSB:c&%)8y 0$Cz!SQau{9:|b4ZPol} 8Y84VEnDTuV\AJЄ$C DfV\yM13V:{&Fؤ(d&h RgF jM*. @mvD 0eR%ʀ:%D_tQMFX=+Fm0;ϩLkŤ=HXܑ`v|* zA >}vCmF ւ5 5;xטىyG6|| bQ. ݽla/@Fm9С~o-L,{Ӄ̔͟h5 ~l  "~LlΒ0Qv9*j-' @q2`O[C̣A?pUPAF"$"o5jWxIn˥5>abt#,]4FWZ00n؇J3]ZeaK&352{؏jn$C= >)g.4Gö_9^'LR{[|⑧v,Ge<#g0us ,& yW. n̲pZ|2KPL y]6ז{ XÚ.E~qiO㙁cD|!(|#!O$ds>c2F\&AYܝ| wr67YJՖmZ[Tc e{h6?JYXjk:?Nհp|j6t}`Uhl2mˌ;#g.POy8j6=7] +'\?l,![]USMcMxm+yQG?x\J޳1RE9"C|?N?7yF%{-\D!Fr9 -xiՏ\Aj= 1\7n衩GLe4Eol/Ӈ `lh.!n~ @ʪãen7bŮm ߹ ~ oN—fqLXI2QŠZdl=}_ m>{6h`/]t7gB0\C+‰f2%rA e8t۴6v!t$9YX2<*my?hd4yQ0JAy?5ʥIqֺE@)8 e{ED3c=h.u~x yx0pk@SJ59k0oij25")lML@;Qn'1a"_N? *u[KNU1ľXQAmGLT˒:v"Jʢѓ"J*h\nǺ4t@|LuX3 ;Z=%J:YN3G${zDFe#zh$.$7`Okѥ_9jCA=r& {9cT (K{Kd{Jr$|bsWLRj fG)Dc8*039u3{[Ҿe 6piwk:6Ė8x?jM k1Ր۞δEpRp,+?d\߶ۑ5'Ӧ>  _zN_뽄S>HԔXU8?aj8 k"NhTB (z7?a\\OUpQ) S;926 *?w, fwṬZ\|t9gOyuKHKnUX bQwI\1 l|gcBPODbiDk;O .>LŧV25]{k^`~*Hct䜒uurYT@Y2.x$Wdď?u;h4"?Z}ih&~byk]8_z8f/šq~AD59,GFV3{\(XQwhX{Iv3OGvϸpƐI-Ub1f;~A!OY'j M]_92*qٷS/jA*N b5{_kr.9ov)يHN@`eձ~nXHtF9|3_#ʇܴTO<ʩ^wu@73;Uİa[^GWk wTEk]g&ntlW fkG#obG~J}}5zy, 9j,JUR!i )N-Vμ?o}i*,iαyMr:4 ey \NCHxk;u!dŵ'pWSx `7*|ұ"f|`5G懓$hb,DieCrԒOs<*g?sH_lta6:'"6Q^Mд&ӆoAJAqzvq/Z[4 2&S#EHx0zjۺZ9=M> 8ĐfMxD{XKqѨK Y)8#bx!¬^6V?VPtuԈ@Ӌ"wfs&~^{Q2p#@jHnnsH$$3xj̾m6z Xd,)cz4N?7磴7飴ޚ.t|w@F-[ BƖ~5X%}&+{j/ d#f:80c/mGE u -1z}x{1|[!R˄\ +m0ID@7'Z >" ]Η._w ,jr-b/́҄ī&B`Ou~n |.zWu?o!#p\o7!s RQڟ[rz3~,cNf/ /5%U-h`5.B5s )c3k0H q5M=(*l(xi|xO82cqS]6{i7rNbr0$F7a3c$#v ;GlI}4,ӿ)"3d?|C#Яv$ +a]i TD S33E#obQN2QVPI!.a޼IPtgoۿM3.