python3-pycryptodomex-3.9.9-150300.3.3.1<>,5ep9|4 )l\*g6yS 4]6ڕ?&]ou6rQҽ'FY%IY^J:?c*,/t?9=q5yA?d + L$(Abo      '8  7l  .9  2H B| V jk0 {d{ { | (|8|9} :~F G< Hp Iʤ XδYμ\ ] ^9EbLcLdM:eM?fMBlMDuMX v]2wv0 xd yz$48NPX^Cpython3-pycryptodomex3.9.9150300.3.3.1Cryptographic library for PythonPyCryptodomex is a self-contained Python package of low-level cryptographic primitives. Unlike PyCryptodome, it resides in its own namespace `Cryptodome`. PyCryptodome is a fork of PyCrypto. It brings several enhancements with respect to the last official version of PyCrypto (2.6.1), for instance: * Authenticated encryption modes (GCM, CCM, EAX, SIV, OCB) * Accelerated AES on Intel platforms via AES-NI * First class support for PyPy * Elliptic curves cryptography (NIST P-256 curve only) * Better and more compact API (`nonce` and `iv` attributes for ciphers, automatic generation of random nonces and IVs, simplified CTR cipher mode, and more) * SHA-3 (including SHAKE XOFs), SHA-512/t and BLAKE2 hash algorithms * Salsa20 and ChaCha20 stream ciphers * Poly1305 MAC * ChaCha20-Poly1305 authenticated cipher * scrypt and HKDF * Deterministic (EC)DSA * Password-protected PKCS#8 key containers * Shamir's Secret Sharing scheme * Random numbers get sourced directly from the OS (and not from a CSPRNG in userspace) * Simplified install process, including better support for Windows * Cleaner RSA and DSA key generation (largely based on FIPS 186-4) * Major clean ups and simplification of the code base PyCryptodomex is not a wrapper to a separate C library like *OpenSSL*. To the largest possible extent, algorithms are implemented in pure Python. Only the pieces that are extremely critical to performance (e.g. block ciphers) are implemented as C extensions.eibs-power9-13m9SUSE Linux Enterprise 15SUSE LLC BSD-2-Clausehttps://www.suse.com/Development/Languages/Pythonhttps://www.pycryptodome.orglinuxppc64le%akr0X*-),K ! G;`a H{{]]&&ZZ  [[ y yFF++//77BB9999.G.Gh*_@*E>0$8 TSM~(=,7(xPp$m$(pb . d 4n00_99??ss##dd00bb<<22   x</"?%)%)X,X7+-yeN,Q++,,  OO++XMg"Z +GGJJW[IE 6!p- 3LLww))WW Do-- + +~'|22--m1m1SS BBjj00@@::Z[Z[/4/4Y5Y5vvJJmmFF@@$$KKBx` 'O?"SN1y^>Ds3fn$o!1RA)Y 1 ?6&%&(60i 4 B9&%&(90lb_Ssc!o|! /o~j=~ 1 ?6&%&(60ih),\\>T6[>^^>V6]> U U0U*0\\>T6[>0KP O,X lk;kz4k}sjk!8BxWuZjŷ <<dd,,(()) d d44%%22}},,&:i6z5 7 G s 5 : ; : ;#F#dG "koPXxhh<Dd OWwSa 88 D?? ~ ~xn% }}[[\\%9>?"y"ykk&&GG**ZZ%P|,!/c ]vy.:::,+ B>[;WP {{{i`z22 2xHNm!a* Z [ ' 8wK!3h}  f1+1+996=qJ p|2XnkɴqO=iiH2]=oWr!Q n iVXLU$G[ 9<ċdšdd.n`JƐd##UUUURR$x$x r(a)zf ##OO~~;N7//KK*c*c"85B "RZZ__II" " kkkk ;Pd(P| r8cb ^ 9]AA큤큤큤A큤큤큤A큤큤A큤큤A큤A큤A큤A큤A큤A큤A큤A큤큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤큤큤A큤A큤A큤A큤eze}eemeemeemeemeemeemeemeemeemeemeemeeme~eeme~eeme{ezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezeze~eemeemeemeemeemeemeemeemeemeemeeme~ee~e~e~e~e~e~e~e~e~e~e~e~e~e}eemeemeemeemeemeemeemeemeemeemeemeemeemeemeemeemeemeemeemeemeemeeme~e~e~e~e~e~e~e~e~e~e~eeme{ezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezeze~e~e~eemezeemeemeemee{ezezezezezezezeze}eemeemeemeemeemeemee{ezezezezezezezezezezezezezeze~e}eemeemeeme{ezezezezezeze~e}eemeemeemeemeemezezezezezezezezezezezezeze~eemezeeme{ezezezezeemezezeezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezezeeeeeeeeeeeeeeeeeeeeeeeezez_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3ez_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3ez_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3ezee{ezeze{eze{eze{eze{eze{eze{eze{eze{eze{eze{eze{eze{eze{eze{eze{eze{eze{eze{eze{eze{ezeeeeeeeeeeeeeeeeeeeeezez_3_3_3ez_3_3_3ez_3ez_3_3_3ez_3_3_3_3_3_3ez_3_3_3_3_3_3_3_3_3_3_3_3_3ez_3ezee{e{eze{e{e{ezeeezee{e{eze{eze{eze{eze{ezeeeeezee{e{eze{eze{eze{e{eeeezez_3_3_3_3ezee{e{eze{eze{eze{eze{eze{eze{eze{ezeeeeeeeeze{_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3ez_3_3_3_3_3_3_3_3ezee{e{eze{ezeezee{e{eze{eze{eze{ezeeeezez_3_3ez_3_3_3ez_3_3_3ez_3_3_3ez_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3ezee{e{eze{e{e{eze{e{e{eze{eze{ezeeeeeeeee{e{e{e{eze{eze{ezeeezeemeemeemee{e{eze{eze{eze{e{e{e{e{ezeemeeme}eemeemeemee{e{e{e{eze{eze{eze{e{e{eze{eze{eze{eze{eze{e{eeme~eemeeme~eemeemeemeemeeme{e{ez_3e{e{e{e{e{e{e_3_3_3e_37db0ff87c0db005e0db052ab6e12b3e6c3059ea2985336b45ea4f893d7f54a91dda8449f8df0985bf7ef17669e589bce358e9910204927a2153a05308a0b55493703b8d8a581a6e4d74b94e1c7482c0d19b1cabbdf8ae771ecf29e775291d022ce031f518df9c3502e122d1aa6416e1e8fcd40e7f3b02c6e67d80dd6cde80218c7ff0bfca03fa4392878839209067254fc210f79dae3ec528643e478d4646b9fb0cc3bdf26477a89e61b1f41862c80effff83d0268714d3848c45c0e39f227662b9845ea76f6afc16c1e180b5f68ab77250caa0e0f0b0ac082eebc34d854d5a8903a286b3331635f7bdd232d3ee84d27d7faf0f4b870d5b29f261aec2a160b8fdd70e3b5506c89ada43ef76e701d7dfc511cdf333b8522bc24a2a62be6fc72f55e0564f703affd5efb2db4269b6e0ed91f8f0ecb3c2621dfc35d646ab6af2822bbb617d243bd301c15ec86edfc36f2cffa47abe4c6e4f3b1a119cd386cbd64fbfe5d7186d3b20666041cfec5b6693c11066929e817f69dcde6d7240bf3cfbded5b4b4e9819283737f0b7080f1bd4f0d1d526dec67c2158677a14db01cda346de8755398b1383cccf4dc0ba57f6868825d790d2e6d8783798f66eaeaf4e5d282779b8073aa3468c2625228161dd6e4a5d8d7b6909ef7248e1402f533c42aa3ee6b61359013c59d10faf3a1fd5ed0559bba27f112bebf66700ebb5a5415fe73f50aa621a80e2e13061b6db5b02ec1007f717b9967c64da2ca295b798a02de2b7876abbf8521bfb9528002f7e81fd5c790cbfacff5f0a73dfd37a33717ed329e07e488b9cbd3208940bcb5f66bc6576ba68b97a16b18907ea5a678cca0d156533195d1679ff4bfcc362d4603d381b3dc491ecbd3f16016499d497ed2b56fdaafe06360ccd9ffbecb8a86bed8ab7fef6e43f0baa6524707c612a6de2dbaec24b5d425f3cf14cbacf7c152a44e2ddfa1843b9ae30e98af323bc632e61eb40dfff5dc94aecda62105cfd0eefa0e0c3990dab0b320b9dd3e9985d67eaa8ad0cc9a4ee7ae2f8eafc737c34aed4f5575a687220b35efe7f25bc4913c365a1f2de329592daa2cc2e3e5e58bab8e28d8b544eadf803c4e76c2515981c079e2dc838b190f2cc7e2e9311e3746d77339c59322f3b1aa0bc4d9aef623d3f939a9dc22ef26c1340e898405ec4956c931895cb9da4dc123440c1f57e4d8e17d118fcd9bdc39cfc0b4c50e3a7b74074982cdcaec72a480086e587b467c81d7e94c67f97a19cfbc3db09d6aedc0fd9b26a8e14cf322b84360bf845795db18ddf7f7d4f35dbf7dead73e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855435767193a723275e6c00dab795e90773a28d684adddaddb62f6600d68422615d4e3bc1ef5da564820c3ea6267049f6fc5449bbe8ef7d25a910e138e91825e45ba75fddfdc3c152754e223272e81c69e0ccc24d0e7014ca0538aab5f55269c9cf38855514dcc246256bc59752010dfb93d90e55ea423964e804fc18df7654b80db5f926ba493f2e436977499ca076dfc1fec50d888ccda97726ce6ab6943854584a34cb453e487e53d2b53a5ac6cba159e42984a1ec94659fd308c688efd30434b81b9cceab4c38d6dc4aef6fa92c57b161d930988c72bc9e4aa7afb6c154d86246a038c1f5a7f61f1d2fe143a3e2a4edecbc15c1e5ee3ba7ba8d28578f3c2ca1efdfd1a4bb42dc4dbd51cebc613192f5bc916793c13da033c60c541af8081f2f386c7e15e74a5077ca8e90af63f52bf85ee4382016ea72e517478ad7b7adcf5621594832498311526be43fed6306668868ba81b8006fab6e3f3aa4f6a56cded278c2c7b9e71311bed956e7b70291a7cfe50440ec4829998ed2652ca574a710adbd0e06af61150506e11e5d374662e2f4ff370cca7c2a6eb88295ba27678fa2d6ae7a681000ab8e5ccb3f5dd4a80da7da15ae125a31d5c58101261a37d4c70351e1e562f4174590b009b9889fed5a77d2cd3cb68ac1f71d92842e19588a4ca740a547cebea848e238127175a9334adda8c8b4f53810d23b930f3b090417d6574158c685ee0702c81dcc51540b58d785065af781b88c3f51c7ca274614c0c3902bec5b47488fe16a65e014319f62f8b9dc84b5ed5b44ba46ab40dfb4699e7befa185edd14c86276f39246bb273080899ac8b2e596219f6f843218695dd0fd1f7e0b9d73d062622a28d19a9c47d5e3296343d2029692132cf150689d902e63d4ab65b3191ac7461d8656ea1d576e075f2f364414254a0c2b67c615dc6e1dc83ea765b3191ac7461d8656ea1d576e075f2f364414254a0c2b67c615dc6e1dc83ea7e13f77a41174b5c013fbf440cf3b350df238944ad50ab6ddb626e5eabc49b4563bce581706de08fa9f5ded87202b96ccdb9389df77ea23417cc25b2b2269e7a70d33871631ec4a7c51607cb8af6fd2e4da84b21ee734bb6a5b77bac45688d0f2dcf0d35e595261688e070f0e6ece99900e72753942310faa2e8f2538c9cdeccfc63eae2d3fa5ca257c73406a364e957d647e74493e9efe215e41772b9cb96627c63eae2d3fa5ca257c73406a364e957d647e74493e9efe215e41772b9cb966279bfae6e68eb447c91d5da7843aa3fecce12214403efd5daab5c6aab9649dbb8e9bfae6e68eb447c91d5da7843aa3fecce12214403efd5daab5c6aab9649dbb8e24a47a650a730974a2d37f10c6440d3635c9695a76eebe47c4de1151113148f7a791826b1d820df6fb7a92124f2865445c50df2a6b4c69da7b4a68e30790b093966530d910d206985c6e80b39fca5ffda5b25ef223680680bac7921908f29d0167d2fb2b3af02822e21c5cea4ce2a13de7c85e564a51a06d6a78c3dbd3098acd9474276f1642c1a837f55c881d905eca3f9af806bae0d7851062b8959b7cd935de60cabf8a01cc8dd94ffe11f2ab80525cf4a39300d9e73e7d3643f252256d115a15ca36645a41ef253df445f33fa9bb6bb4073e496403bac760b6ff12aaaa2aa17ec634f87bf19816a63d682029297c1fc06b0f81cba331159a444e47ae90a8b7ab43c7547a6529946056ea95665cfbed04f6f08eb170ffe2427e1d915295dfb7ab43c7547a6529946056ea95665cfbed04f6f08eb170ffe2427e1d915295df5a64ab38e7196645322d000ee4c9141ecd076e74c59f5b97eb498bca0819ff6247b40c9a286e6110fa229fbb98c4a4afa590f6b11117db5977ee1644f8ccac371aa8f652c92e07259827215d06ff5ff100a85834342ad7c5817b4d3cbc81f5e58a2dafeda9fbd877a0c36c0be5028de66b276256b29fe7fe2f3c04c9cddd2f095c6e17ebdfe2200b2585701d2e76b00118b37d7984418fe89bb928543300995f5c6e17ebdfe2200b2585701d2e76b00118b37d7984418fe89bb928543300995f0b3fa3fae96adc04d724322403be72ad8579ffd71d69320b101aba5711b0327f0b3fa3fae96adc04d724322403be72ad8579ffd71d69320b101aba5711b0327fc4e3dbaec27ffcee46db064af5be99331d1c027dfdf0eef03349e06bc283f29086e882f5032c5230742d77c17ed9ddc8e3aa60e0a28bebd60c22bdfb914fd394d7611abebdc5929f4fe4c9271433bf3dbffe3de7fb51b49b31a57f20d8d6b535d7611abebdc5929f4fe4c9271433bf3dbffe3de7fb51b49b31a57f20d8d6b5354f5c3986f589e8406e0bdd280fe20befcf6a76064b33f8f9040f28b94eb95a2c70369afb380d21ba2c2c7261c2c0edb7b60e4c4fa3cd1522e0e0df8fde5206c3a87e6911036e79f69b79157e5f3fba000f79dcc15dfd9db4cc67814f06bab74bceaabdd63011be674f5ece7cbb4b823fe0fc72dcec83ae4b7fc9d6f554187b3b652b3848e962bc81bf254c649c38d02ace196069a4c003bb2b60ca71bcffd78395f21e1f1266caa9815a4f38778cfdd37d0ea284d2057d607da548691a883f213ccd2c94105f59d03811cd098ccf8e2617a26640853d60000ef2ecbcaa4344263c58aa6d68dba1669e2efd0cd069c4e28f3fbefea1ec079dbf970dab9d55365551c675cce6655674d29646bd475c85a3b91a0e1ade88b2827bb014d3901c02e25d739cf8629b6768516a0af923916284a59a1a1f215cfd528b6918dc3f39fa5b5473ed4dd03ed9bb42bd113ee27a51b460ab02983bac1356a47499575a68f09d87cd45de6350734f1d56bfff88fdffe358b17ae974d0eb03c3d98223f061ec8f3e0cd43ec558d8344cef6c0cfa1ef8bc289c78d17fc9e681c4e03a6edfd97e60a003964d0d6aca73afec17eeb9e5e89041754e084447328e5c480728c8f9d308e6def6407412d200eaeb0b7361f695a93c668c1ce952fb10bc368fd83a8dbcb141e1e23ee9d41962ade221bc039d3181657d6f70bba96d2ec093d172d6b96c2f4973146b5b35758fb6ef6964b7148eb723a8a8b76d3ef7cd9115ea9978c1138ab1775bba601218df8aee9b3cf73edcfa49e73279d8b6e3bded7ef2f95619bf2098f219d9efd7f94464fbc2c136267269c7dc4b7122d6f813f18961c88fb40bc9c2121cf74aa2a2ac4c88bd910b2b39f97c1f0e7b439de558271e01afa5f7cc3e1682eb16a9efc497f417f9e91ce80f5117d4c864ade83c72229da29285e2f8229d1a862418eac662a2914a5504b80c3774c6c20d9fddba0236d52d19c9fdb845b326f79179f2ba1a1057a157be8cc88ee75609004269d39bd48d81b95fba022dd0da7fa210272fceddceaa81f875e1fc3f322fedede914881f7b8769105771eb1963085eab7db1dcc4a13e5f62087a2b06a222b4ff00e9c3e7977b2d9b7a24e4a3ad6d0e8455cbee5d438d42b390a3881c0b859638ba475d63a103d76c52de82025de85699e3d4fa7adb4ede5e749d468c67cd25f0b74da5ab5128599f86d97ecb81e08d680ef06c2158874d49f4e2e8cb1ec2ff56b6ac9e528c8864a6caf6d90a4287c18a0694a8db91c437df18d2a264a8c7c6e8225d329630d25537a8a56376d34ca6c58c4e4d38a4ad37a8dfe2aed073e1c5a4fb7294820ca19aa21a1d6c0fbad248106609c8520fb185e19c182a0c0742bc9ca6420123926bd08ab92d6d73d448b3d722937b8cc82f8b54c7b4d24493fda57b4810e66a81b976b90337e5e01c29ce8cdcccee489b547855b6767bb958e4db0f8ff4aaeb010d1e8ef6395b1dd97326310107a5c3a59edfb1193776566b43ee0927e7fa5752dddabe7c5f48e952262e446f18fdf5d40ea1291d6ab4e4c0045cafae1dae61ab62eeedd516e1f0c39c87c1d1b77c6cea4683711ea108ed7baedbff60896287ec2fa622586a8a72a657b49e7e187f6e3cf231290bf394bedf14b8852e93c20e85092c0b587383ab68cfce7c8b42f9f38b0f1c97e62a07f0323e8c7ce53dd4516f70c18af6f97658457cbb6726d7c4ff8fd0708c20cf69227a01aa69aa9c0ed6eee61c6e928279f45b2e6c62c79027fa68f039c591954a8a7c598e322c25a2dd5ab9ddc1a248dab81c586d60d995e0a6b0ebd21265515cfcb04d2d9333eaaade8c8de05269ebc7f63b0be232d0ab9fcc6fc58cf7d2cfbab1f50fe14bfa02c0799c817fc4225addd3a1f2a3bafb5c082494a5d6a7bb6db5389916a2914c620d8a0c641205a1e966f20c9b7a70298e8a1aacf6d521666885c3abba3d2d33266e5b9809beb2bf55a8a69e39d20090366c38bd47eb4002720d9fe1d68bf077ef302efa32a9df6de6157c0c870447f911ee8ba226184d9f4f66998846f8ad53a3ab88a19f8c550cff8799fb9c3515d8223f2239718a11718de13230c871e122095bd92712a30ca0e6d7c1aec6498529ccbdbbb28e18822244668d1d3b6d352b21caf3b436d0fbe6f9b3152198ee4f2b61ac91e8f13484da480914dad6e3622125718b1229682dbccf38ed9b594048090b022cc2779bd0d068bffb8bd3f4e882587d10f3272d5146ab0a09de70b59e0e056f8eeedbde6ef39bb1acbf8c8ead46da147c87e46c4d1aa8c4738302247bd84e2d982f8866a84bbd8af6d2be4049751f92da5754a84a732bcbc4449efec05a260ee304913cf3f4b78d6534b88bbc975f0d6908e6a25fee21e04d21a8b6d8ab2cf211ca2bd28d9b9c401eda3da61f86b5249fca28b7a3ab9a65d2845a1ae29c4d45537c1657666e4d64b400bf23db0218c1a60ccde4a7f66ba8f83cd993d3ad880644f84dbf3c2c85cf8a47437468ba82e5528dcd79a6dfdd271980e2052c3f0fb48238f03cd22de5de68d9b0fbe69a165255510d2b0914b3f9450f725f18c7d4149a5379b086c0a7f7eebb0b46bf05cbf730375a7d00a2b8fbd7e3b718529b9b586dda357b33da5d2aee86a400ac0929c044f1e59457054c0a4491e9e2fb95ff5f52b60138ab196721f0e5b60163c7e2fdaba1f4b6387e464da32cfd3dd1a06956bdd12e8ed4d3e17bb38fabb02f0db248b07ea92020e94cdebcdb41fdbe0ccad26af08a35c6e7dd38ee952fe9cc05c0a70cf220250b8d3c23450dc408e91526c9e1d9ae5f08f2fb0227a7a62db695ca6cb91354ca99167c1bf11b1bc88c087cef0573f7e95b0d4c9c5c34e19e27faa2f41b4d6a090670bf1fd9f85534f18aae27e3e3d0741316b1acc0ae6ed0d37108876abaf337424f5540ce774d123bfa0d939668ea6ea142ac0368538b627bfa824580e435d2c4919d71683bb935d0db202cab4addac8f43787c85b01aeac4bb4f16601e66322a9f5bb828859b0fe9416ddee5bd6805aae22a50031a8aca2f7b2d075743669aafa9bce67a85df9e3042363083f2737113cf92e2f47b5c9641635d577fa2e4fff7cdcd4f0efd9793aa3d4a6d6471431ea3cb1bbae3f7d87a90844a3f755f69f320327349cfd222899bd557f2771696e5f1cefe9a30cc07fabee47addc75b59a4dc4bcb8030bbeb658c6f449d25f53886ab66b18ecebaff5de9c795e5531fe5ba041357137468876478db794f9497bce3427a467d079b2d68e2c67540b4afe43cc3712056a5c8859f768c630db76373198406dff9ca97bb21c8948dbba80983a3ee95b4967ad1d5233327d7545f8da96718f187a84dc6ffb897c707dfae1dc687b8dae5fa1f1c5f31796c9d9e36650ff663159953b6817468433c4b404f810817bee44735ae64a77754646b63422263b47beb2e2dbcc017d1045eb6358a99e74bc4651be455f3331f1fb453879f0b2642ae0b3f68ecf5ed6f2dd191cbff7b91f33698cc25c0d55bb7354189eea373311f8e21a3b517e510f11e6168e2f028072b9a1a9397c0b855f2587c6185b38bb3e4840077fc9427fe139936f92265883e26388fa5fb7410b014656a6f2b61247e99cbbb46560b592a8e5609714ff4b55920212f1e38f54abf15a798c03c7fe9d2efdf7d56bf5b279c6c40d948457147442c793053d5c80bbf9c7f7faa9417827d9cbf406198c82baac4889eb6d9511c15a3f9e3e301529e667fcf97d5608957cb99b80a4eb7021de1b8f4ed6cb0b2f674496a4751bafd950f51e85a9f1dc6ee582dbab669e59b96be060f63b278dbfa80aa8f6424b1cd6be1a6f9bfbb2d37ea2893b9d0e87a7b7b7acd9d85feb5910cfc26d7732283b506c419010ecb04384f6dd8bd422d33ad69143dc265b3a03e179dc5e7b6f57e48a9fb5a6ef6da2c3339a745c876b91918d646033d071a12bea4b413faea4c27ae5162f6556d8c5c163491708bc9303387409bc84b9796102bbab659dbade0b11e002b246fbbb49431afe14cb31a5bb95b36146ccd418d982471b21ff48f385e4cafdbdca9a17f38df702e0cf7c8b60662d2d1b6e30680b00c6d3be576fd71465004b97c4c34abe0917f83d94056e953ecdba550f33d01e48b156c0a8a55f8bd1d8220238bf3002e3b03f696f8bfd3718d33e5cc061ba537eb74b461967e19e48f1b234076730a4a6103a0e429f576d3493953a8a90445dfd9823ffcf42e6bbbe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8558aae24bb8a0f3c4c45e0b08acae223aba73007d37d59e2d99531de7baeb07444d812e2bb1345e82193e732f2b3e2727e4819a91fdb6a5f565383a703c9cb9970f2cd8b4f8cb9a509f37e5117c4bd1abb3edf029c991ef2d4ed9f1caff7ef65885672fafb2df77b772b199369b7ef54e47a4d47baa3c7079d3c793e736dc7ae07f00cbb8511e446f56e937724a45add7efb132c4b2394b5507a69d22d2f5033dd3a0b6414d267e9e206c74b0fa859029f68c10bd0f9ba3008af7db217c7f985289471d8a0d9d3443c10d5a93248fb94dbc16f934e3527ec62f334b4e035312438464e9a54d54afb8aee9426040a552f51a9b3353877a4512488786dfd42819dbb5d554573e36a9e74cf63ce6e94f62331b1ac39fe0b208b7523ce613bcabc45b30ceb827a4671129dc80958a42e8d25a980131b7e30985f92d30a35d2d6a49dc3c3c3ff6aba8f625c2ff95f6e23759fba34d3a2e7000d76ad879e026a6005e3a2d685d1958c318b8814518c7d1e7ec9387435d6114e4a17a1ef1884a7c9141a4111460ddb45b8a105f6875391096a7cea92f945de88db8f876128cdd023ad3a3e740694ca066ec641f4df4904e71b9f9a350de5e9ef97eef4416cadb62e2c05df56f23e9d5d525c52dd1777afc4e308e9b86e65ea71e84c5a2fff7a213a6deed3d9d982c52f14f3ba3ac84b9b6a8115d21408a6072ca28e747d940bb42b98ed19f31c1017d50cea686cd2581565d7ef4336356643004913ad9fa8c244c2fd1c48f31c1017d50cea686cd2581565d7ef4336356643004913ad9fa8c244c2fd1c48839c73802fd0ec3098868eca078c5d6dc17a2143f482ceabdaff0343b50d6f370e41585d1df60c800e0cad70d8bc531c136f2e1ac7ef114c62f8ec9fc7a3c1c3662b95e321a67d26753e45f4c0d9408b2cad4e38d201623094b021c1bc05bd79662b95e321a67d26753e45f4c0d9408b2cad4e38d201623094b021c1bc05bd7962e89369d2c5dda0b98e2950d860ed0c71da573e4b7acfd3e52ff8c460e12a61a5b215404248b75d3f8aa2af2031ed23ebb938221f6b41342c199158d4d49c77b82daf835e9f89552d06c2c4af1a0c9a65ecee33f244276521ba2eeeadc659b14869d5564c879e94e866136be72dd5832244fb27805e27b08c7e748da745bbdb7758e5f7b1818dcd49af378a04c0c1eba7ebc691843b63b366aa3943f7e1349454970ca79874cbfc38b83faca095bd685fa0c0acdf24a25ce099f93d07a78ef3e02a4b7b5ad38561097de721eab09a5f011d05420836466040efcff47ae4915126bdd3c43a34f1233ca98ab7404e76a32ac4206914e2c55b54603300ae472426b2e3b9a862f55f2a210aaf091fe75b39815482c8c79d437023e1ff0d139c6a0fb2e3b9a862f55f2a210aaf091fe75b39815482c8c79d437023e1ff0d139c6a0fe9def3dc89f0df3db677af50809ae7dac02d76600d4ae0c0606ec34336c7dff5e9def3dc89f0df3db677af50809ae7dac02d76600d4ae0c0606ec34336c7dff59d05e94bcd1438927dac297b9d5f50e3e6451481c4e620345fda2e70cb1a6da09d05e94bcd1438927dac297b9d5f50e3e6451481c4e620345fda2e70cb1a6da0d08b527ebabe24b5ae9de14b5024d006a0f254ede2e6c09e73a10a510339f5fcd08b527ebabe24b5ae9de14b5024d006a0f254ede2e6c09e73a10a510339f5fce15cb391157a399c845a14bc01045f5a19e85f20892f51a2eedccbbb7af48e88f11886c8928e5acb0032730ec82d807a6bce3a9cda0298f2b4d31bf1a827231e64b8d4818d699b50a9938f152139df16cef0e45bb8277eec965851d72e3c2a35c1be4ce0020632c5336fcc6cf35231f4c4dd50dfc0ce75ff0a4ec935aa146ba2ce0c612fc6cc40bb5290c9263d72bb0a5881e8f358cf4ee83089b8f984d2e02f1d0dd14b9fd3febb4f822cbeb6d03eba69efa7ca3066634d67d0d65d74e4a5cc9a8282dbe5e1b3680fd21be5d519a2f20eb5412fc9ac52e96b56db76d15f2bb22899628da498abf3b7093969c51cb6a83bd1467e2f25591dd266b0cd0455797fe285aac7df549a7ed53a916da7cb43246f836236a1db4d77cf858465d8096544e285aac7df549a7ed53a916da7cb43246f836236a1db4d77cf858465d80965447859df5a8b4198474b1ccd8d70452954caec46b961ecda18521f7f0e6457893109c5890e099b42bba7d6bda22529d863a9e75a32ac899f10c49af5311c83fef02a4d38e9f564788181a8973275b8a431aaacf984196cc1a22a4373ac9b5cf08c6babaa0d8680bde0cc93bdd900ae2ad83d469331f21269ce804f75162e419ec0a5701968d7dac9909733107b20316bd85f078b4ebf870141dc65e337363bb0134cf3dd5220872c46aec11008675634bb1b481b3cf9573e5e179119b0fddd19176b51b4ed142d66f12d5c79726f17437284cf3379ea31b74e34d8f3733e471ad1cfe5a2841aa071e6e186490aea372e5c4dfee22df84425c996a79f177a9a3a0d571943734e4310a6b50c9ea518f31bcae142f171d38e6fa9bef8b0f74a612e95640a258d1dffb1a6841af366bf566391ca7e529f76e6dea51f41876cf03364fe41624b6d887bcb0cb6c254569db5101bf86a96feb37e86c5e68e852a1eeb7960414be7a035a59ae386123c5787fb971cca129a83e2fe749e87e12decc4a87de8f4b8f5e2a50735c2fa41f9e3600a2622fea45fb743a75406faf4e395497c0554a6327d472a379500f32929bdb058047dd60bcb401bc9dec35974444c63254cf4fe2012e5b03656ad8e218ba6c73c8cb06ff1977c00210bebc4192e7a0ca650748565cb585f03663e9b58cfd547cf9ecf5b60448cbec688119ffa0d6d49d70381ef277e22810c84806395c24a228852c0caaecc74ba73d7e4228d9c720f4f6a170063c41e980c8ce00f8cf2c9229293ccf38d1f331794e6a1b7034792ecd4870f7a3fa488493bc932b1941c0bc250a8e83480f199687ec2c2d572407ed6ed32de7a3fa488493bc932b1941c0bc250a8e83480f199687ec2c2d572407ed6ed32ded9f411d0dc43878afcaf1186ac86a169d197439b2c41bda734fba10b53bd4b440c111d85e9767f98b4f7ba476b965371cc7219fd2b29f857b493f81a235b3ff474495c3d4d926f14eedc4e481a3fd2d7c5b8b445cc908d0024d133f1777c7f9e897018d20526722212fc5bc7e552708507cafb4b4399a1f6bdc0cb1c7172c4818d5fb36fd956428957700f72e40313550897899345fcdd618757ffde82f29612db66558e797a5b0c6042ea83c8b4a985b28746e9b4a5ae94c99cd8e31500d65e71bbc66a78bcbc2c3b56dfa08ecfbe33e3eacaf26ff881fc728fe34b363439efb3d5198a0044814bc74b820e76df235e1b19df73bd8f5f69ee589ea1bd51f846a987fb663998fbc4d4e201d82fbb7c81538f4da81a0750f035f13fc0877048dc51c24e18c613d5df86d0f8db0b90724a1165e68ca8ac547c877f1f16dd2e63db7041b536568b0a38c47fbe1b19e674c1d9a8c1fb632f45a82fd4d801e2464902a5968dd715e707cbbb55facc829ea3aa2fe309a278c78b7411cb3ba99ff6c7eee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8553599d7bdd8bb68923904c1e5de01d5fe8770f5ee88e9a3ff4de6f30ddfc5ba9312ae7eaf7712be76971150449f9c9b0c2e8b9a1b333beeebfbaf0adb64ccb3ba835f67b8450e0b8aea34c4a63663520812bdf103e8c8a772bb1cf17e467069788ae5f7911a6b8ff56e6ee1ecf80427670a522d684dd6075fefa0e1c92f3c510e634a81d126537911be4b38f6def08a722db9f2a5d38c41c76fc03c7307c4ef9ea356f85158f2e64fd5895ca034e773f941107d10ca9d58c5b94be3551fdc4d14146500f401a0e2e24694150fcd9ae117448f92ff8bcc7195156b3e77114ce34d97a20cee36ebfe0498b558b6b3b31da55d54440fd5b379ea00020a43e2ac660a63602e21cf297efcddc1679c57b79d26292b8df5b36398a8f7267d4cae8ee17e1e5a0501c0a3de3456c7b2ebcf52995a49631972cf19e7b1f83804a8d8232806f2adff1bff6bda19753eac334b542d44c4cd391750245462636f710e80c467ebc885fb29c8a4b335aa24c3c95791e432f702de0d7d710518680a4c248d1ab516b484311dbabc2992e668c4be6b2bb22f1b17cb2e0c3b1f06873a364768153883b484311dbabc2992e668c4be6b2bb22f1b17cb2e0c3b1f06873a36476815388338c372da650c3b5b4b89df24bd8159deb3587628ef475d1c8ccb6b36edb514469e6c036f5a938f97c735259974b57097f0b28e56ce8cceab5034a5f3034b714339fb806a30c32480c89f2fb332e1ac7e1a822d9af8c7c6d99d5e53a276e0d34164dc3f62156ce1362b27bd3be60e96c1a8a20894519b2d1fa53fcba04315dd6cfa512b57646f68d3ee380d33e1ce385a6352bbd8ab0b0fc30dbef03e0092d816797961e6725577a3685df52327e98d1a09b9a04f2be8c60304e2075d67734cfc44d76bc0c823b7d6fd2e672475191a6180b83c2ccd57ed478b64f707630781dbaca9b525116bcd88ad93979ab586664f188e71aea1e5b41d5568d05d48060b16cb156fdc996c835a56b9103a3927a6293df4e57ab91273de05b163dd07af92c1ed76a294a57f3bd52d88cf6782d527ce8d6ccf291c3b81b67f29c3b106611aad931ed68138e5b142f3155dead2b22970fa9c7fc123f7038380e5c488c7461373335ffa12fdeed62a4313fb0de60a1b433896f0430aaa2dcab985be019f43d65e335ffa12fdeed62a4313fb0de60a1b433896f0430aaa2dcab985be019f43d65e52526ccf99d5b19c2562d2f501314acfa3ea112b0f67537f649d964d14f69af6af7568e9fc825809e0c9f23c856b2b3a6b3d4ab8ff96fcc87e81dc765c053023438b3e640c79c55f2e7b69717d584eb5043362e6b0bb7aa10f3d0ee538682dd3eb679a4de365ffa55c1e3c32680dbcbdc8e658cf9610a32715dabedc63abf0b92a10cc62ba938a805c65ad0559e31d25e9495a6378eccd8a59f4bbcbbf082d5ca9ed495d944b0a73103bcbbcf7655903cd2ef762015e74eafab57409cbcc29affacdedcb4bffa3ef11abcfe7ad8877d95a3a8a1afc39a49675cfc7eff095182aa5a29c91eb1e47a4a115579d50c37bc1974da641bcf71714689063fe532ea19de771e064575ccc2cd5625f215502dacbd440d0aa9c5411adc8a1b4bb6af94befdb23f4a63917281af40b4400e714bc27177d9c7cfd553e6ea0d212e7d282e0ace3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85532f6fba8fa707793ecdd5a5b7a15cd1212ef773ea35936c07bb58b0f91a2ece3ba4d858a4a5226d49375a2cc4e744ff00a23fe1b691c9e777a36d3163caab88d40eb3dea38e61ac8b08192242a69656e4d679ea45a84332ed1e1d59e787f63f43b21278fb09e0301ec317c5f38ec9358a657706a3cb7dc68f4c84d3661f0f7884df598be3a4c259524752a66fe125d5f1b4b91838969014a547e81a078c2ed97a5c8fd9311dbdcd9c8983635d789566a2fd2a5fb75cfbf1ba90c625a775cf54d1393715ee81fe015fdc590b85f39b92ceacaaec6f7b3c0f7f6eff374180df8770fd04688e4c924a4a3d12ee6eb933b436b588e5d91fb69806553aa4c54c5d9f68f99bb49a1bcc2df07a421b41ff7ecacd655234feed133bfa6863dab047ee477cfab0b1839e41ee93541d661ec8c9cb77636c1a816ad1cae084150fd2d9f7a9d090a6a99e1d41d4e920f2424535f69d4b3fcc7cd2d68ea12e7335ab31a2960271f4bbdaa471208685f91bad213d228d77edc34805f10ce586847f042a568284cfc38dc404830f8cfb633dd0cd2bf57106583376bfc5209ee45a290ea580b21dfb7c67c7ce24387ae195e6aa9482aa576cf8e29bd82e459dc426a82b2d7c62263cb00b2f540eedbf01023ad02856c46c72a87899a18c0c282dd3557267fd954831099ddf654d7a39645be682b033bf6c075fc6fced234f3b7b03181dd4a1f55ed89e89f868301daf78abac451059590a7a8a03eb8b9d36ed5aea7dd74ee5bf9651d475d55e7665c660425710e133e85203d4975153b1fb130a7842464cf3bb45d1d475d55e7665c660425710e133e85203d4975153b1fb130a7842464cf3bb45d7f42f72179539b33788cc4fb716359335ffa8abf14c24bf39358c9fa7fdeec68b5abf121c46594cbc0ec22982e6787d4e37543a42bab547b86e02c1776026f67696703eef038796ad19a3224868f981b16eb542dda9c54f31dafcdffb49db3ae2e0a3587ac2dc940e112eae80d1cadf9e62f3c512040ea347f17c013af12d9c39c8d0c5b8f815501f00b062a816c5aecc84bf4ec589b0612209729e6a7bf9fd62f4b98a2557f21148f9cbf0cd642dc2464305e71aee0a0d7729bea9593bb8627e27f2af71c27d27a9a0a3f9105b66573567f09f67fed089c85fa1423d02ef8b467f7457b49b2e7da2707d8c1216a5d2801196ddaa98318f3ac2090d3587d0c28740b814ca1d1513348485967fd471a6db84f6ebe1db8bb44c319946da96e3f2875c1caec62d06909f385abf5f6b07aace0760549610f0a70b5f38e69e276b571009f9714eb720e1162baabcaa5276d8c43a6c9781ded7183d4f76e41a451d39dd510637f19471535ed100cae03698b93a7213c5fefc7f1e00e6875896a087f94b9ddb286da0e03a24209ef9bddede6f0507893421151a473768947c48198d1da750e8a61fcdc3ab7f98f01a73922d3203d4192cd86f1ac09a0899c073b440a858908b54e40fa9261de761c5603ad3ff3351f61cb589c0eef1743f42e3fa0f000595bb289742504e7131a1e3e9c776f9cb11e9b746db7545a2a1fb9345ad431cb7d79250d629046a03ccad7033f5f5316f646382693f186e1df45f13b1844a44b64b7108b1135db369b9dd72d429b5783bbb3748fd70fb1a8dab4f2516b83289e14077819c3632b90dbd893369cfa211e26a974b2943d87fabbbffb23c07f6705b325c2143c7e3973a39400c497ae0dbb9ef59cbbc5aaae24dbd69fa60db873b53337d461c17ab075d97ad17a0334a61cd3f7fafa4a0794ba0dbd13ac70a21850331c92f793e13ec6a7d7f0922334eba22fd653006a0c4e6d59f3c3410644c772612a66a84e7f82641c80fa4d828667c20bc5bc7cc8e27bd8a431102e71b1f57fb27c8194b4c41cdac582d6b8a20fa7b854e2f965fad5f896aa28383d019285fe91eb44aa9df8c2038b4df17bb8261213a9c42071fcaa59f398184b0caaedd00b1096202f45709bc0db87932f3c9a9dfef8dbd671dc2ea0d71bfaf730edfe845efecdb3f47731ec601a8f2c3994b076bc1101610855cc681f987eddd48ee8d865ccb687106fa7bc7586c27fbffe4f2db641a3243db30e606d7b951f07a19fc182b72c58fefed51a6b82a886eee836f6cfa8a52840a97f9eee16a9a4ff8be3a86918cdcb45c57a86d861731498d8136026f1976e00f07099b4097b6a181bf2786557fc29314e026a30e6462fc7704ee5490fc09a08cf4521341d77de35f38eaf1f9a259d282e0b171e6c843a93fa18ad5caccf380a4da87d2534669bcf583c740440fbd36f449b73421862a6834c00aa51a8653da3fcb44fd54c41b794398ebeff9d2be30d12808c9826d5b7edadd28a5e8ec30b8f09b321b43b9f22818c4aa241b93199552d1711d69e18ec1b064048627797ea866b7f3f80c92c86d21724a917995e09780c9b2c5efe6d1fe5505646f20ef4282fbd259814d1d474eb5d96000a283176d47d01ef4859bc971476e3e7a80803325546e5fcb3998ac770e19c0353f1ab560b5c511056962fdfc3192a795566db158062584db36a556fb61ecbcfa0732413292c0cc55441dd8abe0eb861fdf8cc3535ce5487d2258c2b2b51c0479150a41fed985baaf14d65222655a5fa60ff97a515dc0f70cf67f0db2911b4e24685eed77a540aa140df9e0ed35c9e1fb16c31c5d3ef5565b9682addcf47153c0fc816b4a738533251a0b9c922de8f36b04d3237a65f55900c65a33f2e0ab040729ac11141ada629064366f53e670b9108feaa973b833f9192369fbc6989364129ff6eec5d657243a622a836e78160e2e56a9a8d5dedfec4be29ef2c9d8673b1aee7db5c59e7cb13fcdf8237d1a6d4767e5ae6853233411d7944a9461fbcf7a6ed63f1561a6e316da334bbc1f097d1d07f6a29919cde075e0ab1b6fc8f52cc99fc48c65660577197a42ab0ab60fbdafb8ccaed7fafa2509c986ce3990277a860ac61e8c7a356af688584e2bd10d9002bb5e351323fe1c57b5adc0ad889bfcebb54c339d61f1b8324e1c8b4e0fb1b2bddae5018f19ba70cee80a23f2f83a0e16435ded2c78acfeb865290e7e6914f75e92720313db82a96a7d5f609e54db99e9a35c0ec1487985d5dde1c22fb3989dc4e0a3182d8c25097ae3f58e6b8c09a25f515cfcbca48c8ce5a7d1ad47fcbf62a5947b471c3c15466a3a4c23be15cd7d3ada9072433e24bd34fb50b8fe79b2606a8a4fbb346e28fe1e8d4b5bf83dcbd377ae11e9787f68b8ada6e6472b7dc6f4bd14b0daad4b7a1b2e89c41f1ae4f58e772583e900562aeac19bcddfad14d8befb7ecb2c3fa123f03a282c382790c1e67943a80e5d012ed0f046def0fb0ffb13ef2d00a9fad77c003853eaac6c0acd3ae8c12e588322088409f5fc26b9ab74a1d82c75c8bb1086b64aeadd1a41d015b5d09da7c2ead62a68acc2ba8ee022ac9e9cdb28c6f4be852c82f05024a9421a76bbffc5a3adb9ac1f26eb6af3b4a8f00b555c8146c9104e54627a686c87eb9de4cbf1576be72cde53e1da2e54c555a25e4639b9f6e66e2588dd42a16f1403e858d4838141d0497046aad635494e99e36ea76d470b63150b144e6eb4731bff14276595c58d9200d54d1d4169c6953e7543b1c75d2c591f01410d7c005d47a7a7bb80ad35f6774cb5664b50776f41c601267a20bce8e2141a056b97fe3574ebb12721d7dd008f8b49592c56f0b6e7e446d793d3f235b4c307dcc838ae3f6b8934f8d0584a4a8ac823a5859407a184f958fd53fc1d5b334602b0486131747d7c2f2a12974e671a4f8d18983889aa75f7598e26088da4b823677f10c2aff9a24b58cf9f1cb0e73c830cb007f637eca5d23ec920baf5186bc9373022dc0e10b22dcffb71c4e6feaa2ab3c7fc290540da435720c9b33957f12887f749b5edd3327e3eb854e97a7ee1318dbe38426361199751eb569c54e57d28ddc13805824fd36bb7c79f8c3fa5bccdd7452a2e5b6f5bd66ddb8619e8e1380a23d4d42360cac416df77574206ca70108b2f7f58233f31af46041b2496589c71cd0ea982644b66fd85c42c54a438ace094d1ac61ff3ed4e0c49419d6b7f67ba392d3e50546aa5557c4e64321b87f48fc3c61a399390e01c3b042466b3d2bba9b7d8e5bc83ccb6e2b032cdb5b0d40bb37982e99d886ecddaaa6dd91482e2296654fb91b6e93daacd605db6d10611845f5a3e0222f7246f7407b3e5082b61466ad1f16c2a6c75750ed5b49bbc77b3cfb60f6a6e1679a651c6d191c5eba3c875084e1c02160effcfeb6230a1c15d8d4d32fd18d973b45a7b845aef5259767b998ce558471029d4819ee1a61269b67e3bc066f539f52cdbfa31c848d5d2d9e270cb108d49f51466dba3e040412f7957d86961e3e2bf421d7fedbad66615a661c6b43155035d22c9df11fb1e1d2a9775ba6642f72066facfccd0423b11a7a8242e10ab8abcb39958ff040ae370f95e96be2fb652ffe20561c92548971834d64558df9d4da5335f86eb625cf2c435822442e95008edd37e85667f3b8500225786f0cf7ad79478d1d994ad901f6c33898e4f1854bfbb8d848f5861cfb212104df61bd6d114297892600aea3fba2f27642d35cba87fce0d6016e77cb65defdb7402cfc438d33a132dcaf025bed37ef46b23b1f79733215d44820a9e8c4d5f32d862b09f21e40a783b0e094d91579598bd8602a63720fba4925b141385f590bef33e10d2a61c2c93d7f30b0b808ccb27be9312bf816c965d9329b22c61f8d7f3e734e9c0e4410c4bc374787f5b2b3b6c12bdf4379ac9419d2e1e8cb20568611aa444e1f2b4ef7d3b9438afa436a97004b7086f2b66e48699d682a1f30f091bfe441956f02ca699235fe3dfecfc706cafd120ad66bc634b3e09c0c8d002b3746c5cf22d9116f844a726f596103d99339f53dc0cb380169f43a83c4aff86eeb146d5861a7e0247908106f8b6fd37902e97f836e20f93a14e2a7fc7caf0f478a6cc50431e94d5e7db4dea6642c5843c787ddd9b273848781343f47436c96434d06fc487a6266f32730b359add1fbe83ce5f7313c5b086c64c816e43ffc657b602cfe6a7231bea8297ebc9a96b0932d351f1553deb416b857d97cb59b9ca157669d3706db2c46997579ce080602ce818f226b3e292dcceee63e77fd910937741b1ad6fdb3504f7248b033e0785f2f4512699f7d94f2fc2f752db237950f180c4a707abb8c7c05ca68077c219b34dca0e67b211a3ced568e1956f6034bc11337fcc314dc80129d27bab2bf969334326b75b812968eaeb58f136d6476aba16f6f8d17b055fffc0987655f597c99db21287b3c0623ccd4a97d1644cbaa404f0172ae93fd218db8be92d9cbdb5619e94649e2868a4aacb12b4509add78bdfb1d11077638850517ab0d6f0305e71fe71cf2fb90a272baf16bdb7ef694678af430f84b5ba5c30a805eeb0491cdc0a24ed96eeebe58c1a6d2f3e4eb0fca45d0c7f8f8fc1c515f539647129b46c75fbc6146d218bab81a432b1377b9c035adbe698659b637929efaa37e49ac8816aca0c37516a9ac450c482b9bc7163e5f3dae242b03fcddc69b83dc1f47ff19fae3ef83a96abd2620950b6024897512ac394c03114a91a3f17430501f40a876de180d6008e13a3f1f7e94ca5ee9d7351364b50532b509226e6ec5c235473295cd49bb28f40a3657d2ff251c01af0343cb99e992c0e88b55308e72f8d2f19611e246edc7b333b129e74cadfc33d72bd7bd4e033766713643c5139c1a8d07111196ceefa9af3a8fc62ec450550db06687e4f0228e6449df0962df6d0ed2ee2c9a940cbf128b693afe694e6b9dac12cd529ff03508c0f5eaf0be9870c0c3f083d9d65c189a2501c142e3a5fc5441f6837943e2b25556cd32c9cb8a89cc0581557f1ec25ffad26fd2e6839a84c418d782f39681f7956696e566bfc3fc6b3e6602ff8fa692de736e3952c98d3c835877829193adb7fa403b735dde9045abc5bae189d64e4cd415582652c3d35546d6e1e69bd2fdd234ee4145d35c77a6c65f1699e2d864c4e7eae92ec3c3e595771c264825a4c7add87746fe15713c7500e53f727bbc3744db576d13aacf6675d7b6cbe40cdb67d730c7512fa03c0c8a1f8212198a1441c660b6c371d9332de3548b67fcb4874a9dcb37c75a1612933bb67bb4837acf274f31efa6f91d778d0f7c9ff4c18ac7bf013683781a43671c5c1ca3a7a706563f1b4c1fd3b1443f17310ba66c3b700d938e558ebab0e38390b8e2ca01ccc111798b00c2d7fed1a5d30f11c9f80981f33fbe2f2dcab7f8a7c1e2305151025d68015efba36886c3e64694fdb47ecbafd1faa19db7561be6221e20e9f2d34f8dd56e211737c22136d271b01aac14ddd332440eed96e5ec8fe7f2c9680f9db3c5e2e08aae73607e0ecb2fe0d39ce8b0123d61270fee746e8566e4ca266968584d86d08732c23f26c675da9af1c0992af4f76677d9ade4bde66536bba29f7cd67b6b48429aaa7d64de5cf2d352f7907783f8ba927c4fbe9a91639c61a479e9ea3926acf2cf88f3655fa70fe80a2889a99dde907e6543a6ac172c09b697c11ec123e8bd402339b5663daf8d8eb1f3322cd07a04f7f6e6b2d3e9bf53f7c2611a7649748d35bd7adb36f89bdc0f798dd9350b0d9f5458807919f668dbb4a56125020a9375a5208ea5ff6042f03cc5fb4e6f3b022314d7b96b441e5206581491f09032eac5859f14d605ddfc3336a9a156e846864dca883a5da0b1e3d9a4ad3f49ab43c96d60c0163dfd3d57bc8bc60543f6d2469000460de8d1cca95a05d5360e0b250129693f8cb9eb818bcd410beb6c6803835dc747ab06f58e0d6091bd167a351a20e192c0fb5ac6c49c62cd8673a011d9272c26f3e3d71a4761d0cf7696debdab55e57b3ea94f7ea35f232e9699940051a63007048e966f916b82d6100a0622a90279a40e4b8284bab2ffb09cee5954a10c80025a8530f592887ee3c6e1b065f5daaf674fe7595e5892f8016d2998c384d85769709398d0e513e8096e35b209998e329aab13af24418ff185f7f5531a8a18ed7020ff5243683a3825aca017678af79f3b0d12aca917faaef22c6b805b29ff6edd48ab24a51d0e9b2f4513a9d0c3d437662c09c1a75b2bfb684a6cd753c039d0d7fe9e69cd1f08acae282da19a97a3551d84ef8a61a1795d50df51d4937c2cf4a0a7b9be6156e7c2bc70e6eeb0bbdfe7dfd4f9bd09a578c650b44e4268c1e4c9d52215a0a76998f2135b4f3c59b30d7412d3033e770dab8dfb0341c8eafb10c1bfe995dadeeb16988ec313a4b1698842262647421aeb310668013c0440015a728f81bbecd8eb5009be5400e2d5a02dd7f200df65de26c36dd8fcf092dcfd15fe62ee5342bc7aa3983d696035020a3a6c1a83810df6e151e4268c28e8eec8d542963c641404bea53ca3956d241e71a4efe1e149a22846ae600e36b16c952e948f2e67d030fcdf9fe4e6628cf49c18afb503ad936c8d7d79a86eea5878ee2ffa0bff6cb28080857808debf278a1d5a7d75c44edba0bf108ed7eb44d9f2ddf24fa552b1af049be5ae03753c6f8619c68e5969c5321aae86f3dd0d1f98d0c9e176ede1f3e85484dd13de92c3436ca97df378ec3481e04c19a73230156236f768b0d81e58a3e5bd3bd79ce294cf9ef0ba0a84cf7b869c89ebd9fd8437819eab5dd7ce5c7fe325cccb00507b5340c4d00370165e547089e42efcd1c3dcda5c54a505491280e77d108bfeb898d931de4aab8082875330dfd11fe522d3593a6b0ef2d4fdd85353b5b4c189c5fcd4fe14134aff9cbbe6452f05283b42ff3b3f84784e1e4f11d23a9a9497d9bf95bd60b474259c28b979543556f80fbd268dcf9d3859652fc46e298d80084b67ff3ce6fd8260581448aacbcc89cabe97e7dd340a295ae483a8e55a540edac1f110d1b4e20f5acaeba13006b1ce2850b3da503c266444539d95a7d5f9a495906baacb08ccc66275038b9546e98af90980eaa1346c88a035f26c96b5500c659957b6245c11b7fa1c0e823b2e221cf242b74e90558595265f60b8b11a020d13af403b90bf98153a4d1a1719b5a69e9b7c0e98cc31d5b08eb70d00709aec631ae1981c9c5b807755a1ef7e03c61eb9e91cab05531bd7c326d478a7ded8078e7c6b7cf49be0fe18da6bdf87607d579672f577e99c0e299e448fc12b8df6449d63814f5f56813c79532aba8f46e2d50afa56ef44f2e158ad77e76dabb225200676e00a4e7bff20d211baad5d8d50672f124500c21c5abe004f51b786c120250eacb5c168042ccb50b3d3d01342d4cc5cdc06c60c246ba8a277704eec3d3779368bf4d2cccb07752c66f861208958c970a5863306d28824d30f3108ae4d151bd8656b1583df78c905bc6524a737d0723f6198aa891da97ded68d83eae5da5a1608c88d74e048b03284a1ff142f94009a9368dd7cb50616836a38492bab208bf5a80a98af9ee9c4710cf7b3f60fe92d1cc79718652e9c31e04e5920bb9497fbfadbc2bbbb09bd78afbd69ff9da61a0935780e1883f3f60b78620e7a661a4968d7562179b4aeb12e16044354913705245745707823949c069bd5757195491c1d1d21a593385b317868b9e46cfa2b60fb372de2e59e2acc395f0ab29282a8b379269649209b74c5eeef05aea6759823627d672d093883ed94ae8899259fa773c2bb3d0a6497b7a9ddfab9152b574e43b62fbaafa33e230fd68f9ca6ebf50bc2e9b073cf39da157927776af25e8506d94c805f1573ef747a332671024002f6b9a031d97d516d57c3df270702009f9566faef7553f83d02df7e3d857a441b03fc7ebcb0f23033a36cb19711d496878cc802eb172c4488e106c908aae9ceb2dc37cfd1029cb3e363795ee425771a46ec6629a08481629f64c024f0bf0acc202a0ad77ff2614f65f26264ff9379ffdd5ba8c166e7a6b0bb157d8732eba58e285713e2f7f2ff291abc4b7c7c53fee53cd435d47482ce6c61e6728ccd47d96a1a688d73223d42a008dc66ac2107e4b962ba2e6139d80d809924ae4f6a4333beb73007d18611e10b7219001fca2bbf250f2f22fd3e29cbc18a540b71688ad5bcc0af0e9ed1380e5c0dee2aae0c7f412d145fe6e06d6b79062ceeb398bf23b70b3653367acb04c7ffc07b836bb4f949dd6a370307d325ba5008980d9108dc1ff88f43977727e28b8f6b20341e696a6af872810ba27958d0ffec63f7a34d5f49be52f8f2f5a5c47750b418af304265869f77cd4bacb8e1d2f51c1e192a146f01149a2223a56507b3acb65d3d2b560c5915c19cc46c0b2a1e2fd4b5ef399f956214227da549c8a84d9d097538c00a3d131de5748ad8508105aec9372949fb80fde72de8c137fd63b156255ca9fea3689043343ea5964115590ba0c1f2c289b56ec2e8c8b107ac65f8b199a944f1191058c8e14d50001ece4be9e8289ac927ecb538b5b4f49facf70aa0cd808b86aeffe4df53b325c377806fdeeaa7d3d66f97123616d441d63ea792386df4f18b57702e47256ba7d4bd7cccdb706365d76a718a50c6e235583927289203aedf0c46df9651fe25d90a926dfeeb5a2ed04d31298be870882e78b3975c6549aaf266e5646c568163549184f54a035b2c819367f0beb7dd76860fc9812f596493b1e066b30d2a86365641e850ce597a42668192dd050f0db463b39f9ebe8fd8a7de6bf91241959a00fc4b7c13c20a7ae87ffd5b34ce490f61450084a984cc450faba94690e8e8c66704d426288f32d81df1c9d8b8996a40fd7c0e8a54e1a31a38eb69fcc42c96b76306d92cb664ebdcd8f1a45767b662c83b2e8b37a9ac5a1130dd8f9a9f45ac9cebb6a1f6befb70ad9e878f74568613823d1db6933d685215acdbed1f9f6cc43a273e2437499eb4b284afb5e356ece345d1b5a9f56305654611d5216369a0f730fa8dff50f153f2c58d231aa31509c408cfaad05a86047314f14a977df62e9eb803b56177cf561df5b93c5320301afb2eb7ed10c178d5e517b64e6039661368f773cb4af5cb831c4fa2b87780c3c56f2add0b1aa6ba752d7a295bce95b6487ed71a2aaa640f1d532320683311f8ccd9c71702a53b87909369aef1ac415fa050ecd54c3b2d351132d8cc877fc12ce233cd5d506546d6c5ee26370564987177d36bbac09922dd2213952879290a9d797ad3be75849fc6efce7a93c62191f307347d84031e5e150b05dd834f2f8eb25ba2ab632aaf39801eac40090e472b56b604c406a575b665d3fcf64831db1d1abc3115e850b8564208aa78d25dee64a1f959cbd752cb43bb192ed1782aca3a5e185c52fd576b96867e811e24a57bf48234bb9f713742b530394e9ba6e1329f569f9b61b19121b49d3f3cb64da97fb44991124d0d8899024d1c33e5d08bc07c01a6a81d0ff53f059fa54791dfd99585770ecdd64b75896bb213f1ea0778a99a45af525706854ad2dae9b0481a1381f51eb2853bb316759abc72a06acad9a8b49ce82b1a78935746a404219087ed726379d59e0e739f0b772b2b691187fb778c86ac5f5840a46f1b9def632fb05ee06848c88bc2f437ab4b83f41ace6147513958f5ac4af65ec402489f1071281ddcd94574ed7a7d31a42a081fecff87b94b1f0c1bb2dc6a16b222ece8cd3c3d26f46721f1195fe8d436b04032abd5a413369c5f30812e8217d0f1ebc0c099355e936b1e3654a87f7e7e80b0692dec5bd7c70286a936b6fba34da42e5be7e2dc5c718b7d4d2e1472b2b5d8691acae0d91a86ee8384e1a94846418bce53d4face0ca56d4ff75338d7e7bb0988c4302e2854b350a32f1d83aea351757494fca372392edd6750b2425a510f4661230d9b0a47da3e0ca24a31f6ee82493db9333c1e82a10ffd6785d75b28a8991f41432039bca18d26e1a0a54391fbc6f801cdab104ea4b47273412ab1f9011782abbe122cc045932acfe884fae841061fc36b82f5984344640a66be726ba3416a95da41452b4dd22c583dbc7a2178d067aefd597e83d7dbc3ecb61ccfb533b1de04034fc87b3f26bc46b1a28b0785597106415949d9a05361860056766f6af0669f19341d664223cc1aa013ee19e0f1fc2cf4b4a45750e5efad4dbc3f847db13a4dfe95fcb2b67b080d13b9203a10aad94879b228dea22bdc7ef2f7807c2f0d0ec36e9b4130cb1d819546b7b5a897bfb79a8fec22274e91af6a860e10038793eaa52cebe7ee7bc59e26f7dee82cefc24f8dfcaa62a50a083e9e713f3f3ef7f06a063e399f94641b7a23a49c9fa0d9f7e1ae5f4b29ee66e754b145c217220620100d4d76a30c548df3a4752d6dfa9fdd5cb3df96159db0dfebfe70603d814a2e437165fac13a3e6ae48366b993d289256ddf11090cbf76f64bd24ebdeaf0c66277b444154afaec98cfff201abde2044587dbc108bacfc7cb024702895452775ae05882bb102ad8f1379e65b0528a359ac29f47865bd132e89b7a670014c9ca1c33b1a5f42d9014de32a68a0ea1ba4991eeedf9f9a9cd81d487f012dc5c08b60e8df79c5c012fc97328ddae9c43d626a22b4329aea4cba9543447e360d5b29f1a8251f57b81cd4f674fabb82707be418fd136534a22c0439f9c33cd6cfdc2f468284962f6cc3089fd09a47877bc37d184af9caf129646a2727981d9f7f834d721d43a1ce2ff9e07eeff09f895153c8732e97d0529b98014329e8ecb40c2ff5ab06b659b6a71f32cb0378b26f3b8f8420c881bc88fda03660a7d9b2ee94973f54e2a8279a1b3405a30c72e52ee36fca3cb52acad0322da7e0eb6e05aa3509cde70cad9caa9336e359b60643a014d052f238e9fdef05f3d10a8d7f353dec8a2b8ec099bee67d83e7985b4cfb46aa30baf75dfb88ce446d489a5a4cd3d3f33f0848ddc5775aa1571301034469d2238f13ea58fa2b619fdc118d1294917f9e40f23e4bd53de33cd6dc1853bcae1c35cfa29545f6dee0f993de14a4c8fe65b1b23b645c6b640b4b9037e0389c2e79bea922ec9b0961fbf3e2ec950b9f94f7f8139ccf28ae8b2a6cfb19eed3fcc37ab13a2954dfce04537a54c8cddf90ee85d14c2d819f2bade1b0794fd5cbeb0dac6fdbc162a273dfa9a616369fced944495759f8cff5a77af6c46c147c453f1a556cf9683ff2890500decc200baf1afe8c8478d09eda9416367c35d4a5d4ddd4ada2423fc96d8cdc1e0d1f49b2d2b41f13370ffbda24cb174071975de191b4078c63360f9c0f87f293a6766e2a65ff0c02e00bcd9a98fab281b446e32e592bba1c74e7ae4fbd4ca565439644fb931a9a688fe139c29b71cfa80b68c5023444465eae08daf5d9bc114d38a08560d1a4d8b201b5d57dcfa24a5fbe93f149779a646228ea2a6b242012363bb3e295bc7a993580adc2d328238300b63eedf5aba0a8e368e77f596b1c57b8d18c4a180f312b3764d0e3e11241187b4bea011c9790e0cf317527eeab5223610077055a800c6c02e1a5e9a0500605cf1252b3374b4bdd4fb44de2d53f47bb23cb71b241d7480f18b3adda6232d6fc13f5214765c6c1dccd8086362d2be63dc34b5613f71d99ea3642b1ef9777fd4b85063e82e78f2ef1dcf477ea46c60ec96657b33d6b977c3fd30678fb40e246b71cdbf65322e6ad29c688d004c11909b40e270a9d731352a76ed670bb83aacd835d575abb606174c4a7b40de5d98409ad7388486db0ca844a6390d7cfb0d901faa10ab41673588278a9956ae3dee4aaab052e24b76a84d8e7307f7eb904e4e118f30f3eec44bba1f802595daac867b2f36b8654cbdb4d353e69512b009b943a031da66578af95a88c5666b55580205025d6e3b9e463bbc0c59709d13f2367bcec9debf84beeea197506001280b4813da662e650b8210b1def5e6f170585065de0134b73c12f626a89bcbe166ae3f127d4f4e1e820bea08029164fcc1b049ebd901a810233837be0bae6d61369b70e0d0688a5eb594ff4684414bd88cee4713f2e3188a5e162dc9a6bce4688d279cb40bdec9496cb624b011f3c6f064482dfa3b6d6674e69e6f9316891686b1b8fb59b85253671332a917f32053c4df3f52b81666674655e20274ac44ff89a6a607b08048e7ab3c43534fd962be6ab782ca3083bd77b92781bc50d47e879fee7192ff8aaaf51a5c96518d082f2bce82a998886cfed65dc4c29c65fe734ce8dc82e0361c19eb79815961653028196cbcfab2c3abf51e8361122567debeaf39a35c09a6a0688422c010aa74292169c9a9b0ccdba0246fdf8192acc149435b88b202d11be21d1772363479daba3340b27c41358349dc485e8dfb64607679c1a2051d65ff39a71335f5727dd2305a1bb317494bd4a2a9b9c7ecefebafaeed1fc7ad72437fa80a11bba053022d0e6bc108bf235a54c8a3bb0ee9df925af00c3b0ce332e2cd651f0ad9e6fb40b23338193a2fba26a9c83d9bfa33fedbc193b76bb578297a3016df77c161ee745d4ce40d7fd81587cf839c2be0991ddc5372932d55804b11713c9140d10435ef4b316a0773e3506eec79cdae53a36c03609e5a3e3cc4b6e117a499db7864c23ec825c6cec99503a45f407649b11fb25ff08d8c708e098a22d013c5d38c068d1e398eb573d2055c053bffe75d8d5008b73f90cb92a8f8d4d9af745809ceef47af4cbeb2ee245cc6b153f5223d5e2d63bed3e418e4a251b05558b8cb19c59254aa27797d076861feb64cad14546f140145e43cfbe314ed98e23eeab97074b9bd837aba4e8099092753c168e008b2a93f91ab4c8ee51e9e60c4279e51329f3358bd3d5f32311bd537adaee399ca489b3861b832a5a9d1efb296717647b83afca6f0281f770fb9810b678b80532f863ab24be7656290ba8eacd2e8fdd5babc0ba88a4ac8c2ffccf3213e702db47c1156cf7894889646aa615caa231b0a96c62fc18ed6cd393a19c2f2ee4f40bfe67c054d2767346284000044ad8957e81b64a0647843c5d6679195de283b224b5c0346b68a80847f05bfbebb7aa38110c8ff826e0d863793c0844635a57d770ed27568efc0b22ea31d090bbcdaaa417d1cb772239464a2fd7d9d2a2f3ce8f849cc425e282cc182908e28d33a74a8e987cc29b58dbbea7f467474f9629d476cf2d391033450633b731cb5b592241c29589a0e93850e6c515a5547e79139edac58ad0603e46844cc9aa1bcfe999b3147414061a1896b1d320de08ca3b022758e89095c7e442211c0af08358200fc6b2ed02354856da9fb47f62528852dfc0cc943467d6bd0585132c3f7639d036151d792e121ca92b4b067000652789a9fe9d820ae0605c161d6f2d2257628ee9f934471e71efa78dcd8323e05e357af4a6689730aa8fef678e1ac882f112b527993c272b03819ddb1646093d111f460e1dabda764e67ee933c483a51071057da86f0c3b8eb6b79b66149a19470d82052ff3fcb06dfedf7251f6e747a390042cf3cf14bbb5d98e25b408f19126ba1cf827decd3222b5ab7e6fabb87a4b5686a943ebf047192a82448ed68181095a42dc9adeffba5e0641c5fe115a5da5200d172c1e55f9eb512d3fa8e867c1414d65016504f4339eb697e364424f563eb458a0301bb5628c39cf4b4f9c8013a10dc2ceedefebb356f00baee79b1f72c9d7e97856145fe5e417de3413d03ba96a88b88ecdde302c8122c101997f17ee1337c839e5d3b67007ecb8a19f14b1d97896694d684199b63733d2039095f0808350ed994c44b1b319ed84d7bd27bf8758adf083455e99ad4733d2039095f0808350ed994c44b1b319ed84d7bd27bf8758adf083455e99ad4e6ca0a4e331211c0b453043bea51d0e5bb5550ba5172555d1071302ab5f765d1e60da3d6693b4e7dfb28fbb9a8e9971969ac606b384f599edf7cd125082062f5b023ad2587940ac498335351629c1e5b395482badcf16e2f4872c8762dacfda1442f0b0dce5bfbbd39e995a0a0934c3f169180de09f14cb382f40d13b2dfa14fe884c1e285d7071028c1a4535b20ddef1d2462b81f8026d34a5513e337b5b155f0e896284a1fc3df3892d34a965436fc0bb00b676c22eedb29686551ad97ac1c61ad4961c4c989c7be0e7b442e8d4b69c011d3c93ee4bf96f3fee7d45dd3e064457335db2c82e0e9666e3e08ba2136814ac85c35370c6a741f1f0660c711d47d47ced6b868c3bf8252cdc2145573c0989acaf0a3191122969d00824c8fcb299a922ba8b838415d556d6562d155fc2244c1adb0fabab0f15d8a675de9beedb5f2230898bf66f1695da8c9e045250a8ba6e26ff8e08277e18e9c1757a1cc0772547c1b361f1da89746f95e5f2ca4723d4262bdeb5a7522a96320fb1788a16be7f8eed3497e064374404ad603bdfd31ffd2ed069cbf42ae978287c98b39067abe027c868a3a06e2ba8c42585f0581a889c36e76f7b6ac9f79bfa08330818bbdf3b91f9488564336a511d90873f86dce03b5b295e052ca51acb91e30dac0a0646cc72abb3b4306f445bc6f28af91886acccefa72eede240a6a2dfac6968b68317a63d15fe0cdc056ca4d5215810172c12061568f7f0dfe519b5c5a5d1eb55fdb82f0aeca0af3a1bc8c350d3e2560e6ebb77374ba5d5378c33f5d97fb72d286a373024f6bb9ee96589a9adfdd954e53788767c7a478a8eace64a2dc8a464b7c9f0ab73364a1f4ebc357312aba9fff858622a6e02a5ef0701074a8a0f3f3e267810b2ac8c69a530b5a60b938cd99d0ff0604d96ac95952a14d6fd38ffa3df9cdac50a4c58de737ff2c044c92222398a931a603ed7c5364c8f5186700848e515415086afe7beaf0bdd853302cc5a33bb71902007e7057dc4e64a16fdb922ff3e06588bf31509a7884b9b809e15f41d1ae30c9b7fe25ab1d28efc61b86478effaa5e96e8becb85d44c12880b219241ee9fd94593d8a397191d18f0487413da3a516031fab5ec76afbfaba898fa9f18a2cd8e2e9ae5f509a10bb08d46966782010a1b0e5a749e6d1c1a93f20536d2949c07479ec6a02dcbeb58f755e4b19ef75dfa762a8c749e6d1c1a93f20536d2949c07479ec6a02dcbeb58f755e4b19ef75dfa762a8ca880ed943e2724e1cbd11960fb6ac0230f8f841691dd0f7a55b9f7931cead17207ae27a13ada70044c037a86214988ba4e4e6fe358c8895d9dd34af8a2559a48e90bb151413e34ff3fd6d40d8fd31a723b5ce78d339388fce59ec6d4dcb2d9c23bdc3b5f506430a9054d4ffa2c703e34ed6e31330b2abd0881148ee1295608fd8b41311d8d185d482d43a4c7f6cbd1de535ecd0d191d4fe6854fe1a63d267fb4882345846b047c1df0c2129f3a72a3ce10697ebcb809a6489409a0f26682f430533a00927abd57d66d3a8081e3c7b40b8568421e3fc977ac107e79e4ff1e7beb691436d917c372949e3442aef7c85fc484ea40c22848e086c021b55d342ecd5a573b5fb28a837b752f4e46232a5cc3febbb92e34c834a620eb5b04fe5258bc454038123c0fedd6c22c672e4db58660f9cbf2813a52ef06fde42eb6bac4ad5f232b4c633a5d67551351f258df040d669062709ba7af94f7a006c0e503b8ccf86dcf4dff2d9a43c07d23ad4eaedeb60b6dd90284ff7d9e46a8ec91d2e42fcfebd8576a76e554689ed8168f3f2e1d07a7dcb848f8e81ef2541a9d16667b1d80537a08db30195ea53523793f16523c35f91e1bd5cf7342dfc7c33fb838361d1d75bec41888f5348f7cf6112e212c2158e426dfbb6eb5a504a9bc819d3af232d7ba0824af5e0a5aa2bb9b422bbfd230b6ede73dd9fdb83d9e8402d189edd022e164716f735739d044d91ffb148ab1203915b7688fbd9826e7588756aa7e2996f7a38a01ea240eb20915409354bfc8d997630c730d975f13b97e53bb3fa7ed8986943900c3e788d82a262f1384087f2a271abdf4ae2874548eea4c81d8e8874bdc50f7f0548aeb417d935f35819a00e6dd2bd8b025ac06aeab296452d5c0e362930ca665d841351273da832fd5b8160412bb7ef7352591d233f1b3d2d89951211d2884b9bf22fedc65cc8b6235fab47dfb6472d107057b359ad3eb638a3e4efa3d979a9e2409e31f03f1bd67eaaa7bc6349db615cce1ccfe02145b68829c955228af5a6b7d51e280866dc34392ce5027ff08a574ae8c9663c35661c6656b0675825d50f15d71b98f4b5ac30bc452547db7f44a4258bb2d05d66448a6ba33ca7de47575696c0ba28b64a2362b448e9cc2db520f5492627084199d90886dae4a6a7c057e1617311f79e09ad6cf7b3c8b2d2da0d495d46fa46b7864d57cae9af114f9cb84552f08ff91dc1a1c8c747560147c2dd81c84337f13991c7ef150416196e1d90f576d1e8406217f9580726e66071bab37d60cdd9e7cbc07d363e8ab77313b03f6d1f6c7d3a27d7e4cf5004ae0bf4b92edd50649138e8d29f13569a9bf28f9fd08b93f14852692159eb0cc2a6933a6322275f21bc1bf0882ead703e61d282ebe1cc18becb72b64625630e35bd191e712fb3154e63445bea8dc935fc5b2506253dbeea94a391a1d05c927f8d1225e38e1bdd2b7de88fad791ec897da509d9ff1c76ca3074286270edc2b9f703860bdbdabf4d07b9aecefb8cb82a647e66f7d3205a5285a26a5f64cd7479fafa87f838a24ad17d2d0b91ec7696544cdad733baa063d30922a95b0f044cccd31b9d9371c9e3558a858229d5761be443227771c886394c92925a5e57bc9bbb8abf9b063fd8361ab0d73ad3dad269434b5a70b9cfb300c8c103626816973b49ba330e17dacc4bd2216b7e06057cae5d8a5880b5b1c7491a8b5c7510ef6e5f751ef5a55b5cf4d3d8ae5184d34a91b2e07ae6549fec0c295cec29e8a9c40035f0db7f556b9afdba056924e5a869941343e884f7d1a9ca1e682c40525b949e0464aa49538d7309d54f91d3abf24ed82f018f47262ca204cd5362cea9778597f2a9b818ed7ae14c548370a64872481407ade32c22c9807bc57da0deae812ec20fc8c7fe45e4d3e3adc2202f526cb954cef049644f4f4680be0ca9562a04f3ab9404a6eece7e70125b63f508ca6c4eb1d82c530cccffff48c5f0b89addfdcef3516eaf5f7796410f7ccbaac7124844ed94aa3a96a3f1c31c5e5e8193606e4bae3a2e2d3224213e1e14ec6de4dd551fb0186e1040d9a65bcca172799b228c085bccfa109d8d9f87a0ea3ca06cae45c7e4cf8c8b2bf515f9d22e690660bc4ae6c7a67227852d611ba4035ec67387903bbb9a883b02c01a8f174f7c6bfc5b752924c3176262769cf46b9a348f367c8e704f9f2357601ac035a96ad7c55b1cd647b2292396edf9b5e659079ff1fd58a66fb3652eedf14f020cb385c14c5cfeb4542926d5b96f579abdb2fbd8fa7d9a16532a7e7f790c1059d27155010f5f5b48975f06ff8007c482c64e15bbfcfc5f6b1e4acee455a41ba58be7ee95ecffeb6c7717120de8b512e8d770b86467e32659d15a9558921db320bb8ca615b707ae163b43b04ed27b7e028095316a8f3cb79bbcd07b74f354c811551ed2cd31a453039ea89a71673d8b72c96e67703fd1fff01eb30fcd1ec3177949edbcdf472ff6c7136214834d013b80d5de8a1a7b415156ddacdb04f7d2a9d21e2c1281d179c9074c236c3d375473d8e665d645c04b756376fbcee1e441344c1c8bcf956e05fa01c6f29967ac48f05ce0e53410d1d3adb8e04d85a9d356e91aca67499bc87ccd1f1447fb21cedc9e08bbf6111767f8f8f44593c8fe50e703ce04ccd58e30caa99ef50807a811ff6a74552b9b9a8c74bf522c1054480efb68709db2a63a4baff15033f938ccd483663b1fac7d920068d60436b91588b854e93b9be413abba0d90233dfb46557665cc4fe23fb9b77d0407947fb1405b0edac78e6751b0cefceafee9f432360eae26a2236ba7b23899c8e0d82da8e411984a97533e7c8861a4388f367f424ebcd1c1e8e03ee94a03ae18a2fec757a156b98db9a3fc5690c6db951a76f7e56e53be24c547e557e14026dbb8cfc3fa9a00a4f6cc645d379d5491b0d74f90511dcad35daa3394b4c6e96cc6a1cc0272cef648f267d014c80b1c0f42b5a142cfcdaea9a2561783db32b6bf5a605678686cfe83943c4e08e3a9bfe6daf3d4cc85caf061bf7d1704d34864633ef1c463f62d003fee1cdf4d5df6dbcbdae1d0d8ea8d014307a20019cbcd57765c91cfe9287591e963740e2f48c289035d3adef44f01006bc263b2565f535e2df5032e270e16238c69f5b3b56e83a7d93d932ae55c47562d3817efb942f84b118d1c89fdab6da0bc4fffbbbd001a3ff5eed745556da6e6c2cd546017b7e8001bd2bebb2a8a640a9557add01958190cb988e2119d96442df26b060162bc3c819e4b0963a6c6913dc6a9e3c96350f1e3482d87782c6be303ce9137a016f33547864fac36c541e7189afa3051cf3e9d2807740cd178970ecb0931071be790e40950c7ad727db212675e4ea169489b12970c5882ce279ab021dcccc0c065d59e9cdb18c52e215b65194400eb0d64778889a9c055b302fd151cfea916e7a66f78758d38df54902b711f344028d4e053762284b656c1fa333245aea91a13b754371f73a4f66295238aab05964f3c1dd6cb72c3ed10153256ab9e022bd504c10d2102ba7485b911e5733ae326ef87846eec1204f8cd71c2fe751d9693103ed54d54be8a77ce7e50d945bd6a578f764a2ec54b33226a72e22ccbdd33fba82a9ba8a25304af5e3dc5f8f166cd41333364dc4ee90ed08e63a0f47b4682fcdbaf522bf32fecf97d1526222d188a239c693fd7cf52ca32dc5459eb6d416bf3a7d1447c8ae4bc6b5741225897a0d56215e74e9f9357b6a2a88ea789016ddf78f47d1b928cb50b94079b2edaf3aa44ad066fadca72a797b1883e091c70ed2b48d595a8c8d0def7a41c155559a0d373b671a6436fe3f5cb7b4366d0e16ab0f92fc10aee933e94662e8571b80039522def351adc5f9e901399fe65ac8c692fb98efa2e8797096d3cce977a7bebf32fe3c2d80d64444f7e8dabc349283ea8dab4f06ca4e725118b952d5928fb02e09b14ec12aa0d263691503a0683d8ae53aa5b5b1c8f4b5d76631a78a7e7f8c4fbba722964296c4883b990b1644175df6e316e1f05b32782f9ee71593ba1d8923d4c748c62d6b79cd7b812d72c604e9c91cd86c9dfc62dff2c1cc442def367b76f03c5b5d1734506c520cbf141d9ab95485f22d0329acd6e9f53015044f15ce10b7696fbc2a839f1136e1a328e97ddaa19fcb71434d9e3a62b5b81a33ed8d854e3dea158bdff5eafa81af596f6df14c7acf5f94bbb3ba856020c5d239be0536795b0335ccb24bf6f5f9fc93fe2573c0e5243d63a85ce3f5015b214dae332253b99b74f013a31101da571dd00ba46c71678ff77585a6d1450699c6cb37404833b3aa6462f14580c8760df90d0a6e6ad195d84f76a2d4a9f09708e32b33060d80deaddad53895a031f312d8b1d58e7da059b4ff5e62fbb8864b69e47866bae88601324f39841836656ac3544ee6c7289985baa22104fc13cbd3d238ca16239d7543f6d450e6a5943e6364fc247ce14f35c2ef8073cb6b7d2427e95cc8b71600bf46f86a64d2b64b8eef58a5df5f5073302d92e6b6ee73f04b98109f0ba13c3b9573853ccfcfc5e471e048ef85c64a066e756f537ecdc4cb8ec8aab9506d76b42e2c79ba73a25a82c0c20b4e63f05e2f3ec3e79ad1a213a70127e9294e55212008fec9432a636e402c6bfa6bd9bce1a49b4e3076bd1c2213a0c72d76ebbd6f32b0161af4ea415df5a78894e9833b1c22acd8fc52e4e961f4cb51f492569bfe2267d94d76d2fd65a0ae0683445913417d46eae13350919bae48e400a7a55e1a69eb6c8a28fa50be41ed3e33445913417d46eae13350919bae48e400a7a55e1a69eb6c8a28fa50be41ed3e36022ff77d180d30a7f0788c7eb7805820959cfded00e2a506f72401b21a4d6242c7dc964f7fcda65fd9197cb0aeaf037a285c4024a7b473b767ff04e49b39d37b978183d3eee654e15484f03e287fef4c6e0156556c932d67a4a4fc2bc8a5a1a90a87c6d3aa1066bf308efab7a4dd31c3f127e189b6576fee4c28092e6bafbfd8386baf7a485c4eb4097d4daeb0110ec693b4b6c403980d6ff6a3076ce10446da7e1aa0be5ed69ca50b02869c6a07452e0f3189cf6e730d519cd572c3f50665c4ac72e6d7e50ff3bb5f77ff6d34aca10431c0ec03c51434c165daac29643efd7cfb84d6333654c70410f54e0cc87914f58cbe8ccfd58534d6e70751e38a15f6b7760109e638f56f53f162080f673e8dd003b4d09d12240ab54a8a204fed9bb2e6a45045a5cc790b43248bae2badedcd4bcfbfc0f14bfa1a6203d9afe74abbe005a4e61c8c969ec26ff4c082502198f11515e8d23cc63dedc4f3f6fa31860a781bd698a03ef885f3388b337f5e74c1b1aad7e393015053237b2a2278eeb4805691d55dccd1dc7fe73fa6a7460316f37e71da563486590167ca8c2b78dfe4da2a9382451c2a3c84a743faab2923682cec56b3a7467d5b0fa0e8fc79a9a2a7a87292a7a2423c226c2543cd0aef4485c6da324196535c96c19cdbcc1e700a0409eee39b950d20a390e386275225af5b1b9c853d051e97f1c331e5304cb5bc95833a656d6ed11774fffa11ac59fe144bdeb3fe1eb055044a9bfc034dee5f077e844530bee701419063aa4a6cb98f59633f61001ec4cf9b3e02a77925b2b5204da51526513b22814393e705f9a6a4964c0ccdc6993c3de3bf6c2fbf05570668c253d61cd22e91919e67c262609e5359db91aaa4b68961b3915ad58fc2f089d71d5675607c230575d371c08ff488edafcee3f34bd9b36f1b824b692f72e86a73e71b95e6d16610ae67f54807121fd786ed96097130501122ecf8c596cdc7c52637d47a3b06282f38791446367e894bd1c8647f18bf698f98dda83c87335390b622dd83d1834443737b177eda413c3601f3c17e628c4132af4d45873fd9076a7bc7472bad05c05fdc6d249116174d3a94ca412327d069ca7173b987d13f08f758a7fa4e0a8fc1f7a1c11eeec446d377d3c35f233b1f1ffb5d8f92d7c9b440f0406615daba4d14e52947f5cd4d15ba6186debe12f8ec91fe60ab8c4f84e7dbea2c26d2b2dac316e9fb03f5d4322aa4b30ea24e6ec725aa7ed59d70188362c21a12453f422727888145be7464ec9bc021fc991da80af1e9ae1973249701d82a7779c9efc030a06d41c96b8d8b485b8a873c87a883ab3a18dfb72d5411ba86ea66738301b8c5c0cc009a3d82ca627bb2de4f5e28c11a2cb62fe7df700d2f8fe3f58f73eb053fbd6be6e4dfc7cd18338be40d0cbafa0cbfff83183c97bfe1f2fe18bd94f55d57e647d080d00d0e0664e4d155ceddd2c5e89b96a5f6274e247419b289e3abbc7da64423e568265a10ab479d068d4f8532578cb8520a76ca6e37d6955694ee50badc289aa82339d9e13d67ec25a2405d48752fbe4ed1025e2253beef5cb88944646de7f2fccb5f89516e64b5bdb1c4fd456a09c9cc680dd64e0756e62ff5000ec78c4200604ee709d64ea5308f44f6be49356c9a6988c37688ccba0590cf83bfa3be501e600f8b2f624b7f0ed043b0f35e17eeca864445f835301e1bf7200968719c49b8fc7102cc12476e215854cd228f1f8c0d316f0ea2df6c183f167e9724a6f60381434ad60ff390e67913b4d072ee7c2564bd5763696ef1b299e1d967b33758f559cc68f6745588738f25d7bb80d46b93b23751ccf075d91486ad6b92a3f354cd350ebeaf0a5209e181b957ca5a3fc42d29ac352b0499ef1d3d8238c0e1687465f343fd54ca96b50bafa7ecaa15a2d4d3b04a40994182ce63593992ea3747eb9bd43d243e9bb5bf5a62b7de4abaaed498ac4e639cb0d311ebba116543e387e595423dea975860f4a6b4d9dfe707a782a92541c365d45bf9b6662019a8d10ad8a7748098d32a2393a27a4e28d89ada74ced8b02377b202539b7436d7dd4e50d2c168003551a723a977b534ff7fa217ee5775c7a4d642ad502ef9a49ff0260ad49fd14fad46df1516bd46d8bd980793d561fc4c28d7bd0f9290deb29b1ebf69bee8784d40100ed283fb1efbb9a8e9bbcb4fd1870a626af3781fb48f24a67deb2bc570e773cc341f23c2d5c146604ba6e6ef5695a162942336f7af601517f5c784779f5a335632ae6ab56a88cf64a2e0c918b1c7fb49d3e9f173fb25fd0f09462f83590a9e9e26a5d7359f863ed412aacd29eddf248f81759b09c3c4893f4edb5008e594fb04bca70ced73f410076bcad485e67e502f47dd561a995529f72da18ed012e1e7b04d6092b765cba23e30329cacc12de939cfd48fd4469c98e90852d31f986be44a9c8b077ae1374b88bf4e7d44e4d3f604545c985a2090c3ee0014db1f60d3d78a4ac0b41d9ea75cdcb26445a7f611c7641023d95f4aad50c1ea37cb8ed03f20d675642e092306e76d32d962f9af54dedc1e7e9cfec6d7efed6a640f75fd0ae931c110cf5a4a4977e6cea40e4877f922289ac8685fa6c4b70c5725b00927809ac9809c9b58a51771a53d4ce06327f5269b6e08912244958a3ec06965856e3275181a63f52aebadcb0d589e2cf3b3e8437e77fbea289ab556e3e3e6533b53be67f79311f5cc5d7fe067cb72af5a8751423129bfbc98e1ce9877dfbc9c59f42962f493046e81dd0dfe715a0a1b5ad46e5c40737ae273b43166b05bbcef35d9b3492b8d5267ff66eb164658d1c49b2982237f213858195766cea26119e2bf1d9ae07b80c1f684454c01b9364344422f7bcb86b2dbb4c0de59668042780bcad383999f03994253ad319b8345aebc6d701a6deeabec30661ccda661003d576f099abdb54f79f626589852ef1d5bcae7a22790c0cd39a8d9e421946fbb241aee4698d17a21aac8b1bb2f9ece40d22c6f3218bf0bf7c1ee6df8fd0c63acd6c3d2c3a8a7d0ca0f638805a24e053a8df6989353fd65aa4fa90695ef016e81565918f4fbfe822f6e0c0b14a3358857ca25e7c3e82f7e567b8ff1f80481af41c851ec4914bc2330b21b98416d650a1a5f409760c02b094e21001cad43ca357772d0f2e7f1a5cb6b8f6547399d88ed3056b8da53a735b7afd60eb0f71a0867d09d91918c26bc5a6e3f55c85934797cab21609ca27fb4ce6efcd8c65a5640b5cefc64c7c81c50b38477437d49f71e8414944012833abbf643e74399cdcc43634a9f28994a2deda243ba18206d41d8185d2a091ec33512e3bc8c27480197a825443b8e92c199731db1e00fc33e79c4d035e6235ebaacdb21a58f2859f9a53dc5a0b776c3e0b8f95dadef20835bddb2fd4304b5b49d4c9dd018e2ea3d0b3827189fc43539322bd7ae8e520e2e00c6d11ac5cfdff4f2f7043cc1e3a1660b12d06baf4d4036810a27a31cf7888a092f9ca8daa7871efd66c1c2cbd6bca5657c3e8a6c90478eb9587b15c2e6709bff0186353e5505161c2a153d6d4b84cdab8496904656ede03315a378fb1e044513997b9b4dda56febc519266ea0dfd926821f84b6be01db32a4ca8eebf1918a5d0b4411bbcee5890fcd041158c0de663ef4eaff024a850e05b3a650ccbe7942d3d0989518017ac13fb6d2ba46acf6b2f8f3685f94e01525d49694e7ca029f41b8722a883589279b0e31bacc5c5abfd1c89ca621787c66796a8f3f0315676c8d9bf8d070719ff8ee4ae223b28a2cb1361842c3e2b96c902fd3001a15a8b775268f30c6a77ee0d4c9542418591429053277ff5ffc8d89b585ed73af3de59c4dcf2feebf19d175608e1c2ea9936272dfdbe2e77dc366375ac34623c882de3c7602a1a81b34b830433d40327f2b2f9b8609aba30ad4b89f20d64d2b88710e48e0b880a63673ce502913a123058de596abd9a803a199d4200281e64f08e636184999f9063563579e5c4f86758fd655ace5c70c45bd6594c37d17655654acfebd410ea165dc1ef242f08a1904c1c1678369657507e9373e014568dbd65e564758552aea99d3d06e2ee067a568457268675d5afeafb222a70cd79f960d9a48da679814d9c5791a52680b6ec5aa6ccf3f0c91f47c7ac913bb91a7d7ae79d4bfcb02926110f44fcd249660e9cade76befb19cd15f00da4cf8a80ebde6acd7d0cddaf5e9f3d01a2dc372de8c470c40a43608c01305cb98d09cd4616fbcba7cb6739ea1e16377dd56f2c04e31b23be6c1e3e5f907fc34f643578607511cfb88f1abec4ca501440a7c7a3d95b335da9aea6232a622fd3cc379cd67a770161e000cf6e756cfb54fe3e71da8457c80538ad79c1474fe680ce593593818ffcb37467f8c4aeccd1bc4ffe21779fafa9f9c63b14a50957bea9b6d3000e5dd0ebf4807aa8f75351d1feb7f48cd0314f945f5a713a6f743c8fae51a38996ba6cdf4ce4740f95066e1cf8f84de5b4ca61d42d8d212ce5b726e9e7913f7824929382ff7e3dbe3829245110a1f595cc9f147b09d987e66780cce4f884c2a33e41f5260df9219c2bb928fceeaadb0ea7a045d30bf2b49cce26770dbcd5b60a00f0f5260df9219c2bb928fceeaadb0ea7a045d30bf2b49cce26770dbcd5b60a00f04b474bb917bf217716b32aa6ee94d4386e000e84706db2fe03d736b7811a84696c8cf5056633a51c407aa144800d6394cb9a5718a3dbdf58258c37d5812a31a095f4773180844886343a69407ea228f15624caf49f7733fb0d3a2ceef9eda2e495f4773180844886343a69407ea228f15624caf49f7733fb0d3a2ceef9eda2e40b88b3ab7b8e9faa857141469500ba9c10a24b4d58213a92f2a1c01fe967d0c744b00b5096b9a711ecb3a96b344f80e7670c13043b88c01048f1dd7494d94a6da4719d971741901dcb44289b8cf463606f9fcd96b175e531d8e239435a945311dbdb2103b0fde1ffefe408223f70e792b5a5c53a9a92037c4d575dd20b8c24dd1f6c8e09a6bd07b0c028b4fa18c519719eb895c699b986d29e488471f2a939f2f90dbd441ee5da368c3414ee9be90f9ac8b54b48b62f809d4963fe6c4ab51bb00293855d4e5423bbfa172b9deb1f433b1c7392732ce664617623f1ac46b278a1612e900a9020e303b57ffb85d728d109f963c4b57d7b14e3c73649133749bd091fc6d9794a9ddc8f32d5e5a147f5e03932df093be1808ab2bba1f109bec98ccf13802ea6182994224454af0d590ce109080eb546574039cb08acb15022908e6d891bbec4b2ec95bfe4b4d38f90ab384c058f963af10cc92c1674aaa36e6af5d008c3a8a28dd06a1534c31de7fa035d9a9aa2a3915a9c450ea2cb1ed177d2fe3a6ec6e8d5d19813e822ad9e0c73b25e31bb2029643e59c7073c094b033777d36f690031ed6eb6ced6f6bad1930a58374206fc883f734829d38618a5fdc21d2fce5da63d3d34cd8781bf501877127c0175955f8e9fa8d3f48be85540c785109c045da63d3d34cd8781bf501877127c0175955f8e9fa8d3f48be85540c785109c04211599c80c5983d603aa856189425b059a53b4dba76eb690a7e21db082dfa426e1d6151cfa40ce9ea7a517ace4107b5cec5e4d16fe5fe42d84795629457b519b8e674c4baf4534d4574e28ad52af3bed043c74ea3dce01fa8a214fc404564691ec5ad0b5d159dcc9f80827f3dfb4ee2fac40d6650e3b344607a9570d0c71be6e6f8a037c8e19a21677088f48bc15dc36e2e2ba93eca64b8f6f8032779c22c25cafd0195e85061b64a8b07387963b6335c07bf14fbf272250ed0f119e43ecee5fc4eebfd83129b7eed11fa083d58116bfc0232a34f142c6a52962cb6f400b6f0b5eca051e647f83294cc4685126b4077daacd9c84ff32ef2df6801e6d13d179c9186ed18ab8a1c2ba1f13c7738cc0dc6d07ce5648ade0c5e86da07fe79a8fd3d0cdacba2cd67734896ee3643adc8093de6644733fda546d6b5cb3a4276b5f6ac7a372b2f4317d888fb0a461c38b9bd9b3bb29cc54a500d60892a82abb4cc2900a7f3c39bd0bc77217c91ef94712bdb808c4d8d86c3cfe9aaccfbea33663140657684cf3b7571c14cef5a497c6e9daf0cc665e4c8fa7b4ce3e2cbc413f26855cb07aac1e08fbea6b29f6c623bd02abf805cdfc18a38b71c6ba3dacd3f53f3bb9f163b3bba65a9989b254208c910d33c7c5429804dbe5e1ba2d157be3114034cb40023db94ccfcc21ce401219a4e06753f55452a04ec51709dd963f79b0dd975a805fa2c8b9e1dabaf4717cc53458e9c1800dc7014f6bf80a23231bd4c99cd80980f82e7f39d44d428e345e27ae3da48aa588cd0f074e5afdc2134e5d1358a37d0d351f5b776bef64872787eec02e16602aefd24b68faa811a1ca802294c2f0fb297a653ebd6d151170df2bb1ac183417fb772f9ee5a6ac244d050a75cb034d152b0592d50961b9c5e86a4c3e41cbab6a690588496c751dcfc8bb0509756e70c52c7c6142f191af83ba73c3ad0bc7d8a0aeae75d50d2d239443b3e6c65c214e34fd7c6142f191af83ba73c3ad0bc7d8a0aeae75d50d2d239443b3e6c65c214e34fd21f355e2d91bec576b71c453cbd1917fdbff29d64a9981a92f6f8389edf4ea8d21f355e2d91bec576b71c453cbd1917fdbff29d64a9981a92f6f8389edf4ea8d4258783fdeaa9f38a3ee88feb521c1336b46a42de3176e320496197b3e7ed1d91f00a907b7519f533f9918df86f99976c7e16c6d266907dc495728f269614115e8c41aa901d4fd984520955a5f228b3321bdfc427a0706f8736eab61e610185293ca3be15569fd9c35d5599b84b0713e253a0b3cd39bb35b68dc0679678d9fd0395462c562fd029cbb1927a076fa7d88693e6a9a3e350d406fce01322d7697df3bfe9839efa2478ac72333679babc2cdcc3154d3c64607c05e1873a7537d8cf121689ddb6e16cbe926435531a91b2eb708930f326af9a8f1406c74af1fbf3371d89ad31c962adbadd7a2c4120bf3483f44ee7d4b13946ed652bfa546a8c90ae028cc2f94750beb344d03f5cc6bf497c1b9bb44120d0ffdec2b5e7935e4a8708fe3b4771f6904eba3ed28ef36793fd57397824a035ee2a38582a3883d1765a7d7cc70badc9c7e3ea650d9e6dc606521686eb6bdf9054a495073c31999aa44ed26078d8bbec13a1bbf3aacd12cae1b5afc100d6b382ba5bd16a1204fa8aca3b7987ec65646a197651da098cd23c6e8a880a5b75b0ce5ccab934515988b0b4e39ddb64ad9d1eaae2d2213862500f3ab9d07b39d742ba451878a5a70c503287431a8b64ad9d1eaae2d2213862500f3ab9d07b39d742ba451878a5a70c503287431a84ee8a9bf1e0ab917dd50b369aef7da35885061714e1bec1e775d0f0e0067aed1e0761bfed6c4af6109077900bdf8121f212b35319b18e98746303aa368595ccfe483862f7bf902ecdcb35e25ec62b0fcf7d774a74d0d00b764830e98bb99cf2b6b79d1dee6d03e4c50d9b60fffcd98966e7fad1ef3caab60e6c619a6e2ccb46e92f24d2d0732a9ac48fec12d64d195a4a416604f419f2811bec6b02a0233fee4a01b86ff73dd15c799b8a5a188304c12b0991eb9ab2ac7f52b6083c2a77d742b79b02d6783451740da05963f5bd3546f509c8e7cfb2d1f9f887734b43dbdfe2379b02d6783451740da05963f5bd3546f509c8e7cfb2d1f9f887734b43dbdfe23220abd6e7d1cf2d921dbfb695157d8746925bb2fd02259aa0645b7a239b40f2702beaa01ed15673ae0eb5cfd317c151042cf769d49e58353f3d15e0bc63e90396e5eac6d50e862c4e92bca0a670f5c61aa57dd4616fec16040339b486fcc14cff01895698faf217aa670b549cd3da6a2ab3d59054744e84545e55743cdfd8ed6907a57ddeeead620b01aaad1a552f386e0c782384c3cc3d1cd2a8fd05d7742a167f5f195da9d1e0d4be8495c7e89cab15f7e3959616d40aa14d58fa93f04790e8fa9a76e2bb0de131e890d38e1c4a58d11ffdc5c566608e55b292e09f4bb3b3b56a306a6a0265c8afc19d4a62605af508859a70018bc3d797f44891c5bf1cfcfd0dad9c61dbbf976b8149e74a52338ccf301bf9ab11b55d67566a55ff8a4e170cf523eabf6157f1dbfa642cce66cfbccbece7205a247333ebe553896bed27ecf32c065b403dc9c1e5b0426364c9516792c3fd22fe60326336b47be7662758e9832c065b403dc9c1e5b0426364c9516792c3fd22fe60326336b47be7662758e987ff26296ec33c619a5b4c6e9b4843ca80d3761476048d06bdd1c1cc97f73fb17df029767467c965736bb1003bdb873ddd1d5e982f246b0ee8ceb1a6d795f7c245d3e8543f3aca921695450373c59a628e68595c70fdb7466fbea97e3b0f62df99bb1ec3e02ae291b13423828bfa560d36767ed7b1ae76c6108b9aa2e33c8a198e50aee1163c4e2eacfb65093e4483cb41432855f5f7c17d92008e6328ef6edd3fd4cedff0435fe59b91a710d105fecd99c9af8b3827c6f94080dba10b0740cb83a1736aebe914be9e1b3a4f900bd58c90b5aaacc7a055ac96b4f760a2c00bcd3290941109a6e3a493a9e5e9b6c0c3b07c3874c7322dd105dd4cbd799754999f0b8e1688a83ad1f9928dc4e7da91ff31c7b1513623d6440c73e0e9c3262096a77c51e2840a05fe125e2cf4210fcad25c38dbb8efbe05fd4a21177a322ef5f755fc701f52c6aa456c8347ee7f1adb5a55fcf2954fc5b135d45bcedcbe0e737ce1b8b15f5052f04befb8f5cdd7ff1aa2c7581ca9ad5c607d36544d548f53f4c000f8756430894237409e13958a95324440bf3a5132b77cf9910d69aed5e3f5999af19e6573d47bb1ea013459f628ec0d1b77b155c48a83af8bf4fc7732eb50c04de48470149663cc6a4803c198f0364dd4e31499ea4ecf40e16a31557e15c8dbf663ae06fbae2bf7b3ab779a1d8d7427cf71a4447d210f70718cc523b8f5b69965da081e31540954ef832ba154eb8f2d2436f4f5e33a06f85cded4891753b3c19b57b911ae39272d9174eafa6e62c5f63892d81c3ae569d84c3d4d30b2656c601acbffa2739c2972f2298cc098d4498b1bef0ab3a210035c05977ed433f79b85e46cd1aefdceb37476c0a35b6978d36e65c8426cf6216e530c6deb22ab8f95e625de3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855d7df21eb1e8bb74d65ffd382a65bb43da1376200a82d438a89b4ded63cfa80a1ad3dc5e4a574a7faf49314776761510b1f1b1637369e50e3503ecf98e7194a0801ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b78753d6ac7ba8a7d5948112d4c3a65edfc083c838de369dba99d6e153c9c731be00791bcc3e1412ab065c5da89c5f752fe8ccf253df2037150d710b04e9788d8015aabf136bc8910f574b468371aedd1d0e65a8b958b21dcc196593e57647cd392be4816fb8b9646adb5454c96390580a1be8e3e310189b66d4b9a68d550a1b3d1af3fab2ef8cc53b6c7f48bdeb178ac874b04faf4ba0159a96b6109f1d393e2rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpython-pycryptodomex-3.9.9-150300.3.3.1.src.rpmpython3-pycryptodomexpython3-pycryptodomex(ppc-64)@@@@     libc.so.6()(64bit)libc.so.6(GLIBC_2.17)(64bit)libpthread.so.0()(64bit)python(abi)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.63.0.4-14.6.0-14.0.4-14.0-15.2-14.14.3e_0@_)M^Y]M@]]x]w@\ \ڭ\1[[[[[@["@[;e@Z@Z?ZK@Y@Y@mcepl@suse.comhpj@urpla.netdmueller@suse.comdmueller@suse.comhpj@urpla.nethpj@urpla.nettbechtold@suse.comtchvatal@suse.comtchvatal@suse.commcalabkova@suse.comhpj@urpla.nethpj@urpla.nethpj@urpla.nethpj@urpla.nethpj@urpla.netdmueller@suse.commcalabkova@suse.comhpj@urpla.nettchvatal@suse.comhpj@urpla.nethpj@urpla.nethpj@urpla.nettoddrme2178@gmail.com- Add CVE-2023-52323-side_channel-RSA_decrypt.patch (bsc#1218564, CVE-2023-52323) fixing side-channel leakage in RSA decryption. - Add CVE-2023-52323-const_time-decoding.patch (bsc#1218564, CVE-2023-52323) using constant-time (faster) padding decoding also for OAEP.- update to 3.9.9: * GH#435: Fixed Crypto.Util.number.size for negative numbers- update to 3.9.8: * GH#426: The Shamir's secret sharing implementation is not actually compatible with ``ssss``. Added an optional parameter to enable interoperability. * GH#427: Skip altogether loading of ``gmp.dll`` on Windows. * GH#420: Fix incorrect CFB decryption when the input and the output are the same buffer. * Speed up Shamir's secret sharing routines. Thanks to ncarve.- update to 3.9.7: * GH#381: Make notarization possible again on OS X when using wheels. Thanks to Colin Atkinson. * RSA OAEP decryption was not verifying that all ``PS`` bytes are zero. * GH#372: fixed memory leak for operations that use memoryviews when `cffi` is not installed. * Fixed wrong ASN.1 OID for HMAC-SHA512 in PBE2. * GH#341: Prevent ``key_to_english`` from creating invalid data when fed with keys of length not multiple of 8. Thanks to vstoykovbg. * GH#347: Fix blocking RSA signing/decryption when key has very small factor. Thanks to Martijn Pieters. * GH#308: Align stack of functions using SSE2 intrinsics to avoid crashes, when compiled with gcc on 32-bit x86 platforms.- Use the pycryptodome tarball- Update to 3.9.2 (10 November 2019): + New features * Add Python 3.8 wheels for Mac. + Resolved issues * GH#308: Avoid allocating arrays of __m128i on the stack, to cope with buggy compilers. * GH#322: Remove blanket -O3 optimization for gcc and clang, to cope with buggy compilers. * GH#337: Fix typing stubs for signatures. * GH#338: Deal with gcc installations that don't have x86intrin.h. - Update to version 3.9.1 (1 November 2019): + New features * Add Python 3.8 wheels for Linux and Windows. + Resolved issues * GH#328: minor speed-up when importing RSA. - sync spec file with python-pycryptodome- Add export LC_ALL=en_US.UTF-8 to %build, %install and %check to fix the build on older distros- Update to 3.9.0: * Add support for loading PEM files encrypted with AES256-CBC. * Add support for XChaCha20 and XChaCha20-Poly1305 ciphers. * Add support for bcrypt key derivation function (Crypto.Protocol.KDF.bcrypt). * Add support for left multiplication of an EC point by a scalar. * Add support for importing ECC and RSA keys in the new OpenSSH format.- Update to 3.8.2: * GH#291: fix strict aliasing problem, emerged with GCC 9.1.- Update to 3.8.1 * Add support for loading PEM files encrypted with AES192-CBC, AES256-CBC, and AES256-GCM. * When importing ECC keys, ignore EC PARAMS section that was included by some openssl commands. * repr() did not work for ECC.EccKey. * Minimal length for Blowfish cipher is 32 bits, not 40 bits. 3.8.0 * Speed-up ECC performance. ECDSA is 33 times faster on the NIST P-256 curve. * Added support for NIST P-384 and P-521 curves. * EccKey has new methods size_in_bits() and size_in_bytes(). * Support HMAC-SHA224, HMAC-SHA256, HMAC-SHA384, and HMAC-SHA512 in PBE2/PBKDF2. * DER objects were not rejected if their length field had a leading zero. * Allow legacy RC2 ciphers to have 40-bit keys. * point_at_infinity() becomes an instance method for Crypto.PublicKey.ECC.EccKey, from a static one. 3.7.3 * GH#258: False positive on PSS signatures when externally provided salt is too long.- fix tarball: use the one from PyPI...- Update to 3.7.2 - Resolved issues * GH#242: Fixed compilation problem on ARM platforms. - Update to 3.7.1 - New features * Added type stubs to enable static type checking with mypy. Thanks to Michael Nix. * New ``update_after_digest`` flag for CMAC. - Resolved issues * GH#232: Fixed problem with gcc 4.x when compiling ``ghash_clmul.c``. * GH#238: Incorrect digest value produced by CMAC after cloning the object. * Method ``update()`` of an EAX cipher object was returning the underlying CMAC object, instead of the EAX object itself. * Method ``update()`` of a CMAC object was not throwing an exception after the digest was computed (with ``digest()`` or ``verify()``).- checked in python-pycrytodomex as separate package on request of Dirk Müller- fixed source url- Update to 3.7.0 - New features * Added support for Poly1305 MAC (with AES and ChaCha20 ciphers for key derivation). * Added support for ChaCha20-Poly1305 AEAD cipher. * New parameter output for Crypto.Util.strxor.strxor, Crypto.Util.strxor.strxor_c, encrypt and decrypt methods in symmetric ciphers (Crypto.Cipher package). output is a pre-allocated buffer (a bytearray or a writeable memoryview) where the result must be stored. This requires less memory for very large payloads; it is also more efficient when encrypting (or decrypting) several small payloads. - Resolved issues * GH#266: AES-GCM hangs when processing more than 4GB at a time on x86 with PCLMULQDQ instruction. - Breaks in compatibility * Drop support for Python 3.3. * Remove Crypto.Util.py3compat.unhexlify and Crypto.Util.py3compat.hexlify. * With the old Python 2.6, use only ctypes (and not cffi) to interface to native code. - Clean up spec - pycryptodomex package spec added- remove pycryptodomex copy in this package container- Update to 3.6.6 - Resolved issues: * Fix vulnerability on AESNI ECB with payloads smaller than 16 bytes. - Update to 3.5.5 - Resolved issues * Fixed incorrect AES encryption/decryption with AES acceleration on x86 due to gcc’s optimization and strict aliasing rules. * More prime number candidates than necessary where discarded as composite due to the limited way D values were searched in the Lucas test. * Fixed ResouceWarnings and DeprecationWarnings. - Update to 3.5.4 - New features: * Build Python 3.7 wheels on Linux, Windows and Mac. - Resolved issues: * More meaningful exceptions in case of mismatch in IV length (CBC/OFB/CFB modes).- Update to 3.6.3 (21 June 2018) - Resolved issues * GH#175: Fixed incorrect results for CTR encryption/decryption with more than 8 blocks. - Update to 3.6.2 (19 June 2018) - New features * ChaCha20 accepts 96 bit nonces (in addition to 64 bit nonces) as defined in RFC7539. * Accelerate AES-GCM on x86 using PCLMULQDQ instruction. * Accelerate AES-ECB and AES-CTR on x86 by pipelining AESNI instructions. * As result of the two improvements above, on x86 (Broadwell): - AES-ECB and AES-CTR are 3x faster - AES-GCM is 9x faster - Resolved issues * On Windows, MPIR library was stilled pulled in if renamed to ``gmp.dll``. - Breaks in compatibility * In ``Crypto.Util.number``, functions ``floor_div`` and ``exact_div`` have been removed. Also, ``ceil_div`` is limited to non-negative terms only. - suggesting libgmp10 and python-cffi - add license file tag- Provide/obsolete also python-crypto for py2 package- fix condition to act as drop in replacement for python-pycrypto- Update to 3.6.1 (15 April 2018) - New features * Added Google Wycheproof tests (https://github.com/google/wycheproof) for RSA, DSA, ECDSA, GCM, SIV, EAX, CMAC. * New parameter ``mac_len`` (length of MAC tag) for CMAC. - Resolved issues * In certain circumstances (at counter wrapping, which happens on average after 32 GBi) AES GCM produced wrong ciphertexts. * Method ``encrypt()`` of AES SIV cipher could be still called, whereas only ``encrypt_and_digest()`` should be allowed. - Update to 3.6.0 (8 April 2018) - New features * Introduced ``export_key`` and deprecated ``exportKey`` for DSA and RSA key objects. * Ciphers and hash functions accept ``memoryview`` objects in input. * Added support for SHA-512/224 and SHA-512/256. - Resolved issues * Reintroduced `Crypto.__version__` variable as in PyCrypto. * Fixed compilation problem with MinGW. - Update to 3.5.1 (8 March 2018) - Resolved issues * GH#142. Fix mismatch with declaration and definition of addmul128. - Update to 3.5.0 (7 March 2018) - New features * Import and export of ECC curves in compressed form. * The initial counter for a cipher in CTR mode can be a byte string (in addition to an integer). * Faster PBKDF2 for HMAC-based PRFs (at least 20x for short passwords, more for longer passwords). Thanks to Christian Heimes for pointing out the implementation was under-optimized. * The salt for PBKDF2 can be either a string or bytes (GH#67). * Ciphers and hash functions accept data as `bytearray`, not just binary strings. * The old SHA-1 and MD5 hash functions are available even when Python's own `hashlib` does not include them. - Resolved issues * Without libgmp, modular exponentiation (since v3.4.8) crashed on 32-bit big-endian systems. - Breaks in compatibility * Removed support for Python < 2.6. - Update to 3.4.12 (5 February 2018) - Resolved issues * GH#129. pycryptodomex could only be installed via wheels. - Update to 3.4.11 (5 February 2018) - Resolved issues * GH#121. the record list was still not correct due to PEP3147 and __pycache__ directories. Thanks again to John O'Brien. - Update to 3.4.10 (2 February 2018) - Resolved issues * When creating ElGamal keys, the generator wasn't a square residue: ElGamal encryption done with those keys cannot be secure under the DDH assumption. Thanks to Weikeng Chen. - Update to 3.4.9 (1 February 2018) - New features * More meaningful error messages while importing an ECC key. - Resolved issues * GH#123 and #125. The SSE2 command line switch was not always passed on 32-bit x86 platforms. * GH#121. The record list (--record) was not always correctly filled for the pycryptodomex package. Thanks to John W. O'Brien. - Update to 3.4.8 (27 January 2018) - New features * Added a native extension in pure C for modular exponentiation, optimized for SSE2 on x86. In the process, we drop support for the arbitrary arithmetic library MPIR on Windows, which is painful to compile and deploy. The custom modular exponentiation is 130% (160%) slower on an Intel CPU in 32-bit (64-bit) mode, compared to MPIR. Still, that is much faster that CPython's own `pow()` function which is 900% (855%) slower than MPIR. Support for the GMP library on Unix remains. * Added support for *manylinux* wheels. * Support for Python 3.7. - Resolved issues * The DSA parameter 'p' prime was created with 255 bits cleared (but still with the correct strength). * GH#106. Not all docs were included in the tar ball. Thanks to Christopher Hoskin. * GH#109. ECDSA verification failed for DER encoded signatures. Thanks to Alastair Houghton. * Human-friendly messages for padding errors with ECB and CBC.- provide python-crypto 2.6.1- Initial versionibs-power9-13 1708332764  !"#$%&'()*+,-./0123456689:;<<>>@ABCDEFGHHJKLMNNPPRSTTVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'')*+,-./0123456789:;<=>?@ABCDEFGHIIKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !!#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~     3.9.9-150300.3.3.13.9.9-150300.3.3.1    !!""""""!!##$$$$$$$$$$####%%&&&&&&&&%%%%'(((())****************))))))))+,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,+--------..////.00111111110000233244425552666277777777777777777777777777777777777777777777777777777777778899999999999999888888::::::::;;;;;;;;<<<<<<<<<<<<;;;;========>>>>>>>>>>>>>>>>>>>>>>================??@@@@@ABBBCDCryptodomeCipherAES.pyAES.pyiARC2.pyARC2.pyiARC4.pyARC4.pyiBlowfish.pyBlowfish.pyiCAST.pyCAST.pyiChaCha20.pyChaCha20.pyiChaCha20_Poly1305.pyChaCha20_Poly1305.pyiDES.pyDES.pyiDES3.pyDES3.pyiPKCS1_OAEP.pyPKCS1_OAEP.pyiPKCS1_v1_5.pyPKCS1_v1_5.pyiSalsa20.pySalsa20.pyi_ARC4.cpython-36m-powerpc64le-linux-gnu.so_EKSBlowfish.py_EKSBlowfish.pyi_Salsa20.cpython-36m-powerpc64le-linux-gnu.so__init__.py__init__.pyi__pycache__AES.cpython-36.opt-1.pycAES.cpython-36.pycARC2.cpython-36.opt-1.pycARC2.cpython-36.pycARC4.cpython-36.opt-1.pycARC4.cpython-36.pycBlowfish.cpython-36.opt-1.pycBlowfish.cpython-36.pycCAST.cpython-36.opt-1.pycCAST.cpython-36.pycChaCha20.cpython-36.opt-1.pycChaCha20.cpython-36.pycChaCha20_Poly1305.cpython-36.opt-1.pycChaCha20_Poly1305.cpython-36.pycDES.cpython-36.opt-1.pycDES.cpython-36.pycDES3.cpython-36.opt-1.pycDES3.cpython-36.pycPKCS1_OAEP.cpython-36.opt-1.pycPKCS1_OAEP.cpython-36.pycPKCS1_v1_5.cpython-36.opt-1.pycPKCS1_v1_5.cpython-36.pycSalsa20.cpython-36.opt-1.pycSalsa20.cpython-36.pyc_EKSBlowfish.cpython-36.opt-1.pyc_EKSBlowfish.cpython-36.pyc__init__.cpython-36.opt-1.pyc__init__.cpython-36.pyc_mode_cbc.cpython-36.opt-1.pyc_mode_cbc.cpython-36.pyc_mode_ccm.cpython-36.opt-1.pyc_mode_ccm.cpython-36.pyc_mode_cfb.cpython-36.opt-1.pyc_mode_cfb.cpython-36.pyc_mode_ctr.cpython-36.opt-1.pyc_mode_ctr.cpython-36.pyc_mode_eax.cpython-36.opt-1.pyc_mode_eax.cpython-36.pyc_mode_ecb.cpython-36.opt-1.pyc_mode_ecb.cpython-36.pyc_mode_gcm.cpython-36.opt-1.pyc_mode_gcm.cpython-36.pyc_mode_ocb.cpython-36.opt-1.pyc_mode_ocb.cpython-36.pyc_mode_ofb.cpython-36.opt-1.pyc_mode_ofb.cpython-36.pyc_mode_openpgp.cpython-36.opt-1.pyc_mode_openpgp.cpython-36.pyc_mode_siv.cpython-36.opt-1.pyc_mode_siv.cpython-36.pyc_pkcs1_oaep_decode.cpython-36.opt-1.pyc_pkcs1_oaep_decode.cpython-36.pyc_chacha20.cpython-36m-powerpc64le-linux-gnu.so_mode_cbc.py_mode_cbc.pyi_mode_ccm.py_mode_ccm.pyi_mode_cfb.py_mode_cfb.pyi_mode_ctr.py_mode_ctr.pyi_mode_eax.py_mode_eax.pyi_mode_ecb.py_mode_ecb.pyi_mode_gcm.py_mode_gcm.pyi_mode_ocb.py_mode_ocb.pyi_mode_ofb.py_mode_ofb.pyi_mode_openpgp.py_mode_openpgp.pyi_mode_siv.py_mode_siv.pyi_pkcs1_decode.cpython-36m-powerpc64le-linux-gnu.so_pkcs1_oaep_decode.py_raw_aes.cpython-36m-powerpc64le-linux-gnu.so_raw_arc2.cpython-36m-powerpc64le-linux-gnu.so_raw_blowfish.cpython-36m-powerpc64le-linux-gnu.so_raw_cast.cpython-36m-powerpc64le-linux-gnu.so_raw_cbc.cpython-36m-powerpc64le-linux-gnu.so_raw_cfb.cpython-36m-powerpc64le-linux-gnu.so_raw_ctr.cpython-36m-powerpc64le-linux-gnu.so_raw_des.cpython-36m-powerpc64le-linux-gnu.so_raw_des3.cpython-36m-powerpc64le-linux-gnu.so_raw_ecb.cpython-36m-powerpc64le-linux-gnu.so_raw_eksblowfish.cpython-36m-powerpc64le-linux-gnu.so_raw_ocb.cpython-36m-powerpc64le-linux-gnu.so_raw_ofb.cpython-36m-powerpc64le-linux-gnu.soHashBLAKE2b.pyBLAKE2b.pyiBLAKE2s.pyBLAKE2s.pyiCMAC.pyCMAC.pyiHMAC.pyHMAC.pyiMD2.pyMD2.pyiMD4.pyMD4.pyiMD5.pyMD5.pyiPoly1305.pyPoly1305.pyiRIPEMD.pyRIPEMD.pyiRIPEMD160.pyRIPEMD160.pyiSHA.pySHA.pyiSHA1.pySHA1.pyiSHA224.pySHA224.pyiSHA256.pySHA256.pyiSHA384.pySHA384.pyiSHA3_224.pySHA3_224.pyiSHA3_256.pySHA3_256.pyiSHA3_384.pySHA3_384.pyiSHA3_512.pySHA3_512.pyiSHA512.pySHA512.pyiSHAKE128.pySHAKE128.pyiSHAKE256.pySHAKE256.pyi_BLAKE2b.cpython-36m-powerpc64le-linux-gnu.so_BLAKE2s.cpython-36m-powerpc64le-linux-gnu.so_MD2.cpython-36m-powerpc64le-linux-gnu.so_MD4.cpython-36m-powerpc64le-linux-gnu.so_MD5.cpython-36m-powerpc64le-linux-gnu.so_RIPEMD160.cpython-36m-powerpc64le-linux-gnu.so_SHA1.cpython-36m-powerpc64le-linux-gnu.so_SHA224.cpython-36m-powerpc64le-linux-gnu.so_SHA256.cpython-36m-powerpc64le-linux-gnu.so_SHA384.cpython-36m-powerpc64le-linux-gnu.so_SHA512.cpython-36m-powerpc64le-linux-gnu.so__init__.py__init__.pyi__pycache__BLAKE2b.cpython-36.opt-1.pycBLAKE2b.cpython-36.pycBLAKE2s.cpython-36.opt-1.pycBLAKE2s.cpython-36.pycCMAC.cpython-36.opt-1.pycCMAC.cpython-36.pycHMAC.cpython-36.opt-1.pycHMAC.cpython-36.pycMD2.cpython-36.opt-1.pycMD2.cpython-36.pycMD4.cpython-36.opt-1.pycMD4.cpython-36.pycMD5.cpython-36.opt-1.pycMD5.cpython-36.pycPoly1305.cpython-36.opt-1.pycPoly1305.cpython-36.pycRIPEMD.cpython-36.opt-1.pycRIPEMD.cpython-36.pycRIPEMD160.cpython-36.opt-1.pycRIPEMD160.cpython-36.pycSHA.cpython-36.opt-1.pycSHA.cpython-36.pycSHA1.cpython-36.opt-1.pycSHA1.cpython-36.pycSHA224.cpython-36.opt-1.pycSHA224.cpython-36.pycSHA256.cpython-36.opt-1.pycSHA256.cpython-36.pycSHA384.cpython-36.opt-1.pycSHA384.cpython-36.pycSHA3_224.cpython-36.opt-1.pycSHA3_224.cpython-36.pycSHA3_256.cpython-36.opt-1.pycSHA3_256.cpython-36.pycSHA3_384.cpython-36.opt-1.pycSHA3_384.cpython-36.pycSHA3_512.cpython-36.opt-1.pycSHA3_512.cpython-36.pycSHA512.cpython-36.opt-1.pycSHA512.cpython-36.pycSHAKE128.cpython-36.opt-1.pycSHAKE128.cpython-36.pycSHAKE256.cpython-36.opt-1.pycSHAKE256.cpython-36.pyc__init__.cpython-36.opt-1.pyc__init__.cpython-36.pyckeccak.cpython-36.opt-1.pyckeccak.cpython-36.pyc_ghash_portable.cpython-36m-powerpc64le-linux-gnu.so_keccak.cpython-36m-powerpc64le-linux-gnu.so_poly1305.cpython-36m-powerpc64le-linux-gnu.sokeccak.pykeccak.pyiIOPEM.pyPEM.pyiPKCS8.pyPKCS8.pyi_PBES.py_PBES.pyi__init__.py__pycache__PEM.cpython-36.opt-1.pycPEM.cpython-36.pycPKCS8.cpython-36.opt-1.pycPKCS8.cpython-36.pyc_PBES.cpython-36.opt-1.pyc_PBES.cpython-36.pyc__init__.cpython-36.opt-1.pyc__init__.cpython-36.pycMathNumbers.pyNumbers.pyiPrimality.pyPrimality.pyi_IntegerBase.py_IntegerBase.pyi_IntegerCustom.py_IntegerCustom.pyi_IntegerGMP.py_IntegerGMP.pyi_IntegerNative.py_IntegerNative.pyi__init__.py__pycache__Numbers.cpython-36.opt-1.pycNumbers.cpython-36.pycPrimality.cpython-36.opt-1.pycPrimality.cpython-36.pyc_IntegerBase.cpython-36.opt-1.pyc_IntegerBase.cpython-36.pyc_IntegerCustom.cpython-36.opt-1.pyc_IntegerCustom.cpython-36.pyc_IntegerGMP.cpython-36.opt-1.pyc_IntegerGMP.cpython-36.pyc_IntegerNative.cpython-36.opt-1.pyc_IntegerNative.cpython-36.pyc__init__.cpython-36.opt-1.pyc__init__.cpython-36.pyc_modexp.cpython-36m-powerpc64le-linux-gnu.soProtocolKDF.pyKDF.pyiSecretSharing.pySecretSharing.pyi__init__.py__init__.pyi__pycache__KDF.cpython-36.opt-1.pycKDF.cpython-36.pycSecretSharing.cpython-36.opt-1.pycSecretSharing.cpython-36.pyc__init__.cpython-36.opt-1.pyc__init__.cpython-36.pyc_scrypt.cpython-36m-powerpc64le-linux-gnu.soPublicKeyDSA.pyDSA.pyiECC.pyECC.pyiElGamal.pyElGamal.pyiRSA.pyRSA.pyi__init__.py__init__.pyi__pycache__DSA.cpython-36.opt-1.pycDSA.cpython-36.pycECC.cpython-36.opt-1.pycECC.cpython-36.pycElGamal.cpython-36.opt-1.pycElGamal.cpython-36.pycRSA.cpython-36.opt-1.pycRSA.cpython-36.pyc__init__.cpython-36.opt-1.pyc__init__.cpython-36.pyc_openssh.cpython-36.opt-1.pyc_openssh.cpython-36.pyc_ec_ws.cpython-36m-powerpc64le-linux-gnu.so_openssh.py_openssh.pyiRandom__init__.py__init__.pyi__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycrandom.cpython-36.opt-1.pycrandom.cpython-36.pycrandom.pyrandom.pyiSelfTestCipher__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pyccommon.cpython-36.opt-1.pyccommon.cpython-36.pyctest_AES.cpython-36.opt-1.pyctest_AES.cpython-36.pyctest_ARC2.cpython-36.opt-1.pyctest_ARC2.cpython-36.pyctest_ARC4.cpython-36.opt-1.pyctest_ARC4.cpython-36.pyctest_Blowfish.cpython-36.opt-1.pyctest_Blowfish.cpython-36.pyctest_CAST.cpython-36.opt-1.pyctest_CAST.cpython-36.pyctest_CBC.cpython-36.opt-1.pyctest_CBC.cpython-36.pyctest_CCM.cpython-36.opt-1.pyctest_CCM.cpython-36.pyctest_CFB.cpython-36.opt-1.pyctest_CFB.cpython-36.pyctest_CTR.cpython-36.opt-1.pyctest_CTR.cpython-36.pyctest_ChaCha20.cpython-36.opt-1.pyctest_ChaCha20.cpython-36.pyctest_ChaCha20_Poly1305.cpython-36.opt-1.pyctest_ChaCha20_Poly1305.cpython-36.pyctest_DES.cpython-36.opt-1.pyctest_DES.cpython-36.pyctest_DES3.cpython-36.opt-1.pyctest_DES3.cpython-36.pyctest_EAX.cpython-36.opt-1.pyctest_EAX.cpython-36.pyctest_GCM.cpython-36.opt-1.pyctest_GCM.cpython-36.pyctest_OCB.cpython-36.opt-1.pyctest_OCB.cpython-36.pyctest_OFB.cpython-36.opt-1.pyctest_OFB.cpython-36.pyctest_OpenPGP.cpython-36.opt-1.pyctest_OpenPGP.cpython-36.pyctest_SIV.cpython-36.opt-1.pyctest_SIV.cpython-36.pyctest_Salsa20.cpython-36.opt-1.pyctest_Salsa20.cpython-36.pyctest_pkcs1_15.cpython-36.opt-1.pyctest_pkcs1_15.cpython-36.pyctest_pkcs1_oaep.cpython-36.opt-1.pyctest_pkcs1_oaep.cpython-36.pyccommon.pytest_AES.pytest_ARC2.pytest_ARC4.pytest_Blowfish.pytest_CAST.pytest_CBC.pytest_CCM.pytest_CFB.pytest_CTR.pytest_ChaCha20.pytest_ChaCha20_Poly1305.pytest_DES.pytest_DES3.pytest_EAX.pytest_GCM.pytest_OCB.pytest_OFB.pytest_OpenPGP.pytest_SIV.pytest_Salsa20.pytest_pkcs1_15.pytest_pkcs1_oaep.pytest_vectorsAESCBCGFSbox128.rspCBCGFSbox192.rspCBCGFSbox256.rspCBCKeySbox128.rspCBCKeySbox192.rspCBCKeySbox256.rspCBCMCT128.rspCBCMCT192.rspCBCMCT256.rspCBCMMT128.rspCBCMMT192.rspCBCMMT256.rspCBCVarKey128.rspCBCVarKey192.rspCBCVarKey256.rspCBCVarTxt128.rspCBCVarTxt192.rspCBCVarTxt256.rspCFB128GFSbox128.rspCFB128GFSbox192.rspCFB128GFSbox256.rspCFB128KeySbox128.rspCFB128KeySbox192.rspCFB128KeySbox256.rspCFB128MCT128.rspCFB128MCT192.rspCFB128MCT256.rspCFB128MMT128.rspCFB128MMT192.rspCFB128MMT256.rspCFB128VarKey128.rspCFB128VarKey192.rspCFB128VarKey256.rspCFB128VarTxt128.rspCFB128VarTxt192.rspCFB128VarTxt256.rspCFB8GFSbox128.rspCFB8GFSbox192.rspCFB8GFSbox256.rspCFB8KeySbox128.rspCFB8KeySbox192.rspCFB8KeySbox256.rspCFB8MCT128.rspCFB8MCT192.rspCFB8MCT256.rspCFB8MMT128.rspCFB8MMT192.rspCFB8MMT256.rspCFB8VarKey128.rspCFB8VarKey192.rspCFB8VarKey256.rspCFB8VarTxt128.rspCFB8VarTxt192.rspCFB8VarTxt256.rspOFBGFSbox128.rspOFBGFSbox192.rspOFBGFSbox256.rspOFBKeySbox128.rspOFBKeySbox192.rspOFBKeySbox256.rspOFBMCT128.rspOFBMCT192.rspOFBMCT256.rspOFBMMT128.rspOFBMMT192.rspOFBMMT256.rspOFBVarKey128.rspOFBVarKey192.rspOFBVarKey256.rspOFBVarTxt128.rspOFBVarTxt192.rspOFBVarTxt256.rspREADME.txtgcmDecrypt128.rspgcmEncryptExtIV128.rspTDESREADME.txtTCBCMMT2.rspTCBCMMT3.rspTCBCinvperm.rspTCBCpermop.rspTCBCsubtab.rspTCBCvarkey.rspTCBCvartext.rspTCFB64MMT2.rspTCFB64MMT3.rspTCFB64invperm.rspTCFB64permop.rspTCFB64subtab.rspTCFB64varkey.rspTCFB64vartext.rspTCFB8MMT2.rspTCFB8MMT3.rspTCFB8invperm.rspTCFB8permop.rspTCFB8subtab.rspTCFB8varkey.rspTCFB8vartext.rspTECBMMT2.rspTECBMMT3.rspTOFBMMT2.rspTOFBMMT3.rspTOFBinvperm.rspTOFBpermop.rspTOFBsubtab.rspTOFBvarkey.rspTOFBvartext.rspwycheproofaead_aes_siv_cmac_test.jsonaes_ccm_test.jsonaes_eax_test.jsonaes_gcm_test.jsonaes_siv_cmac_test.jsonchacha20_poly1305_test.jsonrsa_oaep_2048_sha1_mgf1sha1_test.jsonrsa_oaep_2048_sha224_mgf1sha1_test.jsonrsa_oaep_2048_sha224_mgf1sha224_test.jsonrsa_oaep_2048_sha256_mgf1sha1_test.jsonrsa_oaep_2048_sha256_mgf1sha256_test.jsonrsa_oaep_2048_sha384_mgf1sha1_test.jsonrsa_oaep_2048_sha384_mgf1sha384_test.jsonrsa_oaep_2048_sha512_mgf1sha1_test.jsonrsa_oaep_2048_sha512_mgf1sha512_test.jsonrsa_oaep_3072_sha256_mgf1sha1_test.jsonrsa_oaep_3072_sha256_mgf1sha256_test.jsonrsa_oaep_3072_sha512_mgf1sha1_test.jsonrsa_oaep_3072_sha512_mgf1sha512_test.jsonrsa_oaep_4096_sha256_mgf1sha1_test.jsonrsa_oaep_4096_sha256_mgf1sha256_test.jsonrsa_oaep_4096_sha512_mgf1sha1_test.jsonrsa_oaep_4096_sha512_mgf1sha512_test.jsonrsa_oaep_misc_test.jsonrsa_pkcs1_2048_test.jsonrsa_pkcs1_3072_test.jsonrsa_pkcs1_4096_test.jsonxchacha20_poly1305_test.jsonHash__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pyccommon.cpython-36.opt-1.pyccommon.cpython-36.pyctest_BLAKE2.cpython-36.opt-1.pyctest_BLAKE2.cpython-36.pyctest_CMAC.cpython-36.opt-1.pyctest_CMAC.cpython-36.pyctest_HMAC.cpython-36.opt-1.pyctest_HMAC.cpython-36.pyctest_MD2.cpython-36.opt-1.pyctest_MD2.cpython-36.pyctest_MD4.cpython-36.opt-1.pyctest_MD4.cpython-36.pyctest_MD5.cpython-36.opt-1.pyctest_MD5.cpython-36.pyctest_Poly1305.cpython-36.opt-1.pyctest_Poly1305.cpython-36.pyctest_RIPEMD160.cpython-36.opt-1.pyctest_RIPEMD160.cpython-36.pyctest_SHA1.cpython-36.opt-1.pyctest_SHA1.cpython-36.pyctest_SHA224.cpython-36.opt-1.pyctest_SHA224.cpython-36.pyctest_SHA256.cpython-36.opt-1.pyctest_SHA256.cpython-36.pyctest_SHA384.cpython-36.opt-1.pyctest_SHA384.cpython-36.pyctest_SHA3_224.cpython-36.opt-1.pyctest_SHA3_224.cpython-36.pyctest_SHA3_256.cpython-36.opt-1.pyctest_SHA3_256.cpython-36.pyctest_SHA3_384.cpython-36.opt-1.pyctest_SHA3_384.cpython-36.pyctest_SHA3_512.cpython-36.opt-1.pyctest_SHA3_512.cpython-36.pyctest_SHA512.cpython-36.opt-1.pyctest_SHA512.cpython-36.pyctest_SHAKE.cpython-36.opt-1.pyctest_SHAKE.cpython-36.pyctest_keccak.cpython-36.opt-1.pyctest_keccak.cpython-36.pyccommon.pytest_BLAKE2.pytest_CMAC.pytest_HMAC.pytest_MD2.pytest_MD4.pytest_MD5.pytest_Poly1305.pytest_RIPEMD160.pytest_SHA1.pytest_SHA224.pytest_SHA256.pytest_SHA384.pytest_SHA3_224.pytest_SHA3_256.pytest_SHA3_384.pytest_SHA3_512.pytest_SHA512.pytest_SHAKE.pytest_keccak.pytest_vectorsBLAKE2bblake2b-test.txttv1.txttv2.txtBLAKE2sblake2s-test.txttv1.txttv2.txtSHA1SHA1ShortMsg.rspSHA2SHA512ShortMsg.rspSHA512_224ShortMsg.rspSHA512_256ShortMsg.rspSHA3ShortMsgKAT_SHA3-224.txtShortMsgKAT_SHA3-256.txtShortMsgKAT_SHA3-384.txtShortMsgKAT_SHA3-512.txtShortMsgKAT_SHAKE128.txtShortMsgKAT_SHAKE256.txtkeccakExtremelyLongMsgKAT_224.txtExtremelyLongMsgKAT_256.txtExtremelyLongMsgKAT_384.txtExtremelyLongMsgKAT_512.txtLongMsgKAT_224.txtLongMsgKAT_256.txtLongMsgKAT_384.txtLongMsgKAT_512.txtShortMsgKAT_224.txtShortMsgKAT_256.txtShortMsgKAT_384.txtShortMsgKAT_512.txtreadme.txtwycheproofaes_cmac_test.jsonIO__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pyctest_PBES.cpython-36.opt-1.pyctest_PBES.cpython-36.pyctest_PKCS8.cpython-36.opt-1.pyctest_PKCS8.cpython-36.pyctest_PBES.pytest_PKCS8.pyMath__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pyctest_Numbers.cpython-36.opt-1.pyctest_Numbers.cpython-36.pyctest_Primality.cpython-36.opt-1.pyctest_Primality.cpython-36.pyctest_modexp.cpython-36.opt-1.pyctest_modexp.cpython-36.pyctest_modmult.cpython-36.opt-1.pyctest_modmult.cpython-36.pyctest_Numbers.pytest_Primality.pytest_modexp.pytest_modmult.pyProtocol__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pyctest_KDF.cpython-36.opt-1.pyctest_KDF.cpython-36.pyctest_SecretSharing.cpython-36.opt-1.pyctest_SecretSharing.cpython-36.pyctest_rfc1751.cpython-36.opt-1.pyctest_rfc1751.cpython-36.pyctest_KDF.pytest_SecretSharing.pytest_rfc1751.pytest_vectorswycheproofhkdf_sha1_test.jsonhkdf_sha256_test.jsonhkdf_sha384_test.jsonhkdf_sha512_test.jsonPublicKey__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pyctest_DSA.cpython-36.opt-1.pyctest_DSA.cpython-36.pyctest_ECC.cpython-36.opt-1.pyctest_ECC.cpython-36.pyctest_ElGamal.cpython-36.opt-1.pyctest_ElGamal.cpython-36.pyctest_RSA.cpython-36.opt-1.pyctest_RSA.cpython-36.pyctest_import_DSA.cpython-36.opt-1.pyctest_import_DSA.cpython-36.pyctest_import_ECC.cpython-36.opt-1.pyctest_import_ECC.cpython-36.pyctest_import_RSA.cpython-36.opt-1.pyctest_import_RSA.cpython-36.pyctest_DSA.pytest_ECC.pytest_ElGamal.pytest_RSA.pytest_import_DSA.pytest_import_ECC.pytest_import_RSA.pytest_vectorsECCecc_p256.txtecc_p256_private.derecc_p256_private.pemecc_p256_private_ecparams.pemecc_p256_private_enc_aes128.pemecc_p256_private_enc_aes192.pemecc_p256_private_enc_aes256.pemecc_p256_private_enc_aes256_gcm.pemecc_p256_private_enc_des3.pemecc_p256_private_openssh.pemecc_p256_private_openssh_old.pemecc_p256_private_openssh_pwd.pemecc_p256_private_openssh_pwd_old.pemecc_p256_private_p8.derecc_p256_private_p8.pemecc_p256_private_p8_clear.derecc_p256_private_p8_clear.pemecc_p256_public.derecc_p256_public.pemecc_p256_public_compressed.derecc_p256_public_compressed.pemecc_p256_public_openssh.txtecc_p256_x509.derecc_p256_x509.pemecc_p384.txtecc_p384_private.derecc_p384_private.pemecc_p384_private_enc_aes128.pemecc_p384_private_enc_aes192.pemecc_p384_private_enc_aes256.pemecc_p384_private_enc_aes256_gcm.pemecc_p384_private_enc_des3.pemecc_p384_private_openssh.pemecc_p384_private_openssh_old.pemecc_p384_private_openssh_pwd.pemecc_p384_private_openssh_pwd_old.pemecc_p384_private_p8.derecc_p384_private_p8.pemecc_p384_private_p8_clear.derecc_p384_private_p8_clear.pemecc_p384_public.derecc_p384_public.pemecc_p384_public_compressed.derecc_p384_public_compressed.pemecc_p384_public_openssh.txtecc_p384_x509.derecc_p384_x509.pemecc_p521.txtecc_p521_private.derecc_p521_private.pemecc_p521_private_enc_aes128.pemecc_p521_private_enc_aes192.pemecc_p521_private_enc_aes256.pemecc_p521_private_enc_aes256_gcm.pemecc_p521_private_enc_des3.pemecc_p521_private_openssh.pemecc_p521_private_openssh_old.pemecc_p521_private_openssh_pwd.pemecc_p521_private_openssh_pwd_old.pemecc_p521_private_p8.derecc_p521_private_p8.pemecc_p521_private_p8_clear.derecc_p521_private_p8_clear.pemecc_p521_public.derecc_p521_public.pemecc_p521_public_compressed.derecc_p521_public_compressed.pemecc_p521_public_openssh.txtecc_p521_x509.derecc_p521_x509.pemgen_ecc_p256.shgen_ecc_p384.shgen_ecc_p521.shopenssl_version.txtopenssl_version_p384.txtopenssl_version_p521.txtpoint-at-infinity.org-P256.txtpoint-at-infinity.org-P384.txtpoint-at-infinity.org-P521.txtRSAgen_rsa_2048.shopenssl_version.txtrsa2048_private.pemrsa2048_private_openssh.pemrsa2048_private_openssh_old.pemrsa2048_private_openssh_pwd.pemrsa2048_private_openssh_pwd_old.pemrsa2048_public_openssh.txtRandom__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pyctest_random.cpython-36.opt-1.pyctest_random.cpython-36.pyctest_random.pySignature__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pyctest_dss.cpython-36.opt-1.pyctest_dss.cpython-36.pyctest_pkcs1_15.cpython-36.opt-1.pyctest_pkcs1_15.cpython-36.pyctest_pss.cpython-36.opt-1.pyctest_pss.cpython-36.pyctest_dss.pytest_pkcs1_15.pytest_pss.pytest_vectorsDSAFIPS_186_3_SigGen.txtFIPS_186_3_SigVer.rspECDSAREADME.txtSigGen.txtSigVer.rspPKCS1-PSSSigGenPSS_186-2.txtSigGenPSS_186-3.txtSigVerPSS_186-3.rspPKCS1-v1.5SigGen15_186-2.txtSigGen15_186-3.txtSigVer15_186-3.rspwycheproofdsa_test.jsonecdsa_secp224r1_sha224_p1363_test.jsonecdsa_secp224r1_sha224_test.jsonecdsa_secp224r1_sha256_p1363_test.jsonecdsa_secp224r1_sha256_test.jsonecdsa_secp224r1_sha3_224_test.jsonecdsa_secp224r1_sha3_256_test.jsonecdsa_secp224r1_sha3_512_test.jsonecdsa_secp224r1_sha512_p1363_test.jsonecdsa_secp224r1_sha512_test.jsonecdsa_secp256r1_sha256_p1363_test.jsonecdsa_secp256r1_sha256_test.jsonecdsa_secp256r1_sha3_256_test.jsonecdsa_secp256r1_sha3_512_test.jsonecdsa_secp256r1_sha512_p1363_test.jsonecdsa_secp256r1_sha512_test.jsonecdsa_secp384r1_sha384_p1363_test.jsonecdsa_secp384r1_sha384_test.jsonecdsa_secp384r1_sha3_384_test.jsonecdsa_secp384r1_sha3_512_test.jsonecdsa_secp384r1_sha512_p1363_test.jsonecdsa_secp384r1_sha512_test.jsonecdsa_secp521r1_sha3_512_test.jsonecdsa_secp521r1_sha512_p1363_test.jsonecdsa_secp521r1_sha512_test.jsonecdsa_test.jsonecdsa_webcrypto_test.jsonrsa_pss_2048_sha1_mgf1_20_test.jsonrsa_pss_2048_sha256_mgf1_0_test.jsonrsa_pss_2048_sha256_mgf1_32_test.jsonrsa_pss_2048_sha512_256_mgf1_28_test.jsonrsa_pss_2048_sha512_256_mgf1_32_test.jsonrsa_pss_3072_sha256_mgf1_32_test.jsonrsa_pss_4096_sha256_mgf1_32_test.jsonrsa_pss_4096_sha512_mgf1_32_test.jsonrsa_pss_misc_test.jsonrsa_sig_gen_misc_test.jsonrsa_signature_2048_sha224_test.jsonrsa_signature_2048_sha256_test.jsonrsa_signature_2048_sha384_test.jsonrsa_signature_2048_sha3_224_test.jsonrsa_signature_2048_sha3_256_test.jsonrsa_signature_2048_sha3_384_test.jsonrsa_signature_2048_sha3_512_test.jsonrsa_signature_2048_sha512_224_test.jsonrsa_signature_2048_sha512_256_test.jsonrsa_signature_2048_sha512_test.jsonrsa_signature_3072_sha256_test.jsonrsa_signature_3072_sha384_test.jsonrsa_signature_3072_sha3_256_test.jsonrsa_signature_3072_sha3_384_test.jsonrsa_signature_3072_sha3_512_test.jsonrsa_signature_3072_sha512_256_test.jsonrsa_signature_3072_sha512_test.jsonrsa_signature_4096_sha384_test.jsonrsa_signature_4096_sha512_256_test.jsonrsa_signature_4096_sha512_test.jsonrsa_signature_test.jsonUtil__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pyctest_Counter.cpython-36.opt-1.pyctest_Counter.cpython-36.pyctest_Padding.cpython-36.opt-1.pyctest_Padding.cpython-36.pyctest_asn1.cpython-36.opt-1.pyctest_asn1.cpython-36.pyctest_number.cpython-36.opt-1.pyctest_number.cpython-36.pyctest_rfc1751.cpython-36.opt-1.pyctest_rfc1751.cpython-36.pyctest_strxor.cpython-36.opt-1.pyctest_strxor.cpython-36.pyctest_Counter.pytest_Padding.pytest_asn1.pytest_number.pytest_rfc1751.pytest_strxor.py__init__.py__main__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pyc__main__.cpython-36.opt-1.pyc__main__.cpython-36.pycloader.cpython-36.opt-1.pycloader.cpython-36.pycst_common.cpython-36.opt-1.pycst_common.cpython-36.pycloader.pyst_common.pySignatureDSS.pyDSS.pyiPKCS1_PSS.pyPKCS1_PSS.pyiPKCS1_v1_5.pyPKCS1_v1_5.pyi__init__.py__pycache__DSS.cpython-36.opt-1.pycDSS.cpython-36.pycPKCS1_PSS.cpython-36.opt-1.pycPKCS1_PSS.cpython-36.pycPKCS1_v1_5.cpython-36.opt-1.pycPKCS1_v1_5.cpython-36.pyc__init__.cpython-36.opt-1.pyc__init__.cpython-36.pycpkcs1_15.cpython-36.opt-1.pycpkcs1_15.cpython-36.pycpss.cpython-36.opt-1.pycpss.cpython-36.pycpkcs1_15.pypkcs1_15.pyipss.pypss.pyiUtilCounter.pyCounter.pyiPadding.pyPadding.pyiRFC1751.pyRFC1751.pyi__init__.py__pycache__Counter.cpython-36.opt-1.pycCounter.cpython-36.pycPadding.cpython-36.opt-1.pycPadding.cpython-36.pycRFC1751.cpython-36.opt-1.pycRFC1751.cpython-36.pyc__init__.cpython-36.opt-1.pyc__init__.cpython-36.pyc_cpu_features.cpython-36.opt-1.pyc_cpu_features.cpython-36.pyc_file_system.cpython-36.opt-1.pyc_file_system.cpython-36.pyc_raw_api.cpython-36.opt-1.pyc_raw_api.cpython-36.pycasn1.cpython-36.opt-1.pycasn1.cpython-36.pycnumber.cpython-36.opt-1.pycnumber.cpython-36.pycpy3compat.cpython-36.opt-1.pycpy3compat.cpython-36.pycstrxor.cpython-36.opt-1.pycstrxor.cpython-36.pyc_cpu_features.py_cpu_features.pyi_cpuid_c.cpython-36m-powerpc64le-linux-gnu.so_file_system.py_file_system.pyi_raw_api.py_raw_api.pyi_strxor.cpython-36m-powerpc64le-linux-gnu.soasn1.pyasn1.pyinumber.pynumber.pyipy3compat.pypy3compat.pyistrxor.pystrxor.pyi__init__.py__init__.pyi__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycpy.typedpycryptodomex-3.9.9-py3.6.egg-infoPKG-INFOSOURCES.txtdependency_links.txtnot-zip-safetop_level.txtpython3-pycryptodomexAUTHORS.rstChangelog.rstREADME.rstpython3-pycryptodomexLICENSE.rst/usr/lib64/python3.6/site-packages//usr/lib64/python3.6/site-packages/Cryptodome//usr/lib64/python3.6/site-packages/Cryptodome/Cipher//usr/lib64/python3.6/site-packages/Cryptodome/Cipher/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/Hash//usr/lib64/python3.6/site-packages/Cryptodome/Hash/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/IO//usr/lib64/python3.6/site-packages/Cryptodome/IO/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/Math//usr/lib64/python3.6/site-packages/Cryptodome/Math/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/Protocol//usr/lib64/python3.6/site-packages/Cryptodome/Protocol/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/PublicKey//usr/lib64/python3.6/site-packages/Cryptodome/PublicKey/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/Random//usr/lib64/python3.6/site-packages/Cryptodome/Random/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Cipher//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Cipher/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Cipher/test_vectors//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Cipher/test_vectors/AES//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Cipher/test_vectors/TDES//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Cipher/test_vectors/wycheproof//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Hash//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Hash/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Hash/test_vectors//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Hash/test_vectors/BLAKE2b//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Hash/test_vectors/BLAKE2s//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Hash/test_vectors/SHA1//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Hash/test_vectors/SHA2//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Hash/test_vectors/SHA3//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Hash/test_vectors/keccak//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Hash/test_vectors/wycheproof//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/IO//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/IO/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Math//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Math/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Protocol//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Protocol/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Protocol/test_vectors//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Protocol/test_vectors/wycheproof//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/PublicKey//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/PublicKey/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/ECC//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/PublicKey/test_vectors/RSA//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Random//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Random/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Signature//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Signature/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Signature/test_vectors//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Signature/test_vectors/DSA//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Signature/test_vectors/ECDSA//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Signature/test_vectors/PKCS1-PSS//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Signature/test_vectors/PKCS1-v1.5//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Signature/test_vectors/wycheproof//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Util//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/Util/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/SelfTest/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/Signature//usr/lib64/python3.6/site-packages/Cryptodome/Signature/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/Util//usr/lib64/python3.6/site-packages/Cryptodome/Util/__pycache__//usr/lib64/python3.6/site-packages/Cryptodome/__pycache__//usr/lib64/python3.6/site-packages/pycryptodomex-3.9.9-py3.6.egg-info//usr/share/doc/packages//usr/share/doc/packages/python3-pycryptodomex//usr/share/licenses//usr/share/licenses/python3-pycryptodomex/-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:32629/SUSE_SLE-15-SP3_Update/c0a089ff2434467f0b883b21e402be14-python-pycryptodomex.SUSE_SLE-15-SP3_Updatedrpmxz5ppc64le-suse-linux  !"#$%&%'((((((((()))((((((((((((((()))((((((((((((((((((((((((((((((((()))((((((((((((((((((((((((((((((((((((((**************************((((******++++********,,,,%****,,------------------------------------------------....----,))))))))*****************************************,/01--+directoryPython script, ASCII text executableELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=85595ac211e6aef820f3b24654b64b61b7b58ce8, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=38bf1226518701275bd62d535f7584b34cc977d3, strippedemptypython 3.6 byte-compiledELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=4b5e514034537218ea978187da1eb8ee2ddbbbd4, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=8d1a0275fea1e9b9ccaf245e8cd374ea6128add5, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=894fa7778a870fa99c6ae6ce2cdcd7167ca70ddb, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=08816e113ae83007d47242e602860a1b9879542d, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=2bc09a6b336a802bf341398af56475e36cccc7a7, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=f285b800c11657b878d13053bbbea66161234c03, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=622074ca5c1630abc3b3fdabd262de3bb17603c3, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=4f3893c342664d2ac276573962e883e8a0479297, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=1a02b483eb079ff9d92573916f363ceb68399de7, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=6bfeedb4905feb6aa9d1ee33bf1dcab8af28d500, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=adbbafa93b296b4fc64da2a7c97295cf7ee1a412, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=c12f38f6bab8920836b9c977b71a204cf90e28b4, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=e5da59a958dfc4b4e001e8cec619a62d078dc024, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=ef7dad02ed62c34d05410f4928508c503dfeff57, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=f7b82244377ce86c54334238dc47a14fbc1b5fea, strippedASCII textELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=271b1b4c9343d2bd078ece5574351814b46e0c54, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=c3f4b2177500372aacbcbdce49d3ba6b2be10c60, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=71f74c73b89dddf2cdf75290db7fd224ec587029, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=4669fb4cc9fc98a7a7f030554f1fadd369305225, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=3f371800433fa8c825158025854b19f459de1209, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=734aa04471bb1f82598e9569247a80a48442442e, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=b420f3e16782b673e7cbdf71df70a5e9ad1240a9, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=711f971fccd3d99dcae18edb9f262ecdfadf782a, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=de38da216b1e8b81e0fe376f3f6bb10dd0bc1013, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=3130ba193b5e755735a34566aaf25a379e6f3ba6, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=23e3c6518af9b49511b7b58ceb0e2822200d77db, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=5a6c3ec36900b0393b04ab444a8fa7f553f5bc47, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=93feb334ebdd047244ee430642817fc6bb00fe98, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=54c782fc4c7bb08473dd179b144c270f8d708401, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=714ad19b1062b8f489f205cce88f65249b989c2b, strippedPython script, UTF-8 Unicode text executableELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=79cb8f52e3bde9b4a6902bbfa8d751d57730b218, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=d052720e93e5f226e955846ff3f1f03b34527b77, strippedASCII text, with CRLF line terminatorsASCII text, with very long lines, with CRLF line terminatorsASCII text, with very long linesUTF-8 Unicode textPython script, ASCII text executable, with very long linesPOSIX shell script, ASCII text executablea /usr/bin/env python script, ASCII text executableELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=5f9c5b776efb06f870ad56ce58800e1274531ae5, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=1239b70f685391e5e3546e5ba18ba45105fef230, stripped "#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVW[\]^_`abcdefghijklmnopquvz~      !"#$%&'()*+,-./0126:>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijnopqrstuvwxy}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRixrlibgmp10python3-cffiutf-8ac36e5c433eb38e4af789a1bc561a46b7d112b3a0441e9a7005f6ecb1d89c95a?7zXZ !t/׎R]"k%a Ch.vMm@:DDW 'Ƶj Zm~x$ǐ'â' 7'JĠ`cdH)?i-k֐WǣQKp'`j=r3&\Q(+;-+ ec.,Q5ź5uUW-gPYO >qy۵:{z1`\;T>Z0m:(—+Ő/gHzФ`k`fN/)djLWc@3a %w|p U N#.HƾknUkϟMM_s?dS$MPPXB?mt1J x)8uwgoއGKbc/hn2*ՄoǞ aig-!+^tg@ęzIgR<A@Vƿ)G3`"ƅ؁AZK?B3Mx-NrN&$f< /3]w7?{ ) W [V d(֕s1g0ZG诳-+5 !1Ǝ:ݝC&4Ȟ)|nҽ<^E гY{>%%rΫ&GzhӚT"'ءi ?C#F߲ډ<:6!sGY~Ld)#Z*T!A0ѺE{$ηz j_{.n-tޥ\(kh﫽hNܔ$ b "#trXO埌MV31=&SoyKb=K[7-''>9 E-a{JCSH3ŪK(xntښ@4Oǃ:Jq1QrZ;iz8+@*#/x2a'fIdkw%>@'`Fg"C$MCH2y/~fIj߅6huyŷ-cBC >D<þ`/` QSQo3#|z 5gRwq|{Rŵ"caNRᲷrxȃQJO7?>VE2U t s>8 ') a>| ymʆO"%l5XU}|d'z$DGeGa.d؃#ȌnMDZ6bMxϠP{rkpBy[XQmk189@9Ȩ9JyvC8U:NҎ'*ͳ̖I}ks C`ro|h~דI3GSR-#RK пV6Tc5 ڤzIXe! < 6g/46ɭw#yBߩIIg' ]Dƕ,@#QFX'2D+L)1>bS %$ K?IuOS4/2x4{t/S`+ +~D2vG辠˴C7^vզBWn2:x ʚ}USRu\yi`yTxǮgL+k"#-85ii䓺^R3{:!f֢gf-EsxP_b[3D5J/I1?`p5ߠ\KA-#HLqz*)w3Z&S~†.JOvcxs3#WLù-1jӎbxk8+GoiuuZ%FS\ u@T)6cР[ES_i=iN`',6q y 4'l_>]rʠǨlzS'@kv#1 55Wڇ4.|؊)_Oc5W5Vi=Upݑdر"{BMvu{ V{`dh@IO*xHz=CDD <Ĭt?(rN87P2vc{MkE.F .Dwio [hwgf>V8, $ HS)tk bP~?&Z,W` ,"^/)(2-|0APp4PB]Ȝ%s =ot?ƨWGC\W%x®KT %"̈́Wpʱ+ixRlC?h󐦢eCׄXFu֚ìӓmܠ-5cy yFO;Yg q?^=-hzoÊ8{qr@JaDlRIוjX8 vꐺ۵ n0htq3.tSĐ^Ά_bG `LztDdA''5ARsxQ(]w: TiXن| pKDzx)7f#Ay+dž+"hs|ROۻ#wv ?bXr|mazPjk?33b6 ,B;)eʛt^bk^˧D$1,'k8D & d\hV1yLLF۶uѿAoNt#zafoN5&FI0P=Џx4MҳX&Eә_JȪԪLJk4mkoP*ZQHo 6y~AQ1+viSE Zm(JG9&H7Y2dI+Y67f:Hn>G6?}ܾjK>Ґ_IVo&jweď[΢e CM fZ.䓅B'6ϰݴVoZ#>Laxt҃~efMOD1ؿ`GM^s!HQ{l>??YI1WdGN?~.tGU e[5XZL9NJlIviMsmUk#T"-QHcJkh1>a#rvkHm5¾Ȍ#JE !kq5)w)09$Ba"UXЅj/ J%ȣ" ݪ5A\d|RHН#F;1E%8uD:ƯFzL oXmځױ+ᢱ?e 2xW3O Óq%ƻm4CX.:Nʑҫ.Rf1e2x _&B}o8kYvEňfA@+gw\>/}nh=z^&FS rzzURv!:~R hfICN3 Sw b/q{k*brJ@אOUd:Elk{u0YAe;*< Ӭ2i ު{.1gctH0_p R3Gr^7 4duD»֞gcd)j{Yl9(GDZVdb}!z{Yl!hY|23$[tߛ ;O@C% lv7p7\w}ǂ#*U؎xFK\b< : yatns}ם13{i4]*fhF 둰@("}_A YN=L*G.#y%U7+qF]".'@B߇zg={2x<,ʹb'7+9fTԜw7|;ZGiAY!Kt[M#X;P0izO4Q-`&}[Ez /. h<$ؼm18B L][}~:SEim$ >z;lrh{Wo;i|4b[/t7icj SMN`P  ߻&nW'( ZƩ,'mYwJ#|g;,WTasvMbF$A%w#`O 5+1ע5cvKHJj=+dc5e3l];@@lMuy9iXrUɡGZ&*5y<@ @LJn|[CB\{Xyϒ6IW~k#u?Gibdb zDP};FֻhX!xDq_}n.om06^%')uJ@KEŃ _N;_Cl Do*Sid"͜a9 S"h9 (u>k1ohJ\ /"e\SXQ.d1?xLSe=/8Wfd)IGvIQ%*95/(M6UiaUЫݒhXF?lm 1l[zhMcDJ]%V@>b̕4bµyv>=K⚵n6B99@.߬amBL%ݘUƂιAcF U )?cޘn/4w"GU;bGU\yK'YPi~ٹ:፰]K_OF@.!Á)= 4-.&=EȿSkCJ'ןy-3xtczzvomom2 OգS,s.|>I!Ϛ0szbTә#Pb \EHJ'˚VBZfR0XNE&|J.(qi{ш!|T =*H@5o7-rfI)96)ܸ>8ԜkEtհ-@2{3{R=K*Oq BOPAd# D% OKM'o`4lXk dq "JT±|k/Ѧk' ¥HN*QaLXꛓcZWG@2wE'sAd1d* C)Z |Re[s%c)͕ݳ,2ӡ, +cU=su ƻSwSfצg,G.)4 7eucSrq(45ڻԧ;=e$$l dbH R &P@NH]2MB Yk1[h5D*N~Q0v9)ÙRQidUmK2A__-9ؖ1ϱW%%n[6օ\kIҺDUmDskm iNCA?8#yLbM"^cn⨐; tNzۡ``/ϖ4Ձ疍I2bjʕBu06=dBEU Q~=TO@{SX^U(2))^&sw2MNm& /,WYӡm8_>gHI]^ Ka`?y+ =`WzoBgn1rigW/"CmhZYdvj(նPXA b;ZMdxY$_낀_GL{IʼnD 4s+!tnM<مo ڀ^׆9/nz˨#8CEC n6 蕯1!PSm*jY=¬jޘEY*kSwz/7uJl5\L.3vM}>AaWD㻀Z%,nׂ_Bʨ{Ǻ"jpm'mTd'GT:K>&ZՈkŦ>+CIvxс:!5~tR?@{eT@_>khC7LK(R5 1C=A,t=QS>TSSqlq+M=4ebm L\R;; nA$Ժ죠cn~Nߚ*6`6sq6p_5V,8wtpf%=/2j1ˑ mr{~푶ޠ`'E ׯXr=*7h]Txv8%޶-6"A 2UcW9r'ONvśݯCPIU,fM<ӂɧZC=>;8 h BLLPPPѕ0${,daRЊdr&8ES߄:/#%ӡ8k#hK ᱢ-M}0}_>)eF,KкNG6KAN-׸im9paɫ:Q7O*@jr";V~靤 &SPar5ϩ 7hȶl_ FE,v}8e(/s̓My9P'*ȭ-жZO+_ t,<3ݐȤ9T'My2%(MsIcB!gAа1|00$_DxN!V58 e41RI` MzMufWʝl>@+3}O4SfL$`f,R: DuDQQ]PPF^!f!V%$.ISr;} =0I:,u ;,KjUtqg8z#r_@pU{pA4,iUե"33;^bA3kl|V,1ct/YT.]C]׿Ǒ!SjREc*)/S=l)IZ5َRgx16R<0.O.Awʔprb[y1v>b=1ono/X>n)<Ɇx 9$1m=. i,LSo`1)cQ-qegǼdIlR踝Z <uiOŘ"H!_Ų9BamB :j]{׳FDNhg8mzHV!G)/'kY+O٩37<*7/[e}>8ލ5f d#^hf#=hW@40@ :ye"v|u;&{5y&DNl{Ҋp,_z[s Sc¯63k|gVe/M; ۮ?5I14EPX^r"j9d -Ĭ-/j{|XɲZ^Գ0Py5%R޿Xt) 5ѿ9K%{s-}*FE6*rw\dT|}4S^L&!:!$"#m&ԶX8z F7G/^):)o.th Y(Hg/斷KO)xFٓ;A z5lJF3lX\ʹVǖ&V="L" Y9SM4~$=y>V a]7,IK4f\ƌ}#.;2NѦ}om;A9 XzCb^Q u" Wk+.->^(IB6dT.?u7׌}O?YGj/b Jtqu7sL~->'0to`ZlXmTm3N0Osv_ |ݥ]/N@NMioCGk\)SʐRÕA(#}uAnÀ`AQ=b# +t\B->odۗkCIxyl#WωB\oTg::nhh|IOvu̕ RTa%X.f@My5h6x^;gP /< uL(Q n\}DoeJJ `91& 6~ `bؘBq7# A3$cdt,)Dzjӂ;"5g '7Ҿs֚.s[xkrc1,E=ǭǦcoWB)aR Bn]LO=$T\wm(¶xk3)?b Q>ёh~a\vTy.h U}#o%ڇ*mc r4M(QF@ z~(22Z' _87=D}CL^P\WBZ>`v)oVrib|~d.@?,g?:ՊYphT!gv)`0HWJJģpS&G{Az|OžTδo[K+1j-{+I`Ք7aolIEXmLK8@ɛ6sTTُЭ@"ئ L}w$đ ( GSRw(u ^I0 H@h?ڂfq{jГ b`Y[UmeZhzyARaE&v/==70c ^o|0 \^ #}, `nvgkʹ'Qd!kr7>_AڹI iΙ ֋ @}F{Nn< ?Ib6VLG0$/ӡ&Ԟ}󝐘15,{C_zMqBtn4K$Ie .6)n`M"I])΀Nŀ۱`v(QdI\v^|yZj*m€r4e\]=ΪW d }so}Uc!'X9$!y^Dm\,4f +cʸ 9hUC~K) gzYZFMd(-yˆu~O}omORGv"[|Ayba9imcέoN4IdJmY;ͅlLYߘw)n߲oS̽R\mWM8θ{vq>9(C[ҙa59ezN59<!b0Ezw3 sShuAsYh,_9.݁8p=ucf3=U{ͯOv\ zs䰆1[U8KRNY41B5"khA3uI.utEw uB%Gx;f!nfg\Μ3/\N2ΩmIB `-`Q-ٟDo\c)ƏdQ=0BWȗoWpZeLL&[EDK8bGgu+c.2eH~gnRo`[Bb-(ݺŞCcUtKD*[% TǓU_LY:Wphw~xgm2Ϧ*U4Gqe^4ByR+j[5?Ell¹ެ]MtY!' ZJ7kJ([P5y`k=$$A 3p 8㍑OUƟ\=I;3K'gɩ+)?I%{^`iތxsJAE?(EAZߋޅw?R"N`'sRK.2h-Tm D1~i5Ui. Gx΢Z I=ޥ)-R۶#JO~mfr2jWcHt{ʳHq~jd,@]&ob:`65DM6_[:Tb=RأfRYifա≜٥V؆P+ &OSG3*#.Qe+瀘c?@|ބl33x*@3~ѿf)57މ.U#B:4S2B8_rfKqԼphZyPr*+m9Ɂ^E(sso[7]=kS`]/6KʂfFm4.uuFq^Qta\bܮyOc<ޤ^nL1ہWݜ`0L߶%jZp̜׾?s/ *ٹ$\DCql77;?7Nۍl.Ujvycs;J`*DvI$u[lU^q,:0U:. ~-O5LFB%Sш3Pu0BPdY"cDE ]8c"}T|6D׸> ;0BZv$ŷ-##=n찡8(L%BC33adud PZ4AN =gE:NPܨ~PB탈+誺aӕvIlGЂ,8J-hݙ1n$f9r4=EjE3.U^%KcLwSB"jiu3M؂~2Dݍ(^В]GzA|2*5Y}Գqm>Ө}QPCE=f'>2ED'Pqw˃_Zy͉S+z,衱1ϲDx.wHN^=p~Ŵ5 |Սiz$URV-S=Jaآ`+ΜtTp6KPtßq:]:1ttwhCH1,x R:)E=\v1wq.y򍍛U 1m>Q>_*/#cx;a @QH:Kм8 1m@0.n#VtL,_2{|Yٔngg)8OH'g7jG>J%Y$t]HsڸBVӒ:6DKMiBU(g.*vX )3P G!.KL7s8t/JW(>ğ=SCO!Ui*#,D\!`fyt?6%2;mqK[_SR(ةF_Av'ԯrö*q໑DtGrMs SvΐZ9_fNBgC|Xje^:ԺDmԠLL' x'ǵTǏJTX"`d'e9@%ZjHoҳ@9SQ'm@"",RP{ -x%zt kI3\=+S*B 71`HEf b/#fԩp|*ҞGrv8#DQl*iE.J κlʦ. ) <3W~ه-C,e|v\?zYԟqЦkR/cM5o XݘBN(b8'Bs) z7{rD2'h.S%<&,M+YԪ9s X/st^_Ð| o6us"|]vzl]B/NM1-FGJcpu0PxQnLK͘9 :ɔ#앞%V\CFze:TdS M ilϪ8EP=hZh]jwHA:um؅V1d`_N V'^potP+&A`Đ5秆u)ɼ& T4ӐBs" ##92 \)Q vF mQz͑y8E/nRG;T]K%oh@yȾ5-ףG!ި;MM0cT:C;HkB䒭?T D̋:0-ߏ!MA+!ɖC V6p| :JmF*F"lZi4+|=J?--YRrn(! cK45jKi6I-+CWI^)kroNV 0%y`P4k}@ Qq}J%/~/4Q(gBNGS[v#'RgFwHE#2uUJH@X#rI:AlF;YӘxVS1xޜV m0Bǵғ`չ3jÑ%R}Y'82$H:OE.zCfÝQmH :/}4?&%/)Y"i t 9M,=4T`9 Xirߩ"}4I?("a䶼CP:d)S3vj"sP|Pǹ0;1ؠ'سBɮU\;. %[עK^}BCۢxlhfvXI$ n?rHD,|wmEdЭn?J/ ?V?8!<@'Y4jj)ΨQq;)L|xa| ̓z qN8iSo =@X5hTo 0x@V3xu(iJ+5׸n嗦"y.7jR;Sd49=?E-/)|q.4Uimtaog Sn~jV`l&6HuHr9.SLף/Ⅰ]#(BIyEe<f*p ׸'Q9qhOXJpz›NF.Amue}xbIg4[)QMțaI=σn7p /{1\رҀ}n6/6â ҄!a7g^By+#B üKs ,OcVk$Q=K9o.zLF{^_tj6pQ@. e_bӇ!>F礤N>Գ߹䃩H3Y -B~dv8UGum;ry,fD&KBkKa_1s^ ~_,:? ߸I_fޚT: ƣF6)TSxd"g9+~+~O1b3CU7uͳ{I o{AWV=T=R%"r>AdOɖyj;S.U%ȏF_0zտʸ&oN ЛeHBܝ,Fc=Hʘ[%߻9 GZ *^E;I=f/֚XYr5ቜ!f4X'0[&25A/6HELVOdu%A6Ȍ0mp,p͜N#MaІFv)MFZ8D&pr?5nA^ a~~why~j)=x(7y /ev)L+RsXJ^lcZ, $7G_ί9U kk%5X9&d8q(pJNa[*XmjmQ9I2H|e/2|u>)#V[ *6Zȥ026ip_nfLDwZײ_#씫! 8V?"O.*Q rPجh +BiSaB'T1Okj fhF7& QeDʯظ4'.}´bM Y+i|Ƀx I9 BsAy"$v9VL5'vxy~ܷ/u<)Eb\y^rqUr,%Ob <##Zd\wEYk CNcYzh+Ӌn\Hqr'~vM_)fvemLmW#Nر/.SY *J+KJίCڍ! ~1#S"JH(|x@ "K[C F:GYşRqDw}wU0PAϓ#=Вv3izrǕ|.υZwl|5Huq*Q ͥmg `K^0yM[* \w̏gGd.N߹w+`pr_)Z_"32O / _jEZ:,4fNZrA @- /wǔLd%:l&Ldɛn|kCf@6^,?-.#,o4x}h㻰GF3b F#_ d+aglUbc_.>D!e®_Ѡ7@:#dgO{֊q>0oyuwCTo=f,SHԹH3zwkѿEpM)7_yO}.>mFqh6Kd}2B"(fsCŲYl͗>Ҩ/yĔD7&d/Ҽl܋&O(dLxٌG5lTڎ(E0W751/'i$&Iaۮ\#SM̔S5:C!c:dq =MywnDw!qD6N,7/ K&C@=IO!3tJ (oCighsXgq"Pw#(Lc@*X4k80GwE[)F &BϴN+2Oj`Ke;1m]Va{y&dE[Dk֯,g~_MZCV&B<R>E81VhHz={¥b&"i.[$ N ˅p+B3bNf"? sr~'5B=>?+Min8%Zo 9XX:T a ՀB&[,'NqB˛5l&D7 fyҸ ]FQꫀ?aJ{P,?&1I}j0`/exV$'8҇iYqlpZk[V|zj0F0|gPE4+j` I:4]+ѓ96>$hb%mH>ŗI8:#BۋC,/38ʱHwy't͓0[)ITftbkt'M.E. 39ɦ.Z;&Mh},.Ow/&G:,x8qtf(4;{0뼌^¤ӛ ﶖDv}߰c?Ʃ$zPwxt F癌x |WW ^Vd!dhM٨-O\@8@C?D)"_oɷb-̘A[6yTh۷&5e#b/E;f*|K\M=uؒIoe"G\(Ovl暱݆qHzdJEAUFp65)lDjJaY.өzT%SCf25nQ ]oeW&ciF nhe ^MۧSPC4LYn#uRhݝ" 2hExҬ3!úXXHvQ# ]yM3aK({LEծ@-$5#% `I{/|n.ٖ9/L)ѐs<4mva ί~JJFUPVVA{ԄmAӶlqD!ឤP.f V0RѱAra} {)iV/?q> @eɩ Ԓ#%193ߡ1 9r| ?_J3QN+%7 ZMGUF˳# `"3e36qjf3Ý/#-; v-   _iF`|Cdى(ǼY#rMXC8Bv&{+UKc>4H?2ژWmkNAv2!P ۸G ߼?O>yXI.F~Ev?BwF87ـ0ܭIsMQv5qZvO|Z10y0QRs@=靐2Ttj>_Q0,9yovf:ҨD]T] ͺ yA n*m 0WϬuJa6Q j+ 5Rd̏ўQHK^UC>*!쨠(VNzSo"#;L)G-nLysWOџ]`)VP, 9ڐg; D1+6YȔӕ,lt@L2?& ^} }NaJ| J\Ty c|MUGrb7@<Ž>P|z4ZM7fpgゥ`h4[s;0e6ÿU9M4F٨Zn>MGGo_=01".Vv5ݶrR8U719@GUFr^X7cSw`s.*M"%\J ?jzdmqeH2R}`X1XuEoݼR)\}v)pQ2Fמ*im͠zR0Ip:ec: TvȮYwF{7DHHP~Xs\+/e("cVȃ ^՘fioOjX[ ) ntޢTOx涀ɐhϐ|&W._8wuDYa<}WڝJKuF U]AH˂\=C\`V(GAN s<q`}fʀ / ޛ(M%q2P1L 9M3@ E$ 9;'ҕJAPK+5T&=H+e6_K$Eh?䷈8v0Ͽ ; %+e0&]t[?o*14I4/SR@7VS="C_bZ14` †:Iyf7L_|}=}BP.%p]/7t_ 9B_0uM 1l Edœ`Xkq=ڎu|L3A.Uz-+AM_tTHAɤ2,AGKkbnlm7;'b +Et(.Mn9ȗJ'vTEκl-C8JOp˶a^"Ka0QJnGDTـF#CI)86Γv75@gO>BI~U`.4Y.b'DI˹E˭1|rlz#qEUh#'oWmTV=a/gb#Jݪ[` \E"c.c\ӫM}E[ں{%O~k; alڠeH^R;U f te;ek:ت7,੕6nf?nufrM?2LC3dlΞPk-ܿޏS}H/;I}c1IpPKߧf}mmWv'"/u)$"x>26Ԯ.o?u_r*glTPѮsg~A+38(2(\ɐj$@A/ /n3Za(2i:j[<%l+E?9IM\څQK ,`[z&7\[3f}T3zm,"Oi0P a>̨- " IOAz!rY3꾭D׮ ^I|!ܹl 3}3ɼ$dXW BE,QjVae1l i6f˥>$Dp+N. )Xnluf3ݩ@R2K i^5U]WHN&wvyC0(FD(CwA?^ӿ 5-D:7<#+u3l.<[#;FN`(I  !hk=@窥,J"o $/q^eb ϣ>S;"dKlGLUxDcoٔ oGԛF!}h*y.Žifdrv52Ymz_Փ[vX8m+AD?X\y?Yh+ m|r?e)le\_< =I?ATC;a~388OR-NDvs6k.UVeV͑{)[\z}+(ε?RlWNyP$aǖ A.k\ w?B(նVsCEBAՒ$[$gm1T7a (\Kb CA>HIBhX%ͳoؑ?Hrg_vH7wHCY,{ Sji勺o^tm,?]m՛(5p6>a[ GT ! `%q;cL셟CФc Ks ܥw^ V OBkW54?{t opwӝespI( ̨Ϥ6qP ڴ ?+ϙ@%k0֬c=B1&=PUn' @]Y.0PvaDX-NEƒ}qckgL Uf hP)c2$:4MyKHe.\GZNXBXJ];h)s#AbJ{o\\3tfOr@̓*~R} _"xy;#; r*oEA\sh+!!~=i j0;] GJb%1s-RPEN,tVmү6BR3M pc%V$r `8KÐ!X/SLN+֜PLZQ4Ǥ?\3QXqqmR($eyIX>RQe[ ԃ27:7vK Hgzyo#\/&#ulGl "Cب3GCgdl {ߧVPyf5gd{Lb6$m9#}Z~&>fVgCl|SOb]yؚ 琴4Cxۓl\yujeq-DAC0Ɨ J(WOei9If1W; VHօ|yrC7ɘ63G_Axy(:Inj#h;iJ`:zDcV[>fl|k+HslNe bwEbu2à(B(ħ9)Q6?nEQfxFCfj]]@]O3Aaz*`NVK# vEjl^ oHQ3gd^c>M|#+UwFHFKA+&X+4 >S6xMxJ᭗ܚSP `uPSu<&O1lkwiمJ5^ RIB)oj+< -#AЮk@`=߼5\#/? $_NH6̆6 ݢ3[rեhE&bF%Ub+=7%':/@67l%Ɲ'Ёaj !Vp{" ) F+O/UzVXn`6JPz烐!Zzyװ4_s?SD,}t;U*^9n5 R0+ȋVsn63 q9'>ކc0O锡гT(YeQS;'GURF({S5r:g9r3iyl߮ ps.n BZmAܨ*!T\@p᳐,/g@@_*,A~ w?{W3Cy0 4_#36E4ܿ9|6qO8r3v _,>$owJa[/ ;5Ia$߻-5]l[肵c//$f6@Ƃl' A]lc9f-N gyW[m6,o'>,P ,-VmDܦ-r4>B3 :QxK͈Sl0otUɷMoW6ڡweX/3T4k>n?AVi4++(CgZJc. 9kzWS xWw*QBd(fhZܺ^a \[H&5.Oʟ` d/VvBCmwőȃF2?H.e*XO8yxl<2 LeA!)ANtr$AO zn|1L0ךZpFjC]"NI\gT+5>,6ٞ;)Щ}(( 6hq§11ѷr q8ˎ6C]w) SP&<ckrW6mQxf P!`.0i=}:Eܭ.rtty4A;jv\bkW5nknmWu@dy]%~瑁Ni 7 , Ѯ [^!u&wOEf+[d|zx!<Č|ݬ`טSa]g1 gFCΦvi#Rh>z\5B6\08Ś#&^{PFnCk0R #,;jHԐU_94m6 ՠHxsd/Fuy>p|y@cö眯r8x0v tMDK'SǺo4 9gDNow4  c9-x=A +JNlLCd jгtNZ1O3E}NVOހҌV YH1\E/jHχ4~L%: Psdii uY*bir{>ɓBbjܸh3h|1!Tr=p `+RxW#hxGȱ-@T$4OP5nӏ|-`4a8GxVM/c%(gJs8,~]Z!SMB8rE${Fu?#7% vLJ* =EbA&A~luX_00PIz4Wƾ&+ݮj8Ӝ"fȶT6ߴH3r5Eh1pw2y]k{_U% 0XOqFhLw*Ӵ7N. ؟<}1̧:P80%H_6XQh/R(@5NaT-.ߡ6T."y렠ъ c%0\_LIxֽ&_m"#>Pq]{ںBuBY}Y,cZV QA) wx뎜&1:WTe jB2ytr=#%VQ\2ߥV^%1 *&ثih94Sytj5ek cb PEŭO~'O}(7%sAPc9*ĤXcJSt @p0B㘥S?T¢p򟦥{f 2bM\_{ÅgtMRŴkwOJi+OlҁTs(.u]75 ArG5O d^w%{~7R,unace^?~/.dH1G0_*{j()%QIh7Sݱ'x֡L 0XwyLpj)dS|]; !h+ZaVa;rlc_he`CLh>N_L%.苖"kRgзl5mJJ\|AԳl]h4Q0R%Zx+bv-f8MFZ=kmHT7kVns+L1E8э Xky-O7WUODB`N4vF$JT ^_|{o%ؗGX>!c=tED]F ^H¦ bkr&6n`#л=]A/)MVwZww׉Y9nE]׳n3HP! W Y^Qv*Ÿ1r<|efWc54:"|$F}ݲ֙>t[ D?R̚UHUN(,O{IdR1,;ϔđN~mB> GL8|w$cw2KȔDq9kZc_R<"dcQ4NuXUa_K }F4㯂>D±̷keK|{YzG%k:vQJ5 էkjb /IR "N?bxg_?nHDk}"NCobk5u^cOw OãY1</'vZJݺ"0V]U6͊zE Y1b/䆷sAfC3w;+/թܬjzz[#/c'%IIF2g[B{aizǥ\s}BP®gKm5e;rp  @"EȌ Q1U[!Xó0y;҂FQ{UJl=q1%o&Y9ȲudKz-9(azUsq>!v|V+a FO#VMnrZ cڥ?^>f?Bͤ7nzP*6m'4]V  ЛJKRE(31܁E -T_- 7"1y|zW`(MO]* [4Lȇ&C<.fg資,}Q{>!b+HbF9Ռ/xi 6}5G%Mir2p?_\〹B5pLjgCͦ=e$bdzA= Hn[6)8;+F [腬^r&1HV.B+=fU/x(7V`脍z]zz W|sT-V>n%/j $QvI0kUQYdfFX?%1&畺 d|Ins^_IY<tE+GqaG~| |g{JbvLJjl)+sti3m?Uz2~cE%Un{ WPRMe<;[K"iNm&ME:H ?4#|cc(U1OUd~ts>l >it#!%RGLgqXDU~hxinT UEtOA`*Z9F+zCv [I $ZFY:ߥs/;Lǔ,\w.p:Hdd#eD]{9(\V]eP! ү=`*H6[Pt^YvU"}ً38c 8Ϻ-yT;C mZ"s=ZM17RGj^&IZjV4'[ k C+zߩ)$DPm0,y"4i$_E/ e68رU)Q߰Ur򬽔_9_`mi |TA3:A}&d˓UރAA&6Iz>飋O7Cio^ʌ[Ǐ|p]Avϕ=v޴EŤT%bax!.8/qjFT.fH<93ڥvelK/AUm04wj|%DaF#iZȑف;cZc%qd\~ɄJͥY"g PK&Vv0s\Av⦬%$_w2$F,q2vD6'" K54sJ+E79|PEMe[§\!/yV]Y7 ?YH#:ց&u# a]]@IUB@=`|!/ eUMr;(Rv<ý&:zzR3lWKƥ|*굴zN+͆ddyf"2V Efc| WW=ORg/];VV`a۳#}B@S])XH7<;M܀B-п^U9K WlpNʗg g m݁]!rxH ILkLsEN4l-mU>Q[K|_2LPbYÿ?VOVڮw8![xQ==S4H"3kqCh⎃Ah tݺ_8Ǹ~nc.v>OU)T^hR՚-VxjZhz%S8T?Tr>sk5%Fī|Y|zsʧ$sԆXg:"Ѱ,*m;-D@T̰37)[ $鈽Bt0()>g_|O]_RHGaac_.҅\ia@ {7@My?ݥ8u #%ĹA|.D=, 8+xn{5$ʵ?X`$H4^?fo,#Ͻ"l4e 9hHAt> ٮխ/E(Y(b=RC8@Sn3Rj$OdIBYNѝHWZ]aNB5vo%ڝZn0YPƏ%e.!J |$ *ͺ/z4.z>]?7XN2n/ nz5X]V06/a GGyq,@D+*&:Yk*3rLhm7&p3ؒ%|R`^ރu( ]]'4;68AqA᪃; dϣ~o.;J[@OKC:v7׶Mp-BiIؐPgU j6S줭BAwuiRDj7_k.̼k_bkܣkD?@tߎwbFʞ3L+iwo r@T|eJ) 0IqrBQY 'SHΓSdoףLt;_( ֖.|챺FR{!7jY:G}fo$6KA*0dDaۈ<Db%ʻA9٠VةRCƇNꖳ,s޼LjpP*zxdFԨ`~CL&V1=ڣ4ɸG5 Bz[f<VڬcK/^ҝe+!gFN^Z P'x ߫Q\l IL'3eoE@5GǖXdmxT('?T)ϤmsTaڑn7ڔLWr YZ