openmpi2-docs-2.1.6-150500.24.2.1<>,fp9|Jh2 =%d:^P {E%k쐥¼]~JTe Bx&j=đ3j0K M?C0 tD&!|>ڟWyG.cMOʠ|͹fKu'3*HlCO[>Fɮ`@X* Ʒ,S/&D*nAn=mwn ]Niō &Ln9! pȏDsgjd` TDe$t| O>#s+?>;X?Hd $ T /HNX  * p "  Xh,(V8`5945:5F#G#H.\I8X;Y;\;]FH^xbyczOdzezfzlzuzv zDCopenmpi2-docs2.1.6150500.24.2.1Documentation for Open MPI/SHMEM version 2.1.6OpenMPI 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. OpenMPI also includes an implementation of the OpenSHMEM parallel programming API, which is a Partitioned Global Address Space (PGAS) abstraction layer providing inter-process communication using one-sided communication techniques. This subpackage provides the documentation for Open MPI/OpenSHMEM.fh01-ch3c|SUSE Linux Enterprise 15SUSE LLC BSD-3-Clausehttps://www.suse.com/Development/Documentationhttp://www.open-mpi.org/linuxx86_64ק ק :   :  [ק ,$ק Bק#i c m {   L ( a  & @, 1 DF T   [ 7 S ]g + c    M6 3:  Z< y  ^s2 *z~   K 3 * *h :=& M @ ^  i  ~ sm <R TM  j1@5 e v   kF{ !V^ " ~ , O tJ   i"#!""8   r  GS  <$   T L8?s # {  N D^, 3+J j +k#!s e X 3 t "/# t JQ#$ #M%C~ Q) P k  Z ~ l$ k /  r } }{M   rg SD:F   @ f |d L E!f c E#"#"""#"""#"!H" +n""!#$""""!#"""#"""!#"jd c#s#[f') {    @AAA큤A큤fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff05883115636bbadccb6d58f0aad15e7b7848ec0c2514399039fff38d4f17a5f940c138448b6bf74b81ddb0edcd167907698ecfb4c326012c6518ed40674fb48a08761d8ba3bed33bb374c6233e71a295496e0807f0ad46f34fece318f989a0dbdaede88e8d744f5f30847b69516c77dcca9ab12a3ef5524d91002becaad02ce1f2ed06000718702bf938f16259f49e098b9974f9f8f514cf5f9c6279dd896a18f2ed06000718702bf938f16259f49e098b9974f9f8f514cf5f9c6279dd896a1890159301a653ebde157627d7b5b18241aa0c363d6f5a1f19af581634cd2d6f41daede88e8d744f5f30847b69516c77dcca9ab12a3ef5524d91002becaad02ce12d3f1f29dd0aa2b95a0b6b2d45cc5848c580dd2a58aef59c21f2a3007aece76bfda9d3ac9416dacdfe369b53db989d0e7fdaf09514c3092c5751ff0fab8a0e36d1093f5c031aacf6a02610b3bdd399c6050ae45b647c12ddb0403065b850df5c7f1b559de8388fc8b166184e1ac709867d2a744e2b42da0e73f6ae306b4d05ce074814286e7e160f0b3a8d553c49d807d146f88a4e857d66c9478a9b035f17fcc6b2e384bd064c6cc22c918ee2ffb27d408ca88b66e88268489e771ab2c93bf58505055cc20df27f3c7896eff3b3f9e1b5874cded4e86d524246f3a6dca19e454126fb12cf19aecd3e4f7504cbbed6c663707874ed4b6f7a625bd5e683189cbb2d3f1f29dd0aa2b95a0b6b2d45cc5848c580dd2a58aef59c21f2a3007aece76bfda9d3ac9416dacdfe369b53db989d0e7fdaf09514c3092c5751ff0fab8a0e363efc408f6c50771e30fc6143d894ccc2da60c2f33a4c9144802b3c5f95e696b8d1093f5c031aacf6a02610b3bdd399c6050ae45b647c12ddb0403065b850df5c7f1b559de8388fc8b166184e1ac709867d2a744e2b42da0e73f6ae306b4d05ce074814286e7e160f0b3a8d553c49d807d146f88a4e857d66c9478a9b035f17fcc6b2e384bd064c6cc22c918ee2ffb27d408ca88b66e88268489e771ab2c93bf518669d553fd7c7e13272ec2bd89b8627d9e812dc8ff9916c34e5bc8e35257208daede88e8d744f5f30847b69516c77dcca9ab12a3ef5524d91002becaad02ce1768bec9cc030138bfcad9d001e6ca5ac4e56444c94e0d73d6ca8482d8c21ee785de59fa1b616ffb14937e472d0e777e180be04ee8d1e53dfaefd4642c1170d2ebff68902606319ba84c5b299d85e43b06138348e6f3b0feaa266a836c35a620ddaede88e8d744f5f30847b69516c77dcca9ab12a3ef5524d91002becaad02ce1887ea9bf0b1df3eb628d42ec15e6075207e0d43b545b2217c4436f2cda74eb13afdb93e5005a60ebc3af495d763d4c314ad303043e49d09bff3b27df8c59b512daede88e8d744f5f30847b69516c77dcca9ab12a3ef5524d91002becaad02ce16a368eb54a479364dabb7e0b34e3917a2dcaf1b850fa4dc29083b5810cea3d70cb410db3ce498a1768577a6956c5399eb56867b62072a2176493dfa5aad3efc3c95209b368b88781ae7833ba4e26ae853ee338361db26202c26494a2c1cc75dfe9019d1de82bf88c094719ba5e23300fdaf74271661303acf2ea65f5d9aa863f8ee8414f904ab5306fe404c6c2968116f3428dd69ffc1b31d4d1a890ba4e886bedbe9577ffc842f1f5fe1e4a944a6d377bbfa929b009ef45f636b8c3aa67a5221a81cfbe6d62602acd494f545829b55ab4013a67bc48e56e37b5abe144567ade5d9fa459d13f7cbbaeaafac1c66fb3c7aacab938aa26a2cde989ef04427bc35fd814391daf7dd9f24cdb7323108ed1376709a1290c0f793b29c9b2b77184e502db4dcf0a4be173ceaa3d1cfc79f6944c9a918b30d9f6e54e6e9d2f415e6b7835b60df63667edaea65042c9c06151d2a0741bcb00c8c67f81779797edab27a6490f6b686239e763542a63085e4fd73971a5521678a15e9439ec6558e6cea59630949166e63459d489620aade3f7e3dbefbf3484964a937d4a16986f8e7ec217443febe731f3c71af8839712eef993d9e8df2b1f406238112e11a9a425d206e59fe3ca6715f945e73ca591c72ffb55a0b75cf5f09a75e58aca4eff47d41ad1d1e19b3b58f46c74e40139f336bd543a0e24f9c98f0b1fb872fea1d2a90bdac141a77bb189b1d145594fca824082a67e570bbaa6ceb91e66c663ed4352bc63396e6a3d558600ff1fbdb21f19f8ef585d26a869a1ee9bf4340234a0c4b3b96bbb969ff721e76154c182fdde4cee244cf5b0f7d6f1f294aa8f1c7233a1f126e44c8eaa73a99a9b360014747d48dfc719a3de05463ce0b019408847ba82cb6d5bf32d674997383e4937ee0f6f5b1b2079dd09244245eb77b837715fd09235bf540139db0b6611a340f8b1cbcc08d55984ff93d27dc944139d6b1b92a53eab99d17088d8f300ef5aaa815dfbc5786e7183c0740a6c1de0cd569ab23023ccf92517bddef4a1c8eacccefe151d7a5827001ffc35c0779781b13df7012b779f484ec8af2b637b9676ca9b971030fc8e9c8c7f176a7e338b701dd997c631361cd64cc3885aa7e7c3b7c2fe56ba72fe2a310f9b2d2ea18b67962cddcb21c816a7cdd18f0eb4cdfc8c1f482373a4a84ba42cbf92455618ec8a0c6af41066b9cad5cc0c4dadf020bf00e74c7d0679c3fe059cfa860398f5ce164342b84087bec607939dd0b4f5c3bd6b1f2de6f16377c5a8eaeabab5aa9be9441fc310c493340650349947fa3febfc6fcfcc584082b5a953cb492f5b2a48eb8757caf74a88c68fe40a95d80d8aa5063b1598592ee9beb484c7928c53ad97e9e291c619f757b86f783f9f93b0af5fb437a7a71f82edf60625133a9d32ebeb905160b3dcf3905d3d6ee4fa1087864eab99770908e5dd3064ccf11ba5ee180bf0c8e2c976fef933fee442237ddac742c4ee99fc34f3b66bff16f831c49f7200cb72dd5c86f55306d791481aca54c908b405a52fe2f76e583f7c3fb1c6c812ebcfcca85c9590ae8caa5457d1dfeb81cce863b2a5be7fa888026140e90b4e0e7dcbf1f07917dca92b9feff4fa679cfb1cf53c665806bd5f5e7b346da2f30f9a90a2bce3b4b7b3231b37fdf65299d696f6bf94917bbbe164c53e862ab338b0048280bfa67bbf66f6c97c3010d0ea37304aceca284055cb9809deef5b202ffdc62cbc40575530fa7760b4f2c83371cc89734f81bbe959cedf8cf5210a1fcd87e3eed330240276de4b116af1c894c5f9395aecd0ba6e4eb352cb46adc87d242e94ac3e6fa8d866fae98a7ce1416908e708ded3a68c527f0c7f42a1668cde3817ca68b4e281c15aebc0fd8e5550ce2ab85fe4de445f816976a4c839989171d95b0a43f5b6ce570a2a96f43adc7b13e7663fbc041b49c056f41e2eacdcb6c0830f0d3ab80409deb0a3c833028801414683003973a6c9da3e977c860eebc51f43adde97c9fde49e38bd6ee46810a48b7fe7e63cbba5cca49c015748f47722132310d690fc8f997a2ab3d9da305314afefc597138e87d6c5442b326f4f0431781af968378418327e293adeaf1d566935b008b3c87c0a2ce6311c1ca03aea9d51cb89a82e4e5d96f297163c613e28ab46f0f8e0bd5a0b8640379997f2ad97946e419d9d609638bb19e920437d4c26825d7da2cfd7cc2fc2dcde7cb71ec7722ed37a06e16bc34a7a4785382ea153519b7bf0c63d24280548857058f9a8d12b03d1a678ffc3aa0262c09f1bf39aea5b6b7fe4eb38544ebc853aced8db3665c0293321adf5be788b8e047d69ccbbb9d24e2f45d7b84e2f04aa7c5b1f9dc1a26452ce07f8b60b49ac4494b31bcd7351494bf993a8cf64a915c4a60971f70b80fe99d89c81ebbd8ee5c7ee784f8155c11399a90172337579bb77464e53334ba8dd96e218cd7466bbe299638aa16a7a0a39ab7efcc76c93e0ea3e511e2f8d553f065d54175ab9b7e05d1196644f72cb18d0b20d72ee3e344da553fcd54b45e98377ed757c8c5674f7d843f31a20fdee98f40f514ddc2970bd707819f3ff6f3387e95c00eee50406c273c61d8f9704fbbf4d1d0cb760941610ba7a29d0870a04d46da3f896245ee1bf3e72f2308c76f11eeb133addccf051d1c3c60067524b9b66cc5e6c7e1801a53dddd098d60bd283b9acb269dce8a7bd8df053d9db4b7da020fc53c6b17480be76715bc1e08b9809620aa6dabde93725c09971e4aa7eb25e70f294b5820f554097c64c3190f8e4e26838cb0783260006c083c0e06dff5263b1f29034a813bfd5ad9f8b8d77030d3ecab8c1cfeaf1e78b33d474a65fa920e54f57b7a6b939e2ff22f7081ee2da03009a87c70a9524514441a6c3fc7952591b0ad695d3a979fb3b2b2001c60907b1844c7aa33a5ac12e731b2f1c961bc15723e52aa220a79ca4f0065d104d7255d2d06dff837f3221d1a3b1568671575d66fb9370eac249b3f0b44683f84d01adf50fa0fd3e37b45ed60ac21ed1aef2304816bfb7dc34612610cbec3daf311527c9aed054ab32cdf09be5939689bcec923185aab7bcaf7439cf3f4ccd4ee3680bbb6102920a386636d19065ef8132331d3265fc19121cec489c322ac7f0adb74bccac8d97ad62ce1b001bcd6ff4594127fdd5304c69f80af9567bcced5edf70d7b246499fe5c0c145b3fc9a26783f181f1a3004c17f2a0533887392c09f1d5f2ba185760639bb022b8d9480b960c0ea5f0a099cbee1b53b8ec12840ee4d7ac9e6b652bef1101e47d83c47a615384ce223a7c1a4a78633057565554073c0a4a1fac5abb492c40e65c8c7b04a355d96f945ca631aef1c2ce7b28befed553c2c0de325215d2869a4fd00e927851dd5c130ed2ce70ab2fa21730492ddb0e50893233ecbf0ccdafeb07c4e20ef7e53ffb27b81ec50dd17df74d62ee01e162c7045794e0e397ae64da916569691021c75cacc509acca1445f14413955e6c4d36fd24532a3461bd605490ea022d68b31a9aaf39f5d9790f11ec8a2a3c6ecc9315ca5ff02283958c2fa4a7d25ed078c6bf33c98cc8a10cfc9ff2e1b861f0f5266efe360f7ece323cf1bd35506769e80193b5592142d8fb93fdf6d7708db0834dabb4315e8e06c3a5156397614708e63ab2327f264e226345677a897307214f14f9926432d122c7af446daa97e9b5a55c86aa7fbeb3c8afeb3103a4e879143bab154ab76af4a156198a3d3254af2a94310b7db8b24cadd3bfa2946fd5691dc2e2cafc64fa461a4004a4b89e8493a11f38c4eae2c9d4aabe240f54f842f82d910f8225e454cc0be5e2fd8acabf377d6a596247cf2e3ef650606a0f5bd3766b396a90127b84ab851be01cc7d964a58991a0290100fc88016daa89be26e7dcc68e496e79f79d8c239f244717cc08a2b80bf94917bbbe164c53e862ab338b0048280bfa67bbf66f6c97c3010d0ea37304a608dabb866898abaec7af584843b81ad7279f9c5aaff0b0fc4157a21c0b2caef02e05b6d79d3b13441e68df927558ad1eaf184198eacedf186a6771250599694d05d5e7b57b295f983471f95ffd9b81aaf904cf7728ee23b8fdf3068280b94927e44acffad9c3262e420f3b0eeb87310a2794409141fc790bb2c5dfa345bc91e112000e8e6ccb76ea881d9c249f2887e6c789b619de59898326729b8c622f1b9acf619f4240b7874066478cff90f1383d89d01e6d178db4b53aa5e05aa2c182c6d561e50c2ff976db74973b8dba3dc99145eba4f5a060d0934e84d3f1554ab3bf2b789756e8ecc431adefd864a9371c2b79027643a61f36f9422009d9e3b362281ee029012cd0ad9e0c8652850e88e83424175f3fb079cca2bb43b05dc820cefbee1eb410ed9dfe34cc0b3b4ccb1846a15afa02e95245ec0abb56742a1faf49456e0105ed5fdba91297904a68d47275a6641fa0d50a3b8178df58068a8e9e3bfda043357336988f5239e9862a2f323ebd74e11ff9a1f0f7b51f03a5a73d1adeaa4a7e9f8078077a0f389c26070bde4ca5121cd71d238527264c3b33e181dc5aa0316d057d207d2ffd7ff987f8cdd7640ed94bf14bf4f079bbd8986d226f487adf328191d49f7e43b0f9cb16a441f9e6a3c49e2ed12ea7bd1af09b7535c28ff2615fe99e8afb6e32a4bc087f6bb68fdbe24f95537a952280199fc76e10a1596c3f144cc2eee69cdbcc4febc998d42d2691de394d590a60e197f07f135de4c86dbb3cdc18c90598ea720432f228893241eef777ee52cf98639b246ccd8ee7d402bfa1f6793e2969be1493953f2034a82a0e36af31933c36657ebc0c6274dbcec4b686a257122aa513ce543211e678731b8ca0ec8b9ecd09f2934240456b81781bc0503b418589f2a12b58121f753e8b3c8cc1a8c26d8beaac4b123245739136f10d756f8f9e062da3d20fd2fa18fccb1d7720f10ed6d37714e8b4f03b607d80de3fc9532d3b3edd479c258df3603f7ac015d77f693af40a8520460591a634404fb486c28b686e1bebaa50d3fc095288215abe838dd52ac6877708765a9f58ed1833bb8edde822c3af8098563a7395e10891a69b6c380427e8c9577ead8112a4eae97ae9baf9855f29670a76a649ee9341ef36a7d4c9d7a45087786c4c07964aa222d8487a28c6bd3c2157cb09d2c625960c87acc15a9303fef267c06024a39a8ea4009606587d2e6a36e714ccc9286506daab19cf89f6af9168c23bcc16baa529f0e199ed054c604aa28ea13972e6860518c320e0ce33b32437be7edcd1d459037e56a06fcb0435ee3e3faa1737b8b84a989b42e7d005cbdd4c03a071faf434ebb5dcab81390e79b1fe481f06d9f5448a6609f6655b69612e4703fd41ea03e6ab2b9d27141632f8c5e97d430e04020ae1c4437712a4a7a8737c597e2f217a35e1a2f56664c63ae7eaa652343fdc96d7942dd2212fbc1e9e712414a9af58182a5b287ef6f8b75b9c712a574d08a300366dd5c083434a99c7f85f004fcce6fecafb08d66ad845e3287de1b072e0e1b8167844cd82eeb33530d46a6022caa01e865ac0c2204ef76a90f0d490262514bc326446d53e805edcf8ed1228fa22a3a200fddff8c91ab09454d994e6d9b6860427d7e6fdd6e3e2eb1f2c06cd9a3822a4c95a639faa4dfb1bf6f49884eb7e6dc01dee08bbc45ad1aebcdadea1cb52518ab860eb4b28241753986a56be24d947abd1d7e0b8b66eaaccd151cde3f40d32368670ec851d31d836f3a2262cafa822bb86223421f47ee2409f1792900de7cb3e6f44b125833d420f8c4f51d20f153728f71fec8cd7558ac98e302d30eac71d42730510a9decaf89701efcf2bd5322e749700ad9eecd84fb743163de408043791bd8ef10236999ef9ff575a3aaf02430fde4e454425b4ff4448ecdb042a8d53866d57c74fd02d5a977e201fa714d72a81ceb90f51a4dee5952b06305d36d0fc2ae1cf2843aaf509173facc36fa8f937caa698f02252428734644a818a5dd66d41baafaccd4b710b89a08870b0495e8cfd58036463501b923788d5a597a6cab34ad4522e5d27b7b7aec1a771e422598f7f9213f0f4891e92026745f1c162329c54d52d0d4ac0f31ccd14740583fe413c192012a30d4963eb58e00ebd84ef2ac0add457bfdbacfefbe22c954c5764968004a36786bd6ca0defab5e84289c911055fa8b9e632f65b5d7200d092936524db0ce0202b88bf7334860d35a62a6c85489aa50a83dd92e5da6eeae791bb16f709e3b5c31bf297b1cb670fd9b2946ed50d143e100b7c9a1e6666249fa4f16eafeb512d817ad9086e0a19d606a197863e16a2eba09e6413503fbc6961169b3b97286db14c4b22689ce727efa95bdb90b84518d96869234b8bc41cf750e641f916e30fa7f1f212fe7ee96539a943db88b103b8b8284dabf510eadc726de7dc0c06fea156d3212c4f641cb3e0b3644ffe2dcf1d8ff95769f2ad44eeead18c0b8272b6a4b044927bf9d75e8fc7db1154f6c1827c37c98f0ab75c86f2964f9c60f7d2242215aaff6e61713c895deb7cabe1e3b491966b2135914453fadf84756cc3602afc4d644915ad2d42723b0e5c8af3a25690dc9572b48f3b65c01a437c941259363f838f0edddf38a78370d9f91febb8da5a4807f6267a5f6500c0348d6724c77f64df6d7d0e0f42d7a5892b0f9027695d331ac8f478a92d08e820021e0485bab0866d2b0fd78a8cec2866bcfadd61be5b238b509f890f3c46adcfa5dbf417fa55be435cfbce4d37d798ef0929f6ca3207b8118908e672906bc70c22b596707070a7d996031f004726013a32a44a87b8b4bcd14dc69bd9fd4df597d464f6961e173825f8f1a11483f1df42c63c2156565cf45d6597639f4733a621472944700df135b32420c59e31c87ff7f9636dd37eef863536f0a180d7420482a6e23b3ca1762ecdae2a89d9d3b3a91315b22f4b214794aa1a96d84c529d8614e9ba45ba8d37d7a9101a7f82ccde0f43254bfee90ad2b35f0a3ba87a3aadecc9b72c9abefbc1f2d6933a87529ba9fba1ec325059ce889eddf8e99a183c893f250a8dd042c66c346319f502fe4e7b2d8cfdb6aa759559d27b72281d63987b1ec25f52d35391276b3e1c5be4281e83e1391e5d8b47576e8626e7e6c444918851a10f98be8d91142cba0135b54bc62b0af412f7bf5fd2c35bb5b4090bd3e7b4419f32df0ee79ff4c4c47348d7f2bf2802315d8ea142a4d7e0386078208f94701c520d36dc3110fe49a9bd0af84917f305f3a511e0157c4c7f5126bfe07003b80bd348c1bed0b838aee957070f4d139e9a4f924b9c54d046966d50f7d1cafb5c9906a338437682ff8a56340c2e676738c39927dd62ec5318a68ff162328d295b91af9d9039994f620f78402f5c5de98f4d73b53be086630d06a1f08167c058ce10775d093d3b05cec7d2d5355a4e27f2b3f82faaf8efe058d22794db941dd53a0463f78ccc64355b65c124743a03002731da451627bbe290ca244e833247949406de2a3696fc018df83193ae49c745157863f2faaeb569d9ece1e5c999f478a8234e5f9652a46aa9d7a76674129afaf4c4252e41f10b74d16ba6cb1e94db9290caefa54de54ec6a7664ac8d826e30d451e3d511dbec7d128c03653f1b8d6e0ae32a666ab3c5e8f7c83b043cefd27cbaf102d393d7ce9986dd9dc29fbf94917bbbe164c53e862ab338b0048280bfa67bbf66f6c97c3010d0ea37304a2d1f779f870441363c880636b81ee311b91b3d3b1c7ddc3f068335285349319d49f58cc35af208381bf19085ae356da1945b8fac6ad74c43f621ba7e5ecaa00c37d5c0372680148c8232ab9c28c6a24af57f0f4ba470a0bf98cb9cce8870d5c9bf94917bbbe164c53e862ab338b0048280bfa67bbf66f6c97c3010d0ea37304a1c98a5e65d6cbc86ce35b6eb9c67de63e0aa2678b0f3c993960cafefb22d867c3c46c4ecce7e17952ba2f476dba25a8da1354bf8e2c859d18e491d4bd8646e0b9aca6dd212d18a921bb52bd9ce79bed5354b16ab1155d5020a4413bcbf8b52ddfa5e8b90e6d79f9ca23c15f05ae3d38be37dae14740432b43758a3a7d283bc94c839f32774eae97734a4793544deb69f12eaa3658a1b131cd3d88e1677bc6579b1d136edc7aee6bbe1286faf49eb9dba6bd180ec2335d786c94d3d8be306f76f59a54371c1b114f57e0a0a91afb4c741660b3854470805e9f367020252f4ae3d60be7c818cfff76a22233dd676197b8d4190742ba75b8f6c39a84a2daea8b239c133b205e731f86c1d4e2898444596a238550379be8433feaf03e1a38be2e380725f5b45d9651d65c63a4a27a511882096bf3323b2bdc620cd1569f3d1893e57048d68e6be2f9d3da364c2bec9b2015a1c0ae072e085690d912b4b9520a2b66fa5f4283ab0e07d746e2c0b27ea36afefeb3362d50b901a85b24da969884b12df0662ed21fa5d69bb42ce7c62b025457afea1abdfbc15179f3c36eedbfc7bf71291bf1eea04d35d1ae9042f5bba91c6609b153ff178293b37c781dc1992542ab8a78b8e93442df355d38c39a1d099eaaa152b96006f3b57299b0dcbd665ee4219f991abf5af6c263744a6f1f75ebbd0a711b315cb0182b44448294d46b00cea375e828656b6f73790b9c4cc7c2a5348b77e35a9b821f0a375c8d21d8b430c0e0e16ec8854788390de67d7738b7180edfc85ecd87b93ba2573f6a6336467e4ece6d6c0edcac7db5501636ca56e50900372990ef15b777af99e8fac286300db01850bc5489ae83d5ef9151262c7c0bdb113fb390434ee9c8266ef9696473e1fbdaf97af386cf8cd3135c88b36a9c10054dceea4fbf49c3be36c5a749cd31f71b3aa7f26eab17de7729271337e0ac181b9e0f58a1b2c22a7b724362c98bb5a5164388a271a8d9eab696971e7e076843588c95e8eb72bba625b1c7fc1ed5f1771c26dad6d89996ca5c9659a1d4409358ccc27552dab4e212c3722106d9cd47d1bc1275a945d7aadd1673bdd577c9e7118636a7164731ceb930d2433b892d45af1595a2be1ab5265403c76466388fbbc0c09bd6bc7e34cde2363bb4d25382f6d5fb9c20a9546e47f9bebaaa52ad2fd8b7f47483353c222fffcc67b0afbf5613485b1e933bef6044c873ad4bf59c4cd896eed7673a9092ebb0c1abc0bcfe250f33a5bbabf94917bbbe164c53e862ab338b0048280bfa67bbf66f6c97c3010d0ea37304a63cd70c8d975a32da5d5516ba515a3d70eb79698b7b240b6347965a4c4e255e521c648f839b58477cee2f95dc189397fefd8d4c844ef30174fd20453fd1f9fa95cb624af11f759f3f051232410307e2588c5c4eb60ad87860be0edc1ec8dff1a3ecbe97e1c4202c98e77031f1fbda15722a615304e409f09618c9b3b89fcfcc0bf94917bbbe164c53e862ab338b0048280bfa67bbf66f6c97c3010d0ea37304acda74061efed0770bd26615181834dd5a9595356bf5b067031f32750a709a770b81cc09f2c9796b3b1404c29db2fd594793de2b5b0d3149205d4299069bdae0eb40bcf5562c814b7717a3ca2e647517977ac1922845b6ef6720224819342cac9feaf40c1b56c7f7ba286a0e008efe1fef27500a0e4acc03004825414d5fae92fe903ac42554a88b7ee1f79995e829f019056b5a64ea0111ddfad08c03921a75d6cab6d7c72ea73b8f99c43aca126582ca2c96e9838adf0a5dd2b7ce8f303858b29b037469b5f1c53252b801f43dec543703d68743d9ab797471b2040c73bf628d83e261b604ac00393911090162bfa2bb0a4bb3a06fb749d4272512f39c9d52e8af0a77963dddbdd35c1c0cdc66f69b877ad7c47e8fed08a75f35023678711d8caf98680c2bfcc1572be084f03ea5c8e988f515b8d3397cac2aea069df09fc079456ed58690ac0c34ca7b07a4ae4d690e45b18d1c7c2c14f407ed9d1a121bb78783b1d0bb77c6d424c69c652e72c0e13ae295e4961265204bc147238ed5f39b3afd16f83e21b185665afa9179d15529d828d06a1d329e9e2cea5af2a1c5c417458cdf9939e9d8e0f834903d2dd3203d5c1c1235be94eb43dc85e218ed25ab2272780d505410e25908980fa00cb6c0214edefb616cb1b1d051f5c9d58cbf66c0babb46aaa48676a6dd765e3cad5bb829b91dba8cb214d823bb6cfe135dc2703c2eacef607aa782c6089d4ce642df8ba523c2b19d829898e4ba4732ddad7e755fe6fe2fbec12877d7bdc56aeee9c80ccc89619630d8495e30e8bb2a1b1b1c8d3c4550ac4d4db58e5dcab6ed5ad0d6f32ac567a8a4b53424f6a6a0a0e030e3ce0ad39d59b868569fdd9bc65c3cec36ba9c04d0d418693076bff520f559bafe567ac82b0ab9e5c0035c8764ad36412c7bacfecc49592bfd7422704b9c2bc654a5a58de5b6b84ca768c67dc4cbadc8fda016740cd7f52c1dcffae12b811a9d8c44e27b68a981fdcf484db93883b414af5b0fd07a632df700cd7bef234f9a97f99ac6048f000206c97ef0ecba7584c2c73da4e50ea1781381223f9b394c0579a99ab3b6ba35ee4805d79103ba171d28c2a2eb2485507435c54608ffd220b0c524ac225cedf5cd4aaff0ca707dd2e55c8f68c5fe9bf77920b4c6ce98df5e009b10cb76fbf94917bbbe164c53e862ab338b0048280bfa67bbf66f6c97c3010d0ea37304abf94917bbbe164c53e862ab338b0048280bfa67bbf66f6c97c3010d0ea37304a7e87d67f4aedf45393a618b05ea43a006cf9f7300ef1836821ab40b6d78bc191c114b405e5b68a9c4a896a8321126ef87825e2c84a9353555963f444968908782d52d3bc0b1eeb1b17ad559c5f70de1c8e78f32819f077737591998b931590ee97bb704963b4b1188e7f92c197e98e5f16eb2f49369f4fa963c1aa1041e819262842f6c85f272d20c4d93c250b0d3b4a49c476e6f6ae766e28361ff8b493174a2a4192eae42b8e093921cf8609b8526664be5ebfc9187ec00cd8c6c7fab68c855f9583fab3fae8fd76d70f3732eab0be4babee6870a53335435b2ecbb07b7f32bf94917bbbe164c53e862ab338b0048280bfa67bbf66f6c97c3010d0ea37304a0a5e568e84bb831356f8a5e69c7586c5f63862eaf413d1245f1e7f32df7b601e1a8cd3714ce2070c68db3bfd29291f6bfea17ad110fee6b62424bfb2596a0e1abf94917bbbe164c53e862ab338b0048280bfa67bbf66f6c97c3010d0ea37304ab71fa39bb043b05c9f0ec404b3c5686a7773a5834c22d5a6a0d32b9df70fc2116a3e0424d923bf9ba16b81d3d59f11b3d44f050abbf65acee05fd30c71dcaa5b5a81681288b2ff2e5576590736dc1e75552bfba650b0ff976c184ac6b321feeedb828a344b9c91b5c96c69f9c7f9dcd6a4375969d360b5e5834721eaeb0dcbf1207d3c0e08722ad8e7cd33b3d5beaba52f5ef14de18611c63c579e99688684ceeafa8e3ac14b9857a73f43c1cd96b7e19bc10aa472f9edd7f05fddd41f5ff6cd710e133296c29aef5e8e6446ab644ce8a66d33113fc4a532e984a3169b10d4a29dfbbef2a257ce3652c54e864fb7f4bb3822b7c18acb63012d99f96be41a7df16f139211ee9530a6b0474c7a08cce29e879316f3c47210bb33e7555ec5a70220d0ee305302f4a13f53d178de07c84221c8b6bca2b7d2d0b6e444d4b6148835254a9156387d1c09abc97787296bd2088699b7acd24d4c125f1956bf9c60f346d955348c5b6ecfeedf96885436398060670cc72eca8d4ebbe62298d45b01c57aaa471f4fe56eb5cb8dc1b2884c1f7131ea9fcc19503ae31dbcc41ae14f0207c5f484b1b5a98e3d089b54f7040def206e843be1b6cfb0d7fae428c5d40eb288388cd0583660add8e2ab2f5b795021c4a1e39a4191a53513df76d009b2b296477897ce3541147dbad1bd3c915dab035b52554730c691e939ab6a880c61c8c90628bacee98199b450d05bf3f39d7f972daf5beff36f720cdbbecd12a4119126d65307161e9c684cf07377ff883f4d4be99b4b88e239c449cb9c54b0f673d00a5e54d7aaf0426bd142d759cc9043fd7a394f73abfcd2ec882ad24fb86748347b37c5cdbf94917bbbe164c53e862ab338b0048280bfa67bbf66f6c97c3010d0ea37304abf94917bbbe164c53e862ab338b0048280bfa67bbf66f6c97c3010d0ea37304ad1b68876313409db679a192dfc4ecb8a8de0f11862fc62ffad05f8fbc8affcb33c4a285ae083a6059088ff2b058c342d499dba4b02bd34d6b62b8428eda5371142cd6f1e0045f26561670a968a93ba9009a18435b79f93b65c22f1906ad4c95660b79df2267e140ff07924fda661ab5a894c27d492bc16295cbcc7c4d97b935b3a14bff212e22161d6f7d55baceabba3cd5cb595bfdb3d42cbc580cd69c2a44256ad4e44432ece9be485f190e48e18b0f7d6997e42e0e5277fcb438f3e40e25e3ceb2f41786b10df39944b7287f8e0d3543899dca53d7c2f01b194d0ef1402bf3cbb4b026e1853bf47599e7aed2430094560be83484827d99fb44ff3aeb3422d202769ada38b701bcc15a91fc95f6be3723cd2a63affd83b429953906c3483f18bed0fccf68defb225bb949a137f7ea63cc219b458d55d4e242fa7ead822327e72498b5e03e2ab2cf81a7179a86a7f3235e7b170a2d8cc588a0c9a7388caab73f1746223f20897e8c826b29f12aa560edca0694af87e0de83b6a8efa6377d11f6973352f56161ce6f66234f7ccba4ca9b8476881eb869d3988915fae3efb2140c7c7c8099bf6240e9210c66f3ad19a5af796eb8f2d9be8da81659bf6b5aa262a1645bc7500622145aafa3247d0ba23099f1f456ab22283670883920d7c7e5e4c5b0f334b70328486a2652d4c3feeee3d70c03726ccad894012f8b8511a6096942ca52ecdd341a8cc3aa1834aa304039a63246c5422a62320dfba04166492a2cff99b9a8f03d94e612f2fcc248b8c3ff6d0e5082d98ff2bd76507fac5c5b1bb988d2ac667a109a621dd4ce73339994ff1bb4dcddc3d3fc1283528994b633a855d830ff0620f010db497adda93cd0c068cabafd2f89d4b2d6c0b513765a005747ec10898f91001a0ab7650ef8d89ee71356fe223acc2f6901f13a6c9993ea6380b20ce0fe9bf6a98a4ee334f4c0c548c442bb451681c842ef79c5ea13a6eb1deb270f7cd3323918e294f4f5f1f1b89787645f2c6f7d4803fe3aca15ef827b7e70742c44e562d075623ad665fd2c1a71d12ed026f0bd0dd326d9832748c33b4adcf34921bdf596a098c5b40c7538962db4d23442e2c75fb25b3317f440479352c7f67d8a648ff218201699e3054d1d210620c5c629d5b6a8d06337f03a345ca126a215d873808bcb0ffbb6c50b1584631b61233f9001f306ab1fd2549be340ac6568a0a7d7510b847065ce859a85a80c14562126398247dc1d19326bf110ef61613d522ee5ff9dd2b4c90b393df6197151d96fc18412954e26ce3839e7340eae8a4742b376724eee00afe97f96300a586c1fb0b3fbe4a44ccf8413ec5124e7734b93c7137b0d4863a4e7d234cc462a4e2768348e4747d1a1160dd3ed1639ff6c6ff3f1108d88c4281c83c23b1f4ebbdccf28780602b699da099c96cd60fb5fe34244f3ac40bab90d71853f3fdc1b24f2b3d1c546659abb66713eb2c04e9c0e21372b35e81137f2973b7291f1bfcb1fea05bccbc426cdd6eb4ab2df5334c6a5b364715654d210b79c6ef930979c7ebbecd74e16e02668e7463a145f9946793ca18781d65ea8bf0803741b89799a88bdbd1ca620651ffd35fda02fa4749fe82d990dc2213c5c49337818e3801af098725024893cf6e50618dabd34ebbaa1d9d9f1beadddd37d7ef6f7e062f9b2867369b72071a65b732e7359dcb0fb6d56132d1cf29539ffb35ef962b2a2a1629fb5e762d472dd8780086445b5b82352e44be74da7b6bb3d860e310297dab364c89d82136f5eb89ff55ae06f62384ac7f9ad10c7b296795c210f2b00432ac585edd67fd3f32f4a599a8acb3c0e934e8985afc35452929dc311b31bd3c6d05e677faca12970f99f98e174eba4288250da51dfea45882d9ad79e4f28227accaea97b219d79433fe0226323f15958a766888e0964b5740e354086977fedb97b9d8b0ad3314f542132c73ab0fda35b20fbc0ba1dea14dfd84a47d21b07254e40979a2b25ae621b51afd0f3303758f3c050d96a07b53ff061c97fc73e1c7392e29c06b9f324666265c8aa7ef625cba98d01856a536daf883016ad233d9077f085f64b4117592cc0ff7aab32585e0d5ea8e5ebcf1fd5d6aadb3a3c98ac933a1f3aa4cde73383a2f87956a425b1f838627c0327d8e4b1233c70a5952b9fc3c38cb5691a3859535993067151d913cff9e24ed667fece25d4903695433c4e259c12cb2aa97e5cfd03338468eb5b1aedd8e65b7aa5acdb82a85435569934b919d58d7fa3ca6d6df3b43d87edd3d29266d38170c149cafdbe6c40301c95435612a8b2f21db248268667f64dbae7d9056f34689f41cff53a6db1ba903715b9cbc9bb20d7739a5b2a36576cfe55f409cefd2ed80435f4c48a769381b652ffff39a44b867d0a6f7e4159b075476786e8843acda8dedf3a8abaa6079a8cb92f23668fa3b01c26659c1da83a109674b499df320a90bc345cd954d7125d673606ebf048f1bd4631c3bdd5d6d56283eb7367ef2a78e50f026ba82c10a37d4416eb58a568d091630e1921bf05b65ec545f12dc0cce48be882fa5b4992a94c340831018c077c3b2940fddf480217477f939e89cc03cc92b241cfe72c3041374bf94917bbbe164c53e862ab338b0048280bfa67bbf66f6c97c3010d0ea37304a2ad88fc436b6a51126abb415d7368517352c36974b5cb248c1d95d1a56a01fed04db97fbe1232fc6ebc655f3e5e56366212f8843e13fb88a53d06ed8bf48a6e5a513054b3b66efa30fa3ea7e3da5461e5e8fc72d4d22fc70afc571c0e79aa9a71887a25ea8d4474aca7777fb8599c287fdc5fd496e3ddc32293a2db843ccbde67c5031cb22d3e29b3d9ca3f65c9d8399b04e9f11f014370481c1ff9e9dce1a5f997327a7fd3695ac85713355618dea0cab64dc78be16b8c7e7e666041246cb86ee5c5baed03222b28a19588331a0bb52ada0ec313579bee395f4b5fad228cf7aa8cb7d3f5fe04a791a0d32b67205f4dec1648e7b8d81e4713f7135d9ba543c2d20fe3d3061803b290c260e5aa0167dacd6ac10f525222aa768a70fe61d1043435b359a05b500f4b00b62250fe664d19a8720974a99f61d94ec107a212b5cb9b5e91154ce4005132de534c5cc615921d7920fbb825213273a1f5101e350a326d01ee6151eb7dd24a6ea834df40fc48bc60b5a5aace7a4d84753225b4b4e6d6d63712fa639b02e386cb692fac1212d1c0dc6b234b6d2cf871ec1f14e355e64e39ef8a58be5cb9da548981537b9852146f192965ece4408527b82f1de5beeac343d4aaea9a54afa19d29220de6d5cb25e192590c365a44fb6b0083667e22a8c5ec20ec344f548eec71964f8484fd3ace8716e45ee181f90eeffe2cd73730a6aa29bbb6ec061f4f1448958b8e210fa0ed47eb2f0f6de3dfdfe63dc4cfc71e6561a40bf94917bbbe164c53e862ab338b0048280bfa67bbf66f6c97c3010d0ea37304a9b878f53dedcef2756eaaf5ffd24047c41f6080036fcf47404413fab82140b4e65131616a20f468a15d15f8736f9bd94f90ac00351712f563269c99cddb14dfed8edcefdd28069bb1ac9279a3798a174f593655976018fe4932a6fe3722dc661fc8aa6666800aceefa7777d24e732124ef1b9b571368ac0354d13f3929dea13566fb4f9cff8c788b754823bd019419d6e4e32cf9f63b39faaf3282a925cf90023781e1da68bba44f3d8e8f406b41dbd5e9706a4a12457405d991fb1634a33e9f9a69609113155a09e9dedfea3b3910bb025d2d9fe0ba7005ecc9691d2d7341663ff1f63faf602122d48bf319077c5fe115fe9ce8b81d8d0f34334286b5572f84df0cf64e10e8d9604903d256f7b18f66a4d907373e11850ecf0fc67a9792b8bb966ec6dea5aa6f71e3d3a45878dba2452c38b220196e79b1b6b63f2073bec74f188445ee1bb95d0829d855b7566bc508bc3239244cdb84b2b101ae974740a501dd2e801ff588d0f27020e7e9010769d853b70ecb8459258bbc59c0f6f6560d679f208536550dd3347789d4c03c2cae30932e76c4d2a3dc08c480a9b5750b918105ad942bc24737c2519d0bfe343943e449816468beb24ca4b3d3bfbd3afed155f99cc501d1b7b53198e174cbf329e8e512c8149d32bf5453817811d6541b0569c20b94a3ea34bbd51d983fa0ae189ff6731c0e78d061f47dde5295977859dd6bc00d50d26f825698b8907d7387f1ac8512f4a940a3534c900d4654f39d04be8dd1f13f69339b51c947a3931afd7bea8e9965e097936fcf4068d5ed2628081a2b993e07b1f514acb667aa3d27becd737f30653013877fc0f6477257b794353d98e2bd6da23bee273c1356ed5e486e63fa54e06cd42200576d8b0d0b400aeb2fad96719ceaf1ce35d7a24a53c3062d8218ff48b7b4c969a3caea1684b27d7f91b2e40a5b26a3e9e5d002d01b50dca9d96acf2c39c954ec449ce521fdaccfb1ab2e78a4189019025e891c16551a0f1dd79d94c96951ffd0a713a2700e7b166e1c19c1ff2b5c9ce54fcc36b142e050fd4f2ba09d7a6c4e4c96b380bae399fba9c9d1f153bdd723866da028534e2d94de82311d41bceb706e6907f928e2d9bb1f5a02670179c9d655d00848dd0e477263837af1a8cdf5ef96e5eb2b3226d655a05428aa8e6b92682da1aed01a9b26f308a450ef39a5ca0cb7a79b3dc59bdf08a0e2b4a75aa8d9987425eaae416273434b3065d959596b60a30ef30184164473025ce71a5f4f063914ea50430b667d4439738d25990522180657ca48419debbb2fb7db0e936d4ab51cfd0f772bd8431e9d44471ceec314dc92e0fadf649b3eaa35891a41c8c0be93fbee080d33eae4d4e7fda93b71d946a20ff31b1c8905a1b9ba63564b0a488aaa57bdf63a1a8350a7393d103452a491411af29d56c2dbdd38ae1f71bf94917bbbe164c53e862ab338b0048280bfa67bbf66f6c97c3010d0ea37304a39587a28319d3e6d049c2c20baf7c8bfb85e17c21f89f957c1082be6a23aa82c3fb804ad7e970c1f59b6e7d8348505ffa9134dbd8b9749e3a6ad2c18701e68c423499e2f86d4f51223a89c337cfa6bdf90144bf7c203deea065ee5e430a8631e32b4f56b57fed30224005ce514fc6a56effbbca9429d41df838c94bfe25ba9f82e484888f628541e54ecd2c298cb726eb61efd76e70308943830ef1a65e5131ae8cb92b4fbc22083793253ddb57eb92cef01e4b6bdf2c4b89725b12fb3e7845e14f4684d2679a58755fb596f5db5c425547aad0eb470576b1fd7f9905a5fd04714bbd89b077ceb8751dc53ad2760cdad9e8bd3cb5a0f8f2cb1c025ef1385feb2bf94917bbbe164c53e862ab338b0048280bfa67bbf66f6c97c3010d0ea37304a15c182e4d81e94ced41e051ef55354bee9192e7dfe1aad37743b4fdf8644b8d80144c75ad8182a4708c28f6fb13a71be98fa2c6fe4af2a89974ba8203d17389eb1a381714f1aa091e8263765f859f281787e01f57dce157bce115ea638505fbf13b5d4720d46a1f6152d5937f1a0b892d9f65383d9aa37c2ec591279cbaa4bb96cdc34400453cdf293aee7aaf366842be48b139e49114bbd27fc4a2e3d0801e85b03d3a59fc64828901a9026817432b8118a299e0b7cb51c2dc4d77a83d21e8df55f6f8e230768ce2ffae2f13f9168158ef25ba962211a7c45b89a79b790c344e8e70b3277cfd3d3cfa004aa71b0e91014627067cb22b7f102f73201b37dcc72ff8bf54782e47a750f7781fb0ddeabfd5e52d7d90ced82f6a663afb8f15a7cb240d1ec1c15efb84ee600b7ae60cc2eb93f53a14c6c8644aded5f9fca45276f0b5ec73e016d4721548d5ccc2bd093688f2a12d8aacae97ba401be5ffeb061f194d4d8dd9e81966306334491722221ebf25f72430e240fe90765b7781261e4f4d80cd16b98d7eff65a9b1a9048dfe7de800f58758448aa3c7dc401a82feaf5ff78e406dfb164f41083f4ec31ea2fc6482ef395e978a221f03ee17786c4393fc9c14af9f1d88f2577ea5163de7717f0d921f293080d0d8975dbd14fc482b94f0bfebf451a29711a67028c57e35249351be40233e65b9ce4e63654215b52d7d4b75327e9b6d24db4a4c1794ca7650d2aabcb235edf698832b8e3bab0dd5ddfa2441536b41d6aab7b75d22439723dfbef458ca27150dc1299c3e84b1b7df13b03a6332a293cc32dc8d00e78fbaa5e435c4007ea7725c13dd46eaa544d4b27a6844704138c06a647d6e40a34e98513af6ded4770cda383d4592b59bafbeb393d4bfe02e1163951c681ed07570d90f80f16bccc3dacfbdb21134787651775cd6c9a75ab70160a010970978fcb14b54211843bb1ec79ae721caf83f4be217d84a41f6b0f9b7b26e50540fa01fb6096bd61e98f5ac41032e394e738f75600d99d15d5b50f5b09c1b7e38ec0052520d0bbe7ded8573cacbe0eeceb3a69bbaf6bdf980a556b42124004782275fd2002dba169077bc265bafbda26a4c7195e2a3dade1c553a5367334a3d9e98ec02138185bc36ce3069e4673405b0d84cf6dc0184bf0f28cdb8f1fe1256ed715de6394c62c2d1ebf61f09c708be31789a4b8a8566700bc4efcfb148ab4646c7c0dd2fad11f71551715856003b657ff0e2479638f5e13c9e348e28cadd36bc19be8a1c59e9579366993b9b4e5eca3b51d9c0b30085d3f36bb201c61689a222188addb755e181a23d3c04be4e79efb97129829aa3ca4949aa36e8c637292e51926924f8c75f55558fefaf491eb718c7fff5cfc1cfcb238025eb0086967b2eda2a03c6f5d2fe9fa805bb49ff2dcdcc9ce42cade7e4c57f2c6b07801d01162ec366571dd9e9b1d46971d745b8020adf3f6defbb48a03bc7493e5fc0c6a5f46cee33e34d614194a5cc03379d7dc5569a825dc1e9b24f138a4404abd3cdf1611810281b0f912fb81c4fbebf1b31b76fc3fe59dba766ec37c541e1b4691a501633de1d0b0680e855501f41839c32361f05b627bd5febce4b3bd10f79383d7aa54c9ebe6a38b6999f4e03f07982cca966328d3b6ecfffa4ed412d84a823cdf1611810281b0f912fb81c4fbebf1b31b76fc3fe59dba766ec37c541e1b46a4ccef48a2466498ddbf8d25f237a74860791eea27b40169637bd000cb0612c925dbf6beb90f83efd5102b9d8df0651fb90b1a6f15031ba59728a099453e3dec25dbf6beb90f83efd5102b9d8df0651fb90b1a6f15031ba59728a099453e3dec25dbf6beb90f83efd5102b9d8df0651fb90b1a6f15031ba59728a099453e3dec8c6b08a078d7b3f643eb5fdf3b3c0d2d2028beef477b3e276aeb990ce2c17bf511014aec8695e818ca712320b70e1512a423127ccca267fd9be79b7df6d2a287174253f1c6b53753e8357a62aa82cd201dda3540ef91a24cae1cba7b6226833c1d5f8b3716470c39ac414f069fa24f6e58399371a16df38ec6b80dd0663f5247b7c67f9499dc451c687eb6479c29e640de44d9991be93bb82e073a4103bdcd157607d8d3b1724fa025ed3c03328fced9b6acb3c1dfe42b711421d7e8ff5e03bcf4e2b413dd0a17b078e5cd6eaa4cfb65e3fb31445cfa42c0f18dfe1afe2b77f676242efc76282561969112cd63142ec3bec3d37efbf6d1c1b9ac91675d3b5087fa0960fdcd1058b4706c314e5137860918b73af2a40e278a9b0f272cfaa0d1345c5c219e54190325a1ecf9d25cafdfd06d59b3b7d65d606cc58e267d5a6970095e4b606f66539364b6a638475b0237a8cf04e68ac80ac2886750eca2b450384f5e4b606f66539364b6a638475b0237a8cf04e68ac80ac2886750eca2b450384f000880302e4fa88df786388982c767bacfdcc520e246bfd8b65036e6db2009e9f4ab3db74c12611b0ee12e6512c8263926964eff514afeb5e98e36bbded7fe976487ba5aa868c595eded2018ff4088fc2d9bc1539d15dfb94d2606db0de619ba7eeb5d1a3a295f6156b9200b5bca3ad85a230c406842c99e4bab181242ac4e92c37dd5fb50ea93bc747a6f506cd8af492e615203b5ff6779e63c2435505731767eeb5d1a3a295f6156b9200b5bca3ad85a230c406842c99e4bab181242ac4e92c37dd5fb50ea93bc747a6f506cd8af492e615203b5ff6779e63c243550573176a648993793a8899eff496a6787712b382cb8df8b7a67266dd38798b2dd3fa7b95d17bf31f4ee9b0ec69cc5ab10f93bb740a9433633dd80647c45bd6007715776ada478d73a689511de0b4c80cf8cdb8bb8a7d048a4ebf100820ef41213e4db3af4e2b413dd0a17b078e5cd6eaa4cfb65e3fb31445cfa42c0f18dfe1afe2b77f6e7c42fbdee10d39be44c27eba97b80d344f2f6bf893c572c55e46e5275730adfa5f66123648edef8230ccd302b65cbab9c0bf3f30b1eecd3b7d720e10c265ec3c6315aa174a388a683f81264e9680cbaeb67bbf9d1a848d08e8eaf85c3a9bcd2e7cfea298648f3fb27e975c220da7dd1c556d7193326b767957654e3ff61ab5e3a1c98b15f0953eb1d2af09051364ffe618ad8a4f34dffafe64991f81d4d1ca37eeb5d1a3a295f6156b9200b5bca3ad85a230c406842c99e4bab181242ac4e9284a6ff8c8f0f5a4ed77fc241e0f09f250b9b6b82fa182636eb8a8ebf84e7587e5c5c219e54190325a1ecf9d25cafdfd06d59b3b7d65d606cc58e267d5a6970092304f2b99d427e9772d541025e5259da64a9f2cbf8b9c1b7ed32e4f5f523b21ec37dd5fb50ea93bc747a6f506cd8af492e615203b5ff6779e63c243550573176095b1b05ca46f5561dc5f0039bee9055c118faf3095a0d46121b13ad7e2452156487ba5aa868c595eded2018ff4088fc2d9bc1539d15dfb94d2606db0de619ba6487ba5aa868c595eded2018ff4088fc2d9bc1539d15dfb94d2606db0de619bad0a206e11d4b0b1d8d76363e2d396dcb965d2972661d52ad63587be922518f25edc176ad3dfef56eb2d1d8b4456a8ab8cc28d06cf479c3cf8a17232ec0675cc8a648993793a8899eff496a6787712b382cb8df8b7a67266dd38798b2dd3fa7b95d17bf31f4ee9b0ec69cc5ab10f93bb740a9433633dd80647c45bd6007715776ada478d73a689511de0b4c80cf8cdb8bb8a7d048a4ebf100820ef41213e4db3af4e2b413dd0a17b078e5cd6eaa4cfb65e3fb31445cfa42c0f18dfe1afe2b77f6e7c42fbdee10d39be44c27eba97b80d344f2f6bf893c572c55e46e5275730adfa5f66123648edef8230ccd302b65cbab9c0bf3f30b1eecd3b7d720e10c265ec3c6315aa174a388a683f81264e9680cbaeb67bbf9d1a848d08e8eaf85c3a9bcd2e7cfea298648f3fb27e975c220da7dd1c556d7193326b767957654e3ff61ab5e3a1c98b15f0953eb1d2af09051364ffe618ad8a4f34dffafe64991f81d4d1ca37eeb5d1a3a295f6156b9200b5bca3ad85a230c406842c99e4bab181242ac4e9284a6ff8c8f0f5a4ed77fc241e0f09f250b9b6b82fa182636eb8a8ebf84e7587e5c5c219e54190325a1ecf9d25cafdfd06d59b3b7d65d606cc58e267d5a6970092304f2b99d427e9772d541025e5259da64a9f2cbf8b9c1b7ed32e4f5f523b21ec37dd5fb50ea93bc747a6f506cd8af492e615203b5ff6779e63c243550573176095b1b05ca46f5561dc5f0039bee9055c118faf3095a0d46121b13ad7e2452153cdf1611810281b0f912fb81c4fbebf1b31b76fc3fe59dba766ec37c541e1b46ada478d73a689511de0b4c80cf8cdb8bb8a7d048a4ebf100820ef41213e4db3af4e2b413dd0a17b078e5cd6eaa4cfb65e3fb31445cfa42c0f18dfe1afe2b77f6f4e2b413dd0a17b078e5cd6eaa4cfb65e3fb31445cfa42c0f18dfe1afe2b77f6ada478d73a689511de0b4c80cf8cdb8bb8a7d048a4ebf100820ef41213e4db3af4e2b413dd0a17b078e5cd6eaa4cfb65e3fb31445cfa42c0f18dfe1afe2b77f6ada478d73a689511de0b4c80cf8cdb8bb8a7d048a4ebf100820ef41213e4db3af4e2b413dd0a17b078e5cd6eaa4cfb65e3fb31445cfa42c0f18dfe1afe2b77f6f4e2b413dd0a17b078e5cd6eaa4cfb65e3fb31445cfa42c0f18dfe1afe2b77f6ada478d73a689511de0b4c80cf8cdb8bb8a7d048a4ebf100820ef41213e4db3a78af07255dea71de852563853b9ddf60446050a9088ec99bfda1c620b3e5aa963059235067b26cf6b7ceafdb63d402da6ca0ca695160235b1a710ec1cf175aabe7c42fbdee10d39be44c27eba97b80d344f2f6bf893c572c55e46e5275730adfe7c42fbdee10d39be44c27eba97b80d344f2f6bf893c572c55e46e5275730adfe7c42fbdee10d39be44c27eba97b80d344f2f6bf893c572c55e46e5275730adfe6a84d038a85fb2f93d8777f320d295bd3eb48ce1b7de1e19336e61894bc2a9a92bbd213cae4df3f83e5d35bf3a2d89f1cd543c032d353585015c3c4a41eefbcc919066e625ac2b2c104e4322fa6c4787bd688321ab4ed0d5f62398235a175e9515426e6345a7c85be6f7bb73c391847e97896cf1df12423002ae3eba0d95599052104b69d3bfc635531636f1b26324acc77964035aa0e35d43af23086b3de27fe19faed8110cecf9be64fe9ad709582da6027e25bd0422840b9f4694c2b7bf9ecb341597bade4e36b6ac8ed51008c63828a3bc4a99136f62c2ef918640d59ee389204ba5eb6766df7fa1f2cb1cff266e3cfc7f02113bc0b5027919979b9bc93fa77f17df74a59032748dfc2440d25f23cdf9a7a6ace2e2ae0153391209490835d17bf31f4ee9b0ec69cc5ab10f93bb740a9433633dd80647c45bd6007715776ada478d73a689511de0b4c80cf8cdb8bb8a7d048a4ebf100820ef41213e4db3af4e2b413dd0a17b078e5cd6eaa4cfb65e3fb31445cfa42c0f18dfe1afe2b77f6e7c42fbdee10d39be44c27eba97b80d344f2f6bf893c572c55e46e5275730adf60744a1a5c540653c27cc0a077b88ea1261c83d2b9acfda8ee3885d7b0176ff8a5f66123648edef8230ccd302b65cbab9c0bf3f30b1eecd3b7d720e10c265ec3c6315aa174a388a683f81264e9680cbaeb67bbf9d1a848d08e8eaf85c3a9bcd2e7cfea298648f3fb27e975c220da7dd1c556d7193326b767957654e3ff61ab5eace676a2f899b95d04229e9e0f2f67ae78861176133db36fc0660b710db666603a1c98b15f0953eb1d2af09051364ffe618ad8a4f34dffafe64991f81d4d1ca37eeb5d1a3a295f6156b9200b5bca3ad85a230c406842c99e4bab181242ac4e9284a6ff8c8f0f5a4ed77fc241e0f09f250b9b6b82fa182636eb8a8ebf84e7587e5c5c219e54190325a1ecf9d25cafdfd06d59b3b7d65d606cc58e267d5a6970097decbf1794f0c5b8e39c65fcf1c4bfe7354d66d2339a39af56a482c2f6f6d5bac37dd5fb50ea93bc747a6f506cd8af492e615203b5ff6779e63c243550573176095b1b05ca46f5561dc5f0039bee9055c118faf3095a0d46121b13ad7e245215f617973868212e0922fe4034411b37d44fe55e3c95cb088ca7f4441b89058bcff617973868212e0922fe4034411b37d44fe55e3c95cb088ca7f4441b89058bcf3230ef6af779a761f0e03aeeb0f98ad503f7b1b7498a933e781091b9053c58e5a5f66123648edef8230ccd302b65cbab9c0bf3f30b1eecd3b7d720e10c265ec3a5f66123648edef8230ccd302b65cbab9c0bf3f30b1eecd3b7d720e10c265ec3a5f66123648edef8230ccd302b65cbab9c0bf3f30b1eecd3b7d720e10c265ec37c73a9cdf56a9a0b2edc3b396d39b44be34c2e38900bffd4b283944b44a39013052104b69d3bfc635531636f1b26324acc77964035aa0e35d43af23086b3de27e7d218683784f07912c232868f13268231683e231f99fcb4f1c310a145106baff877f8a60e492f66dc99ca8f83b5dd34c2b917ea43cabde4dd538e8d81d55e6ca648993793a8899eff496a6787712b382cb8df8b7a67266dd38798b2dd3fa7b99dabca4d89ad83986a828905c3be349d3e1d576eb3368fabecdfb4146c0077885d17bf31f4ee9b0ec69cc5ab10f93bb740a9433633dd80647c45bd6007715776ada478d73a689511de0b4c80cf8cdb8bb8a7d048a4ebf100820ef41213e4db3af4e2b413dd0a17b078e5cd6eaa4cfb65e3fb31445cfa42c0f18dfe1afe2b77f6e7c42fbdee10d39be44c27eba97b80d344f2f6bf893c572c55e46e5275730adffe0f5394684361c434e4020191d94a10e285e1310343d90063cb12c07e1b182da5f66123648edef8230ccd302b65cbab9c0bf3f30b1eecd3b7d720e10c265ec3c6315aa174a388a683f81264e9680cbaeb67bbf9d1a848d08e8eaf85c3a9bcd2e7cfea298648f3fb27e975c220da7dd1c556d7193326b767957654e3ff61ab5eace676a2f899b95d04229e9e0f2f67ae78861176133db36fc0660b710db666603a1c98b15f0953eb1d2af09051364ffe618ad8a4f34dffafe64991f81d4d1ca37eeb5d1a3a295f6156b9200b5bca3ad85a230c406842c99e4bab181242ac4e9284a6ff8c8f0f5a4ed77fc241e0f09f250b9b6b82fa182636eb8a8ebf84e7587e5c5c219e54190325a1ecf9d25cafdfd06d59b3b7d65d606cc58e267d5a6970092304f2b99d427e9772d541025e5259da64a9f2cbf8b9c1b7ed32e4f5f523b21ec37dd5fb50ea93bc747a6f506cd8af492e615203b5ff6779e63c243550573176095b1b05ca46f5561dc5f0039bee9055c118faf3095a0d46121b13ad7e245215f617973868212e0922fe4034411b37d44fe55e3c95cb088ca7f4441b89058bcff617973868212e0922fe4034411b37d44fe55e3c95cb088ca7f4441b89058bcf3230ef6af779a761f0e03aeeb0f98ad503f7b1b7498a933e781091b9053c58e55d17bf31f4ee9b0ec69cc5ab10f93bb740a9433633dd80647c45bd6007715776ada478d73a689511de0b4c80cf8cdb8bb8a7d048a4ebf100820ef41213e4db3af4e2b413dd0a17b078e5cd6eaa4cfb65e3fb31445cfa42c0f18dfe1afe2b77f6e7c42fbdee10d39be44c27eba97b80d344f2f6bf893c572c55e46e5275730adfa5f66123648edef8230ccd302b65cbab9c0bf3f30b1eecd3b7d720e10c265ec3c6315aa174a388a683f81264e9680cbaeb67bbf9d1a848d08e8eaf85c3a9bcd2e7cfea298648f3fb27e975c220da7dd1c556d7193326b767957654e3ff61ab5e3a1c98b15f0953eb1d2af09051364ffe618ad8a4f34dffafe64991f81d4d1ca37eeb5d1a3a295f6156b9200b5bca3ad85a230c406842c99e4bab181242ac4e9284a6ff8c8f0f5a4ed77fc241e0f09f250b9b6b82fa182636eb8a8ebf84e7587e5c5c219e54190325a1ecf9d25cafdfd06d59b3b7d65d606cc58e267d5a6970097c73a9cdf56a9a0b2edc3b396d39b44be34c2e38900bffd4b283944b44a39013052104b69d3bfc635531636f1b26324acc77964035aa0e35d43af23086b3de27e7d218683784f07912c232868f13268231683e231f99fcb4f1c310a145106baff877f8a60e492f66dc99ca8f83b5dd34c2b917ea43cabde4dd538e8d81d55e6ca648993793a8899eff496a6787712b382cb8df8b7a67266dd38798b2dd3fa7b99dabca4d89ad83986a828905c3be349d3e1d576eb3368fabecdfb4146c0077885d17bf31f4ee9b0ec69cc5ab10f93bb740a9433633dd80647c45bd6007715776ada478d73a689511de0b4c80cf8cdb8bb8a7d048a4ebf100820ef41213e4db3af4e2b413dd0a17b078e5cd6eaa4cfb65e3fb31445cfa42c0f18dfe1afe2b77f6e7c42fbdee10d39be44c27eba97b80d344f2f6bf893c572c55e46e5275730adffe0f5394684361c434e4020191d94a10e285e1310343d90063cb12c07e1b182da5f66123648edef8230ccd302b65cbab9c0bf3f30b1eecd3b7d720e10c265ec3c6315aa174a388a683f81264e9680cbaeb67bbf9d1a848d08e8eaf85c3a9bcd2e7cfea298648f3fb27e975c220da7dd1c556d7193326b767957654e3ff61ab5eace676a2f899b95d04229e9e0f2f67ae78861176133db36fc0660b710db666603a1c98b15f0953eb1d2af09051364ffe618ad8a4f34dffafe64991f81d4d1ca37eeb5d1a3a295f6156b9200b5bca3ad85a230c406842c99e4bab181242ac4e9284a6ff8c8f0f5a4ed77fc241e0f09f250b9b6b82fa182636eb8a8ebf84e7587e5c5c219e54190325a1ecf9d25cafdfd06d59b3b7d65d606cc58e267d5a6970092304f2b99d427e9772d541025e5259da64a9f2cbf8b9c1b7ed32e4f5f523b21ec37dd5fb50ea93bc747a6f506cd8af492e615203b5ff6779e63c243550573176095b1b05ca46f5561dc5f0039bee9055c118faf3095a0d46121b13ad7e245215f617973868212e0922fe4034411b37d44fe55e3c95cb088ca7f4441b89058bcff617973868212e0922fe4034411b37d44fe55e3c95cb088ca7f4441b89058bcf3230ef6af779a761f0e03aeeb0f98ad503f7b1b7498a933e781091b9053c58e5484ae631900d386ebd02b57954546e61a910ce1803ce21175e05c93be4136e42375cc6c797f5bdd3bd30f99bd7833a7e36f61ceb212bc9cd66965fa08818e679c390b31776aff9179ec10faca2a34e804f2edfe176a40fa003c6bff159f4d1e6a7eb756ede7871ecdf11d59d340a04b816d3085939e1d124b3e0521d60d1e7ac79d4552a357a7c0bd214a0c04cc8510de894fe14e3e8cf1811617b26663590d384a6ff8c8f0f5a4ed77fc241e0f09f250b9b6b82fa182636eb8a8ebf84e7587e5c5c219e54190325a1ecf9d25cafdfd06d59b3b7d65d606cc58e267d5a6970095c5c219e54190325a1ecf9d25cafdfd06d59b3b7d65d606cc58e267d5a69700984a6ff8c8f0f5a4ed77fc241e0f09f250b9b6b82fa182636eb8a8ebf84e7587e5c5c219e54190325a1ecf9d25cafdfd06d59b3b7d65d606cc58e267d5a69700984a6ff8c8f0f5a4ed77fc241e0f09f250b9b6b82fa182636eb8a8ebf84e7587e5c5c219e54190325a1ecf9d25cafdfd06d59b3b7d65d606cc58e267d5a6970095c5c219e54190325a1ecf9d25cafdfd06d59b3b7d65d606cc58e267d5a69700984a6ff8c8f0f5a4ed77fc241e0f09f250b9b6b82fa182636eb8a8ebf84e7587e8887c9ce95c0b1941c824ed391481dbc63eb18908c50ff76ec92f869744a7ca663fc7c824d34c3d7e4e9e440e21a137b11afb99c8e00b20daa4e6942d984d6043cdf1611810281b0f912fb81c4fbebf1b31b76fc3fe59dba766ec37c541e1b465e4b606f66539364b6a638475b0237a8cf04e68ac80ac2886750eca2b450384f5e4b606f66539364b6a638475b0237a8cf04e68ac80ac2886750eca2b450384ff7b0822cb583fe3f56a6150a769e10496be0bd246f798ae47c53f4d9ecb96295e3e6e3d13a73e92931d718fd21f13c3d840e99e132e621db992eccbdc89f7ec55d17bf31f4ee9b0ec69cc5ab10f93bb740a9433633dd80647c45bd6007715776ada478d73a689511de0b4c80cf8cdb8bb8a7d048a4ebf100820ef41213e4db3af4e2b413dd0a17b078e5cd6eaa4cfb65e3fb31445cfa42c0f18dfe1afe2b77f6b82b05fd662068b3a81cef648c7c1cc7c075ae841374c8813f57d51b47a2cabcd2aa4324a4038d862023b472086b27af20445522008977f98f419fb0815db2391a073aee57180095c112cd7f1d206b418b8603aa98df5b3863d7be3d9356a6a7aa98f46852af97d99d290f9e76b0cd4582879ee705d138a19165c12cbc44d88b6c6c81d4646a5bb752379efbd0717770009d18de154a79f6d8a5f40e5868d9c83a1c98b15f0953eb1d2af09051364ffe618ad8a4f34dffafe64991f81d4d1ca3f49aa7b012f24875d464e5a0d1e7f596b0e06d91d776a32061657cc018cd076d84a6ff8c8f0f5a4ed77fc241e0f09f250b9b6b82fa182636eb8a8ebf84e7587e5c5c219e54190325a1ecf9d25cafdfd06d59b3b7d65d606cc58e267d5a697009deaf3700ae39a27b303c0da980fd4cd1c00427ee6f8c573679239e77cea7ba2df617973868212e0922fe4034411b37d44fe55e3c95cb088ca7f4441b89058bcff617973868212e0922fe4034411b37d44fe55e3c95cb088ca7f4441b89058bcfaf3b3cfe67ecdfddc5c939a19db9ffd75119edb52fd05dc30fd2a6b9d161ce93ace812608c69e6af697d8f4fbadfd29dcf91ad1a8fe9d7a200fb550a1e95e14f000880302e4fa88df786388982c767bacfdcc520e246bfd8b65036e6db2009e92a7d5369904a4706a0e4daf997460dcfdfd852a604b3c78bc4eca8b9c97e68315e4b606f66539364b6a638475b0237a8cf04e68ac80ac2886750eca2b450384f16ab9f3cbf5ee7a591e4e8f856e2fb528ddb0b0f9c1e345de25bd916f9c7b636f617973868212e0922fe4034411b37d44fe55e3c95cb088ca7f4441b89058bcf3cdf1611810281b0f912fb81c4fbebf1b31b76fc3fe59dba766ec37c541e1b463cdf1611810281b0f912fb81c4fbebf1b31b76fc3fe59dba766ec37c541e1b462f6288a1b58376f3f46ad30b27b5a806dc065453d3a98435707352db0c80fb2815a645127157f3b10cc189b7a2a64be1d88762a74bde2382cc3ea6ee69fe88e63f840fef10d6fdc6b617d06afb023cf91a1700e25c8ade398cbde1f20bcdde2empic++.1rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootopenmpi2-2.1.6-150500.24.2.1.src.rpmopenmpi2-docsopenmpi2-docs(x86-64)     openmpi2rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)2.1.63.0.4-14.6.0-14.0.4-14.0-15.2-14.14.3c pb&an@`N@^s^]]]@]y@\@\@\@\@\eX@[1[T@[ā@[\[@[y[[@Z@Z@Z2@ZZ}@Zp^@Z_:Z)-@YYܶ@Yp@YYYYY@Y@YY?@YoIYf@YdY_wYTYS@YBvY9<@Y.@Y-^Y;@YtXnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnormand@linux.vnet.ibm.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnormand@linux.vnet.ibm.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.combwiedemann@suse.comeich@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comeich@suse.comjjolly@suse.comjjolly@suse.comeich@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comcgoll@suse.comeich@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comschwab@linux-m68k.orgnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comjengelh@inai.denmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.comnmoreychaisemartin@suse.com- Add patch btl-openib-Add-support-for-newer-hardware.patch to support newer RDMA hardware (ConnectX 4 and 5 VF, ConnectX6 PF + VF and Broadcom adapters)- Backport upstream patches to fix compilation with autoconf >= 2.70 - Fix-error-with-stricter-quoting-requirements-of-autoconf-2.70.patch - Always-include-the-stddef.h-header.patch- Move rpm macros to %_rpmmacrodir (bsc#1191389)- openmpi2 is not the default openmpi anymore for releases > 15.3- Drop different package string between SLES and Leap (jsc#SLE-11846)- Add openmpi_disable_opal_fifo_test_issue5470.patch as long as upstream issue#5470 not solved for PowerPC https://github.com/open-mpi/ompi/issues/5470- Link against libnuma (bsc#1155120)- Fix conflict with other opoenmpi*-macros-devel - Add conflict with older provider name to avoid issues during updates - Add openmpi_prefix macro to openmpi-macros-devel- Add -ffat-lto-objects in spec to avoid build error- Provide openmpi for suse_version >= 1500 - Add macros package for non hpc flavour- Enable openmpi2 on ppc64- Fix bad INCLUDE path in module (bsc#1132949)- Add add-gen-p5-chip-pci-id-to-ini-file.patch: - Adds support for Broadcom 57500 adapters (bsc#1125651)- Update to openmpi 2.1.6 (bsc#1094689) - Many bug fixes. See NEWS for a complete list- Add reproducible.patch to make package build reproducible (boo#1047218, boo#1041090, boo#1084909)- Add macro _hpc_openmpi_modules for modules support (bsc#1116458).- Update to openmpi 2.1.5 (fate#326157) - Many bug fixes. See NEWS for a complete list - Drop openmpi2-add-HCAs-to-mca-ini.patch as it was merged upstream.- Remove bashism in preun scriptlet- Fix handling of mpi-selector during updates (bsc#1098653)- macros.hpc-openmpi2: replace %%compiler_family by %%hpc_compiler_family- Updated openmpi2-add-HCAs-to-mca-ini.patch * Adds Broadcom BCM57414 NetXtreme-E RDMA Ethernet Controller (bsc#1094689)- Added openmpi2-add-HCAs-to-mca-ini.patch * Adds necessary parameters for QLogic Corp. FastLinQ QL41000 (bsc#1092257)- Create missing docs master package (bsc#1091714)- Update to openmpi 2.1.3 - Update internal PMIx version to 1.2.5. - Fix a problem with ompi_info reporting using param option. - Correct PMPI_Aint_{add|diff} to be functions (not subroutines) in the Fortran mpi_f08 module. - Fix a problem when doing MPI I/O using data types with large extents in conjunction with MPI_TYPE_CREATE_SUBARRAY. Thanks to - Fix a problem when opening many files using MPI_FILE_OPEN. - Fix a problem with debuggers failing to attach to a running job. - Fix a problem when using madvise and the OpenIB BTL. - Fix a problem in the Vader BTL that resulted in failures of IMB under certain circumstances. - Fix a problem preventing Open MPI from working under Cygwin. - Reduce some verbosity being emitted by the USNIC BTL under certain circumstances. - Fix a problem with misdirection of SIGKILL. - Replace use of posix_memalign with malloc for small allocations. - Fix a problem with Open MPI's out of band TCP network for file descriptors greater than 32767. - Plug a memory leak in MPI_Mem_free(). - Drop btl-vader-change-the-way-fast-boxes-are-used.patch as it merged upstream. - Add fix-rdma-component-selection.patch to fix bad rdma component selection which can cause stall when running on multiple IB nodes (bsc#1087031)- 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).- Switch from gcc6 to gcc7 as additional compiler flavor for HPC on SLES. - Fix library package requires - use HPC macro (boo#1074890) - Fix rpm macro file. - Only build openmpi2-config for the standard flavor- Add btl-vader-change-the-way-fast-boxes-are-used.patch to fix a SEGV on i386 systems- 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- Convert to multibuild. - Move all the doc to the docs RPM - Add HPC build using environment modules (FATE#321711). - Resync spec with openmpi and openmpi3- Update to OpenMPI 2.1.2 * Many bug fixes. See NEWS - Fix VERSION file during build so that ompi_info reports good infos- Remove --disable-mca-dso Related bug was due to openmpi/*.so wrongly packaged as devel- Reenable fortan08 bindings as gcc >= 5 is now the default - Remove devel-headers configure option (reserved for MPI plugins developers)- Update to 2.1.1.186.9a3ac9803c - Drop openmpi-pmix-configure-ac.patch as it was merged upstream- Update to 2.1.1.176.7aa585d4ff (2.1.2rc3) * Too many bug fixes to list. See NEWS * ppc64be support was dropped - Drop btl-vader-work-around-ob1-pending-fragment-bug.patch and pml-ob1-do-not-access-fragment-after-calling-btl-rget.patch as they were merged upstream. - Package NEWS file - Add openmpi-pmix-configure-ac.patch to fix a compilation issue on Leap 42.3/SLE12 SP3- Update _service to allow auto updates from github- Enable ucx only on supported platforms- Fix module file name- Add pml-ob1-do-not-access-fragment-after-calling-btl-rget.patch and btl-vader-work-around-ob1-pending-fragment-bug.patch to fix upstream bug https://github.com/open-mpi/ompi/issues/3821 which causes openmpi2 to fail the IMB test suite- Do not require openucx libs for suse_version < 1320- Cleanup upstream spec file - Disable rpath in configure- Build with openucx support when it is available - Buid plugins as part of the MPI library. Fixes: * Missing shmem support * Missing Requires in RPM - Build with libfabric support on x86- Trim filler wording from description - Replace uses of old $RPM_ variables, remove redundant %clean section, abolish %__-type macro indirection, remove excess piping to xargs - Add missing %_smp_mflags.- Add support for openmpi2 over PSM2 and libfabric - Reference baselibs.conf and openmpi2-rpmlintrc in spec - Add _service to fetch from upstream github repo- Remove version dependencies to libibumad and libibverbs- Fix module file paths- Add openmpi2-config package which contains runtime configuration files for OpenMPI 1 and/or 2- Update to OpenMPI 2.1.1 * Fix a problem with one of Open MPI's fifo data structures which led to hangs in a make check test. * Add missing MPI_AINT_ADD/MPI_AINT_DIFF function definitions to mpif.h. * Fix the error return from MPI_WIN_LOCK when rank argument is invalid. * Fix a problem with mpirun/orterun when started under a debugger. * Add configury option to disable use of CMA by the vader BTL. * Add configury check for MPI_DOUBLE_COMPLEX datatype support. * Fix memory allocated by MPI_WIN_ALLOCATE_SHARED to be 64 byte aligned. * Update MPI_WTICK man page to reflect possibly higher resolution than 10e-6. * Add missing MPI_T_PVAR_SESSION_NULL definition to mpi.h include file. * Enhance the Open MPI spec file to install modulefile in /opt if installed in a non-default location. * Fix a problem with conflicting PMI symbols when linking statically. * S390/S390x support - Drop openmpi2-ia32-fix-atomic.patch openmpi2-s390.patch as they are now fixed/supported upstream.- Add testsuite package- Initial packaging of OpenMPI 2.1.0h01-ch3c 1721737934   !"$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{J}~JJJJ     JJJJ !"#$%&'()*+,-./JJ23456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkJmnopqrstuvwxyz{|}JJJ$(-002689;@(002689;@(002stuvw0002.1.6-150500.24.2.12.1.6-150500.24.2.1manman1mpiCC.1mpic++.1mpicc.1mpicxx.1mpiexec.1mpif77.1mpif90.1mpifort.1mpirun.1ompi-clean.1ompi-dvm.1ompi-ps.1ompi-server.1ompi-submit.1ompi-top.1ompi_info.1opal_wrapper.1orte-clean.1orte-dvm.1orte-info.1orte-ps.1orte-server.1orte-submit.1orte-top.1orted.1orterun.1oshcc.1oshfort.1oshmem_info.1oshrun.1shmemcc.1shmemfort.1shmemrun.1man3MPI.3MPIX_Query_cuda_support.3MPI_Abort.3MPI_Accumulate.3MPI_Add_error_class.3MPI_Add_error_code.3MPI_Add_error_string.3MPI_Address.3MPI_Aint_add.3MPI_Aint_diff.3MPI_Allgather.3MPI_Allgatherv.3MPI_Alloc_mem.3MPI_Allreduce.3MPI_Alltoall.3MPI_Alltoallv.3MPI_Alltoallw.3MPI_Attr_delete.3MPI_Attr_get.3MPI_Attr_put.3MPI_Barrier.3MPI_Bcast.3MPI_Bsend.3MPI_Bsend_init.3MPI_Buffer_attach.3MPI_Buffer_detach.3MPI_Cancel.3MPI_Cart_coords.3MPI_Cart_create.3MPI_Cart_get.3MPI_Cart_map.3MPI_Cart_rank.3MPI_Cart_shift.3MPI_Cart_sub.3MPI_Cartdim_get.3MPI_Close_port.3MPI_Comm_accept.3MPI_Comm_c2f.3MPI_Comm_call_errhandler.3MPI_Comm_compare.3MPI_Comm_connect.3MPI_Comm_create.3MPI_Comm_create_errhandler.3MPI_Comm_create_group.3MPI_Comm_create_keyval.3MPI_Comm_delete_attr.3MPI_Comm_disconnect.3MPI_Comm_dup.3MPI_Comm_dup_with_info.3MPI_Comm_f2c.3MPI_Comm_free.3MPI_Comm_free_keyval.3MPI_Comm_get_attr.3MPI_Comm_get_errhandler.3MPI_Comm_get_info.3MPI_Comm_get_name.3MPI_Comm_get_parent.3MPI_Comm_group.3MPI_Comm_idup.3MPI_Comm_join.3MPI_Comm_rank.3MPI_Comm_remote_group.3MPI_Comm_remote_size.3MPI_Comm_set_attr.3MPI_Comm_set_errhandler.3MPI_Comm_set_info.3MPI_Comm_set_name.3MPI_Comm_size.3MPI_Comm_spawn.3MPI_Comm_spawn_multiple.3MPI_Comm_split.3MPI_Comm_split_type.3MPI_Comm_test_inter.3MPI_Compare_and_swap.3MPI_Dims_create.3MPI_Dist_graph_create.3MPI_Dist_graph_create_adjacent.3MPI_Dist_graph_neighbors.3MPI_Dist_graph_neighbors_count.3MPI_Errhandler_create.3MPI_Errhandler_free.3MPI_Errhandler_get.3MPI_Errhandler_set.3MPI_Error_class.3MPI_Error_string.3MPI_Exscan.3MPI_Fetch_and_op.3MPI_File_c2f.3MPI_File_call_errhandler.3MPI_File_close.3MPI_File_create_errhandler.3MPI_File_delete.3MPI_File_f2c.3MPI_File_get_amode.3MPI_File_get_atomicity.3MPI_File_get_byte_offset.3MPI_File_get_errhandler.3MPI_File_get_group.3MPI_File_get_info.3MPI_File_get_position.3MPI_File_get_position_shared.3MPI_File_get_size.3MPI_File_get_type_extent.3MPI_File_get_view.3MPI_File_iread.3MPI_File_iread_all.3MPI_File_iread_at.3MPI_File_iread_at_all.3MPI_File_iread_shared.3MPI_File_iwrite.3MPI_File_iwrite_all.3MPI_File_iwrite_at.3MPI_File_iwrite_at_all.3MPI_File_iwrite_shared.3MPI_File_open.3MPI_File_preallocate.3MPI_File_read.3MPI_File_read_all.3MPI_File_read_all_begin.3MPI_File_read_all_end.3MPI_File_read_at.3MPI_File_read_at_all.3MPI_File_read_at_all_begin.3MPI_File_read_at_all_end.3MPI_File_read_ordered.3MPI_File_read_ordered_begin.3MPI_File_read_ordered_end.3MPI_File_read_shared.3MPI_File_seek.3MPI_File_seek_shared.3MPI_File_set_atomicity.3MPI_File_set_errhandler.3MPI_File_set_info.3MPI_File_set_size.3MPI_File_set_view.3MPI_File_sync.3MPI_File_write.3MPI_File_write_all.3MPI_File_write_all_begin.3MPI_File_write_all_end.3MPI_File_write_at.3MPI_File_write_at_all.3MPI_File_write_at_all_begin.3MPI_File_write_at_all_end.3MPI_File_write_ordered.3MPI_File_write_ordered_begin.3MPI_File_write_ordered_end.3MPI_File_write_shared.3MPI_Finalize.3MPI_Finalized.3MPI_Free_mem.3MPI_Gather.3MPI_Gatherv.3MPI_Get.3MPI_Get_accumulate.3MPI_Get_address.3MPI_Get_count.3MPI_Get_elements.3MPI_Get_elements_x.3MPI_Get_library_version.3MPI_Get_processor_name.3MPI_Get_version.3MPI_Graph_create.3MPI_Graph_get.3MPI_Graph_map.3MPI_Graph_neighbors.3MPI_Graph_neighbors_count.3MPI_Graphdims_get.3MPI_Grequest_complete.3MPI_Grequest_start.3MPI_Group_c2f.3MPI_Group_compare.3MPI_Group_difference.3MPI_Group_excl.3MPI_Group_f2c.3MPI_Group_free.3MPI_Group_incl.3MPI_Group_intersection.3MPI_Group_range_excl.3MPI_Group_range_incl.3MPI_Group_rank.3MPI_Group_size.3MPI_Group_translate_ranks.3MPI_Group_union.3MPI_Iallgather.3MPI_Iallgatherv.3MPI_Iallreduce.3MPI_Ialltoall.3MPI_Ialltoallv.3MPI_Ialltoallw.3MPI_Ibarrier.3MPI_Ibcast.3MPI_Ibsend.3MPI_Iexscan.3MPI_Igather.3MPI_Igatherv.3MPI_Improbe.3MPI_Imrecv.3MPI_Ineighbor_allgather.3MPI_Ineighbor_allgatherv.3MPI_Ineighbor_alltoall.3MPI_Ineighbor_alltoallv.3MPI_Ineighbor_alltoallw.3MPI_Info_c2f.3MPI_Info_create.3MPI_Info_delete.3MPI_Info_dup.3MPI_Info_env.3MPI_Info_f2c.3MPI_Info_free.3MPI_Info_get.3MPI_Info_get_nkeys.3MPI_Info_get_nthkey.3MPI_Info_get_valuelen.3MPI_Info_set.3MPI_Init.3MPI_Init_thread.3MPI_Initialized.3MPI_Intercomm_create.3MPI_Intercomm_merge.3MPI_Iprobe.3MPI_Irecv.3MPI_Ireduce.3MPI_Ireduce_scatter.3MPI_Ireduce_scatter_block.3MPI_Irsend.3MPI_Is_thread_main.3MPI_Iscan.3MPI_Iscatter.3MPI_Iscatterv.3MPI_Isend.3MPI_Issend.3MPI_Keyval_create.3MPI_Keyval_free.3MPI_Lookup_name.3MPI_Message_c2f.3MPI_Message_f2c.3MPI_Mprobe.3MPI_Mrecv.3MPI_Neighbor_allgather.3MPI_Neighbor_allgatherv.3MPI_Neighbor_alltoall.3MPI_Neighbor_alltoallv.3MPI_Neighbor_alltoallw.3MPI_Op_c2f.3MPI_Op_commutative.3MPI_Op_create.3MPI_Op_f2c.3MPI_Op_free.3MPI_Open_port.3MPI_Pack.3MPI_Pack_external.3MPI_Pack_external_size.3MPI_Pack_size.3MPI_Pcontrol.3MPI_Probe.3MPI_Publish_name.3MPI_Put.3MPI_Query_thread.3MPI_Raccumulate.3MPI_Recv.3MPI_Recv_init.3MPI_Reduce.3MPI_Reduce_local.3MPI_Reduce_scatter.3MPI_Reduce_scatter_block.3MPI_Register_datarep.3MPI_Request_c2f.3MPI_Request_f2c.3MPI_Request_free.3MPI_Request_get_status.3MPI_Rget.3MPI_Rget_accumulate.3MPI_Rput.3MPI_Rsend.3MPI_Rsend_init.3MPI_Scan.3MPI_Scatter.3MPI_Scatterv.3MPI_Send.3MPI_Send_init.3MPI_Sendrecv.3MPI_Sendrecv_replace.3MPI_Sizeof.3MPI_Ssend.3MPI_Ssend_init.3MPI_Start.3MPI_Startall.3MPI_Status_c2f.3MPI_Status_f2c.3MPI_Status_set_cancelled.3MPI_Status_set_elements.3MPI_Status_set_elements_x.3MPI_T_category_changed.3MPI_T_category_get_categories.3MPI_T_category_get_cvars.3MPI_T_category_get_info.3MPI_T_category_get_num.3MPI_T_category_get_pvars.3MPI_T_cvar_get_info.3MPI_T_cvar_get_num.3MPI_T_cvar_handle_alloc.3MPI_T_cvar_handle_free.3MPI_T_cvar_read.3MPI_T_cvar_write.3MPI_T_enum_get_info.3MPI_T_enum_get_item.3MPI_T_finalize.3MPI_T_init_thread.3MPI_T_pvar_get_info.3MPI_T_pvar_get_num.3MPI_T_pvar_handle_alloc.3MPI_T_pvar_handle_free.3MPI_T_pvar_read.3MPI_T_pvar_readreset.3MPI_T_pvar_reset.3MPI_T_pvar_session_create.3MPI_T_pvar_session_free.3MPI_T_pvar_start.3MPI_T_pvar_stop.3MPI_T_pvar_write.3MPI_Test.3MPI_Test_cancelled.3MPI_Testall.3MPI_Testany.3MPI_Testsome.3MPI_Topo_test.3MPI_Type_c2f.3MPI_Type_commit.3MPI_Type_contiguous.3MPI_Type_create_darray.3MPI_Type_create_f90_complex.3MPI_Type_create_f90_integer.3MPI_Type_create_f90_real.3MPI_Type_create_hindexed.3MPI_Type_create_hindexed_block.3MPI_Type_create_hvector.3MPI_Type_create_indexed_block.3MPI_Type_create_keyval.3MPI_Type_create_resized.3MPI_Type_create_struct.3MPI_Type_create_subarray.3MPI_Type_delete_attr.3MPI_Type_dup.3MPI_Type_extent.3MPI_Type_f2c.3MPI_Type_free.3MPI_Type_free_keyval.3MPI_Type_get_attr.3MPI_Type_get_contents.3MPI_Type_get_envelope.3MPI_Type_get_extent.3MPI_Type_get_extent_x.3MPI_Type_get_name.3MPI_Type_get_true_extent.3MPI_Type_get_true_extent_x.3MPI_Type_hindexed.3MPI_Type_hvector.3MPI_Type_indexed.3MPI_Type_lb.3MPI_Type_match_size.3MPI_Type_set_attr.3MPI_Type_set_name.3MPI_Type_size.3MPI_Type_size_x.3MPI_Type_struct.3MPI_Type_ub.3MPI_Type_vector.3MPI_Unpack.3MPI_Unpack_external.3MPI_Unpublish_name.3MPI_Wait.3MPI_Waitall.3MPI_Waitany.3MPI_Waitsome.3MPI_Win_allocate.3MPI_Win_allocate_shared.3MPI_Win_attach.3MPI_Win_c2f.3MPI_Win_call_errhandler.3MPI_Win_complete.3MPI_Win_create.3MPI_Win_create_dynamic.3MPI_Win_create_errhandler.3MPI_Win_create_keyval.3MPI_Win_delete_attr.3MPI_Win_detach.3MPI_Win_f2c.3MPI_Win_fence.3MPI_Win_flush.3MPI_Win_flush_all.3MPI_Win_flush_local.3MPI_Win_flush_local_all.3MPI_Win_free.3MPI_Win_free_keyval.3MPI_Win_get_attr.3MPI_Win_get_errhandler.3MPI_Win_get_group.3MPI_Win_get_info.3MPI_Win_get_name.3MPI_Win_lock.3MPI_Win_lock_all.3MPI_Win_post.3MPI_Win_set_attr.3MPI_Win_set_errhandler.3MPI_Win_set_info.3MPI_Win_set_name.3MPI_Win_shared_query.3MPI_Win_start.3MPI_Win_sync.3MPI_Win_test.3MPI_Win_unlock.3MPI_Win_unlock_all.3MPI_Win_wait.3MPI_Wtick.3MPI_Wtime.3OMPI_Affinity_str.3OpenMPI.3OpenSHMEM.3_my_pe.3_num_pes.3intro_shmem.3shfree.3shmalloc.3shmem_addr_accessible.3shmem_align.3shmem_alltoall32.3shmem_alltoall64.3shmem_alltoalls32.3shmem_alltoalls64.3shmem_barrier.3shmem_barrier_all.3shmem_broadcast32.3shmem_broadcast64.3shmem_char_g.3shmem_char_get.3shmem_char_get_nbi.3shmem_char_p.3shmem_char_put.3shmem_char_put_nbi.3shmem_clear_cache_inv.3shmem_clear_cache_line_inv.3shmem_clear_lock.3shmem_collect32.3shmem_collect64.3shmem_complexd_prod_to_all.3shmem_complexd_sum_to_all.3shmem_complexf_prod_to_all.3shmem_complexf_sum_to_all.3shmem_double_fetch.3shmem_double_g.3shmem_double_get.3shmem_double_get_nbi.3shmem_double_iget.3shmem_double_iput.3shmem_double_max_to_all.3shmem_double_min_to_all.3shmem_double_p.3shmem_double_prod_to_all.3shmem_double_put.3shmem_double_put_nbi.3shmem_double_set.3shmem_double_sum_to_all.3shmem_double_swap.3shmem_fcollect32.3shmem_fcollect64.3shmem_fence.3shmem_finalize.3shmem_float_fetch.3shmem_float_g.3shmem_float_get.3shmem_float_get_nbi.3shmem_float_iget.3shmem_float_iput.3shmem_float_max_to_all.3shmem_float_min_to_all.3shmem_float_p.3shmem_float_prod_to_all.3shmem_float_put.3shmem_float_put_nbi.3shmem_float_set.3shmem_float_sum_to_all.3shmem_float_swap.3shmem_free.3shmem_get128.3shmem_get128_nbi.3shmem_get16_nbi.3shmem_get32.3shmem_get32_nbi.3shmem_get64.3shmem_get64_nbi.3shmem_get8_nbi.3shmem_getmem.3shmem_getmem_nbi.3shmem_global_exit.3shmem_iget128.3shmem_iget32.3shmem_iget64.3shmem_info_get_name.3shmem_info_get_version.3shmem_init.3shmem_int_add.3shmem_int_and_to_all.3shmem_int_cswap.3shmem_int_fadd.3shmem_int_fetch.3shmem_int_finc.3shmem_int_g.3shmem_int_get.3shmem_int_get_nbi.3shmem_int_iget.3shmem_int_inc.3shmem_int_iput.3shmem_int_max_to_all.3shmem_int_min_to_all.3shmem_int_or_to_all.3shmem_int_p.3shmem_int_prod_to_all.3shmem_int_put.3shmem_int_put_nbi.3shmem_int_set.3shmem_int_sum_to_all.3shmem_int_swap.3shmem_int_wait.3shmem_int_wait_until.3shmem_int_xor_to_all.3shmem_iput128.3shmem_iput32.3shmem_iput64.3shmem_long_add.3shmem_long_and_to_all.3shmem_long_cswap.3shmem_long_fadd.3shmem_long_fetch.3shmem_long_finc.3shmem_long_g.3shmem_long_get.3shmem_long_get_nbi.3shmem_long_iget.3shmem_long_inc.3shmem_long_iput.3shmem_long_max_to_all.3shmem_long_min_to_all.3shmem_long_or_to_all.3shmem_long_p.3shmem_long_prod_to_all.3shmem_long_put.3shmem_long_put_nbi.3shmem_long_set.3shmem_long_sum_to_all.3shmem_long_swap.3shmem_long_wait.3shmem_long_wait_until.3shmem_long_xor_to_all.3shmem_longdouble_g.3shmem_longdouble_get.3shmem_longdouble_get_nbi.3shmem_longdouble_iget.3shmem_longdouble_iput.3shmem_longdouble_max_to_all.3shmem_longdouble_min_to_all.3shmem_longdouble_p.3shmem_longdouble_prod_to_all.3shmem_longdouble_put.3shmem_longdouble_put_nbi.3shmem_longlong_add.3shmem_longlong_and_to_all.3shmem_longlong_cswap.3shmem_longlong_fadd.3shmem_longlong_fetch.3shmem_longlong_finc.3shmem_longlong_g.3shmem_longlong_get.3shmem_longlong_get_nbi.3shmem_longlong_iget.3shmem_longlong_inc.3shmem_longlong_iput.3shmem_longlong_max_to_all.3shmem_longlong_min_to_all.3shmem_longlong_or_to_all.3shmem_longlong_p.3shmem_longlong_prod_to_all.3shmem_longlong_put.3shmem_longlong_put_nbi.3shmem_longlong_set.3shmem_longlong_sum_to_all.3shmem_longlong_swap.3shmem_longlong_wait.3shmem_longlong_wait_until.3shmem_longlong_xor_to_all.3shmem_malloc.3shmem_my_pe.3shmem_n_pes.3shmem_pe_accessible.3shmem_ptr.3shmem_put128.3shmem_put128_nbi.3shmem_put16_nbi.3shmem_put32.3shmem_put32_nbi.3shmem_put64.3shmem_put64_nbi.3shmem_put8_nbi.3shmem_putmem.3shmem_putmem_nbi.3shmem_quiet.3shmem_realloc.3shmem_set_cache_inv.3shmem_set_cache_line_inv.3shmem_set_lock.3shmem_short_and_to_all.3shmem_short_g.3shmem_short_get.3shmem_short_get_nbi.3shmem_short_iget.3shmem_short_iput.3shmem_short_max_to_all.3shmem_short_min_to_all.3shmem_short_or_to_all.3shmem_short_p.3shmem_short_prod_to_all.3shmem_short_put.3shmem_short_put_nbi.3shmem_short_sum_to_all.3shmem_short_wait.3shmem_short_wait_until.3shmem_short_xor_to_all.3shmem_swap.3shmem_test_lock.3shmem_udcflush.3shmem_udcflush_line.3shmem_wait.3shmem_wait_until.3shmemalign.3shrealloc.3start_pes.3man7orte_filem.7orte_hosts.7/usr/lib64/mpi/gcc/openmpi2/share//usr/lib64/mpi/gcc/openmpi2/share/man//usr/lib64/mpi/gcc/openmpi2/share/man/man1//usr/lib64/mpi/gcc/openmpi2/share/man/man3//usr/lib64/mpi/gcc/openmpi2/share/man/man7/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:34857/SUSE_SLE-15-SP5_Update/b00f42ed032dd147f029de6566ea980f-openmpi2.SUSE_SLE-15-SP5_Update:standarddrpmxz5x86_64-suse-linux directorytroff or preprocessor input, ASCII texttroff or preprocessor input, UTF-8 Unicode textAlgol 68 source, ASCII text, with very long linesC source, ASCII textC source, ASCII text, with very long linesC source, UTF-8 Unicode text, with very long linestroff or preprocessor input, ASCII text, with very long linesC source, UTF-8 Unicode text,aTiutf-860e12fc0af82e35071e90ff236f2f10c090d79c1a2f81c4badb94ee2ef2a9709?P7zXZ !t/GY]"k%jq. 03<\a$)wUO#AnV!Q {,Z+!w.qTvl8z4r0Tq˧jƋÖm9ObB6zkϳX흥<*Ba4bQ|f1t dubvӶ<&cٻlzŚdGk:HaM--." Hi8ʪ M~Xq9@E7qMSy!8*'2@ :{a:a=NA͓jpLyOvWxPC_1` ^>Fv!(qFP3cM}5?RpܱkINZ`hdd釁[‘h\ %`lа}Ɨm "WBiz%Y7ZKrX<M-g)e:O'ͧ =җ,/Gzy|t2W3"/h.5Os.p.,gQY搫\J qZ8QGErp!w0~^tZz{ߙ|Na!d\" ӲʄH a{#I\aF.CpFͿ"W)NE&' 5N >w,PbŞ Mו? ʠ1 q`lan^qQ(쳆7e)Yˣ)ӤH'T)ˈו9Mi|<8i(n%QIk'^/ΞVB'R,](uNi'tR>eT?5mAW-eG&:PgkzzayeR_^N@4l\kf3 L2F H*I=,QOLpj¼T#Sƚk2X ˯l'L]:? :@TV ꞯd֓9Ci-9~˅Ar?GĬ?*U}Ӧ;Rw9"YfsgP$7qjY0Oy @EI"`@vGX|JƤy+yQS@fM*T.kmS[~ob0 GBbk:|(/ʴ:$|VcXx7kn Th~'"@[t3DQo&n ekcppb%VhޟT} KI .prA)2%fIӚ_4kd`8&96iM/~W':kfs8$ⷣ i6od٢&S$ar:|$>Q'tNiՆs $a!rw Dg 0꟦}Q ;/^ QFZkcqK 9m-< [0d(##gN=}PQT In[+2g:n"Џ>YiSt ,jx=Enn!{)0){KDr~E4Ro uՕAf|kռg$lui><8Va%!̲AF <::\]Ƅlx RR.Tl? %zkySYv %>9NCޙdY},U'5e"]j`53N`o2,fLJ0TboA`٭&b΀,GYp7rY4! b52.EQT nJ slj?cC۷]W6T^~uN &[h2tt~1_kGѠ؎ }$IC]iBEx'FFtnT%%$(u{I-hUXrP$$6C>1SK'ii{@`: ƺsCU&D{arZ}e,DǸR S<&IE@!e&vc[B 5*\QɪRAh'`VB [a? h\5PK}:{؎-^\!#'4iн:VtYQ U:~rxP9jis ww@S 1L,iDoMC|Y b%0|Av:{|6T9NV7 oV9jޔC ^13Ʈo`Vu@ILgywk.X7^*(%H_6"hmRBƞaJ5pY0Ƣ c0zX1Eyh T@D;gDz㉡D`S Ty FԝW٭4|"k})AWIo (tU՘瘤5 ɎW{>I8e|\+}h_M )ߒNV( zD-8Ed ЍI+ h1P ag.~;S%\ӽ&:1hx3,_,C` jkĶ;hRDuf{WP0Ksϭ tEe8V#JYRnю'ע+y%eP5,}⵼}8 \RE~E?lnbܞ2).%m&mUsI ̰VbpPG{Zr_F ?=~?xw#з Z8wZ3v4 x 0FӲW2KC#~ 65RHքIUyHa~7ÝTMRXi?:430΢A^o1!w,iPFP3ρU\4gEh5=/2_M,}T򢢟ϸES6rh}G̘*D|9$TjS7*GV8w+⌳ ~mXβSгbD6SpnHLA4h˱v9f>׿QBA,f:8y"L&zDH+9V#2jsPi!ֶdlHfАJ`^oaVɼ]LPKOAhT{Hj%Kh}_ edBs&s7z-~t%&L]7; T A9 =-QxR zqD'Ib l^zy =<n΋M n@ș= q\c+xR?!?Zw9Ʋ-_ #<hyyYR> {MiB !C;hPθ]OܑOYE^0SjFLg!fT*dw[}h]]`Q-H.a,xO#cC60[2>0:K:u|xcJ½Ŗbl 3F#HhΊՙNL3o EIFٍyJgxH0k]**@OyJ^ܛ yk!.Lx\#s62 ʪO;h9c7"^:Bv0dxxF[AvW}o-(d-td\?yfd>Y2aP E>ku+:Gk%k]eID8 ">% kF.9d} ^Q|\n8{ϕ|d$K+@(Ln nW&==$oT[ :Mc}v[1lCEMBoz Jλ- <%r8t_`dVG?=ЄM&"CKaBіwk8TS ,j`lҰX .@% Ebwj *\X.O U,)jcx^@x\N. r:.[\y :s5, z5g>DNt6Y(-LnmBN<-1@JNFALr\SŨ֮Τ#cJϵ(RdШ*/*riw^n} YEKzW$|@ AcLgöjnP J*l;TY7myrx`0lC-CZ) @މŽ\P(Ȝ[/!$O RݟrcR~&ϑ?>+Ml:ĹR wqNjK}֏KꝕvAAM C%uQ% rAXLje{hQas^_=+4UG6m7ڎ0'  YZ