libfabric-devel-1.16.1-150500.2.2 >  A c]p9|RE._A: $)U+ס+ٽ_[ ݎ9c7ef1ccaf421a9d0b10d416a8e5f35e4247eadf9c7ee23bdba8d9f4633e45d84c25405e0f26cd127a8e29d3b2338d89a699d28fЉc]p9|!N:^Bf:JQS@L=&ˇ:~J@JNW"05h ?x.>ҮiLڨe$c,ǣ]Z{jU}!@*z_B,ikv{CQfn0ަDैepb$HD;Z}xUdBh&ۭ#6s7:k81Ჹ+ 1oШ IaeraHfP١26Ou(߇A+y@,>3>p> (? d $ P *G ]}  \  0 7e 80;>BB<EEPElF (F68F@09G0:K0FGHI|X4Y@\l]@^b<cd@eEfHlJu`v4wxy z     Clibfabric-devel1.16.1150500.2.2Development files for the libfabric librarylibfabric provides a user-space API to access high-performance fabric services, such as RDMA. This package contains the development files.cibs-arm-3SUSE Linux Enterprise 15SUSE LLC BSD-2-Clause OR GPL-2.0-onlyhttps://www.suse.com/Development/Libraries/C and C++http://www.github.com/ofiwg/libfabriclinuxaarch64Hc$%<3&#*(5][%+---\)))%%%%%% )))))%--+) b''''']))))%O43%%%%%%%%(U))*+K-++2%%%%%%_ `))))*'H%+%&)&&&%-%%+%%%%%%+)++E''' )-&&&&&&-% %++&&&&%+%())))))D'))))+''&&&&"  * Zq 8A큤A큤ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc406d7a0b0d83ee0adffaafe409fd586136f3884aa74b7c34b502588abb6cfe3a1328764dc40225e07fa1447fa1bc0d7ad2f96ee28130710cdf32c503698f9ecb0f9fc5674a1cbf5ed5a2b9497abf38e3c4519de3394dcffa74d59be6b1cbc63c5acf128acf114b3905368a3c49817ec3a0335aee4b161970e4ded605ba303b49f1dab3b72dba76931d6fd0e5642ac03f7a9a4cbe2f24582bd74b40b7a1adda81c1fd977fd6b746b45b5a856d7c10ac00f7ebe7fe93629ce970ca4faf14f2e80228e75666fcbd6e39f0764854934b811c72d4ceab08eb83128260eaa1080646f2bdbf59e12d301776a1cfb67bb96167325c09b752f2358275b56b397243bdcba4f4b69c3af77af0d4fa786911a4bec9c214d16eba999abcfebf674f3cc2b21fb6f5655700ba361ffbf159f37d71e28a78c559254524123ccca4c1649cfff376b5aa0ff05b2b8ff10e26cad1ce481c828e8eeb108a3eaebbfc1af41966c1004b3f38349d4525d3aba012c93610da7c3e3113a9955b603285c7b37e97524ff7979e9152de23c3e39fbdcff585c26ca2c4b288226f753f4ee75ca299dd6f82fe2d1ce3599136e2a6b1029126d7ef1e21dedeb783c2e9b9bec6530a22ba3ab1ebeb9094a87b7f901a3478daca3aa2d6881f58277969343e77806694024c3a9f871cd4a4b80c2782c69d8285f296f8856e9ec0e21e8966bae82d1aae2c0b39b7cd9a5d3c069d5512dc65969b3624592521586b08fccaa2875d79f0bf76371792877f58db06aa2d912d2974c4e29683fe547df1015e74b27aa171a983e27cfb1e582785c2fed6084000fb233a65b029b0dda86322b3247c79b9f84cb5aadafaf0cf5685c2fed6084000fb233a65b029b0dda86322b3247c79b9f84cb5aadafaf0cf5685c2fed6084000fb233a65b029b0dda86322b3247c79b9f84cb5aadafaf0cf56fc7cd2c72d769ca32314ba9a7a022fdef78dcaa624c45f3615b20f992473aec1f684574e35d009140db2861b2ad67b366bb90f6e4240c0d3720c531c5c73f34bf684574e35d009140db2861b2ad67b366bb90f6e4240c0d3720c531c5c73f34bf684574e35d009140db2861b2ad67b366bb90f6e4240c0d3720c531c5c73f34bce8edfbcf56c700f52a17e9e67255093a1c6ae9ecf1ace72e06d218486e16617c6ad481e9e43fe8d44850cd39de29cf0f684c5fdcdca31a2b968dd36344e3802c6ad481e9e43fe8d44850cd39de29cf0f684c5fdcdca31a2b968dd36344e3802c6ad481e9e43fe8d44850cd39de29cf0f684c5fdcdca31a2b968dd36344e3802c6ad481e9e43fe8d44850cd39de29cf0f684c5fdcdca31a2b968dd36344e3802c6ad481e9e43fe8d44850cd39de29cf0f684c5fdcdca31a2b968dd36344e3802c6ad481e9e43fe8d44850cd39de29cf0f684c5fdcdca31a2b968dd36344e3802e281cf74a6a2b3732663e870b53413517feec64dfa625f7e9e417125012eecb59872770a2c1a5e0ca6dc9e9615ad3e11ca4b6d5adcca23ba747121b4dd241a649872770a2c1a5e0ca6dc9e9615ad3e11ca4b6d5adcca23ba747121b4dd241a649872770a2c1a5e0ca6dc9e9615ad3e11ca4b6d5adcca23ba747121b4dd241a649872770a2c1a5e0ca6dc9e9615ad3e11ca4b6d5adcca23ba747121b4dd241a649872770a2c1a5e0ca6dc9e9615ad3e11ca4b6d5adcca23ba747121b4dd241a64c6ad481e9e43fe8d44850cd39de29cf0f684c5fdcdca31a2b968dd36344e380285c2fed6084000fb233a65b029b0dda86322b3247c79b9f84cb5aadafaf0cf5685c2fed6084000fb233a65b029b0dda86322b3247c79b9f84cb5aadafaf0cf5658db06aa2d912d2974c4e29683fe547df1015e74b27aa171a983e27cfb1e58275213852bbc9f173bdf1bd7c36c25c8bdd44ce49b07fdad2b0033e3c93754b907ec4ccd093b9159d88e4111a52cf60ce8d59410a193a3b90bd4d352acf08b27ea5e67677866ec4ecd6ae616a3c5f644e586e88ae396114f570ed1e9eb1b4850799643549f1e97ea99c05fb91334015c679f3b228f490cf8136648079c63862cb09643549f1e97ea99c05fb91334015c679f3b228f490cf8136648079c63862cb09643549f1e97ea99c05fb91334015c679f3b228f490cf8136648079c63862cb09643549f1e97ea99c05fb91334015c679f3b228f490cf8136648079c63862cb09643549f1e97ea99c05fb91334015c679f3b228f490cf8136648079c63862cb0450e4ec4e9ac70cb6596a44c1de92a42c6ec9a4d088ae67806fcb9d911a2956bf684574e35d009140db2861b2ad67b366bb90f6e4240c0d3720c531c5c73f34bf684574e35d009140db2861b2ad67b366bb90f6e4240c0d3720c531c5c73f34bf684574e35d009140db2861b2ad67b366bb90f6e4240c0d3720c531c5c73f34bf684574e35d009140db2861b2ad67b366bb90f6e4240c0d3720c531c5c73f34b5d3c069d5512dc65969b3624592521586b08fccaa2875d79f0bf76371792877fc02d0b85b98c4801980e835a1b74acf3d03957a8c687dd4b8691a961dbb97ea830c32f4d9eeb991ad17d6d87fae2af7648c1ebb4de31d3857ac69d8e4b94b15e5b8d9203eecb108bf242aa7a1fab4f7051d15a5708e82c905d86a790b20c55a15b8d9203eecb108bf242aa7a1fab4f7051d15a5708e82c905d86a790b20c55a15b8d9203eecb108bf242aa7a1fab4f7051d15a5708e82c905d86a790b20c55a15b8d9203eecb108bf242aa7a1fab4f7051d15a5708e82c905d86a790b20c55a15b8d9203eecb108bf242aa7a1fab4f7051d15a5708e82c905d86a790b20c55a15b8d9203eecb108bf242aa7a1fab4f7051d15a5708e82c905d86a790b20c55a15b8d9203eecb108bf242aa7a1fab4f7051d15a5708e82c905d86a790b20c55a15b8d9203eecb108bf242aa7a1fab4f7051d15a5708e82c905d86a790b20c55a1dc50a81a249436fb27ec0187b1b82425ead3e492fdd0b4ce86dab0192aece4725213852bbc9f173bdf1bd7c36c25c8bdd44ce49b07fdad2b0033e3c93754b9075213852bbc9f173bdf1bd7c36c25c8bdd44ce49b07fdad2b0033e3c93754b907d87d9362e6d67ff233b5ef836dc2a4bfbfe61cb3113330a9a3d92ea5752399ee58db06aa2d912d2974c4e29683fe547df1015e74b27aa171a983e27cfb1e5827532377659c4eea07a2953a1a4637a72e016e717bb7e99742e2f979fbfda9100558db06aa2d912d2974c4e29683fe547df1015e74b27aa171a983e27cfb1e582758db06aa2d912d2974c4e29683fe547df1015e74b27aa171a983e27cfb1e58274c35b71722f5d16b6faf6e4f887a1ef92011e22a173e7109fa7c8fe858d05cd7848ec852f63e1e904a4aafa48f80175d34c779525016ae101ae47c927f9a40bd848ec852f63e1e904a4aafa48f80175d34c779525016ae101ae47c927f9a40bd848ec852f63e1e904a4aafa48f80175d34c779525016ae101ae47c927f9a40bd848ec852f63e1e904a4aafa48f80175d34c779525016ae101ae47c927f9a40bd848ec852f63e1e904a4aafa48f80175d34c779525016ae101ae47c927f9a40bd848ec852f63e1e904a4aafa48f80175d34c779525016ae101ae47c927f9a40bd7e559077621c9b20add21a3a9aa0a4b4c9db53689fcb755c6a16db3bdc98f28ff2fb7615b0355b0b0de33c71ab05f76572473655e56c250e85afec0e2cbdeeb2f684574e35d009140db2861b2ad67b366bb90f6e4240c0d3720c531c5c73f34bf684574e35d009140db2861b2ad67b366bb90f6e4240c0d3720c531c5c73f34bf684574e35d009140db2861b2ad67b366bb90f6e4240c0d3720c531c5c73f34bf684574e35d009140db2861b2ad67b366bb90f6e4240c0d3720c531c5c73f34bd87d9362e6d67ff233b5ef836dc2a4bfbfe61cb3113330a9a3d92ea5752399eeee4f8af948941552c336899c64f9f44ce4f958c9cba076166584a812f7cea6cc5d3c069d5512dc65969b3624592521586b08fccaa2875d79f0bf76371792877f58db06aa2d912d2974c4e29683fe547df1015e74b27aa171a983e27cfb1e58275d3c069d5512dc65969b3624592521586b08fccaa2875d79f0bf76371792877fc8a8ea21674fefc103b6ae445d96aca446067d3485b2482e9779792808e0d1cff684574e35d009140db2861b2ad67b366bb90f6e4240c0d3720c531c5c73f34b5a8afe4d8f9521120cd68ffb246772198d8a78cbdfb883cdb52f3aaaef943e795a8afe4d8f9521120cd68ffb246772198d8a78cbdfb883cdb52f3aaaef943e79c8a8ea21674fefc103b6ae445d96aca446067d3485b2482e9779792808e0d1cf5d3c069d5512dc65969b3624592521586b08fccaa2875d79f0bf76371792877f85c2fed6084000fb233a65b029b0dda86322b3247c79b9f84cb5aadafaf0cf565d3c069d5512dc65969b3624592521586b08fccaa2875d79f0bf76371792877f5d3c069d5512dc65969b3624592521586b08fccaa2875d79f0bf76371792877f87952bb78cca813c1544de9c15a4852be970fc4d89fb9c16b7bce6e52f9333cfac6c5017a436a5e7631e6253d5c3e81e0d10fb9db6a2585c97842001af94c5c5ac6c5017a436a5e7631e6253d5c3e81e0d10fb9db6a2585c97842001af94c5c5ac6c5017a436a5e7631e6253d5c3e81e0d10fb9db6a2585c97842001af94c5c5ac6c5017a436a5e7631e6253d5c3e81e0d10fb9db6a2585c97842001af94c5c5ac6c5017a436a5e7631e6253d5c3e81e0d10fb9db6a2585c97842001af94c5c5ac6c5017a436a5e7631e6253d5c3e81e0d10fb9db6a2585c97842001af94c5c5a0f2b72fc627d75123acd08c466f789fd183f41dbdae1a130618b88efdfcbdbc9a072b1dfcb6ee077fe4cedf9bbd6985d1023bb04fbb3aee0d9ffae2b403849f129b5bd4c9f4076c3449865af5f03f07993c351f9c88134c15c9e288771b911d5213852bbc9f173bdf1bd7c36c25c8bdd44ce49b07fdad2b0033e3c93754b90758db06aa2d912d2974c4e29683fe547df1015e74b27aa171a983e27cfb1e5827f43767c9c13192dc65ea6fff30e6ec7380f5c5ae69bcf9136ec57eec884abaee58db06aa2d912d2974c4e29683fe547df1015e74b27aa171a983e27cfb1e58274f941944b1b31aaf72e05fcb3833262a16855690354d443697ddbb0db5d7b49137fa89834a82b0c6b802e35fdb3711fd3d0e2b67e2e25e731a2f777f9002567937fa89834a82b0c6b802e35fdb3711fd3d0e2b67e2e25e731a2f777f9002567937fa89834a82b0c6b802e35fdb3711fd3d0e2b67e2e25e731a2f777f900256796f5ddba2aaa09abf76ca100f60831f472cd05b0ea09d0e03858bca79cc20a5e8f684574e35d009140db2861b2ad67b366bb90f6e4240c0d3720c531c5c73f34b85c2fed6084000fb233a65b029b0dda86322b3247c79b9f84cb5aadafaf0cf565a8afe4d8f9521120cd68ffb246772198d8a78cbdfb883cdb52f3aaaef943e795a8afe4d8f9521120cd68ffb246772198d8a78cbdfb883cdb52f3aaaef943e795a8afe4d8f9521120cd68ffb246772198d8a78cbdfb883cdb52f3aaaef943e79c8a8ea21674fefc103b6ae445d96aca446067d3485b2482e9779792808e0d1cfc8a8ea21674fefc103b6ae445d96aca446067d3485b2482e9779792808e0d1cfc8a8ea21674fefc103b6ae445d96aca446067d3485b2482e9779792808e0d1cf85c2fed6084000fb233a65b029b0dda86322b3247c79b9f84cb5aadafaf0cf565d3c069d5512dc65969b3624592521586b08fccaa2875d79f0bf76371792877f86aeba6ffcd7ee33eae44334377e22fe9fee0d115e721cded705c6282a779c41c6ad481e9e43fe8d44850cd39de29cf0f684c5fdcdca31a2b968dd36344e380258db06aa2d912d2974c4e29683fe547df1015e74b27aa171a983e27cfb1e582758db06aa2d912d2974c4e29683fe547df1015e74b27aa171a983e27cfb1e5827c8a8ea21674fefc103b6ae445d96aca446067d3485b2482e9779792808e0d1cfc8a8ea21674fefc103b6ae445d96aca446067d3485b2482e9779792808e0d1cfc8a8ea21674fefc103b6ae445d96aca446067d3485b2482e9779792808e0d1cfc8a8ea21674fefc103b6ae445d96aca446067d3485b2482e9779792808e0d1cf5d3c069d5512dc65969b3624592521586b08fccaa2875d79f0bf76371792877f58db06aa2d912d2974c4e29683fe547df1015e74b27aa171a983e27cfb1e58275d3c069d5512dc65969b3624592521586b08fccaa2875d79f0bf76371792877fa3a67d29f37918d35e59190e00bb0919db7dffbb887fb8bcfe9c2478b77b50441fae6f52c33b607a18bc42d5eee49bbc06860759026acf47fdc609d3e80f3064c4183040b6f87e514b23f66a312a6a1af5943b1611b91d18c87d921baf16afddc4183040b6f87e514b23f66a312a6a1af5943b1611b91d18c87d921baf16afdde8b896c8dba61b84b8fc003e9676a48588dad4466c651fc98b4ecdaa09ad12ddc4183040b6f87e514b23f66a312a6a1af5943b1611b91d18c87d921baf16afddc4183040b6f87e514b23f66a312a6a1af5943b1611b91d18c87d921baf16afddc4183040b6f87e514b23f66a312a6a1af5943b1611b91d18c87d921baf16afdd88d872628976f110a3be80058b4afec17fa4607711ea4e0108b17895382bd87937fa89834a82b0c6b802e35fdb3711fd3d0e2b67e2e25e731a2f777f90025679c4183040b6f87e514b23f66a312a6a1af5943b1611b91d18c87d921baf16afddc4183040b6f87e514b23f66a312a6a1af5943b1611b91d18c87d921baf16afddc4183040b6f87e514b23f66a312a6a1af5943b1611b91d18c87d921baf16afddc4183040b6f87e514b23f66a312a6a1af5943b1611b91d18c87d921baf16afdd58db06aa2d912d2974c4e29683fe547df1015e74b27aa171a983e27cfb1e58277ecff2b7f2ed0fd9ea79b28f15e9e8ba110770edbb703eb651415065dd2086a037fa89834a82b0c6b802e35fdb3711fd3d0e2b67e2e25e731a2f777f9002567937fa89834a82b0c6b802e35fdb3711fd3d0e2b67e2e25e731a2f777f900256795a8afe4d8f9521120cd68ffb246772198d8a78cbdfb883cdb52f3aaaef943e795a8afe4d8f9521120cd68ffb246772198d8a78cbdfb883cdb52f3aaaef943e795a8afe4d8f9521120cd68ffb246772198d8a78cbdfb883cdb52f3aaaef943e795a8afe4d8f9521120cd68ffb246772198d8a78cbdfb883cdb52f3aaaef943e79ba5856293b65e762bdd33c4b7671ba0206a87b5416db6de4efa920a5fd178aee42280593e738a619fb031cb89008f30f10da7d0f30b145d4c5fdb9af902e43ffdaf0f071df2bc24cc33e0aa5061aef7d4d61268e8a71da9e79186baf56ef067584a703a2cfc1964ce91689571f0c36f9f7c63d24b840c4c952e5372d77b0e6ad6ff2387ff0a1dd9b134177c7c2ef72e1703d4a70b7bc0b8a1deb967aaf067fe0939d20b4d06cb3c37ac71cfeaac30734a05bd81def9a5d73ce5bc450544fe9ebf9e722638dfe83d26b89930ba0ab2bebc9c5bc47b7821a4faee648fb84acc4373d7eedf1024ce961e76dd722bc6da1e760f29079750efafa88e973efe36d08fa19c26bc8e949a3270f597389101fd4aa19a3c251b64b6477267a1792e55ad84d73a6652cad13d95c3c7922e69a34dfec9c9b42ae8b684df064e9dfc632064ec6a574416c15b9b0af7513cc7d8e362eca97d70e54515cc76a0b056e0082d408db3dc35a9d009d6d0828221ef215d0aef2b4832909688be7e746efbe72fe756c09e07117dfc9cb07d8d7bc8910b42474ff6200ca32e517f3273442a5fc349b83725f2b74e2ebbbd243a5527347dcb410bd81b64547a090c780cd3ee2e82c3d3e37e22ac8e80a13199f9fc872f9ee399267522f9e852582286d91894f7c847d2a67libfabric.so.1.19.1rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootlibfabric-1.16.1-150500.2.2.src.rpmlibfabric-devellibfabric-devel(aarch-64)pkgconfig(libfabric)@     /usr/bin/pkg-configlibfabric1rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)1.16.13.0.4-14.6.0-14.0.4-14.0-15.2-14.14.3cjDcD @c>@c6@b@bUb^@a@aya{@a&0`@`g@`Gc@__E@_;^2^@^s^]@]?]rJ@\O\@\ac\\[Ѱ@Z`@Z:PZYdYYYJY[@YV=@YYR@X@XӸX•@X|W,@W@W@V@Vwnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.commliska@suse.cznmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.commliska@suse.cznmoreychaisemartin@suse.comjengelh@inai.denmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comstefan.bruens@rwth-aachen.denmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comjosef.moellers@suse.comjengelh@inai.dejosef.moellers@suse.comndas@suse.denads@suse.dendas@suse.dendas@suse.depth@suse.depth@suse.de- Add prov-net-fix-error-path-in-xnet_enable_rdm.patch to fix a deadlock when no network interfaces are available (bsc#1205139)- Update to 1.16.1 - Core - Fix windows implementation to remove fd from poll set - PSM3 - Add missing files to release tarball - Util - Handle NULL address insertion to fi_av_insert - Drop prov-rxm-Disable-128-bit-atomics.patch which was merged upstream- Add prov-rxm-Disable-128-bit-atomics.patch to fix a potential segfault on misaligned buffers.- Update to 1.16.0 (jsc#PED-351, jsc#PED-190) - Core - Added HMEM IPC cache - Use exact string comparison checks for network interfaces - Restructuring of poll/epoll abstraction - Add ability to disable locks completely in debug builds - Serialize access to modifying the logging calls - Minor fixes to fi_tostr text formatting - Add hmem interface checks to memory registration - EFA - Added support of Synapse AI memory. - Improved error message - Net - Temporarily forked, optimized version of tcp provider - Focused on improved performance and scalability over tcp sockets - Fork ensures tcp provider stability while net provider is developed - Shares the tcp provider protocol and base implementation for msg endpoints - Integrates direct support for rdm endpoints, using a derivative from rxm - Implements own protocol for rdm endpoints, separate from rxm;tcp - OPX - Added initial support for SDMA - General performance enhancements - Performance improvements to reliability protocol - Improved deferred work pending complete - Added support for OPX_AV=runtime - Support iov memory registration ops - Added DAOS RPC support - Atomic ops enhancements - Improved documentation - Debug build enhancements - Fixed compiler warnings - Reduced time to compile prov/opx code - General bug fixes - Fixed PSN wrapping scaling - Added intranode fence - Addressed bugs discovered by coverity scan - PSM2 - Fix sending CQ data in some instances of fi_tsendmsg - PSM3 - Updated to match Intel Ethernet Fabric Suite (IEFS) 11.3 release - RxM - Update to read multiple completions at once from msg provider - Move RxM AV implementation to util code to share with net provider - Minor code cleanups - SHM - Implement and use ipc_cache - Add log messages for debugging and error tracking - Fix check for FI_MR_HMEM mr_mode - Move shm signal handlers initialization to EP - Added log messages for errors detected - TCP - Fix incorrect signaling of the CQ - Increase max number of poll events to retrieve - Acquire ep lock prior to flushing socket in shutdown - Verify ep state prior to progressing socket data - Read cm error data when receiving connreq response - Log error on connect failure - Fix assertion failure in CQ progress function - Util - Fix text in log of UFFD ioctl failure - Introduce cuda ipc monitor - Fix CQ memory leak handling overflow - Fix MR mode bit check for ver 1.5 and greater - Add max_array_size to track/check array overflow - Always progress transfers when reading from a CQ - Handle NULL address insertion - Try IPv4 before IPv6 addresses when starting name server - Fix IP util av default address length - Fix util IP getinfo path to read hints->addr_format - Fix debug print mismatch - Fix return code when memory allocation fails. - Fix build sign warning in ofi_bufpool_region_alloc - Minor code cleanups - Print warning if an addr is inserted into an AV again - Verbs - Fix support of FI_SOCKADDR_IB when requested by the application - Ensure all posted receives are flushed to the application - Update ofi_mr_cache_search API for hmem IPC support - Reduce logging verbosity for "no active ports" - Fix incorrect length used in memory registration - Various minor bug fixes for test failures - Fix a memory leak getting IB address - Implement verbs provider on Windows over NetworkDirect API - Set and check address format correctly - Only close qp if it was initialized - Portable detection of loopback device - Fabtests - multi_ep: Separate EP resources and fix MR registration - multi_recv: Fix possible crash and check for valid buffer - unexpected_msg: Fix printf compiler warning - dgram_pingpong.c: Use out-of-band sync - multinode: Make multinode tests platform agnostic, fix formatting - ubertest: Fix string comparison to include length, fix writedata completion check - av_test: add support for -e - New tests: - dmabuf-rdma: Component level test for dma-buf RDMA - sock_test: Component level performance test of poll, epoll, and select - rdm_stress: Multi-threaded, multi-process stress test for RDM endpoints - sighandler_test: Regression test for signal handler restoration - Drop patches fixed upstream: - prov-opx-Correctly-disable-OPX-if-unsupported.patch - disable-flatten-attr.patch- Add disable-flatten-attr.patch that drops flatten attribute. Note the flatten attribute results in huge compile time hog in inliner (same the binary size would be huge). - Use %make_build and enable LTO (boo#1133235). - Synchronize used Patches.- Update to 1.15.1 - Core - Fix fi_info indentation error in fi_tostr - hmem_ze: Add runtime option to choose specific copy engine - Cleanup of configure HMEM checks - Fixed stringop-truncation in ofi_ifaddr_get_speed - Add utility provider log suffix to make logs easier to read - Fix truncation of ipv6 addressing - hmem: add support for AWS Trainium devices - Fix potential sscanf overflows - hmem: pass through device and flags when querying memory interface - Rework locking in several areas to convert spinlocks to mutexes - Add new locking abstractions to select lock types at runtime - Add new FI_PROTO_RXM_TCP for optimized rxm over tcp path - Fix windows implementation to remove fd from poll set - EFA - Added windows support through efawin (https://github.com/aws/efawin) - Added support of AWS neuron. - Added support of using gdrcopy to copy data from host to device. - Fixed a bug that cause 0 byte read to fail. - Fixed a memory corruption issue that can caused forked process to crash. - Extended testing coverage through new pytest based testing framework. - HOOKS - Add new hooking provider dmabuf_peer_mem - Enable DL build of hooking providers - Add HMEM memory registration hook - OPX - New provider supporting Cornelis Networks Omni-path hardware - PSM3 - Updated psm3 to match IEFS 11.2.0.0 release - Added support for sockets (TCP/UDP) via a runtime selectable Hardware Abstraction Layer (HAL) - Added support for IPv6 addressing in RoCE and sockets - Added various NIC selection filtering options (wildcarded NIC name, address format, wildcarded IP subnet, link speed) - Performance tuning in conjunction with OneAPI and OneCCL - Improved PSM3_IDENTIFY output - Rename most internal symbols to psm3_ - Corrected vulnerabilities found during Coverity scans - configure options refined and help text improved - PSM3_MULTI_EP has been deprecated (recommend always enabled, default is enabled [same default as previous releases]) - Various bug fixes - RxM - Add check that atomic size is valid - Add support to passthru calls to tcp provider in specific - TCP - Add assert to verify RMA source/target msg sizes match - Wake-up threads blocked on CQ to update their poll events - Fix use of incorrect events in progress handler - Fixes for various compile warnings, mostly on Windows - Add support for FI_RMA_EVENT capability - Add support for completion counters - Fix check for CQ data in tagged messages - Add cancel support to shared rx context - Add src_addr receive buffer matching - Add provider control to assign a src_addr with an ep - Handle trecv with FI_PEEK flag - Allow binding a CQ with an SRX - Restructuring of code in source files - Handle EWOULDBLOCK returned by send call - Add hot (active) pollfd - SHM - Properly chain the original signal handlers - Avoid uninitialized variable with invalid atomic parameters - Fix 0 byte SAR read - Initialize len parameter to accept - Refactor and simplify protocol code - Remove broken support for 128-bit atomics - Fix FI_INJECT flag support - Add assert to verify RMA source/target msg sizes match - Set domain threading to thread safe - Fix possible use of uninitiated var in av_insert - Util - Fix sign warning in ofi_bufpool_region_alloc - Remove unused variable from ofi_bufpool_destroy - Fix check for valid datatype in ofi_atomic_valid - Return with error if util_coll_sched_copy fails - Fix use of uninitialized variable in ofi_ep_allreduce - Fix memory access in ip_av_insertsym - Track ep per collective operation not with multicast - Restructure collective av set creation/destruction - Change most locks from spin locks to mutexes - Allow selection of spinlocks for CQ and domain objects - Fix AV default addrlen - Update fi_getinfo checks to include hints->addr_ - Handle NULL address insertion to fi_av_insert - Verbs - Initial changes for compiling on Windows (via NetworkDirect) - Add a failover path to dma-buf based memory registration - Replace use of spin locks with mutexes - Check for valid qp prior to cleanup - Set and check for address format correct in fi_getinfo - Fabtests - hmem_cuda: used device allocated host buff to fill device buf - Add python scripts to control test execution - test_configs: include util provider in core config file - Add option "--pin-core" - Only call nrt_init once - Fix a bug in ft_neuron_cleanup - Correct help for unit test programs - Remove duplicate help prints from fi_mcast - configure.ac: fix --enable-debug=no not properly detected - msg_inject: handle the case ft_tsendmsg return -FI_EAGAIN - Add AWS Trainium device support - fi_inj_complete: Add FI_INJECT to fabtests - inj_complete.c: Make arguments align with the other tests - dgram_pingpong: handle the error return of fi_recv - recv_cancel: Remove requirement for unexpected msg handling - poll: Fix crash if unable to allocate pollset - ubertest: Add GPU testing and validation support - Add HMEM options parsing support - Update and re-enable fi_multi_ep test - Add prov-opx-Correctly-disable-OPX-if-unsupported.patch to disable OPX compilation on non x86_64 systems- Update to 1.14.1 - Core - Use non-shared memory allocations to use MADV_DONTFORK safely - Fix incorrect use of gdr_copy_from_mapping - Ensure proper timeout time for pollfds to avoid early exit - EFA - Handle read completion properly for multi_recv - Use shm's inject write when possible - Support 0 byte read - RxM - Ensure signaling the CQ fd after writing completion - Fix inject path for sending tagged messages with cq data - Negotiate credit based flow control support over CM - Add PID to CM messages to detect stale vs duplicate connections - Fix race handling unexpected messages from unknown peers - Fix possible leak of stack data in cm_accept - Restrict reported caps based on core provider - Delay starting listen until endpoint fully initialized - Verify valid atomic size - Sockets - Fix coverity reports on uninitialized data - Check for NULL pointers passed to memcpy - Add missing error return code from sock_ep_enable - TCP - Fix performance regression resulting from sparse pollfd sets - Fix assertion failure in CQ progress function - Do not generate error completions for inject msgs - Fix use of incorrect event names in progress handler - Fix check for CQ data in tagged messages - Make start_op array a static to reduce memory - Wake-up threads blocked on CQ to update their poll events - Verbs - Generate error completions for all failed transmits - Set all fields in the fi_fabric_attr for FI_CONNREQ events - Set proper completion flags for all failed transfer - Ensure that all attributes are provided when opening an endpoint - Fix error handling in vrb_eq_read - Fix memory leak in error case in vrb_get_sib - Work-around bug in verbs HW not reported correct send opcodes - Only call ibv_reg_dmabuf_mr when kernel support exists - Add a failover path to dma-buf based memory registration - Negotiate credit based flow control support over CM- Update to 1.14.0 - Add time stamps to log messages - Fix gdrcopy calculation of memory region size when aligned - Allow user to disable use of p2p transfers - Update fi_tostr print FI_SHARED_CONTEXT text instead of value - Update fi_tostr to output field names matching header file names - Fix narrow race condition in ofi_init - Add new fi_log_sparse API to rate limit repeated log output - Define memory registration for buffers used for collective operations - EFA, SHM, TCP, RXM, and verbs fixes- Enable PSM3 provider (jsc#SLE-18754)- Update to 1.13.2 - Sort DL providers to ensure consistent load ordering - Update hooking providers to handle fi_open_ops calls to avoid crashes - Replace cassert with assert.h to avoid C++ headers in C code - Enhance serialization for memory monitors to handle external monitors - EFA, SHM, TCP, RxM and vers fixes- Update to 1.13.1 - Enable loading ZE library with dlopen() - Add IPv6 support to fi_pingpong - EFA, PSM3 and SHM fixes- Update to 1.13.0 - Fix behavior of fi_param_get parsing an invalid boolean value - Add new APIs to open, export, and import specialized fid's - Define ability to import a monitor into the registration cache - Add API support for INT128/UINT128 atomics - Fix incorrect check for provider name in getinfo filtering path - Allow core providers to return default attributes which are lower then maximum supported attributes in getinfo call - Add option prefer external providers (in order discovered) over internal providers, regardless of provider version - Separate Ze (level-0) and DRM dependencies - Always maintain a list of all discovered providers - Fix incorrect CUDA warnings - Fix bug in cuda init/cleanup checking for gdrcopy support - Shift order providers are called from in fi_getinfo, move psm2 ahead of psm3 and efa ahead of psmX - See NEWS.md for changelog- Update to 1.12.1 - Fix initialization checks for CUDA HMEM support - Fail if a memory monitor is requested but not available - Adjust priority of psm3 provider to prefer HW specific providers, such as efa and psm2 - EFA and PSM3 fixes - See NEWS.md for changelog- Update to 1.12.0 - See NEWS.md for changelog- Update to 1.11.2 (bsc#1181983) - See NEWS.md for changelog- Update to 1.11.1 (jsc#SLE-13312) - See NEWS.md for changelog- Update to 1.11.0 - See NEWS.md for changelog- Update to 1.10.1 - See NEWS.md for changelog- Update to 1.10.0 - See NEWS.md for changelog- Update to 1.9.1 (bsc#1160275) - See NEWS.md for changelog- Update to 1.9.0 (jsc#SLE-8257) - See NEWS.md for changelog- Update to 1.8.1 (jsc#SLE-8257) - See NEWS.md for changelog- Update to 1.8.0 - See NEWS.md for changelog- Disable LTO (boo#1133235).- Update to 1.7.1 - See NEWS.md for changelog- Remove silly Prefix: value, we do not support that in SUSE anyway. - Update summaries, make use of %make_install.- Update to v1.7.0 - fabtests and libfabric repos have been merged upstream - Core - Add ability to report NIC details with fi_info data - Improve MR cache notification mechanisms - Set sockaddr address format correctly - Avoid possible null dereference in eq_read - Handle FI_PEEK in CQ/EQ readerr - Add debug messages to name server - Feature and performance enhancements added to internal buffer pool - Add support for huge pages - Decrease memory use for idle buffer pools - Refactor utility AV functionality - Generic counter support enhancements - Optimize EP and CQ locking based on application threading level - Enhance common support for EQ error handling - Add free/alloc memory notification hooks for MR cache support - Fix memory monitor unsubscribe handling - Add CQ fd wait support - Add CQ overflow protection - Enhance IPv6 addressing support for AVs - Enhancements to support for AV address lookup - Fixes for emulated epoll support - Allow layering of multiple utility providers - Minor bug fixes and optimization - Hook - Improved hooking infrastructure - Add support for installing multiple hooks - Support hooks provided by external libraries. - GNI - Fix CQ readfrom overwriting src_addr in case of multiple events - Signal wait set if error entry is added to CQ - Fix state data issue with SMSG buffers - Enhance and fix possible misuse of default authorization key - Add cancel support for SEP - Rework SEP setup - Suppress huge page counting for ARM - Fix incorrect check of FI_SYNC_ERR flag - PSM2 - Requires PSM2 library version 10.2.260 or later - Clean up connection state in fi_av_remove - Use psm2_info_query to read HFI device info - Clean up CQ/counter poll list when endpoint is closed - Support shared address vector - Optimize CQ event conversion with psm2_mq_ipeek_dequeue_multi - Lock optimization for FI_THREAD_DOMAIN - Use new PSM2 fast path isend/irecv functions for large size RMA - Support building with latest PSM2 source code (version 11.2.68) - Support fabric direct - RxD - Initial release of RxD provider - Provides reliable datagram semantics over unreliable datagram EPs - Target is to improve scalability for very large clusters relative to RxM - RxM - Decrease memory use needed to maintain large number of connections - Set correct op_context and flags on CQ error completions - Fix file descriptor memory leaks - Introduce new protocol optimized for medium message transfers - Improve Rx software performance path - Use shared receive contexts if required by underlying provider - Handle addresses inserted multiple times into AV (for AV map) - Performance optimizations for single-thread applications - Rework deferred transmit processing - Separate and optimize eager and rendezvous protocol processing. - Fix passing incorrect addresses for AV insert/remove - Fix CM address handling - Fix race condition accessing connection handles - Simplify small RMA code path - Increment correct counter when processing FI_READ events - Dynamically grow the number of connections that can be supported - Fix padding in wire protocol structures - Report correct fi_addr when FI_SOURCE is requested - Fix truncating rendezvous messages - Fix use after free error in Rx buffer processing - Add support for manual progress - Make Tx/Rx queue sizes independent of MSG EP sizes - Decrease time needed to repost buffers to the MSG EP Rx queue. - Miscellaneous bug fixes - Sockets - Enable MSG EPs when user calls fi_accept - Fix fabric names to be underlying IP address - Add connection timeout environment variable. - Use size of addresses, not structures - Add debug messages to display selected addresses - Use loopback address in place of localhost - Simplify listen paths - Add support for IPv6 - Code restructuring - Avoid unneeded address to string to address translations - Check length of iovec entries prior to access buffers - Fix segfault - Avoid acquiring nested spinlocks resulting in hangs - Fix use after free error in triggered op handling - New connection manager for MSG EPs to reduce number of threads - Avoid retrying recv operations if connection has been broken - Fixes for Windows socket support - TCP - Initial release of optimized socket based tcp provider - Supports MSG EPs, to be used in conjunction with RxM provider - Targets eventual replacement of sockets provider - Verbs - Remove RDM EP support. Use RxM and RxD for RDM EPs. - Improve address handling and report in fi_getinfo - Handle FI_PEER when calling CQ/EQ readerr functions - Add support for XRC QPs. - Ignore destination address when allocating a PEP - Add workaround for i40iw incorrect return values when posting sends - Fix completion handling for FI_SELECTIVE_COMPLETION EP setting - Change format of fabric name to use hex instead of decimal values - Fix handling of err_data with EQ readerr - Report correct size of max_err_data - Fast path performance improvements - Improve progress under high system load - Optimize completion processing when handling hidden completions - Optimize RMA and MSG transfers by pre-formatting work requests - Remove locks based on application threading model - Add overflow support for CQ error events - Minor cleanups and bug fixes- Update to v1.6.2 (fate#325852) - Core - Cleanup of debug messages - Fix compile issues with older compilers - Check that all debug compiler flags are supported by compiler - GNI - Fix problems with Scalable Endpoint creation - Fix interoperability problem with HPC toolkit - Improve configuration check for kdreg - PSM - Enforce FI_RMA_EVENT checking when updating counters - Fix race condition in fi_cq_readerr() - Always try to make progress when fi_cntr_read is called - PSM2 - Revert "Avoid long delay in psm2_ep_close" - Fix memory corruption related to sendv - Performance tweak for bi-directional send/recv on KNL - Fix CPU detection - Enforce FI_RMA_EVENT checking when updating counters - Remove stale info from address vector when disconnecting - Fix race condition in fi_cq_readerr() - Adjust reported context numbers for special cases - Always try to make progress when fi_cntr_read is called - Support control functions related to MR mode - Unblock fi_cntr_wait on errors - Properly update error counters - Fix irregular performance drop for aggregated RMA operations - Reset Tx/Rx context counter when fabric is initialized - Fix incorrect completion event for iov send - Fix occasional assertion failure in psm2_ep_close - Avoid long delay in psm2_ep_close - Fix potential duplication of iov send completion - Replace some parameter checking with assertions - Check iov limit in sendmsg - Avoid adding FI_TRIGGER caps automatically - Avoid unnecessary calls to psmx2_am_progress() - RXM - Fix incorrect increments of error counters for small messages - Increment write completion counter for small transfers - Use FI_UNIVERSE_SIZE when defining MSG provider CQ size - Make TX, RX queue sizes independent of MSG provider - Make deferred requests opt-in - Fill missing rxm_conn in rx_buf when shared context is not used - Fix an issue where MSG endpoint recv queue got empty resulting in a hang - Set FI_ORDER_NONE for tx and rx completion ordering - Serialize access to repost_ready_list - Reprocess unexpected messages on av update - Fix a bug in matching directed receives - Fix desc field when postponing RMA ops - Fix incorrect reporting of mem_tag format - Don't include FI_DIRECTED_RECV, FI_SOURCE caps if they're not needed - Fix matching for RMA I/O vectors - Fix reading pointer after freeing it. - Avoid reading invalid AV entry - Handle deleting the same address multiple times - Fix crash in fi_av_remove if FI_SOURCE wasn't enabled - Sockets - Increase maximum messages size as MPICH bug work-around - Fix use after free error handling triggered ops. - Verbs - Detect string format of wildcard address in node argument - Don't report unusable fi_info (no source IP address) - Don't assert when a verbs device exposes unsupported MTU types - Report correct rma_iov_limit - Add new variable - FI_VERBS_MR_CACHE_MERGE_REGIONS - eq->err.err must return a positive error code- Update to v1.6.0 - Fixes stack smashing when using the verbs provider (bsc#1089190) - Core - Introduces support for performing RMA operations to persistent memory See FI_RMA_PMEM capability in fi_getinfo.3 - Define additional errno values - General code cleanups and restructuring - Force provider ordering when using dynamically loaded providers - Add const to fi_getinfo() hints parameter - Improve use of epoll for better scalability - Fixes to generic name service - PSM - Move environment variable reading out from fi_getinfo() - Shortcut obviously unsuccessful fi_getinfo() calls - Remove excessive name sever implementation - Enable ordering of RMA operations - PSM2 - Skip inactive units in round-robin context allocation - Allow contexts be shared by Tx-only and Rx-only endpoints - Use utility functions to check provider attributes - Turn on FI_THREAD_SAFE support - Make address vector operations thread-safe - Move environment variable reading out from fi_getinfo() - Reduce noise when optimizing tagged message functions - Shortcut obviously unsuccessful fi_getinfo() calls - Improve how Tx/Rx context limits are handled - Support auto selection from two different tag layout schemes - Add provider build options to debug output - Support remote CQ data for tagged messages, add specialization. - Support opening multiple domains - Put trigger implementation into a separate file - Update makefile and configure script - Replace allocated context with reserved space in psm2_mq_req - Limit exported symbols for DSO provider - Reduce HW context usage for certain TX only endpoints - Remove unnecessary dependencies from the configure script - Refactor the handling of op context type - Optimize the conversion between 96-bit and 64-bit tags - Code refactoring for completion generation - Remove obsolete feature checking code - Report correct source address for scalable endpoints - Allow binding any number of endpoints to a CQ/counter - Add shared Tx context support - Add alternative implementation for completion polling - Change the default value of FI_PSM2_DELAY to 0 - Add an environment variable for automatic connection cleanup - Abstract the completion polling mechanism - Use the new psm2_am_register_handlers_2 function when available - Allow specialization when FI_COMPLETION op_flag is set. - Put Tx/Rx context related functions into a separate file - Enable PSM2 multi-ep feature by default - Add option to build with PSM2 source included - Simplify the code for checking endpoint capabilities - Simplify the handling of self-targeted RMA operations - Allow all free contexts be used for scalable endpoints - Enable ordering of RMA operations - Enable multiple endpoints over PSM2 multi-ep support - Support multiple Tx/Rx contexts in address vector - Remove the virtual lane mechanism - Less code duplication in tagged, add more specialization. - Allow PSM2 epid be reused within the same session - Turn on user adjustable inject size for all operations - Use pre-allocated memory pool for RMA requests - Add support for lazy connection - Various bug fixes - SHM - Initial release of shared memory provider - See the fi_shm.7 man page for details on available features and limitations - Sockets - Scalability enhancements - Fix issue associating a connection with an AV entry that could result in application hangs - Add support for new persistent memory capabilities - Fix fi_cq_signal to unblock threads waiting on cq sread calls - Fix epoll_wait loop handling to avoid out of memory errors - Add support for TCP keepalives, controllable via environment variables - Reduce the number of threads allocated for handling connections - Several code cleanups in response to static code analysis reports - Fix reporting multiple completion events for the same request in error cases - usNIC - Minor adjustments to match new core MR mode bits functionality - Several code cleanups in response to static code analysis reports - Verbs - Code cleanups and simplifications - General code optimizations to improve performance - Fix handling of wildcard addresses - Check for fatal errors during connection establishment - Support larger inject sizes - Fix double locking issue - Add support for memory registration caching (disabled by default) - Enable setting thread affinity for CM threads - Fix hangs in MPI closing RDM endpoints - Add support for different CQ formats - Fix RMA read operations over iWarp devices - Optimize CM progress handling - Several bug fixes- Update to v1.5.3 - Core - Handle malloc failures - Ensure global lock is initialized on Windows - Fix spelling and formatting errors in man pages - PSM - Fix print format mismatches - Remove 15 second startup delay when no hardware is installed - Preserve FI_MR_SCALABLE mode bit for backwards compatability - PSM2 - Fix print format mismatches - Allow all to all communication between scalable endpoints - Preserve FI_MR_SCALABLE mode bit for backwards compatability - Fix reference counting issue with opened domains - Fix segfault for RMA/atomic operations to local scalable endpoints - Fix resource counting related issues for Tx/Rx contexts - Allow completion suppression when fi_context is non-NULL - Use correct queue for triggered operations with scalable endpoints - Sockets - Fix check for invalid connection handle - Fix crash in fi_av_remove - Util - Fix number of bits used for connection index - Verbs - Fix incorrect CQ entry data for MSG endpoints - Properly check for errors from getifaddrs - Retry getifaddr on failure because of busy netlink sockets - Ack CM events on error paths - Remove 0001-prov-psm-Eliminate-psm2-compat-library-delay-with-hf.patch as it was merged upstream- Update to v1.5.2 - Core - Fix Power PC 32-bit build - Sockets - Fix incorrect reporting of counter attributes - Verbs - Fix reporting attributes based on device limits - Fix incorrect CQ size reported for iWarp NICs - Update man page with known issues for specific NICs - Fix FI_RX_CQ_DATA mode check - Disable on-demand paging by default (can cause data corruption) - Disable loopback (localhost) addressing (causing failures in MPI)- Fix github issue #3393: Add 0001-prov-psm-Eliminate-psm2-compat-library-delay-with-hf.patch- Update to v1.5.1 - Core - Fix initialization used by DL providers to avoid crash - Add checks for null hints and improperly terminated strings - Check for invalid core names passed to fabric open - Provide consistent provider ordering when using DL providers - Fix OFI_LIKELY definitions when GNUC is not present - GNI - Add ability to detect local PE rank - Fix compiler/config problems - Fix CQ read error corruption - Remove tests of deprecated interfaces - PSM - Fix CQ corruption reporting errors - Always generate a completion on error - PSM2 - Fix CQ corruption reporting errors - Always generate a completion on error - Add checks to handle out of memory errors - Add NULL check for iov in atomic readv/writev calls - Fix FI_PEEK src address matching - Fix bug in scalable endpoint address resolution - Fix segfault bug in RMA completion generation - Sockets - Fix missing FI_CLAIM src address data on completion - Fix CQ corruption reporting errors - Fix serialization issue wrt out of order CPU writes to Tx ring buffer - Verbs - Allow modifying rnr retry timout to improve performance - Add checks to handle out of memory errors - Fix crash using atomic operations for MSG EPs - Fix dependency to libfabric1 for libfabric-devel in baselibs.conf- Update _service to allow auto updates from github- Update to v1.5.0 * Authorization keys Authorization keys, commonly referred to as job keys, are used to isolate processes from communicating with other processes for security purposes. * Multicast support Datagram endpoints can now support multicast communication. * (Experimental) socket-like endpoint types New FI_SOCK_STREAM and FI_SOCK_DGRAM endpoint types are introduced. These endpoint types target support of cloud and enterprise based middleware and applications. * Tagged atomic support Atomic operations can now target tagged receive buffers, in addition to RMA buffers. * (Experimental) deferred work queues Deferred work queues are enhanced triggerred operations. They target support for collective-based operations. * New mode bits: FI_RESTRICTED_COMP and FI_NOTIFY_FLAGS_ONLY These mode bits support optimized completion processing to minimize software overhead. * Multi-threaded error reporting Reading CQ and EQ errors now allow the application to provide the error buffer, eliminating the need for the application to synchronize between multiple threads when handling errors. * FI_SOURCE_ERR capability This feature allows the provider to validate and report the source address for any received messages. * FI_ADDR_STR string based addressing Applications can now request and use addresses provided using a standardized string format. This makes it easier to pass full addressing data through a command line, or handle address exchange through text files. * Communication scope capabilities: FI_LOCAL_COMM and FI_REMOTE_COMM Used to indicate if an application requires communication with peers on the same node and/or remote nodes. * New memory registration modes The FI_BASIC_MR and FI_SCALABLE_MR memory registration modes have been replaced by more refined registration mode bits. This allows applications to make better use of provider hardware capabilities when dealing with registered memory regions. * New mode bit: FI_CONTEXT2 Some providers need more than the size provided by the FI_CONTEXT mode bit setting. To accomodate such providers, an FI_CONTEXT2 mode bit was added. This mode bit doubles the amount of context space that an application allocates on behalf of the provider. * PSM provider notes * Improve the name server functionality and move to the utility code * Handle updated mr_mode definitions * Add support of 32 and 64 bit atomic values * PSM2 provider notes * Add option to adjust the locking level * Improve the name server functionality and move to the utility code * Add support for string address format * Add an environment vaiable for message inject size * Handle FI_DISCARD in tagged receive functions * Handle updated mr_mode definitions * Add support for scalable endpoint * Add support of 32 and 64 bit atomic values * Add FI_SOURCE_ERR to the supported caps * Improve the method of checking device existence * Sockets provider notes * Updated and enhanced atomic operation support. * Add support for experimental deferred work queue operations. * Fixed counter signaling when used with wait sets. * Improved support on Windows. * Cleaned up event reporting for destroyed endpoints. * Fixed several possible crash scenarios. * Fixed handling socket disconnect events which could hang the provider. * UDP provider notes * Add support for multicast data transfers * Verbs provider notes * Fix an issue where if the user requests higher values for tx, rx context sizes than default it wasn't honored. * Introduce env variables for setting default tx, rx context sizes and iov limits. * Report correct completion ordering supported by MSG endpoints. - Fix rpmbuild warnings - libfabric-devel requires libfabric1, not libfabric - Fix baselibs.conf- Enable build on all archs - Enable mlx build- Add x86 build without libpsm2- Update to v1.4.2 (bsc#1036907).- Update to v1.4.2-rc1 (bsc#1036907). - Update notes: - Fix for OS X clock_gettime() portability issue. - Updated default counter wait object for improved performance - Fix multi-threaded RMA progress stalls - Updated default counter wait object for improved performance - Fix multi-threaded RMA progress stalls - Fix error in fi_cq_sreadfrom aborting before timeout expires - Set atomic iov count correct correctly inside fi_atomicv - Fix handling of apps that call fork. Move ibv_fork_init() before calling any other verbs call. - Fix crash in fi_write when connection is not yet established and write data size is below inline threshold. - Fix issues not handling multiple ipoib interfaces - Reduce lock contention on buffer pools in send/completion handling code.- This version fixes bnc#990184 (bnc#990184)- RPM group fix- PSM provider notes - Defer initialization of the PSM library to allow runtime selection from different versions of the same provider before fi_getinfo is called. - PSM2 provider notes - Defer initialization of the PSM2 library to allow runtime selection from different versions of the same provider before fi_getinfo is called. - General bug fixes. - UDP provider notes - Fix setting address format in fi_getinfo call. - usNIC provider notes - Fixed compilation issues with newer versions of libibverbs. (fate#321883)- Updated to version 1.4.0 for general stability(fate#321883) - Summary of changes as follow: - Add new options, `-f` and `-d`, to fi_info that can be used to specify hints about the fabric and domain name. Change port to `-P` and provider to `-p` to be more in line with fi_pingpong. * GNI provider notes - General bug fixes, plugged memory leaks, performance improvements, improved error handling and warning messages, etc. - Additional API support: - FI_THREAD_COMPLETION - FI_RMA_EVENT - iov length up to 8 for messaging data transfers * PSM provider notes - General bug fixes - Use utility provider for EQ, wait object, and poll set - Allow multi-recv to post buffer larger than message size limit * PSM2 provider notes - General bug fixes - Add support for multi-iov RMA read and aromic operations - Allow multi-recv to post buffer larger than message size limit * Verbs provider notes - Add fork support. It is enabled by default and can be turned off by setting the FI_FORK_UNSAFE variable to "yes". This can improve performance of memory registrations but also makes fork unsafe. The following are the limitations of fork support: - Fabric resources like endpoint, CQ, EQ, etc. should not be used in the forked process. - The memory registered using fi_mr_reg has to be page aligned since ibv_reg_mr marks the entire page that a memory region belongs to as not to be re-mapped when the process is forked (MADV_DONTFORK). - Fix a bug where source address info was not being returned in fi_info when destination node is specified.- Updated to version 1.3.0 for better PSM2 support as suggested by fate#319253, comment #9. [*libfabric-libtool.patch] Summary of changes as follow: * PSM provider notes - Remove PSM2 related code. * PSM2 provider notes - Add support for multi-iov send, tagged send, and RMA write. - Use utility provider for EQ, wait object, and poll set. * GNI provider notes - General bug fixes, plugged memory leaks, etc. - Added support for the following APIs: - fi_endpoint: fi_getopt, fi_setopt, fi_rx_size_left, fi_tx_size_left, fi_stx_context - fi_cq: fi_sread, fi_sreadfrom - fi_msg: FI_MULTI_RECV (flag) - fi_domain: FI_PROGRESS_AUTO (flag) - fi_direct: FI_DIRECT - Added support for FI_EP_DGRAM (datagram endpoint): - Memory registration improvements: - Initial support for Cray Cluster Compatibility Mode (CCM) * MXM provider notes - Initial release * Sockets provider notes - Enable FABRIC_DIRECT - Enable sockets-provider to run on FreeBSD - Add support for fi_trywait - Add support for map_addr in shared-av creation - Add shared-av support on OSX - General bug fixes * UDP provider notes - Initial release * usNIC provider notes - Implement fi_recvv and fi_recvmsg for FI_EP_RDM. [PR #1594] - Add support for FI_INJECT flag in the FI_EP_RDM implementation of fi_sendv. [PR #1594] - Handle FI_PEEK flag in fi_eq_sread. [PR #1758] - Implement waitsets [PR #1893] - Implement fi_trywait [PR #1893] - Fix progress thread deadlock [PR #1893] - Implement FD based CQ sread [PR #1893] * Verbs provider notes - Add support for fi_trywait - verbs/RDM - Add support for RMA operations. - Add support for fi_cq_sread and fi_cq_sreadfrom - Rework connection management to make it work with fabtests and also allow connection to self. - Other bug fixes and performance improvements.- Moved man pages to main package. - Fixed invalid library group.- Packaging version 1.2.0 for fate#319253- Use explicit file list instead of wildcards - Package fi_info. - Remove libtool.m4 from the package so that autoreconf installs a current version.- Initial package, based on the OFED specfile for libfabric - Add libfabric-libtool.patch to disable static builds by default.ibs-arm-3 1669516003 $%%%%%./0111116<=>>>>>>>>F..IKNOOOOOOUVI\`bb`ijjjjjjpqr.uwxxx{bbb```````xxxbbbb1.16.1-150500.2.21.16.1-150500.2.21.16.1rdmafabric.hfi_atomic.hfi_cm.hfi_collective.hfi_domain.hfi_endpoint.hfi_eq.hfi_errno.hfi_ext.hfi_ext_usnic.hfi_rma.hfi_tagged.hfi_trigger.hprovidersfi_log.hfi_prov.hlibfabric.solibfabric.pcfi_accept.3.gzfi_alias.3.gzfi_allgather.3.gzfi_allreduce.3.gzfi_alltoall.3.gzfi_atomic.3.gzfi_atomic_valid.3.gzfi_atomicmsg.3.gzfi_atomicv.3.gzfi_av.3.gzfi_av_bind.3.gzfi_av_insert.3.gzfi_av_insertsvc.3.gzfi_av_lookup.3.gzfi_av_open.3.gzfi_av_remove.3.gzfi_av_set.3.gzfi_av_set_diff.3.gzfi_av_set_insert.3.gzfi_av_set_intersect.3.gzfi_av_set_remove.3.gzfi_av_set_union.3.gzfi_av_straddr.3.gzfi_barrier.3.gzfi_broadcast.3.gzfi_cancel.3.gzfi_close.3.gzfi_cm.3.gzfi_cntr.3.gzfi_cntr_add.3.gzfi_cntr_open.3.gzfi_cntr_read.3.gzfi_cntr_set.3.gzfi_cntr_wait.3.gzfi_collective.3.gzfi_compare_atomic.3.gzfi_compare_atomic_valid.3.gzfi_compare_atomicmsg.3.gzfi_compare_atomicv.3.gzfi_connect.3.gzfi_control.3.gzfi_cq.3.gzfi_cq_open.3.gzfi_cq_read.3.gzfi_cq_readerr.3.gzfi_cq_readfrom.3.gzfi_cq_signal.3.gzfi_cq_sread.3.gzfi_cq_sreadfrom.3.gzfi_cq_strerror.3.gzfi_domain.3.gzfi_domain_bind.3.gzfi_domain_query.3.gzfi_dupinfo.3.gzfi_enable.3.gzfi_endpoint.3.gzfi_ep.3.gzfi_ep_bind.3.gzfi_eq.3.gzfi_eq_open.3.gzfi_eq_read.3.gzfi_eq_readerr.3.gzfi_eq_sread.3.gzfi_eq_strerror.3.gzfi_eq_write.3.gzfi_errno.3.gzfi_fabric.3.gzfi_fetch_atomic.3.gzfi_fetch_atomic_valid.3.gzfi_fetch_atomicmsg.3.gzfi_fetch_atomicv.3.gzfi_freeinfo.3.gzfi_getinfo.3.gzfi_getname.3.gzfi_getopt.3.gzfi_getpeer.3.gzfi_inject.3.gzfi_inject_atomic.3.gzfi_inject_write.3.gzfi_inject_writedata.3.gzfi_injectdata.3.gzfi_join.3.gzfi_join_collective.3.gzfi_leave.3.gzfi_listen.3.gzfi_mr.3.gzfi_mr_bind.3.gzfi_mr_desc.3.gzfi_mr_key.3.gzfi_mr_reg.3.gzfi_mr_regattr.3.gzfi_mr_regv.3.gzfi_msg.3.gzfi_nic.3.gzfi_open.3.gzfi_open_ops.3.gzfi_passive_ep.3.gzfi_peer.3.gzfi_pep_bind.3.gzfi_poll.3.gzfi_poll_add.3.gzfi_poll_del.3.gzfi_poll_open.3.gzfi_provider.3.gzfi_query_atomic.3.gzfi_query_collective.3.gzfi_read.3.gzfi_readmsg.3.gzfi_readv.3.gzfi_recv.3.gzfi_recvmsg.3.gzfi_recvv.3.gzfi_reduce_scatter.3.gzfi_reject.3.gzfi_rma.3.gzfi_rx_addr.3.gzfi_rx_size_left.3.gzfi_scalable_ep_bind.3.gzfi_send.3.gzfi_senddata.3.gzfi_sendmsg.3.gzfi_sendv.3.gzfi_setname.3.gzfi_setopt.3.gzfi_shutdown.3.gzfi_strerror.3.gzfi_tagged.3.gzfi_tinject.3.gzfi_tinjectdata.3.gzfi_tostr.3.gzfi_trecv.3.gzfi_trecvmsg.3.gzfi_trecvv.3.gzfi_trigger.3.gzfi_trywait.3.gzfi_tsend.3.gzfi_tsenddata.3.gzfi_tsendmsg.3.gzfi_tsendv.3.gzfi_tx_size_left.3.gzfi_version.3.gzfi_wait.3.gzfi_wait_open.3.gzfi_write.3.gzfi_writedata.3.gzfi_writemsg.3.gzfi_writev.3.gzfabric.7.gzfi_direct.7.gzfi_efa.7.gzfi_hook.7.gzfi_mrail.7.gzfi_net.7.gzfi_provider.7.gzfi_rstream.7.gzfi_rxm.7.gzfi_shm.7.gzfi_sockets.7.gzfi_tcp.7.gzfi_udp.7.gzfi_usnic.7.gzfi_verbs.7.gz/usr/include//usr/include/rdma//usr/include/rdma/providers//usr/lib64//usr/lib64/pkgconfig//usr/share/man/man3//usr/share/man/man7/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:SLE-15-SP5:GA/standard/749ee633bbcf770cafaea0759835c27a-libfabriccpioxz5aarch64-suse-linuxdirectoryC source, ASCII textpkgconfig filetroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)C source, ASCII text (gzip compressed data, max compression, from Unix)PRgqPVh\4Cutf-8a20d9462a9c5299d45be8b003e6781699c4fa900ded4584680387732164b2829? 7zXZ !t/Z] crt:bLL (BrkL5#ҡ.+G|3 jĈ Oi%rQ^4hקMP\ S7~@&k`b?$H XUE.4J3❰|P07=;w 1\xEkF-˨ah.ڞׯyϔD:Jgn({I0<Ck2]_jUJꅙ~ZJBS=/xkX]i̞x0? 6_m[IuWzW7Oʽ*/7Ieht5F1CEHBPP?x{G>[2ț\;VeW_\e`B!+Df|$( DB(W ]sfe[q$laUX3b/84TbR޵CM3d_PFmV۰!DRCL$4j4=)}3$Ōl;tgO`8m\:#Yq1؆R,n9q4@%qǸ} hA=zt*Zm]粀t X "ar~Wz#|roYVs_x]b][uȋ40V.q,} hq ) 1͚4Z~RHÎH"snfҮ]I3340(ծGb۬dw,ۖB/y&g}&M U,uG"k}Q .Ph x:7 ,= Q9Yp4"Ld0r}^]#y/ ^SQNmPgTg ح ݖR12Aps` ok!gTD nd3Y"ҤQ9:1eV6ԼמK\ }ֶ Y}hr2J$($9xaK}n$-L~c֧1]s^4t8 tw<͢\Uo~)d*n,$\*-K- )+`;7M@X`c*$JBG̞͜= AUwOfm ; t(Y[Ofw Fj1<6Sh[?X_-Cq{ l8W=p^q袬Trg"G~|ӇcRn[*MЇk`S[\(Um4NH+'Vƞ6^&͞tn!33xH0s 9BiF+ZyC;V6ENP"5iHFG!+~m:v3'IƝ=(g,)\GHmPNǚu^\5@ -hr1w~PsNkZթ>^^NOBfAVCu 4R-){n~Pnad vVîբJ{EW![|8Ŕ7019Llsą[tmFE &οKt9S,y]ıt> rbrt穜24L>0Ze`KVUا{tD D;peqED=^TͲ:Ȩ`dž`Slc[iRf2iCYp&BC7(FD- Ŧ58mWVA_ys`==" #`P@p>Lb${?u'0CIc}zqrϧcc]zoDž1mCmgQȦQ˞8g60Sܾz *r?Bpb1-w@earOIǽRc8OiNN0hV)>T\K9"WP~wS">zE >1@h( ?ٛUv! o} Zs<ˆ\(sXԇ>M0U=rvr"fږ"2LjN'@YwCntACPhW =Xio?0@'87#bTs9U(ʬ:u'd$5gId`TUh-<[F/]@E> ^A~K;ʾV߈D5@Dq8R݄/&"e9l=Z|99ǗZvfȫ#+,H=WLX)MYWr\dBWe$Reh`(:MXs587yX"/'^] Tˋ[̜x ҼA5_t<3! l޺-sJt4xȳ,>x%VOpG l,JoU"O.m25 .q%U4PR|Ӷ W8UrA_h#}.,Ҫl<2]ƶlzUxpAᲐ`9 yPQ0FbĻ{!<=Av*BR0pJ1( >w]Q+Trf^xCnMDC4x&RDd峦DN<l?H #]m2嵐ouirrce e2=oL_ӜtrR Z!^_|[ 7!i@+#}#'#a fM$g}V~&l?r`d7"6%ǡtK)4RӂcT7ֲ(u3)Uha3AJK'g#Mlz? Nc+At%Vf?{a&㰃44igxgu CԄϽkRɹim 4(ӽ=lwIˬAMRr_$U>^{A +WAD\_JP"S/jJ ^6kk.WZatadE;[\2鴕JD&ATӀkL 4< \K>E)^МR191t4"N!gC\jܦY8CEsDI 練a1h*5C3m($†'x]o;>ljsa"(ÿͭzrxIFHܨ@0 =qCCυ]Ҷ/mz#byއ"\=Wv]Z/Y =沏8<ڂ ՠtư|¯lu =+gK<-u\{)]Pn2j/?8$?~OsO2yd dFN~'gT-K9|ZS >ES28P4zD8=2۫Ϧhnz- sB( '$w'h!㵣%SrdROQh!}eA0PUIkvػ.[~N/d4`* +{1AOjN bbzs|nT`4q]vZ1STފ5hX XG>T~!&arp_v2MwQRwFph%l!(& |r`|ToK3>FHZv<zbr̉^wc¼a5hb =>4V(ҰTC_7XNyn$1 XZY֕ef1FTQ6X!`=)?=6ht||e]X_zȧT~WKy<=pȮ&Hb:8c%t4-i<@ Lg gVbr*X+r&-DI#x5 ~%Fa|XvaxnQpws>/q:%,`|[9Ċ"yDHnS  sV!?PA.YO+PL~([N]N?hX͢E%q@L;m#Q+NhRߥ+y&to:r Dw{wC:Ui2ȶFVZ |Cw39OJ\#OWR9̓"Hop9+Â/lעƫ ( /JB"85Ќ8op9(M71M[6@5pwaXj NT3jFb=8%Okóbc 9|o'3%%& L_?N ‡ȗRyoX- :d)`P_Iħds dXXk`(zo\e%;:}8&>J/sw<91@ћ._/N"H GBzĢ]O:&賺>I?F"D #MӒŸ 0EQ(> )κ`F2iCT"WJps6@'ӄe<=$O(ګ%3:e ~+{m ep(=?x.9mv}o2s"xcWBf]Ub2!vvu%ĬڍCzRk$ y0?WqV8t(;sq.Nⓓ߭6ж-k}ٳ}ԥ92+RwL3j]jR(2Q9b2Q6LlWJ>6TTMyAތ0"BHڱ CAw%p5D`h\ɥԱ,{L!^ޙH rU{՛yU@V 7TvpPP .{]S? ?H?:SINXf䡓qd^qA3eG!D*ΗԏPl7#rE$Z]xa!¿]89}rl%!ruGȀ6:rMݨp4 5?QkWi`xiDZv4q.S/{Dl&Af6tk&Bᱺ5JJ3Raw4G Qs- 4yn7&ak1PuW!"n6q/a|&&&=@s Ci'(jMtj nh]b˯ӵZ#rcV V tJnlpMcvTv#Ewg/҄EG`(%!vf B'8xw"nThq ^踤@m#:Jj0}+yȑ&0xԥͲcB`C4<@[{;I1d Ra|`=ϠJ(X`2k l#Z3D4PMmjכS傽=NP)B25N o7/U #7);VZSNA5DZid qQSЫ<А INn磨FޏOLa˧:^48[_wlԯ3a\gۓ_sx;`LWm6>g,—UǍ9J- I^ṷ̄5WGUE4:ʴZ&䒾.}SLl-fK;^^JwX Y&5?+Qa$V}<:qqYtE$￰*bڧ@ٴEDQ/ 0Ջ8 G~~5;~!ѧ +5M~J- "QrWCВc,#1^]hj3(zW2_Nٜ ?'X'OcZO"o°D߹Xm }ƹΐƒ*R-yh:".io^V%e;oS MK1weĝ ^A ʹRٸC ;}ov 3F8q(odzǔvy>Bp]u8=rZ'9N#iR#eE@jli8l >I=f`d5J=/*!t|4ۥIy@kŸLB9ሌ wA'"hTOInyDlVbqZ1!&@tIm-:}r)GN%6USպ"#uҏkR53K/ZaqOFAio:s$Vi#9]ˑ{ܚ5u@{_~Щߧ 3Y!ʮȡp7 ]Qk6r/JlcHziڄ$Yޯ}q`k0 -uFJӘY%I$h?'\,W؛A%Ȑ2>'jлL ih*lZF@=*hvN//>9fC`?dqQJX)RA½9iaZH-/AmsTT,|{:G_f4/!wHY~ɱiO\HjueW[%4Q3${qyޓ%= \}s} H/30CtԶ8@w1ku/Kx2Rحkơ a{ g} H;֘p8h͔Mt>zI1C)h$ tl+]RtP&#:c(>k };Q='CU#ܰPnM]e +08ia-Ah>_?Y曌v 74/H_KGlC<8ƸB5C#`&wP8wHJ]'Έ#-JF8"9*eGEtBĨ7Nf=D&@d__'N+&- -XV6f^hD*d]0^aR<5jM< _+ EUk_rs@lY3N@~ѦQ`U^ƍnKv:Fw,,>e]nH cG1YӸL>ʔ0FӤ-޷0]' BHڥ=pf+ Y@U9*nYD^QJ{3)'ƹ=F#ѫ#xl-qH-3r1aJRfQrNrЫQHiy]O r9q#ϗ(&[.Nނ-o–ZIF u{2H?_"֬ԭy;ɨ>`khO`a[ _U,nۣĈ*_@ɑ;BpvYڎ!qh|R`ӇxQANJXنNY],:ȄP_á34`9툲/2g -]rzC760E5VtԼL{ね8Wzvc&VgRA>,UMߗ lK!;`y{S}ֆ2Z.. hPba|tn, I_X揫D"};uSE"j̐\X*Lq3+l~7C5z%ډ&"ZIњeVA_^&*aU@9zh,k{Q*>v۴=X1`a%<~tfC{l;C>[U*D׿>\{/'Qj.b?$ӗzˬzOn]DIÆQ&Wn_CxN}i C}BvB/(8@Lğ [.Uvc:7Kntl.W:8q#F:r.L(\j3x0{&@-tEzqDBC_']:b4aJvvoQEe%vVU>ƄPik-6޵\ Nl'gا`me hi ƥؽ:h6;X ֈn*(G6ʇX6bKċڮ] 2F(ll2 H:qp) |S^Gfr >};חIvEA"uVtToLr/o"S*M I+DP`N(|R~s{>?ng;[O7L!kC3vMQHw5k䰜ʃ{]˯;n E B,, /rKrOR mRN#G9ӽ-a -Z[%I `jx_m͉<9ݕ0ta=g4ZU Jѝ;XgX)Q~DBA@']F\JLpwj&l қ]Z y5%hVT{X$C~5 2 _,NKۦO)^C:LkA!Pp{sv6T/l^JxMFNd3A#Nc9s>,ڹ]i8hBd]*3ʾeTZ;'vfe,BT%Q0ZTA:a!>n#Xr ,}y.!C[ёJRKBIJ7 G8c]e:XYgm,EF0FCn9w_Cij LTᜬ|Q)V) 7[]Ηɾ,j|NMo^-lxذ eWͩG>́׃qzNAXBTF }7&yvLj;U3UC1r][M!6vA :vzׅp~EWmd0^k^ulwbMmqwnЛ D4Mo?Hќ?j'ftJ""~8dGVs)=R_6@7Y)˱ J6 :GU}~tI~Ip9%ׁ=?EVÌB*΃gs '&à{Omsi.(QlvO}x7qNBre p,=d9kMP,H:cf@fgKu R "njryr TknT5.ؘhp DLi$-˟DnX QwryPqI }>=sKW.igVid_Kkc 2'Ys腂 ɿ9+$a]@ 30F!>F ltը{!xeM bx9Ktާj}}۵1~QUiucA ӖmR94$vb3IYz\iC_?YdEUa_5Tl͆o;7Qa1 .~ӸhmW4\Ox]쌝ahVىEjm/WdOM_f۾L-\xmrn{ce􀗪N<ڟÍlߵ'Hgh%k.T{[ø58‘ H86Cz6t>ypNFJ(tN裙!2 #NӖ, CקCtbJ-ipimxɀAbSD8Q ~℄w"d(AǖAK[yA]|҅AygPi7e ?ç!I9F8&u l&+ -N @X҆o n@k ✌3Z)̔0 {PPtTY_A**v#r3oLUH ac]I4}Sy6i7Q5ګ7yNI|@>e>[wͳ >O(t!ÏVs#9N\\Sϔ8DIvmjPےp05gՂrSJ,JO!ai\QX5*mOKCħ_b(=$UyֹGqxn^%a.{bq8<ޮ $c(M^oNs?D)cTJq.I^g4g95p%PgToBP졸IR' KX>rP /7rX %:n\8B#Q5vD#u7r-φ~'hrT`-\v3g yBDqe-zĜ}(Ax|SEq[1Wͥ.>ST5㯏E9\&` yM;![A$kBE-P1\kG jR>?]N}Iҗ#ьkdcL9wDbM3ܥ=h+س{Aihʡ۹I#H~彯v)hxtԧOj !r"͛lv)ܷjyN,tRɈ{ɗY051ŢKdkn#XTl_ ;{&nʝw"{AD2H3l=i%lvjF F%!B{߯`%6: Jo>䐂Q /6s3RJz:~]0~k TF~׼,O{[T\ u樂: K)zJOM9 U]F Eۻclx̙{>D^ht>K8+!{jL]ɤ ’ fdiwh8;ˋ.>I^^ \@$c1[b&{q"AfXɛVV" Hu䯡y΂#'-)줊= tL?)VkKѩ*ZgC$ k?7d+  3,UYP:AҦ';|? %T`-Cgό-f=hŽYڵ/ xh0;FP_2? /& 'i/9ƞyWGh~dU1q4 :}D3"pNE$2I+j9,3Cg6P>qLLB#p}eqsC<{du&o@gABV =NN\)YB"buZVעQAHuyO3h z"ص>yGcwjޓjujB 3^#sc?xP58a=4LZ-Uj ?@mylyzfx Gy1*Tͬ^Љǖ%2=:C ;-pUUeab"#r֥ =JN9=2l]0hz pT b)8ˀ3$}(qYSN i#q>^$g~` )LҚqGoy ]b0)-*QMM8 i_a^i"=i0*m?er4źz&:6uu/ٗNxOj wWĥ"[5㖘+C4e>%ZZ'W2"oA9e;(c50۱8 E{UbxυYez6T|DgFGbxĐ =_EQ)e9xZDe:^ÈB2xѱ@w_Nt˧gbpRs(4n7RtdQV$(T5Y%5@`fYaCae7Ď|4r8\sľَj{0f SڠƼ;+d"=Ƴ'tV"Unb2"K=Bh,l71b`z֥%GA XͫӲz0c;9NrƎ%_&̆qO(d!vۓe5U&"ݑ>qnڍ?I>ZKMMV5C;Ij|k`cؠT ٠=:Qt6uN>~A^7J,S$w;-UGI^t[( @*?.Q8p6^at ٯ<ԟ 7*.g~B^O)xe, 3WK5V[0n LgX DЕ))jnN>ܮQ)Bq"1W?-bAmmǝxHJ1EcBC,c3/ w\cxpr^,Td!;kcm*ly*J\Fj o)QJ:VP%_rMn,Gm]\UcI =_n*ҼS/%hOP|۲j;8e%QdnFdmCxԍTRmPa"qAcUX}U5k^nɐuXT8#TILM|xvHjRźߪ3%7/B)  JAy4*esgHafC˰r_My=8RxsBrd%LkI|1}م:#oLc`BeO-!<:_ankcFN׷i_mEn[P4wS6Y;v'*)([!Z1j3$T5y(jѪPb>V\ב둶 Aa:V]_>77 %V.ըD ̰t:<*Iō{ BM^c*ip{6>\vi_\AAgpį8TJ7v B +m=>K{+⚲E/) XjT= {d0{nñ3NԄC,?1#a1`==~I(<;s#+icFls;}#o<~/sQ^mB(6!^Kix_GƟ7!\[B{L?+BPvY%0+&id7ڷ2G> DoH8G{NYu7Dq|SW }P4Jh?_vhϯߪMd'%UyDtc5LlZ,ocWm48Ǔ/|d\Ggϐg+sVu4%$@` T˪Fez0+jM[D&[©PC՜KE4 Ϧl L2LI臜ّEK$6#̠yXI^ôwbK(+vD,M@ BZm^81^]ى_v)zC+,ڇ)$D5#X~h[d.Zy'ൗXP4\];()@C9_NB'E&@b3倿\En%IS%apuDQe}zh St%uzaZ 4ѳ$ `sCBj+Q[C_ԘB?aݜ l_pN)Q*x$vviǜ>f[) `H,/0qtIL݄<6Vwb;Y $DW#f}FJ@&ge1#1tbS6^uPyO6ɕt[+ Cqtc/z^7BND{cF&i[6HM]j~6 67ju{vxWϸ\I8$-R_2qhvF4M4hgv!$<վ ;yvjQ+s6kz"b ioc* OI7bйpAI]o&Wl4V,{M叱-UU|уfY\ G 5^I!A'~AWAո2`Ƌ<|PCTfWgE䖸 D3P[q$4H ٮ"4{j=U4 T,QdjB#|<vPyt-5ވԣG3f .,z?\Ɲ?24sLMt_\vGv]1ݒ?Hx%۶؟V!ZVkC#KlTxyBD(NS0"K^]4dXUB]DYK^kgkX *z[>lC("MGCPJqgՉ)u-NR#(L: }Q@R0?#th ~Foux|e"=M$fi}ŮE>Gz˵y\J5 Ta25I,M]4jə9yc@ΝЍ#t։|s=?n!^my FӹmbnN%Cy;=jn)SI  هŇ kKTl&UE-T) fFlY+ oSa@mh9!H~Ħ+OC91@Qҳ;N=M't#w:ρ89?mb2gX1,*{ׄc"{{e!cp[d岑5'کM P&'5(sUf}1Gh+" 4^!<\ks8w"/gLj=eJܸ_gG"}֏ A%I JKq8Y@39W9jq ҙtcuG!eqQ]9HiPjx !]w"1J+^p,BE.* tGwbeT-Vn皬;ڷlu+ز=Fe {U:Kd ߚHC4X`JayGvL,[?/m52l2גU<_Ѱ&ђ5]7ȳJfY?v$oJpFJiAgK&eN.MgVh@GeQ@OC+."P=U))1A{tq%1CqXB?38>e%?SkXbo(4(WWM5jXf8VdMe yCR76n렝>g^?tGj DV|+/!Gwyr %gs~YgM =P 3CY'nV!pe͇?v9 .G6Z,$DGZ ëZ12~p4_6>:*M-GۀVwCx F@,a:h>5!@;_LD rxltLpEnXJ5V}i4^6 [E1JvMR}#8rk֑uϨw'K9 <i'`Xl"b#IVӎ Y<6?8ƥMk RxMPM>Mf0&xE{<Wdi&SXn `Ft,z2Dxk]<dEr>)P\H"ofDž*4ޙNU9lJL@$eB$ kNeh`[Қ[m3I3҂rrtFTN)eFj)a/Vxɍ󙗩>I͠X2{3aj%ҿ@8`gH)fQjes-fƴ@7,ݟ(j3T/w[?2OOZX*vk۰kHZd #c`13`7g>E7]ç AvGVL⿊at"LIH=Hۖqhq_4J&;BV@R̡K 8H> DZgWof ٧zC k|Q9AQ-Cj5;`7Yִҩч[g , ^FdClkƦqՖ0ѢSހ;Rqݷc3jmV?z9 jU4x?P:)C{ _h00g 7*C0 b@D EѫnD\nR"Bp=΁,,T%ਸ਼~?;B,$d*_q(5M뼧޸g0-$1| dWپSFn٣3Ihs^"d]%wԾzg6s H Q+s[7H7ǣ}rsQMT+HH"6}e׎oWaі!̘5nt#MT5-nWO /P  }g>{t"F*OX[PtxIc( {!KЃFE噖0L@m:8e]&tP&^;h!!s.,xmL}X8'1gC^w 3nѓdHuŊ{BȢFk7D%n ~˟`:QO@tIt`6G J<ғF?h>n.dm16,#B.f2f1LFm}]*P РBZOA2MR?96 #)7EgNj.2 &B_y WL.^:Rs[5kx:EG*WpQ"ځG&gѴZL䞫h lԜJ9P3xQèYTk ~C`I:}xĥ )D*HD78m MygWu9=t*Pxa1D\gH2+=;cK| ?x_(w y_dP+mCrUp>,[id@f^D K#Lnqk9a+Ӏ\_E}IP~u`ɯsZy_t1ʻiv~=ђOMӒf??k>`Mtjk"!03186YڂByܤK0\I O90W6\JŤʻL5aMI2K}N%<%Wȸ3B!l(~m;7>3ڍ9fcw&° cX)fi{7YpC-A`+5 {?nҴ_A3L)%vuAY@4=CݚR!0 E.m#ʥ TMB\GtiV*'|2QCb+!&wTQI#.^ʪ!g>oy"tLJ- 1ϡ3d)۪vgL,|iGR+sH㋎′'VKHtj΁Z(kUTL@92Ǘ璷1{@?8ph||o4G% %dyU~W4?3!d1]8 x|y)I'JՅpiP0Ki[ +RБ߽YX~IR+ /8Q2izm55n.CJ˺=Z,0%ӌSGKJ9 1~w:/\mL( Δل3iE]$P𫎟Z3{Y٬K]XeZ[mRkOW`qHF—$pV37!IVqC>-]QבY\F̀2뻔tUV_#UCE"TZjɭԏs׆zYh+ZI') ?J&[iHF27!29i*#GI/2'#K:?C4žPL7Y3ڰ8}j.XP|uV0w~M[{qYJ 5{UI]Lr`ˁ7RUQ˖ic*3ۢl<~`6)MZ&k4Aӷ-tJҵ=zO<{3L鱩khkX0DMC@Jط6<{ėsaS Lڶ6֥֭9(r-CM2!Gb/Wi6D' Z{%5o}-Ux 7u}uPF?1b \Აo5vuWX̹q<ةGTS^%E+{Ү^iE dpe' /Tmw)+4:t%C~G6jUvp:wժZH-S3]yŅ?IyDWf'⅞O aFgPtaQ,e HաStA ;|KvPc rdqJԏ]#Vv؋$Ɖrb[QI1t\|E@ Zv/Ϟ]Yq..kPMLnvH^_ ђ. ({kkD!L_Bz+FEp@lAf ӵ(*H xwDG3zi&&nۭ)L 01 Xl%d0=2^({ik0 RO$ 'cN_]|",'8ǞHIrsp ,Jo;3`%G;KRjmw~>K jգ92Yp,3k+ɥދ5ى ?"VwtP\qb&5J0Vg6\sGF(AkN==ߖWkLm1 >wfY$238&3,v)?|Gj)uj,ndP6^d^\ )R^>@5^xTw$Mz눤+Lњ@/^N||> oR6O=RB%a(R@QCAŊ(!zTX5 ]o:QaA&j ڠH#9wG012K DNzC>B)'kh:eDf|-:q<ٛ3 dԷ`.l puacVZ6TJd X#F a#mݸ>cX0M\\B:qJZVR9B-e?rcu&^g]q4,%(FVk.s,f[I/ 7W">/1SY"L^>^._l'LzI=vM^p ~]%v1n~5+_BԬ~p&#Wstp2L}(pْ U6*q>! t0ly۩WT2!(fw߁*`8gia 44Z%f2HYmcH K/!#^|A>HN 232ܑhEy(2/IlCc&yCTv3%I#1Ee7,1@ͺU]טB8g(KٚşzǴ*:naE@S]o XpB](^F) =hA{*%yv2.,|b?M͋BZ8cFumr)v213/dTk%^;t ,@<8ã$݋ EkfOk >q+5[zQ4*+ FҎkw_rRbf+)9}L[d蟄0] ȱ[ 90mXXk#nR閮c3[>_^iEh`8 R$IX>V'<) V\Ê  5ۓ(R%q4BMt瀻}b_NT #lVYJFq+QQTϟ!NI,}FA lW#CʞU-lH3*+$J=\}4O0W9JLG=wNYA$;jLĜuD{ ;GŴRHED,P:DuֆV,a]H 9,nI<7d!k*G^hCy(M;Zm7}HgXW8 ^ΣS2O?_SrA dYֹ3$gk81=LL< b"[7w3&iPvkX&xDqlt*X^uB'c#0 DZ iyQZ+keqH’Ie '€XO|>ahEd3ׄV.E s\յzAr$rXLz(*f շ=RK9:jv|0t8Kok=pM6GS;FS- eRs65FR;MYڊFyj/7 NmߊvEOȑB}pQB1LN|Ey1Gl"!X'S,ntgAbۉ1 3~A|Bȝg98hJrnh~A]P8SёV]JYuFkGM}u O$Aqp֫fgS[߇M 4|;$ɀTl&ߺ  ^ұׇI\>Waq'dHq޾w*9)#I[tj1d%+a> T/p]{AFx, 7kvҪ'sfjzPeuR9BG.Z|xdӀ Kɵ4ev*D_3\c* 8}T7-yg1nLcZΏju%C'-ap\41bNK xxqʂ^?hhŲKf mt'Z-b/U" 7?{똘X!5W/@wѭ4+7o>kM2ɔJU&3/b|D}~݋s4KėHU+bH粢.|vVZ)u9< :ʅ,1kH0NI37UM͐ǭ/UWYRCRT.7%uk#PњqIM m102?S7 BKm?d*i 9}1ZGm rP=Ʈmȑ3 HfÐ)faxbO%`/a}cz=/)~'YVAfvh+#eˏp#N=OҜ[bO i}Gq;ei 3 ˾݆n,D9t>RH܊vRe_֨ƽV7 -:fx0{\?ʎҚ*Xf\,/NPRA!*t%30aY-Z K tQ6XY#jQ& ;{P2G&X ed~O=1;BGǿ^N3Иլ'Tye/_ BȰ]Ʈo$_4fæ& ][sZktGx]C_lKPix 2'w@[S' G,[k|p7o;&V:9XN&?Dsy<B*Q 6|ÿP(.jM|&Hgf)}ìP+I*NpLLvsݤǤPCNУ/`0#Z~fL̟#q wV=2j|<}K" %qOG/(#~^G^9ݏaq"A)fb9qf& Ԗ_/܊JCj6i=wEYU4:BH_R`D:܎T E?"I} dQV9#-2[ES]roe}\JU| 8&I_y\}n>_ qK58M{XAЉZ0uA]rL22m 6HzFi(g.vQvI!cYü4Lryw"SۋG&Ǐn>N}(u(Wڿ BQs" ̹]+eਃ6 I9 z|~̻w:oZ%ChF5t ި5݃rdߍ|3/^eۀ!Dޮ5BkMCnP5w[6i\YMEIEtlr4rހq5LJ檬}|󋎭vS.c06kk 3o轑K|SjssLDBu"o֎̎w^Z>$#5 l{. Qr})I~uc"%mP#}rd}+c4!:g' zmg6oЗT™_>N!SE# e"AC*ŋN{3ӊoEJ(.WZj~,ag5l *QS<ӗN!)b(l.{Rf]vLMGꏷեoP+ХQ/{mB)jP b4NuDU&!pz`]T|ʩbڄfXٱ㷝eɯy:c1+ #XW=Ԙ=gyvb;Wn-"Lx v)Jd& , )f~u dGmtJAJ?ȉ|+ͰEi[$̢z(B|A͏w;aXΏwel?ΐ kUY_dW!qu5-Bf]+鼫97{].H|izh~gK?Yzmi/uHE<?G*!(BhM;/!RxRp~ $msXס`D&)G9`N)zݹsGz6S yRěoGbU,h7146dK9hSI#}(v+@;U+I;[KZI||=+a6 f'aEvQ.FS E- (lRj1 [KSW6.p|9gvWoyZ ,Wg6{̹{xWv{W8~~{m0ӊr̉nt) ݛza;N%;譑XT^5^']Ϭ!%iLJV`"smh ӑ87b"ˡ,:6!{wb8u2Bqu=>oP1H ,UcP ؙ_Tʚ^$PgαT<m bqŝwE@.G7T#D9ISl,!B6'h`a.1PY@R窱!z[3} F! YpwA]&Z/M[&ޔ3x|l,N&7"'/V%,ѻd`l&[H_"yiS9t!>Kq̶ڔVC 8W+^"~V́h7m!͊Ϸdp9F;yR }7Zơض0{eS,6: jߏBԫĒ^-+AZk–ϽUI  |Tx8>PCA2BB1舣tB_z1SOD`h45Ŭ34$@_}7(`MkC3o&#XƢ`Y!(}ˊU6L',Bj1iZ,(Z8ʰl-p5so4+͚',cm8 sȷԹQiH7 ZDQ$g"I *~7P=H^A{x#*ԕ0]}GZC|!S3wmOQ%˚uw<(|(_ UYq`"hͥ3%_ kppELH،c!=Jǚvc;QI*N!2_!N冥6ҨRͳQcܣ2)ԎS _3Ϥ0^+PM̶mRrɾ0,0{xecֹA>*nn(#h-؎S)io|`1@! r5%B&r:Aoi.cxu)jGJWqS8͜ػKK)G26Ȳ>_z![50K [bom6x^GWwY]Li켌kFI+@m`R*m8LDYr a ˋ2,+t?ȯ\*TLؓ^GuH PĔ_~p 1v Vb}BFiDE~ +^MuyfVزrnzCT%G1[b߻=q2ѐ:Qu.g0L?؟lm P%em-Vс+Zhq T$5&Έt 53-I.HL 3W%m-zr<ONx8Y/=I?x )*9bu ܄Ŕ.znjNmO5۸/i`l)QhT Mܭ |QK +x,!% ypM/%$T&l?DJie  5>vaX4$c[[y5#̸E-JہH7eҘMsf7O *]NbLtu\ZZ֐++|`l4&mh 4ZQÉ_|HSH<_ed@#M:Y6tmQK(u !(Z=y=0^]akȝ^OH}҈h.ۍ+[dפ/xݜf4$+\WV],T^ &LvQ2 #Bp/S6sX=w7`+HRÙh4c3xVT zIaiv7ڡJ:ԲQ_,O:BPrƄQ %!) ZWS E -'u(G vAs56?49Z+K_ -xU k_q1bX+5"6(Xpw[hKrf:oѩm?엋o.j#IzjsnM9'+R#ob[X1_T;$'KQ aڢvpւL GCG_0fq VƂL7rdU}T" )a,֤8Z@pW3HFυ)T!fOov,Y)S\ w!DsiuR-:Y,@ Z#Pkbi(dE Z'`2Lb3C8N:N۩8 OM?m_:LzN2&;wWP{ŗS&,d\+IXBsJI[&xxWdN>Um~fEEF_c7Z㰞h}nEebbUAc }3V *QZ@"=Z*6H{ˈ&^8)WL2&(RV.sɂ<@unW(oz&8zjG49#n-sۆ:= 'C~2$\Mgq#Nf.)=-sг8?Ŀpo lxPLCfzij,GUs'2[%J(QiXt6f~o~[)4h/n[-ol 4?m#pRSq`(ջ"B51R1(gnsMW\f` <>m"F0}.aluUx(}_YςnbsQ~?hSARlT*X.SzB =ś]q 2 "E`20irv,@/#"Þ\+6Ok$VAgI(F}A+82dKqF VJ{wR^ fe yܽ@FZd: ɗIB҉|m:G5ih!iK#ͺY]9`&O~@;Fm1~n!0E8w.!\0c7ΚĪ2G%u%]>?B (WY|yCתʩ'ꮾD!Z p5(f(@p9c<Xw-w]OE!S;1sctd7*T7V#-Sj󸵤e!Q^p1#fCC1*C 恀֚y[=kM|T!UI /d5D ˃C'eQ7}`١C]x6q6cFf)mM=~`;rm?PPQ||`X{=%-QI(t#t95nTIJE}=훲X`ҌVaPM>2@1wP)q rycYrT䯔Mszo.jWbǁǰ:GGFwWQgY/.`Zή+#E !'>rx,djMz/u @Ӭvmϛ"ψaRa\0>.zs14}(>4ˇ)#Ʀ"4'Gw)lK#R0!?O*Ecmj=DwL>Dtɒ'NdoL2*C&L+;b8O܃fhK%|1 D@F6{ U42% t"QL$8g}߁'54o UK0k4 wD=_x'lPk3w:dK֕#ͱHx@(tbp7M210kJlRY .3_JwU L(8ԯ/v,;U4v w W< =)0ytA-:5^D›m/-TR444+|-ƙ I/}D%دNPoxO|w& i}Y/ f2QM'|m)t5M9lK$ese:5Of8J)9 ^ 6w'#ˉ j'W_[QۯjOEnN܆t, ,VIL'WWvV)8ՏpMRkMU?!r`w8l_vô+I}tq&-/3V]'nPyօ~6p~,!~K&ëPhXEˣn7XoFwT =wix%D$[b4kìsi9'cdmC~SR?Ms yb}OCPLDiyWc1o%:9]̗ I'Ob׵{*N$A1'{)I $ BԖ7ot%7-Е7"`LuM!Qn {)KV+&yYl{^)+)y{&2&]0#z,! Y9bWM혅UNN0Nsݒ;E52 9j X%,ʓ -狑 ~4ֳB<>wsL%əIR脿rؑ/uщM:8q >BEVdI$#ޜ .)V,՟9sP0ȖZRUAII \{ai ί C!Km_ߔ,]+޷9ImEQ,d83 b^ރPoK2~ N#[ݾM0W>|3&<8 '\} 3EhC*t3ց۞w xwc2$_4 I3)1dZʣz7;(7 l2E)AEfIà ߫kwxM ~⦃d +s1U. VU< }7`Sx}f>!i}ݰ}t{#U7xh _dWNCwbڣ6aijZ/OJ=u,0k!>s#O,N#ju]rWRl[*kK`ظi~";~16E ҵZ H8@-[#.ݒN8 ~ Ԕ|a۰fkrї(IjE",H(zž~"\h9#Dfk_?a4I#bzěgOr$COh%H~@[u}HGx ;w? x $ ͍Qf2NGupz:xU& 'r*SŪ6~sS3̀7!Sf/mb= ]o#ZbX6Q;4W oOzZh˪cc ϢFK5ەӰ`CCeKI}BӁw!yUХH,l3kH GtPZOg0);LcnM0_,^GXSH`)qlH+82sRAfA]W=CkIUS A}:%#=xZA ӕaL&3(y> RMrO2s]QDάիsgbb՛pI0V> 1"n@CX G&H%3sF _d]ncdnz!J r8ůzZK37]|?fuږ|[e!G~C _*' w3ыӱ8;'bS}A}jhE㕪b DF0"?M/SLue Ľsg;U4{3%\b^%˱iFCiݮ$NXA_Gâz"@|!d\6=6ܯG1 hh`g"}_B,ƆU pOSӮلeK)aZQ]nFz>{q1dHC|œnf/zfFm isRD%Ћp<(?ͬ{__3mտ7ʆl>6n7>8ܔBx Q6aaN7 Q 5ƵUQ;dK8B&d7(b jkA._UL= ٞ 7S(#| v:\Il=qRH=w`LrǷ2n=CK&Ud.SclĶdRƺiRN:;AC˙:-MIdW(=[ QQ7wqnXD^l j9oDA5!U4Ӝ3噉w8MUr:3߿TK6;؃> fG%'8of*6YHOb7 ݝԫt-el# nsMݾ䥌X0˶ʊw_^k)o\o~m赯>Y^7?)-XgjD&67_]"'VeP*nڙG+]ȋt8YN:awa2 Հl!ՈC.w=EvVA_B̾:iŮӆvz]m19~>ITǔ "U[ wǸ&{OZک~CY5d[8Y1rQA>2]Z dyðJ൯bFwWM'"kc0ws'ԙ_ʡpL5`8arU^јƑ:dL<*>%'?Cy4¹,<]G)8FȒxy1 8*paŐ_1u 2:c> Le_;T9dv?PqA8"X(74RBuL߹H`|f w>MEʖw?&hVHlL=`]-*S*e[)CBjPEj!džx64;"3bSHw9Ѯi8% 0ج<3>?] gDO+ ַI~6 y 9"KJErKW ͝[K˕aӀ.L%-`0KZ_Lb[6sp+ګ.9w&==Y5~ۋ]vȒGlU1kѰA/PC"*Xo!h#tp& {"kKPzugʔӱK!wC}SӊHB3QEkPj[惁$X3\0VY5^ E0k`Sǥ3EBc0Z5} tƿD#Gq-9T(o}lЉB'{UkTwE+Le[f|_DZazSWD%-T$=݆T^Y+ [o:x𻤴f 7DZ{'UWq(g)1B/-]dŇ|[BǨq(3B36+-wsF޻yТp"V`'uW7 5=Pbkq.E=\zku֛U ZgPu?۱"ܛ/ָsK>WRB+dT9uFR& p ך?z]'` F٩U"4A9EvA"PT&<~$H!3Ghy;6>gE̡0﯁ w#_4Z2;>tW]ͱ5'" /Eā4qlAxj 3Yh!gY#SOZPQ,IyA\d6LƂo1MwᴳiC[JF$eE-H1ĂYDR23(NJȳpsKpEkq~~v 5utB2 S`_Uo=wR q[z.[6$m´B{m}0N STOK`]y,سUB:*qj@+BgbÍjwm7o|Q_:sLȓ6(9▞3.5HFI ޯ_sg4,%Cx74Wi'zI1?$@=bx̅mj)OZx wJpVͅ1>@s+! »Es]tŗ{ᧄ3t4jP4LFhz~H ͒]T2gBAcnz3M1yV-eB!ox;:I-p*~dҕ>ru Tc f!%S$ t!5iPhcj@+g;5$/9e(& 9t|SZL#`fd:7(ݦ<8D + m悔[=u)M^r#$\ΐ o1hk/GJCL(^kD} KK|\DnJm42IףoO LflaWRgWYn؉b;9V3*C/G^y1d@r18BԛACBlJ"p_LS:L"sw}OIثW޸k< FsV:6 Jd#kwnstC*"&!ԵjKaGY̆h3A79Ej o&mMٖVu8%Շu8; K%D4? 7Ge-ۗ DױY,႖CwY2RE`=esW7AH2c-s(:lY۝PDIUE7hs=z 24c-ybm6:ɛT­۪(B+[$I:s@j8Y U8V QNre?) [Ee{x13L`UM%.|߱Nb Ho_ T,h y$!,(]ӫn+xGbɳ=,0~FA$, HŤP5FSb,8{h@ms݉薻\*w8r<6;u 诲[)!%[fϓ:#Nç!])}Ų}17u4k/Kg"${.ø0s1FLño\m^0hQz0Gp)palЌV/A5q~ʢLSrOwM!JdOl\jT³>)b2.-uإZ?XW<8*8J \z R8(VZv(D e_]if~ݓj\@`|4! ysh4D^6[B0:b-hDϻ,7#ɘhk؇|3D)GNI. 8?[Z)4dlh޽ޕ2#{}l"HiwoW"Œ$iW}WץOv#{FST\Sy߱tR㍍~*9I4ɫ|a?[,L{bڣ/\J7G< kBnbUkfA̭~u%UG']5֛]Smc-7=oVV-#xGIt*8ڰv wX)g+FfK ,RnpXl L/E2{wmcjOz(;³8<^.S -٫~}7#Lq-H -91jԭobM +(xDQHJgMS=UkF$fQqPf$.!"`3uNhNbDwCEJW YEu@Nb0Jz ']7)mQ<"*g į1[o6brR,z)ٛan5𳋛y9c60B g[ mIu_O2.Rx}HwW=ӂtNibʫrz}Df(EP-=aZVU ڝ[KIg8,-=3OmTS*H o͈^Zac3nk ­heXP(9oBZ$ݯySti5%w}Z[Q߽WWk] z~U1Gn^]ȓh3 M&3/x7~m7\7U&5V2=#ƁK+*Ck[ Be|CTJhuɺB7UW 3v5涜cӠD OLKpl3uFX{rSlb+{ W p{l{ uQiQӣ>$7SH6:|bg+ëH 0ʩ1ӈI=:ɷ%]DqV(јw(ӯzvU@t0k4uϻ3o>UϸD09MG͵}nL$jc//qXWz% ɀnEʨՐkI35:7}zZ >NhEqj$/5K?1ʹ~b{T%7ጫ`k,n\HaC)"zs,_WҋG)ɳ{R{& HC/s/;Y3PO0T#E8 Xoߋ@^ZBZbn+AO$ŵ r|RwU6Վ ,ŢO|>瘙2Ikw_=Fі+'T7b0OH\^Iުe %o_hb{.CZsjwq?#+'Yl ;Y-F]J;lM9,YhOYᩉ?rsouN+P6 If%JIW Xy j0${d +sÃJE0 `ރ'/hqE>!1>l_ /3o6u[Ŧ*&$r>ҒJɶc&r vxD ԟ;IRaVn^@"TF3Wx},KrZU迢ԣehQRc> Hu,g[j_V3cʈVj֪ ~gT_(y.|1@ѽiܹv  Pݟ!Ҳ}@Z$^*J.;}gsDu_ɳtWb-#ǎz)R|gRa8k h8."jy 5wmj߽$zUk3N$WcI_w:]`up@q3qdݯاwJ{`[:s7L >0x6 "~w'lӂGO;ج;t G[bŘ6%!tȡQPɈVZz9sQ49L)`R̨)@V\D|qGCqm\>ZV~/I=g!={1dgE22>6p Kk@sG)1hޑtӺf2"K r`z'U1ʏXa*7>=y0ZXAйuB*#MY% Si)RKz{)c&_^мN43vyS^,t|OO)u:t9 ؇_/WT;(y/pi`J}3g:#%^Q#)V; Dއ0hQ B/(),$ݘ k>>U*"K067sF惶(V y  ;ɳW7xrw;3;wx>1kHι]{'e<ӈkAwz_/{q,^p0 d(8w,U,CvP ג%+qc/v,Y^ s@BݣSw=i_k'Qt#eSj5hѭ|TBCp Nmt|˴]`vحC~}Crn-[}S^5cBUNo{Ȱb ˬk7hkRvQ=~ } E% ƔvIo r3 JȤÿQ٧ ś6Toj-WY./` RxᝆN-w"9:*4eVVw&0 #S_Wѭ)QRe!_Ew"r!`n:t淭Ϥ$H2%Hs|VB@DCky3pRУ!| aIkOwBMT3 2{W<r*PbPS>4'oSAbSsaM2ͻGILr u , u-N0^ąZ> B[]KcٚAIV0[ۭ2| ĩ+l5>o-h@BDeA8o8 .] ή_R (~v=ScPO8&dX9Ռ`6Z)߽CrG=!N+s>zZ#`gcHޤ} iyb'r^?ȜTc{'`,~~Tx^ҫ6pҚ7S 2*YZ7wK~!~ rx( ѷh%/0SFxuj6ꕈ`B!mfoZ|cR0v ޏ^}<+AQe<&I;@ Ҋ0hA伄z#gi]\b޵h- EU?3$_yL7[ƽͽ\ >S%>Q(lg' 747na#NBL7MbҐ[U,! 5ܚ.kPwb*2-xXO49'䈀-(֚L#+ʛ2Oe* yd .o㸇0lk/GK)tO}Q?EU$/bei^᥄iJvAl\zbac{rGt/f싎~[iN۰  kO;SvHl}!ϥmK`7;-1FJ'+=iB /CeX,~_;s51瀿5WA@fb%I2ڝu%Hb>N~@ۻ:AZmT)G8U5-,uvRV[$#fG(.:/2@yt=`aYJ? Ԃ9U$L>wbX_C) OmCH&h/>fs%{ElwRUHP~:gAqUpqz",Kż0> z;-w'>{`7wBuplT l\aZIoq~z-,ӊALAa{"loK甕DqfBÍ]>8ٽHH#@[|^}ZuOw NPݰ8Tn8 _nycϽ[=>ߦŲ!d`837 ضU7ߤwOZ}iO[0׬"%# ?>S:0wXj]vD9ƕ- 3,v}:fg{9&p 6O=N"vAUAgC-m)^z-4{զK ϙZ{7u@v??b[*vfN nM{@x(u x^ˆ"|c6kERP{g^ 3$3u0QFID-{:VaBށ=}mXo;`5|f?}UBeR'$:۵OX( 8N|A> yy,̢:U:@: ^%9XV0$y'ȫػ "tl54[%C7n܌sHr<t p)l eaUF $]hb0m4Cb6䖗a;:'rMQӞp=y%2VN/T^M3XV'W +|e @D kV7"Dj܊& `IIs!ฦt6FHG+DEr fȨ-7 ͛)Ns$H< k)*zg|zK m`udn}D)]b Aiq ;mt\ԞG&-j 3L:tX).~s_l_UwU7+^2.Nj7É;+%9t"];*ķq7w=e15VDI^YYIBko<2`=vf'fy&W<ϕ)1Il*$I*WSbN5|ڼG;l8E=q^6Bk H<xN< ŗ ܱ8EB ȨY߂Dx*f2zxЭm۾V&aErȗ`uzR@ D'@q#9}e뭠8gzUO˦INv~WDex5/ȩ%QĩoPYSSG<jj1,~'Ser˘I9_,[cFY fUי'CIjv "2:.@"DYwv.3  ߣ\hfmVF_yÓE}(ί-j8ݸ^Vp)&;qgq-U:M],:Bc Nvu8L~>*bIPmp rԓ4&9ஒ$D#"6I d@Y#+ތ2zERd9ia,C3ܠLǽwLPJwV q?+h/r>F%ofPXb"Q@dNiY9'?%0vBi7.amGwMYWjD ȥcQZtAQ埚Qx LvjMw@?_';wj)az:BtQ)y\x#/eM;P*ijJۂZ~[Ǹ78RnHj DpBe?OUq9zNa>Q)U݁**g /?aP|gO 8%'F3ʷXrSD+|S,asfh \b>y}ֻ2C3n {Gp 6NP 46%%l.껕YAGguSQ]JzN8dnmIn.2m@`M6)%r$t$ΗY-(4tPyXR>P=W:]_6d,kM[s̝a>&MG&B`bf{=sR龜)5?+q}1J">sF`vMr6 !ԥT{5i6`><>kt~Խcٲϗ괾x +F,<.} P8nY{ʐk Q~Rq`k  124$N~i#++o_L<9g;9 Eč , +-P'tcTpZ1-DEdrU"?hbQNO|_tD_3nJa14ax:|vKaiu>pPඉ.j1a3 48[~"5svp#*:٥9N1c719!6FYc@&}D%ʑ1>tw8@DV ,9lLW@~jXbJ ) Z엦߶W‘Fq[rz)~v&3㍷$7AHA_9rcV6]w&uZ0o*Wdp*`IC U*2tɼàԠ{}q\QHvƂc1_irEK FhCPTO2曶X^2gps '@3Pq}cQLC+쩦sޕDs>5qgѤ( rYH"NO] iS>#kw=4Dv_٦K's,f&ϻ[3z[Kx3BlJKOK J9l"9EQh%x;ġuYy&&j3x% HJayڳ~;lC1F>uO lm%/yT f)}ؽ8PhݽP QfGUث 7e{!,e=ܰb/K ks%OqWVj[~ 2Le|J# %:{F­طtݽѬm61 57VrM|C47s>LX#kZ lهMFt (O2?Ka6W^WKrZw+}ԙ@XN˽/DkM|"+` 9q|P)B|PA!\X9|gmBcoD{t1:%(+MYNi8\٫z~ TZkYY{v7qWЗrDEոG*Mq7ķ#zt*(fJpޤXsa EGf]@I#LÁ>vBj}߼R@W EevT0(5-- aB)YC$i%4ds:{@]ocNe@%K5"E_[7 t\DB5>27Bʒ7OaX҉G]>|EE}?1 p`a䧷^79k.7/W& کZr˶TQ`ёr|][bۣFsͫ{t+g?9O;%q@|0otbu@1z͹mq-?)- y,lu_rQa O墨b iG:0sٞ!#G䅜+qsՈys$"CA6%xdAP}Z[h}&zr}@#_a]hUo;BO % 9I%SlQ5䰴r1)y#썅T6b":1ѿF ձH;tXȍ9iPE&~=f˒t1 F>e)[j|i "+L"` |̞ǹC\;'V GߗmG. Pb/gK C\`B#+ V`ZqiY(KS  غ]sh ڱՉG}VatWE8l@Ӹ`'ArVj30ɉ;5Z;^NxR{PY!G8,jIG9:UOMhM&2"?ZIԯM( -4Ye:SX48ZL eBCa 'Z@'ɎQ9_{CGۚ'sfF!HDpF xbG\vT:I52ML'&_1Qa?zAX{sRVsb~낲@!3H=:!cĭO#LAua6kĖqy`xw|r1^h%aB}<[6 2COЛ"'oqCa <\bNc-> Žᶲ)ODh5>XSWMD---_$UGtZA;eaWU>Cwè<8ߚd*/ey{▗)kx-4!Yٶbl,,k|"/Loу? Ll(b (fDlgB #O<ۧ@x&Xqv!\Qk!Y֧祻=Sc1`o ];QM|;z; %Jx5vDzq"d9Ԫ "tvfB@l_>^~3ҥ +DM%`A ș` W\ݯ:BvԮ =(Ba%0wT?Ǜʕw{^Ay8Ex&8dTތaVS7a5``4t ~MsxIix5V=AIS?Ҿ xP"8hV?LZs}[5iRj.BIe4s'7-'c6S m2xR2a62^7_BgdS9֛ElRav׶\g Ybp"iHs2hS U2ҖC6MqW7'!..#LJMlj2Đ g^r3 W,flyK*OzߝR~Zl7mAcE>Gszŏ"a'kd+@~r<:V2L)>D&'m ܜm,6V/.M+? aB@b;[ !??P>FU&>ઔ[8 a<&M؞y,| CYDa_YɄSS/BSэc6PR>$cN-@wG Xob%@\zZ5W <I ^'sAw#1ԀBiҮkZ h!|gY6Q)$.ipO֯krVG;ZD!Aw nf1nd #2۳1s *x@cWL)Ro>V0R㔌 !Xm^I(fE,!e~[N[jYuV5~Q؟J^Rc|H tvȶ ťwC13y2yD 9v+WdP6<.1^ګ򟩈y7H8Osp6ZjM•`!i1 BsA\e$s'"FIA! x:\9RC#Y7J,*^N0M„D Ix3gl`f~(+DveCĻ!DX;`9*73`@QT$jEftyt&8GfÓ$7U(; r}ʛH=~UcV-5%~C}˓#¬m Gzbjcc'_P{//}Dԙ`1y27olG'COݴk뵢*j\kU]Q=tԣ ؘl8JrWK a |` J6}X\?Aˑlc9ALb W1}4=KJ,ط6.IcCf(L2BZJq:>ԅ7Q sġR +lJEW߿_77.lefIlzj) *בOյ3C_CL3/ndY₸ TIVDX0}G'D}ʞDժ52g0Q. 0lW6 }0.}"!~6l9-PlR<8F' L#ht$|9n8u%όl/b(ܿ-ԧE"Y>GYvؒBR3/>q霈D\ k _4% ĞݚM%t M0a=K]T3M^ gya亢()AD 07O&:hgjf_`/g76.ȥ=yreQjpH(Oۘ\!_':nL"&L)Xt/xE}?Q7ݲ:Eh$T_9IJUN,tV)C~ԇׁ};bg2@ZST,{t wEƭ]$@I1dex݄4r1Ae{fb>j05MAhd^حi[:&I!h=’KǷ+R.Lje-!#IOaA_܏A`G'j0!qCn@pR 5kXe?'s#&"o臏0".?I~дBl!FZKt uKM"c]#A.s4c6qPOf Xƕ_f:̈́ElM$Of}SkM_Ap&dCON_n#apFh :bs?.&wed \ͤR[\i` ן2 C-HpOM!7lDt3 q2o:' #8:9{~(l3OgޭHG4Gc.a(ǐ)Z]BNrmԪ7=rCE$?<^Wrw&Ia&$\f5S XHbgsfTeٺl3y], 9F8'䷐`+zkgLEPauab)o6}JBvX؏q$m xedƨtH׈&Xܓ^  7!u[czf{$̡"k!|b ,7|`ș#8'3Kt-*֦s-+!\X<@vPqvκҢz ԜTmf Xa dk|19H.No+l,y/KŐ%K 7\l=] KklPx%\9=֚\PbǪVQe1A.fJjq?I90=34_7w. K_EzVr_+.yVxS-kd|P՜t~ 0of͖G>~mzn`oI+Zm'&"kl<' Fؘ9 ]㒮=}&іZܶĘPEYi|i :vCGg~=_J&ZmsR@Ub z =`d@1)w/RCz0 9|ܑUсGf}| eV՞#~̏R H8rѹJ 7%.VnC#5 vX,ޙ]N6e9L# 5k. GxzrޣZ & Lա2%ΆbZɠ$jf `@[M?vQO Cd8IGoo+I\SȗxU.ic2XGFy?÷3f07{\@ (aa'HȮ@XwJfgpkq+0 V4y)lIa !ձ\fLdlqmPC dgy>N~s2CK_\ C َϟ&t̀`0+{*Z- V!pkT ,lpnrR;OƮ4KOgBO67- [R_&p &+ ^ @p_@'![MomEa ~ 14uCD`- 5q`0~]r|y^MfMS Š>ɿgÍ2u%K &eĿSfgtdQc7LN.tJ̥p/VJ]N'O Jn@֍ӊ ܦ;E u~y70Um d 7W'sw=X{zҌLщP5|=5~ ҁX[ e w"A Ü"r^2|1J29, `dj,hxZh{JSxHi1mƅ}ɕIvI8:/}I{XO訔z\$Frss9yl1>?a4 і@$H y ]'^LC"8%SGL KP0@lXۑȓnB_% glrX,Gޖ1uWSsޣJsYŷ 0<+EۊhڠgCcz7jyMgX{Xe5 L:W,ӈ|Lo1hUbT!%p{N|#5g+py9rZRkN@E0YU`HC6[! ųQcg/gB0 ^o^ p# *sv69<7mӨ~N))Ϻ9 ^\Ui%p6@iE0nU)0:M$Eo&SȑbS.tΗ҆( /{HGi&t!;|%x?ۜ9$x!ch igO U7c.a$]ѽ-Lp!|Hgxk"ǮU‰LϠ병ɱ1cs9ބKk]@5o2A03[0"Bd&8w,Q ~Čg,x\8b2\x`)@VMH᫽g7,Shr7. B>^(KXVvAaxW 3C<+6d!XE U24t[(J0_KOžC'wv?.#G7 ԬelqH8x'6p[Ȅ k'W̌ Xxel) N&fS`7f u WiDz"~@NR0KB5C|Ϗ \U]&җ"҇wX'8'S ᕕ} u.$62s8Ӥ7O!O"'Nbb0m`&LuG۴Eʁ>܈E%!/Sumo<xXݟC gc O9 *:X(PlG= f8_ s%:W@ѴhuXbN<"Kl^ӍQC:(:Bn]fNPu>ڵYWl&V\=eU{|x0<כlD٪dbDgXDܓk~q6Lqvη6LQNT4SW=ƶ)dLH w{q.t_7~9 1L?$z|&P^('gcb.?K@Y$`.ՁK0Rfˏ[n Llptk|nĦ2"9`U\/Uwu UbIzqQxE%sҵqQb( r)pͣiٵRY9D%A)GWnFBi\Cw xlĦtz*&`NwQ6aK$-IbcpeL5A>d҄OǷ8«%qCvf0$$HR/HIU'?>?%ĪH3G$̛Tz⋥>Ϙ/]͓V2f buui % dh6?K״hN(! ›{ mЀ)~x '[&)%޽owL[K*ю.bYΓ QS-БH>"59 ٜ:IC2Pt|Y_>Ez ǯG~ϽIO>qRNpr>eY8iQF+kc ^UxRXFd+NҮ|*p "]p1q wGA)A>ܼp D_l[8tFTƼ*ul@{+וE+k@.e2E-;BqщvrL^/e"ȹq`ٖj-AWOMOnwZL~$b50Lc⤘]UJi0Nt_]504ĴN:A"2D<=@+raIFRcA;盶ooJh?ȎS, s# D> _STxNE%k,!|zP܅:`k>X6Pƥ4E`3 Hp.l 4XpT7a#<|*5 FPU57ݤܕ2jÏpW< t5>]:}#x 3"DNW4^ޮ$vω?M{/ӄ+wӒ+&O9SCN/Cސ/jM, kM=Zai! M8$2FXMjUjj?n" ';c6B:vk3s#;iV1rVZ0sq+b}kSV1 k ]}cظi5^ Ht P0P#7 f=Bi,@{ys%H(Yfۭk;{I;fBp@ݗ7T}ylkHgC\}h%rgL륍B V|W7vW)[ٷ0anf[!|Ʊ Xhyy8P=ìjXܢww/hhə8RAMWxŠU[Y5Lۆ$;* 76"{216 ߻jųnP- $Ͷ߃QIs!];*TrfТٴ ׅҬ2;N! #t&f/ gYO&ɦCef[1{X|Vp  - Y*3h [H &'#VT`E3G0gFxBRZ0+?:H`ñ l]v _'_|\_-#x$%TGeoVà,O0oDkyl/~L0_JԈI_mޓ)*? G*5/Ye[/Kr-܎0yǯG]/ irLp%;&}MjW ˵QP>P۷OFmdX`  ?ZQaZ|/sQ`g '0_+p1.uS.8v9  n;O[мamRehSƁ[ {Feo`ES(9?Z>&?㡫OnȠJio*}r$*9Zjgi94IU:tʸh5T"H;ΥlB~?!8ܕbMEDC 9e<wg'_L <+A]+*vg!~sތ29A$Eu_675Qv)_Ҥ^C H]y3d0<[l)H*:/ntr񘒋nΰU_4< -5Tbؕ7z#,8QxnYwm7E7oX>Ob)mAB7 a[j^¨:Z,i_wsSF!k*a_"%S! Ks23 Ix/$gD.XW syk)@/~{Z}㭶i 7tW?F1EuP$ #>|27 aK+}e rE0C cVexjlX,՜!Detfҁ0@t VI  NŇˑp> UӜ^p0y="7>ԲhP,49q,4#k5% ~' N㋮x Y0Z֔?¦VCFB=_s,yȡ1u%:.hYXUWM"YLM(OGn4 tS |&0{z$%Ɵ1BU&la=W&uD@uP@x[zeACM@:v%sxi8H7c.B/{%-ˌ$ klMlIJ=Zw(0:'ڝ?^`2he@SvI7KbQyݥx;3G9Ioa(Գm[긡N*,K.;KxK:k@NC״@Q{<A-nbRz:X_9eqU)4䤀OW/C3 (LIH%F e:UzN QMF ̩禣mu_JXrK UڬCOWg?&:&Kי|Ih|pu 72k`Mϓce腰{AFFM!y[yEM|J]MT1S>+=sOKywak? SZF h|,~dʝ㛰Xݵ{҈ɂ޿i#4"#etz"Y_2C-W>Q 6k.Pb.GN[#G6[ֽ)~Re\hXˑ_^cּnG5S hNglI_DSg&U r;:r %vN&9"S;yT#}>`}íZvbS6|u'-0-3 4^(튺-Qbuw?$z_7 6ɐ0lq QPھOҺ:_]_|~pL Qմq0Ce" 6CNqhVǸ )FH@HU:DISgs6;4ǡx;Pq)[|Xo==Ln5gO%ُj=$(,Z.X >"^Oa Cn h_nz`N=H+hj 3`44 tThkS? ʷ!mIz_7IMGJ;:|c%<[LhOcpkf;E oU t2G㎯1C_0FPuYq$&EI◜.I 0ݮm'I}ժM]gX\(\@J{Ee$" ǃ]r(ӣ~]I` >/82k_ukE3TG4E{}1#}&E?SҌR4ҧ|H9o7B,`Tⰵ cY= c 42Ǯe'XNE,!ܺîD׏[yTr8@P/F4sc)SPő;[5[ܾvKW`KwI7gB t:M?+o覞s^΂b.\0%ɄMi8WOyoa}t _x)) 90k 3rngBY#@{̈́zW~+bpQvQ(acT[d;ƻ4 95j$C-3W]}m2X5}lSi9bְy]!ΝHd 3‚8*r,6u?AҞ|=b8vOG'z'2y6MYNc!#@*p6{-U騹E!-E{bcG -ux)jPHg::8b4 gkA mN%X>iVI У>d7׭Z[rXɝ!joP3Yn*T'gb2VcLɐ9@LAA2斴L7{ŴJuh^5KW3X[B@h\UN$v)BЈn ,Gc ѤDn5LާY]4$N׊Xq⎉Jѻh5(0*,RNN\pK7 %Q2}*۾^t&&(2k׈y_C&#jd:͔BEY3Ng":SHTdXб frJˡOB{}Sypy-۠s*0H(ZDrU< osk m Nא]Q**r!A)mYO@gt0c xpՃ9oVhHZƅ.p᪰o2DLVS voFy9(PDxKDa(/Y-:]UsR|leО0fБX}4/tQ|{ȬJ'_zm=貘V}ڇlӞ~YGyq-/--R_+,7o!Jh>r$x AsH7 m:VP6{UHO*AtFuts:\4]Qi pÂt2`wM+%TrR%%#|lzšaPI1zs|Tئ|:%9eRcQ+)KVFKf{/)0q+dmfe:G)`΁Ӓ]5&=́u 1᠒Zzzj6谌&(c! a'4]niSmgMbO:܊1$댕U!aDje[)3||DͬUgDk^:Iexe?? i[A%$R_?R/#tčP rGAX5",fg?*j2`EHb(j 2=7ZHq~3\!٬4# ͸>s`vMfPObMQ8<2%=B%ƊfXLos'!G?#5^}SIEYrS>뮏3e üݻ|Ad!TM襋\-?sp9ҷuS0NdhpOd ;1|sfsL9n;N #r^ DIٵTg7$8E'`XL@ bUzaq-#~%(/$jl|,f@{N+KAtj '6ej%ӡCmԂZ_Hp]&kF5_QCӷVJBYo">ó\%5QRA{ʏAmNٯ@RK 1ooi[g\~E{ɘ{+cJmx9/al?MB$?AΈ"t!#qKo[+7(=A8;4 [-E8cv6١ ¬ Ctzz,8'uo1'I(2ƌ4v Δ;T>A/fѶb: B*qC0"t'əwI(JNv=g{y5UN{z1 (aٰ䖾JMLktAw߀x&d'tgJ3sS GrVCEPAK:Īz@Ch"ѡMӅ_D:n5Dbl.G)G&Rۿ{oPH8Fxw׃ v!`xclF )$[(-R ܤIo c 3䯻>d'~ZX-v 0jx;Wf'<҃oˆCP @plpihd-E?Z;l#EU٦, )3wjTvl9LR@g*D̓(B;@ GTG5h7}_m rc/KÍ˰qZ ,)bVDظ8}1VJO2WMԜi[hEpߨiLeMG>{WL~73R6W3*Y:Zťc6UwCAfWtm堜 pWR]PM;cps,%Ċ6&5e#7p&^ˇ@E!jY&#hcx6X*!oi̤ϝ 'PD 2$iE7L*^@fVQcAW(f ŋrʊx>Iò?zا0'!c|y3z=U#+@[>%汻ZMgw\wq&Wa*2%NEZGf4r6Cx쐐=$A02_;:/8aOd;ƳR̦xrw /^*9G77mnvJ u{NkVeu࿋V[_"_fP0(P.9yn ^׉Cv}!rj|HhV cCw;@"@Hrl2T9On$ˀ$ײ8nbYd|]8'gD؂Kftd[ppZW<}wM?)DFy\d#rX>oUoluRy2{Wl#bgc}9D$ҴB0]6?r*c*D8TKwɡoD5_5ԱXd&ຄE-U ֈعeX2 9p{3XnMm~tIO9K&|7ߡӦ N8 |n*/|P :lA_vhk݃ `FWW'|ab1ٞ§TIDZ" y&-FoXH'#V~#I\+:E9Ml ():.wͪn0OKKa}b+nPOdf&e +L+GɩzZBD~O= LSA .}b-K%02텆{WI鼠N:d8`ʘ`Ы5Cw10WŸ `&4dij-7pa/52 TJs ??oToڠxXBX,v5\jCk蕍Nv2IT[$婒-  f_Go|Z\ $lCh`=!Gaj(մ1m3B&/ 1IV»]y!|瀥YD ah<@ \,@ XR|5,bvv8tP* E@_&u%DrQ=޺rOZ )=OiׇEw0LZWͩn% &ٟYyڥAZAg{J11d®_ Huǩ2A~1% QE[V춸n_f뒞^kj,ax.)J*uץ@= pm"%/{&1&"&_9[ {Yֹʄy2@Ezܬh[#_`ՙ@C4ٌ?$y+:Lyy2tI7xڑ ADubo. !y}wa\~+kB%"-Mif)Ovgef -Iz޿ %y0ˠd ^涜@ 3bXpdgw jXڒ[\*@a ,v50|*aEhl#uE'BXE&lW"nqdP%@ՂV ď0x/׻ʄ. u^-"KF 8?$KPYֵNԓׂ m$j=>KC!x^BFOy[rw%j{Y5f="mrE dqԔ{>*Uy{[-R3 OE% '65J$BKC1:́][&AY"!3}rIM@ͳ DZ݆-֨Tn1%;%Tf+w9%& ^NX.VU#@hK,$#u?S;IYSo+u3@t` 8kÄ4|&wFzA<')y˨l G+Smi}.9Lvy¼2,~{m" Wdȧ$EM4ۘȂmaɬG f&֫z_0b?޳yd*hs]gn=]a._@+܃uoڣ/SB{e  " TdRTf7Jash@y|N׬kZ@3gCqGzHw9"s}|ݯloZ{4D7p..$7a/):~ & ;؏W%TUp.'&Ďso;p`G#\)yp8mw3Thߎ uN1P׺㞆>ԕ}ez&etb7uwHMHE]bngԖ0w̨1a?ØUK}ÂNh5 EMgd9Y\ 0fNgDO*Y٩o_`gIHiwZCx6S~?JU@0mx ^a1EԺ_6B@ǸU!&p/tcM~ $f9Z2$F#pj`8tmֹ>2K3Bk ? C*Ka*E e!F͏JX:yF VY 3pYڭZe4ȩ4V8+"yUzn۲$wy\ɖ|\Am{rЊ'2zO'{81kUki~OoOifۗje: I9HhX'\l8Ui[Vy0pu"6t#dӢY'gR")/RR_XmT蒔A}Z!\yjؓî18 ??DԹqE'ɾ&ˉ>U2FS@8qdg;1Hp:'ah 2R#ա;5eڙ{G@ Q0(՜)lgTf1dg'_,kuyɍ+ӄ'4`$\J0V_5hF/Kv) 6QyVj`/te/.G,,LoOֳݼ 'XggK@ })=*4rt\r ha,VH!>P1qR|`e획"$?ݞ[&>'-J23<W*PZH sQEuҶl":K/0opcZOPFQ2^zuɵ)Jpx %.*J=Ndm 5> V@12/e~WPDE@RhL|N!ٿ-iTVRe,ѼǬk{275%Oʡp Mg~4#k5蝠QgVh&I=ehIKz, V<㞖 u˙ubT?8?NŪ0jcrvNyxS{2d<) =/Ju+qqe!lyQNaX5brֿ 2[AȤu3V;Onl &׋^'^=)c!*yHMoڼ|yk!qʨӤYAmgoҦm?2,qe!pHH;MAu)Ȇh# VQMo +<+oJ*EM1eѭrɹ*b=lӕC} $,{Pzt{vqR%CQڎ]6 fJ_L21DaYcoGŎw^\rHͦ'kEe]'A'~H3c8(6@ e2DZy(F|8?D?r ";Hu| Y?Hڈ5ӧT0C/VҶXw2=#JE"F[2$7 G'-31h*p6lqe͠Nstֳqp+W׫Sژ)y>bb /i <9(|AųBnBm]5V9.ėazޙKM {6qk >>hOzω ;`_דZ ˱r,LHT̈́P*ֿ3õU7|@,9vu>{'4Cذ7־;?T>2k(7r ؀gUk>[T呐ֆMW9VkvVnDdɼd;| az؃;~ܭ"jy}(l5?PgcãIʇx%(=LsP+F;y-{]BeW$2Vk=[/x4_xhQ[HQhs/iEh 2 ߹\zi\gR Ipv dwmU3 Jvpa&ȉH&&p4š3#}cg-(}hˎ1V\ ).XU¶4Ȉ/=IF_1 > Y4i! Ʉ扟+;8J<UqF,.48mQk,rOi`Ӆ߸U,):Y 6Di{;{pN;ۃl#g-DѢ9i?+@NJ+cf)[Аv^;\Q4硨m9O-f}Z^҈Jց s1Cexc-9/*C#vM$Viy#ZyGz8 ء[;oGG?z2vj9 DSZkȥ4q񪔶DF^}TO+"ɥdƿIM8J콕+JhԒ4Ұ*hr=TikパwЫ?'_:'X[1ix?\ xC @Ÿ]͵/?a$AU_8px-#V?0 dW$ *ZL LYٍ_)6O\)5#nӉ$X<#%wy݈ݤ,1=?"5̇ˢP1Yz AC,1P:eɯg^fJC̛$DR]\L\.7dvfWM:EU{dQԚ"7HT.&ϱB.V f5]`F@ol 9yFއEeWgJRL?>|gf1;'$ >[JF IPokS[,ꐴT!YP4y[\Am[{0Snʘ|ҎN<1N] {連5 #h(y_KNI^M`j˛"%3} I9k%/g-“LW+U^%NnW.?`+=.8wO%s)NN`x6]R\byuyHnYnfjƁ0AN{󽜿bTFIwJl5,;O#KO;U6P_S-ڻ厬*Q^/tGR@))QڽЧ`x懀0j߯0 [K(G0M5Ff Cj}@8Q~ ><|895Xc $)I0]}z'Gz$W/?V t(#c ާk]DAEikG0n/P/'ɕ?:{| Ro@[sMJܬrԎnȚt@A&v:[ңmPg׍j-, 7X7TtPG.vZgL#݀Gͪ5N1pL}H8sHBj>eJUONsR`Ô%,E &&fy*'r d7i AbwGÌ*EǀM9Z%KCԍtعٲ7nC%;S5 =Tݡ 6{=|c8JeyYeAMh:'`lZuGZ`ʷneohEiVnsͰp5~ Z[1U?-JvtfS ^uqe)=?* >?; d qZwdH尟f=Y Vv5cC.xE|IcFGXH]{͡wB(ep=|g8|Dzk,몸a|f5#y/:{6BGJ^\/ZR&X aGQ»IiL*[70N(!4pu[;;g 1?Y{"ɝs:o4_h7]k@+#Α. ۝yjx'Ñ]o)y >R~ԼBFgNT|F!ju`t4@F@D_P 3E#pvÞ]E} d6=:زlDVsrbQ @y15TyQ5 B|H>m'Vgəy³MOkkqcBfe_K!1x9VEjl.€D?:jaV8z_ge !%dS!lQph_Y F N@PgFrqwCx37_:/<'T:XWR@I],(WOѠFzO HȎUٵ>[x& yٯM|q~:+ H,{?MB+N6 Vn[:|4~! n0h>n EEBaGPJuq:sRdcd:I_%*畵 J@JW%r~Aw%3\ V \ "PQveDވԢĿ,66n <<5{݇5;,sq3 -??U:U_eݗ=v:(RQq(od ;Zß&;x[}is RRHUp],FAMs'J'։Mrek(jÔB)nx .kEkD>-J4 P ](6ϐ^1Z=ʻ((䮠:Nf`RFܡ]^_g=(bY{.c._p!j^"eE&lu.Ґ{X ̠K/72=(ih{4\3DHAL+]R"IBr?jhCBԈ'il0_ciRe0wU7yʏj)+}aWoİ)> OE! s1IEn%*5Śtb_M͏=i7hdtˎŖA#DTfUFtY%12r:t6K4.n[} 5bXU  M"̒bU>I+&$/N$ n)VƂNyY̏l!=.ݺnP(Tm } `㇂DVkt?*rwu>t@0p7Kyd4I.9{,ӌMA'ݭ;cp:KHQS {vdÀֲҺOo+Mq/UtWd%0>z%4.-nW l4 `eܴ G_XK5or;juZ B;Wg"= A Q V 5wD7EiYDvjAA|3 JRiK'hlN]+"Y~'#?piq4B7BY䘊1u }īVg4< Uޫ;n•mn`&m8Cl0VdZ%%_S !.K9Ռ<^R4Ju5faJh^~WyV/q):iePd(LTճ'V-Gv q@<{6&i橌ԍsHϤvvq:!y6;sdiOg`ٶzNE[r5?I ߐ6V26ʾˉmA^xԏ?J9eG8Ox>"dL/{XQ\ר N飀xp&Գ+=  y9];]% ("L͂(v: za7v 9ߗ ,i4b\`Sbku~YȢ5^'+ wΥn.C+ĵyq ږ ,5ڪ4aQȄ'5Y`3|Wwk!G,o/u<"g6.V+op-$dg˶bBQ!0`;N]+S^q lk.'|Ck-`@2BxDҀ=-]M@W033d-(vd0ŅPx09\_R4}O7?5 wZi;q/Cޝ3^pa D28b[)'*ɼ ~;`~X5я(umIV1~/ǛO]fRa֋: e>8WFVe}xPJP_.UcROWsmg3ˎo<˘g("hyoxh2ͻrLC{u EKߢ'v0Y*ҧM׳ KDh@2~/`9$SK^;TZ\w'PἉdUrv娜}}9sk&j|U¿ vƙιi@r-4~Tln @)$z=ٚ'~APiؾ.hPvvȮz%MʔKm4sF #5.ժFbջbMXn,%Z1O)o_#/i9m8:hW:[ۧ2cA1zʯ]W*O"2YoU(,n;#U =MrP3-2Poy[>фOASXL$,=:nvhF`V69; ^flkr> rR2mZHO dԎ' &# 돶O(<2TUi L?U)`"_Cq.n^Qrs=W)eUI)6IEDGpolśo YuLTF}b&qvDTaCK a*)`vװ׍Tw^_v|PV G1r.+ď|adH{ta{M2ix H7e--0N_?qUc1J6߃k͉iGqüe(re! JnÐR`Oڛ9GT]$~s PW봰l>͹=pT(aܴF wWΰj1+8yn륬aXI,c R1xy1M**BnZVJwL_G'm~ϫ]&H|]=hdԌkgS =h_}"]-Sk4GC#|ܲ 5 G7P“5m܉3SЄ%g_C\^|ݢg[~ wUn݉!*rOuM[/z_'1^nnxVnV)ռO$~Ʀ9| 4>sGͼ\B5JR*S9TnOD ANz[Dt}rv|K3'5r(ʚR2=J0jǬ7 {dy rG=ljmcPWR3Z4{mQ~ }x4>est15WtcB^Bʔsď>KY6,p\EU+X5/-xЍ&,@ %¢M(x y_Tf]QTPqF"U8Çgl+ Ҹ)?L>芹bN[[(eT20S}yQ[6zy+wn >ۖJ"(v맦JZӍB{A/W{8qϝ\QUvBOuWE"|/?\<<0g Ƥ MsY&re fAf`1r2|GKRZPt&qJVi ^~;Ώ!}73@2_Js-T#L[ku1첽vd#r)4n%h*.^|K2(RLEBBVY<]|y#2q.=^Ix,]+Q"})m$I=Ͳ avZ$4Vls%f5||8!)3o*i PrZo5z @zPfaJQ@_CO2,d`B,y]ew-l@ (:Z2N Š2/1˩\ G F҂Pf "e7fü-\E޳p2UytNk@^BnJpG^ fSAl][z3`xXݢq到0(G[b{c{]Wgj7Gy1}`m!@~Ucnl rTcѵ9JRL5HUG|O0/KPrX54Ѫ_Icp7FvT/ȼnEovroeqX)?(LJ~r,pǔ``}Q/[팩AT=ُ _hʞT .jv@x`F5=aP:=f)IAS #hU샇 L2˽VꦶۺgIkKă4:~w!X2<*m0?5Zx%j ZLqwgx:udR#T>#Cu~߫Mx5t\@%[YTC ^]k"/:]~ *ڀReze,qjX7(6:!Yx,awC1J>%YYۥ b#NbX^Y._̈́:!,0]+-8.~7|t;S_#])V9edͰJ^o3z*[}[dA3Y]{c9\EW4G(~ҳl^tA|(aM~C&3*5gvȵh)ِ͕'x/NT䤙n<}1ʇv NܝA606hVXCNDL֜}tk#S.]xQZ?ht{ \U9t[/WGǭD ޿ٶ|Y*mP紭+/y\|`ۄׂgpA]G彧8{1pQ;a* I Kݢ~ay,,aC&j='rjeI(ʹ&Y[ÌeҌ|GQ=ng„ENH6z[?i?ZVŗjJ4-&ҡ+}sa8dٹЦ=TyVEܩ}uƶX<-$ϓwI{̖0KRँ=~0q&Jԓ4@\f~}-ݐe2W8{Z>8&|o: OܸblI940ѥb$^FHCK6oUilC$xh7%I94`$Xe;#F/*aQw½hlhnYw}lmeϵ~Y 0Ջ_| fsW6xk)IRvZ)A}hdNj_W2}mpg. y4MNTy6ƹuF'"~::Tq_{űe0P'HmK՚w}gW0;Oʕ8o_+;%Bd6X~42al> Ch2mSVYVJg5[PנȽЕeJ޸y6+ә/ϔ)j Zp(\ԡΡbtȐNoo&KkkCqKO,G[Be%oI-&t)c bQ ϲF$R35ќiY5PڄAd Y"X-VTQ+MJ !:ԆF-ۅ(E$HwYC/  (7?]Q(4RQ_1s3?-EɟݢeⱮ] \<)HKҩ6ڼ-wW/%!@4_a1W:薀$T}ZV]23 10Xm+'Aw$Ȓ$]~\&N i @]~976pXٲh#Vۗ=JXZSՎ[hy,Mm6X3Ki!6tLd΢ q9rxhރtM bh<-A֙c%綐$Y q,dmW-W aa,݅^r meQkE9}ȗJ;Y?G.sPx$4 sνO5ş>s>P y1ÒY LH|/Ylwhj|<clS>Zlw"b8(f&ݖjBA!~W^:ě}RW^1:TpQ'gz.I xŷ KI[ 8d"`ԶV/SyF B+{RpF%-zdtJ{ 9;VS{t۵]$_poʾjVW<24[1hdsaN!${?{^J*j4Gr6ɯ\ \i>OI/Yjl;?A\ ypQo\ެm}A66|iTNwS#-*i$L),4E~joyP]Y֥ ˋk_p",54OǴi|?ݷߙ'S7IPw>q"t;I(0>VGGo-t`H ӿ7yrayv:G@ʇ#,s@cq a<W{1I5zA] m6(2fs1-d Qس#;\V/P%Pp#6W{ }kB܋Q&F11cD@UjX,kd5!]vG !Y[OT)Ͳ&]/0L 韽֒~XG" G[0\ E54Gs}qF,(0[`J~&e@={P?>XTg%M!򺊥zE%s=$9/_$՘CXXE j8Mʹ`;pfkͶB" 0³G*޺9y_,>K7 k%UQmh(c1FC!aR;ȿę| ՔؿP3W<`Pke/ mz AQ ǿ`&HW $emQ46*U[[֘ۂ^XeՒU'iĺ9Ub̖kJt*JGpقoi 0Ծ)W:7˨gZ~ܾ<Kg]ØQx]k?kZy/%")E])9vbf,z:\<:CԾ/k~:9YJNrdto'U&L.>QF82zJ{0+4jeZ帆_fi/~iZcZK홂Q*WsR _Šޣj-YPeT3XP(doB{YcLyn5HV䗹..:K-IdPQƤS V0u3 Yt_gSHR}=ګ4=1bc^#9W 5, @V㶼_)h:2X)O3Pan^w0ʙ?A| ~mzoXdε5L? h|S&<49<OF(P(PKxM3gc,:PVTG˶SN ,6tі9,痳oKMq;6-+RTݧӐK®݆>FA»% +¯:U0nfh!o?LhcjcIƗ+yKdze$֧Z!I@ՈKWguh\u?68/H6^`xlEŻ`5fMcP-RN,tR><`(-t<S>bp`>3dfRfI~6[*$weXմ9ߵh8'Kwg1ґR@(^807AR¦rkBg[I0QMV%ܠq +B{I̡yZ8{cݵ&d;Z۹a%dq&Ku:[*8uR:'~{~!edIh;{Bkw5_)yo` WX݌[f3״Njawo&'C3q$]u]?㚵,%~>p: /?,RtB1ҊVR} %aqÛ]RJ o1E4*Htg7WDxhxوlx'jT dߑ κC墀|:*.ICcŀ,h 0@9 u+>MK2ܧ?6'=5+GxTCK./{,P~A}ͷ4U}|pۥNqn#Xd ͝F3ڨKzU?bk`]:yY[P0g`?{a{\FuX%a5-߿§D>VM~к݂aR>P VGd4d6U1'U5VJk<5Y Z(yLZDL3irj mre1iJ< fb!`B ѽV|6>:P?޹^*X*n-8)esi Tq+ -Ƣu"3LZs u2=oC}uG2'1htɾ-^Qh?$4H;SVPl/OoI嘁oDR"iD=da+CzKCr֨ hף zG_a;? hўΉ'Hz]K[%E}~U+J@C u_P& ģ PV#ԾN 31mnG<<̥)=M.Dkrmr LqYfw?P6":#Gbjj>+ vFhSbgCP-1>-%Dscӑyg%;ūɓ1l yDaB@VY=Nv2!ۙC K:*J{2 y8< úe}dAjvJ*&Ό `gdA$R K}5Y&f9͌W<~o| Rx0DJEn"0幋ec # #݁emFn [P=^)&|(DXŃ2h>A /S( Kҭ(W-SjN;ɑ(ixkEXIdjh+jQO}WT! )}fDřQv|d%3"aeSRn;lG- l3{sM?o#÷Z<Y0=xW`}bǷ[tL(Y^P|/J-p!fֻCp"`v@\Zk&&[]DF%0.>,![ܕ`0XEh_Ga\SvDeY_o51N J0[[CԽU[W0$D;Y0) e!y鷼u;жهzź?'ЬcO%8݋G܁5 hq fgצ{@O;<<<Đf\?h2A O[[C9{Z)'ii8D01R8mD T)dt_'|{ KCPa%\ D0!~Fz9zvV4"<-ˆQ>zv(vylǗzCLC['5y1K9~xV~uy-~dj6I*;(#tQKiJ{R>G8MmUt}AQڞt&Fc9)za*tah|Rhr*Qޑn߳"ut]9}&чe;.iU˨dݤ}:o.OY]Q <3l0kH\XAvk@*IIZ:3mER?q#/ZΝ}/,e 2Goǵ6?dJ#B]9oՑXļg!pv6Dխ`ys-~<mzH|-h\˔@"`QOwݻ#F2)1=nVnߨS`tHւhy@}/1hκWqbՏlA.s*9:)*EPtg/Vo#ެ0UiR %hY=]_d(yԞf嚟eX'0iFXviȭ$6{4\s⸵xVr4Jd,@߾3[wc&/ږ: ,)؁ EUyi7qa9zB'ՖTj~*h.S#erx-fr0&:I(N\ q4ad qZx508gD01߁Te%p@F$[3'n]ozfuFi`@Mp$6Kg$9D6<-%SB#Ѡ1S@vƔh϶>|[B2E[ ?NhUNLuCKecG7RȒ:ПLv0D='F2h5|nQtk[)z.f1L7 G7ΗFb;Ceíg%CN]A?9$ [gbJե`ow٢AG)q5k*QW {:qΎix8 'T@ "ll8NyJՊ9)c}z%hq80'Wn k>T+VV]Xg Y*N髠܎>ߔwR؏r4\h D U 6$Ah-8I OB[xfO6{i~*^{\ZjF^[#[pGOF 0M];a}a~p9} uX8 25yԽja_vz̴:w4qK;aR%dSW_a7WNlE!F)WGIBj HpGI\t/!?3{;$sfeOlm 5rQ(1=aQMz֕ _Jz t,g;E]>-.[s&\B>2bR8kFz(04YҊՕ\I}h) %[ mv 3q 2 -ģNJN'J \Ñ=;WcoF67Y{v Y'FȒ<|67MBgjd9"/w8PG-'w,Rj*0!KK4_y *"_gB3dkl;_JRMؖi~*gr y0}Oj\h6)ŏЮhO25sNXH-j~My 5@pL7Ĉ=؆av(CqlzAjRt`#ꖚ8n iDs%wE5;qIJ20>@ =3ӘWeCF؍v_%O "bAcO=q׫\+\Or|6c@T>ضLeK&ɰLj˯Y|YFU N=QdsqLZU%+ 2;1mPx:tK-/Ifv P|5Kx|/ w#-*E)!Vo lHV۱"Z#}\INJmЩykը79kU5QbEf璗.3VA8W6LFh5~qSi4V*.mVN_Ca2twFp bx;$tJlp_Sx U΢Olv s6DXǾ%hH3X'rA221[{Z], ;w|>w^YW_COh4_m59?Á12_3H k$I0>ˠ{om K !HnA_0Tn ms<N*wܪOeyW>?{K&kgUP ts#3l#n7flȉwZv\_QaFvɴ=q+z6ǽ6n 'Τekv̷,S+SB =oR3eǛN:KNcBD7E^r' ^}Nh!x1/;u .;!Ԟs֒E]h?:M{KDAj~I_+E'VXa IEtyw< UF--'zdo=P{"12"QJi 7 >z!}$s33W RL˭ŵr朎z>ϴ2F u:~MQ/EΓ/q1 Rp9$4 (xy_6C My?ۈs5|=b]zjDjPͱkDnvDӻtVY *|n5\@E{:TL}²L/Ywt`/CӁuNaKLd[n]b`m f]w'uzbHS]{n HU Ȝbv,oX`!aR9%MX43g9mTN Xlxu<Χ45XtXѳE$s,o'CLo ޱ-KQ`K[vųmHԍ)° ؜4E9U'Af==q 2Q$| L0V+W_,6Q2MŽ{ċN/jF HyPAM wv՘ttX/v{{Λ&&#HT xTEMYs&ls~,}=՟pgǭ : 4&HuT<呲"Ҁ#'hF?7 wfUZB| Vߎ'*cn6qw6K*ĮT:̳-#ǂ<;hS0:X9B%R.V^,g1Pء_#aQ@Cd?KX95OqP:1. 7 :v!jNfWhO +ۍ wɆ)ޤ xmka1%g75ȧFh9Ad*ң̄;{[-Ǐ@;}/ !ڋ ~e_ 5:`Zujys[zwt #["O1v͸;ksi Bs7bE"˫Bcn'|]G5 SF/Ypq`Y=̴ҎP%jc-2Ylk2-_TZ{ x:] `CA*\c 4B$tBã B`8sԱv.jVjBX *W[۹3Vv37)43/HSߑ9A~N͐L}A,cKk5dpPMǬ۠qL^TY TVWR'-!1Qe}c9@T7j3y+<>taOrK?*k <{ e9CI3Kf! '{k/6AbՍgr (77W2>˵txB!{_wFCgU׻)aHW_W=+{-[]83D.h-(#iJe%LsV ,[r ̤mC&*d+IX;`MV5I%fHK֘Ҝ?|{Mn9([P)>->IE"/c1${p]pmr, :;.kC IDu*P 6!|LhifϜa eqq_̀RNX/^ ˄K-lƖObm N"͋Dr>`p3?Eڡm$[m+%UHJC9mZ10 QQNB6tj _>?BQ} $8#h qE#x,ŢC 1ß3-G Ox̫|܅Ư.U=3C}֢sBUkޱڧ7&#*2\B5"3[N7@5^=O4#֡ 6rLK4gTw} `p !oz7,lLw`$ڳF4՘AM$nIknt\hsPh_Nk夃䙻)X ~^[t6*bTܯ8\Lp"8uL?yNA? \6]N3űC,ۈ *`U{Fwz+p%2v~ : <)~؀O&lyX[(pip R|tQeᾤw !TQ3: 2DJrV#h zۮZ}0^QurEuoc?Ya i}bt|m= TT_z_{pwxAy3JǴvU]+ ZmiNLb ƻ8Lm}ܩ*Y/Tdt& }r1H< mr# A {۴ug8Tj>rA3=$>bH$iUtzð ˄~譛C}p$whLw$ fa}:zX9y ֔ԧG'ا'~YS5|0EY(/ob?ObpZ*z@f;6djrn臢Eָ`!-4맠{F/"Ԭ)! e+ W*Մ]UPvtO={a&1.y.d[|Wx,) f*'DJW}(=3_dcZ$ZF(PHPg!xa'9/UBqh+rI $S/3ԇV8W}-҉t ό[FÎw*A˖&V&Rt%!h{1wyia(R;̩vs(6~jan½U\_N;b W!f$!/`.Mt!ZkL3[sI&9PEC U > Iu]aUs"Ef LqQYJܭЛq*?jiU.ʻt#"pХv#ˉj{zte@Tv@{>z|@B.zӠ+.KR.uYu7@J~@bT(yE5=(Z?%/49%zq}O4:2**ژq[妖{c`cSRo*О@Cf7GcW*o6s@l~LA~) RT&oH`  wumW $>mQs%Y5xuaQuJ B+Q*;%sL/ UfoC]MQo__2Unh{WvP&dc:pֵ a}X89ì9j)nv`fm(LëzsG^79]63L!& TMu#?o*-ږ<56q$ǭ|p- [v'@ݪjVWp쉓D zC%Kc`2?F¶K]3k0oϊ7q֤pN&a2v ~A$Q&3qrBi>TuB7:!ï_E6_EZr>ABDoCm.$2+B?2HUBH+*}"J>%_n,~<Ǖb>+d󣳙86F3*dT~k!1і$G-8TXnBHxwz;ɘHJz0!EuP_ wwz5#'Ne.ټjx dLAvL?v,*9(nt8 K9CqI_,'P[t:ڽXz{Q?x3J6olr֨-&~Ěc3i [Y+.كݵO u;lvتz(H&fEc] }B'EWqᾘC$rh<8gB-Fq&àweG+y). lΔC My\cE)o->eeJS[UZWAT(.F)a$Zy&_UVe4]K](DĨ1sOӡZL B)*/Sn{d]52+&(1؞I)<&/96P' Y0vaɾ؞;P#i`.-D+ul XU;J3Պ,.+we*b"77 c0gXCm1>3r;TTxT5RPХ** FVb%xLE\:RTOnysrXP ~-}gѩEvH&vUފZ RR;P S?ţˣ݉DŽNMO:O[\A9Lqg XKܒy ik* *{h4Y_ \jkJ|F_hPN:ʟsxRȊS LK_C}ж6ꘘς"*t78|e)$$0 U{%{[7<{6UG/[FTDv7xhxpr!|#Dx1a=|Nnǒ蜥sFvL,:e36L.a'R)Sa Bq9hw4Lse?`+?vK".bmnb_&9 #t1& W,& 5qw8s3b%)gȈc3߂|'m`xGaHrWK<~ZbKO9t.⸏5¤VU '9%*ub lWo`!RҜ;Q10-b՟hBH`D{%+nttk4j"W%\?zx q~Bɽ8f mv{ 2ޮrJnT2zAvxO3v f +=sF\8BQ} ZkUGI_x0΍뾦ct=;g^$C${CӍYSQn2:3 M-AofW8Ɖgi~~M6yZCn'oB#p`9{5D [ՄsdU/mT`̨:A 3ϤQk(:Y+؎8i+Xl/!j1+iO7y> ̍_',Z]u>QN*yHp;UYEA B.ɇ D"[KFPQ1#;H ݙՙ-q6Z™@3dk6E4d?,kG7{;>vG!⾶ViΞqVu_8J)IʆˑZJ^l~:/, 0iH5Oq첛7L>Ll-^#9c+^Σ]SW}{V#[]2%K JY?nb+8U x;p"Yhf]{+{bcX { jCT4]f a9W?`/LlU1閯c|3%'QY; aS\dIbwH\ ҝL3Kr6k< ^Xm,'OhZkԫylBaų\蝦:@[ ]lL: Mc+0g@e}oQJ,;ˉgLdf컣Wl B!*8W2T=Q=9jSC Y&n!T&SGoWdWσ.qfWz ϊO١c/0X6an oP%>)fB Pz* q0@&S')ܢlhf`x Gj\%#Ho2sS_=w=KԞΑx|a b ~IӕE-B+ތNQm[,wE|Zj7N s)52 G\0wCfMXWj3p˶'$ = %?7eE~`L{{;MVmS{dqv\ivpl#^ m/ii$2z 7,cDN6'O}ܱ)|.Iq,S7XK(ɥC>FVFI磺%J[άx?bY̜dTbD*-ny|NM=eǞKMj9'?X,Z2M^֡hvŖ+B+2.ŅK8!U|c)mMqJ#N&GmD:@TD]$U^80"i`*Jq`O001\w*?CB8&.A C[t̂q'$oÁW2h|:}˜d<&ѸmPBvA'j@FaüZ#`_Imi%KMi-^{©zZkNO`RޢBma߄L~iϯc*͒fU u /ZkDʥAg&Ա$ "f?L!yRvH K0mXm|kUDC}ɟ%T."e،B˛&#NM<%24l\ t,=t ˱FD7Kv"{[=sX5"*헽B~&Q>'v7 />DEk7B+ cupSץ4F<(t:Ti2AvmZɜA9K73Ϳ=d'.@t,}Xм?~(Ÿ3=&,P YMS/Uqr>>H) E]!`S&m1l\ޏ;NT饋[82ktR3rW3F]p&< .ڢIBQrà8fk,,a"k"4}[xQՎŹbd^ta˧);!f= [e%u O,!j9Ꞻo?E5/u&zpq8'7N3B'8䙞|;Xerr/iv֮ɺ~a̷B%>a(KR1#ʝ"oψ=#I^Dl]L`/]-}V;kYm^^-\kPIyx|U;8K9evLXWOwh>.j?HpqD sL@u8#h6Y:Iz/9BWQ"Qn{܇`8aFJkiFmZ }{\+GJB^bq[vuWJ38't}8Y, <+`SϷZ>̰ޠ^wbr=KU+=~r!t8u]wsHGOzm?ߜ{=x*#٭ rv4.~`ߦ}ͅO+Sry+缥 7 W0Pk{K#vS #g*&hiz80B -6aյ dې|En6QQynT8z'k"gZ!sHZ]O+r:/_8Yjy#K u(3HXU~BGc.اp  )AӼ"*p*nZɑD2xEe_9Z~9_#я-pf(K> ]Wj>$~D"G}O{o?S#lph3O61K=|hf3f|'$-#96m(,C&`P ƖS~;);="q2 ¤ /?DJJީӘ"Hc1Q"xe82_ $W`6\mcy5snSE{] 1OgU(2t-]{Az$!gȼ߉IM']ua%v c=Ov*I*&30^;e%,xƾ,G|NGubR|ٲ_C,maP?;V"=Է:`/k F!@Mp͊ V.Oy CDxGS]yEtc p:U>j"V1X2(ꁇVP_XD 4?'`|WH]QlC%9ږU}5_sQqTvڢ>mkbO(`jd iS%&\t,+NO'_<_G\3Y>IB"AnTHN3U=E&Ke%EӌU]W bw/0k}zBːU(fE8y|qZ0ʓ J FQ;v-#lML*E&6%~!$.iE+~^i>Xha2G\0CV<)O9I#1Z|Y -\OƂ!L":A|n?c 5/uG屒]']VmI@R"9Swp~{XBO+32 ,)JW$RoH{-vy F;EQǛyEEV+DGEM} 2Oÿ+}%ɭ1H|w=jY xmHi# ȹ>"<(/)L~iV쵖p]Wn^rG`2!cLR/OxY^ Di9%fFxԙ0yG) ]/ ^%۔ҟp ]/ [2=G.T oU IT1[(}-al #&V J1Ƈ^eHmBC;Q-sQAA8`XCTt wfDŌTp;1k{glK6$f'R+[ D.=o6zƭ2\P3eĕhCyyU"x{kR|MύQ~6mHTf``+0aӧ;^aK9N.Aƪ ,(GW1.-9OkFe)H)#ն醚5/ #O悠 ]O/uYⅇ}2v|pd )TX ;?4$e嗃XN "rFNv|b0$bX&ز _lޅh };sPz<V Zs2ReI (;&5.>Ӡ<ԥ0mLyV:y§Q<Ac4.-s2_c NWUA(P%U$8? aJ:S)(J(XNJ4^;l|G;TNړZS9m8QsQwOE79l9?X4\d,ђ85ɏvqDZԧsn]GL `r&qHFN~K}lXKN%n竜l6.]/Y x3'~tlg{=#m!XGvTn?;,F!>2:b]'>2˿3m4oAI;DÏ@s5@ĮJ:H1[Qܱ:9 sx Z "> IO5\ ĦWl!XfMuYB4EAa]g(+9\X_Bnv RҍY7~ۙIM'nxKk\LCy6A/+Bea;$4O柺/) b%.$ehQx|Q˙- !wֱ:ew@0 4?bRH/{p~ș#>i)W|sfʒ&Ώ"bJi}""r=kX^7]=3 ӈ`޷A'ZX6xZh.&z~yq6*]ܼnϰ8SuV C 'e@Y)|:? 8.@6ǩ^NF\5r@;#xAo|*i2`{tDC$c %n(<ʋ_æk#ԃ3\cxq:^GIn*4x9z*OxI=+z<v}&rT}Ѵ6eX,I(6↴,jW#`u5]d{|<Y" iZH[|&NXAWp_Uy#vhPY^EkM}J}Q.ƺ -ǔz* 56%i\2uUӄmWY )f*fl@1/*^MſlE %z1c*¦l(yGG6<7/NP$*kb@ZLx/Dp;gjfU#\IɈwNJL?AllBu57Y^q/rp-dCv~N|8Fո-ŪJ2޴m4KhQ-z_pJby1C0,rY3(ȫyU?r۪;Θl`TQ[{xGSq2S``Tlc0BF"FₛDf PvTwuN?H5yzRSC,dg/+8fɥ9n$OoeRAOQ:.4S fN$yLttxg@@@C͐_*ESڝ3in*!{\0faWQ%a`{tF1!JTZDYNZ;pP$fMQ"UMAxzO9bA¢&$[\`jLWK@7cRmN-jlR KVM$~cp|jJ.&1ATڊQkK i&m@ⶖ,fH1b~]pQռ4.f1 m /dr0᩻[ڀ-K:^$8ܔsYQuv"8Z3Q’D<3_ aΣ3[ׇv_~th`[*h%%N(:6WQ~ϧq M֡SB=pfƞ;:M~'8=H*EC _ZbEX_.r1]¾~$0t)[OON`3xW=JQ = ̌IY-Vh1ס]PG4F &;8_6RP,j3s#$˾8T"ENI7 )JM& *zOj%v"K ^7?[RR}ݗX4̴21 BĶ~t0mOИ9ԆcN"s+A%i>›Ian1zpFO˧"hǪB:dV(KutY* wJٞK&+ ֏eݨ젿4'CZ9{[( p;tըVh߭O|Ԗga+ԩ0y6L K PwRٚ00L45S5 acl~i,t:&A`|8FKT? _3MwG*%ױVDS.Q71J\L=-7{ƒ¿ QΊr=B }DkU>2dRa*F!Iǃ;݅Z nn1ț&c SMfKHgQIк""&t\ed*)PփʇrR;^XAO+%d,eUs`$vYǔM^1t$ $'\ iDYVv"P Ir\20^w$&2潶wGyD1NF\ DvZ`w6v95sF8;ЃΖrq7;bpbP9uM!P5Jxr -Y%gx-i'.ZglGPýج-o2;/xTjbKjT~( 媌5%u2h!D87I=U)b~*s*zOM$U4C\ ruG$mDhnөPW[cpo;e7V3@e0W4YE1D%Yr\a;6eb G3o:JA=!ɿG󨨶*[u i+e2_&^ cXȘ$-wNuv;eL 4 3}+ԧ̤An*Te^}̺iPz-vZ[vpD,T?N/|6 2|ba9ڒJZ?f^R1nitKO4*.V>oQZ/YPIwi2)yQ0ͤw 3S@,>=cޖ@_]\'L._vOQ~g fIx]aߩl U1 6엂ruV{T, Hdܹ/BG/xvre8|jkp"ޜhXU .g+Be:IN?4B L|$ VG'c"cy{LJzDIzQ3$bsTyo^Q(4fqr$7`@J)O16>7@ɴW˗s7zM3ӱMPW`oCq<\YZ\wɢ:Gg|HW0hw3@7GxR aHލ }7Y>S,&5.C \(RYɄj.-s5DV@k[\VhMe>nSm164=vy$Ż,.= j,ɶo<{I\ƅg[[&\ySյ)pp(i&͎ef7UX W_qLl̸nK'"ʈFGNhʈJx"MU-d'|-ҿl N*Z녤Wѫ޲vE_kUU1%'Ǥ;u6:Gw ;*nbs>{ܶreU~%qqhKge5b$fKu ×UTV&OxVHE@?m"A5&tϹndCcypdkn[beC҆ q5x`vSL(ur9ŁLE l>+NgF3f(qow'uߪoM8r\Ld.㊳C`r:k4rK)QT)'Covra=!KD"C5LM#&~?YSI-utU0~CKt9%Cϛr<pCjOa4rJjpw9סr7SAg֐>2G/'BqE`/v zg3J]yÄ] j: ͥ섇j`), J{Rc0ezWL.z(ihd͵s L\]Kh'KD1ovSE KCjg_O,c 6l#khD-hfٶ.,Sܓ󡎗&֥ AXosZ{c>0,'f 3>ܡD~Dm!+ &gX c= BM (&;[ܖl'~ n0Cf8;/mqa హS-M=1_;Q6<+Rg\AkUd{/%\,c2%^Ԭ 트R;:C6h5(n 6IBת]F@}2$Ř,!VMub9$c3Ռf+>QxO,/ K-֊FYV( `KXC{~(b taljneWMlL{hD@d< 94z~c!sr \hQyl6²s ^$؊B_-N>Ltp/ZI"Ńz \fva^8F@5wQ5sb7Q[jUPet)ρ W5x!Uyq r{ g]-R:RRl}:Ajo {c `Kv0 ޗ!B-|GNA(|DG\+g .$P/^|59^p~6ei;W);HOo{⠜ #7k5zjRɶg4+!1%aKy`zpg o;*iWFzx+Fawݿܙ[ Yp-<kN`Fq/]G*̧DSo<-c*[yZ&A%( Ӕ+zO9ܩ8XmB7 3eDnx_`Xp3L`ƆpeHU^2i"9x]0̲N%)Tѯ[OdhV@XUU`7>N"km:MwݩêG\H514w>AkILQPK ,t9wEݚR2^ TP ‡ Qw1UBQX-'zfد] 'dK/ܞ TQ7GL*B׾ᔽȟ?׭?o[K/^ښm !-*s`+Jk-MR\8ޓ>V{2NICJpīP`hwMX҉w':ye7*Ʌ0 D&#Tͯ4bjov\,j-~`s/S"|Lϙ#dGw Og#(ੰfOOE]4JW"R)D9K%CSB c'[WbFۺyH+AjLP"$;uɞ3d*;)Nz{d˪BUjA;ƪUueC2ƭ9Cˊ{Yºca$d:}p^L[3vR-63fA!@&."*JҪ_Sk(Jq4n=J`qcB1$~T"0:'A_ |Yl1Ƀh98 ?1l߸ݗnlPndtWi_A>3c`G|ޭVY;[/bѠP`eht).cI!/?,wvn[^ Mw+;_ˉT۟g<($]ta+&q%[V07$8}1d!\W:aR̳^}9zܧ$)9J/pYqsJ @_,#HOI@ُH$ c5{)+/* AB)Cgl j#i%HÎ8Wrɢ'o܍9\wr˦Ē ´dA& <1PuVDCy㐚dzm֯;e:z . P0oغ}x1'w;WtV$vd/퍜s5p-jW ůӡ, 2yz0oý9f%Gvވ|a `c ,=q$MV0tN7pXo燫 tֿXzy"@>՝YbщaZ'Š'EݯR_3gum2FC xd"f8Ccf{j7ǽrmnWW!YǪ64Ѭ7Bg}`8l?Ҟ#D >7gqVU0|ăCcb=:O.-8BgqFD8W(V[g9"۪L=4%l^7fҨGeH#Djp(jg]Ӊ-%xOGay:TCLJ&a u`~ʣR+I[ܸ ,gŠa&Ȅ)=2_Z!J\jzҍQCGs:W${YCx`'mm L j N)N*KT)zdD *_7R/e7ߤ_=59GG$ǝZs~Lz9 Utۂ[`VFɧ;|]{ŢG]2 MBK)O6upZt%t4Ma8! c{LSTky*/VgR$ v+HWS𿏿[JxA,B{#{k9%%x9"f)KCf !{n&0B-5 ؛d Ǐ3)}µH 3f6A\;)n1H€-M&&'Qa~7dOiG$鼷]H-n 5UAoQ)/oXg'`c=564֬1Xw6ŲÐkMwh%ڽ'KJ9Ъy~UH">ˉKJ6|4I݉|>Y),C2TG3EY(v 1ĿP9=tS55NXh 6FV`6J 6XSU~DRoO0)Zǫk<u>g@׍ ƧJ*6B\ƑnfC{h8ld#ۊ[~^%`s1}}zpԸ).B%9"N'm~9a1$Q#4G%2.٭=- ku@Xտn|~vK ܳ/h׻jO0NԵ+d%Tͷ8 ǕTDKL( ݛ)\^0ƱUJ+*w[8%cQWR4|YMRVR7p !aWDYl'9L*8n) Ыi"ߝ׹e_( gt2t뗖f?䌰zS_}MSA  \M؛3ح|_&hK]~Z:S_q ]2=owQu|GwmCDΖBп߱x{!8 МSΕ?9CADĝL+ݲeYƹ;-XŁž6^&UApIo&MJs TCyJm<.8rf#~15~ b9ri/;r~ rxߞW{Bl~&^˵ u&4u.]B MYY7F3jn\(++P*^ž艰+!2>mQ)ZHS/.fJFϕmhm}<,E2 7|(B7`Fӭb8M'XͬuwpWF/]Ij+gnWTTQhE$/)ݜ%HhZ(PGr"&ȕ` kÕ?woC5֚A .^"# Ru=ܪ`N HN wt;KJ{vtв{2Z-S7\ ,Ϻ$\q!*)at)~"6qtd5"q@JY%.נ4!R#:LZkwE =?'7pD_l| sLN{M/ On7Ft~we/bdb7F ZSd(hkL`#xb'0h 5CMS]B ? ,Hw̒sp;Q[`]vob@:6 ە;:/hukI_bH5c&zpt}5);VU.K8$R ƀe8R^4`%dCgPh׵'U\KƩ\Yﶂ&ʘڂL_l&,GP B:T;R6'3϶K & ~ϰ,=5ї] 5c1=`ԯ%{Q,9ր/k>`8gY(SeS;-ԕ+< Ge*cY 7xn՗$3} .mb -[5/Cw;x !f;ęC\ꤼbC #$G -З1YV.́fy&#VP@/TK1 jé_IFQ27&D:H9+6,^nk|ZP\lglae-K:Y< a;MYkɾ$T6:~/kL<3v*ςM=%p\Ԓx_p;yCUÔj*PViF ^ኌI!vv\[B?QfϚ̡IKcD5"9vfg~7uK[A@od~ܲphÎ<Ț!$g DMp%\]z#h/B&L424K'@kΩqxU<=BŲˍ^WrV+S0r ߄glxھf=68u&"N6SĠmS-.J_"WMMɈx)B,g*Jԅ{&BS;cv Ek ~RQ_Gg$ڜqϾ*s8}Qp:Pv -+U0:ZVs3Z2to_Xh=2U$Mi/3E&>Leߍbk?3{#fGKFB#l8R)]٫%w}š9k#,{!#)t\tLVZ$zKcٞX5~#xDIvI G- 91HT}H|WZA34&"$ (8z;pL :=;Mn~F^ҁ4\t=ZlæO<&$Qw:Mt,.!HY0^Y$ܵ~in7UѯU:m6G1UkO#w?A:G 5c .Y"gM~U_7Xc=q}+CI7T#+L;v<}#qMuLrDX+*sV@IpA Ѹb(Lֶ081/hIJ d5;*eڰon T'{CR]N u|1%BX)lY b1$Ȱ*6Jp@p!,<͇Huĉq%lfT SDZlڔAqR-(C#AOn;Ě Ş#+Tg~]ڀ٢M*:KAPyU@] 'ئoy@#<$$0ɘYf6\WrK~0twp(sRyYD#Jt h ly"K0%iVlh-K*@3^gE $(h 3NHs?s+&g:aI1J%"%S!ջ_x!>> yΌmRqrU+p"I5n7\Gގ| 켣иMN#;yoۚ+b4oNS:oV~}7;y3kO8DI9AjѲlɰ9!0Ecmc>[ua77D BURmR,V+t#6mG2Va#mk\AQ1(vv6>wt@!4eAW OK׍a :!:Q+n&YHW ~F<r6cҼ5zQS8`BG|tc|O3 _rJYŞ$ܠUmO1a I^ Lw%BOݔD¥Z'F|;\%Ԙ:ZߙX`I_#_?a x9mgfhY N %Njľ'pi"YIАmr}}6DiiGA2#cxqYC%ПKݻʌ3_FΤz}#!8E{JvmRd0!Yjx'TUu٣TPs@Fןu\D`YFAvkxAji tɫRSnϠK>ACR+K[cN,N2?j"sH ~JRXxY +86Q01w-j5~@ZHakmrTz6T7mg/[%ܪio08v/My50n X_LG['Qdo|1?ួ4}3/8W x:.0AYxTεN,'9rvS?VC.SeD³s4z\ML$B2KQ@Rj,O[9߳II/+w[#|o<5llbJ.Il8LF@^'NwV.':(7Z0V ?Y;YȬdmt+tOPVPOKgWmC3! ;P}vCdV! 6DFr(?5"۩K84&J^r!\=T!zby$8IR;}sduo-M? ~QFeI2O\D.!;~*okH%{~LY6Yo=#R>\1*_qnNRg7DB܇qF"P i h0@_,c1;j Wfjdc #Au9plf4n_*8i3pZ񉏠\ڧ?pPJ'F+ zvHAգ RQ'x bO8=Jm$B,?zg/^/1 +6T!ʼN@[0Io^ҨU ]HD堔ހ9zgZrRwS4 ol#b1¤qor !,ϺrS__ /MՆ)~P vs1޳rݬ@DFQ\5&G$כ:9xqJRI7Ŀs^S1SOAkSdbI-QSD>;M=m5EUw?QEv$q3UA7ΊTD:Q8{?oܙf"Dsq>57:%VМ%<D_ɍ/TY ]޳'E3'~nУ3sx_,Y2Dzp.[6dK| dW]+2Z7"걵:8zY%)2s;!qI{u& 2u\^TA@m˰Our(n*_$@6odiü"_W}eetqZ0Jg]wJ0̲;O.Z* Aa&9͙F}mvGØ'H F*%E1au16`ltV0ei;*)q6 ^Q8~9G!f̭IӰub-)><݄H[=Yٶ="qvō0d(ޞiSG$ ϋ*:Bw1y6fM bHs; kT1NUo4b$ŋ(j't0]Z^-Uk>.ڠ3A@3?'_ԝ%5^MnQЂ\ Jq[ ęڌ3JYmslOaLfBm~a)ZƜ7'Xf2Gq^161 O~o;}Yti$DdS`zZFeꆚDw$Yi}ٱ^'ỳ DLi)It<ܘQ!>qD 9v\O`%ֲA| Gpnu`P՟aSbD˵9\VP^r@Ncƛw[`ea9GgdEh(zG*ou{IH_hFmܱ项[=]uJΑ\Eֽ6DcZymc6t@ qĞ c!1ZfLQX!m//abwٷ5#,r Vjz/C>w"&_NޅoH^ϧlٛ0P:@W nWjY9-nr]V{v^URiJ)UΞ%XνٻFOW9B,Fo)q4QWK#d-:nlRv> Z>pOլbXk n6E*NXAAr)b " N}ۤlѕdkbQljAK+\,u@vJJ\RU|}YYJn7+8}*Acf .Â#~Kt-|6dtXcvșy?nց}jn? (!trЃwaZTpuޅ'sT.?mRItu ЃE9™*/ezdUQYoc7|2!+6Crw=22m3tȖRi3x~˚q~ {2׋$pLKeTIU/2gUɬ_2!,j{ҬL 8t;{x@f$> vv|euW60]M)֦'v <-r+5Ť-q GnC8%$uA)Qbg)tx%Ygi6JŤ}mFp)/UMCQL!e +W9GzVo҆ w}'14K[+RF =:@8N/J{%7Tybߴհţ\5 U̷";AAyHN`_|?Kåsm-)a鉚z _=b_vo*I;RʊNj/ȶ$5.v9zp()I0{Qxt5܈UN9ca[ ڣ˂"p-?an]d`m83ا<4nEHA_GXGy3 {{F+i|hZmn߄ߠKe96^au*ێnң%w*;3!+X <mtm˵w2ܢG]`*ix-ϼelFj5՞`9=A\˼"}[2Nv_6(>jN qq%b!y(sM8iSRC esb-9sC|F`_qXBue)'j {?C @۽^BZA5jp Ѥ2oaӁ4mBELnM.8]sYD;AthţK8m$UIcl6R69F5֪E{g?,D:c_.X\E3,BI3-}i^F5˭`1n|qvfy!bkglf D{Zhr)2D8QAYM4P&^K'8CmBm=d*T{A+KQ)  2m]aJxƙa|j#*0#J$|B~i4 Emw=)D9_=wQ(&'gNcr uxt3b4L:~*.|E8H fX͛fW/;M[ޟ^L85r82l}k ~3 +-oDz;[㛘7Dl\ts)vB@JtE XQέBVokmkQh&D@SuTRhGhpM  y@ r7RAsAR5].31#_Q+UBMT-YH ٮT#x^ {'50pZ+HD_.nn ~*3+)%TxПPGb-&u,l23ew w.hT Ϝgob/O?j@?p'R[nɜ .}cA҆B!.-SDS)xղN娢''->mUnMV9w՞kxt>6BZ}la1ba=EhIV]|ŏ6"a)O?M<ë7qw9/rTm-Su|Pn K\H o m I1Np,y+3nRΧ\M(|q0F#q'F-zi[مsUr~_!LiT~M5m"4߁p)kkw/W՘]X,`t?:8_4<tqPM2vzZALIY~w5?N+XG_a8 PWO4(0: ӧq;݃0t".^o؁1 ߖ y/= 98ܿm4ݺ><+[ُ1C/aڃQ*J&$+A>gl77_轚 apHovFגhq'0zl|-?k|A8Xg:OY0B6Vu!L%cՊĩlJ ѝGl$S ڽXVu睨PSCc%['MknYJIKsRH޲Kz.5T{}[:PFyxU@я%$!҅U+Gdz)q&f:&s3&u׳l͖y3bBd񽸅kS!A5U=8~JZ.W>I*'S $JGiRI&Bb8>BWgSfᾅG?`z$mVa[$dBAfyv 4Y*H¾~Lh~JKMӻpQ9,ű\cbE 4!~]قbw&[fbK(/ Az}*moj?=Iu=d& )a 8``*%hai74??,Ab # / EE26x!{g^̐[R, VZ.4 J?h"V^ 0 x*uXNcgN GT`|_ep@(Şz6a;[Uqa/=tC`[UxVtg11qhFZvH`Kr Uzџ}ݝi%+a%Vs3 aN5;rIvC H 3CiB.}Ee-}_B%jMSh /DC/0A]aAݜ,tB)έ]PdPdGaFaY+Ֆ9'ts7,g v4k|+śTU촮(猿Q<@ԢzCpX:Đ. =Lq,2\j:wjΏL mBfE+@@!K`SR2eveCC3 GW7XPx!]]azshX`GAtoo8a!N gf@ήˬǖ[үfWaeR]ul@LqS"8II+%;j5;'>nO0p.YRݧmx.FN΃?8kOHE#SB.Jo+%Z!'k6)w]IV+vbtg+JWqyC+yq[_qdld_wF"49/eJF&i3;\@U2F(IPk#^E3/ޤ'c3,|[/p`T }h?۔%zjNӐ4ѐH_,9L{$_.B>>6J 5Wo~L+KE0E?z=c5,I18Xsqq(iMn7 n |v WWҝm%7$wwMOg LǕ돜գIP0W&zzDžq|L@_Zh>SH:FDy{EJEZ32 RŲ$kjWdVGr57O$KYp]gCKI 'SdYi&rC.1 N/rԆCG),e9x9kqL0JIN{]NzNGD<M_-MG\>lЁbTHd+5oX73{̺83$6f-v\Hd܄TwNvΔ'*mcr4kc8buv hM-xL(K&kh = 𬙉8O31l"N_+"a_J< |R4KirNhz8'ZGFDNŵu*hòڱKk(|Ċi{up޸ִ fFuZc8=\UMqY͕wx6ksHNiX ߃Mbĵ)=VŵÈˎLԎʡ{YFw޻ƿEMY}8y}z㹫01 =jwkR[-GJcQ[<یM оo_]脥3f _rgsVM{ c)_k& 1Ui0 -2A{6]O{GCnDv)e <4- mҙVH;@dT: |8Эoax]'7SaO`rV_a]7{w}1ܢ~V dA?xsFCjPh1?Jz, Pv MS *'.lx;Œs8l 06P sU^Q&Y F2I 4>;qq^F472{2 N EݽT q^QΟeqflٓ2˒N49U#kwG{yخs\{i*S'>@scOoډj1Nq3H[=Q]?0t&0PJH#|bUZP81NBHsga@jb`x6&MR v}{ 71(+g]OXra\x'h|^9l{szL@y*S PŀJE Y~,E=o#@.06a weHWnLt?^u5/+E7騠;t55)2q pƮ7ݤfwؤוi/_8Ⱥ:k˻(2%7<:\i) 8dV >LX _]F G Fby]6iJÔ`nAgu)P1m{D9JBc`vc D=l7 x_%mMJѽDf4p(ڿ"!υ8oIS##s&lNpZGֺq 5nWhK\wcflގcʒҿLrIԪcH;`\(L\oxwhl`)v<.x+N|W:*dI64ho%4HfE2 rĶRI0jO.N.|dM$L\\UuHx,0G۪Eb;Vq`[3oʜe>81q <*?$A5dM>JNkDŬ~Ogwn9QOI{H LR+ U/|AFt$.h`A0Jz}LC L$R|dǕsP(7QAq+}gjL0OC#VY2B(Fo B.)YRLUH _َotT  !j67LzM\L}*J̺}Y0LJ9a*N& )ibQ 7ȄPU+X‚T-I8مoc'd tY@k*wȆ.fhY M^EQRINߘKJx=1, mb}֛l~.htCPi|`JBjag;)`'+Sbx4\2f%7mc?bFB/ZSykSZbO2&:U$\F' $߀%{fa8Ĉq2=hZTWůYЉ&`'+uuk,|@x+LWl@{`X; \ߨب"mu6A7;/e,}f/]۴iR,yJvSʺyY2P龎.eV"jgq]^(/Z=_BS)L~"j`',,1L}dq7Nzh xbENYR99/$ ><ps6ٙr {2> 6U`5 YxrV)n~ty(H:H\U3>; \|WO8>8 ~-(_d7Sb7 #Ng%t@ϭj^X9sw d?rU?Vꔞ]9e]J},;CNgVBM˧UɴLJ^%kB -s~+7-"S-Ha-E'ՇËDA~Y(s1x!-q?X Ch:"(;gzV*?&_LLiT1eU î t?O ]YBjj#%$on((;PT= ^uy!h^'io3VHx-u)9zmR0"! ?Viiǔ1&9MTD09;MG gu<]w':Pv}sLV=BsG%z8ltJ)a'816PTS)2|hU"m;&s8S? 6E!Ut9#ĎYH\xf#ba80~@օC8GU\u $X&O0޴R2!]5=# xK N1_֯˕ 9ֻBƹRrC R0 Ťut1t;f¶ӹn&uF%[=,ٿ4 c ֧S٤]_!ob~O֖Vͩ=,0F0Uz( n+k\9*6q֜UqmdJkFM"f<9*MD|5x&hj˨ɫqt,,tY^#9i|ȫf6S\qJ+N{2 |O@Dۙw hFpMlr7MR>}-[U:"L\͂-¥f \BA~{_jg⦩kA_ V%WQhakP tX޸#n H~8Z !I`DxtPk?)< 坵uRJsӘH*_A;S4PA#|%fX2 sNpF(%7=84H?Qd5H6Zd whIvzEu+B$bN²^9H09Lk:mоt#8U6r~~h7L7UN7ˇ2a8%~vad) #.U>BluYp%5?uzl KxsV?`R:Yq(dpTͻ:`>+Y~\_Ľ%տm "a?̻aoኳi, :&Wm2A&RD L ,Ã1^HN"a0uڟDNOqeGD6k[c]V^+Y =@@r]\ZJdi |S!>ZL26Fr\ [Q_XlJSЦ2rdh[Tk6qMcZ+ǜĩ}FMOqDL_+MpC랻ױR{N}G=_ h`8+]X~B@6M3.m#&g?V@ 'BBI_av:ugJuKl{յ.蝩(H⏩J57 3LrL9uHM1'F9#lr"=oiZɇ8QLwM T;3(O;IFWBUf~ ]p1q04õ,xT*0JT+YDM>4AP;\a)'Z0 }SDx]iFgw#Xz|va)POMj&fJԿ'!y.YW;nEb?>;2*d<1'y:ȬÌorGq%bW`T؁X3&apzE)77#dBŦ?|50-iP0j(oEmg'4aq_*"1͹P?dz͸Rl37nӨ W HlԘޭ^ܴͤ{~5hTX$漞7.p`>#ʊ=@BKE Z@G>IoȜ<6{|}]ɒ;=<`t76EUaae.y.Z"w{[OGbͭ0J?pkrEh^l R`&O ИqxEܷ7!ZTvP w \ rۄ^`ק_fwiMvG !R! ǻE|]Pȶ5zPzƯ&ԛ C~*# }")ۀ/ZbEg^iluJ^dl38oF$B{$/8U6VOXS]̙n:X[t)%x=!*r)/{ehiqoކXq@P`>dls8@&\%>&C%I.sەZ.0#L21)pn$yp>zJ 71Hf m2\c4y/dC̳7 Vw&xɾ4PflKtYޣ ǧo3ǁnpvȫxKǭ!KXzN#GhY L exr!-c0A(5'mi*wpYX## }[\~6~Ya0&$J<9Hd'=-5/nG충ձꢜ ͗CٚiUMp~69RTTv)_Ob P wD4;lqm=UX[~zօ (銘cho (ru.s1ΆZ6#4Vu^Os$:-Yܾ /Χ/ϖij16<8J,@swg\А<ľS T&z I<`餈]ϋ1mCD&.S[D}ȪN$K& negdw`Θp %oNhh#\;J)(RfFJطIJ._?K֬UdO1j\7],j(k$aW+E#A ja*qQ` ]/*F>p2)a@Kn}͆ _J"~B^gi\TP| o`"Wc/f݉Qu@ qli_`p IIO]?OHچ\S)#LZ6YTOG^b)xbm9ڬ#nM+*T.i/p:Z~ulD;ZrC }?݌@k:=X,͹Vw^y2;&eXA_@>ERޫ.fIa-) @O`s^p,N9Q;4oOTG$&!F$$bs4/46o ˦.K1Jf7j9;$AL^i^rO^޾>IjiPҪK.W6> E`*43 U,uaoObo@i٭x wm8r u԰RWjuGy}6J*6DByl;jQuvG/&qh(;>ۑQ|£?ܭW 8=N6@S_JN+$Y++ijPʼ8M'c>  Z J&sʷb!RTzy07of0kssA毮ޓE$'IRVNpëS+ӈ.eFL8uB(sw5>RTQYĦד[GJ,Q"v RCֲ#Q36bzv]n>c~I2]_e},Xh"@)CPӇjc`)7APIQ죪cx ed]L&!FgZ~.xk(۾Pu3':>ѷ_bUşa&1PhG+'sHpm#wi8& V@ƶd.c},fʱؓ97|W&i@R3Q. @.s}U5e>ZL8/ HUp{/= gdz~guHj6  [Z \'f pʎ7/g-go;=&dd8]r<"a+'lE@ rS(v+Y^ 79&}>)Ȇp-_mOě&aF5R|V 1| 3U[+x<" >]B^Dq#8ۧB, ghwx2?U\93AkRxQVT+%gu'}{mӽw)_Ȏ^ђ$){GNAZ알n?N>Dk z_,~ywqcH/ +p^yw4J(Rj*6WweeV@<=Duӻ6ތ63^CTc1"P1ONO8cߣAepfSقZhu"a~9|<ӯ~.W{fyWCV|ٗ$cSo[2G4@F &+i'a I}ڨ~͉!ie絬Vt3Ra>S憾ȾHcR5MWEmz<`-0b=zuHdSa|QTD9]CI|Jmvv)V|yiMKO,Dg&r͛`uu6'qy(q\y5cb\;O(KZš6b1hx++ wYb͢:bN?N|8SĻ}NI#Dj9zŦ@OXLqBi8)C&/}NOQ`9\^Mdo̲뗠΅׈|5)G X4 (1j.H 㟪[M0mnj)eՁl&>zl=-IrC ෟߍߑpb""LW%\L'e%Ln9Nu"CVai|RAx`n֚b_QҐJMRu 6Z2ϯ[CTT )\ˉ4m-s+i=6;wyMʖE͏j 3 8??,d=t1-=caPjkF(B0cYIr?@ } ߩģop3AOVQp*c khHymA8WpjǘcsrgP՛G緾_ òE[oxX-~ոzC@?:pAվPa!¹=Hoid?Q>ʨT';կȆЋgZ_%p;g+DŽ>D[]hE.?mc&U)OfŖ*}@1?s[ ò'"40ƕ19AZ탣@nOYEZ`g&8yJ1YHPnWi]FG~H,3%ӖKIyP>sG# ӐeI!YМD m U<_3aA5Eof <ڢTRSks& h e 6=y@A<2^MtM꯳lQU3x`ؖx4zc%'q@kUz䥯!wIm=!~Lwך4IpoFV*LAqP{m TfM&)BW0_\sr(thþ98 $Is5,Q7!ZyC%t:$C`%r6Z|.n]PD nIlJ}UJ+ %z!cA3#G׶I)\0T#=XBJW♃]w^jht3V]Ko0g= ,lY R~7;@Le݂^c6CDjT6ׄGH05biL\(&K`_r\S >CaEev45v;ߏԑЮ;ɰC94CK-ZR~*0 LRbË520JmP8O؈8+fx"G*$:/dTbtzTo:;a0AT)5%}0 id-ͼıagRacoRȺ\ˆe|iG'k.y#^v 4A\_(O χq 5?NӷƀTCk|@pITj{s'ЮjNj oa%S?`9xsxxSDe& Pa,z-/Vȴ/ϧ͠}cWi9|]'̐0OHGQEQlv%\^yyRfm:RA63uv*6tA-_F`,c yp<|3-c=0@j#RH;/G: `0GJ5^5\#'G`Nz7[xZ0:_'>I ] k txb&,x;pVToރQJe~JFb`a_QIJ5rL>]>_p1x{ginG1];Mu5b{{\3] eHla krlYt cxcjW7NOp#[=%twWDl̼*aY1 hP< E#\{@ꔚ sڊsL\#{,FL^6NQc?] uGmNfC!JcO<<|87 fvGY"#eQhX~ 61CZ w>(oRH%w2w35\9YŒ^ψK`P|zwOezHIl$:I+$dݙV讇?~3~2*bdBC#Y ŪUfsS&J[,WCOc푲-,S8,b.[]ui/ 9Y`=tv`~2!9G{n8l w-t:/>z,a!yO~;2gADE7X7eQړRR3Hzi$1ϲoar'-k6Hf;b4-d3?{|3*ܝ;lpͪ(xtxyؒo'vAxNv`(1yrhm`hbV4԰@=P7dtg xZ L-}SP}Єc9"E%MBMn*wZ?p6 *9!Yh\Xױ`9ԙ]>k[C! !@Y]-PYą`_2$$WN=ޮhٛBS,>Áι52x /|gRo*> +##dbWnPќGu7#3D E܈)Q38' _8fM Y, ^lLEj5۴K,e\XU;hfn8aq Nn>JFq@O0yml]-Ii[-K>^j#8`g|݉ m-dG6zK"y&"u qP hPiS\H xuEwfn` xB,"jqŐ[ō'.^P~S ^G}\("0FiXlna?Ȼ:d `Ӆg BMGǒ39LP㶓 +rA੬H٦It`g^Vxv{stnDlo_PF1*fgC1vG{;_"NSN)M+|so"3N{?np^3d ta֚A0 6-h=HtE V {b5 `G%[^"rz#zJt)J7~=}uysJC3 +ը;wLbM!k3,F3yOd! 3ONUb_\ Pp;6Xh~Z,ctLv 8XNZWc=d*Y~׆4 eDOjCm*TOc阃vqwK=;myEӇSqdzp+^S814pMɣK-θ702R}kRx\Y|:ɉ=6Cù%) Wp#@6MR·+F5QT &Ε;ٽۉ ǍBȦ.MÁwt`oy#CІWE讂΀d3&v? BU\Mi:@\~&xJAM5OUc8LiNk9&K hTSJ_1045DޒP``~uȡ.*UkhGYŠXwEnjn&SFѦq4HLnShZ&i.}54=oq^ R8gc O]N"G^31bd<¨['xw؃ .y*٩]b{c/{;m$DA3+l1;7%0X[;76)Hb&J &S3da}w mZzճ#RvED,{ K뿙|NrM70p`0) OpOFmDAO[邪z 7=k lȭ|Y6??:cOءwʶ6kՄwR">kOW*@w7u9. B9A+JXsfBϤYٰ̼9;u$kpgFY{Qf 5"ZPGYm@U<~ ItRȘY|, 2qJ^B@ FUT5 Ϲ@uTTVen& 탯[3Bސd+53R1p/ 9 !tbvmYf).ZS$r"`9ɘ,BiF v-|E4q0i6y,93kbdzb~'ʙ2ORݦK 'S*~ղv&"sv>[W5"'f F>ٟVܢ69c1o%:SaaW ׿w{ "%Pwl]m!?o]k !U|Rbv1J N3PJtJtjŤedCKq!"0c9fZb!Y_asŰ!?e3;l&#XBsfvM44lXu {4}h{ 1ujgP? iSٳJYlh&OHx_U~NWA!. c}0WMMR A2,Tu|LeL; khD^@NHkOiFؼԓ QcS8}2X"b]7멒!- šPt]ʼ|{GDEd $vyZf뽂4,#ҟmeM0+-[I:\)P3wԮު{ S7F,5@ܔ;Ժ縴<ݳ ^kHa?iѤvNt`CHɮG($%:.Ⱔ[3gI E6l?6;}Nmor1pɒz\0bXjȃ eG~eiS$q޹v 1kl|ێ;"d +,* i؄M)w<U!|n7=21jJ|3iet) $ü{L—}.nmu(yT@8]R8lH>1'~@8Uw EAce~9V ֣=)ր22r.Abc=Zߓ\({>K`vI'F5a'xJsh0T˫;RՅkR_ (d c..-ȏf- |tYemIB&LkPsIvX^"rr8 Q⼑YEjTxQԢ-ᙣGF5W 3$'zKf\v^(Xj,'cOe9,qm=5i{gF?՗M_ocezeox0S̪ 'vgHHjz7ݙGG->?:e HRYPt !kϖ:#SqF1K5zTo\(.>YqPbMk!mt:~:"ýg F2N5 FQzoN(2O|hug&ceCޘ *Wpi}tFmM>q0䩘}?^ZrgwŢ]ycc_ [<%t;mfՓm3F魶qL^l<Aunp<Dujb^:Ca\5 7c֥ύC$ M$.VDd?s6X؆ky蜎Pr8XdΊ pi-Ҥӥ9,=bY& q0uBH+MMmW$'A*.#?C*C"%:AY^R%}΃}5g?^~S,Jmʱ ]*(w@tv=A&zpZ?j80ƫxYNP<&`INYa_Ƭ񌣤q/\FE<3ن]W jCdM}aib_Ӣ%N|7ku<ʵU<|Wkjk(/[ޤVa0 ,h+ly+CKm/0Y|A6.Dl3. 1‚V7._菝Hr9{f"eyZZYksS*9!4X苸.QdE5q_{LK<Bp8p.M{42 ;K 2&Ӽ׵^bm4GcOt#/!l{t׺3]ɹӆ)k Ʀd2Yx 2TmL42T 5TgnfQ `9D}&uWs ;Oz }X"L5;M᫣ ikIU)I!/:d|mRg N9{/Voa FEإruK\?$WмxRQVfr;6.GU9_ FBK p _Y"&C'rkK18O0)6#:{MLKVz\KRS!mcySōȊ,|$'O~] x{J5e HQL`6ĠqHoytb%pbU,cjҾ_]$m|'k].UmGѽvYHOmNb"2Tno`nb܋)ϧ \ vRO+\Yh"So똮28Vw>|?,$zo;VMd 05~p멹YRAgB|b-t7pP`Р e)=!aJTAM6OEB B {[Pؒsa.RUZ6TMW-/o e 'JƩH2<>.&jp$jW:WdTN.M9hB,LsS_<{%LI~|\%+J8A-, [!cKJbR[x)Q-wzVu"t2 ºc7>т}7qB#)׋)%nZV>QC[h00tov+4?1 ݜ$'e[:Ayŕw5Ja XE #i-S'(_1OA*ZA 9Ge$1*GOEq͞Isb}M߼"ԒX+?Gy5(>$OUŧs$:-QbsEt\YT '&$>{T zy!%SĔ/FcXOj<'/,>FG(ܴ)S!Մ8K8 ꂒZ|h0*mJ3ЪEy=:irmǟy虎BF.ᆽ/!*XullD'EGJT[:ͼ ` SlgY RsLMPBƂfm8Pvʱ\2|Ŗ 75ev D-pbsMfWJ lc)Eх3YZdΛ){ڟpgPUf1d46L<+o{u1btYWvU=PZE_eǙ]w?Zt51"O.=ҐeKf:¹09+6mD hX֩w E}\+<1k%gSݭF}jP[_ZW+{XSLb0 7>" ]/i68Pyu\P W,%E=x- a ^vۑ,4;[Bm#@%>*3Δ5{~1ʜS9h ie)YVo=(wjӂ]$t@|dV [ys4Fs3cGqUA#@\wla|^I$B'ʔuBFWڜwt݌3yz =\Zq0^?([ŸF(.f>Ku $H}|MDu-ڙ-6NYM_Jm2߰)Oc=Kt!g{W.7~jzk@~cW/6,>~ 3>Ztd`)=jMo"o- J<J~y<FB摯f QL_1-Sd2KDBO6N:HeΟWȂjr@ҩSWa|2[@pJ#N_ J?8q*nzԙiZR)Pޫ(e'aOwY$ yF S#-OraV[U7@WˈZ%"s;wQe< ۷n\4eYFT7(p6| XLe,ncK84H j+s[w|Rgߨ|>R%E}DmA5s.ׇEfL2CV`Wp'x, TeGI31u{d-T_AqM*oyq<-~~ssNn?i3ӏ8#&|,1CqJo#DVbiA5[(x }JPUl1<~TFyz*@>=uDN7F]XalNSh­;p|#sbhTJbF rzކv:-#P]2Xb YR;ML5. D| s5fEʣc0G%p',ag? EBxs"2o}Z 餿%*M= )8/ s- ֠qNVPb.|'Ҩm qcVt3oSRtKy4H>LeJމ{a!h 1%hVl~0׬,TrR:+,*븆s*@UX@ohPE @hD*B-6 Hܗ$PS 9 mBwljjjEODd# :8sE+ݙIୁczC8z3aІcY*\NYiy8tA ?(S~1a"j#oXTO=2u?z}kB)fCv=yC.Q",Z#=wJP0j#>u`( ΪX&/,s;,^rޥ*0sjjMӑEAGiG̈́X0}5fx 7%M>fDS^qƨPAmB:ŧ!fbav%Am?^3L iiWiT ЯBbKGז;*lS'NHVNZB-cTA,,t&-o ę+O4Txݘ? ^䟻HN)%ch cU~NKP5_e_&-$lؐrF\Yufѧ1~#E|egōt]nDtf@WⱼZTtS$&\(p*c eg11A2 #0I˰N=`9zz؈`xb]-i]R!vV 4eϏC Rn|WnN0wgshiȿaOWBj ZWjQ^. ۩{EutQTQGoY/h`L 0nP-<yo`&"X m_Rg `[vENK:dT-as&9}htȁիwt~j) f".ۮt킲$ i̬Vj VֹI=NOk9#J90Y>}/a~HAfeirx9`*!HQUnXXlFWMSs_RxX4}kb\lu^ȓ tDv3;n$u7ħd^vuOThE$gQeK۬. ѳ,,+\ e/Q>H5/ ]Sw OHx\8]훔1Xywd%a+O]zu7<ɩ(gz#Lc}{UR:a+ %vk[p#ҜGϴkYz-iL?.qc~z*~bʼ#XlFp"^ȁuͩRuv5_H*gl-̡*YZŞ=|\p_; D][Y7ŅPDzGF0~C)hd|:#"շlL񧀝N)vƨW\ځ*n3PnAt ƺmeL`t0 fg&,$6&rQYMs"kR9aQކF!`iZ#Ckc&=ez?Lo䯵-`cƱb  hC n K9r##72S$C|YDQ"V!nO~)5ÚxfQ+)9 5Z2\c-ci|CIֲ% )LoÐU6ơHHRf" D?Lyp=֫ɶy\O o`^'0zP-br 毾ȫ=V1k(ҭ^]0AE~|"Y'|P.T|3d'/XzǠU yȧ9H]nIE.C_\>z)3~f\>&򷫡SHҜ37v|w"zcT1 ~VJ)g 4,gO;VCU سPxXǖW ?/u\y%gb,bzhK5v[ou6R ){2I9:Fj} =wU,m?ǒH0?&u@o8=Q/4QBIL1Ttky%MY'zx͸eT<'  jia !].u&6a(a#Z0Kǐ%$?s^]̉{(B?pe1F-x5H͈",eO,Jo} %KyP",/4>`A?VQ'a .˥]Go̥2ѩൃ2R]3뫍T7Qe̞$;_/̠A]ov5hR7;\$vwGXFq?']0y+6Rۤnaǿ*(yZI]PuOk,_1NN ^&?9HղM +KN'Gz1F8߰zQ<ϋR!k]Ǧ?V3v]XA"j{% sNa](IM~Ftن|s0{q&V_G7 -IHCEIRD1iWz`c/{4zCOVd:2JX>5=UKɧ*|}S?jL$jz—3R0vռ-WQA$ k@(5ae9L?IOۏ:V[s1Ҫnwk#v\j9Br)In14hs+E iKUnFuT,,|Tp @@S7MYn̵}Iwq˂>t {6AG9g87d)p[iU"sXleqZeZ~jv,8Gm%vY|`9&U ;; ytŢF|A͗e 4䊇61U= 1r(E nE='|p(t͚n5O19e6{2t^PVaZa1vyڠV B";禮*)'(M[o@faq܇hes$?L[7çanhk8ZԇTЎ+OEؿ~z%hY+_5P!_$GDx@1(֘p+|ÐU /2T.}(M!( - g,ق5Kǐ{E`|{6my5@ XXjV𶓑TRB Wkr+n@szsڭ2$7ӗ 4uXLat9$&h!v[4$7MȎG+CXT:BC$lJ_c֢]=t05T6ovk~'_*FdڢSذrŰpVT*]'n]&{?q~"ֆ@=ALʭ0ųըh"q<=a,_,/~_VHt9t=>RZ gr>,ȡbGRy6lbD@ˎDŗA֒h݃y/C,-lYj1F@@7UL76ܹgy쓪a"߾Yl.Lԙ<E4/^_Rdb1&~2vb*:Z|]Z/%XR>R Q˝ܬCiNS$& 0ѝqptaf`AZO.Wu+ lcFrxGtLyn-4)}ʣUy"_g 'o\@SZ:4j_3F%D7o)aQYn+*>AsE/ӽ^ ~R yY͞aUy˽ v!>;iytFhw$;da6+H8{t-ݿ&/(\FsLjbAH࿳L@_M}$]乿FY"eVp%qOL_;E&脇@uWM1`ZDFȄ ޟkS&k 4wۺT/| 㢥emjNpJ"IkkP"X 5#ٖRC.Zu>x5A,zPpwSu!+ni< aᐏs~GH\%w͛P+6%`<2R\,JAnkڹ:\ vlj=W6V4gWK 6 骖 (r>?toݏ`QsTO|:̰mfht) yai)=](IW{Yջ^LN`i)?,m2a@?ݷY CQ^ EAd .lZ">iyd*4 xI (88kVCsMٿ z4 J gRڸb|Ogom!V΍쿇pbü%U:fpYPk54NA-cpAS.Eh FT֍бWQz@L86XlpR)YO|b~y, :LOդ|c:b J<^p*FULh^iD J qjtdȫJӰnmm FiƁ}%=鐱%˥.DQeIg;ԑG4v+nex"Z6maˆ8F]hgxկ3bGp Çη,>b^ wS[hOP Yq*>TW2#0MJbBy;ްҰn6E sqh2g24*<zʰ]tS3bnC猶(rdZl J(Pa&P n)l*_o̶1gW11>զncN.pz5"_kKZww Zު,8SCLB~ZafͬV[c'gr~^тK[(%>B;WqD3ec}>b,~I19׉! R .`RĮ\V>5腢;?If(E T*Q;q}~)0a.,f3Z?Le Nߘ3 dFlDhg$VQ gWwgam'czoK0zE9!%-j'a8NJ0wF.? O++WF0G ^bYZV*ZTYȉ3651$d+Iog\Ѽk9 $WD&Ͷ_&1 8 K}S! =Ka_ }Ƕ2gx7`FQxNox?8lTeT7q:XU6о h̿{7GT Qʎ)َc;| CJ{&H9bd',B 6؍_az'ew^k QU!iZ1mteUwiM%SvĢ4ivVڈ<¨i荽Ewi^FEiE\+&Җ,aWƅ۪z[BޏjW%cXnycn8#Yf@xz;p*#pin3A@Y@Fh~A==5SVjbǚrwG5tZ K_yHx2ӱ 7hZ4r>iƒ: R< HƏ_\E״cd_B! pPlF㑛h*x0ML̈2VL| -(r}~(79$POH,(cI7QY鲕ژyŇ"esz\ j`:i`vטc՘D$W)ng:P՘|lCޚFz&Q`m w(svVo#*09M ILd%5Spsu'\t^߂l2]2x.VH&EudeSݎ#-kPB}}/v O;gH+|aMXD݂Nf夰$0AB?ZDžjLm4`Tp G:5A@!( @._e4$[/nrX8W $,q՞=7C\sW}"jx ̰?"ν1RߗSz=6Zh;ݵqgG0ۨ9Z>^l̕ɗYYD'55$0H`(؛X6oGDȽ7AT̓,4qT#|3bs X 6+yj\oaP{xI^[|M¯tqWx%c&w!0"i]p@}+ͼ&N: -(*"62~: r6t! XѳM{ J2gF @k4 8P;$rvaM%ONyQ aH#5˛nM6@tG ;+#;'嫑1} M=CM:[Hh*{Q0|P# ԙaF8<ϣ'xEC rsX=e<;ސjYv~|x ;TMWYSib̉ѬS\-6|6kQ dR T=^5Sic%uvMR[=?Hby t_!6GC+{' 8I r;9 w p<u sZӽ-ɀI#U,ޓRK7~# J&|]aVx ܗJDg.8djA5=LL4Jt6qnFuydVg_A2JD D brvK^rg2KJo͎|PIxT]X\-XWo/8r^@ٝo5wQԳg6wLynX37  5Z'ԻVST}&(ٹ)Ï?5`WxTCn,mooZ3*1K.6хؠU~-qD:YpKcI,F2|".yLn*'JRDs[^:5xv?l2'6;H8zGNJH޼jQ8! G81e^ ,6g˛$W rָVyͱӂ=G޵p٥@))[dH|S,T 5}7^r(W=~Iu~_FS!8cs@u I6MoA%4@g|| ه/:ӳ!+9 }TMSvHX}oM<~F3N}t:F@NfrA񉼞(DZKQ$Mԛe>w]` a}P}Q#۔IN5a7?V%X<ฅVnC n3tZ,;!gRNArNLu¥I7Y2wv,t  -D19V­A%(J&BkȴɗN<1hA5WY`Afж^?47DI\9F2I W*~I P%B/`3}F%p*{p&6=M}f:fWݎM sjz$2Kz )S^8Y`ьOT`nʓw~(PAd+꿃 :27U9D$')2ŦG>IjTXK~W7u:⛆9;[P=&w2nzFoFB87I_9#Ő$f҅jw;x(屰9CuQ!?֪3>{^(%CX]٪{O"+ukGd%3r89qܸCE7/[Y^:]j)H/ExO|xCg9 f}|7rYtRaW ̆YhUɺ7tpxKVTn)Aq 1.+˾Jf,zX@jIJ*q7Lː5t`ԕyYY좔 V}ȕK-yTL\ճ8 ^2­3搚o#7Y.÷gά*(/R[p$e'f^?Lrݘt 8k7PҶP8b|/fED0T=vY3 )c[Swf'=f4SYTK&~i4wҤ zr- %鍊_BRߊT+G|+qef^2ךO1ΖފJkY\B@giv*+ `&5Ix#Nz1 ur͉%LB !GEf ɞ|$v)' ւYGL!T)$XmLOЯsZX(j_}*l0<<ּzȽAto2>#b>гu<6;jmTʒA5N*OcA kTuXNAԌVfr}'wư{ڡ!edS,5dMpktR ^|o۠8D?s"2t1E҇RG篩4^Qv,a$Uشv % .f2BPB{/菮MqaHeĎ$aft}c gl쀁U4I$!*J#Y9O69~d|qN%דr<]+9[wNO9ߐa8.zYhs­.aҤlxꐔhDP+PګpabqS|Nq}L(ylGoAh2bhj ԓQp I4@ 3@y1m?}j mGQőlfg623^{RA|jáၱǟw*j i6)SwAR!Mїs5`F;,D>? 肉, $h_Ş_[ܝG7g! }d0;Qx~Հ1xɊ(>p{t%c=t kio,6]=Z4ٍE #[J$Ippp` -4 !.` BÞYNߙ$qI"۴\~AcJyp%=X@ ;߃D *ݍߌhŋ|7(d$VCI*ÅUTB](G ]>',`g_a@m@9^ޗ>"QA@Ot0Lo :KdӛHX )D˚4rO{մ9fMw]4LB `jkA  R"c+|9VY`^\662g3©7. ^pQ>HG..*C=WYi_M'նoT!Yƕ6Uq~$t'DH0Lv&Y*~Z&mJ/9n4a$]Cm(r],%BHD^m˄f~b˜$uD s+Gxx+ W[Ì}Xu2U='$ pMӐDMvX>x;G$my*>P8M 8"_;2,_x산 DԆ,#$pI_@o_]jj" +b%2Je(-R@J;'!K K1{"OnTպU󝅁)E^pLT {.%FU2$}I¨sr;CI 7n"FUlDL&%Rx 쿠{ 'Mr#³fS_gN熘?f ?S瀚l5{Me2ҘBSWeR/y]S!Ba z#Kth՝J3%I%#OI%32?|Y<Ћ;!\@7Ж2&鞏b%qu\Af)CWңWGTcn,%6+6Xb,%J:cA`rɿ9J,VdRP7py1W2 rTW;Ox18^N٪3(4"ڢimj-wС&/NBmlJˌ”&ڢzPiOzb Sr ڞM # ϺevW6l\<ǏښW_{+~Ԩm=(,ԎY]V`IzI`|HU6YK!э(X 4[_R`l\ۨw|8U'KwqCV XZ]4!FS|2DJ0X-T}M.}m#PA 1Ў_4ekuOgI.ϻtL [@N6 xPgS,gXŴ*~D_(*@"A 1SbnPQ/wtucCIlajטܜLOtp,چGڛPavYD1̴ Sx[ ͍G -0bCۑu*~BgwĒ3:Zamγթy'9w! %㟘)b䁪=0mF6tQzf_6EvLS*g"7o/>bu'첒8Ã^+$ZIxNPFD=v" u:a6A&2^·]Y=@jbVI#9;Hr:2>ZKL8DD6hx=Aإ9o6sk$n9{dΡޡxy9 !'T)L lG2I>ÄCS 2.F6pzð_Ou9+"҄ yFENh1,48$e%Upz{X'0h*ܩSRMP^&aSٔ&Ҽ[,R >HZS9LQEw2ALYT* ;jkPDF26d3V$hEDK+9 f\6j 9ZZ5WOzU|_Փw,4};Y@L$hhU5]Z_Gye"Rq6ąٶ`[E.@(vz,nmoRmQO>~&#HὐJѱȿ tqճXv&+~@{GDz 'VSخFm<^^B\#.>@B$Fků_ ȕ:U([}py_$Yw16Oaޓ{"XQ; l) B/&/|sUA}e 4Z:;@:ˮItr͎ɝ2fAJamXRܟCWk(Z/CH1[qi(it@}W^{|s,O i'Q:sb%Y}mv8x̫+9t^'D[G$OЯ弴:vkh6WxjDu[X|269[wO( ՈO"yns eRS? jI =U/a!πQ󫋶8p(qª:3D$<9. BHy&pJYJ=m0`p ¼( X-~5Fa+ֹ '%x4E7]fxIȦĮϠix*X.||w\-azDm#j@r*!j!ccxBjNb$3!wluz۩%f[Cdx 3Mx4;20Z2c'a< :sd C0͇DiaCcmM : b2z9?}K6ZDf+|viU*I>I,i+:X=(+{80?bƺѣw^yQK .T0`I3@A6Vᨒ,y"GȂAFU?" `eN>ǿD`'˒Z?9rCݗXԒwg?`,l-wnBu+n?cGK ~UI7 nrF87|ENb)xʏr010Ғ3LntEte;.L mt,5/nHI;"h3qAp῾jW8/cǖy'›~zwt6s1\ST#$Fe'ހs@±ΰ| 0"`Xn>P+u_\fxkLuca! sY`ʿ~b[KW]GVoZ;#<sҁQ壐V bC_m4SA|ƅك~a"f`Ami_3&]E8a\٭D4OŊOQg&l(ojVĮ1+ =bp2#u=gqtGFʽ7 kfYaϕ %UO#/`Ճkfڇ m }lJZvJj"v7(>"W]mwUiQi5.(jK~0<ړ2%, l%wC]$ױӜ"f2pl~r2nu&[Z W[ì ?TՅ?m2 Z)k܄'( &sLsf iۡ4qm5D# !q@;-ϭAL/&" h y :(qHx3mx!A8k ̣/+Q$tc0"e' fs ^瞮q/d.ap&gInM,˦2hz0o/|t1Dy))W61kGLvY}uz|TCSЀK1ms#^w 7#Q=RIrw%@9Q{eonPrgߘqfv[PxfL)nz_dqXb[M>sBA%gJQ[Ud_n&B5Y#+@IFr7&Ļ)L(7LD~y.VT<ﲭw4`󗀶)ڏ)FJ 9~Qxme:[@I$68B獟:W%) ڎB2yYCZ>" 6Mj[o>k !z,'JAp}^*R(24p[VWSbhPJjI8Rgp34 _=wl%[4;3"@ mTeϼRatadeJD|P؅s4ø驒}!F$SMS)mG}4W}E-jHRA [T5ļF2TW(5٧"5SLR">dM/^"ɣ2jB3 wApV=ʰ ^,%zڨN]˴0ʳfj|( &.ܮ7Î;+dij*h\hwtMkUf2l18fEU95"-}?]^CsR1@4NTۻ9B)NA^5-MRsk)MGκ %4:8S4lt 7^\ }dO-Ȧm&*ґr5b2a*Ыirx3Y\$թ#N;h+xR^j͗L}jZU4a;;κqhHĞu:Cc:eQf~xq5KXݔ="L3ѮKz"|qv8U k2͋7H1$kb\ ㌎οCZgb@^w=@ PLHSV ]A9BtGMӫ D{igx䌄L #ZX!ŀ2)r0ЂKp9LPa+cho&^-]͂IEufTpj q^B \ +2j{Uq>cYK;wk`pn5`+*AND 8O}ma0Qʛ|%V!/H #NdY kHTu3%7&_2iϘ:͓Z e⊃D]MR,A͐yxD?9ŋZAke3w6POrǐĉ 9>q 82!)y nX̘e#c[o0>鶜S7$rs^a@PNwQ\l8[Ԡb?eoQK4Φn7zuA >mXK\麞KBimNa;pZ)l8~ݐEDe0(q*R,OX[ŜU_~$iPm O/A';t#1 :>"/ٽP [t YZ