glibc-devel-2.38-150600.14.23.1<>,gp9|3(GhoY| i&/.!,lq+डDeLRm2z~Б br7S= ijo 0E[VU3 \=' 7ISub|/vCtY+t[՜? C;mBPuӛ7skwm<' 0*~tx[C_s,^rr<$`p& WX >A|P?|@d " X_ u  < `   B0 d – (¿89X:%B+(F+.G+DH3I;X=Y=Z> [>$\>(]Fp^\b_1c_d`Ze`_f`bl`du`xvh wk8xsy{z{{{{|<Cglibc-devel2.38150600.14.23.1Include Files and Libraries Mandatory for DevelopmentThese libraries are needed to develop programs which use the standard C library.gh01-ch3a*SUSE Linux Enterprise 15SUSE LLC BSD-3-Clause AND LGPL-2.1-or-later AND LGPL-2.1-or-later WITH GCC-exception-2.0 AND GPL-2.0-or-laterhttps://www.suse.com/Development/Libraries/C and C++https://www.gnu.org/software/libc/libc.htmllinuxx86_64i;c h8(   +]_ q/|  |i6 *(UiS $}78 ~ "P gXG8{D pg4\N 3|.  R w|+   5 #P} _x 7[. .1%   " &xH <OU6"fn}}4| ~q4W&* FO1UWI1ici! ir,$*1I! 3 O ~,H  '%ks 'Qx4 ,-E~jJy`   @:Z`So--Ml5W%9*( T:  p8HS;   )"e0k0 Q:$-J v@2 j ! HN 7Vi x V =X.. ?+g Mg T LS50a#  dS0^5. 97J# = QX Xp >w; -0q   p p,% J 2n`h Fg큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤gggg&ggg$gg'g&g&g'g'g&g&gg(gg$gggggggggg(ggggggggggggggggggggggg&gggggggggggg(g(gggggggggggggggggg'gg(g(gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg'ggggggggggggggggg'gggggggggggggggggggggggggggggggggggggggg(g(ggggggggggggggggg(gggggg%gggggggggggggggg)gg(ggg)ggg$ggg&ggg(gggg(gggggggggggggggggggg&g&g&g&g&g&g'g&g&g&g&g&g&g&g&g&g&g&g&g&g&g&g&g&g&g&g&g&g&g&g&g&g&g'g'gg'ggggg&g&g&g&g&g&gg(ggggg'g&g&gggggggggg$ggggggggggg(ggg'ggggggggggggggggggggggggggggg(g(ggg&ggggggggggggggggggggggggggggggggggggggggggggggggggggggggg&ggggggggg(g(ggggggggggggggggggggggggggggggggdHdHgdHdHg92ca25cc7a85656db2223f882721f4a5c5ec9ad253052ffc58073fc48093e6fae17b09a2a22c09c1a9a0f06f6906e04dc893ae1577834cabef562ca781940c89f6f5fc652e89fc45ea8adfb7a6feef4413c41fdba74c47a386acebd3a2b440a065f7a5494cc006cfb436264ac5c145c18cc33fd41b318c16e18f4fe0cd4a184e8186758451adda176c1f39673c8ee7599ce1998029a74e526fbb517989d3c6fb663423113fe75e31a908ea17ced4cc9435ff8b0bafccc097c35535c8357d3be3d1b072e43f0e877437840b1b9c3f5897a8263281420f544441a5e80bd2cf50e7ecd25ab1bd5c3cce40dc4ebc6bac32b59730c34d55bd243be4900059ee687ed2e2b96194209f5c7c8daae16bc71f713bff36ba76759e676c711cd3cac664424eab401a92d470bb19097780dda0722c29acde2069995832dd09762d9789913e3421eaa3dc8ee2c3a17e6d5d05c809209bea9c13d99ab824efda2c208820e7258c0f9c0a6147e1cfb37345fc2693b03d29aa54cd88ad15157ce60a3da854cea867cc79c73a94f4fcbabc71cda74c0fe8e159f6b2a5d1319378511e9036fde9eee061609794cfb342b22948ac530c65f3ac6057184e8b7f567bb4f3355b457c1e3151994249cd9f84ce61fe97b57f59683f0c7823fae09c5f34f7c161199c9d8aebccf308c9f51c6d713d07b5c68b76cb0a690908d5dc96e9f9adbc139061ddb05c377aa610c4c4ace6542c7acdd3dcc388ebdce259ecbd648c91b58d18830330f4c8aeaa680c01569a4f13fa45b1308ad87e8f5a49d7acdaf7c6ef5e29008aeec3b6e4cf7026255458521848f8ef20c1c3d19ad094197c7b762e2d907cd7974cf7bc31a51c88167887a66b862a26233a084d0a800b32973b05955b7ae98f6273143ebe0957aadcf2af20d9a171256ab4139037a7ee2f35ee66c1289091f06b2c922916e5d3ad5595bfd812b5719a21615c2a00c67f8ffef24d19ddee969a9d099757becf9ed4fdd19ee49f0013745f308e5a32cbfec5db5309251c2234bce7713a1ef3bd4fb4aeb7255ad46592caf72c67278d2ae9c9e717d52404cd6c9b027ba16d0d6c3a4a8ecd7f3326b04d39e6706dd80ed381d7bf86dfbfa8c2482325cecb347403eb57c074fc8ca867ac9e4141ee826f9ae619339c677357c9a89855165b4de87067abd0016835a83633b715abc06c1beb7c10199626592077ffb6c2774615ec525072bdcdfa9d6eeb1a508160ffb1a847aac555664bf730518d0aab0d79659a7060004eda113671a38852c4d1e9cb97a35932bcd1d8540f98c09c1807471aa1626168503a85ae9a692a2f1859968d8feaf5e9c00d5e796e9bf92befad879715fb4e3e3929058a2406e76cc1630720230a89523deda04cf8d482705d99d1a87486b90653015142c0689728683cbee18b2b459f796bc9bffa2e096090f3289b598783bb5b99ece7e1211c10359fa97b259b2242ceea7fed04014c018a3ffa672c334160cdb0161790122ababd570deaa3b6780562fe1270f63c6e9cd46f013db97fc094d46ddda4352216e72987c5dfb9d4cf2155060baa8952db003beb5e7b386589c80b7fc74a28c477aa451d37d9f1b0056035b88c2fe272aeb81c1e365b7ac1535b8ccc387711277c43181d0c43a62eb191053bdbad926c46bf1b9977fff49f2c6e8dc638cc067f7fef72946025815b82d1784d59e6800e83c4dc7f4a8767f459f985afc7cdf0711af94e5b6f4971e9c7178b660a1926e579a1e15a7cad908ccfd14e0944280112b70cd0d71a4b177de612dbac43ea86c69621b60ef10a12f7c1e8128b37ff2268605e00527bffe33866ecbc9c59efb45a18d6cc33a2ae5258707b16514bfd9e67239797c83c1d9aa404e873a2ac43978b52d2fb26dab46bcc2ae4e5ebf94f25b7e41699c0daa594fc24355e901a7d59b25605d792f107d453f72d035dcb6f4750227419982e4d1775c1f1d68c07992d7e7706064d9392bf0c723b1527a8f0c68173f1b3403d289719a4345f34ce9446febe8bddacb3f65023736513aa899f0b764f7e7318e2bafebab58c3952db1583ca5b3f67fe92e2020147974d1c0a377e168c73a55b9446ac297e380f5d5c53df6d8ba537122e60caa106c4d58c6a3f16f07fcc9b3d6799c6bd189b31f9a5d687d9ed287573e58f493f039c1c145f8feaf4bedafe304abd8fd5bac5faade41b384983594d5179a7861ac59ffd7a5e5bf3d320f02ff10fe287594031639f711359900c879f81b60b01fd89e0ad332ba6405a72ea863cec20098fa00c92cf74922d91d272351dc31ed49efcf7b4b2f2c26f2946ed5c664029d38d56b7b78924920efaf164e27b7a3e1db94a460fe01d5ab49e0848f815d3f227acac15cbc11048d3b1c6cdda4ce93075b7ba2c1e0768e4bde98ae33b9f15a038e3212534b3d17b47e6d784201443c3925a2eef1ac6d7abb963057feeace7a182e48a9f8a3feffd839dad2b7d6cab0c120c6b2772c7c0592dedd286a03d35682f612e6d30b643a0a09eb2c55bff38e2541de1662e218d424f4a432337ea473fda35fbbd750789fab2c11996fdd7dbc1718558b15f070b70dfaf6e3bb37b71d272eb10c4c5e3dfe8c9a826b2ebf4087f1166a7c3b9e962ce9b5175c2b68a10e6af3601b665bf334bd36079477d8ffe278ea8cd9211b99ed4698417eec5845314631f90dea59d2734a4b5a4ee8fd5f27c1dfe689166214d3fedb971491336296070d52c029f1078712d9b007c8f7ea8898b7b1c63469e92882f38e42e0f82cf0393d9a61571a7fa9987a941f1b07a2ef4ee2f211daa3c00d153c1946adb107a79d63cb4813b94b795850610f56ad3612f0f75cc9f39b193d5e4e1978f552909ed2a1384ce9e2aa44ee7a6a11cb0c0b94b35265dd49c1afcd1beddb9a283ee1da5ab4fe020a19113ed83957006d6e82d1d1ffd7eb64da135cb3831268595696f3d52ae135a9dc0177b15ef235e9566c8f7fc5a6b82a58c52cc413f34937c29086677c171c8c717ef656cf4f0795c6e29ca685be13b42d85d9b642c1bd9b7ac14d8230181302b4e0ae92de60e8fa31ee93dc84ba253739b9e2a2ab3804d8b9883b924a6576a567c59b7799366dfdf860abc383416ad1fb94447abcd0be110c3b32c3b0a1b82cc6b0c22d3f06ad48936618f1d962c01660ca8d4bf8cd8e807b7dc76e714238a36aed584e7c6bde9ba902129b0dbdb348b8b77be1686c9cf45c3e299f8ce30050bcf708c136888f58c9bec1ef24495b101d487c1a2e284d7af443332a3d1d2e46daef12897631f5da5742d54749e0fd2d3b1e2e2a87d5a75f041761833730bd6f254a5e70379f361d0cb456ed57e1f8c3d0e14d9ae082ede1ed20262f57a1a891d0cf8af03ab63fd67bef777021045a5e98c955977e30deac457143b3102b324b514dbf0ca09b5571db68ed31945a680a3772114ff85d546aed1386c261a07a585b64221b57378959b41724f58b3ed2b7a1357f93d6ce0d2fec0af1db7acd70c188bcba25995747881160c6bc36c5e73679df61de90682f7eebd2fc689589defd45114b0c3cfb735fa1056b35c91051a4a6ccb1f08b0a27f11a33e91ad7cb0df2e2d93fa0bd54290a74320649997852a143805975f9c4b0b97c83585c5db71c725da330843f99c44debd766ba95177bfd1baa2ed006be1a1aa1a2d125a8f833cf4a5481708b60c84479be4404b61fdbf1787571c9ca193c232b2a8fed7872d4e7077f3384567fc113b3a59c53f60bb41e9644e6b6d3981999bf28f3163c6844ce81c424f67d49f0d707e9e64f451d2e003d95c6d489048365aaf3733ca653b4081f05ceb0d0e85fab17bad8736e347d82e398eb16601826f9ac3105d83f8e8dd4faa61b58dfbf236552dac3aff027e3013bfa6c6cade0069e423a19e95c5f7871128dbefbc77136396300f858d7894f105bc543d49f5ac71e5d496cf9b8d8d96ff03b7023ba242516807f0b738a542f0c830ac26ddb1480337279516b84756ac0ab753d9ba1c0d4b69a43078ce2118aa68a090422f432aa6e3291bef6407a98bc3236a7c715661d3fbe09919b9d7b99da005ba432f7d7440c4f285ffeb9f58c8570211436eeb9c7c091aaf267ee4bf0ce454915e65a8d70b34b87cd2f1a8cb5bb80ea4e49d0adbf01665f15af5e545e5321c8bda741605900de0fe2e5791de048fa4e79c2c582cc00dd560cebd0ec4c8a45f1c79416b9470116bd17c51041222860761e273300df084d8b17f4daf087e9eb2c17aaec7b1891fa8643064e923c8c0112042652a4685b32bd204d6501dc6563a70311e76031d79a61e9050a27b932d1330c2136de981ed7c3b3d22eb88859ec186a074f4b134ad515da44158b4308eff5bb7d2cd929af495cdf3e1c001bf46f408833561f03b53d65b2988f8bc36b657aa508aa5efbab331a101f19f04761948fa3b54ee67142dba165ff4058532833901ae4ed2c85e7a89541c7beb6bd5bf5cef0e13afaf13e40f0df12d30b0aebd3fe864570b9e431eb8cbd2af60811a59283770c819b0a62850bd5acf5c080381d3672fd87289710b6cd2771597f3fcfbd554a1ef9215c6b2d7215a9a64a1c3aeadf0af97611c77499767b9d5b4ccd7de05510e4eed98448b4ca5cc0ebd2e34644f460684eb09c42300f81c0331621b4a68d0a84f4f83c4027310b56b52dac75c154ac03321917f9bf1d7673db74b36118a24f5ceee12a84a7cd9130c0877b2e554c63110441daf3e915ab0048028d826e505db8bf9b19e81f6450a444307094a2c38cebab22a8adcc65b5d2eaecda287380864d6bf0732359b62f21462b1642f970d1eecc8be3ad5f9ca1da7d41ef7b17bd4ed7f29070f122805f8ad2e4a52a0662ffcc279eb7e24959f68df7424c5e23f8b5f62d5e8f9dd1fb0a98f3528fcf49182a4faf26a28db9dbae83fe28be11ff88046b27d052043a9a95c7663e3364929c28f622b5a38a2656a381c3b190a7253a1f94a6bf65924f98a7b57214265f58340654768213441fbe84487f73df60d4ee2b8b61fc436b879702c2c0947b0bf40ec57d8abb711a416570af83acd8469426b1a7764aa83dd1d03ab15b8f5cf3a607c87c0733e562f40b00839bdc7af291182ff9822a7b6419659fb26a49af5e4264857a71af4ccb1221356e019330b859cc4e28af30854df4d29be120ec4bff74849301bb3c40c9f19ca56c0c0450e4900fba1a74f07349c96dc0d47ab695f295c130bb47a46e7128cac5d88abb1db02cc8148ffbede80a88120c552d5f4b47257d529f2b2ad2528fc6c7b500d5e86a16f0ed38dca69cd16890d869029ddd9647330a4e31db231e1a9a8e25dc9cca3b112b642caf4967c7a43df4078fddc2687704a6c43c820ed5fafa8b6bac55167b45180a2aab9cad7efe7a23f43b902592e1c1c59e5c287fc557566d367c82858854f1d088a1c8528433d4ba93cbd9ef67fd594ad63a7595734237cd2ed6f315295eeb0311432c5f3ff7f032c9109434f223fcd54c32376cb5c98e9dfde9b0535f793f9674606855f4fdf967966ebb4da840cb1ffb251b3e8f3994c77f5f55395e9f2a0419c1066333a9e33511d5e9ad4939835d0f553486c01de189ced04079978c8bbf2bfb7dd77cf46fbf91981a23f854aceb61b366dbf489ffadd34e0256d518208dba605dc39b9d9c3496fe878c6889680395e06db234865eed3c10832bd416a42fe74f8dabd7fc7373bdb110bac8214ab352e93ea08600ed1ec9369088bdcebd51af949cf0bbac1314cb5772f51150f82ca2aef79e88d8f30c8fb02ca3261e80c86948e2de0d39ae145619e26c19086f0d0cc155b9fc94f97b40384b1ef9c9463c5b28fa802d3435529a0e0bc3274f8d8ebf68c1d6f47edbc514afddb4d0bae8bfae83f5f04c4893f1783add677e4c839c36952da4d96cc9e03d2b8eb66970f5c43f88df0f290ae778a03bb746a89eef548152bf4e560fabbc0997ea98d168f833b5cc36bf0040a1d87afa3e9abdf3dbdfcf110172fc54e9565522eb9c191475639b3b047360df9e2485cda1a0df635f1c5c94df1b3d83da57e13cfcec331a8cfc511ea64ac3d3c5a4560c0f2729322a58fe3d8d6df255d878bd0cfffad7b134ceb90e8ac0f46360a97baa5e299b92725939a1eac7179917cc3bf5d28572555370ccc846efd58edcdb9878fdde054b831be69a964027535952f83dc48b51663a0fbffb29d4c778337661f1ba1f1c98ad35c32fdaec86676470bd801ad5729190c53e7c091d9ce980c9c01c765a2bc69175e5550373a76e7840869628a1947ab1732e3585c812a09daee374044a709e4cb2be7d741faae1f39decfe56b09f69040c7bf182d0edb4da70f0fee27d7a1d62ecc8b74db3e64dd19467eaa54ba45729290a31a6e47c3ca90a5a4d274d282ebaac70dceb9bf23e9d0c16a1b668e1f06bf386ac866ee66606ac3950245893328ac3646c6bbfaa8a2d93ee409c9a273b5fa07c780abf82d8669a028c714872b969e6a9dacef10484404664de0e69f45e5210e78e6c243d70f4330a070eebb55836935af8daad386f9910c0472f39f2aae3d8d67c6ad53b511d6f0515e2fcb887af764ca1b216ee509e84573057754c9a38ffde6cdf00c6eac4ea87530fda70ca4f9c56d2375becb22853ad82e7cbb8408e81080dfa79b0fd1d20a3131aae65bbcdd7a6ce817e772f43a3df666ba0e522c726702b6654b62fbde5e3e078c130100c6421c3b7b1c9c20088d4255f33f8244701f4e662a24a71f55b664bdf9b438f178e575c384b2820665cc3b84627f420011b9b5c78a757829c542227be7adb3ec2c28bd9cec54bf29d8fa177aaaa8d036e0b1d82cee69369d53cd61c865a3482bfc22ebc353110dc4054dd369d6ef1862453799f78f5acd46ae92b62562a3968d1e965a15944a024d2a2fe0a26c10100332172e87879730d64b33e83fb8f0d99bed61561600191dec20ae7da6ad3de9a5e76c961d592e4d47b077f94846bcc13af5af10e6e19cda9402acc3d9d32ee62ec07f5d2289015be02fd2e2c89afda513efaecc4434e960a7f96109a51439874bda681f7104141724719c2fef6f5fde30d58f4524f9f4505c82c04c140dee632c5f3d8dde84fe49cfad48a3308449fd866a579c336c4a8b6b0dbd9e67815913cb5be0f3a1248ea3381e4ed4b9e9e3733a9f405eeb8bb475c7affb95d0abcf5e0355b6199d26fb9a2e27eeda223f3214356f8e7ce46c69abf323223ff7d3357ac42a426558a50d82af8a6005fc01f7ec260693808c7fdd6effeb2dec2a6554a04e7984579d7e5e805bdd4a7d07239e18776f310b3a25f86d5327b8883a3cf5bf39752ca73c98b18d6b57c60f3f4f12a67a124b185b6735e29ad957b2520956eccf65aa60034b4928a2b94d9fb31d9625789898d76f9c12b0d5245ad1e8f2278c96331dea43e7fa777a0a079ee53e8f058c40edbc43b1f9b4bde6054fed3fffd712a819e6686d0b6974197a60e34ed00127396d45a3c9cf74183ae3cd6385836f19055c16c02ae049e36ee258b9c2f27f912de8e8b4bd473f2b681b364cef4cf3aad9dde13b6036b742d3f42633aff770b78bba3612e493aef6152496de7bf064418a75765369a689ce2ce994455aca1dd2f61338d8a87024c82a01fbd0a6d7f89f6634a62c8ae711e32fd07086c23c03bbc36b875070cde526541aac7abf1c36c7fa42937d3144853999ef452859e1189c26392b0467a71783949ec7f27b483fafe573b6854c1fb26e6fddb28685cb5bcae8aea1af435c058a0aab4692f3caddc8acdcc02f0fddcf0c9a6a7d3b4937e24069632d1b150a3f3c29f31a49a4265d5c02ff084824690237d8494bfa67afa1b4fb2fdd7e5d0a9a08b00feed07300c21b36bbdc6882d3a22d2b6fa5f89640a6fb2f026ddaee8ce3d29f37515f78be386f2edad4746f2947c928f480728c56d9a94e25302ebbdaef3c9626c909942e8a6bc82725e9c402f393aed9e32d94190257ddf71e1b5f819b4e5e8afae3abf006beb39fd9d4d4bae38745cdf08a91e6217ddf25833c8d4b04751b603e58ab31ed75b7e0ab09a2ca94e99955f7fbc63310466321ce27c906227eb4a7fad5bd6b5eee70e2ca4d754c7304c93a717175cf65914f96f20e2a3193f02dc561df72d5b987ccbd022059fdb1bcb6899c3e94b403997a0576ef3e1afb0f9405291a7d38bb1d0da1ed01c09fe85fa2b1f4d5bc708e06bb930efec672db08d59bac1378c01bc0f8fecb959da961a63a3fb745f99ac961063cc22fdcd93a39e581e60e8a8d99b28bc723c14b156d7f7fc8ff663d98a857a3f5aea90431f577e3dcd64d184855b245e5c7acf21910a0aaca590f1faf094e400da5d30551d11eb0d5246deb223056caec20396f7b0f080ae005faf34b097ed3d378e1245c5a15ff9acc82e55441c3ecb63932d950110ee7d7e2266605dc631af20b922fd5969283749f4d26f0d851e1fa4056d28c57e9fa8c664a99ee852857e530f1c4e60148cf7854ec869f46b624083bbb2e2073c23b3d06aae68635b5f5b2a031be94b540fdc0608830973c4e1a71219e477b470b7ed77b211dc870410776ec13a1b7bb759ae991567a7a1ae6b19400bafe3b61f3e8b15172cbdade040e48eaf1bf5b1f38158c44b91c2eb6e509905e1becec6b98f8ac006709bfa5d85d86e34a46eb9013cc7125083b8096dd146e6498a61f38bf3bc7215c1c9237e92469550bb355545bab88b1392b88af3a08d908866f4e9c5650c5cddb0c8e021b0a3f8293cef6616feb3db5ded9d98a694e8c7196a06690b2e816ec6bb82689940d281f6504533f37e17d94a894bed0b9490967e8dbcd53725c0f2af9559e58d4b19bd14d3707974ee3ed7f3795a634353c0f50e111c7a088d9b4c9c2991d6307fdfb2077f04275c9a9e3e68af2e6bf5d9fcf9420067899f1f67dc3bf2eaa25c60daf0bba3645029d94b14708eb33548578bf5f4fec98694991facbef63e40e4ed5a8162c59929d747272b9b783d71b4ade02d26999f8fd87033f74af5ebc44a55badeaa8f9e410a1d3d6299fbc46fc57e7d14635cd5cf69125710ed021ab7305586c84644a03a39f8e90edb1d034af0081c7cb3dc71ca187982c7c44f6210558ae36a7a9bd2941cc8e6413e2b46b23bd2d97a70ba01959f0fb5ec14f691a8fbb7b3f0b9c485f71cbde6ef3d0ba2d03fccdf8019f2e3e189d4e36af66f4e1777ba19c6387a30e66ded163619500aa6095b881f62d7a255bd31eeeab9a829cf34ec40e20a62729323efcbe238eb45215062a3a01832f54ad0950d22176d99c61d820af2f35f88d578162c5e5e48dbc6f67ec73a6db0fab4a4173c26a95b41521c4ea6c5e577fd7f69c66aaffcca23ebf820ff12a116af325df1f8a70f44b397709f265dce57a63033c6929c3292e1c01fd4bd43e6d76e6e1c30d19d86e7154b3fdaaf04db8e1abed67317bff9600cb5cafd4a41c57d37d5f85f94caadce1fb1e73d1a297e12ea6a3f3c2ecc5abb0ddff89a457cd6abd753ad996fe58fb2b2f43afeeb2f472acafda80ed612abc22a4701ce1e3ea1f1bb4282bde846480e01e447720bc2d59d273e083e8dbf9b67d4e8ad3e16ae3c2bbc94fea2dab36ef28f75bf1eda75c0278e57f8ddea9ccb267231572665f27f38c2c3d5298e54cd9d545ac1be140c3adfeb7304d60ed86322e39aa1d01642800ba5ba65ba60fa029340f2bed3b5241bc55538cb2f3f8f0b4e2e8b3c09947070f3f8c83f481914c9618132a5afd17dff3efa76e64693c2babd4efd77812403b34a534dbc90bf1092e89ed46d16a1389bff1fe21a1998e7e964087b9c7638be2b5fb0fa01ceab43e4af8393b805b54ac2bd8642a1b98d2fbcbcb4cc072a11380c826e3c8d58ca08df21e8a2436a3fd9a64ad8b4acd0ce7bdda3f42eb0633850ed150fef0a0cf6193cbba8fa740e7505925424a595566721a557cff3ed308c69719a44ba8f7cd9536f6c602fb8f1b1eea8ed6749ee37dd96a2452da0d933941273d11d1048ea525f033306892835b0a7a0999b13853aa7321a39e4baa04e5d730bfe4e52d00ce82f2ae62dbd8292a4a6a3073b6ae3593ed0f318a62f854e78ea4af5c43404a78bab22d759d928ae37c946f03e235fed61aeac1a6fb8ed6fef261a95442173abd723134bcadc3fc9ac2e4dc100b3f1eac0ff962ca7ec41d89bca3dfa5bfd71eece8cacf0a40e475471bc47510bbd1f2f43317544441be7ca4158faa2d391acfed013e46ef4a188223496c0c1539f4ed85e330381e1ddc84b052297f57263e9f8691ef29406bbf4e20f9e3fb7b46da67498f9674bc1ae8c023a8c0fc96d5bb93c7112862e5387d6898e970961beab2390cbe97dfd28e93597f692c68c163f6333cad95bb2b3ae55d26dbf43350d0605bce3250fcf9d0a00471cc9a4db42f8ea95c25ec646080a8a59a30fd1e6a8986e0b180d2c87c0a738c80a40c09a061dbdc3aea33c37eb9ed02291dfefe743903181020588626911b4ebf697936b02855ae87fcb6f0d9cb1dedad064a75a61d46083caeded9543bf9b5c5bece7fe4195f8b98b5ac790c4d988ce69be32b36b29ba6793ef6bc5504527bea504cbc1859d442a73f4a8916a71f1d563be22f2a423b2a16ec52c5313f28e138c960f13fded59d8471e8f01583b2b6faa0457b3659c527e3999266713f0593c4a0ca65c4697cb096aaacedac6675a2ff151c57f7251e701f690a912ef57739aa24551459044c6241290db9401e130868fa978101a9fdfb93fdccbe5ac8e47ca30dc2b896aecdc476f2df441847d074c21649613c99379d5758dd54830caa52dbb7ec011a116684e1cba338672b37349c1994b19c836e3561716d8459074e2a082d65a28192b32eddbfd7587348372395b1c283a723ae4c18095a43353f669c9e1f146d761ebaa1524bff7896a63b7de1037c2a312a853462abb551afe38e2f4dbfda104c1e83557abd7286969a41a473cf464efe6c9aa75f28aa018ec9a674238e2e45a02721db21015ba4b2e75b8d8593be1f7ec2ea0d18ba613478f6d3b2aa6c8d0efb3d7bf491b2728187c1ac1e3769d74c207a6b05aeb3a235156c788338fe6a62b1666628ccb343d6073e564fc1c478cb910917bee819c5f36a483f1527425e091bd2422ee25938570aa7a0e41017db7d9f688590acc23aa4fc8d5c83f217900dde5fb32ced13126ce7c5a6c6e0b815db6d175629e6136aa68e1c5e0cb16d5064d12cd1a8a397615b5812da7f23bcd15658f4d9e16769511a8fa2d12e0bd5c838d8ca8f88d031705e924e10a50d8e4e96cfec0829a6f590568685ac41f5cedae5790dcc9c336646c35668e7468899f364b678dc2178a89b9d54895f35c397fe0aebf02549fff0efb4c02346422a691dc0a54fd0beecc1507bba34ebf4b12f2b44f6aa93f3c3c36e7f5708600a46dd271ec54ae4d12a648ae6b0b8748781dc689c3180698ae5b022bb429b21cbb31351fd299187299ec0933063e6d673fb5799c8ceec19e91a1dac892cf93f58ae26dbd69a585fa4f021689b249de5e4d393f2ebe8ddac6b7cb6d41e5eef9f3e8eec1da433cff35840cf31febb7b70ceec3ae98f32c6b5e014c769cdb8db43ee7a848c646a74b3c64b01f25d86996754c44751dd40c8fff36df0d4738889e2d23bef7a42cf146d5c64c7a5420dabb15980857cd352639269f8682f5d200833d9295b0e9ca20ee270caf24a8161c5cd878fc3c59a488082226ff108dcc65a5bc30e752d535182b464b284240616e7959ea1d9aded9b53083ede31cc43358f0e2f378be90c9d75f653a95c9dc55c0d40e243b976d96bd5ca437d6300424993fd71d9fb5643778f049f2594718c1c2397260b6924241f33314ee87f74fc8181f0cad2439da2b5a15a6eefdc390543bf2d14d67b7fab4fe55a9edc66bf9d38fd6edd414b5bd9d62d19838b6bc1925e5364e5cbedcd3cc23acb55de9409ae4f6f100015acf312f9c21c764c656dc6ab73b5d5261f745918a9dbe258d0b1262f911af522ea7c0df2d382390aaf126a2e3fc47b3ced9133f4b320df765d65aad75bcccf7db458195b8182c28bf696d35032b576ebece7c0ecb12d50f5a53d9bb182d9f3b1c89ff1d1a1391f0e285b68f203c66e464964e184615c88d04363beff79f1a8fe5066ba5cd2b0bd397c303cdd283480a6317dd59d13817879eeac80a9c37648a8c51d5a4e67e7b76088608520cbd24b94b080150547356792ee4e535f372a79b015ea62e15e1ba96b8dac643de94fca728867862466c959272fd5cf4ff8c74abd6e17e9068a4ca1154514082952957ec7fa2f0eb8910f8eb7f846506ee256776ba4729dd7ca5220583836bee19ddace5e06e967be88015d8492335daa08ce39a236618f520ccc40dbef444295a0a9e8f5c40918399a00cc91ba0bd79774110cdf6e652baa6cfadb2ea7dea94d60f5c6a880882cdea233c33cf6b8d394e216423d55510c6d58a89d4edacdd49001fc70012226a8ea4b2bbc8856ebe4229476ff0b80180f59f740800f1c2b191fa8b9d768a499e4b1ac892a74e6030807a931b23f882ba9840ce67a6898e3d4955f99c3ea93de28942325d103b15f40ceeb2cf9ce9d03111db5943a05daeee49366bfa6d62a9b11520b75a9f944d1ab2ba9c3433c64209755deed6732d165b2249819722d83e253ad6fcc699146bfbf9d854576d9d454f55be61feee3557f12966d29940a804c69392accc70add70ae69778382f56c70fc0fe1fa93fc32414599b4ba77aa505899369e60bffc549fd09cee10b0dbcb5d576e4e2d70494b4f9feccbd2ef74bfe886d13e52f14e202635f5c152061df9ba5e9d6e07494568f8da729d5b5fd5963f8ab304630a503edd3ebf467523f4bdb473b2241bdc8b5cac1b4a0bb9f8c36d39c48533da8f11afcf4cf47bb3d8d207ce38f0db5b710596ca7cdd79f24c7b919580897bac51e2870163fdd7f69b039548312174d4efb35d274af876b5492f92d17d1941381bdd984de2c32d3c8e851c9be9f34f240615e1814d89e87b8c3f02518ebd768bde92e86134ccaf126c082542c1f5a690da453532ec00a0f2eba54fa5eff5619d32da8de80c714af672a65d300b562e952b10765aecec45fd09d3b414e9a99bd26c020a35de3d2dd9bf00628f15760fc4967e0ed8240565878f9a8124695665dfbe7ea4e1f04827b367d925a808ab694c876925078f87b792734b5a963993008ce39280fa4bae08cdf88e87f64a1007e3f5a392ac007b825b150a431f629ac4dc946ca3318b421d8471683dffe111eecdf0ebfc35fd607f39893319aee998491c9f1203497a3a3acc3c8c1253a8c720a24a92a390003b0663a88b15304d835ff8fb0e3cfbc945777432c86b33b2a1ddbf376cf2ce241f11d01bdbebbd8b62364c90298bf1eff71eba91511e98979a486689e928ae62f002aa0f27edb04be4e0e6f3aeb4d4ec62045047bac2f5e0dcf0fef37864d74a02a42ac99453cc878b91a661a243c2650df82193d1263a2814f631740bc4231d99b1653ae1444f146cb81d0b8db6211da2deb550fc064418936930da0193c2faf1f76eeaf3713d88419888d614df732e88cbe090b44f5ba0834bd89d554dea0b6be33f4e0ad50f2ed1d914089ee50907acd8d1f9609797ecc6315d41ed594173509961d017b9bee2e03a73ba395754440e9c99e1c01cb149732601dca147765f960cad3e90dc2977928c8f43c5a0d3b15825f531317a8aabfb33373201a4f560fdae7dfd698cf45946ec7ced8bba365bfc78cf12efd125ec40aaf8d914b6eac7f122773fb9f24372bb512af8944c05cfd3d2a5cc0192c280f9358e116fae16108d70d98aab1869f68a9477170498df868488d75e8aac06ab2e55a96a0489e95b59ead44c695dd2c0d7ef514c0c4d4d2ae2bac525ccffcf86e119151cf7c9fcd3add0362f02ef2d971bf2204816db8122ed30ea01295daeacd7a73ccd805dc361a8815b682925fd6b176d7ef55faf4363b8bf41b4dab0e28f0d281e50ea48b3b74cfec653ce0ef96480df5f58ef27cc81ef0b82240f7ae6d9d1fddffcd49124198fbae9a8dc045f0c6eb88c47c44736c75f7ab033c4451dd30324f29f97552064e4dbe6e5fe3a9d6761013c0970fed4330b4159ed8783ddd9efec59bdd75f375d7ac09bc186c27439a8feb075a7e3594ed1e17fc63e449711169a65eeeaeae7be5c7922145b83393eb7e70f1f3fa98f5d22534b58924bd22ccfe6d099561c65dcc89978bf9b5bbbc38314c33fd73167a278e055c729bb80b23e5b1c5c143d3db88bd9259254210e6b6b936eb2ff4a64d7c1c15adba59d54d487acddece5488150651fc063ec800379aaa49f5efb66ee680b1b5de655a0626da8d1800a8b51b93b9b452bc6491c47673bea11ebdbe2f1de7df4929913e1cbc2b3855d258a5c4a3efd4f1cf2083076fa56c51f1c47babf43a74ffa45d930d2e7885d47ba2af98722da1de9e79874975ae6463a32c9b7751fae40c5895f5544687336a8768855da176fc1596071c350cb7e936e0831c10d20c031cb5f504469655f4e310533ef6041d3db696fa40b60e6374d2524d6549ce222e395f7cfc225301989981fbad2498ac4cdaa243d73714cbfa51bf904673a1006de222ef4f993181ea0dbf17e183187373023677d1b3fcf4a3cfecde48d11c932de85d8877680cb0b15d7b32c1314196f0ffa94880ffd4cb7d3c857370a491f427e692fbac3df6c322c0504e69b64dec7d89389105b551034cbf067291f440702cff2230f07a3599c4673069c1e51028874e4c29441bb5a7c7ec2439f8545711e608198fb38dece5b69a21999d396bee9015086ebbc2013f044ba8e1f84cbff2d6dc6d2cfbae87d861085536689dad03fd4dfad36edb2251a0dd5b40d0049cfc3b89d29d54763298c402353f8c72026d823fc0aa511813f3beff3df69f431ebcbc1de2df3f23a5186fc9fbff982b5f2eb4a215c8ec1eb1bdd799b6daa742006ef73e7543021b7ae6d72cda2473aa1ef22eab413648a651535ab40dd193c804bb16123cd09d04d33e99231e7a804bd7e134e86aabf9499d9ef2f5b13546a7d0e113e141e8f935076d87ba185fd5ce26e1e75f42ecc690bd059ed21d1fa8104cb4a17766e6b76308310a9fb31a9da2af1c6c6c08265f8483a2fa338a613e211e2be86ab87bfd02d0ee04051b09c22880cca356f39a87556b95535465e3de6412c1b48f9ad73f4382e6204f0eb8d5a80353f3d96e85b91fa65f977540f7ae68ac2eebd8ade1405fcec187918511bd820ecf039d562d6c29325bf0c4839e2ce6d9f9ad8773bd243e656b5c8c48a389cf7b7832e25bbb000c7edd18a55fc221b83c6ffd064fdde27e8be1a4505f947702eac072e9982e984bd0a226d73031be0045f0726e06233fa3b785b43ff6d602178c0249d09524c91bc59395e716758db71cf82323968df81ce486b77be0be2913d844a2637f14100b947ed034442d04b4c538a02ffefbd6352002e3d980b56a607b9416adbb78c56d2c618ecc0b5140cc6a090bf8c0767ca6573642875394751f4afc1b9c92424a95d63d1988fdde928007f444b0d586addf6ee0df5e5c3f414118d4e2e0ac13f6f99f0d8d6c57e5068983c11c4d87030d3f4237bbc3e37028a15dad32f40ea16af8fd2902a64c754ad8eded2188e47da90c1a4e1245c7052b0473919bb466a7376b3ebd778c0b9c10f7e1855804630809bcfa7640eb7f864bbc3e849b8cb3b5405885d679fa3086cbc16da888d86af54aaf053680c4f0bfe2e398925bfb011ad9a6a7e6afbb326224e212d97732f1ab5e5bfa6034959cbc44a9e0df0f817002ebc31dfd5aed67a2db6a5517363f3677742b8c0e88fe2ece2d854cfc345e3176c563d628dfc58b9d04058bddeab74420d9830ca7113a483f37f6f87c4a86e067e4576d1b24726734d75b56e76a229da6672db36980291c10e205f143abffdda89d9cbacc6b03ee40c387e24e9de7eb545c6ce01e07ebc8ac9f6c9208a17d8b3f816650b20ce61ba03dc631ee8068baee539cde3ba776b0835fb060b8fe4cde73f4dd1202d144c46b3ed92353f8e6a46782bcaf706d2eba8066b56fc3e046a7234539d89061cef489504d4868be941961ecdc1e39ae5ebd879604ea3d4b4e7bc82b5d30f5bd73964817b7b658cc6f57ba3aea2434ffab3598f80b5eff4a802f166e59c4f84df2c018f6dc341a04c4f5c46b8f578c7c34d497a3f4c1aa76470b5a7a97424c8d67b64fbb2891b6c1ba972ab544b1d9235b47a3ed6bcc58441a423bbb3a52171fcd3b84d8b36e332a55221a1c3e6e899bc43ccb31beef6ad0eca031ebd11a7b7ae35192971d6a883b0ec00e4e7ab847c4f4fcbd5251da4df3c1b8dccd9b477553271327286d9057b353a764737aa17f219e9e409ca2e97f079863ccf9f1f0f6c16182644a98d9c7be38d46b8f1560177ec62e6886142b01080e258aa27ea41be45ec76947605415816ee15ae066097f7974f59835baf07bfcd5e72bc794208b595ddc0015ad3c534ca4f2f0c75064f7a83a0e53c6d07fa75a0fcefe3b820e602645232cfca1a7ce9e1e76e718bae3b39b998919f8272cc1804e3050d905371fb12dc1568631c0ddb82c0d31a09e6290f59ecf15c047c7fae3cd5e694e7f3be420fe60a837717a171c4c27f11a698b77c04ea95b1175f3c41f9db1d6df859fcc13aeb2569a47198c52f219d889ab2679b693d7acc95cf99c61c87311027fffa3886fe193b19e148317b3fd39240710abd893bdbd216dea4ebd7aa7fc6a67c3d8574d6ec530b7e2fd82c54e684f88d152d29ebf2d8148830647eff8d9983cff246bd9e10e5d9cb254f6ca4dbc1102a9397e78490248b7b8c748c5d80524047b1987bb4c0cd7058b63d2178cd332eb571433e579f545f456f403a4eb72ff7b5b34ccd46931363d9c268d345781b32045936ec43bd986e7de80b970121f1c7092f504ec8b3595924a9b9d6880801950caa7170b6d678958dbbff30575e07ff7c304b23c3c7bd9b885c8904f51de87cc0d881595cca0f5cd884de88328be5be2b80b3219eba2d197b0ac8465ee3d932c0816d0c751b9b642b8fa9ff6daf81d8a0cb22f764feed134b74dc8b84ea036ff4c220815d9832fa8f42a9c8224cd71208861c99552f1a792503fb01ea2010190c4993179772c0d17c607b408cbcca84b03abf031248f53db057bf472193f1539c2456fd18d29762668641007b7a6e7a902a9479b189c77fa035e1858e642ecde50140388b74b2dd74326fc5b3deb1f383b66bcb3437885a5bfa91953f78d1f1426e82d246379eb40d6c419d0c8c96dc5f384d5d501674347d8a55cda5a3fc2075a922609f9fc35b7a808c147076fdef386cf9c1b2803840ff2eca43b6c975e96e6cb5d9b55ff798d9cc2487f474bb8336a71d1a95615f30e48106a9e3111e730a025e1a4901756c580409cdc111998feb18a41ee4709a2a03e130286a48df41bd2ec599f9b40d7d204830adf1e6f0882e43aba7b9e3128ad4c6d152e9a1b381a1e4948ed6028060fa6b5852e50979bee512670e466e0ff70a0032d1a9ae74e48e8a690a9a42aadfc8b0a2bbd096a22991d3c3ce771c08e42685774372321f42900ce4b911cf81a526c56b58f348fa50ad6578eed57086cf04a86dab6de6d52012ab8573a83bda715cd9d33a16b87e6362444ece94a0556419892ac68ae0aa860c806f91fe76e9d11fbf69520d687f85dce60e32f58bb69d127e0162d156cb28b92bc9d1f950f946ce7bb1f0b82ab4e7c0bea575ae3f5ec42c3704482d22a773698204b4a04fe879c52232a7aba59ac5517d6778de2a3adf038dd05a9f1d6139b609a714fd3c2d4328c859039176c7ee45a37fa40f5850f19dc79144d7c327871e6e65685d3402ada4b495519c9b9544253cd89efb222eba4eccf1addafab38f580ca358093c5818732347d4e2144ea4c6351de7c138c732c575f7b7d6052e5208580b1a658592e6dfabf03ce9827852649b6fa7d26fa74b24e06e76b4a506a07ef4f7435be97f734bdf94488a2ac573cc8c9d09641c5f664d8dc565f2f753bf138b0828dd446fc0fecd0e6cdbad061c114ef5bfbcd642ce5502dbcfb81c2486ec823bffe67559a32afb23ed9ba436e13aad253b029d19ea33d90e193c6971bcdfbfe2b1d8d862b33987af9fb1565cbd2e31b8ae3c1b25b5219d0d840b8e5bce90a403b3dd5e78ca07d23987fe777d98ddfd8f00d14ebf6d6e29eea65d017d87c430b4f03590a28b284031772b1ba2035d9b05b24f2cb9b23e7bd324bcccb5e3fcc57d34aafa48d482e1e4e938d0f840ff5b62c1bdcecff22b7d4e27abc07a73e2e4f194e104b8607fa9542fa50795ca4b57a04eac283e159c16e33aad21462cf46da48e01186a17f8692efc5c2db653d6722169ce721cf6c4efd2205a977e44d618fdcc481921a1cc1d2655343ac51c8756fadee36522229ce9032bcf6f7f623d8824875d48ab6909cbaa1a69e55a4a0d0cc99b420262284d8b5f676e7ce08a8afd4658f95a7e5001fa14055e9eb6a91afb071b24e89e402aabddbb99cc7f4de910de2c9b44374978b966b761ec3342f465212726067c0c9eb712380cfe921be1fa0b58d2570b2c8e9886b9c4f33ea63ff75c9a70fa156af3b882a424249e6339bb391a8422ad454abe809dc4e00a4f1c871dad26ba424fd0ef42c160c021582e799648250bb56ea827c2a320366af7640f6df7f2287e2a271a7b833e886d965cfd157c8c931d17dad239393c9f4bfa49996eecc37fe581ef2ae3403794da2cf7482a6eb6432d31dc64ab5a19df2d250c68d97a3b60c78385ae9ee25f2000cb8cf051ad372eac714572ebe4b5683fb1baf1959ec0da542b101168e0486873b23587f7dcc766bed226c1068c8bae95b60682e2ae93cf1bdf9939238379efec5d41ffa8e50c186b5d1e2dfd4265bb58550942b98fc670cdd24cd1c92117fb4d99b7b55ce12128a6d662846f457f7ff0c9efa4da20fa965563326fc64a157ae83c5f85623d5a6a63e52f4a87168f60c2860afe01fa7cc3f235bd6f3c9be2e997597672332fb0e56eee4f61233fe39dca2313e0eb305c4580d8cbdea9d32f362165c10644253a5fc2fc26d492ea244348b4a145cea555c20c16e342cf19d31c3016169cdba9e8f11a359a078536b7e1109ddbe47a64fc750d879767acc18b8b7699fee9398e44938210e18af8a7e8c90f4f75c8da4671a132f21a85c646478e2a8173401bb973fa29633a8f9b86383f7782af5076d58bf08b4db580e7fd433827c47de6c435b75b275f4b7bc7a7a2a6f443c7179d07e530c1194a396d2bb01131a87e96b1ded3dc4ba29226d8ae591202c7db5bfa5967f32bf6a1e8ad96f87fddc8f5fa2635b779b6ef0f4a682a06d406b7e1f3338fac2f8a5cf972a1f7844981825046ed71bc2242b504b9961485d933e946a1dcc62dc2048df2f99891814691a5605c109696c6616811d90db1fcbdd62469bf3e8a2608709e58f006c5fb9bce6c7ab90cdb2bb4f09241172131ae8ae72e5a079bee4da43eefc6223e17866ac65e44758ff19a17db9a255d7277e3ec0c116bf5b4983486cf625aaff6ee01e345ed31d1905a7583fd2b987ea7257fd3535b838a8c11c199e54eabef9a801653f75f2111cdc6b17f766bf17c3a03712a4d123e5d4dde1fdb1b8a880c484372c1d03a8897fba654f9b467b7ccb5ac6ba994ee740fd42f237b907fe64b0ec9007b7debad92260b3ac99723dbc1caef6d19508707ffb8aef4498beba70340c87440dfafcf4f3c9dd6589fbb013c3dccfd6791743910f902dd5e4889f7c646ccb297d7ccd30c6ca5d2a1acb2d9548ef3e81c36fcb215b23aee2099de56b093c44f138c9c5092a40b07918177bd345fa4159680bd16fa5b0c35a2165baefc772cf9a61fb733f3ce1ed056ec3e59a16dbd8b9a53b2198d1ca7181c2420c9d8f5329c29cb10a79f74806323f4b5239a9340ef9440234ebf0a16ae276a58cabb6923df05f7fc49b66cd70ace20681d689ffbc2551fa9be0411a49f40f97240cd50f3d676e284ad10e7cf46fa83dd85d10acad216bcd601f83e03f7fc3f31222f593841f6b36e8051981e3ce49d36e49a8e51dbc4e1d40c655454984a3fd6d401c482dfdcc74a93b0853918ac389d646bfde95e76024c60670292e5a8d78cff30afdccc7057637c7202db28117b9f3f8d11a8ed8d4bbc075f7fbafd45333147db51ef94cbaa91cfe57c3b2871ae59da9715f2ef97be98dc151d0c990b5b29885d72b21fce3b0e8182ac06f17c6a5eea3fd3c6dfd43a9e115c7fba205b244eeb0c40f9d78a080685a4d716063dead9352c77375265d324a02b0389aab3b11b363287103d5e736c43d1e8b8199181b7bd8aa55ec85e943bb746706a569f5a455594c4e493bbbe8cf32149545de9e4724a3537daa14684344cf8fb771f841643701325a9517c4058c073b17e4281f285ccba76d1c50e6abefd04b99c7f90a63299ebd1f52a18726c63ac1e7662d98e5a4ce253eae6cc2973001b974f583c84459908a1b1a0cb905958a766ce7cb8079387efa5596a0d0cf94978f4cca01f5c914d9e9997c3e9edca8ff1f0392f2ecf4f1b165216cf7a0e43c7fcc34f0999eaa3ba711c7404facffee89af6b33abe17f284443e911eba8d034c3ab2925183ed87e503b6435874f62b4727d0561306523f53c7ef1ae05ecb452a90a72ba288400ef6a23d56df7c7107c7825f4094bb6ccadbdef70acd9eab2013883b4909452546d4b198a536e2de2e2b2fe16338104010caa42928749584ef23707493c3c7460b73a9e8707530bcf688fa6ef4bfa8e7abdfe537275a43106230b59f82686c355977912d4927faa2f8f3c8579d760504d75c9e3af962fff80d52a49ddb8e3758ac9dd9cfb2ffa87f2720fbc9f2791c57f4f38753d20a6d9c2350c1b780e2f4f70a04b287213e5239e9f5798313f8eafaab62b05af021499edf4d4268c2ed19d274ccece6f539d0d7ec47b71e11b2d0af59675d0daf828aec70468e2f77a05611ea60042078df8499c36a604c9ba65ee0d7f81aa10549b2b43d5eae59870203975dc38abf7fd7585925d3f6a677dc9b5b388733ac53f2e51b630b8f086dd449f38b5be09f820d9f99ea1045e35e7fec7a17c9b07b7f0ecfca7fc7b88098cbf4a4f9b62b126eb05129359b7dcc788f4df41ee568e7d421cb609360321486e63465309793bda0942996c15cdc8ba7e46cc9c953eb0aab25d400ef690ac094d02854eeeb9b5935a2a9141c041949133db5bca280f0c5ab87a8aaf6ea833ecbd5c24cfcf60bba7988904722e34b81f21d1816fd37268451defb79785b75de23771d26c7dffea2c2f2e712b207190fba3da218121adb6ebb724b1d752fe193267ac48f56d36e2dc2dd2d4644a9fc9ff2db905612ade8f7d80503c054dc0c1b1c2960ae222e316d75a1859954e60939acff8b2657da86e7dc4938affb48b16fd0b233f75e21ff94348ab0a17621ab9bdbf87a8acb987c761a1212fd738100e8465c022421c3031e4bdb6a7d97106ab6182b1ad5b4ea14436cc1363455746ba36f66ca88b37c6a28607f5567982e4e8c276ac6e18aa4636e83690dfa1ce3c2fe1c68c28449cc449ec38938dac2abd9b19a678ffd40ab69fc5b6882918fc6fd4cb72862af436469e8da59c8b3c2801e33fb471881635e07f7dd4d9eb96cd3ad7d1d2d89703f66df4de47ec72fe239d7649f10f926bc8e2fd8ffcf12e2156395df0a2ea6a0a139937ac835cdc1395b525ded29d7bb113d68a5aeb7a4b93d3e55464cb93d5be711cec881bb806b64db20d516771d00f0a17a43c74d2fe5474fa2fd29c8f14799e777d7d75a2cc4d11c20a6e7b161c5c17daab1162f3b909cea655382d241d55d382f0b45655039db564c745b36433c3909eca9423e2f5b5cb5ed20b1a56f840efea4e94d0f17930f1c4e373179e67062381dfacaeb3eb790af210150381f1095c84e4c03abe5db86367d4a737a83cbf0a17a43c74d2fe5474fa2fd29c8f14799e777d7d75a2cc4d11c20a6e7b161c5f0a17a43c74d2fe5474fa2fd29c8f14799e777d7d75a2cc4d11c20a6e7b161c5f0a17a43c74d2fe5474fa2fd29c8f14799e777d7d75a2cc4d11c20a6e7b161c557da86e7dc4938affb48b16fd0b233f75e21ff94348ab0a17621ab9bdbf87a8ad0c1abfbf0a52812d551552948526d8003ee9f7bbd02d94646afbff1d58c215e8ed31c5188cf4f1e47ed1234a9e9da7b8ab375cf570fe45a43f776337799435c8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe55156db718b3f90efc9b7e41645955e2c5f75f04a80ec7a5cec2073c83886fc8c45/lib64/libBrokenLocale.so.1/lib64/libanl.so.1/lib64/libc_malloc_debug.so.0/lib64/libmvec.so.1/lib64/libnss_compat.so.2/lib64/libnss_db.so.2/lib64/libnss_hesiod.so.2/lib64/libresolv.so.2/lib64/libthread_db.so.1rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootglibc-2.38-150600.14.23.1.src.rpmepollglibc-develglibc-devel(x86-64)@@@@@@    glibclibc.so.6()(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.33)(64bit)libc.so.6(GLIBC_2.34)(64bit)libc.so.6(GLIBC_2.4)(64bit)libxcrypt-devellinux-kernel-headersrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)2.383.0.4-14.6.0-14.0-15.2-14.14.3g/@g@g}@gM@gp@fffWfO/f;i@f:f2.f! @f De!@e@e}@epe6@e@e@eeoem@e6`@e/e.w@e#@eSe@ev@e;e@eRd@d@d@d@d@d@dE@dd@dr@dK@d%ydcT@c@c @clcY!@c=qc*c@c6@cb5@bb@bUbb@b@b|bk@b@aa@a@a@a\>@aaaj@a@`P@```8@`7@`u`Y@`F`>(`<@`.V`+`>`_إ@__@_Wr@_+^^x^^j$@^K^E:@^8 @^&]7@]]c@]@]]]@]Z@]Z@]D%]/ ]^@] ] u@]@\@\@\\~d\n\j@\T4\5@[@[[[t[[t[b@[(@["X[)[WZJ@Z@Z2@ZZ@ZZ$Z@ZxG@Zp^@Zp^@Ze@ZKt@Z1@Z/Z@Y@Y@YYܶ@YdY@Y@YY@Y@Y@YW@Y@YJYYw2Yp@YJ_YA%@Y.@Y, @Y, @Y$$@Y"XۡX@XWw@W@W@Ws@Wk@Wj}WYZ@WL+@W3W0{WW V@V@V޾Vm@VIV@VŲ@V`VVV@VLh@V.V$@VVZV VUYU|@UAUȒ@UU@UU4@UUv@U%@U/@U:T@TPTgTܕTء@TO@schwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.degiuliano.belinassi@suse.comschwab@suse.degiuliano.belinassi@suse.comschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.derguenther@suse.comschwab@suse.derguenther@suse.comschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.degiuliano.belinassi@suse.comschwab@suse.deschwab@suse.deschwab@suse.delnussel@suse.comschwab@suse.degmbr3@opensuse.orgschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.defvogt@suse.comschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.dedimstar@opensuse.orgmeissner@suse.comschwab@suse.deschwab@suse.dematz@suse.comgiuliano.belinassi@suse.comschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.dematz@suse.comschwab@suse.delnussel@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deguillaume.gardet@opensuse.orgschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.derguenther@suse.comschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.dekukuk@suse.deschwab@suse.deschwab@suse.deschwab@suse.delnussel@suse.deschwab@suse.deschwab@suse.dekukuk@suse.deschwab@suse.deschwab@suse.deschwab@suse.demliska@suse.czmliska@suse.czschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.demliska@suse.czschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.dejengelh@inai.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.defvogt@suse.comschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.dejslaby@suse.comschwab@suse.deschwab@suse.deschwab@suse.deidonmez@suse.comschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.denormand@linux.vnet.ibm.comschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.demeissner@suse.comschwab@suse.deschwab@suse.demgorman@suse.comschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.deschwab@suse.de- assert-message-allocation.patch: Fix underallocation of abort_msg_s struct (CVE-2025-0395, bsc#1236282, BZ #32582))- prctl-syscall-wrapper.patch: Linux: Switch back to assembly syscall wrapper for prctl (bsc#1234665, BZ #29770)- Correctly determine livepatching support- Remove nss-systemd from default nsswitch.conf (bsc#1233699)- Apply libc_nonshared.a workaround also on s390x and ppc64le (bsc#1231051)- Use nss-systemd by default also in SLE (bsc#1230638)- s390x-wcsncmp.patch: s390x: Fix segfault in wcsncmp (bsc#1228042, BZ [#31934])- Fix typo in last change- Also include stat64 in the 32-bit libc_nonshared.a workaround (bsc#1221482)- ulp-prologue-into-asm-functions.patch: Avoid creating ULP prologue for _start routine (bsc#1221940)- nscd-netgroup-cache-timeout.patch: Use time_t for return type of addgetnetgrentX (CVE-2024-33602, bsc#1223425) - Also add libc_nonshared.a workaround to 32-bit x86 compat package (bsc#1221482)- glibc-CVE-2024-33599-nscd-Stack-based-buffer-overflow-in-n.patch: nscd: Stack-based buffer overflow in netgroup cache (CVE-2024-33599, bsc#1223423, BZ #31677) - glibc-CVE-2024-33600-nscd-Avoid-null-pointer-crashes-after.patch: nscd: Avoid null pointer crashes after notfound response (CVE-2024-33600, bsc#1223424, BZ #31678) - glibc-CVE-2024-33600-nscd-Do-not-send-missing-not-found-re.patch: nscd: Do not send missing not-found response in addgetnetgrentX (CVE-2024-33600, bsc#1223424, BZ #31678) - glibc-CVE-2024-33601-CVE-2024-33602-nscd-netgroup-Use-two.patch: netgroup: Use two buffers in addgetnetgrentX (CVE-2024-33601, CVE-2024-33602, bsc#1223425, BZ #31680)- iconv-iso-2022-cn-ext.patch: iconv: ISO-2022-CN-EXT: fix out-of-bound writes when writing escape sequence (CVE-2024-2961, bsc#1222992)- Add workaround for invalid use of libc_nonshared.a with non-SUSE libc (bsc#1221482)- malloc-arena-get2.patch: malloc: Use __get_nprocs on arena_get2 (BZ [#30945]) - sched-getcpu-rseq-area.patch: linux: Use rseq area unconditionally in sched_getcpu (BZ #31479)- duplocale-global-locale.patch: duplocale: protect use of global locale (bsc#1220441, BZ #23970)- s390-clone-error-clobber-r7.patch: S390: Do not clobber r7 in clone (BZ [#31402])- Add libnsl1 to baselibs.conf (bsc#1219640)- syslog-buffer-overflow.patch: syslog: Fix heap buffer overflow in __vsyslog_internal (CVE-2023-6246, CVE-2023-6779, CVE-2023-6780, bsc#1218863, bsc#1218867, bsc#1218868) - qsort-invalid-cmp.patch: qsort: handle degenerated compare function (bsc#1218866)- Change minimum GCC to 13- Split off libnsl.so.1 into a separate package- sem-open-o-creat.patch: sem_open: Clear O_CREAT when semaphore file is expected to exist (BZ #30789) - ldconfig-process-elf-file.patch: elf: Fix wrong break removal from 8ee878592c - tls-modid-reuse.patch: elf: Fix TLS modid reuse generation assignment (BZ #29039) - getaddrinfo-eai-memory.patch: getaddrinfo: translate ENOMEM to EAI_MEMORY (bsc#1217589, BZ #31163) - libio-wdo-write.patch: libio: Check remaining buffer size in _IO_wdo_write (BZ #31183)- aarch64-rawmemchr-unwind.patch: aarch64: correct CFI in rawmemchr (bsc#1217445, BZ #31113)- Remove systemd from shadow and gshadow lookups (bsc#1217220)- gb18030-2022.patch: add GB18030-2022 charmap (jsc#PED-4908, BZ #30243)- dtors-reverse-ctor-order.patch: Remove, has been reverted- Avoid use of SSE in i586 build- Add systemd also to gshadow lookups (jsc#PED-5188) - For SLE continue to use nsswitch.conf without systemd- setxid-propagate-glibc-tunables.patch: Propagate GLIBC_TUNABLES in setxid binaries - tunables-string-parsing.patch: tunables: Terminate if end of input is reached (CVE-2023-4911, bsc#1215501)- fstat-implementation.patch: io: Do not implement fstat with fstatat- getaddrinfo-memory-leak.patch: Fix leak in getaddrinfo introduced by the fix for CVE-2023-4806 (CVE-2023-5156, bsc#1215714, BZ #30884)- getcanonname-use-after-free.patch: getaddrinfo: Fix use after free in getcanonname (CVE-2023-4806, bsc#1215281, BZ #30843) - Do not build any cross packages in SLES- no-aaaa-read-overflow.patch: Stack read overflow with large TCP responses in no-aaaa mode (CVE-2023-4527, bsc#1215280, BZ #30842)- Add systemd to passwd, group and shadow lookups (jsc#PED-5188)- ppc64-flock-fob64.patch: io: Fix record locking contants for powerpc64 with __USE_FILE_OFFSET64 (BZ #30804) - libio-io-vtables.patch: libio: Fix oversized __io_vtables - call-init-proxy-objects.patch: elf: Do not run constructors for proxy objects - dtors-reverse-ctor-order.patch: elf: Always call destructors in reverse constructor order (BZ #30785)- intl-c-utf-8-like-c-locale.patch: intl: Treat C.UTF-8 locale like C locale (BZ #16621) - glibc-disable-gettext-for-c-utf8.patch: Removed- Add cross-ppc64le package- posix-memalign-fragmentation.patch: malloc: Enable merging of remainders in memalign, remove bin scanning from memalign (BZ #30723) - Limit build counter sync to i686 flavor, to reduce needs for rebuilds- Add cross-s390x package (bsc#1214460)- Require that elf/check-localplt does not fail - glibc-2.3.90-langpackdir.diff: add hidden alias for __strcpy_chk - cache-amd-legacy.patch: x86: Fix for cache computation on AMD legacy cpus - cache-intel-shared.patch: x86: Fix incorrect scope of setting `shared_per_thread` (BZ# 30745)- Update to glibc 2.38 * When C2X features are enabled and the base argument is 0 or 2, the following functions support binary integers prefixed by 0b or 0B as input * PRIb*, PRIB* and SCNb* macros from C2X have been added to . * printf-family functions now support the wN format length modifiers for arguments of type intN_t, int_leastN_t, uintN_t or uint_leastN_t and the wfN format length modifiers for arguments of type int_fastN_t or uint_fastN_t, as specified in draft ISO C2X * A new tunable, glibc.pthread.stack_hugetlb, can be used to disable Transparent Huge Pages (THP) in stack allocation at pthread_create * Vector math library libmvec support has been added to AArch64 * The strlcpy and strlcat functions have been added * CVE-2023-25139: When the printf family of functions is called with a format specifier that uses an (enable grouping) and a minimum width specifier, the resulting output could be larger than reasonably expected by a caller that computed a tight bound on the buffer size - Enable build with _FORTIFY_SOURCE - glibc-2.3.90-langpackdir.diff: avoid reference to __strcpy_chk - iconv-error-verbosity.patch: iconv: restore verbosity with unrecognized encoding names (BZ #30694) - printf-grouping.patch, strftime-time64.patch, getlogin-no-loginuid.patch, fix-locking-in-_IO_cleanup.patch, gshadow-erange-rhandling.patch, system-sigchld-block.patch, gmon-buffer-alloc.patch, check-pf-cancel-handler.patch, powerpc64-fcntl-lock.patch, realloc-limit-chunk-reuse.patch, dl-find-object-return.patch; Removed - bsc#1211828 - bsc#1212819- gshadow-erange-rhandling.patch: gshadow: Matching sgetsgent, sgetsgent_r ERANGE handling (BZ #30151) - system-sigchld-block.patch: posix: Fix system blocks SIGCHLD erroneously (BZ #30163) - gmon-buffer-alloc.patch: gmon: Fix allocated buffer overflow (CVE-2023-0687, bsc#1207975, BZ #29444) - check-pf-cancel-handler.patch: __check_pf: Add a cancellation cleanup handler (BZ #20975) - powerpc64-fcntl-lock.patch: io: Fix F_GETLK, F_SETLK, and F_SETLKW for powerpc64 - realloc-limit-chunk-reuse.patch: realloc: Limit chunk reuse to only growing requests (BZ #30579) - dl-find-object-return.patch: elf: _dl_find_object may return 1 during early startup (BZ #30515)- Need to build with GCC 12 as minimum- fix-locking-in-_IO_cleanup.patch: Update to final version- ulp-prologue-into-asm-functions.patch: Add support for livepatches in ASM written functions (bsc#1210777, bsc#1211726)- getlogin-no-loginuid.patch: getlogin_r: fix missing fallback if loginuid is unset (bsc#1209229, BZ #30235)- Exclude static archives from preparation for live patching (bnc#1208721)- Update to glibc 2.37 * The getent tool now supports the --no-addrconfig option * The dynamic linker no longer loads shared objects from the "tls" subdirectories on the library search path or the subdirectory that corresponds to the AT_PLATFORM system name, or employs the legacy AT_HWCAP search mechanism, which was deprecated in version 2.33 - printf-grouping.patch: Account for grouping in printf width (BZ #30068) - strftime-time64.patch: Use 64-bit time_t interfaces in strftime and strptime (BZ #30053) - glibcextract-compile-c-snippet.patch, sys-mount-kernel-definition.patch, sys-mount-usage.patch, nscd-netlink-cache-invalidation.patch, syslog-large-messages.patch, dlmopen-libc-early-init.patch, ldd-vdso-dependency.patch, syslog-extra-whitespace.patch, errlist-edeadlock.patch, makeflags.patch, get-nscd-addresses.patch, x86-64-avx2-string-functions.patch, nscd-aicache.patch, dl-debug-bindings.patch, floatn.patch: Removed - bsc#1207957 - bsc#1208358 - bsc#1212910- Remove reference to obsolete %usrmerged macro (boo#1206798)- floatn.patch: Update _FloatN header support for C++ in GCC 13- nscd: Convert to systemd-sysusers- dl-debug-bindings.patch: elf: Reinstate on DL_DEBUG_BINDINGS _dl_lookup_symbol_x (bsc#1204710)- get-nscd-addresses.patch: get_nscd_addresses: Fix subscript typos (BZ [#29605]) - x86-64-avx2-string-functions.patch: check for required cpu features in AVX2 string functions (BZ #29611) - nscd-aicache.patch: nscd: Drop local address tuple variable (BZ #29607)- makeflags.patch: Makerules: fix MAKEFLAGS assignment for upcoming make-4.4 (BZ# 29564)- errlist-edeadlock.patch: errlist: add missing entry for EDEADLOCK (BZ [#29545])- syslog-large-messages.patch: syslog: Fix large messages (CVE-2022-39046, bsc#1203011, BZ #29536) - dlmopen-libc-early-init.patch: elf: Call __libc_early_init for reused namespaces (BZ #29528) - ldd-vdso-dependency.patch: elf: Restore how vDSO dependency is printed with LD_TRACE_LOADED_OBJECTS (BZ #29539) - syslog-extra-whitespace.patch: syslog: Remove extra whitespace between timestamp and message (BZ #29544)- nscd-netlink-cache-invalidation.patch: nscd: Fix netlink cache invalidation if epoll is used (boo#1199964, BZ #29415)- glibcextract-compile-c-snippet.patch: glibcextract.py: Add compile_c_snippet - sys-mount-kernel-definition.patch: linux: Mimic kernel definition for BLOCK_SIZE - sys-mount-usage.patch: linux: Fix sys/mount.h usage with kernel headers- Update to glibc 2.36 Major new features: * Support for DT_RELR relative relocation format has been added to glibc * On Linux, the pidfd_open, pidfd_getfd, and pidfd_send_signal functions have been added * On Linux, the process_madvise function has been added * On Linux, the process_mrelease function has been added * The “no-aaaa” DNS stub resolver option has been added * On Linux, the fsopen, fsmount, move_mount, fsconfig, fspick, open_tree, and mount_setattr have been added * localedef now accepts locale definition files encoded in UTF-8 * Support for the mbrtoc8 and c8rtomb multibyte/UTF-8 character conversion functions has been added per the ISO C2X N2653 and C++20 P0482R6 proposals * The functions arc4random, arc4random_buf, and arc4random_uniform have been added Deprecated and removed features, and other changes affecting compatibility: * Support for prelink will be removed in the next release * The Linux kernel version check has been removed along with the LD_ASSUME_KERNEL environment variable * On Linux, The LD_LIBRARY_VERSION environment variable has been removed - get-nprocs-sched-uninit-read.patch, get-nprocs-inaccurate.patch, strcmp-rtm-fallback.path, pt-load-invalid-hole.patch, localedef-ld-monetary.patch, nptl-spurious-eintr.patch, strncpy-power9-vsx.patch, nptl-cleanup-async-restore.patch, read-chk-cancel.patch, wcrtomb-fortify.patch, nptl-cleanup-async-restore-2.patch: Removed - CVE-2023-4813, bsc#1215286 - bsc#1198751 - bsc#1200334- nptl-cleanup-async-restore-2.patch: nptl: Fix ___pthread_unregister_cancel_restore asynchronous restore (bsc#1200093, BZ #29214)- read-chk-cancel.patch: debug: make __read_chk a cancellation point (bsc#1200682, BZ #29274) - wcrtomb-fortify.patch: wcrtomb: Make behavior POSIX compliant (bsc#1200688)- Set SUSE_ZNOW=0- strncpy-power9-vsx.patch: powerpc: Fix VSX register number on __strncpy_power9 (BZ #29197) - nptl-cleanup-async-restore.patch: nptl: Fix __libc_cleanup_pop_restore asynchronous restore (bsc#1200093, BZ #29214)- nptl-spurious-eintr.patch: nptl: Handle spurious EINTR when thread cancellation is disabled (BZ #29029)- Follow the distro default gcc version to build the cross bootstrap packages.- switched to https urls- get-nprocs-sched-uninit-read.patch: linux: __get_nprocs_sched: do not feed CPU_COUNT_S with garbage (BZ #28850) - get-nprocs-inaccurate.patch: linux: fix accuracy of get_nprocs and get_nprocs_conf (BZ #28865) - strcmp-rtm-fallback.path: x86: Fallback {str|wcs}cmp RTM in the ncmp overflow case (BZ #28896) - pt-load-invalid-hole.patch: elf: Check invalid hole in PT_LOAD segments (BZ #28838) - localedef-ld-monetary.patch: localedef: Update LC_MONETARY handling (BZ [#28845])- Update to glibc 2.35 Major new features: * Unicode 14.0.0 Support * Bump r_version in the debugger interface to 2 * Support for the C.UTF-8 locale has been added to glibc * functions that round their results to a narrower type, and corresponding macros, are added from TS 18661-1:2014, TS 18661-3:2015 and draft ISO C2X * functions for floating-point maximum and minimum, corresponding to new operations in IEEE 754-2019, and corresponding macros, are added from draft ISO C2X * macros for single-precision float constants are added as a GNU extension * The __STDC_IEC_60559_BFP__ and __STDC_IEC_60559_COMPLEX__ macros are predefined as specified in TS 18661-1:2014 * The exp10 functions in now have a corresponding type-generic macro in * The ISO C2X macro _PRINTF_NAN_LEN_MAX has been added to * printf-family functions now support the %b format for output of integers in binary, as specified in draft ISO C2X, and the %B variant of that format recommended by draft ISO C2X * A new DSO sorting algorithm has been added in the dynamic linker that uses topological sorting by depth-first search (DFS), solving performance issues of the existing sorting algorithm when encountering particular circular object dependency cases * A new tunable, glibc.rtld.dynamic_sort, can be used to select between the two DSO sorting algorithms * ABI support for a new function '__memcmpeq'. '__memcmpeq' is meant to be used by compilers for optimizing usage of 'memcmp' when its return value is only used for its boolean status * Support for automatically registering threads with the Linux rseq system call has been added * A symbolic link to the dynamic linker is now installed under /usr/bin/ld.so (or more precisely, '${bindir}/ld.so') * All programs and the testsuite in glibc are now built as position independent executables (PIE) by default on toolchains and architectures that support it * On Linux, a new tunable, glibc.malloc.hugetlb, can be used to either make malloc issue madvise plus MADV_HUGEPAGE on mmap and sbrk or to use huge pages directly with mmap calls with the MAP_HUGETLB flags) * The printf family of functions now handles the flagged %#m conversion specifier, printing errno as an error constant (similar to strerrorname_np) * The function _dl_find_object has been added * On Linux, the epoll_pwait2 function has been added * The function posix_spawn_file_actions_addtcsetpgrp_np has been added, enabling posix_spawn and posix_spawnp to set the controlling terminal in the new process in a race free manner * Source fortification (_FORTIFY_SOURCE) level 3 is now available for applications compiling with glibc and gcc 12 and later Deprecated and removed features, and other changes affecting compatibility: * On x86-64, the LD_PREFER_MAP_32BIT_EXEC environment variable support has been removed since the first PT_LOAD segment is no longer executable due to defaulting to -z separate-code * The r_version update in the debugger interface makes the glibc binary incompatible with GDB * Intel MPX support (lazy PLT, ld.so profile, and LD_AUDIT) has been removed * The catchsegv script and associated libSegFault.so shared object have been removed * Support for prelink will be removed in the next release; this includes removal of the LD_TRACE_PRELINKING, and LD_USE_LOAD_BIAS, environment variables and their functionality in the dynamic loader Changes to build and runtime requirements: * The audit module interface version LAV_CURRENT is increased to enable proper bind-now support * The audit interface on aarch64 is extended to support both the indirect result location register (x8) and NEON Q register Security related changes: * CVE-2022-23219: Passing an overlong file name to the clnt_create legacy function could result in a stack-based buffer overflow when using the "unix" protocol * CVE-2022-23218: Passing an overlong file name to the svcunix_create legacy function could result in a stack-based buffer overflow * CVE-2021-3998: Passing a path longer than PATH_MAX to the realpath function could result in a memory leak and potential access of uninitialized memory * CVE-2021-3999: Passing a buffer of size exactly 1 byte to the getcwd function may result in an off-by-one buffer underflow and overflow when the current working directory is longer than PATH_MAX and also corresponds to the / directory through an unprivileged mount namespace - copy-and-spawn-sgid-double-close.patch, fcntl-time-bits-64-redirect.patch, gaiconf-init-double-free.patch, gconv-parseconfdir-memory-leak.patch, getcwd-attribute-access.patch, glibc-c-utf8-locale.patch, iconv-charmap-close-output.patch, ld-show-auxv-colon.patch, ldconfig-leak-empty-paths.patch, librt-null-pointer.patch, pthread-kill-fail-after-exit.patch, pthread-kill-race-thread-exit.patch, pthread-kill-return-esrch.patch, pthread-kill-send-specific-thread.patch, pthread-mutexattr-getrobust-np-type.patch, setxid-deadlock-blocked-signals.patch, sysconf-nprocessors-affinity.patch, x86-string-control-test.patch: Removed. - bsc#1194640 - bsc#1194768 - bsc#1194770 - bsc#1197718 - bsc#1211829 - bsc#1215891- Enable building the cross packages in rings.- Add ExtraBuildFlags for build flags that cannot be passed to configure. - Add support for livepatches (jsc#SLE-20049). - Generate ipa-clones tarball artifact when livepatching is enabled.- glibc.rpmlintrc: Update for rpmlint2- ld-show-auxv-colon.patch: elf: Fix missing colon in LD_SHOW_AUXV output (BZ #282539 - x86-string-control-test.patch: x86-64: Use testl to check __x86_string_control - pthread-kill-fail-after-exit.patch: nptl: pthread_kill, pthread_cancel should not fail after exit (BZ #19193) - pthread-kill-race-thread-exit.patch: nptl: Fix race between pthread_kill and thread exit (BZ #12889) - getcwd-attribute-access.patch: posix: Fix attribute access mode on getcwd (BZ #27476) - pthread-kill-return-esrch.patch: nptl: pthread_kill needs to return ESRCH for old programs (BZ #19193) - pthread-mutexattr-getrobust-np-type.patch: nptl: Fix type of pthread_mutexattr_getrobust_np, pthread_mutexattr_setrobust_np (BZ [#28036]) - setxid-deadlock-blocked-signals.patch: nptl: Avoid setxid deadlock with blocked signals in thread exit (BZ #28361) - pthread-kill-send-specific-thread.patch: nptl: pthread_kill must send signals to a specific thread (BZ #28407) - sysconf-nprocessors-affinity.patch: linux: Revert the use of sched_getaffinity on get_nproc (BZ #28310) - iconv-charmap-close-output.patch: renamed from icon-charmap-close-output.patch- Don't create separate debuginfo packages for cross packages- ldconfig-leak-empty-paths.patch: ldconfig: avoid leak on empty paths in config file - gconv-parseconfdir-memory-leak.patch: gconv_parseconfdir: Fix memory leak - gaiconf-init-double-free.patch: gaiconf_init: Avoid double-free in label and precedence lists - copy-and-spawn-sgid-double-close.patch: copy_and_spawn_sgid: Avoid double calls to close() - icon-charmap-close-output.patch: iconv_charmap: Close output file when done - fcntl-time-bits-64-redirect.patch: Linux: Fix fcntl, ioctl, prctl redirects for _TIME_BITS=64 (BZ #28182) - librt-null-pointer.patch: librt: fix NULL pointer dereference (BZ [#28213])- Add cross development packages for aarch64 and riscv64.- Update to glibc 2.34 Major new features: * When _DYNAMIC_STACK_SIZE_SOURCE or _GNU_SOURCE are defined, PTHREAD_STACK_MIN is no longer constant and is redefined to sysconf(_SC_THREAD_STACK_MIN) * Add _SC_MINSIGSTKSZ and _SC_SIGSTKSZ * The dynamic linker implements the --list-diagnostics option, printing a dump of information related to IFUNC resolver operation and glibc-hwcaps subdirectory selection * On Linux, the function execveat has been added * The ISO C2X function timespec_getres has been added * The feature test macro __STDC_WANT_IEC_60559_EXT__, from draft ISO C2X, is supported to enable declarations of functions defined in Annex F of C2X * Add support for 64-bit time_t on configurations like x86 where time_t is traditionally 32-bit * The main gconv-modules file in glibc now contains only a small set of essential converter modules and the rest have been moved into a supplementary configuration file gconv-modules-extra.conf in the gconv-modules.d directory in the same GCONV_PATH * On Linux, a new tunable, glibc.pthread.stack_cache_size, can be used to configure the size of the thread stack cache * The function _Fork has been added as an async-signal-safe fork replacement since Austin Group issue 62 droped the async-signal-safe requirement for fork (and it will be included in the future POSIX standard) * On Linux, the close_range function has been added * The function closefrom has been added * The posix_spawn_file_actions_closefrom_np function has been added, enabling posix_spawn and posix_spawnp to close all file descriptors great than or equal to a giver integer Deprecated and removed features, and other changes affecting compatibility: * The function pthread_mutex_consistent_np has been deprecated * The function pthread_mutexattr_getrobust_np has been deprecated * The function pthread_mutexattr_setrobust_np has been deprecated * The function pthread_yield has been deprecated * The function inet_neta declared in has been deprecated * Various rarely-used functions declared in and have been deprecated * The pthread cancellation handler is now installed with SA_RESTART and pthread_cancel will always send the internal SIGCANCEL on a cancellation request * The symbols mallwatch and tr_break are now deprecated and no longer used in mtrace * The __morecore and __after_morecore_hook malloc hooks and the default implementation __default_morecore have been removed from the API * Debugging features in malloc such as the MALLOC_CHECK_ environment variable (or the glibc.malloc.check tunable), mtrace() and mcheck() have now been disabled by default in the main C library * The deprecated functions malloc_get_state and malloc_set_state have been moved from the core C library into libc_malloc_debug.so * The deprecated memory allocation hooks __malloc_hook, __realloc_hook, __memalign_hook and __free_hook are now removed from the API Changes to build and runtime requirements: * On Linux, the shm_open, sem_open, and related functions now expect the file shared memory file system to be mounted at /dev/shm Security related changes: CVE-2021-27645: The nameserver caching daemon (nscd), when processing a request for netgroup lookup, may crash due to a double-free, potentially resulting in degraded service or Denial of Service on the local system CVE-2021-33574: The mq_notify function has a potential use-after-free issue when using a notification type of SIGEV_THREAD and a thread attribute with a non-default affinity mask CVE-2021-35942: The wordexp function may overflow the positional parameter number when processing the expansion resulting in a crash - nss-database-check-reload.patch, nss-load-chroot.patch, x86-isa-level.patch, nscd-netgroupcache.patch, nss-database-lookup.patch, select-modify-timeout.patch, nptl-db-libpthread-load-order.patch, rawmemchr-warning.patch, tst-cpu-features-amx.patch, mq-notify-use-after-free.patch: Removed - bsc#1181403 - bsc#1184035 - bsc#1187911 - jsc#PED-987- Enable usrmerge in Factory always as it's default there - Add conflict with pre-usrmerge filesystem package- mq-notify-use-after-free.patch: Use __pthread_attr_copy in mq_notify (CVE-2021-33574, bsc#1186489, BZ #27896) - Drop glibc-usrmerge-bootstrap-helper package- tst-cpu-features-amx.patch: x86: tst-cpu-features-supports.c: Update AMX check- rawmemchr-warning.patch: string: Work around GCC PR 98512 in rawmemchr- nptl-db-libpthread-load-order.patch: nptl_db: Support different libpthread/ld.so load orders (bsc#1184214, BZ #27744)- Enable support for static PIE (bsc#1184646) - select-modify-timeout.patch: linux: always update select timeout (bsc#1184339, BZ #27706)- Don't remove -f[asynchronous-]unwind-tables during configure run, no longer needed- nss-database-check-reload.patch: nsswitch: return result when nss database is locked (BZ #27343) - nss-load-chroot.patch: nss: Re-enable NSS module loading after chroot (bsc#1182323, BZ #27389) - x86-isa-level.patch: x86: Set minimum x86-64 level marker (bsc#1182522, BZ #27318) - nss-database-lookup.patch: nss: fix nss_database_lookup2's alternate handling (bsc#1182247, BZ #27416) - nss-revert-api.patch: remove - nscd-netgroupcache.patch: nscd: Fix double free in netgroupcache (CVE-2021-27645, bsc#1182733, BZ #27462)- Disable x86 ISA level for now (bsc#1182522, BZ #27318) - nss-revert-api.patch: Workaround for nss-compat brokeness (bsc#1182247, BZ #27416)- Fix build of utils flavor for usrmerge- Prepare for usrmerge (bsc#1029961)- Add --enable-memory-tagging for aarch64- Update to glibc 2.33 * The dynamic linker accepts the --list-tunables argument which prints all the supported tunables. * The dynamic linker accepts the --argv0 argument and provides opportunity to change argv[0] string. * The dynamic linker loads optimized implementations of shared objects from subdirectories under the glibc-hwcaps directory on the library search path if the system's capabilities meet the requirements for that subdirectory. * The new --help option of the dynamic linker provides usage and information and library search path diagnostics. * The mallinfo2 function is added to report statistics as per mallinfo, but with larger field widths to accurately report values that are larger than fit in an integer. * Add to provide query macros for x86 CPU features. * A new fortification level _FORTIFY_SOURCE=3 is available. * The mallinfo function is marked deprecated. * When dlopen is used in statically linked programs, alternative library implementations from HWCAP subdirectories are no longer loaded. * The deprecated header and the function vtimes have been removed. * On s390(x), the type float_t is now derived from the macro __FLT_EVAL_METHOD__ that is defined by the compiler, instead of being hardcoded to double. * A future version of glibc will stop loading shared objects from the "tls" subdirectories on the library search path, the subdirectory that corresponds to the AT_PLATFORM system name, and also stop employing the legacy AT_HWCAP search mechanism. * CVE-2021-3326: An assertion failure during conversion from the ISO-20220-JP-3 character set using the iconv function has been fixed. - Remove obsolete, unused /etc/default/nss - aarch64-static-pie.patch, euc-kr-overrun.patch, get-nprocs-cpu-online-parsing.patch, iconv-redundant-shift.patch, iconv-ucs4-loop-bounds.patch, ifunc-fma4.patch, intl-codeset-suffixes.patch, nscd-gc-cycle.patch, printf-long-double-non-normal.patch, strerrorname-np.patch, syslog-locking.patch, sysvipc.patch: Removed - bsc#1180557 - bsc#1181505 - bsc#1191592 - bsc#1201942- Remove support for %optimize_power - Move to power4 baseline on ppc- aarch64-static-pie.patch: fix static PIE start code for BTI (bsc#1179450, BZ #27068) - iconv-redundant-shift.patch: iconv: Accept redundant shift sequences in IBM1364 (CVE-2020-27618, bsc#1178386, BZ #26224) - iconv-ucs4-loop-bounds.patch: iconv: Fix incorrect UCS4 inner loop bounds (CVE-2020-29562, bsc#1179694, BZ #26923) - printf-long-double-non-normal.patch: x86: Harden printf against non-normal long double values (CVE-2020-29573, bsc#1179721, BZ #26649) - get-nprocs-cpu-online-parsing.patch: Fix parsing of /sys/devices/system/cpu/online (bsc#1180038, BZ #25859)- intl-codeset-suffixes.patch: intl: Handle translation output codesets with suffixes (BZ #26383) - strerrorname-np.patch: string: Fix strerrorname_np return value (BZ [#26555]) - sysvipc.patch: sysvipc: Fix SEM_STAT_ANY kernel argument pass (BZ [#26637], BZ #26639, BZ #26636)- Use --enable-cet on x86_64 to instrument glibc for indirect branch tracking and shadow stack use. Enable indirect branch tracking and shadow stack in the dynamic loader (jsc#PM-2110, bsc#1175154)- Keep nsswitch.conf in /etc for SLES15 - syslog-locking.patch: Correct locking and cancellation cleanup in syslog functions (bsc#1172085, BZ #26100) - ifunc-fma4.patch: x86-64: Fix FMA4 detection in ifunc (BZ #26534)- Update to glibc 2.32 * Unicode 13.0.0 Support * New locale added: ckb_IQ * The GNU C Library now loads audit modules listed in the DT_AUDIT and DT_DEPAUDIT dynamic section entries of the main executable * powerpc64le supports IEEE128 long double libm/libc redirects when using the -mabi=ieeelongdouble to compile C code on supported GCC toolchains * To help detect buffer overflows and other out-of-bounds accesses several APIs have been annotated with GCC 'access' attribute * On Linux, functions the pthread_attr_setsigmask_np and pthread_attr_getsigmask_np have been added * The GNU C Library now provides the header file which declares the variable __libc_single_threaded * The functions sigabbrev_np and sigdescr_np have been added * The functions strerrorname_np and strerrordesc_np have been added * AArch64 now supports standard branch protection security hardening in glibc when it is built with a GCC that is configured with - -enable-standard-branch-protection (or if -mbranch-protection=standard flag is passed when building both GCC target libraries and glibc, in either case a custom GCC is needed) * The deprecated header and the sysctl function have been removed * The sstk function is no longer available to newly linked binaries * The legacy signal handling functions siginterrupt, sigpause, sighold, sigrelse, sigignore and sigset, and the sigmask macro have been deprecated * ldconfig now defaults to the new format for ld.so.cache * The deprecated arrays sys_siglist, _sys_siglist, and sys_sigabbrev are no longer available to newly linked binaries, and their declarations have been removed from * The deprecated symbols sys_errlist, _sys_errlist, sys_nerr, and _sys_nerr are no longer available to newly linked binaries, and their declarations have been removed from from * Both strerror and strerror_l now share the same internal buffer in the calling thread, meaning that the returned string pointer may be invalided or contents might be overwritten on subsequent calls in the same thread or if the thread is terminated * Using weak references to libpthread functions such as pthread_create or pthread_key_create to detect the singled-threaded nature of a program is an obsolescent feature * The "files" NSS module no longer supports the "key" database (used for secure RPC) * The __morecore and __after_morecore_hook malloc hooks and the default implementation __default_morecore have been deprecated * The hesiod NSS module has been deprecated and will be removed in a future version of glibc * CVE-2016-10228: An infinite loop has been fixed in the iconv program when invoked with the -c option and when processing invalid multi-byte input sequences * CVE-2020-10029: Trigonometric functions on x86 targets suffered from stack corruption when they were passed a pseudo-zero argument * CVE-2020-1752: A use-after-free vulnerability in the glob function when expanding ~user has been fixed. * CVE-2020-6096: A signed comparison vulnerability in the ARMv7 memcpy and memmove functions has been fixed - riscv-syscall-clobber.patch, ldbl-96-rem-pio2l.patch, long-double-alias.patch: Removed - bsc#1027496 - bsc#1162930 - bsc#1166106 - bsc#1167631 - bsc#1167939 - bsc#1194785, jsc#SLE-18195 - bsc#1200855 - bsc#1201560 - bsc#1201640 - bsc#1207571 - jsc#SLE-13520- long-double-alias.patch: Fix build with GCC 10 when long double = double - nscd-gc-cycle.patch: nscd: bump GC cycle during cache pruning (bsc#1171878, BZ #26130)- glibc-nsswitch-usr.diff: read /usr/etc/nsswitch.conf if /etc/nsswitch.conf does not exist - Install default nsswitch.conf in /usr/etc - Don't install gai.conf in /etc- Split off %lang_package- riscv-syscall-clobber.patch: riscv: Avoid clobbering register parameters in syscall - ldbl-96-rem-pio2l.patch: Avoid ldbl-96 stack corruption from range reduction of pseudo-zero (CVE-2020-10029, bsc#1165784, BZ #25487)- nsswitch.conf: comment out initgroups setting, so that it defaults to the group setting (bsc#1164075)- fix-locking-in-_IO_cleanup.patch: update to latest version- Update to glibc 2.31 * The GNU C Library now supports a feature test macro _ISOC2X_SOURCE to enable features from the draft ISO C2X standard * The functions that round their results to a narrower type now have corresponding type-generic macros in * The function pthread_clockjoin_np has been added, enabling join with a terminated thread with a specific clock * New locale added: mnw_MM (Mon language spoken in Myanmar). * The DNS stub resolver will optionally send the AD (authenticated data) bit in queries if the trust-ad option is set via the options directive in /etc/resolv.conf (or if RES_TRUSTAD is set in _res.options) * The totalorder and totalordermag functions, and the corresponding functions for other floating-point types, now take pointer arguments to avoid signaling NaNs possibly being converted to quiet NaNs in argument passing * The obsolete function stime is no longer available to newly linked binaries, and its declaration has been removed from * The gettimeofday function no longer reports information about a system-wide time zone * If a lazy binding failure happens during dlopen, during the execution of an ELF constructor, the process is now terminated - malloc-info-whitespace.patch, riscv-vfork.patch, prefer-map-32bit-exec.patch, backtrace-powerpc.patch, ldconfig-dynstr.patch: Removed. - bsc#1157893 - bsc#1163184 - fate#325815, fate#325879, fate#325880, fate#325881, fate#325882 - fate#325962- backtrace-powerpc.patch: Fix array overflow in backtrace on PowerPC (CVE-2020-1751, bsc#1158996, BZ #25423) - Drop support for pluggable gconv modules (bsc#1159851)- prefer-map-32bit-exec.patch: rtld: Check __libc_enable_secure before honoring LD_PREFER_MAP_32BIT_EXEC (CVE-2019-19126, bsc#1157292, BZ [#25204])- nsswitch.conf: add usrfiles for services, protocols, rpc, ethers and aliases for /usr/etc move- euc-kr-overrun.patch: Fix buffer overrun in EUC-KR conversion module (CVE-2019-25013, BZ #24973)- ldconfig-dynstr.patch: ldconfig: handle .dynstr located in separate segment (bsc#1153149, BZ #25087)- Package gconv-modules.cache as %ghost - Regenerate it also in the %post of glibc-local-base-- move mo files to glibc-locale as that's where all the other informations for those locales are. glibc-locale-base only has English anyways.- riscv-vfork.patch: Fix RISC-V vfork build with Linux 5.3 kernel headers- Remove NoSource tags (bsc#994835)- pwdutils is long gone and replaced by shadow- Update to glibc 2.30 * Unicode 12.1.0 Support * The dynamic linker accepts the --preload argument to preload shared objects * The twalk_r function has been added * On Linux, the getdents64, gettid, and tgkill functions have been added * Minguo (Republic of China) calendar support has been added * The entry for the new Japanese era has been added * Memory allocation functions malloc, calloc, realloc, reallocarray, valloc, pvalloc, memalign, and posix_memalign fail now with total object size larger than PTRDIFF_MAX * The dynamic linker no longer refuses to load objects which reference versioned symbols whose implementation has moved to a different soname since the object has been linked * Add new POSIX-proposed pthread_cond_clockwait, pthread_mutex_clocklock, pthread_rwlock_clockrdlock, pthread_rwlock_clockwrlock and sem_clockwait functions * On AArch64 the GNU IFUNC resolver call ABI changed * The copy_file_range function fails with ENOSYS if the kernel does not support the system call of the same name * The functions clock_gettime, clock_getres, clock_settime, clock_getcpuclockid, clock_nanosleep were removed from the librt library for new applications (on architectures which had them) * The obsolete and never-implemented XSI STREAMS header files and have been removed * Support for the "inet6" option in /etc/resolv.conf and the RES_USE_INET6 resolver flag (deprecated in glibc 2.25) have been removed * The obsolete RES_INSECURE1 and RES_INSECURE2 option flags for the DNS stub resolver have been removed from * With --enable-bind-now, installed programs are now linked with the BIND_NOW flag. * On 32-bit Arm, support for the port-based I/O emulation and the header have been removed * The Linux-specific header and the sysctl function have been deprecated and will be removed from a future version of glibc * CVE-2019-7309: x86-64 memcmp used signed Jcc instructions to check size * CVE-2019-9169: Attempted case-insensitive regular-expression match via proceed_next_node in posix/regexec.c leads to heap-based buffer over-read - pthread-rwlock-trylock-stalls.patch, arm-systemtap-probe-constraint.patch, pthread-mutex-barrier.patch, fork-handler-lock.patch, pthread-join-probe.patch, riscv-clone-unwind.patch, add-new-Fortran-vector-math-header-file.patch, regex-read-overrun.patch, japanese-era-name-may-2019.patch, dl-show-auxv.patch, s390-vx-vxe-hwcap.patch, taisho-era-string.patch, malloc-tracing-hooks.patch, pldd-inf-loop.patch, malloc-large-bin-corruption-check.patch, wfile-sync-crash.patch, malloc-tests-warnings.patch, fnmatch-collating-elements.patch, iconv-reset-input-buffer.patch: Removed - malloc-info-whitespace.patch: Remove unwanted leading whitespace in malloc_info (BZ #24867) - bsc#1100396 - bsc#1130045- Move /var/lib/misc/Makefile to /usr/share/misc/Makefile.makedb (bsc#1138726)- malloc-tests-warnings.patch: Fix warnings in malloc tests with GCC 9- Set optflags for i686 after _lto_cflags is set (boo#1138807).- Disable LTO due to a usage of top-level assembler that causes LTO issues (boo#1138807).- nss-files-long-lines-2.patch: Remove obsolete patch- dl-show-auxv.patch: Fix output of LD_SHOW_AUXV=1 - s390-vx-vxe-hwcap.patch: S390: Mark vx and vxe as important hwcap - taisho-era-string.patch: ja_JP: Change the offset for Taisho gan-nen from 2 to 1 (BZ #24162) - malloc-tracing-hooks.patch: malloc: Set and reset all hooks for tracing (BZ #16573) - pldd-inf-loop.patch: elf: Fix pldd (BZ#18035) - malloc-large-bin-corruption-check.patch: malloc: Check for large bin list corruption when inserting unsorted chunk (BZ #24216) - wfile-sync-crash.patch: Fix crash in _IO_wfile_sync (BZ #20568)- japanese-era-name-may-2019.patch: ja_JP locale: Add entry for the new Japanese era (BZ #22964) - Replace glibc_post_upgrade with lua script- add-new-Fortran-vector-math-header-file.patch: Update from upstream- regex-read-overrun.patch: fix read overrun (CVE-2019-9169, bsc#1127308, BZ #24114) - ldconfig-concurrency.patch: Avoid concurrency problem in ldconfig (bsc#1117993, BZ #23973)- Add add-new-Fortran-vector-math-header-file.patch.- pthread-rwlock-trylock-stalls.patch: nptl: Fix pthread_rwlock_try*lock stalls (BZ #23844) - arm-systemtap-probe-constraint.patch: arm: Use "nr" constraint for Systemtap probes (BZ #24164) - pthread-mutex-barrier.patch: Add compiler barriers around modifications of the robust mutex list for pthread_mutex_trylock (BZ #24180) - fork-handler-lock.patch: nptl: Avoid fork handler lock for async-signal-safe fork (BZ #24161) - pthread-join-probe.patch: nptl: Fix invalid Systemtap probe in pthread_join (BZ #24211) - riscv-clone-unwind.patch: RISC-V: Fix elfutils testsuite unwind failures (BZ #24040)- Update to glibc 2.29 * The getcpu wrapper function has been added, which returns the currently used CPU and NUMA node * Optimized generic exp, exp2, log, log2, pow, sinf, cosf, sincosf and tanf * The reallocarray function is now declared under _DEFAULT_SOURCE, not just for _GNU_SOURCE, to match BSD environments * For powercp64le ABI, Transactional Lock Elision is now enabled iff kernel indicates that it will abort the transaction prior to entering the kernel (PPC_FEATURE2_HTM_NOSC on hwcap2) * The functions posix_spawn_file_actions_addchdir_np and posix_spawn_file_actions_addfchdir_np have been added, enabling posix_spawn and posix_spawnp to run the new process in a different directory * The popen and system do not run atfork handlers anymore (BZ#17490) * strftime's default formatting of a locale's alternative year (%Ey) has been changed to zero-pad the year to a minimum of two digits, like "%y" * As a GNU extension, the '_' and '-' flags can now be applied to "%EY" to control how the year number is formatted * The glibc.tune tunable namespace has been renamed to glibc.cpu and the tunable glibc.tune.cpu has been renamed to glibc.cpu.name * The type of the pr_uid and pr_gid members of struct elf_prpsinfo, defined in , has been corrected to match the type actually used by the Linux kernel * An archaic GNU extension to scanf, under which '%as', '%aS', and '%a[...]' meant to scan a string and allocate space for it with malloc, is now restricted to programs compiled in C89 or C++98 mode with _GNU_SOURCE defined - unwind-ctor.patch, old-getdents64.patch, nss-files-leak.patch, riscv-feholdexcept-setround.patch, pthread-cond-broadcast-waiters-after-spinning.patch, regex-uninit-memory-access.patch, spawni-maybe-script-execute.patch, gethostid-gethostbyname-failure.patch, strstr-huge-needle.patch, pthread-mutex-lock-elision-race.patch, x86-haswell-string-flags.patch, if-nametoindex-descr-leak.patch, riscv-flush-icache.patch: Removed - CVE-2016-10739 - bsc#1114984 - bsc#1114993 - bsc#1122729 - bsc#1131330 - bsc#1149332 - bsc#1151582 - bsc#1164505- fnmatch-collating-elements.patch: update - riscv-flush-icache.patch: fix for compiling against 4.20 headers- if-nametoindex-descr-leak.patch: if_nametoindex: Fix descriptor leak for overlong name (CVE-2018-19591, BZ #23927, bsc#1117603)- Fix typography for glibc-locale-base.- pthread-mutex-lock-elision-race.patch: Fix race in pthread_mutex_lock while promoting to PTHREAD_MUTEX_ELISION_NP (BZ #23275) - x86-haswell-string-flags.patch: x86: Fix Haswell CPU string flags (BZ [#23709])- unwind-ctor.patch: Add missing unwind information to ld.so on powerpc32 (BZ #23707) - old-getdents64.patch: Rewrite __old_getdents64 (BZ #23497) - nss-files-leak.patch: Fix file stream leak in aliases lookup (BZ #23521) - riscv-feholdexcept-setround.patch: Fix rounding save/restore bug - pthread-cond-broadcast-waiters-after-spinning.patch: Fix waiters-after-spinning case (BZ #23538) - regex-uninit-memory-access.patch: fix uninitialized memory access (BZ [#23578]) - spawni-maybe-script-execute.patch: Fix segfault in maybe_script_execute - gethostid-gethostbyname-failure.patch: Check for NULL value from gethostbyname_r (BZ #23679) - strstr-huge-needle.patch: Fix strstr bug with huge needles (BZ #23637)- Add libpng-devel and zlib-devel for utils build- Add glibc-locale-base subpackage containing only C, C.UTF-8 and en_US.UTF-8 locales (fate#326551)- Update to glibc 2.28 * The localization data for ISO 14651 is updated to match the 2016 Edition 4 release of the standard, this matches data provided by Unicode 9.0.0 * Unicode 11.0.0 Support: Character encoding, character type info, and transliteration tables are all updated to Unicode 11.0.0, using generator scripts contributed by Mike FABIAN (Red Hat) * functions that round their results to a narrower type are added from TS 18661-1:2014 and TS 18661-3:2015 * Two grammatical forms of month names are now supported * The renameat2 function has been added, a variant of the renameat function which has a flags argument * The statx function has been added, a variant of the fstatat64 function with an additional flags argument * IDN domain names in getaddrinfo and getnameinfo now use the system libidn2 library if installed * Parsing of dynamic string tokens in DT_RPATH, DT_RUNPATH, DT_NEEDED, DT_AUXILIARY, and DT_FILTER has been expanded to support the full range of ELF gABI expressions including such constructs as '$ORIGIN$ORIGIN' (if valid) * Support for ISO C threads (ISO/IEC 9899:2011) has been added. * The nonstandard header files and <_G_config.h> are no longer installed * The stdio functions 'getc' and 'putc' are no longer defined as macros * All stdio functions now treat end-of-file as a sticky condition * The macros 'major', 'minor', and 'makedev' are now only available from the header * The obsolete function ustat is no longer available to newly linked binaries; the headers and have been removed * The obsolete function nfsservctl is no longer available to newly linked binaries * The obsolete function name llseek is no longer available to newly linked binaries * The AI_IDN_ALLOW_UNASSIGNED and NI_IDN_ALLOW_UNASSIGNED flags for the getaddrinfo and getnameinfo functions have been deprecated * The AI_IDN_USE_STD3_ASCII_RULES and NI_IDN_USE_STD3_ASCII_RULES flags for the getaddrinfo and getnameinfo functions have been deprecated * The fcntl function now have a Long File Support variant named fcntl64 * CVE-2016-6261, CVE-2016-6263, CVE-2017-14062: Various vulnerabilities have been fixed by removing the glibc-internal IDNA implementation and using the system-provided libidn2 library instead - Split off all libcrypt related functions into package libxcrypt - fix-locking-in-_IO_cleanup.patch, fnmatch-collating-elements.patch: Rediff - aarch64-sys-ptrace-update.patch, crypt_blowfish-1.2-hack_around_arm.diff, crypt_blowfish-1.2-sha.diff, crypt_blowfish-const.patch, crypt_blowfish-gensalt.patch, glibc-2.14-crypt.diff, i386-memmove-sse2-unaligned.patch, i386-sigaction-sa-restorer.patch, mempcpy-avx512.patch, netgroup-cache-keys.patch, nss-database-multiple-dfn.patch, pkey-get-reserved-name.patch, powerpc-sys-ptrace-undefine-macros.patch, powerpc-sys-ptrace-update.patch, realpath-ssize-max-overflow.patch, res-send-enomem.patch, riscv-fmax-fmin-nan.patch, riscv-kernel-sigaction.patch, riscv-readelflib.patch, riscv-tls-init.patch: Removed - glibc_post_upgrade.c: Don't reload init (bsc#1103124) - CVE-2009-5155, CVE-2015-8985 - bsc#1092877 - bsc#1102526 - bsc#1112570 - bsc#1126590 - bsc#1127223- Use python3-pexpect instead of python-pexpect- riscv-kernel-sigaction.patch: fix struct kernel_sigaction to match the kernel version (BZ #23069)- glibc-2.3.90-langpackdir.diff: No longer search in /usr/share/locale-bundle- mempcpy-avx512.patch: Don't write beyond destination in __mempcpy_avx512_no_vzeroupper (CVE-2018-11237, bsc#1094154) - realpath-ssize-max-overflow.patch: Fix overflow in path length computation (CVE-2018-11236, bsc#1094161, BZ #22786) - Use %license also for COPYING, COPYING.LIB- Readd nis to netgroup and automount nss config (bsc#1088860)- i386-memmove-sse2-unaligned.patch: Fix SSE2 memmove issue when crossing 2GB boundary (CVE-2017-18269, bnc#1094150, BZ #22644)- res-send-enomem.patch: Fix crash in resolver on memory allocation failure (bsc#1086690, BZ #23005)- pkey-get-reserved-name.patch: Linux: use reserved name __key in pkey_get (BZ #22797) - aarch64-sys-ptrace-update.patch: linux/aarch64: sync sys/ptrace.h with Linux 4.15 (BZ #22433) - powerpc-sys-ptrace-undefine-macros.patch: powerpc: Undefine Linux ptrace macros that conflict with __ptrace_request - powerpc-sys-ptrace-update.patch: linux/powerpc: sync sys/ptrace.h with Linux 4.15 (BZ #22433, BZ #22807) - netgroup-cache-keys.patch: Fix netgroup cache keys (BZ #22342) - i386-sigaction-sa-restorer.patch: i386: Fix i386 sigaction sa_restorer initialization (BZ #21269) - riscv-tls-init.patch: RISC-V: Do not initialize $gp in TLS macros - riscv-fmax-fmin-nan.patch: RISC-V: fmax/fmin: Handle signalling NaNs correctly (BZ #22884)- nss-database-multiple-dfn.patch: Fix multiple definitions of __nss_*_database (BZ #22918)- Use %license (boo#1082318)- Add systemtap-headers to BuildRequires - Add --enable-systemtap to configure arguments (fate#324969, bsc#1073636)- riscv-readelflib.patch: Fix parsing flags in ELF64 files on riscv- Update to glibc 2.27 * Optimized x86-64 asin, atan2, exp, expf, log, pow, atan, sin, cosf, sinf, sincosf and tan with FMA * Optimized x86-64 trunc and truncf for processors with SSE4.1 * Optimized generic expf, exp2f, logf, log2f, powf, sinf, cosf and sincosf * In order to support faster and safer process termination the malloc API family of functions will no longer print a failure address and stack backtrace after detecting heap corruption * The abort function terminates the process immediately, without flushing stdio streams * On platforms where long double has the IEEE binary128 format (aarch64, alpha, mips64, riscv, s390 and sparc), the math library now implements _Float128 interfaces for that type, as defined by ISO/IEC TS 18661-3:2015 These are the same interfaces added in version 2.26 for some platforms where this format is supported but is not the format of long double * On platforms with support for _Float64x (aarch64, alpha, i386, ia64, mips64, powerpc64le, riscv, s390, sparc and x86_64), the math library now implements interfaces for that type, as defined by ISO/IEC TS 18661-3:2015 * The math library now implements interfaces for the _Float32, _Float64 and _Float32x types, as defined by ISO/IEC TS 18661-3:2015 * glibc now implements the memfd_create and mlock2 functions on Linux * Support for memory protection keys was added * The copy_file_range function was added * The ldconfig utility now processes `include' directives using the C/POSIX collation ordering * Support for two grammatical forms of month names has been added * Support for the RISC-V ISA running on Linux has been added * Statically compiled applications attempting to load locales compiled for the GNU C Library version 2.27 will fail and fall back to the builtin C/POSIX locale * Support for statically linked applications which call dlopen is deprecated and will be removed in a future version of glibc * Support for old programs which use internal stdio data structures and functions is deprecated * On GNU/Linux, the obsolete Linux constant PTRACE_SEIZE_DEVEL is no longer defined by * libm no longer supports SVID error handling (calling a user-provided matherr function on error) or the _LIB_VERSION variable to control error handling * The libm functions pow10, pow10f and pow10l are no longer supported for new programs * The mcontext_t type is no longer the same as struct sigcontext * The add-ons mechanism for building additional packages at the same time as glibc has been removed * The res_hnok, res_dnok, res_mailok and res_ownok functions now check that the specified string can be parsed as a domain name * In the malloc_info output, the element may contain another element, "subheaps", which contains the number of sub-heaps * In the malloc_info output, the element may contain another element, "subheaps", which contains the number of sub-heaps * The nonstandard header files and <_G_config.h> are deprecated and will be removed in a future release * CVE-2018-6485, CVE-2018-6551: The posix_memalign and memalign functions, when called with an object size near the value of SIZE_MAX, would return a pointer to a buffer which is too small, instead of NULL (bsc#1079036) - Support for Sun RPC is no longer available, use libtirpc instead - glibc-nodate.patch, powerpc-elision-enable-envvar.patch, s390-elision-enable-envvar.patch, resolv-context-leak.patch, dl-runtime-resolve-opt-avx512f.patch, libpthread-compat-wrappers.patch, math-c++-compat.patch, remove-nss-nis-compat.patch, eh-frame-zero-terminator.patch, ld-so-hwcap-x86-64.patch, assert-pedantic.patch, getaddrinfo-errno.patch, resolv-conf-oom.patch, dynarray-allocation.patch, nearbyint-inexact.patch, nss-compat.patch, nscd-libnsl.patch, malloc-tcache-leak.patch, falkor-memcpy-memmove.patch, aarch64-cpu-features.patch, nss-files-large-buffers.patch. sysconf-uio-maxiov.patch, glob-tilde-overflow.patch, dl-runtime-resolve-xsave.patch, spawni-assert.patch, x86-64-dl-platform.patch, glob64-s390.patch, tst-tlsopt-powerpc.patch, powerpc-hwcap-bits.patch, malloc-tcache-check-overflow.patch, dl-init-paths-overflow.patch, fillin-rpath-empty-tokens.patch, getcwd-absolute.patch, ldd-system-interp.patchabort-no-flush.patch: Removed - All patches refreshed - bsc#1063675- fix-locking-in-_IO_cleanup.patch: Skip locked files during exit (bsc#1070491, BZ #15142)- Avoid duplicate source rpm- getcwd-absolute.patch: make getcwd(3) fail if it cannot obtain an absolute path (CVE-2018-1000001, bsc#1074293, BZ #22679)- dl-init-paths-overflow.patch: Count components of the expanded path in _dl_init_path (CVE-2017-1000408, CVE-2017-1000409, bsc#1071319, BZ [#22607], BZ #22627) - fillin-rpath-empty-tokens.patch: Check for empty tokens before dynamic string token expansion (CVE-2017-16997, bsc#1073231, BZ #22625)- tst-tlsopt-powerpc.patch: fix tst-tlsopt-powerpc (bcn#1070419) - powerpc-hwcap-bits.patch: Update HWCAP for powerpc (bnc#1070420) - malloc-tcache-check-overflow.patch: Fix integer overflow in malloc when tcache is enabled (CVE-2017-17426, bnc#1071479, BZ #22375)- Add _multibuild- glob64-s390.patch: no compat glob64 on s390 - noversion.tar.bz2: remove unused source- x86-64-dl-platform.patch: Don't set GLRO(dl_platform) to NULL (BZ #22299)- spawni-assert.patch: Fix improper assert in Linux posix_spawn (BZ [#22273])- math-c++-compat.patch: Add more C++ compatibility (BZ #22296) - malloc-tcache-leak.patch: Fix tcache leak after thread destruction (BZ [#22111]) - falkor-memcpy-memmove.patch: Optimized implementation of memcpy/memmove for Qualcomm Falkor - aarch64-cpu-features.patch: Fix glibc.tune.cpu tunable handling - nss-files-large-buffers.patch: Avoid large buffers with many host addresses (BZ #22078) - sysconf-uio-maxiov.patch: Fix missing definition of UIO_MAXIOV (BZ [#22321]) - glob-tilde-overflow.patch: Fix buffer overflows with GLOB_TILDE (CVE-2017-15670, CVE-2017-15671, CVE-2017-15804, bsc#1064569. bsc#1064580, bsc#1064583, BZ #22320, BZ #22325, BZ #22332) - dl-runtime-resolve-xsave.patch: Use fxsave/xsave/xsavec in _dl_runtime_resolve (BZ #21265)- nscd-libnsl.patch: Remove reference to libnsl from nscd (bsc#1062244)- Drop glibc-obsolete - glibc-2.3.90-noversion.diff: remove - reinitialize-dl_load_write_lock.patch: remove- nss-compat.patch: Move nss_compat from nis to nss subdir and install it unconditionally - nsswitch.conf: switch back to compat for passwd, group, shadow- assert-pedantic.patch: Suppress pedantic warning caused by statement expression (BZ #21242, BZ #21972) - math-c++-compat.patch: Add more C++ compatibility (BZ #22235) - getaddrinfo-errno.patch: Fix errno and h_errno handling in getaddrinfo (BZ #21915, BZ #21922) - resolv-conf-oom.patch: Fix memory handling in OOM situation during resolv.conf parsing (BZ #22095, BZ #22096) - dynarray-allocation.patch: Fix initial size of dynarray allocation and set errno on overflow error - nearbyint-inexact.patch: Avoid spurious inexact in nearbyint (BZ #22225)- math-c++-compat.patch: add more C++ compatibility (BZ #22146)- Remove rpcsvc/yppasswd.* from glibc-devel - ld-so-hwcap-x86-64.patch: add x86_64 to hwcap (bsc#1056606, BZ #22093)- eh-frame-zero-terminator.patch: Properly terminate .eh_frame (BZ #22051)- Disable obsolete libnsl and NIS support - remove-nss-nis-compat.patch: remove nis and compat from default NSS configs - nsswitch.conf: Likewise- math-c++-compat.patch: Do not use __builtin_types_compatible_p in C++ mode (BZ #21930)- Add iconvconfig to baselibs.conf (bsc#1051042)- resolv-context-leak.patch: Fix leaks of resolver contexts - dl-runtime-resolve-opt-avx512f.patch: Use _dl_runtime_resolve_opt only with AVX512F (BZ #21871) - libpthread-compat-wrappers.patch: Don't use IFUNC resolver for longjmp or system in libpthread (BZ #21041)- Update to glibc 2.26 * A per-thread cache has been added to malloc * Unicode 10.0.0 Support * Improvements to the DNS stub resolver * New function reallocarray, which resizes an allocated block (like realloc) to the product of two sizes, with a guaranteed clean failure upon integer overflow in the multiplication * New wrappers for the Linux-specific system calls preadv2 and pwritev2 * posix_spawnattr_setflags now supports the flag POSIX_SPAWN_SETSID, to create a new session ID for the spawned process * errno.h is now safe to use from C-preprocessed assembly language on all supported operating systems * On ia64, powerpc64le, x86-32, and x86-64, the math library now implements 128-bit floating point as defined by ISO/IEC/IEEE 60559:2011 (IEEE 754-2008) and ISO/IEC TS 18661-3:2015 * The synchronization that pthread_spin_unlock performs has been changed to now be equivalent to a C11 atomic store with release memory order to the spin lock's memory location * The DNS stub resolver no longer performs EDNS fallback * res_mkquery and res_nmkquery no longer support the IQUERY opcode * The _res_opcodes variable has been removed from libresolv * no longer includes inline versions of any string functions, as this kind of optimization is better done by the compiler * The nonstandard header has been removed * The obsolete header has been removed * The obsolete signal constant SIGUNUSED is no longer defined by * The obsolete function cfree has been removed * The stack_t type no longer has the name struct sigaltstack * The ucontext_t type no longer has the name struct ucontext * On S/390 GNU/Linux, the constants defined by have been synced with the kernel * Linux kernel 3.2 or later is required at runtime, on all architectures supported by that kernel * The DNS stub resolver limits the advertised UDP buffer size to 1200 bytes, to avoid fragmentation-based spoofing attacks (CVE-2017-12132) * LD_LIBRARY_PATH is now ignored in binaries running in privileged AT_SECURE mode to guard against local privilege escalation attacks (CVE-2017-1000366) * Avoid printing a backtrace from the __stack_chk_fail function since it is called on a corrupt stack and a backtrace is unreliable on a corrupt stack (CVE-2010-3192) * A use-after-free vulnerability in clntudp_call in the Sun RPC system has been fixed (CVE-2017-12133) * fate#322258, fate#321513, fate#322453 - fts-symbol-redirect.patch, glibc-resolv-reload.diff, glibc-2.2-sunrpc.diff, i686-memchr-sse.patch, ld-hwcap-mask-suid.patch, ld-library-path-suid.patch, sunrpc-use-after-free.patch, test-math-vector-sincos-aliasing.patch, tunables-bigendian.patch: Removed - bsc#1074208- Fix RPM group- s390-elision-enable-envvar.patch: enable TLE only if GLIBC_ELISION_ENABLE=yes is defined (fate#322271)- ld-hwcap-mask-suid.patch: Ignore and remove LD_HWCAP_MASK for AT_SECURE programs (BZ #21209) - ld-library-path-suid.patch: Completely ignore LD_LIBRARY_PATH for AT_SECURE=1 programs (CVE-2017-1000366, bsc#1039357, BZ #21624)- Remove glibc-cpusetsize.diff, no longer useful- fts-symbol-redirect.patch: Fix symbol redirect for fts_set (bsc#1041123, BZ #21289)- test-math-vector-sincos-aliasing.patch: Fix test-math-vector-sincos.h aliasing- add-locales.patch: renamed from glibc-2.3.locales.diff.bz2, drop en_BE locales (bsc#1039502)- Remove glibc-testsuite.patch, no longer relevant- Use multibuild feature - Remove obsolete check-build.sh - glibc.rpmlintrc: remove obsolete entries - Use %tmpfiles_create in nscd postin- i686-memchr-sse.patch: Fix i686 memchr overflow calculation (bsc#1031021, BZ #21182) - sunrpc-use-after-free.patch: Avoid use-after-free read access in clntudp_call (BZ #21115) - Build testsuite with gdb and python-pexpect to enable more tests- tunables-bigendian.patch: Fix getting tunable values on big-endian (BZ [#21109])- Update to glibc 2.25 * The feature test macro __STDC_WANT_LIB_EXT2__, from ISO/IEC TR 24731-2:2010, is supported to enable declarations of functions from that TR. * The feature test macro __STDC_WANT_IEC_60559_BFP_EXT__, from ISO/IEC TS 18661-1:2014, is supported to enable declarations of functions and macros from that TS. * The feature test macro __STDC_WANT_IEC_60559_FUNCS_EXT__, from ISO/IEC TS 18661-4:2015, is supported to enable declarations of functions and macros from that TS. * The nonstandard feature selection macros _REENTRANT and _THREAD_SAFE are now treated as compatibility synonyms for _POSIX_C_SOURCE=199506L. * The inclusion of by is deprecated. * New features from TS 18661-1:2014 are added to libm: the fesetexcept, fetestexceptflag, fegetmode and fesetmode functions, the femode_t type and the FE_DFL_MODE and FE_SNANS_ALWAYS_SIGNAL macros. * Integer width macros from TS 18661-1:2014 are added to : CHAR_WIDTH, SCHAR_WIDTH, UCHAR_WIDTH, SHRT_WIDTH, USHRT_WIDTH, INT_WIDTH, UINT_WIDTH, LONG_WIDTH, ULONG_WIDTH, LLONG_WIDTH, ULLONG_WIDTH; and to : INT8_WIDTH, UINT8_WIDTH, INT16_WIDTH, UINT16_WIDTH, INT32_WIDTH, UINT32_WIDTH, INT64_WIDTH, UINT64_WIDTH, INT_LEAST8_WIDTH, UINT_LEAST8_WIDTH, INT_LEAST16_WIDTH, UINT_LEAST16_WIDTH, INT_LEAST32_WIDTH, UINT_LEAST32_WIDTH, INT_LEAST64_WIDTH, UINT_LEAST64_WIDTH, INT_FAST8_WIDTH, UINT_FAST8_WIDTH, INT_FAST16_WIDTH, UINT_FAST16_WIDTH, INT_FAST32_WIDTH, UINT_FAST32_WIDTH, INT_FAST64_WIDTH, UINT_FAST64_WIDTH, INTPTR_WIDTH, UINTPTR_WIDTH, INTMAX_WIDTH, UINTMAX_WIDTH, PTRDIFF_WIDTH, SIG_ATOMIC_WIDTH, SIZE_WIDTH, WCHAR_WIDTH, WINT_WIDTH. * New features are added from TS 18661-1:2014: - Signaling NaN macros: SNANF, SNAN, SNANL. - Nearest integer functions: roundeven, roundevenf, roundevenl, fromfp, fromfpf, fromfpl, ufromfp, ufromfpf, ufromfpl, fromfpx, fromfpxf, fromfpxl, ufromfpx, ufromfpxf, ufromfpxl. - llogb functions: the llogb, llogbf and llogbl functions, and the FP_LLOGB0 and FP_LLOGBNAN macros. - Max-min magnitude functions: fmaxmag, fmaxmagf, fmaxmagl, fminmag, fminmagf, fminmagl. - Comparison macros: iseqsig. - Classification macros: iscanonical, issubnormal, iszero. - Total order functions: totalorder, totalorderf, totalorderl, totalordermag, totalordermagf, totalordermagl. - Canonicalize functions: canonicalize, canonicalizef, canonicalizel. - NaN functions: getpayload, getpayloadf, getpayloadl, setpayload, setpayloadf, setpayloadl, setpayloadsig, setpayloadsigf, setpayloadsigl. * The functions strfromd, strfromf, and strfroml, from ISO/IEC TS 18661-1:2014, are added to libc. * Most of glibc can now be built with the stack smashing protector enabled. * The function explicit_bzero, from OpenBSD, has been added to libc. * On ColdFire, MicroBlaze, Nios II and SH3, the float_t type is now defined to float instead of double. * On x86_64, when compiling with -mfpmath=387 or -mfpmath=sse+387, the float_t and double_t types are now defined to long double instead of float and double. * The getentropy and getrandom functions, and the header file have been added. * The buffer size for byte-oriented stdio streams is now limited to 8192 bytes by default. * The header now includes the header. * The malloc_get_state and malloc_set_state functions have been removed. * The “ip6-dotint” and “no-ip6-dotint” resolver options, and the corresponding RES_NOIP6DOTINT flag from have been removed. * The "ip6-bytestring" resolver option and the corresponding RES_USEBSTRING flag from have been removed. * The flags RES_AAONLY, RES_PRIMARY, RES_NOCHECKNAME, RES_KEEPTSIG, RES_BLAST defined in the header file have been deprecated. * The "inet6" option in /etc/resolv.conf and the RES_USE_INET6 flag for _res.flags are deprecated. * DNSSEC-related declarations and definitions have been removed from the header file, and libresolv will no longer attempt to decode the data part of DNSSEC record types. * The resource record type classification macros ns_t_qt_p, ns_t_mrr_p, ns_t_rr_p, ns_t_udp_p, ns_t_xfr_p have been removed from the header file because the distinction between RR types and meta-RR types is not officially standardized, subject to revision, and thus not suitable for encoding in a macro. * The types res_sendhookact, res_send_qhook, re_send_rhook, and the qhook and rhook members of the res_state type in have been removed. * For multi-arch support it is recommended to use a GCC which has been built with support for GNU indirect functions. * GDB pretty printers have been added for mutex and condition variable structures in POSIX Threads. * Tunables feature added to allow tweaking of the runtime for an application program. * A new version of condition variables functions have been implemented in the NPTL implementation of POSIX Threads to provide stronger ordering guarantees. * A new version of pthread_rwlock functions have been implemented to use a more scalable algorithm primarily through not using a critical section anymore to make state changes. * On ARM EABI (32-bit), generating a backtrace for execution contexts which have been created with makecontext could fail to terminate due to a missing .cantunwind annotation. (CVE-2016-6323) * The DNS stub resolver functions would crash due to a NULL pointer dereference when processing a query with a valid DNS question type which was used internally in the implementation. (CVE-2015-5180) - Enable stack protector if part of %optflags - startcontext-cantunwind.patch: Removed - cpuid-assertion.patch: Removed- cpuid-assertion.patch: Don't assert on older Intel CPUs (BZ #20647)- glibc-2.3.3-nscd-db-path.diff: Move persistent nscd databases to /var/lib/nscd - glibc-2.3.90-langpackdir.diff: simplify- Update to glibc 2.24 * The minimum Linux kernel version that this version of the GNU C Library can be used with is 3.2 * The pap_AN locale has been deleted * The readdir_r and readdir64_r functions have been deprecated * The type `union wait' has been removed * A new NSS action is added to facilitate large distributed system administration * The deprecated __malloc_initialize_hook variable has been removed from the API * The long unused localedef --old-style option has been removed * nextupl, nextup, nextupf, nextdownl, nextdown and nextdownf are added to libm * An unnecessary stack copy in _nss_dns_getnetbyname_r was removed (CVE-2016-3075) * Previously, getaddrinfo copied large amounts of address data to the stack, even after the fix for CVE-2013-4458 has been applied, potentially resulting in a stack overflow. getaddrinfo now uses a heap allocation instead (CVE-2016-3706) * The glob function suffered from a stack-based buffer overflow when it was called with the GLOB_ALTDIRFUNC flag and encountered a long file name (CVE-2016-1234) * The Sun RPC UDP client could exhaust all available stack space when flooded with crafted ICMP and UDP messages (CVE-2016-4429) * The IPv6 name server management code in libresolv could result in a memory leak for each thread which is created, performs a failing naming lookup, and exits (CVE-2016-5417) - startcontext-cantunwind.patch: mark __startcontext as .cantunwind (bsc#974800, BZ #20435) - Removed patches: * 0001-Updated-translations-for-2.23.patch * 0002-Regenerate-libc.pot-for-2.23.patch * 0003-Regenerated-configure-scripts.patch * 0004-x86_64-Set-DL_RUNTIME_UNALIGNED_VEC_SIZE-to-8.patch * 0005-Add-fts64_-to-sysdeps-arm-nacl-libc.abilist.patch * 0006-Don-t-use-long-double-math-functions-if-NO_LONG_DOUB.patch * 0007-NEWS-2.23-Fix-typo-in-bug-19048-text.patch * 0008-Update-NEWS.patch * 0009-sln-use-stat64.patch * 0010-Add-sys-auxv.h-wrapper-to-include-sys.patch * 0011-mips-terminate-the-FDE-before-the-return-trampoline-.patch * 0012-Use-HAS_ARCH_FEATURE-with-Fast_Rep_String.patch * 0013-Mention-BZ-19762-in-NEWS.patch * 0014-Define-_HAVE_STRING_ARCH_mempcpy-to-1-for-x86.patch * 0015-Or-bit_Prefer_MAP_32BIT_EXEC-in-EXTRA_LD_ENVVARS.patch * 0016-Fix-resource-leak-in-resolver-bug-19257.patch * 0017-math-don-t-clobber-old-libm.so-on-install-BZ-19822.patch * 0018-resolv-Always-set-resplen2-out-parameter-in-send_dg-.patch * 0019-S390-Save-and-restore-fprs-vrs-while-resolving-symbo.patch * 0020-S390-Extend-structs-La_s390_regs-La_s390_retval-with.patch * 0021-CVE-2016-3075-Stack-overflow-in-_nss_dns_getnetbynam.patch * 0022-configure-fix-test-usage.patch * 0023-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch * 0024-nss_db-Propagate-ERANGE-error-if-parse_line-fails-BZ.patch * 0025-getnameinfo-Do-not-preserve-errno.patch * 0026-getnameinfo-Refactor-and-fix-memory-leak-BZ-19642.patch * 0027-getnameinfo-Reduce-line-length-and-add-missing-comme.patch * 0028-getnameinfo-Avoid-calling-strnlen-on-uninitialized-b.patch * 0029-getnameinfo-Return-EAI_OVERFLOW-in-more-cases-BZ-197.patch * 0030-hesiod-Remove-RCS-keywords.patch * 0031-hesiod-Always-use-thread-local-resolver-state-BZ-195.patch * 0032-hesiod-Avoid-heap-overflow-in-get_txt_records-BZ-200.patch * 0033-malloc-Remove-NO_THREADS.patch * 0034-Fix-malloc-threaded-tests-link-on-non-Linux.patch * 0035-malloc-Run-fork-handler-as-late-as-possible-BZ-19431.patch * 0036-malloc-Remove-malloc-hooks-from-fork-handler.patch * 0037-malloc-Add-missing-internal_function-attributes-on-f.patch * 0038-nss_dns-Fix-assertion-failure-in-_nss_dns_getcanonna.patch * 0039-nss_dns-Validate-RDATA-length-against-packet-length-.patch * 0040-resolv-nss_dns-Remove-remaining-syslog-logging-BZ-19.patch * 0041-nss_dns-Check-address-length-before-creating-addrinf.patch * 0042-nss_dns-Skip-over-non-PTR-records-in-the-netent-code.patch * 0043-resolv-Always-set-resplen2-out-parameter-in-send_vc-.patch * 0044-tst-audit4-tst-audit10-Compile-AVX-AVX-512-code-sepa.patch * 0045-Fix-tst-audit10-build-when-mavx512f-is-not-supported.patch * 0046-tst-audit10-Fix-compilation-on-compilers-without-bit.patch * 0047-strfmon_l-Use-specified-locale-for-number-formatting.patch * 0048-glob-Simplify-the-interface-for-the-GLOB_ALTDIRFUNC-.patch * 0049-CVE-2016-1234-glob-Do-not-copy-d_name-field-of-struc.patch * 0050-ldconfig-Do-not-remove-stale-symbolic-links-with-X-B.patch * 0051-Report-dlsym-dlvsym-lookup-errors-using-dlerror-BZ-1.patch * 0052-Fix-tst-dlsym-error-build.patch * 0053-Remove-trailing-newline-from-date_fmt-in-Serbian-loc.patch * 0054-Revert-Report-dlsym-dlvsym-lookup-errors-using-dlerr.patch * 0055-CVE-2016-3706-getaddrinfo-stack-overflow-in-hostent-.patch * 0056-Fix-strfmon_l-Use-specified-locale-for-number-format.patch * clntudp-call-alloca.patch * glibc-memset-nontemporal.diff * nis-initgroups-status.patch * nscd-gc-crash.patch * robust-mutex-deadlock.patch * strncat-avoid-array-bounds-warning.patch- strncat-avoid-array-bounds-warning.patch: Avoid array-bounds warning for stncat on i586 (BZ #20260) - Update glibc.keyring - Unset MALLOC_CHECK_ during testsuite run- nsswitch.conf: Add fallback to files for passwd and group to prepare for libnsl removal.- nis-initgroups-status.patch: Return proper status from _nss_nis_initgroups_dyn (bsc#984269, BZ #20262) - robust-mutex-deadlock.patch: Fix generic __lll_robust_timedlock_wait to check for timeout (bsc#985170, BZ #20263)- nscd-gc-crash.patch: Fix nscd assertion failure in gc (bsc#965699, BZ [#19755])- clntudp-call-alloca.patch: do not use alloca in clntudp_call (CVE-2016-4429, bsc#980854, BZ #20112)- Import patches from 2.23 branch 0001-Updated-translations-for-2.23.patch 0002-Regenerate-libc.pot-for-2.23.patch 0003-Regenerated-configure-scripts.patch 0004-x86_64-Set-DL_RUNTIME_UNALIGNED_VEC_SIZE-to-8.patch 0005-Add-fts64_-to-sysdeps-arm-nacl-libc.abilist.patch 0006-Don-t-use-long-double-math-functions-if-NO_LONG_DOUB.patch 0007-NEWS-2.23-Fix-typo-in-bug-19048-text.patch 0008-Update-NEWS.patch 0009-sln-use-stat64.patch 0010-Add-sys-auxv.h-wrapper-to-include-sys.patch 0011-mips-terminate-the-FDE-before-the-return-trampoline-.patch 0012-Use-HAS_ARCH_FEATURE-with-Fast_Rep_String.patch 0013-Mention-BZ-19762-in-NEWS.patch 0014-Define-_HAVE_STRING_ARCH_mempcpy-to-1-for-x86.patch 0015-Or-bit_Prefer_MAP_32BIT_EXEC-in-EXTRA_LD_ENVVARS.patch 0016-Fix-resource-leak-in-resolver-bug-19257.patch 0017-math-don-t-clobber-old-libm.so-on-install-BZ-19822.patch 0018-resolv-Always-set-resplen2-out-parameter-in-send_dg-.patch 0019-S390-Save-and-restore-fprs-vrs-while-resolving-symbo.patch 0020-S390-Extend-structs-La_s390_regs-La_s390_retval-with.patch 0021-CVE-2016-3075-Stack-overflow-in-_nss_dns_getnetbynam.patch 0022-configure-fix-test-usage.patch 0023-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch 0024-nss_db-Propagate-ERANGE-error-if-parse_line-fails-BZ.patch 0025-getnameinfo-Do-not-preserve-errno.patch 0026-getnameinfo-Refactor-and-fix-memory-leak-BZ-19642.patch 0027-getnameinfo-Reduce-line-length-and-add-missing-comme.patch 0028-getnameinfo-Avoid-calling-strnlen-on-uninitialized-b.patch 0029-getnameinfo-Return-EAI_OVERFLOW-in-more-cases-BZ-197.patch 0030-hesiod-Remove-RCS-keywords.patch 0031-hesiod-Always-use-thread-local-resolver-state-BZ-195.patch 0032-hesiod-Avoid-heap-overflow-in-get_txt_records-BZ-200.patch 0033-malloc-Remove-NO_THREADS.patch 0034-Fix-malloc-threaded-tests-link-on-non-Linux.patch 0035-malloc-Run-fork-handler-as-late-as-possible-BZ-19431.patch 0036-malloc-Remove-malloc-hooks-from-fork-handler.patch 0037-malloc-Add-missing-internal_function-attributes-on-f.patch 0038-nss_dns-Fix-assertion-failure-in-_nss_dns_getcanonna.patch 0039-nss_dns-Validate-RDATA-length-against-packet-length-.patch 0040-resolv-nss_dns-Remove-remaining-syslog-logging-BZ-19.patch 0041-nss_dns-Check-address-length-before-creating-addrinf.patch 0042-nss_dns-Skip-over-non-PTR-records-in-the-netent-code.patch 0043-resolv-Always-set-resplen2-out-parameter-in-send_vc-.patch 0044-tst-audit4-tst-audit10-Compile-AVX-AVX-512-code-sepa.patch 0045-Fix-tst-audit10-build-when-mavx512f-is-not-supported.patch 0046-tst-audit10-Fix-compilation-on-compilers-without-bit.patch 0047-strfmon_l-Use-specified-locale-for-number-formatting.patch 0048-glob-Simplify-the-interface-for-the-GLOB_ALTDIRFUNC-.patch 0049-CVE-2016-1234-glob-Do-not-copy-d_name-field-of-struc.patch 0050-ldconfig-Do-not-remove-stale-symbolic-links-with-X-B.patch 0051-Report-dlsym-dlvsym-lookup-errors-using-dlerror-BZ-1.patch 0052-Fix-tst-dlsym-error-build.patch 0053-Remove-trailing-newline-from-date_fmt-in-Serbian-loc.patch 0054-Revert-Report-dlsym-dlvsym-lookup-errors-using-dlerr.patch 0055-CVE-2016-3706-getaddrinfo-stack-overflow-in-hostent-.patch 0056-Fix-strfmon_l-Use-specified-locale-for-number-format.patch - CVE-2016-3075 CVE-2016-1234 CVE-2016-3706 bsc#973164 bsc#969727 - resolv-mem-leak.patch: renamed to 0016-Fix-resource-leak-in-resolver-bug-19257.patch - no-long-double.patch: renamed to 0006-Don-t-use-long-double-math-functions-if-NO_LONG_DOUB.patch - glibc-gcc6.patch: renamed to 0023-Suppress-GCC-6-warning-about-ambiguous-else-with-Wpa.patch- glibc-c-utf8-locale.patch: fix bad standard in LC_IDENTIFICATION categories - glibc-2.3.locales.diff.bz2: likewise- glibc-gcc6.patch: Suppress GCC 6 warning about ambiguous 'else' with - Wparentheses- Add compatibility symlinks for LSB 3.0 (fate#318933)- powerpc-elision-enable-envvar.patch: enable TLE only if GLIBC_ELISION_ENABLE=yes is defined (bsc#967594, fate#318236)- ldd-system-interp.patch: Restore warning about execution permission, it is still needed for noexec mounts (bsc#915985)- Add C.UTF-8 locale (see https://sourceware.org/glibc/wiki/Proposals/C.UTF-8) and rh#902094 . Added with glibc-c-utf8-locale.patch. - Add glibc-disable-gettext-for-c-utf8.patch to disable gettext for C.UTF-8 same as C locale.- Move %install_info_delete to %preun - crypt_blowfish-1.3.tar.gz.sign: Remove, the sign key is no longer acceptable- no-long-double.patch: Don't use long double functions if NO_LONG_DOUBLE- Update to glibc 2.23 release. * Unicode 8.0.0 Support * sched_setaffinity, pthread_setaffinity_np no longer attempt to guess the kernel-internal CPU set size * The fts.h header can now be used with -D_FILE_OFFSET_BITS=64 * getaddrinfo now detects certain invalid responses on an internal netlink socket * A defect in the malloc implementation, present since glibc 2.15 (2012) or glibc 2.10 via --enable-experimental-malloc (2009), could result in the unnecessary serialization of memory allocation requests across threads * The obsolete header has been removed * The obsolete functions bdflush, create_module, get_kernel_syms, query_module and uselib are no longer available to newly linked binaries * Optimized string, wcsmbs and memory functions for IBM z13. * Newly linked programs that define a variable called signgam will no longer have it set by the lgamma, lgammaf and lgammal functions - Removed patches: * dont-remove-nodelete-flag.patch * openat64-readd-o-largefile.patch * mntent-blank-line.patch * opendir-o-directory-check.patch * strcoll-remove-strdiff-opt.patch * ld-pointer-guard.patch * tls-dtor-list-mangling.patch * powerpc-lock-elision-race.patch * prelink-elf-rtype-class.patch * vector-finite-math-aliases.patch * powerpc-elision-adapt-param.patch * catopen-unbound-alloca.patch * strftime-range-check.patch * hcreate-overflow-check.patch * errorcheck-mutex-no-elision.patch * refactor-nan-parsing.patch * send-dg-buffer-overflow.patch * isinf-cxx11-conflict.patch * ibm93x-redundant-shift-si.patch * iconv-reset-input-buffer.patch * tzset-tzname.patch * static-dlopen.patch- isinf-cxx11-conflict.patch: Fix isinf/isnan declaration conflict with C++11 (bsc#963700, BZ #19439)- tls-dtor-list-mangling.patch: Harden tls_dtor_list with pointer mangling (BZ #19018) - prelink-elf-rtype-class.patch: Keep only ELF_RTYPE_CLASS_{PLT|COPY} bits for prelink (BZ #19178) - vector-finite-math-aliases.patch: Better workaround for aliases of * _finite symbols in vector math library (BZ# 19058) - powerpc-elision-adapt-param.patch: powerpc: Fix usage of elision transient failure adapt param (BZ #19174) - catopen-unbound-alloca.patch: Fix unbound alloca in catopen (CVE-2015-8779, bsc#962739, BZ #17905) - strftime-range-check.patch: Add range check on time fields (CVE-2015-8776, bsc#962736, BZ #18985) - hcreate-overflow-check.patch: Handle overflow in hcreate (CVE-2015-8778, bsc#962737, BZ #18240) - errorcheck-mutex-no-elision.patch: Don't do lock elision on an error checking mutex (bsc#956716, BZ #17514) - refactor-nan-parsing.patch: Refactor strtod parsing of NaN payloads (CVE-2014-9761, bsc#962738, BZ #16962) - send-dg-buffer-overflow.patch: Fix getaddrinfo stack-based buffer overflow (CVE-2015-7547, bsc#961721, BZ #18665) - powerpc-lock-elision-race.patch: renamed from 0001-powerpc-Fix-a-race-condition-when-eliding-a-lock-20150730.patch- Add audit-devel and libcap-devel to BuildRequires, for use by nscd- reinitialize-dl_load_write_lock.patch: Reinitialize dl_load_write_lock on fork (bsc#958315, BZ #19282)- resolv-mem-leak.patch: Fix resource leak in resolver (bsc#955647, BZ #19257) - tzset-tzname.patch: Force rereading TZDEFRULES after it was used to set DST rules only (BZ #19253)- glibc-2.3.90-noversion.diff: use stat64- ld-pointer-guard.patch: Always enable pointer guard (CVE-2015-8777, bsc#950944, BZ #18928)- strcoll-remove-strdiff-opt.patch: Remove incorrect STRDIFF-based optimization (BZ #18589)- iconv-reset-input-buffer.patch: Fix iconv buffer handling with IGNORE error handler (BZ #18830)- new patch [BZ #18743] PowerPC: Fix a race condition when eliding a lock 0001-powerpc-Fix-a-race-condition-when-eliding-a-lock-20150730.patch- nss-files-long-lines-2.patch: Properly reread entry after failure in nss_files getent function (bsc#945779, BZ #18991)- fnmatch-collating-elements.patch: Fix fnmatch handling of collating elements (BZ #17396, BZ #16976)- opendir-o-directory-check.patch: Fix opendir inverted o_directory_works test - static-dlopen.patch: Static dlopen default library search path fix (bsc#937853)- mntent-blank-line.patch: Fix memory corruption w/blank lines- dont-remove-nodelete-flag.patch: Don't remove DF_1_NODELETE flag from all loaded objects on failed dlopen - openat64-readd-o-largefile.patch: Readd O_LARGEFILE flag for openat64- Update to glibc 2.22 release. * Cache information can be queried via sysconf() function on s390 * A buffer overflow in gethostbyname_r and related functions performing DNS requests has been fixed. (CVE-2015-1781) * The time zone file parser has been made more robust against crafted time zone files * A powerpc and powerpc64 optimization for TLS, similar to TLS descriptors for LD and GD on x86 and x86-64, has been implemented. * Character encoding and ctype tables were updated to Unicode 7.0.0 * Added vector math library named libmvec * A new fmemopen implementation has been added with the goal of POSIX compliance. * The header is deprecated, and will be removed in a future release. * bsc#905313 bsc#920338 bsc#927080 bsc#928723 bsc#931480 bsc#939211 bsc#940195 bsc#940332 bsc#944494 bsc#968787 - Patches from upstream removed * htm-tabort.patch * o-tmpfile.patch * memcpy-chk-non-SSE2.patch * pthread-mutexattr-gettype-kind.patch * powerpc-software-sqrt.patch * static-tls-dtv-limit.patch * threaded-trim-threshold.patch * resolv-nameserver-handling.patch * nss-separate-state-getXXent.patch * aarch64-sigstksz.patch * heap-top-corruption.patch * pthread-join-deadlock.patch- pthread-join-deadlock.patch: Use IE model for static variables in libc.so, libpthread.so and rtld (bsc#930015, BZ #18457)- glibc-nodate.patch: fix verification of timestamp- also filter out -fstack-protector-strong- getaddrinfo-ipv6-sanity.diff: Remove. It breaks services that start before IPv6 is up (bsc#931399) - glibc-2.3.locales.diff.bz2: Remove sh_YU locales, fix currency for en_BE.- Add /usr/include/gnu/lib-names-.*.h to baselibs - pthread-join-deadlock.patch: Don't require rtld lock to store static TLS offset in the DTV (bsc#930015, BZ #18457) - heap-top-corruption.patch: Do not corrupt the top of a threaded heap if top chunk is MINSIZE (BZ #18502)- threaded-trim-threshold.patch: Fix regression in threaded application malloc performance (bsc#915955, BZ #17195)- aarch64-sigstksz.patch: Increase MINSIGSTKSZ and SIGSTKSZ (BZ #16850)- powerpc-software-sqrt.patch: Fix powerpc software sqrt (BZ #17964, BZ [#17967]) - nss-separate-state-getXXent.patch: Separate internal state between getXXent and getXXbyYY NSS calls (CVE-2014-8121, bsc#918187, BZ #18007) - static-tls-dtv-limit.patch: Fix DTV race, assert, DTV_SURPLUS Static TLS limit, and nptl_db garbage (bsc#919678, BZ #17090, BZ #17620, BZ #17621, BZ #17628)- resolv-nameserver-handling.patch: Replace with simpler version with more compatibility- memcpy-chk-non-SSE2.patch: Fix __memcpy_chk on non-SSE2 CPUs (bsc#920084)- resolv-nameserver-handling.patch: Rewrite handling of nameserver configuration in resolver- htm-tabort.patch: Fix TABORT encoding for little endian- Update to glibc 2.21 release. * A new semaphore algorithm has been implemented in generic C code for all machines * Added support for TSX lock elision of pthread mutexes on powerpc32, powerpc64 and powerpc64le * Optimized strcpy, stpcpy, strchrnul and strrchr implementations for AArch64 * i386 memcpy functions optimized with SSE2 unaligned load/store * New locales: tu_IN, bh_IN, raj_IN, ce_RU * The obsolete sigvec function has been removed * CVE-2015-1472 CVE-2015-1473 CVE-2012-3406 CVE-2014-9402 CVE-2014-7817 bsc#864081 bsc#906371 bsc#909053 bsc#910599 bsc#916222 - Patches from upstream removed * ifunc-x86-slow-sse4.patch * pthread-mutex-trylock-elision.patch - o-tmpfile.patch: Fix value of O_TMPFILE for architectures with non-default O_DIRECTORY (BZ #17912)- Update to crypt_blowfish 1.3. * Add support for the $2b$ prefix. - ifunc-x86-slow-sse4.patch: Fix misdetected Slow_SSE4_2 cpu feature bit (BZ #17501)epollh01-ch3a 1737997507  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~     1.02.38-150600.14.23.12.38-150600.14.23.11.0     sprofa.out.haio.haliases.halloca.har.hargp.hargz.harpaftp.hinet.hnameser.hnameser_compat.htelnet.htftp.hassert.hbitsa.out.hargp-ldbl.hatomic_wide_counter.hbyteswap.hcmathcalls.hconfname.hcpu-set.hdirent.hdirent_ext.hdl_find_object.hdlfcn.helfclass.hendian.hendianness.henvironments.hepoll.herr-ldbl.herrno.herror-ldbl.herror.heventfd.hfcntl-linux.hfcntl.hfcntl2.hfenv.hfloatn-common.hfloatn.hflt-eval-method.hfp-fast.hfp-logb.hgetopt_core.hgetopt_ext.hgetopt_posix.hhwcap.hin.hindirect-return.hinitspin.hinotify.hioctl-types.hioctls.hipc-perm.hipc.hipctypes.hiscanonical.hlibc-header-start.hlibm-simd-decl-stubs.hlink.hlink_lavcurrent.hlocal_lim.hlocale.hlong-double.hmath-vector.hmathcalls-helper-functions.hmathcalls-narrow.hmathcalls.hmathdef.hmman-linux.hmman-map-flags-generic.hmman-shared.hmman.hmman_ext.hmonetary-ldbl.hmqueue.hmqueue2.hmsq.hnetdb.hparam.hplatformx86.hpoll.hpoll2.hposix1_lim.hposix2_lim.hposix_opt.hprintf-ldbl.hprocfs-extra.hprocfs-id.hprocfs-prregset.hprocfs.hpthread_stack_min-dynamic.hpthread_stack_min.hpthreadtypes-arch.hpthreadtypes.hptrace-shared.hresource.hrseq.hsched.hselect-decl.hselect.hselect2.hsem.hsemaphore.hsetjmp.hsetjmp2.hshm.hshmlba.hsigaction.hsigcontext.hsigevent-consts.hsiginfo-arch.hsiginfo-consts-arch.hsiginfo-consts.hsignal_ext.hsignalfd.hsignum-arch.hsignum-generic.hsigstack.hsigstksz.hsigthread.hsockaddr.hsocket-constants.hsocket.hsocket2.hsocket_type.hss_flags.hstab.defstat.hstatfs.hstatvfs.hstatx-generic.hstatx.hstdint-intn.hstdint-uintn.hstdio-ldbl.hstdio.hstdio2-decl.hstdio2.hstdio_lim.hstdlib-bsearch.hstdlib-float.hstdlib-ldbl.hstdlib.hstring_fortified.hstrings_fortified.hstruct_mutex.hstruct_rwlock.hstruct_stat.hstruct_stat_time64_helper.hsyscall.hsyslog-decl.hsyslog-ldbl.hsyslog-path.hsyslog.hsysmacros.htermios-baud.htermios-c_cc.htermios-c_cflag.htermios-c_iflag.htermios-c_lflag.htermios-c_oflag.htermios-misc.htermios-struct.htermios-tcflow.htermios.hthread-shared-types.htime.htime64.htimerfd.htimesize.htimex.htypestypes.hFILE.h__FILE.h__fpos64_t.h__fpos_t.h__locale_t.h__mbstate_t.h__sigset_t.h__sigval_t.hclock_t.hclockid_t.hcookie_io_functions_t.herror_t.hidtype_t.hlocale_t.hmbstate_t.hres_state.hsig_atomic_t.hsigevent_t.hsiginfo_t.hsigset_t.hsigval_t.hstack_t.hstruct_FILE.hstruct___jmp_buf_tag.hstruct_iovec.hstruct_itimerspec.hstruct_msqid64_ds.hstruct_msqid64_ds_helper.hstruct_msqid_ds.hstruct_osockaddr.hstruct_rusage.hstruct_sched_param.hstruct_semid64_ds.hstruct_semid64_ds_helper.hstruct_semid_ds.hstruct_shmid64_ds.hstruct_shmid64_ds_helper.hstruct_shmid_ds.hstruct_sigstack.hstruct_statx.hstruct_statx_timestamp.hstruct_timeb.hstruct_timespec.hstruct_timeval.hstruct_tm.htime_t.htimer_t.hwint_t.htypesizes.huintn-identity.huio-ext.huio_lim.hunistd-decl.hunistd.hunistd_ext.hutmp.hutmpx.hutsname.hwaitflags.hwaitstatus.hwchar-ldbl.hwchar.hwchar2-decl.hwchar2.hwctype-wchar.hwordsize.hxopen_lim.hbyteswap.hcomplex.hcpio.hctype.hdirent.hdlfcn.helf.hendian.henvz.herr.herrno.herror.hexecinfo.hfcntl.hfeatures-time64.hfeatures.hfenv.hfincludemath-vector-fortran.hfmtmsg.hfnmatch.hfpu_control.hfstab.hfts.hftw.hgconv.hgetopt.hglob.hgnugnu-versions.hlib-names-64.hlib-names.hlibc-version.hstubs-64.hstubs.hgrp.hgshadow.hiconv.hieee754.hifaddrs.hinttypes.hlanginfo.hlastlog.hlibgen.hlibintl.hlimits.hlink.hlocale.hmalloc.hmath.hmcheck.hmemory.hmntent.hmonetary.hmqueue.hnetethernet.hif.hif_arp.hif_packet.hif_ppp.hif_shaper.hif_slip.hppp-comp.hppp_defs.hroute.hnetashash.hnetatalkat.hnetax25ax25.hnetdb.hneteconetec.hnetinetether.hicmp6.hif_ether.hif_fddi.hif_tr.higmp.hin.hin_systm.hip.hip6.hip_icmp.htcp.hudp.hnetipxipx.hnetiucviucv.hnetpacketpacket.hnetromnetrom.hnetroserose.hnfsnfs.hnl_types.hnss.hobstack.hpaths.hpoll.hprintf.hproc_service.hprotocolsrouted.hrwhod.htalkd.htimed.hpthread.hpty.hpwd.hre_comp.hregex.hregexp.hresolv.hrpcnetdb.hsched.hscsiscsi.hscsi_ioctl.hsg.hsearch.hsemaphore.hsetjmp.hsgtty.hshadow.hsignal.hspawn.hstab.hstdc-predef.hstdint.hstdio.hstdio_ext.hstdlib.hstring.hstrings.hsysacct.hauxv.hbitypes.hcdefs.hdebugreg.hdir.helf.hepoll.herrno.heventfd.hfanotify.hfcntl.hfile.hfsuid.hgmon.hgmon_out.hinotify.hio.hioctl.hipc.hkd.hklog.hmman.hmount.hmsg.hmtio.hparam.hpci.hperm.hpersonality.hpidfd.hplatformx86.hpoll.hprctl.hprocfs.hprofil.hptrace.hqueue.hquota.hrandom.hraw.hreboot.hreg.hresource.hrseq.hselect.hsem.hsendfile.hshm.hsignal.hsignalfd.hsingle_threaded.hsocket.hsocketvar.hsoundcard.hstat.hstatfs.hstatvfs.hswap.hsyscall.hsysinfo.hsyslog.hsysmacros.htermios.htime.htimeb.htimerfd.htimes.htimex.httychars.httydefaults.htypes.hucontext.huio.hun.hunistd.huser.hutsname.hvfs.hvlimit.hvm86.hvt.hwait.hxattr.hsyscall.hsysexits.hsyslog.htar.htermio.htermios.htgmath.hthread_db.hthreads.htime.httyent.huchar.hucontext.hulimit.hunistd.hutime.hutmp.hutmpx.hvalues.hwait.hwchar.hwctype.hwordexp.hMcrt1.oScrt1.ocrt1.ocrti.ocrtn.ogcrt1.ogrcrt1.olibBrokenLocale.solibanl.solibc.solibc_malloc_debug.solibc_nonshared.alibdl.alibg.alibm.solibmcheck.alibmvec.solibnss_compat.solibnss_db.solibnss_hesiod.solibpthread.alibresolv.solibrt.alibthread_db.solibutil.arcrt1.oglibc-develNEWSREADMEglibc-develCOPYINGCOPYING.LIBgetifaddrs.3.gz/usr/bin//usr/include//usr/include/arpa//usr/include/bits//usr/include/bits/platform//usr/include/bits/types//usr/include/finclude//usr/include/gnu//usr/include/net//usr/include/netash//usr/include/netatalk//usr/include/netax25//usr/include/neteconet//usr/include/netinet//usr/include/netipx//usr/include/netiucv//usr/include/netpacket//usr/include/netrom//usr/include/netrose//usr/include/nfs//usr/include/protocols//usr/include/rpc//usr/include/scsi//usr/include/sys//usr/include/sys/platform//usr/lib64//usr/share/doc/packages//usr/share/doc/packages/glibc-devel//usr/share/licenses//usr/share/licenses/glibc-devel//usr/share/man/man3/-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:37221/SUSE_SLE-15-SP6_Update/6cf3fa50958d9abe17c589a60c26f310-glibc.SUSE_SLE-15-SP6_Updatedrpmxz5x86_64-suse-linux  ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=18739dfff32766cca5b58be1006d8a23afaa0fd7, strippedC source, ASCII textdirectoryASCII textELF 64-bit LSB relocatable, x86-64, version 1 (SYSV), not strippedELF 64-bit LSB relocatable, x86-64, version 1 (SYSV), for GNU/Linux 3.2.0, with debug_info, not strippedELF 64-bit LSB relocatable, x86-64, version 1 (SYSV), with debug_info, not strippedcurrent ar archiveUTF-8 Unicode texttroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)RRRRRRW=J=yⰂutf-87bc2c15919fd8ea0273ff9c514980b0167753cb3a96f17768da88f70424589b5?7zXZ !t/yW]"k%6*75hJE=ld [ȏ HK-˝Q|@M%(Mȶ$&[)Ѐ!h#(Vi%\m`aUTblf?1x(Z`;쬇nq(DԞ=gt" h XͺoOf#}y-coVb)\9!*rL=T%CHuQC:L%et4MFE!A#O9]QpR;T;MeUgfLEEfH{coSO+!]qQU{Ya9:%kU8[@1Q[xCHCǔO~C!(Ҙ*$e'ܡ >a c Jt1:?bQfi2 u,+F,=jf[2U^{Q]C" <¹B7G~ {)klp^oW QX.") 6j@PגL6k5" m/ZIiY)z{ *%i?EZɮKoͭLsYˆ ziDϴo>[uA?0ՍpA  aQӦVHH_ 6tI\cfw \-nN{KD+";FI- v8@Ӣ?5r(-vhkA(i}6nѽ uuZb!ӳfh'Ҫ>MbL@vt!}QW-! vMwC;F*\ pi!Ĩʷ/jneE a__7$.}f.(ip%)u`OVN4#qGoھ½P# Soja:גSFSizF! ?EaUB^u} q6HCZ3E.&0"Zp[_>q dx ee̎` D}ç>~D @D:J;y..C'HqOh{aO}:۪w<܆kG#|ގ5Hm\6&{ʼk(# hZ_q-];|4rW.`+a ?J?|-Wdʘ|7&kx!%QRC!с%vK}pi.?T ]m Ь$K~segZ@ K# JP]O%^|No?D|wOr۪z׬9d뭳 .)ӏOZS{ T:@'n4J /5/пrdB蕃P̌AL68V/$95,dEZ2o+>bcai7( a}xnMN<$hlB| Csy?sH`Zko`lO,1R #, mHSП?bw@rF`sh|_ MY*:uK)I1>8 X޸\㕳9IKXL2280(E_:=1`T?|=%f:!cخdD BgbaqgxmSekWLAs~[V&`p7;|5x2[A϶]GgFeWn m|+,r3"sxEo/bHEb(|½å@+Lbki hGR%=eoX.|Vp w!}Op!<zx0#`҆8ȟbVr6A&*W\@]ˇ E[/d2f&Tv3j9 \kb_i3̱AAdR#e@kLM<B!>kfR(%OyՎK( 0O0-d0RsF?^hnARpU߳״'e.9:r|/mA{ [-5ZMԋ.GWcQߑVsǸ^Vm,td_(hCO1Px+EqRWEBfNNF e}4VF<,{plc_sYKj!8 X) Z|56nAi52[ȷ':@ dy\d;>n$"=%N9]t1>!O|bܦ?j]*ܑ.A(y҂!xV|ϛN&029#p@njILAaWM/rTl.a{WkcDlM_` @ReXnݣxk)riANc#Ep@w< tN >g{ܱ%aM",KeΞkw6ljPL r)Cc 0cAf®)Z9kTٝ6}F5w&li :*k/klc5R?-`۴PتgKe"z:" 'B]P@B'ő W r],OY14{#7yuT۵sXDwD%Ʃ̏|@ѿ+Ԥ…m6}.ͩ?ʫW3O.+ђyZ '51R{&Pn%S*bʁeUIxxqm ydy0yskY!G:u !,OJ>G`R8d>t4 z!yHz@vAp֣e7'Zu ʂ` ZAyдc;y)G)Si*;lPX)`DF t !M>t)QU5F(xhgQl#$T;϶@zNm(Aۖye! 90iGť]byVeEG~?(Z&V6Ao.]{錍Qؑ ^7z|yTY{}O);`#TFm7`ٻeRBMF{‰-X 04-K]ݘkO[Di)dƷ= 7S+bg@?;2ϻu5iȱ<ң$ʵR%uTAIɡj.y Ǿ90i~NMپa`ݍxF+A\P=~M~":{: OhW0`J6n\-Tewf-)Nv)ã!A<++.41`  vU s. j^3NJݜxo3F٩غG;u6c|Ǝ"#V?[nQz oTwĹ\NERW0oe2/:L%~-> 3jd款ذ-#72]Y%ClΙlhI3Kzh~P3N7*cb --a\sH>z]Q`>`I [Oك'hM X֛5md\¥fx;w4(˯ {) J qp.yVZzne' K@oNl\(j Yn-#α"D *Soܴ[K`MUrFC8-s;;ꏩȈ<FErOM1}I&qI$o=^C_ClO`FCQӰUOb8qqϷNPUzFr0]{!kMkVxO=t#,eyQ4T+΢gw쿯oϒL_n“wF@/J_A}U}4CbF2(R )ULe<(,}F@nY$roq\!q]/-F> 8hNRRo GFcpTnz Epaxn&7 !hT˳/;3h(3:-9 v|^%T:k 5&ʘfu#b՟e\GTQv|3 2͡hz"D A9k L,3Wڐl}n34uMCZbԿig4uV;Yf$Xm6t_?D]#l$Szv(A.Q>ø|( q|!Huî -1 <䱏8,yb78M?x@P'3u?_?{Lf-!bk;&~\nGXyreDH1E`\[i6X\mRXq+O-wZAC:#$O"|`hDɘ2,8z.TE/8.{:W"[ӖX=n c=1x-fr,9E`IE">ϗ]Dj)[GhEC*Ciυ}9\XD!^YLk& W[ ;VYa3f=]ǫG??sc/ kDgK.ƕ7wK||qa9g1Kt{~6[ OVѾj8=|[ޚAEFf?LOf|;b[[jșز3d§hudZ wwo9+Pn6Y>+i(Γd`l6>?6}i; 뜀ڜ\Q6* %=ԄΦ&AhpX/" Pk$a\3k@Fzi]nvg=A3IĭO.L?oЉj/gD/_}!E[%]~n<@:\S D ؑٱ0"BiY#S4Jq1 a61̰.lO >fe &%G,@²rߗ8˵&5C {*d.AkA"j~[̰@Lw8[oE`~<_柴\Ǽl  I# ?{DYi ꣇JUCH;-4Ƙ+ژM3 }?Hbm;7 O/59 "4GH=K "]+ך;=0C}Th/Ɵ^ۢX\PCJ޹: Yd%NVp)Ge_ob3Ӱޑ;hG\ r3CYS=4dcaHc,]> -?/HgY>,w6FI%i8Q_xIe;38"tӃ=1Ɖ[w njRq@ 5jf`D)).mRRv 4"㒲^l:~^I#pXDgq.28ڤ/GtƗ 5n䞇oWg֫Gvϸh,+X.-\XMhd s%lyXw d)0|S |jW7@i⃧g@f7η ę'\&nlb+b ȚP5WP&׼A<_``TuAˋwqII04 ,wHPy;5ֲE%~͛ArDE6^+3פ( UzK%`ך߲|נkQЩ;Kf&9֮EuE@H2qknF}إC4DE6DE@c<[$'h"v:,␓eD(&*'0qKY!FD#1Z|ÔAS̛0֭D5Bp -r#\%ET pXNOr-Ye+UPJugU%*F@+S%RJ0wV' Oxp7!/c 8p9NO׿>pw޻ En/]quY:dQF2]:kƼL7^1mHh"kO4_ߏ}DO&&m[XL3-Úi Hֲ` 2<_$C(50Izԉ1b! (%\ANPq8SEpRjǭw_ U9VJ&ⷋ}D9Z3HX I:ݺCzEL:FФ}PF82L)p*'OӾg3I@n6$v;Tx}߷ "[y1 &þvur3Muto#{kz)ȳk5N85j@rO`K1w2l- AD2,:mDًW歡Wּ,̇r>'lz3IWIɠR~.}f WUa,vYFCj";Im9bη?tx48nQjx4]읦w,t ]F 5Cv=KñUJ/~F7j\;oFBm5 %KfC^CbvjWn~=e88ESc]m97p4ހh̻i )z9Wl8'A Yek˶˥7Y p)$1 1>z4Gj&dh NlEb(|LI"|9 b/6rhmhCAS& =V9qHp7)Sq7FTuR]wW]88r<+wbx§PQfe`Y&Zw(D/vQD$s};˚G+ǝNߍVbieO/A๳3mY{juL~~?{Dxj :}ʔ1%R1 U/ѻݖɧx b||w[NQ"H9%(3$y"gÃGϸn~gB;w^F6AN$b9@Am[/+BGbCIˋ+٢Е֛Mr"ۘ,;hԘM”5[<Z]aL joո%J&`/B;P´>7f ;ƢOȟۭ+ތ.kzD,\ &82m!`QZ˲v^ IvN}՟N\#DI-v|/ ݿЩ7F_wf w OݏHPP6U&˹rYtJH7O$(#I0E (5ń!0"IiTfkx:9K9ɥ17f@hl'*=Zmj_q)r7m-lWƤJxdr `^rt ]$j*BB/s4ڹ-?+c%8}@ߔ+H\Y"UX1]FT3LSޮb*R7[%y|+XO7X"f5x͞\^&F`(TsK,ޠ!*Ζ1 QiW ̪!SEۂb*d'şq[l\;gDC^*py%7@Dj ;"L?ؤvu`k0n &Meщ*ڪv  d]yG ᦥ?ʦ|im@ˈ- jp 0hSmt-3 ^x=h r,Bh@#e%N95AV(OS~!{r{.N_MpXoO\LrE9Y؈'f19rMNL[MaumV'c`IE #dw mo ? KGNoiD9$[H̵,XݮX,;{;XF,^[c4Sh:}.NPBJy=No:t4\#[ųp?s+0P[xAY|KiM%]Mr=e77)kko@};E6EmE/z#2|kx:O7g=(~r\ͳ,y)^p9繩 ){\z*or0 ݸzm+ WX੅詡--W,G{wn(`#@͂h-h0(s'MMRPbA3AG^/۪eY1hh԰pCwh̤z'lEnoy&l&Y9#w|#rs0wӱYe,6}cA!˒&vã&w׏7])[luK=^ځLjPKZ|(ۍ^z<+Y٬Ջ|o4I-%]-N?=å}B0?|=kJd(-N%>H۳\몶tCUt.QL/ߪ>P> Z6^۳'ӽc3ҲnNNq|Bj^1딯ÐL<yٗQ"晼GU6U+¦/(ϵiw?W+ݾ[}d>3k~[ }Mi6 `zOg]öb5Tl oԣ>Daܰ!_da|S8{ $OJ`x 0&|QHh` >|h77D܉,D _15$S1@P5#Txq/ #%^ӳp63c RI93m)@18C_p@CL>oYXfGEkR" <Zz']:;:_E[j{<t,3%SL07m8e&A_C$_ٍ 9dlCv]^XФyzPĴnpCyuyiRK FyYK*;{~d-ٝ F9O0kkCIu H^FmPbQo?4٧4ւEurJM9,`[ܐWI<&a&T[¿0rvGކOx# .OSҐXs9",whPj٣cvlM9jipވA ?1 FD`f1-Y5碒3uJX$;|.]FQCNmά9Ǫ!2Tx#ivTL[tOZ|]hHVYmiX?ٵ5oPy%3"?*yr P@^%"b$WyG~J[:Ԯg`!hLS͡!ݺ]{jiI*"dQC7O"R'ɒq,Ȁak`K%CuMVʺ3gYfs|T(E|s_Yζ8P( 4f E3&b6'+O1-u^aށ7*4X]`<4(7^N #iW7?(nMaXĀ( bz?k֑bQ^:z;]c .m)/Q 89 M[QmV-Eq=fuQ%Z`Gί  {Uo^Ϙ4FA_%%596g ˞.^3y{:GL*yځtvO>HSɀeg9}T3Cjp[l5 C@tñ TY5v=#۷৊Lnsì kϹ\B#gg:k3~+dC;!ziЮADgqZq15|ڳR(zFv:@Kc ,A c A{WPri܂:U?IJn4J4`kwu@㉶=]1qǙ5A}K&Y󨰺Hsͯ"=T=Ev%!Hӝ)+O߬lkP:n>cT3MӶAOV  dUFu:vUR$#goS̵}' %󳳵Br:c1hq#&(LJp/f NW W8 #cN <OMFѾ[oNYr~vӧ,(綨$VV YNֹ~/Ҡ{}B{~& IL ^gaaEdJIUtA̖}MD+ }G )\mߚ#?2"gɼ SS}7N|=W{-9va0e#8hH@] (;f .k7Jү^EKT(գ%79w2)NL\[L͇B_>C 7!J"`l2jR HEk^Gtj=Z艃3`椄0(@.)V'ǵ{%\\Fz벇cel~ppT@kEk|Jt】 -|1VMSz|8 DLeuQ@Ubͧ2{~Ź 2pݦjYL$|(j>H2'# sXO`. c"PXᳮcvɥ'wS0N3qi~`a0O>r3r|h-&d͘X =\gf;xNBlcUa?F{QFx1"S"N]$SS+1lM>̱03yܑH tjқiDdpRc^ z:aABaߒg jl&Zݰwj%w 2'RVu&#\oUvS޿0ۉ~TcuF.zD?;; Wz CmWިa@#кwLC2 YXb%b`8&j֍ vp ; &MJr0#  Hr΂AYD_sҹ F ŀYFΟRZcbV@]S‚NqsPp\&)!=}5Hvl0@33b%ђa(hXם[!z% .]R9h~;fݓf-˺L̽T,;2 IEY.ton 7)sě&?{C7ҿOOWe^[ڰ|°Cg$ӊ7LV`"zX&CVBy,CFI^uTC3gc9,Etcc5\?>B%R  XՑcNz>qI]9lK"־\e# [h\ ^Ugc7RGW6hpѮ29)ٟZ[AgFCr6Ⱥe~RB̠ڈJΘ@dC.UQ)cvu017뀐~gVtzNm":/MX+T5+:ڛI.aG:Gp rUOˆ\&4IQԹ׸uTяl500$y;39h!045H;{\˟ y_|nT^a ׸u'4E6ֆN7n>XSqR@WBpY NY40/z-fuv՟ ˳y(%]EA*ƧB c~}PAݗI2 /IZjkX֎8vYl ت ې`晣5֊oVd]1y͈~s$d=q#n_U0ޒ\XtFRT*oHU'(:yR26>5m N,8T;p6?PēMx_R VPu;YR%E QH#noM%Z1sO<-+?Ӟ<rK/Nǣ M@aPKNr4%wؿ&<[FLޗp'E6ªu31;MU}4j9 [ 1N'TvaA~}ܦ5 (Jgg}d> efLxƝ YEP+x(QEqٮ$@Z+uH3\W!Fw}./Bwigնw1uGuN6T(i #1ee@ƎAM$g]0pdg\&(0Mʯo7" /!@V$sXa C4bŌ#DiĨ`=$r;YUl sN¬A :(S0]=̏sx8+1o7}mW}1|>r x9צHO#^,u:Uh@N'Aŕ6|woXuǬvPt)(|,DI$ft/,{umNѹvop:Xx# mM,uQ} XQI)1v(%әL}{sh'j];]:]֔PR1ΪH3kiNL6e/jnc/8ׁO[L]h:R]!nOM Nd_FI[#CPD/~c3 uwd_w\u:q/`dG[?3<E89"_lj x6>@z7-# X,5aX(z4#"`jU򹙩]m*< "Tњkw[KmRCVMa(V̈]x2ٗMHYaX^s$IƑ͉=.}j;L>ɫŔ@bgA ||C ~-t;"ڐx?&YT'"+}Ia )eTɞ$Y RC(ͦR,əJl>miڌn0My9CIAP6sr!q5zlub-D‡WcmRc3}|2:wO au]Z>ljSE|:dxaCmŠxuB3IZI&-FyL{ N%4~+(řu8ͦ$6*Cz X4É -хG,]TKXo-btИ%_s1d= k]nY'dnx_-ZDZZQo ;d0Ǡ }g4tr\Ҫ}ҁbIaM)P3 `Rp: z)K68[C UP) 0hqz@.ca3H22.i. B}~{)v2YWQ̘ iqctpD\?SV$*?iėD@5&2lEi jp 'Z0/>> \h unhƲϷ;9="}†èuiIAiE(א,GwM`hϲ-u% m%Q d;JkE%W|?G2^{?+ Gw *7*b?Ky[*2p*&wQ=ZrꊋuPo"޼`:*LZ~րrnr "1F3WXz*P[̳)_g[Ip*DxmTJ yoMMԇ\ȑumģ+tttS㰱YkY0j}YD/q}ۮmj22&P ||j!pKu:v'ʯDR-bKi*YD5ZHzO% u5[x[gKN62"a!B4eY\xس#g2'h*iXgM}?U$e1Ǿ+5rm:uu#v$}BnE+CND+6d֢2Bl,(k}RӤ.vS ]SL-L#/L}?AgynhX߹sp7ɢA3kʓe-̂#$z^Ѫ‰ ^ߐcj:0˗޴ 3HRuHViX2o* ^KS6CFN )WewF1 32'6)kuV=piEAgEBM\;nHrzLmtMuHIf_g5ؼ&'zev~>f{4Iv@ޔFdo꯺zHFg5oSS!4hvb(.-D-݉0YM}[qBVE < LofdpE5L:޳yaQ@6qPt< މSf6 !, +Wj<*1d:_p)8˱kj@ i]ƶM(f4YCv2_=A@$RN{qobcP,ml/LL礌C"cE}bHƘٷ ܥ[F#a"^~4b;6Û yOZ+B卆^CULQ@*Lx]'ҋ q*pFjV;xG z$px6~Ⱥ9Og"{PG wxɁ-["ǎ|ݨښ.GR)y=G}gXb"ΞrCp٫8F0.<:o, ԙ,wo& XKq%sQ&y/{~.CмTv%%zggD3ŧO|s]EojL=R1CS,vKticnAϺL{ȽV5ꦍ1FxPMil{EX{O9My"O.[0j~X]wO ɔnb8Yc9j19|i\_-f{ovP^bGýDe+j yR RClLX0g?TeY,Fᓾs2^y4vR]o)] VF3 ׮:*ISE|tq%uq S<ځ j5*+[ 쪅XR)[6K./DY{Zk32!-;`-oHtrl4t1Ej:B8bP&A\kj0Zbuk|`W&ZxnK2rX#6;p`whxF%H8QɌH)`MU쏳}0 Ƽ+C7Ki+Xh5Lu_Jq{ vp@yr3 -& |V]06!;~#~doXH9!Uzww̠w7Bd?ؖL $}\܏54`2G^xWHS"΃zltR>j`%pQd#ǖUo_zGNFVTW9X[8ϑV$vxlfZe0}$\-FЏZ}@LQ*ft-\ct.8#Kh?I*k&w6)ϸڻ8/]$^i.~sǹ =XU:(^D[J8dchO~dLi&6G+B*1C"~N$w̺JdF҂}1/薐H*wL_ǚڣ{l96",l-[Ap(f Ez{;~'Oڏ<;~;-hb6[ƑZbfY6Tc5?}ЖȚjsuY@G.LG,#c̷ ~:H|`10!{1kC<{er{w5{Cgeepy#bEH5¢AITf{FLo7B%RWjNCCtͩ8崺Lۂ/3Xʣi.r"'՞}`2֘6kp'}jkފ4[C (p0޵{77:e1SE w)]8:sfjyQ:I,6o@`}5v b}6M VLS#r% h®L2^tr؈ ~rEړ61tBĸN1Ӏԇ(MH6G\Mdsp< .i MbSE$F5U>ЎX[6Wٺ20-n %ӳW/[1 NƤYHA<'dU[ԠXhb]y5ӒSX_8=IAVs |Rg<>VDad2Xf%?8'Bc~}"d3%Z_[ulaGr iJJ' @wS绿3vU|Վ-).FtRwC XzD,G-)u;00 Dip/sR%XM4 0#m,lZX`5-nPxp<)JC|z0|)is dkwT^pIM5WC^ hayř#j۾nRB˺G#MQX#k)rxpƉ}V/&mDKnsR9X΍Ү=5QYK#(x5#1[F 眈?kfr39*4go[GZs`vV}o gte~I3U~՝y E`1~7*{ s".1;q8]HpGMKE:fBYJBB@ҏp;`gRca2(`Y|i(}2ڳ+$&O .!uV>2*ѮKUZe ,?UC1< |bF#8K&'@StEW'F'%'zs|n;x4tKќ=IZkC_c=M Wuü#~B-V3H' KZ@h#1U@ɏL23-ƭݯ<|Eyӳ4 J F!"6k*/iw^' $~>;ωLt?}]HK5`Ԋ^1DM%EPr>V7#Xbo5` T0  P-3) )HКQ W[)zeM7nD44 '4(6VLrȟF5 L_bݷB-jH0ʎX+/42azɨdl8oSΣjE1z!J^ilƾQRB7W]!^z^Nz%(ﹸ:ʦ8~WûM6޸{=ZʔrU/ΞRo_a+޼*V.BX=C "sEc 9}ckV^%k+@^8<v,Iz#XE#LM|%P=6uPY.\+AhcU:lgnz<iKبi6nkmV 0es}\ %xWa~%oHplG hd17Ca˫ҷpb/'[n"q`O8>Ϣ?Ѵ<-bhL>x) WV~]u -n\ec#{DF'y7v:'8 SzJ?Ϩr9MyaQmU=[f{iJ,`MKѷx+%b׽=~є R)OZnƒR|BefO6$,scȐؗ_iu^ha@R2K =iVO'C,JZFuoG3k/#FMff*nozaPT )+òe}G{(q#$D6bBD)LqݿRWa0aSY27mchM#t瘖 *WzԻ"Nq" hG~y$Kd?Kް>=ͺgg&ZӀ5 qt"^ǵꦯ$r!;W"(mn`{i[;iIr.3Fd~` 5Gq3fp}RH/C۷RSwhB 5ޯP8{TmYŦm)Ó1SF3HƏ+y,QFxx4`2)p*>ܕ:Ȑf^ͫ䭴y] 8 [Եq>}ЈKClnyXy !e#:w࠾iV1Ud?􈜙T(P)I%ՈM =`Ņ#nj R,4_b<\{̢*S:3?U 4/S I N.(NuXc`}z.46b[éheqEe2z%LVx?-K|R2 s/2fgb }w} ̜7^:47BƂ7`@ILc$.fЅzfg>DQh" ?5B^ü^r(*""⤎E5bQv Υ ^`4 {+x+Ad\2i ~s,] LJkKvkAEvk$Wob(V)Vé|HX ۑx7[zjISjڨ@߼>,aPE{脱vᆡJ_@PT6l"哂8K\\ɳMݚ#ɽf]gG5}s.FteklWlQ1ÂNB82zU3FGɯ[7^o'4@2Y%e',mqڟ$H5F?'.eT[L?psNB-GfS~VFeCe:HY#{SL%J$\.b'=ʋ^lh{q$_Qd 8EfeX7>3p1OؙW6{ڟlI '{}Pm$ {d:%M/`P`@IX_ yB|u"zdVѝ%$zZ=k@9`~cj҉kcJv4pOa~h'HHf@>n+ Ա%xW []N}GA**6\" n*{FDV2IxSVױ@ }?CЀbZ*v;bs"JԎbf D:9f=Ae%me, RէvžZ]w!l#*͏#,w 'h5T+[6؋zO8v)xE-\Dv3BB隘<ÞjQ%)z7hjo" K:``BIՍɲ.>4)լQQlB dXbAIhXo-Èl/a 2&9V7ecaGScOkxHG+8KyP"X^Ur*iφ/攮A߄7kn?+Cw9c! _(:ٝ翡~(+yMFE*7&A\r1CriaAXg8ՑJ2PY"<Øe}ilDWWWe+`5^ 1zEs`:om.fMUDd*>1^6G-g>?6/`0-{2͋;k w`~Ų95x5q!J%MwX޻z{+6%fzI++o]]Բ\c5drN=lb iP&B[.'q QFJ* {̜Z62JI ׌ht͹B (q 2{SXcs $rHǴ .vw(_QҙZ=pu1IMA=rS.Sಁen)of#/eEЮĠaC?[*lxGV`B6n)z=fPRAWHY{)V\ڪ nz9rN!H{I"CDZ9j7>O 8AL=A~cZ!/5dC:UWߴ˳a᤹]:c,چ=%օ<YMz\z^3NlgHa>;ڠ:4$4|uTfæAa9ۑO3X]6s#9V,h1]8 CoJWPgLJ=`C@֋{kP3/\PM詟\W\nvrPحnHH{~Sk~,K/ 0]\Hb =goLEv{3b.⠑9f@=._0ŠG@TR2͋6L`в$\eCLP"w;Wy}hBu胰C R;c\Q񛝓]?qzHqq}8?r{0ʌMq1S\42T @ ƥ&4ukk;lC5%击:,Reƀ.=:m agӽ]tIE*ٓD U hۊ~FYx rYؽfUs Fphۨ/R5*ZN 9Y#JCX>d,pF;ѻMm xGvM+RmIނ{IGUfp^"Ȣ2yqTf[u0Mxu3ʛ0=KDa@QsH(4۷8(ܔgP8SYi6y=HJX7@r&aڐCh '$WV})#& )g.e]X3hlVF"ߥTnX*tkjR9%\'0 D Hz-<#.rNaei0\]pK~́Sn*O:7yŔ`]\a@=b 0ѫ*iF|Tb 9Zbw2@yXWͩ O.߱ӫfCG,<|:'S\?H{~u]SR#sʑ9J;VH1pTJJ}$JTK7c2]9|&l3DJ0}g/6 'r!ζXL2ޑC[Q`Twp$_QWG]v~3hFݳz +]MɳAsٿ0mO 5`v3kr?w1LZY'UL.Rf~|sz ݟNΣ~tL|$(ubv@%SnrnŽpU/:* VQ BZ8_Q+5ܗ^$ wФ Kč,֗1:`D FL2# .VZl3sҩ͏Frg0 :t.?mܓ|jogv՟6w !mmTmEJܡr(ڌ(9d'_ø{7?27BaLيe"KXbFtmgvivԠj@HY>t5VhTW8*tu|&+V/޶9Q鹏-^V>b2bschəMYyz 3x2~v?˼[OYvl \M=ˡ;T12-.Ӹ<~悕C=qTNjq,1JӒ %fn.v _Rl^gy>@J '!X>8THyTA\r vw-6ǐkutu뢬ܞtVު{,#koC=ا)~@-uVq7D4!4;h;nq ᐒ o%7Nuǐo߮ltjOi`љLz"6){nwa0=-$8r0I$ULMkˈ}qO6 Rv%L>iO~߻~g mϟL껌Q_ (n-ZUÙ ٸ4 U_ 5))wY$ Yݔ?S\ۅ21mMB (HaS0}*6%-oxn')!俨Hmo7q?>zOq(zz9\ڞK]S*3Ζy+4)`d]H,#tdYB`L.gP{P&#يRCPeWdb(?q:+? Tw@5 PDH];賿7 (qHNӀktx#.ƾf`(S\ T;xbDZKUq@hWans=h:Qy0h00_Uj7ٽ:yo.ѥOE؀eA6(ڬ_(/ pc*&`7 kLr9]*{Üc< z$"BR-O+l@8ܻ"b=fߴؕC%_bFkc;_S%G&oY2*:U+Ulm¦a/|1Mc$R:nMYGҝK\}SǭERy7NS*1s{dx?l{H*#wO*b2'EXt^&E G5E3.\5MT)X. N/faRܨGw!YE?~0[}fԱ$HеMq~M╢ rǃsjzpҐ',<8KyU ޣT^?uZZH&{ADx̦/6ܖ2%+m'2<}|#rx5T}yzb՘0s4+=}va*B.G- MK3r0jJUdI(y;:@ޜhP!;k I yR8ha[tڲ3v a}U^A>O$֡Uf"0yu 1,'_q`6|InOؕijl`"S@&J6F09iYVBRA\d06İ{S& Bw䛒dW Zae%fn5Swh<,KY3-XA =+?4!QG,4*5<9޲:(Z1d^/-HaB @t-rYeGmb͡ 0%{ׯ"i _?ja7eRTӖM?H ^T9TbƇ3a\_+ ♘x҈4{x=W*08:k"5E^{p6 Ѫ9FJD0 sKkЌpZbbn%8-Z;b]E ڤx7,3՚S 4]͡J}p# vݤP<▖z鷩{>*{A{1F\nni~ڧ [ު؂`nLF 0!x*fUyͤy'&X l+ C;EԱm:`/^?(*\7P'x:/Gc'DUyaݍͼ$zY*܌ P˛r< W ^8@7եKǏzΙ֩Vք_XG$G;{r1a2;F3wÊMnj^k3UKO A[vsVT:({h"4!,0좱9 οY20NPC#u:Yz(C`㐒P|=l~Q|?pF?x~蚾nNXy&C?͠R߸HNd6\G"tMv8c^IV".ґ:mEuLIn&J?},HBYIk_fey$+ R`G}JT&/͑bE$N>3Vy*:Ū{S- I+ڃ5 *7Dפ^Hp6qᚋio N~< }lE1|;q=\GFɞ6FL KEO>=L92}z߀pU~^*N=" R]180f4H=jnƂwuʛ{p9̓Yo"nŝHMcrbq Y٤y0ag>Bq"-&Ѻ;ށ@'f`evVŷܽ8\5cc%j ,ʑ4追! "dH )үJ1>.оpOg_i5<ڨ,kw_GG/~FzgwftVL^ThH,$!:Mӡ$ uVsbF-kuiW@,sQÕo'-Es( k[rt-.ӛ-wpJ~N3yEx2YgۂBʊtH+c`m{ypQi!nyV=_ Rv2kT}n8.7QY.C :4VdpOz4+_p EY*4Aߪq&UO|°Dz=ePL4 IC@\"}P~A8Ys_+)W)Ȑ, [K^ lr;/_ßw׷# EJ-W#옖1TҡOi ëڸw|Z8/P:~uhыgt ͫ}?VM'8ѽd}Կs,Sq<q2GiAf4e/I`UQ~J>c¸Ia Q-]E836P⥿,_Rd+&tG8F +wQ6Z•6m ͈ݻAS4MTLsz!N$;F"}[jXgdLAidٱbU[^pNq2XK(CR]) F,Ǎٳ!D_B.~Eyt)Z~}q{p+ b$i۬z>{$nUA)W/͡2DN6)B[{\ BMC仒PlR^dn?`9dj"[R@ճ=ژc˾a9ɾ}M$O\m$_{y\Hk2/B⮄wۯ _3\)蒒 BARS0@s vс 5^?jjr[l<.X.z% n=3:`eRƶ^ ZbN#]cU64;,9W,Dr eè`N|j䬳TzV(3L U)/rGhdS&KxE?v`!Ci1Vh^nF|NL&/2aLܒ 2_PJH]5b+9guV% bq7gA]KLQ2$݉˞ H}tx}Wwhh3Qc幦@dzJ!3,InۃuPk=;-)s[m*Հ 1 2+q:@~.4&6q Ox_ !- O4%>US[YFQu#2g2Nc0 HAq uyS~h D]Hy0Ȏ 5(ٜ3yK7):!3~z{vG0@23/+lwǖM#BP8*~{ Zie|4jL[1]kɀ"ʀe Z"": ˸e[J1N0'D xRUjd\#QAN`T ~8avP\98_'sif_ͽ("k~~(ljq,Q,_?m1Be%҃1`p6&3Y2(]} a3Az\ǜ0e@sUq hBꋤ6K;@vvGUƬ9[qOlD]pe(1q?z(NOiY+{r:Y8DdE~1= E7Bƒ)e[MH8&jBJy1DGq7UxDHQ9Rgc xz n6 Jd|` m/1e"[n](U  1 7TKY^@.Рgl1J}dFxH )64eȪE_#HnT蜺b|ޝGҾE]rӄq.7fҁpIcy!f+dX| mW;LX+4;Kgc?J>R)6į8;DAx9k={gB~)О-s;C1$41KhH^wByC0`oĴ6fXKG]S]F0l8r, ,=$fAEE<VU ژ{Wƞk/ƟXmg~KɌJ!&Kq@tz,pYqv+erѪLw+H͆]3Zዺen[Oy+HJb4K+7>i~(Δq}NPm8»9 $eˆfVj[cb[4^w d/wd^\}ףcʎ=[>P> GRΜ|# ׬UEU,wagdj4:s9ڄ΁wIzZZ1:btr_x0٢/[8`ԁIu~Ԡ6pPF2|4w8>Ihϩ%HW RCnlme !Mպʻ&F] BFRP,R ŦX,wx^EB{y*G)Q]A+69,qnu!Dbɗad6zE-yWOm# Bb#U:Y u~* \ >G*Z*HlۄNR)}5 r fI#u?o7y$sܤ«z~dr0s6;"\ŔlRz [B-"CtG!!YUNỜUA}l J#,KTWT+C('|ƉFIUݟH{4Tԇb00W6u?Aƛ>omΫঝR̵7.PjW3A<#̩0p2/^e*Ғ[P0!*O9Z~E:h_+qU*{E ~.jher/K8.yK"濘LmCe,cQp,woػ1l|p ҿ DWx֪Z=ܪBK7S۲kOL٤6y&<%o._C8ߋ,#*~)A9 Ǜk$&.dy]7#P41 H" ڙc?.!"zBn=I_u4t٭w>@@"ZuFYBu6=. dN'q]Ex dj1 zCA)fEєkӫBLQ#SCp]Br+KƦ&qK@*vk^#-eR¡pg[#LB5[A&<+Kp<?jy]6)PKx+ 1**iK@Rɵ!޿2q'Yr7Z{!s<!TMOpuKi/{?Hǯ r1p̦.' Vo4aY Uc-+5gw±'6W9ٙY!> Ƈ+}DnnJȌ&"&Hz~ ||߻MQO5@ى\VtCMH>ϡE 1ӆ0Yc\@*{y%AiCsGD?V9ǚRɱZ0iM I}:4\mňkLۺ?0U/mV``}1>_Dyt-J5P|:/f*RYvjS5M0Cg{?s vʱ6b-18&| Mv t&YтEBY фM~n]3*m黅}}&xxPۡ}A^"³$԰u8c_^nusj5~ =(6GCEX< t$6QS"d싺^o=gcgně+ c}(T+JaEQ+UxiZ8@`VEsz-,}f!@]GtT&ȋ.0:#g nKvnV-[\H*,f+s\w ?^sJTG&As8\If\%qro]4,l7l/kʟaIIpC@mv![/ͺńu\^_!p 6t;ρ~ FJe$c/qUe$s@Š~6]`S7 3!V @yR ;#l3%y*C 2~ :ƥxrd^cΐ[Y]lS07ܑQ7BEj*3 q.do>9M 3 Va燵 yz't=~C] WhT|>ՍB EyX 2-cX*-|?M4!"O3 )l?^qٱ79ΉN SXӞasLA vlY(kd+]G- ʬrԵFo~tMC8j)Cƨm"V&@}RZ镬z a| ʛMn0ϬjeNZ]l,iBɯ(4n1Mq2߯ౚ Ѡ+N޲PB2 Xu8j6ݙ\Ra%Kv WXgeauNjXRTUpa\Y=Z=`:^p}1m$5d?JPʥW`$?3&z16|ZB)Tyrm/[j}!a#an 70,D왜 B3Kǧ}UtDy$RaEMo!zB;u9t~zX0:F+/nk-].a.=X@WiG3u`ښ'Q& c4B8כ̩'Hx7X:ުFL r#)K"뽘+;+,7c[>tr)H.Rr 4nQMfs$ piiE^5l3瘚olE6E*E{ݣU&r5AEt_~`WA,c,\+BKChϛ@ ӌvW]U T7@JιZ5ZIԶR)ڑp|/tüD ';^+5d os*~'tu {ZJ:\1gN_pZéx !X݇O3ZcVɄNAn{cbr?=QW9J üw.dT Yԇgx}tdJ!\T$hFi  nD(LIcDʐ)=P9k-|}0"Ls^eȫ6`B WuaZ%Nvn._//Y!>~[36P|'v]6 fh]-9Do#I*qv2:] 9)cK+W\vˈܙvMm?s3 O(_ l51Zw H̳tl΋P"y6m8QelIĭEu7}Y7&{ 6Fl..GigfyX}Z9N1 $") pܾ*Ja](0wD0Kek;aN!R^^ t1=V|Cr`/@fSe):sFG/pjsm-Nk6.Ѥ딓'vk<yy+ F` &]?*a0h) H;j C0!^cǗ E* Y%e {5IlV 絺KI]*lSʁ~.w \ GU̟`9: 5sH^0`aw9h0?ACx)6T@" ƴa *WKK\*/ e\˸P S{ࡌ&xT)wac m]`;Tq0C>aF߹nOfaԱS/2H6G^(9HV>DJWq|eqnmjrI@[ճuّ9A1z.EsMVlQn?zՓ8G Ee~8$ؗ]\I}8]w6ftm?K^ՐC@Fb}&L!WifD[VƓ>;A>fTC5ݼl()~r8PPa[lw-6j$b)WR;wyބՋZ㛇79Sx , !PCj4ѯG_TpBjSҡpkcVCX"i%*/ah*HG/G=x.[m-ŕT<&&eaS螺/p%ר DLg-؏@#6"}AsV7tL!X M̳uT5F lO/ &[ҳs.3uuc^P֗]G+jwIEh.A:uH0uT q*ȉ2`¢ M?)O;%ݖo+ %iᛡQAIGa&Y\3NI`h;a^<0v1Mh C@є'MɊMSduؚNt7/c'zhȺ b;QqZ5x /7'rj=32 z]nhke~g Bk- Q":ra9)ew5G1a8Ǟ&13lbeo%07wCMXP蜓VUT6QC4}nMJ/ɿf?g =~>eCߝtUZYG_& lMoR%B.@z0_'&z{ bzΜpUzn1ظqW2Sq2yb;, zm_&FaٔQEj9\4C9p4 5"9/>%3vg>TQ[H!֩PzI#8Eј*c]]ᄰ'm;(=l;9L37\y7`iOR$6ֻ$⿖%Ez![w*z^v{黣K[6]pIrDk.cn8迴>؍t@T4&Mc."!V^k1LFWAm\DnyR(6F܇$7|J Vv/A?OE_xfnka^}$ Q6@9tШv^yd//G=#jZ.c'#e8IzV3kBcaqmD9cCܔϮ@Reèh U\\/Ui3P||V!Qjcȕ`8vcc_.e˻QLӥrW<-\>udvM+Wm8}XͤRiz *(t<ݘ\`Kc7[m>" K'х0 磴 ?JUBg fשBl{܀x4P!=Ali}hGx˴@h~(T}s.5Ղ<Ųfvk77M2 6ZH#'!ފ1VAHaP A/㖰ϕ[x$":E)8EW"'1!"x10;2E%MqÉvpI07lM3 NnAx6Q}VVW"p fL؟wc=q*5DEBŗR~%:uu̢`0TdžAs#zL$%lX>h]Q4H z!^Yj.80r%*o7a\?a+0b;qZtiP+QR Q{vUksp%!3̗6@A=ze<Zo&3OƆ?ϳA5rR4>Vde$Ew.8Q}sl\'!'9%p2N $ bg +1AS\w j94yքRA"؋O.l{naM ʹ+pf?X433>xslb(nEfJ_ HUw^D٩<uE ;x!db8KdR 3 pX}`΂>kof-ZM1:ԬySyg|*X`KeQaj6 *O\ v72Ċ\8fz{G DƆYtN ]C889t.MWIF^Ȉ ;o$4,9ᶠ;'s ZZ^N#(d ev;[)o2 *YX&.4LPT_&w0z@a9/&e-P9An06YNGg@hWR&0¹S6=“FPYbЄ tzE%;y UPoGEJSJ(,*e?(\#cb$y/htif2xKJAO}n1-[3eS+lMfO7,)ј mc]ɾ G"ȌMrHAJA̰Griy}% ־fB]ݢb=#N *./S?N[6|"In 9bCa`EH⍪f~-58Hr`fp/G~FKݍ BYJC6u)O+6;xvavqKhh)nn/`?Q?wq:VFžWW:4#_/ /zx\uRTn@R(-H :r KXUdhU}9FQ,Q"5#ݷzW]7M/=;u 聓e@U[F&?tz4  |l*o:(Dy p!z{D2?wu0442%:a_D~ihm]xEp( [+snx>[i/"y(9 4>d@-?]%@ -%HUmJgo]%]:ͳQ48*yJ/?400 6EM )?Rw,wBdRI%4 ?):詆z&&=.ih`dmNk!^|NUk^AY纫uKILR1hi-40ˉч"1O?RrKAۡUbCեLXv(;ok1p~ }xT#W֚{,(̶i6ߜ ԼaA/MCXP-N&n@۲~QmgQƿ#t'7x9J?s!$:nPɮhzPLDNu޴vxF cL]DP[P%XOxAgO >/4*|WYc{l9xѰdzt"zm>OgnlY\R60MțNM\Ƌ@5_݆+5ze لaK%!ؤsl+q-ze Vm p1Ò B;`< &pύ–=8xpӱi}ۘ@J:ʔl kA#Sx :цytu[tH#Su+AǨE> EXl+uwUݴm~୕X4Huw§lcfM*E id;KjXj؈y >'FPM3U+҉K9[gL8:X4ESUXO/+r-$X!`s] EcivZT?8k` م}d)JlL%}A8y`Qbw J WM LXOaz[&gԁWvjY+_;1UZҁ6HF~#p+xv,JvzC3<o.})DM`2Ytf^9<.T=j(x4{ N9%vӡD)&NmJlNb tI T, b >)2anU>#/ (G& #Qy]}/UUL Adqe:ձ ,!еxcLi%9Ic8„= b|vBMGZ~qºTtN W[v uFEYuĠ_5MZ)뚔  p$ TNX/1 E?'^UB*Pý@?Uj X`V)jb qUGT voVnPHq{hL =4c(Ap[x"{h$)sZ9#Webx+34osmԄx;H<$9/g}CN!QZg*LCM ;: g |a8`|"il'>cLZy8+G +͢B 22񅼼!9Zv9O˔M,(2j_/AD~{964DhN+ڔ9ޗ eoRZ"4KBE`9aP@䚋 K<v;xN{4M(w? #\o:|cY SV :EDXJC6P0u!ˡr/]͖l#h(1q'+e٠K3&9'NfcڞB*r|N`~=J@gO/.7n>҅YmU'z"ܞ i5O }a<AkSyEfc yd"'2 e|+5fx/&җ2nH|gyKzEށWp?1+21aP)U7_,SJMn_z[c&Ziga+܆tCe63Fgh*qza>6|R|}^pff:o,^#bR bacYef- }z G,*[H^?|_Z%GXm{l=Qwz)Gr>. `c?m?I))W|pG3Q,aiBcrvA(C1/ Wjx!eԷqsyt-y1d1Vͮ`z67EmhV7ڶ|nAyg!iOZj_(R`ksP1^4` zcibG mNO%K:Y?%qޅc1D9\^r7iOʛ֣ 8ePa! `C&402W+#'n\-NfAŁ1||0# [aY_8YlA>+mF`SxXQxn8<mc` qW 19.#~D a#󅍳ɷuqէLi7̈́ЅU Q I Ig(tJv{,dVf Y*l'yAA3Czy /*݇I[`da5CD ˜=hs +`QR;Bzm9fFս.MR05a@Iu&E9e7{?-0#X\wl_i`xM-t7u""W7CW)0ڷbt  vێJqnr!=al- ǭ '6i77J`,hjaau}ܔ$C߭93..N㍄4L ێP=a7ox "-!oj~WaNӘmrib h˨4}Q{[J ˇ;`qݺIqF@In6h"R7{/֠^ęͪ}ԅLvmi QNJC/<2Z s=#>g%BtOrUFz;W!7קqlWk.04-n2"32 F@ctF_ D8d:5M͓tQ6A3[֎^l b,yfv>z٠d0=S3|t_H'NMșii J&rD3g01DK˕XQ iͽ:4r'g)Kb Ax}#@2.q]'L6FDts\ *E#,Pf/ߟ% T.6iBLŒճqpiۥ>HsYB+|BsZQ5ɚ HŻ?]7TBI]4 _=@`4 WEu0v.s&53p daj T4],y Í88^4T1Zmwf \'pn0Gs`=,)][ؒ4r^+Įlqw4so6O~}Tp+ ji+Wk+^7!I8R?3ꞻ@'x߅MyR#Ȭٛ)[cFoA(E/sPh4 %_J59 +ۉBc'"(bM;jOeGQ؃a\U+x<=o,/9FG.,{ ahJ}I)-5$2#XnY60χuVيcY>uF(4yOxĨN*3IGjRT맄5>1pl`G /1%N<5D񟜃*P-,?٭ooK&sFN,fe[=^䎵,bjvbwdW[Xزz+9s5 yEBz:,AMUU2p^ S0pǨ(|B| q)Yh"% rk*܆{/FV]PGRBFy_X].>*Hʺ٧"B!=~=sb=tk;'7y[(iVx].e`USx8Feb8|w$|Sm:-yVF jfMO}G=ho=ʭN™ cHTKvJ!o0cJ^zB7*aiA$ ~szj$ p+U}xamkIPJ-;3-Q;*byt2)Ds_wʊ{ #?U %f]֟1u?|aXNhAMI4Rz1m.8: 6}@QI4dePI7YinrXyxWq9- 0(qZD==c`wi:GqFXD479QI-\wUX*JN]9`Ge֐)ʏ֏Hq[$T#vrVրϬC!&B:+˺u{UG$`zQrSI~E2/K~łVDB@cpc䜰2_Z‰4&<0 lMX s!`|B{7@ji.LţYy'.o `i<_]ep.SvH2QT)0[H2jېjh>"q+@*8,g12- g). 1xfi8b`\T\}ȔGN^1VC%\ _E>QK+,-*fM1"ͭ#Qí6Moâ*ឮ6y.RY50JZ&޿1\KNFb|Zv[p5Y?"$v{Qxwiaz*j`*x V&] 9ɰ?1 AȻ`a)#]=9.N"(y$B^w x>{Ǽi2|(Ӧ >6<%~jY<_ MZ|n[ԥF`)^4$Fد5c]dii3t dl }y)EمxO?Zڙа̭H%iKqš# @[UDFBD2y/ed@ԍI?3;m@2kw&n,F,K >^Pr¿謚N^d(q@jvѕb4sd^ͶvgQO/%]-Z?vLe?9L\9s3-O <g YEBx63=/27H7֦g hđu _;_?bx/^8E4J?; sos&Uܑ^fՆ!;)IkN"Ԉ\z]*ENP$]![E[_z+C4CqIO+a-e5i*{O N,dEB 'PudrIv)^MsNnUjC%d* DA Xڿ<"Hީ/,S,4P>B|[KTܬ)X.jX!LK48C]Ǔ `}zlZcWtS2R*65K cAuCtcC2=.žgԁ!bLO eWןaթ>A;d+>U`9bɒWyOV!ԐD^$\)˵+4paH;> $5P vLX mc_ sؾ{`9fq7L"uJ^7[l|YLoIrvj$j7+Q eY-(,XZƍ뙜L"ޔB<3e| (~ά㏛v- C$ʇfQuO"5N^GW!r׫$vF,qKyܒ27y=]ޣ9r|00SRO_oOTMrW<%h^]K4ĭ |Ztا;Sz#c+EZ[p5 7N'>dK|(/qy.xo4ñBpX~9ҕXY-j4]Kbs*£=:\o01Df2ce^ǚhꙌ-ݒH}X2T@цp^ Q~=, z~QNlXTۇ]}R}@E̩3ʷN: G`z6]XSt csܼP]gJ?LԽ)c[ϣBTTo:$qmSv(&/<\0gzx!TQדg[0-b{ )-pC>BK-2nX[ ܋b42Q a"F +Ra={syWw6s$kD oxP%ՓPC@N8$)v06+QUI夶t&!ξO}@T"\GO >%XlGp:̷XVfW6SV$*y"Mef@m˗%dݧPKLWG<=p B1dE pykhWbA:K3)|+8RQ{KXAO5X]ې1s[G^L!*zOdkTE|&5g*KU0i7}N.rAcFHru1< =rnMH'͇hНȑEʴ^=زQLo㺐SAZ×bϫ:iqXcwHp_Ӥ* :ر:)Q|?8zCGM4g{H&@w@}@g~qF!>ݩ :vXW(<.dzO,sni)g$2*ga2TGj88q'Iz.6ꐻB51C_~!/|t>汱05t*#SJNl{ i|vFİpM9Y&1 o6 7~:nRs ;s,RkXR+ݬ|ZZo+Ӭ[ޔsEp߬yKa=J wgw _A_xndGR%ǟz= zrLU\kgoDhI= QOӃ˩>FBx%Pa.o-FE&Vs1{oBK9<6Eph) ȧJ FM éCZcmuVb< o*D]$>[eL"T11(:cg&"UR|]i2Uɛs=]` xja8FCr,p|SMMn1 'dU SM+5!w}A8I{g`[N㤫00 `Z6h 9%o6ھT;s!{0q}͉OU+. Q:t_R6$x2/Rے8P:^8 ŷZ3A a$1 M=BL@r<|) _аuE lYguT.eGzPd8E*\7pA8,\ϳX RF8J*e]ŀl*dUjIto32@XЭ2 ]L%k{ N)G{_#fXqObc#\},\d).Nc+!:вE3?^2Ԙd ihxbj`cߵ7E_бΘPv8-u$G &4xL 2{t@UaY,*MrAw@r|\XFzh eP m/qorⶥS, x/?nqSy*#G{:~H_eTkڍof_/^ ȃE ghCy4vZkR <\q⑫^ҜAmNF);a :/( x2UIV A\4CcolJb̭ 'E;.C bIkT^g*cXRKyHpeLkZ da 6]Pޡ>oD]Iʞ"p]Qz똷&}mw&T#\,I}3beWȓNT* ysuL쁙m" IU﫡^4hnlhԐB7^Un"j'aVZ%/ȳ-4,&nYk=2ͳW)L2ۨ2=n0\ͭ9'ct[Z,QOEei( .`Q Pw /^Ѷ*CK0n=;og#ыkj H@8umBT ?*uS3D5!U'}?x(hzkyT9qA}I`3= \mR3|,a\#ys]hy$Km w0"1P<q.Тҧf. ^r_Jį\,cՅq:%2w`kyOBx|ծx_g|3C.Ç·Xӏ4?UK:r{K<6Iu.43\7pmv\`ҿQQM(̱`\8jIu*%q "×9OJe+4K(̅?(Г >fɸEb΢4du+"QKB4[v0o/ & 28] 9j7u/FKӞT/QPN2VВt"̱u_ÚP@]}Ť/pԃBޛGS_(L*lr[z@h>zQ7Jn-ڡ-Ģ^j :%ϣ\JN砳- C4>ێ?@\N'Tge|=O "1 =x #3>aI*i7(@T|R]+8)z%^ b|1u}9(eNC%R{ŢKF.(6U)fհpRC7Lq˾e%IƆNuF ζְX{P"a*Jry5Y.n !Ny qK0kF %o:tk^ISqDxu1dU /y̡I{A."kƒV>l~u,zOb\g,3_[,A$\vZ^#?*\]7_ &MsJw|}_JȹyҫV9BkpL4*_:H+/D,%<_KԞG'E¸(bA9G+0p%ߋ؈#N$Tw)q' ippӪr@1S?xKy_ͰGnС]$/"܅pw]miY'>@+oBhzw[Pķu`',q*\ˈq?AaM:KKUح}5wPC? }[r0I#gbZcʵrH]CmCO\_ZFj4̭jKU2k { D5hu% xP(4t6dB:DCc1B~$=uH0g !Y1 d++DZhL%ܕJ@-bvk06lлT2ܶ FT¡,3va#;-|61&tɷ5-N.ɥp QI_TI%WX-BrܶMeFMc&W3Ewf" c6WyQu1صGH/\_AlΆ$Qh:ݟ;ag\R[ 9gOP'i!I9f`ci }ܜQ'殮|8tW`l`7pjI2MBGY~`e\3y|wh c(+\djZdM WO!ݿkf!qM#v| 67fjWxѿs:[P~Fv|ehz]Sm5їLJumТ`- yE)WDZ^~{|߉XtjMcAɚf({1{IE }@"?c_ytM|:?>wr BE-]ߚzl:eaޝGqF;..-e{-.сϖVHʦ8ڥ<.VMAԩ3qg)J1j d׼p}T\YXtX+yy uӑP6ajRmtFЙ5wSK}>d ݿW3[Nfv~ %*ȶz)nu m 4_;#'-oos,l7~5dKʴ'#x+PBWFU`n#ݭ7d.ẸSt4(LQ^3"=×&)Z6H[QxPGI cs0HXn z=RwV(zE"|t+!Vm\>y9FH }jݱax+GdN>hǪ\/Jx–=CzUr*NF9c PϦ$ߊn$qE T CYv݁2( h`7+{mLh)T$[ϗ ^ĴtnVP82PAy9}yC;:h>/%;x>MQ$Tij+moO2Z*}Τ]~eB$h] ox$h*APtB.y±儛dUK`R>3/F|CD`bO޹4`ըp]k%ha9Ƅi'|$*N(JEfPqhE=yQtr[^0=U h#j/ @dvj@DUSbܸ8N! ibbN8yZs$+W_vDza~8j p~ROZ(n١{OGCq6Mkl?utM]ZM5 +@fݙF"?]L͠ZުJPOLQ͉V(u G]!mt0lv *sD^(4rj<.OF,PSuf, '=_O@]/S"^ư1ٯau9zݴZ0vM$zU=d@ chD8p|IDyBp7(sZ0gW($},"8V̧J_gr7Xu^Y3e/!ݽ &%F4_ ]^ 2 v'a_O"u[ҋ&$oE+|ɱ6+qM|6̩@.~ɥ(xQ7 Kg)f-Q!RIkU苒Q_7h^MsD/?]J9ksTyŜ8T6y=5'FU;mR!5. lJ80l$ F5.y%3P{X@G1pO4 9PiYP݁5h^7fST~rΌw=ڕ:FPur$}ob33z0'ˢg6 \i1`s.&2~' HY@2x4wFkPCaAq=;|J&fuAGd MBAӔO-h֚\2z{NuQiu*b|S_0d fkqSxēbqbMcx3qżXUv]=#)N)F:pͅ@ %Q,'q\0E߅ݷ\QR?Ix4`ʭmElѫ؝I00Pw]3/m Cį'@U͚,=̳`jf96Y}|*+qiU׃/=$eP xEVB)ZPKpBH/YJk? P TN p#׃\$i6Us~T1_W6WYe2ͭf^~}pU_;I=5,vgsOo.';>4K|h{j%UHZ+72L>M#Ч8At_`F ܣAu.bxi04e-Ǒ[i{wĈPZM #}&4T'+lÖZdMAr$4<dEs^n&9vAr0P>6>Bg8 t"enG>pJr4?9mruUY'CA6ԁ%5m^ 5GbىD*|co\;\-Y1(Xlar #lb{" w)<`zg9u dFbfgNך}(`#n3C[GŸ GJ3=RU[A敇ۦ=/M QuLHPs`To/6gH60q4=Te; cF|{:>RЬ6W$Pn +AfB&b.4?[Zj1)^ v5ԯZm$Rc*)9x{;L\ʼ5Nw῝\B ?(5([)ZRdKG2̠i~j:$e.bIAd,i4NqQU%yx2{a p\z$_4g`[8T ? gŀ̉F>N* E @r%d`ꛈ.[ψ@b >mmJ꛺K ŀCc{Xmz)ejmv}ngTY]+jOeOgʫ}\_T_zƴ &U4O1/p,M@UU*!}[~TˢBܐXDU?zh &>+!~J1n"^a[ F L?3^4i.#rq ]ᑑذb8.c?{BԜ'M_wqr h8_q>^ʼnPo_0 M}1UTȗ_%|nKf4 ܵ>ddHtJ3dVoM"vx U~)(^{QMrHHnŸ;J :8T61N3Xgk|kp!ݭ >LjQ^[ 8sJQ>|kw--#$Y.LrS./D|KcTe=k|$ Ҫ|%CU"ۋO+ Q/#:ԖEXWcm\r&F͖nQP@ ^Ʀ|SCY&Un@a,kBI(޵Iݞs#LӁZ~NwZa$% ?`]Ӂp?$O]]jeDtDr$:!Ba)ga*5Ppn'AG^ya!N"л5ѕSє}+X=;)\>PmU%ݐf]W}WqXnD*r¿> Vd2$r{ǖGҊU\vyX ٘''穯I+%Vr;L, Lנ)#^IH#Xd',nٝgt%ʭoHġU0t/ HhvӢ3>*7WVyLDliq@w^~=s>9F˺:7sMkrO0.&R,FJ35Uܱu}/zODB1[c;d8)\926pLZ$!L)XقC=Ra܍ƗӚK4! I)yjν|3$N<5ZrbڤD2ӌs}Cy{G-H6\(Qw!wiB9Bni^(\̒$36 FlW}Lph7CYNNZav0@1rZߞ9pNK{(voshx6I5@*U+RXك>YO]NRF?kj Aqy qԹCc1/ADS͘0s!Z{ O dWŵNsa)q,'y:Ps 5W r7d&#K'MCR-^Ѱ~P]0͞FbmK`r)u87m/\H^1[6h{Y7 ~eIoO툩{I2ХVH>3|\`Z}L:-T~ rh!}N2 2NtuUX0FS,qR*Z$BM]4hbLJ?;4$s 8J™kʁ#{yL kuVh=Ki8~iN-Bw|+j0 G# 5Y$|$!#櫩j4N@fs_Yv*}_:Z>s*(q H20}Nt g̩h4eV/?6gd#_2'oN+XKMp쉨]Mxx<Ե$x -[I.%T!6'qvHPC4ԇIO\u=Rx^m|.>Wn z2M MH##o WMr(_1`Erva3qnmMhunƚԑNƨs*5Zvy޼4u]ZkvLZXBঢ:WaDQ!L{1VwDưJm3lm 0%\U,sl^Tl#Gm_o沋0J%m]oI4՛Sc`ȷ/y M}NVa <XPxb$Cd^7n ;nG>\dY٘P¦6#Jlį3)f2fj=:SPdZR:1V$^U4 Gc)Yk57a ;B9IgQn%hlۅ.F fw}YDk$x<;lzwogD W痁]0 mi'^BuH&IMHr+LeqkWlmRa_eMՊl_.m )B[bH$Xo9jQDjˍHM u^6yiAT0t"sM,ƫm* q&m"0rhƢD=s"1o(p$'KZ9G5LyʈeB8ĠĂXd{p"`ekxSp=;Q=.b5gz1Ĵu M|2l,BAζ<7PCl Ǩr6z,G'-Li*|<7OU` ӦF ž?@N?ʽU#;L 4eཾlCWX<9e,,DaZ}[)""C h` QƔn8iujl{WM n2ғ,{64/& bRL7tyRÆh#b[J/!K yg7)w4uEzxM=U׺a;]6_# &]{;lOLFx/)0g¢n7܍ ڊ/Z|M*^QX*i!(JO<5jv&w!:@)gG"Jmhd[[8ᜋ>hLZnEoAc6$p`+tt:E2Tl՚3#HjcN/*!#"eA{9'Y``OHCVo,1!Ȣ QrY, E h-иQjsØ7MvR'S\;!1h~_zȮq(xiIE tGyxk‹gՌ 9,",8{+2a;(Rh F7דi>+_GS$/~Β!-FPS_IV&<@XEFXt3)l@HؽUL%y0)dT55oM`AcDQ mUnM02:΄ذ SV92՜~1e\wG{rm(PgLJ³y'UMppd϶Nrf#QVPڋ"Decqׄ{tPI_$xg;^ꗕxte"Q*Nel.:(j˞t5|-3Œ;s10LC2yhzmp<&āB@* PS3Rtp6NE͖T5y (%TO\/5~hӳy]ҲJ^k gEvORޙR̒'%Js38bkI4s )4riuYR_Atڶ Ti Vf; kGe&M63hp &0ҷc=/fD>&V3aRx&8Z%Hpd[/iЍa!F 0טC*W<,&o|_!ă@Tؕ!?RSGGB8 ;'{1x#\z^NuUX3H H}@ZnDy@@C!Zf{Vс-ͥ1AkIVZq$kݒ^fb,+.'p_̦lAÕjr"߂ :h4Hl5Njl=˴E?IoORirQ!{PGdW1HL{%Sm ?n`iMyigj6;{>[oiq.p e eX&6E%ł|trG9{~XR~nX)W禿@hi06̣dvNo=vv"Ab 9ukّ3]%uDC£vG-SK MmR <\&YS\XuS:*;צdS$nY{F"{4OyY `R]yNܼ#;S um5`[n3wک6ݣ3X+lP0j J=Z$VUV$g[/dpK\@A;LYayyrfGPy"FR&OL2s&yVG*ȐGf*H{+kܧ.+yy7\-I|V[ʂ@ͣoy˖(a9C#wKBl{JFQ,wr'"&@jk Gy4N&eqT/cҞ6]5yCrPЌ#YO=UG &!gi.}oSB|DVpR)YsQkPFrE\raR[^8˓' N{&y"}x"/6p}TANyon. =PhpF Qy} )sab#: %WG&Sl‘87ZkWi6is(?[^O>uѻzv;b:M:4rJ>1~K?HWS{%uIװKxZ%<>e/i_"Y҇Cʗ]G+WEG ~eP\ٟ{_9C\z)M XJYJwY]Fr[λ%Ǫ{KSxق;X*0BDKVdA#U / gF)|UURK+rMkfJrsb[w7ɾ;)gu@8񲒞Jb C- w5*}gow22$O:A_Ls=r[W1ՋЉ 6*m}ĉA@yu s:Y.H c<4CfiIY!l_0Ll͉_ڛ=ƌ ٽ\8|U1y}E{x Gm??ן8:)VVSϷ̄slWbʝy#Ei@`M Z<UG؈?ʹE+jQ M}0l!eb~f=*Xe[ R#C9MWS.:ݴ4 K'%6k^W\ _uAW8׋OB dS o Gh!Tw"{?("xR+'魼Q-))34)%nX)(tşBEX As jelmXH@2_l;b7ߖԔ̓6h=4yu@?⏢'pbK-'c,笏(Q:Y1S' l4orHR;pi~zvMLVj6yUU[`ѮRyXqpU ?aR6h*F?- G e޷S`B3k.VSռӟ<:>4r̩[UNW:}KZD>xCcAH'pJs"Z;LeCH9}8+ɔ[p[gh*hzu@)yB_JJ,:N'篃ӡ~~/L6TF@wM$ ]pqBgc/lܚ\$$^־.6S򙩹 AyUDy>DUQC{%Ar9ٽeI=0P  yD6ckHBIW i:^*د S@7Bj~x?.j4.UzuF73t1 H7."Jr7V t'6'avHe[N2V%oI{쿮ʒ!%ery5!!*> o=YnGG?`{p[؝sLo> JĴ z2N(= pdt7cdf{h?/ 0g p =wp5YB g<ɋA6།=T $wN`UVq7g8l3h#ҫ #jZVHjGƱ~߉ƴ0iأ*IF5sV$0X-Ԙ0 š8abOy!u$xr0#XngU8:!@ "5e<:|&N̷3= 20S:Ìs])v 'ϙ|j_u&M_'h N)-j rlU9`7eA6(Bo* PSǶE(050ZoQu!4)XܽrX GWǖIJӬn "xItn3Na-NO }/W15Sh<zZS 0#&VA`gO24BFeG+~ (qsn9U|e]=/:K@!aݱMVmQH 8|i$K ؟#NEnh"wJϡ^6.ԓ2*jd> vЦx@*3DOo*wZ3CkzDz$t/Xހ9CtNA콩F$Y2$WE תS=pE{06Ei1j|e1?s =rMD  ۣ5}/ ] V)<٠9X Nwf.UP=zc(Tt?2f$G)LUWiԃїU%?>vƥUr o^Ej:̉zj+(9ʹ٤$1ςt]2GES7soGHF ztG-7,#xiiφ}];[˳^"͢TQDx|ˢuE)ztF'mFͅQIxqހ ψku 2{W* ?{5AC[Ay剜zGN3ȇmhσtKbFIc 3h&;-&<1V㑎?appU ?h,?篸ri4#kJrwڽ}jGYEX߇$y#Y#:)t^W1?r5]Bh&ZRс{L>؄ҖOM:p|h15!0`7Z7 9.D3RU(>rXi@c/b%TE(b*OeIɔU,&Ab*sHo[8"Waivg;4޿ X9*dp`aBiq!⸅eW[Db7LoИ5CJ sX_j g7)Zm bdž~@f3ZQW-xTmoiJm{Z}G7,GMVX%hJõD7eR)S6-yg? 80m 4.OٺG w ISmy^;zlS(Җ0e٘H-g|@.yД+= 8LLcYgп0$vK`hg?PXp.t/4`'xcNClMzWZHZG)2|1y{ESNrJYv%i>yBƮ}Bifx5ݮ9EOn*#a<~/ Fu0́|}‡. x9b {I`Adw+_v[5iHyx3.Y.) TYEaɩRؔf `p8%?bK}=jHL7$ycܙT ;h/ m"ySl޺ݬ›|tw Mv"Ϋ7VfĄ+_q:ZlZt5`B!sOM9̤¢s* M=pqR<ƍ2@)A -gfv̖I"Ѫ& :JAսI~eᗟ.LtLbI{`M*"݀JQr4!>,Z ed%':~| Օ% ݀a@*.L(,$e*uڢ2ܞssҲ9|}7pXN"!wd12%[*&U6N8cU;%~U:{~Q(vb'4a+6y2:tMV_-&wI*F!qӿvYXGvГdԿvU$ݗ ZJaGW-Lm)F<8V H5^LtUK7r\X,r ";Inp_)=m%)P*[P >A,3ce{ĜUZriv)f뜦oigƝ0kibuXc&1HNe2sa ڍ8 eI$D t)6PY M7YSlJ qkBoJC%VO cgPiyUek: iZ[:h[m]sJ\H]/`w{gMGJ1_P+^W=ѓ <}TvA x} @OםQf:wj(8x0-Ջ3gmzaGޗtR\Ze6(3VpJ$ڬlAL4:B)pI <6^-ƓALEzԦT~H3J-f&DcD~&l[zKߒ5)1`$ķ" UZQ1ĒG/G'n 1j7B; ݌yWBx{jyU灍(J"8K)0 m,{[ypFK#Lo'3*5q|V#-]h Oj4cP>,e&݄9Hʔt\ӢOo giJ~ʎRZ{DUO8TH /׾3cb!N] Su-*fdEr`9؏+6ӧ9;"T3BaSbz)`. _XH2rG%ff4֧=MCl_A 䭡6w>Q0KH!=E L fE$*ZTk0j{CxЍZ@YQZk*ϴ]ނy (V!p}ǞT,KYxymdBb3>Xt˴tG,Q8 0y;63EM6Kr sVw@nYZ%7\Aܰс̮z;U|H L>sX(o4Oj/l[Q.CynhPg3gO4Ԍ?H)1S.1oo7Zo9^,3o[2X\v͒,3SC ɳ ]ɢ8]pg&:3wIJUFE٤f czb핊SV7;+*, / w[nmh8#DrHX;'(̶qM;l4 J?Ɛ&'6 Q*e]q!EQ95WD2[UvM)vdᅆ \>Z߁`]iwmlC{KQj&N.ӿj'j#ɦ2 Ɇ7W Ett/ɦS e~ZebzgX4xbön+}c}z5K6a eb016K D$/ ĉa.c54CƼيqS bK3EF Т`őIDe)Xԉs6`E^lj-݌ CAIoLs2:gV984}Ȭ$'UUռhUٜ\F wNG1X:2/fɒQԤRpd -]IxBnWC5z$ s~$w{?R"^°>^^cԠe`m'Ԃ/dKt%*q!9|m~Q~* ْDB/:A;(}{k%X=t`Z y8P®`p$5;r"va)6cd\LB+iE%wd_Gj~ޫV5-WnIqnp0r?&eF^傀̊u;Xq,aXI4R U U3m!m!Ck-bz`x[B|ZcW\<癐xo3Llv4 %>ƔĽDӇ%`%SX 5kY5/mw==z fdQ VF{NVAͷ! y2M+K—b3̣)?F%/R#2A1Iij<,l*V2]UFߠQٱ2w.7]CiV5#]m2 2cQ믷w8h }[!==U5 Qq`i 4-Q8^>1Gز2D:ISJng"֗^".}9R;dSã=%/dɥ7H~_ޖwU'O#{L8c?Y_{Eq`ڄş= ]5k$MSa&B)j',?]ܩ{i. >57mj=+P zVyҎOL$,:Wn<.rTkˉFB[:^z 8`rƃ9CfzmD݂@{dVlZ4gvAj~r>9 \ו ?c&|K0HkquO@RQ$ҟۣ=럩BElMpycUCUPV׋RF7΀ȸz x=zyzSkd:6HV^ ۸NJB@9 3erʂe7#X!=P9X(D>uDDS/*#zX^qz<]8sEJ1L2vkPsdd(qB1%R1I.?{ Tƒ٥@ 2WIL8>.|w eet?k}8y`G ]pk}7 m茄= /Q۴2bL_zo_Mwc(;ߑQEr(R)TCEϿ-wa]M6`tƶl.Y>B6dnNXjGj5s룴wT2CV3zR"plJAYҤ-A?7{FsܣmNZ_.b Od*T8_`O}w%A#JԓJwMI^NPqݠv7T>vKS|r:b{qJ,5.X֐bˆ ŪyFySA8,k4Y"4 0C\GA;ĀN4d&ŵQe"VX ֩^jeӜbn ^~tz(U'$ޗZ3W? ׽KUH5 1xa%JR.x_-;6G yo?B<ǯutd/Dys+t![IR~ v?q%} Rf@U֥&!BNΈoRam҆{NȺxcx'MqV]f"`.KFCߖtN.h:|s,r)*V|?SmH4FS4!z3 ^z{ 7n~Df h`^B{P '::54LZ:4;lFЭ0&Q+tLy]舎|i_LIpxld|d*W琄{wϊ$Ш͆XQfq OLX讎lQ 2{ 9M&u$7:٬qb ~iX8d?M2@^)]kːT+7ˆP?t32r" 6Sॖo< !kȬieK 5 X2Y[RIZd1c[ey ' ݿ4)8n8'ͺ6ݢmoGizgŤbL8B~>>d#@ǗG>~_oGwA F|1+)k)u1ɐWP<+bx9 jWxNC/DsD,Rx~@o+ch!#jc{yC$&:W`S1A.~SƦSG \NċT`)gN$!sB+lg\:0=iٚ~Jvq>QD6z1 T :4*k3~%ppG_H3 3;t 9Tr,&="9d-/K?_8Hlժ>#FqμaD+ h%EnoMcDn]Dz0-/G)۶hW}T2߼z/r^Gkس#$3t 7ǘ;K,Ĝ5 Z3W4M(\@Ag@Si&;--Ty[RF ]Gm9> -a~.D:qEe1bes璺 As ?T:IIr /4=Tv"% L31{,ӖPGSjEpF-,B@{l[Y@$\C9' x, $''Azմ]5yBD$j9=|gC>c"Nş_2{5O$~2( Z:@,]\ui7LlƷi-ﭩ:|ԏ +鞓eОiJP@^WK8Xs BI466OPGTTVR(TB9p$l2(N}G[2f XGBN8&mjrALiU^ȹ%g)3,vU?F@3v\唼4eo@OxIn,66'teɏHYZjbźq߮~'9%E/>{@ئm[=j$<0w-L>5^Cm{;eiq䌡AT(I$,ᦃDRGEhɦ=e-6EI8}U!F0OZTpNV@tjz3T_6:ހ&c4P|Y/,d|HmyX(q N.YRsgg$zy 5m뮄a#81|XWs zchjI˫;Vh?3em&$ɠ6ym({ ;.O 9`(#(a{ /}Tz߽xp:eeRʠFa 껒C\ss;(>c lO>#l-VԠ?/r7 {Y^+C0{i 8[KfNfж1kKK+fg8T^alۀŝ<;T(=ʖhgr|,!UN2KC_WKa|UK)/VJ8V( ~x2mM gUՉ6a]$N);ӡE0.=D"T\ƖWb`;_(QOMPd=NGP_-T!`ּw_=6oqw8_'yFש Zoad7f$LK>TNXu(L!m:`ʿ֤֩3ǻerAA0#16rļ^zU\WG'}I 2Aep_ u!ؙ&F'6] 4ՆՕZdǂTLXdc8T#u).+ ݑ#e2ۤ=i\{ [(9"g죈1yS18+[8jnqHgK.rz1R[ $J!UR}9 lwưKE/ZTTbAUoltyCWU[fԜ6Ucm@?dX&K/G^ぺu?4$)M" ;ʡCcd0) uJsy3pkx2ےʼpx`"H6kXT#cX;ZtF[5^qe!E6Ǘ:wd/0(?kg|Y;~wh6 ʐE>ɥ'f^Hk!x酭;q>}el$G+ ^8Yŋxgz|$Hђ|$GJeM0q:=|@7Er) `gIUTt:xy8<4'97KbWhRA{X}[+/Lhfnj=YP(ZLf&O$:gBK; E`7'=Y8ڧʴ,=I;uS0Zʚ\:DU@KXUx㊏9GXMtmI:M0Lzkz;R>pj~5!}mFtq@3`Biw,ݓjbpNFpc^<&sG)KUϊQ7a xET+V VW͡O"D+eSQJᔳ=we}׽D( sO 6NXdTfUdT]J5{ Uv/Na:3@.xC.n ,'\M jFt_3Ml(?:c|PQkN(L?z:L7t'k| BGD]"ǹ)VD mYL$؞=k z1:ٴE")yϓ,Y\*&m"Jj4f8&ʏgƛn-). vqBQ2r Siu&-\gr;5(0gɠjAY"*I9`[$Ah8J&;2XJj7el[q77rzB}9HّC ݦ\*a5MP(g+fД 7k=3*HY@yC"oϪ6?ܷ&1ϫ`\<~ RlUNlk/aAn|lK9;)kto2}t:q߫-@v44K&X,GLk5,cBOr?Qy2M5M8gN(Z|"k12Wu0$t(O^R:Mh# 4P[5g'X~/x( x,`ʹ'9MnAi-\ +#RxRuou |IM2d2yм]&XщsG`Az&ʻ%d7`ct^!4;jLW[#̱S^tt O?2K&]U@;[)I)Zd'``D;7ṛQjNhhO9A7:QZ Nx%Q9H'?2&P'4)Uo H9Tr:}UHMG8]EUJ1+Mgmdց P%{ٴOt5kLEă\ *P"nI RK+|&EpTp*$L9rg`9̢ B, >.)4دOkCO͆0GUNuXy uh?JHTR!ɀaM,#gP/Z9]z|<88H3~R z]@~{JCnU0IRJbӡDT ɺ!cxO (ioTYwc}NM_%E!G6B~,Iʽ7VU(ʑ;j 6uJ9eQ= I C GaM]z]3"yd^k4Q=U1X]֝v h{A564vЬa*7_S5_Ț=!VCF҆^e?W UIH@s)J蔃jnMopt1vo]Ux?['gXQ>)-T!|-x-b vq@ =iP&N_ՃƩ5a)krV/:E*{g j23aQbSԲȣUn?eF\¯Qj_ >{q*H|"7 IOO6ʕj#@cj}a3fT_~ZTOrWݍ~}f7ox 9 @1\O~;ޒ(>L$hgF3JWJHԜUЂ/%iꆳW4< XtQz^{ RܺŔڵ(˿쭷$<]Κz- &͎7zLY8%bk6_* _T|ßPdi.R."J W $T]It9fK{7(1[<*mc꜄UL)&` MW:bԭ7 ql(P`Lt94=շy mǼؾTGt{xedfjl>")T),왵-MQ_}a'(Z- r0UJ*%(wteAт4x5 LMtYK _n-Оy 壴:u+__졀ѩBqњJ8r|=vFRx؝\"uO4{ޔ-AWJvŘ|*lƈiVc[2Q'cdCSQyM1Zś6G\r~kJ7mV?W>5,u9ՙ1?gOK ]AqH8>| Y~,W -uRq}HqݫŖrS4BVrKt/GDQVF.V 8 ĹGVeezJO6! I;<2xxB_]+͎iQjh;k65zDKw+)`$)?"Hs Y.Oc+#f]L62;Y!}-P##`RU]&VEoֶI'\Id)wƹr^27[Fc7x%[wGv(aJ#V۝[ոB7[0rQ8kb~@c"Y^l\}iRRPngd-פuw@Ql Qj¨=ժ-ɃMOkOqz8ɸ=`hC!DmLaZL5" Y1o'yU`1e߿!za?%p&;&,1Z]՞$N,ϯ[XcY; T@6%$iĘsYiB:r2ר'g?C;IoN-zI]HuwW\] q"G#Upp,`Ev5\1/:BWrDr]&`ZX*m uxvݠZ!b[ l&YA|],Xl#vxa04{ec|=#Jƨ@ֹ̗N np&8K*Nm##po6)ǃ_s|uQ|zVhөf*x<3_0"B?J`)vѨ>ubOK߳˲Dz BV#R~H6KD:]{UX D0 >p'yբҾl@axb 4 HD 2)>%~ yǞ嘽|_,ɷAț!ڏn3~tτn-nm^B]^Ǽéu#KCAlstڸP/T$ZE _0L4~/^TmQ=ej%܉pl8OC:;B=TkV0acUͮ>'>]Wqh #`PKy%T=Okۙ|`@4 YÊq7(OL@ɨ4\pV5bӁһYLoFKSKAե?yXmiC+|A؃ιKTh[0Ɏ dI6#|8Y,n)n۷Ǐkt"?#߅搃jO܂9 or7cGJ=Yθ90ut%HocvmxOew9Tk"]mR]*қ'ɔkp}t#L4-u;^ I}#7iudag/!B צ՞ȩ&+DSO tiNQMu"~APN&2R~Ҹ?ƫgH;j"u%T#oSz AbI,<8- ҷ6 y>:8(Οp<_] A+fZū^RL.5 ("BZpEŊk1KdEMu穉ҀH(ih׬UX$Do&ڛ q8˶4GQ fQ<1`;Qel\SXb~<Ӛa7+Ri0m jgfk9R቉c$#UW8>Z}vfY*.OAqU֍c13 t~*]P] e(f뼜kz=lxZɗi|k'x5\ ~6r})qmt1T4bɣt˭humځ;zRLeRifռ"tR8) 2=2CA*[͉?> LLfNuD/!{ `1St넞. -o!|1?!TqN(^]O±\1_j޻`ѭ ) p4F5T pI9JqbD˫F32SOtñY>Cm:ݒ㏋ Ə+rt20KrA&0ZҮv5?z~ | LK4uP(Y,4yF6F&Ep3Zx-%Ԏ`%IKF+/V|׈́?:< Ht8>*LhZ_k?nʡqe7r#hX+o ce"6e~BY`IInWBmюaj8qsu^Onhc^&4uj*u݄q6+ na֩8.azKmkU>2#d9 Tl 80(tgv|,ADŽɢȶy;{KÀe$l2B۹+*iCX)5*/*4yׂIOtuGFݣ ;V"O:2e&{LLu90Ia..y$jO8\=x7)8#5ջ"4"UvzNfWW.0\oyk^rCĠ\bPbCgw#5}&%!2E鑢/i<`-kX-)EDt5 xPkڝ nngeC&~Ln] INZ5yVk߽\v2U䀔~F^j,s?eF*= !J͹_BٹNDpg䀁 [qGN̞ߋ]mVE+hgzt 1!D W.ʮ.]ӗer8}ڡHBt6י2ƚ٣$ظ~K/ 7MrweE 0*p1JE\mTckOhf$:ߪ3_IE`é<893MP5R6Cj{Ip,B~- ,5^X0eZEJJMf+ q䅪%6  q`VG&oJoC}ls5): p 6hts!I˜ta r&NJ(jު8|TT.λrr ē*rD԰%W*3'ap2Д^x<<GK-Uꫮ\:_bqfўL)n1=8J] o"Z{t|V $p#eٞīwRKQ{mK@P>{CYD^rׂk"<]]],W`b_N0[Uޤdݍ}\s8β cozQZsڒqPtLnspP/s Y/7YaG[ iN33qj]Rq ۬<:?C:WE~N:pt}M!BlcPuNJtվgyhj7bEqreoLFŦ[:}wlW>V A#oqx3xAZ98g_9PRpL$Ĉo\{S?[t ڽ h.e-)؄#S vY`ѐm3RzF$2D+8|bBgY&,kJ*|s= M\OG:OOI0س@wR+\o\,wuiqj17[=/]0y1̳N:\ |n~{S /q˔/ȏY4FU0q J])#Fc$nh.T/hqنOlD"+m2Abmi!e]Է;~(|X ]+3VȠ40N%NK㹑IG!b6c2wAz<\fȖZB)މmăuo1)I&^{Lı]/!MհElf*ĉK[x< rff%hX49N;%nRZd˃@N2ԧCpw߸?δI8HW M(؀ju;iۨsgVR+HklD|}3.*+h@Q}"df &R2CeLIKn:KB+"  AI:oh8wK.Gԁi_6;9yuF ;DM47CbW?HT1:EaMƸtNg:}V3ݢ#vūK_('yj[ڋy٥9s'KVHFyMH+` /B ߔY?zs> K=L5OzPمsL|DFE ^ U חĂj5^j)^I{;L!@(sZ,3SPC+{UMmǘ͹#Dc/#')0\ؼ4^>r]Ytb@XT`:wրߤ#\Vs׊5e\ӹ9}🈎PͨbpdR{PJ文B\vh/)a1 ȵBsHbeu0+87P;. 6#[د eb-aWD758V ,"Y:zPe" ЈD.#E|{y28·AjuӒ_htSnIe'6%@W\?E #͆k$j)E^xZ\h6s3ΉQв D)2u)X_DFK>z&u<ϜG5d2W7v2 ruQ%S\{T`O9In+&BYsg(06}yԃ 4R%bEQۗxNsEf(G.!`BώdBBgq ^&o|\+%U5ju@<1VIK B eTu9F 14VGHWʹJLQpb,JPlRLFK. Ż8߸۵g/I݄U h<>P$;(OYvR0 1ڂoʼimY:L<ţIT6s (7b{Se"FiW##S>9@鬆BEnif X@/O_Xעv%)5ז?-<2iL{ȸKg,Sխki瑰jv]Ʌ.tLTWEs,}&adWVqڭ7`y.LѼYΕ~e*I? ](=w[Q#YX ގ%LFh.",4h)Ҟj,GfAU20/X;pID!MȞ9=(&Qת؀fXqYkX6ƕ+R.HL/Cj)]<: _~\ubmu͠\vbt8wJ1̢ ~@8طE?hC1Om#|Vab lOPY}Z}ֻQE4r&-pn&c-0\PT T,/[iPuk_I3~]r%;c ;!]B7_'3{DOSxLXxNE9UdPĂ]-\ vF" M'MZS~q9d\-la2S+237C)4-$:'h3hT8+D{Le:M: dWhvU6w~}9ezVɂ@:W @|;}[PA7-,_8a`~,Lٍ.'Vs$ /\oCW?8}rĵ>h,̷I#F6쟼`(Ƀ4K:6ET5^ nܐuIʳR]7ā$68 {Yj] p2QjIm5cb \X?ηb4,(r!P-3 W9X:.-W2a?Ҿ|zZ~4Z&Fõb92K~}ԙ B!Z phM$ruޜ> 坠<^ tzw@>Y0aJF=VGf{X樱],fMl%.U4Uߋ0==x?~*Ym%Y1:$[ kǓMvN9V[j >qWS s@⨺yڒRM;,'^h6Vg]+G[%~NB" G`ϊѴ7f}͝q˹2RWQl· |&jHVB̥̤AlOذ\I|'oufTRS1Y ĞE0aU|m %oZ؏RB4nb +9n^Qq(ųS\8ONqbk`Cp&4iDë>Mn B7]:0Rx@Ul~fZxyfwHbdE yL~=k>EcoVdV(ݰYd:%:+;τfƛ(~d CDI#`EJQGYFb "S\5k}e[2Q_;2vL3WP{wF>F$8N䏙8;m?=U ɗ}\8s\u9p|ae'U\|u6@!qCW^Y~yL\=`덉aQLXۈuflx4gnEGH{R`Xњo Ps^RyW\o [̵u<_^_Yw&uZE6i?rVK >g7fS3dx94~c<4:{JQGGP'T:^ Ev`"+!ϒr "c >Ũ|`.#«y:z XOB}x7GsNږlXS6j#ORspqw_mN=O)Sϴ|qh|= V,3^R!  oydwH=AUG2 >l@E\/WD!o@82n*IDDGLI)kB1c/]ՓL`@s:}ǂmv'D2pXXŶkXFYX=63ZnZ`?bBLKc3+DQUVXr A8̏(k;'^x5!愣;++Q>Lp֛DWk)M!WX)3= Q gu| IҚHK\69&:d57ْܳdd;2پ!v"*nΘ]-J- $ϰI)ڳ_d`k(fBͳ 8Ša!ShPƖb#;Znދmh˲WᢠĻ.! Pyzfxx! Nψhk*7*z4F?$ђGLM?.(śx/XGC3q\[lրdKyUeIE^5V;o?Py3Mjq{`RAtO=cexTDVNhOL@PqNJɷOI3mr!Q CF ʼnV5Q|odLyxvFfJkәc Mh}\&Utrmw>?Ӵ`6J`ϾEݣw˕͋tW,o`Nէ!h6X4 {-Z>ShN wohJ1v9uv]9l PSc\ruguast2"0P M٤b*Go#;@$p[5:>z=I/Ek/AfZa$TYt D ߨiϑ`%rF*9ⵥ*z!a#LcBZ\fAGq\B\'! &mQHK}JpEPӎVLNqTHRZNm¶RضSjWx*=!@ xbnt""I󙫼zy%B5qFY9-6?>MCsWHBߒ/'CwYz'H~S |^EPO[[SBύgyET,,LkJZXo|_SL8StτiY~@&5MzzEy 9=^l|#8ks[G0桇UT}^^T׈O=7,} E.εvMC]"dsŃK(nog|4h G8x^jd0hf5! o9P%QȂu,vɛTE06ƆpkKK4 7{^p!5>N|x"/N! r@IQ=%w8#_HMhj:ӗDw IIi۶BF>_۲tm=HZz6|Ki&R=VYA2=mHRu}^,)swr3&ۢOBѪ̜9s#{!Y`kO䳘v[ÂB0HCGҾ2c#A@/|Zz~mz 2R % Bl/ı3"2!e*m7"Z[Ӵ8ePҋ/>)Խr7<_ oJ<`YL64Ga%R.2^ #c]!(6\H\eI1Y7~gXFI:~0]Qv,S~hl w[&THzK@D.}:m55h~"klq'gE4*$-&0`sNJM6n/D X:s6.H`G㯏d <`vltnJW:F#hVlz=]ΐx_.!0u}Z "gDbdO=Ʒ?fs|jC{E YFoŘL:eLXb[k(uy Ww8N>-C*ӝYݴ{)OoXҕ2c^S4.ae<Y2@l>>iS e=DPuR{$Pu^Eܙ~XCîKsy Ϲ|/zd0,c[p R,ׅt;]δQ:HyV %_~Z쥈,al.YKW!f2KlfƑt]34GY)}9f_VIQl!j^Ml3 b1Y\.̇ i[#^$c^` x m:<-til%@ և;[; VQ $N>sdkۏU(k##al= A?IcTՖڈfDS[:#g $(f,"҅ij4&h)_ϐ}t27=רtQofGg9>w[[kWvF؀A(Su2Y;${SmJzGKsiuyf=$cZ_~@2y :}p,K)(6-Ά\$bZ b)F2d<3 Ipٕ񆸾!(Yp>+eT/锹>%a֖I3}*+ۥt;Ktʠ"ڶ7ZRтw|D^bʗ }lh˪ޘJ2e=VUpA ~$w aCLWTJ:m*ڃQ-V©dVG~ԨwMؑ>Q M(8rday8X\|߇9P5q9՞#q8Kӟ :ʓvfi/RSwaTTr>z&>"Y;嵺4MSn&چ44<9o@m Idw{mPdlhƝ[*7 Ƥ ȆSE6ޒ) ٵtrLȄG1Zrk쿶ħǭ!ݧH +.Fb[_3X%Q԰j fvN$6kBLQxgc\wpqts}LRN텗w@# c1ЖbXsL}H {Uɛ~RʇM(ABueϔfEh3C8.!ǿIYG<=3[m 4]u1'Ug`gc͹4HrEHSv*IVmBMaYjv[c:蝄o{$B? c^pXʅ"Ƹ#b$y>-,JtI;_Q*-$٘z5[8pǶŋ^ . pj#X'?*.^;_+s~D^6ʖGDsǴl"Adh,<CVU0Eu2v>N8ʌiH"ݩ">bji镃@@g찰ƃ0ߙf:Ŗumb"B2bh)Z&}5zc&^2:~|^c@yٕ(}/X]⫝̸S@GJW)[@=l v-CN"缎ҞLA|L%+o)ҸU%lX;g XoU>ǥڎ%mXd2!R(Wf~F [*ɰ%$ mvfvU:U ِ)V}1pwõJ}%pC!e,o+:czbMqos-r !+G|^;|:l{=o%zr&Tu ql)D{p /iMi3,Lj2_`Z}Þk),q'p4\Y2:#jDe"n~^d|aҢ3_g` ˥czǑ$'SQh%Pf(@hbMsl;SIZYK\: |9$#B89 hk;~1#iv3cst*QJBճsDhqQ8ZI§Mlskl"‹|*c>u ] &U383W<ֳg`asYdy)6j_,LG$ʶ1؀bs>5?Z 6ß=FoDgU${?,b0QY(+X){߉'_T-D:=Rm'+YS:X /XxBꞟoX y;*c#+s'"DwɱNAGR%/ cRB0ޓI̸`o(Vy oWjYw$ٿ2D`#351#qekQ-tyDp"-@n>|f7U$8ϺmE1@=Z~ۇ Si,.^{Lz"P];ChS5ݝ-q5jM} ^16VÆ>ݽiQDemp1X1e=YaRX^r*/fJKWƍ{}\ɗ\`X&?.? t|KjsӝIb5 17t\!b;L:ˮP)`2+(@~!?[QX4θ^xۉ)#ijYt=aկ=eOu.A"ibė?mPj26?0FxɆŅz%M躭w TRI9b _3҉j@$f'z> n;iAMၫG*M|+&'*?]Q䥁j 6@ liڍ5so׎x $d`g,0>)~x/q5PGLEba ,o<* ?MFȗze;z]gұ`/^c;?TYd P9OQoyonFY#`+*sN!1 ٸs(OQOhr5tiȸlw-*q*/T#U0P_j6}XW R>Q ҁHɿ'f7p"9Aœ1'LE#E)!j%6r̶F@S`ဣRNHFR߯^UߞxK`` 5eg#O 8!8`}#o32Np+xMt40PQc ^:afM~  O*(8ba/(,~B-jG#l[!TPIBʭ[kB7zRF\?*]&bqq9Jo(fo1"nWoLX9]*-ްaUbC[`/ijPMV%*|QO{5FbhC)Qډ%=_Łh䭨3OVeы/B>tJĖ[ Cf| fyW%8 Z-Z7=W`bFv-x?] lڄWD(ۚװEU9R4AiPk my@rDbqtjW$M@NG ~^J誃X3* R:M &*^N G2~͞R⦌ix6c=x|XtvnhE$ $AOk)sXU0Nxf><-*6x6jiM5@'z=|Ɂ=)6d#gO%wG֠ɞlGYX2rHp"4Xn=rAʴD#N]!~땞n8Ľ05vƆp&Ɇ3k(!5vo~o '=ĠӬ>ju/[y5g"gaTgUimӮH~kvt'߅il^2QY!a5BP"J,jlB/ mk[g*фsԹg ,ۻް~ȼx;*7,"aiB;miNd=a{ma"-M GzFTV)l?uAWOxE8:HpB/Oc0o^i#fIl|^0 -LJ?LyVҴQ܅ 2=ZAS (hrcц+e%k#b2,߹OBnZE>3f|}tٍX!ADX2lUdBx1 ̺aa_{~eN.[DGҡgq75X`D^Vx @*iX'Jb}ƪ .ȁ"Cڙ'&"7x–H% et7z>7<: 0έˇ) s{c{#vϒߟ) $qk(RC#;朙}s$8b >$`XOg&C=^ϬVhOQ]+?uܘm8[9 .;db#DX QHb|i_Q _]^$n;~"]c4||Tmi\łKo,c%ߌ{d`ϭgLY)Hu}[n.΃yP AϞccFuhc6bPX| ;ڹ+]iNW pj*jKϡTͱw_ G]Sb(%x˓ocBXĺ6~T[8%4\TCqU(iwrݫG\ZZ3G:h/H/:8"RkqReP&2"q)—Ks$ۓ8P>C$p[M!ju%s A}iV)@4bm wc$ػtmN_. [j\|,ibPi6*b06KW<;t +u_C/'%żEϵ` sV iu@rrxP#PGl)9KE[<;m ~( 5f ? " m!,*]L1u`X)4eQ\+JE {+~pW26I1ʎoQؗvIaܦ2wb-4ֶV,Tug֊.#R`t%1kn(l"1Wa3*L:bkt$K`JHް!vp[Kن+eڷ0({]-@B'%Ic4(49IFf|yhGǎ|Z;M@>$0YE@(mgY:!"ܵ{WL,.BƷy|r#?OG&dxJ-:ܨ p5鰖>~BC%(B4YKǪM^U$۠b3t9& " Ns;6521)-+Ӌ[oJr27=a?YN*>C }9v`/uC%˞Y;E5~eB傘!`$Z?8<Ov,llz3[_"Dz~=+'>t*pR~p:+W̾0)`5+z702?wgQG83Sݤ:c7@Ss|-9}Pab4TRO?WfvXgRF2~R8{aX:DŽabktV Y+7x['W~$Xvi ۃǎiB &Q)hb>A0 _`\V'c(IV|̂C$E**̓BM:i#JsP ~I=]ICjS0|~ƪI\ X5>cuH Fq%GP0߬dKMX0$|FFIYDT!LSB X1K,3qAnĕ|𢙐lㄬ$Z$6Ą0Ҟ mKěxs@˂rϛpzIZ{>̃W<lVLмf uouìI%gZ{ #VDS&a8BWGSojDONº\5knĶ%>J9o4 w;S2+V[X*pW~y=R488fUɚ'  P}%2 ԟE$s+9h8-o\e~NYieAo[Xkq% :M{q[KhKPj>Upd LP듌$ p91;YLEbh=jt{,JX-^+OLŰwBs:m0| J<+2M-  *os|EJ8;o 26hq TDwQ7ZʺyOhP+^F(HAfJ/y)@ V FϜo Yz) ʝr͉ӑAt!qggI0Phm!WWky>L׈δZm9RVswgGrREww›B-@h|K8J h:xǏ%Az,,[Ўo#] BefiT-1ب)7` teQ⊺ `ԖA?{х:$d9!mR}F༻C*ԎN @-Ai=m9ܬ33h  KHQ5nY 5 x +܏r+qL#OjlR&M9Y*{E) <֩'B_>=ZW]{,=iCyы sgJOeY7;5);XU!9w6Xu6/ iO}ٯviPL{x> `]@/G'28ڱ U<ӥX e(~=C?Dv Sb\69/jU ״ֹXByJ M#Ä+҃rE(,*ε) (.}oMZ{ÞD Ʌa=:6S'*[ 9+̑"BB{ѭ%팛呗@iY2m%]mal ]|s۸pRE-Zv7 Vk'qك2:}еf,sQx"!p*a܂qDcibALՊ5c!)mM9u᳃W7mG w9|kJv}HFrH)ܪK~HvU  >ڒ!ƮtX49- h,seBt'5gЃ״+*@l2žNX{4| ud%fǀMюn@_! Hdz'p)rP%޼J3HOve|XҒ'1-/NRka|xN;kb8C9ygHAu$5EӰL!1HH :(ۜ%-xKztW C?k5pprFBB să a.^8ɝewa͇ix4{E,VsC$zu?/?Pp>(8U^)2~BI=aW)9i{ .|ߢ)C͂r礔O^*O5G-XJH I_kuyU8鳜/lR͔~h{4:8pDߖ`Ւ>$_[ݺr-ȴ5!S*',T|7-:q{\<3`(nN`$қ{R) tjR # RAAByY׭^: qi4ӫ(D@QA`G|-\~Y=rЯΙYIlW@Z\/Q"ɕjw0xb&kU ymS̿ <T1w"^ cC= OAXH bfw]?5lmv`dX"" }ą( LN,]Τ D *L񖐟\?32n9l)I#=7c,i#z(lD0 ǬԷ' ႿcO"xy^޻Ga*3 w}=6۪NK*4`:OW98ɣ'%XLI-eH .@Ne{Iob0a؎BJ,`q%ݤ0?*h8xdZQ͘ FuY >ٯb;(嗒K~ /#Zh `0)F>!&%d`4 G QPFяD]:"x9iju3[!*!(*\ug7 C 2^GAr|f $4<!n@k<׳Bx"e\bAzS ty>@8q} 7}/]ܽEw9RCT&c׌X+p T+୚\-AGOF\/NfyXJ 1|h qio.*x:\w.nEGlxc IDV& y# V-+j:7wGLq&t]Ey+gñ|G!1t1!j=e}M`*xO \{DK۹\6Z XFg{c=FNl+|D層|0>  =F)ܻ} j~ 62/syr8.@-! x2}1X4*;0c .1# VH@,Q 'IS+Ӝ&j C@qm>}cyJ+ܔڬvlhwnC?vfmh؜ m830 _Ta !9(͡C y>K`0oɐ 8X? 22}7bU'g=1-DYtM@y h3# x|z>6=ӦRR"cOpa2DbMK| ]Q&F U<h}P!qn+qzPFy TO8[?a^6b?@sͮm_M9\bQ6=O-і+TIf6  |qx>Em<2v % ? cԨ_v 'G:f !B?ckgmֶi,AZuN.4sf٧qԂDWE x @2//R=}ItM2Nٿ'QVpKUH+`Gcʼc=ݒB(yl,*X$sj:Jh/zP^[1"7 (|%|/q:fQk#l[SN-ɤ;Z'nEq,1>X3x ǷR^:s/⊀4}FvTyS$fS*Rس? ߏqhPL.:kA) qܳ<tqq,foowac~f84SKEbɉ ^ j43t.:+}G\l>]V;yS6,Kn^p:R7UZ6M m[M^A)^W8QӍF!hiL޿t-/I'SLGNCI2_=ڸDk{ceO!S.T&-wxzdYh<!{\v*ʔ.Sx9)\\HJ<՞s~8K#z 87F?aTED=<oM瞎μī'3[C%`MW1OTOtT0/j=SJn1N;{ѡZ9k+XA1ҾE(5p=.PDKka΁g!T8ծvm"Mm["{f~c nµ|M@K煺@?ՋUFx\ 0gSHR885qTby+@CQ"s?i?^'I5u2x܆`}?nY ʤ~Xvb@[!B|$/qW%\_ ~vdF3 P\^OaIb1|É+2Eu >P.>y<]Fш'28kx/Qz> h_&c~c9>2=%A@蓧8UCWa_L7Ֆy9^}4X'FZBQXc-MS:ef2AYM_SgwY#EFqN" _*Oi\ѝo+HH&GRt>~rFucs<^ݧ(7un? \os~bZ qVQNI!'Drݲ$WsոMk T L298.ĤzIe뵶ӕ|ur.y[=?,M&;k SiB,Cߙ$"i C0X6OڪE#-VDaRAh322sp ҭ;9CiFIڗ͂\ }^fИ6j֕.bT~ܭCS#ocQ+}r-TsSBVE hWt7Gߕ}~ KzXZc44TȈٗ*>1(,Y)v+7(sB žʗ~`NE<' 0e 4*Fś1T4/eԒ8o[[e]a ,R~BW$gkXܰGJvd8$!n~M?bM_͛ y %^B !]pd&^T$l/+əѼOa\o θf3א` Rgvdj^Q gYǠ( Ax6S܇D爰L%*u)I!h7{RcXp?͜?X,ځڟɺ&$EltxQYe(!a&i̲AZC_SKcHq1ĹzLY?N`ې请4"fF 6Qw 8E\^^Xԕ[0/&7R2(lߎLJwWu$[O_.Sk"#Fޒѐ k f m߸4:k>\@i.z8 ɅAaJokH$?֚7\ @7@oyGCvHf<CTV`)(j>tV*ttdM +'uV*kÙzW>Zj\lPk~fZ;t~Nj?Ҏb6ˉOBR2ܞ5rV$vjN6tT3w3iyXrِ8N!I==}DNIpnf1GvuNq =N|c[[p=¨Ƥ:a&]8~Z33zA-{CLkepWTи[tfq< )XO:'JAͣOz)ya WJY{g"\K@RFY̢e_ p*-y{L«B]hy +;9_<:H $M8-#hGz }\C ?& x_[lbɑ"֠-)?!ZC(cu4H$~+Bx[qPp\> 4~v I'=$QHAzgӈ/.u^ Ih1S†htcfm :8`QvGZBӐ(vtl}v(ˡtJ5܈  x0ƉO!1@m]ӳkBb>j\'JaŇPbbpֲ_Imd&}/U?W%y8u0M\T#9f4B!x|~N@wLȎ. ^Il [N \bh-_gy#ؕifWnKؠ@ny En2h{OH3DtMl)9dt"=`M)sOY^#_xα񯤆2#|oȶz1_%Lw˒z& LrTg0Y m?))GLG0eZH|6&Sͨ,iK:dZYRh ^}hz|3lވ[t4 /nR^Zpq=sG| Imm즳3w!S7I?A6%KE? [lk]vm0S5Tqa_fF bJϷ.LmND3֫"9i k Mn{6 {`Qyo&[ LH < f1Q-gzB뫳q;zRǖۈqhzgryL_]i3j4Gt~ldU%Eg&v:Ņg: jՀwfIT۫&e q/3x扄wHSNԡgeW+˾'i̞̞CTLE6~@CLwoh\ :A@PDuяcD9Wy^+)=p3~q|Q߳&UFYњM ]vYDіc!/"A;R$"\zMx ."&M(Z"1s)=A!/vV=wǥ▆iL +85wz; DoRaA Ūek"Jj,xc.Ų_ TzeMJI0󰽕e.j<{m?| 1HvAFw|9`cƝk 1&uAEhP%mCT.lY',1 ζh`ߋj5u좗a ꘚ+zochbp>= av"Ŧl XܒbK:ԬjɺM|oN/}oxZ˥|:Ov~qyd Yh -REI]J _dxZ%z9a垄8B)[um+q$tcXdp؞R0MlȃffA BDq]4>-adw)veOQT CmxOQ QI<6^=l{nM2w8t7LN$.Mj(&|VmRy, ǐ5; _j amd\:T:q*I8ncƶ҅OD^CF[U #\SD`Ӡ{ |\Lf猉Ҏn&f!6:ވ?^rc%}X?B}Eڕ͘Gg@*YHJeoz\#Lqk/0@y6Lskp4;# *UrOqs3Nݪh{\4:I9) !HF#[뗳? %)m92K߸F7?}fEx6 6酿4*{-İ<]ba V2~]찭d<{`ז+ 9De'c9SUjQ=hslJ@ >Ĝ;+5V>xw,5YݫRD?Cڣ ǡexި(Ө;knTȁ ?/I 5WX 6J-9I?{ ܲƝ-t ~pL*L4H`"ձ,?zmWeS'OP[I2ì%%x~ʺ޲uj ᕂvȀ^Y;\E`Qn4kn$%_-쾧pJ6a5 E_(,O$xͣ@ݶ[=@}U >K9v!D Dt *6e'nk>b,,"(+=co 1 C6MDyTZ|CJI}ko4Ϥd[AWvrĕ|F}xS)3}3$[y=q9SRQ$.\35ٖTu۱mj_F>8!xe=#ҙ Te7nNb{h&:ޠ>[ U-7ϟXI@aiG2B]byyljڗaB"G8y6v %Fv;WM &[AOH.fRz_‹9r>ItԿdc]`W3. CxvC*NӖ Z8+Yߩ nhyX}d >NnяzB}mb`sf% u>W b@]EPskq(@R(+'(IOY O2[vw1zUn؄RCp<L#<ǵbAij=5Imɀ]o6p3VhLI,?5Gi\LX=ֈjқT(Q[UFZP-{' o!Au]DhB ߈@'DX^W@ RT9qpMeau`goU˺h,{\hmCeoz]LW1c$%6k i/gD^PGTj V@i[ p<0]<:fgXp7ꮅb B,$-p˺Pim 컜SJ%Մuԕ$1r1hN[ILB<"{燽 $EO&,WU!ᙽ"hvnrqו;zvQ;Is*@?v;39zPD[E| `m{]4OZD[+ukZC>'DNiP`x(VRԐQP8l=~]Q=O[/o*"1vrE$ƯeU!HjP[s;1(oBfQ&Ԁ,OȪ[Afb./-  P-\.V|G3C Eh<6;#՛x5c.د~%Ǣm .ڪ%6vVgY)+$F #l TkܚŞS`CӶvqwteO&^xoX>!a9|!G2IoX=f hwjm [ߋ-Kmg{$'c!CLFK`Xc+$|2kQ8mTH4DCcn56U2ck2X[cxTX,eWjJg9R̜=?3¯ Ġ_0.ӹP-Y8 _u}r,JLT[hC 5C7~hkmcOOh2+o ?h%x+C5Ԁc r32](WK͙xa5 2\Hࢠ$~P|cQjCh+fDLLF24سiU׷7)q5~Z%W^`Sy҇#p%tr)wa jeX:&K 86T *l.,K::3㥮_ b[.f qL+3Ovi ,lc[JOZycF~.ݶl%eKb ⟆HL巺\e0,2#1L8;.X.opV/u>"-K?fN1CpVe蘟T R)L NՀ{bB4P[Z~cEd #I ѯd9e'eJx6!]p5YN^JN8Q8B)HM,1otY"&qajٹQWZ4%C ǣ rQϺYTaWRY=I +*['5V(}͉Jo嶫wV8Vvs0ɤZ̑Zkwcx\㮁5+ &(}4A!癠^\ 2|s_s]w7"͘.[]mZWRf'v Uݵ KF-L~t~]י8^gp6!wo,Px cΰtٮ*,wj|I"֪5*nb_ATo 3G}|K+] 30Kyތ0뫰F;pڕbn`I()pChw+,̞]}ùV!X2K*5.L 3iS[{â˪0* fEc$iR!%h;q\RIiSy꺐9ܝ g#dWȎR 81OhKkL++䝺Deg„7~S@Ii԰2HN 'x&,FbKi7FdXlě}=6^ Հ2sۓ6n85ZrGPV#& GdqO,ɾh,ugk`Lw`H%5r'w 4jNØ Nuu!⩌S4FZFl- :p̫[g&aOՕFa8 ֝!.zIS,ge6ЦADɎb )lDհWIω+ɬ_zbMV0l?`'oHlEӉ*G9*ALTX}S&3,&!f6jd S MGDWMC>l4`t\Bhp\=eKx@6cՄǟUO%O=,һӗgtf@ 9Ͳt Mxu3tUOA8jQ$x³ѵznJlr)[lԙ^"/v;YkN'YM`hƄPrSUÃ|h)ÐIrˮ_o#ʬp&URz xb.^MABl!4~YOO M kjrJ8Ҫ,LR>-2m4hjt1iʜAz6Q>ir-{WrP%2\Y_4\΃cP_\7N;e|HVb_cŸ8Cς`D4]Z )w^Ϗ,Gw?[8 $!!slgU)Lc.MOEn7^|Ԣ4 hƖp\F=AIt Ɔ Lds(EV3R;reN |[^ d yxb|cn4}j;)x+QHHzFD;| })/~ պRڍ2w ?z+NDFe|ݟX)_KNQkEZwNg5\wDU*ϻţR%8%n<)xzRW߅Gamx/_H!"x%+6 3 9 巧k:@q.*btdG+ݺKy|T[$u*Hqh H3Ɍ[LKP}8(:}Ou4)Tol;YD< oC[OjG]jtxGRn|b8rX FGa ro2XcADp\nᚺ 0Hh!Oש߃Oj >ge?ˋ/qz뗲榡F5p3mDpYiy$ֈ.ɼw$i A|kdb'/8 pR8ųoQMAzVbұC]dB>R.u'5X\t8:c]o{^i@LcEy E,|Uib$Kx-/44lac+WT{X#ۜ@> md#nDچ6!^|" x J )?VɖΚMl#p Go#dWT1LV=l Jk]ٔU(&P8d$/5]|S>C8Oưu~G#\Wtt( Vq_L?D%|+1vʁJ{:ZZ<~E%u Okىo #e;@Cϰf *dҾ_Qt.dl)ܦ Oȗդ~qYSN9O@{`"ABRm Q L+xlLy{GCzx <[H :ﻈ).їa vC7&Ǟm&K G BJ0,Q6̾4>q02^ʆqpC~i|75ALw mG-_4.kݟ+:D%͊8~ǼB+|ȃazB q@Roɒ+2mlv4KTm ^[;Kݯ}M^|wJA@vJ@E eP HcS(D_iu@ /o9#Ҭ:bUI/=8wbyŞLSCYP6,0SgPOH'!vu^k6Bq) |h ,xAc@6@QO b+ °oB bLV=+dU9ZE×nwj H.YG:$1Y9w#] 0ʒ%zZmo26+Ws2q!9kPM ]B_E;Cg(0r"^S OsN系$k ]x-4 U4W[4҄mYH6r7AcFcQ/WS;F-#l2qJFc^&<wٚ| j9,;n0+4){6~k3/d`elX?TY7f|: d``rPmu 4˷)kPkJȎY(u\oXwXmGEh.\mAZ%EnG+;IOp~I&&߰mÙu |)t'|<\UޞF|Juw7kИ劗4r q DyȉKvE䍄=R , IUW^BE @[/㦚y$H 6:,v.uh[ 6IRoW b<ٿs:ϓ0JXr0t3w 8=Df[£s弡꾜~e:K Ā!ӵ7  Q$Fz]o;Wg6Ugԧ:VII*D[OזrT&5'P¢Fbt Z ]9&߭FSJĤ9x^z/F|wR֣nݦG"5*^M5+¡Tdd/nqB&(Iu kSZ=lDkl޾[DE"^^~YG1 5󝣠n}.v(ʡmHrdn0"m;9h/ێur0&z$]sT'9 xT!I2Xl1 5vX@BRK; oGsn[',2iM[KQ^ 里@3ݟW$&{1h2OŔ z (=ؓ^ob{bD\(?B7mG0W]eftCԵEDABڂ\- +I\v{t8j@OڤSK/M P!*2-?4^ B&%^=m%& vE=u]ᓚbʓlã,WH8Fjzz̖|*|Rvd}Me 直f #$QqG7?]` 3dwxV=.o2,tlf݀e!akRZ:Dd#%(ƹT>D0Ρi~ܾ  >moui. ]d ,\Ԡ"BdK8v_d_`Ak_M+(eN.W"NWS#(ztyԶv鄰'K6F0xX+婟; H2awNjd p/NyHzm=M05gG~|a]6j1¿%lg#+ xU]x3)2`K FXK#6a`MK<}\ 0³w }B;'r(%tf'H@ х\?|U֓[F' T#U*NWp̑Dw@)'m]ђe- Knónpu &trs ХXޅc=>%vRh=ץ& U 2 0ٌ̻5kLݩӜ_0(S|Tx@iwW);m6-J jش{x|Kvzlshh8aDC<;ywPhxGbJ&vDew]cnS&6( Ki(ZVp`ʢUM`>!]ÙkeP@f tKY` -ڕoYj?2PΔ0Ssό95 nΔp,&vB5i4bͳ2N)sO .͑fq-}|N2o̳xtշ]KT0,}+ ~3PQEj}%̎?-KTS](TJ`VzE%=0,tvP+d׋!~3$$IIWgl NZ]!'}/dqkVy]0Y?} }r=MtS Z2rYrO}tp jƱ=w~MkQ gpJ-CT. dhPpPNM UJ<y>ú4Fk Zբƣ#ۉnTf7mo"]AӲ)gc[-oA>r/x{\K6C 9 -ji1QSq k؟ FBK%ZV/97$CH-;Jgؼ<GܘfiE655ALT#>S; WP(2]DVqXh?)Ew(_Ѓӷ^օ1Y/G^'/ Տ@1gwOj5}R.YKN/Zv YEC(r=~9ö^qiѫ(m/V'}9i26d2]?gTTHdHDuI;*/dSc bԫ4^`gaJ/?UPjnmV{+T0fnHJ_NRd@l+XZHj7^x*ӑlqח 5D3ZFP $ ̶}67{W, s6_(_q(F*wWQ7i)\|JǮ@r}1-obCkL6wXQ mHz"r 7Eu6TX<)4SW84uզC5{Ɵ Yt&A1Ʀ{C.)p6O]7w}';23fWtwTphUgv/ -4I(eQ+j$Qĺg0 dTl] 杅yl)}q0BY5R<7$ܫq %SpBmo֫=HT.Kf@{ۼKBXhuWIG_ИZ>ax$!e VQXEQEZ1k^zϫp tI+W5a{-TH!<3X4ÄSx,DBRc >΢/xjۥ)c9>wyA^Y +) f`m+qፎhw:I6%E X 87 B#Ru {(4dW\iLe; ⱛFwL<@\gqW9=>ͭ^8f[偪Mu>}O#1OATeGi"Ej@7֭-ͱeЖLv<~e0S3CU𗧄 i/&pUG#vB Ca#0' ;"x)cU+RgQإ} IG#- 2׷i՚ʊ0ƇyESbKicH尴dkܯ6J+zh t,EeALoYRׯި&+?%𝬰 4ۑKk*K_nÔui ?tdxKIj_UPmN#˲(U (o5}fx:RhY2EKvTrD~!]-f KZ)ċPJ:F&2mh \u i-񌷇$eeF"=I{y;T(OzS3 iVw`Q͕~>jz$8@Y_a>xu5k6ucZF @ yc(CO 9R[.tA۳ Ic$4Yczp&e^$։,*.A΢Xr:f8Ԏ4s9D lc*0)pܭvX0#)SڪLbMR?#"V^I WS"$شܖ!PݑBŜ<©V>h(Lb*RP*El8Hqe4fDFpQQT2~S͉H+dxHJ!NZL/~۪bsL,Bh?Ô1{ðIOG)I/òa4B_>>z#EWm~1D#ocL4BO-F1_D&{(c7sY1hv\0qܙ$stb|)@BEB}Y\09xv!qǴ:\b >־0KWSƏ/~گCa$-IGo67Ha6뽈\?rcZ$\<@GA(NWAmye4S "|4Ê}GADG{3#u֏NO9a?M|c^/YA7AYyb>}-QO\fE|`P֜2eZ[j6c"5WԈޣ#;CB?frfv5yb\awqZ@Wh8KC;.鎲ɗqi9ae9s2K!(,,ɧOzG-;؉GT%3Xl4k*!&4rSJZŖtZMO(̘DvnA()uTO:TJ8<alJg[lR! Fs~1;月k{eR#ȫ+@_IlZ\"jL$ p>̤D$I@4g&*/20+ǭH_)kdP>b3q儺ϨKI&:2.# 0~0pʹ$YmZе 3/94n k./Q meldz;n%aFTOW d8@qX>[s@?#9Se\PJ\՛'}Wc&Ag7v+ yJj5ݓ'EC=Qf“/?ҬokN."^i:!1#)x߁i3zB{[w2!WtRAd;ߩ03/MŸ76쁷֋ ;Q9;~tayΖklv5U,Pq(7$@J 3VHHH@7z5n^P؍ smfaPb8xT!>&DW)>\U2H@"KB56pYƘ=s%|+$yJޮ(\e䨸6 Me#ț'!9ױTJ<q(}:\ ͥAJKN,=dt* 9T@.:kkoz>O6{{'3ryXʳ㸪ϯ $~_jqj6Tݜ)iwȬ"̄TL3[]v  ߮9rk$SlyA;}7wb!B/s2RV g 9DԮ7~yß9>aBmihK:t@VV9H;!uTDķh/{?JĨ6uzYvBB׮T~;Ix>NT~,4+xBIB+ ^┕7A6ݖ%$m:yxtzױ!*jNIBl&P}f+O ;obŏA:?k9ejN9> B0rh\h1K3ff)zqߡ5 ar˚ﻅ 0 ьF ׽ 1BQ?j"s əxxYAgRT~W8 Dwm%2 Z6 *}|!rZx27{,nQ$;+0=#C ]0d̗A,ET8;u'''LL=㠕 Z?>(s'Kф6Nɥn 8'Mxg fU`v%I\c|~" 2Jyn1{\<Z m9 61 3/<=Vr1%6L&f#F bl %8?eȬ,iiWZMy`!^4$:s(kcGH(" iՐojl;jA]Mꄢ>|ʼ%DObM=a4G 9â89HzPY[Dvۃ) U+?QQKFAY [:%6!5ߒL%Zruf-06cu<NJOOS e%KxUG7?J [liR}T? O5ջ7 Ʃ4{c,5Gt2eǘ`?o `)׿x4{H-HJ^jNk7Izhoe^ <6XVg×X}0J^묖ݕDfɿQFcC"5]/s}^uLeګUy 2>;̱,n6dB8uexңDwig!~oZ򜷀픞R?3$-A_0a{)DӿzFx4 U u 4EFWȋ2uF9D"q cRu-Z\I!~2a{WR|si3ݰ䔺=N>RMX^a ~U.ɩg4ж{ņTiG,تlhU5e`} r nM%~Lj~LaJsmxԻx |hCDq 1&-d JѣJEsArH)6+7 @GQ7oGIJ3ZxTPFjSj88"Q poŜg;e;7-L)܂`>}SiG%bT^yXHΨ|7ݧ ! -QMU`P!d06!Zg]PgJxFt0 fg\2lѭC\U,y~E4@agD"6[wmĨ!?;R>;YiwzXZp. p I2\V e}|vZBBdHeߗ)BmPm.aWb(FEH4]0v'p һ W>Վ1w1sF~~ +עPМ>8=r7 ;Oʓe R%ef՞31iXHW}ұ4fmҰB&KXB$WFBG@]F<޼w>x v=f`m099M2YX%F8A:<Ro{M0oȲ5BFgdT|Wd!>|A BNfdՕBb1<%5nJ:"qax͘0쇡֐8Gzп1B|8+ zDV>"azoGԓƗ fy,+$cwUa͈ͣ̎,8ǐXLQw 003YD1o2cY"ZT /LRac0X-}!ɦNPLVL6oKeѸ/)Ѽ} )⥕ؑDl-[|uWFSB,<eKXz'HYhۛkDE.=yK ,oʱeN}Okuhw`A`&* $j5*E;$;4K̃O ~__q|(vC)Z/Fsw ӕSQ~IJ)ۀC r{s&:wdć6`ccD+ T>X*Sqi uH\M^c^/viώ1ꨅkOT5˦"An y!%!Ii (JD?NJZ6ce#:PMPR\u@Ƨ Dm"ZŸ_H3Z1U+]ulzt礙Alj7FZcQi>Hnfw`V /gi>DMz7w_l^9B ҉@g\/zWbM%d>舼ZL]. _QDq{1c-; fVJ(+_F#?ܧ h֟O^¨u5LbHr|H~])iVDPBЊpF 5ʧ^*lWc1P TKMJ@ V:Zŝűџ0xm,*YsHKseaǐv|B+g% ڐ.Bi6هlvBّ]Ixa5^^' d S.k?i+ ҝPPk0#gc{!\WSw.,HNodo͙:S^͡Aj?Iw J`c0WS3U`jn6$`,CFѿe6@jq^UWѴeW3WNܒޥ?3=$Ed`-vs] =Hݐ&nͼ]E }f|~7CJfQyo4^7cw?PEyI'yqRu:ᖸQ(p v$+(@ ƗuhA!\#K5S"=/xnk9%0`mQ2+%6WGaot%װ<#gQLb.4[蚗Гx> >9؟RGgl%?&fpg{-[y2@EhLꙈ*2'YIe)Is񭂊8l^*@qڪnm LVT=P#;0;W_!TOYv~w-ҾazᕟOHoQ͔(,,n B" "Ƒ}kCi8 ;9%r3Z[&9(rĀ MAM)1%"jxk`py`=כ .z94x s`j"$FMX0Nzs{ }|}07өZ]]ZW\QT|&ef 4ݽD:/Z wŀ-^ ^XH"zj$":|a}Z{ e{{ɓn=0x`Ohv o[$ƈi+96bl;!\)uw80Q Crf@E1zɫd /:05yۭtj\itsf5⏻v]ZРk%&n8N84uUos\$uc|蜇=C\s1sO+ *@t碓?-'W'Y{ wLqB].A??e@9ﹷ*>c|G(ߤfު߇?T;S, A&ΪVQ?{9(2Tl`[qvFV㰹0 `PS?L" dkB T'I;5nH>C=Kz_q]׀rܲG4"gC oKC)lUK@;+.A`5~S-pd^o+(ibE,jK@{3XgO c5g^=$09}7I\K)1N Pk TO],3;^U(j6)tH*bj;'$0Tzd5*~Vr0Q:L&U+GD ?sFoZR^`l^m>B]6^D~DlNDʊy92~^g+E\URź@'8)GN{. lhCC2v6g(DQBFCl}~j<( S呂9{)6`hـLm{ LPh3U?S R9ζ,L|@M)2dʶ;$iArY𷀎ц"g!D{YΡ#t,^-7ݶ?ܴ8Q(E#x<{+U3A-iH6s6 /C;y_B$9#+ZF.jZ@g"FK9WpD"OM*B$-` 㹖+XR)sڊuIT{`F75ӿZMGÆ;p€ښLIi2x{AA]SFΘ4&_?:ckD{ ßrs]384o<,׫~Ȫ8j`eX~ Z4x7QtY1”=.JE1b Ԛol\C1g_P3Sԧ͗3ܤ"NO wF X:zTUb W<_}A& ܒ, ņ8_sf(CP/)k HZh哸@lVzE+҃{3`j )Զ!±<=\cWrDȰϠ9]$i_ɿL yRX/Pٺ'gb0 pŪQDNc-u8u_6mP1[G*H 砀0-{pdg"[)IiIe(ؗv/&gOCra"Fl'o %ci+)> l4(-OO +@"=̉~-jL?}R-E/< v236~!9hɾW~#Θ;P _(ͺ%[L%Nt*:ח5X 8R4=L#fo lW6lon'PCVxUP!db#H"7` F@owXgyPsgcsT;CGG)5XbgxC$8 Ӹ5w$9SV);wc&y~WX#عu2eiQF[p9h1[ZG v^&<%|]z1fD/-PS+yPenV:Ts]AyQ3]P`8O*_c<=Tm $}brrN!o9Pw\"PS~S8A~,Q7O֚hlFJ1mlrEց d1 Oq=QFJ 8$vP",\A+qɗ7pl.WHyˌC1 3J^Q3Ot ٹ[fɥbբ9ܳ3}#ABzsdˌ$@gLE=ޛR?acw <帥D2H4 﩮Ai eR[<>) :4^AK&m H<#Fvf ?-E>~W\mQjoi i.56ُ{[O)6XJS`\b7â*!EF?٤v]/@D5,T" ! n"Vt%?iqhNYѸDNxCL]S-: ]إL3s~:ir8ppzR^&Ɨ-)Jե 0it랧 Y^8B?>95ϭD] ۽7il $ؔCCZb~Q[A)U**^]?hB>3-^Xf]wwe֔]A6-%9sFFG c%Y6pqTHc|}Nfbh`뀣ڧZE]MZ+=շ 93 3l 59צno^11*%00j2jc,%]s-m˔wPب'9L'8EqhHp&B.r=5D5ݰU<Lxt8o|(v[^|wDTg=)4r0kDzR 9C X `2v(L|LC5:GuM8)g^$(Yų w.,%2 +^fJJc\:] \p~]P* $x2t-4AaVBn!XCbS+t/`gw.l./:^A|VPT'd2_rTa#JL@ W;"$* [w_<f'9J6 XJeA0i܅\[T3WA9*9r us1!EFlT]pۗrWlЂ.֋r8! 9x~r:'E]c,Wjp>gCҠAو gҮMz1ϵՕ?M9: }?[! ֪]!V%HOKZPh` 18_JoC2?ðaH[(W^~cjKR oNtM=G݁&`Jxq maҥyƵ33+LD ULHuyF_tGBۿxtHTP5:WHNf<~$7!G޷ڿz׆ B}{ŠyG" =b;\5Z=3E)j8]X 0I.״XuFL6u/iF5<GcWS&T5I1>]{C}B]À wSgG, жXA%?j gxm*(~Vjd*dhRc ˳0]s버&<ܨT/wd?+7P}%몼x$˚2rRܷXd>۸ 1+:oL9p70yC+VNg)"J+g.3F x63zA%(0ь-(KGħyF^If+hXo U.3 ?{;;R7fq>ٝ})CGݛYUd3fc&G' w2w<~T8d@ɸ6l' nfZF̠~.Kc('\ɊO#sXBWx}#6H U܇T2[d.\"64{c, 楞fIIϸ{Z2B@D@u8(.kC_‚稺1sUOueUDݾ.m5n<"B~_4#îop4L~ |}S~Y Ks(*$0yJ}X;G7 yitvk%}w4ʈ43=-(,Vc?cQ>K4dB̽u0u0Sz4+2DڀZ8GLMk˰U.m@m\9O -W5=G*"ҙķYo#S0sWؼ$΄Bk̪~CIڻz_%R nlp=O)7@e6XȽ8lf|$i `fC]$/k2Uw(؜}0a@Au>ͫ؏S2 H' W~Q:"| {q]cnPbt7hJ$z9:B\f _v*7T;P!}5ũ,<0?3.FО [xm#rTWKb#W ܎+:J.uxU'u2Ģh9'@M9FWFbA8V9AWc2@__ ;R蜄Bpٕ@1%&yb' 0~G ^k-0:ˢaw&#BRRE ) |_籡pQ flOLe) CfD hZA[4D@@$t0 {ɼDr·c0/@ I-}t'>\+2g6pjJS7&^}Tܜq '꿑\Z;̱IV1YZ[BӭIOiP  %t; em|eV2Ul!C%VVhktYXEY}_B\B5~Iӯ(6]p[`Mtg6;üM.v[/#,e7s}DduaiФ+9ص UĊ`F$Htj,ŠT£4~n_R@|"p/ 0.Vx'!Wbs)r OļQZpưXKQ Sf2ӠsN{/ᘾP5~^(1g7+OZ- m;=1l- UK*v1r\,4c5~p`3-7Z|sgTB3VC77t$QAR,hqV|ϗiTޜ^X$vE) eɤN+[ugKOR90hGc*XgAPi`3GQH+D6GCԕӾ'tOʈ3SΓAŇ c؁ %>Qj` kò$7q1dޗuD] `lBrhW8>02_σ_3u#,ʙnVޛ#^NSn2 d[~ĥMRb!VxKTHk'eɢCg~՞+yC$ˬ`9K].zU#iBIoS5ߣdv a'JA w4o o2Kŝ>J=G){ EʲA76=1 `;n'>J'8<JnwqFwsP.jü{<[HFB8!7r" _vfhXAruO;1*\ OT'"W98 C?|vҐuX.L̕1ħTYij޵O'1uIx,u\'T2^y!+4HfB_r_֮EP25 N_Z4Ӎ{9qZCaW+ tUׁov4g3?2Pֶ4N & Z;6*hk$4:S!xp?}0ʫ qw O[c#I7ҭL'}]>-0/M-Zҿu< ٨Lا6iQYNl.ջX(4 DG" g6ǹV"~#NÓZDIwjHXj ԰) gЧd`.oa`/,RJJ/ a5$G /'9YNpҎk%] wcHldR|kyR'#;l_LV%]2BV'k*ܴ! I%vS"ՃK_9dX*d`gi~:;Gn f=4 E _sɧ u[$g@W#~*m:3zdS+"Wvmr@j'm=[EW8mTG=lM]pm|^2@ kR3 \(Xޚ E2IX78:P󭗿ޖ7~`&lLM}d"j6xAE& Ӛ?V]x(sel-:a&gBd {" ~BiҺORe?(Z{4S,ѐgB~kfU؉iFx{Nrs*d1=xxl@ l݈w+3ZrwDЉ`L$4Y(j7ZxPNd%UZB'K 4׬O,u+KE7PЉ{/v'2,z٩ji*U;~N 8Z 5 [X꛹mWմnxu/Fp5eΰUƣ4tw1kDSϐ9DŽ)ܼMsos9Y1 =<>C0!}v!0|Wzr]"Em qJZ:In3oR=m>oqІcGʏEE΢_]OQv|%|7pTçĽMhz`s5Z؆@_%NAHBREF ]e'51oolh9qᕊh|_=zT3QҩӍ(:0먠9+EY[MȞeVr%v0ӢKT9; *o 'ic0!:޾HdQ(.dϊRτ҇9«:=O`f&Xt6CniJu]Dv^,0y±U k]3f +XN -sL` : "B)=O糅B_Mm8Z G4 1v>"%?TӦ̈1&3Zp-~$*n;_`I{@)@],4uxok7B0"'P$qV0;!AHئmLG>v+k@.«v x M2 873I(Y¼/}" ٵ .8OܞȴZ":Z#1GzmUYJ%5 W(}4o0P g>V(FDx8_@yV]X^%ݥ̺"2:w9*(DoF4i0mx+x_YnַK~9ϖK q0's4$IRpD $[޳'x$vvWM@YUN`d[]n)1Q x eG1%SL1%;z!vī:r;Og*\o8@%2ݨ$^hyU|ER׽]p b\zK%)nz(' >"_Zo!`fy':} 0Sŝ#A>g>隦ܑx{?(=h"Yz6r@p 2g{D\&Rʙ6*ɜ(Npw_2̅Pi*VP:'Xѝ'梾]Wnh]3#"~;b4 V1 %ƶ YZ