From 50121909aa3d46f8ef8adae77b31fc34443c9881 Mon Sep 17 00:00:00 2001 From: Jack Grigg Date: Tue, 7 Jun 2016 22:32:46 +1200 Subject: [PATCH] Update tests to account for reserved field --- src/test/bloom_tests.cpp | 16 +-- src/test/miner_tests.cpp | 233 ++++++++++++++++++++------------------- 2 files changed, 125 insertions(+), 124 deletions(-) diff --git a/src/test/bloom_tests.cpp b/src/test/bloom_tests.cpp index 70e2d8e13..e99f99226 100644 --- a/src/test/bloom_tests.cpp +++ b/src/test/bloom_tests.cpp @@ -187,7 +187,7 @@ BOOST_AUTO_TEST_CASE(merkle_block_1) // Random real block (0000000000013b8ab2cd513b0261a14096412195a72a0c4827d229dcc7e0f7af) // With 9 txes CBlock block; - CDataStream stream(ParseHex("0100000090f0a9f110702f808219ebea1173056042a714bad51b916cb6800000000000005275289558f51c9966699404ae2294730c3c9f9bda53523ce50e9b95e558da2fdb261b4d4c86041b000000000000000000000000000000000000000000000000000000001ab1bf93000901000000010000000000000000000000000000000000000000000000000000000000000000ffffffff07044c86041b0146ffffffff0100f2052a01000000434104e18f7afbe4721580e81e8414fc8c24d7cfacf254bb5c7b949450c3e997c2dc1242487a8169507b631eb3771f2b425483fb13102c4eb5d858eef260fe70fbfae0ac00000000010000000196608ccbafa16abada902780da4dc35dafd7af05fa0da08cf833575f8cf9e836000000004a493046022100dab24889213caf43ae6adc41cf1c9396c08240c199f5225acf45416330fd7dbd022100fe37900e0644bf574493a07fc5edba06dbc07c311b947520c2d514bc5725dcb401ffffffff0100f2052a010000001976a914f15d1921f52e4007b146dfa60f369ed2fc393ce288ac000000000100000001fb766c1288458c2bafcfec81e48b24d98ec706de6b8af7c4e3c29419bfacb56d000000008c493046022100f268ba165ce0ad2e6d93f089cfcd3785de5c963bb5ea6b8c1b23f1ce3e517b9f022100da7c0f21adc6c401887f2bfd1922f11d76159cbc597fbd756a23dcbb00f4d7290141042b4e8625a96127826915a5b109852636ad0da753c9e1d5606a50480cd0c40f1f8b8d898235e571fe9357d9ec842bc4bba1827daaf4de06d71844d0057707966affffffff0280969800000000001976a9146963907531db72d0ed1a0cfb471ccb63923446f388ac80d6e34c000000001976a914f0688ba1c0d1ce182c7af6741e02658c7d4dfcd388ac000000000100000002c40297f730dd7b5a99567eb8d27b78758f607507c52292d02d4031895b52f2ff010000008b483045022100f7edfd4b0aac404e5bab4fd3889e0c6c41aa8d0e6fa122316f68eddd0a65013902205b09cc8b2d56e1cd1f7f2fafd60a129ed94504c4ac7bdc67b56fe67512658b3e014104732012cb962afa90d31b25d8fb0e32c94e513ab7a17805c14ca4c3423e18b4fb5d0e676841733cb83abaf975845c9f6f2a8097b7d04f4908b18368d6fc2d68ecffffffffca5065ff9617cbcba45eb23726df6498a9b9cafed4f54cbab9d227b0035ddefb000000008a473044022068010362a13c7f9919fa832b2dee4e788f61f6f5d344a7c2a0da6ae740605658022006d1af525b9a14a35c003b78b72bd59738cd676f845d1ff3fc25049e01003614014104732012cb962afa90d31b25d8fb0e32c94e513ab7a17805c14ca4c3423e18b4fb5d0e676841733cb83abaf975845c9f6f2a8097b7d04f4908b18368d6fc2d68ecffffffff01001ec4110200000043410469ab4181eceb28985b9b4e895c13fa5e68d85761b7eee311db5addef76fa8621865134a221bd01f28ec9999ee3e021e60766e9d1f3458c115fb28650605f11c9ac000000000100000001cdaf2f758e91c514655e2dc50633d1e4c84989f8aa90a0dbc883f0d23ed5c2fa010000008b48304502207ab51be6f12a1962ba0aaaf24a20e0b69b27a94fac5adf45aa7d2d18ffd9236102210086ae728b370e5329eead9accd880d0cb070aea0c96255fae6c4f1ddcce1fd56e014104462e76fd4067b3a0aa42070082dcb0bf2f388b6495cf33d789904f07d0f55c40fbd4b82963c69b3dc31895d0c772c812b1d5fbcade15312ef1c0e8ebbb12dcd4ffffffff02404b4c00000000001976a9142b6ba7c9d796b75eef7942fc9288edd37c32f5c388ac002d3101000000001976a9141befba0cdc1ad56529371864d9f6cb042faa06b588ac000000000100000001b4a47603e71b61bc3326efd90111bf02d2f549b067f4c4a8fa183b57a0f800cb010000008a4730440220177c37f9a505c3f1a1f0ce2da777c339bd8339ffa02c7cb41f0a5804f473c9230220585b25a2ee80eb59292e52b987dad92acb0c64eced92ed9ee105ad153cdb12d001410443bd44f683467e549dae7d20d1d79cbdb6df985c6e9c029c8d0c6cb46cc1a4d3cf7923c5021b27f7a0b562ada113bc85d5fda5a1b41e87fe6e8802817cf69996ffffffff0280651406000000001976a9145505614859643ab7b547cd7f1f5e7e2a12322d3788ac00aa0271000000001976a914ea4720a7a52fc166c55ff2298e07baf70ae67e1b88ac00000000010000000586c62cd602d219bb60edb14a3e204de0705176f9022fe49a538054fb14abb49e010000008c493046022100f2bc2aba2534becbdf062eb993853a42bbbc282083d0daf9b4b585bd401aa8c9022100b1d7fd7ee0b95600db8535bbf331b19eed8d961f7a8e54159c53675d5f69df8c014104462e76fd4067b3a0aa42070082dcb0bf2f388b6495cf33d789904f07d0f55c40fbd4b82963c69b3dc31895d0c772c812b1d5fbcade15312ef1c0e8ebbb12dcd4ffffffff03ad0e58ccdac3df9dc28a218bcf6f1997b0a93306faaa4b3a28ae83447b2179010000008b483045022100be12b2937179da88599e27bb31c3525097a07cdb52422d165b3ca2f2020ffcf702200971b51f853a53d644ebae9ec8f3512e442b1bcb6c315a5b491d119d10624c83014104462e76fd4067b3a0aa42070082dcb0bf2f388b6495cf33d789904f07d0f55c40fbd4b82963c69b3dc31895d0c772c812b1d5fbcade15312ef1c0e8ebbb12dcd4ffffffff2acfcab629bbc8685792603762c921580030ba144af553d271716a95089e107b010000008b483045022100fa579a840ac258871365dd48cd7552f96c8eea69bd00d84f05b283a0dab311e102207e3c0ee9234814cfbb1b659b83671618f45abc1326b9edcc77d552a4f2a805c0014104462e76fd4067b3a0aa42070082dcb0bf2f388b6495cf33d789904f07d0f55c40fbd4b82963c69b3dc31895d0c772c812b1d5fbcade15312ef1c0e8ebbb12dcd4ffffffffdcdc6023bbc9944a658ddc588e61eacb737ddf0a3cd24f113b5a8634c517fcd2000000008b4830450221008d6df731df5d32267954bd7d2dda2302b74c6c2a6aa5c0ca64ecbabc1af03c75022010e55c571d65da7701ae2da1956c442df81bbf076cdbac25133f99d98a9ed34c014104462e76fd4067b3a0aa42070082dcb0bf2f388b6495cf33d789904f07d0f55c40fbd4b82963c69b3dc31895d0c772c812b1d5fbcade15312ef1c0e8ebbb12dcd4ffffffffe15557cd5ce258f479dfd6dc6514edf6d7ed5b21fcfa4a038fd69f06b83ac76e010000008b483045022023b3e0ab071eb11de2eb1cc3a67261b866f86bf6867d4558165f7c8c8aca2d86022100dc6e1f53a91de3efe8f63512850811f26284b62f850c70ca73ed5de8771fb451014104462e76fd4067b3a0aa42070082dcb0bf2f388b6495cf33d789904f07d0f55c40fbd4b82963c69b3dc31895d0c772c812b1d5fbcade15312ef1c0e8ebbb12dcd4ffffffff01404b4c00000000001976a9142b6ba7c9d796b75eef7942fc9288edd37c32f5c388ac00000000010000000166d7577163c932b4f9690ca6a80b6e4eb001f0a2fa9023df5595602aae96ed8d000000008a4730440220262b42546302dfb654a229cefc86432b89628ff259dc87edd1154535b16a67e102207b4634c020a97c3e7bbd0d4d19da6aa2269ad9dded4026e896b213d73ca4b63f014104979b82d02226b3a4597523845754d44f13639e3bf2df5e82c6aab2bdc79687368b01b1ab8b19875ae3c90d661a3d0a33161dab29934edeb36aa01976be3baf8affffffff02404b4c00000000001976a9144854e695a02af0aeacb823ccbc272134561e0a1688ac40420f00000000001976a914abee93376d6b37b5c2940655a6fcaf1c8e74237988ac0000000001000000014e3f8ef2e91349a9059cb4f01e54ab2597c1387161d3da89919f7ea6acdbb371010000008c49304602210081f3183471a5ca22307c0800226f3ef9c353069e0773ac76bb580654d56aa523022100d4c56465bdc069060846f4fbf2f6b20520b2a80b08b168b31e66ddb9c694e240014104976c79848e18251612f8940875b2b08d06e6dc73b9840e8860c066b7e87432c477e9a59a453e71e6d76d5fe34058b800a098fc1740ce3012e8fc8a00c96af966ffffffff02c0e1e400000000001976a9144134e75a6fcb6042034aab5e18570cf1f844f54788ac404b4c00000000001976a9142b6ba7c9d796b75eef7942fc9288edd37c32f5c388ac00000000"), SER_NETWORK, PROTOCOL_VERSION); + CDataStream stream(ParseHex("0100000090f0a9f110702f808219ebea1173056042a714bad51b916cb6800000000000005275289558f51c9966699404ae2294730c3c9f9bda53523ce50e9b95e558da2fdb261b4d4c86041b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001ab1bf93000901000000010000000000000000000000000000000000000000000000000000000000000000ffffffff07044c86041b0146ffffffff0100f2052a01000000434104e18f7afbe4721580e81e8414fc8c24d7cfacf254bb5c7b949450c3e997c2dc1242487a8169507b631eb3771f2b425483fb13102c4eb5d858eef260fe70fbfae0ac00000000010000000196608ccbafa16abada902780da4dc35dafd7af05fa0da08cf833575f8cf9e836000000004a493046022100dab24889213caf43ae6adc41cf1c9396c08240c199f5225acf45416330fd7dbd022100fe37900e0644bf574493a07fc5edba06dbc07c311b947520c2d514bc5725dcb401ffffffff0100f2052a010000001976a914f15d1921f52e4007b146dfa60f369ed2fc393ce288ac000000000100000001fb766c1288458c2bafcfec81e48b24d98ec706de6b8af7c4e3c29419bfacb56d000000008c493046022100f268ba165ce0ad2e6d93f089cfcd3785de5c963bb5ea6b8c1b23f1ce3e517b9f022100da7c0f21adc6c401887f2bfd1922f11d76159cbc597fbd756a23dcbb00f4d7290141042b4e8625a96127826915a5b109852636ad0da753c9e1d5606a50480cd0c40f1f8b8d898235e571fe9357d9ec842bc4bba1827daaf4de06d71844d0057707966affffffff0280969800000000001976a9146963907531db72d0ed1a0cfb471ccb63923446f388ac80d6e34c000000001976a914f0688ba1c0d1ce182c7af6741e02658c7d4dfcd388ac000000000100000002c40297f730dd7b5a99567eb8d27b78758f607507c52292d02d4031895b52f2ff010000008b483045022100f7edfd4b0aac404e5bab4fd3889e0c6c41aa8d0e6fa122316f68eddd0a65013902205b09cc8b2d56e1cd1f7f2fafd60a129ed94504c4ac7bdc67b56fe67512658b3e014104732012cb962afa90d31b25d8fb0e32c94e513ab7a17805c14ca4c3423e18b4fb5d0e676841733cb83abaf975845c9f6f2a8097b7d04f4908b18368d6fc2d68ecffffffffca5065ff9617cbcba45eb23726df6498a9b9cafed4f54cbab9d227b0035ddefb000000008a473044022068010362a13c7f9919fa832b2dee4e788f61f6f5d344a7c2a0da6ae740605658022006d1af525b9a14a35c003b78b72bd59738cd676f845d1ff3fc25049e01003614014104732012cb962afa90d31b25d8fb0e32c94e513ab7a17805c14ca4c3423e18b4fb5d0e676841733cb83abaf975845c9f6f2a8097b7d04f4908b18368d6fc2d68ecffffffff01001ec4110200000043410469ab4181eceb28985b9b4e895c13fa5e68d85761b7eee311db5addef76fa8621865134a221bd01f28ec9999ee3e021e60766e9d1f3458c115fb28650605f11c9ac000000000100000001cdaf2f758e91c514655e2dc50633d1e4c84989f8aa90a0dbc883f0d23ed5c2fa010000008b48304502207ab51be6f12a1962ba0aaaf24a20e0b69b27a94fac5adf45aa7d2d18ffd9236102210086ae728b370e5329eead9accd880d0cb070aea0c96255fae6c4f1ddcce1fd56e014104462e76fd4067b3a0aa42070082dcb0bf2f388b6495cf33d789904f07d0f55c40fbd4b82963c69b3dc31895d0c772c812b1d5fbcade15312ef1c0e8ebbb12dcd4ffffffff02404b4c00000000001976a9142b6ba7c9d796b75eef7942fc9288edd37c32f5c388ac002d3101000000001976a9141befba0cdc1ad56529371864d9f6cb042faa06b588ac000000000100000001b4a47603e71b61bc3326efd90111bf02d2f549b067f4c4a8fa183b57a0f800cb010000008a4730440220177c37f9a505c3f1a1f0ce2da777c339bd8339ffa02c7cb41f0a5804f473c9230220585b25a2ee80eb59292e52b987dad92acb0c64eced92ed9ee105ad153cdb12d001410443bd44f683467e549dae7d20d1d79cbdb6df985c6e9c029c8d0c6cb46cc1a4d3cf7923c5021b27f7a0b562ada113bc85d5fda5a1b41e87fe6e8802817cf69996ffffffff0280651406000000001976a9145505614859643ab7b547cd7f1f5e7e2a12322d3788ac00aa0271000000001976a914ea4720a7a52fc166c55ff2298e07baf70ae67e1b88ac00000000010000000586c62cd602d219bb60edb14a3e204de0705176f9022fe49a538054fb14abb49e010000008c493046022100f2bc2aba2534becbdf062eb993853a42bbbc282083d0daf9b4b585bd401aa8c9022100b1d7fd7ee0b95600db8535bbf331b19eed8d961f7a8e54159c53675d5f69df8c014104462e76fd4067b3a0aa42070082dcb0bf2f388b6495cf33d789904f07d0f55c40fbd4b82963c69b3dc31895d0c772c812b1d5fbcade15312ef1c0e8ebbb12dcd4ffffffff03ad0e58ccdac3df9dc28a218bcf6f1997b0a93306faaa4b3a28ae83447b2179010000008b483045022100be12b2937179da88599e27bb31c3525097a07cdb52422d165b3ca2f2020ffcf702200971b51f853a53d644ebae9ec8f3512e442b1bcb6c315a5b491d119d10624c83014104462e76fd4067b3a0aa42070082dcb0bf2f388b6495cf33d789904f07d0f55c40fbd4b82963c69b3dc31895d0c772c812b1d5fbcade15312ef1c0e8ebbb12dcd4ffffffff2acfcab629bbc8685792603762c921580030ba144af553d271716a95089e107b010000008b483045022100fa579a840ac258871365dd48cd7552f96c8eea69bd00d84f05b283a0dab311e102207e3c0ee9234814cfbb1b659b83671618f45abc1326b9edcc77d552a4f2a805c0014104462e76fd4067b3a0aa42070082dcb0bf2f388b6495cf33d789904f07d0f55c40fbd4b82963c69b3dc31895d0c772c812b1d5fbcade15312ef1c0e8ebbb12dcd4ffffffffdcdc6023bbc9944a658ddc588e61eacb737ddf0a3cd24f113b5a8634c517fcd2000000008b4830450221008d6df731df5d32267954bd7d2dda2302b74c6c2a6aa5c0ca64ecbabc1af03c75022010e55c571d65da7701ae2da1956c442df81bbf076cdbac25133f99d98a9ed34c014104462e76fd4067b3a0aa42070082dcb0bf2f388b6495cf33d789904f07d0f55c40fbd4b82963c69b3dc31895d0c772c812b1d5fbcade15312ef1c0e8ebbb12dcd4ffffffffe15557cd5ce258f479dfd6dc6514edf6d7ed5b21fcfa4a038fd69f06b83ac76e010000008b483045022023b3e0ab071eb11de2eb1cc3a67261b866f86bf6867d4558165f7c8c8aca2d86022100dc6e1f53a91de3efe8f63512850811f26284b62f850c70ca73ed5de8771fb451014104462e76fd4067b3a0aa42070082dcb0bf2f388b6495cf33d789904f07d0f55c40fbd4b82963c69b3dc31895d0c772c812b1d5fbcade15312ef1c0e8ebbb12dcd4ffffffff01404b4c00000000001976a9142b6ba7c9d796b75eef7942fc9288edd37c32f5c388ac00000000010000000166d7577163c932b4f9690ca6a80b6e4eb001f0a2fa9023df5595602aae96ed8d000000008a4730440220262b42546302dfb654a229cefc86432b89628ff259dc87edd1154535b16a67e102207b4634c020a97c3e7bbd0d4d19da6aa2269ad9dded4026e896b213d73ca4b63f014104979b82d02226b3a4597523845754d44f13639e3bf2df5e82c6aab2bdc79687368b01b1ab8b19875ae3c90d661a3d0a33161dab29934edeb36aa01976be3baf8affffffff02404b4c00000000001976a9144854e695a02af0aeacb823ccbc272134561e0a1688ac40420f00000000001976a914abee93376d6b37b5c2940655a6fcaf1c8e74237988ac0000000001000000014e3f8ef2e91349a9059cb4f01e54ab2597c1387161d3da89919f7ea6acdbb371010000008c49304602210081f3183471a5ca22307c0800226f3ef9c353069e0773ac76bb580654d56aa523022100d4c56465bdc069060846f4fbf2f6b20520b2a80b08b168b31e66ddb9c694e240014104976c79848e18251612f8940875b2b08d06e6dc73b9840e8860c066b7e87432c477e9a59a453e71e6d76d5fe34058b800a098fc1740ce3012e8fc8a00c96af966ffffffff02c0e1e400000000001976a9144134e75a6fcb6042034aab5e18570cf1f844f54788ac404b4c00000000001976a9142b6ba7c9d796b75eef7942fc9288edd37c32f5c388ac00000000"), SER_NETWORK, PROTOCOL_VERSION); stream >> block; CBloomFilter filter(10, 0.000001, 0, BLOOM_UPDATE_ALL); @@ -232,7 +232,7 @@ BOOST_AUTO_TEST_CASE(merkle_block_2) // Random real block (000000005a4ded781e667e06ceefafb71410b511fe0d5adc3e5a27ecbec34ae6) // With 4 txes CBlock block; - CDataStream stream(ParseHex("0100000075616236cc2126035fadb38deb65b9102cc2c41c09cdf29fc051906800000000fe7d5e12ef0ff901f6050211249919b1c0653771832b3a80c66cea42847f0ae1d4d26e49ffff001d0000000000000000000000000000000000000000000000000000000000f0a441000401000000010000000000000000000000000000000000000000000000000000000000000000ffffffff0804ffff001d029105ffffffff0100f2052a010000004341046d8709a041d34357697dfcb30a9d05900a6294078012bf3bb09c6f9b525f1d16d5503d7905db1ada9501446ea00728668fc5719aa80be2fdfc8a858a4dbdd4fbac00000000010000000255605dc6f5c3dc148b6da58442b0b2cd422be385eab2ebea4119ee9c268d28350000000049483045022100aa46504baa86df8a33b1192b1b9367b4d729dc41e389f2c04f3e5c7f0559aae702205e82253a54bf5c4f65b7428551554b2045167d6d206dfe6a2e198127d3f7df1501ffffffff55605dc6f5c3dc148b6da58442b0b2cd422be385eab2ebea4119ee9c268d2835010000004847304402202329484c35fa9d6bb32a55a70c0982f606ce0e3634b69006138683bcd12cbb6602200c28feb1e2555c3210f1dddb299738b4ff8bbe9667b68cb8764b5ac17b7adf0001ffffffff0200e1f505000000004341046a0765b5865641ce08dd39690aade26dfbf5511430ca428a3089261361cef170e3929a68aee3d8d4848b0c5111b0a37b82b86ad559fd2a745b44d8e8d9dfdc0cac00180d8f000000004341044a656f065871a353f216ca26cef8dde2f03e8c16202d2e8ad769f02032cb86a5eb5e56842e92e19141d60a01928f8dd2c875a390f67c1f6c94cfc617c0ea45afac0000000001000000025f9a06d3acdceb56be1bfeaa3e8a25e62d182fa24fefe899d1c17f1dad4c2028000000004847304402205d6058484157235b06028c30736c15613a28bdb768ee628094ca8b0030d4d6eb0220328789c9a2ec27ddaec0ad5ef58efded42e6ea17c2e1ce838f3d6913f5e95db601ffffffff5f9a06d3acdceb56be1bfeaa3e8a25e62d182fa24fefe899d1c17f1dad4c2028010000004a493046022100c45af050d3cea806cedd0ab22520c53ebe63b987b8954146cdca42487b84bdd6022100b9b027716a6b59e640da50a864d6dd8a0ef24c76ce62391fa3eabaf4d2886d2d01ffffffff0200e1f505000000004341046a0765b5865641ce08dd39690aade26dfbf5511430ca428a3089261361cef170e3929a68aee3d8d4848b0c5111b0a37b82b86ad559fd2a745b44d8e8d9dfdc0cac00180d8f000000004341046a0765b5865641ce08dd39690aade26dfbf5511430ca428a3089261361cef170e3929a68aee3d8d4848b0c5111b0a37b82b86ad559fd2a745b44d8e8d9dfdc0cac000000000100000002e2274e5fea1bf29d963914bd301aa63b64daaf8a3e88f119b5046ca5738a0f6b0000000048473044022016e7a727a061ea2254a6c358376aaa617ac537eb836c77d646ebda4c748aac8b0220192ce28bf9f2c06a6467e6531e27648d2b3e2e2bae85159c9242939840295ba501ffffffffe2274e5fea1bf29d963914bd301aa63b64daaf8a3e88f119b5046ca5738a0f6b010000004a493046022100b7a1a755588d4190118936e15cd217d133b0e4a53c3c15924010d5648d8925c9022100aaef031874db2114f2d869ac2de4ae53908fbfea5b2b1862e181626bb9005c9f01ffffffff0200e1f505000000004341044a656f065871a353f216ca26cef8dde2f03e8c16202d2e8ad769f02032cb86a5eb5e56842e92e19141d60a01928f8dd2c875a390f67c1f6c94cfc617c0ea45afac00180d8f000000004341046a0765b5865641ce08dd39690aade26dfbf5511430ca428a3089261361cef170e3929a68aee3d8d4848b0c5111b0a37b82b86ad559fd2a745b44d8e8d9dfdc0cac00000000"), SER_NETWORK, PROTOCOL_VERSION); + CDataStream stream(ParseHex("0100000075616236cc2126035fadb38deb65b9102cc2c41c09cdf29fc051906800000000fe7d5e12ef0ff901f6050211249919b1c0653771832b3a80c66cea42847f0ae1d4d26e49ffff001d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f0a441000401000000010000000000000000000000000000000000000000000000000000000000000000ffffffff0804ffff001d029105ffffffff0100f2052a010000004341046d8709a041d34357697dfcb30a9d05900a6294078012bf3bb09c6f9b525f1d16d5503d7905db1ada9501446ea00728668fc5719aa80be2fdfc8a858a4dbdd4fbac00000000010000000255605dc6f5c3dc148b6da58442b0b2cd422be385eab2ebea4119ee9c268d28350000000049483045022100aa46504baa86df8a33b1192b1b9367b4d729dc41e389f2c04f3e5c7f0559aae702205e82253a54bf5c4f65b7428551554b2045167d6d206dfe6a2e198127d3f7df1501ffffffff55605dc6f5c3dc148b6da58442b0b2cd422be385eab2ebea4119ee9c268d2835010000004847304402202329484c35fa9d6bb32a55a70c0982f606ce0e3634b69006138683bcd12cbb6602200c28feb1e2555c3210f1dddb299738b4ff8bbe9667b68cb8764b5ac17b7adf0001ffffffff0200e1f505000000004341046a0765b5865641ce08dd39690aade26dfbf5511430ca428a3089261361cef170e3929a68aee3d8d4848b0c5111b0a37b82b86ad559fd2a745b44d8e8d9dfdc0cac00180d8f000000004341044a656f065871a353f216ca26cef8dde2f03e8c16202d2e8ad769f02032cb86a5eb5e56842e92e19141d60a01928f8dd2c875a390f67c1f6c94cfc617c0ea45afac0000000001000000025f9a06d3acdceb56be1bfeaa3e8a25e62d182fa24fefe899d1c17f1dad4c2028000000004847304402205d6058484157235b06028c30736c15613a28bdb768ee628094ca8b0030d4d6eb0220328789c9a2ec27ddaec0ad5ef58efded42e6ea17c2e1ce838f3d6913f5e95db601ffffffff5f9a06d3acdceb56be1bfeaa3e8a25e62d182fa24fefe899d1c17f1dad4c2028010000004a493046022100c45af050d3cea806cedd0ab22520c53ebe63b987b8954146cdca42487b84bdd6022100b9b027716a6b59e640da50a864d6dd8a0ef24c76ce62391fa3eabaf4d2886d2d01ffffffff0200e1f505000000004341046a0765b5865641ce08dd39690aade26dfbf5511430ca428a3089261361cef170e3929a68aee3d8d4848b0c5111b0a37b82b86ad559fd2a745b44d8e8d9dfdc0cac00180d8f000000004341046a0765b5865641ce08dd39690aade26dfbf5511430ca428a3089261361cef170e3929a68aee3d8d4848b0c5111b0a37b82b86ad559fd2a745b44d8e8d9dfdc0cac000000000100000002e2274e5fea1bf29d963914bd301aa63b64daaf8a3e88f119b5046ca5738a0f6b0000000048473044022016e7a727a061ea2254a6c358376aaa617ac537eb836c77d646ebda4c748aac8b0220192ce28bf9f2c06a6467e6531e27648d2b3e2e2bae85159c9242939840295ba501ffffffffe2274e5fea1bf29d963914bd301aa63b64daaf8a3e88f119b5046ca5738a0f6b010000004a493046022100b7a1a755588d4190118936e15cd217d133b0e4a53c3c15924010d5648d8925c9022100aaef031874db2114f2d869ac2de4ae53908fbfea5b2b1862e181626bb9005c9f01ffffffff0200e1f505000000004341044a656f065871a353f216ca26cef8dde2f03e8c16202d2e8ad769f02032cb86a5eb5e56842e92e19141d60a01928f8dd2c875a390f67c1f6c94cfc617c0ea45afac00180d8f000000004341046a0765b5865641ce08dd39690aade26dfbf5511430ca428a3089261361cef170e3929a68aee3d8d4848b0c5111b0a37b82b86ad559fd2a745b44d8e8d9dfdc0cac00000000"), SER_NETWORK, PROTOCOL_VERSION); stream >> block; CBloomFilter filter(10, 0.000001, 0, BLOOM_UPDATE_ALL); @@ -286,7 +286,7 @@ BOOST_AUTO_TEST_CASE(merkle_block_2_with_update_none) // Random real block (000000005a4ded781e667e06ceefafb71410b511fe0d5adc3e5a27ecbec34ae6) // With 4 txes CBlock block; - CDataStream stream(ParseHex("0100000075616236cc2126035fadb38deb65b9102cc2c41c09cdf29fc051906800000000fe7d5e12ef0ff901f6050211249919b1c0653771832b3a80c66cea42847f0ae1d4d26e49ffff001d0000000000000000000000000000000000000000000000000000000000f0a441000401000000010000000000000000000000000000000000000000000000000000000000000000ffffffff0804ffff001d029105ffffffff0100f2052a010000004341046d8709a041d34357697dfcb30a9d05900a6294078012bf3bb09c6f9b525f1d16d5503d7905db1ada9501446ea00728668fc5719aa80be2fdfc8a858a4dbdd4fbac00000000010000000255605dc6f5c3dc148b6da58442b0b2cd422be385eab2ebea4119ee9c268d28350000000049483045022100aa46504baa86df8a33b1192b1b9367b4d729dc41e389f2c04f3e5c7f0559aae702205e82253a54bf5c4f65b7428551554b2045167d6d206dfe6a2e198127d3f7df1501ffffffff55605dc6f5c3dc148b6da58442b0b2cd422be385eab2ebea4119ee9c268d2835010000004847304402202329484c35fa9d6bb32a55a70c0982f606ce0e3634b69006138683bcd12cbb6602200c28feb1e2555c3210f1dddb299738b4ff8bbe9667b68cb8764b5ac17b7adf0001ffffffff0200e1f505000000004341046a0765b5865641ce08dd39690aade26dfbf5511430ca428a3089261361cef170e3929a68aee3d8d4848b0c5111b0a37b82b86ad559fd2a745b44d8e8d9dfdc0cac00180d8f000000004341044a656f065871a353f216ca26cef8dde2f03e8c16202d2e8ad769f02032cb86a5eb5e56842e92e19141d60a01928f8dd2c875a390f67c1f6c94cfc617c0ea45afac0000000001000000025f9a06d3acdceb56be1bfeaa3e8a25e62d182fa24fefe899d1c17f1dad4c2028000000004847304402205d6058484157235b06028c30736c15613a28bdb768ee628094ca8b0030d4d6eb0220328789c9a2ec27ddaec0ad5ef58efded42e6ea17c2e1ce838f3d6913f5e95db601ffffffff5f9a06d3acdceb56be1bfeaa3e8a25e62d182fa24fefe899d1c17f1dad4c2028010000004a493046022100c45af050d3cea806cedd0ab22520c53ebe63b987b8954146cdca42487b84bdd6022100b9b027716a6b59e640da50a864d6dd8a0ef24c76ce62391fa3eabaf4d2886d2d01ffffffff0200e1f505000000004341046a0765b5865641ce08dd39690aade26dfbf5511430ca428a3089261361cef170e3929a68aee3d8d4848b0c5111b0a37b82b86ad559fd2a745b44d8e8d9dfdc0cac00180d8f000000004341046a0765b5865641ce08dd39690aade26dfbf5511430ca428a3089261361cef170e3929a68aee3d8d4848b0c5111b0a37b82b86ad559fd2a745b44d8e8d9dfdc0cac000000000100000002e2274e5fea1bf29d963914bd301aa63b64daaf8a3e88f119b5046ca5738a0f6b0000000048473044022016e7a727a061ea2254a6c358376aaa617ac537eb836c77d646ebda4c748aac8b0220192ce28bf9f2c06a6467e6531e27648d2b3e2e2bae85159c9242939840295ba501ffffffffe2274e5fea1bf29d963914bd301aa63b64daaf8a3e88f119b5046ca5738a0f6b010000004a493046022100b7a1a755588d4190118936e15cd217d133b0e4a53c3c15924010d5648d8925c9022100aaef031874db2114f2d869ac2de4ae53908fbfea5b2b1862e181626bb9005c9f01ffffffff0200e1f505000000004341044a656f065871a353f216ca26cef8dde2f03e8c16202d2e8ad769f02032cb86a5eb5e56842e92e19141d60a01928f8dd2c875a390f67c1f6c94cfc617c0ea45afac00180d8f000000004341046a0765b5865641ce08dd39690aade26dfbf5511430ca428a3089261361cef170e3929a68aee3d8d4848b0c5111b0a37b82b86ad559fd2a745b44d8e8d9dfdc0cac00000000"), SER_NETWORK, PROTOCOL_VERSION); + CDataStream stream(ParseHex("0100000075616236cc2126035fadb38deb65b9102cc2c41c09cdf29fc051906800000000fe7d5e12ef0ff901f6050211249919b1c0653771832b3a80c66cea42847f0ae1d4d26e49ffff001d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f0a441000401000000010000000000000000000000000000000000000000000000000000000000000000ffffffff0804ffff001d029105ffffffff0100f2052a010000004341046d8709a041d34357697dfcb30a9d05900a6294078012bf3bb09c6f9b525f1d16d5503d7905db1ada9501446ea00728668fc5719aa80be2fdfc8a858a4dbdd4fbac00000000010000000255605dc6f5c3dc148b6da58442b0b2cd422be385eab2ebea4119ee9c268d28350000000049483045022100aa46504baa86df8a33b1192b1b9367b4d729dc41e389f2c04f3e5c7f0559aae702205e82253a54bf5c4f65b7428551554b2045167d6d206dfe6a2e198127d3f7df1501ffffffff55605dc6f5c3dc148b6da58442b0b2cd422be385eab2ebea4119ee9c268d2835010000004847304402202329484c35fa9d6bb32a55a70c0982f606ce0e3634b69006138683bcd12cbb6602200c28feb1e2555c3210f1dddb299738b4ff8bbe9667b68cb8764b5ac17b7adf0001ffffffff0200e1f505000000004341046a0765b5865641ce08dd39690aade26dfbf5511430ca428a3089261361cef170e3929a68aee3d8d4848b0c5111b0a37b82b86ad559fd2a745b44d8e8d9dfdc0cac00180d8f000000004341044a656f065871a353f216ca26cef8dde2f03e8c16202d2e8ad769f02032cb86a5eb5e56842e92e19141d60a01928f8dd2c875a390f67c1f6c94cfc617c0ea45afac0000000001000000025f9a06d3acdceb56be1bfeaa3e8a25e62d182fa24fefe899d1c17f1dad4c2028000000004847304402205d6058484157235b06028c30736c15613a28bdb768ee628094ca8b0030d4d6eb0220328789c9a2ec27ddaec0ad5ef58efded42e6ea17c2e1ce838f3d6913f5e95db601ffffffff5f9a06d3acdceb56be1bfeaa3e8a25e62d182fa24fefe899d1c17f1dad4c2028010000004a493046022100c45af050d3cea806cedd0ab22520c53ebe63b987b8954146cdca42487b84bdd6022100b9b027716a6b59e640da50a864d6dd8a0ef24c76ce62391fa3eabaf4d2886d2d01ffffffff0200e1f505000000004341046a0765b5865641ce08dd39690aade26dfbf5511430ca428a3089261361cef170e3929a68aee3d8d4848b0c5111b0a37b82b86ad559fd2a745b44d8e8d9dfdc0cac00180d8f000000004341046a0765b5865641ce08dd39690aade26dfbf5511430ca428a3089261361cef170e3929a68aee3d8d4848b0c5111b0a37b82b86ad559fd2a745b44d8e8d9dfdc0cac000000000100000002e2274e5fea1bf29d963914bd301aa63b64daaf8a3e88f119b5046ca5738a0f6b0000000048473044022016e7a727a061ea2254a6c358376aaa617ac537eb836c77d646ebda4c748aac8b0220192ce28bf9f2c06a6467e6531e27648d2b3e2e2bae85159c9242939840295ba501ffffffffe2274e5fea1bf29d963914bd301aa63b64daaf8a3e88f119b5046ca5738a0f6b010000004a493046022100b7a1a755588d4190118936e15cd217d133b0e4a53c3c15924010d5648d8925c9022100aaef031874db2114f2d869ac2de4ae53908fbfea5b2b1862e181626bb9005c9f01ffffffff0200e1f505000000004341044a656f065871a353f216ca26cef8dde2f03e8c16202d2e8ad769f02032cb86a5eb5e56842e92e19141d60a01928f8dd2c875a390f67c1f6c94cfc617c0ea45afac00180d8f000000004341046a0765b5865641ce08dd39690aade26dfbf5511430ca428a3089261361cef170e3929a68aee3d8d4848b0c5111b0a37b82b86ad559fd2a745b44d8e8d9dfdc0cac00000000"), SER_NETWORK, PROTOCOL_VERSION); stream >> block; CBloomFilter filter(10, 0.000001, 0, BLOOM_UPDATE_NONE); @@ -337,7 +337,7 @@ BOOST_AUTO_TEST_CASE(merkle_block_3_and_serialize) // Random real block (000000000000dab0130bbcc991d3d7ae6b81aa6f50a798888dfe62337458dc45) // With one tx CBlock block; - CDataStream stream(ParseHex("0100000079cda856b143d9db2c1caff01d1aecc8630d30625d10e8b4b8b0000000000000b50cc069d6a3e33e3ff84a5c41d9d3febe7c770fdcc96b2c3ff60abe184f196367291b4d4c86041b000000000000000000000000000000000000000000000000000000008fa45d63000101000000010000000000000000000000000000000000000000000000000000000000000000ffffffff08044c86041b020a02ffffffff0100f2052a01000000434104ecd3229b0571c3be876feaac0442a9f13c5a572742927af1dc623353ecf8c202225f64868137a18cdd85cbbb4c74fbccfd4f49639cf1bdc94a5672bb15ad5d4cac00000000"), SER_NETWORK, PROTOCOL_VERSION); + CDataStream stream(ParseHex("0100000079cda856b143d9db2c1caff01d1aecc8630d30625d10e8b4b8b0000000000000b50cc069d6a3e33e3ff84a5c41d9d3febe7c770fdcc96b2c3ff60abe184f196367291b4d4c86041b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008fa45d63000101000000010000000000000000000000000000000000000000000000000000000000000000ffffffff08044c86041b020a02ffffffff0100f2052a01000000434104ecd3229b0571c3be876feaac0442a9f13c5a572742927af1dc623353ecf8c202225f64868137a18cdd85cbbb4c74fbccfd4f49639cf1bdc94a5672bb15ad5d4cac00000000"), SER_NETWORK, PROTOCOL_VERSION); stream >> block; CBloomFilter filter(10, 0.000001, 0, BLOOM_UPDATE_ALL); @@ -361,7 +361,7 @@ BOOST_AUTO_TEST_CASE(merkle_block_3_and_serialize) CDataStream merkleStream(SER_NETWORK, PROTOCOL_VERSION); merkleStream << merkleBlock; - vector vch = ParseHex("0100000079cda856b143d9db2c1caff01d1aecc8630d30625d10e8b4b8b0000000000000b50cc069d6a3e33e3ff84a5c41d9d3febe7c770fdcc96b2c3ff60abe184f196367291b4d4c86041b000000000000000000000000000000000000000000000000000000008fa45d63000100000001b50cc069d6a3e33e3ff84a5c41d9d3febe7c770fdcc96b2c3ff60abe184f19630101"); + vector vch = ParseHex("0100000079cda856b143d9db2c1caff01d1aecc8630d30625d10e8b4b8b0000000000000b50cc069d6a3e33e3ff84a5c41d9d3febe7c770fdcc96b2c3ff60abe184f196367291b4d4c86041b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008fa45d63000100000001b50cc069d6a3e33e3ff84a5c41d9d3febe7c770fdcc96b2c3ff60abe184f19630101"); vector expected(vch.size()); for (unsigned int i = 0; i < vch.size(); i++) @@ -375,7 +375,7 @@ BOOST_AUTO_TEST_CASE(merkle_block_4) // Random real block (000000000000b731f2eef9e8c63173adfb07e41bd53eb0ef0a6b720d6cb6dea4) // With 7 txes CBlock block; - CDataStream stream(ParseHex("0100000082bb869cf3a793432a66e826e05a6fc37469f8efb7421dc880670100000000007f16c5962e8bd963659c793ce370d95f093bc7e367117b3c30c1f8fdd0d9728776381b4d4c86041b00000000000000000000000000000000000000000000000000000000554b8529000701000000010000000000000000000000000000000000000000000000000000000000000000ffffffff07044c86041b0136ffffffff0100f2052a01000000434104eaafc2314def4ca98ac970241bcab022b9c1e1f4ea423a20f134c876f2c01ec0f0dd5b2e86e7168cefe0d81113c3807420ce13ad1357231a2252247d97a46a91ac000000000100000001bcad20a6a29827d1424f08989255120bf7f3e9e3cdaaa6bb31b0737fe048724300000000494830450220356e834b046cadc0f8ebb5a8a017b02de59c86305403dad52cd77b55af062ea10221009253cd6c119d4729b77c978e1e2aa19f5ea6e0e52b3f16e32fa608cd5bab753901ffffffff02008d380c010000001976a9142b4b8072ecbba129b6453c63e129e643207249ca88ac0065cd1d000000001976a9141b8dd13b994bcfc787b32aeadf58ccb3615cbd5488ac000000000100000003fdacf9b3eb077412e7a968d2e4f11b9a9dee312d666187ed77ee7d26af16cb0b000000008c493046022100ea1608e70911ca0de5af51ba57ad23b9a51db8d28f82c53563c56a05c20f5a87022100a8bdc8b4a8acc8634c6b420410150775eb7f2474f5615f7fccd65af30f310fbf01410465fdf49e29b06b9a1582287b6279014f834edc317695d125ef623c1cc3aaece245bd69fcad7508666e9c74a49dc9056d5fc14338ef38118dc4afae5fe2c585caffffffff309e1913634ecb50f3c4f83e96e70b2df071b497b8973a3e75429df397b5af83000000004948304502202bdb79c596a9ffc24e96f4386199aba386e9bc7b6071516e2b51dda942b3a1ed022100c53a857e76b724fc14d45311eac5019650d415c3abb5428f3aae16d8e69bec2301ffffffff2089e33491695080c9edc18a428f7d834db5b6d372df13ce2b1b0e0cbcb1e6c10000000049483045022100d4ce67c5896ee251c810ac1ff9ceccd328b497c8f553ab6e08431e7d40bad6b5022033119c0c2b7d792d31f1187779c7bd95aefd93d90a715586d73801d9b47471c601ffffffff0100714460030000001976a914c7b55141d097ea5df7a0ed330cf794376e53ec8d88ac0000000001000000045bf0e214aa4069a3e792ecee1e1bf0c1d397cde8dd08138f4b72a00681743447000000008b48304502200c45de8c4f3e2c1821f2fc878cba97b1e6f8807d94930713aa1c86a67b9bf1e40221008581abfef2e30f957815fc89978423746b2086375ca8ecf359c85c2a5b7c88ad01410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95ffffffffd669f7d7958d40fc59d2253d88e0f248e29b599c80bbcec344a83dda5f9aa72c000000008a473044022078124c8beeaa825f9e0b30bff96e564dd859432f2d0cb3b72d3d5d93d38d7e930220691d233b6c0f995be5acb03d70a7f7a65b6bc9bdd426260f38a1346669507a3601410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95fffffffff878af0d93f5229a68166cf051fd372bb7a537232946e0a46f53636b4dafdaa4000000008c493046022100c717d1714551663f69c3c5759bdbb3a0fcd3fab023abc0e522fe6440de35d8290221008d9cbe25bffc44af2b18e81c58eb37293fd7fe1c2e7b46fc37ee8c96c50ab1e201410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95ffffffff27f2b668859cd7f2f894aa0fd2d9e60963bcd07c88973f425f999b8cbfd7a1e2000000008c493046022100e00847147cbf517bcc2f502f3ddc6d284358d102ed20d47a8aa788a62f0db780022100d17b2d6fa84dcaf1c95d88d7e7c30385aecf415588d749afd3ec81f6022cecd701410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95ffffffff0100c817a8040000001976a914b6efd80d99179f4f4ff6f4dd0a007d018c385d2188ac000000000100000001834537b2f1ce8ef9373a258e10545ce5a50b758df616cd4356e0032554ebd3c4000000008b483045022100e68f422dd7c34fdce11eeb4509ddae38201773dd62f284e8aa9d96f85099d0b002202243bd399ff96b649a0fad05fa759d6a882f0af8c90cf7632c2840c29070aec20141045e58067e815c2f464c6a2a15f987758374203895710c2d452442e28496ff38ba8f5fd901dc20e29e88477167fe4fc299bf818fd0d9e1632d467b2a3d9503b1aaffffffff0280d7e636030000001976a914f34c3e10eb387efe872acb614c89e78bfca7815d88ac404b4c00000000001976a914a84e272933aaf87e1715d7786c51dfaeb5b65a6f88ac00000000010000000143ac81c8e6f6ef307dfe17f3d906d999e23e0189fda838c5510d850927e03ae7000000008c4930460221009c87c344760a64cb8ae6685a3eec2c1ac1bed5b88c87de51acd0e124f266c16602210082d07c037359c3a257b5c63ebd90f5a5edf97b2ac1c434b08ca998839f346dd40141040ba7e521fa7946d12edbb1d1e95a15c34bd4398195e86433c92b431cd315f455fe30032ede69cad9d1e1ed6c3c4ec0dbfced53438c625462afb792dcb098544bffffffff0240420f00000000001976a9144676d1b820d63ec272f1900d59d43bc6463d96f888ac40420f00000000001976a914648d04341d00d7968b3405c034adc38d4d8fb9bd88ac00000000010000000248cc917501ea5c55f4a8d2009c0567c40cfe037c2e71af017d0a452ff705e3f1000000008b483045022100bf5fdc86dc5f08a5d5c8e43a8c9d5b1ed8c65562e280007b52b133021acd9acc02205e325d613e555f772802bf413d36ba807892ed1a690a77811d3033b3de226e0a01410429fa713b124484cb2bd7b5557b2c0b9df7b2b1fee61825eadc5ae6c37a9920d38bfccdc7dc3cb0c47d7b173dbc9db8d37db0a33ae487982c59c6f8606e9d1791ffffffff41ed70551dd7e841883ab8f0b16bf04176b7d1480e4f0af9f3d4c3595768d068000000008b4830450221008513ad65187b903aed1102d1d0c47688127658c51106753fed0151ce9c16b80902201432b9ebcb87bd04ceb2de66035fbbaf4bf8b00d1cfe41f1a1f7338f9ad79d210141049d4cf80125bf50be1709f718c07ad15d0fc612b7da1f5570dddc35f2a352f0f27c978b06820edca9ef982c35fda2d255afba340068c5035552368bc7200c1488ffffffff0100093d00000000001976a9148edb68822f1ad580b043c7b3df2e400f8699eb4888ac00000000"), SER_NETWORK, PROTOCOL_VERSION); + CDataStream stream(ParseHex("0100000082bb869cf3a793432a66e826e05a6fc37469f8efb7421dc880670100000000007f16c5962e8bd963659c793ce370d95f093bc7e367117b3c30c1f8fdd0d9728776381b4d4c86041b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000554b8529000701000000010000000000000000000000000000000000000000000000000000000000000000ffffffff07044c86041b0136ffffffff0100f2052a01000000434104eaafc2314def4ca98ac970241bcab022b9c1e1f4ea423a20f134c876f2c01ec0f0dd5b2e86e7168cefe0d81113c3807420ce13ad1357231a2252247d97a46a91ac000000000100000001bcad20a6a29827d1424f08989255120bf7f3e9e3cdaaa6bb31b0737fe048724300000000494830450220356e834b046cadc0f8ebb5a8a017b02de59c86305403dad52cd77b55af062ea10221009253cd6c119d4729b77c978e1e2aa19f5ea6e0e52b3f16e32fa608cd5bab753901ffffffff02008d380c010000001976a9142b4b8072ecbba129b6453c63e129e643207249ca88ac0065cd1d000000001976a9141b8dd13b994bcfc787b32aeadf58ccb3615cbd5488ac000000000100000003fdacf9b3eb077412e7a968d2e4f11b9a9dee312d666187ed77ee7d26af16cb0b000000008c493046022100ea1608e70911ca0de5af51ba57ad23b9a51db8d28f82c53563c56a05c20f5a87022100a8bdc8b4a8acc8634c6b420410150775eb7f2474f5615f7fccd65af30f310fbf01410465fdf49e29b06b9a1582287b6279014f834edc317695d125ef623c1cc3aaece245bd69fcad7508666e9c74a49dc9056d5fc14338ef38118dc4afae5fe2c585caffffffff309e1913634ecb50f3c4f83e96e70b2df071b497b8973a3e75429df397b5af83000000004948304502202bdb79c596a9ffc24e96f4386199aba386e9bc7b6071516e2b51dda942b3a1ed022100c53a857e76b724fc14d45311eac5019650d415c3abb5428f3aae16d8e69bec2301ffffffff2089e33491695080c9edc18a428f7d834db5b6d372df13ce2b1b0e0cbcb1e6c10000000049483045022100d4ce67c5896ee251c810ac1ff9ceccd328b497c8f553ab6e08431e7d40bad6b5022033119c0c2b7d792d31f1187779c7bd95aefd93d90a715586d73801d9b47471c601ffffffff0100714460030000001976a914c7b55141d097ea5df7a0ed330cf794376e53ec8d88ac0000000001000000045bf0e214aa4069a3e792ecee1e1bf0c1d397cde8dd08138f4b72a00681743447000000008b48304502200c45de8c4f3e2c1821f2fc878cba97b1e6f8807d94930713aa1c86a67b9bf1e40221008581abfef2e30f957815fc89978423746b2086375ca8ecf359c85c2a5b7c88ad01410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95ffffffffd669f7d7958d40fc59d2253d88e0f248e29b599c80bbcec344a83dda5f9aa72c000000008a473044022078124c8beeaa825f9e0b30bff96e564dd859432f2d0cb3b72d3d5d93d38d7e930220691d233b6c0f995be5acb03d70a7f7a65b6bc9bdd426260f38a1346669507a3601410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95fffffffff878af0d93f5229a68166cf051fd372bb7a537232946e0a46f53636b4dafdaa4000000008c493046022100c717d1714551663f69c3c5759bdbb3a0fcd3fab023abc0e522fe6440de35d8290221008d9cbe25bffc44af2b18e81c58eb37293fd7fe1c2e7b46fc37ee8c96c50ab1e201410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95ffffffff27f2b668859cd7f2f894aa0fd2d9e60963bcd07c88973f425f999b8cbfd7a1e2000000008c493046022100e00847147cbf517bcc2f502f3ddc6d284358d102ed20d47a8aa788a62f0db780022100d17b2d6fa84dcaf1c95d88d7e7c30385aecf415588d749afd3ec81f6022cecd701410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95ffffffff0100c817a8040000001976a914b6efd80d99179f4f4ff6f4dd0a007d018c385d2188ac000000000100000001834537b2f1ce8ef9373a258e10545ce5a50b758df616cd4356e0032554ebd3c4000000008b483045022100e68f422dd7c34fdce11eeb4509ddae38201773dd62f284e8aa9d96f85099d0b002202243bd399ff96b649a0fad05fa759d6a882f0af8c90cf7632c2840c29070aec20141045e58067e815c2f464c6a2a15f987758374203895710c2d452442e28496ff38ba8f5fd901dc20e29e88477167fe4fc299bf818fd0d9e1632d467b2a3d9503b1aaffffffff0280d7e636030000001976a914f34c3e10eb387efe872acb614c89e78bfca7815d88ac404b4c00000000001976a914a84e272933aaf87e1715d7786c51dfaeb5b65a6f88ac00000000010000000143ac81c8e6f6ef307dfe17f3d906d999e23e0189fda838c5510d850927e03ae7000000008c4930460221009c87c344760a64cb8ae6685a3eec2c1ac1bed5b88c87de51acd0e124f266c16602210082d07c037359c3a257b5c63ebd90f5a5edf97b2ac1c434b08ca998839f346dd40141040ba7e521fa7946d12edbb1d1e95a15c34bd4398195e86433c92b431cd315f455fe30032ede69cad9d1e1ed6c3c4ec0dbfced53438c625462afb792dcb098544bffffffff0240420f00000000001976a9144676d1b820d63ec272f1900d59d43bc6463d96f888ac40420f00000000001976a914648d04341d00d7968b3405c034adc38d4d8fb9bd88ac00000000010000000248cc917501ea5c55f4a8d2009c0567c40cfe037c2e71af017d0a452ff705e3f1000000008b483045022100bf5fdc86dc5f08a5d5c8e43a8c9d5b1ed8c65562e280007b52b133021acd9acc02205e325d613e555f772802bf413d36ba807892ed1a690a77811d3033b3de226e0a01410429fa713b124484cb2bd7b5557b2c0b9df7b2b1fee61825eadc5ae6c37a9920d38bfccdc7dc3cb0c47d7b173dbc9db8d37db0a33ae487982c59c6f8606e9d1791ffffffff41ed70551dd7e841883ab8f0b16bf04176b7d1480e4f0af9f3d4c3595768d068000000008b4830450221008513ad65187b903aed1102d1d0c47688127658c51106753fed0151ce9c16b80902201432b9ebcb87bd04ceb2de66035fbbaf4bf8b00d1cfe41f1a1f7338f9ad79d210141049d4cf80125bf50be1709f718c07ad15d0fc612b7da1f5570dddc35f2a352f0f27c978b06820edca9ef982c35fda2d255afba340068c5035552368bc7200c1488ffffffff0100093d00000000001976a9148edb68822f1ad580b043c7b3df2e400f8699eb4888ac00000000"), SER_NETWORK, PROTOCOL_VERSION); stream >> block; CBloomFilter filter(10, 0.000001, 0, BLOOM_UPDATE_ALL); @@ -420,7 +420,7 @@ BOOST_AUTO_TEST_CASE(merkle_block_4_test_p2pubkey_only) // Random real block (000000000000b731f2eef9e8c63173adfb07e41bd53eb0ef0a6b720d6cb6dea4) // With 7 txes CBlock block; - CDataStream stream(ParseHex("0100000082bb869cf3a793432a66e826e05a6fc37469f8efb7421dc880670100000000007f16c5962e8bd963659c793ce370d95f093bc7e367117b3c30c1f8fdd0d9728776381b4d4c86041b00000000000000000000000000000000000000000000000000000000554b8529000701000000010000000000000000000000000000000000000000000000000000000000000000ffffffff07044c86041b0136ffffffff0100f2052a01000000434104eaafc2314def4ca98ac970241bcab022b9c1e1f4ea423a20f134c876f2c01ec0f0dd5b2e86e7168cefe0d81113c3807420ce13ad1357231a2252247d97a46a91ac000000000100000001bcad20a6a29827d1424f08989255120bf7f3e9e3cdaaa6bb31b0737fe048724300000000494830450220356e834b046cadc0f8ebb5a8a017b02de59c86305403dad52cd77b55af062ea10221009253cd6c119d4729b77c978e1e2aa19f5ea6e0e52b3f16e32fa608cd5bab753901ffffffff02008d380c010000001976a9142b4b8072ecbba129b6453c63e129e643207249ca88ac0065cd1d000000001976a9141b8dd13b994bcfc787b32aeadf58ccb3615cbd5488ac000000000100000003fdacf9b3eb077412e7a968d2e4f11b9a9dee312d666187ed77ee7d26af16cb0b000000008c493046022100ea1608e70911ca0de5af51ba57ad23b9a51db8d28f82c53563c56a05c20f5a87022100a8bdc8b4a8acc8634c6b420410150775eb7f2474f5615f7fccd65af30f310fbf01410465fdf49e29b06b9a1582287b6279014f834edc317695d125ef623c1cc3aaece245bd69fcad7508666e9c74a49dc9056d5fc14338ef38118dc4afae5fe2c585caffffffff309e1913634ecb50f3c4f83e96e70b2df071b497b8973a3e75429df397b5af83000000004948304502202bdb79c596a9ffc24e96f4386199aba386e9bc7b6071516e2b51dda942b3a1ed022100c53a857e76b724fc14d45311eac5019650d415c3abb5428f3aae16d8e69bec2301ffffffff2089e33491695080c9edc18a428f7d834db5b6d372df13ce2b1b0e0cbcb1e6c10000000049483045022100d4ce67c5896ee251c810ac1ff9ceccd328b497c8f553ab6e08431e7d40bad6b5022033119c0c2b7d792d31f1187779c7bd95aefd93d90a715586d73801d9b47471c601ffffffff0100714460030000001976a914c7b55141d097ea5df7a0ed330cf794376e53ec8d88ac0000000001000000045bf0e214aa4069a3e792ecee1e1bf0c1d397cde8dd08138f4b72a00681743447000000008b48304502200c45de8c4f3e2c1821f2fc878cba97b1e6f8807d94930713aa1c86a67b9bf1e40221008581abfef2e30f957815fc89978423746b2086375ca8ecf359c85c2a5b7c88ad01410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95ffffffffd669f7d7958d40fc59d2253d88e0f248e29b599c80bbcec344a83dda5f9aa72c000000008a473044022078124c8beeaa825f9e0b30bff96e564dd859432f2d0cb3b72d3d5d93d38d7e930220691d233b6c0f995be5acb03d70a7f7a65b6bc9bdd426260f38a1346669507a3601410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95fffffffff878af0d93f5229a68166cf051fd372bb7a537232946e0a46f53636b4dafdaa4000000008c493046022100c717d1714551663f69c3c5759bdbb3a0fcd3fab023abc0e522fe6440de35d8290221008d9cbe25bffc44af2b18e81c58eb37293fd7fe1c2e7b46fc37ee8c96c50ab1e201410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95ffffffff27f2b668859cd7f2f894aa0fd2d9e60963bcd07c88973f425f999b8cbfd7a1e2000000008c493046022100e00847147cbf517bcc2f502f3ddc6d284358d102ed20d47a8aa788a62f0db780022100d17b2d6fa84dcaf1c95d88d7e7c30385aecf415588d749afd3ec81f6022cecd701410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95ffffffff0100c817a8040000001976a914b6efd80d99179f4f4ff6f4dd0a007d018c385d2188ac000000000100000001834537b2f1ce8ef9373a258e10545ce5a50b758df616cd4356e0032554ebd3c4000000008b483045022100e68f422dd7c34fdce11eeb4509ddae38201773dd62f284e8aa9d96f85099d0b002202243bd399ff96b649a0fad05fa759d6a882f0af8c90cf7632c2840c29070aec20141045e58067e815c2f464c6a2a15f987758374203895710c2d452442e28496ff38ba8f5fd901dc20e29e88477167fe4fc299bf818fd0d9e1632d467b2a3d9503b1aaffffffff0280d7e636030000001976a914f34c3e10eb387efe872acb614c89e78bfca7815d88ac404b4c00000000001976a914a84e272933aaf87e1715d7786c51dfaeb5b65a6f88ac00000000010000000143ac81c8e6f6ef307dfe17f3d906d999e23e0189fda838c5510d850927e03ae7000000008c4930460221009c87c344760a64cb8ae6685a3eec2c1ac1bed5b88c87de51acd0e124f266c16602210082d07c037359c3a257b5c63ebd90f5a5edf97b2ac1c434b08ca998839f346dd40141040ba7e521fa7946d12edbb1d1e95a15c34bd4398195e86433c92b431cd315f455fe30032ede69cad9d1e1ed6c3c4ec0dbfced53438c625462afb792dcb098544bffffffff0240420f00000000001976a9144676d1b820d63ec272f1900d59d43bc6463d96f888ac40420f00000000001976a914648d04341d00d7968b3405c034adc38d4d8fb9bd88ac00000000010000000248cc917501ea5c55f4a8d2009c0567c40cfe037c2e71af017d0a452ff705e3f1000000008b483045022100bf5fdc86dc5f08a5d5c8e43a8c9d5b1ed8c65562e280007b52b133021acd9acc02205e325d613e555f772802bf413d36ba807892ed1a690a77811d3033b3de226e0a01410429fa713b124484cb2bd7b5557b2c0b9df7b2b1fee61825eadc5ae6c37a9920d38bfccdc7dc3cb0c47d7b173dbc9db8d37db0a33ae487982c59c6f8606e9d1791ffffffff41ed70551dd7e841883ab8f0b16bf04176b7d1480e4f0af9f3d4c3595768d068000000008b4830450221008513ad65187b903aed1102d1d0c47688127658c51106753fed0151ce9c16b80902201432b9ebcb87bd04ceb2de66035fbbaf4bf8b00d1cfe41f1a1f7338f9ad79d210141049d4cf80125bf50be1709f718c07ad15d0fc612b7da1f5570dddc35f2a352f0f27c978b06820edca9ef982c35fda2d255afba340068c5035552368bc7200c1488ffffffff0100093d00000000001976a9148edb68822f1ad580b043c7b3df2e400f8699eb4888ac00000000"), SER_NETWORK, PROTOCOL_VERSION); + CDataStream stream(ParseHex("0100000082bb869cf3a793432a66e826e05a6fc37469f8efb7421dc880670100000000007f16c5962e8bd963659c793ce370d95f093bc7e367117b3c30c1f8fdd0d9728776381b4d4c86041b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000554b8529000701000000010000000000000000000000000000000000000000000000000000000000000000ffffffff07044c86041b0136ffffffff0100f2052a01000000434104eaafc2314def4ca98ac970241bcab022b9c1e1f4ea423a20f134c876f2c01ec0f0dd5b2e86e7168cefe0d81113c3807420ce13ad1357231a2252247d97a46a91ac000000000100000001bcad20a6a29827d1424f08989255120bf7f3e9e3cdaaa6bb31b0737fe048724300000000494830450220356e834b046cadc0f8ebb5a8a017b02de59c86305403dad52cd77b55af062ea10221009253cd6c119d4729b77c978e1e2aa19f5ea6e0e52b3f16e32fa608cd5bab753901ffffffff02008d380c010000001976a9142b4b8072ecbba129b6453c63e129e643207249ca88ac0065cd1d000000001976a9141b8dd13b994bcfc787b32aeadf58ccb3615cbd5488ac000000000100000003fdacf9b3eb077412e7a968d2e4f11b9a9dee312d666187ed77ee7d26af16cb0b000000008c493046022100ea1608e70911ca0de5af51ba57ad23b9a51db8d28f82c53563c56a05c20f5a87022100a8bdc8b4a8acc8634c6b420410150775eb7f2474f5615f7fccd65af30f310fbf01410465fdf49e29b06b9a1582287b6279014f834edc317695d125ef623c1cc3aaece245bd69fcad7508666e9c74a49dc9056d5fc14338ef38118dc4afae5fe2c585caffffffff309e1913634ecb50f3c4f83e96e70b2df071b497b8973a3e75429df397b5af83000000004948304502202bdb79c596a9ffc24e96f4386199aba386e9bc7b6071516e2b51dda942b3a1ed022100c53a857e76b724fc14d45311eac5019650d415c3abb5428f3aae16d8e69bec2301ffffffff2089e33491695080c9edc18a428f7d834db5b6d372df13ce2b1b0e0cbcb1e6c10000000049483045022100d4ce67c5896ee251c810ac1ff9ceccd328b497c8f553ab6e08431e7d40bad6b5022033119c0c2b7d792d31f1187779c7bd95aefd93d90a715586d73801d9b47471c601ffffffff0100714460030000001976a914c7b55141d097ea5df7a0ed330cf794376e53ec8d88ac0000000001000000045bf0e214aa4069a3e792ecee1e1bf0c1d397cde8dd08138f4b72a00681743447000000008b48304502200c45de8c4f3e2c1821f2fc878cba97b1e6f8807d94930713aa1c86a67b9bf1e40221008581abfef2e30f957815fc89978423746b2086375ca8ecf359c85c2a5b7c88ad01410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95ffffffffd669f7d7958d40fc59d2253d88e0f248e29b599c80bbcec344a83dda5f9aa72c000000008a473044022078124c8beeaa825f9e0b30bff96e564dd859432f2d0cb3b72d3d5d93d38d7e930220691d233b6c0f995be5acb03d70a7f7a65b6bc9bdd426260f38a1346669507a3601410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95fffffffff878af0d93f5229a68166cf051fd372bb7a537232946e0a46f53636b4dafdaa4000000008c493046022100c717d1714551663f69c3c5759bdbb3a0fcd3fab023abc0e522fe6440de35d8290221008d9cbe25bffc44af2b18e81c58eb37293fd7fe1c2e7b46fc37ee8c96c50ab1e201410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95ffffffff27f2b668859cd7f2f894aa0fd2d9e60963bcd07c88973f425f999b8cbfd7a1e2000000008c493046022100e00847147cbf517bcc2f502f3ddc6d284358d102ed20d47a8aa788a62f0db780022100d17b2d6fa84dcaf1c95d88d7e7c30385aecf415588d749afd3ec81f6022cecd701410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95ffffffff0100c817a8040000001976a914b6efd80d99179f4f4ff6f4dd0a007d018c385d2188ac000000000100000001834537b2f1ce8ef9373a258e10545ce5a50b758df616cd4356e0032554ebd3c4000000008b483045022100e68f422dd7c34fdce11eeb4509ddae38201773dd62f284e8aa9d96f85099d0b002202243bd399ff96b649a0fad05fa759d6a882f0af8c90cf7632c2840c29070aec20141045e58067e815c2f464c6a2a15f987758374203895710c2d452442e28496ff38ba8f5fd901dc20e29e88477167fe4fc299bf818fd0d9e1632d467b2a3d9503b1aaffffffff0280d7e636030000001976a914f34c3e10eb387efe872acb614c89e78bfca7815d88ac404b4c00000000001976a914a84e272933aaf87e1715d7786c51dfaeb5b65a6f88ac00000000010000000143ac81c8e6f6ef307dfe17f3d906d999e23e0189fda838c5510d850927e03ae7000000008c4930460221009c87c344760a64cb8ae6685a3eec2c1ac1bed5b88c87de51acd0e124f266c16602210082d07c037359c3a257b5c63ebd90f5a5edf97b2ac1c434b08ca998839f346dd40141040ba7e521fa7946d12edbb1d1e95a15c34bd4398195e86433c92b431cd315f455fe30032ede69cad9d1e1ed6c3c4ec0dbfced53438c625462afb792dcb098544bffffffff0240420f00000000001976a9144676d1b820d63ec272f1900d59d43bc6463d96f888ac40420f00000000001976a914648d04341d00d7968b3405c034adc38d4d8fb9bd88ac00000000010000000248cc917501ea5c55f4a8d2009c0567c40cfe037c2e71af017d0a452ff705e3f1000000008b483045022100bf5fdc86dc5f08a5d5c8e43a8c9d5b1ed8c65562e280007b52b133021acd9acc02205e325d613e555f772802bf413d36ba807892ed1a690a77811d3033b3de226e0a01410429fa713b124484cb2bd7b5557b2c0b9df7b2b1fee61825eadc5ae6c37a9920d38bfccdc7dc3cb0c47d7b173dbc9db8d37db0a33ae487982c59c6f8606e9d1791ffffffff41ed70551dd7e841883ab8f0b16bf04176b7d1480e4f0af9f3d4c3595768d068000000008b4830450221008513ad65187b903aed1102d1d0c47688127658c51106753fed0151ce9c16b80902201432b9ebcb87bd04ceb2de66035fbbaf4bf8b00d1cfe41f1a1f7338f9ad79d210141049d4cf80125bf50be1709f718c07ad15d0fc612b7da1f5570dddc35f2a352f0f27c978b06820edca9ef982c35fda2d255afba340068c5035552368bc7200c1488ffffffff0100093d00000000001976a9148edb68822f1ad580b043c7b3df2e400f8699eb4888ac00000000"), SER_NETWORK, PROTOCOL_VERSION); stream >> block; CBloomFilter filter(10, 0.000001, 0, BLOOM_UPDATE_P2PUBKEY_ONLY); @@ -443,7 +443,7 @@ BOOST_AUTO_TEST_CASE(merkle_block_4_test_update_none) // Random real block (000000000000b731f2eef9e8c63173adfb07e41bd53eb0ef0a6b720d6cb6dea4) // With 7 txes CBlock block; - CDataStream stream(ParseHex("0100000082bb869cf3a793432a66e826e05a6fc37469f8efb7421dc880670100000000007f16c5962e8bd963659c793ce370d95f093bc7e367117b3c30c1f8fdd0d9728776381b4d4c86041b00000000000000000000000000000000000000000000000000000000554b8529000701000000010000000000000000000000000000000000000000000000000000000000000000ffffffff07044c86041b0136ffffffff0100f2052a01000000434104eaafc2314def4ca98ac970241bcab022b9c1e1f4ea423a20f134c876f2c01ec0f0dd5b2e86e7168cefe0d81113c3807420ce13ad1357231a2252247d97a46a91ac000000000100000001bcad20a6a29827d1424f08989255120bf7f3e9e3cdaaa6bb31b0737fe048724300000000494830450220356e834b046cadc0f8ebb5a8a017b02de59c86305403dad52cd77b55af062ea10221009253cd6c119d4729b77c978e1e2aa19f5ea6e0e52b3f16e32fa608cd5bab753901ffffffff02008d380c010000001976a9142b4b8072ecbba129b6453c63e129e643207249ca88ac0065cd1d000000001976a9141b8dd13b994bcfc787b32aeadf58ccb3615cbd5488ac000000000100000003fdacf9b3eb077412e7a968d2e4f11b9a9dee312d666187ed77ee7d26af16cb0b000000008c493046022100ea1608e70911ca0de5af51ba57ad23b9a51db8d28f82c53563c56a05c20f5a87022100a8bdc8b4a8acc8634c6b420410150775eb7f2474f5615f7fccd65af30f310fbf01410465fdf49e29b06b9a1582287b6279014f834edc317695d125ef623c1cc3aaece245bd69fcad7508666e9c74a49dc9056d5fc14338ef38118dc4afae5fe2c585caffffffff309e1913634ecb50f3c4f83e96e70b2df071b497b8973a3e75429df397b5af83000000004948304502202bdb79c596a9ffc24e96f4386199aba386e9bc7b6071516e2b51dda942b3a1ed022100c53a857e76b724fc14d45311eac5019650d415c3abb5428f3aae16d8e69bec2301ffffffff2089e33491695080c9edc18a428f7d834db5b6d372df13ce2b1b0e0cbcb1e6c10000000049483045022100d4ce67c5896ee251c810ac1ff9ceccd328b497c8f553ab6e08431e7d40bad6b5022033119c0c2b7d792d31f1187779c7bd95aefd93d90a715586d73801d9b47471c601ffffffff0100714460030000001976a914c7b55141d097ea5df7a0ed330cf794376e53ec8d88ac0000000001000000045bf0e214aa4069a3e792ecee1e1bf0c1d397cde8dd08138f4b72a00681743447000000008b48304502200c45de8c4f3e2c1821f2fc878cba97b1e6f8807d94930713aa1c86a67b9bf1e40221008581abfef2e30f957815fc89978423746b2086375ca8ecf359c85c2a5b7c88ad01410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95ffffffffd669f7d7958d40fc59d2253d88e0f248e29b599c80bbcec344a83dda5f9aa72c000000008a473044022078124c8beeaa825f9e0b30bff96e564dd859432f2d0cb3b72d3d5d93d38d7e930220691d233b6c0f995be5acb03d70a7f7a65b6bc9bdd426260f38a1346669507a3601410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95fffffffff878af0d93f5229a68166cf051fd372bb7a537232946e0a46f53636b4dafdaa4000000008c493046022100c717d1714551663f69c3c5759bdbb3a0fcd3fab023abc0e522fe6440de35d8290221008d9cbe25bffc44af2b18e81c58eb37293fd7fe1c2e7b46fc37ee8c96c50ab1e201410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95ffffffff27f2b668859cd7f2f894aa0fd2d9e60963bcd07c88973f425f999b8cbfd7a1e2000000008c493046022100e00847147cbf517bcc2f502f3ddc6d284358d102ed20d47a8aa788a62f0db780022100d17b2d6fa84dcaf1c95d88d7e7c30385aecf415588d749afd3ec81f6022cecd701410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95ffffffff0100c817a8040000001976a914b6efd80d99179f4f4ff6f4dd0a007d018c385d2188ac000000000100000001834537b2f1ce8ef9373a258e10545ce5a50b758df616cd4356e0032554ebd3c4000000008b483045022100e68f422dd7c34fdce11eeb4509ddae38201773dd62f284e8aa9d96f85099d0b002202243bd399ff96b649a0fad05fa759d6a882f0af8c90cf7632c2840c29070aec20141045e58067e815c2f464c6a2a15f987758374203895710c2d452442e28496ff38ba8f5fd901dc20e29e88477167fe4fc299bf818fd0d9e1632d467b2a3d9503b1aaffffffff0280d7e636030000001976a914f34c3e10eb387efe872acb614c89e78bfca7815d88ac404b4c00000000001976a914a84e272933aaf87e1715d7786c51dfaeb5b65a6f88ac00000000010000000143ac81c8e6f6ef307dfe17f3d906d999e23e0189fda838c5510d850927e03ae7000000008c4930460221009c87c344760a64cb8ae6685a3eec2c1ac1bed5b88c87de51acd0e124f266c16602210082d07c037359c3a257b5c63ebd90f5a5edf97b2ac1c434b08ca998839f346dd40141040ba7e521fa7946d12edbb1d1e95a15c34bd4398195e86433c92b431cd315f455fe30032ede69cad9d1e1ed6c3c4ec0dbfced53438c625462afb792dcb098544bffffffff0240420f00000000001976a9144676d1b820d63ec272f1900d59d43bc6463d96f888ac40420f00000000001976a914648d04341d00d7968b3405c034adc38d4d8fb9bd88ac00000000010000000248cc917501ea5c55f4a8d2009c0567c40cfe037c2e71af017d0a452ff705e3f1000000008b483045022100bf5fdc86dc5f08a5d5c8e43a8c9d5b1ed8c65562e280007b52b133021acd9acc02205e325d613e555f772802bf413d36ba807892ed1a690a77811d3033b3de226e0a01410429fa713b124484cb2bd7b5557b2c0b9df7b2b1fee61825eadc5ae6c37a9920d38bfccdc7dc3cb0c47d7b173dbc9db8d37db0a33ae487982c59c6f8606e9d1791ffffffff41ed70551dd7e841883ab8f0b16bf04176b7d1480e4f0af9f3d4c3595768d068000000008b4830450221008513ad65187b903aed1102d1d0c47688127658c51106753fed0151ce9c16b80902201432b9ebcb87bd04ceb2de66035fbbaf4bf8b00d1cfe41f1a1f7338f9ad79d210141049d4cf80125bf50be1709f718c07ad15d0fc612b7da1f5570dddc35f2a352f0f27c978b06820edca9ef982c35fda2d255afba340068c5035552368bc7200c1488ffffffff0100093d00000000001976a9148edb68822f1ad580b043c7b3df2e400f8699eb4888ac00000000"), SER_NETWORK, PROTOCOL_VERSION); + CDataStream stream(ParseHex("0100000082bb869cf3a793432a66e826e05a6fc37469f8efb7421dc880670100000000007f16c5962e8bd963659c793ce370d95f093bc7e367117b3c30c1f8fdd0d9728776381b4d4c86041b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000554b8529000701000000010000000000000000000000000000000000000000000000000000000000000000ffffffff07044c86041b0136ffffffff0100f2052a01000000434104eaafc2314def4ca98ac970241bcab022b9c1e1f4ea423a20f134c876f2c01ec0f0dd5b2e86e7168cefe0d81113c3807420ce13ad1357231a2252247d97a46a91ac000000000100000001bcad20a6a29827d1424f08989255120bf7f3e9e3cdaaa6bb31b0737fe048724300000000494830450220356e834b046cadc0f8ebb5a8a017b02de59c86305403dad52cd77b55af062ea10221009253cd6c119d4729b77c978e1e2aa19f5ea6e0e52b3f16e32fa608cd5bab753901ffffffff02008d380c010000001976a9142b4b8072ecbba129b6453c63e129e643207249ca88ac0065cd1d000000001976a9141b8dd13b994bcfc787b32aeadf58ccb3615cbd5488ac000000000100000003fdacf9b3eb077412e7a968d2e4f11b9a9dee312d666187ed77ee7d26af16cb0b000000008c493046022100ea1608e70911ca0de5af51ba57ad23b9a51db8d28f82c53563c56a05c20f5a87022100a8bdc8b4a8acc8634c6b420410150775eb7f2474f5615f7fccd65af30f310fbf01410465fdf49e29b06b9a1582287b6279014f834edc317695d125ef623c1cc3aaece245bd69fcad7508666e9c74a49dc9056d5fc14338ef38118dc4afae5fe2c585caffffffff309e1913634ecb50f3c4f83e96e70b2df071b497b8973a3e75429df397b5af83000000004948304502202bdb79c596a9ffc24e96f4386199aba386e9bc7b6071516e2b51dda942b3a1ed022100c53a857e76b724fc14d45311eac5019650d415c3abb5428f3aae16d8e69bec2301ffffffff2089e33491695080c9edc18a428f7d834db5b6d372df13ce2b1b0e0cbcb1e6c10000000049483045022100d4ce67c5896ee251c810ac1ff9ceccd328b497c8f553ab6e08431e7d40bad6b5022033119c0c2b7d792d31f1187779c7bd95aefd93d90a715586d73801d9b47471c601ffffffff0100714460030000001976a914c7b55141d097ea5df7a0ed330cf794376e53ec8d88ac0000000001000000045bf0e214aa4069a3e792ecee1e1bf0c1d397cde8dd08138f4b72a00681743447000000008b48304502200c45de8c4f3e2c1821f2fc878cba97b1e6f8807d94930713aa1c86a67b9bf1e40221008581abfef2e30f957815fc89978423746b2086375ca8ecf359c85c2a5b7c88ad01410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95ffffffffd669f7d7958d40fc59d2253d88e0f248e29b599c80bbcec344a83dda5f9aa72c000000008a473044022078124c8beeaa825f9e0b30bff96e564dd859432f2d0cb3b72d3d5d93d38d7e930220691d233b6c0f995be5acb03d70a7f7a65b6bc9bdd426260f38a1346669507a3601410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95fffffffff878af0d93f5229a68166cf051fd372bb7a537232946e0a46f53636b4dafdaa4000000008c493046022100c717d1714551663f69c3c5759bdbb3a0fcd3fab023abc0e522fe6440de35d8290221008d9cbe25bffc44af2b18e81c58eb37293fd7fe1c2e7b46fc37ee8c96c50ab1e201410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95ffffffff27f2b668859cd7f2f894aa0fd2d9e60963bcd07c88973f425f999b8cbfd7a1e2000000008c493046022100e00847147cbf517bcc2f502f3ddc6d284358d102ed20d47a8aa788a62f0db780022100d17b2d6fa84dcaf1c95d88d7e7c30385aecf415588d749afd3ec81f6022cecd701410462bb73f76ca0994fcb8b4271e6fb7561f5c0f9ca0cf6485261c4a0dc894f4ab844c6cdfb97cd0b60ffb5018ffd6238f4d87270efb1d3ae37079b794a92d7ec95ffffffff0100c817a8040000001976a914b6efd80d99179f4f4ff6f4dd0a007d018c385d2188ac000000000100000001834537b2f1ce8ef9373a258e10545ce5a50b758df616cd4356e0032554ebd3c4000000008b483045022100e68f422dd7c34fdce11eeb4509ddae38201773dd62f284e8aa9d96f85099d0b002202243bd399ff96b649a0fad05fa759d6a882f0af8c90cf7632c2840c29070aec20141045e58067e815c2f464c6a2a15f987758374203895710c2d452442e28496ff38ba8f5fd901dc20e29e88477167fe4fc299bf818fd0d9e1632d467b2a3d9503b1aaffffffff0280d7e636030000001976a914f34c3e10eb387efe872acb614c89e78bfca7815d88ac404b4c00000000001976a914a84e272933aaf87e1715d7786c51dfaeb5b65a6f88ac00000000010000000143ac81c8e6f6ef307dfe17f3d906d999e23e0189fda838c5510d850927e03ae7000000008c4930460221009c87c344760a64cb8ae6685a3eec2c1ac1bed5b88c87de51acd0e124f266c16602210082d07c037359c3a257b5c63ebd90f5a5edf97b2ac1c434b08ca998839f346dd40141040ba7e521fa7946d12edbb1d1e95a15c34bd4398195e86433c92b431cd315f455fe30032ede69cad9d1e1ed6c3c4ec0dbfced53438c625462afb792dcb098544bffffffff0240420f00000000001976a9144676d1b820d63ec272f1900d59d43bc6463d96f888ac40420f00000000001976a914648d04341d00d7968b3405c034adc38d4d8fb9bd88ac00000000010000000248cc917501ea5c55f4a8d2009c0567c40cfe037c2e71af017d0a452ff705e3f1000000008b483045022100bf5fdc86dc5f08a5d5c8e43a8c9d5b1ed8c65562e280007b52b133021acd9acc02205e325d613e555f772802bf413d36ba807892ed1a690a77811d3033b3de226e0a01410429fa713b124484cb2bd7b5557b2c0b9df7b2b1fee61825eadc5ae6c37a9920d38bfccdc7dc3cb0c47d7b173dbc9db8d37db0a33ae487982c59c6f8606e9d1791ffffffff41ed70551dd7e841883ab8f0b16bf04176b7d1480e4f0af9f3d4c3595768d068000000008b4830450221008513ad65187b903aed1102d1d0c47688127658c51106753fed0151ce9c16b80902201432b9ebcb87bd04ceb2de66035fbbaf4bf8b00d1cfe41f1a1f7338f9ad79d210141049d4cf80125bf50be1709f718c07ad15d0fc612b7da1f5570dddc35f2a352f0f27c978b06820edca9ef982c35fda2d255afba340068c5035552368bc7200c1488ffffffff0100093d00000000001976a9148edb68822f1ad580b043c7b3df2e400f8699eb4888ac00000000"), SER_NETWORK, PROTOCOL_VERSION); stream >> block; CBloomFilter filter(10, 0.000001, 0, BLOOM_UPDATE_NONE); diff --git a/src/test/miner_tests.cpp b/src/test/miner_tests.cpp index f5bc2fda2..b6cf75009 100644 --- a/src/test/miner_tests.cpp +++ b/src/test/miner_tests.cpp @@ -24,116 +24,116 @@ struct { const char *nonce_hex; uint32_t vSolutions[NUM_EQUIHASH_SOLUTIONS]; } blockinfo[] = { - {"0000000000000000000000000000000000000000000000000000000000000000", {1193,68340,5805,59781,21573,101819,84494,100389,26152,101895,56614,69824,68505,127156,108332,117134,6101,86601,32223,55671,34644,46254,59054,118572,18968,124250,121832,125993,41000,49585,59793,105979,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {951,84997,49786,60053,12094,43048,83063,124928,1452,7997,58278,73769,4983,53167,39342,82656,13109,33678,60093,111937,60525,89308,90766,108757,22437,121760,40980,110590,22757,49523,31625,82733,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {4399,104285,25912,119683,63611,115195,101142,114723,6370,62432,75125,125462,17176,130435,37321,96253,16328,29754,52212,120333,54044,82860,63348,94180,21925,41672,68743,76362,47862,54804,92142,98555,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {2285,54465,48817,105281,10335,36137,87114,127022,18043,77407,70323,82185,38482,81833,41146,93481,11592,123985,25540,128286,49378,67003,83596,94091,18585,106443,42849,56172,43791,82755,96732,101870,}}, - {"0000000000000000000000000000000000000000000000000000000000000003", {453,123519,14319,97557,61520,127956,111967,129428,6575,125590,42158,85101,26717,73037,85271,127993,614,11229,30718,101043,21205,91206,99137,103900,4030,49049,59374,104461,21656,127124,61917,124006,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {909,104608,10097,80586,18684,116050,45970,119876,2753,45785,61441,93588,29303,129805,99212,110899,4058,59055,108690,118771,17246,32029,27885,93922,4115,74287,37651,98917,11080,94042,46560,57246,}}, - {"0000000000000000000000000000000000000000000000000000000000000002", {368,61762,81613,109844,5707,28474,15122,60311,17354,73143,73199,114365,23686,65484,95250,106417,3140,97029,6646,34497,20874,68384,56714,97310,24743,72241,36759,115726,82975,112556,117857,129546,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {1307,19213,9523,71852,40333,126825,55675,85763,1458,115924,42237,81430,28236,99717,46576,67646,2558,74406,87445,112220,21505,49598,32033,76698,4727,58935,14982,93480,9706,107784,98800,106751,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {2490,14987,9626,107816,39094,130902,43150,101385,18675,115829,63930,72519,30526,103628,30552,121031,9862,63792,80351,106779,14441,101996,76265,126531,27596,121410,42804,58889,75300,81494,86861,130418,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {4762,95176,75796,89310,6298,26026,34272,98650,17989,102253,35669,75103,36554,101621,63552,125033,5177,89457,13653,112349,12060,36913,59005,62573,44422,75768,93271,125000,64067,111402,98669,119761,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {10454,67451,71879,124545,16164,40504,59213,78098,10908,26685,53096,104644,13153,23363,93470,121463,10658,110039,28174,89262,12095,59514,86455,105763,14247,43788,44598,106932,34509,126066,122507,129750,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {929,104227,46239,52576,13125,104888,26633,89995,6750,80059,99983,107079,18924,23839,51888,112098,2213,9821,25943,100564,28490,84656,28636,62192,9983,36079,19152,43210,29465,86194,59703,64407,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {1540,56929,73299,98953,28081,56404,55913,63444,18350,37331,34504,54542,70055,75356,104057,108720,1546,130800,11191,97633,53334,96695,81719,86171,4160,5519,42514,98145,64533,83081,92846,111576,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {370,113631,27773,29208,23447,100376,32506,56907,42243,98148,104641,107192,44795,102891,61589,94336,2074,94475,62539,118392,3057,53957,51614,89600,45863,56862,50789,102134,82590,96334,99294,120664,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {5277,59674,45884,59015,16320,113745,62532,78882,7878,100230,67824,81267,17542,81571,60141,64007,6865,29061,8011,26826,30731,112604,41377,45762,18799,120782,22676,90558,19095,34165,76085,77629,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {2436,122524,63941,88723,21821,64616,38193,61605,19805,68099,103904,114426,47943,86478,73873,76862,5221,14764,58144,61176,7804,32413,73132,75633,18297,46435,72385,114028,59980,81248,97423,102567,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {71,85986,24576,71554,51438,124293,53232,58938,22307,36972,82081,104384,45107,61995,49375,95152,5618,79329,66319,113612,29548,102819,81240,119828,6360,95708,34066,108557,7279,125331,66337,121654,}}, - {"0000000000000000000000000000000000000000000000000000000000000002", {181,125604,19288,70901,11930,69219,83800,120369,54181,117409,119020,123867,92877,126214,116763,121982,4743,87719,56289,130021,33098,116166,61076,117462,19714,41842,54924,104530,55397,74391,59800,69432,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {4647,121230,30281,105784,55229,68678,103620,106229,9146,39618,15127,19834,30280,79424,76857,82367,11573,78718,86589,106508,30760,104974,77685,86374,26925,122911,64725,69172,49263,91846,83116,83913,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {934,84484,98804,107779,27791,80836,46181,127141,1102,41711,18826,31852,9530,25783,57463,80857,13565,35466,24086,35314,18193,92000,114981,116723,18392,68407,25534,117318,55536,83249,56474,81854,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {111,123193,37110,92665,34618,69223,92080,119639,1838,68869,8447,59269,59959,115453,71172,73025,6646,97463,83791,120408,71692,121700,73995,84631,14725,48249,103443,129331,58778,106135,68669,95587,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {459,49263,63938,101531,32220,70305,61414,85864,15475,78448,34238,80264,52891,124874,55594,67696,6582,22449,96357,116855,33464,75216,58802,70872,21995,57094,27259,119176,23382,90436,71459,77197,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {257,65325,75263,80551,30423,83310,49665,122857,4491,97576,12794,16963,6833,56486,31891,127807,8582,72557,33236,116531,14523,82763,72622,103589,10765,51051,51199,63619,56930,112694,90543,130732,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {2140,21241,57248,76335,16999,59349,61166,75625,6711,120824,23620,78002,21813,84836,45828,110088,6370,32220,7538,125138,37435,70626,74503,129591,36436,91147,39301,94207,58379,81724,66312,82725,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {5542,48855,9261,94491,29165,29544,69914,122786,8965,29241,54006,61177,28121,73961,58668,62402,7053,127467,8973,98466,69682,112212,98826,120578,52727,68259,78563,85974,61184,86264,69918,108992,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {281,47133,56199,72919,3792,108888,3855,116539,6654,59097,81394,128457,85589,119701,90846,115354,3092,23469,56324,103713,10663,10941,16329,75438,21320,80348,77277,97679,24071,128513,30931,80144,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {1373,11576,46207,115407,33499,61261,111748,114143,6142,93867,39039,115842,25806,102439,115783,130495,10049,97043,44465,45930,60871,100519,63479,94417,15919,32958,48491,78779,73179,81624,73723,108100,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {5787,85082,8256,117350,21600,86285,86911,95542,24742,96440,24976,97559,66779,98914,101048,110636,11368,62265,23907,26284,13643,65347,40785,70020,13716,47854,21461,39753,50923,112568,73066,123144,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {865,41077,21910,107517,20834,83091,75686,114775,31065,79450,54773,112235,62914,91958,93886,129768,1267,68064,16887,34329,34577,126107,88911,89275,11431,76576,36812,43199,54105,103104,98328,126498,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {8313,60066,25159,41521,9901,75053,67181,102691,54231,62134,92172,97888,64286,101376,84455,109590,14214,130607,20297,113832,29536,89036,52158,120368,16147,41359,37959,122756,20537,28408,84175,89314,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {2352,75046,78686,113598,21081,121310,70500,101035,3634,21217,23481,112156,30716,116824,41569,82082,4018,99471,100962,126925,41357,104218,57209,121888,22399,123652,102752,115306,26608,30634,28884,71504,}}, - {"0000000000000000000000000000000000000000000000000000000000000002", {547,93847,10235,18611,16965,129793,27702,121739,1536,117104,6808,48414,22335,66846,98837,120403,3320,39059,34301,124875,31478,45466,63922,77846,4174,17468,55452,111916,84512,124580,85565,114278,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {604,56022,50945,87744,1992,24846,33241,97259,9874,115968,75513,128324,21011,77110,66071,130969,14960,94394,108913,128375,67794,78639,106843,115238,19439,84994,81268,98401,39596,84893,53536,71487,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {196,39402,63753,128618,51850,53454,69336,87785,8130,42277,81496,93522,9767,45508,52689,83614,9117,93050,35209,97904,19436,125069,49697,119063,19469,53780,31384,89045,52265,63899,75086,93685,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {902,83015,11750,59813,7705,105354,118121,129040,26350,69302,65467,82730,58735,73945,70191,98020,10111,10308,83145,93411,24795,69433,60088,91028,13694,81094,17495,104746,19490,36252,53232,63330,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {7099,124648,38017,79590,86757,112693,103964,107096,27846,59965,31511,88472,28222,54332,90975,122600,19672,64817,64785,122447,51119,96682,53338,120408,80990,106784,96655,123332,100224,102631,101996,116355,}}, - {"0000000000000000000000000000000000000000000000000000000000000002", {138,91040,31718,83313,96656,99254,110266,111882,5870,37712,83597,108360,25785,43972,48815,54136,8926,45554,59700,124308,38326,110195,49884,121320,14187,14421,86532,98376,23481,115445,32081,74429,}}, - {"0000000000000000000000000000000000000000000000000000000000000002", {14533,31259,58833,61876,34430,105194,55673,87494,22919,122529,116980,122215,43089,59445,53672,86910,31746,76693,122017,127893,33924,74010,82520,113809,45928,123413,100249,127812,80026,112579,83063,118036,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {1544,102416,43972,71060,71009,106841,113931,116112,18830,50191,19652,46599,19119,127280,51162,69343,11909,128558,21386,84969,35430,60920,42869,57204,25471,125680,88934,117970,53417,72331,67387,116689,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {61,3977,14422,71864,996,89538,77970,127651,14623,43194,15549,76562,87817,110102,91804,94587,3839,70920,54294,91571,22759,90594,43746,106410,27301,100997,35286,73667,57071,97127,92363,112883,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {2744,130958,55396,67778,10885,118201,82654,108250,26337,126390,102127,124282,27342,35838,61179,68124,9868,81588,11943,66839,29348,69429,88791,99905,15642,87096,87766,108006,24724,85708,38255,106526,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {1013,73539,36787,73848,79726,93679,88249,109242,1220,62904,15836,92116,5040,87817,90615,130616,10840,97327,88340,106692,21726,74146,122741,128260,33009,122210,52341,107158,49626,114129,54936,90559,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {440,67396,55796,95799,9578,12834,67078,101648,17400,44183,40380,63258,45044,70029,126212,129790,4111,30443,70024,102113,42217,121003,96138,106210,10646,122268,54626,99108,35704,60725,57042,118298,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {2399,40685,35965,83804,74321,90146,104545,127673,21991,45203,51290,54151,85827,100054,104217,127309,5332,106668,20494,46163,60050,122241,82496,124703,33153,101490,54400,62430,38352,107735,61228,90783,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {1021,100450,23983,43527,68941,77689,98219,121779,23943,83288,88465,117820,24121,99319,68631,90949,11306,109137,19046,107658,20132,101472,71275,119322,21598,98605,100937,119686,21846,50625,24441,88331,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {11440,91086,41703,87180,67304,93765,83230,91711,29357,103341,81497,82502,35114,86199,39627,86952,14364,66577,17395,85099,52318,71078,52560,98257,36330,104789,71964,126384,48757,127904,94562,107468,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {263,43501,76355,98032,27889,69668,76457,110720,2355,120643,80902,95201,52467,56552,56839,107108,2450,52711,28070,60041,4208,30139,31284,87042,5026,16435,97541,122928,38929,72086,42196,65664,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {2316,99234,2865,37076,13650,59469,106849,126247,16150,19007,68119,130381,31704,96950,114374,117937,2550,120429,17651,102750,29735,112112,44659,73769,20322,29864,60446,99827,68738,111872,89024,123484,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {3576,127039,108628,109015,31157,51611,51835,73259,30832,40717,104961,121853,56418,126731,85758,125524,14735,80319,25604,108581,15670,17561,94427,116381,32238,103156,54510,73962,48475,102457,121081,126288,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {34,87987,31884,105448,3367,101861,18590,30038,3440,13789,61834,83763,11919,42666,75085,95775,23268,101836,91808,124159,24931,119251,48632,81530,33220,117930,81635,90523,34609,128415,39425,107758,}}, - {"0000000000000000000000000000000000000000000000000000000000000004", {3273,116844,30434,92835,24926,113425,65003,116706,13082,82968,28813,101363,28955,69140,41390,101052,16398,102691,55670,122973,85345,119985,98633,109689,21778,101385,85435,129617,24604,78485,27225,28027,}}, - {"0000000000000000000000000000000000000000000000000000000000000002", {717,61080,65485,99260,18701,23817,85897,89044,6991,85877,18174,81095,100206,117594,112308,129181,7494,38093,9772,77812,25344,73934,70265,117560,24426,86377,49486,116374,48893,82594,66679,123784,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {4022,130309,41286,74567,57527,115799,60056,88210,9422,122377,55620,103792,11882,13603,70834,90296,11618,89797,37097,83872,25087,105155,44272,47716,21943,126662,82175,93238,44675,56766,62241,76396,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {13872,63903,82061,93988,89015,97375,101032,113858,14921,39129,98531,111543,65980,67917,79663,96943,17924,60128,72417,99911,50358,100096,108135,123879,26917,109495,51185,71878,59397,68930,79476,128986,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {5715,26578,56164,130251,57371,94984,96180,129635,24607,67916,25181,78434,36874,50922,72708,114145,9641,28028,10771,51248,30580,84904,66901,67156,13477,128537,58366,93689,18481,44867,24110,93403,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {2541,21976,48318,76834,14478,27970,78324,128382,9590,124681,23543,73719,36658,43828,36860,79199,13555,60394,82766,115201,61475,128898,87349,105854,18579,60627,21892,90057,25332,28761,58772,88258,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {782,81967,8526,25773,20953,129325,99097,105355,9139,23555,55949,65112,62888,110370,110014,130831,3344,19552,62047,122108,3707,104045,84138,102627,28572,43894,80000,93676,102578,124526,107952,115953,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {2359,41007,55814,114268,32598,116829,69111,124364,9945,43024,87941,105502,32463,63348,33761,114769,4816,6069,52609,103983,17624,127164,28966,33711,28496,49070,66201,76762,45614,99044,61692,89956,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {1203,101437,8387,74329,14437,74978,35514,55736,5615,99162,25087,104181,26671,90234,54624,79270,22110,123225,59615,87993,50069,102619,76148,84664,26293,30053,31407,59604,46042,81432,48405,100058,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {1129,57663,59259,96374,28144,36004,34204,94357,4308,75312,10227,13188,11674,91061,23368,59255,1381,88891,44688,86725,100644,128815,107240,130421,18759,105314,46988,107384,27453,50209,68930,101787,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {7105,69154,33332,129127,78031,110920,123978,125583,18201,89164,41391,112185,35404,69313,35521,126412,8168,90196,18814,80599,60119,115779,103078,125284,35077,121290,83811,99887,54682,104596,82852,99285,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {41,28061,28965,93000,26244,96514,105623,113429,2634,4758,29328,85626,15840,79568,41930,46351,3571,68583,54669,113000,63447,67647,75081,85238,53804,117430,63232,68954,59634,66249,74069,123236,}}, - {"0000000000000000000000000000000000000000000000000000000000000002", {1344,19400,100145,118849,12589,61549,103310,106063,23392,83587,96273,99533,84754,93725,121971,123043,10803,91672,88143,107104,12972,46555,54239,64966,23922,115073,47709,77816,40573,47900,48009,64405,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {5282,113087,72202,120184,20184,106092,24622,54503,8862,42057,83935,125850,42920,60574,99630,110200,7463,13348,78903,100587,19105,115233,42871,129770,20962,100841,29037,89351,50070,66276,62918,79845,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {499,75985,60387,62039,43214,82140,74181,120663,8299,25989,54452,126283,19290,109445,111713,117209,14810,99452,38575,96977,53663,93239,101958,124106,15845,117124,94815,102073,21706,36388,26582,88207,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {1443,93745,7482,47739,3573,55386,6749,51996,4879,44878,73802,81899,14496,23474,94768,113757,5534,129018,32415,109388,42182,49912,63287,68793,7424,47140,87543,116701,30729,114179,78564,94728,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {194,15809,61466,99771,32694,76836,83203,102941,33814,92580,69369,80295,51421,105130,84011,109236,1809,121971,59322,86124,45997,85843,108977,120144,6634,82278,95182,105859,42178,90546,42914,56190,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {1251,92021,33281,36571,21587,30616,103318,111790,12073,105155,69933,77627,16370,42502,48738,57216,39247,109486,111791,117623,69958,83447,105736,130233,46478,56288,52796,111501,49975,69361,85427,117236,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {843,53170,20107,130731,40520,96036,77178,112668,11251,28456,20936,113950,51659,75564,94151,104765,25047,72769,85063,112979,55411,103059,68371,108180,25065,127578,87920,89744,34836,36593,42305,92500,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {1845,34643,3948,93826,28523,120671,41618,120999,9480,60665,54071,88914,20580,91611,112266,122844,7953,104430,39588,54595,61291,81002,93758,112155,28190,46961,108804,116586,84688,128846,121200,128220,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {6242,71039,28151,47983,43972,130920,56962,126772,15388,34148,58779,86937,27991,121953,57820,112141,26828,88218,70483,125501,53284,105388,113285,127308,29186,75792,90685,113328,32933,99794,72346,126835,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {4822,101714,16410,127321,61931,120664,110875,128529,20666,54196,59617,97829,27532,100502,74606,87480,11274,126317,29278,40702,81675,126033,122714,126653,14113,83227,77587,115581,20281,86463,33440,35290,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {16,8660,34899,82137,11354,16014,66935,88029,37743,98170,57384,109756,44298,81513,48636,68803,1525,78164,19368,36460,8413,31518,53579,61218,4535,64280,45215,47574,52218,85387,95171,103019,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {4101,12834,4102,9899,34067,71284,124013,126656,29782,84823,34638,50546,49664,55944,62318,126090,13905,120453,50197,65315,68497,104605,68700,111045,37370,94440,68362,91616,80813,117652,113262,129739,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {32,120024,11457,92715,11858,106946,17270,104955,5264,31058,81467,101013,8924,71440,33379,111974,5779,110405,61954,116804,48660,128676,66170,79077,7264,122291,14362,114542,44437,44668,64110,111599,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {858,66569,45648,118415,30501,95195,50579,70984,10936,24342,14211,34428,15996,46637,110961,117260,10400,84314,30171,110793,12565,113927,56412,95766,12168,107464,55738,86492,32032,59200,67481,71702,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {211,122676,37239,121428,68934,71902,92247,107006,42741,83959,51761,71591,88350,110426,106489,116512,17783,116679,54270,107390,68402,101734,82149,82940,33405,83110,69477,100459,46521,124110,73341,106586,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {4769,124576,64629,80479,22120,62549,68944,94232,17403,91008,71316,123163,21890,111270,76490,90344,10471,47044,53264,116314,41313,63898,66275,107879,10476,12025,18105,110512,34069,76699,79292,95359,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {5138,31848,62585,102200,19505,110512,75055,95788,20163,110402,42213,77722,30814,79068,53788,106590,8002,101942,100043,120601,34982,45681,85033,104927,35344,57114,53813,62787,35440,46967,91399,100975,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {2894,5115,5196,8572,36336,95960,37564,129161,18901,91310,50466,104935,29687,87018,102644,130428,8549,26719,23950,121565,13020,109171,38526,82920,29026,87689,59500,91102,43523,99017,45614,66608,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {1367,104522,14112,50350,12231,54289,69397,103123,1667,71581,94377,129905,5701,30789,25558,55713,14377,17373,74024,87484,14933,130381,21638,86808,14973,90798,53173,85556,62005,82706,75190,104125,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {6878,128142,27323,102269,57458,96272,65466,97541,19450,29353,20497,53042,27729,28944,96071,118286,18318,69506,39903,129715,22720,87328,28443,116424,26207,113262,79853,81783,39284,106382,71915,79543,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {855,99963,91677,110615,11775,36471,102112,107351,7670,70393,61866,121293,16957,83792,50239,113548,13386,37185,76361,77268,39732,110971,63898,101071,15523,28157,21894,84925,17833,88688,106745,123467,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {6150,63330,13653,81070,21809,36097,104146,111486,46120,92744,80195,128647,49008,116118,77211,124564,10921,45323,32526,75935,32059,62375,52124,55344,15006,75257,80979,85691,65264,113531,93780,114728,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {2380,59548,89300,113702,10048,78922,37470,58562,36249,119477,59456,125432,46250,76087,66266,89859,6428,27046,71910,94978,23501,53483,25929,41461,28723,115395,45333,105123,49146,122747,57220,112804,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {104,109174,59753,99837,35672,130171,63361,90139,13678,106146,27385,79444,33012,93281,33494,39242,19579,111651,41634,58495,109013,130599,130407,130673,46654,51408,95714,117507,67794,68717,70504,86859,}}, - {"0000000000000000000000000000000000000000000000000000000000000002", {3906,121884,23161,101594,4585,27946,12447,20685,5743,7500,37455,129359,29834,129486,40114,68848,28662,112806,50155,55122,61901,104853,63992,81014,50363,116253,70770,93152,57355,104509,65163,130699,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {2179,49182,21717,104935,47974,128600,56133,86861,34607,102248,98514,110359,35238,62468,96533,99077,4460,82868,30222,99451,24985,80915,47975,64739,47186,94416,95932,112427,57839,95279,75891,97286,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {2393,51044,48697,94711,32072,113561,60971,66114,11648,115600,63028,107394,36859,49360,81828,106100,3549,56549,73049,83176,19671,49426,38193,89614,6854,13779,51553,94935,51173,70050,65221,84140,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {1212,112317,47230,53113,37324,68819,70971,81143,34731,88471,38235,43453,62103,75551,94245,124869,7599,81830,9545,121311,9310,126129,80314,81039,11313,12592,11477,43847,16450,29594,45947,107169,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {4933,88792,82805,125234,54266,129582,78945,85373,13909,24340,109621,119750,87500,110328,92349,115689,19457,64715,55602,119233,19805,107454,27006,77142,30101,37460,52763,63595,40106,69997,111287,120953,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {468,3944,15466,54643,47697,84273,77788,109110,37872,101578,112624,119392,37964,115576,101892,128471,2942,64824,39360,65610,5022,50715,7299,130864,26504,109085,37799,102966,47540,127974,84699,111888,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {152,17795,36479,98438,963,91244,82844,126318,9842,13902,45762,123348,16796,59916,70473,127991,5005,107646,38330,124983,23979,99587,83600,113996,17940,54116,27243,85751,38587,57331,80240,128712,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {3882,93091,84161,108910,14214,66943,19963,89017,26748,103239,51673,108911,26809,114088,54118,82634,9983,69733,72904,99992,35523,50988,63292,130145,16767,27892,25737,32906,25459,111475,89549,123800,}}, - {"0000000000000000000000000000000000000000000000000000000000000002", {905,118643,14169,65925,61932,94198,92388,95889,10827,58627,77111,83599,59045,128885,67112,70945,1775,70797,37161,42307,33323,108750,33485,77874,6376,113619,23914,83669,9559,54895,71552,81625,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {8119,16424,22072,113378,53846,127520,66621,73320,14589,86807,15363,101984,47060,67876,64956,74631,8879,96884,35152,95241,67801,89708,76926,94587,16810,29697,40998,53341,47702,53257,106772,122376,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {228,10819,35319,60103,44307,68355,77942,83730,6176,121442,48580,49837,46950,96382,110090,120199,2678,60160,21914,101856,36385,67996,99247,109630,13690,86582,18578,124766,26532,31241,59554,66774,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {1793,60405,27006,31622,90739,126547,111795,126396,6036,99735,28402,91194,15568,81820,78114,99352,18955,25548,100551,106932,53102,102564,87830,129164,42622,112446,44824,90989,51893,103629,57386,101456,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {1892,82099,84111,118870,3115,40978,4147,92573,37607,112710,49343,110911,49055,87728,62999,85708,4465,68484,20648,112633,57431,66103,100632,113270,16213,130208,50468,63168,21694,102580,44785,84124,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {10844,116643,27275,102723,54545,127216,56747,61138,14539,92223,30750,112537,23859,25452,94171,98273,12683,31522,25341,55108,22876,125963,38741,107360,77710,120742,80970,112368,85143,122820,85989,109358,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {13733,17229,86407,119283,46909,114706,69539,123078,19368,89137,89142,113704,30426,44446,96938,106254,14764,129591,80361,82004,25635,112512,55102,67715,48791,71227,99385,106860,79732,104754,91227,98140,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {15194,129531,42180,55967,17531,61051,53277,114760,52178,98807,69583,73889,77824,108124,91713,102198,23030,93492,77500,89528,90670,110195,108215,122699,31646,112352,118251,121122,44613,128222,56640,58555,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {1343,37436,63165,79331,41969,127759,48531,72953,1437,89839,9208,110314,5016,89747,42682,106790,4657,111579,13062,106167,44497,124078,64678,129198,24834,32737,93976,125278,37650,49926,46074,47114,}}, - {"0000000000000000000000000000000000000000000000000000000000000002", {4823,59193,62107,105820,10704,115728,37436,49368,43020,107891,105170,106685,54075,57542,76771,84151,19232,59718,20295,52897,56345,93561,65349,99799,53327,125006,91605,124473,61846,71645,93432,126758,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {1772,91584,98330,117355,48382,57458,52949,109192,34069,71985,73937,117032,44869,119992,89106,118518,2290,90991,58181,100156,89469,103114,110735,124303,2914,108013,13726,126198,35270,84598,58427,76223,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {48,99494,15015,110216,330,15688,23534,59765,6870,119809,78611,127365,17647,116005,74958,86206,6504,9620,60694,85282,32882,106616,38160,108649,24936,122189,112414,112596,39393,80339,61385,128978,}}, - {"0000000000000000000000000000000000000000000000000000000000000002", {101,119154,71529,130536,2187,49873,54555,64141,8928,77312,113791,114916,52778,81760,95052,115749,4213,15415,59980,130039,30767,43413,33548,37031,13464,65693,68774,72431,20625,124619,119166,130780,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {4233,33176,43708,55482,25348,51018,60746,97987,13491,23060,65847,126378,14150,52701,67149,84987,21271,86591,78598,129732,60172,126400,78020,112938,36243,85645,53784,70104,95963,125947,124532,127150,}}, - {"0000000000000000000000000000000000000000000000000000000000000000", {83,129624,47935,57492,3098,118571,62848,100824,2201,129786,40709,51811,42027,67793,106728,123029,6383,124311,90864,108178,29820,51826,54355,111489,9130,87309,45926,75107,29967,35844,91034,95581,}}, - {"0000000000000000000000000000000000000000000000000000000000000001", {2625,12668,40547,130658,63237,118548,83120,110347,21183,85208,99979,117248,35320,52452,58849,115693,8767,34019,42852,90307,23961,49397,51719,98408,15894,67832,58244,100835,66133,95889,71477,98549,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {235,65029,45368,98164,12719,41416,54778,126678,36687,50519,38205,46645,41843,65062,44021,125867,5393,71268,72227,90535,6016,51231,50075,121116,7789,67777,72674,77789,12817,113149,35048,74889,}}, + {"0000000000000000000000000000000000000000000000000000000000000002", {802,2470,82865,126091,4290,56329,50451,84100,17163,21935,22594,103016,17822,28961,93874,98180,12398,121178,53234,128710,44556,98033,46816,120890,44492,57487,53675,83675,51365,52958,98868,107516,}}, + {"0000000000000000000000000000000000000000000000000000000000000004", {1714,115778,24542,123620,9417,114821,64402,119047,15330,80205,93690,111881,52681,80723,89061,120532,1928,68992,96580,105657,10806,58310,24637,72792,20038,83172,22484,116059,40313,122574,100688,117977,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {3181,92424,65529,114980,5122,50206,24349,44901,7992,63999,10855,83788,89862,120503,127631,129544,5974,73070,81792,96252,12135,52433,50007,128006,14134,57561,25554,62328,41153,64018,128316,130790,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {462,47204,88431,91563,10036,80940,36928,53580,2272,98312,107969,127762,46492,96887,112619,127503,1826,64537,69811,120925,21517,84329,89711,125021,16765,97320,25821,34645,31456,36167,33934,80770,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {4536,70653,20267,109536,41591,46655,52723,112375,25278,95099,123317,125894,62191,79881,83919,88859,20725,128181,73447,81121,47442,69731,61489,76637,39324,39473,69872,76021,47874,130318,76547,127864,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {2437,104537,26766,67203,77710,80873,101053,122081,17553,74588,49907,119548,28425,100700,37855,124993,7581,61033,19655,72560,39735,58434,70025,107839,9569,19450,57774,85238,16196,104333,42299,73549,}}, + {"0000000000000000000000000000000000000000000000000000000000000005", {577,47641,51961,116531,35858,70798,79577,107257,7990,79081,41682,95638,10275,122892,43365,74503,4672,85859,55990,117330,6955,103966,16310,86763,14582,19945,42038,106864,34782,43359,41837,110663,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {3432,16038,81253,115127,21358,96302,33069,105136,9149,52335,64799,87576,75312,80579,83428,98811,3482,121292,9179,90964,67648,93789,114300,121361,7122,90504,13900,71334,56844,105173,67225,124454,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {1347,97821,39742,103801,57191,129729,92952,107206,12351,91255,44568,106427,22864,23736,71593,97214,5475,37568,8676,45753,25993,125484,29860,76295,19817,88620,39810,48530,29954,124301,33306,44406,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {2507,35457,44295,54297,18653,96198,59686,101509,25980,126793,58231,99111,49684,86077,112594,120310,12247,116080,107040,114215,21894,59079,54018,123948,26703,110914,54690,86685,29459,121801,106525,122150,}}, + {"0000000000000000000000000000000000000000000000000000000000000005", {1761,49893,7652,25214,13680,81252,48359,49958,11270,53144,37928,82424,39020,94879,41658,68230,8419,68052,28952,57536,55082,117267,66151,72121,18377,75029,90343,106555,41650,45125,51121,56902,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {989,47806,56699,75701,40682,129114,104752,130210,16515,117767,31366,61385,17324,104728,67998,127493,5333,9637,47996,123300,18988,106064,78337,108164,11924,49880,64385,122580,28824,112970,68565,120344,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {1650,7101,87115,106069,16472,107372,30741,47465,4783,129120,72323,123589,16367,27296,82896,98509,3639,101344,35297,111495,16334,129448,82699,122901,5451,82139,81306,129977,62836,68689,79941,124419,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {3699,59367,55122,60539,37298,101020,43320,51575,14789,46768,15475,70161,70256,123564,83243,86829,8018,87593,8838,127864,35937,111692,43097,85757,12878,33352,63629,82049,15564,51885,29171,117888,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {1926,18553,16930,92149,36872,63597,37846,79385,30278,71190,71709,72100,32861,42077,50302,102436,13975,26469,27368,77965,21160,40355,56436,123398,14099,123948,24458,41396,56007,96778,102823,127270,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {65,12985,74297,130318,43532,128669,66111,113064,31107,73096,44380,59856,33815,92179,52866,96696,14296,38000,48460,59944,21462,79064,92625,104110,15594,90628,43407,112754,52163,130308,60843,76313,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {6498,55549,53149,121199,48427,81377,70468,95775,7361,66238,19543,76591,56018,91376,79663,120074,8705,105601,71278,125138,55490,122021,57038,90434,12828,43541,83816,87598,27234,49618,58775,100555,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {1709,5066,75112,123463,19655,45245,108419,114698,3734,73301,80400,116827,26871,110315,53580,107920,11752,41948,22677,46612,69207,121552,76783,122273,19456,46985,28443,83926,62999,120394,75857,110787,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {3321,81671,65591,83849,47104,68414,107691,129980,12174,66460,16510,86912,13936,122447,15478,28301,7240,112584,53184,100659,8294,50002,60833,130588,28178,72512,57116,94627,28318,102289,42011,125025,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {2363,101121,87260,98687,3091,118155,51013,69127,27960,88512,49881,105635,37899,120361,64809,82405,5561,9477,17763,42811,43584,106282,116637,126133,15943,98126,21312,113465,66460,101382,78048,87916,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {1916,124580,15413,37614,26226,54521,31899,83723,36374,65209,47265,69358,40649,77493,71883,119007,7041,59236,40245,76142,17225,65779,59156,87089,22923,88154,120805,125259,33238,82806,34930,122891,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {84,123215,6049,93569,325,21624,60478,72231,11212,130603,80693,115975,22696,80399,79311,97282,4245,44256,21608,77584,32234,130948,67798,72805,30802,108287,51276,86470,79393,98581,88128,93585,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {2971,123979,22949,46363,26782,66849,72167,88643,5338,81027,87050,99944,28104,98323,80665,122053,44640,53876,88745,94856,47738,70991,66526,70160,49067,58417,77750,127337,61435,70111,62409,108630,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {10329,105403,16620,62000,27182,97334,27187,33671,18648,20995,63119,108614,29525,129881,33914,56955,13536,38981,95691,100254,18074,90790,26399,89994,25880,117738,31746,57478,39000,44123,50373,115229,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {5220,59608,81416,103593,15134,28871,56168,95481,15216,106020,25741,97213,35182,93022,44865,90284,8495,124089,21754,81665,28466,119781,49744,94822,24546,34250,29156,70847,78374,123816,122055,126521,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {8926,123648,46602,47920,12887,120187,82953,102336,16895,86882,32237,60307,25252,105544,48365,62408,15546,118489,78320,111689,47889,103241,61735,104533,16238,95251,24529,63919,22991,82841,69615,112498,}}, + {"0000000000000000000000000000000000000000000000000000000000000002", {1185,112912,8038,83793,56010,80820,74681,82138,5287,96364,123236,124658,66772,121661,83509,106959,2177,46664,63197,102691,7524,62742,55488,99954,11582,100839,11830,96077,40614,63543,50922,65877,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {8827,107406,11710,32384,60870,68762,108356,121479,14421,69308,21111,21981,73091,79949,76636,96864,21689,75125,31316,86658,32451,94917,70815,130130,25285,83198,66250,90494,64714,76766,95971,120606,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {75,73504,4617,87550,8946,24502,94714,119113,33552,36437,96391,103493,70887,85236,82040,92009,3348,74345,4512,56799,47389,119413,101926,124507,3622,48139,24734,129469,45659,47040,73311,82231,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {569,115638,7006,96215,31348,60400,70855,87378,36982,118455,50619,112275,43676,60029,85608,114615,2617,93727,89450,97994,30412,87319,36194,126249,11263,40459,56651,79522,57347,112257,93446,101796,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {5514,116901,7632,54175,19637,81419,80818,104024,12293,60796,44181,129189,28681,68661,55340,106139,5970,123204,38787,113763,52286,93948,81854,99224,7819,30439,75753,87651,21061,120303,27120,79910,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {2929,14952,52013,77193,5866,84108,78990,100113,5003,46928,34174,43180,47580,70494,54498,81846,11531,102934,111315,114618,47090,83962,88282,107740,12181,49917,42430,111800,16606,21946,53813,102615,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {292,49634,41239,76786,11870,81077,26439,69369,7624,54952,35700,88706,49189,126520,90391,108005,18320,27521,22059,85356,50048,109324,89133,103984,21578,85609,52494,60178,56626,106010,64147,105336,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {1087,121626,11801,21712,8298,43332,37626,113326,22731,112233,111618,125459,58566,125026,113767,129322,18209,45320,111207,115513,24135,30290,27213,70416,39485,129015,51975,80580,66129,89570,103553,124964,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {4217,5781,64929,98941,6701,119962,19391,98876,26063,90469,75024,87992,60818,72264,67564,104578,7361,73899,39161,82656,18668,119774,74782,127335,10348,104599,81801,102996,14976,33275,24729,96519,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {1974,128516,54461,80478,12757,129579,40017,73512,20716,84429,26042,40187,38586,99111,47019,128651,13752,113435,65468,92561,23671,78919,91132,91966,43612,81993,69069,73414,70213,82577,80016,95565,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {237,128266,21118,26590,32803,92212,51947,87477,18793,88158,63573,77446,20902,44854,54713,127130,5128,54184,60419,74802,38061,50413,57537,66355,44427,45425,85592,114470,60482,92782,88079,95131,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {958,82537,47989,117948,16445,63166,34010,57066,26418,64921,56343,76003,43686,113702,46599,129942,13661,89687,52704,110124,20038,38976,37611,66194,21344,107870,84795,87851,52506,76418,106087,119840,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {841,60225,36522,104379,24330,61715,46006,73412,2392,46897,16804,54353,2856,90432,118683,128270,15422,66291,18152,72867,63387,90766,85760,89667,32745,79595,41636,93626,81777,102515,89457,116064,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {2167,130252,62999,83706,24526,98233,104085,119150,4945,58031,50423,90620,51439,70342,81841,98890,21352,25246,33724,109081,50722,91524,57343,63208,34817,120667,82006,126728,91909,125918,110088,123912,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {1004,127996,15152,16740,24990,103217,36312,99081,26375,76653,76185,93032,28126,88569,41268,47423,6912,15981,48471,72375,18931,105689,21677,53206,23225,52456,43303,102436,23963,38486,43184,85084,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {2429,4023,60604,106263,70874,126856,77657,121967,4774,45899,59210,69695,17732,87385,127092,130174,18085,103916,51407,122518,31140,58530,67755,119275,26852,85703,44191,114408,68571,86584,90381,130796,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {4583,108414,55833,112848,52127,74455,85284,105022,12404,78032,13861,107577,14227,79051,36146,54957,9290,37947,67979,125812,42955,80473,46895,115605,32802,63565,72233,104998,58004,68967,105635,106258,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {573,28332,1430,90096,79787,97426,87819,90439,16609,85309,18543,66105,21879,65369,93594,113277,4121,16033,78683,125268,21060,31410,39826,69787,11482,87493,23483,63252,11872,77753,23754,87946,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {6748,123563,14869,75803,64296,99155,85310,128483,31450,102145,93979,117115,47331,49023,85122,125841,10038,75369,38375,72989,23265,95173,46402,127207,16252,34356,16681,45114,27114,92477,61891,83278,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {145,99747,78911,87955,1262,78567,25854,54233,5419,22610,27116,106074,9590,36348,13825,98861,3632,41763,22663,55896,22872,65857,107031,125979,35788,106267,62482,112928,66129,123179,71971,130333,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {75,4707,40727,53255,12261,34577,44352,120932,9846,115509,30942,116678,38174,103756,67553,102120,4258,39318,29806,34620,12409,129607,40553,67322,8768,118253,27092,128474,23030,73671,64729,96071,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {638,130529,49176,69778,4238,32821,68785,79309,40965,101098,52423,108398,43357,85111,45552,130580,4674,33150,43772,105697,82744,126165,83658,114511,11081,81829,19123,85037,52000,124665,64993,89580,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {3169,11770,52257,65970,14689,122459,67844,110996,4560,94913,38409,79178,15126,103447,99419,109011,6107,6202,11814,119170,70351,109884,76863,126051,6823,88324,40784,111491,65631,73569,91945,97450,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {6172,105236,34835,39924,28022,96069,75596,84610,48886,124349,63917,66592,59457,75975,71676,122386,13471,70784,85795,105989,15422,48890,125112,125917,25213,115016,45105,129696,28694,72509,70725,126643,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {2404,107799,29985,110589,73596,99849,74365,125657,27030,102769,44027,125976,32634,124601,34095,95719,4491,64663,60300,62096,68732,101166,128422,131063,6651,41825,29190,121979,11228,68034,34181,68339,}}, + {"0000000000000000000000000000000000000000000000000000000000000004", {4488,25068,12291,83151,67400,127362,128010,128988,51218,64539,108632,122230,51883,96996,59125,82066,14167,101031,79558,125866,30571,85446,62023,118335,23146,99383,96949,103084,47150,117778,94183,123668,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {3850,118156,98023,107697,4080,94206,47635,87653,17707,28485,31699,73303,21040,75537,63202,81217,9986,101101,94345,104882,17119,126304,111724,116028,24992,63384,26366,127666,87730,98783,117532,124397,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {807,1237,15747,89167,36049,122717,65206,74082,5571,10538,37951,38281,59532,103408,72946,84637,1663,66653,55212,124124,25693,66321,50916,101072,18758,54850,21529,109091,25910,106720,102314,103401,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {8163,53077,42352,52231,17034,111546,66695,91496,20977,99389,37648,113583,23206,71671,66032,117251,20788,117400,29074,95948,41114,89730,101899,123605,50612,119014,66190,79065,54308,121241,102616,121079,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {1396,118206,49526,102347,8551,88490,79726,109818,5269,33955,47078,113454,8019,113287,12698,122094,2570,84299,4404,33070,4018,33799,58599,67636,9980,37385,110028,117454,39873,55684,96580,116772,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {5709,77248,30016,110530,39174,97092,46469,103068,44684,84935,76604,124664,48454,107589,75225,87219,17554,80894,64577,64621,19194,19437,25081,74161,43780,77625,70098,118156,67252,128550,123437,123608,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {1186,87220,116513,128605,97503,117529,97683,106777,8796,34464,18127,57526,22914,61379,46441,47257,3156,101905,47490,129174,19003,77474,66796,97906,9987,54420,38885,112063,10797,59182,57019,96934,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {11078,21174,11083,118363,18814,108087,75847,88436,16479,120874,89094,115470,25115,63557,119517,121792,12540,47785,56421,114352,79749,101543,84463,96178,13647,97015,23122,44338,22815,81037,61730,63108,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {3891,40144,48187,119250,17939,129448,74457,126594,4302,44753,10826,36036,32159,46058,35232,51893,13365,49638,53807,103807,52450,67194,67080,128122,22407,111842,44534,55431,79308,96916,111897,125204,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {2227,97772,78440,113818,14285,81582,78978,84402,2302,127845,15791,86486,85563,97574,113446,118198,4396,121378,28606,51199,6674,62216,104143,108426,11048,57415,68173,130615,13287,128051,36376,81612,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {3809,108653,78780,94395,28336,60849,43795,91528,4132,97462,69778,110522,17059,64170,109401,127260,5316,11799,58175,100411,27615,44745,34737,98804,43610,115452,52571,61016,57286,127791,70401,101550,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {376,89733,20840,66104,9700,59516,20535,120112,8328,15198,34780,67956,33146,78044,35481,51898,1341,28414,79309,118354,8961,119085,38359,57706,17396,25115,65892,128377,52081,58056,68766,128732,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {4164,39944,26293,69539,14600,56011,39032,61242,5072,121349,12664,46999,6792,44235,44164,93519,8853,15440,19476,124362,21640,56334,64877,125882,14929,118094,43733,131017,55959,78067,63977,97677,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {814,59457,20018,119951,27813,79313,101760,109860,28255,82086,100369,107351,37696,77347,66908,80508,5856,35460,17779,108720,49548,54298,82286,121028,49999,121859,95247,101261,63643,93589,69480,88913,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {2098,35453,102386,111388,33528,101098,36939,76911,7847,74943,44917,107937,51594,58300,58841,88290,2634,15323,30462,71398,53637,84463,76108,83415,44714,121207,76061,101011,54524,106462,85247,121474,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {2567,2679,85121,106385,62856,79662,69374,88670,7776,112318,93214,113381,25509,103450,41762,110061,7491,62760,58982,98363,52109,65237,72475,129054,41613,125607,74677,94971,48446,50882,55285,82473,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {349,108928,63318,122058,13698,121229,91490,126005,18991,28691,23745,85752,24629,130720,67848,101891,11951,74946,68077,84627,44062,77794,90085,98429,20442,25284,81332,87958,42656,77629,78440,124564,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {2519,80279,31074,113506,25772,27791,46210,60117,5572,124105,7744,84733,10718,65338,45461,83691,28451,84762,78750,100095,35940,129519,68728,121165,28572,116765,48612,54779,55227,106461,100714,125005,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {3830,115315,11475,118724,6004,8007,109781,127240,51919,53775,115762,118814,61383,75982,108110,124397,10448,94856,92054,102827,20692,122679,32784,123550,29905,83937,31110,38952,76236,109730,84886,91788,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {461,123150,26414,32920,14338,64536,70577,113623,26266,67601,43840,57623,97345,122334,98452,130578,25527,130457,44862,113738,57394,100133,110734,116498,74554,116747,97721,129354,90330,95992,102641,130854,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {955,90403,78880,89922,35628,105867,69096,91582,15485,35608,52795,99969,17637,94589,20123,94499,3322,124176,74301,111608,16555,126958,19643,48912,14399,47790,48487,99290,64490,80126,100178,125796,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {8001,44484,32945,94446,11650,60161,72013,95132,21496,78063,24805,88929,48928,129688,78977,93603,10248,96088,107491,119046,29504,32097,55415,119251,19854,29496,49885,71936,54656,73307,98797,106783,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {945,94406,85834,95724,27872,75727,43024,105893,7521,47500,27890,117903,21870,51641,119262,127818,5411,97844,35159,46728,22305,129463,22743,103435,9809,128430,57141,105919,56896,93067,59091,65432,}}, + {"0000000000000000000000000000000000000000000000000000000000000002", {3172,117968,10378,104885,34997,105671,74219,128112,10661,39256,60339,108443,26775,72354,29561,116588,3216,60223,36285,66485,69642,104072,82574,116440,10156,119856,29496,104947,45155,78056,81634,85564,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {2922,21239,9494,72176,28574,80487,112684,119613,4523,97060,34211,122635,43215,55739,109201,113139,9936,96062,48436,96296,11068,60504,29957,65638,12877,83849,41899,68534,31510,92981,82562,109167,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {2176,94373,41323,86759,28156,35653,70204,107286,26982,130849,32837,85870,56813,102420,72154,110323,4429,86377,25886,104871,25371,87085,52902,86511,20298,109440,31570,34663,35939,103763,56585,104048,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {1096,8759,12215,124957,46199,83192,64773,124954,3047,126418,24642,129232,7151,89125,27351,124439,16476,109819,61243,74563,49842,87328,105801,113643,44199,127343,47906,130457,66101,106855,105558,130213,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {3207,66866,40992,127578,25622,59710,62940,99222,16315,48932,75106,88024,71685,128954,77027,100619,6640,86650,41619,79834,12207,74255,63882,74393,45781,94885,99563,119421,52017,94034,103989,121284,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {1232,113910,67946,69629,22551,33034,85340,116748,28858,58855,82549,111848,36568,91450,76696,130634,13168,92120,27293,36210,51986,53630,69134,122274,20167,107985,56661,92688,24227,43721,36328,86415,}}, + {"0000000000000000000000000000000000000000000000000000000000000003", {2019,59589,11399,93648,5777,55602,20303,28284,10084,17421,32979,50031,61625,109422,76415,91959,9497,130834,21972,41068,16085,64999,94222,103848,20372,39435,41085,117333,24089,63093,50628,90494,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {12829,37289,64570,120139,28083,48461,68430,118770,29039,120480,72588,84954,70526,95847,75275,123141,25314,64282,100323,123318,80589,84412,99664,122807,33180,114122,65544,121990,54483,94252,110062,113403,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {954,90619,6627,32066,11908,54196,58469,93878,28004,39968,60961,104395,91295,98969,94765,111156,3159,34209,25834,100177,15109,100722,109137,121304,5802,54432,25680,103382,33975,62567,99423,109575,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {1590,123636,28874,59244,20144,116293,85131,99471,20881,33525,104727,117842,60864,82946,96159,128478,6754,28450,26218,68019,14983,57214,79595,117977,40307,118258,57719,111114,84404,117796,97669,103776,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {7813,23269,39597,103884,9525,52317,83126,105483,18956,40449,45770,87289,38950,70355,61272,100233,23817,84184,43022,110707,71841,120237,108425,122666,35137,101483,97487,118435,44468,120697,97454,112215,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {4095,45546,84055,99103,38098,119438,45617,50276,20378,126087,32270,85793,54787,78715,69514,78048,6472,115221,9811,28274,26373,126235,97749,116063,7683,100406,76115,105350,21598,46927,99741,105747,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {1298,29784,12511,70142,30291,89148,94926,129383,11609,29154,24239,30040,63156,66093,77034,119382,16266,116169,108776,125397,42864,121460,81127,121487,29771,109699,33629,90942,39367,78228,69203,113591,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {2559,26161,18835,80544,6746,13101,72993,124718,8464,62998,52727,77995,14697,100270,61274,76962,14507,77822,62126,81582,31676,86885,48268,79803,14550,15544,18153,118491,27848,90587,59739,119599,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {1752,58637,4385,94771,50186,84884,95884,105571,4364,22862,51696,106491,84774,125970,85392,99917,9614,104991,45824,84715,42513,74053,74061,76415,21234,121225,79217,111600,55268,116437,57805,86171,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {2035,11488,37640,120536,107315,130708,124288,128847,5165,117556,85878,115139,41241,71803,82277,114167,15776,52865,73402,93531,17103,62652,63354,67707,18653,120341,50052,106690,18740,67047,20554,113050,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {3868,93311,4380,115671,26157,88145,64221,124371,5761,77271,10019,70251,12162,80778,104547,121104,14282,57997,24917,120977,24090,28094,34215,94559,24466,55329,40851,98128,56708,129714,84576,123191,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {2095,64168,23433,124055,38952,63409,100178,118314,22548,41731,72682,94412,33242,114829,38085,39081,8938,129735,54992,129443,13905,48978,51131,57808,24487,121773,54516,72485,32305,115053,73607,99505,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {1120,8354,20896,117315,28372,67761,71523,87320,2249,81905,53869,94984,8770,39554,29912,36211,14895,37949,32776,73955,19350,68446,106009,110520,22285,53364,32041,46854,36556,104054,118109,130247,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {12857,20421,17034,55428,26883,121875,36969,48399,13193,104733,67883,106147,28434,122634,35910,108168,18775,71995,33835,104229,42417,113357,59524,114449,31200,84173,36292,55040,47889,95797,73680,102962,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {767,83082,105735,107654,51726,71969,57344,101990,28770,124726,55717,111008,39209,84569,56636,56653,38789,116304,89858,120086,66232,112697,106722,109480,39145,117961,54140,97937,58916,83490,67082,84905,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {303,73357,54861,111688,19355,47006,28484,34729,4264,57259,33217,72209,30066,68928,40446,87706,374,41559,12921,130989,41824,92932,45515,101760,5321,115750,68463,103064,13152,106359,14858,105778,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {2645,45828,28865,90080,23376,37413,106120,111985,9553,42024,13713,94031,67507,86974,79449,123480,8064,100921,43523,119869,21546,93455,42780,94570,10362,49731,90963,102719,55212,80017,117101,128609,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {10654,71153,58440,61788,22926,46313,54064,120910,11334,23089,27910,48647,26896,62738,108709,129984,11370,88278,62195,82218,45293,83603,77385,106087,14335,117197,47763,125760,17627,111039,49375,70500,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {589,61101,37342,103566,3202,65766,33737,92013,17348,27961,90749,123097,40391,89451,45075,45307,12584,82723,20977,113632,30280,50080,31252,122576,18885,118844,81080,120060,90394,98435,124647,129345,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {181,118447,85648,107104,40290,43477,78829,103753,1307,74490,61753,105194,83872,87044,101678,112649,9779,33374,20056,70895,52547,90270,119906,122479,19513,119333,80703,95400,29110,109480,70053,112667,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {368,66571,40744,122896,66195,72295,74534,93298,681,106347,111253,125766,23808,80386,24083,51939,18147,63146,78435,102242,31088,54335,88536,121717,26748,59204,66717,105013,29959,121172,53801,102693,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {1357,114787,41938,121607,1802,36324,48812,51881,7583,116275,60451,68697,24533,72418,108227,122108,20905,111283,37077,108389,27612,81032,85169,128552,31067,71388,44070,74317,52533,61033,117649,126273,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {1085,35633,36601,102272,19280,37213,68260,117771,13001,102304,65968,128507,37786,108249,97676,122821,4407,111528,8025,59457,5403,91127,27025,65691,6765,91113,68195,119784,44446,119223,74518,88310,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {1807,118549,86671,104048,37371,91853,77469,104109,11697,64546,36936,61534,34379,40511,51945,68408,5189,51001,54767,58842,7516,77192,69896,108819,25801,110419,127320,129015,38707,121935,58747,66958,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {817,130356,42282,59676,14613,64306,110409,126251,12289,14542,59386,66425,29873,86023,60293,71482,2485,128595,56156,123075,15629,116410,51311,120954,6624,59190,45536,118980,17884,83740,56985,118402,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {68,121806,38459,92815,12007,88060,19575,46705,12252,23220,50377,52880,24308,107816,41841,122700,4268,97927,13277,37656,20892,122984,28573,115942,39428,85985,102713,104111,48623,93158,60297,78087,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {1256,25498,63470,116788,16130,93538,33774,108395,26827,68051,87333,120117,29503,45491,92175,106189,5501,66629,15527,122146,41032,96899,93826,96367,14703,119202,90770,97831,17139,55792,56468,80924,}}, + {"0000000000000000000000000000000000000000000000000000000000000001", {12831,79814,14764,53632,38267,40202,88947,125347,17119,82161,43545,44898,20788,115364,31913,90981,15588,63725,57899,94698,18959,32992,78287,104242,28048,125072,50783,81887,48992,76403,90691,106354,}}, + {"0000000000000000000000000000000000000000000000000000000000000000", {136,79405,9951,73500,38189,84119,61223,72693,14284,130553,34217,128439,57252,119270,86356,128323,9867,95752,59642,80350,48643,129963,108352,128704,20281,75106,27217,106172,26001,56700,30319,41573,}}, }; // NOTE: These tests rely on CreateNewBlock doing its own self-validation! @@ -176,11 +176,9 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity) { arith_uint256 try_nonce(0); - Equihash eh {96, 5}; - // Hash state crypto_generichash_blake2b_state eh_state; - eh.InitialiseState(eh_state); + EhInitialiseState(96, 5, eh_state); // I = the block header minus nonce and solution. CEquihashInput I{*pblock}; @@ -201,10 +199,13 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity) pblock->nNonce.size()); // (x_1, x_2, ...) = A(I, V, n, k) - std::set> solns = eh.BasicSolve(curr_state); + std::set> solns; + EhBasicSolve(96, 5, curr_state, solns); + bool ret; for (auto soln : solns) { - assert(eh.IsValidSolution(curr_state, soln)); + EhIsValidSolution(96, 5, curr_state, soln, ret); + assert(ret); pblock->nSolution = soln; CValidationState state; @@ -220,7 +221,7 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity) } foundit: - std::cout << "{\"" << pblock->nNonce.GetHex() << "\", {"; + std::cout << " {\"" << pblock->nNonce.GetHex() << "\", {"; BOOST_FOREACH(auto num, pblock->nSolution) { std::cout << num << ","; }