openmpi-devel-1.10.6-4.1<>,[Z4"/=„YcP!mW-48;,-4rT*8Kho=3a{p نX@CR,SQ$PaT"mhǁFE]!ЛT &).r"_ `F7KJkn-Ǎݾ*p3"9he4m%Jb?w5zmgiߠHBr6::B@[zn{A:ҺP," r5mn6/2ct 1-}>:M?Md  + 28@H`H H H )H H H0HHH<`$$ҟ$(8[9X[:٬[F%G8HHXHIxHXY\H]H^ *b<cdUeZf_lautHv"w0@Hx=`HyJzMCopenmpi-devel1.10.64.1SDK for openMPIOpenMPI is an implementation of the Message Passing Interface, a standardized API typically used for parallel and/or distributed computing. OpenMPI is the merged result of four prior implementations where the team found for them to excel in one or more areas, such as latency or throughput. This RPM contains all the wrappers necessary to compile, link, and run Open MPI jobs.Z4"lamb07qopenSUSE Leap 42.3openSUSEBSD-3-Clausehttp://bugs.opensuse.orgDevelopment/Libraries/Parallelhttp://www.open-mpi.org/linuxx86_64  J N9( Yk({H P xh #Karl0z> *P)  5wM0+!0="&8 sL  G9(xp&j Z IM3fhT0 35,8.U&t ~n 3Q#U*kYhF jn!J * ^!d0  F D GA6 D_ U XA6 W Z 1sH, v]j +88+p,M^u, s'0WLPU=l~: ab', ;unMS+Bl h~. hTm&Zv >I=M1cg ( V{0{m. ,,v-.-,--+)**+67344,c,\[> v|H.*28(+,9 0}H~ m , ,rak }C #. N,,'2'E d HJf.9<7HA\nO7,<7[k90 h),\E~0=;),XID38wd|-_ - &[` , ?ET,,-3$^qB4[Ly$+++P,,p C0..- .7676+-//56+7-6)..+-//56+7-6),----///Y9t54+-/?/564+7-6)**2///,5.--+-/*/564+7-6)**2+-//56+7-,5.--+-/*/564+7-6)**2pw----<,.. y+- ,   l+ _- (** -.1*,,*T 7XB.3D_ t T)}A큤A큤AAAA큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤큤Z4"IZ4"\Z4"[Z4"\Z4"[Z4"\Z4"[Z4"\Z4"[Z4"LZ4"\Z4"[Z4"\Z4"[Z4"\Z4"[Z4"fZ4"fZ4"HZ4"_Z4"_Z4"gZ4"gZ4"gZ4"WZ4"gZ4"gZ4"gZ4"gZ4"gZ4"hZ4"hZ4"_Z4"_Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"hZ4"hZ4"ZZ4"ZZ4"[Z4"ZZ4"hZ4"hZ4"hZ4"\Z4"IZ4"IZ4"IZ4"IZ4"IZ4"IZ4"IZ4"IZ4"IZ4"IZ4"IZ4"IZ4"IZ4"\Z4"\Z4"\Z4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"NZ4"\Z4"\Z4"\Z4"\Z4"\Z4"\Z4"\Z4"\Z4"\Z4"\Z4"\Z4"\Z4"\Z4"[Z4"ZZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"VZ4"ZZ4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"OZ4"PZ4"MZ4"NZ4"OZ4"OZ4"[Z4"?Z4"CZ4"VZ4"]Z4"VZ4"ZZ4"[Z4"YZ4"YZ4"XZ4"OZ4"qZ4"\Z4"\Z4"\Z4"\Z4"\Z4"\Z4"\Z4"HZ4"fZ4"\Z4"\Z4"\Z4"LZ4"\Z4"\Z4"\Z4"AZ4"_Z4"_Z4"LZ4"_Z4"_Z4"eZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"MZ4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"]Z4"[Z4"\Z4"[Z4"\Z4"[Z4"\Z4"[Z4"\Z4"[Z4"\Z4"[Z4"\Z4"[Z4"\Z4"=Z4"HZ4"_Z4"_Z4"_Z4"_Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"ZZ4"ZZ4"ZZ4"ZZ4"ZZ4"ZZ4"WZ4"WZ4"WZ4"WZ4"WZ4"WZ4"WZ4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[Z4"[c04f4ef3c7ef59feb19ced2acf0a258b3759ca93f1ba66fd6182cab958fee926064cb0fb03852d45495e0e1aecfaf6044416a4abe006219905e5302756505a3ce1053c97efea28fed1a115b91a39b44bd6be79cf7dd18c75b3372f184a98f2fa49f320375ea5f034fe8ed05335eca97936f1fc2c0e4ac0190ad2aac7c16ee3f403a257048706589d824ba89622b31f4af31d19bbce93c093d05d081f3a3efc4517cc5a6edc66e8f49f4e7d6abcbb495c562379bde1e86e16f94e35b1bdf3fbc0fd39dd05321c32e1a45fe9a25ea59f619e138c04390150b31fbbd793fc60f467729866f15a0843c0ec5867849691770cfef884a2659be8a6faed7fc64bc5b3e49cb2be9c426e8f6f3228fa892e02ce65e56b6244795cebe1a581cafed22eb5f3ee7ca9c4f974ac562281d297530444dcfe8b94da06d7374840c99797a916ec3fc0b51a9ef5bda0de6ca0263a960212c35378ae5b14555e2c7f045ab546319a3fb1999388b0d3b26ef27eda7f8055647cc6b1ed81c028891b08cc386ec978477535293a2679c713cb08a737b3d94fc46b4e61024d60e00ffdcc4b7b63be7c01515740bb3a0ee4f120a8bcaa9ea0f1e9f686492370aa17464fd3988a5b29710ec1482ad1f2073c815ee3d28a2fd42330cebaef057527b8bb0cf76feade6c7d50b6c25cb8090c9c6a427bc5dc752974da03bd516f831e589face787d2dc00984046488fd6d1d7ffa7fa7e90717cfc3305a61dc9f82cbfa957e5a7b04213fc64b0387c25d673c75a14d1ae876e8935a456258a8186ff15ddf9884d5bc2ba5ac2f1b53ef8086ed15e048f711c523e98e175a1e0de898ae632261f60c5f1a5ec3b641572484cf0942c660d017bbcb52011a2e9b6c8f3c7887160cc74badec22ef4044b640e7bc27d2d0fba205d585ac4a818aff3a86c9e56a99f147412f0fba9913a94d33b74578cdf6f72e2e8a317aecbc08867430db4d8a89ffcace88ae65a5d03e7834cb11d70d000ab1dabe693be319b350246e9b81b7ed6ce80291d2b5734af76e1ae57a6d19e9494c800d2aa3df976302852be0924daf21af33c5c5a4d3ac9db6eb7afade08a05309c05e5e2f9cda9a97c8ecd22579ef9603ac35e98dc465f63369fb97ab015f354fb5adb46924f76d6efe894eb450f56b1011c8729e5ef70ad32b0380f603fce4660f628664183473df2f01dabad2deacd9a70659bef34178dea4c8d64afa72b50ed745d8f5f36c4d3bfa68ff93e29eba4163c4cc22cd8f3dc7966f4b5640943f2f9c53b1693e72cdf6d24ab19058dbfb1e55d315becb9c339312c9f568f12406c90ab31c3dcdf2ee37aee44b1e6f993dd9536473927feed93605caf72b3599e9dde0fc1970e804cd2ea72150fc0b37ca3e4ae44ca133e29700f3976ced26ab5fd072f7677bc6bff51525010c45066047861fc6c1944a0c6917596f10b00d8ae855cf7f39efafed7d18807c1ee92ef7c19626d4f3d30c07d5fecde8587d15597192c026fdc701c886b7883db6cb01224d6c942dd8ab4a98e78234b7fd5864407b7ff6fc2ae8a1544569889e07ba960a7a05fb567969fa48859b8a47ded357378a7dec5f5cfd9203a29a449b8ba1e93a0c0d2f3ec5b35f30079d5b3faf3d8069f8dd0b86d2dde8eef2c4429a1459585a9b66a306d28b18ad7e67b26f05f773b86690239db083066b304e1836876124dc3ef33134837e2c950605cf58562109fd57fc10218e088e7ba4f76f32629303889d80ee2a2b46a29813b21f5df3c8e386826a543fb9faddfbd4355aa34fca2cec46f2f374a7d00e975446a374780fb6626083b771e83cc3ec902ecad5f9b99c1dc9bda43c1f380205bc999d215ac5132a74d2504d3f58c281191f46404edc74897925aec4bdc22a6b1dba2f180f39374ae89a0b9ab1641627f8e1bbe0b253c7c158dae0e19488ad440d4d162a755592abf028eff114567ef396a2a8a3eac65d33f6a89fbab171c04e4dcbcf580f954b6e89dc3399aca66191b46b02f8ad699779af3cbffee00e71247df9063f2990cbe0ee991703818b0e68ce38cc5eec7e36ec1d18d3f7792e2ccb9d5b54c9023c0cc38cc6f4997b7c8fb11ad08ff5e868cd7137ac1d849d6018c5b81c34264b2a16de20f854ad4d5e0380de9eb3e9be4096aaec91ef4b36a596009a705cddad2aaa3e920d6185e6d8dad60d6052d69df435dd988217d5fb1086be499ea9b542412938221fc65a4992bf7254eabf5f8c9c92c35c330082f100f2369b0adaadf8960360e89af89b130d941894fa6398fa983cfec53ff16910c163f1faacf44c65b92a143bdd218e055d928f4b789e23a644a2c20a30fe2ead5eb70380335271a3d4e24208c18c89b891b760add4bb9a98fc220bd098d0ba9c1c23d6dc15125314cae83b56f29594b30ac416bfd62531170c50768c0861aac8dd739be462383e18a0ce1c7489b55a5b6b6862bb5551d45594ae28dbf8f9a0d208bc47243791bf3593477fae9f5826d63b5e5d556f2bbe1c1a77027bc465259bd51aefdc19cb2f98665b4cfb86eac441ae2a786124dada793b7f7b06793f90d7adc7f757aaa8cd94fd5c984f4f6d0af39ce3c1cb5477896ee32ff42ddd9a1ab2a8d83e146aba075f0d0ec85da829debab725f5456bd8ec8a42ad64a8f8dda52f1d922e9306107247552efd27bd8c7130c3eb1008a1466c11af0a4606f4b3bde9c6dc2964df7f55716bf2d9db8e3e43f4961de7aef59d59687d89fc02def5fb18ef925c1dcff34223dcf311be1a76bd0d4cb0817d03be255bafe63f4e8199437644b8c405fd8c28ef979f24c40023f894e4d4b3678ff34223dcf311be1a76bd0d4cb0817d0e405a5490b30aa5f129c82df220abc52362f85d72f733be2d0122993ad50a6c8920019f432dab650132f30b7ef204cc1ce492bfb31e36fd80a71d684c3d90f197930ff7ce5f30549c2d65cb028ab4416d0790573321526e81645f4ae26f59796d0790573321526e81645f4ae26f597966f9c2b5c2f98947d473bfa69ce9c016513cc294db7a0b272b21e66e8890bc411c62ec6dae047c962a6a3153d3cf260cfd657283638850a239defdac2fddf662d7930ff7ce5f30549c2d65cb028ab441628d27acbf947332f5dba1bf11ffd37842e5993d532697842a8bcdf14900e86e9206adf1289c90b7838681039b5e37b5f513909100946e02c96f4407d88e01b14993a7ca92c819e7708c79a7f822c45a5a9e918a30d6f15bbcdbeb1734708e829820bb34dda32d9b9048b06739439fa96302e6f4acfabf99b992a6e4b739570e0a53de19f761919cc46716f9dd02f423a7090ae4a29b0e5cc735e40eee81a9840cc3233dd8a356abe3f017953cab7ce4e0e99e85336883b16ce98fef4b89eb7230d727cc29a4ffcc7e6cdced07552d2c5a845f93c5ac6ebe20564fa574780a1acb449641699e7010eec5ccd006d69ce6891750ae95995dd2561e37a15ec53791f57c1fd4b327add6e9e26cd80376c38d66a686527b9ac2167ce5f8cd2e2ae2ee069c556a4797345cac8e4744d67e226ecc1a0dbb988d1f8273708414154a627cf295c06cdfcad2916cefe11d5cf46eb82ac649ef7a2ac1da1cd95e6837f37694a6884ffc6e0d36dea91784617d196e5ec9dd1ee1e37df75412c431f7bffd8d16cdfdc1ff2229a1abfb46bb587466a5e8e7cffc61d0d4072dbb1e5ee0f8c56f9e5d816878826cda7eb6354d4004e2389629ca2bef295913663bb39144a0d250c18cc22cc8cddcf5ca43eaf9fe914c3b47775cde0495ee6fbcd9cc252602c7c3e7048e460451dc070345dd1bb6cbf06c6adc35d190068a37b12a50c58e2c1c41de836681c611af751b4e3065e73db2a01dc3bd017b6babc6caae065cdcb54fb665d24dd74ac66637e7d27faf5cf72420902c7b24d04d5eb8fe3108f9319803d84ee790d6b5a08d918f57246e524985cfb752f988eb459fb4a2ea252af72991d6602dcceb0d35115a6f8706767f56e0bc3ba1209e47033298ce5cc134796c6f212cb5a9502d434977fb450fcf2e8a7dbcf89f67c4627e9faf9e9d0fef37aabef85e3c374480a5a4a300323918a83645a82e69df587bc05bf11ef26062710c60f716e84f6cf10103a8a5d61bb3aff648abab49d5243d300eff94f70ee47f39bd75efd3033b469e5cfaaf8f572d5b6dc45bda7c868694e8004c19475fb1c70619fae5b49d3d53a8b5cd659a566a9027e2564a0aee0b6cac036c7b9ea6cf48fee68f9bc94b8382e059c04323883d8be9150747e73ceec74a09e88d876fe5ede733b4785cc4b962d674ba8a04d7afb1e227d4714ae191680812dcaf449dc8b7456f1fb3aeee8708860a4e6ca13ab3b3d3b4aae6bdd824e040887a575a88d314dfa6055a944505d65d7431b51c6f86e6c2b8e96d47f7efcc28f9594fa70fcd4db4cec2af64db55178a6d780b90b768e1968f9c842fc6cab77e78b5dd631a97452559f6fa7af2535835d67decd27443df1ab43cc1432aaaee8080f3c775ec014e2f23fab41d5773968b881fc3b2a4882c7816b53d8bfa0bd58f0641d56acc489cb22b9e4c1c37e76910a5b9eb220d62804142d7f8308aee2ef232f0ffc97bdaed26285431a791bc60bf70b18dd8867ebd714f835bb6eb16e3ceb750949a325f749a7620f3417149f9e9c701d5a3d32e2978feeb814347222494f9b32f2e4026a146b020e5b6ecbac72d6bce2bf2944c391007bcdf56718ed3be7b6562cd35806e52fede71d9bc513ac650175cb312198f7360d555c87b381c9ffccbff39c4dda6c1f090112df96de88137882b9eb62ccfcefced690a344423ee1f4365bea77228c18d16d3ea2e6ad400ea24188b6ab3a5e4183c8cab622f2816c9b13326cc60f7bde40ea399b7a937ac2dd6d5c91b28b2fbff3c5a82030fce01bbb77065c6d1945f36064925a49a645e97b5456bc874bf0622ba4221cf9585b74ff0b20dbf1ec3909706f1a6fab346c289ac21f6de65bddd498b8c454e970ce84047481183790a63f4c8d864e554888854c2dff5115939aad04c4dd5a0e24f5688ac707e8d85a30028a84717221ae4ac4548f46e2b8a5601dd6f69fdbdd4f792c9ced2819e57d043c60e265dcceb0d35115a6f8706767f56e0bc3ba73d9193b2f8473e56f59ff9e6224d0efc4769ab1e260b92957998c8de11d207faa7753b5dbbfcbca3123661d0c42b2ab38de626290b70650b15a4a434af387cdf0550082622f7f8e98f5a63a61e8a6e64e49adca4b592e57010dc636132b1f71434cb053afcf75aaaf9e637dbea5b863455fe39bde216b266005aae5d16c2930d07595c84af1b0616d9ca0df5192c993a46cd4d1a5d17920f005cd59f3f146aae8d344b934a3ffee94f508e2a7b3b90ddd871fdd7bd2d2f06aff39638f944e41fe3807da04388ada8861783456447e5911eb3b265a9494252e18762f7a234d7e12f6f038832081f832db2f3ba08d6636d0026faa0c1817837b98ba4a4c1dd714e346d5e37198ca5f62218ad183038631bf82242c3f47f48be0aa55e86f8b61ea0be001bff431587653dd2a9df5a1c0c9152138bf61e8a347ffcf280d483d230a78805bba4fcef4dc7d0f39f54e6f245748aff385c5fca9a8730ff61655817c45578417959a6e34435fd13a1229b5246078db291c8e33d9a7eaebeaf6ff0cfab71efa2e6f37b8f95097cb755a382ff569c47c2b8de871b87cc982e44f47a71bc38fae3a97874f0f45b51ee10ce64191213136804ba951a5fa94cd30e9fffa364ba9642f5c7229c728d46d612ff735eee042923399405e62c95f96516e8d6a415847f9788665a1fad3a27240b4e021ebc4be98f0602453239c58ab0090c7573f31e354001eaea4ee78a8af99cdee4e3b8938eac684e47ca4a6d164c5143784cede1338dce7bc97d9a23069fac4c913ca48dde5a740f93334bb54799814289a1c09cc5e3f0eb0fcf5698bf822d8d63621e882857da817cac968c2097be01ba0e2f99bb9ebe3b0e21d700e76fdda44d9d54972831763f7deb35a26a5bb3800b1758f64a65123dade3b7d727660ccf4ecb0245ab07b521c909296c95d4b892b95db8f99887c1084ac2b921bbc99d890e9c23ae3180d7b2d0c947b5a0a2e3c8371e89cbbf79c5bf133f59721a9862723ce56a0f004d74fd6219e2ceb26821d41edec46b628911472a61ac5418a43fed652aec51f33bb07bcbd7b0134a1dd741e7eacf4513367eaacde7b28d8491fa1c19ab925d94a7f01e55580ebb29391d6ae003e096610c6d4a8a3b7022e8e933f1bc0345fba12fe70caf727d44d690d102df616ab3542f27d97bbd360ca594340d4feab385ed80ba20f25119ad1582218c477e02ec131e736811eb10e042c97f5fda786b71711bc818468d3b96dcf919329e12986145e38707bcc7e551177ac14da4018204433920dd8adbedd8b0123bd345de497ba8093dbf08019aee1f4c9f0b20815e9ab0f3bb8ceba67f8f568714ba9740ef78493cb8e819c2813aafab65048f3fef3fb20adbbbb8fdbe1ddb65c8d91e70d628e3efb1258ab84037022e7a6ba4bd5258b0af54bbcc6fc7bca5a15d1eb10ae0766b73881897ec0a6cb9e99abe118f5ebf5462ad7bf5f77f02194866cc7ecdb31ad5315b9b72da15a2bf5d9d564012f6ad08a629463a584a046b2580a61ad41716bf257bc13de101306d3c8e5e10a5f83feac53f9b5ece01ed0c2853302392e0a4e978ff68a20f0131229f9fd01ddb21e04d4f14fae819078e120c11b3d5e251131390f28d4f0292ff9dfae6aaeb8e02f2021e5252303c7439d886440eafd08889bbfe2e27aaa1f5f3e83be5a5196638455e2c6cb7f7ef7dc65ed00163cfe80313454ad10d35a1df220f72044817072d2ce914caa056fbe5d2ebd0e89f9dfd827dcceb0d35115a6f8706767f56e0bc3ba512a7ab43a6cf0fe7a9cf2f182b8ccd79068f27b2f42ae7c6db1bdb8a531e912837c72df912a5d03f02c96606f8b04a6dcceb0d35115a6f8706767f56e0bc3bada27964a6c4094176b836bafa72e3073262fc61052a98939c66dbe3c0bff27802da087a8c5802bc3ef7141ec48f95aa5e845fe07aa5f8bebb1565bd07ae3a123efd8681e5f736ec397444347a96cbc0c5529524f8d94f1694f272a0ecdaa6390527991df781b590f601302e8509da786dba9094cd373dd4ea236153bb778a3c73e0ff8a2557ff916dd2fe7f51e2cdeac7f89528333a8622735f4af37365567a7ea17fde7224f9730f798195ff6e7792498ee33a1ece2ba814f8c4abafdf04a6715c5d6b7a8887b28c5ef5135f82b1778114a74c002145f5bbef58ddd39e4759aeb02a533b8addac1f61eb08cd2d12b0f9b26a85b67601347b22ba428724c28bfde66aca202c0204c20550223be80f47297295d5e1e193e67da1473ea051ca7496c8bce64610fad557c5f0b01068b4434ec84d32b1aed9d0ff3bc68852ced91af865ab12f23ca5dec932cf9eb89423abf8cc03d17fb2f6a620cb8f1ba5070f7ac33eeb4c0b3253edc944167746994484e4e259524411ab1a879067cf4e803b19167fa4e5beac49c58327cc6169e5a9384f898623f50801c31848730669d024683bec71b8e1b62e9ed0e10d82eb163406657f6e4a6ab59811b55f8d579455cb063dcceb0d35115a6f8706767f56e0bc3bade321b7e25f193d1888713b12a04399b77c5111362e9235af43f8fc7dd2af06a34ebae52c9c9aaebc16b8fc7512bdcd225dfafae861dc921163036652909bf4ddcceb0d35115a6f8706767f56e0bc3ba5ce53c1b977b4971700603fb18b9758eede87e70b749ae1aa6ac2444d682813c2faa0c3094824dc9119bddd013033165c0106a97af429c6dde5aeb7d460768eea6122de52cd8737f2dfd9dd587fb762a911a23a13d8dce108b9ad7eb8f0976181e30138323e853d2187f71d574671682b68b0469e8a0661ce4c9d003fcfc281f89552df2e519fe755dc19841a6b72dadb48cbb95a747ded6b0d57591bb79f7f9cfdd7a9123ea106e848ced68d50b1872e3e3470d71b055ee8ee7a49dd6453a81e39766154508d3b9b8d44c094436bc6f7791b3db8431a9d8d5ec10e8093fc07a3a81eb203dbe78c835216ba46d69d46b317cf9ce6b410a1ae212606d83e9458d4238dd6c0e2362aac87c5a8ebf399fc8399e1897608de6afbcdbf0ab8af4d205852238df923008ec51e52824d47882237506504404a7598e131ee75a92829767cef73cc887058107f8d0b023c369e0b95659ce7f8742cd8081de4ddf34b87ca19790d7f12b13df9e686d54c6fb02a6239ab09b5394cd4e8287db70736465e6eb5bea8e999cbcf280ecba031999c03e3aa5fdefeeae5740ab7d62b8e6b170cfe2e6c8b7d93d1d325931e276ddc675bd2ea7607d790e6d4ef933cb659d1a8782c0c585604771dc973d5d26cf88de92ec9b5dd780566f98f22e86238dea265e739ea0217ab671758aa1a32c6fb04c052198d82ae6b1976d6a01229ed813a8c3b0a8c163e220f71ffe4ad2ca0badfe58c6e6dcceb0d35115a6f8706767f56e0bc3baea75293ed9a9ce0f8702c6df89639278dcceb0d35115a6f8706767f56e0bc3ba0c0540d74ffa89d13a1b37f5c860c17797e45e802a0a3466f63b6e194d82745636544b15d2e528502f29025acc0512dcd1efe0bc63dcb1e5f41b8328c84e0ee889594beff34c3d5f8f1859e595a4c2c0059395f2285e5b0775e4d8d4391d66f7e3f8e425305a779c5fc0ecf4e50cba100799d580e6d367c63942c31e29c16116aa23e7b6263c97714ceb6d6044f6bd5dc4824063f9d935a64534ae76e3e1296020c92fcd0af7e72303e80429669856cc69fe9bdd757e2778d9b2d9ada10955beff30c55682d5a1b3657b0546ad53a5fe1fa9a32d7476bfdc1a74a45b555a5e9a20b2e37b54a034cd424975a2777caf8b8795dfc46f448b5c2037807d6facc67b8dda8f75d3bc06c11921ba44398ee1c94e6fa9299767c65b2f90562be40d5267e8887dfd1b1c4516d63a701483344dcbdcceb0d35115a6f8706767f56e0bc3badcceb0d35115a6f8706767f56e0bc3ba7fbf546f53379b28d21a5969514a110b3e35adbcf8c5e10ff688f49a8e213be89cc75c49cc5425f324fab2cde9f3b74381c2902efadb3235b0309fcd2a164fac1937dcfea5605c7ac88b40d728fdf0a6fbcc70e3575cdec5f3055f3737f6a140e6748e8a880751e6a23f0174cb1d632d991d6c4df44f6266032baf7c54c602695fced46b94502fcefe586abb493cb33d3c627b9af680533f15a4b5e28c745636d5b580d284ba59022689d7eba8a042f0fb4dd0e8778c514bc4903715312d9738b1bee4b7c4b3df5df07d502dc8bd7b8c66229f622b5f6dfceee0e13b7746e6665801f5a0d16008cb77abab16656ce92f9f3eca3e66516009363d5791ee524326aae9bc3e23b8cded54d368e9eecd5671a31d0914a272953785d20d541e93b310cad72231a16848ef0877dcebe89a004e4fba64fd075f6539322e2af4658b09571f0c527a6532222a8c65c9e2fefd42a4facd7150eba4b02f383cf19c0a089e2afb9a51ea7b817e775137143b14a198c92040100bc55f2ae289a3b0985f4c9bebb07d767fd8c682e8d54d7abfed88b8397c87930fac5314a087a4633d899830f44428ee53a4d8b40967be9394e49ce7afdc04f5e60fbb4ca84660344bab91e9a0d05f526bd0c9dfa5c053d4a1afe3c6333446ae9c822adf9d911c58ef91a06ca9cd0d88a76dbce5ceab8bfe35ed0baf6c7fdcceb84877645e1e97bfd767d489d2c614d200085df0841d0c7b6e2ab14f1b263a58ff25fd6862a24b85ace4dd07b65682a0215f8949e4de49179874009757fa3a2e4cbd897ad36b971558b07441d134b8d9a5810f0055eca89cf8766cb357ee1adc6f109fc0e5b40981dff3e43e6b6a9e013a59cc3be6e153ff04c4963f196609f6438d7ceb12b71c733f4c5493674f57ad914d87eed15233a23d2871039740dfe9c780537d64cb36a6fcdf0436b9f1bc2c6c11eeab5f739ac4a671cb65a231b712bec90a7e0552f89b734666e27c9ccdc4e4495fec15206a9a1032f19048e686d0bf0ecd71bcc124789c5de10b27e37c367e41c510437f5bf5aa7eb9f0aab2c66ac17ce32d26dac5b62b70f8ecc9a4e2072155cf3972dc7f2b870b3ad6daf6e3cd61295ef0ac809e266dc3f87c1a093f596fe787b2fb0cf58bb45be8df02fc54d3ff766b83d75519e72be4b9a05d5fd94badd113361f9bbaf79376aa170c6305d43b33659577b67e974b5744bac3d921dce5a2739472d834441fd14b2c51246a55c95457d1fa4e3262b8c2cb3e3ad54fd1c8fe6cfdde85325d75e8ec9d1dc09924e1846d8d37347b89cba9d0f88cdcceb0d35115a6f8706767f56e0bc3bade9126e0480a67b5aa029b3cf62c46cce85c6df6ebf00613e564fbba80895e6b63eb2a5f5630bcfa0eaf6c50f2973370a3805d7fbc2bc702409ea32119f1707bf5e86b9ff16a0e2f1061063af8d551b29407c5acc3ca8fb244565c150a38c7fdd48dc0329ff2cd3ab532112f8763946b263bf836f843a3fc0a5c43644a5529a7d3425093989aaa05be0e381a08d4e44ae01930b9239f9bc9040ffc0dd87d299c3a39624504e00bf1cc05bce50cadf58afa1aeef6655a074a5d4e536510764c779bd691b8d056c60c121472ef0ddbb0e1a332057cd1f1a0247a93611c45adc7c3435cd4a7a2609103762bf1a8d6f9c2b103b62169c635847daff0eadca04ce64045185034eb2bb7e0a285adc31a268546dcceb0d35115a6f8706767f56e0bc3ba11312c88f2a424dc94db17c6960246819f383ddf971bd9b5b6aa9c8edea49dd4c997de6fc5f3207eb1a2f4dc060251db19043f6f3d9e3d6e89689f361f58bbb3e519ed285d5b82874bdf53a659a75aa3eac7383944b4fec5cd420178e605a106eab665f8e72a61a02265898c20d3b6d0b317aa08d69f3deb88360a173cbafecd9f9835de7a90d7b64e1bd54373353041dabac78bcf18dcd9959559adbc63408cd5a838ad4e593f206caf6626feaf67fc202ad053fddcd861bc1032f76cd2b49a0f795d2356bfa0f9622ca27ca5c10face8e99248cb960af60302ad2231a674608bffbd2398b3ef9a0feb5ab8d01f3e326414afd649c962d1d2434066951faca2d1ae6f0f81b9b66561a92cbb20e3a6d7eb5597fb748e03574792af8338affcac591ef6fa89a0bd95420eab99ae45fc97b789589235173f2f4495fa791b941e8462f224514007dd1dccf8f0920831639b6400bb073b644d239de0ea13564a2033fec9d5cbe3f7934d784669d50a7edd9c5bfc56a04022250ca47e8d08491842d06f8c6cb9cf3807a6141128b39c7a10b7b4c08e97285cabbc392e5313b2240b7850880a1c6ee50f19019f127af6ad8fd3d0ca5d46d7ab9cabc0c4d140a3d16ca7fc3217c8c180791738517454ae58add19b98a666d2a1c58852c13991fe97b02d06a2470be1af6ec5559ddcf50c2c8047aaefcbe5e0d18c7f1fa5f4719ccba16adcceb0d35115a6f8706767f56e0bc3ba59d4002426cc60127ebd5b08054a2e835048ffb9760c11574063c49f12e44913b07db0f7f0805b0cc5b0d41587c825b2a7ea38ef886ae260c14f0960562202ee93e8871fda67de960678d16ed5968562b1da120a0d044c96b8895536ec93314eb0db7982e1bb63c383b340818eb219e8e3aa4cd0b42c9fa468065a503896d9f1dcceb0d35115a6f8706767f56e0bc3baf7bbf44bfb68eccca667f9b09a3a31991eb5adadb6dd8df5c2db6a0ff6987787bccda232068ee33d9dbaafb17057a39d3d744a1aa6e296630b5ed579b8f411b33253bb2a1dced222f4ca09f51f398debc2735996b7891873e3087f113e2d0122e4c4214e88ff915910424a4c88c9d050619728837c4de3218af68b7545fdd56d7268f039cf6e4d5c41c311ddc69ab1d60eb6c3c0ef1ddcdbda02226e8a6b659cfcb47862f1d4429603941270560bdbf1e40b3df8124c8e08cfc91e89b644a57c8e8176f9de9b80c7f1d3e120957759eafcf2bc15c3521ae246edb6474b6c0661b1078301b438a5102636df8231b2721ef8a081ccaddabe2345fc7c27ff38c83105ab8b0b0640a01ab8585baa5467586a23664d5d6fc7712a5524abe1eabfbdd39650020785a4c0d8dd36d297a5e2bf19d445b21d4607a484100e6bd7eec87c67423b5fd80f539438ff804ce4fc4235d79768472c9852ebbbde7fc9ee80fd338ca245a32e77eed62c96b3c0e63a22e2242e17ed6788b7fbb231929d9fc76b6e5b0b626bae2edad888b3e1d0fad601d2a70e23fa1dc70c0abc6a84525a254303810d776e4ef72bc8593b634bfad7cdbe31fdc5fec9b64e0aa26424861f862cd41cb2f39dbaca63ec35e755cd54e71c5b938a0e718e9ac7fa05f3cbae7aaf72d8f5ec850feefc9502c5a0ce4115a3c380cf40c78fa761cc5c9a6cb45c9c03cf1531bc4e86647ce05b89278305112e7201d415739bc174dbbe0a46dd63b3e408c8237da7727c4a32d50ad5cf7b627d16c57a964ca1177182e5caba6e349dd1eba01e15739bc174dbbe0a46dd63b3e408c823667f44e0d4905f9b1005756db9fae7dd7009312b9248242ab265208d80a30f1a05f9d3276529326ce3fa240d1b2d29bf72496a6988038d4fa1748bb304478b36ef6c81b55e11756023fc54e13a3707546e382782521535f848ebe9222c6d3aeae87b36f56b98ce5181cefbfc9e49b4eef41cab0549f0693b8ca4566fddc77e19963bb82de566746cc46c518896e08781963bb82de566746cc46c518896e087819c7ad169a8ace9848cb949b42e47de34e2a1d09332480f64be4af75c546b01f6b5ac232d73f2f5f63fe0731716ac938f49d970df4f516a9e646ee4849c21190b4457c862c118e56a559684ec8138a68349d970df4f516a9e646ee4849c21190b4457c862c118e56a559684ec8138a683f92b7473e2078e767bb14c132983a264e643f218544668cd989968d6555c57706f4a02feccd7a8850e8fc274f934094ac2b7fcae27dfc7c274dcc5d18161815010a621fcafdb64ae60a1aeba582870af9909f1834cb654e491218dbe50fa428bfd9e09beff75d2aefffcaab407e78c9c49d970df4f516a9e646ee4849c21190ba04b5df05f75634410bb8a97cf917e5e4457c862c118e56a559684ec8138a683d4a2127634bc86a520316480b8c3e647b5ac232d73f2f5f63fe0731716ac938fb5ac232d73f2f5f63fe0731716ac938f9b7159717e3cbe764102737ab23ca246c899ce3e9902faa1d84505cac382c237f92b7473e2078e767bb14c132983a264e643f218544668cd989968d6555c57706f4a02feccd7a8850e8fc274f934094ac2b7fcae27dfc7c274dcc5d18161815010a621fcafdb64ae60a1aeba582870af9909f1834cb654e491218dbe50fa428bfd9e09beff75d2aefffcaab407e78c9c49d970df4f516a9e646ee4849c21190ba04b5df05f75634410bb8a97cf917e5e4457c862c118e56a559684ec8138a683d4a2127634bc86a520316480b8c3e64715739bc174dbbe0a46dd63b3e408c823e643f218544668cd989968d6555c5770e643f218544668cd989968d6555c5770e643f218544668cd989968d6555c5770e643f218544668cd989968d6555c5770866e6772b6c1fc5bd66fe93a186402846f4a02feccd7a8850e8fc274f934094a6f4a02feccd7a8850e8fc274f934094a6f4a02feccd7a8850e8fc274f934094a103771b26cf35501b1a598ea7cd1f256c7e687b29579666944ff401933afe64bb1a666bb0e8fbc4f7f6705cadd63e238fe1abf57266877c18d483e8a30a9c806e3cb091516652e1e6386b69bb9f247e866e00de7cfa7dd3758116e30fa9beb86cf5785576d68f5649c87d4e3a17e43d3461082270b4c1cfeabb3cad7f12ee0d6f92b7473e2078e767bb14c132983a264e643f218544668cd989968d6555c57706f4a02feccd7a8850e8fc274f934094a8d6204ee57699c57bd1dc6a570bd4ea1c2b7fcae27dfc7c274dcc5d18161815010a621fcafdb64ae60a1aeba582870af9909f1834cb654e491218dbe50fa428be8ca8c84ce177280d399cef0d7e5db2afd9e09beff75d2aefffcaab407e78c9c49d970df4f516a9e646ee4849c21190ba04b5df05f75634410bb8a97cf917e5e4457c862c118e56a559684ec8138a683d4a2127634bc86a520316480b8c3e64771e50cafbcf7859be444550adf25b16b71e50cafbcf7859be444550adf25b16b6ba92a77c394904f740d3ecf07bc11b0c2b7fcae27dfc7c274dcc5d181618150c2b7fcae27dfc7c274dcc5d181618150c2b7fcae27dfc7c274dcc5d181618150551babec3f18a3785346bd7a027b0038e3cb091516652e1e6386b69bb9f247e8aa064a0518234a6d88279c2e0ce3d237232e74753d8d077a29e19d77fa4d4f4234e994ef5401ac4b690723cab52c6156f92b7473e2078e767bb14c132983a264e643f218544668cd989968d6555c57706f4a02feccd7a8850e8fc274f934094aaa42511a00a53ac464e2516745dab6d5c2b7fcae27dfc7c274dcc5d18161815010a621fcafdb64ae60a1aeba582870af9909f1834cb654e491218dbe50fa428be8ca8c84ce177280d399cef0d7e5db2afd9e09beff75d2aefffcaab407e78c9c49d970df4f516a9e646ee4849c21190ba04b5df05f75634410bb8a97cf917e5e4457c862c118e56a559684ec8138a683d4a2127634bc86a520316480b8c3e64771e50cafbcf7859be444550adf25b16b71e50cafbcf7859be444550adf25b16b6ba92a77c394904f740d3ecf07bc11b0f92b7473e2078e767bb14c132983a264e643f218544668cd989968d6555c57706f4a02feccd7a8850e8fc274f934094ac2b7fcae27dfc7c274dcc5d18161815010a621fcafdb64ae60a1aeba582870af9909f1834cb654e491218dbe50fa428bfd9e09beff75d2aefffcaab407e78c9c49d970df4f516a9e646ee4849c21190ba04b5df05f75634410bb8a97cf917e5e551babec3f18a3785346bd7a027b0038e3cb091516652e1e6386b69bb9f247e8aa064a0518234a6d88279c2e0ce3d237232e74753d8d077a29e19d77fa4d4f4234e994ef5401ac4b690723cab52c6156f92b7473e2078e767bb14c132983a264e643f218544668cd989968d6555c57706f4a02feccd7a8850e8fc274f934094aaa42511a00a53ac464e2516745dab6d5c2b7fcae27dfc7c274dcc5d18161815010a621fcafdb64ae60a1aeba582870af9909f1834cb654e491218dbe50fa428be8ca8c84ce177280d399cef0d7e5db2afd9e09beff75d2aefffcaab407e78c9c49d970df4f516a9e646ee4849c21190ba04b5df05f75634410bb8a97cf917e5e4457c862c118e56a559684ec8138a683d4a2127634bc86a520316480b8c3e64771e50cafbcf7859be444550adf25b16b71e50cafbcf7859be444550adf25b16b6ba92a77c394904f740d3ecf07bc11b01f06e470f5d4f95355980e81175a36b0691a96186edcd491a117f4a8c63bb20ed2aca0b40c33e7cf417a966f1c003cc7b2c4bd1167516e35a71427e48f62f71e9f97f44ed4fee0b19b605478c88e83dba04b5df05f75634410bb8a97cf917e5ea04b5df05f75634410bb8a97cf917e5ea04b5df05f75634410bb8a97cf917e5ea04b5df05f75634410bb8a97cf917e5e41aa983736e87e285ee64a27c1f2cf2215739bc174dbbe0a46dd63b3e408c823963bb82de566746cc46c518896e08781963bb82de566746cc46c518896e087817f272942a4cd91cb2dce5d0058933768552c1b161112358e81d9f0910a96efacf92b7473e2078e767bb14c132983a264e643f218544668cd989968d6555c5770a8f9911e5d2c59b8a66af2e4e41a94706153e55c3b72ff64709164e04a655d0fbc9504355c4e28e5c70e2493b1fa928636414627b2fab28d8018d4d56e7f1c12c9d81d5be39861c9227f73822f799dc6fd9e09beff75d2aefffcaab407e78c9c59a668ddb51b37d883c68531fb46eba5a04b5df05f75634410bb8a97cf917e5e43a9698966190e7f6ccb0e1c184ef63671e50cafbcf7859be444550adf25b16b71e50cafbcf7859be444550adf25b16b5a92c658368cc252871aa74ec1b17cd82c6979e48e309ab4f3f21290b1a8199f9c7ad169a8ace9848cb949b42e47de34ac370abfbe270f9a132ade8c2e9886f7963bb82de566746cc46c518896e087817da88e940ead1891cd470338ac19710371e50cafbcf7859be444550adf25b16b15739bc174dbbe0a46dd63b3e408c82315739bc174dbbe0a46dd63b3e408c8230f01a9abd829425573b4bca844e8d26e46c45db3c59c2c05edbadd1fd3510d444e3cc0049522f99f6eaa3bbd67df356c6932ed9a8226608f5454d2eb7733066f795a477814d919639ecb73ddf343ed2bf4b16f92a3119d5cf875dedce97eb71663271e6b2ed2d7042eec2585fbe7355fb5a123960c771c32aa3a172b8453bd27cc3887c7f34937c90211c534e0a256aef8a604d1e7ce13232dea058b28a8d1bcb5a1cb9705a3952a2519a95b31921492141e09b69b581a5975e7ffa5c81fb5a4220a00f6a4b05e6e4f6700ec054e954e64785e438d7556dc59199c0a584b1fdc09627b72556db075b1c9b144e60b12667fbe5a7189536c7fb50f74f1d7316e20752e4061dbb2bcaad6df58def3dd4a8759efa1d6bf41b73b91af4308e389f1ea6126e49b7f41c2c0f5b904e10742e23461a69878038a071daf6f671597a7cdd6392b9db42a7d0a3bbf8bf6ab4fa30ae6721191b1704da0d2026ad774148d021ba98556ebd267f9201c910856bd361466bb749ea636859f0aced5bb5c2166251aa320026fcc57522b4812dbbd53ae8cd20b68a5102c264a8c5d60fbe2c9a45b97092d3b12ca39c87e752ce10a8c91f18ed7a9c9cd94e5a7573160fd79302c901c05dcd2724bc7203434153861fab919008cbfe60b6feac7f47b41f3addc2a904c59c5a504fee7ff1f509326653286e17efa5c292db1787b604ca8bb3a8b0806e65c012d81cc866776c3e2dcdaad31c44c77120e6eeffec2b6c712b0b0834359d0411b8489f83c74bf418dd671d1944d04opal_wrapperopal_wrapperopal_wrapperopal_wrapperopal_wrapperopal_wrapperopal_wrapperopal_wrapperorterunopal_wrappermpifort-vtopal_wrappermpifort-vtopal_wrapperopal_wrapperopal_wrappermpiccmpifortotfcompressmpiccmpifortvtwrappervtwrappervtwrappervtwrappervtwrappervtwrappervtfiltervtfilter-mpivtwrapperlibmca_common_sm.so.4.0.4libmca_common_verbs.so.7.0.1libmpi.so.12.0.6libmpi_cxx.so.1.1.3libmpi_mpifh.so.12.0.1libmpi_usempi.so.5.1.0libompitrace.so.0.0.0libopen-pal.so.13.0.4libopen-rte.so.12.0.4libopen-trace-format.so.1.0.0liboshmem.so.8.1.2libotfaux.so.0.0.0libvt-hyb.so.0.0.0libvt-mpi-unify.so.0.0.0libvt-mpi.so.0.0.0libvt-mt.so.0.0.0libvt.so.0.0.0ompi-fort.pcompi-fort.pcmpicxx.1.gzmpic++-vt-wrapper-data.txtmpic++-wrapper-data.txtmpic++-vt-wrapper-data.txtmpic++-wrapper-data.txtmpifort-wrapper-data.txtmpifort-wrapper-data.txtmpifort-wrapper-data.txtmpifort-wrapper-data.txtshmemcc-wrapper-data.txtshmemfort-wrapper-data.txtvtc++-wrapper-data.txtvtc++-wrapper-data.txtvtfort-wrapper-data.txtvtfort-wrapper-data.txtrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootopenmpi-1.10.6-4.1.src.rpmopenmpi-developenmpi-devel(x86-64)@@@@@@@@@@@@@@@@@@@@@@@@@@@@    /bin/shlibc.so.6()(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.8)(64bit)libgcc_s.so.1()(64bit)libgcc_s.so.1(GCC_3.0)(64bit)libgomp.so.1()(64bit)libgomp.so.1(GOMP_1.0)(64bit)libgomp.so.1(OMP_1.0)(64bit)libibumad-devellibibverbs-devellibm.so.6()(64bit)libm.so.6(GLIBC_2.2.5)(64bit)libmpi.so.12()(64bit)libopen-pal.so.13()(64bit)libopen-trace-format.so.1()(64bit)libotfaux.so.0()(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.2.5)(64bit)libstdc++-devellibstdc++.so.6()(64bit)libstdc++.so.6(CXXABI_1.3)(64bit)libstdc++.so.6(GLIBCXX_3.4)(64bit)libstdc++.so.6(GLIBCXX_3.4.11)(64bit)libstdc++.so.6(GLIBCXX_3.4.15)(64bit)libstdc++.so.6(GLIBCXX_3.4.9)(64bit)libz.so.1()(64bit)openmpirpmlib(CompressedFileNames)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsLzma)1.10.63.0.4-14.0.4-14.0-14.4.6-14.11.2YYY@X:@XۡXX<@X43@W%W@WW/@W@W@W~W-@W-@Wq@W@W@W VbVV\:@VY@V@UAUJ@U?v@U>$U<@T@Tء@Tq@TT~@Ty@TR(@TPT9T5'@T2@TwT@SuSSl@Sg}@Sg}@S`S_@SW@S=M@S:@S9XSRb@R@RRcRY9Q)@Qb@Qb@QZ@Q3;@Q& @P@P@P9@PPP1@P1@O@O@OfOhq@Oc+@O%4O@N@N@NN@L{@L@K@Ky7@J4@Im@nmoreychaisemartin@suse.comjengelh@inai.denmoreychaisemartin@suse.comnmoreychaisemartin@suse.compth@suse.depth@suse.depth@suse.depth@suse.depth@suse.depth@suse.deschwab@suse.dekmroz@suse.compth@suse.depth@suse.depth@suse.depth@suse.depth@suse.deastieger@suse.comro@suse.depth@suse.depth@suse.depth@suse.dekmroz@suse.compth@suse.descorot@free.frpth@suse.depth@suse.depth@suse.depth@suse.decoolo@suse.comcoolo@suse.comrguenther@suse.compth@suse.depth@suse.depth@suse.depth@suse.deLed pth@suse.depth@suse.dealinm.elena@gmail.comalinm.elena@gmail.comdmitry_r@opensuse.orgpth@suse.depth@suse.depth@suse.depth@suse.depth@suse.depth@suse.depth@suse.depth@suse.depth@suse.depth@suse.depth@suse.destefan.fent@suse.compth@suse.depth@suse.depth@suse.dejjolly@suse.compth@suse.dejengelh@inai.deschwab@suse.depth@suse.depth@suse.depth@suse.depth@suse.deschwab@suse.descorot@free.frmeissner@suse.comtoddrme2178@gmail.compth@suse.deBSipos@rkf-eng.comdmueller@suse.comalinm.elena@gmail.comalinm.elena@gmail.comasterios.dramis@gmail.comcoolo@suse.comdmueller@suse.compth@suse.dealinm.elena@gmail.comjengelh@medozas.depth@suse.depth@suse.detserong@suse.comdmueller@suse.deadrian@suse.decristian.rodriguez@opensuse.orgcoolo@novell.comro@suse.dero@suse.dero@suse.dero@suse.de- Remove --enable-mpi-thread-multiple configure option as it silently disabled Infiniband support. (bsc#1058811, boo#1058750)- Make description more objective- Unify spec with SLE12 - Use upstream git repo to fetch source tarball- Add openmpi-etc-files.patch to update config files so they match files from OpenMPI2- Make dependencies on libs now coming from rdma-core versioned. - Add new file to files section.- Update to 1.10.6 (fate#321475) Changes since 1.10.3: 1.10.6: - Fix bug in timer code that caused problems at optimization settings greater than 2 - OSHMEM: make mmap allocator the default instead of sysv or verbs - Support MPI_Dims_create with dimension zero - Update USNIC support - Prevent 64-bit overflow on timer counter - Add support for forwarding signals - Fix bug that caused truncated messages on large sends over TCP BTL - Fix potential infinite loop when printing a stacktrace 1.10.5: - Update UCX APIs - Fix bug in darray that caused MPI/IO failures - Use a MPI_Get_library_version() like string to tag the debugger DLL. Thanks to Alastair McKinstry for the report - Fix multi-threaded race condition in coll/libnbc - Several fixes to OSHMEM - Fix bug in UCX support due to uninitialized field - Fix MPI_Ialltoallv with MPI_IN_PLACE and without MPI param check - Correctly reset receive request type before init. Thanks Chris Pattison for the report and test case. - Fix bug in iallgather[v] - Fix concurrency issue with MPI_Comm_accept. Thanks to Pieter Noordhuis for the patch - Fix ompi_coll_base_{gather,scatter}_intra_binomial - Fixed an issue with MPI_Type_get_extent returning the wrong extent for distributed array datatypes. - Re-enable use of rtdtsc instruction as a monotonic clock source if the processor has a core-invariant tsc. This is a partial fix for a performance regression introduced in Open MPI v1.10.3. 1.10.4: - Fix assembler support for MIPS - Improve memory handling for temp buffers in collectives - Fix [all]reduce with non-zero lower bound datatypes Thanks Hristo Iliev for the report - Fix non-standard ddt handling. Thanks Yuki Matsumoto for the report - Various libnbc fixes. Thanks Yuki Matsumoto for the report - Fix typos in request RMA bindings for Fortran. Thanks to @alazzaro and @vondele for the assist - Various bug fixes and enhancements to collective support - Fix predefined types mapping in hcoll - Revive the coll/sync component to resolve unexpected message issues during tight loops across collectives - Fix typo in wrapper compiler for Fortran static builds- Remove spurious characters from environment module (bsc#1012380).- Fix creation of environment module in spec (bsc#1011484).- Remove the Conflicts as the packages don't conflict anymore. - Move the plugins (modules) to openmpi-libs (bsc#1003090).- Add a missing Conflicts: for openmpi-compat (bsc#999916 bsc#982458)- timer:linux is only built on %ix86 x86_64 ia64 ppc ppc64 %sparc- Guard files not installed when building without __malloc_initialize_hook (glibc 2.24). Currently this is only the case for Tumbleweed.- instead of adding to the list of architectures that don't build help-opal-timer-linux.txt include it exclusively for ix86 and x86_64 (bsc#990790).- Update to 1.10.3, last of the 1.10 releases (bsc#988787) : * Fix zero-length datatypes. * Minor manpage cleanups * Implement atomic support in OSHMEM/UCX * Fix support of MPI_COMBINER_RESIZED. * Fix computation of #cpus when --use-hwthread-cpus is used * Add entry points for Allgatherv, iAllgatherv, Reduce, and iReduce for the HCOLL library * Fix an HCOLL integration bug that could signal completion of request while still being worked * Fix computation of cores when SMT is enabled. * Various USNIC fixes * Create a datafile in the per-proc directory in order to make it unique per communicator. Thanks to Peter Wind for the report * Fix zero-size malloc in one-sided pt-to-pt code. * Fix MPI_Get_address when passed MPI_BOTTOM to not return an error. * Fix MPI_TYPE_SET_ATTR with NULL value. * Fix various Fortran08 binding issues * Fix memchecker no-data case. * Fix CUDA support under OS-X * Fix various OFI/MTL integration issues * Add MPI_T man pages * Fix one-sided pt-to-pt issue by preventing communication from happening before a target enters a fence, even in the no-precede case * Fix a bug that disabled Totalview for MPMD use-case * Correctly support MPI_UNWEIGHTED in topo-graph-neighbors. * Fix singleton operations under SLURM when PMI2 is enabled * Do not use MPI_IN_PLACE in neighborhood collectives for non-blocking collectives (libnbc). * Silence autogen deprecation warnings for newer versions of Perl * Do not return MPI_ERR_PENDING from collectives * Use type int* for MPI_WIN_DISP_UNIT, MPI_WIN_CREATE_FLAVOR, and MPI_WIN_MODEL. * Fix register_datarep stub function in IO/OMPIO. * Fix a bus error on MPI_WIN_[POST,START] in the shared memory one-sided component * Add several missing MPI_WIN_FLAVOR constants to the Fortran support * Enable connecting processes from different subnets using the openib BTL * Fix bug in basic/barrier algorithm in OSHMEM * Correct process binding for the --map-by node case * Include support for subnet-to-subnet routing over InfiniBand networks * Fix usnic resource check * AUTHORS: Fix an errant reference to Subversion IDs * Fix affinity for MPMD jobs running under LSF * Fix many Fortran binding bugs * Fix `MPI_IN_PLACE`-related bugs * Fix PSM/PSM2 support for singleton operations * Ensure MPI transports continue to progress during RTE barriers * Update HWLOC to 1.9.1 end-of-series * Fix a bug in the Java command line parser when the - Djava.library.path options was given by the user * Update the MTL/OFI provider selection behavior * Add support for clock_gettime on Linux. * Correctly compute #slots when -host is used for MPMD case * Fix a bug in the hcoll collectives due to an uninitialized field * Do not set a binding policy when oversubscribing a node * Fix hang in intercommunicator operations when oversubscribed * Speed up process termination during MPI_Abort * Disable backtrace support by default in the PSM/PSM2 libraries to prevent unintentional conflicting behavior. - Exclude help text for opal-timer which isn't built on s390(x)- Remove --with-devel-headers from configure options on request from upstream as it's only meant to be used when developing openmpi plugins outside the source tree and has consequences for normal users. - Remove files only meant for developers of openmpi itself from the file list.- BuildRequire libfabrics.- BuildRequire libfabric if building for x86_64.- Open MPI 1.10.3: * many upstream bug fixes, improvements, documentation updates- build with libpsm2 only on x86_64, the only platform where that library builds at the moment- Readd psm support.- Sync .changes from factory and SLE12 SP2. - Add openmpi-1.8.3-fix-bashisms.patch from factory.- Enable support for libpsm2. - Enable the use of gcc built-in atomics. - Add otf(de)compress to the files in -devel. - BuildRequire X11 devel package so that the gui parts of openm[i are built.- Updated to 1.10.2 (fate#319241): * OSHMEM is now 1.2 compliant - Fix NBC_Copy for legitimate zero-size messages - Fix multiple bugs in OSHMEM - Correctly handle mpirun --host @ - Centralize two MCA params to avoid duplication between OMPI and OSHMEM layers: opal_abort_delay and opal_abort_print_stack - Add support for Fujitsu compilers - Add UCX support for OMPI and OSHMEM - Correctly handle oversubscription when not given directives to permit it. Thanks to @ammore1 for reporting it - Add Intel HFI1 default parameters for the openib BTL - Resolve symbol conflicts in the PSM2 library - Add ability to empty the rgpusm cache when full if requested - Fix another libtool bug when -L requires a space between it and the path. - Add support for OSHMEM v1.2 APIs - Improve efficiency of oshmem_preconnect_all algorithm - Fix bug in buffered sends support - Fix double free in edge case of mpirun. - Multiple one-sided support fixes - Fix integer overflow in the tuned "reduce" collective when using buffers larger than INT_MAX in size - Fix parse of user environment variables in mpirun. - Performance improvements in PSM2 support - Fix NBS iBarrier for inter-communicators - Fix bug in vader BTL during finalize - Improved configure support for Fortran compilers - Fix rank_file mapper to support default --slot-set. - Update MPI_Testsome man page. - Fix missing resize of the returned type for subarray and darray types. Added: openmpi-1.10.2.tar.bz2 Removed: openmpi-1.8.8.tar.bz2- Really do remove openmpi-external_libltdl.patch.- updated to 1.8.8 - remove unneeded patch4 openmpi-external_libltdl.patch - update files list - list of changes since 1.8.3 1.8.8 ----- - Fix a segfault in MPI_FINALIZE with the PSM MTL. - Fix mpi_f08 sentinels (e.g., MPI_STATUS_IGNORE) handling. - Set some additional MXM default values for OSHMEM. - Fix an invalid memory access in MPI_MRECV and MPI_IMRECV. - Include two fixes that were mistakenly left out of the official v1.8.7 tarball: - Fixed MPI_WIN_POST and MPI_WIN_START for zero-size messages - Protect the OOB TCP ports from segfaulting when accessed by port scanners 1.8.7 ---- * * NOTE: v1.8.7 technically breaks ABI with prior versions * * in the 1.8 series because it repairs two incorrect API * * signatures. However, users will only need to recompile * * if they were using those functions - which they couldn't * * have been, because the signatures were wrong :-) - Plugged a memory leak that impacted blocking sends - Fixed incorrect declaration for MPI_T_pvar_get_index and added missing return code MPI_T_INVALID_NAME. - Fixed an uninitialized variable in PMI2 support - Added new vendor part id for Mellanox ConnectX4-LX - Fixed NBC_Copy for legitimate zero-size messages - Fixed MPI_Win_post and MPI_Win_start for zero-size messages - Protect the OOB ports from segfaulting when accessed by port scanners - Fixed several Fortran typos - Fixed configure detection of XRC support - Fixed support for highly heterogeneous systems to avoid memory corruption when printing out the bindings 1.8.6 ----- - Fixed memory leak on Mac OS-X exposed by TCP keepalive - Fixed keepalive support to ensure that daemon/node failure results in complete job cleanup - Update Java binding support - Fixed MPI_THREAD_MULTIPLE bug in vader shared memory BTL - Fixed issue during shutdown when CUDA initialization wasn't complete - Fixed orted environment when no prefix given - Fixed trivial typo in MPI_Neighbor_allgather manpage - Fixed tree-spawn support for sh and ksh shells - Several data type fixes - Fixed IPv6 support bug - Cleaned up an unlikely build issue - Fixed PMI2 process map parsing for cyclic mappings - Fixed memalign threshold in openib BTL - Fixed debugger access to message queues for blocking send/recv 1.8.5 ----- - Fixed configure problems in some cases when using an external hwloc installation. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed linker error on OS X when using the clang compiler. Thanks to Erick Schnetter for reporting the error and helping track down the source of the problem. - Fixed MPI_THREAD_MULTIPLE deadlock error in the vader BTL. Thanks to Thomas Klimpel for reporting the issue. - Fixed several Valgrind warnings. - Fixed version compatibility test in OOB that broke ABI within the 1.8 series. NOTE: this will not resolve the problem between pre-1.8.5 versions, but will fix it going forward. - Fix some issues related to running on Intel Xeon Phi coprocessors. - Opportunistically switch away from using GNU Libtool's libltdl library when possible (by default). - Fix some VampirTrace errors. - Correct default binding patterns when --use-hwthread-cpus was specified and nprocs <= 2. - Fix warnings about -finline-functions when compiling with clang. - Updated the embedded hwloc with several bug fixes, including the "duplicate Lhwloc1 symbol" that multiple users reported on some platforms. - Do not error when mpirun is invoked with with default bindings (i.e., no binding was specified), and one or more nodes do not support bindings. Thanks to Annu Desari for pointing out the problem. - Let root invoke "mpirun --version" to check the version without printing the "Don't run as root!" warnings. - Fixed several bugs in OpenSHMEM support. - Extended vader shared memory support to 32-bit architectures. - Fix handling of very large datatypes. - Fixed a bug in handling subarray MPI datatypes, and a bug when using MPI_LB and MPI_UB. - Restore user-settable bandwidth and latency PML MCA variables. - Multiple bug fixes for cleanup during MPI_FINALIZE in unusual situations. - Added support for TCP keepalive signals to ensure timely termination when sockets between daemons cannot be created (e.g., due to a firewall). - Added MCA parameter to allow full use of a SLURM allocation when started from a tool (supports LLNL debugger). - Fixed several bugs in the configure logic for PMI and hwloc. - Fixed incorrect interface index in TCP communications setup. Thanks to Mark Kettenis for spotting the problem and providing a patch. - Fixed MPI_IREDUCE_SCATTER with single-process communicators when MPI_IN_PLACE was not used. - Added XRC support for OFED v3.12 and higher. - Various updates and bug fixes to the Mellanox hcoll collective support. - Fix problems with Fortran compilers that did not support REAL*16/COMPLEX*32 types. - Fixed problem with rpath/runpath support in pkg-config files. Thanks to Christoph Junghans for notifying us of the issue. - Man page fixes: - Removed erroneous "color" discussion from MPI_COMM_SPLIT_TYPE. - Fixed prototypes for MPI_IBARRIER. Thanks to Maximilian for finding the issue. - Updated docs about buffer usage in non-blocking communications. - Added documentation about the 'ompi_unique' MPI_Info key with MPI_PUBLISH_NAME. - Fixed typo in MPI_INTERCOMM_MERGE. - Updated configure paths in HACKING. - Fixed Fortran typo in MPI_WIN_LOCK_ALL. Thanks to Thomas Jahns for pointing out the issue. - Fixed a number of MPI one-sided bugs. - Fixed MPI_COMM_SPAWN when invoked from a singleton job. - Fixed a number of minor issues with CUDA support, including registering of shared memory and supporting reduction support for GPU buffers. - Improved support for building OMPI on Cray platforms. - Fixed performance regression introduced by the inadvertent default enabling of MPI_THREAD_MULTIPLE support. 1.8.4 ----- - Fix MPI_SIZEOF; now available in mpif.h for modern Fortran compilers (see README for more details). Also fixed various compiler/linker errors. - Fixed inadvertant Fortran ABI break between v1.8.1 and v1.8.2 in the mpi interface module when compiled with gfortran >= v4.9. - Fix various MPI_THREAD_MULTIPLE issues in the TCP BTL. - mpirun no longer requires the --hetero-nodes switch; it will automatically detect when running in heterogeneous scenarios. - Update LSF support, to include revamped affinity functionality. - Update embedded hwloc to v1.9.1. - Fixed max registerable memory computation in the openib BTL. - Updated error message when debuggers are unable to find various symbols/types to be more clear. Thanks to Dave Love for raising the issue. - Added proper support for LSF and PBS/Torque libraries in static builds. - Rankfiles now support physical processor IDs. - Fixed potential hang in MPI_ABORT. - Fixed problems with the PSM MTL and "re-connect" scenarios, such as MPI_INTERCOMM_CREATE. - Fix MPI_IREDUCE_SCATTER with a single process. - Fix (rare) race condition in stdout/stderr funneling to mpirun where some trailing output could get lost when a process terminated. - Removed inadvertent change that set --enable-mpi-thread-multiple "on" by default, thus impacting performance for non-threaded apps. - Significantly reduced startup time by optimizing internal hash table implementation. - Fixed OS X linking with the Fortran mpi module when used with gfortran >= 4.9. - Fixed memory leak on Cygwin platforms. - Fixed seg fault in neighborhood collectives when the degree of the topology is higher than the communicator size. - Fixed segfault in neighborhood collectives under certain use-cases. - Fixed various issues regarding Solaris support. - Fixed PMI configure tests for certain Slurm installation patterns. - Fixed param registration issue in Java bindings. - Several man page fixes. - Silence several warnings and close some memory leaks (more remain, but it's better than it was). - Re-enabled the use of CMA and knem in the shared memory BTL. - Updated mpirun manpage to correctly explain new map/rank/binding options. Fixed MPI_IALLGATHER problem with intercommunicators. - Numerous updates and performance improvements to OpenSHMEM. - Turned off message coalescing in the openib BTL until a proper fixfor that capability can be provided (tentatively expected for 1.8.5) - Fix a bug in iof output that dates back to the dinosaurs which would output extra bytes if the system was very heavily loaded - Fix a bug where specifying mca_component_show_load_errors=0 could cause ompi_info to segfault - Updated valgrind suppression file- Fix the dangling symlink for mpiCC.1.- Add Patch from normand@linux.vnet.ibm.com that fixes openmpi.spec so that the testsuite build works again (bsc#941626).- Use the distro supplied libldl, not the internal copy. - Add openmpi-external_libltdl.patch to make dlopen_test also compile with external libltdl. - Run autogen.sh again, needed by the new patch as it modifies Makefile.am.- Just include README as a dummy. As openmpi-testsuite is only meant to run the testsuite, the built package doesn't contain anything usefull and in case of test failures the package would not be created. - Make clear that disabling Fortran 2008 support is only needed until gcc5 becomes the default.- don't package test suite logs - no one reads them anyway and it would require latest automake- don't autogen.sh - upstream tar should be enough for anyone (fixes build with latest libtool)- Disable Fortran 2008 module and remove mpi_ext.mod which get built automatically when using GCC 5. Reenable when gcc5 is the default.- Pass a fixed branding string so that it doesn't contain the build host (bnc#916027).- Don't make testsuite noarch as then configure will fail.- Manually delete libvt-pomp.a.- Fix file list. - Add an empty install section for openmpi-testsuite. - Only build with OFED support for 13.2 and up. - fix definition of with_openib. - fix file list for building without OFED support. - Only run autogen.sh when building for 13.1 or later so also patch Makefile.in - Make openmpi-testsuite a noarch package.- fix bashisms in vtrun script: option '-e' of 'echo' command may be unsupported in some POSIX-complet shells - add patches: * openmpi-1.8.3-fix-bashisms.patch- Modify the tests in spec a bit- Only run scriptlets if we're building the regular openmpi package.- enabled threads support - -enable-mpi-thread-multiple - -with-threads- updated to 1.8.3 1.8.3 ----- - Fixed application abort bug to ensure that MPI_Abort exits appropriately and returns the provided exit status - Fixed some alignment (not all) issues identified by Clang - Allow CUDA-aware to work with nonblocking collectives. Forces packing to happen when using GPU buffers. - Fixed configure test issue with Intel 2015 Fortran compiler - Fixed some PGI-related errors - Provide better help message when encountering a firewall - Fixed MCA parameter quoting to protect multi-word params and params that contain special characters - Improved the bind-to help message to clarify the defaults - Add new MPI-3.1 tools interface - Several performance optimizations and memory leak cleanups - Turn off the coll/ml plugin unless specifically requested as it remains in an experimental state - Fix LSF support by adding required libraries for the latest LSF releases. Thanks to Joshua Randal for supplying the initial patches. 1.8.2 ----- - Fix auto-wireup of OOB, allowing ORTE to automatically test all available NICs - "Un-deprecate" pernode, npernode, and npersocket options by popular demand - Add missing Fortran bindings for MPI_WIN_LOCK_ALL, MPI_WIN_UNLOCK_ALL, and MPI_WIN_SYNC. - Fix cascading/over-quoting in some cases with the rsh/ssh-based launcher. Thanks to multiple users for raising the issue. - Properly add support for gfortran 4.9 ignore TKR pragma (it was erroneously only partially added in v1.7.5). Thanks to Marcus Daniels for raising the issue. - Update/improve help messages in the usnic BTL. - Resolve a race condition in MPI_Abort. - Fix obscure cases where static linking from wrapper compilers would fail. - Clarify the configure --help message about when OpenSHMEM is enabled/disabled by default. Thanks to Paul Hargrove for the suggestion. - Align pages properly where relevant. Thanks to Paul Hargrove for identifying the issue. - Various compiler warning and minor fixes for OpenBSD, FreeBSD, and Solaris/SPARC. Thanks to Paul Hargrove for the patches. - Properly pass function pointers from Fortran to C in the mpi_f08 module, thereby now supporting gfortran 4.9. Thanks to Tobias Burnus for assistance and testing with this issue. - Improve support for Cray CLE 5. - Fix mpirun regression: ensure exit status is non-zero if mpirun is terminated due to signal. - Improved CUDA efficiency of asynchronous copies. - Fix to parameter type in MPI_Type_indexed.3. Thanks to Bastian Beischer for reporting the mistake. - Fix NUMA distance calculations in the openib BTL. - Decrease time required to shut down mpirun at the end of a job. - More RMA fixes. - More hostfile fixes from Tetsuya Mishima. - Fix darray issue where UB was not computed correctly. - Fix mpi_f08 parameter name for MPI_GET_LIBRARY_VERSION. Thanks to Junchao Zhang for pointing out the issue. - Ensure mpirun aborts properly when unable to map processes in scheduled environments. - Ensure that MPI RMA error codes show up properly. Thanks to Lisandro Dalcin for reporting the issue. - Minor bug fixes and improvements to the bash and zsh mpirun autocompletion scripts. - Fix sequential mpirun process mapper. Thanks to Bill Chen for reporting the issue. - Correct SLURM stdout/stderr redirection. - Added missing portals 4 files. - Performance improvements for blocking sends and receives. - Lots of cleanup to the ml collective component - Added new Java methods to provide full MPI coverage - Many OSHMEM cleanups - Prevent comm_spawn from automatically launching a VM across all available nodes - Close many memory leaks to achieve valgrind-clean operation - Better handling of TCP connection discovery for mismatched networks where we don't have a direct 1:1 subnet match between nodes - Prevent segfault when OMPI info tools are used in pipes and user exits one step of that pipe before completing output- Fix testsuite build- Hardcode the package name in the calls of mpi-selector.- Remove the line suppressing the warning about the library calling exit and the one suppressing the warning about a script without a shebang.- Move plugins to main package (bnc#887130).- Update to OFED 3.12 final.- Support for udapl was dropped beginning with 1.7 so remove all traces in the spec file.- Include a file only for x86 and x86_64.- Fix source URL. - Fix file list for devel package.- Fix file list for devel package.- Split off everything that is only needed for developing code using OpenMPI into openmpi-devel, including stuff like the wrapper scripts for the compilers. - The openmpi-testsuite package now creates a package that only contains the test log. - Add openmpi-no_network_in_build.patch to not run the nfs based test inside the buildroot.- Update to 1.8.1: - Fix serious bug where running mpi bugs as root deletes files in /.- Update to 1.8. Changes since 1.7.5: * Commit upstream ROMIO fix for mixed NFS+local filesystem environments. * Several fixes for MPI-3 one-sided support. For example, arbitrary-length datatypes are now supported. * Add config support for the Mellanox ConnectX 4 card. * Add missing MPI_COMM_GET|SET_INFO functions, and missing MPI_WEIGHTS_EMPTY and MPI_ERR_RMA_SHARED constants. * Update some help messages in OSHMEM, the usnic BTL, the TCP BTL, and ORTE, and update documentation about ompi_info's --level option. * Fix some compiler warnings. * Ensure that ORTE daemons are not bound to a single processor if TaskAffinity is set on by default in Slurm. - fix ifarch test for intel/amd.- fixed specfile, adopted version to 1.8 rc1- Update to 1.8 rc1.- Compile with PSM support on i686 and c86_64 (fate#315889)- Update to 1.7.4, i.e. a version with support for MPI-3 (fate#316375, fate#314327, fate#314835): The list of features and bug fixes since 1.7.2 is far too long to list here. See the file NEWS in the package documentation for a detailed listing. - Add the files NEWS, LICENSE, AUTHORS, README and README.JAVA.txt as ackagwe documentation. - Create openmpi-testsuite.spec to run the opnmpi testsuite. - Because of one yet unfixed bug running the test suite will always succeed.- Added infinipath-psm-devel to BuildRequires- Create openmpi-testsuite.spec to run the openmpi testsuite. - Because of one yet unfixed bug running the test suite will always succeed.- Split libraries into subpackage to satisfy program dependencies without requiring the development environment- Enable use of GCC intrinsics for atomics instead of custom assembler - Remove remove-assembler-for-armv5.diff- Update to 1.7.2: * Updated default SRQ parameters for the openib BTL. * Major VampirTrace update to 5.14.4.2. * Fix to set flag==1 when MPI_IPROBE is called with MPI_PROC_NULL. * Set the Intel Phi device to be ignored by default by the openib BTL. * Decrease the internal memory storage used by intrinsic MPI datatypes for Fortran types. Thanks to Takahiro Kawashima for the initial patch. * Fix total registered memory calculation for Mellanox ConnectIB and OFED 2.0. * Fix possible data corruption in the MXM MTL component. * Remove extraneous -L from hwloc's embedding. Thanks to Stefan Friedel for reporting the issue. * Fix contiguous datatype memory check. Thanks to Eric Chamberland for reporting the issue. * Make the openib BTL more friendly to ignoring verbs devices that are not RC-capable. * Fix some MPI datatype engine issues. Thanks to Thomas Jahns for reporting the issue. * Add INI information for Chelsio T5 device. * Integrate MXM STREAM support for MPI_ISEND and MPI_IRECV, and other minor MXM fixes. * Improved alignment for OpenFabrics buffers. * Fix to not show amorphous "MPI was already finalized" error when failing to MPI_File_close an open file. Thanks to Brian Smith for reporting the issue. - Modify spec so that openmpi can be compiled without UDAPL support but with support for IB verbs. - Simplify macros so that the build service parser understands them. - Add openmpi-no_date_and_time.patch to not use __DATE__.- Update to 1.7. The following is an abbreviated list of changes in v1.7 (note that countless other smaller improvements and enhancements are not shown below): - Added MPI-3 functionality: - MPI_GET_LIBRARY_VERSION - Matched probe - MPI_TYPE_CREATE_HINDEXED_BLOCK - Non-blocking collectives - MPI_INFO_ENV support - Fortran '08 bindings (see below) - Dropped support for checkpoint/restart due to loss of maintainer :-( - Enabled compile-time warning of deprecated MPI functions by default (in supported compilers). - Revamped Fortran MPI bindings (see the README for details): - "mpifort" is now the preferred wrapper compiler for Fortran - Added "use mpi_f08" bindings (for compilers that support it) - Added better "use mpi" support (for compilers that support it) - Removed incorrect MPI_SCATTERV interface from "mpi" module that was added in the 1.5.x series for ABI reasons. - Lots of VampirTrace upgrades and fixes; upgrade to v5.14.3. - Modified process affinity system to provide warning when bindings result in being "bound to all", which is equivalent to not being bound. - Removed maffinity, paffinity, and carto frameworks (and associated MCA params). - Upgraded to hwloc v1.5.1. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Added support for the DMTCP checkpoint/restart system. - Added support for the Cray uGNI interconnect. - Fixed header file problems on OpenBSD. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Wrapper compilers now explicitly list/link all Open MPI libraries if they detect static linking CLI arguments. - Open MPI now requires a C99 compiler to build. Please upgrade your C compiler if you do not have a C99-compliant compiler. - Fix MPI_GET_PROCESSOR_NAME Fortran binding to set ierr properly. Thanks to LANL for spotting the error. - Many MXM and FCA updates. - Fixed erroneous free of putenv'ed string that showed up in Valgrind reports. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER. - Fixed a bug that prevented MCA params from being forwarded to daemons upon launch. - Fixed issues with VT and CUDA --with-cuda[-libdir] configuration CLI parameters. - Entirely new implementation of many MPI collective routines focused on better performance. - Revamped autogen / build system. - Add new sensor framework to ORTE that includes modules for detecting stalled applications and processes that consume too much memory. - Added new state machine framework to ORTE that converts ORTE into an event-driven state machine using the event library. - Added a new MCA parameter (ess_base_stream_buffering) that allows the user to override the system default for buffering of stdout/stderr streams (via setvbuf). Parameter is not visible via ompi_info. - Revamped the launch system to allow consideration of node hardware in assigning process locations and bindings. - Added the -novm option to preserve the prior launch behavior. - Revamped the process mapping system to utilize node hardware by adding new map-by, rank-by, and bind-to cmd line options. - Added new MCA parameter to provide protection against IO forwarding backlog. - Dropped support for native Windows due to loss of maintainers. :-( - Added a new parallel I/O component and multiple new frameworks to support parallel I/O operations. - Fix typo in orte_setup_hadoop.m4. Thanks to Aleksej Saushev for reporting it - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. - Remove openmpi-sync-builtins.patch as it's not needed anymore.- Define sysconfdir to be below the version specific openmpi directory (bnc#805244).- Unset the system default in addition to unregistering the openmpi version (bnc#810598). - Unconditionally set the just installed openmpi version to be the default.- Add patch for support of sync builtins (openmpi-sync-builtins.patch)- Update to version 1.6.4 - Fix to obtaining the correct available nodes when a rankfile is providing the allocation. Thanks to Siegmar Gross for reporting the problem. - Updates for MXM 2.0. - Major VT update to 5.14.2.3. - Automatically provide compiler flags that compile properly on some types of ARM systems. - Fix slot_list behavior when multiple sockets are specified. Thanks to Siegmar Gross for reporting the problem. - Fixed memory leak in one-sided operations. Thanks to Victor Vysotskiy for letting us know about this one. - Added performance improvements to the OpenIB (OpenFabrics) BTL. - Improved error message when process affinity fails. - Fixed MPI_MINLOC on man pages for MPI_REDUCE(_LOCAL). Thanks to Jed Brown for noticing the problem and supplying a fix. - Made malloc hooks more friendly to IO interprosers. Thanks to the bug report and suggested fix from Darshan maintainer Phil Carns. - Restored ability to direct launch under SLURM without PMI support. - Major VT update to 5.14.2.3. - Support FCA v3.0+. - Fixed issue with MPI_TYPE_CREATE_F90_REAL. - Fix an issue with using external libltdl installations. Thanks to opolawski for identifying the problem. - Fixed MPI_IN_PLACE case for MPI_ALLGATHER for FCA. - Allow SLURM PMI support to look in lib64 directories. Thanks to Guillaume Papaure for the patch. - Restore "use mpi" ABI compatibility with the rest of the 1.5/1.6 series (except for v1.6.3, where it was accidentally broken). - Fix a very old error in opal_path_access(). Thanks to Marco Atzeri for chasing it down. - Update devel package files list- fixed Source0 URL- Update to version 1.6.3 - Fix mpirun --launch-agent behavior when a prefix is specified. Thanks to Reuti for identifying the issue. - Fixed memchecker configury. - Brought over some compiler warning squashes from the development trunk. - Fix spawning from a singleton to multiple hosts when the "add-host" MPI_Info key is used. Thanks to Brian Budge for pointing out the problem. - Add Mellanox ConnextIB IDs and max inline value. - Fix rankfile when no -np is given. - FreeBSD detection improvement. Thanks to Brooks Davis for the patch. - Removed TCP warnings on Windows. - Improved collective algorithm selection for very large messages. - Fix PSM MTL affinity settings. - Fix issue with MPI_OP_COMMUTATIVE in the mpif.h bindings. Thanks to Ake Sandgren for providing a patch to fix the issue. - Fix issue with MPI_SIZEOF when using CHARACTER and LOGICAL types in the mpi module. Thanks to Ake Sandgren for providing a patch to fix the issue. - Update to version 1.6.2 - Fix issue with MX MTL. Thanks to Doug Eadline for raising the issue. - Fix singleton MPI_COMM_SPAWN when the result job spans multiple nodes. - Fix MXM hang, and update for latest version of MXM. - Update to support Mellanox FCA 2.5. - Fix startup hang for large jobs. - Ensure MPI_TESTANY / MPI_WAITANY properly set the empty status when count==0. - Fix MPI_CART_SUB behavior of not copying periods to the new communicator properly. Thanks to John Craske for the bug report. - Add btl_openib_abort_not_enough_reg_mem MCA parameter to cause Open MPI to abort MPI jobs if there is not enough registered memory available on the system (vs. just printing a warning). Thanks to Brock Palen for raising the issue. - Minor fix to Fortran MPI_INFO_GET: only copy a value back to the user's buffer if the flag is .TRUE. - Fix VampirTrace compilation issue with the PGI compiler suite. - Update to version 1.6.1 - A bunch of changes to eliminate hangs on OpenFabrics-based networks. Users with Mellanox hardware are ***STRONGLY ENCOURAGED*** to check their registered memory kernel module settings to ensure that the OS will allow registering more than 8GB of memory. See this FAQ item for details: http://www.open-mpi.org/faq/?category=openfabrics#ib-low-reg-mem - Fall back to send/receive semantics if registered memory is unavilable for RDMA. - Fix two fragment leaks when registered memory is exhausted. - Hueristically determine how much registered memory is available and warn if it's significantly less than all of RAM. - Artifically limit the amount of registered memory each MPI process can use to about 1/Nth to total registered memory available. - Improve error messages when events occur that are likely due to unexpected registered memory exhaustion. - Fix double semicolon error in the C++ in . Thanks to John Foster for pointing out the issue. - Allow -Xclang to be specified multiple times in CFLAGS. Thanks to P. Martin for raising the issue. - Break up a giant "print *" statement in the ABI-preserving incorrect MPI_SCATTER interface in the "large" Fortran "mpi" module. Thanks to Juan Escobar for the initial patch. - Switch the MPI_ALLTOALLV default algorithm to a pairwise exchange. - Increase the openib BTL default CQ length to handle more types of OpenFabrics devices. - Lots of VampirTrace fixes; upgrade to v5.13.0.4. - Map MPI_2INTEGER to underlying MPI_INTEGERs, not MPI_INTs. - Ensure that the OMPI version number is toleant of handling spaces. Thanks to dragonboy for identifying the issue. - Fixed IN parameter marking on Fortran "mpi" module MPI_COMM_TEST_INTER interface. - Various MXM improvements. - Make the output of "mpirun --report-bindings" much more friendly / human-readable. - Properly handle MPI_COMPLEX8|16|32. - More fixes for mpirun's processor affinity options (--bind-to-core and friends). - Use aligned memory for OpenFabrics registered memory. - Multiple fixes for parameter checking in MPI_ALLGATHERV, MPI_REDUCE_SCATTER, MPI_SCATTERV, and MPI_GATHERV. Thanks to the mpi4py community (Bennet Fauber, Lisandro Dalcin, Jonathan Dursi). - Fixed file positioning overflows in MPI_FILE_GET_POSITION, MPI_FILE_GET_POSITION_SHARED, FILE_GET_SIZE, FILE_GET_VIEW. - Removed the broken --cpu-set mpirun option. - Fix cleanup of MPI errorcodes. Thanks to Alexey Bayduraev for the patch. - Fix default hostfile location. Thanks to G�tz Waschk for noticing the issue. - Improve several error messages. - Use explicit macros so it is clear what files go where- Fix typo in the description of devel-static and clean up the spec file a bit. - Don't remove the libtool archive but rather include it in the devel-static package.- Removed circular dependency on -devel package. - Moved static library files to separate -devel-static package per openSUSE packaging guidelines.- fix build on ARMv5/v6 platforms as well- updated to version 1.6 changelog: - Fix some process affinity issues. When binding a process, Open MPI will now bind to all available hyperthreads in a core (or socket, depending on the binding options specified). - -> Note that "mpirun --bind-to-socket ..." does not work on POWER6- and POWER7-based systems with some Linux kernel versions. See the FAQ on the Open MPI web site for more information. - Add support for ARM5 and ARM6 (in addition to the existing ARM7 support). Thanks to Evan Clinton for the patch. - Minor Mellanox MXM fixes. - Properly detect FDR10, FDR, and EDR OpenFabrics devices. - Minor fixes to the mpirun(1) and MPI_Comm_create(3) man pages. - Prevent segv if COMM_SPAWN_MULTIPLE fails. Thanks to Fujitsu for the patch. - Disable interposed memory management in fakeroot environments. This fixes a problem in some build environments. - Minor hwloc updates. - Array versions of MPI_TEST and MPI_WAIT with a count==0 will now return immediately with MPI_SUCCESS. Thanks to Jeremiah Willcock for the suggestion. - Update VampirTrace to v5.12.2. - Properly handle forwarding stdin to all processes when "mpirun - -stdin all" is used. - Workaround XLC assembly bug. - OS X Tiger (10.4) has not been supported for a while, so forcibly abort configure if we detect it. - Fix segv in the openib BTL when running on SPARC 64 systems. - Fix some include file ordering issues on some BSD-based platforms. Thanks to Paul Hargove for this (and many, many other) fixes. - Properly handle .FALSE. return parameter value to attribute copy callback functions. - Fix a bunch of minor C++ API issues; thanks to Fujitsu for the patch. - Fixed the default hostfile MCA parameter behavior. - Per the MPI spec, ensure not to touch the port_name parameter to MPI_CLOSE_PORT (it's an IN parameter).- no need for this patch change-otf-soname.diff- Require mpi-selector in the "preun" instead of the "post" section as needed by the spec file.- change the soname of the internal libotf to avoid mismatches between the font library and this one- fix ARM support again- Update to 1.5.4: * Add support for the (as yet unreleased) Mellanox MXM transport. * Add support for dynamic service levels (SLs) in the openib BTL. * Fixed C++ bindings cosmetic/warnings issue with MPI::Comm::NULL_COPY_FN and MPI::Comm::NULL_DELETE_FN. * Also allow the word "slots" in rankfiles (i.e., not just "slot"). * Add Mellanox ConnectX 3 device IDs to the openib BTL defaults. * Various FCA updates. * Add missing ARM assembly code files. * Update to allow more than 128 entries in an appfile. * Various VT updates and bug fixes. * Update description of btl_openib_cq_size to be more accurate. * Various assembly "clobber" fixes. * Fix a hang in carto selection in obscure situations. * Updated to Automake 1.11.1 * Fix compilation of LSF support. * Update MPI_Comm_spawn_multiple.3 man page to reflect what it actually does. * Fix for possible corruption of the environment. * Enable use of PSM on direct-launch SLURM jobs. * Update paffinity hwloc to v1.2, and to fix minor bugs affinity assignment bugs on PPC64/Linux platforms. * Let the openib BTL auto-detect its bandwidth. * Support new MPI-2.2 datatypes. * Updates to support more datatypes in MPI one-sided communication. * Fix recursive locking bug when MPI-IO was used with MPI_THREAD_MULTIPLE. * Fix mpirun handling of prefix conflicts. * Ensure mpirun's --xterm options leaves sessions attached. * Fixed type of sendcounts and displs in the "use mpi" F90 module. ABI is preserved, but applications may well be broken. See the README for more details. * Fix indexed datatype leaks. * Fix debugger mapping when mpirun's -npernode option is used. * Fix segv associated with MPI_Comm_create with MPI_GROUP_EMPTY. * Improved LoadLeveler ORTE support. * Add new btl_openib_gid_index MCA parameter to allow selecting which GID to use on an OpenFabrics device's GID table. * Add support for PCI relaxed ordering in the OpenFabrics BTL (when available). * Update rsh logic to allow correct SGE operation. * Ensure that the mca_paffinity_alone MCA parameter only appears once in the ompi_info output. * Fixed return codes from MPI_PROBE and MPI_IPROBE. * If something goes wrong during MPI_INIT, fix the error message to say that it's illegal to invoke MPI_INIT before MPI_INIT. For further changes see NEWS in the package documentation.- updated to 1.4.5 - added files to make openmpi available via Modules Changes since 1.4.4 - Fixed the --disable-memory-manager configure switch. (** also to appear in 1.5.5) - Fix typos in code and man pages. Thanks to Fujitsu for these fixes. (** also to appear in 1.5.5) - Improve management of the registration cache; when full, try freeing old entries and attempt to re-register. - Fixed a data packing pointer alignment issue. Thanks to Fujitsu for the patch. (** also to appear in 1.5.5) - Add ability to turn off warning about having the shared memory backing store over a networked filesystem. Thanks to Chris Samuel for this suggestion. (** also to appear in 1.5.5) - Removed an unnecessary memmove() and plugged a couple of small memory leaks in the openib OOB connection setup code. - Fixed some QLogic bugs. Thanks to Mark Debbage from QLogic for the patches. - Fixed problem with MPI_IN_PLACE and other sentinel Fortran constants on OS X. (** also to appear in 1.5.5) - Fix SLURM cpus-per-task allocation. (** also to appear in 1.5.5) - Fix the datatype engine for when data left over from the previous pack was larger than the allowed space in the pack buffer. Thanks to Yuki Matsumoto and Takahiro Kawashima for the bug report and the patch. - Fix Fortran value for MPI_MAX_PORT_NAME. Thanks to Enzo Dari for raising the issue. - Workaround an Intel compiler v12.1.0 2011.6.233 vector optimization bug. - Fix issues on Solaris with the openib BTL. - Fixes for the Oracle Studio 12.2 Fortran compiler. - Update iWARP parameters for the Intel NICs. (** also to appear in 1.5.5) - Fix obscure cases where MPI_ALLGATHER could crash. Thanks to Andrew Senin for reporting the problem. (** also to appear in 1.5.5)- Remove redundant tags/sections per specfile guideline suggestions - Parallel building using %_smp_mflags - Package missing files to fix build error - Remove unexplained s390 exclude, use ExclusiveArch instead based upon asm files list- Include the libmpi.so symlink so that mpicc can be run.- Update to OpenMPI 1.4.4 to fix problems with f90 code (bnc#724941): * Modified a memcpy() call in the openib btl connection setup to use memmove() instead because of the possibility of an overlapping copy (as identified by valgrind). * Changed use of sys_timer_get_cycles() to the more appropriate wrapper: opal_timer_base_get_cycles(). Thanks to Jani Monoses for this fix. * Corrected the reported default value of btl_openib_ib_timeout in the "IB retries exceeded" error message. Thanks to Kevin Buckley for this correction. * Increase rdmacm adress resolution timeout from 1s to 30s & update Chelsio T4 openib BTL defaults. Thanks to Steve Wise for these updates. (** also to appear in 1.5.5) * Ensure that MPI_Accumulate error return in 1.4 is consistent with 1.5.x and trunk. * Allow the word "slots" in rankfiles (i.e., not just "slot"). (** also appeared in 1.5.4) * Add Mellanox ConnectX 3 device IDs to the openib BTL defaults. (** also appeared in 1.5.4) * Update description of btl_openib_cq_size to be more accurate. * Ensure mpirun's --xterm options leaves sessions attached. (** also appeared in 1.5.4) * Update to allow more than 128 entries in an appfile. (** also appeared in 1.5.4) * Update description of btl_openib_cq_size to be more accurate. (** also appeared in 1.5.4) * Fix for deadlock when handling recursive attribute keyval deletions (e.g., when using ROMIO with MPI_THREAD_MULTIPLE). * Fix indexed datatype leaks. Thanks to Pascal Deveze for supplying the initial patch. (** also appeared in 1.5.4) * Fixed the F90 types of the sendcounts and displs parameters to MPI_SCATTERV. Thanks to Stanislav Sazykin for identifying the issue. (** also appeared in 1.5.4) * Exclude opal/libltdl from "make distclean" when --disable-dlopen is used. Thanks to David Gunter for reporting the issue. * Fixed a segv in MPI_Comm_create when called with GROUP_EMPTY. Thanks to Dominik Goeddeke for finding this. (** also appeared in 1.5.4) * Fixed return codes from MPI_PROBE and MPI_IPROBE. (** also appeared in 1.5.4) * Fixed undefined symbol error when using the vtf90 profiling tool. * Fix for referencing an uninitialized variable in DPM ORTE. Thanks to Avinash Malik for reporting the issue. * Fix for correctly handling multi-token args when using debuggers. * Eliminated the unneeded u_int*_t datatype definitions. * Change in ORTE DPM to get around gcc 4.[45].x compiler wanrings about possibly calling free() on a non-heap variable, even though it will never happen because the refcount will never go to zero. * Fix for libtool issue when using pgcc to compile ompi in conjunction with the -tp option. * Fixed a race condition in osc_rdma_sync. Thanks to Guillaume Thouvenin for finding this issue. * Clarification of MPI_Init_thread man page. * Fixed an indexing problem in precondition_transports. * Fixed a problem in which duplicated libs were being specified for linking. Thanks to Hicham Mouline for noticing it. * Various autogen.sh fixes. * Fix for memchecking buffers during MPI_*INIT. * Man page cleanups. Thanks to Jeremiah Willcock and Jed Brown. * Fix for VT rpmbuild on RHEL5. * Support Solaris legacy munmap prototype changes. (** also appeared in 1.5.4) * Expands app_idx to int32_t to allow more than 127 app_contexts. * Guard the inclusion of execinfo.h since not all platforms have it. Thanks to Aleksej Saushev for identifying this issue. (** also appeared in 1.5.4) * Fix to avoid possible environment corruption. Thanks to Peter Thompson for identifying the issue and supplying a patch. (** also appeared in 1.5.4) * Fixed paffinity base MCA duplicate registrations. Thanks to Gus Correa for bringing this to our attention. * Fix recursive locking bug when MPI-IO was used with MPI_THREAD_MULTIPLE. (** also appeared in 1.5.4) * F90 MPI API fixes. * Fixed a misleading MPI_Bcast error message. Thanks to Jeremiah Willcock for reporting this. * Added to ptmalloc's hooks.c (it's not always included by default on some systems). * Libtool patch to get around a build problem when using the IBM XL compilers. * Fix to detect and avoid overlapping memcpy(). Thanks to Francis Pellegrini for identifying the issue. * Fix to allow ompi to work on top of RoCE vLANs. * Restored a missing debugger flag to support TotalView. Thanks to David Turner and the TV folks for supplying the fix. * Updated SLURM support to 1.5.1. * Removed an extraneous #include from the TCP BTL. * When specifying OOB ports, fix to convert the ports into network byte order before binding. * Fixed use of memory barriers in the SM BTL. This fixed segv's when compiling with Intel 10.0.025 or PGI 9.0-3. * Fix to prevent the SM BTL from creating its mmap'd file in directories that are remotely mounted.- Run ./autogen.sh during ARM build to ensure relevant changes are applied prior to the ./configure step- update to 1.4.3: * latest upstream release with many fixes and features * changelog is too long to list here (> 200kb, read included NEWS for details) - fix support for ARM platforms- exclude arm from built, assembler routines are missing and current upstream patch is broken- Do not include build date and build host info on binaries this should save a significant number of rebuilds/publish all over aprox 120 packages and its dependencies.- add baselibs.conf to make boost-32bit installable- chain rest of ofed build-/requires to master dapl define- set a master define for dapl and disable it- drop unused buildrequires for sysfsutils- gzip man pageslamb07 1513366147  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnoprstvwxyz{|}~     !"#$%&'()*+,-./0123456789:;<=?@ABCDEFHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkimnopqrstuuwxyz{z{~z{yy~z{i~z{~z{~z~z{iuu~  wuii !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGH1.10.6-4.11.10.6-4.1  openmpi-totalview.tclmpiCCmpiCC-vtmpic++mpic++-vtmpiccmpicc-vtmpicxxmpicxx-vtmpiexecmpif77mpif77-vtmpif90mpif90-vtmpifortmpifort-vtopal_wrapperopariorteccoshccoshfortotfauxotfcompressotfconfigotfdecompressotfinfootfmergeotfmerge-mpiotfprintotfprofileotfprofile-mpiotfshrinkshmemccshmemfortvtCCvtc++vtccvtcxxvtf77vtf90vtfiltervtfilter-mpivtfiltergenvtfiltergen-mpivtfortvtrunvtunifyvtunify-mpivtwrapperincludempi-ext.hmpi.hmpi_portable_platform.hmpif-config.hmpif-constants.hmpif-ext.hmpif-externals.hmpif-handles.hmpif-io-constants.hmpif-io-handles.hmpif-sentinels.hmpif-sizeof.hmpif.hmppshmem.fhshmem.hopenmpiompimpicxxcomm.hcomm_inln.hconstants.hdatatype.hdatatype_inln.herrhandler.herrhandler_inln.hexception.hfile.hfile_inln.hfunctions.hfunctions_inln.hgroup.hgroup_inln.hinfo.hinfo_inln.hintercomm.hintercomm_inln.hintracomm.hintracomm_inln.hmpicxx.hop.hop_inln.hrequest.hrequest_inln.hstatus.hstatus_inln.htopology.htopology_inln.hwin.hwin_inln.hopenshmemoshmemconstants.hframeworks.htypes.hversion.hoshmem_config.hpshmem.hpshmemx.hshmem-compat.hshmem.fhshmem.hshmemx.hvampirtraceopari_omp.hopen-trace-formatOTFAUX_MsgMatching.hOTFAUX_State.hOTFAUX_Thumbnail.hOTF_CopyHandler.hOTF_CopyHandler_stream.hOTF_Definitions.hOTF_Errno.hOTF_File.hOTF_FileManager.hOTF_File_iofsl.hOTF_Filenames.hOTF_HandlerArray.hOTF_KeyValue.hOTF_MasterControl.hOTF_RBuffer.hOTF_RStream.hOTF_Reader.hOTF_Version.hOTF_WBuffer.hOTF_WStream.hOTF_Writer.hOTF_inttypes.hOTF_inttypes_unix.hotf.hotfaux.hpomp_lib.hvt_inttypes.hvt_libwrap.hvt_plugin_cntr.hvt_user.hvt_user.incvt_user_comment.hvt_user_comment.incvt_user_control.hvt_user_control.incvt_user_count.hvt_user_count.incvt_user_marker.hvt_user_marker.incvt_user_message.hvt_user_message.incvt_user_region.hvt_user_region.incvt_wrap_pthread.hlibmca_common_sm.solibmca_common_verbs.solibmpi.solibmpi_cxx.solibmpi_mpifh.solibmpi_usempi.solibompitrace.solibopen-pal.solibopen-rte.solibopen-trace-format.soliboshmem.solibotfaux.solibvt-hyb.solibvt-mpi-unify.solibvt-mpi.solibvt-mt.solibvt.sompi.modopenmpipkgconfigompi-c.pcompi-cxx.pcompi-f77.pcompi-f90.pcompi-fort.pcompi.pcorte.pcmpiCC.1.gzmpic++.1.gzmpicc.1.gzmpicxx.1.gzmpiexec.1.gzmpif77.1.gzmpif90.1.gzmpifort.1.gzopal_wrapper.1.gzoshcc.1.gzoshfort.1.gzoshrun.1.gzshmemcc.1.gzshmemfort.1.gzman3MPI.3.gzMPI_Abort.3.gzMPI_Accumulate.3.gzMPI_Add_error_class.3.gzMPI_Add_error_code.3.gzMPI_Add_error_string.3.gzMPI_Address.3.gzMPI_Aint_add.3.gzMPI_Aint_diff.3.gzMPI_Allgather.3.gzMPI_Allgatherv.3.gzMPI_Alloc_mem.3.gzMPI_Allreduce.3.gzMPI_Alltoall.3.gzMPI_Alltoallv.3.gzMPI_Alltoallw.3.gzMPI_Attr_delete.3.gzMPI_Attr_get.3.gzMPI_Attr_put.3.gzMPI_Barrier.3.gzMPI_Bcast.3.gzMPI_Bsend.3.gzMPI_Bsend_init.3.gzMPI_Buffer_attach.3.gzMPI_Buffer_detach.3.gzMPI_Cancel.3.gzMPI_Cart_coords.3.gzMPI_Cart_create.3.gzMPI_Cart_get.3.gzMPI_Cart_map.3.gzMPI_Cart_rank.3.gzMPI_Cart_shift.3.gzMPI_Cart_sub.3.gzMPI_Cartdim_get.3.gzMPI_Close_port.3.gzMPI_Comm_accept.3.gzMPI_Comm_c2f.3.gzMPI_Comm_call_errhandler.3.gzMPI_Comm_compare.3.gzMPI_Comm_connect.3.gzMPI_Comm_create.3.gzMPI_Comm_create_errhandler.3.gzMPI_Comm_create_group.3.gzMPI_Comm_create_keyval.3.gzMPI_Comm_delete_attr.3.gzMPI_Comm_disconnect.3.gzMPI_Comm_dup.3.gzMPI_Comm_dup_with_info.3.gzMPI_Comm_f2c.3.gzMPI_Comm_free.3.gzMPI_Comm_free_keyval.3.gzMPI_Comm_get_attr.3.gzMPI_Comm_get_errhandler.3.gzMPI_Comm_get_info.3.gzMPI_Comm_get_name.3.gzMPI_Comm_get_parent.3.gzMPI_Comm_group.3.gzMPI_Comm_idup.3.gzMPI_Comm_join.3.gzMPI_Comm_rank.3.gzMPI_Comm_remote_group.3.gzMPI_Comm_remote_size.3.gzMPI_Comm_set_attr.3.gzMPI_Comm_set_errhandler.3.gzMPI_Comm_set_info.3.gzMPI_Comm_set_name.3.gzMPI_Comm_size.3.gzMPI_Comm_spawn.3.gzMPI_Comm_spawn_multiple.3.gzMPI_Comm_split.3.gzMPI_Comm_split_type.3.gzMPI_Comm_test_inter.3.gzMPI_Compare_and_swap.3.gzMPI_Dims_create.3.gzMPI_Dist_graph_create.3.gzMPI_Dist_graph_create_adjacent.3.gzMPI_Dist_graph_neighbors.3.gzMPI_Dist_graph_neighbors_count.3.gzMPI_Errhandler_create.3.gzMPI_Errhandler_free.3.gzMPI_Errhandler_get.3.gzMPI_Errhandler_set.3.gzMPI_Error_class.3.gzMPI_Error_string.3.gzMPI_Exscan.3.gzMPI_Fetch_and_op.3.gzMPI_File_c2f.3.gzMPI_File_call_errhandler.3.gzMPI_File_close.3.gzMPI_File_create_errhandler.3.gzMPI_File_delete.3.gzMPI_File_f2c.3.gzMPI_File_get_amode.3.gzMPI_File_get_atomicity.3.gzMPI_File_get_byte_offset.3.gzMPI_File_get_errhandler.3.gzMPI_File_get_group.3.gzMPI_File_get_info.3.gzMPI_File_get_position.3.gzMPI_File_get_position_shared.3.gzMPI_File_get_size.3.gzMPI_File_get_type_extent.3.gzMPI_File_get_view.3.gzMPI_File_iread.3.gzMPI_File_iread_at.3.gzMPI_File_iread_shared.3.gzMPI_File_iwrite.3.gzMPI_File_iwrite_at.3.gzMPI_File_iwrite_shared.3.gzMPI_File_open.3.gzMPI_File_preallocate.3.gzMPI_File_read.3.gzMPI_File_read_all.3.gzMPI_File_read_all_begin.3.gzMPI_File_read_all_end.3.gzMPI_File_read_at.3.gzMPI_File_read_at_all.3.gzMPI_File_read_at_all_begin.3.gzMPI_File_read_at_all_end.3.gzMPI_File_read_ordered.3.gzMPI_File_read_ordered_begin.3.gzMPI_File_read_ordered_end.3.gzMPI_File_read_shared.3.gzMPI_File_seek.3.gzMPI_File_seek_shared.3.gzMPI_File_set_atomicity.3.gzMPI_File_set_errhandler.3.gzMPI_File_set_info.3.gzMPI_File_set_size.3.gzMPI_File_set_view.3.gzMPI_File_sync.3.gzMPI_File_write.3.gzMPI_File_write_all.3.gzMPI_File_write_all_begin.3.gzMPI_File_write_all_end.3.gzMPI_File_write_at.3.gzMPI_File_write_at_all.3.gzMPI_File_write_at_all_begin.3.gzMPI_File_write_at_all_end.3.gzMPI_File_write_ordered.3.gzMPI_File_write_ordered_begin.3.gzMPI_File_write_ordered_end.3.gzMPI_File_write_shared.3.gzMPI_Finalize.3.gzMPI_Finalized.3.gzMPI_Free_mem.3.gzMPI_Gather.3.gzMPI_Gatherv.3.gzMPI_Get.3.gzMPI_Get_accumulate.3.gzMPI_Get_address.3.gzMPI_Get_count.3.gzMPI_Get_elements.3.gzMPI_Get_elements_x.3.gzMPI_Get_library_version.3.gzMPI_Get_processor_name.3.gzMPI_Get_version.3.gzMPI_Graph_create.3.gzMPI_Graph_get.3.gzMPI_Graph_map.3.gzMPI_Graph_neighbors.3.gzMPI_Graph_neighbors_count.3.gzMPI_Graphdims_get.3.gzMPI_Grequest_complete.3.gzMPI_Grequest_start.3.gzMPI_Group_c2f.3.gzMPI_Group_compare.3.gzMPI_Group_difference.3.gzMPI_Group_excl.3.gzMPI_Group_f2c.3.gzMPI_Group_free.3.gzMPI_Group_incl.3.gzMPI_Group_intersection.3.gzMPI_Group_range_excl.3.gzMPI_Group_range_incl.3.gzMPI_Group_rank.3.gzMPI_Group_size.3.gzMPI_Group_translate_ranks.3.gzMPI_Group_union.3.gzMPI_Iallgather.3.gzMPI_Iallgatherv.3.gzMPI_Iallreduce.3.gzMPI_Ialltoall.3.gzMPI_Ialltoallv.3.gzMPI_Ialltoallw.3.gzMPI_Ibarrier.3.gzMPI_Ibcast.3.gzMPI_Ibsend.3.gzMPI_Iexscan.3.gzMPI_Igather.3.gzMPI_Igatherv.3.gzMPI_Improbe.3.gzMPI_Imrecv.3.gzMPI_Ineighbor_allgather.3.gzMPI_Ineighbor_allgatherv.3.gzMPI_Ineighbor_alltoall.3.gzMPI_Ineighbor_alltoallv.3.gzMPI_Ineighbor_alltoallw.3.gzMPI_Info_c2f.3.gzMPI_Info_create.3.gzMPI_Info_delete.3.gzMPI_Info_dup.3.gzMPI_Info_env.3.gzMPI_Info_f2c.3.gzMPI_Info_free.3.gzMPI_Info_get.3.gzMPI_Info_get_nkeys.3.gzMPI_Info_get_nthkey.3.gzMPI_Info_get_valuelen.3.gzMPI_Info_set.3.gzMPI_Init.3.gzMPI_Init_thread.3.gzMPI_Initialized.3.gzMPI_Intercomm_create.3.gzMPI_Intercomm_merge.3.gzMPI_Iprobe.3.gzMPI_Irecv.3.gzMPI_Ireduce.3.gzMPI_Ireduce_scatter.3.gzMPI_Ireduce_scatter_block.3.gzMPI_Irsend.3.gzMPI_Is_thread_main.3.gzMPI_Iscan.3.gzMPI_Iscatter.3.gzMPI_Iscatterv.3.gzMPI_Isend.3.gzMPI_Issend.3.gzMPI_Keyval_create.3.gzMPI_Keyval_free.3.gzMPI_Lookup_name.3.gzMPI_Mprobe.3.gzMPI_Mrecv.3.gzMPI_Neighbor_allgather.3.gzMPI_Neighbor_allgatherv.3.gzMPI_Neighbor_alltoall.3.gzMPI_Neighbor_alltoallv.3.gzMPI_Neighbor_alltoallw.3.gzMPI_Op_c2f.3.gzMPI_Op_create.3.gzMPI_Op_f2c.3.gzMPI_Op_free.3.gzMPI_Open_port.3.gzMPI_Pack.3.gzMPI_Pack_external.3.gzMPI_Pack_external_size.3.gzMPI_Pack_size.3.gzMPI_Pcontrol.3.gzMPI_Probe.3.gzMPI_Publish_name.3.gzMPI_Put.3.gzMPI_Query_thread.3.gzMPI_Raccumulate.3.gzMPI_Recv.3.gzMPI_Recv_init.3.gzMPI_Reduce.3.gzMPI_Reduce_local.3.gzMPI_Reduce_scatter.3.gzMPI_Reduce_scatter_block.3.gzMPI_Register_datarep.3.gzMPI_Request_c2f.3.gzMPI_Request_f2c.3.gzMPI_Request_free.3.gzMPI_Request_get_status.3.gzMPI_Rget.3.gzMPI_Rget_accumulate.3.gzMPI_Rput.3.gzMPI_Rsend.3.gzMPI_Rsend_init.3.gzMPI_Scan.3.gzMPI_Scatter.3.gzMPI_Scatterv.3.gzMPI_Send.3.gzMPI_Send_init.3.gzMPI_Sendrecv.3.gzMPI_Sendrecv_replace.3.gzMPI_Sizeof.3.gzMPI_Ssend.3.gzMPI_Ssend_init.3.gzMPI_Start.3.gzMPI_Startall.3.gzMPI_Status_c2f.3.gzMPI_Status_f2c.3.gzMPI_Status_set_cancelled.3.gzMPI_Status_set_elements.3.gzMPI_Status_set_elements_x.3.gzMPI_T_category_changed.3.gzMPI_T_category_get_categories.3.gzMPI_T_category_get_cvars.3.gzMPI_T_category_get_info.3.gzMPI_T_category_get_num.3.gzMPI_T_category_get_pvars.3.gzMPI_T_cvar_get_info.3.gzMPI_T_cvar_get_num.3.gzMPI_T_cvar_handle_alloc.3.gzMPI_T_cvar_handle_free.3.gzMPI_T_cvar_read.3.gzMPI_T_cvar_write.3.gzMPI_T_enum_get_info.3.gzMPI_T_enum_get_item.3.gzMPI_T_finalize.3.gzMPI_T_init_thread.3.gzMPI_T_pvar_get_info.3.gzMPI_T_pvar_get_num.3.gzMPI_T_pvar_handle_alloc.3.gzMPI_T_pvar_handle_free.3.gzMPI_T_pvar_read.3.gzMPI_T_pvar_readreset.3.gzMPI_T_pvar_reset.3.gzMPI_T_pvar_session_create.3.gzMPI_T_pvar_session_free.3.gzMPI_T_pvar_start.3.gzMPI_T_pvar_stop.3.gzMPI_T_pvar_write.3.gzMPI_Test.3.gzMPI_Test_cancelled.3.gzMPI_Testall.3.gzMPI_Testany.3.gzMPI_Testsome.3.gzMPI_Topo_test.3.gzMPI_Type_c2f.3.gzMPI_Type_commit.3.gzMPI_Type_contiguous.3.gzMPI_Type_create_darray.3.gzMPI_Type_create_f90_complex.3.gzMPI_Type_create_f90_integer.3.gzMPI_Type_create_f90_real.3.gzMPI_Type_create_hindexed.3.gzMPI_Type_create_hindexed_block.3.gzMPI_Type_create_hvector.3.gzMPI_Type_create_indexed_block.3.gzMPI_Type_create_keyval.3.gzMPI_Type_create_resized.3.gzMPI_Type_create_struct.3.gzMPI_Type_create_subarray.3.gzMPI_Type_delete_attr.3.gzMPI_Type_dup.3.gzMPI_Type_extent.3.gzMPI_Type_f2c.3.gzMPI_Type_free.3.gzMPI_Type_free_keyval.3.gzMPI_Type_get_attr.3.gzMPI_Type_get_contents.3.gzMPI_Type_get_envelope.3.gzMPI_Type_get_extent.3.gzMPI_Type_get_extent_x.3.gzMPI_Type_get_name.3.gzMPI_Type_get_true_extent.3.gzMPI_Type_get_true_extent_x.3.gzMPI_Type_hindexed.3.gzMPI_Type_hvector.3.gzMPI_Type_indexed.3.gzMPI_Type_lb.3.gzMPI_Type_match_size.3.gzMPI_Type_set_attr.3.gzMPI_Type_set_name.3.gzMPI_Type_size.3.gzMPI_Type_size_x.3.gzMPI_Type_struct.3.gzMPI_Type_ub.3.gzMPI_Type_vector.3.gzMPI_Unpack.3.gzMPI_Unpack_external.3.gzMPI_Unpublish_name.3.gzMPI_Wait.3.gzMPI_Waitall.3.gzMPI_Waitany.3.gzMPI_Waitsome.3.gzMPI_Win_allocate.3.gzMPI_Win_allocate_shared.3.gzMPI_Win_attach.3.gzMPI_Win_c2f.3.gzMPI_Win_call_errhandler.3.gzMPI_Win_complete.3.gzMPI_Win_create.3.gzMPI_Win_create_dynamic.3.gzMPI_Win_create_errhandler.3.gzMPI_Win_create_keyval.3.gzMPI_Win_delete_attr.3.gzMPI_Win_detach.3.gzMPI_Win_f2c.3.gzMPI_Win_fence.3.gzMPI_Win_flush.3.gzMPI_Win_flush_all.3.gzMPI_Win_flush_local.3.gzMPI_Win_flush_local_all.3.gzMPI_Win_free.3.gzMPI_Win_free_keyval.3.gzMPI_Win_get_attr.3.gzMPI_Win_get_errhandler.3.gzMPI_Win_get_group.3.gzMPI_Win_get_info.3.gzMPI_Win_get_name.3.gzMPI_Win_lock.3.gzMPI_Win_lock_all.3.gzMPI_Win_post.3.gzMPI_Win_set_attr.3.gzMPI_Win_set_errhandler.3.gzMPI_Win_set_info.3.gzMPI_Win_set_name.3.gzMPI_Win_shared_query.3.gzMPI_Win_start.3.gzMPI_Win_sync.3.gzMPI_Win_test.3.gzMPI_Win_unlock.3.gzMPI_Win_unlock_all.3.gzMPI_Win_wait.3.gzMPI_Wtick.3.gzMPI_Wtime.3.gzOpenMPI.3.gzOpenSHMEM.3.gz_my_pe.3.gz_num_pes.3.gzintro_shmem.3.gzshfree.3.gzshmalloc.3.gzshmem_addr_accessible.3.gzshmem_align.3.gzshmem_barrier.3.gzshmem_barrier_all.3.gzshmem_broadcast32.3.gzshmem_broadcast64.3.gzshmem_char_g.3.gzshmem_char_get.3.gzshmem_char_p.3.gzshmem_char_put.3.gzshmem_clear_cache_inv.3.gzshmem_clear_cache_line_inv.3.gzshmem_clear_lock.3.gzshmem_collect32.3.gzshmem_collect64.3.gzshmem_complexd_prod_to_all.3.gzshmem_complexd_sum_to_all.3.gzshmem_complexf_prod_to_all.3.gzshmem_complexf_sum_to_all.3.gzshmem_double_g.3.gzshmem_double_get.3.gzshmem_double_iget.3.gzshmem_double_iput.3.gzshmem_double_max_to_all.3.gzshmem_double_min_to_all.3.gzshmem_double_p.3.gzshmem_double_prod_to_all.3.gzshmem_double_put.3.gzshmem_double_sum_to_all.3.gzshmem_double_swap.3.gzshmem_fcollect32.3.gzshmem_fcollect64.3.gzshmem_fence.3.gzshmem_finalize.3.gzshmem_float_g.3.gzshmem_float_get.3.gzshmem_float_iget.3.gzshmem_float_iput.3.gzshmem_float_max_to_all.3.gzshmem_float_min_to_all.3.gzshmem_float_p.3.gzshmem_float_prod_to_all.3.gzshmem_float_put.3.gzshmem_float_sum_to_all.3.gzshmem_float_swap.3.gzshmem_free.3.gzshmem_get128.3.gzshmem_get32.3.gzshmem_get64.3.gzshmem_getmem.3.gzshmem_global_exit.3.gzshmem_iget128.3.gzshmem_iget32.3.gzshmem_iget64.3.gzshmem_info_get_name.3.gzshmem_info_get_version.3.gzshmem_init.3.gzshmem_int_add.3.gzshmem_int_and_to_all.3.gzshmem_int_cswap.3.gzshmem_int_fadd.3.gzshmem_int_finc.3.gzshmem_int_g.3.gzshmem_int_get.3.gzshmem_int_iget.3.gzshmem_int_inc.3.gzshmem_int_iput.3.gzshmem_int_max_to_all.3.gzshmem_int_min_to_all.3.gzshmem_int_or_to_all.3.gzshmem_int_p.3.gzshmem_int_prod_to_all.3.gzshmem_int_put.3.gzshmem_int_sum_to_all.3.gzshmem_int_swap.3.gzshmem_int_wait.3.gzshmem_int_wait_until.3.gzshmem_int_xor_to_all.3.gzshmem_iput128.3.gzshmem_iput32.3.gzshmem_iput64.3.gzshmem_long_add.3.gzshmem_long_and_to_all.3.gzshmem_long_cswap.3.gzshmem_long_fadd.3.gzshmem_long_finc.3.gzshmem_long_g.3.gzshmem_long_get.3.gzshmem_long_iget.3.gzshmem_long_inc.3.gzshmem_long_iput.3.gzshmem_long_max_to_all.3.gzshmem_long_min_to_all.3.gzshmem_long_or_to_all.3.gzshmem_long_p.3.gzshmem_long_prod_to_all.3.gzshmem_long_put.3.gzshmem_long_sum_to_all.3.gzshmem_long_swap.3.gzshmem_long_wait.3.gzshmem_long_wait_until.3.gzshmem_long_xor_to_all.3.gzshmem_longdouble_g.3.gzshmem_longdouble_get.3.gzshmem_longdouble_iget.3.gzshmem_longdouble_iput.3.gzshmem_longdouble_max_to_all.3.gzshmem_longdouble_min_to_all.3.gzshmem_longdouble_p.3.gzshmem_longdouble_prod_to_all.3.gzshmem_longdouble_put.3.gzshmem_longlong_add.3.gzshmem_longlong_and_to_all.3.gzshmem_longlong_cswap.3.gzshmem_longlong_fadd.3.gzshmem_longlong_finc.3.gzshmem_longlong_g.3.gzshmem_longlong_get.3.gzshmem_longlong_iget.3.gzshmem_longlong_inc.3.gzshmem_longlong_iput.3.gzshmem_longlong_max_to_all.3.gzshmem_longlong_min_to_all.3.gzshmem_longlong_or_to_all.3.gzshmem_longlong_p.3.gzshmem_longlong_prod_to_all.3.gzshmem_longlong_put.3.gzshmem_longlong_sum_to_all.3.gzshmem_longlong_swap.3.gzshmem_longlong_wait.3.gzshmem_longlong_wait_until.3.gzshmem_longlong_xor_to_all.3.gzshmem_malloc.3.gzshmem_my_pe.3.gzshmem_n_pes.3.gzshmem_pe_accessible.3.gzshmem_ptr.3.gzshmem_put128.3.gzshmem_put32.3.gzshmem_put64.3.gzshmem_putmem.3.gzshmem_quiet.3.gzshmem_realloc.3.gzshmem_set_cache_inv.3.gzshmem_set_cache_line_inv.3.gzshmem_set_lock.3.gzshmem_short_and_to_all.3.gzshmem_short_g.3.gzshmem_short_get.3.gzshmem_short_iget.3.gzshmem_short_iput.3.gzshmem_short_max_to_all.3.gzshmem_short_min_to_all.3.gzshmem_short_or_to_all.3.gzshmem_short_p.3.gzshmem_short_prod_to_all.3.gzshmem_short_put.3.gzshmem_short_sum_to_all.3.gzshmem_short_wait.3.gzshmem_short_wait_until.3.gzshmem_short_xor_to_all.3.gzshmem_swap.3.gzshmem_test_lock.3.gzshmem_udcflush.3.gzshmem_udcflush_line.3.gzshmem_wait.3.gzshmem_wait_until.3.gzshmemalign.3.gzshrealloc.3.gzstart_pes.3.gzmpiCC-vt-wrapper-data.txtmpiCC-wrapper-data.txtmpic++-vt-wrapper-data.txtmpic++-wrapper-data.txtmpicc-vt-wrapper-data.txtmpicc-wrapper-data.txtmpicxx-vt-wrapper-data.txtmpicxx-wrapper-data.txtmpif77-vt-wrapper-data.txtmpif77-wrapper-data.txtmpif90-vt-wrapper-data.txtmpif90-wrapper-data.txtmpifort-vt-wrapper-data.txtmpifort-wrapper-data.txtopenmpi-valgrind.supportecc-wrapper-data.txtoshcc-wrapper-data.txtoshfort-wrapper-data.txtshmemcc-wrapper-data.txtshmemfort-wrapper-data.txtvampirtraceFILTER.SPECGROUPS.SPECMETRICS.SPECconfig.logdocChangeLogLICENSEUserManual.htmlUserManual.pdfopariChangeLogLICENSEReadme.htmllacsi01.pdfopari-logo-100.gifotfChangeLogLICENSEotfprofile.pdfotfprofile_clustering.pdfotftools.pdfspecification.pdflibtoolomp.hvtCC-wrapper-data.txtvtc++-wrapper-data.txtvtcc-wrapper-data.txtvtcxx-wrapper-data.txtvtf77-wrapper-data.txtvtf90-wrapper-data.txtvtfort-wrapper-data.txt/etc//usr/lib64/mpi/gcc/openmpi/bin//usr/lib64/mpi/gcc/openmpi//usr/lib64/mpi/gcc/openmpi/include//usr/lib64/mpi/gcc/openmpi/include/mpp//usr/lib64/mpi/gcc/openmpi/include/openmpi//usr/lib64/mpi/gcc/openmpi/include/openmpi/ompi//usr/lib64/mpi/gcc/openmpi/include/openmpi/ompi/mpi//usr/lib64/mpi/gcc/openmpi/include/openmpi/ompi/mpi/cxx//usr/lib64/mpi/gcc/openmpi/include/openshmem//usr/lib64/mpi/gcc/openmpi/include/openshmem/oshmem//usr/lib64/mpi/gcc/openmpi/include/vampirtrace//usr/lib64/mpi/gcc/openmpi/include/vampirtrace/open-trace-format//usr/lib64/mpi/gcc/openmpi/lib64//usr/lib64/mpi/gcc/openmpi/lib64/pkgconfig//usr/lib64/mpi/gcc/openmpi/share/man/man1//usr/lib64/mpi/gcc/openmpi/share/man//usr/lib64/mpi/gcc/openmpi/share/man/man3//usr/lib64/mpi/gcc/openmpi/share/openmpi//usr/lib64/mpi/gcc/openmpi/share//usr/lib64/mpi/gcc/openmpi/share/vampirtrace//usr/lib64/mpi/gcc/openmpi/share/vampirtrace/doc//usr/lib64/mpi/gcc/openmpi/share/vampirtrace/doc/opari//usr/lib64/mpi/gcc/openmpi/share/vampirtrace/doc/otf/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -gobs://build.opensuse.org/openSUSE:Maintenance:7599/openSUSE_Leap_42.3_Update/2929ee231d9a325c563bb2ad86c29387-openmpi.openSUSE_Leap_42.3_Updatedrpmlzma5x86_64-suse-linux   !ASCII textELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=8ce32f296e942f88c4db13a32e1b3b59564462da, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=6ca8cef8f92e5b479cafb92873c5d0b0b7313664, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=1e22d25d5206e666282a24fb71ec050facef1db3, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=4ebd912b91e04b64fd403da482191b928227ba07, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=98075d0b119c3fbe79e59f399071a5ec9c26bccb, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=040bedf29282ae9fc68bbd6da71e22814cb98d39, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=5018e060d84b9d726c8eafa18ad7b659930e623e, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=e1d173ace5e9879c615453b5aa1ce3e4d4d78c6f, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=a545448f23b7c79a8b5ebd5b069f8864b956f3e9, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=0be1136de7f5f1c0cccbd11d2f7af41ad2c74a50, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=1d2d6cfaeb73ae6fd4c2b08eb0ad2fce18be63d0, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=cbc4f535a390f265ce23933bd690d01861629967, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=e11eabe7288a2d67f9b438bc838654ed04bb3617, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=9df09430679feb4d15a981988217db8115d74f38, strippedPOSIX shell script, ASCII text executableELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=c90aa667b27135a1f1903fe6d82d6fab7b442c5c, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=cae2fad227adbee775985c5f1976c501c3ec2f02, strippedELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=4e2ae8b411a7d353675bf12156d185978c79944a, strippeddirectoryC source, ASCII textC++ source, ASCII textLaTeX document, ASCII textpkgconfig filetroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)troff or preprocessor input, UTF-8 Unicode text (gzip compressed data, max compression, from Unix)troff or preprocessor input, ASCII text, with very long lines (gzip compressed data, max compression, from Unix)troff or preprocessor input, UTF-8 Unicode text, with very long lines (gzip compressed data, max compression, from Unix)C source, ASCII text (gzip compressed data, max compression, from Unix)troff or preprocessor input, ASCII text, with no line terminators (gzip compressed data, max compression, from Unix)ASCII text, with very long linesHTML document, ASCII textGIF image data, version 89a, 339 x 170$(,3<FViv    RRRRRRRR RRRRRRRRRRRR RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR RRRRRRRRRR RRRRRRRRRRRRRRRR RRRRRRRRRRRRRRRRRRR RRRRRRRRRRRRR R R RRRRRRRRRRRRR RRRR R R RRRRRRRRRRRRRRR RRRRR R R RRRRRRRRRRRRR RRRR R R RRRRRRRRRRRRRRR RRRR RRRRRRRRRRRR? 2=⽶;~UBZ?`]"k%r. 0:))q{ 2E{M53-^ZҔVqE\C6~74߸wܵL˛=YzX]ham+.)0NapaDBYj"CA@ɵFULXyX`|'w"Gܘ]nɠqg]["VW-c ŝKa% ?,-x-t7o+ٍ+H}i!Tpp>z&fC-6zg/ G3uײ\S4D5tm!~V15"|e%s?c Nu˜Ք?WQ={hC,gt.}ctc_&wcnE/XPG pe2h7(maT}K .X,ѩ}S5ԅ:_=BUߝ@muY.}4Gs=mD\zfPIO&IHY]PZ pQ=Nm}Z &PN¤|G&kYx0%7B¢Pa 2v.RjSxjEBhAc% ZpiKDBt e"ڟlJ]EkW+xF|vMbLbA3u>37r>)ƀoJ励a<9'jY񉀉ZxX3CJ!!D%j{Lfh]8ІԞ22fv*e,lqz=n?7>BKg<Q4:i*=xX;FWikyݹAzLr;!GEr/nw5؆'"hz|<H9~KC^|)CMkӓ82Q0ﯶjvl>A)`Z8 RH3#*iz'Vo65A@Ir.|oڦ%w]6xG6V` 6A?Cwb;)3ÐFB8u5ĭ}7KG{:|b39آm<0mT߄ɗj[pwNtF":LUx1;&3 ؒ't`H|tj_Uᜁ_lL%[i'<4aa/qNʮOG촒?zg|ds$C:ev+:)ɲ,{E ARdtEԽn?U\ǓIeCM!Iˈ,m֜&~cPF` #!2d"<\ģUStЉ%2Qw Ɓ_߫+ў5]ޯ>Nu}APn:^MHǺ|=7h}Mt[W DsPs<"!{I !`Mv`TBk[}eIv:"N E 4,&Ϧ7QV4=c=x fg`Pm22¸M$A=/*̕Q_)c!Pcd|y\ҷzNN1v&6{q }+H~tA6R쳀^b]#_Vp z#Mi$5rWԏ=BW[Cw΁/|ARcł >Nyw3+K?TlcRmS5\9y~[CL(u3_eq:oڄ` oBˆ8W),Jg<p^q‚ d/ٟMZ%J3WM9>` Yo8 ֯ ȳ}dz|3^Z D?rP@mi])ˏ~W[Qq9x B};AK'r nDá|^J^ߎҞU㕐,5&A1&2Sp`R5jvǍ{tVABI8= /F"%Y.PdrZYbhDD'*E,J}g^N!.41գzI9슞w#2$=8 &xνz(sD{N|S"n#{..ՈBSAIG89kFI>%nJ&zKac_<-D\j󏘠Qgo,'0G4-'0ik0M#B|2brɮ4_Kv17N,gy艹VqG$4;aŻⶬko޸]p.JmL=bl4xm:)yu ,MyfP`}>/G`ux6@֓a7;a$|OZV-b ԙ jga rkUbčZagpAn_Ј,g9BWqO[K6APW#a`؄8t״\Βۍ7bXH7 @Q_9q1'=bkk6ϗNσsjx g4UŤR5pD|U/)}ʱ>}h+JЫn)VSkV,|Ӹӭh34\tpFCk 0J ӎF<)#OzAwߑ-6'I$* <뎦.?ybB Yr3a+%Xԝh|dKeyzJ"#}ƶ!vmo "/nYp\pzuѠg:f\.Vâ dzV t/)\e.:@7NxL"^D-N#=܎${+掌nRZWGPO*sq=c_3L‚g`6Y5C4:ć{@\v2|ntsUl,sI-^B{68_xi߅ tԜ:=ÁW3x'&{N"96q|z\RF]7)?񪘸س;\+{"UNAYaYw5nG%хG)?z17S"8gzI, _V@Iksv ehT-l~E8tο?mߨ >a222vƭx%e(%DF({gց4(?z]I> h ST_FHW5z!sؽO.( (1zoB\rɔHBN(hxSҸ F` @d`i]ʜЌj }t^Q2(rxkZ|(V&eMHQW ؜< zhR s9մ.P {&Ӡ/ڌJ#wW)vhceĞF?#aùXAhcK@($k^ #UYN󟬸][X ȁx1()y%3J;aK9 >Zۖl7_w>N/6Oƒ6'E.q:[r)mYz$,=h$@e@o7BB*&ڪ2;WP < "1qVHT[Ϛ'#WzV" !$9[A묮|X Jy%dhz/y\jL5~+*`Kk6#8˧Z;ʃ,{wC$ʕ\֥rYC"S2NDUUl r[ wsw&:HD? ;i~ 0HP?F@8 `pwd܊/4qa^M'עczF/;ҽU DY'uP٦):Q}QLpvCL[]gVw)J;q*St#_J ỳhJHLڶJ6&qwXޮs^1k;<8%ޤܧbȁ=yoO oI^ _/WaUoP=G=bU{LAa}]9ޛ;yw ;g"jPmYnH0ʿ\*)iV2XQuoQ#nb8qJEC"MJ7ؼ~o u;RŹI H3%Vv,HK!39 yځvye'&$pWX?~3a }> y[JP&Hz#1kـ١\uk<}Qh9cX8}a*6yaE2trh;53d%Λi+jVHʞl/B+15N8"2LT [(d X$¾ riUDqt>Fwuh[;~b(YlK H]QVZRoq@\skO:Lqҷ&g쾚RNQL-S )nV{DΎiE(4i`x9]`p+uзnJփCfl&3jп=QGU+.?MR}.^"/zx6qP!*^ ,qۋ=Co9 -̃GS+o)wALAǦe|mgW+t031fFD5̏v׾opށD972KA{,Z8on 6_>.N^_W\\UQ!.btz(7wwE]mu>m:q`PJaNs`/lagH%RRN:UʟhEX ˑDI) '!rɵl]R:xɀ8l-i+ȇk!]{ꗛs*qnClSKZ2HmgބHcz@{ojAb獒#ωY۔嫭Lf8C?TSOZkުC2W(((C}$xJQe)qpЭtt!, 1# n[lDu]K(pN%!8  2 Ҙfr7|Ҭ]A~`N!_Z݋"-gAp8օ›_.g+_ň 98I uζ$=iC[ͪ]Ժb.]X+a?˻S =PrKvgEc3<π ; S( Fa,Gg {d/X*4,6OnKDbǵaȧC 9wn=poE-ızLl_ w̤&Ʉ ǻ4dMڌ8ȘljTmeY"(E}!'*gfC;w*Hp_۲/ ,h耶 7yԋE*ɥ1kh!Y9@ߨ4Z`oI6 \+iRU:8 z_=S74҅$d"RyNڊ.u ӑe/vf5lAi99uքSNO^$'f]9TzkaS%R4+GAI1Eۍ_*j! JWe^D -*h,iZ_U4'Ņy418) V#α'l0i#q`Іf`xƷ>Ν8R?"6+j/-$ [lϑRAdWݩw>j۞rt‹?xNNw}4#2]iܖ$[iqSNlŧіM!_eӒz"3&?[cp;{ Ud`#?)x?&v; fR{xG(v笧Gi+nisB w„i!kڰ󈵘0aI+C6Gǯ W毧]c̦e殕g.+2$tX%xgnaJθ4[:)DH40,ī^B CB[u%)_q&/\#CQ:Q~L >=/>n*3 i`岆~RsYC';P'uopjg`V9nRʈ}2 Qg>,1.:i^輳jb3? BIq)#W#Ȗ9oeSb0d5`sv8/><4$L?d=/)\<<džyk"@iewVqIj0-I"1S: d:E-;IWaws(D0m?E'#pv7fe8)3IZ a.?N9e"M -,pWFOC>{,c,Qo{ގ8Ԍ%WV:B炳)[ P&Pg35:>VJEqW_%w_ɪhhrJzBT_ 9XtOwr]\WGPF.Ӵ廉hzg6.ϡaT]\>6xzR͡r^OSH13c/֫Z?i1nK]+ucoOʪF~1 %=)L0҈41L'p3Jf1{v^b?x=kyj&`QIN `-% 1olq9Bd-WY i u-X z)SCR( p̓t}D_la PpvdaKXKH~5)`}fPAQ0 YE2^r!SMBAq G9d5U)Q$NG2喒]Ίp)kw.761+gQPYj4:B I9"(vI1\0⺻2kAu40OI/ɳ ECG1xXqkբɘߩ&2)!D+<,"|Gv'eńojK-ߚF=xpa`^Ea9C0Z.G[cF sC35`'gN$iG=&,wۄ\c vv">U5 F8!- ZԌ:SQ3!-*u8z$R'#0jHחO.U)Gyg ~m4 Vn:!#C9;я@۞"\€Mwgݯ>&f(9X1_<|bUvwSx CY0Qmjn!ƴ;AZ5́t UHvcGA~!)ykܦ0}ʷ}rDuЧ4KV;q=z\D Kc~L!JD}t.ćl6;be|D3+>'a)2&hBAdO6_[(E'6<$?`Ƚ$ h àH10D3&/{NpE H6n(\u ==2gPys/“hyaśPڛN+_ekbTmBpAh[غ`,UyşHYO^/ BPgސQ5ЙdQ/ ]We4ߞX:?( 2YM6ʆ" eXkỸL%h*4ꋻ"/Hݞn1q VƇ\VFr?U5 2}/J<'KKEx^"BgU͟WAz{up{ tMw 6%t˱qga¬ @G("6 w~Ί:w_&KB!awms=R9nܟBs0t+JW,0#邏T*'sܖsjYV-Q;0pJnzSxܑ0\]}yfDȁ=C T!NWMҖ".m,&<M_[|aR˜ܝ~?AáΛ d7cs a;Q/tA)'o#0\Zn^*e3zGPVn-TJ/6ust)2`[~+prc va8XvoEԕ8@FDptMǥCed9#`Z4v8⿴/J?dk%d`,cɚҠx$N{{qhv4P#5#wV`gi2A_oOE,1(!U·ҍ:E.ES. >MBYoZOU|zPA#vp 37a_Y$N.3l3`&⣂Xtϻ49bwP] 셌mf'\+bA>)echh <vi ?}LL$T O߅F1< >ݗ/JSֶ!u6z%ׂ8>7BQ}:a&)m=C\x ĵ.wJO3-*Zr@@"ʅ޻ޞvh퍥:hgx՗"u FuqMVuYwIڧKٻCjWNۂk2A8ӹXg+c~hnpCHE7,=d! 20(..-#xSz5 vR9#CvTfEԴF-:2HljRu=,/{(dTC"<e5"/وi|q3_fdJŇ tk[KD:X6ݵVUdpHaXf׷t*Ӈ~ֻ˥`lUюu7!&,ZvPS {I Fio~Az@˖{xΞmoc !!#9P>$@(c1I']U73k;t_,cր̼ x8B ź,nc.2z_}+mR'tV^ܒXm ǜ{ >z0t*4&.B"?&ŚCR"w5_ǝL͡QkBnZ5Ý !޵?uT4B(Wzn8su㳹6ubRdP.'OtpÂt((݈FNko!)w/ 3a2f{KP#!G3I܅l!h؉pYlC's:5:>W`;iZx@Ṱ]nAQx0C/S ƚ_hlgU_'Ǒ<P!cU+XN/AVQ=A˝ WG9& dOk(U')p̠uO|Ea;zێ DLJp2 "Fq0ب3 zPd@PSRaY $sW(A':b&298q?k&%~9iK8TǍr| W6|MȾjr[G~m~#"{bv\O4k ڱEs/x}V3()peȮ9̾7t K )} 71֌,'#g\gFqep%|!k/(n)x/WMٙ NiyߠwT՚M64A@?z|JNGe5v.57ʵ9fRL8#?WTrt/ E(xs#4ә !@_Jv6ӤGRq/r=O;'9y6e!r,oēLgHkO8%SjwY,~I LIﺛT}$ErT&&-.ْ(&Q&l8oBMP brWhWafk;!9\^j6t~jTf;AU~^H1."fwWatk3[R')~ypBt|ku5v nA6Lu*v-SRDK 2ӗ[ e=QlK1~ԍ"ީU3#܂~(z67jeܼmyEy81dH\23#;UU3Z$hM@RhH*=G9\yk6t={&J*;ꁍ^V[C6-|0w<  y}3Ŝح+&6~o2t]cA/Wx5]˼[~<0?7c\c)9 .h.ru֦z|u+4bZa‰H._.Erf\E,I RINF{?yTVT(m68ˆ=gYOn@. /Z֟Օvzn.F!p!P^nC ;]JC 3E8rQۙwm#tNu*BxIvt+xlsw5i8`וdӍ=4Ae%9_GPV0`äbinċR'-[JlMa p'֝'} g,{KdvLR2 GL,p YDǝۦZg?D 7TҌkSw?pG&@ I?U5-ee}L.>I63KpPb']K2$ ]x1_>)P<@e\pPu=+-hIeOHeܜ,4hNZgJrPr>bW#>m@){1p}HJr5D fI;}c92PEy c.dH\6tJޢk45nKub!ϓܓC$'p 3nPaJ&%ywƗxw` Jn()z5,~y, 5(] nH=U=)'q1üf?Ҋ&(P/61p5YWbTcy`s]Owߙp?Y'AOrEKwW'y2FT"!`[4+5 CDX0)*'L?]fq}"!zJ aGiIGϢ wv.LZ[+ ǮxvDiS%X>V]=+"˖9"uƱ]HZ}uRɯ0ݩ @9 8(cU26tGZadHT\0>tpc:T֠ _*S*+@x|iUè9:E{FtRxw֨U=f_ (I%yOVڅ-No|>zԫV4ͨ+@Zf߶Wl F|!er;\@gqG[h|N+ VK{0x1 fNJeSbt5BaF|ͣz7 MLvjU^PLЅa˩Ґݬ^CaJA2ճpW#r|/~ s+:. :X&أ Ηl.}݁bi+3CX^O*zF@ȁaT?35NYI^G w]>(bCAIo׌*Ş2ޕ 8DrG?;D{bJ;Ckp)\T}ƇHBo¨vEXܹyzQQb_^BxD2>}so` Ro|j=ɗ}Bd1}dgf߆c4 bV8 v݆7bijnH?2,HO_|OԜ- 3|V0t}ǎG,:Q!TNQ(}I&>ߑklxtݿ?M)Uҏ7L,8Kn'AMaQ*\rA(%YO.e-.-)٣ 5ݖU#f{xb,voRPIKhł;\;2_JoⰏL/˯q~ ~'c.[38*~y s X\d* J(W@b"Tloaؕh0JY9rZxas$Bqx|(bx1FReˆnBAl{Ksڃ@;)1=س ?CbXu,y;\U2C6Rhm5(5zFUD]NP enYͰ@xtʶЬc&%{K1F_s{vVGKd\QvMIȠ=zKn=᪘zSLkwĎ߶_M\/2:`E*Qq3Ab˧EzQBɮ׏($o0PϟjSѓOu{̬ ck?WjM3)W%~ ^0Q(jF]vNK֪"K:g!ч0;:lWiap `M{$:~~B1J o=2K>=11X~wx|_jJ tdLuݻ%V'L!cH:H٘eΔha(.k Rӽ#߻/zՉ-0/۫0J#2cЇ])Ҧ'+l@Zu>Lgaz,0L,T8 Duy]n_dE`Eι0yM+:.C#9DoAFX hM :t,{XfD%Rh| xXYyV۬鄆vN[{?|nK+/j* `Wp#X6海 %CmpcMMgD|(-'LAFK@7ųiyo3^S5δz[2tb;%T7;ۅj ~}tґ9濸Zey-+I?5 =t%an@KH%b|]$]%1۸0]E)~`Eo4H;,8Z}%0/+WLt|"XthBHЗӿr_xisuXIvm):t9\`;Wb RN%N)Y= |{R~%ž146w N=4_酅SFAC"PϘfxYrLQ˕D*ޑ+HzlU ThV,'%&I>B8!H.A}þ 7OU9|tbv*r&v^3|'&ՍNc [9 fh6ne6edaS엿f#ۦwD^BCD3DpSzrkQR")+"!g./NQu&2&w~,ڰmwn+B<]^=W[}֚mVաIa||&l^ iusz$Qo *q-:@7^CqabPv1r嗇tGyS?Lm-$ ro|At+6|䊣% "a斂q ,vP NlR8l?.aNLǮԏR,k\nl5_ 7zb]țtHlR7^6_^_ !,#ND o˔9>݉6` D'$Ja߈q^O5WVxa1qm[QfIi=gOSgaHލ\}E斀a*^ la-:d<.2̖4bx,z-a ':Sז3kӀ(GU5Pu͢j2qk#vBX1$b#Aqy57&{R"B%C2dg,{Y+_$UU ơߵLa-\ & IUZCoL3pa_D3svO J):[1Vo/<}-*\P/ÕIu( |Ո Jɑ,A8IRV%ҍݔU/ 1`b2., 5= *2#C!˸Ǵ*Aq+}}aӱ8 >'hvlTi7hP'K56Ι~lBK3q8uœ9(tDE'e< uΡE%,У@Fԙ>Ɩ5VM*9(S9[HoNsJ.5g^淬bD\ % 8BwȖDvH0zD1bB8sPQMڠ<)"2ZtR|lB/P ܤb-I}OAX& jy# ؔS]o7Ϋĭ^ _67G"5\Fnx$ߒnT{STYBCUl`:w)׿Owx$pu̱8뷡$Ʈ 26\K5֍' Mo)t (ado3?X(Y߽j?H;Eí}j-/ym!uҌ ( anʖП+h5ZqDPMyznqq7w4J2/u܋Vgߕ쳮yx>"o}5 RL|uzغZ&[+h$C }&'  U\7kO]զ Z-`6uĦ$x-6TD$ r*- $3 I "~ _> ghbsyz; j#R32@^HT=l=t1.R]aamk[ѫe"G,'VM=AC&pf怮Y[H@ZewgM-Q/ қӑUN'Vgں#s(R b؉דּGU|*;eS:ҚD5|q[:#YYa_H^|?i&(s'\u!8qpOJ/ ?ƈCKVHj H끜RyBˁP PHty`n0: h[A?T/WbƲ@4:(o"8e-SVV\}BqBeƿu ;$c 2!%nr3bw :}83874vjxȀQ 4^3[7ZeYWQV :S7Qp|OFRιAF~:ϔ ¤"C!H/f!8vH\e6 hB1pfS0$vӾ0އ0 KgF\%qBYp) o55YeNKg Di|6&[>p |J >]ImHA^*eucB\H̠ZXq VtZps̼4wPX[vM 2GX|`p2"DJe![%n$Ou;rZ:k9P*Jxz D p2cƌPeqӺ@w gۢQiK0L԰H&"ȈjHqG*b%SlK$U_``b2jqKm-WsEA+R+&y@xm^/-G2j3uml2:F2Qs! U9wŘX6Y!$0+Vҽte+4MlhE*(Q|ZR{*.#~;kлIЯcS7#R/jC)^M}Ş\טD(\]Z%L)} A%u-.ȋ6.Y(zeB }EO ~&ߦl{vQ..xI y(8w 5e|+ -*rnFݍuSR/ۻ)r GV$5 ,ϖ?hWJxP>^i6 LCs6+S著nʜD{^%CfcUk̭F:xt.$ۆr( ;{-ղ@*%C>yY00i&9I/ ȱa(. wP-!B뾶8(5|I^!xG!e;F+Np/9}-JY8#6F<%\ɓ3", کxT@3%W\i³,UaFۼ|8oc{%2kpZ *5 2=nO.}'0bSnm+c:h+䯚رQ9\[q+`vS@WkSP3"pTӘm}5 Q9?B2ܟdmYEt=BړJ??t#Mm͘%{V[.n^mbdeKD}5 o%GKl:ckWE_|Ŧl?cE1#%3:Byz>7uf桛#iB4%=%ӝ~z!/5j"w+%#VR5xTF--]pcY.>NBؘVJgݦuksP6}xa }B 'ܼ|T 3ߐ VMX'G3|\SYӲkpWw-lvM|6>k2օw+>UvJ:Z5Yu#DZ;8Y}b ^U>GA[܍cKvP -u}lB9{z_>tQe\V)>ź)(r/R`8| N9;$#:LWQ*ܘN;SƘ]: m+ [FJ=>fR05")8xB"϶wQj(JB>Uf^E;;6eK1U I)NC fV§\q6pAܐk"uvl5ƾr<ˁ#Y~+)Xx}{+7/WmiȬ,ffח~X@q\A_o['q(RҭVDj X‰|c }"B\CDkc:+.a<>PHp+B_jJS*#~ti }=XU1UL)<.[YńFymp@~4n@Fªa/ & Suv5a"} }GtMN|N&#[Ԣv 9kNCBljY'e}^=6Q-r2R]z_\kϙ|&bpA{t|8%0 ,`},7NhSf^F_6:@sYf{zte֯Zʚ'U2˪t5E5* _5x]\z۴g̛f/U ^pIndCq̖hqmw(5 !-rxE*n*= y$ nV;(WqNEuzzQu l3Zyz- %B.2H?&?~J4r/[CA' o^w r1"Lg7v0C!dI>/" cyB)qE|t~1S;RNУsB.:I{kxvK+:q$KD l _3Eiԥ#?9Fuf)Pݤ2)$Lt!eTd#5/a.~E]MmU@ NZ5Z9hhl?*'&$ν $+-^J:u 7uLk&m$W{<;z،WPKG7Es/'_1J>HS 80Uw[i B=)9ZhJ͜&gZ8k2bh᝱` pհ'\^)ʀ0$m9CUF:l=\$ұ۶_Sj}(%fR$4{O;SxoGf^1 &`E:{PT+.^ĉ6ROL52{{IxD_\~8tjq1dn-ڞ°8T~jyl9UnG<|_W 3FJ㐰Qu3n>xY iKƢ'0BHXE=CeJrsJi* ࿾hR#O$p֜;IJB8wcRN#08I@IwY9p)kT #L&\ڑPd~:|X"(^~!,3dmIչqeFuϓFJ+#@dCWWj2.X# ۬ll0X? ؤ.GڦPcizXrxa5:q!Tf+aJ%jN]/3Hْn#j?3s7O|,KΆdWb&9맹X1#e_gUb<3V`t 3DJ_\ q6{ouMEftۢҍ  v>NJB{rE<7}Y, AlkP$׹mSs[|6lk(츒?;Ex!4BP&T7D:{tE6N@ӈp&p$b} / z 3 A8# "uMT(?vY-tOu~-S\#cBk?usfnG%RuMeo)*8e|,h $ ?)?O/U0Yc0|`M?, " ϴ/ۭGF˅piS Slt|6i7 L4Qe0}3M91pұHKs,xˁ0~5_^$ *Mj|t?^xX@h4p"~.}ϤÀR]oH`ݚZCYCoWq`_KEgh6*# ]:#Fs"0iR]vVV76q7戣bHDQwwj zz"J}4%\/4T4m)z"+![/~G }8:mj^ ]Ϻ0A@jGdG# 9AazF<)-#! S-lqmtla8jdJSj\x'oVƐf$.,HA -P\v;wë>/0sIZ #bFo:Q|&Yb$kNhz4zg~><2քVD:Bcw /ZOײTh3;C|xlFp9B4+J6qprq/V\(/ն'naGpR-|n_ [֠_#"3:NF=<`\#.>Mo|(mIdu-|FIu 79> {l  70VUm^[S>8!\m Βgѱ֊oHyɯ&1}z>:jS]t L'+>B@!7`jM*h[`ump(sA3.Cd1lo,HYUr|-ECU 1jgmrT*7AVYfI{ bZ웳NrROn~{>sY!!L8EK#Ti[Λa3#Ist/bbyf%.qu3mX6ZKE.fonʹ`(>FiYq ΘU5k.| S4;Di8YȅfW8ͅg|k.pA~[3fkSWGmv(vp/.Gwu]NaENdrloQ]׷,#8RfJ)ۨasaBF(+`Nr*Ntz,>xƪ%gJGT/|mfȓ~Jֶw/8Y gn{-&-oo|ujlAY-X^S~7O&I"*eK}逥ƅsjPU\M2#"1O:>H'ǁW#(l?*(2tdBo_@۲ϏWKsgV%*w㈵ʨjBh@X |;R,!wjW~ӫ'v4%91е(y~M+H)+"lGOYr3&PB29a1NY }1_0{sO $q ia|w( iay3_S ̨Ι'6디=2p]t vLB$W/v+8nM2U괔ɷFjJ꬟ɑ$o %v%iZ猑_@9hbˀX3CPeˢisZg2FLDPܝN#N B^$$4X6U==MXn.i#Dy[" KNXk\P~6BSx[NqCQlG@`"mZ`!n36O ҡq٬JBn. ZJ|S!!?4h͐dX+mLCa|vFEژrbn:_){k"۪29_-3 hM\;zRZ%6Z4KF5hi zj.*>K(>gtCҵ.˺c6eӚkԯE՗Zn2M^ GS \;KAGH~, ʸ}%VQ=⾊:w薳,y"54YQ H)sRD]9ha 8&LY1Ў|77̿YJ9~Q2 G'Zq0NL20? uA)b֡E 5WKR8SU„o ##pbMĻZScj]{PDf88>h>ԡ2q8Kթ p]@Xf) 6kJ,/ε=ωC\" \5bR\k<9L ʆd3!.t"RJ3(IVx/8Ā Tp`̣ŭ5*Zt埤RlGJtyw=qHʳ;NȾq7kHXx%XmL>+hZٷ'[nmU2^K2vCȋO+gIIX:1~>a)< fZ()p46PY06JIؿ&0dؐdfk!Ƕ~ɩ{tJJjӄZksW'jU-,70 Y/59[Rihe3!Wt;V%"kq '\{ SN#؊IV18Pzw_(N~x;PMrlɍwyB *弭ƟvU2O$FBONiatwgJ ~ Nh*?jc'*m19FMN 2-NL0O =Egp]d=qi?S˛RCߗk%hRp 8 qdҦʶRBII#/3d(y~M:lưHiϓ8 ^yOzoky'fh6%]~d+3< Ȅyzݛ~*>z `I.w Xq&u#7 w.'$q)KlG f]ÍW8؉*o#e6Fk0u>@õWFKލjbO5aY.Ėx6hx9f p3T.wGNn Ad,N<xN{nQ:^a9Vsg)@3OLrX2]] :3 ς`Wצ1KZ}XMg ={.|8D:% 7XӦgZ);:-+h2OKF< @32?%䊴3mՇU/<&[F‰Iȃ0s&ٹhX 4SC Fs4. D bS+_-c]JգԱb&*,B QlMDžpLE\-PE~ ǗAܵ|`9!Pk*=jF?w3,,́[|뱚~nOࢨ@t7ȗ3Gp2d@$B>ݸz`8f~[#m[1Y\ۭd՟y {:7Q2^e(惵0A3GLO5Qw< RqD߼fH^BWDp~qi4˫H\q玑qRmph޼[(r2f{ S;q]#$:p0E+6nB~ b5CU*am۹z"ɋjbMVm%ٗqyˉWA*ҁ%A] g8-Nb^rgdsGm)7_OFuRTRSrYhHm368vڃF2!ZKYu)t af"|`uvv{&fO'Fђ gp.`е.Uwߐ|Dɮ%Kahr3\B=th7 [x&@vҾ~̎1m"|DyF*WC׃8sRYA08%TH:J-jACc ;|,l)A*g(҅/`C~!5^ uh؇(̸?= W-v{IX6ǸH~XtIh_ ;tב8MS!W V yΒH7)zKhS ^T4j jm*~PޯӥD:[c͇≹Vdj?,ϲر92ugŐ3RV:.FǞo/v"@9P:mE;:#US-w}IzoG]=ӇDQb38B qKq[=T Ϸ Wr~NPf$JO/"Lx))S)0 9=~N3{=_6^LqmR㓺 /S9qK턲:,M❄FqNmg ~1X-S;KCh=yle'/y"a.Rd)`}%_bOdѵzxR[t5g?TXKޜíI@+.Nٶ"Tf Ǩ93~4mMKl isUPbgp-j1XUR^fUzx-VWy=݊}3<ͨ/T~# &{|q!,Y $I~GhJֹkBZLtCk 5nBL|큹17+|\kHh QX75^9g ]q D,b}aY#W0eĵg39DW|>ix3 ZOv)Mgዡן/"Gi 25[9'zvDEfZ;1 3vB8m(8N)ljO##Xp?ۍpNfgPt "m2~.P9EKFh~Jc`#{)[@3("pw(r{)e%# W"C8Xe _ W' ӡuOs+"S0o"He <0-̺ߒ;֋D/ߖ; +l)سQT44O w/cBpgדUP^7=}Z-}XKCioūq$Dyq  ` - 3J/Ӂ>ki:2j`čF/XvR .6m20.GbfG{Fl_kMr(A$='N;$GWB!r 1+= w"ۄ NT(LP%;pNP.Pd(B&ݲrYp gR2uF0ATk{r^-Kо6ҝ̕*l%5_7 ='Rua8RܜeðON&OvlE- j pS8W&$Ay* {H p,˶_sFxh$?R/\+&d3ů'{AACUZ` &5쟪Oܵuˏ8퓜N%L mvv3?u֝WOgrJDįNwHJoLigM!9"i_+j.dOs-;,(/!MTiG6kˡGrџx*v&xX=Q Nuñd;*|n'⟥>4ṽ<:[!Bg|X5 ]E-wp*~&;Iv{W8+j;q/rre+n0`:(Zi,nQ͊d]t* +X4^r@!<-.샀VV}'*Nc[a?(Կ"/+*r{89VM,R1%*"O~]n9ҧDdx?7ѳ< ]D2kayxox9˃Q!=^儆ՉKc\_kL q? ըMY?DԹP皪c| E9eUwӤm YÁE2r@&#V,Rt8l Y1= @ۙr;^e{j.W\*jr9 8rϑAT`` <Q*ԗlRt}Hp[> 7 ,nw/i7*QYXBʲ3E1dHו(yՄ, \S;7oY*U>mݏx\υr %(n{6,z97= G~ Y}/31Yce.03}U\6So߷ǛZy ̠pY~dK{:sP2+t%e=H'o8`/d;RUZv`z 1=o+=T GXYhnelyf67Jf獼=za!& d[RW=o 9-b[/ aoy7v=8q BˆE=P%..sE#%%m}v1@|ްeF޹vmv@Cv۲u(MWpiI`çڏ'񔦙*A%Ea£7-Ǥ=s{ Dxv3GN ۍ2Í07)YG-/%)1)id 串MmQß;)8}ǑrH=,RwA}75kA(>>K{I㙯F'_}V(d%Z%GjBTy܌AȘ=>|,&};խ Eݰ\)cU5Ů( \şgPΟټU􍟴{eAt%Zf,=^NccѰ|T2`A`QÚqi%OC뢒Jڌ}kl8Ht~)uyqkO.`P^{iCȌ>;,o <9|aKP96D "h:4Ҥ/s!-4fw_n 9@<Z/b6xA˭Q\\OKL0[ѥ pF|@oe Oi3F( 5T׾z/:~0Ugz* 5*ŏ z `WG*T_VzF]>c~ozrq:Kɺi1 163C~g%@/zHY /qW雑jJar9TF@uqx- +RLֳKk(P?A#0+!zr8֢ۑb5*%֠ޘ$ "dru{64]bRBL`B6EP19h`UѢ\΄=^/B1OKYX!l9ZЉze*Eֲ;}hR27@q/خ7Ѐ(` $1`hT$1  iv;pCexh!s_BXr9[f;1. :yGTND}> X)E2o9YA<әd?-Чt.N}&`hJ=YSɔ9KlR{>7&]׹sQ5 J,6DМRV ERH1%I:rqtGD1〧=!~R_i12 (Pnh5An I3idwNN _h CCO*kRKplA3jHo(}tZg2<¬Q=&yS@]UI uX.Z@yzucGo_4?xtCdc~״ӟnX 4}Sު n0j=oRE\dӿ &\4]1bN#ɑp/2[!:X #rVXC>\5bѝ"N7w(bjyK3ʰeX`^f +R*i/M8Hif1bUQ[RIڟV/5> Rf`<]€OD5l+'DTJ> &\,(1Fr"^8;4{Tݩ!cKe!+>L.^_ԁD)J^#ZOU <9گSx+b93^7EslhzwQ__D8KTik&ZTʬp~G81vn* T]Wgzv<]Ō  "Pdy) ȻgS[w-*UBE<"E~ĐD:vzm4pW _NU͗y?Mj=QAч8gqXMPrR!w~GxvLl͟c517:м6̱oKjJ&*sHAT Y'{@׷Xxϥh)T^'4&d\`8k; B4nı ,ѝ/kϾm3g#{eh$& 4~1{M >ڧXǨEŃatkKi3i,O7{6s M 5rHVCLrX z9BQZ rNm~-?Gd9=#IN l p|$j8``#d&D2z64.9"9 B_,*{3/`ZF3O ̴ 0'.qC1Og_ 5gQ;d*nhn 5?q2~7Eˎ:N#VגwW_Re6RՖ?ᘴ7:1h4y.72-zQb-K5.Zue#CSFռo*4,7|R EGO AоQ@";\`qSB*Mcޘ6E<YUYRRH u*at4TjE@Uq#'$eKPY-=,w\w,^&*,Yx޽muZu`ݨǘ=[M{E`p~V4gPQG)Fb6(.2<~-dfAZ ?Z_`Z>4ϓbjij:~^yX+` rJS'~A'9-SVlW\߄]J wŹ**3T1$6IqNˏ3$8g#B}y__ثq~q9=!$Q{JT.=<nIo, '9lMG#$id򊁈z#[nT8| @3oZ("alҕ&$'V9U ]|E^!P|Q 2BA4Fs&TX3L1Ntik*S~dmU{\M)Ÿ4Qix!.%gx,[n^fuc*^g[@j l' ꛺RXv<%sx)P7_$2oWWkG JdZq3Pv ]t#Q;gΧ595yDifN^,z DM0thX0BFV,\WKLAV\LVMb☩inn#@a7C *#i fuB};^BĒb(zHY78*5ETx g[ a L>'{z?C 28g%ț!DuT!O[*E1_GeTAfֿӂy Lomr2Dҁ d#a9uUm\8AwvK{ltSf )f&9Mm{[/}n ʢo:oQ+Zֽ[\tdw4W?܎->0/דGojs%q$;9 wpߚat]MAS&9x(xmhaDȫ_#P)A]:M/,a#$$T Yb95JiD?O\SaGbX%o[}#I";!P&*)x@1g= 9jiR"FT*(@k` SW) Û]T =sCJElqYk ]SLU:')8Ӓ+l\r#ɆfJu1:rNJA-ʤo^3dҼMbr`c3S ,7IαhxtW -XYX?lD#N}{s+҇q1CO2odr?ͻrSy0JWLC{nC f<T-Ԏ+% XfˆϠHo|5 fpmanUɜ~pH*g_h*|Dr&M~ V9+zOy3LF@ݖV8%*5{Z.佮HOڒբQގD E'.F]ex-ѻ 4-Zð{{s^a@X0Q%wQyz6-TG~ٮusGcFי ȸvQ/m,(Os%NiW,UdB}L{_@8}wdM }+og~I3aX|4uTxIc< UXt8:bH|u[F C mS!6h©:=[n,hIs22;$XdM#vLT\xop n 0tS'&O1Qx`eߐ׿M擊Q #F1v\ƻY @2an܉ 4)uWe>ɷ$3j/G˿ s8d7gd밷+Wy.a%)I]긂5ַ?).Ġ,Shdm?ʚixLSY(p-eL{bhǓ#O+d' ZplT]^2:Rf )_=< JoByIo@:imۯ3DL`{ ͟y*1/}U&t"hF6*}apKIk #x KaxI۴GIev'/x_\cvw@i\8S/NpK2!J}HT{{uW[.{.h]i)ulӁB٥`d zNadZHs1G8"CV%;/uE(TKcn/߽ݻu&5S uiç1YrT7y2_v4f)`]2T匛[TTӊNY ^? Cp%^6>a+HO ʉ6 u(Wq.Cmd Y|5P긻0?/b>oV[B_TXKU&n*2mQA0z |'dYf6 툆n@x!b3~y^%OHe wK&)ز?W־DHу p8ְRtfկrm&ܞ"%urU2;fUz0}[[⽤3-g-QɳG73T2aoh}qX5n006]Gab&Ilnm[FDzI&sRB d:ƤúH[ =3^켍z߱S8sCzbXzi$H] ӂRW|x>]}/FF~(ಽX ,wJ9^XQ̡֋Bxf=Kc*aF}TZ˱blKMʮ(7ȦsxM9&P~xB`p׏ +<0}{{WgsS> o@K26EIv)$(8,NߡY؍ Xu_kxg䲕!["~+ H"Lr>[k঒` _M%(kKF*[j~G]#/Yi17Fou. 'YD]f>S{lVZF 8>8OVnjn>=6WP< ߄%[xc,J^FY> PH^q5@y>sk J_N3hW[:JXsGo|zHFL),<G@=]bF%Bjfs?i7>rfUvEbnIbϱd}9G)zjzd5e}FiU(r+LWzXv kdtpj>¾W^m(o)jEȾ껛7l|"W, E쒰;7Xr _Db5G={[omή3;qE[)؉.\Gxܪt1H=]lVl2Ȳ3M/~Mr|RΤ4"H* }D_ 'նY{|MR̹E',7C1 haRGpX>Q`eƒrܦPo7sI7mZ_ǥJPsD2ҡV uu-Nil"Yc5)XJG?>APْfbRA*SfB$4YI/`Vm ?ʑϲ^?r|خ'$eHc[.z@!0Nd|Ӈ\e$?Q fs*E)k@3<6IT1ˮ Yb1a{cT}< M}C\w~Wbf9)6n =1[3_ = asi{~J?p,jC8f2;pRknq '(nw'R o=̴z迹߫Gܐ 3[`e9+əR?T߻5C{yT_^qSFR} ƬѮʧ53 f:|P5GL2G#61y70;(&iޮܽ,rKvVA6aSi`8'hVo[?tx&` YluƔbSì"ȥ!ۢiEo^6s64PL#m'ѭj*H٣&bcZ4鬳{"_M,f{ix.z" S !-w^di<RǽVgL3:u砝%[C& .,'whnҌ"ԊɗeDqJl9 qIOm>IKL .į\QuiMlR$8x/; X%*3'I~ŲS;yHvAYtB邁T1Vܒh~1@qx JҜfV _ļXAS ?eQ\;5@f@RYB Ekiz>؇w@cF #Ka)lF2_T) G3e Ic Ve9渘sk;uВ[Nl+$VOéA8PenHJ݀NVV3 uws95~󭱑JH7"͗Os1NiO.!h.cgZ^VPEk=ػlz Y|c9|H| R~`h )8f6)3-=`1ְ\E`N:9&pAR!"#ΕvT$X6 iATK ?UGU4)f*(e/Ej?LInRAo|twqP%MI G@ S v&Ӷ 2IQ0m"{QY)*]FZ ғbv|bi8o~ɒ[KYdnw!92&g(I`GDH[j嘦DЄb32?^ LײK2 "؆+5Qv*ƽuş+Zh*dAAy!߾!0\r Am5"a8|w (A_nіkiz&b q#D5뎊.d`䍇LmemۡX| _dm0g@}pW(Scş:8>5)![ʳ:r)? yo."hk0b{.ܽ /RmvmMX]q_T~W#-+|^um~:8dw߮9+ĺImx zC  EiqDݸH"i=Yu_*%I0`c3^wWyF%MDӿ!8$62nc%Y~ǁ4 MVocj 2+GξȞnHSs>sqdhS x-NKmA0r>ys._ky[r8脛b9h$M/TuÔ k DqW~l7fFܴ1$O|'"\-3g]ŞvlJ$O!rkIRiV\wq--iE*Z z/A $']W=4k6f{ҊQ%DV";#|F!!j0PZشs 9':c=+!4fnBnSUwر%Gk]{,(٥,߉JZFǐB^֤NԌXmr# ؁N E.je/z4dۻq3$ݹv?̄cS5V?WlMegB?eztfX6ӵ3REIZ#UJP!SymU~ 崏~hHdҷ P#gYG1-Bp_(ЅP7äE B &2c3P(qOV,J_Ql=;}{2;|J0~ uh+tF_,8zeQ~M6* ThEorve(0U jNq·DWkUx(, ӹv%͟?aE;!?T>o>ͨ la8k`bR,P3m%c9tkl\IkV Zg8肫uhTP\OU Tκ+P/R'"˗n{j:/%8M%Xls > o*gF0VX~.j~(.ނpq%.{A9̈́$ te`$ݢx܊<Pp( (m}\>l bʴ:Uw !S>U 1D"%B&F~Rn *!=2q6god Xct8:io!2scrnnjtPc"V\tN|?Rl̐bD d#&7oI@<A' 9VTΞ_k 5IC`'-}>;*l@$c7߹{jF'MAHoҒ1rv ưB5";Ӆ9Pv!')tNJ%#ga<Njd}DCz4lzrX;S})ۃ VSکsYK/׌ܭYBAX/0Cŷhs\ЫA6Hش0Lb3宔sSBXBL XD\ \w$r@H T VRoXw:k_ҧ (ːw=ׁ G>NjT=iċr$Dc1{8~̕Brkwcq! _ɍ{ʤgTL0EL8$N\()Q3ALtQ CNRx9S3wCu% ;mZɞb%NiϷPƐ-+BŽa=mh5 μ_Iq+]cHTyPsϦt/'*[M+NQBH$kHApKTLdp' 96FPa vҝwmky"op4_yQ FN/mݖ#P4L73dyF6##.\Q`y 4˅jD/U MDo>Ym3e1g*0,,9O=0d2[ΈzkZy7ӯqaЅayv>WSҝ7b1b(ǕF_-e-t#B'$@TY%{{t HA.ϙrXc/<^&t^cdŵU3]ACm@拵4ĭGԲ]jZ%.'r&vIQuϑ5G;Ňo{zjê~ ;)jPL5jau|xzRǞչZUMLmVB?"+ , fJ]XA?$F]D3e{~lMbS82$ً/ 3,䌡#L1Ke}~FU447@b}Q\0K_ (ʊ-GrUj:Sy^GNVzC>ddHU*{-qi+/јER) (4IY%p]Q?o/pucbS eI7$|%:A>C:R=s$~/XO V Uf)OAFT=tRIBg{Ho7^!Ɩ歹%{Yuf1qh.?rdNl#D@?qpSBf|wa*n<aI7Ȗ, "V{?PΣ qapJ1Vv?x-:d3Kܒ~z7.pc6"wN/{WlxvWxc4 F d^e6RsV%wpVj,6Nh8\}6ǐSLN6HطqIP\ JN`Y3g-ۖ46NKk ұ阢Ղ"2I$y"_.-D$FHe!`-/,X&Q^zh6^GǙH5 pτV EYRR3H_]r}oޝ4ƂL=T3Ywv [%729 ,Lxokǀш9BތXW(_4E];7n\åR~>KᄉAw*Pׁ4鶄Mg}|)E Ȥ-1!ձu)]k ջ00w826䜹hߐ3Ґ!QO,lԻTH\TQ{S].);Tx1yF?*8|P{m>2>8 vs+NdִH(GS#G4(Bu1)[s#On*BIFH_ɟLr|/NCYxќ^k-vcI/`9~]@ F$OΒ:Ha]:J%OȟOSv>}lkX=\)ȠDQep ~8Rtluik Ƿ:~z${"X ҡ#MF <|&rs{ƝY%VC[NIILɁYۈv%hY/2c+q~n)`a"O9 z96y }ڭvє1r2 )<=A5@6MC^\9pevgH% E1ډ]ar ]k_SaCVꅣїd tZJn+jT@}}`J' MmE36qQmhz@j¡Ӻ,*ݨ4`yhL H`?%8uɠhl`Y3LoIWHhif ,]2o{xBlw:,&I$)`g"p Jƛiys=7R:HXT׎{~Fx֞"#~=/&&9պ+F/b iZ \x8ChH!0jl7#+* e=5@LQ\KX鷑rn'M1W䉒zVyFb?!pE,* Z.'#XMdFՔ&Y6q+Zt7{hC@K%*:~ֱ?[K1ndB<%rViԍ=6hm +֘^vM1 I\P % DIXao956.gH]T:nGSkPjYvfJF fA=f t cs'2t@ ZhK,oRKБ=v̗y=OtsӦcgnnlڃ"\͝Zl)(9ayu?c0f7.YFzþzY s/j19 ~x[N ݊W1稜4T`}.ËWyGd^Ip| *ɫ>Kĕ2+]daIސ!{ݽ7XV]>m²BetPwwu֣MJ1i?gЏW4g? tY-g#YBOb,0mknJ8 o/rKĶ0CByIHTH+kj:XZElz:߄~ܗM|#& @B.Jt,lk(xtc\`݋1x; CUoNNKw59p*;g-@6D4|~ņp(ڪ ǖ01S)t!=m)JigWsXSP3+vK '_#'4mkN\zV[4^M\jݝX3=a9 i\# S[cQeI懯8:_]=n04Zu0KCKZgZ:q/V7X!)8ug0$DՇ)`n;ђ -Kl~ vcA1&] nGX6Q$y#mZ1N$$ ox(市&\Z 6E A5RJaoR~4sHQ*q9LDv37WB6{+~`bpx؁Gb4JUߨ1[{ AKyqSRV;)=Ş~N SVT(e)xe#.Ń.*qQsEƷ|4Xϕ^"‹4|MX)7DS)GmŎo`A\n7KZ5U*aT~f[Z yU'.]AK̺pc8댿S!asC{a]t` 1ӧ4 8| ,>9U]=cpg(re8%; ܈0^HR[`?1 3rZ1{A_ {"!Қj#.[$~+mrůΘ~ S2 N1FU+Yv";61xN\#*X,ɒjv::$zpdWB*{f/M); ^Mp:]WũU`_";impf󎎫$KzO\|qY{7#Q!!$1fQdfó/-iN6f<#U\ϵ@؁:8s N ̀t`*pDQ9vh!Px3y>Yh2BP(c=3axp 2+nSI Ss4~{8ٿ7`i$nInRRsp}UdljkUv媘aHUB`;,i1:,@V_e #^Fpr8[o2+4x\TIݬN}\ 8"ej8 M՛c$=rB62[2xO{c zlk `#1gũ=I҈L0oɟ>?ϟ6sI2Oq,ܤ&Q@@WQ *koKT1\T-bjNJ0]>@Fۥ,ARpBI/:tkkͼ-)MGh۱̻b~1/{dcy=/,ʚC.7,ts>F]'įA=; >SAG֚²/56?]Bz{SBCE5(ΧOjY߼QvVoWA0i7$qf2%ضp7C=G]'͠0nQ -rFŠ Pj'BGlh! f l?x =!w?XdEa9pUUAǕKL24&Dbw.vx8Y];t~<]OnZ2Y4S j,db Rӥ{ ȷYJeڒ6f ͤg4@>B2Aۚ2O:4E9i߼Yi84PCY6, b#r72fNsg:\V\f-;)H:k84*Z+y #fZ9W5ϧN>8kV1 N?~2u43d}λxB Zdp-HV1PCrn5,=,aoj-8O;^/< ԧd\S<վ?pxvjsg.8e"}o ̻k3EXl ٠܇ I8qҠiYdIRB=|7;̛Kx+ | Q^t"FITgk:R_l 9Xdu;Mp>6U)37x1P +! 8x*ja.C : (9 ]LaX<,j ˫Ύ:Us#(wV r݄2ޔ0"RSgȼ-]ă62\Ȟ*Wshz.V َ/1m)U~"Tqc`uȾ  ϒKajΥ?6ĽJ}Uf< Kzk谢eL55ݨe5i%ѕ V7$(ڳ]!;h%qoui/mQRvF clșcVB /ֵhJQ̄Ot~$lv_f/ng V=^yE033=!XI0[r4:zȭNP[vtQWczx"fOR߯cRvV7ìRi(\/\ݿ/T6.X-Q9`?'θ]@(m;ܑ'֜簢\P{GK;!)G²]_@TP]^"6Z -ap ]|":N1/'(nW 衬]-{ed15l]]BsjTCdcA2^:fF+y<ʾ؅HWzTnU5b#߯~8l9Zv66nm4ΦtH,P%R_eJ3(%:Ԗz]]al ׯo)L -H}0{\)ҏs8K->s1lvX?5DiBti?q$Mq$ |#/˲IpQCh:bLdEdNhcͱLt@ -6,ߙzh|3LT.s0nuX~gX=sT9Ch 4*(;N)DgS ]:9oNd1eԜۓ1"9we^ۀM2 lA$rIІyA/Q0R H`csAdB/&&I6 M"`)ߤs,ΈF[Ŵf6' yND94=X &TԤZJgp+zvJXKsd˨n溹7oH ޙj9vv^./@s~:t'|l'7%m'qF0㥹OU@ +=ayf[ebaO1yI`F F:mz"s=A{VD2 ,IP;?}d3fcM^El"zеn 1;\4g,m*<ebX13:"N$,ˬZGϨ%n7J^Bc0]?R SlU8H/Y=21w"(|X%З~KSxQ:'U$x=]F?u5a#7uS  ;Gyx|c-s ^h%/™6>U0=+2N EN]蚶{͵R&y@g8~0Cڥa%y,#FU+n qeZ 41GٚI pkOIpu#U>K+rQSc5n2bfJ9g\m^PFήuw@](rUekUS-g(n걶嶫XsDlQ)UZY%^MSFyeUc t"gh=8j,h,@콘X HB\F6u`FYF -~bhDAwң[Xvf܎wu|:fw.w'Ԍw"[1',gq۟=7Nqo雄E9#ۥ9kܬp)]#A?Jc~= a_b.J//q? E洹_vo@C{w3MP%i-x:(kocTC@yNh]=FL%ȧ'R$n2␍6 h,IpA1'?8R{adL*9d`<\ ׏=6k)O)օ^+g!LaQ\iT/aF^a}rp<[NtQJ&`|ҾfH6B 0~ԅp| K#n"27]8**e>ZTkWʠE6E4v^96281UV\8hJ"gRC7~yZΪ;,VeP} *YhS%Kk @DyVa!o#݁$2W>+[X%՜\VOk1x#j9x_PnDtnpjS-~B{XYw̶߰-[3e뚊 DhZ= p\m 6΄lt% /= ɸY7sVv.#:4P0iaj zM>Ge?$iM3K'"s%j1g&iTr0n^Dv1s4:dWcY UٔK- _Kwó'E5:vCR؁Ħ2ʼn$6S-j=%ɾ=2O")>:cJt`qcV~: #'ҝz1bL$ +E䦭% "O4[p$L~VJr0[f E|iJ, +2r l5).wZN䘧D[gCō ̶)VC Ė#I #q|NQ:tG& ݢsȈ7'>D,:_Db/o%0"ɭhixG@Cx_Z+1 k2TMgEhPXA:N琟zMG}_&ãy:, dyLVq2O*Oyz$#c]T,{jglAvzs ^,&'D-& ud"cxa8Р/=4{YʀV =ߖ )a_شM66lJMGt[g'.$Eʯ@sʛ ;'ԿqpZ wHs[2|xy%+*xIҾ)6Ӽ?ꆛvb_E>\t@YysՏvH$`4j٢YR_:'> md?E9Gr_yd/M܉PJyKvꚓ(V,Cm!ߴo/m^`}bedrw%>PJi }δ`Rp@O>vRޓM6!Kvhl ~DA;WKv<[NhLs+gGCe$As WT^.*iڈK/H׊xd:Xh`}}h-o0ef8 D iܨ#G͊LRh1\z]GKd6s_$?QL(!8SjS@#+V徥`%w8,:YYS"x K?#L Z3cp G(#;gk6L,a`mC ר dwe\t¸"~W"UwDd͵Ue;1X8)N TnL >Irʯ=w}bwf8N9tBطĜBpwI//"ЕY}ٟY+4_!F\ B>?#N`˔0{K(qFmN>R4{5砋DvjG3Ì|ޡ<ްrڶU>߲0덒,P, U\@rSE~I9'u[L)\CW)WsC_ʪpa7IS*w tZԅSxd%0,!z@+cػyO뫗mD rZYbE+_Q! S9'm.X2| 1Ι܂ ޫfKF/D&(f e%\ISZ Mk&Qq7~@)oǵ*j#q7Qp^w~Bw>0t}:1 #p'QI 2W šR~h!n1BJE3ӵǪF.'(psҙ7,ʼ+Vo6 $cLB/a4תIk{g+LX~JѰ_ 4,׵UX7"^}ٗ;N .[Pwe9e3ߘR6T=r_YE i~!m`B*F逫X?tc`=6KҌUωmUN̼q"ِrB4X zyFFTmK`_h|1$rS1|Ph`'L0R&Fx nuoVW3N9QJ1[Y!N=brfíRQZ 6dk2 I Ď> 72\Kٍ\ vF=%In$FiZzG+=X,dc#.)S/"ލMRt* ˱D[v VF\Oa>+% Ȧ(~d՘m K@r2ͥI+lۼɃI7/ 7}v3J'(aXx†J~So텐Lj A2 +FN ~JuXfLwsz6WG%Y3RhLv*F鵲o:o`@oVBt2ǵ|2HͺZ+zEPWnT 4 s$kGD<%blu׊_#7}JٛnaAb1e ``7Rd4]>3v6MBLgIZ36m~œLU䃺w6I'#R#$8+{azMˢތa bBH~?L(o x@}Ew+-q5fJE/B" e7 Ho+|ByE7膰 4ohryP@_ixSN*Եp0TdaQTTPt</>}I7bf{j9}g,0.0*P5 k%彘g o$H9)_˽OJ]@ך0]n<¸v!ic:wH{excLfKRViAX<>~)՛yvڢ Ry{J\[ Hys H㣃M#+N)Com>A!t2ڢNQz -H;7/>D&t\$Q'* LnĞE>=ĺ >  ӈ^ /;걨/j[8HVzw K"C_^MYABp#oaK<>DCIqYmݜP)"Q{uIJLK;u{ƬI[p]P;ga'vG Aw8ǿVG1D4n0yW}G(tN".Acە*Vy,Œ:?σ:""~+聤vwTЮ(7#yKM|UMzԹYQxNo:E=vCCxۿ*%7~wr6MӁSDpʇDck%f4: e5F #-Ղ.<blnDuNG0:<:%ۢvqsM"-*wU_sB#4!-\9aK6 `WsU6գ?\7r:}rbeO@_Рup wk&3z {ڼ8'om<Lt#\~qb9+6fjCRdx\9˷^ 91dU˫{(\kGny5D)j)@*euϨVCG̥DB<ശiG:KPM"1;S&7m!zRxRR%/#I[d2mpdNH,a:OMdn:&™ F9??dNyj5Fudt72nƟ+B W6Q"YG>ѥdCϽSTM jPu $@WӾ=R .'F\#j\Nbnr&0v_|G s|'ZɽW NLT7+ ]YH"\1c&1^ҐAR2HjO~'kٖ)Z|7qc1#^r~;ɜ1!G)È1">gWTynV|WPyV; xNOYeӶbJ+_ qC?'8NMڇ `/էaiC[p}.>m.cZ@{5䔱UtF|(hČ3䩃%.Z00<փR14ⵗV5mlhHH^Ծx!nm`E!,TǫFBj{_H6{O87JȆKqMYnc\1!"=9Y⤔ݕ/$mtpjz/IAOGSieƓZSkPٳSC?p ղEbXKr0=u% DH9 p(VH(0rĶ4^icၙo]Rep(.IJ;qΔLcLy3S hHP˺)Fǁݦ!,!jf"&6tbMꔫUWh/XXR5c-jS P%6a*gwqWH.~Ze`9KyM B6>Ҭ-W40Ӥ](ɯ?qRqCt f!Or(0;|"NOPc0c, O f)JX'si]g̫ kYiLeB8)yӺ-1M/qR<[ oP3{zP?/ɝ]|Ipޚ6`7[@Zi)St,v `O`<uI弨`Иvmc7ֳq:䵥(rGHbOﳻ<s9R/&TP l8f(Ai k\ng4#R;1ē_)DrpMtf\FCޞ<A(zN}Fh,6 p# $O3Pi[9O?Z 2cZx fY d ͜X6P @Ӂߡ€N>w"@L#ݬi+Im8P?Z7n\ʱTԕLlisș!D,9=[5i;>xw֒cTl0x|]G\6JTnh_ʌ) WhLWbFxQ>[ 2gZ_{57ɔQUe-+qK"k@12]VwSEZObx8> M &Z,yfi2ifИ̃s2L5cn0R0|*$VѢ AC `ZR:;KH޴3 ɸ WX 3QV)ZCP/*3H:@H"si"Q/'JUae@F[GILɯ ᅳ?81GA=86dP`Aiv>OÿĀ_8S?%?3\i7N?&W#rIzT,Cz @j<+hp1Mc Z0IRQ*Ų五L ?v Jݥ?sZEXDfϫm6cQ|Y3<':+A [6CLnOXSZ "fpdO ੖5 ф?kn<"%ȟ13ᜮɳx^a XvX۬dd,-∸w/;BuMJ :EXe~MƶKi֏ˣқ/}s NP6ym"T* "1U˪>T J~xedfa0j+J;Q//U'aB gY_4<|2J|0DRl - JiCTb Xy9̲~M @Ǣ<;0[| 2\`Rg[[^MԎc9` [saBR6UdvV7V>б"BFϵ8^{Ǯu*F,@ڌX:!wyS/ݳI6CVs-Frq?_j|28c 7RA>jU}FZi^-J1'`U?~+7ȓ4+˟h~'/W:{XV+=t; kik5H>2 HP8`ֈBTILd;<4Ukue̦\Eb%FKZa!<{ZcY!%*|/zVx:!Lz>IT6evFvP ]գ9^,",)Xg.QUgc^O7ݳX+ީ-ꪭnvȀ~Ix+;e#=sj5BH#-nUgQ=ӣDسfĘ콇apvm؝ vtPĐ?j_|x+5 J5c5]V78nf*7~(Ù2\ m]˿CY&V)_وmfG%hI`bRo|> Het$ao)U}n}bMeܾ@R~r~=S˼`y?RRIJeR)kJ.0ձW.u5Cd /M_5$,Sڎ]G|"[C߭+r柖J-`C>Z_Cב3*dl#gxЅ.΄T26_+Ēwwz? hh!z_kDm.ޮx@}s?v+GeצA`˿ebꍠ:@Rx-zp k~<>v_K[Y pt\>p=N k6k@)bDڬrYS7C|?{ ŠÐxx}Hd)4hNEt#I'xax1yY:J ,oJ;~D+7"e]]BWxaYXk0` k2.b=vP0 b'پE;HOTxAݐ郃Ear#w?6UT(B+A&#%Tu|;$,Ba捔".vY6x`5]R;|lf!AH(̛:ȉ1u7;Tйk|K iTsKMw&>-b{pތx\Pf;OF 4 :F?bdji7lF@Q Txg`UoW:It "=H[f&h+o*91Vʪ_`e|ó)\u*&UƺPJ%J] o:]f6LU  TR!?F:,W0|)K|Wa `ڐW>3fITk?/[3$o渹/뾲;qX]w6gf:tȔA2d>n)63l}+I1:[0Fi<x̣*wd>t>k r!Xcz;nN:+!? &M\F6cv oE,OXe\Vz]ƆtVlQ?R3V~tKKhz<4uÀp7Ux֭#MXR 9* %doIa{ߊkYbZ 6t?h<M2*'d„2Lq%WTΙjBZ[b=>:9#66gцvFS^ӈm "ȩw(~x ٝuCg`r$ag{TQv `Au( KZidYks2QG稱ߥL >Քۥd4[)3uV˥W_|Z?Ҷ=Vr:H7EU,= ]RTUC_]yo(ba8HlyIlWro^ Xm~A*Hk9I4$V"{zbA&g>/]ub(=3G_!=I@*[c l_V9o0>C͆jyhOxǒ\OUp=c7HӶ|*CM.;;e0Xj%r 20 οA =/ n )H'MR!au\3h] xOe?F\EZ5}mMfEqxKT-!O g8g2Dk*-CFyx (Yֻ(Է6"]py(Rt#5> 9قDHwƇk1W:4\`g贈qਛ΋kl6~=b?`dzuUn3yhQ>j Op ͥsVgt~41,_.CoɊpl gLXIp#a6٪fHIᳰcõqcϞ|7ǂ R_ p"0SӍhm\6(3ׯu9daVyEDq  Չ:P7sNHdU`:UТJT lPjrɫOv!`op {V:ќi4WXɬ٣8EU5uFߴ@AM"F;407'SeAqБX䨿<qxU6jG*-abB |TS {5} .V\ftY5$ɫ}lxe6G9k6471>UΒpցu5HpODP|bF'Z2'MNP˟#ǥ[gɏV JiFaYj|7|g:s*9r|#?J%+\)1 %8WU$qG]p#SVJ%N- )),IC"_k*zYHtk9yRkB=X]-N @@@y[bOY_MGdaa.W>,X^ ojƒp_b"zIՊTg%(!Հh%9KSa^'zk>t-Ծ=$gLjJcywȉA 0?h@P}U$tsC^[ޠayɉկ)P3'0ܼNߣi5kC<FIm=?4'ܱˢM͕eDq܀H3äiQE:-6#MR,?Z;Mϐb3\b4>y `aARZ* P`ZbdwVUS6~;/8 B Ҹ»@-od>}n^ߡzM@< 嬩gGnmZxb$9a}I>C-w yϏWvKxBu2`tWB"X`T,/6A@)8fw[J9`:?~cqD#Ĝ0t#d_zmBռ\"NڵtE+p+BY}E(oϫ "ICU]cvG7m$1%?y/ L&<˞&~SC"*R3.I;_pӋ8V H7a'șS&xMH lD88KKΗ7vuqki8`ƎD%-v], L]=/EhUe%[]]AzmL~_71Ilt"!\g $@r5+ޞG7l{Q j!+xJȏgy{;CR\!zdou_q9{GxUsey ~s<ʬhY5bv $zDelwO2TIg8mX"L% |b"c.822A:s-ǹg8o|L=XR,ʍQ?N!ںȷUxgeW nLd O[О#xd]1ra$ EH OnK]kň Ë}J)ly~ G1Z ?!0R oEIwH&ԶM= @ಹz48ɌU~<㓲dfN4H<<å$&UT4fE">G1sRglHp?]66\_w2.Zt'BɽwZB1S5l'9da/PQF^fada:zmb<涿0<{v՜Xi F4SgΧĜ19߀lqq"S(=Ixoa :rZhw#rjl!ML'jk#(--֏ bP +@raoDثt(vjnD|2}!m~_a<%T+?.dlAߣ}OVMxF(`!OHl؊S~>!󴈿/Jc)EQ'zۭ}z<1 YLWAw ƵAwҘ~21_|WVqNR6ɔ {[Im2c>3pW:9oR_)Qa.ƒ% h/-ZQ:K3oxOj8&yCg4&Ω+/D:Py{gƆX[ #>,uNBiDY l} ٝAŨ`:F ȏoe#Fު}U`8<+<~5x mW&\ƍH]!K4SNV+#LM- $N]K]k%%Z9YD BC2`h6$@\) 2O<3p+C"6k_x^0؄QAӄbF@{h=i9_byNEE6,w9=WIAy̹f *-e J(Ow+>Dwtt`ܽC^wl} V2 lj> ʳܭesr`gBfħ(zIOi"ƞ}nBW)^Q=ECNOSM-c܋l@g`'Z:jXX [ h&cW4 f " Ɠw 6Vli{[M )5,9c9s/T}{1xt:yRjTeeOuV8"n ^<][.K(2b/Agd/|wnm"o~Ve8]"36de7M [/MT>_T܎9pA\LH?"eGlH)J=+=^U2v,jF\Q;-F|kILp,\'"|*m4LDT*Y{ i 42JHy+ѸZ e4!U;gbmGT*X漀 @Orh"n:'3 sWi;ӣa exЋ0ߓJw<%X# ⇓5P׳߭WM̙;st<\y I0ED+/p9":)(S $*oV! F TދgtA4oV!yكXtD T I|2-s =2ݻ_@6N"ٞfxnj;cI1(#XWFhqb o׆ȊH@9¸joG15[X`S: I[3#WbDO3SN ۗ5[gw%H_?XJ%$/)P<4U:b򇋬sGnlyV^E9 D֠>MYC~#]˕UL~lD y*Eq [ 谘TTJvQbf`|g|L'80e gM1+]v%lgt qxIic]U^s,ҾNQXVE^6*b Nztd o7]UTb&qx#BlEk7\dE3eQGQ2 WqA?&f1ݿM,P-WCvRGȝlPRiʔ W|90?~'u GWڲKAS9t@"9gUxJ7 P9{XEZU%O'; m),1 ғ3 ޼Ls@#pKx.H*WGk56Ü5a[Zj 61!%tcZ %%I F s6~ tHJb*aS^#ZIc p&09 t;^][C>ڜ[|cDV4<)f%^M}/d.,ԧ0y?pɮ6JО"c]ՕK-,'b-Ytoe`x=k5"&Ia(:m hʦ%zk]bCEV3=^ЦwPO)g3 A<|]ay/23,Tʔ4u7cu#i(>6yVͰh搉xXj0&QOIڡ$ %}خ('x;.#D47r>|H`aBX;^&f=Lv: z-Uf0_;WZҙ)g*hkq6+ )nsu X^\(pbj} wYEȳSom*Y/ r% ?vXuw"uKmRwdɑ֭[^1;`shM>vDy5X;@T᷋Ù@#–][6Bj>C3T">[|!^WGԩa5n ̩qoVu] ~߯ᯪ+CdvxIL"}M6S4<" KD 9{j) 8nuáp0؂83~pC:T4N:ّ/ m@ZO@JI(.Wu !"< "{3v6ˆ6UCjI~r=u߽cGÏcC#`+,ȼr&p Qsw7 *8~2?I΃ex 4mv:MP M -Xn{eR$|r[Q vm}5ZEw7m]cR~tXWjEFyu%ȕ3Zkv^p+lQo;T|&֖]SkSA,y*0PT"sLՊ˄^6SM #LjbTK4`{ #AaD|ݮm:^n#Oy[z?B񣊶~>޻{gMeTwh,_Y!o[C}FƱ|.N%"Z+c|7E׻}QxqmZOYf\kv -)8o4˫{uqiCұ0] 'tB;s wA>5Bs*(l(IW;$Mh S"h gQK(k@.[PL2-lǿ%(03Zg;z>m[ [ t0HD 7|X*Z 2e=D+x%8t+E0:TS'HoeE><&Glwx# |Ҟ*;Kt޳K5rmG++fc&%:OYxI\4@zƷO"qyCU٩igrsh0HF}i5Tb$, z`kax6Ъ1rq,aŶ*oSgyۄYQQɷ{/檼 ]4WL4b(˪>6xjǓ%mr$З'Gp&G''2R ~UHbabiv MnC2M0H2di(?xۑ݊x:y qikXL%4=\z:K!tʆ:iyʂ.8m ڋ2pG$:)SuA&Aw % /r.OͯӶv칠/Q]3S(x叹5WFp1ƏF `3F¿ya¥'"ZK./{M1k`hw*X`:=Nj[H2Ƹ |q}{"|5zߠE沀ɣrBg mxTVP "0)I1Xupi}&ᴬ pNCnwmɾaXjÑۜgn%i/B0[,<%=t8[#I_ 2sKR~淠1A p{JhM5Dǻ>p8t֫0w2| MXO1#l)g\ìvQ#fҶ۸ɓ7U$_~aja*8=\L ԵO̱wA(V$5N Zb%g˱+.\Z 8ve&l x^{jvz d q`LD/K{e =`VPvpYDN\ 1=j,n㓺Ӕf??lcxӮ17gW ="QJ7fח07?Ǫ4JoW|06_Qy ;vd1("[RZ 5loDj^V,7Nb[J4Kj@w55d`h\<\g<pNoU ?k8Qtz,d6? t6_j-$|Q;2˺הT*RR')K2"3IziU Bf,Yڋ h1TSZf*lr7hK:'vf^wu,fYEN@K;/v_(b,Sa,Ԓn>4,>4ʲy }k* Û` Ι!^*M4kuԆ 8~$f*ǫ+b8CvGAiqҾ ,'muKRfrlcv|Lkx:3-th{Q%b{v}X6-ru( Oc).T sW ]ś`Kp֧rLtRbAgp NG<c>'{IH(im9AQ A.$ BJ M]>;6pnC2˹al#>l37l1'0߱TX ?r'1ri }ŧ;arCJ"\+J^?bRh N!k FrSGsϹ.Fjȥ0;( @%DLƂx$|]{}ÑqfB#,& H'/G]<Е]9[ǭZV<Fh\ns6̃l+BL4Eyز3>w S|wq\]AUdFJd;\8bk_$3aNi {uZRZ;__sL cIK̓=%|D1]<3zg&l}(蝌/6lHܕiFOn3539, K=%wnrTPFN,gsӪʶ8#l* ޡ77v0^^XU>E创eЕ,w$M`B\B:rڂ.Bڣ9upة,in$S3^3Έd m58mUխWA84>W L]hF}iۄ,z]3 T)eVU裈-PB7ᮽ4]ePBUCQlXDu"&={oHĘ-ݳ;V4AQU&=>ėr/!2ŻQxTd$O߾UZoàIp[ h,Ꞙm=]kN<vMr'MbB9 9bY3Yap5=X-P b3̥wfnegZ 6 D<%.3BfZ4]cwxiunZf*}k0Kld Rζ<%2{~=o.Ȅ)!LdT]1xw;Bݲ))>?'w|A=&zDpmԕٲjey5ьU`}{|~'pe*i:kM܂%98fWђ8`Mh})TEܯqԶgC8ƦeLcRi]>}WIݝg;ǐ2ǎAc_!53MK 4+B.aP߄ 70Zl gZ\H$XF<29]K΢ 0vw@!ދ (B]'6ZqFyM^zU)B:, Haٺ+^)R5.MyĿ1/.@bX&VKUݻeao&Oh Hb~t͎%I\|ЬLi“RQ0LB`6oB1{5Lq(T,CO}沓 Н^iP2)mudRw#dlˡߕ#D6Tj9Q,-_ ]SˋUrF=@u'YrNFU`ԎtS5ï^G.Aӝ/M8N%2`]}%z{`$f$+`G|o#d wgZ!w3|Qh*ט& !TfvZ薓qdsvRdݡr`^,Re!4zg36W{^Ď KP!ķ"x]\2ϲhwЛvNudmğp歮Jb *^hR؝d;[ljQYb7V(Kn UXei}w(VE!3pEacg rѬ)lOD ɉD5MWլmnґ (_M ʺ5󚚕5&?v_x/p f}ޥۇ%V-n*|"+ .r U՘б&HO #un_fHzvvj}9T da~S2F`{-kvr8eGآfI3.Yq?X|F JoWȢ'vA uq(VEV_obS!?!V$)= LYXgiRX 6YڪUPI) }]#]6n d\9|tw 89P%qg3 5B^VbRJ&o-OOˠR˼s1rmǾ^E=%ԽHJ JA<&sypٸ:T;ZZV*,șBE7vKGxLgJQo57F8,>x)><#_~K(6]5CK*V bza$gj;%16kw!Kh~Zys`" 8VN1Cڐ{7,%ΥmT ]wcŌ:3ܣTKRAWgd`?W'I@]g/84Iv۷QpWpԇfܐ?|1MuKtȦ(NRnK 1H}5 YU4,62r=tdB{!ҘĮƽwSA:ʂQ ={Wœ p3},vB-kC/_«@Wx1V0k;)&TÈ{ eId( Wygg^j+ EPFَz.qOCR#[V'&7svo/.8ͣ%,c@\D %ɳ CKL}{JE]b0Ea_qWSgA)'g'jms9bք8ǢKu+p惄:詬GVН&r(Vmpyl;3=r:`[9KitaCL/^`GQIz'yvf( ה:y ˬ/i=!40R=;sl/ l¸vRˏcry $NNA LT\{]abd1s͊1mV:D^m_H'Y-kMPvb_14+6L n_gzX4K.>3j5 ^C Bkjy5j-(m,-&]sbԽ rH^@0 ?ֿ/l1) /};E":l)P=hl0O _#-%`<bԑr >jN6|*Y}-J ӼpZ30+ތr"sՉ#u8jG'9|>'Q\ i))t.M(Og=ByQ-.? /+W%;pT&Oo_9F6Tx r:cH }i{?6|ߝ$OmW<NE+<((76pۈy쬅-E8-K)K~2V]vO":j2}!v  v@qF4Yj!kgX!=h@P$+'2ԪuVЬ܇Smէ6{.TrW]u0]ePBqB3d-t'] #cZ84W_*}x k-]S z!eq7f^tĊ&lxbTtw&Reh/J?kqq!!V,,&?&Br ҿ(15>uU4FskP8_Qʶrm~᎝.]*$VGG`y{0{{,P6Ө-IV嘦%ev' ֑/I#?FV%_A_uo(өvoX`ˁdN9:}@XV/$0`YܞČEe6`\n"ݎÍ6𮁘qUӞq;ѺtEк~Ko*an 6'x.!ś*oEL*ˡ4YY/bKM xQu"vV&zPHCGsOs F#1ܷwvR7,HX!Y[4IâKL&zOUs* >I@i}<ڿ]ҊcLl5L]8GʖԙxQ=09>ﳨ旽U2]ʦ-;)1 f*+(o b3 -) foȶhևs1E9]YE~e{`ZQ%NQSUTd)~ބ%S|N0HKLަ'M*V0 X艜sҫH"bBKtc}UfR#H}TIEYNd}{S?.ĬK+;jʏGjr5qI3>aQiyD≠w4xÏ;>!@g ydM^~2CWY5hM΁l:/!װcd,_ì?kT>@2EGcE0Awz!5*$Eq sXVdy冴6ͳ۪DžSRց-ƑzHbZ pD=+_z`6;Us $QCQû1#',)†iA_ F''}Juo/\m bcteOf ZTy gUaJZs˪;wGY'Ojw=ao ~mF&u儜D1Wa't2PžfHJհr=H3]WIQcbe}:ڀib/!Эeck&<*t>q WgH ᧦!FBIg cEy־oQuks&Eu ⓆD֮Z93C~[$ka:Z=bFV'}\TŠuK@t`Y }d⯑TL$ ̘"xh@ӏ( ;4&PxqaETe/09(#+ڞל؏a(Rۇ.i=BDx?^%>tgwa < +o m{ְs()ع~;nZ&nSJke"l!