openmpi-devel-1.10.7-lp150.9.3.1<>,Y؉[/=„3.[ʈ\ĝ1θݛ:;cضelę$4KqRRBڴW]IЅUS0QxyTqi '=Qo6ʘ T3Pp7 ثs3)ƒ+bcր\}9G|K6zc`|c6 a<)^q݅.R:xM`j B cnĦ27q"Ӵ#o*|$1dr*!̍gqrcS,>>ǘ?Ljd # C 1JPXNN ,N N *N NN NN~N""(N/`/*0,*4*(484y96y:>yFLG`NH#NI0NX4 Y4(\4PN]AN^DbPcdefluNv*wNxNy@z(8<BDŽCopenmpi-devel1.10.7lp150.9.3.1SDK for openMPI version 1.10.7OpenMPI 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.[lamb20openSUSE Leap 15.0openSUSEBSD-3-Clausehttp://bugs.opensuse.orgDevelopment/Libraries/Parallelhttp://www.open-mpi.org/linuxx86_64  Y .(9) ikP{(h   #Kј{> *<J * 5wM0+!0="&8 sL  G9(xp&j Z IM3fhT0 35,8.U&t ~n 3Q#U*kYhF jn!J * ^!!?)`ZQ?/w w R P SAA Pj a dAA c f 9xM", yel 0@?!1v4Uc~,y )5_VX \BrD eh-,;~u U\5Lt p6&q]t0`| HQDT:%kn ( \ 0t2 ,,|-.-,--+)**+67344,k,c!a@ }R7*28(+,B 6P p , ,zgq J *. S',,'2'M d NQm.@D7NHbvQ71C7as90p-,cL0=?0,_UL3"8{j-f 2 +_d, EKU,,-3 +bwH9cT $+++P,,w K0$%..- .7676+-//56+7-6)..+-//56+7-6),----///`?}5<+-/F/564+7-6)**2///,5.--+-/*/564+7-6)**2+-//56+7-,5.--+-/*/564+7-6)**2t}----B,..' +-5  r+ e- .** -.9*,,*whT 7XB.3D_ t T[u)¡A큤A큤AAAA큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤큤[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[28966acfbee0e6909d93b60e46ff93240ff446db647ee9c16ccb1a9c74d758c580c7a741c94e5dfadd8451eacdc23b07a3beef4c1271394e96107067e34cdfc77b8b4b02afebbb7cb660e350436f146258dd191a4e41e3f4081b4b6ada7b91853242aaa132c8f9db24f79e1d177dd1d87ff68ce60832be4a2df80823a8827f588f51fec4e389a20a9e39cd4fa2d52f59fa7287141505d51beaa13ddec01df997b21f48d8c5c399738bd79aa9ae92e701e04b4f5438a6354e43fb574ba608f2555e89d1d1ebec2064ecec43df31a27ef1203c0b12588339c4549aa3ee9585083317343def3a4b624fefb98bfbb1df08c95f8cbeb61687b6e2a7a5840c6d67d7db9f9b634f4cbf66070c11579159bed00c76ba4f9eafc69bdd33aa1b365e8519f5fe98bb2d0b3a8631ae26705b36c66a6392385ee6ad8f9dcd52b4d30ef52f5e820b41bffd39e992c473f1c3c73cf47f1ed28393e757118bf8f8c0033706b4988d6bbb33942886110352d285439eb7f039713067442a9ac315faa97afc6674e3e211d7098a09b8a8d529af2460c577dd81729db21d61786654217338df9260b0d512ad4c697052cb5fda56f5dcfdadffb3d09fd97c6735c317956d8518f52fbaf4eed98d9e791bd168eaa7f531c38d8582a9d56666ded29195f4cdf165b418999f84a8e4880e34c5988f5feb7e7f794ef28753e651b7e220a1b93ac042afeafbbbabd6ce157eef3833be927d5601795168040594ff6a37c4b8a8affc6ed957ebe3e408b9f2022bffce0677486701e98b99085562e3b3d60dfc70cd0dd9b8a40754ea705cd7fe2f53bbaa7f71d75a59d39c21e1c87e7f10745154a288ecdcff29adc0ff76c2cfd73ec6ec5bf5854f34271dc17253a28875adbde529f87153b60fdda4ab0e142cf4accdff9f67d8f6e239036ebc26e37981d99abe8ea8166e3f011b11b1780eea7660053ef5aa98e8c0ad24b5c21610a3beb67bd84f287ddf0abfdc4c46f4e989fee9089409fa1c8a29724a45c993ca30388a08c63f68d9a43a27e600b102422f3f72051281591826e9bb70e639fb7255e861ffb5170abd84c47344bffa571f72094b4ad65cafe53c93eda45a7784b9575e7515318b6959974b911ba98f1447550aa92369ad542ece23438607d78c1b6b1c349d0a8a7309ccb9f210bcf0439ed08f4de477cb4e51d968c8266f806781e317ae9fde1bc4d35bbd49115a09dc59528c23934f6646abee3683e13371faf81cd0525f467b138a9834ad3762fc4b94cb95b3a70865d99f74e200fa6c158601b437e7035473ec69298162d3727b85125e3a1483498dfd8f6f82a1d8c6940ea681c25c64530087f8ec9dfdd4b7ae43916256baacef5cf806ae728885f0614194763760daf0c66757458c2bd2f7d6974ba1fd33342315abea1b7d905d7859d4ccb682a790638b17a2f280240061b924305c7249a9ec3ff6619944a09196555058f1519768cc8e4eea4350500521f26e770ff2e746ddf8e8b5993c19157642b2989a74c1203f83a9916c7a538fca3c0f9371a4b648f3c85be2d6976b9ea20cb8c1e0f0607abd258a55963404838b57fe94109932d8a92e77800d130a4894d94e8520bf74a124178ea1fa00044b8a01e55346801bcd66b2a01b0c179e0477690aa91064bfbfb48893cd39e5514490419c23693bece804a4a4562b54c4b666159b149a66a3da6a49604b5ccd2cc16dcfbfcbaf0eb13de7bd58cd34b7ffb2dd1b379534359f16e21b21ed3bc6f8885210e08eb8f0eb43086c20debf03c2525d3d56e85530cd3fdaf977471caa2b31611aec5814814c7f9c1e989b2b277232317e7c331807d6a2768317a38c3f54e24222e8a61332465398bee5a4a6e25b3ef42953b6e9593739a61490f26f18e02cb5a685302761164409e677f41ecb063417cf6edf62f436e503707d733b0a8cb663c5dc0c44a5c87c1da8ba0531b211d71a5371b25c4a7bd20d537351ea8088c9ee1c5e2d7512677c126dc896d9f54fc255732d5158fb58848ea4b4ade4c911ee94407f8eac62c35f054e8b7f9996dc60f35ee7ef908219bfe504110e31a39d7d8badf922300f36b8d2995aa090bcf5e6ea9259d0163c6747089369f583b1315edb0d3866913b727e20068dc2a6b4c2c7085e28e69f98fbcd6313ad8d12cae42a9cc4fbdf21d7628f9917e9817e8d81a62ff533a01d5ba94ffe961056c130c2fe6420ff84a4f42c5ba75a1154024bfb5a31aa26af35cc9729a1ec865156b295e4dca2ff26632169ee9001cafaf5d72444fe26a82b169169c1053accde55a6c4a5285d2a23cbb2a308c686bba0ecd92fe4161f8d9e036169043edb04e46aa328f6bcee45747262d5ab6c4e313b00aff2296af0a8512e0027d62d215b52d8fb5947bd9b900216d13a1c2b9c265b3ddefc214ed2f878eaa1873ab9acd260c886d7371464eb5aa2d39628a929bd2b15b307e83a7b8835ad8b8a128487bf51fa1b9c0b4f9e31ffe675c2076fd4740183b4e47c207702df387a609cd0d67aefdab8ee882a0f2fd99b692381a9ea2c1433d69a593342e92faf7b87a1fa2f45dbef70b25240d038184492c560378c8079476bc2af07a684019ba5f9ce56e1c9a8db17852c28aec80a82846ce3d1aa987cb9c7dd864735288d4f3388da05ac2fe86e041c0e7048e971bdb9486a904fd3f7dbaa217b80304afa5d34dab14a6763432e6db01f9871c3f5ddcf83fc0577ccea17a6be4e25ed0de82d84aa5a36db006203e3928cd1a310bc277853bde5d1c7380ffe7b7782ce56fbd48a0c274c187deaedc20259479cd99a5cd188c3709b806f716f45303c42a67df4f7ba26633572b9aab7ecd4695807fc41c7d66ea4e1d89887c2188258c2c9d4438ee677b5cb1896971c333444361fd3a5f6723b9484fdbc9a1e510273ab749ba63c71c70945760d2c1e266d5b5e95c3ab623a002ecac7dac3faed246529b9796aa240e9fcded7db6816a9aeebbd2590839b4d7ac8abfe8f4d09429905bfb2e48d75adaf60b9e77d6635acf3e48921830f8ead4004c048c2507b301a56890d4b4e7656150e7596702e89ef391c133e45c24f47123b77639886af4acc74b269c63bb6b6a7e0547e1cb01254d50080bb8f22f1d439064cfa8c839aad5ef7c43920dc9d4d418ac989eda3faa78b2f7c8bb2ba3c5b880fe53b66df6f436386a8e3ce4fa1af1365bb989d7ee505d241dd41e5cd1b14dc301c8260335374ac2ef2f703f6b87699dffe898ed961cf70f1760f7c1860666af794485b409e4e0b836b670660864e280db8c6a6e572ecc7a4ce1fb9557ea5b56e4c465dbd411e7070e18a514254fe2071b7a3002c9d1981d25a5657e456dab0273c3748916d4d0e9c789362149a95d84feb96d1577cf406d27209c9f9291b39af459305594f7b45a8e8fb6db0811055632f7da832f332570bf1c60bde08cf80efdbf6f65fcda76825716d90a40595322a22fafa05b47a8e6cdc9b19618886350df1ba3a4a273c4d4c5cfcc565860ae5e84e6d2e040f1b7da476deef3e698adff7afb9d1190d09b42b5fb41312d70154ca3944abafb3b59e527d8ddcade7ef69e77916e1ab05ffddc51c4826a333d001f72bccb58ff8d49d4bcddab6eb963c9dc7d4a7bbc4e6c9e8bc01b38dad5e70bc3c6d0c759b7a7e9ca8bb31fdaa31985a6a95d87fcde7a0bea7f45191fa09ee1173ef2798226635353328d718d42001fbae99310d03b221977d7e2305a35fcf7680009f394c8e571d51a609a261ed67a3ea4756e6826325222bf8c9ad21b260699911bfb50e7a588985a5a98055076ba73f7970817644d84794f82a0b24d6a02a9b7389e85dcb3bee9fb0e33131d3a7bdacefddaa551a69669424386fa6ea72234eeb662930c395062e6366acda2a22f80b7c87a63420a56ee12b5d7fdae0cf5b4ebe5aec45806bac83a7cb1cf0874471660e5dc87dfde8b1b892f53cbe468b902be233526b7812f5cae9308ea1b5b791ee985fe8c03509a1b3dc802d973b405912161eb7581b3f1e84386d869cc229c03310c29fb82870121cd9963d08be478b97a29a39981540f86339736d398cb26bcd31fb88bc67779258ca66e297e9fc15971602e9ea6959b80cbe176b8904d79d5764d8d844d5d24edc37366e3a6fb1502a5f48e0bd773a169dcd70c51790bb6ce1f090d486a53ef7d142e514240b7a88a35cdbcd0f8047094a87d0464425085e7cfa9b62739c3f970fc4f149293f87e8e0bb7fb535a0273395d78afcea2f6266a846f1736d9d1e0f0cdf6ebaa8139191faf06613ea1b8941b607c41b1f0147630973273cb3c64c33bf4cf9ea255e9117b9d7b3a6fbd2c742d1ce643b9ee9af691fb8c584f267f48a28f10ed3e5d1707105bca9d3eba8dbb5c8b25e03b8ec4839b2618798c1adfd53653de870491e2fe408ffe594ac6b9b50a663d19c05ddd4ef3ae1c720b53fa2b9435c76dbaeb84adb134ffc60963ee68aa8d4dda4b0fcd9f0781adb4113b48a2b269af7f9486cdcd8a01393ab582f676be15934b758318fae9429bf0122f5fc2b6ddbec7dee573bb8f9bd1d3b105b978136c4e7686e0e1db4ae313e0efae32f0d41e9d0e71a8210e6c1f0943d8ff07bfa8aca299719228e575207001b5806ea4a0556187bdf2936f4a1743ee51649b86201a28021e8162f0fc484ad4c2375903452d11154490e852a8e4f49e31da13623393f896e3b6868f5f6199af916c968d69e3221ba411445f2b1155f98271b2c6656d9f687c92b170a36a66434f26d8f9912ec15a7d3c5275ece366e509a1c2fd0e8335107c28f54570c795ce72272ad9f37c2b32d920b8b10e42d4faba5df36774f507f1a2c17e31ad6c97c707260593a11db2be4ed08809d888bc49f189e807065df4a6692c738acf7df9b8556c2b985f93749557b1767676e9f501a23a70f706971f46a370f357813b45debd45f9b459f728db6fd687e00b2ce7fad933287903cf77197a2dcbc6a67cdadd950c610aa9bd80202fde4d3b51a5dd9c92f501492289b7153f200e6a138e6fa9fa94321b0e3cc69404ae908f53ab4442cd35ad0642dbdc00c9030ce79fe682139740224811fd82c1c86a9b1d0a8935778f1982ce698bdb77630541854b4c604eb3ec634d97a509908a7583c09294c89b043e3e6da8caf38b32e5724fc7c9abef684d270d24405b8942338a64f2f8feff665e58320d2c190caa5d7210b0521ac3e6516cafe7e38c4dc1c01b8c91da8910c6d873c70dbf305e66712bd7d96d17738755d49fdb69a727a8a2795f4a0049e9a5718cf56b406972ce19b95dfc82d211cf0e0b4df1d5ee926d058a412e3a9bbc242bc0986ae0244b2dad45daabd862b0181896404195afeec0b731e78353f81b4c3abb8a87ddd364ba26300bd1f4db180086ac1f507ce800d19ef6e97ac83086fa4175cec247e1bd222655068adfc3c816bbbaf721f6df1dec05f17cca0639770395f720e9bec3c400dc38f75e3ece9b1230547f0d8e82a978ebf64b78be2fd9906f92a64c411272fcb57662b0368f7556b66722205de85361ba0c3654fb6f5d187507c0ba7da632fa64c99b4bf589800e00b83df32f5e426bc45271658f33877f91ae4f2df820a3743f47caa6a2dd6cb9cd002c786d889d723d26b231f97ecdb8739a9b04787d5dc06b38303132de8ea3bd88db45126b772595a7835b6e65396d803eadb125efb839c7cf5392d8a1291ea5bb675bbd8f6706be66a5b7db11c60074f2d128386209a7235e2e954db6c132573511ce237a8d80f051cf3b465fa4f57a87cc6f345c7b61f85397c9a2c7e2b7cb4ff634dafd75225a302ce78f99324b10f62e6be7256c080a1319a564ca4c58b610b6eac89b38ce31c9d04667736d6b470a9ff8386209a7235e2e954db6c132573511ce237a8d80f051cf3b465fa4f57a87cc6f7940f1a5cc9ae7eff17e9f9a4a8b4e304f1bdc5d7ef15edf00f144edb93bfd4e5409a6b5d89adac5d2c0344a5b116dff65da0c30c60ba4bc3a208be5115f721be2b9f2381335786f4dfa7f51b878dac53eaeccc80c24814d473244e1533c0a7bbdc4718df6c62db63fb079b28045c8615b74d69af7d9974ed69eb2ef06ff7010675988c0e5a918d4e7a45d481cb7c4b56c32d4d77453a48c5f06f87f9a6c38f5f4702a98614592861352f99667517394dc1622259346eaddbc7626ad28630dd5bbad1b5d4d5f92f6342f6c6f181a1d71d9868a3c8754455288ceee2c2b07c955bbad1b5d4d5f92f6342f6c6f181a1d71d9868a3c8754455288ceee2c2b07c954d3a50f001b6fb5dcf6cdb4264a6591bda0e5ff3e81c00624053c8b9caa5c721ca6c86b4ff8b504b5699c53a797085c67b7fec25ded88381aa4c9356a4a28c204113fb7386b7c9d02cd29436017380707e504c024c6c04b4b9cb8326f78fa8e5abcacfcbffc461b62e28a3bd885bfe18654d3a8d3dae4aec0ac34daabeead7185f4702a98614592861352f99667517394dc1622259346eaddbc7626ad28630dd856880b666c210b5b4da01f0c9ad5bd7062f34b163dd14e78ad3452300b69bd0d4641dc0fe39fa261cab5a49903759cf49c8f526299211c084636c4934000b006bcfa848aed84d19b93451e7bb356a7cbd905a2eee2fcbde732df0cfeaf917305b40b51ea5f0fdec74b3dbf876c8f137b0a563b0de60def4bab54e537f1a0c8ab9799675ae53fbfc7373f85f71efd79b1ea01ba084bcf086c6c96a67620aec7a30fac7da7426cfb54269b4510796ade36c849da7f318b739c01b5a8311917d854f02a558af186f17b5b1e310d62ac271f24db6c3fe7e3acc6bd1f5906580efbc1d02da229de55a75658d287063fba156168b7764eaef5fae3bf7cfb32dac02c5804ca78801717e4f43e9625bb7071e8eef946617d274f78d2028109c7cf748716fee825cd3bc181c46dafa27dc5d6ab3633deb3553447fd7db2118e498941ef07d8b0fbc394d9183662b6629889ae10e762518fed06cf4322f7e4de7123644c2410bd4be29824f0bda39bf3039460a08bde24dfdf3a53500bee1d63541d14a80fc97c5c5ef15c580f667ae02246821b3aac89d6d6b4d6d5fc10718c3c1060e039a19d5fce9d8adf36c0ac084fd29b904fb9c1f3537a8257ccaecb54b54dcef08f6619d92350eaa01c171b6925a5cf6448a10d89c942401a8a62aa823eab10793d48ad57d1f451e470fd39daae72f8971e2a77d6f7a520243ae76811d229bad17889739427d7517119d62d40c87500c576ff204b76951e3bd06a0275beddda88dd1b7eacf8f7dee323d4710cef1e32d67a577be081e20e84f18ea1da49451671942d176905030cee1b339424ab1f46e6b095d3cdaae63745838a97fc61650740ecdabc21e90236f4d7c05e50a3700a22f00d65d5bb0022b1ea91007bb92bd5002a5ab1501a2543a217b7f6e4b78b9eff3c1da7c0e45def744ed82dbbb9f967933e49268e08ae55386bec950a44f9e89ebce54aa2e648bad3f7a77bbd0460ec1cc6defeac8f5ac4169057aef59443279a1fb250f0d6d225344363be9cb84a61f5366d4ee98f3a16e9e560a898ca46f205c6bb0f3e7270887920bfccfa8a28d82240ed053b302ef2d57da39092f9506e031170e2b0553db3816182736f166eea6f21923a3a20685aab719757260d0d7be52a99fce9cf7245a83a8e41551a92b707898a6415278328768c5c7912250871a4dd02286cee852f0bcf1173776ade886cc62ba06ff25c214362535b031e15d2cfaea18ea75c35224bfcb1f51071df6e41c2db7e718a374ab3736bed181c1cabf2b0610f13d45e44359b4f42c483ad35c4c32c9532131e2fac6d10680cab30eebf9dc56ab9a0d5eadd07dc1f04b9d81188eef5536c649593434ce5505f2569af201ae351eb29a0dd8dc8d327371ec32af5906c07e75b39996b87937817a8168d76d850a0a274d5af5c140f8455f3704ab33f2d00e0d2e110de36ed722d11561d3c479c0ea5876bdb21f22e7e4172e621d3070ff1255daddc91cdeb36eeb16919c724e45a79895e9b25995d0c3722c6ea9b57e5633bc744d90f0d425ef48c2f12dc2fc9e25b43785001a32ab51e9f1b8827f9135b364c5f19309b1feb5e47425f41b6a766b9e8b8970de5e3c233881ba006b76e2c5cd7a506058dbbf5053df0280eb6b87fba2c5a9ed169d007b558a1823e0ac8ac9734c56ad54776d233ae7c7b1a54682f644526ab83c1b02ce5475801e0d72dd66ace962659762bc67d18e8f2dabb5b3fc9e578f65cb101aa4ab4e12fc954d3313ca1937dc3002b0454f5916761a6e4917a5a22df0509a57104a098a908bf4157bf2d9d96c1dbca9be1cab46178cb24f4e44a67beefce4f09d53cc834ee64ca5a5229e311d5863ec38c70e7c8034c244a25f45418ad75fb5f47d0883c4ecb509e79af5447f4cb42ef5e91615a5d3c3a149c80ee989b08055d088fead57d513b2ecf7473e6b5a5f9af4cebf24aeaca4e1c2eaccd06a758980898b98d385bfc7c6436dc65650bfffa64462f331d93c1db4140d00ac40b0b786b039deeb216f621444bf7ba80425230af70c1bbc2d61d36a25c368db73aec96b3eb02607ecd38737e57f7c2ec0efbfe7fd617fa94c2de852f573bba9da2759f4925a03e54e1fe751416f55ea4740b1647850783a24103410983cb61a504fb37e91f00624d45981210c1ab5477f5be49a300452efff3bcbe6fd1e640f9979a5f89acf81f55ed38b42bd8032af21cf7468dd83b2c01b2b31ef62a1b8ece75c4cf14b79711d1298c0c7208cd4dfaaad9e95aaf53a0e3db98c4b3c35919edeedc4436e758dc7ba9003368787a8d0b4184cb79adc3d6e090feea437cb28452946e2c9021216cfcee79c64cc0051f4c02b2e5220e618276f8cea98c3dbabc5f294f571613a763c643963a3fea7a1eb4ac94016b554a725f6d0faa75ddf8f33f5a43e25083baab1850c7a029a08b2154109062ff681710e8fb7b1e7221a023b6d1df60b14d7c022ff1bb3fa72594727e56d2b9039b44f951118440fa8d9d159b3051368d4a22503d52993b1ce58efa00e7459b30d0a42ea0dfe7210525b21f96eeea15dcbaa8cd39fd701a51118372a4386ce9325de889f3195c4b474ab272aae6e9201c0847f2d8e77024dece557c59bf44ba36cc795bc96fad899fc8bbfa8dabbce62342869b6eca82b5465a1cf0dede447c07067a99cdafa9a93410e736a5ccf5c6b69d55b07a3319916ec1f5e5615836e6e8c411afd6089c5d381a868ec217305b6839ef8772ec4a1242b603d18d31e24f4f3e556ca735f17c9e74fc71431e86af5fa2233d228f9e2e0e1a829cfc98229edeec7946a158259d8171c7b5239880ca93b1ff4084a1ba8d94cb446942d791d8b9cb303f90d61c4e76bc9e8f1faf1d3bccb08d2888e3cabb0efc098ba062d6f8956d1396042a08bf5a5202194e0670ad893ccacb7815d031ae9a066d1a4ce3da51fb9be69aa6046f12f73892da86499c961e7b9f5d50bf81b3a300d4953a44044fc21233f28eeb3acc5c378a942cb269d2295d74e326828632ced064bd46e751e47753ef6dfa00968664e9bf62d0c62041fe030131c1a123559f5906bd482dfc57b876c189476ff714deabf85af963e70d7e019fc7ce6e7036f7fd41ef5c0feeb017c021447fef274f5b07a3b36635fe4cb0acbc1ef6a0e52360b9edd782cb264fea7bac83a5318f62484ef40da148dcf992db61a7e6170c84c9bfd299f1d92741d28b3ea516c15fa772a9c7452208433400007f9ec0152e4dce373b88a05aa9d36eb7dd6df80ec32080c28c53e16f5838ad170c1f7a380b3755b9d04c96f1f548a54aa6611541f1510090c779da81159bde29d59cdba055f91c189db42028bee6968c1f578a6f80b46b9e23138f95acfa7634bd04399a2ea5beea37ae9ad99acc8f83960d1b33d5431fa90f203ab5761d714f86d44cdd61e7fd79d0c128460e8e68b0db535fd308f9fc1c28a1f0dc97714d7d57a32eb2ed45e8d0c34a8d1ceb08c62c708f8acb27fb35217915fd8eac3f80b7d57f2cdd66ce232ee693f369e3e4c28008512ebe53e961f31e32c3098e1d11ea8010198f6286c3418f1bf34c947165d4bfdb155f46ad32ad974da4904b0a2b67d7e52f90a1c61eb1f5699c769f03010e8774b4df282aa7a5ac28af09432e39a97ded24929e3ab43d10e151e4435d9819082656f436ebecfd5b1abcb7a8d4b3fc11b0932ead95dae9b4327bce6d66a40312363e90232b6f11e2c40a27f8a30f8f547ef844d810ee05cd372940ffcdd358cda0bfe302d18b6b87740ebefec6453d91ff2f3b31e8d44f5a2a07bbdc168b6c5f144f3beb8bc98fd30498fb52fab7bc12fb3990866a9822d6424bf6cdad65ec8414aa719db1e38b4d08c600e4968506d0cbba9f2817b2b68c5fb043ed233c7389ecf59043b36e9a2761e1f5b2427557eb236f0ef1730b3ac6f3a2e4dc7ad8ab284f46714ec80e21709d5f7477115396617b9d072dd66ace962659762bc67d18e8f2dabb5b3fc9e578f65cb101aa4ab4e12fc95df56ab967635fa7e09022bb28e1e6f71df54deed2f99add320be0f0840cbcb91c532e6b9f4c1941e162e6987fce6756f05949c4b3962fdbe9abe55598368a51926f1a38e26e8f22f16cc8e47adef12af81a2ef99f17e18ad527bf0b2a985fabeabed0156ba612e97dca8067b52fa165692531f944cc8944a09352af9240a56f208dbddfc6d498f863a338fa33435bc05382a82ad79ba18da87d023ea29e46a5f686f303ef38b4311907811503a67ad0bc15e8a29c44c59e93733d445b64488c9bbe707005e3fb20353adeb68aaf264b21cac8bdee97efebbfcad4974bfa964612a985c022a1ef9a95fced94cc616d601fd51903264e749c0ba97e1e7b7a5814250872038854219781b5535457f1d291ee89a7a953aecea5190af69b1648f3f96580c055b60d4b61fd5fc1e9a1bf04147738063f1011132e4450dfcac7f35e1603a8639520e0ed5b5f43deaf8b134897c44994d82c5ef0cf521760c04ed455de375816c85316f0067e7da5a25ef7a38756289f645c3d2b28efb9a1a694e11534e1a38b9af5276770e9cbf76b69e026e487b80ecaa8cd20f9403cf2c6c802082d344bda8ef097a586b71ce04815b2c2438ed05f58087e9ef515be5422f90740851d422e0da3be1c25aebfc5c81a5167d58bde7e78f43facf7978ff4ae4b46e3b79238efae64dab101a846613b773575943a258f74e63e36831ad7d35c41b64bb79ab3731d44c70c63ea69fc494e0a0cd975e20ea6e7faf1bc99593b51e5132899e369469cb62ec728b98316471e22a0e5d2e09e2628135723b2e8672a2e6e04c596a4d7e012c87dca699c7122fa5e7d9c54a5b539da758c84ea36eb5eac88767d0380386f835e2acfea2e5ad75484f2d5a34ec8ce03367c73fa30fcb7a4ecdd1e2d1d7dbb35217136f3b989777260b73d24a141aafe5219b22f328eaa196f44a03ef6810123222295a0dcc169ac7948d8f37e81b089a360ef0cb218596a73a3a71a1fdd4cddcd704dbd4c99acbf563cac58e32c206b8fcf553adff003de57c31f21b53b430cbd70526ca3a2e44087bcee5eda0694c9052f8a19c6f95aa7731cf5fec44b52dfff2678da06c5c4438ff19fdec0b2db7006c08a878f4790f10e4a7f0235d7bcbab82af1f821e3b5135e380fcee3e98a56c7d52f8765cb22e86df297e810bd85a94917892146385815515d7ce20265843751b62d9417ad2f96e8fc5948d549e9a89cce0b1c3bb637a7e133966edcb1694dee12a230d675a17434b6231549b34f07f96356ed240423fbf64271ac650577f389eb89e61d3e207cc0a4ccd80111acdce3027663113b14023502877d2c0a4c1dcb14510d76021d30629bb70ab495f134ae75b8409c31a484b68ad99175787d65848654cfd2869c54c67d9f13ec5f647ddfda963b776b932f437d23476b89be63c6c0ebe870745c8c9707909a599067a83fe3818003e40da5289a51119e5c9d1ddeba269d88fa2acf34d8cfdf2b4875e8150d6ee0ea19fddad53762cda2c515f063f4e3b46098b75f6fafded87de47cce884677f00e4e2e1f577238132e4c771942a305ff5b07ea891ad399123cfde5380e3ecdd38582881281d5080d2625219f4322cb777fc613be176f2e0c2b84d309ab8f9d17fce5c939f3e0087814ed8ed365a54743c03a999cc7a9e9c8a0fe300a2c9e540263efd2aa0778e4e64de32304944775c36bff91637c0bbef8a7adb7bc772e0d42ea281f4c2bb6228161c402fe6529836e2480ebb404579a3f7b9e3bbab7fd5f96070a820695731368202c0da78452de5cc887e4d7cc137457b2675be9371320b37e972c7ef934a88b580819470b7ebc9dbd02e795fb64a4aa851496033039b37625b10f3c02a44d7a9058ec0fccc8f17ec29c954c9ee786339968ed0fa785ebe0158775501e4990fae77edf22b6cfc8c929821ede3a3fa723dd5e5cfa5acb7dfe2faf315e76e3e33ebe73d512d5493344232e4c82ed9595c4f971931955923f62ea1b41b7af2fc4d144fbc040acf3f6b9e4e71c13d55f7c12a1cdf79a1f8b977aef0ff1abe4241ea03ceecfb2210c167880cc0245e21037eb92f1709fd389de5d5d2d5b0f2914b8c040986cc7ea692561ee401b03696bb854182c746d77b66dad4d5e8e08b58f984b99537995687024d81f104b09881e8dde06a23e651a6686a9532ebc8e07663b73e22950b3dbc9638df808f51481e29cc9541cb3ac674d44aef95189236007a6ed3e494138d1704ee4764706f0c65457b394e197a305ed184ad5e170c221fe76583da5abae68e9013be882beb8757fb451cc3d1f5ed723a70c9ada20ef6a96711429ab2c91a6637ad954babd4d7c5797208e6f7036f954f7d8cb6ab2a009d81631cea1701efef3a395f39acdcb9c4b3507eb6d6f99bb1d2b78a6d0b4f2bbef6fbc027f05d6fecffcd6d89d202876b8c24c9e3113c0869049500e1eef04455b0cbfd749e3de1e4122054a5d990b89d6d185e18f150c1e2f1995aa9eb34d5ed096b0a3eab118525bdb4864d7ce114bcf731b5304bcc4bd3eeb87724225cd8fd0d3a2283cb17e1936cfd01129645c18670909e9ae3627ea2fc2b2e8199c2c6351c8c9bd33e47c8ec7e09788785c5365f12f0bb8de3dbf299bf0e8a856e358b8f22234f7d1b768d5f616d3a1690c8f67d7babb1fc66a47e6bb3179a6650ce1ccc8ec862059aecd12c73b62139cf51f3d2a3b7c5a5f5563618ef21afd0ca52844ad294a5087232318363eb0f441939cb4a06973186430b4b53afdd5121186366f265591485b28682699e853640ccd25f41421561e933c8e1ade28a52b76fdf061c89469db1cd2a0923e7e53d802dd2a1ba3faf35f00357e9f6cf4c241e47c465684ff6297dda7a3680462a637fce8f93414072ecb24b819caf11d0b6ad0948afceb2b7a25bc77177b291635c8136101f8f280abefcc564219faf6322e639a336dfc9d3d35431806f179dbfd3ee59419e36d6ddf5cabee6ac419af098a0b629688b8a48bae8395980ccaa9b9c1f3c289ffb81ac8b59c6946ec30e10fafb326a524a96ab03a4ae10f7f4569fb8fc9207d6c1376d5b8020933cb5099aa75295af829a79db0d1fd3d52e8277d0077b250305fb87cd9e74ae871063e897ca2c649bd9e27c1fdbf973597431e04d8f082cce6c53d0ba099e402066c73e39642bedd0eb9c3d9ba80d439697b10f3b66d35333940aeff6688fe25f66cb67d1614e43c506183fb8270768cb15e0bba1146627040b5b63fb32df88adbceeffab6dd8e932943d75ae0349817913c723902c21e68e5d9a2eac4a6865933888862e1d929759febd227af3414818893a5ecc8e90c09a9ef9a643926cac95072423475c36ecae02fa49cfc23072e2a295d139960be9a7a408fcbe91a5715c69b424c3f4e3ab08b1acb8da567e2276a3cafa998f80ce82846268c79c2dec1422868f876f2ccb79233dacc790df2449784bd68e49e679a8603b1bb8d2ef476ac80f271ce7de9a54d1c88908b76021e8a33e3907c1e652268a45045c72dd66ace962659762bc67d18e8f2dabb5b3fc9e578f65cb101aa4ab4e12fc959825ff9865ff0673c637bbe211fa7a60b8a1402b1eca3d10c7f9036200ddaac56067628816a3d5dc33b836dbe1c879ce18b150cd9c339bfe9f5749949f31d3df24f06b6e1ebc63ccb5f90621793974213ad0c9e47b22ea73ea2bfdd64bc2d77872dd66ace962659762bc67d18e8f2dabb5b3fc9e578f65cb101aa4ab4e12fc955639cb8f4a91b7f118ccd992eeb6d7727c3afdffed35a596c15be5320b60a31be2596af8698196b13d70a23d002952e951e700e897647a888b02edf26c8d2ba08a0f011f91fa49e3cf837e535a815df0c65ed05bb02cbcfc9116c387f56039acb97f3925d6dfad8f6c09627e8ce35d86a6dc98c0d2504a28cac4b255ccec739078426362605a9639000cfac657e47891e726d7241906724e8e23b870e747a97384e0cf1d88dcd029bff2f312f4c3c1aa1eb92920c79dc9366bed8cf589033fecaf59fb37103baa2570062e0fcaa93144cf0d7b687d5bf66367d878d9828cd0f750be66abec7f53c32d5d3f1d1e93e45d23c6dc68f0916c02481f893c9579e9b95f52e051302946d1856c734eb6690b52bb609e510b9798a5d31ac18bbcd88e0048ea9f2f8c930cb003bdc4e071ffcc3584a47b8d2d5925f3654b79bcfc2ee0877349e882ec119146a69bddfd3545a961b5599ec1565ba606e2958d53a1b16a089a0703d489e2178a035442c8d829c0e0a638ecab31d90a97d13ad760b70390bad04f1779e2f36a5ec08ced8360ce4dc97343bda500ae6c572bda179becdb6da4f6cdfab3734bdb8a80e91e3a000eafe59ab3f479de12f70f17992e4b763428e75cb01dcee3079687ff47fb792ea8d1195a3a0900381bc10163ac6d5e0eb7cbbdacd00763d47a72dae17a0cc02fd0f27c36dc924374d30e71e9511baac3be9cb2560f11853f8de024dfeb4faeea5b2c7cc23134f9b16041c4201bf3cabe1f622be111de51d86316824a38d07936113ef9fa5f62f0d7084eb089d448f96ee984f3a95e90b58060bc5e044453b77e38d7ebe807f7a578e12c144a50482e3306fbd13d879ad7ec9da572805c0abeb0f21f4f470863aa58f9e036fb7d693ce05dea6a4da88daf78c06ba62efb613d945728b6e7173c9f5882014f8daf88e8cc2e19f5c82111bccb3c817a914d7f441e99f83197c0e443cca233799356228769bcb94a400afb99d7d5b81bb16d0141c8e334d33300619ccea6c26193fd7330ae2f7ff61787c6a2c3bc43df64b3dc841222cb79330510b20ca1b9116fb594010bc4c8d50b458fafd18f9970607cb7e0b6513ddf8609e912e1e9487758172449d726ed8e9e76c3719e0c498117f1cf4d931b65f839b5f9b1e08fcabdf086a98f9caed3088ace3e5f8fcdb50ecebb56626ec4c331fbde4ffbcf6c72866384b60ec81fe360b9583d188e4660093062c23d7fe511a2f951544181845da837a40ab1d229bc5d72dd66ace962659762bc67d18e8f2dabb5b3fc9e578f65cb101aa4ab4e12fc9509e77efe8d4abb55bdda41f1315ed5e5fa795ce31fb60079b38c5725ce4c9aa9bfdf0e58aaecfd7857a5680e39f63cd627a4aa4b90a4c28b6ba66a731ec5fca6c89a11a5a934d7d0469ccc18fb9e7756501e0279c40166a8cb69b4cf151c6f702ae03e5f2d0168337e3d1ce65b3ab29d9bfa94b662c6df69376d509a7d36422772dd66ace962659762bc67d18e8f2dabb5b3fc9e578f65cb101aa4ab4e12fc95295e4c98e824a5eaf9c3a7eacf75b210a93882d93ea6d398c118778ef2bc0a4da43a3f436a034f7d6a1dafc0a01eb258215ebae6fe41d57bd40769aed8ed292012dff956441b287d99f78287bb23219be46b8dee57b8f36be941f48b6825a5793fd716fd79805ac2ceac8c2060a438ef83539f752ef350217a3c9883024c74105702a244e71200661d5bd52fdbaa6c21852e5d2e62f5b69653b6a7f30ea45665fb626e1909656cb4976a3aed329fa68e001d0ef2a355a84a3025395a3ebfaca8ccec3afc18deba4c9dd8dfa44f8acff5498f02e6a0fe5e7484cdcbc5e2abe9fbfba4ad2a4e524411b2ca3a465b31467351586d79027734044a887168fd383cce33320e5dffb1c14edc9207fd2152fbb8c9b6bab690f1aa849f88c7a1880424d7efc7945798ab75a5a30b30ad9fb9b2d0f4153f1aab737c5dc0657c99874c30bd26c2ba25539dc528d72193caa3e84a1748b736f7d45bcfed7ea5e6c3d9f53719ef3c020043f5a1f24b46f533e16ce00bf85637e209d5c414019d8f24cd4fb66020d5372ce2e2288ad783e2419ba92c0f03b589e25d5430052d9b8d65eb7ea69912c3b96b16fb188aee76df7b910435802ffab452c00835cd3d71952062e02c7f2f28e6d792dae1bcb3c8287699a125c5f30cec39e1388b92855b29a32bbdb76be343e835d253073dc61d579d5e35bf62622fb8d03ca509e8d89945b8c9aec8c8ece2f05f32e9782b5bb2377b5621b2c9525cefd1e3c1dd1be84e3ff81a865b0d8a28b0ce13aa91405da61fa24a9befc1bc8ae89643e633aa532140e8b064e44b93190121d46c871ecb08b2f6e12bb85780f16b234765087a8014e329cd1808219aff8a9a4bef38063596327705420df7596031ee27a323c166a8ec8a7cc99911ae123c0fb209c5340e40a0213e200acf348dd398612fabe08d934476b2775827e3f5aba7a4f57f2031f0ef6fbce5ab80b0e6f864c152426ed4021f011218e944b12cf823f47755517f162fcb50ad664494dd0df27dd57e532cea68d765e317c3d9229031b9f8b30d9804da32305b7da6e14f7ad747272b00ced690a024cec9f6e239136e6af64dd2751f4a299e6c8731390b0f2d0e0531cc8c0fbf7726746ec5706a7021f55670623916183e3b50aaf83ce6d2f21586b60b8c1a023e5f11b39fc134a836457d2cfe6d1b82f9adec7c02b769c0dd159d8ca56e4cc65e697b276f2b560e27791ed07c3f8d1459547dfd1115ec24eb4fcf92c352602ffac73f6c9c6d570250b0d17220f4feb8baea0985524a0022d7ec0769388285d131417e760f36bf144639da3d3e9e66e833750e32f64c47b79182b057dda0c504e7c923de5b9661297d837003755187ebcbcde010d1653ab45288ed47ea6eb04880d42af40aa45fbf60afe409fd1dd20b065918b13eb9fdeb1baab5bd1cbe718627bde497088fa0ee3ac599771255593a64ca4350902f98b3f8beb6569cdc4ae643fb7a008972dd66ace962659762bc67d18e8f2dabb5b3fc9e578f65cb101aa4ab4e12fc9574ec769bdf59434db7e85279f96a6b0d74e435b9e20c08ca19da1a001663f6ec72dd66ace962659762bc67d18e8f2dabb5b3fc9e578f65cb101aa4ab4e12fc95fe27349674923fe59b735611c22fb4f6ed9654d5768bf829c073c7e29c8985120b83a87b2974ea033737558e316fa8beba18811a45c93593dd60e1822a35d212f9fe69509c0c43ab5537f1e8cd4b5664e032a5b621f1b15c914bcb151be99bf1f52d8a7553dd85d40305a2c423d0f53d82e6104c437a1d693b50a0aacea1c8cf37a73d167dd3945a8d87afb155311f88fcfb752121fa9f6ab99657a979d903474668e3cbda60b06d2392d289f1f2bcabd69f3955a766588ec853cfde3178e639994351912cfe73016b77446e4a76fc1d02c5e5408230e3af85bc6b334e1e76783247b7b3203393fd1300ccbc05abba9218319ad54a338ae5844824ddea0fa824d022ad8ed1156a6abfa595c09673af85163bdc9b781f9f866ee2d896461caff17b7dfa3fb7673ea26c277a164112d2d3a1995f9e876cc924bb50d2f1cc3b8bfe35c79991924417aa2d68c7bd9dfe4063a049abde70a5db9ef623d7386fc001691cb47f8edf2c4a1d611b0098fd22f11db5e2efdaae474416453fae0c514f3e5bee2835173670e12fad8dca5c9b5968d406151f6f956eb7f515d535dd32254f97465a7fa9a8e206235c29725c5cd62d0aebf1ec51d0d8b4b7592b4b0d4f3597af227325440a5334b4e137510a38ad44128e36fad96da89e30fe025d8486a8963af851b541c2b0c83d38b061933a185cd1a7875d774208162f29951bfd8be17f5bca7d45d1a0a904c982a1429d20d379bd78edde62ef62563f4eed3c8ab7cd665cf75291b585df614097a106bd8b73a133b2060c1fe3600d947587654fc26de6b8fa5913642e3627e2de0a30b2ef210173ce838de6f45360785872a2d9ba5e5b7c72dd66ace962659762bc67d18e8f2dabb5b3fc9e578f65cb101aa4ab4e12fc9572dd66ace962659762bc67d18e8f2dabb5b3fc9e578f65cb101aa4ab4e12fc959a2fb2bf07a900082a31a243041c6307fe3ab1b2d0a722bcec799b28b27512d831f7837591cd96ca3abd18bd895c7ed19dfe5c7e8f3426e47cf6ddf4da8cfcfae3bf3e94924f5818f1d28906f4023bf6e645774e16ef4bd60c7cefcfaf18f64670031b1430957bd539576e6c3048a74445e0aedfba1ae365c2b8a18558e679af3ad6b5c689e021dfa0c588fa76a0a7b51c957a12cf149ff1910a7467971afa2a8bb43ec1b74b00b1767b03f3819d96a7dbee44ef031cbc2d57d93e87093dbd2afbf1566e4100648e50f05f0f3cdbac2e5238f98ca8f9cc700aa53b34991a35537f1ace85b0a020c35cb842c72c2db5bc091935d7b33c5512d4d64cca5256338ab3f70c11b0419479ef66f2e15cf1cd45cf569651fed4f5d892918e74dd7b320ef6a6fa336d57cb010da10eb231b466668b7d7d9d4a928db56d149a0192d95ddb19293ef586576c74c00082235ac65994982264e299e21e908e0bf50ca53466860866c0576c27ae5283ab6ef6d26024dbc4e64da1c3fdd4a4fe2f81775374ab97d03747cff84d2b99a3db98ddc66375e048e28c8b7f12559acc43547eeaecfb09da777f1deb14ff8f9496f12f0134fe1d99446677934c192da9da02a9d3dbbf4a9c0197b7f2dc6de0221e0ee9655074a759befaa004e937505e3697c7c557964ad22090997b1250a0a5d28628cccf23f9aa4cbddb42ce2b3330416945070cd826d693c40fa3bef543fa7358c70027d58905ce344a9ee98feca04c868e62ea662dba28c181709100599e02bd782331f9d6ae078b1e24b0ab9edbd7cff83934a8f070da1aafd92a763c922b28e985934c5bc0dd7c06705846f3f5ed96cd9101a40db5c5cef007769e21a667a854809dbc9747514fa06762ab5b21b5a5262f1b82299ccf75b113c5d7e5b43c56a8ec31e6bca9c1d147aa0a4858ed5567fb14f867c5bf57389aaa6149bf061a0308e17150e7b8c6a31c052d8053b8dabb527e8ffd6e82f62f69cfa7b89f79daec3b50edf3f8689f353229375a784d740b5fae4952235364152f6358b311f4f155db813a722a2760a833407a93f23c5781cfd8c28f5eb2c302a5fa482e7f2085571adeaf7d50be79c2996d52131cc11d6c43efefa006145101fe2d088dd14fca5c6b6c145bb2585618fa2366e1e7d234bf3098a7a2f4b192cbf96047a67b740e3ba996df0aba07faf60b84051c13deb3bb71516ab558ab4f36f593ced6e00e18a017c736c2d9c32350e827e539e4a008607b699952eeb090bee3ba77f9b74c7934ca4e2a4f6016725a559ab97b7b0906d7013a8690bd2a40102dc7a8690e69fa640fb06056ad454b91aabef87623df2e22f44c4adf25ba134d93da650c6f44010d2bb94ff78b39efe0f17ee00e20d0bb6e3bd4110db9f27d600266f2b9ed6336af8f3bc3a08627de9e009468c1b5846e6d3876b49c619f3cb6afbc6acead01db03f39a3ba0c27e3ecf180ea0aaf019c491d5407bbea5b42baf995e746eae1e9f25e95cbf0de8c7b77b98f64d92db48822e6ffee20045f8fda2878c6b2d4a1d0d1ff1279f1562c5cb8bbaf7cfafb13a8968e4939544d8a6fa918bf97969d41c0e2f3d6e2ff7b4142629b7fc6508c73f19fa962b739b84d3d2c3a8a66ec24b3057ff98466511cc9c900c7f31f9a156f3ffe9a415f42a5cff03341bd3dad66a844764f6c14a230c8b7a1a7d3edf1ab5ec17d1e55f74327eb2d8ec3a88cdf90e4ce5a970ab48bd08b433a66c03acdabc3dcc50f02e5d8caf243bf4b90c41cd32149d2653c26b87540b235204eb9d975b45a46e032db54afb0c0d4d0fd5485ed6cd4468ed2643d2b590e2f2e076b4d0fd9691ff2f42f99a5293c8503e885af505ea1867eae06e6ca19c7456f75953f5c27d4a37375f44fdd8f2fade635e6adc9c05690372ba642b5f077372b669d6e340100eaa596952e5a0844a696b5de5dfd38e0c06aaf19b2f18cace806f0d20c496d0b0de9f9b85fc4e589c9b776e77bf2ba3ef0162c30c52e72b5b7540f1f6c6ce3437e3effaac3dfadbb27737bf1722d30ea117a3133e5c7686989c4ac1533eb7b4a9450dc8e68b967cde85b84ea614f1e1d47f6a16334f8c1fffbd8ff9f192388c1685f363d64d1161ad91a9338d1aeb3bc15564e17ef54d2b43ea9d68eeb7837b4388d359f45698a634869087fc293af48096a9e6ef895ff6fbd680186e8bbeca80953143375caf26484b41315b4938738e38f686ab5e1a8d0dc646f6fa472307704c08b6fd823a12c3424d1de2d81613eec4eb997550fc41600aecd4fb4d578704126c007c78fec1b1cb78a23cab221a88bc5ee82e8a7c327c32a2f6f4952dbc8aa4cd390928008cd4445f5925dfcd1a9b10ff9e8b96d3e6669f188a7a75c49982b769412b7048bf1f40b2fa22bbc665f845979029982c590aea0149d0aeec75dd15429632d79dcb8ae66c5e17a05f59b053182fb58d07ffd4c7dc260303f5f5ea5d1961c51eb2c6827b6659c5deb674bccb83b058d181acfb63109fcc489147298346c159c5e56259c869c60028be789cdc4d0e84e2246f135a7e942038ab07657d4b2c34a410537883c727802e705afa9c8079580e0da91539ab98a5d717287dbb84b0ee190972dd66ace962659762bc67d18e8f2dabb5b3fc9e578f65cb101aa4ab4e12fc9544a21a59ef413ecfcc2d2c4cd6e87372519b777d372f5313bb7174080a39ed5e5c08aaacda99c3eec12144d6b558f53b77529a4742dc0169ac15ec7061a6b7c01c096623da32b5ccac15d15149c59f20bdf0879dc1113b5dc5bc6b83d6d4386aa97b202a798cb5debba60a60d0cbd40f9a32b3b0516ea5d053f8e0844eb35bf3a70685541630d069858f6528c99f6166121a587e9324a4d8700ba9daac64b9739aceb0b837e9a85ce813975629ba24d8196c5a45e1c689768e6d1129bb88026f7262895a22a1b2d8e71bf1fd43a5dd596e5bceb39bd231d3a6fbc1dce3e2e92761eb91d46f1d85b3771dcfb5db054df3e5cf9e129badf4ecce93bf2e0fefc670270e73446c429f6b8b7e9e8e74533da69d31e4697ad4837f92b3e4e5b7174cade6f98f9bd4ef3f7735e18ed244fc9c3e147c01cd579a2c5444bbb2a8e6978090dc3539b1ff774c4675d305db02042104e6e78a2201d7cba2fcc997b962c4092901b6064390681e9c977617dd5d0d07f7c27e3c6b4a5a8a3c8e04af9d80e58aa6da00b9b153ce0ef4bca1275251377d053ec212af7c71bc3befb27db677710653e9c47afe471c5c2765f04921e5c61a9af4bf26695654144dd33e4f9d3215bc29e47edaabce031e742a3949e982cd0fb6c9007cebd82bee6fa1db447dd385a7de2111835878df9f26026857954403da9a00046ec3252b6b0753d0e02b828f83fd2ef0e1695bee5fe502c1b8a4c81961fea360a9c15e06616873b60f8200afd2c172dd66ace962659762bc67d18e8f2dabb5b3fc9e578f65cb101aa4ab4e12fc954fb3cf0ea805c0dd3fbf8f71398cab6624b876ee78cc8dd40b4947f73e3fadd9f7eda05cbf7243cedf1e013db6d389cab99f6dee84390ef43fe85f743667d4af4069d2898229981e83c4c4c29f4e40eed5251d2298adb1f8a465b36fb070f97e3343455e405c58629a364b76d42c480b8bfd1b79375361b0d0e460c67ef247dc76b4b26f6be38596e770402e59bf145d9d9a505938d2fc915ae051bb5af981450ee03965e079531b95aef01a05304160ad8623b8dd5a0d91502d351cede1c7fc5a1943a1e4352f9e36afb8bb6d153cd642f21f14c2fd10a5f15bb468a0043915ee16d1ce728e14b0c4c0147f090b90115c21d690c30f1c85ee69de01eb5ef78013befe1c129657268b395fe3b4a4dbab1ae28a3c3fc7131745344388875f526c42fa9e17c28e0f1f1926e8a6c03210460541e5e766ee8ea35ee8f086023c74e4dac18b33f23248558e6b7263c1449618d12039f1610c3f19c8c4eaba6595f155f8950f053eff34c7c35d6b34c5015d23d2608258b9cb0cbe455345eac059a52617a48a6e90d692761a052b9696eb136f875a4ae7d68909a6f8754a549e93127493fc88e01ddee61527303ad9823628adedc84cb21406fd083c10bccc952e9f0a3fc0d872442da5dbd047b4d52e6ae88f08a98a3bf6d4adeccfd95e09e11ee09f34e2245205912d1a30ecada9d657a2289e613662e556f22f2133802e7dedcf64af895d6d409490f7dd3e317f6f1d63160d4ed328ddb6b34b29a8293400dacb76c1b02db18ace5db47008b6bac706445c0df2350ac064ce72111968eccfb6ad7d0934d7d739eacc5241532a426c5afeab88a7aa0d585ce82dc0dbb326951e9450b7ce22596d5eb449598d1a1a7c2c25d2e754c1229b4e5b1a4a6c86a4e7fab367999f0e350c126b2532fee7ce0a9341d92c2d99aa610b0d1ff9541f881dcd91e3586bc7e5280080113d09517505ec6b1e0da0eecab0a8b514e5e374c1f9354baed339605c8e8f902ed7966ce5f1301562355cd4477b41172668b2dabd99c84f7db5a0efb59ad2c0adf4719187b179659db824e30937744f2aaf14776c0b3ddfad0220c550e2a4420c5389f2d1a8fa72c0413f2519c6494a57e2c0ba27ca9ca1063c2ce9fce9c7553c318e67f2db26745627425de927d6a87870bd3c6aa5ed876bd694e2608bfc409cc2e6cc939b52c9d1a57308f0fd07a8d70e83f16c7f49015ad942269ddcd824e496bad548cf469d25d4b64d5105df64382a87656585ff34441bf33aa418f8152e5b38313bb315ed9ef610def636e5e0594dc50c8a7251e933a581a275f90043356d0c547478f5a4693262cfcb87aff8d8ed3b4d5095b921d9f6cf8328ec2ac10a5338398bdf7ea68ecd0caaaa089c0d2dc891163c74efff77ef3a81afde2f604a4ea4fa4b54138d68ebc44f3daab7536099605a16ee43486072dd66ace962659762bc67d18e8f2dabb5b3fc9e578f65cb101aa4ab4e12fc95d95bf167eb7d9e9cf69bee6f3cd8ad22a5805189e19797624ba6c399b2f9b385a294071582d6d36f304ca09fb279febfedbdf914ebb36c453b68d42b5ef658b953294a4e3420226e146570da404276465799825708b1825bf419ee2d409372aac7c976a6dc8f87f58a0b0cda4100f97bdbf7bf82fb57611a8a143b19c522c1a20ef2ef360779712be453f7fcb4e8eb3958ff2a7b42c079a2bb6fd806b81bfd439feb4fff70ed4556e89be8e1311fc917729e99460e6bdb7099d72b809613f3502392e9160e37f1837b0df0637a615bf0f01d24279dc0a0af50114db69607e6e34b57126240a39c3628fad9fb00f921615cd9c44628839d891030093ebcbba01772dd66ace962659762bc67d18e8f2dabb5b3fc9e578f65cb101aa4ab4e12fc959d9bcb13ade5795465b3c158fa91314442a40d243dad45fb0f8a943a4cc62a6241b70c61257d750974e1236792aa6f97b6792e5dec72d1b4fe2046e7b405e5c95a68fccf90427f1a4dc41808006286e53bb1f4f1829d8b911e42ab81c0abc0ae5261818672867951566865a61188a46e6a5ad28f61e3de790d43bc158c28d1769ad9a1e74f25ff516806bc8ce64708094b6541f623e49b7c0ff0a45267d9a3c922b9d28992e158cfab54ac75f55a15c6f6aee8aaf000087d8c5af786887fdabc12fe278fcfb1ddf05457a49b65a704459c671be49ff834f0906f6b7312707d8508ab88d024e1dbede842cd941ac36299d6e80660dd8c54af2b58dd4ddcc601b55aa3e6524cf6bc13b788047d14771b0487f9f7647022454cf8f376315471beabb7f74fd8a1690e1e18a629af3533250296b774126d9238470c01438e4e1505a5b101b6249e6706df431573a198649b85669e9b79b81a50d8ce0eedcacf061788d747d5a331707b85de9505f78edc89515921af104ec110c61cd4fbf9170da5800f8f9d3a56e4cd15194df5e4e99ea8e13df0118d87f1c57159fbd1b93a6f435d75ed7dbca846f573fcca1a7221110ed24a2bdd7fe6b5c562101230baa3fc8f1f9601b8eb35736f412a6b1e1893b9fefbc446ec94992d81c4aeb58fa08bc53ae305e8a6c74548644b31299dc6916f7d70b050ad35335a23c99913c9fdb52a08dd2b951d2a31c23a3c3614d68a212f845bf3fe7e10d9a2e3711e68d2bd4c46f06fa5d082af43bb1892ab8f3c8ec10254f7d22dffd6355c452ef1b617a9ead125b536d1b0ae16e6696f5c507c42787b31c831103ccdd42fe34c7614747d6b83a6d022f4cee9673e11397d17799f92b44118a7cb0c42cb1c51445769b630600cb9af305fbfa058e5e758d80ce696aa3ca5c6e36028186a78604d53ae1f28952ee3342a700631bcdbfac67a0394a2e8ad491595dc37c7071cc6db0695ac5dc225ff273441a166377a37ba38ed9bfa4b40ff599e12eb9212751ef694caa887665cbb5da721bd54ac09701c33f78977cc708a029f99f2aebc5e6e9dfcb8316f6399c25af77bb0406dbd77be7c838a15b1b82c31db710aa28ac06cf0718e73c4d163c45734437038f7d877699480a9efffd97d4a428246d3a0e59b620551ec0a0f5dfc6ce32dd164149d8a0d5aee0d380942235128e89a37871714d3c5634125a2a2f31414e3d026ca6f731387102c139aa8353b4303d19e564720dbad98e9befef2611deccae2b7d2dea7fd201f05650846a7f36fcda6a2291bbefc91f58a6b5fcd593327779bd6675f3299d7d319feab076949eeccfaa6410e7d00e1b1a3724c51c17bc3cdcbb04d2fc7769a74186ca883d2f84ea8fdf7606dadf1a2b1ef9f76a842b5cacb49561a2ef96d4581097b0c34e446afa81a39f51729e485ae601851d16ce13328608b7f4dd6e98da4cce35bec6e6448212a00799d9b699d9a2d539f9dd9d8ec5c4a62ebab4e45d8905f7dcab84b57c4467f56539d9f1844a6e24311d2f56924a74eb7c5e9ec1d2d5ae175681c8935dd14a5b1723f69cc781e622630b40b54b45609fa7f6699721ed4fa500ffc2ac3279b7e9349898a3b851117c487c44477ec5c4a62ebab4e45d8905f7dcab84b57c4467f56539d9f1844a6e24311d2f56926a2ba63e7d177fee4282d40da2b437c8b4797e8c46ee0fb5906e4b7bfc2c8751b181f76eff04fd969d4160e3e530f4e590ed78b2245b85d3b2f12f69b941552475dc613453a1fcc13d2df3e473783b33618ac1a1e2122b83855ae54ccb7b9c22fde935daed7085220a4dfbf4f79f9ccdc26edd033104a95f8c8650e574abb58afea854bd24ccbbcc7e7ba4ff37fbd16c002e008a0bd3f1721525ef2410f6ad0b048d91285d364418f6f31c48b76ff09e561cfbca5d31e89d969ae636ed73bace3b9e1ab2600e9e6f124e66bb88daaa81ae22888b4a386c72aebb6aed8692a8736fca35d5782c2af1695641d7fb69337bbeac2c31fcbf73cb43308ff697c181755eef388e984abb4d22b8ae49efc8a763ee0e07c6bbfa855c6e376060ee447e655eef388e984abb4d22b8ae49efc8a763ee0e07c6bbfa855c6e376060ee447e657a09cd446dcca6f51ce8671879e9b5f5d920d83fd0e517d1f3d9c808c73b336406027a6f154bea8afc38c3c49b01cd6b1c21203a4ce373ab16b896be0e617783cae6a3f7788703bb105876e20d465ac9a46d2766b907a2c38e4741c3f7c29df06ffb68492b090647c849b4586f8d53f4aa57dc87454649a085b0ddf9eea2ff8d432b0024fb8f231925d49de907ba00379733e373b3aa106a0b68adb94a278ce06ffb68492b090647c849b4586f8d53f4aa57dc87454649a085b0ddf9eea2ff8d432b0024fb8f231925d49de907ba00379733e373b3aa106a0b68adb94a278ce3c5f9dbf525db9f12aa1bcf8aab6aaa4ed485e102c3c3419ecc017ebeac5960e324acf94e4cf4dc0f4e4905daf7286061ad987752f0d1ba45405471e828c83d5b031d5558bb681ad3864fc9c7cf5b95ca5aab9216fbb275fdd3024603af3d8fc60af159b7ff2e82cc9af97c94eee6582cae595fe05e0cfbfd3dffacedf39373c0ce06192b360bdd5416dc729f9e062b667ec62ff5760f6ce6dbe94d9a34bc417ec2cc260b7d37d643602f3a1f77ccf498b430ff37b1a123abf725106f3f3d0a7d583e7ae637cce376dfa42e2b912217bfc5c2bc5c5a2236135da036ae219287c06ffb68492b090647c849b4586f8d53f4aa57dc87454649a085b0ddf9eea2ff84577f27f0f1f1b344c6f7b416f69c11bc5889c599c9701acda3ebf988b88fe24d432b0024fb8f231925d49de907ba00379733e373b3aa106a0b68adb94a278ce346b230b0356d72079f1acb7356abecacc15080f01d516ea228dd6917b97546b3cae6a3f7788703bb105876e20d465ac9a46d2766b907a2c38e4741c3f7c29df3cae6a3f7788703bb105876e20d465ac9a46d2766b907a2c38e4741c3f7c29df88f61680d9881e7f34f5341eac7340370abc909ba3b5a08978ee573d77ba09aab7958b7dd8d182e8e8823949c570dc5c9cb9e6216eab4683881a2099f31a9f513c5f9dbf525db9f12aa1bcf8aab6aaa4ed485e102c3c3419ecc017ebeac5960e324acf94e4cf4dc0f4e4905daf7286061ad987752f0d1ba45405471e828c83d5b031d5558bb681ad3864fc9c7cf5b95ca5aab9216fbb275fdd3024603af3d8fc60af159b7ff2e82cc9af97c94eee6582cae595fe05e0cfbfd3dffacedf39373c0ce06192b360bdd5416dc729f9e062b667ec62ff5760f6ce6dbe94d9a34bc417ec2cc260b7d37d643602f3a1f77ccf498b430ff37b1a123abf725106f3f3d0a7d583e7ae637cce376dfa42e2b912217bfc5c2bc5c5a2236135da036ae219287c06ffb68492b090647c849b4586f8d53f4aa57dc87454649a085b0ddf9eea2ff84577f27f0f1f1b344c6f7b416f69c11bc5889c599c9701acda3ebf988b88fe24d432b0024fb8f231925d49de907ba00379733e373b3aa106a0b68adb94a278ce346b230b0356d72079f1acb7356abecacc15080f01d516ea228dd6917b97546bec5c4a62ebab4e45d8905f7dcab84b57c4467f56539d9f1844a6e24311d2f569324acf94e4cf4dc0f4e4905daf7286061ad987752f0d1ba45405471e828c83d5324acf94e4cf4dc0f4e4905daf7286061ad987752f0d1ba45405471e828c83d5324acf94e4cf4dc0f4e4905daf7286061ad987752f0d1ba45405471e828c83d5324acf94e4cf4dc0f4e4905daf7286061ad987752f0d1ba45405471e828c83d59af3097c3db1b1a003e075b2ca851fdee8883d0e8238990e8b277839750e7e14b031d5558bb681ad3864fc9c7cf5b95ca5aab9216fbb275fdd3024603af3d8fcb031d5558bb681ad3864fc9c7cf5b95ca5aab9216fbb275fdd3024603af3d8fcb031d5558bb681ad3864fc9c7cf5b95ca5aab9216fbb275fdd3024603af3d8fccf1d108da285792e42cc8d608c9938aa42f3f1189bef312b65b906beb3cdaeb3854a6e945d2c6e627236fe2196c99dd2ca516752ea036870d046e233882ce2c37aac26b27adfea2e660cad39493dac825517d8be61893a7e25cb85ac64f4cd46e9c83f559bc504244d378a81c99613c6c4698290b61f5efe773478e3be6c7bd2f5df39ec7469800412c761e994dba07ff22407c2e8606201cff6aa381f245199eea3cbc7f4c4eb731e57aee269deedfd99888517db7acf2afcfce52c334cd4868bd912f99539e430caebf4d321c09522ba61ce3a2a8f65864bd9021c65b41fb15bc4aacd3185464a2dae41af2c7b67997afa1c7cc786e8ffd3d8d1c6954346a23c5f9dbf525db9f12aa1bcf8aab6aaa4ed485e102c3c3419ecc017ebeac5960e324acf94e4cf4dc0f4e4905daf7286061ad987752f0d1ba45405471e828c83d5b031d5558bb681ad3864fc9c7cf5b95ca5aab9216fbb275fdd3024603af3d8fccccfcf8b961754e24abf87af97ccc733ed7f396d73ddd0f88cf3f6cd9460a38c60af159b7ff2e82cc9af97c94eee6582cae595fe05e0cfbfd3dffacedf39373c0ce06192b360bdd5416dc729f9e062b667ec62ff5760f6ce6dbe94d9a34bc417ec2cc260b7d37d643602f3a1f77ccf498b430ff37b1a123abf725106f3f3d0a709b534ff538987d1a9c3f10b1f07600b560229464abaccf372a1e97ce1101c94d583e7ae637cce376dfa42e2b912217bfc5c2bc5c5a2236135da036ae219287c06ffb68492b090647c849b4586f8d53f4aa57dc87454649a085b0ddf9eea2ff84577f27f0f1f1b344c6f7b416f69c11bc5889c599c9701acda3ebf988b88fe24d432b0024fb8f231925d49de907ba00379733e373b3aa106a0b68adb94a278ce346b230b0356d72079f1acb7356abecacc15080f01d516ea228dd6917b97546b803e083ce464e52f56fd405e88f6f56ac1eeef5efd5166910c5aa639d9a6ab20803e083ce464e52f56fd405e88f6f56ac1eeef5efd5166910c5aa639d9a6ab20807136857267dd6d36988290cab2fa69bc537ea4fc38445e191cad9a21dbbc2b60af159b7ff2e82cc9af97c94eee6582cae595fe05e0cfbfd3dffacedf39373c60af159b7ff2e82cc9af97c94eee6582cae595fe05e0cfbfd3dffacedf39373c60af159b7ff2e82cc9af97c94eee6582cae595fe05e0cfbfd3dffacedf39373c7e41b31704a8fdcc2ec87e64302fb6c57f5a19ff0cd8725dcb10ea7b71aaa387f5df39ec7469800412c761e994dba07ff22407c2e8606201cff6aa381f245199f28d5b523d7a6dcc805c6f102420e1ccd0d87536d21ff72166d1ae7faf0537c1c2933df44bd9909abeeda4f61ac88879c0bebc6f183fab42aedbc34dea97deb57bd833801a8810e89dd46ee5322b8e1bccdae14de9c33be998878b810d9fd2d73c5f9dbf525db9f12aa1bcf8aab6aaa4ed485e102c3c3419ecc017ebeac5960e324acf94e4cf4dc0f4e4905daf7286061ad987752f0d1ba45405471e828c83d5b031d5558bb681ad3864fc9c7cf5b95ca5aab9216fbb275fdd3024603af3d8fcff103cb86845c2e1ec43f23daab0433eefd49c133aac2eb299a07f27066a270960af159b7ff2e82cc9af97c94eee6582cae595fe05e0cfbfd3dffacedf39373c0ce06192b360bdd5416dc729f9e062b667ec62ff5760f6ce6dbe94d9a34bc417ec2cc260b7d37d643602f3a1f77ccf498b430ff37b1a123abf725106f3f3d0a709b534ff538987d1a9c3f10b1f07600b560229464abaccf372a1e97ce1101c94d583e7ae637cce376dfa42e2b912217bfc5c2bc5c5a2236135da036ae219287c06ffb68492b090647c849b4586f8d53f4aa57dc87454649a085b0ddf9eea2ff84577f27f0f1f1b344c6f7b416f69c11bc5889c599c9701acda3ebf988b88fe24d432b0024fb8f231925d49de907ba00379733e373b3aa106a0b68adb94a278ce346b230b0356d72079f1acb7356abecacc15080f01d516ea228dd6917b97546b803e083ce464e52f56fd405e88f6f56ac1eeef5efd5166910c5aa639d9a6ab20803e083ce464e52f56fd405e88f6f56ac1eeef5efd5166910c5aa639d9a6ab20807136857267dd6d36988290cab2fa69bc537ea4fc38445e191cad9a21dbbc2b3c5f9dbf525db9f12aa1bcf8aab6aaa4ed485e102c3c3419ecc017ebeac5960e324acf94e4cf4dc0f4e4905daf7286061ad987752f0d1ba45405471e828c83d5b031d5558bb681ad3864fc9c7cf5b95ca5aab9216fbb275fdd3024603af3d8fc60af159b7ff2e82cc9af97c94eee6582cae595fe05e0cfbfd3dffacedf39373c0ce06192b360bdd5416dc729f9e062b667ec62ff5760f6ce6dbe94d9a34bc417ec2cc260b7d37d643602f3a1f77ccf498b430ff37b1a123abf725106f3f3d0a7d583e7ae637cce376dfa42e2b912217bfc5c2bc5c5a2236135da036ae219287c06ffb68492b090647c849b4586f8d53f4aa57dc87454649a085b0ddf9eea2ff84577f27f0f1f1b344c6f7b416f69c11bc5889c599c9701acda3ebf988b88fe247e41b31704a8fdcc2ec87e64302fb6c57f5a19ff0cd8725dcb10ea7b71aaa387f5df39ec7469800412c761e994dba07ff22407c2e8606201cff6aa381f245199f28d5b523d7a6dcc805c6f102420e1ccd0d87536d21ff72166d1ae7faf0537c1c2933df44bd9909abeeda4f61ac88879c0bebc6f183fab42aedbc34dea97deb57bd833801a8810e89dd46ee5322b8e1bccdae14de9c33be998878b810d9fd2d73c5f9dbf525db9f12aa1bcf8aab6aaa4ed485e102c3c3419ecc017ebeac5960e324acf94e4cf4dc0f4e4905daf7286061ad987752f0d1ba45405471e828c83d5b031d5558bb681ad3864fc9c7cf5b95ca5aab9216fbb275fdd3024603af3d8fcff103cb86845c2e1ec43f23daab0433eefd49c133aac2eb299a07f27066a270960af159b7ff2e82cc9af97c94eee6582cae595fe05e0cfbfd3dffacedf39373c0ce06192b360bdd5416dc729f9e062b667ec62ff5760f6ce6dbe94d9a34bc417ec2cc260b7d37d643602f3a1f77ccf498b430ff37b1a123abf725106f3f3d0a709b534ff538987d1a9c3f10b1f07600b560229464abaccf372a1e97ce1101c94d583e7ae637cce376dfa42e2b912217bfc5c2bc5c5a2236135da036ae219287c06ffb68492b090647c849b4586f8d53f4aa57dc87454649a085b0ddf9eea2ff84577f27f0f1f1b344c6f7b416f69c11bc5889c599c9701acda3ebf988b88fe24d432b0024fb8f231925d49de907ba00379733e373b3aa106a0b68adb94a278ce346b230b0356d72079f1acb7356abecacc15080f01d516ea228dd6917b97546b803e083ce464e52f56fd405e88f6f56ac1eeef5efd5166910c5aa639d9a6ab20803e083ce464e52f56fd405e88f6f56ac1eeef5efd5166910c5aa639d9a6ab20807136857267dd6d36988290cab2fa69bc537ea4fc38445e191cad9a21dbbc2b092a82d07e29a925015a41b00215e83fdff36972ef59163b2eee6d965b113c397a880b7c3a13e30f4dfc31e21413d87890f52982ccafcab97621b6545a03382b5166b2ff402b1bc7511c9293ef65f6c904156dd1c94927a1573d9f9d8e7b0d5a77389924a3da6039366d32d51589b472b678a240565807ad06b27229ec8d573a73b48ac014129177b601aa7ee661cc00187abb05f4fb6ad792c20a2bb0961f7f4577f27f0f1f1b344c6f7b416f69c11bc5889c599c9701acda3ebf988b88fe244577f27f0f1f1b344c6f7b416f69c11bc5889c599c9701acda3ebf988b88fe244577f27f0f1f1b344c6f7b416f69c11bc5889c599c9701acda3ebf988b88fe244577f27f0f1f1b344c6f7b416f69c11bc5889c599c9701acda3ebf988b88fe241dd8392aff954ebdc31218ee46e74395027ebc868a1d0b73fa9c3e625df5baffec5c4a62ebab4e45d8905f7dcab84b57c4467f56539d9f1844a6e24311d2f56955eef388e984abb4d22b8ae49efc8a763ee0e07c6bbfa855c6e376060ee447e655eef388e984abb4d22b8ae49efc8a763ee0e07c6bbfa855c6e376060ee447e660d18d6cb9716c2c8574257161690e4beb42c622e8d86742cb57aec63094f4b097074b1512e2c94951abcef3a540231da8a82ca8b08eac28dbd219c4234712f73c5f9dbf525db9f12aa1bcf8aab6aaa4ed485e102c3c3419ecc017ebeac5960e324acf94e4cf4dc0f4e4905daf7286061ad987752f0d1ba45405471e828c83d5597dabcdfa26e0e4cb9fd27b04a573e876645a50056787a431044fdc16430c7f6b891e17041e365f2dbfa9419a7a52e926cf4effdf5a8379b97276a4475df34432c73778c2e7a5b977a0335cd59a0bc8ae599f57c681a8a9f42cd99a466b127f8f1e31f3cece95ec1c28faff2ef68b07f5ae41a12ad41204925e1923b8e6120b12fb839172cb7a906ce367eb254a1b694d1c36337f635f22f08c379b68fdc4bed583e7ae637cce376dfa42e2b912217bfc5c2bc5c5a2236135da036ae219287cd1b6db340622f1d1472173c46a3ff92a60669ab2a179f86788305b613d0d646a4577f27f0f1f1b344c6f7b416f69c11bc5889c599c9701acda3ebf988b88fe24afb89f5e5333b88b2f487cf8c5ce725c84dc05a453a6174cf34e78925bd03c08803e083ce464e52f56fd405e88f6f56ac1eeef5efd5166910c5aa639d9a6ab20803e083ce464e52f56fd405e88f6f56ac1eeef5efd5166910c5aa639d9a6ab20bfc9778e4088972f21ec2139bd135ce8afc860ed500cc34175042f95129451d9c292485064ede7387f58f4e3b443601e1b0b5c3837ecb974779b945a6104194257a09cd446dcca6f51ce8671879e9b5f5d920d83fd0e517d1f3d9c808c73b336f6cf266ae6d5a42ba556d4747a53295d9f97550eb4e8744e31983ebe22e4928355eef388e984abb4d22b8ae49efc8a763ee0e07c6bbfa855c6e376060ee447e6011a4deaab77e6268ff3e18666f2b2cb50b99eb46efa515aebcb049137644290803e083ce464e52f56fd405e88f6f56ac1eeef5efd5166910c5aa639d9a6ab20ec5c4a62ebab4e45d8905f7dcab84b57c4467f56539d9f1844a6e24311d2f569ec5c4a62ebab4e45d8905f7dcab84b57c4467f56539d9f1844a6e24311d2f569fa002ab41d2c4defd1b53eabb9d8ceb120b41751c3faeddc80f402f146a5418ec71ac8e2440c0c3702177e927ec6e9fbd27f05165d3925b2abd5a20435c8d35db911b0b993fddf42a4084b0d887b0269b8cf99338e59e10f38fb894ed577e5e9e631464c444088d77b93bfc2473aa764c15b941162c801efbda796b6ce8acadea6974ab3784f311f2db7b375693a3f8fd841168fa81b5d83fecd3fc07182a79b46e82c571d078f371291989cdc9276dc50582789c2b849952ce10d67acf8424cd702ae1e1858906efc73ad73c6aa7002b4ff8f867f29af3730dabb0df9a7c313fb6c246e7c7914169edc942e2cc5cff658c23c368b2b8315845d83b194539e4c6eacf4cb368fbe202e512530d4f013cdf5718827494eec26ac0bba3d3c0147ee31fdf209fc8451d8e5b9f4ce1c4dcb2883e548fdf921cff7d51102b1795571aed6ce85d3499b3d28daf6243607e09a6cfd4240294fe4b09716cc8858945867896ec2dfb065950c668f7594beb4de176db8e0e5967b2a43e0184ff5435f25e09c5238e09e881841cd023e5dd17bf3d0d981e25dbf3b590841dbe2e32e180bf82218359080373fa85e160170c77aa7bfc067fb53c5e7b4fa10c294b49ddcb8cc1c9a5311c09a84e033258a495a3279a83fb43d5aca787ed71f1085dc3e6ee7047be02e47809d4d27b75e3b2730d5513db889f8a13ff8e4f5871731424e72a345b7c4a3c1e2642200a2b5ad3d6af73d0269afd9172c7a415333a36f7f7c1f0f9596bf80472bfaa850db67916da60be18b2da87bae2e4f0670b3c56cf7dfdf5943bf02c6dd1461f83f936f98c0a437314e6be653c8af494e2445357f43cfd11f400b4c5add4781d867b4ef6daf819667cfc7bb4a32cd88b138600dca731390233c79f18211c1ed1eec18417d822a6f902a929898cd79d2f136b1c4bc322ea041f80ef1aa66e2a654455633335b3b45b7e461c8fb200c577b4aa7e488a4be08e11d156ec1e02dca2a3bfc884315668ceee1dfa90865c2539bd227ba3615311962c425e319892a10ffc643b316dc32881241dfe8924d970fcf1522bc75774846fd429a1f40129be20be88c8be54277fe24b7506ec4f29356a6f637b37cf2af0b787ebaeca788b1d3309c485711320912f26276b7b09c42ececea8c90338f2d8b60f87f412688874b844c7242e61a604be2c7654d48b0dd60a50116bab401b75aaf625868c0fdcae47e4c39fc337cdad1067cedaef274a6b053d8fae3b17b5f11658a52ecfbbb0c353af5ab4c64cea53b6894a0c81da3afd6b3b61dffb7abcdb17d1e26fe6e0564be579b7bc9c9dc109731dd63b934f8e6055220d5473cdec6a635ae6e169b381f1b4a999226fee41c1a6808c7526e46e7202b1bb3c125ec6551722a73ec93e34d9363ec478d66f266a79912e2a122f8a11719603951d171f045354bbf99bd3c2c7a5b1db30eb13d872f80dcd0f30a5ca4bb356ec0fbc9cf911b315bf2114707ccd325698d66759dd21e020d6c5d540eb01fa39d48e1d851cdc061961eopal_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.7libmpi_cxx.so.1.1.3libmpi_mpifh.so.12.0.1libmpi_usempi_ignore_tkr.so.6.2.0libmpi_usempif08.so.11.1.1libompitrace.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.pcmpic++.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.txtrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootopenmpi-1.10.7-lp150.9.3.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(GOMP_4.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(CXXABI_1.3.8)(64bit)libstdc++.so.6(CXXABI_1.3.9)(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.20)(64bit)libstdc++.so.6(GLIBCXX_3.4.21)(64bit)libstdc++.so.6(GLIBCXX_3.4.9)(64bit)libz.so.1()(64bit)openmpirpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)1.10.73.0.4-14.6.0-14.0.4-14.0-15.2-14.14.1[\[s[y[[L[2*[@ZZ}@Zp^@Z_:ZOhYYYܶ@Yp@Yp@Y{Y˒YYYY?@YlYg`YdYV=@YTY-^Y-^YYYY@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.comnmoreychaisemartin@suse.comeich@suse.combwiedemann@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comcgoll@suse.comeich@suse.comnmoreychaisemartin@suse.comeich@suse.comeich@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comeich@suse.comeich@suse.comeich@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comschwab@linux-m68k.orgdmueller@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@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 bashism in preun scriptlet- Fix handling of mpi-selector during updates (bsc#1098653)- macros.hpc-openmpi: replace %%compiler_family by %%hpc_compiler_family- Drop config.log from rpm - Add reproducible.patch to make package build reproducible (boo#1047218, boo#1084909, boo#1041090)- Add openmpi-btl-openib-backport-device-params-from-master.patch to support newer HCA (bsc#1094689)- Disable HPC builds for SLE12 (fate#325053)- Enable --enable-mpirun-prefix-by-default (bsc#1086821)- Fix summary in module files (bnc#1080259)- Use macro in mpivars.(c)sh to be independent of changes to the module setup for the compiler (boo#1078364).- Only build openmpi-config in the standard flavor- Switch from gcc6 to gcc7 as additional compiler flavor for HPC on SLES. - Fix library package requires - use HPC macro (boo#1074890).- Make main openmpi built for HPC conflict with openmpi < 1.10.7: this didn't have a separate config package.- Fix pre/post install call to ldconfig- Add a ringdisabled flag to allow building only the standard flavor so not all flavors are pulled into staging rings - Fix baselibs.conf generation (wrong directory and name)- Add conflicts between the macros-devel packages- Set Name to %pname for "%flavor" == "" to avoid triggering errors in the Factory package validator.- Remove duplicates in %files section - Set devel master package for HPC builds architecture dependent - Make matching of *.mod files more generic to catch differences due to different gcc versions.- Converted to multibuild. - Add HPC build using environment modules (FATE#321711).- Fix VERSION file during build so that ompi_info reports good infos- Remove --enable-mpi-thread-multiple configure option as it silently disabled Infiniband support. (bsc#1058811, boo#1058750) - Reenable fortan08 bindings as gcc >= 5 is now the default- Update _service to allow auto updates from github- Enable ucx only on supported platforms- disable ucx on all ARM platform variants (all of them are 32bit)- Disable rpath in pkgconfig files- Do not require openucx libs for suse_version < 1320- Add libfabric support on x86- Move openmpi-totlview.tcl to openmpi-config package for compat with openmpi2 - Build with openucx support on 64b platforms- Add openmpi-config package which contains runtime configuration files for OpenMPI 1 and/or 2- Remove execution rights from NEWS doc file- Update to openmpi 1.10.7 * Fix bug in TCP BTL that impacted performance on 10GbE (and faster) networks by not adjusting the TCP send/recv buffer sizes and using system default values * Add missing MPI_AINT_ADD and MPI_AINT_DIFF function delcarations in mpif.h * Fixed time reported by MPI_WTIME; it was previously reported as dependent upon the CPU frequency. * Fix platform detection on FreeBSD * Fix a bug in the handling of MPI_TYPE_CREATE_DARRAY in MPI_(R)(GET_)ACCUMULATE * Fix openib memory registration limit calculation * Add missing MPI_T_PVAR_SESSION_NULL in mpi.h * Fix "make distcheck" when using external hwloc and/or libevent packages * Add latest ConnectX-5 vendor part id to OpenIB device params * Fix race condition in the UCX PML * Fix signal handling for rsh launcher * Fix Fortran compilation errors by removing MPI_SIZEOF in the Fortran interfaces when the compiler does not support it * Fixes for the pre-ignore-TKR "mpi" Fortran module implementation (i.e., for older Fortran compilers - * these problems did not exist in the "mpi" module implementation for modern Fortran compilers): * Add PMPI_* interfaces * Fix typo in MPI_FILE_WRITE_AT_ALL_BEGIN interface name * Fix typo in MPI_FILE_READ_ORDERED_BEGIN interface name * Fixed the type of MPI_DISPLACEMENT_CURRENT in all Fortran interfaces to be an INTEGER(KIND=MPI_OFFSET_KIND). * Fixed typos in MPI_INFO_GET_* man pages. * Fix typo bugs in wrapper compiler script- spec file cleanup - Replace openmpi-no_date_and_time.patch by openmpi-avoid-a-date-string-in-compiled-code.patch to use - -with-package-string for custom names. - Disable static build by default - When static build is enabled, use --enable-static- 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 pageslamb20 1540290590  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'(*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwyz{}~      !"#%&'()*+,-./0123456789:;<=>?@ABCDFGHIJKLMOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrptuvwxyz{||~pp||    ~|pp !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMN1.10.7-lp150.9.3.11.10.7-lp150.9.3.1  mpiCCmpiCC-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_ignore_tkr.solibmpi_usempif08.solibompitrace.solibopen-pal.solibopen-rte.solibopen-trace-format.soliboshmem.solibotfaux.solibvt-hyb.solibvt-mpi-unify.solibvt-mpi.solibvt-mt.solibvt.sompi.modmpi_f08.modmpi_f08_callbacks.modmpi_f08_ext.modmpi_f08_interfaces.modmpi_f08_interfaces_callbacks.modmpi_f08_types.modopenmpipkgconfigompi-c.pcompi-cxx.pcompi-f77.pcompi-f90.pcompi-fort.pcompi.pcorte.pcpmpi_f08_interfaces.modmpiCC.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.SPECdocChangeLogLICENSEUserManual.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/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-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.opensuse.org/openSUSE:Maintenance:9009/openSUSE_Leap_15.0_Update/87724d64e3c7917325710cc3338f65d0-openmpi.openSUSE_Leap_15.0_Update:standarddrpmxz5x86_64-suse-linux       !!!    "          #     !     !     $ $ $$$$$$$$$$$ $$$$$$$$$$$$ $$$  $ $$$ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$$$  $$ $ $  $  %&'()ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=241f520595ad06f7dac903e10f0c408304e1c950, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=978b8ca7d05b3b7496d0457cf5ad451336a0af5d, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=44979078a8a4c8a859b112b20c6c46a2e07b7980, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=6129ac57c9242dddcd0795c787b97c71ddbed798, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=430511bcea69a19716347a444f283a1a6bb14d77, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=09d9f979c3171aed0f85b4e425e0224bbfd3ec69, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=c8d4ab4b67371c95f2b810057e6bad63be27f8af, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=28737c8f8f838adbf5fe65e8d6a4dc6e35de7083, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=18263de975a0d798db7195957cd6f96a9e44bedf, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=14c1c39a68b17c2933fafc7f9c7c7e9197163214, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=1360a2d36a8363ff50c3c64a3c2635ca966b4095, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=578a7b608f02ec0565e1eae249b0030ba07ec05e, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=0981bc68dbead056cd9efb2364ea04ef7508cd8c, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=c43c4097f3e1785bb9930ff982fe15c9c6e75bd5, strippedPOSIX shell script, ASCII text executableELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=ae2b59659d8d4ec46946c2325d07351139d22601, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=270fe1dca4de7005cf154237ca4ffebca3d9b564, strippedELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=6b393149365b8a8a091bb9298e214e2822ce161c, strippeddirectoryC source, ASCII textASCII textC++ source, ASCII textAlgol 68 source, ASCII textLaTeX document, ASCII textASCII text (gzip compressed data, from Unix)Algol 68 source, ASCII text (gzip compressed data, from Unix)pkgconfig 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)Algol 68 source, ASCII text, with very long lines (gzip compressed data, max compression, from Unix)C source, ASCII text, with very long lines (gzip compressed data, max compression, from Unix)C source, ASCII text (gzip compressed data, max compression, from Unix)C source, UTF-8 Unicode text, with very long lines (gzip compressed data, max compression, from Unix)troff or preprocessor input, ASCII text, with very long lines (gzip compressed data, max compression, from Unix)C source, UTF-8 Unicode 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)Algol 68 source, ASCII text, with very long linesHTML document, ASCII text, with very long linesHTML document, ASCII textGIF image data, version 89a, 339 x 170POSIX shell script, ASCII text executable, with escape sequences&+/4;DObx RRRRRRRRR RRRRR RRR"RR!RRRRR RRR"RRRRRRRRRRRRRRR#RRRRRRRRRRRRRRRRRRRRRRRRRRR RRRRRRRRRRR RR RRR"RR!RRRRRRRRRRRR RRR RRR"RR!RRRRRRRRRRRRRR RRRRR"R!RRRRRRRRRR R R R RRRRR"RR!RRRRRRRRR RRRR R R R RRRRR"RR!RRRRRRRRRRR RRRRR R R R RRRRRR RRRR"RR!RRRRR RRRR R R R RRRRRR RRRR"RRR!RRRRRR RRRR RRRRR RR"RR!RRRRR;ǚ3w@뭲s'utf-81045ff48601647f8b2303d956cc1c3f3909e521484b4204dc8fc275075b6f9d8? 7zXZ !t/ƍ]"k%GN4zҹY1gWkX|Q=e[`VRۖ_w‘7H 4g9Oj3pPHX|}t>t@| ҀW :3m@ LI귤c j fDZǞQtdF!] >w԰* r|?񍜮.zdmh8wmf[00B-=aLnŤN,I)e;Э0%\ņO$﭅6+#\nTPa鈸)owe"i Ï,pe0zAI[u1480j5\XxzѪ|J - EWmB\`RD30Rk̂űttфzH,3,VVC(O!V{SF4y1lNe2H2 OإRmltm)dԍaNec-R_Q</'ƺv`jn(@#bgi &ej_a͡=&"U atr %Sh(MΥW5?_"'( `6!^c'[97߈_2EwzeX'ngd;r#wmN'̹#n5 mRU=/7Cq^^ r%WoWbQmyy>1,*Wةp\#Æpy*2#oKi_G^j4\,DvU2@>w%r<ȵvR\Y ˤ LRQIq ԋt.yX_o=p4) VIyv&%{YCH[f^RmbCNrsJ.5d[ޑ}'L;H~ADI(wR^9*Zj$-Z&\ \*sB<2J[|9Mxim|t8*f5lJ7 R}~NZt=Lx1‡#i?nd;ѧ zx'6O(sH|5KǭVfKJaUj, }|~@?Lb65XO vԭbo(娆\!@Cwo 72FIYBY54?Vw[ܐ#!y$ xc"1ep-UhXŠ]"kzcckoC~;u\-Y_MFekS4il0R&*%|%RΓqFkKeIx W} JH!12SCPuهTROU혭ja p QQw/h%p[WPϾ/୕đ"4. {̝ԳXay Oͨ^̭\M[*/=W/虤%IKX*ZhxpvaR#ÒExN8 6)(ssT)#E- ]tm_Ӭ9/gcmmEݼdβϗI Z 4Z+\hc47E'kCy#Ti]Bu6LAWT*CPNM0ҿhk Hٲ !ϭMpN,[udOJ-֚3PGIf؃="ͻMPLKTe3ї-N49+H:RGF07ieQGشF Bp r;e KCd\VV6@2VOp/Y0X wBD퓅 қ`Ϡ{Mlx c IRtmAat٤U`$k/87G_E1*H4LץK8gr} Ƚ xB[L*@ܿ{N9*Y%WxS=@E^B*ևB-[c9ke0]b Jc|ǓT9?*-mjRtRqlQXI7C]|zu8TKmI4P#{rYi6݈$vvʏNɐ݈P͔̦97|hCÌ۩o3H@TgA '[_P30SX6'7X> 8ķW䞕4Mb}L-V{\VYĭˬaEAhceӋ=ekCBXoH;n9:ߝO(]!eρf#_X["V&j.dG=͝PUq ѯ' }=nPB#M9K`XJ)!TDskm.M E'6W˖% ^`:&:aєԛ " J_-<)76Wt,;hBF9Q;*N橼;\`!P m䭘J´^frΤ&g3XuL.ɡy|;yc*yjF2sl xw@%gCK/f YM>^ymGY\qSJؖO& a͊ *2M2 O, \̿]%F{MaKKtH9ZL"'0SˤocOn,{I'&wQA1ٯ#._=~yiR^76E5&Ug.>M0m[\aq갱d,sȣ~@\|PviBYHA"?m_olҕ ҽr#ˊ|c;S3΂XPT*o#Ω$I̕J{D]uF(:sK@/X;Fmit Ӝ'RDЅሳpP_KxN- {4)@IPԄXTC9}r%lZh kR((v]Vr:{rnOBdb54,HD1xR[pq/-%'J2q1l[ ƏGpU{|I-%g$ZFKyVonDBtm/.Vɲے6@Rq3eH^V/b'r-B]APqiEJnLP5ۖl!RQF1ީ+Ƈ! nzq_Po[8 X;g! jD+ C \)o"w#Ńta͘ÜcQ(ġwVq5BE=b_>^2Kq5˧Ws({,"Ys%Sˊ A*ϤA_ܪv`QĈr=}4tsXķ RA{:+{kz׌xGH468:r4*GsD4t4aqs{/A.Ԇ>"$Wc̑ˈ-a3NdmZ-~bXz#6t\5w<"VؓJa+t Kģ{m.J)jԽ׸?wftuˆHPo&MDu5Z< t0DJUB6_j2% m:= 6s!]q"fd^e~*U3("BwOxij'vy%^"9 !`YCȿ [Yb˵A ݩ ~3lmVV6}M|mf>WBV:cPpЛ rw}-ƣ{Q&K_]DcP@g1M>! ⑬ʊ] rm|dhsj?Wb:,m啁מxGCs{zʡkxgIz,V`;ȦH9P̓2 G !%榚d\h}\"Zha ˵'h-SGOWiژ;>tKLj;kBY4 ӥ^܆'ǗZ,f?T+)[Bw'S֢;#f@kb6˴nq:7ovbLʐN7*y@gx_? yA_w+qW(T}ξM/%civYqN!Sn+W ৶ 2f|`m ڌw.^k f,OEs/b`~; }q$c Ŧ'i0Zؖ"R*W {Mjj1 ׿ۈSxKN4>Gr9NNCA\w)vEQ؞UŎ_FR~'F* =yUp|[όv:uUrT5 )|:xNɲW0۳ʻ:V(hƣWHׄrBayFwKcqMƝwXW_M)jbjW쓣sTw}B!gÐw5e9qb6hoG'YgD3Eb^pqcA 뒃筋h׳?[vtdX#7/C@}7"_ aEn{cF&~42Ʃ5[jջv3E+i1T3!A)8 \˼o7HhA&5B/!q8<:xǧ`0$fɕ3c([{eZJ[S(w4eBW#jՊبfB?pqLKG@!zWiZX >6s_ F[T8gؙ^|36cP,қC;Z_[׃ǫkBھÝC'I*aYNa;1 rR[gK}iSXՍD1ɰAT U#M޵<)#oq+TVLeY Xxc8(LD-h=(ݏ:I{x&23T(~ża|&qPpb7ltXKCBI)w)\Ԋ|^hгF@!Vp5 vi|5 Yb @>޸,5duۏţ3YQ̖ݹ:,nK N}e3F'y8{S#Ify M\ۉvJg3r]#~5L`g٬ŽA"Rd4Ŏ*;C\i1[u1DI[$RPqZqo*3*sTCu8.H+<0JX{3B > è!;?'ZU("&ZnqRE~NP,ϖi :e/PQg_ X3zbj7>:n3*]8l>Oy%{NY B{WiE쭈s)drT~2ߤ^"#~ X@F:k hvrCh]KDf>u\F+ 7Xcp\bdHu7qAQjIJ‡J?ƪEioGyQ)^R;fdU!L91" \i|$H{-\>"eUPÌ - RC)3/nz&J4W8 3C^Rރ>lN!B+8f|F?ws$:.t 鸧W)5akkRіEDf`+EZQ38aB%FA7K}袓,>+.,ɦ,,NV##sX`ŵ$vlmh @(O3sOxNߖB24hT5lg,HpLb̘,B g|ZA>J;]݈Լ71x&2ɞ܋ Cv űl`^#"- |/cs+jU"w;zLhl1LI`җeR []unk ًF>M@aA-=^+7Сt@:B%c' +bee~""0ToӾq N mЅ4W]{!7SyP?nt4V9^gY3kwv ;6\HS>ִ ;#lHJ~]mONϞ&pT#Tϙm  >GΕ{]pʓͿNT6":AL}ӃFL,g_5'Tft@I3+AiJvCktWڰB^fSt d&C4.d%r7dj8P-WK1w}6X|$jJ+ Vb/Sr<;yn\@wiy egFXS/s&Lb 0 +}*y1xU5o[q :D<ܢT ֺi7hG@d 3xq.BA{@Kxn- ^x LyR^4AeUcʧߗխ5zȡQ;wy9, E#p|XJGy~Wvgh8%w}I|'8]zRH>ja) U=[%.| Hމ9wlB7H1_8cOڡ? $FIxy-l%\Όr%UX5&An V#2mϊSa.| w]HnvP_˲66עy~ռy! /ԹZ%c' ڬ.*vt7MKkP6CpɷA3sOmU=8*E yFMn(7*SPYx\\;DZ{Tߘ7K# 5\+ MJQP/t{e:)BNO>&I6zE(\#i.jlG\::@(V#ռ`P)Nt}I[o'Hd.Jfih{\ҽPUrm%Ĭ97Q2Z3Mgk|I2H İ9sIJHyp!iݞӊoMw&b} a#)5[4:VYXGK6+IłyClYtU +W`ur9S[!K-7 %A1>62q{3U|)Crғ6=IaTo<\*B:i2yu|9(O =&PM? *AݦtWZM(.jۻ Z50 !xMr ADbd";T}?ʻKoߡayN*QĨ?9iӥ`N0BQd2(:Ԇ3K#6řY'bZph^ Q#%تB\1=.]-2z(QgqZŦ{?K_.9Taϒ>˭H~~pizxM4hz?Qg!Nxִ YY6D2=uʨ@Y[Dee#Dh #꽓qo,9.1㯆Oԯו@2sJ.)֌հH3_E\NVx, q;sM~H緣GjjՔ0z O~Y[d&@7K.; q Y:Vۖ4̼v߽A7k{Ń-Q+Whn̐6j (뼠Nܱ_RH 'hȤ-`\{G[ҼQ|e5!<4;T^o#ʼnpl `k.H&۲Y:XvJv wyTpܔIFK1 q5jF#RXއo[Hw PQ,]M 6Ni5wLYn黤Ky!V6R`U:cy񩖔J`/C^zDiWQ'4UwO253d%͐ wvHow{8 FԾMR"qgBnxmO#^Ue5ZYGN^l>[>25;[o=Zsę=F8>03#}%4qNΌZXx";]mlT'["K~Md9vN5^5+g#0tֻ,hWI`$EF7PiR-HW݇<.S:5 *`S `G;y"! "Ol E% tutm߀(?YU=؇Y~`X.2pZMir @Txy!nDvޜ¯o)8@b \%3o^Vkiʌ_m<\F];NA'bwg e7 -Za<.+dz4Ȑ1[wXwD1\q5FGYVDG,Ki QXS1cp\O:0M2E X3²F4LLeW@{R~\jQbRO @白PL:= $3P; UF-6ź=8:b҉%0MMD64$KM %VBՍs+1͢vj}uy szn0_ƒP4vtl4Uu%c̺]ܴW/MS;M.ї1\$F?n֣GfCgvo?>jBK)u JLv7$<Β ^utXjۋ-)V~)g%_U1# >`M8+pW'<Rz_mėY-]AVhCZp8Xz"O >f\a=ĵJw4gc]-ԟ[&z;rPglS8%JOq*xɉ-#.<f8?@͠fOc8u`Oz1v]LįsyKWpQ ;sA[,Kj?F^'j~j\q7Wj&8ae&qS.}ݤH0ldI6_ԧ!F^t2m8{no,W`!i@{Kh%oXsd+WUS1jwˇ%gx.RUY ;r!{<_d`Jʘ)1FV_:HykGBNE]* eԖTw HӞ9~ޥfgCD6Z.?~d8SĄ#\fnͼzzq;Jt J:t+0;!{ Ḃlu1-~p#)f@K/\HGTf"6G$ R5䰖ex JI=lޔuILO;UU[9_kF D~(̬<(r~=9EEFk p}GNF&YZ.{w+ >䒭>QO&p_a5;DYX;aHD6ź[-x 6(/2ߒ w:D%^D1̞8diίhdcI[^Ue"'%8.䤝^;PDykRDgl(xfl_ CZ mQi$瑋R 2_x''ѝ7;r 29B*;w` T#` X`pl;6I2;BY6I% ;:{a 2}:27^'#%jm:LQQ|W^SFDI3,V*ĝKųlx1iOJoLSKdo#>0fBx7bQ!o?]UPu]a(I%8dr jOR4CqtꇌUIeArU{t: ݞ4v\V)lsf vBEMyW Oڛ85bZx'6ξ<SOmۆ8uʏ}.Quy9G= '+N}3:PSVDx[t")wR *P8CmΡXh#Oh`ꡮ* "QˢȈ8םY/m?qHx_WIdj'3 \DMM9m $af"JsI}Tb|aPªI藠]RD9Y[nL͍Nd*:>2k[mF≮6I얚BH}?5~71%6QoW z˼>%a6h#JXfB^G1~mZI$hX@аYifl}U}2TI0cӞu}\ycVŒ~^@7! G| Z.2Z )|GwYc@HhZ[d#i)ԟ+%U7s=ʃs:p02"e%wK+w_1Fl}ȚD#xKQ`VXn$|1(i_?)nM끟ЇifVk]HNmiU 3ߡ7/{S􃻨*:z%38|e(5@0p؆0rgkfҺ7L`ȱ+aR=ڣ?F$ kwsÉB©IF/|R];ͼxga_^Rk*RǂZrg<;Cwe ֓ndTv&.BSB}3 Kz(iKΚއ/ͫR";b)XĆ 'ԣHW_t4 +anp(v(6Iu]DN8{vwYLlOTnwDsR\,%m{jm{VQ!n8qa_(ӯ5< (/U;'??1vFzSZvMf|Gg+{pW|ΕiiVϲCVЌF4aY;:;~vO:-:y]K?GOxL6o 3Aϴ&4POOoX/ߍϝC3/˨{D<]8ZN#.O?P -@+pw4hSiTb[C]jɛg(+F^lL ُ"r `㝍K e 9P(zI~*nc+'.OP ?{p,[2NKgeKQ,xDh&%NVG, >'oMuEtaRƬ9S@_IGe\)q-`}b]3hEU_28jyڈˊ`7dK>!1hz[ԃuZ\Fzy/DŽ(Mrhg*Cjo\-a{:7B+()бWI"XBYmOSƒ dI9JB/G\N%:VN^ٿ(20!VObz ~HZcР-shaK>EMbJ@KéR[el!%)̄5z>I~٦K#8bû9 ҽu@N"@ u)+`F:17T_~0Ө' SO$ưB v#4# x:nV:ʅvԞϣT} j4^Z O(MU7U5`&耔cL=L`fK/*"s{|0q $(PlgvH+j$;rQCd&QgYAjk _ON;My+#٤o$ |ACLxZ-yZchaO&PT͢(lD |$^ѣ2?/f[B_ISs[{nv;֋Iǃ%DzAY.{ݕA7R,Pi:@gb'Vb3t t;gmDȒ7sL/ee7B}R̋΂Ⱦ)ıMSw.2hA졇ܐJ|DBe|UQA"F]gcvA5jd].ꈺn#Lfц.щ!6O]mmP/&)['Ir:vu+ U+b@|n%Ew0oعodPIJ8֫Fy6u[W( 1#6`#2+&& =*Uhǝ4F>O]@ãԀI]` |[Av VU@L%כ5 յh[.%@# 'oG (Q͗}#iÿ%X 7My& ϡwq-t4_׽*^ni's(o/y2x dOW_T7f]]u)}6΄NXzFg_4!6w8EךA(B{Lg~}2,ງn0w*uO;DId2VZɱ#_QgTtT-|xOblɸ3Y:lS>ND a>6߃T~ÓNt닽P"0)[JZ&:r'XeZXWm-ѣp.)Sv3^ߖ|ɃMD@WsFWmPv*7 [OU!rײ ue5l:+dϠfd0lUNs m&|q:L6RHҽl|#̫@`Oo y$D?F!Un6e`C \ HDyA = c~kڷM#5f s OB "1\*mYZ|h(+M_3wp`>-~]Ph%d*( KZ@̖I^4"ƣ7'&^TINqL28góSG*˄EN8<E}/cW0x6¥ϿY w$2H z-'Zm%:{2lA;FULAET?題=3~#- EUW&|v{SNc>Y: "t}ܭր/gTc!Fi8XΩY˲?(h1 1ck |Bu]2r#IIRxvuTo85ʲSb#ǹCGy9 XSU@?yΟwT`xVmSr)OTC=S;\TJhDifw+)ccڿ^028FO#Xgj Ձg_džk,8g7ۄg]$NBe,0^}phEx3{wN/u(%8%n|E:m1cdH~@e/$,a^]]#?l"J#i* 4cUh-R^f"~ #ng?P @`V&n47褦do{opyuICcn@U{k.!9IC OfOU{"i]=f58P!As@QKčNtC|g=l=_ V;y>ohW6bW:נPr6Xs7j6|Xwo2Lh.{,YpU^ovķ*p9JsϬaf4iW9bGyErf L  `od(`WsqU׉|‡+Vd~Fxb ԑosYes{[Q V6^ڦZ^oֶCQ+趂Y5cـF;-tIc-EG G ⲍ_4Vf!Oir=f{C ޿'bǜzb8T&6+qq0dHU644RQ{DZY@1VY.pp ,&Cļ7p-cd3F&gטP ۺEI8cqL}gDiZ{”[-2U7Zvњ·68Uߋ9g&6ScOȴȕZs;\Kx5ܵ]X;7ϖFn[~fZUC3"B޺lZvtUimaT9mH نnq܋w*B^!ڋ{aF̓6J P݋:.fDD~tť)Ʈ14|fk쏠 _͏_'c-`LEÎ#˙J[\AsFhV:+LkYl[Uѷ(Dx3̹OkϪ@CzʷLJy>:Eb@|bg Tgu+FEJFC =_iS/.=8ZA'oI]&s]sٿ\`48fiqK?|w*M ފn8I?IΞ0~"w#XUTptGO>61i zxǩgoW;0+,@0r*dT R3\":4f(G}MЏ 7ňJ9dO\w$Q}ձwQSuk~jMUrePDLo mu zmȈCp"o.$[ޫ@fkxxB"|[ǒ:S&U9'p01jeM/_f[pRUt0isQM?#Δ冇e_W$ _iV}%p yrT@V bur]\}P!"[a[VeRO&yD/ҐT1UC85+ZZ>j]$&!Y  =o`VUO 0;XPQ˺%v zHݔi Vfs%WH W}%Դ%3ޯ|v񔛊0yg?rG-o9)$ a~}v0`dp E}GIr)˄ȅeC Zl0M=xSV4RyFNJ2pM:-f,SDPf!oA}XzadSzφŗS61H2j0~3{G:P1BU&?ZQ-zW \ЌX9V7q1pօYϗ2P)Nͼ+X]$.'L[zށOcyb] 4isx(9flkl?3`|'ܦ^T3Bx")ъ,x,,^cʮ>7KmN8Féhо8!$ {oW套[X{J>{8ƪxoHR@<#si*X]ia#6ϝU8U?ZUOIADix{p[n Q1 9@&,XJ#p9@6>6+__ew?Q%Ϣ!>inV Yv@tQ 1rȇnZ c``Ҭ /\ ͞j z&6Du==I6?/) ZL#zc0,(}">ZtR};rǫk (Q/[3}5kbgǼw^]s|-I(2\JD##f UXiᤇ м06Tux&Ur/ u@#:UUWc6L[%}|y`<`]<[<^LhwL@b eo!7=SâD%J3*R__ċޔ/˦}/|LCc:sjv  t_RUÈj>+Y-/f2hj CYkؖ 0BNO#™V/6Ni&#ښzKȧ?g, p>vk{y|C#C^6e5Vk#m:Ծ4fFލv7ϓt*^,‡P7#?cr>kKa'22ѣr7ȹYXܭCΘqAKAm g14 zu/g;Y?&l]3(Jkݦd"Au- n.MP8Iт+v*6_pw+/[EK#MIm^:h{s)3۽Mgq, wb7wInzeFOF?[hՇ2G$ᄭ[y}Uᇼ$95 {4|  Y`SÙ1beŶ[DZ*8JQ;E\Qm?x~`)l/>=e`ʚ2{T%t݉vt $Z `1,B@v u`w+yhCR6 W{dmQ2dcJiRuw/drΣگ6{kngyXMo Pu i/45Y;Xo0R,wҏ][) bژHUe #[zpd{K m~6j!!bnT  o&ޒV44\.MF'fB$M1 8Wʞ[JʻA/X7XhۻZ]#̠F up"q@PnM,5rgT;zH̓8XQk|O6?QkB ӊ TU,Ectwt傾m_\E.I>?S!B8BHlk5*1DR^9uMbY0[%m?[F- M@!kcT T2u}u^V5u=gͲeQ`EʫQ.^1y(7_A|S*7* #{]gn `(?n^,bq>Zk U*xe7C[2f F^״ՠTDbU|lڒU3˸f81í \CɶV704#&]hJULzEU[k1= Ǽ l HѹRYG;'wʠeeW;|y 0/X卭hwŐ{ I~q?!)"EPL;)p9Z eRTD(@B(^wM0"3Վo~g%t !y1([9Y֟:휾mY!Zn#ϱqnK"NuE?QAAJQ NR5IK23`?"4OA)9Lmɞ4H!mՉbxm8'(Ō3AZCR alŮVG&i?W] ̢Q::T*> _vKU׳Q !ا !R*Ie60]3TPi`7q/s;6$z|Q[V pb-܃Z""m5cmImU;M=\Mm7|5f$$goF|siGn+uӤPN$2YBi?fILѓd1k9[ [S77Ȧg eiE.]B:m'&+ 13P [:QX tF4^>+ȵLCD\F,xq /))P԰8_0bzR1`K!dLE2)3ժ^'a14𦴳јntMo w 0@NB ӗ1g^\n no^?/)?OZ2Ym@"լ X riۮu-=IϘ֍6{D;.*չl E}&}F r-|wu\QPϖ:M\;Q(-:*f+$'s&KYtR ԭP_CVڭc;6E0$ &u>B[)Dca])M3v+MD{g$b;8jTW#[fP7A GT1,P:'0Ыp1]E&h>cb>!m+6pLP?|8E9;3c+D'w+J ?IY{s4rLہ!DHfuNskJ6ZJ4}3DDIsu$-gv~O7s-gmj&gPhjH_*Б9h( <P _rA\+4uLȧuzˍOa )l-uh|CF 'F{U>ޒ~.+'fy"dNޑ{y{βeJ,RT<jJwmhgg$ 7t>V 7#S[X1k&q_*wSn:֯W9|fU.!2L%[d0U?}7옜r4<xJl}sz*b 5'm똑(k_K, T׼&lhNhuR T\\bWnd 'n%`ckagh(X&<2jˡQ꿦m?ً[85&d{*Ȟ^ ~!^)5H?`"*5R0CXCc*Qd\_u~R>Z,/`J1^|2;qERx9]uݭkwhuv|ъM"{Ծ$"%Ir?zQ;YqSvI7% WhXOdP=' F,_SDiqڑ1B,o&L]A~ .h_p{VS,>TH")wTc;#Q{:yT#\E<#&-X^A3ZD̺^áR^_a3; M^#\Ư'B1&lzj%u\gq򉜮>N RtNK%-͟S+O@~?kQ3 Dm-+ L&\db oZ+XQDܕT~Y #) Z?Ln1z (Lf!;Y1'`C~`+zFԘ$7Z핥}.k8 G9ޤNv=J-䥓iWĘu̾`VQefP2CKhfzd`fs8*_d2uЭ,L.,X^@m>8OͶUH6V s \=L ɩMMḫo,x ߨƼ^cYP~Y֭sj^ &wz23nv%Oލ]uT+iG ⊐&^UL ,(S:Fd S-J#V0z3;Xn mwSi>{IM f\QW 0Pǒl[m`-IJҬE 2'bY\DƟ16Ԭ|h@g,$C䝩R:?z7/E~{6#\[AQu@X!߂ Ӫת upd)N@HYmcOKU>.si|2<6eƐɒ Oފ{WY+tə>"GLC_-]埊$ ;L s>1y䋌 FM*Nz$XfV緑n\I4q ]2{drb*BuD䒂VYw1pRڎU$c҅9+;_e.Is?rCG2lxFl܃*lQsNqU59FΓ k|a(Y`iVhtDm]+ػc<&{JH}J9*p(\e) 3ؿ<.y} ze. i-J, X})Vj a#ǎhWsӤ3H惡$,ރW8ͳ%\H@3(NP)0T\2.f"v !;cA[ۺLoܠym$^N8ڂy 4|5j#7ADvHCYdw[WWrӌ-D+h302F=-i֖ rp)ފRr`'4dR|FZȐnȉԲ5OeKy`>Fi+.l+f\s1/YB_]qF?P *+MpUWe\bX(QK9POdN$0>> /7sv%3 /lOC3naQ>JؕÂ؀#ZR.b""`=ZH`xT`^ ?%ܝ? lC+jxT]x#jG(Ej2/OYSg8EF9m=KWqXI񕛶$EKzF=sܣ$C % v*,Glf41ڜE=Q4r@Zϲ?W,T\wଛұAH6* .iwFږ]?mq% /C|3Y@GuZ-X:6F5*xTqsrQc;ӄCRBV)w?C?}a8m(ڲ>sf!0ClۿmL0knKE2w5uAe'  ^UYD.1U0Lx76CMJ싶JaKՙ-z靀uV}zq_tj2F1!?/sG@UZ襾i`ntrn\h($̦hf eޞ4x >;]1yg?@۩!PrXj CoF_nt 23!=DX(B #a~O>q|Qfˆj _t8m"7$CwƎ7f@+#9K^~Gj~u-VT k=[z `:5s97Hb[ZOЦ\ݶ?gFx!-l-W,0MWAuJFD~='[|B! ib58@ r E6(B@Q~ [4M['9bT%ݸJ&V#=rRv*ng@z/lգ+~#L'y*}#`O5ZYb1}] TK`~e\P3q#o%,xFT6'% m#|EEZo7?RɽvLF6@e_n4 T_:u^o_V$e9" l-cضxE9r+OE[V0_U6RL [(:0\Aeϵuʫ|YqfTLyun1}:gH+#z _N3>Ɔ;: Șy#^ (ڞA Q^Wm^2V7yjg,C `3u&зf+YrWÉ8Vx$̡n,ԤyEȞ॔=ӮR7|JV+vяfT~  *b*R쬝ۜ)΀oy:S#3!",iDQ8*I7 ec-2Pw.A*ArFS3?Fu(sHXsO4X*"k=M:Lj:7$8EqI@oYwT@=-MUb;W[q|X/⎙ )R׻B~b<' ,6CERR{Bzq EFbӠtfP6<[]c1B G e7 u@QL]G#'jtsNSjf bv)<6&7tTP&ߚcmTtAl™| ݯ>Fg %ۣ4PcŃNqqR$am"z,LyDφd,]>}NX@m <*Jjic#K?Q0j"b%)mRwԚ nv)f2TQ뾨7gBa O/do,¦<6Lw҉ eh\//sjp7rA.KRG$ +HI:hSl%4F 9ܭ0zmʚ6wv?iVjv4ŗq6kQ1t3vBƒK1UXug}4R-Q  z6Ӌ zA2צ@0?Qsifm3 HErҤBnV'œq! *EڴK,iJgD0h#:~V6SC6l$^XSLi_KAcu}9ue$rG#T 7Y@E«`H{p#ÃoVM^m{M1 OLҷ$sS^vٕHM(D '-F2+sVܹ3R7: eQR: >_Ǡ~]v!k]_Ie+L8,lm7˼ NH(( G$vagoEܚT2=}Nh_nv!d!txAD:iL svI~X ~v^c߇,TJAlĜm\ SJ}X8ߑyhW<0XS>r*%60G56B lҲ[S('8&~AMI&:w~2t\銋|yK`@Rd)Зߞ(ީMx_wŨܗJ~~FBY9l_IAC#FaIW]PƧQTV 8(e";uy]١/#͜F&0lJ3ؘ?UI: ğ?m.Y*؈ fe)ip>=IJMV\ؖq=O>>A RYGr-Su R.v]_E,;0;fUOSk4J"~Mĩ:^iR& +&hA#&cp??9]tYux;򣫩׈8t#(BGu=Mgw豵6<{I%xEZwN})O,xDx&~1$ z7 Z9)`gB/I DGQ A sۺ:48hngϪ Qq3aeeZ@R``ET@oQNhiZ\L6.!e7=Hw(TnQhTf +@kvT5DLJ0<8mXA"KHiliIFC-0s4]/k[OLQ4nW][Ms>B}!(_\rs)DKdDJj)[elqQ_.#{g*pѵ@D IVR1K|n8!bfhJW( l5 k*wc5]0mȲ`luq;q"2gLSɨ;? _8$b0eG8 G.߳ŢwQ>vLF7ffizYYE6E`_<+FCs_H?U@#ygb`s(gMtq7'畡zPzrA- XXkE-'XKz=Hqmko?Ix$ &:_xJ ]y*u[`|\/>D#lGth;B G$uTKV1g"#e^1ͯNwڭ?A3x0c4Rkvqi0ax) MEl MS†p6B}E9N@'Uj鳵MA]+6{* w^p3,Fl/ VVi+ !?`֤`tiX{yN H6 9DYJɩCyC"(!Y|c$s?%gvF2\/n-g{R=m7\#n3@G@.z}46BgUwx:X忝.3 YZ