ghc-base-devel-4.7.0.2-45.fc22$>z$Ȱ*+@>=?d ! H  #)1jd4d !d ,d BTd xd dld`dTpd$#(r8|9:&>k@sG|dH dIdXY\8d]d^<b*d*e*f*l*t+ du@dvV, wWdxm@dy Cghc-base-devel4.7.0.245.fc22Haskell base library development filesThis package provides the Haskell base library development files.U"arm02-builder12.arm.fedoraproject.org)fFedora ProjectFedora ProjectBSD and HaskellReportFedora ProjectUnspecifiedhttp://haskell.org/ghc/linuxarmv7hl/usr/bin/ghc-pkg-7.8.4 recache --no-user-package-db || :/usr/bin/ghc-pkg-7.8.4 recache --no-user-package-db || :MTMHML ! !MMMGGG'M'A'E-`-T-X444%%}%kkkD8<`TXB6:555'h\` qJq>qB6*. x|4j4^4bbbb\PT+#j^b'&&;;;:a:U:Y111.r.f.j@3@'@+-!% ρuy +#QQQ!#@#4#8JJJ *S*G*K! !555xlpZZ|Z K ? C   *"(((\\\Z3Z'Z+ #*** E9=qQqEqI)))/X/L/PMAE---G;?' a U YNNvNzOiO]Oa888 q e i;/3}}} UUUbaa))|)OkO_Ocfff///(({(\\\*f*Z*^R&RRhhh X L PII}IPePYP](r(f(jhhhEsEgEk0007L7@7D<<<"!""dudidmttt###>26E9=K`KTKXzzzPPP QEI^RVSGKbib]ba$$$& |<<<ZNRH<@  -_-S-WFFFSSS1?1317QuQiQm 9 - 1@{@o@s88 8 !3!'!+...KKKeee ===, $bVZ6*.***~~~000k_c^^^, $ (7kfX a U Yy})))txl`dH<@6poW%("?D4SE8-- >266/6#6'C7; GhG\G`st4 P +k  O Lj PPg9R#tRN{'R7( '#HG #U V~=&F%+'}H fO$2(Jh+69CA" >yF5 %F $Q8LDd7oY5X8:J7 ,jZ %SG j`# (hg&(CrN<? ;)+%! +; WTyq50L 7& V { C8 \ PD  ~ @!(\.KBmcңG4|%4%yMQ;_|zV[%z"9RZkqTz vD+!+%#8.2o>8NmKNySd0 4,? + n, W ` 2 '`Y3 (1 F_M(&,)  \ YA3Ygt8!;lr+,\F5d,?lx{Y'w\ [ 18  -8!;!BH,?A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU8U8UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUMUMUMUMU2U2U2U2U2U2U2U2UVUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVUUUUUUUUUUUUUUUUUUUUUUUUUUU2d1d059d9a603aa2ef852a2f73161c5b846db962d6c60608cb17b146d674e6e59543555148e1228f0132bbde0b9141b4541c28189a2332d250fdc2b7ec1f8c2fef3ae0484cdf779ed48bdf14f1c51d6184e538b8bf947c86866247b3071d1c2a87180020654e49fee20a93309dbb845c98c66e7617b3fa3b26873bb70036e53bb140105f7220869811bd7944f1bc13a72299455b2f93b15729ae8d871183c9017467023eeafea1fc105cbdbb9c4b0c3fbf266fa3ce81af4b4eda823a3de48d0b937dc486df206d38b2bcb33beb6edc5ef2722c4db065c259ba94b78402d63f4760a2f2a515c03d8b82b72a1846801ec16028c5f1d7197d0dfd9928bcd33731b7976b9c8a2a2080aab819d8c5001909c3dfc3cd47ca38c1ea2c333fb6d90427e7d2816441d8c2c835435463513a0487e5e1277cf9bbd3a1f7d93d587181a8661494f48a51e618d715ee669801b381ce1adecf776e095348161dd8b09d4ee63a4123b45bfcf0abf99e354d9748a52f59533455da85ca41e139369a2dab80971c394749515305808cb60178c0d9f5ff92eabaa0b94d9adf0cf3d7c4e3d1cc666d5ee5c7d062eac4bb5ebaacf88260bc5ebec63dfd12a2ea5474b013f9ae14870406e60eb64ba7f89ffd62540d5511b6672e91c6ee1c9f25ab5f9168b64c01f01168d6dd0d9c85c73b963bcbe10bfc2d2e3419a682e534cc3587470da59e36d862c6f898ee63d99cfc910d8aa85212e2f96c6f6b814053bb6b1087f3992704b730cd59d34e766d031665428eef29bd918febd77270afc8af0fd6918e6d76003fc6afa38ced7ad00722e140934024401b2933b13f9f0c5d23e8faf02b71d4b63a89dc156a6488b6673fddc04b92d81c794a42a75eb17209691d78e4d0bfeb0b29e49542abc13c105e1785a33095842f961b5b731b766f00b0f476e112469d696ed140c5063996f302f281930794c2e4d920ff93f086878c4190a3286b2fc0af75b0dc211cc35a6b7999e656d5bb713078aa57ebd7ee0410ffef26ab00c9a0fcee831911174552de4d55b2b35d10e2f66484f2e16fadbceb27b695aed78324425da5566e02917859cb7ddb02b0117f6cee99ce6d96318ba3319586ec1be6c473afd375a92d8f57305b55e3c7a180c947a52208901968c0729e62f0875d5fa2bd67f565a6450066e742f6ff686bc8c9030978822c39307b72a1bc74d7032ffbc5f9e001f4186a863995587fc8d318de95d1a8bf62ff90adf586db097d68e998fe48a9cd8bfbe7c904c0b9abcfd313e18464b147cbe5698d879235f5a5a16661a81d19586811c84c3265851e701ef56a1e8f6fad989dc0b9939b1079a62515228b060bd940e21726790173073e48f5df7f2d9d9ff2f2e0a2d6df42d4b9859720eeadf1be36b46b39924fc2f5c9d0a5f60f957ed831a0efe7003edd9e74e83ac3a71e85cb97446bf6bcc09a40c5b11d3044935fc238c8d6a12dbc614cad17949efc6d54590bdd60c8d2856a3ad2a02636169d7d7646540b9815fb2723d8cc1a2bc200b259975cb1c0912d8f73923d0ce2771f7bf4abb15fb21ec6f15bb1888a7c223dc69a2f706aace52fd3072f2bdb5728bd35f6d787fd5591db79a988e92e051b3578c35e52e4dc53f862669287237724378fa530cf2d6eb9e44da95a02f32a1c7b08b3053719abd4c6bf790812cb5ea9dd8d26c9b2aa7c527513a4d65b99c1edfeed71a38b25e0e355875f5f99c4efe675742d8e6e592b36fbaba659333451d1bc72c83d563ec707be10d34f1d3be88398e3ffc66b61ab0a4930333a872ac3346db63f160a1553aa7d595b01f76bbfadf4a81b10508fa343fae44dfd4d8aa1920bda6298589d24896a5a0c77284142b5ed12396bafa7dbbe4a8ab67473ba2683b0ae9da64cec0f6bdf6116d035a0c08c01fa13aa416806752a050eed6cf7760d90f5ba482cf4ff1f60d8a1dafe34085052eddfc212d9da2ff8cc0fcb0e012a1ba4efc229bf0d3cb26179182621ac77efa6f8336ce619a2e711b1a03a3ea23de41a75b351bae0fa877db944f3830f79443543e24ba976b0f1047b470b100a3214895d71dad070684c98088b8dda0acd559d817cb6a7540ba8c71ed35ff4f4f9fbb37a286a6566e2d5fbc9ba78a4bf15f4e78fc8af5a3eb4cc1b7a0fd2b0110362ef2cb46a1f13296046a4b45fd5432d05186cb63799b67c12a7c9fcc8e395a4ac774e2629dee01332b8df7ec5a0c9046cb928e98c92ded9624bd570a56310a16e7dcb7c2c0b113ebfcb61d6a7a36c37719fb8fd175cee5cb4f5f3c84380bb669caa31a28bb0fcbf71eb5ce56d0dd1be5a1c4ae3428fac1207aea44f40478c1bdd09de409698fd0a6d3c88472b912a2d9843925bdcd7b1c3f146d0b75695ed7a79a50d67024e7e24f2a1681efffa84defb7ed31cc57a9caef101b92dc56dbe7236fcb88686a20c26625a11c2422033fbba108185f6939b890a071d3ae2866ab5faa3d11466165dc52818846216cd11175f455306713c8ce41e4806980102546230b1c804c9cd916733e009d8eda6a9a87445098efe9079622b8709ce7d68ce9706edd28b229e327b70064b86ceede1a0cae8603218f11522ee4ea336d781d3e20e6ed48c12cca4c1d8abfc8cfb578fcdd0231feb76e7e4d095b6837215d952dbafc26406ffd582bf3bfcd2a6be4e5560b7f63b2de34c23f1614c567f580480ef58e4ee27acbf71796d6101b02d2f3cce461ce4b2b15955e4cd3c7f1105cc590d420931fc348a4f1e874c77849449225cc3d979040e331a00b3614bfd059c739767bcd04390944f27d5a82aa784d02e5ee1efc099d9bc3f2569e09e2c882ef61412c8476217cab7bb753c39f34aa8a2e109c6bbd93bfb769ab67afd24606cda16a9e6c28b24b55b3abf24f6f86ebb55051d19ef8675c01bbb6cff538d4ed25e51f190e61ff3267436734db6f5f919d834e04eab30dc6fd30dc89753256b22722b36e2bf9aafabb55bfd4cc22e1ba31e33c8dffd5470e173d9b41c3d278dfbb3f606bddaecaed1f46049747d798be2d255ca646a53ca8c233ef51bc865db43223a391b1ed96604be185d696a91f3d6bd1ea1df3d16e501b19e44b3939a68c10f28805e65e70817039cec21c6525a2591f6d43d541d3f1e3118d6820456f3cfcfc4a6a94fc3d717e3e9d9121e9d9a438e799aaad5f6417028105fbd44004f92ced29417b59d5cffc02f06fb1a07b208eabe6fbac67db90c0309cf7419b276c6e73542a0d38a25a8c9e609cc68b0581ce79800457a1d4ac7f5b38c72e1fd2920224ac82f7c16b7c825ead568246a4fa2b08b03fb7140b223efe47ee1efba72ac43ad2ae0ffa685357e8d3c52f669e76a9b2402d64b73ad8afdfecc4d5b775c3773e2be0bfee3e5f480cf91f3a471ceaf74f9ef74cdd7aa6e253e6f88bd7eb56db78ac687405d1c0cf40bcf1339c4650b48a35a30174176738773f8b4e9f22b9af3e01dc00b6580dfa7da9dec04431d611300fb9c32668f714d1a9acdcb7b043e65801408745ebc78a7c4536fcaaa02ef094b855ed29ca32d38fa4be9e090860dfd5eaa141fb86151967d68a723e1b1f6b56567e42958ce6258ae8429954d70ee1a140d84beb9e5d8cf3dc3eace05367396817a4bb68916728400dfff5253be3a6aedf82980c743404cac916e3e620ec94c5edccbf324fe614a15232bb3bdb0658604659ba2fd2d9410584837bd97037a779a0a6d91382019e8a542a59fb9886d2bb64d0675fbedb189ee478a441309bcc96c660b3ecd4a34908eeac1ffd0290760aaa8461beac83bd350215f23fd9db26571d0781b9afbb857340879aaa29a9651206a91ce86806434b966ae9fe263cc84e20de127a21070f890a96e55f1eed7261095d1661e3505dcc7baa22775ecffac8c48e7d8f7213624a60d960545bab829724a44ac7bfd8af0ea10aae8f7b12b9189c3b1e6f7aaca91fdbc5d092c7c97a63bd23df4ab11e11aba289c814028dc1404254ef612684eb20e9dbfe81ed84515ae87829b269e0b8b6cbb053a5a4690654571b75c26ae6d21460c7165dd93acd019bcba947420be09bcaef1954dd1aa42db8580bfeda59504673223ab20bded1f5ab4fd639f71a6a030defac4a909e2d370ffbb31588db35ad0755de8f281a605dfe5de39002e973b6adf73133a7b2059036943d0d0676e27b869a1b8b17a6523490e9f5a2edfb9cda74e4afd4dbbfd88b8c2da003faa6ef8fe941ed6e0417c48e72f026fd37aaa6a6bc62c83935a6d5adb45f02821bbec462e643c1557251a11694e628c76b4f27e14fb4751bf18fb181e8ef5f16f740aec48d4f8c813516c42e4d66647c98cadfcd26879f77d554cd5707b0e60925a76300acfb601ddcd6246824735a97bc36c35608ef23dfb658194b8f0854dd349f317dca16c924f723c17320a24019d97e5c6adc96bbf7bbddee048c0a91385aeba13b67b632f23b2bf893852c9f7bad59f35393f85ec761247d01b32c17b3abccc855681e28dc9ea411bdefedab348721e0a673be0190c975a6185312d63181228a515ead8809dd733370b8d8ec3d55d535490e2573b2d46767e98a0306a9dc5229074980af1ddc3ab0b942ee2dcb0ead0e1af52b8a889356b22a6e3495888ac7c01aaee0cf3550a2dd06d7d81be808ced6d56d66c19f5dfd6bc9d2592b25a94eba9c65d7e3c61c17c4d08b6628eb1cd2c74a2b80524d1c0dff9807aeb6ee9f3fc1048a31cb55cdb59655931085445f24e0891c5f789112a35205d35a3f4f98ec87fa0ecb418869168bae86a60ee6632fec6a1509ab950b5e1614b611aa6ab4ca697698b8db4768c7e4ac1b9ca89d1fbc023aa74bb957644799e4d56f9c8d250fe6eb4bc1581f9e5db7d13cbcd6ed1aab0b2e0364496a5b977d04c74b08ed0d342e8ab327f654e85bb827b1bcf908e12d42cfdaf0dfaf9da3f2533fe1b96911da7244cb9e9f2d7891f7ff18f26ed43b8fb9516e7e2e096231384e0c042e38022d463600a85110c4bedc8a16a5414f4a6bd17873788fd90ba4175637f007cacffa247b7e55d2da793d684d57dd24a24edf81c47bef76fde00e80978f0be76fb2a094aba2b8b1d9f921fb2c82f4da868ed4a5a18f50a1673522197b3dd9307607e8e9429d0dcff227a1d80ac70032377fd4eb4d399e7645f90509da96382641d5ff9069278f76b9fd760cf406856ff446482125c74ca9c9b3b964341d0b5367e0d86f416727fecfbd47d71e92e7868b10dd29e0457e3aebbdc131b8b65034f633be9d0c457e14617109e80aa2a9e909506c2d67d42a74d75d7c46fb12d96d2daf765569629fa111a9f3aea2f44df0bf4eca665bbd4e8bf55f0b31f1852af7b0c2b6150ede9e8f4fd72b6b7a6d62dcd39d4edfb3a11eaf65358b69b214d690f461e759bf51bd5f338689592aabb0d3b6bbc4077fafb444d71dfa178e6bc041c707169ecc8b8bda5a788f9c4253918e4cecdd4e74813665e348f2d7426cb31f73b87d67df62eb2f1c1a3c5aa19d93ba0b45560bf6b4b822f3fc2bd4e9c976ee721f6a49dc3547f7f85db57449850caf93d8449abc4b1a39d58ad601eeb11d31689d5a3bcb34c744110d32966c89a3ab51d78a63a82e2ee3f3a8b1457d269281274e0555aaad0193af924aad39e1fb0812dfe4b2e3c58b2de9236f788cfc779359dc2acd2e8a41ca09c8ea5a57dcdf536ab3636149af3565a1c0ca19db046976bf3a34ab721d6338799a5d6e6b6a64ff539a0de30193351f4d8a1dce70e365ee8ea0e097ab6e2eb12942e7270819cc161ce075d2284272ae3d947c5bcbf9f4c605dc2292e7441510b2f9cad4ec89416949e05898d10d3da6d68619eea284f1bf6d75b0b48e5ca1edb58a9ff5b6334a8867d0c9e0f718021a1eb37dfa2997f967a67944d15a6026383358cc7a144add28f5044f207faeb87429b5b9b621269521b1285f36375255eca9b36aae51182dfb80279f847eb43bfbaa98c29cc11eac7c3902a60ff30d4b14a2cc1643056d989a4892e65579404a4a60c8eec5280641f385a9a2496cd2907a4f3923671ecc7c65ba7a3bd7be88f04d85844c35be5fea4eebf2c8d804ec5f711377da4808a3de8552dc7f99dd81d0cf15835336e15ed03628051a626620f7adffaa97452a18178af89a0d81bb0c47d1398a1614401b696b26aa51faecb329909bc2aec241ccf67f381d3a37b515072b403609fcd0f42d4e13f534d7e732e1b08121787e258f251e6da8fad7b8fc473e8c1a09a39ff6832acb59fb93e7c488d9ad1e793139ecedbacca11b2857c8fae301a656d4cc3b744042d53018472245bf7edfb4d3b5d4be073b580d6ad245be0a856aa9c0b92a223b77c6304e1d6e8d28b37130d95ec9cfdac914b4833336e3a1a07b0fc9005e8ce749c6ae857252546c84351a827740f6e6ba5437d1f9522ff2f3cca479257b6b1c5fb1fd540e20346e33ec58932b0daa634b80b5c32830820679f4bd6f723386728717cdf8e1d4741ba447a898b3fd275aa8c94f24707a170e33a6c39b5443605804e8c1473ebc82667fb7fe7c6e91942eac6c0bf07136f2f154f3b075b75e88c9cb28485ce2a4161e1d9417b5197e269ca0873e283060996a3d68cd577b962e2f07f972d918b10573e65d81bb8c6edc64d2c8fa04734ec5d9b93a5c4ae6a648211f6c1b1fb4c8179deeeb7faa8234e3580e462f283872fed68ea0b47673d4d14be3addb459845c87e89d35f46be777e3794e0501b6e1361fe926192e94021bbeb59864a65969ccc561408e638e8d59dc183e56b68e496dfc306aeaaffb529d9beb816d4473ba391c828f353884abe162f58e2472202acfad1647f3bcb0d6f42664f11e450467738b3cea72bc79925033a607af74477c528823c914045c1608d41bf504d342f5e6a1ab33709a4a7b937fae34a00cca4201a111bcdb40ee954142f54a7df552edeebaeae099be16418a831a8c6914ed1bf5f627e8c4a21d1444a25376587f26d4e87e3fd8b6a70982eb626dc4f6d9d7a2098eebeab56fbab2a524f0bd4b5ca134b40ff482bf3d93c16f393f39717a92f5e37a91632f6f3f747551cdbdf3d472f8da1f51a0d592e46a4364fad1cb04a2200ccab6766e3226273b9205da781d307525bec55b66629eaf9be624ce3fbee6bd46ceebf58b5b9c746acbbb85d9e06b5f7a1b803f58a0d7fcea826c6605a18470e20883895d4e619fd6d5f12f5dfd1bc89cdfcaa2a58517bdcb6409b12f44ea317bf9b0e3ea7654bf5f0b4ccefb9122b1e91b79f63fc4c3fd7a1c1460df7337ff29a20b0d7ab164c65b873dd511c64e920246da1f2d5c2930c3c42c3ebec7c4d9b0adefb289ca0a703f509c7ab6003fcc329fbb7af770fe6d9a6386ffde247429fcbf0dd8dca758c3b7ecdbc13357f01b67bc9ac162d522ca393c41ea80da7d65cd55eab32edbba3538adac719edde9ef6882a4018a58e33826f2ca77d21c2453da36a1987d5e19e5fc0011e2c3643a55b6cde0cdaf01d6657c43383072014f2e4b0afa7d7d714980b2c1b9cd3f67512009a2a5b5c21e2366e191ba86c654b9ef918a4dbff88a67258310df1d7f2d13d84162cc4d8e1547f1c6b41f31b4ddcadd7f150507447e8da6aa3dafffe9097796ecef7caf8670748b06f56106f47f38858c8a92105fd0c64fd8e5d8219afd67927ee912e2befa4e80af1a8d933740cd162f8175d3948dfb327bd5cc95ade12309026fd7e79a3dd5e5d4343dd4f1c2cd95f120e17dac3f4e88970ad75e3d09392cf1aba48ad7100ece9e5ff7e30861c20e1eecd5c968e59bd678a1d26620b5102c372d1af3d7933b0d9991f5ece0c43629399b696a236dd30ba4fcd2919c16e8da4b84c387177a48d055160d4eef1af831d2fbdc2a86e5cb5ceb7f0fbec7e45b1f5bfc70cf7af4d7d9828104ec9bd4b037b63f06e9eb6d86be3edc1befe4af2c23b0be751c8b6bdc00dcd6f7d151fa0c78ecd163ef36a0724fd667c47883219e2571c8b24cf6c7fdf2ce43445c7c3bd90f2de1361de062e1b2e5a4cdb04e0d47d75fd5d292ae226f1db36c03a9042466b42426035b1a97041cc042fad22cbcedf4a53ec81665ce80869d766f73163777b1ccd0e2b03c45af22e4de8b468671985808bdabf22ff5150b4c5009791b3b177f380ae74db53409aab0966e1ccf0e80a01c1cb4f2f80d59e4d67b40126e5338af2dda2076d204553d6ae8e24c434be82844281a67e9b68355079f9b4da028c523dedde9dc12d2a112a1089af86a74682efe5308e5290221dd7a0cfc58a6375245027e1e46059e6622049cb476a17b5d80d7e781f02d2673abe6d79023db048c27478756adaeea7c4a19866d78d79de29f19443660e146ec00aab132fe616fd035889bb899fffcedd7b40b09658d77e9bb5ec6f86e5b19ce287194f63c33e42e72534f3b2e65de28858f129fb417aa3cf9c5ff3f31d09bb85e328bcbfec9e8cad7a7d254cb41f27224969f97d7182f13a83b2cbc03f19603060233dce9b0eeaf8a22da761a515d9a9a3d329cd4c034159700dcbf8209efb12a96f997d5e173d77f03cb7d877d97973ba584fe9c392679989863a020f4e6724c81eded7fa4309e3a8a6d2741c28b1706ac6a6d470f70375d2f3d0d7c9d21222807ce30c0101f6362d4330c90bc986a7b8663bfe4c73829e2f376d56f8412759a1f1a53a352911eba5fccb239633cf6510c2047e0f67fe04700fc64aa5c120a872d4f00d86841ccdd6618693e53fb33c8fd7fd30bdc60eab9563a177e1803e51e6ded5df2883daef4fd7c3ae3485a4a7bdf6ff4de64ec80b19150bd9453353ab64a9e459f1477657b15294f331ccc73ae6d2816fdab222181de115f9758a53cf46065f544549f421d1aafac79635c98ad4e7ceb33712748a228fe82745521112a18b5ee852b0d151fe1913726761f10e5e9cd8d46e4195723f96fca61764355199060dcac202edf0f65a070660e224a8a73bce74dbb9b13a0f482c5cb950e495160565a0c32951d81df50e8346ac0e0cf438a761ae49e572caee5852dccfc06f9fbd370888cc741e8e4d7be541e27fd799325a6b3568b759f23135c06a0b2ec894040c2ce0489a909df7e1c9efc947d4da403f3cdb2358d46b53be4f8ddaff780d8c87bfeda0ee990d7c4597917275b7c65541a7990507a8a2980f226179bc96b2bfe8f8b9606f6253eebefd6a11e5fc290b94edbdbbe0dfada2f6371f8c3781596c69061498ef9c2ceb14618d01b38c2111a2b98238d3cfccce9af860fd33a68bb553e2398ac627ebb0b023e9fbb12c7ae3cb8848d8b97e108cf6e2eb39644d6b65ae89808c69e6463110ed3e8e6cffb2a965ad5fd82ee7bbddf9ced71ecb405d8211e5e28216464a78eba30ce21ec491a86bef390f9ebc14262e96b6a72308a633935fbb5bfebafadb7ec45d7165efbd30b278b4313a1a561f75d4c07965b27e4a58556cb0401c5ea158c8621b46f58b1ccbd274f4c693cfbf007abe1455a5acbfca38c902b79a988da99a3f094a9a95f64c0aa97deb5ad5e96c397ff5dfc88ff6526faa263b9504f3d1f9f7ec8ad0e4057273d2c73a3d27ef319579c01dae4b33c11336f2848a47a381f0e20b1b15a248a1765ed4dd6ac6d7b240e5a181440e616755f6f6aa7bb6f30ba0ac922d3d458ddf461235aa059e654a5b1989de75902ac19ed29c3ed29516b75ec103837217495186d1f0d8b1c702bff9407ccca95004ae6582b98f810be7780db607dc56a0e79833ce9ebc5df61aed6d9823c2985b19d4380e9eb752229321a034c00fc6a5065a1753b6657bd9163457758d0fcba0f4311ffc1debc5e1ed9c4a34a3a671a9a55c80d37a5f2470b511c52f2616c5a0618b5523217266f97aaf4df065aa49b8991f178c6a67e647e66cfbfbc4bb3b95bbe1e2859bfe8a171344891742f57235e48c8022c3fbde89f566be5296fd3e1e3830c02b8b7cd1732a5c94f7ee1c1556b0c01bcd0d1584f16e9d3225e0afc145a9f1af216c4cd6cc60bbc07fce9853bf374c29dcd96f2bcf370c23c6efa19e12a2f4b14a425f72071fa79ddf88ed4a3af8a1b52e2293a06fbca60f232c7aa10de2e5df4d127511ea3259653e9ea3da7c35c6b66645a776fc2abfae15e7aa05db648e38d5a8594edc4c9e49669e53d22ac34c1586ba5f49acedf87f037d620d34b989c259e2f7eec96071fec07a724164f3b6ecfb53e86b44c1f38fd937ed9c183586f2e3b282b5be880ebf31488bcd9f6860e8c30f2bb071d3fe0cb2e94bbba753794f0cb51b5a5c39b635654b87ddeab8b097c1a2bf114ace0632a49bfef57ab4c6b4705aceb19a416bb421c186a04793d5ead93472288ff4cda1c1beb9ee35ad52a609640c7dce750d3bf588f24ac1a8ec1088d8600356a9464a2154972f4bc278d26a28f8624c8edb16aa35846c306a244cbd966c8138a28d34b4d32ff738f875f3a0698b168052713673e821354cc014b23557bfca8478b03e4425ea8c719ae67bb15cf9636686cf273bc401fc59c6dbd536bb7d6f4e774f7ec40b85f9caa671a63341570d9fb831911922085b02080dd9b2db78026f665ffc033b868b9c7ace35b4ac9363a76c5fb07db8d35cf1b9e252cebb6f48b92d1e9728b8cb59dbaf14a3a4bb4f5e7b8b8527e031fcfaf7d1f990b0290342481f0143a2410a94c14af7b01405702f3bcf47ab908afc9a59879ef821223f653a684fdefbf7406095260614ce5c9b93f2dda848ca65ea785b44d677ea5467f7941ee7ce19b1adaf715d90c1c181ffce2802cec1467be7b12396c40343c78ba19a248622b2430a0262c25fb303384e80d787c6a9630665acc39758e8b6b59363677d3b1f36994ef8a6f6edd04c20e97ed6ac247041b2b5090e274d527e0032f022560398acbecf6c29335148ead511c600b1ceb88e7985c27f94106f6594e84a9394c85fd37cfe40a51188c756ea54b191866a5e724f2c0e24f14ca39f641d808207503d1b2ec9dba48db1556035cb19f059538ddeca4f42e2bbb4a9db77c7c03972ce16ff14e6c07682609dd6cd9a744f14ac31558c73f899b0aa81c45891e2e372d41ccd0a5691381a422377e16cfb4ffd2318e7ee43f8781c376d9d53ed46f6b05b3f26f87f2b06f2883e3f36a38fc10d4be19db89a8cf3c8087fe6cd5f6294e73b818a81ebe3d59d71359cf2827cf2a9a907a7d6c87fe85f2f6ce069142d040291d0f6fd1ce5b18bce0328e9643d680dade9702f480597e2d0110db1d9b448bd9f5a75a26788ca1b64712776ea363aafe6986381834fbe7acb4e1694b551a00ec3d275cc6ae093c7d5dc2a9f15ca14b1ab2273365440aa441a2c989ad3a4bcf999179cb6d0049f2138b0e5457df2381445a358a69f6c64cc47ba640e1cf4b1969cc2f8e2caaf580913b892f2b1796f4d04411d8c159dd888617c5aeed3fc96e56e942d0c8ee255aa6b6af78eae8a9a7810014da98c7d1bdf3749227ed035de2e6e585c76b44d439bfc759ab517869b91a09bfc0c4b30cb239535c566356d2ef3f19c53b18939e8604706799ba1caf42277bbd14afd8cfd542f7e5aaa13678ca90b8dd41c0be1b2cf2a66b884e3c3a9068f8b2ebbfc3637d2cd5f9fa4e92f4bafa7a0132352ef213da3d3289c73c90cea4ab31a870a762ba6e39429f7997853e44b6859894832d8a82e624292514a2db8ecebe4d3b22fb74da573540be02a2efb62521b3f0d8523fa8a4bdbd43bc6fcc30283f341283a1cdf7360c3bf0f21edb866a239ab3b3a4bc16a7945e789bd7ec3a8ceada106373fee941c27b9d565769125c3648ce39dc8462e550ed12ef60df9258ab4fd4a87ac26cad1cd023aae2f8369b5a00f8661c431672938447edc2db641d0e51e8e057120a1cf9785e1387bd673b5f25816c3c252317dd47fe76fed3e91514776b14d83a7da386b2c42de6539ad13076a043568f958ad47c92fe0eb340314b5b87d3e7ad316b4a2f0fd3eee55ce5d737049932db7d98947f3cf53e7ae405e61cb11f098c80ac286074dcf286fd2c7206f18d893df308aed09ee5a78376dc741976d94c5efb96dc154e5a891f8e69e94d60ba6f4082d6167f2d15dabf6883a1734f9a126f722784f04ed309dfb9fb7ad2f489c757c48f418b8c84a8ae1e719ea1875080918452efaa874f5a72d477182beca11debbc15671e5b45d3322ccb7d6a5895103b654f7f1dbcbfce3da630b7800b77e049f6aa0ef7f8df3f73b98b9ae249124f4a4401591dff2b599b806d2380cfd5a338ccd6892cd2fba6b88fe121b5b8f39a3c383507643bd29c06eae7b7a5e6ec3d3242d164f4da66af1361f51004fce7d80d731b81f0428f8513bb27abde8dc1eb3c35f19dfaafde6ec196e64b133d80eba8315ac069701a0b201d80d425b2e4deb9196cfd854406a7b3ecdadba37b756bfa369aaa4e96d63422efd5347cac8d7c4430b1f6277723dbb2387066df4831a7c19aa8b0a4d8e33c35acb69bc7fac69884ae6bb58ad0c1cc5df669029b72bd4cd5f7c482a36dd5d954609dd2edc1d76106514b29661b965d55b222391cee0fe585f10263d31bf0306dc161f25c0fafefbcd0d2a9636757296b4797365a2d7ae2359939287a5a2726b18ab49eea4f0a7612cfbfadb0cd225457ca760ff9f000976ac20deb937cefe0cef4086dfb5f14237d5aaadbbabd6b6f04edd11e6f7efb831a507f4652448d6fd063aafc533e4307e034a7609e10002b283f3a02df724c5c0123a4a036472c948a71bbf6a1e0150d0ae3320d4ec81476dd6f4f0ab8bdd8094c7bef61be17814ebd8a28e3a44527942f511cef680a0b53fa127570b052ac55bc920a3a7212cf9dc0a1f8258feeea4f99232cfcc3981f68ad3ea2f8fac2b55249d10b7c882f80424edd250e20bf3916437ba42975ec252a8fffecaeb66c7f292405880657b10dcbfbdeade23699edab197d0afd41ee019cf1ac265bed6930b94d2db4e0950b423ee0e8c3638daeb4dde674c62f72f4057dd3e2eeadb390861b75a06f23367d8109e2dc12d4b2e449e785bff333118364252d5a0838796e00d07b5696b67b83ae7c6b4874b26468313cec43fcbac51bb18be66920208803daec0a54690f243607526a7b07806f996b9fb6af0b87786373b0c19a2f29e33309cb2fc374717bbb015d6f746c6b98b15ffbed06a73c26ee3bf89bb8f77772565d314180337e017e605ffbdf743ce80c26ac30f6bca5fc5b4c6c728a99aa5bed989c93ba9a8bfa992ef105b9162175b200c0cb39bf28194795c07896f632aea764c9d2ea32e2f87bb4d49b9ac9ff75540b5744f3e4976491345acfe3c5b1fdea38dee6089bccb54f1e7c51ee230525ae2ea4628b1d88134928c85d14ca6323aa530acaaddb218ca98a330c63c537411a19e895ce26758fab16c2e845f3d2a4c1d48ec9314227d7bf9321cfd3fb0c71068fa2f605a580cfa3469833514170462151299c33a094b3e4806806f6b2e814b0919db2af25cf803832b93988016ee4439e47a72f957a6403aeff8e1caeb6df5d01101a595ebb67fd249b56d7a0357f63454705bf446ba5b75628826456f349dadc27a0a63855a72daaf44894d90e14b23f8f810bb4e7ef56f537d723cbfffd690c2d7187e831721c555e76c16a416da6fa778cc232cfd331edd127dfa3d89b5af8ece4d0d1c3ca52581591eb0c83f09590785f410f64882eb295238ff0cb951125b663ce812b3a48033107ca07338ffbe895939e64690008e992abc6ba31e8a8f27b5760c3f7d1c8d88cf6a1013839eb30aa6fd5f88e306397bedcf84bff9c1e7457657f189732895c0c943d07850c82f2ddd2fdb7c8e91a4c90cdd8addda096c6c250a429090a7a6e5b5a3f06b064d632b122a2b43b20655c2a73133ad8d00abcf84df49ae0bc34bc88cc365884b3113c6e21d341771cd602f485428bf26fb8a5ca19b5ad4221fe2eb34dbf1ceb3427ccc039280eadfcc87851634620417c757c017b2b4944a322c457f76298933c558ebd3ffa10c9e11123b67db57ac60b807badc17396d8405182ee95d53ebe6efd14979a3751d18b510624f883f50773623cdb4811ffdb4421563c76e0f8d4b1c44c36ba89f34f0670da8383af7a7395d149bb73bffdc01d45d15ce587644927ef7068a8ff6ead536d95ac881250a013a101e70b567b695017484bfe59fdf9c30ecc27f8ad4acb52ccf79ff0cc598ddc707019079036b64d3b720d121528fee27e8e84b1c12bba7875cbbb7056edc04097ff53ca3950229cc8339e0d4f60873895847cec4afc74d217b34d803f8b0cb8819e95c9d652b4afec627b951270efe33d2b1b8c3c7f6110bdb9270121bebe4a791e3ba3042c679ec79b6dd7af770eb7f02828a64c086b95c1dfc94e23b0e52f16dd58b48e80e235c6306c3940c37a59afc064d0707246ac60b7a86038de94ffcf75f5c20dcc1676b303a08c2490f294be7f480acbe731d94b46ccd9f2f07bca4f233136a95f8a17bf700e2b99b51c9acf4a490471d3cd220d586a68279a73e19058ae3962ea4dd052d0ce8824de9319abf7a14243f897cab09b678f7a84267c1c2a9ed9f81a3b1dce993f69b658b1c60f4a07a726bd88486f4bfe292bda767d904c73febeb3c12cabcfa701fc18e39394c8edb5ed7bd168460166ee4bbf2669720a0f291f8aa5c847d76b780b2dffa4e44038764c500e0000f2e7561e7584462799bd7daaee6515dc91e97d576a32c321df664f9e9ea4ef8311552bbe8c87b6c5751236f1fafd34fe3fd0b9390c1ab92a61b4061ebec946ad4f26533e00dfb4e9c98fb1f54212a4b52dcf484b20d4527e9cb50e5fb64c29817bc1edc4c28bf0f72c87e769235f43e84a415dc3b320c309f4dc6d6c5d151b006e0c25b147ca2863642a42d810ba9cdfe5e631e3b92b6e20b9dc33e9943cc3714d1335edd3f157d76d1ddcbfc499bd1f1515b66a9df1b41f6024e860a6ab1fde5cbf1a840b9bfb6002f4ae48710a91e4859c7c2fb064aa10f79228ceacc1a05a30d7c5d00b2c7b091e7ba787fe20122689fd3decd60367d0e54b3532361c47694be53579abde211b796176ce79595e277d19e765f0e9a495c0cfa7d7f139bbb25f29722fac94527f220e2754c881e9fc50ecb42f895af94bcfcd2d8261863e78d7473cd9f57d2f497e0e739711a3f584ee9e70615eb3712e2ff2b1c6d2149ed7eb283ce12ac7ba7d661610d605c68e13368b4de50bc11d34ecc231bc609d09d258a84458efb239690fe573d9798d36e94044dff91ba2f193bc9a597aef5d8d7332b30e35df254509ddd208a95b99def73294426e685ccc69123d5463ff5c1f43597a89e07e1300035061b9058cc5efa49b65985e84d3494264d808fc32e3efb4e27f294e9eb391085113e00deb0513f77459461f822276f8181b181798223a13fc6d3ae8218e17dad651816f917c99a3f756e4c81412b8afd23ba5bda3380f4702d3126629700d37ebb11668560bea0d3d6d651bd3373d74385506297c0db73d814cea68c53e021398606360e8c16ae88ee1b881696a45803d3ada66a1299f5214a2e71ef06b5ab869d1456b32e4e429881afab25f92674c5f2e7dfe6d00ebc6b7c0724fabf2984d9660552de49beab8b4e03d670abefc7011d79198615b22d806e4b26556d5ed25b164b51706e92d401fcfe6c9b3d512d2895e34c19f14db02a97bbfd66ff71b779415c96aea057ea710baea9ffebb9a53b7b55aa01811c7bcb51897f2e26aff997ea57bd01cdfc0800ed88fe2199a31ddb4c718e5d6443362566860088d0104e47cf38d13282d1b8e2933c82212058ae982dab531142559b5e05eb593a2d2fb09f8580733b8685a12e796a50b0b14a5e92132c6a9527dba08b200ea9cda1ffff325fd78df5d63c241903768b00d5b1e8df4d5d2ade2bb2f73352ccfc406b67b1eec985baddbedfea9b9bb9e237daa7ae740315ef1f0881e4969cf017ee32f0c4db981281183ed6840c53a19de36c5793f9959cb24569a4e78f6cee4be0ca448549d8837eb27bc062a7c4e7b442d91f1edc817f6c7b50a2b9c9043445b06f07184f9f264355448eb042ca40a4ac0c9fe03d1760bdd377de75bddce8d57087d983bb1095ebc75d7ad2bf16c7cd59fd1495ed5ca876f14cc380511ee5a9e5d65d65c4e8f8b49d22b509875a0b7dba679045b75e4fc3437a5e99c5da16a197e799f399795a57ceef75d91f8fb83472fc91d970409c476a25e1af2d63293cdead249dcbff81e41183a9495d7863170a6f3b1e0a761b9b61b446fb4020d78b7be6ced18e5e053392391aebddcba3c066d8dd282a3479cc83ff1719ebab3dbe5b2b2b055da834f833827ac1368372d989875dec8218516c2522632aaa3186405a27007e6770fb652a6672c1b44bd4585bde2655fa62bb5b06e1ed772dafc07eb65bcee31ccd298e7fedd0036cfd17a655e26891ac2a6b9f56784996241fc55e7862309a1c2ad35ae311a1f8bccf55cbd378e2b08b991f1fc7b2085b067fa6f3fa12e0d67d3c4d3c656e3785966dca46d8a32e438fb6df5b9be172baddae37b39ef8c9f705bcf6d508f7bb4799a4d586d9f8deebd11e4a0d241254f0813aa4d59550bc54d9758c348a30f02225ac2cc7b4c8ca74e2f29727d36b117937a3cee2bedea212c1715af11aa0f9afa34d165a9f1c98f5ed611c1cbe5f94a5c11259334075c7671122ae72e2942f7e759e5d28ca8343604a5580874cebb9afa44b54a046c5034cd621cd06353a249e1aa67ea9d24a44da992a6085da23188c19a9d36f3b2ecfd4dddd5882fdfa79d46454ccb652a4e1896fd4b04abbc9ac1546d93f2d47e9f198f39b2c2c65879017cbfd1bebc4c58250773df24216037ac9cbaabd524fdc28408e5bf0621774a6ee5f0caec583fc161fe5e8f409f4172400e149ea6941690d9f0eff8ab20b12f6ca9e2411745a587cc30750cce1fe867584bb4a02ab736717c6a20d5bb50cacd090b6488d9d8b4e8033622ad886eef5c53a58cfe1f8123dfa97a513114fdcb49bc3d2eaa95d5e571968a83e4f016f118730929dc2ee3998db0e1a0d38d0488d1d7eb36a1dea52da278b3729fa6ff03b9d513d6f60c5bf43fd9418317b043bb9bca8bee10d244216bd605a5467c29c69cfe1d9589e6fc9aec72508f27fe5dc88ca412fc5d9b4f2d7b2bba4c2df2dd27e78bbaf62481d76be84ad05b6bcacee400dba8c4b5da0327f999f4a2829c78b25fe475729bcb507d40a6bd3907a17d774a0c475881f6f0f53a0bc53f4f0b021ad9993aeff26fdf3c0754d0134093b9663365a6087e50dbccf5b8927ce777b71c36feb1a8cdd638db74492867e2fcb1908bc3ae0e538c92bcc9509d02cf63013ebb35036ae6f993b035140229dfed54bdfb0611f123aeaaca3aebf29ee4a08c12b204814cecbc25278fa62d46e18427f3bb59557c9708c5e50430b9b5a053c4de446c36530a4cb9a763fe9da04b9b46bc129d75fa376086da38394e6b52e183ef31bbdc790e7585fb2e3112efe166a59471c65ad695792a655199d9eb0b3a8f123693b3193ef687355593175858b1e4f8a284045ae3baa358634ab37159fbbf95616df928dd53e8f4bc33d07e8464c533ad0b357ceac147ea196554fbf41b83159099d1e8d2e8ab6f10088cd07e8c26e52d856a229ddf608ddc04c815d3527bfe05e354bcc5e89bce9745b2c5501cc3a00e2ff3178c443730488b39a21407d6a4043f52f46ebdb94f1c6d9a253557b066c3ee9339abdec3751ad2361443dd1fa8037a8477177021c7b06ee74e0000d438cc6e4389ec3f6b4324fce1277bf3e96194fcf25a6ed8dd1a41094fecea27bba7f861c967863702383aa5a42075652082a5b1485788af99c23314b4d823e3401e59fbcbfd9c0a2647b5e8d4e9e0294937a10e862a31b1bea6a55b6a5ec82f91a042092503583bf4b9c865a13889a120ffe9dfe957cb96b9b71c692018832e6685edceaada87ca781d2d04fefccbdfb54b5c1348ad545c563188ea6b348de1432aeb3fc439a4448a481fe1b11d600b2053750fb48c8409c35af325179c3dc68ad6174ac0f839067de1b2dd3faeb161a9cd69a5fe4755f9b19e42cb8ede75e731121c2484320a87d0ac4e48fb3c58d04168dd97b66743dd7a22a3e51aff1dc65390217a237f5b3421a12bb73a71b128da38ed6a8701367b5d372c821d9eee557fe7d3a22b80414b0c668e439c9d2b5ea5bbb680442b94c474a9644b9c2331b1eb846e9a241bee023e1265fcb3c7cecf517d594cce24fe670431213e27b06fab94cb12908b9d76c5c64ffef402e7831f0bba7e25b48f48a4d7d14ce1562bacc1a0077ec2bcae1ea3eaf5f10d34f22a8cc8a1887162f244922294cb0aa6541736e99c132178935916a75f86c330559e48d20a5b4581cf944e83f966d78d38db58607a96a81db39862746e6931651e8407e3d541560e7aaa3d33f55d58fc7bcfb962137b2b4e4bf42615686facf10a7bcc449d1ac9c176081f0d3aa69342278259c24fc5f24e69dfcd63e7f1ea5fa040c55623727c9139bb8ad82c99fef1bac71ec27c5501ece716a8965218551e943898698dfe10f89395fe632d6ab6194a28573e1e601a5bc758ab057cda506615cef1f89da160126b8618ad1f9fb3e9b4e3bbb2fbed08b027e13e01dd93965a70d4ed943e99db12d4cb039edcb5333040b4e8b9682b1894cb0af7405128aa00c22ae696432f5e2d5711e62650c6885b94761c8109c7ba611231dc64ff8e04aaae4a8f75cae297f5251a3ee058ec1577491ddc15bc64221bc825a756c780c27fccb71a801b92bc165a6ab047233b7c669db9f56a072191abed2af4f7cf75c169d5f62500503f764052c72bafbf7c3a9dfc6cfeda0649d74f1ac3a20125c27ad2f58a4a00a7da53958f5314ae2551a05eb9e91db1b60f03813eae3717d5d267ef8f7b7ad290244905ed181bc79343d188494ab20943761ff193082969aa5e7706033beea0d012fae0a9343e96c4e88dd408e78fd64c2397456d604c7656fadef11831aafb67e89b7c672a4d9c19c2dea18b2857d2f9e0da1d5a550f37372b32f6ef1baecdf568084b5091488932e7d892bcea9c0fdd553578c88f39f2bc5420e214dba2f635e637ddfca81696294f2fe2b19d5e7b554d1967e73afaa530bdb25a0510ef91a0125e3865516b2d82ed90634d47ea44c228b7a75895849c15297cb4d1c90496a40c1b0c86efbc62d309f6414f1606b0658a1d648ec168666c29ed4344e179536008a2cf5d527475f48af7392d6e219a80b872af8b70c48f37284db7e31d8c2134d8219f6f77fccf8a56628671aa38ba76d427496e65c7afa872d63097ab20e78c245360b3d686bc4ad88b0bf74840ce7d928e831875c9e12e88aa197136023798c8f38c58ce09c776055965d4d13e386280bf373f632a19b7dba2c9d7a084b3540eb47e8465a62f356ace0a58a81d2cfd4daa9078ef1463dab6bbb959fdc87b6b39c7d5f1d7418a156e2d86c7ca9cf1c0f744ff2cb4e83e345ae72fc5e389536ac6d7b041838f4508153dbd901fd12d9d288a095a5bf2fd3f0a33f8301b09bcefd388ca5788cafa90ff4601c5e8477448ef4d5776cf008ca4aa1fd1246065f2e3c32e9c01daaa8647149dde6ec8c9d2584f65717ef829e6318b1917e4244a8f5c70ff2333db03cf4812ee1c7df3655ecf98d2bd74f2a9f277c6821c38ab5f91143ce0033d6612838bda61a8efb1d7f1398c71c5318182e53ed4a7e0aa04b1853990cb55c11cc43bb3853f7ba92a5f7a4146b2e8d120804f6f0bc5c6cfdaeb9cb16887f69bf94ae0e00e5fa972b36762e757813036b6e4a1ba1d01e29e13a5764b514ba6efbced749bd1478815935a7c96267beedce5ea76341e5460f9bea3a2576278a66ff733115ffc542dcebc32af9ccf8ba71478ae921964ae144c4645631c2f0e097692b6992912a144efb6aa507d4a332eed2fec65ce32d3c7fbe20b5ad2f5dfa7a5fba916b39d4f07cebd0d33ebe659cbaf2697f7f478af73d9dd9b72f6b022e2595b51cbe802de377c7b1fdb0dbddfaf5cb9d211aba8ea561668c423670490fdc29d60f17f51768a40e8a97ce3c5a95ffa731bafff21da6c8e644a233254b05acc5a90cf909fbe16a615478bc93ba207527d304201d8cd45772046be6a9824c2a71f7f1710d78fcfe085d1b45e90d534ee2cdf2d961516bcc76a94c40840d932cd5d2b7241875d22f76e8d069c1f3558a7fe0cc81e6dabf27d4ef257d7b7b20e3ef2dbb5c8c8b2145cbae26e12a7192be2e08708d8b64ef862f447043ad2307fb5e3f3a230af8672485bcd425c684a42251f9655ae31d59eb143862a1f06c9b71706a563594ca2dbfa6e237c1650cdce226522b1a4918475555b04a24a2647ee7fe3f2fbdd0e49226147c934a7c48b35b3f3c98a5660f272b2c29179feed72ce82df0ea1a9553f6cb0d08e1e3daeaaa6968300a6ffe3ac975e9b7c0885401e2e9ccb9d7d61c3a6ebf06750d4c31c6cdfc1c9d09434909e76d89c2a056fd814d43bd313623971b59773fd4c8175ecb6482f54f613dbb2a65a3d75722a288f7886daf90f99796ff4056ea4dfb5a1d296518464ee2cccea8e0ccb7f935a793a62bbbe1a8b2e1cc1bf29944ac4f3f98a4eaf914db2e41e040a2481c6da767b78dc22aed0be392e5345bbddffef86da1f66db801867fa80cbe31b5276cd4ad85d47206bebed488cb3a3a7d46d72b35f61580f51fa8982dc9fb94773658f66d3079068205aa9aa0fb719e677affeb35a61ecb878a15209f23276b697e722b3ec4ec38889def650a3ab86d9ab690bba2e06c203bb8e5db6e7a9a5bb08db4770a2eea0dde2aee31b89af004a9dcdff78178c0ce02ccc7d458a6db872ac4aaff41ec5ee02f8eb220726b96c56e28452613ff0314ca23b0b54725b1a9b5e737beaf2f7f90b0cff31b792a05403318fef72aaa3f8279a3e817598df8a9c03c32820970223f6919cd0bc8f47b0def1c824f1550f68b706942e90d52f74281707809611b7b53975de5bb6bd36188831b9d27ab303ed20d1b2a18a79ec1c2568109f37b8ad88b438bd27081e137f0b0f725ab23de558eb43b4392d239bb99358e794584322112bdcf8abdca542021e243029cd4714b9ee3904dc61afefaa03f38b0db2262c1d30d0466a2379f75d187c7b101496eef77c4d57f068b040387c3d975f567ba2206baf4425f9518eeffd0c3c9b8fd7d985fe742ef6a8060fc2e7fe80332f22fcfeedb48375a62351d26b534f95397d3982ce6342a1b6bc1bdcb34b3bd20d9fba0f154a5fe886f5b41d26fe0fadd68963d9b6ca6dd6cec7ec3bf4ff00b38d706f41491e6f538de2d768332d858a301ad8ee7ca03daffad9b1ee0067b1c499e916d57e0704028a49b78395517a3cbd33977cf96f1c703f406118dba49ad3c02e8161a48ae780be9139f6121dcb6f34ad92e00bdf4621dae17855043d44584d978ae8b434a17eb900d4ca53692636d488710d992fa10e6f572b5ae8995023eb3a252d56c1e606feaec162dd43d07d4e626d824891db7d029df5707fa7dae2c2a1b388e8926c9fd40be648f4b160289360e4dbc34492570c6666eb2afa551594ccc300a54a819d49ea5f57d594711b7fe8eb0f7b74cab739d46a5c69d11f245002bd68ac543f72d88cbfe4ea3a25c45c2804cf296957bc217041956821abbd894616a60797be85420051b7c776655f331be2e1a3740e8cde68db21f1be8f9106c277916d26070becb71563425de5f7bb14b64b699d834cd0c1a19e3ca7f19af56596cfcdd0a27484a65827e56693f39ef22f0677361f7b0bc289f3ea952406078f86e607bbf40b18663f5260fd8eeba280a1f36a224ca382754432a851ce138f2cbc11117ede2ad2f52a9d96033c0dae6ca3f483b64005254c00144bb34c6c3f06f70bc5e894583122f0f5121b8529b7396a7fe46e25b1c4cd7a0ad96faccbaba667a0d63f53812148ba2e977f8947c10e735633cb17445236537bfb42f4e7d078c9ed1b914fe724e09e7ce66e5bb28a4708282b51c38080ff9990ee632847302ecbf37ec09f27470e7e63209b60ada24b9c8f66c5187817fe0d4adf1b54f068a0d49926b96e0a61f4ede49a12c1fc38eedf2f61fe256527dde552a048b849feab745a1012796a16c389598ebbc500bbec20064253d2dceaf7478ee3264b3bd5d35bb21b6d5e225ca15459081dad9a031cbb48042f31d364bc09783f117da286b33374a9a0a4f4576807ca4addfc68a9a87612fd7c567c8bc9d833d40a523e217abb311dbfc2939837ea9dea6365099b16816d17303c3f67daa9ebefa413348d58d43a75c377fba9404797980d668cac9d693428cb2df5607e869f0b98beaf743ac7911cee28673ce8d038e7a1c569cab6fb1ce6f5300c17275be698bbcad7521c0392abe921875baef9290e38fc3fa0551ddbff8fb6bfbcc17f4171a00d7cda4208a08dda50f3c3592a17cbe24eba8f531f635f0c478c400d10d78ff2ce62c620d7a0ffb767448a44e24e8a117c9f5ff7a48510fcddd68c567a6331849c5e553be82457fdca5ee93fcf319a507908b091f9f3d5f34286e2634d3be29729139834b79fce90f4eb841e661a82f1c27019234fea2f8f1ab73ca35e1be12a00bececb7443be0cb3faa0a4c5997464a892eb1b20de1286ff71e9cf803f434b77c44fdfa39838053a8233d223b8de0d44b56ab01f8a026538397df8d13f04aa980e985047128e52064dcf34655ca553804331125049e32e56f9b5e5d6d115f144982c3a8c0f7384810568afd70c58484ed720a8103e6a12b329e64055f1fa7def1db6c4de5383fc568ed3fcba6c5d10e9464145f131eab8fb00973ef4fe13f26ae671af20fe0345b2735e2a6d12982baa675354f4ca3c8311de72e4c079bf5bee6352ba0c0742b58c5ecd913fbc93a7633e5a9fa3221011fc4cd8f6fc4d3faa10ef26b65f9a36a317ed321ce2e81c1b6c115d9b1f69884b72e42d25f7af3cca86c83d592eeb20ca7ecdaf46e9a11dec9e23849596143c2bc38062d968780d58fa7167c34547381a0a0ee693407dd1b74824c1bb3c329cf26e0964e775b992a40e54e0ca546aa950575e6a8157c1e2a084241af6111bb08462eb332cf9d2e23f922bc2bfbdef70cb95058221799238d90bdc265d56de92c60c3da014eb45ef6a2410bc3c2d75842e33c922089915b11186034e9f77628fd8c4619e25a880b9a84dca6fa8618d4c5e17ac291c6faeccea97c5d6fc2e132f22d2807060007f370670515cf73995b6d31d45f0c57844467f2a66993c82bf1030bccde42c892902e0837d1d928c6394551c0db27e873d67cb326c51a8aa9158f1300cc0956b6d00bb689d8e2c6e64ec0810e34cc02da9af36fc24ac36410e8e6cf2b04ea0bd008b73e34e35e81f3046939d0a454a35d7b1643fc6ad08299f6b69beae92da8dafe28f3ef5f7ee8a8cb0aefc48c6b5181160db75a1af27f416ceb642a2b5ce2e95c33294bac6ff3d8abf8185829e911a35f28dffcca0f9dc85f7896434b63e0e2773e4c87d4098597bdbbbaebd6855cfd3dd8fcdfbf09f5c603a3b9f0c8ded0935c03d2ba54e4eb80172e245ef6e59f6eaa7934d132039ce8afe7665ca8213483af76ed6c307338e35631987afd9543412880d1a880084269045d2b70ba9993fd83d3ddc52aa59603464e547bacbfceb4daae322bb6a3ca3a1c53b6b8c52d1ad544a755cd5d5f3d2ec7c2c9431b4b350d300e8e41e5442d6052ed09dcfc0e3e58a272b8114d28c1e8d9bcf67feb63512954f91f65bb13d24e558a8005766c6e4bc53941d9eb54ca7e618feb29ae9f09861b1925fda402ff7f09036b91fcf01e2a506d271f2c8f5713073ab29dfb04cc12f780eb271170b3645de8286214ba6d0a2450e113e609bd0d25b40ba73da78420adacdce6dbce16b22e2f05dc71e0258e1438e7011d11c5bd46e12abc32fbb8f9e7000f5382cbf5a65684f951f395d252fa26422066ec9081616354dce746f2b072f6b79462314d672f366f891a9115beee0ecd0f23657a8764a77325b1ce207b75c1686f6329b9b072d9f510004caf4321ec8dbfe5549fa94779a960fe53c681817f0e4a227169d13e06dd4e8546642b224a84b034fcceedf570e16f39ac5f54214d5fc390d8e7f4d757bfcf9a914aaeb8c1b088eca02906ac0a7ed2fd2960f0ce16bf32a4be96d3362160c69f4d7b131c6af9586c1fca5201d2af747c987b3a1db84e2bcfbe209cac7a548ccd1fc004dd44895bb8aeb066a1d4051a3624b2e7b33527c071a671bc55cfa149ac7a20e4e04099adeeb01abe5c2e1091712c37b2eb6eceb7f0da644f3b40504c0fc6f77864ae9403097fc697b470724a141ef300256334b7c46d7681bb13f3fbb17fc19e9bd6302b5d4d99f67fade6da644a9f72a15a87cb512a8d0cf389cf91f36de018023764834e17c8311305ab3953c03e1cc649d9c52c1457fd8c9c7f8ed782a9683c49ccae66e0528d8238dfe4b72cd6e91ff02230c174916df8b3fdca1de2ef1be5c9efaae83e4209013a3b0f12cb117a5ee7cbcd2bb41852918dfb7c0a413839d40565e9dbd414dd2e7fd2a69ae7f4a8c46ebf41faf59bd4538a39815a1f027548b459ae9ef569c12024849dbf09ec32d680387e66efac5a3f82bd160dd9ea87f5d19a6c979c969d047a86c8cab3f4a29977496cb29384ca5e92cc3936ac911f80e0693215c025929529abc30d368ebc7e96241537c937b7044c9b3abc9829d5f5092411779a1dd975c91ee82840230d1da6cac64f200a29b90bad60aeb293990198ed8d6f8ccea10e17f8c543ece70f31f24e2fee9f7838c4bd285ff86c9bba28d8f0e2a75208f9a0084063671a7d4aafb80248d63cfbf1aac216b4e4b40440d816052d7edfe42c58964ef107b5fb5a5985a61cacb71cbc364cb61a9189c81e4eba5eea2bdb0c9c7ee643a3024ae2c7ea865afe3c2967e04cc907d81312eb9de6226bb48ce3a59067f616900c964e2943aa06c95250ef6ab18bcfa1a353b9e4b090dcc97adc122f13e776ab56e3c936c7400ad2afdd14292051e24d39d9c73a556df5db5dba768cbc8de6347a91f221b7bcd072f37e71fc531b1a73024f8f2a48fe9fcc9376f208b61532fc3e83b82811ba301e2df40027ab30cc8f8061770537f399b0e72b06061b3ca37a9a5d14d3b1c7fdcbb897b6320adbc90969409970adba25e8af80720e0e04715bc0ec0fb87e2906000cac011c5004eb2370b1221e95221ca2d0faa987e308413f73697e6027fdbbe56bc0fb5071076154be70a5a9e287965e416995038ff61cfd43dbd2c6c13efde6da994194e992f7647e4d7e8221975f57b4b9a24cd74f3a28de1f666ff01cb0519b6f3b87f95f78ec307121f7e78bcc7cc34850c986ce6c310c77b4ec696ce90bc3e5eb3ae3a612170acce5b546be082fd470edab75ab99ec9029be53322cf5b0370a7d0714781fdf6179764a903c1e7451df20a6f16471d2d4b1980cb5a716053aff39ab4dedba81318e2d0419947510b32ba6fc694edc8540826d6514e17d01824f07704d87cd687c2b240b81c1add45336de4afda0fd481d8fa934ee6946644776209a4995ba0d93e5736fd342df0782761d3327eec2dc127f3b0aace57c9533e53a63d16f1ac44c05b805858fa79bb9ec045c8a60b13f612149632eb402a6dd3c5e1b93109d15e336abb34529d7ebdb43aac6d0d67f3a5cb2cf517e0673874147d8da30663e93e8a8d8c3824742d636389fb456bbbba20cdf65ab91a3d64865baef1e4c7fca252124aff8a5b0566eacdd3e0a9fd0e7030371d8de0dbca279feb22caec1cc89337c8083d9fa522495fb5853967f5418351cf6abaddc924ce9748bdf87d7b770fd4e2b1a0f02d821fefaffdd13937f0f997d5d51d546f8442c8b7948ccd1ffe8b5860e28076828b3ad6912ab2bbb41f8128582361b7c9ca10916fbcdad781f8c47c8c1efdd9625d43465572fc690b09fb328e85b037c6c40ec5a17e10bd810be6fa9a364e279eb0f0fcae0dfdeca3ac8f8c4769154fb606d9e19d0fdf11ee1f7a482c307d631d9f3db30fe76039e3bd9adabb7734ec652ad45b9e40336d91ac8c1d4487b7c11ba8bc183b8b0ced07537293ac7a4c1908e7af6245b91c9a835086cb93717387699983ced0ed2f3714cde040c2123f3bd2254a02f40b5f4905827de9d35720e4dfe8d1fec176d3174b95bc74dc0b151f5ba3ce39a69d0e4e02cdb6d6d58f5b582e16dcf489dbeb8966f338969e8da4af8a809eaf3d214d5d34d260eeb5dbd5fe306e2173f5c93dce6465ca695873a941a57f11d9dec787be409ff27828de8737bdeac914e9d3771fa35907f486c0ff7c9184ec61b279bee9a97ff3a5d7ae208dc5f023461c061cbeeeeb2f1f7e7cf4099808f264091a7e94a4dcb24c1bae9f4b557ff7100509358f726aa4ff248a22aa43b6eb79f9e2d6a91adff67f11f8bff87d4b7e2c7b92ac7a8cc0074e688687573d23d450e8cb077b3a58e462dd8f336a8b6c7eb4943eb2c7cefef6548d59dde7609730744eb83ec5b8a145e38c9ca540058fae8402abf7a3444a05cb4ea5f527f00a0c113c6df5cffd6ca57eef7c6407943cffc5632f735fdd8fe052e7934c4478fbab86d7f837dd4031fac7249fcd53c6d4246b60fbe7361996097c05aa5dd0a2f9726cfe42039bf6a1f9b31770ff9e84d6c9965c7b797f2d4961d9ae68b23995ce8232781f3ef6b306100fdc9835243454941ec67f29ece30270e95b8493190a64cf1ce9403ea1754970eda58156385c50db4b60bb8f5639bd96f3dc0f7e4eb6f4d7f02bf0f14c3800607911b2976627a46b0f8538db72bd7728263f62d0cd0a428f4ba2563e1e55552cceb279adaf9ef74fece3e3447b6fafbc0a20f3c4c606e6fd8694d2096df79d12797f99474f4716fc585957653954ed5c22aeae7a00e1f9a690328bfc810d274017de782031f413cda4a1d77f03042166993bb7a8581ebe0c485e315a8aca034e44086a60b07c4c476e8c798bd905f68d942059c127db6eb96216be0cc7014bab9080702588f397d5b5f75ba602a3cf9b107a0727d58b753254396ac223bfa6684711659cdcae0853f9f72d30da0a0e7140245e6aa56eb3451ad0a7a3b62f68dc7567348490974b913b44a8304c299b13867d1acf9a915b2dd03fea42abbbaf350fd70913288bc65f7fe2720b92f358a37c09ea66e47a23092077eeea5c2b88fc4004bac9fa6ed3b88994a591ecb6e1b84d2ff80c4e4a5e57a6e915af69fe18e3497a90b70a7a5d2c95cb1e7d0f2c75b564c241e5a7100d9f5a2333791a0a3b2949f1339f9fe623177782d2d5c27f221804ba0a7a484c852d604e27e410f3b37c4ac34a5d907e3a373b4665b6bf9e687d63a6a9c4653cf7bf1ddbd8623dcb74b90889cc14d4de7ca454b4d28e9776c830bc16215308982ebdaa7f78e13f5e0a9d1e9ad4cb09246313cd20e645eae37121d729e4a3c5315692acc1201f57807f056da4059ac2b3ff23df9c80918c7335fe46ff9a03473216a65703098c35b674635bbe52c536142c2817dcf79f58c9633532953a5be05e56b45850108e00efd00d6319917e801836bc47737bed8752395885826b975c9109b933a0e9d0593d674d5404e64044eb18501ae7316ea2904203c998daded3447fb9701352f6b4eba39d6a28ba035ded85cc241f868f33b96996a7cd96be9f847650337c4a371af493c2443eac31a808fb12d5a0ec695ec041e12de410f9f67a067b255291d090f3ec80d88ae3f0a43f134e4a5b7675802f68b498511b4dea0b4fa5b7807b6074d32572ec1eb3a02c278e2abcf85fc3e196e2b145597698232bc3c5d831ecac9fd43e94f705cf0d7d699a3592f43cc5e91eb30c9987ac88eb257df29df35f3b6f593c94be60cce3b4302f66a723ea02286d305f0d5f2e96da2326f9e273b7d598f67b8f5f860d9c3590d81a1187e6fd8b2833b43dd29d8103cae8c14118c8312af4fd84d46ff8fedbf066d83785ea6066f1d2b3f2cf5a71641821751f1312397661bef227bca47ff4316e1a5ebd1e210faeef2204eba4a2d2ff94543fe2c9f48021b90496eb802fa58ee08119a1de1109f0a065417be80a93ec2b4e2b0247ea793f985c89fc2ee3fd8479810cf2b7afbfca06ba457f895f5cd3bb68bf7dc1f645bd11b38fabbbcb78f64570d0b65b03365d8d57a20d99ee88c35025a4805fdaac9238cb5b95feac6a7ea9df7991ed1b95b907ea02df311cd245e4906904a28872b4d70eadce99c167db53a0e69fddaec09f09713eb054530f113c617001e1f33c852579214566a7fdc2d07a96333f0af8c7398dd7d07a0d789fcbb52be6fd6ec4a272932de0a4763a14cfeb57317f2beea9b17a3b6780211d2910f1d7d518217ed4b920339df20966bcf5b5ca7122cfe355785c47c76a8c5044e07dd88ce1c644ac604b3ce945b5f6a84d0d0e217bdcd17c2210990f3dfc8ca998febdfd3ea7e51ba537be7862249e70feeeb196cf725e40e44829e79d446423e467a3771b5301a14dac134444dc4e58dbf4fc755476a7a9afa5d88b04f795ef0b3b395a5764cd9f4f241bd5461639cb2d52903be63942ff609249018b6997b3b021bba2d2b08a126c5f6d21217bc66c6b651aed14d2d2981de9bcaedc679d6e83ec2c1d20653cdaaf934496d572c92a031435760303c716fd3a4c0d5fb5e1acef10e56cedbe931da7d9f8115d2327b7b64589f0e3fb866898d33db395eccb29d4cf502950dfbf1eb886210af28e89059dfe2adaf0d3c1390db4df055bd3fa7e807be25bb8531150f48648763de386bb3d058e176dddc4c525722fd1ddf57e36bf30c9bfd6804416272c40c2e2102058852d8fe0fd22cbd2be7ebde8e7f867259118f9ff9dc2d7a0cc3f4a811e6e0263ced5999671ec0588a96ee5b2012e06508fbeda3a6e0cfd27760acf5ca4437672adbafce68e4031f45caf871a7b6a889dee4ca9f991aaf0b1982c5f0993d155803a4ad5b7224bea28cce5b9af17519b5f34b20813448ac7ae42edd1824ee62f87cab53c1ebce94d30f0633d14991b7438537068c0e9aeea6e5d9b80f01972b43f22ffe92cf36fca5ff9249e542f68169f1f892f4af886d9f908bc76cb114ed86ee2fe9b8cbe0d1bf2cbb3bba9a7d1380481aa129c30c0037407e3b2028cb5a59daa1902967bd06942bafca7b4baa9d0c8ae566b6fc75bfb7b557e98a407b5824da897cd1c23897ef05861e74827928be68131f0fa163116fbb7c9b43ef0d91ffff23dd215e7849da50ca65fbc756dd655926a9d88ca711755df05ae6b2031e00850ee15236176a1462df8e52080f415f6b01a237fd40c7dac57d4397efabceaf1f5f77e825c2d7c0954c42d892a61be1988fa1458ffbf5d15a107198aebeaa44af23b1edccac9b0422b29f941627eaeea22c8c93edf9123f84789d44faf0cb8ecefa6f1a3247fd32abf097880af2922c31f5bfe4d79749296bfb8a76179b5c5ef8fc67482beeb433c72a9881525a4ccb3b5770a329f8f06a16e514ecb82979e99fa0cdaa31bcb34509b94851e0ea5de0c1de787b6e752e560cc264680afa6fdfb165020592fd80e19cbfa926b545eb2d976d73059d6f70f0d3b42af8ab5e774d70abc9e470072fa2c448354aad4762b0bdf0585ff54845fbd6b1a7b19793672526ca5cbd3a849eac42240fa755dc72b3826e0014ecee68fa4e24f06e426622aa3d48ce92c6ae7948c22c61553a66a7d49ea87804172833d416830dd0d49b6b000b1cbd7c992342ffdf0206b62dee90fb70abe565e4288f85d2249e83a495c0670a2923831c974a3a324004ba3c4877b2ad0fa08852ca36de3bbbfbd60dd2610c5335481248716280417b3b391f4ac960464cf3243f0296839a4f31d25ecee7b0d41af5f3147ecd7ecff6c1e066c9a6e87df7a021c3f49bf0b6ad558973b2211a24163df683c98c8123c255fb7bcacb8cd895af6b4a3cef14caceb9e12019b9aebf4df11a133c9f952bdd3297d8791cdd3184e76612c0132e9ef264cf7141dce442130732d8ea8ff1b98ba1a2bfe697c866ae87f34e446c9544927333a6ef9c74a1dd16acd1a1634d24f71d09c792c7ab292ea0115fb03b46695ebe1933e3a4bfb4eb153d38d0ee8a0f1ce1b2b9645eaf21f3ccc2d55618ebc02b1710fcd6e6a411e8e296f974103d679e49a3eece6f2d047e0f100eb2c140b383869284c24080bff7ed12bd267c9f208f03d4eee2d126b73332b7853dfe35bdd0a7c28188e60e009390baae4501632245566b5535b86f03d8c13c5a0698e73642f9562c925c6f65c5b470761606a6181e098cef0c5edb5eb755fc3dd428565045a921628cabe1eb1f60b80d85181c82c08243a0c9dc0b760855c485953c6543c425c9942492e2924bd12f3c8a6a3de3554aa5be6a28385ac14a80e7b8efeaa7ab04af3ca0adbb641c033613bf3234cb0ea2bb8be9fbeb8336e588ca51ab1441344cff4df7b3d93bdb01b8f2eb5a0b9a5d7f9dec295d29b0761bb49f7d42430cfef7d04b25896e4423869400de2c3cc9266bc5400627d8b92120908a235c7d39e57aeb09f583846dfe3bdb86e75cdf64aceaf6cd54f696f928fd18fdc25a91f86c1de28c36b253921c7aa81ae71e9925f9cc385ab3a28a442e787101714a854c2f7b34dc65390cb81a71ee61f95e844e45d57ac98089252b29a015680c64b2feb9e6fca7b8196c72ad86cb043270cfb0cbb80ceb4b7fa504774a695a9d0c4b6ee583f8d4f450789c5e8cda48d3a54c71b7f3569ccb5270d99d9355d82c9a6af90cef3a60fc00f7a2680080124b91a1b487483ea928eb269deb904f83ae3df8fdd89afc5771359529dd498444483888466a7c9999088e7de12e55e938283098b0cc8634a937113e5f1141829c39b1363cae5581e9e25036992715e1187bb0703c2135a64d70c4900fdb148a561719cc337024b2ef5f50e65f30390530fc8142df26f7bcbf486dd8a42816f7ec331a6a85798d0f0c4f62ddaf9bf4a084f7b34222aad6b6e10a0682abe1d86d2eac756a0d92ba7ceb97bd5e7d539dd3c1696f22226b7b3b1791a8b31251e793f45843c73269b65f24256c3417c11162b1f94cd2d80831b9d5c71ac6ce3aa590cfa108fbd56c67064b1530b0ac59f0000be2ad322be9cbc455fe62ea344fbf232255448d3826610493e7e0b4f4e48378c14903e54fa978fe2b38b4043a6c293516e342a60cb46de6832168d8441617fa873f152aa70f03e84a5a299465ffeba4718a5f0cb8d5def4bc12a7c542bc94589abeb7177566a7fd9c6cc22b1646cdc43989eb682ab2fdbb3ce4361a52fc19fccaaa1265575db9b328d16b25c481a180c8dd2e8403c56a1441d91c34a428baab41c315f890ce3fde827834fd2ceabfbe3e3fb2d91ae0982111aaa8150448a1987cebda5c7ebdf04a0ecd2a236cd6f5dcecc9e08c297bfae1ee6919b6034e337bfcc1440612ac6b920dc3ea0a048e2fada278580ef568ae192804f913fa6abe127b87f8880fd817204d90a134b24af37178b634fc237fd83fbab3b78f8fab062abecd7f284af6a4e3ecd0d9180234ed1ccbf17a56833277992035ed70229fa0153141fe45d4a5f928c3b2ea79d75be509c891e2e05ab967d439abe5c15515da1cc057debb276ea12b1c5b3a2dc68e9a52c4402a623d077410d9bf6345be2de322bc908be8d9ff6b4c2762b1560fb6351170b24c2e5d435d008b1bba364d7f8381fe4808f8b9488bb9d0e47257f74d427dee50cd7fa09bd940669972f884cec1cab6e96e6b3fbab71a1b06f717449453176a7b204863092636793469b326fd9137b2cba64f3c3b3aebc77727aa1bd9d5bf87085b49ca6df9c8d6d6d49752c95cd1fa4fc950346280cdf348a36171587625dbab7b6a9d75a5679cf3f0aad16549b9842a09071b16397595f06aa78b9ac1c38f652caaac402c22e8812c4588dcc927d91e51eb1e305834cc267381a07eaa93a5870a26b464cc7d8b9a095d2666216c992821882862012637d64502a3f1f5366458b2866d91dc17d9018388549cc6718008e35d9c18b4c7d305dca837e422fa4f4b86c4d01a8d3fa59c0db79f9f91c82afdc524e3eb4ad15232da26448455c8312d8447f004e8c3c28a1fe07b0bd902511b94649545d006c1cf5822d4f066b62ce8ec7494fa9b91c6d09611d3b1073ef43bc8f542a7da8c4afe3db214c936cfb82677d2889de72e5d9a3b78e0d4115777f1e511e5fd15a29d639a5470224a19a3655e29b86dfe9f5dfe03cf0d0f9b0916ba73d7992e243fc0a380aed92097fcb2c8233a3d4eef6155e53dc836971b0cd210865f04da76f3bfc7be16d2710ca79d5582f6c9a51a44683d91d75de928d483d57c711cb3fb2ccc5e3958226ee618c00556966667b84e758f67dd4151836b0c4692c27f43d644ce3bdb947379ee00949bce9d76b43e10aa2b15732abf327a430daa17cb7cbfd0051e4c7e5bcd29602dd080bd855450b15da348995e6707c3fff07f542642938b155b67f60555ffba2b69d57e018be4a346c83264cd74589e8a4a584c2fd956aa16dada381fe917cfaed0cbe58896ee7081e051be1a25ddd727db7ecde95538f60919483ebdb9a06fd63de5ad7b5e0d3b460124fc0f194fe4d17da1eb341bb1ee22ef60ed5cc17232869865e439db3754e2015ae1bd99c837098d930243de0fa9efa8f6c5cc09f352b8b0916bcef5cfb103aa43a83bc858cab3333b7b3350c4405f777ecba04f1495e662b3a450c39ff546ff9e14150098c2da8d693a6601bb9f5e215f39af6a2c2a818d7375b867de94eea3b326a3ab58caf54446917eb06ef8cbb3cec41c56e55ba66eb0a2485179f083a2070386dc1866c9162e689deef3c844dad44a675753739d8a71f9a97c6970ca395d728b5bb2ae0a03c47d2860dead2e06560c0e95e49929364c773bffaf9dc8e0aa71e6f3742d0214b36804315fc0a85cc0e83d8dd6ef85eb8a0b06b4334f4ad5398f8315e271417f220faea1cfbe90729ee6a59b820210f0189078ee45e9bebedc400583eb7d81ffb935a0d1e73d0de5e6c157140ca0f061391d468cd56e87f34a985cb500340beca7e0dba4b8203399b798731cefaf39e7d4ddb3bfe8ea24d455185dae2be841f2f88f1ffdd02d204183707aca0be7963e7faf5fec006c7ea6d8f75f06ff1cf6513f96ffd9ad48a34ebe147a2a11de1966887390556cdfeb75845ffd166eca58761d671db7763f9ea15d04d90b28750aaa749b452f347358fcefe27a0aa883d9398ae0b40d1b19ab62b650b4c285af391bbfbb29ebf5981c73baa66836aa81d99cd678854a7bcec7ac6008640482be4b3cc3d64c23f841b0fe2be43da514d10d9346a30a4e0cf33ba7f63881cb1c44b68370651050ced0683a7653f6e676430e5317b92ec17dec09a691271240f23f17cc11c43f3f8832e6fc69c10b687656b901433147fdde938acc727af35a18c89dd3861e2654b763651ab80fa842dda55c68e5efe4ae0210ebd840e717a600d9ef92761ba1523f3cbb6ce4995b4f637bef73a02ff4479de5216ed54790a56d2eea1982efb8bed9c43cd71d2c9111e9a05f5740cacbbcc6e5af39b5bf16b6ee894e377280bd51ecddc75936997985a12183a5ec78d13424b4638d00e3356d8c7a65893c46411bd04e60d6ba9f8867865e06dcbb3d835a56c7e17e33c2ecbac8d083b87fb9cfac8056e5b06c6e5915cc303ea69191fc6d13a89887a3f453102b7ac820e926f13215a930c532040b122f00f5fcf58bfe3d8024fca7afd02726f16eb26cfbd2e1e5ec94e2a65574eeb7adeb64dc21e2df652cab9c66fe92725023f238da78b0917869b8e626638cd3be2a0d4589a557afa443771cc7ee3ce3ee807db23b90efdf176e240608ce25bdb602203fab4d1a3ab8b49abd058656a134a02c99a73f59df6fe8d112e2dab2895b4f6187d8a39e96cd4320cd79bf79371746fdb3a0dda93fd8161a9ce7cf720b2d11a52b762f5aaffabb37d3360069704152901e5a5f1dafb74cc68825ba3af132c49f562d829dd66d9453bbda2e15aad121cb9220890d315e6ccaf5aa449472e82f3928de1737b4cc19c8cecd87c1985a99ac23d8a1c5399062329a7def236d5bfa3da9a6d95414ef3b1edf76284cea7b6c1554af1e4e349ce0c603c5e8278953c8085e993e980042f1aaa269941c3deda8b3e77ad5d4c2e067cb9ee296218d52f64996d718827efaa90416796c5e42286e5d44db19f2203082eb7fe80e79809fc57213b1673c191d455b451bc0e2442359acb095f59be29c5fb54685584c8c7033d8efeb8746b84052c7ee55c5dce1b00f91fc4ba93c14c0fd18bd3f2b1a93a321e291fdda8fad780810fcc2757190cd265c3c7ddd3473f0b8f6c62ce7746709110365813c06b019727cf95aa7e4386b1b676b210ee5efde47b26c2b232076f15368425eb8764f961830abefd3d662628693f17fb7f6604b011710d6797643a0ff624edf50722b966965e441ea110de036f914be9fd8663f9efa930fe4edc652fdf86228f041910cb93f30a508eeb498c28c14346c4745057f6b4d8394f6da0c595100267dd23395543d88409df7d00244b658815c38980d3bf81e3eb70f66f76e3483ccde227023230397cb2df4683228f938198bbe5e50e5b49960b96249fb6add7ec626a89bfe00681184f1f1dd723adcb902dd54d897f03815472ce26e947a910b1df27cddbf36445b473f214d4767e8f85df13e66b5767f3d655fdecbe836e1da5175b70edbaab057973b477430f24ad597e55bc2c79242c5a90a64247a5f6730cd52798a0be79be909e73e4381941a2085649570889bc17b74ebcf13a1d5878f3d824a79b1cdf86b2a11b406e2ae14ff72845b2bed7368063f0620d8a959123570e8561d51eaccdcfe933cf33e1a410424e1f4cf17995c0b5cfe462b65b38fce1384a61b8d524afbf7369c76528c69252b8b5ad6d8b249999c517a4e89886993e31a963281f83ea745265c3ccdca9b47b93dfa89747ead8f567645d2e185228fdf6671541d509b164b832f99d23aa32d3604ad4572e3c527eed8aa51e30f4e009c6b1f213c9f12cc15089b220039627d24a11a277899f063c5fe4df5098094949765e66d74cb2a9b0a3d145a0725a592586879617657f90b962b5f5c5181978ce9102af38bd4cd4e1b88226138c94e3ea46a18369035c1087b4e5b362e5926892bccc938079846b8f48558e49bd73a3776bfe1eda82d9a402a8fdaf9948b8ba4a55196eedf3f65c393af3b333900c94a9aa95a4d69d6cfd23e83552373868359e69c6967c002925c68b55cb59d2fecb24be9ed38327dd67c1eb9dc584993d257f50ffa133de52220d55877a2aea6b6e939d283fd1dd6c294d4294cdb1a2e3598b3bfae183d6ed58b1a06d268c03514cdb143203d58432dc5406590274f4b85311ebb0bc1b26c66f1f1d71462b57a508857470b899c37da017e5ca4908a2f18e97a8c56e05da9ab94b0188d2b448d07b231f6203cfb497cee26d88b016b1ed38b9fed77540e0cac3b623d147e3865f26bd8312e130fbdce50f3b34611c704c4dcb114f0ca446f16327fbc8bad51a37b0f9acfc0b7c6fa55882bfce399af1b55ebbed1c8196631880021ba0b831983f8be6d16891d0e98728a0e76520e425a711ffbe888b84222c6fc66b7ee02bd5745d8064d58130c1dba4c0f2392a2e8315181e8ce79314e954e20e699d38ad624d18b0497e12629832a355e0fab4a81d42a60a8404a824e267b7e3679626d364ffde37604338b119cbdfe9c06955d7a6cdce596908a5e156af9c54b44f7e25e4b414bbc53f425e1d82ff36097e2a6377b2d25f0b6e588fdef6b5196a3d7bec3f5e71641c303dda12541d06833ce4a4e6364b90f5ab3f5aca6bb41058453ab8c51fd4508d2e29f9673b8b6305a6a279e767cb90f1826c9210932619f9a0e318111ea2ec8de26c9b55c43d16027703b47c664a3ab04ca6f26460944c4e65fd7dcabef1dfc49e5acf12d14a90031864a7667f7ee84a31d83091c98759a03ef846a01b6615f4c2061e59426befdd8f94932784580acc6f2d447567962a2595c204e3a87edd3ad3147e60d61df548b20c1174888223bdc128932ed1931cec1bfd654fdcfccb5419f031eeca726cefdda0080282e767e3b68b5a5d2f1300678dac098c222de152e945f6bc64b80f955dc3c224c7c2dc402695246c578eb9db9728680c78f81be7dd9eae739e185bf35378fe6652411d4038286dc8c13e9eae9328541aee739dbdfb5812c11b25fe345f38b09486c484912ffe49687b255b99548abf487b7f4aecca2fcfd2e82d56c57a751af9fadb1a7e80fe9354bf0603f2df25eaa50f299b07b924569c97c1f5d4ad4a9c7ead98e118851fda2311b8cc2f659488dc9a97cdf4f453cf6d23136e867663d2c2e672fc76fe121065728aa0fa5068926bde253cfa16dae85a8266307e99fea847a2ddc3d2b1d38db97e41781e3bcad303d739bc22642fb7a21594e52264b94dd073457400c813f0ebb5d44c9fefab64df01fff4acf498633ad65379f9779e258d6ee6054963299d363e5ef39b37ac733238bc405d71fa3983f35d5cd6cc1d3e37a5267bd3e30337a54658e16601dbb99a5accc53934397db2551957917234e237f967e53a941f3809c596c06c5d990ca472efe5e9159d06c0777c112af0490950ae2f614556bb27d5f01eaf510cd69b3f7aeeaf2df1822cea4e166982ccc67308a31dc351075b48c1f9b96eb82f4d7f3ff485c24e6303521faa03c5ea64759be855c73d78ecee4723a921579a1dcbffdc0cfa8c9f84a847479bddcbf62bc419cb7cc5174bdb37edaa2ff071e67a03c2b88ae03ca25a3889550b8d67b9eabb3484c090d37867167a1b4c9f559a67643a5b5a21b708c5e94bdd0161b6eee27279b728fe98b5c7c68d112c18547007e5ae7f5d4f3e4479293a9d85d87cc236511808907e13b247a1ebee0b569bd9ff42eedae85841b437dc15c3b7873d5f8c08a2bdcf282693e5ff3c07152aaadadee6f8d4db513a6aad60d7f2212883a2f08fdc3fc2a6b300653fc10786a46c39b424235a2c3fb3c0686721ce8641d7ce18565be83153f4bc821d878a839b5ced147470678cf0cc2e8b106a38a3a02417b02cddd4967805bc6b760a1335765d81ec4c99c2d4f6ae06548299fbc3622656c73c2428a1ae605f9756ed94451a464b0c27b47ca556a2c0980fd67004608639ce637f36cacc3084a4c6c39886b29760a85a64b1eb0443b8ad8a444f373b87498e77e5c482cb5a4549ffb84a39c185a711f63f81ccdffa7f416f6fb238562e0022def2caa644b837fe0e4b042fee42b40d5720c74648ed7135f2ecf5ca97eaf4e0e86fac4562e95f418e02669e488d42b9341a8db1ca68f796fa86d85029ca97ce5c1058ad5d5348030feb7066ec08abec93ed3031a99f49a79b810f4be3e66725bcd8c2208fe8cadb48bd2f1fba2c030df48ab0ff0ff39e0a436924718ea610bfa80f4b6667a9a386f64501484266baa70f89b4894b9b1bcbb29676b6b937bd04bb672397ee49fe77bf53f3e748888d97503a19c66f4a9b550f4a69ee0b80a8ec5889fc115e3883e27da8076b6131e48bd100186f0a2179872cf56264d840e01a27732108e41d08456e0f64474e13a83b8a871ee473e2ac9b6b04129bfdcb2066339528931e0b484564311a5224380f039d74253c2869844254c88f17ddfd2e10f1f4af8e422178226c1e647aa007fca8517e1c6f070e1719890c9b451fcc86021b30d5cca5674aed8efea25a4826aa0706f6a282aa78efdb988bcfd88856e93a378ee4e6287f0d0ec5df43d8248ac098efabc6bd8c872c687c7978b7598fef47aabf5372e72a34d65bed3f2b5704887cde4d8a0720fa8746c9f133411884f754638edaec77d909a4a6447bcb8e2af42964f59bf678864b7ca5dbf4c9c3eb05fd21a81396843abb73dc62717fac0b32a7e88dcd50eaf71299186b676fde509bed47e0e397772d121c030752a3703ede2a082462e224649aed3088c71994076246c5681b3b78221732bb97b2964b27303ce76b34ae4025d235d3f584fb85f8aff94477d96ac5bbc74382de0d7149468b80ff99569d4fa5905f1393b3481887e9ebaa6daae3c812df65918797f49d503c06ae871a787c99a674dda730cce90fd4148047c7584efd080cba9e04d727a3820dc412376f29c4fff5a94a5cd388158159f9d46093aae3f0816383f1e776f0abaca510e497cd3c70afa05a56eb7c8d60d7203a24c20cd8d3aee5267d9282b258b1494a85f3113e346e694771bee54681a7b381ba6494178755ea000727cd639fa4b4fb917a678352fc814bdb1db0db90406d8b76d37d2d21f2ad2a7ba3896cb300bef9b246fa57c6f5f78b905cff82fa4b99c2ed8cc05611f4e86455912f710183424ad2c9430ce223fd09eb6347128b1c0cb30ca5047673102b27ff2799f96b57208ef2703bd12d7b167d54ae2ea2bf1013dba18062667dfe8bcd5a0841781e19db720ce0a88a2575dc859e0aa4e3628dda9a4efa001c194db8ca07a0f51dad2cc1b7c1dc8efedac74a255469da5893fbd04205d76ced58fa7b6b80492d8fef76506fb7ebc6f3af02a492182e2cb4f794dd9511b754891c5338a4304930bd76259b873b03d5a02c4ece30e2fd841a2c2758bee7d9d8eaef37c14df0442328dc12504edca84903fc35267a661aa21c8d0978b577bc708de27bbae55e0261a385bbc5f9e3a456ab50e277163460686ce322c70f4b9e798930a4a35301a936074d9f14fd80fe5b31b7d5b5c3ddb835bbe57fbb2a71283c155a5f9ff88ade2aad6af5d4a88183932c8b4b285dc7df78a8cbdaeae0d9003f527f4b9512335cc77821b46ca5ff4e3052272b45dfcbf50d1a1eb1e7319042efc0d378f0ae5aee18f60cc408fa3309eaa9a382926436bed707a5fe42cc33826dca556602a87f3913df7355eebf781d42246f1994565a022dcc1f3d1e50a89dc1180d195c89a852a788d120b628c61ab4e7127f6f8e535f0b442f1dd3d73e0306c623ad5dbe9bc67ab2d3c238e2f0e8e36960ffb63ad4c703d3d0adc2d82a11824649308c1c6c369dccf65bb2ab7b3b0200bb437013d50d17c78c458beb78298351dde9a68dedcfdbb01e7c330f73e036a531142ac25877edc84e7f3b740b1fdf922f5a147d160744b213c0016486680379e7ce6ad24db2bda5973fd601a19d58d0e824ebbfc506bcb5f14e547beb3beac20002f787051d484b0bc938ee58a5aeb838f2641898dd2f9ffbe8d5e3950eece1c4ae0a01d37d3b69c7c136a5c1cfaacfc91d32a088ab9774f73efb97661e3c88ad005d47b5773ae31a6c047ba0635a50a1bafaae86034416547f5042064f63f397c6c5713449533928b319a408bb03aeee94968cfdbbb2d73d2900733d5123cd771cb0308e8721b77af6c3ebf8d8848e1e098db5a26ffc368759fdce2d25efb2693e7b4ebf81fb7319b144f3030cc32013468149d6b8cbe21c2c715924f65bf1394b3d48771c632a646ac2bf5881ded6d952fc67c681b6dcdbd9c31354d080644323f82097c949214ac326b8d0e57beffc7e9916865acf374691d1ca46fa054c074ac2b96e3065c7b87e036ccba219fc725432511dfc748a074d959046445afa3861ed8d9d5d192b0ec823301fbcacb49fdf93a687f11783caca5a6f53bed172a50b9f5db440dd0e58602debd09c275a897a68723fb92a8bd7108e0223720ef6a8603587dabad42d2d4a64b34247aea4db93edd03de24e381f949cca10feda2c25adc79e84bb0a71770440dec564288ce733ea7056997d4c6975d7b705d3c379c079a8c107b1e2da8f75b6870fba3e02dddd4efd5557a915bdb3a4320b9c7eb250e49966543e2c3069d0be915dcd7970d5673499b2bdeb0c0fb6236bda449c0e80070c56525d19fc4410e947dc9932c119564e43611f9c70eb4a9a6a4b8de0b56fd6ca094cde539d0f990f340d3c5bf5210e1c1b0abe08c3d4353e30167954988232da154778a839464d43b69f80f6c26ef83c2a2b8d2686ea3cdc9372f2312ce19d6f04f7448112627049d191089ce008a9d8b58f37e7913ff18c9263981ac547c19b353816964dd160f216ad895642cab477ad681ba544ccabd6564b4d21ef2cf09d7bfb4c3f8fba9699440336453521693fe0e6eba9e65cc95b4644eaabdedbee3cacf1d034fe806ae3775ae566c49cd1d3b1ea14dfa01d5ae86e6f0e55ebda462dd640ac09602c8725b0d141a2a9db2ec8cb51eade702874dacefc02e377699d2f09a3e3860ca3f5877e1e3f4f725c0ba87d03ee4c94e0a66a49a0e4c780accb0d45e656d671528d381c4267dbbd769d1e45f2b3df5b7d6c3e1a5a514c0dbd31867003c81260f9a978367294546d263a1184544c169c46b64d40940d4e941b318e92ef7ee259eaabbb69aecef1e26be81003d2b4b8a41e1e92aac3627fb86b38ed2ef406e5faedc966d4884044ef1c4dfabb6d94eb537189eceb4d95c484d17248ce3b45cf23f23971c9136d4ab9731ad759ee6c1e23648161828c4e6d537cb3d3609b5dd5f2356bf31062f12289db3cad7d6d1efaf14442ec48e973f52408714a3ad1fd54f96d0706aaddaddc6285b2a6f0bf6b88bde6a702b5d87b52e23f60788ecb8432a8aa8d93d53d694e4f4f22b5c25a0ec59cb16ae566999c90c2dbc84d166cdeb88c5ed8acbd2ae20ad1bc856522b2a90d01e0134dff0b19fcff28840195dae0452915e6452724cb8492cdc3c619295ee96e33d46310927d8ebced03f51b2876976140adce4240ec502b4bdc8f5a7aa79f6811757831c209d90d2dbeaca7f1d65bebf81e96406ea13521eef5009dceb4d87d592b3b0cc419566cec93d607f1ead816b00e712ecd605869f62e0480661b937d5d03e8bcccce8f2ab5c6d55612c448baf7c5e1752128cf471c890de80778c062384a1dc61573e48151de7501cf2e8a4d6c6666440c782b200c7e48a705b54cfe1a7cc29550d635745377bfc35dfdf39512b8928fc11fb4e14cffce18bb49af253cc4113a9c24eca485edb824ddcb8c98552b72ec638b1240fb067cd3998f521f96cf4d6fe0ac4f9372f393cc66b47002f97e56f2553d47eeea2c2edb3be47a6a5b14ee11cf97471b6c96f852859ae9af137f1040083cc79d1d64dba870ca47b563456050e7ab02046f6309d5268b44de7d6a52c98c91453628286e9137f70d4b0a4b483ed1e2d588991431fd97874f37b4c778b39697358946abceb81bb0ead757730b1bf37dd9400e7e6886a4724452ec3bf9b3e95df5816bdc054cbaa694bcc973d605d248381a91d324c371f36795941318f3720380267a696887e40e477688688ac98182a5b1e7c13139b9f213bbb0712abb4ae72a7cc9b979baf2f15ebbc3cb0f909395fba67ab108923658f49805da0842bae7e4e8834688cddfafee62fc558a1a2ebb81b283e3414224a657abab57a40d8af8b313ddfab3bfa81f8e0f4c28ad54b7680e3658d32f8176cf78b169fdc5b05bfa555c610492c39cbe8a70e989deff0221cf7486fbd213b9999a658da2908e5832c5dd298e4160a051dbbf17e3683b83c909987934fb2cca3aec7c927da7a406ab41dd6bdc215a1936bd67bc0a676f79f350a1e76911d39516410ca3ff2d77e83fc1c98ecede4a74476a41ff592350844f3d9bc3ec1ee5eda05358ecec1b4ff981ae280d63e5ecf5b59749b49ff35089a8a95044859501d61bb8a9a66f84b3a2059566f17523bb36d37d84c61ef3572b8435d95d8825dc5d35ac8db757bbb142f67247ee7d7e26788292fe8323612fc582733c145f91685262a4dfd7deaaa113183b7acf4af0413f58127bb540ef55e66510cc95ac8d3e5b3295d641973ebb664fe3195e5f60105973871f227899578692744dda4c8760b1f43001703666be964f1ef02bce8d3fad8f4d0fb8b2c5122cd3aeb086f9293104544291839d3a1367c59029fc07d588903ac9266ac52690f26000d278916ca0ad1287e837a3b680ff31602727e6108a791bfe90ebccf77ea5c1259e125faf56b3638ff7a70615d125a38612f732819a5d4902b661f31fc7dc2fb232fdf723bcb497c5ab163618d03db170364988e070458a0693953c449ff0fff6551625da7438b2c94edee34a7acec2c3984ff306491dcd1da54e99d9f024309548a77501253b0d907a947ec4e5bd6d514b82953cfcddeaf168c7df19169a68b62646d738156ec8fc545465d46157d49f19c7a809112958609f8bc7e0c93486e5928dc31e7cdece607ca8549027a042f5970e7a015593b5f71db7b7730436a0d04c7046acdc7c203a98d54471851faf63db40c9799798d2f85fe6d373734d5536b8a5bf802e0569d1681b3af605d46de6a5ca30f6124a371de5047546af4fdd99a25dfdd93e0756b7040c54682d8956c01406989956f619d09587e55fe89d5626c7701e90d7b8e34c041c950c14a39f839a7a026ca202b86fd47441ac26018bfec793f5adbdaa16f6d11fc281ea35692ed5a6fd163f91c084ac8ab0da97b88b4b6325ae6ea5d50612c541d0d0d14c3f84c343f4262aa3f64c1444506d2a678e593c5cd8e0858144b0a02c57de5fa45cbd1438d0980b150510ac651fab4c4c9b74ee3864bd86dde38ab6d2156a7e593cab9438f9b656fda8c62d3b7ce0dacfcb104e47ab14c85990c14df39e04b69601842a05fe77ebc543cd4d4b38ca24d3904d21619f9860e696464b63f45985a63c21905159d6487d95b715ef909f17834ae0f4f9561ee14db346a271435f1e788b55f9c9b3cb11e6f7d9361e34191a73955045d40d8762dd8171db0a34e2456e0ecb14a2e9c3fd19bdab5dd0ebe104a0a81db72337e02718b99c3d6fff30280aa71f94a6ef89e982af16507a292fdc8aeef97286b8811a1f590b751d7f6924b0a7ffe49b6117969501633cd5ef55a4327a6362b569801b8d9cf578340712d7b8c8466c379615efe6ee4c9931e1cdc2b00128168865bc7bf7ba099e1b94d871b68ce9073f10de9e439cf672d328c520ca42594333f2b5577ca0a4c57d790d41d667589dec279469da7eb7e2765d6fd4bfec0a4dc59cade94b106cbc78c9a1451602aae8837f9d566f19eb33dfd34327c22a5c79afdef4e896e873077c6362855bf6584d2ed9e18c4b5b06f75baf96e8a8a4641b611fe761c5b2058db9e63f1e81bfc75231ac8aeaefcef5bd0ea3a300ef3fde35416ec90cb09191c16a345783d225a853a539836a0a5846b11e79a9b8e81c068aa63384080f837b7e29d6cabed4e6efe401ee2aef2655240d1a6919119d7455a40e2528467b39d375ad28ac878ae9a244fae060843e88f864194d8375bf60a36f269c6133368e2f12b29262ae395d8dc1f4d3141cf83c0b7231c2cfe9d172027379bd258bc7d2a01a2af68cda06611e6609b02618cf8fc7a53965de5683829dbf59b304c6d95bc34d26b07999adf644308717ab23a2e2dc102227b13124c4b0777c8a4cfe76973a4c918f30ae02daebbd20f3a912bcac96bfc0e2b58bedd5807c5626ce2bcca446046e71a145856bb7e94f0a74fc7cd202ccf636077daed88fffbd734bc875742d87dacfbed462f38538007df95084f576108d39e8cc5108e52b3269450bc8a378149196ebe405ce592f4eec341fde587e6d58cb45e928a0843046b2e7e4a5d47265ea73d87e8c1ebfa08be2845d7845c4fa592562320f04e42890b378d2d91d2c907bac847696d8a30da32155bd5773169ca7248099dfded21b2c574cffcc8a25dc7a1e5a07fb562e1e1f8a570f8b268b22c3ef91e1d25f3c541d48ea69ace98d83dde8f83b36908482fa9b876bf3d80e82d25b0f7d6f02c5dc0a8052ea318668813a4dfb5d7850889b8164d97a27949e08c5536891a8a96c12e90d05a48224812b562c3c549bd5d8e1b2240348d8f2dfac838df8bab99956b7835723a7f251da136c30d7743d384a54688d91b5820763491a56b4320b2da225d2eaa2b0f98f545052fa8487c6212ebfb9526ec1aea061ae709f11e5a1d8e8da95d5c43d8850a113a9446e3e457e08adcf003bf8c63bf969a01297ef944dbc09261510d0d934cd5985bb87e6f9eb5a805d829d1451c952e030a1601d9aee12a72958bb80ed0356a3dd2d73d06153aaf62b0739eaebbba8e8b3697d1f007eb534fb502008406327a5002152e5d1b4c443d49cdf289672ed432defa794d36d0c07579e522d958c85bb43ed543013085b8de3c7c1b507308fd0fe3156119bd6132733edb375a7fb909b652d396d1c23f5a780f2e56a9d5e74fa7442d4ef258bf8c6a21a9a134970a9b45bbdd888fbd83fdb20e7abbcbfdaccdeb8b203d5d5f40aa5308a3674afbecd4f7b38bbba9983b257c8917c401ee6a3bd81de0042e6ccc08c175a874b77c8adae7fe8639a61a405c6eab31f36fb8bcaab9beafbb83c0beeef5ffc5008c80fa2fd60c0fbb45e6c34efa75bb5041aa98ef4d9895131a455017afcb53494297e80350a73a31f67cef9f4c8e59830de17fa4d0759ff858b1518e18ab02f3ce0f834b4798fd949eeaaa98935cdbd33e54b9c9933f13f49ec3e24aec394407d840c1b45d4d8dce92fb6bfb80d559e1580cb431176d627c717f64fd28f932f7eda24b1985926b8886a67f1682d05e560b010afd315babcaff48b81d3778bf6fa28abf05c2b24373234605e102e6f84a2c6d07b05e04304d9b7e545570fe2101d03cddfa065d98e4d36da09a9c90b3a8ade855add71bafd78d36e91d4618bc4b4e17cd9b672ec92f9fef6e3df141514d8d3f179a5517ec601b55e95cae299e193a4ca37686dd6c62b5ac03c20a7f39dc06072f401ff43d717074f721b682f7e9fd909fc406b8ca2e0d15ec97a5f0cb96ee6adb84f60ee5cf45ad63c8c980ddd10823c0ce03cc25e2cec93e998edd93350963f84432ca753e91aad2ab9e0bdd41d97090c0e660f3817adaf81700a039b4fe2e40a7e4988f20e4a0adddaaad71489193c97e163795b8ce9e6b2d1965ad17c816518f040ecfde3113e5559992919b2d04fc318c527241fb0a900794af94edf169d3de0bb9e016a7c3646aee4be16230d3ed4a471b35390475cd647f8e817e75364b692117cd6959a04125577fbbfc9fc9d4a6e25f6c93d2561bd97b4413e8230c0476fa7d0ecfec2d3519beb1d7a2475f9a61d870e620eb9874360853055b7d2421e172d500661717d8d40f38c8aed52de4f5963b4e6826696fe14c245a093e46ec94d28b043f2ec925c1fd083845b2a2e1609283095928ab8bb21f28ed3ae76256d1ff30c2ac5c65f14a87b0b1d704e42dbcf5ae15f9371977400a481886f7fd15d5ec75cfde545055e668547210331dcde27074e8f05f65aa52fa9adfd0d153f423d3a968fbba4d686fbeec860c8b17d42984da289ae4ea631e7f755c61c252856bdd9e390a3a92d6f8bcd8c6fa03782d6ea526afcaaff5df92f311450776d98f7dfd2bd2824532e580836580e4c44867360b8172428de0d9413deacd30511a378fa8b1c88c491c9bec59776b4cd01e4d58cf0b74d56de956b32dcef93b909a4d9c07ae165764d9cfb9084b8064522b0224d931849c24dde15705077e24649fc829b794a7ae564fbf4b865ef37497a2db3f513dcb155fb5a5b98ea534f33bdcfa7d7bb4b61755ef0c390266051ca72c15808853ca1763c5264e20e886c9b45e9bee145eb42f69f8a1f5670ded04dd0d098d46f49ce7ed58c822582271d687ea3d621ede1e075dd3d4e7bd4577143b617d167a5f3aa3749d1c6dc07eca0b395357ebff5d4e0ad56ce5d41d7e369792639750786ec5f5e71f528ff0a9074a251071b85776b05fdfd666a60caba281a903410edc3dcd40632e6711e1e34f326611902034f9a761c3e79b2804ffd8c606353fa492dabd6e17e118d836f89cbea7400748ab4e0f44833932420451da9f9b0957b74f58ef8af1b675feeac3d6fba06b54b8df927c1c4c6c743ef43da8e54f52a67b7a9a70d3a231aebbc89ba746fb59be30832565c1cc8954c496e6359d20913d10282ca2bb096d69fd8786bc05bea44e55f148f4253ffd44940b9b64c870cfe58572d1909e167df81627f547becf5173ead9f423a5c8cd3b408909b6b16618f81b1e68060d3ef5adfd7deed9feabfd5c6fc34e7cafe4fa923406db1f773f69caf84a2b5ac9fe18c62fe00cef52322a84487cd38085bc385210e33cc59ecd236c23985faa6a6571e695638982216941ffb60852ef5ef0f2fb60566f8a16262e454efda3015b00c42880a9297e83b0aedbd71ebd2e01cabd7348b69066876e6c02aabde967389c86ed2ae01d6e40bc6848bb7ffb84cc61ee323b536b0c848e8c7bd950261d8ffdacaac8a918ab566e471570760ba13e3eb5537eafff9801eeafa67ad75e3aa3b414527393b62690bfbeb42056b11e7cf39f6aed8cd0a7129562a72d79841e0c5448e1ddf64f9f3223939fdc67182904779723b1b64f8554b6067903e293150b348dd09b6e7ac32cfa9a057e3084ff38bb3eae5eda684c344a6e0d6d4cab40a97856aa7ecbd7c871f04ff2e5aae08174d45f886100adb618734024b8dd8d282a18f63e1329f3d427868c36da8aa943e4759a0f9a02ebff0ca7dcc04c2c520b43aa04f1c1d7bc267feaa7ece2bafed7deae169029b2da6b41134b911bfc9da768d2eb04c19e661520e65bff68a725ddb71cc9f3704948f3acc908c3e54181103f0300e8f19b2f27cb6e0b0abd5e68c5bcabbd0aaadc04d76a2e0899adaded0a0b4d2f90d95bec0aec9431e8235ec330faf34972081e5af1d98a7a4ff9c8f583229000d0fdd0412012f2b8adfad9632b02fecef949a35a5993bdb3bb32a9058202f8cf213d67149e06a98cc194762340028c394447e6d9b702b6cd54b4ebf906e6d0cfa10a76ef8db48d13042ee7acb7c8c8f72fca2ac3869a1468976064b83a85f68c779d0ddc28f854daf9ba4f512a641b1754c1c8756bf239c3324f170623ae81920ace3ba574466755531226c1779ecbbc03be97d57fed16861efa93b500fa192b086581f69c0a6d0a30b3a62a69fbb38ce7594cf1e891f400aaae29db86404de4aa00af89bca07262e5289a2088654325b87f4112ee81b046c4c7946e267a9af3d83bf54003e70d1968da427dae23892b61bc2a74fcf78f3a88b4689dbce3e4cd8c1f37c934f87c63f8349c2d415cad1806ad1684e084eda5f06aa9e978430e11ebd416882d6728aab70a18a523ad41306c7a223786f9bf7ca1a32e37589550cbaedf255f8a0ed11b8261c06e1d177a81ecedffb8d147d34a71014eb4813da5fe031af2ea173134ba1990e09451286318fdce432b54a7fe3d9a2ffad5000f089259e42ba654c2786cd7a3fae90eada363276a78c6f236065c9b5e8707f41e2ea1ec4f9cc952b7f8450e4e01c1371c5e649dc6fc424cb341bef5be396c443891a5abc23b429e61f42533a0606c8b9f4de5fb0f3dc073c4bf6c69b72171d8bb3896e578a7f71b76821df702f40727166ba0d4daabf2c27a125359102703a1c390673184f371971063242a8dcdcca5e8261e407f102ed005bb7b953adf95e1473ee96b15141214d33745cd7475eb4f8d13a5c7d29edde7488d277f6eb31c62900027cec20b54ca22bb4e9f72e21718eedd5d4fba22630e5c5213fc874c50c5e6aa53cdd1f153236d5608c8ee7154dc1dc0e5e2e213f571161833a7612d412d348a2fc8323d67c149bc1a99be2a1853b3134da66018ee99892370b9c16f17374be7260bd0257f1d0242f2fca0d0e00a1b3c1a223f6a6bfaf7a8bd5d624c835f053a43fbb08f848226f5e5e0d3142089895fcd9de41af5db0fee2db3c6a002799ec9be792132ccb7895249bc8a4d23454dcaebb00660b96d506d6a2de1f8e7d7cf4ad138aa4869084cb86e33d6e111eabe1fef6692a285c232bce239efb4d10549bab1a6e7ab57b1dfa485c68f90879a67efa1a4900c7be5e7d3ce87fb459598870156461767daddc55ae21283eca9b25ef829438f0da2f43ca3cc87799c5afe2f67212e042b86cf97f6d371019ce968e0dc79f09f4b94fdbb1c5c7ae91b140a56b31c6fd48511f0119192c2be1f3367df8a8674b5101726673aef01cb283dcbd32406838cdd1ad46fae3b235e7adfc8e496b1a844df8c626e7ae657982127741a2d5f66a2922e36338e59ed35b3934594f927807830a2c77dba59cb86ab54596caaa8f822d5608ecf8338dc6e22a78ed529e4e6aed29b5258d57efc77cc07416c600d1698f78a5cf2febdb95d5a40797bfc1d157bd45cbfb8ceaf1bd54e56a2365c1de625924d75f8299c0fbb811e735a147d0a862ad73833c047bf0268e410709004f0eafdd8f999ffe32d3da1e2fac4a4d346c3f6f45acd2609fa6211602c2ce45a357fb04bd5934716a01b4c9560179230d7d8502a3a9d40a7a138253750f522d10ddd2d501214d4aca524dfb04a4f60890cd865f8637be9bf825dba71b8def8fafe1ff2950b6b59e5f08bd11212b5d298319563b500b77dc752716cc262d827fbfed1d2cca51dd489379de01b561e49c6a87f6a967578e46c00c9cf74a310dce84c558cbe167bdef5893ca3a6846536b05767297a837fea8d44584f36e017c3a84a5093f9f59bb88019f5c584be063fa9222fbd99216e5e1cbc604ab3675bd048971fe56005921f7bc6bcd487afefe8e5213fadcea8d6ddd1fe43c73e92a751e3bdf8b2a65bd790bb40094b1f450d3e2b9c8f6a50e20e8e2d60e7d2fcf61c2f20d6d379a5b4d9d982716790b8f76a40dfc58646dcf3cbfdc25f9f2f77588ae9005285f133350a5e11937fa6c2385a66551c7a5c42bacf39e551b1bbd7c8278ab7de7ad82b3f21f06fd49a25abb108f53bb6835d802c79ce93f04f01c56c32ddc6a227a3523c4769d87cc3a872277dfd19daf08b3abcbd4079adc80e5a0b375dab36beb0843c4f235f9105c94e8a16e68ad6e14d7ac9892c92457675c0c5cee072c4df7b7fdb99276161d3943419260859bc6cc4248310954c2f4cce5c2e69abc6253473f81f8d08bb9d37a343262afe7de8fa9c90af04eb49c6f1606aa0e381f64dadac85bbed63c064f3183dcf4099ac13d3653305ae12b853f543013af64ad0e324cd97ad128e7abcdc6228c831ac8bff2fcb162bc2c6a83e7d5ea8f7711ce07870fdf958ff994528f4858aa1285339e9e79d6a3a76d6403a9b8e5457f6407e8509b2788b5a2b9863e7b52634cb7535f9fc15421e4dc483e20331a7349e803e4c68b8db6f205d65f8b363008baf32ad8d96e6d753c36dd205bcad35d91870d50e7d8eeaf4e282ec15b1ef47629e8fe8172acb62fcd1fb062cb9fb9263aaf23e747e0f7e08c832554ed772ffebcd839287c126e47276afbdcd1d18556f843d8c2dddb5d79b974eca836f6b2e5b504927efe38902ab7f85c57a4098f7bcca5a99c6b66461a1a0ee6e90a183e75502361ae87a4d58e3f9b36bfe2c9288c6f3e698732160d8754cf0d99abd7024e9e05aa4f343855dfaa0bdaec6db28b57be2bab97548907ce2c043de2904f46c99f8e10981b8301fee2b71f3c242e63e458508b56c236651d58d1392a573d701f043a89663741adebab73723145f0eeb43e8355455824274dc484fb01bd8f6cb30f630255a49cf5e07dc22884414fdf7df817502282ecf070c9bf62e9d7d64868eba90f82f7ccf2974cde2a3aed3a3769b144a4ad1b1371073eb82613b8c15f2e8c356ba6df6d11d0bead71f185bf6840b8d554fcde90b5432c3eb3fc89d77e317ebe9de701a292e2fd1939fb5f1994a1ee51743efef4436d1772ae2dfc186d0a8f3133f845552652b84a8f27e0b17e8fab40806c63f864ab6b9b0ea6fa23ab9277c4699e52dc8101f836b22f40f08485e6487329d317f8d6b9e62b533525f5e9deb105511e19fe805e8660b5c9836b7d40535a6fc3489633a30cb07511b09cfee33ddd0075687ec29dce8ea80431724ee77ea07a83ba0c3418b0d965c3748f0c828cf5b56b9e3aa92a5619ee96a6ffa4a1ef697219219d630de3188385d377c22ad76cc2823fb1388259fc7fc59832b14b6e13c08d6e6d7de201d0c0e02dcac1ba0132b7815f5ce1c5173000698850e03ad9b4a93a11a51688a683fb36b5ef642bce8403bea72b30b4a6bd99dad855074875cd70dc01bdbf0bbff900362e3d119999dc6a9fa83338c13f837d2997ac04fa57f4405d60a5363c556210e48bd59ca62b660c6365f5b5ab57b09e17d994c984752486fdf5ec7682e88ee0abd99332e6246fff4797f37fa111a1bce7bdb57c3def5a4deed888d44aeca0b93e0bceccb33066d9ae4b0a419bc6c9ea2479753be8b929793d82d7e96a5934e194e9ff9ced5dc1eba579ea0520e902c44e3e4a9a7111ce8b9d58486f89a29fdc3cf2a620d076b360c047dc69593286d14e3b86fe9c9b22820f7dbf8e7751cbf33f0f7df98cae3bc679705c4c4e337126abe95df30249c4706e2dace0e5be75f817e265419ee8eb36e306f22f81ba2c8b22e11cbb1285710139206fdaa7b26071658c0df861ce401d3e522d1706234e83af202542efbcb50e49f9d69a0b20030533157671cbcdc14344244713d7279ea38ab5d9ab4cb035346b8e89c48765e928b44031553b56c081bc0ca6fcfb888d19262bcfecdb63dbd9914116ddf6e4342c75ec4cba1e30bdd35216d5cbdc420e71da4b7e6216a18db1225f77658d924625179ce2afb5cb921cc357f1274fb60bdd09809e58a8d8aea75557035b1145bb4b1b556bdf07568b92cec1c94c09fe704213fbaa2144fa7108012d4b16d9356a679756c1b4ec343745214e9ac2685611a6c00eeef395b289e64b7b5e3c2a30de1c69e793f0a1f07980308d4bfda9792422aa6fcd2bdf9b412d99c48c84881f19477a45af74ab7b2e4a4e37ba9fe56f2e93cf14dd1d98bb7ecfe49b0be4229fa7c635a3c731074f68820814388f8ea3eef3ec0cfe17e4ce41a6a5accd0a9f24f3886c61e0a828da145fa2ad247010a9b9db588db9fc3f24a47e467721279c65f72b74dea89ba87c8f87456348963e82d241d6244dd4447556cbefaf937a0993fd1d27a7af1a3c8ea296d4d573ba60b36b60b938b6a630092aaf69b913cdf8475d34f043b96e5e2d207b97048db89de83bc1b0b9f96dfbfd15b460cd3b3854b03039b65d6b255d394d0e1435f1b835dd9a9d8c25c7cf7e5284a9b89d42955207e1fd3b32d97b98994479acbabfd04fa18060d07bd37cb57862fcd4bee21ee623b0d84c6b64de5a071c6362a57e65fe26b6b6bb52b39069eea655e8e86ca2714a21e92ac209a24b3c676d99fdf9cf2d91668a93699b52559504b790619bbc491267d4f446f46d43dc38f137d36e686355223386a057e683c565b2f1385f0ad9aea65a6b4c3175b1aab1ae5d8fb92cc3840da60f035861b7ecb58a1ef9cae60be39c9f785d3f913683216c42b0e101b3363c5ac65125b550c64d7f857d618ad47c4140e4ca40aa9f0d0d1b32f590da0712b81324c9a3742fbd1cb6f56981c9cbd2038bdf954726d5b5aefe5836af5dbcb0762e0cfed8611e6a027dbca56d35019c2d1d1d5123825bacb65785d0fe9023bcd9949d59fe8d5dc8f39374c000332b967e4863bef7d04c616743dcb0c38d02fedaf4f38ab5bf77365ccb3257f66a93157bb817a5d768e570b7266a12bd7d29c2804993971dde8c654b2f516881e38e9e84ce4999a7b3657090046aabe934c46e50d37a8110372ed26cfa81d8438aecb029851e166904b0f82eececad4a4fbeda955138c6227f9ad3ac1a241a59818698740cf7e69f92e618d0f0a8838aecae8b7ee286e8ff76b9a952afab5bf89167709b2b50018df92485c7e31a08573a20228269ce3d4745c1e9932bddd78649e2baa41a2eb83741de6e591ce72fc319ac316c2c19a02b4e1c123a1ae46167abc3f2250cff3e989ac13c557ed87b5d47b44b940fd035cd2727da3730cd97606eb21b551d470ad4b270794806d9cc1137755eabbf72a225f45e79bdcae5168c7d7bb1872145faafcc7ae79ea93db1f8ea7a6cba8f6fd239c342e1a8205dd9ac81b575f0e136726eef05eb70e687d08d5613e8655558de059a832ec303e6314a97d190d0be269085acfa6cb21a8421055825808e54d536de5de495896d3f946996d40280ce6dfbd07d1c75aa44c8ad9b05a3f8d54807c52aa895deae37d995ec83e7632153720fb11d51ee91e692f68d483c4d93f4084d1dc54c7f67610bb95a286a12c4459ae0ce36bc8371d980bca275868391c1ae75f3dd9cf60333ddd67ebfa8c06fe4dd4852c6c8b4451b761b6524bdefaaf60c28d7c70af6b5116c0008329772163bb9efdea4c0240f5fdd580f7219664d36f075f347fa42a5821d0ec4f2cbecca530b08ade984be08ec06d3012b17ac0b07006a3f19db99f2ad2267c20ed292211e3e581c6c45770c7a8e94b46cca94147219060f14301b9ac96872880d80cb1ec79e8d657c168891da5f329a932f1b9ca7dfc9c41dc5ee439595046ef14718b7041670e97d8d0057e59768ef7d3c4dce5316f7247c6332afd0d433d3ad54a95e22a99f1530509b8f21d6156a45bfa9170660da4778c3da4bfdd5cf4178a8669197cc9b7627327682e56775c5c527b8f19bb42ff974cda6ae740593f14fe84eb726ca74c40d11e045c329af271582766ae3a4363fdea447647b557fd17088808fbc0a7603146b7eccb24807baf4acb1e3bd4a74c17c00f37d66d8891279245ad2181503322ce2a56374cc7145dea7478e30e1ace1e758e31d2329f42f7861e785fc42dd2b18155c54cebc952f5a8008ec2a785e2d85c337eeb145be91a5a42dea09999ce81657b2f54ede69986007e1559453d8c4a37e307c604d0081b3a637d01f5b37acc4839c784f01779bd8006d7edacdbf3ddef60f251c69007e5d806137feb1dfd67630e93abc2345bf56d8a7304f12cba8c595b8a5f749337439f1cd574dac89f3d3579375ac2e0b641dad21b17b1ce49aa7a0ccf5aeb92365f17ce476072dc3d33e56b15459d32f4ea68ff88b7d5d81eefc1914a5c07b56f5a828e5e7c9a351a723585acdbc965a92c2a7c949056125d98b457aafa2d3d95dcdab5940b52391f7a7da26eab4f82f0ef95fef8399eb240f61cb5d9dd81a4bac9aa8ede21533144be11bc1033f9f8e8eecdb23efeee34454e0fc3b2983ee5f51f376dc239c7d378857ea0e32e8de55b2b3200d7b8e25b0b6911519a4d7b296574641a1e7a49c2dc1ebe82ff0508c7e53d9f5d1e42409029b3cdae4de14f0b97ad461cd95ea227f3fc4b81572a5f5236c8a19f8cfc5376bfca1b44cf4be2e9e4341c3d0263e69e037affa16f06a75815c192391455cffe92b5df6b7a65b565ad8b0c5fa7d1c928e1f40d63a5693930734d22020ed21433513e949be22723be29f21d6db290a226c0e98a37deac611e8bb003d9b2551115fc3c5c1c808327fc3614aad31198c964810ea86e5629efd9455f68470b184b256e95c570bdf01dace1d3a20637543c33c5122e278e99806b4a9493c4b7cfe136aecfbaed88ee6a941eb1f90200cc171ea08abad4768074f1fd443a617ac7b2da9f8c4f70a1c14dc8ea56c5355deb358fb12d868e0aa7c7c732a6bedc22ca2a23e76d74fc120e025b2b456ad2d3db89076a6082c9bb4ab6cfc7aac57c3c8ccc6513446478408895b4f97965d783da811b19c920ee581edc61acdeb10704368405a1120927116f9e93abc149c4099210879ee0b7e65647006375663e3941fb19e5dd833d96a635f179f1c756f1dacdc011b58829884eeccb127d024c6deb7e40365892cc3961aa84fac642fc349925c417ada802ec05715eadd1e977a4f7d18bafe99cb952ffdd2c30d43609b9ca0f0f43b2f001843812ff4e91b239369ab33194b7e22fece557396ed6d5d5eefd23241694ce28e366b402db9e5bb989d2c28283de195e5494b42ea44e2aebffa44c0847cdddbf7ae548a2d372a75126a1e0cc686cb311293eb361fbdf7f5a091e29ee5277f6ab49857c100b9c8540aea76aa3e1b31adb32a89209a007ddedea5deee531090d86dd99ef90eb3d712acdf0a495c899e7a57147ed2928c4fcc37172dda4bd2fa3169f808921296a8098f4a1fff5984534edb6e52fbf188a791d4290c522c60d0b3b8916b75d7eb3898dec7a63ce7b3d4cb6c377ae67214bb9192954bf2b9efdb1f926eb2c15a8d4e71a0b76e40fe26557da05cf0f118bf085ecaf2307cda39995fa6a315a9d072c166cb197ad4680a302538b51aefb1f8676910d5ceba6aa738eb035aeedd488bba97081af88a02cdd31f1f4ae0f6418a3163c792b026336876d61805d645992fdac70e5435c40be78d8a4e6411d1c0f376848d0a3300ec85b2197217012e39b057a79ab4e6cd239459f4d55ca36e39efec1af4c9e0ba42e91496fc9bb85428fa0b1ed256da4ec0d7a95252f2734a793a2611ba94cf6baf3157101e33456730152d94db37a9b7fcc84c56b8a965d21f000f79364888f06fe65c6b650c1564219cd4a956c60a28ba9f86ed0ed1102ddf2a0fd316b9a41eaf3d690c96628828181f17fb3a6425235f01119b2ed62b8496c9a851f4e6d2ba6afd7e3ddbd87e67407e4491bf5b63d2af2caa49261d099560841ded30141b4a4a997b48e5bdb2a31adcb45569ed6895e8dbaa4e5642450788694f5e254440423e1e21590d92a5802e1be8ad105fa7e6dfe4a095e7243a89db951b5edacdecc25811e4b363a49dc8845a7230ad8ddc8aaf9fed6590df88a606fd642b0b4ac59d8d98ae17017728707d751acf62285a0178502374ef098f52b893dc8774d5db484ea0f00eac729aeb741a20aeb62b02e1d964dcd0feec1192b16dfd6ea048f656e2ae406bf648d33dcb49ed6afdfdd3649ce81aaa28789099cc3d5980faed34cd3977e3b871ab86632f6654677cb01851d7dc532fa5d11cb8e30c652a13e5583ebe0cf991af0fb6de47acd77444b176979bdbd5409f8c6a0dfed5fe01b24d411ab474ed036e5d6d26cb8eef2e762c5c24417758801e37bcf13c37752ee04b638a908e1a4462af5dc486e6771c00a26a97bcd67993b9ebc06853d14d52e4837b286daf98b1d617c2d4565316886831bf6045062911c04310087a045a115938aa010af5d35a85bd96068fc2084f1ab8286af42643a7d985bb5e49f5b6f884e84a974cac47d267f1a50a6ca11c65595c1546078201b373ab75623cffc11c377d35ec4d5481790c1c054a7ef2b4f274de92ff350d18099db10bd843fec35666116c6b4f93ed5f63d3b1a15c1fba115bc03a23c48be7f1dcbdee7fff9bf8f047d5fc62ba16173f17265a11ec2ff5a2fb49d2e792d86d332f29d474dbd0386dfed9ce07c075620e5bd6fe04daff2bddd3041c182c3cc183ebae397e12cf8f6613b5c1f159395140f73c9613eecd238d602a1e944cc316d47da09112b125b3b829d2989f8a0996094bba3a54b719cf076377f311bfc421f1c4b62297b36a4770cc8e60fc1715c80a975b1bb0f9d3fb7d41c23df694887d8a6e6bc57cd80e7b9dd1602979e00d5f46599d69cbc24deddb58992c165d72239b6b7fafa4c0ff48f54ad79578560f23616fd7eb256f346db2b72cb9cd84943b720b8df05f14c0cad1b95361aacab0f7b8a1bbbaf166bd812b162f2f81d54a7ce307f3bdf6275f364e3c19d9bb290ee5a894814e73068b9f08988d37b7740e8728abec9dc31adddd39affe6fee2f5cb8b562a5241145e89e2d327a36292b125bca2e0589c20092659794523e79b0132756be7ac7f1fc51c05db7d0ae165ba6c119c064a072f72d8ab650998faa361f131177493488edde8f617c059512b54ecfdc3c2a17cf98c9113a4d72059aa7081ea202ee6b18003b0f2bc80c6921cffa76dc19eda1ab42de083237f3329e69d81eac48eb60d1216e31892188abdb5123e6e572671e3a5891ad2521f3bed014cfb3e652b8361073788779cebdad62e071f3c9df27bff8b58928919ff6ed64cc9d6fce3229a94330a4e689d67d18928d002fdfd86face5378a81509c316e5497ff03779a79bfb82c4633ff0412096f156437a0e93f2652cf04be86c578b1a2325340a90099de3cf8be9fab2591a6a0216125306fa0c90d3102474667c698111d502c37aba72a719bfe46f076d2764b6c8ef371c2e4d2ae92235a76b315867e26f25ad390a3869b74e9ad429218a53532b3db9ae302c03be3dc3af16511547c6b048f305c5a73344a316eb73868df64072fc9da5e588f908535654f3f291d528f10d8667bb26d70277490954a8165c203158c5029aab7b269ad88a1dfad8e1f665216db6d861194efc0ce939ff1586c3eea230828b11ab0c9d968a370103c2c3bdaf98f1a831b99fa6051c1a57630e226a52970f3e23d873c8244a548b51854f520d9753f968fe8539d2d6f776177e8bf26dafe3fce5b6422281314a46b527c890e68c9541f335d13ae954380fb3efe8f0b0702a48667a528e9ae8faf710bd00d1326ad0b4f7b9e337104ade3742fe0d6dc98ad23b6aee53eeda4cda84e88c9f202fafc96eccf30ec7124ff8d396bea737df865f4c998c87bc3a01c0991afb94b2bc72e4189a8588ee760b69daf12a43f741049637738bec8f72b5177be274df43865ffa13d55b171c23f28eccbcb6f60abac41bcffad0ae435c8353d3a044d13a80242b70b999c7a96d9493fc7578b6431c016ed91143f047f62b6ef383b72d1a0987ce612ddb5bfb32351af2c6028d04277c0d1e1be57156c1ef07e6b52d4dff600dcf9beda714882d9ae055a24d2d9e7f930a473ba3e329258a954a626d8d75fd6f9eed62daaae4d569a25cb3f3f055946b71d0e95c4b35c0eb5cb363190c98f65c46baef1c48fe08976f72f5981f37f925ac8a49986b1e881c18cb489c34080f870268ea54297bfbe2f9de5c55cb4a0676b5486409f4f5ce347ce99d7f1e8b385264194886bc2e5cd82b9eb18825fce626ff4149ad3388904accb43770f44cad6b29448789aaf37e2e110fb6c38f1eea41d5515c346d1ebd172e703fae434d32213b27d3a2027bb5248e9cc88d7b8ba3d1e3474399d729966e9a48ce30325d51e6616be32be5aa37b1365421a361089f61df0de68628e77e21609146d37de52f055fdfd7b8ab8208a3744a8f1b00b9f65be10d17d2d5f25e3673414538b4c37e4760c3e290a5411251161579c7920af45dad3d93ae9ce5767029a3007707adce75a0743cb8564ff8591815a8370da1d99f54cd897bca0cf08df6a3eaae7168d0a4ece0dc7c42d56df0044976b7a283bca2bcd68475f0c87a8c4abeee98fdeb0bcc6f9a106454df897e0ae810ec39b133821c76e44fd114feffeaee22b8995fdb1ab6dfcac050c5a660184cb1dc496bc73c7563cdcd51102eedeabb103f0223241687afa4087944f2fe63329838cf57600d514ca6e5aac1457ce710f3c7d4f05f56cf58916b95e90480d87efb57d77f56367856c608a32699a3a1184544c169c46b64d40940d4e941b318e92ef7ee259eaabbb69aecef1e26b7f9ad537db9f9758a6abd121ef158d1ad4b37c9c2f4c0a70191b78c436f142bc06db8af4b8e63a391f48cb8e846901d206296044b6d2d40d4bf2146aaad906691c7429b30b028cbec77bed04f36055ca74d7edd215a02193c3ccc09da0bc3e70e81003d2b4b8a41e1e92aac3627fb86b38ed2ef406e5faedc966d4884044ef1c4dfabb6d94eb537189eceb4d95c484d17248ce3b45cf23f23971c9136d4ab9737654370ba358eae2bb681e647713eae0fcab789ca24a836a8721e8f6a11c5a2ef40f87a295d448ecab7a3bad418d34936cb3d29ea9aa494a54ab2c97b0be6efffd0013e0ae09bdd4f37ae409f18204775f3f81e7ce58eaf3fb6108674f81f60731de896654bb2d54558069060dde6adfa93225de41194eeda51ab49358f9501f7ca7127fde2d1092142a68089b90914388c2d2832ff956abb8407f58c71544d18becfe72df78cfdd03fc704fa9d7992297902f3aeac2cd68585c69287a9b6a737232ebae8ee9e92b2e63cc920259378266913a3e4ccbec01962e0be16e2198156e98535a74259972b1819eaee3392afaa377e9fd2aa69013d4901bf7e3f1d45f29d35f2adcc340f1163d5b21a1db5c014050c5b604a73bb064b148cd1e03d8bbc0aec9431e8235ec330faf34972081e5af1d98a7a4ff9c8f583229000d0fdd0412012f2b8adfad9632b02fecef949a35a5993bdb3bb32a9058202f8cf213d67149e06a98cc194762340028c394447e6d9b702b6cd54b4ebf906e6d0cfa10a76ef7ec440fdc0f8178141d47374a642c5cf0004616e6a3c9665af5d9b825ae4eeb368be13eadffb3b37780a5a70510e86ef7bc9e07062faefea1c3e89c8ae0c41c6937eabe45344750e3faac9640d1e22cfee51c2a3faad1dc3e3f503b6d12cc06eaf67a92ddd791d3b801532f11e63979ed858ad88f004f10005aaa5123c1b6b57d4407b41791240badc08acb6efb284ed40a76c399818d62c8144bf6b33edab059b9cd86cb9fb11b31d71a6c2e86a949688b6b48512d82fdde1e3c48fc1759ff61192d68ece201dd6c3dfe77e298b770d7cb6299cbf5c1feaaab6e878767f56d397308dfdcd580ae0de26b342374967f618c24a55703d6c9a5c69fe0b1f1e4aeeeb3ef8f9b87f7fd172ce5ed1e69a990e7d840ac7fdddf28d639473a228ff0204e3c19d9bb290ee5a894814e73068b9f08988d37b7740e8728abec9dc31adddd39affe6fee2f5cb8b562a5241145e89e2d327a36292b125bca2e0589c20092655638e00fe76fbfefc80d28f6e4f8de9b935aafa39b03b946b250c7495cff564bc9fa5a3f081cc9135f7e16723069979f0f007a009b019c94e3b082557c5df090a47924afdc9c3aa2eed3a05630ebde9cbc8240554fb418c065b405826fcd51c5ece32bd57b828a018732bd68994eec29229f07f571a1deed9529d5c1089ffcee3a1184544c169c46b64d40940d4e941b318e92ef7ee259eaabbb69aecef1e26be81003d2b4b8a41e1e92aac3627fb86b38ed2ef406e5faedc966d4884044ef1c4dfabb6d94eb537189eceb4d95c484d17248ce3b45cf23f23971c9136d4ab97379ce334e42cb74e32a01dec7eec9a8c61d01f0872f0174bafce0b43751495c50523b02808cbc9a8933b6d52cecd5f342778506729dde003bf60e02e74d43f4fe66776fe4b1073b57a83db1c75242c55c63112606297279cdc41e141418b955c06bfcc39f6ae743fb3f45ea71ae80b6eb5032d4bd8c024baae0874ac40b1d320a53e39552d8add1a75fa675be94e061fefaaedde6dc9bd20b55031cd30c9afbefbcfd315da12d98e488d25ba9a719170c0fb350a3a2aaf7a5dc19d94ba323b3f5cd9f47f68651d3376da206cb67a6c5429c1b9a4cd9485d3bf09d01eb982da59ae1d382e7eeaefae7fff40e95bc937d8e4048484f7d597ef4b490f78f6b8f2f8bc0aec9431e8235ec330faf34972081e5af1d98a7a4ff9c8f583229000d0fdd0412012f2b8adfad9632b02fecef949a35a5993bdb3bb32a9058202f8cf213d67149e06a98cc194762340028c394447e6d9b702b6cd54b4ebf906e6d0cfa10a76ee8ae2fa69d5a00c277ffc33fe69139ea437af0e178a479c6a82272bbdd8008bf4dac9e4f8f8b2c76248b958c4803367a8fa8a55dd542f95ddc6397855a0852b9e46d0c63634e07ef774f8beec06e776df476c1117b13b2aea5936135c8c190db5d2a2fc27ae5bbe512acb13abee2cafec59c46407e9bdd5f217fa3766a9654aa6584b1a42cc98e7a963195d9f846716a7866a53fa1e073c5578d018a95ce8e5e2f67ed54e4680bcda93550193a394b3242428e0eb5b3049b168f20adc843283a4e3c19d9bb290ee5a894814e73068b9f08988d37b7740e8728abec9dc31adddd39affe6fee2f5cb8b562a5241145e89e2d327a36292b125bca2e0589c2009265rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootghc-7.8.4-45.fc22.src.rpmghc-base-develghc-base-devel(armv7hl-32)ghc-devel(base-4.7.0.2-5fe6e85f7f9fef354e05acec46a7dd51)ghc-devel(ghc-prim-0.3.1.0-f0b77db25e6a07f3e2798ad2aa2db4f0)ghc-devel(integer-gmp-0.5.1.0-3c6ee2f20a97b2ba60906fa87b8f151c)@@@@@    /bin/sh/bin/shghc(base-4.7.0.2-5fe6e85f7f9fef354e05acec46a7dd51)ghc(ghc-prim-0.3.1.0-f0b77db25e6a07f3e2798ad2aa2db4f0)ghc(integer-gmp-0.5.1.0-3c6ee2f20a97b2ba60906fa87b8f151c)ghc-base(armv7hl-32)ghc-compilerghc-compilerghc-compilerghc-devel(ghc-prim-0.3.1.0-f0b77db25e6a07f3e2798ad2aa2db4f0)ghc-devel(integer-gmp-0.5.1.0-3c6ee2f20a97b2ba60906fa87b8f151c)gmp-devel(armv7hl-32)libffi-devel(armv7hl-32)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)4.7.0.2-45.fc227.8.47.8.47.8.4-45.fc223.0.4-14.6.0-14.0-15.2-14.12.0.1Uyx@U7@U:U@U hT8Tء@T@TNTk4Ti@SGSS@SrSrR@RpRo@Q@QQޞ@QLQɆ@QQQ@PP@P|@P|@PO#O!OOiO;@OONN_NN0N@N@N@N @N @Nj@NN/N@N]N @Np@Np@MAM@MM@Mש@MMz@M@M?MM@M@M@M@MMx@MwkMdMWMS@MS@MQ0@MF@M:M.@M.@Mt@L@Lr@L@LҠ@LҠ@L{LRL>@L#HL!@LK@KыK @KKKKKKK0K(K#K"4@KJJJJJJJJęJi@JeJ!JJ @III@IܑIII2I@I`Iy@Itk@I3I+IsII9@I9@Ig@Ig@Ig@HHHH8@HHHf@H+H@HXHXHXG^@G-@GGG_@GFG2@G-@F>@F>@FC @FC @FAE@EK/@E@EDSU@DGwD@CK@C/BQBE@BE@BB{\@Bv@B9q@B8B6@B2AAIAwAo@^@???ݢ@?@;@;@:9Q98L77@7z6֌6,5@Jens Petersen - 7.8.4-45Jens Petersen - 7.8.4-44Jens Petersen - 7.8.4-43Jens Petersen - 7.8.4-42.2Jens Petersen - 7.8.4-42.1Jens Petersen - 7.8.4-42Jens Petersen - 7.8.4-41Jens Petersen - 7.8.4-40Jens Petersen - 7.8.4-39Jens Petersen - 7.6.3-28Jens Petersen - 7.6.3-27Fedora Release Engineering - 7.6.3-26Jens Petersen - 7.6.3-25Jens Petersen - 7.6.3-24Jens Petersen - 7.6.3-23Jens Petersen - 7.6.3-22Jens Petersen - 7.6.3-21Jens Petersen - 7.6.3-20Jens Petersen - 7.6.3-19Jóhann B. Guðmundsson - 7.6.3-18Jens Petersen - 7.6.3-17Jens Petersen - 7.6.3-16Jens Petersen - 7.6.3-15Jens Petersen - 7.6.3-14Jens Petersen - 7.6.3-13Jens Petersen - 7.6.3-12Jens Petersen - 7.4.2-11Jens Petersen - 7.4.2-10Jens Petersen - 7.4.2-9Jens Petersen - 7.4.2-8Jens Petersen - 7.4.2-7Fedora Release Engineering - 7.4.1-6Jens Petersen - 7.4.1-5Jens Petersen - 7.4.1-4Jens Petersen - 7.4.1-3Jens Petersen - 7.4.1-2Jens Petersen - 7.4.1-1Jens Petersen - 7.0.4-42Fedora Release Engineering - 7.0.4-41Jens Petersen - 7.0.4-40Jens Petersen - 7.0.4-39Jens Petersen - 7.0.4-38Jens Petersen - 7.0.4-37Jens Petersen - 7.0.4-36Jens Petersen - 7.0.4-35.1Jens Petersen - 7.0.4-35Marcela Mašláňová - 7.0.4-34.1Jens Petersen - 7.0.4-34Jens Petersen - 7.0.4-33Jens Petersen - 7.0.4-32Peter Schiffer - 7.0.4-31.1Jens Petersen - 7.0.4-31Jens Petersen - 7.0.4-30Jens Petersen - 7.0.4-29Jens Petersen - 7.0.4-28Jens Petersen - 7.0.4-27Jens Petersen - 7.0.4-26Jens Petersen - 7.0.4-25Jens Petersen - 7.0.2-24Jens Petersen - 7.0.2-23Jens Petersen - 7.0.2-22Jens Petersen - 7.0.2-21Jens Petersen - 7.0.2-20Jiri Skala - 7.0.2-19.1Jens Petersen - 7.0.2-19Jiri Skala - 7.0.2-18Jens Petersen - 7.0.2-17Jens Petersen - 7.0.2-16Jens Petersen - 7.0.2-15Jens Petersen - 7.0.2-14Jens Petersen - 7.0.2-13Jens Petersen - 7.0.2-12Fabio M. Di Nitto 7.0.1-11Jens Petersen Jens Petersen - 7.0.1-10Jens Petersen - 7.0.1-9Fedora Release Engineering - 7.0.1-8Jens Petersen - 7.0.1-7Jens Petersen - 7.0.1-6Jens Petersen - 7.0.1-5Jens Petersen - 7.0.1-4Jens Petersen - 7.0.1-3Jens Petersen - 7.0.1-2Jens Petersen - 7.0.1-1Jens Petersen - 6.12.3-9Jens Petersen - 6.12.3-8Jens Petersen - 6.12.3-7Jens Petersen - 6.12.3-6Jens Petersen - 6.12.3-5Jens Petersen - 6.12.3-4Jens Petersen - 6.12.3-3Jens Petersen - 6.12.3-2Jens Petersen - 6.12.3-1Jens Petersen - 6.12.2.20100521-1Jens Petersen - 6.12.2-1Jens Petersen - 6.12.1-6Jens Petersen - 6.12.1-5Jens Petersen - 6.12.1-4Jens Petersen - 6.12.1-3Jens Petersen - 6.12.1-2Jens Petersen - 6.12.1-1Jens Petersen - 6.12.1-0.2Jens Petersen - 6.12.1-0.1Jens Petersen - 6.12.0.20091121-1Bryan O'Sullivan - 6.12.0.20091010-8Bryan O'Sullivan - 6.12.0.20091010-7Bryan O'Sullivan - 6.12.0.20091010-6Bryan O'Sullivan - 6.12.0.20091010-5Bryan O'Sullivan - 6.12.0.20091010-3Bryan O'Sullivan - 6.12.0.20091010-2Bryan O'Sullivan - 6.12.0.20091010-1Jens Petersen Fedora Release Engineering - 6.10.4-2Bryan O'Sullivan - 6.10.4-1Jens Petersen - 6.10.3-3Jens Petersen - 6.10.3-2Jens Petersen - 6.10.3-1Jens Petersen - 6.10.2-4Jens Petersen - 6.10.2-3Jens Petersen - 6.10.2-2Bryan O'Sullivan - 6.10.2-1Jens Petersen - 6.10.1-13Jens Petersen - 6.10.1-12Jens Petersen - 6.10.1-11Fedora Release Engineering - 6.10.1-10Jens Petersen - 6.10.1-9Jens Petersen - 6.10.1-8Jens Petersen - 6.10.1-7Jens Petersen - 6.10.1-6Jens Petersen - 6.10.1-5Jens Petersen - 6.10.1-4Bryan O'Sullivan - 6.10.1-3Bryan O'Sullivan - 6.10.1-2Bryan O'Sullivan - 6.10.1-1Jens Petersen - 6.10.0.20081007-9Jens Petersen - 6.10.0.20081007-8Jens Petersen - 6.10.0.20081007-7Bryan O'Sullivan - 6.10.0.20081007-6Bryan O'Sullivan - 6.10.0.20081007-5Bryan O'Sullivan - 6.10.0.20081007-4Jens Petersen - 6.10.0.20081007-3Bryan O'Sullivan - 6.10.0.20081007-2.fc10Bryan O'Sullivan - 6.10.0.20081007-1.fc10Bryan O'Sullivan - 6.10.0.20080921-1.fc10Jens Petersen - 6.8.3-5Jens Petersen - 6.8.3-4Bryan O'Sullivan - 6.8.3-3Bryan O'Sullivan - 6.8.3-2Bryan O'Sullivan - 6.8.3-1Jens Petersen - 6.8.2-10Jens Petersen - 6.8.2-9Bryan O'Sullivan - 6.8.2-7Bryan O'Sullivan - 6.8.2-6Bryan O'Sullivan - 6.8.2-1Bryan O'Sullivan - 6.8.1-2Bryan O'Sullivan - 6.8.1-2Michel Salim - 6.8.1-1Bryan O'Sullivan - 6.8.0.20070928-2Bryan O'Sullivan - 6.8.0.20070928-1Bryan O'Sullivan - 6.6.1-3Bryan O'Sullivan - 6.6.1-2Bryan O'Sullivan - 6.6.1-1Jens Petersen - 6.6-2Jens Petersen - 6.6-1Jens Petersen - 6.4.2-4Jens Petersen - 6.4.2-3.fc6Jens Petersen - 6.4.2-2.fc6Jens Petersen - 6.4.2-1.fc6Jens Petersen - 6.4.1-3.fc5Jens Petersen - 6.4.1-2.fc5Jens Petersen - 6.4.1-1.fc5Jens Petersen Jens Petersen - 6.4-8Jens Petersen Jens Petersen - 6.4-7Jens Petersen - 6.4-6Jens Petersen - 6.4-5Jens Petersen - 6.4-4Jens Petersen - 6.4-3Jens Petersen - 6.4-2Jens Petersen - 6.4-1Jens Petersen - 6.2.2-2Jens Petersen - 6.2.2-1Jens Petersen - 6.2.2-0.fdr.1Gerard Milmeister - 6.2.2-0.fdr.1Gerard Milmeister - 6.2.1-0.fdr.1Gerard Milmeister - 6.2-0.fdr.1Gerard Milmeister - 6.0.1-0.fdr.3Gerard Milmeister - 6.0.1-0.fdr.2Gerard Milmeister - 6.0.1-0.fdr.1Manuel ChakravartyManuel ChakravartyManuel ChakravartySven PanneManuel ChakravartyManuel ChakravartyManuel ChakravartyManuel ChakravartyManuel ChakravartyManuel ChakravartyZoltan VorosbaranyiManuel Chakravarty- use ld.gold on aarch64 like for armv7 (Erik de Castro Lopo, #1195231)- turn on SMP and ghci for aarch64 (Erik de Castro Lopo, #1203951) - use "make -j2" for s390 (#1212374)- aarch64 production build- aarch64 bootstrap build - must use "make -j16" for Intel arches to preserve ABI hashes (-j12 changed array's hash on i686)- fix build.mk BuildFlavour setup - improve the smp make setup with build_minimum_smp - bootstrap for aarch64 without ghci (#1195231) - disable ld hardening for F23 on 64bit and armv7hl- try "make -j16" on Intel arches to keep ABI hashes same as -40- update the arm64 patch for 7.8.4 - all archs have bindir/ghci- production build - version doc htmldirs again- update to 7.8.4 - bump release over haskell-platform xhtml - https://www.haskell.org/ghc/docs/7.8.4/html/users_guide/release-7-8-1.html - https://www.haskell.org/ghc/docs/7.8.4/html/users_guide/release-7-8-2.html - https://www.haskell.org/ghc/docs/7.8.4/html/users_guide/release-7-8-3.html - https://www.haskell.org/ghc/docs/7.8.4/html/users_guide/release-7-8-4.html - bootstrap build - provides haskeline, terminfo and xhtml libraries - shared libraries on all archs - bindir/ghci only on ghc_arches_with_ghci - use ld.gold on ARMv7 (see https://ghc.haskell.org/trac/ghc/ticket/8976) [thanks to Joachim Breitner for workaround patches posted upstream]- remove the build hack to switch from llvm to llvm34 (#1161049) - use rpm internal dependency generator with ghc.attr on F21+ - fix bash-ism in ghc-doc-index (#1146733) - do "quick" build when bootstrapping - setup LDFLAGS- use llvm34 instead of llvm-3.5 for arm (#1161049)- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild- configure ARM with VFPv3D16 and without NEON (#995419) - only apply the Cabal unversion docdir patch to F21 and later - hide llvm version warning on ARM now up to 3.4- add aarch64 with Debian patch by Karel Gardas and Colin Watson - patch Stg.h to define _DEFAULT_SOURCE instead of _BSD_SOURCE to quieten glibc 2.20 warnings (see #1067110)- bump release- add ppc64le support patch from Debian by Colin Watson (thanks to Jaromir Capik for Fedora ppc64le bootstrap)- fix segfault on i686 when using ffi double-mapping for selinux (#907515) see http://hackage.haskell.org/trac/ghc/ticket/7629 (thanks Garrett Mitchener for patch committed upstream)- enable debuginfo for C code bits (#989593) - back to production build- fix rts hang on 64bit bigendian archs (patch by Gustavo Luiz Duarte, #989593) - generate and ship library doc index for ghc bundled libraries - build with utf8 encoding (needed for verbose ghc output and makes better sense anyway) - change ghc-cabal to make library html docdirs unversioned - bootstrap build- ghc-doc-index requires crontabs and mark cron file config noreplace (http://fedoraproject.org/wiki/Packaging:CronFiles)- silence warnings about unsupported llvm version (> 3.1) on ARM- revert the executable stack patch since it didn't fully fix the problem and yet changed the ghc library hash- turn off executable stack flag in executables (#973512) (thanks Edward Zhang for upstream patch and Dhiru Kholia for report)- fix compilation with llvm-3.3 (#977652) see http://hackage.haskell.org/trac/ghc/ticket/7996- production perf -O2 build - see release notes: http://www.haskell.org/ghc/docs/7.6.3/html/users_guide/release-7-6-1.html http://www.haskell.org/ghc/docs/7.6.3/html/users_guide/release-7-6-2.html http://www.haskell.org/ghc/docs/7.6.3/html/users_guide/release-7-6-3.html- bootstrap 7.6.3 - all library versions bumped except pretty - ghc-7.4-add-support-for-ARM-hard-float-ABI-fixes-5914.patch, and ghc-7.4-silence-gen_contents_index.patch are no longer needed - build with ghc-rpm-macros-extra - no longer filter type-level package from haddock index - process obsoletes process-leksah - do production build with BuildFlavour perf (#880135)- ghclibdir should be owned at runtime by ghc-base instead of ghc-compiler (thanks Michael Scherer, #907671)- rebuild for F19 libffi soname bump- fix permissions of ghc-doc-index and only run when root - ghc-doc-index cronjob no longer looks at /etc/sysconfig/ghc-doc-index- production 7.4.2 build http://www.haskell.org/ghc/docs/7.4.2/html/users_guide/release-7-4-2.html- 7.4.2 bootstrap - update base and unix library versions - ARM StgCRun patches not longer needed - use Karel Gardas' ARM hardfloat patch committed upstream - use _smp_mflags again - disable Cabal building ghci lib files - silence the doc re-indexing script and move the doc indexing cronjob to a new ghc-doc-index subpackage (#870694) - do not disable hscolour in build.mk - drop the explicit hscolour BR - without_hscolour should now be set by ghc-rpm-macros for bootstrapping- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild- use ghc_lib_subpackage instead of ghc_binlib_package (ghc-rpm-macros 0.91)- add ghc-wrapper-libffi-include.patch to workaround "missing libffi.h" for prof compiling on secondary archs- build with llvm-3.0 on ARM - remove ARM from unregisterised_archs - add 4 Debian ARM patches for armel and armhf (Iain Lane)- full build- update to new 7.4.1 major release http://www.haskell.org/ghc/docs/7.4.1/html/users_guide/release-7-4-1.html - all library versions bumped - binary package replaces ghc-binary - random library dropped - new hoopl library - deepseq is now included in ghc - Cabal --enable-executable-dynamic patch is upstream - add Cabal-fix-dynamic-exec-for-TH.patch - sparc linking fix is upstream - use Debian's system-libffi patch by Joachim Breitner - setup ghc-deps.sh after ghc_version_override for bootstrapping - drop ppc64 config, pthread and mmap patches - do not set GhcUnregisterised explicitly - add s390 and s390x to unregisterised_archs - Cabal manual needs pandoc- move ghc-ghc-devel from ghc-libraries to the ghc metapackage- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild- do alternatives handling correctly (reported by Giam Teck Choon, #753661) see https://fedoraproject.org/wiki/Packaging:Alternatives- move ghc-doc and ghc-libs obsoletes - add HaskellReport license also to the base and libraries subpackages- the post and postun scripts are now for the compiler subpackage- rename ghc-devel metapackage to ghc-libraries - require ghc-rpm-macros-0.14- move compiler and tools to ghc-compiler - the ghc base package is now a metapackage that installs all of ghc, ie ghc-compiler and ghc-devel (#750317) - drop ghc-doc provides- rebuild against new gmp- add HaskellReport license tag to some of the library subpackages which contain some code from the Haskell Reports- rebuild with new gmp without compat lib- setup ghc-deps.sh after ghc_version_override for bootstrapping- add armv5tel (ported by Henrik Nordström) - also use ghc-deps.sh when bootstrapping (ghc-rpm-macros-0.13.13)- remove libffi_archs: not allowed to bundle libffi on any arch - include the ghc (ghci) library in ghc-devel (Narasim)- rebuild with new gmp- build with ghc-rpm-macros >= 0.13.11 to fix provides and obsoletes versions in library devel subpackages- no need to specify -lffi in build.mk (Henrik Nordström)- port to armv7hl by Henrik Nordström (#741725)- setup ghc-deps.sh when not bootstrapping!- setup dependency generation with ghc-deps.sh since it was moved to ghc_lib_install in ghc-rpm-macros- BR same ghc version unless ghc_bootstrapping defined - add libffi_archs - drop the quick build profile - put dyn before p in GhcLibWays - explain new bootstrapping mode using ghc_bootstrap (ghc-rpm-macros-0.13.5)- update to 7.0.4 bugfix release http://haskell.org/ghc/docs/7.0.4/html/users_guide/release-7-0-4.html - strip static again (upstream #5004 fixed) - Cabal updated to 1.10.2.0 - re-enable testsuite - update summary and description- finally change from ExclusiveArch to ExcludeArch to target more archs- obsolete dph libraries and feldspar-language- merge prof subpackages into the devel subpackages with ghc-rpm-macros-0.13- configure with /usr/bin/gcc to help bootstrapping to new archs (otherwise ccache tends to get hardcoded as gcc, which not in koji) - posttrans scriplet for ghc_pkg_recache is redundant- make devel and prof meta packages require libs with release - make ghc-*-devel subpackages require ghc with release- fixes path to gcc on ppc64 arch- add upstream ghc-powerpc-linker-mmap.patch for ppc64 (Jiri Skala)- bootstrap to ppc64- rebuild against ghc-rpm-macros-0.11.14 to provide ghc-*-doc- provides ghc-doc again: it is still a buildrequires for libraries - ghc-prof now requires ghc-devel - ghc-devel now requires ghc explicitly- do not strip static libs since it breaks ghci-7.0.2 loading libHSghc.a (see http://hackage.haskell.org/trac/ghc/ticket/5004) - no longer provide ghc-doc - no longer obsolete old haddock- fix back missing LICENSE files in library subpackages - drop ghc_reindex_haddock from install script- rebuild against 7.0.2- update to 7.0.2 release - move bin-package-db into ghc-ghc - disable broken testsuite- enable build on sparcv9 - add ghc-fix-linking-on-sparc.patch to fix ld being called at the same time with --relax and -r. The two options conflict on sparc. - bump BuildRequires on ghc-rpm-macros to >= 0.11.10 that guarantees a correct build on secondary architectures.- without_shared renamed to ghc_without_shared- rebuild- fix without_shared build (thanks Adrian Reber) - disable system libffi for secondary archs - temporarily disable ghc-*-devel BRs for ppc- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild- include LICENSE files in the shared lib subpackages- patch Cabal to add configure option --enable-executable-dynamic - exclude huge ghc API library from devel and prof metapackages- fix no doc and no manual builds- add BRs for various subpackaged ghc libraries needed to build ghc - condition rts .so libraries for non-shared builds- subpackage all the libraries with ghc-rpm-macros-0.11.1 - put rts, integer-gmp and ghc-prim in base, and ghc-binary in bin-package-db - drop the libs mega-subpackage - prof now a meta-package for backward compatibility - add devel meta-subpackage to easily install all ghc libraries - store doc cronjob package cache file under /var (#664850) - drop old extralibs bcond - no longer need to define or clean buildroot - ghc base package now requires ghc-base-devel - drop ghc-time obsoletes- require libffi-devel- update to 7.0.1 release - turn on system libffi now- disable the libffi changes for now since they break libHSffi*.so- add a cronjob for doc indexing - disable gen_contents_index when not run with --batch for cron - use system libffi with ghc-use-system-libffi.patch from debian - add bcond for system libffi- skip huge type-level docs from haddock re-indexing (#649228)- move gtk2hs obsoletes to ghc-glib and ghc-gtk - drop happy buildrequires - smp build with max 4 cpus- obsolete old gtk2hs packages for smooth upgrades- merge ghc-doc into base package - obsolete ghc-time and ghc-ghc-doc (ghc-rpm-macros-0.8.0) - note that ghc-6.12.3 is part of haskell-platform-2010.2.0.0- drop the broken summary and description args to the ghc-ghc package and use ghc-rpm-macros-0.6.1- strip all dynlinked files not just shared objects (ghc-rpm-macros-0.5.9)- 6.12.3 release: http://darcs.haskell.org/download/docs/6.12.3/html/users_guide/release-6-12-3.html - build with hscolour - use ghc-rpm-macro-0.5.8 for ghc_strip_shared macro- 6.12.3 rc1 - ghost package.cache - drop ghc-utf8-string obsoletes since it is no longer provided - run testsuite fast - fix description and summary of ghc internal library (John Obbele)- update to 6.12.2 - add testsuite with bcond, run it in check section, and BR python- ghc-6.12.1 is part of haskell-platform-2010.1.0.0 - drop old ghc682, ghc681, haddock09 obsoletes - drop haddock_version and no longer provide haddock explicitly - update ghc-rpm-macros BR to 0.5.6 for ghc_pkg_recache- drop ghc-6.12.1-no-filter-libs.patch and extras packages again - filter ghc-ghc-prof files from ghc-prof - ghc-mtl package was added to fedora- ghc-rpm-macros-0.5.4 fixes wrong version requires between lib subpackages- ghc-rpm-macros-0.5.2 fixes broken pkg_name requires for lib subpackages- include haskeline, mtl, and terminfo for now with ghc-6.12.1-no-filter-libs.patch - use ghc_binlibpackage, grep -v and ghc_gen_filelists to generate the library subpackages (ghc-rpm-macros-0.5.1) - always set GhcLibWays (Lorenzo Villani) - use ghcdocbasedir to revert html doc path to upstream's html/ for consistency- pre became 6.12.1 final - exclude ghc .conf file from package.conf.d in base package - use ghc_reindex_haddock - add scripts for ghc-ghc-devel and ghc-ghc-doc - add doc bcond - add ghc-6.12.1-gen_contents_index-haddock-path.patch to adjust haddock path since we removed html/ from libraries path - require ghc-rpm-macros-0.3.1 and use ghc_version_override- remove redundant mingw and perl from ghc-tarballs/ - fix exclusion of ghc internals lib from base packages with -mindepth - rename the final file lists to PKGNAME.files for clarity- update to ghc-6.12.1-pre - separate bcond options into enabled and disabled for clarity - only enable shared for intel x86 archs (Lorenzo Villani) - add quick build profile (Lorenzo Villani) - remove package_debugging hack (use "make install-short") - drop sed BR (Lorenzo Villani) - put all build.mk config into one cat block (Lorenzo Villani) - export CFLAGS to configure (Lorenzo Villani) - add dynamic linking test to check section (thanks Lorenzo Villani) - remove old ghc66 obsoletes - subpackage huge ghc internals library (thanks Lorenzo Villani) - BR ghc-rpm-macros >= 0.3.0 - move html docs to docdir/ghc from html subdir (Lorenzo Villani) - disable smp build for now: broken for 8 cpus at least- update to 6.12.1 rc2 - build shared libs, yay! and package in standalone libs subpackage - add bcond for manual and extralibs - reenable ppc secondary arch - don't provide ghc-haddock-* - remove obsolete post requires policycoreutils - add vanilla v to GhcLibWays when building without prof - handle without hscolour - can't smp make currently - lots of filelist fixes for handling shared libs - run ghc-pkg recache posttrans - no need to install gen_contents_index by hand - manpage is back- comprehensive attempts at packaging fixes- fix package.conf stuff- give up trying to install man pages- try to install man pages- fix %check- disable ppc for now (seems unsupported) - buildreq ncurses-devel- Update to 6.12 RC 1- selinux file context no longer needed in post script - (for ghc-6.12-shared) drop ld.so.conf.d files- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild- update to 6.10.4- add haddock_version and use it to obsolete haddock and ghc-haddock-*- update haddock provides and obsoletes - drop ghc-mk-pkg-install-inplace.patch: no longer needed with new 6.11 buildsys - add bcond for extralibs - rename doc bcond to manual- update to 6.10.3 - haskline replaces editline, so it is no longer needed to build - macros.ghc moved to ghc-rpm-macros package - fix handling of hscolor files in filelist generation- add experimental bcond hscolour - add experimental support for building shared libraries (for ghc-6.11) - add libs subpackage for shared libraries - create a ld.conf.d file for libghc*.so - BR libffi-devel - drop redundant setting of GhcLibWays in build.mk for no prof - drop redundant setting of HADDOCK_DOCS - simplify filelist names - add a check section based on tests from debian's package - be more careful about doc files in filelist- define ghc_version in macros.ghc in place of ghcrequires - drop ghc-requires script for now- add ghc-requires rpm script to generate ghc version dependencies (thanks to Till Maas) - update macros.ghc: - add %ghcrequires to call above script - pkg_libdir and pkg_docdir obsoleted in packages and replaced by ghcpkgdir and ghcdocdir inside macros.ghc - make filelist also for docs- Update to 6.10.2- ok let's stick with ExclusiveArch for brevity- drop ghc_archs since it breaks koji - fix missing -devel in ghc_gen_filelists - change from ExclusiveArch to ExcludeArch ppc64 since alpha was bootstrapped by oliver- use %ix86 for change from i386 to i586 in rawhide - add ghc_archs macro in macros.ghc for other packages - obsolete haddock09 - use %global instead of %define - use bcond for doc and prof - rename ghc_gen_filelists lib filelist to -devel.files- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild- require and buildrequire libedit-devel > 2.11-2 - protect ghc_register_pkg and ghc_unregister_pkg- fix to libedit means can drop ncurses-devel BR workaround (#481252)- buildrequire ncurses-devel to fix build of missing editline package needed for ghci line-editing (#478466) - move spec templates to cabal2spec package for easy updating - provide correct haddock version- update macros.ghc to latest proposed revised packaging guidelines: - use runghc - drop trivial cabal_build and cabal_haddock macros - ghc_register_pkg and ghc_unregister_pkg replace ghc_preinst_script, ghc_postinst_script, ghc_preun_script, and ghc_postun_script - library templates prof subpackage requires main library again - make cabal2spec work on .cabal files too, and read and check name and version directly from .cabal file - ghc-prof does not need to own libraries dirs owned by main package- add cabal2spec and template files for easy cabal hackage packaging - simplify script macros: make ghc_preinst_script and ghc_postun_script no-ops and ghc_preun_script only unregister for uninstall- fix broken urls to haddock docs created by gen_contents_index script - avoid haddock errors when upgrading by making doc post script posttrans- libraries/prologue.txt should not have been ghosted- Fix a minor packaging glitch- Update to 6.10.1- remove redundant --haddockdir from cabal_configure - actually ghc-pkg no longer seems to create package.conf.old backups - include LICENSE in doc- need to create ghost package.conf.old for ghc-6.10- use gen_contents_index to re-index haddock - add %pkg_docdir to cabal_configure - requires(post) ghc for haddock for doc - improve doc file lists - no longer need to create ghost package.conf.old - remove or rename alternatives files more consistently- Update macros to install html and haddock bits in the right places- Don't use a macro to update the docs for the main doc package- Add ghc_haddock_reindex macro - Generate haddock index after installing ghc-doc package- provide haddock = 2.2.2 - add selinux file context for unconfined_execmem following darcs package - post requires policycoreutils- Use libedit in preference to readline, for BSD license consistency - With haddock bundled now, obsolete standalone versions (but not haddock09) - Drop obsolete freeglut-devel, openal-devel, and haddock09 dependencies- Update to 6.10.1 release candidate 1- Drop unneeded haddock patch - Rename hsc2hs to hsc2hs-ghc so the alternatives symlink to it will work- bring back including haddock-generated lib docs, now under docdir/ghc - fix macros.ghc filepath (#460304) - spec file cleanups: - fix the source urls back - drop requires chkconfig - do not override __spec_install_post - setup docs building in build.mk - no longer need to remove network/include/Typeable.h - install binaries under libdir not libexec - remove hsc2hs and runhaskell binaries since they are alternatives- add macros.ghc for new Haskell Packaging Guidelines (#460304)- Add symlinks from _libdir, where ghc looks, to _libexecdir - Patch libraries/gen_contents_index to use haddock-0.9- Remove unnecessary dependency on alex- Upgrade to 6.8.3 - Drop the ghc682-style naming scheme, obsolete those packages - Manually strip binaries- another rebuild attempt- remove unrecognized --docdir and --htmldir from configure - drop old buildrequires on libX11-devel and libXt-devel - rebuild with gcc43- More attempts to fix docdir- Fix docdir- Update to 6.8.2- Exclude alpha- Drop bit-rotted attempts at making package relocatable- Update to 6.8.1- add happy to BuildRequires- prepare for GHC 6.8.1 by building a release candidate snapshot- install man page for ghc- exclude ppc64 for now, due to lack of time to bootstrap- update to 6.6.1 release- remove truncated duplicate Typeable.h header in network package (Bryan O'Sullivan, #222865)- update to 6.6 release - buildrequire haddock >= 0.8 - fix summary of ghcver package (Michel Salim, #209574)- turn on docs generation again- ghost package.conf.old (Gérard Milmeister) - set unconfined_execmem_exec_t context on executables with ghc rts (#195821) - turn off building docs until haddock is back- buildrequire libXt-devel so that the X11 package and deps get built (Garrett Mitchener, #190201)- update to 6.4.2 release- buildrequire libX11-devel instead of xorg-x11-devel (Kevin Fenzi, #181024) - make ghc-doc require ghc (Michel Salim, #180449)- turn on build_doc since haddock is now in Extras - no longer specify ghc version to build with (Ville Skyttä, #170176)- 6.4.1 release - the following patches are now upstream: ghc-6.4-powerpc.patch, rts-GCCompact.h-x86_64.patch, ghc-6.4-dsforeign-x86_64-1097471.patch, ghc-6.4-rts-adjustor-x86_64-1097471.patch - builds with gcc4 so drop %_with_gcc32 - x86_64 build restrictions (no ghci and split objects) no longer apply- add %dist to release- initial import into Fedora Extras- add build_prof and build_doc switches for -doc and -prof subpackages - add _with_gcc32 switch since ghc-6.4 doesn't build with gcc-4.0- make package relocatable (ghc#1084122) - add post install scripts to replace prefix in driver scripts - buildrequire libxslt and docbook-style-xsl instead of docbook-utils and flex- add ghc-6.4-dsforeign-x86_64-1097471.patch and ghc-6.4-rts-adjustor-x86_64-1097471.patch from trunk to hopefully fix ffi support on x86_64 (Simon Marlow, ghc#1097471) - use XMLDocWays instead of SGMLDocWays to build documentation fully- add rts-GCCompact.h-x86_64.patch to fix GC issue on x86_64 (Simon Marlow)- add ghc-6.4-powerpc.patch (Ryan Lortie) - disable building interpreter rather than install and delete on x86_64- make ghc require ghcver of same ver-rel - on x86_64 remove ghci for now since it doesn't work and all .o files- ghc requires ghcver (Amanda Clare)- 6.4 release - x86_64 build no longer unregisterised - use sed instead of perl to tidy filelists - buildrequire ghc64 instead of ghc-6.4 - no epoch for ghc64-prof's ghc64 requirement - install docs directly in docdir- add x86_64 port - build unregistered and without splitobjs - specify libdir to configure and install - rename ghc-prof to ghcXYZ-prof, which obsoletes ghc-prof- move ghc requires to ghcXYZ- ghc622 - provide ghc = %version - require gcc, gmp-devel and readline-devel- New Version 6.2.2- New Version 6.2.1- New Version 6.2- A few minor specfile tweaks- Different file list generation- First Fedora release - Added generated html docs, so that haddock is not needed- small changes for 5.04- split documentation off into a separate package - adapt to new docbook setup in RH7.1- revised for 5.00 - also runs autoconf automagically if no ./configure found- removed explicit usage of hslibs/docs, it belongs to ghc/docs/set- revised for ghc 4.07; added suggestions from Pixel - added profiling package- version for use from CVS- modified for GHC 4.04, patchlevel 1 (no more 62 tuple stuff); minimises use of patch files - instead emits a build.mk on-the-fly- modified for GHC 4.04- some more improvements from vbzoli- modified for GHC 4.02- added BuildRoot - files located in /usr/local/bin, /usr/local/lib moved to /usr/bin, /usr/lib- original version/bin/sh/bin/sh  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcd4.7.0.2-45.fc224.7.0.2-45.fc22        !!!"""###$$$$$$$%&&&&&&&&&&&&&&&&&&&&&&&&%%'((((((((((()))))))))))))))))))))))))))))**)++++++++++(,,,,,,,,,,-..../000000////111///-2--33334444444456666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666677777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777765888888888888888888888888888888888888888888888888888888888999999999985:::::::::::::::::::;;;;;;;:ControlApplicative.dyn_hiApplicative.hiApplicative.p_hiArrow.dyn_hiArrow.hiArrow.p_hiCategory.dyn_hiCategory.hiCategory.p_hiConcurrentConcurrent.dyn_hiConcurrent.hiConcurrent.p_hiChan.dyn_hiChan.hiChan.p_hiMVar.dyn_hiMVar.hiMVar.p_hiQSem.dyn_hiQSem.hiQSem.p_hiQSemN.dyn_hiQSemN.hiQSemN.p_hiExceptionException.dyn_hiException.hiException.p_hiBase.dyn_hiBase.hiBase.p_hiMonadMonad.dyn_hiMonad.hiMonad.p_hiFix.dyn_hiFix.hiFix.p_hiInstances.dyn_hiInstances.hiInstances.p_hiSTST.dyn_hiST.hiST.p_hiImp.dyn_hiImp.hiImp.p_hiLazyLazy.dyn_hiLazy.hiLazy.p_hiImp.dyn_hiImp.hiImp.p_hiSafe.dyn_hiSafe.hiSafe.p_hiUnsafe.dyn_hiUnsafe.hiUnsafe.p_hiSafe.dyn_hiSafe.hiSafe.p_hiStrict.dyn_hiStrict.hiStrict.p_hiUnsafe.dyn_hiUnsafe.hiUnsafe.p_hiZip.dyn_hiZip.hiZip.p_hiDataBits.dyn_hiBits.hiBits.p_hiBool.dyn_hiBool.hiBool.p_hiChar.dyn_hiChar.hiChar.p_hiCoerce.dyn_hiCoerce.hiCoerce.p_hiComplex.dyn_hiComplex.hiComplex.p_hiData.dyn_hiData.hiData.p_hiDynamic.dyn_hiDynamic.hiDynamic.p_hiEither.dyn_hiEither.hiEither.p_hiEq.dyn_hiEq.hiEq.p_hiFixed.dyn_hiFixed.hiFixed.p_hiFoldable.dyn_hiFoldable.hiFoldable.p_hiFunction.dyn_hiFunction.hiFunction.p_hiFunctor.dyn_hiFunctor.hiFunctor.p_hiIORef.dyn_hiIORef.hiIORef.p_hiInt.dyn_hiInt.hiInt.p_hiIx.dyn_hiIx.hiIx.p_hiList.dyn_hiList.hiList.p_hiMaybe.dyn_hiMaybe.hiMaybe.p_hiMonoid.dyn_hiMonoid.hiMonoid.p_hiOldTypeableOldTypeable.dyn_hiOldTypeable.hiOldTypeable.p_hiInternal.dyn_hiInternal.hiInternal.p_hiOrd.dyn_hiOrd.hiOrd.p_hiProxy.dyn_hiProxy.hiProxy.p_hiRatio.dyn_hiRatio.hiRatio.p_hiSTRefSTRef.dyn_hiSTRef.hiSTRef.p_hiLazy.dyn_hiLazy.hiLazy.p_hiStrict.dyn_hiStrict.hiStrict.p_hiString.dyn_hiString.hiString.p_hiTraversable.dyn_hiTraversable.hiTraversable.p_hiTuple.dyn_hiTuple.hiTuple.p_hiTypeBool.dyn_hiBool.hiBool.p_hiCoercion.dyn_hiCoercion.hiCoercion.p_hiEquality.dyn_hiEquality.hiEquality.p_hiTypeableTypeable.dyn_hiTypeable.hiTypeable.p_hiInternal.dyn_hiInternal.hiInternal.p_hiUnique.dyn_hiUnique.hiUnique.p_hiVersion.dyn_hiVersion.hiVersion.p_hiWord.dyn_hiWord.hiWord.p_hiDebugTrace.dyn_hiTrace.hiTrace.p_hiForeignForeign.dyn_hiForeign.hiForeign.p_hiCC.dyn_hiC.hiC.p_hiError.dyn_hiError.hiError.p_hiString.dyn_hiString.hiString.p_hiTypes.dyn_hiTypes.hiTypes.p_hiConcurrent.dyn_hiConcurrent.hiConcurrent.p_hiForeignPtrForeignPtr.dyn_hiForeignPtr.hiForeignPtr.p_hiImp.dyn_hiImp.hiImp.p_hiSafe.dyn_hiSafe.hiSafe.p_hiUnsafe.dyn_hiUnsafe.hiUnsafe.p_hiMarshalMarshal.dyn_hiMarshal.hiMarshal.p_hiAlloc.dyn_hiAlloc.hiAlloc.p_hiArray.dyn_hiArray.hiArray.p_hiError.dyn_hiError.hiError.p_hiPool.dyn_hiPool.hiPool.p_hiSafe.dyn_hiSafe.hiSafe.p_hiUnsafe.dyn_hiUnsafe.hiUnsafe.p_hiUtils.dyn_hiUtils.hiUtils.p_hiPtr.dyn_hiPtr.hiPtr.p_hiSafe.dyn_hiSafe.hiSafe.p_hiStablePtr.dyn_hiStablePtr.hiStablePtr.p_hiStorable.dyn_hiStorable.hiStorable.p_hiGHCArr.dyn_hiArr.hiArr.p_hiBase.dyn_hiBase.hiBase.p_hiChar.dyn_hiChar.hiChar.p_hiConcConc.dyn_hiConc.hiConc.p_hiIO.dyn_hiIO.hiIO.p_hiSignal.dyn_hiSignal.hiSignal.p_hiSync.dyn_hiSync.hiSync.p_hiConsoleHandler.dyn_hiConsoleHandler.hiConsoleHandler.p_hiConstants.dyn_hiConstants.hiConstants.p_hiDesugar.dyn_hiDesugar.hiDesugar.p_hiEnum.dyn_hiEnum.hiEnum.p_hiEnvironment.dyn_hiEnvironment.hiEnvironment.p_hiErr.dyn_hiErr.hiErr.p_hiEventEvent.dyn_hiEvent.hiEvent.p_hiArr.dyn_hiArr.hiArr.p_hiArray.dyn_hiArray.hiArray.p_hiClock.dyn_hiClock.hiClock.p_hiControl.dyn_hiControl.hiControl.p_hiEPoll.dyn_hiEPoll.hiEPoll.p_hiIntTable.dyn_hiIntTable.hiIntTable.p_hiInternal.dyn_hiInternal.hiInternal.p_hiKQueue.dyn_hiKQueue.hiKQueue.p_hiManager.dyn_hiManager.hiManager.p_hiPSQ.dyn_hiPSQ.hiPSQ.p_hiPoll.dyn_hiPoll.hiPoll.p_hiThread.dyn_hiThread.hiThread.p_hiTimerManager.dyn_hiTimerManager.hiTimerManager.p_hiUnique.dyn_hiUnique.hiUnique.p_hiException.dyn_hiException.hiException.p_hiExts.dyn_hiExts.hiExts.p_hiFingerprintFingerprint.dyn_hiFingerprint.hiFingerprint.p_hiType.dyn_hiType.hiType.p_hiFloatFloat.dyn_hiFloat.hiFloat.p_hiConversionUtils.dyn_hiConversionUtils.hiConversionUtils.p_hiRealFracMethods.dyn_hiRealFracMethods.hiRealFracMethods.p_hiForeign.dyn_hiForeign.hiForeign.p_hiForeignPtr.dyn_hiForeignPtr.hiForeignPtr.p_hiGHCi.dyn_hiGHCi.hiGHCi.p_hiGenerics.dyn_hiGenerics.hiGenerics.p_hiIOIO.dyn_hiIO.hiIO.p_hiBuffer.dyn_hiBuffer.hiBuffer.p_hiBufferedIO.dyn_hiBufferedIO.hiBufferedIO.p_hiDevice.dyn_hiDevice.hiDevice.p_hiEncodingEncoding.dyn_hiEncoding.hiEncoding.p_hiCodePage.dyn_hiCodePage.hiCodePage.p_hiFailure.dyn_hiFailure.hiFailure.p_hiIconv.dyn_hiIconv.hiIconv.p_hiLatin1.dyn_hiLatin1.hiLatin1.p_hiTypes.dyn_hiTypes.hiTypes.p_hiUTF16.dyn_hiUTF16.hiUTF16.p_hiUTF32.dyn_hiUTF32.hiUTF32.p_hiUTF8.dyn_hiUTF8.hiUTF8.p_hiException.dyn_hiException.hiException.p_hiFD.dyn_hiFD.hiFD.p_hiHandleHandle.dyn_hiHandle.hiHandle.p_hiFD.dyn_hiFD.hiFD.p_hiInternals.dyn_hiInternals.hiInternals.p_hiText.dyn_hiText.hiText.p_hiTypes.dyn_hiTypes.hiTypes.p_hiIOMode.dyn_hiIOMode.hiIOMode.p_hiIOArray.dyn_hiIOArray.hiIOArray.p_hiIORef.dyn_hiIORef.hiIORef.p_hiIP.dyn_hiIP.hiIP.p_hiInt.dyn_hiInt.hiInt.p_hiList.dyn_hiList.hiList.p_hiMVar.dyn_hiMVar.hiMVar.p_hiNum.dyn_hiNum.hiNum.p_hiPArr.dyn_hiPArr.hiPArr.p_hiPack.dyn_hiPack.hiPack.p_hiProfiling.dyn_hiProfiling.hiProfiling.p_hiPtr.dyn_hiPtr.hiPtr.p_hiRead.dyn_hiRead.hiRead.p_hiReal.dyn_hiReal.hiReal.p_hiST.dyn_hiST.hiST.p_hiSTRef.dyn_hiSTRef.hiSTRef.p_hiShow.dyn_hiShow.hiShow.p_hiStable.dyn_hiStable.hiStable.p_hiStack.dyn_hiStack.hiStack.p_hiStats.dyn_hiStats.hiStats.p_hiStorable.dyn_hiStorable.hiStorable.p_hiTopHandler.dyn_hiTopHandler.hiTopHandler.p_hiTypeLits.dyn_hiTypeLits.hiTypeLits.p_hiUnicode.dyn_hiUnicode.hiUnicode.p_hiWeak.dyn_hiWeak.hiWeak.p_hiWord.dyn_hiWord.hiWord.p_hiNumeric.dyn_hiNumeric.hiNumeric.p_hiPrelude.dyn_hiPrelude.hiPrelude.p_hiSystemCPUTime.dyn_hiCPUTime.hiCPUTime.p_hiConsoleGetOpt.dyn_hiGetOpt.hiGetOpt.p_hiEnvironmentEnvironment.dyn_hiEnvironment.hiEnvironment.p_hiExecutablePath.dyn_hiExecutablePath.hiExecutablePath.p_hiExit.dyn_hiExit.hiExit.p_hiIOIO.dyn_hiIO.hiIO.p_hiError.dyn_hiError.hiError.p_hiUnsafe.dyn_hiUnsafe.hiUnsafe.p_hiInfo.dyn_hiInfo.hiInfo.p_hiMemMem.dyn_hiMem.hiMem.p_hiStableName.dyn_hiStableName.hiStableName.p_hiWeak.dyn_hiWeak.hiWeak.p_hiPosixInternals.dyn_hiInternals.hiInternals.p_hiTypes.dyn_hiTypes.hiTypes.p_hiTimeout.dyn_hiTimeout.hiTimeout.p_hiTextParserCombinatorsReadP.dyn_hiReadP.hiReadP.p_hiReadPrec.dyn_hiReadPrec.hiReadPrec.p_hiPrintf.dyn_hiPrintf.hiPrintf.p_hiReadRead.dyn_hiRead.hiRead.p_hiLex.dyn_hiLex.hiLex.p_hiShowShow.dyn_hiShow.hiShow.p_hiFunctions.dyn_hiFunctions.hiFunctions.p_hiUnsafeCoerce.dyn_hiCoerce.hiCoerce.p_hiincludeEventConfig.hHsBase.hHsBaseConfig.hOldTypeable.hTypeable.hWCsubst.hconsUtils.hlibHSbase-4.7.0.2.alibHSbase-4.7.0.2_p.aGHCCString.dyn_hiCString.hiCString.p_hiClasses.dyn_hiClasses.hiClasses.p_hiDebug.dyn_hiDebug.hiDebug.p_hiIntWord64.dyn_hiIntWord64.hiIntWord64.p_hiMagic.dyn_hiMagic.hiMagic.p_hiPrimopWrappers.dyn_hiPrimopWrappers.hiPrimopWrappers.p_hiTuple.dyn_hiTuple.hiTuple.p_hiTypes.dyn_hiTypes.hiTypes.p_hilibHSghc-prim-0.3.1.0.alibHSghc-prim-0.3.1.0_p.aincludeCmm.hDerivedConstants.hHsFFI.hMachDeps.hRts.hRtsAPI.hStg.hghcautoconf.hghcconfig.hghcplatform.hrtsAdjustor.hBlockSignals.hBytecodes.hConfig.hConstants.hEventLogFormat.hFileLock.hFlags.hGetTime.hGlobals.hHooks.hHpc.hIOManager.hLinker.hMain.hMessages.hOSThreads.hParallel.hPrimFloat.hSignals.hSpinLock.hStable.hTTY.hThreads.hTicky.hTimer.hTypes.hUtils.hprofCCS.hLDV.hstorageBlock.hClosureMacros.hClosureTypes.hClosures.hFunTypes.hGC.hInfoTables.hMBlock.hSMPClosureOps.hTSO.hstgDLL.hHaskellMachRegs.hMachRegs.hMiscClosures.hPrim.hRegs.hRtsMachRegs.hSMP.hTicky.hTypes.hGHCIntegerInteger.dyn_hiInteger.hiInteger.p_hiGMPInternals.dyn_hiInternals.hiInternals.p_hiPrim.dyn_hiPrim.hiPrim.p_hiLogarithmsLogarithms.dyn_hiLogarithms.hiLogarithms.p_hiInternals.dyn_hiInternals.hiInternals.p_hiType.dyn_hiType.hiType.p_hiincludeHsIntegerGmp.hlibHSinteger-gmp-0.5.1.0.alibHSinteger-gmp-0.5.1.0_p.abase-4.7.0.2-5fe6e85f7f9fef354e05acec46a7dd51.confbuiltin_rts.confghc-prim-0.3.1.0-f0b77db25e6a07f3e2798ad2aa2db4f0.confinteger-gmp-0.5.1.0-3c6ee2f20a97b2ba60906fa87b8f151c.conflibHSrts.alibHSrts_debug.alibHSrts_l.alibHSrts_p.alibHSrts_thr.alibHSrts_thr_debug.alibHSrts_thr_l.alibHSrts_thr_p.abase-4.7.0.2Control-Applicative.htmlControl-Arrow.htmlControl-Category.htmlControl-Concurrent-Chan.htmlControl-Concurrent-MVar.htmlControl-Concurrent-QSem.htmlControl-Concurrent-QSemN.htmlControl-Concurrent.htmlControl-Exception-Base.htmlControl-Exception.htmlControl-Monad-Fix.htmlControl-Monad-Instances.htmlControl-Monad-ST-Lazy-Safe.htmlControl-Monad-ST-Lazy-Unsafe.htmlControl-Monad-ST-Lazy.htmlControl-Monad-ST-Safe.htmlControl-Monad-ST-Strict.htmlControl-Monad-ST-Unsafe.htmlControl-Monad-ST.htmlControl-Monad-Zip.htmlControl-Monad.htmlData-Bits.htmlData-Bool.htmlData-Char.htmlData-Coerce.htmlData-Complex.htmlData-Data.htmlData-Dynamic.htmlData-Either.htmlData-Eq.htmlData-Fixed.htmlData-Foldable.htmlData-Function.htmlData-Functor.htmlData-IORef.htmlData-Int.htmlData-Ix.htmlData-List.htmlData-Maybe.htmlData-Monoid.htmlData-OldTypeable-Internal.htmlData-OldTypeable.htmlData-Ord.htmlData-Proxy.htmlData-Ratio.htmlData-STRef-Lazy.htmlData-STRef-Strict.htmlData-STRef.htmlData-String.htmlData-Traversable.htmlData-Tuple.htmlData-Type-Bool.htmlData-Type-Coercion.htmlData-Type-Equality.htmlData-Typeable-Internal.htmlData-Typeable.htmlData-Unique.htmlData-Version.htmlData-Word.htmlDebug-Trace.htmlForeign-C-Error.htmlForeign-C-String.htmlForeign-C-Types.htmlForeign-C.htmlForeign-Concurrent.htmlForeign-ForeignPtr-Safe.htmlForeign-ForeignPtr-Unsafe.htmlForeign-ForeignPtr.htmlForeign-Marshal-Alloc.htmlForeign-Marshal-Array.htmlForeign-Marshal-Error.htmlForeign-Marshal-Pool.htmlForeign-Marshal-Safe.htmlForeign-Marshal-Unsafe.htmlForeign-Marshal-Utils.htmlForeign-Marshal.htmlForeign-Ptr.htmlForeign-Safe.htmlForeign-StablePtr.htmlForeign-Storable.htmlForeign.htmlGHC-Char.htmlGHC-Conc-IO.htmlGHC-Conc-Signal.htmlGHC-Conc-Sync.htmlGHC-Conc.htmlGHC-ConsoleHandler.htmlGHC-Constants.htmlGHC-Environment.htmlGHC-Event.htmlGHC-Exts.htmlGHC-Fingerprint-Type.htmlGHC-Fingerprint.htmlGHC-Foreign.htmlGHC-Generics.htmlGHC-IO-Buffer.htmlGHC-IO-BufferedIO.htmlGHC-IO-Device.htmlGHC-IO-Encoding-CodePage.htmlGHC-IO-Encoding-Failure.htmlGHC-IO-Encoding-Latin1.htmlGHC-IO-Encoding-Types.htmlGHC-IO-Encoding-UTF16.htmlGHC-IO-Encoding-UTF32.htmlGHC-IO-Encoding-UTF8.htmlGHC-IO-Encoding.htmlGHC-IO-Handle-FD.htmlGHC-IO-Handle.htmlGHC-IP.htmlGHC-Profiling.htmlGHC-Stack.htmlGHC-Stats.htmlGHC-TypeLits.htmlNumeric.htmlPrelude.htmlSystem-CPUTime.htmlSystem-Console-GetOpt.htmlSystem-Environment.htmlSystem-Exit.htmlSystem-IO-Error.htmlSystem-IO-Unsafe.htmlSystem-IO.htmlSystem-Info.htmlSystem-Mem-StableName.htmlSystem-Mem-Weak.htmlSystem-Mem.htmlSystem-Posix-Types.htmlSystem-Timeout.htmlText-ParserCombinators-ReadP.htmlText-ParserCombinators-ReadPrec.htmlText-Printf.htmlText-Read-Lex.htmlText-Read.htmlText-Show-Functions.htmlText-Show.htmlUnsafe-Coerce.htmlbase.haddockbase.haddock.tbase.txtdoc-index-124.htmldoc-index-126.htmldoc-index-33.htmldoc-index-36.htmldoc-index-37.htmldoc-index-38.htmldoc-index-42.htmldoc-index-43.htmldoc-index-45.htmldoc-index-46.htmldoc-index-47.htmldoc-index-58.htmldoc-index-60.htmldoc-index-61.htmldoc-index-62.htmldoc-index-92.htmldoc-index-94.htmldoc-index-A.htmldoc-index-All.htmldoc-index-B.htmldoc-index-C.htmldoc-index-D.htmldoc-index-E.htmldoc-index-F.htmldoc-index-G.htmldoc-index-H.htmldoc-index-I.htmldoc-index-J.htmldoc-index-K.htmldoc-index-L.htmldoc-index-M.htmldoc-index-N.htmldoc-index-O.htmldoc-index-P.htmldoc-index-Q.htmldoc-index-R.htmldoc-index-S.htmldoc-index-T.htmldoc-index-U.htmldoc-index-V.htmldoc-index-W.htmldoc-index-X.htmldoc-index-Y.htmldoc-index-Z.htmldoc-index.htmlframes.htmlhaddock-util.jshslogo-16.pngindex-frames.htmlindex.htmlmini_Control-Applicative.htmlmini_Control-Arrow.htmlmini_Control-Category.htmlmini_Control-Concurrent-Chan.htmlmini_Control-Concurrent-MVar.htmlmini_Control-Concurrent-QSem.htmlmini_Control-Concurrent-QSemN.htmlmini_Control-Concurrent.htmlmini_Control-Exception-Base.htmlmini_Control-Exception.htmlmini_Control-Monad-Fix.htmlmini_Control-Monad-Instances.htmlmini_Control-Monad-ST-Lazy-Safe.htmlmini_Control-Monad-ST-Lazy-Unsafe.htmlmini_Control-Monad-ST-Lazy.htmlmini_Control-Monad-ST-Safe.htmlmini_Control-Monad-ST-Strict.htmlmini_Control-Monad-ST-Unsafe.htmlmini_Control-Monad-ST.htmlmini_Control-Monad-Zip.htmlmini_Control-Monad.htmlmini_Data-Bits.htmlmini_Data-Bool.htmlmini_Data-Char.htmlmini_Data-Coerce.htmlmini_Data-Complex.htmlmini_Data-Data.htmlmini_Data-Dynamic.htmlmini_Data-Either.htmlmini_Data-Eq.htmlmini_Data-Fixed.htmlmini_Data-Foldable.htmlmini_Data-Function.htmlmini_Data-Functor.htmlmini_Data-IORef.htmlmini_Data-Int.htmlmini_Data-Ix.htmlmini_Data-List.htmlmini_Data-Maybe.htmlmini_Data-Monoid.htmlmini_Data-OldTypeable-Internal.htmlmini_Data-OldTypeable.htmlmini_Data-Ord.htmlmini_Data-Proxy.htmlmini_Data-Ratio.htmlmini_Data-STRef-Lazy.htmlmini_Data-STRef-Strict.htmlmini_Data-STRef.htmlmini_Data-String.htmlmini_Data-Traversable.htmlmini_Data-Tuple.htmlmini_Data-Type-Bool.htmlmini_Data-Type-Coercion.htmlmini_Data-Type-Equality.htmlmini_Data-Typeable-Internal.htmlmini_Data-Typeable.htmlmini_Data-Unique.htmlmini_Data-Version.htmlmini_Data-Word.htmlmini_Debug-Trace.htmlmini_Foreign-C-Error.htmlmini_Foreign-C-String.htmlmini_Foreign-C-Types.htmlmini_Foreign-C.htmlmini_Foreign-Concurrent.htmlmini_Foreign-ForeignPtr-Safe.htmlmini_Foreign-ForeignPtr-Unsafe.htmlmini_Foreign-ForeignPtr.htmlmini_Foreign-Marshal-Alloc.htmlmini_Foreign-Marshal-Array.htmlmini_Foreign-Marshal-Error.htmlmini_Foreign-Marshal-Pool.htmlmini_Foreign-Marshal-Safe.htmlmini_Foreign-Marshal-Unsafe.htmlmini_Foreign-Marshal-Utils.htmlmini_Foreign-Marshal.htmlmini_Foreign-Ptr.htmlmini_Foreign-Safe.htmlmini_Foreign-StablePtr.htmlmini_Foreign-Storable.htmlmini_Foreign.htmlmini_GHC-Char.htmlmini_GHC-Conc-IO.htmlmini_GHC-Conc-Signal.htmlmini_GHC-Conc-Sync.htmlmini_GHC-Conc.htmlmini_GHC-ConsoleHandler.htmlmini_GHC-Constants.htmlmini_GHC-Environment.htmlmini_GHC-Event.htmlmini_GHC-Exts.htmlmini_GHC-Fingerprint-Type.htmlmini_GHC-Fingerprint.htmlmini_GHC-Foreign.htmlmini_GHC-Generics.htmlmini_GHC-IO-Buffer.htmlmini_GHC-IO-BufferedIO.htmlmini_GHC-IO-Device.htmlmini_GHC-IO-Encoding-CodePage.htmlmini_GHC-IO-Encoding-Failure.htmlmini_GHC-IO-Encoding-Latin1.htmlmini_GHC-IO-Encoding-Types.htmlmini_GHC-IO-Encoding-UTF16.htmlmini_GHC-IO-Encoding-UTF32.htmlmini_GHC-IO-Encoding-UTF8.htmlmini_GHC-IO-Encoding.htmlmini_GHC-IO-Handle-FD.htmlmini_GHC-IO-Handle.htmlmini_GHC-IP.htmlmini_GHC-Profiling.htmlmini_GHC-Stack.htmlmini_GHC-Stats.htmlmini_GHC-TypeLits.htmlmini_Numeric.htmlmini_Prelude.htmlmini_System-CPUTime.htmlmini_System-Console-GetOpt.htmlmini_System-Environment.htmlmini_System-Exit.htmlmini_System-IO-Error.htmlmini_System-IO-Unsafe.htmlmini_System-IO.htmlmini_System-Info.htmlmini_System-Mem-StableName.htmlmini_System-Mem-Weak.htmlmini_System-Mem.htmlmini_System-Posix-Types.htmlmini_System-Timeout.htmlmini_Text-ParserCombinators-ReadP.htmlmini_Text-ParserCombinators-ReadPrec.htmlmini_Text-Printf.htmlmini_Text-Read-Lex.htmlmini_Text-Read.htmlmini_Text-Show-Functions.htmlmini_Text-Show.htmlmini_Unsafe-Coerce.htmlminus.gifocean.cssplus.gifsrcControl-Applicative.htmlControl-Arrow.htmlControl-Category.htmlControl-Concurrent-Chan.htmlControl-Concurrent-MVar.htmlControl-Concurrent-QSem.htmlControl-Concurrent-QSemN.htmlControl-Concurrent.htmlControl-Exception-Base.htmlControl-Exception.htmlControl-Monad-Fix.htmlControl-Monad-Instances.htmlControl-Monad-ST-Imp.htmlControl-Monad-ST-Lazy-Imp.htmlControl-Monad-ST-Lazy-Safe.htmlControl-Monad-ST-Lazy-Unsafe.htmlControl-Monad-ST-Lazy.htmlControl-Monad-ST-Safe.htmlControl-Monad-ST-Strict.htmlControl-Monad-ST-Unsafe.htmlControl-Monad-ST.htmlControl-Monad-Zip.htmlControl-Monad.htmlData-Bits.htmlData-Bool.htmlData-Char.htmlData-Coerce.htmlData-Complex.htmlData-Data.htmlData-Dynamic.htmlData-Either.htmlData-Eq.htmlData-Fixed.htmlData-Foldable.htmlData-Function.htmlData-Functor.htmlData-IORef.htmlData-Int.htmlData-Ix.htmlData-List.htmlData-Maybe.htmlData-Monoid.htmlData-OldTypeable-Internal.htmlData-OldTypeable.htmlData-Ord.htmlData-Proxy.htmlData-Ratio.htmlData-STRef-Lazy.htmlData-STRef-Strict.htmlData-STRef.htmlData-String.htmlData-Traversable.htmlData-Tuple.htmlData-Type-Bool.htmlData-Type-Coercion.htmlData-Type-Equality.htmlData-Typeable-Internal.htmlData-Typeable.htmlData-Unique.htmlData-Version.htmlData-Word.htmlDebug-Trace.htmlForeign-C-Error.htmlForeign-C-String.htmlForeign-C-Types.htmlForeign-C.htmlForeign-Concurrent.htmlForeign-ForeignPtr-Imp.htmlForeign-ForeignPtr-Safe.htmlForeign-ForeignPtr-Unsafe.htmlForeign-ForeignPtr.htmlForeign-Marshal-Alloc.htmlForeign-Marshal-Array.htmlForeign-Marshal-Error.htmlForeign-Marshal-Pool.htmlForeign-Marshal-Safe.htmlForeign-Marshal-Unsafe.htmlForeign-Marshal-Utils.htmlForeign-Marshal.htmlForeign-Ptr.htmlForeign-Safe.htmlForeign-StablePtr.htmlForeign-Storable.htmlForeign.htmlGHC-Arr.htmlGHC-Base.htmlGHC-Char.htmlGHC-Conc-IO.htmlGHC-Conc-Signal.htmlGHC-Conc-Sync.htmlGHC-Conc.htmlGHC-ConsoleHandler.htmlGHC-Constants.htmlGHC-Desugar.htmlGHC-Enum.htmlGHC-Environment.htmlGHC-Err.htmlGHC-Event-Arr.htmlGHC-Event-Array.htmlGHC-Event-Clock.htmlGHC-Event-Control.htmlGHC-Event-EPoll.htmlGHC-Event-IntTable.htmlGHC-Event-Internal.htmlGHC-Event-KQueue.htmlGHC-Event-Manager.htmlGHC-Event-PSQ.htmlGHC-Event-Poll.htmlGHC-Event-Thread.htmlGHC-Event-TimerManager.htmlGHC-Event-Unique.htmlGHC-Event.htmlGHC-Exception.htmlGHC-Exts.htmlGHC-Fingerprint-Type.htmlGHC-Fingerprint.htmlGHC-Float-ConversionUtils.htmlGHC-Float-RealFracMethods.htmlGHC-Float.htmlGHC-Foreign.htmlGHC-ForeignPtr.htmlGHC-GHCi.htmlGHC-Generics.htmlGHC-IO-Buffer.htmlGHC-IO-BufferedIO.htmlGHC-IO-Device.htmlGHC-IO-Encoding-CodePage.htmlGHC-IO-Encoding-Failure.htmlGHC-IO-Encoding-Iconv.htmlGHC-IO-Encoding-Latin1.htmlGHC-IO-Encoding-Types.htmlGHC-IO-Encoding-UTF16.htmlGHC-IO-Encoding-UTF32.htmlGHC-IO-Encoding-UTF8.htmlGHC-IO-Encoding.htmlGHC-IO-Exception.htmlGHC-IO-FD.htmlGHC-IO-Handle-FD.htmlGHC-IO-Handle-Internals.htmlGHC-IO-Handle-Text.htmlGHC-IO-Handle-Types.htmlGHC-IO-Handle.htmlGHC-IO-IOMode.htmlGHC-IO.htmlGHC-IOArray.htmlGHC-IORef.htmlGHC-IP.htmlGHC-Int.htmlGHC-List.htmlGHC-MVar.htmlGHC-Num.htmlGHC-PArr.htmlGHC-Pack.htmlGHC-Profiling.htmlGHC-Ptr.htmlGHC-Read.htmlGHC-Real.htmlGHC-ST.htmlGHC-STRef.htmlGHC-Show.htmlGHC-Stable.htmlGHC-Stack.htmlGHC-Stats.htmlGHC-Storable.htmlGHC-TopHandler.htmlGHC-TypeLits.htmlGHC-Unicode.htmlGHC-Weak.htmlGHC-Word.htmlNumeric.htmlPrelude.htmlSystem-CPUTime.htmlSystem-Console-GetOpt.htmlSystem-Environment-ExecutablePath.htmlSystem-Environment.htmlSystem-Exit.htmlSystem-IO-Error.htmlSystem-IO-Unsafe.htmlSystem-IO.htmlSystem-Info.htmlSystem-Mem-StableName.htmlSystem-Mem-Weak.htmlSystem-Mem.htmlSystem-Posix-Internals.htmlSystem-Posix-Types.htmlSystem-Timeout.htmlText-ParserCombinators-ReadP.htmlText-ParserCombinators-ReadPrec.htmlText-Printf.htmlText-Read-Lex.htmlText-Read.htmlText-Show-Functions.htmlText-Show.htmlUnsafe-Coerce.htmlhscolour.csssynopsis.pngghc-prim-0.3.1.0GHC-CString.htmlGHC-Debug.htmlGHC-Magic.htmlGHC-Prim.htmlGHC-PrimopWrappers.htmlGHC-Tuple.htmlGHC-Types.htmldoc-index-42.htmldoc-index-43.htmldoc-index-45.htmldoc-index-47.htmldoc-index-60.htmldoc-index-61.htmldoc-index-62.htmldoc-index-A.htmldoc-index-All.htmldoc-index-B.htmldoc-index-C.htmldoc-index-D.htmldoc-index-E.htmldoc-index-F.htmldoc-index-G.htmldoc-index-I.htmldoc-index-K.htmldoc-index-L.htmldoc-index-M.htmldoc-index-N.htmldoc-index-O.htmldoc-index-P.htmldoc-index-Q.htmldoc-index-R.htmldoc-index-S.htmldoc-index-T.htmldoc-index-U.htmldoc-index-W.htmldoc-index-X.htmldoc-index-Y.htmldoc-index.htmlframes.htmlghc-prim.haddockghc-prim.haddock.tghc-prim.txthaddock-util.jshslogo-16.pngindex-frames.htmlindex.htmlmini_GHC-CString.htmlmini_GHC-Debug.htmlmini_GHC-Magic.htmlmini_GHC-Prim.htmlmini_GHC-PrimopWrappers.htmlmini_GHC-Tuple.htmlmini_GHC-Types.htmlminus.gifocean.cssplus.gifsrcGHC-CString.htmlGHC-Classes.htmlGHC-Debug.htmlGHC-IntWord64.htmlGHC-Magic.htmlGHC-Prim.htmlGHC-PrimopWrappers.htmlGHC-Tuple.htmlGHC-Types.htmlhscolour.csssynopsis.pnginteger-gmp-0.5.1.0GHC-Integer-GMP-Internals.htmlGHC-Integer-Logarithms.htmlGHC-Integer.htmldoc-index.htmlframes.htmlhaddock-util.jshslogo-16.pngindex-frames.htmlindex.htmlinteger-gmp.haddockinteger-gmp.haddock.tinteger-gmp.txtmini_GHC-Integer-GMP-Internals.htmlmini_GHC-Integer-Logarithms.htmlmini_GHC-Integer.htmlminus.gifocean.cssplus.gifsrcGHC-Integer-GMP-Internals.htmlGHC-Integer-GMP-Prim.htmlGHC-Integer-Logarithms-Internals.htmlGHC-Integer-Logarithms.htmlGHC-Integer-Type.htmlGHC-Integer.htmlhscolour.csssynopsis.png/usr/lib/ghc-7.8.4/base-4.7.0.2//usr/lib/ghc-7.8.4/base-4.7.0.2/Control//usr/lib/ghc-7.8.4/base-4.7.0.2/Control/Concurrent//usr/lib/ghc-7.8.4/base-4.7.0.2/Control/Exception//usr/lib/ghc-7.8.4/base-4.7.0.2/Control/Monad//usr/lib/ghc-7.8.4/base-4.7.0.2/Control/Monad/ST//usr/lib/ghc-7.8.4/base-4.7.0.2/Control/Monad/ST/Lazy//usr/lib/ghc-7.8.4/base-4.7.0.2/Data//usr/lib/ghc-7.8.4/base-4.7.0.2/Data/OldTypeable//usr/lib/ghc-7.8.4/base-4.7.0.2/Data/STRef//usr/lib/ghc-7.8.4/base-4.7.0.2/Data/Type//usr/lib/ghc-7.8.4/base-4.7.0.2/Data/Typeable//usr/lib/ghc-7.8.4/base-4.7.0.2/Debug//usr/lib/ghc-7.8.4/base-4.7.0.2/Foreign//usr/lib/ghc-7.8.4/base-4.7.0.2/Foreign/C//usr/lib/ghc-7.8.4/base-4.7.0.2/Foreign/ForeignPtr//usr/lib/ghc-7.8.4/base-4.7.0.2/Foreign/Marshal//usr/lib/ghc-7.8.4/base-4.7.0.2/GHC//usr/lib/ghc-7.8.4/base-4.7.0.2/GHC/Conc//usr/lib/ghc-7.8.4/base-4.7.0.2/GHC/Event//usr/lib/ghc-7.8.4/base-4.7.0.2/GHC/Fingerprint//usr/lib/ghc-7.8.4/base-4.7.0.2/GHC/Float//usr/lib/ghc-7.8.4/base-4.7.0.2/GHC/IO//usr/lib/ghc-7.8.4/base-4.7.0.2/GHC/IO/Encoding//usr/lib/ghc-7.8.4/base-4.7.0.2/GHC/IO/Handle//usr/lib/ghc-7.8.4/base-4.7.0.2/System//usr/lib/ghc-7.8.4/base-4.7.0.2/System/Console//usr/lib/ghc-7.8.4/base-4.7.0.2/System/Environment//usr/lib/ghc-7.8.4/base-4.7.0.2/System/IO//usr/lib/ghc-7.8.4/base-4.7.0.2/System/Mem//usr/lib/ghc-7.8.4/base-4.7.0.2/System/Posix//usr/lib/ghc-7.8.4/base-4.7.0.2/Text//usr/lib/ghc-7.8.4/base-4.7.0.2/Text/ParserCombinators//usr/lib/ghc-7.8.4/base-4.7.0.2/Text/Read//usr/lib/ghc-7.8.4/base-4.7.0.2/Text/Show//usr/lib/ghc-7.8.4/base-4.7.0.2/Unsafe//usr/lib/ghc-7.8.4/base-4.7.0.2/include//usr/lib/ghc-7.8.4/ghc-prim-0.3.1.0//usr/lib/ghc-7.8.4/ghc-prim-0.3.1.0/GHC//usr/lib/ghc-7.8.4//usr/lib/ghc-7.8.4/include//usr/lib/ghc-7.8.4/include/rts//usr/lib/ghc-7.8.4/include/rts/prof//usr/lib/ghc-7.8.4/include/rts/storage//usr/lib/ghc-7.8.4/include/stg//usr/lib/ghc-7.8.4/integer-gmp-0.5.1.0//usr/lib/ghc-7.8.4/integer-gmp-0.5.1.0/GHC//usr/lib/ghc-7.8.4/integer-gmp-0.5.1.0/GHC/Integer//usr/lib/ghc-7.8.4/integer-gmp-0.5.1.0/GHC/Integer/GMP//usr/lib/ghc-7.8.4/integer-gmp-0.5.1.0/GHC/Integer/Logarithms//usr/lib/ghc-7.8.4/integer-gmp-0.5.1.0/include//usr/lib/ghc-7.8.4/package.conf.d//usr/lib/ghc-7.8.4/rts-1.0//usr/share/doc/ghc/html/libraries//usr/share/doc/ghc/html/libraries/base-4.7.0.2//usr/share/doc/ghc/html/libraries/base-4.7.0.2/src//usr/share/doc/ghc/html/libraries/ghc-prim-0.3.1.0//usr/share/doc/ghc/html/libraries/ghc-prim-0.3.1.0/src//usr/share/doc/ghc/html/libraries/integer-gmp-0.5.1.0//usr/share/doc/ghc/html/libraries/integer-gmp-0.5.1.0/src/-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=harddrpmxz2armv7hl-redhat-linux-gnueabi            directoryASCII textC source, ASCII textcurrent ar archiveHTML document, ASCII text, with very long linesASCII text, with very long linesC++ source, ASCII text, with very long linesHTML document, ASCII textPNG image data, 23 x 16, 8-bit/color RGBA, non-interlacedGIF image data, version 89a, 9 x 9XML document textPNG image data, 128 x 104, 8-bit/color RGBA, non-interlacedPR R RPRPR R?07zXZ !PH6{dN]"k%wǢFyno?-, w0-CaVHvH]ǞHu/5$C&J~p˚. '@ e;`ra6pN b*qb:]N36>i](0AmvihAkR9ZN7tz{ůF'E6؀ʔ^NW*cy]gwT7 𣪬_NZTهB@⩌' @C4z_xe-YOIӹn?{Xྫ)Ҿ}[itowzr9%ȭ]#P޵F#%ZOz;YSǸYAۀwAu-҉SarOBȿOb,+鄧%6Y8,}٩a׭g WX=])IC;ª?ɥ.f"/^ӡ" X)g"n,_L%LD#]\xxf^4;OKWE77ۅqahםs&w 6ظEWI f#B 4ޞFt~-?Gi0AyW XrAw4Ӯ#2yz&줮&IlFJ@C1z&x'<92p2Zɳ2VxrcNۓȠR X\b,[+K!8 H%mf5#WdӜL{òҝw'5m e~̻H]8[X1=۝d35qv&jHk̲Ϳ9*43 I14pž 0B(o\#;yGh݄̀֝J}ɥ>߹1m}/ eKiWM:xK&Pi8 HHw rĭP5M/wdӌNe CȄH}xaPBC_КwNPkX 0+rf/,Y 5کkִ4ԠΏ߳;D'tʆN`},J殊ClOi~dwDOyΝeuCo`) %[L3@bzMWvn}y26:+ێZ`5;,w=|h[YXl٩NPFR/,9MJ3eBN/z#ɞe u e?81CB5蛣 Y6RU):#sp9,M6bߧvb>bi[QHW0׃ѩ(|=' @,[O)0v2<䤼{J{_b&rFYS]r/",H[o9ZQYYTHdvXC>L4eE ۞]Yze752:+ï;y%Eܴ3j a" /.ڴiquZa[uO: Y^t{%]K*%$hڤHrS&6_æ)Q5SUNʭg`%#atF *"R)&W~ /U+ڭS %P4zUdEL3;,'mRCK {"CƃvVV;u %zɴo /S̞}i1ٿť'Q {j5u/s8^YԑdhA}3ש slR_`@Ps&=U .E7{V [\H IYrWNCp%IbV+#(?95ۻ K,+8%I7t}{z);H3z  б:)rjzg#o]D%}tDHm-!f R1QLzS#78?Wގ≲7ӼY oSLJאXmo# *Wկ~iיnDz˧.z跕VY  YN>NCg)(|2sgKAsp&#r\dpVGrajQPo-ËJrX9Lx1 $|z w5ԇpzG)gX/OFF21]ʋrdd:'4155(~v)D˷N/Wm8S{B v ><㕳`a?r[Ŵ5n(4L?k)&e i;6Yzl'HRsYz7x)Y#Ki1wZtptŭߑVN1 Ŝ2Gal$3Y&tv 7 r^djd'Yh j'k8tpX8PuQ/#bܣ(ؾǷR٣wF .D8ć Z, |\<"4+A~.]|1ΖHsvx&kͥ{\|uWScˏ$GMT.w/˾'8n1AN\#H0+![GYNO$'dʣ x@t@QŅ7%S7XH%<\ū%"Cpp%؟,vcrUq(pMmwB+$] 82mzJ%TH681vwYhO:zXUQ˙Dj3*U#A< 5zvJ> 1.z ypz ;'wC@v*3~MqQ|xU"v/rIZc#")1 NH0'w![ԐA!gK03]OqG(s&Tͱ@lj:ƒ7#.3.N*YOIu|Kw\k^P kGJmihU֪֭M6z>#ˀ`wiTʇO<|R7h[0Ko]3: n}SܑVxN,vUh-0/' (P|hk4鶍K7KȽ3 7: _($DPSvH,Wm9'k-XƑ5(;j[ajLVGg^u*ęC^\ Y]x9xִ.poi؈|Б7CB&:BeNsRl"f,HW"CM9!i_U=yWPG>P#?Yr߆cݚDdsN<ޭKԩfǥb$R$ɒ]`Jw08J"k˞DH }1@LjY k!2ASqۧsY_dtŒ:]uL@/C6C \\s/Dz!qɺߺD'z)C3 )Y! "p J"< J@^Bsa3CzCft?7 ׻ga9YzJ7zE{Ovӝ@{޺ `}Kׄ4S[aBKv@Jn%EjStBXjKoYCY(sGd68FyĨ!XXXCLj]Yi_gR#P_|`?2HP>RG^FyMٓZ?|g9'0KG3߾R bsC-ٚj| ŽM?P dw"U0K$j}N]39BDA?N^{7,^J*Q#v:X5nz>߃נ mPJ<b6wlW+cm6l?&4Xxysme- m3Au3ȼrW+,Yp +o.|~ly3!'y5D !"6D>=4+W0:Ly@TI;Ռڋ\-\!} ^ 1)pW7دic gU`VKUKF˲ w> dd%*"OҴkLQecmI&p*!h:yuGZI,~t!T0Gec;CWb QJRXq?A`_%) s_H6=#j=]-?9vXN')Fb>tыj=Yf:B2z_GolRqSjl: p wr+9yX[XuC4 =Sr*cW=tX'ɓH#Z4ظK*0BLHnXSJ~dz=~Am>pnϫaHl@6î1\r 8ʀ |=B"(/͉532pPI3~19_d)* #Gq|}RL:_y&wa$_w uH?c`L SGJ^FdEhzZ WIWJ+&32ҏrĐ½WQ A2/|v]sMO"ŰNO 1wRΒ3ChԚà `JE-7lrq9(^vKVC$|\IU7և"G7:4a38lr?b07O"}KM٠/+>;ܤ=Jbؠ9m^F9w(%؈[JAvDdKgf2.dUh D2˓N*8dcsY`x꓃A 4^K0OJB0p-ӝJ׬ K]2.e MKH~fv?AS<3K'p0:!);Z[HP^w>rW Cv ;օ ;.'5#"[T/9/JD8E)""\R-<|?XiY1@FUX- ̙i: BjB¨} t9Xtm9u-sSҳ{g*+ 0h]N偾3;f?)/S&D&vk U*S\Nuf[aDkvT&Mɶ8zz^=vzZ+P2Gh5Y {bHzxi]Ql]A pF0~Hg~{C r 2OΣ9hE~O3G=Z.|is_3wc%hNqF94GguѢc'Y([t#GBjJPL,RR#"_'%RZJ(XrPkkT'it(q/ڟp]F T*%|0¦g%ELR\yt^9Q4 4X/JI!eb M+Ra(6KNWޟczMP s(E̥Z[ät;JyNgڡy0|!9''Ym IKn %vko`9 ?#|aoT'XjCjE<[QnBW͏$X5{@m"Z=:Ilsgct3ż(%Xqḅ 8- ;cM4Ė ncyg6 B|)yCjj0;˩͈o툡2AǙ{Oo&AW$L;)9<QbsR2XZ0Jd|؝dbȼɫp;hxT3}w雬"$V_rj0&׆Q05ya8K.fu #NlkVJ$ >AW(8ӇtEaXђ:, aͰQUVn3+5_B [t tH53bDu\mU9zūROs)͸u߰OQXf.B^- [rSk ;}EIhpLkC~B/?9&(6A~;] RE.F%Ѓl8.\g. /kK$ 9aFr˽0JP~1j/۔Cm9`"736;"V_hHEVԦP-ҁ~1j=;b]®cWOMn59ݴMJ٫h"5ټ0΍_WpY 4@n;9"c˻ĕZCiANpW3 9p&jz\'8=Ufai s,QEI"U[mvTg+X&h4"n7${_<"aKkJzwCl2O:SNa]%L3?b3&E7JdoPW/%c7:ֈ&Y2I6&REY$JT:8xuC\-!I6:0R2^~@xʆg :< rڐzң5vq^6,$L:ѡ8 V5Lg~>,,+&`=^I%&5]FE2n!Ng-&v-Y _/mЖZĻ pZ歡L2`A\Rέk&=/0*K=@y#w]a yK!Kv1JWBLT#_+^سSfL9lĂ|z[8w'T\0!TԸٗH`Nbl^P"s a;v_5 DA+;{7PR"7Zwp|Vsi8zVxʼ` #,ix(<}-}8bu ։XŮ>0Qmaih+y4 oiѴ8wcv !4*7LSv5/x+LxAO6dB)''Z`ALqxVt-\'nZƂgqr>yMo~Z҆3m}igԛvGXULmu=fo\+T>z%"ߖC)1ޘT7)' LY0#Po>O8`˯Uҹ{ *`7/6>e.h̙dHJ?ն߲0Ʒ)v F?z[tQ\5kÜ:H.Κ -<"8[~9/K0ho1dT"pO͂8]c*OtKE'pY]5@5lxR(#oqc[_`AG.-f b"Z Ա6c_kIle\i fDS,;'O&!™V vZ>p[h )By&0/>ib/Lϯn a<(噸:!yWY͏u)XB)GaKbjo4oBMQӭajFɲQ31vaYs#R@1. /1~>D\L'IS$b,mm0 04Ǖ Dq >Wt9dE.=5VS\ƓS T-LdR;녉]diEb (MApbr sʅV{ E:jkql"Sfd,]0F=&  -eNڅUVVMc-s@]٤T8H{FI۝aPIBwVdwgRjafVo, )*_y`hͧ#S!.2_.ɩ!BZ]bOⴱ Ǝ185[a+K)CɯÜi @33Ց`A[:O]!I PH< 6B:]p#{Gd9σF5&V*DW 9ѱ%@7wbg-R숫~JJQfrnYv0GlV؛ .s`n_g} ?:@5~4)״J[`x{Db%ktH`ӝrn Phl@7qN:ru8u/ }  wsCԃHo&Ӱ"i` jJA5%94 2_l2Ve_ Z5nRڬ ,y돁@LN[lS\OB>":>B JlbJ pҠnV-MT"T̋խ0fx }R{ŷ撹MSN*jF/J c>]E`PuM$xMrsBE |ΰHjYŅt @Q1'iTe>"}c|5SDʓ\=ev8%@@s4د]-[쓏Md̴8߁67z6Vbd^-sn=&>|i] QN ~9ϐ:u請usEһ<AtY:F92c7be#?|5$I'.ʔ t>/8-l !P?5>9 ~6I n+ +Hv(0CqG)V,M BhzHy):推r1@ݠc0bz:gur&j['/}fNyLuӛ[0c[mdbA"*uyJ7ZLA4*$3?o!?4(o ޞ5lͨi^PrLURR'";a:8H^:X^i6с}I+?fr]Y"x5X }QUou}|zN:%մS7\sھ`"ݡ*itd]i)X@Bobs `vox0qD9W|Q5?UADS,W f]!>x]P~9fȭF୥+2Pdsʑ;W3-4ퟕVE@R@D64s<GY6!oDN$2m D `VIL,)aE4}WС BVsK~OȨIJD%}|׆}q\1b&T?B 17l#뎟϶@H{IYVG t"E l{lE4.r {̥[Śry7DⲇhƮM4N1ni ԻI?Q~[-d[/9'߷g7lℌ ?8f*Slj`za߸-xy<КeCGܳ|{јjGWWSԴȐ6 GGlŕO7=\7Bې]1k9<`[rʞ`MX⑐Є<#'_2EI.Z.TFx4؊=H>D}V0aSjxC-D<*+1 K}Uq jPfqnlǪ/m+xp hG3߳OFSi+=SLHÞ ٭M-B_ -vF$f]Q:H$iW:~vs43_c>5QڣYk#BXQ[(_V eݾvWhmJ oYT!gQ=vB3Lͽݺ掴ZJ@s}̪D6mMys>_y%l2߻2qJoRԒGfd/FHD愵b9K%+[WP $ &eqyt%~[C3Y ֆAr"Y?^ G AS7?MZ*">5j1\vBoӥk-+1n *ِLR}Y3ZMȎhV,d̿]RP,v_13#eW#!8GO͒/[vi/̘0w|/Hmء㏿݅Ssڱc o 53]!2I.~luh~GL,fJ(LnSʯ1!}w־k(!#٧7t8ݻ{buZ͎.S? eMC/QH|55^+IZ盽N ,r;zLCbp}tv.crlݻ~&Q[w\&!lB#Wn#O5B C =s;fU+:̴W?%ѩ=E$~Ws^DC_]Esupޤ1&< "͢h)3彾6,O ռb^~X6a?=⸞WU{ppEHKi^%3FVEqx8FOFkRʭ}:[;f+/ #މVB_ vI´H"-"K}1=ҝ5ZP) ц`&= .i(2Ωρ[g#c}!oi#Y댢~hšo`A@NC9 c}TY$lqLuf.HGl?E]BɃhΧF!.cج 6KJ.vXnyk 80놰7xRQ#pODYElxtG䕲0v0[]X^]gGBP衃d^O/L'|v5Ԛ&RƖ&أt@#D }LryQ xp u.k4,MD!FrРh#Saŧ'e[3TZ(RJⲙV|knA5Ei{dVe峩w`TsXIq]1, \]?}p9j'ln{(%+nS(uaΖBK|VihyNc[7zjD|~gQz,$uKuK) )zi̘0i˒ȖpytϮ˂  nKF'{=TwV~x%KuR KJKF`}Q0s 5%ƴW눇^Qzm KMcu$]ǎ^_!+Bpl0C wy5 J=BL\Z f-Rsk0f HjJyzHj?wrxo3HR}xrW\+0B[Bs5pwW!r4G/ic4vˢW:b}_;.W>?hЅmHre{kNf'|(e> ΌU9(Ȱ$,\I(G9&dޥ=pCW"ZCS j _gݿ mL1!({jV 钏Uݟ47¾[2$hft`>ڏAH56XtFqK Y:*["4nD*x w|  cVf$bMc%Z)Z+d5>Nw$ˉOΓ?F7`LqHOq0jT%x%cjp0JqAA$%0|׹ُOu'#5r~$+1%S (ӲsAQCB#~VIQKipvEyYч)1[{NQ,A(\5JH ߮ G+~6$`&d ݨ@I)@]]۩<ǚ67NV[(3xZdVA0}$ N1 @@(Dp_o_zx>SN -H廷Yg JӊTwٖă^DR~`aXT8a}䭔cyNH+\BE|xC>|XK Ӎ-]fM. 7V_oAe"90b SJ)|#f 7+mWppkBi!}/1aTd |;49 fPwn=u"I)&:(|^&:h,y-mā&7 iz9kv@\ڛg xM0[e\ šIf(Y_s{a5ja jkdS0 WnZ& R/~)ev,TK)Cu>_xU%M)e[` MjUS0,#Te8.:T!U a-GYA2e:W[8sbQގF U +{9^O濡f+][A'TwW,c etOfTI)ܝ{I*?di$?&zv3v,cP ŅnkAh:pJ.3 uQzS%(w] Ա4M tm!Ϸgڠ'yؙZXS.k -זGh.r2 aԠ1U mwă,xZGnz0r86v:y7ǰEE*!"&9Y4:l>{_Ϫ+z; "|k^1Xqh.Gc`~x(&e=QD=-&-pgo˞wf8j5{3Tc\v3"e1\z Hͦ i0C9xWt#EBN C1=.Kji{A> a6){ n߆4Q2N/ ⫦k ߳7,gEB;sۥ-, w bWˢLL2zhT)p.o n`kyr R}+)x~;㮬s)ϘoqDtz&H*@"IHRS a"EOI"[e[8˪Q]TE=tSlВc+sLIt&Ԑ#XK8mr<dֲKs+L ;'-ris+ t!NdZe[? 0Na5?'3.~T"^eXIRϵ[}_4i<[hީt} KvmӚKz? 蠎vRWn1Rk}LҟQٵЋ-`#S>XH3ȊqDkB\݀h s0ˆPZm^g7#_H6{ %#9N3 cRhd.wHU%.ޛoFs"SdO!Vq4=jB^?KbDuUY~>kƭN(:{/gG^ס^a1%- ֐kSQ͍?eyJj, 3mi~AQ޲eEXhlaͽB$y9ÈVhbrto [-2%J4?oOY+I_k w!c6'V>w##bE.I3rNOPZ"$p73oEK!_JM;j*gis߯V<^kX q˾l1 $'@ =(YBV XLj]ގ B\7K6`~2tGh;FoɑR#a'&z>ƀ[v6ಶ`$L׏ KƲ>sU 0M\< R| L..)Fu|>S˯N9oێv틜jk.>k0 =bFSq5B9V'+I] :߻z<7dbxşPr} h ]"%0 x^x#. K>7àQhSsK³ز SH"oW TKPwo^!EwL.fv:"UBhiL&88ܔIRj4|OU\f|a w7 i)mcUCF*x!sW]e65[>>!MmJ%{:3 pV`$;Z־uP1dFUx:0&k.ۜHyI |M(er[һN"(!e }e& ;nhD1~g/_0_5rv(x~1 ʋBdKa޹s:&o#sw3qcpdc1D=K=[XF՝wg Gvub$-1.-g!HԻtF\Жs^iV MnU} o:γiXaA#IZ"R:<} =*9)㠐^&_?ߏ4™O ZYD :=օw%jVfŠCjL++]}$'Ɗk+Q}E?+fh9RYyFUb(Qzzgj;Jޢ;1kvHuCbs襃#%la9Tp|w }K4 В~$~zsq&ːCK'ƞȫ9!:D{6 ئVx:e| <4Ү{EhJ2"ыvYÐ.G~$H輍/G숈™ۺ{, ~#tެa(( UI~QF[t5jZK$g'*[vڐPi\szA@ʖX6+_eCɉ DddW*G.ĥur?DVKf{QYS5|COxIȒxQw+v YtK6W Npm?I{A2h$'N8e +C^ Y/_M6׹X1A8p?tթw>֏C?o t: Zg q]ilLTB[6blFpXLKL:.9)tpз' @~4^k eH]Z% [3߷;lKB] P!tzA`u5)s}LXPq<'r - oT@^J(G)bLMݼl *V0VCg`qZfEZ##jg73vʢ3j"ꀩL6i6lHڈj@XTT=](iIoMI?:6:VYw~rRI\AK)_QTY&ܭ8 hfmrGuWI:IbhU;TLAlkrg;[#זa H&UI6P JV/q[?լw[Ҁ"IqQW2=BK+YsmY-RQ@w.1>1JT_aDDN2UB&okD8aٜ'C'zY rA *Ƚ 92fs4̡r>dУGѧ֫?NG#<&% ^D {K/wɫ֛y!Њ;v4 B%UH9\ϒ[w!^~Nb,!aAX=άKHI0QX3ȁ—|ܿ| YZ